myrta-ui 17.1.61 → 17.1.63

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.
@@ -25,6 +25,7 @@ export class SidePageComponent {
25
25
  okText = 'Подтвердить';
26
26
  closeText = 'Отменить';
27
27
  isLoading = false;
28
+ iconPosition = 'left';
28
29
  // BackArrow
29
30
  isBack = false;
30
31
  backText = 'Назад';
@@ -82,7 +83,7 @@ export class SidePageComponent {
82
83
  }
83
84
  }
84
85
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SidePageComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
85
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SidePageComponent, selector: "mrx-side-page", inputs: { title: "title", tooltip: "tooltip", tooltipMaxWidth: "tooltipMaxWidth", tooltipPosition: "tooltipPosition", isOpen: "isOpen", size: "size", position: "position", customClasses: "customClasses", enableHeader: "enableHeader", enableFooter: "enableFooter", headerSize: "headerSize", paddingTop: "paddingTop", okText: "okText", closeText: "closeText", isLoading: "isLoading", isBack: "isBack", backText: "backText", backRouterLink: "backRouterLink", backQueryParams: "backQueryParams", closeAfterLink: "closeAfterLink", invalid: "invalid", invalidMessage: "invalidMessage" }, outputs: { ok: "ok", close: "close", back: "back" }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ["headerTemplate"], descendants: true }, { propertyName: "footerTemplate", first: true, predicate: ["footerTemplate"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"mrx-side-page-content\"\r\n [class]=\"getClasses\"\r\n [style.top]=\"paddingTop\"\r\n [@animateExpand]=\"isOpen ? 'open' : 'closed'\"\r\n>\r\n @if (enableHeader) {\r\n @if (!headerTemplate) {\r\n <div class=\"mrx-side-page-header brdb\" [class]=\"getHeaderClasses\">\r\n <div class=\"mrx-side-page-header__content\">\r\n @if (isBack) {\r\n <mrx-breadcrumbs\r\n type=\"link\"\r\n customClasses=\"mb-2\"\r\n [item]=\"{\r\n text: backText,\r\n routerLink: backRouterLink,\r\n queryParams: backQueryParams,\r\n isShowArrow: true\r\n }\"\r\n (click)=\"closeModal()\"\r\n ></mrx-breadcrumbs>\r\n }\r\n\r\n <h2 class=\"mrx-side-page-header__content--title\">\r\n @if (title) {\r\n <span>{{ title }}</span>\r\n }\r\n\r\n @if (tooltip) {\r\n <span\r\n class=\"mrx-icon icon-info icon-font-16\"\r\n [mrxCdkTooltip]=\"tooltip\"\r\n [tooltipMaxWidth]=\"tooltipMaxWidth\"\r\n [tooltipPosition]=\"tooltipPosition\"\r\n ></span>\r\n }\r\n </h2>\r\n </div>\r\n\r\n <span class=\"mrx-icon icon-close\" (click)=\"onClose()\"></span>\r\n </div>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\r\n }\r\n }\r\n\r\n <div class=\"mrx-side-page-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n @if (enableFooter) {\r\n <div class=\"mrx-side-page-footer brdt\">\r\n @if (invalidMessage) {\r\n <mrx-error-message [invalid]=\"invalid\">{{ invalidMessage }}</mrx-error-message>\r\n }\r\n\r\n <div class=\"mrx-side-page-footer__controls\">\r\n @if (!footerTemplate) {\r\n <mrx-button\r\n [type]=\"'secondary'\"\r\n [color]=\"'default'\"\r\n [size]=\"'medium'\"\r\n (mrxClick)=\"onClose()\"\r\n >{{ closeText }}\r\n </mrx-button>\r\n\r\n <mrx-button\r\n [type]=\"'primary'\"\r\n [size]=\"'medium'\"\r\n [color]=\"'default'\"\r\n [isLoading]=\"isLoading\"\r\n (mrxClick)=\"onOk()\"\r\n >{{ okText }}\r\n </mrx-button>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n }\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".mrx-side-page-content{display:flex;flex-direction:column;justify-content:space-between;max-width:100%;background-color:var(--brand-bg-tertiary-default, #FFF);box-shadow:0 1px 4px #3a3a3a4d}::ng-deep .mrx-side-page-backdrop.cdk-overlay-backdrop{height:100%;inset:0;overflow-x:hidden;overflow-y:auto;padding:0 16px;position:absolute;text-align:center;z-index:1000;display:block}::ng-deep .mrx-side-page-backdrop.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{background-color:var(--neutral-bg-modal)}.mrx-side-page-content.mrx-side-page--position-right{position:absolute;top:0;right:0;bottom:0}.mrx-side-page-content.mrx-side-page--position-left{position:absolute;top:0;left:0;bottom:0}.mrx-side-page--lg{width:620px}.mrx-side-page--md{width:400px}.mrx-side-page--sm{width:280px}@media (max-width: 576px){.mrx-side-page--lg,.mrx-side-page--md,.mrx-side-page--sm{width:100%}}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm{padding:16px 56px 16px 24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .icon-close{top:calc(50% - 12px);right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm{padding:16px 40px 16px 24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .icon-close{top:calc(50% - 8px);right:16px;font-size:16px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm{padding:16px 40px 16px 24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .icon-close{top:calc(50% - 8px);right:16px;font-size:16px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content .mrx-side-page-header{position:relative;border-top-left-radius:4px;border-top-right-radius:4px}.mrx-side-page-content .mrx-side-page-header__content{display:flex;flex-direction:column;align-items:flex-start;min-height:24px}.mrx-side-page-content .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content .mrx-side-page-header .icon-close{position:absolute;cursor:pointer}.mrx-side-page-content .mrx-side-page-header .icon-close:hover{transform:scale(1.1)}.mrx-side-page-footer{padding:24px;min-height:24px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.mrx-side-page-footer__controls{display:flex;align-items:center;justify-content:flex-start;gap:16px}.mrx-side-page-body{flex-grow:1}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "mrx-button", inputs: ["size", "type", "color", "iconPosition", "active", "disabled", "isLoading", "iconOnly", "customClasses", "label", "icon", "iconClass", "buttonType", "href", "target", "routerLink", "queryParams"], outputs: ["mrxClick"] }, { kind: "component", type: i3.BreadcrumbsComponent, selector: "mrx-breadcrumbs", inputs: ["type", "items", "item", "customClasses"] }, { kind: "directive", type: i4.CdkTooltipDirective, selector: "[mrxCdkTooltip]", inputs: ["mrxCdkTooltip", "tooltipActive", "autoCloseByScroll", "tooltipPosition", "tooltipMaxWidth"] }, { kind: "component", type: i5.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }], animations: [
86
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: SidePageComponent, selector: "mrx-side-page", inputs: { title: "title", tooltip: "tooltip", tooltipMaxWidth: "tooltipMaxWidth", tooltipPosition: "tooltipPosition", isOpen: "isOpen", size: "size", position: "position", customClasses: "customClasses", enableHeader: "enableHeader", enableFooter: "enableFooter", headerSize: "headerSize", paddingTop: "paddingTop", okText: "okText", closeText: "closeText", isLoading: "isLoading", iconPosition: "iconPosition", isBack: "isBack", backText: "backText", backRouterLink: "backRouterLink", backQueryParams: "backQueryParams", closeAfterLink: "closeAfterLink", invalid: "invalid", invalidMessage: "invalidMessage" }, outputs: { ok: "ok", close: "close", back: "back" }, queries: [{ propertyName: "headerTemplate", first: true, predicate: ["headerTemplate"], descendants: true }, { propertyName: "footerTemplate", first: true, predicate: ["footerTemplate"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"mrx-side-page-content\"\r\n [class]=\"getClasses\"\r\n [style.top]=\"paddingTop\"\r\n [@animateExpand]=\"isOpen ? 'open' : 'closed'\"\r\n>\r\n @if (enableHeader) {\r\n @if (!headerTemplate) {\r\n <div class=\"mrx-side-page-header brdb\" [class]=\"getHeaderClasses\">\r\n <div class=\"mrx-side-page-header__content\">\r\n @if (isBack) {\r\n <mrx-breadcrumbs\r\n type=\"link\"\r\n customClasses=\"mb-2\"\r\n [item]=\"{\r\n text: backText,\r\n routerLink: backRouterLink,\r\n queryParams: backQueryParams,\r\n isShowArrow: true\r\n }\"\r\n (click)=\"closeModal()\"\r\n ></mrx-breadcrumbs>\r\n }\r\n\r\n <h2 class=\"mrx-side-page-header__content--title\">\r\n @if (title) {\r\n <span>{{ title }}</span>\r\n }\r\n\r\n @if (tooltip) {\r\n <span\r\n class=\"mrx-icon icon-info icon-font-16\"\r\n [mrxCdkTooltip]=\"tooltip\"\r\n [tooltipMaxWidth]=\"tooltipMaxWidth\"\r\n [tooltipPosition]=\"tooltipPosition\"\r\n ></span>\r\n }\r\n </h2>\r\n </div>\r\n\r\n <span class=\"mrx-icon icon-close\" (click)=\"onClose()\"></span>\r\n </div>\r\n } @else {\r\n <ng-container\r\n [ngTemplateOutlet]=\"headerTemplate\"\r\n [ngTemplateOutletContext]=\"{okFn: onOk, closeFn: onClose}\"\r\n ></ng-container>\r\n }\r\n }\r\n\r\n <div class=\"mrx-side-page-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n @if (enableFooter) {\r\n <div class=\"mrx-side-page-footer brdt\">\r\n @if (invalidMessage) {\r\n <mrx-error-message [invalid]=\"invalid\">{{ invalidMessage }}</mrx-error-message>\r\n }\r\n\r\n <div class=\"mrx-side-page-footer__controls\">\r\n @if (!footerTemplate) {\r\n <mrx-button\r\n [type]=\"'secondary'\"\r\n [color]=\"'default'\"\r\n [size]=\"'medium'\"\r\n (mrxClick)=\"onClose()\"\r\n >\r\n {{ closeText }}\r\n </mrx-button>\r\n\r\n <mrx-button\r\n [type]=\"'primary'\"\r\n [size]=\"'medium'\"\r\n [color]=\"'default'\"\r\n [iconPosition]=\"iconPosition\"\r\n [isLoading]=\"isLoading\"\r\n (mrxClick)=\"onOk()\"\r\n >\r\n {{ okText }}\r\n </mrx-button>\r\n } @else {\r\n <ng-container\r\n [ngTemplateOutlet]=\"footerTemplate\"\r\n [ngTemplateOutletContext]=\"{okFn: onOk, closeFn: onClose}\"\r\n ></ng-container>\r\n }\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".mrx-side-page-content{display:flex;flex-direction:column;justify-content:space-between;max-width:100%;background-color:var(--brand-bg-tertiary-default, #FFF);box-shadow:0 1px 4px #3a3a3a4d}::ng-deep .mrx-side-page-backdrop.cdk-overlay-backdrop{height:100%;inset:0;overflow-x:hidden;overflow-y:auto;padding:0 16px;position:absolute;text-align:center;z-index:1000;display:block}::ng-deep .mrx-side-page-backdrop.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{background-color:var(--neutral-bg-modal)}.mrx-side-page-content.mrx-side-page--position-right{position:absolute;top:0;right:0;bottom:0}.mrx-side-page-content.mrx-side-page--position-left{position:absolute;top:0;left:0;bottom:0}.mrx-side-page--lg{width:620px}.mrx-side-page--md{width:400px}.mrx-side-page--sm{width:280px}@media (max-width: 576px){.mrx-side-page--lg,.mrx-side-page--md,.mrx-side-page--sm{width:100%}}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm{padding:16px 56px 16px 24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .icon-close{top:calc(50% - 12px);right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm{padding:16px 40px 16px 24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .icon-close{top:calc(50% - 8px);right:16px;font-size:16px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm{padding:16px 40px 16px 24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .icon-close{top:calc(50% - 8px);right:16px;font-size:16px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content .mrx-side-page-header{position:relative;border-top-left-radius:4px;border-top-right-radius:4px}.mrx-side-page-content .mrx-side-page-header__content{display:flex;flex-direction:column;align-items:flex-start;min-height:24px}.mrx-side-page-content .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content .mrx-side-page-header .icon-close{position:absolute;cursor:pointer}.mrx-side-page-content .mrx-side-page-header .icon-close:hover{transform:scale(1.1)}.mrx-side-page-footer{padding:24px;min-height:24px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.mrx-side-page-footer__controls{display:flex;align-items:center;justify-content:flex-start;gap:16px}.mrx-side-page-body{flex-grow:1}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "mrx-button", inputs: ["size", "type", "color", "iconPosition", "active", "disabled", "isLoading", "iconOnly", "customClasses", "label", "icon", "iconClass", "buttonType", "href", "target", "routerLink", "queryParams"], outputs: ["mrxClick"] }, { kind: "component", type: i3.BreadcrumbsComponent, selector: "mrx-breadcrumbs", inputs: ["type", "items", "item", "customClasses"] }, { kind: "directive", type: i4.CdkTooltipDirective, selector: "[mrxCdkTooltip]", inputs: ["mrxCdkTooltip", "tooltipActive", "autoCloseByScroll", "tooltipPosition", "tooltipMaxWidth"] }, { kind: "component", type: i5.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }], animations: [
86
87
  trigger('animateExpand', [
87
88
  state('open', style({
88
89
  transform: 'translateX(0)'
@@ -108,7 +109,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
108
109
  transition('open => closed', [animate('0.5s ease')]),
109
110
  transition('closed => open', [animate('0.5s ease')]),
110
111
  ]),
111
- ], template: "<div\r\n class=\"mrx-side-page-content\"\r\n [class]=\"getClasses\"\r\n [style.top]=\"paddingTop\"\r\n [@animateExpand]=\"isOpen ? 'open' : 'closed'\"\r\n>\r\n @if (enableHeader) {\r\n @if (!headerTemplate) {\r\n <div class=\"mrx-side-page-header brdb\" [class]=\"getHeaderClasses\">\r\n <div class=\"mrx-side-page-header__content\">\r\n @if (isBack) {\r\n <mrx-breadcrumbs\r\n type=\"link\"\r\n customClasses=\"mb-2\"\r\n [item]=\"{\r\n text: backText,\r\n routerLink: backRouterLink,\r\n queryParams: backQueryParams,\r\n isShowArrow: true\r\n }\"\r\n (click)=\"closeModal()\"\r\n ></mrx-breadcrumbs>\r\n }\r\n\r\n <h2 class=\"mrx-side-page-header__content--title\">\r\n @if (title) {\r\n <span>{{ title }}</span>\r\n }\r\n\r\n @if (tooltip) {\r\n <span\r\n class=\"mrx-icon icon-info icon-font-16\"\r\n [mrxCdkTooltip]=\"tooltip\"\r\n [tooltipMaxWidth]=\"tooltipMaxWidth\"\r\n [tooltipPosition]=\"tooltipPosition\"\r\n ></span>\r\n }\r\n </h2>\r\n </div>\r\n\r\n <span class=\"mrx-icon icon-close\" (click)=\"onClose()\"></span>\r\n </div>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\r\n }\r\n }\r\n\r\n <div class=\"mrx-side-page-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n @if (enableFooter) {\r\n <div class=\"mrx-side-page-footer brdt\">\r\n @if (invalidMessage) {\r\n <mrx-error-message [invalid]=\"invalid\">{{ invalidMessage }}</mrx-error-message>\r\n }\r\n\r\n <div class=\"mrx-side-page-footer__controls\">\r\n @if (!footerTemplate) {\r\n <mrx-button\r\n [type]=\"'secondary'\"\r\n [color]=\"'default'\"\r\n [size]=\"'medium'\"\r\n (mrxClick)=\"onClose()\"\r\n >{{ closeText }}\r\n </mrx-button>\r\n\r\n <mrx-button\r\n [type]=\"'primary'\"\r\n [size]=\"'medium'\"\r\n [color]=\"'default'\"\r\n [isLoading]=\"isLoading\"\r\n (mrxClick)=\"onOk()\"\r\n >{{ okText }}\r\n </mrx-button>\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n }\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".mrx-side-page-content{display:flex;flex-direction:column;justify-content:space-between;max-width:100%;background-color:var(--brand-bg-tertiary-default, #FFF);box-shadow:0 1px 4px #3a3a3a4d}::ng-deep .mrx-side-page-backdrop.cdk-overlay-backdrop{height:100%;inset:0;overflow-x:hidden;overflow-y:auto;padding:0 16px;position:absolute;text-align:center;z-index:1000;display:block}::ng-deep .mrx-side-page-backdrop.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{background-color:var(--neutral-bg-modal)}.mrx-side-page-content.mrx-side-page--position-right{position:absolute;top:0;right:0;bottom:0}.mrx-side-page-content.mrx-side-page--position-left{position:absolute;top:0;left:0;bottom:0}.mrx-side-page--lg{width:620px}.mrx-side-page--md{width:400px}.mrx-side-page--sm{width:280px}@media (max-width: 576px){.mrx-side-page--lg,.mrx-side-page--md,.mrx-side-page--sm{width:100%}}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm{padding:16px 56px 16px 24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .icon-close{top:calc(50% - 12px);right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm{padding:16px 40px 16px 24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .icon-close{top:calc(50% - 8px);right:16px;font-size:16px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm{padding:16px 40px 16px 24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .icon-close{top:calc(50% - 8px);right:16px;font-size:16px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content .mrx-side-page-header{position:relative;border-top-left-radius:4px;border-top-right-radius:4px}.mrx-side-page-content .mrx-side-page-header__content{display:flex;flex-direction:column;align-items:flex-start;min-height:24px}.mrx-side-page-content .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content .mrx-side-page-header .icon-close{position:absolute;cursor:pointer}.mrx-side-page-content .mrx-side-page-header .icon-close:hover{transform:scale(1.1)}.mrx-side-page-footer{padding:24px;min-height:24px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.mrx-side-page-footer__controls{display:flex;align-items:center;justify-content:flex-start;gap:16px}.mrx-side-page-body{flex-grow:1}\n"] }]
112
+ ], template: "<div\r\n class=\"mrx-side-page-content\"\r\n [class]=\"getClasses\"\r\n [style.top]=\"paddingTop\"\r\n [@animateExpand]=\"isOpen ? 'open' : 'closed'\"\r\n>\r\n @if (enableHeader) {\r\n @if (!headerTemplate) {\r\n <div class=\"mrx-side-page-header brdb\" [class]=\"getHeaderClasses\">\r\n <div class=\"mrx-side-page-header__content\">\r\n @if (isBack) {\r\n <mrx-breadcrumbs\r\n type=\"link\"\r\n customClasses=\"mb-2\"\r\n [item]=\"{\r\n text: backText,\r\n routerLink: backRouterLink,\r\n queryParams: backQueryParams,\r\n isShowArrow: true\r\n }\"\r\n (click)=\"closeModal()\"\r\n ></mrx-breadcrumbs>\r\n }\r\n\r\n <h2 class=\"mrx-side-page-header__content--title\">\r\n @if (title) {\r\n <span>{{ title }}</span>\r\n }\r\n\r\n @if (tooltip) {\r\n <span\r\n class=\"mrx-icon icon-info icon-font-16\"\r\n [mrxCdkTooltip]=\"tooltip\"\r\n [tooltipMaxWidth]=\"tooltipMaxWidth\"\r\n [tooltipPosition]=\"tooltipPosition\"\r\n ></span>\r\n }\r\n </h2>\r\n </div>\r\n\r\n <span class=\"mrx-icon icon-close\" (click)=\"onClose()\"></span>\r\n </div>\r\n } @else {\r\n <ng-container\r\n [ngTemplateOutlet]=\"headerTemplate\"\r\n [ngTemplateOutletContext]=\"{okFn: onOk, closeFn: onClose}\"\r\n ></ng-container>\r\n }\r\n }\r\n\r\n <div class=\"mrx-side-page-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n @if (enableFooter) {\r\n <div class=\"mrx-side-page-footer brdt\">\r\n @if (invalidMessage) {\r\n <mrx-error-message [invalid]=\"invalid\">{{ invalidMessage }}</mrx-error-message>\r\n }\r\n\r\n <div class=\"mrx-side-page-footer__controls\">\r\n @if (!footerTemplate) {\r\n <mrx-button\r\n [type]=\"'secondary'\"\r\n [color]=\"'default'\"\r\n [size]=\"'medium'\"\r\n (mrxClick)=\"onClose()\"\r\n >\r\n {{ closeText }}\r\n </mrx-button>\r\n\r\n <mrx-button\r\n [type]=\"'primary'\"\r\n [size]=\"'medium'\"\r\n [color]=\"'default'\"\r\n [iconPosition]=\"iconPosition\"\r\n [isLoading]=\"isLoading\"\r\n (mrxClick)=\"onOk()\"\r\n >\r\n {{ okText }}\r\n </mrx-button>\r\n } @else {\r\n <ng-container\r\n [ngTemplateOutlet]=\"footerTemplate\"\r\n [ngTemplateOutletContext]=\"{okFn: onOk, closeFn: onClose}\"\r\n ></ng-container>\r\n }\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n", styles: [".mrx-side-page-content{display:flex;flex-direction:column;justify-content:space-between;max-width:100%;background-color:var(--brand-bg-tertiary-default, #FFF);box-shadow:0 1px 4px #3a3a3a4d}::ng-deep .mrx-side-page-backdrop.cdk-overlay-backdrop{height:100%;inset:0;overflow-x:hidden;overflow-y:auto;padding:0 16px;position:absolute;text-align:center;z-index:1000;display:block}::ng-deep .mrx-side-page-backdrop.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{background-color:var(--neutral-bg-modal)}.mrx-side-page-content.mrx-side-page--position-right{position:absolute;top:0;right:0;bottom:0}.mrx-side-page-content.mrx-side-page--position-left{position:absolute;top:0;left:0;bottom:0}.mrx-side-page--lg{width:620px}.mrx-side-page--md{width:400px}.mrx-side-page--sm{width:280px}@media (max-width: 576px){.mrx-side-page--lg,.mrx-side-page--md,.mrx-side-page--sm{width:100%}}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm{padding:16px 56px 16px 24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--sm .icon-close{top:calc(50% - 12px);right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-3-font-family);font-weight:var(--headlines-lvl-3-font-weight);line-height:var(--headlines-lvl-3-line-height);font-size:var(--headlines-lvl-3-font-size)}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--lg .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm{padding:16px 40px 16px 24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--sm .icon-close{top:calc(50% - 8px);right:16px;font-size:16px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--md .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm{padding:16px 40px 16px 24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-4-font-family);font-weight:var(--headlines-lvl-4-font-weight);line-height:var(--headlines-lvl-4-line-height);font-size:var(--headlines-lvl-4-font-size)}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--sm .icon-close{top:calc(50% - 8px);right:16px;font-size:16px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg{padding:24px 56px 24px 24px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title{font-family:var(--headlines-lvl-5-font-family);font-weight:var(--headlines-lvl-5-font-weight);line-height:var(--headlines-lvl-5-line-height);font-size:var(--headlines-lvl-5-font-size)}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content.mrx-side-page--sm .mrx-side-page-header--lg .icon-close{top:16px;right:16px;font-size:24px}.mrx-side-page-content .mrx-side-page-header{position:relative;border-top-left-radius:4px;border-top-right-radius:4px}.mrx-side-page-content .mrx-side-page-header__content{display:flex;flex-direction:column;align-items:flex-start;min-height:24px}.mrx-side-page-content .mrx-side-page-header__content--title span{display:inline}.mrx-side-page-content .mrx-side-page-header__content--title span.mrx-icon{margin-left:8px}.mrx-side-page-content .mrx-side-page-header .icon-close{position:absolute;cursor:pointer}.mrx-side-page-content .mrx-side-page-header .icon-close:hover{transform:scale(1.1)}.mrx-side-page-footer{padding:24px;min-height:24px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.mrx-side-page-footer__controls{display:flex;align-items:center;justify-content:flex-start;gap:16px}.mrx-side-page-body{flex-grow:1}\n"] }]
112
113
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { title: [{
113
114
  type: Input
114
115
  }], tooltip: [{
@@ -139,6 +140,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
139
140
  type: Input
140
141
  }], isLoading: [{
141
142
  type: Input
143
+ }], iconPosition: [{
144
+ type: Input
142
145
  }], isBack: [{
143
146
  type: Input
144
147
  }], backText: [{
@@ -166,4 +169,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
166
169
  }], back: [{
167
170
  type: Output
168
171
  }] } });
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9zaWRlLXBhZ2Uvc2lkZS1wYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9zaWRlLXBhZ2Uvc2lkZS1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFFLFlBQVksRUFDdkIsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixvQkFBb0IsRUFFcEIsaUJBQWlCLEVBRWxCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7OztBQXFCN0MsTUFBTSxPQUFPLGlCQUFpQjtJQXNDbEI7SUFyQ0QsS0FBSyxHQUFXLEVBQUUsQ0FBQTtJQUNsQixPQUFPLEdBQVcsRUFBRSxDQUFBO0lBQ3BCLGVBQWUsR0FBVyxHQUFHLENBQUM7SUFDOUIsZUFBZSxHQUFpQixLQUFLLENBQUM7SUFDdEMsTUFBTSxHQUFZLEtBQUssQ0FBQztJQUN4QixJQUFJLEdBQXVCLE9BQU8sQ0FBQztJQUNuQyxRQUFRLEdBQTBCLE9BQU8sQ0FBQztJQUMxQyxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQ25CLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDcEIsWUFBWSxHQUFHLElBQUksQ0FBQztJQUNwQixVQUFVLEdBQTZCLE9BQU8s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R0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBR0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRTBCLGNBQWM7c0JBQTdDLFlBQVk7dUJBQUMsZ0JBQWdCO2dCQUNFLGNBQWM7c0JBQTdDLFlBQVk7dUJBQUMsZ0JBQWdCO2dCQUVwQixFQUFFO3NCQUFYLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUNHLElBQUk7c0JBQWIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCwgVGVtcGxhdGVSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gIFNpZGVQYWdlSGVhZGVyU2l6ZXNFbnVtLCBTaWRlUGFnZUhlYWRlclNpemVzVHlwZXMsXHJcbiAgU2lkZVBhZ2VQb3NpdGlvbkVudW0sXHJcbiAgU2lkZVBhZ2VQb3NpdGlvblR5cGVzLFxyXG4gIFNpZGVQYWdlU2l6ZXNFbnVtLFxyXG4gIFNpZGVQYWdlU2l6ZXNUeXBlc1xyXG59IGZyb20gJy4vc2lkZS1wYWdlLmVtdW4nO1xyXG5pbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgZGVsYXksIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFBvc2l0aW9uVHlwZSB9IGZyb20gJy4uLy4uL2VudW1zL292ZXJsYXkvaW5kZXgnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtc2lkZS1wYWdlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZS1wYWdlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zaWRlLXBhZ2UuY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBhbmltYXRpb25zOiBbXHJcbiAgICB0cmlnZ2VyKCdhbmltYXRlRXhwYW5kJywgW1xyXG4gICAgICBzdGF0ZSgnb3BlbicsIHN0eWxlKHtcclxuICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJ1xyXG4gICAgICB9KSksXHJcbiAgICAgIHN0YXRlKCdjbG9zZWQnLCBzdHlsZSh7XHJcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKSdcclxuICAgICAgfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKCdvcGVuID0+IGNsb3NlZCcsIFthbmltYXRlKCcwLjVzIGVhc2UnKV0pLFxyXG4gICAgICB0cmFuc2l0aW9uKCdjbG9zZWQgPT4gb3BlbicsIFthbmltYXRlKCcwLjVzIGVhc2UnKV0pLFxyXG4gICAgXSksXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNpZGVQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9ICcnXHJcbiAgQElucHV0KCkgdG9vbHRpcDogc3RyaW5nID0gJydcclxuICBASW5wdXQoKSB0b29sdGlwTWF4V2lkdGg6IG51bWJlciA9IDI2NDtcclxuICBASW5wdXQoKSB0b29sdGlwUG9zaXRpb246IFBvc2l0aW9uVHlwZSA9ICd0b3AnO1xyXG4gIEBJbnB1dCgpIGlzT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNpemU6IFNpZGVQYWdlU2l6ZXNUeXBlcyA9ICdsYXJnZSc7XHJcbiAgQElucHV0KCkgcG9zaXRpb246IFNpZGVQYWdlUG9zaXRpb25UeXBlcyA9ICdyaWdodCc7XHJcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIGVuYWJsZUhlYWRlciA9IHRydWU7XHJcbiAgQElucHV0KCkgZW5hYmxlRm9vdGVyID0gdHJ1ZTtcclxuICBASW5wdXQoKSBoZWFkZXJTaXplOiBTaWRlUGFnZUhlYWRlclNpemVzVHlwZXMgPSAnbGFyZ2UnO1xyXG4gIEBJbnB1dCgpIHBhZGRpbmdUb3A6IHN0cmluZyA9ICcnO1xyXG5cclxuICBASW5wdXQoKSBva1RleHQgPSAn0J/QvtC00YLQstC10YDQtNC40YLRjCc7XHJcbiAgQElucHV0KCkgY2xvc2VUZXh0ID0gJ9Ce0YLQvNC10L3QuNGC0YwnO1xyXG5cclxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcclxuXHJcbiAgLy8gQmFja0Fycm93XHJcbiAgQElucHV0KCkgaXNCYWNrID0gZmFsc2U7XHJcbiAgQElucHV0KCkgYmFja1RleHQgPSAn0J3QsNC30LDQtCc7XHJcbiAgQElucHV0KCkgYmFja1JvdXRlckxpbmsgPSAnLyc7XHJcbiAgQElucHV0KCkgYmFja1F1ZXJ5UGFyYW1zID0ge307XHJcbiAgQElucHV0KCkgY2xvc2VBZnRlckxpbmsgPSB0cnVlO1xyXG5cclxuICAvLyBFcnJvciBtZXNzYWdlXHJcbiAgQElucHV0KCkgaW52YWxpZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGludmFsaWRNZXNzYWdlID0gJyc7XHJcblxyXG4gIEBDb250ZW50Q2hpbGQoJ2hlYWRlclRlbXBsYXRlJykgaGVhZGVyVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxIVE1MRWxlbWVudD47XHJcbiAgQENvbnRlbnRDaGlsZCgnZm9vdGVyVGVtcGxhdGUnKSBmb290ZXJUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PjtcclxuXHJcbiAgQE91dHB1dCgpIG9rOiBFdmVudEVtaXR0ZXI8bnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bGw+KCk7XHJcbiAgQE91dHB1dCgpIGNsb3NlOiBFdmVudEVtaXR0ZXI8bnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bGw+KCk7XHJcbiAgQE91dHB1dCgpIGJhY2s6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGRldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmlzT3Blbikge1xyXG4gICAgICB0aGlzLnRvZ2dsZVNpZGVQYWdlKHRydWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7U2lkZVBhZ2VTaXplc0VudW1bdGhpcy5zaXplXX0gJHtTaWRlUGFnZVBvc2l0aW9uRW51bVt0aGlzLnBvc2l0aW9uXX0gJHt0aGlzLmN1c3RvbUNsYXNzZXN9YDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0SGVhZGVyQ2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke1NpZGVQYWdlSGVhZGVyU2l6ZXNFbnVtW3RoaXMuaGVhZGVyU2l6ZV19YDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbk9rKCk6IHZvaWQge1xyXG4gICAgdGhpcy50b2dnbGVTaWRlUGFnZShmYWxzZSlcclxuICAgICAgLnBpcGUoZGVsYXkoMzAwKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5vay5lbWl0KCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQ2xvc2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRvZ2dsZVNpZGVQYWdlKGZhbHNlKVxyXG4gICAgICAucGlwZShkZWxheSgzMDApKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmNsb3NlLmVtaXQoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdG9nZ2xlU2lkZVBhZ2UodmFsdWU6IGJvb2xlYW4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIHRoaXMuaXNPcGVuID0gdmFsdWU7XHJcbiAgICB0aGlzLmRldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuXHJcbiAgICByZXR1cm4gb2YodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xvc2VNb2RhbCgpIHtcclxuICAgIGlmICh0aGlzLmNsb3NlQWZ0ZXJMaW5rKSB7XHJcbiAgICAgIHRoaXMudG9nZ2xlU2lkZVBhZ2UoZmFsc2UpXHJcbiAgICAgICAgLnBpcGUoZGVsYXkoMzAwKSlcclxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJtcngtc2lkZS1wYWdlLWNvbnRlbnRcIlxyXG4gIFtjbGFzc109XCJnZXRDbGFzc2VzXCJcclxuICBbc3R5bGUudG9wXT1cInBhZGRpbmdUb3BcIlxyXG4gIFtAYW5pbWF0ZUV4cGFuZF09XCJpc09wZW4gPyAnb3BlbicgOiAnY2xvc2VkJ1wiXHJcbj5cclxuICBAaWYgKGVuYWJsZUhlYWRlcikge1xyXG4gICAgQGlmICghaGVhZGVyVGVtcGxhdGUpIHtcclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC1zaWRlLXBhZ2UtaGVhZGVyIGJyZGJcIiBbY2xhc3NdPVwiZ2V0SGVhZGVyQ2xhc3Nlc1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtcngtc2lkZS1wYWdlLWhlYWRlcl9fY29udGVudFwiPlxyXG4gICAgICAgICAgQGlmIChpc0JhY2spIHtcclxuICAgICAgICAgICAgPG1yeC1icmVhZGNydW1ic1xyXG4gICAgICAgICAgICAgIHR5cGU9XCJsaW5rXCJcclxuICAgICAgICAgICAgICBjdXN0b21DbGFzc2VzPVwibWItMlwiXHJcbiAgICAgICAgICAgICAgW2l0ZW1dPVwie1xyXG4gICAgICAgICAgICAgICAgdGV4dDogYmFja1RleHQsXHJcbiAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBiYWNrUm91dGVyTGluayxcclxuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiBiYWNrUXVlcnlQYXJhbXMsXHJcbiAgICAgICAgICAgICAgICBpc1Nob3dBcnJvdzogdHJ1ZVxyXG4gICAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJjbG9zZU1vZGFsKClcIlxyXG4gICAgICAgICAgICA+PC9tcngtYnJlYWRjcnVtYnM+XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgPGgyIGNsYXNzPVwibXJ4LXNpZGUtcGFnZS1oZWFkZXJfX2NvbnRlbnQtLXRpdGxlXCI+XHJcbiAgICAgICAgICAgIEBpZiAodGl0bGUpIHtcclxuICAgICAgICAgICAgICA8c3Bhbj57eyB0aXRsZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGlmICh0b29sdGlwKSB7XHJcbiAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgIGNsYXNzPVwibXJ4LWljb24gaWNvbi1pbmZvIGljb24tZm9udC0xNlwiXHJcbiAgICAgICAgICAgICAgICBbbXJ4Q2RrVG9vbHRpcF09XCJ0b29sdGlwXCJcclxuICAgICAgICAgICAgICAgIFt0b29sdGlwTWF4V2lkdGhdPVwidG9vbHRpcE1heFdpZHRoXCJcclxuICAgICAgICAgICAgICAgIFt0b29sdGlwUG9zaXRpb25dPVwidG9vbHRpcFBvc2l0aW9uXCJcclxuICAgICAgICAgICAgICA+PC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L2gyPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1yeC1pY29uIGljb24tY2xvc2VcIiAoY2xpY2spPVwib25DbG9zZSgpXCI+PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaGVhZGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJtcngtc2lkZS1wYWdlLWJvZHlcIj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8L2Rpdj5cclxuXHJcbiAgQGlmIChlbmFibGVGb290ZXIpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJtcngtc2lkZS1wYWdlLWZvb3RlciBicmR0XCI+XHJcbiAgICAgIEBpZiAoaW52YWxpZE1lc3NhZ2UpIHtcclxuICAgICAgICA8bXJ4LWVycm9yLW1lc3NhZ2UgW2ludmFsaWRdPVwiaW52YWxpZFwiPnt7IGludmFsaWRNZXNzYWdlIH19PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuICAgICAgfVxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC1zaWRlLXBhZ2UtZm9vdGVyX19jb250cm9sc1wiPlxyXG4gICAgICAgIEBpZiAoIWZvb3RlclRlbXBsYXRlKSB7XHJcbiAgICAgICAgICA8bXJ4LWJ1dHRvblxyXG4gICAgICAgICAgICBbdHlwZV09XCInc2Vjb25kYXJ5J1wiXHJcbiAgICAgICAgICAgIFtjb2xvcl09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICAgIChtcnhDbGljayk9XCJvbkNsb3NlKClcIlxyXG4gICAgICAgICAgPnt7IGNsb3NlVGV4dCB9fVxyXG4gICAgICAgICAgPC9tcngtYnV0dG9uPlxyXG5cclxuICAgICAgICAgIDxtcngtYnV0dG9uXHJcbiAgICAgICAgICAgIFt0eXBlXT1cIidwcmltYXJ5J1wiXHJcbiAgICAgICAgICAgIFtzaXplXT1cIidtZWRpdW0nXCJcclxuICAgICAgICAgICAgW2NvbG9yXT1cIidkZWZhdWx0J1wiXHJcbiAgICAgICAgICAgIFtpc0xvYWRpbmddPVwiaXNMb2FkaW5nXCJcclxuICAgICAgICAgICAgKG1yeENsaWNrKT1cIm9uT2soKVwiXHJcbiAgICAgICAgICA+e3sgb2tUZXh0IH19XHJcbiAgICAgICAgICA8L21yeC1idXR0b24+XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZm9vdGVyVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgfVxyXG48L2Rpdj5cclxuIl19
172
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9zaWRlLXBhZ2Uvc2lkZS1wYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9zaWRlLXBhZ2Uvc2lkZS1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFFLFlBQVksRUFDdkIsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixvQkFBb0IsRUFFcEIsaUJBQWlCLEVBRWxCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7OztBQXNCN0MsTUFBTSxPQUFPLGlCQUFpQjtJQTZDbEI7SUE1Q0QsS0FBSyxHQUFXLEVBQUUsQ0FBQTtJQUNsQixPQUFPLEdBQVcsRUFBRSxDQUFBO0lBQ3BCLGVBQWUsR0FBVyxHQUFHLENBQUM7SUFDOUIsZUFBZSxHQUFpQixLQUFLLENBQUM7SUFDdEMsTUFBTSxHQUFZLEtBQUssQ0FBQztJQUN4QixJQUFJLEdBQXVCLE9BQU8sQ0FBQztJQUNuQyxRQUFRLEdBQTBCLE9BQU8sQ0FBQztJQUMxQyxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQ25CLFlBQVksR0FBRyxJQUFJLENBQUM7SUFDcEIsWUFBWSxHQUFHLElBQUksQ0FBQztJQUNwQixVQUFVLEdBQTZCLE9BQU8s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Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUUwQixjQUFjO3NCQUE3QyxZQUFZO3VCQUFDLGdCQUFnQjtnQkFJRSxjQUFjO3NCQUE3QyxZQUFZO3VCQUFDLGdCQUFnQjtnQkFLcEIsRUFBRTtzQkFBWCxNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxJQUFJO3NCQUFiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCwgQ29udGVudENoaWxkLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsIFRlbXBsYXRlUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICBTaWRlUGFnZUhlYWRlclNpemVzRW51bSwgU2lkZVBhZ2VIZWFkZXJTaXplc1R5cGVzLFxyXG4gIFNpZGVQYWdlUG9zaXRpb25FbnVtLFxyXG4gIFNpZGVQYWdlUG9zaXRpb25UeXBlcyxcclxuICBTaWRlUGFnZVNpemVzRW51bSxcclxuICBTaWRlUGFnZVNpemVzVHlwZXNcclxufSBmcm9tICcuL3NpZGUtcGFnZS5lbXVuJztcclxuaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IGRlbGF5LCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBQb3NpdGlvblR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcy9vdmVybGF5L2luZGV4JztcclxuaW1wb3J0IHsgQnV0dG9uSWNvblBvc2l0aW9uVHlwZXMgfSBmcm9tICcuLi9idXR0b24vYnV0dG9uLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtc2lkZS1wYWdlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZS1wYWdlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zaWRlLXBhZ2UuY29tcG9uZW50Lmxlc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBhbmltYXRpb25zOiBbXHJcbiAgICB0cmlnZ2VyKCdhbmltYXRlRXhwYW5kJywgW1xyXG4gICAgICBzdGF0ZSgnb3BlbicsIHN0eWxlKHtcclxuICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJ1xyXG4gICAgICB9KSksXHJcbiAgICAgIHN0YXRlKCdjbG9zZWQnLCBzdHlsZSh7XHJcbiAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKSdcclxuICAgICAgfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKCdvcGVuID0+IGNsb3NlZCcsIFthbmltYXRlKCcwLjVzIGVhc2UnKV0pLFxyXG4gICAgICB0cmFuc2l0aW9uKCdjbG9zZWQgPT4gb3BlbicsIFthbmltYXRlKCcwLjVzIGVhc2UnKV0pLFxyXG4gICAgXSksXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNpZGVQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9ICcnXHJcbiAgQElucHV0KCkgdG9vbHRpcDogc3RyaW5nID0gJydcclxuICBASW5wdXQoKSB0b29sdGlwTWF4V2lkdGg6IG51bWJlciA9IDI2NDtcclxuICBASW5wdXQoKSB0b29sdGlwUG9zaXRpb246IFBvc2l0aW9uVHlwZSA9ICd0b3AnO1xyXG4gIEBJbnB1dCgpIGlzT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNpemU6IFNpZGVQYWdlU2l6ZXNUeXBlcyA9ICdsYXJnZSc7XHJcbiAgQElucHV0KCkgcG9zaXRpb246IFNpZGVQYWdlUG9zaXRpb25UeXBlcyA9ICdyaWdodCc7XHJcbiAgQElucHV0KCkgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIGVuYWJsZUhlYWRlciA9IHRydWU7XHJcbiAgQElucHV0KCkgZW5hYmxlRm9vdGVyID0gdHJ1ZTtcclxuICBASW5wdXQoKSBoZWFkZXJTaXplOiBTaWRlUGFnZUhlYWRlclNpemVzVHlwZXMgPSAnbGFyZ2UnO1xyXG4gIEBJbnB1dCgpIHBhZGRpbmdUb3A6IHN0cmluZyA9ICcnO1xyXG5cclxuICBASW5wdXQoKSBva1RleHQgPSAn0J/QvtC00YLQstC10YDQtNC40YLRjCc7XHJcbiAgQElucHV0KCkgY2xvc2VUZXh0ID0gJ9Ce0YLQvNC10L3QuNGC0YwnO1xyXG5cclxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcclxuICBASW5wdXQoKSBpY29uUG9zaXRpb246IEJ1dHRvbkljb25Qb3NpdGlvblR5cGVzID0gJ2xlZnQnO1xyXG5cclxuICAvLyBCYWNrQXJyb3dcclxuICBASW5wdXQoKSBpc0JhY2sgPSBmYWxzZTtcclxuICBASW5wdXQoKSBiYWNrVGV4dCA9ICfQndCw0LfQsNC0JztcclxuICBASW5wdXQoKSBiYWNrUm91dGVyTGluayA9ICcvJztcclxuICBASW5wdXQoKSBiYWNrUXVlcnlQYXJhbXMgPSB7fTtcclxuICBASW5wdXQoKSBjbG9zZUFmdGVyTGluayA9IHRydWU7XHJcblxyXG4gIC8vIEVycm9yIG1lc3NhZ2VcclxuICBASW5wdXQoKSBpbnZhbGlkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaW52YWxpZE1lc3NhZ2UgPSAnJztcclxuXHJcbiAgQENvbnRlbnRDaGlsZCgnaGVhZGVyVGVtcGxhdGUnKSBoZWFkZXJUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPHtcclxuICAgIG9rRm46ICgpID0+IHZvaWRcclxuICAgIGNsb3NlRm46ICgpID0+IHZvaWRcclxuICB9PjtcclxuICBAQ29udGVudENoaWxkKCdmb290ZXJUZW1wbGF0ZScpIGZvb3RlclRlbXBsYXRlITogVGVtcGxhdGVSZWY8e1xyXG4gICAgb2tGbjogKCkgPT4gdm9pZFxyXG4gICAgY2xvc2VGbjogKCkgPT4gdm9pZFxyXG4gIH0+O1xyXG5cclxuICBAT3V0cHV0KCkgb2s6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuICBAT3V0cHV0KCkgY2xvc2U6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuICBAT3V0cHV0KCkgYmFjazogRXZlbnRFbWl0dGVyPG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcjxudWxsPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuaXNPcGVuKSB7XHJcbiAgICAgIHRoaXMudG9nZ2xlU2lkZVBhZ2UodHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHtTaWRlUGFnZVNpemVzRW51bVt0aGlzLnNpemVdfSAke1NpZGVQYWdlUG9zaXRpb25FbnVtW3RoaXMucG9zaXRpb25dfSAke3RoaXMuY3VzdG9tQ2xhc3Nlc31gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRIZWFkZXJDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7U2lkZVBhZ2VIZWFkZXJTaXplc0VudW1bdGhpcy5oZWFkZXJTaXplXX1gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uT2soKTogdm9pZCB7XHJcbiAgICB0aGlzLnRvZ2dsZVNpZGVQYWdlKGZhbHNlKVxyXG4gICAgICAucGlwZShkZWxheSgzMDApKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLm9rLmVtaXQoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DbG9zZSgpOiB2b2lkIHtcclxuICAgIHRoaXMudG9nZ2xlU2lkZVBhZ2UoZmFsc2UpXHJcbiAgICAgIC5waXBlKGRlbGF5KDMwMCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVTaWRlUGFnZSh2YWx1ZTogYm9vbGVhbik6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgdGhpcy5pc09wZW4gPSB2YWx1ZTtcclxuICAgIHRoaXMuZGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cclxuICAgIHJldHVybiBvZih0cnVlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9zZU1vZGFsKCkge1xyXG4gICAgaWYgKHRoaXMuY2xvc2VBZnRlckxpbmspIHtcclxuICAgICAgdGhpcy50b2dnbGVTaWRlUGFnZShmYWxzZSlcclxuICAgICAgICAucGlwZShkZWxheSgzMDApKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jbG9zZS5lbWl0KCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cIm1yeC1zaWRlLXBhZ2UtY29udGVudFwiXHJcbiAgW2NsYXNzXT1cImdldENsYXNzZXNcIlxyXG4gIFtzdHlsZS50b3BdPVwicGFkZGluZ1RvcFwiXHJcbiAgW0BhbmltYXRlRXhwYW5kXT1cImlzT3BlbiA/ICdvcGVuJyA6ICdjbG9zZWQnXCJcclxuPlxyXG4gIEBpZiAoZW5hYmxlSGVhZGVyKSB7XHJcbiAgICBAaWYgKCFoZWFkZXJUZW1wbGF0ZSkge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwibXJ4LXNpZGUtcGFnZS1oZWFkZXIgYnJkYlwiIFtjbGFzc109XCJnZXRIZWFkZXJDbGFzc2VzXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1yeC1zaWRlLXBhZ2UtaGVhZGVyX19jb250ZW50XCI+XHJcbiAgICAgICAgICBAaWYgKGlzQmFjaykge1xyXG4gICAgICAgICAgICA8bXJ4LWJyZWFkY3J1bWJzXHJcbiAgICAgICAgICAgICAgdHlwZT1cImxpbmtcIlxyXG4gICAgICAgICAgICAgIGN1c3RvbUNsYXNzZXM9XCJtYi0yXCJcclxuICAgICAgICAgICAgICBbaXRlbV09XCJ7XHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBiYWNrVGV4dCxcclxuICAgICAgICAgICAgICAgIHJvdXRlckxpbms6IGJhY2tSb3V0ZXJMaW5rLFxyXG4gICAgICAgICAgICAgICAgcXVlcnlQYXJhbXM6IGJhY2tRdWVyeVBhcmFtcyxcclxuICAgICAgICAgICAgICAgIGlzU2hvd0Fycm93OiB0cnVlXHJcbiAgICAgICAgICAgICAgfVwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiXHJcbiAgICAgICAgICAgID48L21yeC1icmVhZGNydW1icz5cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICA8aDIgY2xhc3M9XCJtcngtc2lkZS1wYWdlLWhlYWRlcl9fY29udGVudC0tdGl0bGVcIj5cclxuICAgICAgICAgICAgQGlmICh0aXRsZSkge1xyXG4gICAgICAgICAgICAgIDxzcGFuPnt7IHRpdGxlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaWYgKHRvb2x0aXApIHtcclxuICAgICAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBpY29uLWluZm8gaWNvbi1mb250LTE2XCJcclxuICAgICAgICAgICAgICAgIFttcnhDZGtUb29sdGlwXT1cInRvb2x0aXBcIlxyXG4gICAgICAgICAgICAgICAgW3Rvb2x0aXBNYXhXaWR0aF09XCJ0b29sdGlwTWF4V2lkdGhcIlxyXG4gICAgICAgICAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCJ0b29sdGlwUG9zaXRpb25cIlxyXG4gICAgICAgICAgICAgID48L3NwYW4+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvaDI+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwibXJ4LWljb24gaWNvbi1jbG9zZVwiIChjbGljayk9XCJvbkNsb3NlKClcIj48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJoZWFkZXJUZW1wbGF0ZVwiXHJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntva0ZuOiBvbk9rLCBjbG9zZUZuOiBvbkNsb3NlfVwiXHJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJtcngtc2lkZS1wYWdlLWJvZHlcIj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8L2Rpdj5cclxuXHJcbiAgQGlmIChlbmFibGVGb290ZXIpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJtcngtc2lkZS1wYWdlLWZvb3RlciBicmR0XCI+XHJcbiAgICAgIEBpZiAoaW52YWxpZE1lc3NhZ2UpIHtcclxuICAgICAgICA8bXJ4LWVycm9yLW1lc3NhZ2UgW2ludmFsaWRdPVwiaW52YWxpZFwiPnt7IGludmFsaWRNZXNzYWdlIH19PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuICAgICAgfVxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yeC1zaWRlLXBhZ2UtZm9vdGVyX19jb250cm9sc1wiPlxyXG4gICAgICAgIEBpZiAoIWZvb3RlclRlbXBsYXRlKSB7XHJcbiAgICAgICAgICA8bXJ4LWJ1dHRvblxyXG4gICAgICAgICAgICBbdHlwZV09XCInc2Vjb25kYXJ5J1wiXHJcbiAgICAgICAgICAgIFtjb2xvcl09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICAgIChtcnhDbGljayk9XCJvbkNsb3NlKClcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICB7eyBjbG9zZVRleHQgfX1cclxuICAgICAgICAgIDwvbXJ4LWJ1dHRvbj5cclxuXHJcbiAgICAgICAgICA8bXJ4LWJ1dHRvblxyXG4gICAgICAgICAgICBbdHlwZV09XCIncHJpbWFyeSdcIlxyXG4gICAgICAgICAgICBbc2l6ZV09XCInbWVkaXVtJ1wiXHJcbiAgICAgICAgICAgIFtjb2xvcl09XCInZGVmYXVsdCdcIlxyXG4gICAgICAgICAgICBbaWNvblBvc2l0aW9uXT1cImljb25Qb3NpdGlvblwiXHJcbiAgICAgICAgICAgIFtpc0xvYWRpbmddPVwiaXNMb2FkaW5nXCJcclxuICAgICAgICAgICAgKG1yeENsaWNrKT1cIm9uT2soKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IG9rVGV4dCB9fVxyXG4gICAgICAgICAgPC9tcngtYnV0dG9uPlxyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7b2tGbjogb25PaywgY2xvc2VGbjogb25DbG9zZX1cIlxyXG4gICAgICAgICAgPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIH1cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbjwvZGl2PlxyXG4iXX0=