@hmcts/media-viewer 3.0.4 → 4.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/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-set.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-view/annotation-view.component.mjs +4 -4
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/draggable-element.directive.mjs +143 -0
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/model/handle-bar.model.mjs +2 -0
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/model/position.model.mjs +2 -0
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/model/size.model.mjs +2 -0
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/mutable-div.module.mjs +32 -0
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +117 -0
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/resizable-element.directive.mjs +65 -0
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/resize-handlers/resize-handlers.component.mjs +127 -0
- package/{esm2020 → esm2022}/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.mjs +4 -4
- package/esm2022/lib/annotations/annotations.module.mjs +162 -0
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment/comment.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment/comment.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment-set-header/comment-set-header.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment-set-render.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comment-set/comment-set.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/comments-summary/comments-summary.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/pipes/date/date.pipe.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/pipes/filter/filter.pipe.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/pipes/unsnake/unsnake.pipe.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/services/annotation-api/annotation-api.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/services/bookmarks-api/bookmarks-api.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/services/tags/tags.services.mjs +4 -4
- package/{esm2020 → esm2022}/lib/annotations/tags/tags.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/bookmark/components/bookmark-icons.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/icp/confirm-exit/confirm-action-dialog.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/icp/icp-follower.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/icp/icp-presenter.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/icp/icp-session-api.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/icp/icp-update.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/icp/icp.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/icp/participants-list/participants-list.component.mjs +4 -4
- package/esm2022/lib/icp/socket.service.mjs +118 -0
- package/{esm2020 → esm2022}/lib/media-viewer.component.mjs +4 -4
- package/esm2022/lib/media-viewer.module.mjs +155 -0
- package/{esm2020 → esm2022}/lib/print.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/redaction/components/redaction.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/redaction/services/redaction-api.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/shared/gov-uk-date/gov-uk-date.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/shared/gov-uk-error-message/gov-uk-error-message.component.mjs +6 -6
- package/{esm2020 → esm2022}/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.mjs +6 -6
- package/{esm2020 → esm2022}/lib/shared/gov-uk-label/gov-uk-label.component.mjs +6 -6
- package/{esm2020 → esm2022}/lib/shared/shared.module.mjs +19 -19
- package/{esm2020 → esm2022}/lib/shared/util/services/number.helper.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/store/effects/annotation.effects.mjs +4 -4
- package/{esm2020 → esm2022}/lib/store/effects/bookmarks.effects.mjs +4 -4
- package/{esm2020 → esm2022}/lib/store/effects/document.effects.mjs +4 -4
- package/{esm2020 → esm2022}/lib/store/effects/icp.effects.mjs +4 -4
- package/{esm2020 → esm2022}/lib/store/effects/redaction.effects.mjs +4 -4
- package/{esm2020 → esm2022}/lib/toolbar/highlight-toolbar/highlight-toolbar.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/toolbar/icp-event.service.mjs +1 -1
- package/{esm2020 → esm2022}/lib/toolbar/icp-toolbar/icp-toolbar.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/toolbar/main-toolbar/main-toolbar.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/toolbar/search-bar/search-bar.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/toolbar/toolbar-button-visibility.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/toolbar/toolbar-event.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/toolbar/toolbar.module.mjs +25 -25
- package/{esm2020 → esm2022}/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/convertible-content-viewer/document-conversion-api.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/grab-n-drag.directive.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/image-viewer/image-viewer.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/multimedia-player/multimedia-player.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +6 -6
- package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/side-bar/side-bar.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/rotation-persist/rotation-api.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/rotation-persist/rotation-persist.directive.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/viewer-event.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/viewers/viewer-util.service.mjs +4 -4
- package/{fesm2020 → fesm2022}/hmcts-media-viewer.mjs +735 -385
- package/fesm2022/hmcts-media-viewer.mjs.map +1 -0
- package/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.d.ts +1 -1
- package/lib/annotations/annotation-set/annotation-set.component.d.ts +1 -1
- package/lib/annotations/annotation-set/annotation-view/annotation-view.component.d.ts +1 -1
- package/lib/annotations/annotation-set/annotation-view/rectangle/draggable-element.directive.d.ts +25 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/draggable-element.directive.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/model/handle-bar.model.d.ts +7 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/model/handle-bar.model.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/model/position.model.d.ts +5 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/model/position.model.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/model/size.model.d.ts +7 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/model/size.model.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/mutable-div.module.d.ts +11 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/mutable-div.module.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.d.ts +1 -1
- package/lib/annotations/annotation-set/annotation-view/rectangle/resizable-element.directive.d.ts +22 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/resizable-element.directive.d.ts.map +1 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/resize-handlers/resize-handlers.component.d.ts +23 -0
- package/lib/annotations/annotation-set/annotation-view/rectangle/resize-handlers/resize-handlers.component.d.ts.map +1 -0
- package/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.d.ts +1 -1
- package/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.d.ts +1 -1
- package/lib/annotations/annotations.module.d.ts +1 -1
- package/lib/annotations/comment-set/comment/comment.component.d.ts +1 -1
- package/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.d.ts +1 -1
- package/lib/annotations/comment-set/comment-navigate/comments-navigate.component.d.ts +1 -1
- package/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.d.ts +1 -1
- package/lib/annotations/comment-set/comment-set-header/comment-set-header.component.d.ts +1 -1
- package/lib/annotations/comment-set/comment-set.component.d.ts +1 -1
- package/lib/annotations/comments-summary/comments-summary.component.d.ts +1 -1
- package/lib/annotations/tags/tags.component.d.ts +1 -1
- package/lib/bookmark/components/bookmark-icons.component.d.ts +1 -1
- package/lib/icp/socket.service.d.ts +6 -6
- package/lib/icp/socket.service.d.ts.map +1 -1
- package/lib/media-viewer.component.d.ts +1 -1
- package/lib/media-viewer.module.d.ts +2 -2
- package/lib/redaction/components/redaction.component.d.ts +1 -1
- package/lib/shared/gov-uk-date/gov-uk-date.component.d.ts +1 -1
- package/lib/shared/gov-uk-error-message/gov-uk-error-message.component.d.ts +1 -1
- package/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.d.ts +1 -1
- package/lib/shared/gov-uk-label/gov-uk-label.component.d.ts +1 -1
- package/lib/toolbar/icp-event.service.d.ts +4 -4
- package/lib/toolbar/icp-event.service.d.ts.map +1 -1
- package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts +1 -1
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts +1 -1
- package/lib/toolbar/toolbar-event.service.d.ts +6 -6
- package/lib/toolbar/toolbar-event.service.d.ts.map +1 -1
- package/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.d.ts +1 -1
- package/lib/viewers/grab-n-drag.directive.d.ts +1 -1
- package/lib/viewers/image-viewer/image-viewer.component.d.ts +1 -1
- package/lib/viewers/multimedia-player/multimedia-player.component.d.ts +1 -1
- package/lib/viewers/pdf-viewer/pdf-viewer.component.d.ts +1 -1
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts +2 -2
- package/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.d.ts.map +1 -1
- package/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.d.ts +1 -1
- package/lib/viewers/pdf-viewer/side-bar/side-bar.component.d.ts +1 -1
- package/lib/viewers/unsupported-viewer/unsupported-viewer.component.d.ts +1 -1
- package/lib/viewers/viewer-event.service.d.ts +1 -1
- package/lib/viewers/viewer-event.service.d.ts.map +1 -1
- package/package.json +16 -22
- package/esm2020/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +0 -116
- package/esm2020/lib/annotations/annotations.module.mjs +0 -162
- package/esm2020/lib/icp/socket.service.mjs +0 -118
- package/esm2020/lib/media-viewer.module.mjs +0 -155
- package/fesm2015/hmcts-media-viewer.mjs +0 -6781
- package/fesm2015/hmcts-media-viewer.mjs.map +0 -1
- package/fesm2020/hmcts-media-viewer.mjs.map +0 -1
- /package/{esm2020 → esm2022}/hmcts-media-viewer.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-set.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-view/annotation.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/annotations/comment-set/comment/comment.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/annotations/models/api-persisted.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/annotations/models/event-select.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/annotations/models/tags.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/annotations/models/user.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/icp/icp.events.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/icp/icp.interfaces.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/redaction/services/redaction.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/shared/util/helpers/html-templates.helper.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/actions/annotation.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/actions/bookmark.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/actions/document.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/actions/icp.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/actions/redaction.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/actions/tag.actions.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/bookmarks-store-utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/effects/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/models/bookmarks.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/models/filters.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/reducers/annotations.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/reducers/bookmarks.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/reducers/document.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/reducers/icp.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/reducers/redaction.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/reducers/reducers.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/reducers/tags.reducer.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/selectors/annotation.selectors.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/selectors/bookmark.selectors.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/selectors/document.selectors.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/selectors/icp.selectors.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/selectors/redaction.selectors.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/selectors/tag.selectors.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/store/store-utils.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/toolbar/redaction-search-bar/redaction-search.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.interfaces.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/viewers/pdf-viewer/side-bar/outline-item/outline.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/viewers/rotation-persist/rotation.model.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/viewers/viewer-exception.model.mjs +0 -0
- /package/{esm2020 → esm2022}/public_api.mjs +0 -0
|
@@ -32,10 +32,10 @@ export class GrabNDragDirective {
|
|
|
32
32
|
onWindowPointerUp() {
|
|
33
33
|
this.pointerDown = false;
|
|
34
34
|
}
|
|
35
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GrabNDragDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
36
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: GrabNDragDirective, selector: "[mvGrabNDrag]", inputs: { dragEnabled: "dragEnabled", dragX: "dragX" }, host: { listeners: { "pointerdown": "onPointerDown($event)", "window:pointermove": "onPointerMove($event)", "window:pointerup": "onWindowPointerUp()" } }, ngImport: i0 }); }
|
|
35
37
|
}
|
|
36
|
-
|
|
37
|
-
/** @nocollapse */ GrabNDragDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: GrabNDragDirective, selector: "[mvGrabNDrag]", inputs: { dragEnabled: "dragEnabled", dragX: "dragX" }, host: { listeners: { "pointerdown": "onPointerDown($event)", "window:pointermove": "onPointerMove($event)", "window:pointerup": "onWindowPointerUp()" } }, ngImport: i0 });
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: GrabNDragDirective, decorators: [{
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GrabNDragDirective, decorators: [{
|
|
39
39
|
type: Directive,
|
|
40
40
|
args: [{
|
|
41
41
|
selector: '[mvGrabNDrag]'
|
|
@@ -54,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
54
54
|
type: HostListener,
|
|
55
55
|
args: ['window:pointerup']
|
|
56
56
|
}] } });
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhYi1uLWRyYWcuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvdmlld2Vycy9ncmFiLW4tZHJhZy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zRSxNQUFNLE9BQU8sa0JBQWtCO0lBUTdCLFlBQW9CLEVBQWM7UUFBZCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBTDFCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRW5CLGdCQUFXLEdBQUcsS0FBSyxDQUFDO0lBSTdCLENBQUM7SUFHRCxhQUFhLENBQUMsS0FBbUI7UUFDL0IsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUN4QixJQUFJLENBQUMsZ0JBQWdCLEdBQUc7Z0JBQ3RCLElBQUksRUFBRSxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFVBQVU7Z0JBQ3RELEdBQUcsRUFBRSxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFNBQVM7YUFDckQsQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUdELGFBQWEsQ0FBQyxLQUFtQjtRQUMvQixJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUN4QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsTUFBTSxVQUFVLEdBQUc7Z0JBQ2pCLElBQUksRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7Z0JBQ3JGLEdBQUcsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7YUFDbkYsQ0FBQztZQUNGLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQztnQkFDekMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsU0FBUyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUM7YUFDbkQ7U0FDRjtJQUNILENBQUM7SUFFaUMsaUJBQWlCO1FBQ2pELElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUM7a0lBeENVLGtCQUFrQjtzSEFBbEIsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUg5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO2lCQUMxQjtpR0FNVSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFNTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWF2QyxhQUFhO3NCQURaLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBZVosaUJBQWlCO3NCQUFsRCxZQUFZO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttdkdyYWJORHJhZ10nXG59KVxuZXhwb3J0IGNsYXNzIEdyYWJORHJhZ0RpcmVjdGl2ZSB7XG5cbiAgb3JpZ2luYWxQb3NpdGlvbjogeyBsZWZ0OiBudW1iZXI7IHRvcDogbnVtYmVyIH07XG4gIHByaXZhdGUgcG9pbnRlckRvd24gPSBmYWxzZTtcblxuICBASW5wdXQoKSBkcmFnRW5hYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBkcmFnWDogRWxlbWVudDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdwb2ludGVyZG93bicsIFsnJGV2ZW50J10pXG4gIG9uUG9pbnRlckRvd24oZXZlbnQ6IFBvaW50ZXJFdmVudCkge1xuICAgIGlmICh0aGlzLmRyYWdFbmFibGVkKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wb2ludGVyRG93biA9IHRydWU7XG4gICAgICB0aGlzLm9yaWdpbmFsUG9zaXRpb24gPSB7XG4gICAgICAgIGxlZnQ6IGV2ZW50LmNsaWVudFggKyB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCxcbiAgICAgICAgdG9wOiBldmVudC5jbGllbnRZICsgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCxcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnBvaW50ZXJtb3ZlJywgWyckZXZlbnQnXSlcbiAgb25Qb2ludGVyTW92ZShldmVudDogUG9pbnRlckV2ZW50KSB7XG4gICAgaWYgKHRoaXMucG9pbnRlckRvd24gJiYgdGhpcy5kcmFnRW5hYmxlZCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IHNjcm9sbERpZmYgPSB7XG4gICAgICAgIGxlZnQ6IHRoaXMub3JpZ2luYWxQb3NpdGlvbi5sZWZ0IC0gKGV2ZW50LmNsaWVudFggKyB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCksXG4gICAgICAgIHRvcDogdGhpcy5vcmlnaW5hbFBvc2l0aW9uLnRvcCAtIChldmVudC5jbGllbnRZICsgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcClcbiAgICAgIH07XG4gICAgICBpZiAodGhpcy5kcmFnRW5hYmxlZCkge1xuICAgICAgICB0aGlzLmRyYWdYLnNjcm9sbExlZnQgKz0gc2Nyb2xsRGlmZi5sZWZ0O1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wICs9IHNjcm9sbERpZmYudG9wO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpwb2ludGVydXAnKSBvbldpbmRvd1BvaW50ZXJVcCgpIHtcbiAgICB0aGlzLnBvaW50ZXJEb3duID0gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -136,10 +136,10 @@ export class ImageViewerComponent {
|
|
|
136
136
|
toggleCommentsSummary() {
|
|
137
137
|
this.toolbarEvents.toggleCommentsSummary(!this.toolbarEvents.showCommentSummary.getValue());
|
|
138
138
|
}
|
|
139
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageViewerComponent, deps: [{ token: i1.Store }, { token: i2.PrintService }, { token: i3.ViewerUtilService }, { token: i4.ToolbarEventService }, { token: i5.ToolbarButtonVisibilityService }, { token: i6.ViewerEventService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
140
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImageViewerComponent, selector: "mv-image-viewer", inputs: { url: "url", downloadFileName: "downloadFileName", enableAnnotations: "enableAnnotations", annotationSet: "annotationSet", height: "height" }, outputs: { mediaLoadStatus: "mediaLoadStatus", imageViewerException: "imageViewerException" }, host: { listeners: { "mousedown": "onImageViewerClick($event)" } }, viewQueries: [{ propertyName: "img", first: true, predicate: ["img"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<mv-comment-set-header\n [ngClass]=\"{ 'show-comments-panel': showCommentsPanel }\"\n [showCommentSummary]=\"toolbarButtons.showCommentSummary\"\n (showCommentSummaryDialog)=\"toggleCommentsSummary()\"\n>\n</mv-comment-set-header>\n<div\n id=\"viewer-wrapper\"\n [ngStyle]=\"{ height: height }\"\n [ngClass]=\"{ grabNDrag: enableGrabNDrag }\"\n *ngIf=\"url && !errorMessage\"\n>\n <div\n #imageContainer\n id=\"image-container\"\n mvGrabNDrag\n [dragX]=\"imageContainer\"\n [dragEnabled]=\"enableGrabNDrag\"\n (scroll)=\"($event)\"\n [ngClass]=\"{\n 'image-container': true,\n annotations: enableAnnotations,\n 'show-comments-panel': showCommentsPanel\n }\"\n >\n <img\n #img\n alt=\"\"\n [src]=\"url\"\n [ngClass]=\"'rot' + rotation\"\n (error)=\"onLoadError(url)\"\n (load)=\"onLoad(img)\"\n />\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 </ng-template>\n </div>\n\n <mv-comment-set\n [contentScrollTop]=\"imageContainer.scrollTop\"\n *ngIf=\"\n enableAnnotations &&\n annotationSet &&\n (toolbarEvents.redactionMode | async) !== true\n \"\n [annotationSet]=\"annotationSet\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n [height]=\"imageHeight\"\n >\n </mv-comment-set>\n</div>\n", dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i8.CommentSetComponent, selector: "mv-comment-set", inputs: ["annotationSet", "zoom", "rotate", "height", "pageHeights", "contentScrollTop"] }, { kind: "component", type: i9.CommentSetHeaderComponent, selector: "mv-comment-set-header", inputs: ["showCommentSummary"], outputs: ["showCommentSummaryDialog"] }, { kind: "component", type: i10.MetadataLayerComponent, selector: "mv-metadata-layer", inputs: ["zoom", "rotate"] }, { kind: "directive", type: i11.GrabNDragDirective, selector: "[mvGrabNDrag]", inputs: ["dragEnabled", "dragX"] }, { kind: "component", type: i12.RedactionComponent, selector: "mv-redactions", inputs: ["zoom", "rotate"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }] }); }
|
|
139
141
|
}
|
|
140
|
-
|
|
141
|
-
/** @nocollapse */ ImageViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ImageViewerComponent, selector: "mv-image-viewer", inputs: { url: "url", downloadFileName: "downloadFileName", enableAnnotations: "enableAnnotations", annotationSet: "annotationSet", height: "height" }, outputs: { mediaLoadStatus: "mediaLoadStatus", imageViewerException: "imageViewerException" }, host: { listeners: { "mousedown": "onImageViewerClick($event)" } }, viewQueries: [{ propertyName: "img", first: true, predicate: ["img"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<mv-comment-set-header\n [ngClass]=\"{ 'show-comments-panel': showCommentsPanel }\"\n [showCommentSummary]=\"toolbarButtons.showCommentSummary\"\n (showCommentSummaryDialog)=\"toggleCommentsSummary()\"\n>\n</mv-comment-set-header>\n<div\n id=\"viewer-wrapper\"\n [ngStyle]=\"{ height: height }\"\n [ngClass]=\"{ grabNDrag: enableGrabNDrag }\"\n *ngIf=\"url && !errorMessage\"\n>\n <div\n #imageContainer\n id=\"image-container\"\n mvGrabNDrag\n [dragX]=\"imageContainer\"\n [dragEnabled]=\"enableGrabNDrag\"\n (scroll)=\"($event)\"\n [ngClass]=\"{\n 'image-container': true,\n annotations: enableAnnotations,\n 'show-comments-panel': showCommentsPanel\n }\"\n >\n <img\n #img\n alt=\"\"\n [src]=\"url\"\n [ngClass]=\"'rot' + rotation\"\n (error)=\"onLoadError(url)\"\n (load)=\"onLoad(img)\"\n />\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 </ng-template>\n </div>\n\n <mv-comment-set\n [contentScrollTop]=\"imageContainer.scrollTop\"\n *ngIf=\"\n enableAnnotations &&\n annotationSet &&\n (toolbarEvents.redactionMode | async) !== true\n \"\n [annotationSet]=\"annotationSet\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n [height]=\"imageHeight\"\n >\n </mv-comment-set>\n</div>\n", dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i8.CommentSetComponent, selector: "mv-comment-set", inputs: ["annotationSet", "zoom", "rotate", "height", "pageHeights", "contentScrollTop"] }, { kind: "component", type: i9.CommentSetHeaderComponent, selector: "mv-comment-set-header", inputs: ["showCommentSummary"], outputs: ["showCommentSummaryDialog"] }, { kind: "component", type: i10.MetadataLayerComponent, selector: "mv-metadata-layer", inputs: ["zoom", "rotate"] }, { kind: "directive", type: i11.GrabNDragDirective, selector: "[mvGrabNDrag]", inputs: ["dragEnabled", "dragX"] }, { kind: "component", type: i12.RedactionComponent, selector: "mv-redactions", inputs: ["zoom", "rotate"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }] });
|
|
142
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ImageViewerComponent, decorators: [{
|
|
142
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImageViewerComponent, decorators: [{
|
|
143
143
|
type: Component,
|
|
144
144
|
args: [{ selector: 'mv-image-viewer', template: "<mv-comment-set-header\n [ngClass]=\"{ 'show-comments-panel': showCommentsPanel }\"\n [showCommentSummary]=\"toolbarButtons.showCommentSummary\"\n (showCommentSummaryDialog)=\"toggleCommentsSummary()\"\n>\n</mv-comment-set-header>\n<div\n id=\"viewer-wrapper\"\n [ngStyle]=\"{ height: height }\"\n [ngClass]=\"{ grabNDrag: enableGrabNDrag }\"\n *ngIf=\"url && !errorMessage\"\n>\n <div\n #imageContainer\n id=\"image-container\"\n mvGrabNDrag\n [dragX]=\"imageContainer\"\n [dragEnabled]=\"enableGrabNDrag\"\n (scroll)=\"($event)\"\n [ngClass]=\"{\n 'image-container': true,\n annotations: enableAnnotations,\n 'show-comments-panel': showCommentsPanel\n }\"\n >\n <img\n #img\n alt=\"\"\n [src]=\"url\"\n [ngClass]=\"'rot' + rotation\"\n (error)=\"onLoadError(url)\"\n (load)=\"onLoad(img)\"\n />\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 </ng-template>\n </div>\n\n <mv-comment-set\n [contentScrollTop]=\"imageContainer.scrollTop\"\n *ngIf=\"\n enableAnnotations &&\n annotationSet &&\n (toolbarEvents.redactionMode | async) !== true\n \"\n [annotationSet]=\"annotationSet\"\n [zoom]=\"zoom\"\n [rotate]=\"rotation\"\n [height]=\"imageHeight\"\n >\n </mv-comment-set>\n</div>\n" }]
|
|
145
145
|
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.PrintService }, { type: i3.ViewerUtilService }, { type: i4.ToolbarEventService }, { type: i5.ToolbarButtonVisibilityService }, { type: i6.ViewerEventService }]; }, propDecorators: { url: [{
|
|
@@ -163,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
163
163
|
type: HostListener,
|
|
164
164
|
args: ['mousedown', ['$event']]
|
|
165
165
|
}] } });
|
|
166
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utdmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvaW1hZ2Utdmlld2VyL2ltYWdlLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL2ltYWdlLXZpZXdlci9pbWFnZS12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFLMUUsT0FBTyxLQUFLLFlBQVksTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRSxPQUFPLEtBQUsscUJBQXFCLE1BQU0sd0NBQXdDLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBT2hGLE1BQU0sT0FBTyxvQkFBb0I7SUE4Qi9CLFlBQ1UsS0FBMEMsRUFDakMsWUFBMEIsRUFDMUIsaUJBQW9DLEVBQ3JDLGFBQWtDLEVBQ2xDLGNBQThDLEVBQ3RELFlBQWdDO1FBTGhDLFVBQUssR0FBTCxLQUFLLENBQXFDO1FBQ2pDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDckMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBQ2xDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQztRQUN0RCxpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUExQmhDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFDbkQseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFLckUsYUFBUSxHQUFHLENBQUMs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LENBQUMsVUFBVTtvQkFDNUIsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTO2lCQUMzQjtnQkFDRCxVQUFVLEVBQUUsQ0FBQztnQkFDYixLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2hCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsRUFBRSxFQUFFLENBQUM7YUFDTixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFlBQVksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDOUYsQ0FBQzs7cUlBektVLG9CQUFvQjt5SEFBcEIsb0JBQW9CLG1lQzlCakMsb25EQThEQTs0RkRoQ2Esb0JBQW9CO2tCQUpoQyxTQUFTOytCQUNFLGlCQUFpQjt1UUFLbEIsR0FBRztzQkFBWCxLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBRUksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxvQkFBb0I7c0JBQTdCLE1BQU07Z0JBSTRCLEdBQUc7c0JBQXJDLFNBQVM7dUJBQUMsS0FBSyxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztnQkFxQ2pDLGtCQUFrQjtzQkFEakIsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcmludFNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcmludC5zZXJ2aWNlJztcbmltcG9ydCB7IEFubm90YXRpb25TZXQgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXNldC5tb2RlbCc7XG5pbXBvcnQgeyBUb29sYmFyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9vbGJhci90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVzcG9uc2VUeXBlLCBWaWV3ZXJFeGNlcHRpb24gfSBmcm9tICcuLi92aWV3ZXItZXhjZXB0aW9uLm1vZGVsJztcbmltcG9ydCB7IFZpZXdlclV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vdmlld2VyLXV0aWwuc2VydmljZSc7XG5pbXBvcnQgeyBUb29sYmFyQnV0dG9uVmlzaWJpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi90b29sYmFyL3Rvb2xiYXItYnV0dG9uLXZpc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCAqIGFzIGZyb21TdG9yZSBmcm9tICcuLi8uLi9zdG9yZS9yZWR1Y2Vycy9yZWR1Y2Vycyc7XG5pbXBvcnQgKiBhcyBmcm9tRG9jdW1lbnQgZnJvbSAnLi4vLi4vc3RvcmUvYWN0aW9ucy9kb2N1bWVudC5hY3Rpb25zJztcbmltcG9ydCAqIGFzIGZyb21Bbm5vdGF0aW9uQWN0aW9ucyBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2Fubm90YXRpb24uYWN0aW9ucyc7XG5pbXBvcnQgeyBWaWV3ZXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi92aWV3ZXItZXZlbnQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWltYWdlLXZpZXdlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbWFnZS12aWV3ZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlVmlld2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG5cbiAgQElucHV0KCkgdXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRvd25sb2FkRmlsZU5hbWU6IHN0cmluZztcblxuICBASW5wdXQoKSBlbmFibGVBbm5vdGF0aW9uczogYm9vbGVhbjtcbiAgQElucHV0KCkgYW5ub3RhdGlvblNldDogQW5ub3RhdGlvblNldCB8IG51bGw7XG5cbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIG1lZGlhTG9hZFN0YXR1cyA9IG5ldyBFdmVudEVtaXR0ZXI8UmVzcG9uc2VUeXBlPigpO1xuICBAT3V0cHV0KCkgaW1hZ2VWaWV3ZXJFeGNlcHRpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFZpZXdlckV4Y2VwdGlvbj4oKTtcblxuICBlcnJvck1lc3NhZ2U6IHN0cmluZztcblxuICBAVmlld0NoaWxkKCdpbWcnLCB7c3RhdGljOiBmYWxzZX0pIGltZzogRWxlbWVudFJlZjtcbiAgcm90YXRpb24gPSAwO1xuICB6b29tID0gMTtcblxuICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG4gIHByaXZhdGUgdmlld2VyRXhjZXB0aW9uOiBWaWV3ZXJFeGNlcHRpb247XG4gIHByaXZhdGUgcmVzcG9uc2U6IFN1YnNjcmlwdGlvbjtcblxuICBzaG93Q29tbWVudHNQYW5lbDogYm9vbGVhbjtcbiAgZW5hYmxlR3JhYk5EcmFnID0gZmFsc2U7XG4gIGltYWdlSGVpZ2h0OiBudW1iZXI7XG4gIGltYWdlV2lkdGg6IG51bWJlcjtcbiAgaW1hZ2VMZWZ0OiBudW1iZXI7XG4gIGltYWdlVG9wOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcmludFNlcnZpY2U6IFByaW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpZXdlclV0aWxTZXJ2aWNlOiBWaWV3ZXJVdGlsU2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckJ1dHRvbnM6IFRvb2xiYXJCdXR0b25WaXNpYmlsaXR5U2VydmljZSxcbiAgICBwcml2YXRlIHZpZXdlckV2ZW50czogVmlld2VyRXZlbnRTZXJ2aWNlLFxuICApIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnJvdGF0ZVN1YmplY3Quc3Vic2NyaWJlKHJvdGF0aW9uID0+IHRoaXMucm90YXRlSW1hZ2Uocm90YXRpb24pKSxcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy56b29tU3ViamVjdC5zdWJzY3JpYmUoem9vbSA9PiB0aGlzLnNldFpvb20oem9vbSkpLFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnN0ZXBab29tU3ViamVjdC5zdWJzY3JpYmUoem9vbSA9PiB0aGlzLnN0ZXBab29tKHpvb20pKSxcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5wcmludFN1YmplY3Quc3Vic2NyaWJlKCgpID0+IHRoaXMucHJpbnRTZXJ2aWNlLnByaW50RG9jdW1lbnROYXRpdmVseSh0aGlzLnVybCkpLFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLmRvd25sb2FkU3ViamVjdC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5kb3dubG9hZCgpKSxcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5ncmFiTkRyYWcuc3Vic2NyaWJlKGdyYWJORHJhZyA9PiB0aGlzLmVuYWJsZUdyYWJORHJhZyA9IGdyYWJORHJhZyksXG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuY29tbWVudHNQYW5lbFZpc2libGUuc3Vic2NyaWJlKHRvZ2dsZSA9PiB0aGlzLnNob3dDb21tZW50c1BhbmVsID0gdG9nZ2xlKVxuICAgICk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICBvbkltYWdlVmlld2VyQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBjb25zdCBjbGFzc05tZSA9IChldmVudC50YXJnZXQgYXMgRWxlbWVudCkuY2xhc3NOYW1lO1xuICAgIGlmIChjbGFzc05tZS5zdGFydHNXaXRoKCdwYWdlQ29udGFpbmVyJykpIHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgIG5ldyBmcm9tQW5ub3RhdGlvbkFjdGlvbnMuU2VsZWN0ZWRBbm5vdGF0aW9uKHtcbiAgICAgICAgICBhbm5vdGF0aW9uSWQ6ICcnLFxuICAgICAgICAgIHNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICBlZGl0YWJsZTogZmFsc2UsXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgICAgdGhpcy52aWV3ZXJFdmVudHMuY2xlYXJDdHhUb29sYmFyKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZpbHRlcihzdWJzY3JpcHRpb24gPT4gIXN1YnNjcmlwdGlvbi5jbG9zZWQpXG4gICAgICAuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xuICAgIGlmICh0aGlzLnJlc3BvbnNlKSB7XG4gICAgICB0aGlzLnJlc3BvbnNlLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLnVybCkge1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBudWxsO1xuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnJlc2V0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByb3RhdGVJbWFnZShyb3RhdGlvbjogbnVtYmVyKSB7XG4gICAgdGhpcy5yb3RhdGlvbiA9ICh0aGlzLnJvdGF0aW9uICsgcm90YXRpb24pICUgMzYwO1xuICAgIHRoaXMuaW5pdEFubm9QYWdlKHRoaXMuaW1nLm5hdGl2ZUVsZW1lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZXRab29tKHpvb21GYWN0b3I6IG51bWJlcikge1xuICAgIGlmICghaXNOYU4oem9vbUZhY3RvcikpIHtcbiAgICAgIGF3YWl0IHRoaXMuc2V0Wm9vbVZhbHVlKHRoaXMuY2FsY3VsYXRlWm9vbVZhbHVlKHpvb21GYWN0b3IpKTtcbiAgICAgIHRoaXMuaW1nLm5hdGl2ZUVsZW1lbnQud2lkdGggPSB0aGlzLmltZy5uYXRpdmVFbGVtZW50Lm5hdHVyYWxXaWR0aCAqIHRoaXMuem9vbTtcbiAgICAgIHRoaXMuaW5pdEFubm9QYWdlKHRoaXMuaW1nLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc3RlcFpvb20oem9vbUZhY3RvcjogbnVtYmVyKSB7XG4gICAgaWYgKCFpc05hTih6b29tRmFjdG9yKSkge1xuICAgICAgYXdhaXQgdGhpcy5zZXRab29tVmFsdWUodGhpcy5jYWxjdWxhdGVab29tVmFsdWUodGhpcy56b29tLCB6b29tRmFjdG9yKSk7XG4gICAgICB0aGlzLmltZy5uYXRpdmVFbGVtZW50LndpZHRoID0gdGhpcy5pbWcubmF0aXZlRWxlbWVudC5uYXR1cmFsV2lkdGggKiB0aGlzLnpvb207XG4gICAgICB0aGlzLmluaXRBbm5vUGFnZSh0aGlzLmltZy5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRvd25sb2FkKCkge1xuICAgIGNvbnN0IGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcbiAgICBhLnNldEF0dHJpYnV0ZSgnc3R5bGUnLCAnZGlzcGxheTogbm9uZScpO1xuICAgIGEuaHJlZiA9IHRoaXMudXJsO1xuICAgIGEuZG93bmxvYWQgPSB0aGlzLmRvd25sb2FkRmlsZU5hbWU7XG4gICAgYS5jbGljaygpO1xuICAgIGEucmVtb3ZlKCk7XG4gIH1cblxuICAvLyB0aGUgcmV0dXJuZWQgcHJvbWlzZSBpcyBhIHdvcmstYXJvdW5kXG4gIHNldFpvb21WYWx1ZSh6b29tVmFsdWUpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIHRoaXMuem9vbSA9IHpvb21WYWx1ZTtcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy56b29tVmFsdWVTdWJqZWN0Lm5leHQoem9vbVZhbHVlKTtcbiAgICAgIHJlc29sdmUodHJ1ZSk7XG4gICAgfSk7XG4gIH1cblxuICBjYWxjdWxhdGVab29tVmFsdWUoem9vbVZhbHVlLCBpbmNyZW1lbnQgPSAwKSB7XG4gICAgY29uc3QgbmV3Wm9vbVZhbHVlID0gem9vbVZhbHVlICsgaW5jcmVtZW50O1xuICAgIGlmIChuZXdab29tVmFsdWUgPiA1KSB7IHJldHVybiA1OyB9XG4gICAgaWYgKG5ld1pvb21WYWx1ZSA8IDAuMSkgeyByZXR1cm4gMC4xOyB9XG4gICAgcmV0dXJuICtuZXdab29tVmFsdWUudG9GaXhlZCgyKTtcbiAgfVxuXG4gIG9uTG9hZEVycm9yKHVybCkge1xuICAgIHRoaXMucmVzcG9uc2UgPSB0aGlzLnZpZXdlclV0aWxTZXJ2aWNlLnZhbGlkYXRlRmlsZSh1cmwpXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICBuZXh0ID0+IG5leHQsXG4gICAgICAgIGVycm9yID0+IHtcbiAgICAgICAgICB0aGlzLnZpZXdlckV4Y2VwdGlvbiA9IG5ldyBWaWV3ZXJFeGNlcHRpb24oZXJyb3IubmFtZSxcbiAgICAgICAgICAgIHsgaHR0cFJlc3BvbnNlQ29kZTogZXJyb3Iuc3RhdHVzLCBtZXNzYWdlOiBlcnJvci5tZXNzYWdlIH0pO1xuICAgICAgICB9KTtcblxuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gYENvdWxkIG5vdCBsb2FkIHRoZSBpbWFnZSBcIiR7dGhpcy51cmx9XCJgO1xuICAgIHRoaXMubWVkaWFMb2FkU3RhdHVzLmVtaXQoUmVzcG9uc2VUeXBlLkZBSUxVUkUpO1xuICAgIHRoaXMuaW1hZ2VWaWV3ZXJFeGNlcHRpb24uZW1pdCh0aGlzLnZpZXdlckV4Y2VwdGlvbik7XG4gIH1cblxuICBvbkxvYWQoaW1nOiBhbnkpIHtcbiAgICB0aGlzLm1lZGlhTG9hZFN0YXR1cy5lbWl0KFJlc3BvbnNlVHlwZS5TVUNDRVNTKTtcbiAgICB0aGlzLmluaXRBbm5vUGFnZShpbWcpO1xuICB9XG5cbiAgaW5pdEFubm9QYWdlKGltZzogYW55KSB7XG4gICAgdGhpcy5pbWFnZUhlaWdodCA9IHRoaXMucm90YXRpb24gJSAxODAgIT09IDAgPyBpbWcub2Zmc2V0V2lkdGggOiBpbWcub2Zmc2V0SGVpZ2h0O1xuICAgIHRoaXMuaW1hZ2VXaWR0aCA9IHRoaXMucm90YXRpb24gJSAxODAgIT09IDAgPyBpbWcub2Zmc2V0SGVpZ2h0IDogaW1nLm9mZnNldFdpZHRoO1xuICAgIHRoaXMuaW1hZ2VMZWZ0ID0gdGhpcy5yb3RhdGlvbiAlIDE4MCAhPT0gMCA/IGltZy5vZmZzZXRUb3AgOiBpbWcub2Zmc2V0TGVmdDtcbiAgICB0aGlzLmltYWdlVG9wID0gdGhpcy5yb3RhdGlvbiAlIDE4MCAhPT0gMCA/IGltZy5vZmZzZXRMZWZ0IDogaW1nLm9mZnNldFRvcDtcbiAgICBjb25zdCBwYXlsb2FkOiBhbnkgPSBbe1xuICAgICAgZGl2OiB7XG4gICAgICAgIHNjcm9sbEhlaWdodDogdGhpcy5pbWFnZUhlaWdodCxcbiAgICAgICAgc2Nyb2xsV2lkdGg6IHRoaXMuaW1hZ2VXaWR0aCxcbiAgICAgICAgb2Zmc2V0TGVmdDogdGhpcy5pbWFnZUxlZnQsXG4gICAgICB9LFxuICAgICAgcGFnZU51bWJlcjogMSxcbiAgICAgIHNjYWxlOiB0aGlzLnpvb20sXG4gICAgICByb3RhdGlvbjogdGhpcy5yb3RhdGlvbixcbiAgICAgIGlkOiAxXG4gICAgfV07XG5cbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tRG9jdW1lbnQuQWRkUGFnZXMocGF5bG9hZCkpO1xuICB9XG5cbiAgdG9nZ2xlQ29tbWVudHNTdW1tYXJ5KCkge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy50b2dnbGVDb21tZW50c1N1bW1hcnkoIXRoaXMudG9vbGJhckV2ZW50cy5zaG93Q29tbWVudFN1bW1hcnkuZ2V0VmFsdWUoKSk7XG4gIH1cbn1cbiIsIjxtdi1jb21tZW50LXNldC1oZWFkZXJcbiAgW25nQ2xhc3NdPVwieyAnc2hvdy1jb21tZW50cy1wYW5lbCc6IHNob3dDb21tZW50c1BhbmVsIH1cIlxuICBbc2hvd0NvbW1lbnRTdW1tYXJ5XT1cInRvb2xiYXJCdXR0b25zLnNob3dDb21tZW50U3VtbWFyeVwiXG4gIChzaG93Q29tbWVudFN1bW1hcnlEaWFsb2cpPVwidG9nZ2xlQ29tbWVudHNTdW1tYXJ5KClcIlxuPlxuPC9tdi1jb21tZW50LXNldC1oZWFkZXI+XG48ZGl2XG4gIGlkPVwidmlld2VyLXdyYXBwZXJcIlxuICBbbmdTdHlsZV09XCJ7IGhlaWdodDogaGVpZ2h0IH1cIlxuICBbbmdDbGFzc109XCJ7IGdyYWJORHJhZzogZW5hYmxlR3JhYk5EcmFnIH1cIlxuICAqbmdJZj1cInVybCAmJiAhZXJyb3JNZXNzYWdlXCJcbj5cbiAgPGRpdlxuICAgICNpbWFnZUNvbnRhaW5lclxuICAgIGlkPVwiaW1hZ2UtY29udGFpbmVyXCJcbiAgICBtdkdyYWJORHJhZ1xuICAgIFtkcmFnWF09XCJpbWFnZUNvbnRhaW5lclwiXG4gICAgW2RyYWdFbmFibGVkXT1cImVuYWJsZUdyYWJORHJhZ1wiXG4gICAgKHNjcm9sbCk9XCIoJGV2ZW50KVwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ2ltYWdlLWNvbnRhaW5lcic6IHRydWUsXG4gICAgICBhbm5vdGF0aW9uczogZW5hYmxlQW5ub3RhdGlvbnMsXG4gICAgICAnc2hvdy1jb21tZW50cy1wYW5lbCc6IHNob3dDb21tZW50c1BhbmVsXG4gICAgfVwiXG4gID5cbiAgICA8aW1nXG4gICAgICAjaW1nXG4gICAgICBhbHQ9XCJcIlxuICAgICAgW3NyY109XCJ1cmxcIlxuICAgICAgW25nQ2xhc3NdPVwiJ3JvdCcgKyByb3RhdGlvblwiXG4gICAgICAoZXJyb3IpPVwib25Mb2FkRXJyb3IodXJsKVwiXG4gICAgICAobG9hZCk9XCJvbkxvYWQoaW1nKVwiXG4gICAgLz5cbiAgICA8bXYtcmVkYWN0aW9uc1xuICAgICAgKm5nSWY9XCJ0b29sYmFyRXZlbnRzLnJlZGFjdGlvbk1vZGUgfCBhc3luYzsgZWxzZSBhbm5vdGF0aW9uVGVtcGxhdGVcIlxuICAgICAgW3pvb21dPVwiem9vbVwiXG4gICAgICBbcm90YXRlXT1cInJvdGF0aW9uXCJcbiAgICA+PC9tdi1yZWRhY3Rpb25zPlxuICAgIDxuZy10ZW1wbGF0ZSAjYW5ub3RhdGlvblRlbXBsYXRlPlxuICAgICAgPG12LW1ldGFkYXRhLWxheWVyXG4gICAgICAgICpuZ0lmPVwiZW5hYmxlQW5ub3RhdGlvbnMgJiYgYW5ub3RhdGlvblNldFwiXG4gICAgICAgIFt6b29tXT1cInpvb21cIlxuICAgICAgICBbcm90YXRlXT1cInJvdGF0aW9uXCJcbiAgICAgID5cbiAgICAgIDwvbXYtbWV0YWRhdGEtbGF5ZXI+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG5cbiAgPG12LWNvbW1lbnQtc2V0XG4gICAgW2NvbnRlbnRTY3JvbGxUb3BdPVwiaW1hZ2VDb250YWluZXIuc2Nyb2xsVG9wXCJcbiAgICAqbmdJZj1cIlxuICAgICAgZW5hYmxlQW5ub3RhdGlvbnMgJiZcbiAgICAgIGFubm90YXRpb25TZXQgJiZcbiAgICAgICh0b29sYmFyRXZlbnRzLnJlZGFjdGlvbk1vZGUgfCBhc3luYykgIT09IHRydWVcbiAgICBcIlxuICAgIFthbm5vdGF0aW9uU2V0XT1cImFubm90YXRpb25TZXRcIlxuICAgIFt6b29tXT1cInpvb21cIlxuICAgIFtyb3RhdGVdPVwicm90YXRpb25cIlxuICAgIFtoZWlnaHRdPVwiaW1hZ2VIZWlnaHRcIlxuICA+XG4gIDwvbXYtY29tbWVudC1zZXQ+XG48L2Rpdj5cbiJdfQ==
|
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utdmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvaW1hZ2Utdmlld2VyL2ltYWdlLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL2ltYWdlLXZpZXdlci9pbWFnZS12aWV3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFJTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFLMUUsT0FBTyxLQUFLLFlBQVksTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRSxPQUFPLEtBQUsscUJBQXFCLE1BQU0sd0NBQXdDLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBT2hGLE1BQU0sT0FBTyxvQkFBb0I7SUE4Qi9CLFlBQ1UsS0FBMEMsRUFDakMsWUFBMEIsRUFDMUIsaUJBQW9DLEVBQ3JDLGFBQWtDLEVBQ2xDLGNBQThDLEVBQ3RELFlBQWdDO1FBTGhDLFVBQUssR0FBTCxLQUFLLENBQXFDO1FBQ2pDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDckMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBQ2xDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQztRQUN0RCxpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUExQmhDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFDbkQseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFLckUsYUFBUSxHQUFHLENBQUMs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LENBQUMsVUFBVTtvQkFDNUIsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTO2lCQUMzQjtnQkFDRCxVQUFVLEVBQUUsQ0FBQztnQkFDYixLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2hCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsRUFBRSxFQUFFLENBQUM7YUFDTixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFlBQVksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDOUYsQ0FBQztrSUF6S1Usb0JBQW9CO3NIQUFwQixvQkFBb0IsbWVDOUJqQyxvbkRBOERBOzs0RkRoQ2Esb0JBQW9CO2tCQUpoQyxTQUFTOytCQUNFLGlCQUFpQjt1UUFLbEIsR0FBRztzQkFBWCxLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBRUksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxvQkFBb0I7c0JBQTdCLE1BQU07Z0JBSTRCLEdBQUc7c0JBQXJDLFNBQVM7dUJBQUMsS0FBSyxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztnQkFxQ2pDLGtCQUFrQjtzQkFEakIsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcmludFNlcnZpY2UgfSBmcm9tICcuLi8uLi9wcmludC5zZXJ2aWNlJztcbmltcG9ydCB7IEFubm90YXRpb25TZXQgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXNldC5tb2RlbCc7XG5pbXBvcnQgeyBUb29sYmFyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9vbGJhci90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVzcG9uc2VUeXBlLCBWaWV3ZXJFeGNlcHRpb24gfSBmcm9tICcuLi92aWV3ZXItZXhjZXB0aW9uLm1vZGVsJztcbmltcG9ydCB7IFZpZXdlclV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vdmlld2VyLXV0aWwuc2VydmljZSc7XG5pbXBvcnQgeyBUb29sYmFyQnV0dG9uVmlzaWJpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi90b29sYmFyL3Rvb2xiYXItYnV0dG9uLXZpc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCAqIGFzIGZyb21TdG9yZSBmcm9tICcuLi8uLi9zdG9yZS9yZWR1Y2Vycy9yZWR1Y2Vycyc7XG5pbXBvcnQgKiBhcyBmcm9tRG9jdW1lbnQgZnJvbSAnLi4vLi4vc3RvcmUvYWN0aW9ucy9kb2N1bWVudC5hY3Rpb25zJztcbmltcG9ydCAqIGFzIGZyb21Bbm5vdGF0aW9uQWN0aW9ucyBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2Fubm90YXRpb24uYWN0aW9ucyc7XG5pbXBvcnQgeyBWaWV3ZXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi92aWV3ZXItZXZlbnQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWltYWdlLXZpZXdlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbWFnZS12aWV3ZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlVmlld2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG5cbiAgQElucHV0KCkgdXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRvd25sb2FkRmlsZU5hbWU6IHN0cmluZztcblxuICBASW5wdXQoKSBlbmFibGVBbm5vdGF0aW9uczogYm9vbGVhbjtcbiAgQElucHV0KCkgYW5ub3RhdGlvblNldDogQW5ub3RhdGlvblNldCB8IG51bGw7XG5cbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIG1lZGlhTG9hZFN0YXR1cyA9IG5ldyBFdmVudEVtaXR0ZXI8UmVzcG9uc2VUeXBlPigpO1xuICBAT3V0cHV0KCkgaW1hZ2VWaWV3ZXJFeGNlcHRpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFZpZXdlckV4Y2VwdGlvbj4oKTtcblxuICBlcnJvck1lc3NhZ2U6IHN0cmluZztcblxuICBAVmlld0NoaWxkKCdpbWcnLCB7c3RhdGljOiBmYWxzZX0pIGltZzogRWxlbWVudFJlZjtcbiAgcm90YXRpb24gPSAwO1xuICB6b29tID0gMTtcblxuICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG4gIHByaXZhdGUgdmlld2VyRXhjZXB0aW9uOiBWaWV3ZXJFeGNlcHRpb247XG4gIHByaXZhdGUgcmVzcG9uc2U6IFN1YnNjcmlwdGlvbjtcblxuICBzaG93Q29tbWVudHNQYW5lbDogYm9vbGVhbjtcbiAgZW5hYmxlR3JhYk5EcmFnID0gZmFsc2U7XG4gIGltYWdlSGVpZ2h0OiBudW1iZXI7XG4gIGltYWdlV2lkdGg6IG51bWJlcjtcbiAgaW1hZ2VMZWZ0OiBudW1iZXI7XG4gIGltYWdlVG9wOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcmludFNlcnZpY2U6IFByaW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpZXdlclV0aWxTZXJ2aWNlOiBWaWV3ZXJVdGlsU2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckJ1dHRvbnM6IFRvb2xiYXJCdXR0b25WaXNpYmlsaXR5U2VydmljZSxcbiAgICBwcml2YXRlIHZpZXdlckV2ZW50czogVmlld2VyRXZlbnRTZXJ2aWNlLFxuICApIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnJvdGF0ZVN1YmplY3Quc3Vic2NyaWJlKHJvdGF0aW9uID0+IHRoaXMucm90YXRlSW1hZ2Uocm90YXRpb24pKSxcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy56b29tU3ViamVjdC5zdWJzY3JpYmUoem9vbSA9PiB0aGlzLnNldFpvb20oem9vbSkpLFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnN0ZXBab29tU3ViamVjdC5zdWJzY3JpYmUoem9vbSA9PiB0aGlzLnN0ZXBab29tKHpvb20pKSxcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5wcmludFN1YmplY3Quc3Vic2NyaWJlKCgpID0+IHRoaXMucHJpbnRTZXJ2aWNlLnByaW50RG9jdW1lbnROYXRpdmVseSh0aGlzLnVybCkpLFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLmRvd25sb2FkU3ViamVjdC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5kb3dubG9hZCgpKSxcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5ncmFiTkRyYWcuc3Vic2NyaWJlKGdyYWJORHJhZyA9PiB0aGlzLmVuYWJsZUdyYWJORHJhZyA9IGdyYWJORHJhZyksXG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuY29tbWVudHNQYW5lbFZpc2libGUuc3Vic2NyaWJlKHRvZ2dsZSA9PiB0aGlzLnNob3dDb21tZW50c1BhbmVsID0gdG9nZ2xlKVxuICAgICk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICBvbkltYWdlVmlld2VyQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBjb25zdCBjbGFzc05tZSA9IChldmVudC50YXJnZXQgYXMgRWxlbWVudCkuY2xhc3NOYW1lO1xuICAgIGlmIChjbGFzc05tZS5zdGFydHNXaXRoKCdwYWdlQ29udGFpbmVyJykpIHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgIG5ldyBmcm9tQW5ub3RhdGlvbkFjdGlvbnMuU2VsZWN0ZWRBbm5vdGF0aW9uKHtcbiAgICAgICAgICBhbm5vdGF0aW9uSWQ6ICcnLFxuICAgICAgICAgIHNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICBlZGl0YWJsZTogZmFsc2UsXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgICAgdGhpcy52aWV3ZXJFdmVudHMuY2xlYXJDdHhUb29sYmFyKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZpbHRlcihzdWJzY3JpcHRpb24gPT4gIXN1YnNjcmlwdGlvbi5jbG9zZWQpXG4gICAgICAuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xuICAgIGlmICh0aGlzLnJlc3BvbnNlKSB7XG4gICAgICB0aGlzLnJlc3BvbnNlLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLnVybCkge1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBudWxsO1xuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnJlc2V0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByb3RhdGVJbWFnZShyb3RhdGlvbjogbnVtYmVyKSB7XG4gICAgdGhpcy5yb3RhdGlvbiA9ICh0aGlzLnJvdGF0aW9uICsgcm90YXRpb24pICUgMzYwO1xuICAgIHRoaXMuaW5pdEFubm9QYWdlKHRoaXMuaW1nLm5hdGl2ZUVsZW1lbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZXRab29tKHpvb21GYWN0b3I6IG51bWJlcikge1xuICAgIGlmICghaXNOYU4oem9vbUZhY3RvcikpIHtcbiAgICAgIGF3YWl0IHRoaXMuc2V0Wm9vbVZhbHVlKHRoaXMuY2FsY3VsYXRlWm9vbVZhbHVlKHpvb21GYWN0b3IpKTtcbiAgICAgIHRoaXMuaW1nLm5hdGl2ZUVsZW1lbnQud2lkdGggPSB0aGlzLmltZy5uYXRpdmVFbGVtZW50Lm5hdHVyYWxXaWR0aCAqIHRoaXMuem9vbTtcbiAgICAgIHRoaXMuaW5pdEFubm9QYWdlKHRoaXMuaW1nLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc3RlcFpvb20oem9vbUZhY3RvcjogbnVtYmVyKSB7XG4gICAgaWYgKCFpc05hTih6b29tRmFjdG9yKSkge1xuICAgICAgYXdhaXQgdGhpcy5zZXRab29tVmFsdWUodGhpcy5jYWxjdWxhdGVab29tVmFsdWUodGhpcy56b29tLCB6b29tRmFjdG9yKSk7XG4gICAgICB0aGlzLmltZy5uYXRpdmVFbGVtZW50LndpZHRoID0gdGhpcy5pbWcubmF0aXZlRWxlbWVudC5uYXR1cmFsV2lkdGggKiB0aGlzLnpvb207XG4gICAgICB0aGlzLmluaXRBbm5vUGFnZSh0aGlzLmltZy5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRvd25sb2FkKCkge1xuICAgIGNvbnN0IGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcbiAgICBhLnNldEF0dHJpYnV0ZSgnc3R5bGUnLCAnZGlzcGxheTogbm9uZScpO1xuICAgIGEuaHJlZiA9IHRoaXMudXJsO1xuICAgIGEuZG93bmxvYWQgPSB0aGlzLmRvd25sb2FkRmlsZU5hbWU7XG4gICAgYS5jbGljaygpO1xuICAgIGEucmVtb3ZlKCk7XG4gIH1cblxuICAvLyB0aGUgcmV0dXJuZWQgcHJvbWlzZSBpcyBhIHdvcmstYXJvdW5kXG4gIHNldFpvb21WYWx1ZSh6b29tVmFsdWUpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIHRoaXMuem9vbSA9IHpvb21WYWx1ZTtcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy56b29tVmFsdWVTdWJqZWN0Lm5leHQoem9vbVZhbHVlKTtcbiAgICAgIHJlc29sdmUodHJ1ZSk7XG4gICAgfSk7XG4gIH1cblxuICBjYWxjdWxhdGVab29tVmFsdWUoem9vbVZhbHVlLCBpbmNyZW1lbnQgPSAwKSB7XG4gICAgY29uc3QgbmV3Wm9vbVZhbHVlID0gem9vbVZhbHVlICsgaW5jcmVtZW50O1xuICAgIGlmIChuZXdab29tVmFsdWUgPiA1KSB7IHJldHVybiA1OyB9XG4gICAgaWYgKG5ld1pvb21WYWx1ZSA8IDAuMSkgeyByZXR1cm4gMC4xOyB9XG4gICAgcmV0dXJuICtuZXdab29tVmFsdWUudG9GaXhlZCgyKTtcbiAgfVxuXG4gIG9uTG9hZEVycm9yKHVybCkge1xuICAgIHRoaXMucmVzcG9uc2UgPSB0aGlzLnZpZXdlclV0aWxTZXJ2aWNlLnZhbGlkYXRlRmlsZSh1cmwpXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICBuZXh0ID0+IG5leHQsXG4gICAgICAgIGVycm9yID0+IHtcbiAgICAgICAgICB0aGlzLnZpZXdlckV4Y2VwdGlvbiA9IG5ldyBWaWV3ZXJFeGNlcHRpb24oZXJyb3IubmFtZSxcbiAgICAgICAgICAgIHsgaHR0cFJlc3BvbnNlQ29kZTogZXJyb3Iuc3RhdHVzLCBtZXNzYWdlOiBlcnJvci5tZXNzYWdlIH0pO1xuICAgICAgICB9KTtcblxuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gYENvdWxkIG5vdCBsb2FkIHRoZSBpbWFnZSBcIiR7dGhpcy51cmx9XCJgO1xuICAgIHRoaXMubWVkaWFMb2FkU3RhdHVzLmVtaXQoUmVzcG9uc2VUeXBlLkZBSUxVUkUpO1xuICAgIHRoaXMuaW1hZ2VWaWV3ZXJFeGNlcHRpb24uZW1pdCh0aGlzLnZpZXdlckV4Y2VwdGlvbik7XG4gIH1cblxuICBvbkxvYWQoaW1nOiBhbnkpIHtcbiAgICB0aGlzLm1lZGlhTG9hZFN0YXR1cy5lbWl0KFJlc3BvbnNlVHlwZS5TVUNDRVNTKTtcbiAgICB0aGlzLmluaXRBbm5vUGFnZShpbWcpO1xuICB9XG5cbiAgaW5pdEFubm9QYWdlKGltZzogYW55KSB7XG4gICAgdGhpcy5pbWFnZUhlaWdodCA9IHRoaXMucm90YXRpb24gJSAxODAgIT09IDAgPyBpbWcub2Zmc2V0V2lkdGggOiBpbWcub2Zmc2V0SGVpZ2h0O1xuICAgIHRoaXMuaW1hZ2VXaWR0aCA9IHRoaXMucm90YXRpb24gJSAxODAgIT09IDAgPyBpbWcub2Zmc2V0SGVpZ2h0IDogaW1nLm9mZnNldFdpZHRoO1xuICAgIHRoaXMuaW1hZ2VMZWZ0ID0gdGhpcy5yb3RhdGlvbiAlIDE4MCAhPT0gMCA/IGltZy5vZmZzZXRUb3AgOiBpbWcub2Zmc2V0TGVmdDtcbiAgICB0aGlzLmltYWdlVG9wID0gdGhpcy5yb3RhdGlvbiAlIDE4MCAhPT0gMCA/IGltZy5vZmZzZXRMZWZ0IDogaW1nLm9mZnNldFRvcDtcbiAgICBjb25zdCBwYXlsb2FkOiBhbnkgPSBbe1xuICAgICAgZGl2OiB7XG4gICAgICAgIHNjcm9sbEhlaWdodDogdGhpcy5pbWFnZUhlaWdodCxcbiAgICAgICAgc2Nyb2xsV2lkdGg6IHRoaXMuaW1hZ2VXaWR0aCxcbiAgICAgICAgb2Zmc2V0TGVmdDogdGhpcy5pbWFnZUxlZnQsXG4gICAgICB9LFxuICAgICAgcGFnZU51bWJlcjogMSxcbiAgICAgIHNjYWxlOiB0aGlzLnpvb20sXG4gICAgICByb3RhdGlvbjogdGhpcy5yb3RhdGlvbixcbiAgICAgIGlkOiAxXG4gICAgfV07XG5cbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBmcm9tRG9jdW1lbnQuQWRkUGFnZXMocGF5bG9hZCkpO1xuICB9XG5cbiAgdG9nZ2xlQ29tbWVudHNTdW1tYXJ5KCkge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy50b2dnbGVDb21tZW50c1N1bW1hcnkoIXRoaXMudG9vbGJhckV2ZW50cy5zaG93Q29tbWVudFN1bW1hcnkuZ2V0VmFsdWUoKSk7XG4gIH1cbn1cbiIsIjxtdi1jb21tZW50LXNldC1oZWFkZXJcbiAgW25nQ2xhc3NdPVwieyAnc2hvdy1jb21tZW50cy1wYW5lbCc6IHNob3dDb21tZW50c1BhbmVsIH1cIlxuICBbc2hvd0NvbW1lbnRTdW1tYXJ5XT1cInRvb2xiYXJCdXR0b25zLnNob3dDb21tZW50U3VtbWFyeVwiXG4gIChzaG93Q29tbWVudFN1bW1hcnlEaWFsb2cpPVwidG9nZ2xlQ29tbWVudHNTdW1tYXJ5KClcIlxuPlxuPC9tdi1jb21tZW50LXNldC1oZWFkZXI+XG48ZGl2XG4gIGlkPVwidmlld2VyLXdyYXBwZXJcIlxuICBbbmdTdHlsZV09XCJ7IGhlaWdodDogaGVpZ2h0IH1cIlxuICBbbmdDbGFzc109XCJ7IGdyYWJORHJhZzogZW5hYmxlR3JhYk5EcmFnIH1cIlxuICAqbmdJZj1cInVybCAmJiAhZXJyb3JNZXNzYWdlXCJcbj5cbiAgPGRpdlxuICAgICNpbWFnZUNvbnRhaW5lclxuICAgIGlkPVwiaW1hZ2UtY29udGFpbmVyXCJcbiAgICBtdkdyYWJORHJhZ1xuICAgIFtkcmFnWF09XCJpbWFnZUNvbnRhaW5lclwiXG4gICAgW2RyYWdFbmFibGVkXT1cImVuYWJsZUdyYWJORHJhZ1wiXG4gICAgKHNjcm9sbCk9XCIoJGV2ZW50KVwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ2ltYWdlLWNvbnRhaW5lcic6IHRydWUsXG4gICAgICBhbm5vdGF0aW9uczogZW5hYmxlQW5ub3RhdGlvbnMsXG4gICAgICAnc2hvdy1jb21tZW50cy1wYW5lbCc6IHNob3dDb21tZW50c1BhbmVsXG4gICAgfVwiXG4gID5cbiAgICA8aW1nXG4gICAgICAjaW1nXG4gICAgICBhbHQ9XCJcIlxuICAgICAgW3NyY109XCJ1cmxcIlxuICAgICAgW25nQ2xhc3NdPVwiJ3JvdCcgKyByb3RhdGlvblwiXG4gICAgICAoZXJyb3IpPVwib25Mb2FkRXJyb3IodXJsKVwiXG4gICAgICAobG9hZCk9XCJvbkxvYWQoaW1nKVwiXG4gICAgLz5cbiAgICA8bXYtcmVkYWN0aW9uc1xuICAgICAgKm5nSWY9XCJ0b29sYmFyRXZlbnRzLnJlZGFjdGlvbk1vZGUgfCBhc3luYzsgZWxzZSBhbm5vdGF0aW9uVGVtcGxhdGVcIlxuICAgICAgW3pvb21dPVwiem9vbVwiXG4gICAgICBbcm90YXRlXT1cInJvdGF0aW9uXCJcbiAgICA+PC9tdi1yZWRhY3Rpb25zPlxuICAgIDxuZy10ZW1wbGF0ZSAjYW5ub3RhdGlvblRlbXBsYXRlPlxuICAgICAgPG12LW1ldGFkYXRhLWxheWVyXG4gICAgICAgICpuZ0lmPVwiZW5hYmxlQW5ub3RhdGlvbnMgJiYgYW5ub3RhdGlvblNldFwiXG4gICAgICAgIFt6b29tXT1cInpvb21cIlxuICAgICAgICBbcm90YXRlXT1cInJvdGF0aW9uXCJcbiAgICAgID5cbiAgICAgIDwvbXYtbWV0YWRhdGEtbGF5ZXI+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG5cbiAgPG12LWNvbW1lbnQtc2V0XG4gICAgW2NvbnRlbnRTY3JvbGxUb3BdPVwiaW1hZ2VDb250YWluZXIuc2Nyb2xsVG9wXCJcbiAgICAqbmdJZj1cIlxuICAgICAgZW5hYmxlQW5ub3RhdGlvbnMgJiZcbiAgICAgIGFubm90YXRpb25TZXQgJiZcbiAgICAgICh0b29sYmFyRXZlbnRzLnJlZGFjdGlvbk1vZGUgfCBhc3luYykgIT09IHRydWVcbiAgICBcIlxuICAgIFthbm5vdGF0aW9uU2V0XT1cImFubm90YXRpb25TZXRcIlxuICAgIFt6b29tXT1cInpvb21cIlxuICAgIFtyb3RhdGVdPVwicm90YXRpb25cIlxuICAgIFtoZWlnaHRdPVwiaW1hZ2VIZWlnaHRcIlxuICA+XG4gIDwvbXYtY29tbWVudC1zZXQ+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -35,10 +35,10 @@ export class MultimediaPlayerComponent {
|
|
|
35
35
|
onError() {
|
|
36
36
|
this.playbackMsg = 'error';
|
|
37
37
|
}
|
|
38
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MultimediaPlayerComponent, deps: [{ token: i1.ToolbarEventService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
39
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MultimediaPlayerComponent, selector: "mv-multimedia-player", inputs: { url: "url", downloadFileName: "downloadFileName", multimediaOn: "multimediaOn" }, outputs: { loadStatus: "loadStatus" }, viewQueries: [{ propertyName: "downloadLink", first: true, predicate: ["downloadLink"], descendants: true }, { propertyName: "videoPlayer", first: true, predicate: ["videoPlayer"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"govuk-width-container\">\n <div class=\"govuk-notification-banner__content\">\n <p>\n <span *ngIf=\"multimediaOn && playbackMsg === 'loading'\">{{\n \"Loading multimedia content ...\" | rpxTranslate\n }}</span>\n <span *ngIf=\"!multimediaOn\"\n >{{ \"Multimedia playback is not enabled, \" | rpxTranslate }}\n </span>\n <span *ngIf=\"multimediaOn && playbackMsg === 'success'\"\n >{{ \"Use the player to play to the file or\" | rpxTranslate }}\n </span>\n <span *ngIf=\"multimediaOn && playbackMsg === 'error'\"\n >{{ \"Mime type not supported.\" | rpxTranslate }}\n </span>\n <a\n *ngIf=\"!multimediaOn || playbackMsg !== 'loading'\"\n #downloadLink\n [href]=\"url\"\n [download]=\"downloadFileName\"\n >{{ \"Click here to download\" | rpxTranslate }}</a\n >\n </p>\n <video\n #videoPlayer\n *ngIf=\"multimediaOn\"\n width=\"100%\"\n height=\"100%\"\n preload=\"auto\"\n (canplay)=\"onSuccess()\"\n controls\n >\n <source (error)=\"onError()\" [src]=\"url\" type=\"video/mp4\" />\n <source\n (error)=\"onError()\"\n [src]=\"url\"\n type=\"video/mp4; codecs='avc1, av01, hvc1, hev1, mp4v, mp4a.40.2, opus'\"\n />\n <source (error)=\"onError()\" [src]=\"url\" type=\"video/ogg\" />\n <source\n (error)=\"onError()\"\n [src]=\"url\"\n type=\"video/ogg; codecs='theora, vp8, vp9, flac, opus, vorbis'\"\n />\n <source (error)=\"onError()\" [src]=\"url\" type=\"video/webm\" />\n <source\n (error)=\"onError()\"\n [src]=\"url\"\n type=\"video/webm; codecs='vp8, vp9, vorbis, opus'\"\n />\n </video>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.RpxTranslatePipe, name: "rpxTranslate" }] }); }
|
|
38
40
|
}
|
|
39
|
-
|
|
40
|
-
/** @nocollapse */ MultimediaPlayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MultimediaPlayerComponent, selector: "mv-multimedia-player", inputs: { url: "url", downloadFileName: "downloadFileName", multimediaOn: "multimediaOn" }, outputs: { loadStatus: "loadStatus" }, viewQueries: [{ propertyName: "downloadLink", first: true, predicate: ["downloadLink"], descendants: true }, { propertyName: "videoPlayer", first: true, predicate: ["videoPlayer"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"govuk-width-container\">\n <div class=\"govuk-notification-banner__content\">\n <p>\n <span *ngIf=\"multimediaOn && playbackMsg === 'loading'\">{{\n \"Loading multimedia content ...\" | rpxTranslate\n }}</span>\n <span *ngIf=\"!multimediaOn\"\n >{{ \"Multimedia playback is not enabled, \" | rpxTranslate }}\n </span>\n <span *ngIf=\"multimediaOn && playbackMsg === 'success'\"\n >{{ \"Use the player to play to the file or\" | rpxTranslate }}\n </span>\n <span *ngIf=\"multimediaOn && playbackMsg === 'error'\"\n >{{ \"Mime type not supported.\" | rpxTranslate }}\n </span>\n <a\n *ngIf=\"!multimediaOn || playbackMsg !== 'loading'\"\n #downloadLink\n [href]=\"url\"\n [download]=\"downloadFileName\"\n >{{ \"Click here to download\" | rpxTranslate }}</a\n >\n </p>\n <video\n #videoPlayer\n *ngIf=\"multimediaOn\"\n width=\"100%\"\n height=\"100%\"\n preload=\"auto\"\n (canplay)=\"onSuccess()\"\n controls\n >\n <source (error)=\"onError()\" [src]=\"url\" type=\"video/mp4\" />\n <source\n (error)=\"onError()\"\n [src]=\"url\"\n type=\"video/mp4; codecs='avc1, av01, hvc1, hev1, mp4v, mp4a.40.2, opus'\"\n />\n <source (error)=\"onError()\" [src]=\"url\" type=\"video/ogg\" />\n <source\n (error)=\"onError()\"\n [src]=\"url\"\n type=\"video/ogg; codecs='theora, vp8, vp9, flac, opus, vorbis'\"\n />\n <source (error)=\"onError()\" [src]=\"url\" type=\"video/webm\" />\n <source\n (error)=\"onError()\"\n [src]=\"url\"\n type=\"video/webm; codecs='vp8, vp9, vorbis, opus'\"\n />\n </video>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i3.RpxTranslatePipe, name: "rpxTranslate" }] });
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MultimediaPlayerComponent, decorators: [{
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MultimediaPlayerComponent, decorators: [{
|
|
42
42
|
type: Component,
|
|
43
43
|
args: [{ selector: 'mv-multimedia-player', template: "<div class=\"govuk-width-container\">\n <div class=\"govuk-notification-banner__content\">\n <p>\n <span *ngIf=\"multimediaOn && playbackMsg === 'loading'\">{{\n \"Loading multimedia content ...\" | rpxTranslate\n }}</span>\n <span *ngIf=\"!multimediaOn\"\n >{{ \"Multimedia playback is not enabled, \" | rpxTranslate }}\n </span>\n <span *ngIf=\"multimediaOn && playbackMsg === 'success'\"\n >{{ \"Use the player to play to the file or\" | rpxTranslate }}\n </span>\n <span *ngIf=\"multimediaOn && playbackMsg === 'error'\"\n >{{ \"Mime type not supported.\" | rpxTranslate }}\n </span>\n <a\n *ngIf=\"!multimediaOn || playbackMsg !== 'loading'\"\n #downloadLink\n [href]=\"url\"\n [download]=\"downloadFileName\"\n >{{ \"Click here to download\" | rpxTranslate }}</a\n >\n </p>\n <video\n #videoPlayer\n *ngIf=\"multimediaOn\"\n width=\"100%\"\n height=\"100%\"\n preload=\"auto\"\n (canplay)=\"onSuccess()\"\n controls\n >\n <source (error)=\"onError()\" [src]=\"url\" type=\"video/mp4\" />\n <source\n (error)=\"onError()\"\n [src]=\"url\"\n type=\"video/mp4; codecs='avc1, av01, hvc1, hev1, mp4v, mp4a.40.2, opus'\"\n />\n <source (error)=\"onError()\" [src]=\"url\" type=\"video/ogg\" />\n <source\n (error)=\"onError()\"\n [src]=\"url\"\n type=\"video/ogg; codecs='theora, vp8, vp9, flac, opus, vorbis'\"\n />\n <source (error)=\"onError()\" [src]=\"url\" type=\"video/webm\" />\n <source\n (error)=\"onError()\"\n [src]=\"url\"\n type=\"video/webm; codecs='vp8, vp9, vorbis, opus'\"\n />\n </video>\n </div>\n</div>\n" }]
|
|
44
44
|
}], ctorParameters: function () { return [{ type: i1.ToolbarEventService }]; }, propDecorators: { url: [{
|
|
@@ -56,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
56
56
|
type: ViewChild,
|
|
57
57
|
args: ['videoPlayer', { static: false }]
|
|
58
58
|
}] } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGltZWRpYS1wbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvdmlld2Vycy9tdWx0aW1lZGlhLXBsYXllci9tdWx0aW1lZGlhLXBsYXllci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL211bHRpbWVkaWEtcGxheWVyL211bHRpbWVkaWEtcGxheWVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUVMLFNBQVMsRUFFVCxNQUFNLEVBQ04sWUFBWSxFQUdiLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFNekQsTUFBTSxPQUFPLHlCQUF5QjtJQWVwQyxZQUNrQixhQUFrQztRQUFsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFWMUMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBS3hELGdCQUFXLEdBQUcsU0FBUyxDQUFDO0lBTXJCLENBQUM7SUFFRyxRQUFRO1FBQ2IsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWU7YUFDbkQsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxXQUFXLENBQUMsT0FBc0I7UUFDdkMsSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDO1lBQzdCLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQztJQUMvQixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDO0lBQzdCLENBQUM7a0lBaERVLHlCQUF5QjtzSEFBekIseUJBQXlCLCtaQ3BCdEMsd3dEQXFEQTs7NEZEakNhLHlCQUF5QjtrQkFKckMsU0FBUzsrQkFDRSxzQkFBc0I7MEdBS3ZCLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNO2dCQUVxQyxZQUFZO3NCQUF2RCxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUM7Z0JBQ0MsV0FBVztzQkFBckQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi8uLi90b29sYmFyL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJlc3BvbnNlVHlwZSB9IGZyb20gJy4uL3ZpZXdlci1leGNlcHRpb24ubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1tdWx0aW1lZGlhLXBsYXllcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tdWx0aW1lZGlhLXBsYXllci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTXVsdGltZWRpYVBsYXllckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIHVybDogc3RyaW5nO1xuICBASW5wdXQoKSBkb3dubG9hZEZpbGVOYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIG11bHRpbWVkaWFPbjogYm9vbGVhbjtcblxuICBAT3V0cHV0KCkgbG9hZFN0YXR1cyA9IG5ldyBFdmVudEVtaXR0ZXI8UmVzcG9uc2VUeXBlPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2Rvd25sb2FkTGluaycsIHtzdGF0aWM6IGZhbHNlfSkgZG93bmxvYWRMaW5rOiBFbGVtZW50UmVmO1xuICBAVmlld0NoaWxkKCd2aWRlb1BsYXllcicsIHtzdGF0aWM6IGZhbHNlfSkgdmlkZW9QbGF5ZXI6IEVsZW1lbnRSZWY7XG5cbiAgcGxheWJhY2tNc2cgPSAnbG9hZGluZyc7XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZSxcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMudG9vbGJhckV2ZW50cy5kb3dubG9hZFN1YmplY3RcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5kb3dubG9hZExpbmsubmF0aXZlRWxlbWVudC5jbGljaygpKTtcbiAgICB0aGlzLmxvYWRTdGF0dXMuZW1pdChSZXNwb25zZVR5cGUuU1VDQ0VTUyk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLnVybCkge1xuICAgICAgdGhpcy5yZWxvYWRWaWRlbygpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICByZWxvYWRWaWRlbygpIHtcbiAgICBpZiAodGhpcy52aWRlb1BsYXllcikge1xuICAgICAgdGhpcy5wbGF5YmFja01zZyA9ICdsb2FkaW5nJztcbiAgICAgIHRoaXMudmlkZW9QbGF5ZXIubmF0aXZlRWxlbWVudC5sb2FkKCk7XG4gICAgfVxuICB9XG5cbiAgb25TdWNjZXNzKCkge1xuICAgIHRoaXMucGxheWJhY2tNc2cgPSAnc3VjY2Vzcyc7XG4gIH1cblxuICBvbkVycm9yKCkge1xuICAgIHRoaXMucGxheWJhY2tNc2cgPSAnZXJyb3InO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZ292dWstd2lkdGgtY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19jb250ZW50XCI+XG4gICAgPHA+XG4gICAgICA8c3BhbiAqbmdJZj1cIm11bHRpbWVkaWFPbiAmJiBwbGF5YmFja01zZyA9PT0gJ2xvYWRpbmcnXCI+e3tcbiAgICAgICAgXCJMb2FkaW5nIG11bHRpbWVkaWEgY29udGVudCAuLi5cIiB8IHJweFRyYW5zbGF0ZVxuICAgICAgfX08L3NwYW4+XG4gICAgICA8c3BhbiAqbmdJZj1cIiFtdWx0aW1lZGlhT25cIlxuICAgICAgICA+e3sgXCJNdWx0aW1lZGlhIHBsYXliYWNrIGlzIG5vdCBlbmFibGVkLCBcIiB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gKm5nSWY9XCJtdWx0aW1lZGlhT24gJiYgcGxheWJhY2tNc2cgPT09ICdzdWNjZXNzJ1wiXG4gICAgICAgID57eyBcIlVzZSB0aGUgcGxheWVyIHRvIHBsYXkgdG8gdGhlIGZpbGUgb3JcIiB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gKm5nSWY9XCJtdWx0aW1lZGlhT24gJiYgcGxheWJhY2tNc2cgPT09ICdlcnJvcidcIlxuICAgICAgICA+e3sgXCJNaW1lIHR5cGUgbm90IHN1cHBvcnRlZC5cIiB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgPC9zcGFuPlxuICAgICAgPGFcbiAgICAgICAgKm5nSWY9XCIhbXVsdGltZWRpYU9uIHx8IHBsYXliYWNrTXNnICE9PSAnbG9hZGluZydcIlxuICAgICAgICAjZG93bmxvYWRMaW5rXG4gICAgICAgIFtocmVmXT1cInVybFwiXG4gICAgICAgIFtkb3dubG9hZF09XCJkb3dubG9hZEZpbGVOYW1lXCJcbiAgICAgICAgPnt7IFwiQ2xpY2sgaGVyZSB0byBkb3dubG9hZFwiIHwgcnB4VHJhbnNsYXRlIH19PC9hXG4gICAgICA+XG4gICAgPC9wPlxuICAgIDx2aWRlb1xuICAgICAgI3ZpZGVvUGxheWVyXG4gICAgICAqbmdJZj1cIm11bHRpbWVkaWFPblwiXG4gICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICBwcmVsb2FkPVwiYXV0b1wiXG4gICAgICAoY2FucGxheSk9XCJvblN1Y2Nlc3MoKVwiXG4gICAgICBjb250cm9sc1xuICAgID5cbiAgICAgIDxzb3VyY2UgKGVycm9yKT1cIm9uRXJyb3IoKVwiIFtzcmNdPVwidXJsXCIgdHlwZT1cInZpZGVvL21wNFwiIC8+XG4gICAgICA8c291cmNlXG4gICAgICAgIChlcnJvcik9XCJvbkVycm9yKClcIlxuICAgICAgICBbc3JjXT1cInVybFwiXG4gICAgICAgIHR5cGU9XCJ2aWRlby9tcDQ7IGNvZGVjcz0nYXZjMSwgYXYwMSwgaHZjMSwgaGV2MSwgbXA0diwgbXA0YS40MC4yLCBvcHVzJ1wiXG4gICAgICAvPlxuICAgICAgPHNvdXJjZSAoZXJyb3IpPVwib25FcnJvcigpXCIgW3NyY109XCJ1cmxcIiB0eXBlPVwidmlkZW8vb2dnXCIgLz5cbiAgICAgIDxzb3VyY2VcbiAgICAgICAgKGVycm9yKT1cIm9uRXJyb3IoKVwiXG4gICAgICAgIFtzcmNdPVwidXJsXCJcbiAgICAgICAgdHlwZT1cInZpZGVvL29nZzsgY29kZWNzPSd0aGVvcmEsIHZwOCwgdnA5LCBmbGFjLCBvcHVzLCB2b3JiaXMnXCJcbiAgICAgIC8+XG4gICAgICA8c291cmNlIChlcnJvcik9XCJvbkVycm9yKClcIiBbc3JjXT1cInVybFwiIHR5cGU9XCJ2aWRlby93ZWJtXCIgLz5cbiAgICAgIDxzb3VyY2VcbiAgICAgICAgKGVycm9yKT1cIm9uRXJyb3IoKVwiXG4gICAgICAgIFtzcmNdPVwidXJsXCJcbiAgICAgICAgdHlwZT1cInZpZGVvL3dlYm07IGNvZGVjcz0ndnA4LCB2cDksIHZvcmJpcywgb3B1cydcIlxuICAgICAgLz5cbiAgICA8L3ZpZGVvPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -30,11 +30,11 @@ export class PdfJsWrapperFactory {
|
|
|
30
30
|
pdfWrapper() {
|
|
31
31
|
return this.pdfJsWrapper;
|
|
32
32
|
}
|
|
33
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PdfJsWrapperFactory, deps: [{ token: i1.ToolbarEventService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
34
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PdfJsWrapperFactory, providedIn: 'root' }); }
|
|
33
35
|
}
|
|
34
|
-
|
|
35
|
-
/** @nocollapse */ PdfJsWrapperFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PdfJsWrapperFactory, providedIn: 'root' });
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PdfJsWrapperFactory, decorators: [{
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PdfJsWrapperFactory, decorators: [{
|
|
37
37
|
type: Injectable,
|
|
38
38
|
args: [{ providedIn: 'root' }]
|
|
39
39
|
}], ctorParameters: function () { return [{ type: i1.ToolbarEventService }]; } });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWpzLXdyYXBwZXIucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLWpzL3BkZi1qcy13cmFwcGVyLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxXQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQW1DLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQU0vQixNQUFNLE9BQU8sbUJBQW1CO0lBTTlCLFlBQTZCLGFBQWtDO1FBQWxDLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUM3RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFxQjtRQUNqQyxNQUFNLGlCQUFpQixHQUFHLElBQUksV0FBVyxDQUFDLGlCQUFpQixDQUFDO1lBQzFELFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDeEIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxTQUFTLEdBQUcsSUFBSSxXQUFXLENBQUMsU0FBUyxDQUFDO1lBQzFDLFNBQVMsRUFBRSxTQUFTLENBQUMsYUFBYTtZQUNsQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsY0FBYyxFQUFFLGlCQUFpQjtZQUNqQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsa0JBQWtCLEVBQUUsaUJBQWlCO1lBQ3JDLGFBQWEsRUFBRSxDQUFDO1NBQ2pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXRDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxZQUFZLENBQ2xDLFNBQVMsRUFDVCxJQUFJLFdBQVcsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLEVBQ25DLElBQUksQ0FBQyxhQUFhLEVBQ2xCLElBQUksT0FBTyxFQUFVLEVBQ3JCLElBQUksT0FBTyxFQUF3QixFQUNuQyxJQUFJLE9BQU8sRUFBTyxFQUNsQixJQUFJLE9BQU8sRUFBYSxFQUN4QixJQUFJLE9BQU8sRUFBRSxFQUNiLElBQUksT0FBTyxFQUFlLEVBQzFCLElBQUksT0FBTyxFQUE2QixDQUN6QyxDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7a0lBOUNVLG1CQUFtQjtzSUFBbkIsbUJBQW1CLGNBRE4sTUFBTTs7NEZBQ25CLG1CQUFtQjtrQkFEL0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwZGZqc1ZpZXdlciBmcm9tICdwZGZqcy1kaXN0L3dlYi9wZGZfdmlld2VyJztcbmltcG9ydCB7IEVsZW1lbnRSZWYsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvY3VtZW50TG9hZFByb2dyZXNzLCBQYWdlRXZlbnQsIFBkZkpzV3JhcHBlciB9IGZyb20gJy4vcGRmLWpzLXdyYXBwZXInO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG9vbGJhckV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Rvb2xiYXIvdG9vbGJhci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IE91dGxpbmUgfSBmcm9tICcuLi9zaWRlLWJhci9vdXRsaW5lLWl0ZW0vb3V0bGluZS5tb2RlbCc7XG5pbXBvcnQgeyBQZGZQb3NpdGlvbiB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL3JlZHVjZXJzL2RvY3VtZW50LnJlZHVjZXInO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFBkZkpzV3JhcHBlckZhY3Rvcnkge1xuXG4gIHByaXZhdGUgbGlua1NlcnZpY2U6IHBkZmpzVmlld2VyLlBERkxpbmtTZXJ2aWNlO1xuICBwcml2YXRlIGV2ZW50QnVzOiBwZGZqc1ZpZXdlci5FdmVudEJ1cztcbiAgcHJpdmF0ZSBwZGZKc1dyYXBwZXI6IFBkZkpzV3JhcHBlcjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHRvb2xiYXJFdmVudHM6IFRvb2xiYXJFdmVudFNlcnZpY2UpIHtcbiAgICB0aGlzLmxpbmtTZXJ2aWNlID0gbmV3IHBkZmpzVmlld2VyLlBERkxpbmtTZXJ2aWNlKCk7XG4gICAgdGhpcy5ldmVudEJ1cyA9IG5ldyBwZGZqc1ZpZXdlci5FdmVudEJ1cygpO1xuICB9XG5cbiAgcHVibGljIGNyZWF0ZShjb250YWluZXI6IEVsZW1lbnRSZWYpOiBQZGZKc1dyYXBwZXIge1xuICAgIGNvbnN0IHBkZkZpbmRDb250cm9sbGVyID0gbmV3IHBkZmpzVmlld2VyLlBERkZpbmRDb250cm9sbGVyKHtcbiAgICAgIGxpbmtTZXJ2aWNlOiB0aGlzLmxpbmtTZXJ2aWNlLFxuICAgICAgZXZlbnRCdXM6IHRoaXMuZXZlbnRCdXNcbiAgICB9KTtcblxuICAgIGNvbnN0IHBkZlZpZXdlciA9IG5ldyBwZGZqc1ZpZXdlci5QREZWaWV3ZXIoe1xuICAgICAgY29udGFpbmVyOiBjb250YWluZXIubmF0aXZlRWxlbWVudCxcbiAgICAgIGxpbmtTZXJ2aWNlOiB0aGlzLmxpbmtTZXJ2aWNlLFxuICAgICAgZmluZENvbnRyb2xsZXI6IHBkZkZpbmRDb250cm9sbGVyLFxuICAgICAgZXZlbnRCdXM6IHRoaXMuZXZlbnRCdXMsXG4gICAgICBpbWFnZVJlc291cmNlc1BhdGg6ICcvYXNzZXRzL2ltYWdlcy8nLFxuICAgICAgdGV4dExheWVyTW9kZTogMlxuICAgIH0pO1xuXG4gICAgdGhpcy5saW5rU2VydmljZS5zZXRWaWV3ZXIocGRmVmlld2VyKTtcblxuICAgIHRoaXMucGRmSnNXcmFwcGVyID0gbmV3IFBkZkpzV3JhcHBlcihcbiAgICAgIHBkZlZpZXdlcixcbiAgICAgIG5ldyBwZGZqc1ZpZXdlci5Eb3dubG9hZE1hbmFnZXIoe30pLFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLFxuICAgICAgbmV3IFN1YmplY3Q8c3RyaW5nPigpLFxuICAgICAgbmV3IFN1YmplY3Q8RG9jdW1lbnRMb2FkUHJvZ3Jlc3M+KCksXG4gICAgICBuZXcgU3ViamVjdDxhbnk+KCksXG4gICAgICBuZXcgU3ViamVjdDxPdXRsaW5lW10+KCksXG4gICAgICBuZXcgU3ViamVjdCgpLFxuICAgICAgbmV3IFN1YmplY3Q8UGFnZUV2ZW50W10+KCksXG4gICAgICBuZXcgU3ViamVjdDx7IGxvY2F0aW9uOiBQZGZQb3NpdGlvbiB9PigpXG4gICAgKTtcblxuICAgIHJldHVybiB0aGlzLnBkZkpzV3JhcHBlcjtcbiAgfVxuXG4gIHBkZldyYXBwZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMucGRmSnNXcmFwcGVyO1xuICB9XG59XG4iXX0=
|
|
@@ -192,10 +192,10 @@ export class PdfViewerComponent {
|
|
|
192
192
|
getCurrentPageNumber() {
|
|
193
193
|
return this.pdfWrapper.getPageNumber();
|
|
194
194
|
}
|
|
195
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", 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 }); }
|
|
196
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", 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 }); }
|
|
195
197
|
}
|
|
196
|
-
|
|
197
|
-
/** @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 });
|
|
198
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PdfViewerComponent, decorators: [{
|
|
198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PdfViewerComponent, decorators: [{
|
|
199
199
|
type: Component,
|
|
200
200
|
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" }]
|
|
201
201
|
}], 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: [{
|
|
@@ -233,4 +233,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
233
233
|
}], searchBarHidden: [{
|
|
234
234
|
type: Input
|
|
235
235
|
}] } });
|
|
236
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVOLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBNkMsTUFBTSxNQUFNLENBQUM7QUFDakYsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQU81QyxPQUFPLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSzFFLE9BQU8sS0FBSyxtQkFBbUIsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEtBQUssY0FBYyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RCxPQUFPLEtBQUsscUJBQXFCLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVVsRixNQUFNLE9BQU8sa0JBQWtCO0lBMEM3QixZQUNVLEtBQTBDLEVBQzFDLFFBQXlCLEVBQ2hCLG1CQUF3QyxFQUN4QyxZQUEwQixFQUMzQixhQUFrQyxFQUNqQyxZQUFnQyxFQUN6QyxVQUFzQixFQUNkLGNBQThDO1FBUHRELFVBQUssR0FBTCxLQUFLLENBQXFDO1FBQzFDLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ2hCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDM0Isa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBQ2pDLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUN6QyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ2QsbUJBQWMsR0FBZCxjQUFjLENBQWdDO1FBaER0RCxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBQ25ELHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFtQixDQUFDO1FBQ3pELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQWFyRCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsU0FBSSxHQUFHLENBQUMsQ0FBQztRQVFULG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBR3hCLHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQVU3QixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQVl0QixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNwRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO1FBQzVELENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDSixJQUFJLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FBQyxlQUFlLENBQUM7SUFDaEQsQ0FBQztJQUVELEtBQUssQ0FBQyxrQkFBa0I7UUFDdEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDMUYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUNuRixJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWTthQUNqRCxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQ3ZFLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FDbEYsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQzVHLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ2xILENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDOUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDaEYsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FDRCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxNQUFNLENBQUMsQ0FDMUcsQ0FBQztRQUNGLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRTthQUNsRSxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxjQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2FBQzFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksaUJBQWlCLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FDaEYsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQXNCO1FBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDekU7UUFDRCxJQUFJLE9BQU8sQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNsQyxNQUFNLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMxQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDekIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztxQkFDNUQsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO2FBQzFDO1NBQ0Y7UUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDcEQ7SUFDSCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1NBQ25CO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTyxLQUFLLENBQUMsWUFBWTtRQUN4QixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLHFCQUFxQixDQUFDLGlCQUFpQixDQUFDLENBQUM7YUFDcEYsU0FBUyxDQUFDLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxRQUE4QjtRQUMzRCxJQUFJLFFBQVEsQ0FBQyxLQUFLLEVBQUU7WUFDbEIsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDakc7SUFDSCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRU8sb0JBQW9CLENBQUMsS0FBWTtRQUN2QyxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDbkYsSUFBSSxDQUFDLFlBQVksR0FBRyxnQ0FBZ0MsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDO1FBRWhFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRU8sV0FBVyxDQUFDLEtBQWtCO1FBQ3BDLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksbUJBQW1CLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDOUQ7SUFDSCxDQUFDO0lBRUQsSUFDSSxlQUFlLENBQUMsTUFBZTtRQUNqQyxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksTUFBTSxFQUFFO1lBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDL0I7SUFDSCxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVPLGNBQWMsQ0FBQyxRQUFnQjtRQUNyQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQztRQUVqRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztRQUM1QixJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFTyxPQUFPLENBQUMsVUFBa0I7UUFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNoRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRU8sUUFBUSxDQUFDLFVBQWtCO1FBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDckMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO1FBQ2hFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDakQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDMUQ7SUFDSCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsU0FBUyxFQUFFLFNBQVMsR0FBRyxDQUFDO1FBQ3pDLE1BQU0sWUFBWSxHQUFHLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0MsSUFBSSxZQUFZLEdBQUcsQ0FBQyxFQUFFO1lBQ3BCLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxJQUFJLFlBQVksR0FBRyxHQUFHLEVBQUU7WUFDdEIsT0FBTyxHQUFHLENBQUM7U0FDWjtRQUNELE9BQU8sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTyxlQUFlLENBQUMsV0FBa0I7UUFDeEMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN0QyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekMsQ0FBQzs7bUlBcE9VLGtCQUFrQjt1SEFBbEIsa0JBQWtCLGt2QkN6Qy9CLG1qRkFzRkE7NEZEN0NhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxlQUFlLGlCQUVWLGlCQUFpQixDQUFDLElBQUk7c1RBSTNCLGVBQWU7c0JBQXhCLE1BQU07Z0JBQ0csa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBRUUsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBS0csTUFBTTtzQkFBZCxLQUFLO2dCQVcwQyxlQUFlO3NCQUE5RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDSCxTQUFTO3NCQUFuRCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBNEhyQyxlQUFlO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYXN5bmNTY2hlZHVsZXIsIEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIHRhcCwgdGhyb3R0bGVUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHsgRG9jdW1lbnRMb2FkUHJvZ3Jlc3MsIFBhZ2VFdmVudCwgUGRmSnNXcmFwcGVyIH0gZnJvbSAnLi9wZGYtanMvcGRmLWpzLXdyYXBwZXInO1xuaW1wb3J0IHsgUGRmSnNXcmFwcGVyRmFjdG9yeSB9IGZyb20gJy4vcGRmLWpzL3BkZi1qcy13cmFwcGVyLnByb3ZpZGVyJztcbmltcG9ydCB7IEFubm90YXRpb25TZXQgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXNldC5tb2RlbCc7XG5pbXBvcnQgeyBUb29sYmFyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9vbGJhci90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJpbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJpbnQuc2VydmljZSc7XG5pbXBvcnQgeyBSZXNwb25zZVR5cGUsIFZpZXdlckV4Y2VwdGlvbiB9IGZyb20gJy4uL3ZpZXdlci1leGNlcHRpb24ubW9kZWwnO1xuaW1wb3J0IHsgVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9vbGJhci90b29sYmFyLWJ1dHRvbi12aXNpYmlsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbWVudFNldENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Fubm90YXRpb25zL2NvbW1lbnQtc2V0L2NvbW1lbnQtc2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPdXRsaW5lIH0gZnJvbSAnLi9zaWRlLWJhci9vdXRsaW5lLWl0ZW0vb3V0bGluZS5tb2RlbCc7XG5pbXBvcnQgKiBhcyBmcm9tU3RvcmUgZnJvbSAnLi4vLi4vc3RvcmUvcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0ICogYXMgZnJvbURvY3VtZW50QWN0aW9ucyBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2RvY3VtZW50LmFjdGlvbnMnO1xuaW1wb3J0IHsgUGRmUG9zaXRpb25VcGRhdGUgfSBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2RvY3VtZW50LmFjdGlvbnMnO1xuaW1wb3J0ICogYXMgZnJvbVRhZ0FjdGlvbnMgZnJvbSAnLi4vLi4vc3RvcmUvYWN0aW9ucy90YWcuYWN0aW9ucyc7XG5pbXBvcnQgeyBTZXRDYXNlSWQgfSBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2ljcC5hY3Rpb25zJztcbmltcG9ydCAqIGFzIGZyb21Eb2N1bWVudHNTZWxlY3RvciBmcm9tICcuLi8uLi9zdG9yZS9zZWxlY3RvcnMvZG9jdW1lbnQuc2VsZWN0b3JzJztcbmltcG9ydCB7IEljcFN0YXRlIH0gZnJvbSAnLi4vLi4vaWNwL2ljcC5pbnRlcmZhY2VzJztcbmltcG9ydCB7IFZpZXdlckV2ZW50U2VydmljZSB9IGZyb20gJy4uL3ZpZXdlci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEljcFNlcnZpY2UgfSBmcm9tICcuLi8uLi9pY3AvaWNwLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1wZGYtdmlld2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BkZi12aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFBkZlZpZXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblxuICBAT3V0cHV0KCkgbWVkaWFMb2FkU3RhdHVzID0gbmV3IEV2ZW50RW1pdHRlcjxSZXNwb25zZVR5cGU+KCk7XG4gIEBPdXRwdXQoKSBwZGZWaWV3ZXJFeGNlcHRpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFZpZXdlckV4Y2VwdGlvbj4oKTtcbiAgQE91dHB1dCgpIGRvY3VtZW50VGl0bGUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBASW5wdXQoKSBkb3dubG9hZFVybDogc3RyaW5nO1xuICBASW5wdXQoKSB1cmw6IHN0cmluZztcbiAgQElucHV0KCkgZG93bmxvYWRGaWxlTmFtZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGVuYWJsZUFubm90YXRpb25zOiBib29sZWFuO1xuICBASW5wdXQoKSBlbmFibGVSZWRhY3Rpb25zOiBib29sZWFuO1xuICBASW5wdXQoKSBlbmFibGVJQ1A6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGFubm90YXRpb25TZXQ6IEFubm90YXRpb25TZXQgfCBudWxsO1xuICBASW5wdXQoKSBlbmFibGVSZWRhY3RTZWFyY2g6IEFubm90YXRpb25TZXQgfCBudWxsO1xuXG4gIEBJbnB1dCgpIGhlaWdodDogc3RyaW5nO1xuICBwYWdlSGVpZ2h0cyA9IFtdO1xuICByb3RhdGlvbiA9IDA7XG4gIHpvb20gPSAxO1xuXG4gIEBJbnB1dCgpIGNhc2VJZDogc3RyaW5nO1xuXG4gIGhpZ2hsaWdodE1vZGU6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGRyYXdNb2RlOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj47XG5cbiAgZG9jdW1lbnRPdXRsaW5lOiBPdXRsaW5lW107XG4gIGxvYWRpbmdEb2N1bWVudCA9IGZhbHNlO1xuICBsb2FkaW5nRG9jdW1lbnRQcm9ncmVzczogbnVtYmVyO1xuICBlcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgaGFzRGlmZmVyZW50UGFnZVNpemUgPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCd2aWV3ZXJDb250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSB2aWV3ZXJDb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKCdwZGZWaWV3ZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgcGRmVmlld2VyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICBwcml2YXRlIHBkZldyYXBwZXI6IFBkZkpzV3JhcHBlcjtcbiAgcHJpdmF0ZSAkc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgdmlld2VyRXhjZXB0aW9uOiBWaWV3ZXJFeGNlcHRpb247XG4gIHNob3dDb21tZW50c1BhbmVsOiBib29sZWFuO1xuICBzaG93SWNwUGFydGljaXBhbnRzTGlzdDogYm9vbGVhbjtcbiAgZW5hYmxlR3JhYk5EcmFnID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4sXG4gICAgcHJpdmF0ZSBpY3BTdG9yZTogU3RvcmU8SWNwU3RhdGU+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGRmSnNXcmFwcGVyRmFjdG9yeTogUGRmSnNXcmFwcGVyRmFjdG9yeSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByaW50U2VydmljZTogUHJpbnRTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld2VyRXZlbnRzOiBWaWV3ZXJFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpY3BTZXJ2aWNlOiBJY3BTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyQnV0dG9uczogVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLmhpZ2hsaWdodE1vZGUgPSB0b29sYmFyRXZlbnRzLmhpZ2hsaWdodE1vZGVTdWJqZWN0LnBpcGUodGFwKCgpID0+IHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21UYWdBY3Rpb25zLkNsZWFyRmlsdGVyVGFncygpKTtcbiAgICB9KSk7XG4gICAgdGhpcy5kcmF3TW9kZSA9IHRvb2xiYXJFdmVudHMuZHJhd01vZGVTdWJqZWN0O1xuICB9XG5cbiAgYXN5bmMgbmdBZnRlckNvbnRlbnRJbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMucGRmV3JhcHBlci5kb2N1bWVudExvYWRQcm9ncmVzcy5zdWJzY3JpYmUodiA9PiB0aGlzLm9uRG9jdW1lbnRMb2FkUHJvZ3Jlc3ModikpO1xuICAgIHRoaXMucGRmV3JhcHBlci5kb2N1bWVudExvYWRlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkRvY3VtZW50TG9hZGVkKCkpO1xuICAgIHRoaXMucGRmV3JhcHBlci5kb2N1bWVudExvYWRGYWlsZWQuc3Vic2NyaWJlKChlcnJvcikgPT4gdGhpcy5vbkRvY3VtZW50TG9hZEZhaWxlZChlcnJvcikpO1xuICAgIHRoaXMucGRmV3JhcHBlci5vdXRsaW5lTG9hZGVkLnN1YnNjcmliZShvdXRsaW5lID0+IHRoaXMuZG9jdW1lbnRPdXRsaW5lID0gb3V0bGluZSk7XG4gICAgdGhpcy5wZGZXcmFwcGVyLnBhZ2VSZW5kZXJlZC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB0aGlzLnVwZGF0ZVBhZ2VzKGV2ZW50KSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uID0gdGhpcy50b29sYmFyRXZlbnRzLnByaW50U3ViamVjdFxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnByaW50U2VydmljZS5wcmludERvY3VtZW50TmF0aXZlbHkodGhpcy51cmwpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5kb3dubG9hZFN1YmplY3Quc3Vic2NyaWJlKCgpID0+XG4gICAgICB0aGlzLnBkZldyYXBwZXIuZG93bmxvYWRGaWxlKHRoaXMuZG93bmxvYWRVcmwgfHwgdGhpcy51cmwsIHRoaXMuZG93bmxvYWRGaWxlTmFtZSlcbiAgICApKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5yb3RhdGVTdWJqZWN0LnN1YnNjcmliZShyb3RhdGUgPT4gdGhpcy5yb3RhdGVEb2N1bWVudChyb3RhdGUpKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuem9vbVN1YmplY3Quc3Vic2NyaWJlKHpvb20gPT4gdGhpcy5zZXRab29tKHpvb20pKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuc3RlcFpvb21TdWJqZWN0LnN1YnNjcmliZSh6b29tID0+IHRoaXMuc3RlcFpvb20oem9vbSkpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2hTdWJqZWN0LnN1YnNjcmliZShzZWFyY2ggPT4gdGhpcy5wZGZXcmFwcGVyLnNlYXJjaChzZWFyY2gpKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZChcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZXRDdXJyZW50UGFnZVN1YmplY3Quc3Vic2NyaWJlKHBhZ2VOdW1iZXIgPT4gdGhpcy5wZGZXcmFwcGVyLnNldFBhZ2VOdW1iZXIocGFnZU51bWJlcikpXG4gICAgKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLmNoYW5nZVBhZ2VCeURlbHRhU3ViamVjdC5zdWJzY3JpYmUocGFnZU51bWJlciA9PiB0aGlzLnBkZldyYXBwZXIuY2hhbmdlUGFnZU51bWJlcihwYWdlTnVtYmVyKSlcbiAgICApO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy50b29sYmFyRXZlbnRzLmdyYWJORHJhZy5zdWJzY3JpYmUoZ3JhYk5EcmFnID0+IHRoaXMuZW5hYmxlR3JhYk5EcmFnID0gZ3JhYk5EcmFnKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuY29tbWVudHNQYW5lbFZpc2libGUuc3Vic2NyaWJlKHRvZ2dsZSA9PiB7XG4gICAgICB0aGlzLnNob3dDb21tZW50c1BhbmVsID0gdG9nZ2xlO1xuICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudmlld2VyRXZlbnRzLm5hdmlnYXRpb25FdmVudC5zdWJzY3JpYmUoZGVzdCA9PiB0aGlzLmdvVG9EZXN0aW5hdGlvbihkZXN0KSkpO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuaWNwLnBhcnRpY2lwYW50c0xpc3RWaXNpYmxlLnN1YnNjcmliZSh0b2dnbGUgPT4gdGhpcy5zaG93SWNwUGFydGljaXBhbnRzTGlzdCA9IHRvZ2dsZSlcbiAgICApO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy5wZGZXcmFwcGVyLnBvc2l0aW9uVXBkYXRlZC5hc09ic2VydmFibGUoKVxuICAgICAgLnBpcGUodGhyb3R0bGVUaW1lKDUwMCwgYXN5bmNTY2hlZHVsZXIsIHsgbGVhZGluZzogdHJ1ZSwgdHJhaWxpbmc6IHRydWUgfSkpXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IFBkZlBvc2l0aW9uVXBkYXRlKGV2ZW50LmxvY2F0aW9uKSkpXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoIXRoaXMucGRmV3JhcHBlcikge1xuICAgICAgdGhpcy5wZGZXcmFwcGVyID0gdGhpcy5wZGZKc1dyYXBwZXJGYWN0b3J5LmNyZWF0ZSh0aGlzLnZpZXdlckNvbnRhaW5lcik7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzLnVybCAmJiB0aGlzLnBkZldyYXBwZXIpIHtcbiAgICAgIGF3YWl0IHRoaXMubG9hZERvY3VtZW50KCk7XG4gICAgICBpZiAodGhpcy5lbmFibGVSZWRhY3Rpb25zKSB7XG4gICAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5yZWRhY3Rpb25Nb2RlLnBpcGUoZmlsdGVyKHZhbHVlID0+ICEhdmFsdWUpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZXNldFJvdGF0aW9uKCkpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoY2hhbmdlcy5jYXNlSWQpIHtcbiAgICAgIHRoaXMuaWNwU3RvcmUuZGlzcGF0Y2gobmV3IFNldENhc2VJZCh0aGlzLmNhc2VJZCkpO1xuICAgIH1cbiAgfVxuXG4gIHJlc2V0Um90YXRpb24oKSB7XG4gICAgaWYgKHRoaXMuaGFzRGlmZmVyZW50UGFnZVNpemUpIHtcbiAgICAgIHRoaXMucGRmV3JhcHBlci5yZXNldFJvdGF0aW9uKDApO1xuICAgICAgdGhpcy5yb3RhdGlvbiA9IDA7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWREb2N1bWVudCgpIHtcbiAgICB0aGlzLmluaXREb2N1bWVudFByb2dyZXNzKCk7XG4gICAgYXdhaXQgdGhpcy5wZGZXcmFwcGVyLmxvYWREb2N1bWVudCh0aGlzLnVybCk7XG4gICAgdGhpcy5kb2N1bWVudFRpdGxlLmVtaXQodGhpcy5wZGZXcmFwcGVyLmdldEN1cnJlbnRQREZUaXRsZSgpKTtcbiAgICB0aGlzLnNldFBhZ2VIZWlnaHRzKCk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21Eb2N1bWVudHNTZWxlY3Rvci5nZXRQYWdlRGlmZmVyZW5jZSkpXG4gICAgICAuc3Vic2NyaWJlKGhhc0RpZmZlcmVudFBhZ2VTaWUgPT4gdGhpcy5oYXNEaWZmZXJlbnRQYWdlU2l6ZSA9IGhhc0RpZmZlcmVudFBhZ2VTaWUpKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Eb2N1bWVudExvYWRQcm9ncmVzcyhwcm9ncmVzczogRG9jdW1lbnRMb2FkUHJvZ3Jlc3MpIHtcbiAgICBpZiAocHJvZ3Jlc3MudG90YWwpIHtcbiAgICAgIHRoaXMubG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3MgPSBNYXRoLm1pbigxMDAsIE1hdGguY2VpbChwcm9ncmVzcy5sb2FkZWQgLyBwcm9ncmVzcy50b3RhbCAqIDEwMCkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25Eb2N1bWVudExvYWRlZCgpIHtcbiAgICB0aGlzLmxvYWRpbmdEb2N1bWVudCA9IGZhbHNlO1xuICAgIHRoaXMubWVkaWFMb2FkU3RhdHVzLmVtaXQoUmVzcG9uc2VUeXBlLlNVQ0NFU1MpO1xuICB9XG5cbiAgcHJpdmF0ZSBvbkRvY3VtZW50TG9hZEZhaWxlZChlcnJvcjogRXJyb3IpIHtcbiAgICB0aGlzLmxvYWRpbmdEb2N1bWVudCA9IGZhbHNlO1xuICAgIHRoaXMudmlld2VyRXhjZXB0aW9uID0gbmV3IFZpZXdlckV4Y2VwdGlvbihlcnJvci5uYW1lLCB7IG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2UgfSk7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBgQ291bGQgbm90IGxvYWQgdGhlIGRvY3VtZW50IFwiJHt0aGlzLnVybH1cImA7XG5cbiAgICB0aGlzLm1lZGlhTG9hZFN0YXR1cy5lbWl0KFJlc3BvbnNlVHlwZS5GQUlMVVJFKTtcbiAgICB0aGlzLnBkZlZpZXdlckV4Y2VwdGlvbi5lbWl0KHRoaXMudmlld2VyRXhjZXB0aW9uKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlUGFnZXMoZXZlbnQ6IFBhZ2VFdmVudFtdKSB7XG4gICAgaWYgKHRoaXMuZW5hYmxlQW5ub3RhdGlvbnMpIHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21Eb2N1bWVudEFjdGlvbnMuQWRkUGFnZXMoZXZlbnQpKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgc2VhcmNoQmFySGlkZGVuKGhpZGRlbjogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLnBkZldyYXBwZXIgJiYgaGlkZGVuKSB7XG4gICAgICB0aGlzLnBkZldyYXBwZXIuY2xlYXJTZWFyY2goKTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVDb21tZW50c1N1bW1hcnkoKSB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnRvZ2dsZUNvbW1lbnRzU3VtbWFyeSghdGhpcy50b29sYmFyRXZlbnRzLnNob3dDb21tZW50U3VtbWFyeS5nZXRWYWx1ZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgcm90YXRlRG9jdW1lbnQocm90YXRpb246IG51bWJlcikge1xuICAgIGNvbnN0IHBhZ2VOdW1iZXIgPSB0aGlzLnBkZldyYXBwZXIuZ2V0UGFnZU51bWJlcigpO1xuICAgIHRoaXMucGRmV3JhcHBlci5yb3RhdGUocm90YXRpb24pO1xuICAgIHRoaXMucGRmV3JhcHBlci5zZXRQYWdlTnVtYmVyKHBhZ2VOdW1iZXIpO1xuICAgIHRoaXMucm90YXRpb24gPSAodGhpcy5yb3RhdGlvbiArIHJvdGF0aW9uKSAlIDM2MDtcblxuICAgIHRoaXMuc2V0UGFnZUhlaWdodHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdERvY3VtZW50UHJvZ3Jlc3MoKSB7XG4gICAgdGhpcy5sb2FkaW5nRG9jdW1lbnQgPSB0cnVlO1xuICAgIHRoaXMubG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3MgPSBudWxsO1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Wm9vbSh6b29tRmFjdG9yOiBudW1iZXIpIHtcbiAgICBpZiAoIWlzTmFOKHpvb21GYWN0b3IpKSB7XG4gICAgICB0aGlzLnBkZldyYXBwZXIuc2V0Wm9vbSh6b29tRmFjdG9yKTtcbiAgICAgIHRoaXMuem9vbSA9IHRoaXMuY2FsY3VsYXRlWm9vbVZhbHVlKHpvb21GYWN0b3IpO1xuICAgICAgdGhpcy5zZXRQYWdlSGVpZ2h0cygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3RlcFpvb20oem9vbUZhY3RvcjogbnVtYmVyKSB7XG4gICAgaWYgKCFpc05hTih6b29tRmFjdG9yKSkge1xuICAgICAgdGhpcy5wZGZXcmFwcGVyLnN0ZXBab29tKHpvb21GYWN0b3IpO1xuICAgICAgdGhpcy56b29tID0gdGhpcy5jYWxjdWxhdGVab29tVmFsdWUodGhpcy56b29tLCB6b29tRmFjdG9yKTtcbiAgICAgIHRoaXMuc2V0UGFnZUhlaWdodHMoKTtcbiAgICB9XG4gIH1cblxuICBzZXRQYWdlSGVpZ2h0cygpIHtcbiAgICB0aGlzLnBhZ2VIZWlnaHRzID0gW107XG4gICAgY29uc3QgcGRmVmlld2VyQ2hpbGRyZW4gPSB0aGlzLnBkZlZpZXdlci5uYXRpdmVFbGVtZW50LmNoaWxkcmVuO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGRmVmlld2VyQ2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgIHRoaXMucGFnZUhlaWdodHMucHVzaChwZGZWaWV3ZXJDaGlsZHJlbltpXS5jbGllbnRIZWlnaHQpO1xuICAgIH1cbiAgfVxuXG4gIGNhbGN1bGF0ZVpvb21WYWx1ZSh6b29tVmFsdWUsIGluY3JlbWVudCA9IDApIHtcbiAgICBjb25zdCBuZXdab29tVmFsdWUgPSB6b29tVmFsdWUgKyBpbmNyZW1lbnQ7XG4gICAgaWYgKG5ld1pvb21WYWx1ZSA+IDUpIHtcbiAgICAgIHJldHVybiA1O1xuICAgIH1cbiAgICBpZiAobmV3Wm9vbVZhbHVlIDwgMC4xKSB7XG4gICAgICByZXR1cm4gMC4xO1xuICAgIH1cbiAgICByZXR1cm4gK25ld1pvb21WYWx1ZS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgcHJpdmF0ZSBnb1RvRGVzdGluYXRpb24oZGVzdGluYXRpb246IGFueVtdKSB7XG4gICAgY29uc3QgY3VycmVudFJvdGF0aW9uID0gdGhpcy5yb3RhdGlvbjtcbiAgICB0aGlzLnJvdGF0ZURvY3VtZW50KDM2MCAtIHRoaXMucm90YXRpb24pO1xuICAgIHRoaXMucGRmV3JhcHBlci5uYXZpZ2F0ZVRvKGRlc3RpbmF0aW9uKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucm90YXRlRG9jdW1lbnQoY3VycmVudFJvdGF0aW9uKTtcbiAgICB9LCAxMCk7XG4gIH1cblxuICBnZXRDdXJyZW50UGFnZU51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBkZldyYXBwZXIuZ2V0UGFnZU51bWJlcigpO1xuICB9XG59XG4iLCI8bXYtc2lkZS1iYXJcbiAgKm5nSWY9XCJ0b29sYmFyRXZlbnRzLnNpZGViYXJPcGVuXCJcbiAgaWQ9XCJzaWRlYmFyQ29udGFpbmVyXCJcbiAgW3VybF09XCJ1cmxcIlxuICBbem9vbV09XCJ6b29tXCJcbiAgW3JvdGF0ZV09XCJyb3RhdGlvblwiXG4gIFtvdXRsaW5lXT1cImRvY3VtZW50T3V0bGluZVwiXG4gIFthbm5vdGF0aW9uc0VuYWJsZWRdPVwiZW5hYmxlQW5ub3RhdGlvbnNcIlxuICBbY3VycmVudFBhZ2VOdW1iZXJdPVwiZ2V0Q3VycmVudFBhZ2VOdW1iZXIoKVwiXG4+XG48L212LXNpZGUtYmFyPlxuPG12LWNvbW1lbnQtc2V0LWhlYWRlclxuICAqbmdJZj1cImVuYWJsZUFubm90YXRpb25zXCJcbiAgW25nQ2xhc3NdPVwieyAnc2hvdy1jb21tZW50cy1wYW5lbCc6IHNob3dDb21tZW50c1BhbmVsIH1cIlxuICBbc2hvd0NvbW1lbnRTdW1tYXJ5XT1cInRvb2xiYXJCdXR0b25zLnNob3dDb21tZW50U3VtbWFyeVwiXG4gIChzaG93Q29tbWVudFN1bW1hcnlEaWFsb2cpPVwidG9nZ2xlQ29tbWVudHNTdW1tYXJ5KClcIlxuPlxuPC9tdi1jb21tZW50LXNldC1oZWFkZXI+XG48bXYtcGFydGljaXBhbnRzLWxpc3Q+PC9tdi1wYXJ0aWNpcGFudHMtbGlzdD5cbjxkaXZcbiAgY2xhc3M9XCJwZGZDb250YWluZXJcIlxuICBbbmdTdHlsZV09XCJ7IGhlaWdodDogaGVpZ2h0IH1cIlxuICBbbmdDbGFzc109XCJ7IHBkZkNvbnRhaW5lcjogdHJ1ZSwgaGlkZGVuOiBlcnJvck1lc3NhZ2UgfVwiXG4+XG4gIDxtdi1yZWRhY3Rpb24tc2VhcmNoLWJhcj48L212LXJlZGFjdGlvbi1zZWFyY2gtYmFyPlxuICA8ZGl2XG4gICAgI3ZpZXdlckNvbnRhaW5lclxuICAgIG12R3JhYk5EcmFnXG4gICAgW2RyYWdYXT1cInZpZXdlckNvbnRhaW5lclwiXG4gICAgW2RyYWdFbmFibGVkXT1cImVuYWJsZUdyYWJORHJhZ1wiXG4gICAgaWQ9XCJ2aWV3ZXJDb250YWluZXJcIlxuICAgIGNsYXNzPVwidmlld2VyLWNvbnRhaW5lclwiXG4gICAgW2NsYXNzLmFubm90YXRpb25zXT1cImVuYWJsZUFubm90YXRpb25zXCJcbiAgICBbY2xhc3Muc2hvdy1jb21tZW50cy1wYW5lbF09XCJcbiAgICAgIChzaG93Q29tbWVudHNQYW5lbCB8fCBzaG93SWNwUGFydGljaXBhbnRzTGlzdCkgJiZcbiAgICAgICh0b29sYmFyRXZlbnRzLnJlZGFjdGlvbk1vZGUgfCBhc3luYykgIT09IHRydWVcbiAgICBcIlxuICAgIFtjbGFzcy5ncmFiTkRyYWddPVwiZW5hYmxlR3JhYk5EcmFnXCJcbiAgPlxuICAgIDxkaXZcbiAgICAgICNwZGZWaWV3ZXJcbiAgICAgIGNsYXNzPVwicGRmVmlld2VyXCJcbiAgICAgIG12Q3JlYXRlVGV4dEhpZ2hsaWdodFxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICBoaWRkZW46IGxvYWRpbmdEb2N1bWVudCxcbiAgICAgICAgaGlnaGxpZ2h0TW9kZTogaGlnaGxpZ2h0TW9kZSB8IGFzeW5jLFxuICAgICAgICBkcmF3TW9kZTogZHJhd01vZGUgfCBhc3luY1xuICAgICAgfVwiXG4gICAgPjwvZGl2PlxuICAgIDxtdi1yZWRhY3Rpb25zXG4gICAgICAqbmdJZj1cInRvb2xiYXJFdmVudHMucmVkYWN0aW9uTW9kZSB8IGFzeW5jOyBlbHNlIGFubm90YXRpb25UZW1wbGF0ZVwiXG4gICAgICBbem9vbV09XCJ6b29tXCJcbiAgICAgIFtyb3RhdGVdPVwicm90YXRpb25cIlxuICAgID48L212LXJlZGFjdGlvbnM+XG4gICAgPG5nLXRlbXBsYXRlICNhbm5vdGF0aW9uVGVtcGxhdGU+XG4gICAgICA8bXYtbWV0YWRhdGEtbGF5ZXJcbiAgICAgICAgKm5nSWY9XCJlbmFibGVBbm5vdGF0aW9ucyAmJiBhbm5vdGF0aW9uU2V0XCJcbiAgICAgICAgW3pvb21dPVwiem9vbVwiXG4gICAgICAgIFtyb3RhdGVdPVwicm90YXRpb25cIlxuICAgICAgPlxuICAgICAgPC9tdi1tZXRhZGF0YS1sYXllcj5cbiAgICAgIDxtdi1ib29rbWFyay1pY29ucyBbem9vbV09XCJ6b29tXCIgW3JvdGF0ZV09XCJyb3RhdGlvblwiPiA8L212LWJvb2ttYXJrLWljb25zPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuICA8bXYtY29tbWVudC1zZXRcbiAgICBbY29udGVudFNjcm9sbFRvcF09XCJ2aWV3ZXJDb250YWluZXIuc2Nyb2xsVG9wXCJcbiAgICAqbmdJZj1cIlxuICAgICAgZW5hYmxlQW5ub3RhdGlvbnMgJiZcbiAgICAgIGFubm90YXRpb25TZXQgJiZcbiAgICAgICh0b29sYmFyRXZlbnRzLnJlZGFjdGlvbk1vZGUgfCBhc3luYykgIT09IHRydWVcbiAgICBcIlxuICAgIFthbm5vdGF0aW9uU2V0XT1cImFubm90YXRpb25TZXRcIlxuICAgIFt6b29tXT1cInpvb21cIlxuICAgIFtyb3RhdGVdPVwicm90YXRpb25cIlxuICAgIFtoZWlnaHRdPVwicGRmVmlld2VyLm9mZnNldEhlaWdodFwiXG4gICAgW3BhZ2VIZWlnaHRzXT1cInBhZ2VIZWlnaHRzXCJcbiAgPlxuICA8L212LWNvbW1lbnQtc2V0PlxuICA8ZGl2IGNsYXNzPVwibG9hZGluZ01lc3NhZ2VcIiAqbmdJZj1cImxvYWRpbmdEb2N1bWVudFwiPlxuICAgIDxoMyBjbGFzcz1cImdvdnVrLWhlYWRpbmctbVwiPlxuICAgICAge3sgXCJMb2FkaW5nLi4uXCIgfCBycHhUcmFuc2xhdGV9fXt7XG4gICAgICAgIGxvYWRpbmdEb2N1bWVudFByb2dyZXNzID8gbG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3MgKyBcIiVcIiA6IFwiXCJcbiAgICAgIH19XG4gICAgPC9oMz5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXZpZXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLXZpZXdlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi92aWV3ZXJzL3BkZi12aWV3ZXIvcGRmLXZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVOLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBNkMsTUFBTSxNQUFNLENBQUM7QUFDakYsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLE1BQU0sRUFBUyxNQUFNLGFBQWEsQ0FBQztBQU81QyxPQUFPLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSzFFLE9BQU8sS0FBSyxtQkFBbUIsTUFBTSxzQ0FBc0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEtBQUssY0FBYyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RCxPQUFPLEtBQUsscUJBQXFCLE1BQU0sMENBQTBDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVVsRixNQUFNLE9BQU8sa0JBQWtCO0lBMEM3QixZQUNVLEtBQTBDLEVBQzFDLFFBQXlCLEVBQ2hCLG1CQUF3QyxFQUN4QyxZQUEwQixFQUMzQixhQUFrQyxFQUNqQyxZ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IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYXN5bmNTY2hlZHVsZXIsIEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIHRhcCwgdGhyb3R0bGVUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgc2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcblxuaW1wb3J0IHsgRG9jdW1lbnRMb2FkUHJvZ3Jlc3MsIFBhZ2VFdmVudCwgUGRmSnNXcmFwcGVyIH0gZnJvbSAnLi9wZGYtanMvcGRmLWpzLXdyYXBwZXInO1xuaW1wb3J0IHsgUGRmSnNXcmFwcGVyRmFjdG9yeSB9IGZyb20gJy4vcGRmLWpzL3BkZi1qcy13cmFwcGVyLnByb3ZpZGVyJztcbmltcG9ydCB7IEFubm90YXRpb25TZXQgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXNldC5tb2RlbCc7XG5pbXBvcnQgeyBUb29sYmFyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9vbGJhci90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUHJpbnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJpbnQuc2VydmljZSc7XG5pbXBvcnQgeyBSZXNwb25zZVR5cGUsIFZpZXdlckV4Y2VwdGlvbiB9IGZyb20gJy4uL3ZpZXdlci1leGNlcHRpb24ubW9kZWwnO1xuaW1wb3J0IHsgVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9vbGJhci90b29sYmFyLWJ1dHRvbi12aXNpYmlsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tbWVudFNldENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Fubm90YXRpb25zL2NvbW1lbnQtc2V0L2NvbW1lbnQtc2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPdXRsaW5lIH0gZnJvbSAnLi9zaWRlLWJhci9vdXRsaW5lLWl0ZW0vb3V0bGluZS5tb2RlbCc7XG5pbXBvcnQgKiBhcyBmcm9tU3RvcmUgZnJvbSAnLi4vLi4vc3RvcmUvcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0ICogYXMgZnJvbURvY3VtZW50QWN0aW9ucyBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2RvY3VtZW50LmFjdGlvbnMnO1xuaW1wb3J0IHsgUGRmUG9zaXRpb25VcGRhdGUgfSBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2RvY3VtZW50LmFjdGlvbnMnO1xuaW1wb3J0ICogYXMgZnJvbVRhZ0FjdGlvbnMgZnJvbSAnLi4vLi4vc3RvcmUvYWN0aW9ucy90YWcuYWN0aW9ucyc7XG5pbXBvcnQgeyBTZXRDYXNlSWQgfSBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL2ljcC5hY3Rpb25zJztcbmltcG9ydCAqIGFzIGZyb21Eb2N1bWVudHNTZWxlY3RvciBmcm9tICcuLi8uLi9zdG9yZS9zZWxlY3RvcnMvZG9jdW1lbnQuc2VsZWN0b3JzJztcbmltcG9ydCB7IEljcFN0YXRlIH0gZnJvbSAnLi4vLi4vaWNwL2ljcC5pbnRlcmZhY2VzJztcbmltcG9ydCB7IFZpZXdlckV2ZW50U2VydmljZSB9IGZyb20gJy4uL3ZpZXdlci1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEljcFNlcnZpY2UgfSBmcm9tICcuLi8uLi9pY3AvaWNwLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdi1wZGYtdmlld2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BkZi12aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFBkZlZpZXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblxuICBAT3V0cHV0KCkgbWVkaWFMb2FkU3RhdHVzID0gbmV3IEV2ZW50RW1pdHRlcjxSZXNwb25zZVR5cGU+KCk7XG4gIEBPdXRwdXQoKSBwZGZWaWV3ZXJFeGNlcHRpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFZpZXdlckV4Y2VwdGlvbj4oKTtcbiAgQE91dHB1dCgpIGRvY3VtZW50VGl0bGUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBASW5wdXQoKSBkb3dubG9hZFVybDogc3RyaW5nO1xuICBASW5wdXQoKSB1cmw6IHN0cmluZztcbiAgQElucHV0KCkgZG93bmxvYWRGaWxlTmFtZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGVuYWJsZUFubm90YXRpb25zOiBib29sZWFuO1xuICBASW5wdXQoKSBlbmFibGVSZWRhY3Rpb25zOiBib29sZWFuO1xuICBASW5wdXQoKSBlbmFibGVJQ1A6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGFubm90YXRpb25TZXQ6IEFubm90YXRpb25TZXQgfCBudWxsO1xuICBASW5wdXQoKSBlbmFibGVSZWRhY3RTZWFyY2g6IEFubm90YXRpb25TZXQgfCBudWxsO1xuXG4gIEBJbnB1dCgpIGhlaWdodDogc3RyaW5nO1xuICBwYWdlSGVpZ2h0cyA9IFtdO1xuICByb3RhdGlvbiA9IDA7XG4gIHpvb20gPSAxO1xuXG4gIEBJbnB1dCgpIGNhc2VJZDogc3RyaW5nO1xuXG4gIGhpZ2hsaWdodE1vZGU6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGRyYXdNb2RlOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj47XG5cbiAgZG9jdW1lbnRPdXRsaW5lOiBPdXRsaW5lW107XG4gIGxvYWRpbmdEb2N1bWVudCA9IGZhbHNlO1xuICBsb2FkaW5nRG9jdW1lbnRQcm9ncmVzczogbnVtYmVyO1xuICBlcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgaGFzRGlmZmVyZW50UGFnZVNpemUgPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCd2aWV3ZXJDb250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSB2aWV3ZXJDb250YWluZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKCdwZGZWaWV3ZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgcGRmVmlld2VyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcblxuICBwcml2YXRlIHBkZldyYXBwZXI6IFBkZkpzV3JhcHBlcjtcbiAgcHJpdmF0ZSAkc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgdmlld2VyRXhjZXB0aW9uOiBWaWV3ZXJFeGNlcHRpb247XG4gIHNob3dDb21tZW50c1BhbmVsOiBib29sZWFuO1xuICBzaG93SWNwUGFydGljaXBhbnRzTGlzdDogYm9vbGVhbjtcbiAgZW5hYmxlR3JhYk5EcmFnID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8ZnJvbVN0b3JlLkFubm90YXRpb25TZXRTdGF0ZT4sXG4gICAgcHJpdmF0ZSBpY3BTdG9yZTogU3RvcmU8SWNwU3RhdGU+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGRmSnNXcmFwcGVyRmFjdG9yeTogUGRmSnNXcmFwcGVyRmFjdG9yeSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByaW50U2VydmljZTogUHJpbnRTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld2VyRXZlbnRzOiBWaWV3ZXJFdmVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpY3BTZXJ2aWNlOiBJY3BTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyQnV0dG9uczogVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLmhpZ2hsaWdodE1vZGUgPSB0b29sYmFyRXZlbnRzLmhpZ2hsaWdodE1vZGVTdWJqZWN0LnBpcGUodGFwKCgpID0+IHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21UYWdBY3Rpb25zLkNsZWFyRmlsdGVyVGFncygpKTtcbiAgICB9KSk7XG4gICAgdGhpcy5kcmF3TW9kZSA9IHRvb2xiYXJFdmVudHMuZHJhd01vZGVTdWJqZWN0O1xuICB9XG5cbiAgYXN5bmMgbmdBZnRlckNvbnRlbnRJbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMucGRmV3JhcHBlci5kb2N1bWVudExvYWRQcm9ncmVzcy5zdWJzY3JpYmUodiA9PiB0aGlzLm9uRG9jdW1lbnRMb2FkUHJvZ3Jlc3ModikpO1xuICAgIHRoaXMucGRmV3JhcHBlci5kb2N1bWVudExvYWRlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkRvY3VtZW50TG9hZGVkKCkpO1xuICAgIHRoaXMucGRmV3JhcHBlci5kb2N1bWVudExvYWRGYWlsZWQuc3Vic2NyaWJlKChlcnJvcikgPT4gdGhpcy5vbkRvY3VtZW50TG9hZEZhaWxlZChlcnJvcikpO1xuICAgIHRoaXMucGRmV3JhcHBlci5vdXRsaW5lTG9hZGVkLnN1YnNjcmliZShvdXRsaW5lID0+IHRoaXMuZG9jdW1lbnRPdXRsaW5lID0gb3V0bGluZSk7XG4gICAgdGhpcy5wZGZXcmFwcGVyLnBhZ2VSZW5kZXJlZC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB0aGlzLnVwZGF0ZVBhZ2VzKGV2ZW50KSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uID0gdGhpcy50b29sYmFyRXZlbnRzLnByaW50U3ViamVjdFxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnByaW50U2VydmljZS5wcmludERvY3VtZW50TmF0aXZlbHkodGhpcy51cmwpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5kb3dubG9hZFN1YmplY3Quc3Vic2NyaWJlKCgpID0+XG4gICAgICB0aGlzLnBkZldyYXBwZXIuZG93bmxvYWRGaWxlKHRoaXMuZG93bmxvYWRVcmwgfHwgdGhpcy51cmwsIHRoaXMuZG93bmxvYWRGaWxlTmFtZSlcbiAgICApKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5yb3RhdGVTdWJqZWN0LnN1YnNjcmliZShyb3RhdGUgPT4gdGhpcy5yb3RhdGVEb2N1bWVudChyb3RhdGUpKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuem9vbVN1YmplY3Quc3Vic2NyaWJlKHpvb20gPT4gdGhpcy5zZXRab29tKHpvb20pKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuc3RlcFpvb21TdWJqZWN0LnN1YnNjcmliZSh6b29tID0+IHRoaXMuc3RlcFpvb20oem9vbSkpKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2hTdWJqZWN0LnN1YnNjcmliZShzZWFyY2ggPT4gdGhpcy5wZGZXcmFwcGVyLnNlYXJjaChzZWFyY2gpKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZChcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZXRDdXJyZW50UGFnZVN1YmplY3Quc3Vic2NyaWJlKHBhZ2VOdW1iZXIgPT4gdGhpcy5wZGZXcmFwcGVyLnNldFBhZ2VOdW1iZXIocGFnZU51bWJlcikpXG4gICAgKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLmNoYW5nZVBhZ2VCeURlbHRhU3ViamVjdC5zdWJzY3JpYmUocGFnZU51bWJlciA9PiB0aGlzLnBkZldyYXBwZXIuY2hhbmdlUGFnZU51bWJlcihwYWdlTnVtYmVyKSlcbiAgICApO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy50b29sYmFyRXZlbnRzLmdyYWJORHJhZy5zdWJzY3JpYmUoZ3JhYk5EcmFnID0+IHRoaXMuZW5hYmxlR3JhYk5EcmFnID0gZ3JhYk5EcmFnKSk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnRvb2xiYXJFdmVudHMuY29tbWVudHNQYW5lbFZpc2libGUuc3Vic2NyaWJlKHRvZ2dsZSA9PiB7XG4gICAgICB0aGlzLnNob3dDb21tZW50c1BhbmVsID0gdG9nZ2xlO1xuICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLiRzdWJzY3JpcHRpb24uYWRkKHRoaXMudmlld2VyRXZlbnRzLm5hdmlnYXRpb25FdmVudC5zdWJzY3JpYmUoZGVzdCA9PiB0aGlzLmdvVG9EZXN0aW5hdGlvbihkZXN0KSkpO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICB0aGlzLnRvb2xiYXJFdmVudHMuaWNwLnBhcnRpY2lwYW50c0xpc3RWaXNpYmxlLnN1YnNjcmliZSh0b2dnbGUgPT4gdGhpcy5zaG93SWNwUGFydGljaXBhbnRzTGlzdCA9IHRvZ2dsZSlcbiAgICApO1xuICAgIHRoaXMuJHN1YnNjcmlwdGlvbi5hZGQodGhpcy5wZGZXcmFwcGVyLnBvc2l0aW9uVXBkYXRlZC5hc09ic2VydmFibGUoKVxuICAgICAgLnBpcGUodGhyb3R0bGVUaW1lKDUwMCwgYXN5bmNTY2hlZHVsZXIsIHsgbGVhZGluZzogdHJ1ZSwgdHJhaWxpbmc6IHRydWUgfSkpXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IFBkZlBvc2l0aW9uVXBkYXRlKGV2ZW50LmxvY2F0aW9uKSkpXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoIXRoaXMucGRmV3JhcHBlcikge1xuICAgICAgdGhpcy5wZGZXcmFwcGVyID0gdGhpcy5wZGZKc1dyYXBwZXJGYWN0b3J5LmNyZWF0ZSh0aGlzLnZpZXdlckNvbnRhaW5lcik7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VzLnVybCAmJiB0aGlzLnBkZldyYXBwZXIpIHtcbiAgICAgIGF3YWl0IHRoaXMubG9hZERvY3VtZW50KCk7XG4gICAgICBpZiAodGhpcy5lbmFibGVSZWRhY3Rpb25zKSB7XG4gICAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5yZWRhY3Rpb25Nb2RlLnBpcGUoZmlsdGVyKHZhbHVlID0+ICEhdmFsdWUpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZXNldFJvdGF0aW9uKCkpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoY2hhbmdlcy5jYXNlSWQpIHtcbiAgICAgIHRoaXMuaWNwU3RvcmUuZGlzcGF0Y2gobmV3IFNldENhc2VJZCh0aGlzLmNhc2VJZCkpO1xuICAgIH1cbiAgfVxuXG4gIHJlc2V0Um90YXRpb24oKSB7XG4gICAgaWYgKHRoaXMuaGFzRGlmZmVyZW50UGFnZVNpemUpIHtcbiAgICAgIHRoaXMucGRmV3JhcHBlci5yZXNldFJvdGF0aW9uKDApO1xuICAgICAgdGhpcy5yb3RhdGlvbiA9IDA7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWREb2N1bWVudCgpIHtcbiAgICB0aGlzLmluaXREb2N1bWVudFByb2dyZXNzKCk7XG4gICAgYXdhaXQgdGhpcy5wZGZXcmFwcGVyLmxvYWREb2N1bWVudCh0aGlzLnVybCk7XG4gICAgdGhpcy5kb2N1bWVudFRpdGxlLmVtaXQodGhpcy5wZGZXcmFwcGVyLmdldEN1cnJlbnRQREZUaXRsZSgpKTtcbiAgICB0aGlzLnNldFBhZ2VIZWlnaHRzKCk7XG4gICAgdGhpcy4kc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21Eb2N1bWVudHNTZWxlY3Rvci5nZXRQYWdlRGlmZmVyZW5jZSkpXG4gICAgICAuc3Vic2NyaWJlKGhhc0RpZmZlcmVudFBhZ2VTaWUgPT4gdGhpcy5oYXNEaWZmZXJlbnRQYWdlU2l6ZSA9IGhhc0RpZmZlcmVudFBhZ2VTaWUpKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Eb2N1bWVudExvYWRQcm9ncmVzcyhwcm9ncmVzczogRG9jdW1lbnRMb2FkUHJvZ3Jlc3MpIHtcbiAgICBpZiAocHJvZ3Jlc3MudG90YWwpIHtcbiAgICAgIHRoaXMubG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3MgPSBNYXRoLm1pbigxMDAsIE1hdGguY2VpbChwcm9ncmVzcy5sb2FkZWQgLyBwcm9ncmVzcy50b3RhbCAqIDEwMCkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgb25Eb2N1bWVudExvYWRlZCgpIHtcbiAgICB0aGlzLmxvYWRpbmdEb2N1bWVudCA9IGZhbHNlO1xuICAgIHRoaXMubWVkaWFMb2FkU3RhdHVzLmVtaXQoUmVzcG9uc2VUeXBlLlNVQ0NFU1MpO1xuICB9XG5cbiAgcHJpdmF0ZSBvbkRvY3VtZW50TG9hZEZhaWxlZChlcnJvcjogRXJyb3IpIHtcbiAgICB0aGlzLmxvYWRpbmdEb2N1bWVudCA9IGZhbHNlO1xuICAgIHRoaXMudmlld2VyRXhjZXB0aW9uID0gbmV3IFZpZXdlckV4Y2VwdGlvbihlcnJvci5uYW1lLCB7IG1lc3NhZ2U6IGVycm9yLm1lc3NhZ2UgfSk7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBgQ291bGQgbm90IGxvYWQgdGhlIGRvY3VtZW50IFwiJHt0aGlzLnVybH1cImA7XG5cbiAgICB0aGlzLm1lZGlhTG9hZFN0YXR1cy5lbWl0KFJlc3BvbnNlVHlwZS5GQUlMVVJFKTtcbiAgICB0aGlzLnBkZlZpZXdlckV4Y2VwdGlvbi5lbWl0KHRoaXMudmlld2VyRXhjZXB0aW9uKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlUGFnZXMoZXZlbnQ6IFBhZ2VFdmVudFtdKSB7XG4gICAgaWYgKHRoaXMuZW5hYmxlQW5ub3RhdGlvbnMpIHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IGZyb21Eb2N1bWVudEFjdGlvbnMuQWRkUGFnZXMoZXZlbnQpKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgc2VhcmNoQmFySGlkZGVuKGhpZGRlbjogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLnBkZldyYXBwZXIgJiYgaGlkZGVuKSB7XG4gICAgICB0aGlzLnBkZldyYXBwZXIuY2xlYXJTZWFyY2goKTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVDb21tZW50c1N1bW1hcnkoKSB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnRvZ2dsZUNvbW1lbnRzU3VtbWFyeSghdGhpcy50b29sYmFyRXZlbnRzLnNob3dDb21tZW50U3VtbWFyeS5nZXRWYWx1ZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgcm90YXRlRG9jdW1lbnQocm90YXRpb246IG51bWJlcikge1xuICAgIGNvbnN0IHBhZ2VOdW1iZXIgPSB0aGlzLnBkZldyYXBwZXIuZ2V0UGFnZU51bWJlcigpO1xuICAgIHRoaXMucGRmV3JhcHBlci5yb3RhdGUocm90YXRpb24pO1xuICAgIHRoaXMucGRmV3JhcHBlci5zZXRQYWdlTnVtYmVyKHBhZ2VOdW1iZXIpO1xuICAgIHRoaXMucm90YXRpb24gPSAodGhpcy5yb3RhdGlvbiArIHJvdGF0aW9uKSAlIDM2MDtcblxuICAgIHRoaXMuc2V0UGFnZUhlaWdodHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdERvY3VtZW50UHJvZ3Jlc3MoKSB7XG4gICAgdGhpcy5sb2FkaW5nRG9jdW1lbnQgPSB0cnVlO1xuICAgIHRoaXMubG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3MgPSBudWxsO1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0Wm9vbSh6b29tRmFjdG9yOiBudW1iZXIpIHtcbiAgICBpZiAoIWlzTmFOKHpvb21GYWN0b3IpKSB7XG4gICAgICB0aGlzLnBkZldyYXBwZXIuc2V0Wm9vbSh6b29tRmFjdG9yKTtcbiAgICAgIHRoaXMuem9vbSA9IHRoaXMuY2FsY3VsYXRlWm9vbVZhbHVlKHpvb21GYWN0b3IpO1xuICAgICAgdGhpcy5zZXRQYWdlSGVpZ2h0cygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3RlcFpvb20oem9vbUZhY3RvcjogbnVtYmVyKSB7XG4gICAgaWYgKCFpc05hTih6b29tRmFjdG9yKSkge1xuICAgICAgdGhpcy5wZGZXcmFwcGVyLnN0ZXBab29tKHpvb21GYWN0b3IpO1xuICAgICAgdGhpcy56b29tID0gdGhpcy5jYWxjdWxhdGVab29tVmFsdWUodGhpcy56b29tLCB6b29tRmFjdG9yKTtcbiAgICAgIHRoaXMuc2V0UGFnZUhlaWdodHMoKTtcbiAgICB9XG4gIH1cblxuICBzZXRQYWdlSGVpZ2h0cygpIHtcbiAgICB0aGlzLnBhZ2VIZWlnaHRzID0gW107XG4gICAgY29uc3QgcGRmVmlld2VyQ2hpbGRyZW4gPSB0aGlzLnBkZlZpZXdlci5uYXRpdmVFbGVtZW50LmNoaWxkcmVuO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGRmVmlld2VyQ2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgIHRoaXMucGFnZUhlaWdodHMucHVzaChwZGZWaWV3ZXJDaGlsZHJlbltpXS5jbGllbnRIZWlnaHQpO1xuICAgIH1cbiAgfVxuXG4gIGNhbGN1bGF0ZVpvb21WYWx1ZSh6b29tVmFsdWUsIGluY3JlbWVudCA9IDApIHtcbiAgICBjb25zdCBuZXdab29tVmFsdWUgPSB6b29tVmFsdWUgKyBpbmNyZW1lbnQ7XG4gICAgaWYgKG5ld1pvb21WYWx1ZSA+IDUpIHtcbiAgICAgIHJldHVybiA1O1xuICAgIH1cbiAgICBpZiAobmV3Wm9vbVZhbHVlIDwgMC4xKSB7XG4gICAgICByZXR1cm4gMC4xO1xuICAgIH1cbiAgICByZXR1cm4gK25ld1pvb21WYWx1ZS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgcHJpdmF0ZSBnb1RvRGVzdGluYXRpb24oZGVzdGluYXRpb246IGFueVtdKSB7XG4gICAgY29uc3QgY3VycmVudFJvdGF0aW9uID0gdGhpcy5yb3RhdGlvbjtcbiAgICB0aGlzLnJvdGF0ZURvY3VtZW50KDM2MCAtIHRoaXMucm90YXRpb24pO1xuICAgIHRoaXMucGRmV3JhcHBlci5uYXZpZ2F0ZVRvKGRlc3RpbmF0aW9uKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucm90YXRlRG9jdW1lbnQoY3VycmVudFJvdGF0aW9uKTtcbiAgICB9LCAxMCk7XG4gIH1cblxuICBnZXRDdXJyZW50UGFnZU51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBkZldyYXBwZXIuZ2V0UGFnZU51bWJlcigpO1xuICB9XG59XG4iLCI8bXYtc2lkZS1iYXJcbiAgKm5nSWY9XCJ0b29sYmFyRXZlbnRzLnNpZGViYXJPcGVuXCJcbiAgaWQ9XCJzaWRlYmFyQ29udGFpbmVyXCJcbiAgW3VybF09XCJ1cmxcIlxuICBbem9vbV09XCJ6b29tXCJcbiAgW3JvdGF0ZV09XCJyb3RhdGlvblwiXG4gIFtvdXRsaW5lXT1cImRvY3VtZW50T3V0bGluZVwiXG4gIFthbm5vdGF0aW9uc0VuYWJsZWRdPVwiZW5hYmxlQW5ub3RhdGlvbnNcIlxuICBbY3VycmVudFBhZ2VOdW1iZXJdPVwiZ2V0Q3VycmVudFBhZ2VOdW1iZXIoKVwiXG4+XG48L212LXNpZGUtYmFyPlxuPG12LWNvbW1lbnQtc2V0LWhlYWRlclxuICAqbmdJZj1cImVuYWJsZUFubm90YXRpb25zXCJcbiAgW25nQ2xhc3NdPVwieyAnc2hvdy1jb21tZW50cy1wYW5lbCc6IHNob3dDb21tZW50c1BhbmVsIH1cIlxuICBbc2hvd0NvbW1lbnRTdW1tYXJ5XT1cInRvb2xiYXJCdXR0b25zLnNob3dDb21tZW50U3VtbWFyeVwiXG4gIChzaG93Q29tbWVudFN1bW1hcnlEaWFsb2cpPVwidG9nZ2xlQ29tbWVudHNTdW1tYXJ5KClcIlxuPlxuPC9tdi1jb21tZW50LXNldC1oZWFkZXI+XG48bXYtcGFydGljaXBhbnRzLWxpc3Q+PC9tdi1wYXJ0aWNpcGFudHMtbGlzdD5cbjxkaXZcbiAgY2xhc3M9XCJwZGZDb250YWluZXJcIlxuICBbbmdTdHlsZV09XCJ7IGhlaWdodDogaGVpZ2h0IH1cIlxuICBbbmdDbGFzc109XCJ7IHBkZkNvbnRhaW5lcjogdHJ1ZSwgaGlkZGVuOiBlcnJvck1lc3NhZ2UgfVwiXG4+XG4gIDxtdi1yZWRhY3Rpb24tc2VhcmNoLWJhcj48L212LXJlZGFjdGlvbi1zZWFyY2gtYmFyPlxuICA8ZGl2XG4gICAgI3ZpZXdlckNvbnRhaW5lclxuICAgIG12R3JhYk5EcmFnXG4gICAgW2RyYWdYXT1cInZpZXdlckNvbnRhaW5lclwiXG4gICAgW2RyYWdFbmFibGVkXT1cImVuYWJsZUdyYWJORHJhZ1wiXG4gICAgaWQ9XCJ2aWV3ZXJDb250YWluZXJcIlxuICAgIGNsYXNzPVwidmlld2VyLWNvbnRhaW5lclwiXG4gICAgW2NsYXNzLmFubm90YXRpb25zXT1cImVuYWJsZUFubm90YXRpb25zXCJcbiAgICBbY2xhc3Muc2hvdy1jb21tZW50cy1wYW5lbF09XCJcbiAgICAgIChzaG93Q29tbWVudHNQYW5lbCB8fCBzaG93SWNwUGFydGljaXBhbnRzTGlzdCkgJiZcbiAgICAgICh0b29sYmFyRXZlbnRzLnJlZGFjdGlvbk1vZGUgfCBhc3luYykgIT09IHRydWVcbiAgICBcIlxuICAgIFtjbGFzcy5ncmFiTkRyYWddPVwiZW5hYmxlR3JhYk5EcmFnXCJcbiAgPlxuICAgIDxkaXZcbiAgICAgICNwZGZWaWV3ZXJcbiAgICAgIGNsYXNzPVwicGRmVmlld2VyXCJcbiAgICAgIG12Q3JlYXRlVGV4dEhpZ2hsaWdodFxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICBoaWRkZW46IGxvYWRpbmdEb2N1bWVudCxcbiAgICAgICAgaGlnaGxpZ2h0TW9kZTogaGlnaGxpZ2h0TW9kZSB8IGFzeW5jLFxuICAgICAgICBkcmF3TW9kZTogZHJhd01vZGUgfCBhc3luY1xuICAgICAgfVwiXG4gICAgPjwvZGl2PlxuICAgIDxtdi1yZWRhY3Rpb25zXG4gICAgICAqbmdJZj1cInRvb2xiYXJFdmVudHMucmVkYWN0aW9uTW9kZSB8IGFzeW5jOyBlbHNlIGFubm90YXRpb25UZW1wbGF0ZVwiXG4gICAgICBbem9vbV09XCJ6b29tXCJcbiAgICAgIFtyb3RhdGVdPVwicm90YXRpb25cIlxuICAgID48L212LXJlZGFjdGlvbnM+XG4gICAgPG5nLXRlbXBsYXRlICNhbm5vdGF0aW9uVGVtcGxhdGU+XG4gICAgICA8bXYtbWV0YWRhdGEtbGF5ZXJcbiAgICAgICAgKm5nSWY9XCJlbmFibGVBbm5vdGF0aW9ucyAmJiBhbm5vdGF0aW9uU2V0XCJcbiAgICAgICAgW3pvb21dPVwiem9vbVwiXG4gICAgICAgIFtyb3RhdGVdPVwicm90YXRpb25cIlxuICAgICAgPlxuICAgICAgPC9tdi1tZXRhZGF0YS1sYXllcj5cbiAgICAgIDxtdi1ib29rbWFyay1pY29ucyBbem9vbV09XCJ6b29tXCIgW3JvdGF0ZV09XCJyb3RhdGlvblwiPiA8L212LWJvb2ttYXJrLWljb25zPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuICA8bXYtY29tbWVudC1zZXRcbiAgICBbY29udGVudFNjcm9sbFRvcF09XCJ2aWV3ZXJDb250YWluZXIuc2Nyb2xsVG9wXCJcbiAgICAqbmdJZj1cIlxuICAgICAgZW5hYmxlQW5ub3RhdGlvbnMgJiZcbiAgICAgIGFubm90YXRpb25TZXQgJiZcbiAgICAgICh0b29sYmFyRXZlbnRzLnJlZGFjdGlvbk1vZGUgfCBhc3luYykgIT09IHRydWVcbiAgICBcIlxuICAgIFthbm5vdGF0aW9uU2V0XT1cImFubm90YXRpb25TZXRcIlxuICAgIFt6b29tXT1cInpvb21cIlxuICAgIFtyb3RhdGVdPVwicm90YXRpb25cIlxuICAgIFtoZWlnaHRdPVwicGRmVmlld2VyLm9mZnNldEhlaWdodFwiXG4gICAgW3BhZ2VIZWlnaHRzXT1cInBhZ2VIZWlnaHRzXCJcbiAgPlxuICA8L212LWNvbW1lbnQtc2V0PlxuICA8ZGl2IGNsYXNzPVwibG9hZGluZ01lc3NhZ2VcIiAqbmdJZj1cImxvYWRpbmdEb2N1bWVudFwiPlxuICAgIDxoMyBjbGFzcz1cImdvdnVrLWhlYWRpbmctbVwiPlxuICAgICAge3sgXCJMb2FkaW5nLi4uXCIgfCBycHhUcmFuc2xhdGV9fXt7XG4gICAgICAgIGxvYWRpbmdEb2N1bWVudFByb2dyZXNzID8gbG9hZGluZ0RvY3VtZW50UHJvZ3Jlc3MgKyBcIiVcIiA6IFwiXCJcbiAgICAgIH19XG4gICAgPC9oMz5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|