@progress-chef/platform-shared-components 0.0.42 → 0.0.44
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/esm2022/lib/atoms/avatar/avatar.component.mjs +3 -3
- package/esm2022/lib/atoms/breadcrumb/breadcrumb.component.mjs +2 -2
- package/esm2022/lib/atoms/button/button.component.mjs +4 -4
- package/esm2022/lib/atoms/button-group/button-group.component.mjs +3 -3
- package/esm2022/lib/atoms/checkbox/checkbox.component.mjs +2 -2
- package/esm2022/lib/atoms/drag-and-drop/drag-and-drop.component.mjs +13 -26
- package/esm2022/lib/atoms/dropdown/dropdown.component.mjs +2 -2
- package/esm2022/lib/atoms/dropdowntree/dropdowntree.component.mjs +3 -3
- package/esm2022/lib/atoms/expansion-panel/expansion-panel.component.mjs +3 -3
- package/esm2022/lib/atoms/label/label.component.mjs +2 -2
- package/esm2022/lib/atoms/multi-select-dropdown/multi-select-dropdown.component.mjs +2 -2
- package/esm2022/lib/atoms/radio-button/radio-button.component.mjs +2 -2
- package/esm2022/lib/atoms/slider/slider.component.mjs +3 -3
- package/esm2022/lib/atoms/text-area/text-area.component.mjs +30 -8
- package/esm2022/lib/atoms/text-area/text-area.module.mjs +6 -6
- package/esm2022/lib/atoms/timescheduler/timescheduler.component.mjs +2 -2
- package/esm2022/lib/atoms/typography/TypographyType.mjs +1 -1
- package/esm2022/lib/atoms/typography/typography.component.mjs +40 -20
- package/esm2022/lib/molecules/card/card-header/card-header.component.mjs +3 -3
- package/esm2022/lib/molecules/card/card.component.mjs +2 -2
- package/esm2022/lib/molecules/dialog/confirmation-dialog/confirmation-dialog.component.mjs +68 -0
- package/esm2022/lib/molecules/dialog/dialog-titlebar/dialog-titlebar.component.mjs +2 -2
- package/esm2022/lib/molecules/dialog/dialog.module.mjs +14 -7
- package/esm2022/lib/molecules/grid/grid-form/grid-form.component.mjs +3 -3
- package/esm2022/lib/molecules/grid/grid.component.mjs +3 -3
- package/esm2022/lib/molecules/grid-pagination/grid-pagination.component.mjs +3 -3
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/progress-chef-platform-shared-components.mjs +189 -94
- package/fesm2022/progress-chef-platform-shared-components.mjs.map +1 -1
- package/lib/atoms/drag-and-drop/drag-and-drop.component.d.ts +3 -3
- package/lib/atoms/text-area/text-area.component.d.ts +11 -3
- package/lib/atoms/text-area/text-area.module.d.ts +1 -1
- package/lib/atoms/typography/TypographyType.d.ts +1 -1
- package/lib/molecules/dialog/confirmation-dialog/confirmation-dialog.component.d.ts +19 -0
- package/lib/molecules/dialog/dialog.module.d.ts +7 -5
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Component, Output, EventEmitter, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../../atoms/typography/typography.component";
|
|
4
|
+
import * as i2 from "../../../atoms/button/button.component";
|
|
5
|
+
import * as i3 from "../dialog.component";
|
|
6
|
+
import * as i4 from "../dialog-titlebar/dialog-titlebar.component";
|
|
7
|
+
import * as i5 from "../dialog-actions/dialog-actions.component";
|
|
8
|
+
export class ConfirmationDialogComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.confirmationDialogCloseEvent = new EventEmitter();
|
|
11
|
+
this.popupEvent = new EventEmitter();
|
|
12
|
+
this.title = '';
|
|
13
|
+
this.btnText = '';
|
|
14
|
+
this.type = '';
|
|
15
|
+
this.dialogInfoText = '';
|
|
16
|
+
this.dialogConfirmationText = '';
|
|
17
|
+
this.fillMode = 'solid';
|
|
18
|
+
this.themeColor = 'base';
|
|
19
|
+
this.primaryButtonLabel = '';
|
|
20
|
+
}
|
|
21
|
+
dialogClose() {
|
|
22
|
+
this.confirmationDialogCloseEvent.emit();
|
|
23
|
+
}
|
|
24
|
+
eventClicked() {
|
|
25
|
+
this.popupEvent.emit();
|
|
26
|
+
}
|
|
27
|
+
ngOnChanges(changes) {
|
|
28
|
+
if (changes['type']?.currentValue === 'enable') {
|
|
29
|
+
this.themeColor = 'primary';
|
|
30
|
+
this.fillMode = 'solid';
|
|
31
|
+
}
|
|
32
|
+
else if (changes['type']?.currentValue === 'update') {
|
|
33
|
+
this.themeColor = 'secondary';
|
|
34
|
+
this.fillMode = 'solid';
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
this.themeColor = 'error';
|
|
38
|
+
this.fillMode = 'outline';
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfirmationDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ConfirmationDialogComponent, selector: "lib-confirmation-dialog", inputs: { title: "title", btnText: "btnText", type: "type", dialogInfoText: "dialogInfoText", dialogConfirmationText: "dialogConfirmationText", fillMode: "fillMode", themeColor: "themeColor", primaryButtonLabel: "primaryButtonLabel" }, outputs: { confirmationDialogCloseEvent: "confirmationDialogCloseEvent", popupEvent: "popupEvent" }, usesOnChanges: true, ngImport: i0, template: "<lib-dialog width=\"489px\" class=\"confirmation-dialog\">\n <lib-dialog-titlebar class=\"confirmation-title\" [title]=\"title\" titleFont=\"H3_MULISH_18_BOLD\"\n [hideCloseIcon]=\"true\"></lib-dialog-titlebar>\n <div class=\"confirmation-popup-text\">\n <lib-typography type=\"P_MULISH_16_REGULAR\" [defaultText]=\"dialogInfoText\"></lib-typography><br>\n <lib-typography type=\"P_MULISH_16_REGULAR\" [defaultText]=\"dialogConfirmationText\"></lib-typography>\n </div>\n <lib-dialog-actions buttonLayout=\"end\" class=\"action-button\">\n <lib-button label=\"Cancel\" fillMode=\"outline\" themeColor=\"primary\" (click)=\"dialogClose()\" width=\"144px\"></lib-button>\n <lib-button [label]=\"btnText\" [themeColor]=\"themeColor\" (click)=\"eventClicked()\" [fillMode]=\"fillMode\" width=\"144px\"></lib-button>\n </lib-dialog-actions>\n</lib-dialog>\n", styles: [".random-css-to-not-keep-this-file-empty{display:none}\n"], dependencies: [{ kind: "component", type: i1.TypographyComponent, selector: "lib-typography", inputs: ["type", "defaultText", "isLabel", "hiddenLabel"] }, { kind: "component", type: i2.ButtonComponent, selector: "lib-button", inputs: ["size", "rounded", "fillMode", "themeColor", "label", "iconName", "disabled", "toggleable", "iconPosition", "fontType", "width", "iconButton"], outputs: ["buttonClick"] }, { kind: "component", type: i3.DialogComponent, selector: "lib-dialog", inputs: ["width", "height", "minWidth", "maxWidth", "minHeight", "maxHeight", "opened"] }, { kind: "component", type: i4.DialogTitlebarComponent, selector: "lib-dialog-titlebar", inputs: ["title", "titleFont", "hideCloseIcon"], outputs: ["closeDialog"] }, { kind: "component", type: i5.DialogActionsComponent, selector: "lib-dialog-actions", inputs: ["buttonLayout"] }] }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfirmationDialogComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: 'lib-confirmation-dialog', template: "<lib-dialog width=\"489px\" class=\"confirmation-dialog\">\n <lib-dialog-titlebar class=\"confirmation-title\" [title]=\"title\" titleFont=\"H3_MULISH_18_BOLD\"\n [hideCloseIcon]=\"true\"></lib-dialog-titlebar>\n <div class=\"confirmation-popup-text\">\n <lib-typography type=\"P_MULISH_16_REGULAR\" [defaultText]=\"dialogInfoText\"></lib-typography><br>\n <lib-typography type=\"P_MULISH_16_REGULAR\" [defaultText]=\"dialogConfirmationText\"></lib-typography>\n </div>\n <lib-dialog-actions buttonLayout=\"end\" class=\"action-button\">\n <lib-button label=\"Cancel\" fillMode=\"outline\" themeColor=\"primary\" (click)=\"dialogClose()\" width=\"144px\"></lib-button>\n <lib-button [label]=\"btnText\" [themeColor]=\"themeColor\" (click)=\"eventClicked()\" [fillMode]=\"fillMode\" width=\"144px\"></lib-button>\n </lib-dialog-actions>\n</lib-dialog>\n", styles: [".random-css-to-not-keep-this-file-empty{display:none}\n"] }]
|
|
47
|
+
}], propDecorators: { confirmationDialogCloseEvent: [{
|
|
48
|
+
type: Output
|
|
49
|
+
}], popupEvent: [{
|
|
50
|
+
type: Output
|
|
51
|
+
}], title: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], btnText: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], type: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}], dialogInfoText: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}], dialogConfirmationText: [{
|
|
60
|
+
type: Input
|
|
61
|
+
}], fillMode: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}], themeColor: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], primaryButtonLabel: [{
|
|
66
|
+
type: Input
|
|
67
|
+
}] } });
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9tb2xlY3VsZXMvZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cvY29uZmlybWF0aW9uLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9tb2xlY3VsZXMvZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cvY29uZmlybWF0aW9uLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQU9qRyxNQUFNLE9BQU8sMkJBQTJCO0lBTHhDO1FBTVksaUNBQTRCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNsRCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqQyxVQUFLLEdBQVUsRUFBRSxDQUFDO1FBQ2xCLFlBQU8sR0FBVSxFQUFFLENBQUM7UUFDcEIsU0FBSSxHQUFVLEVBQUUsQ0FBQztRQUNqQixtQkFBYyxHQUFVLEVBQUUsQ0FBQztRQUMzQiwyQkFBc0IsR0FBUyxFQUFFLENBQUM7UUFDbEMsYUFBUSxHQU1KLE9BQU8sQ0FBQztRQUNaLGVBQVUsR0FXSCxNQUFNLENBQUM7UUFDZCx1QkFBa0IsR0FBUyxFQUFFLENBQUM7S0FzQnhDO0lBcEJDLFdBQVc7UUFDVCxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsWUFBWSxLQUFLLFFBQVEsRUFBRTtZQUM5QyxJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztZQUM1QixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQTtTQUN4QjthQUFNLElBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFlBQVksS0FBSyxRQUFRLEVBQUU7WUFDcEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUM7WUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUE7U0FDeEI7YUFBTTtZQUNMLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDO1lBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFBO1NBQzFCO0lBQ0gsQ0FBQzsrR0FoRFUsMkJBQTJCO21HQUEzQiwyQkFBMkIscWFDUHhDLDAyQkFZQTs7NEZETGEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHlCQUF5Qjs4QkFLekIsNEJBQTRCO3NCQUFyQyxNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0UsS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFPRyxVQUFVO3NCQUFsQixLQUFLO2dCQVlHLGtCQUFrQjtzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWNvbmZpcm1hdGlvbi1kaWFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29uZmlybWF0aW9uLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBAT3V0cHV0KCkgY29uZmlybWF0aW9uRGlhbG9nQ2xvc2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHBvcHVwRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmcgPScnO1xuICBASW5wdXQoKSBidG5UZXh0OiBzdHJpbmcgPScnO1xuICBASW5wdXQoKSB0eXBlOiBzdHJpbmcgPScnO1xuICBASW5wdXQoKSBkaWFsb2dJbmZvVGV4dDogc3RyaW5nID0nJztcbiAgQElucHV0KCkgZGlhbG9nQ29uZmlybWF0aW9uVGV4dDogc3RyaW5nPScnO1xuICBASW5wdXQoKSBmaWxsTW9kZTpcbiAgICB8ICdzb2xpZCdcbiAgICB8ICdmbGF0J1xuICAgIHwgJ291dGxpbmUnXG4gICAgfCAnY2xlYXInXG4gICAgfCAnbGluaydcbiAgICB8ICdub25lJyA9ICdzb2xpZCc7XG4gIEBJbnB1dCgpIHRoZW1lQ29sb3I6XG4gICAgfCAnYmFzZSdcbiAgICB8ICdwcmltYXJ5J1xuICAgIHwgJ3NlY29uZGFyeSdcbiAgICB8ICd0ZXJ0aWFyeSdcbiAgICB8ICdpbmZvJ1xuICAgIHwgJ3N1Y2Nlc3MnXG4gICAgfCAnd2FybmluZydcbiAgICB8ICdlcnJvcidcbiAgICB8ICdkYXJrJ1xuICAgIHwgJ2xpZ2h0J1xuICAgIHwgJ2ludmVyc2UnID0gJ2Jhc2UnO1xuICBASW5wdXQoKSBwcmltYXJ5QnV0dG9uTGFiZWw6IHN0cmluZz0nJztcblxuICBkaWFsb2dDbG9zZSgpIHtcbiAgICB0aGlzLmNvbmZpcm1hdGlvbkRpYWxvZ0Nsb3NlRXZlbnQuZW1pdCgpO1xuICB9XG5cbiAgZXZlbnRDbGlja2VkKCkge1xuICAgIHRoaXMucG9wdXBFdmVudC5lbWl0KCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbJ3R5cGUnXT8uY3VycmVudFZhbHVlID09PSAnZW5hYmxlJykge1xuICAgICAgdGhpcy50aGVtZUNvbG9yID0gJ3ByaW1hcnknO1xuICAgICAgdGhpcy5maWxsTW9kZSA9ICdzb2xpZCdcbiAgICB9IGVsc2UgaWYoY2hhbmdlc1sndHlwZSddPy5jdXJyZW50VmFsdWUgPT09ICd1cGRhdGUnKSB7XG4gICAgICB0aGlzLnRoZW1lQ29sb3IgPSAnc2Vjb25kYXJ5JztcbiAgICAgIHRoaXMuZmlsbE1vZGUgPSAnc29saWQnXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudGhlbWVDb2xvciA9ICdlcnJvcic7XG4gICAgICB0aGlzLmZpbGxNb2RlID0gJ291dGxpbmUnXG4gICAgfVxuICB9XG59XG4iLCI8bGliLWRpYWxvZyB3aWR0aD1cIjQ4OXB4XCIgY2xhc3M9XCJjb25maXJtYXRpb24tZGlhbG9nXCI+XG4gIDxsaWItZGlhbG9nLXRpdGxlYmFyIGNsYXNzPVwiY29uZmlybWF0aW9uLXRpdGxlXCIgW3RpdGxlXT1cInRpdGxlXCIgdGl0bGVGb250PVwiSDNfTVVMSVNIXzE4X0JPTERcIlxuICAgIFtoaWRlQ2xvc2VJY29uXT1cInRydWVcIj48L2xpYi1kaWFsb2ctdGl0bGViYXI+XG4gIDxkaXYgY2xhc3M9XCJjb25maXJtYXRpb24tcG9wdXAtdGV4dFwiPlxuICAgIDxsaWItdHlwb2dyYXBoeSB0eXBlPVwiUF9NVUxJU0hfMTZfUkVHVUxBUlwiIFtkZWZhdWx0VGV4dF09XCJkaWFsb2dJbmZvVGV4dFwiPjwvbGliLXR5cG9ncmFwaHk+PGJyPlxuICAgIDxsaWItdHlwb2dyYXBoeSB0eXBlPVwiUF9NVUxJU0hfMTZfUkVHVUxBUlwiIFtkZWZhdWx0VGV4dF09XCJkaWFsb2dDb25maXJtYXRpb25UZXh0XCI+PC9saWItdHlwb2dyYXBoeT5cbiAgPC9kaXY+XG4gIDxsaWItZGlhbG9nLWFjdGlvbnMgYnV0dG9uTGF5b3V0PVwiZW5kXCIgY2xhc3M9XCJhY3Rpb24tYnV0dG9uXCI+XG4gICAgPGxpYi1idXR0b24gbGFiZWw9XCJDYW5jZWxcIiBmaWxsTW9kZT1cIm91dGxpbmVcIiB0aGVtZUNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJkaWFsb2dDbG9zZSgpXCIgd2lkdGg9XCIxNDRweFwiPjwvbGliLWJ1dHRvbj5cbiAgICA8bGliLWJ1dHRvbiBbbGFiZWxdPVwiYnRuVGV4dFwiIFt0aGVtZUNvbG9yXT1cInRoZW1lQ29sb3JcIiAoY2xpY2spPVwiZXZlbnRDbGlja2VkKClcIiBbZmlsbE1vZGVdPVwiZmlsbE1vZGVcIiB3aWR0aD1cIjE0NHB4XCI+PC9saWItYnV0dG9uPlxuICA8L2xpYi1kaWFsb2ctYWN0aW9ucz5cbjwvbGliLWRpYWxvZz5cbiJdfQ==
|
|
@@ -8,7 +8,7 @@ export class DialogTitlebarComponent {
|
|
|
8
8
|
constructor(dialogComponent) {
|
|
9
9
|
this.dialogComponent = dialogComponent;
|
|
10
10
|
this.title = '';
|
|
11
|
-
this.titleFont = '
|
|
11
|
+
this.titleFont = 'P_MULISH_14_REGULAR';
|
|
12
12
|
this.closeDialog = new EventEmitter();
|
|
13
13
|
this.hideCloseIcon = false;
|
|
14
14
|
}
|
|
@@ -37,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
37
37
|
}], hideCloseIcon: [{
|
|
38
38
|
type: Input
|
|
39
39
|
}] } });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXRpdGxlYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL21vbGVjdWxlcy9kaWFsb2cvZGlhbG9nLXRpdGxlYmFyL2RpYWxvZy10aXRsZWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9tb2xlY3VsZXMvZGlhbG9nL2RpYWxvZy10aXRsZWJhci9kaWFsb2ctdGl0bGViYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBU3ZFLE1BQU0sT0FBTyx1QkFBdUI7SUFNbEMsWUFBbUIsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBTDFDLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsY0FBUyxHQUFtQixxQkFBcUIsQ0FBQztRQUNqRCxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEMsa0JBQWEsR0FBWSxLQUFLLENBQUM7SUFFYyxDQUFDO0lBRXZELEtBQUs7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFBQSxDQUFDO0lBRUYsUUFBUTtRQUNOLElBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNyQixPQUFPLGNBQWMsQ0FBQztTQUN2QjtRQUNELE9BQU87SUFDVCxDQUFDOytHQWpCVSx1QkFBdUI7bUdBQXZCLHVCQUF1Qix3TENUcEMsa01BTUE7OzRGREdhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxxQkFBcUI7c0dBS3RCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0UsYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IFR5cG9ncmFwaHlUeXBlIH0gZnJvbSAnLi4vLi4vLi4vYXRvbXMvdHlwb2dyYXBoeS9UeXBvZ3JhcGh5VHlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1kaWFsb2ctdGl0bGViYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLXRpdGxlYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLXRpdGxlYmFyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERpYWxvZ1RpdGxlYmFyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSB0aXRsZUZvbnQ6IFR5cG9ncmFwaHlUeXBlID0gJ1BfTVVMSVNIXzE0X1JFR1VMQVInO1xuICBAT3V0cHV0KCkgY2xvc2VEaWFsb2cgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIGhpZGVDbG9zZUljb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nQ29tcG9uZW50OiBEaWFsb2dDb21wb25lbnQpIHt9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5jbG9zZURpYWxvZy5lbWl0KCk7XG4gIH07XG5cbiAgY2xvc2VCdG4oKSB7XG4gICAgaWYodGhpcy5oaWRlQ2xvc2VJY29uKSB7XG4gICAgICByZXR1cm4gJ2RpYWxvZy10aXRsZSc7XG4gICAgfVxuICAgIHJldHVybjtcbiAgfVxufVxuIiwiPGtlbmRvLWRpYWxvZy10aXRsZWJhciAoY2xvc2UpPVwiY2xvc2UoKVwiIFtuZ0NsYXNzXT1cImNsb3NlQnRuKClcIj5cbiAgPGxpYi10eXBvZ3JhcGh5XG4gICAgW2RlZmF1bHRUZXh0XT1cInRpdGxlXCJcbiAgICBbdHlwZV09XCJ0aXRsZUZvbnRcIlxuICA+PC9saWItdHlwb2dyYXBoeT5cbjwva2VuZG8tZGlhbG9nLXRpdGxlYmFyPlxuIl19
|
|
@@ -3,22 +3,27 @@ import { CommonModule } from '@angular/common';
|
|
|
3
3
|
import { DialogComponent } from './dialog.component';
|
|
4
4
|
import { DialogsModule } from '@progress/kendo-angular-dialog';
|
|
5
5
|
import { ButtonsModule } from '@progress/kendo-angular-buttons';
|
|
6
|
+
import { ButtonModule } from './../../atoms/button/button.module';
|
|
6
7
|
import { DialogTitlebarComponent } from './dialog-titlebar/dialog-titlebar.component';
|
|
7
8
|
import { DialogActionsComponent } from './dialog-actions/dialog-actions.component';
|
|
8
9
|
import { TypographyModule } from './../../atoms/typography/typography.module';
|
|
10
|
+
import { ConfirmationDialogComponent } from './confirmation-dialog/confirmation-dialog.component';
|
|
9
11
|
import * as i0 from "@angular/core";
|
|
10
12
|
export class DialogModule {
|
|
11
13
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
14
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DialogModule, declarations: [DialogComponent,
|
|
13
15
|
DialogTitlebarComponent,
|
|
14
|
-
DialogActionsComponent
|
|
16
|
+
DialogActionsComponent,
|
|
17
|
+
ConfirmationDialogComponent], imports: [CommonModule,
|
|
15
18
|
DialogsModule,
|
|
16
19
|
ButtonsModule,
|
|
17
|
-
TypographyModule
|
|
20
|
+
TypographyModule,
|
|
21
|
+
ButtonModule], exports: [DialogComponent, DialogTitlebarComponent, DialogActionsComponent, ConfirmationDialogComponent] }); }
|
|
18
22
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogModule, imports: [CommonModule,
|
|
19
23
|
DialogsModule,
|
|
20
24
|
ButtonsModule,
|
|
21
|
-
TypographyModule
|
|
25
|
+
TypographyModule,
|
|
26
|
+
ButtonModule] }); }
|
|
22
27
|
}
|
|
23
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogModule, decorators: [{
|
|
24
29
|
type: NgModule,
|
|
@@ -26,15 +31,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
26
31
|
declarations: [
|
|
27
32
|
DialogComponent,
|
|
28
33
|
DialogTitlebarComponent,
|
|
29
|
-
DialogActionsComponent
|
|
34
|
+
DialogActionsComponent,
|
|
35
|
+
ConfirmationDialogComponent
|
|
30
36
|
],
|
|
31
37
|
imports: [
|
|
32
38
|
CommonModule,
|
|
33
39
|
DialogsModule,
|
|
34
40
|
ButtonsModule,
|
|
35
|
-
TypographyModule
|
|
41
|
+
TypographyModule,
|
|
42
|
+
ButtonModule
|
|
36
43
|
],
|
|
37
|
-
exports: [DialogComponent, DialogTitlebarComponent, DialogActionsComponent],
|
|
44
|
+
exports: [DialogComponent, DialogTitlebarComponent, DialogActionsComponent, ConfirmationDialogComponent],
|
|
38
45
|
}]
|
|
39
46
|
}] });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL21vbGVjdWxlcy9kaWFsb2cvZGlhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDdEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDOUUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0scURBQXFELENBQUM7O0FBaUJsRyxNQUFNLE9BQU8sWUFBWTsrR0FBWixZQUFZO2dIQUFaLFlBQVksaUJBZHJCLGVBQWU7WUFDZix1QkFBdUI7WUFDdkIsc0JBQXNCO1lBQ3RCLDJCQUEyQixhQUczQixZQUFZO1lBQ1osYUFBYTtZQUNiLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsWUFBWSxhQUVKLGVBQWUsRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBQywyQkFBMkI7Z0hBRTNGLFlBQVksWUFSckIsWUFBWTtZQUNaLGFBQWE7WUFDYixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLFlBQVk7OzRGQUlILFlBQVk7a0JBaEJ4QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixlQUFlO3dCQUNmLHVCQUF1Qjt3QkFDdkIsc0JBQXNCO3dCQUN0QiwyQkFBMkI7cUJBQzVCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixFQUFDLDJCQUEyQixDQUFDO2lCQUN4RyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IERpYWxvZ3NNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1kaWFsb2cnO1xuaW1wb3J0IHsgQnV0dG9uc01vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWJ1dHRvbnMnO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi8uLi8uLi9hdG9tcy9idXR0b24vYnV0dG9uLm1vZHVsZSc7XG5pbXBvcnQgeyBEaWFsb2dUaXRsZWJhckNvbXBvbmVudCB9IGZyb20gJy4vZGlhbG9nLXRpdGxlYmFyL2RpYWxvZy10aXRsZWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGlhbG9nQWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vZGlhbG9nLWFjdGlvbnMvZGlhbG9nLWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IFR5cG9ncmFwaHlNb2R1bGUgfSBmcm9tICcuLy4uLy4uL2F0b21zL3R5cG9ncmFwaHkvdHlwb2dyYXBoeS5tb2R1bGUnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIERpYWxvZ0NvbXBvbmVudCxcbiAgICBEaWFsb2dUaXRsZWJhckNvbXBvbmVudCxcbiAgICBEaWFsb2dBY3Rpb25zQ29tcG9uZW50LFxuICAgIENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERpYWxvZ3NNb2R1bGUsXG4gICAgQnV0dG9uc01vZHVsZSxcbiAgICBUeXBvZ3JhcGh5TW9kdWxlLFxuICAgIEJ1dHRvbk1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbRGlhbG9nQ29tcG9uZW50LCBEaWFsb2dUaXRsZWJhckNvbXBvbmVudCwgRGlhbG9nQWN0aW9uc0NvbXBvbmVudCxDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBEaWFsb2dNb2R1bGUge31cbiJdfQ==
|
|
@@ -77,11 +77,11 @@ export class GridFormComponent {
|
|
|
77
77
|
this.formGroup = undefined;
|
|
78
78
|
}
|
|
79
79
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridFormComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
80
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GridFormComponent, selector: "lib-grid-form", inputs: { showToolbar: "showToolbar", noRecordsContent: "noRecordsContent", gridData: "gridData", columnData: "columnData", controls: "controls" }, outputs: { addOrUpdateRow: "addOrUpdateRow", deletedRow: "deletedRow", removeRow: "removeRow", saveRow: "saveRow" }, queries: [{ propertyName: "templateRef1", first: true, predicate: ["tmp1"], descendants: true }, { propertyName: "templateRef2", first: true, predicate: ["tmp2"], descendants: true }], ngImport: i0, template: "<kendo-grid [kendoGridBinding]=\"gridData\" (dataStateChange)=\"onStateChange($event)\" (edit)=\"editHandler($event)\"\n (cancel)=\"cancelHandler($event)\" (save)=\"saveHandler($event)\" (remove)=\"removeHandler($event)\"\n (add)=\"addHandler($event)\" [navigable]=\"true\">\n <ng-template kendoGridToolbarTemplate>\n <ng-content select=\"header\"></ng-content>\n <lib-grid-spacer></lib-grid-spacer>\n <button kendoGridAddCommand themeColor=\"primary\">\n <ng-content select=\"div.header-add-btn\"></ng-content>\n </button>\n </ng-template>\n <ng-template *ngIf=\"!showColumns\" kendoGridNoRecordsTemplate>\n <lib-typography [defaultText]=\"noRecordsContent\" type=\"
|
|
80
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GridFormComponent, selector: "lib-grid-form", inputs: { showToolbar: "showToolbar", noRecordsContent: "noRecordsContent", gridData: "gridData", columnData: "columnData", controls: "controls" }, outputs: { addOrUpdateRow: "addOrUpdateRow", deletedRow: "deletedRow", removeRow: "removeRow", saveRow: "saveRow" }, queries: [{ propertyName: "templateRef1", first: true, predicate: ["tmp1"], descendants: true }, { propertyName: "templateRef2", first: true, predicate: ["tmp2"], descendants: true }], ngImport: i0, template: "<kendo-grid [kendoGridBinding]=\"gridData\" (dataStateChange)=\"onStateChange($event)\" (edit)=\"editHandler($event)\"\n (cancel)=\"cancelHandler($event)\" (save)=\"saveHandler($event)\" (remove)=\"removeHandler($event)\"\n (add)=\"addHandler($event)\" [navigable]=\"true\">\n <ng-template kendoGridToolbarTemplate>\n <ng-content select=\"header\"></ng-content>\n <lib-grid-spacer></lib-grid-spacer>\n <button kendoGridAddCommand themeColor=\"primary\">\n <ng-content select=\"div.header-add-btn\"></ng-content>\n </button>\n </ng-template>\n <ng-template *ngIf=\"!showColumns\" kendoGridNoRecordsTemplate>\n <lib-typography [defaultText]=\"noRecordsContent\" type=\"P_MULISH_16_REGULAR\"></lib-typography>\n </ng-template>\n <ng-container *ngIf=\"showColumns\">\n <kendo-grid-column *ngFor=\"let item of columnData\" [field]=\"item.field\" [title]=\"item.title\" [editor]=\"item.editor\">\n <ng-template *ngIf=\"item.custom\" kendoGridEditTemplate let-dataItem=\"dataItem\" let-formGroup=\"formGroup\">\n <ng-container\n *ngTemplateOutlet=\"templateRef1; context: {$implicit: dataItem, formGroup: formGroup}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"item.custom\" kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"templateRef2; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n </kendo-grid-column>\n <kendo-grid-command-column [width]=\"120\">\n <ng-template kendoGridCellTemplate let-isNew=\"isNew\">\n <div class=\"command-column\">\n <lib-tooltip position=\"top\" showOn=\"hover\">\n <div class=\"tooltip-content\">Edit</div>\n <button kendoGridEditCommand fillMode=\"clear\" themeColor=\"primary\">\n <kendo-icon name=\"pencil\"></kendo-icon>\n </button>\n </lib-tooltip>\n <lib-tooltip position=\"top\" showOn=\"hover\">\n <div class=\"tooltip-content\">Remove</div>\n <button kendoGridRemoveCommand fillMode=\"clear\" themeColor=\"error\">\n <kendo-icon name=\"trash\"></kendo-icon>\n </button>\n </lib-tooltip>\n </div>\n <div class=\"command-column\">\n <button kendoGridSaveCommand [disabled]=\"formGroup && formGroup.invalid\" fillMode=\"clear\" themeColor=\"primary\">\n <lib-tooltip position=\"top\" showOn=\"hover\">\n <div class=\"tooltip-content\">Save</div>\n <kendo-icon name=\"save\"></kendo-icon>\n </lib-tooltip>\n </button>\n <button kendoGridCancelCommand fillMode=\"clear\" themeColor=\"error\">\n <lib-tooltip position=\"top\" showOn=\"hover\">\n <div class=\"tooltip-content\">Cancel</div>\n <lib-icon name=\"close\" [fontSize]=\"20\"></lib-icon>\n </lib-tooltip>\n </button>\n </div>\n </ng-template>\n </kendo-grid-command-column>\n </ng-container>\n</kendo-grid>\n", styles: [".command-column{display:flex;justify-content:space-between}::ng-deep .k-grid-header{border-bottom-width:0px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.IconComponent, selector: "lib-icon", inputs: ["name", "fontSize", "type"] }, { kind: "component", type: i3.IconComponent, selector: "kendo-icon", inputs: ["name"], exportAs: ["kendoIcon"] }, { kind: "component", type: i4.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "rowReorderable", "navigable", "navigatable", "autoSize", "rowClass", "rowSticky", "rowSelected", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "isDetailExpanded", "isGroupExpanded"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i4.ToolbarTemplateDirective, selector: "[kendoGridToolbarTemplate]", inputs: ["position"] }, { kind: "directive", type: i4.DataBindingDirective, selector: "[kendoGridBinding]", inputs: ["skip", "sort", "filter", "pageSize", "group", "kendoGridBinding"] }, { kind: "directive", type: i4.GridToolbarFocusableDirective, selector: " [kendoGridToolbarFocusable], [kendoGridAddCommand], [kendoGridCancelCommand], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridExcelCommand], [kendoGridPDFCommand] " }, { kind: "component", type: i4.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterable", "editable"] }, { kind: "directive", type: i4.FocusableDirective, selector: "[kendoGridFocusable], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridCancelCommand], [kendoGridSelectionCheckbox] ", inputs: ["kendoGridFocusable"] }, { kind: "component", type: i4.CommandColumnComponent, selector: "kendo-grid-command-column" }, { kind: "directive", type: i4.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i4.NoRecordsTemplateDirective, selector: "[kendoGridNoRecordsTemplate]" }, { kind: "directive", type: i4.EditTemplateDirective, selector: "[kendoGridEditTemplate]" }, { kind: "component", type: i4.EditCommandDirective, selector: "[kendoGridEditCommand]" }, { kind: "component", type: i4.CancelCommandDirective, selector: "[kendoGridCancelCommand]" }, { kind: "component", type: i4.SaveCommandDirective, selector: "[kendoGridSaveCommand]" }, { kind: "component", type: i4.RemoveCommandDirective, selector: "[kendoGridRemoveCommand]" }, { kind: "component", type: i4.AddCommandDirective, selector: "[kendoGridAddCommand]" }, { kind: "component", type: i5.TooltipComponent, selector: "lib-tooltip", inputs: ["position", "tooltipWidth", "tooltipHeight", "showOn", "closable", "title", "callout"] }, { kind: "component", type: i6.TypographyComponent, selector: "lib-typography", inputs: ["type", "defaultText", "isLabel", "hiddenLabel"] }, { kind: "component", type: i7.GridSpacerComponent, selector: "lib-grid-spacer" }] }); }
|
|
81
81
|
}
|
|
82
82
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GridFormComponent, decorators: [{
|
|
83
83
|
type: Component,
|
|
84
|
-
args: [{ selector: 'lib-grid-form', template: "<kendo-grid [kendoGridBinding]=\"gridData\" (dataStateChange)=\"onStateChange($event)\" (edit)=\"editHandler($event)\"\n (cancel)=\"cancelHandler($event)\" (save)=\"saveHandler($event)\" (remove)=\"removeHandler($event)\"\n (add)=\"addHandler($event)\" [navigable]=\"true\">\n <ng-template kendoGridToolbarTemplate>\n <ng-content select=\"header\"></ng-content>\n <lib-grid-spacer></lib-grid-spacer>\n <button kendoGridAddCommand themeColor=\"primary\">\n <ng-content select=\"div.header-add-btn\"></ng-content>\n </button>\n </ng-template>\n <ng-template *ngIf=\"!showColumns\" kendoGridNoRecordsTemplate>\n <lib-typography [defaultText]=\"noRecordsContent\" type=\"
|
|
84
|
+
args: [{ selector: 'lib-grid-form', template: "<kendo-grid [kendoGridBinding]=\"gridData\" (dataStateChange)=\"onStateChange($event)\" (edit)=\"editHandler($event)\"\n (cancel)=\"cancelHandler($event)\" (save)=\"saveHandler($event)\" (remove)=\"removeHandler($event)\"\n (add)=\"addHandler($event)\" [navigable]=\"true\">\n <ng-template kendoGridToolbarTemplate>\n <ng-content select=\"header\"></ng-content>\n <lib-grid-spacer></lib-grid-spacer>\n <button kendoGridAddCommand themeColor=\"primary\">\n <ng-content select=\"div.header-add-btn\"></ng-content>\n </button>\n </ng-template>\n <ng-template *ngIf=\"!showColumns\" kendoGridNoRecordsTemplate>\n <lib-typography [defaultText]=\"noRecordsContent\" type=\"P_MULISH_16_REGULAR\"></lib-typography>\n </ng-template>\n <ng-container *ngIf=\"showColumns\">\n <kendo-grid-column *ngFor=\"let item of columnData\" [field]=\"item.field\" [title]=\"item.title\" [editor]=\"item.editor\">\n <ng-template *ngIf=\"item.custom\" kendoGridEditTemplate let-dataItem=\"dataItem\" let-formGroup=\"formGroup\">\n <ng-container\n *ngTemplateOutlet=\"templateRef1; context: {$implicit: dataItem, formGroup: formGroup}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"item.custom\" kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"templateRef2; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n </kendo-grid-column>\n <kendo-grid-command-column [width]=\"120\">\n <ng-template kendoGridCellTemplate let-isNew=\"isNew\">\n <div class=\"command-column\">\n <lib-tooltip position=\"top\" showOn=\"hover\">\n <div class=\"tooltip-content\">Edit</div>\n <button kendoGridEditCommand fillMode=\"clear\" themeColor=\"primary\">\n <kendo-icon name=\"pencil\"></kendo-icon>\n </button>\n </lib-tooltip>\n <lib-tooltip position=\"top\" showOn=\"hover\">\n <div class=\"tooltip-content\">Remove</div>\n <button kendoGridRemoveCommand fillMode=\"clear\" themeColor=\"error\">\n <kendo-icon name=\"trash\"></kendo-icon>\n </button>\n </lib-tooltip>\n </div>\n <div class=\"command-column\">\n <button kendoGridSaveCommand [disabled]=\"formGroup && formGroup.invalid\" fillMode=\"clear\" themeColor=\"primary\">\n <lib-tooltip position=\"top\" showOn=\"hover\">\n <div class=\"tooltip-content\">Save</div>\n <kendo-icon name=\"save\"></kendo-icon>\n </lib-tooltip>\n </button>\n <button kendoGridCancelCommand fillMode=\"clear\" themeColor=\"error\">\n <lib-tooltip position=\"top\" showOn=\"hover\">\n <div class=\"tooltip-content\">Cancel</div>\n <lib-icon name=\"close\" [fontSize]=\"20\"></lib-icon>\n </lib-tooltip>\n </button>\n </div>\n </ng-template>\n </kendo-grid-command-column>\n </ng-container>\n</kendo-grid>\n", styles: [".command-column{display:flex;justify-content:space-between}::ng-deep .k-grid-header{border-bottom-width:0px}\n"] }]
|
|
85
85
|
}], ctorParameters: function () { return [{ type: i0.Renderer2 }]; }, propDecorators: { showToolbar: [{
|
|
86
86
|
type: Input
|
|
87
87
|
}], noRecordsContent: [{
|
|
@@ -107,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
107
107
|
}], saveRow: [{
|
|
108
108
|
type: Output
|
|
109
109
|
}] } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL21vbGVjdWxlcy9ncmlkL2dyaWQtZm9ybS9ncmlkLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvbW9sZWN1bGVzL2dyaWQvZ3JpZC1mb3JtL2dyaWQtZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBMEIsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7OztBQUlwRSxNQUFNLGVBQWUsR0FBRyxDQUFDLFFBQWEsRUFBYSxFQUFFO0lBQ25ELE1BQU0sSUFBSSxHQUFHLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLEtBQUssSUFBSSxXQUFXLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUM3QyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUE7S0FDMUY7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQTtBQU9ELE1BQU0sT0FBTyxpQkFBaUI7SUFvQjVCLFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFuQjlCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLHFCQUFnQixHQUFXLG1CQUFtQixDQUFDO1FBQ3hELGdCQUFXLEdBQUcsS0FBSyxDQUFBO1FBTVYsYUFB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LFNBQVM7K0JBQ0UsZUFBZTtnR0FLaEIsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBSWdCLFlBQVk7c0JBQWpDLFlBQVk7dUJBQUMsTUFBTTtnQkFDRSxZQUFZO3NCQUFqQyxZQUFZO3VCQUFDLE1BQU07Z0JBRVgsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUdHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFJlbmRlcmVyMiwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBZGRFdmVudCwgQ2FuY2VsRXZlbnQsIEVkaXRFdmVudCwgR3JpZENvbXBvbmVudCwgUmVtb3ZlRXZlbnQsIFNhdmVFdmVudCB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWdyaWQnO1xuaW1wb3J0IHsgU3RhdGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tZGF0YS1xdWVyeSc7XG5cbmNvbnN0IGNyZWF0ZUZvcm1Hcm91cCA9IChjb250cm9sczogYW55KTogRm9ybUdyb3VwID0+IHtcbiAgY29uc3QgZm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xuICBmb3IgKGxldCBjb250cm9sTmFtZSBvZiBPYmplY3Qua2V5cyhjb250cm9scykpIHtcbiAgICBmb3JtLmFkZENvbnRyb2woY29udHJvbE5hbWUsIG5ldyBGb3JtQ29udHJvbChjb250cm9sc1tjb250cm9sTmFtZV0sIFZhbGlkYXRvcnMucmVxdWlyZWQpKVxuICB9XG4gIHJldHVybiBmb3JtO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItZ3JpZC1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyaWQtZm9ybS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRGb3JtQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc2hvd1Rvb2xiYXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbm9SZWNvcmRzQ29udGVudDogc3RyaW5nID0gJ05vIHRhZ3MgYWRkZWQgeWV0JztcbiAgc2hvd0NvbHVtbnMgPSBmYWxzZVxuICBwdWJsaWMgZm9ybUdyb3VwITogRm9ybUdyb3VwIHwgYW55O1xuXG4gIEBDb250ZW50Q2hpbGQoJ3RtcDEnKSB0ZW1wbGF0ZVJlZjEhOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbDtcbiAgQENvbnRlbnRDaGlsZCgndG1wMicpIHRlbXBsYXRlUmVmMiE6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsO1xuXG4gIEBJbnB1dCgpIGdyaWREYXRhOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBjb2x1bW5EYXRhOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBjb250cm9sczogYW55ID0ge307XG4gIGNvdW50ZXIhOiBudW1iZXI7XG4gIEBPdXRwdXQoKSBhZGRPclVwZGF0ZVJvdyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZGVsZXRlZFJvdyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIHByaXZhdGUgZWRpdGVkUm93SW5kZXg6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgQE91dHB1dCgpIHJlbW92ZVJvdyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgc2F2ZVJvdyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XG5cbiAgcHVibGljIG9uU3RhdGVDaGFuZ2Uoc3RhdGU6IFN0YXRlKTogdm9pZCB7XG4gICAgY29uc29sZS5sb2coJ29uU3RhdGVDaGFuZ2U6ICcsIHN0YXRlKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRIYW5kbGVyKGFyZ3M6IEFkZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5zaG93Q29sdW1ucyA9IHRydWVcbiAgICB0aGlzLmNsb3NlRWRpdG9yKGFyZ3Muc2VuZGVyKTtcbiAgICAvLyBkZWZpbmUgYWxsIGVkaXRhYmxlIGZpZWxkcyB2YWxpZGF0b3JzIGFuZCBkZWZhdWx0IHZhbHVlc1xuICAgIHRoaXMuZm9ybUdyb3VwID0gY3JlYXRlRm9ybUdyb3VwKHRoaXMuY29udHJvbHMpOztcbiAgICAvLyBzaG93IHRoZSBuZXcgcm93IGVkaXRvciwgd2l0aCB0aGUgYEZvcm1Hcm91cGAgYnVpbGQgYWJvdmVcbiAgICBhcmdzLnNlbmRlci5hZGRSb3codGhpcy5mb3JtR3JvdXApO1xuICB9XG5cbiAgcHVibGljIGVkaXRIYW5kbGVyKGFyZ3M6IEVkaXRFdmVudCk6IHZvaWQge1xuICAgIC8vIGRlZmluZSBhbGwgZWRpdGFibGUgZmllbGRzIHZhbGlkYXRvcnMgYW5kIGRlZmF1bHQgdmFsdWVzXG4gICAgY29uc3QgeyBkYXRhSXRlbSB9ID0gYXJncztcbiAgICB0aGlzLmNsb3NlRWRpdG9yKGFyZ3Muc2VuZGVyKTtcblxuICAgIHRoaXMuZm9ybUdyb3VwID0gY3JlYXRlRm9ybUdyb3VwKGRhdGFJdGVtKTtcbiAgICB0aGlzLmVkaXRlZFJvd0luZGV4ID0gYXJncy5yb3dJbmRleDtcbiAgICAvLyBwdXQgdGhlIHJvdyBpbiBlZGl0IG1vZGUsIHdpdGggdGhlIGBGb3JtR3JvdXBgIGJ1aWxkIGFib3ZlXG4gICAgYXJncy5zZW5kZXIuZWRpdFJvdyhhcmdzLnJvd0luZGV4LCB0aGlzLmZvcm1Hcm91cCk7XG4gIH1cblxuICBwdWJsaWMgY2FuY2VsSGFuZGxlcihhcmdzOiBDYW5jZWxFdmVudCk6IHZvaWQge1xuICAgIC8vIGNsb3NlIHRoZSBlZGl0b3IgZm9yIHRoZSBnaXZlbiByb3dcbiAgICB0aGlzLmNsb3NlRWRpdG9yKGFyZ3Muc2VuZGVyLCBhcmdzLnJvd0luZGV4KTtcbiAgICBpZih0aGlzLmdyaWREYXRhLmxlbmd0aCA9PT0gMCl7XG4gICAgICB0aGlzLnNob3dDb2x1bW5zID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNhdmVIYW5kbGVyKHsgc2VuZGVyLCByb3dJbmRleCwgZm9ybUdyb3VwLCBpc05ldyB9OiBTYXZlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnNhdmVSb3cuZW1pdCh7IHJvd0RhdGE6IGZvcm1Hcm91cC52YWx1ZSwgaXNOZXcgfSk7XG4gICAgLy8gQ2xvc2UgdGhlIGVkaXRvciBmb3IgYSBnaXZlbiByb3cgXG4gICAgc2VuZGVyLmNsb3NlUm93KHJvd0luZGV4KTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVIYW5kbGVyKGFyZ3M6IFJlbW92ZUV2ZW50KTogdm9pZCB7XG4gICAgLy8gcmVtb3ZlIHRoZSBjdXJyZW50IGRhdGFJdGVtIGZyb20gdGhlIGN1cnJlbnQgZGF0YSBzb3VyY2UsXG4gICAgdGhpcy5yZW1vdmVSb3cuZW1pdChhcmdzLmRhdGFJdGVtKTtcbiAgICBpZih0aGlzLmdyaWREYXRhLmxlbmd0aCA9PT0gMCl7XG4gICAgICB0aGlzLnNob3dDb2x1bW5zID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjbG9zZUVkaXRvcihncmlkOiBHcmlkQ29tcG9uZW50LCByb3dJbmRleCA9IHRoaXMuZWRpdGVkUm93SW5kZXgpIHtcbiAgICAvLyBjbG9zZSB0aGUgZWRpdG9yXG4gICAgZ3JpZC5jbG9zZVJvdyhyb3dJbmRleCk7XG4gICAgLy8gcmVzZXQgdGhlIGhlbHBlcnNcbiAgICB0aGlzLmVkaXRlZFJvd0luZGV4ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuZm9ybUdyb3VwID0gdW5kZWZpbmVkO1xuICB9XG5cbn1cbiIsIjxrZW5kby1ncmlkIFtrZW5kb0dyaWRCaW5kaW5nXT1cImdyaWREYXRhXCIgKGRhdGFTdGF0ZUNoYW5nZSk9XCJvblN0YXRlQ2hhbmdlKCRldmVudClcIiAoZWRpdCk9XCJlZGl0SGFuZGxlcigkZXZlbnQpXCJcbiAgKGNhbmNlbCk9XCJjYW5jZWxIYW5kbGVyKCRldmVudClcIiAoc2F2ZSk9XCJzYXZlSGFuZGxlcigkZXZlbnQpXCIgKHJlbW92ZSk9XCJyZW1vdmVIYW5kbGVyKCRldmVudClcIlxuICAoYWRkKT1cImFkZEhhbmRsZXIoJGV2ZW50KVwiIFtuYXZpZ2FibGVdPVwidHJ1ZVwiPlxuICA8bmctdGVtcGxhdGUga2VuZG9HcmlkVG9vbGJhclRlbXBsYXRlPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImhlYWRlclwiPjwvbmctY29udGVudD5cbiAgICA8bGliLWdyaWQtc3BhY2VyPjwvbGliLWdyaWQtc3BhY2VyPlxuICAgIDxidXR0b24ga2VuZG9HcmlkQWRkQ29tbWFuZCB0aGVtZUNvbG9yPVwicHJpbWFyeVwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZGl2LmhlYWRlci1hZGQtYnRuXCI+PC9uZy1jb250ZW50PlxuICAgIDwvYnV0dG9uPlxuICA8L25nLXRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgKm5nSWY9XCIhc2hvd0NvbHVtbnNcIiBrZW5kb0dyaWROb1JlY29yZHNUZW1wbGF0ZT5cbiAgICA8bGliLXR5cG9ncmFwaHkgW2RlZmF1bHRUZXh0XT1cIm5vUmVjb3Jkc0NvbnRlbnRcIiB0eXBlPVwiQk9EWV9NRURJVU1cIj48L2xpYi10eXBvZ3JhcGh5PlxuICA8L25nLXRlbXBsYXRlPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0NvbHVtbnNcIj5cbiAgICA8a2VuZG8tZ3JpZC1jb2x1bW4gKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29sdW1uRGF0YVwiIFtmaWVsZF09XCJpdGVtLmZpZWxkXCIgW3RpdGxlXT1cIml0ZW0udGl0bGVcIiBbZWRpdG9yXT1cIml0ZW0uZWRpdG9yXCI+XG4gICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCJpdGVtLmN1c3RvbVwiIGtlbmRvR3JpZEVkaXRUZW1wbGF0ZSBsZXQtZGF0YUl0ZW09XCJkYXRhSXRlbVwiIGxldC1mb3JtR3JvdXA9XCJmb3JtR3JvdXBcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGVSZWYxOyBjb250ZXh0OiB7JGltcGxpY2l0OiBkYXRhSXRlbSwgZm9ybUdyb3VwOiBmb3JtR3JvdXB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiaXRlbS5jdXN0b21cIiBrZW5kb0dyaWRDZWxsVGVtcGxhdGUgbGV0LWRhdGFJdGVtPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGVSZWYyOyBjb250ZXh0OiB7JGltcGxpY2l0OiBkYXRhSXRlbX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9rZW5kby1ncmlkLWNvbHVtbj5cbiAgICA8a2VuZG8tZ3JpZC1jb21tYW5kLWNvbHVtbiBbd2lkdGhdPVwiMTIwXCI+XG4gICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkQ2VsbFRlbXBsYXRlIGxldC1pc05ldz1cImlzTmV3XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb21tYW5kLWNvbHVtblwiPlxuICAgICAgICAgIDxsaWItdG9vbHRpcCBwb3NpdGlvbj1cInRvcFwiIHNob3dPbj1cImhvdmVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+RWRpdDwvZGl2PlxuICAgICAgICAgICAgPGJ1dHRvbiBrZW5kb0dyaWRFZGl0Q29tbWFuZCBmaWxsTW9kZT1cImNsZWFyXCIgdGhlbWVDb2xvcj1cInByaW1hcnlcIj5cbiAgICAgICAgICAgICAgPGtlbmRvLWljb24gbmFtZT1cInBlbmNpbFwiPjwva2VuZG8taWNvbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvbGliLXRvb2x0aXA+XG4gICAgICAgICAgPGxpYi10b29sdGlwIHBvc2l0aW9uPVwidG9wXCIgc2hvd09uPVwiaG92ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5SZW1vdmU8L2Rpdj5cbiAgICAgICAgICAgIDxidXR0b24ga2VuZG9HcmlkUmVtb3ZlQ29tbWFuZCBmaWxsTW9kZT1cImNsZWFyXCIgdGhlbWVDb2xvcj1cImVycm9yXCI+XG4gICAgICAgICAgICAgIDxrZW5kby1pY29uIG5hbWU9XCJ0cmFzaFwiPjwva2VuZG8taWNvbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvbGliLXRvb2x0aXA+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29tbWFuZC1jb2x1bW5cIj5cbiAgICAgICAgICA8YnV0dG9uIGtlbmRvR3JpZFNhdmVDb21tYW5kIFtkaXNhYmxlZF09XCJmb3JtR3JvdXAgJiYgZm9ybUdyb3VwLmludmFsaWRcIiBmaWxsTW9kZT1cImNsZWFyXCIgdGhlbWVDb2xvcj1cInByaW1hcnlcIj5cbiAgICAgICAgICAgIDxsaWItdG9vbHRpcCBwb3NpdGlvbj1cInRvcFwiIHNob3dPbj1cImhvdmVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5TYXZlPC9kaXY+XG4gICAgICAgICAgICAgIDxrZW5kby1pY29uIG5hbWU9XCJzYXZlXCI+PC9rZW5kby1pY29uPlxuICAgICAgICAgICAgPC9saWItdG9vbHRpcD5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uIGtlbmRvR3JpZENhbmNlbENvbW1hbmQgZmlsbE1vZGU9XCJjbGVhclwiIHRoZW1lQ29sb3I9XCJlcnJvclwiPlxuICAgICAgICAgICAgPGxpYi10b29sdGlwIHBvc2l0aW9uPVwidG9wXCIgc2hvd09uPVwiaG92ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPkNhbmNlbDwvZGl2PlxuICAgICAgICAgICAgICA8bGliLWljb24gbmFtZT1cImNsb3NlXCIgW2ZvbnRTaXplXT1cIjIwXCI+PC9saWItaWNvbj5cbiAgICAgICAgICAgIDwvbGliLXRvb2x0aXA+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2tlbmRvLWdyaWQtY29tbWFuZC1jb2x1bW4+XG4gIDwvbmctY29udGFpbmVyPlxuPC9rZW5kby1ncmlkPlxuIl19
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL21vbGVjdWxlcy9ncmlkL2dyaWQtZm9ybS9ncmlkLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvbW9sZWN1bGVzL2dyaWQvZ3JpZC1mb3JtL2dyaWQtZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBMEIsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7OztBQUlwRSxNQUFNLGVBQWUsR0FBRyxDQUFDLFFBQWEsRUFBYSxFQUFFO0lBQ25ELE1BQU0sSUFBSSxHQUFHLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9CLEtBQUssSUFBSSxXQUFXLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUM3QyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUE7S0FDMUY7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQTtBQU9ELE1BQU0sT0FBTyxpQkFBaUI7SUFvQjVCLFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFuQjlCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLHFCQUFnQixHQUFXLG1CQUFtQixDQUFDO1FBQ3hELGdCQUFXLEdBQUcsS0FBSyxDQUFBO1FBTVYsYUFB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LFNBQVM7K0JBQ0UsZUFBZTtnR0FLaEIsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBSWdCLFlBQVk7c0JBQWpDLFlBQVk7dUJBQUMsTUFBTTtnQkFDRSxZQUFZO3NCQUFqQyxZQUFZO3VCQUFDLE1BQU07Z0JBRVgsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUdHLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29udGVudENoaWxkLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFJlbmRlcmVyMiwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBZGRFdmVudCwgQ2FuY2VsRXZlbnQsIEVkaXRFdmVudCwgR3JpZENvbXBvbmVudCwgUmVtb3ZlRXZlbnQsIFNhdmVFdmVudCB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWdyaWQnO1xuaW1wb3J0IHsgU3RhdGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tZGF0YS1xdWVyeSc7XG5cbmNvbnN0IGNyZWF0ZUZvcm1Hcm91cCA9IChjb250cm9sczogYW55KTogRm9ybUdyb3VwID0+IHtcbiAgY29uc3QgZm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xuICBmb3IgKGxldCBjb250cm9sTmFtZSBvZiBPYmplY3Qua2V5cyhjb250cm9scykpIHtcbiAgICBmb3JtLmFkZENvbnRyb2woY29udHJvbE5hbWUsIG5ldyBGb3JtQ29udHJvbChjb250cm9sc1tjb250cm9sTmFtZV0sIFZhbGlkYXRvcnMucmVxdWlyZWQpKVxuICB9XG4gIHJldHVybiBmb3JtO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItZ3JpZC1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyaWQtZm9ybS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRGb3JtQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc2hvd1Rvb2xiYXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbm9SZWNvcmRzQ29udGVudDogc3RyaW5nID0gJ05vIHRhZ3MgYWRkZWQgeWV0JztcbiAgc2hvd0NvbHVtbnMgPSBmYWxzZVxuICBwdWJsaWMgZm9ybUdyb3VwITogRm9ybUdyb3VwIHwgYW55O1xuXG4gIEBDb250ZW50Q2hpbGQoJ3RtcDEnKSB0ZW1wbGF0ZVJlZjEhOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbDtcbiAgQENvbnRlbnRDaGlsZCgndG1wMicpIHRlbXBsYXRlUmVmMiE6IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsO1xuXG4gIEBJbnB1dCgpIGdyaWREYXRhOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBjb2x1bW5EYXRhOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBjb250cm9sczogYW55ID0ge307XG4gIGNvdW50ZXIhOiBudW1iZXI7XG4gIEBPdXRwdXQoKSBhZGRPclVwZGF0ZVJvdyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZGVsZXRlZFJvdyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIHByaXZhdGUgZWRpdGVkUm93SW5kZXg6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgQE91dHB1dCgpIHJlbW92ZVJvdyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgc2F2ZVJvdyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XG5cbiAgcHVibGljIG9uU3RhdGVDaGFuZ2Uoc3RhdGU6IFN0YXRlKTogdm9pZCB7XG4gICAgY29uc29sZS5sb2coJ29uU3RhdGVDaGFuZ2U6ICcsIHN0YXRlKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRIYW5kbGVyKGFyZ3M6IEFkZEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5zaG93Q29sdW1ucyA9IHRydWVcbiAgICB0aGlzLmNsb3NlRWRpdG9yKGFyZ3Muc2VuZGVyKTtcbiAgICAvLyBkZWZpbmUgYWxsIGVkaXRhYmxlIGZpZWxkcyB2YWxpZGF0b3JzIGFuZCBkZWZhdWx0IHZhbHVlc1xuICAgIHRoaXMuZm9ybUdyb3VwID0gY3JlYXRlRm9ybUdyb3VwKHRoaXMuY29udHJvbHMpOztcbiAgICAvLyBzaG93IHRoZSBuZXcgcm93IGVkaXRvciwgd2l0aCB0aGUgYEZvcm1Hcm91cGAgYnVpbGQgYWJvdmVcbiAgICBhcmdzLnNlbmRlci5hZGRSb3codGhpcy5mb3JtR3JvdXApO1xuICB9XG5cbiAgcHVibGljIGVkaXRIYW5kbGVyKGFyZ3M6IEVkaXRFdmVudCk6IHZvaWQge1xuICAgIC8vIGRlZmluZSBhbGwgZWRpdGFibGUgZmllbGRzIHZhbGlkYXRvcnMgYW5kIGRlZmF1bHQgdmFsdWVzXG4gICAgY29uc3QgeyBkYXRhSXRlbSB9ID0gYXJncztcbiAgICB0aGlzLmNsb3NlRWRpdG9yKGFyZ3Muc2VuZGVyKTtcblxuICAgIHRoaXMuZm9ybUdyb3VwID0gY3JlYXRlRm9ybUdyb3VwKGRhdGFJdGVtKTtcbiAgICB0aGlzLmVkaXRlZFJvd0luZGV4ID0gYXJncy5yb3dJbmRleDtcbiAgICAvLyBwdXQgdGhlIHJvdyBpbiBlZGl0IG1vZGUsIHdpdGggdGhlIGBGb3JtR3JvdXBgIGJ1aWxkIGFib3ZlXG4gICAgYXJncy5zZW5kZXIuZWRpdFJvdyhhcmdzLnJvd0luZGV4LCB0aGlzLmZvcm1Hcm91cCk7XG4gIH1cblxuICBwdWJsaWMgY2FuY2VsSGFuZGxlcihhcmdzOiBDYW5jZWxFdmVudCk6IHZvaWQge1xuICAgIC8vIGNsb3NlIHRoZSBlZGl0b3IgZm9yIHRoZSBnaXZlbiByb3dcbiAgICB0aGlzLmNsb3NlRWRpdG9yKGFyZ3Muc2VuZGVyLCBhcmdzLnJvd0luZGV4KTtcbiAgICBpZih0aGlzLmdyaWREYXRhLmxlbmd0aCA9PT0gMCl7XG4gICAgICB0aGlzLnNob3dDb2x1bW5zID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNhdmVIYW5kbGVyKHsgc2VuZGVyLCByb3dJbmRleCwgZm9ybUdyb3VwLCBpc05ldyB9OiBTYXZlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnNhdmVSb3cuZW1pdCh7IHJvd0RhdGE6IGZvcm1Hcm91cC52YWx1ZSwgaXNOZXcgfSk7XG4gICAgLy8gQ2xvc2UgdGhlIGVkaXRvciBmb3IgYSBnaXZlbiByb3cgXG4gICAgc2VuZGVyLmNsb3NlUm93KHJvd0luZGV4KTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVIYW5kbGVyKGFyZ3M6IFJlbW92ZUV2ZW50KTogdm9pZCB7XG4gICAgLy8gcmVtb3ZlIHRoZSBjdXJyZW50IGRhdGFJdGVtIGZyb20gdGhlIGN1cnJlbnQgZGF0YSBzb3VyY2UsXG4gICAgdGhpcy5yZW1vdmVSb3cuZW1pdChhcmdzLmRhdGFJdGVtKTtcbiAgICBpZih0aGlzLmdyaWREYXRhLmxlbmd0aCA9PT0gMCl7XG4gICAgICB0aGlzLnNob3dDb2x1bW5zID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjbG9zZUVkaXRvcihncmlkOiBHcmlkQ29tcG9uZW50LCByb3dJbmRleCA9IHRoaXMuZWRpdGVkUm93SW5kZXgpIHtcbiAgICAvLyBjbG9zZSB0aGUgZWRpdG9yXG4gICAgZ3JpZC5jbG9zZVJvdyhyb3dJbmRleCk7XG4gICAgLy8gcmVzZXQgdGhlIGhlbHBlcnNcbiAgICB0aGlzLmVkaXRlZFJvd0luZGV4ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuZm9ybUdyb3VwID0gdW5kZWZpbmVkO1xuICB9XG5cbn1cbiIsIjxrZW5kby1ncmlkIFtrZW5kb0dyaWRCaW5kaW5nXT1cImdyaWREYXRhXCIgKGRhdGFTdGF0ZUNoYW5nZSk9XCJvblN0YXRlQ2hhbmdlKCRldmVudClcIiAoZWRpdCk9XCJlZGl0SGFuZGxlcigkZXZlbnQpXCJcbiAgKGNhbmNlbCk9XCJjYW5jZWxIYW5kbGVyKCRldmVudClcIiAoc2F2ZSk9XCJzYXZlSGFuZGxlcigkZXZlbnQpXCIgKHJlbW92ZSk9XCJyZW1vdmVIYW5kbGVyKCRldmVudClcIlxuICAoYWRkKT1cImFkZEhhbmRsZXIoJGV2ZW50KVwiIFtuYXZpZ2FibGVdPVwidHJ1ZVwiPlxuICA8bmctdGVtcGxhdGUga2VuZG9HcmlkVG9vbGJhclRlbXBsYXRlPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImhlYWRlclwiPjwvbmctY29udGVudD5cbiAgICA8bGliLWdyaWQtc3BhY2VyPjwvbGliLWdyaWQtc3BhY2VyPlxuICAgIDxidXR0b24ga2VuZG9HcmlkQWRkQ29tbWFuZCB0aGVtZUNvbG9yPVwicHJpbWFyeVwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZGl2LmhlYWRlci1hZGQtYnRuXCI+PC9uZy1jb250ZW50PlxuICAgIDwvYnV0dG9uPlxuICA8L25nLXRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgKm5nSWY9XCIhc2hvd0NvbHVtbnNcIiBrZW5kb0dyaWROb1JlY29yZHNUZW1wbGF0ZT5cbiAgICA8bGliLXR5cG9ncmFwaHkgW2RlZmF1bHRUZXh0XT1cIm5vUmVjb3Jkc0NvbnRlbnRcIiB0eXBlPVwiUF9NVUxJU0hfMTZfUkVHVUxBUlwiPjwvbGliLXR5cG9ncmFwaHk+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93Q29sdW1uc1wiPlxuICAgIDxrZW5kby1ncmlkLWNvbHVtbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb2x1bW5EYXRhXCIgW2ZpZWxkXT1cIml0ZW0uZmllbGRcIiBbdGl0bGVdPVwiaXRlbS50aXRsZVwiIFtlZGl0b3JdPVwiaXRlbS5lZGl0b3JcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cIml0ZW0uY3VzdG9tXCIga2VuZG9HcmlkRWRpdFRlbXBsYXRlIGxldC1kYXRhSXRlbT1cImRhdGFJdGVtXCIgbGV0LWZvcm1Hcm91cD1cImZvcm1Hcm91cFwiPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZVJlZjE7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGRhdGFJdGVtLCBmb3JtR3JvdXA6IGZvcm1Hcm91cH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCJpdGVtLmN1c3RvbVwiIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZVJlZjI7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGRhdGFJdGVtfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2tlbmRvLWdyaWQtY29sdW1uPlxuICAgIDxrZW5kby1ncmlkLWNvbW1hbmQtY29sdW1uIFt3aWR0aF09XCIxMjBcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWRDZWxsVGVtcGxhdGUgbGV0LWlzTmV3PVwiaXNOZXdcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbW1hbmQtY29sdW1uXCI+XG4gICAgICAgICAgPGxpYi10b29sdGlwIHBvc2l0aW9uPVwidG9wXCIgc2hvd09uPVwiaG92ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5FZGl0PC9kaXY+XG4gICAgICAgICAgICA8YnV0dG9uIGtlbmRvR3JpZEVkaXRDb21tYW5kIGZpbGxNb2RlPVwiY2xlYXJcIiB0aGVtZUNvbG9yPVwicHJpbWFyeVwiPlxuICAgICAgICAgICAgICA8a2VuZG8taWNvbiBuYW1lPVwicGVuY2lsXCI+PC9rZW5kby1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9saWItdG9vbHRpcD5cbiAgICAgICAgICA8bGliLXRvb2x0aXAgcG9zaXRpb249XCJ0b3BcIiBzaG93T249XCJob3ZlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlJlbW92ZTwvZGl2PlxuICAgICAgICAgICAgPGJ1dHRvbiBrZW5kb0dyaWRSZW1vdmVDb21tYW5kIGZpbGxNb2RlPVwiY2xlYXJcIiB0aGVtZUNvbG9yPVwiZXJyb3JcIj5cbiAgICAgICAgICAgICAgPGtlbmRvLWljb24gbmFtZT1cInRyYXNoXCI+PC9rZW5kby1pY29uPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9saWItdG9vbHRpcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb21tYW5kLWNvbHVtblwiPlxuICAgICAgICAgIDxidXR0b24ga2VuZG9HcmlkU2F2ZUNvbW1hbmQgW2Rpc2FibGVkXT1cImZvcm1Hcm91cCAmJiBmb3JtR3JvdXAuaW52YWxpZFwiIGZpbGxNb2RlPVwiY2xlYXJcIiB0aGVtZUNvbG9yPVwicHJpbWFyeVwiPlxuICAgICAgICAgICAgPGxpYi10b29sdGlwIHBvc2l0aW9uPVwidG9wXCIgc2hvd09uPVwiaG92ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlNhdmU8L2Rpdj5cbiAgICAgICAgICAgICAgPGtlbmRvLWljb24gbmFtZT1cInNhdmVcIj48L2tlbmRvLWljb24+XG4gICAgICAgICAgICA8L2xpYi10b29sdGlwPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b24ga2VuZG9HcmlkQ2FuY2VsQ29tbWFuZCBmaWxsTW9kZT1cImNsZWFyXCIgdGhlbWVDb2xvcj1cImVycm9yXCI+XG4gICAgICAgICAgICA8bGliLXRvb2x0aXAgcG9zaXRpb249XCJ0b3BcIiBzaG93T249XCJob3ZlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcC1jb250ZW50XCI+Q2FuY2VsPC9kaXY+XG4gICAgICAgICAgICAgIDxsaWItaWNvbiBuYW1lPVwiY2xvc2VcIiBbZm9udFNpemVdPVwiMjBcIj48L2xpYi1pY29uPlxuICAgICAgICAgICAgPC9saWItdG9vbHRpcD5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwva2VuZG8tZ3JpZC1jb21tYW5kLWNvbHVtbj5cbiAgPC9uZy1jb250YWluZXI+XG48L2tlbmRvLWdyaWQ+XG4iXX0=
|
|
@@ -177,11 +177,11 @@ export class LibGridComponent {
|
|
|
177
177
|
this.deletedRowData.emit(rowDetails);
|
|
178
178
|
}
|
|
179
179
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LibGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
180
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LibGridComponent, selector: "lib-grid", inputs: { gridData: "gridData", columnData: "columnData", pageSize: "pageSize", pageable: "pageable", sortable: "sortable", groupable: "groupable", reorderable: "reorderable", resizable: "resizable", checkBoxWidth: "checkBoxWidth", checkBoxColumnResizable: "checkBoxColumnResizable", checkBoxColumnMenu: "checkBoxColumnMenu", checkBoxColumnShowSelectedAll: "checkBoxColumnShowSelectedAll", checkBoxRequired: "checkBoxRequired", columnMenu: "columnMenu", mode: "mode", checkboxOnly: "checkboxOnly", dragColumns: "dragColumns", navigable: "navigable", height: "height", gridRowSelectByValue: "gridRowSelectByValue", noRecordsContent: "noRecordsContent", showToolbar: "showToolbar", kebabList: "kebabList", showKebab: "showKebab", icon: "icon", kebabColumnWidth: "kebabColumnWidth", preSelected: "preSelected", ignoreColumnCellClick: "ignoreColumnCellClick", allowColumnClick: "allowColumnClick", expandRowIndex: "expandRowIndex", customExpandRowColumn: "customExpandRowColumn", deleteColumnWidth: "deleteColumnWidth", expandRowColumnWidth: "expandRowColumnWidth", expandRows: "expandRows", showDeleteColumn: "showDeleteColumn" }, outputs: { selectedRowData: "selectedRowData", rowDetails: "rowDetails", kebabItemClick: "kebabItemClick", rowDataOfClickedCell: "rowDataOfClickedCell", deletedRowData: "deletedRowData" }, queries: [{ propertyName: "templateRef", first: true, predicate: ["multiColumnData"], descendants: true }, { propertyName: "detailTemplate", first: true, predicate: ["detailTemplate"], descendants: true }, { propertyName: "impactColumn", first: true, predicate: ["impactColumn"], descendants: true }], viewQueries: [{ propertyName: "grid", first: true, predicate: GridComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<kendo-grid [kendoGridBinding]=\"gridData\" [pageSize]=\"pageSize\" [selectable]=\"selectableSettings\" [pageable]=\"pageable\"\n [sortable]=\"sortable\" [groupable]=\"groupable\" [reorderable]=\"reorderable\" [resizable]=\"resizable\"\n [columnMenu]=\"columnMenu\" [navigable]=\"navigable\" [height]=\"height\" (change)=\"setSelectableSettings()\"\n (selectionChange)=\"onSelectionChange($event)\" [kendoGridSelectBy]=\"gridRowSelectByValue\"\n (detailExpand)=\"onDetailExpand($event)\" [selectedKeys]=\"preSelected\" (cellClick)=\"cellClickHandler($event)\">\n\n <ng-template *ngIf=\"showToolbar\" kendoGridToolbarTemplate>\n <ng-content></ng-content>\n </ng-template>\n\n <ng-template *ngIf=\"this.gridData.length === 0\" kendoGridNoRecordsTemplate>\n <lib-typography [defaultText]=\"noRecordsContent\" type=\"BODY_MEDIUM\"></lib-typography>\n </ng-template>\n\n <ng-container *ngIf=\"gridData.length > 0\">\n <kendo-grid-checkbox-column *ngIf=\"checkBoxRequired === true\" [width]=\"checkBoxWidth\"\n [resizable]=\"checkBoxColumnResizable\" [columnMenu]=\"checkBoxColumnMenu\"\n [showSelectAll]=\"checkBoxColumnShowSelectedAll\" class=\"checkbox-column\">\n </kendo-grid-checkbox-column>\n\n <kendo-grid-column *ngFor=\"let item of columnData\" [field]=\"item.field\" [title]=\"item.title\"\n [width]=\"item.columnWidth\" class=\"grid-column\">\n <ng-template *ngIf=\"item.custom\" kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"templateRef; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"item.impact\" kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"impactColumn; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n </kendo-grid-column>\n\n <kendo-grid-column *ngIf=\"showDeleteColumn\" [width]=\"deleteColumnWidth\" class=\"delete-column\">\n <ng-template kendoGridCellTemplate let-dataItem let-rowIndex=\"rowIndex\">\n <lib-tooltip showOn=\"hover\" position=\"bottom\" class=\"remove-tooltip\">\n <kendo-button [svgIcon]=\"deleteIcon\" title=\"delete\" fillMode=\"clear\" (click)=\"onDelete(dataItem)\"\n class=\"trash-icon\"></kendo-button>\n <div class=\"tooltip-content\">\n <p>Remove</p>\n </div>\n </lib-tooltip>\n </ng-template>\n </kendo-grid-column>\n\n <kendo-grid-column [width]=\"kebabColumnWidth\" class=\"kebab-column\" *ngIf=\"showKebab\">\n <ng-template kendoGridCellTemplate let-dataItem let-rowIndex=\"rowIndex\">\n <kendo-dropdownbutton [svgIcon]=\"icon\" fillMode=\"clear\" [data]=\"kebabList\" class=\"kebab\"\n (itemClick)=\"onKebabClick($event, dataItem)\"\n [popupSettings]=\"{ align: 'right', animate: true, popupClass: 'kebab-list' }\"></kendo-dropdownbutton>\n </ng-template>\n </kendo-grid-column>\n </ng-container>\n\n <ng-template kendoGridDetailTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"detailTemplate; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n\n <kendo-grid-column *ngIf=\"customExpandRowColumn\" [width]=\"expandRowColumnWidth\" class=\"grid-column\">\n <ng-template kendoGridCellTemplate let-dataItem let-rowIndex=\"rowIndex\">\n <kendo-button *ngIf=\"!expandRowIndex.includes(rowIndex)\" [svgIcon]=\"arrowDownIcon\" (click)=\"expandRow(rowIndex)\"\n fillMode=\"flat\" class=\"arrow-btn\">\n </kendo-button>\n <kendo-button *ngIf=\"expandRowIndex.includes(rowIndex)\" [svgIcon]=\"arrowUpIcon\" (click)=\"collapseRow(rowIndex)\"\n fillMode=\"flat\" class=\"arrow-btn\">\n </kendo-button>\n </ng-template>\n </kendo-grid-column>\n\n</kendo-grid>\n", styles: ["::ng-deep .k-menu-group .k-item.k-focus>.k-link{box-shadow:none}::ng-deep .k-grid tr{font-family:Inter,sans-serif!important;font-weight:600!important;font-style:normal!important;font-size:12px!important;line-height:16px!important;letter-spacing:.25px!important}::ng-deep .k-grid tr:hover{font-family:Inter,sans-serif!important;font-weight:600!important;font-style:normal!important;font-size:12px!important;line-height:16px!important;letter-spacing:.25px!important}::ng-deep .k-grid-norecords{text-align:left;opacity:.4}::ng-deep .k-grid-norecords td{padding:14px 0 14px 24px!important}::ng-deep .k-column-title{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:16px!important;line-height:24px!important}::ng-deep .k-grid .k-hierarchy-cell{width:0;display:none}::ng-deep .k-grid th.k-header{border-width:0}::ng-deep .kebab-column,::ng-deep .delete-column,::ng-deep .grid-column,::ng-deep .checkbox-column{border-left:hidden!important}::ng-deep .checkbox-column{padding:.75rem 0rem .5rem 1rem!important}::ng-deep .k-grid .k-hierarchy-col{width:0;display:none}::ng-deep .k-grid .k-detail-row .k-detail-cell{padding:16px 8px 8px 16px}::ng-deep .k-grid th.k-header input.k-checkbox{margin-left:.5rem}::ng-deep .arrow-btn{padding:.5rem!important}::ng-deep .trash-icon path{color:#dc267f!important}::ng-deep kendo-tooltip.k-tooltip{background-color:#fff;color:#000}::ng-deep .delete-column{padding:8px 0}::ng-deep .k-grid-header{border-bottom-width:0px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "component", type: i2.DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["arrowIcon", "icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor", "buttonAttributes"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }, { kind: "component", type: i3.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "rowReorderable", "navigable", "navigatable", "autoSize", "rowClass", "rowSticky", "rowSelected", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "isDetailExpanded", "isGroupExpanded"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i3.ToolbarTemplateDirective, selector: "[kendoGridToolbarTemplate]", inputs: ["position"] }, { kind: "directive", type: i3.DataBindingDirective, selector: "[kendoGridBinding]", inputs: ["skip", "sort", "filter", "pageSize", "group", "kendoGridBinding"] }, { kind: "directive", type: i3.SelectionDirective, selector: "[kendoGridSelectBy]" }, { kind: "component", type: i3.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterable", "editable"] }, { kind: "directive", type: i3.DetailTemplateDirective, selector: "[kendoGridDetailTemplate]", inputs: ["kendoGridDetailTemplateShowIf"] }, { kind: "component", type: i3.CheckboxColumnComponent, selector: "kendo-grid-checkbox-column", inputs: ["showSelectAll"] }, { kind: "directive", type: i3.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i3.NoRecordsTemplateDirective, selector: "[kendoGridNoRecordsTemplate]" }, { kind: "component", type: i4.TooltipComponent, selector: "lib-tooltip", inputs: ["position", "tooltipWidth", "tooltipHeight", "showOn", "closable", "title", "callout"] }, { kind: "component", type: i5.TypographyComponent, selector: "lib-typography", inputs: ["type", "defaultText", "isLabel", "hiddenLabel"] }] }); }
|
|
180
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LibGridComponent, selector: "lib-grid", inputs: { gridData: "gridData", columnData: "columnData", pageSize: "pageSize", pageable: "pageable", sortable: "sortable", groupable: "groupable", reorderable: "reorderable", resizable: "resizable", checkBoxWidth: "checkBoxWidth", checkBoxColumnResizable: "checkBoxColumnResizable", checkBoxColumnMenu: "checkBoxColumnMenu", checkBoxColumnShowSelectedAll: "checkBoxColumnShowSelectedAll", checkBoxRequired: "checkBoxRequired", columnMenu: "columnMenu", mode: "mode", checkboxOnly: "checkboxOnly", dragColumns: "dragColumns", navigable: "navigable", height: "height", gridRowSelectByValue: "gridRowSelectByValue", noRecordsContent: "noRecordsContent", showToolbar: "showToolbar", kebabList: "kebabList", showKebab: "showKebab", icon: "icon", kebabColumnWidth: "kebabColumnWidth", preSelected: "preSelected", ignoreColumnCellClick: "ignoreColumnCellClick", allowColumnClick: "allowColumnClick", expandRowIndex: "expandRowIndex", customExpandRowColumn: "customExpandRowColumn", deleteColumnWidth: "deleteColumnWidth", expandRowColumnWidth: "expandRowColumnWidth", expandRows: "expandRows", showDeleteColumn: "showDeleteColumn" }, outputs: { selectedRowData: "selectedRowData", rowDetails: "rowDetails", kebabItemClick: "kebabItemClick", rowDataOfClickedCell: "rowDataOfClickedCell", deletedRowData: "deletedRowData" }, queries: [{ propertyName: "templateRef", first: true, predicate: ["multiColumnData"], descendants: true }, { propertyName: "detailTemplate", first: true, predicate: ["detailTemplate"], descendants: true }, { propertyName: "impactColumn", first: true, predicate: ["impactColumn"], descendants: true }], viewQueries: [{ propertyName: "grid", first: true, predicate: GridComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<kendo-grid [kendoGridBinding]=\"gridData\" [pageSize]=\"pageSize\" [selectable]=\"selectableSettings\" [pageable]=\"pageable\"\n [sortable]=\"sortable\" [groupable]=\"groupable\" [reorderable]=\"reorderable\" [resizable]=\"resizable\"\n [columnMenu]=\"columnMenu\" [navigable]=\"navigable\" [height]=\"height\" (change)=\"setSelectableSettings()\"\n (selectionChange)=\"onSelectionChange($event)\" [kendoGridSelectBy]=\"gridRowSelectByValue\"\n (detailExpand)=\"onDetailExpand($event)\" [selectedKeys]=\"preSelected\" (cellClick)=\"cellClickHandler($event)\">\n\n <ng-template *ngIf=\"showToolbar\" kendoGridToolbarTemplate>\n <ng-content></ng-content>\n </ng-template>\n\n <ng-template *ngIf=\"this.gridData.length === 0\" kendoGridNoRecordsTemplate>\n <lib-typography [defaultText]=\"noRecordsContent\" type=\"P_MULISH_16_REGULAR\"></lib-typography>\n </ng-template>\n\n <ng-container *ngIf=\"gridData.length > 0\">\n <kendo-grid-checkbox-column *ngIf=\"checkBoxRequired === true\" [width]=\"checkBoxWidth\"\n [resizable]=\"checkBoxColumnResizable\" [columnMenu]=\"checkBoxColumnMenu\"\n [showSelectAll]=\"checkBoxColumnShowSelectedAll\" class=\"checkbox-column\">\n </kendo-grid-checkbox-column>\n\n <kendo-grid-column *ngFor=\"let item of columnData\" [field]=\"item.field\" [title]=\"item.title\"\n [width]=\"item.columnWidth\" class=\"grid-column\">\n <ng-template *ngIf=\"item.custom\" kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"templateRef; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"item.impact\" kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"impactColumn; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n </kendo-grid-column>\n\n <kendo-grid-column *ngIf=\"showDeleteColumn\" [width]=\"deleteColumnWidth\" class=\"delete-column\">\n <ng-template kendoGridCellTemplate let-dataItem let-rowIndex=\"rowIndex\">\n <lib-tooltip showOn=\"hover\" position=\"bottom\" class=\"remove-tooltip\">\n <kendo-button [svgIcon]=\"deleteIcon\" title=\"delete\" fillMode=\"clear\" (click)=\"onDelete(dataItem)\"\n class=\"trash-icon\"></kendo-button>\n <div class=\"tooltip-content\">\n <p>Remove</p>\n </div>\n </lib-tooltip>\n </ng-template>\n </kendo-grid-column>\n\n <kendo-grid-column [width]=\"kebabColumnWidth\" class=\"kebab-column\" *ngIf=\"showKebab\">\n <ng-template kendoGridCellTemplate let-dataItem let-rowIndex=\"rowIndex\">\n <kendo-dropdownbutton [svgIcon]=\"icon\" fillMode=\"clear\" [data]=\"kebabList\" class=\"kebab\"\n (itemClick)=\"onKebabClick($event, dataItem)\"\n [popupSettings]=\"{ align: 'right', animate: true, popupClass: 'kebab-list' }\"></kendo-dropdownbutton>\n </ng-template>\n </kendo-grid-column>\n </ng-container>\n\n <ng-template kendoGridDetailTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"detailTemplate; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n\n <kendo-grid-column *ngIf=\"customExpandRowColumn\" [width]=\"expandRowColumnWidth\" class=\"grid-column\">\n <ng-template kendoGridCellTemplate let-dataItem let-rowIndex=\"rowIndex\">\n <kendo-button *ngIf=\"!expandRowIndex.includes(rowIndex)\" [svgIcon]=\"arrowDownIcon\" (click)=\"expandRow(rowIndex)\"\n fillMode=\"flat\" class=\"arrow-btn\">\n </kendo-button>\n <kendo-button *ngIf=\"expandRowIndex.includes(rowIndex)\" [svgIcon]=\"arrowUpIcon\" (click)=\"collapseRow(rowIndex)\"\n fillMode=\"flat\" class=\"arrow-btn\">\n </kendo-button>\n </ng-template>\n </kendo-grid-column>\n\n</kendo-grid>\n", styles: ["::ng-deep .k-menu-group .k-item.k-focus>.k-link{box-shadow:none}::ng-deep .k-grid tr{font-family:Mulish,sans-serif;font-weight:400;font-style:normal;font-size:14px;line-height:21px;letter-spacing:.8px}::ng-deep .k-grid tr:hover{font-family:Mulish,sans-serif;font-weight:700;font-style:normal;font-size:14px;line-height:21px;letter-spacing:.8px}::ng-deep .k-grid-norecords{text-align:left;opacity:.4}::ng-deep .k-grid-norecords td{padding:14px 0 14px 24px!important}::ng-deep .k-column-title{font-family:Mulish,sans-serif;font-weight:700;font-style:normal;font-size:16px;line-height:24px;letter-spacing:.2px}::ng-deep .k-grid .k-hierarchy-cell{width:0;display:none}::ng-deep .k-grid th.k-header{border-width:0}::ng-deep .kebab-column,::ng-deep .delete-column,::ng-deep .grid-column,::ng-deep .checkbox-column{border-left:hidden!important}::ng-deep .checkbox-column{padding:.75rem 0rem .5rem 1rem!important}::ng-deep .k-grid .k-hierarchy-col{width:0;display:none}::ng-deep .k-grid .k-detail-row .k-detail-cell{padding:16px 8px 8px 16px}::ng-deep .k-grid th.k-header input.k-checkbox{margin-left:.5rem}::ng-deep .arrow-btn{padding:.5rem!important}::ng-deep .trash-icon path{color:#dc267f!important}::ng-deep kendo-tooltip.k-tooltip{background-color:#fff;color:#000}::ng-deep .delete-column{padding:8px 0}::ng-deep .k-grid-header{border-bottom-width:0px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "component", type: i2.DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: ["arrowIcon", "icon", "svgIcon", "iconClass", "imageUrl", "textField", "data", "size", "rounded", "fillMode", "themeColor", "buttonAttributes"], outputs: ["itemClick", "focus", "blur"], exportAs: ["kendoDropDownButton"] }, { kind: "component", type: i3.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "rowReorderable", "navigable", "navigatable", "autoSize", "rowClass", "rowSticky", "rowSelected", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "isDetailExpanded", "isGroupExpanded"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i3.ToolbarTemplateDirective, selector: "[kendoGridToolbarTemplate]", inputs: ["position"] }, { kind: "directive", type: i3.DataBindingDirective, selector: "[kendoGridBinding]", inputs: ["skip", "sort", "filter", "pageSize", "group", "kendoGridBinding"] }, { kind: "directive", type: i3.SelectionDirective, selector: "[kendoGridSelectBy]" }, { kind: "component", type: i3.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterable", "editable"] }, { kind: "directive", type: i3.DetailTemplateDirective, selector: "[kendoGridDetailTemplate]", inputs: ["kendoGridDetailTemplateShowIf"] }, { kind: "component", type: i3.CheckboxColumnComponent, selector: "kendo-grid-checkbox-column", inputs: ["showSelectAll"] }, { kind: "directive", type: i3.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i3.NoRecordsTemplateDirective, selector: "[kendoGridNoRecordsTemplate]" }, { kind: "component", type: i4.TooltipComponent, selector: "lib-tooltip", inputs: ["position", "tooltipWidth", "tooltipHeight", "showOn", "closable", "title", "callout"] }, { kind: "component", type: i5.TypographyComponent, selector: "lib-typography", inputs: ["type", "defaultText", "isLabel", "hiddenLabel"] }] }); }
|
|
181
181
|
}
|
|
182
182
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LibGridComponent, decorators: [{
|
|
183
183
|
type: Component,
|
|
184
|
-
args: [{ selector: 'lib-grid', template: "<kendo-grid [kendoGridBinding]=\"gridData\" [pageSize]=\"pageSize\" [selectable]=\"selectableSettings\" [pageable]=\"pageable\"\n [sortable]=\"sortable\" [groupable]=\"groupable\" [reorderable]=\"reorderable\" [resizable]=\"resizable\"\n [columnMenu]=\"columnMenu\" [navigable]=\"navigable\" [height]=\"height\" (change)=\"setSelectableSettings()\"\n (selectionChange)=\"onSelectionChange($event)\" [kendoGridSelectBy]=\"gridRowSelectByValue\"\n (detailExpand)=\"onDetailExpand($event)\" [selectedKeys]=\"preSelected\" (cellClick)=\"cellClickHandler($event)\">\n\n <ng-template *ngIf=\"showToolbar\" kendoGridToolbarTemplate>\n <ng-content></ng-content>\n </ng-template>\n\n <ng-template *ngIf=\"this.gridData.length === 0\" kendoGridNoRecordsTemplate>\n <lib-typography [defaultText]=\"noRecordsContent\" type=\"
|
|
184
|
+
args: [{ selector: 'lib-grid', template: "<kendo-grid [kendoGridBinding]=\"gridData\" [pageSize]=\"pageSize\" [selectable]=\"selectableSettings\" [pageable]=\"pageable\"\n [sortable]=\"sortable\" [groupable]=\"groupable\" [reorderable]=\"reorderable\" [resizable]=\"resizable\"\n [columnMenu]=\"columnMenu\" [navigable]=\"navigable\" [height]=\"height\" (change)=\"setSelectableSettings()\"\n (selectionChange)=\"onSelectionChange($event)\" [kendoGridSelectBy]=\"gridRowSelectByValue\"\n (detailExpand)=\"onDetailExpand($event)\" [selectedKeys]=\"preSelected\" (cellClick)=\"cellClickHandler($event)\">\n\n <ng-template *ngIf=\"showToolbar\" kendoGridToolbarTemplate>\n <ng-content></ng-content>\n </ng-template>\n\n <ng-template *ngIf=\"this.gridData.length === 0\" kendoGridNoRecordsTemplate>\n <lib-typography [defaultText]=\"noRecordsContent\" type=\"P_MULISH_16_REGULAR\"></lib-typography>\n </ng-template>\n\n <ng-container *ngIf=\"gridData.length > 0\">\n <kendo-grid-checkbox-column *ngIf=\"checkBoxRequired === true\" [width]=\"checkBoxWidth\"\n [resizable]=\"checkBoxColumnResizable\" [columnMenu]=\"checkBoxColumnMenu\"\n [showSelectAll]=\"checkBoxColumnShowSelectedAll\" class=\"checkbox-column\">\n </kendo-grid-checkbox-column>\n\n <kendo-grid-column *ngFor=\"let item of columnData\" [field]=\"item.field\" [title]=\"item.title\"\n [width]=\"item.columnWidth\" class=\"grid-column\">\n <ng-template *ngIf=\"item.custom\" kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"templateRef; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"item.impact\" kendoGridCellTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"impactColumn; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n </kendo-grid-column>\n\n <kendo-grid-column *ngIf=\"showDeleteColumn\" [width]=\"deleteColumnWidth\" class=\"delete-column\">\n <ng-template kendoGridCellTemplate let-dataItem let-rowIndex=\"rowIndex\">\n <lib-tooltip showOn=\"hover\" position=\"bottom\" class=\"remove-tooltip\">\n <kendo-button [svgIcon]=\"deleteIcon\" title=\"delete\" fillMode=\"clear\" (click)=\"onDelete(dataItem)\"\n class=\"trash-icon\"></kendo-button>\n <div class=\"tooltip-content\">\n <p>Remove</p>\n </div>\n </lib-tooltip>\n </ng-template>\n </kendo-grid-column>\n\n <kendo-grid-column [width]=\"kebabColumnWidth\" class=\"kebab-column\" *ngIf=\"showKebab\">\n <ng-template kendoGridCellTemplate let-dataItem let-rowIndex=\"rowIndex\">\n <kendo-dropdownbutton [svgIcon]=\"icon\" fillMode=\"clear\" [data]=\"kebabList\" class=\"kebab\"\n (itemClick)=\"onKebabClick($event, dataItem)\"\n [popupSettings]=\"{ align: 'right', animate: true, popupClass: 'kebab-list' }\"></kendo-dropdownbutton>\n </ng-template>\n </kendo-grid-column>\n </ng-container>\n\n <ng-template kendoGridDetailTemplate let-dataItem>\n <ng-container *ngTemplateOutlet=\"detailTemplate; context: {$implicit: dataItem}\"></ng-container>\n </ng-template>\n\n <kendo-grid-column *ngIf=\"customExpandRowColumn\" [width]=\"expandRowColumnWidth\" class=\"grid-column\">\n <ng-template kendoGridCellTemplate let-dataItem let-rowIndex=\"rowIndex\">\n <kendo-button *ngIf=\"!expandRowIndex.includes(rowIndex)\" [svgIcon]=\"arrowDownIcon\" (click)=\"expandRow(rowIndex)\"\n fillMode=\"flat\" class=\"arrow-btn\">\n </kendo-button>\n <kendo-button *ngIf=\"expandRowIndex.includes(rowIndex)\" [svgIcon]=\"arrowUpIcon\" (click)=\"collapseRow(rowIndex)\"\n fillMode=\"flat\" class=\"arrow-btn\">\n </kendo-button>\n </ng-template>\n </kendo-grid-column>\n\n</kendo-grid>\n", styles: ["::ng-deep .k-menu-group .k-item.k-focus>.k-link{box-shadow:none}::ng-deep .k-grid tr{font-family:Mulish,sans-serif;font-weight:400;font-style:normal;font-size:14px;line-height:21px;letter-spacing:.8px}::ng-deep .k-grid tr:hover{font-family:Mulish,sans-serif;font-weight:700;font-style:normal;font-size:14px;line-height:21px;letter-spacing:.8px}::ng-deep .k-grid-norecords{text-align:left;opacity:.4}::ng-deep .k-grid-norecords td{padding:14px 0 14px 24px!important}::ng-deep .k-column-title{font-family:Mulish,sans-serif;font-weight:700;font-style:normal;font-size:16px;line-height:24px;letter-spacing:.2px}::ng-deep .k-grid .k-hierarchy-cell{width:0;display:none}::ng-deep .k-grid th.k-header{border-width:0}::ng-deep .kebab-column,::ng-deep .delete-column,::ng-deep .grid-column,::ng-deep .checkbox-column{border-left:hidden!important}::ng-deep .checkbox-column{padding:.75rem 0rem .5rem 1rem!important}::ng-deep .k-grid .k-hierarchy-col{width:0;display:none}::ng-deep .k-grid .k-detail-row .k-detail-cell{padding:16px 8px 8px 16px}::ng-deep .k-grid th.k-header input.k-checkbox{margin-left:.5rem}::ng-deep .arrow-btn{padding:.5rem!important}::ng-deep .trash-icon path{color:#dc267f!important}::ng-deep kendo-tooltip.k-tooltip{background-color:#fff;color:#000}::ng-deep .delete-column{padding:8px 0}::ng-deep .k-grid-header{border-bottom-width:0px}\n"] }]
|
|
185
185
|
}], ctorParameters: function () { return []; }, propDecorators: { templateRef: [{
|
|
186
186
|
type: ContentChild,
|
|
187
187
|
args: ['multiColumnData']
|
|
@@ -275,4 +275,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
275
275
|
}], showDeleteColumn: [{
|
|
276
276
|
type: Input
|
|
277
277
|
}] } });
|
|
278
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9tb2xlY3VsZXMvZ3JpZC9ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL21vbGVjdWxlcy9ncmlkL2dyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBR04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFJTCxhQUFhLEdBQ2QsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBRUwsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixhQUFhLEVBQ2IsU0FBUyxHQUNWLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7QUFPbkMsTUFBTSxPQUFPLGdCQUFnQjtJQXNEM0I7UUFoRFMsYUFBUSxHQUFRLEVBQUUsQ0FBQztRQUNuQixlQUFVLEdBQVEsRUFBRSxDQUFDO1FBQ3JCLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFDckIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFDM0IsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixrQkFBYSxHQUFXLEVBQUUsQ0FBQztRQUMzQiw0QkFBdUIsR0FBWSxLQUFLLENBQUM7UUFDekMsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQ3BDLGtDQUE2QixHQUFZLElBQUksQ0FBQztRQUM5QyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDbEMsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixTQUFJLEdBQStCLFVBQVUsQ0FBQztRQUM5Qyxp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QUF2QixNQUFNO2dCQUNFLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFNlbGVjdGFibGVTZXR0aW5ncyxcbiAgU2VsZWN0YWJsZU1vZGUsXG4gIENlbGxDbGlja0V2ZW50LFxuICBHcmlkQ29tcG9uZW50LFxufSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1ncmlkJztcbmltcG9ydCB7XG4gIFNWR0ljb24sXG4gIG1vcmVWZXJ0aWNhbEljb24sXG4gIGNoZXZyb25Eb3duSWNvbixcbiAgY2hldnJvblVwSWNvbixcbiAgdHJhc2hJY29uLFxufSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tc3ZnLWljb25zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWdyaWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JpZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyaWQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTGliR3JpZENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBDb250ZW50Q2hpbGQoJ211bHRpQ29sdW1uRGF0YScpIHRlbXBsYXRlUmVmITogVGVtcGxhdGVSZWY8YW55PiB8IG51bGw7XG4gIEBDb250ZW50Q2hpbGQoJ2RldGFpbFRlbXBsYXRlJykgZGV0YWlsVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbDtcbiAgQENvbnRlbnRDaGlsZCgnaW1wYWN0Q29sdW1uJykgaW1wYWN0Q29sdW1uITogVGVtcGxhdGVSZWY8YW55PiB8IG51bGw7XG4gIEBWaWV3Q2hpbGQoR3JpZENvbXBvbmVudCkgZ3JpZCE6IEdyaWRDb21wb25lbnQ7XG5cbiAgQElucHV0KCkgZ3JpZERhdGE6IGFueSA9IFtdO1xuICBASW5wdXQoKSBjb2x1bW5EYXRhOiBhbnkgPSBbXTtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIHBhZ2VhYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNvcnRhYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGdyb3VwYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSByZW9yZGVyYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSByZXNpemFibGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgY2hlY2tCb3hXaWR0aDogbnVtYmVyID0gMjg7XG4gIEBJbnB1dCgpIGNoZWNrQm94Q29sdW1uUmVzaXphYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNoZWNrQm94Q29sdW1uTWVudTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBjaGVja0JveENvbHVtblNob3dTZWxlY3RlZEFsbDogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGNoZWNrQm94UmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgY29sdW1uTWVudTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBtb2RlOiBTZWxlY3RhYmxlTW9kZSB8IHVuZGVmaW5lZCA9ICdtdWx0aXBsZSc7XG4gIEBJbnB1dCgpIGNoZWNrYm94T25seSA9IHRydWU7XG4gIEBJbnB1dCgpIGRyYWdDb2x1bW5zID0gZmFsc2U7XG4gIEBJbnB1dCgpIG5hdmlnYWJsZTogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGhlaWdodCE6IG51bWJlcjtcbiAgQElucHV0KCkgZ3JpZFJvd1NlbGVjdEJ5VmFsdWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBub1JlY29yZHNDb250ZW50OiBzdHJpbmcgPSAnTm8gUmVjb3JkcyBBdmFpbGFibGUnO1xuICBAT3V0cHV0KCkgc2VsZWN0ZWRSb3dEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcbiAgQElucHV0KCkgc2hvd1Rvb2xiYXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZXh0cmFjdERhdGFJdGVtczogYW55O1xuICBzZWxlY3RhYmxlU2V0dGluZ3M6IFNlbGVjdGFibGVTZXR0aW5ncyA9IHt9O1xuICBASW5wdXQoKSBrZWJhYkxpc3Q6IGFueSA9IFtdO1xuICBASW5wdXQoKSBzaG93S2ViYWI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQE91dHB1dCgpIHJvd0RldGFpbHMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xuICBAT3V0cHV0KCkga2ViYWJJdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQElucHV0KCkgaWNvbjogU1ZHSWNvbiA9IG1vcmVWZXJ0aWNhbEljb247XG4gIEBJbnB1dCgpIGtlYmFiQ29sdW1uV2lkdGg6IG51bWJlciA9IDYwO1xuICBkYXRhOiBhbnkgPSBbXTtcbiAgQE91dHB1dCgpIHJvd0RhdGFPZkNsaWNrZWRDZWxsID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBJbnB1dCgpIHByZVNlbGVjdGVkOiBhbnlbXSA9IFtdO1xuICBwcmVTZWxlY3RlZFJlY29yZHM6IGFueVtdID0gW107XG4gIEBJbnB1dCgpIGlnbm9yZUNvbHVtbkNlbGxDbGljazogbnVtYmVyW10gPSBbXTtcbiAgQElucHV0KCkgYWxsb3dDb2x1bW5DbGljazogYm9vbGVhbiA9IHRydWU7XG4gIHB1YmxpYyBhcnJvd0Rvd25JY29uOiBTVkdJY29uID0gY2hldnJvbkRvd25JY29uO1xuICBwdWJsaWMgYXJyb3dVcEljb246IFNWR0ljb24gPSBjaGV2cm9uVXBJY29uO1xuICBASW5wdXQoKSBleHBhbmRSb3dJbmRleDogbnVtYmVyW10gPSBbXTtcbiAgQElucHV0KCkgY3VzdG9tRXhwYW5kUm93Q29sdW1uOmJvb2xlYW4gPSB0cnVlO1xuICBkZWxldGVJY29uOlNWR0ljb24gPSB0cmFzaEljb247XG4gIEBJbnB1dCgpIGRlbGV0ZUNvbHVtbldpZHRoOm51bWJlciA9IDQyO1xuICBASW5wdXQoKSBleHBhbmRSb3dDb2x1bW5XaWR0aDpudW1iZXIgPSA0MjtcbiAgQE91dHB1dCgpIGRlbGV0ZWRSb3dEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBJbnB1dCgpIGV4cGFuZFJvd3M6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd0RlbGV0ZUNvbHVtbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuc2V0U2VsZWN0YWJsZVNldHRpbmdzKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgbGV0IHByZXZQcmVTZWxlY3RlZCA9IEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3ByZVNlbGVjdGVkJ10/LnByZXZpb3VzVmFsdWUpO1xuICAgIGxldCBjdXJyUHJlU2VsZWN0ZWQgPSBKU09OLnN0cmluZ2lmeShjaGFuZ2VzWydwcmVTZWxlY3RlZCddPy5jdXJyZW50VmFsdWUpO1xuICAgIC8vIENoZWNrIGlmIHRoZXJlIGlzIGEgY2hhbmdlIGluIHRoaXMucHJlU2VsZWN0ZWQgaW5wdXRcbiAgICBpZiAocHJldlByZVNlbGVjdGVkICE9PSBjdXJyUHJlU2VsZWN0ZWQpIHtcbiAgICAgIC8vIENsZWFyIHRoZSB0aGlzLnByZVNlbGVjdGVkUmVjb3JkcyBhcnJheVxuICAgICAgdGhpcy5wcmVTZWxlY3RlZFJlY29yZHMgPSBbXTtcbiAgICAgIGZvciAoXG4gICAgICAgIGxldCByb3cgPSAwO1xuICAgICAgICByb3cgPCBjaGFuZ2VzWydwcmVTZWxlY3RlZCddLmN1cnJlbnRWYWx1ZS5sZW5ndGg7XG4gICAgICAgIHJvdysrXG4gICAgICApIHtcbiAgICAgICAgZm9yIChsZXQgY29sID0gMDsgY29sIDwgdGhpcy5ncmlkRGF0YS5sZW5ndGg7IGNvbCsrKSB7XG4gICAgICAgICAgLy8gRmluZCB0aGUgcmVsZXZhbnQgcmVjb3JkIGZvciBhIHBhcnRpY3VsYXIgaWRcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLmdyaWREYXRhW2NvbF1bdGhpcy5ncmlkUm93U2VsZWN0QnlWYWx1ZV0gPT09XG4gICAgICAgICAgICBjaGFuZ2VzWydwcmVTZWxlY3RlZCddLmN1cnJlbnRWYWx1ZVtyb3ddXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBsZXQgZm91bmQgPSBmYWxzZTtcbiAgICAgICAgICAgIC8vIENoZWNrIGlmIHRoaXMgcmVjb3JkIGlzIHByZXNlbnQgaW4gdGhpcy5kYXRhLCBpZiB5ZXMgZG9uJ3QgcHVzaCBpdCBpbiB0aGlzLnByZVNlbGVjdGVkUmVjb3JkcyBlbHNlIHB1c2ggaXRcbiAgICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0aGlzLmRhdGEubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFbaW5kZXhdW3RoaXMuZ3JpZFJvd1NlbGVjdEJ5VmFsdWVdID09PVxuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZERhdGFbY29sXVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghZm91bmQpIHtcbiAgICAgICAgICAgICAgdGhpcy5wcmVTZWxlY3RlZFJlY29yZHMucHVzaCh0aGlzLmdyaWREYXRhW2NvbF0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5zZWxlY3RlZFJvd0RhdGEuZW1pdCh0aGlzLnByZVNlbGVjdGVkUmVjb3Jkcy5jb25jYXQodGhpcy5kYXRhKSk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5wYWdlYWJsZSkge1xuICAgICAgdGhpcy5wYWdlU2l6ZSA9IHRoaXMuZ3JpZERhdGEubGVuZ3RoO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZih0aGlzLmN1c3RvbUV4cGFuZFJvd0NvbHVtbil7XG4gICAgICB0aGlzLmV4cGFuZFJvd0luZGV4LmZvckVhY2goKGlkKSA9PiB7XG4gICAgICAgIHRoaXMuZ3JpZC5leHBhbmRSb3coaWQpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgc2V0U2VsZWN0YWJsZVNldHRpbmdzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNoZWNrYm94T25seSB8fCB0aGlzLm1vZGUgPT09ICdzaW5nbGUnKSB7XG4gICAgICB0aGlzLmRyYWdDb2x1bW5zID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy5zZWxlY3RhYmxlU2V0dGluZ3MgPSB7XG4gICAgICBjaGVja2JveE9ubHk6IHRoaXMuY2hlY2tib3hPbmx5LFxuICAgICAgbW9kZTogdGhpcy5tb2RlLFxuICAgICAgZHJhZzogdGhpcy5kcmFnQ29sdW1ucyxcbiAgICB9O1xuICB9XG5cbiAgLy8gV2UgY2FuIGV4dHJhY3QgZGF0YSBvdXQgb2Ygcm93IG51bWJlciB1c2luZyBiZWxvdyBmdW5jdGlvblxuICAvKiBleHRyYWN0KCkge1xuICAgIHRoaXMuZXh0cmFjdERhdGFJdGVtcyA9IHRoaXMubXlTZWxlY3Rpb24ubWFwKGlkeCA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5ncmlkRGF0YS5maW5kKChkYXRhOiB7IFByb2R1Y3RJRDogbnVtYmVyOyB9KSA9PiBkYXRhLlByb2R1Y3RJRCA9PT0gaWR4KTtcbiAgICB9KTtcbiAgICBjb25zb2xlLmxvZyh0aGlzLmV4dHJhY3REYXRhSXRlbXMpXG4gICAgdGhpcy5zZWxlY3RlZFJvd0RhdGEuZW1pdCh0aGlzLmV4dHJhY3REYXRhSXRlbXMpO1xuICB9ICovXG5cbiAgb25TZWxlY3Rpb25DaGFuZ2UoYXJnczogYW55KTogYW55IHtcbiAgICBmb3IgKGxldCByb3cgPSAwOyByb3cgPCBhcmdzLnNlbGVjdGVkUm93cy5sZW5ndGg7IHJvdysrKSB7XG4gICAgICB2YXIgZm91bmQgPSBmYWxzZTtcbiAgICAgIGZvciAobGV0IGNvbCA9IDA7IGNvbCA8IHRoaXMuZGF0YS5sZW5ndGg7IGNvbCsrKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICB0aGlzLmRhdGFbY29sXVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXSA9PT1cbiAgICAgICAgICBhcmdzLnNlbGVjdGVkUm93c1tyb3ddLmRhdGFJdGVtW3RoaXMuZ3JpZFJvd1NlbGVjdEJ5VmFsdWVdXG4gICAgICAgICkge1xuICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKCFmb3VuZCkge1xuICAgICAgICB0aGlzLmRhdGEucHVzaChhcmdzLnNlbGVjdGVkUm93c1tyb3ddLmRhdGFJdGVtKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGFyZ3MuZGVzZWxlY3RlZFJvd3MubGVuZ3RoICE9PSAwKSB7XG4gICAgICBmb3IgKGxldCByb3cgPSAwOyByb3cgPCBhcmdzLmRlc2VsZWN0ZWRSb3dzLmxlbmd0aDsgcm93KyspIHtcbiAgICAgICAgZm9yIChsZXQgY29sID0gMDsgY29sIDwgdGhpcy5kYXRhLmxlbmd0aDsgY29sKyspIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLmRhdGFbY29sXVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXSA9PT1cbiAgICAgICAgICAgIGFyZ3MuZGVzZWxlY3RlZFJvd3Nbcm93XS5kYXRhSXRlbVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5kYXRhLnNwbGljZShjb2wsIDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBmb3IgKGxldCBjb2wgPSAwOyBjb2wgPCB0aGlzLnByZVNlbGVjdGVkUmVjb3Jkcy5sZW5ndGg7IGNvbCsrKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5wcmVTZWxlY3RlZFJlY29yZHNbY29sXVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXSA9PT1cbiAgICAgICAgICAgIGFyZ3MuZGVzZWxlY3RlZFJvd3Nbcm93XS5kYXRhSXRlbVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5wcmVTZWxlY3RlZFJlY29yZHMuc3BsaWNlKGNvbCwgMSk7XG4gICAgICAgICAgICAvLyBSZW1vdmUgdGhpcyBlbGVtZW50IGZyb20gcHJlc2VsZWN0ZWRcbiAgICAgICAgICAgIGxldCBpbmRleCA9IHRoaXMucHJlU2VsZWN0ZWQuaW5kZXhPZihcbiAgICAgICAgICAgICAgYXJncy5kZXNlbGVjdGVkUm93c1tyb3ddLmRhdGFJdGVtW3RoaXMuZ3JpZFJvd1NlbGVjdEJ5VmFsdWVdXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgICB0aGlzLnByZVNlbGVjdGVkLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWRSb3dEYXRhLmVtaXQodGhpcy5wcmVTZWxlY3RlZFJlY29yZHMuY29uY2F0KHRoaXMuZGF0YSkpO1xuICB9XG5cbiAgb25LZWJhYkNsaWNrKGl0ZW06IGFueSwgcm93RGV0YWlsczogYW55KSB7XG4gICAgdGhpcy5rZWJhYkl0ZW1DbGljay5lbWl0KHsgYWN0aW9uOiBpdGVtLCByb3dEZXRhaWxzIH0pO1xuICB9XG5cbiAgb25EZXRhaWxFeHBhbmQocm93RGF0YTogYW55KSB7XG4gICAgdGhpcy5yb3dEZXRhaWxzLmVtaXQocm93RGF0YS5kYXRhSXRlbSk7XG4gIH1cblxuICBjZWxsQ2xpY2tIYW5kbGVyKGFyZ3M6IENlbGxDbGlja0V2ZW50KSB7XG4gICAgaWYgKHRoaXMuYWxsb3dDb2x1bW5DbGljaykge1xuICAgICAgaWYgKHRoaXMuaWdub3JlQ29sdW1uQ2VsbENsaWNrLmluY2x1ZGVzKGFyZ3MuY29sdW1uSW5kZXgpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMucm93RGF0YU9mQ2xpY2tlZENlbGwuZW1pdChhcmdzLmRhdGFJdGVtKTtcbiAgICB9XG4gIH1cblxuICBleHBhbmRSb3coaWQ6IG51bWJlcikge1xuICAgIHRoaXMuZ3JpZC5leHBhbmRSb3coaWQpO1xuICAgIHRoaXMuZXhwYW5kUm93SW5kZXgucHVzaChpZCk7XG4gIH1cblxuICBjb2xsYXBzZVJvdyhpZDogbnVtYmVyKSB7XG4gICAgdGhpcy5ncmlkLmNvbGxhcHNlUm93KGlkKTtcbiAgICB0aGlzLmV4cGFuZFJvd0luZGV4LnNwbGljZSh0aGlzLmV4cGFuZFJvd0luZGV4LmluZGV4T2YoaWQpLCAxKTtcbiAgfVxuXG4gIG9uRGVsZXRlKHJvd0RldGFpbHM6IGFueSkge1xuICAgIHRoaXMuZGVsZXRlZFJvd0RhdGEuZW1pdChyb3dEZXRhaWxzKTtcbiAgfVxufVxuIiwiPGtlbmRvLWdyaWQgW2tlbmRvR3JpZEJpbmRpbmddPVwiZ3JpZERhdGFcIiBbcGFnZVNpemVdPVwicGFnZVNpemVcIiBbc2VsZWN0YWJsZV09XCJzZWxlY3RhYmxlU2V0dGluZ3NcIiBbcGFnZWFibGVdPVwicGFnZWFibGVcIlxuICBbc29ydGFibGVdPVwic29ydGFibGVcIiBbZ3JvdXBhYmxlXT1cImdyb3VwYWJsZVwiIFtyZW9yZGVyYWJsZV09XCJyZW9yZGVyYWJsZVwiIFtyZXNpemFibGVdPVwicmVzaXphYmxlXCJcbiAgW2NvbHVtbk1lbnVdPVwiY29sdW1uTWVudVwiIFtuYXZpZ2FibGVdPVwibmF2aWdhYmxlXCIgW2hlaWdodF09XCJoZWlnaHRcIiAoY2hhbmdlKT1cInNldFNlbGVjdGFibGVTZXR0aW5ncygpXCJcbiAgKHNlbGVjdGlvbkNoYW5nZSk9XCJvblNlbGVjdGlvbkNoYW5nZSgkZXZlbnQpXCIgW2tlbmRvR3JpZFNlbGVjdEJ5XT1cImdyaWRSb3dTZWxlY3RCeVZhbHVlXCJcbiAgKGRldGFpbEV4cGFuZCk9XCJvbkRldGFpbEV4cGFuZCgkZXZlbnQpXCIgW3NlbGVjdGVkS2V5c109XCJwcmVTZWxlY3RlZFwiIChjZWxsQ2xpY2spPVwiY2VsbENsaWNrSGFuZGxlcigkZXZlbnQpXCI+XG5cbiAgPG5nLXRlbXBsYXRlICpuZ0lmPVwic2hvd1Rvb2xiYXJcIiBrZW5kb0dyaWRUb29sYmFyVGVtcGxhdGU+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAqbmdJZj1cInRoaXMuZ3JpZERhdGEubGVuZ3RoID09PSAwXCIga2VuZG9HcmlkTm9SZWNvcmRzVGVtcGxhdGU+XG4gICAgPGxpYi10eXBvZ3JhcGh5IFtkZWZhdWx0VGV4dF09XCJub1JlY29yZHNDb250ZW50XCIgdHlwZT1cIkJPRFlfTUVESVVNXCI+PC9saWItdHlwb2dyYXBoeT5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZ3JpZERhdGEubGVuZ3RoID4gMFwiPlxuICAgIDxrZW5kby1ncmlkLWNoZWNrYm94LWNvbHVtbiAqbmdJZj1cImNoZWNrQm94UmVxdWlyZWQgPT09IHRydWVcIiBbd2lkdGhdPVwiY2hlY2tCb3hXaWR0aFwiXG4gICAgICBbcmVzaXphYmxlXT1cImNoZWNrQm94Q29sdW1uUmVzaXphYmxlXCIgW2NvbHVtbk1lbnVdPVwiY2hlY2tCb3hDb2x1bW5NZW51XCJcbiAgICAgIFtzaG93U2VsZWN0QWxsXT1cImNoZWNrQm94Q29sdW1uU2hvd1NlbGVjdGVkQWxsXCIgY2xhc3M9XCJjaGVja2JveC1jb2x1bW5cIj5cbiAgICA8L2tlbmRvLWdyaWQtY2hlY2tib3gtY29sdW1uPlxuXG4gICAgPGtlbmRvLWdyaWQtY29sdW1uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbHVtbkRhdGFcIiBbZmllbGRdPVwiaXRlbS5maWVsZFwiIFt0aXRsZV09XCJpdGVtLnRpdGxlXCJcbiAgICAgIFt3aWR0aF09XCJpdGVtLmNvbHVtbldpZHRoXCIgY2xhc3M9XCJncmlkLWNvbHVtblwiPlxuICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiaXRlbS5jdXN0b21cIiBrZW5kb0dyaWRDZWxsVGVtcGxhdGUgbGV0LWRhdGFJdGVtPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGVSZWY7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGRhdGFJdGVtfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cIml0ZW0uaW1wYWN0XCIga2VuZG9HcmlkQ2VsbFRlbXBsYXRlIGxldC1kYXRhSXRlbT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImltcGFjdENvbHVtbjsgY29udGV4dDogeyRpbXBsaWNpdDogZGF0YUl0ZW19XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwva2VuZG8tZ3JpZC1jb2x1bW4+XG5cbiAgICA8a2VuZG8tZ3JpZC1jb2x1bW4gKm5nSWY9XCJzaG93RGVsZXRlQ29sdW1uXCIgW3dpZHRoXT1cImRlbGV0ZUNvbHVtbldpZHRoXCIgY2xhc3M9XCJkZWxldGUtY29sdW1uXCI+XG4gICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkQ2VsbFRlbXBsYXRlIGxldC1kYXRhSXRlbSBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiPlxuICAgICAgICA8bGliLXRvb2x0aXAgc2hvd09uPVwiaG92ZXJcIiBwb3NpdGlvbj1cImJvdHRvbVwiIGNsYXNzPVwicmVtb3ZlLXRvb2x0aXBcIj5cbiAgICAgICAgICA8a2VuZG8tYnV0dG9uIFtzdmdJY29uXT1cImRlbGV0ZUljb25cIiB0aXRsZT1cImRlbGV0ZVwiIGZpbGxNb2RlPVwiY2xlYXJcIiAoY2xpY2spPVwib25EZWxldGUoZGF0YUl0ZW0pXCJcbiAgICAgICAgICAgIGNsYXNzPVwidHJhc2gtaWNvblwiPjwva2VuZG8tYnV0dG9uPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b29sdGlwLWNvbnRlbnRcIj5cbiAgICAgICAgICAgIDxwPlJlbW92ZTwvcD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9saWItdG9vbHRpcD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9rZW5kby1ncmlkLWNvbHVtbj5cblxuICAgIDxrZW5kby1ncmlkLWNvbHVtbiBbd2lkdGhdPVwia2ViYWJDb2x1bW5XaWR0aFwiIGNsYXNzPVwia2ViYWItY29sdW1uXCIgKm5nSWY9XCJzaG93S2ViYWJcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWRDZWxsVGVtcGxhdGUgbGV0LWRhdGFJdGVtIGxldC1yb3dJbmRleD1cInJvd0luZGV4XCI+XG4gICAgICAgIDxrZW5kby1kcm9wZG93bmJ1dHRvbiBbc3ZnSWNvbl09XCJpY29uXCIgZmlsbE1vZGU9XCJjbGVhclwiIFtkYXRhXT1cImtlYmFiTGlzdFwiIGNsYXNzPVwia2ViYWJcIlxuICAgICAgICAgIChpdGVtQ2xpY2spPVwib25LZWJhYkNsaWNrKCRldmVudCwgZGF0YUl0ZW0pXCJcbiAgICAgICAgICBbcG9wdXBTZXR0aW5nc109XCJ7IGFsaWduOiAncmlnaHQnLCBhbmltYXRlOiB0cnVlLCBwb3B1cENsYXNzOiAna2ViYWItbGlzdCcgfVwiPjwva2VuZG8tZHJvcGRvd25idXR0b24+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwva2VuZG8tZ3JpZC1jb2x1bW4+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWREZXRhaWxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRldGFpbFRlbXBsYXRlOyBjb250ZXh0OiB7JGltcGxpY2l0OiBkYXRhSXRlbX1cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8a2VuZG8tZ3JpZC1jb2x1bW4gKm5nSWY9XCJjdXN0b21FeHBhbmRSb3dDb2x1bW5cIiBbd2lkdGhdPVwiZXhwYW5kUm93Q29sdW1uV2lkdGhcIiBjbGFzcz1cImdyaWQtY29sdW1uXCI+XG4gICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0gbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cbiAgICAgIDxrZW5kby1idXR0b24gKm5nSWY9XCIhZXhwYW5kUm93SW5kZXguaW5jbHVkZXMocm93SW5kZXgpXCIgW3N2Z0ljb25dPVwiYXJyb3dEb3duSWNvblwiIChjbGljayk9XCJleHBhbmRSb3cocm93SW5kZXgpXCJcbiAgICAgICAgZmlsbE1vZGU9XCJmbGF0XCIgY2xhc3M9XCJhcnJvdy1idG5cIj5cbiAgICAgIDwva2VuZG8tYnV0dG9uPlxuICAgICAgPGtlbmRvLWJ1dHRvbiAqbmdJZj1cImV4cGFuZFJvd0luZGV4LmluY2x1ZGVzKHJvd0luZGV4KVwiIFtzdmdJY29uXT1cImFycm93VXBJY29uXCIgKGNsaWNrKT1cImNvbGxhcHNlUm93KHJvd0luZGV4KVwiXG4gICAgICAgIGZpbGxNb2RlPVwiZmxhdFwiIGNsYXNzPVwiYXJyb3ctYnRuXCI+XG4gICAgICA8L2tlbmRvLWJ1dHRvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2tlbmRvLWdyaWQtY29sdW1uPlxuXG48L2tlbmRvLWdyaWQ+XG4iXX0=
|
|
278
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9tb2xlY3VsZXMvZ3JpZC9ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL21vbGVjdWxlcy9ncmlkL2dyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBR04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFJTCxhQUFhLEdBQ2QsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBRUwsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixhQUFhLEVBQ2IsU0FBUyxHQUNWLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7QUFPbkMsTUFBTSxPQUFPLGdCQUFnQjtJQXNEM0I7UUFoRFMsYUFBUSxHQUFRLEVBQUUsQ0FBQztRQUNuQixlQUFVLEdBQVEsRUFBRSxDQUFDO1FBQ3JCLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFDckIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFDM0IsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixrQkFBYSxHQUFXLEVBQUUsQ0FBQztRQUMzQiw0QkFBdUIsR0FBWSxLQUFLLENBQUM7UUFDekMsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQ3BDLGtDQUE2QixHQUFZLElBQUksQ0FBQztRQUM5QyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDbEMsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixTQUFJLEdBQStCLFVBQVUsQ0FBQztRQUM5Qyxp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QUF2QixNQUFNO2dCQUNFLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFNlbGVjdGFibGVTZXR0aW5ncyxcbiAgU2VsZWN0YWJsZU1vZGUsXG4gIENlbGxDbGlja0V2ZW50LFxuICBHcmlkQ29tcG9uZW50LFxufSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1ncmlkJztcbmltcG9ydCB7XG4gIFNWR0ljb24sXG4gIG1vcmVWZXJ0aWNhbEljb24sXG4gIGNoZXZyb25Eb3duSWNvbixcbiAgY2hldnJvblVwSWNvbixcbiAgdHJhc2hJY29uLFxufSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tc3ZnLWljb25zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWdyaWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JpZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyaWQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTGliR3JpZENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBDb250ZW50Q2hpbGQoJ211bHRpQ29sdW1uRGF0YScpIHRlbXBsYXRlUmVmITogVGVtcGxhdGVSZWY8YW55PiB8IG51bGw7XG4gIEBDb250ZW50Q2hpbGQoJ2RldGFpbFRlbXBsYXRlJykgZGV0YWlsVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbDtcbiAgQENvbnRlbnRDaGlsZCgnaW1wYWN0Q29sdW1uJykgaW1wYWN0Q29sdW1uITogVGVtcGxhdGVSZWY8YW55PiB8IG51bGw7XG4gIEBWaWV3Q2hpbGQoR3JpZENvbXBvbmVudCkgZ3JpZCE6IEdyaWRDb21wb25lbnQ7XG5cbiAgQElucHV0KCkgZ3JpZERhdGE6IGFueSA9IFtdO1xuICBASW5wdXQoKSBjb2x1bW5EYXRhOiBhbnkgPSBbXTtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIHBhZ2VhYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNvcnRhYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGdyb3VwYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSByZW9yZGVyYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSByZXNpemFibGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgY2hlY2tCb3hXaWR0aDogbnVtYmVyID0gMjg7XG4gIEBJbnB1dCgpIGNoZWNrQm94Q29sdW1uUmVzaXphYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNoZWNrQm94Q29sdW1uTWVudTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBjaGVja0JveENvbHVtblNob3dTZWxlY3RlZEFsbDogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGNoZWNrQm94UmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgY29sdW1uTWVudTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBtb2RlOiBTZWxlY3RhYmxlTW9kZSB8IHVuZGVmaW5lZCA9ICdtdWx0aXBsZSc7XG4gIEBJbnB1dCgpIGNoZWNrYm94T25seSA9IHRydWU7XG4gIEBJbnB1dCgpIGRyYWdDb2x1bW5zID0gZmFsc2U7XG4gIEBJbnB1dCgpIG5hdmlnYWJsZTogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGhlaWdodCE6IG51bWJlcjtcbiAgQElucHV0KCkgZ3JpZFJvd1NlbGVjdEJ5VmFsdWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBub1JlY29yZHNDb250ZW50OiBzdHJpbmcgPSAnTm8gUmVjb3JkcyBBdmFpbGFibGUnO1xuICBAT3V0cHV0KCkgc2VsZWN0ZWRSb3dEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcbiAgQElucHV0KCkgc2hvd1Rvb2xiYXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZXh0cmFjdERhdGFJdGVtczogYW55O1xuICBzZWxlY3RhYmxlU2V0dGluZ3M6IFNlbGVjdGFibGVTZXR0aW5ncyA9IHt9O1xuICBASW5wdXQoKSBrZWJhYkxpc3Q6IGFueSA9IFtdO1xuICBASW5wdXQoKSBzaG93S2ViYWI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQE91dHB1dCgpIHJvd0RldGFpbHMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xuICBAT3V0cHV0KCkga2ViYWJJdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQElucHV0KCkgaWNvbjogU1ZHSWNvbiA9IG1vcmVWZXJ0aWNhbEljb247XG4gIEBJbnB1dCgpIGtlYmFiQ29sdW1uV2lkdGg6IG51bWJlciA9IDYwO1xuICBkYXRhOiBhbnkgPSBbXTtcbiAgQE91dHB1dCgpIHJvd0RhdGFPZkNsaWNrZWRDZWxsID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBJbnB1dCgpIHByZVNlbGVjdGVkOiBhbnlbXSA9IFtdO1xuICBwcmVTZWxlY3RlZFJlY29yZHM6IGFueVtdID0gW107XG4gIEBJbnB1dCgpIGlnbm9yZUNvbHVtbkNlbGxDbGljazogbnVtYmVyW10gPSBbXTtcbiAgQElucHV0KCkgYWxsb3dDb2x1bW5DbGljazogYm9vbGVhbiA9IHRydWU7XG4gIHB1YmxpYyBhcnJvd0Rvd25JY29uOiBTVkdJY29uID0gY2hldnJvbkRvd25JY29uO1xuICBwdWJsaWMgYXJyb3dVcEljb246IFNWR0ljb24gPSBjaGV2cm9uVXBJY29uO1xuICBASW5wdXQoKSBleHBhbmRSb3dJbmRleDogbnVtYmVyW10gPSBbXTtcbiAgQElucHV0KCkgY3VzdG9tRXhwYW5kUm93Q29sdW1uOmJvb2xlYW4gPSB0cnVlO1xuICBkZWxldGVJY29uOlNWR0ljb24gPSB0cmFzaEljb247XG4gIEBJbnB1dCgpIGRlbGV0ZUNvbHVtbldpZHRoOm51bWJlciA9IDQyO1xuICBASW5wdXQoKSBleHBhbmRSb3dDb2x1bW5XaWR0aDpudW1iZXIgPSA0MjtcbiAgQE91dHB1dCgpIGRlbGV0ZWRSb3dEYXRhID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBJbnB1dCgpIGV4cGFuZFJvd3M6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd0RlbGV0ZUNvbHVtbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuc2V0U2VsZWN0YWJsZVNldHRpbmdzKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgbGV0IHByZXZQcmVTZWxlY3RlZCA9IEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3ByZVNlbGVjdGVkJ10/LnByZXZpb3VzVmFsdWUpO1xuICAgIGxldCBjdXJyUHJlU2VsZWN0ZWQgPSBKU09OLnN0cmluZ2lmeShjaGFuZ2VzWydwcmVTZWxlY3RlZCddPy5jdXJyZW50VmFsdWUpO1xuICAgIC8vIENoZWNrIGlmIHRoZXJlIGlzIGEgY2hhbmdlIGluIHRoaXMucHJlU2VsZWN0ZWQgaW5wdXRcbiAgICBpZiAocHJldlByZVNlbGVjdGVkICE9PSBjdXJyUHJlU2VsZWN0ZWQpIHtcbiAgICAgIC8vIENsZWFyIHRoZSB0aGlzLnByZVNlbGVjdGVkUmVjb3JkcyBhcnJheVxuICAgICAgdGhpcy5wcmVTZWxlY3RlZFJlY29yZHMgPSBbXTtcbiAgICAgIGZvciAoXG4gICAgICAgIGxldCByb3cgPSAwO1xuICAgICAgICByb3cgPCBjaGFuZ2VzWydwcmVTZWxlY3RlZCddLmN1cnJlbnRWYWx1ZS5sZW5ndGg7XG4gICAgICAgIHJvdysrXG4gICAgICApIHtcbiAgICAgICAgZm9yIChsZXQgY29sID0gMDsgY29sIDwgdGhpcy5ncmlkRGF0YS5sZW5ndGg7IGNvbCsrKSB7XG4gICAgICAgICAgLy8gRmluZCB0aGUgcmVsZXZhbnQgcmVjb3JkIGZvciBhIHBhcnRpY3VsYXIgaWRcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLmdyaWREYXRhW2NvbF1bdGhpcy5ncmlkUm93U2VsZWN0QnlWYWx1ZV0gPT09XG4gICAgICAgICAgICBjaGFuZ2VzWydwcmVTZWxlY3RlZCddLmN1cnJlbnRWYWx1ZVtyb3ddXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBsZXQgZm91bmQgPSBmYWxzZTtcbiAgICAgICAgICAgIC8vIENoZWNrIGlmIHRoaXMgcmVjb3JkIGlzIHByZXNlbnQgaW4gdGhpcy5kYXRhLCBpZiB5ZXMgZG9uJ3QgcHVzaCBpdCBpbiB0aGlzLnByZVNlbGVjdGVkUmVjb3JkcyBlbHNlIHB1c2ggaXRcbiAgICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0aGlzLmRhdGEubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGFbaW5kZXhdW3RoaXMuZ3JpZFJvd1NlbGVjdEJ5VmFsdWVdID09PVxuICAgICAgICAgICAgICAgIHRoaXMuZ3JpZERhdGFbY29sXVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBmb3VuZCA9IHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghZm91bmQpIHtcbiAgICAgICAgICAgICAgdGhpcy5wcmVTZWxlY3RlZFJlY29yZHMucHVzaCh0aGlzLmdyaWREYXRhW2NvbF0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5zZWxlY3RlZFJvd0RhdGEuZW1pdCh0aGlzLnByZVNlbGVjdGVkUmVjb3Jkcy5jb25jYXQodGhpcy5kYXRhKSk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5wYWdlYWJsZSkge1xuICAgICAgdGhpcy5wYWdlU2l6ZSA9IHRoaXMuZ3JpZERhdGEubGVuZ3RoO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZih0aGlzLmN1c3RvbUV4cGFuZFJvd0NvbHVtbil7XG4gICAgICB0aGlzLmV4cGFuZFJvd0luZGV4LmZvckVhY2goKGlkKSA9PiB7XG4gICAgICAgIHRoaXMuZ3JpZC5leHBhbmRSb3coaWQpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgc2V0U2VsZWN0YWJsZVNldHRpbmdzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNoZWNrYm94T25seSB8fCB0aGlzLm1vZGUgPT09ICdzaW5nbGUnKSB7XG4gICAgICB0aGlzLmRyYWdDb2x1bW5zID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy5zZWxlY3RhYmxlU2V0dGluZ3MgPSB7XG4gICAgICBjaGVja2JveE9ubHk6IHRoaXMuY2hlY2tib3hPbmx5LFxuICAgICAgbW9kZTogdGhpcy5tb2RlLFxuICAgICAgZHJhZzogdGhpcy5kcmFnQ29sdW1ucyxcbiAgICB9O1xuICB9XG5cbiAgLy8gV2UgY2FuIGV4dHJhY3QgZGF0YSBvdXQgb2Ygcm93IG51bWJlciB1c2luZyBiZWxvdyBmdW5jdGlvblxuICAvKiBleHRyYWN0KCkge1xuICAgIHRoaXMuZXh0cmFjdERhdGFJdGVtcyA9IHRoaXMubXlTZWxlY3Rpb24ubWFwKGlkeCA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5ncmlkRGF0YS5maW5kKChkYXRhOiB7IFByb2R1Y3RJRDogbnVtYmVyOyB9KSA9PiBkYXRhLlByb2R1Y3RJRCA9PT0gaWR4KTtcbiAgICB9KTtcbiAgICBjb25zb2xlLmxvZyh0aGlzLmV4dHJhY3REYXRhSXRlbXMpXG4gICAgdGhpcy5zZWxlY3RlZFJvd0RhdGEuZW1pdCh0aGlzLmV4dHJhY3REYXRhSXRlbXMpO1xuICB9ICovXG5cbiAgb25TZWxlY3Rpb25DaGFuZ2UoYXJnczogYW55KTogYW55IHtcbiAgICBmb3IgKGxldCByb3cgPSAwOyByb3cgPCBhcmdzLnNlbGVjdGVkUm93cy5sZW5ndGg7IHJvdysrKSB7XG4gICAgICB2YXIgZm91bmQgPSBmYWxzZTtcbiAgICAgIGZvciAobGV0IGNvbCA9IDA7IGNvbCA8IHRoaXMuZGF0YS5sZW5ndGg7IGNvbCsrKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICB0aGlzLmRhdGFbY29sXVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXSA9PT1cbiAgICAgICAgICBhcmdzLnNlbGVjdGVkUm93c1tyb3ddLmRhdGFJdGVtW3RoaXMuZ3JpZFJvd1NlbGVjdEJ5VmFsdWVdXG4gICAgICAgICkge1xuICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKCFmb3VuZCkge1xuICAgICAgICB0aGlzLmRhdGEucHVzaChhcmdzLnNlbGVjdGVkUm93c1tyb3ddLmRhdGFJdGVtKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGFyZ3MuZGVzZWxlY3RlZFJvd3MubGVuZ3RoICE9PSAwKSB7XG4gICAgICBmb3IgKGxldCByb3cgPSAwOyByb3cgPCBhcmdzLmRlc2VsZWN0ZWRSb3dzLmxlbmd0aDsgcm93KyspIHtcbiAgICAgICAgZm9yIChsZXQgY29sID0gMDsgY29sIDwgdGhpcy5kYXRhLmxlbmd0aDsgY29sKyspIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLmRhdGFbY29sXVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXSA9PT1cbiAgICAgICAgICAgIGFyZ3MuZGVzZWxlY3RlZFJvd3Nbcm93XS5kYXRhSXRlbVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5kYXRhLnNwbGljZShjb2wsIDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBmb3IgKGxldCBjb2wgPSAwOyBjb2wgPCB0aGlzLnByZVNlbGVjdGVkUmVjb3Jkcy5sZW5ndGg7IGNvbCsrKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5wcmVTZWxlY3RlZFJlY29yZHNbY29sXVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXSA9PT1cbiAgICAgICAgICAgIGFyZ3MuZGVzZWxlY3RlZFJvd3Nbcm93XS5kYXRhSXRlbVt0aGlzLmdyaWRSb3dTZWxlY3RCeVZhbHVlXVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5wcmVTZWxlY3RlZFJlY29yZHMuc3BsaWNlKGNvbCwgMSk7XG4gICAgICAgICAgICAvLyBSZW1vdmUgdGhpcyBlbGVtZW50IGZyb20gcHJlc2VsZWN0ZWRcbiAgICAgICAgICAgIGxldCBpbmRleCA9IHRoaXMucHJlU2VsZWN0ZWQuaW5kZXhPZihcbiAgICAgICAgICAgICAgYXJncy5kZXNlbGVjdGVkUm93c1tyb3ddLmRhdGFJdGVtW3RoaXMuZ3JpZFJvd1NlbGVjdEJ5VmFsdWVdXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgICB0aGlzLnByZVNlbGVjdGVkLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWRSb3dEYXRhLmVtaXQodGhpcy5wcmVTZWxlY3RlZFJlY29yZHMuY29uY2F0KHRoaXMuZGF0YSkpO1xuICB9XG5cbiAgb25LZWJhYkNsaWNrKGl0ZW06IGFueSwgcm93RGV0YWlsczogYW55KSB7XG4gICAgdGhpcy5rZWJhYkl0ZW1DbGljay5lbWl0KHsgYWN0aW9uOiBpdGVtLCByb3dEZXRhaWxzIH0pO1xuICB9XG5cbiAgb25EZXRhaWxFeHBhbmQocm93RGF0YTogYW55KSB7XG4gICAgdGhpcy5yb3dEZXRhaWxzLmVtaXQocm93RGF0YS5kYXRhSXRlbSk7XG4gIH1cblxuICBjZWxsQ2xpY2tIYW5kbGVyKGFyZ3M6IENlbGxDbGlja0V2ZW50KSB7XG4gICAgaWYgKHRoaXMuYWxsb3dDb2x1bW5DbGljaykge1xuICAgICAgaWYgKHRoaXMuaWdub3JlQ29sdW1uQ2VsbENsaWNrLmluY2x1ZGVzKGFyZ3MuY29sdW1uSW5kZXgpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMucm93RGF0YU9mQ2xpY2tlZENlbGwuZW1pdChhcmdzLmRhdGFJdGVtKTtcbiAgICB9XG4gIH1cblxuICBleHBhbmRSb3coaWQ6IG51bWJlcikge1xuICAgIHRoaXMuZ3JpZC5leHBhbmRSb3coaWQpO1xuICAgIHRoaXMuZXhwYW5kUm93SW5kZXgucHVzaChpZCk7XG4gIH1cblxuICBjb2xsYXBzZVJvdyhpZDogbnVtYmVyKSB7XG4gICAgdGhpcy5ncmlkLmNvbGxhcHNlUm93KGlkKTtcbiAgICB0aGlzLmV4cGFuZFJvd0luZGV4LnNwbGljZSh0aGlzLmV4cGFuZFJvd0luZGV4LmluZGV4T2YoaWQpLCAxKTtcbiAgfVxuXG4gIG9uRGVsZXRlKHJvd0RldGFpbHM6IGFueSkge1xuICAgIHRoaXMuZGVsZXRlZFJvd0RhdGEuZW1pdChyb3dEZXRhaWxzKTtcbiAgfVxufVxuIiwiPGtlbmRvLWdyaWQgW2tlbmRvR3JpZEJpbmRpbmddPVwiZ3JpZERhdGFcIiBbcGFnZVNpemVdPVwicGFnZVNpemVcIiBbc2VsZWN0YWJsZV09XCJzZWxlY3RhYmxlU2V0dGluZ3NcIiBbcGFnZWFibGVdPVwicGFnZWFibGVcIlxuICBbc29ydGFibGVdPVwic29ydGFibGVcIiBbZ3JvdXBhYmxlXT1cImdyb3VwYWJsZVwiIFtyZW9yZGVyYWJsZV09XCJyZW9yZGVyYWJsZVwiIFtyZXNpemFibGVdPVwicmVzaXphYmxlXCJcbiAgW2NvbHVtbk1lbnVdPVwiY29sdW1uTWVudVwiIFtuYXZpZ2FibGVdPVwibmF2aWdhYmxlXCIgW2hlaWdodF09XCJoZWlnaHRcIiAoY2hhbmdlKT1cInNldFNlbGVjdGFibGVTZXR0aW5ncygpXCJcbiAgKHNlbGVjdGlvbkNoYW5nZSk9XCJvblNlbGVjdGlvbkNoYW5nZSgkZXZlbnQpXCIgW2tlbmRvR3JpZFNlbGVjdEJ5XT1cImdyaWRSb3dTZWxlY3RCeVZhbHVlXCJcbiAgKGRldGFpbEV4cGFuZCk9XCJvbkRldGFpbEV4cGFuZCgkZXZlbnQpXCIgW3NlbGVjdGVkS2V5c109XCJwcmVTZWxlY3RlZFwiIChjZWxsQ2xpY2spPVwiY2VsbENsaWNrSGFuZGxlcigkZXZlbnQpXCI+XG5cbiAgPG5nLXRlbXBsYXRlICpuZ0lmPVwic2hvd1Rvb2xiYXJcIiBrZW5kb0dyaWRUb29sYmFyVGVtcGxhdGU+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAqbmdJZj1cInRoaXMuZ3JpZERhdGEubGVuZ3RoID09PSAwXCIga2VuZG9HcmlkTm9SZWNvcmRzVGVtcGxhdGU+XG4gICAgPGxpYi10eXBvZ3JhcGh5IFtkZWZhdWx0VGV4dF09XCJub1JlY29yZHNDb250ZW50XCIgdHlwZT1cIlBfTVVMSVNIXzE2X1JFR1VMQVJcIj48L2xpYi10eXBvZ3JhcGh5PlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJncmlkRGF0YS5sZW5ndGggPiAwXCI+XG4gICAgPGtlbmRvLWdyaWQtY2hlY2tib3gtY29sdW1uICpuZ0lmPVwiY2hlY2tCb3hSZXF1aXJlZCA9PT0gdHJ1ZVwiIFt3aWR0aF09XCJjaGVja0JveFdpZHRoXCJcbiAgICAgIFtyZXNpemFibGVdPVwiY2hlY2tCb3hDb2x1bW5SZXNpemFibGVcIiBbY29sdW1uTWVudV09XCJjaGVja0JveENvbHVtbk1lbnVcIlxuICAgICAgW3Nob3dTZWxlY3RBbGxdPVwiY2hlY2tCb3hDb2x1bW5TaG93U2VsZWN0ZWRBbGxcIiBjbGFzcz1cImNoZWNrYm94LWNvbHVtblwiPlxuICAgIDwva2VuZG8tZ3JpZC1jaGVja2JveC1jb2x1bW4+XG5cbiAgICA8a2VuZG8tZ3JpZC1jb2x1bW4gKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29sdW1uRGF0YVwiIFtmaWVsZF09XCJpdGVtLmZpZWxkXCIgW3RpdGxlXT1cIml0ZW0udGl0bGVcIlxuICAgICAgW3dpZHRoXT1cIml0ZW0uY29sdW1uV2lkdGhcIiBjbGFzcz1cImdyaWQtY29sdW1uXCI+XG4gICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCJpdGVtLmN1c3RvbVwiIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZVJlZjsgY29udGV4dDogeyRpbXBsaWNpdDogZGF0YUl0ZW19XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiaXRlbS5pbXBhY3RcIiBrZW5kb0dyaWRDZWxsVGVtcGxhdGUgbGV0LWRhdGFJdGVtPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaW1wYWN0Q29sdW1uOyBjb250ZXh0OiB7JGltcGxpY2l0OiBkYXRhSXRlbX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9rZW5kby1ncmlkLWNvbHVtbj5cblxuICAgIDxrZW5kby1ncmlkLWNvbHVtbiAqbmdJZj1cInNob3dEZWxldGVDb2x1bW5cIiBbd2lkdGhdPVwiZGVsZXRlQ29sdW1uV2lkdGhcIiBjbGFzcz1cImRlbGV0ZS1jb2x1bW5cIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWRDZWxsVGVtcGxhdGUgbGV0LWRhdGFJdGVtIGxldC1yb3dJbmRleD1cInJvd0luZGV4XCI+XG4gICAgICAgIDxsaWItdG9vbHRpcCBzaG93T249XCJob3ZlclwiIHBvc2l0aW9uPVwiYm90dG9tXCIgY2xhc3M9XCJyZW1vdmUtdG9vbHRpcFwiPlxuICAgICAgICAgIDxrZW5kby1idXR0b24gW3N2Z0ljb25dPVwiZGVsZXRlSWNvblwiIHRpdGxlPVwiZGVsZXRlXCIgZmlsbE1vZGU9XCJjbGVhclwiIChjbGljayk9XCJvbkRlbGV0ZShkYXRhSXRlbSlcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0cmFzaC1pY29uXCI+PC9rZW5kby1idXR0b24+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRvb2x0aXAtY29udGVudFwiPlxuICAgICAgICAgICAgPHA+UmVtb3ZlPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2xpYi10b29sdGlwPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2tlbmRvLWdyaWQtY29sdW1uPlxuXG4gICAgPGtlbmRvLWdyaWQtY29sdW1uIFt3aWR0aF09XCJrZWJhYkNvbHVtbldpZHRoXCIgY2xhc3M9XCJrZWJhYi1jb2x1bW5cIiAqbmdJZj1cInNob3dLZWJhYlwiPlxuICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0gbGV0LXJvd0luZGV4PVwicm93SW5kZXhcIj5cbiAgICAgICAgPGtlbmRvLWRyb3Bkb3duYnV0dG9uIFtzdmdJY29uXT1cImljb25cIiBmaWxsTW9kZT1cImNsZWFyXCIgW2RhdGFdPVwia2ViYWJMaXN0XCIgY2xhc3M9XCJrZWJhYlwiXG4gICAgICAgICAgKGl0ZW1DbGljayk9XCJvbktlYmFiQ2xpY2soJGV2ZW50LCBkYXRhSXRlbSlcIlxuICAgICAgICAgIFtwb3B1cFNldHRpbmdzXT1cInsgYWxpZ246ICdyaWdodCcsIGFuaW1hdGU6IHRydWUsIHBvcHVwQ2xhc3M6ICdrZWJhYi1saXN0JyB9XCI+PC9rZW5kby1kcm9wZG93bmJ1dHRvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9rZW5kby1ncmlkLWNvbHVtbj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZERldGFpbFRlbXBsYXRlIGxldC1kYXRhSXRlbT5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGV0YWlsVGVtcGxhdGU7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGRhdGFJdGVtfVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxrZW5kby1ncmlkLWNvbHVtbiAqbmdJZj1cImN1c3RvbUV4cGFuZFJvd0NvbHVtblwiIFt3aWR0aF09XCJleHBhbmRSb3dDb2x1bW5XaWR0aFwiIGNsYXNzPVwiZ3JpZC1jb2x1bW5cIj5cbiAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkQ2VsbFRlbXBsYXRlIGxldC1kYXRhSXRlbSBsZXQtcm93SW5kZXg9XCJyb3dJbmRleFwiPlxuICAgICAgPGtlbmRvLWJ1dHRvbiAqbmdJZj1cIiFleHBhbmRSb3dJbmRleC5pbmNsdWRlcyhyb3dJbmRleClcIiBbc3ZnSWNvbl09XCJhcnJvd0Rvd25JY29uXCIgKGNsaWNrKT1cImV4cGFuZFJvdyhyb3dJbmRleClcIlxuICAgICAgICBmaWxsTW9kZT1cImZsYXRcIiBjbGFzcz1cImFycm93LWJ0blwiPlxuICAgICAgPC9rZW5kby1idXR0b24+XG4gICAgICA8a2VuZG8tYnV0dG9uICpuZ0lmPVwiZXhwYW5kUm93SW5kZXguaW5jbHVkZXMocm93SW5kZXgpXCIgW3N2Z0ljb25dPVwiYXJyb3dVcEljb25cIiAoY2xpY2spPVwiY29sbGFwc2VSb3cocm93SW5kZXgpXCJcbiAgICAgICAgZmlsbE1vZGU9XCJmbGF0XCIgY2xhc3M9XCJhcnJvdy1idG5cIj5cbiAgICAgIDwva2VuZG8tYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwva2VuZG8tZ3JpZC1jb2x1bW4+XG5cbjwva2VuZG8tZ3JpZD5cbiJdfQ==
|