@kms-ngx-ui/presentational 14.1.0 → 14.1.2

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 (36) hide show
  1. package/esm2020/lib/directives/directives.module.mjs +8 -3
  2. package/esm2020/lib/directives/size.directive.mjs +21 -0
  3. package/esm2020/lib/parent-components/form-control.component.mjs +2 -2
  4. package/esm2020/lib/parent-components/form.component.mjs +11 -5
  5. package/esm2020/lib/services/viewport.service.mjs +177 -71
  6. package/esm2020/lib/ui/back-to-top/back-to-top.component.mjs +1 -1
  7. package/esm2020/lib/ui/dropdown-from-data/dropdown-from-data.component.mjs +6 -3
  8. package/esm2020/lib/ui/file-input/file-input.component.mjs +8 -8
  9. package/esm2020/lib/ui/flyout/flyout.component.mjs +6 -5
  10. package/esm2020/lib/ui/icon/icon.component.mjs +6 -3
  11. package/esm2020/lib/ui/icon/iconSize.enum.mjs +12 -1
  12. package/esm2020/lib/ui/image-slider/image-slider.component.mjs +1 -1
  13. package/esm2020/lib/ui/kms-accordion-item/kms-accordion-item.component.mjs +1 -1
  14. package/esm2020/lib/ui/map/map.component.mjs +3 -3
  15. package/esm2020/lib/ui/radiobutton/radiobutton.component.mjs +9 -5
  16. package/esm2020/lib/ui/tooltip-icon/tooltip-icon.component.mjs +7 -6
  17. package/esm2020/public-api.mjs +2 -1
  18. package/fesm2015/kms-ngx-ui-presentational.mjs +301 -144
  19. package/fesm2015/kms-ngx-ui-presentational.mjs.map +1 -1
  20. package/fesm2020/kms-ngx-ui-presentational.mjs +303 -148
  21. package/fesm2020/kms-ngx-ui-presentational.mjs.map +1 -1
  22. package/lib/directives/directives.module.d.ts +4 -2
  23. package/lib/directives/size.directive.d.ts +10 -0
  24. package/lib/services/viewport.service.d.ts +58 -9
  25. package/lib/ui/dropdown-from-data/dropdown-from-data.component.d.ts +1 -0
  26. package/lib/ui/file-input/file-input.component.d.ts +2 -2
  27. package/lib/ui/icon/icon.component.d.ts +7 -1
  28. package/lib/ui/icon/iconSize.enum.d.ts +10 -0
  29. package/lib/ui/radiobutton/radiobutton.component.d.ts +2 -1
  30. package/lib/ui/tooltip-icon/tooltip-icon.component.d.ts +2 -2
  31. package/package.json +1 -1
  32. package/public-api.d.ts +1 -0
  33. package/src/lib/ui/back-to-top/back-to-top.component.scss +2 -3
  34. package/src/lib/ui/icon/icon.component.scss +2 -36
  35. package/src/styles/animations.scss +47 -0
  36. package/src/styles/styles.scss +1 -0
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Component, EventEmitter, Input, Output, forwardRef, ViewChild, Directive, HostListener, VERSION, 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 from '@angular/forms';
6
6
  import { NG_VALUE_ACCESSOR, UntypedFormControl, NG_VALIDATORS, FormsModule, ReactiveFormsModule } from '@angular/forms';
7
7
  import * as i2$1 from '@angular/material/checkbox';
@@ -15,7 +15,7 @@ import { MatInputModule } from '@angular/material/input';
15
15
  import * as i1$1 from '@angular/platform-browser';
16
16
  import * as i2$3 from '@angular/material/button';
17
17
  import { MatButtonModule } from '@angular/material/button';
18
- import * as i5 from '@ngx-translate/core';
18
+ import * as i6 from '@ngx-translate/core';
19
19
  import { TranslateModule } from '@ngx-translate/core';
20
20
  import * as i2$4 from '@angular/material/progress-spinner';
21
21
  import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
@@ -36,7 +36,7 @@ import { MatMenuModule } from '@angular/material/menu';
36
36
  import { EnumValues } from 'enum-values/src/enumValues';
37
37
  import * as i3$4 from '@angular/cdk/drag-drop';
38
38
  import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
39
- import * as i6 from 'ngx-useful-swiper';
39
+ import * as i6$1 from 'ngx-useful-swiper';
40
40
  import { NgxUsefulSwiperModule } from 'ngx-useful-swiper';
41
41
 
42
42
  class KmsUiPresentationalService {
@@ -196,7 +196,7 @@ class FormParentComponent {
196
196
  constructor(formBuilder) {
197
197
  this.formBuilder = formBuilder;
198
198
  this.formInitialized = false;
199
- this.allowedCharsOnlyNumbers = new Set('0123456789'.split('').map(c => c.charCodeAt(0)));
199
+ this.allowedCharsOnlyNumbers = new Set('0123456789'.split('').map((c) => c.charCodeAt(0)));
200
200
  this.formDataChanged = new EventEmitter();
201
201
  this.disabled = false;
202
202
  }
@@ -212,8 +212,13 @@ class FormParentComponent {
212
212
  const isNumberPad = e.keyCode >= 96 && e.keyCode <= 105;
213
213
  const isArrows = e.keyCode >= 37 && e.keyCode <= 40;
214
214
  const isDelete = e.keyCode == 8 || e.keyCode == 46;
215
- const isCutCopyOrPaste = (e.ctrlKey || e.metaKey) && (e.keyCode == 86 || e.keyCode == 88 || e.keyCode == 67);
216
- return (isNumberRow) || (isNumberPad) || (allowDelete && isDelete) || (allowArrows && isArrows) || (allowCutCopyPaste && isCutCopyOrPaste);
215
+ const isCutCopyOrPaste = (e.ctrlKey || e.metaKey) &&
216
+ (e.keyCode == 86 || e.keyCode == 88 || e.keyCode == 67);
217
+ return (isNumberRow ||
218
+ isNumberPad ||
219
+ (allowDelete && isDelete) ||
220
+ (allowArrows && isArrows) ||
221
+ (allowCutCopyPaste && isCutCopyOrPaste));
217
222
  }
218
223
  // TODO make a service or make own compoennt etc.
219
224
  /**
@@ -222,7 +227,8 @@ class FormParentComponent {
222
227
  */
223
228
  removeNumbersOnType(event) {
224
229
  // only allow keydown from numbers-row or numberpad of keybard and block other chars than numbers
225
- if (!this.checkIfKeyWasNumber(event) && !this.allowedCharsOnlyNumbers.has(event.keyCode)) {
230
+ if (!this.checkIfKeyWasNumber(event) &&
231
+ !this.allowedCharsOnlyNumbers.has(event.keyCode)) {
226
232
  event.preventDefault();
227
233
  }
228
234
  }
@@ -310,7 +316,7 @@ class FormControlParentComponent extends FormParentComponent {
310
316
  this.onTouch = fn;
311
317
  }
312
318
  setDisabledState(isDisabled) {
313
- if (this.child) {
319
+ if (this.child?.nativeElement) {
314
320
  this.renderer.setProperty(this.child.nativeElement, 'disabled', isDisabled);
315
321
  }
316
322
  }
@@ -335,16 +341,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
335
341
  args: ['child']
336
342
  }] } });
337
343
 
338
- /*!
339
- * @copyright FLYACTS GmbH 2019
340
- */
341
-
342
- /**
343
- * Attached File DTO
344
- */
345
- class AttachedFileDTO {
346
- }
347
-
348
344
  /*!
349
345
  * @copyright FLYACTS GmbH 2019
350
346
  */
@@ -361,23 +357,17 @@ var IconSize$1;
361
357
  IconSize["XXXL"] = "size-1024";
362
358
  IconSize["NONE"] = "NONE";
363
359
  })(IconSize$1 || (IconSize$1 = {}));
364
-
365
- /**
366
- * @copyright FLYACTS GmbH 2019
367
- */
368
- /**
369
- * Check if null or undefined
370
- * @param value value that is being checked
371
- */
372
- function isValue(value) {
373
- if (value === null) {
374
- return false;
375
- }
376
- if (typeof value === 'undefined') {
377
- return false;
378
- }
379
- return true;
380
- }
360
+ var IconSizePx;
361
+ (function (IconSizePx) {
362
+ IconSizePx[IconSizePx["TINY"] = 16] = "TINY";
363
+ IconSizePx[IconSizePx["SMALLER"] = 20] = "SMALLER";
364
+ IconSizePx[IconSizePx["SMALL"] = 32] = "SMALL";
365
+ IconSizePx[IconSizePx["MEDIUM"] = 64] = "MEDIUM";
366
+ IconSizePx[IconSizePx["LARGE"] = 128] = "LARGE";
367
+ IconSizePx[IconSizePx["XL"] = 256] = "XL";
368
+ IconSizePx[IconSizePx["XXL"] = 512] = "XXL";
369
+ IconSizePx[IconSizePx["XXXL"] = 1024] = "XXXL";
370
+ })(IconSizePx || (IconSizePx = {}));
381
371
 
382
372
  class TooltipDirective {
383
373
  constructor(el, renderer) {
@@ -521,22 +511,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
521
511
  args: ['mouseleave']
522
512
  }] } });
523
513
 
524
- /*!
525
- * @copyright FLYACTS GmbH 2019
526
- */
527
- var IconSize;
528
- (function (IconSize) {
529
- IconSize["FULLSIZE"] = "size-full";
530
- IconSize["TINY"] = "size-16";
531
- IconSize["SMALLER"] = "size-20";
532
- IconSize["SMALL"] = "size-32";
533
- IconSize["MEDIUM"] = "size-64";
534
- IconSize["LARGE"] = "size-128";
535
- IconSize["XL"] = "size-256";
536
- IconSize["XXL"] = "size-512";
537
- IconSize["XXXL"] = "size-1024";
538
- IconSize["NONE"] = "NONE";
539
- })(IconSize || (IconSize = {}));
514
+ class SizeDirective {
515
+ constructor(elementRef) {
516
+ this.elementRef = elementRef;
517
+ this.size = '';
518
+ }
519
+ ngOnInit() {
520
+ this.elementRef.nativeElement.style.width(this.size + 'px');
521
+ this.elementRef.nativeElement.style.height(this.size + 'px');
522
+ }
523
+ }
524
+ SizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SizeDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
525
+ SizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: SizeDirective, selector: "[size]", inputs: { size: "size" }, ngImport: i0 });
526
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SizeDirective, decorators: [{
527
+ type: Directive,
528
+ args: [{ selector: '[size]' }]
529
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { size: [{
530
+ type: Input
531
+ }] } });
540
532
 
541
533
  /**
542
534
  * @copyright KMS GmbH
@@ -546,13 +538,14 @@ class IconComponent {
546
538
  this.sanitizer = sanitizer;
547
539
  /**
548
540
  * Optional: Different size via CSS inline style.
541
+ * @deprecated. Please use size instead
549
542
  */
550
- this.iconSize = IconSize.FULLSIZE;
543
+ this.iconSize = IconSize$1.FULLSIZE;
551
544
  /**
552
545
  * Dont use icon sprite
553
546
  */
554
547
  this.dontUseSprite = false;
555
- this.IconSize = IconSize;
548
+ this.IconSize = IconSize$1;
556
549
  this.Version = VERSION.full;
557
550
  this.timestamp = 0;
558
551
  this.iconToShow = this.icon;
@@ -565,10 +558,10 @@ class IconComponent {
565
558
  }
566
559
  }
567
560
  IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IconComponent, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
568
- IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
561
+ IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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\">\n <span class=\"icon {{ iconSize }}\" [ngClass]=\"iconClass\" [ngStyle]=\"iconStyle\" [style.width.px]=\"size ? size : undefined\" [style.height.px]=\"size ? size : undefined\">\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: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
569
562
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IconComponent, decorators: [{
570
563
  type: Component,
571
- args: [{ selector: 'kms-icon', 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" }]
564
+ args: [{ selector: 'kms-icon', template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span class=\"icon {{ iconSize }}\" [ngClass]=\"iconClass\" [ngStyle]=\"iconStyle\" [style.width.px]=\"size ? size : undefined\" [style.height.px]=\"size ? size : undefined\">\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" }]
572
565
  }], ctorParameters: function () { return [{ type: i1$1.DomSanitizer }]; }, propDecorators: { icon: [{
573
566
  type: Input
574
567
  }], iconClass: [{
@@ -577,6 +570,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
577
570
  type: Input
578
571
  }], iconSize: [{
579
572
  type: Input
573
+ }], size: [{
574
+ type: Input
580
575
  }], dontUseSprite: [{
581
576
  type: Input
582
577
  }] } });
@@ -589,14 +584,14 @@ class TooltipIconComponent {
589
584
  this.tooltipLinkUrl = "";
590
585
  this.placement = "";
591
586
  this.delay = 1000;
592
- this.IconSize = IconSize$1;
587
+ this.IconSizePx = IconSizePx;
593
588
  }
594
589
  }
595
590
  TooltipIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TooltipIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
596
- TooltipIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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: [""], dependencies: [{ kind: "directive", type: TooltipDirective, selector: "[kmsTooltip]", inputs: ["tooltipTitle", "tooltipText", "tooltipLinkText", "tooltipLinkUrl", "tooltipPlacement", "tooltipDelay", "tooltipPlaceIntoHost", "tooltipOnlyonclick"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }] });
591
+ TooltipIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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\" [size]=\"IconSizePx.SMALLER\" [iconClass]=\"'color-primary'\"></kms-icon>\n</span>\n", styles: [""], dependencies: [{ kind: "directive", type: TooltipDirective, selector: "[kmsTooltip]", inputs: ["tooltipTitle", "tooltipText", "tooltipLinkText", "tooltipLinkUrl", "tooltipPlacement", "tooltipDelay", "tooltipPlaceIntoHost", "tooltipOnlyonclick"] }, { kind: "directive", type: SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }] });
597
592
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TooltipIconComponent, decorators: [{
598
593
  type: Component,
599
- args: [{ selector: 'kms-tooltip-icon', 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" }]
594
+ args: [{ selector: 'kms-tooltip-icon', 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\" [size]=\"IconSizePx.SMALLER\" [iconClass]=\"'color-primary'\"></kms-icon>\n</span>\n" }]
600
595
  }], propDecorators: { tooltipTitle: [{
601
596
  type: Input
602
597
  }], tooltipText: [{
@@ -693,6 +688,7 @@ class RadioButtonComponent extends ActionsParentComponent {
693
688
  * Internal description id. Will be send in the output event when the radio button is selected.
694
689
  */
695
690
  this.id = '';
691
+ this.radioButtonSize = 16;
696
692
  // eslint-disable-next-line @typescript-eslint/no-empty-function
697
693
  this.onChange = () => { };
698
694
  // eslint-disable-next-line @typescript-eslint/no-empty-function
@@ -721,13 +717,13 @@ class RadioButtonComponent extends ActionsParentComponent {
721
717
  }
722
718
  }
723
719
  RadioButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
724
- RadioButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RadioButtonComponent, selector: "kms-radiobutton", inputs: { name: "name", id: "id", formControl: "formControl" }, providers: [
720
+ RadioButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RadioButtonComponent, selector: "kms-radiobutton", inputs: { name: "name", id: "id", radioButtonSize: "radioButtonSize", formControl: "formControl" }, providers: [
725
721
  {
726
722
  provide: NG_VALUE_ACCESSOR,
727
723
  useExisting: forwardRef(() => RadioButtonComponent),
728
724
  multi: true,
729
725
  },
730
- ], 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: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }] });
726
+ ], 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 }\"\n [icon]=\"'ic_radiobutton_active'\"\n [size]=\"radioButtonSize\"\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 }\"\n [icon]=\"'ic_radiobutton_inactive'\"\n [size]=\"radioButtonSize\"\n >\n </kms-icon>\n <ng-content></ng-content>\n</label>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }] });
731
727
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RadioButtonComponent, decorators: [{
732
728
  type: Component,
733
729
  args: [{ selector: 'kms-radiobutton', providers: [
@@ -736,11 +732,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
736
732
  useExisting: forwardRef(() => RadioButtonComponent),
737
733
  multi: true,
738
734
  },
739
- ], 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" }]
735
+ ], 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 }\"\n [icon]=\"'ic_radiobutton_active'\"\n [size]=\"radioButtonSize\"\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 }\"\n [icon]=\"'ic_radiobutton_inactive'\"\n [size]=\"radioButtonSize\"\n >\n </kms-icon>\n <ng-content></ng-content>\n</label>\n" }]
740
736
  }], ctorParameters: function () { return []; }, propDecorators: { name: [{
741
737
  type: Input
742
738
  }], id: [{
743
739
  type: Input
740
+ }], radioButtonSize: [{
741
+ type: Input
744
742
  }], formControl: [{
745
743
  type: Input
746
744
  }] } });
@@ -901,6 +899,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
901
899
  args: ['child']
902
900
  }] } });
903
901
 
902
+ /**
903
+ * @copyright FLYACTS GmbH 2019
904
+ */
905
+ /**
906
+ * Check if null or undefined
907
+ * @param value value that is being checked
908
+ */
909
+ function isValue(value) {
910
+ if (value === null) {
911
+ return false;
912
+ }
913
+ if (typeof value === 'undefined') {
914
+ return false;
915
+ }
916
+ return true;
917
+ }
918
+
904
919
  // Max size in bytes of uploaded image
905
920
  const MAX_SIZE_BYTES = 2097152;
906
921
  class FileInputComponent {
@@ -935,7 +950,7 @@ class FileInputComponent {
935
950
  });
936
951
  this.subscriptions = [];
937
952
  this.newImageLoading = false;
938
- this.IconSize = IconSize$1;
953
+ this.IconSizePx = IconSizePx;
939
954
  this.formDataChanged = new EventEmitter();
940
955
  // eslint-disable-next-line @typescript-eslint/no-empty-function
941
956
  this.onChange = () => { };
@@ -1086,7 +1101,7 @@ FileInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
1086
1101
  useExisting: forwardRef(() => FileInputComponent),
1087
1102
  multi: true,
1088
1103
  },
1089
- ], 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: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", 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"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
1104
+ ], 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\" [size]=\"IconSizePx.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: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", 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"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
1090
1105
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FileInputComponent, decorators: [{
1091
1106
  type: Component,
1092
1107
  args: [{ selector: 'kms-file-input', providers: [
@@ -1100,7 +1115,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1100
1115
  useExisting: forwardRef(() => FileInputComponent),
1101
1116
  multi: true,
1102
1117
  },
1103
- ], 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>" }]
1118
+ ], 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\" [size]=\"IconSizePx.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>" }]
1104
1119
  }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i0.ApplicationRef }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }]; }, propDecorators: { fileInput: [{
1105
1120
  type: ViewChild,
1106
1121
  args: ['fileInput']
@@ -1270,7 +1285,7 @@ class FlyoutComponent {
1270
1285
  }
1271
1286
  }
1272
1287
  FlyoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1273
- FlyoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: GetMaxHeightDirective, selector: "[getMaxHeight]", inputs: ["getMaxHeight"], outputs: ["maxHeightChanged", "sumOfHeight"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }, { kind: "pipe", type: SafeHtmlPipe, name: "kmsSafeHtml" }], animations: [
1288
+ FlyoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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'\" [ngClass]=\"{'is-rotating180':isDropdownOpened}\" [size]=\"16\">\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: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: GetMaxHeightDirective, selector: "[getMaxHeight]", inputs: ["getMaxHeight"], outputs: ["maxHeightChanged", "sumOfHeight"] }, { kind: "directive", type: SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }, { kind: "pipe", type: SafeHtmlPipe, name: "kmsSafeHtml" }], animations: [
1274
1289
  trigger('dropdownAnimation', [
1275
1290
  state('true', style({
1276
1291
  height: '{{targetHeight}}',
@@ -1317,7 +1332,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1317
1332
  },
1318
1333
  }),
1319
1334
  ]),
1320
- ], 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" }]
1335
+ ], 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'\" [ngClass]=\"{'is-rotating180':isDropdownOpened}\" [size]=\"16\">\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" }]
1321
1336
  }], propDecorators: { icon: [{
1322
1337
  type: Input
1323
1338
  }], headerCssClass: [{
@@ -1598,7 +1613,7 @@ EnumRadiogroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
1598
1613
  useExisting: forwardRef(() => EnumRadiogroupComponent),
1599
1614
  multi: true,
1600
1615
  },
1601
- ], 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>", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$2.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i2$2.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
1616
+ ], 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>", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2$2.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i2$2.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
1602
1617
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: EnumRadiogroupComponent, decorators: [{
1603
1618
  type: Component,
1604
1619
  args: [{ selector: 'kms-enum-radiogroup', providers: [
@@ -1636,7 +1651,7 @@ class KMSAccordionItemComponent {
1636
1651
  }
1637
1652
  }
1638
1653
  KMSAccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: KMSAccordionItemComponent, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
1639
- KMSAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: KMSAccordionItemComponent, selector: "kms-accordion-item", inputs: { itemTitle: "itemTitle", showAsCard: "showAsCard", isSmall: "isSmall", expanded: "expanded" }, ngImport: i0, template: "<mat-expansion-panel\n class=\"accordion-item\"\n [ngClass]=\"{showAsCard: showAsCard, showFlat: !showAsCard, isSmall: isSmall}\"\n (opened)=\"panelOpenState = true\"\n (closed)=\"panelOpenState = false\"\n [expanded] = \"expanded\"\n hideToggle=\"true\">\n <mat-expansion-panel-header class=\"accordion-item-header\">\n <mat-panel-title class=\"mat-subheading-2 accordion-item-title\">\n <div [innerHtml]=\"itemTitleTrustHtml\"></div>\n <ng-content select=\"[itemTitleElement]\"></ng-content>\n </mat-panel-title>\n <div class=\"accordion-item-header-icon-wrapper\">\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"ic_plus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\n <kms-icon *ngIf=\"panelOpenState\" icon=\"ic_minus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\n\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"chevron-down\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\n <kms-icon *ngIf=\"panelOpenState\" icon=\"chevron-top\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\n </div>\n </mat-expansion-panel-header>\n <ng-content></ng-content>\n</mat-expansion-panel>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i3$1.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { kind: "directive", type: i3$1.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }] });
1654
+ KMSAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: KMSAccordionItemComponent, selector: "kms-accordion-item", inputs: { itemTitle: "itemTitle", showAsCard: "showAsCard", isSmall: "isSmall", expanded: "expanded" }, ngImport: i0, template: "<mat-expansion-panel\n class=\"accordion-item\"\n [ngClass]=\"{showAsCard: showAsCard, showFlat: !showAsCard, isSmall: isSmall}\"\n (opened)=\"panelOpenState = true\"\n (closed)=\"panelOpenState = false\"\n [expanded] = \"expanded\"\n hideToggle=\"true\">\n <mat-expansion-panel-header class=\"accordion-item-header\">\n <mat-panel-title class=\"mat-subheading-2 accordion-item-title\">\n <div [innerHtml]=\"itemTitleTrustHtml\"></div>\n <ng-content select=\"[itemTitleElement]\"></ng-content>\n </mat-panel-title>\n <div class=\"accordion-item-header-icon-wrapper\">\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"ic_plus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\n <kms-icon *ngIf=\"panelOpenState\" icon=\"ic_minus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\n\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"chevron-down\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\n <kms-icon *ngIf=\"panelOpenState\" icon=\"chevron-top\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\n </div>\n </mat-expansion-panel-header>\n <ng-content></ng-content>\n</mat-expansion-panel>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$1.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i3$1.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { kind: "directive", type: i3$1.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }] });
1640
1655
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: KMSAccordionItemComponent, decorators: [{
1641
1656
  type: Component,
1642
1657
  args: [{ selector: 'kms-accordion-item', template: "<mat-expansion-panel\n class=\"accordion-item\"\n [ngClass]=\"{showAsCard: showAsCard, showFlat: !showAsCard, isSmall: isSmall}\"\n (opened)=\"panelOpenState = true\"\n (closed)=\"panelOpenState = false\"\n [expanded] = \"expanded\"\n hideToggle=\"true\">\n <mat-expansion-panel-header class=\"accordion-item-header\">\n <mat-panel-title class=\"mat-subheading-2 accordion-item-title\">\n <div [innerHtml]=\"itemTitleTrustHtml\"></div>\n <ng-content select=\"[itemTitleElement]\"></ng-content>\n </mat-panel-title>\n <div class=\"accordion-item-header-icon-wrapper\">\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"ic_plus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\n <kms-icon *ngIf=\"panelOpenState\" icon=\"ic_minus\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-desktop\"></kms-icon>\n\n <kms-icon *ngIf=\"!panelOpenState\" icon=\"chevron-down\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\n <kms-icon *ngIf=\"panelOpenState\" icon=\"chevron-top\" iconClass=\"color-red\" class=\"accordion-item-header-icon-wrapper-mobile\"></kms-icon>\n </div>\n </mat-expansion-panel-header>\n <ng-content></ng-content>\n</mat-expansion-panel>\n" }]
@@ -1653,90 +1668,136 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
1653
1668
  /**
1654
1669
  * @copyright KMS GmbH
1655
1670
  */
1671
+ class SimpleBreakpoint {
1672
+ constructor(data) {
1673
+ Object.assign(this, data);
1674
+ }
1675
+ }
1676
+ class Breakpoint {
1677
+ constructor(data) {
1678
+ Object.assign(this, data);
1679
+ }
1680
+ }
1656
1681
  /**
1657
1682
  * Service to get viewport
1658
1683
  */
1659
1684
  class ViewportService {
1660
- constructor(platformId) {
1685
+ constructor(platformId, document) {
1661
1686
  this.platformId = platformId;
1662
- this.viewports = [
1687
+ this.document = document;
1688
+ this.simpleBreakpoints = [
1689
+ { Number: 0, Name: 'mobile', MaximumPixels: 768 },
1690
+ { Number: 1, Name: 'tablet', MaximumPixels: 1024 },
1691
+ { Number: 2, Name: 'desktop', MaximumPixels: 1600 },
1692
+ { Number: 3, Name: 'high', MaximumPixels: 2500 },
1693
+ ];
1694
+ this.breakpoints = [
1663
1695
  {
1664
- name: 'xs',
1665
- low: 420,
1666
- high: 990,
1696
+ Number: 0,
1697
+ Name: 'xs',
1698
+ Low: 360,
1699
+ High: 990,
1667
1700
  },
1668
1701
  {
1669
- name: 's',
1670
- low: 991,
1671
- high: 1024,
1702
+ Number: 1,
1703
+ Name: 's',
1704
+ Low: 991,
1705
+ High: 1024,
1672
1706
  },
1673
1707
  {
1674
- name: 'm',
1675
- low: 1025,
1676
- high: 1200,
1708
+ Number: 2,
1709
+ Name: 'm',
1710
+ Low: 1025,
1711
+ High: 1200,
1677
1712
  },
1678
1713
  {
1679
- name: 'l',
1680
- low: 12001,
1681
- high: 1400,
1714
+ Number: 3,
1715
+ Name: 'l',
1716
+ Low: 1201,
1717
+ High: 1400,
1682
1718
  },
1683
1719
  {
1684
- name: 'xl',
1685
- low: 1401,
1686
- high: 1600,
1720
+ Number: 4,
1721
+ Name: 'xl',
1722
+ Low: 1401,
1723
+ High: 1600,
1687
1724
  },
1688
1725
  {
1689
- name: 'xxl',
1690
- low: 1601,
1691
- high: 1920,
1726
+ Number: 5,
1727
+ Name: 'xxl',
1728
+ Low: 1601,
1729
+ High: 1920,
1692
1730
  },
1693
1731
  {
1694
- name: 'xxxl',
1695
- low: 1921,
1696
- high: 99999,
1732
+ Number: 6,
1733
+ Name: 'xxxl',
1734
+ Low: 1921,
1735
+ High: 99999,
1697
1736
  },
1698
1737
  ];
1699
1738
  this.viewportChangedSubscriber = new Subject();
1700
1739
  this.viewportResizedSubscriber = new Subject();
1740
+ this.isBrowser = false;
1701
1741
  if (isPlatformBrowser(this.platformId)) {
1702
- window.addEventListener('resize', this.documentSizeChanged.bind(this), { passive: true });
1742
+ window.addEventListener('resize', this.documentSizeChanged.bind(this), {
1743
+ passive: true,
1744
+ });
1745
+ this.isBrowser = true;
1703
1746
  }
1704
1747
  }
1705
1748
  /**
1706
1749
  * Get window height
1707
1750
  */
1708
1751
  getDocumentHeight() {
1709
- return isPlatformBrowser(this.platformId) ? document.body.clientHeight : 1200;
1752
+ return this.isBrowser ? document.body.clientHeight : 1200;
1710
1753
  }
1711
1754
  /**
1712
1755
  * Get window width
1713
1756
  */
1714
1757
  getDocumentWidth() {
1715
- return isPlatformBrowser(this.platformId) ? document.body.clientWidth : 1200;
1758
+ return this.isBrowser ? document.body.clientWidth : 1200;
1716
1759
  }
1717
1760
  /**
1718
1761
  * Get window height
1719
1762
  */
1720
1763
  getWindowHeight() {
1721
- return isPlatformBrowser(this.platformId) ? window.innerHeight : 1200;
1764
+ return this.isBrowser ? window.innerHeight : 1200;
1722
1765
  }
1723
1766
  /**
1724
1767
  * Get window width
1725
1768
  */
1726
1769
  getWindowWidth() {
1727
- return isPlatformBrowser(this.platformId) ? window.innerWidth : 1200;
1770
+ return this.isBrowser ? window.innerWidth : 1200;
1728
1771
  }
1729
1772
  /**
1730
1773
  * Returns the current viewport MQ as string
1731
1774
  * @returns string
1732
1775
  */
1733
1776
  getCurrentViewPort() {
1734
- if (!this.currentViewport) {
1735
- const currentWidth = isPlatformBrowser(this.platformId) ? document.body.clientWidth : 1200;
1736
- this.currentViewport = this.convertWidthToMediaQuery(currentWidth);
1737
- }
1777
+ const currentWidth = this.isBrowser
1778
+ ? document.body.clientWidth
1779
+ : 1200;
1780
+ this.currentViewport = this.convertWidthToMediaQuery(currentWidth).Name;
1738
1781
  return this.currentViewport;
1739
1782
  }
1783
+ /**
1784
+ * Returns the current viewport MQ as object with all informations
1785
+ * @returns string
1786
+ */
1787
+ getCurrentViewPortObject() {
1788
+ const currentWidth = this.isBrowser
1789
+ ? document.body.clientWidth
1790
+ : 1200;
1791
+ this.currentViewportObject = this.convertWidthToMediaQuery(currentWidth);
1792
+ return this.currentViewportObject;
1793
+ }
1794
+ /**
1795
+ * Returns the current viewport as number
1796
+ * @returns string
1797
+ */
1798
+ getCurrentViewPortNumber() {
1799
+ return this.isBrowser ? document.body.clientWidth : 1200;
1800
+ }
1740
1801
  /**
1741
1802
  * Provides mq´s as string
1742
1803
  */
@@ -1749,8 +1810,11 @@ class ViewportService {
1749
1810
  getViewportResizedObserver() {
1750
1811
  return this.viewportResizedSubscriber.asObservable();
1751
1812
  }
1813
+ /**
1814
+ * Scroll to element
1815
+ */
1752
1816
  scrollToElementId(el, alignCenter = false) {
1753
- if (isPlatformBrowser(this.platformId)) {
1817
+ if (this.isBrowser) {
1754
1818
  this.scrollToElement(document.querySelector('#' + el), alignCenter);
1755
1819
  }
1756
1820
  }
@@ -1760,24 +1824,24 @@ class ViewportService {
1760
1824
  * @param alignCenter - defines if the element needs to be centered on window
1761
1825
  */
1762
1826
  scrollToElement(el, alignCenter = false) {
1763
- if (isPlatformBrowser(this.platformId)) {
1827
+ if (this.isBrowser) {
1764
1828
  let extraScrollTop = 0;
1765
1829
  if (alignCenter) {
1766
1830
  extraScrollTop = (window.innerHeight - el.clientHeight) / 2;
1767
1831
  }
1768
- /*
1769
- const elementPos: DOMRect = el.getBoundingClientRect();
1770
- const scrollTopPosition = elementPos.x - extraScrollTop;
1771
- */
1772
- //let offsetLeft = 0;
1832
+ let offsetLeft = 0;
1773
1833
  let offsetTop = 0;
1774
1834
  let elTemp = el;
1775
1835
  while (elTemp) {
1776
- //offsetLeft += elTemp.offsetLeft;
1836
+ offsetLeft += elTemp.offsetLeft;
1777
1837
  offsetTop += elTemp.offsetTop;
1778
1838
  elTemp = elTemp.parentElement ? elTemp.parentElement : null;
1779
1839
  }
1780
- window.scrollTo({ left: 0, top: offsetTop - extraScrollTop, behavior: 'smooth' });
1840
+ window.scrollTo({
1841
+ left: offsetLeft,
1842
+ top: offsetTop - extraScrollTop,
1843
+ behavior: 'smooth',
1844
+ });
1781
1845
  }
1782
1846
  }
1783
1847
  /**
@@ -1785,15 +1849,63 @@ class ViewportService {
1785
1849
  * @param top - top position value
1786
1850
  */
1787
1851
  scrollTop(top) {
1788
- if (isPlatformBrowser(this.platformId)) {
1852
+ if (this.isBrowser) {
1789
1853
  window.scrollTo({ left: 0, top: top, behavior: 'smooth' });
1790
1854
  }
1791
1855
  }
1792
- ngOnDestroy() {
1793
- if (isPlatformBrowser(this.platformId)) {
1794
- window.removeEventListener('resize', this.documentSizeChanged);
1856
+ /**
1857
+ * If orientation is portrait
1858
+ */
1859
+ isPortrait() {
1860
+ if (this.isBrowser)
1861
+ return window.innerHeight > window.innerWidth;
1862
+ else
1863
+ return;
1864
+ }
1865
+ /**
1866
+ * If orientation is landscape
1867
+ */
1868
+ isLandscape() {
1869
+ if (this.isBrowser) {
1870
+ const isLandscape = window.orientation === 90 || window.orientation === -90;
1871
+ return isLandscape;
1872
+ }
1873
+ else {
1874
+ return;
1875
+ }
1876
+ }
1877
+ /**
1878
+ * If mobile breakpoint (below tablet)
1879
+ */
1880
+ isMobile() {
1881
+ return this.getCurrentViewPortNumber() < this.breakpoints[2].Low;
1882
+ }
1883
+ /**
1884
+ * Get height of an element
1885
+ * @deprecated
1886
+ */
1887
+ calculateFullscreenElementsheight(id, defaultheight, extra) {
1888
+ if (!this.isBrowser || this.isMobile()) {
1889
+ return defaultheight;
1890
+ }
1891
+ else {
1892
+ const map = this.document.getElementById(id);
1893
+ const footer = this.document.getElementsByTagName('footer')[0];
1894
+ if (map && footer) {
1895
+ return `${window.innerHeight - map.offsetTop - footer.offsetHeight - extra}px`;
1896
+ }
1897
+ else {
1898
+ console.warn('could not calculate map height');
1899
+ return defaultheight;
1900
+ }
1795
1901
  }
1796
1902
  }
1903
+ /**
1904
+ * Get height of an element
1905
+ */
1906
+ calculateFullscreenElementsHeight(id, defaultheight, extra) {
1907
+ return this.calculateFullscreenElementsheight(id, defaultheight, extra);
1908
+ }
1797
1909
  /**
1798
1910
  * If viewport changed
1799
1911
  * @event
@@ -1803,18 +1915,18 @@ class ViewportService {
1803
1915
  // inform who´s interested
1804
1916
  this.viewportResizedSubscriber.next(currentWindowWidth);
1805
1917
  if (currentWindowWidth > 0) {
1806
- for (const mqs of this.viewports) {
1807
- if (currentWindowWidth > mqs.high) {
1918
+ for (const mqs of this.breakpoints) {
1919
+ if (currentWindowWidth > mqs.High) {
1808
1920
  continue;
1809
1921
  }
1810
- else if ((currentWindowWidth >= mqs.low || currentWindowWidth <= mqs.high) &&
1811
- this.currentViewport !== mqs.name) {
1812
- this.currentViewport = mqs.name;
1922
+ else if ((currentWindowWidth >= mqs.Low || currentWindowWidth <= mqs.High) &&
1923
+ this.currentViewport !== mqs.Name) {
1924
+ this.currentViewport = mqs.Name;
1813
1925
  // inform who´s interested
1814
- this.viewportChangedSubscriber.next(mqs.name);
1926
+ this.viewportChangedSubscriber.next(mqs.Name);
1815
1927
  break;
1816
1928
  }
1817
- else if (this.currentViewport === mqs.name) {
1929
+ else if (this.currentViewport === mqs.Name) {
1818
1930
  break;
1819
1931
  }
1820
1932
  else {
@@ -1828,38 +1940,47 @@ class ViewportService {
1828
1940
  * @param width Width to get the according MQ for
1829
1941
  */
1830
1942
  convertWidthToMediaQuery(width) {
1831
- let currentViewport = '';
1832
- for (const mqs of this.viewports) {
1833
- if (width <= mqs.high && width >= mqs.low) {
1834
- currentViewport = mqs.name;
1943
+ let currentViewport = this.breakpoints[0];
1944
+ for (const mqs of this.breakpoints) {
1945
+ if (width <= mqs.High && width >= mqs.Low) {
1946
+ currentViewport = mqs;
1835
1947
  break;
1836
1948
  }
1837
1949
  }
1838
1950
  return currentViewport;
1839
1951
  }
1840
- isPortrait() {
1841
- if (isPlatformBrowser(this.platformId))
1842
- return window.innerHeight > window.innerWidth;
1843
- else
1844
- return;
1845
- }
1846
- isLandscape() {
1847
- if (isPlatformBrowser(this.platformId)) {
1848
- const isLandscape = window.orientation === 90 || window.orientation === -90;
1849
- return isLandscape;
1952
+ /**
1953
+ * Get the breakpoint/device name like mobile,tablet,desktop, high
1954
+ */
1955
+ getSimpleBreakpoint(screenSize) {
1956
+ let actualBreakpoint;
1957
+ const sizes = this.simpleBreakpoints.slice().reverse(); // we need to reverse it to check step by step from biggest, which breakpoints still fits. Slice is a trick to not mutate the original array and make a copy
1958
+ for (const key in sizes) {
1959
+ if (screenSize < sizes[key].MaximumPixels) {
1960
+ actualBreakpoint = sizes[key];
1961
+ }
1850
1962
  }
1851
- else {
1852
- return;
1963
+ if (!actualBreakpoint) {
1964
+ actualBreakpoint = sizes[0]; // default screensize is biggest. Will be used if viewport is bigger as maximum. Remember, array is reversed
1965
+ }
1966
+ return actualBreakpoint;
1967
+ }
1968
+ ngOnDestroy() {
1969
+ if (this.isBrowser) {
1970
+ window.removeEventListener('resize', this.documentSizeChanged);
1853
1971
  }
1854
1972
  }
1855
1973
  }
1856
- ViewportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ViewportService, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable });
1974
+ ViewportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ViewportService, deps: [{ token: PLATFORM_ID }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
1857
1975
  ViewportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ViewportService });
1858
1976
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ViewportService, decorators: [{
1859
1977
  type: Injectable
1860
1978
  }], ctorParameters: function () { return [{ type: Object, decorators: [{
1861
1979
  type: Inject,
1862
1980
  args: [PLATFORM_ID]
1981
+ }] }, { type: Document, decorators: [{
1982
+ type: Inject,
1983
+ args: [DOCUMENT]
1863
1984
  }] }]; } });
1864
1985
 
1865
1986
  /*!
@@ -1965,10 +2086,10 @@ class MapComponent {
1965
2086
  }
1966
2087
  }
1967
2088
  MapComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MapComponent, deps: [{ token: ViewportService }], target: i0.ɵɵFactoryTarget.Component });
1968
- MapComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$2.GoogleMap, selector: "google-map", inputs: ["height", "width", "mapTypeId", "center", "zoom", "options"], outputs: ["mapInitialized", "authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { kind: "directive", type: i3$2.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"] }] });
2089
+ MapComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: MapComponent, selector: "kms-map", inputs: { data: "data" }, ngImport: i0, template: "<div *ngIf=\"geoDataFoundForAddress\">\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: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3$2.GoogleMap, selector: "google-map", inputs: ["height", "width", "mapTypeId", "center", "zoom", "options"], outputs: ["mapInitialized", "authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { kind: "directive", type: i3$2.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"] }] });
1969
2090
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MapComponent, decorators: [{
1970
2091
  type: Component,
1971
- args: [{ selector: 'kms-map', 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>" }]
2092
+ args: [{ selector: 'kms-map', template: "<div *ngIf=\"geoDataFoundForAddress\">\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>" }]
1972
2093
  }], ctorParameters: function () { return [{ type: ViewportService }]; }, propDecorators: { data: [{
1973
2094
  type: Input
1974
2095
  }] } });
@@ -2012,7 +2133,7 @@ SalutationDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.
2012
2133
  useExisting: forwardRef(() => SalutationDropdownComponent),
2013
2134
  multi: true,
2014
2135
  },
2015
- ], 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>", dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i4$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
2136
+ ], 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>", dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i3$3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i4$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
2016
2137
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SalutationDropdownComponent, decorators: [{
2017
2138
  type: Component,
2018
2139
  args: [{ selector: 'kms-salutation-dropdown', providers: [
@@ -2040,6 +2161,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2040
2161
  type: Input
2041
2162
  }] } });
2042
2163
 
2164
+ /*!
2165
+ * @copyright FLYACTS GmbH 2019
2166
+ */
2167
+
2168
+ /**
2169
+ * Attached File DTO
2170
+ */
2171
+ class AttachedFileDTO {
2172
+ }
2173
+
2174
+ /*!
2175
+ * @copyright FLYACTS GmbH 2019
2176
+ */
2177
+ var IconSize;
2178
+ (function (IconSize) {
2179
+ IconSize["FULLSIZE"] = "size-full";
2180
+ IconSize["TINY"] = "size-16";
2181
+ IconSize["SMALLER"] = "size-20";
2182
+ IconSize["SMALL"] = "size-32";
2183
+ IconSize["MEDIUM"] = "size-64";
2184
+ IconSize["LARGE"] = "size-128";
2185
+ IconSize["XL"] = "size-256";
2186
+ IconSize["XXL"] = "size-512";
2187
+ IconSize["XXXL"] = "size-1024";
2188
+ IconSize["NONE"] = "NONE";
2189
+ })(IconSize || (IconSize = {}));
2190
+
2043
2191
  class SalutationRadiogroupComponent extends FormControlParentComponent {
2044
2192
  constructor(formBuilder, renderer) {
2045
2193
  super(formBuilder, renderer);
@@ -2068,7 +2216,7 @@ SalutationRadiogroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
2068
2216
  useExisting: forwardRef(() => SalutationRadiogroupComponent),
2069
2217
  multi: true,
2070
2218
  },
2071
- ], 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>", dependencies: [{ kind: "directive", type: i2$2.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i2$2.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
2219
+ ], 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>", dependencies: [{ kind: "directive", type: i2$2.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i2$2.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
2072
2220
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SalutationRadiogroupComponent, decorators: [{
2073
2221
  type: Component,
2074
2222
  args: [{ selector: 'kms-salutation-radiogroup', providers: [
@@ -2112,7 +2260,7 @@ class BackToTopComponent {
2112
2260
  }
2113
2261
  }
2114
2262
  BackToTopComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BackToTopComponent, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component });
2115
- BackToTopComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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>", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }] });
2263
+ BackToTopComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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>", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }] });
2116
2264
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BackToTopComponent, decorators: [{
2117
2265
  type: Component,
2118
2266
  args: [{ selector: 'kms-back-to-top', 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>" }]
@@ -2317,10 +2465,13 @@ class DropdownFromDataComponent extends FormControlParentComponent {
2317
2465
  setDisplayKey(key) {
2318
2466
  if (this.translation) {
2319
2467
  if (this.translation.isPrefix) {
2320
- return this.translation.service.instant(this.translation.path + '.' + key);
2468
+ return this.translation.service?.instant?.(this.translation.path + '.' + key);
2469
+ }
2470
+ else if (this.translation.useKeyAsValue) {
2471
+ return this.translation.service?.instant?.(this.translation.path, { key: key });
2321
2472
  }
2322
2473
  else {
2323
- return this.translation.service.instant(this.translation.path);
2474
+ return this.translation.service?.instant?.(this.translation.path);
2324
2475
  }
2325
2476
  }
2326
2477
  return key;
@@ -2710,7 +2861,7 @@ class ImageSliderComponent {
2710
2861
  }
2711
2862
  }
2712
2863
  ImageSliderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ImageSliderComponent, deps: [{ token: i1$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
2713
- ImageSliderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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\">\n <!--(swiperight)=\"previousSlide()\" (swipeleft)=\"nextSlide()\"-->\n <div \n class=\"swiper-bigImage\"\n [style.backgroundImage]=\"selectedSlideImage\"\n [swipeDirective]=\"swipeConfig\"\n (moveEvent)=\"handleMoveEvent($event)\"\n (releaseEvent)=\"handleReleaseEvent($event)\"\n (mouseup)=\"lastClicked()\"\n (mouseout)=\"noLastClicked()\" >\n </div>\n\n <ng-content select=\"[description]\"></ng-content>\n\n <div class=\"swiper-holder\">\n <!--\n (mouseWheelUp)=\"scrollLeft($event)\"\n (mouseWheelDown)=\"scrollRight($event)\"\n -->\n\n <swiper [config]=\"config\" #usefulSwiper>\n <div class=\"swiper-wrapper\" \n cdkDropList (cdkDropListDropped)=\"drop($event)\" \n cdkDropListOrientation=\"horizontal\"> \n <div class=\"swiper-slide\" \n *ngFor=\"let slide of slides; let index = index\" \n cdkDrag [cdkDragDisabled]=\"!editMode\">\n <button mat-menu-item *ngIf=\"editMode\" (click)=\"deleteImage(index)\"> \n <kms-icon icon=\"trash\"></kms-icon>\n </button>\n <div class=\"img\" (click)=\"openSlide(index)\"\n [style.backgroundImage]=\"sanitizer.bypassSecurityTrustStyle('url(' + slide + ')')\"\n [ngClass]=\"{'active': index === selectedSlide}\">\n </div>\n \n <div class=\"default-image\">{{\"common.defaultImage\" | translate}} </div>\n </div>\n </div>\n </swiper>\n\n <div class=\"swiper-button-next\" *ngIf=\"slides?.length > 3\"></div>\n <div class=\"swiper-button-prev\" *ngIf=\"slides?.length > 3\"></div>\n\n <div class=\"swiper-button-next2\" *ngIf=\"slides?.length > 1\" (click)=\"nextSlide()\">\n <kms-icon icon=\"chevron-right\" [iconClass]=\"{'color-disabled': selectedSlide == slides?.length - 1, 'color-primary': true}\"></kms-icon>\n </div>\n <div class=\"swiper-button-prev2\" *ngIf=\"slides?.length > 1\" (click)=\"previousSlide()\">\n <kms-icon icon=\"chevron-left\" [iconClass]=\"{'color-disabled': selectedSlide == 0, 'color-primary': true}\"></kms-icon>\n </div>\n\n </div>\n\n <ng-content></ng-content>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3$4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: SwipeDirective, selector: "[swipeDirective]", inputs: ["swipeDirective"], outputs: ["moveEvent", "releaseEvent"] }, { kind: "component", type: i6.SwiperComponent, selector: "swiper", inputs: ["initialize", "config"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "dontUseSprite"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
2864
+ ImageSliderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", 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\">\n <!--(swiperight)=\"previousSlide()\" (swipeleft)=\"nextSlide()\"-->\n <div \n class=\"swiper-bigImage\"\n [style.backgroundImage]=\"selectedSlideImage\"\n [swipeDirective]=\"swipeConfig\"\n (moveEvent)=\"handleMoveEvent($event)\"\n (releaseEvent)=\"handleReleaseEvent($event)\"\n (mouseup)=\"lastClicked()\"\n (mouseout)=\"noLastClicked()\" >\n </div>\n\n <ng-content select=\"[description]\"></ng-content>\n\n <div class=\"swiper-holder\">\n <!--\n (mouseWheelUp)=\"scrollLeft($event)\"\n (mouseWheelDown)=\"scrollRight($event)\"\n -->\n\n <swiper [config]=\"config\" #usefulSwiper>\n <div class=\"swiper-wrapper\" \n cdkDropList (cdkDropListDropped)=\"drop($event)\" \n cdkDropListOrientation=\"horizontal\"> \n <div class=\"swiper-slide\" \n *ngFor=\"let slide of slides; let index = index\" \n cdkDrag [cdkDragDisabled]=\"!editMode\">\n <button mat-menu-item *ngIf=\"editMode\" (click)=\"deleteImage(index)\"> \n <kms-icon icon=\"trash\"></kms-icon>\n </button>\n <div class=\"img\" (click)=\"openSlide(index)\"\n [style.backgroundImage]=\"sanitizer.bypassSecurityTrustStyle('url(' + slide + ')')\"\n [ngClass]=\"{'active': index === selectedSlide}\">\n </div>\n \n <div class=\"default-image\">{{\"common.defaultImage\" | translate}} </div>\n </div>\n </div>\n </swiper>\n\n <div class=\"swiper-button-next\" *ngIf=\"slides?.length > 3\"></div>\n <div class=\"swiper-button-prev\" *ngIf=\"slides?.length > 3\"></div>\n\n <div class=\"swiper-button-next2\" *ngIf=\"slides?.length > 1\" (click)=\"nextSlide()\">\n <kms-icon icon=\"chevron-right\" [iconClass]=\"{'color-disabled': selectedSlide == slides?.length - 1, 'color-primary': true}\"></kms-icon>\n </div>\n <div class=\"swiper-button-prev2\" *ngIf=\"slides?.length > 1\" (click)=\"previousSlide()\">\n <kms-icon icon=\"chevron-left\" [iconClass]=\"{'color-disabled': selectedSlide == 0, 'color-primary': true}\"></kms-icon>\n </div>\n\n </div>\n\n <ng-content></ng-content>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3$4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: SwipeDirective, selector: "[swipeDirective]", inputs: ["swipeDirective"], outputs: ["moveEvent", "releaseEvent"] }, { kind: "component", type: i6$1.SwiperComponent, selector: "swiper", inputs: ["initialize", "config"] }, { kind: "component", type: IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
2714
2865
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ImageSliderComponent, decorators: [{
2715
2866
  type: Component,
2716
2867
  args: [{ selector: 'kms-image-slider', template: "<div class=\"all-wrapper\">\n <!--(swiperight)=\"previousSlide()\" (swipeleft)=\"nextSlide()\"-->\n <div \n class=\"swiper-bigImage\"\n [style.backgroundImage]=\"selectedSlideImage\"\n [swipeDirective]=\"swipeConfig\"\n (moveEvent)=\"handleMoveEvent($event)\"\n (releaseEvent)=\"handleReleaseEvent($event)\"\n (mouseup)=\"lastClicked()\"\n (mouseout)=\"noLastClicked()\" >\n </div>\n\n <ng-content select=\"[description]\"></ng-content>\n\n <div class=\"swiper-holder\">\n <!--\n (mouseWheelUp)=\"scrollLeft($event)\"\n (mouseWheelDown)=\"scrollRight($event)\"\n -->\n\n <swiper [config]=\"config\" #usefulSwiper>\n <div class=\"swiper-wrapper\" \n cdkDropList (cdkDropListDropped)=\"drop($event)\" \n cdkDropListOrientation=\"horizontal\"> \n <div class=\"swiper-slide\" \n *ngFor=\"let slide of slides; let index = index\" \n cdkDrag [cdkDragDisabled]=\"!editMode\">\n <button mat-menu-item *ngIf=\"editMode\" (click)=\"deleteImage(index)\"> \n <kms-icon icon=\"trash\"></kms-icon>\n </button>\n <div class=\"img\" (click)=\"openSlide(index)\"\n [style.backgroundImage]=\"sanitizer.bypassSecurityTrustStyle('url(' + slide + ')')\"\n [ngClass]=\"{'active': index === selectedSlide}\">\n </div>\n \n <div class=\"default-image\">{{\"common.defaultImage\" | translate}} </div>\n </div>\n </div>\n </swiper>\n\n <div class=\"swiper-button-next\" *ngIf=\"slides?.length > 3\"></div>\n <div class=\"swiper-button-prev\" *ngIf=\"slides?.length > 3\"></div>\n\n <div class=\"swiper-button-next2\" *ngIf=\"slides?.length > 1\" (click)=\"nextSlide()\">\n <kms-icon icon=\"chevron-right\" [iconClass]=\"{'color-disabled': selectedSlide == slides?.length - 1, 'color-primary': true}\"></kms-icon>\n </div>\n <div class=\"swiper-button-prev2\" *ngIf=\"slides?.length > 1\" (click)=\"previousSlide()\">\n <kms-icon icon=\"chevron-left\" [iconClass]=\"{'color-disabled': selectedSlide == 0, 'color-primary': true}\"></kms-icon>\n </div>\n\n </div>\n\n <ng-content></ng-content>\n</div>" }]
@@ -2797,10 +2948,12 @@ DirectivesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version
2797
2948
  DirectivesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: DirectivesModule, declarations: [SwipeDirective,
2798
2949
  MouseWheelDirective,
2799
2950
  GetMaxHeightDirective,
2800
- TooltipDirective], imports: [CommonModule], exports: [SwipeDirective,
2951
+ TooltipDirective,
2952
+ SizeDirective], imports: [CommonModule], exports: [SwipeDirective,
2801
2953
  MouseWheelDirective,
2802
2954
  GetMaxHeightDirective,
2803
- TooltipDirective] });
2955
+ TooltipDirective,
2956
+ SizeDirective] });
2804
2957
  DirectivesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DirectivesModule, imports: [CommonModule] });
2805
2958
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DirectivesModule, decorators: [{
2806
2959
  type: NgModule,
@@ -2810,6 +2963,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2810
2963
  MouseWheelDirective,
2811
2964
  GetMaxHeightDirective,
2812
2965
  TooltipDirective,
2966
+ SizeDirective,
2813
2967
  ],
2814
2968
  imports: [CommonModule],
2815
2969
  exports: [
@@ -2817,6 +2971,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
2817
2971
  MouseWheelDirective,
2818
2972
  GetMaxHeightDirective,
2819
2973
  TooltipDirective,
2974
+ SizeDirective,
2820
2975
  ],
2821
2976
  }]
2822
2977
  }] });
@@ -3000,5 +3155,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
3000
3155
  * Generated bundle index. Do not edit.
3001
3156
  */
3002
3157
 
3003
- 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 };
3158
+ export { ActionsParentComponent, BackToTopComponent, Breakpoint, 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, SimpleBreakpoint, SizeDirective, SwipeDirective, TimeInputComponent, ToNumberPipe, TooltipComponent, TooltipDirective, TooltipIconComponent, TrimPipe, TypeofPipe, ViewportService, YesNoRadiogroupComponent };
3004
3159
  //# sourceMappingURL=kms-ngx-ui-presentational.mjs.map