cax-design-system 2.6.0 → 2.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/commentbox/commentbox.d.ts +111 -0
- package/commentbox/commentbox.module.d.ts +17 -0
- package/commentbox/index.d.ts +5 -0
- package/commentbox/public_api.d.ts +2 -0
- package/esm2022/card/card.mjs +2 -2
- package/esm2022/commentbox/cax-design-system-commentbox.mjs +5 -0
- package/esm2022/commentbox/commentbox.mjs +541 -0
- package/esm2022/commentbox/commentbox.module.mjs +27 -0
- package/esm2022/commentbox/public_api.mjs +3 -0
- package/esm2022/inputtext/inputtext.component.mjs +13 -4
- package/esm2022/inputtextarea/inputtextarea.component.mjs +8 -4
- package/esm2022/navigation/navigation.mjs +18 -5
- package/esm2022/table/components/column-filter/column-filter.mjs +52 -11
- package/esm2022/table/components/sort-icon/sort-icon.mjs +10 -7
- package/esm2022/table/table.mjs +123 -98
- package/esm2022/upload/cax-design-system-upload.mjs +5 -0
- package/esm2022/upload/public_api.mjs +3 -0
- package/esm2022/upload/upload.component.mjs +355 -0
- package/esm2022/upload/upload.component.module.mjs +21 -0
- package/fesm2022/cax-design-system-card.mjs +2 -2
- package/fesm2022/cax-design-system-card.mjs.map +1 -1
- package/fesm2022/cax-design-system-commentbox.mjs +572 -0
- package/fesm2022/cax-design-system-commentbox.mjs.map +1 -0
- package/fesm2022/cax-design-system-inputtext.mjs +12 -3
- package/fesm2022/cax-design-system-inputtext.mjs.map +1 -1
- package/fesm2022/cax-design-system-inputtextarea.mjs +7 -3
- package/fesm2022/cax-design-system-inputtextarea.mjs.map +1 -1
- package/fesm2022/cax-design-system-navigation.mjs +17 -4
- package/fesm2022/cax-design-system-navigation.mjs.map +1 -1
- package/fesm2022/cax-design-system-table.mjs +181 -113
- package/fesm2022/cax-design-system-table.mjs.map +1 -1
- package/fesm2022/cax-design-system-upload.mjs +380 -0
- package/fesm2022/cax-design-system-upload.mjs.map +1 -0
- package/inputtext/inputtext.component.d.ts +4 -1
- package/inputtextarea/inputtextarea.component.d.ts +2 -2
- package/navigation/navigation.d.ts +3 -1
- package/package.json +174 -162
- package/resources/cax.min.scss +1 -1
- package/resources/cax.scss +305 -254
- package/resources/components/card/card.scss +1 -1
- package/resources/components/commentbox/commentbox.scss +604 -0
- package/resources/components/table/table.scss +12 -4
- package/resources/components/upload/upload.component.scss +147 -0
- package/table/components/column-filter/column-filter.d.ts +6 -1
- package/table/components/sort-icon/sort-icon.d.ts +2 -1
- package/table/table.d.ts +6 -4
- package/upload/index.d.ts +5 -0
- package/upload/public_api.d.ts +2 -0
- package/upload/upload.component.d.ts +61 -0
- package/upload/upload.component.module.d.ts +11 -0
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
2
|
import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input } from '@angular/core';
|
|
3
|
+
import { ButtonModule } from 'cax-design-system/button';
|
|
4
|
+
import { BadgeModule } from 'cax-design-system/badge';
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
4
6
|
import * as i1 from "../../table";
|
|
5
7
|
import * as i2 from "@angular/common";
|
|
8
|
+
import * as i3 from "cax-design-system/badge";
|
|
6
9
|
export class SortIcon {
|
|
7
10
|
dt;
|
|
8
11
|
cd;
|
|
9
12
|
field;
|
|
13
|
+
disabled = false;
|
|
10
14
|
subscription;
|
|
11
15
|
sortOrder;
|
|
12
16
|
constructor(dt, cd) {
|
|
@@ -30,9 +34,6 @@ export class SortIcon {
|
|
|
30
34
|
let sortMeta = this.dt.getSortMeta(this.field);
|
|
31
35
|
this.sortOrder = sortMeta ? sortMeta.order : 0;
|
|
32
36
|
}
|
|
33
|
-
else if (this.dt.sortMode === 'custom') {
|
|
34
|
-
this.sortOrder = this.dt.isSorted(this.field) ? this.dt.sortOrder : 0;
|
|
35
|
-
}
|
|
36
37
|
this.cd.markForCheck();
|
|
37
38
|
}
|
|
38
39
|
getMultiSortMetaIndex() {
|
|
@@ -62,14 +63,16 @@ export class SortIcon {
|
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
65
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: SortIcon, deps: [{ token: i1.Table }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
65
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: SortIcon, isStandalone: true, selector: "cax-sortIcon", inputs: { field: "field" }, host: { classAttribute: "cax-element" }, ngImport: i0, template: "<ng-container *ngIf=\"!dt.sortIconTemplate\">\r\n <button class=\"cax-sort-icon-button\">\r\n
|
|
66
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: SortIcon, isStandalone: true, selector: "cax-sortIcon", inputs: { field: "field", disabled: "disabled" }, host: { classAttribute: "cax-element" }, ngImport: i0, template: "<ng-container *ngIf=\"!dt.sortIconTemplate\">\r\n <ng-container *ngIf=\"isMultiSorted(); else noBadge\">\r\n <button [disabled]=\"disabled\" caxBadge [badgeSize]=\"'xs'\" [value]=\"getBadgeValue()\" class=\"cax-sort-icon-button\" [ngClass]=\"{ 'cax-sort-icon-button-active': sortOrder !== 0 }\">\r\n <i class=\"cax cax-sort-vertical\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === 0\"></i>\r\n <i class=\"cax cax-sort-from-bottom-to-top\" style=\"color: var(--primary-color)\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === 1\"></i>\r\n <i class=\"cax cax-sort-from-top-to-bottom\" style=\"color: var(--primary-color)\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === -1\"></i>\r\n </button>\r\n </ng-container>\r\n <ng-template #noBadge>\r\n <button [disabled]=\"disabled\" class=\"cax-sort-icon-button\" [ngClass]=\"{ 'cax-sort-icon-button-active': sortOrder !== 0 }\">\r\n <i class=\"cax cax-sort-vertical\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === 0\"></i>\r\n <i class=\"cax cax-sort-from-bottom-to-top\" style=\"color: var(--primary-color)\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === 1\"></i>\r\n <i class=\"cax cax-sort-from-top-to-bottom\" style=\"color: var(--primary-color)\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === -1\"></i>\r\n </button>\r\n </ng-template>\r\n</ng-container>\r\n<span *ngIf=\"dt.sortIconTemplate\" class=\"cax-sortable-column-icon\">\r\n <ng-template *ngTemplateOutlet=\"dt.sortIconTemplate; context: { $implicit: sortOrder }\"></ng-template>\r\n</span>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: BadgeModule }, { kind: "directive", type: i3.BadgeDirective, selector: "[caxBadge]", inputs: ["badgeDisabled", "badgeSize", "size", "caxBadge", "value", "badgeSeverity", "severity", "badgeStyle", "badgeStyleClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
66
67
|
}
|
|
67
68
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: SortIcon, decorators: [{
|
|
68
69
|
type: Component,
|
|
69
|
-
args: [{ selector: 'cax-sortIcon', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule], host: {
|
|
70
|
+
args: [{ selector: 'cax-sortIcon', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule, ButtonModule, BadgeModule], host: {
|
|
70
71
|
class: 'cax-element'
|
|
71
|
-
}, template: "<ng-container *ngIf=\"!dt.sortIconTemplate\">\r\n <button class=\"cax-sort-icon-button\">\r\n
|
|
72
|
+
}, template: "<ng-container *ngIf=\"!dt.sortIconTemplate\">\r\n <ng-container *ngIf=\"isMultiSorted(); else noBadge\">\r\n <button [disabled]=\"disabled\" caxBadge [badgeSize]=\"'xs'\" [value]=\"getBadgeValue()\" class=\"cax-sort-icon-button\" [ngClass]=\"{ 'cax-sort-icon-button-active': sortOrder !== 0 }\">\r\n <i class=\"cax cax-sort-vertical\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === 0\"></i>\r\n <i class=\"cax cax-sort-from-bottom-to-top\" style=\"color: var(--primary-color)\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === 1\"></i>\r\n <i class=\"cax cax-sort-from-top-to-bottom\" style=\"color: var(--primary-color)\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === -1\"></i>\r\n </button>\r\n </ng-container>\r\n <ng-template #noBadge>\r\n <button [disabled]=\"disabled\" class=\"cax-sort-icon-button\" [ngClass]=\"{ 'cax-sort-icon-button-active': sortOrder !== 0 }\">\r\n <i class=\"cax cax-sort-vertical\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === 0\"></i>\r\n <i class=\"cax cax-sort-from-bottom-to-top\" style=\"color: var(--primary-color)\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === 1\"></i>\r\n <i class=\"cax cax-sort-from-top-to-bottom\" style=\"color: var(--primary-color)\" [styleClass]=\"'cax-sortable-column-icon'\" *ngIf=\"sortOrder === -1\"></i>\r\n </button>\r\n </ng-template>\r\n</ng-container>\r\n<span *ngIf=\"dt.sortIconTemplate\" class=\"cax-sortable-column-icon\">\r\n <ng-template *ngTemplateOutlet=\"dt.sortIconTemplate; context: { $implicit: sortOrder }\"></ng-template>\r\n</span>\r\n" }]
|
|
72
73
|
}], ctorParameters: () => [{ type: i1.Table }, { type: i0.ChangeDetectorRef }], propDecorators: { field: [{
|
|
73
74
|
type: Input
|
|
75
|
+
}], disabled: [{
|
|
76
|
+
type: Input
|
|
74
77
|
}] } });
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1pY29uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvc29ydC1pY29uL3NvcnQtaWNvbi50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3NvcnQtaWNvbi9zb3J0LWljb24uaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBcUIsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUduSSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7OztBQWF0RCxNQUFNLE9BQU8sUUFBUTtJQVNOO0lBQ0E7SUFURixLQUFLLENBQXFCO0lBQzFCLFFBQVEsR0FBWSxLQUFLLENBQUM7SUFFbkMsWUFBWSxDQUEyQjtJQUV2QyxTQUFTLENBQXFCO0lBRTlCLFlBQ1csRUFBUyxFQUNULEVBQXFCO1FBRHJCLE9BQUUsR0FBRixFQUFFLENBQU87UUFDVCxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUU1QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN4RSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQVk7UUFDaEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzNC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Z3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIFZpZXdFbmNhcHN1bGF0aW9uLCBPbkluaXQsIE9uRGVzdHJveSwgSW5wdXQsIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUYWJsZSB9IGZyb20gJy4uLy4uL3RhYmxlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnY2F4LWRlc2lnbi1zeXN0ZW0vYnV0dG9uJztcbmltcG9ydCB7IEJhZGdlTW9kdWxlIH0gZnJvbSAnY2F4LWRlc2lnbi1zeXN0ZW0vYmFkZ2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2NheC1zb3J0SWNvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NvcnQtaWNvbi5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQnV0dG9uTW9kdWxlLCBCYWRnZU1vZHVsZV0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2NheC1lbGVtZW50J1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgU29ydEljb24gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCkgZmllbGQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgICBzb3J0T3JkZXI6IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZHQ6IFRhYmxlLFxuICAgICAgICBwdWJsaWMgY2Q6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5kdC50YWJsZVNlcnZpY2Uuc29ydFNvdXJjZSQuc3Vic2NyaWJlKChzb3J0TWV0YSkgPT4ge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVTb3J0U3RhdGUoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMudXBkYXRlU29ydFN0YXRlKCk7XG4gICAgfVxuXG4gICAgb25DbGljayhldmVudDogRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICB1cGRhdGVTb3J0U3RhdGUoKSB7XG4gICAgICAgIGlmICh0aGlzLmR0LnNvcnRNb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICAgICAgdGhpcy5zb3J0T3JkZXIgPSB0aGlzLmR0LmlzU29ydGVkKDxzdHJpbmc+dGhpcy5maWVsZCkgPyB0aGlzLmR0LnNvcnRPcmRlciA6IDA7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5kdC5zb3J0TW9kZSA9PT0gJ211bHRpcGxlJykge1xuICAgICAgICAgICAgbGV0IHNvcnRNZXRhID0gdGhpcy5kdC5nZXRTb3J0TWV0YSg8c3RyaW5nPnRoaXMuZmllbGQpO1xuICAgICAgICAgICAgdGhpcy5zb3J0T3JkZXIgPSBzb3J0TWV0YSA/IHNvcnRNZXRhLm9yZGVyIDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgZ2V0TXVsdGlTb3J0TWV0YUluZGV4KCkge1xuICAgICAgICBsZXQgbXVsdGlTb3J0TWV0YSA9IHRoaXMuZHQuX211bHRpU29ydE1ldGE7XG4gICAgICAgIGxldCBpbmRleCA9IC0xO1xuXG4gICAgICAgIGlmIChtdWx0aVNvcnRNZXRhICYmIHRoaXMuZHQuc29ydE1vZGUgPT09ICdtdWx0aXBsZScgJiYgdGhpcy5kdC5zaG93SW5pdGlhbFNvcnRCYWRnZSAmJiBtdWx0aVNvcnRNZXRhLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbXVsdGlTb3J0TWV0YS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGxldCBtZXRhID0gbXVsdGlTb3J0TWV0YVtpXTtcbiAgICAgICAgICAgICAgICBpZiAobWV0YS5maWVsZCA9PT0gdGhpcy5maWVsZCB8fCBtZXRhLmZpZWxkID09PSB0aGlzLmZpZWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIGluZGV4ID0gaTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGluZGV4O1xuICAgIH1cblxuICAgIGdldEJhZGdlVmFsdWUoKSB7XG4gICAgICAgIGxldCBpbmRleCA9IHRoaXMuZ2V0TXVsdGlTb3J0TWV0YUluZGV4KCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZHQuZ3JvdXBSb3dzQnkgJiYgaW5kZXggPiAtMSA/IGluZGV4IDogaW5kZXggKyAxO1xuICAgIH1cblxuICAgIGlzTXVsdGlTb3J0ZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmR0LnNvcnRNb2RlID09PSAnbXVsdGlwbGUnICYmIHRoaXMuZ2V0TXVsdGlTb3J0TWV0YUluZGV4KCkgPiAtMTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFkdC5zb3J0SWNvblRlbXBsYXRlXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNNdWx0aVNvcnRlZCgpOyBlbHNlIG5vQmFkZ2VcIj5cclxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIGNheEJhZGdlIFtiYWRnZVNpemVdPVwiJ3hzJ1wiIFt2YWx1ZV09XCJnZXRCYWRnZVZhbHVlKClcIiBjbGFzcz1cImNheC1zb3J0LWljb24tYnV0dG9uXCIgW25nQ2xhc3NdPVwieyAnY2F4LXNvcnQtaWNvbi1idXR0b24tYWN0aXZlJzogc29ydE9yZGVyICE9PSAwIH1cIj5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJjYXggY2F4LXNvcnQtdmVydGljYWxcIiBbc3R5bGVDbGFzc109XCInY2F4LXNvcnRhYmxlLWNvbHVtbi1pY29uJ1wiICpuZ0lmPVwic29ydE9yZGVyID09PSAwXCI+PC9pPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImNheCBjYXgtc29ydC1mcm9tLWJvdHRvbS10by10b3BcIiBzdHlsZT1cImNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKVwiIFtzdHlsZUNsYXNzXT1cIidjYXgtc29ydGFibGUtY29sdW1uLWljb24nXCIgKm5nSWY9XCJzb3J0T3JkZXIgPT09IDFcIj48L2k+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiY2F4IGNheC1zb3J0LWZyb20tdG9wLXRvLWJvdHRvbVwiIHN0eWxlPVwiY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpXCIgW3N0eWxlQ2xhc3NdPVwiJ2NheC1zb3J0YWJsZS1jb2x1bW4taWNvbidcIiAqbmdJZj1cInNvcnRPcmRlciA9PT0gLTFcIj48L2k+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxuZy10ZW1wbGF0ZSAjbm9CYWRnZT5cclxuICAgICAgICA8YnV0dG9uIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIGNsYXNzPVwiY2F4LXNvcnQtaWNvbi1idXR0b25cIiBbbmdDbGFzc109XCJ7ICdjYXgtc29ydC1pY29uLWJ1dHRvbi1hY3RpdmUnOiBzb3J0T3JkZXIgIT09IDAgfVwiPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImNheCBjYXgtc29ydC12ZXJ0aWNhbFwiIFtzdHlsZUNsYXNzXT1cIidjYXgtc29ydGFibGUtY29sdW1uLWljb24nXCIgKm5nSWY9XCJzb3J0T3JkZXIgPT09IDBcIj48L2k+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiY2F4IGNheC1zb3J0LWZyb20tYm90dG9tLXRvLXRvcFwiIHN0eWxlPVwiY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpXCIgW3N0eWxlQ2xhc3NdPVwiJ2NheC1zb3J0YWJsZS1jb2x1bW4taWNvbidcIiAqbmdJZj1cInNvcnRPcmRlciA9PT0gMVwiPjwvaT5cclxuICAgICAgICAgICAgPGkgY2xhc3M9XCJjYXggY2F4LXNvcnQtZnJvbS10b3AtdG8tYm90dG9tXCIgc3R5bGU9XCJjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcilcIiBbc3R5bGVDbGFzc109XCInY2F4LXNvcnRhYmxlLWNvbHVtbi1pY29uJ1wiICpuZ0lmPVwic29ydE9yZGVyID09PSAtMVwiPjwvaT5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbjwvbmctY29udGFpbmVyPlxyXG48c3BhbiAqbmdJZj1cImR0LnNvcnRJY29uVGVtcGxhdGVcIiBjbGFzcz1cImNheC1zb3J0YWJsZS1jb2x1bW4taWNvblwiPlxyXG4gICAgPG5nLXRlbXBsYXRlICpuZ1RlbXBsYXRlT3V0bGV0PVwiZHQuc29ydEljb25UZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IHNvcnRPcmRlciB9XCI+PC9uZy10ZW1wbGF0ZT5cclxuPC9zcGFuPlxyXG4iXX0=
|