@pepperi/lib
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.0.1.
333 lines • 48 kB
JavaScript
import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy } from '@angular/core';
import { LAYOUT_TYPE, CustomizationService } from '@pepperi/lib';
import * as $ from 'jquery';
import * as i0 from "@angular/core";
import * as i1 from "@ngx-translate/core";
import * as i2 from "@pepperi/lib/dialog";
import * as i3 from "@pepperi/lib";
import * as i4 from "@angular/forms";
import * as i5 from "@angular/common";
import * as i6 from "@pepperi/lib/field-title";
import * as i7 from "@pepperi/lib/files-uploader";
import * as i8 from "@angular/material/icon";
import * as i9 from "@pepperi/lib/icon";
const _c0 = function (a0) { return { "one-row": a0 }; };
function PepperiImageComponent_ng_container_1_ng_container_2_Template(rf, ctx) { if (rf & 1) {
const _r8 = i0.ɵɵgetCurrentView();
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "div", 2);
i0.ɵɵelement(2, "pep-field-title", 3);
i0.ɵɵelementStart(3, "files-uploader", 4);
i0.ɵɵlistener("fileChanged", function PepperiImageComponent_ng_container_1_ng_container_2_Template_files_uploader_fileChanged_3_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(2); return ctx_r7.onFileChanged($event); })("elementClicked", function PepperiImageComponent_ng_container_1_ng_container_2_Template_files_uploader_elementClicked_3_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r9 = i0.ɵɵnextContext(2); return ctx_r9.onFileClicked($event); });
i0.ɵɵelementEnd();
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r1 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(20, _c0, ctx_r1.rowSpan == 1));
i0.ɵɵadvance(1);
i0.ɵɵproperty("label", ctx_r1.label)("required", ctx_r1.required)("disabled", ctx_r1.disabled)("xAlignment", ctx_r1.xAlignment)("showTitle", ctx_r1.showTitle);
i0.ɵɵadvance(1);
i0.ɵɵproperty("id", ctx_r1.key)("key", ctx_r1.key)("layoutType", ctx_r1.layoutType)("standAlone", ctx_r1.standAlone)("src", ctx_r1.srcLarge || ctx_r1.src)("label", ctx_r1.label)("required", ctx_r1.required)("disabled", ctx_r1.disabled)("xAlignment", ctx_r1.xAlignment)("rowSpan", ctx_r1.rowSpan)("controlType", ctx_r1.controlType)("form", ctx_r1.form)("acceptedExtensions", ctx_r1.acceptImagesType)("sizeLimitMB", ctx_r1.sizeLimitMB);
} }
const _c1 = function (a0, a1, a2) { return { "left-alignment": a0, "right-alignment": a1, "center-alignment": a2 }; };
function PepperiImageComponent_ng_container_1_ng_container_3_Template(rf, ctx) { if (rf & 1) {
const _r11 = i0.ɵɵgetCurrentView();
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "div", 5);
i0.ɵɵelementStart(2, "img", 6);
i0.ɵɵlistener("click", function PepperiImageComponent_ng_container_1_ng_container_3_Template_img_click_2_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r10 = i0.ɵɵnextContext(2); return ctx_r10.itemImageClick($event); })("error", function PepperiImageComponent_ng_container_1_ng_container_3_Template_img_error_2_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r12 = i0.ɵɵnextContext(2); return ctx_r12.errorHandler($event); });
i0.ɵɵelementEnd();
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction3(6, _c1, ctx_r2.xAlignment == "1" || ctx_r2.xAlignment == "0", ctx_r2.xAlignment == "2", ctx_r2.xAlignment == "3"));
i0.ɵɵadvance(1);
i0.ɵɵstyleProp("max-height", ctx_r2.fieldHeight);
i0.ɵɵproperty("id", ctx_r2.key)("alt", ctx_r2.label)("src", ctx_r2.src, i0.ɵɵsanitizeUrl);
} }
const _c2 = function (a0) { return [a0]; };
function PepperiImageComponent_ng_container_1_ng_container_4_Template(rf, ctx) { if (rf & 1) {
const _r14 = i0.ɵɵgetCurrentView();
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "div", 5);
i0.ɵɵelementStart(2, "img", 7);
i0.ɵɵlistener("click", function PepperiImageComponent_ng_container_1_ng_container_4_Template_img_click_2_listener($event) { i0.ɵɵrestoreView(_r14); const ctx_r13 = i0.ɵɵnextContext(2); return ctx_r13.itemImageClick($event); })("error", function PepperiImageComponent_ng_container_1_ng_container_4_Template_img_error_2_listener($event) { i0.ɵɵrestoreView(_r14); const ctx_r15 = i0.ɵɵnextContext(2); return ctx_r15.errorHandler($event); })("load", function PepperiImageComponent_ng_container_1_ng_container_4_Template_img_load_2_listener($event) { i0.ɵɵrestoreView(_r14); const ctx_r16 = i0.ɵɵnextContext(2); return ctx_r16.setTitle($event); });
i0.ɵɵelementEnd();
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r3 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction3(7, _c1, ctx_r3.xAlignment == "1" || ctx_r3.xAlignment == "0", ctx_r3.xAlignment == "2", ctx_r3.xAlignment == "3"));
i0.ɵɵadvance(1);
i0.ɵɵstyleProp("max-height", ctx_r3.fieldHeight);
i0.ɵɵproperty("id", ctx_r3.key)("ngClass", i0.ɵɵpureFunction1(11, _c2, "text-align-" + ctx_r3.xAlignment))("alt", ctx_r3.label)("src", ctx_r3.src, i0.ɵɵsanitizeUrl);
} }
const _c3 = function (a0, a1, a2, a3) { return { bottom: a0, top: a1, left: a2, right: a3 }; };
function PepperiImageComponent_ng_container_1_ng_container_5_Template(rf, ctx) { if (rf & 1) {
const _r18 = i0.ɵɵgetCurrentView();
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "button", 8);
i0.ɵɵlistener("click", function PepperiImageComponent_ng_container_1_ng_container_5_Template_button_click_1_listener($event) { i0.ɵɵrestoreView(_r18); const ctx_r17 = i0.ɵɵnextContext(2); return ctx_r17.enterChildren($event); });
i0.ɵɵelementStart(2, "mat-icon");
i0.ɵɵelement(3, "pep-icon", 9);
i0.ɵɵelementEnd();
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r4 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵproperty("id", ctx_r4.key)("ngClass", i0.ɵɵpureFunction4(2, _c3, (ctx_r4.menuField == null ? null : ctx_r4.menuField.Layout == null ? null : ctx_r4.menuField.Layout.YAlignment) == "2", (ctx_r4.menuField == null ? null : ctx_r4.menuField.Layout == null ? null : ctx_r4.menuField.Layout.YAlignment) == "1", (ctx_r4.menuField == null ? null : ctx_r4.menuField.Layout == null ? null : ctx_r4.menuField.Layout.XAlignment) == "1", (ctx_r4.menuField == null ? null : ctx_r4.menuField.Layout == null ? null : ctx_r4.menuField.Layout.XAlignment) == "2"));
} }
function PepperiImageComponent_ng_container_1_ng_container_6_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "span", 10);
i0.ɵɵelementStart(2, "mat-icon", 11);
i0.ɵɵelement(3, "pep-icon", 12);
i0.ɵɵelementEnd();
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r5 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵpropertyInterpolate("title", ctx_r5.hasCampaignField == null ? null : ctx_r5.hasCampaignField.FormattedValue);
i0.ɵɵproperty("id", ctx_r5.key)("ngClass", i0.ɵɵpureFunction4(3, _c3, (ctx_r5.hasCampaignField == null ? null : ctx_r5.hasCampaignField.Layout == null ? null : ctx_r5.hasCampaignField.Layout.YAlignment) == "2", (ctx_r5.hasCampaignField == null ? null : ctx_r5.hasCampaignField.Layout == null ? null : ctx_r5.hasCampaignField.Layout.YAlignment) == "1", (ctx_r5.hasCampaignField == null ? null : ctx_r5.hasCampaignField.Layout == null ? null : ctx_r5.hasCampaignField.Layout.XAlignment) == "1", (ctx_r5.hasCampaignField == null ? null : ctx_r5.hasCampaignField.Layout == null ? null : ctx_r5.hasCampaignField.Layout.XAlignment) == "2"));
} }
function PepperiImageComponent_ng_container_1_ng_container_7_ng_container_3_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelement(1, "pep-icon", 15);
i0.ɵɵelementContainerEnd();
} }
function PepperiImageComponent_ng_container_1_ng_container_7_ng_container_4_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelement(1, "pep-icon", 16);
i0.ɵɵelementContainerEnd();
} }
function PepperiImageComponent_ng_container_1_ng_container_7_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "span", 13);
i0.ɵɵelementStart(2, "mat-icon");
i0.ɵɵtemplate(3, PepperiImageComponent_ng_container_1_ng_container_7_ng_container_3_Template, 2, 0, "ng-container", 14);
i0.ɵɵtemplate(4, PepperiImageComponent_ng_container_1_ng_container_7_ng_container_4_Template, 2, 0, "ng-container", 1);
i0.ɵɵelementEnd();
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r6 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵproperty("id", ctx_r6.key)("ngClass", i0.ɵɵpureFunction4(4, _c3, (ctx_r6.indicatorsField == null ? null : ctx_r6.indicatorsField.Layout == null ? null : ctx_r6.indicatorsField.Layout.YAlignment) == "2", (ctx_r6.indicatorsField == null ? null : ctx_r6.indicatorsField.Layout == null ? null : ctx_r6.indicatorsField.Layout.YAlignment) == "1", (ctx_r6.indicatorsField == null ? null : ctx_r6.indicatorsField.Layout == null ? null : ctx_r6.indicatorsField.Layout.XAlignment) == "1", (ctx_r6.indicatorsField == null ? null : ctx_r6.indicatorsField.Layout == null ? null : ctx_r6.indicatorsField.Layout.XAlignment) == "2"));
i0.ɵɵadvance(2);
i0.ɵɵproperty("ngForOf", ctx_r6.indicatorsField == null ? null : ctx_r6.indicatorsField.FormattedValue == null ? null : ctx_r6.indicatorsField.FormattedValue.split(";"));
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", (ctx_r6.indicatorsField == null ? null : ctx_r6.indicatorsField.FormattedValue == null ? null : ctx_r6.indicatorsField.FormattedValue.split(";").length) < 4);
} }
function PepperiImageComponent_ng_container_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementContainerStart(1);
i0.ɵɵtemplate(2, PepperiImageComponent_ng_container_1_ng_container_2_Template, 4, 22, "ng-container", 1);
i0.ɵɵtemplate(3, PepperiImageComponent_ng_container_1_ng_container_3_Template, 3, 10, "ng-container", 1);
i0.ɵɵtemplate(4, PepperiImageComponent_ng_container_1_ng_container_4_Template, 3, 13, "ng-container", 1);
i0.ɵɵelementContainerEnd();
i0.ɵɵtemplate(5, PepperiImageComponent_ng_container_1_ng_container_5_Template, 4, 7, "ng-container", 1);
i0.ɵɵtemplate(6, PepperiImageComponent_ng_container_1_ng_container_6_Template, 4, 8, "ng-container", 1);
i0.ɵɵtemplate(7, PepperiImageComponent_ng_container_1_ng_container_7_Template, 5, 9, "ng-container", 1);
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext();
i0.ɵɵadvance(2);
i0.ɵɵproperty("ngIf", ctx_r0.layoutType === ctx_r0.LAYOUT_TYPE.PepperiForm);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx_r0.layoutType === ctx_r0.LAYOUT_TYPE.PepperiCard);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx_r0.layoutType === ctx_r0.LAYOUT_TYPE.PepperiTable);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx_r0.menuField);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx_r0.hasCampaignField && (ctx_r0.hasCampaignField == null ? null : ctx_r0.hasCampaignField.FormattedValue));
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx_r0.indicatorsField && (ctx_r0.indicatorsField == null ? null : ctx_r0.indicatorsField.FormattedValue) != "");
} }
export class PepperiImageComponent {
constructor(translate, dialogService, customizationService, fileService, renderer, element) {
this.translate = translate;
this.dialogService = dialogService;
this.customizationService = customizationService;
this.fileService = fileService;
this.renderer = renderer;
this.element = element;
this.key = '';
this.srcLarge = '';
this.src = '';
this.options = null;
this.label = '';
this.type = 'image';
this.required = false;
this.disabled = false;
this.readonly = false;
this.xAlignment = '0';
this.rowSpan = 1;
this.indicatorsField = null;
this.menuField = null;
this.hasCampaignField = null;
this.controlType = 'image';
this.form = null;
this.objectId = null;
this.showTitle = true;
this.layoutType = LAYOUT_TYPE.PepperiForm;
this.isActive = false;
this.sizeLimitMB = 5;
this.acceptImagesType = 'bmp,jpg,jpeg,png,gif'; // "image/bmp, image/jpg, image/jpeg, image/png, image/tif, image/tiff";
this.valueChanged = new EventEmitter();
this.elementClicked = new EventEmitter();
this.LAYOUT_TYPE = LAYOUT_TYPE;
this.fieldHeight = '';
this.standAlone = false;
this.dataURI = null;
}
ngOnInit() {
if (this.form === null) {
this.standAlone = true;
this.form = this.customizationService.getDefaultFromGroup(this.key, this.src, this.required, this.readonly, this.disabled);
this.renderer.addClass(this.element.nativeElement, CustomizationService.STAND_ALONE_FIELD_CLASS_NAME);
}
this.fieldHeight = this.customizationService.calculateFieldHeight(this.layoutType, this.rowSpan, this.standAlone);
}
ngOnChanges(changes) {
var _a, _b;
if (((_b = (_a = changes.src) === null || _a === void 0 ? void 0 : _a.currentValue) === null || _b === void 0 ? void 0 : _b.length) > 0) {
// Empty dataURI if there is change in the src.
this.dataURI = null;
}
}
ngOnDestroy() {
if (this.elementClicked) {
this.elementClicked.unsubscribe();
}
if (this.valueChanged) {
this.valueChanged.unsubscribe();
}
}
errorHandler(event) {
event.target.src = this.fileService.getNoImagePath();
event.target.title = this.translate.instant('NoImage');
}
setTitle(event) {
event.target.style.visibility = 'visible';
event.target.title = event.target.title.length === 0 ? this.translate.instant('ClickToEnlarge') : event.target.title;
}
enterChildren(event) {
this.elementClicked.emit({ apiName: PepperiImageComponent.ENTER_CHILDREN, eventWhich: event.which });
}
onFileChanged(value) {
this.dataURI = value.length > 0 ? JSON.parse(value) : null;
this.src = this.srcLarge = this.standAlone && this.dataURI ? this.dataURI.fileStr : '';
this.customizationService.updateFormFieldValue(this.form, this.key, this.dataURI ? this.dataURI.fileExt : '');
this.valueChanged.emit({ apiName: this.key, value, controlType: this.controlType });
}
onFileClicked(event) {
let hasParentImage = true;
if (this.objectId && this.src && this.src.indexOf('no-image') > -1) {
hasParentImage = false;
}
this.openImageModal(hasParentImage);
this.elementClicked.emit({ apiName: this.key, eventWhich: event.which });
}
itemImageClick(event) {
let hasParentImage = true;
if (($(event.target).attr('src') && $(event.target).attr('src').indexOf('no-image') > -1) ||
($(event.target).next('img').length && $(event.target).next('img').attr('src').indexOf('no-image') > -1)) {
hasParentImage = false;
}
this.openImageModal(hasParentImage);
}
openImageModal(hasParentImage) {
if (this.dataURI) {
const fileStrArr = this.dataURI.fileStr.split(';');
if (fileStrArr.length === 2) {
const win = window.open('', '_blank');
const contentType = fileStrArr[0].split(':')[1];
const base64 = fileStrArr[1].split(',')[1];
const blob = this.fileService.convertFromb64toBlob(base64, contentType);
const url = URL.createObjectURL(blob);
win.location.href = url;
}
}
else {
// TODO: userService.ShowModalImg
// const dialogRef = this.dialogService.openDialog(
// PepperiImagesFilmstripComponent,
// { currIndex: 0, key: this.key, 'imageData': imgArr, 'inDialog': true, 'showThumbnails': true });
}
}
}
PepperiImageComponent.ENTER_CHILDREN = '[EnterChildren]';
PepperiImageComponent.ɵfac = function PepperiImageComponent_Factory(t) { return new (t || PepperiImageComponent)(i0.ɵɵdirectiveInject(i1.TranslateService), i0.ɵɵdirectiveInject(i2.DialogService), i0.ɵɵdirectiveInject(i3.CustomizationService), i0.ɵɵdirectiveInject(i3.FileService), i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ElementRef)); };
PepperiImageComponent.ɵcmp = i0.ɵɵdefineComponent({ type: PepperiImageComponent, selectors: [["pep-image"]], inputs: { key: "key", srcLarge: "srcLarge", src: "src", options: "options", label: "label", type: "type", required: "required", disabled: "disabled", readonly: "readonly", xAlignment: "xAlignment", rowSpan: "rowSpan", indicatorsField: "indicatorsField", menuField: "menuField", hasCampaignField: "hasCampaignField", form: "form", objectId: "objectId", showTitle: "showTitle", layoutType: "layoutType", isActive: "isActive", sizeLimitMB: "sizeLimitMB", acceptImagesType: "acceptImagesType" }, outputs: { valueChanged: "valueChanged", elementClicked: "elementClicked" }, features: [i0.ɵɵNgOnChangesFeature], decls: 2, vars: 2, consts: [[3, "formGroup"], [4, "ngIf"], [1, "pepperi-file-container", "image-container", 3, "ngClass"], [3, "label", "required", "disabled", "xAlignment", "showTitle"], [3, "id", "key", "layoutType", "standAlone", "src", "label", "required", "disabled", "xAlignment", "rowSpan", "controlType", "form", "acceptedExtensions", "sizeLimitMB", "fileChanged", "elementClicked"], [1, "img-wrapper", 3, "ngClass"], [1, "pepperi-report-file", 3, "id", "alt", "src", "click", "error"], [1, "pepperi-report-file", "pepperi-report-img", 3, "id", "ngClass", "alt", "src", "click", "error", "load"], [1, "floating-field", "pepperi-button", "icon-button", "weak", "invert", 3, "id", "ngClass", "click"], ["name", "system_menu"], [1, "campaign", "floating-field", 3, "id", "title", "ngClass"], [1, "has-active-campaign"], ["name", "system_bolt"], [1, "indicators-container", "floating-field", 3, "id", "ngClass"], [4, "ngFor", "ngForOf"], ["name", "indicator_dot_placeholder", "fill", "value", 1, "pull-left", "flip"], ["name", "indicator_dot_placeholder", 1, "pull-left", "flip"]], template: function PepperiImageComponent_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0, 0);
i0.ɵɵtemplate(1, PepperiImageComponent_ng_container_1_Template, 8, 6, "ng-container", 1);
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
i0.ɵɵproperty("formGroup", ctx.form);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx.type !== "images");
} }, directives: [i4.NgControlStatusGroup, i4.FormGroupDirective, i5.NgIf, i5.NgClass, i6.PepperiFieldTitleComponent, i7.FilesUploaderComponent, i8.MatIcon, i9.PepperiIconComponent, i5.NgForOf], styles: ["[_nghost-%COMP%]{display:-ms-grid;display:grid;height:inherit;width:100%}[_nghost-%COMP%] > *[_ngcontent-%COMP%]{-ms-grid-row-align:center;align-self:center}.img-wrapper[_ngcontent-%COMP%]{align-items:center;display:flex;height:100%;max-width:100%}.img-wrapper.left-alignment[_ngcontent-%COMP%]{justify-content:flex-start}.img-wrapper.center-alignment[_ngcontent-%COMP%]{justify-content:center}.img-wrapper.right-alignment[_ngcontent-%COMP%]{justify-content:flex-end}.img-wrapper[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{-o-object-fit:contain;height:100%;max-width:100%;object-fit:contain}.pepperi-file-container[_ngcontent-%COMP%]{height:100%}.pepperi-file-container[_ngcontent-%COMP%] .img-wrapper[_ngcontent-%COMP%]{height:calc(100% - 1.5rem)}.pepperi-file-container[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{cursor:pointer}.indicators-container[_ngcontent-%COMP%]{padding:0!important}.indicators-container[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{height:100%;padding:.4rem;width:100%}.indicators-container[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%] .svg-icon[_ngcontent-%COMP%]{height:.75rem;margin:.05rem;width:.75rem}.floating-field[_ngcontent-%COMP%]{border-radius:var(--pep-border-radius-md,.25rem);cursor:pointer;height:2.5rem;padding:.5rem;position:absolute;width:2.5rem}.top[_ngcontent-%COMP%]{top:0}.bottom[_ngcontent-%COMP%]{bottom:0}.left[_ngcontent-%COMP%]{left:0}.right[_ngcontent-%COMP%]{right:0}"], changeDetection: 0 });
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(PepperiImageComponent, [{
type: Component,
args: [{
selector: 'pep-image',
templateUrl: './image.component.html',
styleUrls: ['./image.component.scss'],
changeDetection: ChangeDetectionStrategy.OnPush
}]
}], function () { return [{ type: i1.TranslateService }, { type: i2.DialogService }, { type: i3.CustomizationService }, { type: i3.FileService }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; }, { key: [{
type: Input
}], srcLarge: [{
type: Input
}], src: [{
type: Input
}], options: [{
type: Input
}], label: [{
type: Input
}], type: [{
type: Input
}], required: [{
type: Input
}], disabled: [{
type: Input
}], readonly: [{
type: Input
}], xAlignment: [{
type: Input
}], rowSpan: [{
type: Input
}], indicatorsField: [{
type: Input
}], menuField: [{
type: Input
}], hasCampaignField: [{
type: Input
}], form: [{
type: Input
}], objectId: [{
type: Input
}], showTitle: [{
type: Input
}], layoutType: [{
type: Input
}], isActive: [{
type: Input
}], sizeLimitMB: [{
type: Input
}], acceptImagesType: [{
type: Input
}], valueChanged: [{
type: Output
}], elementClicked: [{
type: Output
}] }); })();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvcGVwcGVyaS1saWIvaW1hZ2UvaW1hZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvcGVwcGVyaS1saWIvaW1hZ2UvaW1hZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFBcUIsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQ3RDLHVCQUF1QixFQUM3QyxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQWUsV0FBVyxFQUFjLG9CQUFvQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBSTFGLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDOzs7Ozs7Ozs7Ozs7OztJQ0xoQiw2QkFDSTtJQUFBLDhCQUNJO0lBQUEscUNBRWtCO0lBQ2xCLHlDQUtpQjtJQUYyQixxUEFBcUMsOE9BQUE7SUFFakYsaUJBQWlCO0lBQ3JCLGlCQUFNO0lBQ1YsMEJBQWU7OztJQVh5QyxlQUFzQztJQUF0QywwRUFBc0M7SUFDckUsZUFBZTtJQUFmLG9DQUFlLDZCQUFBLDZCQUFBLGlDQUFBLCtCQUFBO0lBR2hCLGVBQVU7SUFBViwrQkFBVSxtQkFBQSxpQ0FBQSxpQ0FBQSxzQ0FBQSx1QkFBQSw2QkFBQSw2QkFBQSxpQ0FBQSwyQkFBQSxtQ0FBQSxxQkFBQSwrQ0FBQSxtQ0FBQTs7Ozs7SUFTbEMsNkJBQ0k7SUFBQSw4QkFFSTtJQUFBLDhCQUVKO0lBRG9CLGtPQUFnQyxtTkFBQTtJQURoRCxpQkFFSjtJQUFBLGlCQUFNO0lBQ1YsMEJBQWU7OztJQUpQLGVBQXFKO0lBQXJKLDhKQUFxSjtJQUNySSxlQUFnQztJQUFoQyxnREFBZ0M7SUFBM0MsK0JBQVUscUJBQUEscUNBQUE7Ozs7O0lBS3ZCLDZCQUNJO0lBQUEsOEJBS0k7SUFBQSw4QkFHSjtJQURRLGtPQUFnQyxtTkFBQSw2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XHJcbiAgICBDb21wb25lbnQsIE9uSW5pdCwgT25DaGFuZ2VzLCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgUmVuZGVyZXIyXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWxlU2VydmljZSwgTEFZT1VUX1RZUEUsIFNUWUxFX1RZUEUsIEN1c3RvbWl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnQHBlcHBlcmkvbGliJztcclxuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ0BwZXBwZXJpL2xpYi9kaWFsb2cnO1xyXG5pbXBvcnQgeyBQZXBwZXJpSW1hZ2VzRmlsbXN0cmlwQ29tcG9uZW50IH0gZnJvbSAnQHBlcHBlcmkvbGliL2ltYWdlcy1maWxtc3RyaXAnO1xyXG5cclxuaW1wb3J0ICogYXMgJCBmcm9tICdqcXVlcnknO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3BlcC1pbWFnZScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW1hZ2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vaW1hZ2UuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZXBwZXJpSW1hZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICAgIHB1YmxpYyBzdGF0aWMgRU5URVJfQ0hJTERSRU4gPSAnW0VudGVyQ2hpbGRyZW5dJztcclxuXHJcbiAgICBASW5wdXQoKSBrZXkgPSAnJztcclxuICAgIEBJbnB1dCgpIHNyY0xhcmdlID0gJyc7XHJcbiAgICBASW5wdXQoKSBzcmMgPSAnJztcclxuICAgIEBJbnB1dCgpIG9wdGlvbnM6IGFueSA9IG51bGw7XHJcbiAgICBASW5wdXQoKSBsYWJlbCA9ICcnO1xyXG4gICAgQElucHV0KCkgdHlwZSA9ICdpbWFnZSc7XHJcbiAgICBASW5wdXQoKSByZXF1aXJlZCA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSB4QWxpZ25tZW50ID0gJzAnO1xyXG4gICAgQElucHV0KCkgcm93U3BhbiA9IDE7XHJcbiAgICBASW5wdXQoKSBpbmRpY2F0b3JzRmllbGQ6IGFueSA9IG51bGw7XHJcbiAgICBASW5wdXQoKSBtZW51RmllbGQ6IGFueSA9IG51bGw7XHJcbiAgICBASW5wdXQoKSBoYXNDYW1wYWlnbkZpZWxkOiBhbnkgPSBudWxsO1xyXG5cclxuICAgIGNvbnRyb2xUeXBlID0gJ2ltYWdlJztcclxuXHJcbiAgICBASW5wdXQoKSBmb3JtOiBGb3JtR3JvdXAgPSBudWxsO1xyXG4gICAgQElucHV0KCkgb2JqZWN0SWQ6IGFueSA9IG51bGw7XHJcbiAgICBASW5wdXQoKSBzaG93VGl0bGUgPSB0cnVlO1xyXG4gICAgQElucHV0KCkgbGF5b3V0VHlwZTogTEFZT1VUX1RZUEUgPSBMQVlPVVRfVFlQRS5QZXBwZXJpRm9ybTtcclxuICAgIEBJbnB1dCgpIGlzQWN0aXZlID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBzaXplTGltaXRNQiA9IDU7XHJcbiAgICBASW5wdXQoKSBhY2NlcHRJbWFnZXNUeXBlID0gJ2JtcCxqcGcsanBlZyxwbmcsZ2lmJzsgLy8gXCJpbWFnZS9ibXAsIGltYWdlL2pwZywgaW1hZ2UvanBlZywgaW1hZ2UvcG5nLCBpbWFnZS90aWYsIGltYWdlL3RpZmZcIjtcclxuXHJcbiAgICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gICAgQE91dHB1dCgpIGVsZW1lbnRDbGlja2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICAgIExBWU9VVF9UWVBFID0gTEFZT1VUX1RZUEU7XHJcbiAgICBmaWVsZEhlaWdodCA9ICcnO1xyXG4gICAgc3RhbmRBbG9uZSA9IGZhbHNlO1xyXG4gICAgZGF0YVVSSSA9IG51bGw7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgY3VzdG9taXphdGlvblNlcnZpY2U6IEN1c3RvbWl6YXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgZmlsZVNlcnZpY2U6IEZpbGVTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgICAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYpIHtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5mb3JtID09PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3RhbmRBbG9uZSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybSA9IHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UuZ2V0RGVmYXVsdEZyb21Hcm91cCh0aGlzLmtleSwgdGhpcy5zcmMsIHRoaXMucmVxdWlyZWQsIHRoaXMucmVhZG9ubHksIHRoaXMuZGlzYWJsZWQpO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgQ3VzdG9taXphdGlvblNlcnZpY2UuU1RBTkRfQUxPTkVfRklFTERfQ0xBU1NfTkFNRSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmZpZWxkSGVpZ2h0ID0gdGhpcy5jdXN0b21pemF0aW9uU2VydmljZS5jYWxjdWxhdGVGaWVsZEhlaWdodCh0aGlzLmxheW91dFR5cGUsIHRoaXMucm93U3BhbiwgdGhpcy5zdGFuZEFsb25lKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICBpZiAoY2hhbmdlcy5zcmM/LmN1cnJlbnRWYWx1ZT8ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAvLyBFbXB0eSBkYXRhVVJJIGlmIHRoZXJlIGlzIGNoYW5nZSBpbiB0aGUgc3JjLlxyXG4gICAgICAgICAgICB0aGlzLmRhdGFVUkkgPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5lbGVtZW50Q2xpY2tlZCkge1xyXG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRDbGlja2VkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy52YWx1ZUNoYW5nZWQpIHtcclxuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZWQudW5zdWJzY3JpYmUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZXJyb3JIYW5kbGVyKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgICAgICBldmVudC50YXJnZXQuc3JjID0gdGhpcy5maWxlU2VydmljZS5nZXROb0ltYWdlUGF0aCgpO1xyXG4gICAgICAgIGV2ZW50LnRhcmdldC50aXRsZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ05vSW1hZ2UnKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRUaXRsZShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICAgICAgZXZlbnQudGFyZ2V0LnN0eWxlLnZpc2liaWxpdHkgPSAndmlzaWJsZSc7XHJcbiAgICAgICAgZXZlbnQudGFyZ2V0LnRpdGxlID0gZXZlbnQudGFyZ2V0LnRpdGxlLmxlbmd0aCA9PT0gMCA/IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0NsaWNrVG9FbmxhcmdlJykgOiBldmVudC50YXJnZXQudGl0bGU7XHJcbiAgICB9XHJcblxyXG4gICAgZW50ZXJDaGlsZHJlbihldmVudDogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5lbGVtZW50Q2xpY2tlZC5lbWl0KHsgYXBpTmFtZTogUGVwcGVyaUltYWdlQ29tcG9uZW50LkVOVEVSX0NISUxEUkVOLCBldmVudFdoaWNoOiBldmVudC53aGljaCB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvbkZpbGVDaGFuZ2VkKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmRhdGFVUkkgPSB2YWx1ZS5sZW5ndGggPiAwID8gSlNPTi5wYXJzZSh2YWx1ZSkgOiBudWxsO1xyXG4gICAgICAgIHRoaXMuc3JjID0gdGhpcy5zcmNMYXJnZSA9IHRoaXMuc3RhbmRBbG9uZSAmJiB0aGlzLmRhdGFVUkkgPyB0aGlzLmRhdGFVUkkuZmlsZVN0ciA6ICcnO1xyXG5cclxuICAgICAgICB0aGlzLmN1c3RvbWl6YXRpb25TZXJ2aWNlLnVwZGF0ZUZvcm1GaWVsZFZhbHVlKHRoaXMuZm9ybSwgdGhpcy5rZXksIHRoaXMuZGF0YVVSSSA/IHRoaXMuZGF0YVVSSS5maWxlRXh0IDogJycpO1xyXG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2VkLmVtaXQoeyBhcGlOYW1lOiB0aGlzLmtleSwgdmFsdWUsIGNvbnRyb2xUeXBlOiB0aGlzLmNvbnRyb2xUeXBlIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG9uRmlsZUNsaWNrZWQoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGxldCBoYXNQYXJlbnRJbWFnZSA9IHRydWU7XHJcbiAgICAgICAgaWYgKHRoaXMub2JqZWN0SWQgJiYgdGhpcy5zcmMgJiYgdGhpcy5zcmMuaW5kZXhPZignbm8taW1hZ2UnKSA+IC0xKSB7XHJcbiAgICAgICAgICAgIGhhc1BhcmVudEltYWdlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLm9wZW5JbWFnZU1vZGFsKGhhc1BhcmVudEltYWdlKTtcclxuICAgICAgICB0aGlzLmVsZW1lbnRDbGlja2VkLmVtaXQoeyBhcGlOYW1lOiB0aGlzLmtleSwgZXZlbnRXaGljaDogZXZlbnQud2hpY2ggfSk7XHJcbiAgICB9XHJcblxyXG4gICAgaXRlbUltYWdlQ2xpY2soZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGxldCBoYXNQYXJlbnRJbWFnZSA9IHRydWU7XHJcbiAgICAgICAgaWYgKCgkKGV2ZW50LnRhcmdldCkuYXR0cignc3JjJykgJiYgJChldmVudC50YXJnZXQpLmF0dHIoJ3NyYycpLmluZGV4T2YoJ25vLWltYWdlJykgPiAtMSkgfHxcclxuICAgICAgICAgICAgKCQoZXZlbnQudGFyZ2V0KS5uZXh0KCdpbWcnKS5sZW5ndGggJiYgJChldmVudC50YXJnZXQpLm5leHQoJ2ltZycpLmF0dHIoJ3NyYycpLmluZGV4T2YoJ25vLWltYWdlJykgPiAtMSkpIHtcclxuICAgICAgICAgICAgaGFzUGFyZW50SW1hZ2UgPSBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMub3BlbkltYWdlTW9kYWwoaGFzUGFyZW50SW1hZ2UpO1xyXG4gICAgfVxyXG5cclxuICAgIG9wZW5JbWFnZU1vZGFsKGhhc1BhcmVudEltYWdlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuZGF0YVVSSSkge1xyXG4gICAgICAgICAgICBjb25zdCBmaWxlU3RyQXJyID0gdGhpcy5kYXRhVVJJLmZpbGVTdHIuc3BsaXQoJzsnKTtcclxuICAgICAgICAgICAgaWYgKGZpbGVTdHJBcnIubGVuZ3RoID09PSAyKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB3aW4gPSB3aW5kb3cub3BlbignJywgJ19ibGFuaycpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY29udGVudFR5cGUgPSBmaWxlU3RyQXJyWzBdLnNwbGl0KCc6JylbMV07XHJcbiAgICAgICAgICAgICAgICBjb25zdCBiYXNlNjQgPSBmaWxlU3RyQXJyWzFdLnNwbGl0KCcsJylbMV07XHJcbiAgICAgICAgICAgICAgICBjb25zdCBibG9iID0gdGhpcy5maWxlU2VydmljZS5jb252ZXJ0RnJvbWI2NHRvQmxvYihiYXNlNjQsIGNvbnRlbnRUeXBlKTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcbiAgICAgICAgICAgICAgICB3aW4ubG9jYXRpb24uaHJlZiA9IHVybDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIFRPRE86IHVzZXJTZXJ2aWNlLlNob3dNb2RhbEltZ1xyXG4gICAgICAgICAgICAvLyBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbkRpYWxvZyhcclxuICAgICAgICAgICAgLy8gICAgIFBlcHBlcmlJbWFnZXNGaWxtc3RyaXBDb21wb25lbnQsXHJcbiAgICAgICAgICAgIC8vICAgICB7IGN1cnJJbmRleDogMCwga2V5OiB0aGlzLmtleSwgJ2ltYWdlRGF0YSc6IGltZ0FyciwgJ2luRGlhbG9nJzogdHJ1ZSwgJ3Nob3dUaHVtYm5haWxzJzogdHJ1ZSB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XHJcbiAgICA8IS0tIGltYWdlIE9SIGF0dGFjaG1lbnQgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidHlwZSAhPT0gJ2ltYWdlcydcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8IS0tIE5ldyBjb2RlIC0tPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGF5b3V0VHlwZSA9PT0gTEFZT1VUX1RZUEUuUGVwcGVyaUZvcm1cIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwZXBwZXJpLWZpbGUtY29udGFpbmVyIGltYWdlLWNvbnRhaW5lclwiIFtuZ0NsYXNzXT1cInsgJ29uZS1yb3cnOiByb3dTcGFuID09IDF9XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBlcC1maWVsZC10aXRsZSBbbGFiZWxdPVwibGFiZWxcIiBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbeEFsaWdubWVudF09XCJ4QWxpZ25tZW50XCIgW3Nob3dUaXRsZV09XCJzaG93VGl0bGVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L3BlcC1maWVsZC10aXRsZT5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlsZXMtdXBsb2FkZXIgW2lkXT1cImtleVwiIFtrZXldPVwia2V5XCIgW2xheW91dFR5cGVdPVwibGF5b3V0VHlwZVwiIFtzdGFuZEFsb25lXT1cInN0YW5kQWxvbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInNyY0xhcmdlIHx8IHNyY1wiIFtsYWJlbF09XCJsYWJlbFwiIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt4QWxpZ25tZW50XT1cInhBbGlnbm1lbnRcIiBbcm93U3Bhbl09XCJyb3dTcGFuXCIgW2NvbnRyb2xUeXBlXT1cImNvbnRyb2xUeXBlXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthY2NlcHRlZEV4dGVuc2lvbnNdPVwiYWNjZXB0SW1hZ2VzVHlwZVwiIChmaWxlQ2hhbmdlZCk9XCJvbkZpbGVDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoZWxlbWVudENsaWNrZWQpPVwib25GaWxlQ2xpY2tlZCgkZXZlbnQpXCIgW3NpemVMaW1pdE1CXT1cInNpemVMaW1pdE1CXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWxlcy11cGxvYWRlcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYXlvdXRUeXBlID09PSBMQVlPVVRfVFlQRS5QZXBwZXJpQ2FyZFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltZy13cmFwcGVyIFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnbGVmdC1hbGlnbm1lbnQnOiB4QWxpZ25tZW50ID09ICcxJyB8fCB4QWxpZ25tZW50ID09ICcwJywgJ3JpZ2h0LWFsaWdubWVudCc6IHhBbGlnbm1lbnQgPT0gJzInLCAnY2VudGVyLWFsaWdubWVudCc6IHhBbGlnbm1lbnQgPT0gJzMnIH1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIFtpZF09XCJrZXlcIiBbc3R5bGUubWF4LWhlaWdodF09XCJmaWVsZEhlaWdodFwiIGNsYXNzPVwicGVwcGVyaS1yZXBvcnQtZmlsZVwiIFthbHRdPVwibGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInNyY1wiIChjbGljayk9XCJpdGVtSW1hZ2VDbGljaygkZXZlbnQpXCIgKGVycm9yKT1cImVycm9ySGFuZGxlcigkZXZlbnQpXCIgLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYXlvdXRUeXBlID09PSBMQVlPVVRfVFlQRS5QZXBwZXJpVGFibGVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWctd3JhcHBlclwiIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2xlZnQtYWxpZ25tZW50JzogeEFsaWdubWVudCA9PSAnMScgfHwgeEFsaWdubWVudCA9PSAnMCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdyaWdodC1hbGlnbm1lbnQnOiB4QWxpZ25tZW50ID09ICcyJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2NlbnRlci1hbGlnbm1lbnQnOiB4QWxpZ25tZW50ID09ICczJ1xyXG4gICAgICAgICAgICAgICAgICAgIH1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIFtpZF09XCJrZXlcIiBbc3R5bGUubWF4LWhlaWdodF09XCJmaWVsZEhlaWdodFwiIGNsYXNzPVwicGVwcGVyaS1yZXBvcnQtZmlsZSBwZXBwZXJpLXJlcG9ydC1pbWdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJbJ3RleHQtYWxpZ24tJyArIHhBbGlnbm1lbnRdXCIgW2FsdF09XCJsYWJlbFwiIFtzcmNdPVwic3JjXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIml0ZW1JbWFnZUNsaWNrKCRldmVudClcIiAoZXJyb3IpPVwiZXJyb3JIYW5kbGVyKCRldmVudClcIiAobG9hZCk9XCJzZXRUaXRsZSgkZXZlbnQpXCIgLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPCEtLSBNZW51IC0tPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtZW51RmllbGRcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBbaWRdPVwia2V5XCIgKGNsaWNrKT1cImVudGVyQ2hpbGRyZW4oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZsb2F0aW5nLWZpZWxkIHBlcHBlcmktYnV0dG9uIGljb24tYnV0dG9uIHdlYWsgaW52ZXJ0XCIgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogbWVudUZpZWxkPy5MYXlvdXQ/LllBbGlnbm1lbnQgPT0gJzInLFxyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogbWVudUZpZWxkPy5MYXlvdXQ/LllBbGlnbm1lbnQgPT0gJzEnLFxyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IG1lbnVGaWVsZD8uTGF5b3V0Py5YQWxpZ25tZW50ID09ICcxJyxcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogbWVudUZpZWxkPy5MYXlvdXQ/LlhBbGlnbm1lbnQgPT0gJzInXHJcbiAgICAgICAgICAgICAgICB9XCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPHBlcC1pY29uIG5hbWU9XCJzeXN0ZW1fbWVudVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvcGVwLWljb24+XHJcbiAgICAgICAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8IS0tIENhbXBhaWduIC0tPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNDYW1wYWlnbkZpZWxkICYmIGhhc0NhbXBhaWduRmllbGQ/LkZvcm1hdHRlZFZhbHVlXCI+XHJcbiAgICAgICAgICAgIDxzcGFuIFtpZF09XCJrZXlcIiBjbGFzcz1cImNhbXBhaWduIGZsb2F0aW5nLWZpZWxkXCIgdGl0bGU9XCJ7eyBoYXNDYW1wYWlnbkZpZWxkPy5Gb3JtYXR0ZWRWYWx1ZSB9fVwiIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IGhhc0NhbXBhaWduRmllbGQ/LkxheW91dD8uWUFsaWdubWVudCA9PSAnMicsXHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBoYXNDYW1wYWlnbkZpZWxkPy5MYXlvdXQ/LllBbGlnbm1lbnQgPT0gJzEnLFxyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGhhc0NhbXBhaWduRmllbGQ/LkxheW91dD8uWEFsaWdubWVudCA9PSAnMScsXHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGhhc0NhbXBhaWduRmllbGQ/LkxheW91dD8uWEFsaWdubWVudCA9PSAnMidcclxuICAgICAgICAgICAgICAgIH1cIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImhhcy1hY3RpdmUtY2FtcGFpZ25cIj5cclxuICAgICAgICAgICAgICAgICAgICA8cGVwLWljb24gbmFtZT1cInN5c3RlbV9ib2x0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9wZXAtaWNvbj5cclxuICAgICAgICAgICAgICAgIDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPCEtLSBJbmRpY2F0b3JzIC0tPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpbmRpY2F0b3JzRmllbGQgJiYgaW5kaWNhdG9yc0ZpZWxkPy5Gb3JtYXR0ZWRWYWx1ZSAhPSAnJ1wiPlxyXG4gICAgICAgICAgICA8c3BhbiBbaWRdPVwia2V5XCIgY2xhc3M9XCJpbmRpY2F0b3JzLWNvbnRhaW5lciBmbG9hdGluZy1maWVsZFwiIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IGluZGljYXRvcnNGaWVsZD8uTGF5b3V0Py5ZQWxpZ25tZW50ID09ICcyJyxcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IGluZGljYXRvcnNGaWVsZD8uTGF5b3V0Py5ZQWxpZ25tZW50ID09ICcxJyxcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBpbmRpY2F0b3JzRmllbGQ/LkxheW91dD8uWEFsaWdubWVudCA9PSAnMScsXHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGluZGljYXRvcnNGaWVsZD8uTGF5b3V0Py5YQWxpZ25tZW50ID09ICcyJ1xyXG4gICAgICAgICAgICAgICAgfVwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHZhbHVlIG9mIGluZGljYXRvcnNGaWVsZD8uRm9ybWF0dGVkVmFsdWU/LnNwbGl0KCc7JylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBlcC1pY29uIGNsYXNzPVwicHVsbC1sZWZ0IGZsaXBcIiBuYW1lPVwiaW5kaWNhdG9yX2RvdF9wbGFjZWhvbGRlclwiIGZpbGw9XCJ2YWx1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3BlcC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpbmRpY2F0b3JzRmllbGQ/LkZvcm1hdHRlZFZhbHVlPy5zcGxpdCgnOycpLmxlbmd0aCA8IDRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBlcC1pY29uIGNsYXNzPVwicHVsbC1sZWZ0IGZsaXBcIiBuYW1lPVwiaW5kaWNhdG9yX2RvdF9wbGFjZWhvbGRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3BlcC1pY29uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=