UNPKG

ngx-extended-pdf-viewer

Version:

Embedding PDF files in your Angular application. Highly configurable viewer including the toolbar, sidebar, and all the features you're used to.

37 lines 14.2 kB
import { Component, Input } from '@angular/core'; import { getVersionSuffix, pdfDefaultOptions } from '../../options/pdf-default-options'; import * as i0 from "@angular/core"; import * as i1 from "../../pdf-notification-service"; import * as i2 from "../pdf-shy-button/pdf-shy-button.component"; import * as i3 from "@angular/common"; import * as i4 from "../../responsive-visibility"; export class PdfStampEditorComponent { constructor(notificationService) { this.notificationService = notificationService; this.show = true; this.isSelected = false; const subscription = this.notificationService.onPDFJSInit.subscribe(() => { this.onPdfJsInit(); subscription.unsubscribe(); }); } get pdfJsVersion() { return getVersionSuffix(pdfDefaultOptions.assetsFolder); } onPdfJsInit() { const PDFViewerApplication = window.PDFViewerApplication; PDFViewerApplication.eventBus.on('annotationeditormodechanged', ({ mode }) => (this.isSelected = mode === 13)); } onClick() { document.getElementById('editorStamp')?.click(); } } PdfStampEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: PdfStampEditorComponent, deps: [{ token: i1.PDFNotificationService }], target: i0.ɵɵFactoryTarget.Component }); PdfStampEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: PdfStampEditorComponent, selector: "pdf-stamp-editor", inputs: { show: "show" }, ngImport: i0, template: "<pdf-shy-button\n title=\"Text\"\n primaryToolbarId=\"primaryEditorStamp\"\n [cssClass]=\"show | responsiveCSSClass : 'hiddenTinyView'\"\n l10nId=\"editor_stamp1\"\n l10nLabel=\"editor_stamp1_label\"\n [order]=\"4200\"\n [action]=\"onClick\"\n [toggled]=\"isSelected\"\n [closeOnClick]=\"true\"\n image=\"<svg style='width: 20px; height: 20px' viewBox='0 0 24 24'> <path fill='currentColor' d='M13 19C13 19.7 13.13 20.37 13.35 21H5C3.9 21 3 20.11 3 19V5C3 3.9 3.9 3 5 3H19C20.11 3 21 3.9 21 5V13.35C20.37 13.13 19.7 13 19 13V5H5V19H13M13.96 12.29L11.21 15.83L9.25 13.47L6.5 17H13.35C13.75 15.88 14.47 14.91 15.4 14.21L13.96 12.29M20 18V15H18V18H15V20H18V23H20V20H23V18H20Z' /> </svg>\"\n>\n</pdf-shy-button>\n<div\n class=\"editorParamsToolbar hidden doorHangerRight\"\n id=\"editorStampParamsToolbar\"\n [class]=\"show | responsiveCSSClass : 'hiddenTinyView'\"\n *ngIf=\"pdfJsVersion >= '3.10'\"\n>\n <div class=\"editorParamsToolbarContainer\">\n <button\n id=\"editorStampAddImage\"\n class=\"secondaryToolbarButton\"\n title=\"Add image\"\n tabindex=\"105\"\n data-l10n-id=\"editor_stamp_add_image\"\n aria-label=\"Add image\"\n >\n <svg role=\"img\" aria-label=\"Add image\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M7.00488 9.75V14C7.00488 14.1658 7.07073 14.3247 7.18794 14.4419C7.30515 14.5592 7.46412 14.625 7.62988 14.625C7.79564 14.625 7.95461 14.5592 8.07183 14.4419C8.18904 14.3247 8.25488 14.1658 8.25488 14V9.75L8.75488 9.25H13.0049C13.1706 9.25 13.3296 9.18415 13.4468 9.06694C13.564 8.94973 13.6299 8.79076 13.6299 8.625C13.6299 8.45924 13.564 8.30027 13.4468 8.18306C13.3296 8.06585 13.1706 8 13.0049 8H8.75488L8.25488 7.5V3.25C8.25488 3.08424 8.18904 2.92527 8.07183 2.80806C7.95461 2.69085 7.79564 2.625 7.62988 2.625C7.46412 2.625 7.30515 2.69085 7.18794 2.80806C7.07073 2.92527 7.00488 3.08424 7.00488 3.25V7.5L6.50488 8H2.25488C2.08912 8 1.93015 8.06585 1.81294 8.18306C1.69573 8.30027 1.62988 8.45924 1.62988 8.625C1.62988 8.79076 1.69573 8.94973 1.81294 9.06694C1.93015 9.18415 2.08912 9.25 2.25488 9.25H6.39188L7.00488 9.75Z\"\n fill=\"black\"\n />\n </svg>\n <span data-l10n-id=\"editor_stamp_add_image_label\">Add image</span>\n </button>\n </div>\n</div>\n", styles: ["button{padding:0;height:25px;background-color:transparent}button:focus{outline:none;border:none}\n"], components: [{ type: i2.PdfShyButtonComponent, selector: "pdf-shy-button", inputs: ["primaryToolbarId", "secondaryMenuId", "cssClass", "eventBusName", "l10nId", "l10nLabel", "title", "toggled", "disabled", "order", "action", "closeOnClick", "onlySecondaryMenu", "image"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "responsiveCSSClass": i4.ResponsiveCSSClassPipe } }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: PdfStampEditorComponent, decorators: [{ type: Component, args: [{ selector: 'pdf-stamp-editor', template: "<pdf-shy-button\n title=\"Text\"\n primaryToolbarId=\"primaryEditorStamp\"\n [cssClass]=\"show | responsiveCSSClass : 'hiddenTinyView'\"\n l10nId=\"editor_stamp1\"\n l10nLabel=\"editor_stamp1_label\"\n [order]=\"4200\"\n [action]=\"onClick\"\n [toggled]=\"isSelected\"\n [closeOnClick]=\"true\"\n image=\"<svg style='width: 20px; height: 20px' viewBox='0 0 24 24'> <path fill='currentColor' d='M13 19C13 19.7 13.13 20.37 13.35 21H5C3.9 21 3 20.11 3 19V5C3 3.9 3.9 3 5 3H19C20.11 3 21 3.9 21 5V13.35C20.37 13.13 19.7 13 19 13V5H5V19H13M13.96 12.29L11.21 15.83L9.25 13.47L6.5 17H13.35C13.75 15.88 14.47 14.91 15.4 14.21L13.96 12.29M20 18V15H18V18H15V20H18V23H20V20H23V18H20Z' /> </svg>\"\n>\n</pdf-shy-button>\n<div\n class=\"editorParamsToolbar hidden doorHangerRight\"\n id=\"editorStampParamsToolbar\"\n [class]=\"show | responsiveCSSClass : 'hiddenTinyView'\"\n *ngIf=\"pdfJsVersion >= '3.10'\"\n>\n <div class=\"editorParamsToolbarContainer\">\n <button\n id=\"editorStampAddImage\"\n class=\"secondaryToolbarButton\"\n title=\"Add image\"\n tabindex=\"105\"\n data-l10n-id=\"editor_stamp_add_image\"\n aria-label=\"Add image\"\n >\n <svg role=\"img\" aria-label=\"Add image\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M7.00488 9.75V14C7.00488 14.1658 7.07073 14.3247 7.18794 14.4419C7.30515 14.5592 7.46412 14.625 7.62988 14.625C7.79564 14.625 7.95461 14.5592 8.07183 14.4419C8.18904 14.3247 8.25488 14.1658 8.25488 14V9.75L8.75488 9.25H13.0049C13.1706 9.25 13.3296 9.18415 13.4468 9.06694C13.564 8.94973 13.6299 8.79076 13.6299 8.625C13.6299 8.45924 13.564 8.30027 13.4468 8.18306C13.3296 8.06585 13.1706 8 13.0049 8H8.75488L8.25488 7.5V3.25C8.25488 3.08424 8.18904 2.92527 8.07183 2.80806C7.95461 2.69085 7.79564 2.625 7.62988 2.625C7.46412 2.625 7.30515 2.69085 7.18794 2.80806C7.07073 2.92527 7.00488 3.08424 7.00488 3.25V7.5L6.50488 8H2.25488C2.08912 8 1.93015 8.06585 1.81294 8.18306C1.69573 8.30027 1.62988 8.45924 1.62988 8.625C1.62988 8.79076 1.69573 8.94973 1.81294 9.06694C1.93015 9.18415 2.08912 9.25 2.25488 9.25H6.39188L7.00488 9.75Z\"\n fill=\"black\"\n />\n </svg>\n <span data-l10n-id=\"editor_stamp_add_image_label\">Add image</span>\n </button>\n </div>\n</div>\n", styles: ["button{padding:0;height:25px;background-color:transparent}button:focus{outline:none;border:none}\n"] }] }], ctorParameters: function () { return [{ type: i1.PDFNotificationService }]; }, propDecorators: { show: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXN0YW1wLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZXh0ZW5kZWQtcGRmLXZpZXdlci9zcmMvbGliL3Rvb2xiYXIvcGRmLXN0YW1wLWVkaXRvci9wZGYtc3RhbXAtZWRpdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1leHRlbmRlZC1wZGYtdmlld2VyL3NyYy9saWIvdG9vbGJhci9wZGYtc3RhbXAtZWRpdG9yL3BkZi1zdGFtcC1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7OztBQVV4RixNQUFNLE9BQU8sdUJBQXVCO0lBVWxDLFlBQW9CLG1CQUEyQztRQUEzQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBUnhELFNBQUksR0FBeUIsSUFBSSxDQUFDO1FBRWxDLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFPeEIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3ZFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBVEQsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQVNPLFdBQVc7UUFDakIsTUFBTSxvQkFBb0IsR0FBMkIsTUFBYyxDQUFDLG9CQUFvQixDQUFDO1FBQ3pGLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsNkJBQTZCLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBMEMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3pKLENBQUM7SUFFTSxPQUFPO1FBQ1osUUFBUSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUNsRCxDQUFDOztvSEF4QlUsdUJBQXVCO3dHQUF2Qix1QkFBdUIsa0ZDWnBDLDJ6RUFzQ0E7MkZEMUJhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxrQkFBa0I7NkdBTXJCLElBQUk7c0JBRFYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFubm90YXRpb25FZGl0b3JFZGl0b3JNb2RlQ2hhbmdlZEV2ZW50IH0gZnJvbSAnLi4vLi4vZXZlbnRzL2Fubm90YXRpb24tZWRpdG9yLW1vZGUtY2hhbmdlZC1ldmVudCc7XG5pbXBvcnQgeyBnZXRWZXJzaW9uU3VmZml4LCBwZGZEZWZhdWx0T3B0aW9ucyB9IGZyb20gJy4uLy4uL29wdGlvbnMvcGRmLWRlZmF1bHQtb3B0aW9ucyc7XG5pbXBvcnQgeyBJUERGVmlld2VyQXBwbGljYXRpb24gfSBmcm9tICcuLi8uLi9vcHRpb25zL3BkZi12aWV3ZXItYXBwbGljYXRpb24nO1xuaW1wb3J0IHsgUERGTm90aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3BkZi1ub3RpZmljYXRpb24tc2VydmljZSc7XG5pbXBvcnQgeyBSZXNwb25zaXZlVmlzaWJpbGl0eSB9IGZyb20gJy4uLy4uL3Jlc3BvbnNpdmUtdmlzaWJpbGl0eSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BkZi1zdGFtcC1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vcGRmLXN0YW1wLWVkaXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BkZi1zdGFtcC1lZGl0b3IuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQZGZTdGFtcEVkaXRvckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93OiBSZXNwb25zaXZlVmlzaWJpbGl0eSA9IHRydWU7XG5cbiAgcHVibGljIGlzU2VsZWN0ZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgZ2V0IHBkZkpzVmVyc2lvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiBnZXRWZXJzaW9uU3VmZml4KHBkZkRlZmF1bHRPcHRpb25zLmFzc2V0c0ZvbGRlcik7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG5vdGlmaWNhdGlvblNlcnZpY2U6IFBERk5vdGlmaWNhdGlvblNlcnZpY2UpIHtcbiAgICBjb25zdCBzdWJzY3JpcHRpb24gPSB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uub25QREZKU0luaXQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMub25QZGZKc0luaXQoKTtcbiAgICAgIHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvblBkZkpzSW5pdCgpIHtcbiAgICBjb25zdCBQREZWaWV3ZXJBcHBsaWNhdGlvbjogSVBERlZpZXdlckFwcGxpY2F0aW9uID0gKHdpbmRvdyBhcyBhbnkpLlBERlZpZXdlckFwcGxpY2F0aW9uO1xuICAgIFBERlZpZXdlckFwcGxpY2F0aW9uLmV2ZW50QnVzLm9uKCdhbm5vdGF0aW9uZWRpdG9ybW9kZWNoYW5nZWQnLCAoeyBtb2RlIH06IEFubm90YXRpb25FZGl0b3JFZGl0b3JNb2RlQ2hhbmdlZEV2ZW50KSA9PiAodGhpcy5pc1NlbGVjdGVkID0gbW9kZSA9PT0gMTMpKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNsaWNrKCk6IHZvaWQge1xuICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlZGl0b3JTdGFtcCcpPy5jbGljaygpO1xuICB9XG59XG4iLCI8cGRmLXNoeS1idXR0b25cbiAgdGl0bGU9XCJUZXh0XCJcbiAgcHJpbWFyeVRvb2xiYXJJZD1cInByaW1hcnlFZGl0b3JTdGFtcFwiXG4gIFtjc3NDbGFzc109XCJzaG93IHwgcmVzcG9uc2l2ZUNTU0NsYXNzIDogJ2hpZGRlblRpbnlWaWV3J1wiXG4gIGwxMG5JZD1cImVkaXRvcl9zdGFtcDFcIlxuICBsMTBuTGFiZWw9XCJlZGl0b3Jfc3RhbXAxX2xhYmVsXCJcbiAgW29yZGVyXT1cIjQyMDBcIlxuICBbYWN0aW9uXT1cIm9uQ2xpY2tcIlxuICBbdG9nZ2xlZF09XCJpc1NlbGVjdGVkXCJcbiAgW2Nsb3NlT25DbGlja109XCJ0cnVlXCJcbiAgaW1hZ2U9XCI8c3ZnIHN0eWxlPSd3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4JyB2aWV3Qm94PScwIDAgMjQgMjQnPiA8cGF0aCBmaWxsPSdjdXJyZW50Q29sb3InIGQ9J00xMyAxOUMxMyAxOS43IDEzLjEzIDIwLjM3IDEzLjM1IDIxSDVDMy45IDIxIDMgMjAuMTEgMyAxOVY1QzMgMy45IDMuOSAzIDUgM0gxOUMyMC4xMSAzIDIxIDMuOSAyMSA1VjEzLjM1QzIwLjM3IDEzLjEzIDE5LjcgMTMgMTkgMTNWNUg1VjE5SDEzTTEzLjk2IDEyLjI5TDExLjIxIDE1LjgzTDkuMjUgMTMuNDdMNi41IDE3SDEzLjM1QzEzLjc1IDE1Ljg4IDE0LjQ3IDE0LjkxIDE1LjQgMTQuMjFMMTMuOTYgMTIuMjlNMjAgMThWMTVIMThWMThIMTVWMjBIMThWMjNIMjBWMjBIMjNWMThIMjBaJyAvPiA8L3N2Zz5cIlxuPlxuPC9wZGYtc2h5LWJ1dHRvbj5cbjxkaXZcbiAgY2xhc3M9XCJlZGl0b3JQYXJhbXNUb29sYmFyIGhpZGRlbiBkb29ySGFuZ2VyUmlnaHRcIlxuICBpZD1cImVkaXRvclN0YW1wUGFyYW1zVG9vbGJhclwiXG4gIFtjbGFzc109XCJzaG93IHwgcmVzcG9uc2l2ZUNTU0NsYXNzIDogJ2hpZGRlblRpbnlWaWV3J1wiXG4gICpuZ0lmPVwicGRmSnNWZXJzaW9uID49ICczLjEwJ1wiXG4+XG4gIDxkaXYgY2xhc3M9XCJlZGl0b3JQYXJhbXNUb29sYmFyQ29udGFpbmVyXCI+XG4gICAgPGJ1dHRvblxuICAgICAgaWQ9XCJlZGl0b3JTdGFtcEFkZEltYWdlXCJcbiAgICAgIGNsYXNzPVwic2Vjb25kYXJ5VG9vbGJhckJ1dHRvblwiXG4gICAgICB0aXRsZT1cIkFkZCBpbWFnZVwiXG4gICAgICB0YWJpbmRleD1cIjEwNVwiXG4gICAgICBkYXRhLWwxMG4taWQ9XCJlZGl0b3Jfc3RhbXBfYWRkX2ltYWdlXCJcbiAgICAgIGFyaWEtbGFiZWw9XCJBZGQgaW1hZ2VcIlxuICAgID5cbiAgICAgIDxzdmcgcm9sZT1cImltZ1wiIGFyaWEtbGFiZWw9XCJBZGQgaW1hZ2VcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk03LjAwNDg4IDkuNzVWMTRDNy4wMDQ4OCAxNC4xNjU4IDcuMDcwNzMgMTQuMzI0NyA3LjE4Nzk0IDE0LjQ0MTlDNy4zMDUxNSAxNC41NTkyIDcuNDY0MTIgMTQuNjI1IDcuNjI5ODggMTQuNjI1QzcuNzk1NjQgMTQuNjI1IDcuOTU0NjEgMTQuNTU5MiA4LjA3MTgzIDE0LjQ0MTlDOC4xODkwNCAxNC4zMjQ3IDguMjU0ODggMTQuMTY1OCA4LjI1NDg4IDE0VjkuNzVMOC43NTQ4OCA5LjI1SDEzLjAwNDlDMTMuMTcwNiA5LjI1IDEzLjMyOTYgOS4xODQxNSAxMy40NDY4IDkuMDY2OTRDMTMuNTY0IDguOTQ5NzMgMTMuNjI5OSA4Ljc5MDc2IDEzLjYyOTkgOC42MjVDMTMuNjI5OSA4LjQ1OTI0IDEzLjU2NCA4LjMwMDI3IDEzLjQ0NjggOC4xODMwNkMxMy4zMjk2IDguMDY1ODUgMTMuMTcwNiA4IDEzLjAwNDkgOEg4Ljc1NDg4TDguMjU0ODggNy41VjMuMjVDOC4yNTQ4OCAzLjA4NDI0IDguMTg5MDQgMi45MjUyNyA4LjA3MTgzIDIuODA4MDZDNy45NTQ2MSAyLjY5MDg1IDcuNzk1NjQgMi42MjUgNy42Mjk4OCAyLjYyNUM3LjQ2NDEyIDIuNjI1IDcuMzA1MTUgMi42OTA4NSA3LjE4Nzk0IDIuODA4MDZDNy4wNzA3MyAyLjkyNTI3IDcuMDA0ODggMy4wODQyNCA3LjAwNDg4IDMuMjVWNy41TDYuNTA0ODggOEgyLjI1NDg4QzIuMDg5MTIgOCAxLjkzMDE1IDguMDY1ODUgMS44MTI5NCA4LjE4MzA2QzEuNjk1NzMgOC4zMDAyNyAxLjYyOTg4IDguNDU5MjQgMS42Mjk4OCA4LjYyNUMxLjYyOTg4IDguNzkwNzYgMS42OTU3MyA4Ljk0OTczIDEuODEyOTQgOS4wNjY5NEMxLjkzMDE1IDkuMTg0MTUgMi4wODkxMiA5LjI1IDIuMjU0ODggOS4yNUg2LjM5MTg4TDcuMDA0ODggOS43NVpcIlxuICAgICAgICAgIGZpbGw9XCJibGFja1wiXG4gICAgICAgIC8+XG4gICAgICA8L3N2Zz5cbiAgICAgIDxzcGFuIGRhdGEtbDEwbi1pZD1cImVkaXRvcl9zdGFtcF9hZGRfaW1hZ2VfbGFiZWxcIj5BZGQgaW1hZ2U8L3NwYW4+XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=