@meshmakers/shared-ui 3.1.115-0 → 3.1.116-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/esm2022/lib/breadcrumb/breadcrumb.module.mjs +8 -8
  2. package/esm2022/lib/breadcrumb/mat-breadcrumb/mm-breadcrumb.component.mjs +109 -0
  3. package/esm2022/lib/breadcrumb/services/breadcrumb.service.mjs +3 -3
  4. package/esm2022/lib/confirmation-dialog/confirmation-dialog.module.mjs +7 -7
  5. package/esm2022/lib/confirmation-dialog/confirmation-window/mm-confirmation-window.component.mjs +75 -0
  6. package/esm2022/lib/confirmation-dialog/services/confirmation.service.mjs +9 -9
  7. package/esm2022/lib/mm-shared-ui/mm-autocomplete-input/mm-autocomplete-input.component.mjs +302 -0
  8. package/esm2022/lib/mm-shared-ui/mm-entity-select-input/mm-entity-select-input.component.mjs +293 -0
  9. package/esm2022/lib/mm-shared-ui/mm-message-details/mm-message-details.component.mjs +26 -0
  10. package/esm2022/lib/mm-shared-ui/mm-multiple-entity-select-input/mm-multiple-entity-select-input.component.mjs +316 -0
  11. package/esm2022/lib/mm-shared-ui/mm-notification-bar/mm-notification-bar.component.mjs +40 -0
  12. package/esm2022/lib/mm-shared-ui/mm-shared-ui.module.mjs +74 -0
  13. package/esm2022/lib/progress-notifier/progress-notifier.module.mjs +7 -7
  14. package/esm2022/lib/progress-notifier/progress-window/mm-progress-window.component.mjs +35 -0
  15. package/esm2022/lib/progress-notifier/services/progress-notifier.service.mjs +6 -6
  16. package/esm2022/lib/shared/commonValidators.mjs +1 -1
  17. package/esm2022/public-api.mjs +7 -7
  18. package/fesm2022/meshmakers-shared-ui.mjs +150 -133
  19. package/fesm2022/meshmakers-shared-ui.mjs.map +1 -1
  20. package/lib/breadcrumb/breadcrumb.module.d.ts +2 -2
  21. package/lib/breadcrumb/mat-breadcrumb/{mat-breadcrumb.component.d.ts → mm-breadcrumb.component.d.ts} +3 -3
  22. package/lib/confirmation-dialog/confirmation-dialog.module.d.ts +2 -2
  23. package/lib/confirmation-dialog/confirmation-window/{confirmation-window.component.d.ts → mm-confirmation-window.component.d.ts} +4 -4
  24. package/lib/{ia-shared-ui/ia-autocomplete-input/ia-autocomplete-input.d.ts → mm-shared-ui/mm-autocomplete-input/mm-autocomplete-input.component.d.ts} +10 -10
  25. package/lib/{ia-shared-ui/ia-entity-select-input/ia-entity-select-input.component.d.ts → mm-shared-ui/mm-entity-select-input/mm-entity-select-input.component.d.ts} +3 -3
  26. package/lib/mm-shared-ui/mm-message-details/mm-message-details.component.d.ts +13 -0
  27. package/lib/{ia-shared-ui/ia-multiple-entity-select-input/ia-multiple-entity-select-input.component.d.ts → mm-shared-ui/mm-multiple-entity-select-input/mm-multiple-entity-select-input.component.d.ts} +3 -3
  28. package/lib/{ia-shared-ui/ia-notification-bar/ia-notification-bar.component.d.ts → mm-shared-ui/mm-notification-bar/mm-notification-bar.component.d.ts} +3 -3
  29. package/lib/mm-shared-ui/mm-shared-ui.module.d.ts +22 -0
  30. package/lib/progress-notifier/progress-notifier.module.d.ts +2 -2
  31. package/lib/progress-notifier/progress-window/{progress-window.component.d.ts → mm-progress-window.component.d.ts} +4 -5
  32. package/package.json +1 -1
  33. package/public-api.d.ts +6 -6
  34. package/esm2022/lib/breadcrumb/mat-breadcrumb/mat-breadcrumb.component.mjs +0 -109
  35. package/esm2022/lib/confirmation-dialog/confirmation-window/confirmation-window.component.mjs +0 -75
  36. package/esm2022/lib/ia-shared-ui/ia-autocomplete-input/ia-autocomplete-input.mjs +0 -295
  37. package/esm2022/lib/ia-shared-ui/ia-entity-select-input/ia-entity-select-input.component.mjs +0 -288
  38. package/esm2022/lib/ia-shared-ui/ia-multiple-entity-select-input/ia-multiple-entity-select-input.component.mjs +0 -311
  39. package/esm2022/lib/ia-shared-ui/ia-notification-bar/ia-notification-bar.component.mjs +0 -39
  40. package/esm2022/lib/ia-shared-ui/ia-shared-ui.module.mjs +0 -74
  41. package/esm2022/lib/ia-shared-ui/message-details/message-details.component.mjs +0 -26
  42. package/esm2022/lib/progress-notifier/progress-window/progress-window.component.mjs +0 -35
  43. package/lib/ia-shared-ui/ia-shared-ui.module.d.ts +0 -22
  44. package/lib/ia-shared-ui/message-details/message-details.component.d.ts +0 -13
@@ -1,5 +1,5 @@
1
1
  import * as i0 from "@angular/core";
2
- import * as i1 from "./mat-breadcrumb/mat-breadcrumb.component";
2
+ import * as i1 from "./mat-breadcrumb/mm-breadcrumb.component";
3
3
  import * as i2 from "@angular/router";
4
4
  import * as i3 from "@angular/common";
5
5
  import * as i4 from "@angular/platform-browser/animations";
@@ -7,6 +7,6 @@ import * as i5 from "@angular/material/toolbar";
7
7
  import * as i6 from "@angular/material/list";
8
8
  export declare class BreadcrumbModule {
9
9
  static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbModule, never>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<BreadcrumbModule, [typeof i1.MatBreadcrumbComponent], [typeof i2.RouterModule, typeof i3.CommonModule, typeof i4.BrowserAnimationsModule, typeof i5.MatToolbarModule, typeof i6.MatListModule], [typeof i1.MatBreadcrumbComponent]>;
10
+ static ɵmod: i0.ɵɵNgModuleDeclaration<BreadcrumbModule, [typeof i1.MmBreadcrumbComponent], [typeof i2.RouterModule, typeof i3.CommonModule, typeof i4.BrowserAnimationsModule, typeof i5.MatToolbarModule, typeof i6.MatListModule], [typeof i1.MmBreadcrumbComponent]>;
11
11
  static ɵinj: i0.ɵɵInjectorDeclaration<BreadcrumbModule>;
12
12
  }
@@ -3,7 +3,7 @@ import { Breadcrumb } from '../model/breadcrumb';
3
3
  import { ActivatedRoute, Router } from '@angular/router';
4
4
  import { BreadcrumbService } from '../services/breadcrumb.service';
5
5
  import * as i0 from "@angular/core";
6
- export declare class MatBreadcrumbComponent implements OnInit {
6
+ export declare class MmBreadcrumbComponent implements OnInit {
7
7
  private readonly activatedRoute;
8
8
  private readonly router;
9
9
  private readonly breadcrumbService;
@@ -16,6 +16,6 @@ export declare class MatBreadcrumbComponent implements OnInit {
16
16
  ngOnInit(): void;
17
17
  breadCrumbData(): void;
18
18
  private updateData;
19
- static ɵfac: i0.ɵɵFactoryDeclaration<MatBreadcrumbComponent, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<MatBreadcrumbComponent, "ia-mat-breadcrumb", never, { "fontSize": { "alias": "fontSize"; "required": false; }; "fontColor": { "alias": "fontColor"; "required": false; }; "lastLinkColor": { "alias": "lastLinkColor"; "required": false; }; "symbol": { "alias": "symbol"; "required": false; }; }, {}, never, never, false, never>;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<MmBreadcrumbComponent, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<MmBreadcrumbComponent, "mm-breadcrumb", never, { "fontSize": { "alias": "fontSize"; "required": false; }; "fontColor": { "alias": "fontColor"; "required": false; }; "lastLinkColor": { "alias": "lastLinkColor"; "required": false; }; "symbol": { "alias": "symbol"; "required": false; }; }, {}, never, never, false, never>;
21
21
  }
@@ -1,12 +1,12 @@
1
1
  import { ModuleWithProviders } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "./confirmation-window/confirmation-window.component";
3
+ import * as i1 from "./confirmation-window/mm-confirmation-window.component";
4
4
  import * as i2 from "@angular/common";
5
5
  import * as i3 from "@angular/material/dialog";
6
6
  import * as i4 from "@angular/material/button";
7
7
  export declare class ConfirmationDialogModule {
8
8
  static forRoot(): ModuleWithProviders<ConfirmationDialogModule>;
9
9
  static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationDialogModule, never>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<ConfirmationDialogModule, [typeof i1.ConfirmationWindowComponent], [typeof i2.CommonModule, typeof i3.MatDialogModule, typeof i4.MatButtonModule], never>;
10
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ConfirmationDialogModule, [typeof i1.MmConfirmationWindowComponent], [typeof i2.CommonModule, typeof i3.MatDialogModule, typeof i4.MatButtonModule], never>;
11
11
  static ɵinj: i0.ɵɵInjectorDeclaration<ConfirmationDialogModule>;
12
12
  }
@@ -2,7 +2,7 @@ import { OnInit } from '@angular/core';
2
2
  import { MatDialogRef } from '@angular/material/dialog';
3
3
  import { ButtonTypes, ConfirmationWindowData } from '../shared/confirmation';
4
4
  import * as i0 from "@angular/core";
5
- export declare class ConfirmationWindowComponent implements OnInit {
5
+ export declare class MmConfirmationWindowComponent implements OnInit {
6
6
  private readonly dialogRef;
7
7
  data: ConfirmationWindowData;
8
8
  button1Text: string;
@@ -11,11 +11,11 @@ export declare class ConfirmationWindowComponent implements OnInit {
11
11
  button2Result: ButtonTypes | null;
12
12
  button3Text: string | null;
13
13
  button3Result: ButtonTypes | null;
14
- constructor(dialogRef: MatDialogRef<ConfirmationWindowComponent>, data: ConfirmationWindowData);
14
+ constructor(dialogRef: MatDialogRef<MmConfirmationWindowComponent>, data: ConfirmationWindowData);
15
15
  ngOnInit(): void;
16
16
  onButton1(): void;
17
17
  onButton2(): void;
18
18
  onButton3(): void;
19
- static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationWindowComponent, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<ConfirmationWindowComponent, "lib-shared-ui-confirmation-window", never, {}, {}, never, never, false, never>;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<MmConfirmationWindowComponent, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<MmConfirmationWindowComponent, "mm-confirmation-window", never, {}, {}, never, never, false, never>;
21
21
  }
@@ -1,12 +1,12 @@
1
- import { DoCheck, ElementRef, EventEmitter, Injector, OnDestroy, OnInit } from '@angular/core';
2
- import { MatFormFieldControl } from '@angular/material/form-field';
3
- import { AbstractControl, ControlValueAccessor, FormControl, NgControl, ValidationErrors, Validator } from '@angular/forms';
4
- import { MatAutocompleteActivatedEvent, MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';
5
- import { Subject } from 'rxjs';
6
- import { FocusMonitor } from '@angular/cdk/a11y';
7
- import { AutoCompleteDataSource } from '@meshmakers/shared-services';
1
+ import { DoCheck, ElementRef, EventEmitter, Injector, OnDestroy, OnInit } from "@angular/core";
2
+ import { MatFormFieldControl } from "@angular/material/form-field";
3
+ import { AbstractControl, ControlValueAccessor, FormControl, NgControl, ValidationErrors, Validator } from "@angular/forms";
4
+ import { MatAutocompleteActivatedEvent, MatAutocompleteSelectedEvent } from "@angular/material/autocomplete";
5
+ import { Subject } from "rxjs";
6
+ import { FocusMonitor } from "@angular/cdk/a11y";
7
+ import { AutoCompleteDataSource } from "@meshmakers/shared-services";
8
8
  import * as i0 from "@angular/core";
9
- export declare class IaAutocompleteInput implements OnInit, OnDestroy, DoCheck, ControlValueAccessor, MatFormFieldControl<any>, Validator {
9
+ export declare class MmAutocompleteInputComponent implements OnInit, OnDestroy, DoCheck, ControlValueAccessor, MatFormFieldControl<any>, Validator {
10
10
  elRef: ElementRef<HTMLElement>;
11
11
  private readonly injector;
12
12
  private readonly fm;
@@ -64,6 +64,6 @@ export declare class IaAutocompleteInput implements OnInit, OnDestroy, DoCheck,
64
64
  validate(control: AbstractControl): ValidationErrors | null;
65
65
  private _propagateChange;
66
66
  private readonly _onTouched;
67
- static ɵfac: i0.ɵɵFactoryDeclaration<IaAutocompleteInput, never>;
68
- static ɵcmp: i0.ɵɵComponentDeclaration<IaAutocompleteInput, "ia-autocomplete", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "prefix": { "alias": "prefix"; "required": false; }; }, {}, never, never, false, never>;
67
+ static ɵfac: i0.ɵɵFactoryDeclaration<MmAutocompleteInputComponent, never>;
68
+ static ɵcmp: i0.ɵɵComponentDeclaration<MmAutocompleteInputComponent, "mm-autocomplete", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "prefix": { "alias": "prefix"; "required": false; }; }, {}, never, never, false, never>;
69
69
  }
@@ -6,7 +6,7 @@ import { Subject } from 'rxjs';
6
6
  import { FocusMonitor } from '@angular/cdk/a11y';
7
7
  import { MatAutocompleteActivatedEvent, MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';
8
8
  import * as i0 from "@angular/core";
9
- export declare class IaEntitySelectInput implements OnInit, OnDestroy, DoCheck, ControlValueAccessor, MatFormFieldControl<any>, Validator {
9
+ export declare class MmEntitySelectInputComponent implements OnInit, OnDestroy, DoCheck, ControlValueAccessor, MatFormFieldControl<any>, Validator {
10
10
  elRef: ElementRef<HTMLElement>;
11
11
  private readonly injector;
12
12
  private readonly fm;
@@ -65,6 +65,6 @@ export declare class IaEntitySelectInput implements OnInit, OnDestroy, DoCheck,
65
65
  private _propagateChange;
66
66
  private readonly _onTouched;
67
67
  private setValue;
68
- static ɵfac: i0.ɵɵFactoryDeclaration<IaEntitySelectInput, never>;
69
- static ɵcmp: i0.ɵɵComponentDeclaration<IaEntitySelectInput, "ia-entity-select", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "prefix": { "alias": "prefix"; "required": false; }; }, {}, never, never, false, never>;
68
+ static ɵfac: i0.ɵɵFactoryDeclaration<MmEntitySelectInputComponent, never>;
69
+ static ɵcmp: i0.ɵɵComponentDeclaration<MmEntitySelectInputComponent, "mm-entity-select", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "prefix": { "alias": "prefix"; "required": false; }; }, {}, never, never, false, never>;
70
70
  }
@@ -0,0 +1,13 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { MatDialogRef } from '@angular/material/dialog';
3
+ import { ErrorMessage } from '@meshmakers/shared-services';
4
+ import * as i0 from "@angular/core";
5
+ export declare class MmMessageDetailsComponent implements OnInit {
6
+ dialogRef: MatDialogRef<MmMessageDetailsComponent>;
7
+ data: any;
8
+ errorMessage: ErrorMessage;
9
+ constructor(dialogRef: MatDialogRef<MmMessageDetailsComponent>, data: any);
10
+ ngOnInit(): void;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<MmMessageDetailsComponent, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<MmMessageDetailsComponent, "mm-message-details", never, {}, {}, never, never, false, never>;
13
+ }
@@ -6,7 +6,7 @@ import { FocusMonitor } from '@angular/cdk/a11y';
6
6
  import { MatAutocompleteActivatedEvent, MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';
7
7
  import { MatFormFieldControl } from '@angular/material/form-field';
8
8
  import * as i0 from "@angular/core";
9
- export declare class IaMultipleEntitySelectInput implements OnInit, OnDestroy, DoCheck, ControlValueAccessor, MatFormFieldControl<any[]>, Validator {
9
+ export declare class MmMultipleEntitySelectInputComponent implements OnInit, OnDestroy, DoCheck, ControlValueAccessor, MatFormFieldControl<any[]>, Validator {
10
10
  elRef: ElementRef<HTMLElement>;
11
11
  private readonly injector;
12
12
  private readonly fm;
@@ -68,6 +68,6 @@ export declare class IaMultipleEntitySelectInput implements OnInit, OnDestroy, D
68
68
  private _propagateChange;
69
69
  private readonly _onTouched;
70
70
  private setValue;
71
- static ɵfac: i0.ɵɵFactoryDeclaration<IaMultipleEntitySelectInput, never>;
72
- static ɵcmp: i0.ɵɵComponentDeclaration<IaMultipleEntitySelectInput, "ia-multiple-entity-select", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "prefix": { "alias": "prefix"; "required": false; }; }, {}, never, never, false, never>;
71
+ static ɵfac: i0.ɵɵFactoryDeclaration<MmMultipleEntitySelectInputComponent, never>;
72
+ static ɵcmp: i0.ɵɵComponentDeclaration<MmMultipleEntitySelectInputComponent, "mm-multiple-entity-select", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "prefix": { "alias": "prefix"; "required": false; }; }, {}, never, never, false, never>;
73
73
  }
@@ -2,7 +2,7 @@ import { OnInit } from '@angular/core';
2
2
  import { ErrorMessage, MessageService } from '@meshmakers/shared-services';
3
3
  import { MatDialog } from '@angular/material/dialog';
4
4
  import * as i0 from "@angular/core";
5
- export declare class IaNotificationBarComponent implements OnInit {
5
+ export declare class MmNotificationBarComponent implements OnInit {
6
6
  private readonly messageService;
7
7
  private readonly dialog;
8
8
  errorMessage: ErrorMessage | null;
@@ -10,6 +10,6 @@ export declare class IaNotificationBarComponent implements OnInit {
10
10
  ngOnInit(): void;
11
11
  onHide(): void;
12
12
  onShowDetails(): void;
13
- static ɵfac: i0.ɵɵFactoryDeclaration<IaNotificationBarComponent, never>;
14
- static ɵcmp: i0.ɵɵComponentDeclaration<IaNotificationBarComponent, "ia-notification-bar", never, {}, {}, never, never, false, never>;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<MmNotificationBarComponent, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<MmNotificationBarComponent, "mm-notification-bar", never, {}, {}, never, never, false, never>;
15
15
  }
@@ -0,0 +1,22 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./mm-notification-bar/mm-notification-bar.component";
3
+ import * as i2 from "./mm-message-details/mm-message-details.component";
4
+ import * as i3 from "./mm-autocomplete-input/mm-autocomplete-input.component";
5
+ import * as i4 from "./mm-entity-select-input/mm-entity-select-input.component";
6
+ import * as i5 from "./mm-multiple-entity-select-input/mm-multiple-entity-select-input.component";
7
+ import * as i6 from "@angular/common";
8
+ import * as i7 from "@angular/material/toolbar";
9
+ import * as i8 from "@angular/material/button";
10
+ import * as i9 from "@angular/material/snack-bar";
11
+ import * as i10 from "@angular/material/dialog";
12
+ import * as i11 from "@angular/material/autocomplete";
13
+ import * as i12 from "@angular/material/input";
14
+ import * as i13 from "@angular/material/progress-spinner";
15
+ import * as i14 from "@angular/material/chips";
16
+ import * as i15 from "@angular/material/icon";
17
+ import * as i16 from "@angular/forms";
18
+ export declare class MmSharedUiModule {
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<MmSharedUiModule, never>;
20
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MmSharedUiModule, [typeof i1.MmNotificationBarComponent, typeof i2.MmMessageDetailsComponent, typeof i3.MmAutocompleteInputComponent, typeof i4.MmEntitySelectInputComponent, typeof i5.MmMultipleEntitySelectInputComponent], [typeof i6.CommonModule, typeof i7.MatToolbarModule, typeof i8.MatButtonModule, typeof i9.MatSnackBarModule, typeof i10.MatDialogModule, typeof i11.MatAutocompleteModule, typeof i12.MatInputModule, typeof i13.MatProgressSpinnerModule, typeof i14.MatChipsModule, typeof i15.MatIconModule, typeof i16.ReactiveFormsModule], [typeof i1.MmNotificationBarComponent, typeof i3.MmAutocompleteInputComponent, typeof i4.MmEntitySelectInputComponent, typeof i5.MmMultipleEntitySelectInputComponent]>;
21
+ static ɵinj: i0.ɵɵInjectorDeclaration<MmSharedUiModule>;
22
+ }
@@ -1,6 +1,6 @@
1
1
  import { ModuleWithProviders } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "./progress-window/progress-window.component";
3
+ import * as i1 from "./progress-window/mm-progress-window.component";
4
4
  import * as i2 from "@angular/common";
5
5
  import * as i3 from "@angular/material/dialog";
6
6
  import * as i4 from "@angular/material/button";
@@ -8,6 +8,6 @@ import * as i5 from "@angular/material/progress-bar";
8
8
  export declare class ProgressNotifierModule {
9
9
  static forRoot(): ModuleWithProviders<ProgressNotifierModule>;
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<ProgressNotifierModule, never>;
11
- static ɵmod: i0.ɵɵNgModuleDeclaration<ProgressNotifierModule, [typeof i1.ProgressWindowComponent], [typeof i2.CommonModule, typeof i3.MatDialogModule, typeof i4.MatButtonModule, typeof i5.MatProgressBarModule], never>;
11
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ProgressNotifierModule, [typeof i1.MmProgressWindowComponent], [typeof i2.CommonModule, typeof i3.MatDialogModule, typeof i4.MatButtonModule, typeof i5.MatProgressBarModule], never>;
12
12
  static ɵinj: i0.ɵɵInjectorDeclaration<ProgressNotifierModule>;
13
13
  }
@@ -9,15 +9,14 @@ export interface ProgressWindowData {
9
9
  isCancelOperationAvailable: boolean;
10
10
  cancelOperation: () => void;
11
11
  }
12
- export interface ProgressWindowResult {
13
- }
14
- export declare class ProgressWindowComponent implements OnInit {
12
+ export type ProgressWindowResult = object;
13
+ export declare class MmProgressWindowComponent implements OnInit {
15
14
  data: ProgressWindowData;
16
15
  statusText: string | null;
17
16
  progressValue: number;
18
17
  constructor(data: ProgressWindowData);
19
18
  ngOnInit(): void;
20
19
  onCancelClick(): void;
21
- static ɵfac: i0.ɵɵFactoryDeclaration<ProgressWindowComponent, never>;
22
- static ɵcmp: i0.ɵɵComponentDeclaration<ProgressWindowComponent, "lib-progress-window", never, {}, {}, never, never, false, never>;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<MmProgressWindowComponent, never>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<MmProgressWindowComponent, "mm-progress-window", never, {}, {}, never, never, false, never>;
23
22
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meshmakers/shared-ui",
3
- "version": "3.1.115-0",
3
+ "version": "3.1.116-0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^18.0.3",
6
6
  "@angular/core": "^18.0.3"
package/public-api.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- export * from './lib/ia-shared-ui/ia-shared-ui.module';
2
- export * from './lib/ia-shared-ui/ia-notification-bar/ia-notification-bar.component';
3
- export * from './lib/ia-shared-ui/ia-autocomplete-input/ia-autocomplete-input';
4
- export * from './lib/ia-shared-ui/ia-entity-select-input/ia-entity-select-input.component';
5
- export * from './lib/ia-shared-ui/ia-multiple-entity-select-input/ia-multiple-entity-select-input.component';
1
+ export * from './lib/mm-shared-ui/mm-shared-ui.module';
2
+ export * from './lib/mm-shared-ui/mm-notification-bar/mm-notification-bar.component';
3
+ export * from './lib/mm-shared-ui/mm-autocomplete-input/mm-autocomplete-input.component';
4
+ export * from './lib/mm-shared-ui/mm-entity-select-input/mm-entity-select-input.component';
5
+ export * from './lib/mm-shared-ui/mm-multiple-entity-select-input/mm-multiple-entity-select-input.component';
6
6
  export * from './lib/progress-notifier/progress-notifier.module';
7
7
  export * from './lib/progress-notifier/services/progress-notifier.service';
8
8
  export * from './lib/confirmation-dialog/confirmation-dialog.module';
@@ -11,5 +11,5 @@ export * from './lib/confirmation-dialog/shared/confirmation';
11
11
  export * from './lib/shared/commonValidators';
12
12
  export * from './lib/shared/abstractDetailsComponent';
13
13
  export * from './lib/breadcrumb/breadcrumb.module';
14
- export * from './lib/breadcrumb/mat-breadcrumb/mat-breadcrumb.component';
14
+ export * from './lib/breadcrumb/mat-breadcrumb/mm-breadcrumb.component';
15
15
  export * from './lib/breadcrumb/services/breadcrumb.service';
@@ -1,109 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { NavigationEnd, PRIMARY_OUTLET } from '@angular/router';
3
- import { filter, map } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/router";
6
- import * as i2 from "../services/breadcrumb.service";
7
- import * as i3 from "@angular/common";
8
- import * as i4 from "@angular/material/list";
9
- export class MatBreadcrumbComponent {
10
- activatedRoute;
11
- router;
12
- breadcrumbService;
13
- breadcrumb = [];
14
- fontSize = '18px';
15
- fontColor = '#0275d8';
16
- lastLinkColor = '#000';
17
- symbol = ' / ';
18
- constructor(activatedRoute, router, breadcrumbService) {
19
- this.activatedRoute = activatedRoute;
20
- this.router = router;
21
- this.breadcrumbService = breadcrumbService;
22
- this.breadCrumbData();
23
- }
24
- ngOnInit() {
25
- this.breadcrumbService.breadcrumbLabels.subscribe((labelData) => {
26
- Object.entries(labelData).forEach(([key, value]) => {
27
- this.breadcrumb.forEach((crumb) => {
28
- const labelParams = crumb.label.match(/[^{{]+(?=}})/g);
29
- if (labelParams) {
30
- for (const labelParam of labelParams) {
31
- if (labelParam === key) {
32
- crumb.label = crumb.label.replace('{{' + labelParam + '}}', value);
33
- }
34
- }
35
- }
36
- });
37
- });
38
- });
39
- this.breadcrumbService.newBreadcrumb.subscribe((breadcrumb) => {
40
- if (breadcrumb.length > 0) {
41
- this.updateData(this.activatedRoute, breadcrumb);
42
- }
43
- });
44
- }
45
- breadCrumbData() {
46
- this.router.events
47
- .pipe(filter((event) => event instanceof NavigationEnd))
48
- .pipe(map(() => this.activatedRoute))
49
- .pipe(map((route) => {
50
- while (route.firstChild) {
51
- route = route.firstChild;
52
- }
53
- return route;
54
- }))
55
- .pipe(filter((route) => route.outlet === PRIMARY_OUTLET))
56
- .subscribe((route) => {
57
- this.updateData(route, null);
58
- });
59
- }
60
- updateData(route, newBreadcrumb) {
61
- if (route.snapshot.data['breadcrumb'] || newBreadcrumb) {
62
- const data = route.snapshot.data['breadcrumb'] ? route.snapshot.data['breadcrumb'] : newBreadcrumb;
63
- const breadcrumb = JSON.parse(JSON.stringify(data));
64
- breadcrumb.forEach((crumb) => {
65
- if (crumb.url) {
66
- const urlChunks = crumb.url.split('/');
67
- for (const chunk of urlChunks) {
68
- if (chunk.includes(':')) {
69
- const paramID = chunk.replace(':', '');
70
- const routerParamID = route.snapshot.params[paramID];
71
- crumb.url = crumb.url.replace(`:${paramID}`, routerParamID);
72
- }
73
- }
74
- }
75
- const labelParams = crumb.label.match(/[^{{]+(?=}})/g);
76
- if (labelParams) {
77
- for (const labelParam of labelParams) {
78
- const routerParamID = decodeURIComponent(route.snapshot.params[labelParam.trim()]);
79
- if (routerParamID) {
80
- crumb.label = crumb.label.replace('{{' + labelParam + '}}', routerParamID);
81
- }
82
- else {
83
- // crumb.label = crumb.label.replace('{{' + labelParam + '}}', '');
84
- }
85
- }
86
- }
87
- });
88
- this.breadcrumb = breadcrumb;
89
- }
90
- else {
91
- this.breadcrumb = [];
92
- }
93
- }
94
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: MatBreadcrumbComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }, { token: i2.BreadcrumbService }], target: i0.ɵɵFactoryTarget.Component });
95
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.3", type: MatBreadcrumbComponent, selector: "ia-mat-breadcrumb", inputs: { fontSize: "fontSize", fontColor: "fontColor", lastLinkColor: "lastLinkColor", symbol: "symbol" }, ngImport: i0, template: "<mat-list class=\"mat-bread-crumb-list\" *ngIf=\"breadcrumb.length\">\n <mat-list-item>\n <span class=\"mat-bread-crumb-spacer\">\n <span *ngFor=\"let item of breadcrumb; let i = index\">\n <a *ngIf=\"item?.url\" [routerLink]=\"item?.url\"\n class=\"mat-bread-crumb-list-item\">{{ item.label }}</a>\n <span *ngIf=\"!item?.url\" class=\"mat-bread-crumb-list-item\">{{ item.label }}</span>\n <span *ngIf=\"breadcrumb.length !== i+1\" class=\"mat-bread-crumb-list-item\">{{symbol}}</span>\n </span>\n </span>\n </mat-list-item>\n</mat-list>\n", styles: [".mat-bread-crumb{height:30px}.mat-bread-crumb-list{padding-bottom:10px}\n"], dependencies: [{ kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i4.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }] });
96
- }
97
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: MatBreadcrumbComponent, decorators: [{
98
- type: Component,
99
- args: [{ selector: 'ia-mat-breadcrumb', template: "<mat-list class=\"mat-bread-crumb-list\" *ngIf=\"breadcrumb.length\">\n <mat-list-item>\n <span class=\"mat-bread-crumb-spacer\">\n <span *ngFor=\"let item of breadcrumb; let i = index\">\n <a *ngIf=\"item?.url\" [routerLink]=\"item?.url\"\n class=\"mat-bread-crumb-list-item\">{{ item.label }}</a>\n <span *ngIf=\"!item?.url\" class=\"mat-bread-crumb-list-item\">{{ item.label }}</span>\n <span *ngIf=\"breadcrumb.length !== i+1\" class=\"mat-bread-crumb-list-item\">{{symbol}}</span>\n </span>\n </span>\n </mat-list-item>\n</mat-list>\n", styles: [".mat-bread-crumb{height:30px}.mat-bread-crumb-list{padding-bottom:10px}\n"] }]
100
- }], ctorParameters: () => [{ type: i1.ActivatedRoute }, { type: i1.Router }, { type: i2.BreadcrumbService }], propDecorators: { fontSize: [{
101
- type: Input
102
- }], fontColor: [{
103
- type: Input
104
- }], lastLinkColor: [{
105
- type: Input
106
- }], symbol: [{
107
- type: Input
108
- }] } });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LWJyZWFkY3J1bWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVzaG1ha2Vycy9zaGFyZWQtdWkvc3JjL2xpYi9icmVhZGNydW1iL21hdC1icmVhZGNydW1iL21hdC1icmVhZGNydW1iLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lc2htYWtlcnMvc2hhcmVkLXVpL3NyYy9saWIvYnJlYWRjcnVtYi9tYXQtYnJlYWRjcnVtYi9tYXQtYnJlYWRjcnVtYi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQWtCLGFBQWEsRUFBRSxjQUFjLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUV4RixPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFPN0MsTUFBTSxPQUFPLHNCQUFzQjtJQVFkO0lBQ0E7SUFDQTtJQVRULFVBQVUsR0FBaUIsRUFBRSxDQUFDO0lBQy9CLFFBQVEsR0FBRyxNQUFNLENBQUM7SUFDbEIsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUN0QixhQUFhLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFFeEIsWUFDbUIsY0FBOEIsRUFDOUIsTUFBYyxFQUNkLGlCQUFvQztRQUZwQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFFckQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQWlC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LHNCQUFzQjsyRkFBdEIsc0JBQXNCLHFLQ1huQyxrbkJBWUE7OzJGRERhLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxtQkFBbUI7d0lBTXBCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYiB9IGZyb20gJy4uL21vZGVsL2JyZWFkY3J1bWInO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIE5hdmlnYXRpb25FbmQsIFBSSU1BUllfT1VUTEVULCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQnJlYWRjcnVtYlNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9icmVhZGNydW1iLnNlcnZpY2UnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lhLW1hdC1icmVhZGNydW1iJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hdC1icmVhZGNydW1iLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL21hdC1icmVhZGNydW1iLmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIE1hdEJyZWFkY3J1bWJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwcm90ZWN0ZWQgYnJlYWRjcnVtYjogQnJlYWRjcnVtYltdID0gW107XG4gIEBJbnB1dCgpIGZvbnRTaXplID0gJzE4cHgnO1xuICBASW5wdXQoKSBmb250Q29sb3IgPSAnIzAyNzVkOCc7XG4gIEBJbnB1dCgpIGxhc3RMaW5rQ29sb3IgPSAnIzAwMCc7XG4gIEBJbnB1dCgpIHN5bWJvbCA9ICcgLyAnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSBicmVhZGNydW1iU2VydmljZTogQnJlYWRjcnVtYlNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5icmVhZENydW1iRGF0YSgpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5icmVhZGNydW1iU2VydmljZS5icmVhZGNydW1iTGFiZWxzLnN1YnNjcmliZSgobGFiZWxEYXRhOiBvYmplY3QpID0+IHtcbiAgICAgIE9iamVjdC5lbnRyaWVzKGxhYmVsRGF0YSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIHRoaXMuYnJlYWRjcnVtYi5mb3JFYWNoKChjcnVtYjogQnJlYWRjcnVtYikgPT4ge1xuICAgICAgICAgIGNvbnN0IGxhYmVsUGFyYW1zID0gY3J1bWIubGFiZWwubWF0Y2goL1tee3tdKyg/PX19KS9nKTtcbiAgICAgICAgICBpZiAobGFiZWxQYXJhbXMpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgbGFiZWxQYXJhbSBvZiBsYWJlbFBhcmFtcykge1xuICAgICAgICAgICAgICBpZiAobGFiZWxQYXJhbSA9PT0ga2V5KSB7XG4gICAgICAgICAgICAgICAgY3J1bWIubGFiZWwgPSBjcnVtYi5sYWJlbC5yZXBsYWNlKCd7eycgKyBsYWJlbFBhcmFtICsgJ319JywgPHN0cmluZz52YWx1ZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmJyZWFkY3J1bWJTZXJ2aWNlLm5ld0JyZWFkY3J1bWIuc3Vic2NyaWJlKChicmVhZGNydW1iOiBCcmVhZGNydW1iW10pID0+IHtcbiAgICAgIGlmIChicmVhZGNydW1iLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy51cGRhdGVEYXRhKHRoaXMuYWN0aXZhdGVkUm91dGUsIGJyZWFkY3J1bWIpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgYnJlYWRDcnVtYkRhdGEoKTogdm9pZCB7XG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzXG4gICAgICAucGlwZShmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpKVxuICAgICAgLnBpcGUobWFwKCgpID0+IHRoaXMuYWN0aXZhdGVkUm91dGUpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocm91dGUpID0+IHtcbiAgICAgICAgICB3aGlsZSAocm91dGUuZmlyc3RDaGlsZCkge1xuICAgICAgICAgICAgcm91dGUgPSByb3V0ZS5maXJzdENoaWxkO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcm91dGU7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAucGlwZShmaWx0ZXIoKHJvdXRlKSA9PiByb3V0ZS5vdXRsZXQgPT09IFBSSU1BUllfT1VUTEVUKSlcbiAgICAgIC5zdWJzY3JpYmUoKHJvdXRlKSA9PiB7XG4gICAgICAgIHRoaXMudXBkYXRlRGF0YShyb3V0ZSwgbnVsbCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRGF0YShyb3V0ZTogQWN0aXZhdGVkUm91dGUsIG5ld0JyZWFkY3J1bWI6IEJyZWFkY3J1bWJbXSB8IG51bGwpOiB2b2lkIHtcbiAgICBpZiAocm91dGUuc25hcHNob3QuZGF0YVsnYnJlYWRjcnVtYiddIHx8IG5ld0JyZWFkY3J1bWIpIHtcbiAgICAgIGNvbnN0IGRhdGEgPSByb3V0ZS5zbmFwc2hvdC5kYXRhWydicmVhZGNydW1iJ10gPyByb3V0ZS5zbmFwc2hvdC5kYXRhWydicmVhZGNydW1iJ10gOiBuZXdCcmVhZGNydW1iO1xuICAgICAgY29uc3QgYnJlYWRjcnVtYiA9IDxCcmVhZGNydW1iW10+SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShkYXRhKSk7XG4gICAgICBicmVhZGNydW1iLmZvckVhY2goKGNydW1iKSA9PiB7XG4gICAgICAgIGlmIChjcnVtYi51cmwpIHtcbiAgICAgICAgICBjb25zdCB1cmxDaHVua3MgPSBjcnVtYi51cmwuc3BsaXQoJy8nKTtcbiAgICAgICAgICBmb3IgKGNvbnN0IGNodW5rIG9mIHVybENodW5rcykge1xuICAgICAgICAgICAgaWYgKGNodW5rLmluY2x1ZGVzKCc6JykpIHtcbiAgICAgICAgICAgICAgY29uc3QgcGFyYW1JRCA9IGNodW5rLnJlcGxhY2UoJzonLCAnJyk7XG4gICAgICAgICAgICAgIGNvbnN0IHJvdXRlclBhcmFtSUQgPSA8c3RyaW5nPnJvdXRlLnNuYXBzaG90LnBhcmFtc1twYXJhbUlEXTtcbiAgICAgICAgICAgICAgY3J1bWIudXJsID0gY3J1bWIudXJsLnJlcGxhY2UoYDoke3BhcmFtSUR9YCwgcm91dGVyUGFyYW1JRCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbGFiZWxQYXJhbXMgPSBjcnVtYi5sYWJlbC5tYXRjaCgvW157e10rKD89fX0pL2cpO1xuICAgICAgICBpZiAobGFiZWxQYXJhbXMpIHtcbiAgICAgICAgICBmb3IgKGNvbnN0IGxhYmVsUGFyYW0gb2YgbGFiZWxQYXJhbXMpIHtcbiAgICAgICAgICAgIGNvbnN0IHJvdXRlclBhcmFtSUQgPSBkZWNvZGVVUklDb21wb25lbnQoPHN0cmluZz5yb3V0ZS5zbmFwc2hvdC5wYXJhbXNbbGFiZWxQYXJhbS50cmltKCldKTtcbiAgICAgICAgICAgIGlmIChyb3V0ZXJQYXJhbUlEKSB7XG4gICAgICAgICAgICAgIGNydW1iLmxhYmVsID0gY3J1bWIubGFiZWwucmVwbGFjZSgne3snICsgbGFiZWxQYXJhbSArICd9fScsIHJvdXRlclBhcmFtSUQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgLy8gY3J1bWIubGFiZWwgPSBjcnVtYi5sYWJlbC5yZXBsYWNlKCd7eycgKyBsYWJlbFBhcmFtICsgJ319JywgJycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB0aGlzLmJyZWFkY3J1bWIgPSBicmVhZGNydW1iO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmJyZWFkY3J1bWIgPSBbXTtcbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtbGlzdCBjbGFzcz1cIm1hdC1icmVhZC1jcnVtYi1saXN0XCIgKm5nSWY9XCJicmVhZGNydW1iLmxlbmd0aFwiPlxuICA8bWF0LWxpc3QtaXRlbT5cbiAgICAgIDxzcGFuIGNsYXNzPVwibWF0LWJyZWFkLWNydW1iLXNwYWNlclwiPlxuICAgICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBpdGVtIG9mIGJyZWFkY3J1bWI7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgICAgICAgPGEgKm5nSWY9XCJpdGVtPy51cmxcIiBbcm91dGVyTGlua109XCJpdGVtPy51cmxcIlxuICAgICAgICAgICAgICAgICBjbGFzcz1cIm1hdC1icmVhZC1jcnVtYi1saXN0LWl0ZW1cIj57eyBpdGVtLmxhYmVsIH19PC9hPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpdGVtPy51cmxcIiBjbGFzcz1cIm1hdC1icmVhZC1jcnVtYi1saXN0LWl0ZW1cIj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImJyZWFkY3J1bWIubGVuZ3RoICE9PSBpKzFcIiBjbGFzcz1cIm1hdC1icmVhZC1jcnVtYi1saXN0LWl0ZW1cIj57e3N5bWJvbH19PC9zcGFuPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvc3Bhbj5cbiAgPC9tYXQtbGlzdC1pdGVtPlxuPC9tYXQtbGlzdD5cbiJdfQ==
@@ -1,75 +0,0 @@
1
- import { Component, Inject } from '@angular/core';
2
- import { MAT_DIALOG_DATA } from '@angular/material/dialog';
3
- import { ButtonTypes, DialogType } from '../shared/confirmation';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/material/dialog";
6
- import * as i2 from "@angular/common";
7
- import * as i3 from "@angular/material/button";
8
- export class ConfirmationWindowComponent {
9
- dialogRef;
10
- data;
11
- button1Text;
12
- button1Result;
13
- button2Text;
14
- button2Result;
15
- button3Text;
16
- button3Result;
17
- constructor(dialogRef, data) {
18
- this.dialogRef = dialogRef;
19
- this.data = data;
20
- this.button2Text = null;
21
- this.button2Result = null;
22
- this.button3Text = null;
23
- this.button3Result = null;
24
- if (data.dialogType === DialogType.OkCancel) {
25
- this.button1Text = 'OK';
26
- this.button1Result = ButtonTypes.Ok;
27
- this.button2Text = 'Cancel';
28
- this.button2Result = ButtonTypes.Cancel;
29
- }
30
- else if (data.dialogType === DialogType.YesNoCancel) {
31
- this.button1Text = 'Yes';
32
- this.button1Result = ButtonTypes.Yes;
33
- this.button2Text = 'No';
34
- this.button2Result = ButtonTypes.No;
35
- this.button3Text = 'Cancel';
36
- this.button3Result = ButtonTypes.Cancel;
37
- }
38
- else if (data.dialogType === DialogType.Ok) {
39
- this.button1Text = 'OK';
40
- this.button1Result = ButtonTypes.Ok;
41
- }
42
- else {
43
- this.button1Text = 'Yes';
44
- this.button1Result = ButtonTypes.Yes;
45
- this.button2Text = 'No';
46
- this.button2Result = ButtonTypes.No;
47
- }
48
- }
49
- ngOnInit() { }
50
- onButton1() {
51
- this.dialogRef.close({
52
- result: this.button1Result
53
- });
54
- }
55
- onButton2() {
56
- this.dialogRef.close({
57
- result: this.button2Result
58
- });
59
- }
60
- onButton3() {
61
- this.dialogRef.close({
62
- result: this.button3Result
63
- });
64
- }
65
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: ConfirmationWindowComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
66
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.3", type: ConfirmationWindowComponent, selector: "lib-shared-ui-confirmation-window", ngImport: i0, template: "<h1 mat-dialog-title>{{data.title}}</h1>\n<div mat-dialog-content>{{data.message}}</div>\n<div style=\"justify-content: flex-end;\" mat-dialog-actions>\n <button (click)=\"onButton1()\" color=\"primary\" mat-button>{{button1Text}}</button>\n <button (click)=\"onButton2()\" *ngIf=\"button2Text\" mat-button>{{button2Text}}</button>\n <button (click)=\"onButton3()\" *ngIf=\"button3Text\" mat-button>{{button3Text}}</button>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] });
67
- }
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: ConfirmationWindowComponent, decorators: [{
69
- type: Component,
70
- args: [{ selector: 'lib-shared-ui-confirmation-window', template: "<h1 mat-dialog-title>{{data.title}}</h1>\n<div mat-dialog-content>{{data.message}}</div>\n<div style=\"justify-content: flex-end;\" mat-dialog-actions>\n <button (click)=\"onButton1()\" color=\"primary\" mat-button>{{button1Text}}</button>\n <button (click)=\"onButton2()\" *ngIf=\"button2Text\" mat-button>{{button2Text}}</button>\n <button (click)=\"onButton3()\" *ngIf=\"button3Text\" mat-button>{{button3Text}}</button>\n</div>\n" }]
71
- }], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
72
- type: Inject,
73
- args: [MAT_DIALOG_DATA]
74
- }] }] });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLXdpbmRvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZXNobWFrZXJzL3NoYXJlZC11aS9zcmMvbGliL2NvbmZpcm1hdGlvbi1kaWFsb2cvY29uZmlybWF0aW9uLXdpbmRvdy9jb25maXJtYXRpb24td2luZG93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21lc2htYWtlcnMvc2hhcmVkLXVpL3NyYy9saWIvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24td2luZG93L2NvbmZpcm1hdGlvbi13aW5kb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsV0FBVyxFQUFvRCxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFPbkgsTUFBTSxPQUFPLDJCQUEyQjtJQVNuQjtJQUNlO0lBVGxDLFdBQVcsQ0FBUztJQUNwQixhQUFhLENBQWM7SUFDM0IsV0FBVyxDQUFnQjtJQUMzQixhQUFhLENBQXFCO0lBQ2xDLFdBQVcsQ0FBZ0I7SUFDM0IsYUFBYSxDQUFxQjtJQUVsQyxZQUNtQixTQUFvRCxFQUNyQyxJQUE0QjtRQUQzQyxjQUFTLEdBQVQsU0FBUyxDQUEyQztRQUNyQyxTQUFJLEdBQUosSUFBSSxDQUF3QjtRQUU1RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUUxQixJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzVDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxhQUFhLEdBQUcsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQztZQUM1QixJQUFJLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUM7UUFDMUMsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxhQUFhLEdBQUcsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQztZQUM1QixJQUFJLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUM7UUFDMUMsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxVQUFVLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDN0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQ3RDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLGFBQWEsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxhQUFhLEdBQUcsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUN0QyxDQUFDO0lBQ0gsQ0FBQztJQUVELFFBQVEsS0FBVSxDQUFDO0lBRW5CLFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBMkI7WUFDN0MsTUFBTSxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQTJCO1lBQzdDLE1BQU0sRUFBRSxJQUFJLENBQUMsYUFBYTtTQUMzQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUEyQjtZQUM3QyxNQUFNLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDM0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0ExRFUsMkJBQTJCLDhDQVU1QixlQUFlOzJGQVZkLDJCQUEyQix5RUNUeEMsc2JBT0E7OzJGREVhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSxtQ0FBbUM7OzBCQWMxQyxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBCdXR0b25UeXBlcywgQ29uZmlybWF0aW9uV2luZG93RGF0YSwgQ29uZmlybWF0aW9uV2luZG93UmVzdWx0LCBEaWFsb2dUeXBlIH0gZnJvbSAnLi4vc2hhcmVkL2NvbmZpcm1hdGlvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1zaGFyZWQtdWktY29uZmlybWF0aW9uLXdpbmRvdycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb25maXJtYXRpb24td2luZG93LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29uZmlybWF0aW9uLXdpbmRvdy5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uV2luZG93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgYnV0dG9uMVRleHQ6IHN0cmluZztcbiAgYnV0dG9uMVJlc3VsdDogQnV0dG9uVHlwZXM7XG4gIGJ1dHRvbjJUZXh0OiBzdHJpbmcgfCBudWxsO1xuICBidXR0b24yUmVzdWx0OiBCdXR0b25UeXBlcyB8IG51bGw7XG4gIGJ1dHRvbjNUZXh0OiBzdHJpbmcgfCBudWxsO1xuICBidXR0b24zUmVzdWx0OiBCdXR0b25UeXBlcyB8IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxDb25maXJtYXRpb25XaW5kb3dDb21wb25lbnQ+LFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogQ29uZmlybWF0aW9uV2luZG93RGF0YVxuICApIHtcbiAgICB0aGlzLmJ1dHRvbjJUZXh0ID0gbnVsbDtcbiAgICB0aGlzLmJ1dHRvbjJSZXN1bHQgPSBudWxsO1xuICAgIHRoaXMuYnV0dG9uM1RleHQgPSBudWxsO1xuICAgIHRoaXMuYnV0dG9uM1Jlc3VsdCA9IG51bGw7XG5cbiAgICBpZiAoZGF0YS5kaWFsb2dUeXBlID09PSBEaWFsb2dUeXBlLk9rQ2FuY2VsKSB7XG4gICAgICB0aGlzLmJ1dHRvbjFUZXh0ID0gJ09LJztcbiAgICAgIHRoaXMuYnV0dG9uMVJlc3VsdCA9IEJ1dHRvblR5cGVzLk9rO1xuICAgICAgdGhpcy5idXR0b24yVGV4dCA9ICdDYW5jZWwnO1xuICAgICAgdGhpcy5idXR0b24yUmVzdWx0ID0gQnV0dG9uVHlwZXMuQ2FuY2VsO1xuICAgIH0gZWxzZSBpZiAoZGF0YS5kaWFsb2dUeXBlID09PSBEaWFsb2dUeXBlLlllc05vQ2FuY2VsKSB7XG4gICAgICB0aGlzLmJ1dHRvbjFUZXh0ID0gJ1llcyc7XG4gICAgICB0aGlzLmJ1dHRvbjFSZXN1bHQgPSBCdXR0b25UeXBlcy5ZZXM7XG4gICAgICB0aGlzLmJ1dHRvbjJUZXh0ID0gJ05vJztcbiAgICAgIHRoaXMuYnV0dG9uMlJlc3VsdCA9IEJ1dHRvblR5cGVzLk5vO1xuICAgICAgdGhpcy5idXR0b24zVGV4dCA9ICdDYW5jZWwnO1xuICAgICAgdGhpcy5idXR0b24zUmVzdWx0ID0gQnV0dG9uVHlwZXMuQ2FuY2VsO1xuICAgIH0gZWxzZSBpZiAoZGF0YS5kaWFsb2dUeXBlID09PSBEaWFsb2dUeXBlLk9rKSB7XG4gICAgICB0aGlzLmJ1dHRvbjFUZXh0ID0gJ09LJztcbiAgICAgIHRoaXMuYnV0dG9uMVJlc3VsdCA9IEJ1dHRvblR5cGVzLk9rO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmJ1dHRvbjFUZXh0ID0gJ1llcyc7XG4gICAgICB0aGlzLmJ1dHRvbjFSZXN1bHQgPSBCdXR0b25UeXBlcy5ZZXM7XG4gICAgICB0aGlzLmJ1dHRvbjJUZXh0ID0gJ05vJztcbiAgICAgIHRoaXMuYnV0dG9uMlJlc3VsdCA9IEJ1dHRvblR5cGVzLk5vO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge31cblxuICBvbkJ1dHRvbjEoKTogdm9pZCB7XG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoPENvbmZpcm1hdGlvbldpbmRvd1Jlc3VsdD57XG4gICAgICByZXN1bHQ6IHRoaXMuYnV0dG9uMVJlc3VsdFxuICAgIH0pO1xuICB9XG5cbiAgb25CdXR0b24yKCk6IHZvaWQge1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKDxDb25maXJtYXRpb25XaW5kb3dSZXN1bHQ+e1xuICAgICAgcmVzdWx0OiB0aGlzLmJ1dHRvbjJSZXN1bHRcbiAgICB9KTtcbiAgfVxuXG4gIG9uQnV0dG9uMygpOiB2b2lkIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSg8Q29uZmlybWF0aW9uV2luZG93UmVzdWx0PntcbiAgICAgIHJlc3VsdDogdGhpcy5idXR0b24zUmVzdWx0XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlPnt7ZGF0YS50aXRsZX19PC9oMT5cbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50Pnt7ZGF0YS5tZXNzYWdlfX08L2Rpdj5cbjxkaXYgc3R5bGU9XCJqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1wiIG1hdC1kaWFsb2ctYWN0aW9ucz5cbiAgPGJ1dHRvbiAoY2xpY2spPVwib25CdXR0b24xKClcIiBjb2xvcj1cInByaW1hcnlcIiBtYXQtYnV0dG9uPnt7YnV0dG9uMVRleHR9fTwvYnV0dG9uPlxuICA8YnV0dG9uIChjbGljayk9XCJvbkJ1dHRvbjIoKVwiICpuZ0lmPVwiYnV0dG9uMlRleHRcIiBtYXQtYnV0dG9uPnt7YnV0dG9uMlRleHR9fTwvYnV0dG9uPlxuICA8YnV0dG9uIChjbGljayk9XCJvbkJ1dHRvbjMoKVwiICpuZ0lmPVwiYnV0dG9uM1RleHRcIiBtYXQtYnV0dG9uPnt7YnV0dG9uM1RleHR9fTwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=