ca-components 1.7.996 → 1.7.997
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/assets/scss/input-dropdown-test.scss +17 -0
- package/esm2022/lib/components/ca-input-dropdown/components/ca-input-dropdown-svgtext-template/ca-input-dropdown-svgtext-template.component.mjs +3 -3
- package/esm2022/lib/components/ca-input-dropdown-test/ca-input-dropdown-test.component.mjs +2 -2
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-dispatcher/ca-input-dropdown-load-dispatcher-item/ca-input-dropdown-load-dispatcher-item.component.mjs +3 -3
- package/esm2022/lib/components/ca-input-dropdown-test/interfaces/input-dropdown-option.interface.mjs +1 -1
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/input-dropdown-get-icon.pipe.mjs +5 -2
- package/esm2022/lib/pipes/ca-svg.pipe.mjs +2 -2
- package/fesm2022/ca-components.mjs +11 -8
- package/fesm2022/ca-components.mjs.map +1 -1
- package/lib/components/ca-input-dropdown-test/interfaces/input-dropdown-option.interface.d.ts +2 -0
- package/lib/pipes/ca-svg.pipe.d.ts +2 -1
- package/package.json +1 -1
|
@@ -392,6 +392,22 @@
|
|
|
392
392
|
.svg-text-template {
|
|
393
393
|
display: flex;
|
|
394
394
|
align-items: center;
|
|
395
|
+
&.container {
|
|
396
|
+
padding: 0 !important;
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
.hazardous.hazardous-dropdown {
|
|
400
|
+
.svgtext-template-text {
|
|
401
|
+
padding-left: 25px;
|
|
402
|
+
&::after {
|
|
403
|
+
position: absolute;
|
|
404
|
+
content: url('/assets/ca-components/svg/common/trailers/ic_hazardous.svg');
|
|
405
|
+
width: 14px;
|
|
406
|
+
height: 10px;
|
|
407
|
+
left: 0;
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
}
|
|
395
411
|
|
|
396
412
|
&.hazardous {
|
|
397
413
|
display: flex;
|
|
@@ -429,6 +445,7 @@
|
|
|
429
445
|
|
|
430
446
|
&.container {
|
|
431
447
|
right: 13px;
|
|
448
|
+
padding: 0 !important;
|
|
432
449
|
}
|
|
433
450
|
}
|
|
434
451
|
|
|
@@ -29,7 +29,7 @@ export class CaInputDropdownSvgtextTemplateComponent {
|
|
|
29
29
|
this.onActiveItem.emit(option);
|
|
30
30
|
}
|
|
31
31
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CaInputDropdownSvgtextTemplateComponent, deps: [{ token: i1.ImageBase64Service }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
32
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CaInputDropdownSvgtextTemplateComponent, isStandalone: true, selector: "app-ca-input-dropdown-svgtext-template", inputs: { options: "options", activeItem: "activeItem", getSuperControl: "getSuperControl", inputConfig: "inputConfig" }, outputs: { onActiveItem: "onActiveItem" }, ngImport: i0, template: "@for (option of options; let indx = $index; track indx) {\n <div\n (click)=\"onActiveItemEmit(option)\"\n [ngClass]=\"\n option | inputDropdownSvgtextTemplateContainer: options : activeItem\n \"\n class=\"dropdown-option svg-text-template {{ option?.subFolder }} {{\n option?.name?.trim()?.replace(' ', '')?.toLowerCase()\n }} {{ inputConfig.customClass }}\"\n >\n @if (!option?.isDriver) {\n <svg-icon\n [ngClass]=\"\n option\n | inputDropdownSvgtextTemplateIcon\n : activeItem\n : inputConfig\n \"\n [src]=\"\n option?.logoName | caSvg: option?.folder : option?.subFolder\n \"\n class=\"svgtext-template-logo {{\n option?.name?.trim()?.replace(' ', '')?.toLowerCase()\n }}\"\n ></svg-icon>\n }\n\n @if (option.logoName && option?.isDriver) {\n <img\n [alt]=\"option?.name\"\n [ngClass]=\"{ active: option.id === activeItem?.id }\"\n [src]=\"this.imageBase64Service.sanitizer(option.logoName)\"\n [ngStyle]=\"{ 'margin-right': '6px' }\"\n class=\"svg-template-logo\"\n />\n }\n\n @if (!option.logoName && option?.isDriver) {\n <div class=\"no-profile-image\" [ngStyle]=\"{ 'margin-right': '6px' }\">\n <app-ca-profile-image\n [indx]=\"0\"\n [name]=\"option?.name!\"\n [size]=\"'small'\"\n ></app-ca-profile-image>\n </div>\n }\n\n <!-- Text -->\n @if (inputConfig.statusStyle) {\n <ca-load-status-string [status]=\"option\"></ca-load-status-string>\n }\n\n @if (!inputConfig.statusStyle) {\n <div\n [innerHtml]=\"\n option?.number\n ? (option.number\n | caHighlight\n : [\n {\n index: 45632,\n text: getSuperControl?.value,\n },\n ])\n : (option?.name\n | caHighlight\n : [\n {\n index: 45632,\n text: getSuperControl?.value,\n },\n ])\n \"\n [ngClass]=\"{\n 'truck-text': option?.subFolder === 'trucks',\n 'flex-1': option?.additionalText,\n }\"\n [ngStyle]=\"true ? (option?.name! | loadStatusColor) : {}\"\n class=\"svgtext-template-text\"\n ></div>\n }\n\n <!-- Additional Text -->\n @if (option?.additionalText) {\n <div\n [innerHtml]=\"\n option.additionalText\n | caHighlight\n : [{ index: 45632, text: getSuperControl?.value }]\n \"\n class=\"svgtext-template-text additional-text\"\n ></div>\n }\n\n <!-- Plus Icon -->\n @if (option?.type === 'add-new') {\n <svg-icon\n class=\"plus-icon svg-size-14\"\n [src]=\"inputDropdownSvgRoutes.plusSvg\"\n ></svg-icon>\n }\n </div>\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "component", type: i3.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "component", type:
|
|
32
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CaInputDropdownSvgtextTemplateComponent, isStandalone: true, selector: "app-ca-input-dropdown-svgtext-template", inputs: { options: "options", activeItem: "activeItem", getSuperControl: "getSuperControl", inputConfig: "inputConfig" }, outputs: { onActiveItem: "onActiveItem" }, ngImport: i0, template: "@for (option of options; let indx = $index; track indx) {\n <div\n (click)=\"onActiveItemEmit(option)\"\n [ngClass]=\"\n option | inputDropdownSvgtextTemplateContainer: options : activeItem\n \"\n class=\"dropdown-option svg-text-template {{ option?.subFolder }} {{\n option?.name?.trim()?.replace(' ', '')?.toLowerCase()\n }} {{ inputConfig.customClass }}\"\n >\n @if (!option?.isDriver) {\n <svg-icon\n [ngClass]=\"\n option\n | inputDropdownSvgtextTemplateIcon\n : activeItem\n : inputConfig\n \"\n [src]=\"\n option?.logoName | caSvg: option?.folder : option?.subFolder : option\n \"\n class=\"svgtext-template-logo {{\n option?.name?.trim()?.replace(' ', '')?.toLowerCase()\n }}\"\n ></svg-icon>\n }\n\n @if (option.logoName && option?.isDriver) {\n <img\n [alt]=\"option?.name\"\n [ngClass]=\"{ active: option.id === activeItem?.id }\"\n [src]=\"this.imageBase64Service.sanitizer(option.logoName)\"\n [ngStyle]=\"{ 'margin-right': '6px' }\"\n class=\"svg-template-logo\"\n />\n }\n\n @if (!option.logoName && option?.isDriver) {\n <div class=\"no-profile-image\" [ngStyle]=\"{ 'margin-right': '6px' }\">\n <app-ca-profile-image\n [indx]=\"0\"\n [name]=\"option?.name!\"\n [size]=\"'small'\"\n ></app-ca-profile-image>\n </div>\n }\n\n <!-- Text -->\n @if (inputConfig.statusStyle) {\n <ca-load-status-string [status]=\"option\"></ca-load-status-string>\n }\n\n @if (!inputConfig.statusStyle) {\n <div\n [innerHtml]=\"\n option?.number\n ? (option.number\n | caHighlight\n : [\n {\n index: 45632,\n text: getSuperControl?.value,\n },\n ])\n : (option?.name\n | caHighlight\n : [\n {\n index: 45632,\n text: getSuperControl?.value,\n },\n ])\n \"\n [ngClass]=\"{\n 'truck-text': option?.subFolder === 'trucks',\n 'flex-1': option?.additionalText,\n }\"\n [ngStyle]=\"true ? (option?.name! | loadStatusColor) : {}\"\n class=\"svgtext-template-text\"\n ></div>\n }\n\n <!-- Additional Text -->\n @if (option?.additionalText) {\n <div\n [innerHtml]=\"\n option.additionalText\n | caHighlight\n : [{ index: 45632, text: getSuperControl?.value }]\n \"\n class=\"svgtext-template-text additional-text\"\n ></div>\n }\n\n <!-- Plus Icon -->\n @if (option?.type === 'add-new') {\n <svg-icon\n class=\"plus-icon svg-size-14\"\n [src]=\"inputDropdownSvgRoutes.plusSvg\"\n ></svg-icon>\n }\n </div>\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "component", type: i3.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "component", type:
|
|
33
33
|
// Component
|
|
34
34
|
CaProfileImageComponent, selector: "app-ca-profile-image", inputs: ["indx", "avatarImg", "avatarColor", "textShortName", "name", "isRound", "size", "height", "fontSize", "isHoverEffect"] }, { kind: "component", type: CaLoadStatusStringComponent, selector: "ca-load-status-string", inputs: ["status", "justifyStart", "isDetailsLayout", "isDispatchHistoryModalLayout", "isDropdownColor", "statusOrder", "isDispatch", "isDarkColor"] }, { kind: "pipe", type:
|
|
35
35
|
// Pipe
|
|
@@ -49,7 +49,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
49
49
|
LoadStatusColorPipe,
|
|
50
50
|
InputDropdownSvgtextTemplateIconPipe,
|
|
51
51
|
InputDropdownSvgtextTemplateContainerPipe,
|
|
52
|
-
], template: "@for (option of options; let indx = $index; track indx) {\n <div\n (click)=\"onActiveItemEmit(option)\"\n [ngClass]=\"\n option | inputDropdownSvgtextTemplateContainer: options : activeItem\n \"\n class=\"dropdown-option svg-text-template {{ option?.subFolder }} {{\n option?.name?.trim()?.replace(' ', '')?.toLowerCase()\n }} {{ inputConfig.customClass }}\"\n >\n @if (!option?.isDriver) {\n <svg-icon\n [ngClass]=\"\n option\n | inputDropdownSvgtextTemplateIcon\n : activeItem\n : inputConfig\n \"\n [src]=\"\n option?.logoName | caSvg: option?.folder : option?.subFolder\n \"\n class=\"svgtext-template-logo {{\n option?.name?.trim()?.replace(' ', '')?.toLowerCase()\n }}\"\n ></svg-icon>\n }\n\n @if (option.logoName && option?.isDriver) {\n <img\n [alt]=\"option?.name\"\n [ngClass]=\"{ active: option.id === activeItem?.id }\"\n [src]=\"this.imageBase64Service.sanitizer(option.logoName)\"\n [ngStyle]=\"{ 'margin-right': '6px' }\"\n class=\"svg-template-logo\"\n />\n }\n\n @if (!option.logoName && option?.isDriver) {\n <div class=\"no-profile-image\" [ngStyle]=\"{ 'margin-right': '6px' }\">\n <app-ca-profile-image\n [indx]=\"0\"\n [name]=\"option?.name!\"\n [size]=\"'small'\"\n ></app-ca-profile-image>\n </div>\n }\n\n <!-- Text -->\n @if (inputConfig.statusStyle) {\n <ca-load-status-string [status]=\"option\"></ca-load-status-string>\n }\n\n @if (!inputConfig.statusStyle) {\n <div\n [innerHtml]=\"\n option?.number\n ? (option.number\n | caHighlight\n : [\n {\n index: 45632,\n text: getSuperControl?.value,\n },\n ])\n : (option?.name\n | caHighlight\n : [\n {\n index: 45632,\n text: getSuperControl?.value,\n },\n ])\n \"\n [ngClass]=\"{\n 'truck-text': option?.subFolder === 'trucks',\n 'flex-1': option?.additionalText,\n }\"\n [ngStyle]=\"true ? (option?.name! | loadStatusColor) : {}\"\n class=\"svgtext-template-text\"\n ></div>\n }\n\n <!-- Additional Text -->\n @if (option?.additionalText) {\n <div\n [innerHtml]=\"\n option.additionalText\n | caHighlight\n : [{ index: 45632, text: getSuperControl?.value }]\n \"\n class=\"svgtext-template-text additional-text\"\n ></div>\n }\n\n <!-- Plus Icon -->\n @if (option?.type === 'add-new') {\n <svg-icon\n class=\"plus-icon svg-size-14\"\n [src]=\"inputDropdownSvgRoutes.plusSvg\"\n ></svg-icon>\n }\n </div>\n}\n" }]
|
|
52
|
+
], template: "@for (option of options; let indx = $index; track indx) {\n <div\n (click)=\"onActiveItemEmit(option)\"\n [ngClass]=\"\n option | inputDropdownSvgtextTemplateContainer: options : activeItem\n \"\n class=\"dropdown-option svg-text-template {{ option?.subFolder }} {{\n option?.name?.trim()?.replace(' ', '')?.toLowerCase()\n }} {{ inputConfig.customClass }}\"\n >\n @if (!option?.isDriver) {\n <svg-icon\n [ngClass]=\"\n option\n | inputDropdownSvgtextTemplateIcon\n : activeItem\n : inputConfig\n \"\n [src]=\"\n option?.logoName | caSvg: option?.folder : option?.subFolder : option\n \"\n class=\"svgtext-template-logo {{\n option?.name?.trim()?.replace(' ', '')?.toLowerCase()\n }}\"\n ></svg-icon>\n }\n\n @if (option.logoName && option?.isDriver) {\n <img\n [alt]=\"option?.name\"\n [ngClass]=\"{ active: option.id === activeItem?.id }\"\n [src]=\"this.imageBase64Service.sanitizer(option.logoName)\"\n [ngStyle]=\"{ 'margin-right': '6px' }\"\n class=\"svg-template-logo\"\n />\n }\n\n @if (!option.logoName && option?.isDriver) {\n <div class=\"no-profile-image\" [ngStyle]=\"{ 'margin-right': '6px' }\">\n <app-ca-profile-image\n [indx]=\"0\"\n [name]=\"option?.name!\"\n [size]=\"'small'\"\n ></app-ca-profile-image>\n </div>\n }\n\n <!-- Text -->\n @if (inputConfig.statusStyle) {\n <ca-load-status-string [status]=\"option\"></ca-load-status-string>\n }\n\n @if (!inputConfig.statusStyle) {\n <div\n [innerHtml]=\"\n option?.number\n ? (option.number\n | caHighlight\n : [\n {\n index: 45632,\n text: getSuperControl?.value,\n },\n ])\n : (option?.name\n | caHighlight\n : [\n {\n index: 45632,\n text: getSuperControl?.value,\n },\n ])\n \"\n [ngClass]=\"{\n 'truck-text': option?.subFolder === 'trucks',\n 'flex-1': option?.additionalText,\n }\"\n [ngStyle]=\"true ? (option?.name! | loadStatusColor) : {}\"\n class=\"svgtext-template-text\"\n ></div>\n }\n\n <!-- Additional Text -->\n @if (option?.additionalText) {\n <div\n [innerHtml]=\"\n option.additionalText\n | caHighlight\n : [{ index: 45632, text: getSuperControl?.value }]\n \"\n class=\"svgtext-template-text additional-text\"\n ></div>\n }\n\n <!-- Plus Icon -->\n @if (option?.type === 'add-new') {\n <svg-icon\n class=\"plus-icon svg-size-14\"\n [src]=\"inputDropdownSvgRoutes.plusSvg\"\n ></svg-icon>\n }\n </div>\n}\n" }]
|
|
53
53
|
}], ctorParameters: () => [{ type: i1.ImageBase64Service }], propDecorators: { options: [{
|
|
54
54
|
type: Input
|
|
55
55
|
}], activeItem: [{
|
|
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
61
61
|
}], onActiveItem: [{
|
|
62
62
|
type: Output
|
|
63
63
|
}] } });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtaW5wdXQtZHJvcGRvd24tc3ZndGV4dC10ZW1wbGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1pbnB1dC1kcm9wZG93bi9jb21wb25lbnRzL2NhLWlucHV0LWRyb3Bkb3duLXN2Z3RleHQtdGVtcGxhdGUvY2EtaW5wdXQtZHJvcGRvd24tc3ZndGV4dC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1pbnB1dC1kcm9wZG93bi9jb21wb25lbnRzL2NhLWlucHV0LWRyb3Bkb3duLXN2Z3RleHQtdGVtcGxhdGUvY2EtaW5wdXQtZHJvcGRvd24tc3ZndGV4dC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd2RSxRQUFRO0FBQ1IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQy9FLE9BQU8sRUFDTCx5Q0FBeUMsRUFDekMsb0NBQW9DLEdBQ3JDLE1BQU0sYUFBYSxDQUFDO0FBRXJCLFlBQVk7QUFDWixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQU03RyxVQUFVO0FBQ1YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFeEQsYUFBYTtBQUNiLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7OztBQTBCMUYsTUFBTSxPQUFPLHVDQUF1QztJQVVsRCxZQUFtQixrQkFBc0M7UUFBdEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUovQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7UUFFbEQsMkJBQXNCLEdBQUcsc0JBQXNCLENBQUM7SUFFSyxDQUFDO0lBRXRELFFBQVEsQ0FBQyxLQUFhLEVBQUUsSUFBaUI7UUFDOUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxNQUFtQjtRQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDOytHQWxCVSx1Q0FBdUM7bUdBQXZDLHVDQUF1Qyx1UUNuRHBELDh0SEF1R0EseUREbkVJLFlBQVksaU5BQ1osb0JBQW9CO2dCQUVwQixZQUFZO2dCQUNaLHVCQUF1QixrTUFDdkIsMkJBQTJCO2dCQUUzQixPQUFPO2dCQUNQLG1CQUFtQiwrQ0FDbkIsU0FBUyx5Q0FDVCxtQkFBbUIsbURBQ25CLG9DQUFvQyxvRUFDcEMseUNBQXlDOzs0RkFHaEMsdUNBQXVDO2tCQXJCbkQsU0FBUzsrQkFDRSx3Q0FBd0MsY0FHdEMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUVwQixZQUFZO3dCQUNaLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3dCQUUzQixPQUFPO3dCQUNQLG1CQUFtQjt3QkFDbkIsU0FBUzt3QkFDVCxtQkFBbUI7d0JBQ25CLG9DQUFvQzt3QkFDcEMseUNBQXlDO3FCQUMxQzt1RkFHUSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vLyBwaXBlc1xuaW1wb3J0IHsgSGlnaGxpZ2h0U2VhcmNoUGlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL3BpcGVzL2hpZ2hsaWdodC1zZWFyY2gucGlwZSc7XG5pbXBvcnQgeyBDYVN2Z1BpcGUgfSBmcm9tICcuLi8uLi8uLi8uLi9waXBlcy9jYS1zdmcucGlwZSc7XG5pbXBvcnQgeyBMb2FkU3RhdHVzQ29sb3JQaXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vcGlwZXMvbG9hZC1zdGF0dXMtY29sb3IucGlwZSc7XG5pbXBvcnQge1xuICBJbnB1dERyb3Bkb3duU3ZndGV4dFRlbXBsYXRlQ29udGFpbmVyUGlwZSxcbiAgSW5wdXREcm9wZG93blN2Z3RleHRUZW1wbGF0ZUljb25QaXBlLFxufSBmcm9tICcuLi8uLi9waXBlcyc7XG5cbi8vIGNvbXBvbmVudFxuaW1wb3J0IHsgQ2FQcm9maWxlSW1hZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jYS1wcm9maWxlLWltYWdlL2NhLXByb2ZpbGUtaW1hZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IENhTG9hZFN0YXR1c1N0cmluZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NhLWxvYWQtc3RhdHVzLXN0cmluZy9jYS1sb2FkLXN0YXR1cy1zdHJpbmcuY29tcG9uZW50JztcblxuLy8gbW9kZWxzXG5pbXBvcnQgeyBPcHRpb25Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9pbnB1dC1kcm9wZG93bi1vcHRpb24ubW9kZWwnO1xuaW1wb3J0IHsgSUNhSW5wdXQgfSBmcm9tICcuLi8uLi8uLi9jYS1pbnB1dC9jb25maWcnO1xuXG4vLyBtb2R1bGVzXG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuXG4vLyBzdmcgcm91dGVzXG5pbXBvcnQgeyBJbnB1dERyb3Bkb3duU3ZnUm91dGVzIH0gZnJvbSAnLi4vLi4vdXRpbHMvc3ZnLXJvdXRlcy9pbnB1dC1kcm9wZG93bi1zdmctcm91dGVzJztcblxuLy8gc2VydmljZXNcbmltcG9ydCB7IEltYWdlQmFzZTY0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2ltYWdlLWJhc2U2NC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWNhLWlucHV0LWRyb3Bkb3duLXN2Z3RleHQtdGVtcGxhdGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2EtaW5wdXQtZHJvcGRvd24tc3ZndGV4dC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhLWlucHV0LWRyb3Bkb3duLXN2Z3RleHQtdGVtcGxhdGUuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBbmd1bGFyU3ZnSWNvbk1vZHVsZSxcblxuICAgIC8vIENvbXBvbmVudFxuICAgIENhUHJvZmlsZUltYWdlQ29tcG9uZW50LFxuICAgIENhTG9hZFN0YXR1c1N0cmluZ0NvbXBvbmVudCxcblxuICAgIC8vIFBpcGVcbiAgICBIaWdobGlnaHRTZWFyY2hQaXBlLFxuICAgIENhU3ZnUGlwZSxcbiAgICBMb2FkU3RhdHVzQ29sb3JQaXBlLFxuICAgIElucHV0RHJvcGRvd25Tdmd0ZXh0VGVtcGxhdGVJY29uUGlwZSxcbiAgICBJbnB1dERyb3Bkb3duU3ZndGV4dFRlbXBsYXRlQ29udGFpbmVyUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FJbnB1dERyb3Bkb3duU3ZndGV4dFRlbXBsYXRlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgb3B0aW9ucyE6IE9wdGlvbk1vZGVsW107XG4gIEBJbnB1dCgpIGFjdGl2ZUl0ZW0hOiBPcHRpb25Nb2RlbCB8IG51bGw7XG4gIEBJbnB1dCgpIGdldFN1cGVyQ29udHJvbCE6IEFic3RyYWN0Q29udHJvbDxhbnksIGFueT4gfCBudWxsO1xuICBASW5wdXQoKSBpbnB1dENvbmZpZyE6IElDYUlucHV0O1xuXG4gIEBPdXRwdXQoKSBvbkFjdGl2ZUl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPE9wdGlvbk1vZGVsPigpO1xuXG4gIHB1YmxpYyBpbnB1dERyb3Bkb3duU3ZnUm91dGVzID0gSW5wdXREcm9wZG93blN2Z1JvdXRlcztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaW1hZ2VCYXNlNjRTZXJ2aWNlOiBJbWFnZUJhc2U2NFNlcnZpY2UpIHt9XG5cbiAgcHVibGljIGlkZW50aXR5KGluZGV4OiBudW1iZXIsIGl0ZW06IE9wdGlvbk1vZGVsKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gaXRlbS5pZDtcbiAgfVxuXG4gIHB1YmxpYyBvbkFjdGl2ZUl0ZW1FbWl0KG9wdGlvbjogT3B0aW9uTW9kZWwpOiB2b2lkIHtcbiAgICB0aGlzLm9uQWN0aXZlSXRlbS5lbWl0KG9wdGlvbik7XG4gIH1cbn1cbiIsIkBmb3IgKG9wdGlvbiBvZiBvcHRpb25zOyBsZXQgaW5keCA9ICRpbmRleDsgdHJhY2sgaW5keCkge1xuICAgIDxkaXZcbiAgICAgICAgKGNsaWNrKT1cIm9uQWN0aXZlSXRlbUVtaXQob3B0aW9uKVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIlxuICAgICAgICAgICAgb3B0aW9uIHwgaW5wdXREcm9wZG93blN2Z3RleHRUZW1wbGF0ZUNvbnRhaW5lcjogb3B0aW9ucyA6IGFjdGl2ZUl0ZW1cbiAgICAgICAgXCJcbiAgICAgICAgY2xhc3M9XCJkcm9wZG93bi1vcHRpb24gc3ZnLXRleHQtdGVtcGxhdGUge3sgb3B0aW9uPy5zdWJGb2xkZXIgfX0ge3tcbiAgICAgICAgICAgIG9wdGlvbj8ubmFtZT8udHJpbSgpPy5yZXBsYWNlKCcgJywgJycpPy50b0xvd2VyQ2FzZSgpXG4gICAgICAgIH19IHt7IGlucHV0Q29uZmlnLmN1c3RvbUNsYXNzIH19XCJcbiAgICA+XG4gICAgICAgIEBpZiAoIW9wdGlvbj8uaXNEcml2ZXIpIHtcbiAgICAgICAgICAgIDxzdmctaWNvblxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIlxuICAgICAgICAgICAgICAgICAgICBvcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIHwgaW5wdXREcm9wZG93blN2Z3RleHRUZW1wbGF0ZUljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGFjdGl2ZUl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGlucHV0Q29uZmlnXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cIlxuICAgICAgICAgICAgICAgICAgICBvcHRpb24/LmxvZ29OYW1lIHwgY2FTdmc6IG9wdGlvbj8uZm9sZGVyIDogb3B0aW9uPy5zdWJGb2xkZXJcbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic3ZndGV4dC10ZW1wbGF0ZS1sb2dvIHt7XG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbj8ubmFtZT8udHJpbSgpPy5yZXBsYWNlKCcgJywgJycpPy50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgfX1cIlxuICAgICAgICAgICAgPjwvc3ZnLWljb24+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKG9wdGlvbi5sb2dvTmFtZSAmJiBvcHRpb24/LmlzRHJpdmVyKSB7XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgW2FsdF09XCJvcHRpb24/Lm5hbWVcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiBvcHRpb24uaWQgPT09IGFjdGl2ZUl0ZW0/LmlkIH1cIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwidGhpcy5pbWFnZUJhc2U2NFNlcnZpY2Uuc2FuaXRpemVyKG9wdGlvbi5sb2dvTmFtZSlcIlxuICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgJ21hcmdpbi1yaWdodCc6ICc2cHgnIH1cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic3ZnLXRlbXBsYXRlLWxvZ29cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoIW9wdGlvbi5sb2dvTmFtZSAmJiBvcHRpb24/LmlzRHJpdmVyKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm8tcHJvZmlsZS1pbWFnZVwiIFtuZ1N0eWxlXT1cInsgJ21hcmdpbi1yaWdodCc6ICc2cHgnIH1cIj5cbiAgICAgICAgICAgICAgICA8YXBwLWNhLXByb2ZpbGUtaW1hZ2VcbiAgICAgICAgICAgICAgICAgICAgW2luZHhdPVwiMFwiXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cIm9wdGlvbj8ubmFtZSFcIlxuICAgICAgICAgICAgICAgICAgICBbc2l6ZV09XCInc21hbGwnXCJcbiAgICAgICAgICAgICAgICA+PC9hcHAtY2EtcHJvZmlsZS1pbWFnZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgPCEtLSBUZXh0IC0tPlxuICAgICAgICBAaWYgKGlucHV0Q29uZmlnLnN0YXR1c1N0eWxlKSB7XG4gICAgICAgICAgICA8Y2EtbG9hZC1zdGF0dXMtc3RyaW5nIFtzdGF0dXNdPVwib3B0aW9uXCI+PC9jYS1sb2FkLXN0YXR1cy1zdHJpbmc+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKCFpbnB1dENvbmZpZy5zdGF0dXNTdHlsZSkge1xuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIFtpbm5lckh0bWxdPVwiXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbj8ubnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICA/IChvcHRpb24ubnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHwgY2FIaWdobGlnaHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiA0NTYzMixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiBnZXRTdXBlckNvbnRyb2w/LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgIDogKG9wdGlvbj8ubmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgICB8IGNhSGlnaGxpZ2h0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogNDU2MzIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogZ2V0U3VwZXJDb250cm9sPy52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICd0cnVjay10ZXh0Jzogb3B0aW9uPy5zdWJGb2xkZXIgPT09ICd0cnVja3MnLFxuICAgICAgICAgICAgICAgICAgICAnZmxleC0xJzogb3B0aW9uPy5hZGRpdGlvbmFsVGV4dCxcbiAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ0cnVlID8gKG9wdGlvbj8ubmFtZSEgfCBsb2FkU3RhdHVzQ29sb3IpIDoge31cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic3ZndGV4dC10ZW1wbGF0ZS10ZXh0XCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDwhLS0gQWRkaXRpb25hbCBUZXh0IC0tPlxuICAgICAgICBAaWYgKG9wdGlvbj8uYWRkaXRpb25hbFRleHQpIHtcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBbaW5uZXJIdG1sXT1cIlxuICAgICAgICAgICAgICAgICAgICBvcHRpb24uYWRkaXRpb25hbFRleHRcbiAgICAgICAgICAgICAgICAgICAgICAgIHwgY2FIaWdobGlnaHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFt7IGluZGV4OiA0NTYzMiwgdGV4dDogZ2V0U3VwZXJDb250cm9sPy52YWx1ZSB9XVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzdmd0ZXh0LXRlbXBsYXRlLXRleHQgYWRkaXRpb25hbC10ZXh0XCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDwhLS0gUGx1cyBJY29uIC0tPlxuICAgICAgICBAaWYgKG9wdGlvbj8udHlwZSA9PT0gJ2FkZC1uZXcnKSB7XG4gICAgICAgICAgICA8c3ZnLWljb25cbiAgICAgICAgICAgICAgICBjbGFzcz1cInBsdXMtaWNvbiBzdmctc2l6ZS0xNFwiXG4gICAgICAgICAgICAgICAgW3NyY109XCJpbnB1dERyb3Bkb3duU3ZnUm91dGVzLnBsdXNTdmdcIlxuICAgICAgICAgICAgPjwvc3ZnLWljb24+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn1cbiJdfQ==
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtaW5wdXQtZHJvcGRvd24tc3ZndGV4dC10ZW1wbGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1pbnB1dC1kcm9wZG93bi9jb21wb25lbnRzL2NhLWlucHV0LWRyb3Bkb3duLXN2Z3RleHQtdGVtcGxhdGUvY2EtaW5wdXQtZHJvcGRvd24tc3ZndGV4dC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1pbnB1dC1kcm9wZG93bi9jb21wb25lbnRzL2NhLWlucHV0LWRyb3Bkb3duLXN2Z3RleHQtdGVtcGxhdGUvY2EtaW5wdXQtZHJvcGRvd24tc3ZndGV4dC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd2RSxRQUFRO0FBQ1IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQy9FLE9BQU8sRUFDTCx5Q0FBeUMsRUFDekMsb0NBQW9DLEdBQ3JDLE1BQU0sYUFBYSxDQUFDO0FBRXJCLFlBQVk7QUFDWixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQU03RyxVQUFVO0FBQ1YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFeEQsYUFBYTtBQUNiLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7OztBQTBCMUYsTUFBTSxPQUFPLHVDQUF1QztJQVVsRCxZQUFtQixrQkFBc0M7UUFBdEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUovQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFlLENBQUM7UUFFbEQsMkJBQXNCLEdBQUcsc0JBQXNCLENBQUM7SUFFSyxDQUFDO0lBRXRELFFBQVEsQ0FBQyxLQUFhLEVBQUUsSUFBaUI7UUFDOUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxNQUFtQjtRQUN6QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDOytHQWxCVSx1Q0FBdUM7bUdBQXZDLHVDQUF1Qyx1UUNuRHBELHV1SEF1R0EseUREbkVJLFlBQVksaU5BQ1osb0JBQW9CO2dCQUVwQixZQUFZO2dCQUNaLHVCQUF1QixrTUFDdkIsMkJBQTJCO2dCQUUzQixPQUFPO2dCQUNQLG1CQUFtQiwrQ0FDbkIsU0FBUyx5Q0FDVCxtQkFBbUIsbURBQ25CLG9DQUFvQyxvRUFDcEMseUNBQXlDOzs0RkFHaEMsdUNBQXVDO2tCQXJCbkQsU0FBUzsrQkFDRSx3Q0FBd0MsY0FHdEMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUVwQixZQUFZO3dCQUNaLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3dCQUUzQixPQUFPO3dCQUNQLG1CQUFtQjt3QkFDbkIsU0FBUzt3QkFDVCxtQkFBbUI7d0JBQ25CLG9DQUFvQzt3QkFDcEMseUNBQXlDO3FCQUMxQzt1RkFHUSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vLyBwaXBlc1xuaW1wb3J0IHsgSGlnaGxpZ2h0U2VhcmNoUGlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL3BpcGVzL2hpZ2hsaWdodC1zZWFyY2gucGlwZSc7XG5pbXBvcnQgeyBDYVN2Z1BpcGUgfSBmcm9tICcuLi8uLi8uLi8uLi9waXBlcy9jYS1zdmcucGlwZSc7XG5pbXBvcnQgeyBMb2FkU3RhdHVzQ29sb3JQaXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vcGlwZXMvbG9hZC1zdGF0dXMtY29sb3IucGlwZSc7XG5pbXBvcnQge1xuICBJbnB1dERyb3Bkb3duU3ZndGV4dFRlbXBsYXRlQ29udGFpbmVyUGlwZSxcbiAgSW5wdXREcm9wZG93blN2Z3RleHRUZW1wbGF0ZUljb25QaXBlLFxufSBmcm9tICcuLi8uLi9waXBlcyc7XG5cbi8vIGNvbXBvbmVudFxuaW1wb3J0IHsgQ2FQcm9maWxlSW1hZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jYS1wcm9maWxlLWltYWdlL2NhLXByb2ZpbGUtaW1hZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IENhTG9hZFN0YXR1c1N0cmluZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NhLWxvYWQtc3RhdHVzLXN0cmluZy9jYS1sb2FkLXN0YXR1cy1zdHJpbmcuY29tcG9uZW50JztcblxuLy8gbW9kZWxzXG5pbXBvcnQgeyBPcHRpb25Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9pbnB1dC1kcm9wZG93bi1vcHRpb24ubW9kZWwnO1xuaW1wb3J0IHsgSUNhSW5wdXQgfSBmcm9tICcuLi8uLi8uLi9jYS1pbnB1dC9jb25maWcnO1xuXG4vLyBtb2R1bGVzXG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuXG4vLyBzdmcgcm91dGVzXG5pbXBvcnQgeyBJbnB1dERyb3Bkb3duU3ZnUm91dGVzIH0gZnJvbSAnLi4vLi4vdXRpbHMvc3ZnLXJvdXRlcy9pbnB1dC1kcm9wZG93bi1zdmctcm91dGVzJztcblxuLy8gc2VydmljZXNcbmltcG9ydCB7IEltYWdlQmFzZTY0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2ltYWdlLWJhc2U2NC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWNhLWlucHV0LWRyb3Bkb3duLXN2Z3RleHQtdGVtcGxhdGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2EtaW5wdXQtZHJvcGRvd24tc3ZndGV4dC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhLWlucHV0LWRyb3Bkb3duLXN2Z3RleHQtdGVtcGxhdGUuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBbmd1bGFyU3ZnSWNvbk1vZHVsZSxcblxuICAgIC8vIENvbXBvbmVudFxuICAgIENhUHJvZmlsZUltYWdlQ29tcG9uZW50LFxuICAgIENhTG9hZFN0YXR1c1N0cmluZ0NvbXBvbmVudCxcblxuICAgIC8vIFBpcGVcbiAgICBIaWdobGlnaHRTZWFyY2hQaXBlLFxuICAgIENhU3ZnUGlwZSxcbiAgICBMb2FkU3RhdHVzQ29sb3JQaXBlLFxuICAgIElucHV0RHJvcGRvd25Tdmd0ZXh0VGVtcGxhdGVJY29uUGlwZSxcbiAgICBJbnB1dERyb3Bkb3duU3ZndGV4dFRlbXBsYXRlQ29udGFpbmVyUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FJbnB1dERyb3Bkb3duU3ZndGV4dFRlbXBsYXRlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgb3B0aW9ucyE6IE9wdGlvbk1vZGVsW107XG4gIEBJbnB1dCgpIGFjdGl2ZUl0ZW0hOiBPcHRpb25Nb2RlbCB8IG51bGw7XG4gIEBJbnB1dCgpIGdldFN1cGVyQ29udHJvbCE6IEFic3RyYWN0Q29udHJvbDxhbnksIGFueT4gfCBudWxsO1xuICBASW5wdXQoKSBpbnB1dENvbmZpZyE6IElDYUlucHV0O1xuXG4gIEBPdXRwdXQoKSBvbkFjdGl2ZUl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyPE9wdGlvbk1vZGVsPigpO1xuXG4gIHB1YmxpYyBpbnB1dERyb3Bkb3duU3ZnUm91dGVzID0gSW5wdXREcm9wZG93blN2Z1JvdXRlcztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaW1hZ2VCYXNlNjRTZXJ2aWNlOiBJbWFnZUJhc2U2NFNlcnZpY2UpIHt9XG5cbiAgcHVibGljIGlkZW50aXR5KGluZGV4OiBudW1iZXIsIGl0ZW06IE9wdGlvbk1vZGVsKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gaXRlbS5pZDtcbiAgfVxuXG4gIHB1YmxpYyBvbkFjdGl2ZUl0ZW1FbWl0KG9wdGlvbjogT3B0aW9uTW9kZWwpOiB2b2lkIHtcbiAgICB0aGlzLm9uQWN0aXZlSXRlbS5lbWl0KG9wdGlvbik7XG4gIH1cbn1cbiIsIkBmb3IgKG9wdGlvbiBvZiBvcHRpb25zOyBsZXQgaW5keCA9ICRpbmRleDsgdHJhY2sgaW5keCkge1xuICAgIDxkaXZcbiAgICAgICAgKGNsaWNrKT1cIm9uQWN0aXZlSXRlbUVtaXQob3B0aW9uKVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIlxuICAgICAgICAgICAgb3B0aW9uIHwgaW5wdXREcm9wZG93blN2Z3RleHRUZW1wbGF0ZUNvbnRhaW5lcjogb3B0aW9ucyA6IGFjdGl2ZUl0ZW1cbiAgICAgICAgXCJcbiAgICAgICAgY2xhc3M9XCJkcm9wZG93bi1vcHRpb24gc3ZnLXRleHQtdGVtcGxhdGUge3sgb3B0aW9uPy5zdWJGb2xkZXIgfX0ge3tcbiAgICAgICAgICAgIG9wdGlvbj8ubmFtZT8udHJpbSgpPy5yZXBsYWNlKCcgJywgJycpPy50b0xvd2VyQ2FzZSgpXG4gICAgICAgIH19IHt7IGlucHV0Q29uZmlnLmN1c3RvbUNsYXNzIH19XCJcbiAgICA+XG4gICAgICAgIEBpZiAoIW9wdGlvbj8uaXNEcml2ZXIpIHtcbiAgICAgICAgICAgIDxzdmctaWNvblxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIlxuICAgICAgICAgICAgICAgICAgICBvcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIHwgaW5wdXREcm9wZG93blN2Z3RleHRUZW1wbGF0ZUljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGFjdGl2ZUl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGlucHV0Q29uZmlnXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cIlxuICAgICAgICAgICAgICAgICAgICBvcHRpb24/LmxvZ29OYW1lIHwgY2FTdmc6IG9wdGlvbj8uZm9sZGVyIDogb3B0aW9uPy5zdWJGb2xkZXIgOiBvcHRpb25cbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic3ZndGV4dC10ZW1wbGF0ZS1sb2dvIHt7XG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbj8ubmFtZT8udHJpbSgpPy5yZXBsYWNlKCcgJywgJycpPy50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgfX1cIlxuICAgICAgICAgICAgPjwvc3ZnLWljb24+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKG9wdGlvbi5sb2dvTmFtZSAmJiBvcHRpb24/LmlzRHJpdmVyKSB7XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgW2FsdF09XCJvcHRpb24/Lm5hbWVcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiBvcHRpb24uaWQgPT09IGFjdGl2ZUl0ZW0/LmlkIH1cIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwidGhpcy5pbWFnZUJhc2U2NFNlcnZpY2Uuc2FuaXRpemVyKG9wdGlvbi5sb2dvTmFtZSlcIlxuICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgJ21hcmdpbi1yaWdodCc6ICc2cHgnIH1cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic3ZnLXRlbXBsYXRlLWxvZ29cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoIW9wdGlvbi5sb2dvTmFtZSAmJiBvcHRpb24/LmlzRHJpdmVyKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibm8tcHJvZmlsZS1pbWFnZVwiIFtuZ1N0eWxlXT1cInsgJ21hcmdpbi1yaWdodCc6ICc2cHgnIH1cIj5cbiAgICAgICAgICAgICAgICA8YXBwLWNhLXByb2ZpbGUtaW1hZ2VcbiAgICAgICAgICAgICAgICAgICAgW2luZHhdPVwiMFwiXG4gICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cIm9wdGlvbj8ubmFtZSFcIlxuICAgICAgICAgICAgICAgICAgICBbc2l6ZV09XCInc21hbGwnXCJcbiAgICAgICAgICAgICAgICA+PC9hcHAtY2EtcHJvZmlsZS1pbWFnZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgPCEtLSBUZXh0IC0tPlxuICAgICAgICBAaWYgKGlucHV0Q29uZmlnLnN0YXR1c1N0eWxlKSB7XG4gICAgICAgICAgICA8Y2EtbG9hZC1zdGF0dXMtc3RyaW5nIFtzdGF0dXNdPVwib3B0aW9uXCI+PC9jYS1sb2FkLXN0YXR1cy1zdHJpbmc+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKCFpbnB1dENvbmZpZy5zdGF0dXNTdHlsZSkge1xuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIFtpbm5lckh0bWxdPVwiXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbj8ubnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICA/IChvcHRpb24ubnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHwgY2FIaWdobGlnaHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiA0NTYzMixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiBnZXRTdXBlckNvbnRyb2w/LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgIDogKG9wdGlvbj8ubmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgICB8IGNhSGlnaGxpZ2h0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogNDU2MzIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogZ2V0U3VwZXJDb250cm9sPy52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICd0cnVjay10ZXh0Jzogb3B0aW9uPy5zdWJGb2xkZXIgPT09ICd0cnVja3MnLFxuICAgICAgICAgICAgICAgICAgICAnZmxleC0xJzogb3B0aW9uPy5hZGRpdGlvbmFsVGV4dCxcbiAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ0cnVlID8gKG9wdGlvbj8ubmFtZSEgfCBsb2FkU3RhdHVzQ29sb3IpIDoge31cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic3ZndGV4dC10ZW1wbGF0ZS10ZXh0XCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDwhLS0gQWRkaXRpb25hbCBUZXh0IC0tPlxuICAgICAgICBAaWYgKG9wdGlvbj8uYWRkaXRpb25hbFRleHQpIHtcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBbaW5uZXJIdG1sXT1cIlxuICAgICAgICAgICAgICAgICAgICBvcHRpb24uYWRkaXRpb25hbFRleHRcbiAgICAgICAgICAgICAgICAgICAgICAgIHwgY2FIaWdobGlnaHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFt7IGluZGV4OiA0NTYzMiwgdGV4dDogZ2V0U3VwZXJDb250cm9sPy52YWx1ZSB9XVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzdmd0ZXh0LXRlbXBsYXRlLXRleHQgYWRkaXRpb25hbC10ZXh0XCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDwhLS0gUGx1cyBJY29uIC0tPlxuICAgICAgICBAaWYgKG9wdGlvbj8udHlwZSA9PT0gJ2FkZC1uZXcnKSB7XG4gICAgICAgICAgICA8c3ZnLWljb25cbiAgICAgICAgICAgICAgICBjbGFzcz1cInBsdXMtaWNvbiBzdmctc2l6ZS0xNFwiXG4gICAgICAgICAgICAgICAgW3NyY109XCJpbnB1dERyb3Bkb3duU3ZnUm91dGVzLnBsdXNTdmdcIlxuICAgICAgICAgICAgPjwvc3ZnLWljb24+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbn1cbiJdfQ==
|