ecabs-components 1.0.13 → 1.0.15
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/esm2020/lib/ecabs-checkbox-toggle/ecabs-checkbox-toggle.component.mjs +2 -2
- package/esm2020/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.component.mjs +24 -6
- package/esm2020/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.module.mjs +8 -8
- package/esm2020/lib/ecabs-dialog-message/ecabs-dialog-message.component.mjs +21 -3
- package/esm2020/lib/ecabs-increment/ecabs-increment.component.mjs +2 -2
- package/esm2020/lib/ecabs-language-selector/ecabs-language-selector.component.mjs +8 -3
- package/esm2020/lib/ecabs-language-selector/ecabs-language-selector.module.mjs +8 -4
- package/esm2020/lib/ecabs-picker-header/ecabs-picker-header.component.mjs +2 -2
- package/fesm2015/ecabs-components.mjs +68 -25
- package/fesm2015/ecabs-components.mjs.map +1 -1
- package/fesm2020/ecabs-components.mjs +66 -25
- package/fesm2020/ecabs-components.mjs.map +1 -1
- package/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.component.d.ts +9 -4
- package/lib/ecabs-dialog-confirm/ecabs-dialog-confirm.module.d.ts +4 -4
- package/lib/ecabs-dialog-message/ecabs-dialog-message.component.d.ts +7 -1
- package/lib/ecabs-language-selector/ecabs-language-selector.component.d.ts +3 -1
- package/lib/ecabs-language-selector/ecabs-language-selector.module.d.ts +2 -1
- package/package.json +1 -1
- package/styles/material/_theme.scss +0 -74
- package/styles/material/overrides/_autocomplete.scss +0 -11
- package/styles/material/overrides/_button.scss +0 -81
- package/styles/material/overrides/_card.scss +0 -17
- package/styles/material/overrides/_chip.scss +0 -108
- package/styles/material/overrides/_datepicker.scss +0 -169
- package/styles/material/overrides/_dialog.scss +0 -12
- package/styles/material/overrides/_divider.scss +0 -3
- package/styles/material/overrides/_expansion.scss +0 -31
- package/styles/material/overrides/_form.scss +0 -144
- package/styles/material/overrides/_icon.scss +0 -3
- package/styles/material/overrides/_menu.scss +0 -3
- package/styles/material/overrides/_paginator.scss +0 -0
- package/styles/material/overrides/_phone.scss +0 -32
- package/styles/material/overrides/_select.scss +0 -62
- package/styles/material/overrides/_tab.scss +0 -23
- package/styles/material/overrides/_table.scss +0 -12
- package/styles/material/overrides/_toaster.scss +0 -38
- package/styles/material/overrides/_toggle.scss +0 -15
- package/styles/material/overrides/_toolbar.scss +0 -3
- package/styles/material/overrides/_tooltip.scss +0 -3
- package/styles/material/overrides/index.scss +0 -20
- package/styles/scss/base/_heading.scss +0 -17
- package/styles/scss/base/_normalize.scss +0 -78
- package/styles/scss/base/index.scss +0 -2
- package/styles/scss/modules/_autocomplete.scss +0 -29
- package/styles/scss/modules/_button.scss +0 -221
- package/styles/scss/modules/_card.scss +0 -23
- package/styles/scss/modules/_chip.scss +0 -56
- package/styles/scss/modules/_datepicker.scss +0 -426
- package/styles/scss/modules/_dialog.scss +0 -14
- package/styles/scss/modules/_divider.scss +0 -3
- package/styles/scss/modules/_form.scss +0 -233
- package/styles/scss/modules/_icon.scss +0 -30
- package/styles/scss/modules/_img.scss +0 -32
- package/styles/scss/modules/_legend.scss +0 -64
- package/styles/scss/modules/_list.scss +0 -17
- package/styles/scss/modules/_map.scss +0 -112
- package/styles/scss/modules/_percentage.scss +0 -33
- package/styles/scss/modules/_phone.scss +0 -29
- package/styles/scss/modules/_select.scss +0 -41
- package/styles/scss/modules/_statuses.scss +0 -31
- package/styles/scss/modules/_tab.scss +0 -16
- package/styles/scss/modules/_table.scss +0 -107
- package/styles/scss/modules/_timepicker.scss +0 -96
- package/styles/scss/modules/_toaster.scss +0 -53
- package/styles/scss/modules/_tooltip.scss +0 -7
- package/styles/scss/modules/drag-drop.scss +0 -31
- package/styles/scss/modules/index.scss +0 -23
- package/styles/scss/utilities/_colors.scss +0 -52
- package/styles/scss/utilities/_fonts.scss +0 -26
- package/styles/scss/utilities/_functions.scss +0 -27
- package/styles/scss/utilities/_helpers.scss +0 -5
- package/styles/scss/utilities/_mixins.scss +0 -65
- package/styles/scss/utilities/_palettes.scss +0 -74
- package/styles/scss/utilities/_variables.scss +0 -19
- package/styles/scss/utilities/index.scss +0 -7
- package/styles/styles.scss +0 -5
- package/styles/tailwind/index.scss +0 -756
|
@@ -1,28 +1,46 @@
|
|
|
1
1
|
import { Component, Inject } from '@angular/core';
|
|
2
2
|
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import { Subject, takeUntil } from 'rxjs';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
import * as i1 from "@angular/material/dialog";
|
|
5
6
|
import * as i2 from "@angular/common";
|
|
6
7
|
import * as i3 from "../ecabs-buttons/ecabs-buttons.component";
|
|
7
8
|
import * as i4 from "@angular/material/icon";
|
|
8
|
-
export class
|
|
9
|
+
export class EcabsDialogConfirmComponent {
|
|
9
10
|
constructor(dialogRef, data) {
|
|
10
11
|
this.dialogRef = dialogRef;
|
|
11
12
|
this.data = data;
|
|
13
|
+
this.destroy$ = new Subject();
|
|
12
14
|
this.color = 'primary';
|
|
13
15
|
this.titleColor = 'primary';
|
|
14
16
|
}
|
|
15
17
|
ngOnInit() {
|
|
16
18
|
this.dialogRef.updateSize(this.data.width || '24rem');
|
|
17
19
|
}
|
|
20
|
+
ngOnDestroy() {
|
|
21
|
+
this.destroy$.next(true);
|
|
22
|
+
this.destroy$.complete();
|
|
23
|
+
}
|
|
24
|
+
closeDialog() {
|
|
25
|
+
if (this.data.loading$) {
|
|
26
|
+
this.data.loading$?.pipe(takeUntil(this.destroy$)).subscribe((loading) => {
|
|
27
|
+
if (!loading) {
|
|
28
|
+
this.dialogRef.close(true);
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
this.dialogRef.close(true);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
18
36
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type:
|
|
37
|
+
EcabsDialogConfirmComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EcabsDialogConfirmComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
38
|
+
EcabsDialogConfirmComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: EcabsDialogConfirmComponent, selector: "ecabs-dialog-confirm", ngImport: i0, template: "<div matDialogTitle *ngIf=\"data?.title || !!data?.isPopover\" class=\"flex flex-column\">\r\n <div *ngIf=\"!!data?.isPopover\" class=\"w-full flex justify-end\">\r\n <mat-icon\r\n (click)=\"dialogRef.close(true)\"\r\n class=\"mat-icon material-icons-outlined float-right icon--close mb-2\"\r\n role=\"button\"\r\n >\r\n close\r\n </mat-icon>\r\n </div>\r\n\r\n <div class=\"font-semibold heading--xs modal-title {{ data.titleColor }}\" *ngIf=\"data.title\">\r\n {{ data.title }}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content>\r\n <div>{{ data?.content }}</div>\r\n <ng-container *ngTemplateOutlet=\"data?.message\"></ng-container>\r\n</div>\r\n\r\n<div class=\"pb-6\">\r\n <div mat-dialog-actions class=\"btn__group flex justify-end w-full\" *ngIf=\"!data?.isPopover\">\r\n <ecabs-buttons (click)=\"dialogRef.close(false)\" [stroked]=\"true\">\r\n {{ data?.cancelLabel }}\r\n </ecabs-buttons>\r\n\r\n <ecabs-buttons [color]=\"data?.color || color\" [loading]=\"data.loading$ | async\" (click)=\"closeDialog()\">\r\n {{ data?.confirmLabel }}\r\n </ecabs-buttons>\r\n </div>\r\n</div>\r\n", styles: [":host .mat-mdc-dialog-title .mat-icon.icon--close,:host ::ng-deep .mat-mdc-dialog-title .mat-icon.icon--close{width:20px;height:20px;line-height:20px;font-size:20px}:host app-buttons,:host ::ng-deep app-buttons{width:calc(50% - .5rem)}:host button,:host ::ng-deep button{width:100%}.modal-title.warn{color:var(--color-error)!important}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { kind: "component", type: i3.ButtonsComponent, selector: "ecabs-buttons", inputs: ["label", "disabled", "loading", "form", "size", "type", "raised", "stroked", "full", "color"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EcabsDialogConfirmComponent, decorators: [{
|
|
22
40
|
type: Component,
|
|
23
|
-
args: [{ selector: 'ecabs-dialog-confirm', template: "<div matDialogTitle *ngIf=\"data?.title || !!data?.isPopover\" class=\"flex flex-column\">\r\n <div *ngIf=\"!!data?.isPopover\" class=\"w-full flex justify-end\">\r\n <mat-icon\r\n (click)=\"dialogRef.close(true)\"\r\n class=\"mat-icon material-icons-outlined float-right icon--close mb-2\"\r\n role=\"button\"\r\n >\r\n close\r\n </mat-icon>\r\n </div>\r\n\r\n <div class=\"font-semibold heading--xs modal-title {{ data.titleColor }}\" *ngIf=\"data.title\">\r\n {{ data.title }}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content>\r\n <div>{{ data?.content }}</div>\r\n <ng-container *ngTemplateOutlet=\"data?.message\"></ng-container>\r\n</div>\r\n\r\n<div class=\"pb-6\">\r\n <div mat-dialog-actions class=\"btn__group flex justify-end w-full\" *ngIf=\"!data?.isPopover\">\r\n <ecabs-buttons (click)=\"dialogRef.close(false)\" [stroked]=\"true\">\r\n {{ data?.cancelLabel }}\r\n </ecabs-buttons>\r\n\r\n <ecabs-buttons [color]=\"data?.color || color\" (click)=\"
|
|
41
|
+
args: [{ selector: 'ecabs-dialog-confirm', template: "<div matDialogTitle *ngIf=\"data?.title || !!data?.isPopover\" class=\"flex flex-column\">\r\n <div *ngIf=\"!!data?.isPopover\" class=\"w-full flex justify-end\">\r\n <mat-icon\r\n (click)=\"dialogRef.close(true)\"\r\n class=\"mat-icon material-icons-outlined float-right icon--close mb-2\"\r\n role=\"button\"\r\n >\r\n close\r\n </mat-icon>\r\n </div>\r\n\r\n <div class=\"font-semibold heading--xs modal-title {{ data.titleColor }}\" *ngIf=\"data.title\">\r\n {{ data.title }}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content>\r\n <div>{{ data?.content }}</div>\r\n <ng-container *ngTemplateOutlet=\"data?.message\"></ng-container>\r\n</div>\r\n\r\n<div class=\"pb-6\">\r\n <div mat-dialog-actions class=\"btn__group flex justify-end w-full\" *ngIf=\"!data?.isPopover\">\r\n <ecabs-buttons (click)=\"dialogRef.close(false)\" [stroked]=\"true\">\r\n {{ data?.cancelLabel }}\r\n </ecabs-buttons>\r\n\r\n <ecabs-buttons [color]=\"data?.color || color\" [loading]=\"data.loading$ | async\" (click)=\"closeDialog()\">\r\n {{ data?.confirmLabel }}\r\n </ecabs-buttons>\r\n </div>\r\n</div>\r\n", styles: [":host .mat-mdc-dialog-title .mat-icon.icon--close,:host ::ng-deep .mat-mdc-dialog-title .mat-icon.icon--close{width:20px;height:20px;line-height:20px;font-size:20px}:host app-buttons,:host ::ng-deep app-buttons{width:calc(50% - .5rem)}:host button,:host ::ng-deep button{width:100%}.modal-title.warn{color:var(--color-error)!important}\n"] }]
|
|
24
42
|
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
25
43
|
type: Inject,
|
|
26
44
|
args: [MAT_DIALOG_DATA]
|
|
27
45
|
}] }]; } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWRpYWxvZy1jb25maXJtL2VjYWJzLWRpYWxvZy1jb25maXJtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1kaWFsb2ctY29uZmlybS9lY2Ficy1kaWFsb2ctY29uZmlybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBa0MsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RSxPQUFPLEVBQWMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBT3RELE1BQU0sT0FBTywyQkFBMkI7SUFRdEMsWUFDUyxTQUFxRCxFQUM1QixJQUFrQztRQUQzRCxjQUFTLEdBQVQsU0FBUyxDQUE0QztRQUM1QixTQUFJLEdBQUosSUFBSSxDQUE4QjtRQVI1RCxhQUFRLEdBQWlCLElBQUksT0FBTyxFQUFPLENBQUM7UUFHcEQsVUFBSyxHQUFpQixTQUFTLENBQUM7UUFDaEMsZUFBVSxHQUFpQixTQUFTLENBQUM7SUFLakMsQ0FBQztJQUVMLFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQ3ZFLElBQUksQ0FBQyxPQUFPLEVBQUU7b0JBQ1osSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzVCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDNUI7SUFDSCxDQUFDOzt3SEFoQ1UsMkJBQTJCLDhDQVU1QixlQUFlOzRHQVZkLDJCQUEyQiw0RENWeEMsc29DQWdDQTsyRkR0QmEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHNCQUFzQjs7MEJBYzdCLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLWRpYWxvZy1jb25maXJtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VjYWJzLWRpYWxvZy1jb25maXJtLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic0RpYWxvZ0NvbmZpcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHJcbiAgbWVzc2FnZTogc3RyaW5nO1xyXG4gIGNvbG9yOiBUaGVtZVBhbGV0dGUgPSAncHJpbWFyeSc7XHJcbiAgdGl0bGVDb2xvcjogVGhlbWVQYWxldHRlID0gJ3ByaW1hcnknO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxEaWFsb2dDb25maXJtQ29tcG9uZW50Q29uZmlnPixcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogRGlhbG9nQ29uZmlybUNvbXBvbmVudENvbmZpZyxcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLnVwZGF0ZVNpemUodGhpcy5kYXRhLndpZHRoIHx8ICcyNHJlbScpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZURpYWxvZygpIHtcclxuICAgIGlmICh0aGlzLmRhdGEubG9hZGluZyQpIHtcclxuICAgICAgdGhpcy5kYXRhLmxvYWRpbmckPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChsb2FkaW5nKSA9PiB7XHJcbiAgICAgICAgaWYgKCFsb2FkaW5nKSB7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodHJ1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERpYWxvZ0NvbmZpcm1Db21wb25lbnRDb25maWcge1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIG1lc3NhZ2U6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgY29sb3I/OiBUaGVtZVBhbGV0dGU7XHJcbiAgdGl0bGVDb2xvcj86IFRoZW1lUGFsZXR0ZTtcclxuICBjb25maXJtTGFiZWw/OiBzdHJpbmc7XHJcbiAgY2FuY2VsTGFiZWw/OiBzdHJpbmc7XHJcbiAgaXNQb3BvdmVyPzogYm9vbGVhbjtcclxuICB3aWR0aD86IHN0cmluZztcclxuICBjb250ZW50Pzogc3RyaW5nO1xyXG4gIGxvYWRpbmckPzogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxufSIsIjxkaXYgbWF0RGlhbG9nVGl0bGUgKm5nSWY9XCJkYXRhPy50aXRsZSB8fCAhIWRhdGE/LmlzUG9wb3ZlclwiIGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtblwiPlxyXG4gIDxkaXYgKm5nSWY9XCIhIWRhdGE/LmlzUG9wb3ZlclwiIGNsYXNzPVwidy1mdWxsIGZsZXgganVzdGlmeS1lbmRcIj5cclxuICAgIDxtYXQtaWNvblxyXG4gICAgICAoY2xpY2spPVwiZGlhbG9nUmVmLmNsb3NlKHRydWUpXCJcclxuICAgICAgY2xhc3M9XCJtYXQtaWNvbiBtYXRlcmlhbC1pY29ucy1vdXRsaW5lZCBmbG9hdC1yaWdodCBpY29uLS1jbG9zZSBtYi0yXCJcclxuICAgICAgcm9sZT1cImJ1dHRvblwiXHJcbiAgICA+XHJcbiAgICAgIGNsb3NlXHJcbiAgICA8L21hdC1pY29uPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiZm9udC1zZW1pYm9sZCBoZWFkaW5nLS14cyBtb2RhbC10aXRsZSB7eyBkYXRhLnRpdGxlQ29sb3IgfX1cIiAqbmdJZj1cImRhdGEudGl0bGVcIj5cclxuICAgIHt7IGRhdGEudGl0bGUgfX1cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2IG1hdC1kaWFsb2ctY29udGVudD5cclxuICA8ZGl2Pnt7IGRhdGE/LmNvbnRlbnQgIH19PC9kaXY+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRhdGE/Lm1lc3NhZ2VcIj48L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcblxyXG48ZGl2IGNsYXNzPVwicGItNlwiPlxyXG4gIDxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zIGNsYXNzPVwiYnRuX19ncm91cCBmbGV4IGp1c3RpZnktZW5kIHctZnVsbFwiICpuZ0lmPVwiIWRhdGE/LmlzUG9wb3ZlclwiPlxyXG4gICAgPGVjYWJzLWJ1dHRvbnMgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZShmYWxzZSlcIiBbc3Ryb2tlZF09XCJ0cnVlXCI+XHJcbiAgICAgIHt7IGRhdGE/LmNhbmNlbExhYmVsIH19XHJcbiAgICA8L2VjYWJzLWJ1dHRvbnM+XHJcblxyXG4gICAgPGVjYWJzLWJ1dHRvbnMgW2NvbG9yXT1cImRhdGE/LmNvbG9yIHx8IGNvbG9yXCIgW2xvYWRpbmddPVwiZGF0YS5sb2FkaW5nJCB8IGFzeW5jXCIgKGNsaWNrKT1cImNsb3NlRGlhbG9nKClcIj5cclxuICAgICAge3sgZGF0YT8uY29uZmlybUxhYmVsIH19XHJcbiAgICA8L2VjYWJzLWJ1dHRvbnM+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
|
-
import {
|
|
3
|
+
import { EcabsDialogConfirmComponent } from './ecabs-dialog-confirm.component';
|
|
4
4
|
import { MatIconModule } from '@angular/material/icon';
|
|
5
5
|
import { EcabsButtonsModule } from '../ecabs-buttons/ecabs-buttons.module';
|
|
6
6
|
import { MatDialogModule } from '@angular/material/dialog';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
|
-
export class
|
|
8
|
+
export class EcabsDialogConfirmModule {
|
|
9
9
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type:
|
|
10
|
+
EcabsDialogConfirmModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EcabsDialogConfirmModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
EcabsDialogConfirmModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: EcabsDialogConfirmModule, declarations: [EcabsDialogConfirmComponent], imports: [CommonModule, MatDialogModule, EcabsButtonsModule, MatIconModule] });
|
|
12
|
+
EcabsDialogConfirmModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EcabsDialogConfirmModule, imports: [CommonModule, MatDialogModule, EcabsButtonsModule, MatIconModule] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EcabsDialogConfirmModule, decorators: [{
|
|
14
14
|
type: NgModule,
|
|
15
15
|
args: [{
|
|
16
|
-
declarations: [
|
|
16
|
+
declarations: [EcabsDialogConfirmComponent],
|
|
17
17
|
imports: [CommonModule, MatDialogModule, EcabsButtonsModule, MatIconModule],
|
|
18
18
|
}]
|
|
19
19
|
}] });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtZGlhbG9nLWNvbmZpcm0ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWRpYWxvZy1jb25maXJtL2VjYWJzLWRpYWxvZy1jb25maXJtLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUcsTUFBTSxrQ0FBa0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQU0zRCxNQUFNLE9BQU8sd0JBQXdCOztxSEFBeEIsd0JBQXdCO3NIQUF4Qix3QkFBd0IsaUJBSG5CLDJCQUEyQixhQUNoQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLGFBQWE7c0hBRWhFLHdCQUF3QixZQUZ4QixZQUFZLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLGFBQWE7MkZBRWhFLHdCQUF3QjtrQkFKcEMsUUFBUTttQkFBRTtvQkFDVCxZQUFZLEVBQUUsQ0FBRSwyQkFBMkIsQ0FBRztvQkFDOUMsT0FBTyxFQUFFLENBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSxhQUFhLENBQUU7aUJBQzlFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRWNhYnNEaWFsb2dDb25maXJtQ29tcG9uZW50ICB9IGZyb20gJy4vZWNhYnMtZGlhbG9nLWNvbmZpcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBFY2Fic0J1dHRvbnNNb2R1bGUgfSBmcm9tICcuLi9lY2Ficy1idXR0b25zL2VjYWJzLWJ1dHRvbnMubW9kdWxlJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuXHJcbkBOZ01vZHVsZSgge1xyXG4gIGRlY2xhcmF0aW9uczogWyBFY2Fic0RpYWxvZ0NvbmZpcm1Db21wb25lbnQgIF0sXHJcbiAgaW1wb3J0czogWyBDb21tb25Nb2R1bGUsIE1hdERpYWxvZ01vZHVsZSwgRWNhYnNCdXR0b25zTW9kdWxlLCBNYXRJY29uTW9kdWxlIF0sXHJcbn0gKVxyXG5leHBvcnQgY2xhc3MgRWNhYnNEaWFsb2dDb25maXJtTW9kdWxlICAgeyB9XHJcbiJdfQ==
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Component, Inject } from '@angular/core';
|
|
2
2
|
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import { Subject, takeUntil } from 'rxjs';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
import * as i1 from "@angular/material/dialog";
|
|
5
6
|
import * as i2 from "@angular/common";
|
|
@@ -11,15 +12,32 @@ export class EcabsDialogMessageComponent {
|
|
|
11
12
|
this.data = data;
|
|
12
13
|
this.color = 'primary';
|
|
13
14
|
this.titleColor = 'success';
|
|
15
|
+
this.destroy$ = new Subject();
|
|
16
|
+
}
|
|
17
|
+
ngOnDestroy() {
|
|
18
|
+
this.destroy$.next(true);
|
|
19
|
+
this.destroy$.complete();
|
|
20
|
+
}
|
|
21
|
+
closeDialog() {
|
|
22
|
+
if (this.data.loading$) {
|
|
23
|
+
this.data.loading$?.pipe(takeUntil(this.destroy$)).subscribe((loading) => {
|
|
24
|
+
if (!loading) {
|
|
25
|
+
this.dialogRef.close(true);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
this.dialogRef.close(true);
|
|
31
|
+
}
|
|
14
32
|
}
|
|
15
33
|
}
|
|
16
34
|
EcabsDialogMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EcabsDialogMessageComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
17
|
-
EcabsDialogMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: EcabsDialogMessageComponent, selector: "ecabs-dialog-message", ngImport: i0, template: "<div matDialogTitle *ngIf=\"data?.title || !!data?.isPopover\" class=\"flex flex-column\">\r\n <div *ngIf=\"!!data?.isPopover\" class=\"w-full flex justify-end\">\r\n <mat-icon\r\n (click)=\"dialogRef.close(true)\"\r\n class=\"mat-icon material-icons-outlined float-right icon--close mb-2\"\r\n role=\"button\"\r\n >\r\n close\r\n </mat-icon>\r\n </div>\r\n\r\n <div *ngIf=\"data.title\" class=\"title font-semibold heading--xs\" [ngClass]=\"data?.titleColor || titleColor\">\r\n {{ data.title }}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content>\r\n {{data?.message}}\r\n</div>\r\n\r\n<div class=\"pb-6\">\r\n <div mat-dialog-actions class=\"btn__group flex justify-end w-full\" *ngIf=\"!data?.isPopover\">\r\n <ecabs-buttons [color]=\"data?.color || color\" [full]=\"data?.isButtonBlock\" (click)=\"
|
|
35
|
+
EcabsDialogMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: EcabsDialogMessageComponent, selector: "ecabs-dialog-message", ngImport: i0, template: "<div matDialogTitle *ngIf=\"data?.title || !!data?.isPopover\" class=\"flex flex-column\">\r\n <div *ngIf=\"!!data?.isPopover\" class=\"w-full flex justify-end\">\r\n <mat-icon\r\n (click)=\"dialogRef.close(true)\"\r\n class=\"mat-icon material-icons-outlined float-right icon--close mb-2\"\r\n role=\"button\"\r\n >\r\n close\r\n </mat-icon>\r\n </div>\r\n\r\n <div *ngIf=\"data.title\" class=\"title font-semibold heading--xs\" [ngClass]=\"data?.titleColor || titleColor\">\r\n {{ data.title }}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content>\r\n {{data?.message}}\r\n</div>\r\n\r\n<div class=\"pb-6\">\r\n <div mat-dialog-actions class=\"btn__group flex justify-end w-full\" *ngIf=\"!data?.isPopover\">\r\n <ecabs-buttons [color]=\"data?.color || color\" [full]=\"data?.isButtonBlock\" [loading]=\"data.loading$ | async\" (click)=\"closeDialog()\">\r\n {{ data?.confirmLabel }}\r\n </ecabs-buttons>\r\n </div>\r\n</div>\r\n", styles: [":host .mat-mdc-dialog-title .mat-icon.icon--close,:host ::ng-deep .mat-mdc-dialog-title .mat-icon.icon--close{width:20px;height:20px;line-height:20px;font-size:20px}:host .title.success,:host ::ng-deep .title.success{color:var(--color-success)}:host app-buttons,:host ::ng-deep app-buttons{width:calc(50% - .5rem)}:host button,:host ::ng-deep button{width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { kind: "component", type: i3.ButtonsComponent, selector: "ecabs-buttons", inputs: ["label", "disabled", "loading", "form", "size", "type", "raised", "stroked", "full", "color"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
|
|
18
36
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EcabsDialogMessageComponent, decorators: [{
|
|
19
37
|
type: Component,
|
|
20
|
-
args: [{ selector: 'ecabs-dialog-message', template: "<div matDialogTitle *ngIf=\"data?.title || !!data?.isPopover\" class=\"flex flex-column\">\r\n <div *ngIf=\"!!data?.isPopover\" class=\"w-full flex justify-end\">\r\n <mat-icon\r\n (click)=\"dialogRef.close(true)\"\r\n class=\"mat-icon material-icons-outlined float-right icon--close mb-2\"\r\n role=\"button\"\r\n >\r\n close\r\n </mat-icon>\r\n </div>\r\n\r\n <div *ngIf=\"data.title\" class=\"title font-semibold heading--xs\" [ngClass]=\"data?.titleColor || titleColor\">\r\n {{ data.title }}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content>\r\n {{data?.message}}\r\n</div>\r\n\r\n<div class=\"pb-6\">\r\n <div mat-dialog-actions class=\"btn__group flex justify-end w-full\" *ngIf=\"!data?.isPopover\">\r\n <ecabs-buttons [color]=\"data?.color || color\" [full]=\"data?.isButtonBlock\" (click)=\"
|
|
38
|
+
args: [{ selector: 'ecabs-dialog-message', template: "<div matDialogTitle *ngIf=\"data?.title || !!data?.isPopover\" class=\"flex flex-column\">\r\n <div *ngIf=\"!!data?.isPopover\" class=\"w-full flex justify-end\">\r\n <mat-icon\r\n (click)=\"dialogRef.close(true)\"\r\n class=\"mat-icon material-icons-outlined float-right icon--close mb-2\"\r\n role=\"button\"\r\n >\r\n close\r\n </mat-icon>\r\n </div>\r\n\r\n <div *ngIf=\"data.title\" class=\"title font-semibold heading--xs\" [ngClass]=\"data?.titleColor || titleColor\">\r\n {{ data.title }}\r\n </div>\r\n</div>\r\n\r\n<div mat-dialog-content>\r\n {{data?.message}}\r\n</div>\r\n\r\n<div class=\"pb-6\">\r\n <div mat-dialog-actions class=\"btn__group flex justify-end w-full\" *ngIf=\"!data?.isPopover\">\r\n <ecabs-buttons [color]=\"data?.color || color\" [full]=\"data?.isButtonBlock\" [loading]=\"data.loading$ | async\" (click)=\"closeDialog()\">\r\n {{ data?.confirmLabel }}\r\n </ecabs-buttons>\r\n </div>\r\n</div>\r\n", styles: [":host .mat-mdc-dialog-title .mat-icon.icon--close,:host ::ng-deep .mat-mdc-dialog-title .mat-icon.icon--close{width:20px;height:20px;line-height:20px;font-size:20px}:host .title.success,:host ::ng-deep .title.success{color:var(--color-success)}:host app-buttons,:host ::ng-deep app-buttons{width:calc(50% - .5rem)}:host button,:host ::ng-deep button{width:100%}\n"] }]
|
|
21
39
|
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
22
40
|
type: Inject,
|
|
23
41
|
args: [MAT_DIALOG_DATA]
|
|
24
42
|
}] }]; } });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtZGlhbG9nLW1lc3NhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWRpYWxvZy1tZXNzYWdlL2VjYWJzLWRpYWxvZy1tZXNzYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1kaWFsb2ctbWVzc2FnZS9lY2Ficy1kaWFsb2ctbWVzc2FnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBRXpFLE9BQU8sRUFBYyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7QUFPdEQsTUFBTSxPQUFPLDJCQUEyQjtJQU10QyxZQUNTLFNBQTBELEVBQ2pDLElBQXVDO1FBRGhFLGNBQVMsR0FBVCxTQUFTLENBQWlEO1FBQ2pDLFNBQUksR0FBSixJQUFJLENBQW1DO1FBTnpFLFVBQUssR0FBaUIsU0FBUyxDQUFDO1FBQ2hDLGVBQVUsR0FBRyxTQUFTLENBQUM7UUFDZixhQUFRLEdBQWlCLElBQUksT0FBTyxFQUFPLENBQUM7SUFLaEQsQ0FBQztJQUVMLFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO2dCQUN2RSxJQUFJLENBQUMsT0FBTyxFQUFFO29CQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUM1QjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzVCO0lBQ0gsQ0FBQzs7d0hBMUJVLDJCQUEyQiw4Q0FRNUIsZUFBZTs0R0FSZCwyQkFBMkIsNERDVnhDLHc5QkEyQkE7MkZEakJhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSxzQkFBc0I7OzBCQVk3QixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgVGhlbWVQYWxldHRlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlY2Ficy1kaWFsb2ctbWVzc2FnZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VjYWJzLWRpYWxvZy1tZXNzYWdlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9lY2Ficy1kaWFsb2ctbWVzc2FnZS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNEaWFsb2dNZXNzYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICBtZXNzYWdlOiBzdHJpbmc7XHJcbiAgY29sb3I6IFRoZW1lUGFsZXR0ZSA9ICdwcmltYXJ5JztcclxuICB0aXRsZUNvbG9yID0gJ3N1Y2Nlc3MnO1xyXG4gIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8RWNhYnNEaWFsb2dNZXNzYWdlQ29tcG9uZW50Q29uZmlnPixcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogRWNhYnNEaWFsb2dNZXNzYWdlQ29tcG9uZW50Q29uZmlnLFxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2VEaWFsb2coKSB7XHJcbiAgICBpZiAodGhpcy5kYXRhLmxvYWRpbmckKSB7XHJcbiAgICAgIHRoaXMuZGF0YS5sb2FkaW5nJD8ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgobG9hZGluZykgPT4ge1xyXG4gICAgICAgIGlmICghbG9hZGluZykge1xyXG4gICAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRydWUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFY2Fic0RpYWxvZ01lc3NhZ2VDb21wb25lbnRDb25maWcge1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIHRpdGxlQ29sb3I/OiBUaGVtZVBhbGV0dGUgfCAnc3VjY2Vzcyc7XHJcbiAgbWVzc2FnZTogc3RyaW5nO1xyXG4gIGNvbG9yPzogVGhlbWVQYWxldHRlO1xyXG4gIGNvbmZpcm1MYWJlbD86IHN0cmluZztcclxuICBpc1BvcG92ZXI/OiBib29sZWFuO1xyXG4gIGlzQnV0dG9uQmxvY2s/OiBib29sZWFuO1xyXG4gIGxvYWRpbmckPzogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxufVxyXG4iLCI8ZGl2IG1hdERpYWxvZ1RpdGxlICpuZ0lmPVwiZGF0YT8udGl0bGUgfHwgISFkYXRhPy5pc1BvcG92ZXJcIiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW5cIj5cclxuICA8ZGl2ICpuZ0lmPVwiISFkYXRhPy5pc1BvcG92ZXJcIiBjbGFzcz1cInctZnVsbCBmbGV4IGp1c3RpZnktZW5kXCI+XHJcbiAgICA8bWF0LWljb25cclxuICAgICAgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZSh0cnVlKVwiXHJcbiAgICAgIGNsYXNzPVwibWF0LWljb24gbWF0ZXJpYWwtaWNvbnMtb3V0bGluZWQgZmxvYXQtcmlnaHQgaWNvbi0tY2xvc2UgbWItMlwiXHJcbiAgICAgIHJvbGU9XCJidXR0b25cIlxyXG4gICAgPlxyXG4gICAgICBjbG9zZVxyXG4gICAgPC9tYXQtaWNvbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiAqbmdJZj1cImRhdGEudGl0bGVcIiBjbGFzcz1cInRpdGxlIGZvbnQtc2VtaWJvbGQgaGVhZGluZy0teHNcIiBbbmdDbGFzc109XCJkYXRhPy50aXRsZUNvbG9yIHx8IHRpdGxlQ29sb3JcIj5cclxuICAgIHt7IGRhdGEudGl0bGUgfX1cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2IG1hdC1kaWFsb2ctY29udGVudD5cclxuICB7e2RhdGE/Lm1lc3NhZ2V9fVxyXG48L2Rpdj5cclxuXHJcbjxkaXYgY2xhc3M9XCJwYi02XCI+XHJcbiAgPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnMgY2xhc3M9XCJidG5fX2dyb3VwIGZsZXgganVzdGlmeS1lbmQgdy1mdWxsXCIgKm5nSWY9XCIhZGF0YT8uaXNQb3BvdmVyXCI+XHJcbiAgICA8ZWNhYnMtYnV0dG9ucyBbY29sb3JdPVwiZGF0YT8uY29sb3IgfHwgY29sb3JcIiBbZnVsbF09XCJkYXRhPy5pc0J1dHRvbkJsb2NrXCIgIFtsb2FkaW5nXT1cImRhdGEubG9hZGluZyQgfCBhc3luY1wiIChjbGljayk9XCJjbG9zZURpYWxvZygpXCI+XHJcbiAgICAgIHt7IGRhdGE/LmNvbmZpcm1MYWJlbCB9fVxyXG4gICAgPC9lY2Ficy1idXR0b25zPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|