@hmcts/media-viewer 4.1.9-exui-2821-1 → 4.1.10-exui-3053
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/media-viewer.component.mjs +98 -4
- package/esm2022/lib/shared/directives/keyboard-nav.directive.mjs +243 -0
- package/esm2022/lib/shared/shared.module.mjs +10 -5
- package/esm2022/lib/toolbar/highlight-toolbar/highlight-toolbar.component.mjs +38 -10
- package/esm2022/lib/toolbar/main-toolbar/main-toolbar.component.mjs +82 -18
- package/esm2022/lib/toolbar/redaction-toolbar/redaction-toolbar.component.mjs +35 -10
- package/esm2022/lib/toolbar/toolbar-focus.service.mjs +33 -0
- package/esm2022/lib/toolbar/toolbar.module.mjs +12 -6
- package/fesm2022/hmcts-media-viewer.mjs +598 -114
- package/fesm2022/hmcts-media-viewer.mjs.map +1 -1
- package/lib/media-viewer.component.d.ts +8 -0
- package/lib/media-viewer.component.d.ts.map +1 -1
- package/lib/shared/directives/keyboard-nav.directive.d.ts +30 -0
- package/lib/shared/directives/keyboard-nav.directive.d.ts.map +1 -0
- package/lib/shared/shared.module.d.ts +5 -4
- package/lib/shared/shared.module.d.ts.map +1 -1
- package/lib/toolbar/highlight-toolbar/highlight-toolbar.component.d.ts +7 -1
- package/lib/toolbar/highlight-toolbar/highlight-toolbar.component.d.ts.map +1 -1
- package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts +12 -1
- package/lib/toolbar/main-toolbar/main-toolbar.component.d.ts.map +1 -1
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts +6 -1
- package/lib/toolbar/redaction-toolbar/redaction-toolbar.component.d.ts.map +1 -1
- package/lib/toolbar/toolbar-focus.service.d.ts +7 -0
- package/lib/toolbar/toolbar-focus.service.d.ts.map +1 -0
- package/lib/toolbar/toolbar.module.d.ts +2 -1
- package/lib/toolbar/toolbar.module.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -6,20 +6,23 @@ import { GovUkFieldsetComponent } from './gov-uk-fieldset/gov-uk-fieldset.compon
|
|
|
6
6
|
import { GovUkLabelComponent } from './gov-uk-label/gov-uk-label.component';
|
|
7
7
|
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
8
8
|
import { RouterModule } from '@angular/router';
|
|
9
|
+
import { KeyboardNavDirective } from './directives/keyboard-nav.directive';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
export class SharedModule {
|
|
11
12
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
13
|
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SharedModule, declarations: [GovUkDateComponent,
|
|
13
14
|
GovUkErrorMessageComponent,
|
|
14
15
|
GovUkFieldsetComponent,
|
|
15
|
-
GovUkLabelComponent
|
|
16
|
+
GovUkLabelComponent,
|
|
17
|
+
KeyboardNavDirective], imports: [CommonModule,
|
|
16
18
|
FormsModule,
|
|
17
19
|
ReactiveFormsModule,
|
|
18
20
|
CommonModule,
|
|
19
21
|
RouterModule], exports: [GovUkDateComponent,
|
|
20
22
|
GovUkErrorMessageComponent,
|
|
21
23
|
GovUkFieldsetComponent,
|
|
22
|
-
GovUkLabelComponent
|
|
24
|
+
GovUkLabelComponent,
|
|
25
|
+
KeyboardNavDirective] }); }
|
|
23
26
|
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SharedModule, imports: [CommonModule,
|
|
24
27
|
FormsModule,
|
|
25
28
|
ReactiveFormsModule,
|
|
@@ -40,14 +43,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
40
43
|
GovUkDateComponent,
|
|
41
44
|
GovUkErrorMessageComponent,
|
|
42
45
|
GovUkFieldsetComponent,
|
|
43
|
-
GovUkLabelComponent
|
|
46
|
+
GovUkLabelComponent,
|
|
47
|
+
KeyboardNavDirective
|
|
44
48
|
],
|
|
45
49
|
exports: [
|
|
46
50
|
GovUkDateComponent,
|
|
47
51
|
GovUkErrorMessageComponent,
|
|
48
52
|
GovUkFieldsetComponent,
|
|
49
|
-
GovUkLabelComponent
|
|
53
|
+
GovUkLabelComponent,
|
|
54
|
+
KeyboardNavDirective
|
|
50
55
|
]
|
|
51
56
|
}]
|
|
52
57
|
}] });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lZGlhLXZpZXdlci9zcmMvbGliL3NoYXJlZC9zaGFyZWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7O0FBeUIzRSxNQUFNLE9BQU8sWUFBWTtrSUFBWixZQUFZO21JQUFaLFlBQVksaUJBZHJCLGtCQUFrQjtZQUNsQiwwQkFBMEI7WUFDMUIsc0JBQXNCO1lBQ3RCLG1CQUFtQjtZQUNuQixvQkFBb0IsYUFYcEIsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsWUFBWTtZQUNaLFlBQVksYUFVWixrQkFBa0I7WUFDbEIsMEJBQTBCO1lBQzFCLHNCQUFzQjtZQUN0QixtQkFBbUI7WUFDbkIsb0JBQW9CO21JQUdYLFlBQVksWUFyQnJCLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLFlBQVk7WUFDWixZQUFZOzs0RkFpQkgsWUFBWTtrQkF2QnhCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLFlBQVk7d0JBQ1osWUFBWTtxQkFDYjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osa0JBQWtCO3dCQUNsQiwwQkFBMEI7d0JBQzFCLHNCQUFzQjt3QkFDdEIsbUJBQW1CO3dCQUNuQixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxrQkFBa0I7d0JBQ2xCLDBCQUEwQjt3QkFDMUIsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLG9CQUFvQjtxQkFDckI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEdvdlVrRGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vZ292LXVrLWRhdGUvZ292LXVrLWRhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IEdvdlVrRXJyb3JNZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9nb3YtdWstZXJyb3ItbWVzc2FnZS9nb3YtdWstZXJyb3ItbWVzc2FnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR292VWtGaWVsZHNldENvbXBvbmVudCB9IGZyb20gJy4vZ292LXVrLWZpZWxkc2V0L2dvdi11ay1maWVsZHNldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR292VWtMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vZ292LXVrLWxhYmVsL2dvdi11ay1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgS2V5Ym9hcmROYXZEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMva2V5Ym9hcmQtbmF2LmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEdvdlVrRGF0ZUNvbXBvbmVudCxcbiAgICBHb3ZVa0Vycm9yTWVzc2FnZUNvbXBvbmVudCxcbiAgICBHb3ZVa0ZpZWxkc2V0Q29tcG9uZW50LFxuICAgIEdvdlVrTGFiZWxDb21wb25lbnQsXG4gICAgS2V5Ym9hcmROYXZEaXJlY3RpdmVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEdvdlVrRGF0ZUNvbXBvbmVudCxcbiAgICBHb3ZVa0Vycm9yTWVzc2FnZUNvbXBvbmVudCxcbiAgICBHb3ZVa0ZpZWxkc2V0Q29tcG9uZW50LFxuICAgIEdvdlVrTGFiZWxDb21wb25lbnQsXG4gICAgS2V5Ym9hcmROYXZEaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTaGFyZWRNb2R1bGUge31cbiJdfQ==
|
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
1
|
+
import { Component, HostListener } from '@angular/core';
|
|
2
2
|
import { SearchType } from '../toolbar-event.service';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "../toolbar-event.service";
|
|
5
5
|
import * as i2 from "../toolbar-button-visibility.service";
|
|
6
|
-
import * as i3 from "
|
|
7
|
-
import * as i4 from "
|
|
8
|
-
import * as i5 from "
|
|
6
|
+
import * as i3 from "../toolbar-focus.service";
|
|
7
|
+
import * as i4 from "../../shared/directives/keyboard-nav.directive";
|
|
8
|
+
import * as i5 from "../../shared/directives/tooltip-dismiss.directive";
|
|
9
|
+
import * as i6 from "@angular/common";
|
|
10
|
+
import * as i7 from "rpx-xui-translation";
|
|
9
11
|
export class HighlightToolbarComponent {
|
|
10
|
-
constructor(toolbarEventService, toolbarButtons) {
|
|
12
|
+
constructor(toolbarEventService, toolbarButtons, toolbarFocusService) {
|
|
11
13
|
this.toolbarEventService = toolbarEventService;
|
|
12
14
|
this.toolbarButtons = toolbarButtons;
|
|
15
|
+
this.toolbarFocusService = toolbarFocusService;
|
|
13
16
|
this.subscriptions = [];
|
|
14
17
|
}
|
|
15
18
|
ngOnInit() {
|
|
@@ -31,16 +34,41 @@ export class HighlightToolbarComponent {
|
|
|
31
34
|
this.toolbarEventService.highlightModeSubject.next(false);
|
|
32
35
|
this.toolbarEventService.openRedactionSearch.next({ modeType: SearchType.Highlight, isOpen: false });
|
|
33
36
|
}
|
|
37
|
+
onEscapeKey(event) {
|
|
38
|
+
event.preventDefault();
|
|
39
|
+
event.stopPropagation();
|
|
40
|
+
this.closeAndReturnFocus();
|
|
41
|
+
}
|
|
42
|
+
onArrowUp(event) {
|
|
43
|
+
const target = event.target;
|
|
44
|
+
const highlightToolbar = target.closest('.redaction');
|
|
45
|
+
if (highlightToolbar) {
|
|
46
|
+
this.returnFocusToMainToolbar();
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
closeAndReturnFocus() {
|
|
50
|
+
this.onClose();
|
|
51
|
+
this.returnFocusToMainToolbar();
|
|
52
|
+
}
|
|
53
|
+
returnFocusToMainToolbar() {
|
|
54
|
+
this.toolbarFocusService.focusToolbarButton('#mvHighlightBtn');
|
|
55
|
+
}
|
|
34
56
|
ngOnDestroy() {
|
|
35
57
|
for (const subscription of this.subscriptions) {
|
|
36
58
|
subscription.unsubscribe();
|
|
37
59
|
}
|
|
38
60
|
}
|
|
39
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HighlightToolbarComponent, deps: [{ token: i1.ToolbarEventService }, { token: i2.ToolbarButtonVisibilityService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HighlightToolbarComponent, selector: "mv-highlight-toolbar", ngImport: i0, template: "<div class=\"redaction\">\n <label class=\"govuk-label redaction-title\" data-l10n-id=\"redaction_options\"\n >{{ \"Highlight options\" | rpxTranslate }}</label\n >\n\n <button\n id=\"mvDrawBtn\"\n #mvDrawBtn\n class=\"mv-button mv-toolbar__menu-button--draw mv-tooltip\"\n [attr.data-tooltip]=\"'Draw a box' | rpxTranslate\"\n [class.toggled]=\"toolbarEventService.drawModeSubject | async\"\n aria-pressed=\"false\"\n data-l10n-id=\"mvDrawBtn\"\n (click)=\"onClickDrawToggle()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"draw_label\">{{ \"Draw a box\" | rpxTranslate }}</span>\n </button>\n\n <button\n id=\"highlightTextBtn\"\n class=\"mv-button mv-toolbar__menu-button--highlight mv-tooltip\"\n [attr.data-tooltip]=\"'Highlight text' | rpxTranslate\"\n data-l10n-id=\"highlightTextBtn\"\n (click)=\"onHighlight()\"\n [class.toggled]=\"toolbarEventService.highlightModeSubject | async\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"highlightTextBtn_label\">{{ \"Highlight text\" | rpxTranslate }}</span>\n </button>\n\n <button\n id=\"mvHighlightFromSearchBtn\"\n [attr.data-tooltip]=\"'From search' | rpxTranslate\"\n data-l10n-id=\"fromSearchButton\"\n class=\"mv-button redaction-button--search mv-tooltip\"\n (click)=\"onAllSearch()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span style=\"width: 5rem\" data-l10n-id=\"fromSearchButton_label\"\n >{{ \"From search\" | rpxTranslate }}</span\n >\n </button>\n\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button redaction-button--close mv-tooltip\"\n [attr.data-tooltip]=\"'Close highlight' | rpxTranslate\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"onClose()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"Close Redaction\">{{ \"Close Highlight\" | rpxTranslate }}</span>\n </button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type:
|
|
61
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HighlightToolbarComponent, deps: [{ token: i1.ToolbarEventService }, { token: i2.ToolbarButtonVisibilityService }, { token: i3.ToolbarFocusService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
62
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HighlightToolbarComponent, selector: "mv-highlight-toolbar", host: { listeners: { "keydown.escape": "onEscapeKey($event)", "keydown.arrowup": "onArrowUp($event)" } }, ngImport: i0, template: "<div class=\"redaction\" [mvKeyboardNav]=\"'horizontal'\">\n <label class=\"govuk-label redaction-title\" data-l10n-id=\"redaction_options\"\n >{{ \"Highlight options\" | rpxTranslate }}</label\n >\n\n <button\n id=\"mvDrawBtn\"\n #mvDrawBtn\n class=\"mv-button mv-toolbar__menu-button--draw mv-tooltip\"\n [attr.data-tooltip]=\"'Draw a box' | rpxTranslate\"\n [class.toggled]=\"toolbarEventService.drawModeSubject | async\"\n aria-pressed=\"false\"\n data-l10n-id=\"mvDrawBtn\"\n (click)=\"onClickDrawToggle()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"draw_label\">{{ \"Draw a box\" | rpxTranslate }}</span>\n </button>\n\n <button\n id=\"highlightTextBtn\"\n class=\"mv-button mv-toolbar__menu-button--highlight mv-tooltip\"\n [attr.data-tooltip]=\"'Highlight text' | rpxTranslate\"\n data-l10n-id=\"highlightTextBtn\"\n (click)=\"onHighlight()\"\n [class.toggled]=\"toolbarEventService.highlightModeSubject | async\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"highlightTextBtn_label\">{{ \"Highlight text\" | rpxTranslate }}</span>\n </button>\n\n <button\n id=\"mvHighlightFromSearchBtn\"\n [attr.data-tooltip]=\"'From search' | rpxTranslate\"\n data-l10n-id=\"fromSearchButton\"\n class=\"mv-button redaction-button--search mv-tooltip\"\n (click)=\"onAllSearch()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span style=\"width: 5rem\" data-l10n-id=\"fromSearchButton_label\"\n >{{ \"From search\" | rpxTranslate }}</span\n >\n </button>\n\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button redaction-button--close mv-tooltip\"\n [attr.data-tooltip]=\"'Close highlight' | rpxTranslate\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"onClose()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"Close Redaction\">{{ \"Close Highlight\" | rpxTranslate }}</span>\n </button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i4.KeyboardNavDirective, selector: "[mvKeyboardNav]", inputs: ["mvKeyboardNav"], outputs: ["itemFocused", "itemActivated"] }, { kind: "directive", type: i5.TooltipDismissDirective, selector: ".mv-tooltip, [mvTooltipDismiss]" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.RpxTranslatePipe, name: "rpxTranslate" }] }); }
|
|
41
63
|
}
|
|
42
64
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HighlightToolbarComponent, decorators: [{
|
|
43
65
|
type: Component,
|
|
44
|
-
args: [{ selector: 'mv-highlight-toolbar', template: "<div class=\"redaction\">\n <label class=\"govuk-label redaction-title\" data-l10n-id=\"redaction_options\"\n >{{ \"Highlight options\" | rpxTranslate }}</label\n >\n\n <button\n id=\"mvDrawBtn\"\n #mvDrawBtn\n class=\"mv-button mv-toolbar__menu-button--draw mv-tooltip\"\n [attr.data-tooltip]=\"'Draw a box' | rpxTranslate\"\n [class.toggled]=\"toolbarEventService.drawModeSubject | async\"\n aria-pressed=\"false\"\n data-l10n-id=\"mvDrawBtn\"\n (click)=\"onClickDrawToggle()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"draw_label\">{{ \"Draw a box\" | rpxTranslate }}</span>\n </button>\n\n <button\n id=\"highlightTextBtn\"\n class=\"mv-button mv-toolbar__menu-button--highlight mv-tooltip\"\n [attr.data-tooltip]=\"'Highlight text' | rpxTranslate\"\n data-l10n-id=\"highlightTextBtn\"\n (click)=\"onHighlight()\"\n [class.toggled]=\"toolbarEventService.highlightModeSubject | async\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"highlightTextBtn_label\">{{ \"Highlight text\" | rpxTranslate }}</span>\n </button>\n\n <button\n id=\"mvHighlightFromSearchBtn\"\n [attr.data-tooltip]=\"'From search' | rpxTranslate\"\n data-l10n-id=\"fromSearchButton\"\n class=\"mv-button redaction-button--search mv-tooltip\"\n (click)=\"onAllSearch()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span style=\"width: 5rem\" data-l10n-id=\"fromSearchButton_label\"\n >{{ \"From search\" | rpxTranslate }}</span\n >\n </button>\n\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button redaction-button--close mv-tooltip\"\n [attr.data-tooltip]=\"'Close highlight' | rpxTranslate\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"onClose()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"Close Redaction\">{{ \"Close Highlight\" | rpxTranslate }}</span>\n </button>\n</div>\n" }]
|
|
45
|
-
}], ctorParameters: () => [{ type: i1.ToolbarEventService }, { type: i2.ToolbarButtonVisibilityService }]
|
|
46
|
-
|
|
66
|
+
args: [{ selector: 'mv-highlight-toolbar', template: "<div class=\"redaction\" [mvKeyboardNav]=\"'horizontal'\">\n <label class=\"govuk-label redaction-title\" data-l10n-id=\"redaction_options\"\n >{{ \"Highlight options\" | rpxTranslate }}</label\n >\n\n <button\n id=\"mvDrawBtn\"\n #mvDrawBtn\n class=\"mv-button mv-toolbar__menu-button--draw mv-tooltip\"\n [attr.data-tooltip]=\"'Draw a box' | rpxTranslate\"\n [class.toggled]=\"toolbarEventService.drawModeSubject | async\"\n aria-pressed=\"false\"\n data-l10n-id=\"mvDrawBtn\"\n (click)=\"onClickDrawToggle()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"draw_label\">{{ \"Draw a box\" | rpxTranslate }}</span>\n </button>\n\n <button\n id=\"highlightTextBtn\"\n class=\"mv-button mv-toolbar__menu-button--highlight mv-tooltip\"\n [attr.data-tooltip]=\"'Highlight text' | rpxTranslate\"\n data-l10n-id=\"highlightTextBtn\"\n (click)=\"onHighlight()\"\n [class.toggled]=\"toolbarEventService.highlightModeSubject | async\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"highlightTextBtn_label\">{{ \"Highlight text\" | rpxTranslate }}</span>\n </button>\n\n <button\n id=\"mvHighlightFromSearchBtn\"\n [attr.data-tooltip]=\"'From search' | rpxTranslate\"\n data-l10n-id=\"fromSearchButton\"\n class=\"mv-button redaction-button--search mv-tooltip\"\n (click)=\"onAllSearch()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span style=\"width: 5rem\" data-l10n-id=\"fromSearchButton_label\"\n >{{ \"From search\" | rpxTranslate }}</span\n >\n </button>\n\n <button\n id=\"mvCloseBtn\"\n #mvCloseBtn\n class=\"mv-button redaction-button--close mv-tooltip\"\n [attr.data-tooltip]=\"'Close highlight' | rpxTranslate\"\n data-l10n-id=\"mvRedactBtn\"\n (click)=\"onClose()\"\n [disabled]=\"redactionAllInProgress\"\n >\n <span data-l10n-id=\"Close Redaction\">{{ \"Close Highlight\" | rpxTranslate }}</span>\n </button>\n</div>\n" }]
|
|
67
|
+
}], ctorParameters: () => [{ type: i1.ToolbarEventService }, { type: i2.ToolbarButtonVisibilityService }, { type: i3.ToolbarFocusService }], propDecorators: { onEscapeKey: [{
|
|
68
|
+
type: HostListener,
|
|
69
|
+
args: ['keydown.escape', ['$event']]
|
|
70
|
+
}], onArrowUp: [{
|
|
71
|
+
type: HostListener,
|
|
72
|
+
args: ['keydown.arrowup', ['$event']]
|
|
73
|
+
}] } });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvdG9vbGJhci9oaWdobGlnaHQtdG9vbGJhci9oaWdobGlnaHQtdG9vbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYS12aWV3ZXIvc3JjL2xpYi90b29sYmFyL2hpZ2hsaWdodC10b29sYmFyL2hpZ2hsaWdodC10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQWMsVUFBVSxFQUF1QixNQUFNLDBCQUEwQixDQUFDOzs7Ozs7Ozs7QUFhdkYsTUFBTSxPQUFPLHlCQUF5QjtJQUtwQyxZQUE0QixtQkFBd0MsRUFDbEQsY0FBOEMsRUFDN0MsbUJBQXdDO1FBRi9CLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDbEQsbUJBQWMsR0FBZCxjQUFjLENBQWdDO1FBQzdDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFMbkQsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO0lBTXZDLENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLDBCQUEwQixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUNqRyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsVUFBVSxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsVUFBVSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFnQixDQUFDLENBQUM7SUFDcEgsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsbUJBQW1CLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLG1CQUFtQixDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsbUJBQW1CLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsVUFBVSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFnQixDQUFDLENBQUM7SUFDckgsQ0FBQztJQUdELFdBQVcsQ0FBQyxLQUFvQjtRQUM5QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFHRCxTQUFTLENBQUMsS0FBb0I7UUFDNUIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7UUFDM0MsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3RELElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztRQUNsQyxDQUFDO0lBQ0gsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU8sd0JBQXdCO1FBQzVCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxXQUFXO1FBQ1QsS0FBSyxNQUFNLFlBQVksSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDOUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdCLENBQUM7SUFDSCxDQUFDO2tJQS9EVSx5QkFBeUI7c0hBQXpCLHlCQUF5QixzS0NkdEMsMDhEQXdEQTs7NEZEMUNhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSxzQkFBc0I7dUtBdUNoQyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBUTFDLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxpQkFBaUIsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2VhcmNoTW9kZSwgU2VhcmNoVHlwZSwgVG9vbGJhckV2ZW50U2VydmljZSB9IGZyb20gJy4uL3Rvb2xiYXItZXZlbnQuc2VydmljZSc7XG5pbXBvcnQgeyBUb29sYmFyQnV0dG9uVmlzaWJpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi90b29sYmFyLWJ1dHRvbi12aXNpYmlsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgVG9vbGJhckZvY3VzU2VydmljZSB9IGZyb20gJy4uL3Rvb2xiYXItZm9jdXMuc2VydmljZSc7XG5pbXBvcnQgKiBhcyBmcm9tU3RvcmUgZnJvbSAnLi4vLi4vc3RvcmUvcmVkdWNlcnMvcmVkdWNlcnMnO1xuaW1wb3J0IHsgU3RvcmUsIHNlbGVjdCB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0ICogYXMgZnJvbVJlZGFjdFNlbGVjdG9ycyBmcm9tICcuLi8uLi9zdG9yZS9zZWxlY3RvcnMvcmVkYWN0aW9uLnNlbGVjdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ212LWhpZ2hsaWdodC10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hpZ2hsaWdodC10b29sYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGlnaGxpZ2h0LXRvb2xiYXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBIaWdobGlnaHRUb29sYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgcmVkYWN0aW9uQWxsSW5Qcm9ncmVzczogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckV2ZW50U2VydmljZTogVG9vbGJhckV2ZW50U2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG9vbGJhckJ1dHRvbnM6IFRvb2xiYXJCdXR0b25WaXNpYmlsaXR5U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRvb2xiYXJGb2N1c1NlcnZpY2U6IFRvb2xiYXJGb2N1c1NlcnZpY2VcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaCh0aGlzLnRvb2xiYXJFdmVudFNlcnZpY2UucmVkYWN0QWxsSW5Qcm9ncmVzc1N1YmplY3Quc3Vic2NyaWJlKGlucHJvZ3Jlc3MgPT4ge1xuICAgICAgdGhpcy5yZWRhY3Rpb25BbGxJblByb2dyZXNzID0gaW5wcm9ncmVzcztcbiAgICB9KSk7XG4gIH1cblxuICBvbkFsbFNlYXJjaCgpIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudFNlcnZpY2Uub3BlblJlZGFjdGlvblNlYXJjaC5uZXh0KHsgbW9kZVR5cGU6IFNlYXJjaFR5cGUuSGlnaGxpZ2h0LCBpc09wZW46IHRydWUgfSBhcyBTZWFyY2hNb2RlKTtcbiAgfVxuXG4gIG9uSGlnaGxpZ2h0KCkge1xuICAgIHRoaXMudG9vbGJhckV2ZW50U2VydmljZS50b2dnbGVIaWdobGlnaHRNb2RlKCk7XG4gIH1cblxuICBvbkNsaWNrRHJhd1RvZ2dsZSgpIHtcbiAgICB0aGlzLnRvb2xiYXJFdmVudFNlcnZpY2UudG9nZ2xlRHJhd01vZGUoKTtcbiAgfVxuXG4gIG9uQ2xvc2UoKSB7XG4gICAgdGhpcy50b29sYmFyRXZlbnRTZXJ2aWNlLmhpZ2hsaWdodFRvb2xiYXJTdWJqZWN0Lm5leHQoZmFsc2UpO1xuICAgIHRoaXMudG9vbGJhckV2ZW50U2VydmljZS5oaWdobGlnaHRNb2RlU3ViamVjdC5uZXh0KGZhbHNlKTtcbiAgICB0aGlzLnRvb2xiYXJFdmVudFNlcnZpY2Uub3BlblJlZGFjdGlvblNlYXJjaC5uZXh0KHsgbW9kZVR5cGU6IFNlYXJjaFR5cGUuSGlnaGxpZ2h0LCBpc09wZW46IGZhbHNlIH0gYXMgU2VhcmNoTW9kZSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pXG4gIG9uRXNjYXBlS2V5KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmNsb3NlQW5kUmV0dXJuRm9jdXMoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uYXJyb3d1cCcsIFsnJGV2ZW50J10pXG4gIG9uQXJyb3dVcChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICBjb25zdCBoaWdobGlnaHRUb29sYmFyID0gdGFyZ2V0LmNsb3Nlc3QoJy5yZWRhY3Rpb24nKTtcbiAgICBpZiAoaGlnaGxpZ2h0VG9vbGJhcikge1xuICAgICAgdGhpcy5yZXR1cm5Gb2N1c1RvTWFpblRvb2xiYXIoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNsb3NlQW5kUmV0dXJuRm9jdXMoKSB7XG4gICAgdGhpcy5vbkNsb3NlKCk7XG4gICAgdGhpcy5yZXR1cm5Gb2N1c1RvTWFpblRvb2xiYXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmV0dXJuRm9jdXNUb01haW5Ub29sYmFyKCkge1xuICAgICAgdGhpcy50b29sYmFyRm9jdXNTZXJ2aWNlLmZvY3VzVG9vbGJhckJ1dHRvbignI212SGlnaGxpZ2h0QnRuJyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHN1YnNjcmlwdGlvbiBvZiB0aGlzLnN1YnNjcmlwdGlvbnMpIHtcbiAgICAgIHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwicmVkYWN0aW9uXCIgW212S2V5Ym9hcmROYXZdPVwiJ2hvcml6b250YWwnXCI+XG4gIDxsYWJlbCBjbGFzcz1cImdvdnVrLWxhYmVsIHJlZGFjdGlvbi10aXRsZVwiIGRhdGEtbDEwbi1pZD1cInJlZGFjdGlvbl9vcHRpb25zXCJcbiAgICA+e3sgXCJIaWdobGlnaHQgb3B0aW9uc1wiIHwgcnB4VHJhbnNsYXRlIH19PC9sYWJlbFxuICA+XG5cbiAgPGJ1dHRvblxuICAgIGlkPVwibXZEcmF3QnRuXCJcbiAgICAjbXZEcmF3QnRuXG4gICAgY2xhc3M9XCJtdi1idXR0b24gbXYtdG9vbGJhcl9fbWVudS1idXR0b24tLWRyYXcgbXYtdG9vbHRpcFwiXG4gICAgW2F0dHIuZGF0YS10b29sdGlwXT1cIidEcmF3IGEgYm94JyB8IHJweFRyYW5zbGF0ZVwiXG4gICAgW2NsYXNzLnRvZ2dsZWRdPVwidG9vbGJhckV2ZW50U2VydmljZS5kcmF3TW9kZVN1YmplY3QgfCBhc3luY1wiXG4gICAgYXJpYS1wcmVzc2VkPVwiZmFsc2VcIlxuICAgIGRhdGEtbDEwbi1pZD1cIm12RHJhd0J0blwiXG4gICAgKGNsaWNrKT1cIm9uQ2xpY2tEcmF3VG9nZ2xlKClcIlxuICAgIFtkaXNhYmxlZF09XCJyZWRhY3Rpb25BbGxJblByb2dyZXNzXCJcbiAgPlxuICAgIDxzcGFuIGRhdGEtbDEwbi1pZD1cImRyYXdfbGFiZWxcIj57eyBcIkRyYXcgYSBib3hcIiB8IHJweFRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgPC9idXR0b24+XG5cbiAgPGJ1dHRvblxuICAgIGlkPVwiaGlnaGxpZ2h0VGV4dEJ0blwiXG4gICAgY2xhc3M9XCJtdi1idXR0b24gbXYtdG9vbGJhcl9fbWVudS1idXR0b24tLWhpZ2hsaWdodCBtdi10b29sdGlwXCJcbiAgICBbYXR0ci5kYXRhLXRvb2x0aXBdPVwiJ0hpZ2hsaWdodCB0ZXh0JyB8IHJweFRyYW5zbGF0ZVwiXG4gICAgZGF0YS1sMTBuLWlkPVwiaGlnaGxpZ2h0VGV4dEJ0blwiXG4gICAgKGNsaWNrKT1cIm9uSGlnaGxpZ2h0KClcIlxuICAgIFtjbGFzcy50b2dnbGVkXT1cInRvb2xiYXJFdmVudFNlcnZpY2UuaGlnaGxpZ2h0TW9kZVN1YmplY3QgfCBhc3luY1wiXG4gICAgW2Rpc2FibGVkXT1cInJlZGFjdGlvbkFsbEluUHJvZ3Jlc3NcIlxuICA+XG4gICAgPHNwYW4gZGF0YS1sMTBuLWlkPVwiaGlnaGxpZ2h0VGV4dEJ0bl9sYWJlbFwiPnt7IFwiSGlnaGxpZ2h0IHRleHRcIiB8IHJweFRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgPC9idXR0b24+XG5cbiAgPGJ1dHRvblxuICAgIGlkPVwibXZIaWdobGlnaHRGcm9tU2VhcmNoQnRuXCJcbiAgICBbYXR0ci5kYXRhLXRvb2x0aXBdPVwiJ0Zyb20gc2VhcmNoJyB8IHJweFRyYW5zbGF0ZVwiXG4gICAgZGF0YS1sMTBuLWlkPVwiZnJvbVNlYXJjaEJ1dHRvblwiXG4gICAgY2xhc3M9XCJtdi1idXR0b24gcmVkYWN0aW9uLWJ1dHRvbi0tc2VhcmNoIG12LXRvb2x0aXBcIlxuICAgIChjbGljayk9XCJvbkFsbFNlYXJjaCgpXCJcbiAgICBbZGlzYWJsZWRdPVwicmVkYWN0aW9uQWxsSW5Qcm9ncmVzc1wiXG4gID5cbiAgICA8c3BhbiBzdHlsZT1cIndpZHRoOiA1cmVtXCIgZGF0YS1sMTBuLWlkPVwiZnJvbVNlYXJjaEJ1dHRvbl9sYWJlbFwiXG4gICAgICA+e3sgXCJGcm9tIHNlYXJjaFwiIHwgcnB4VHJhbnNsYXRlIH19PC9zcGFuXG4gICAgPlxuICA8L2J1dHRvbj5cblxuICA8YnV0dG9uXG4gICAgaWQ9XCJtdkNsb3NlQnRuXCJcbiAgICAjbXZDbG9zZUJ0blxuICAgIGNsYXNzPVwibXYtYnV0dG9uIHJlZGFjdGlvbi1idXR0b24tLWNsb3NlIG12LXRvb2x0aXBcIlxuICAgIFthdHRyLmRhdGEtdG9vbHRpcF09XCInQ2xvc2UgaGlnaGxpZ2h0JyB8IHJweFRyYW5zbGF0ZVwiXG4gICAgZGF0YS1sMTBuLWlkPVwibXZSZWRhY3RCdG5cIlxuICAgIChjbGljayk9XCJvbkNsb3NlKClcIlxuICAgIFtkaXNhYmxlZF09XCJyZWRhY3Rpb25BbGxJblByb2dyZXNzXCJcbiAgPlxuICAgIDxzcGFuIGRhdGEtbDEwbi1pZD1cIkNsb3NlIFJlZGFjdGlvblwiPnt7IFwiQ2xvc2UgSGlnaGxpZ2h0XCIgfCBycHhUcmFuc2xhdGUgfX08L3NwYW4+XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
|