@versatiledatakit/shared
Version:
Versatile Data Kit Shared library enables reusability of shared features like: NgRx Redux, Error Handlers, Utils, Generic Components, etc.
188 lines • 19.2 kB
JavaScript
/*
* Copyright 2023-2025 Broadcom
* SPDX-License-Identifier: Apache-2.0
*/
import { Component, ContentChild, Input, TemplateRef } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
import * as i2 from "@clr/angular";
const _c0 = ["customTemplate"];
function EmptyStateComponent_ng_container_0_clr_icon_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelement(0, "clr-icon", 6);
} if (rf & 2) {
const ctx_r3 = i0.ɵɵnextContext(2);
i0.ɵɵattribute("shape", ctx_r3.icon);
} }
function EmptyStateComponent_ng_container_0_ng_container_5_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "h1", 7);
i0.ɵɵtext(2);
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r4 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵattribute("aria-level", ctx_r4.headingLevel);
i0.ɵɵadvance(1);
i0.ɵɵtextInterpolate1(" ", ctx_r4.title, " ");
} }
function EmptyStateComponent_ng_container_0_ng_container_6_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "h2", 7);
i0.ɵɵtext(2);
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r5 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵattribute("aria-level", ctx_r5.headingLevel);
i0.ɵɵadvance(1);
i0.ɵɵtextInterpolate1(" ", ctx_r5.title, " ");
} }
function EmptyStateComponent_ng_container_0_ng_container_7_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "h3", 7);
i0.ɵɵtext(2);
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r6 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵattribute("aria-level", ctx_r6.headingLevel);
i0.ɵɵadvance(1);
i0.ɵɵtextInterpolate1(" ", ctx_r6.title, " ");
} }
function EmptyStateComponent_ng_container_0_ng_container_8_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "h4", 7);
i0.ɵɵtext(2);
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r7 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵattribute("aria-level", ctx_r7.headingLevel);
i0.ɵɵadvance(1);
i0.ɵɵtextInterpolate1(" ", ctx_r7.title, " ");
} }
function EmptyStateComponent_ng_container_0_ng_container_9_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "h5", 7);
i0.ɵɵtext(2);
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r8 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵattribute("aria-level", ctx_r8.headingLevel);
i0.ɵɵadvance(1);
i0.ɵɵtextInterpolate1(" ", ctx_r8.title, " ");
} }
function EmptyStateComponent_ng_container_0_ng_container_10_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵelementStart(1, "h6", 7);
i0.ɵɵtext(2);
i0.ɵɵelementEnd();
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r9 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵattribute("aria-level", ctx_r9.headingLevel);
i0.ɵɵadvance(1);
i0.ɵɵtextInterpolate1(" ", ctx_r9.title, " ");
} }
function EmptyStateComponent_ng_container_0_div_11_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementStart(0, "div", 8);
i0.ɵɵtext(1);
i0.ɵɵelementEnd();
} if (rf & 2) {
const ctx_r10 = i0.ɵɵnextContext(2);
i0.ɵɵadvance(1);
i0.ɵɵtextInterpolate1(" ", ctx_r10.description, " ");
} }
function EmptyStateComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainerStart(0);
i0.ɵɵtemplate(1, EmptyStateComponent_ng_container_0_clr_icon_1_Template, 1, 1, "clr-icon", 2);
i0.ɵɵprojection(2);
i0.ɵɵprojection(3, 1);
i0.ɵɵelementContainerStart(4, 3);
i0.ɵɵtemplate(5, EmptyStateComponent_ng_container_0_ng_container_5_Template, 3, 2, "ng-container", 4);
i0.ɵɵtemplate(6, EmptyStateComponent_ng_container_0_ng_container_6_Template, 3, 2, "ng-container", 4);
i0.ɵɵtemplate(7, EmptyStateComponent_ng_container_0_ng_container_7_Template, 3, 2, "ng-container", 4);
i0.ɵɵtemplate(8, EmptyStateComponent_ng_container_0_ng_container_8_Template, 3, 2, "ng-container", 4);
i0.ɵɵtemplate(9, EmptyStateComponent_ng_container_0_ng_container_9_Template, 3, 2, "ng-container", 4);
i0.ɵɵtemplate(10, EmptyStateComponent_ng_container_0_ng_container_10_Template, 3, 2, "ng-container", 4);
i0.ɵɵelementContainerEnd();
i0.ɵɵtemplate(11, EmptyStateComponent_ng_container_0_div_11_Template, 2, 1, "div", 5);
i0.ɵɵprojection(12, 2);
i0.ɵɵelementContainerEnd();
} if (rf & 2) {
const ctx_r0 = i0.ɵɵnextContext();
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx_r0.icon);
i0.ɵɵadvance(3);
i0.ɵɵproperty("ngSwitch", ctx_r0.headingLevel);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngSwitchCase", 1);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngSwitchCase", 2);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngSwitchCase", 3);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngSwitchCase", 4);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngSwitchCase", 5);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngSwitchCase", 6);
i0.ɵɵadvance(1);
i0.ɵɵproperty("ngIf", ctx_r0.description);
} }
function EmptyStateComponent_ng_template_1_ng_container_0_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵelementContainer(0);
} }
function EmptyStateComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵtemplate(0, EmptyStateComponent_ng_template_1_ng_container_0_Template, 1, 0, "ng-container", 9);
} if (rf & 2) {
const ctx_r2 = i0.ɵɵnextContext();
i0.ɵɵproperty("ngTemplateOutlet", ctx_r2.customTemplateRef);
} }
const _c1 = [[["img"]], [["ng-lottie"]], [["button"], ["a"]]];
const _c2 = ["img", "ng-lottie", "button, a"];
export class EmptyStateComponent {
constructor() {
/**
* ** Title heading level for empty state Component.
*/
this.headingLevel = 2;
}
}
EmptyStateComponent.ɵfac = function EmptyStateComponent_Factory(t) { return new (t || EmptyStateComponent)(); };
EmptyStateComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EmptyStateComponent, selectors: [["shared-empty-state"]], contentQueries: function EmptyStateComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
i0.ɵɵcontentQuery(dirIndex, _c0, 5, TemplateRef);
} if (rf & 2) {
let _t;
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.customTemplateRef = _t.first);
} }, inputs: { title: "title", icon: "icon", description: "description", headingLevel: "headingLevel" }, ngContentSelectors: _c2, decls: 3, vars: 2, consts: [[4, "ngIf", "ngIfElse"], ["customTemplateContainer", ""], ["size", "64", 4, "ngIf"], [3, "ngSwitch"], [4, "ngSwitchCase"], ["class", "empty-placeholder-description", 4, "ngIf"], ["size", "64"], ["role", "heading", 1, "empty-placeholder-heading"], [1, "empty-placeholder-description"], [4, "ngTemplateOutlet"]], template: function EmptyStateComponent_Template(rf, ctx) { if (rf & 1) {
i0.ɵɵprojectionDef(_c1);
i0.ɵɵtemplate(0, EmptyStateComponent_ng_container_0_Template, 13, 9, "ng-container", 0);
i0.ɵɵtemplate(1, EmptyStateComponent_ng_template_1_Template, 1, 1, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
} if (rf & 2) {
const _r1 = i0.ɵɵreference(2);
i0.ɵɵproperty("ngIf", !ctx.customTemplateRef)("ngIfElse", _r1);
} }, directives: [i1.NgIf, i2.ClrIconCustomTag, i1.NgSwitch, i1.NgSwitchCase, i1.NgTemplateOutlet], styles: ["[_nghost-%COMP%]{display:flex;align-items:center;flex-direction:column;margin:1rem 0}[_nghost-%COMP%] clr-icon[_ngcontent-%COMP%]{fill:#ccc}[_nghost-%COMP%] .empty-placeholder-heading[_ngcontent-%COMP%]{font-size:18px;color:#67747d;margin-top:18px;line-height:48px;font-weight:200}[_nghost-%COMP%] .empty-placeholder-description[_ngcontent-%COMP%]{margin-top:0;font-size:13px;color:#67747d;margin-bottom:18px;font-weight:200}[_nghost-%COMP%] button:last-child{margin-right:0!important}[_nghost-%COMP%] button.btn-link{margin-top:0!important}.dark[_nghost-%COMP%] h2[_ngcontent-%COMP%], .dark [_nghost-%COMP%] h2[_ngcontent-%COMP%], .dark[_nghost-%COMP%] h3[_ngcontent-%COMP%], .dark [_nghost-%COMP%] h3[_ngcontent-%COMP%]{color:#919fa8}"] });
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EmptyStateComponent, [{
type: Component,
args: [{ selector: 'shared-empty-state', template: "<!--\n ~ Copyright 2023-2025 Broadcom\n ~ SPDX-License-Identifier: Apache-2.0\n -->\n\n<ng-container *ngIf=\"!customTemplateRef; else customTemplateContainer\">\n <clr-icon *ngIf=\"icon\" [attr.shape]=\"icon\" size=\"64\"></clr-icon>\n\n <ng-content select=\"img\"></ng-content>\n <ng-content select=\"ng-lottie\"></ng-content>\n\n <ng-container [ngSwitch]=\"headingLevel\">\n <ng-container *ngSwitchCase=\"1\">\n <h1\n class=\"empty-placeholder-heading\"\n role=\"heading\"\n [attr.aria-level]=\"headingLevel\"\n >\n {{title}}\n </h1>\n </ng-container>\n <ng-container *ngSwitchCase=\"2\">\n <h2\n class=\"empty-placeholder-heading\"\n role=\"heading\"\n [attr.aria-level]=\"headingLevel\"\n >\n {{title}}\n </h2>\n </ng-container>\n <ng-container *ngSwitchCase=\"3\">\n <h3\n class=\"empty-placeholder-heading\"\n role=\"heading\"\n [attr.aria-level]=\"headingLevel\"\n >\n {{title}}\n </h3>\n </ng-container>\n <ng-container *ngSwitchCase=\"4\">\n <h4\n class=\"empty-placeholder-heading\"\n role=\"heading\"\n [attr.aria-level]=\"headingLevel\"\n >\n {{title}}\n </h4>\n </ng-container>\n <ng-container *ngSwitchCase=\"5\">\n <h5\n class=\"empty-placeholder-heading\"\n role=\"heading\"\n [attr.aria-level]=\"headingLevel\"\n >\n {{title}}\n </h5>\n </ng-container>\n <ng-container *ngSwitchCase=\"6\">\n <h6\n class=\"empty-placeholder-heading\"\n role=\"heading\"\n [attr.aria-level]=\"headingLevel\"\n >\n {{title}}\n </h6>\n </ng-container>\n </ng-container>\n\n <div *ngIf=\"description\" class=\"empty-placeholder-description\">\n {{description}}\n </div>\n\n <ng-content select=\"button, a\"></ng-content>\n</ng-container>\n\n<ng-template #customTemplateContainer>\n <ng-container *ngTemplateOutlet=\"customTemplateRef\"></ng-container>\n</ng-template>\n", styles: ["/*!\n * Copyright 2023-2025 Broadcom\n * SPDX-License-Identifier: Apache-2.0\n */:host{display:flex;align-items:center;flex-direction:column;margin:1rem 0}:host clr-icon{fill:#ccc}:host .empty-placeholder-heading{font-size:18px;color:#67747d;margin-top:18px;line-height:48px;font-weight:200}:host .empty-placeholder-description{margin-top:0;font-size:13px;color:#67747d;margin-bottom:18px;font-weight:200}:host ::ng-deep button:last-child{margin-right:0!important}:host ::ng-deep button.btn-link{margin-top:0!important}:host-context(.dark) h2,:host-context(.dark) h3{color:#919fa8}\n"] }]
}], null, { customTemplateRef: [{
type: ContentChild,
args: ['customTemplate', { read: TemplateRef }]
}], title: [{
type: Input
}], icon: [{
type: Input
}], description: [{
type: Input
}], headingLevel: [{
type: Input
}] }); })();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHktc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvZmVhdHVyZXMvcGxhY2Vob2xkZXIvY29tcG9uZW50cy9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9mZWF0dXJlcy9wbGFjZWhvbGRlci9jb21wb25lbnRzL2VtcHR5LXN0YXRlL2VtcHR5LXN0YXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztJQ0N4RSw4QkFBZ0U7OztJQUF6QyxvQ0FBbUI7OztJQU10Qyw2QkFBZ0M7SUFDNUIsNkJBSUM7SUFDRyxZQUNKO0lBQUEsaUJBQUs7SUFDVCwwQkFBZTs7O0lBSlAsZUFBZ0M7SUFBaEMsaURBQWdDO0lBRWhDLGVBQ0o7SUFESSw2Q0FDSjs7O0lBRUosNkJBQWdDO0lBQzVCLDZCQUlDO0lBQ0csWUFDSjtJQUFBLGlCQUFLO0lBQ1QsMEJBQWU7OztJQUpQLGVBQWdDO0lBQWhDLGlEQUFnQztJQUVoQyxlQUNKO0lBREksNkNBQ0o7OztJQUVKLDZCQUFnQztJQUM1Qiw2QkFJQztJQUNHLFlBQ0o7SUFBQSxpQkFBSztJQUNULDBCQUFlOzs7SUFKUCxlQUFnQztJQUFoQyxpREFBZ0M7SUFFaEMsZUFDSjtJQURJLDZDQUNKOzs7SUFFSiw2QkFBZ0M7SUFDNUIsNkJBSUM7SUFDRyxZQUNKO0lBQUEsaUJBQUs7SUFDVCwwQkFBZTs7O0lBSlAsZUFBZ0M7SUFBaEMsaURBQWdDO0lBRWhDLGVBQ0o7SUFESSw2Q0FDSjs7O0lBRUosNkJBQWdDO0lBQzVCLDZCQUlDO0lBQ0csWUFDSjtJQUFBLGlCQUFLO0lBQ1QsMEJBQWU7OztJQUpQLGVBQWdDO0lBQWhDLGlEQUFnQztJQUVoQyxlQUNKO0lBREksNkNBQ0o7OztJQUVKLDZCQUFnQztJQUM1Qiw2QkFJQztJQUNHLFlBQ0o7SUFBQSxpQkFBSztJQUNULDBCQUFlOzs7SUFKUCxlQUFnQztJQUFoQyxpREFBZ0M7SUFFaEMsZUFDSjtJQURJLDZDQUNKOzs7SUFJUiw4QkFBK0Q7SUFDM0QsWUFDSjtJQUFBLGlCQUFNOzs7SUFERixlQUNKO0lBREksb0RBQ0o7OztJQWpFSiw2QkFBdUU7SUFDbkUsNkZBQWdFO0lBRWhFLGtCQUFzQztJQUN0QyxxQkFBNEM7SUFFNUMsZ0NBQXdDO0lBQ3BDLHFHQVFlO0lBQ2YscUdBUWU7SUFDZixxR0FRZTtJQUNmLHFHQVFlO0lBQ2YscUdBUWU7SUFDZix1R0FRZTtJQUNuQiwwQkFBZTtJQUVmLHFGQUVNO0lBRU4sc0JBQTRDO0lBQ2hELDBCQUFlOzs7SUFuRUEsZUFBVTtJQUFWLGtDQUFVO0lBS1AsZUFBeUI7SUFBekIsOENBQXlCO0lBQ3BCLGVBQWU7SUFBZixnQ0FBZTtJQVNmLGVBQWU7SUFBZixnQ0FBZTtJQVNmLGVBQWU7SUFBZixnQ0FBZTtJQVNmLGVBQWU7SUFBZixnQ0FBZTtJQVNmLGVBQWU7SUFBZixnQ0FBZTtJQVNmLGVBQWU7SUFBZixnQ0FBZTtJQVc1QixlQUFpQjtJQUFqQix5Q0FBaUI7OztJQVF2Qix3QkFBbUU7OztJQUFuRSxvR0FBbUU7OztJQUFwRCwyREFBbUM7Ozs7QURoRXRELE1BQU0sT0FBTyxtQkFBbUI7SUFMaEM7UUF1Qkk7O1dBRUc7UUFDTSxpQkFBWSxHQUFHLENBQUMsQ0FBQztLQUM3Qjs7c0ZBdEJZLG1CQUFtQjtzRUFBbkIsbUJBQW1COzRDQUNZLFdBQVc7Ozs7OztRQ1J2RCx1RkFvRWU7UUFFZixxSEFFYzs7O1FBeEVDLDZDQUEwQixpQkFBQTs7dUZETzVCLG1CQUFtQjtjQUwvQixTQUFTOzJCQUNJLG9CQUFvQjtnQkFLeUIsaUJBQWlCO2tCQUF2RSxZQUFZO21CQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtZQUs1QyxLQUFLO2tCQUFiLEtBQUs7WUFLRyxJQUFJO2tCQUFaLEtBQUs7WUFLRyxXQUFXO2tCQUFuQixLQUFLO1lBS0csWUFBWTtrQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAyMy0yMDI1IEJyb2FkY29tXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzaGFyZWQtZW1wdHktc3RhdGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lbXB0eS1zdGF0ZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZW1wdHktc3RhdGUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBFbXB0eVN0YXRlQ29tcG9uZW50IHtcbiAgICBAQ29udGVudENoaWxkKCdjdXN0b21UZW1wbGF0ZScsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgY3VzdG9tVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPG5ldmVyPjtcblxuICAgIC8qKlxuICAgICAqICoqIFRpdGxlIGZvciBlbXB0eSBzdGF0ZSBDb21wb25lbnQuXG4gICAgICovXG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqICoqIEljb24gZm9yIGVtcHR5IHN0YXRlIENvbXBvbmVudC5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBpY29uOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiAqKiBEZXNjcmlwdGlvbiBmb3IgZW1wdHkgc3RhdGUgQ29tcG9uZW50LlxuICAgICAqL1xuICAgIEBJbnB1dCgpIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiAqKiBUaXRsZSBoZWFkaW5nIGxldmVsIGZvciBlbXB0eSBzdGF0ZSBDb21wb25lbnQuXG4gICAgICovXG4gICAgQElucHV0KCkgaGVhZGluZ0xldmVsID0gMjtcbn1cbiIsIjwhLS1cbiAgIH4gQ29weXJpZ2h0IDIwMjMtMjAyNSBCcm9hZGNvbVxuICAgfiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICAtLT5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjdXN0b21UZW1wbGF0ZVJlZjsgZWxzZSBjdXN0b21UZW1wbGF0ZUNvbnRhaW5lclwiPlxuICAgIDxjbHItaWNvbiAqbmdJZj1cImljb25cIiBbYXR0ci5zaGFwZV09XCJpY29uXCIgc2l6ZT1cIjY0XCI+PC9jbHItaWNvbj5cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImltZ1wiPjwvbmctY29udGVudD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJuZy1sb3R0aWVcIj48L25nLWNvbnRlbnQ+XG5cbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJoZWFkaW5nTGV2ZWxcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiMVwiPlxuICAgICAgICAgICAgPGgxXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJlbXB0eS1wbGFjZWhvbGRlci1oZWFkaW5nXCJcbiAgICAgICAgICAgICAgICByb2xlPVwiaGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sZXZlbF09XCJoZWFkaW5nTGV2ZWxcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7dGl0bGV9fVxuICAgICAgICAgICAgPC9oMT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIjJcIj5cbiAgICAgICAgICAgIDxoMlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZW1wdHktcGxhY2Vob2xkZXItaGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgcm9sZT1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGV2ZWxdPVwiaGVhZGluZ0xldmVsXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7e3RpdGxlfX1cbiAgICAgICAgICAgIDwvaDI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIzXCI+XG4gICAgICAgICAgICA8aDNcbiAgICAgICAgICAgICAgICBjbGFzcz1cImVtcHR5LXBsYWNlaG9sZGVyLWhlYWRpbmdcIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJoZWFkaW5nXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxldmVsXT1cImhlYWRpbmdMZXZlbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3t0aXRsZX19XG4gICAgICAgICAgICA8L2gzPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiNFwiPlxuICAgICAgICAgICAgPGg0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJlbXB0eS1wbGFjZWhvbGRlci1oZWFkaW5nXCJcbiAgICAgICAgICAgICAgICByb2xlPVwiaGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sZXZlbF09XCJoZWFkaW5nTGV2ZWxcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7dGl0bGV9fVxuICAgICAgICAgICAgPC9oND5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIjVcIj5cbiAgICAgICAgICAgIDxoNVxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZW1wdHktcGxhY2Vob2xkZXItaGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgcm9sZT1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGV2ZWxdPVwiaGVhZGluZ0xldmVsXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7e3RpdGxlfX1cbiAgICAgICAgICAgIDwvaDU+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCI2XCI+XG4gICAgICAgICAgICA8aDZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImVtcHR5LXBsYWNlaG9sZGVyLWhlYWRpbmdcIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJoZWFkaW5nXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxldmVsXT1cImhlYWRpbmdMZXZlbFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3t0aXRsZX19XG4gICAgICAgICAgICA8L2g2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxkaXYgKm5nSWY9XCJkZXNjcmlwdGlvblwiIGNsYXNzPVwiZW1wdHktcGxhY2Vob2xkZXItZGVzY3JpcHRpb25cIj5cbiAgICAgICAge3tkZXNjcmlwdGlvbn19XG4gICAgPC9kaXY+XG5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJidXR0b24sIGFcIj48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNjdXN0b21UZW1wbGF0ZUNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY3VzdG9tVGVtcGxhdGVSZWZcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=