@hmcts/media-viewer 4.0.16 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/annotations/annotation-set/annotation-create/box-highlight-create/box-highlight-create.component.mjs +3 -3
- package/esm2022/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.directive.mjs +3 -3
- package/esm2022/lib/annotations/annotation-set/annotation-create/highlight-create/highlight-create.service.mjs +3 -3
- package/esm2022/lib/annotations/annotation-set/annotation-set.component.mjs +3 -3
- package/esm2022/lib/annotations/annotation-set/annotation-view/annotation-view.component.mjs +3 -3
- package/esm2022/lib/annotations/annotation-set/annotation-view/rectangle/rectangle.component.mjs +3 -3
- package/esm2022/lib/annotations/annotation-set/ctx-toolbar/ctx-toolbar.component.mjs +3 -3
- package/esm2022/lib/annotations/annotation-set/metadata-layer/metadata-layer.component.mjs +3 -3
- package/esm2022/lib/annotations/annotations.module.mjs +4 -4
- package/esm2022/lib/annotations/comment-set/comment/comment.component.mjs +5 -5
- package/esm2022/lib/annotations/comment-set/comment/comment.service.mjs +3 -3
- package/esm2022/lib/annotations/comment-set/comment/text-highlight/text-highlight.directive.mjs +3 -3
- package/esm2022/lib/annotations/comment-set/comment/textarea-auto-expand/textarea-auto-expand.directive.mjs +3 -3
- package/esm2022/lib/annotations/comment-set/comment-navigate/comments-navigate.component.mjs +3 -3
- package/esm2022/lib/annotations/comment-set/comment-set-header/comment-filter/comment-filter.component.mjs +5 -5
- package/esm2022/lib/annotations/comment-set/comment-set-header/comment-search/comment-search.component.mjs +5 -5
- package/esm2022/lib/annotations/comment-set/comment-set-header/comment-set-header.component.mjs +3 -3
- package/esm2022/lib/annotations/comment-set/comment-set-render.service.mjs +3 -3
- package/esm2022/lib/annotations/comment-set/comment-set.component.mjs +3 -3
- package/esm2022/lib/annotations/comments-summary/comments-summary.component.mjs +3 -3
- package/esm2022/lib/annotations/pipes/date/date.pipe.mjs +3 -3
- package/esm2022/lib/annotations/pipes/filter/filter.pipe.mjs +3 -3
- package/esm2022/lib/annotations/pipes/unsnake/unsnake.pipe.mjs +3 -3
- package/esm2022/lib/annotations/services/annotation-api/annotation-api.service.mjs +3 -3
- package/esm2022/lib/annotations/services/bookmarks-api/bookmarks-api.service.mjs +3 -3
- package/esm2022/lib/annotations/services/tags/tags.services.mjs +3 -3
- package/esm2022/lib/annotations/tags/tags.component.mjs +5 -5
- package/esm2022/lib/bookmark/components/bookmark-icons.component.mjs +3 -3
- package/esm2022/lib/icp/confirm-exit/confirm-action-dialog.component.mjs +3 -3
- package/esm2022/lib/icp/icp-follower.service.mjs +3 -3
- package/esm2022/lib/icp/icp-presenter.service.mjs +3 -3
- package/esm2022/lib/icp/icp-session-api.service.mjs +3 -3
- package/esm2022/lib/icp/icp-update.service.mjs +3 -3
- package/esm2022/lib/icp/icp.service.mjs +3 -3
- package/esm2022/lib/icp/participants-list/participants-list.component.mjs +3 -3
- package/esm2022/lib/icp/socket.service.mjs +3 -3
- package/esm2022/lib/media-viewer.component.mjs +3 -3
- package/esm2022/lib/media-viewer.module.mjs +4 -4
- package/esm2022/lib/print.service.mjs +3 -3
- package/esm2022/lib/redaction/components/redaction.component.mjs +3 -3
- package/esm2022/lib/redaction/services/redaction-api.service.mjs +3 -3
- package/esm2022/lib/shared/gov-uk-date/gov-uk-date.component.mjs +3 -3
- package/esm2022/lib/shared/gov-uk-error-message/gov-uk-error-message.component.mjs +3 -3
- package/esm2022/lib/shared/gov-uk-fieldset/gov-uk-fieldset.component.mjs +3 -3
- package/esm2022/lib/shared/gov-uk-label/gov-uk-label.component.mjs +3 -3
- package/esm2022/lib/shared/shared.module.mjs +4 -4
- package/esm2022/lib/shared/util/services/number.helper.service.mjs +3 -3
- package/esm2022/lib/store/effects/annotation.effects.mjs +3 -3
- package/esm2022/lib/store/effects/bookmarks.effects.mjs +3 -3
- package/esm2022/lib/store/effects/document.effects.mjs +3 -3
- package/esm2022/lib/store/effects/icp.effects.mjs +3 -3
- package/esm2022/lib/store/effects/redaction.effects.mjs +3 -3
- package/esm2022/lib/toolbar/highlight-toolbar/highlight-toolbar.component.mjs +3 -3
- package/esm2022/lib/toolbar/icp-event.service.mjs +3 -3
- package/esm2022/lib/toolbar/icp-toolbar/icp-toolbar.component.mjs +3 -3
- package/esm2022/lib/toolbar/main-toolbar/main-toolbar.component.mjs +3 -3
- package/esm2022/lib/toolbar/redaction-search-bar/redaction-search-bar.component.mjs +5 -5
- package/esm2022/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +3 -3
- package/esm2022/lib/toolbar/search-bar/search-bar.component.mjs +5 -5
- package/esm2022/lib/toolbar/toolbar-button-visibility.service.mjs +3 -3
- package/esm2022/lib/toolbar/toolbar-event.service.mjs +3 -3
- package/esm2022/lib/toolbar/toolbar.module.mjs +4 -4
- package/esm2022/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs +3 -3
- package/esm2022/lib/viewers/convertible-content-viewer/document-conversion-api.service.mjs +3 -3
- package/esm2022/lib/viewers/grab-n-drag.directive.mjs +3 -3
- package/esm2022/lib/viewers/image-viewer/image-viewer.component.mjs +3 -3
- package/esm2022/lib/viewers/multimedia-player/multimedia-player.component.mjs +3 -3
- package/esm2022/lib/viewers/pdf-viewer/pdf-js/pdf-js-wrapper.provider.mjs +3 -3
- package/esm2022/lib/viewers/pdf-viewer/pdf-viewer.component.mjs +3 -3
- package/esm2022/lib/viewers/pdf-viewer/side-bar/bookmarks/bookmarks.component.mjs +3 -3
- package/esm2022/lib/viewers/pdf-viewer/side-bar/outline-item/outline-item.component.mjs +3 -3
- package/esm2022/lib/viewers/pdf-viewer/side-bar/side-bar.component.mjs +3 -3
- package/esm2022/lib/viewers/rotation-persist/rotation-api.service.mjs +3 -3
- package/esm2022/lib/viewers/rotation-persist/rotation-persist.directive.mjs +3 -3
- package/esm2022/lib/viewers/unsupported-viewer/unsupported-viewer.component.mjs +3 -3
- package/esm2022/lib/viewers/viewer-event.service.mjs +3 -3
- package/esm2022/lib/viewers/viewer-util.service.mjs +3 -3
- package/fesm2022/hmcts-media-viewer.mjs +241 -241
- package/fesm2022/hmcts-media-viewer.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -220,12 +220,12 @@ export class RedactionSearchBarComponent {
|
|
|
220
220
|
rectangle = { id: uuid(), ...rectangle };
|
|
221
221
|
return rectangle;
|
|
222
222
|
}
|
|
223
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
224
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
223
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedactionSearchBarComponent, deps: [{ token: i1.Store }, { token: i2.ToolbarButtonVisibilityService }, { token: i3.ToolbarEventService }, { token: i4.HighlightCreateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
224
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RedactionSearchBarComponent, selector: "mv-redaction-search-bar", host: { listeners: { "window:keydown": "onWindowKeyDown($event)" } }, viewQueries: [{ propertyName: "findInput", first: true, predicate: ["findInput"], descendants: true, static: true }], ngImport: i0, template: "<div\n *ngIf=\"openSearchModal\"\n class=\"searchbar redaction-search-bar govuk-!-padding-3\"\n>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-full govuk-!-padding-right-0\">\n <div class=\"redaction-search-buttons-area\">\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button searchbar-button--close\"\n title=\"Close Search\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"onCloseSearchModal()\"\n ></button>\n </div>\n <input\n id=\"search_input\"\n class=\"govuk-input govuk-!-width-three-quarters govuk-!-display-inline-block govuk-!-margin-top-5\"\n type=\"text\"\n aria-label=\"Redact from search\"\n #findInput\n title=\"Redact from search\"\n placeholder=\"{{ titleText + ' from search...' | rpxTranslate }}\"\n data-l10n-id=\"search_input\"\n [ngModel]=\"searchText\"\n (ngModelChange)=\"searchText = $event\"\n (keydown.escape)=\"onEscapeKeyPress($event)\"\n (keydown.enter)=\"onEnterKeyPress($event)\"\n />\n <div class=\"redaction-search-buttons-area\">\n <button\n id=\"mvSearchAllBtn\"\n class=\"govuk-button govuk-!-margin-bottom-0\"\n data-module=\"govuk-button\"\n (click)=\"search()\"\n [disabled]=\"redactAllInProgress\"\n >\n {{ \"Search\" | rpxTranslate }}\n </button>\n <button\n id=\"mvRedactAllBtn\"\n class=\"govuk-button govuk-!-margin-left-2 govuk-!-margin-bottom-0\"\n data-module=\"govuk-button\"\n (click)=\"search(false)\"\n [disabled]=\"redactAllInProgress || resultCount <= 0\"\n >\n {{ titleText + \" all\" | rpxTranslate }}\n </button>\n </div>\n <div\n class=\"govuk-grid-column-three-quarters govuk-!-padding-left-0 govuk-!-padding-top-2 redaction-status-text\"\n >\n <span\n id=\"findRedactResultsCount\"\n class=\"govuk-grid-column-full govuk-!-margin-right-4 govuk-!-margin-left-0 govuk-!-padding-left-0\"\n ><h4\n class=\"govuk-!-display-inline-block govuk-!-margin-top-0 govuk-!-margin-bottom-1\"\n *ngIf=\"redactAllInProgress\"\n >\n {{ inProgressText + \" in progress\" | rpxTranslate }}\n </h4>\n {{ redactAllInProgress ? \"\" : resultsText }}</span\n >\n <span>\n <h5\n id=\"redactAllInProgressCount\"\n class=\"govuk-!-display-inline-block govuk-!-margin-top-0 govuk-!-margin-bottom-1\"\n >\n {{ redactAllInProgress ? redactAllText : \"\" }}\n </h5>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".redaction-search-buttons-area{display:flex;flex-direction:row;padding-top:.5rem}.redaction-search-bar{width:20rem;left:73%;top:2%}.redaction-status-text{height:2.6rem}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i7.RpxTranslatePipe, name: "rpxTranslate" }] }); }
|
|
225
225
|
}
|
|
226
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
226
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedactionSearchBarComponent, decorators: [{
|
|
227
227
|
type: Component,
|
|
228
|
-
args: [{ selector: 'mv-redaction-search-bar', template: "<div\n *ngIf=\"openSearchModal\"\n class=\"searchbar redaction-search-bar govuk-!-padding-3\"\n>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-full govuk-!-padding-right-0\">\n <div class=\"redaction-search-buttons-area\">\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button searchbar-button--close\"\n title=\"Close Search\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"onCloseSearchModal()\"\n ></button>\n </div>\n <input\n id=\"search_input\"\n class=\"govuk-input govuk-!-width-three-quarters govuk-!-display-inline-block govuk-!-margin-top-5\"\n type=\"text\"\n aria-label=\"Redact from search\"\n #findInput\n title=\"Redact from search\"\n placeholder=\"{{ titleText + ' from search...' | rpxTranslate }}\"\n data-l10n-id=\"search_input\"\n [
|
|
228
|
+
args: [{ selector: 'mv-redaction-search-bar', template: "<div\n *ngIf=\"openSearchModal\"\n class=\"searchbar redaction-search-bar govuk-!-padding-3\"\n>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-full govuk-!-padding-right-0\">\n <div class=\"redaction-search-buttons-area\">\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button searchbar-button--close\"\n title=\"Close Search\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"onCloseSearchModal()\"\n ></button>\n </div>\n <input\n id=\"search_input\"\n class=\"govuk-input govuk-!-width-three-quarters govuk-!-display-inline-block govuk-!-margin-top-5\"\n type=\"text\"\n aria-label=\"Redact from search\"\n #findInput\n title=\"Redact from search\"\n placeholder=\"{{ titleText + ' from search...' | rpxTranslate }}\"\n data-l10n-id=\"search_input\"\n [ngModel]=\"searchText\"\n (ngModelChange)=\"searchText = $event\"\n (keydown.escape)=\"onEscapeKeyPress($event)\"\n (keydown.enter)=\"onEnterKeyPress($event)\"\n />\n <div class=\"redaction-search-buttons-area\">\n <button\n id=\"mvSearchAllBtn\"\n class=\"govuk-button govuk-!-margin-bottom-0\"\n data-module=\"govuk-button\"\n (click)=\"search()\"\n [disabled]=\"redactAllInProgress\"\n >\n {{ \"Search\" | rpxTranslate }}\n </button>\n <button\n id=\"mvRedactAllBtn\"\n class=\"govuk-button govuk-!-margin-left-2 govuk-!-margin-bottom-0\"\n data-module=\"govuk-button\"\n (click)=\"search(false)\"\n [disabled]=\"redactAllInProgress || resultCount <= 0\"\n >\n {{ titleText + \" all\" | rpxTranslate }}\n </button>\n </div>\n <div\n class=\"govuk-grid-column-three-quarters govuk-!-padding-left-0 govuk-!-padding-top-2 redaction-status-text\"\n >\n <span\n id=\"findRedactResultsCount\"\n class=\"govuk-grid-column-full govuk-!-margin-right-4 govuk-!-margin-left-0 govuk-!-padding-left-0\"\n ><h4\n class=\"govuk-!-display-inline-block govuk-!-margin-top-0 govuk-!-margin-bottom-1\"\n *ngIf=\"redactAllInProgress\"\n >\n {{ inProgressText + \" in progress\" | rpxTranslate }}\n </h4>\n {{ redactAllInProgress ? \"\" : resultsText }}</span\n >\n <span>\n <h5\n id=\"redactAllInProgressCount\"\n class=\"govuk-!-display-inline-block govuk-!-margin-top-0 govuk-!-margin-bottom-1\"\n >\n {{ redactAllInProgress ? redactAllText : \"\" }}\n </h5>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".redaction-search-buttons-area{display:flex;flex-direction:row;padding-top:.5rem}.redaction-search-bar{width:20rem;left:73%;top:2%}.redaction-status-text{height:2.6rem}\n"] }]
|
|
229
229
|
}], ctorParameters: () => [{ type: i1.Store }, { type: i2.ToolbarButtonVisibilityService }, { type: i3.ToolbarEventService }, { type: i4.HighlightCreateService }], propDecorators: { findInput: [{
|
|
230
230
|
type: ViewChild,
|
|
231
231
|
args: ['findInput', { static: true }]
|
|
@@ -233,4 +233,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
233
233
|
type: HostListener,
|
|
234
234
|
args: ['window:keydown', ['$event']]
|
|
235
235
|
}] } });
|
|
236
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkYWN0aW9uLXNlYXJjaC1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvdG9vbGJhci9yZWRhY3Rpb24tc2VhcmNoLWJhci9yZWRhY3Rpb24tc2VhcmNoLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi90b29sYmFyL3JlZGFjdGlvbi1zZWFyY2gtYmFyL3JlZGFjdGlvbi1zZWFyY2gtYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBa0MsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFeEYsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQXFCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlsRyxPQUFPLEVBQVMsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRzVDLE9BQU8sS0FBSyxZQUFZLE1BQU0sMENBQTBDLENBQUM7QUFDekUsT0FBTyxLQUFLLG9CQUFvQixNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWxDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7Ozs7Ozs7OztBQU85QixNQUFNLE9BQU8sMkJBQTJCO0lBOEJ0QyxZQUNVLEtBQTZCLEVBQ3JCLGNBQThDLEVBQzlDLGFBQWtDLEVBQ2xDLGdCQUF3QztRQUhoRCxVQUFLLEdBQUwsS0FBSyxDQUF3QjtRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0M7UUFDOUMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBQ2xDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBd0I7UUE5QjFELGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLGNBQVMsR0FBRyxLQUFL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Q29udGVudCI6WyJpbXBvcnQgeyBCdWxrUmVkYWN0aW9uLCBSZWRhY3Rpb24gfSBmcm9tICcuLy4uLy4uL3JlZGFjdGlvbi9zZXJ2aWNlcy9yZWRhY3Rpb24ubW9kZWwnO1xuaW1wb3J0IHsgU2VhcmNoTW9kZSwgU2VhcmNoUmVzdWx0c0NvdW50LCBTZWFyY2hUeXBlIH0gZnJvbSAnLi8uLi90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVkYWN0aW9uU2VhcmNoLCBSZWRhY3RSZWN0YW5nbGUgfSBmcm9tICcuL3JlZGFjdGlvbi1zZWFyY2gubW9kZWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vdG9vbGJhci1idXR0b24tdmlzaWJpbGl0eS5zZXJ2aWNlJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmUsIHNlbGVjdCB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCAqIGFzIGZyb21TdG9yZSBmcm9tICcuLi8uLi9zdG9yZS9yZWR1Y2Vycy9yZWR1Y2Vycyc7XG5pbXBvcnQgeyBSZWN0YW5nbGUgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXZpZXcvcmVjdGFuZ2xlL3JlY3RhbmdsZS5tb2RlbCc7XG5pbXBvcnQgKiBhcyBmcm9tRG9jdW1lbnQgZnJvbSAnLi4vLi4vc3RvcmUvc2VsZWN0b3JzL2RvY3VtZW50LnNlbGVjdG9ycyc7XG5pbXBvcnQgKiBhcyBmcm9tUmVkYWN0aW9uQWN0aW9ucyBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL3JlZGFjdGlvbi5hY3Rpb25zJztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IEhpZ2hsaWdodENyZWF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLWNyZWF0ZS9oaWdobGlnaHQtY3JlYXRlL2hpZ2hsaWdodC1jcmVhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBzb21lIH0gZnJvbSAnbG9kYXNoJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXYtcmVkYWN0aW9uLXNlYXJjaC1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVkYWN0aW9uLXNlYXJjaC1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZWRhY3Rpb24tc2VhcmNoLWJhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFJlZGFjdGlvblNlYXJjaEJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBAVmlld0NoaWxkKCdmaW5kSW5wdXQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBmaW5kSW5wdXQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgaGlnaGxpZ2h0QWxsID0gdHJ1ZTtcbiAgbWF0Y2hDYXNlID0gZmFsc2U7XG4gIHdob2xlV29yZCA9IGZhbHNlO1xuICByZXN1bHRzVGV4dCA9ICcnO1xuICBzZWFyY2hUZXh0ID0gJyc7XG4gIHJlc3VsdENvdW50ID0gMDtcbiAgcmVkYWN0RWxlbWVudHM6IFJlZGFjdFJlY3RhbmdsZVtdID0gW107XG4gIHBhZ2VIZWlnaHQ6IG51bWJlcjtcbiAgcGFnZVdpZHRoOiBudW1iZXI7XG4gIHpvb206IG51bWJlcjtcbiAgcm90YXRlOiBudW1iZXI7XG4gIGFsbFBhZ2VzOiBvYmplY3Q7XG4gIHJlZGFjdEFsbDogYm9vbGVhbjtcbiAgb3BlblNlYXJjaE1vZGFsOiBib29sZWFuO1xuICByZWRhY3RBbGxJblByb2dyZXNzOiBib29sZWFuO1xuICByZWRhY3RBbGxUZXh0Pzogc3RyaW5nO1xuICBzZWFyY2hUeXBlOiBTZWFyY2hUeXBlO1xuICBpblByb2dyZXNzVGV4dDogc3RyaW5nO1xuICB0aXRsZVRleHQ6IHN0cmluZztcblxuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgZG9jdW1lbnRJZDogc3RyaW5nO1xuICBwdWJsaWMgYWR2YW5jZWRTZWFyY2hWaXNpYmxlID0gZmFsc2U7XG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxmcm9tU3RvcmUuU3RhdGU+LFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyQnV0dG9uczogVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSBoaWdobGlnaHRTZXJ2aWNlOiBIaWdobGlnaHRDcmVhdGVTZXJ2aWNlLFxuICApIHsgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMudG9vbGJhckV2ZW50cy5yZWRhY3Rpb25TZXJhY2hTdWJqZWN0LnN1YnNjcmliZSgocmVzdWx0czogUmVkYWN0aW9uU2VhcmNoKSA9PiB0aGlzLnJlZGFjdEFsbFNlYXJjaGVkKHJlc3VsdHMpKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQodGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tRG9jdW1lbnQuZ2V0RG9jdW1lbnRJZCkpLnN1YnNjcmliZShkb2NJZCA9PiB0aGlzLmRvY3VtZW50SWQgPSBkb2NJZCkpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21Eb2N1bWVudC5nZXRQYWdlcykpLnN1YnNjcmliZSgocGFnZXMpID0+IHtcbiAgICAgIGlmIChwYWdlc1sxXSkge1xuICAgICAgICB0aGlzLmFsbFBhZ2VzID0gcGFnZXM7XG4gICAgICB9XG4gICAgfSkpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZChcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2hSZXN1bHRzQ291bnRTdWJqZWN0LnN1YnNjcmliZShyZXN1bHRzID0+IHRoaXMuc2V0U2VhcmNoUmVzdWx0c0NvdW50KHJlc3VsdHMpKVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5vcGVuUmVkYWN0aW9uU2VhcmNoLnN1YnNjcmliZSgoc2VhcmNoTW9kZTogU2VhcmNoTW9kZSkgPT4ge1xuICAgICAgaWYgKHNlYXJjaE1vZGUpIHtcbiAgICAgICAgdGhpcy5vcGVuU2VhcmNoTW9kYWwgPSBzZWFyY2hNb2RlLmlzT3BlbjtcbiAgICAgICAgdGhpcy5zZWFyY2hUeXBlID0gc2VhcmNoTW9kZS5tb2RlVHlwZTtcbiAgICAgICAgdGhpcy5tb2RlVGV4dCgpO1xuICAgICAgfVxuICAgIH0pKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQodGhpcy50b29sYmFyRXZlbnRzLnJlZGFjdEFsbEluUHJvZ3Jlc3NTdWJqZWN0XG4gICAgICAuc3Vic2NyaWJlKGluUHJvZ3Jlc3MgPT4gdGhpcy5yZWRhY3RBbGxJblByb2dyZXNzID0gaW5Qcm9ncmVzcykpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXlkb3duJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uV2luZG93S2V5RG93bihlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGUuY29kZSA9PT0gJ0YzJyB8fCAoZS5jdHJsS2V5ICYmIGUuY29kZSA9PT0gJ0tleUYnKSkge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KGZhbHNlKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5maW5kSW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpLCAyMDApO1xuICAgIH1cbiAgfVxuXG4gIHNlYXJjaChyZXNldDogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICB0aGlzLnJlZGFjdEFsbCA9ICFyZXNldDtcbiAgICBpZiAodGhpcy5yZWRhY3RBbGwpIHtcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5yZWRhY3RBbGxJblByb2dyZXNzU3ViamVjdC5uZXh0KHRydWUpO1xuICAgIH1cbiAgICBpZiAocmVzZXQpIHtcbiAgICAgIHRoaXMucmVkYWN0RWxlbWVudHMgPSBbXTtcbiAgICB9XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaCh7XG4gICAgICBzZWFyY2hUZXJtOiB0aGlzLnNlYXJjaFRleHQsXG4gICAgICBoaWdobGlnaHRBbGw6IHRoaXMuaGlnaGxpZ2h0QWxsLFxuICAgICAgbWF0Y2hDYXNlOiB0aGlzLm1hdGNoQ2FzZSxcbiAgICAgIHdob2xlV29yZDogdGhpcy53aG9sZVdvcmQsXG4gICAgICBwcmV2aW91czogZmFsc2UsXG4gICAgICByZXNldFxuICAgIH0pO1xuICB9XG5cbiAgbW9kZVRleHQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VhcmNoVHlwZSA9PT0gU2VhcmNoVHlwZS5IaWdobGlnaHQpIHtcbiAgICAgIHRoaXMuaW5Qcm9ncmVzc1RleHQgPSAnSGlnaGxpZ2h0aW5nJztcbiAgICAgIHRoaXMudGl0bGVUZXh0ID0gJ0hpZ2hsaWdodCc7XG4gICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaFR5cGUgPT09IFNlYXJjaFR5cGUuUmVkYWN0KSB7XG4gICAgICB0aGlzLmluUHJvZ3Jlc3NUZXh0ID0gJ1JlZGFjdGluZyc7XG4gICAgICB0aGlzLnRpdGxlVGV4dCA9ICdSZWRhY3QnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2F2ZVJlZGFjdGlvbihyZWRhY3RSZWN0YW5nbGU6IFJlZGFjdFJlY3RhbmdsZVtdKSB7XG4gICAgY29uc3QgcmVkYWN0aW9uID0gcmVkYWN0UmVjdGFuZ2xlLm1hcChlbGUgPT4ge1xuICAgICAgcmV0dXJuIHsgcGFnZTogZWxlLnBhZ2UsIHJlY3RhbmdsZXM6IGVsZS5yZWN0YW5nbGVzLCByZWRhY3Rpb25JZDogdXVpZCgpLCBkb2N1bWVudElkOiB0aGlzLmRvY3VtZW50SWQgfSBhcyBSZWRhY3Rpb247XG4gICAgfSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgZnJvbVJlZGFjdGlvbkFjdGlvbnMuU2F2ZUJ1bGtSZWRhY3Rpb24oeyBzZWFyY2hSZWRhY3Rpb25zOiByZWRhY3Rpb24gfSBhcyBCdWxrUmVkYWN0aW9uKSk7XG4gIH1cblxuICBwcml2YXRlIGV4aXN0SW5SZWRhY3RFbGVtZW50cyhwYWdlTnVtYmVyOiBudW1iZXIsIG1hdGVjaGVkSW5kZXg6IG51bWJlciwgcmVjdGFuZ2xlczogUmVjdGFuZ2xlW10pOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5yZWRhY3RFbGVtZW50cyAmJiB0aGlzLnJlZGFjdEVsZW1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IHBhZ2VzRm91bmQgPSB0aGlzLnJlZGFjdEVsZW1lbnRzLmZpbmQocmUgPT4gcmUucGFnZSA9PT0gcGFnZU51bWJlciAmJiByZS5tYXRjaGVkSW5kZXggPT09IG1hdGVjaGVkSW5kZXgpO1xuICAgICAgY29uc3QgcGFnZVJlY3RhbmdsZXMgPSBwYWdlc0ZvdW5kPy5yZWN0YW5nbGVzO1xuICAgICAgaWYgKCFwYWdlUmVjdGFuZ2xlcyB8fCBwYWdlUmVjdGFuZ2xlcy5sZW5ndGggPD0gMCkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICBsZXQgbWF0Y2hlc1JlY3RhbmdsZXMgPSAwO1xuICAgICAgZm9yIChsZXQgcmVjdEluZHggPSAwOyByZWN0SW5keCA8IHBhZ2VSZWN0YW5nbGVzLmxlbmd0aDsgcmVjdEluZHgrKykge1xuICAgICAgICBjb25zdCByZWN0YW5nbGUgPSBwYWdlUmVjdGFuZ2xlc1tyZWN0SW5keF07XG4gICAgICAgIGNvbnN0IGZvdW5kUmVjdGFuZ2xlID0gcmVjdGFuZ2xlcy5maW5kKHJlID0+IHJlLndpZHRoID09PSByZWN0YW5nbGUud2lkdGggJiZcbiAgICAgICAgICByZS5oZWlnaHQgPT09IHJlY3RhbmdsZS5oZWlnaHQgJiYgcmUueCA9PT0gcmVjdGFuZ2xlLnggJiYgcmUueSA9PT0gcmVjdGFuZ2xlLnkpO1xuICAgICAgICBpZiAoZm91bmRSZWN0YW5nbGUpIHtcbiAgICAgICAgICBtYXRjaGVzUmVjdGFuZ2xlcysrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gcGFnZVJlY3RhbmdsZXMubGVuZ3RoID09PSBtYXRjaGVzUmVjdGFuZ2xlcztcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgb25DbG9zZVNlYXJjaE1vZGFsKCkge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy5vcGVuUmVkYWN0aW9uU2VhcmNoLm5leHQoeyBpc09wZW46IGZhbHNlLCBtb2RlVHlwZTogdGhpcy5zZWFyY2hUeXBlIH0pO1xuICB9XG5cblxuICBwcml2YXRlIHNldFNlYXJjaFJlc3VsdHNDb3VudChyZXN1bHRzOiBTZWFyY2hSZXN1bHRzQ291bnQpOiB2b2lkIHtcbiAgICB0aGlzLnJlc3VsdENvdW50ID0gcmVzdWx0cy50b3RhbDtcbiAgICB0aGlzLnJlc3VsdHNUZXh0ID0gdGhpcy5yZXN1bHRDb3VudCA+IDBcbiAgICAgID8gYCR7cmVzdWx0cy50b3RhbH0gcmVzdWx0cyBmb3VuZHNgXG4gICAgICA6ICdObyByZXN1bHRzIGZvdW5kJztcbiAgfVxuXG4gIHByaXZhdGUgcmVkYWN0QWxsU2VhcmNoZWQocmVzdWx0czogUmVkYWN0aW9uU2VhcmNoKTogdm9pZCB7XG4gICAgY29uc3QgJHRoaXMgPSB0aGlzO1xuICAgIGNvbnN0IGludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBjb25zdCBoaWdobGlnaHRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnaGlnaGxpZ2h0IHNlbGVjdGVkJyk7XG4gICAgICBpZiAoaGlnaGxpZ2h0RWxlbWVudCAmJiBoaWdobGlnaHRFbGVtZW50Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgY2xlYXJJbnRlcnZhbChpbnRlcnZhbElkKTtcbiAgICAgICAgJHRoaXMucmVkYWN0QWxsU2VhcmNoZWRUaWNrKHJlc3VsdHMpO1xuICAgICAgfVxuICAgIH0sIDEwMCk7XG4gIH1cblxuXG4gIHByaXZhdGUgcmVkYWN0QWxsU2VhcmNoZWRUaWNrKHJlc3VsdHM6IFJlZGFjdGlvblNlYXJjaCk6IHZvaWQge1xuICAgIGNvbnN0IGhpZ2hsaWdodEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdoaWdobGlnaHQgc2VsZWN0ZWQnKTtcbiAgICBpZiAoaGlnaGxpZ2h0RWxlbWVudCAmJiBoaWdobGlnaHRFbGVtZW50Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucmVzdWx0Q291bnQgPSByZXN1bHRzLm1hdGNoZXNDb3VudDtcbiAgICAgIGNvbnN0IHBhZ2VOdW1iZXIgPSByZXN1bHRzLnBhZ2UgKyAxO1xuICAgICAgY29uc3QgcmVjdGFuZ2xlcyA9IHRoaXMuZ2V0UmVjdGFuZ2xlcyhwYWdlTnVtYmVyKTtcbiAgICAgIGlmIChyZWN0YW5nbGVzICYmIHRoaXMucmVkYWN0RWxlbWVudHMubGVuZ3RoIDw9IHRoaXMucmVzdWx0Q291bnRcbiAgICAgICAgJiYgIXRoaXMuZXhpc3RJblJlZGFjdEVsZW1lbnRzKHBhZ2VOdW1iZXIsIHJlc3VsdHMubWF0Y2hlZEluZGV4LCByZWN0YW5nbGVzKSkge1xuICAgICAgICB0aGlzLnJlZGFjdEVsZW1lbnRzLnB1c2goeyBwYWdlOiBwYWdlTnVtYmVyLCBtYXRjaGVkSW5kZXg6IHJlc3VsdHM/Lm1hdGNoZWRJbmRleCwgcmVjdGFuZ2xlcyB9IGFzIFJlZGFjdFJlY3RhbmdsZSk7XG4gICAgICAgIHRoaXMuQ3JlYXRlUmVkYWN0QWxsVGV4dCgpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMucmVkYWN0QWxsICYmIHRoaXMucmVzdWx0Q291bnQgJiYgdGhpcy5yZXN1bHRDb3VudCA+IDBcbiAgICAgICAgJiYgcmVjdGFuZ2xlcyAmJiB0aGlzLnJlZGFjdEVsZW1lbnRzLmxlbmd0aCA8IHRoaXMucmVzdWx0Q291bnQpIHtcbiAgICAgICAgdGhpcy5zZWFyY2goZmFsc2UpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5yZWRhY3RBbGwgJiYgdGhpcy5yZXN1bHRDb3VudCAmJiB0aGlzLnJlZGFjdEVsZW1lbnRzLmxlbmd0aCA9PT0gdGhpcy5yZXN1bHRDb3VudCkge1xuICAgICAgICB0aGlzLnJlZGFjdEFsbCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJlZGFjdEFsbFRleHQgPSBudWxsO1xuICAgICAgICBpZiAodGhpcy5zZWFyY2hUeXBlID09PSBTZWFyY2hUeXBlLlJlZGFjdCkge1xuICAgICAgICAgIHRoaXMuc2F2ZVJlZGFjdGlvbih0aGlzLnJlZGFjdEVsZW1lbnRzKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaFR5cGUgPT09IFNlYXJjaFR5cGUuSGlnaGxpZ2h0KSB7XG4gICAgICAgICAgdGhpcy5oaWdobGlnaHRTZXJ2aWNlLnNhdmVBbm5vdGF0aW9uU2V0KHRoaXMucmVkYWN0RWxlbWVudHMpO1xuICAgICAgICAgIHRoaXMuY2xlYW5VcFBvc3RTYXZlKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNsZWFuVXBQb3N0U2F2ZSgpIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMucmVkYWN0QWxsSW5Qcm9ncmVzc1N1YmplY3QubmV4dChmYWxzZSk7XG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJyc7XG4gICAgdGhpcy5zZWFyY2goKTtcbiAgfVxuXG4gIHByaXZhdGUgQ3JlYXRlUmVkYWN0QWxsVGV4dCgpIHtcbiAgICB0aGlzLnJlZGFjdEFsbFRleHQgPSBgJHt0aGlzLnJlZGFjdEVsZW1lbnRzLmxlbmd0aH0gb2YgJHt0aGlzLnJlc3VsdENvdW50fWA7XG4gIH1cblxuICBwdWJsaWMgb25Fc2NhcGVLZXlQcmVzcyhlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9uRW50ZXJLZXlQcmVzcyhlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2goKTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVTZWFyY2hCYXIoKSB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KCF0aGlzLnRvb2xiYXJFdmVudHMuc2VhcmNoQmFySGlkZGVuLmdldFZhbHVlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSZWN0YW5nbGVzKHBhZ2U6IG51bWJlcik6IFJlY3RhbmdsZVtdIHtcbiAgICB0aGlzLnBhZ2VIZWlnaHQgPSB0aGlzLmFsbFBhZ2VzW3BhZ2VdLnN0eWxlcy5oZWlnaHQ7XG4gICAgdGhpcy5wYWdlV2lkdGggPSB0aGlzLmFsbFBhZ2VzW3BhZ2VdLnN0eWxlcy53aWR0aDtcbiAgICB0aGlzLnpvb20gPSBwYXJzZUZsb2F0KHRoaXMuYWxsUGFnZXNbcGFnZV0uc2NhbGVSb3RhdGlvbi5zY2FsZSk7XG4gICAgdGhpcy5yb3RhdGUgPSBwYXJzZUludCh0aGlzLmFsbFBhZ2VzW3BhZ2VdLnNjYWxlUm90YXRpb24ucm90YXRpb24sIDEwKTtcbiAgICBjb25zdCBzZWxlY3RlZEhpZ2hMaWdodGVkRWxlbWVudHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdoaWdobGlnaHQgc2VsZWN0ZWQnKTtcbiAgICBpZiAoc2VsZWN0ZWRIaWdoTGlnaHRlZEVsZW1lbnRzICYmIHNlbGVjdGVkSGlnaExpZ2h0ZWRFbGVtZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBkb2NSYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7XG4gICAgICBpZiAoc29tZShzZWxlY3RlZEhpZ2hMaWdodGVkRWxlbWVudHMsIGVsZW1lbnQgPT4gZWxlbWVudC5jbGFzc05hbWUgPT09ICdoaWdobGlnaHQgYmVnaW4gc2VsZWN0ZWQnIHx8IGVsZW1lbnQuY2xhc3NOYW1lID09PSAnaGlnaGxpZ2h0IGVuZCBzZWxlY3RlZCcpKSB7XG4gICAgICAgIGRvY1JhbmdlLnNldFN0YXJ0KHNlbGVjdGVkSGlnaExpZ2h0ZWRFbGVtZW50c1swXSwgMCk7XG4gICAgICAgIGNvbnN0IGVuZE5vZGUgPSBzZWxlY3RlZEhpZ2hMaWdodGVkRWxlbWVudHNbc2VsZWN0ZWRIaWdoTGlnaHRlZEVsZW1lbnRzLmxlbmd0aCAtIDFdO1xuICAgICAgICBkb2NSYW5nZS5zZXRFbmQoZW5kTm9kZSwgZW5kTm9kZS5jaGlsZE5vZGVzLmxlbmd0aCk7XG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgZG9jUmFuZ2Uuc2VsZWN0Tm9kZUNvbnRlbnRzKHNlbGVjdGVkSGlnaExpZ2h0ZWRFbGVtZW50c1swXSBhcyBIVE1MRWxlbWVudCk7XG4gICAgICB9XG4gICAgICBjb25zdCBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7XG4gICAgICBzZWxlY3Rpb24/LnJlbW92ZUFsbFJhbmdlcygpO1xuICAgICAgc2VsZWN0aW9uPy5hZGRSYW5nZShkb2NSYW5nZSk7XG4gICAgICBpZiAoc2VsZWN0aW9uLnJhbmdlQ291bnQgJiYgIXNlbGVjdGlvbi5pc0NvbGxhcHNlZCkge1xuICAgICAgICBjb25zdCByYW5nZSA9IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApLmNsb25lUmFuZ2UoKTtcbiAgICAgICAgY29uc3QgY2xpZW50UmVjdHMgPSByYW5nZS5nZXRDbGllbnRSZWN0cygpO1xuXG4gICAgICAgIGlmIChjbGllbnRSZWN0cykge1xuICAgICAgICAgIGNvbnN0IHBhcmVudFJlY3QgPSBzZWxlY3RlZEhpZ2hMaWdodGVkRWxlbWVudHNbMF0ucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgIGNvbnN0IHNlbGVjdGlvblJlY3RhbmdsZXM6IFJlY3RhbmdsZVtdID0gW107XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjbGllbnRSZWN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0aW9uUmVjdGFuZ2xlID0gdGhpcy5jcmVhdGVUZXh0UmVjdGFuZ2xlKGNsaWVudFJlY3RzW2ldLCBwYXJlbnRSZWN0KTtcbiAgICAgICAgICAgIGNvbnN0IGZpbmRTZWxlY3R0aW9uUmVjdGFuZ2xlID0gc2VsZWN0aW9uUmVjdGFuZ2xlcy5maW5kKFxuICAgICAgICAgICAgICAocmVjdCkgPT4gcmVjdC53aWR0aCA9PT0gc2VsZWN0aW9uUmVjdGFuZ2xlLndpZHRoICYmIHJlY3QueCA9PT0gc2VsZWN0aW9uUmVjdGFuZ2xlLnhcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoIWZpbmRTZWxlY3R0aW9uUmVjdGFuZ2xlKSB7XG4gICAgICAgICAgICAgIHNlbGVjdGlvblJlY3RhbmdsZXMucHVzaChzZWxlY3Rpb25SZWN0YW5nbGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBzZWxlY3Rpb25SZWN0YW5nbGVzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVUZXh0UmVjdGFuZ2xlKHJlY3Q6IERPTVJlY3QsIHBhcmVudFJlY3Q6IGFueSk6IFJlY3RhbmdsZSB7XG4gICAgY29uc3QgaGVpZ2h0ID0gcmVjdC5ib3R0b20gLSByZWN0LnRvcDtcbiAgICBjb25zdCB3aWR0aCA9IHJlY3QucmlnaHQgLSByZWN0LmxlZnQ7XG4gICAgY29uc3QgdG9wID0gcmVjdC50b3AgLSBwYXJlbnRSZWN0LnRvcDtcbiAgICBjb25zdCBsZWZ0ID0gcmVjdC5sZWZ0IC0gcGFyZW50UmVjdC5sZWZ0O1xuXG4gICAgbGV0IHJlY3RhbmdsZSA9IHRoaXMuaGlnaGxpZ2h0U2VydmljZS5hcHBseVJvdGF0aW9uKFxuICAgICAgdGhpcy5wYWdlSGVpZ2h0LFxuICAgICAgdGhpcy5wYWdlV2lkdGgsXG4gICAgICBoZWlnaHQsXG4gICAgICB3aWR0aCxcbiAgICAgIHRvcCxcbiAgICAgIGxlZnQsXG4gICAgICB0aGlzLnJvdGF0ZSxcbiAgICAgIHRoaXMuem9vbVxuICAgICk7XG4gICAgcmVjdGFuZ2xlID0geyBpZDogdXVpZCgpLCAuLi5yZWN0YW5nbGUgfTtcblxuICAgIHJldHVybiByZWN0YW5nbGUgYXMgUmVjdGFuZ2xlO1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwib3BlblNlYXJjaE1vZGFsXCJcbiAgY2xhc3M9XCJzZWFyY2hiYXIgcmVkYWN0aW9uLXNlYXJjaC1iYXIgZ292dWstIS1wYWRkaW5nLTNcIlxuPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1yb3dcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tZnVsbCBnb3Z1ay0hLXBhZGRpbmctcmlnaHQtMFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJlZGFjdGlvbi1zZWFyY2gtYnV0dG9ucy1hcmVhXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBpZD1cIm12Q2xvc2VCdG5cIlxuICAgICAgICAgICNtdkNsb3NlQnRuXG4gICAgICAgICAgY2xhc3M9XCJtdi1idXR0b24gc2VhcmNoYmFyLWJ1dHRvbi0tY2xvc2VcIlxuICAgICAgICAgIHRpdGxlPVwiQ2xvc2UgU2VhcmNoXCJcbiAgICAgICAgICBkYXRhLWwxMG4taWQ9XCJtdlJlZGFjdEJ0blwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQ2xvc2VTZWFyY2hNb2RhbCgpXCJcbiAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8aW5wdXRcbiAgICAgICAgaWQ9XCJzZWFyY2hfaW5wdXRcIlxuICAgICAgICBjbGFzcz1cImdvdnVrLWlucHV0IGdvdnVrLSEtd2lkdGgtdGhyZWUtcXVhcnRlcnMgZ292dWstIS1kaXNwbGF5LWlubGluZS1ibG9jayBnb3Z1ay0hLW1hcmdpbi10b3AtNVwiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIlJlZGFjdCBmcm9tIHNlYXJjaFwiXG4gICAgICAgICNmaW5kSW5wdXRcbiAgICAgICAgdGl0bGU9XCJSZWRhY3QgZnJvbSBzZWFyY2hcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHRpdGxlVGV4dCArICcgZnJvbSBzZWFyY2guLi4nIHwgcnB4VHJhbnNsYXRlIH19XCJcbiAgICAgICAgZGF0YS1sMTBuLWlkPVwic2VhcmNoX2lucHV0XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCJcbiAgICAgICAgKGtleWRvd24uZXNjYXBlKT1cIm9uRXNjYXBlS2V5UHJlc3MoJGV2ZW50KVwiXG4gICAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uRW50ZXJLZXlQcmVzcygkZXZlbnQpXCJcbiAgICAgIC8+XG4gICAgICA8ZGl2IGNsYXNzPVwicmVkYWN0aW9uLXNlYXJjaC1idXR0b25zLWFyZWFcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGlkPVwibXZTZWFyY2hBbGxCdG5cIlxuICAgICAgICAgIGNsYXNzPVwiZ292dWstYnV0dG9uIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS0wXCJcbiAgICAgICAgICBkYXRhLW1vZHVsZT1cImdvdnVrLWJ1dHRvblwiXG4gICAgICAgICAgKGNsaWNrKT1cInNlYXJjaCgpXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwicmVkYWN0QWxsSW5Qcm9ncmVzc1wiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBcIlNlYXJjaFwiIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgaWQ9XCJtdlJlZGFjdEFsbEJ0blwiXG4gICAgICAgICAgY2xhc3M9XCJnb3Z1ay1idXR0b24gZ292dWstIS1tYXJnaW4tbGVmdC0yIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS0wXCJcbiAgICAgICAgICBkYXRhLW1vZHVsZT1cImdvdnVrLWJ1dHRvblwiXG4gICAgICAgICAgKGNsaWNrKT1cInNlYXJjaChmYWxzZSlcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJyZWRhY3RBbGxJblByb2dyZXNzIHx8IHJlc3VsdENvdW50IDw9IDBcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgdGl0bGVUZXh0ICsgXCIgYWxsXCIgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJnb3Z1ay1ncmlkLWNvbHVtbi10aHJlZS1xdWFydGVycyBnb3Z1ay0hLXBhZGRpbmctbGVmdC0wIGdvdnVrLSEtcGFkZGluZy10b3AtMiByZWRhY3Rpb24tc3RhdHVzLXRleHRcIlxuICAgICAgPlxuICAgICAgICA8c3BhblxuICAgICAgICAgIGlkPVwiZmluZFJlZGFjdFJlc3VsdHNDb3VudFwiXG4gICAgICAgICAgY2xhc3M9XCJnb3Z1ay1ncmlkLWNvbHVtbi1mdWxsIGdvdnVrLSEtbWFyZ2luLXJpZ2h0LTQgZ292dWstIS1tYXJnaW4tbGVmdC0wIGdvdnVrLSEtcGFkZGluZy1sZWZ0LTBcIlxuICAgICAgICAgID48aDRcbiAgICAgICAgICAgIGNsYXNzPVwiZ292dWstIS1kaXNwbGF5LWlubGluZS1ibG9jayBnb3Z1ay0hLW1hcmdpbi10b3AtMCBnb3Z1ay0hLW1hcmdpbi1ib3R0b20tMVwiXG4gICAgICAgICAgICAqbmdJZj1cInJlZGFjdEFsbEluUHJvZ3Jlc3NcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IGluUHJvZ3Jlc3NUZXh0ICsgXCIgaW4gcHJvZ3Jlc3NcIiB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvaDQ+XG4gICAgICAgICAge3sgcmVkYWN0QWxsSW5Qcm9ncmVzcyA/IFwiXCIgOiByZXN1bHRzVGV4dCB9fTwvc3BhblxuICAgICAgICA+XG4gICAgICAgIDxzcGFuPlxuICAgICAgICAgIDxoNVxuICAgICAgICAgICAgaWQ9XCJyZWRhY3RBbGxJblByb2dyZXNzQ291bnRcIlxuICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay0hLWRpc3BsYXktaW5saW5lLWJsb2NrIGdvdnVrLSEtbWFyZ2luLXRvcC0wIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS0xXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyByZWRhY3RBbGxJblByb2dyZXNzID8gcmVkYWN0QWxsVGV4dCA6IFwiXCIgfX1cbiAgICAgICAgICA8L2g1PlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkYWN0aW9uLXNlYXJjaC1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvdG9vbGJhci9yZWRhY3Rpb24tc2VhcmNoLWJhci9yZWRhY3Rpb24tc2VhcmNoLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi90b29sYmFyL3JlZGFjdGlvbi1zZWFyY2gtYmFyL3JlZGFjdGlvbi1zZWFyY2gtYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBa0MsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFeEYsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQXFCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlsRyxPQUFPLEVBQVMsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRzVDLE9BQU8sS0FBSyxZQUFZLE1BQU0sMENBQTBDLENBQUM7QUFDekUsT0FBTyxLQUFLLG9CQUFvQixNQUFNLHVDQUF1QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWxDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7Ozs7Ozs7OztBQU85QixNQUFNLE9BQU8sMkJBQTJCO0lBOEJ0QyxZQUNVLEtBQTZCLEVBQ3JCLGNBQThDLEVBQzlDLGFBQWtDLEVBQ2xDLGdCQUF3QztRQUhoRCxVQUFLLEdBQUwsS0FBSyxDQUF3QjtRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0M7UUFDOUMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBQ2xDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBd0I7UUE5QjFELGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLGNBQVMsR0FBRyxLQUFL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Q29udGVudCI6WyJpbXBvcnQgeyBCdWxrUmVkYWN0aW9uLCBSZWRhY3Rpb24gfSBmcm9tICcuLy4uLy4uL3JlZGFjdGlvbi9zZXJ2aWNlcy9yZWRhY3Rpb24ubW9kZWwnO1xuaW1wb3J0IHsgU2VhcmNoTW9kZSwgU2VhcmNoUmVzdWx0c0NvdW50LCBTZWFyY2hUeXBlIH0gZnJvbSAnLi8uLi90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVkYWN0aW9uU2VhcmNoLCBSZWRhY3RSZWN0YW5nbGUgfSBmcm9tICcuL3JlZGFjdGlvbi1zZWFyY2gubW9kZWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vdG9vbGJhci1idXR0b24tdmlzaWJpbGl0eS5zZXJ2aWNlJztcbmltcG9ydCB7IFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmUsIHNlbGVjdCB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCAqIGFzIGZyb21TdG9yZSBmcm9tICcuLi8uLi9zdG9yZS9yZWR1Y2Vycy9yZWR1Y2Vycyc7XG5pbXBvcnQgeyBSZWN0YW5nbGUgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLXZpZXcvcmVjdGFuZ2xlL3JlY3RhbmdsZS5tb2RlbCc7XG5pbXBvcnQgKiBhcyBmcm9tRG9jdW1lbnQgZnJvbSAnLi4vLi4vc3RvcmUvc2VsZWN0b3JzL2RvY3VtZW50LnNlbGVjdG9ycyc7XG5pbXBvcnQgKiBhcyBmcm9tUmVkYWN0aW9uQWN0aW9ucyBmcm9tICcuLi8uLi9zdG9yZS9hY3Rpb25zL3JlZGFjdGlvbi5hY3Rpb25zJztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IEhpZ2hsaWdodENyZWF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9hbm5vdGF0aW9ucy9hbm5vdGF0aW9uLXNldC9hbm5vdGF0aW9uLWNyZWF0ZS9oaWdobGlnaHQtY3JlYXRlL2hpZ2hsaWdodC1jcmVhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBzb21lIH0gZnJvbSAnbG9kYXNoJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXYtcmVkYWN0aW9uLXNlYXJjaC1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcmVkYWN0aW9uLXNlYXJjaC1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZWRhY3Rpb24tc2VhcmNoLWJhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFJlZGFjdGlvblNlYXJjaEJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBAVmlld0NoaWxkKCdmaW5kSW5wdXQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBmaW5kSW5wdXQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgaGlnaGxpZ2h0QWxsID0gdHJ1ZTtcbiAgbWF0Y2hDYXNlID0gZmFsc2U7XG4gIHdob2xlV29yZCA9IGZhbHNlO1xuICByZXN1bHRzVGV4dCA9ICcnO1xuICBzZWFyY2hUZXh0ID0gJyc7XG4gIHJlc3VsdENvdW50ID0gMDtcbiAgcmVkYWN0RWxlbWVudHM6IFJlZGFjdFJlY3RhbmdsZVtdID0gW107XG4gIHBhZ2VIZWlnaHQ6IG51bWJlcjtcbiAgcGFnZVdpZHRoOiBudW1iZXI7XG4gIHpvb206IG51bWJlcjtcbiAgcm90YXRlOiBudW1iZXI7XG4gIGFsbFBhZ2VzOiBvYmplY3Q7XG4gIHJlZGFjdEFsbDogYm9vbGVhbjtcbiAgb3BlblNlYXJjaE1vZGFsOiBib29sZWFuO1xuICByZWRhY3RBbGxJblByb2dyZXNzOiBib29sZWFuO1xuICByZWRhY3RBbGxUZXh0Pzogc3RyaW5nO1xuICBzZWFyY2hUeXBlOiBTZWFyY2hUeXBlO1xuICBpblByb2dyZXNzVGV4dDogc3RyaW5nO1xuICB0aXRsZVRleHQ6IHN0cmluZztcblxuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgZG9jdW1lbnRJZDogc3RyaW5nO1xuICBwdWJsaWMgYWR2YW5jZWRTZWFyY2hWaXNpYmxlID0gZmFsc2U7XG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxmcm9tU3RvcmUuU3RhdGU+LFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyQnV0dG9uczogVG9vbGJhckJ1dHRvblZpc2liaWxpdHlTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSB0b29sYmFyRXZlbnRzOiBUb29sYmFyRXZlbnRTZXJ2aWNlLFxuICAgIHB1YmxpYyByZWFkb25seSBoaWdobGlnaHRTZXJ2aWNlOiBIaWdobGlnaHRDcmVhdGVTZXJ2aWNlLFxuICApIHsgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMudG9vbGJhckV2ZW50cy5yZWRhY3Rpb25TZXJhY2hTdWJqZWN0LnN1YnNjcmliZSgocmVzdWx0czogUmVkYWN0aW9uU2VhcmNoKSA9PiB0aGlzLnJlZGFjdEFsbFNlYXJjaGVkKHJlc3VsdHMpKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQodGhpcy5zdG9yZS5waXBlKHNlbGVjdChmcm9tRG9jdW1lbnQuZ2V0RG9jdW1lbnRJZCkpLnN1YnNjcmliZShkb2NJZCA9PiB0aGlzLmRvY3VtZW50SWQgPSBkb2NJZCkpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZCh0aGlzLnN0b3JlLnBpcGUoc2VsZWN0KGZyb21Eb2N1bWVudC5nZXRQYWdlcykpLnN1YnNjcmliZSgocGFnZXMpID0+IHtcbiAgICAgIGlmIChwYWdlc1sxXSkge1xuICAgICAgICB0aGlzLmFsbFBhZ2VzID0gcGFnZXM7XG4gICAgICB9XG4gICAgfSkpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZChcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2hSZXN1bHRzQ291bnRTdWJqZWN0LnN1YnNjcmliZShyZXN1bHRzID0+IHRoaXMuc2V0U2VhcmNoUmVzdWx0c0NvdW50KHJlc3VsdHMpKVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKHRoaXMudG9vbGJhckV2ZW50cy5vcGVuUmVkYWN0aW9uU2VhcmNoLnN1YnNjcmliZSgoc2VhcmNoTW9kZTogU2VhcmNoTW9kZSkgPT4ge1xuICAgICAgaWYgKHNlYXJjaE1vZGUpIHtcbiAgICAgICAgdGhpcy5vcGVuU2VhcmNoTW9kYWwgPSBzZWFyY2hNb2RlLmlzT3BlbjtcbiAgICAgICAgdGhpcy5zZWFyY2hUeXBlID0gc2VhcmNoTW9kZS5tb2RlVHlwZTtcbiAgICAgICAgdGhpcy5tb2RlVGV4dCgpO1xuICAgICAgfVxuICAgIH0pKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQodGhpcy50b29sYmFyRXZlbnRzLnJlZGFjdEFsbEluUHJvZ3Jlc3NTdWJqZWN0XG4gICAgICAuc3Vic2NyaWJlKGluUHJvZ3Jlc3MgPT4gdGhpcy5yZWRhY3RBbGxJblByb2dyZXNzID0gaW5Qcm9ncmVzcykpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXlkb3duJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uV2luZG93S2V5RG93bihlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGUuY29kZSA9PT0gJ0YzJyB8fCAoZS5jdHJsS2V5ICYmIGUuY29kZSA9PT0gJ0tleUYnKSkge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KGZhbHNlKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5maW5kSW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpLCAyMDApO1xuICAgIH1cbiAgfVxuXG4gIHNlYXJjaChyZXNldDogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICB0aGlzLnJlZGFjdEFsbCA9ICFyZXNldDtcbiAgICBpZiAodGhpcy5yZWRhY3RBbGwpIHtcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5yZWRhY3RBbGxJblByb2dyZXNzU3ViamVjdC5uZXh0KHRydWUpO1xuICAgIH1cbiAgICBpZiAocmVzZXQpIHtcbiAgICAgIHRoaXMucmVkYWN0RWxlbWVudHMgPSBbXTtcbiAgICB9XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaCh7XG4gICAgICBzZWFyY2hUZXJtOiB0aGlzLnNlYXJjaFRleHQsXG4gICAgICBoaWdobGlnaHRBbGw6IHRoaXMuaGlnaGxpZ2h0QWxsLFxuICAgICAgbWF0Y2hDYXNlOiB0aGlzLm1hdGNoQ2FzZSxcbiAgICAgIHdob2xlV29yZDogdGhpcy53aG9sZVdvcmQsXG4gICAgICBwcmV2aW91czogZmFsc2UsXG4gICAgICByZXNldFxuICAgIH0pO1xuICB9XG5cbiAgbW9kZVRleHQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VhcmNoVHlwZSA9PT0gU2VhcmNoVHlwZS5IaWdobGlnaHQpIHtcbiAgICAgIHRoaXMuaW5Qcm9ncmVzc1RleHQgPSAnSGlnaGxpZ2h0aW5nJztcbiAgICAgIHRoaXMudGl0bGVUZXh0ID0gJ0hpZ2hsaWdodCc7XG4gICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaFR5cGUgPT09IFNlYXJjaFR5cGUuUmVkYWN0KSB7XG4gICAgICB0aGlzLmluUHJvZ3Jlc3NUZXh0ID0gJ1JlZGFjdGluZyc7XG4gICAgICB0aGlzLnRpdGxlVGV4dCA9ICdSZWRhY3QnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2F2ZVJlZGFjdGlvbihyZWRhY3RSZWN0YW5nbGU6IFJlZGFjdFJlY3RhbmdsZVtdKSB7XG4gICAgY29uc3QgcmVkYWN0aW9uID0gcmVkYWN0UmVjdGFuZ2xlLm1hcChlbGUgPT4ge1xuICAgICAgcmV0dXJuIHsgcGFnZTogZWxlLnBhZ2UsIHJlY3RhbmdsZXM6IGVsZS5yZWN0YW5nbGVzLCByZWRhY3Rpb25JZDogdXVpZCgpLCBkb2N1bWVudElkOiB0aGlzLmRvY3VtZW50SWQgfSBhcyBSZWRhY3Rpb247XG4gICAgfSk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgZnJvbVJlZGFjdGlvbkFjdGlvbnMuU2F2ZUJ1bGtSZWRhY3Rpb24oeyBzZWFyY2hSZWRhY3Rpb25zOiByZWRhY3Rpb24gfSBhcyBCdWxrUmVkYWN0aW9uKSk7XG4gIH1cblxuICBwcml2YXRlIGV4aXN0SW5SZWRhY3RFbGVtZW50cyhwYWdlTnVtYmVyOiBudW1iZXIsIG1hdGVjaGVkSW5kZXg6IG51bWJlciwgcmVjdGFuZ2xlczogUmVjdGFuZ2xlW10pOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5yZWRhY3RFbGVtZW50cyAmJiB0aGlzLnJlZGFjdEVsZW1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IHBhZ2VzRm91bmQgPSB0aGlzLnJlZGFjdEVsZW1lbnRzLmZpbmQocmUgPT4gcmUucGFnZSA9PT0gcGFnZU51bWJlciAmJiByZS5tYXRjaGVkSW5kZXggPT09IG1hdGVjaGVkSW5kZXgpO1xuICAgICAgY29uc3QgcGFnZVJlY3RhbmdsZXMgPSBwYWdlc0ZvdW5kPy5yZWN0YW5nbGVzO1xuICAgICAgaWYgKCFwYWdlUmVjdGFuZ2xlcyB8fCBwYWdlUmVjdGFuZ2xlcy5sZW5ndGggPD0gMCkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICBsZXQgbWF0Y2hlc1JlY3RhbmdsZXMgPSAwO1xuICAgICAgZm9yIChsZXQgcmVjdEluZHggPSAwOyByZWN0SW5keCA8IHBhZ2VSZWN0YW5nbGVzLmxlbmd0aDsgcmVjdEluZHgrKykge1xuICAgICAgICBjb25zdCByZWN0YW5nbGUgPSBwYWdlUmVjdGFuZ2xlc1tyZWN0SW5keF07XG4gICAgICAgIGNvbnN0IGZvdW5kUmVjdGFuZ2xlID0gcmVjdGFuZ2xlcy5maW5kKHJlID0+IHJlLndpZHRoID09PSByZWN0YW5nbGUud2lkdGggJiZcbiAgICAgICAgICByZS5oZWlnaHQgPT09IHJlY3RhbmdsZS5oZWlnaHQgJiYgcmUueCA9PT0gcmVjdGFuZ2xlLnggJiYgcmUueSA9PT0gcmVjdGFuZ2xlLnkpO1xuICAgICAgICBpZiAoZm91bmRSZWN0YW5nbGUpIHtcbiAgICAgICAgICBtYXRjaGVzUmVjdGFuZ2xlcysrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gcGFnZVJlY3RhbmdsZXMubGVuZ3RoID09PSBtYXRjaGVzUmVjdGFuZ2xlcztcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgb25DbG9zZVNlYXJjaE1vZGFsKCkge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy5vcGVuUmVkYWN0aW9uU2VhcmNoLm5leHQoeyBpc09wZW46IGZhbHNlLCBtb2RlVHlwZTogdGhpcy5zZWFyY2hUeXBlIH0pO1xuICB9XG5cblxuICBwcml2YXRlIHNldFNlYXJjaFJlc3VsdHNDb3VudChyZXN1bHRzOiBTZWFyY2hSZXN1bHRzQ291bnQpOiB2b2lkIHtcbiAgICB0aGlzLnJlc3VsdENvdW50ID0gcmVzdWx0cy50b3RhbDtcbiAgICB0aGlzLnJlc3VsdHNUZXh0ID0gdGhpcy5yZXN1bHRDb3VudCA+IDBcbiAgICAgID8gYCR7cmVzdWx0cy50b3RhbH0gcmVzdWx0cyBmb3VuZHNgXG4gICAgICA6ICdObyByZXN1bHRzIGZvdW5kJztcbiAgfVxuXG4gIHByaXZhdGUgcmVkYWN0QWxsU2VhcmNoZWQocmVzdWx0czogUmVkYWN0aW9uU2VhcmNoKTogdm9pZCB7XG4gICAgY29uc3QgJHRoaXMgPSB0aGlzO1xuICAgIGNvbnN0IGludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBjb25zdCBoaWdobGlnaHRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnaGlnaGxpZ2h0IHNlbGVjdGVkJyk7XG4gICAgICBpZiAoaGlnaGxpZ2h0RWxlbWVudCAmJiBoaWdobGlnaHRFbGVtZW50Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgY2xlYXJJbnRlcnZhbChpbnRlcnZhbElkKTtcbiAgICAgICAgJHRoaXMucmVkYWN0QWxsU2VhcmNoZWRUaWNrKHJlc3VsdHMpO1xuICAgICAgfVxuICAgIH0sIDEwMCk7XG4gIH1cblxuXG4gIHByaXZhdGUgcmVkYWN0QWxsU2VhcmNoZWRUaWNrKHJlc3VsdHM6IFJlZGFjdGlvblNlYXJjaCk6IHZvaWQge1xuICAgIGNvbnN0IGhpZ2hsaWdodEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdoaWdobGlnaHQgc2VsZWN0ZWQnKTtcbiAgICBpZiAoaGlnaGxpZ2h0RWxlbWVudCAmJiBoaWdobGlnaHRFbGVtZW50Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucmVzdWx0Q291bnQgPSByZXN1bHRzLm1hdGNoZXNDb3VudDtcbiAgICAgIGNvbnN0IHBhZ2VOdW1iZXIgPSByZXN1bHRzLnBhZ2UgKyAxO1xuICAgICAgY29uc3QgcmVjdGFuZ2xlcyA9IHRoaXMuZ2V0UmVjdGFuZ2xlcyhwYWdlTnVtYmVyKTtcbiAgICAgIGlmIChyZWN0YW5nbGVzICYmIHRoaXMucmVkYWN0RWxlbWVudHMubGVuZ3RoIDw9IHRoaXMucmVzdWx0Q291bnRcbiAgICAgICAgJiYgIXRoaXMuZXhpc3RJblJlZGFjdEVsZW1lbnRzKHBhZ2VOdW1iZXIsIHJlc3VsdHMubWF0Y2hlZEluZGV4LCByZWN0YW5nbGVzKSkge1xuICAgICAgICB0aGlzLnJlZGFjdEVsZW1lbnRzLnB1c2goeyBwYWdlOiBwYWdlTnVtYmVyLCBtYXRjaGVkSW5kZXg6IHJlc3VsdHM/Lm1hdGNoZWRJbmRleCwgcmVjdGFuZ2xlcyB9IGFzIFJlZGFjdFJlY3RhbmdsZSk7XG4gICAgICAgIHRoaXMuQ3JlYXRlUmVkYWN0QWxsVGV4dCgpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMucmVkYWN0QWxsICYmIHRoaXMucmVzdWx0Q291bnQgJiYgdGhpcy5yZXN1bHRDb3VudCA+IDBcbiAgICAgICAgJiYgcmVjdGFuZ2xlcyAmJiB0aGlzLnJlZGFjdEVsZW1lbnRzLmxlbmd0aCA8IHRoaXMucmVzdWx0Q291bnQpIHtcbiAgICAgICAgdGhpcy5zZWFyY2goZmFsc2UpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5yZWRhY3RBbGwgJiYgdGhpcy5yZXN1bHRDb3VudCAmJiB0aGlzLnJlZGFjdEVsZW1lbnRzLmxlbmd0aCA9PT0gdGhpcy5yZXN1bHRDb3VudCkge1xuICAgICAgICB0aGlzLnJlZGFjdEFsbCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJlZGFjdEFsbFRleHQgPSBudWxsO1xuICAgICAgICBpZiAodGhpcy5zZWFyY2hUeXBlID09PSBTZWFyY2hUeXBlLlJlZGFjdCkge1xuICAgICAgICAgIHRoaXMuc2F2ZVJlZGFjdGlvbih0aGlzLnJlZGFjdEVsZW1lbnRzKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnNlYXJjaFR5cGUgPT09IFNlYXJjaFR5cGUuSGlnaGxpZ2h0KSB7XG4gICAgICAgICAgdGhpcy5oaWdobGlnaHRTZXJ2aWNlLnNhdmVBbm5vdGF0aW9uU2V0KHRoaXMucmVkYWN0RWxlbWVudHMpO1xuICAgICAgICAgIHRoaXMuY2xlYW5VcFBvc3RTYXZlKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNsZWFuVXBQb3N0U2F2ZSgpIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMucmVkYWN0QWxsSW5Qcm9ncmVzc1N1YmplY3QubmV4dChmYWxzZSk7XG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJyc7XG4gICAgdGhpcy5zZWFyY2goKTtcbiAgfVxuXG4gIHByaXZhdGUgQ3JlYXRlUmVkYWN0QWxsVGV4dCgpIHtcbiAgICB0aGlzLnJlZGFjdEFsbFRleHQgPSBgJHt0aGlzLnJlZGFjdEVsZW1lbnRzLmxlbmd0aH0gb2YgJHt0aGlzLnJlc3VsdENvdW50fWA7XG4gIH1cblxuICBwdWJsaWMgb25Fc2NhcGVLZXlQcmVzcyhlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9uRW50ZXJLZXlQcmVzcyhlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2goKTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVTZWFyY2hCYXIoKSB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KCF0aGlzLnRvb2xiYXJFdmVudHMuc2VhcmNoQmFySGlkZGVuLmdldFZhbHVlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSZWN0YW5nbGVzKHBhZ2U6IG51bWJlcik6IFJlY3RhbmdsZVtdIHtcbiAgICB0aGlzLnBhZ2VIZWlnaHQgPSB0aGlzLmFsbFBhZ2VzW3BhZ2VdLnN0eWxlcy5oZWlnaHQ7XG4gICAgdGhpcy5wYWdlV2lkdGggPSB0aGlzLmFsbFBhZ2VzW3BhZ2VdLnN0eWxlcy53aWR0aDtcbiAgICB0aGlzLnpvb20gPSBwYXJzZUZsb2F0KHRoaXMuYWxsUGFnZXNbcGFnZV0uc2NhbGVSb3RhdGlvbi5zY2FsZSk7XG4gICAgdGhpcy5yb3RhdGUgPSBwYXJzZUludCh0aGlzLmFsbFBhZ2VzW3BhZ2VdLnNjYWxlUm90YXRpb24ucm90YXRpb24sIDEwKTtcbiAgICBjb25zdCBzZWxlY3RlZEhpZ2hMaWdodGVkRWxlbWVudHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdoaWdobGlnaHQgc2VsZWN0ZWQnKTtcbiAgICBpZiAoc2VsZWN0ZWRIaWdoTGlnaHRlZEVsZW1lbnRzICYmIHNlbGVjdGVkSGlnaExpZ2h0ZWRFbGVtZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBkb2NSYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7XG4gICAgICBpZiAoc29tZShzZWxlY3RlZEhpZ2hMaWdodGVkRWxlbWVudHMsIGVsZW1lbnQgPT4gZWxlbWVudC5jbGFzc05hbWUgPT09ICdoaWdobGlnaHQgYmVnaW4gc2VsZWN0ZWQnIHx8IGVsZW1lbnQuY2xhc3NOYW1lID09PSAnaGlnaGxpZ2h0IGVuZCBzZWxlY3RlZCcpKSB7XG4gICAgICAgIGRvY1JhbmdlLnNldFN0YXJ0KHNlbGVjdGVkSGlnaExpZ2h0ZWRFbGVtZW50c1swXSwgMCk7XG4gICAgICAgIGNvbnN0IGVuZE5vZGUgPSBzZWxlY3RlZEhpZ2hMaWdodGVkRWxlbWVudHNbc2VsZWN0ZWRIaWdoTGlnaHRlZEVsZW1lbnRzLmxlbmd0aCAtIDFdO1xuICAgICAgICBkb2NSYW5nZS5zZXRFbmQoZW5kTm9kZSwgZW5kTm9kZS5jaGlsZE5vZGVzLmxlbmd0aCk7XG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgZG9jUmFuZ2Uuc2VsZWN0Tm9kZUNvbnRlbnRzKHNlbGVjdGVkSGlnaExpZ2h0ZWRFbGVtZW50c1swXSBhcyBIVE1MRWxlbWVudCk7XG4gICAgICB9XG4gICAgICBjb25zdCBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7XG4gICAgICBzZWxlY3Rpb24/LnJlbW92ZUFsbFJhbmdlcygpO1xuICAgICAgc2VsZWN0aW9uPy5hZGRSYW5nZShkb2NSYW5nZSk7XG4gICAgICBpZiAoc2VsZWN0aW9uLnJhbmdlQ291bnQgJiYgIXNlbGVjdGlvbi5pc0NvbGxhcHNlZCkge1xuICAgICAgICBjb25zdCByYW5nZSA9IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApLmNsb25lUmFuZ2UoKTtcbiAgICAgICAgY29uc3QgY2xpZW50UmVjdHMgPSByYW5nZS5nZXRDbGllbnRSZWN0cygpO1xuXG4gICAgICAgIGlmIChjbGllbnRSZWN0cykge1xuICAgICAgICAgIGNvbnN0IHBhcmVudFJlY3QgPSBzZWxlY3RlZEhpZ2hMaWdodGVkRWxlbWVudHNbMF0ucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgIGNvbnN0IHNlbGVjdGlvblJlY3RhbmdsZXM6IFJlY3RhbmdsZVtdID0gW107XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjbGllbnRSZWN0cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qgc2VsZWN0aW9uUmVjdGFuZ2xlID0gdGhpcy5jcmVhdGVUZXh0UmVjdGFuZ2xlKGNsaWVudFJlY3RzW2ldLCBwYXJlbnRSZWN0KTtcbiAgICAgICAgICAgIGNvbnN0IGZpbmRTZWxlY3R0aW9uUmVjdGFuZ2xlID0gc2VsZWN0aW9uUmVjdGFuZ2xlcy5maW5kKFxuICAgICAgICAgICAgICAocmVjdCkgPT4gcmVjdC53aWR0aCA9PT0gc2VsZWN0aW9uUmVjdGFuZ2xlLndpZHRoICYmIHJlY3QueCA9PT0gc2VsZWN0aW9uUmVjdGFuZ2xlLnhcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoIWZpbmRTZWxlY3R0aW9uUmVjdGFuZ2xlKSB7XG4gICAgICAgICAgICAgIHNlbGVjdGlvblJlY3RhbmdsZXMucHVzaChzZWxlY3Rpb25SZWN0YW5nbGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBzZWxlY3Rpb25SZWN0YW5nbGVzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVUZXh0UmVjdGFuZ2xlKHJlY3Q6IERPTVJlY3QsIHBhcmVudFJlY3Q6IGFueSk6IFJlY3RhbmdsZSB7XG4gICAgY29uc3QgaGVpZ2h0ID0gcmVjdC5ib3R0b20gLSByZWN0LnRvcDtcbiAgICBjb25zdCB3aWR0aCA9IHJlY3QucmlnaHQgLSByZWN0LmxlZnQ7XG4gICAgY29uc3QgdG9wID0gcmVjdC50b3AgLSBwYXJlbnRSZWN0LnRvcDtcbiAgICBjb25zdCBsZWZ0ID0gcmVjdC5sZWZ0IC0gcGFyZW50UmVjdC5sZWZ0O1xuXG4gICAgbGV0IHJlY3RhbmdsZSA9IHRoaXMuaGlnaGxpZ2h0U2VydmljZS5hcHBseVJvdGF0aW9uKFxuICAgICAgdGhpcy5wYWdlSGVpZ2h0LFxuICAgICAgdGhpcy5wYWdlV2lkdGgsXG4gICAgICBoZWlnaHQsXG4gICAgICB3aWR0aCxcbiAgICAgIHRvcCxcbiAgICAgIGxlZnQsXG4gICAgICB0aGlzLnJvdGF0ZSxcbiAgICAgIHRoaXMuem9vbVxuICAgICk7XG4gICAgcmVjdGFuZ2xlID0geyBpZDogdXVpZCgpLCAuLi5yZWN0YW5nbGUgfTtcblxuICAgIHJldHVybiByZWN0YW5nbGUgYXMgUmVjdGFuZ2xlO1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwib3BlblNlYXJjaE1vZGFsXCJcbiAgY2xhc3M9XCJzZWFyY2hiYXIgcmVkYWN0aW9uLXNlYXJjaC1iYXIgZ292dWstIS1wYWRkaW5nLTNcIlxuPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1yb3dcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tZnVsbCBnb3Z1ay0hLXBhZGRpbmctcmlnaHQtMFwiPlxuICAgICAgPGRpdiBjbGFzcz1cInJlZGFjdGlvbi1zZWFyY2gtYnV0dG9ucy1hcmVhXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBpZD1cIm12Q2xvc2VCdG5cIlxuICAgICAgICAgICNtdkNsb3NlQnRuXG4gICAgICAgICAgY2xhc3M9XCJtdi1idXR0b24gc2VhcmNoYmFyLWJ1dHRvbi0tY2xvc2VcIlxuICAgICAgICAgIHRpdGxlPVwiQ2xvc2UgU2VhcmNoXCJcbiAgICAgICAgICBkYXRhLWwxMG4taWQ9XCJtdlJlZGFjdEJ0blwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQ2xvc2VTZWFyY2hNb2RhbCgpXCJcbiAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8aW5wdXRcbiAgICAgICAgaWQ9XCJzZWFyY2hfaW5wdXRcIlxuICAgICAgICBjbGFzcz1cImdvdnVrLWlucHV0IGdvdnVrLSEtd2lkdGgtdGhyZWUtcXVhcnRlcnMgZ292dWstIS1kaXNwbGF5LWlubGluZS1ibG9jayBnb3Z1ay0hLW1hcmdpbi10b3AtNVwiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIlJlZGFjdCBmcm9tIHNlYXJjaFwiXG4gICAgICAgICNmaW5kSW5wdXRcbiAgICAgICAgdGl0bGU9XCJSZWRhY3QgZnJvbSBzZWFyY2hcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHRpdGxlVGV4dCArICcgZnJvbSBzZWFyY2guLi4nIHwgcnB4VHJhbnNsYXRlIH19XCJcbiAgICAgICAgZGF0YS1sMTBuLWlkPVwic2VhcmNoX2lucHV0XCJcbiAgICAgICAgW25nTW9kZWxdPVwic2VhcmNoVGV4dFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNlYXJjaFRleHQgPSAkZXZlbnRcIlxuICAgICAgICAoa2V5ZG93bi5lc2NhcGUpPVwib25Fc2NhcGVLZXlQcmVzcygkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25FbnRlcktleVByZXNzKCRldmVudClcIlxuICAgICAgLz5cbiAgICAgIDxkaXYgY2xhc3M9XCJyZWRhY3Rpb24tc2VhcmNoLWJ1dHRvbnMtYXJlYVwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgaWQ9XCJtdlNlYXJjaEFsbEJ0blwiXG4gICAgICAgICAgY2xhc3M9XCJnb3Z1ay1idXR0b24gZ292dWstIS1tYXJnaW4tYm90dG9tLTBcIlxuICAgICAgICAgIGRhdGEtbW9kdWxlPVwiZ292dWstYnV0dG9uXCJcbiAgICAgICAgICAoY2xpY2spPVwic2VhcmNoKClcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJyZWRhY3RBbGxJblByb2dyZXNzXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IFwiU2VhcmNoXCIgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBpZD1cIm12UmVkYWN0QWxsQnRuXCJcbiAgICAgICAgICBjbGFzcz1cImdvdnVrLWJ1dHRvbiBnb3Z1ay0hLW1hcmdpbi1sZWZ0LTIgZ292dWstIS1tYXJnaW4tYm90dG9tLTBcIlxuICAgICAgICAgIGRhdGEtbW9kdWxlPVwiZ292dWstYnV0dG9uXCJcbiAgICAgICAgICAoY2xpY2spPVwic2VhcmNoKGZhbHNlKVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cInJlZGFjdEFsbEluUHJvZ3Jlc3MgfHwgcmVzdWx0Q291bnQgPD0gMFwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyB0aXRsZVRleHQgKyBcIiBhbGxcIiB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImdvdnVrLWdyaWQtY29sdW1uLXRocmVlLXF1YXJ0ZXJzIGdvdnVrLSEtcGFkZGluZy1sZWZ0LTAgZ292dWstIS1wYWRkaW5nLXRvcC0yIHJlZGFjdGlvbi1zdGF0dXMtdGV4dFwiXG4gICAgICA+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgaWQ9XCJmaW5kUmVkYWN0UmVzdWx0c0NvdW50XCJcbiAgICAgICAgICBjbGFzcz1cImdvdnVrLWdyaWQtY29sdW1uLWZ1bGwgZ292dWstIS1tYXJnaW4tcmlnaHQtNCBnb3Z1ay0hLW1hcmdpbi1sZWZ0LTAgZ292dWstIS1wYWRkaW5nLWxlZnQtMFwiXG4gICAgICAgICAgPjxoNFxuICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay0hLWRpc3BsYXktaW5saW5lLWJsb2NrIGdvdnVrLSEtbWFyZ2luLXRvcC0wIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS0xXCJcbiAgICAgICAgICAgICpuZ0lmPVwicmVkYWN0QWxsSW5Qcm9ncmVzc1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgaW5Qcm9ncmVzc1RleHQgKyBcIiBpbiBwcm9ncmVzc1wiIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9oND5cbiAgICAgICAgICB7eyByZWRhY3RBbGxJblByb2dyZXNzID8gXCJcIiA6IHJlc3VsdHNUZXh0IH19PC9zcGFuXG4gICAgICAgID5cbiAgICAgICAgPHNwYW4+XG4gICAgICAgICAgPGg1XG4gICAgICAgICAgICBpZD1cInJlZGFjdEFsbEluUHJvZ3Jlc3NDb3VudFwiXG4gICAgICAgICAgICBjbGFzcz1cImdvdnVrLSEtZGlzcGxheS1pbmxpbmUtYmxvY2sgZ292dWstIS1tYXJnaW4tdG9wLTAgZ292dWstIS1tYXJnaW4tYm90dG9tLTFcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IHJlZGFjdEFsbEluUHJvZ3Jlc3MgPyByZWRhY3RBbGxUZXh0IDogXCJcIiB9fVxuICAgICAgICAgIDwvaDU+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -56,10 +56,10 @@ export class RedactionToolbarComponent {
|
|
|
56
56
|
subscription.unsubscribe();
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
60
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
59
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedactionToolbarComponent, deps: [{ token: i1.ToolbarEventService }, { token: i2.ToolbarButtonVisibilityService }, { token: i3.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
60
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RedactionToolbarComponent, selector: "mv-redaction-toolbar", inputs: { showRedactSearch: "showRedactSearch" }, ngImport: i0, template: "<div class=\"redaction\">\n <label class=\"govuk-label redaction-title\" data-l10n-id=\"redaction_options\">{{\n \"Redaction options\" | rpxTranslate\n }}</label>\n <button\n id=\"toggleDrawButton\"\n class=\"mv-button redaction-button--draw\"\n title=\"{{ 'Draw a box' | rpxTranslate }}}\"\n data-l10n-id=\"toggleDrawButton\"\n (click)=\"toggleDrawMode()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"toggleDrawButton_label\">{{\n \"Draw a box\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n id=\"redactPageButton\"\n class=\"mv-button redaction-button--redact-page\"\n title=\"{{ 'Redact page' | rpxTranslate }}\"\n data-l10n-id=\"redactPageButton\"\n (click)=\"redactPage()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"redactPageButton_label\">{{\n \"Redact page\" | rpxTranslate\n }}</span>\n </button>\n <button\n *ngIf=\"showRedactSearch\"\n id=\"mvRedactFromSearchBtn\"\n title=\"{{ 'From search' | rpxTranslate }}\"\n data-l10n-id=\"fromSearchButton\"\n class=\"mv-button redaction-button--search\"\n (click)=\"onRedactAllSearch()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span style=\"width: 5rem\" data-l10n-id=\"fromSearchButton_label\">{{\n \"From search\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n *ngIf=\"toolbarButtons.showHighlightButton\"\n id=\"toggleHighlightButton\"\n class=\"mv-button redaction-button--redact\"\n aria-pressed=\"false\"\n title=\"{{ 'Redact text' | rpxTranslate }}\"\n data-l10n-id=\"toggleTextRedactionButton\"\n (click)=\"toggleTextRedactionMode()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"toggleTextRedactionButton_label\">{{\n \"Redact text\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n [disabled]=\"!hasRedactions || redactionAllInProgress\"\n id=\"mvClearBtn\"\n #mvClearBtn\n class=\"mv-button redaction-button--clear\"\n aria-pressed=\"false\"\n title=\"{{ 'Clear all' | rpxTranslate }}\"\n data-l10n-id=\"toggleClearAllButton\"\n (click)=\"unmarkAll()\"\n >\n <span data-l10n-id=\"Clear all\">{{ \"Clear all\" | rpxTranslate }}</span>\n </button>\n\n <button\n [disabled]=\"!hasRedactions || redactionAllInProgress\"\n id=\"mvPreviewBtn\"\n class=\"mv-button\"\n [class.redaction-button--preview]=\"!preview\"\n [class.redaction-button--hide-preview]=\"preview\"\n redaction-button--preview\n aria-pressed=\"false\"\n title=\"{{ 'Preview' | rpxTranslate }}\"\n data-l10n-id=\"togglePreviewButton\"\n (click)=\"togglePreview()\"\n >\n <span *ngIf=\"!preview\" data-l10n-id=\"redaction-preview_label\">{{\n \"Preview\" | rpxTranslate\n }}</span>\n <span *ngIf=\"preview\" data-l10n-id=\"redaction-hide-preview_label\">{{\n \"Hide preview\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n [disabled]=\"!hasRedactions || redactionAllInProgress\"\n id=\"mvRedactBtn\"\n class=\"mv-button redaction-button--download\"\n aria-pressed=\"false\"\n title=\"{{ 'Save document' | rpxTranslate }}\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"redact()\"\n >\n <span data-l10n-id=\"Save Document\">{{\n \"Save document\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button redaction-button--close\"\n title=\"{{ 'Close Redaction' | rpxTranslate }}\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"toggleRedactBar()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"Close Redaction\">{{\n \"Close Redaction\" | rpxTranslate\n }}</span>\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i5.RpxTranslatePipe, name: "rpxTranslate" }] }); }
|
|
61
61
|
}
|
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RedactionToolbarComponent, decorators: [{
|
|
63
63
|
type: Component,
|
|
64
64
|
args: [{ selector: 'mv-redaction-toolbar', template: "<div class=\"redaction\">\n <label class=\"govuk-label redaction-title\" data-l10n-id=\"redaction_options\">{{\n \"Redaction options\" | rpxTranslate\n }}</label>\n <button\n id=\"toggleDrawButton\"\n class=\"mv-button redaction-button--draw\"\n title=\"{{ 'Draw a box' | rpxTranslate }}}\"\n data-l10n-id=\"toggleDrawButton\"\n (click)=\"toggleDrawMode()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"toggleDrawButton_label\">{{\n \"Draw a box\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n id=\"redactPageButton\"\n class=\"mv-button redaction-button--redact-page\"\n title=\"{{ 'Redact page' | rpxTranslate }}\"\n data-l10n-id=\"redactPageButton\"\n (click)=\"redactPage()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"redactPageButton_label\">{{\n \"Redact page\" | rpxTranslate\n }}</span>\n </button>\n <button\n *ngIf=\"showRedactSearch\"\n id=\"mvRedactFromSearchBtn\"\n title=\"{{ 'From search' | rpxTranslate }}\"\n data-l10n-id=\"fromSearchButton\"\n class=\"mv-button redaction-button--search\"\n (click)=\"onRedactAllSearch()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span style=\"width: 5rem\" data-l10n-id=\"fromSearchButton_label\">{{\n \"From search\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n *ngIf=\"toolbarButtons.showHighlightButton\"\n id=\"toggleHighlightButton\"\n class=\"mv-button redaction-button--redact\"\n aria-pressed=\"false\"\n title=\"{{ 'Redact text' | rpxTranslate }}\"\n data-l10n-id=\"toggleTextRedactionButton\"\n (click)=\"toggleTextRedactionMode()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"toggleTextRedactionButton_label\">{{\n \"Redact text\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n [disabled]=\"!hasRedactions || redactionAllInProgress\"\n id=\"mvClearBtn\"\n #mvClearBtn\n class=\"mv-button redaction-button--clear\"\n aria-pressed=\"false\"\n title=\"{{ 'Clear all' | rpxTranslate }}\"\n data-l10n-id=\"toggleClearAllButton\"\n (click)=\"unmarkAll()\"\n >\n <span data-l10n-id=\"Clear all\">{{ \"Clear all\" | rpxTranslate }}</span>\n </button>\n\n <button\n [disabled]=\"!hasRedactions || redactionAllInProgress\"\n id=\"mvPreviewBtn\"\n class=\"mv-button\"\n [class.redaction-button--preview]=\"!preview\"\n [class.redaction-button--hide-preview]=\"preview\"\n redaction-button--preview\n aria-pressed=\"false\"\n title=\"{{ 'Preview' | rpxTranslate }}\"\n data-l10n-id=\"togglePreviewButton\"\n (click)=\"togglePreview()\"\n >\n <span *ngIf=\"!preview\" data-l10n-id=\"redaction-preview_label\">{{\n \"Preview\" | rpxTranslate\n }}</span>\n <span *ngIf=\"preview\" data-l10n-id=\"redaction-hide-preview_label\">{{\n \"Hide preview\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n [disabled]=\"!hasRedactions || redactionAllInProgress\"\n id=\"mvRedactBtn\"\n class=\"mv-button redaction-button--download\"\n aria-pressed=\"false\"\n title=\"{{ 'Save document' | rpxTranslate }}\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"redact()\"\n >\n <span data-l10n-id=\"Save Document\">{{\n \"Save document\" | rpxTranslate\n }}</span>\n </button>\n\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button redaction-button--close\"\n title=\"{{ 'Close Redaction' | rpxTranslate }}\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"toggleRedactBar()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"Close Redaction\">{{\n \"Close Redaction\" | rpxTranslate\n }}</span>\n </button>\n</div>\n" }]
|
|
65
65
|
}], ctorParameters: () => [{ type: i1.ToolbarEventService }, { type: i2.ToolbarButtonVisibilityService }, { type: i3.Store }], propDecorators: { showRedactSearch: [{
|
|
@@ -90,12 +90,12 @@ export class SearchBarComponent {
|
|
|
90
90
|
toggleSearchBar() {
|
|
91
91
|
this.toolbarEvents.searchBarHidden.next(!this.toolbarEvents.searchBarHidden.getValue());
|
|
92
92
|
}
|
|
93
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
94
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
93
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchBarComponent, deps: [{ token: i1.ToolbarButtonVisibilityService }, { token: i2.ToolbarEventService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
94
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SearchBarComponent, selector: "mv-search-bar", host: { listeners: { "window:keydown": "onWindowKeyDown($event)" } }, viewQueries: [{ propertyName: "findInput", first: true, predicate: ["findInput"], descendants: true, static: true }, { propertyName: "findNext", first: true, predicate: ["findNext"], descendants: true }], ngImport: i0, template: "<div\n class=\"searchbar govuk-!-padding-3\"\n [hidden]=\"toolbarEvents.searchBarHidden | async\"\n>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-full\">\n <input\n class=\"govuk-input govuk-!-display-inline-block govuk-!-width-three-quarters govuk-!-margin-bottom-5 govuk-!-margin-top-5\"\n type=\"text\"\n aria-label=\"Search document\"\n #findInput\n [ngModel]=\"searchText\"\n (ngModelChange)=\"searchText = $event\"\n (keydown.escape)=\"onEscapeKeyPress($event)\"\n (keydown.enter)=\"onEnterKeyPress($event)\"\n title=\"Search document\"\n placeholder=\"Search document for\u2026\"\n tabindex=\"0\"\n data-l10n-id=\"find_input\"\n />\n <button\n class=\"govuk-button govuk-!-display-inline-block govuk-!-margin-bottom-4\"\n data-module=\"govuk-button\"\n (click)=\"search()\"\n style=\"position: absolute; top: 40px; right: 10px\"\n >\n Search\n </button>\n </div>\n </div>\n\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-three-quarters\">\n <span\n id=\"findResultsCount\"\n class=\"govuk-!-display-inline-block govuk-!-margin-right-4\"\n role=\"status\"\n >{{ resultsText }}</span\n >\n <a\n *ngIf=\"resultCount > 0\"\n id=\"findPrevious\"\n [routerLink]=\"[]\"\n role=\"button\"\n class=\"govuk-link govuk-link--no-visited-state govuk-!-margin-right-2\"\n (click)=\"searchPrev()\"\n title=\"Find the previous occurrence of the phrase\"\n data-l10n-id=\"find_previous\"\n >{{ \"Prev\" | rpxTranslate }}</a\n >\n <a\n *ngIf=\"resultCount > 0\"\n id=\"findNext\"\n #findNext\n [routerLink]=\"[]\"\n role=\"button\"\n class=\"govuk-link govuk-link--no-visited-state\"\n (click)=\"searchNext()\"\n title=\"Find the next occurrence of the phrase\"\n data-l10n-id=\"find_next\"\n >{{ \"Next\" | rpxTranslate }}</a\n >\n </div>\n <div class=\"govuk-grid-column-one-quarter\">\n <a\n [routerLink]=\"[]\"\n class=\"govuk-link govuk-link--no-visited-state\"\n role=\"button\"\n (click)=\"toggleAdvancedSearch()\"\n title=\"Advanced\"\n [attr.aria-expanded]=\"advancedSearchVisible\"\n aria-controls=\"advancedSearchVisible\"\n data-l10n-id=\"find_advanced\"\n style=\"position: absolute; top: 95px; right: 15px\"\n >{{ \"Advanced\" | rpxTranslate }}</a\n >\n </div>\n </div>\n\n <div\n id=\"advancedSearchVisible\"\n class=\"govuk-grid-row\"\n *ngIf=\"advancedSearchVisible\"\n >\n <div class=\"govuk-grid-column-full\">\n <div\n class=\"govuk-form-group govuk-!-margin-top-3 govuk-!-margin-bottom-1\"\n >\n <fieldset class=\"govuk-fieldset\" aria-describedby=\"advanced\">\n <div class=\"govuk-checkboxes\">\n <div class=\"govuk-checkboxes__item\">\n <input\n class=\"govuk-checkboxes__input\"\n id=\"findHighlightAll\"\n name=\"findHighlightAll\"\n type=\"checkbox\"\n (change)=\"highlightAll = !highlightAll; search()\"\n [checked]=\"highlightAll\"\n />\n <label\n class=\"govuk-label govuk-checkboxes__label\"\n for=\"findHighlightAll\"\n data-l10n-id=\"find_highlight\"\n >\n {{ \"Highlight all\" | rpxTranslate }}\n </label>\n </div>\n <div class=\"govuk-checkboxes__item\">\n <input\n class=\"govuk-checkboxes__input\"\n id=\"findMatchCase\"\n name=\"findMatchCase\"\n type=\"checkbox\"\n (change)=\"matchCase = !matchCase; search()\"\n [checked]=\"matchCase\"\n />\n <label\n class=\"govuk-label govuk-checkboxes__label\"\n for=\"findMatchCase\"\n data-l10n-id=\"find_match_case_label\"\n >\n {{ \"Match text (exact case)\" | rpxTranslate }}\n </label>\n </div>\n <div class=\"govuk-checkboxes__item\">\n <input\n class=\"govuk-checkboxes__input\"\n id=\"findEntireWord\"\n name=\"findMatchCase\"\n type=\"checkbox\"\n (change)=\"wholeWord = !wholeWord; search()\"\n [checked]=\"wholeWord\"\n />\n <label\n class=\"govuk-label govuk-checkboxes__label\"\n for=\"findEntireWord\"\n data-l10n-id=\"find_entire_word_label\"\n >\n {{ \"Match whole words or sentences\" | rpxTranslate }}\n </label>\n </div>\n </div>\n </fieldset>\n </div>\n </div>\n </div>\n <div>\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button searchbar-button--close\"\n title=\"Close Search\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"toggleSearchBar()\"\n ></button>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.RpxTranslatePipe, name: "rpxTranslate" }] }); }
|
|
95
95
|
}
|
|
96
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchBarComponent, decorators: [{
|
|
97
97
|
type: Component,
|
|
98
|
-
args: [{ selector: 'mv-search-bar', template: "<div\n class=\"searchbar govuk-!-padding-3\"\n [hidden]=\"toolbarEvents.searchBarHidden | async\"\n>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-full\">\n <input\n class=\"govuk-input govuk-!-display-inline-block govuk-!-width-three-quarters govuk-!-margin-bottom-5 govuk-!-margin-top-5\"\n type=\"text\"\n aria-label=\"Search document\"\n #findInput\n [
|
|
98
|
+
args: [{ selector: 'mv-search-bar', template: "<div\n class=\"searchbar govuk-!-padding-3\"\n [hidden]=\"toolbarEvents.searchBarHidden | async\"\n>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-full\">\n <input\n class=\"govuk-input govuk-!-display-inline-block govuk-!-width-three-quarters govuk-!-margin-bottom-5 govuk-!-margin-top-5\"\n type=\"text\"\n aria-label=\"Search document\"\n #findInput\n [ngModel]=\"searchText\"\n (ngModelChange)=\"searchText = $event\"\n (keydown.escape)=\"onEscapeKeyPress($event)\"\n (keydown.enter)=\"onEnterKeyPress($event)\"\n title=\"Search document\"\n placeholder=\"Search document for\u2026\"\n tabindex=\"0\"\n data-l10n-id=\"find_input\"\n />\n <button\n class=\"govuk-button govuk-!-display-inline-block govuk-!-margin-bottom-4\"\n data-module=\"govuk-button\"\n (click)=\"search()\"\n style=\"position: absolute; top: 40px; right: 10px\"\n >\n Search\n </button>\n </div>\n </div>\n\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-three-quarters\">\n <span\n id=\"findResultsCount\"\n class=\"govuk-!-display-inline-block govuk-!-margin-right-4\"\n role=\"status\"\n >{{ resultsText }}</span\n >\n <a\n *ngIf=\"resultCount > 0\"\n id=\"findPrevious\"\n [routerLink]=\"[]\"\n role=\"button\"\n class=\"govuk-link govuk-link--no-visited-state govuk-!-margin-right-2\"\n (click)=\"searchPrev()\"\n title=\"Find the previous occurrence of the phrase\"\n data-l10n-id=\"find_previous\"\n >{{ \"Prev\" | rpxTranslate }}</a\n >\n <a\n *ngIf=\"resultCount > 0\"\n id=\"findNext\"\n #findNext\n [routerLink]=\"[]\"\n role=\"button\"\n class=\"govuk-link govuk-link--no-visited-state\"\n (click)=\"searchNext()\"\n title=\"Find the next occurrence of the phrase\"\n data-l10n-id=\"find_next\"\n >{{ \"Next\" | rpxTranslate }}</a\n >\n </div>\n <div class=\"govuk-grid-column-one-quarter\">\n <a\n [routerLink]=\"[]\"\n class=\"govuk-link govuk-link--no-visited-state\"\n role=\"button\"\n (click)=\"toggleAdvancedSearch()\"\n title=\"Advanced\"\n [attr.aria-expanded]=\"advancedSearchVisible\"\n aria-controls=\"advancedSearchVisible\"\n data-l10n-id=\"find_advanced\"\n style=\"position: absolute; top: 95px; right: 15px\"\n >{{ \"Advanced\" | rpxTranslate }}</a\n >\n </div>\n </div>\n\n <div\n id=\"advancedSearchVisible\"\n class=\"govuk-grid-row\"\n *ngIf=\"advancedSearchVisible\"\n >\n <div class=\"govuk-grid-column-full\">\n <div\n class=\"govuk-form-group govuk-!-margin-top-3 govuk-!-margin-bottom-1\"\n >\n <fieldset class=\"govuk-fieldset\" aria-describedby=\"advanced\">\n <div class=\"govuk-checkboxes\">\n <div class=\"govuk-checkboxes__item\">\n <input\n class=\"govuk-checkboxes__input\"\n id=\"findHighlightAll\"\n name=\"findHighlightAll\"\n type=\"checkbox\"\n (change)=\"highlightAll = !highlightAll; search()\"\n [checked]=\"highlightAll\"\n />\n <label\n class=\"govuk-label govuk-checkboxes__label\"\n for=\"findHighlightAll\"\n data-l10n-id=\"find_highlight\"\n >\n {{ \"Highlight all\" | rpxTranslate }}\n </label>\n </div>\n <div class=\"govuk-checkboxes__item\">\n <input\n class=\"govuk-checkboxes__input\"\n id=\"findMatchCase\"\n name=\"findMatchCase\"\n type=\"checkbox\"\n (change)=\"matchCase = !matchCase; search()\"\n [checked]=\"matchCase\"\n />\n <label\n class=\"govuk-label govuk-checkboxes__label\"\n for=\"findMatchCase\"\n data-l10n-id=\"find_match_case_label\"\n >\n {{ \"Match text (exact case)\" | rpxTranslate }}\n </label>\n </div>\n <div class=\"govuk-checkboxes__item\">\n <input\n class=\"govuk-checkboxes__input\"\n id=\"findEntireWord\"\n name=\"findMatchCase\"\n type=\"checkbox\"\n (change)=\"wholeWord = !wholeWord; search()\"\n [checked]=\"wholeWord\"\n />\n <label\n class=\"govuk-label govuk-checkboxes__label\"\n for=\"findEntireWord\"\n data-l10n-id=\"find_entire_word_label\"\n >\n {{ \"Match whole words or sentences\" | rpxTranslate }}\n </label>\n </div>\n </div>\n </fieldset>\n </div>\n </div>\n </div>\n <div>\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button searchbar-button--close\"\n title=\"Close Search\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"toggleSearchBar()\"\n ></button>\n </div>\n</div>\n" }]
|
|
99
99
|
}], ctorParameters: () => [{ type: i1.ToolbarButtonVisibilityService }, { type: i2.ToolbarEventService }], propDecorators: { findInput: [{
|
|
100
100
|
type: ViewChild,
|
|
101
101
|
args: ['findInput', { static: true }]
|
|
@@ -106,4 +106,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
106
106
|
type: HostListener,
|
|
107
107
|
args: ['window:keydown', ['$event']]
|
|
108
108
|
}] } });
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi90b29sYmFyL3NlYXJjaC1iYXIvc2VhcmNoLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi90b29sYmFyL3NlYXJjaC1iYXIvc2VhcmNoLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBVSxTQUFTLEVBQTRCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVNqSCxNQUFNLE9BQU8sa0JBQWtCO0lBZ0I3QixZQUNrQixjQUE4QyxFQUM5QyxhQUFrQztRQURsQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0M7UUFDOUMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBYnBELGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBRVIsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBRXBDLDBCQUFxQixHQUFHLEtBQUssQ0FBQztJQUtqQyxDQUFDO0lBRUUsUUFBUTtRQUNiLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUN2RyxDQUFDO0lBQ0osQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxL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QUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztJQUMzRCxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzFGLENBQUM7a0lBM0dVLGtCQUFrQjtzSEFBbEIsa0JBQWtCLHdVQ1QvQixrdEtBNEpBOzs0RkRuSmEsa0JBQWtCO2tCQUo5QixTQUFTOytCQUNFLGVBQWU7cUlBS2lCLFNBQVM7c0JBQWxELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDRSxRQUFRO3NCQUFqRCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBbUNqQyxlQUFlO3NCQURyQixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgVmlld0NoaWxkLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2xiYXJCdXR0b25WaXNpYmlsaXR5U2VydmljZSB9IGZyb20gJy4uL3Rvb2xiYXItYnV0dG9uLXZpc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBTZWFyY2hSZXN1bHRzQ291bnQsIFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LXNlYXJjaC1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWJhci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuXG4gIEBWaWV3Q2hpbGQoJ2ZpbmRJbnB1dCcsIHsgc3RhdGljOiB0cnVlIH0pIGZpbmRJbnB1dDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgQFZpZXdDaGlsZCgnZmluZE5leHQnLCB7IHN0YXRpYzogZmFsc2UgfSkgZmluZE5leHQ6IEVsZW1lbnRSZWY8SFRNTEFuY2hvckVsZW1lbnQ+O1xuXG4gIGhpZ2hsaWdodEFsbCA9IHRydWU7XG4gIG1hdGNoQ2FzZSA9IGZhbHNlO1xuICB3aG9sZVdvcmQgPSBmYWxzZTtcbiAgcmVzdWx0c1RleHQgPSAnJztcbiAgc2VhcmNoVGV4dCA9ICcnO1xuICByZXN1bHRDb3VudCA9IDA7XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIHB1YmxpYyBhZHZhbmNlZFNlYXJjaFZpc2libGUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckJ1dHRvbnM6IFRvb2xiYXJCdXR0b25WaXNpYmlsaXR5U2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZVxuICApIHsgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2hSZXN1bHRzQ291bnRTdWJqZWN0LnN1YnNjcmliZShyZXN1bHRzID0+IHRoaXMuc2V0U2VhcmNoUmVzdWx0c0NvdW50KHJlc3VsdHMpKVxuICAgICk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5maW5kSW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBzdWJzY3JpcHRpb24gb2YgdGhpcy5zdWJzY3JpcHRpb25zKSB7XG4gICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbldpbmRvd0tleURvd24oZTogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmIChlLmNvZGUgPT09ICdGMycgfHwgKGUuY3RybEtleSAmJiBlLmNvZGUgPT09ICdLZXlGJykpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KGZhbHNlKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5maW5kSW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpLCAyMDApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hOZXh0KCk6IHZvaWQge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2goe1xuICAgICAgc2VhcmNoVGVybTogdGhpcy5zZWFyY2hUZXh0LFxuICAgICAgaGlnaGxpZ2h0QWxsOiB0aGlzLmhpZ2hsaWdodEFsbCxcbiAgICAgIG1hdGNoQ2FzZTogdGhpcy5tYXRjaENhc2UsXG4gICAgICB3aG9sZVdvcmQ6IHRoaXMud2hvbGVXb3JkLFxuICAgICAgcHJldmlvdXM6IGZhbHNlLFxuICAgICAgcmVzZXQ6IGZhbHNlXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoUHJldigpOiB2b2lkIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMuc2VhcmNoKHtcbiAgICAgIHNlYXJjaFRlcm06IHRoaXMuc2VhcmNoVGV4dCxcbiAgICAgIGhpZ2hsaWdodEFsbDogdGhpcy5oaWdobGlnaHRBbGwsXG4gICAgICBtYXRjaENhc2U6IHRoaXMubWF0Y2hDYXNlLFxuICAgICAgd2hvbGVXb3JkOiB0aGlzLndob2xlV29yZCxcbiAgICAgIHByZXZpb3VzOiB0cnVlLFxuICAgICAgcmVzZXQ6IGZhbHNlXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoKCk6IHZvaWQge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2goe1xuICAgICAgc2VhcmNoVGVybTogdGhpcy5zZWFyY2hUZXh0LFxuICAgICAgaGlnaGxpZ2h0QWxsOiB0aGlzLmhpZ2hsaWdodEFsbCxcbiAgICAgIG1hdGNoQ2FzZTogdGhpcy5tYXRjaENhc2UsXG4gICAgICB3aG9sZVdvcmQ6IHRoaXMud2hvbGVXb3JkLFxuICAgICAgcHJldmlvdXM6IGZhbHNlLFxuICAgICAgcmVzZXQ6IHRydWVcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U2VhcmNoUmVzdWx0c0NvdW50KHJlc3VsdHM6IFNlYXJjaFJlc3VsdHNDb3VudCk6IHZvaWQge1xuICAgIHRoaXMucmVzdWx0Q291bnQgPSByZXN1bHRzLnRvdGFsO1xuICAgIHRoaXMucmVzdWx0c1RleHQgPSB0aGlzLnJlc3VsdENvdW50ID4gMFxuICAgICAgPyBgRm91bmQgJHtyZXN1bHRzLmN1cnJlbnR9IG9mICR7cmVzdWx0cy50b3RhbH1gXG4gICAgICA6ICdObyByZXN1bHRzIGZvdW5kJztcbiAgICBpZiAodGhpcy5yZXN1bHRDb3VudCAmJiB0aGlzLnJlc3VsdENvdW50ID4gMCAmJiAhcmVzdWx0cy5pc1ByZXZpb3VzKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5maW5kTmV4dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICB9LCAxMDAwKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25Fc2NhcGVLZXlQcmVzcyhlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9uRW50ZXJLZXlQcmVzcyhlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2goKTtcbiAgfVxuXG5cbiAgcHVibGljIHRvZ2dsZUFkdmFuY2VkU2VhcmNoKCk6IHZvaWQge1xuICAgIHRoaXMuYWR2YW5jZWRTZWFyY2hWaXNpYmxlID0gIXRoaXMuYWR2YW5jZWRTZWFyY2hWaXNpYmxlO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZVNlYXJjaEJhcigpIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMuc2VhcmNoQmFySGlkZGVuLm5leHQoIXRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2hCYXJIaWRkZW4uZ2V0VmFsdWUoKSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJzZWFyY2hiYXIgZ292dWstIS1wYWRkaW5nLTNcIlxuICBbaGlkZGVuXT1cInRvb2xiYXJFdmVudHMuc2VhcmNoQmFySGlkZGVuIHwgYXN5bmNcIlxuPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1yb3dcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tZnVsbFwiPlxuICAgICAgPGlucHV0XG4gICAgICAgIGNsYXNzPVwiZ292dWstaW5wdXQgZ292dWstIS1kaXNwbGF5LWlubGluZS1ibG9jayBnb3Z1ay0hLXdpZHRoLXRocmVlLXF1YXJ0ZXJzIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS01IGdvdnVrLSEtbWFyZ2luLXRvcC01XCJcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiU2VhcmNoIGRvY3VtZW50XCJcbiAgICAgICAgI2ZpbmRJbnB1dFxuICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIlxuICAgICAgICAoa2V5ZG93bi5lc2NhcGUpPVwib25Fc2NhcGVLZXlQcmVzcygkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25FbnRlcktleVByZXNzKCRldmVudClcIlxuICAgICAgICB0aXRsZT1cIlNlYXJjaCBkb2N1bWVudFwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwiU2VhcmNoIGRvY3VtZW50IGZvcuKAplwiXG4gICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgIGRhdGEtbDEwbi1pZD1cImZpbmRfaW5wdXRcIlxuICAgICAgLz5cbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJnb3Z1ay1idXR0b24gZ292dWstIS1kaXNwbGF5LWlubGluZS1ibG9jayBnb3Z1ay0hLW1hcmdpbi1ib3R0b20tNFwiXG4gICAgICAgIGRhdGEtbW9kdWxlPVwiZ292dWstYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cInNlYXJjaCgpXCJcbiAgICAgICAgc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNDBweDsgcmlnaHQ6IDEwcHhcIlxuICAgICAgPlxuICAgICAgICBTZWFyY2hcbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1yb3dcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tdGhyZWUtcXVhcnRlcnNcIj5cbiAgICAgIDxzcGFuXG4gICAgICAgIGlkPVwiZmluZFJlc3VsdHNDb3VudFwiXG4gICAgICAgIGNsYXNzPVwiZ292dWstIS1kaXNwbGF5LWlubGluZS1ibG9jayBnb3Z1ay0hLW1hcmdpbi1yaWdodC00XCJcbiAgICAgICAgcm9sZT1cInN0YXR1c1wiXG4gICAgICAgID57eyByZXN1bHRzVGV4dCB9fTwvc3BhblxuICAgICAgPlxuICAgICAgPGFcbiAgICAgICAgKm5nSWY9XCJyZXN1bHRDb3VudCA+IDBcIlxuICAgICAgICBpZD1cImZpbmRQcmV2aW91c1wiXG4gICAgICAgIFtyb3V0ZXJMaW5rXT1cIltdXCJcbiAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZ292dWstbGluayBnb3Z1ay1saW5rLS1uby12aXNpdGVkLXN0YXRlIGdvdnVrLSEtbWFyZ2luLXJpZ2h0LTJcIlxuICAgICAgICAoY2xpY2spPVwic2VhcmNoUHJldigpXCJcbiAgICAgICAgdGl0bGU9XCJGaW5kIHRoZSBwcmV2aW91cyBvY2N1cnJlbmNlIG9mIHRoZSBwaHJhc2VcIlxuICAgICAgICBkYXRhLWwxMG4taWQ9XCJmaW5kX3ByZXZpb3VzXCJcbiAgICAgICAgPnt7IFwiUHJldlwiIHwgcnB4VHJhbnNsYXRlIH19PC9hXG4gICAgICA+XG4gICAgICA8YVxuICAgICAgICAqbmdJZj1cInJlc3VsdENvdW50ID4gMFwiXG4gICAgICAgIGlkPVwiZmluZE5leHRcIlxuICAgICAgICAjZmluZE5leHRcbiAgICAgICAgW3JvdXRlckxpbmtdPVwiW11cIlxuICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJnb3Z1ay1saW5rIGdvdnVrLWxpbmstLW5vLXZpc2l0ZWQtc3RhdGVcIlxuICAgICAgICAoY2xpY2spPVwic2VhcmNoTmV4dCgpXCJcbiAgICAgICAgdGl0bGU9XCJGaW5kIHRoZSBuZXh0IG9jY3VycmVuY2Ugb2YgdGhlIHBocmFzZVwiXG4gICAgICAgIGRhdGEtbDEwbi1pZD1cImZpbmRfbmV4dFwiXG4gICAgICAgID57eyBcIk5leHRcIiB8IHJweFRyYW5zbGF0ZSB9fTwvYVxuICAgICAgPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1ncmlkLWNvbHVtbi1vbmUtcXVhcnRlclwiPlxuICAgICAgPGFcbiAgICAgICAgW3JvdXRlckxpbmtdPVwiW11cIlxuICAgICAgICBjbGFzcz1cImdvdnVrLWxpbmsgZ292dWstbGluay0tbm8tdmlzaXRlZC1zdGF0ZVwiXG4gICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwidG9nZ2xlQWR2YW5jZWRTZWFyY2goKVwiXG4gICAgICAgIHRpdGxlPVwiQWR2YW5jZWRcIlxuICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImFkdmFuY2VkU2VhcmNoVmlzaWJsZVwiXG4gICAgICAgIGFyaWEtY29udHJvbHM9XCJhZHZhbmNlZFNlYXJjaFZpc2libGVcIlxuICAgICAgICBkYXRhLWwxMG4taWQ9XCJmaW5kX2FkdmFuY2VkXCJcbiAgICAgICAgc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogOTVweDsgcmlnaHQ6IDE1cHhcIlxuICAgICAgICA+e3sgXCJBZHZhbmNlZFwiIHwgcnB4VHJhbnNsYXRlIH19PC9hXG4gICAgICA+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXZcbiAgICBpZD1cImFkdmFuY2VkU2VhcmNoVmlzaWJsZVwiXG4gICAgY2xhc3M9XCJnb3Z1ay1ncmlkLXJvd1wiXG4gICAgKm5nSWY9XCJhZHZhbmNlZFNlYXJjaFZpc2libGVcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cImdvdnVrLWdyaWQtY29sdW1uLWZ1bGxcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwIGdvdnVrLSEtbWFyZ2luLXRvcC0zIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS0xXCJcbiAgICAgID5cbiAgICAgICAgPGZpZWxkc2V0IGNsYXNzPVwiZ292dWstZmllbGRzZXRcIiBhcmlhLWRlc2NyaWJlZGJ5PVwiYWR2YW5jZWRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pbnB1dFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJmaW5kSGlnaGxpZ2h0QWxsXCJcbiAgICAgICAgICAgICAgICBuYW1lPVwiZmluZEhpZ2hsaWdodEFsbFwiXG4gICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAoY2hhbmdlKT1cImhpZ2hsaWdodEFsbCA9ICFoaWdobGlnaHRBbGw7IHNlYXJjaCgpXCJcbiAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJoaWdobGlnaHRBbGxcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsXCJcbiAgICAgICAgICAgICAgICBmb3I9XCJmaW5kSGlnaGxpZ2h0QWxsXCJcbiAgICAgICAgICAgICAgICBkYXRhLWwxMG4taWQ9XCJmaW5kX2hpZ2hsaWdodFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBcIkhpZ2hsaWdodCBhbGxcIiB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faXRlbVwiPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2lucHV0XCJcbiAgICAgICAgICAgICAgICBpZD1cImZpbmRNYXRjaENhc2VcIlxuICAgICAgICAgICAgICAgIG5hbWU9XCJmaW5kTWF0Y2hDYXNlXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwibWF0Y2hDYXNlID0gIW1hdGNoQ2FzZTsgc2VhcmNoKClcIlxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cIm1hdGNoQ2FzZVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstY2hlY2tib3hlc19fbGFiZWxcIlxuICAgICAgICAgICAgICAgIGZvcj1cImZpbmRNYXRjaENhc2VcIlxuICAgICAgICAgICAgICAgIGRhdGEtbDEwbi1pZD1cImZpbmRfbWF0Y2hfY2FzZV9sYWJlbFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBcIk1hdGNoIHRleHQgKGV4YWN0IGNhc2UpXCIgfCBycHhUcmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pbnB1dFwiXG4gICAgICAgICAgICAgICAgaWQ9XCJmaW5kRW50aXJlV29yZFwiXG4gICAgICAgICAgICAgICAgbmFtZT1cImZpbmRNYXRjaENhc2VcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ3aG9sZVdvcmQgPSAhd2hvbGVXb3JkOyBzZWFyY2goKVwiXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwid2hvbGVXb3JkXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1jaGVja2JveGVzX19sYWJlbFwiXG4gICAgICAgICAgICAgICAgZm9yPVwiZmluZEVudGlyZVdvcmRcIlxuICAgICAgICAgICAgICAgIGRhdGEtbDEwbi1pZD1cImZpbmRfZW50aXJlX3dvcmRfbGFiZWxcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgXCJNYXRjaCB3aG9sZSB3b3JkcyBvciBzZW50ZW5jZXNcIiB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZmllbGRzZXQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXY+XG4gICAgPGJ1dHRvblxuICAgICAgaWQ9XCJtdkNsb3NlQnRuXCJcbiAgICAgICNtdkNsb3NlQnRuXG4gICAgICBjbGFzcz1cIm12LWJ1dHRvbiBzZWFyY2hiYXItYnV0dG9uLS1jbG9zZVwiXG4gICAgICB0aXRsZT1cIkNsb3NlIFNlYXJjaFwiXG4gICAgICBkYXRhLWwxMG4taWQ9XCJtdlJlZGFjdEJ0blwiXG4gICAgICAoY2xpY2spPVwidG9nZ2xlU2VhcmNoQmFyKClcIlxuICAgID48L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi90b29sYmFyL3NlYXJjaC1iYXIvc2VhcmNoLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi90b29sYmFyL3NlYXJjaC1iYXIvc2VhcmNoLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBVSxTQUFTLEVBQTRCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVNqSCxNQUFNLE9BQU8sa0JBQWtCO0lBZ0I3QixZQUNrQixjQUE4QyxFQUM5QyxhQUFrQztRQURsQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0M7UUFDOUMsa0JBQWEsR0FBYixhQUFhLENBQXFCO1FBYnBELGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBRVIsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBRXBDLDBCQUFxQixHQUFHLEtBQUssQ0FBQztJQUtqQyxDQUFDO0lBRUUsUUFBUTtRQUNiLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUN2RyxDQUFDO0lBQ0osQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxL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QUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztJQUMzRCxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzFGLENBQUM7a0lBM0dVLGtCQUFrQjtzSEFBbEIsa0JBQWtCLHdVQ1QvQixpd0tBNkpBOzs0RkRwSmEsa0JBQWtCO2tCQUo5QixTQUFTOytCQUNFLGVBQWU7cUlBS2lCLFNBQVM7c0JBQWxELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDRSxRQUFRO3NCQUFqRCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBbUNqQyxlQUFlO3NCQURyQixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgVmlld0NoaWxkLCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2xiYXJCdXR0b25WaXNpYmlsaXR5U2VydmljZSB9IGZyb20gJy4uL3Rvb2xiYXItYnV0dG9uLXZpc2liaWxpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBTZWFyY2hSZXN1bHRzQ291bnQsIFRvb2xiYXJFdmVudFNlcnZpY2UgfSBmcm9tICcuLi90b29sYmFyLWV2ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LXNlYXJjaC1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWJhci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuXG4gIEBWaWV3Q2hpbGQoJ2ZpbmRJbnB1dCcsIHsgc3RhdGljOiB0cnVlIH0pIGZpbmRJbnB1dDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgQFZpZXdDaGlsZCgnZmluZE5leHQnLCB7IHN0YXRpYzogZmFsc2UgfSkgZmluZE5leHQ6IEVsZW1lbnRSZWY8SFRNTEFuY2hvckVsZW1lbnQ+O1xuXG4gIGhpZ2hsaWdodEFsbCA9IHRydWU7XG4gIG1hdGNoQ2FzZSA9IGZhbHNlO1xuICB3aG9sZVdvcmQgPSBmYWxzZTtcbiAgcmVzdWx0c1RleHQgPSAnJztcbiAgc2VhcmNoVGV4dCA9ICcnO1xuICByZXN1bHRDb3VudCA9IDA7XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIHB1YmxpYyBhZHZhbmNlZFNlYXJjaFZpc2libGUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckJ1dHRvbnM6IFRvb2xiYXJCdXR0b25WaXNpYmlsaXR5U2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckV2ZW50czogVG9vbGJhckV2ZW50U2VydmljZVxuICApIHsgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2hSZXN1bHRzQ291bnRTdWJqZWN0LnN1YnNjcmliZShyZXN1bHRzID0+IHRoaXMuc2V0U2VhcmNoUmVzdWx0c0NvdW50KHJlc3VsdHMpKVxuICAgICk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5maW5kSW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBzdWJzY3JpcHRpb24gb2YgdGhpcy5zdWJzY3JpcHRpb25zKSB7XG4gICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbldpbmRvd0tleURvd24oZTogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmIChlLmNvZGUgPT09ICdGMycgfHwgKGUuY3RybEtleSAmJiBlLmNvZGUgPT09ICdLZXlGJykpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KGZhbHNlKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5maW5kSW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpLCAyMDApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hOZXh0KCk6IHZvaWQge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2goe1xuICAgICAgc2VhcmNoVGVybTogdGhpcy5zZWFyY2hUZXh0LFxuICAgICAgaGlnaGxpZ2h0QWxsOiB0aGlzLmhpZ2hsaWdodEFsbCxcbiAgICAgIG1hdGNoQ2FzZTogdGhpcy5tYXRjaENhc2UsXG4gICAgICB3aG9sZVdvcmQ6IHRoaXMud2hvbGVXb3JkLFxuICAgICAgcHJldmlvdXM6IGZhbHNlLFxuICAgICAgcmVzZXQ6IGZhbHNlXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoUHJldigpOiB2b2lkIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMuc2VhcmNoKHtcbiAgICAgIHNlYXJjaFRlcm06IHRoaXMuc2VhcmNoVGV4dCxcbiAgICAgIGhpZ2hsaWdodEFsbDogdGhpcy5oaWdobGlnaHRBbGwsXG4gICAgICBtYXRjaENhc2U6IHRoaXMubWF0Y2hDYXNlLFxuICAgICAgd2hvbGVXb3JkOiB0aGlzLndob2xlV29yZCxcbiAgICAgIHByZXZpb3VzOiB0cnVlLFxuICAgICAgcmVzZXQ6IGZhbHNlXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoKCk6IHZvaWQge1xuICAgIHRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2goe1xuICAgICAgc2VhcmNoVGVybTogdGhpcy5zZWFyY2hUZXh0LFxuICAgICAgaGlnaGxpZ2h0QWxsOiB0aGlzLmhpZ2hsaWdodEFsbCxcbiAgICAgIG1hdGNoQ2FzZTogdGhpcy5tYXRjaENhc2UsXG4gICAgICB3aG9sZVdvcmQ6IHRoaXMud2hvbGVXb3JkLFxuICAgICAgcHJldmlvdXM6IGZhbHNlLFxuICAgICAgcmVzZXQ6IHRydWVcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U2VhcmNoUmVzdWx0c0NvdW50KHJlc3VsdHM6IFNlYXJjaFJlc3VsdHNDb3VudCk6IHZvaWQge1xuICAgIHRoaXMucmVzdWx0Q291bnQgPSByZXN1bHRzLnRvdGFsO1xuICAgIHRoaXMucmVzdWx0c1RleHQgPSB0aGlzLnJlc3VsdENvdW50ID4gMFxuICAgICAgPyBgRm91bmQgJHtyZXN1bHRzLmN1cnJlbnR9IG9mICR7cmVzdWx0cy50b3RhbH1gXG4gICAgICA6ICdObyByZXN1bHRzIGZvdW5kJztcbiAgICBpZiAodGhpcy5yZXN1bHRDb3VudCAmJiB0aGlzLnJlc3VsdENvdW50ID4gMCAmJiAhcmVzdWx0cy5pc1ByZXZpb3VzKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5maW5kTmV4dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICB9LCAxMDAwKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25Fc2NhcGVLZXlQcmVzcyhlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRzLnNlYXJjaEJhckhpZGRlbi5uZXh0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIG9uRW50ZXJLZXlQcmVzcyhlOiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2goKTtcbiAgfVxuXG5cbiAgcHVibGljIHRvZ2dsZUFkdmFuY2VkU2VhcmNoKCk6IHZvaWQge1xuICAgIHRoaXMuYWR2YW5jZWRTZWFyY2hWaXNpYmxlID0gIXRoaXMuYWR2YW5jZWRTZWFyY2hWaXNpYmxlO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZVNlYXJjaEJhcigpIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudHMuc2VhcmNoQmFySGlkZGVuLm5leHQoIXRoaXMudG9vbGJhckV2ZW50cy5zZWFyY2hCYXJIaWRkZW4uZ2V0VmFsdWUoKSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJzZWFyY2hiYXIgZ292dWstIS1wYWRkaW5nLTNcIlxuICBbaGlkZGVuXT1cInRvb2xiYXJFdmVudHMuc2VhcmNoQmFySGlkZGVuIHwgYXN5bmNcIlxuPlxuICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1yb3dcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tZnVsbFwiPlxuICAgICAgPGlucHV0XG4gICAgICAgIGNsYXNzPVwiZ292dWstaW5wdXQgZ292dWstIS1kaXNwbGF5LWlubGluZS1ibG9jayBnb3Z1ay0hLXdpZHRoLXRocmVlLXF1YXJ0ZXJzIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS01IGdvdnVrLSEtbWFyZ2luLXRvcC01XCJcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiU2VhcmNoIGRvY3VtZW50XCJcbiAgICAgICAgI2ZpbmRJbnB1dFxuICAgICAgICBbbmdNb2RlbF09XCJzZWFyY2hUZXh0XCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoVGV4dCA9ICRldmVudFwiXG4gICAgICAgIChrZXlkb3duLmVzY2FwZSk9XCJvbkVzY2FwZUtleVByZXNzKCRldmVudClcIlxuICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkVudGVyS2V5UHJlc3MoJGV2ZW50KVwiXG4gICAgICAgIHRpdGxlPVwiU2VhcmNoIGRvY3VtZW50XCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2ggZG9jdW1lbnQgZm9y4oCmXCJcbiAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgZGF0YS1sMTBuLWlkPVwiZmluZF9pbnB1dFwiXG4gICAgICAvPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cImdvdnVrLWJ1dHRvbiBnb3Z1ay0hLWRpc3BsYXktaW5saW5lLWJsb2NrIGdvdnVrLSEtbWFyZ2luLWJvdHRvbS00XCJcbiAgICAgICAgZGF0YS1tb2R1bGU9XCJnb3Z1ay1idXR0b25cIlxuICAgICAgICAoY2xpY2spPVwic2VhcmNoKClcIlxuICAgICAgICBzdHlsZT1cInBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA0MHB4OyByaWdodDogMTBweFwiXG4gICAgICA+XG4gICAgICAgIFNlYXJjaFxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJnb3Z1ay1ncmlkLXJvd1wiPlxuICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1ncmlkLWNvbHVtbi10aHJlZS1xdWFydGVyc1wiPlxuICAgICAgPHNwYW5cbiAgICAgICAgaWQ9XCJmaW5kUmVzdWx0c0NvdW50XCJcbiAgICAgICAgY2xhc3M9XCJnb3Z1ay0hLWRpc3BsYXktaW5saW5lLWJsb2NrIGdvdnVrLSEtbWFyZ2luLXJpZ2h0LTRcIlxuICAgICAgICByb2xlPVwic3RhdHVzXCJcbiAgICAgICAgPnt7IHJlc3VsdHNUZXh0IH19PC9zcGFuXG4gICAgICA+XG4gICAgICA8YVxuICAgICAgICAqbmdJZj1cInJlc3VsdENvdW50ID4gMFwiXG4gICAgICAgIGlkPVwiZmluZFByZXZpb3VzXCJcbiAgICAgICAgW3JvdXRlckxpbmtdPVwiW11cIlxuICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJnb3Z1ay1saW5rIGdvdnVrLWxpbmstLW5vLXZpc2l0ZWQtc3RhdGUgZ292dWstIS1tYXJnaW4tcmlnaHQtMlwiXG4gICAgICAgIChjbGljayk9XCJzZWFyY2hQcmV2KClcIlxuICAgICAgICB0aXRsZT1cIkZpbmQgdGhlIHByZXZpb3VzIG9jY3VycmVuY2Ugb2YgdGhlIHBocmFzZVwiXG4gICAgICAgIGRhdGEtbDEwbi1pZD1cImZpbmRfcHJldmlvdXNcIlxuICAgICAgICA+e3sgXCJQcmV2XCIgfCBycHhUcmFuc2xhdGUgfX08L2FcbiAgICAgID5cbiAgICAgIDxhXG4gICAgICAgICpuZ0lmPVwicmVzdWx0Q291bnQgPiAwXCJcbiAgICAgICAgaWQ9XCJmaW5kTmV4dFwiXG4gICAgICAgICNmaW5kTmV4dFxuICAgICAgICBbcm91dGVyTGlua109XCJbXVwiXG4gICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cImdvdnVrLWxpbmsgZ292dWstbGluay0tbm8tdmlzaXRlZC1zdGF0ZVwiXG4gICAgICAgIChjbGljayk9XCJzZWFyY2hOZXh0KClcIlxuICAgICAgICB0aXRsZT1cIkZpbmQgdGhlIG5leHQgb2NjdXJyZW5jZSBvZiB0aGUgcGhyYXNlXCJcbiAgICAgICAgZGF0YS1sMTBuLWlkPVwiZmluZF9uZXh0XCJcbiAgICAgICAgPnt7IFwiTmV4dFwiIHwgcnB4VHJhbnNsYXRlIH19PC9hXG4gICAgICA+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImdvdnVrLWdyaWQtY29sdW1uLW9uZS1xdWFydGVyXCI+XG4gICAgICA8YVxuICAgICAgICBbcm91dGVyTGlua109XCJbXVwiXG4gICAgICAgIGNsYXNzPVwiZ292dWstbGluayBnb3Z1ay1saW5rLS1uby12aXNpdGVkLXN0YXRlXCJcbiAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVBZHZhbmNlZFNlYXJjaCgpXCJcbiAgICAgICAgdGl0bGU9XCJBZHZhbmNlZFwiXG4gICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiYWR2YW5jZWRTZWFyY2hWaXNpYmxlXCJcbiAgICAgICAgYXJpYS1jb250cm9scz1cImFkdmFuY2VkU2VhcmNoVmlzaWJsZVwiXG4gICAgICAgIGRhdGEtbDEwbi1pZD1cImZpbmRfYWR2YW5jZWRcIlxuICAgICAgICBzdHlsZT1cInBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA5NXB4OyByaWdodDogMTVweFwiXG4gICAgICAgID57eyBcIkFkdmFuY2VkXCIgfCBycHhUcmFuc2xhdGUgfX08L2FcbiAgICAgID5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdlxuICAgIGlkPVwiYWR2YW5jZWRTZWFyY2hWaXNpYmxlXCJcbiAgICBjbGFzcz1cImdvdnVrLWdyaWQtcm93XCJcbiAgICAqbmdJZj1cImFkdmFuY2VkU2VhcmNoVmlzaWJsZVwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1jb2x1bW4tZnVsbFwiPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImdvdnVrLWZvcm0tZ3JvdXAgZ292dWstIS1tYXJnaW4tdG9wLTMgZ292dWstIS1tYXJnaW4tYm90dG9tLTFcIlxuICAgICAgPlxuICAgICAgICA8ZmllbGRzZXQgY2xhc3M9XCJnb3Z1ay1maWVsZHNldFwiIGFyaWEtZGVzY3JpYmVkYnk9XCJhZHZhbmNlZFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faXRlbVwiPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2lucHV0XCJcbiAgICAgICAgICAgICAgICBpZD1cImZpbmRIaWdobGlnaHRBbGxcIlxuICAgICAgICAgICAgICAgIG5hbWU9XCJmaW5kSGlnaGxpZ2h0QWxsXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiaGlnaGxpZ2h0QWxsID0gIWhpZ2hsaWdodEFsbDsgc2VhcmNoKClcIlxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImhpZ2hsaWdodEFsbFwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZ292dWstbGFiZWwgZ292dWstY2hlY2tib3hlc19fbGFiZWxcIlxuICAgICAgICAgICAgICAgIGZvcj1cImZpbmRIaWdobGlnaHRBbGxcIlxuICAgICAgICAgICAgICAgIGRhdGEtbDEwbi1pZD1cImZpbmRfaGlnaGxpZ2h0XCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IFwiSGlnaGxpZ2h0IGFsbFwiIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1jaGVja2JveGVzX19pdGVtXCI+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faW5wdXRcIlxuICAgICAgICAgICAgICAgIGlkPVwiZmluZE1hdGNoQ2FzZVwiXG4gICAgICAgICAgICAgICAgbmFtZT1cImZpbmRNYXRjaENhc2VcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJtYXRjaENhc2UgPSAhbWF0Y2hDYXNlOyBzZWFyY2goKVwiXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwibWF0Y2hDYXNlXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJnb3Z1ay1sYWJlbCBnb3Z1ay1jaGVja2JveGVzX19sYWJlbFwiXG4gICAgICAgICAgICAgICAgZm9yPVwiZmluZE1hdGNoQ2FzZVwiXG4gICAgICAgICAgICAgICAgZGF0YS1sMTBuLWlkPVwiZmluZF9tYXRjaF9jYXNlX2xhYmVsXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IFwiTWF0Y2ggdGV4dCAoZXhhY3QgY2FzZSlcIiB8IHJweFRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ292dWstY2hlY2tib3hlc19faXRlbVwiPlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdvdnVrLWNoZWNrYm94ZXNfX2lucHV0XCJcbiAgICAgICAgICAgICAgICBpZD1cImZpbmRFbnRpcmVXb3JkXCJcbiAgICAgICAgICAgICAgICBuYW1lPVwiZmluZE1hdGNoQ2FzZVwiXG4gICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIndob2xlV29yZCA9ICF3aG9sZVdvcmQ7IHNlYXJjaCgpXCJcbiAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJ3aG9sZVdvcmRcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdvdnVrLWxhYmVsIGdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsXCJcbiAgICAgICAgICAgICAgICBmb3I9XCJmaW5kRW50aXJlV29yZFwiXG4gICAgICAgICAgICAgICAgZGF0YS1sMTBuLWlkPVwiZmluZF9lbnRpcmVfd29yZF9sYWJlbFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBcIk1hdGNoIHdob2xlIHdvcmRzIG9yIHNlbnRlbmNlc1wiIHwgcnB4VHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9maWVsZHNldD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdj5cbiAgICA8YnV0dG9uXG4gICAgICBpZD1cIm12Q2xvc2VCdG5cIlxuICAgICAgI212Q2xvc2VCdG5cbiAgICAgIGNsYXNzPVwibXYtYnV0dG9uIHNlYXJjaGJhci1idXR0b24tLWNsb3NlXCJcbiAgICAgIHRpdGxlPVwiQ2xvc2UgU2VhcmNoXCJcbiAgICAgIGRhdGEtbDEwbi1pZD1cIm12UmVkYWN0QnRuXCJcbiAgICAgIChjbGljayk9XCJ0b2dnbGVTZWFyY2hCYXIoKVwiXG4gICAgPjwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -43,10 +43,10 @@ export class ToolbarButtonVisibilityService {
|
|
|
43
43
|
this[key] = options[key];
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
47
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
46
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolbarButtonVisibilityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
47
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolbarButtonVisibilityService, providedIn: 'root' }); }
|
|
48
48
|
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolbarButtonVisibilityService, decorators: [{
|
|
50
50
|
type: Injectable,
|
|
51
51
|
args: [{ providedIn: 'root' }]
|
|
52
52
|
}] });
|
|
@@ -168,10 +168,10 @@ export class ToolbarEventService {
|
|
|
168
168
|
}
|
|
169
169
|
this.icpEventService.participantsListVisible.next(isVisible);
|
|
170
170
|
}
|
|
171
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
172
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
171
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolbarEventService, deps: [{ token: i1.IcpEventService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
172
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolbarEventService, providedIn: 'root' }); }
|
|
173
173
|
}
|
|
174
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
174
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolbarEventService, decorators: [{
|
|
175
175
|
type: Injectable,
|
|
176
176
|
args: [{ providedIn: 'root' }]
|
|
177
177
|
}], ctorParameters: () => [{ type: i1.IcpEventService }] });
|
|
@@ -15,8 +15,8 @@ import * as i0 from "@angular/core";
|
|
|
15
15
|
import * as i1 from "rpx-xui-translation";
|
|
16
16
|
export { ToolbarButtonVisibilityService } from './toolbar-button-visibility.service';
|
|
17
17
|
export class ToolbarModule {
|
|
18
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
19
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
18
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
19
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ToolbarModule, declarations: [SearchBarComponent,
|
|
20
20
|
MainToolbarComponent,
|
|
21
21
|
RedactionToolbarComponent,
|
|
22
22
|
IcpToolbarComponent,
|
|
@@ -30,7 +30,7 @@ export class ToolbarModule {
|
|
|
30
30
|
IcpToolbarComponent,
|
|
31
31
|
RedactionSearchBarComponent,
|
|
32
32
|
HighlightToolbarComponent] }); }
|
|
33
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
33
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolbarModule, providers: [
|
|
34
34
|
ToolbarButtonVisibilityService
|
|
35
35
|
], imports: [CommonModule,
|
|
36
36
|
FormsModule,
|
|
@@ -38,7 +38,7 @@ export class ToolbarModule {
|
|
|
38
38
|
RouterModule,
|
|
39
39
|
RpxTranslationModule.forChild()] }); }
|
|
40
40
|
}
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolbarModule, decorators: [{
|
|
42
42
|
type: NgModule,
|
|
43
43
|
args: [{
|
|
44
44
|
declarations: [
|
package/esm2022/lib/viewers/convertible-content-viewer/convertible-content-viewer.component.mjs
CHANGED
|
@@ -54,10 +54,10 @@ export class ConvertibleContentViewerComponent {
|
|
|
54
54
|
}
|
|
55
55
|
return url.replace('/binary', '');
|
|
56
56
|
}
|
|
57
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
58
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
57
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConvertibleContentViewerComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
58
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ConvertibleContentViewerComponent, selector: "mv-conversion-viewer", inputs: { originalUrl: "originalUrl", downloadFileName: "downloadFileName", height: "height", enableAnnotations: "enableAnnotations", enableRedactions: "enableRedactions", annotationSet: "annotationSet" }, outputs: { mediaLoadStatus: "mediaLoadStatus", viewerException: "viewerException", documentTitle: "documentTitle" }, usesOnChanges: true, ngImport: i0, template: "<mv-pdf-viewer *ngIf=\"convertedUrl\"\n (mediaLoadStatus)=\"onMediaLoad($event)\"\n (pdfViewerException)=\"onLoadException($event)\"\n (documentTitle)=\"onDocumentTitleChange($event)\"\n [url]=\"convertedUrl\"\n [downloadUrl]=\"originalUrl\"\n [enableAnnotations]=\"enableAnnotations\"\n [enableRedactions]=\"enableRedactions\"\n [annotationSet]=\"enableAnnotations ? annotationSet : null\"\n [downloadFileName]=\"downloadFileName\"\n [height]=\"height\">\n</mv-pdf-viewer>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PdfViewerComponent, selector: "mv-pdf-viewer", inputs: ["downloadUrl", "url", "downloadFileName", "enableAnnotations", "enableRedactions", "enableICP", "annotationSet", "enableRedactSearch", "height", "caseId", "searchBarHidden"], outputs: ["mediaLoadStatus", "pdfViewerException", "documentTitle"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
59
59
|
}
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConvertibleContentViewerComponent, decorators: [{
|
|
61
61
|
type: Component,
|
|
62
62
|
args: [{ selector: 'mv-conversion-viewer', encapsulation: ViewEncapsulation.None, template: "<mv-pdf-viewer *ngIf=\"convertedUrl\"\n (mediaLoadStatus)=\"onMediaLoad($event)\"\n (pdfViewerException)=\"onLoadException($event)\"\n (documentTitle)=\"onDocumentTitleChange($event)\"\n [url]=\"convertedUrl\"\n [downloadUrl]=\"originalUrl\"\n [enableAnnotations]=\"enableAnnotations\"\n [enableRedactions]=\"enableRedactions\"\n [annotationSet]=\"enableAnnotations ? annotationSet : null\"\n [downloadFileName]=\"downloadFileName\"\n [height]=\"height\">\n</mv-pdf-viewer>\n" }]
|
|
63
63
|
}], ctorParameters: () => [{ type: i1.Store }], propDecorators: { originalUrl: [{
|
|
@@ -13,10 +13,10 @@ export class DocumentConversionApiService {
|
|
|
13
13
|
.post(`${this.documentConversionUrl}/${documentId}`, {}, { observe: 'response', withCredentials: true, responseType: 'blob' })
|
|
14
14
|
.pipe(map(response => response), catchError(error => of(error)));
|
|
15
15
|
}
|
|
16
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
17
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
16
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DocumentConversionApiService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
17
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DocumentConversionApiService }); }
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DocumentConversionApiService, decorators: [{
|
|
20
20
|
type: Injectable
|
|
21
21
|
}], ctorParameters: () => [{ type: i1.HttpClient }] });
|
|
22
22
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtY29udmVyc2lvbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3ZpZXdlcnMvY29udmVydGlibGUtY29udGVudC12aWV3ZXIvZG9jdW1lbnQtY29udmVyc2lvbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBR2pELE1BQU0sT0FBTyw0QkFBNEI7SUFJdkMsWUFBNkIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUYzQywwQkFBcUIsR0FBRyx1QkFBdUIsQ0FBQztJQUVGLENBQUM7SUFFaEQsT0FBTyxDQUFDLFVBQVU7UUFDdkIsT0FBTyxJQUFJLENBQUMsVUFBVTthQUNuQixJQUFJLENBQU8sR0FBRyxJQUFJLENBQUMscUJBQXFCLElBQUksVUFBVSxFQUFFLEVBQUUsRUFBRSxFQUMzRCxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUcsZUFBZSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsTUFBZ0IsRUFBRSxDQUFDO2FBQ2pGLElBQUksQ0FDSCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFDekIsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQy9CLENBQUM7SUFDTixDQUFDO2tJQWRVLDRCQUE0QjtzSUFBNUIsNEJBQTRCOzs0RkFBNUIsNEJBQTRCO2tCQUR4QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERvY3VtZW50Q29udmVyc2lvbkFwaVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgZG9jdW1lbnRDb252ZXJzaW9uVXJsID0gJy9kb2MtYXNzZW1ibHkvY29udmVydCc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50KSB7fVxuXG4gIHB1YmxpYyBjb252ZXJ0KGRvY3VtZW50SWQpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxCbG9iPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5wb3N0PEJsb2I+KGAke3RoaXMuZG9jdW1lbnRDb252ZXJzaW9uVXJsfS8ke2RvY3VtZW50SWR9YCwge30sXG4gICAgICAgIHsgb2JzZXJ2ZTogJ3Jlc3BvbnNlJyAsIHdpdGhDcmVkZW50aWFsczogdHJ1ZSwgcmVzcG9uc2VUeXBlOiAnYmxvYicgYXMgJ2pzb24nIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlKSxcbiAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiBvZihlcnJvcikpXG4gICAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -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: "
|
|
36
|
-
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
35
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GrabNDragDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
36
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GrabNDragDirective, selector: "[mvGrabNDrag]", inputs: { dragEnabled: "dragEnabled", dragX: "dragX" }, host: { listeners: { "pointerdown": "onPointerDown($event)", "window:pointermove": "onPointerMove($event)", "window:pointerup": "onWindowPointerUp()" } }, ngImport: i0 }); }
|
|
37
37
|
}
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GrabNDragDirective, decorators: [{
|
|
39
39
|
type: Directive,
|
|
40
40
|
args: [{
|
|
41
41
|
selector: '[mvGrabNDrag]'
|