@kms-ngx-ui/presentational 0.0.22 → 0.0.24

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 (71) hide show
  1. package/bundles/kms-ngx-ui-presentational.umd.js +281 -173
  2. package/bundles/kms-ngx-ui-presentational.umd.js.map +1 -1
  3. package/esm2015/lib/directives/directives.module.js +8 -3
  4. package/esm2015/lib/directives/size.directive.js +21 -0
  5. package/esm2015/lib/kms-ngx-ui-presentational.component.js +9 -9
  6. package/esm2015/lib/kms-ngx-ui-presentational.service.js +1 -1
  7. package/esm2015/lib/models/address.model.js +1 -1
  8. package/esm2015/lib/models/iconSize.enum.js +1 -1
  9. package/esm2015/lib/models/index.js +1 -1
  10. package/esm2015/lib/models/is-value.function.js +1 -1
  11. package/esm2015/lib/models/salutation.enum.js +1 -1
  12. package/esm2015/lib/models/types/attached-file-dto.model.js +1 -1
  13. package/esm2015/lib/models/types/nullable.type.js +1 -1
  14. package/esm2015/lib/parent-components/actions.component.js +1 -1
  15. package/esm2015/lib/parent-components/colorable.component.js +35 -0
  16. package/esm2015/lib/parent-components/form-control.component.js +4 -3
  17. package/esm2015/lib/parent-components/form.component.js +36 -15
  18. package/esm2015/lib/pipes/decode-uri.pipe.js +1 -1
  19. package/esm2015/lib/pipes/encode-uri.pipe.js +1 -1
  20. package/esm2015/lib/pipes/integer-currency.pipe.js +1 -1
  21. package/esm2015/lib/pipes/safe-html.pipe.js +1 -1
  22. package/esm2015/lib/pipes/safe-style.pipe.js +1 -1
  23. package/esm2015/lib/pipes/to-number.pipe.js +1 -1
  24. package/esm2015/lib/pipes/trim.pipe.js +1 -1
  25. package/esm2015/lib/pipes/typeof.pipe.js +1 -1
  26. package/esm2015/lib/services/viewport.service.js +66 -40
  27. package/esm2015/lib/ui/back-to-top/back-to-top.component.js +2 -2
  28. package/esm2015/lib/ui/button-with-confirm-dialog/button-response-types.enum.js +1 -1
  29. package/esm2015/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.js +2 -2
  30. package/esm2015/lib/ui/button-with-confirm-dialog/dialog-data.model.js +1 -1
  31. package/esm2015/lib/ui/checkbox/checkbox.component.js +2 -2
  32. package/esm2015/lib/ui/dropdown-from-data/dropdown-from-data.component.js +23 -19
  33. package/esm2015/lib/ui/enum-radiogroup/enum-radiogroup.component.js +2 -2
  34. package/esm2015/lib/ui/file-input/file-input.component.js +6 -6
  35. package/esm2015/lib/ui/flyout/flyout.component.js +5 -4
  36. package/esm2015/lib/ui/generic-dialog/generic-dialog.component.js +2 -2
  37. package/esm2015/lib/ui/icon/icon.component.js +5 -2
  38. package/esm2015/lib/ui/icon/iconSize.enum.js +12 -1
  39. package/esm2015/lib/ui/image-slider/image-slider.component.js +1 -1
  40. package/esm2015/lib/ui/kms-accordion-item/kms-accordion-item.component.js +1 -1
  41. package/esm2015/lib/ui/loader/loader.component.js +2 -2
  42. package/esm2015/lib/ui/map/map.component.js +2 -21
  43. package/esm2015/lib/ui/radiobutton/radiobutton.component.js +7 -3
  44. package/esm2015/lib/ui/salutation-dropdown/salutation-dropdown.component.js +2 -2
  45. package/esm2015/lib/ui/salutation-radiogroup/salutation-radiogroup.component.js +2 -2
  46. package/esm2015/lib/ui/time-input/time-input.component.js +1 -1
  47. package/esm2015/lib/ui/tooltip/tooltip.component.js +1 -1
  48. package/esm2015/lib/ui/tooltip-icon/tooltip-icon.component.js +5 -4
  49. package/esm2015/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.js +2 -2
  50. package/esm2015/public-api.js +2 -1
  51. package/fesm2015/kms-ngx-ui-presentational.js +275 -171
  52. package/fesm2015/kms-ngx-ui-presentational.js.map +1 -1
  53. package/lib/directives/directives.module.d.ts +4 -2
  54. package/lib/directives/size.directive.d.ts +10 -0
  55. package/lib/parent-components/colorable.component.d.ts +10 -0
  56. package/lib/parent-components/form.component.d.ts +11 -5
  57. package/lib/services/viewport.service.d.ts +13 -4
  58. package/lib/ui/dropdown-from-data/dropdown-from-data.component.d.ts +2 -1
  59. package/lib/ui/file-input/file-input.component.d.ts +2 -2
  60. package/lib/ui/icon/icon.component.d.ts +7 -1
  61. package/lib/ui/icon/iconSize.enum.d.ts +10 -0
  62. package/lib/ui/map/map.component.d.ts +0 -4
  63. package/lib/ui/radiobutton/radiobutton.component.d.ts +2 -1
  64. package/lib/ui/tooltip-icon/tooltip-icon.component.d.ts +2 -2
  65. package/package.json +1 -1
  66. package/public-api.d.ts +1 -0
  67. package/src/lib/ui/back-to-top/back-to-top.component.scss +2 -3
  68. package/src/lib/ui/icon/icon.component.scss +2 -36
  69. package/src/styles/animations.scss +47 -0
  70. package/src/styles/mixins.scss +8 -8
  71. package/src/styles/styles.scss +1 -0
@@ -1,13 +1,14 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Component, EventEmitter, Input, Output, forwardRef, ViewChild, VERSION, Directive, HostListener, Pipe, NgModule, PLATFORM_ID, Inject } from '@angular/core';
3
3
  import * as i2 from '@angular/common';
4
- import { CommonModule, CurrencyPipe, isPlatformBrowser } from '@angular/common';
4
+ import { CommonModule, CurrencyPipe, isPlatformBrowser, DOCUMENT } from '@angular/common';
5
5
  import * as i1$1 from '@angular/forms';
6
6
  import { NG_VALUE_ACCESSOR, FormControl, NG_VALIDATORS, FormsModule, ReactiveFormsModule } from '@angular/forms';
7
7
  import * as i1 from '@angular/material/checkbox';
8
8
  import { MatCheckboxModule } from '@angular/material/checkbox';
9
9
  import * as i2$2 from '@angular/material/radio';
10
10
  import { MatRadioModule } from '@angular/material/radio';
11
+ import { SubSink } from 'subsink';
11
12
  import * as i2$1 from '@angular/material/form-field';
12
13
  import { MatFormFieldModule } from '@angular/material/form-field';
13
14
  import * as i1$2 from '@angular/platform-browser';
@@ -15,7 +16,7 @@ import * as i5 from '@angular/material/input';
15
16
  import { MatInputModule } from '@angular/material/input';
16
17
  import * as i2$3 from '@angular/material/button';
17
18
  import { MatButtonModule } from '@angular/material/button';
18
- import * as i5$1 from '@ngx-translate/core';
19
+ import * as i6 from '@ngx-translate/core';
19
20
  import { TranslateModule } from '@ngx-translate/core';
20
21
  import * as i1$3 from '@angular/material/progress-spinner';
21
22
  import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
@@ -28,13 +29,12 @@ import { GoogleMapsModule } from '@angular/google-maps';
28
29
  import * as i3 from '@angular/material/select';
29
30
  import { MatSelectModule } from '@angular/material/select';
30
31
  import * as i4 from '@angular/material/core';
31
- import { SubSink } from 'subsink';
32
32
  import * as i1$4 from '@angular/material/dialog';
33
33
  import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
34
34
  import * as i3$1 from '@angular/material/menu';
35
35
  import { MatMenuModule } from '@angular/material/menu';
36
36
  import { EnumValues } from 'enum-values/src/enumValues';
37
- import * as i6 from '@angular/cdk/drag-drop';
37
+ import * as i6$1 from '@angular/cdk/drag-drop';
38
38
  import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
39
39
  import * as i2$6 from 'ngx-useful-swiper';
40
40
  import { NgxUsefulSwiperModule } from 'ngx-useful-swiper';
@@ -57,19 +57,19 @@ class KmsUiPresentationalComponent {
57
57
  }
58
58
  }
59
59
  KmsUiPresentationalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
60
- KmsUiPresentationalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KmsUiPresentationalComponent, selector: "lib-kms-ngx-ui-presentational", ngImport: i0, template: `
61
- <p>
62
- kms-ngx-ui-presentational works!
63
- </p>
60
+ KmsUiPresentationalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: KmsUiPresentationalComponent, selector: "lib-kms-ngx-ui-presentational", ngImport: i0, template: `
61
+ <p>
62
+ kms-ngx-ui-presentational works!
63
+ </p>
64
64
  `, isInline: true });
65
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KmsUiPresentationalComponent, decorators: [{
66
66
  type: Component,
67
67
  args: [{
68
68
  selector: 'lib-kms-ngx-ui-presentational',
69
- template: `
70
- <p>
71
- kms-ngx-ui-presentational works!
72
- </p>
69
+ template: `
70
+ <p>
71
+ kms-ngx-ui-presentational works!
72
+ </p>
73
73
  `,
74
74
  styles: []
75
75
  }]
@@ -175,7 +175,7 @@ CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
175
175
  useExisting: forwardRef(() => CheckboxComponent),
176
176
  multi: true,
177
177
  },
178
- ], usesInheritance: true, ngImport: i0, template: "<!-- <label class=\"wrapper ui-copy-text\"\n [ngClass]=\"{'disabled' : disabled}\">{{label}}\n <input type=\"checkbox\" \n [checked]=\"checked\"\n [value]=\"value\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n (change)=\"selectAction($event)\">\n\n</label> -->\n<mat-checkbox class=\"example-margin\" [disabled]=\"disabled\" [name]=\"name\" [(ngModel)]=\"checked\"></mat-checkbox>\n<span *ngIf=\"infoText && infoText.length > 0\" \n class=\"\"\n [ngClass]=\"{'disabled' : disabled}\">{{infoText}}\n</span>", styles: [""], components: [{ type: i1.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "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
+ ], 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"] }] });
179
179
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CheckboxComponent, decorators: [{
180
180
  type: Component,
181
181
  args: [{
@@ -201,15 +201,51 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
201
201
  /*!
202
202
  * @copyright FLYACTS GmbH 2019
203
203
  */
204
- class FormParentComponent {
204
+ class ColorableParentComponent {
205
+ setupColors(elementRef) {
206
+ if (this.color) {
207
+ let color1;
208
+ let color2;
209
+ if (this.color === 'primary' || this.color === 'accent') {
210
+ color1 = 'var(--' + this.color + 'Color)';
211
+ color2 = 'var(--' + this.color + 'ColorHover)';
212
+ }
213
+ else {
214
+ color1 = this.color;
215
+ color2 = this.color;
216
+ }
217
+ elementRef.style.setProperty('--componentColor', color1);
218
+ elementRef.style.setProperty('--componentColorHover', color2);
219
+ }
220
+ }
221
+ }
222
+ ColorableParentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ColorableParentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
223
+ ColorableParentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ColorableParentComponent, selector: "ng-component", inputs: { color: "color" }, ngImport: i0, template: '', isInline: true });
224
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ColorableParentComponent, decorators: [{
225
+ type: Component,
226
+ args: [{
227
+ selector: '',
228
+ template: '',
229
+ }]
230
+ }], propDecorators: { color: [{
231
+ type: Input
232
+ }] } });
233
+
234
+ /*!
235
+ * @copyright FLYACTS GmbH 2019
236
+ */
237
+ class FormParentComponent extends ColorableParentComponent {
205
238
  constructor(formBuilder) {
239
+ super();
206
240
  this.formBuilder = formBuilder;
241
+ this.disabled = false;
242
+ this.showRequired = false;
207
243
  this.formInitialized = false;
208
- this.allowedCharsOnlyNumbers = new Set('0123456789'.split('').map(c => c.charCodeAt(0)));
244
+ this.allowedCharsOnlyNumbers = new Set('0123456789'.split('').map((c) => c.charCodeAt(0)));
245
+ this.subs = new SubSink();
209
246
  this.formDataChanged = new EventEmitter();
210
- this.disabled = false;
211
247
  }
212
- // TODO make a service or make own compoennt etc.
248
+ // TODO make a service or make own component etc.
213
249
  /**
214
250
  * Returns if a number was pressed
215
251
  * @param e
@@ -222,9 +258,15 @@ class FormParentComponent {
222
258
  const isArrows = e.keyCode >= 37 && e.keyCode <= 40;
223
259
  const isDelete = e.keyCode == 8 || e.keyCode == 46;
224
260
  const isCutCopyOrPaste = (e.ctrlKey || e.metaKey) && (e.keyCode == 86 || e.keyCode == 88 || e.keyCode == 67);
225
- return (isNumberRow) || (isNumberPad) || (allowDelete && isDelete) || (allowArrows && isArrows) || (allowCutCopyPaste && isCutCopyOrPaste);
226
- }
227
- // TODO make a service or make own compoennt etc.
261
+ const isTab = 9;
262
+ return (isNumberRow ||
263
+ isNumberPad ||
264
+ isTab ||
265
+ (allowDelete && isDelete) ||
266
+ (allowArrows && isArrows) ||
267
+ (allowCutCopyPaste && isCutCopyOrPaste));
268
+ }
269
+ // TODO make a service or make own component etc.
228
270
  /**
229
271
  * Prevents to input other chars than numbers in input
230
272
  * @param event
@@ -235,7 +277,7 @@ class FormParentComponent {
235
277
  event.preventDefault();
236
278
  }
237
279
  }
238
- // TODO make a service or make own compoennt etc.
280
+ // TODO make a service or make own component etc.
239
281
  /**
240
282
  * Prevents input when pasting which is not number
241
283
  * @param event
@@ -253,24 +295,34 @@ class FormParentComponent {
253
295
  }
254
296
  }
255
297
  ngOnInit() {
256
- this.formDataChanged.emit(this.form);
257
- this.form.valueChanges.subscribe(() => {
298
+ this.initFormEvent();
299
+ }
300
+ ngOnDestroy() {
301
+ this.subs.unsubscribe();
302
+ }
303
+ initFormEvent() {
304
+ if (this.form) {
258
305
  this.formDataChanged.emit(this.form);
259
- });
306
+ this.form.valueChanges.subscribe(() => {
307
+ this.formDataChanged.emit(this.form);
308
+ });
309
+ }
260
310
  }
261
311
  }
262
312
  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 });
263
- 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 });
313
+ FormParentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FormParentComponent, selector: "kms-form", inputs: { disabled: "disabled", showRequired: "showRequired" }, outputs: { formDataChanged: "formDataChanged" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
264
314
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FormParentComponent, decorators: [{
265
315
  type: Component,
266
316
  args: [{
267
317
  selector: 'kms-form',
268
318
  template: '',
269
319
  }]
270
- }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }]; }, propDecorators: { formDataChanged: [{
271
- type: Output
272
- }], disabled: [{
320
+ }], ctorParameters: function () { return [{ type: i1$1.FormBuilder }]; }, propDecorators: { disabled: [{
273
321
  type: Input
322
+ }], showRequired: [{
323
+ type: Input
324
+ }], formDataChanged: [{
325
+ type: Output
274
326
  }] } });
275
327
 
276
328
  class FormControlParentComponent extends FormParentComponent {
@@ -319,7 +371,8 @@ class FormControlParentComponent extends FormParentComponent {
319
371
  this.onTouch = fn;
320
372
  }
321
373
  setDisabledState(isDisabled) {
322
- if (this.child) {
374
+ var _a;
375
+ if ((_a = this.child) === null || _a === void 0 ? void 0 : _a.nativeElement) {
323
376
  this.renderer.setProperty(this.child.nativeElement, 'disabled', isDisabled);
324
377
  }
325
378
  }
@@ -344,16 +397,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
344
397
  args: ['child']
345
398
  }] } });
346
399
 
347
- /*!
348
- * @copyright FLYACTS GmbH 2019
349
- */
350
-
351
- /**
352
- * Attached File DTO
353
- */
354
- class AttachedFileDTO {
355
- }
356
-
357
400
  /*!
358
401
  * @copyright FLYACTS GmbH 2019
359
402
  */
@@ -369,41 +412,18 @@ var IconSize$1;
369
412
  IconSize["XXL"] = "size-512";
370
413
  IconSize["XXXL"] = "size-1024";
371
414
  IconSize["NONE"] = "NONE";
372
- })(IconSize$1 || (IconSize$1 = {}));
373
-
374
- /**
375
- * @copyright FLYACTS GmbH 2019
376
- */
377
- /**
378
- * Check if null or undefined
379
- * @param value value that is being checked
380
- */
381
- function isValue(value) {
382
- if (value === null) {
383
- return false;
384
- }
385
- if (typeof value === 'undefined') {
386
- return false;
387
- }
388
- return true;
389
- }
390
-
391
- /*!
392
- * @copyright FLYACTS GmbH 2019
393
- */
394
- var IconSize;
395
- (function (IconSize) {
396
- IconSize["FULLSIZE"] = "size-full";
397
- IconSize["TINY"] = "size-16";
398
- IconSize["SMALLER"] = "size-20";
399
- IconSize["SMALL"] = "size-32";
400
- IconSize["MEDIUM"] = "size-64";
401
- IconSize["LARGE"] = "size-128";
402
- IconSize["XL"] = "size-256";
403
- IconSize["XXL"] = "size-512";
404
- IconSize["XXXL"] = "size-1024";
405
- IconSize["NONE"] = "NONE";
406
- })(IconSize || (IconSize = {}));
415
+ })(IconSize$1 || (IconSize$1 = {}));
416
+ var IconSizePx;
417
+ (function (IconSizePx) {
418
+ IconSizePx[IconSizePx["TINY"] = 16] = "TINY";
419
+ IconSizePx[IconSizePx["SMALLER"] = 20] = "SMALLER";
420
+ IconSizePx[IconSizePx["SMALL"] = 32] = "SMALL";
421
+ IconSizePx[IconSizePx["MEDIUM"] = 64] = "MEDIUM";
422
+ IconSizePx[IconSizePx["LARGE"] = 128] = "LARGE";
423
+ IconSizePx[IconSizePx["XL"] = 256] = "XL";
424
+ IconSizePx[IconSizePx["XXL"] = 512] = "XXL";
425
+ IconSizePx[IconSizePx["XXXL"] = 1024] = "XXXL";
426
+ })(IconSizePx || (IconSizePx = {}));
407
427
 
408
428
  /**
409
429
  * @copyright KMS GmbH
@@ -413,13 +433,14 @@ class IconComponent {
413
433
  this.sanitizer = sanitizer;
414
434
  /**
415
435
  * Optional: Different size via CSS inline style.
436
+ * @deprecated. Please use size instead
416
437
  */
417
- this.iconSize = IconSize.FULLSIZE;
438
+ this.iconSize = IconSize$1.FULLSIZE;
418
439
  /**
419
440
  * Dont use icon sprite
420
441
  */
421
442
  this.dontUseSprite = false;
422
- this.IconSize = IconSize;
443
+ this.IconSize = IconSize$1;
423
444
  this.Version = VERSION.full;
424
445
  this.timestamp = 0;
425
446
  this.iconToShow = this.icon;
@@ -432,7 +453,7 @@ class IconComponent {
432
453
  }
433
454
  }
434
455
  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 });
435
- 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\">\n <span class=\"icon {{ iconSize }}\" [ngClass]=\"iconClass\" [ngStyle]=\"iconStyle\">\n <svg>\n <use\n [attr.xlink:href]=\"\n 'assets/sprite.svg?Version=' + Version + '#' + iconToShow\n \"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\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"] }] });
456
+ 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", size: "size", dontUseSprite: "dontUseSprite" }, ngImport: i0, template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\r\n <span class=\"icon {{ iconSize }}\" [ngClass]=\"iconClass\" [ngStyle]=\"iconStyle\" [style.width.px]=\"size ? size : undefined\" [style.height.px]=\"size ? size : undefined\">\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"] }] });
436
457
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: IconComponent, decorators: [{
437
458
  type: Component,
438
459
  args: [{
@@ -448,6 +469,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
448
469
  type: Input
449
470
  }], iconSize: [{
450
471
  type: Input
472
+ }], size: [{
473
+ type: Input
451
474
  }], dontUseSprite: [{
452
475
  type: Input
453
476
  }] } });
@@ -594,6 +617,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
594
617
  args: ['mouseleave']
595
618
  }] } });
596
619
 
620
+ class SizeDirective {
621
+ constructor(elementRef) {
622
+ this.elementRef = elementRef;
623
+ this.size = '';
624
+ }
625
+ ngOnInit() {
626
+ this.elementRef.nativeElement.style.width(this.size + 'px');
627
+ this.elementRef.nativeElement.style.height(this.size + 'px');
628
+ }
629
+ }
630
+ SizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SizeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
631
+ SizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: SizeDirective, selector: "[size]", inputs: { size: "size" }, ngImport: i0 });
632
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SizeDirective, decorators: [{
633
+ type: Directive,
634
+ args: [{ selector: '[size]' }]
635
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { size: [{
636
+ type: Input
637
+ }] } });
638
+
597
639
  class TooltipIconComponent {
598
640
  constructor() {
599
641
  this.tooltipTitle = "";
@@ -602,11 +644,11 @@ class TooltipIconComponent {
602
644
  this.tooltipLinkUrl = "";
603
645
  this.placement = "";
604
646
  this.delay = 1000;
605
- this.IconSize = IconSize$1;
647
+ this.IconSizePx = IconSizePx;
606
648
  }
607
649
  }
608
650
  TooltipIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
609
- 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\n kmsTooltip\n [tooltipTitle]=\"tooltipTitle\"\n [tooltipText]=\"tooltipText\"\n [tooltipPlacement]=\"placement\"\n [tooltipDelay]=\"delay\"\n [tooltipLinkText]=\"tooltipLinkText\"\n [tooltipLinkUrl]=\"tooltipLinkUrl\"\n>\n <kms-icon icon=\"ic_info\" [iconSize]=\"IconSize.SMALLER\" [iconClass]=\"'color-primary'\"></kms-icon>\n</span>\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"] }] });
651
+ 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\" [size]=\"IconSizePx.SMALLER\" [iconClass]=\"'color-primary'\"></kms-icon>\r\n</span>\r\n", styles: [""], components: [{ type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }], directives: [{ type: TooltipDirective, selector: "[kmsTooltip]", inputs: ["tooltipTitle", "tooltipText", "tooltipLinkText", "tooltipLinkUrl", "tooltipPlacement", "tooltipDelay", "tooltipPlaceIntoHost", "tooltipOnlyonclick"] }, { type: SizeDirective, selector: "[size]", inputs: ["size"] }] });
610
652
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TooltipIconComponent, decorators: [{
611
653
  type: Component,
612
654
  args: [{
@@ -715,6 +757,7 @@ class RadioButtonComponent extends ActionsParentComponent {
715
757
  * Internal description id. Will be send in the output event when the radio button is selected.
716
758
  */
717
759
  this.id = '';
760
+ this.radioButtonSize = 16;
718
761
  // eslint-disable-next-line @typescript-eslint/no-empty-function
719
762
  this.onChange = () => { };
720
763
  // eslint-disable-next-line @typescript-eslint/no-empty-function
@@ -743,13 +786,13 @@ class RadioButtonComponent extends ActionsParentComponent {
743
786
  }
744
787
  }
745
788
  RadioButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RadioButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
746
- 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: [
789
+ RadioButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: RadioButtonComponent, selector: "kms-radiobutton", inputs: { name: "name", id: "id", radioButtonSize: "radioButtonSize", formControl: "formControl" }, providers: [
747
790
  {
748
791
  provide: NG_VALUE_ACCESSOR,
749
792
  useExisting: forwardRef(() => RadioButtonComponent),
750
793
  multi: true,
751
794
  },
752
- ], usesInheritance: true, ngImport: i0, template: "<label class=\"wrapper ui-small-text\"\n [ngClass]=\"{'disabled' : disabled}\">\n <input type=\"radio\"\n [name]=\"name\"\n [value]=\"value\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n (change)=\"selectAction($event)\">{{label}}\n\n <kms-icon\n class=\"checkmark\" \n aria-hidden=\"true\"\n *ngIf=\"checked\"\n [ngClass]=\"{\n 'disabled' : disabled\n }\"\n [iconClass]=\"{\n 'disabled' : disabled, \n 'color-primary': true,\n 'size-16': true\n }\"\n [icon]=\"'ic_radiobutton_active'\"\n >\n </kms-icon>\n <kms-icon\n class=\"checkmark\" \n aria-hidden=\"true\"\n *ngIf=\"!checked\"\n [ngClass]=\"{\n 'disabled' : disabled\n }\"\n [iconClass]=\"{\n 'disabled' : disabled, \n 'color-primary': true,\n 'size-16': true\n }\"\n [icon]=\"'ic_radiobutton_inactive'\"\n >\n </kms-icon>\n <ng-content></ng-content>\n</label>\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"] }] });
795
+ ], 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 }\"\r\n [icon]=\"'ic_radiobutton_active'\"\r\n [size]=\"radioButtonSize\"\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 }\"\r\n [icon]=\"'ic_radiobutton_inactive'\"\r\n [size]=\"radioButtonSize\"\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", "size", "dontUseSprite"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: SizeDirective, selector: "[size]", inputs: ["size"] }] });
753
796
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RadioButtonComponent, decorators: [{
754
797
  type: Component,
755
798
  args: [{
@@ -768,6 +811,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
768
811
  type: Input
769
812
  }], id: [{
770
813
  type: Input
814
+ }], radioButtonSize: [{
815
+ type: Input
771
816
  }], formControl: [{
772
817
  type: Input
773
818
  }] } });
@@ -910,7 +955,7 @@ YesNoRadiogroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0
910
955
  useExisting: forwardRef(() => YesNoRadiogroupComponent),
911
956
  multi: true,
912
957
  },
913
- ], viewQueries: [{ propertyName: "child", first: true, predicate: ["child"], descendants: true }], ngImport: i0, template: "<form [formGroup]=\"form\">\n <div>{{ header }}</div>\n <mat-radio-group [formControl]=\"form.controls['yesno']\" [disabled]=\"disabled\" #child>\n <mat-radio-button [value]=\"true\" [checked]=\"internalValue === true\"> {{ textYes }}</mat-radio-button>\n <mat-radio-button [value]=\"false\" [checked]=\"internalValue === false\"> {{ textNo }}</mat-radio-button>\n </mat-radio-group>\n</form>\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"] }] });
958
+ ], 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"] }] });
914
959
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: YesNoRadiogroupComponent, decorators: [{
915
960
  type: Component,
916
961
  args: [{
@@ -937,6 +982,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
937
982
  args: ['child']
938
983
  }] } });
939
984
 
985
+ /**
986
+ * @copyright FLYACTS GmbH 2019
987
+ */
988
+ /**
989
+ * Check if null or undefined
990
+ * @param value value that is being checked
991
+ */
992
+ function isValue(value) {
993
+ if (value === null) {
994
+ return false;
995
+ }
996
+ if (typeof value === 'undefined') {
997
+ return false;
998
+ }
999
+ return true;
1000
+ }
1001
+
940
1002
  // Max size in bytes of uploaded image
941
1003
  const MAX_SIZE_BYTES = 2097152;
942
1004
  class FileInputComponent {
@@ -971,7 +1033,7 @@ class FileInputComponent {
971
1033
  });
972
1034
  this.subscriptions = [];
973
1035
  this.newImageLoading = false;
974
- this.IconSize = IconSize$1;
1036
+ this.IconSizePx = IconSizePx;
975
1037
  this.formDataChanged = new EventEmitter();
976
1038
  // eslint-disable-next-line @typescript-eslint/no-empty-function
977
1039
  this.onChange = () => { };
@@ -1122,7 +1184,7 @@ FileInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
1122
1184
  useExisting: forwardRef(() => FileInputComponent),
1123
1185
  multi: true,
1124
1186
  },
1125
- ], viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<form [formGroup]=\"form\" (change)=\"newImageLoading=true\" class=\"fileInput\"> \n\n <div *ngIf=\"form.value.Filename && previewImage\">\n <div *ngIf=\"newImageLoading\">\n {{ 'file-input.loading' | translate }}\n </div>\n <div *ngIf=\"!newImageLoading\">\n <div class=\"\">\n <div class=\"\">\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;\" />\n <img *ngIf=\"form.value.ImageAsDataURL && form.value.ImageAsDataURL !== ''\" [src]=\"form.value.ImageAsDataURL\" style=\"height: 40px; width: fit-content;\" />\n </div>\n <div class=\"\">{{form.value.Filename}}</div>\n <div class=\"\">\n <div (click)=\"removeFromList()\" *ngIf=\"allowRemove\">\n <kms-icon icon=\"trash\" [iconSize]=\"IconSize.TINY\" iconClass=\"color-black\"></kms-icon> \n {{ 'file-input.remove' }}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div *ngIf=\"!previewImage\">\n <div class=\"\">{{form.value.Filename}}</div>\n </div>\n\n <button (click)=\"selectImageOverlay()\" class=\"button-primary-font-color\" mat-stroked-button>\n <span>{{ label }}</span>\n </button>\n <input\n type=\"file\"\n [accept]=\"acceptedFileMimetypes\"\n style=\"display: none\"\n #fileInput\n (click)=\"clearInputValue($event)\"\n (change)=\"selectImage($event)\"\n />\n\n <input type=\"hidden\" [formControl]=\"form.controls['ImageIdent']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['ImageLink']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['Filename']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['ImageAsDataURL']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['Text']\" />\n\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 } });
1187
+ ], 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\" [size]=\"IconSizePx.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", "size", "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: SizeDirective, selector: "[size]", inputs: ["size"] }, { 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": i6.TranslatePipe } });
1126
1188
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FileInputComponent, decorators: [{
1127
1189
  type: Component,
1128
1190
  args: [{
@@ -1172,7 +1234,7 @@ class LoaderComponent {
1172
1234
  ngOnInit() { }
1173
1235
  }
1174
1236
  LoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1175
- 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\">\n <mat-spinner class=\"spinnerMargin\" color=\"accent\" diameter=\"44\"></mat-spinner>\n</div>\n", styles: [""], components: [{ type: i1$3.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
1237
+ 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"] }] });
1176
1238
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoaderComponent, decorators: [{
1177
1239
  type: Component,
1178
1240
  args: [{
@@ -1315,7 +1377,7 @@ class FlyoutComponent {
1315
1377
  }
1316
1378
  }
1317
1379
  FlyoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1318
- 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\"\n [ngClass]=\"{'is-active': isDropdownOpened}\"\n>\n <div class=\"flyout-header\" (click)=\"toggleDropdownHeader()\" [ngClass]=\"headerCssClass\">\n <span [innerHtml]=\"headerTitle | kmsSafeHtml\"></span>\n <span [innerHtml]=\"headerText | kmsSafeHtml\"></span>\n\n <ng-content select=\"[header]\"></ng-content>\n\n <div *ngIf=\"hasButtonForMore\" (click)=\"toggleDropdown()\" class=\"flyout-header-more\">\n <span *ngIf=\"!isDropdownOpened\">\n {{ moreText }}\n </span>\n <span *ngIf=\"isDropdownOpened\">\n {{ lessText }}\n </span>\n <kms-icon [icon]=\"'chevron-down'\"\n [iconClass]=\"{'size-16': true, 'is-rotating180': isDropdownOpened}\" >\n </kms-icon>\n </div>\n </div>\n <div \n class=\"flyout-body\"\n [ngClass]=\"bodyCssClass\"\n tabindex=\"0\"\n [@dropdownAnimation]=\"{value: isDropdownOpened, params: {targetHeight: targetHeight, animationTime: '500'}}\"\n getMaxHeight=\"inner\"\n (sumOfHeight)=\"setDropdownListHeight($event)\"\n #flyoutHeader>\n <div class=\"inner\" #content>\n <ng-content ></ng-content>\n </div>\n </div>\n\n</div>\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: [
1380
+ 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'\" [ngClass]=\"{'is-rotating180':isDropdownOpened}\" [size]=\"16\">\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", "size", "dontUseSprite"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: SizeDirective, selector: "[size]", inputs: ["size"] }, { type: GetMaxHeightDirective, selector: "[getMaxHeight]", inputs: ["getMaxHeight"], outputs: ["maxHeightChanged", "sumOfHeight"] }], pipes: { "kmsSafeHtml": SafeHtmlPipe }, animations: [
1319
1381
  trigger('dropdownAnimation', [
1320
1382
  state('true', style({
1321
1383
  height: '{{targetHeight}}',
@@ -1648,7 +1710,7 @@ EnumRadiogroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
1648
1710
  useExisting: forwardRef(() => EnumRadiogroupComponent),
1649
1711
  multi: true,
1650
1712
  },
1651
- ], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\">\n <div>{{ header }}</div>\n <mat-radio-group [formControl]=\"form.controls['enumData']\" [disabled]=\"disabled\" #child>\n <mat-radio-button [value]=\"choice\" [checked]=\"value === choice\" *ngFor=\"let choice of optionValues\">{{ translationPrefix + '.' + choice | translate }}</mat-radio-button>\n </mat-radio-group>\n</form>", components: [{ type: i2$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 } });
1713
+ ], 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": i6.TranslatePipe } });
1652
1714
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EnumRadiogroupComponent, decorators: [{
1653
1715
  type: Component,
1654
1716
  args: [{
@@ -1690,7 +1752,7 @@ class KMSAccordionItemComponent {
1690
1752
  }
1691
1753
  }
1692
1754
  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 });
1693
- 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"] }] });
1755
+ 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", "size", "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"] }] });
1694
1756
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KMSAccordionItemComponent, decorators: [{
1695
1757
  type: Component,
1696
1758
  args: [{
@@ -1715,12 +1777,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1715
1777
  * Service to get viewport
1716
1778
  */
1717
1779
  class ViewportService {
1718
- constructor(platformId) {
1780
+ constructor(platformId, document) {
1719
1781
  this.platformId = platformId;
1782
+ this.document = document;
1720
1783
  this.viewports = [
1721
1784
  {
1722
1785
  name: 'xs',
1723
- low: 420,
1786
+ low: 360,
1724
1787
  high: 990,
1725
1788
  },
1726
1789
  {
@@ -1735,7 +1798,7 @@ class ViewportService {
1735
1798
  },
1736
1799
  {
1737
1800
  name: 'l',
1738
- low: 12001,
1801
+ low: 1201,
1739
1802
  high: 1400,
1740
1803
  },
1741
1804
  {
@@ -1756,45 +1819,52 @@ class ViewportService {
1756
1819
  ];
1757
1820
  this.viewportChangedSubscriber = new Subject();
1758
1821
  this.viewportResizedSubscriber = new Subject();
1822
+ this.isBrowser = false;
1759
1823
  if (isPlatformBrowser(this.platformId)) {
1760
1824
  window.addEventListener('resize', this.documentSizeChanged.bind(this), { passive: true });
1825
+ this.isBrowser = true;
1761
1826
  }
1762
1827
  }
1763
1828
  /**
1764
1829
  * Get window height
1765
1830
  */
1766
1831
  getDocumentHeight() {
1767
- return isPlatformBrowser(this.platformId) ? document.body.clientHeight : 1200;
1832
+ return this.isBrowser ? document.body.clientHeight : 1200;
1768
1833
  }
1769
1834
  /**
1770
1835
  * Get window width
1771
1836
  */
1772
1837
  getDocumentWidth() {
1773
- return isPlatformBrowser(this.platformId) ? document.body.clientWidth : 1200;
1838
+ return this.isBrowser ? document.body.clientWidth : 1200;
1774
1839
  }
1775
1840
  /**
1776
1841
  * Get window height
1777
1842
  */
1778
1843
  getWindowHeight() {
1779
- return isPlatformBrowser(this.platformId) ? window.innerHeight : 1200;
1844
+ return this.isBrowser ? window.innerHeight : 1200;
1780
1845
  }
1781
1846
  /**
1782
1847
  * Get window width
1783
1848
  */
1784
1849
  getWindowWidth() {
1785
- return isPlatformBrowser(this.platformId) ? window.innerWidth : 1200;
1850
+ return this.isBrowser ? window.innerWidth : 1200;
1786
1851
  }
1787
1852
  /**
1788
1853
  * Returns the current viewport MQ as string
1789
1854
  * @returns string
1790
1855
  */
1791
1856
  getCurrentViewPort() {
1792
- if (!this.currentViewport) {
1793
- const currentWidth = isPlatformBrowser(this.platformId) ? document.body.clientWidth : 1200;
1794
- this.currentViewport = this.convertWidthToMediaQuery(currentWidth);
1795
- }
1857
+ const currentWidth = this.isBrowser ? document.body.clientWidth : 1200;
1858
+ this.currentViewport = this.convertWidthToMediaQuery(currentWidth);
1796
1859
  return this.currentViewport;
1797
1860
  }
1861
+ /**
1862
+ * Returns the current viewport MQ as string
1863
+ * @returns string
1864
+ */
1865
+ getCurrentViewPortNumber() {
1866
+ return this.isBrowser ? document.body.clientWidth : 1200;
1867
+ }
1798
1868
  /**
1799
1869
  * Provides mq´s as string
1800
1870
  */
@@ -1808,7 +1878,7 @@ class ViewportService {
1808
1878
  return this.viewportResizedSubscriber.asObservable();
1809
1879
  }
1810
1880
  scrollToElementId(el, alignCenter = false) {
1811
- if (isPlatformBrowser(this.platformId)) {
1881
+ if (this.isBrowser) {
1812
1882
  this.scrollToElement(document.querySelector('#' + el), alignCenter);
1813
1883
  }
1814
1884
  }
@@ -1818,24 +1888,20 @@ class ViewportService {
1818
1888
  * @param alignCenter - defines if the element needs to be centered on window
1819
1889
  */
1820
1890
  scrollToElement(el, alignCenter = false) {
1821
- if (isPlatformBrowser(this.platformId)) {
1891
+ if (this.isBrowser) {
1822
1892
  let extraScrollTop = 0;
1823
1893
  if (alignCenter) {
1824
1894
  extraScrollTop = (window.innerHeight - el.clientHeight) / 2;
1825
1895
  }
1826
- /*
1827
- const elementPos: DOMRect = el.getBoundingClientRect();
1828
- const scrollTopPosition = elementPos.x - extraScrollTop;
1829
- */
1830
- //let offsetLeft = 0;
1896
+ let offsetLeft = 0;
1831
1897
  let offsetTop = 0;
1832
1898
  let elTemp = el;
1833
1899
  while (elTemp) {
1834
- //offsetLeft += elTemp.offsetLeft;
1900
+ offsetLeft += elTemp.offsetLeft;
1835
1901
  offsetTop += elTemp.offsetTop;
1836
1902
  elTemp = elTemp.parentElement ? elTemp.parentElement : null;
1837
1903
  }
1838
- window.scrollTo({ left: 0, top: offsetTop - extraScrollTop, behavior: 'smooth' });
1904
+ window.scrollTo({ left: offsetLeft, top: offsetTop - extraScrollTop, behavior: 'smooth' });
1839
1905
  }
1840
1906
  }
1841
1907
  /**
@@ -1843,13 +1909,42 @@ class ViewportService {
1843
1909
  * @param top - top position value
1844
1910
  */
1845
1911
  scrollTop(top) {
1846
- if (isPlatformBrowser(this.platformId)) {
1912
+ if (this.isBrowser) {
1847
1913
  window.scrollTo({ left: 0, top: top, behavior: 'smooth' });
1848
1914
  }
1849
1915
  }
1850
- ngOnDestroy() {
1851
- if (isPlatformBrowser(this.platformId)) {
1852
- window.removeEventListener('resize', this.documentSizeChanged);
1916
+ isPortrait() {
1917
+ if (this.isBrowser)
1918
+ return window.innerHeight > window.innerWidth;
1919
+ else
1920
+ return;
1921
+ }
1922
+ isLandscape() {
1923
+ if (this.isBrowser) {
1924
+ const isLandscape = window.orientation === 90 || window.orientation === -90;
1925
+ return isLandscape;
1926
+ }
1927
+ else {
1928
+ return;
1929
+ }
1930
+ }
1931
+ isMobile() {
1932
+ return this.getCurrentViewPortNumber() < this.viewports[2].low;
1933
+ }
1934
+ calculateFullscreenElementsheight(id, defaultheight, extra) {
1935
+ if (!this.isBrowser || this.isMobile()) {
1936
+ return defaultheight;
1937
+ }
1938
+ else {
1939
+ const map = this.document.getElementById(id);
1940
+ const footer = this.document.getElementsByTagName('footer')[0];
1941
+ if (map && footer) {
1942
+ return `${window.innerHeight - map.offsetTop - footer.offsetHeight - extra}px`;
1943
+ }
1944
+ else {
1945
+ console.warn('could not calculate map height');
1946
+ return defaultheight;
1947
+ }
1853
1948
  }
1854
1949
  }
1855
1950
  /**
@@ -1895,29 +1990,22 @@ class ViewportService {
1895
1990
  }
1896
1991
  return currentViewport;
1897
1992
  }
1898
- isPortrait() {
1899
- if (isPlatformBrowser(this.platformId))
1900
- return window.innerHeight > window.innerWidth;
1901
- else
1902
- return;
1903
- }
1904
- isLandscape() {
1905
- if (isPlatformBrowser(this.platformId)) {
1906
- const isLandscape = window.orientation === 90 || window.orientation === -90;
1907
- return isLandscape;
1908
- }
1909
- else {
1910
- return;
1993
+ ngOnDestroy() {
1994
+ if (this.isBrowser) {
1995
+ window.removeEventListener('resize', this.documentSizeChanged);
1911
1996
  }
1912
1997
  }
1913
1998
  }
1914
- ViewportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewportService, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
1999
+ ViewportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewportService, deps: [{ token: PLATFORM_ID }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
1915
2000
  ViewportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewportService });
1916
2001
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewportService, decorators: [{
1917
2002
  type: Injectable
1918
2003
  }], ctorParameters: function () { return [{ type: Object, decorators: [{
1919
2004
  type: Inject,
1920
2005
  args: [PLATFORM_ID]
2006
+ }] }, { type: Document, decorators: [{
2007
+ type: Inject,
2008
+ args: [DOCUMENT]
1921
2009
  }] }]; } });
1922
2010
 
1923
2011
  /*!
@@ -1982,13 +2070,6 @@ class MapComponent {
1982
2070
  this.center.lng = results[0].geometry.location.lng();
1983
2071
  this.addMarker();
1984
2072
  this.geoDataFoundForAddress = true;
1985
- // react to browser resize
1986
- this.setMapWidth(this.viewPortService.getDocumentWidth());
1987
- this.viewportSubscription = this.viewPortService.getViewportResizedObserver().subscribe((val) => {
1988
- this.setMapWidth(val);
1989
- }, (error) => {
1990
- console.error('Get updated ViewPort failed', error);
1991
- });
1992
2073
  }
1993
2074
  else {
1994
2075
  console.error('Sorry, this search of map address produced no results.');
@@ -2012,18 +2093,6 @@ class MapComponent {
2012
2093
  options: { animation: google.maps.Animation.DROP },
2013
2094
  });
2014
2095
  }
2015
- /**
2016
- * sets the width of map accodring to viewport
2017
- */
2018
- setMapWidth(val) {
2019
- if (val < 991) {
2020
- this.width = (val - 84) + 'px';
2021
- }
2022
- else {
2023
- this.width = '100%';
2024
- }
2025
- this.widthSet = true;
2026
- }
2027
2096
  /**
2028
2097
  * Zooms in into map
2029
2098
  */
@@ -2042,7 +2111,7 @@ class MapComponent {
2042
2111
  }
2043
2112
  }
2044
2113
  MapComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MapComponent, deps: [{ token: ViewportService }], target: i0.ɵɵFactoryTarget.Component });
2045
- 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\">\n <google-map\n height=\"415px\"\n [width]=\"width\"\n [zoom]=\"zoom\"\n [center]=\"center\"\n [options]=\"options\"\n >\n <map-marker\n *ngFor=\"let marker of markers\"\n [position]=\"marker.position\"\n [label]=\"marker.label\"\n [title]=\"marker.title\"\n [options]=\"marker.options\"\n >\n </map-marker>\n </google-map>\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"] }] });
2114
+ 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\">\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"] }] });
2046
2115
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MapComponent, decorators: [{
2047
2116
  type: Component,
2048
2117
  args: [{
@@ -2093,7 +2162,7 @@ SalutationDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.
2093
2162
  useExisting: forwardRef(() => SalutationDropdownComponent),
2094
2163
  multi: true,
2095
2164
  },
2096
- ], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" class=\"row\">\n <mat-form-field class=\"col\">\n <mat-select disableOptionCentering [formControl]=\"form.controls['salut']\" [placeholder]=\"placeholder\" [value]=\"value\" #child>\n <mat-option [value]=\"SalutationEnum.NOT_SPECIFIED\">{{ 'general.salutation.' + Object.keys(SalutationEnum)[0]?.toLowerCase() | translate }}</mat-option>\n <mat-option [value]=\"SalutationEnum.MALE\">{{ 'general.salutation.' + Object.keys(SalutationEnum)[1]?.toLowerCase() | translate }}</mat-option>\n <mat-option [value]=\"SalutationEnum.FEMALE\">{{ 'general.salutation.' + Object.keys(SalutationEnum)[2]?.toLowerCase() | translate }}</mat-option>\n </mat-select>\n </mat-form-field>\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 } });
2165
+ ], 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": i6.TranslatePipe } });
2097
2166
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SalutationDropdownComponent, decorators: [{
2098
2167
  type: Component,
2099
2168
  args: [{
@@ -2129,6 +2198,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2129
2198
  type: Input
2130
2199
  }] } });
2131
2200
 
2201
+ /*!
2202
+ * @copyright FLYACTS GmbH 2019
2203
+ */
2204
+
2205
+ /**
2206
+ * Attached File DTO
2207
+ */
2208
+ class AttachedFileDTO {
2209
+ }
2210
+
2211
+ /*!
2212
+ * @copyright FLYACTS GmbH 2019
2213
+ */
2214
+ var IconSize;
2215
+ (function (IconSize) {
2216
+ IconSize["FULLSIZE"] = "size-full";
2217
+ IconSize["TINY"] = "size-16";
2218
+ IconSize["SMALLER"] = "size-20";
2219
+ IconSize["SMALL"] = "size-32";
2220
+ IconSize["MEDIUM"] = "size-64";
2221
+ IconSize["LARGE"] = "size-128";
2222
+ IconSize["XL"] = "size-256";
2223
+ IconSize["XXL"] = "size-512";
2224
+ IconSize["XXXL"] = "size-1024";
2225
+ IconSize["NONE"] = "NONE";
2226
+ })(IconSize || (IconSize = {}));
2227
+
2132
2228
  class SalutationRadiogroupComponent extends FormControlParentComponent {
2133
2229
  constructor(formBuilder, renderer) {
2134
2230
  super(formBuilder, renderer);
@@ -2157,7 +2253,7 @@ SalutationRadiogroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
2157
2253
  useExisting: forwardRef(() => SalutationRadiogroupComponent),
2158
2254
  multi: true,
2159
2255
  },
2160
- ], usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"form\" >\n <mat-radio-group [formControl]=\"form.controls['salut']\" [disabled]=\"disabled\" #radioGroup>\n <mat-radio-button color=\"primary\" [value]=\"SalutationEnum.NOT_SPECIFIED\" [checked]=\"value === SalutationEnum.NOT_SPECIFIED\">\n {{ 'general.salutation.' + Object.keys(SalutationEnum)[0]?.toLowerCase() | translate }}\n </mat-radio-button>\n <mat-radio-button color=\"primary\" [value]=\"SalutationEnum.MALE\" [checked]=\"value === SalutationEnum.MALE\">\n {{ 'general.salutation.' + Object.keys(SalutationEnum)[1]?.toLowerCase() | translate }}\n </mat-radio-button>\n <mat-radio-button color=\"primary\" [value]=\"SalutationEnum.FEMALE\" [checked]=\"value === SalutationEnum.FEMALE\">\n {{ 'general.salutation.' + Object.keys(SalutationEnum)[2]?.toLowerCase() | translate }}\n </mat-radio-button>\n </mat-radio-group>\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 } });
2256
+ ], 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": i6.TranslatePipe } });
2161
2257
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SalutationRadiogroupComponent, decorators: [{
2162
2258
  type: Component,
2163
2259
  args: [{
@@ -2205,7 +2301,7 @@ class BackToTopComponent {
2205
2301
  }
2206
2302
  }
2207
2303
  BackToTopComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BackToTopComponent, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component });
2208
- 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\"\n [ngClass]=\"{'show': windowScrolled}\"\n (click)=\"scrollToTop()\">\n <div class=\"scrollToTop-inner\">\n <kms-icon icon=\"floating_button_clear\" iconClass=\"color-white\"></kms-icon>\n </div>\n</div>", components: [{ type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2304
+ 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", "size", "dontUseSprite"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
2209
2305
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BackToTopComponent, decorators: [{
2210
2306
  type: Component,
2211
2307
  args: [{
@@ -2264,7 +2360,7 @@ class GenericDialogComponent {
2264
2360
  }
2265
2361
  }
2266
2362
  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 });
2267
- 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\">\n <h3>{{ data.title }}</h3>\n</div>\n<div mat-dialog-content class=\"mat-dialog-content\">\n {{ data.message }}\n</div>\n<div mat-dialog-actions class=\"custom-dialog-actions\">\n <button\n mat-flat-button\n class=\"test_secondary_button\"\n color=\"accent\"\n (click)=\"onClickAction(ButtonResponseType.secondary)\"\n >\n {{ buttons.secondary }}\n </button>\n <button\n mat-flat-button\n class=\"test_primary_button\"\n color=\"primary\"\n (click)=\"onClickAction(ButtonResponseType.primary)\"\n >\n {{ buttons.primary }}\n </button>\n</div>\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]" }] });
2363
+ 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]" }] });
2268
2364
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: GenericDialogComponent, decorators: [{
2269
2365
  type: Component,
2270
2366
  args: [{
@@ -2310,7 +2406,7 @@ class ButtonWithConfirmDialogComponent {
2310
2406
  }
2311
2407
  }
2312
2408
  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 });
2313
- 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\n type=\"button\"\n (click)=\"start()\"\n mat-stroked-button\n [disabled]=\"disabled\"\n>\n {{ buttonText }}\n</button>\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"] }] });
2409
+ 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"] }] });
2314
2410
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonWithConfirmDialogComponent, decorators: [{
2315
2411
  type: Component,
2316
2412
  args: [{
@@ -2346,6 +2442,8 @@ class DropdownFromDataComponent extends FormControlParentComponent {
2346
2442
  this.label = '';
2347
2443
  this.required = false;
2348
2444
  this.useEnumIndexAsValue = false;
2445
+ // multiple selection
2446
+ this.multiple = false;
2349
2447
  this.keys = [];
2350
2448
  this.values = [];
2351
2449
  this.Object = Object;
@@ -2366,7 +2464,7 @@ class DropdownFromDataComponent extends FormControlParentComponent {
2366
2464
  dropdownData: [],
2367
2465
  });
2368
2466
  this.formInitialized = true;
2369
- this.form.valueChanges.subscribe(value => {
2467
+ this.form.valueChanges.subscribe((value) => {
2370
2468
  this.internalValue = value.dropdownData;
2371
2469
  this.onChange(value.dropdownData);
2372
2470
  });
@@ -2418,20 +2516,20 @@ class DropdownFromDataComponent extends FormControlParentComponent {
2418
2516
  */
2419
2517
  setDisplayKey(key) {
2420
2518
  /*
2421
- if (this.translation && key !== null) {
2422
- if (this.translation.isPrefix) {
2423
- return this.translationService.instant(this.translation.path + '.' + key);
2424
- } else if (this.translation.useKey) {
2425
- return this.translationService.instant(this.translation.path, { key: key });
2426
- } else if (!this.translation?.useKey && !this.translation?.isPrefix) {
2427
- return this.translationService.instant(this.translation.path);
2519
+ if (this.translation && key !== null) {
2520
+ if (this.translation.isPrefix) {
2521
+ return this.translationService.instant(this.translation.path + '.' + key);
2522
+ } else if (this.translation.useKey) {
2523
+ return this.translationService.instant(this.translation.path, { key: key });
2524
+ } else if (!this.translation?.useKey && !this.translation?.isPrefix) {
2525
+ return this.translationService.instant(this.translation.path);
2526
+ }
2527
+ } else if (key == null) {
2528
+ return '';
2529
+ } else if (!this.translation) {
2530
+ return key;
2428
2531
  }
2429
- } else if (key == null) {
2430
- return '';
2431
- } else if (!this.translation) {
2432
- return key;
2433
- }
2434
- */
2532
+ */
2435
2533
  return key;
2436
2534
  }
2437
2535
  valueChanged(value) {
@@ -2442,13 +2540,13 @@ class DropdownFromDataComponent extends FormControlParentComponent {
2442
2540
  }
2443
2541
  }
2444
2542
  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 });
2445
- 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: [
2543
+ 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", multiple: "multiple" }, providers: [
2446
2544
  {
2447
2545
  provide: NG_VALUE_ACCESSOR,
2448
2546
  useExisting: forwardRef(() => DropdownFromDataComponent),
2449
2547
  multi: true,
2450
2548
  },
2451
- ], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"form\">\n <mat-form-field [attr.required]=\"required\" [floatLabel]=\"placeholder ? 'always' : 'auto'\">\n <mat-label>{{ label }}</mat-label>\n <mat-select\n placeholder=\"{{ placeholder }}\"\n disableOptionCentering\n [(value)]=\"value\"\n (selectionChange)=\"valueChanged($event?.value)\"\n #child\n [disabled]=\"disabled\"\n >\n <mat-option *ngFor=\"let key of keys; let i = index\" [value]=\"values[i]\">\n <span>{{ setDisplayKey(key) }}</span>\n </mat-option>\n </mat-select>\n </mat-form-field>\n</form>\n", components: [{ type: i2$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"] }] });
2549
+ ], 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 [multiple]=\"multiple\"\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"] }] });
2452
2550
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropdownFromDataComponent, decorators: [{
2453
2551
  type: Component,
2454
2552
  args: [{
@@ -2484,6 +2582,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2484
2582
  type: Input
2485
2583
  }], useEnumIndexAsValue: [{
2486
2584
  type: Input
2585
+ }], multiple: [{
2586
+ type: Input
2487
2587
  }] } });
2488
2588
 
2489
2589
  /*!
@@ -2821,7 +2921,7 @@ class ImageSliderComponent {
2821
2921
  }
2822
2922
  }
2823
2923
  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 });
2824
- 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: i6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "id", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListAutoScrollDisabled", "cdkDropListOrientation", "cdkDropListLockAxis", "cdkDropListData", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragDisabled", "cdkDragStartDelay", "cdkDragLockAxis", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragBoundary", "cdkDragRootElement", "cdkDragPreviewContainer", "cdkDragData", "cdkDragFreeDragPosition"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "translate": i5$1.TranslatePipe } });
2924
+ 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", "size", "dontUseSprite"] }], directives: [{ type: SwipeDirective, selector: "[swipeDirective]", inputs: ["swipeDirective"], outputs: ["moveEvent", "releaseEvent"] }, { type: i6$1.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "id", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListAutoScrollDisabled", "cdkDropListOrientation", "cdkDropListLockAxis", "cdkDropListData", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6$1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragDisabled", "cdkDragStartDelay", "cdkDragLockAxis", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragBoundary", "cdkDragRootElement", "cdkDragPreviewContainer", "cdkDragData", "cdkDragFreeDragPosition"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "translate": i6.TranslatePipe } });
2825
2925
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ImageSliderComponent, decorators: [{
2826
2926
  type: Component,
2827
2927
  args: [{
@@ -2912,10 +3012,12 @@ DirectivesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version
2912
3012
  DirectivesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DirectivesModule, declarations: [SwipeDirective,
2913
3013
  MouseWheelDirective,
2914
3014
  GetMaxHeightDirective,
2915
- TooltipDirective], imports: [CommonModule], exports: [SwipeDirective,
3015
+ TooltipDirective,
3016
+ SizeDirective], imports: [CommonModule], exports: [SwipeDirective,
2916
3017
  MouseWheelDirective,
2917
3018
  GetMaxHeightDirective,
2918
- TooltipDirective] });
3019
+ TooltipDirective,
3020
+ SizeDirective] });
2919
3021
  DirectivesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DirectivesModule, imports: [[CommonModule]] });
2920
3022
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DirectivesModule, decorators: [{
2921
3023
  type: NgModule,
@@ -2925,6 +3027,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2925
3027
  MouseWheelDirective,
2926
3028
  GetMaxHeightDirective,
2927
3029
  TooltipDirective,
3030
+ SizeDirective,
2928
3031
  ],
2929
3032
  imports: [CommonModule],
2930
3033
  exports: [
@@ -2932,6 +3035,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2932
3035
  MouseWheelDirective,
2933
3036
  GetMaxHeightDirective,
2934
3037
  TooltipDirective,
3038
+ SizeDirective,
2935
3039
  ],
2936
3040
  }]
2937
3041
  }] });
@@ -3117,5 +3221,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3117
3221
  * Generated bundle index. Do not edit.
3118
3222
  */
3119
3223
 
3120
- 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 };
3224
+ export { ActionsParentComponent, BackToTopComponent, ButtonWithConfirmDialogComponent, CheckboxComponent, ColorInputComponent, CustomPipesModule, DecodeUriPipe, DirectivesModule, DropdownFromDataComponent, EncodeUriPipe, EnumRadiogroupComponent, FileInputComponent, FlyoutComponent, FormParentComponent, GenericDialogComponent, GetMaxHeightDirective, IconComponent, IconSize, ImageSliderComponent, IntegerCurrency, KMSAccordionItemComponent, KmsUiPresentationalComponent, KmsUiPresentationalModule, KmsUiPresentationalService, LoaderComponent, MapComponent, Marker, MarkerLabel, MarkerOptions, MouseWheelDirective, RadioButtonComponent, SafeHtmlPipe, SafeResourceUrlPipe, SafeStylePipe, SafeUrlPipe, SalutationDropdownComponent, SalutationEnum, SalutationRadiogroupComponent, SizeDirective, SwipeDirective, TimeInputComponent, ToNumberPipe, TooltipComponent, TooltipDirective, TooltipIconComponent, TrimPipe, TypeofPipe, ViewportService, YesNoRadiogroupComponent };
3121
3225
  //# sourceMappingURL=kms-ngx-ui-presentational.js.map