@hestia-earth/ui-components 0.27.6 → 0.27.8
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/common/shelf-dialog/shelf-dialog.component.d.ts +8 -7
- package/cycles/cycles-completeness/cycles-completeness.component.d.ts +8 -5
- package/cycles/cycles-nodes/cycles-nodes.component.d.ts +9 -5
- package/esm2022/common/shelf-dialog/shelf-dialog.component.mjs +12 -7
- package/esm2022/files/files-error.model.mjs +16 -2
- package/esm2022/files/files-upload-errors/files-upload-errors.component.mjs +2 -2
- package/esm2022/node/node-logs-file/node-logs-file.component.mjs +6 -5
- package/fesm2022/hestia-earth-ui-components.mjs +58 -38
- package/fesm2022/hestia-earth-ui-components.mjs.map +1 -1
- package/impact-assessments/impact-assessments-products/impact-assessments-products.component.d.ts +1 -0
- package/node/node-logs-file/node-logs-file.component.d.ts +1 -0
- package/package.json +1 -1
- package/sites/sites-nodes/sites-nodes.component.d.ts +2 -1
- package/svg-icons/far-chevron-down.svg +4 -0
- package/svg-icons/far-chevron-up.svg +4 -0
- package/svg-icons/far-circle-info.svg +6 -6
- package/svg-icons/far-close.svg +6 -0
- package/svg-icons/far-success.svg +8 -0
- package/svg-icons/file-csv.svg +13 -11
- package/svg-icons/file-zip.svg +24 -0
- package/svg-icons/icons.json +20 -0
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { TemplateRef } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class ShelfDialogComponent {
|
|
4
|
-
protected readonly
|
|
5
|
-
protected
|
|
6
|
-
protected
|
|
7
|
-
protected
|
|
8
|
-
protected
|
|
9
|
-
protected
|
|
10
|
-
|
|
4
|
+
protected readonly headerTemplate: import("@angular/core").InputSignal<TemplateRef<any>>;
|
|
5
|
+
protected readonly title: import("@angular/core").InputSignal<string>;
|
|
6
|
+
protected readonly bottom: import("@angular/core").InputSignal<string | number>;
|
|
7
|
+
protected readonly closed: import("@angular/core").OutputEmitterRef<void>;
|
|
8
|
+
protected readonly showContent: import("@angular/core").WritableSignal<boolean>;
|
|
9
|
+
protected readonly toggleIcon: import("@angular/core").Signal<"far-chevron-down" | "far-chevron-up">;
|
|
10
|
+
expand(): void;
|
|
11
|
+
collapse(): void;
|
|
11
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<ShelfDialogComponent, never>;
|
|
12
13
|
static ɵcmp: i0.ɵɵComponentDeclaration<ShelfDialogComponent, "he-shelf-dialog", never, { "headerTemplate": { "alias": "headerTemplate"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "bottom": { "alias": "bottom"; "required": false; "isSignal": true; }; }, { "closed": "closed"; }, never, ["*"], true, never>;
|
|
13
14
|
}
|
|
@@ -40,8 +40,8 @@ export declare class CyclesCompletenessComponent {
|
|
|
40
40
|
type: NodeType;
|
|
41
41
|
dataState: DataState;
|
|
42
42
|
description?: string;
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
functionalUnit?: import("@hestia-earth/schema").CycleFunctionalUnit;
|
|
44
|
+
functionalUnitDetails?: string;
|
|
45
45
|
endDate?: string;
|
|
46
46
|
startDate?: string;
|
|
47
47
|
startDateDefinition?: import("@hestia-earth/schema").CycleStartDateDefinition;
|
|
@@ -50,12 +50,14 @@ export declare class CyclesCompletenessComponent {
|
|
|
50
50
|
otherSites?: import("@hestia-earth/schema").ISiteJSONLD[];
|
|
51
51
|
siteDuration?: number;
|
|
52
52
|
otherSitesDuration?: number[];
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
siteArea?: number;
|
|
54
|
+
otherSitesArea?: number[];
|
|
55
|
+
harvestedArea?: number;
|
|
55
56
|
numberOfCycles?: number;
|
|
57
|
+
treatment?: string;
|
|
58
|
+
commercialPracticeTreatment?: boolean;
|
|
56
59
|
numberOfReplications?: number;
|
|
57
60
|
sampleWeight?: number;
|
|
58
|
-
harvestedArea?: number;
|
|
59
61
|
defaultMethodClassification?: import("@hestia-earth/schema").CycleDefaultMethodClassification;
|
|
60
62
|
defaultMethodClassificationDescription?: string;
|
|
61
63
|
defaultSource?: import("@hestia-earth/schema").ISourceJSONLD;
|
|
@@ -74,6 +76,7 @@ export declare class CyclesCompletenessComponent {
|
|
|
74
76
|
updated?: string[];
|
|
75
77
|
updatedVersion?: string[];
|
|
76
78
|
aggregated?: boolean;
|
|
79
|
+
aggregatedDataValidated?: boolean;
|
|
77
80
|
aggregatedVersion?: string;
|
|
78
81
|
aggregatedQualityScore?: number;
|
|
79
82
|
aggregatedQualityScoreMax?: number;
|
|
@@ -59,8 +59,8 @@ export declare class CyclesNodesComponent {
|
|
|
59
59
|
type: NodeType;
|
|
60
60
|
dataState: DataState;
|
|
61
61
|
description?: string;
|
|
62
|
-
|
|
63
|
-
|
|
62
|
+
functionalUnit?: import("@hestia-earth/schema").CycleFunctionalUnit;
|
|
63
|
+
functionalUnitDetails?: string;
|
|
64
64
|
endDate?: string;
|
|
65
65
|
startDate?: string;
|
|
66
66
|
startDateDefinition?: import("@hestia-earth/schema").CycleStartDateDefinition;
|
|
@@ -69,12 +69,14 @@ export declare class CyclesNodesComponent {
|
|
|
69
69
|
otherSites?: import("@hestia-earth/schema").ISiteJSONLD[];
|
|
70
70
|
siteDuration?: number;
|
|
71
71
|
otherSitesDuration?: number[];
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
siteArea?: number;
|
|
73
|
+
otherSitesArea?: number[];
|
|
74
|
+
harvestedArea?: number;
|
|
74
75
|
numberOfCycles?: number;
|
|
76
|
+
treatment?: string;
|
|
77
|
+
commercialPracticeTreatment?: boolean;
|
|
75
78
|
numberOfReplications?: number;
|
|
76
79
|
sampleWeight?: number;
|
|
77
|
-
harvestedArea?: number;
|
|
78
80
|
defaultMethodClassification?: import("@hestia-earth/schema").CycleDefaultMethodClassification;
|
|
79
81
|
defaultMethodClassificationDescription?: string;
|
|
80
82
|
defaultSource?: import("@hestia-earth/schema").ISourceJSONLD;
|
|
@@ -93,6 +95,7 @@ export declare class CyclesNodesComponent {
|
|
|
93
95
|
updated?: string[];
|
|
94
96
|
updatedVersion?: string[];
|
|
95
97
|
aggregated?: boolean;
|
|
98
|
+
aggregatedDataValidated?: boolean;
|
|
96
99
|
aggregatedVersion?: string;
|
|
97
100
|
aggregatedQualityScore?: number;
|
|
98
101
|
aggregatedQualityScoreMax?: number;
|
|
@@ -107,6 +110,7 @@ export declare class CyclesNodesComponent {
|
|
|
107
110
|
'@type': NodeType;
|
|
108
111
|
type: NodeType;
|
|
109
112
|
dataState: DataState;
|
|
113
|
+
animalId?: string;
|
|
110
114
|
term?: Term;
|
|
111
115
|
description?: string;
|
|
112
116
|
referencePeriod?: import("@hestia-earth/schema").AnimalReferencePeriod;
|
|
@@ -1,23 +1,28 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, computed, input, output, signal } from '@angular/core';
|
|
2
2
|
import { NgTemplateOutlet } from '@angular/common';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { SvgIconComponent } from 'angular-svg-icon';
|
|
4
|
+
import { HeSvgIconsModule } from '../../svg-icons';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class ShelfDialogComponent {
|
|
7
7
|
constructor() {
|
|
8
|
-
this.faXmark = faXmark;
|
|
9
8
|
this.headerTemplate = input();
|
|
10
9
|
this.title = input();
|
|
11
10
|
this.bottom = input('0');
|
|
12
11
|
this.closed = output();
|
|
13
12
|
this.showContent = signal(true);
|
|
14
|
-
this.toggleIcon = computed(() => (this.showContent() ?
|
|
13
|
+
this.toggleIcon = computed(() => (this.showContent() ? 'far-chevron-down' : 'far-chevron-up'));
|
|
14
|
+
}
|
|
15
|
+
expand() {
|
|
16
|
+
this.showContent.set(true);
|
|
17
|
+
}
|
|
18
|
+
collapse() {
|
|
19
|
+
this.showContent.set(false);
|
|
15
20
|
}
|
|
16
21
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: ShelfDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.8", type: ShelfDialogComponent, isStandalone: true, selector: "he-shelf-dialog", inputs: { headerTemplate: { classPropertyName: "headerTemplate", publicName: "headerTemplate", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, bottom: { classPropertyName: "bottom", publicName: "bottom", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed" }, ngImport: i0, template: "<div [style.bottom]=\"bottom()\" class=\"shelf-dialog | is-fixed\">\n <header class=\"shelf-dialog__header | p-4 is-flex is-rounded has-text-white is-align-items-center\">\n <div class=\"is-flex-grow-1\">\n <ng-container [ngTemplateOutlet]=\"headerTemplate() ?? defaultTemplate\"
|
|
22
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.8", type: ShelfDialogComponent, isStandalone: true, selector: "he-shelf-dialog", inputs: { headerTemplate: { classPropertyName: "headerTemplate", publicName: "headerTemplate", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, bottom: { classPropertyName: "bottom", publicName: "bottom", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed" }, ngImport: i0, template: "<div [style.bottom]=\"bottom()\" class=\"shelf-dialog | is-fixed\">\n <header class=\"shelf-dialog__header | p-4 is-flex is-rounded has-text-white is-align-items-center\">\n <div class=\"is-flex-grow-1\">\n <ng-container [ngTemplateOutlet]=\"headerTemplate() ?? defaultTemplate\"/>\n </div>\n <button (click)=\"showContent.set(!showContent())\" class=\"ml-3 dialog-btn has-text-white\">\n <svg-icon class=\"is-size-4\" [name]=\"toggleIcon()\"/>\n </button>\n <button (click)=\"closed.emit()\" class=\"ml-3 dialog-btn has-text-white\">\n <svg-icon class=\"is-size-4\" name=\"far-close\"/>\n </button>\n </header>\n <div [class.max-h-0]=\"!showContent()\" class=\"shelf-dialog__content | has-background-white\">\n <div>\n <div class=\"p-4\">\n <ng-content/>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #defaultTemplate>\n {{ title() }}\n</ng-template>\n", styles: [".shelf-dialog{min-width:360px;right:10%;border-radius:.5em .5em 0 0;overflow:hidden;box-shadow:0 8px 8px #00000026;z-index:9}.shelf-dialog__header{background:#4c7194}.shelf-dialog__content{overflow:hidden;display:grid;grid-template-rows:1fr;transition:grid-template-rows 125ms}.shelf-dialog__content>*{overflow:hidden}.shelf-dialog .dialog-btn{background:transparent;border:none;cursor:pointer;width:1.5rem;height:1.5rem}.shelf-dialog .dialog-btn fa-icon{font-size:1.5rem}.max-h-0{grid-template-rows:0fr}@media screen and (max-width: 767px){.shelf-dialog{width:100dvw;right:0;border-radius:0}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "ngmodule", type: HeSvgIconsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
18
23
|
}
|
|
19
24
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImport: i0, type: ShelfDialogComponent, decorators: [{
|
|
20
25
|
type: Component,
|
|
21
|
-
args: [{ selector: 'he-shelf-dialog', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgTemplateOutlet,
|
|
26
|
+
args: [{ selector: 'he-shelf-dialog', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgTemplateOutlet, SvgIconComponent, HeSvgIconsModule], template: "<div [style.bottom]=\"bottom()\" class=\"shelf-dialog | is-fixed\">\n <header class=\"shelf-dialog__header | p-4 is-flex is-rounded has-text-white is-align-items-center\">\n <div class=\"is-flex-grow-1\">\n <ng-container [ngTemplateOutlet]=\"headerTemplate() ?? defaultTemplate\"/>\n </div>\n <button (click)=\"showContent.set(!showContent())\" class=\"ml-3 dialog-btn has-text-white\">\n <svg-icon class=\"is-size-4\" [name]=\"toggleIcon()\"/>\n </button>\n <button (click)=\"closed.emit()\" class=\"ml-3 dialog-btn has-text-white\">\n <svg-icon class=\"is-size-4\" name=\"far-close\"/>\n </button>\n </header>\n <div [class.max-h-0]=\"!showContent()\" class=\"shelf-dialog__content | has-background-white\">\n <div>\n <div class=\"p-4\">\n <ng-content/>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #defaultTemplate>\n {{ title() }}\n</ng-template>\n", styles: [".shelf-dialog{min-width:360px;right:10%;border-radius:.5em .5em 0 0;overflow:hidden;box-shadow:0 8px 8px #00000026;z-index:9}.shelf-dialog__header{background:#4c7194}.shelf-dialog__content{overflow:hidden;display:grid;grid-template-rows:1fr;transition:grid-template-rows 125ms}.shelf-dialog__content>*{overflow:hidden}.shelf-dialog .dialog-btn{background:transparent;border:none;cursor:pointer;width:1.5rem;height:1.5rem}.shelf-dialog .dialog-btn fa-icon{font-size:1.5rem}.max-h-0{grid-template-rows:0fr}@media screen and (max-width: 767px){.shelf-dialog{width:100dvw;right:0;border-radius:0}}\n"] }]
|
|
22
27
|
}] });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGYtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tb24vc2hlbGYtZGlhbG9nL3NoZWxmLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL3NoZWxmLWRpYWxvZy9zaGVsZi1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBVW5ELE1BQU0sT0FBTyxvQkFBb0I7SUFSakM7UUFTcUIsbUJBQWMsR0FBRyxLQUFLLEVBQW9CLENBQUM7UUFFM0MsVUFBSyxHQUFHLEtBQUssRUFBVSxDQUFDO1FBRXhCLFdBQU0sR0FBRyxLQUFLLENBQWtCLEdBQUcsQ0FBQyxDQUFDO1FBRXJDLFdBQU0sR0FBRyxNQUFNLEVBQVEsQ0FBQztRQUV4QixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUzQixlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO0tBUzlHO0lBUFEsTUFBTTtRQUNYLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs4R0FuQlUsb0JBQW9CO2tHQUFwQixvQkFBb0IsNGZDYmpDLHk1QkF3QkEsNm9CRGJZLGdCQUFnQixvSkFBRSxnQkFBZ0IsOEtBQUUsZ0JBQWdCOzsyRkFFbkQsb0JBQW9CO2tCQVJoQyxTQUFTOytCQUNFLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBvdXRwdXQsIHNpZ25hbCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3ZnSWNvbkNvbXBvbmVudCB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuaW1wb3J0IHsgSGVTdmdJY29uc01vZHVsZSB9IGZyb20gJy4uLy4uL3N2Zy1pY29ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2hlLXNoZWxmLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaGVsZi1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaGVsZi1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ1RlbXBsYXRlT3V0bGV0LCBTdmdJY29uQ29tcG9uZW50LCBIZVN2Z0ljb25zTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBTaGVsZkRpYWxvZ0NvbXBvbmVudCB7XG4gIHByb3RlY3RlZCByZWFkb25seSBoZWFkZXJUZW1wbGF0ZSA9IGlucHV0PFRlbXBsYXRlUmVmPGFueT4+KCk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRpdGxlID0gaW5wdXQ8c3RyaW5nPigpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBib3R0b20gPSBpbnB1dDxzdHJpbmcgfCBudW1iZXI+KCcwJyk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNsb3NlZCA9IG91dHB1dDx2b2lkPigpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBzaG93Q29udGVudCA9IHNpZ25hbCh0cnVlKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdG9nZ2xlSWNvbiA9IGNvbXB1dGVkKCgpID0+ICh0aGlzLnNob3dDb250ZW50KCkgPyAnZmFyLWNoZXZyb24tZG93bicgOiAnZmFyLWNoZXZyb24tdXAnKSk7XG5cbiAgcHVibGljIGV4cGFuZCgpIHtcbiAgICB0aGlzLnNob3dDb250ZW50LnNldCh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBjb2xsYXBzZSgpIHtcbiAgICB0aGlzLnNob3dDb250ZW50LnNldChmYWxzZSk7XG4gIH1cbn1cbiIsIjxkaXYgW3N0eWxlLmJvdHRvbV09XCJib3R0b20oKVwiIGNsYXNzPVwic2hlbGYtZGlhbG9nIHwgaXMtZml4ZWRcIj5cbiAgPGhlYWRlciBjbGFzcz1cInNoZWxmLWRpYWxvZ19faGVhZGVyIHwgcC00IGlzLWZsZXggaXMtcm91bmRlZCBoYXMtdGV4dC13aGl0ZSBpcy1hbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiaXMtZmxleC1ncm93LTFcIj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaGVhZGVyVGVtcGxhdGUoKSA/PyBkZWZhdWx0VGVtcGxhdGVcIi8+XG4gICAgPC9kaXY+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwic2hvd0NvbnRlbnQuc2V0KCFzaG93Q29udGVudCgpKVwiIGNsYXNzPVwibWwtMyBkaWFsb2ctYnRuIGhhcy10ZXh0LXdoaXRlXCI+XG4gICAgICA8c3ZnLWljb24gY2xhc3M9XCJpcy1zaXplLTRcIiBbbmFtZV09XCJ0b2dnbGVJY29uKClcIi8+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiY2xvc2VkLmVtaXQoKVwiIGNsYXNzPVwibWwtMyBkaWFsb2ctYnRuIGhhcy10ZXh0LXdoaXRlXCI+XG4gICAgICA8c3ZnLWljb24gY2xhc3M9XCJpcy1zaXplLTRcIiBuYW1lPVwiZmFyLWNsb3NlXCIvPlxuICAgIDwvYnV0dG9uPlxuICA8L2hlYWRlcj5cbiAgPGRpdiBbY2xhc3MubWF4LWgtMF09XCIhc2hvd0NvbnRlbnQoKVwiIGNsYXNzPVwic2hlbGYtZGlhbG9nX19jb250ZW50IHwgaGFzLWJhY2tncm91bmQtd2hpdGVcIj5cbiAgICA8ZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInAtNFwiPlxuICAgICAgICA8bmctY29udGVudC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNkZWZhdWx0VGVtcGxhdGU+XG4gIHt7IHRpdGxlKCkgfX1cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|