@kms-ngx-ui/presentational 0.0.19 → 0.0.21

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.
Files changed (98) hide show
  1. package/bundles/kms-ngx-ui-presentational.umd.js +1645 -1270
  2. package/bundles/kms-ngx-ui-presentational.umd.js.map +1 -1
  3. package/esm2015/kms-ngx-ui-presentational.js +1 -37
  4. package/esm2015/lib/directives/directives.module.js +29 -18
  5. package/esm2015/lib/directives/mousewheel.directive.js +21 -11
  6. package/esm2015/lib/directives/sum-of-height.directive.js +18 -15
  7. package/esm2015/lib/directives/swipe.directive.js +38 -14
  8. package/esm2015/lib/directives/tooltip.directive.js +44 -24
  9. package/esm2015/lib/kms-ngx-ui-presentational.component.js +17 -9
  10. package/esm2015/lib/kms-ngx-ui-presentational.module.js +169 -80
  11. package/esm2015/lib/kms-ngx-ui-presentational.service.js +9 -8
  12. package/esm2015/lib/parent-components/actions.component.js +23 -15
  13. package/esm2015/lib/parent-components/form-control.component.js +20 -18
  14. package/esm2015/lib/parent-components/form.component.js +16 -15
  15. package/esm2015/lib/pipes/custom-pipes.module.js +54 -31
  16. package/esm2015/lib/pipes/decode-uri.pipe.js +10 -6
  17. package/esm2015/lib/pipes/encode-uri.pipe.js +10 -6
  18. package/esm2015/lib/pipes/integer-currency.pipe.js +11 -13
  19. package/esm2015/lib/pipes/safe-html.pipe.js +11 -10
  20. package/esm2015/lib/pipes/safe-resource-url.pipe.js +11 -10
  21. package/esm2015/lib/pipes/safe-style.pipe.js +11 -10
  22. package/esm2015/lib/pipes/safe-url.pipe.js +11 -10
  23. package/esm2015/lib/pipes/to-number.pipe.js +11 -7
  24. package/esm2015/lib/pipes/trim.pipe.js +8 -4
  25. package/esm2015/lib/pipes/typeof.pipe.js +10 -6
  26. package/esm2015/lib/services/viewport.service.js +10 -7
  27. package/esm2015/lib/ui/back-to-top/back-to-top.component.js +19 -13
  28. package/esm2015/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.js +26 -20
  29. package/esm2015/lib/ui/checkbox/checkbox.component.js +34 -21
  30. package/esm2015/lib/ui/color-input/color-input.component.js +38 -26
  31. package/esm2015/lib/ui/dropdown-from-data/dropdown-from-data.component.js +53 -33
  32. package/esm2015/lib/ui/enum-radiogroup/enum-radiogroup.component.js +36 -25
  33. package/esm2015/lib/ui/file-input/file-input.component.js +61 -39
  34. package/esm2015/lib/ui/flyout/flyout.component.js +83 -43
  35. package/esm2015/lib/ui/generic-dialog/generic-dialog.component.js +19 -15
  36. package/esm2015/lib/ui/icon/icon.component.js +24 -19
  37. package/esm2015/lib/ui/image-slider/image-slider.component.js +37 -22
  38. package/esm2015/lib/ui/kms-accordion-item/kms-accordion-item.component.js +25 -17
  39. package/esm2015/lib/ui/loader/loader.component.js +16 -12
  40. package/esm2015/lib/ui/map/map.component.js +17 -15
  41. package/esm2015/lib/ui/radiobutton/radiobutton.component.js +33 -21
  42. package/esm2015/lib/ui/salutation-dropdown/salutation-dropdown.component.js +33 -23
  43. package/esm2015/lib/ui/salutation-radiogroup/salutation-radiogroup.component.js +29 -20
  44. package/esm2015/lib/ui/time-input/time-input.component.js +27 -19
  45. package/esm2015/lib/ui/tooltip/tooltip.component.js +14 -11
  46. package/esm2015/lib/ui/tooltip-icon/tooltip-icon.component.js +26 -16
  47. package/esm2015/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.js +39 -27
  48. package/esm2015/public-api.js +36 -3
  49. package/fesm2015/kms-ngx-ui-presentational.js +1592 -1222
  50. package/fesm2015/kms-ngx-ui-presentational.js.map +1 -1
  51. package/kms-ngx-ui-presentational.d.ts +1 -37
  52. package/lib/directives/directives.module.d.ts +9 -3
  53. package/lib/directives/mousewheel.directive.d.ts +3 -0
  54. package/lib/directives/sum-of-height.directive.d.ts +3 -0
  55. package/lib/directives/swipe.directive.d.ts +3 -0
  56. package/lib/directives/tooltip.directive.d.ts +3 -0
  57. package/lib/kms-ngx-ui-presentational.component.d.ts +3 -0
  58. package/lib/kms-ngx-ui-presentational.module.d.ts +44 -0
  59. package/lib/kms-ngx-ui-presentational.service.d.ts +3 -0
  60. package/lib/parent-components/actions.component.d.ts +3 -0
  61. package/lib/parent-components/form-control.component.d.ts +3 -0
  62. package/lib/parent-components/form.component.d.ts +3 -0
  63. package/lib/pipes/custom-pipes.module.d.ts +15 -3
  64. package/lib/pipes/decode-uri.pipe.d.ts +3 -0
  65. package/lib/pipes/encode-uri.pipe.d.ts +3 -0
  66. package/lib/pipes/integer-currency.pipe.d.ts +3 -0
  67. package/lib/pipes/safe-html.pipe.d.ts +3 -0
  68. package/lib/pipes/safe-resource-url.pipe.d.ts +3 -0
  69. package/lib/pipes/safe-style.pipe.d.ts +3 -0
  70. package/lib/pipes/safe-url.pipe.d.ts +3 -0
  71. package/lib/pipes/to-number.pipe.d.ts +3 -0
  72. package/lib/pipes/trim.pipe.d.ts +3 -0
  73. package/lib/pipes/typeof.pipe.d.ts +3 -0
  74. package/lib/services/viewport.service.d.ts +3 -3
  75. package/lib/ui/back-to-top/back-to-top.component.d.ts +3 -3
  76. package/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.d.ts +3 -0
  77. package/lib/ui/checkbox/checkbox.component.d.ts +3 -0
  78. package/lib/ui/color-input/color-input.component.d.ts +3 -0
  79. package/lib/ui/dropdown-from-data/dropdown-from-data.component.d.ts +3 -0
  80. package/lib/ui/enum-radiogroup/enum-radiogroup.component.d.ts +3 -0
  81. package/lib/ui/file-input/file-input.component.d.ts +3 -0
  82. package/lib/ui/flyout/flyout.component.d.ts +3 -3
  83. package/lib/ui/generic-dialog/generic-dialog.component.d.ts +3 -0
  84. package/lib/ui/icon/icon.component.d.ts +3 -0
  85. package/lib/ui/image-slider/image-slider.component.d.ts +3 -0
  86. package/lib/ui/kms-accordion-item/kms-accordion-item.component.d.ts +4 -0
  87. package/lib/ui/loader/loader.component.d.ts +3 -0
  88. package/lib/ui/map/map.component.d.ts +3 -0
  89. package/lib/ui/radiobutton/radiobutton.component.d.ts +3 -0
  90. package/lib/ui/salutation-dropdown/salutation-dropdown.component.d.ts +3 -0
  91. package/lib/ui/salutation-radiogroup/salutation-radiogroup.component.d.ts +3 -0
  92. package/lib/ui/time-input/time-input.component.d.ts +3 -0
  93. package/lib/ui/tooltip/tooltip.component.d.ts +3 -0
  94. package/lib/ui/tooltip-icon/tooltip-icon.component.d.ts +3 -0
  95. package/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.d.ts +3 -0
  96. package/package.json +1 -2
  97. package/public-api.d.ts +35 -0
  98. package/kms-ngx-ui-presentational.metadata.json +0 -1
@@ -1,54 +1,78 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, Component, EventEmitter, Input, Output, forwardRef, Renderer2, ViewChild, ApplicationRef, ChangeDetectorRef, Pipe, NgModule, VERSION, Inject, PLATFORM_ID, HostListener, NgZone, Directive, ElementRef } from '@angular/core';
3
- import { CurrencyPipe, CommonModule, isPlatformBrowser } from '@angular/common';
4
- import { NG_VALUE_ACCESSOR, FormBuilder, FormControl, NG_VALIDATORS, FormsModule, ReactiveFormsModule } from '@angular/forms';
2
+ import { Injectable, Component, EventEmitter, Input, Output, forwardRef, ViewChild, VERSION, Directive, HostListener, Pipe, NgModule, PLATFORM_ID, Inject } from '@angular/core';
3
+ import * as i2 from '@angular/common';
4
+ import { CommonModule, CurrencyPipe, isPlatformBrowser } from '@angular/common';
5
+ import * as i1$1 from '@angular/forms';
6
+ import { NG_VALUE_ACCESSOR, FormControl, NG_VALIDATORS, FormsModule, ReactiveFormsModule } from '@angular/forms';
7
+ import * as i1 from '@angular/material/checkbox';
5
8
  import { MatCheckboxModule } from '@angular/material/checkbox';
9
+ import * as i2$2 from '@angular/material/radio';
6
10
  import { MatRadioModule } from '@angular/material/radio';
11
+ import * as i2$1 from '@angular/material/form-field';
12
+ import { MatFormFieldModule } from '@angular/material/form-field';
13
+ import * as i1$2 from '@angular/platform-browser';
14
+ import * as i5 from '@angular/material/input';
15
+ import { MatInputModule } from '@angular/material/input';
16
+ import * as i2$3 from '@angular/material/button';
17
+ import { MatButtonModule } from '@angular/material/button';
18
+ import * as i5$1 from '@ngx-translate/core';
19
+ import { TranslateModule } from '@ngx-translate/core';
20
+ import * as i1$3 from '@angular/material/progress-spinner';
21
+ import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
7
22
  import { trigger, state, style } from '@angular/animations';
8
- import { DomSanitizer } from '@angular/platform-browser';
23
+ import * as i2$4 from '@angular/material/expansion';
24
+ import { MatExpansionModule } from '@angular/material/expansion';
9
25
  import { Subject } from 'rxjs';
10
- import { MatDialogRef, MAT_DIALOG_DATA, MatDialog, MatDialogModule } from '@angular/material/dialog';
11
- import { SubSink } from 'subsink';
26
+ import * as i2$5 from '@angular/google-maps';
12
27
  import { GoogleMapsModule } from '@angular/google-maps';
13
- import { MatButtonModule } from '@angular/material/button';
14
- import { MatExpansionModule } from '@angular/material/expansion';
28
+ import * as i3 from '@angular/material/select';
15
29
  import { MatSelectModule } from '@angular/material/select';
30
+ import * as i4 from '@angular/material/core';
31
+ import { SubSink } from 'subsink';
32
+ import * as i1$4 from '@angular/material/dialog';
33
+ import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
34
+ import * as i3$1 from '@angular/material/menu';
16
35
  import { MatMenuModule } from '@angular/material/menu';
17
36
  import { EnumValues } from 'enum-values/src/enumValues';
18
37
  import { moveItemInArray } from '@angular/cdk/drag-drop';
19
- import { TranslateModule } from '@ngx-translate/core';
20
- import { MatFormFieldModule } from '@angular/material/form-field';
21
- import { MatInputModule } from '@angular/material/input';
22
- import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
38
+ import * as i2$6 from 'ngx-useful-swiper';
23
39
  import { NgxUsefulSwiperModule } from 'ngx-useful-swiper';
24
40
 
25
41
  class KmsUiPresentationalService {
26
42
  constructor() { }
27
43
  }
28
- KmsUiPresentationalService.ɵprov = i0.ɵɵdefineInjectable({ factory: function KmsUiPresentationalService_Factory() { return new KmsUiPresentationalService(); }, token: KmsUiPresentationalService, providedIn: "root" });
29
- KmsUiPresentationalService.decorators = [
30
- { type: Injectable, args: [{
31
- providedIn: 'root'
32
- },] }
33
- ];
34
- KmsUiPresentationalService.ctorParameters = () => [];
44
+ KmsUiPresentationalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
45
+ KmsUiPresentationalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalService, providedIn: 'root' });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalService, decorators: [{
47
+ type: Injectable,
48
+ args: [{
49
+ providedIn: 'root'
50
+ }]
51
+ }], ctorParameters: function () { return []; } });
35
52
 
36
53
  class KmsUiPresentationalComponent {
37
54
  constructor() { }
38
55
  ngOnInit() {
39
56
  }
40
57
  }
41
- KmsUiPresentationalComponent.decorators = [
42
- { type: Component, args: [{
43
- selector: 'lib-kms-ngx-ui-presentational',
44
- template: `
58
+ KmsUiPresentationalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
59
+ KmsUiPresentationalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KmsUiPresentationalComponent, selector: "lib-kms-ngx-ui-presentational", ngImport: i0, template: `
60
+ <p>
61
+ kms-ngx-ui-presentational works!
62
+ </p>
63
+ `, isInline: true });
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalComponent, decorators: [{
65
+ type: Component,
66
+ args: [{
67
+ selector: 'lib-kms-ngx-ui-presentational',
68
+ template: `
45
69
  <p>
46
70
  kms-ngx-ui-presentational works!
47
71
  </p>
48
- `
49
- },] }
50
- ];
51
- KmsUiPresentationalComponent.ctorParameters = () => [];
72
+ `,
73
+ styles: []
74
+ }]
75
+ }], ctorParameters: function () { return []; } });
52
76
 
53
77
  /*!
54
78
  * @copyright FLYACTS GmbH 2019
@@ -82,20 +106,27 @@ class ActionsParentComponent {
82
106
  this.select.emit(id);
83
107
  }
84
108
  }
85
- ActionsParentComponent.decorators = [
86
- { type: Component, args: [{
87
- selector: 'kms-actions',
88
- template: ''
89
- },] }
90
- ];
91
- ActionsParentComponent.propDecorators = {
92
- disabled: [{ type: Input }],
93
- checked: [{ type: Input }],
94
- label: [{ type: Input }],
95
- link: [{ type: Input }],
96
- initialValue: [{ type: Input }],
97
- select: [{ type: Output }]
98
- };
109
+ ActionsParentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ActionsParentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
110
+ ActionsParentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ActionsParentComponent, selector: "kms-actions", inputs: { disabled: "disabled", checked: "checked", label: "label", link: "link", initialValue: "initialValue" }, outputs: { select: "select" }, ngImport: i0, template: '', isInline: true });
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ActionsParentComponent, decorators: [{
112
+ type: Component,
113
+ args: [{
114
+ selector: 'kms-actions',
115
+ template: '',
116
+ }]
117
+ }], propDecorators: { disabled: [{
118
+ type: Input
119
+ }], checked: [{
120
+ type: Input
121
+ }], label: [{
122
+ type: Input
123
+ }], link: [{
124
+ type: Input
125
+ }], initialValue: [{
126
+ type: Input
127
+ }], select: [{
128
+ type: Output
129
+ }] } });
99
130
 
100
131
  /*!
101
132
  * @copyright FLYACTS GmbH 2019
@@ -136,26 +167,35 @@ class CheckboxComponent extends ActionsParentComponent {
136
167
  this.onTouch = fn;
137
168
  }
138
169
  }
139
- CheckboxComponent.decorators = [
140
- { type: Component, args: [{
141
- selector: 'kms-checkbox',
142
- template: "<!-- <label class=\"wrapper ui-copy-text\"\r\n [ngClass]=\"{'disabled' : disabled}\">{{label}}\r\n <input type=\"checkbox\" \r\n [checked]=\"checked\"\r\n [value]=\"value\"\r\n [name]=\"name\"\r\n [disabled]=\"disabled\"\r\n (change)=\"selectAction($event)\">\r\n\r\n</label> -->\r\n<mat-checkbox class=\"example-margin\" [disabled]=\"disabled\" [name]=\"name\" [(ngModel)]=\"checked\"></mat-checkbox>\r\n<span *ngIf=\"infoText && infoText.length > 0\" \r\n class=\"\"\r\n [ngClass]=\"{'disabled' : disabled}\">{{infoText}}\r\n</span>",
143
- providers: [
144
- {
145
- provide: NG_VALUE_ACCESSOR,
146
- useExisting: forwardRef(() => CheckboxComponent),
147
- multi: true,
148
- },
149
- ],
150
- styles: [""]
151
- },] }
152
- ];
153
- CheckboxComponent.ctorParameters = () => [];
154
- CheckboxComponent.propDecorators = {
155
- infoText: [{ type: Input }],
156
- name: [{ type: Input }],
157
- select: [{ type: Output }]
158
- };
170
+ CheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
171
+ CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: CheckboxComponent, selector: "kms-checkbox", inputs: { infoText: "infoText", name: "name" }, outputs: { select: "select" }, providers: [
172
+ {
173
+ provide: NG_VALUE_ACCESSOR,
174
+ useExisting: forwardRef(() => CheckboxComponent),
175
+ multi: true,
176
+ },
177
+ ], usesInheritance: true, ngImport: i0, template: "<!-- <label class=\"wrapper ui-copy-text\"\r\n [ngClass]=\"{'disabled' : disabled}\">{{label}}\r\n <input type=\"checkbox\" \r\n [checked]=\"checked\"\r\n [value]=\"value\"\r\n [name]=\"name\"\r\n [disabled]=\"disabled\"\r\n (change)=\"selectAction($event)\">\r\n\r\n</label> -->\r\n<mat-checkbox class=\"example-margin\" [disabled]=\"disabled\" [name]=\"name\" [(ngModel)]=\"checked\"></mat-checkbox>\r\n<span *ngIf=\"infoText && infoText.length > 0\" \r\n class=\"\"\r\n [ngClass]=\"{'disabled' : disabled}\">{{infoText}}\r\n</span>", styles: [""], components: [{ type: i1.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CheckboxComponent, decorators: [{
179
+ type: Component,
180
+ args: [{
181
+ selector: 'kms-checkbox',
182
+ templateUrl: './checkbox.component.html',
183
+ styleUrls: ['./checkbox.component.scss'],
184
+ providers: [
185
+ {
186
+ provide: NG_VALUE_ACCESSOR,
187
+ useExisting: forwardRef(() => CheckboxComponent),
188
+ multi: true,
189
+ },
190
+ ],
191
+ }]
192
+ }], ctorParameters: function () { return []; }, propDecorators: { infoText: [{
193
+ type: Input
194
+ }], name: [{
195
+ type: Input
196
+ }], select: [{
197
+ type: Output
198
+ }] } });
159
199
 
160
200
  /*!
161
201
  * @copyright FLYACTS GmbH 2019
@@ -218,19 +258,19 @@ class FormParentComponent {
218
258
  });
219
259
  }
220
260
  }
221
- FormParentComponent.decorators = [
222
- { type: Component, args: [{
223
- selector: 'kms-form',
224
- template: ''
225
- },] }
226
- ];
227
- FormParentComponent.ctorParameters = () => [
228
- { type: FormBuilder }
229
- ];
230
- FormParentComponent.propDecorators = {
231
- formDataChanged: [{ type: Output }],
232
- disabled: [{ type: Input }]
233
- };
261
+ FormParentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FormParentComponent, deps: [{ token: i1$1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
262
+ FormParentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FormParentComponent, selector: "kms-form", inputs: { disabled: "disabled" }, outputs: { formDataChanged: "formDataChanged" }, ngImport: i0, template: '', isInline: true });
263
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FormParentComponent, decorators: [{
264
+ type: Component,
265
+ args: [{
266
+ selector: 'kms-form',
267
+ template: '',
268
+ }]
269
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }]; }, propDecorators: { formDataChanged: [{
270
+ type: Output
271
+ }], disabled: [{
272
+ type: Input
273
+ }] } });
234
274
 
235
275
  class FormControlParentComponent extends FormParentComponent {
236
276
  constructor(formBuilder, renderer) {
@@ -286,21 +326,306 @@ class FormControlParentComponent extends FormParentComponent {
286
326
  return this.form.valid ? null : false;
287
327
  }
288
328
  }
289
- FormControlParentComponent.decorators = [
290
- { type: Component, args: [{
291
- selector: 'kms-formControlParent',
292
- template: ''
293
- },] }
294
- ];
295
- FormControlParentComponent.ctorParameters = () => [
296
- { type: FormBuilder },
297
- { type: Renderer2 }
298
- ];
299
- FormControlParentComponent.propDecorators = {
300
- defaultDataOverride: [{ type: Input }],
301
- onSelectItemEmitter: [{ type: Output }],
302
- child: [{ type: ViewChild, args: ['child',] }]
303
- };
329
+ FormControlParentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FormControlParentComponent, deps: [{ token: i1$1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
330
+ FormControlParentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FormControlParentComponent, selector: "kms-formControlParent", inputs: { defaultDataOverride: "defaultDataOverride" }, outputs: { onSelectItemEmitter: "onSelectItemEmitter" }, viewQueries: [{ propertyName: "child", first: true, predicate: ["child"], descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true });
331
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FormControlParentComponent, decorators: [{
332
+ type: Component,
333
+ args: [{
334
+ selector: 'kms-formControlParent',
335
+ template: '',
336
+ }]
337
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: i0.Renderer2 }]; }, propDecorators: { defaultDataOverride: [{
338
+ type: Input
339
+ }], onSelectItemEmitter: [{
340
+ type: Output
341
+ }], child: [{
342
+ type: ViewChild,
343
+ args: ['child']
344
+ }] } });
345
+
346
+ /*!
347
+ * @copyright FLYACTS GmbH 2019
348
+ */
349
+
350
+ /**
351
+ * Attached File DTO
352
+ */
353
+ class AttachedFileDTO {
354
+ }
355
+
356
+ /*!
357
+ * @copyright FLYACTS GmbH 2019
358
+ */
359
+ var IconSize$1;
360
+ (function (IconSize) {
361
+ IconSize["FULLSIZE"] = "size-full";
362
+ IconSize["TINY"] = "size-16";
363
+ IconSize["SMALLER"] = "size-20";
364
+ IconSize["SMALL"] = "size-32";
365
+ IconSize["MEDIUM"] = "size-64";
366
+ IconSize["LARGE"] = "size-128";
367
+ IconSize["XL"] = "size-256";
368
+ IconSize["XXL"] = "size-512";
369
+ IconSize["XXXL"] = "size-1024";
370
+ IconSize["NONE"] = "NONE";
371
+ })(IconSize$1 || (IconSize$1 = {}));
372
+
373
+ /**
374
+ * @copyright FLYACTS GmbH 2019
375
+ */
376
+ /**
377
+ * Check if null or undefined
378
+ * @param value value that is being checked
379
+ */
380
+ function isValue(value) {
381
+ if (value === null) {
382
+ return false;
383
+ }
384
+ if (typeof value === 'undefined') {
385
+ return false;
386
+ }
387
+ return true;
388
+ }
389
+
390
+ /*!
391
+ * @copyright FLYACTS GmbH 2019
392
+ */
393
+ var IconSize;
394
+ (function (IconSize) {
395
+ IconSize["FULLSIZE"] = "size-full";
396
+ IconSize["TINY"] = "size-16";
397
+ IconSize["SMALLER"] = "size-20";
398
+ IconSize["SMALL"] = "size-32";
399
+ IconSize["MEDIUM"] = "size-64";
400
+ IconSize["LARGE"] = "size-128";
401
+ IconSize["XL"] = "size-256";
402
+ IconSize["XXL"] = "size-512";
403
+ IconSize["XXXL"] = "size-1024";
404
+ IconSize["NONE"] = "NONE";
405
+ })(IconSize || (IconSize = {}));
406
+
407
+ /**
408
+ * @copyright KMS GmbH
409
+ */
410
+ class IconComponent {
411
+ constructor(sanitizer) {
412
+ this.sanitizer = sanitizer;
413
+ /**
414
+ * Optional: Different size via CSS inline style.
415
+ */
416
+ this.iconSize = IconSize.FULLSIZE;
417
+ /**
418
+ * Dont use icon sprite
419
+ */
420
+ this.dontUseSprite = false;
421
+ this.IconSize = IconSize;
422
+ this.Version = VERSION.full;
423
+ this.timestamp = 0;
424
+ this.iconToShow = this.icon;
425
+ }
426
+ ngOnInit() {
427
+ this.iconToShow = this.icon;
428
+ const d = new Date();
429
+ const n = d.getTime();
430
+ this.timestamp = n;
431
+ }
432
+ }
433
+ IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: IconComponent, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
434
+ 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"] }] });
435
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: IconComponent, decorators: [{
436
+ type: Component,
437
+ args: [{
438
+ selector: 'kms-icon',
439
+ templateUrl: './icon.component.html',
440
+ styleUrls: ['./icon.component.scss'],
441
+ }]
442
+ }], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; }, propDecorators: { icon: [{
443
+ type: Input
444
+ }], iconClass: [{
445
+ type: Input
446
+ }], iconStyle: [{
447
+ type: Input
448
+ }], iconSize: [{
449
+ type: Input
450
+ }], dontUseSprite: [{
451
+ type: Input
452
+ }] } });
453
+
454
+ class TooltipDirective {
455
+ constructor(el, renderer) {
456
+ this.el = el;
457
+ this.renderer = renderer;
458
+ this.tooltipTitle = "";
459
+ this.tooltipText = "";
460
+ this.tooltipLinkText = "";
461
+ this.tooltipLinkUrl = "";
462
+ this.tooltipPlacement = "bottom";
463
+ this.tooltipDelay = 1000;
464
+ this.tooltipPlaceIntoHost = false;
465
+ this.tooltipOnlyonclick = false;
466
+ this.offset = 0;
467
+ }
468
+ onMouseEnter() {
469
+ if (!this.tooltipOnlyonclick) {
470
+ this.show();
471
+ }
472
+ }
473
+ onClick() {
474
+ if (this.tooltipOnlyonclick) {
475
+ this.show();
476
+ }
477
+ }
478
+ onMouseLeave() {
479
+ if (this.tooltipElem) {
480
+ this.hide();
481
+ }
482
+ }
483
+ show() {
484
+ if (!this.tooltipElem) {
485
+ this.create();
486
+ this.setPosition();
487
+ }
488
+ this.renderer.addClass(this.tooltipElem, 'tooltip-show');
489
+ }
490
+ hide() {
491
+ this.renderer.removeClass(this.tooltipElem, 'tooltip-show');
492
+ window.setTimeout(() => {
493
+ }, this.tooltipDelay);
494
+ }
495
+ create() {
496
+ this.tooltipElem = this.renderer.createElement('kms-tooltip-element');
497
+ this.tooltipTitleElem = this.renderer.createElement('b');
498
+ this.renderer.appendChild(this.tooltipTitleElem, this.renderer.createText(this.tooltipTitle));
499
+ this.renderer.appendChild(this.tooltipElem, this.tooltipTitleElem);
500
+ this.tooltipTextElem = this.renderer.createElement('div');
501
+ this.renderer.appendChild(this.tooltipTextElem, this.renderer.createText(this.tooltipText));
502
+ this.renderer.appendChild(this.tooltipElem, this.tooltipTextElem);
503
+ this.tooltipLinkElem = this.renderer.createElement('a');
504
+ this.renderer.setAttribute(this.tooltipLinkElem, 'href', this.tooltipLinkUrl);
505
+ this.renderer.appendChild(this.tooltipLinkElem, this.renderer.createText(this.tooltipLinkText));
506
+ this.renderer.appendChild(this.tooltipElem, this.tooltipLinkElem);
507
+ if (this.tooltipPlaceIntoHost) {
508
+ this.renderer.appendChild(this.el.nativeElement, this.tooltipElem);
509
+ }
510
+ else {
511
+ this.renderer.appendChild(document.body, this.tooltipElem);
512
+ }
513
+ this.renderer.addClass(this.tooltipElem, 'tooltip');
514
+ this.renderer.addClass(this.tooltipElem, `tooltip-${this.tooltipPlacement}`);
515
+ this.renderer.setStyle(this.tooltipElem, '-webkit-transition', `opacity ${this.tooltipDelay}ms`);
516
+ this.renderer.setStyle(this.tooltipElem, '-moz-transition', `opacity ${this.tooltipDelay}ms`);
517
+ this.renderer.setStyle(this.tooltipElem, '-o-transition', `opacity ${this.tooltipDelay}ms`);
518
+ this.renderer.setStyle(this.tooltipElem, 'transition', `opacity ${this.tooltipDelay}ms`);
519
+ }
520
+ setPosition() {
521
+ if (this.tooltipElem) {
522
+ const hostPos = this.el.nativeElement.getBoundingClientRect();
523
+ const tooltipPos = this.tooltipElem.getBoundingClientRect();
524
+ let top, left;
525
+ if (this.tooltipPlaceIntoHost) {
526
+ left = 0;
527
+ top = hostPos.height;
528
+ }
529
+ else {
530
+ const scrollPos = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
531
+ if (this.tooltipPlacement === 'top') {
532
+ top = hostPos.top - tooltipPos.height - this.offset;
533
+ left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
534
+ }
535
+ if (!this.tooltipPlacement || this.tooltipPlacement === 'bottom') {
536
+ top = hostPos.bottom + this.offset;
537
+ left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
538
+ }
539
+ if (this.tooltipPlacement === 'left') {
540
+ top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
541
+ left = hostPos.left - tooltipPos.width - this.offset;
542
+ }
543
+ if (this.tooltipPlacement === 'right') {
544
+ top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
545
+ left = hostPos.right + this.offset;
546
+ }
547
+ top += scrollPos;
548
+ }
549
+ this.renderer.setStyle(this.tooltipElem, 'top', `${top}px`);
550
+ this.renderer.setStyle(this.tooltipElem, 'left', `${left}px`);
551
+ }
552
+ }
553
+ }
554
+ TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
555
+ TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TooltipDirective, selector: "[kmsTooltip]", inputs: { tooltipTitle: "tooltipTitle", tooltipText: "tooltipText", tooltipLinkText: "tooltipLinkText", tooltipLinkUrl: "tooltipLinkUrl", tooltipPlacement: "tooltipPlacement", tooltipDelay: "tooltipDelay", tooltipPlaceIntoHost: "tooltipPlaceIntoHost", tooltipOnlyonclick: "tooltipOnlyonclick" }, host: { listeners: { "mouseenter": "onMouseEnter()", "click": "onClick()", "mouseleave": "onMouseLeave()" } }, ngImport: i0 });
556
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipDirective, decorators: [{
557
+ type: Directive,
558
+ args: [{
559
+ selector: '[kmsTooltip]'
560
+ }]
561
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { tooltipTitle: [{
562
+ type: Input,
563
+ args: ['tooltipTitle']
564
+ }], tooltipText: [{
565
+ type: Input,
566
+ args: ['tooltipText']
567
+ }], tooltipLinkText: [{
568
+ type: Input,
569
+ args: ['tooltipLinkText']
570
+ }], tooltipLinkUrl: [{
571
+ type: Input,
572
+ args: ['tooltipLinkUrl']
573
+ }], tooltipPlacement: [{
574
+ type: Input,
575
+ args: ['tooltipPlacement']
576
+ }], tooltipDelay: [{
577
+ type: Input,
578
+ args: ['tooltipDelay']
579
+ }], tooltipPlaceIntoHost: [{
580
+ type: Input,
581
+ args: ['tooltipPlaceIntoHost']
582
+ }], tooltipOnlyonclick: [{
583
+ type: Input,
584
+ args: ['tooltipOnlyonclick']
585
+ }], onMouseEnter: [{
586
+ type: HostListener,
587
+ args: ['mouseenter']
588
+ }], onClick: [{
589
+ type: HostListener,
590
+ args: ['click']
591
+ }], onMouseLeave: [{
592
+ type: HostListener,
593
+ args: ['mouseleave']
594
+ }] } });
595
+
596
+ class TooltipIconComponent {
597
+ constructor() {
598
+ this.tooltipTitle = "";
599
+ this.tooltipText = "";
600
+ this.tooltipLinkText = "";
601
+ this.tooltipLinkUrl = "";
602
+ this.placement = "";
603
+ this.delay = 1000;
604
+ this.IconSize = IconSize$1;
605
+ }
606
+ }
607
+ TooltipIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
608
+ TooltipIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TooltipIconComponent, selector: "kms-tooltip-icon", inputs: { tooltipTitle: "tooltipTitle", tooltipText: "tooltipText", tooltipLinkText: "tooltipLinkText", tooltipLinkUrl: "tooltipLinkUrl", placement: "placement", delay: "delay" }, ngImport: i0, template: "<span\r\n kmsTooltip\r\n [tooltipTitle]=\"tooltipTitle\"\r\n [tooltipText]=\"tooltipText\"\r\n [tooltipPlacement]=\"placement\"\r\n [tooltipDelay]=\"delay\"\r\n [tooltipLinkText]=\"tooltipLinkText\"\r\n [tooltipLinkUrl]=\"tooltipLinkUrl\"\r\n>\r\n <kms-icon icon=\"ic_info\" [iconSize]=\"IconSize.SMALLER\" [iconClass]=\"'color-primary'\"></kms-icon>\r\n</span>\r\n", styles: [""], components: [{ type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }], directives: [{ type: TooltipDirective, selector: "[kmsTooltip]", inputs: ["tooltipTitle", "tooltipText", "tooltipLinkText", "tooltipLinkUrl", "tooltipPlacement", "tooltipDelay", "tooltipPlaceIntoHost", "tooltipOnlyonclick"] }] });
609
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipIconComponent, decorators: [{
610
+ type: Component,
611
+ args: [{
612
+ selector: 'kms-tooltip-icon',
613
+ templateUrl: './tooltip-icon.component.html',
614
+ styleUrls: ['./tooltip-icon.component.scss']
615
+ }]
616
+ }], propDecorators: { tooltipTitle: [{
617
+ type: Input
618
+ }], tooltipText: [{
619
+ type: Input
620
+ }], tooltipLinkText: [{
621
+ type: Input
622
+ }], tooltipLinkUrl: [{
623
+ type: Input
624
+ }], placement: [{
625
+ type: Input
626
+ }], delay: [{
627
+ type: Input
628
+ }] } });
304
629
 
305
630
  class ColorInputComponent extends FormControlParentComponent {
306
631
  constructor(formBuilder, renderer) {
@@ -344,29 +669,35 @@ class ColorInputComponent extends FormControlParentComponent {
344
669
  this.change(color);
345
670
  }
346
671
  }
347
- ColorInputComponent.decorators = [
348
- { type: Component, args: [{
349
- selector: 'kms-color-input',
350
- template: "\r\n<form [formGroup]=\"form\" *ngIf=\"formInitialized\">\r\n <div>\r\n <mat-form-field class=\"colorInput\">\r\n <kms-tooltip-icon [tooltipText]=\"tooltipText\" *ngIf=\"tooltipText\"></kms-tooltip-icon>\r\n <mat-label>{{ label }}</mat-label>\r\n <input type=\"text\" [(ngModel)]=\"value\" matInput formControlName=\"color\" [placeholder]=\"placeholder\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\r\n <input type=\"color\" [value]=\"value && matchesHex(value) ? value : '#ffffff'\" (change)=\"updateSelectedColor($event)\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\r\n </mat-form-field>\r\n </div>\r\n</form>",
351
- providers: [
352
- {
353
- provide: NG_VALUE_ACCESSOR,
354
- useExisting: forwardRef(() => ColorInputComponent),
355
- multi: true,
356
- },
357
- ],
358
- styles: [""]
359
- },] }
360
- ];
361
- ColorInputComponent.ctorParameters = () => [
362
- { type: FormBuilder },
363
- { type: Renderer2 }
364
- ];
365
- ColorInputComponent.propDecorators = {
366
- label: [{ type: Input }],
367
- tooltipText: [{ type: Input }],
368
- placeholder: [{ type: Input }]
369
- };
672
+ ColorInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ColorInputComponent, deps: [{ token: i1$1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
673
+ ColorInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ColorInputComponent, selector: "kms-color-input", inputs: { label: "label", tooltipText: "tooltipText", placeholder: "placeholder" }, providers: [
674
+ {
675
+ provide: NG_VALUE_ACCESSOR,
676
+ useExisting: forwardRef(() => ColorInputComponent),
677
+ multi: true,
678
+ },
679
+ ], usesInheritance: true, ngImport: i0, template: "\r\n<form [formGroup]=\"form\" *ngIf=\"formInitialized\">\r\n <div>\r\n <mat-form-field class=\"colorInput\">\r\n <kms-tooltip-icon [tooltipText]=\"tooltipText\" *ngIf=\"tooltipText\"></kms-tooltip-icon>\r\n <mat-label>{{ label }}</mat-label>\r\n <input type=\"text\" [(ngModel)]=\"value\" matInput formControlName=\"color\" [placeholder]=\"placeholder\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\r\n <input type=\"color\" [value]=\"value && matchesHex(value) ? value : '#ffffff'\" (change)=\"updateSelectedColor($event)\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\r\n </mat-form-field>\r\n </div>\r\n</form>", styles: [""], components: [{ type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: TooltipIconComponent, selector: "kms-tooltip-icon", inputs: ["tooltipTitle", "tooltipText", "tooltipLinkText", "tooltipLinkUrl", "placement", "delay"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$1.MatLabel, selector: "mat-label" }, { type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
680
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ColorInputComponent, decorators: [{
681
+ type: Component,
682
+ args: [{
683
+ selector: 'kms-color-input',
684
+ templateUrl: './color-input.component.html',
685
+ styleUrls: ['./color-input.component.scss'],
686
+ providers: [
687
+ {
688
+ provide: NG_VALUE_ACCESSOR,
689
+ useExisting: forwardRef(() => ColorInputComponent),
690
+ multi: true,
691
+ },
692
+ ],
693
+ }]
694
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: i0.Renderer2 }]; }, propDecorators: { label: [{
695
+ type: Input
696
+ }], tooltipText: [{
697
+ type: Input
698
+ }], placeholder: [{
699
+ type: Input
700
+ }] } });
370
701
 
371
702
  /*!
372
703
  * @copyright FLYACTS GmbH 2019
@@ -410,26 +741,35 @@ class RadioButtonComponent extends ActionsParentComponent {
410
741
  this.onTouch = fn;
411
742
  }
412
743
  }
413
- RadioButtonComponent.decorators = [
414
- { type: Component, args: [{
415
- selector: 'kms-radiobutton',
416
- template: "<label class=\"wrapper ui-small-text\"\r\n [ngClass]=\"{'disabled' : disabled}\">\r\n <input type=\"radio\"\r\n [name]=\"name\"\r\n [value]=\"value\"\r\n [checked]=\"checked\"\r\n [disabled]=\"disabled\"\r\n [id]=\"id\"\r\n (change)=\"selectAction($event)\">{{label}}\r\n\r\n <kms-icon\r\n class=\"checkmark\" \r\n aria-hidden=\"true\"\r\n *ngIf=\"checked\"\r\n [ngClass]=\"{\r\n 'disabled' : disabled\r\n }\"\r\n [iconClass]=\"{\r\n 'disabled' : disabled, \r\n 'color-primary': true,\r\n 'size-16': true\r\n }\"\r\n [icon]=\"'ic_radiobutton_active'\"\r\n >\r\n </kms-icon>\r\n <kms-icon\r\n class=\"checkmark\" \r\n aria-hidden=\"true\"\r\n *ngIf=\"!checked\"\r\n [ngClass]=\"{\r\n 'disabled' : disabled\r\n }\"\r\n [iconClass]=\"{\r\n 'disabled' : disabled, \r\n 'color-primary': true,\r\n 'size-16': true\r\n }\"\r\n [icon]=\"'ic_radiobutton_inactive'\"\r\n >\r\n </kms-icon>\r\n <ng-content></ng-content>\r\n</label>\r\n",
417
- providers: [
418
- {
419
- provide: NG_VALUE_ACCESSOR,
420
- useExisting: forwardRef(() => RadioButtonComponent),
421
- multi: true,
422
- },
423
- ],
424
- styles: [""]
425
- },] }
426
- ];
427
- RadioButtonComponent.ctorParameters = () => [];
428
- RadioButtonComponent.propDecorators = {
429
- name: [{ type: Input }],
430
- id: [{ type: Input }],
431
- formControl: [{ type: Input }]
432
- };
744
+ RadioButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RadioButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
745
+ RadioButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: RadioButtonComponent, selector: "kms-radiobutton", inputs: { name: "name", id: "id", formControl: "formControl" }, providers: [
746
+ {
747
+ provide: NG_VALUE_ACCESSOR,
748
+ useExisting: forwardRef(() => RadioButtonComponent),
749
+ multi: true,
750
+ },
751
+ ], usesInheritance: true, ngImport: i0, template: "<label class=\"wrapper ui-small-text\"\r\n [ngClass]=\"{'disabled' : disabled}\">\r\n <input type=\"radio\"\r\n [name]=\"name\"\r\n [value]=\"value\"\r\n [checked]=\"checked\"\r\n [disabled]=\"disabled\"\r\n [id]=\"id\"\r\n (change)=\"selectAction($event)\">{{label}}\r\n\r\n <kms-icon\r\n class=\"checkmark\" \r\n aria-hidden=\"true\"\r\n *ngIf=\"checked\"\r\n [ngClass]=\"{\r\n 'disabled' : disabled\r\n }\"\r\n [iconClass]=\"{\r\n 'disabled' : disabled, \r\n 'color-primary': true,\r\n 'size-16': true\r\n }\"\r\n [icon]=\"'ic_radiobutton_active'\"\r\n >\r\n </kms-icon>\r\n <kms-icon\r\n class=\"checkmark\" \r\n aria-hidden=\"true\"\r\n *ngIf=\"!checked\"\r\n [ngClass]=\"{\r\n 'disabled' : disabled\r\n }\"\r\n [iconClass]=\"{\r\n 'disabled' : disabled, \r\n 'color-primary': true,\r\n 'size-16': true\r\n }\"\r\n [icon]=\"'ic_radiobutton_inactive'\"\r\n >\r\n </kms-icon>\r\n <ng-content></ng-content>\r\n</label>\r\n", styles: [""], components: [{ type: 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"] }] });
752
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RadioButtonComponent, decorators: [{
753
+ type: Component,
754
+ args: [{
755
+ selector: 'kms-radiobutton',
756
+ templateUrl: './radiobutton.component.html',
757
+ styleUrls: ['./radiobutton.component.scss'],
758
+ providers: [
759
+ {
760
+ provide: NG_VALUE_ACCESSOR,
761
+ useExisting: forwardRef(() => RadioButtonComponent),
762
+ multi: true,
763
+ },
764
+ ],
765
+ }]
766
+ }], ctorParameters: function () { return []; }, propDecorators: { name: [{
767
+ type: Input
768
+ }], id: [{
769
+ type: Input
770
+ }], formControl: [{
771
+ type: Input
772
+ }] } });
433
773
 
434
774
  class TimeInputComponent {
435
775
  constructor(formBuilder) {
@@ -491,23 +831,29 @@ class TimeInputComponent {
491
831
  this.onTouch = fn;
492
832
  }
493
833
  }
494
- TimeInputComponent.decorators = [
495
- { type: Component, args: [{
496
- selector: 'kms-time-input',
497
- template: "<form [formGroup]=\"form\" class=\"timeInput\">\r\n <input type=\"number\" formControlName=\"h\" [value]=\"h\" maxlength=\"2\" min=\"0\" max=\"23\" />\r\n <span>:</span>\r\n <input type=\"number\" formControlName=\"m\" [value]=\"m\" maxlength=\"2\" min=\"0\" max=\"59\"/>\r\n</form>",
498
- providers: [
499
- {
500
- provide: NG_VALUE_ACCESSOR,
501
- useExisting: forwardRef(() => TimeInputComponent),
502
- multi: true,
503
- },
504
- ],
505
- styles: [""]
506
- },] }
507
- ];
508
- TimeInputComponent.ctorParameters = () => [
509
- { type: FormBuilder }
510
- ];
834
+ TimeInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimeInputComponent, deps: [{ token: i1$1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
835
+ TimeInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TimeInputComponent, selector: "kms-time-input", providers: [
836
+ {
837
+ provide: NG_VALUE_ACCESSOR,
838
+ useExisting: forwardRef(() => TimeInputComponent),
839
+ multi: true,
840
+ },
841
+ ], ngImport: i0, template: "<form [formGroup]=\"form\" class=\"timeInput\">\r\n <input type=\"text\" formControlName=\"h\" [value]=\"h\" maxlength=\"2\" pattern=\"(0?[0-9]|1[0-9]|2[0-3])\"/>\r\n <span>:</span>\r\n <input type=\"text\" formControlName=\"m\" [value]=\"m\" maxlength=\"2\" pattern=\"(0?[0-9]|[1-5][0-9])\"/>\r\n</form>", styles: [""], directives: [{ type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i1$1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i1$1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }] });
842
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimeInputComponent, decorators: [{
843
+ type: Component,
844
+ args: [{
845
+ selector: 'kms-time-input',
846
+ templateUrl: './time-input.component.html',
847
+ styleUrls: ['./time-input.component.scss'],
848
+ providers: [
849
+ {
850
+ provide: NG_VALUE_ACCESSOR,
851
+ useExisting: forwardRef(() => TimeInputComponent),
852
+ multi: true,
853
+ },
854
+ ],
855
+ }]
856
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }]; } });
511
857
 
512
858
  class YesNoRadiogroupComponent {
513
859
  constructor(formBuilder, renderer) {
@@ -556,64 +902,39 @@ class YesNoRadiogroupComponent {
556
902
  });
557
903
  }
558
904
  }
559
- YesNoRadiogroupComponent.decorators = [
560
- { type: Component, args: [{
561
- selector: 'kms-yesno-radiogroup',
562
- template: "<form [formGroup]=\"form\">\r\n <div>{{ header }}</div>\r\n <mat-radio-group [formControl]=\"form.controls['yesno']\" [disabled]=\"disabled\" #child>\r\n <mat-radio-button [value]=\"true\" [checked]=\"internalValue === true\"> {{ textYes }}</mat-radio-button>\r\n <mat-radio-button [value]=\"false\" [checked]=\"internalValue === false\"> {{ textNo }}</mat-radio-button>\r\n </mat-radio-group>\r\n</form>\r\n",
563
- providers: [
564
- {
565
- provide: NG_VALUE_ACCESSOR,
566
- useExisting: forwardRef(() => YesNoRadiogroupComponent),
567
- multi: true,
568
- },
569
- ]
570
- },] }
571
- ];
572
- YesNoRadiogroupComponent.ctorParameters = () => [
573
- { type: FormBuilder },
574
- { type: Renderer2 }
575
- ];
576
- YesNoRadiogroupComponent.propDecorators = {
577
- header: [{ type: Input }],
578
- disabled: [{ type: Input }],
579
- textYes: [{ type: Input }],
580
- textNo: [{ type: Input }],
581
- child: [{ type: ViewChild, args: ['child',] }]
582
- };
583
-
584
- /*!
585
- * @copyright FLYACTS GmbH 2019
586
- */
587
- var IconSize$1;
588
- (function (IconSize) {
589
- IconSize["FULLSIZE"] = "size-full";
590
- IconSize["TINY"] = "size-16";
591
- IconSize["SMALLER"] = "size-20";
592
- IconSize["SMALL"] = "size-32";
593
- IconSize["MEDIUM"] = "size-64";
594
- IconSize["LARGE"] = "size-128";
595
- IconSize["XL"] = "size-256";
596
- IconSize["XXL"] = "size-512";
597
- IconSize["XXXL"] = "size-1024";
598
- IconSize["NONE"] = "NONE";
599
- })(IconSize$1 || (IconSize$1 = {}));
600
-
601
- /**
602
- * @copyright FLYACTS GmbH 2019
603
- */
604
- /**
605
- * Check if null or undefined
606
- * @param value value that is being checked
607
- */
608
- function isValue(value) {
609
- if (value === null) {
610
- return false;
611
- }
612
- if (typeof value === 'undefined') {
613
- return false;
614
- }
615
- return true;
616
- }
905
+ YesNoRadiogroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: YesNoRadiogroupComponent, deps: [{ token: i1$1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
906
+ YesNoRadiogroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: YesNoRadiogroupComponent, selector: "kms-yesno-radiogroup", inputs: { header: "header", disabled: "disabled", textYes: "textYes", textNo: "textNo" }, providers: [
907
+ {
908
+ provide: NG_VALUE_ACCESSOR,
909
+ useExisting: forwardRef(() => YesNoRadiogroupComponent),
910
+ multi: true,
911
+ },
912
+ ], viewQueries: [{ propertyName: "child", first: true, predicate: ["child"], descendants: true }], ngImport: i0, template: "<form [formGroup]=\"form\">\r\n <div>{{ header }}</div>\r\n <mat-radio-group [formControl]=\"form.controls['yesno']\" [disabled]=\"disabled\" #child>\r\n <mat-radio-button [value]=\"true\" [checked]=\"internalValue === true\"> {{ textYes }}</mat-radio-button>\r\n <mat-radio-button [value]=\"false\" [checked]=\"internalValue === false\"> {{ textNo }}</mat-radio-button>\r\n </mat-radio-group>\r\n</form>\r\n", components: [{ type: i2$2.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }], directives: [{ type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$2.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
913
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: YesNoRadiogroupComponent, decorators: [{
914
+ type: Component,
915
+ args: [{
916
+ selector: 'kms-yesno-radiogroup',
917
+ templateUrl: './yes-no-radiogroup.component.html',
918
+ providers: [
919
+ {
920
+ provide: NG_VALUE_ACCESSOR,
921
+ useExisting: forwardRef(() => YesNoRadiogroupComponent),
922
+ multi: true,
923
+ },
924
+ ],
925
+ }]
926
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: i0.Renderer2 }]; }, propDecorators: { header: [{
927
+ type: Input
928
+ }], disabled: [{
929
+ type: Input
930
+ }], textYes: [{
931
+ type: Input
932
+ }], textNo: [{
933
+ type: Input
934
+ }], child: [{
935
+ type: ViewChild,
936
+ args: ['child']
937
+ }] } });
617
938
 
618
939
  // Max size in bytes of uploaded image
619
940
  const MAX_SIZE_BYTES = 2097152;
@@ -788,42 +1109,58 @@ class FileInputComponent {
788
1109
  element.value = '';
789
1110
  }
790
1111
  }
791
- FileInputComponent.decorators = [
792
- { type: Component, args: [{
793
- selector: 'kms-file-input',
794
- 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>",
795
- providers: [
796
- {
797
- provide: NG_VALUE_ACCESSOR,
798
- useExisting: forwardRef(() => FileInputComponent),
799
- multi: true,
800
- },
801
- {
802
- provide: NG_VALIDATORS,
803
- useExisting: forwardRef(() => FileInputComponent),
804
- multi: true,
805
- },
806
- ],
807
- styles: [""]
808
- },] }
809
- ];
810
- FileInputComponent.ctorParameters = () => [
811
- { type: FormBuilder },
812
- { type: ApplicationRef },
813
- { type: ChangeDetectorRef },
814
- { type: Renderer2 }
815
- ];
816
- FileInputComponent.propDecorators = {
817
- fileInput: [{ type: ViewChild, args: ['fileInput',] }],
818
- label: [{ type: Input }],
819
- previewImage: [{ type: Input }],
820
- allowRemove: [{ type: Input }],
821
- previewImageText: [{ type: Input }],
822
- maxSizeBytes: [{ type: Input }],
823
- resizePixels: [{ type: Input }],
824
- acceptedFileMimetypes: [{ type: Input }],
825
- formDataChanged: [{ type: Output }]
826
- };
1112
+ FileInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FileInputComponent, deps: [{ token: i1$1.FormBuilder }, { token: i0.ApplicationRef }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
1113
+ 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: [
1114
+ {
1115
+ provide: NG_VALUE_ACCESSOR,
1116
+ useExisting: forwardRef(() => FileInputComponent),
1117
+ multi: true,
1118
+ },
1119
+ {
1120
+ provide: NG_VALIDATORS,
1121
+ useExisting: forwardRef(() => FileInputComponent),
1122
+ multi: true,
1123
+ },
1124
+ ], 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: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }, { type: i2$3.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$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "translate": i5$1.TranslatePipe } });
1125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FileInputComponent, decorators: [{
1126
+ type: Component,
1127
+ args: [{
1128
+ selector: 'kms-file-input',
1129
+ templateUrl: './file-input.component.html',
1130
+ styleUrls: ['./file-input.component.scss'],
1131
+ providers: [
1132
+ {
1133
+ provide: NG_VALUE_ACCESSOR,
1134
+ useExisting: forwardRef(() => FileInputComponent),
1135
+ multi: true,
1136
+ },
1137
+ {
1138
+ provide: NG_VALIDATORS,
1139
+ useExisting: forwardRef(() => FileInputComponent),
1140
+ multi: true,
1141
+ },
1142
+ ],
1143
+ }]
1144
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: i0.ApplicationRef }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { fileInput: [{
1145
+ type: ViewChild,
1146
+ args: ['fileInput']
1147
+ }], label: [{
1148
+ type: Input
1149
+ }], previewImage: [{
1150
+ type: Input
1151
+ }], allowRemove: [{
1152
+ type: Input
1153
+ }], previewImageText: [{
1154
+ type: Input
1155
+ }], maxSizeBytes: [{
1156
+ type: Input
1157
+ }], resizePixels: [{
1158
+ type: Input
1159
+ }], acceptedFileMimetypes: [{
1160
+ type: Input
1161
+ }], formDataChanged: [{
1162
+ type: Output
1163
+ }] } });
827
1164
 
828
1165
  class LoaderComponent {
829
1166
  // eslint-disable-next-line @typescript-eslint/no-empty-function
@@ -833,25 +1170,117 @@ class LoaderComponent {
833
1170
  // eslint-disable-next-line @typescript-eslint/no-empty-function
834
1171
  ngOnInit() { }
835
1172
  }
836
- LoaderComponent.decorators = [
837
- { type: Component, args: [{
838
- selector: 'kms-loader',
839
- template: "<div class=\"loading-spinner-shade\" *ngIf=\"loading\">\r\n <mat-spinner class=\"spinnerMargin\" color=\"accent\" diameter=\"44\"></mat-spinner>\r\n</div>\r\n",
840
- styles: [""]
841
- },] }
842
- ];
843
- LoaderComponent.ctorParameters = () => [];
844
- LoaderComponent.propDecorators = {
845
- loading: [{ type: Input }]
846
- };
1173
+ LoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1174
+ LoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: LoaderComponent, selector: "kms-loader", inputs: { loading: "loading" }, ngImport: i0, template: "<div class=\"loading-spinner-shade\" *ngIf=\"loading\">\r\n <mat-spinner class=\"spinnerMargin\" color=\"accent\" diameter=\"44\"></mat-spinner>\r\n</div>\r\n", styles: [""], components: [{ type: i1$3.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1175
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoaderComponent, decorators: [{
1176
+ type: Component,
1177
+ args: [{
1178
+ selector: 'kms-loader',
1179
+ templateUrl: './loader.component.html',
1180
+ styleUrls: ['./loader.component.scss'],
1181
+ }]
1182
+ }], ctorParameters: function () { return []; }, propDecorators: { loading: [{
1183
+ type: Input
1184
+ }] } });
847
1185
 
848
1186
  /*!
849
1187
  * @copyright FLYACTS GmbH 2019
850
1188
  */
851
- class FlyoutComponent {
852
- constructor() {
853
- this.icon = 'filter';
854
- this.isDropdownOpened = false;
1189
+ /**
1190
+ * Directive to calc the height of all inner elements
1191
+ */
1192
+ class GetMaxHeightDirective {
1193
+ constructor(el) {
1194
+ this.el = el;
1195
+ /**
1196
+ * CSS class name of the child items (markup elements) that should be checked for their height.
1197
+ * This is mandatory.
1198
+ */
1199
+ this.cssClassName = '';
1200
+ /**
1201
+ * Event that will pass the height of the tallest child inside the container.
1202
+ * Useful to calculate the target height of containers with different content (like accordion) for animations.
1203
+ */
1204
+ this.maxHeightChanged = new EventEmitter();
1205
+ /**
1206
+ * Event that will pass the complete sum of all height values from each child.
1207
+ * Useful to calculate the full target height of a container (like dropdown) for animations.
1208
+ */
1209
+ this.sumOfHeight = new EventEmitter();
1210
+ }
1211
+ ngAfterContentChecked() {
1212
+ this.checkHeightOfChildren(this.el.nativeElement, this.cssClassName);
1213
+ }
1214
+ checkHeightOfChildren(parent, cssClassName) {
1215
+ if (!parent) {
1216
+ return;
1217
+ }
1218
+ // find all the child elements with the selected class name
1219
+ const children = parent.getElementsByClassName(cssClassName);
1220
+ // failsafe
1221
+ if (!children) {
1222
+ return;
1223
+ }
1224
+ // get all the child elements heights
1225
+ const itemHeights = Array.from(children).map((x) => x.getBoundingClientRect().height);
1226
+ // failsafe
1227
+ if (itemHeights.length === 0) {
1228
+ return;
1229
+ }
1230
+ // find out the tallest element
1231
+ const maxHeight = itemHeights.reduce((prev, curr) => {
1232
+ return curr > prev ? curr : prev;
1233
+ }, 0);
1234
+ // get sum of heights
1235
+ const sumOfHeight = itemHeights.reduce((pv, cv) => pv + cv, 0);
1236
+ // inform
1237
+ this.maxHeightChanged.emit(maxHeight);
1238
+ this.sumOfHeight.emit(sumOfHeight);
1239
+ }
1240
+ }
1241
+ GetMaxHeightDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: GetMaxHeightDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1242
+ GetMaxHeightDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: GetMaxHeightDirective, selector: "[getMaxHeight]", inputs: { cssClassName: ["getMaxHeight", "cssClassName"] }, outputs: { maxHeightChanged: "maxHeightChanged", sumOfHeight: "sumOfHeight" }, ngImport: i0 });
1243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: GetMaxHeightDirective, decorators: [{
1244
+ type: Directive,
1245
+ args: [{
1246
+ selector: '[getMaxHeight]',
1247
+ }]
1248
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { cssClassName: [{
1249
+ type: Input,
1250
+ args: ['getMaxHeight']
1251
+ }], maxHeightChanged: [{
1252
+ type: Output
1253
+ }], sumOfHeight: [{
1254
+ type: Output
1255
+ }] } });
1256
+
1257
+ /*!
1258
+ * @copyright FLYACTS GmbH 2019
1259
+ */
1260
+ class SafeHtmlPipe {
1261
+ constructor(sanitizer) {
1262
+ this.sanitizer = sanitizer;
1263
+ }
1264
+ transform(html) {
1265
+ return this.sanitizer.bypassSecurityTrustHtml(html);
1266
+ }
1267
+ }
1268
+ SafeHtmlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeHtmlPipe, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
1269
+ SafeHtmlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeHtmlPipe, name: "kmsSafeHtml" });
1270
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeHtmlPipe, decorators: [{
1271
+ type: Pipe,
1272
+ args: [{
1273
+ name: 'kmsSafeHtml',
1274
+ }]
1275
+ }], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; } });
1276
+
1277
+ /*!
1278
+ * @copyright FLYACTS GmbH 2019
1279
+ */
1280
+ class FlyoutComponent {
1281
+ constructor() {
1282
+ this.icon = 'filter';
1283
+ this.isDropdownOpened = false;
855
1284
  this.targetHeight = '0';
856
1285
  this.animationTime = 5000;
857
1286
  this.headerCssClass = '';
@@ -884,52 +1313,84 @@ class FlyoutComponent {
884
1313
  this.targetHeight = `${contentHeight}px`;
885
1314
  }
886
1315
  }
887
- FlyoutComponent.decorators = [
888
- { type: Component, args: [{
889
- selector: 'kms-flyout',
890
- 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",
891
- animations: [
892
- trigger('dropdownAnimation', [
893
- state('true', style({
894
- height: '{{targetHeight}}',
895
- transition: 'height {{animationTime}}ms ease-in-out',
896
- }), {
897
- params: {
898
- targetHeight: '300px',
899
- animationTime: 3000,
900
- },
901
- }),
902
- state('false', style({
903
- height: 0,
904
- transition: 'height {{animationTime}}ms ease-in-out',
905
- }), {
906
- params: {
907
- targetHeight: '300px',
908
- opacity: 0,
909
- animationTime: 3000,
910
- },
911
- }),
912
- ]),
913
- ],
914
- styles: [""]
915
- },] }
916
- ];
917
- FlyoutComponent.propDecorators = {
918
- icon: [{ type: Input }],
919
- headerCssClass: [{ type: Input }],
920
- bodyCssClass: [{ type: Input }],
921
- headerTitle: [{ type: Input }],
922
- headerText: [{ type: Input }],
923
- hasButtonForMore: [{ type: Input }],
924
- moreText: [{ type: Input }],
925
- lessText: [{ type: Input }],
926
- content: [{ type: ViewChild, args: ['content',] }],
927
- flyoutHeader: [{ type: ViewChild, args: ['flyoutHeader',] }]
928
- };
1316
+ FlyoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1317
+ 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: 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: GetMaxHeightDirective, selector: "[getMaxHeight]", inputs: ["getMaxHeight"], outputs: ["maxHeightChanged", "sumOfHeight"] }], pipes: { "kmsSafeHtml": SafeHtmlPipe }, animations: [
1318
+ trigger('dropdownAnimation', [
1319
+ state('true', style({
1320
+ height: '{{targetHeight}}',
1321
+ transition: 'height {{animationTime}}ms ease-in-out',
1322
+ }), {
1323
+ params: {
1324
+ targetHeight: '300px',
1325
+ animationTime: 3000,
1326
+ },
1327
+ }),
1328
+ state('false', style({
1329
+ height: 0,
1330
+ transition: 'height {{animationTime}}ms ease-in-out',
1331
+ }), {
1332
+ params: {
1333
+ targetHeight: '300px',
1334
+ opacity: 0,
1335
+ animationTime: 3000,
1336
+ },
1337
+ }),
1338
+ ]),
1339
+ ] });
1340
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FlyoutComponent, decorators: [{
1341
+ type: Component,
1342
+ args: [{
1343
+ selector: 'kms-flyout',
1344
+ templateUrl: './flyout.component.html',
1345
+ styleUrls: ['./flyout.component.scss'],
1346
+ animations: [
1347
+ trigger('dropdownAnimation', [
1348
+ state('true', style({
1349
+ height: '{{targetHeight}}',
1350
+ transition: 'height {{animationTime}}ms ease-in-out',
1351
+ }), {
1352
+ params: {
1353
+ targetHeight: '300px',
1354
+ animationTime: 3000,
1355
+ },
1356
+ }),
1357
+ state('false', style({
1358
+ height: 0,
1359
+ transition: 'height {{animationTime}}ms ease-in-out',
1360
+ }), {
1361
+ params: {
1362
+ targetHeight: '300px',
1363
+ opacity: 0,
1364
+ animationTime: 3000,
1365
+ },
1366
+ }),
1367
+ ]),
1368
+ ],
1369
+ }]
1370
+ }], propDecorators: { icon: [{
1371
+ type: Input
1372
+ }], headerCssClass: [{
1373
+ type: Input
1374
+ }], bodyCssClass: [{
1375
+ type: Input
1376
+ }], headerTitle: [{
1377
+ type: Input
1378
+ }], headerText: [{
1379
+ type: Input
1380
+ }], hasButtonForMore: [{
1381
+ type: Input
1382
+ }], moreText: [{
1383
+ type: Input
1384
+ }], lessText: [{
1385
+ type: Input
1386
+ }], content: [{
1387
+ type: ViewChild,
1388
+ args: ['content']
1389
+ }], flyoutHeader: [{
1390
+ type: ViewChild,
1391
+ args: ['flyoutHeader']
1392
+ }] } });
929
1393
 
930
- /**
931
- * @copyright KMS GmbH
932
- */
933
1394
  class IntegerCurrency {
934
1395
  constructor(cp) {
935
1396
  this.cp = cp;
@@ -945,14 +1406,14 @@ class IntegerCurrency {
945
1406
  }
946
1407
  }
947
1408
  }
948
- IntegerCurrency.decorators = [
949
- { type: Pipe, args: [{
950
- name: 'kmsIntegerCurrency',
951
- },] }
952
- ];
953
- IntegerCurrency.ctorParameters = () => [
954
- { type: CurrencyPipe }
955
- ];
1409
+ IntegerCurrency.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: IntegerCurrency, deps: [{ token: i2.CurrencyPipe }], target: i0.ɵɵFactoryTarget.Pipe });
1410
+ IntegerCurrency.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: IntegerCurrency, name: "kmsIntegerCurrency" });
1411
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: IntegerCurrency, decorators: [{
1412
+ type: Pipe,
1413
+ args: [{
1414
+ name: 'kmsIntegerCurrency',
1415
+ }]
1416
+ }], ctorParameters: function () { return [{ type: i2.CurrencyPipe }]; } });
956
1417
 
957
1418
  /*!
958
1419
  * @copyright FLYACTS GmbH 2019
@@ -962,11 +1423,14 @@ class DecodeUriPipe {
962
1423
  return decodeURI(value);
963
1424
  }
964
1425
  }
965
- DecodeUriPipe.decorators = [
966
- { type: Pipe, args: [{
967
- name: 'kmsDecodeUri',
968
- },] }
969
- ];
1426
+ DecodeUriPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DecodeUriPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1427
+ DecodeUriPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DecodeUriPipe, name: "kmsDecodeUri" });
1428
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DecodeUriPipe, decorators: [{
1429
+ type: Pipe,
1430
+ args: [{
1431
+ name: 'kmsDecodeUri',
1432
+ }]
1433
+ }] });
970
1434
 
971
1435
  /*!
972
1436
  * @copyright FLYACTS GmbH 2019
@@ -976,31 +1440,14 @@ class EncodeUriPipe {
976
1440
  return encodeURI(value);
977
1441
  }
978
1442
  }
979
- EncodeUriPipe.decorators = [
980
- { type: Pipe, args: [{
981
- name: 'kmsEncodeUri',
982
- },] }
983
- ];
984
-
985
- /*!
986
- * @copyright FLYACTS GmbH 2019
987
- */
988
- class SafeHtmlPipe {
989
- constructor(sanitizer) {
990
- this.sanitizer = sanitizer;
991
- }
992
- transform(html) {
993
- return this.sanitizer.bypassSecurityTrustHtml(html);
994
- }
995
- }
996
- SafeHtmlPipe.decorators = [
997
- { type: Pipe, args: [{
998
- name: 'kmsSafeHtml',
999
- },] }
1000
- ];
1001
- SafeHtmlPipe.ctorParameters = () => [
1002
- { type: DomSanitizer }
1003
- ];
1443
+ EncodeUriPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EncodeUriPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1444
+ EncodeUriPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EncodeUriPipe, name: "kmsEncodeUri" });
1445
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EncodeUriPipe, decorators: [{
1446
+ type: Pipe,
1447
+ args: [{
1448
+ name: 'kmsEncodeUri',
1449
+ }]
1450
+ }] });
1004
1451
 
1005
1452
  /**
1006
1453
  * @copyright KMS GmbH
@@ -1013,14 +1460,14 @@ class SafeStylePipe {
1013
1460
  return this.sanitizer.bypassSecurityTrustStyle(style);
1014
1461
  }
1015
1462
  }
1016
- SafeStylePipe.decorators = [
1017
- { type: Pipe, args: [{
1018
- name: 'kmsSafeStyle',
1019
- },] }
1020
- ];
1021
- SafeStylePipe.ctorParameters = () => [
1022
- { type: DomSanitizer }
1023
- ];
1463
+ SafeStylePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeStylePipe, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
1464
+ SafeStylePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeStylePipe, name: "kmsSafeStyle" });
1465
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeStylePipe, decorators: [{
1466
+ type: Pipe,
1467
+ args: [{
1468
+ name: 'kmsSafeStyle',
1469
+ }]
1470
+ }], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; } });
1024
1471
 
1025
1472
  /**
1026
1473
  * @copyright KMS GmbH
@@ -1033,14 +1480,14 @@ class SafeUrlPipe {
1033
1480
  return this.sanitizer.bypassSecurityTrustUrl(url);
1034
1481
  }
1035
1482
  }
1036
- SafeUrlPipe.decorators = [
1037
- { type: Pipe, args: [{
1038
- name: 'kmsSafeSUrl',
1039
- },] }
1040
- ];
1041
- SafeUrlPipe.ctorParameters = () => [
1042
- { type: DomSanitizer }
1043
- ];
1483
+ SafeUrlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeUrlPipe, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
1484
+ SafeUrlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeUrlPipe, name: "kmsSafeSUrl" });
1485
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeUrlPipe, decorators: [{
1486
+ type: Pipe,
1487
+ args: [{
1488
+ name: 'kmsSafeSUrl',
1489
+ }]
1490
+ }], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; } });
1044
1491
 
1045
1492
  /**
1046
1493
  * @copyright KMS GmbH
@@ -1053,25 +1500,28 @@ class SafeResourceUrlPipe {
1053
1500
  return this.sanitizer.bypassSecurityTrustResourceUrl(url);
1054
1501
  }
1055
1502
  }
1056
- SafeResourceUrlPipe.decorators = [
1057
- { type: Pipe, args: [{
1058
- name: 'kmsSafeResourceSUrl',
1059
- },] }
1060
- ];
1061
- SafeResourceUrlPipe.ctorParameters = () => [
1062
- { type: DomSanitizer }
1063
- ];
1503
+ SafeResourceUrlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeResourceUrlPipe, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
1504
+ SafeResourceUrlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeResourceUrlPipe, name: "kmsSafeResourceSUrl" });
1505
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SafeResourceUrlPipe, decorators: [{
1506
+ type: Pipe,
1507
+ args: [{
1508
+ name: 'kmsSafeResourceSUrl',
1509
+ }]
1510
+ }], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; } });
1064
1511
 
1065
1512
  class TypeofPipe {
1066
1513
  transform(value) {
1067
1514
  return typeof value;
1068
1515
  }
1069
1516
  }
1070
- TypeofPipe.decorators = [
1071
- { type: Pipe, args: [{
1072
- name: 'kmsTypeOf',
1073
- },] }
1074
- ];
1517
+ TypeofPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TypeofPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1518
+ TypeofPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TypeofPipe, name: "kmsTypeOf" });
1519
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TypeofPipe, decorators: [{
1520
+ type: Pipe,
1521
+ args: [{
1522
+ name: 'kmsTypeOf',
1523
+ }]
1524
+ }] });
1075
1525
 
1076
1526
  /**
1077
1527
  * @copyright KMS GmbH
@@ -1084,9 +1534,12 @@ class TrimPipe {
1084
1534
  return value.trim();
1085
1535
  }
1086
1536
  }
1087
- TrimPipe.decorators = [
1088
- { type: Pipe, args: [{ name: 'kmsTrim' },] }
1089
- ];
1537
+ TrimPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TrimPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1538
+ TrimPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TrimPipe, name: "kmsTrim" });
1539
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TrimPipe, decorators: [{
1540
+ type: Pipe,
1541
+ args: [{ name: 'kmsTrim' }]
1542
+ }] });
1090
1543
 
1091
1544
  /**
1092
1545
  * @copyright KMS GmbH
@@ -1099,109 +1552,73 @@ class ToNumberPipe {
1099
1552
  return parseInt(items, 10);
1100
1553
  }
1101
1554
  }
1102
- ToNumberPipe.decorators = [
1103
- { type: Pipe, args: [{
1104
- name: 'kmsToNumber',
1105
- pure: false
1106
- },] }
1107
- ];
1555
+ ToNumberPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ToNumberPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1556
+ ToNumberPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ToNumberPipe, name: "kmsToNumber", pure: false });
1557
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ToNumberPipe, decorators: [{
1558
+ type: Pipe,
1559
+ args: [{
1560
+ name: 'kmsToNumber',
1561
+ pure: false
1562
+ }]
1563
+ }] });
1108
1564
 
1109
1565
  /**
1110
1566
  * @copyright KMS GmbH
1111
1567
  */
1112
1568
  class CustomPipesModule {
1113
1569
  }
1114
- CustomPipesModule.decorators = [
1115
- { type: NgModule, args: [{
1116
- declarations: [
1117
- IntegerCurrency,
1118
- SafeHtmlPipe,
1119
- SafeStylePipe,
1120
- SafeResourceUrlPipe,
1121
- SafeUrlPipe,
1122
- EncodeUriPipe,
1123
- DecodeUriPipe,
1124
- TypeofPipe,
1125
- TrimPipe,
1126
- ToNumberPipe,
1127
- ],
1128
- imports: [CommonModule],
1129
- exports: [
1130
- IntegerCurrency,
1131
- SafeHtmlPipe,
1132
- SafeStylePipe,
1133
- SafeResourceUrlPipe,
1134
- SafeUrlPipe,
1135
- EncodeUriPipe,
1136
- DecodeUriPipe,
1137
- TypeofPipe,
1138
- TrimPipe,
1139
- ToNumberPipe,
1140
- ],
1141
- providers: [CurrencyPipe],
1142
- },] }
1143
- ];
1144
-
1145
- /*!
1146
- * @copyright FLYACTS GmbH 2019
1147
- */
1148
- var IconSize;
1149
- (function (IconSize) {
1150
- IconSize["FULLSIZE"] = "size-full";
1151
- IconSize["TINY"] = "size-16";
1152
- IconSize["SMALLER"] = "size-20";
1153
- IconSize["SMALL"] = "size-32";
1154
- IconSize["MEDIUM"] = "size-64";
1155
- IconSize["LARGE"] = "size-128";
1156
- IconSize["XL"] = "size-256";
1157
- IconSize["XXL"] = "size-512";
1158
- IconSize["XXXL"] = "size-1024";
1159
- IconSize["NONE"] = "NONE";
1160
- })(IconSize || (IconSize = {}));
1161
-
1162
- /**
1163
- * @copyright KMS GmbH
1164
- */
1165
- class IconComponent {
1166
- constructor(sanitizer) {
1167
- this.sanitizer = sanitizer;
1168
- /**
1169
- * Optional: Different size via CSS inline style.
1170
- */
1171
- this.iconSize = IconSize.FULLSIZE;
1172
- /**
1173
- * Dont use icon sprite
1174
- */
1175
- this.dontUseSprite = false;
1176
- this.IconSize = IconSize;
1177
- this.Version = VERSION.full;
1178
- this.timestamp = 0;
1179
- this.iconToShow = this.icon;
1180
- }
1181
- ngOnInit() {
1182
- this.iconToShow = this.icon;
1183
- const d = new Date();
1184
- const n = d.getTime();
1185
- this.timestamp = n;
1186
- }
1187
- }
1188
- IconComponent.decorators = [
1189
- { type: Component, args: [{
1190
- selector: 'kms-icon',
1191
- 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",
1192
- styles: [""]
1193
- },] }
1194
- ];
1195
- IconComponent.ctorParameters = () => [
1196
- { type: DomSanitizer }
1197
- ];
1198
- IconComponent.propDecorators = {
1199
- icon: [{ type: Input }],
1200
- iconClass: [{ type: Input }],
1201
- iconStyle: [{ type: Input }],
1202
- iconSize: [{ type: Input }],
1203
- dontUseSprite: [{ type: Input }]
1204
- };
1570
+ CustomPipesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CustomPipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1571
+ CustomPipesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CustomPipesModule, declarations: [IntegerCurrency,
1572
+ SafeHtmlPipe,
1573
+ SafeStylePipe,
1574
+ SafeResourceUrlPipe,
1575
+ SafeUrlPipe,
1576
+ EncodeUriPipe,
1577
+ DecodeUriPipe,
1578
+ TypeofPipe,
1579
+ TrimPipe,
1580
+ ToNumberPipe], imports: [CommonModule], exports: [IntegerCurrency,
1581
+ SafeHtmlPipe,
1582
+ SafeStylePipe,
1583
+ SafeResourceUrlPipe,
1584
+ SafeUrlPipe,
1585
+ EncodeUriPipe,
1586
+ DecodeUriPipe,
1587
+ TypeofPipe,
1588
+ TrimPipe,
1589
+ ToNumberPipe] });
1590
+ CustomPipesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CustomPipesModule, providers: [CurrencyPipe], imports: [[CommonModule]] });
1591
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CustomPipesModule, decorators: [{
1592
+ type: NgModule,
1593
+ args: [{
1594
+ declarations: [
1595
+ IntegerCurrency,
1596
+ SafeHtmlPipe,
1597
+ SafeStylePipe,
1598
+ SafeResourceUrlPipe,
1599
+ SafeUrlPipe,
1600
+ EncodeUriPipe,
1601
+ DecodeUriPipe,
1602
+ TypeofPipe,
1603
+ TrimPipe,
1604
+ ToNumberPipe,
1605
+ ],
1606
+ imports: [CommonModule],
1607
+ exports: [
1608
+ IntegerCurrency,
1609
+ SafeHtmlPipe,
1610
+ SafeStylePipe,
1611
+ SafeResourceUrlPipe,
1612
+ SafeUrlPipe,
1613
+ EncodeUriPipe,
1614
+ DecodeUriPipe,
1615
+ TypeofPipe,
1616
+ TrimPipe,
1617
+ ToNumberPipe,
1618
+ ],
1619
+ providers: [CurrencyPipe],
1620
+ }]
1621
+ }] });
1205
1622
 
1206
1623
  class EnumRadiogroupComponent extends FormControlParentComponent {
1207
1624
  constructor(formBuilder, renderer) {
@@ -1223,28 +1640,34 @@ class EnumRadiogroupComponent extends FormControlParentComponent {
1223
1640
  super.ngOnInit();
1224
1641
  }
1225
1642
  }
1226
- EnumRadiogroupComponent.decorators = [
1227
- { type: Component, args: [{
1228
- selector: 'kms-enum-radiogroup',
1229
- template: "<form [formGroup]=\"form\">\r\n <div>{{ header }}</div>\r\n <mat-radio-group [formControl]=\"form.controls['enumData']\" [disabled]=\"disabled\" #child>\r\n <mat-radio-button [value]=\"choice\" [checked]=\"value === choice\" *ngFor=\"let choice of optionValues\">{{ translationPrefix + '.' + choice | translate }}</mat-radio-button>\r\n </mat-radio-group>\r\n</form>",
1230
- providers: [
1231
- {
1232
- provide: NG_VALUE_ACCESSOR,
1233
- useExisting: forwardRef(() => EnumRadiogroupComponent),
1234
- multi: true,
1235
- },
1236
- ]
1237
- },] }
1238
- ];
1239
- EnumRadiogroupComponent.ctorParameters = () => [
1240
- { type: FormBuilder },
1241
- { type: Renderer2 }
1242
- ];
1243
- EnumRadiogroupComponent.propDecorators = {
1244
- header: [{ type: Input }],
1245
- optionsEnum: [{ type: Input }],
1246
- translationPrefix: [{ type: Input }]
1247
- };
1643
+ EnumRadiogroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EnumRadiogroupComponent, deps: [{ token: i1$1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
1644
+ EnumRadiogroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: EnumRadiogroupComponent, selector: "kms-enum-radiogroup", inputs: { header: "header", optionsEnum: "optionsEnum", translationPrefix: "translationPrefix" }, providers: [
1645
+ {
1646
+ provide: NG_VALUE_ACCESSOR,
1647
+ useExisting: forwardRef(() => EnumRadiogroupComponent),
1648
+ multi: true,
1649
+ },
1650
+ ], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\">\r\n <div>{{ header }}</div>\r\n <mat-radio-group [formControl]=\"form.controls['enumData']\" [disabled]=\"disabled\" #child>\r\n <mat-radio-button [value]=\"choice\" [checked]=\"value === choice\" *ngFor=\"let choice of optionValues\">{{ translationPrefix + '.' + choice | translate }}</mat-radio-button>\r\n </mat-radio-group>\r\n</form>", components: [{ type: i2$2.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }], directives: [{ type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$2.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i5$1.TranslatePipe } });
1651
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EnumRadiogroupComponent, decorators: [{
1652
+ type: Component,
1653
+ args: [{
1654
+ selector: 'kms-enum-radiogroup',
1655
+ templateUrl: './enum-radiogroup.component.html',
1656
+ providers: [
1657
+ {
1658
+ provide: NG_VALUE_ACCESSOR,
1659
+ useExisting: forwardRef(() => EnumRadiogroupComponent),
1660
+ multi: true,
1661
+ },
1662
+ ],
1663
+ }]
1664
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: i0.Renderer2 }]; }, propDecorators: { header: [{
1665
+ type: Input
1666
+ }], optionsEnum: [{
1667
+ type: Input
1668
+ }], translationPrefix: [{
1669
+ type: Input
1670
+ }] } });
1248
1671
 
1249
1672
  /*!
1250
1673
  * @copyright FLYACTS GmbH 2019
@@ -1258,27 +1681,31 @@ class KMSAccordionItemComponent {
1258
1681
  this.itemTitle = '';
1259
1682
  this.showAsCard = false;
1260
1683
  this.isSmall = false;
1684
+ this.expanded = false;
1261
1685
  this.panelOpenState = false;
1262
1686
  }
1263
1687
  ngOnInit() {
1264
1688
  this.itemTitleTrustHtml = this.sanitizer.bypassSecurityTrustHtml(this.itemTitle);
1265
1689
  }
1266
1690
  }
1267
- KMSAccordionItemComponent.decorators = [
1268
- { type: Component, args: [{
1269
- selector: 'kms-accordion-item',
1270
- template: "<mat-expansion-panel\r\n class=\"accordion-item\" \r\n [ngClass]=\"{showAsCard: showAsCard, showFlat: !showAsCard, isSmall: isSmall}\"\r\n (opened)=\"panelOpenState = true\" \r\n (closed)=\"panelOpenState = false\"\r\n hideToggle=\"true\">\r\n <mat-expansion-panel-header class=\"accordion-item-header\">\r\n <mat-panel-title class=\"mat-subheading-2 accordion-item-title\">\r\n <div [innerHtml]=\"itemTitleTrustHtml\"></div>\r\n <ng-content select=\"[itemTitleElement]\"></ng-content> \r\n </mat-panel-title>\r\n <div class=\"accordion-item-header-icon-wrapper\">\r\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"ic_plus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\r\n <kms-icon *ngIf=\"panelOpenState\" icon=\"ic_minus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\r\n\r\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"chevron-down\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\r\n <kms-icon *ngIf=\"panelOpenState\" icon=\"chevron-top\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\r\n </div>\r\n </mat-expansion-panel-header>\r\n <ng-content></ng-content>\r\n</mat-expansion-panel>",
1271
- styles: [""]
1272
- },] }
1273
- ];
1274
- KMSAccordionItemComponent.ctorParameters = () => [
1275
- { type: DomSanitizer }
1276
- ];
1277
- KMSAccordionItemComponent.propDecorators = {
1278
- itemTitle: [{ type: Input }],
1279
- showAsCard: [{ type: Input }],
1280
- isSmall: [{ type: Input }]
1281
- };
1691
+ KMSAccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KMSAccordionItemComponent, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
1692
+ KMSAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KMSAccordionItemComponent, selector: "kms-accordion-item", inputs: { itemTitle: "itemTitle", showAsCard: "showAsCard", isSmall: "isSmall", expanded: "expanded" }, ngImport: i0, template: "<mat-expansion-panel\r\n class=\"accordion-item\"\r\n [ngClass]=\"{showAsCard: showAsCard, showFlat: !showAsCard, isSmall: isSmall}\"\r\n (opened)=\"panelOpenState = true\"\r\n (closed)=\"panelOpenState = false\"\r\n [expanded] = \"expanded\"\r\n hideToggle=\"true\">\r\n <mat-expansion-panel-header class=\"accordion-item-header\">\r\n <mat-panel-title class=\"mat-subheading-2 accordion-item-title\">\r\n <div [innerHtml]=\"itemTitleTrustHtml\"></div>\r\n <ng-content select=\"[itemTitleElement]\"></ng-content>\r\n </mat-panel-title>\r\n <div class=\"accordion-item-header-icon-wrapper\">\r\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"ic_plus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\r\n <kms-icon *ngIf=\"panelOpenState\" icon=\"ic_minus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\r\n\r\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"chevron-down\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\r\n <kms-icon *ngIf=\"panelOpenState\" icon=\"chevron-top\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\r\n </div>\r\n </mat-expansion-panel-header>\r\n <ng-content></ng-content>\r\n</mat-expansion-panel>\r\n", styles: [""], components: [{ type: i2$4.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i2$4.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2$4.MatExpansionPanelTitle, selector: "mat-panel-title" }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1693
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KMSAccordionItemComponent, decorators: [{
1694
+ type: Component,
1695
+ args: [{
1696
+ selector: 'kms-accordion-item',
1697
+ templateUrl: './kms-accordion-item.component.html',
1698
+ styleUrls: ['./kms-accordion-item.component.scss'],
1699
+ }]
1700
+ }], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; }, propDecorators: { itemTitle: [{
1701
+ type: Input
1702
+ }], showAsCard: [{
1703
+ type: Input
1704
+ }], isSmall: [{
1705
+ type: Input
1706
+ }], expanded: [{
1707
+ type: Input
1708
+ }] } });
1282
1709
 
1283
1710
  /**
1284
1711
  * @copyright KMS GmbH
@@ -1483,12 +1910,14 @@ class ViewportService {
1483
1910
  }
1484
1911
  }
1485
1912
  }
1486
- ViewportService.decorators = [
1487
- { type: Injectable }
1488
- ];
1489
- ViewportService.ctorParameters = () => [
1490
- { type: Object, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }
1491
- ];
1913
+ ViewportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewportService, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
1914
+ ViewportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewportService });
1915
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewportService, decorators: [{
1916
+ type: Injectable
1917
+ }], ctorParameters: function () { return [{ type: Object, decorators: [{
1918
+ type: Inject,
1919
+ args: [PLATFORM_ID]
1920
+ }] }]; } });
1492
1921
 
1493
1922
  /*!
1494
1923
  * @copyright FLYACTS GmbH 2019
@@ -1611,19 +2040,18 @@ class MapComponent {
1611
2040
  }
1612
2041
  }
1613
2042
  }
1614
- MapComponent.decorators = [
1615
- { type: Component, args: [{
1616
- selector: 'kms-map',
1617
- template: "<div *ngIf=\"geoDataFoundForAddress && widthSet\">\r\n <google-map\r\n height=\"415px\"\r\n [width]=\"width\"\r\n [zoom]=\"zoom\"\r\n [center]=\"center\"\r\n [options]=\"options\"\r\n >\r\n <map-marker\r\n *ngFor=\"let marker of markers\"\r\n [position]=\"marker.position\"\r\n [label]=\"marker.label\"\r\n [title]=\"marker.title\"\r\n [options]=\"marker.options\"\r\n >\r\n </map-marker>\r\n </google-map>\r\n</div>",
1618
- styles: [""]
1619
- },] }
1620
- ];
1621
- MapComponent.ctorParameters = () => [
1622
- { type: ViewportService }
1623
- ];
1624
- MapComponent.propDecorators = {
1625
- data: [{ type: Input }]
1626
- };
2043
+ MapComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MapComponent, deps: [{ token: ViewportService }], target: i0.ɵɵFactoryTarget.Component });
2044
+ MapComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: MapComponent, selector: "kms-map", inputs: { data: "data" }, ngImport: i0, template: "<div *ngIf=\"geoDataFoundForAddress && widthSet\">\r\n <google-map\r\n height=\"415px\"\r\n [width]=\"width\"\r\n [zoom]=\"zoom\"\r\n [center]=\"center\"\r\n [options]=\"options\"\r\n >\r\n <map-marker\r\n *ngFor=\"let marker of markers\"\r\n [position]=\"marker.position\"\r\n [label]=\"marker.label\"\r\n [title]=\"marker.title\"\r\n [options]=\"marker.options\"\r\n >\r\n </map-marker>\r\n </google-map>\r\n</div>", styles: [""], components: [{ type: i2$5.GoogleMap, selector: "google-map", inputs: ["height", "width", "center", "zoom", "options", "mapTypeId"], outputs: ["authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$5.MapMarker, selector: "map-marker", inputs: ["title", "position", "label", "clickable", "options", "icon", "visible"], outputs: ["animationChanged", "mapClick", "clickableChanged", "cursorChanged", "mapDblclick", "mapDrag", "mapDragend", "draggableChanged", "mapDragstart", "flatChanged", "iconChanged", "mapMousedown", "mapMouseout", "mapMouseover", "mapMouseup", "positionChanged", "mapRightclick", "shapeChanged", "titleChanged", "visibleChanged", "zindexChanged"], exportAs: ["mapMarker"] }] });
2045
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MapComponent, decorators: [{
2046
+ type: Component,
2047
+ args: [{
2048
+ selector: 'kms-map',
2049
+ templateUrl: './map.component.html',
2050
+ styleUrls: ['./map.component.scss']
2051
+ }]
2052
+ }], ctorParameters: function () { return [{ type: ViewportService }]; }, propDecorators: { data: [{
2053
+ type: Input
2054
+ }] } });
1627
2055
 
1628
2056
  // TODO change values after cleaned up database
1629
2057
  var SalutationEnum;
@@ -1657,79 +2085,48 @@ class SalutationDropdownComponent extends FormControlParentComponent {
1657
2085
  super.ngOnInit();
1658
2086
  }
1659
2087
  }
1660
- SalutationDropdownComponent.decorators = [
1661
- { type: Component, args: [{
1662
- selector: 'kms-salutation-dropdown',
1663
- template: "<form [formGroup]=\"form\" class=\"row\">\r\n <mat-form-field class=\"col\">\r\n <mat-select disableOptionCentering [formControl]=\"form.controls['salut']\" [placeholder]=\"placeholder\" [value]=\"value\" #child>\r\n <mat-option [value]=\"SalutationEnum.NOT_SPECIFIED\">{{ 'general.salutation.' + Object.keys(SalutationEnum)[0]?.toLowerCase() | translate }}</mat-option>\r\n <mat-option [value]=\"SalutationEnum.MALE\">{{ 'general.salutation.' + Object.keys(SalutationEnum)[1]?.toLowerCase() | translate }}</mat-option>\r\n <mat-option [value]=\"SalutationEnum.FEMALE\">{{ 'general.salutation.' + Object.keys(SalutationEnum)[2]?.toLowerCase() | translate }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</form>",
1664
- providers: [
1665
- {
1666
- provide: NG_VALUE_ACCESSOR,
1667
- useExisting: forwardRef(() => SalutationDropdownComponent),
1668
- multi: true,
1669
- },
1670
- ]
1671
- },] }
1672
- ];
1673
- SalutationDropdownComponent.ctorParameters = () => [
1674
- { type: FormBuilder },
1675
- { type: Renderer2 }
1676
- ];
1677
- SalutationDropdownComponent.propDecorators = {
1678
- placeholder: [{ type: Input }]
1679
- };
2088
+ SalutationDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SalutationDropdownComponent, deps: [{ token: i1$1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
2089
+ SalutationDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SalutationDropdownComponent, selector: "kms-salutation-dropdown", inputs: { placeholder: "placeholder" }, providers: [
2090
+ {
2091
+ provide: NG_VALUE_ACCESSOR,
2092
+ useExisting: forwardRef(() => SalutationDropdownComponent),
2093
+ multi: true,
2094
+ },
2095
+ ], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" class=\"row\">\r\n <mat-form-field class=\"col\">\r\n <mat-select disableOptionCentering [formControl]=\"form.controls['salut']\" [placeholder]=\"placeholder\" [value]=\"value\" #child>\r\n <mat-option [value]=\"SalutationEnum.NOT_SPECIFIED\">{{ 'general.salutation.' + Object.keys(SalutationEnum)[0]?.toLowerCase() | translate }}</mat-option>\r\n <mat-option [value]=\"SalutationEnum.MALE\">{{ 'general.salutation.' + Object.keys(SalutationEnum)[1]?.toLowerCase() | translate }}</mat-option>\r\n <mat-option [value]=\"SalutationEnum.FEMALE\">{{ 'general.salutation.' + Object.keys(SalutationEnum)[2]?.toLowerCase() | translate }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</form>", components: [{ type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], 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$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "translate": i5$1.TranslatePipe } });
2096
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SalutationDropdownComponent, decorators: [{
2097
+ type: Component,
2098
+ args: [{
2099
+ selector: 'kms-salutation-dropdown',
2100
+ templateUrl: './salutation-dropdown.component.html',
2101
+ providers: [
2102
+ {
2103
+ provide: NG_VALUE_ACCESSOR,
2104
+ useExisting: forwardRef(() => SalutationDropdownComponent),
2105
+ multi: true,
2106
+ },
2107
+ ],
2108
+ }]
2109
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: i0.Renderer2 }]; }, propDecorators: { placeholder: [{
2110
+ type: Input
2111
+ }] } });
1680
2112
 
1681
2113
  class TooltipComponent {
1682
2114
  constructor() {
1683
2115
  this.tooltipTitle = "";
1684
2116
  }
1685
2117
  }
1686
- TooltipComponent.decorators = [
1687
- { type: Component, args: [{
1688
- selector: 'kms-tooltip-element',
1689
- template: "<ng-content></ng-content>",
1690
- styles: ["[kmsTooltip]{position:relative}\n"]
1691
- },] }
1692
- ];
1693
- TooltipComponent.propDecorators = {
1694
- tooltipTitle: [{ type: Input }]
1695
- };
1696
-
1697
- /*!
1698
- * @copyright FLYACTS GmbH 2019
1699
- */
1700
-
1701
- /**
1702
- * Attached File DTO
1703
- */
1704
- class AttachedFileDTO {
1705
- }
1706
-
1707
- class TooltipIconComponent {
1708
- constructor() {
1709
- this.tooltipTitle = "";
1710
- this.tooltipText = "";
1711
- this.tooltipLinkText = "";
1712
- this.tooltipLinkUrl = "";
1713
- this.placement = "";
1714
- this.delay = 1000;
1715
- this.IconSize = IconSize$1;
1716
- }
1717
- }
1718
- TooltipIconComponent.decorators = [
1719
- { type: Component, args: [{
1720
- selector: 'kms-tooltip-icon',
1721
- template: "<span\r\n kmsTooltip\r\n [tooltipTitle]=\"tooltipTitle\"\r\n [tooltipText]=\"tooltipText\"\r\n [tooltipPlacement]=\"placement\"\r\n [tooltipDelay]=\"delay\"\r\n [tooltipLinkText]=\"tooltipLinkText\"\r\n [tooltipLinkUrl]=\"tooltipLinkUrl\"\r\n>\r\n <kms-icon icon=\"ic_info\" [iconSize]=\"IconSize.SMALLER\" [iconClass]=\"'color-primary'\"></kms-icon>\r\n</span>\r\n",
1722
- styles: [""]
1723
- },] }
1724
- ];
1725
- TooltipIconComponent.propDecorators = {
1726
- tooltipTitle: [{ type: Input }],
1727
- tooltipText: [{ type: Input }],
1728
- tooltipLinkText: [{ type: Input }],
1729
- tooltipLinkUrl: [{ type: Input }],
1730
- placement: [{ type: Input }],
1731
- delay: [{ type: Input }]
1732
- };
2118
+ TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2119
+ TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TooltipComponent, selector: "kms-tooltip-element", inputs: { tooltipTitle: "tooltipTitle" }, ngImport: i0, template: "<ng-content></ng-content>", styles: ["[kmsTooltip]{position:relative}\n"] });
2120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipComponent, decorators: [{
2121
+ type: Component,
2122
+ args: [{
2123
+ selector: 'kms-tooltip-element',
2124
+ templateUrl: './tooltip.component.html',
2125
+ styleUrls: ['./tooltip.component.scss']
2126
+ }]
2127
+ }], propDecorators: { tooltipTitle: [{
2128
+ type: Input
2129
+ }] } });
1733
2130
 
1734
2131
  class SalutationRadiogroupComponent extends FormControlParentComponent {
1735
2132
  constructor(formBuilder, renderer) {
@@ -1752,23 +2149,28 @@ class SalutationRadiogroupComponent extends FormControlParentComponent {
1752
2149
  super.ngOnInit();
1753
2150
  }
1754
2151
  }
1755
- SalutationRadiogroupComponent.decorators = [
1756
- { type: Component, args: [{
1757
- selector: 'kms-salutation-radiogroup',
1758
- template: "<form [formGroup]=\"form\" >\r\n <mat-radio-group [formControl]=\"form.controls['salut']\" [disabled]=\"disabled\" #radioGroup>\r\n <mat-radio-button color=\"primary\" [value]=\"SalutationEnum.NOT_SPECIFIED\" [checked]=\"value === SalutationEnum.NOT_SPECIFIED\">\r\n {{ 'general.salutation.' + Object.keys(SalutationEnum)[0]?.toLowerCase() | translate }}\r\n </mat-radio-button>\r\n <mat-radio-button color=\"primary\" [value]=\"SalutationEnum.MALE\" [checked]=\"value === SalutationEnum.MALE\">\r\n {{ 'general.salutation.' + Object.keys(SalutationEnum)[1]?.toLowerCase() | translate }}\r\n </mat-radio-button>\r\n <mat-radio-button color=\"primary\" [value]=\"SalutationEnum.FEMALE\" [checked]=\"value === SalutationEnum.FEMALE\">\r\n {{ 'general.salutation.' + Object.keys(SalutationEnum)[2]?.toLowerCase() | translate }}\r\n </mat-radio-button>\r\n </mat-radio-group>\r\n</form>",
1759
- providers: [
1760
- {
1761
- provide: NG_VALUE_ACCESSOR,
1762
- useExisting: forwardRef(() => SalutationRadiogroupComponent),
1763
- multi: true,
1764
- },
1765
- ]
1766
- },] }
1767
- ];
1768
- SalutationRadiogroupComponent.ctorParameters = () => [
1769
- { type: FormBuilder },
1770
- { type: Renderer2 }
1771
- ];
2152
+ SalutationRadiogroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SalutationRadiogroupComponent, deps: [{ token: i1$1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
2153
+ SalutationRadiogroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SalutationRadiogroupComponent, selector: "kms-salutation-radiogroup", providers: [
2154
+ {
2155
+ provide: NG_VALUE_ACCESSOR,
2156
+ useExisting: forwardRef(() => SalutationRadiogroupComponent),
2157
+ multi: true,
2158
+ },
2159
+ ], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" >\r\n <mat-radio-group [formControl]=\"form.controls['salut']\" [disabled]=\"disabled\" #radioGroup>\r\n <mat-radio-button color=\"primary\" [value]=\"SalutationEnum.NOT_SPECIFIED\" [checked]=\"value === SalutationEnum.NOT_SPECIFIED\">\r\n {{ 'general.salutation.' + Object.keys(SalutationEnum)[0]?.toLowerCase() | translate }}\r\n </mat-radio-button>\r\n <mat-radio-button color=\"primary\" [value]=\"SalutationEnum.MALE\" [checked]=\"value === SalutationEnum.MALE\">\r\n {{ 'general.salutation.' + Object.keys(SalutationEnum)[1]?.toLowerCase() | translate }}\r\n </mat-radio-button>\r\n <mat-radio-button color=\"primary\" [value]=\"SalutationEnum.FEMALE\" [checked]=\"value === SalutationEnum.FEMALE\">\r\n {{ 'general.salutation.' + Object.keys(SalutationEnum)[2]?.toLowerCase() | translate }}\r\n </mat-radio-button>\r\n </mat-radio-group>\r\n</form>", components: [{ type: i2$2.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }], directives: [{ type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$2.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "translate": i5$1.TranslatePipe } });
2160
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SalutationRadiogroupComponent, decorators: [{
2161
+ type: Component,
2162
+ args: [{
2163
+ selector: 'kms-salutation-radiogroup',
2164
+ templateUrl: './salutation-radiogroup.component.html',
2165
+ providers: [
2166
+ {
2167
+ provide: NG_VALUE_ACCESSOR,
2168
+ useExisting: forwardRef(() => SalutationRadiogroupComponent),
2169
+ multi: true,
2170
+ },
2171
+ ],
2172
+ }]
2173
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: i0.Renderer2 }]; } });
1772
2174
 
1773
2175
  /**
1774
2176
  * @copyright KMS GmbH
@@ -1801,18 +2203,21 @@ class BackToTopComponent {
1801
2203
  }
1802
2204
  }
1803
2205
  }
1804
- BackToTopComponent.decorators = [
1805
- { type: Component, args: [{
1806
- selector: 'kms-back-to-top',
1807
- template: "<div class=\"scrollToTop\"\r\n [ngClass]=\"{'show': windowScrolled}\"\r\n (click)=\"scrollToTop()\">\r\n <div class=\"scrollToTop-inner\">\r\n <kms-icon icon=\"floating_button_clear\" iconClass=\"color-white\"></kms-icon>\r\n </div>\r\n</div>"
1808
- },] }
1809
- ];
1810
- BackToTopComponent.ctorParameters = () => [
1811
- { type: Object, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }
1812
- ];
1813
- BackToTopComponent.propDecorators = {
1814
- onWindowScroll: [{ type: HostListener, args: ['window:scroll', [],] }]
1815
- };
2206
+ BackToTopComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BackToTopComponent, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component });
2207
+ BackToTopComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: BackToTopComponent, selector: "kms-back-to-top", host: { listeners: { "window:scroll": "onWindowScroll()" } }, ngImport: i0, template: "<div class=\"scrollToTop\"\r\n [ngClass]=\"{'show': windowScrolled}\"\r\n (click)=\"scrollToTop()\">\r\n <div class=\"scrollToTop-inner\">\r\n <kms-icon icon=\"floating_button_clear\" iconClass=\"color-white\"></kms-icon>\r\n </div>\r\n</div>", components: [{ type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BackToTopComponent, decorators: [{
2209
+ type: Component,
2210
+ args: [{
2211
+ selector: 'kms-back-to-top',
2212
+ templateUrl: './back-to-top.component.html',
2213
+ }]
2214
+ }], ctorParameters: function () { return [{ type: Object, decorators: [{
2215
+ type: Inject,
2216
+ args: [PLATFORM_ID]
2217
+ }] }]; }, propDecorators: { onWindowScroll: [{
2218
+ type: HostListener,
2219
+ args: ['window:scroll', []]
2220
+ }] } });
1816
2221
 
1817
2222
  var ButtonResponseType;
1818
2223
  (function (ButtonResponseType) {
@@ -1857,18 +2262,19 @@ class GenericDialogComponent {
1857
2262
  });
1858
2263
  }
1859
2264
  }
1860
- GenericDialogComponent.decorators = [
1861
- { type: Component, args: [{
1862
- selector: 'kms-generic-dialog',
1863
- 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",
1864
- styles: [""]
1865
- },] }
1866
- ];
1867
- GenericDialogComponent.ctorParameters = () => [
1868
- { type: MatDialogRef },
1869
- { type: NgZone },
1870
- { type: undefined, decorators: [{ type: Inject, args: [MAT_DIALOG_DATA,] }] }
1871
- ];
2265
+ GenericDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: GenericDialogComponent, deps: [{ token: i1$4.MatDialogRef }, { token: i0.NgZone }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
2266
+ 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$3.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$4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1$4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i1$4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }] });
2267
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: GenericDialogComponent, decorators: [{
2268
+ type: Component,
2269
+ args: [{
2270
+ selector: 'kms-generic-dialog',
2271
+ templateUrl: './generic-dialog.component.html',
2272
+ styleUrls: ['./generic-dialog.component.scss'],
2273
+ }]
2274
+ }], ctorParameters: function () { return [{ type: i1$4.MatDialogRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
2275
+ type: Inject,
2276
+ args: [MAT_DIALOG_DATA]
2277
+ }] }]; } });
1872
2278
 
1873
2279
  class ButtonWithConfirmDialogComponent {
1874
2280
  // eslint-disable-next-line @typescript-eslint/no-empty-function
@@ -1902,24 +2308,28 @@ class ButtonWithConfirmDialogComponent {
1902
2308
  });
1903
2309
  }
1904
2310
  }
1905
- ButtonWithConfirmDialogComponent.decorators = [
1906
- { type: Component, args: [{
1907
- selector: 'kms-button-with-confirm-dialog',
1908
- template: "<button\r\n type=\"button\"\r\n (click)=\"start()\"\r\n mat-stroked-button\r\n [disabled]=\"disabled\"\r\n>\r\n {{ buttonText }}\r\n</button>\r\n",
1909
- styles: [""]
1910
- },] }
1911
- ];
1912
- ButtonWithConfirmDialogComponent.ctorParameters = () => [
1913
- { type: MatDialog }
1914
- ];
1915
- ButtonWithConfirmDialogComponent.propDecorators = {
1916
- disabled: [{ type: Input }],
1917
- buttonText: [{ type: Input }],
1918
- confirmTitle: [{ type: Input }],
1919
- confirmTextYes: [{ type: Input }],
1920
- confirmTextNo: [{ type: Input }],
1921
- onConfirmClosed: [{ type: Output }]
1922
- };
2311
+ ButtonWithConfirmDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonWithConfirmDialogComponent, deps: [{ token: i1$4.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
2312
+ ButtonWithConfirmDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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\r\n type=\"button\"\r\n (click)=\"start()\"\r\n mat-stroked-button\r\n [disabled]=\"disabled\"\r\n>\r\n {{ buttonText }}\r\n</button>\r\n", styles: [""], components: [{ type: i2$3.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"] }] });
2313
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonWithConfirmDialogComponent, decorators: [{
2314
+ type: Component,
2315
+ args: [{
2316
+ selector: 'kms-button-with-confirm-dialog',
2317
+ templateUrl: './button-with-confirm-dialog.component.html',
2318
+ styleUrls: ['./button-with-confirm-dialog.component.scss'],
2319
+ }]
2320
+ }], ctorParameters: function () { return [{ type: i1$4.MatDialog }]; }, propDecorators: { disabled: [{
2321
+ type: Input
2322
+ }], buttonText: [{
2323
+ type: Input
2324
+ }], confirmTitle: [{
2325
+ type: Input
2326
+ }], confirmTextYes: [{
2327
+ type: Input
2328
+ }], confirmTextNo: [{
2329
+ type: Input
2330
+ }], onConfirmClosed: [{
2331
+ type: Output
2332
+ }] } });
1923
2333
 
1924
2334
  /**
1925
2335
  * Dropdown from data component {@link https://leaseplan-dev.rentoffice.de/styleguide#ui-elements}
@@ -2030,114 +2440,309 @@ class DropdownFromDataComponent extends FormControlParentComponent {
2030
2440
  this.onSelectItemEmitter.emit(value);
2031
2441
  }
2032
2442
  }
2033
- DropdownFromDataComponent.decorators = [
2034
- { type: Component, args: [{
2035
- selector: 'kms-dropdown-from-data',
2036
- template: "<form [formGroup]=\"form\">\r\n <mat-form-field [attr.required]=\"required\" [floatLabel]=\"placeholder ? 'always' : 'auto'\">\r\n <mat-label>{{ label }}</mat-label>\r\n <mat-select\r\n placeholder=\"{{ placeholder }}\"\r\n disableOptionCentering\r\n [(value)]=\"value\"\r\n (selectionChange)=\"valueChanged($event?.value)\"\r\n #child\r\n [disabled]=\"disabled\"\r\n >\r\n <mat-option *ngFor=\"let key of keys; let i = index\" [value]=\"values[i]\">\r\n <span>{{ setDisplayKey(key) }}</span>\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</form>\r\n",
2037
- providers: [
2038
- {
2039
- provide: NG_VALUE_ACCESSOR,
2040
- useExisting: forwardRef(() => DropdownFromDataComponent),
2041
- multi: true,
2042
- },
2043
- ]
2044
- },] }
2045
- ];
2046
- DropdownFromDataComponent.ctorParameters = () => [
2047
- { type: FormBuilder },
2048
- { type: Renderer2 }
2049
- ];
2050
- DropdownFromDataComponent.propDecorators = {
2051
- optionsEnum: [{ type: Input }],
2052
- optionsPlainArray: [{ type: Input }],
2053
- optionsObjArray: [{ type: Input }],
2054
- mapKey: [{ type: Input }],
2055
- mapValue: [{ type: Input }],
2056
- hasNullOption: [{ type: Input }],
2057
- translation: [{ type: Input }],
2058
- placeholder: [{ type: Input }],
2059
- label: [{ type: Input }],
2060
- required: [{ type: Input }],
2061
- useEnumIndexAsValue: [{ type: Input }]
2062
- };
2443
+ DropdownFromDataComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropdownFromDataComponent, deps: [{ token: i1$1.FormBuilder }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
2444
+ DropdownFromDataComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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" }, providers: [
2445
+ {
2446
+ provide: NG_VALUE_ACCESSOR,
2447
+ useExisting: forwardRef(() => DropdownFromDataComponent),
2448
+ multi: true,
2449
+ },
2450
+ ], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"form\">\r\n <mat-form-field [attr.required]=\"required\" [floatLabel]=\"placeholder ? 'always' : 'auto'\">\r\n <mat-label>{{ label }}</mat-label>\r\n <mat-select\r\n placeholder=\"{{ placeholder }}\"\r\n disableOptionCentering\r\n [(value)]=\"value\"\r\n (selectionChange)=\"valueChanged($event?.value)\"\r\n #child\r\n [disabled]=\"disabled\"\r\n >\r\n <mat-option *ngFor=\"let key of keys; let i = index\" [value]=\"values[i]\">\r\n <span>{{ setDisplayKey(key) }}</span>\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</form>\r\n", components: [{ type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], 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$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$1.MatLabel, selector: "mat-label" }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
2451
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropdownFromDataComponent, decorators: [{
2452
+ type: Component,
2453
+ args: [{
2454
+ selector: 'kms-dropdown-from-data',
2455
+ templateUrl: './dropdown-from-data.component.html',
2456
+ providers: [
2457
+ {
2458
+ provide: NG_VALUE_ACCESSOR,
2459
+ useExisting: forwardRef(() => DropdownFromDataComponent),
2460
+ multi: true,
2461
+ },
2462
+ ],
2463
+ }]
2464
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }, { type: i0.Renderer2 }]; }, propDecorators: { optionsEnum: [{
2465
+ type: Input
2466
+ }], optionsPlainArray: [{
2467
+ type: Input
2468
+ }], optionsObjArray: [{
2469
+ type: Input
2470
+ }], mapKey: [{
2471
+ type: Input
2472
+ }], mapValue: [{
2473
+ type: Input
2474
+ }], hasNullOption: [{
2475
+ type: Input
2476
+ }], translation: [{
2477
+ type: Input
2478
+ }], placeholder: [{
2479
+ type: Input
2480
+ }], label: [{
2481
+ type: Input
2482
+ }], required: [{
2483
+ type: Input
2484
+ }], useEnumIndexAsValue: [{
2485
+ type: Input
2486
+ }] } });
2063
2487
 
2064
2488
  /*!
2065
2489
  * @copyright FLYACTS GmbH 2019
2066
2490
  */
2067
- class ImageSliderComponent {
2068
- constructor(sanitizer) {
2069
- this.sanitizer = sanitizer;
2070
- this.editMode = false;
2071
- this.orderChanged = new EventEmitter();
2072
- this.deleteImageEvent = new EventEmitter();
2491
+ class SwipeDirective {
2492
+ constructor() {
2073
2493
  /**
2074
- * Optional: Define Swipe behaviour configuration.
2075
- * Default is 10% for the threshold definition until a swipe triggers next/previous slide.
2494
+ * Output Event that is emitted during swipe process (mouse move or touch move event).
2495
+ * Can be used for calculation purposes.
2076
2496
  */
2077
- this.swipeConfig = {
2078
- swipeThreshold: 5,
2079
- swipeThresholdType: '%',
2080
- swipeLocalPosition: true,
2081
- };
2082
- this.selectedSlide = 0;
2083
- this.isLastClickedInSliderImage = false;
2084
- this.config = {
2085
- initialSlide: 0,
2086
- slidesPerView: 3,
2087
- navigation: {
2088
- nextEl: '.swiper-button-next',
2089
- prevEl: '.swiper-button-prev',
2090
- },
2091
- watchOverflow: true,
2092
- autoHeight: true,
2093
- allowTouchMove: false,
2094
- spaceBetween: 30,
2095
- on: {
2096
- slideChange: () => {
2097
- // do something
2098
- },
2099
- slideChangeTransitionEnd: () => {
2100
- // do something
2101
- },
2102
- },
2103
- };
2104
- }
2105
- ngOnInit() {
2106
- if (this.slides) {
2107
- // TODO use Pipe safeStyle
2108
- this.selectedSlideImage = this.sanitizer.bypassSecurityTrustStyle('url(' + this.slides[0] + ')');
2109
- }
2110
- }
2111
- // !TODO
2112
- onKeydownHandler(event) {
2113
- if (event.key === 'ArrowRight') {
2114
- this.nextSlide();
2115
- }
2116
- if (event.key === 'ArrowLeft') {
2117
- this.previousSlide();
2118
- }
2497
+ this.moveEvent = new EventEmitter();
2498
+ /**
2499
+ * Output Event that is emitted when swipe process end (mouse up or touch end event).
2500
+ * Can be used for calculation purposes.
2501
+ */
2502
+ this.releaseEvent = new EventEmitter();
2503
+ this._startPosition = -1;
2504
+ this._lastPosX = 0;
2505
+ this._thresholdWasReached = false;
2506
+ this._timeStart = 0;
2119
2507
  }
2120
2508
  /**
2121
- * Slide follows the finger or mouse according to it´s move delta.
2122
- * @param event SwipeMoveEvent
2509
+ * Needed config that defines swipe behaviour.
2510
+ * @param options SwipeOptions
2123
2511
  */
2124
- handleMoveEvent(event) {
2125
- // certain move threshold needs to be reached
2126
- if (!event.thresholdWasReached) {
2127
- return;
2512
+ set config(options) {
2513
+ if (options) {
2514
+ this._swipeOptions = options;
2128
2515
  }
2129
- this.config.direction = event.direction === 1 ? 'horizontal' : 'vertical';
2130
2516
  }
2517
+ onMouseDown(event) {
2518
+ this.calculateStartPosition(event);
2519
+ }
2520
+ onMove(event) {
2521
+ this.move(event);
2522
+ }
2523
+ onRelease(event) {
2524
+ this.release(event);
2525
+ this.reset();
2526
+ }
2527
+ // ** PRIVATE ** //
2131
2528
  /**
2132
- * Mouse up or slide container was left.
2133
- * @param event SwipeReleaseEvent
2529
+ * Function checks if the current moving delta is inside the defined threshold.
2530
+ * Sets the flag to true if the threshold was reached once.
2134
2531
  */
2135
- handleReleaseEvent(event) {
2136
- if (!event.thresholdWasReached) {
2532
+ checkThreshold(moveEvent) {
2533
+ const percentage = this._swipeOptions && this._swipeOptions.swipeThresholdType === '%';
2534
+ if (!percentage && this._swipeOptions && moveEvent.swipeDistanceTotal < this._swipeOptions.swipeThreshold) {
2137
2535
  return;
2138
2536
  }
2139
- // Just do if user clicked to slide on image and not on arrow or other element
2140
- if (!this.isLastClickedInSliderImage) {
2537
+ else if (percentage &&
2538
+ this._swipeOptions &&
2539
+ moveEvent.swipeDistancePercentage < this._swipeOptions.swipeThreshold / 100) {
2540
+ return;
2541
+ }
2542
+ else {
2543
+ this._thresholdWasReached = true;
2544
+ }
2545
+ }
2546
+ calculateStartPosition(event) {
2547
+ // detect if touch or click
2548
+ this._isMobile = event.type === 'touchstart';
2549
+ // save start position
2550
+ if (this._swipeOptions && this._swipeOptions.swipeLocalPosition) {
2551
+ if (this._isMobile) {
2552
+ const touch = event.touches[0];
2553
+ this._startPosition = this._swipeOptions.swipeLocalPosition ? touch.clientX : touch.pageX;
2554
+ }
2555
+ else {
2556
+ this._startPosition = this._swipeOptions.swipeLocalPosition ? event.offsetX : event.pageX;
2557
+ }
2558
+ }
2559
+ this._lastPosX = this._startPosition;
2560
+ this._timeStart = event.timeStamp;
2561
+ this._thresholdWasReached = false;
2562
+ }
2563
+ move(event) {
2564
+ // failsafe
2565
+ if (typeof event === 'undefined') {
2566
+ return;
2567
+ }
2568
+ let posX = 0;
2569
+ if (this._swipeOptions) {
2570
+ if (this._isMobile && event.type === 'touchmove') {
2571
+ const touch = event.touches[0];
2572
+ posX = this._swipeOptions.swipeLocalPosition ? touch.clientX : touch.pageX;
2573
+ }
2574
+ else {
2575
+ posX = this._swipeOptions.swipeLocalPosition ? event.offsetX : event.pageX;
2576
+ }
2577
+ }
2578
+ const offsetPerFrame = posX - this._lastPosX;
2579
+ const swipeDistanceTotal = Math.abs(posX - this._startPosition);
2580
+ const swipeDistancePercentage = Math.abs(swipeDistanceTotal / event.target.clientWidth);
2581
+ const timeDuration = Math.abs(event.timeStamp - this._timeStart);
2582
+ let direction;
2583
+ let speed = 1 - swipeDistanceTotal / timeDuration;
2584
+ speed = Math.max(0.1, speed);
2585
+ if (posX - this._startPosition > 0) {
2586
+ direction = 1; // a.k.a LTR
2587
+ }
2588
+ else {
2589
+ direction = -1; // a.k.a RTL
2590
+ }
2591
+ this._moveEventData = {
2592
+ position: posX,
2593
+ offsetPerFrame: offsetPerFrame,
2594
+ swipeDistanceTotal: swipeDistanceTotal,
2595
+ swipeDistancePercentage: swipeDistancePercentage,
2596
+ direction: direction,
2597
+ speed: speed,
2598
+ thresholdWasReached: this._thresholdWasReached,
2599
+ };
2600
+ this.checkThreshold(this._moveEventData);
2601
+ // update move delta
2602
+ this._lastPosX = posX;
2603
+ // inform
2604
+ this.moveEvent.emit(this._moveEventData);
2605
+ }
2606
+ release(event) {
2607
+ // case: just a click/touch
2608
+ if (!this._moveEventData) {
2609
+ return;
2610
+ }
2611
+ const releaseEventData = {
2612
+ thresholdWasReached: this._thresholdWasReached,
2613
+ direction: this._moveEventData.direction,
2614
+ speed: this._moveEventData.speed,
2615
+ easingType: this.getEasingCurve(this._moveEventData.speed),
2616
+ target: event.currentTarget,
2617
+ };
2618
+ // inform
2619
+ this.releaseEvent.emit(releaseEventData);
2620
+ }
2621
+ getEasingCurve(speed) {
2622
+ return speed > 0.5 ? 'ease-in' : 'ease-out';
2623
+ }
2624
+ reset() {
2625
+ this._startPosition = -1;
2626
+ this._thresholdWasReached = false;
2627
+ if (this._moveEventData) {
2628
+ this._moveEventData = undefined;
2629
+ }
2630
+ }
2631
+ }
2632
+ SwipeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SwipeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2633
+ SwipeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: SwipeDirective, selector: "[swipeDirective]", inputs: { config: ["swipeDirective", "config"] }, outputs: { moveEvent: "moveEvent", releaseEvent: "releaseEvent" }, host: { listeners: { "mousedown": "onMouseDown($event)", "touchstart": "onMouseDown($event)", "mousemove": "onMove($event)", "touchmove": "onMove($event)", "mouseup": "onRelease($event)", "mouseleave": "onRelease($event)", "touchend": "onRelease($event)" } }, ngImport: i0 });
2634
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SwipeDirective, decorators: [{
2635
+ type: Directive,
2636
+ args: [{
2637
+ selector: '[swipeDirective]',
2638
+ }]
2639
+ }], propDecorators: { moveEvent: [{
2640
+ type: Output
2641
+ }], releaseEvent: [{
2642
+ type: Output
2643
+ }], config: [{
2644
+ type: Input,
2645
+ args: ['swipeDirective']
2646
+ }], onMouseDown: [{
2647
+ type: HostListener,
2648
+ args: ['mousedown', ['$event']]
2649
+ }, {
2650
+ type: HostListener,
2651
+ args: ['touchstart', ['$event']]
2652
+ }], onMove: [{
2653
+ type: HostListener,
2654
+ args: ['mousemove', ['$event']]
2655
+ }, {
2656
+ type: HostListener,
2657
+ args: ['touchmove', ['$event']]
2658
+ }], onRelease: [{
2659
+ type: HostListener,
2660
+ args: ['mouseup', ['$event']]
2661
+ }, {
2662
+ type: HostListener,
2663
+ args: ['mouseleave', ['$event']]
2664
+ }, {
2665
+ type: HostListener,
2666
+ args: ['touchend', ['$event']]
2667
+ }] } });
2668
+
2669
+ /*!
2670
+ * @copyright FLYACTS GmbH 2019
2671
+ */
2672
+ class ImageSliderComponent {
2673
+ constructor(sanitizer) {
2674
+ this.sanitizer = sanitizer;
2675
+ this.editMode = false;
2676
+ this.orderChanged = new EventEmitter();
2677
+ this.deleteImageEvent = new EventEmitter();
2678
+ /**
2679
+ * Optional: Define Swipe behaviour configuration.
2680
+ * Default is 10% for the threshold definition until a swipe triggers next/previous slide.
2681
+ */
2682
+ this.swipeConfig = {
2683
+ swipeThreshold: 5,
2684
+ swipeThresholdType: '%',
2685
+ swipeLocalPosition: true,
2686
+ };
2687
+ this.selectedSlide = 0;
2688
+ this.isLastClickedInSliderImage = false;
2689
+ this.config = {
2690
+ initialSlide: 0,
2691
+ slidesPerView: 3,
2692
+ navigation: {
2693
+ nextEl: '.swiper-button-next',
2694
+ prevEl: '.swiper-button-prev',
2695
+ },
2696
+ watchOverflow: true,
2697
+ autoHeight: true,
2698
+ allowTouchMove: false,
2699
+ spaceBetween: 30,
2700
+ on: {
2701
+ slideChange: () => {
2702
+ // do something
2703
+ },
2704
+ slideChangeTransitionEnd: () => {
2705
+ // do something
2706
+ },
2707
+ },
2708
+ };
2709
+ }
2710
+ ngOnInit() {
2711
+ if (this.slides) {
2712
+ // TODO use Pipe safeStyle
2713
+ this.selectedSlideImage = this.sanitizer.bypassSecurityTrustStyle('url(' + this.slides[0] + ')');
2714
+ }
2715
+ }
2716
+ // !TODO
2717
+ onKeydownHandler(event) {
2718
+ if (event.key === 'ArrowRight') {
2719
+ this.nextSlide();
2720
+ }
2721
+ if (event.key === 'ArrowLeft') {
2722
+ this.previousSlide();
2723
+ }
2724
+ }
2725
+ /**
2726
+ * Slide follows the finger or mouse according to it´s move delta.
2727
+ * @param event SwipeMoveEvent
2728
+ */
2729
+ handleMoveEvent(event) {
2730
+ // certain move threshold needs to be reached
2731
+ if (!event.thresholdWasReached) {
2732
+ return;
2733
+ }
2734
+ this.config.direction = event.direction === 1 ? 'horizontal' : 'vertical';
2735
+ }
2736
+ /**
2737
+ * Mouse up or slide container was left.
2738
+ * @param event SwipeReleaseEvent
2739
+ */
2740
+ handleReleaseEvent(event) {
2741
+ if (!event.thresholdWasReached) {
2742
+ return;
2743
+ }
2744
+ // Just do if user clicked to slide on image and not on arrow or other element
2745
+ if (!this.isLastClickedInSliderImage) {
2141
2746
  return;
2142
2747
  }
2143
2748
  if (event.direction === 1) {
@@ -2214,26 +2819,34 @@ class ImageSliderComponent {
2214
2819
  this.deleteImageEvent.emit(index);
2215
2820
  }
2216
2821
  }
2217
- ImageSliderComponent.decorators = [
2218
- { type: Component, args: [{
2219
- selector: 'kms-image-slider',
2220
- template: "<div class=\"all-wrapper\">\r\n <!--(swiperight)=\"previousSlide()\" (swipeleft)=\"nextSlide()\"-->\r\n <div \r\n class=\"swiper-bigImage\"\r\n [style.backgroundImage]=\"selectedSlideImage\"\r\n [swipeDirective]=\"swipeConfig\"\r\n (moveEvent)=\"handleMoveEvent($event)\"\r\n (releaseEvent)=\"handleReleaseEvent($event)\"\r\n (mouseup)=\"lastClicked()\"\r\n (mouseout)=\"noLastClicked()\" >\r\n </div>\r\n\r\n <ng-content select=\"[description]\"></ng-content>\r\n\r\n <div class=\"swiper-holder\">\r\n <!--\r\n (mouseWheelUp)=\"scrollLeft($event)\"\r\n (mouseWheelDown)=\"scrollRight($event)\"\r\n -->\r\n\r\n <swiper [config]=\"config\" #usefulSwiper>\r\n <div class=\"swiper-wrapper\" \r\n cdkDropList (cdkDropListDropped)=\"drop($event)\" \r\n cdkDropListOrientation=\"horizontal\"> \r\n <div class=\"swiper-slide\" \r\n *ngFor=\"let slide of slides; let index = index\" \r\n cdkDrag [cdkDragDisabled]=\"!editMode\">\r\n <button mat-menu-item *ngIf=\"editMode\" (click)=\"deleteImage(index)\"> \r\n <kms-icon icon=\"trash\"></kms-icon>\r\n </button>\r\n <div class=\"img\" (click)=\"openSlide(index)\"\r\n [style.backgroundImage]=\"sanitizer.bypassSecurityTrustStyle('url(' + slide + ')')\"\r\n [ngClass]=\"{'active': index === selectedSlide}\">\r\n </div>\r\n \r\n <div class=\"default-image\">{{\"common.defaultImage\" | translate}} </div>\r\n </div>\r\n </div>\r\n </swiper>\r\n\r\n <div class=\"swiper-button-next\" *ngIf=\"slides?.length > 3\"></div>\r\n <div class=\"swiper-button-prev\" *ngIf=\"slides?.length > 3\"></div>\r\n\r\n <div class=\"swiper-button-next2\" *ngIf=\"slides?.length > 1\" (click)=\"nextSlide()\">\r\n <kms-icon icon=\"chevron-right\" [iconClass]=\"{'color-disabled': selectedSlide == slides?.length - 1, 'color-primary': true}\"></kms-icon>\r\n </div>\r\n <div class=\"swiper-button-prev2\" *ngIf=\"slides?.length > 1\" (click)=\"previousSlide()\">\r\n <kms-icon icon=\"chevron-left\" [iconClass]=\"{'color-disabled': selectedSlide == 0, 'color-primary': true}\"></kms-icon>\r\n </div>\r\n\r\n </div>\r\n\r\n <ng-content></ng-content>\r\n</div>",
2221
- styles: [""]
2222
- },] }
2223
- ];
2224
- ImageSliderComponent.ctorParameters = () => [
2225
- { type: DomSanitizer }
2226
- ];
2227
- ImageSliderComponent.propDecorators = {
2228
- slides: [{ type: Input }],
2229
- editMode: [{ type: Input }],
2230
- imagesTOSave: [{ type: Input }],
2231
- orderChanged: [{ type: Output }],
2232
- deleteImageEvent: [{ type: Output }],
2233
- swipeConfig: [{ type: Input }],
2234
- usefulSwiper: [{ type: ViewChild, args: ['usefulSwiper',] }],
2235
- onKeydownHandler: [{ type: HostListener, args: ['document:keydown', ['$event'],] }]
2236
- };
2822
+ ImageSliderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ImageSliderComponent, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
2823
+ ImageSliderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ImageSliderComponent, selector: "kms-image-slider", inputs: { slides: "slides", editMode: "editMode", imagesTOSave: "imagesTOSave", swipeConfig: "swipeConfig" }, outputs: { orderChanged: "orderChanged", deleteImageEvent: "deleteImageEvent" }, host: { listeners: { "document:keydown": "onKeydownHandler($event)" } }, viewQueries: [{ propertyName: "usefulSwiper", first: true, predicate: ["usefulSwiper"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"all-wrapper\">\r\n <!--(swiperight)=\"previousSlide()\" (swipeleft)=\"nextSlide()\"-->\r\n <div \r\n class=\"swiper-bigImage\"\r\n [style.backgroundImage]=\"selectedSlideImage\"\r\n [swipeDirective]=\"swipeConfig\"\r\n (moveEvent)=\"handleMoveEvent($event)\"\r\n (releaseEvent)=\"handleReleaseEvent($event)\"\r\n (mouseup)=\"lastClicked()\"\r\n (mouseout)=\"noLastClicked()\" >\r\n </div>\r\n\r\n <ng-content select=\"[description]\"></ng-content>\r\n\r\n <div class=\"swiper-holder\">\r\n <!--\r\n (mouseWheelUp)=\"scrollLeft($event)\"\r\n (mouseWheelDown)=\"scrollRight($event)\"\r\n -->\r\n\r\n <swiper [config]=\"config\" #usefulSwiper>\r\n <div class=\"swiper-wrapper\" \r\n cdkDropList (cdkDropListDropped)=\"drop($event)\" \r\n cdkDropListOrientation=\"horizontal\"> \r\n <div class=\"swiper-slide\" \r\n *ngFor=\"let slide of slides; let index = index\" \r\n cdkDrag [cdkDragDisabled]=\"!editMode\">\r\n <button mat-menu-item *ngIf=\"editMode\" (click)=\"deleteImage(index)\"> \r\n <kms-icon icon=\"trash\"></kms-icon>\r\n </button>\r\n <div class=\"img\" (click)=\"openSlide(index)\"\r\n [style.backgroundImage]=\"sanitizer.bypassSecurityTrustStyle('url(' + slide + ')')\"\r\n [ngClass]=\"{'active': index === selectedSlide}\">\r\n </div>\r\n \r\n <div class=\"default-image\">{{\"common.defaultImage\" | translate}} </div>\r\n </div>\r\n </div>\r\n </swiper>\r\n\r\n <div class=\"swiper-button-next\" *ngIf=\"slides?.length > 3\"></div>\r\n <div class=\"swiper-button-prev\" *ngIf=\"slides?.length > 3\"></div>\r\n\r\n <div class=\"swiper-button-next2\" *ngIf=\"slides?.length > 1\" (click)=\"nextSlide()\">\r\n <kms-icon icon=\"chevron-right\" [iconClass]=\"{'color-disabled': selectedSlide == slides?.length - 1, 'color-primary': true}\"></kms-icon>\r\n </div>\r\n <div class=\"swiper-button-prev2\" *ngIf=\"slides?.length > 1\" (click)=\"previousSlide()\">\r\n <kms-icon icon=\"chevron-left\" [iconClass]=\"{'color-disabled': selectedSlide == 0, 'color-primary': true}\"></kms-icon>\r\n </div>\r\n\r\n </div>\r\n\r\n <ng-content></ng-content>\r\n</div>", styles: [""], components: [{ type: i2$6.SwiperComponent, selector: "swiper", inputs: ["initialize", "config"] }, { type: i3$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }], directives: [{ type: SwipeDirective, selector: "[swipeDirective]", inputs: ["swipeDirective"], outputs: ["moveEvent", "releaseEvent"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "translate": i5$1.TranslatePipe } });
2824
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ImageSliderComponent, decorators: [{
2825
+ type: Component,
2826
+ args: [{
2827
+ selector: 'kms-image-slider',
2828
+ templateUrl: './image-slider.component.html',
2829
+ styleUrls: ['./image-slider.component.scss'],
2830
+ }]
2831
+ }], ctorParameters: function () { return [{ type: i1$2.DomSanitizer }]; }, propDecorators: { slides: [{
2832
+ type: Input
2833
+ }], editMode: [{
2834
+ type: Input
2835
+ }], imagesTOSave: [{
2836
+ type: Input
2837
+ }], orderChanged: [{
2838
+ type: Output
2839
+ }], deleteImageEvent: [{
2840
+ type: Output
2841
+ }], swipeConfig: [{
2842
+ type: Input
2843
+ }], usefulSwiper: [{
2844
+ type: ViewChild,
2845
+ args: ['usefulSwiper']
2846
+ }], onKeydownHandler: [{
2847
+ type: HostListener,
2848
+ args: ['document:keydown', ['$event']]
2849
+ }] } });
2237
2850
 
2238
2851
  /*!
2239
2852
  * @copyright FLYACTS GmbH 2019
@@ -2269,471 +2882,228 @@ class MouseWheelDirective {
2269
2882
  }
2270
2883
  }
2271
2884
  }
2272
- MouseWheelDirective.decorators = [
2273
- { type: Directive, args: [{ selector: '[mouseWheel]' },] }
2274
- ];
2275
- MouseWheelDirective.propDecorators = {
2276
- mouseWheelUp: [{ type: Output }],
2277
- mouseWheelDown: [{ type: Output }],
2278
- onMouseWheelChrome: [{ type: HostListener, args: ['mousewheel', ['$event'],] }],
2279
- onMouseWheelFirefox: [{ type: HostListener, args: ['DOMMouseScroll', ['$event'],] }],
2280
- onMouseWheelIE: [{ type: HostListener, args: ['onmousewheel', ['$event'],] }]
2281
- };
2282
-
2283
- /*!
2284
- * @copyright FLYACTS GmbH 2019
2285
- */
2286
- /**
2287
- * Directive to calc the height of all inner elements
2288
- */
2289
- class GetMaxHeightDirective {
2290
- constructor(el) {
2291
- this.el = el;
2292
- /**
2293
- * CSS class name of the child items (markup elements) that should be checked for their height.
2294
- * This is mandatory.
2295
- */
2296
- this.cssClassName = '';
2297
- /**
2298
- * Event that will pass the height of the tallest child inside the container.
2299
- * Useful to calculate the target height of containers with different content (like accordion) for animations.
2300
- */
2301
- this.maxHeightChanged = new EventEmitter();
2302
- /**
2303
- * Event that will pass the complete sum of all height values from each child.
2304
- * Useful to calculate the full target height of a container (like dropdown) for animations.
2305
- */
2306
- this.sumOfHeight = new EventEmitter();
2307
- }
2308
- ngAfterContentChecked() {
2309
- this.checkHeightOfChildren(this.el.nativeElement, this.cssClassName);
2310
- }
2311
- checkHeightOfChildren(parent, cssClassName) {
2312
- if (!parent) {
2313
- return;
2314
- }
2315
- // find all the child elements with the selected class name
2316
- const children = parent.getElementsByClassName(cssClassName);
2317
- // failsafe
2318
- if (!children) {
2319
- return;
2320
- }
2321
- // get all the child elements heights
2322
- const itemHeights = Array.from(children).map((x) => x.getBoundingClientRect().height);
2323
- // failsafe
2324
- if (itemHeights.length === 0) {
2325
- return;
2326
- }
2327
- // find out the tallest element
2328
- const maxHeight = itemHeights.reduce((prev, curr) => {
2329
- return curr > prev ? curr : prev;
2330
- }, 0);
2331
- // get sum of heights
2332
- const sumOfHeight = itemHeights.reduce((pv, cv) => pv + cv, 0);
2333
- // inform
2334
- this.maxHeightChanged.emit(maxHeight);
2335
- this.sumOfHeight.emit(sumOfHeight);
2336
- }
2337
- }
2338
- GetMaxHeightDirective.decorators = [
2339
- { type: Directive, args: [{
2340
- selector: '[getMaxHeight]',
2341
- },] }
2342
- ];
2343
- GetMaxHeightDirective.ctorParameters = () => [
2344
- { type: ElementRef }
2345
- ];
2346
- GetMaxHeightDirective.propDecorators = {
2347
- cssClassName: [{ type: Input, args: ['getMaxHeight',] }],
2348
- maxHeightChanged: [{ type: Output }],
2349
- sumOfHeight: [{ type: Output }]
2350
- };
2351
-
2352
- /*!
2353
- * @copyright FLYACTS GmbH 2019
2354
- */
2355
- class SwipeDirective {
2356
- constructor() {
2357
- /**
2358
- * Output Event that is emitted during swipe process (mouse move or touch move event).
2359
- * Can be used for calculation purposes.
2360
- */
2361
- this.moveEvent = new EventEmitter();
2362
- /**
2363
- * Output Event that is emitted when swipe process end (mouse up or touch end event).
2364
- * Can be used for calculation purposes.
2365
- */
2366
- this.releaseEvent = new EventEmitter();
2367
- this._startPosition = -1;
2368
- this._lastPosX = 0;
2369
- this._thresholdWasReached = false;
2370
- this._timeStart = 0;
2371
- }
2372
- /**
2373
- * Needed config that defines swipe behaviour.
2374
- * @param options SwipeOptions
2375
- */
2376
- set config(options) {
2377
- if (options) {
2378
- this._swipeOptions = options;
2379
- }
2380
- }
2381
- onMouseDown(event) {
2382
- this.calculateStartPosition(event);
2383
- }
2384
- onMove(event) {
2385
- this.move(event);
2386
- }
2387
- onRelease(event) {
2388
- this.release(event);
2389
- this.reset();
2390
- }
2391
- // ** PRIVATE ** //
2392
- /**
2393
- * Function checks if the current moving delta is inside the defined threshold.
2394
- * Sets the flag to true if the threshold was reached once.
2395
- */
2396
- checkThreshold(moveEvent) {
2397
- const percentage = this._swipeOptions && this._swipeOptions.swipeThresholdType === '%';
2398
- if (!percentage && this._swipeOptions && moveEvent.swipeDistanceTotal < this._swipeOptions.swipeThreshold) {
2399
- return;
2400
- }
2401
- else if (percentage &&
2402
- this._swipeOptions &&
2403
- moveEvent.swipeDistancePercentage < this._swipeOptions.swipeThreshold / 100) {
2404
- return;
2405
- }
2406
- else {
2407
- this._thresholdWasReached = true;
2408
- }
2409
- }
2410
- calculateStartPosition(event) {
2411
- // detect if touch or click
2412
- this._isMobile = event.type === 'touchstart';
2413
- // save start position
2414
- if (this._swipeOptions && this._swipeOptions.swipeLocalPosition) {
2415
- if (this._isMobile) {
2416
- const touch = event.touches[0];
2417
- this._startPosition = this._swipeOptions.swipeLocalPosition ? touch.clientX : touch.pageX;
2418
- }
2419
- else {
2420
- this._startPosition = this._swipeOptions.swipeLocalPosition ? event.offsetX : event.pageX;
2421
- }
2422
- }
2423
- this._lastPosX = this._startPosition;
2424
- this._timeStart = event.timeStamp;
2425
- this._thresholdWasReached = false;
2426
- }
2427
- move(event) {
2428
- // failsafe
2429
- if (typeof event === 'undefined') {
2430
- return;
2431
- }
2432
- let posX = 0;
2433
- if (this._swipeOptions) {
2434
- if (this._isMobile && event.type === 'touchmove') {
2435
- const touch = event.touches[0];
2436
- posX = this._swipeOptions.swipeLocalPosition ? touch.clientX : touch.pageX;
2437
- }
2438
- else {
2439
- posX = this._swipeOptions.swipeLocalPosition ? event.offsetX : event.pageX;
2440
- }
2441
- }
2442
- const offsetPerFrame = posX - this._lastPosX;
2443
- const swipeDistanceTotal = Math.abs(posX - this._startPosition);
2444
- const swipeDistancePercentage = Math.abs(swipeDistanceTotal / event.target.clientWidth);
2445
- const timeDuration = Math.abs(event.timeStamp - this._timeStart);
2446
- let direction;
2447
- let speed = 1 - swipeDistanceTotal / timeDuration;
2448
- speed = Math.max(0.1, speed);
2449
- if (posX - this._startPosition > 0) {
2450
- direction = 1; // a.k.a LTR
2451
- }
2452
- else {
2453
- direction = -1; // a.k.a RTL
2454
- }
2455
- this._moveEventData = {
2456
- position: posX,
2457
- offsetPerFrame: offsetPerFrame,
2458
- swipeDistanceTotal: swipeDistanceTotal,
2459
- swipeDistancePercentage: swipeDistancePercentage,
2460
- direction: direction,
2461
- speed: speed,
2462
- thresholdWasReached: this._thresholdWasReached,
2463
- };
2464
- this.checkThreshold(this._moveEventData);
2465
- // update move delta
2466
- this._lastPosX = posX;
2467
- // inform
2468
- this.moveEvent.emit(this._moveEventData);
2469
- }
2470
- release(event) {
2471
- // case: just a click/touch
2472
- if (!this._moveEventData) {
2473
- return;
2474
- }
2475
- const releaseEventData = {
2476
- thresholdWasReached: this._thresholdWasReached,
2477
- direction: this._moveEventData.direction,
2478
- speed: this._moveEventData.speed,
2479
- easingType: this.getEasingCurve(this._moveEventData.speed),
2480
- target: event.currentTarget,
2481
- };
2482
- // inform
2483
- this.releaseEvent.emit(releaseEventData);
2484
- }
2485
- getEasingCurve(speed) {
2486
- return speed > 0.5 ? 'ease-in' : 'ease-out';
2487
- }
2488
- reset() {
2489
- this._startPosition = -1;
2490
- this._thresholdWasReached = false;
2491
- if (this._moveEventData) {
2492
- this._moveEventData = undefined;
2493
- }
2494
- }
2495
- }
2496
- SwipeDirective.decorators = [
2497
- { type: Directive, args: [{
2498
- selector: '[swipeDirective]',
2499
- },] }
2500
- ];
2501
- SwipeDirective.propDecorators = {
2502
- moveEvent: [{ type: Output }],
2503
- releaseEvent: [{ type: Output }],
2504
- config: [{ type: Input, args: ['swipeDirective',] }],
2505
- onMouseDown: [{ type: HostListener, args: ['mousedown', ['$event'],] }, { type: HostListener, args: ['touchstart', ['$event'],] }],
2506
- onMove: [{ type: HostListener, args: ['mousemove', ['$event'],] }, { type: HostListener, args: ['touchmove', ['$event'],] }],
2507
- onRelease: [{ type: HostListener, args: ['mouseup', ['$event'],] }, { type: HostListener, args: ['mouseleave', ['$event'],] }, { type: HostListener, args: ['touchend', ['$event'],] }]
2508
- };
2509
-
2510
- class TooltipDirective {
2511
- constructor(el, renderer) {
2512
- this.el = el;
2513
- this.renderer = renderer;
2514
- this.tooltipTitle = "";
2515
- this.tooltipText = "";
2516
- this.tooltipLinkText = "";
2517
- this.tooltipLinkUrl = "";
2518
- this.tooltipPlacement = "bottom";
2519
- this.tooltipDelay = 1000;
2520
- this.tooltipPlaceIntoHost = false;
2521
- this.tooltipOnlyonclick = false;
2522
- this.offset = 0;
2523
- }
2524
- onMouseEnter() {
2525
- if (!this.tooltipOnlyonclick) {
2526
- this.show();
2527
- }
2528
- }
2529
- onClick() {
2530
- if (this.tooltipOnlyonclick) {
2531
- this.show();
2532
- }
2533
- }
2534
- onMouseLeave() {
2535
- if (this.tooltipElem) {
2536
- this.hide();
2537
- }
2538
- }
2539
- show() {
2540
- if (!this.tooltipElem) {
2541
- this.create();
2542
- this.setPosition();
2543
- }
2544
- this.renderer.addClass(this.tooltipElem, 'tooltip-show');
2545
- }
2546
- hide() {
2547
- this.renderer.removeClass(this.tooltipElem, 'tooltip-show');
2548
- window.setTimeout(() => {
2549
- }, this.tooltipDelay);
2550
- }
2551
- create() {
2552
- this.tooltipElem = this.renderer.createElement('kms-tooltip-element');
2553
- this.tooltipTitleElem = this.renderer.createElement('b');
2554
- this.renderer.appendChild(this.tooltipTitleElem, this.renderer.createText(this.tooltipTitle));
2555
- this.renderer.appendChild(this.tooltipElem, this.tooltipTitleElem);
2556
- this.tooltipTextElem = this.renderer.createElement('div');
2557
- this.renderer.appendChild(this.tooltipTextElem, this.renderer.createText(this.tooltipText));
2558
- this.renderer.appendChild(this.tooltipElem, this.tooltipTextElem);
2559
- this.tooltipLinkElem = this.renderer.createElement('a');
2560
- this.renderer.setAttribute(this.tooltipLinkElem, 'href', this.tooltipLinkUrl);
2561
- this.renderer.appendChild(this.tooltipLinkElem, this.renderer.createText(this.tooltipLinkText));
2562
- this.renderer.appendChild(this.tooltipElem, this.tooltipLinkElem);
2563
- if (this.tooltipPlaceIntoHost) {
2564
- this.renderer.appendChild(this.el.nativeElement, this.tooltipElem);
2565
- }
2566
- else {
2567
- this.renderer.appendChild(document.body, this.tooltipElem);
2568
- }
2569
- this.renderer.addClass(this.tooltipElem, 'tooltip');
2570
- this.renderer.addClass(this.tooltipElem, `tooltip-${this.tooltipPlacement}`);
2571
- this.renderer.setStyle(this.tooltipElem, '-webkit-transition', `opacity ${this.tooltipDelay}ms`);
2572
- this.renderer.setStyle(this.tooltipElem, '-moz-transition', `opacity ${this.tooltipDelay}ms`);
2573
- this.renderer.setStyle(this.tooltipElem, '-o-transition', `opacity ${this.tooltipDelay}ms`);
2574
- this.renderer.setStyle(this.tooltipElem, 'transition', `opacity ${this.tooltipDelay}ms`);
2575
- }
2576
- setPosition() {
2577
- if (this.tooltipElem) {
2578
- const hostPos = this.el.nativeElement.getBoundingClientRect();
2579
- const tooltipPos = this.tooltipElem.getBoundingClientRect();
2580
- let top, left;
2581
- if (this.tooltipPlaceIntoHost) {
2582
- left = 0;
2583
- top = hostPos.height;
2584
- }
2585
- else {
2586
- const scrollPos = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
2587
- if (this.tooltipPlacement === 'top') {
2588
- top = hostPos.top - tooltipPos.height - this.offset;
2589
- left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
2590
- }
2591
- if (!this.tooltipPlacement || this.tooltipPlacement === 'bottom') {
2592
- top = hostPos.bottom + this.offset;
2593
- left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
2594
- }
2595
- if (this.tooltipPlacement === 'left') {
2596
- top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
2597
- left = hostPos.left - tooltipPos.width - this.offset;
2598
- }
2599
- if (this.tooltipPlacement === 'right') {
2600
- top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
2601
- left = hostPos.right + this.offset;
2602
- }
2603
- top += scrollPos;
2604
- }
2605
- this.renderer.setStyle(this.tooltipElem, 'top', `${top}px`);
2606
- this.renderer.setStyle(this.tooltipElem, 'left', `${left}px`);
2607
- }
2608
- }
2609
- }
2610
- TooltipDirective.decorators = [
2611
- { type: Directive, args: [{
2612
- selector: '[kmsTooltip]'
2613
- },] }
2614
- ];
2615
- TooltipDirective.ctorParameters = () => [
2616
- { type: ElementRef },
2617
- { type: Renderer2 }
2618
- ];
2619
- TooltipDirective.propDecorators = {
2620
- tooltipTitle: [{ type: Input, args: ['tooltipTitle',] }],
2621
- tooltipText: [{ type: Input, args: ['tooltipText',] }],
2622
- tooltipLinkText: [{ type: Input, args: ['tooltipLinkText',] }],
2623
- tooltipLinkUrl: [{ type: Input, args: ['tooltipLinkUrl',] }],
2624
- tooltipPlacement: [{ type: Input, args: ['tooltipPlacement',] }],
2625
- tooltipDelay: [{ type: Input, args: ['tooltipDelay',] }],
2626
- tooltipPlaceIntoHost: [{ type: Input, args: ['tooltipPlaceIntoHost',] }],
2627
- tooltipOnlyonclick: [{ type: Input, args: ['tooltipOnlyonclick',] }],
2628
- onMouseEnter: [{ type: HostListener, args: ['mouseenter',] }],
2629
- onClick: [{ type: HostListener, args: ['click',] }],
2630
- onMouseLeave: [{ type: HostListener, args: ['mouseleave',] }]
2631
- };
2885
+ MouseWheelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MouseWheelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
2886
+ MouseWheelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: MouseWheelDirective, selector: "[mouseWheel]", outputs: { mouseWheelUp: "mouseWheelUp", mouseWheelDown: "mouseWheelDown" }, host: { listeners: { "mousewheel": "onMouseWheelChrome($event)", "DOMMouseScroll": "onMouseWheelFirefox($event)", "onmousewheel": "onMouseWheelIE($event)" } }, ngImport: i0 });
2887
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MouseWheelDirective, decorators: [{
2888
+ type: Directive,
2889
+ args: [{ selector: '[mouseWheel]' }]
2890
+ }], propDecorators: { mouseWheelUp: [{
2891
+ type: Output
2892
+ }], mouseWheelDown: [{
2893
+ type: Output
2894
+ }], onMouseWheelChrome: [{
2895
+ type: HostListener,
2896
+ args: ['mousewheel', ['$event']]
2897
+ }], onMouseWheelFirefox: [{
2898
+ type: HostListener,
2899
+ args: ['DOMMouseScroll', ['$event']]
2900
+ }], onMouseWheelIE: [{
2901
+ type: HostListener,
2902
+ args: ['onmousewheel', ['$event']]
2903
+ }] } });
2632
2904
 
2633
2905
  /**
2634
2906
  * @copyright KMS GmbH
2635
2907
  */
2636
2908
  class DirectivesModule {
2637
2909
  }
2638
- DirectivesModule.decorators = [
2639
- { type: NgModule, args: [{
2640
- declarations: [
2641
- SwipeDirective,
2642
- MouseWheelDirective,
2643
- GetMaxHeightDirective,
2644
- TooltipDirective,
2645
- ],
2646
- imports: [CommonModule],
2647
- exports: [
2648
- SwipeDirective,
2649
- MouseWheelDirective,
2650
- GetMaxHeightDirective,
2651
- TooltipDirective,
2652
- ],
2653
- },] }
2654
- ];
2910
+ DirectivesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2911
+ DirectivesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DirectivesModule, declarations: [SwipeDirective,
2912
+ MouseWheelDirective,
2913
+ GetMaxHeightDirective,
2914
+ TooltipDirective], imports: [CommonModule], exports: [SwipeDirective,
2915
+ MouseWheelDirective,
2916
+ GetMaxHeightDirective,
2917
+ TooltipDirective] });
2918
+ DirectivesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DirectivesModule, imports: [[CommonModule]] });
2919
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DirectivesModule, decorators: [{
2920
+ type: NgModule,
2921
+ args: [{
2922
+ declarations: [
2923
+ SwipeDirective,
2924
+ MouseWheelDirective,
2925
+ GetMaxHeightDirective,
2926
+ TooltipDirective,
2927
+ ],
2928
+ imports: [CommonModule],
2929
+ exports: [
2930
+ SwipeDirective,
2931
+ MouseWheelDirective,
2932
+ GetMaxHeightDirective,
2933
+ TooltipDirective,
2934
+ ],
2935
+ }]
2936
+ }] });
2655
2937
 
2656
2938
  class KmsUiPresentationalModule {
2657
2939
  }
2658
- KmsUiPresentationalModule.decorators = [
2659
- { type: NgModule, args: [{
2660
- declarations: [
2661
- ActionsParentComponent,
2662
- BackToTopComponent,
2663
- ButtonWithConfirmDialogComponent,
2664
- CheckboxComponent,
2665
- ColorInputComponent,
2666
- DropdownFromDataComponent,
2667
- EnumRadiogroupComponent,
2668
- EnumRadiogroupComponent,
2669
- FileInputComponent,
2670
- FlyoutComponent,
2671
- GenericDialogComponent,
2672
- IconComponent,
2673
- ImageSliderComponent,
2674
- KMSAccordionItemComponent,
2675
- KmsUiPresentationalComponent,
2676
- LoaderComponent,
2677
- MapComponent,
2678
- RadioButtonComponent,
2679
- SalutationDropdownComponent,
2680
- SalutationRadiogroupComponent,
2681
- TimeInputComponent,
2682
- TooltipComponent,
2683
- TooltipIconComponent,
2684
- YesNoRadiogroupComponent
2685
- ],
2686
- imports: [
2687
- CommonModule,
2688
- MatCheckboxModule,
2689
- MatButtonModule,
2690
- MatRadioModule,
2691
- MatDialogModule,
2692
- FormsModule,
2693
- ReactiveFormsModule,
2694
- MatFormFieldModule,
2695
- MatInputModule,
2696
- MatMenuModule,
2697
- CustomPipesModule,
2698
- GoogleMapsModule,
2699
- MatExpansionModule,
2700
- MatSelectModule,
2701
- MatProgressSpinnerModule,
2702
- DirectivesModule,
2703
- TranslateModule,
2704
- NgxUsefulSwiperModule,
2705
- ],
2706
- exports: [
2707
- ActionsParentComponent,
2708
- BackToTopComponent,
2709
- ButtonWithConfirmDialogComponent,
2710
- CheckboxComponent,
2711
- ColorInputComponent,
2712
- DropdownFromDataComponent,
2713
- EnumRadiogroupComponent,
2714
- EnumRadiogroupComponent,
2715
- FileInputComponent,
2716
- FlyoutComponent,
2717
- GenericDialogComponent,
2718
- IconComponent,
2719
- ImageSliderComponent,
2720
- KMSAccordionItemComponent,
2721
- KmsUiPresentationalComponent,
2722
- LoaderComponent,
2723
- MapComponent,
2724
- RadioButtonComponent,
2725
- SalutationDropdownComponent,
2726
- SalutationRadiogroupComponent,
2727
- TimeInputComponent,
2728
- TooltipComponent,
2729
- TooltipIconComponent,
2730
- YesNoRadiogroupComponent,
2731
- ],
2732
- providers: [
2733
- ViewportService
2734
- ]
2735
- },] }
2736
- ];
2940
+ KmsUiPresentationalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2941
+ KmsUiPresentationalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalModule, declarations: [ActionsParentComponent,
2942
+ BackToTopComponent,
2943
+ ButtonWithConfirmDialogComponent,
2944
+ CheckboxComponent,
2945
+ ColorInputComponent,
2946
+ DropdownFromDataComponent,
2947
+ EnumRadiogroupComponent,
2948
+ EnumRadiogroupComponent,
2949
+ FileInputComponent,
2950
+ FlyoutComponent,
2951
+ GenericDialogComponent,
2952
+ IconComponent,
2953
+ ImageSliderComponent,
2954
+ KMSAccordionItemComponent,
2955
+ KmsUiPresentationalComponent,
2956
+ LoaderComponent,
2957
+ MapComponent,
2958
+ RadioButtonComponent,
2959
+ SalutationDropdownComponent,
2960
+ SalutationRadiogroupComponent,
2961
+ TimeInputComponent,
2962
+ TooltipComponent,
2963
+ TooltipIconComponent,
2964
+ YesNoRadiogroupComponent], imports: [CommonModule,
2965
+ MatCheckboxModule,
2966
+ MatButtonModule,
2967
+ MatRadioModule,
2968
+ MatDialogModule,
2969
+ FormsModule,
2970
+ ReactiveFormsModule,
2971
+ MatFormFieldModule,
2972
+ MatInputModule,
2973
+ MatMenuModule,
2974
+ CustomPipesModule,
2975
+ GoogleMapsModule,
2976
+ MatExpansionModule,
2977
+ MatSelectModule,
2978
+ MatProgressSpinnerModule,
2979
+ DirectivesModule,
2980
+ TranslateModule,
2981
+ NgxUsefulSwiperModule], exports: [ActionsParentComponent,
2982
+ BackToTopComponent,
2983
+ ButtonWithConfirmDialogComponent,
2984
+ CheckboxComponent,
2985
+ ColorInputComponent,
2986
+ DropdownFromDataComponent,
2987
+ EnumRadiogroupComponent,
2988
+ EnumRadiogroupComponent,
2989
+ FileInputComponent,
2990
+ FlyoutComponent,
2991
+ GenericDialogComponent,
2992
+ IconComponent,
2993
+ ImageSliderComponent,
2994
+ KMSAccordionItemComponent,
2995
+ KmsUiPresentationalComponent,
2996
+ LoaderComponent,
2997
+ MapComponent,
2998
+ RadioButtonComponent,
2999
+ SalutationDropdownComponent,
3000
+ SalutationRadiogroupComponent,
3001
+ TimeInputComponent,
3002
+ TooltipComponent,
3003
+ TooltipIconComponent,
3004
+ YesNoRadiogroupComponent] });
3005
+ KmsUiPresentationalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalModule, providers: [
3006
+ ViewportService
3007
+ ], imports: [[
3008
+ CommonModule,
3009
+ MatCheckboxModule,
3010
+ MatButtonModule,
3011
+ MatRadioModule,
3012
+ MatDialogModule,
3013
+ FormsModule,
3014
+ ReactiveFormsModule,
3015
+ MatFormFieldModule,
3016
+ MatInputModule,
3017
+ MatMenuModule,
3018
+ CustomPipesModule,
3019
+ GoogleMapsModule,
3020
+ MatExpansionModule,
3021
+ MatSelectModule,
3022
+ MatProgressSpinnerModule,
3023
+ DirectivesModule,
3024
+ TranslateModule,
3025
+ NgxUsefulSwiperModule,
3026
+ ]] });
3027
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalModule, decorators: [{
3028
+ type: NgModule,
3029
+ args: [{
3030
+ declarations: [
3031
+ ActionsParentComponent,
3032
+ BackToTopComponent,
3033
+ ButtonWithConfirmDialogComponent,
3034
+ CheckboxComponent,
3035
+ ColorInputComponent,
3036
+ DropdownFromDataComponent,
3037
+ EnumRadiogroupComponent,
3038
+ EnumRadiogroupComponent,
3039
+ FileInputComponent,
3040
+ FlyoutComponent,
3041
+ GenericDialogComponent,
3042
+ IconComponent,
3043
+ ImageSliderComponent,
3044
+ KMSAccordionItemComponent,
3045
+ KmsUiPresentationalComponent,
3046
+ LoaderComponent,
3047
+ MapComponent,
3048
+ RadioButtonComponent,
3049
+ SalutationDropdownComponent,
3050
+ SalutationRadiogroupComponent,
3051
+ TimeInputComponent,
3052
+ TooltipComponent,
3053
+ TooltipIconComponent,
3054
+ YesNoRadiogroupComponent
3055
+ ],
3056
+ imports: [
3057
+ CommonModule,
3058
+ MatCheckboxModule,
3059
+ MatButtonModule,
3060
+ MatRadioModule,
3061
+ MatDialogModule,
3062
+ FormsModule,
3063
+ ReactiveFormsModule,
3064
+ MatFormFieldModule,
3065
+ MatInputModule,
3066
+ MatMenuModule,
3067
+ CustomPipesModule,
3068
+ GoogleMapsModule,
3069
+ MatExpansionModule,
3070
+ MatSelectModule,
3071
+ MatProgressSpinnerModule,
3072
+ DirectivesModule,
3073
+ TranslateModule,
3074
+ NgxUsefulSwiperModule,
3075
+ ],
3076
+ exports: [
3077
+ ActionsParentComponent,
3078
+ BackToTopComponent,
3079
+ ButtonWithConfirmDialogComponent,
3080
+ CheckboxComponent,
3081
+ ColorInputComponent,
3082
+ DropdownFromDataComponent,
3083
+ EnumRadiogroupComponent,
3084
+ EnumRadiogroupComponent,
3085
+ FileInputComponent,
3086
+ FlyoutComponent,
3087
+ GenericDialogComponent,
3088
+ IconComponent,
3089
+ ImageSliderComponent,
3090
+ KMSAccordionItemComponent,
3091
+ KmsUiPresentationalComponent,
3092
+ LoaderComponent,
3093
+ MapComponent,
3094
+ RadioButtonComponent,
3095
+ SalutationDropdownComponent,
3096
+ SalutationRadiogroupComponent,
3097
+ TimeInputComponent,
3098
+ TooltipComponent,
3099
+ TooltipIconComponent,
3100
+ YesNoRadiogroupComponent,
3101
+ ],
3102
+ providers: [
3103
+ ViewportService
3104
+ ]
3105
+ }]
3106
+ }] });
2737
3107
 
2738
3108
  /*
2739
3109
  * Public API Surface of kms-ngx-ui-presentational
@@ -2743,5 +3113,5 @@ KmsUiPresentationalModule.decorators = [
2743
3113
  * Generated bundle index. Do not edit.
2744
3114
  */
2745
3115
 
2746
- export { CustomPipesModule, DirectivesModule, FormParentComponent, GenericDialogComponent, IconSize$1 as IconSize, KmsUiPresentationalComponent, KmsUiPresentationalModule, KmsUiPresentationalService, SalutationEnum, ViewportService, ActionsParentComponent as ɵa, BackToTopComponent as ɵb, SafeResourceUrlPipe as ɵba, SafeUrlPipe as ɵbb, EncodeUriPipe as ɵbc, DecodeUriPipe as ɵbd, TypeofPipe as ɵbe, TrimPipe as ɵbf, ToNumberPipe as ɵbg, SwipeDirective as ɵbh, MouseWheelDirective as ɵbi, GetMaxHeightDirective as ɵbj, TooltipDirective as ɵbk, ButtonWithConfirmDialogComponent as ɵc, CheckboxComponent as ɵd, ColorInputComponent as ɵe, FormControlParentComponent as ɵf, DropdownFromDataComponent as ɵg, EnumRadiogroupComponent as ɵh, FileInputComponent as ɵi, FlyoutComponent as ɵj, IconComponent as ɵl, ImageSliderComponent as ɵm, KMSAccordionItemComponent as ɵn, LoaderComponent as ɵo, MapComponent as ɵp, RadioButtonComponent as ɵq, SalutationDropdownComponent as ɵr, SalutationRadiogroupComponent as ɵs, TimeInputComponent as ɵt, TooltipComponent as ɵu, TooltipIconComponent as ɵv, YesNoRadiogroupComponent as ɵw, IntegerCurrency as ɵx, SafeHtmlPipe as ɵy, SafeStylePipe as ɵz };
3116
+ export { ActionsParentComponent, BackToTopComponent, ButtonWithConfirmDialogComponent, CheckboxComponent, ColorInputComponent, CustomPipesModule, DecodeUriPipe, DirectivesModule, DropdownFromDataComponent, EncodeUriPipe, EnumRadiogroupComponent, FileInputComponent, FlyoutComponent, FormParentComponent, GenericDialogComponent, GetMaxHeightDirective, IconComponent, IconSize$1 as IconSize, ImageSliderComponent, IntegerCurrency, KMSAccordionItemComponent, KmsUiPresentationalComponent, KmsUiPresentationalModule, KmsUiPresentationalService, LoaderComponent, MapComponent, Marker, MarkerLabel, MarkerOptions, MouseWheelDirective, RadioButtonComponent, SafeHtmlPipe, SafeResourceUrlPipe, SafeStylePipe, SafeUrlPipe, SalutationDropdownComponent, SalutationEnum, SalutationRadiogroupComponent, SwipeDirective, TimeInputComponent, ToNumberPipe, TooltipComponent, TooltipDirective, TooltipIconComponent, TrimPipe, TypeofPipe, ViewportService, YesNoRadiogroupComponent };
2747
3117
  //# sourceMappingURL=kms-ngx-ui-presentational.js.map