@hmcts/media-viewer 2.10.0 → 3.0.0-RC.1
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/README.md +1 -1
- package/assets/sass/outline-attachment.scss +30 -24
- package/assets/sass/toolbar/main-toolbar.scss +35 -22
- package/assets/sass/toolbar/search-bar.scss +1 -0
- package/esm2020/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.mjs +4 -4
- package/esm2020/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.mjs +4 -4
- package/esm2020/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.mjs +5 -5
- package/esm2020/lib/annotations/annotation-set/annotation-set.component.mjs +4 -4
- package/esm2020/lib/annotations/annotation-set/annotation-view/annotation-view.component.mjs +4 -4
- package/esm2020/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +4 -4
- package/esm2020/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.mjs +4 -4
- package/esm2020/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.mjs +4 -4
- package/esm2020/lib/annotations/annotations.module.mjs +12 -8
- package/esm2020/lib/annotations/comment-set/comment/comment.component.mjs +7 -6
- package/esm2020/lib/annotations/comment-set/comment/comment.service.mjs +4 -4
- package/esm2020/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.mjs +4 -4
- package/esm2020/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.mjs +4 -4
- package/esm2020/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +4 -4
- package/esm2020/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.mjs +8 -7
- package/esm2020/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +6 -5
- package/esm2020/lib/annotations/comment-set/comment-set-header/comment-set-header.component.mjs +5 -5
- package/esm2020/lib/annotations/comment-set/comment-set-render.service.mjs +4 -4
- package/esm2020/lib/annotations/comment-set/comment-set.component.mjs +4 -4
- package/esm2020/lib/annotations/comments-summary/comments-summary.component.mjs +7 -6
- package/esm2020/lib/annotations/pipes/date/date.pipe.mjs +4 -4
- package/esm2020/lib/annotations/pipes/filter/filter.pipe.mjs +4 -4
- package/esm2020/lib/annotations/pipes/unsnake/unsnake.pipe.mjs +4 -4
- package/esm2020/lib/annotations/services/annotation-api/annotation-api.service.mjs +4 -4
- package/esm2020/lib/annotations/services/bookmarks-api/bookmarks-api.service.mjs +4 -4
- package/esm2020/lib/annotations/services/tags/tags.services.mjs +4 -4
- package/esm2020/lib/annotations/tags/tags.component.mjs +4 -4
- package/esm2020/lib/bookmark/components/bookmark-icons.component.mjs +4 -4
- package/esm2020/lib/icp/confirm-exit/confirm-action-dialog.component.mjs +4 -4
- package/esm2020/lib/icp/icp-follower.service.mjs +4 -4
- package/esm2020/lib/icp/icp-presenter.service.mjs +4 -4
- package/esm2020/lib/icp/icp-session-api.service.mjs +4 -4
- package/esm2020/lib/icp/icp-update.service.mjs +4 -4
- package/esm2020/lib/icp/icp.service.mjs +4 -4
- package/esm2020/lib/icp/participants-list/participants-list.component.mjs +4 -4
- package/esm2020/lib/icp/socket.service.mjs +4 -4
- package/esm2020/lib/media-viewer.component.mjs +9 -9
- package/esm2020/lib/media-viewer.module.mjs +12 -8
- package/esm2020/lib/print.service.mjs +4 -4
- package/esm2020/lib/redaction/components/redaction.component.mjs +4 -4
- package/esm2020/lib/redaction/services/redaction-api.service.mjs +4 -4
- package/esm2020/lib/shared/gov-uk-date/gov-uk-date.component.mjs +5 -5
- package/esm2020/lib/shared/gov-uk-error-message/gov-uk-error-message.component.mjs +4 -4
- package/esm2020/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.mjs +4 -4
- package/esm2020/lib/shared/gov-uk-label/gov-uk-label.component.mjs +4 -4
- package/esm2020/lib/shared/shared.module.mjs +5 -5
- package/esm2020/lib/shared/util/services/number.helper.service.mjs +4 -4
- package/esm2020/lib/store/effects/annotation.effects.mjs +4 -4
- package/esm2020/lib/store/effects/bookmarks.effects.mjs +4 -4
- package/esm2020/lib/store/effects/document.effects.mjs +4 -4
- package/esm2020/lib/store/effects/icp.effects.mjs +4 -4
- package/esm2020/lib/store/effects/redaction.effects.mjs +4 -4
- package/esm2020/lib/toolbar/icp-toolbar/icp-toolbar.component.mjs +4 -4
- package/esm2020/lib/toolbar/main-toolbar/main-toolbar.component.mjs +6 -5
- package/esm2020/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +6 -5
- package/esm2020/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +6 -5
- package/esm2020/lib/toolbar/search-bar/search-bar.component.mjs +8 -5
- package/esm2020/lib/toolbar/toolbar-button-visibility.service.mjs +4 -4
- package/esm2020/lib/toolbar/toolbar-event.service.mjs +4 -4
- package/esm2020/lib/toolbar/toolbar.module.mjs +12 -8
- package/esm2020/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +9 -5
- package/esm2020/lib/viewers/convertible-content-viewer/document-conversion-api.service.mjs +4 -4
- package/esm2020/lib/viewers/grab-n-drag.directive.mjs +4 -4
- package/esm2020/lib/viewers/image-viewer/image-viewer.component.mjs +5 -5
- package/esm2020/lib/viewers/multimedia-player/multimedia-player.component.mjs +6 -5
- package/esm2020/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.mjs +4 -4
- package/esm2020/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +6 -5
- package/esm2020/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +4 -4
- package/esm2020/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +5 -5
- package/esm2020/lib/viewers/pdf-viewer/side-bar/side-bar.component.mjs +6 -5
- package/esm2020/lib/viewers/rotation-persist/rotation-api.service.mjs +4 -4
- package/esm2020/lib/viewers/rotation-persist/rotation-persist.directive.mjs +4 -4
- package/esm2020/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +4 -4
- package/esm2020/lib/viewers/viewer-event.service.mjs +4 -4
- package/esm2020/lib/viewers/viewer-util.service.mjs +4 -4
- package/fesm2015/hmcts-media-viewer.mjs +1473 -1457
- package/fesm2015/hmcts-media-viewer.mjs.map +1 -1
- package/fesm2020/hmcts-media-viewer.mjs +1501 -1486
- package/fesm2020/hmcts-media-viewer.mjs.map +1 -1
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts +1 -1
- package/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.d.ts.map +1 -1
- package/lib/annotations/annotations.module.d.ts +2 -1
- package/lib/annotations/annotations.module.d.ts.map +1 -1
- package/lib/media-viewer.module.d.ts +2 -1
- package/lib/media-viewer.module.d.ts.map +1 -1
- package/lib/toolbar/search-bar/search-bar.component.d.ts +3 -2
- package/lib/toolbar/search-bar/search-bar.component.d.ts.map +1 -1
- package/lib/toolbar/toolbar.module.d.ts +2 -1
- package/lib/toolbar/toolbar.module.d.ts.map +1 -1
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts +3 -2
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts.map +1 -1
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts +2 -2
- package/package.json +2 -2
|
@@ -27,6 +27,7 @@ import * as i15 from "../../annotations/annotation-set/annotation-create/highlig
|
|
|
27
27
|
import * as i16 from "../../redaction/components/redaction.component";
|
|
28
28
|
import * as i17 from "../../bookmark/components/bookmark-icons.component";
|
|
29
29
|
import * as i18 from "../../icp/participants-list/participants-list.component";
|
|
30
|
+
import * as i19 from "rpx-xui-translation";
|
|
30
31
|
export class PdfViewerComponent {
|
|
31
32
|
constructor(store, icpStore, pdfJsWrapperFactory, printService, toolbarEvents, viewerEvents, icpService, toolbarButtons) {
|
|
32
33
|
this.store = store;
|
|
@@ -187,11 +188,11 @@ export class PdfViewerComponent {
|
|
|
187
188
|
return this.pdfWrapper.getPageNumber();
|
|
188
189
|
}
|
|
189
190
|
}
|
|
190
|
-
/** @nocollapse */ PdfViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
191
|
-
/** @nocollapse */ PdfViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
192
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
191
|
+
/** @nocollapse */ PdfViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PdfViewerComponent, deps: [{ token: i1.Store }, { token: i1.Store }, { token: i2.PdfJsWrapperFactory }, { token: i3.PrintService }, { token: i4.ToolbarEventService }, { token: i5.ViewerEventService }, { token: i6.IcpService }, { token: i7.ToolbarButtonVisibilityService }], target: i0.ɵɵFactoryTarget.Component });
|
|
192
|
+
/** @nocollapse */ PdfViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PdfViewerComponent, selector: "mv-pdf-viewer", inputs: { downloadUrl: "downloadUrl", url: "url", downloadFileName: "downloadFileName", enableAnnotations: "enableAnnotations", enableRedactions: "enableRedactions", enableICP: "enableICP", annotationSet: "annotationSet", enableRedactSearch: "enableRedactSearch", height: "height", caseId: "caseId", searchBarHidden: "searchBarHidden" }, outputs: { mediaLoadStatus: "mediaLoadStatus", pdfViewerException: "pdfViewerException", documentTitle: "documentTitle" }, viewQueries: [{ propertyName: "viewerContainer", first: true, predicate: ["viewerContainer"], descendants: true, static: true }, { propertyName: "pdfViewer", first: true, predicate: ["pdfViewer"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<mv-side-bar\n *ngIf=\"toolbarEvents.sidebarOpen\"\n id=\"sidebarContainer\"\n [url]=\"url\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n [outline]=\"documentOutline\"\n [annotationsEnabled]=\"enableAnnotations\"\n [currentPageNumber]=\"getCurrentPageNumber()\"\n>\n</mv-side-bar>\n<mv-comment-set-header\n *ngIf=\"enableAnnotations\"\n [ngClass]=\"{ 'show-comments-panel': showCommentsPanel }\"\n [showCommentSummary]=\"toolbarButtons.showCommentSummary\"\n (showCommentSummaryDialog)=\"toggleCommentsSummary()\"\n>\n</mv-comment-set-header>\n<mv-participants-list></mv-participants-list>\n<div\n class=\"pdfContainer\"\n [ngStyle]=\"{ height: height }\"\n [ngClass]=\"{ pdfContainer: true, hidden: errorMessage }\"\n>\n <mv-redaction-search-bar></mv-redaction-search-bar>\n <div\n #viewerContainer\n mvGrabNDrag\n [dragX]=\"viewerContainer\"\n [dragEnabled]=\"enableGrabNDrag\"\n id=\"viewerContainer\"\n class=\"viewer-container\"\n [class.annotations]=\"enableAnnotations\"\n [class.show-comments-panel]=\"\n (showCommentsPanel || showIcpParticipantsList) &&\n (toolbarEvents.redactionMode | async) !== true\n \"\n [class.grabNDrag]=\"enableGrabNDrag\"\n >\n <div\n #pdfViewer\n class=\"pdfViewer\"\n mvCreateTextHighlight\n [ngClass]=\"{\n hidden: loadingDocument,\n highlightMode: highlightMode | async,\n drawMode: drawMode | async\n }\"\n ></div>\n <mv-redactions\n *ngIf=\"toolbarEvents.redactionMode | async; else annotationTemplate\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n ></mv-redactions>\n <ng-template #annotationTemplate>\n <mv-metadata-layer\n *ngIf=\"enableAnnotations && annotationSet\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n >\n </mv-metadata-layer>\n <mv-bookmark-icons [zoom]=\"zoom\" [rotate]=\"rotation\"> </mv-bookmark-icons>\n </ng-template>\n </div>\n <mv-comment-set\n [contentScrollTop]=\"viewerContainer.scrollTop\"\n *ngIf=\"\n enableAnnotations &&\n annotationSet &&\n (toolbarEvents.redactionMode | async) !== true\n \"\n [annotationSet]=\"annotationSet\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n [height]=\"pdfViewer.offsetHeight\"\n [pageHeights]=\"pageHeights\"\n >\n </mv-comment-set>\n <div class=\"loadingMessage\" *ngIf=\"loadingDocument\">\n <h3 class=\"govuk-heading-m\">\n {{ \"Loading...\" | rpxTranslate}}{{\n loadingDocumentProgress ? loadingDocumentProgress + \"%\" : \"\"\n }}\n </h3>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i8.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i9.RedactionSearchBarComponent, selector: "mv-redaction-search-bar" }, { kind: "component", type: i10.CommentSetComponent, selector: "mv-comment-set", inputs: ["annotationSet", "zoom", "rotate", "height", "pageHeights", "contentScrollTop"] }, { kind: "component", type: i11.CommentSetHeaderComponent, selector: "mv-comment-set-header", inputs: ["showCommentSummary"], outputs: ["showCommentSummaryDialog"] }, { kind: "component", type: i12.MetadataLayerComponent, selector: "mv-metadata-layer", inputs: ["zoom", "rotate"] }, { kind: "component", type: i13.SideBarComponent, selector: "mv-side-bar", inputs: ["annotationsEnabled", "outline", "url", "zoom", "rotate", "currentPageNumber"] }, { kind: "directive", type: i14.GrabNDragDirective, selector: "[mvGrabNDrag]", inputs: ["dragEnabled", "dragX"] }, { kind: "directive", type: i15.HighlightCreateDirective, selector: "[mvCreateTextHighlight]" }, { kind: "component", type: i16.RedactionComponent, selector: "mv-redactions", inputs: ["zoom", "rotate"] }, { kind: "component", type: i17.BookmarkIconsComponent, selector: "mv-bookmark-icons", inputs: ["zoom", "rotate"] }, { kind: "component", type: i18.ParticipantsListComponent, selector: "mv-participants-list" }, { kind: "pipe", type: i8.AsyncPipe, name: "async" }, { kind: "pipe", type: i19.RpxTranslatePipe, name: "rpxTranslate" }], encapsulation: i0.ViewEncapsulation.None });
|
|
193
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PdfViewerComponent, decorators: [{
|
|
193
194
|
type: Component,
|
|
194
|
-
args: [{ selector: 'mv-pdf-viewer', encapsulation: ViewEncapsulation.None, template: "<mv-side-bar\n *ngIf=\"toolbarEvents.sidebarOpen\"\n id=\"sidebarContainer\"\n [url]=\"url\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n [outline]=\"documentOutline\"\n [annotationsEnabled]=\"enableAnnotations\"\n [currentPageNumber]=\"getCurrentPageNumber()\"\n>\n</mv-side-bar>\n<mv-comment-set-header\n *ngIf=\"enableAnnotations\"\n [ngClass]=\"{ 'show-comments-panel': showCommentsPanel }\"\n [showCommentSummary]=\"toolbarButtons.showCommentSummary\"\n (showCommentSummaryDialog)=\"toggleCommentsSummary()\"\n>\n</mv-comment-set-header>\n<mv-participants-list></mv-participants-list>\n<div\n class=\"pdfContainer\"\n [ngStyle]=\"{ height: height }\"\n [ngClass]=\"{ pdfContainer: true, hidden: errorMessage }\"\n>\n <mv-redaction-search-bar></mv-redaction-search-bar>\n <div\n #viewerContainer\n mvGrabNDrag\n [dragX]=\"viewerContainer\"\n [dragEnabled]=\"enableGrabNDrag\"\n id=\"viewerContainer\"\n class=\"viewer-container\"\n [class.annotations]=\"enableAnnotations\"\n [class.show-comments-panel]=\"\n (showCommentsPanel || showIcpParticipantsList) &&\n (toolbarEvents.redactionMode | async) !== true\n \"\n [class.grabNDrag]=\"enableGrabNDrag\"\n >\n <div\n #pdfViewer\n class=\"pdfViewer\"\n mvCreateTextHighlight\n [ngClass]=\"{\n hidden: loadingDocument,\n highlightMode: highlightMode | async,\n drawMode: drawMode | async\n }\"\n ></div>\n <mv-redactions\n *ngIf=\"toolbarEvents.redactionMode | async; else annotationTemplate\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n ></mv-redactions>\n <ng-template #annotationTemplate>\n <mv-metadata-layer\n *ngIf=\"enableAnnotations && annotationSet\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n >\n </mv-metadata-layer>\n <mv-bookmark-icons [zoom]=\"zoom\" [rotate]=\"rotation\"> </mv-bookmark-icons>\n </ng-template>\n </div>\n <mv-comment-set\n [contentScrollTop]=\"viewerContainer.scrollTop\"\n *ngIf=\"\n enableAnnotations &&\n annotationSet &&\n (toolbarEvents.redactionMode | async) !== true\n \"\n [annotationSet]=\"annotationSet\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n [height]=\"pdfViewer.offsetHeight\"\n [pageHeights]=\"pageHeights\"\n >\n </mv-comment-set>\n <div class=\"loadingMessage\" *ngIf=\"loadingDocument\">\n <h3 class=\"govuk-heading-m\">\n Loading
|
|
195
|
+
args: [{ selector: 'mv-pdf-viewer', encapsulation: ViewEncapsulation.None, template: "<mv-side-bar\n *ngIf=\"toolbarEvents.sidebarOpen\"\n id=\"sidebarContainer\"\n [url]=\"url\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n [outline]=\"documentOutline\"\n [annotationsEnabled]=\"enableAnnotations\"\n [currentPageNumber]=\"getCurrentPageNumber()\"\n>\n</mv-side-bar>\n<mv-comment-set-header\n *ngIf=\"enableAnnotations\"\n [ngClass]=\"{ 'show-comments-panel': showCommentsPanel }\"\n [showCommentSummary]=\"toolbarButtons.showCommentSummary\"\n (showCommentSummaryDialog)=\"toggleCommentsSummary()\"\n>\n</mv-comment-set-header>\n<mv-participants-list></mv-participants-list>\n<div\n class=\"pdfContainer\"\n [ngStyle]=\"{ height: height }\"\n [ngClass]=\"{ pdfContainer: true, hidden: errorMessage }\"\n>\n <mv-redaction-search-bar></mv-redaction-search-bar>\n <div\n #viewerContainer\n mvGrabNDrag\n [dragX]=\"viewerContainer\"\n [dragEnabled]=\"enableGrabNDrag\"\n id=\"viewerContainer\"\n class=\"viewer-container\"\n [class.annotations]=\"enableAnnotations\"\n [class.show-comments-panel]=\"\n (showCommentsPanel || showIcpParticipantsList) &&\n (toolbarEvents.redactionMode | async) !== true\n \"\n [class.grabNDrag]=\"enableGrabNDrag\"\n >\n <div\n #pdfViewer\n class=\"pdfViewer\"\n mvCreateTextHighlight\n [ngClass]=\"{\n hidden: loadingDocument,\n highlightMode: highlightMode | async,\n drawMode: drawMode | async\n }\"\n ></div>\n <mv-redactions\n *ngIf=\"toolbarEvents.redactionMode | async; else annotationTemplate\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n ></mv-redactions>\n <ng-template #annotationTemplate>\n <mv-metadata-layer\n *ngIf=\"enableAnnotations && annotationSet\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n >\n </mv-metadata-layer>\n <mv-bookmark-icons [zoom]=\"zoom\" [rotate]=\"rotation\"> </mv-bookmark-icons>\n </ng-template>\n </div>\n <mv-comment-set\n [contentScrollTop]=\"viewerContainer.scrollTop\"\n *ngIf=\"\n enableAnnotations &&\n annotationSet &&\n (toolbarEvents.redactionMode | async) !== true\n \"\n [annotationSet]=\"annotationSet\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n [height]=\"pdfViewer.offsetHeight\"\n [pageHeights]=\"pageHeights\"\n >\n </mv-comment-set>\n <div class=\"loadingMessage\" *ngIf=\"loadingDocument\">\n <h3 class=\"govuk-heading-m\">\n {{ \"Loading...\" | rpxTranslate}}{{\n loadingDocumentProgress ? loadingDocumentProgress + \"%\" : \"\"\n }}\n </h3>\n </div>\n</div>\n" }]
|
|
195
196
|
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i1.Store }, { type: i2.PdfJsWrapperFactory }, { type: i3.PrintService }, { type: i4.ToolbarEventService }, { type: i5.ViewerEventService }, { type: i6.IcpService }, { type: i7.ToolbarButtonVisibilityService }]; }, propDecorators: { mediaLoadStatus: [{
|
|
196
197
|
type: Output
|
|
197
198
|
}], pdfViewerException: [{
|
|
@@ -227,4 +228,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
227
228
|
}], searchBarHidden: [{
|
|
228
229
|
type: Input
|
|
229
230
|
}] } });
|
|
230
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVOLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBNkMsTUFBTSxNQUFNLENBQUM7QUFDakYsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQU81QyxPQUFPLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSzFFLE9BQU8sS0FBSyxtQkFBbUIsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEtBQUssY0FBYyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RCxPQUFPLEtBQUsscUJBQXFCLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBVWxGLE1BQU0sT0FBTyxrQkFBa0I7SUEwQzdCLFlBQ1UsS0FBMEMsRUFDMUMsUUFBeUIsRUFDaEIsbUJBQXdDLEVBQ3hDLFlBQTBCLEVBQzNCLGFBQWtDLEVBQ2pDLFlB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LFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QyxDQUFDOztrSUEvTlUsa0JBQWtCO3NIQUFsQixrQkFBa0Isa3ZCQ3pDL0IsMmhGQXNGQTsyRkQ3Q2Esa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGVBQWUsaUJBRVYsaUJBQWlCLENBQUMsSUFBSTtzVEFJM0IsZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFFRSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFLRyxNQUFNO3NCQUFkLEtBQUs7Z0JBV3dDLGVBQWU7c0JBQTVELFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO2dCQUNILFNBQVM7c0JBQWpELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztnQkE0SG5DLGVBQWU7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBhc3luY1NjaGVkdWxlciwgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgdGFwLCB0aHJvdHRsZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBzZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuXG5pbXBvcnQgeyBEb2N1bWVudExvYWRQcm9ncmVzcywgUGFnZUV2ZW50LCBQZGZKc1dyYXBwZXIgfSBmcm9tICcuL3BkZi1qcy9wZGYtanMtd3JhcHBlcic7XG5pbXBvcnQgeyBQZGZKc1dyYXBwZXJGYWN0b3J5IH0gZnJvbSAnLi9wZGYtanMvcGRmLWpzLXdyYXBwZXIucHJvdmlkZXInO1xuaW1wb3J0IHsgQW5ub3RhdGlvblNldCB9IGZyb20gJy4uLy4uL2Fubm90YXRpb25zL2Fubm90YXRpb24tc2V0L2Fubm90YXRpb24tc2V0Lm1vZGVsJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBQcmludFNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcmludC5zZXJ2aWNlJztcbmltcG9ydCB7IFJlc3BvbnNlVHlwZSwgVmlld2VyRXhjZXB0aW9uIH0gZnJvbSAnLi4vdmlld2VyLWV4Y2VwdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBUb29sYmFyQnV0dG9uVmlzaWJpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi90b29sYmFyL3Rvb2xiYXItYnV0dG9uLXZpc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBDb21tZW50U2V0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYW5ub3RhdGlvbnMvY29tbWVudC1zZXQvY29tbWVudC1zZXQuY29tcG9uZW50JztcbmltcG9ydCB7IE91dGxpbmUgfSBmcm9tICcuL3NpZGUtYmFyL291dGxpbmUtaXRlbS9vdXRsaW5lLm1vZGVsJztcbmltcG9ydCAqIGFzIGZyb21TdG9yZSBmcm9tICcuLi8uLi9zdG9yZS9yZWR1Y2Vycy9yZWR1Y2Vycyc7XG5pbXBvcnQgKiBhcyBmcm9tRG9jdW1lbnRBY3Rpb25zIGZyb20gJy4uLy4uL3N0b3JlL2FjdGlvbnMvZG9jdW1lbnQuYWN0aW9ucyc7XG5pbXBvcnQgeyBQZGZQb3NpdGlvblVwZGF0ZSB9IGZyb20gJy4uLy4uL3N0b3JlL2FjdGlvbnMvZG9jdW1lbnQuYWN0aW9ucyc7XG5pbXBvcnQgKiBhcyBmcm9tVGFnQWN0aW9ucyBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL3RhZy5hY3Rpb25zJztcbmltcG9ydCB7IFNldENhc2VJZCB9IGZyb20gJy4uLy4uL3N0b3JlL2FjdGlvbnMvaWNwLmFjdGlvbnMnO1xuaW1wb3J0ICogYXMgZnJvbURvY3VtZW50c1NlbGVjdG9yIGZyb20gJy4uLy4uL3N0b3JlL3NlbGVjdG9ycy9kb2N1bWVudC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgSWNwU3RhdGUgfSBmcm9tICcuLi8uLi9pY3AvaWNwLmludGVyZmFjZXMnO1xuaW1wb3J0IHsgVmlld2VyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vdmlld2VyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgSWNwU2VydmljZSB9IGZyb20gJy4uLy4uL2ljcC9pY3Auc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LXBkZi12aWV3ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcGRmLXZpZXdlci5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgUGRmVmlld2VyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuXG4gIEBPdXRwdXQoKSBtZWRpYUxvYWRTdGF0dXMgPSBuZXcgRXZlbnRFbWl0dGVyPFJlc3BvbnNlVHlwZT4oKTtcbiAgQE91dHB1dCgpIHBkZlZpZXdlckV4Y2VwdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8Vmlld2VyRXhjZXB0aW9uPigpO1xuICBAT3V0cHV0KCkgZG9jdW1lbnRUaXRsZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIEBJbnB1dCgpIGRvd25sb2FkVXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHVybDogc3RyaW5nO1xuICBASW5wdXQoKSBkb3dubG9hZEZpbGVOYW1lOiBzdHJpbmc7XG5cbiAgQElucHV0KCkgZW5hYmxlQW5ub3RhdGlvbnM6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGVuYWJsZVJlZGFjdGlvbnM6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGVuYWJsZUlDUDogYm9vbGVhbjtcbiAgQElucHV0KCkgYW5ub3RhdGlvblNldDogQW5ub3RhdGlvblNldCB8IG51bGw7XG4gIEBJbnB1dCgpIGVuYWJsZVJlZGFjdFNlYXJjaDogQW5ub3RhdGlvblNldCB8IG51bGw7XG5cbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmc7XG4gIHBhZ2VIZWlnaHRzID0gW107XG4gIHJvdGF0aW9uID0gMDtcbiAgem9vbSA9IDE7XG5cbiAgQElucHV0KCkgY2FzZUlkOiBzdHJpbmc7XG5cbiAgaGlnaGxpZ2h0TW9kZTogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgZHJhd01vZGU6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcblxuICBkb2N1bWVudE91dGxpbmU6IE91dGxpbmU7XG4gIGxvYWRpbmdEb2N1bWVudCA9IGZhbHNlO1xuICBsb2FkaW5nRG9jdW1lbnRQcm9ncmVzczogbnVtYmVyO1xuICBlcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgaGFzRGlmZmVyZW50UGFnZVNpemUgPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCd2aWV3ZXJDb250YWluZXInLCB7c3RhdGljOiB0cnVlfSkgdmlld2VyQ29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgQFZpZXdDaGlsZCgncGRmVmlld2VyJywge3N0YXRpYzogZmFsc2V9KSBwZGZWaWV3ZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gIHByaXZhdGUgcGRmV3JhcHBlcjogUGRmSnNXcmFwcGVyO1xuICBwcml2YXRlICRzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSB2aWV3ZXJFeGNlcHRpb246IFZpZXdlckV4Y2VwdGlvbjtcbiAgc2hvd0NvbW1lbnRzUGFuZWw6IGJvb2xlYW47XG4gIHNob3dJY3BQYXJ0aWNpcGFudHNMaXN0OiBib29sZWFuO1xuICBlbmFibGVHcmFiTkRyYWcgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxmcm9tU3RvcmUuQW5ub3RhdGlvblNldFN0YXRlPixcbiAgICBwcml2YXRlIGljcFN0b3JlOiBTdG9yZTxJY3BTdGF0ZT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBwZGZKc1dyYXBwZXJGYWN0b3J5OiBQZGZKc1dyYXBwZXJGYWN0b3J5LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJpbnRTZXJ2aWNlOiBQcmludFNlcnZpY2UsXG4gICAgcHVibGljIHJlYWRvbmx5IHRvb2xiYXJFdmVudHM6IFRvb2xiYXJFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB2aWV3ZXJFdmVudHM6IFZpZXdlckV2ZW50U2VydmljZSxcbiAgICBwcml2YXRlIGljcFNlcnZpY2U6IEljcFNlcnZpY2UsXG4gICAgcHVibGljIHJlYWRvbmx5IHRvb2xiYXJCdXR0b25zOiBUb29sYmFyQnV0dG9uVmlzaWJpbGl0eVNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuaGlnaGxpZ2h0TW9kZSA9IHRvb2xiYXJFdmVudHMuaGlnaGxpZ2h0TW9kZVN1YmplY3QucGlwZSh0YXAoKCkgPT4ge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgZnJvbVRhZ0FjdGlvbnMuQ2xlYXJGaWx0ZXJUYWdzKCkpO1xuICAgIH0pKTtcbiAgICB0aGlzLmRyYXdNb2RlID0gdG9vbGJhckV2ZW50cy5kcmF3TW9kZVN1YmplY3Q7XG4gIH1cblxuICBhc3luYyBuZ0FmdGVyQ29udGVudEluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5wZGZXcmFwcGVyLmRvY3VtZW50TG9hZFByb2dyZXNzLnN1YnNjcmliZSh2ID0+IHRoaXMub25Eb2N1bWVudExvYWRQcm9ncmVzcyh2KSk7XG4gICAgdGhpcy5wZGZXcmFwcGVyLmRvY3VtZW50TG9hZGVkLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uRG9jdW1lbnRMb2FkZWQoKSk7XG4gICAgdGhpcy5wZGZXcmFwcGVyLmRvY3VtZW50TG9hZEZhaWxlZC5zdWJzY3JpYmUoKGVycm9yKSA9PiB0aGlzLm9uRG9jdW1lbnRMb2FkRmFpbGVkKGVycm9yKSk7XG4gICAgdGhpcy5wZGZXcmFwcGVyLm91dGxpbmVMb2FkZWQuc3Vic2NyaWJlKG91dGxpbmUgPT4gdGhpcy5kb2N1bWVudE91dGxpbmUgPSBvdXRsaW5lKTtcbiAgICB0aGlzLnBkZldyYXBwZXIucGFnZVJlbmRlcmVkLnN1YnNjcmliZSgoZXZlbnQpID0+IHRoaXMudXBkYXRlUGFnZXMoZXZlbnQpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24gPSB0aGlzLnRvb2xiYXJFdmVudHMucHJpbnRTdWJqZWN0XG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMucHJpbnRTZXJ2aWNlLnByaW50RG9jdW1lbnROYXRpdmVseSh0aGlzLnVybCkpO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy50b29sYmFyRXZlbnRzLmRvd25sb2FkU3ViamVjdC5zdWJzY3JpYmUoKCkgPT5cbiAgICAgIHRoaXMucGRmV3JhcHBlci5kb3dubG9hZEZpbGUodGhpcy5kb3dubG9hZFVybCB8fCB0aGlzLnVybCwgdGhpcy5kb3dubG9hZEZpbGVOYW1lKVxuICAgICkpO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy50b29sYmFyRXZlbnRzLnJvdGF0ZVN1YmplY3Quc3Vic2NyaWJlKHJvdGF0ZSA9PiB0aGlzLnJvdGF0ZURvY3VtZW50KHJvdGF0ZSkpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy56b29tU3ViamVjdC5zdWJzY3JpYmUoem9vbSA9PiB0aGlzLnNldFpvb20oem9vbSkpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5zdGVwWm9vbVN1YmplY3Quc3Vic2NyaWJlKHpvb20gPT4gdGhpcy5zdGVwWm9vbSh6b29tKSkpO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaFN1YmplY3Quc3Vic2NyaWJlKHNlYXJjaCA9PiB0aGlzLnBkZldyYXBwZXIuc2VhcmNoKHNlYXJjaCkpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnNldEN1cnJlbnRQYWdlU3ViamVjdC5zdWJzY3JpYmUocGFnZU51bWJlciA9PiB0aGlzLnBkZldyYXBwZXIuc2V0UGFnZU51bWJlcihwYWdlTnVtYmVyKSlcbiAgICApO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuY2hhbmdlUGFnZUJ5RGVsdGFTdWJqZWN0LnN1YnNjcmliZShwYWdlTnVtYmVyID0+IHRoaXMucGRmV3JhcHBlci5jaGFuZ2VQYWdlTnVtYmVyKHBhZ2VOdW1iZXIpKVxuICAgICk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuZ3JhYk5EcmFnLnN1YnNjcmliZShncmFiTkRyYWcgPT4gdGhpcy5lbmFibGVHcmFiTkRyYWcgPSBncmFiTkRyYWcpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5jb21tZW50c1BhbmVsVmlzaWJsZS5zdWJzY3JpYmUodG9nZ2xlID0+IHtcbiAgICAgICAgdGhpcy5zaG93Q29tbWVudHNQYW5lbCA9IHRvZ2dsZTtcbiAgICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudmlld2VyRXZlbnRzLm5hdmlnYXRpb25FdmVudC5zdWJzY3JpYmUoZGVzdCA9PiB0aGlzLmdvVG9EZXN0aW5hdGlvbihkZXN0KSkpO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuaWNwLnBhcnRpY2lwYW50c0xpc3RWaXNpYmxlLnN1YnNjcmliZSh0b2dnbGUgPT4gdGhpcy5zaG93SWNwUGFydGljaXBhbnRzTGlzdCA9IHRvZ2dsZSlcbiAgICApO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy5wZGZXcmFwcGVyLnBvc2l0aW9uVXBkYXRlZC5hc09ic2VydmFibGUoKVxuICAgICAgLnBpcGUodGhyb3R0bGVUaW1lKDUwMCwgYXN5bmNTY2hlZHVsZXIsIHsgbGVhZGluZzogdHJ1ZSwgdHJhaWxpbmc6IHRydWUgfSkpXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IFBkZlBvc2l0aW9uVXBkYXRlKGV2ZW50LmxvY2F0aW9uKSkpXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoIXRoaXMucGRmV3JhcHBlcikge1xuICAgICAgdGhpcy5wZGZXcmFwcGVyID0gdGhpcy5wZGZKc1dyYXBwZXJGYWN0b3J5LmNyZWF0ZSh0aGlzLnZpZXdlckNvbnRhaW5lcik7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzLnVybCAmJiB0aGlzLnBkZldyYXBwZXIpIHtcbiAgICAgIGF3YWl0IHRoaXMubG9hZERvY3VtZW50KCk7XG4gICAgICBpZiAodGhpcy5lbmFibGVSZWRhY3Rpb25zKSB7XG4gICAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5yZWRhY3Rpb25Nb2RlLnBpcGUoZmlsdGVyKHZhbHVlID0+ICEhdmFsdWUpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZXNldFJvdGF0aW9uKCkpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoY2hhbmdlcy5jYXNlSWQpIHtcbiAgICAgIHRoaXMuaWNwU3RvcmUuZGlzcGF0Y2gobmV3IFNldENhc2VJZCh0aGlzLmNhc2VJZCkpO1xuICAgIH1cbiAgfVxuXG4gIHJlc2V0Um90YXRpb24oKSB7XG4gICAgaWYgKHRoaXMuaGFzRGlmZmVyZW50UGFnZVNpemUpIHtcbiAgICAgIHRoaXMucGRmV3JhcHBlci5yZXNldFJvdGF0aW9uKDApO1xuICAgICAgdGhpcy5yb3RhdGlvbiA9IDA7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWREb2N1bWVudCgpIHtcbiAgICB0aGlzLmluaXREb2N1bWVudFByb2dyZXNzKCk7XG4gICAgYXdhaXQgdGhpcy5wZGZXcmFwcGVyLmxvYWREb2N1bWVudCh0aGlzLnVybCk7XG4gICAgdGhpcy5kb2N1bWVudFRpdGxlLmVtaXQodGhpcy5wZGZXcmFwcGVyLmdldEN1cnJlbnRQREZUaXRsZSgpKTtcbiAgICB0aGlzLnNldFBhZ2VIZWlnaHRzKCk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21Eb2N1bWVudHNTZWxlY3Rvci5nZXRQYWdlRGlmZmVyZW5jZSkpXG4gICAgICAuc3Vic2NyaWJlKGhhc0RpZmZlcmVudFBhZ2VTaWUgPT4gdGhpcy5oYXNEaWZmZXJlbnRQYWdlU2l6ZSA9IGhhc0RpZmZlcmVudFBhZ2VTaWUpKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Eb2N1bWVudExvYWRQcm9ncmVzcyhwcm9ncmVzczogRG9jdW1lbnRMb2FkUHJvZ3Jlc3MpIHtcbiAgICBpZiAocHJvZ3Jlc3MudG90YWwpIHtcbiAgICAgIHRoaXMubG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3MgPSBNYXRoLm1pbigxMDAsIE1hdGguY2VpbChwcm9ncmVzcy5sb2FkZWQgLyBwcm9ncmVzcy50b3RhbCAqIDEwMCkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25Eb2N1bWVudExvYWRlZCgpIHtcbiAgICB0aGlzLmxvYWRpbmdEb2N1bWVudCA9IGZhbHNlO1xuICAgIHRoaXMubWVkaWFMb2FkU3RhdHVzLmVtaXQoUmVzcG9uc2VUeXBlLlNVQ0NFU1MpO1xuICB9XG5cbiAgcHJpdmF0ZSBvbkRvY3VtZW50TG9hZEZhaWxlZChlcnJvcjogRXJyb3IpIHtcbiAgICB0aGlzLmxvYWRpbmdEb2N1bWVudCA9IGZhbHNlO1xuICAgIHRoaXMudmlld2VyRXhjZXB0aW9uID0gbmV3IFZpZXdlckV4Y2VwdGlvbihlcnJvci5uYW1lLCB7IG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2UgfSk7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBgQ291bGQgbm90IGxvYWQgdGhlIGRvY3VtZW50IFwiJHt0aGlzLnVybH1cImA7XG5cbiAgICB0aGlzLm1lZGlhTG9hZFN0YXR1cy5lbWl0KFJlc3BvbnNlVHlwZS5GQUlMVVJFKTtcbiAgICB0aGlzLnBkZlZpZXdlckV4Y2VwdGlvbi5lbWl0KHRoaXMudmlld2VyRXhjZXB0aW9uKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlUGFnZXMoZXZlbnQ6IFBhZ2VFdmVudFtdKSB7XG4gICAgaWYgKHRoaXMuZW5hYmxlQW5ub3RhdGlvbnMpIHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21Eb2N1bWVudEFjdGlvbnMuQWRkUGFnZXMoZXZlbnQpKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgc2VhcmNoQmFySGlkZGVuKGhpZGRlbjogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLnBkZldyYXBwZXIgJiYgaGlkZGVuKSB7XG4gICAgICB0aGlzLnBkZldyYXBwZXIuY2xlYXJTZWFyY2goKTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVDb21tZW50c1N1bW1hcnkoKSB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnRvZ2dsZUNvbW1lbnRzU3VtbWFyeSghdGhpcy50b29sYmFyRXZlbnRzLnNob3dDb21tZW50U3VtbWFyeS5nZXRWYWx1ZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgcm90YXRlRG9jdW1lbnQocm90YXRpb246IG51bWJlcikge1xuICAgIGNvbnN0IHBhZ2VOdW1iZXIgPSB0aGlzLnBkZldyYXBwZXIuZ2V0UGFnZU51bWJlcigpO1xuICAgIHRoaXMucGRmV3JhcHBlci5yb3RhdGUocm90YXRpb24pO1xuICAgIHRoaXMucGRmV3JhcHBlci5zZXRQYWdlTnVtYmVyKHBhZ2VOdW1iZXIpO1xuICAgIHRoaXMucm90YXRpb24gPSAodGhpcy5yb3RhdGlvbiArIHJvdGF0aW9uKSAlIDM2MDtcblxuICAgIHRoaXMuc2V0UGFnZUhlaWdodHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdERvY3VtZW50UHJvZ3Jlc3MoKSB7XG4gICAgdGhpcy5sb2FkaW5nRG9jdW1lbnQgPSB0cnVlO1xuICAgIHRoaXMubG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3MgPSBudWxsO1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Wm9vbSh6b29tRmFjdG9yOiBudW1iZXIpIHtcbiAgICBpZiAoIWlzTmFOKHpvb21GYWN0b3IpKSB7XG4gICAgICB0aGlzLnBkZldyYXBwZXIuc2V0Wm9vbSh6b29tRmFjdG9yKTtcbiAgICAgIHRoaXMuem9vbSA9IHRoaXMuY2FsY3VsYXRlWm9vbVZhbHVlKHpvb21GYWN0b3IpO1xuICAgICAgdGhpcy5zZXRQYWdlSGVpZ2h0cygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3RlcFpvb20oem9vbUZhY3RvcjogbnVtYmVyKSB7XG4gICAgaWYgKCFpc05hTih6b29tRmFjdG9yKSkge1xuICAgICAgdGhpcy5wZGZXcmFwcGVyLnN0ZXBab29tKHpvb21GYWN0b3IpO1xuICAgICAgdGhpcy56b29tID0gdGhpcy5jYWxjdWxhdGVab29tVmFsdWUodGhpcy56b29tLCB6b29tRmFjdG9yKTtcbiAgICAgIHRoaXMuc2V0UGFnZUhlaWdodHMoKTtcbiAgICB9XG4gIH1cblxuICBzZXRQYWdlSGVpZ2h0cygpIHtcbiAgICB0aGlzLnBhZ2VIZWlnaHRzID0gW107XG4gICAgY29uc3QgcGRmVmlld2VyQ2hpbGRyZW4gPSB0aGlzLnBkZlZpZXdlci5uYXRpdmVFbGVtZW50LmNoaWxkcmVuO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGRmVmlld2VyQ2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgIHRoaXMucGFnZUhlaWdodHMucHVzaChwZGZWaWV3ZXJDaGlsZHJlbltpXS5jbGllbnRIZWlnaHQpO1xuICAgIH1cbiAgfVxuXG4gIGNhbGN1bGF0ZVpvb21WYWx1ZSh6b29tVmFsdWUsIGluY3JlbWVudCA9IDApIHtcbiAgICBjb25zdCBuZXdab29tVmFsdWUgPSB6b29tVmFsdWUgKyBpbmNyZW1lbnQ7XG4gICAgaWYgKG5ld1pvb21WYWx1ZSA+IDUpIHtcbiAgICAgIHJldHVybiA1O1xuICAgIH1cbiAgICBpZiAobmV3Wm9vbVZhbHVlIDwgMC4xKSB7XG4gICAgICByZXR1cm4gMC4xO1xuICAgIH1cbiAgICByZXR1cm4gK25ld1pvb21WYWx1ZS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgcHJpdmF0ZSBnb1RvRGVzdGluYXRpb24oZGVzdGluYXRpb246IGFueVtdKSB7XG4gICAgdGhpcy5wZGZXcmFwcGVyLm5hdmlnYXRlVG8oZGVzdGluYXRpb24pO1xuICB9XG5cbiAgZ2V0Q3VycmVudFBhZ2VOdW1iZXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wZGZXcmFwcGVyLmdldFBhZ2VOdW1iZXIoKTtcbiAgfVxufVxuIiwiPG12LXNpZGUtYmFyXG4gICpuZ0lmPVwidG9vbGJhckV2ZW50cy5zaWRlYmFyT3BlblwiXG4gIGlkPVwic2lkZWJhckNvbnRhaW5lclwiXG4gIFt1cmxdPVwidXJsXCJcbiAgW3pvb21dPVwiem9vbVwiXG4gIFtyb3RhdGVdPVwicm90YXRpb25cIlxuICBbb3V0bGluZV09XCJkb2N1bWVudE91dGxpbmVcIlxuICBbYW5ub3RhdGlvbnNFbmFibGVkXT1cImVuYWJsZUFubm90YXRpb25zXCJcbiAgW2N1cnJlbnRQYWdlTnVtYmVyXT1cImdldEN1cnJlbnRQYWdlTnVtYmVyKClcIlxuPlxuPC9tdi1zaWRlLWJhcj5cbjxtdi1jb21tZW50LXNldC1oZWFkZXJcbiAgKm5nSWY9XCJlbmFibGVBbm5vdGF0aW9uc1wiXG4gIFtuZ0NsYXNzXT1cInsgJ3Nob3ctY29tbWVudHMtcGFuZWwnOiBzaG93Q29tbWVudHNQYW5lbCB9XCJcbiAgW3Nob3dDb21tZW50U3VtbWFyeV09XCJ0b29sYmFyQnV0dG9ucy5zaG93Q29tbWVudFN1bW1hcnlcIlxuICAoc2hvd0NvbW1lbnRTdW1tYXJ5RGlhbG9nKT1cInRvZ2dsZUNvbW1lbnRzU3VtbWFyeSgpXCJcbj5cbjwvbXYtY29tbWVudC1zZXQtaGVhZGVyPlxuPG12LXBhcnRpY2lwYW50cy1saXN0PjwvbXYtcGFydGljaXBhbnRzLWxpc3Q+XG48ZGl2XG4gIGNsYXNzPVwicGRmQ29udGFpbmVyXCJcbiAgW25nU3R5bGVdPVwieyBoZWlnaHQ6IGhlaWdodCB9XCJcbiAgW25nQ2xhc3NdPVwieyBwZGZDb250YWluZXI6IHRydWUsIGhpZGRlbjogZXJyb3JNZXNzYWdlIH1cIlxuPlxuICA8bXYtcmVkYWN0aW9uLXNlYXJjaC1iYXI+PC9tdi1yZWRhY3Rpb24tc2VhcmNoLWJhcj5cbiAgPGRpdlxuICAgICN2aWV3ZXJDb250YWluZXJcbiAgICBtdkdyYWJORHJhZ1xuICAgIFtkcmFnWF09XCJ2aWV3ZXJDb250YWluZXJcIlxuICAgIFtkcmFnRW5hYmxlZF09XCJlbmFibGVHcmFiTkRyYWdcIlxuICAgIGlkPVwidmlld2VyQ29udGFpbmVyXCJcbiAgICBjbGFzcz1cInZpZXdlci1jb250YWluZXJcIlxuICAgIFtjbGFzcy5hbm5vdGF0aW9uc109XCJlbmFibGVBbm5vdGF0aW9uc1wiXG4gICAgW2NsYXNzLnNob3ctY29tbWVudHMtcGFuZWxdPVwiXG4gICAgICAoc2hvd0NvbW1lbnRzUGFuZWwgfHwgc2hvd0ljcFBhcnRpY2lwYW50c0xpc3QpICYmXG4gICAgICAodG9vbGJhckV2ZW50cy5yZWRhY3Rpb25Nb2RlIHwgYXN5bmMpICE9PSB0cnVlXG4gICAgXCJcbiAgICBbY2xhc3MuZ3JhYk5EcmFnXT1cImVuYWJsZUdyYWJORHJhZ1wiXG4gID5cbiAgICA8ZGl2XG4gICAgICAjcGRmVmlld2VyXG4gICAgICBjbGFzcz1cInBkZlZpZXdlclwiXG4gICAgICBtdkNyZWF0ZVRleHRIaWdobGlnaHRcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgaGlkZGVuOiBsb2FkaW5nRG9jdW1lbnQsXG4gICAgICAgIGhpZ2hsaWdodE1vZGU6IGhpZ2hsaWdodE1vZGUgfCBhc3luYyxcbiAgICAgICAgZHJhd01vZGU6IGRyYXdNb2RlIHwgYXN5bmNcbiAgICAgIH1cIlxuICAgID48L2Rpdj5cbiAgICA8bXYtcmVkYWN0aW9uc1xuICAgICAgKm5nSWY9XCJ0b29sYmFyRXZlbnRzLnJlZGFjdGlvbk1vZGUgfCBhc3luYzsgZWxzZSBhbm5vdGF0aW9uVGVtcGxhdGVcIlxuICAgICAgW3pvb21dPVwiem9vbVwiXG4gICAgICBbcm90YXRlXT1cInJvdGF0aW9uXCJcbiAgICA+PC9tdi1yZWRhY3Rpb25zPlxuICAgIDxuZy10ZW1wbGF0ZSAjYW5ub3RhdGlvblRlbXBsYXRlPlxuICAgICAgPG12LW1ldGFkYXRhLWxheWVyXG4gICAgICAgICpuZ0lmPVwiZW5hYmxlQW5ub3RhdGlvbnMgJiYgYW5ub3RhdGlvblNldFwiXG4gICAgICAgIFt6b29tXT1cInpvb21cIlxuICAgICAgICBbcm90YXRlXT1cInJvdGF0aW9uXCJcbiAgICAgID5cbiAgICAgIDwvbXYtbWV0YWRhdGEtbGF5ZXI+XG4gICAgICA8bXYtYm9va21hcmstaWNvbnMgW3pvb21dPVwiem9vbVwiIFtyb3RhdGVdPVwicm90YXRpb25cIj4gPC9tdi1ib29rbWFyay1pY29ucz5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbiAgPG12LWNvbW1lbnQtc2V0XG4gICAgW2NvbnRlbnRTY3JvbGxUb3BdPVwidmlld2VyQ29udGFpbmVyLnNjcm9sbFRvcFwiXG4gICAgKm5nSWY9XCJcbiAgICAgIGVuYWJsZUFubm90YXRpb25zICYmXG4gICAgICBhbm5vdGF0aW9uU2V0ICYmXG4gICAgICAodG9vbGJhckV2ZW50cy5yZWRhY3Rpb25Nb2RlIHwgYXN5bmMpICE9PSB0cnVlXG4gICAgXCJcbiAgICBbYW5ub3RhdGlvblNldF09XCJhbm5vdGF0aW9uU2V0XCJcbiAgICBbem9vbV09XCJ6b29tXCJcbiAgICBbcm90YXRlXT1cInJvdGF0aW9uXCJcbiAgICBbaGVpZ2h0XT1cInBkZlZpZXdlci5vZmZzZXRIZWlnaHRcIlxuICAgIFtwYWdlSGVpZ2h0c109XCJwYWdlSGVpZ2h0c1wiXG4gID5cbiAgPC9tdi1jb21tZW50LXNldD5cbiAgPGRpdiBjbGFzcz1cImxvYWRpbmdNZXNzYWdlXCIgKm5nSWY9XCJsb2FkaW5nRG9jdW1lbnRcIj5cbiAgICA8aDMgY2xhc3M9XCJnb3Z1ay1oZWFkaW5nLW1cIj5cbiAgICAgIExvYWRpbmcuLi57e1xuICAgICAgICBsb2FkaW5nRG9jdW1lbnRQcm9ncmVzcyA/IGxvYWRpbmdEb2N1bWVudFByb2dyZXNzICsgXCIlXCIgOiBcIlwiXG4gICAgICB9fVxuICAgIDwvaDM+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
231
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVOLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBNkMsTUFBTSxNQUFNLENBQUM7QUFDakYsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQU81QyxPQUFPLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSzFFLE9BQU8sS0FBSyxtQkFBbUIsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEtBQUssY0FBYyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RCxPQUFPLEtBQUsscUJBQXFCLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVVsRixNQUFNLE9BQU8sa0JBQWtCO0lBMEM3QixZQUNVLEtBQTBDLEVBQzFDLFFBQXlCLEVBQ2hCLG1CQUF3QyxFQUN4QyxZQUEwQixFQUMzQixhQUFrQyxFQUNqQyxZ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QyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekMsQ0FBQzs7bUlBL05VLGtCQUFrQjt1SEFBbEIsa0JBQWtCLGt2QkN6Qy9CLG1qRkFzRkE7NEZEN0NhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxlQUFlLGlCQUVWLGlCQUFpQixDQUFDLElBQUk7c1RBSTNCLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBRUUsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBS0csTUFBTTtzQkFBZCxLQUFLO2dCQVd3QyxlQUFlO3NCQUE1RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFDSCxTQUFTO3NCQUFqRCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUM7Z0JBNEhuQyxlQUFlO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYXN5bmNTY2hlZHVsZXIsIEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIHRhcCwgdGhyb3R0bGVUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHsgRG9jdW1lbnRMb2FkUHJvZ3Jlc3MsIFBhZ2VFdmVudCwgUGRmSnNXcmFwcGVyIH0gZnJvbSAnLi9wZGYtanMvcGRmLWpzLXdyYXBwZXInO1xuaW1wb3J0IHsgUGRmSnNXcmFwcGVyRmFjdG9yeSB9IGZyb20gJy4vcGRmLWpzL3BkZi1qcy13cmFwcGVyLnByb3ZpZGVyJztcbmltcG9ydCB7IEFubm90YXRpb25TZXQgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXNldC5tb2RlbCc7XG5pbXBvcnQgeyBUb29sYmFyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9vbGJhci90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJpbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJpbnQuc2VydmljZSc7XG5pbXBvcnQgeyBSZXNwb25zZVR5cGUsIFZpZXdlckV4Y2VwdGlvbiB9IGZyb20gJy4uL3ZpZXdlci1leGNlcHRpb24ubW9kZWwnO1xuaW1wb3J0IHsgVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9vbGJhci90b29sYmFyLWJ1dHRvbi12aXNpYmlsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbWVudFNldENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Fubm90YXRpb25zL2NvbW1lbnQtc2V0L2NvbW1lbnQtc2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPdXRsaW5lIH0gZnJvbSAnLi9zaWRlLWJhci9vdXRsaW5lLWl0ZW0vb3V0bGluZS5tb2RlbCc7XG5pbXBvcnQgKiBhcyBmcm9tU3RvcmUgZnJvbSAnLi4vLi4vc3RvcmUvcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0ICogYXMgZnJvbURvY3VtZW50QWN0aW9ucyBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2RvY3VtZW50LmFjdGlvbnMnO1xuaW1wb3J0IHsgUGRmUG9zaXRpb25VcGRhdGUgfSBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2RvY3VtZW50LmFjdGlvbnMnO1xuaW1wb3J0ICogYXMgZnJvbVRhZ0FjdGlvbnMgZnJvbSAnLi4vLi4vc3RvcmUvYWN0aW9ucy90YWcuYWN0aW9ucyc7XG5pbXBvcnQgeyBTZXRDYXNlSWQgfSBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2ljcC5hY3Rpb25zJztcbmltcG9ydCAqIGFzIGZyb21Eb2N1bWVudHNTZWxlY3RvciBmcm9tICcuLi8uLi9zdG9yZS9zZWxlY3RvcnMvZG9jdW1lbnQuc2VsZWN0b3JzJztcbmltcG9ydCB7IEljcFN0YXRlIH0gZnJvbSAnLi4vLi4vaWNwL2ljcC5pbnRlcmZhY2VzJztcbmltcG9ydCB7IFZpZXdlckV2ZW50U2VydmljZSB9IGZyb20gJy4uL3ZpZXdlci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEljcFNlcnZpY2UgfSBmcm9tICcuLi8uLi9pY3AvaWNwLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1wZGYtdmlld2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BkZi12aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFBkZlZpZXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblxuICBAT3V0cHV0KCkgbWVkaWFMb2FkU3RhdHVzID0gbmV3IEV2ZW50RW1pdHRlcjxSZXNwb25zZVR5cGU+KCk7XG4gIEBPdXRwdXQoKSBwZGZWaWV3ZXJFeGNlcHRpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFZpZXdlckV4Y2VwdGlvbj4oKTtcbiAgQE91dHB1dCgpIGRvY3VtZW50VGl0bGUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBASW5wdXQoKSBkb3dubG9hZFVybDogc3RyaW5nO1xuICBASW5wdXQoKSB1cmw6IHN0cmluZztcbiAgQElucHV0KCkgZG93bmxvYWRGaWxlTmFtZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGVuYWJsZUFubm90YXRpb25zOiBib29sZWFuO1xuICBASW5wdXQoKSBlbmFibGVSZWRhY3Rpb25zOiBib29sZWFuO1xuICBASW5wdXQoKSBlbmFibGVJQ1A6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGFubm90YXRpb25TZXQ6IEFubm90YXRpb25TZXQgfCBudWxsO1xuICBASW5wdXQoKSBlbmFibGVSZWRhY3RTZWFyY2g6IEFubm90YXRpb25TZXQgfCBudWxsO1xuXG4gIEBJbnB1dCgpIGhlaWdodDogc3RyaW5nO1xuICBwYWdlSGVpZ2h0cyA9IFtdO1xuICByb3RhdGlvbiA9IDA7XG4gIHpvb20gPSAxO1xuXG4gIEBJbnB1dCgpIGNhc2VJZDogc3RyaW5nO1xuXG4gIGhpZ2hsaWdodE1vZGU6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGRyYXdNb2RlOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj47XG5cbiAgZG9jdW1lbnRPdXRsaW5lOiBPdXRsaW5lO1xuICBsb2FkaW5nRG9jdW1lbnQgPSBmYWxzZTtcbiAgbG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3M6IG51bWJlcjtcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XG4gIGhhc0RpZmZlcmVudFBhZ2VTaXplID0gZmFsc2U7XG5cbiAgQFZpZXdDaGlsZCgndmlld2VyQ29udGFpbmVyJywge3N0YXRpYzogdHJ1ZX0pIHZpZXdlckNvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gIEBWaWV3Q2hpbGQoJ3BkZlZpZXdlcicsIHtzdGF0aWM6IGZhbHNlfSkgcGRmVmlld2VyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICBwcml2YXRlIHBkZldyYXBwZXI6IFBkZkpzV3JhcHBlcjtcbiAgcHJpdmF0ZSAkc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgdmlld2VyRXhjZXB0aW9uOiBWaWV3ZXJFeGNlcHRpb247XG4gIHNob3dDb21tZW50c1BhbmVsOiBib29sZWFuO1xuICBzaG93SWNwUGFydGljaXBhbnRzTGlzdDogYm9vbGVhbjtcbiAgZW5hYmxlR3JhYk5EcmFnID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4sXG4gICAgcHJpdmF0ZSBpY3BTdG9yZTogU3RvcmU8SWNwU3RhdGU+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGRmSnNXcmFwcGVyRmFjdG9yeTogUGRmSnNXcmFwcGVyRmFjdG9yeSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByaW50U2VydmljZTogUHJpbnRTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld2VyRXZlbnRzOiBWaWV3ZXJFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpY3BTZXJ2aWNlOiBJY3BTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyQnV0dG9uczogVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLmhpZ2hsaWdodE1vZGUgPSB0b29sYmFyRXZlbnRzLmhpZ2hsaWdodE1vZGVTdWJqZWN0LnBpcGUodGFwKCgpID0+IHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21UYWdBY3Rpb25zLkNsZWFyRmlsdGVyVGFncygpKTtcbiAgICB9KSk7XG4gICAgdGhpcy5kcmF3TW9kZSA9IHRvb2xiYXJFdmVudHMuZHJhd01vZGVTdWJqZWN0O1xuICB9XG5cbiAgYXN5bmMgbmdBZnRlckNvbnRlbnRJbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMucGRmV3JhcHBlci5kb2N1bWVudExvYWRQcm9ncmVzcy5zdWJzY3JpYmUodiA9PiB0aGlzLm9uRG9jdW1lbnRMb2FkUHJvZ3Jlc3ModikpO1xuICAgIHRoaXMucGRmV3JhcHBlci5kb2N1bWVudExvYWRlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkRvY3VtZW50TG9hZGVkKCkpO1xuICAgIHRoaXMucGRmV3JhcHBlci5kb2N1bWVudExvYWRGYWlsZWQuc3Vic2NyaWJlKChlcnJvcikgPT4gdGhpcy5vbkRvY3VtZW50TG9hZEZhaWxlZChlcnJvcikpO1xuICAgIHRoaXMucGRmV3JhcHBlci5vdXRsaW5lTG9hZGVkLnN1YnNjcmliZShvdXRsaW5lID0+IHRoaXMuZG9jdW1lbnRPdXRsaW5lID0gb3V0bGluZSk7XG4gICAgdGhpcy5wZGZXcmFwcGVyLnBhZ2VSZW5kZXJlZC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB0aGlzLnVwZGF0ZVBhZ2VzKGV2ZW50KSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uID0gdGhpcy50b29sYmFyRXZlbnRzLnByaW50U3ViamVjdFxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnByaW50U2VydmljZS5wcmludERvY3VtZW50TmF0aXZlbHkodGhpcy51cmwpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5kb3dubG9hZFN1YmplY3Quc3Vic2NyaWJlKCgpID0+XG4gICAgICB0aGlzLnBkZldyYXBwZXIuZG93bmxvYWRGaWxlKHRoaXMuZG93bmxvYWRVcmwgfHwgdGhpcy51cmwsIHRoaXMuZG93bmxvYWRGaWxlTmFtZSlcbiAgICApKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5yb3RhdGVTdWJqZWN0LnN1YnNjcmliZShyb3RhdGUgPT4gdGhpcy5yb3RhdGVEb2N1bWVudChyb3RhdGUpKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuem9vbVN1YmplY3Quc3Vic2NyaWJlKHpvb20gPT4gdGhpcy5zZXRab29tKHpvb20pKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuc3RlcFpvb21TdWJqZWN0LnN1YnNjcmliZSh6b29tID0+IHRoaXMuc3RlcFpvb20oem9vbSkpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2hTdWJqZWN0LnN1YnNjcmliZShzZWFyY2ggPT4gdGhpcy5wZGZXcmFwcGVyLnNlYXJjaChzZWFyY2gpKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZChcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZXRDdXJyZW50UGFnZVN1YmplY3Quc3Vic2NyaWJlKHBhZ2VOdW1iZXIgPT4gdGhpcy5wZGZXcmFwcGVyLnNldFBhZ2VOdW1iZXIocGFnZU51bWJlcikpXG4gICAgKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLmNoYW5nZVBhZ2VCeURlbHRhU3ViamVjdC5zdWJzY3JpYmUocGFnZU51bWJlciA9PiB0aGlzLnBkZldyYXBwZXIuY2hhbmdlUGFnZU51bWJlcihwYWdlTnVtYmVyKSlcbiAgICApO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy50b29sYmFyRXZlbnRzLmdyYWJORHJhZy5zdWJzY3JpYmUoZ3JhYk5EcmFnID0+IHRoaXMuZW5hYmxlR3JhYk5EcmFnID0gZ3JhYk5EcmFnKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuY29tbWVudHNQYW5lbFZpc2libGUuc3Vic2NyaWJlKHRvZ2dsZSA9PiB7XG4gICAgICAgIHRoaXMuc2hvd0NvbW1lbnRzUGFuZWwgPSB0b2dnbGU7XG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnZpZXdlckV2ZW50cy5uYXZpZ2F0aW9uRXZlbnQuc3Vic2NyaWJlKGRlc3QgPT4gdGhpcy5nb1RvRGVzdGluYXRpb24oZGVzdCkpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLmljcC5wYXJ0aWNpcGFudHNMaXN0VmlzaWJsZS5zdWJzY3JpYmUodG9nZ2xlID0+IHRoaXMuc2hvd0ljcFBhcnRpY2lwYW50c0xpc3QgPSB0b2dnbGUpXG4gICAgKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMucGRmV3JhcHBlci5wb3NpdGlvblVwZGF0ZWQuYXNPYnNlcnZhYmxlKClcbiAgICAgIC5waXBlKHRocm90dGxlVGltZSg1MDAsIGFzeW5jU2NoZWR1bGVyLCB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH0pKVxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBQZGZQb3NpdGlvblVwZGF0ZShldmVudC5sb2NhdGlvbikpKVxuICAgICk7XG4gIH1cblxuICBhc3luYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKCF0aGlzLnBkZldyYXBwZXIpIHtcbiAgICAgIHRoaXMucGRmV3JhcHBlciA9IHRoaXMucGRmSnNXcmFwcGVyRmFjdG9yeS5jcmVhdGUodGhpcy52aWV3ZXJDb250YWluZXIpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlcy51cmwgJiYgdGhpcy5wZGZXcmFwcGVyKSB7XG4gICAgICBhd2FpdCB0aGlzLmxvYWREb2N1bWVudCgpO1xuICAgICAgaWYgKHRoaXMuZW5hYmxlUmVkYWN0aW9ucykge1xuICAgICAgICB0aGlzLnRvb2xiYXJFdmVudHMucmVkYWN0aW9uTW9kZS5waXBlKGZpbHRlcih2YWx1ZSA9PiAhIXZhbHVlKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVzZXRSb3RhdGlvbigpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGNoYW5nZXMuY2FzZUlkKSB7XG4gICAgICB0aGlzLmljcFN0b3JlLmRpc3BhdGNoKG5ldyBTZXRDYXNlSWQodGhpcy5jYXNlSWQpKTtcbiAgICB9XG4gIH1cblxuICByZXNldFJvdGF0aW9uKCkge1xuICAgIGlmICh0aGlzLmhhc0RpZmZlcmVudFBhZ2VTaXplKSB7XG4gICAgICB0aGlzLnBkZldyYXBwZXIucmVzZXRSb3RhdGlvbigwKTtcbiAgICAgIHRoaXMucm90YXRpb24gPSAwO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBsb2FkRG9jdW1lbnQoKSB7XG4gICAgdGhpcy5pbml0RG9jdW1lbnRQcm9ncmVzcygpO1xuICAgIGF3YWl0IHRoaXMucGRmV3JhcHBlci5sb2FkRG9jdW1lbnQodGhpcy51cmwpO1xuICAgIHRoaXMuZG9jdW1lbnRUaXRsZS5lbWl0KHRoaXMucGRmV3JhcHBlci5nZXRDdXJyZW50UERGVGl0bGUoKSk7XG4gICAgdGhpcy5zZXRQYWdlSGVpZ2h0cygpO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tRG9jdW1lbnRzU2VsZWN0b3IuZ2V0UGFnZURpZmZlcmVuY2UpKVxuICAgICAgLnN1YnNjcmliZShoYXNEaWZmZXJlbnRQYWdlU2llID0+IHRoaXMuaGFzRGlmZmVyZW50UGFnZVNpemUgPSBoYXNEaWZmZXJlbnRQYWdlU2llKSk7XG4gIH1cblxuICBwcml2YXRlIG9uRG9jdW1lbnRMb2FkUHJvZ3Jlc3MocHJvZ3Jlc3M6IERvY3VtZW50TG9hZFByb2dyZXNzKSB7XG4gICAgaWYgKHByb2dyZXNzLnRvdGFsKSB7XG4gICAgICB0aGlzLmxvYWRpbmdEb2N1bWVudFByb2dyZXNzID0gTWF0aC5taW4oMTAwLCBNYXRoLmNlaWwocHJvZ3Jlc3MubG9hZGVkIC8gcHJvZ3Jlc3MudG90YWwgKiAxMDApKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9uRG9jdW1lbnRMb2FkZWQoKSB7XG4gICAgdGhpcy5sb2FkaW5nRG9jdW1lbnQgPSBmYWxzZTtcbiAgICB0aGlzLm1lZGlhTG9hZFN0YXR1cy5lbWl0KFJlc3BvbnNlVHlwZS5TVUNDRVNTKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Eb2N1bWVudExvYWRGYWlsZWQoZXJyb3I6IEVycm9yKSB7XG4gICAgdGhpcy5sb2FkaW5nRG9jdW1lbnQgPSBmYWxzZTtcbiAgICB0aGlzLnZpZXdlckV4Y2VwdGlvbiA9IG5ldyBWaWV3ZXJFeGNlcHRpb24oZXJyb3IubmFtZSwgeyBtZXNzYWdlOiBlcnJvci5tZXNzYWdlIH0pO1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gYENvdWxkIG5vdCBsb2FkIHRoZSBkb2N1bWVudCBcIiR7dGhpcy51cmx9XCJgO1xuXG4gICAgdGhpcy5tZWRpYUxvYWRTdGF0dXMuZW1pdChSZXNwb25zZVR5cGUuRkFJTFVSRSk7XG4gICAgdGhpcy5wZGZWaWV3ZXJFeGNlcHRpb24uZW1pdCh0aGlzLnZpZXdlckV4Y2VwdGlvbik7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVBhZ2VzKGV2ZW50OiBQYWdlRXZlbnRbXSkge1xuICAgIGlmICh0aGlzLmVuYWJsZUFubm90YXRpb25zKSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tRG9jdW1lbnRBY3Rpb25zLkFkZFBhZ2VzKGV2ZW50KSk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHNlYXJjaEJhckhpZGRlbihoaWRkZW46IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5wZGZXcmFwcGVyICYmIGhpZGRlbikge1xuICAgICAgdGhpcy5wZGZXcmFwcGVyLmNsZWFyU2VhcmNoKCk7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlQ29tbWVudHNTdW1tYXJ5KCkge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy50b2dnbGVDb21tZW50c1N1bW1hcnkoIXRoaXMudG9vbGJhckV2ZW50cy5zaG93Q29tbWVudFN1bW1hcnkuZ2V0VmFsdWUoKSk7XG4gIH1cblxuICBwcml2YXRlIHJvdGF0ZURvY3VtZW50KHJvdGF0aW9uOiBudW1iZXIpIHtcbiAgICBjb25zdCBwYWdlTnVtYmVyID0gdGhpcy5wZGZXcmFwcGVyLmdldFBhZ2VOdW1iZXIoKTtcbiAgICB0aGlzLnBkZldyYXBwZXIucm90YXRlKHJvdGF0aW9uKTtcbiAgICB0aGlzLnBkZldyYXBwZXIuc2V0UGFnZU51bWJlcihwYWdlTnVtYmVyKTtcbiAgICB0aGlzLnJvdGF0aW9uID0gKHRoaXMucm90YXRpb24gKyByb3RhdGlvbikgJSAzNjA7XG5cbiAgICB0aGlzLnNldFBhZ2VIZWlnaHRzKCk7XG4gIH1cblxuICBwcml2YXRlIGluaXREb2N1bWVudFByb2dyZXNzKCkge1xuICAgIHRoaXMubG9hZGluZ0RvY3VtZW50ID0gdHJ1ZTtcbiAgICB0aGlzLmxvYWRpbmdEb2N1bWVudFByb2dyZXNzID0gbnVsbDtcbiAgICB0aGlzLmVycm9yTWVzc2FnZSA9IG51bGw7XG4gIH1cblxuICBwcml2YXRlIHNldFpvb20oem9vbUZhY3RvcjogbnVtYmVyKSB7XG4gICAgaWYgKCFpc05hTih6b29tRmFjdG9yKSkge1xuICAgICAgdGhpcy5wZGZXcmFwcGVyLnNldFpvb20oem9vbUZhY3Rvcik7XG4gICAgICB0aGlzLnpvb20gPSB0aGlzLmNhbGN1bGF0ZVpvb21WYWx1ZSh6b29tRmFjdG9yKTtcbiAgICAgIHRoaXMuc2V0UGFnZUhlaWdodHMoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHN0ZXBab29tKHpvb21GYWN0b3I6IG51bWJlcikge1xuICAgIGlmICghaXNOYU4oem9vbUZhY3RvcikpIHtcbiAgICAgIHRoaXMucGRmV3JhcHBlci5zdGVwWm9vbSh6b29tRmFjdG9yKTtcbiAgICAgIHRoaXMuem9vbSA9IHRoaXMuY2FsY3VsYXRlWm9vbVZhbHVlKHRoaXMuem9vbSwgem9vbUZhY3Rvcik7XG4gICAgICB0aGlzLnNldFBhZ2VIZWlnaHRzKCk7XG4gICAgfVxuICB9XG5cbiAgc2V0UGFnZUhlaWdodHMoKSB7XG4gICAgdGhpcy5wYWdlSGVpZ2h0cyA9IFtdO1xuICAgIGNvbnN0IHBkZlZpZXdlckNoaWxkcmVuID0gdGhpcy5wZGZWaWV3ZXIubmF0aXZlRWxlbWVudC5jaGlsZHJlbjtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBkZlZpZXdlckNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICB0aGlzLnBhZ2VIZWlnaHRzLnB1c2gocGRmVmlld2VyQ2hpbGRyZW5baV0uY2xpZW50SGVpZ2h0KTtcbiAgICB9XG4gIH1cblxuICBjYWxjdWxhdGVab29tVmFsdWUoem9vbVZhbHVlLCBpbmNyZW1lbnQgPSAwKSB7XG4gICAgY29uc3QgbmV3Wm9vbVZhbHVlID0gem9vbVZhbHVlICsgaW5jcmVtZW50O1xuICAgIGlmIChuZXdab29tVmFsdWUgPiA1KSB7XG4gICAgICByZXR1cm4gNTtcbiAgICB9XG4gICAgaWYgKG5ld1pvb21WYWx1ZSA8IDAuMSkge1xuICAgICAgcmV0dXJuIDAuMTtcbiAgICB9XG4gICAgcmV0dXJuICtuZXdab29tVmFsdWUudG9GaXhlZCgyKTtcbiAgfVxuXG4gIHByaXZhdGUgZ29Ub0Rlc3RpbmF0aW9uKGRlc3RpbmF0aW9uOiBhbnlbXSkge1xuICAgIHRoaXMucGRmV3JhcHBlci5uYXZpZ2F0ZVRvKGRlc3RpbmF0aW9uKTtcbiAgfVxuXG4gIGdldEN1cnJlbnRQYWdlTnVtYmVyKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGRmV3JhcHBlci5nZXRQYWdlTnVtYmVyKCk7XG4gIH1cbn1cbiIsIjxtdi1zaWRlLWJhclxuICAqbmdJZj1cInRvb2xiYXJFdmVudHMuc2lkZWJhck9wZW5cIlxuICBpZD1cInNpZGViYXJDb250YWluZXJcIlxuICBbdXJsXT1cInVybFwiXG4gIFt6b29tXT1cInpvb21cIlxuICBbcm90YXRlXT1cInJvdGF0aW9uXCJcbiAgW291dGxpbmVdPVwiZG9jdW1lbnRPdXRsaW5lXCJcbiAgW2Fubm90YXRpb25zRW5hYmxlZF09XCJlbmFibGVBbm5vdGF0aW9uc1wiXG4gIFtjdXJyZW50UGFnZU51bWJlcl09XCJnZXRDdXJyZW50UGFnZU51bWJlcigpXCJcbj5cbjwvbXYtc2lkZS1iYXI+XG48bXYtY29tbWVudC1zZXQtaGVhZGVyXG4gICpuZ0lmPVwiZW5hYmxlQW5ub3RhdGlvbnNcIlxuICBbbmdDbGFzc109XCJ7ICdzaG93LWNvbW1lbnRzLXBhbmVsJzogc2hvd0NvbW1lbnRzUGFuZWwgfVwiXG4gIFtzaG93Q29tbWVudFN1bW1hcnldPVwidG9vbGJhckJ1dHRvbnMuc2hvd0NvbW1lbnRTdW1tYXJ5XCJcbiAgKHNob3dDb21tZW50U3VtbWFyeURpYWxvZyk9XCJ0b2dnbGVDb21tZW50c1N1bW1hcnkoKVwiXG4+XG48L212LWNvbW1lbnQtc2V0LWhlYWRlcj5cbjxtdi1wYXJ0aWNpcGFudHMtbGlzdD48L212LXBhcnRpY2lwYW50cy1saXN0PlxuPGRpdlxuICBjbGFzcz1cInBkZkNvbnRhaW5lclwiXG4gIFtuZ1N0eWxlXT1cInsgaGVpZ2h0OiBoZWlnaHQgfVwiXG4gIFtuZ0NsYXNzXT1cInsgcGRmQ29udGFpbmVyOiB0cnVlLCBoaWRkZW46IGVycm9yTWVzc2FnZSB9XCJcbj5cbiAgPG12LXJlZGFjdGlvbi1zZWFyY2gtYmFyPjwvbXYtcmVkYWN0aW9uLXNlYXJjaC1iYXI+XG4gIDxkaXZcbiAgICAjdmlld2VyQ29udGFpbmVyXG4gICAgbXZHcmFiTkRyYWdcbiAgICBbZHJhZ1hdPVwidmlld2VyQ29udGFpbmVyXCJcbiAgICBbZHJhZ0VuYWJsZWRdPVwiZW5hYmxlR3JhYk5EcmFnXCJcbiAgICBpZD1cInZpZXdlckNvbnRhaW5lclwiXG4gICAgY2xhc3M9XCJ2aWV3ZXItY29udGFpbmVyXCJcbiAgICBbY2xhc3MuYW5ub3RhdGlvbnNdPVwiZW5hYmxlQW5ub3RhdGlvbnNcIlxuICAgIFtjbGFzcy5zaG93LWNvbW1lbnRzLXBhbmVsXT1cIlxuICAgICAgKHNob3dDb21tZW50c1BhbmVsIHx8IHNob3dJY3BQYXJ0aWNpcGFudHNMaXN0KSAmJlxuICAgICAgKHRvb2xiYXJFdmVudHMucmVkYWN0aW9uTW9kZSB8IGFzeW5jKSAhPT0gdHJ1ZVxuICAgIFwiXG4gICAgW2NsYXNzLmdyYWJORHJhZ109XCJlbmFibGVHcmFiTkRyYWdcIlxuICA+XG4gICAgPGRpdlxuICAgICAgI3BkZlZpZXdlclxuICAgICAgY2xhc3M9XCJwZGZWaWV3ZXJcIlxuICAgICAgbXZDcmVhdGVUZXh0SGlnaGxpZ2h0XG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgIGhpZGRlbjogbG9hZGluZ0RvY3VtZW50LFxuICAgICAgICBoaWdobGlnaHRNb2RlOiBoaWdobGlnaHRNb2RlIHwgYXN5bmMsXG4gICAgICAgIGRyYXdNb2RlOiBkcmF3TW9kZSB8IGFzeW5jXG4gICAgICB9XCJcbiAgICA+PC9kaXY+XG4gICAgPG12LXJlZGFjdGlvbnNcbiAgICAgICpuZ0lmPVwidG9vbGJhckV2ZW50cy5yZWRhY3Rpb25Nb2RlIHwgYXN5bmM7IGVsc2UgYW5ub3RhdGlvblRlbXBsYXRlXCJcbiAgICAgIFt6b29tXT1cInpvb21cIlxuICAgICAgW3JvdGF0ZV09XCJyb3RhdGlvblwiXG4gICAgPjwvbXYtcmVkYWN0aW9ucz5cbiAgICA8bmctdGVtcGxhdGUgI2Fubm90YXRpb25UZW1wbGF0ZT5cbiAgICAgIDxtdi1tZXRhZGF0YS1sYXllclxuICAgICAgICAqbmdJZj1cImVuYWJsZUFubm90YXRpb25zICYmIGFubm90YXRpb25TZXRcIlxuICAgICAgICBbem9vbV09XCJ6b29tXCJcbiAgICAgICAgW3JvdGF0ZV09XCJyb3RhdGlvblwiXG4gICAgICA+XG4gICAgICA8L212LW1ldGFkYXRhLWxheWVyPlxuICAgICAgPG12LWJvb2ttYXJrLWljb25zIFt6b29tXT1cInpvb21cIiBbcm90YXRlXT1cInJvdGF0aW9uXCI+IDwvbXYtYm9va21hcmstaWNvbnM+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG4gIDxtdi1jb21tZW50LXNldFxuICAgIFtjb250ZW50U2Nyb2xsVG9wXT1cInZpZXdlckNvbnRhaW5lci5zY3JvbGxUb3BcIlxuICAgICpuZ0lmPVwiXG4gICAgICBlbmFibGVBbm5vdGF0aW9ucyAmJlxuICAgICAgYW5ub3RhdGlvblNldCAmJlxuICAgICAgKHRvb2xiYXJFdmVudHMucmVkYWN0aW9uTW9kZSB8IGFzeW5jKSAhPT0gdHJ1ZVxuICAgIFwiXG4gICAgW2Fubm90YXRpb25TZXRdPVwiYW5ub3RhdGlvblNldFwiXG4gICAgW3pvb21dPVwiem9vbVwiXG4gICAgW3JvdGF0ZV09XCJyb3RhdGlvblwiXG4gICAgW2hlaWdodF09XCJwZGZWaWV3ZXIub2Zmc2V0SGVpZ2h0XCJcbiAgICBbcGFnZUhlaWdodHNdPVwicGFnZUhlaWdodHNcIlxuICA+XG4gIDwvbXYtY29tbWVudC1zZXQ+XG4gIDxkaXYgY2xhc3M9XCJsb2FkaW5nTWVzc2FnZVwiICpuZ0lmPVwibG9hZGluZ0RvY3VtZW50XCI+XG4gICAgPGgzIGNsYXNzPVwiZ292dWstaGVhZGluZy1tXCI+XG4gICAgICB7eyBcIkxvYWRpbmcuLi5cIiB8IHJweFRyYW5zbGF0ZX19e3tcbiAgICAgICAgbG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3MgPyBsb2FkaW5nRG9jdW1lbnRQcm9ncmVzcyArIFwiJVwiIDogXCJcIlxuICAgICAgfX1cbiAgICA8L2gzPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -172,9 +172,9 @@ export class BookmarksComponent {
|
|
|
172
172
|
return ((height / this.zoom) - yCoordinate) / viewportScale;
|
|
173
173
|
}
|
|
174
174
|
}
|
|
175
|
-
/** @nocollapse */ BookmarksComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
176
|
-
/** @nocollapse */ BookmarksComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
177
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
175
|
+
/** @nocollapse */ BookmarksComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BookmarksComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component });
|
|
176
|
+
/** @nocollapse */ BookmarksComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BookmarksComponent, selector: "mv-bookmarks", inputs: { bookmarkNodes: "bookmarkNodes", zoom: "zoom", rotate: "rotate" }, outputs: { goToDestination: "goToDestination" }, viewQueries: [{ propertyName: "tree", first: true, predicate: TreeComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<a *ngIf=\"bookmarkNodes?.length === 0\" class=\"highlightedOutlineItem\">No bookmarks created yet</a>\n<tree-root [nodes]=\"bookmarkNodes\" class=\"bookmarks-tree\" [options]=\"options\" (moveNode)=\"onBookmarkMove($event)\">\n <ng-template #treeNodeTemplate let-node let-index=\"index\">\n <div class=\"outlineItem\" *ngIf=\"node.data.id !== editableBookmark; else inputBookmark\">\n <a (click)=\"goToBookmark(node.data)\">\n {{ node.data.name }}\n </a>\n <button class=\"bookmark__rename\" (click)=\"editBookmark(node.data.id)\"></button>\n <button class=\"bookmark__delete\" (click)=\"deleteBookmark(node)\"></button>\n </div>\n <ng-template #inputBookmark>\n <input #bookmarkName class=\"bookmark__input\" [value]=\"node.data.name\" [maxLength]=\"BOOKMARK_CHAR_LIMIT\">\n <button class=\"bookmark__save\" (click)=\"updateBookmark(node.data, bookmarkName.value)\"></button>\n </ng-template>\n </ng-template>\n</tree-root>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TreeComponent, selector: "Tree, tree-root", inputs: ["nodes", "options", "focused", "state"], outputs: ["toggleExpanded", "activate", "deactivate", "nodeActivate", "nodeDeactivate", "select", "deselect", "focus", "blur", "updateData", "initialized", "moveNode", "copyNode", "loadNodeChildren", "changeFilter", "event", "stateChange"] }] });
|
|
177
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BookmarksComponent, decorators: [{
|
|
178
178
|
type: Component,
|
|
179
179
|
args: [{ selector: 'mv-bookmarks', template: "<a *ngIf=\"bookmarkNodes?.length === 0\" class=\"highlightedOutlineItem\">No bookmarks created yet</a>\n<tree-root [nodes]=\"bookmarkNodes\" class=\"bookmarks-tree\" [options]=\"options\" (moveNode)=\"onBookmarkMove($event)\">\n <ng-template #treeNodeTemplate let-node let-index=\"index\">\n <div class=\"outlineItem\" *ngIf=\"node.data.id !== editableBookmark; else inputBookmark\">\n <a (click)=\"goToBookmark(node.data)\">\n {{ node.data.name }}\n </a>\n <button class=\"bookmark__rename\" (click)=\"editBookmark(node.data.id)\"></button>\n <button class=\"bookmark__delete\" (click)=\"deleteBookmark(node)\"></button>\n </div>\n <ng-template #inputBookmark>\n <input #bookmarkName class=\"bookmark__input\" [value]=\"node.data.name\" [maxLength]=\"BOOKMARK_CHAR_LIMIT\">\n <button class=\"bookmark__save\" (click)=\"updateBookmark(node.data, bookmarkName.value)\"></button>\n </ng-template>\n </ng-template>\n</tree-root>\n" }]
|
|
180
180
|
}], ctorParameters: function () { return [{ type: i1.Store }]; }, propDecorators: { bookmarkNodes: [{
|
|
@@ -189,4 +189,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
189
189
|
type: ViewChild,
|
|
190
190
|
args: [TreeComponent]
|
|
191
191
|
}] } });
|
|
192
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9va21hcmtzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvcGRmLXZpZXdlci9zaWRlLWJhci9ib29rbWFya3MvYm9va21hcmtzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvcGRmLXZpZXdlci9zaWRlLWJhci9ib29rbWFya3MvYm9va21hcmtzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBZ0MsTUFBTSxFQUFpQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQUU1QyxPQUFPLEVBQUUsYUFBYSxFQUFZLE1BQU0saUNBQWlDLENBQUM7QUFFMUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRTFILE9BQU8sS0FBSyxrQkFBa0IsTUFBTSxnREFBZ0QsQ0FBQztBQUdyRixPQUFPLEtBQUssWUFBWSxNQUFNLGdEQUFnRCxDQUFDO0FBRS9FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7Ozs7O0FBTXhCLE1BQU0sT0FBTyxrQkFBa0I7SUEwQjdCLFlBQW9CLEtBQStEO1FBQS9ELFVBQUssR0FBTCxLQUFLLENBQTBEO1FBckJ6RSxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7UUFFdEQsZUFBVSxHQUF3QyxFQUFF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QUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3JELE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsV0FBVyxDQUFDLEdBQUcsYUFBYSxDQUFDO0lBQzlELENBQUM7O2tJQXBNVSxrQkFBa0I7c0hBQWxCLGtCQUFrQix1TkFrQmxCLGFBQWEscUVDdEMxQixvOUJBZ0JBOzJGRElhLGtCQUFrQjtrQkFKOUIsU0FBUzsrQkFDRSxjQUFjOzRGQUtmLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxlQUFlO3NCQUF4QixNQUFNO2dCQWNQLElBQUk7c0JBREgsU0FBUzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVHJlZUNvbXBvbmVudCwgVHJlZU5vZGUgfSBmcm9tICdAY2lyY2xvbi9hbmd1bGFyLXRyZWUtY29tcG9uZW50JztcblxuaW1wb3J0IHsgQ3JlYXRlQm9va21hcmssIERlbGV0ZUJvb2ttYXJrLCBNb3ZlQm9va21hcmssIFVwZGF0ZUJvb2ttYXJrIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvYWN0aW9ucy9ib29rbWFyay5hY3Rpb25zJztcbmltcG9ydCB7IEJvb2ttYXJrIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvbW9kZWxzL2Jvb2ttYXJrcy5pbnRlcmZhY2UnO1xuaW1wb3J0ICogYXMgYm9va21hcmtzU2VsZWN0b3JzIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL3NlbGVjdG9ycy9ib29rbWFyay5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgQW5ub3RhdGlvblNldFN0YXRlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvcmVkdWNlcnMvYW5ub3RhdGlvbnMucmVkdWNlcic7XG5pbXBvcnQgeyBEb2N1bWVudFBhZ2VzIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvcmVkdWNlcnMvZG9jdW1lbnQucmVkdWNlcic7XG5pbXBvcnQgKiBhcyBmcm9tRG9jdW1lbnQgZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvc2VsZWN0b3JzL2RvY3VtZW50LnNlbGVjdG9ycyc7XG5pbXBvcnQgKiBhcyBmcm9tQm9va21hcmtzIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL2Jvb2ttYXJrcy5yZWR1Y2VyJztcbmltcG9ydCB7IGdldEJvb2ttYXJrQ2hpbGRyZW4gfSBmcm9tICcuLi8uLi8uLi8uLi9zdG9yZS9ib29rbWFya3Mtc3RvcmUtdXRpbHMnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB1dWlkIGZyb20gJ3V1aWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1ib29rbWFya3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vYm9va21hcmtzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBCb29rbWFya3NDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKSBib29rbWFya05vZGVzOiBCb29rbWFya1tdO1xuICBASW5wdXQoKSB6b29tOiBudW1iZXI7XG4gIEBJbnB1dCgpIHJvdGF0ZTogbnVtYmVyO1xuICBAT3V0cHV0KCkgZ29Ub0Rlc3RpbmF0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcblxuICBwYWdlTG9va3VwOiB7IFtwYWdlSWQ6IG51bWJlcl06IERvY3VtZW50UGFnZXMgfSA9IHt9O1xuICBlZGl0YWJsZUJvb2ttYXJrOiBzdHJpbmc7XG4gIEJPT0tNQVJLX0NIQVJfTElNSVQgPSAzMDtcblxuICBvcHRpb25zID0ge1xuICAgIGFsbG93RHJhZzogdHJ1ZSxcbiAgICBhbGxvd0Ryb3A6IHRydWVcbiAgfTtcblxuICAkc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgQFZpZXdDaGlsZChUcmVlQ29tcG9uZW50KVxuICB0cmVlOiBUcmVlQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgc29ydE1vZGU6IHN0cmluZztcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jdXN0b21Tb3J0ID0gJ0NVU1RPTSc7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Bvc2l0aW9uU29ydCA9ICdQT1NJVElPTic7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbUJvb2ttYXJrcy5Cb29rbWFya3NTdGF0ZSB8IEFubm90YXRpb25TZXRTdGF0ZT4pIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc29ydE1vZGUgPSB0aGlzLmN1c3RvbVNvcnQ7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChib29rbWFya3NTZWxlY3RvcnMuZ2V0RWRpdGFibGVCb29rbWFyaykpXG4gICAgICAuc3Vic2NyaWJlKGVkaXRhYmxlSWQgPT4gdGhpcy5lZGl0YWJsZUJvb2ttYXJrID0gZWRpdGFibGVJZCk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnN0b3JlLnNlbGVjdChmcm9tRG9jdW1lbnQuZ2V0UGFnZXMpXG4gICAgICAuc3Vic2NyaWJlKHBhZ2VzID0+IHtcblxuICAgICAgICBPYmplY3Qua2V5cyhwYWdlcykubWFwKGtleSA9PiB7XG4gICAgICAgICAgdGhpcy5wYWdlTG9va3VwW2tleV0gPSBwYWdlc1trZXldO1xuICAgICAgICB9KTtcblxuICAgICAgfSkpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLmJvb2ttYXJrTm9kZXMgJiYgdGhpcy5zb3J0TW9kZSAhPT0gdGhpcy5jdXN0b21Tb3J0KSB7XG4gICAgICB0aGlzLnNvcnRCb29rbWFya3MoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGVkaXRCb29rbWFyayhpZCkge1xuICAgIHRoaXMuZWRpdGFibGVCb29rbWFyayA9IGlkO1xuICB9XG5cbiAgb25BZGRCb29rbWFya0NsaWNrKCkge1xuICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QoYm9va21hcmtzU2VsZWN0b3JzLmdldEJvb2ttYXJrSW5mbyksIHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChib29rbWFya0luZm8pID0+IHtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgQ3JlYXRlQm9va21hcmsoe1xuICAgICAgICAgIC4uLmJvb2ttYXJrSW5mbywgbmFtZTogJycsIGlkOiB1dWlkKClcbiAgICAgICAgfSBhcyBhbnkpKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgb25Cb29rbWFya01vdmUoeyBub2RlLCBmcm9tLCB0byB9OiBhbnkpIHtcbiAgICBsZXQgbW92ZWRCb29rbWFya3MgPSBbe1xuICAgICAgLi4ubm9kZSxcbiAgICAgIHByZXZpb3VzOiB0by5pbmRleCA+IDAgPyB0by5wYXJlbnQuY2hpbGRyZW5bdG8uaW5kZXggLSAxXS5pZCA6IHVuZGVmaW5lZCxcbiAgICAgIHBhcmVudDogdG8ucGFyZW50LmRvY3VtZW50SWQgPyB0by5wYXJlbnQuaWQgOiB1bmRlZmluZWRcbiAgICB9XTtcbiAgICBsZXQgZnJvbU5leHQgPSB0aGlzLmdldFNpYmxpbmcoZnJvbSwgZnJvbS5pbmRleCk7XG4gICAgZnJvbU5leHQgPSBmcm9tTmV4dCAmJiBmcm9tTmV4dC5pZCA9PT0gbm9kZS5wcmV2aW91cyA/IHRoaXMuZ2V0U2libGluZyhmcm9tLCBmcm9tLmluZGV4ICsgMSkgOiBmcm9tTmV4dDtcbiAgICBpZiAoZnJvbU5leHQpIHtcbiAgICAgIG1vdmVkQm9va21hcmtzID0gWy4uLm1vdmVkQm9va21hcmtzLCB7IC4uLmZyb21OZXh0LCBwcmV2aW91czogbm9kZS5wcmV2aW91cyB9XTtcbiAgICB9XG4gICAgY29uc3QgdG9OZXh0ID0gdGhpcy5nZXRTaWJsaW5nKHRvLCB0by5pbmRleCArIDEpO1xuICAgIGlmICh0b05leHQpIHtcbiAgICAgIG1vdmVkQm9va21hcmtzID0gWy4uLm1vdmVkQm9va21hcmtzLCB7IC4uLnRvTmV4dCwgcHJldmlvdXM6IG5vZGUuaWQgfV07XG4gICAgfVxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IE1vdmVCb29rbWFyayhtb3ZlZEJvb2ttYXJrcykpO1xuICB9XG5cbiAgZGVsZXRlQm9va21hcmsobm9kZTogVHJlZU5vZGUpIHtcbiAgICB0aGlzLmN1c3RvbVNvcnRCb29rbWFya3MoKTtcbiAgICBsZXQgbmV4dDogQm9va21hcms7XG4gICAgbm9kZSA9IHRoaXMudHJlZS50cmVlTW9kZWwuZ2V0Tm9kZUJ5SWQobm9kZS5pZCk7XG4gICAgaWYgKCFub2RlLnBhcmVudCkge1xuICAgICAgbm9kZS5wYXJlbnQgPSB0aGlzLnRyZWUudHJlZU1vZGVsLnZpcnR1YWxSb290O1xuICAgIH1cbiAgICBjb25zdCBzaWJsaW5ncyA9IG5vZGUucGFyZW50LmNoaWxkcmVuO1xuICAgIGlmIChzaWJsaW5ncy5sZW5ndGggPiBub2RlLmluZGV4ICsgMSkge1xuICAgICAgbmV4dCA9IHNpYmxpbmdzW25vZGUuaW5kZXggKyAxXS5kYXRhO1xuICAgICAgbmV4dC5wcmV2aW91cyA9IG5vZGUuZGF0YS5wcmV2aW91cztcbiAgICB9XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgRGVsZXRlQm9va21hcmsoe1xuICAgICAgZGVsZXRlZDogW25vZGUuZGF0YS5pZCwgLi4uZ2V0Qm9va21hcmtDaGlsZHJlbihub2RlLmRhdGEuY2hpbGRyZW4pXSwgdXBkYXRlZDogbmV4dFxuICAgIH0pKTtcbiAgfVxuXG4gIHVwZGF0ZUJvb2ttYXJrKGJvb2ttYXJrOiBCb29rbWFyaywgbmFtZSkge1xuICAgIGNvbnN0IGVkaXRlZEJvb2ttYXJrID0ge1xuICAgICAgLi4uYm9va21hcmssXG4gICAgICBuYW1lXG4gICAgfTtcbiAgICBpZiAobmFtZSkge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgVXBkYXRlQm9va21hcmsoZWRpdGVkQm9va21hcmspKTtcbiAgICAgIHRoaXMuZWRpdGFibGVCb29rbWFyayA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICBnb1RvQm9va21hcmsoYm9va21hcms6IEJvb2ttYXJrKSB7XG4gICAgY29uc3QgdGhpc1BhZ2UgPSB0aGlzLnBhZ2VMb29rdXBbYm9va21hcmsucGFnZU51bWJlciArIDFdO1xuICAgIGNvbnN0IGRlZmF1bHRIZWlnaHQgPSB0aGlzUGFnZS5zdHlsZXMuaGVpZ2h0O1xuICAgIGNvbnN0IGRlZmF1bHRTY2FsZVkgPSB0aGlzLnNjYWxlZFkoYm9va21hcmsueUNvb3JkaW5hdGUsIGRlZmF1bHRIZWlnaHQsIHRoaXNQYWdlKTtcblxuICAgIGxldCB0b3AgPSAwLCBsZWZ0ID0gMDtcbiAgICBzd2l0Y2ggKHRoaXMucm90YXRlKSB7XG4gICAgICBjYXNlIDkwOlxuICAgICAgICBsZWZ0ID0gLSBkZWZhdWx0U2NhbGVZO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMTgwOlxuICAgICAgICB0b3AgPSB0aGlzLnNjYWxlZFkoYm9va21hcmsueUNvb3JkaW5hdGUsIChkZWZhdWx0SGVpZ2h0IC0gKDI0ICogdGhpcy56b29tKSksIHRoaXNQYWdlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDI3MDpcbiAgICAgICAgbGVmdCA9IGRlZmF1bHRTY2FsZVk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdG9wID0gZGVmYXVsdFNjYWxlWTtcbiAgICB9XG5cbiAgICB0aGlzLmdvVG9EZXN0aW5hdGlvbi5lbWl0KFtcbiAgICAgIGJvb2ttYXJrLnBhZ2VOdW1iZXIsXG4gICAgICB7ICduYW1lJzogJ1hZWicgfSxcbiAgICAgIGxlZnQsXG4gICAgICB0b3BcbiAgICBdKTtcbiAgfVxuXG4gIGdldCBjdXN0b21Tb3J0KCkge1xuICAgIHJldHVybiB0aGlzLl9jdXN0b21Tb3J0O1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uU29ydCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcG9zaXRpb25Tb3J0O1xuICB9XG5cbiAgc29ydChtb2RlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNvcnRNb2RlID0gbW9kZTtcbiAgICB0aGlzLnNvcnRCb29rbWFya3MoKTtcbiAgfVxuXG4gIHByaXZhdGUgc29ydEJvb2ttYXJrcygpIHtcbiAgICBzd2l0Y2ggKHRoaXMuc29ydE1vZGUpIHtcbiAgICAgIGNhc2UgdGhpcy5jdXN0b21Tb3J0OiB7XG4gICAgICAgICB0aGlzLmN1c3RvbVNvcnRCb29rbWFya3MoKTtcbiAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSB0aGlzLnBvc2l0aW9uU29ydDoge1xuICAgICAgICB0aGlzLnBvc2l0aW9uU29ydEJvb2ttYXJrcygpO1xuICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgICB0aGlzLmN1c3RvbVNvcnRCb29rbWFya3MoKTtcbiAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwb3NpdGlvblNvcnRCb29rbWFya3MoKSB7XG4gICAgdGhpcy5ib29rbWFya05vZGVzLnNvcnQoKGEsIGIpID0+IGEucGFnZU51bWJlciA9PT0gYi5wYWdlTnVtYmVyID8gYS55Q29vcmRpbmF0ZSAtIGIueUNvb3JkaW5hdGUgOiBhLnBhZ2VOdW1iZXIgLSBiLnBhZ2VOdW1iZXIpO1xuICAgIHRoaXMudHJlZS50cmVlTW9kZWwudXBkYXRlKCk7XG4gICAgdGhpcy5zZXREcmFnTkRyb3AoZmFsc2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBjdXN0b21Tb3J0Qm9va21hcmtzKCkge1xuICAgIHRoaXMuYm9va21hcmtOb2Rlcy5zb3J0KChhLCBiKSA9PiBhLmluZGV4IC0gYi5pbmRleCk7XG4gICAgdGhpcy50cmVlLnRyZWVNb2RlbC51cGRhdGUoKTtcbiAgICB0aGlzLnNldERyYWdORHJvcCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RHJhZ05Ecm9wKGVuYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLm9wdGlvbnMgPSB7XG4gICAgICBhbGxvd0RyYWc6IGVuYWJsZWQsXG4gICAgICBhbGxvd0Ryb3A6IGVuYWJsZWRcbiAgICB9O1xuICB9XG5cblxuICBwcml2YXRlIGdldFNpYmxpbmcobm9kZSwgaW5kZXgpIHtcbiAgICByZXR1cm4gbm9kZS5wYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID4gaW5kZXggPyBub2RlLnBhcmVudC5jaGlsZHJlbltpbmRleF0gOiB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIHNjYWxlZFkoeUNvb3JkaW5hdGU6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIHBhZ2U6IERvY3VtZW50UGFnZXMpOiBudW1iZXIge1xuICAgIGNvbnN0IHZpZXdwb3J0U2NhbGUgPSBwYWdlLnZpZXdwb3J0U2NhbGUgLyB0aGlzLnpvb207XG4gICAgcmV0dXJuICgoaGVpZ2h0IC8gdGhpcy56b29tKSAtIHlDb29yZGluYXRlKSAvIHZpZXdwb3J0U2NhbGU7XG4gIH1cbn1cbiIsIjxhICpuZ0lmPVwiYm9va21hcmtOb2Rlcz8ubGVuZ3RoID09PSAwXCIgY2xhc3M9XCJoaWdobGlnaHRlZE91dGxpbmVJdGVtXCI+Tm8gYm9va21hcmtzIGNyZWF0ZWQgeWV0PC9hPlxuPHRyZWUtcm9vdCBbbm9kZXNdPVwiYm9va21hcmtOb2Rlc1wiIGNsYXNzPVwiYm9va21hcmtzLXRyZWVcIiBbb3B0aW9uc109XCJvcHRpb25zXCIgKG1vdmVOb2RlKT1cIm9uQm9va21hcmtNb3ZlKCRldmVudClcIj5cbiAgPG5nLXRlbXBsYXRlICN0cmVlTm9kZVRlbXBsYXRlIGxldC1ub2RlIGxldC1pbmRleD1cImluZGV4XCI+XG4gICAgPGRpdiBjbGFzcz1cIm91dGxpbmVJdGVtXCIgKm5nSWY9XCJub2RlLmRhdGEuaWQgIT09IGVkaXRhYmxlQm9va21hcms7IGVsc2UgaW5wdXRCb29rbWFya1wiPlxuICAgICAgPGEgKGNsaWNrKT1cImdvVG9Cb29rbWFyayhub2RlLmRhdGEpXCI+XG4gICAgICAgIHt7IG5vZGUuZGF0YS5uYW1lIH19XG4gICAgICA8L2E+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYm9va21hcmtfX3JlbmFtZVwiIChjbGljayk9XCJlZGl0Qm9va21hcmsobm9kZS5kYXRhLmlkKVwiPjwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJvb2ttYXJrX19kZWxldGVcIiAoY2xpY2spPVwiZGVsZXRlQm9va21hcmsobm9kZSlcIj48L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8bmctdGVtcGxhdGUgI2lucHV0Qm9va21hcms+XG4gICAgICA8aW5wdXQgI2Jvb2ttYXJrTmFtZSBjbGFzcz1cImJvb2ttYXJrX19pbnB1dFwiIFt2YWx1ZV09XCJub2RlLmRhdGEubmFtZVwiIFttYXhMZW5ndGhdPVwiQk9PS01BUktfQ0hBUl9MSU1JVFwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJvb2ttYXJrX19zYXZlXCIgKGNsaWNrKT1cInVwZGF0ZUJvb2ttYXJrKG5vZGUuZGF0YSwgYm9va21hcmtOYW1lLnZhbHVlKVwiPjwvYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctdGVtcGxhdGU+XG48L3RyZWUtcm9vdD5cbiJdfQ==
|
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9va21hcmtzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvcGRmLXZpZXdlci9zaWRlLWJhci9ib29rbWFya3MvYm9va21hcmtzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvcGRmLXZpZXdlci9zaWRlLWJhci9ib29rbWFya3MvYm9va21hcmtzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBZ0MsTUFBTSxFQUFpQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQUU1QyxPQUFPLEVBQUUsYUFBYSxFQUFZLE1BQU0saUNBQWlDLENBQUM7QUFFMUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRTFILE9BQU8sS0FBSyxrQkFBa0IsTUFBTSxnREFBZ0QsQ0FBQztBQUdyRixPQUFPLEtBQUssWUFBWSxNQUFNLGdEQUFnRCxDQUFDO0FBRS9FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7Ozs7O0FBTXhCLE1BQU0sT0FBTyxrQkFBa0I7SUEwQjdCLFlBQW9CLEtBQStEO1FBQS9ELFVBQUssR0FBTCxLQUFLLENBQTBEO1FBckJ6RSxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7UUFFdEQsZUFBVSxHQUF3QyxFQUFF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QUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3JELE9BQU8sQ0FBQyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsV0FBVyxDQUFDLEdBQUcsYUFBYSxDQUFDO0lBQzlELENBQUM7O21JQXBNVSxrQkFBa0I7dUhBQWxCLGtCQUFrQix1TkFrQmxCLGFBQWEscUVDdEMxQixvOUJBZ0JBOzRGRElhLGtCQUFrQjtrQkFKOUIsU0FBUzsrQkFDRSxjQUFjOzRGQUtmLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxlQUFlO3NCQUF4QixNQUFNO2dCQWNQLElBQUk7c0JBREgsU0FBUzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVHJlZUNvbXBvbmVudCwgVHJlZU5vZGUgfSBmcm9tICdAY2lyY2xvbi9hbmd1bGFyLXRyZWUtY29tcG9uZW50JztcblxuaW1wb3J0IHsgQ3JlYXRlQm9va21hcmssIERlbGV0ZUJvb2ttYXJrLCBNb3ZlQm9va21hcmssIFVwZGF0ZUJvb2ttYXJrIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvYWN0aW9ucy9ib29rbWFyay5hY3Rpb25zJztcbmltcG9ydCB7IEJvb2ttYXJrIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvbW9kZWxzL2Jvb2ttYXJrcy5pbnRlcmZhY2UnO1xuaW1wb3J0ICogYXMgYm9va21hcmtzU2VsZWN0b3JzIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL3NlbGVjdG9ycy9ib29rbWFyay5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgQW5ub3RhdGlvblNldFN0YXRlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvcmVkdWNlcnMvYW5ub3RhdGlvbnMucmVkdWNlcic7XG5pbXBvcnQgeyBEb2N1bWVudFBhZ2VzIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvcmVkdWNlcnMvZG9jdW1lbnQucmVkdWNlcic7XG5pbXBvcnQgKiBhcyBmcm9tRG9jdW1lbnQgZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvc2VsZWN0b3JzL2RvY3VtZW50LnNlbGVjdG9ycyc7XG5pbXBvcnQgKiBhcyBmcm9tQm9va21hcmtzIGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL2Jvb2ttYXJrcy5yZWR1Y2VyJztcbmltcG9ydCB7IGdldEJvb2ttYXJrQ2hpbGRyZW4gfSBmcm9tICcuLi8uLi8uLi8uLi9zdG9yZS9ib29rbWFya3Mtc3RvcmUtdXRpbHMnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB1dWlkIGZyb20gJ3V1aWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1ib29rbWFya3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vYm9va21hcmtzLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBCb29rbWFya3NDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKSBib29rbWFya05vZGVzOiBCb29rbWFya1tdO1xuICBASW5wdXQoKSB6b29tOiBudW1iZXI7XG4gIEBJbnB1dCgpIHJvdGF0ZTogbnVtYmVyO1xuICBAT3V0cHV0KCkgZ29Ub0Rlc3RpbmF0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcblxuICBwYWdlTG9va3VwOiB7IFtwYWdlSWQ6IG51bWJlcl06IERvY3VtZW50UGFnZXMgfSA9IHt9O1xuICBlZGl0YWJsZUJvb2ttYXJrOiBzdHJpbmc7XG4gIEJPT0tNQVJLX0NIQVJfTElNSVQgPSAzMDtcblxuICBvcHRpb25zID0ge1xuICAgIGFsbG93RHJhZzogdHJ1ZSxcbiAgICBhbGxvd0Ryb3A6IHRydWVcbiAgfTtcblxuICAkc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgQFZpZXdDaGlsZChUcmVlQ29tcG9uZW50KVxuICB0cmVlOiBUcmVlQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgc29ydE1vZGU6IHN0cmluZztcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jdXN0b21Tb3J0ID0gJ0NVU1RPTSc7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3Bvc2l0aW9uU29ydCA9ICdQT1NJVElPTic7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbUJvb2ttYXJrcy5Cb29rbWFya3NTdGF0ZSB8IEFubm90YXRpb25TZXRTdGF0ZT4pIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc29ydE1vZGUgPSB0aGlzLmN1c3RvbVNvcnQ7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChib29rbWFya3NTZWxlY3RvcnMuZ2V0RWRpdGFibGVCb29rbWFyaykpXG4gICAgICAuc3Vic2NyaWJlKGVkaXRhYmxlSWQgPT4gdGhpcy5lZGl0YWJsZUJvb2ttYXJrID0gZWRpdGFibGVJZCk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnN0b3JlLnNlbGVjdChmcm9tRG9jdW1lbnQuZ2V0UGFnZXMpXG4gICAgICAuc3Vic2NyaWJlKHBhZ2VzID0+IHtcblxuICAgICAgICBPYmplY3Qua2V5cyhwYWdlcykubWFwKGtleSA9PiB7XG4gICAgICAgICAgdGhpcy5wYWdlTG9va3VwW2tleV0gPSBwYWdlc1trZXldO1xuICAgICAgICB9KTtcblxuICAgICAgfSkpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLmJvb2ttYXJrTm9kZXMgJiYgdGhpcy5zb3J0TW9kZSAhPT0gdGhpcy5jdXN0b21Tb3J0KSB7XG4gICAgICB0aGlzLnNvcnRCb29rbWFya3MoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGVkaXRCb29rbWFyayhpZCkge1xuICAgIHRoaXMuZWRpdGFibGVCb29rbWFyayA9IGlkO1xuICB9XG5cbiAgb25BZGRCb29rbWFya0NsaWNrKCkge1xuICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QoYm9va21hcmtzU2VsZWN0b3JzLmdldEJvb2ttYXJrSW5mbyksIHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChib29rbWFya0luZm8pID0+IHtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgQ3JlYXRlQm9va21hcmsoe1xuICAgICAgICAgIC4uLmJvb2ttYXJrSW5mbywgbmFtZTogJycsIGlkOiB1dWlkKClcbiAgICAgICAgfSBhcyBhbnkpKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgb25Cb29rbWFya01vdmUoeyBub2RlLCBmcm9tLCB0byB9OiBhbnkpIHtcbiAgICBsZXQgbW92ZWRCb29rbWFya3MgPSBbe1xuICAgICAgLi4ubm9kZSxcbiAgICAgIHByZXZpb3VzOiB0by5pbmRleCA+IDAgPyB0by5wYXJlbnQuY2hpbGRyZW5bdG8uaW5kZXggLSAxXS5pZCA6IHVuZGVmaW5lZCxcbiAgICAgIHBhcmVudDogdG8ucGFyZW50LmRvY3VtZW50SWQgPyB0by5wYXJlbnQuaWQgOiB1bmRlZmluZWRcbiAgICB9XTtcbiAgICBsZXQgZnJvbU5leHQgPSB0aGlzLmdldFNpYmxpbmcoZnJvbSwgZnJvbS5pbmRleCk7XG4gICAgZnJvbU5leHQgPSBmcm9tTmV4dCAmJiBmcm9tTmV4dC5pZCA9PT0gbm9kZS5wcmV2aW91cyA/IHRoaXMuZ2V0U2libGluZyhmcm9tLCBmcm9tLmluZGV4ICsgMSkgOiBmcm9tTmV4dDtcbiAgICBpZiAoZnJvbU5leHQpIHtcbiAgICAgIG1vdmVkQm9va21hcmtzID0gWy4uLm1vdmVkQm9va21hcmtzLCB7IC4uLmZyb21OZXh0LCBwcmV2aW91czogbm9kZS5wcmV2aW91cyB9XTtcbiAgICB9XG4gICAgY29uc3QgdG9OZXh0ID0gdGhpcy5nZXRTaWJsaW5nKHRvLCB0by5pbmRleCArIDEpO1xuICAgIGlmICh0b05leHQpIHtcbiAgICAgIG1vdmVkQm9va21hcmtzID0gWy4uLm1vdmVkQm9va21hcmtzLCB7IC4uLnRvTmV4dCwgcHJldmlvdXM6IG5vZGUuaWQgfV07XG4gICAgfVxuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IE1vdmVCb29rbWFyayhtb3ZlZEJvb2ttYXJrcykpO1xuICB9XG5cbiAgZGVsZXRlQm9va21hcmsobm9kZTogVHJlZU5vZGUpIHtcbiAgICB0aGlzLmN1c3RvbVNvcnRCb29rbWFya3MoKTtcbiAgICBsZXQgbmV4dDogQm9va21hcms7XG4gICAgbm9kZSA9IHRoaXMudHJlZS50cmVlTW9kZWwuZ2V0Tm9kZUJ5SWQobm9kZS5pZCk7XG4gICAgaWYgKCFub2RlLnBhcmVudCkge1xuICAgICAgbm9kZS5wYXJlbnQgPSB0aGlzLnRyZWUudHJlZU1vZGVsLnZpcnR1YWxSb290O1xuICAgIH1cbiAgICBjb25zdCBzaWJsaW5ncyA9IG5vZGUucGFyZW50LmNoaWxkcmVuO1xuICAgIGlmIChzaWJsaW5ncy5sZW5ndGggPiBub2RlLmluZGV4ICsgMSkge1xuICAgICAgbmV4dCA9IHNpYmxpbmdzW25vZGUuaW5kZXggKyAxXS5kYXRhO1xuICAgICAgbmV4dC5wcmV2aW91cyA9IG5vZGUuZGF0YS5wcmV2aW91cztcbiAgICB9XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgRGVsZXRlQm9va21hcmsoe1xuICAgICAgZGVsZXRlZDogW25vZGUuZGF0YS5pZCwgLi4uZ2V0Qm9va21hcmtDaGlsZHJlbihub2RlLmRhdGEuY2hpbGRyZW4pXSwgdXBkYXRlZDogbmV4dFxuICAgIH0pKTtcbiAgfVxuXG4gIHVwZGF0ZUJvb2ttYXJrKGJvb2ttYXJrOiBCb29rbWFyaywgbmFtZSkge1xuICAgIGNvbnN0IGVkaXRlZEJvb2ttYXJrID0ge1xuICAgICAgLi4uYm9va21hcmssXG4gICAgICBuYW1lXG4gICAgfTtcbiAgICBpZiAobmFtZSkge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgVXBkYXRlQm9va21hcmsoZWRpdGVkQm9va21hcmspKTtcbiAgICAgIHRoaXMuZWRpdGFibGVCb29rbWFyayA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICBnb1RvQm9va21hcmsoYm9va21hcms6IEJvb2ttYXJrKSB7XG4gICAgY29uc3QgdGhpc1BhZ2UgPSB0aGlzLnBhZ2VMb29rdXBbYm9va21hcmsucGFnZU51bWJlciArIDFdO1xuICAgIGNvbnN0IGRlZmF1bHRIZWlnaHQgPSB0aGlzUGFnZS5zdHlsZXMuaGVpZ2h0O1xuICAgIGNvbnN0IGRlZmF1bHRTY2FsZVkgPSB0aGlzLnNjYWxlZFkoYm9va21hcmsueUNvb3JkaW5hdGUsIGRlZmF1bHRIZWlnaHQsIHRoaXNQYWdlKTtcblxuICAgIGxldCB0b3AgPSAwLCBsZWZ0ID0gMDtcbiAgICBzd2l0Y2ggKHRoaXMucm90YXRlKSB7XG4gICAgICBjYXNlIDkwOlxuICAgICAgICBsZWZ0ID0gLSBkZWZhdWx0U2NhbGVZO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMTgwOlxuICAgICAgICB0b3AgPSB0aGlzLnNjYWxlZFkoYm9va21hcmsueUNvb3JkaW5hdGUsIChkZWZhdWx0SGVpZ2h0IC0gKDI0ICogdGhpcy56b29tKSksIHRoaXNQYWdlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIDI3MDpcbiAgICAgICAgbGVmdCA9IGRlZmF1bHRTY2FsZVk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdG9wID0gZGVmYXVsdFNjYWxlWTtcbiAgICB9XG5cbiAgICB0aGlzLmdvVG9EZXN0aW5hdGlvbi5lbWl0KFtcbiAgICAgIGJvb2ttYXJrLnBhZ2VOdW1iZXIsXG4gICAgICB7ICduYW1lJzogJ1hZWicgfSxcbiAgICAgIGxlZnQsXG4gICAgICB0b3BcbiAgICBdKTtcbiAgfVxuXG4gIGdldCBjdXN0b21Tb3J0KCkge1xuICAgIHJldHVybiB0aGlzLl9jdXN0b21Tb3J0O1xuICB9XG5cbiAgZ2V0IHBvc2l0aW9uU29ydCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcG9zaXRpb25Tb3J0O1xuICB9XG5cbiAgc29ydChtb2RlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNvcnRNb2RlID0gbW9kZTtcbiAgICB0aGlzLnNvcnRCb29rbWFya3MoKTtcbiAgfVxuXG4gIHByaXZhdGUgc29ydEJvb2ttYXJrcygpIHtcbiAgICBzd2l0Y2ggKHRoaXMuc29ydE1vZGUpIHtcbiAgICAgIGNhc2UgdGhpcy5jdXN0b21Tb3J0OiB7XG4gICAgICAgICB0aGlzLmN1c3RvbVNvcnRCb29rbWFya3MoKTtcbiAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSB0aGlzLnBvc2l0aW9uU29ydDoge1xuICAgICAgICB0aGlzLnBvc2l0aW9uU29ydEJvb2ttYXJrcygpO1xuICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgICB0aGlzLmN1c3RvbVNvcnRCb29rbWFya3MoKTtcbiAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwb3NpdGlvblNvcnRCb29rbWFya3MoKSB7XG4gICAgdGhpcy5ib29rbWFya05vZGVzLnNvcnQoKGEsIGIpID0+IGEucGFnZU51bWJlciA9PT0gYi5wYWdlTnVtYmVyID8gYS55Q29vcmRpbmF0ZSAtIGIueUNvb3JkaW5hdGUgOiBhLnBhZ2VOdW1iZXIgLSBiLnBhZ2VOdW1iZXIpO1xuICAgIHRoaXMudHJlZS50cmVlTW9kZWwudXBkYXRlKCk7XG4gICAgdGhpcy5zZXREcmFnTkRyb3AoZmFsc2UpO1xuICB9XG5cbiAgcHJpdmF0ZSBjdXN0b21Tb3J0Qm9va21hcmtzKCkge1xuICAgIHRoaXMuYm9va21hcmtOb2Rlcy5zb3J0KChhLCBiKSA9PiBhLmluZGV4IC0gYi5pbmRleCk7XG4gICAgdGhpcy50cmVlLnRyZWVNb2RlbC51cGRhdGUoKTtcbiAgICB0aGlzLnNldERyYWdORHJvcCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RHJhZ05Ecm9wKGVuYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLm9wdGlvbnMgPSB7XG4gICAgICBhbGxvd0RyYWc6IGVuYWJsZWQsXG4gICAgICBhbGxvd0Ryb3A6IGVuYWJsZWRcbiAgICB9O1xuICB9XG5cblxuICBwcml2YXRlIGdldFNpYmxpbmcobm9kZSwgaW5kZXgpIHtcbiAgICByZXR1cm4gbm9kZS5wYXJlbnQuY2hpbGRyZW4ubGVuZ3RoID4gaW5kZXggPyBub2RlLnBhcmVudC5jaGlsZHJlbltpbmRleF0gOiB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIHNjYWxlZFkoeUNvb3JkaW5hdGU6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIsIHBhZ2U6IERvY3VtZW50UGFnZXMpOiBudW1iZXIge1xuICAgIGNvbnN0IHZpZXdwb3J0U2NhbGUgPSBwYWdlLnZpZXdwb3J0U2NhbGUgLyB0aGlzLnpvb207XG4gICAgcmV0dXJuICgoaGVpZ2h0IC8gdGhpcy56b29tKSAtIHlDb29yZGluYXRlKSAvIHZpZXdwb3J0U2NhbGU7XG4gIH1cbn1cbiIsIjxhICpuZ0lmPVwiYm9va21hcmtOb2Rlcz8ubGVuZ3RoID09PSAwXCIgY2xhc3M9XCJoaWdobGlnaHRlZE91dGxpbmVJdGVtXCI+Tm8gYm9va21hcmtzIGNyZWF0ZWQgeWV0PC9hPlxuPHRyZWUtcm9vdCBbbm9kZXNdPVwiYm9va21hcmtOb2Rlc1wiIGNsYXNzPVwiYm9va21hcmtzLXRyZWVcIiBbb3B0aW9uc109XCJvcHRpb25zXCIgKG1vdmVOb2RlKT1cIm9uQm9va21hcmtNb3ZlKCRldmVudClcIj5cbiAgPG5nLXRlbXBsYXRlICN0cmVlTm9kZVRlbXBsYXRlIGxldC1ub2RlIGxldC1pbmRleD1cImluZGV4XCI+XG4gICAgPGRpdiBjbGFzcz1cIm91dGxpbmVJdGVtXCIgKm5nSWY9XCJub2RlLmRhdGEuaWQgIT09IGVkaXRhYmxlQm9va21hcms7IGVsc2UgaW5wdXRCb29rbWFya1wiPlxuICAgICAgPGEgKGNsaWNrKT1cImdvVG9Cb29rbWFyayhub2RlLmRhdGEpXCI+XG4gICAgICAgIHt7IG5vZGUuZGF0YS5uYW1lIH19XG4gICAgICA8L2E+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYm9va21hcmtfX3JlbmFtZVwiIChjbGljayk9XCJlZGl0Qm9va21hcmsobm9kZS5kYXRhLmlkKVwiPjwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJvb2ttYXJrX19kZWxldGVcIiAoY2xpY2spPVwiZGVsZXRlQm9va21hcmsobm9kZSlcIj48L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8bmctdGVtcGxhdGUgI2lucHV0Qm9va21hcms+XG4gICAgICA8aW5wdXQgI2Jvb2ttYXJrTmFtZSBjbGFzcz1cImJvb2ttYXJrX19pbnB1dFwiIFt2YWx1ZV09XCJub2RlLmRhdGEubmFtZVwiIFttYXhMZW5ndGhdPVwiQk9PS01BUktfQ0hBUl9MSU1JVFwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJvb2ttYXJrX19zYXZlXCIgKGNsaWNrKT1cInVwZGF0ZUJvb2ttYXJrKG5vZGUuZGF0YSwgYm9va21hcmtOYW1lLnZhbHVlKVwiPjwvYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctdGVtcGxhdGU+XG48L3RyZWUtcm9vdD5cbiJdfQ==
|
|
@@ -24,15 +24,15 @@ export class OutlineItemComponent {
|
|
|
24
24
|
current.pageNumber <= this.currentPageNumber && (next.pageNumber > this.currentPageNumber);
|
|
25
25
|
}
|
|
26
26
|
findEndPage(next) {
|
|
27
|
-
return next === undefined ?
|
|
27
|
+
return next === undefined ? this.endPage : next.pageNumber;
|
|
28
28
|
}
|
|
29
29
|
showHighlightOutlineCss() {
|
|
30
30
|
return this.isCurrentSection ? 'highlightedOutlineItem' : 'outlineItem';
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
-
/** @nocollapse */ OutlineItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
34
|
-
/** @nocollapse */ OutlineItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
33
|
+
/** @nocollapse */ OutlineItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OutlineItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
/** @nocollapse */ OutlineItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: OutlineItemComponent, selector: "mv-outline-item", inputs: { outline: "outline", currentPageNumber: "currentPageNumber", isCurrentSection: "isCurrentSection", endPage: "endPage" }, outputs: { navigationEvent: "navigationEvent" }, ngImport: i0, template: "<div class=\"outlineItem\">\n <div *ngIf=\"outline.items.length > 0\"\n [ngClass]=\"{ 'outlineItemToggler': true, 'outlineItemsHidden': !showOutlineItems }\"\n (click)=\"toggleOutline()\"\n (keyup.enter)=\"toggleOutline()\" tabindex=\"0\"></div>\n <a (click)=\"goToDestination(outline?.dest)\"\n (keyup.enter)=\"goToDestination(outline?.dest)\"\n [style.font-weight]=\"outline.bold ? 'bold' : ''\"\n [style.font-style]=\"outline.italic ? 'italic' : ''\"\n [ngClass]=\"showHighlightOutlineCss()\"\n tabindex=\"0\">\n <div style=\"text-align:left;\" [ngClass]=\"showHighlightOutlineCss()\">\n {{ outline.title }}\n <span style=\"float:right;\">\n {{ outline.pageNumber }}\n </span>\n </div>\n </a>\n \n <div *ngIf=\"outline.items.length > 0\" class=\"outlineItems\">\n <div *ngFor=\"let outlineItem of outline.items; index as i\">\n <mv-outline-item\n [outline]=\"outlineItem\" \n [currentPageNumber]= \"currentPageNumber\" \n [isCurrentSection]= \"isViewedItem(outlineItem, outline.items[i+1])\"\n [endPage]=\"findEndPage(outline.items[i+1])\"\n (navigationEvent)=\"goToDestination($event)\">\n </mv-outline-item>\n </div>\n </div>\n</div>\n\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: OutlineItemComponent, selector: "mv-outline-item", inputs: ["outline", "currentPageNumber", "isCurrentSection", "endPage"], outputs: ["navigationEvent"] }] });
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: OutlineItemComponent, decorators: [{
|
|
36
36
|
type: Component,
|
|
37
37
|
args: [{ selector: 'mv-outline-item', template: "<div class=\"outlineItem\">\n <div *ngIf=\"outline.items.length > 0\"\n [ngClass]=\"{ 'outlineItemToggler': true, 'outlineItemsHidden': !showOutlineItems }\"\n (click)=\"toggleOutline()\"\n (keyup.enter)=\"toggleOutline()\" tabindex=\"0\"></div>\n <a (click)=\"goToDestination(outline?.dest)\"\n (keyup.enter)=\"goToDestination(outline?.dest)\"\n [style.font-weight]=\"outline.bold ? 'bold' : ''\"\n [style.font-style]=\"outline.italic ? 'italic' : ''\"\n [ngClass]=\"showHighlightOutlineCss()\"\n tabindex=\"0\">\n <div style=\"text-align:left;\" [ngClass]=\"showHighlightOutlineCss()\">\n {{ outline.title }}\n <span style=\"float:right;\">\n {{ outline.pageNumber }}\n </span>\n </div>\n </a>\n \n <div *ngIf=\"outline.items.length > 0\" class=\"outlineItems\">\n <div *ngFor=\"let outlineItem of outline.items; index as i\">\n <mv-outline-item\n [outline]=\"outlineItem\" \n [currentPageNumber]= \"currentPageNumber\" \n [isCurrentSection]= \"isViewedItem(outlineItem, outline.items[i+1])\"\n [endPage]=\"findEndPage(outline.items[i+1])\"\n (navigationEvent)=\"goToDestination($event)\">\n </mv-outline-item>\n </div>\n </div>\n</div>\n\n" }]
|
|
38
38
|
}], propDecorators: { outline: [{
|
|
@@ -46,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
46
46
|
}], navigationEvent: [{
|
|
47
47
|
type: Output
|
|
48
48
|
}] } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0bGluZS1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvcGRmLXZpZXdlci9zaWRlLWJhci9vdXRsaW5lLWl0ZW0vb3V0bGluZS1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvcGRmLXZpZXdlci9zaWRlLWJhci9vdXRsaW5lLWl0ZW0vb3V0bGluZS1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU8vRSxNQUFNLE9BQU8sb0JBQW9CO0lBSmpDO1FBVVksb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBaUNoRDtJQTdCQyxRQUFRO1FBQ04sSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsZUFBZSxDQUFDLFdBQWdCO1FBQzlCLElBQUksV0FBVyxFQUFFO1lBQ2YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqRCxDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWdCLEVBQUUsSUFBYTtRQUMxQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEtBQUssSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ2pELE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxPQUFPLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGlCQUFpQixJQUFJLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDakgsT0FBTyxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQy9GLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBYTtRQUN2QixPQUFPLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDN0QsQ0FBQztJQUVELHVCQUF1QjtRQUNyQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztJQUMxRSxDQUFDOztxSUF0Q1Usb0JBQW9CO3lIQUFwQixvQkFBb0IsME9DUGpDLG12Q0FnQ0EsMldEekJhLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQUpoQyxTQUFTOytCQUNFLGlCQUFpQjs4QkFLbEIsT0FBTztzQkFBZixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPdXRsaW5lIH0gZnJvbSAnLi9vdXRsaW5lLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXYtb3V0bGluZS1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL291dGxpbmUtaXRlbS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgT3V0bGluZUl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpIG91dGxpbmU6IE91dGxpbmU7XG4gIEBJbnB1dCgpIGN1cnJlbnRQYWdlTnVtYmVyOiBudW1iZXI7XG4gIEBJbnB1dCgpIGlzQ3VycmVudFNlY3Rpb246IGJvb2xlYW47XG4gIEBJbnB1dCgpIGVuZFBhZ2U6IG51bWJlcjtcbiAgQE91dHB1dCgpIG5hdmlnYXRpb25FdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBzaG93T3V0bGluZUl0ZW1zOiBib29sZWFuO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2hvd091dGxpbmVJdGVtcyA9IHRydWU7XG4gIH1cblxuICBnb1RvRGVzdGluYXRpb24oZGVzdGluYXRpb246IGFueSkge1xuICAgIGlmIChkZXN0aW5hdGlvbikge1xuICAgICAgdGhpcy5uYXZpZ2F0aW9uRXZlbnQuZW1pdChkZXN0aW5hdGlvbik7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlT3V0bGluZSgpIHtcbiAgICB0aGlzLnNob3dPdXRsaW5lSXRlbXMgPSAhdGhpcy5zaG93T3V0bGluZUl0ZW1zO1xuICB9XG5cbiAgaXNWaWV3ZWRJdGVtKGN1cnJlbnQ6IE91dGxpbmUsIG5leHQ6IE91dGxpbmUpOiBib29sZWFuIHtcbiAgICBpZiAoY3VycmVudC5wYWdlTnVtYmVyID09PSB0aGlzLmN1cnJlbnRQYWdlTnVtYmVyKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIG5leHQgPT09IHVuZGVmaW5lZCA/IGN1cnJlbnQucGFnZU51bWJlciA8PSB0aGlzLmN1cnJlbnRQYWdlTnVtYmVyICYmIHRoaXMuZW5kUGFnZSA+IHRoaXMuY3VycmVudFBhZ2VOdW1iZXIgOlxuICAgICAgY3VycmVudC5wYWdlTnVtYmVyIDw9IHRoaXMuY3VycmVudFBhZ2VOdW1iZXIgJiYgKG5leHQucGFnZU51bWJlciA+IHRoaXMuY3VycmVudFBhZ2VOdW1iZXIpO1xuICB9XG5cbiAgZmluZEVuZFBhZ2UobmV4dDogT3V0bGluZSk6IG51bWJlciB7XG4gICAgcmV0dXJuIG5leHQgPT09IHVuZGVmaW5lZCA/IHRoaXMuZW5kUGFnZSA6IG5leHQucGFnZU51bWJlcjtcbiAgfVxuXG4gIHNob3dIaWdobGlnaHRPdXRsaW5lQ3NzKCkge1xuICAgIHJldHVybiB0aGlzLmlzQ3VycmVudFNlY3Rpb24gPyAnaGlnaGxpZ2h0ZWRPdXRsaW5lSXRlbScgOiAnb3V0bGluZUl0ZW0nO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwib3V0bGluZUl0ZW1cIj5cbiAgPGRpdiAqbmdJZj1cIm91dGxpbmUuaXRlbXMubGVuZ3RoID4gMFwiXG4gICAgICAgW25nQ2xhc3NdPVwieyAnb3V0bGluZUl0ZW1Ub2dnbGVyJzogdHJ1ZSwgJ291dGxpbmVJdGVtc0hpZGRlbic6ICFzaG93T3V0bGluZUl0ZW1zIH1cIlxuICAgICAgIChjbGljayk9XCJ0b2dnbGVPdXRsaW5lKClcIlxuICAgICAgIChrZXl1cC5lbnRlcik9XCJ0b2dnbGVPdXRsaW5lKClcIiB0YWJpbmRleD1cIjBcIj48L2Rpdj5cbiAgPGEgKGNsaWNrKT1cImdvVG9EZXN0aW5hdGlvbihvdXRsaW5lPy5kZXN0KVwiXG4gICAgIChrZXl1cC5lbnRlcik9XCJnb1RvRGVzdGluYXRpb24ob3V0bGluZT8uZGVzdClcIlxuICAgICBbc3R5bGUuZm9udC13ZWlnaHRdPVwib3V0bGluZS5ib2xkID8gJ2JvbGQnIDogJydcIlxuICAgICBbc3R5bGUuZm9udC1zdHlsZV09XCJvdXRsaW5lLml0YWxpYyA/ICdpdGFsaWMnIDogJydcIlxuICAgICBbbmdDbGFzc109XCJzaG93SGlnaGxpZ2h0T3V0bGluZUNzcygpXCJcbiAgICAgdGFiaW5kZXg9XCIwXCI+XG4gICAgPGRpdiBzdHlsZT1cInRleHQtYWxpZ246bGVmdDtcIiBbbmdDbGFzc109XCJzaG93SGlnaGxpZ2h0T3V0bGluZUNzcygpXCI+XG4gICAgICB7eyBvdXRsaW5lLnRpdGxlIH19XG4gICAgICA8c3BhbiBzdHlsZT1cImZsb2F0OnJpZ2h0O1wiPlxuICAgICAgICB7eyBvdXRsaW5lLnBhZ2VOdW1iZXIgfX1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9hPlxuICBcbiAgPGRpdiAqbmdJZj1cIm91dGxpbmUuaXRlbXMubGVuZ3RoID4gMFwiIGNsYXNzPVwib3V0bGluZUl0ZW1zXCI+XG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgb3V0bGluZUl0ZW0gb2Ygb3V0bGluZS5pdGVtczsgaW5kZXggYXMgaVwiPlxuICAgICAgPG12LW91dGxpbmUtaXRlbVxuICAgICAgICBbb3V0bGluZV09XCJvdXRsaW5lSXRlbVwiIFxuICAgICAgICBbY3VycmVudFBhZ2VOdW1iZXJdPSBcImN1cnJlbnRQYWdlTnVtYmVyXCIgXG4gICAgICAgIFtpc0N1cnJlbnRTZWN0aW9uXT0gXCJpc1ZpZXdlZEl0ZW0ob3V0bGluZUl0ZW0sIG91dGxpbmUuaXRlbXNbaSsxXSlcIlxuICAgICAgICBbZW5kUGFnZV09XCJmaW5kRW5kUGFnZShvdXRsaW5lLml0ZW1zW2krMV0pXCJcbiAgICAgICAgKG5hdmlnYXRpb25FdmVudCk9XCJnb1RvRGVzdGluYXRpb24oJGV2ZW50KVwiPlxuICAgICAgPC9tdi1vdXRsaW5lLWl0ZW0+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbiJdfQ==
|
|
@@ -10,6 +10,7 @@ import * as i3 from "../../../toolbar/toolbar-event.service";
|
|
|
10
10
|
import * as i4 from "@angular/common";
|
|
11
11
|
import * as i5 from "./bookmarks/bookmarks.component";
|
|
12
12
|
import * as i6 from "./outline-item/outline-item.component";
|
|
13
|
+
import * as i7 from "rpx-xui-translation";
|
|
13
14
|
export class SideBarComponent {
|
|
14
15
|
constructor(viewerEvents, store, toolbarEvents) {
|
|
15
16
|
this.viewerEvents = viewerEvents;
|
|
@@ -53,11 +54,11 @@ export class SideBarComponent {
|
|
|
53
54
|
return next === undefined ? Number.MAX_SAFE_INTEGER : next.pageNumber;
|
|
54
55
|
}
|
|
55
56
|
}
|
|
56
|
-
/** @nocollapse */ SideBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
57
|
-
/** @nocollapse */ SideBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
57
|
+
/** @nocollapse */ SideBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SideBarComponent, deps: [{ token: i1.ViewerEventService }, { token: i2.Store }, { token: i3.ToolbarEventService }], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
+
/** @nocollapse */ SideBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SideBarComponent, selector: "mv-side-bar", inputs: { annotationsEnabled: "annotationsEnabled", outline: "outline", url: "url", zoom: "zoom", rotate: "rotate", currentPageNumber: "currentPageNumber" }, viewQueries: [{ propertyName: "bookmarks", first: true, predicate: BookmarksComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div id=\"toolbarSidebar\">\n <div\n *ngIf=\"annotationsEnabled && selectedView === 'bookmarks'\"\n class=\"splitToolbarButton toggled\"\n >\n <button\n id=\"sortBookmarkPosition\"\n class=\"splitToolbarButton left bookmark__sort__position\"\n (click)=\"bookmarks.sort(bookmarks.positionSort)\"\n title=\"Order by place in document\"\n ></button>\n <button\n id=\"sortBookmarkCustom\"\n class=\"splitToolbarButton left bookmark__sort__custom\"\n (click)=\"bookmarks.sort(bookmarks.customSort)\"\n title=\"Order manually\"\n ></button>\n </div>\n <div class=\"splitToolbarButtonSeparator\"></div>\n <div\n *ngIf=\"annotationsEnabled && selectedView === 'bookmarks'\"\n class=\"splitToolbarButton right\"\n >\n <button\n id=\"addBookmark\"\n class=\"toolbarButton addBookmark\"\n (click)=\"bookmarks.onAddBookmarkClick()\"\n title=\"Add bookmark\"\n tabindex=\"3\"\n data-l10n-id=\"addBookmark\"\n >\n <span data-l10n-id=\"addBookmark_label\">{{\n \"Add bookmark\" | rpxTranslate\n }}</span>\n </button>\n </div>\n</div>\n<div id=\"sidebarContent\">\n <div id=\"outlineView\" class=\"outlineWithDeepNesting\">\n <div class=\"outlineItem\" *ngIf=\"selectedView === 'outline'\">\n <mv-outline-item\n *ngFor=\"let outlineItem of outline; index as i\"\n [outline]=\"outlineItem\"\n [currentPageNumber]=\"currentPageNumber\"\n [isCurrentSection]=\"isViewedItem(outlineItem, outline[i + 1])\"\n [endPage]=\"findEndPage(outline[i + 1])\"\n (navigationEvent)=\"goToDestination($event)\"\n ></mv-outline-item>\n </div>\n <div\n *ngIf=\"annotationsEnabled && selectedView === 'bookmarks'\"\n id=\"bookmarkContainer\"\n >\n <mv-bookmarks\n [bookmarkNodes]=\"bookmarkNodes$ | async\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n (goToDestination)=\"goToDestination($event)\"\n ></mv-bookmarks>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.BookmarksComponent, selector: "mv-bookmarks", inputs: ["bookmarkNodes", "zoom", "rotate"], outputs: ["goToDestination"] }, { kind: "component", type: i6.OutlineItemComponent, selector: "mv-outline-item", inputs: ["outline", "currentPageNumber", "isCurrentSection", "endPage"], outputs: ["navigationEvent"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.RpxTranslatePipe, name: "rpxTranslate" }] });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SideBarComponent, decorators: [{
|
|
59
60
|
type: Component,
|
|
60
|
-
args: [{ selector: 'mv-side-bar', template: "<div id=\"toolbarSidebar\">\n <div
|
|
61
|
+
args: [{ selector: 'mv-side-bar', template: "<div id=\"toolbarSidebar\">\n <div\n *ngIf=\"annotationsEnabled && selectedView === 'bookmarks'\"\n class=\"splitToolbarButton toggled\"\n >\n <button\n id=\"sortBookmarkPosition\"\n class=\"splitToolbarButton left bookmark__sort__position\"\n (click)=\"bookmarks.sort(bookmarks.positionSort)\"\n title=\"Order by place in document\"\n ></button>\n <button\n id=\"sortBookmarkCustom\"\n class=\"splitToolbarButton left bookmark__sort__custom\"\n (click)=\"bookmarks.sort(bookmarks.customSort)\"\n title=\"Order manually\"\n ></button>\n </div>\n <div class=\"splitToolbarButtonSeparator\"></div>\n <div\n *ngIf=\"annotationsEnabled && selectedView === 'bookmarks'\"\n class=\"splitToolbarButton right\"\n >\n <button\n id=\"addBookmark\"\n class=\"toolbarButton addBookmark\"\n (click)=\"bookmarks.onAddBookmarkClick()\"\n title=\"Add bookmark\"\n tabindex=\"3\"\n data-l10n-id=\"addBookmark\"\n >\n <span data-l10n-id=\"addBookmark_label\">{{\n \"Add bookmark\" | rpxTranslate\n }}</span>\n </button>\n </div>\n</div>\n<div id=\"sidebarContent\">\n <div id=\"outlineView\" class=\"outlineWithDeepNesting\">\n <div class=\"outlineItem\" *ngIf=\"selectedView === 'outline'\">\n <mv-outline-item\n *ngFor=\"let outlineItem of outline; index as i\"\n [outline]=\"outlineItem\"\n [currentPageNumber]=\"currentPageNumber\"\n [isCurrentSection]=\"isViewedItem(outlineItem, outline[i + 1])\"\n [endPage]=\"findEndPage(outline[i + 1])\"\n (navigationEvent)=\"goToDestination($event)\"\n ></mv-outline-item>\n </div>\n <div\n *ngIf=\"annotationsEnabled && selectedView === 'bookmarks'\"\n id=\"bookmarkContainer\"\n >\n <mv-bookmarks\n [bookmarkNodes]=\"bookmarkNodes$ | async\"\n [zoom]=\"zoom\"\n [rotate]=\"rotate\"\n (goToDestination)=\"goToDestination($event)\"\n ></mv-bookmarks>\n </div>\n </div>\n</div>\n" }]
|
|
61
62
|
}], ctorParameters: function () { return [{ type: i1.ViewerEventService }, { type: i2.Store }, { type: i3.ToolbarEventService }]; }, propDecorators: { annotationsEnabled: [{
|
|
62
63
|
type: Input
|
|
63
64
|
}], outline: [{
|
|
@@ -74,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
74
75
|
type: ViewChild,
|
|
75
76
|
args: [BookmarksComponent]
|
|
76
77
|
}] } });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvdmlld2Vycy9wZGYtdmlld2VyL3NpZGUtYmFyL3NpZGUtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvcGRmLXZpZXdlci9zaWRlLWJhci9zaWRlLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBK0MsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3pHLE9BQU8sRUFBRSxNQUFNLEVBQVMsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxLQUFLLGtCQUFrQixNQUFNLDZDQUE2QyxDQUFDO0FBRWxGLE9BQU8sRUFBa0IsYUFBYSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFNeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7Ozs7O0FBTXJFLE1BQU0sT0FBTyxnQkFBZ0I7SUFpQjNCLFlBQW9CLFlBQWdDLEVBQzFDLEtBQTRCLEVBQ25CLGFBQWtDO1FBRmpDLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUMxQyxVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUNuQixrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFQckQsaUJBQVksR0FBRyxTQUFTLENBQUM7UUFHakIsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO0lBS3ZDLENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1FBQ25GLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2FBQ3BGLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQzFGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN2RCxJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDdkQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUFFLENBQUM7SUFFUCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1NBQzFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNqQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1NBQ3hFO0lBQ0gsQ0FBQztJQUVELGVBQWUsQ0FBQyxXQUFrQjtRQUNoQyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsV0FBbUI7UUFDbkMsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7SUFDbEMsQ0FBQztJQUVELFlBQVksQ0FBQyxPQUFnQixFQUFFLElBQWE7UUFDMUMsSUFBSSxPQUFPLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUNqRCxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsT0FBTyxJQUFJLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ3hFLE9BQU8sQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBRUQsV0FBVyxDQUFDLElBQWE7UUFDdkIsT0FBTyxJQUFJLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDeEUsQ0FBQzs7Z0lBOURVLGdCQUFnQjtvSEFBaEIsZ0JBQWdCLDRQQVNoQixrQkFBa0IscUVDM0IvQixzOERBb0NBOzJGRGxCYSxnQkFBZ0I7a0JBSjVCLFNBQVM7K0JBQ0UsYUFBYTsrSkFLZCxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFHTixTQUFTO3NCQURSLFNBQVM7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPdXRsaW5lIH0gZnJvbSAnLi9vdXRsaW5lLWl0ZW0vb3V0bGluZS5tb2RlbCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNlbGVjdCwgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgKiBhcyBib29rbWFya3NTZWxlY3RvcnMgZnJvbSAnLi4vLi4vLi4vc3RvcmUvc2VsZWN0b3JzL2Jvb2ttYXJrLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBCb29rbWFya05vZGUgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9tb2RlbHMvYm9va21hcmtzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDcmVhdGVCb29rbWFyaywgTG9hZEJvb2ttYXJrcyB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2FjdGlvbnMvYm9va21hcmsuYWN0aW9ucyc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgVmlld2VyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdmlld2VyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQm9va21hcmtzU3RhdGUgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9yZWR1Y2Vycy9ib29rbWFya3MucmVkdWNlcic7XG5pbXBvcnQgeyBUb29sYmFyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdG9vbGJhci90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQm9va21hcmtzQ29tcG9uZW50IH0gZnJvbSAnLi9ib29rbWFya3MvYm9va21hcmtzLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LXNpZGUtYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZGUtYmFyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBTaWRlQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KCkgYW5ub3RhdGlvbnNFbmFibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBvdXRsaW5lOiBPdXRsaW5lO1xuICBASW5wdXQoKSB1cmw6IHN0cmluZztcbiAgQElucHV0KCkgem9vbTogbnVtYmVyO1xuICBASW5wdXQoKSByb3RhdGU6IG51bWJlcjtcbiAgQElucHV0KCkgY3VycmVudFBhZ2VOdW1iZXI6IG51bWJlcjtcblxuICBAVmlld0NoaWxkKEJvb2ttYXJrc0NvbXBvbmVudClcbiAgYm9va21hcmtzOiBCb29rbWFya3NDb21wb25lbnQ7XG5cbiAgc2VsZWN0ZWRWaWV3ID0gJ291dGxpbmUnO1xuICBib29rbWFya05vZGVzJDogT2JzZXJ2YWJsZTxCb29rbWFya05vZGVbXT47XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdmlld2VyRXZlbnRzOiBWaWV3ZXJFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8Qm9va21hcmtzU3RhdGU+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZVxuICApIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYm9va21hcmtOb2RlcyQgPSB0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGJvb2ttYXJrc1NlbGVjdG9ycy5nZXRCb29rbWFya05vZGVzKSk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2godGhpcy5zdG9yZS5waXBlKHNlbGVjdChib29rbWFya3NTZWxlY3RvcnMuZ2V0RWRpdGFibGVCb29rbWFyaykpXG4gICAgICAuc3Vic2NyaWJlKGVkaXRhYmxlID0+IHRoaXMuc2VsZWN0ZWRWaWV3ID0gZWRpdGFibGUgPyAnYm9va21hcmtzJyA6IHRoaXMuc2VsZWN0ZWRWaWV3KSk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuc2lkZWJhck91dGxpbmVWaWV3LnN1YnNjcmliZSh0b2dnbGUgPT4ge1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmlldyA9IHRvZ2dsZSA/ICdvdXRsaW5lJyA6ICdib29rbWFya3MnO1xuICAgICAgfSlcbiAgICApOyAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy51cmwgJiYgdGhpcy51cmwpIHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IExvYWRCb29rbWFya3MoKSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xuICAgIH1cbiAgfVxuXG4gIGdvVG9EZXN0aW5hdGlvbihkZXN0aW5hdGlvbjogYW55W10pIHtcbiAgICB0aGlzLnZpZXdlckV2ZW50cy5nb1RvRGVzdGluYXRpb24oZGVzdGluYXRpb24pO1xuICB9XG5cbiAgdG9nZ2xlU2lkZWJhclZpZXcoc2lkZWJhclZpZXc6IHN0cmluZykge1xuICAgIHRoaXMuc2VsZWN0ZWRWaWV3ID0gc2lkZWJhclZpZXc7XG4gIH1cblxuICBpc1ZpZXdlZEl0ZW0oY3VycmVudDogT3V0bGluZSwgbmV4dDogT3V0bGluZSk6IGJvb2xlYW4ge1xuICAgIGlmIChjdXJyZW50LnBhZ2VOdW1iZXIgPT09IHRoaXMuY3VycmVudFBhZ2VOdW1iZXIpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gbmV4dCA9PT0gdW5kZWZpbmVkID8gY3VycmVudC5wYWdlTnVtYmVyIDw9IHRoaXMuY3VycmVudFBhZ2VOdW1iZXIgOlxuICAgICAgY3VycmVudC5wYWdlTnVtYmVyIDw9IHRoaXMuY3VycmVudFBhZ2VOdW1iZXIgJiYgKG5leHQucGFnZU51bWJlciA+IHRoaXMuY3VycmVudFBhZ2VOdW1iZXIpO1xuICB9XG5cbiAgZmluZEVuZFBhZ2UobmV4dDogT3V0bGluZSk6IG51bWJlciB7XG4gICAgcmV0dXJuIG5leHQgPT09IHVuZGVmaW5lZCA/IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSIDogbmV4dC5wYWdlTnVtYmVyO1xuICB9XG59XG4iLCI8ZGl2IGlkPVwidG9vbGJhclNpZGViYXJcIj5cbiAgPGRpdiAqbmdJZj1cImFubm90YXRpb25zRW5hYmxlZCAmJiBzZWxlY3RlZFZpZXcgPT09ICdib29rbWFya3MnXCJcbiAgICAgICAgY2xhc3M9XCJzcGxpdFRvb2xiYXJCdXR0b24gdG9nZ2xlZFwiPlxuICAgICAgICA8YnV0dG9uIGlkPVwic29ydEJvb2ttYXJrUG9zaXRpb25cIiBjbGFzcz1cInNwbGl0VG9vbGJhckJ1dHRvbiBsZWZ0IGJvb2ttYXJrX19zb3J0X19wb3NpdGlvblwiXG4gICAgICAgICAgKGNsaWNrKT1cImJvb2ttYXJrcy5zb3J0KGJvb2ttYXJrcy5wb3NpdGlvblNvcnQpXCIgdGl0bGU9XCJPcmRlciBieSBwbGFjZSBpbiBkb2N1bWVudFwiPjwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIGlkPVwic29ydEJvb2ttYXJrQ3VzdG9tXCIgY2xhc3M9XCJzcGxpdFRvb2xiYXJCdXR0b24gbGVmdCBib29rbWFya19fc29ydF9fY3VzdG9tXCJcbiAgICAgICAgICAoY2xpY2spPVwiYm9va21hcmtzLnNvcnQoYm9va21hcmtzLmN1c3RvbVNvcnQpXCIgdGl0bGU9XCJPcmRlciBtYW51YWxseVwiPjwvYnV0dG9uPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwic3BsaXRUb29sYmFyQnV0dG9uU2VwYXJhdG9yXCI+PC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJhbm5vdGF0aW9uc0VuYWJsZWQgJiYgc2VsZWN0ZWRWaWV3ID09PSAnYm9va21hcmtzJ1wiXG4gICAgICAgY2xhc3M9XCJzcGxpdFRvb2xiYXJCdXR0b24gcmlnaHRcIj5cbiAgICA8YnV0dG9uIGlkPVwiYWRkQm9va21hcmtcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0b29sYmFyQnV0dG9uIGFkZEJvb2ttYXJrXCJcbiAgICAgICAgICAgIChjbGljayk9XCJib29rbWFya3Mub25BZGRCb29rbWFya0NsaWNrKClcIlxuICAgICAgICAgICAgdGl0bGU9XCJBZGQgYm9va21hcmtcIiB0YWJpbmRleD1cIjNcIiBkYXRhLWwxMG4taWQ9XCJhZGRCb29rbWFya1wiPlxuICAgICAgPHNwYW4gZGF0YS1sMTBuLWlkPVwiYWRkQm9va21hcmtfbGFiZWxcIj5BZGQgYm9va21hcms8L3NwYW4+XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2IGlkPVwic2lkZWJhckNvbnRlbnRcIj5cbiAgPGRpdiBpZD1cIm91dGxpbmVWaWV3XCIgY2xhc3M9XCJvdXRsaW5lV2l0aERlZXBOZXN0aW5nXCI+XG4gICAgPGRpdiBjbGFzcz1cIm91dGxpbmVJdGVtXCIgKm5nSWY9XCJzZWxlY3RlZFZpZXcgPT09ICdvdXRsaW5lJ1wiPlxuICAgICAgPG12LW91dGxpbmUtaXRlbSAqbmdGb3I9XCJsZXQgb3V0bGluZUl0ZW0gb2Ygb3V0bGluZTsgaW5kZXggYXMgaVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtvdXRsaW5lXT1cIm91dGxpbmVJdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2N1cnJlbnRQYWdlTnVtYmVyXT1cImN1cnJlbnRQYWdlTnVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2lzQ3VycmVudFNlY3Rpb25dPSBcImlzVmlld2VkSXRlbShvdXRsaW5lSXRlbSwgb3V0bGluZVtpKzFdKVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtlbmRQYWdlXT1cImZpbmRFbmRQYWdlKG91dGxpbmVbaSsxXSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAobmF2aWdhdGlvbkV2ZW50KT1cImdvVG9EZXN0aW5hdGlvbigkZXZlbnQpXCI+PC9tdi1vdXRsaW5lLWl0ZW0+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImFubm90YXRpb25zRW5hYmxlZCAmJiBzZWxlY3RlZFZpZXcgPT09ICdib29rbWFya3MnXCJcbiAgICAgICAgIGlkPVwiYm9va21hcmtDb250YWluZXJcIj5cbiAgICAgIDxtdi1ib29rbWFya3MgW2Jvb2ttYXJrTm9kZXNdPVwiYm9va21hcmtOb2RlcyQgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgIFt6b29tXT1cInpvb21cIiBbcm90YXRlXT1cInJvdGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIChnb1RvRGVzdGluYXRpb24pPVwiZ29Ub0Rlc3RpbmF0aW9uKCRldmVudClcIj48L212LWJvb2ttYXJrcz5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvdmlld2Vycy9wZGYtdmlld2VyL3NpZGUtYmFyL3NpZGUtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvcGRmLXZpZXdlci9zaWRlLWJhci9zaWRlLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBK0MsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3pHLE9BQU8sRUFBRSxNQUFNLEVBQVMsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxLQUFLLGtCQUFrQixNQUFNLDZDQUE2QyxDQUFDO0FBRWxGLE9BQU8sRUFBa0IsYUFBYSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFNeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7Ozs7OztBQU1yRSxNQUFNLE9BQU8sZ0JBQWdCO0lBaUIzQixZQUFvQixZQUFnQyxFQUMxQyxLQUE0QixFQUNuQixhQUFrQztRQUZqQyxpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUFDMUMsVUFBSyxHQUFMLEtBQUssQ0FBdUI7UUFDbkIsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBUHJELGlCQUFZLEdBQUcsU0FBUyxDQUFDO1FBR2pCLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztJQUt2QyxDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztRQUNuRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsQ0FBQzthQUNwRixTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUMxRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdkQsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUNILENBQUM7SUFBRSxDQUFDO0lBRVAsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksYUFBYSxFQUFFLENBQUMsQ0FBQztTQUMxQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDakMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztTQUN4RTtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsV0FBa0I7UUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELGlCQUFpQixDQUFDLFdBQW1CO1FBQ25DLElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxZQUFZLENBQUMsT0FBZ0IsRUFBRSxJQUFhO1FBQzFDLElBQUksT0FBTyxDQUFDLFVBQVUsS0FBSyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDakQsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE9BQU8sSUFBSSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUN4RSxPQUFPLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDL0YsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFhO1FBQ3ZCLE9BQU8sSUFBSSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3hFLENBQUM7O2lJQTlEVSxnQkFBZ0I7cUhBQWhCLGdCQUFnQiw0UEFTaEIsa0JBQWtCLHFFQzNCL0Isa2dFQThEQTs0RkQ1Q2EsZ0JBQWdCO2tCQUo1QixTQUFTOytCQUNFLGFBQWE7K0pBS2Qsa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBR04sU0FBUztzQkFEUixTQUFTO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3V0bGluZSB9IGZyb20gJy4vb3V0bGluZS1pdGVtL291dGxpbmUubW9kZWwnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0ICogYXMgYm9va21hcmtzU2VsZWN0b3JzIGZyb20gJy4uLy4uLy4uL3N0b3JlL3NlbGVjdG9ycy9ib29rbWFyay5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgQm9va21hcmtOb2RlIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvbW9kZWxzL2Jvb2ttYXJrcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ3JlYXRlQm9va21hcmssIExvYWRCb29rbWFya3MgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9hY3Rpb25zL2Jvb2ttYXJrLmFjdGlvbnMnO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IFZpZXdlckV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3ZpZXdlci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEJvb2ttYXJrc1N0YXRlIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvcmVkdWNlcnMvYm9va21hcmtzLnJlZHVjZXInO1xuaW1wb3J0IHsgVG9vbGJhckV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Rvb2xiYXIvdG9vbGJhci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEJvb2ttYXJrc0NvbXBvbmVudCB9IGZyb20gJy4vYm9va21hcmtzL2Jvb2ttYXJrcy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1zaWRlLWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlLWJhci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgU2lkZUJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIGFubm90YXRpb25zRW5hYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgb3V0bGluZTogT3V0bGluZTtcbiAgQElucHV0KCkgdXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHpvb206IG51bWJlcjtcbiAgQElucHV0KCkgcm90YXRlOiBudW1iZXI7XG4gIEBJbnB1dCgpIGN1cnJlbnRQYWdlTnVtYmVyOiBudW1iZXI7XG5cbiAgQFZpZXdDaGlsZChCb29rbWFya3NDb21wb25lbnQpXG4gIGJvb2ttYXJrczogQm9va21hcmtzQ29tcG9uZW50O1xuXG4gIHNlbGVjdGVkVmlldyA9ICdvdXRsaW5lJztcbiAgYm9va21hcmtOb2RlcyQ6IE9ic2VydmFibGU8Qm9va21hcmtOb2RlW10+O1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHZpZXdlckV2ZW50czogVmlld2VyRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPEJvb2ttYXJrc1N0YXRlPixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRvb2xiYXJFdmVudHM6IFRvb2xiYXJFdmVudFNlcnZpY2VcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmJvb2ttYXJrTm9kZXMkID0gdGhpcy5zdG9yZS5waXBlKHNlbGVjdChib29rbWFya3NTZWxlY3RvcnMuZ2V0Qm9va21hcmtOb2RlcykpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMuc3RvcmUucGlwZShzZWxlY3QoYm9va21hcmtzU2VsZWN0b3JzLmdldEVkaXRhYmxlQm9va21hcmspKVxuICAgICAgLnN1YnNjcmliZShlZGl0YWJsZSA9PiB0aGlzLnNlbGVjdGVkVmlldyA9IGVkaXRhYmxlID8gJ2Jvb2ttYXJrcycgOiB0aGlzLnNlbGVjdGVkVmlldykpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnNpZGViYXJPdXRsaW5lVmlldy5zdWJzY3JpYmUodG9nZ2xlID0+IHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZpZXcgPSB0b2dnbGUgPyAnb3V0bGluZScgOiAnYm9va21hcmtzJztcbiAgICAgIH0pXG4gICAgKTsgIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMudXJsICYmIHRoaXMudXJsKSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBMb2FkQm9va21hcmtzKCkpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3Vic2NyaXB0aW9uID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcbiAgICB9XG4gIH1cblxuICBnb1RvRGVzdGluYXRpb24oZGVzdGluYXRpb246IGFueVtdKSB7XG4gICAgdGhpcy52aWV3ZXJFdmVudHMuZ29Ub0Rlc3RpbmF0aW9uKGRlc3RpbmF0aW9uKTtcbiAgfVxuXG4gIHRvZ2dsZVNpZGViYXJWaWV3KHNpZGViYXJWaWV3OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNlbGVjdGVkVmlldyA9IHNpZGViYXJWaWV3O1xuICB9XG5cbiAgaXNWaWV3ZWRJdGVtKGN1cnJlbnQ6IE91dGxpbmUsIG5leHQ6IE91dGxpbmUpOiBib29sZWFuIHtcbiAgICBpZiAoY3VycmVudC5wYWdlTnVtYmVyID09PSB0aGlzLmN1cnJlbnRQYWdlTnVtYmVyKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIG5leHQgPT09IHVuZGVmaW5lZCA/IGN1cnJlbnQucGFnZU51bWJlciA8PSB0aGlzLmN1cnJlbnRQYWdlTnVtYmVyIDpcbiAgICAgIGN1cnJlbnQucGFnZU51bWJlciA8PSB0aGlzLmN1cnJlbnRQYWdlTnVtYmVyICYmIChuZXh0LnBhZ2VOdW1iZXIgPiB0aGlzLmN1cnJlbnRQYWdlTnVtYmVyKTtcbiAgfVxuXG4gIGZpbmRFbmRQYWdlKG5leHQ6IE91dGxpbmUpOiBudW1iZXIge1xuICAgIHJldHVybiBuZXh0ID09PSB1bmRlZmluZWQgPyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUiA6IG5leHQucGFnZU51bWJlcjtcbiAgfVxufVxuIiwiPGRpdiBpZD1cInRvb2xiYXJTaWRlYmFyXCI+XG4gIDxkaXZcbiAgICAqbmdJZj1cImFubm90YXRpb25zRW5hYmxlZCAmJiBzZWxlY3RlZFZpZXcgPT09ICdib29rbWFya3MnXCJcbiAgICBjbGFzcz1cInNwbGl0VG9vbGJhckJ1dHRvbiB0b2dnbGVkXCJcbiAgPlxuICAgIDxidXR0b25cbiAgICAgIGlkPVwic29ydEJvb2ttYXJrUG9zaXRpb25cIlxuICAgICAgY2xhc3M9XCJzcGxpdFRvb2xiYXJCdXR0b24gbGVmdCBib29rbWFya19fc29ydF9fcG9zaXRpb25cIlxuICAgICAgKGNsaWNrKT1cImJvb2ttYXJrcy5zb3J0KGJvb2ttYXJrcy5wb3NpdGlvblNvcnQpXCJcbiAgICAgIHRpdGxlPVwiT3JkZXIgYnkgcGxhY2UgaW4gZG9jdW1lbnRcIlxuICAgID48L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICBpZD1cInNvcnRCb29rbWFya0N1c3RvbVwiXG4gICAgICBjbGFzcz1cInNwbGl0VG9vbGJhckJ1dHRvbiBsZWZ0IGJvb2ttYXJrX19zb3J0X19jdXN0b21cIlxuICAgICAgKGNsaWNrKT1cImJvb2ttYXJrcy5zb3J0KGJvb2ttYXJrcy5jdXN0b21Tb3J0KVwiXG4gICAgICB0aXRsZT1cIk9yZGVyIG1hbnVhbGx5XCJcbiAgICA+PC9idXR0b24+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwic3BsaXRUb29sYmFyQnV0dG9uU2VwYXJhdG9yXCI+PC9kaXY+XG4gIDxkaXZcbiAgICAqbmdJZj1cImFubm90YXRpb25zRW5hYmxlZCAmJiBzZWxlY3RlZFZpZXcgPT09ICdib29rbWFya3MnXCJcbiAgICBjbGFzcz1cInNwbGl0VG9vbGJhckJ1dHRvbiByaWdodFwiXG4gID5cbiAgICA8YnV0dG9uXG4gICAgICBpZD1cImFkZEJvb2ttYXJrXCJcbiAgICAgIGNsYXNzPVwidG9vbGJhckJ1dHRvbiBhZGRCb29rbWFya1wiXG4gICAgICAoY2xpY2spPVwiYm9va21hcmtzLm9uQWRkQm9va21hcmtDbGljaygpXCJcbiAgICAgIHRpdGxlPVwiQWRkIGJvb2ttYXJrXCJcbiAgICAgIHRhYmluZGV4PVwiM1wiXG4gICAgICBkYXRhLWwxMG4taWQ9XCJhZGRCb29rbWFya1wiXG4gICAgPlxuICAgICAgPHNwYW4gZGF0YS1sMTBuLWlkPVwiYWRkQm9va21hcmtfbGFiZWxcIj57e1xuICAgICAgICBcIkFkZCBib29rbWFya1wiIHwgcnB4VHJhbnNsYXRlXG4gICAgICB9fTwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgaWQ9XCJzaWRlYmFyQ29udGVudFwiPlxuICA8ZGl2IGlkPVwib3V0bGluZVZpZXdcIiBjbGFzcz1cIm91dGxpbmVXaXRoRGVlcE5lc3RpbmdcIj5cbiAgICA8ZGl2IGNsYXNzPVwib3V0bGluZUl0ZW1cIiAqbmdJZj1cInNlbGVjdGVkVmlldyA9PT0gJ291dGxpbmUnXCI+XG4gICAgICA8bXYtb3V0bGluZS1pdGVtXG4gICAgICAgICpuZ0Zvcj1cImxldCBvdXRsaW5lSXRlbSBvZiBvdXRsaW5lOyBpbmRleCBhcyBpXCJcbiAgICAgICAgW291dGxpbmVdPVwib3V0bGluZUl0ZW1cIlxuICAgICAgICBbY3VycmVudFBhZ2VOdW1iZXJdPVwiY3VycmVudFBhZ2VOdW1iZXJcIlxuICAgICAgICBbaXNDdXJyZW50U2VjdGlvbl09XCJpc1ZpZXdlZEl0ZW0ob3V0bGluZUl0ZW0sIG91dGxpbmVbaSArIDFdKVwiXG4gICAgICAgIFtlbmRQYWdlXT1cImZpbmRFbmRQYWdlKG91dGxpbmVbaSArIDFdKVwiXG4gICAgICAgIChuYXZpZ2F0aW9uRXZlbnQpPVwiZ29Ub0Rlc3RpbmF0aW9uKCRldmVudClcIlxuICAgICAgPjwvbXYtb3V0bGluZS1pdGVtPlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiYW5ub3RhdGlvbnNFbmFibGVkICYmIHNlbGVjdGVkVmlldyA9PT0gJ2Jvb2ttYXJrcydcIlxuICAgICAgaWQ9XCJib29rbWFya0NvbnRhaW5lclwiXG4gICAgPlxuICAgICAgPG12LWJvb2ttYXJrc1xuICAgICAgICBbYm9va21hcmtOb2Rlc109XCJib29rbWFya05vZGVzJCB8IGFzeW5jXCJcbiAgICAgICAgW3pvb21dPVwiem9vbVwiXG4gICAgICAgIFtyb3RhdGVdPVwicm90YXRlXCJcbiAgICAgICAgKGdvVG9EZXN0aW5hdGlvbik9XCJnb1RvRGVzdGluYXRpb24oJGV2ZW50KVwiXG4gICAgICA+PC9tdi1ib29rbWFya3M+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -19,9 +19,9 @@ export class RotationApiService {
|
|
|
19
19
|
.pipe(map(response => response), catchError(() => []));
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
|
-
/** @nocollapse */ RotationApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
23
|
-
/** @nocollapse */ RotationApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
22
|
+
/** @nocollapse */ RotationApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RotationApiService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
23
|
+
/** @nocollapse */ RotationApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RotationApiService });
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RotationApiService, decorators: [{
|
|
25
25
|
type: Injectable
|
|
26
26
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm90YXRpb24tYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3JvdGF0aW9uLXBlcnNpc3Qvcm90YXRpb24tYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFJakQsTUFBTSxPQUFPLGtCQUFrQjtJQUk3QixZQUNtQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSGxDLG1CQUFjLEdBQUcsbUJBQW1CLENBQUM7SUFJekMsQ0FBQztJQUVHLFdBQVcsQ0FBQyxVQUFrQjtRQUNuQyxNQUFNLFFBQVEsR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLElBQUksVUFBVSxFQUFFLENBQUM7UUFDeEQsT0FBTyxJQUFJLENBQUMsVUFBVTthQUNuQixHQUFHLENBQVcsUUFBUSxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRyxlQUFlLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRU0sWUFBWSxDQUFDLE9BQWlCO1FBQ25DLE1BQU0sUUFBUSxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDO1FBQzNDLE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsSUFBSSxDQUFNLFFBQVEsRUFBRSxPQUFPLEVBQUUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFHLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQzthQUM3RSxJQUFJLENBQ0gsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQ3pCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FDckIsQ0FBQztJQUNOLENBQUM7O21JQXRCVSxrQkFBa0I7dUlBQWxCLGtCQUFrQjs0RkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgUm90YXRpb24gfSBmcm9tICcuL3JvdGF0aW9uLm1vZGVsJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFJvdGF0aW9uQXBpU2VydmljZSB7XG5cbiAgcHVibGljIHJvdGF0aW9uQXBpVXJsID0gJy9lbS1hbm5vL21ldGFkYXRhJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGh0dHBDbGllbnQ6IEh0dHBDbGllbnRcbiAgKSB7fVxuXG4gIHB1YmxpYyBnZXRSb3RhdGlvbihkb2N1bWVudElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxSb3RhdGlvbj4+IHtcbiAgICBjb25zdCBmaXhlZFVybCA9IGAke3RoaXMucm90YXRpb25BcGlVcmx9LyR7ZG9jdW1lbnRJZH1gO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5nZXQ8Um90YXRpb24+KGZpeGVkVXJsLCB7IG9ic2VydmU6ICdyZXNwb25zZScgLCB3aXRoQ3JlZGVudGlhbHM6IHRydWUgfSk7XG4gIH1cblxuICBwdWJsaWMgc2F2ZVJvdGF0aW9uKHBheWxvYWQ6IFJvdGF0aW9uKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8Um90YXRpb24+PiB7XG4gICAgY29uc3QgZml4ZWRVcmwgPSBgJHt0aGlzLnJvdGF0aW9uQXBpVXJsfS9gO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0PGFueT4oZml4ZWRVcmwsIHBheWxvYWQsIHsgb2JzZXJ2ZTogJ3Jlc3BvbnNlJyAsIHdpdGhDcmVkZW50aWFsczogdHJ1ZSB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChyZXNwb25zZSA9PiByZXNwb25zZSksXG4gICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gW10pXG4gICAgICApO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -50,9 +50,9 @@ export class RotationPersistDirective {
|
|
|
50
50
|
this.store.dispatch(new fromDocumentActions.SaveRotation(payload));
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
/** @nocollapse */ RotationPersistDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
54
|
-
/** @nocollapse */ RotationPersistDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.
|
|
55
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
53
|
+
/** @nocollapse */ RotationPersistDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RotationPersistDirective, deps: [{ token: i0.ElementRef }, { token: i1.Store }, { token: i2.ToolbarButtonVisibilityService }, { token: i3.ToolbarEventService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
54
|
+
/** @nocollapse */ RotationPersistDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: RotationPersistDirective, selector: "[mvRotationPersist]", host: { listeners: { "mediaLoadStatus": "onMediaLoad($event)" } }, ngImport: i0 });
|
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RotationPersistDirective, decorators: [{
|
|
56
56
|
type: Directive,
|
|
57
57
|
args: [{
|
|
58
58
|
selector: '[mvRotationPersist]'
|
|
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
61
61
|
type: HostListener,
|
|
62
62
|
args: ['mediaLoadStatus', ['$event']]
|
|
63
63
|
}] } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm90YXRpb24tcGVyc2lzdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3JvdGF0aW9uLXBlcnNpc3Qvcm90YXRpb24tcGVyc2lzdC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sS0FBSyxtQkFBbUIsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsTUFBTSxFQUFTLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sS0FBSyxhQUFhLE1BQU0sMENBQTBDLENBQUM7QUFDMUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFZOUMsTUFBTSxPQUFPLHdCQUF3QjtJQVFuQyxZQUFvQixFQUFjLEVBQ2QsS0FBcUMsRUFDN0IsY0FBOEMsRUFDdEQsYUFBa0M7UUFIbEMsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQWdDO1FBQzdCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQztRQUN0RCxrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFSdEQsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUNiLGtCQUFhLEdBQUcsQ0FBQyxDQUFDO0lBUWxCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDdEcsSUFBSSxDQUFDLGNBQWM7YUFDaEIsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO2FBQ2hGLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ3BELFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDLENBQUM7YUFDdkQsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDdEQsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBR0QsV0FBVyxDQUFDLE1BQW9CO1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksbUJBQW1CLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLEVBQ2xELE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFDeEIsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ1AsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtnQkFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUMzRDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLFFBQVEsQ0FBQyxRQUFnQjtRQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxHQUFHLENBQUM7UUFDakQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsYUFBYSxLQUFLLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDcEYsQ0FBQztJQUVPLFlBQVk7UUFDbEIsTUFBTSxPQUFPLEdBQWE7WUFDeEIsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLGFBQWEsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUM3QixDQUFDO1FBQ0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNyRSxDQUFDOzt5SUFyRFUsd0JBQXdCOzZIQUF4Qix3QkFBd0I7NEZBQXhCLHdCQUF3QjtrQkFIcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO2lCQUNoQztvTUE4QkMsV0FBVztzQkFEVixZQUFZO3VCQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBmcm9tRG9jdW1lbnRBY3Rpb25zIGZyb20gJy4uLy4uL3N0b3JlL2FjdGlvbnMvZG9jdW1lbnQuYWN0aW9ucyc7XG5pbXBvcnQgeyBzZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0ICogYXMgZnJvbURvY3VtZW50cyBmcm9tICcuLi8uLi9zdG9yZS9zZWxlY3RvcnMvZG9jdW1lbnQuc2VsZWN0b3JzJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFJvdGF0aW9uIH0gZnJvbSAnLi9yb3RhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBSZXNwb25zZVR5cGUgfSBmcm9tICcuLi92aWV3ZXItZXhjZXB0aW9uLm1vZGVsJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgKiBhcyBmcm9tU3RvcmUgZnJvbSAnLi4vLi4vc3RvcmUvcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0IHsgVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9vbGJhci90b29sYmFyLWJ1dHRvbi12aXNpYmlsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW212Um90YXRpb25QZXJzaXN0XSdcbn0pXG5leHBvcnQgY2xhc3MgUm90YXRpb25QZXJzaXN0RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIGRvY3VtZW50SWQ6IHN0cmluZztcbiAgcm90YXRpb24gPSAwO1xuICBzYXZlZFJvdGF0aW9uID0gMDtcblxuICAkc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgICAgICAgICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGZyb21TdG9yZS5Eb2N1bWVudFN0YXRlPixcbiAgICAgICAgICAgICAgcHVibGljIHJlYWRvbmx5IHRvb2xiYXJCdXR0b25zOiBUb29sYmFyQnV0dG9uVmlzaWJpbGl0eVNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZSkge1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9ucyA9IHRoaXMudG9vbGJhckV2ZW50cy5yb3RhdGVTdWJqZWN0LnN1YnNjcmliZShyb3RhdGlvbiA9PiB0aGlzLm9uUm90YXRlKHJvdGF0aW9uKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uc1xuICAgICAgLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuc2F2ZVJvdGF0aW9uU3ViamVjdC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zYXZlUm90YXRpb24oKSkpXG4gICAgICAuYWRkKHRoaXMuc3RvcmUucGlwZShzZWxlY3QoZnJvbURvY3VtZW50cy5nZXRSb3RhdGlvbikpXG4gICAgICAgIC5zdWJzY3JpYmUocm90YXRpb24gPT4gdGhpcy5zYXZlZFJvdGF0aW9uID0gcm90YXRpb24pKVxuICAgICAgLmFkZCh0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21Eb2N1bWVudHMuZ2V0RG9jdW1lbnRJZCkpXG4gICAgICAgIC5zdWJzY3JpYmUoZG9jdW1lbnRJZCA9PiB0aGlzLmRvY3VtZW50SWQgPSBkb2N1bWVudElkKSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtZWRpYUxvYWRTdGF0dXMnLCBbJyRldmVudCddKVxuICBvbk1lZGlhTG9hZChzdGF0dXM6IFJlc3BvbnNlVHlwZSkge1xuICAgIHRoaXMucm90YXRpb24gPSAwO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21Eb2N1bWVudEFjdGlvbnMuTG9hZFJvdGF0aW9uKHRoaXMuZG9jdW1lbnRJZCkpO1xuICAgIHRoaXMuc3RvcmUucGlwZShzZWxlY3QoZnJvbURvY3VtZW50cy5yb3RhdGlvbkxvYWRlZCksXG4gICAgICBmaWx0ZXIodmFsdWUgPT4gISF2YWx1ZSksXG4gICAgICB0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnNhdmVkUm90YXRpb24pIHtcbiAgICAgICAgICB0aGlzLnRvb2xiYXJFdmVudHMucm90YXRlU3ViamVjdC5uZXh0KHRoaXMuc2F2ZWRSb3RhdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvblJvdGF0ZShyb3RhdGlvbjogbnVtYmVyKSB7XG4gICAgdGhpcy5yb3RhdGlvbiA9ICh0aGlzLnJvdGF0aW9uICsgcm90YXRpb24pICUgMzYwO1xuICAgIHRoaXMudG9vbGJhckJ1dHRvbnMuc2hvd1NhdmVSb3RhdGlvbkJ1dHRvbiA9IHRoaXMuc2F2ZWRSb3RhdGlvbiAhPT0gdGhpcy5yb3RhdGlvbjtcbiAgfVxuXG4gIHByaXZhdGUgc2F2ZVJvdGF0aW9uKCkge1xuICAgIGNvbnN0IHBheWxvYWQ6IFJvdGF0aW9uID0ge1xuICAgICAgZG9jdW1lbnRJZDogdGhpcy5kb2N1bWVudElkLFxuICAgICAgcm90YXRpb25BbmdsZTogdGhpcy5yb3RhdGlvblxuICAgIH07XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgZnJvbURvY3VtZW50QWN0aW9ucy5TYXZlUm90YXRpb24ocGF5bG9hZCkpO1xuICB9XG59XG4iXX0=
|