@kms-ngx-ui/presentational 0.0.23 → 13.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -28
- package/{esm2015/kms-ngx-ui-presentational.js → esm2020/kms-ngx-ui-presentational.mjs} +4 -4
- package/{esm2015/lib/directives/directives.module.js → esm2020/lib/directives/directives.module.mjs} +40 -40
- package/{esm2015/lib/directives/mousewheel.directive.js → esm2020/lib/directives/mousewheel.directive.mjs} +56 -56
- package/{esm2015/lib/directives/sum-of-height.directive.js → esm2020/lib/directives/sum-of-height.directive.mjs} +74 -74
- package/{esm2015/lib/directives/swipe.directive.js → esm2020/lib/directives/swipe.directive.mjs} +183 -183
- package/esm2020/lib/directives/swipe.model.mjs +5 -0
- package/{esm2015/lib/directives/tooltip.directive.js → esm2020/lib/directives/tooltip.directive.mjs} +144 -144
- package/{esm2015/lib/kms-ngx-ui-presentational.component.js → esm2020/lib/kms-ngx-ui-presentational.component.mjs} +26 -26
- package/{esm2015/lib/kms-ngx-ui-presentational.module.js → esm2020/lib/kms-ngx-ui-presentational.module.mjs} +217 -217
- package/{esm2015/lib/kms-ngx-ui-presentational.service.js → esm2020/lib/kms-ngx-ui-presentational.service.mjs} +14 -14
- package/esm2020/lib/models/address.model.mjs +6 -0
- package/{esm2015/lib/models/iconSize.enum.js → esm2020/lib/models/iconSize.enum.mjs} +17 -17
- package/{esm2015/lib/models/image-snippet.model.js → esm2020/lib/models/image-snippet.model.mjs} +18 -18
- package/{esm2015/lib/models/index.js → esm2020/lib/models/index.mjs} +5 -5
- package/{esm2015/lib/models/is-value.function.js → esm2020/lib/models/is-value.function.mjs} +17 -17
- package/{esm2015/lib/models/salutation.enum.js → esm2020/lib/models/salutation.enum.mjs} +8 -8
- package/{esm2015/lib/models/types/attached-file-dto.model.js → esm2020/lib/models/types/attached-file-dto.model.mjs} +6 -6
- package/{esm2015/lib/models/types/nullable.type.js → esm2020/lib/models/types/nullable.type.mjs} +5 -5
- package/{esm2015/lib/parent-components/actions.component.js → esm2020/lib/parent-components/actions.component.mjs} +56 -56
- package/{esm2015/lib/parent-components/form-control.component.js → esm2020/lib/parent-components/form-control.component.mjs} +75 -75
- package/{esm2015/lib/parent-components/form.component.js → esm2020/lib/parent-components/form.component.mjs} +78 -78
- package/{esm2015/lib/pipes/custom-pipes.module.js → esm2020/lib/pipes/custom-pipes.module.mjs} +71 -71
- package/{esm2015/lib/pipes/decode-uri.pipe.js → esm2020/lib/pipes/decode-uri.pipe.mjs} +19 -19
- package/{esm2015/lib/pipes/encode-uri.pipe.js → esm2020/lib/pipes/encode-uri.pipe.mjs} +19 -19
- package/{esm2015/lib/pipes/integer-currency.pipe.js → esm2020/lib/pipes/integer-currency.pipe.mjs} +27 -27
- package/{esm2015/lib/pipes/safe-html.pipe.js → esm2020/lib/pipes/safe-html.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/safe-resource-url.pipe.js → esm2020/lib/pipes/safe-resource-url.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/safe-style.pipe.js → esm2020/lib/pipes/safe-style.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/safe-url.pipe.js → esm2020/lib/pipes/safe-url.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/to-number.pipe.js → esm2020/lib/pipes/to-number.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/trim.pipe.js → esm2020/lib/pipes/trim.pipe.mjs} +20 -20
- package/{esm2015/lib/pipes/typeof.pipe.js → esm2020/lib/pipes/typeof.pipe.mjs} +16 -16
- package/{esm2015/lib/services/viewport.service.js → esm2020/lib/services/viewport.service.mjs} +216 -216
- package/esm2020/lib/ui/back-to-top/back-to-top.component.mjs +49 -0
- package/{esm2015/lib/ui/button-with-confirm-dialog/button-response-types.enum.js → esm2020/lib/ui/button-with-confirm-dialog/button-response-types.enum.mjs} +6 -6
- package/esm2020/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.mjs +58 -0
- package/{esm2015/lib/ui/button-with-confirm-dialog/dialog-data.model.js → esm2020/lib/ui/button-with-confirm-dialog/dialog-data.model.mjs} +2 -2
- package/esm2020/lib/ui/checkbox/checkbox.component.mjs +71 -0
- package/esm2020/lib/ui/color-input/color-input.component.mjs +76 -0
- package/esm2020/lib/ui/dropdown-from-data/dropdown-from-data.component.mjs +165 -0
- package/esm2020/lib/ui/enum-radiogroup/enum-radiogroup.component.mjs +53 -0
- package/esm2020/lib/ui/file-input/file-input.component.mjs +232 -0
- package/esm2020/lib/ui/flyout/flyout.component.mjs +119 -0
- package/esm2020/lib/ui/generic-dialog/generic-dialog.component.mjs +54 -0
- package/esm2020/lib/ui/icon/icon.component.mjs +48 -0
- package/{esm2015/lib/ui/icon/iconSize.enum.js → esm2020/lib/ui/icon/iconSize.enum.mjs} +17 -17
- package/esm2020/lib/ui/image-slider/image-slider.component.mjs +189 -0
- package/esm2020/lib/ui/kms-accordion-item/kms-accordion-item.component.mjs +40 -0
- package/esm2020/lib/ui/loader/loader.component.mjs +21 -0
- package/esm2020/lib/ui/map/map.component.mjs +116 -0
- package/esm2020/lib/ui/radiobutton/radiobutton.component.mjs +73 -0
- package/esm2020/lib/ui/salutation-dropdown/salutation-dropdown.component.mjs +55 -0
- package/esm2020/lib/ui/salutation-radiogroup/salutation-radiogroup.component.mjs +49 -0
- package/esm2020/lib/ui/time-input/time-input.component.mjs +83 -0
- package/esm2020/lib/ui/tooltip/tooltip.component.mjs +16 -0
- package/esm2020/lib/ui/tooltip-icon/tooltip-icon.component.mjs +35 -0
- package/esm2020/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.mjs +82 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +49 -49
- package/fesm2015/kms-ngx-ui-presentational.mjs +3019 -0
- package/fesm2015/kms-ngx-ui-presentational.mjs.map +1 -0
- package/{fesm2015/kms-ngx-ui-presentational.js → fesm2020/kms-ngx-ui-presentational.mjs} +2869 -2958
- package/fesm2020/kms-ngx-ui-presentational.mjs.map +1 -0
- package/kms-ngx-ui-presentational.d.ts +5 -5
- package/lib/directives/directives.module.d.ts +11 -11
- package/lib/directives/mousewheel.directive.d.ts +15 -15
- package/lib/directives/sum-of-height.directive.d.ts +31 -31
- package/lib/directives/swipe.directive.d.ts +45 -45
- package/lib/directives/swipe.model.d.ts +49 -49
- package/lib/directives/tooltip.directive.d.ts +29 -29
- package/lib/kms-ngx-ui-presentational.component.d.ts +8 -8
- package/lib/kms-ngx-ui-presentational.module.d.ts +47 -47
- package/lib/kms-ngx-ui-presentational.service.d.ts +6 -6
- package/lib/models/address.model.d.ts +14 -14
- package/lib/models/iconSize.enum.d.ts +15 -15
- package/lib/models/image-snippet.model.d.ts +15 -15
- package/lib/models/index.d.ts +4 -4
- package/lib/models/is-value.function.d.ts +9 -9
- package/lib/models/salutation.enum.d.ts +5 -5
- package/lib/models/types/attached-file-dto.model.d.ts +11 -11
- package/lib/models/types/nullable.type.d.ts +4 -4
- package/lib/parent-components/actions.component.d.ts +31 -31
- package/lib/parent-components/form-control.component.d.ts +27 -27
- package/lib/parent-components/form.component.d.ts +34 -34
- package/lib/pipes/custom-pipes.module.d.ts +17 -17
- package/lib/pipes/decode-uri.pipe.d.ts +10 -10
- package/lib/pipes/encode-uri.pipe.d.ts +10 -10
- package/lib/pipes/integer-currency.pipe.d.ts +13 -13
- package/lib/pipes/safe-html.pipe.d.ts +13 -13
- package/lib/pipes/safe-resource-url.pipe.d.ts +13 -13
- package/lib/pipes/safe-style.pipe.d.ts +13 -13
- package/lib/pipes/safe-url.pipe.d.ts +13 -13
- package/lib/pipes/to-number.pipe.d.ts +10 -10
- package/lib/pipes/trim.pipe.d.ts +10 -10
- package/lib/pipes/typeof.pipe.d.ts +7 -7
- package/lib/services/viewport.service.d.ts +74 -74
- package/lib/ui/back-to-top/back-to-top.component.d.ts +10 -10
- package/lib/ui/button-with-confirm-dialog/button-response-types.enum.d.ts +4 -4
- package/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.d.ts +19 -19
- package/lib/ui/button-with-confirm-dialog/dialog-data.model.d.ts +9 -9
- package/lib/ui/checkbox/checkbox.component.d.ts +31 -31
- package/lib/ui/color-input/color-input.component.d.ts +19 -19
- package/lib/ui/dropdown-from-data/dropdown-from-data.component.d.ts +55 -55
- package/lib/ui/enum-radiogroup/enum-radiogroup.component.d.ts +17 -17
- package/lib/ui/file-input/file-input.component.d.ts +89 -89
- package/lib/ui/flyout/flyout.component.d.ts +32 -32
- package/lib/ui/generic-dialog/generic-dialog.component.d.ts +26 -26
- package/lib/ui/icon/icon.component.d.ts +42 -42
- package/lib/ui/icon/iconSize.enum.d.ts +15 -15
- package/lib/ui/image-slider/image-slider.component.d.ts +62 -62
- package/lib/ui/kms-accordion-item/kms-accordion-item.component.d.ts +22 -22
- package/lib/ui/loader/loader.component.d.ts +9 -9
- package/lib/ui/map/map.component.d.ts +69 -69
- package/lib/ui/radiobutton/radiobutton.component.d.ts +26 -26
- package/lib/ui/salutation-dropdown/salutation-dropdown.component.d.ts +17 -17
- package/lib/ui/salutation-radiogroup/salutation-radiogroup.component.d.ts +15 -15
- package/lib/ui/time-input/time-input.component.d.ts +22 -22
- package/lib/ui/tooltip/tooltip.component.d.ts +6 -6
- package/lib/ui/tooltip-icon/tooltip-icon.component.d.ts +13 -13
- package/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.d.ts +27 -27
- package/package.json +25 -12
- package/public-api.d.ts +45 -45
- package/src/lib/ui/back-to-top/back-to-top.component.scss +46 -46
- package/src/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.scss +2 -2
- package/src/lib/ui/checkbox/checkbox.component.scss +48 -48
- package/src/lib/ui/color-input/color-input.component.scss +38 -38
- package/src/lib/ui/file-input/file-input.component.scss +2 -2
- package/src/lib/ui/flyout/flyout.component.scss +34 -34
- package/src/lib/ui/generic-dialog/generic-dialog.component.scss +59 -59
- package/src/lib/ui/icon/icon.component.scss +148 -148
- package/src/lib/ui/image-slider/image-slider.component.scss +219 -219
- package/src/lib/ui/kms-accordion-item/kms-accordion-item.component.scss +95 -95
- package/src/lib/ui/radiobutton/radiobutton.component.scss +31 -31
- package/src/lib/ui/time-input/time-input.component.scss +10 -10
- package/src/lib/ui/tooltip/tooltip.component.scss +26 -26
- package/src/lib/ui/tooltip-icon/tooltip-icon.component.scss +2 -2
- package/src/styles/mixins.scss +8 -8
- package/src/styles/styles.scss +30 -30
- package/bundles/kms-ngx-ui-presentational.umd.js +0 -3628
- package/bundles/kms-ngx-ui-presentational.umd.js.map +0 -1
- package/esm2015/lib/directives/swipe.model.js +0 -5
- package/esm2015/lib/models/address.model.js +0 -6
- package/esm2015/lib/ui/back-to-top/back-to-top.component.js +0 -52
- package/esm2015/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.js +0 -62
- package/esm2015/lib/ui/checkbox/checkbox.component.js +0 -76
- package/esm2015/lib/ui/color-input/color-input.component.js +0 -81
- package/esm2015/lib/ui/dropdown-from-data/dropdown-from-data.component.js +0 -169
- package/esm2015/lib/ui/enum-radiogroup/enum-radiogroup.component.js +0 -57
- package/esm2015/lib/ui/file-input/file-input.component.js +0 -237
- package/esm2015/lib/ui/flyout/flyout.component.js +0 -124
- package/esm2015/lib/ui/generic-dialog/generic-dialog.component.js +0 -58
- package/esm2015/lib/ui/icon/icon.component.js +0 -52
- package/esm2015/lib/ui/image-slider/image-slider.component.js +0 -193
- package/esm2015/lib/ui/kms-accordion-item/kms-accordion-item.component.js +0 -44
- package/esm2015/lib/ui/loader/loader.component.js +0 -25
- package/esm2015/lib/ui/map/map.component.js +0 -120
- package/esm2015/lib/ui/radiobutton/radiobutton.component.js +0 -78
- package/esm2015/lib/ui/salutation-dropdown/salutation-dropdown.component.js +0 -59
- package/esm2015/lib/ui/salutation-radiogroup/salutation-radiogroup.component.js +0 -53
- package/esm2015/lib/ui/time-input/time-input.component.js +0 -88
- package/esm2015/lib/ui/tooltip/tooltip.component.js +0 -20
- package/esm2015/lib/ui/tooltip-icon/tooltip-icon.component.js +0 -39
- package/esm2015/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.js +0 -86
- package/fesm2015/kms-ngx-ui-presentational.js.map +0 -1
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { SubSink } from 'subsink';
|
|
3
|
+
import { GenericDialogComponent } from '../generic-dialog/generic-dialog.component';
|
|
4
|
+
import { ButtonResponseType } from './button-response-types.enum';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/material/dialog";
|
|
7
|
+
import * as i2 from "@angular/material/button";
|
|
8
|
+
export class ButtonWithConfirmDialogComponent {
|
|
9
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
10
|
+
constructor(dialog) {
|
|
11
|
+
this.dialog = dialog;
|
|
12
|
+
// Outputs when dialogue was closed. Returns true, if yes was clicked, false otherwise
|
|
13
|
+
this.onConfirmClosed = new EventEmitter();
|
|
14
|
+
this.subs = new SubSink();
|
|
15
|
+
}
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
17
|
+
ngOnInit() { }
|
|
18
|
+
start() {
|
|
19
|
+
const data = {
|
|
20
|
+
title: this.confirmTitle,
|
|
21
|
+
buttons: {
|
|
22
|
+
primary: this.confirmTextYes,
|
|
23
|
+
secondary: this.confirmTextNo,
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
const dialogRef = this.dialog.open(GenericDialogComponent, {
|
|
27
|
+
data: data,
|
|
28
|
+
});
|
|
29
|
+
this.subs.sink = dialogRef.afterClosed().subscribe(result => {
|
|
30
|
+
if (result === ButtonResponseType.primary) {
|
|
31
|
+
this.onConfirmClosed.emit(true);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
this.onConfirmClosed.emit(false);
|
|
35
|
+
}
|
|
36
|
+
dialogRef.close();
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
ButtonWithConfirmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: ButtonWithConfirmDialogComponent, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
41
|
+
ButtonWithConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: ButtonWithConfirmDialogComponent, selector: "kms-button-with-confirm-dialog", inputs: { disabled: "disabled", buttonText: "buttonText", confirmTitle: "confirmTitle", confirmTextYes: "confirmTextYes", confirmTextNo: "confirmTextNo" }, outputs: { onConfirmClosed: "onConfirmClosed" }, ngImport: i0, template: "<button\n type=\"button\"\n (click)=\"start()\"\n mat-stroked-button\n [disabled]=\"disabled\"\n>\n {{ buttonText }}\n</button>\n", styles: [""], components: [{ type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: ButtonWithConfirmDialogComponent, decorators: [{
|
|
43
|
+
type: Component,
|
|
44
|
+
args: [{ selector: 'kms-button-with-confirm-dialog', template: "<button\n type=\"button\"\n (click)=\"start()\"\n mat-stroked-button\n [disabled]=\"disabled\"\n>\n {{ buttonText }}\n</button>\n", styles: [""] }]
|
|
45
|
+
}], ctorParameters: function () { return [{ type: i1.MatDialog }]; }, propDecorators: { disabled: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], buttonText: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], confirmTitle: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], confirmTextYes: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], confirmTextNo: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], onConfirmClosed: [{
|
|
56
|
+
type: Output
|
|
57
|
+
}] } });
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXdpdGgtY29uZmlybS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3VpL2J1dHRvbi13aXRoLWNvbmZpcm0tZGlhbG9nL2J1dHRvbi13aXRoLWNvbmZpcm0tZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9idXR0b24td2l0aC1jb25maXJtLWRpYWxvZy9idXR0b24td2l0aC1jb25maXJtLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFbEMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7QUFRbEUsTUFBTSxPQUFPLGdDQUFnQztJQVl6QyxnRUFBZ0U7SUFDaEUsWUFDVyxNQUFpQjtRQUFqQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBUDVCLHNGQUFzRjtRQUM1RSxvQkFBZSxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTlELFNBQUksR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBSzFCLENBQUM7SUFFSixnRUFBZ0U7SUFDaEUsUUFBUSxLQUFJLENBQUM7SUFFYixLQUFLO1FBQ0QsTUFBTSxJQUFJLEdBQWU7WUFDckIsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQ3hCLE9BQU8sRUFBQztnQkFDSixPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWM7Z0JBQzVCLFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYTthQUNoQztTQUNKLENBQUM7UUFDRixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtZQUN2RCxJQUFJLEVBQUUsSUFBSTtTQUNiLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDeEQsSUFBSSxNQUFNLEtBQUssa0JBQWtCLENBQUMsT0FBTyxFQUFFO2dCQUN2QyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNuQztpQkFBSTtnQkFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNwQztZQUNELFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OzZIQXhDUSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQyxtUkNiN0Msa0pBUUE7MkZES2EsZ0NBQWdDO2tCQUw1QyxTQUFTOytCQUNJLGdDQUFnQztnR0FLakMsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdJLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgU3ViU2luayB9IGZyb20gJ3N1YnNpbmsnO1xuaW1wb3J0IHsgTnVsbEFibGUgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgR2VuZXJpY0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2dlbmVyaWMtZGlhbG9nL2dlbmVyaWMtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCdXR0b25SZXNwb25zZVR5cGUgfSBmcm9tICcuL2J1dHRvbi1yZXNwb25zZS10eXBlcy5lbnVtJztcbmltcG9ydCB7IERpYWxvZ0RhdGEgfSBmcm9tICcuL2RpYWxvZy1kYXRhLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdrbXMtYnV0dG9uLXdpdGgtY29uZmlybS1kaWFsb2cnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9idXR0b24td2l0aC1jb25maXJtLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLXdpdGgtY29uZmlybS1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uV2l0aENvbmZpcm1EaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBOdWxsQWJsZTxib29sZWFuPjtcbiAgICBASW5wdXQoKSBidXR0b25UZXh0OiBOdWxsQWJsZTxzdHJpbmc+O1xuICAgIEBJbnB1dCgpIGNvbmZpcm1UaXRsZTogTnVsbEFibGU8c3RyaW5nPjtcbiAgICBASW5wdXQoKSBjb25maXJtVGV4dFllczogTnVsbEFibGU8c3RyaW5nPjtcbiAgICBASW5wdXQoKSBjb25maXJtVGV4dE5vOiBOdWxsQWJsZTxzdHJpbmc+O1xuXG4gICAgLy8gT3V0cHV0cyB3aGVuIGRpYWxvZ3VlIHdhcyBjbG9zZWQuIFJldHVybnMgdHJ1ZSwgaWYgeWVzIHdhcyBjbGlja2VkLCBmYWxzZSBvdGhlcndpc2VcbiAgICBAT3V0cHV0KCkgb25Db25maXJtQ2xvc2VkOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBwcml2YXRlIHN1YnMgPSBuZXcgU3ViU2luaygpO1xuICAgIFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgICkge31cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgICBuZ09uSW5pdCgpIHt9XG5cbiAgICBzdGFydCgpe1xuICAgICAgICBjb25zdCBkYXRhOiBEaWFsb2dEYXRhID0ge1xuICAgICAgICAgICAgdGl0bGU6IHRoaXMuY29uZmlybVRpdGxlLFxuICAgICAgICAgICAgYnV0dG9uczp7XG4gICAgICAgICAgICAgICAgcHJpbWFyeTogdGhpcy5jb25maXJtVGV4dFllcyxcbiAgICAgICAgICAgICAgICBzZWNvbmRhcnk6IHRoaXMuY29uZmlybVRleHRObyxcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihHZW5lcmljRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnN1YnMuc2luayA9IGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgICAgICAgaWYgKHJlc3VsdCA9PT0gQnV0dG9uUmVzcG9uc2VUeXBlLnByaW1hcnkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ29uZmlybUNsb3NlZC5lbWl0KHRydWUpO1xuICAgICAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkNvbmZpcm1DbG9zZWQuZW1pdChmYWxzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaWFsb2dSZWYuY2xvc2UoKTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIChjbGljayk9XCJzdGFydCgpXCJcbiAgICBtYXQtc3Ryb2tlZC1idXR0b25cbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuPlxuICAgIHt7IGJ1dHRvblRleHQgfX1cbjwvYnV0dG9uPlxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWRhdGEubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvdWkvYnV0dG9uLXdpdGgtY29uZmlybS1kaWFsb2cvZGlhbG9nLWRhdGEubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRGlhbG9nRGF0YSB7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBtZXNzYWdlPzogc3RyaW5nO1xuICAgIGJ1dHRvbnM/OiBEaWFsb2dEYXRhQnV0dG9uc1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpYWxvZ0RhdGFCdXR0b25zIHtcbiAgICBwcmltYXJ5OiBzdHJpbmcsXG4gICAgc2Vjb25kYXJ5OiBzdHJpbmcsXG59XG4iXX0=
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* @copyright FLYACTS GmbH 2019
|
|
3
|
+
*/
|
|
4
|
+
import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
|
|
5
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
6
|
+
import { ActionsParentComponent } from '../../parent-components/actions.component';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/material/checkbox";
|
|
9
|
+
import * as i2 from "@angular/forms";
|
|
10
|
+
import * as i3 from "@angular/common";
|
|
11
|
+
export class CheckboxComponent extends ActionsParentComponent {
|
|
12
|
+
constructor() {
|
|
13
|
+
super();
|
|
14
|
+
/**
|
|
15
|
+
* Internal description name. All checkboxes with the same name belong to the same group.
|
|
16
|
+
* User can select none, one or all checkboxes with the same name.
|
|
17
|
+
*/
|
|
18
|
+
this.name = '';
|
|
19
|
+
this.select = new EventEmitter();
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
21
|
+
this.onChange = () => { };
|
|
22
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
23
|
+
this.onTouch = () => { };
|
|
24
|
+
}
|
|
25
|
+
selectAction(id) {
|
|
26
|
+
this.select.emit(id);
|
|
27
|
+
this.checked = !this.checked;
|
|
28
|
+
}
|
|
29
|
+
get value() {
|
|
30
|
+
return this.checked;
|
|
31
|
+
}
|
|
32
|
+
set value(value) {
|
|
33
|
+
this.checked = value;
|
|
34
|
+
this.onChange(value);
|
|
35
|
+
this.onTouch(value);
|
|
36
|
+
}
|
|
37
|
+
writeValue(value) {
|
|
38
|
+
this.value = value;
|
|
39
|
+
}
|
|
40
|
+
registerOnChange(fn) {
|
|
41
|
+
this.onChange = fn;
|
|
42
|
+
}
|
|
43
|
+
registerOnTouched(fn) {
|
|
44
|
+
this.onTouch = fn;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
48
|
+
CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: CheckboxComponent, selector: "kms-checkbox", inputs: { infoText: "infoText", name: "name" }, outputs: { select: "select" }, providers: [
|
|
49
|
+
{
|
|
50
|
+
provide: NG_VALUE_ACCESSOR,
|
|
51
|
+
useExisting: forwardRef(() => CheckboxComponent),
|
|
52
|
+
multi: true,
|
|
53
|
+
},
|
|
54
|
+
], usesInheritance: true, ngImport: i0, template: "<!-- <label class=\"wrapper ui-copy-text\"\n [ngClass]=\"{'disabled' : disabled}\">{{label}}\n <input type=\"checkbox\" \n [checked]=\"checked\"\n [value]=\"value\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n (change)=\"selectAction($event)\">\n\n</label> -->\n<mat-checkbox class=\"example-margin\" [disabled]=\"disabled\" [name]=\"name\" [(ngModel)]=\"checked\"></mat-checkbox>\n<span *ngIf=\"infoText && infoText.length > 0\" \n class=\"\"\n [ngClass]=\"{'disabled' : disabled}\">{{infoText}}\n</span>", styles: [""], components: [{ type: i1.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: CheckboxComponent, decorators: [{
|
|
56
|
+
type: Component,
|
|
57
|
+
args: [{ selector: 'kms-checkbox', providers: [
|
|
58
|
+
{
|
|
59
|
+
provide: NG_VALUE_ACCESSOR,
|
|
60
|
+
useExisting: forwardRef(() => CheckboxComponent),
|
|
61
|
+
multi: true,
|
|
62
|
+
},
|
|
63
|
+
], template: "<!-- <label class=\"wrapper ui-copy-text\"\n [ngClass]=\"{'disabled' : disabled}\">{{label}}\n <input type=\"checkbox\" \n [checked]=\"checked\"\n [value]=\"value\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n (change)=\"selectAction($event)\">\n\n</label> -->\n<mat-checkbox class=\"example-margin\" [disabled]=\"disabled\" [name]=\"name\" [(ngModel)]=\"checked\"></mat-checkbox>\n<span *ngIf=\"infoText && infoText.length > 0\" \n class=\"\"\n [ngClass]=\"{'disabled' : disabled}\">{{infoText}}\n</span>", styles: [""] }]
|
|
64
|
+
}], ctorParameters: function () { return []; }, propDecorators: { infoText: [{
|
|
65
|
+
type: Input
|
|
66
|
+
}], name: [{
|
|
67
|
+
type: Input
|
|
68
|
+
}], select: [{
|
|
69
|
+
type: Output
|
|
70
|
+
}] } });
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3VpL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd6RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7QUFlbkYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLHNCQUFzQjtJQW9CekQ7UUFDSSxLQUFLLEVBQUUsQ0FBQztRQWJaOzs7V0FHRztRQUNNLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFVCxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVV0QyxnRUFBZ0U7UUFDaEUsYUFBUSxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUV6QixnRUFBZ0U7UUFDaEUsWUFBTyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQU54QixDQUFDO0lBUEcsWUFBWSxDQUFDLEVBQVU7UUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDakMsQ0FBQztJQVlELElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxLQUFLLENBQUMsS0FBYztRQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFVO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7OzhHQWxEUSxpQkFBaUI7a0dBQWpCLGlCQUFpQixzSEFSZjtRQUNQO1lBQ0ksT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO1lBQ2hELEtBQUssRUFBRSxJQUFJO1NBQ2Q7S0FDSixpRENyQkwsaWtCQWNPOzJGRFNNLGlCQUFpQjtrQkFaN0IsU0FBUzsrQkFDSSxjQUFjLGFBR2I7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsa0JBQWtCLENBQUM7NEJBQ2hELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKOzBFQVFRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBTUcsSUFBSTtzQkFBWixLQUFLO2dCQUVJLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGNvcHlyaWdodCBGTFlBQ1RTIEdtYkggMjAxOVxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOdWxsQWJsZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbmltcG9ydCB7IEFjdGlvbnNQYXJlbnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9wYXJlbnQtY29tcG9uZW50cy9hY3Rpb25zLmNvbXBvbmVudCc7XG5cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdrbXMtY2hlY2tib3gnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2hlY2tib3guY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDaGVja2JveENvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDaGVja2JveENvbXBvbmVudCBleHRlbmRzIEFjdGlvbnNQYXJlbnRDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cblxuICAgIC8qKlxuICAgICAqIEFkZGl0aW9uYWwgZGVzY3JpcHRpb24gdGV4dCB0aGF0IHdpbGwgYmUgc2hvd24gYmVsb3cgdGhlIGNoZWNrYm94LlxuICAgICAqL1xuICAgIEBJbnB1dCgpIGluZm9UZXh0OiBOdWxsQWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqXG4gICAgICogSW50ZXJuYWwgZGVzY3JpcHRpb24gbmFtZS4gQWxsIGNoZWNrYm94ZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGJlbG9uZyB0byB0aGUgc2FtZSBncm91cC5cbiAgICAgKiBVc2VyIGNhbiBzZWxlY3Qgbm9uZSwgb25lIG9yIGFsbCBjaGVja2JveGVzIHdpdGggdGhlIHNhbWUgbmFtZS5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBuYW1lID0gJyc7XG5cbiAgICBAT3V0cHV0KCkgc2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgICAgICBzZWxlY3RBY3Rpb24oaWQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLnNlbGVjdC5lbWl0KGlkKTtcbiAgICAgICAgdGhpcy5jaGVja2VkID0gIXRoaXMuY2hlY2tlZDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gICAgb25DaGFuZ2U6IGFueSA9ICgpID0+IHt9O1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAgIG9uVG91Y2g6IGFueSA9ICgpID0+IHt9O1xuXG4gICAgZ2V0IHZhbHVlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jaGVja2VkO1xuICAgIH1cblxuICAgIHNldCB2YWx1ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmNoZWNrZWQgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMub25Ub3VjaCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5vblRvdWNoID0gZm47XG4gICAgfVxufVxuIiwiPCEtLSA8bGFiZWwgY2xhc3M9XCJ3cmFwcGVyIHVpLWNvcHktdGV4dFwiXG4gICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlZCcgOiBkaXNhYmxlZH1cIj57e2xhYmVsfX1cbiAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgXG4gICAgICAgICAgIFtjaGVja2VkXT1cImNoZWNrZWRcIlxuICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgKGNoYW5nZSk9XCJzZWxlY3RBY3Rpb24oJGV2ZW50KVwiPlxuXG48L2xhYmVsPiAtLT5cbjxtYXQtY2hlY2tib3ggY2xhc3M9XCJleGFtcGxlLW1hcmdpblwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFtuYW1lXT1cIm5hbWVcIiBbKG5nTW9kZWwpXT1cImNoZWNrZWRcIj48L21hdC1jaGVja2JveD5cbjxzcGFuICpuZ0lmPVwiaW5mb1RleHQgJiYgaW5mb1RleHQubGVuZ3RoID4gMFwiIFxuICAgICAgY2xhc3M9XCJcIlxuICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlZCcgOiBkaXNhYmxlZH1cIj57e2luZm9UZXh0fX1cbjwvc3Bhbj4iXX0=
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { Component, forwardRef, Input } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { FormControlParentComponent } from './../../parent-components/form-control.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/forms";
|
|
6
|
+
import * as i2 from "@angular/material/form-field";
|
|
7
|
+
import * as i3 from "../tooltip-icon/tooltip-icon.component";
|
|
8
|
+
import * as i4 from "@angular/common";
|
|
9
|
+
import * as i5 from "@angular/material/input";
|
|
10
|
+
export class ColorInputComponent extends FormControlParentComponent {
|
|
11
|
+
constructor(formBuilder, renderer) {
|
|
12
|
+
super(formBuilder, renderer);
|
|
13
|
+
this.formBuilder = formBuilder;
|
|
14
|
+
this.renderer = renderer;
|
|
15
|
+
this.label = '';
|
|
16
|
+
this.tooltipText = '';
|
|
17
|
+
this.placeholder = '';
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
this.form = this.formBuilder.group({
|
|
21
|
+
color: '',
|
|
22
|
+
});
|
|
23
|
+
super.ngOnInit();
|
|
24
|
+
this.formInitialized = true;
|
|
25
|
+
this.form.valueChanges.subscribe((value) => {
|
|
26
|
+
this.internalValue = value.color;
|
|
27
|
+
this.onChange(value.color);
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
validate(_) {
|
|
31
|
+
// TODO fix to validate complete form
|
|
32
|
+
this.valid = this.matchesHex(this.form.value) ? null : false;
|
|
33
|
+
return this.valid && {
|
|
34
|
+
invalid: !this.valid
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
matchesHex(match) {
|
|
38
|
+
if (match) {
|
|
39
|
+
const ret = match.match(/^#[0-9a-f]{6}$/i);
|
|
40
|
+
this.valid = ret && ret.length > 0;
|
|
41
|
+
return ret;
|
|
42
|
+
}
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
updateSelectedColor(value) {
|
|
46
|
+
const color = value.target.value;
|
|
47
|
+
this.value = color;
|
|
48
|
+
this.internalValue = color;
|
|
49
|
+
this.change(color);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
ColorInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: ColorInputComponent, deps: [{ token: i1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
53
|
+
ColorInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: ColorInputComponent, selector: "kms-color-input", inputs: { label: "label", tooltipText: "tooltipText", placeholder: "placeholder" }, providers: [
|
|
54
|
+
{
|
|
55
|
+
provide: NG_VALUE_ACCESSOR,
|
|
56
|
+
useExisting: forwardRef(() => ColorInputComponent),
|
|
57
|
+
multi: true,
|
|
58
|
+
},
|
|
59
|
+
], usesInheritance: true, ngImport: i0, template: "\n<form [formGroup]=\"form\" *ngIf=\"formInitialized\">\n <div>\n <mat-form-field class=\"colorInput\">\n <kms-tooltip-icon [tooltipText]=\"tooltipText\" *ngIf=\"tooltipText\"></kms-tooltip-icon>\n <mat-label>{{ label }}</mat-label>\n <input type=\"text\" [(ngModel)]=\"value\" matInput formControlName=\"color\" [placeholder]=\"placeholder\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\n <input type=\"color\" [value]=\"value && matchesHex(value) ? value : '#ffffff'\" (change)=\"updateSelectedColor($event)\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\n </mat-form-field>\n </div>\n</form>", styles: [""], components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i3.TooltipIconComponent, selector: "kms-tooltip-icon", inputs: ["tooltipTitle", "tooltipText", "tooltipLinkText", "tooltipLinkUrl", "placement", "delay"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.MatLabel, selector: "mat-label" }, { type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: ColorInputComponent, decorators: [{
|
|
61
|
+
type: Component,
|
|
62
|
+
args: [{ selector: 'kms-color-input', providers: [
|
|
63
|
+
{
|
|
64
|
+
provide: NG_VALUE_ACCESSOR,
|
|
65
|
+
useExisting: forwardRef(() => ColorInputComponent),
|
|
66
|
+
multi: true,
|
|
67
|
+
},
|
|
68
|
+
], template: "\n<form [formGroup]=\"form\" *ngIf=\"formInitialized\">\n <div>\n <mat-form-field class=\"colorInput\">\n <kms-tooltip-icon [tooltipText]=\"tooltipText\" *ngIf=\"tooltipText\"></kms-tooltip-icon>\n <mat-label>{{ label }}</mat-label>\n <input type=\"text\" [(ngModel)]=\"value\" matInput formControlName=\"color\" [placeholder]=\"placeholder\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\n <input type=\"color\" [value]=\"value && matchesHex(value) ? value : '#ffffff'\" (change)=\"updateSelectedColor($event)\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\n </mat-form-field>\n </div>\n</form>", styles: [""] }]
|
|
69
|
+
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i0.Renderer2 }]; }, propDecorators: { label: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], tooltipText: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], placeholder: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}] } });
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3VpL2NvbG9yLWlucHV0L2NvbG9yLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9jb2xvci1pbnB1dC9jb2xvci1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBa0QsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7Ozs7OztBQWM5RixNQUFNLE9BQU8sbUJBQW9CLFNBQVEsMEJBQTBCO0lBTy9ELFlBQW1CLFdBQXdCLEVBQVMsUUFBbUI7UUFDbkUsS0FBSyxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQztRQURkLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVMsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUw5RCxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDakIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7SUFLMUIsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1lBQy9CLEtBQUssRUFBRSxFQUFFO1NBQ1osQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBRTVCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUVQLENBQUM7SUFFRCxRQUFRLENBQUMsQ0FBYztRQUNuQixxQ0FBcUM7UUFDckMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQzdELE9BQU8sSUFBSSxDQUFDLEtBQUssSUFBSTtZQUNqQixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSztTQUN2QixDQUFDO0lBQ04sQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFjO1FBQ3JCLElBQUcsS0FBSyxFQUFDO1lBQ0wsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQzNDLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUMsQ0FBQyxDQUFDO1lBQ2pDLE9BQU8sR0FBRyxDQUFDO1NBQ2Q7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRUQsbUJBQW1CLENBQUMsS0FBVTtRQUMxQixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUNqQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7O2dIQWpEUSxtQkFBbUI7b0dBQW5CLG1CQUFtQiw4SEFSakI7UUFDUDtZQUNJLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztZQUNsRCxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osaURDZEwsa3FCQVVPOzJGRE1NLG1CQUFtQjtrQkFaL0IsU0FBUzsrQkFDSSxpQkFBaUIsYUFHaEI7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsb0JBQW9CLENBQUM7NEJBQ2xELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKOzBIQUlRLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkluaXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbFBhcmVudENvbXBvbmVudCB9IGZyb20gJy4vLi4vLi4vcGFyZW50LWNvbXBvbmVudHMvZm9ybS1jb250cm9sLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAna21zLWNvbG9yLWlucHV0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29sb3ItaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NvbG9yLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ29sb3JJbnB1dENvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDb2xvcklucHV0Q29tcG9uZW50IGV4dGVuZHMgRm9ybUNvbnRyb2xQYXJlbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcblxuICAgIEBJbnB1dCgpIGxhYmVsID0gJyc7XG4gICAgQElucHV0KCkgdG9vbHRpcFRleHQgPSAnJztcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICcnO1xuICAgIHZhbGlkOiBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyKSB7XG4gICAgICAgIHN1cGVyKGZvcm1CdWlsZGVyLCByZW5kZXJlcik7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICAgICAgY29sb3I6ICcnLFxuICAgICAgICB9KTtcbiAgICAgICAgXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIFxuICAgICAgICB0aGlzLmZvcm1Jbml0aWFsaXplZCA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5mb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmludGVybmFsVmFsdWUgPSB2YWx1ZS5jb2xvcjtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUuY29sb3IpO1xuICAgICAgICB9KTtcblxuICAgIH1cblxuICAgIHZhbGlkYXRlKF86IEZvcm1Db250cm9sKSB7XG4gICAgICAgIC8vIFRPRE8gZml4IHRvIHZhbGlkYXRlIGNvbXBsZXRlIGZvcm1cbiAgICAgICAgdGhpcy52YWxpZCA9IHRoaXMubWF0Y2hlc0hleCh0aGlzLmZvcm0udmFsdWUpID8gbnVsbCA6IGZhbHNlO1xuICAgICAgICByZXR1cm4gdGhpcy52YWxpZCAmJiB7XG4gICAgICAgICAgICBpbnZhbGlkOiAhdGhpcy52YWxpZFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIG1hdGNoZXNIZXgobWF0Y2g/OiBzdHJpbmcpe1xuICAgICAgICBpZihtYXRjaCl7XG4gICAgICAgICAgICBjb25zdCByZXQgPSBtYXRjaC5tYXRjaCgvXiNbMC05YS1mXXs2fSQvaSk7XG4gICAgICAgICAgICB0aGlzLnZhbGlkID0gcmV0ICYmIHJldC5sZW5ndGg+MDtcbiAgICAgICAgICAgIHJldHVybiByZXQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHVwZGF0ZVNlbGVjdGVkQ29sb3IodmFsdWU6IGFueSl7XG4gICAgICAgIGNvbnN0IGNvbG9yID0gdmFsdWUudGFyZ2V0LnZhbHVlO1xuICAgICAgICB0aGlzLnZhbHVlID0gY29sb3I7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxWYWx1ZSA9IGNvbG9yO1xuICAgICAgICB0aGlzLmNoYW5nZShjb2xvcik7XG4gICAgfVxufVxuIiwiXG48Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiAqbmdJZj1cImZvcm1Jbml0aWFsaXplZFwiPlxuICAgIDxkaXY+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImNvbG9ySW5wdXRcIj5cbiAgICAgICAgICAgIDxrbXMtdG9vbHRpcC1pY29uIFt0b29sdGlwVGV4dF09XCJ0b29sdGlwVGV4dFwiICpuZ0lmPVwidG9vbHRpcFRleHRcIj48L2ttcy10b29sdGlwLWljb24+XG4gICAgICAgICAgICA8bWF0LWxhYmVsPnt7IGxhYmVsIH19PC9tYXQtbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCIgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiY29sb3JcIiBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbbmdDbGFzc109XCJ7J215LWluVmFsaWQnOiAhbWF0Y2hlc0hleCh2YWx1ZSl9XCIgLz5cbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY29sb3JcIiBbdmFsdWVdPVwidmFsdWUgJiYgbWF0Y2hlc0hleCh2YWx1ZSkgPyB2YWx1ZSA6ICcjZmZmZmZmJ1wiIChjaGFuZ2UpPVwidXBkYXRlU2VsZWN0ZWRDb2xvcigkZXZlbnQpXCIgW25nQ2xhc3NdPVwieydteS1pblZhbGlkJzogIW1hdGNoZXNIZXgodmFsdWUpfVwiIC8+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPC9kaXY+XG48L2Zvcm0+Il19
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { Component, forwardRef, Input, } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR, } from '@angular/forms';
|
|
3
|
+
import { EnumValues } from 'enum-values/src/enumValues';
|
|
4
|
+
//import { EnumValues } from 'enum-values';
|
|
5
|
+
import { FormControlParentComponent } from '../../parent-components/form-control.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/forms";
|
|
8
|
+
import * as i2 from "@angular/material/form-field";
|
|
9
|
+
import * as i3 from "@angular/material/select";
|
|
10
|
+
import * as i4 from "@angular/material/core";
|
|
11
|
+
import * as i5 from "@angular/common";
|
|
12
|
+
/**
|
|
13
|
+
* Dropdown from data component {@link https://leaseplan-dev.rentoffice.de/styleguide#ui-elements}
|
|
14
|
+
*/
|
|
15
|
+
export class DropdownFromDataComponent extends FormControlParentComponent {
|
|
16
|
+
constructor(formBuilder, renderer) {
|
|
17
|
+
super(formBuilder, renderer);
|
|
18
|
+
this.formBuilder = formBuilder;
|
|
19
|
+
this.renderer = renderer;
|
|
20
|
+
// options for the dropdown have a null value at the beginning of the array
|
|
21
|
+
this.hasNullOption = false;
|
|
22
|
+
this.placeholder = '';
|
|
23
|
+
this.label = '';
|
|
24
|
+
this.required = false;
|
|
25
|
+
this.useEnumIndexAsValue = false;
|
|
26
|
+
// multiple selection
|
|
27
|
+
this.multiple = false;
|
|
28
|
+
this.keys = [];
|
|
29
|
+
this.values = [];
|
|
30
|
+
this.Object = Object;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Hook used to sync changes on set Label and Type
|
|
34
|
+
* @param changes
|
|
35
|
+
*/
|
|
36
|
+
ngOnChanges(changes) {
|
|
37
|
+
if (changes.optionsPlainArray) {
|
|
38
|
+
this.keys = this.optionsPlainArray;
|
|
39
|
+
this.values = this.optionsPlainArray;
|
|
40
|
+
}
|
|
41
|
+
this.setKeyValues();
|
|
42
|
+
}
|
|
43
|
+
ngOnInit() {
|
|
44
|
+
this.form = this.formBuilder.group({
|
|
45
|
+
dropdownData: [],
|
|
46
|
+
});
|
|
47
|
+
this.formInitialized = true;
|
|
48
|
+
this.form.valueChanges.subscribe((value) => {
|
|
49
|
+
this.internalValue = value.dropdownData;
|
|
50
|
+
this.onChange(value.dropdownData);
|
|
51
|
+
});
|
|
52
|
+
super.ngOnInit();
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* transofrms the data values to the correct format for be used by the template
|
|
56
|
+
* @param value
|
|
57
|
+
*/
|
|
58
|
+
setKeyValues() {
|
|
59
|
+
if (this.optionsObjArray && this.mapKey && this.mapValue) {
|
|
60
|
+
this.keys = this.optionsObjArray.map((obj) => obj[`${this.mapKey}`]);
|
|
61
|
+
this.values = this.optionsObjArray.map((obj) => obj[`${this.mapValue}`]);
|
|
62
|
+
}
|
|
63
|
+
else if (this.optionsObjArray && this.mapKey) {
|
|
64
|
+
this.keys = this.optionsObjArray.map((obj) => obj[`${this.mapKey}`]);
|
|
65
|
+
this.values = this.optionsObjArray.map((obj) => obj[`${this.mapKey}`]);
|
|
66
|
+
}
|
|
67
|
+
if (this.optionsEnum) {
|
|
68
|
+
this.keys = EnumValues.getNames(this.optionsEnum);
|
|
69
|
+
if (this.optionsPlainArray) {
|
|
70
|
+
this.values = this.optionsPlainArray;
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
const values = EnumValues.getValues(this.optionsEnum);
|
|
74
|
+
// var who defines if enum is componed just with keys or keyValues. E.g enum KeyEnum { VALUE1, VALUE2 } or enum KeyValueEnum { VALUE4 = 'V4', VALUE5 = 'V5' }
|
|
75
|
+
let keyValueEnum = false;
|
|
76
|
+
for (let i = 0; i < this.keys.length; i++) {
|
|
77
|
+
if (i !== values[i]) {
|
|
78
|
+
keyValueEnum = true;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
if (keyValueEnum || this.useEnumIndexAsValue) {
|
|
82
|
+
this.values = values;
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
this.values = EnumValues.getNames(this.optionsEnum);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
if (this.hasNullOption === true)
|
|
90
|
+
this.keys.unshift(null);
|
|
91
|
+
if (this.hasNullOption === true)
|
|
92
|
+
this.values.unshift(null);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* set the value of the dropdown based if translation is set
|
|
96
|
+
* @param key
|
|
97
|
+
*/
|
|
98
|
+
setDisplayKey(key) {
|
|
99
|
+
/*
|
|
100
|
+
if (this.translation && key !== null) {
|
|
101
|
+
if (this.translation.isPrefix) {
|
|
102
|
+
return this.translationService.instant(this.translation.path + '.' + key);
|
|
103
|
+
} else if (this.translation.useKey) {
|
|
104
|
+
return this.translationService.instant(this.translation.path, { key: key });
|
|
105
|
+
} else if (!this.translation?.useKey && !this.translation?.isPrefix) {
|
|
106
|
+
return this.translationService.instant(this.translation.path);
|
|
107
|
+
}
|
|
108
|
+
} else if (key == null) {
|
|
109
|
+
return '';
|
|
110
|
+
} else if (!this.translation) {
|
|
111
|
+
return key;
|
|
112
|
+
}
|
|
113
|
+
*/
|
|
114
|
+
return key;
|
|
115
|
+
}
|
|
116
|
+
valueChanged(value) {
|
|
117
|
+
this.form.patchValue({
|
|
118
|
+
dropdownData: value,
|
|
119
|
+
});
|
|
120
|
+
this.onSelectItemEmitter.emit(value);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
DropdownFromDataComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: DropdownFromDataComponent, deps: [{ token: i1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
124
|
+
DropdownFromDataComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: DropdownFromDataComponent, selector: "kms-dropdown-from-data", inputs: { optionsEnum: "optionsEnum", optionsPlainArray: "optionsPlainArray", optionsObjArray: "optionsObjArray", mapKey: "mapKey", mapValue: "mapValue", hasNullOption: "hasNullOption", translation: "translation", placeholder: "placeholder", label: "label", required: "required", useEnumIndexAsValue: "useEnumIndexAsValue", multiple: "multiple" }, providers: [
|
|
125
|
+
{
|
|
126
|
+
provide: NG_VALUE_ACCESSOR,
|
|
127
|
+
useExisting: forwardRef(() => DropdownFromDataComponent),
|
|
128
|
+
multi: true,
|
|
129
|
+
},
|
|
130
|
+
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"form\">\n <mat-form-field [attr.required]=\"required\" [floatLabel]=\"placeholder ? 'always' : 'auto'\">\n <mat-label>{{ label }}</mat-label>\n <mat-select\n placeholder=\"{{ placeholder }}\"\n disableOptionCentering\n [(value)]=\"value\"\n (selectionChange)=\"valueChanged($event?.value)\"\n #child\n [disabled]=\"disabled\"\n [multiple]=\"multiple\"\n >\n <mat-option *ngFor=\"let key of keys; let i = index\" [value]=\"values[i]\">\n <span>{{ setDisplayKey(key) }}</span>\n </mat-option>\n </mat-select>\n </mat-form-field>\n</form>\n", components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.MatLabel, selector: "mat-label" }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
131
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: DropdownFromDataComponent, decorators: [{
|
|
132
|
+
type: Component,
|
|
133
|
+
args: [{ selector: 'kms-dropdown-from-data', providers: [
|
|
134
|
+
{
|
|
135
|
+
provide: NG_VALUE_ACCESSOR,
|
|
136
|
+
useExisting: forwardRef(() => DropdownFromDataComponent),
|
|
137
|
+
multi: true,
|
|
138
|
+
},
|
|
139
|
+
], template: "<form [formGroup]=\"form\">\n <mat-form-field [attr.required]=\"required\" [floatLabel]=\"placeholder ? 'always' : 'auto'\">\n <mat-label>{{ label }}</mat-label>\n <mat-select\n placeholder=\"{{ placeholder }}\"\n disableOptionCentering\n [(value)]=\"value\"\n (selectionChange)=\"valueChanged($event?.value)\"\n #child\n [disabled]=\"disabled\"\n [multiple]=\"multiple\"\n >\n <mat-option *ngFor=\"let key of keys; let i = index\" [value]=\"values[i]\">\n <span>{{ setDisplayKey(key) }}</span>\n </mat-option>\n </mat-select>\n </mat-form-field>\n</form>\n" }]
|
|
140
|
+
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i0.Renderer2 }]; }, propDecorators: { optionsEnum: [{
|
|
141
|
+
type: Input
|
|
142
|
+
}], optionsPlainArray: [{
|
|
143
|
+
type: Input
|
|
144
|
+
}], optionsObjArray: [{
|
|
145
|
+
type: Input
|
|
146
|
+
}], mapKey: [{
|
|
147
|
+
type: Input
|
|
148
|
+
}], mapValue: [{
|
|
149
|
+
type: Input
|
|
150
|
+
}], hasNullOption: [{
|
|
151
|
+
type: Input
|
|
152
|
+
}], translation: [{
|
|
153
|
+
type: Input
|
|
154
|
+
}], placeholder: [{
|
|
155
|
+
type: Input
|
|
156
|
+
}], label: [{
|
|
157
|
+
type: Input
|
|
158
|
+
}], required: [{
|
|
159
|
+
type: Input
|
|
160
|
+
}], useEnumIndexAsValue: [{
|
|
161
|
+
type: Input
|
|
162
|
+
}], multiple: [{
|
|
163
|
+
type: Input
|
|
164
|
+
}] } });
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tZnJvbS1kYXRhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9kcm9wZG93bi1mcm9tLWRhdGEvZHJvcGRvd24tZnJvbS1kYXRhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9kcm9wZG93bi1mcm9tLWRhdGEvZHJvcGRvd24tZnJvbS1kYXRhLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssR0FLTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBR0wsaUJBQWlCLEdBQ2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hELDJDQUEyQztBQUMzQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7OztBQUU1Rjs7R0FFRztBQVlILE1BQU0sT0FBTyx5QkFDWCxTQUFRLDBCQUEwQjtJQWlDbEMsWUFBbUIsV0FBd0IsRUFBUyxRQUFtQjtRQUNyRSxLQUFLLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRFosZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBUyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBakJ2RSwyRUFBMkU7UUFDbEUsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFHdEIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDakIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBRXJDLHFCQUFxQjtRQUNaLGFBQVEsR0FB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LENBQUMsR0FBRyxFQUFFLDBCQUEwQixDQUFDOzRCQUN4RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjswSEFPUSxXQUFXO3NCQUFuQixLQUFLO2dCQUdHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFHRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFHRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFJlbmRlcmVyMixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgRm9ybUJ1aWxkZXIsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFbnVtVmFsdWVzIH0gZnJvbSAnZW51bS12YWx1ZXMvc3JjL2VudW1WYWx1ZXMnO1xuLy9pbXBvcnQgeyBFbnVtVmFsdWVzIH0gZnJvbSAnZW51bS12YWx1ZXMnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2xQYXJlbnRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9wYXJlbnQtY29tcG9uZW50cy9mb3JtLWNvbnRyb2wuY29tcG9uZW50JztcblxuLyoqXG4gKiBEcm9wZG93biBmcm9tIGRhdGEgY29tcG9uZW50IHtAbGluayBodHRwczovL2xlYXNlcGxhbi1kZXYucmVudG9mZmljZS5kZS9zdHlsZWd1aWRlI3VpLWVsZW1lbnRzfVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrbXMtZHJvcGRvd24tZnJvbS1kYXRhJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLWZyb20tZGF0YS5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRHJvcGRvd25Gcm9tRGF0YUNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEcm9wZG93bkZyb21EYXRhQ29tcG9uZW50XG4gIGV4dGVuZHMgRm9ybUNvbnRyb2xQYXJlbnRDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkNoYW5nZXNcbntcbiAgLy8gc3RydWN0dXJlZCBkYXRhIGFzIGEgZW51bSBzZXQuIENhbiBiZSB1c2VkIGluIGNvbWJpbmF0aW9uIHdpdGggJ29wdGlvbnNQbGFpbkFycmF5JyB0byBzZXQgZGlmZXJlbnQgdmFsdWVzIGJ5IGluZGV4XG4gIEBJbnB1dCgpIG9wdGlvbnNFbnVtOiBhbnk7XG5cbiAgLy8gc3RydWN0dXJlZCBkYXRhIGFzIGEgc2ltcGxlIGFycmF5IG9mIGVsZW1lbnRzXG4gIEBJbnB1dCgpIG9wdGlvbnNQbGFpbkFycmF5OiBhbnk7XG5cbiAgLy8gc3RydWN0dXJlZCBkYXRhIGFzIGFuIGFycmF5IG9mIG9iamVjdHMgdXNlZCBpbiBjb21iaW5hdGlvbiB3aXRoIHRoZSBpbnB1dCAnbWFwS2V5JyBhbmQgJ21hcFZhbHVlJ1xuICBASW5wdXQoKSBvcHRpb25zT2JqQXJyYXk6IGFueTtcbiAgLy8ga2V5IGlkZW50aWZpZXIgb2YgdGhlIG9iai4gSWYgbWFwVmFsdWUgZG9lc250IGV4aXN0LCBtYXBLZXkgaXMgYWxzbyB0aGUgdmFsdWVcbiAgQElucHV0KCkgbWFwS2V5PzogYW55O1xuICAvLyB2YWx1ZSBpZGVudGlmaWVyIG9mIHRoZSBvYmpcbiAgQElucHV0KCkgbWFwVmFsdWU/OiBhbnk7XG5cbiAgLy8gb3B0aW9ucyBmb3IgdGhlIGRyb3Bkb3duIGhhdmUgYSBudWxsIHZhbHVlIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGFycmF5XG4gIEBJbnB1dCgpIGhhc051bGxPcHRpb24gPSBmYWxzZTtcblxuICBASW5wdXQoKSB0cmFuc2xhdGlvbj86IElUcmFuc2xhdGlvbjtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnJztcbiAgQElucHV0KCkgbGFiZWwgPSAnJztcbiAgQElucHV0KCkgcmVxdWlyZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgdXNlRW51bUluZGV4QXNWYWx1ZSA9IGZhbHNlO1xuXG4gIC8vIG11bHRpcGxlIHNlbGVjdGlvblxuICBASW5wdXQoKSBtdWx0aXBsZSA9IGZhbHNlO1xuXG4gIHB1YmxpYyBrZXlzOiBhbnlbXSA9IFtdO1xuICBwdWJsaWMgdmFsdWVzOiBhbnlbXSA9IFtdO1xuXG4gIE9iamVjdCA9IE9iamVjdDtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLCBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xuICAgIHN1cGVyKGZvcm1CdWlsZGVyLCByZW5kZXJlcik7XG4gIH1cblxuICAvKipcbiAgICogSG9vayB1c2VkIHRvIHN5bmMgY2hhbmdlcyBvbiBzZXQgTGFiZWwgYW5kIFR5cGVcbiAgICogQHBhcmFtIGNoYW5nZXNcbiAgICovXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcy5vcHRpb25zUGxhaW5BcnJheSkge1xuICAgICAgdGhpcy5rZXlzID0gdGhpcy5vcHRpb25zUGxhaW5BcnJheTtcbiAgICAgIHRoaXMudmFsdWVzID0gdGhpcy5vcHRpb25zUGxhaW5BcnJheTtcbiAgICB9XG4gICAgdGhpcy5zZXRLZXlWYWx1ZXMoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgZHJvcGRvd25EYXRhOiBbXSxcbiAgICB9KTtcbiAgICB0aGlzLmZvcm1Jbml0aWFsaXplZCA9IHRydWU7XG5cbiAgICB0aGlzLmZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgIHRoaXMuaW50ZXJuYWxWYWx1ZSA9IHZhbHVlLmRyb3Bkb3duRGF0YTtcbiAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUuZHJvcGRvd25EYXRhKTtcbiAgICB9KTtcblxuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gIH1cblxuICAvKipcbiAgICogdHJhbnNvZnJtcyB0aGUgZGF0YSB2YWx1ZXMgdG8gdGhlIGNvcnJlY3QgZm9ybWF0IGZvciBiZSB1c2VkIGJ5IHRoZSB0ZW1wbGF0ZVxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG4gIHByaXZhdGUgc2V0S2V5VmFsdWVzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm9wdGlvbnNPYmpBcnJheSAmJiB0aGlzLm1hcEtleSAmJiB0aGlzLm1hcFZhbHVlKSB7XG4gICAgICB0aGlzLmtleXMgPSB0aGlzLm9wdGlvbnNPYmpBcnJheS5tYXAoKG9iajogYW55KSA9PiBvYmpbYCR7dGhpcy5tYXBLZXl9YF0pO1xuICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLm9wdGlvbnNPYmpBcnJheS5tYXAoXG4gICAgICAgIChvYmo6IGFueSkgPT4gb2JqW2Ake3RoaXMubWFwVmFsdWV9YF1cbiAgICAgICk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm9wdGlvbnNPYmpBcnJheSAmJiB0aGlzLm1hcEtleSkge1xuICAgICAgdGhpcy5rZXlzID0gdGhpcy5vcHRpb25zT2JqQXJyYXkubWFwKChvYmo6IGFueSkgPT4gb2JqW2Ake3RoaXMubWFwS2V5fWBdKTtcbiAgICAgIHRoaXMudmFsdWVzID0gdGhpcy5vcHRpb25zT2JqQXJyYXkubWFwKFxuICAgICAgICAob2JqOiBhbnkpID0+IG9ialtgJHt0aGlzLm1hcEtleX1gXVxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHRoaXMub3B0aW9uc0VudW0pIHtcbiAgICAgIHRoaXMua2V5cyA9IEVudW1WYWx1ZXMuZ2V0TmFtZXModGhpcy5vcHRpb25zRW51bSk7XG4gICAgICBpZiAodGhpcy5vcHRpb25zUGxhaW5BcnJheSkge1xuICAgICAgICB0aGlzLnZhbHVlcyA9IHRoaXMub3B0aW9uc1BsYWluQXJyYXk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB2YWx1ZXMgPSBFbnVtVmFsdWVzLmdldFZhbHVlcyh0aGlzLm9wdGlvbnNFbnVtKTtcblxuICAgICAgICAvLyB2YXIgd2hvIGRlZmluZXMgaWYgZW51bSBpcyBjb21wb25lZCBqdXN0IHdpdGgga2V5cyBvciBrZXlWYWx1ZXMuIEUuZyBlbnVtIEtleUVudW0geyBWQUxVRTEsIFZBTFVFMiB9IG9yIGVudW0gS2V5VmFsdWVFbnVtIHsgVkFMVUU0ID0gJ1Y0JywgVkFMVUU1ID0gJ1Y1JyB9XG4gICAgICAgIGxldCBrZXlWYWx1ZUVudW0gPSBmYWxzZTtcblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMua2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGlmIChpICE9PSB2YWx1ZXNbaV0pIHtcbiAgICAgICAgICAgIGtleVZhbHVlRW51bSA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChrZXlWYWx1ZUVudW0gfHwgdGhpcy51c2VFbnVtSW5kZXhBc1ZhbHVlKSB7XG4gICAgICAgICAgdGhpcy52YWx1ZXMgPSB2YWx1ZXM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy52YWx1ZXMgPSBFbnVtVmFsdWVzLmdldE5hbWVzKHRoaXMub3B0aW9uc0VudW0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGlmICh0aGlzLmhhc051bGxPcHRpb24gPT09IHRydWUpIHRoaXMua2V5cy51bnNoaWZ0KG51bGwpO1xuICAgIGlmICh0aGlzLmhhc051bGxPcHRpb24gPT09IHRydWUpIHRoaXMudmFsdWVzLnVuc2hpZnQobnVsbCk7XG4gIH1cblxuICAvKipcbiAgICogc2V0IHRoZSB2YWx1ZSBvZiB0aGUgZHJvcGRvd24gYmFzZWQgaWYgdHJhbnNsYXRpb24gaXMgc2V0XG4gICAqIEBwYXJhbSBrZXlcbiAgICovXG4gIHB1YmxpYyBzZXREaXNwbGF5S2V5KGtleTogYW55KSB7XG4gICAgLypcbiAgICAgICAgaWYgKHRoaXMudHJhbnNsYXRpb24gJiYga2V5ICE9PSBudWxsKSB7XG4gICAgICAgICAgICBpZiAodGhpcy50cmFuc2xhdGlvbi5pc1ByZWZpeCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KHRoaXMudHJhbnNsYXRpb24ucGF0aCArICcuJyArIGtleSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudHJhbnNsYXRpb24udXNlS2V5KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLmluc3RhbnQodGhpcy50cmFuc2xhdGlvbi5wYXRoLCB7IGtleToga2V5IH0pO1xuICAgICAgICAgICAgfSBlbHNlIGlmICghdGhpcy50cmFuc2xhdGlvbj8udXNlS2V5ICYmICF0aGlzLnRyYW5zbGF0aW9uPy5pc1ByZWZpeCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KHRoaXMudHJhbnNsYXRpb24ucGF0aCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfSBlbHNlIGlmICghdGhpcy50cmFuc2xhdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIGtleTtcbiAgICAgICAgfVxuICAgICAgICAqL1xuICAgIHJldHVybiBrZXk7XG4gIH1cblxuICB2YWx1ZUNoYW5nZWQodmFsdWU6IGFueSkge1xuICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgIGRyb3Bkb3duRGF0YTogdmFsdWUsXG4gICAgfSk7XG4gICAgdGhpcy5vblNlbGVjdEl0ZW1FbWl0dGVyLmVtaXQodmFsdWUpO1xuICB9XG59XG5cbi8qKlxuICogSW50ZXJmYWNlIHRoYXQgZGVmaW5lcyB0aGUgdHJhbnNsYXRpb24gb2JqZWN0IGluIHRlbXBsYXRlXG4gKi9cbmludGVyZmFjZSBJVHJhbnNsYXRpb24ge1xuICBwYXRoOiBzdHJpbmc7XG4gIHVzZUtleT86IGJvb2xlYW47XG4gIGlzUHJlZml4PzogYm9vbGVhbjtcbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgIDxtYXQtZm9ybS1maWVsZCBbYXR0ci5yZXF1aXJlZF09XCJyZXF1aXJlZFwiIFtmbG9hdExhYmVsXT1cInBsYWNlaG9sZGVyID8gJ2Fsd2F5cycgOiAnYXV0bydcIj5cbiAgICAgICAgPG1hdC1sYWJlbD57eyBsYWJlbCB9fTwvbWF0LWxhYmVsPlxuICAgICAgICA8bWF0LXNlbGVjdFxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyBwbGFjZWhvbGRlciB9fVwiXG4gICAgICAgICAgICBkaXNhYmxlT3B0aW9uQ2VudGVyaW5nXG4gICAgICAgICAgICBbKHZhbHVlKV09XCJ2YWx1ZVwiXG4gICAgICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cInZhbHVlQ2hhbmdlZCgkZXZlbnQ/LnZhbHVlKVwiXG4gICAgICAgICAgICAjY2hpbGRcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGtleSBvZiBrZXlzOyBsZXQgaSA9IGluZGV4XCIgW3ZhbHVlXT1cInZhbHVlc1tpXVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuPnt7IHNldERpc3BsYXlLZXkoa2V5KSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG48L2Zvcm0+XG4iXX0=
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Component, forwardRef, Input } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { FormControlParentComponent } from './../../parent-components/form-control.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/forms";
|
|
6
|
+
import * as i2 from "@angular/material/radio";
|
|
7
|
+
import * as i3 from "@angular/common";
|
|
8
|
+
import * as i4 from "@ngx-translate/core";
|
|
9
|
+
export class EnumRadiogroupComponent extends FormControlParentComponent {
|
|
10
|
+
constructor(formBuilder, renderer) {
|
|
11
|
+
super(formBuilder, renderer);
|
|
12
|
+
this.formBuilder = formBuilder;
|
|
13
|
+
this.renderer = renderer;
|
|
14
|
+
this.translationPrefix = '';
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
this.optionValues = Object.keys(this.optionsEnum).filter(x => !(parseInt(x) >= 0));
|
|
18
|
+
this.form = this.formBuilder.group({
|
|
19
|
+
enumData: [],
|
|
20
|
+
});
|
|
21
|
+
this.formInitialized = true;
|
|
22
|
+
this.form.valueChanges.subscribe((value) => {
|
|
23
|
+
this.internalValue = value.enumData;
|
|
24
|
+
this.onChange(value.enumData);
|
|
25
|
+
});
|
|
26
|
+
super.ngOnInit();
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
EnumRadiogroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EnumRadiogroupComponent, deps: [{ token: i1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
30
|
+
EnumRadiogroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: EnumRadiogroupComponent, selector: "kms-enum-radiogroup", inputs: { header: "header", optionsEnum: "optionsEnum", translationPrefix: "translationPrefix" }, providers: [
|
|
31
|
+
{
|
|
32
|
+
provide: NG_VALUE_ACCESSOR,
|
|
33
|
+
useExisting: forwardRef(() => EnumRadiogroupComponent),
|
|
34
|
+
multi: true,
|
|
35
|
+
},
|
|
36
|
+
], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\">\n <div>{{ header }}</div>\n <mat-radio-group [formControl]=\"form.controls['enumData']\" [disabled]=\"disabled\" #child>\n <mat-radio-button [value]=\"choice\" [checked]=\"value === choice\" *ngFor=\"let choice of optionValues\">{{ translationPrefix + '.' + choice | translate }}</mat-radio-button>\n </mat-radio-group>\n</form>", components: [{ type: i2.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }], directives: [{ type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i4.TranslatePipe } });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EnumRadiogroupComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: 'kms-enum-radiogroup', providers: [
|
|
40
|
+
{
|
|
41
|
+
provide: NG_VALUE_ACCESSOR,
|
|
42
|
+
useExisting: forwardRef(() => EnumRadiogroupComponent),
|
|
43
|
+
multi: true,
|
|
44
|
+
},
|
|
45
|
+
], template: "<form [formGroup]=\"form\">\n <div>{{ header }}</div>\n <mat-radio-group [formControl]=\"form.controls['enumData']\" [disabled]=\"disabled\" #child>\n <mat-radio-button [value]=\"choice\" [checked]=\"value === choice\" *ngFor=\"let choice of optionValues\">{{ translationPrefix + '.' + choice | translate }}</mat-radio-button>\n </mat-radio-group>\n</form>" }]
|
|
46
|
+
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i0.Renderer2 }]; }, propDecorators: { header: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], optionsEnum: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], translationPrefix: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}] } });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS1yYWRpb2dyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9lbnVtLXJhZGlvZ3JvdXAvZW51bS1yYWRpb2dyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9lbnVtLXJhZGlvZ3JvdXAvZW51bS1yYWRpb2dyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFxQyxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3RGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7Ozs7QUFhOUYsTUFBTSxPQUFPLHVCQUF3QixTQUFRLDBCQUEwQjtJQU9uRSxZQUFtQixXQUF3QixFQUFTLFFBQW1CO1FBQ25FLEtBQUssQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFEZCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFTLGFBQVEsR0FBUixRQUFRLENBQVc7UUFKOUQsc0JBQWlCLEdBQUcsRUFBRSxDQUFDO0lBTWhDLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkYsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUMvQixRQUFRLEVBQUUsRUFBRTtTQUNmLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBRTVCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUNwQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztRQUVILEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNyQixDQUFDOztvSEF4QlEsdUJBQXVCO3dHQUF2Qix1QkFBdUIsZ0pBUnJCO1FBQ1A7WUFDSSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7WUFDdEQsS0FBSyxFQUFFLElBQUk7U0FDZDtLQUNKLGlEQ2ZMLHNYQUtPOzJGRFlNLHVCQUF1QjtrQkFYbkMsU0FBUzsrQkFDSSxxQkFBcUIsYUFFcEI7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsd0JBQXdCLENBQUM7NEJBQ3RELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKOzBIQUdRLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uSW5pdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybUJ1aWxkZXIsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTnVsbEFibGUgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuXG5pbXBvcnQgeyBGb3JtQ29udHJvbFBhcmVudENvbXBvbmVudCB9IGZyb20gJy4vLi4vLi4vcGFyZW50LWNvbXBvbmVudHMvZm9ybS1jb250cm9sLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAna21zLWVudW0tcmFkaW9ncm91cCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VudW0tcmFkaW9ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRW51bVJhZGlvZ3JvdXBDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRW51bVJhZGlvZ3JvdXBDb21wb25lbnQgZXh0ZW5kcyBGb3JtQ29udHJvbFBhcmVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICAgIEBJbnB1dCgpIGhlYWRlcjogTnVsbEFibGU8U3RyaW5nPjtcbiAgICBASW5wdXQoKSBvcHRpb25zRW51bTogYW55O1xuICAgIEBJbnB1dCgpIHRyYW5zbGF0aW9uUHJlZml4ID0gJyc7XG5cbiAgICBwdWJsaWMgb3B0aW9uVmFsdWVzOiBhbnk7XG4gICAgXG4gICAgY29uc3RydWN0b3IocHVibGljIGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlciwgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcbiAgICAgICAgc3VwZXIoZm9ybUJ1aWxkZXIsIHJlbmRlcmVyKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpe1xuICAgICAgICB0aGlzLm9wdGlvblZhbHVlcyA9IE9iamVjdC5rZXlzKHRoaXMub3B0aW9uc0VudW0pLmZpbHRlcih4ID0+ICEocGFyc2VJbnQoeCkgPj0gMCkpO1xuICAgICAgICB0aGlzLmZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgICAgICAgIGVudW1EYXRhOiBbXSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZm9ybUluaXRpYWxpemVkID0gdHJ1ZTtcblxuICAgICAgICB0aGlzLmZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaW50ZXJuYWxWYWx1ZSA9IHZhbHVlLmVudW1EYXRhO1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZS5lbnVtRGF0YSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgPGRpdj57eyBoZWFkZXIgfX08L2Rpdj5cbiAgICA8bWF0LXJhZGlvLWdyb3VwIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzWydlbnVtRGF0YSddXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgI2NoaWxkPlxuICAgICAgICA8bWF0LXJhZGlvLWJ1dHRvbiBbdmFsdWVdPVwiY2hvaWNlXCIgW2NoZWNrZWRdPVwidmFsdWUgPT09IGNob2ljZVwiICpuZ0Zvcj1cImxldCBjaG9pY2Ugb2Ygb3B0aW9uVmFsdWVzXCI+e3sgdHJhbnNsYXRpb25QcmVmaXggKyAnLicgKyBjaG9pY2UgfCB0cmFuc2xhdGUgfX08L21hdC1yYWRpby1idXR0b24+XG4gICAgPC9tYXQtcmFkaW8tZ3JvdXA+XG48L2Zvcm0+Il19
|