@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
|
@@ -1,237 +0,0 @@
|
|
|
1
|
-
import { Component, Input, forwardRef, ViewChild, EventEmitter, Output } from '@angular/core';
|
|
2
|
-
import { FormControl, NG_VALIDATORS, NG_VALUE_ACCESSOR, } from '@angular/forms';
|
|
3
|
-
//import { TranslateService } from '@ngx-translate/core';
|
|
4
|
-
import { IconSize } from '../../models/iconSize.enum';
|
|
5
|
-
import { isValue } from '../../models/is-value.function';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/forms";
|
|
8
|
-
import * as i2 from "../icon/icon.component";
|
|
9
|
-
import * as i3 from "@angular/material/button";
|
|
10
|
-
import * as i4 from "@angular/common";
|
|
11
|
-
import * as i5 from "@ngx-translate/core";
|
|
12
|
-
// Max size in bytes of uploaded image
|
|
13
|
-
const MAX_SIZE_BYTES = 2097152;
|
|
14
|
-
export class FileInputComponent {
|
|
15
|
-
/**
|
|
16
|
-
* Constructor
|
|
17
|
-
* @param formBuilder
|
|
18
|
-
* @param appRef
|
|
19
|
-
* @param cd
|
|
20
|
-
* @param translateService
|
|
21
|
-
* @param renderer
|
|
22
|
-
*/
|
|
23
|
-
constructor(formBuilder, appRef, cd,
|
|
24
|
-
//private translateService: TranslateService,
|
|
25
|
-
renderer) {
|
|
26
|
-
this.formBuilder = formBuilder;
|
|
27
|
-
this.appRef = appRef;
|
|
28
|
-
this.cd = cd;
|
|
29
|
-
this.renderer = renderer;
|
|
30
|
-
this.label = '';
|
|
31
|
-
this.previewImage = true;
|
|
32
|
-
this.allowRemove = true;
|
|
33
|
-
this.previewImageText = '';
|
|
34
|
-
this.maxSizeBytes = MAX_SIZE_BYTES;
|
|
35
|
-
this.resizePixels = 0;
|
|
36
|
-
this.acceptedFileMimetypes = 'image/jpeg, image/jpg, image/png';
|
|
37
|
-
this.form = this.formBuilder.group({
|
|
38
|
-
ImageIdent: new FormControl(''),
|
|
39
|
-
ImageLink: new FormControl(''),
|
|
40
|
-
Filename: new FormControl(''),
|
|
41
|
-
ImageAsDataURL: new FormControl(''),
|
|
42
|
-
Text: new FormControl(''),
|
|
43
|
-
});
|
|
44
|
-
this.subscriptions = [];
|
|
45
|
-
this.newImageLoading = false;
|
|
46
|
-
this.IconSize = IconSize;
|
|
47
|
-
this.formDataChanged = new EventEmitter();
|
|
48
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
49
|
-
this.onChange = () => { };
|
|
50
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
51
|
-
this.onTouch = () => { };
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Click on button triggers file-input to open OS file dialog
|
|
55
|
-
*/
|
|
56
|
-
selectImageOverlay() {
|
|
57
|
-
this.fileInput.nativeElement.click();
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Function to manage the input image
|
|
61
|
-
* Returns an error if the file exceeds maximum wanted filesize (Mb).
|
|
62
|
-
* @param ev
|
|
63
|
-
* @returns
|
|
64
|
-
*/
|
|
65
|
-
selectImage(ev) {
|
|
66
|
-
if (ev.target.files && ev.target.files[0]) {
|
|
67
|
-
const file = ev.target.files[0];
|
|
68
|
-
if (file.size > this.maxSizeBytes) {
|
|
69
|
-
this.clearInputValue(ev);
|
|
70
|
-
//alert(this.translateService.instant('errors.fileTooBig'));
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
this.newImageLoading = true;
|
|
75
|
-
if (this.resizePixels > 0) {
|
|
76
|
-
const logoUrl = URL.createObjectURL(file);
|
|
77
|
-
const imgEl = document.createElement('img');
|
|
78
|
-
imgEl.addEventListener('load', () => {
|
|
79
|
-
const resizedLogo = this.resizeImage(imgEl, this.resizePixels);
|
|
80
|
-
const newFile = this.generateModel(file.name, resizedLogo, this.value.ImageIdent, this.value.ImageLink, this.value.Text);
|
|
81
|
-
this.value = newFile;
|
|
82
|
-
this.newImageLoading = false;
|
|
83
|
-
this.cd.markForCheck();
|
|
84
|
-
});
|
|
85
|
-
imgEl.src = logoUrl;
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
const reader = new FileReader();
|
|
89
|
-
reader.readAsDataURL(file);
|
|
90
|
-
reader.onload = (e) => {
|
|
91
|
-
const newFile = this.generateModel(file.name, e.target.result, this.value.ImageIdent, this.value.ImageLink, this.value.Text);
|
|
92
|
-
this.value = newFile;
|
|
93
|
-
this.newImageLoading = false;
|
|
94
|
-
this.cd.markForCheck();
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
console.warn("No file selected");
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Resize an image
|
|
105
|
-
* @param imgEl
|
|
106
|
-
* @param wantedWidth as number
|
|
107
|
-
* @returns string
|
|
108
|
-
*/
|
|
109
|
-
resizeImage(imgEl, wantedWidth) {
|
|
110
|
-
const canvas = document.createElement('canvas');
|
|
111
|
-
const ctx = canvas.getContext('2d');
|
|
112
|
-
const aspect = imgEl.width / imgEl.height;
|
|
113
|
-
canvas.width = wantedWidth;
|
|
114
|
-
canvas.height = wantedWidth / aspect;
|
|
115
|
-
if (isValue(ctx))
|
|
116
|
-
ctx.drawImage(imgEl, 0, 0, canvas.width, canvas.height);
|
|
117
|
-
return canvas.toDataURL();
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Generate default object
|
|
121
|
-
* @param name as string
|
|
122
|
-
* @param content as string
|
|
123
|
-
* @returns AttachedFileDTO
|
|
124
|
-
*/
|
|
125
|
-
generateModel(name, content, ident, imageLink, text) {
|
|
126
|
-
return {
|
|
127
|
-
ImageIdent: ident ? ident : '',
|
|
128
|
-
Filename: name ? name : '',
|
|
129
|
-
ImageAsDataURL: content ? content : '',
|
|
130
|
-
ImageLink: imageLink ? imageLink : '',
|
|
131
|
-
Text: text ? text : ''
|
|
132
|
-
};
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Remove image
|
|
136
|
-
*/
|
|
137
|
-
removeFromList() {
|
|
138
|
-
this.value = this.generateModel('', '', '', '');
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* get value
|
|
142
|
-
*/
|
|
143
|
-
get value() {
|
|
144
|
-
return this.form.value;
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* set value
|
|
148
|
-
*/
|
|
149
|
-
set value(value) {
|
|
150
|
-
this.form.setValue(value);
|
|
151
|
-
this.onChange(value);
|
|
152
|
-
this.formDataChanged.emit(this.form);
|
|
153
|
-
}
|
|
154
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
155
|
-
ngOnInit() { }
|
|
156
|
-
ngOnDestroy() {
|
|
157
|
-
this.subscriptions.forEach(s => s.unsubscribe());
|
|
158
|
-
}
|
|
159
|
-
registerOnChange(fn) {
|
|
160
|
-
this.onChange = fn;
|
|
161
|
-
}
|
|
162
|
-
registerOnTouched(fn) {
|
|
163
|
-
this.onTouch = fn;
|
|
164
|
-
}
|
|
165
|
-
writeValue(value) {
|
|
166
|
-
if (value) {
|
|
167
|
-
this.value = value;
|
|
168
|
-
}
|
|
169
|
-
if (value === null) {
|
|
170
|
-
this.form.reset();
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
// eslint-disable-next-line @typescript-eslint/adjacent-overload-signatures
|
|
174
|
-
validate(_) {
|
|
175
|
-
return this.form.valid ? null : { styles: { valid: false } };
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* OnClick event listener of input#fileInput to clear his input value
|
|
179
|
-
*/
|
|
180
|
-
clearInputValue(ev) {
|
|
181
|
-
const element = ev.target;
|
|
182
|
-
element.value = '';
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
FileInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FileInputComponent, deps: [{ token: i1.FormBuilder }, { token: i0.ApplicationRef }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
186
|
-
FileInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FileInputComponent, selector: "kms-file-input", inputs: { label: "label", previewImage: "previewImage", allowRemove: "allowRemove", previewImageText: "previewImageText", maxSizeBytes: "maxSizeBytes", resizePixels: "resizePixels", acceptedFileMimetypes: "acceptedFileMimetypes" }, outputs: { formDataChanged: "formDataChanged" }, providers: [
|
|
187
|
-
{
|
|
188
|
-
provide: NG_VALUE_ACCESSOR,
|
|
189
|
-
useExisting: forwardRef(() => FileInputComponent),
|
|
190
|
-
multi: true,
|
|
191
|
-
},
|
|
192
|
-
{
|
|
193
|
-
provide: NG_VALIDATORS,
|
|
194
|
-
useExisting: forwardRef(() => FileInputComponent),
|
|
195
|
-
multi: true,
|
|
196
|
-
},
|
|
197
|
-
], viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<form [formGroup]=\"form\" (change)=\"newImageLoading=true\" class=\"fileInput\"> \r\n\r\n <div *ngIf=\"form.value.Filename && previewImage\">\r\n <div *ngIf=\"newImageLoading\">\r\n {{ 'file-input.loading' | translate }}\r\n </div>\r\n <div *ngIf=\"!newImageLoading\">\r\n <div class=\"\">\r\n <div class=\"\">\r\n <img *ngIf=\"form.value.ImageLink && form.value.ImageLink !== '' && !(form.value.ImageAsDataURL && form.value.ImageAsDataURL !== '')\" [src]=\"form.value.ImageAsDataURL\" [src]=\"form.value.ImageLink\" style=\"height: 40px; width: fit-content;\" />\r\n <img *ngIf=\"form.value.ImageAsDataURL && form.value.ImageAsDataURL !== ''\" [src]=\"form.value.ImageAsDataURL\" style=\"height: 40px; width: fit-content;\" />\r\n </div>\r\n <div class=\"\">{{form.value.Filename}}</div>\r\n <div class=\"\">\r\n <div (click)=\"removeFromList()\" *ngIf=\"allowRemove\">\r\n <kms-icon icon=\"trash\" [iconSize]=\"IconSize.TINY\" iconClass=\"color-black\"></kms-icon> \r\n {{ 'file-input.remove' }}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!previewImage\">\r\n <div class=\"\">{{form.value.Filename}}</div>\r\n </div>\r\n\r\n <button (click)=\"selectImageOverlay()\" class=\"button-primary-font-color\" mat-stroked-button>\r\n <span>{{ label }}</span>\r\n </button>\r\n <input\r\n type=\"file\"\r\n [accept]=\"acceptedFileMimetypes\"\r\n style=\"display: none\"\r\n #fileInput\r\n (click)=\"clearInputValue($event)\"\r\n (change)=\"selectImage($event)\"\r\n />\r\n\r\n <input type=\"hidden\" [formControl]=\"form.controls['ImageIdent']\" />\r\n <input type=\"hidden\" [formControl]=\"form.controls['ImageLink']\" />\r\n <input type=\"hidden\" [formControl]=\"form.controls['Filename']\" />\r\n <input type=\"hidden\" [formControl]=\"form.controls['ImageAsDataURL']\" />\r\n <input type=\"hidden\" [formControl]=\"form.controls['Text']\" />\r\n\r\n</form>", styles: [""], components: [{ type: i2.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }, { type: i3.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"] }], 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: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "translate": i5.TranslatePipe } });
|
|
198
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FileInputComponent, decorators: [{
|
|
199
|
-
type: Component,
|
|
200
|
-
args: [{
|
|
201
|
-
selector: 'kms-file-input',
|
|
202
|
-
templateUrl: './file-input.component.html',
|
|
203
|
-
styleUrls: ['./file-input.component.scss'],
|
|
204
|
-
providers: [
|
|
205
|
-
{
|
|
206
|
-
provide: NG_VALUE_ACCESSOR,
|
|
207
|
-
useExisting: forwardRef(() => FileInputComponent),
|
|
208
|
-
multi: true,
|
|
209
|
-
},
|
|
210
|
-
{
|
|
211
|
-
provide: NG_VALIDATORS,
|
|
212
|
-
useExisting: forwardRef(() => FileInputComponent),
|
|
213
|
-
multi: true,
|
|
214
|
-
},
|
|
215
|
-
],
|
|
216
|
-
}]
|
|
217
|
-
}], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i0.ApplicationRef }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { fileInput: [{
|
|
218
|
-
type: ViewChild,
|
|
219
|
-
args: ['fileInput']
|
|
220
|
-
}], label: [{
|
|
221
|
-
type: Input
|
|
222
|
-
}], previewImage: [{
|
|
223
|
-
type: Input
|
|
224
|
-
}], allowRemove: [{
|
|
225
|
-
type: Input
|
|
226
|
-
}], previewImageText: [{
|
|
227
|
-
type: Input
|
|
228
|
-
}], maxSizeBytes: [{
|
|
229
|
-
type: Input
|
|
230
|
-
}], resizePixels: [{
|
|
231
|
-
type: Input
|
|
232
|
-
}], acceptedFileMimetypes: [{
|
|
233
|
-
type: Input
|
|
234
|
-
}], formDataChanged: [{
|
|
235
|
-
type: Output
|
|
236
|
-
}] } });
|
|
237
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvdWkvZmlsZS1pbnB1dC9maWxlLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9maWxlLWlucHV0L2ZpbGUtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFVLFNBQVMsRUFBYSxZQUFZLEVBQUUsTUFBTSxFQUFxQyxNQUFNLGVBQWUsQ0FBQztBQUVwSixPQUFPLEVBR0gsV0FBVyxFQUVYLGFBQWEsRUFDYixpQkFBaUIsR0FDcEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4Qix5REFBeUQ7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXRELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7OztBQUV6RCxzQ0FBc0M7QUFDdEMsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDO0FBb0IvQixNQUFNLE9BQU8sa0JBQWtCO0lBNEIzQjs7Ozs7OztPQU9HO0lBQ0gsWUFDVyxXQUF3QixFQUN4QixNQUFzQixFQUN0QixFQUFxQjtJQUM1Qiw2Q0FBNkM7SUFDdEMsUUFBbUI7UUFKbkIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFFckIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQXJDckIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVYLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLGdCQUFXLEdBQUcsSUFB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bkNMLGdzRUE0Q087NEZETk0sa0JBQWtCO2tCQWxCOUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixXQUFXLEVBQUUsNkJBQTZCO29CQUMxQyxTQUFTLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDMUMsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG1CQUFtQixDQUFDOzRCQUNqRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDt3QkFDRDs0QkFDSSxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKO2lCQUNKO3VMQUlrQyxTQUFTO3NCQUF2QyxTQUFTO3VCQUFDLFdBQVc7Z0JBRWIsS0FBSztzQkFBYixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFlSSxlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgZm9yd2FyZFJlZiwgT25Jbml0LCBWaWV3Q2hpbGQsIFJlbmRlcmVyMiwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIEFwcGxpY2F0aW9uUmVmLCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHtcclxuICAgIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxyXG4gICAgRm9ybUJ1aWxkZXIsXHJcbiAgICBGb3JtQ29udHJvbCxcclxuICAgIEZvcm1Hcm91cCxcclxuICAgIE5HX1ZBTElEQVRPUlMsXHJcbiAgICBOR19WQUxVRV9BQ0NFU1NPUixcclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuLy9pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEljb25TaXplIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ljb25TaXplLmVudW0nO1xyXG5pbXBvcnQgeyBBdHRhY2hlZEZpbGVEVE8gfSBmcm9tICcuLi8uLi9tb2RlbHMvdHlwZXMvYXR0YWNoZWQtZmlsZS1kdG8ubW9kZWwnO1xyXG5pbXBvcnQgeyBpc1ZhbHVlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2lzLXZhbHVlLmZ1bmN0aW9uJztcclxuXHJcbi8vIE1heCBzaXplIGluIGJ5dGVzIG9mIHVwbG9hZGVkIGltYWdlXHJcbmNvbnN0IE1BWF9TSVpFX0JZVEVTID0gMjA5NzE1MjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdrbXMtZmlsZS1pbnB1dCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZmlsZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9maWxlLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGaWxlSW5wdXRDb21wb25lbnQpLFxyXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcclxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRmlsZUlucHV0Q29tcG9uZW50KSxcclxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgIF0sXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgRmlsZUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XHJcbiAgICBcclxuICAgIEBWaWV3Q2hpbGQoJ2ZpbGVJbnB1dCcpIHB1YmxpYyBmaWxlSW5wdXQ6IGFueTtcclxuXHJcbiAgICBASW5wdXQoKSBsYWJlbCA9ICcnO1xyXG4gICAgXHJcbiAgICBASW5wdXQoKSBwcmV2aWV3SW1hZ2UgPSB0cnVlOyBcclxuICAgIEBJbnB1dCgpIGFsbG93UmVtb3ZlID0gdHJ1ZTsgXHJcbiAgICBASW5wdXQoKSBwcmV2aWV3SW1hZ2VUZXh0ID0gJyc7IFxyXG4gICAgQElucHV0KCkgbWF4U2l6ZUJ5dGVzID0gTUFYX1NJWkVfQllURVM7IFxyXG4gICAgQElucHV0KCkgcmVzaXplUGl4ZWxzID0gMDsgXHJcbiAgICBASW5wdXQoKSBhY2NlcHRlZEZpbGVNaW1ldHlwZXMgPSAnaW1hZ2UvanBlZywgaW1hZ2UvanBnLCBpbWFnZS9wbmcnOyBcclxuXHJcbiAgICBmb3JtPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcclxuICAgICAgICBJbWFnZUlkZW50OiBuZXcgRm9ybUNvbnRyb2woJycpLFxyXG4gICAgICAgIEltYWdlTGluazogbmV3IEZvcm1Db250cm9sKCcnKSxcclxuICAgICAgICBGaWxlbmFtZTogbmV3IEZvcm1Db250cm9sKCcnKSxcclxuICAgICAgICBJbWFnZUFzRGF0YVVSTDogbmV3IEZvcm1Db250cm9sKCcnKSxcclxuICAgICAgICBUZXh0OiBuZXcgRm9ybUNvbnRyb2woJycpLFxyXG4gICAgfSk7XHJcblxyXG4gICAgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuICAgIG5ld0ltYWdlTG9hZGluZyA9IGZhbHNlXHJcblxyXG4gICAgSWNvblNpemUgPSBJY29uU2l6ZTtcclxuXHJcbiAgICBAT3V0cHV0KCkgZm9ybURhdGFDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Rm9ybUdyb3VwPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnN0cnVjdG9yXHJcbiAgICAgKiBAcGFyYW0gZm9ybUJ1aWxkZXIgXHJcbiAgICAgKiBAcGFyYW0gYXBwUmVmIFxyXG4gICAgICogQHBhcmFtIGNkIFxyXG4gICAgICogQHBhcmFtIHRyYW5zbGF0ZVNlcnZpY2UgXHJcbiAgICAgKiBAcGFyYW0gcmVuZGVyZXIgXHJcbiAgICAgKi9cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHB1YmxpYyBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIsIFxyXG4gICAgICAgIHB1YmxpYyBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmLFxyXG4gICAgICAgIHB1YmxpYyBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgLy9wcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjJcclxuICAgICkge1xyXG4gICAgICAgIFxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogIENsaWNrIG9uIGJ1dHRvbiB0cmlnZ2VycyBmaWxlLWlucHV0IHRvIG9wZW4gT1MgZmlsZSBkaWFsb2dcclxuICAgICAqL1xyXG4gICAgc2VsZWN0SW1hZ2VPdmVybGF5KCkge1xyXG4gICAgICAgIHRoaXMuZmlsZUlucHV0Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEZ1bmN0aW9uIHRvIG1hbmFnZSB0aGUgaW5wdXQgaW1hZ2VcclxuICAgICAqIFJldHVybnMgYW4gZXJyb3IgaWYgdGhlIGZpbGUgZXhjZWVkcyBtYXhpbXVtIHdhbnRlZCBmaWxlc2l6ZSAoTWIpLiBcclxuICAgICAqIEBwYXJhbSBldlxyXG4gICAgICogQHJldHVybnNcclxuICAgICAqL1xyXG4gICAgc2VsZWN0SW1hZ2UoZXY6IGFueSkge1xyXG4gICAgICAgIGlmIChldi50YXJnZXQuZmlsZXMgJiYgZXYudGFyZ2V0LmZpbGVzWzBdKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpbGU6RmlsZSA9IGV2LnRhcmdldC5maWxlc1swXTtcclxuXHJcbiAgICAgICAgICAgIGlmIChmaWxlLnNpemUgPiB0aGlzLm1heFNpemVCeXRlcykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhcklucHV0VmFsdWUoZXYpO1xyXG4gICAgICAgICAgICAgICAgLy9hbGVydCh0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnZXJyb3JzLmZpbGVUb29CaWcnKSk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm5ld0ltYWdlTG9hZGluZyA9IHRydWU7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXNpemVQaXhlbHMgPiAwKXtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBsb2dvVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlKTtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbWdFbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2ltZycpO1xyXG4gICAgICAgICAgICAgICAgICAgIGltZ0VsLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc2l6ZWRMb2dvID0gdGhpcy5yZXNpemVJbWFnZShpbWdFbCwgdGhpcy5yZXNpemVQaXhlbHMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdGaWxlID0gdGhpcy5nZW5lcmF0ZU1vZGVsKGZpbGUubmFtZSwgcmVzaXplZExvZ28sIHRoaXMudmFsdWUuSW1hZ2VJZGVudCwgdGhpcy52YWx1ZS5JbWFnZUxpbmssIHRoaXMudmFsdWUuVGV4dCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWU9bmV3RmlsZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5uZXdJbWFnZUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICBpbWdFbC5zcmMgPSBsb2dvVXJsO1xyXG4gICAgICAgICAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgICAgICAgICAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuICAgICAgICAgICAgICAgICAgICByZWFkZXIub25sb2FkID0gKGU6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdGaWxlID0gdGhpcy5nZW5lcmF0ZU1vZGVsKGZpbGUubmFtZSwgZS50YXJnZXQucmVzdWx0LCB0aGlzLnZhbHVlLkltYWdlSWRlbnQsIHRoaXMudmFsdWUuSW1hZ2VMaW5rLCB0aGlzLnZhbHVlLlRleHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlPW5ld0ZpbGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubmV3SW1hZ2VMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgIGNvbnNvbGUud2FybihcIk5vIGZpbGUgc2VsZWN0ZWRcIik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmVzaXplIGFuIGltYWdlXHJcbiAgICAgKiBAcGFyYW0gaW1nRWxcclxuICAgICAqIEBwYXJhbSB3YW50ZWRXaWR0aCBhcyBudW1iZXJcclxuICAgICAqIEByZXR1cm5zIHN0cmluZyBcclxuICAgICAqL1xyXG4gICAgIHByaXZhdGUgcmVzaXplSW1hZ2UoaW1nRWw6IGFueSwgd2FudGVkV2lkdGg6IG51bWJlcikge1xyXG4gICAgICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xyXG4gICAgICAgIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpO1xyXG4gICAgICAgIGNvbnN0IGFzcGVjdCA9IGltZ0VsLndpZHRoIC8gaW1nRWwuaGVpZ2h0O1xyXG4gICAgICAgIGNhbnZhcy53aWR0aCA9IHdhbnRlZFdpZHRoO1xyXG4gICAgICAgIGNhbnZhcy5oZWlnaHQgPSB3YW50ZWRXaWR0aCAvIGFzcGVjdDtcclxuICAgICAgICBpZiAoaXNWYWx1ZShjdHgpKSBjdHguZHJhd0ltYWdlKGltZ0VsLCAwLCAwLCBjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHQpO1xyXG4gICAgICAgIHJldHVybiBjYW52YXMudG9EYXRhVVJMKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZW5lcmF0ZSBkZWZhdWx0IG9iamVjdFxyXG4gICAgICogQHBhcmFtIG5hbWUgYXMgc3RyaW5nXHJcbiAgICAgKiBAcGFyYW0gY29udGVudCBhcyBzdHJpbmdcclxuICAgICAqIEByZXR1cm5zIEF0dGFjaGVkRmlsZURUT1xyXG4gICAgICovXHJcbiAgICBnZW5lcmF0ZU1vZGVsKG5hbWU/OiBzdHJpbmcsIGNvbnRlbnQ/OiBzdHJpbmcsIGlkZW50Pzogc3RyaW5nLCBpbWFnZUxpbms/OiBzdHJpbmcsIHRleHQ/OiBzdHJpbmcpe1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIEltYWdlSWRlbnQ6IGlkZW50ID8gaWRlbnQgOiAnJyxcclxuICAgICAgICAgICAgRmlsZW5hbWU6IG5hbWUgPyBuYW1lIDogJycsXHJcbiAgICAgICAgICAgIEltYWdlQXNEYXRhVVJMOiBjb250ZW50ID8gY29udGVudCA6ICcnLFxyXG4gICAgICAgICAgICBJbWFnZUxpbms6IGltYWdlTGluayA/IGltYWdlTGluayA6ICcnLFxyXG4gICAgICAgICAgICBUZXh0OiB0ZXh0ID8gdGV4dCA6ICcnXHJcbiAgICAgICAgfSBhcyBBdHRhY2hlZEZpbGVEVE87XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmUgaW1hZ2UgXHJcbiAgICAgKi9cclxuICAgICByZW1vdmVGcm9tTGlzdCgpe1xyXG4gICAgICAgIHRoaXMudmFsdWU9IHRoaXMuZ2VuZXJhdGVNb2RlbCgnJywnJywgJycsICcnKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIGdldCB2YWx1ZVxyXG4gICAgICovXHJcbiAgICAgICAgZ2V0IHZhbHVlKCk6IEF0dGFjaGVkRmlsZURUTyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS52YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIHNldCB2YWx1ZVxyXG4gICAgICovXHJcbiAgICBzZXQgdmFsdWUodmFsdWU6IEF0dGFjaGVkRmlsZURUTykge1xyXG4gICAgICAgIHRoaXMuZm9ybS5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5mb3JtRGF0YUNoYW5nZWQuZW1pdCh0aGlzLmZvcm0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cclxuICAgIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcclxuXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXHJcbiAgICBvblRvdWNoOiBhbnkgPSAoKSA9PiB7fTtcclxuXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXHJcbiAgICBuZ09uSW5pdCgpIHt9XHJcblxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICAgIH0gICBcclxuXHJcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaCA9IGZuO1xyXG4gICAgfVxyXG5cclxuICAgIHdyaXRlVmFsdWUodmFsdWU6IEF0dGFjaGVkRmlsZURUTyB8IG51bGwpIHtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHZhbHVlID09PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybS5yZXNldCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2FkamFjZW50LW92ZXJsb2FkLXNpZ25hdHVyZXNcclxuICAgIHZhbGlkYXRlKF86IEZvcm1Db250cm9sKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS52YWxpZCA/IG51bGwgOiB7IHN0eWxlczogeyB2YWxpZDogZmFsc2UgfSB9O1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT25DbGljayBldmVudCBsaXN0ZW5lciBvZiBpbnB1dCNmaWxlSW5wdXQgdG8gY2xlYXIgaGlzIGlucHV0IHZhbHVlXHJcbiAgICAgKi9cclxuICAgIGNsZWFySW5wdXRWYWx1ZShldjogYW55KSB7XHJcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IGV2LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xyXG4gICAgICAgIGVsZW1lbnQudmFsdWUgPSAnJztcclxuICAgIH1cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiAoY2hhbmdlKT1cIm5ld0ltYWdlTG9hZGluZz10cnVlXCIgY2xhc3M9XCJmaWxlSW5wdXRcIj4gXHJcblxyXG4gICAgPGRpdiAqbmdJZj1cImZvcm0udmFsdWUuRmlsZW5hbWUgJiYgcHJldmlld0ltYWdlXCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cIm5ld0ltYWdlTG9hZGluZ1wiPlxyXG4gICAgICAgICAgICB7eyAnZmlsZS1pbnB1dC5sb2FkaW5nJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCIhbmV3SW1hZ2VMb2FkaW5nXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nICpuZ0lmPVwiZm9ybS52YWx1ZS5JbWFnZUxpbmsgJiYgZm9ybS52YWx1ZS5JbWFnZUxpbmsgIT09ICcnICYmICEoZm9ybS52YWx1ZS5JbWFnZUFzRGF0YVVSTCAmJiBmb3JtLnZhbHVlLkltYWdlQXNEYXRhVVJMICE9PSAnJylcIiBbc3JjXT1cImZvcm0udmFsdWUuSW1hZ2VBc0RhdGFVUkxcIiBbc3JjXT1cImZvcm0udmFsdWUuSW1hZ2VMaW5rXCIgc3R5bGU9XCJoZWlnaHQ6IDQwcHg7IHdpZHRoOiBmaXQtY29udGVudDtcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgKm5nSWY9XCJmb3JtLnZhbHVlLkltYWdlQXNEYXRhVVJMICYmIGZvcm0udmFsdWUuSW1hZ2VBc0RhdGFVUkwgIT09ICcnXCIgW3NyY109XCJmb3JtLnZhbHVlLkltYWdlQXNEYXRhVVJMXCIgc3R5bGU9XCJoZWlnaHQ6IDQwcHg7IHdpZHRoOiBmaXQtY29udGVudDtcIiAvPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+e3tmb3JtLnZhbHVlLkZpbGVuYW1lfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJyZW1vdmVGcm9tTGlzdCgpXCIgKm5nSWY9XCJhbGxvd1JlbW92ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8a21zLWljb24gaWNvbj1cInRyYXNoXCIgW2ljb25TaXplXT1cIkljb25TaXplLlRJTllcIiBpY29uQ2xhc3M9XCJjb2xvci1ibGFja1wiPjwva21zLWljb24+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnZmlsZS1pbnB1dC5yZW1vdmUnIH19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCIhcHJldmlld0ltYWdlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIlwiPnt7Zm9ybS52YWx1ZS5GaWxlbmFtZX19PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8YnV0dG9uIChjbGljayk9XCJzZWxlY3RJbWFnZU92ZXJsYXkoKVwiIGNsYXNzPVwiYnV0dG9uLXByaW1hcnktZm9udC1jb2xvclwiIG1hdC1zdHJva2VkLWJ1dHRvbj5cclxuICAgICAgICA8c3Bhbj57eyBsYWJlbCB9fTwvc3Bhbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGlucHV0XHJcbiAgICAgICAgdHlwZT1cImZpbGVcIlxyXG4gICAgICAgIFthY2NlcHRdPVwiYWNjZXB0ZWRGaWxlTWltZXR5cGVzXCJcclxuICAgICAgICBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIlxyXG4gICAgICAgICNmaWxlSW5wdXRcclxuICAgICAgICAoY2xpY2spPVwiY2xlYXJJbnB1dFZhbHVlKCRldmVudClcIlxyXG4gICAgICAgIChjaGFuZ2UpPVwic2VsZWN0SW1hZ2UoJGV2ZW50KVwiXHJcbiAgICAvPlxyXG5cclxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgW2Zvcm1Db250cm9sXT1cImZvcm0uY29udHJvbHNbJ0ltYWdlSWRlbnQnXVwiIC8+XHJcbiAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzWydJbWFnZUxpbmsnXVwiIC8+XHJcbiAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzWydGaWxlbmFtZSddXCIgLz5cclxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgW2Zvcm1Db250cm9sXT1cImZvcm0uY29udHJvbHNbJ0ltYWdlQXNEYXRhVVJMJ11cIiAvPlxyXG4gICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBbZm9ybUNvbnRyb2xdPVwiZm9ybS5jb250cm9sc1snVGV4dCddXCIgLz5cclxuXHJcbjwvZm9ybT4iXX0=
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* @copyright FLYACTS GmbH 2019
|
|
3
|
-
*/
|
|
4
|
-
import { state, style, trigger } from '@angular/animations';
|
|
5
|
-
import { Component, Input, ViewChild, } from '@angular/core';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../icon/icon.component";
|
|
8
|
-
import * as i2 from "@angular/common";
|
|
9
|
-
import * as i3 from "../../directives/sum-of-height.directive";
|
|
10
|
-
import * as i4 from "../../pipes/safe-html.pipe";
|
|
11
|
-
export class FlyoutComponent {
|
|
12
|
-
constructor() {
|
|
13
|
-
this.icon = 'filter';
|
|
14
|
-
this.isDropdownOpened = false;
|
|
15
|
-
this.targetHeight = '0';
|
|
16
|
-
this.animationTime = 5000;
|
|
17
|
-
this.headerCssClass = '';
|
|
18
|
-
this.bodyCssClass = '';
|
|
19
|
-
this.headerTitle = '';
|
|
20
|
-
this.headerText = '';
|
|
21
|
-
this.hasButtonForMore = false;
|
|
22
|
-
this.moreText = '';
|
|
23
|
-
this.lessText = '';
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Open/close dropdown if click on header.
|
|
27
|
-
* Except, if mode is set to hasButtonForMore. When there is a extra button to open/close
|
|
28
|
-
*/
|
|
29
|
-
toggleDropdownHeader() {
|
|
30
|
-
if (!this.hasButtonForMore) {
|
|
31
|
-
this.toggleDropdown();
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Open or close the dropdown
|
|
36
|
-
*/
|
|
37
|
-
toggleDropdown() {
|
|
38
|
-
this.isDropdownOpened = !this.isDropdownOpened;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Set the height of the dropdown list items dynamic - needed for the animation
|
|
42
|
-
*/
|
|
43
|
-
setDropdownListHeight(contentHeight) {
|
|
44
|
-
this.targetHeight = `${contentHeight}px`;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
FlyoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
48
|
-
FlyoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FlyoutComponent, selector: "kms-flyout", inputs: { icon: "icon", headerCssClass: "headerCssClass", bodyCssClass: "bodyCssClass", headerTitle: "headerTitle", headerText: "headerText", hasButtonForMore: "hasButtonForMore", moreText: "moreText", lessText: "lessText" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "flyoutHeader", first: true, predicate: ["flyoutHeader"], descendants: true }], ngImport: i0, template: "<div class=\"flyout\"\r\n [ngClass]=\"{'is-active': isDropdownOpened}\"\r\n>\r\n <div class=\"flyout-header\" (click)=\"toggleDropdownHeader()\" [ngClass]=\"headerCssClass\">\r\n <span [innerHtml]=\"headerTitle | kmsSafeHtml\"></span>\r\n <span [innerHtml]=\"headerText | kmsSafeHtml\"></span>\r\n\r\n <ng-content select=\"[header]\"></ng-content>\r\n\r\n <div *ngIf=\"hasButtonForMore\" (click)=\"toggleDropdown()\" class=\"flyout-header-more\">\r\n <span *ngIf=\"!isDropdownOpened\">\r\n {{ moreText }}\r\n </span>\r\n <span *ngIf=\"isDropdownOpened\">\r\n {{ lessText }}\r\n </span>\r\n <kms-icon [icon]=\"'chevron-down'\"\r\n [iconClass]=\"{'size-16': true, 'is-rotating180': isDropdownOpened}\" >\r\n </kms-icon>\r\n </div>\r\n </div>\r\n <div \r\n class=\"flyout-body\"\r\n [ngClass]=\"bodyCssClass\"\r\n tabindex=\"0\"\r\n [@dropdownAnimation]=\"{value: isDropdownOpened, params: {targetHeight: targetHeight, animationTime: '500'}}\"\r\n getMaxHeight=\"inner\"\r\n (sumOfHeight)=\"setDropdownListHeight($event)\"\r\n #flyoutHeader>\r\n <div class=\"inner\" #content>\r\n <ng-content ></ng-content>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", styles: [""], components: [{ type: i1.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.GetMaxHeightDirective, selector: "[getMaxHeight]", inputs: ["getMaxHeight"], outputs: ["maxHeightChanged", "sumOfHeight"] }], pipes: { "kmsSafeHtml": i4.SafeHtmlPipe }, animations: [
|
|
49
|
-
trigger('dropdownAnimation', [
|
|
50
|
-
state('true', style({
|
|
51
|
-
height: '{{targetHeight}}',
|
|
52
|
-
transition: 'height {{animationTime}}ms ease-in-out',
|
|
53
|
-
}), {
|
|
54
|
-
params: {
|
|
55
|
-
targetHeight: '300px',
|
|
56
|
-
animationTime: 3000,
|
|
57
|
-
},
|
|
58
|
-
}),
|
|
59
|
-
state('false', style({
|
|
60
|
-
height: 0,
|
|
61
|
-
transition: 'height {{animationTime}}ms ease-in-out',
|
|
62
|
-
}), {
|
|
63
|
-
params: {
|
|
64
|
-
targetHeight: '300px',
|
|
65
|
-
opacity: 0,
|
|
66
|
-
animationTime: 3000,
|
|
67
|
-
},
|
|
68
|
-
}),
|
|
69
|
-
]),
|
|
70
|
-
] });
|
|
71
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FlyoutComponent, decorators: [{
|
|
72
|
-
type: Component,
|
|
73
|
-
args: [{
|
|
74
|
-
selector: 'kms-flyout',
|
|
75
|
-
templateUrl: './flyout.component.html',
|
|
76
|
-
styleUrls: ['./flyout.component.scss'],
|
|
77
|
-
animations: [
|
|
78
|
-
trigger('dropdownAnimation', [
|
|
79
|
-
state('true', style({
|
|
80
|
-
height: '{{targetHeight}}',
|
|
81
|
-
transition: 'height {{animationTime}}ms ease-in-out',
|
|
82
|
-
}), {
|
|
83
|
-
params: {
|
|
84
|
-
targetHeight: '300px',
|
|
85
|
-
animationTime: 3000,
|
|
86
|
-
},
|
|
87
|
-
}),
|
|
88
|
-
state('false', style({
|
|
89
|
-
height: 0,
|
|
90
|
-
transition: 'height {{animationTime}}ms ease-in-out',
|
|
91
|
-
}), {
|
|
92
|
-
params: {
|
|
93
|
-
targetHeight: '300px',
|
|
94
|
-
opacity: 0,
|
|
95
|
-
animationTime: 3000,
|
|
96
|
-
},
|
|
97
|
-
}),
|
|
98
|
-
]),
|
|
99
|
-
],
|
|
100
|
-
}]
|
|
101
|
-
}], propDecorators: { icon: [{
|
|
102
|
-
type: Input
|
|
103
|
-
}], headerCssClass: [{
|
|
104
|
-
type: Input
|
|
105
|
-
}], bodyCssClass: [{
|
|
106
|
-
type: Input
|
|
107
|
-
}], headerTitle: [{
|
|
108
|
-
type: Input
|
|
109
|
-
}], headerText: [{
|
|
110
|
-
type: Input
|
|
111
|
-
}], hasButtonForMore: [{
|
|
112
|
-
type: Input
|
|
113
|
-
}], moreText: [{
|
|
114
|
-
type: Input
|
|
115
|
-
}], lessText: [{
|
|
116
|
-
type: Input
|
|
117
|
-
}], content: [{
|
|
118
|
-
type: ViewChild,
|
|
119
|
-
args: ['content']
|
|
120
|
-
}], flyoutHeader: [{
|
|
121
|
-
type: ViewChild,
|
|
122
|
-
args: ['flyoutHeader']
|
|
123
|
-
}] } });
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9mbHlvdXQvZmx5b3V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9mbHlvdXQvZmx5b3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUNILFNBQVMsRUFFVCxLQUFLLEVBQ0wsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUF1Q3ZCLE1BQU0sT0FBTyxlQUFlO0lBckM1QjtRQXVDYSxTQUFJLEdBQUcsUUFBUSxDQUFDO1FBRXpCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixpQkFBWSxHQUFHLEdBQUcsQ0FBQztRQUNuQixrQkFBYSxHQUFHLElBQUksQ0FBQztRQUVaLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBRWxCLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLGVBQVUsR0FBSSxFQUFFLENBQUM7UUFDakIscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxhQUFRLEdBQUcsRUFBRSxDQUFDO0tBOEIxQjtJQXZCRzs7O09BR0c7SUFDSCxvQkFBb0I7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN4QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDekI7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxjQUFjO1FBQ1YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQ25ELENBQUM7SUFFRDs7T0FFRztJQUNILHFCQUFxQixDQUFDLGFBQXFCO1FBQ3ZDLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxhQUFhLElBQUksQ0FBQztJQUM3QyxDQUFDOzs2R0E1Q1EsZUFBZTtpR0FBZixlQUFlLHVkQ2pENUIsdTJDQW1DQSxrZ0JEbEJnQjtRQUNSLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRTtZQUN6QixLQUFLLENBQ0QsTUFBTSxFQUNOLEtBQUssQ0FBQztnQkFDRixNQUFNLEVBQUUsa0JBQWtCO2dCQUMxQixVQUFVLEVBQUUsd0NBQXdDO2FBQ3ZELENBQUMsRUFDRjtnQkFDSSxNQUFNLEVBQUU7b0JBQ0osWUFBWSxFQUFFLE9BQU87b0JBQ3JCLGFBQWEsRUFBRSxJQUFJO2lCQUN0QjthQUNKLENBQ0o7WUFDRCxLQUFLLENBQ0QsT0FBTyxFQUNQLEtBQUssQ0FBQztnQkFDRixNQUFNLEVBQUUsQ0FBQztnQkFDVCxVQUFVLEVBQUUsd0NBQXdDO2FBQ3ZELENBQUMsRUFDRjtnQkFDSSxNQUFNLEVBQUU7b0JBQ0osWUFBWSxFQUFFLE9BQU87b0JBQ3JCLE9BQU8sRUFBRSxDQUFDO29CQUNWLGFBQWEsRUFBRSxJQUFJO2lCQUN0QjthQUNKLENBQ0o7U0FDSixDQUFDO0tBQ0w7NEZBRVEsZUFBZTtrQkFyQzNCLFNBQVM7bUJBQUM7b0JBRVAsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFdBQVcsRUFBRSx5QkFBeUI7b0JBQ3RDLFNBQVMsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29CQUN0QyxVQUFVLEVBQUU7d0JBQ1IsT0FBTyxDQUFDLG1CQUFtQixFQUFFOzRCQUN6QixLQUFLLENBQ0QsTUFBTSxFQUNOLEtBQUssQ0FBQztnQ0FDRixNQUFNLEVBQUUsa0JBQWtCO2dDQUMxQixVQUFVLEVBQUUsd0NBQXdDOzZCQUN2RCxDQUFDLEVBQ0Y7Z0NBQ0ksTUFBTSxFQUFFO29DQUNKLFlBQVksRUFBRSxPQUFPO29DQUNyQixhQUFhLEVBQUUsSUFBSTtpQ0FDdEI7NkJBQ0osQ0FDSjs0QkFDRCxLQUFLLENBQ0QsT0FBTyxFQUNQLEtBQUssQ0FBQztnQ0FDRixNQUFNLEVBQUUsQ0FBQztnQ0FDVCxVQUFVLEVBQUUsd0NBQXdDOzZCQUN2RCxDQUFDLEVBQ0Y7Z0NBQ0ksTUFBTSxFQUFFO29DQUNKLFlBQVksRUFBRSxPQUFPO29DQUNyQixPQUFPLEVBQUUsQ0FBQztvQ0FDVixhQUFhLEVBQUUsSUFBSTtpQ0FDdEI7NkJBQ0osQ0FDSjt5QkFDSixDQUFDO3FCQUNMO2lCQUNKOzhCQUdZLElBQUk7c0JBQVosS0FBSztnQkFNRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR2dCLE9BQU87c0JBQTVCLFNBQVM7dUJBQUMsU0FBUztnQkFFTyxZQUFZO3NCQUF0QyxTQUFTO3VCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcclxuICogQGNvcHlyaWdodCBGTFlBQ1RTIEdtYkggMjAxOVxyXG4gKi9cclxuXHJcbmltcG9ydCB7IHN0YXRlLCBzdHlsZSwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQge1xyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIElucHV0LFxyXG4gICAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBcclxuICAgIHNlbGVjdG9yOiAna21zLWZseW91dCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZmx5b3V0LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2ZseW91dC5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgYW5pbWF0aW9uczogW1xyXG4gICAgICAgIHRyaWdnZXIoJ2Ryb3Bkb3duQW5pbWF0aW9uJywgW1xyXG4gICAgICAgICAgICBzdGF0ZShcclxuICAgICAgICAgICAgICAgICd0cnVlJyxcclxuICAgICAgICAgICAgICAgIHN0eWxlKHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICd7e3RhcmdldEhlaWdodH19JyxcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAnaGVpZ2h0IHt7YW5pbWF0aW9uVGltZX19bXMgZWFzZS1pbi1vdXQnLFxyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldEhlaWdodDogJzMwMHB4JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uVGltZTogMzAwMCxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgc3RhdGUoXHJcbiAgICAgICAgICAgICAgICAnZmFsc2UnLFxyXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMCxcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAnaGVpZ2h0IHt7YW5pbWF0aW9uVGltZX19bXMgZWFzZS1pbi1vdXQnLFxyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldEhlaWdodDogJzMwMHB4JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uVGltZTogMzAwMCxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICBdKSxcclxuICAgIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGbHlvdXRDb21wb25lbnQge1xyXG5cclxuICAgIEBJbnB1dCgpIGljb24gPSAnZmlsdGVyJztcclxuXHJcbiAgICBpc0Ryb3Bkb3duT3BlbmVkID0gZmFsc2U7XHJcbiAgICB0YXJnZXRIZWlnaHQgPSAnMCc7XHJcbiAgICBhbmltYXRpb25UaW1lID0gNTAwMDtcclxuXHJcbiAgICBASW5wdXQoKSBoZWFkZXJDc3NDbGFzcyA9ICcnO1xyXG4gICAgQElucHV0KCkgYm9keUNzc0NsYXNzID0gJyc7XHJcblxyXG4gICAgQElucHV0KCkgaGVhZGVyVGl0bGUgPSAnJztcclxuICAgIEBJbnB1dCgpIGhlYWRlclRleHQgID0gJyc7XHJcbiAgICBASW5wdXQoKSBoYXNCdXR0b25Gb3JNb3JlID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBtb3JlVGV4dCA9ICcnO1xyXG4gICAgQElucHV0KCkgbGVzc1RleHQgPSAnJztcclxuXHJcbiAgICBcclxuICAgIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnKSBjb250ZW50OiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xyXG4gICAgXHJcbiAgICBAVmlld0NoaWxkKCdmbHlvdXRIZWFkZXInKSBmbHlvdXRIZWFkZXI6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBPcGVuL2Nsb3NlIGRyb3Bkb3duIGlmIGNsaWNrIG9uIGhlYWRlci5cclxuICAgICAqIEV4Y2VwdCwgaWYgbW9kZSBpcyBzZXQgdG8gaGFzQnV0dG9uRm9yTW9yZS4gV2hlbiB0aGVyZSBpcyBhIGV4dHJhIGJ1dHRvbiB0byBvcGVuL2Nsb3NlXHJcbiAgICAgKi9cclxuICAgIHRvZ2dsZURyb3Bkb3duSGVhZGVyKCkge1xyXG4gICAgICAgIGlmICghdGhpcy5oYXNCdXR0b25Gb3JNb3JlKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9nZ2xlRHJvcGRvd24oKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBPcGVuIG9yIGNsb3NlIHRoZSBkcm9wZG93blxyXG4gICAgICovXHJcbiAgICB0b2dnbGVEcm9wZG93bigpIHtcclxuICAgICAgICB0aGlzLmlzRHJvcGRvd25PcGVuZWQgPSAhdGhpcy5pc0Ryb3Bkb3duT3BlbmVkO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogU2V0IHRoZSBoZWlnaHQgb2YgdGhlIGRyb3Bkb3duIGxpc3QgaXRlbXMgZHluYW1pYyAtIG5lZWRlZCBmb3IgdGhlIGFuaW1hdGlvblxyXG4gICAgICovXHJcbiAgICBzZXREcm9wZG93bkxpc3RIZWlnaHQoY29udGVudEhlaWdodDogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy50YXJnZXRIZWlnaHQgPSBgJHtjb250ZW50SGVpZ2h0fXB4YDtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZmx5b3V0XCJcclxuICAgIFtuZ0NsYXNzXT1cInsnaXMtYWN0aXZlJzogaXNEcm9wZG93bk9wZW5lZH1cIlxyXG4+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmx5b3V0LWhlYWRlclwiIChjbGljayk9XCJ0b2dnbGVEcm9wZG93bkhlYWRlcigpXCIgW25nQ2xhc3NdPVwiaGVhZGVyQ3NzQ2xhc3NcIj5cclxuICAgICAgICA8c3BhbiBbaW5uZXJIdG1sXT1cImhlYWRlclRpdGxlIHwga21zU2FmZUh0bWxcIj48L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gW2lubmVySHRtbF09XCJoZWFkZXJUZXh0IHwga21zU2FmZUh0bWxcIj48L3NwYW4+XHJcblxyXG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltoZWFkZXJdXCI+PC9uZy1jb250ZW50PlxyXG5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaGFzQnV0dG9uRm9yTW9yZVwiIChjbGljayk9XCJ0b2dnbGVEcm9wZG93bigpXCIgY2xhc3M9XCJmbHlvdXQtaGVhZGVyLW1vcmVcIj5cclxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhaXNEcm9wZG93bk9wZW5lZFwiPlxyXG4gICAgICAgICAgICAgICAge3sgbW9yZVRleHQgfX1cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImlzRHJvcGRvd25PcGVuZWRcIj5cclxuICAgICAgICAgICAgICAgIHt7IGxlc3NUZXh0IH19XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPGttcy1pY29uIFtpY29uXT1cIidjaGV2cm9uLWRvd24nXCJcclxuICAgICAgICAgICAgICAgICAgW2ljb25DbGFzc109XCJ7J3NpemUtMTYnOiB0cnVlLCAnaXMtcm90YXRpbmcxODAnOiBpc0Ryb3Bkb3duT3BlbmVkfVwiID5cclxuICAgICAgICAgICAgPC9rbXMtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBcclxuICAgICAgICBjbGFzcz1cImZseW91dC1ib2R5XCJcclxuICAgICAgICBbbmdDbGFzc109XCJib2R5Q3NzQ2xhc3NcIlxyXG4gICAgICAgIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgW0Bkcm9wZG93bkFuaW1hdGlvbl09XCJ7dmFsdWU6IGlzRHJvcGRvd25PcGVuZWQsIHBhcmFtczoge3RhcmdldEhlaWdodDogdGFyZ2V0SGVpZ2h0LCBhbmltYXRpb25UaW1lOiAnNTAwJ319XCJcclxuICAgICAgICBnZXRNYXhIZWlnaHQ9XCJpbm5lclwiXHJcbiAgICAgICAgKHN1bU9mSGVpZ2h0KT1cInNldERyb3Bkb3duTGlzdEhlaWdodCgkZXZlbnQpXCJcclxuICAgICAgICAjZmx5b3V0SGVhZGVyPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbm5lclwiICNjb250ZW50PlxyXG4gICAgICAgICAgICA8bmctY29udGVudCA+PC9uZy1jb250ZW50PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @copyright KMS GmbH
|
|
3
|
-
*/
|
|
4
|
-
import { Component, Inject } from '@angular/core';
|
|
5
|
-
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
6
|
-
import { isValue } from '../../models';
|
|
7
|
-
import { ButtonResponseType } from '../button-with-confirm-dialog/button-response-types.enum';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/material/dialog";
|
|
10
|
-
import * as i2 from "@angular/material/button";
|
|
11
|
-
/**
|
|
12
|
-
* A generic dialog component
|
|
13
|
-
*/
|
|
14
|
-
export class GenericDialogComponent {
|
|
15
|
-
constructor(dialogRef, zone, data) {
|
|
16
|
-
this.dialogRef = dialogRef;
|
|
17
|
-
this.zone = zone;
|
|
18
|
-
this.data = data;
|
|
19
|
-
this.ButtonResponseType = ButtonResponseType;
|
|
20
|
-
if (isValue(data.buttons)) {
|
|
21
|
-
this.buttons = data.buttons;
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
this.buttons = { primary: 'Yes', secondary: 'No' };
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Action called when clicked
|
|
29
|
-
* @param clickedButton Whether the primary or secondary button was clicked
|
|
30
|
-
*/
|
|
31
|
-
onClickAction(clickedButton) {
|
|
32
|
-
this.zone.run(() => {
|
|
33
|
-
this.dialogRef.close(clickedButton);
|
|
34
|
-
this.dialogRef.afterClosed().subscribe(() => {
|
|
35
|
-
const buttonList = document.querySelectorAll('.mat-flat-button, .mat-button');
|
|
36
|
-
let i = 0;
|
|
37
|
-
for (i; i < buttonList.length; i++) {
|
|
38
|
-
buttonList[i].classList.remove('cdk-focused');
|
|
39
|
-
buttonList[i].classList.remove('cdk-program-focused');
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
GenericDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: GenericDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: i0.NgZone }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
46
|
-
GenericDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: GenericDialogComponent, selector: "kms-generic-dialog", ngImport: i0, template: "<div mat-dialog-title class=\"mat-dialog-title\">\r\n <h3>{{ data.title }}</h3>\r\n</div>\r\n<div mat-dialog-content class=\"mat-dialog-content\">\r\n {{ data.message }}\r\n</div>\r\n<div mat-dialog-actions class=\"custom-dialog-actions\">\r\n <button\r\n mat-flat-button\r\n class=\"test_secondary_button\"\r\n color=\"accent\"\r\n (click)=\"onClickAction(ButtonResponseType.secondary)\"\r\n >\r\n {{ buttons.secondary }}\r\n </button>\r\n <button\r\n mat-flat-button\r\n class=\"test_primary_button\"\r\n color=\"primary\"\r\n (click)=\"onClickAction(ButtonResponseType.primary)\"\r\n >\r\n {{ buttons.primary }}\r\n </button>\r\n</div>\r\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"] }], directives: [{ type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }] });
|
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: GenericDialogComponent, decorators: [{
|
|
48
|
-
type: Component,
|
|
49
|
-
args: [{
|
|
50
|
-
selector: 'kms-generic-dialog',
|
|
51
|
-
templateUrl: './generic-dialog.component.html',
|
|
52
|
-
styleUrls: ['./generic-dialog.component.scss'],
|
|
53
|
-
}]
|
|
54
|
-
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
|
|
55
|
-
type: Inject,
|
|
56
|
-
args: [MAT_DIALOG_DATA]
|
|
57
|
-
}] }]; } });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3VpL2dlbmVyaWMtZGlhbG9nL2dlbmVyaWMtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9nZW5lcmljLWRpYWxvZy9nZW5lcmljLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sMEJBQTBCLENBQUM7QUFDekUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQzs7OztBQUc5Rjs7R0FFRztBQU1ILE1BQU0sT0FBTyxzQkFBc0I7SUFNL0IsWUFDVyxTQUErQyxFQUMvQyxJQUFZLEVBQ2EsSUFBZ0I7UUFGekMsY0FBUyxHQUFULFNBQVMsQ0FBc0M7UUFDL0MsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNhLFNBQUksR0FBSixJQUFJLENBQVk7UUFQcEQsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUM7UUFTcEMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUMvQjthQUFNO1lBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBdUIsQ0FBQztTQUMzRTtJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxhQUFhLENBQUMsYUFBaUM7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUN4QyxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsK0JBQStCLENBQUMsQ0FBQztnQkFDOUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNWLEtBQUssQ0FBQyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO29CQUNoQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztvQkFDOUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztpQkFDekQ7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7b0hBbENRLHNCQUFzQixvRUFTbkIsZUFBZTt3R0FUbEIsc0JBQXNCLDBEQ2xCbkMsbXVCQXdCQTs0RkROYSxzQkFBc0I7a0JBTGxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsV0FBVyxFQUFFLGlDQUFpQztvQkFDOUMsU0FBUyxFQUFFLENBQUMsaUNBQWlDLENBQUM7aUJBQ2pEOzswQkFVUSxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQGNvcHlyaWdodCBLTVMgR21iSFxyXG4gKi9cclxuXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBpc1ZhbHVlIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgQnV0dG9uUmVzcG9uc2VUeXBlIH0gZnJvbSAnLi4vYnV0dG9uLXdpdGgtY29uZmlybS1kaWFsb2cvYnV0dG9uLXJlc3BvbnNlLXR5cGVzLmVudW0nO1xyXG5pbXBvcnQgeyBEaWFsb2dEYXRhLCBEaWFsb2dEYXRhQnV0dG9ucyB9IGZyb20gJy4uL2J1dHRvbi13aXRoLWNvbmZpcm0tZGlhbG9nL2RpYWxvZy1kYXRhLm1vZGVsJztcclxuXHJcbi8qKlxyXG4gKiBBIGdlbmVyaWMgZGlhbG9nIGNvbXBvbmVudFxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2ttcy1nZW5lcmljLWRpYWxvZycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZ2VuZXJpYy1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vZ2VuZXJpYy1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEdlbmVyaWNEaWFsb2dDb21wb25lbnQge1xyXG5cclxuICAgIEJ1dHRvblJlc3BvbnNlVHlwZSA9IEJ1dHRvblJlc3BvbnNlVHlwZTtcclxuXHJcbiAgICBwdWJsaWMgYnV0dG9uczogRGlhbG9nRGF0YUJ1dHRvbnNcclxuXHJcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEdlbmVyaWNEaWFsb2dDb21wb25lbnQ+LFxyXG4gICAgICAgIHB1YmxpYyB6b25lOiBOZ1pvbmUsXHJcbiAgICAgICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBEaWFsb2dEYXRhXHJcbiAgICApIHtcclxuICAgICAgICBpZiAoaXNWYWx1ZShkYXRhLmJ1dHRvbnMpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYnV0dG9ucyA9IGRhdGEuYnV0dG9ucztcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmJ1dHRvbnMgPSB7IHByaW1hcnk6ICdZZXMnLCBzZWNvbmRhcnk6ICdObycgfSBhcyBEaWFsb2dEYXRhQnV0dG9ucztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBY3Rpb24gY2FsbGVkIHdoZW4gY2xpY2tlZFxyXG4gICAgICogQHBhcmFtIGNsaWNrZWRCdXR0b24gV2hldGhlciB0aGUgcHJpbWFyeSBvciBzZWNvbmRhcnkgYnV0dG9uIHdhcyBjbGlja2VkXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBvbkNsaWNrQWN0aW9uKGNsaWNrZWRCdXR0b246IEJ1dHRvblJlc3BvbnNlVHlwZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShjbGlja2VkQnV0dG9uKTtcclxuICAgICAgICAgICAgdGhpcy5kaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgYnV0dG9uTGlzdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5tYXQtZmxhdC1idXR0b24sIC5tYXQtYnV0dG9uJyk7XHJcbiAgICAgICAgICAgICAgICBsZXQgaSA9IDA7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGk7IGkgPCBidXR0b25MaXN0Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uTGlzdFtpXS5jbGFzc0xpc3QucmVtb3ZlKCdjZGstZm9jdXNlZCcpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbkxpc3RbaV0uY2xhc3NMaXN0LnJlbW92ZSgnY2RrLXByb2dyYW0tZm9jdXNlZCcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IG1hdC1kaWFsb2ctdGl0bGUgY2xhc3M9XCJtYXQtZGlhbG9nLXRpdGxlXCI+XHJcbiAgICA8aDM+e3sgZGF0YS50aXRsZSB9fTwvaDM+XHJcbjwvZGl2PlxyXG48ZGl2IG1hdC1kaWFsb2ctY29udGVudCBjbGFzcz1cIm1hdC1kaWFsb2ctY29udGVudFwiPlxyXG4gICAge3sgZGF0YS5tZXNzYWdlIH19XHJcbjwvZGl2PlxyXG48ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucyBjbGFzcz1cImN1c3RvbS1kaWFsb2ctYWN0aW9uc1wiPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICAgIG1hdC1mbGF0LWJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwidGVzdF9zZWNvbmRhcnlfYnV0dG9uXCJcclxuICAgICAgICAgY29sb3I9XCJhY2NlbnRcIlxyXG4gICAgICAgIChjbGljayk9XCJvbkNsaWNrQWN0aW9uKEJ1dHRvblJlc3BvbnNlVHlwZS5zZWNvbmRhcnkpXCJcclxuICAgID5cclxuICAgICAgICB7eyBidXR0b25zLnNlY29uZGFyeSB9fVxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8YnV0dG9uXHJcbiAgICAgICAgbWF0LWZsYXQtYnV0dG9uXHJcbiAgICAgICAgY2xhc3M9XCJ0ZXN0X3ByaW1hcnlfYnV0dG9uXCJcclxuICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxyXG4gICAgICAgIChjbGljayk9XCJvbkNsaWNrQWN0aW9uKEJ1dHRvblJlc3BvbnNlVHlwZS5wcmltYXJ5KVwiXHJcbiAgICA+XHJcbiAgICAgICAge3sgYnV0dG9ucy5wcmltYXJ5IH19XHJcbiAgICA8L2J1dHRvbj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @copyright KMS GmbH
|
|
3
|
-
*/
|
|
4
|
-
import { Component, Input, VERSION } from '@angular/core';
|
|
5
|
-
import { IconSize } from './iconSize.enum';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/platform-browser";
|
|
8
|
-
import * as i2 from "@angular/common";
|
|
9
|
-
export class IconComponent {
|
|
10
|
-
constructor(sanitizer) {
|
|
11
|
-
this.sanitizer = sanitizer;
|
|
12
|
-
/**
|
|
13
|
-
* Optional: Different size via CSS inline style.
|
|
14
|
-
*/
|
|
15
|
-
this.iconSize = IconSize.FULLSIZE;
|
|
16
|
-
/**
|
|
17
|
-
* Dont use icon sprite
|
|
18
|
-
*/
|
|
19
|
-
this.dontUseSprite = false;
|
|
20
|
-
this.IconSize = IconSize;
|
|
21
|
-
this.Version = VERSION.full;
|
|
22
|
-
this.timestamp = 0;
|
|
23
|
-
this.iconToShow = this.icon;
|
|
24
|
-
}
|
|
25
|
-
ngOnInit() {
|
|
26
|
-
this.iconToShow = this.icon;
|
|
27
|
-
const d = new Date();
|
|
28
|
-
const n = d.getTime();
|
|
29
|
-
this.timestamp = n;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: IconComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
-
IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: IconComponent, selector: "kms-icon", inputs: { icon: "icon", iconClass: "iconClass", iconStyle: "iconStyle", iconSize: "iconSize", dontUseSprite: "dontUseSprite" }, ngImport: i0, template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\r\n <span class=\"icon {{ iconSize }}\" [ngClass]=\"iconClass\" [ngStyle]=\"iconStyle\">\r\n <svg>\r\n <use\r\n [attr.xlink:href]=\"\r\n 'assets/sprite.svg?Version=' + Version + '#' + iconToShow\r\n \"\r\n ></use>\r\n </svg>\r\n </span>\r\n</ng-container>\r\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\r\n <object\r\n [data]=\"\r\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\r\n \"\r\n type=\"image/svg+xml\"\r\n class=\"icon {{ iconSize }}\"\r\n [ngClass]=\"iconClass\"\r\n [ngStyle]=\"iconStyle\"\r\n ></object>\r\n</ng-container>\r\n", styles: [""], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: IconComponent, decorators: [{
|
|
35
|
-
type: Component,
|
|
36
|
-
args: [{
|
|
37
|
-
selector: 'kms-icon',
|
|
38
|
-
templateUrl: './icon.component.html',
|
|
39
|
-
styleUrls: ['./icon.component.scss'],
|
|
40
|
-
}]
|
|
41
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { icon: [{
|
|
42
|
-
type: Input
|
|
43
|
-
}], iconClass: [{
|
|
44
|
-
type: Input
|
|
45
|
-
}], iconStyle: [{
|
|
46
|
-
type: Input
|
|
47
|
-
}], iconSize: [{
|
|
48
|
-
type: Input
|
|
49
|
-
}], dontUseSprite: [{
|
|
50
|
-
type: Input
|
|
51
|
-
}] } });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvdWkvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBUTNDLE1BQU0sT0FBTyxhQUFhO0lBd0N0QixZQUFtQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBckIxQzs7V0FFRztRQUNNLGFBQVEsR0FBYSxRQUFRLENBQUMsUUFBUSxDQUFDO1FBRWhEOztXQUVHO1FBRU0sa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFFL0IsYUFBUSxHQUFHLFFBQVEsQ0FBQztRQUNwQixZQUFPLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztRQUVoQixjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBUWpCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM1QixNQUFNLENBQUMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3JCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUN2QixDQUFDOzsyR0FqRFEsYUFBYTsrRkFBYixhQUFhLGdMQ2YxQixtdEJBc0JBOzRGRFBhLGFBQWE7a0JBTnpCLFNBQVM7bUJBQUM7b0JBRVAsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLFdBQVcsRUFBRSx1QkFBdUI7b0JBQ3BDLFNBQVMsRUFBRSxDQUFDLHVCQUF1QixDQUFDO2lCQUN2QzttR0FPWSxJQUFJO3NCQUFaLEtBQUs7Z0JBS0csU0FBUztzQkFBakIsS0FBSztnQkFNRyxTQUFTO3NCQUFqQixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBTUcsYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAY29weXJpZ2h0IEtNUyBHbWJIXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBWRVJTSU9OIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5cclxuaW1wb3J0IHsgSWNvblNpemUgfSBmcm9tICcuL2ljb25TaXplLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBcclxuICAgIHNlbGVjdG9yOiAna21zLWljb24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ljb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vaWNvbi5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXF1aXJlZDogTmFtZSBvZiB0aGUgU1ZHIGljb24gaW5zaWRlIHlvdXIgc3ByaXRlIHNoZWV0IGZpbGUgd2l0aCBuYW1lICdpY29ucy5zdmcnLlxyXG4gICAgICogUGFzcyAnbm9uZScgaWYgbm8gaWNvbiBzaG91bGQgYmUgcmVuZGVyZWQuXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIGljb24hOiBzdHJpbmcgfCAnJztcclxuXHJcbiAgICAvKipcclxuICAgICAqIE9wdGlvbmFsOiBEaWZmZXJlbnQgYXBwZWFyYW5jZSB2aWEgQ1NTIGNsYXNzIGRlZmluZWQgaW4gdGhpcyBjb21wb25lbnTCtHMgc3R5bGUgc2hlZXQuXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIGljb25DbGFzcyE6IHN0cmluZyB8ICcnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogT3B0aW9uYWw6IERpZmZlcmVudCBhcHBlYXJhbmNlIHZpYSBDU1MgaW5saW5lIHN0eWxlLlxyXG4gICAgICovXHJcbiAgICBcclxuICAgIEBJbnB1dCgpIGljb25TdHlsZTogYW55O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogT3B0aW9uYWw6IERpZmZlcmVudCBzaXplIHZpYSBDU1MgaW5saW5lIHN0eWxlLlxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBpY29uU2l6ZTogSWNvblNpemUgPSBJY29uU2l6ZS5GVUxMU0laRTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIERvbnQgdXNlIGljb24gc3ByaXRlXHJcbiAgICAgKi9cclxuICAgIFxyXG4gICAgQElucHV0KCkgZG9udFVzZVNwcml0ZSA9IGZhbHNlO1xyXG5cclxuICAgIEljb25TaXplID0gSWNvblNpemU7XHJcbiAgICBWZXJzaW9uID0gVkVSU0lPTi5mdWxsO1xyXG5cclxuICAgIHB1YmxpYyB0aW1lc3RhbXAgPSAwO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmVuZGVycyB0aGlzIGljb24gZnJvbSBTVkcgc3ByaXRlIHNoZWV0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBpY29uVG9TaG93ITogc3RyaW5nIHwgJyc7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHVibGljIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7XHJcbiAgICAgICAgdGhpcy5pY29uVG9TaG93ID0gdGhpcy5pY29uO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuaWNvblRvU2hvdyA9IHRoaXMuaWNvbjtcclxuICAgICAgICBjb25zdCBkID0gbmV3IERhdGUoKTtcclxuICAgICAgICBjb25zdCBuID0gZC5nZXRUaW1lKCk7XHJcbiAgICAgICAgdGhpcy50aW1lc3RhbXAgPSBuO1xyXG4gICAgfVxyXG5cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaWNvbiAhPT0gJ25vbmUnICYmIGRvbnRVc2VTcHJpdGUgPT09IGZhbHNlXCI+XHJcbiAgPHNwYW4gY2xhc3M9XCJpY29uIHt7IGljb25TaXplIH19XCIgW25nQ2xhc3NdPVwiaWNvbkNsYXNzXCIgW25nU3R5bGVdPVwiaWNvblN0eWxlXCI+XHJcbiAgICA8c3ZnPlxyXG4gICAgICA8dXNlXHJcbiAgICAgICAgW2F0dHIueGxpbms6aHJlZl09XCJcclxuICAgICAgICAgICdhc3NldHMvc3ByaXRlLnN2Zz9WZXJzaW9uPScgKyBWZXJzaW9uICsgJyMnICsgaWNvblRvU2hvd1xyXG4gICAgICAgIFwiXHJcbiAgICAgID48L3VzZT5cclxuICAgIDwvc3ZnPlxyXG4gIDwvc3Bhbj5cclxuPC9uZy1jb250YWluZXI+XHJcbjxuZy1jb250YWluZXIgKm5nSWY9XCJpY29uICE9PSAnbm9uZScgJiYgZG9udFVzZVNwcml0ZSA9PT0gdHJ1ZVwiPlxyXG4gIDxvYmplY3RcclxuICAgIFtkYXRhXT1cIlxyXG4gICAgICBzYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKCdhc3NldHMvaWNvbnMvJyArIGljb24gKyAnJylcclxuICAgIFwiXHJcbiAgICB0eXBlPVwiaW1hZ2Uvc3ZnK3htbFwiXHJcbiAgICBjbGFzcz1cImljb24ge3sgaWNvblNpemUgfX1cIlxyXG4gICAgW25nQ2xhc3NdPVwiaWNvbkNsYXNzXCJcclxuICAgIFtuZ1N0eWxlXT1cImljb25TdHlsZVwiXHJcbiAgPjwvb2JqZWN0PlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|