@koalarx/ui 14.0.0 → 14.0.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 (99) hide show
  1. package/alert/esm2020/lib/dialog-alert.component.mjs +3 -3
  2. package/alert/esm2020/lib/koala.alert.module.mjs +4 -4
  3. package/alert/esm2020/lib/koala.alert.service.mjs +3 -3
  4. package/alert/fesm2015/koalarx-ui-alert.mjs +10 -10
  5. package/alert/fesm2020/koalarx-ui-alert.mjs +10 -10
  6. package/button/esm2020/lib/button.component.mjs +3 -3
  7. package/button/esm2020/lib/koala.button.module.mjs +4 -4
  8. package/button/fesm2015/koalarx-ui-button.mjs +7 -7
  9. package/button/fesm2020/koalarx-ui-button.mjs +7 -7
  10. package/common/esm2020/lib/services/csv/koala.csv.service.mjs +3 -3
  11. package/common/esm2020/lib/services/xlsx/koala.xlsx.service.mjs +58 -4
  12. package/common/fesm2015/koalarx-ui-common.mjs +63 -6
  13. package/common/fesm2015/koalarx-ui-common.mjs.map +1 -1
  14. package/common/fesm2020/koalarx-ui-common.mjs +60 -6
  15. package/common/fesm2020/koalarx-ui-common.mjs.map +1 -1
  16. package/common/lib/services/xlsx/koala.xlsx.service.d.ts +5 -0
  17. package/core/esm2020/lib/loader/loader-bar-page.component.mjs +3 -3
  18. package/core/esm2020/lib/ngx-koala.module.mjs +4 -4
  19. package/core/esm2020/lib/page/koala.page.module.mjs +4 -4
  20. package/core/esm2020/lib/page/notifications/notification.component.mjs +4 -4
  21. package/core/esm2020/lib/page/page.component.mjs +3 -3
  22. package/core/esm2020/lib/router/koala.parameter-hash-location-stategy.mjs +3 -3
  23. package/core/esm2020/lib/services/api-requester/koala.api-requester.service.mjs +3 -3
  24. package/core/esm2020/lib/services/loader/koala.loader.service.mjs +3 -3
  25. package/core/esm2020/lib/services/openid/koala.oauth2.service.mjs +3 -3
  26. package/core/esm2020/lib/services/request/koala.request.service.mjs +3 -3
  27. package/core/esm2020/lib/services/token/koala.token.service.mjs +3 -3
  28. package/core/fesm2015/koalarx-ui-core.mjs +36 -36
  29. package/core/fesm2015/koalarx-ui-core.mjs.map +1 -1
  30. package/core/fesm2020/koalarx-ui-core.mjs +36 -36
  31. package/core/fesm2020/koalarx-ui-core.mjs.map +1 -1
  32. package/dialog/esm2020/lib/dialog.component.mjs +3 -3
  33. package/dialog/esm2020/lib/koala.dialog.module.mjs +4 -4
  34. package/dialog/esm2020/lib/koala.dialog.service.mjs +3 -3
  35. package/dialog/fesm2015/koalarx-ui-dialog.mjs +10 -10
  36. package/dialog/fesm2020/koalarx-ui-dialog.mjs +10 -10
  37. package/dynamic-component/esm2020/lib/koala-dynamic-component.directive.mjs +3 -3
  38. package/dynamic-component/esm2020/lib/koala-dynamic-component.factory.mjs +3 -3
  39. package/dynamic-component/esm2020/lib/koala-dynamic-component.module.mjs +4 -4
  40. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.mjs +10 -10
  41. package/dynamic-component/fesm2020/koalarx-ui-dynamic-component.mjs +10 -10
  42. package/file-button/esm2020/lib/file-button.component.mjs +3 -3
  43. package/file-button/esm2020/lib/koala.btn-file.service.mjs +3 -3
  44. package/file-button/esm2020/lib/koala.file-button.module.mjs +4 -4
  45. package/file-button/fesm2015/koalarx-ui-file-button.mjs +10 -10
  46. package/file-button/fesm2020/koalarx-ui-file-button.mjs +10 -10
  47. package/folder-page/esm2020/lib/folder.component.mjs +3 -3
  48. package/folder-page/esm2020/lib/koala.folder-page.module.mjs +4 -4
  49. package/folder-page/fesm2015/koalarx-ui-folder-page.mjs +7 -7
  50. package/folder-page/fesm2015/koalarx-ui-folder-page.mjs.map +1 -1
  51. package/folder-page/fesm2020/koalarx-ui-folder-page.mjs +7 -7
  52. package/folder-page/fesm2020/koalarx-ui-folder-page.mjs.map +1 -1
  53. package/form/esm2020/lib/btn-submit/btn-submit.component.mjs +3 -3
  54. package/form/esm2020/lib/directives/koala-autofocus.directive.mjs +3 -3
  55. package/form/esm2020/lib/dynamic-form/dynamic-form.component.mjs +10 -11
  56. package/form/esm2020/lib/dynamic-form/koala.dynamic-form.service.mjs +3 -3
  57. package/form/esm2020/lib/koala.form.module.mjs +4 -4
  58. package/form/fesm2015/koalarx-ui-form.mjs +22 -23
  59. package/form/fesm2015/koalarx-ui-form.mjs.map +1 -1
  60. package/form/fesm2020/koalarx-ui-form.mjs +22 -23
  61. package/form/fesm2020/koalarx-ui-form.mjs.map +1 -1
  62. package/form/lib/dynamic-form/dynamic-form.component.d.ts +2 -2
  63. package/icon/esm2020/lib/icon.component.mjs +3 -3
  64. package/icon/esm2020/lib/koala.icon.module.mjs +4 -4
  65. package/icon/fesm2015/koalarx-ui-icon.mjs +7 -7
  66. package/icon/fesm2020/koalarx-ui-icon.mjs +7 -7
  67. package/icons-animated/esm2020/lib/icons/downloading/downloading-icon-animated.component.mjs +4 -4
  68. package/icons-animated/esm2020/lib/icons/loading/loading-icon-animated.component.mjs +4 -4
  69. package/icons-animated/esm2020/lib/icons-animated.component.mjs +3 -3
  70. package/icons-animated/esm2020/lib/icons-animated.service.mjs +3 -3
  71. package/icons-animated/esm2020/lib/koala-icons-animated.module.mjs +4 -4
  72. package/icons-animated/fesm2015/koalarx-ui-icons-animated.mjs +18 -18
  73. package/icons-animated/fesm2015/koalarx-ui-icons-animated.mjs.map +1 -1
  74. package/icons-animated/fesm2020/koalarx-ui-icons-animated.mjs +18 -18
  75. package/icons-animated/fesm2020/koalarx-ui-icons-animated.mjs.map +1 -1
  76. package/list/esm2020/lib/koala.list.module.mjs +4 -4
  77. package/list/esm2020/lib/koala.list.service.mjs +3 -3
  78. package/list/esm2020/lib/list.component.mjs +3 -3
  79. package/list/esm2020/lib/providers/pagination/pagination.provider.mjs +3 -3
  80. package/list/fesm2015/koalarx-ui-list.mjs +13 -13
  81. package/list/fesm2020/koalarx-ui-list.mjs +13 -13
  82. package/menu/esm2020/lib/koala.menu.module.mjs +4 -4
  83. package/menu/esm2020/lib/koala.menu.service.mjs +3 -3
  84. package/menu/esm2020/lib/menu.component.mjs +4 -4
  85. package/menu/fesm2015/koalarx-ui-menu.mjs +11 -11
  86. package/menu/fesm2015/koalarx-ui-menu.mjs.map +1 -1
  87. package/menu/fesm2020/koalarx-ui-menu.mjs +11 -11
  88. package/menu/fesm2020/koalarx-ui-menu.mjs.map +1 -1
  89. package/package.json +1 -1
  90. package/question/esm2020/lib/dialog-question.component.mjs +3 -3
  91. package/question/esm2020/lib/koala.question.module.mjs +4 -4
  92. package/question/esm2020/lib/koala.question.service.mjs +3 -3
  93. package/question/fesm2015/koalarx-ui-question.mjs +10 -10
  94. package/question/fesm2020/koalarx-ui-question.mjs +10 -10
  95. package/snackbar/esm2020/lib/koala.snackbar.component.mjs +3 -3
  96. package/snackbar/esm2020/lib/koala.snackbar.module.mjs +4 -4
  97. package/snackbar/esm2020/lib/koala.snackbar.service.mjs +3 -3
  98. package/snackbar/fesm2015/koalarx-ui-snackbar.mjs +10 -10
  99. package/snackbar/fesm2020/koalarx-ui-snackbar.mjs +10 -10
@@ -36,9 +36,9 @@ export class DialogAlertComponent {
36
36
  }
37
37
  }
38
38
  }
39
- DialogAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DialogAlertComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
40
- DialogAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DialogAlertComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"content\" mat-dialog-content>\n <mat-icon *ngIf=\"alert.alertEnum else avatar\" [ngClass]=\"iconColor ?? ''\">{{icon}}</mat-icon>\n <ng-template #avatar>\n <koala-dynamic-component [dynamicComponent]=\"alert.avatar\"></koala-dynamic-component>\n </ng-template>\n <p [innerHTML]=\"alert.message\" class=\"w-100 alert-message text-center\"></p>\n</div>\n<div align=\"center\" mat-dialog-actions>\n\t<div *ngFor=\"let action of alert?.actions\">\n\t <button\n\t\t (click)=\"action.action()\"\n\t\t *ngIf=\"action.show\"\n\t\t [color]=\"action.color\"\n\t\t mat-dialog-close\n\t\t mat-raised-button>\n\t {{action.text}}\n\t </button>\n\t</div>\n <button color=\"primary\" mat-dialog-close mat-raised-button>Ok</button>\n</div>\n", styles: [".content{color:#616161}.content .alert-message{display:inline-block;margin:15px auto;font-family:OpenSans,sans-serif;font-weight:700}.content mat-icon{position:relative;display:block;margin:15px auto;width:60px;height:60px;font-size:60px}.content mat-icon.success{color:#4caf50}.content mat-icon.notFound{color:#2196f3}.content mat-icon.error{color:#e53935}.content mat-icon.badRequest{color:#ffc107}.content mat-icon.unhautorized{color:#ff9800}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.KoalaDynamicComponentFactory, selector: "koala-dynamic-component", inputs: ["dynamicComponent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DialogAlertComponent, decorators: [{
39
+ DialogAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: DialogAlertComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
40
+ DialogAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: DialogAlertComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"content\" mat-dialog-content>\n <mat-icon *ngIf=\"alert.alertEnum else avatar\" [ngClass]=\"iconColor ?? ''\">{{icon}}</mat-icon>\n <ng-template #avatar>\n <koala-dynamic-component [dynamicComponent]=\"alert.avatar\"></koala-dynamic-component>\n </ng-template>\n <p [innerHTML]=\"alert.message\" class=\"w-100 alert-message text-center\"></p>\n</div>\n<div align=\"center\" mat-dialog-actions>\n\t<div *ngFor=\"let action of alert?.actions\">\n\t <button\n\t\t (click)=\"action.action()\"\n\t\t *ngIf=\"action.show\"\n\t\t [color]=\"action.color\"\n\t\t mat-dialog-close\n\t\t mat-raised-button>\n\t {{action.text}}\n\t </button>\n\t</div>\n <button color=\"primary\" mat-dialog-close mat-raised-button>Ok</button>\n</div>\n", styles: [".content{color:#616161}.content .alert-message{display:inline-block;margin:15px auto;font-family:OpenSans,sans-serif;font-weight:700}.content mat-icon{position:relative;display:block;margin:15px auto;width:60px;height:60px;font-size:60px}.content mat-icon.success{color:#4caf50}.content mat-icon.notFound{color:#2196f3}.content mat-icon.error{color:#e53935}.content mat-icon.badRequest{color:#ffc107}.content mat-icon.unhautorized{color:#ff9800}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.KoalaDynamicComponentFactory, selector: "koala-dynamic-component", inputs: ["dynamicComponent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: DialogAlertComponent, decorators: [{
42
42
  type: Component,
43
43
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"content\" mat-dialog-content>\n <mat-icon *ngIf=\"alert.alertEnum else avatar\" [ngClass]=\"iconColor ?? ''\">{{icon}}</mat-icon>\n <ng-template #avatar>\n <koala-dynamic-component [dynamicComponent]=\"alert.avatar\"></koala-dynamic-component>\n </ng-template>\n <p [innerHTML]=\"alert.message\" class=\"w-100 alert-message text-center\"></p>\n</div>\n<div align=\"center\" mat-dialog-actions>\n\t<div *ngFor=\"let action of alert?.actions\">\n\t <button\n\t\t (click)=\"action.action()\"\n\t\t *ngIf=\"action.show\"\n\t\t [color]=\"action.color\"\n\t\t mat-dialog-close\n\t\t mat-raised-button>\n\t {{action.text}}\n\t </button>\n\t</div>\n <button color=\"primary\" mat-dialog-close mat-raised-button>Ok</button>\n</div>\n", styles: [".content{color:#616161}.content .alert-message{display:inline-block;margin:15px auto;font-family:OpenSans,sans-serif;font-weight:700}.content mat-icon{position:relative;display:block;margin:15px auto;width:60px;height:60px;font-size:60px}.content mat-icon.success{color:#4caf50}.content mat-icon.notFound{color:#2196f3}.content mat-icon.error{color:#e53935}.content mat-icon.badRequest{color:#ffc107}.content mat-icon.unhautorized{color:#ff9800}\n"] }]
44
44
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -9,20 +9,20 @@ import { KoalaDynamicComponentModule } from "@koalarx/ui/dynamic-component";
9
9
  import * as i0 from "@angular/core";
10
10
  export class KoalaAlertModule {
11
11
  }
12
- KoalaAlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
- KoalaAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, declarations: [DialogAlertComponent], imports: [CommonModule,
12
+ KoalaAlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
+ KoalaAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, declarations: [DialogAlertComponent], imports: [CommonModule,
14
14
  MatDialogModule,
15
15
  MatButtonModule,
16
16
  MatIconModule,
17
17
  KoalaDynamicComponentModule], exports: [DialogAlertComponent] });
18
- KoalaAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, providers: [
18
+ KoalaAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, providers: [
19
19
  KoalaAlertService
20
20
  ], imports: [CommonModule,
21
21
  MatDialogModule,
22
22
  MatButtonModule,
23
23
  MatIconModule,
24
24
  KoalaDynamicComponentModule] });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, decorators: [{
26
26
  type: NgModule,
27
27
  args: [{
28
28
  declarations: [
@@ -10,9 +10,9 @@ export class KoalaAlertService {
10
10
  this.dialogService.open(DialogAlertComponent, 'auto', alertConfig);
11
11
  }
12
12
  }
13
- KoalaAlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertService, deps: [{ token: i1.KoalaDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
14
- KoalaAlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertService, providedIn: "any" });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertService, decorators: [{
13
+ KoalaAlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertService, deps: [{ token: i1.KoalaDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
14
+ KoalaAlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertService, providedIn: "any" });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertService, decorators: [{
16
16
  type: Injectable,
17
17
  args: [{ providedIn: "any" }]
18
18
  }], ctorParameters: function () { return [{ type: i1.KoalaDialogService }]; } });
@@ -50,9 +50,9 @@ class DialogAlertComponent {
50
50
  }
51
51
  }
52
52
  }
53
- DialogAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DialogAlertComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
54
- DialogAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DialogAlertComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"content\" mat-dialog-content>\n <mat-icon *ngIf=\"alert.alertEnum else avatar\" [ngClass]=\"iconColor ?? ''\">{{icon}}</mat-icon>\n <ng-template #avatar>\n <koala-dynamic-component [dynamicComponent]=\"alert.avatar\"></koala-dynamic-component>\n </ng-template>\n <p [innerHTML]=\"alert.message\" class=\"w-100 alert-message text-center\"></p>\n</div>\n<div align=\"center\" mat-dialog-actions>\n\t<div *ngFor=\"let action of alert?.actions\">\n\t <button\n\t\t (click)=\"action.action()\"\n\t\t *ngIf=\"action.show\"\n\t\t [color]=\"action.color\"\n\t\t mat-dialog-close\n\t\t mat-raised-button>\n\t {{action.text}}\n\t </button>\n\t</div>\n <button color=\"primary\" mat-dialog-close mat-raised-button>Ok</button>\n</div>\n", styles: [".content{color:#616161}.content .alert-message{display:inline-block;margin:15px auto;font-family:OpenSans,sans-serif;font-weight:700}.content mat-icon{position:relative;display:block;margin:15px auto;width:60px;height:60px;font-size:60px}.content mat-icon.success{color:#4caf50}.content mat-icon.notFound{color:#2196f3}.content mat-icon.error{color:#e53935}.content mat-icon.badRequest{color:#ffc107}.content mat-icon.unhautorized{color:#ff9800}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.KoalaDynamicComponentFactory, selector: "koala-dynamic-component", inputs: ["dynamicComponent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DialogAlertComponent, decorators: [{
53
+ DialogAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: DialogAlertComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
54
+ DialogAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: DialogAlertComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"content\" mat-dialog-content>\n <mat-icon *ngIf=\"alert.alertEnum else avatar\" [ngClass]=\"iconColor ?? ''\">{{icon}}</mat-icon>\n <ng-template #avatar>\n <koala-dynamic-component [dynamicComponent]=\"alert.avatar\"></koala-dynamic-component>\n </ng-template>\n <p [innerHTML]=\"alert.message\" class=\"w-100 alert-message text-center\"></p>\n</div>\n<div align=\"center\" mat-dialog-actions>\n\t<div *ngFor=\"let action of alert?.actions\">\n\t <button\n\t\t (click)=\"action.action()\"\n\t\t *ngIf=\"action.show\"\n\t\t [color]=\"action.color\"\n\t\t mat-dialog-close\n\t\t mat-raised-button>\n\t {{action.text}}\n\t </button>\n\t</div>\n <button color=\"primary\" mat-dialog-close mat-raised-button>Ok</button>\n</div>\n", styles: [".content{color:#616161}.content .alert-message{display:inline-block;margin:15px auto;font-family:OpenSans,sans-serif;font-weight:700}.content mat-icon{position:relative;display:block;margin:15px auto;width:60px;height:60px;font-size:60px}.content mat-icon.success{color:#4caf50}.content mat-icon.notFound{color:#2196f3}.content mat-icon.error{color:#e53935}.content mat-icon.badRequest{color:#ffc107}.content mat-icon.unhautorized{color:#ff9800}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.KoalaDynamicComponentFactory, selector: "koala-dynamic-component", inputs: ["dynamicComponent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: DialogAlertComponent, decorators: [{
56
56
  type: Component,
57
57
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"content\" mat-dialog-content>\n <mat-icon *ngIf=\"alert.alertEnum else avatar\" [ngClass]=\"iconColor ?? ''\">{{icon}}</mat-icon>\n <ng-template #avatar>\n <koala-dynamic-component [dynamicComponent]=\"alert.avatar\"></koala-dynamic-component>\n </ng-template>\n <p [innerHTML]=\"alert.message\" class=\"w-100 alert-message text-center\"></p>\n</div>\n<div align=\"center\" mat-dialog-actions>\n\t<div *ngFor=\"let action of alert?.actions\">\n\t <button\n\t\t (click)=\"action.action()\"\n\t\t *ngIf=\"action.show\"\n\t\t [color]=\"action.color\"\n\t\t mat-dialog-close\n\t\t mat-raised-button>\n\t {{action.text}}\n\t </button>\n\t</div>\n <button color=\"primary\" mat-dialog-close mat-raised-button>Ok</button>\n</div>\n", styles: [".content{color:#616161}.content .alert-message{display:inline-block;margin:15px auto;font-family:OpenSans,sans-serif;font-weight:700}.content mat-icon{position:relative;display:block;margin:15px auto;width:60px;height:60px;font-size:60px}.content mat-icon.success{color:#4caf50}.content mat-icon.notFound{color:#2196f3}.content mat-icon.error{color:#e53935}.content mat-icon.badRequest{color:#ffc107}.content mat-icon.unhautorized{color:#ff9800}\n"] }]
58
58
  }], ctorParameters: function () {
@@ -87,29 +87,29 @@ class KoalaAlertService {
87
87
  this.dialogService.open(DialogAlertComponent, 'auto', alertConfig);
88
88
  }
89
89
  }
90
- KoalaAlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertService, deps: [{ token: i1$1.KoalaDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
91
- KoalaAlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertService, providedIn: "any" });
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertService, decorators: [{
90
+ KoalaAlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertService, deps: [{ token: i1$1.KoalaDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
91
+ KoalaAlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertService, providedIn: "any" });
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertService, decorators: [{
93
93
  type: Injectable,
94
94
  args: [{ providedIn: "any" }]
95
95
  }], ctorParameters: function () { return [{ type: i1$1.KoalaDialogService }]; } });
96
96
 
97
97
  class KoalaAlertModule {
98
98
  }
99
- KoalaAlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
100
- KoalaAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, declarations: [DialogAlertComponent], imports: [CommonModule,
99
+ KoalaAlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
100
+ KoalaAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, declarations: [DialogAlertComponent], imports: [CommonModule,
101
101
  MatDialogModule,
102
102
  MatButtonModule,
103
103
  MatIconModule,
104
104
  KoalaDynamicComponentModule], exports: [DialogAlertComponent] });
105
- KoalaAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, providers: [
105
+ KoalaAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, providers: [
106
106
  KoalaAlertService
107
107
  ], imports: [CommonModule,
108
108
  MatDialogModule,
109
109
  MatButtonModule,
110
110
  MatIconModule,
111
111
  KoalaDynamicComponentModule] });
112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, decorators: [{
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, decorators: [{
113
113
  type: NgModule,
114
114
  args: [{
115
115
  declarations: [
@@ -50,9 +50,9 @@ class DialogAlertComponent {
50
50
  }
51
51
  }
52
52
  }
53
- DialogAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DialogAlertComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
54
- DialogAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: DialogAlertComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"content\" mat-dialog-content>\n <mat-icon *ngIf=\"alert.alertEnum else avatar\" [ngClass]=\"iconColor ?? ''\">{{icon}}</mat-icon>\n <ng-template #avatar>\n <koala-dynamic-component [dynamicComponent]=\"alert.avatar\"></koala-dynamic-component>\n </ng-template>\n <p [innerHTML]=\"alert.message\" class=\"w-100 alert-message text-center\"></p>\n</div>\n<div align=\"center\" mat-dialog-actions>\n\t<div *ngFor=\"let action of alert?.actions\">\n\t <button\n\t\t (click)=\"action.action()\"\n\t\t *ngIf=\"action.show\"\n\t\t [color]=\"action.color\"\n\t\t mat-dialog-close\n\t\t mat-raised-button>\n\t {{action.text}}\n\t </button>\n\t</div>\n <button color=\"primary\" mat-dialog-close mat-raised-button>Ok</button>\n</div>\n", styles: [".content{color:#616161}.content .alert-message{display:inline-block;margin:15px auto;font-family:OpenSans,sans-serif;font-weight:700}.content mat-icon{position:relative;display:block;margin:15px auto;width:60px;height:60px;font-size:60px}.content mat-icon.success{color:#4caf50}.content mat-icon.notFound{color:#2196f3}.content mat-icon.error{color:#e53935}.content mat-icon.badRequest{color:#ffc107}.content mat-icon.unhautorized{color:#ff9800}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.KoalaDynamicComponentFactory, selector: "koala-dynamic-component", inputs: ["dynamicComponent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DialogAlertComponent, decorators: [{
53
+ DialogAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: DialogAlertComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
54
+ DialogAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: DialogAlertComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"content\" mat-dialog-content>\n <mat-icon *ngIf=\"alert.alertEnum else avatar\" [ngClass]=\"iconColor ?? ''\">{{icon}}</mat-icon>\n <ng-template #avatar>\n <koala-dynamic-component [dynamicComponent]=\"alert.avatar\"></koala-dynamic-component>\n </ng-template>\n <p [innerHTML]=\"alert.message\" class=\"w-100 alert-message text-center\"></p>\n</div>\n<div align=\"center\" mat-dialog-actions>\n\t<div *ngFor=\"let action of alert?.actions\">\n\t <button\n\t\t (click)=\"action.action()\"\n\t\t *ngIf=\"action.show\"\n\t\t [color]=\"action.color\"\n\t\t mat-dialog-close\n\t\t mat-raised-button>\n\t {{action.text}}\n\t </button>\n\t</div>\n <button color=\"primary\" mat-dialog-close mat-raised-button>Ok</button>\n</div>\n", styles: [".content{color:#616161}.content .alert-message{display:inline-block;margin:15px auto;font-family:OpenSans,sans-serif;font-weight:700}.content mat-icon{position:relative;display:block;margin:15px auto;width:60px;height:60px;font-size:60px}.content mat-icon.success{color:#4caf50}.content mat-icon.notFound{color:#2196f3}.content mat-icon.error{color:#e53935}.content mat-icon.badRequest{color:#ffc107}.content mat-icon.unhautorized{color:#ff9800}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.KoalaDynamicComponentFactory, selector: "koala-dynamic-component", inputs: ["dynamicComponent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: DialogAlertComponent, decorators: [{
56
56
  type: Component,
57
57
  args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"content\" mat-dialog-content>\n <mat-icon *ngIf=\"alert.alertEnum else avatar\" [ngClass]=\"iconColor ?? ''\">{{icon}}</mat-icon>\n <ng-template #avatar>\n <koala-dynamic-component [dynamicComponent]=\"alert.avatar\"></koala-dynamic-component>\n </ng-template>\n <p [innerHTML]=\"alert.message\" class=\"w-100 alert-message text-center\"></p>\n</div>\n<div align=\"center\" mat-dialog-actions>\n\t<div *ngFor=\"let action of alert?.actions\">\n\t <button\n\t\t (click)=\"action.action()\"\n\t\t *ngIf=\"action.show\"\n\t\t [color]=\"action.color\"\n\t\t mat-dialog-close\n\t\t mat-raised-button>\n\t {{action.text}}\n\t </button>\n\t</div>\n <button color=\"primary\" mat-dialog-close mat-raised-button>Ok</button>\n</div>\n", styles: [".content{color:#616161}.content .alert-message{display:inline-block;margin:15px auto;font-family:OpenSans,sans-serif;font-weight:700}.content mat-icon{position:relative;display:block;margin:15px auto;width:60px;height:60px;font-size:60px}.content mat-icon.success{color:#4caf50}.content mat-icon.notFound{color:#2196f3}.content mat-icon.error{color:#e53935}.content mat-icon.badRequest{color:#ffc107}.content mat-icon.unhautorized{color:#ff9800}\n"] }]
58
58
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -85,29 +85,29 @@ class KoalaAlertService {
85
85
  this.dialogService.open(DialogAlertComponent, 'auto', alertConfig);
86
86
  }
87
87
  }
88
- KoalaAlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertService, deps: [{ token: i1$1.KoalaDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
89
- KoalaAlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertService, providedIn: "any" });
90
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertService, decorators: [{
88
+ KoalaAlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertService, deps: [{ token: i1$1.KoalaDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
89
+ KoalaAlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertService, providedIn: "any" });
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertService, decorators: [{
91
91
  type: Injectable,
92
92
  args: [{ providedIn: "any" }]
93
93
  }], ctorParameters: function () { return [{ type: i1$1.KoalaDialogService }]; } });
94
94
 
95
95
  class KoalaAlertModule {
96
96
  }
97
- KoalaAlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
98
- KoalaAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, declarations: [DialogAlertComponent], imports: [CommonModule,
97
+ KoalaAlertModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
98
+ KoalaAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, declarations: [DialogAlertComponent], imports: [CommonModule,
99
99
  MatDialogModule,
100
100
  MatButtonModule,
101
101
  MatIconModule,
102
102
  KoalaDynamicComponentModule], exports: [DialogAlertComponent] });
103
- KoalaAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, providers: [
103
+ KoalaAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, providers: [
104
104
  KoalaAlertService
105
105
  ], imports: [CommonModule,
106
106
  MatDialogModule,
107
107
  MatButtonModule,
108
108
  MatIconModule,
109
109
  KoalaDynamicComponentModule] });
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaAlertModule, decorators: [{
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaAlertModule, decorators: [{
111
111
  type: NgModule,
112
112
  args: [{
113
113
  declarations: [
@@ -19,9 +19,9 @@ export class ButtonComponent {
19
19
  return this.icon;
20
20
  }
21
21
  }
22
- ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23
- ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: ButtonComponent, selector: "koala-button", inputs: { color: "color", backgroundColor: "backgroundColor", icon: "icon", text: "text", tooltip: "tooltip", disabled: "disabled", koalaIcon: "koalaIcon", koalaIconSize: "koalaIconSize" }, ngImport: i0, template: "<button\n\t*ngIf=\"text else iconButton\"\n\t[matTooltipDisabled]=\"!tooltip\"\n\t[matTooltip]=\"tooltip ?? ''\"\n\t[disabled]=\"disabled\"\n [style]=\"style\"\n\tclass=\"koala-button\"\n\tmat-button\n\tmatTooltipPosition=\"above\"\n\ttype=\"button\">\n <mat-icon *ngIf=\"icon && !koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"icon && koalaIcon\"></koala-icon>\n\t{{text}}\n</button>\n<ng-template #iconButton>\n <button\n\t [matTooltipDisabled]=\"!tooltip\"\n\t [matTooltip]=\"tooltip ?? ''\"\n [style]=\"style\"\n\t [disabled]=\"disabled\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t matTooltipPosition=\"before\"\n\t type=\"button\">\n <mat-icon *ngIf=\"!koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"koalaIcon\"></koala-icon>\n </button>\n</ng-template>\n", styles: [".koala-button{padding:2px 8px}.koala-button koala-icon{position:relative;display:inline-block;margin-right:8px;top:-1px}.koala-icon-button:disabled,.koala-button:disabled{background:#cccccc!important;color:#616161!important;cursor:not-allowed}.koala-icon-button{height:25px;line-height:25px;width:25px}.koala-icon-button mat-icon{font-size:20px;height:20px;line-height:20px;position:relative;width:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.IconComponent, selector: "koala-icon", inputs: ["color", "icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ButtonComponent, decorators: [{
22
+ ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23
+ ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: ButtonComponent, selector: "koala-button", inputs: { color: "color", backgroundColor: "backgroundColor", icon: "icon", text: "text", tooltip: "tooltip", disabled: "disabled", koalaIcon: "koalaIcon", koalaIconSize: "koalaIconSize" }, ngImport: i0, template: "<button\n\t*ngIf=\"text else iconButton\"\n\t[matTooltipDisabled]=\"!tooltip\"\n\t[matTooltip]=\"tooltip ?? ''\"\n\t[disabled]=\"disabled\"\n [style]=\"style\"\n\tclass=\"koala-button\"\n\tmat-button\n\tmatTooltipPosition=\"above\"\n\ttype=\"button\">\n <mat-icon *ngIf=\"icon && !koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"icon && koalaIcon\"></koala-icon>\n\t{{text}}\n</button>\n<ng-template #iconButton>\n <button\n\t [matTooltipDisabled]=\"!tooltip\"\n\t [matTooltip]=\"tooltip ?? ''\"\n [style]=\"style\"\n\t [disabled]=\"disabled\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t matTooltipPosition=\"before\"\n\t type=\"button\">\n <mat-icon *ngIf=\"!koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"koalaIcon\"></koala-icon>\n </button>\n</ng-template>\n", styles: [".koala-button{padding:2px 8px}.koala-button koala-icon{position:relative;display:inline-block;margin-right:8px;top:-1px}.koala-icon-button:disabled,.koala-button:disabled{background:#cccccc!important;color:#616161!important;cursor:not-allowed}.koala-icon-button{height:25px;line-height:25px;width:25px}.koala-icon-button mat-icon{font-size:20px;height:20px;line-height:20px;position:relative;width:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.IconComponent, selector: "koala-icon", inputs: ["color", "icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ButtonComponent, decorators: [{
25
25
  type: Component,
26
26
  args: [{ selector: 'koala-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n\t*ngIf=\"text else iconButton\"\n\t[matTooltipDisabled]=\"!tooltip\"\n\t[matTooltip]=\"tooltip ?? ''\"\n\t[disabled]=\"disabled\"\n [style]=\"style\"\n\tclass=\"koala-button\"\n\tmat-button\n\tmatTooltipPosition=\"above\"\n\ttype=\"button\">\n <mat-icon *ngIf=\"icon && !koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"icon && koalaIcon\"></koala-icon>\n\t{{text}}\n</button>\n<ng-template #iconButton>\n <button\n\t [matTooltipDisabled]=\"!tooltip\"\n\t [matTooltip]=\"tooltip ?? ''\"\n [style]=\"style\"\n\t [disabled]=\"disabled\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t matTooltipPosition=\"before\"\n\t type=\"button\">\n <mat-icon *ngIf=\"!koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"koalaIcon\"></koala-icon>\n </button>\n</ng-template>\n", styles: [".koala-button{padding:2px 8px}.koala-button koala-icon{position:relative;display:inline-block;margin-right:8px;top:-1px}.koala-icon-button:disabled,.koala-button:disabled{background:#cccccc!important;color:#616161!important;cursor:not-allowed}.koala-icon-button{height:25px;line-height:25px;width:25px}.koala-icon-button mat-icon{font-size:20px;height:20px;line-height:20px;position:relative;width:20px}\n"] }]
27
27
  }], propDecorators: { color: [{
@@ -8,18 +8,18 @@ import { KoalaIconModule } from '@koalarx/ui/icon';
8
8
  import * as i0 from "@angular/core";
9
9
  export class KoalaButtonModule {
10
10
  }
11
- KoalaButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- KoalaButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, declarations: [ButtonComponent], imports: [CommonModule,
11
+ KoalaButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ KoalaButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, declarations: [ButtonComponent], imports: [CommonModule,
13
13
  MatTooltipModule,
14
14
  MatButtonModule,
15
15
  MatIconModule,
16
16
  KoalaIconModule], exports: [ButtonComponent] });
17
- KoalaButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, imports: [CommonModule,
17
+ KoalaButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, imports: [CommonModule,
18
18
  MatTooltipModule,
19
19
  MatButtonModule,
20
20
  MatIconModule,
21
21
  KoalaIconModule] });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, decorators: [{
23
23
  type: NgModule,
24
24
  args: [{
25
25
  declarations: [
@@ -25,9 +25,9 @@ class ButtonComponent {
25
25
  return this.icon;
26
26
  }
27
27
  }
28
- ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
- ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: ButtonComponent, selector: "koala-button", inputs: { color: "color", backgroundColor: "backgroundColor", icon: "icon", text: "text", tooltip: "tooltip", disabled: "disabled", koalaIcon: "koalaIcon", koalaIconSize: "koalaIconSize" }, ngImport: i0, template: "<button\n\t*ngIf=\"text else iconButton\"\n\t[matTooltipDisabled]=\"!tooltip\"\n\t[matTooltip]=\"tooltip ?? ''\"\n\t[disabled]=\"disabled\"\n [style]=\"style\"\n\tclass=\"koala-button\"\n\tmat-button\n\tmatTooltipPosition=\"above\"\n\ttype=\"button\">\n <mat-icon *ngIf=\"icon && !koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"icon && koalaIcon\"></koala-icon>\n\t{{text}}\n</button>\n<ng-template #iconButton>\n <button\n\t [matTooltipDisabled]=\"!tooltip\"\n\t [matTooltip]=\"tooltip ?? ''\"\n [style]=\"style\"\n\t [disabled]=\"disabled\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t matTooltipPosition=\"before\"\n\t type=\"button\">\n <mat-icon *ngIf=\"!koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"koalaIcon\"></koala-icon>\n </button>\n</ng-template>\n", styles: [".koala-button{padding:2px 8px}.koala-button koala-icon{position:relative;display:inline-block;margin-right:8px;top:-1px}.koala-icon-button:disabled,.koala-button:disabled{background:#cccccc!important;color:#616161!important;cursor:not-allowed}.koala-icon-button{height:25px;line-height:25px;width:25px}.koala-icon-button mat-icon{font-size:20px;height:20px;line-height:20px;position:relative;width:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.IconComponent, selector: "koala-icon", inputs: ["color", "icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ButtonComponent, decorators: [{
28
+ ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
+ ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: ButtonComponent, selector: "koala-button", inputs: { color: "color", backgroundColor: "backgroundColor", icon: "icon", text: "text", tooltip: "tooltip", disabled: "disabled", koalaIcon: "koalaIcon", koalaIconSize: "koalaIconSize" }, ngImport: i0, template: "<button\n\t*ngIf=\"text else iconButton\"\n\t[matTooltipDisabled]=\"!tooltip\"\n\t[matTooltip]=\"tooltip ?? ''\"\n\t[disabled]=\"disabled\"\n [style]=\"style\"\n\tclass=\"koala-button\"\n\tmat-button\n\tmatTooltipPosition=\"above\"\n\ttype=\"button\">\n <mat-icon *ngIf=\"icon && !koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"icon && koalaIcon\"></koala-icon>\n\t{{text}}\n</button>\n<ng-template #iconButton>\n <button\n\t [matTooltipDisabled]=\"!tooltip\"\n\t [matTooltip]=\"tooltip ?? ''\"\n [style]=\"style\"\n\t [disabled]=\"disabled\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t matTooltipPosition=\"before\"\n\t type=\"button\">\n <mat-icon *ngIf=\"!koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"koalaIcon\"></koala-icon>\n </button>\n</ng-template>\n", styles: [".koala-button{padding:2px 8px}.koala-button koala-icon{position:relative;display:inline-block;margin-right:8px;top:-1px}.koala-icon-button:disabled,.koala-button:disabled{background:#cccccc!important;color:#616161!important;cursor:not-allowed}.koala-icon-button{height:25px;line-height:25px;width:25px}.koala-icon-button mat-icon{font-size:20px;height:20px;line-height:20px;position:relative;width:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.IconComponent, selector: "koala-icon", inputs: ["color", "icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ButtonComponent, decorators: [{
31
31
  type: Component,
32
32
  args: [{ selector: 'koala-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n\t*ngIf=\"text else iconButton\"\n\t[matTooltipDisabled]=\"!tooltip\"\n\t[matTooltip]=\"tooltip ?? ''\"\n\t[disabled]=\"disabled\"\n [style]=\"style\"\n\tclass=\"koala-button\"\n\tmat-button\n\tmatTooltipPosition=\"above\"\n\ttype=\"button\">\n <mat-icon *ngIf=\"icon && !koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"icon && koalaIcon\"></koala-icon>\n\t{{text}}\n</button>\n<ng-template #iconButton>\n <button\n\t [matTooltipDisabled]=\"!tooltip\"\n\t [matTooltip]=\"tooltip ?? ''\"\n [style]=\"style\"\n\t [disabled]=\"disabled\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t matTooltipPosition=\"before\"\n\t type=\"button\">\n <mat-icon *ngIf=\"!koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"koalaIcon\"></koala-icon>\n </button>\n</ng-template>\n", styles: [".koala-button{padding:2px 8px}.koala-button koala-icon{position:relative;display:inline-block;margin-right:8px;top:-1px}.koala-icon-button:disabled,.koala-button:disabled{background:#cccccc!important;color:#616161!important;cursor:not-allowed}.koala-icon-button{height:25px;line-height:25px;width:25px}.koala-icon-button mat-icon{font-size:20px;height:20px;line-height:20px;position:relative;width:20px}\n"] }]
33
33
  }], propDecorators: { color: [{
@@ -50,18 +50,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
50
50
 
51
51
  class KoalaButtonModule {
52
52
  }
53
- KoalaButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
54
- KoalaButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, declarations: [ButtonComponent], imports: [CommonModule,
53
+ KoalaButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
54
+ KoalaButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, declarations: [ButtonComponent], imports: [CommonModule,
55
55
  MatTooltipModule,
56
56
  MatButtonModule,
57
57
  MatIconModule,
58
58
  KoalaIconModule], exports: [ButtonComponent] });
59
- KoalaButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, imports: [CommonModule,
59
+ KoalaButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, imports: [CommonModule,
60
60
  MatTooltipModule,
61
61
  MatButtonModule,
62
62
  MatIconModule,
63
63
  KoalaIconModule] });
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, decorators: [{
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, decorators: [{
65
65
  type: NgModule,
66
66
  args: [{
67
67
  declarations: [
@@ -25,9 +25,9 @@ class ButtonComponent {
25
25
  return this.icon;
26
26
  }
27
27
  }
28
- ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
- ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: ButtonComponent, selector: "koala-button", inputs: { color: "color", backgroundColor: "backgroundColor", icon: "icon", text: "text", tooltip: "tooltip", disabled: "disabled", koalaIcon: "koalaIcon", koalaIconSize: "koalaIconSize" }, ngImport: i0, template: "<button\n\t*ngIf=\"text else iconButton\"\n\t[matTooltipDisabled]=\"!tooltip\"\n\t[matTooltip]=\"tooltip ?? ''\"\n\t[disabled]=\"disabled\"\n [style]=\"style\"\n\tclass=\"koala-button\"\n\tmat-button\n\tmatTooltipPosition=\"above\"\n\ttype=\"button\">\n <mat-icon *ngIf=\"icon && !koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"icon && koalaIcon\"></koala-icon>\n\t{{text}}\n</button>\n<ng-template #iconButton>\n <button\n\t [matTooltipDisabled]=\"!tooltip\"\n\t [matTooltip]=\"tooltip ?? ''\"\n [style]=\"style\"\n\t [disabled]=\"disabled\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t matTooltipPosition=\"before\"\n\t type=\"button\">\n <mat-icon *ngIf=\"!koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"koalaIcon\"></koala-icon>\n </button>\n</ng-template>\n", styles: [".koala-button{padding:2px 8px}.koala-button koala-icon{position:relative;display:inline-block;margin-right:8px;top:-1px}.koala-icon-button:disabled,.koala-button:disabled{background:#cccccc!important;color:#616161!important;cursor:not-allowed}.koala-icon-button{height:25px;line-height:25px;width:25px}.koala-icon-button mat-icon{font-size:20px;height:20px;line-height:20px;position:relative;width:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.IconComponent, selector: "koala-icon", inputs: ["color", "icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: ButtonComponent, decorators: [{
28
+ ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
+ ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: ButtonComponent, selector: "koala-button", inputs: { color: "color", backgroundColor: "backgroundColor", icon: "icon", text: "text", tooltip: "tooltip", disabled: "disabled", koalaIcon: "koalaIcon", koalaIconSize: "koalaIconSize" }, ngImport: i0, template: "<button\n\t*ngIf=\"text else iconButton\"\n\t[matTooltipDisabled]=\"!tooltip\"\n\t[matTooltip]=\"tooltip ?? ''\"\n\t[disabled]=\"disabled\"\n [style]=\"style\"\n\tclass=\"koala-button\"\n\tmat-button\n\tmatTooltipPosition=\"above\"\n\ttype=\"button\">\n <mat-icon *ngIf=\"icon && !koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"icon && koalaIcon\"></koala-icon>\n\t{{text}}\n</button>\n<ng-template #iconButton>\n <button\n\t [matTooltipDisabled]=\"!tooltip\"\n\t [matTooltip]=\"tooltip ?? ''\"\n [style]=\"style\"\n\t [disabled]=\"disabled\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t matTooltipPosition=\"before\"\n\t type=\"button\">\n <mat-icon *ngIf=\"!koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"koalaIcon\"></koala-icon>\n </button>\n</ng-template>\n", styles: [".koala-button{padding:2px 8px}.koala-button koala-icon{position:relative;display:inline-block;margin-right:8px;top:-1px}.koala-icon-button:disabled,.koala-button:disabled{background:#cccccc!important;color:#616161!important;cursor:not-allowed}.koala-icon-button{height:25px;line-height:25px;width:25px}.koala-icon-button mat-icon{font-size:20px;height:20px;line-height:20px;position:relative;width:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.IconComponent, selector: "koala-icon", inputs: ["color", "icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: ButtonComponent, decorators: [{
31
31
  type: Component,
32
32
  args: [{ selector: 'koala-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n\t*ngIf=\"text else iconButton\"\n\t[matTooltipDisabled]=\"!tooltip\"\n\t[matTooltip]=\"tooltip ?? ''\"\n\t[disabled]=\"disabled\"\n [style]=\"style\"\n\tclass=\"koala-button\"\n\tmat-button\n\tmatTooltipPosition=\"above\"\n\ttype=\"button\">\n <mat-icon *ngIf=\"icon && !koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"icon && koalaIcon\"></koala-icon>\n\t{{text}}\n</button>\n<ng-template #iconButton>\n <button\n\t [matTooltipDisabled]=\"!tooltip\"\n\t [matTooltip]=\"tooltip ?? ''\"\n [style]=\"style\"\n\t [disabled]=\"disabled\"\n\t class=\"koala-icon-button\"\n\t mat-icon-button\n\t matTooltipPosition=\"before\"\n\t type=\"button\">\n <mat-icon *ngIf=\"!koalaIcon\">{{icon}}</mat-icon>\n <koala-icon [color]=\"color\" [icon]=\"getKoalaIcon()\" [size]=\"koalaIconSize\" *ngIf=\"koalaIcon\"></koala-icon>\n </button>\n</ng-template>\n", styles: [".koala-button{padding:2px 8px}.koala-button koala-icon{position:relative;display:inline-block;margin-right:8px;top:-1px}.koala-icon-button:disabled,.koala-button:disabled{background:#cccccc!important;color:#616161!important;cursor:not-allowed}.koala-icon-button{height:25px;line-height:25px;width:25px}.koala-icon-button mat-icon{font-size:20px;height:20px;line-height:20px;position:relative;width:20px}\n"] }]
33
33
  }], propDecorators: { color: [{
@@ -50,18 +50,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImpor
50
50
 
51
51
  class KoalaButtonModule {
52
52
  }
53
- KoalaButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
54
- KoalaButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, declarations: [ButtonComponent], imports: [CommonModule,
53
+ KoalaButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
54
+ KoalaButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, declarations: [ButtonComponent], imports: [CommonModule,
55
55
  MatTooltipModule,
56
56
  MatButtonModule,
57
57
  MatIconModule,
58
58
  KoalaIconModule], exports: [ButtonComponent] });
59
- KoalaButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, imports: [CommonModule,
59
+ KoalaButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, imports: [CommonModule,
60
60
  MatTooltipModule,
61
61
  MatButtonModule,
62
62
  MatIconModule,
63
63
  KoalaIconModule] });
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaButtonModule, decorators: [{
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaButtonModule, decorators: [{
65
65
  type: NgModule,
66
66
  args: [{
67
67
  declarations: [
@@ -27,9 +27,9 @@ export class KoalaCsvService {
27
27
  document.body.removeChild(link);
28
28
  }
29
29
  }
30
- KoalaCsvService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaCsvService, deps: [{ token: i1.Papa }], target: i0.ɵɵFactoryTarget.Injectable });
31
- KoalaCsvService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaCsvService, providedIn: "any" });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaCsvService, decorators: [{
30
+ KoalaCsvService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaCsvService, deps: [{ token: i1.Papa }], target: i0.ɵɵFactoryTarget.Injectable });
31
+ KoalaCsvService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaCsvService, providedIn: "any" });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaCsvService, decorators: [{
33
33
  type: Injectable,
34
34
  args: [{ providedIn: "any" }]
35
35
  }], ctorParameters: function () { return [{ type: i1.Papa }]; } });
@@ -63,11 +63,65 @@ export class KoalaXlsxService {
63
63
  fs.saveAs(blob, config.filename + '.xlsx');
64
64
  });
65
65
  }
66
+ async convertJsonToXlsxWithTabs(tabs, config) {
67
+ const header = [];
68
+ const workbook = new Excel.Workbook();
69
+ tabs.forEach(tab => {
70
+ const title = tab?.titleName ?? config.title;
71
+ Object.keys(tab.json[0]).forEach(name => {
72
+ header.push((config.normalizeHeader === true || config.normalizeHeader === null || config.normalizeHeader === undefined ?
73
+ koala(name).string().normalize().getValue().toUpperCase() :
74
+ name));
75
+ });
76
+ const worksheet = workbook.addWorksheet(tab?.sheetName ?? config.sheetName);
77
+ if (config.title) {
78
+ const titleRow = worksheet.addRow([title]);
79
+ titleRow.alignment = { horizontal: 'center' };
80
+ if (config.titleFontColor) {
81
+ titleRow.font = { bold: true, color: { argb: config.titleFontColor.replace('#', '') } };
82
+ }
83
+ if (config.titleBackgroundColor) {
84
+ titleRow.fill = {
85
+ type: 'pattern',
86
+ pattern: 'solid',
87
+ fgColor: { argb: config.titleBackgroundColor.replace('#', '') },
88
+ bgColor: { argb: config.titleBackgroundColor.replace('#', '') }
89
+ };
90
+ }
91
+ worksheet.mergeCells(`A1:${worksheet.getCell(1, Object.keys(tab.json[0]).length).address}`);
92
+ }
93
+ const headerRow = worksheet.addRow(header);
94
+ headerRow.eachCell((cell, number) => {
95
+ if (config.headerBackgroundColor) {
96
+ cell.fill = {
97
+ type: 'pattern',
98
+ pattern: 'solid',
99
+ fgColor: { argb: config.headerBackgroundColor.replace('#', '') },
100
+ bgColor: { argb: config.headerBackgroundColor.replace('#', '') }
101
+ };
102
+ }
103
+ if (config.headerFontColor) {
104
+ cell.font = {
105
+ color: { argb: config.headerFontColor.replace('#', '') }
106
+ };
107
+ }
108
+ });
109
+ tab.json.forEach(item => {
110
+ const data = [];
111
+ Object.values(item).forEach(value => data.push(value));
112
+ worksheet.addRow(data);
113
+ });
114
+ });
115
+ workbook.xlsx.writeBuffer().then((data) => {
116
+ const blob = new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });
117
+ fs.saveAs(blob, config.filename + '.xlsx');
118
+ });
119
+ }
66
120
  }
67
- KoalaXlsxService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaXlsxService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
68
- KoalaXlsxService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaXlsxService, providedIn: "any" });
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaXlsxService, decorators: [{
121
+ KoalaXlsxService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaXlsxService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
122
+ KoalaXlsxService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaXlsxService, providedIn: "any" });
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: KoalaXlsxService, decorators: [{
70
124
  type: Injectable,
71
125
  args: [{ providedIn: "any" }]
72
126
  }] });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEueGxzeC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvc2VydmljZXMveGxzeC9rb2FsYS54bHN4LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEtBQUssTUFBTSw2QkFBNkIsQ0FBQztBQUVyRCxPQUFPLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVqQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHdkMsTUFBTSxPQUFPLGdCQUFnQjtJQUVwQixLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBVyxFQUFFLE1BQWdDO1FBQzFFLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDM0IsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBRWxCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2xDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FDVixNQUFNLENBQUMsZUFBZSxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMsZUFBZSxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMsZUFBZSxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dCQUM1RyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztnQkFDM0QsSUFBSSxDQUNMLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxRQUFRLEdBQXlCLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzVELE1BQU0sU0FBUyxHQUFHLFFBQVEs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QztRQUN6QixDQUFDLENBQUMsQ0FBQztRQUVILFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDeEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFDLElBQUksRUFBRSxtRUFBbUUsRUFBQyxDQUFDLENBQUM7WUFDM0csRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzZHQXBFVSxnQkFBZ0I7aUhBQWhCLGdCQUFnQixjQURKLEtBQUs7MkZBQ2pCLGdCQUFnQjtrQkFENUIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBFeGNlbCBmcm9tIFwiZXhjZWxqcy9kaXN0L2V4Y2VsanMubWluLmpzXCI7XG5pbXBvcnQgKiBhcyBFeGNlbFByb3BlciBmcm9tIFwiZXhjZWxqc1wiO1xuaW1wb3J0ICogYXMgZnMgZnJvbSAnZmlsZS1zYXZlcic7XG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgS29hbGFYbHN4Q29uZmlnSW50ZXJmYWNlIH0gZnJvbSBcIi4va29hbGEueGxzeC1jb25maWcuaW50ZXJmYWNlXCI7XG5pbXBvcnQgeyBrb2FsYSB9IGZyb20gXCJAa29hbGFyeC91dGlsc1wiO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogXCJhbnlcIn0pXG5leHBvcnQgY2xhc3MgS29hbGFYbHN4U2VydmljZSB7XG5cbiAgcHVibGljIGFzeW5jIGNvbnZlcnRKc29uVG9YbHN4KGpzb246IGFueVtdLCBjb25maWc6IEtvYWxhWGxzeENvbmZpZ0ludGVyZmFjZSkge1xuICAgIGNvbnN0IHRpdGxlID0gY29uZmlnLnRpdGxlO1xuICAgIGNvbnN0IGhlYWRlciA9IFtdO1xuXG4gICAgT2JqZWN0LmtleXMoanNvblswXSkuZm9yRWFjaChuYW1lID0+IHtcbiAgICAgIGhlYWRlci5wdXNoKChcbiAgICAgICAgY29uZmlnLm5vcm1hbGl6ZUhlYWRlciA9PT0gdHJ1ZSB8fCBjb25maWcubm9ybWFsaXplSGVhZGVyID09PSBudWxsIHx8IGNvbmZpZy5ub3JtYWxpemVIZWFkZXIgPT09IHVuZGVmaW5lZCA/XG4gICAgICAgIGtvYWxhKG5hbWUpLnN0cmluZygpLm5vcm1hbGl6ZSgpLmdldFZhbHVlKCkudG9VcHBlckNhc2UoKSA6XG4gICAgICAgIG5hbWVcbiAgICAgICkpO1xuICAgIH0pO1xuXG4gICAgY29uc3Qgd29ya2Jvb2s6IEV4Y2VsUHJvcGVyLldvcmtib29rID0gbmV3IEV4Y2VsLldvcmtib29rKCk7XG4gICAgY29uc3Qgd29ya3NoZWV0ID0gd29ya2Jvb2suYWRkV29ya3NoZWV0KGNvbmZpZy5zaGVldE5hbWUpO1xuICAgIGlmIChjb25maWcucGFzc3dvcmQpIHtcbiAgICAgIGF3YWl0IHdvcmtzaGVldC5wcm90ZWN0KGNvbmZpZy5wYXNzd29yZCwge1xuICAgICAgICBzZWxlY3RMb2NrZWRDZWxsczogZmFsc2UsXG4gICAgICAgIHNlbGVjdFVubG9ja2VkQ2VsbHM6IGZhbHNlLFxuICAgICAgICBzY2VuYXJpb3M6IGZhbHNlXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoY29uZmlnLnRpdGxlKSB7XG4gICAgICBjb25zdCB0aXRsZVJvdyA9IHdvcmtzaGVldC5hZGRSb3coW3RpdGxlXSk7XG4gICAgICB0aXRsZVJvdy5hbGlnbm1lbnQgPSB7aG9yaXpvbnRhbDogJ2NlbnRlcid9O1xuICAgICAgaWYgKGNvbmZpZy50aXRsZUZvbnRDb2xvcikge1xuICAgICAgICB0aXRsZVJvdy5mb250ID0ge2JvbGQ6IHRydWUsIGNvbG9yOiB7YXJnYjogY29uZmlnLnRpdGxlRm9udENvbG9yLnJlcGxhY2UoJyMnLCAnJyl9fTtcbiAgICAgIH1cbiAgICAgIGlmIChjb25maWcudGl0bGVCYWNrZ3JvdW5kQ29sb3IpIHtcbiAgICAgICAgdGl0bGVSb3cuZmlsbCA9IHtcbiAgICAgICAgICB0eXBlOiAncGF0dGVybicsXG4gICAgICAgICAgcGF0dGVybjogJ3NvbGlkJyxcbiAgICAgICAgICBmZ0NvbG9yOiB7YXJnYjogY29uZmlnLnRpdGxlQmFja2dyb3VuZENvbG9yLnJlcGxhY2UoJyMnLCAnJyl9LFxuICAgICAgICAgIGJnQ29sb3I6IHthcmdiOiBjb25maWcudGl0bGVCYWNrZ3JvdW5kQ29sb3IucmVwbGFjZSgnIycsICcnKX1cbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHdvcmtzaGVldC5tZXJnZUNlbGxzKGBBMToke3dvcmtzaGVldC5nZXRDZWxsKDEsIE9iamVjdC5rZXlzKGpzb25bMF0pLmxlbmd0aCkuYWRkcmVzc31gKTtcbiAgICB9XG5cbiAgICBjb25zdCBoZWFkZXJSb3cgPSB3b3Jrc2hlZXQuYWRkUm93KGhlYWRlcik7XG4gICAgaGVhZGVyUm93LmVhY2hDZWxsKChjZWxsLCBudW1iZXIpID0+IHtcbiAgICAgIGlmIChjb25maWcuaGVhZGVyQmFja2dyb3VuZENvbG9yKSB7XG4gICAgICAgIGNlbGwuZmlsbCA9IHtcbiAgICAgICAgICB0eXBlOiAncGF0dGVybicsXG4gICAgICAgICAgcGF0dGVybjogJ3NvbGlkJyxcbiAgICAgICAgICBmZ0NvbG9yOiB7YXJnYjogY29uZmlnLmhlYWRlckJhY2tncm91bmRDb2xvci5yZXBsYWNlKCcjJywgJycpfSxcbiAgICAgICAgICBiZ0NvbG9yOiB7YXJnYjogY29uZmlnLmhlYWRlckJhY2tncm91bmRDb2xvci5yZXBsYWNlKCcjJywgJycpfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgaWYgKGNvbmZpZy5oZWFkZXJGb250Q29sb3IpIHtcbiAgICAgICAgY2VsbC5mb250ID0ge1xuICAgICAgICAgIGNvbG9yOiB7YXJnYjogY29uZmlnLmhlYWRlckZvbnRDb2xvci5yZXBsYWNlKCcjJywgJycpfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAganNvbi5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgY29uc3QgZGF0YSA9IFtdO1xuICAgICAgT2JqZWN0LnZhbHVlcyhpdGVtKS5mb3JFYWNoKHZhbHVlID0+IGRhdGEucHVzaCh2YWx1ZSkpO1xuICAgICAgd29ya3NoZWV0LmFkZFJvdyhkYXRhKTtcbiAgICB9KTtcblxuICAgIHdvcmtib29rLnhsc3gud3JpdGVCdWZmZXIoKS50aGVuKChkYXRhKSA9PiB7XG4gICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW2RhdGFdLCB7dHlwZTogJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0J30pO1xuICAgICAgZnMuc2F2ZUFzKGJsb2IsIGNvbmZpZy5maWxlbmFtZSArICcueGxzeCcpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEueGxzeC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvc2VydmljZXMveGxzeC9rb2FsYS54bHN4LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEtBQUssTUFBTSw2QkFBNkIsQ0FBQztBQUVyRCxPQUFPLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVqQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHdkMsTUFBTSxPQUFPLGdCQUFnQjtJQUVwQixLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBVyxFQUFFLE1BQWdDO1FBQzFFLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDM0IsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBRWxCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2xDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FDVixNQUFNLENBQUMsZUFBZSxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMsZUFBZSxLQUFLLElBQUksSUFBSSxNQUFNLENBQUMsZUFBZSxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dCQUM1RyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztnQkFDM0QsSUFBSSxDQUNMLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxRQUFRLEdBQXlCLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzVELE1BQU0sU0FBUyxHQUFHLFFBQVEs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QUN4QyxNQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUMsSUFBSSxFQUFFLG1FQUFtRSxFQUFDLENBQUMsQ0FBQztZQUMzRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7NkdBdklVLGdCQUFnQjtpSEFBaEIsZ0JBQWdCLGNBREosS0FBSzsyRkFDakIsZ0JBQWdCO2tCQUQ1QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLEtBQUssRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEV4Y2VsIGZyb20gXCJleGNlbGpzL2Rpc3QvZXhjZWxqcy5taW4uanNcIjtcbmltcG9ydCAqIGFzIEV4Y2VsUHJvcGVyIGZyb20gXCJleGNlbGpzXCI7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmaWxlLXNhdmVyJztcblxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBLb2FsYVhsc3hDb25maWdJbnRlcmZhY2UgfSBmcm9tIFwiLi9rb2FsYS54bHN4LWNvbmZpZy5pbnRlcmZhY2VcIjtcbmltcG9ydCB7IGtvYWxhIH0gZnJvbSBcIkBrb2FsYXJ4L3V0aWxzXCI7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiBcImFueVwifSlcbmV4cG9ydCBjbGFzcyBLb2FsYVhsc3hTZXJ2aWNlIHtcblxuICBwdWJsaWMgYXN5bmMgY29udmVydEpzb25Ub1hsc3goanNvbjogYW55W10sIGNvbmZpZzogS29hbGFYbHN4Q29uZmlnSW50ZXJmYWNlKSB7XG4gICAgY29uc3QgdGl0bGUgPSBjb25maWcudGl0bGU7XG4gICAgY29uc3QgaGVhZGVyID0gW107XG5cbiAgICBPYmplY3Qua2V5cyhqc29uWzBdKS5mb3JFYWNoKG5hbWUgPT4ge1xuICAgICAgaGVhZGVyLnB1c2goKFxuICAgICAgICBjb25maWcubm9ybWFsaXplSGVhZGVyID09PSB0cnVlIHx8IGNvbmZpZy5ub3JtYWxpemVIZWFkZXIgPT09IG51bGwgfHwgY29uZmlnLm5vcm1hbGl6ZUhlYWRlciA9PT0gdW5kZWZpbmVkID9cbiAgICAgICAga29hbGEobmFtZSkuc3RyaW5nKCkubm9ybWFsaXplKCkuZ2V0VmFsdWUoKS50b1VwcGVyQ2FzZSgpIDpcbiAgICAgICAgbmFtZVxuICAgICAgKSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCB3b3JrYm9vazogRXhjZWxQcm9wZXIuV29ya2Jvb2sgPSBuZXcgRXhjZWwuV29ya2Jvb2soKTtcbiAgICBjb25zdCB3b3Jrc2hlZXQgPSB3b3JrYm9vay5hZGRXb3Jrc2hlZXQoY29uZmlnLnNoZWV0TmFtZSk7XG4gICAgaWYgKGNvbmZpZy5wYXNzd29yZCkge1xuICAgICAgYXdhaXQgd29ya3NoZWV0LnByb3RlY3QoY29uZmlnLnBhc3N3b3JkLCB7XG4gICAgICAgIHNlbGVjdExvY2tlZENlbGxzOiBmYWxzZSxcbiAgICAgICAgc2VsZWN0VW5sb2NrZWRDZWxsczogZmFsc2UsXG4gICAgICAgIHNjZW5hcmlvczogZmFsc2VcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChjb25maWcudGl0bGUpIHtcbiAgICAgIGNvbnN0IHRpdGxlUm93ID0gd29ya3NoZWV0LmFkZFJvdyhbdGl0bGVdKTtcbiAgICAgIHRpdGxlUm93LmFsaWdubWVudCA9IHtob3Jpem9udGFsOiAnY2VudGVyJ307XG4gICAgICBpZiAoY29uZmlnLnRpdGxlRm9udENvbG9yKSB7XG4gICAgICAgIHRpdGxlUm93LmZvbnQgPSB7Ym9sZDogdHJ1ZSwgY29sb3I6IHthcmdiOiBjb25maWcudGl0bGVGb250Q29sb3IucmVwbGFjZSgnIycsICcnKX19O1xuICAgICAgfVxuICAgICAgaWYgKGNvbmZpZy50aXRsZUJhY2tncm91bmRDb2xvcikge1xuICAgICAgICB0aXRsZVJvdy5maWxsID0ge1xuICAgICAgICAgIHR5cGU6ICdwYXR0ZXJuJyxcbiAgICAgICAgICBwYXR0ZXJuOiAnc29saWQnLFxuICAgICAgICAgIGZnQ29sb3I6IHthcmdiOiBjb25maWcudGl0bGVCYWNrZ3JvdW5kQ29sb3IucmVwbGFjZSgnIycsICcnKX0sXG4gICAgICAgICAgYmdDb2xvcjoge2FyZ2I6IGNvbmZpZy50aXRsZUJhY2tncm91bmRDb2xvci5yZXBsYWNlKCcjJywgJycpfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgd29ya3NoZWV0Lm1lcmdlQ2VsbHMoYEExOiR7d29ya3NoZWV0LmdldENlbGwoMSwgT2JqZWN0LmtleXMoanNvblswXSkubGVuZ3RoKS5hZGRyZXNzfWApO1xuICAgIH1cblxuICAgIGNvbnN0IGhlYWRlclJvdyA9IHdvcmtzaGVldC5hZGRSb3coaGVhZGVyKTtcbiAgICBoZWFkZXJSb3cuZWFjaENlbGwoKGNlbGwsIG51bWJlcikgPT4ge1xuICAgICAgaWYgKGNvbmZpZy5oZWFkZXJCYWNrZ3JvdW5kQ29sb3IpIHtcbiAgICAgICAgY2VsbC5maWxsID0ge1xuICAgICAgICAgIHR5cGU6ICdwYXR0ZXJuJyxcbiAgICAgICAgICBwYXR0ZXJuOiAnc29saWQnLFxuICAgICAgICAgIGZnQ29sb3I6IHthcmdiOiBjb25maWcuaGVhZGVyQmFja2dyb3VuZENvbG9yLnJlcGxhY2UoJyMnLCAnJyl9LFxuICAgICAgICAgIGJnQ29sb3I6IHthcmdiOiBjb25maWcuaGVhZGVyQmFja2dyb3VuZENvbG9yLnJlcGxhY2UoJyMnLCAnJyl9XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICBpZiAoY29uZmlnLmhlYWRlckZvbnRDb2xvcikge1xuICAgICAgICBjZWxsLmZvbnQgPSB7XG4gICAgICAgICAgY29sb3I6IHthcmdiOiBjb25maWcuaGVhZGVyRm9udENvbG9yLnJlcGxhY2UoJyMnLCAnJyl9XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBqc29uLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICBjb25zdCBkYXRhID0gW107XG4gICAgICBPYmplY3QudmFsdWVzKGl0ZW0pLmZvckVhY2godmFsdWUgPT4gZGF0YS5wdXNoKHZhbHVlKSk7XG4gICAgICB3b3Jrc2hlZXQuYWRkUm93KGRhdGEpO1xuICAgIH0pO1xuXG4gICAgd29ya2Jvb2sueGxzeC53cml0ZUJ1ZmZlcigpLnRoZW4oKGRhdGEpID0+IHtcbiAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbZGF0YV0sIHt0eXBlOiAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LnNwcmVhZHNoZWV0bWwuc2hlZXQnfSk7XG4gICAgICBmcy5zYXZlQXMoYmxvYiwgY29uZmlnLmZpbGVuYW1lICsgJy54bHN4Jyk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgY29udmVydEpzb25Ub1hsc3hXaXRoVGFicyh0YWJzOiB7XG4gICAgdGl0bGVOYW1lPzogc3RyaW5nO1xuICAgIHNoZWV0TmFtZT86IHN0cmluZztcbiAgICBqc29uOiBhbnlbXVxuICB9W10sIGNvbmZpZzogS29hbGFYbHN4Q29uZmlnSW50ZXJmYWNlKSB7XG4gICAgY29uc3QgaGVhZGVyID0gW107XG4gICAgY29uc3Qgd29ya2Jvb2s6IEV4Y2VsUHJvcGVyLldvcmtib29rID0gbmV3IEV4Y2VsLldvcmtib29rKCk7XG5cbiAgICB0YWJzLmZvckVhY2godGFiID0+IHtcbiAgICAgIGNvbnN0IHRpdGxlID0gdGFiPy50aXRsZU5hbWUgPz8gY29uZmlnLnRpdGxlO1xuICAgICAgT2JqZWN0LmtleXModGFiLmpzb25bMF0pLmZvckVhY2gobmFtZSA9PiB7XG4gICAgICAgIGhlYWRlci5wdXNoKChcbiAgICAgICAgICBjb25maWcubm9ybWFsaXplSGVhZGVyID09PSB0cnVlIHx8IGNvbmZpZy5ub3JtYWxpemVIZWFkZXIgPT09IG51bGwgfHwgY29uZmlnLm5vcm1hbGl6ZUhlYWRlciA9PT0gdW5kZWZpbmVkID9cbiAgICAgICAgICAgIGtvYWxhKG5hbWUpLnN0cmluZygpLm5vcm1hbGl6ZSgpLmdldFZhbHVlKCkudG9VcHBlckNhc2UoKSA6XG4gICAgICAgICAgICBuYW1lXG4gICAgICAgICkpO1xuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHdvcmtzaGVldCA9IHdvcmtib29rLmFkZFdvcmtzaGVldCh0YWI/LnNoZWV0TmFtZSA/PyBjb25maWcuc2hlZXROYW1lKTtcblxuICAgICAgaWYgKGNvbmZpZy50aXRsZSkge1xuICAgICAgICBjb25zdCB0aXRsZVJvdyA9IHdvcmtzaGVldC5hZGRSb3coW3RpdGxlXSk7XG4gICAgICAgIHRpdGxlUm93LmFsaWdubWVudCA9IHtob3Jpem9udGFsOiAnY2VudGVyJ307XG4gICAgICAgIGlmIChjb25maWcudGl0bGVGb250Q29sb3IpIHtcbiAgICAgICAgICB0aXRsZVJvdy5mb250ID0ge2JvbGQ6IHRydWUsIGNvbG9yOiB7YXJnYjogY29uZmlnLnRpdGxlRm9udENvbG9yLnJlcGxhY2UoJyMnLCAnJyl9fTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29uZmlnLnRpdGxlQmFja2dyb3VuZENvbG9yKSB7XG4gICAgICAgICAgdGl0bGVSb3cuZmlsbCA9IHtcbiAgICAgICAgICAgIHR5cGU6ICdwYXR0ZXJuJyxcbiAgICAgICAgICAgIHBhdHRlcm46ICdzb2xpZCcsXG4gICAgICAgICAgICBmZ0NvbG9yOiB7YXJnYjogY29uZmlnLnRpdGxlQmFja2dyb3VuZENvbG9yLnJlcGxhY2UoJyMnLCAnJyl9LFxuICAgICAgICAgICAgYmdDb2xvcjoge2FyZ2I6IGNvbmZpZy50aXRsZUJhY2tncm91bmRDb2xvci5yZXBsYWNlKCcjJywgJycpfVxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgd29ya3NoZWV0Lm1lcmdlQ2VsbHMoYEExOiR7d29ya3NoZWV0LmdldENlbGwoMSwgT2JqZWN0LmtleXModGFiLmpzb25bMF0pLmxlbmd0aCkuYWRkcmVzc31gKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgaGVhZGVyUm93ID0gd29ya3NoZWV0LmFkZFJvdyhoZWFkZXIpO1xuICAgICAgaGVhZGVyUm93LmVhY2hDZWxsKChjZWxsLCBudW1iZXIpID0+IHtcbiAgICAgICAgaWYgKGNvbmZpZy5oZWFkZXJCYWNrZ3JvdW5kQ29sb3IpIHtcbiAgICAgICAgICBjZWxsLmZpbGwgPSB7XG4gICAgICAgICAgICB0eXBlOiAncGF0dGVybicsXG4gICAgICAgICAgICBwYXR0ZXJuOiAnc29saWQnLFxuICAgICAgICAgICAgZmdDb2xvcjoge2FyZ2I6IGNvbmZpZy5oZWFkZXJCYWNrZ3JvdW5kQ29sb3IucmVwbGFjZSgnIycsICcnKX0sXG4gICAgICAgICAgICBiZ0NvbG9yOiB7YXJnYjogY29uZmlnLmhlYWRlckJhY2tncm91bmRDb2xvci5yZXBsYWNlKCcjJywgJycpfVxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbmZpZy5oZWFkZXJGb250Q29sb3IpIHtcbiAgICAgICAgICBjZWxsLmZvbnQgPSB7XG4gICAgICAgICAgICBjb2xvcjoge2FyZ2I6IGNvbmZpZy5oZWFkZXJGb250Q29sb3IucmVwbGFjZSgnIycsICcnKX1cbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgdGFiLmpzb24uZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgY29uc3QgZGF0YSA9IFtdO1xuICAgICAgICBPYmplY3QudmFsdWVzKGl0ZW0pLmZvckVhY2godmFsdWUgPT4gZGF0YS5wdXNoKHZhbHVlKSk7XG4gICAgICAgIHdvcmtzaGVldC5hZGRSb3coZGF0YSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHdvcmtib29rLnhsc3gud3JpdGVCdWZmZXIoKS50aGVuKChkYXRhKSA9PiB7XG4gICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW2RhdGFdLCB7dHlwZTogJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0J30pO1xuICAgICAgZnMuc2F2ZUFzKGJsb2IsIGNvbmZpZy5maWxlbmFtZSArICcueGxzeCcpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=