@meshmakers/shared-ui-legacy 3.4.180 → 3.4.200

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.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Component, Injectable, NgModule, ChangeDetectorRef } from '@angular/core';
2
+ import { inject, ChangeDetectionStrategy, Component, Injectable, NgModule, ChangeDetectorRef } from '@angular/core';
3
3
  import * as i1 from '@angular/material/dialog';
4
4
  import { MatDialogRef, MAT_DIALOG_DATA, MatDialogModule, MatDialog } from '@angular/material/dialog';
5
5
  import { firstValueFrom } from 'rxjs';
@@ -77,8 +77,8 @@ class ConfirmationDialogComponent {
77
77
  onButton3() {
78
78
  this.dialogRef.close(new ConfirmationWindowResult(this.button3Result));
79
79
  }
80
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ConfirmationDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
81
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: ConfirmationDialogComponent, isStandalone: true, selector: "mm-confirmation-dialog", ngImport: i0, template: `
80
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ConfirmationDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
81
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.2", type: ConfirmationDialogComponent, isStandalone: true, selector: "mm-confirmation-dialog", ngImport: i0, template: `
82
82
  <h2 mat-dialog-title>{{ data.title }}</h2>
83
83
  <mat-dialog-content>{{ data.message }}</mat-dialog-content>
84
84
  <mat-dialog-actions align="end">
@@ -90,14 +90,15 @@ class ConfirmationDialogComponent {
90
90
  <button mat-stroked-button (click)="onButton3()">{{ button3Text }}</button>
91
91
  }
92
92
  </mat-dialog-actions>
93
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: MatDialogModule }, { 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: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }] });
93
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: MatDialogModule }, { 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: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }], changeDetection: i0.ChangeDetectionStrategy.Eager });
94
94
  }
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ConfirmationDialogComponent, decorators: [{
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ConfirmationDialogComponent, decorators: [{
96
96
  type: Component,
97
97
  args: [{
98
98
  selector: 'mm-confirmation-dialog',
99
99
  standalone: true,
100
100
  imports: [MatDialogModule, MatButtonModule],
101
+ changeDetection: ChangeDetectionStrategy.Eager,
101
102
  template: `
102
103
  <h2 mat-dialog-title>{{ data.title }}</h2>
103
104
  <mat-dialog-content>{{ data.message }}</mat-dialog-content>
@@ -150,10 +151,10 @@ class ConfirmationService {
150
151
  });
151
152
  return firstValueFrom(dialogRef.afterClosed());
152
153
  }
153
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ConfirmationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
154
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ConfirmationService });
154
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ConfirmationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
155
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ConfirmationService });
155
156
  }
156
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ConfirmationService, decorators: [{
157
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ConfirmationService, decorators: [{
157
158
  type: Injectable
158
159
  }] });
159
160
 
@@ -173,11 +174,11 @@ class MmSharedUiModule {
173
174
  ]
174
175
  };
175
176
  }
176
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: MmSharedUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
177
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.17", ngImport: i0, type: MmSharedUiModule });
178
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: MmSharedUiModule });
177
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: MmSharedUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
178
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.2", ngImport: i0, type: MmSharedUiModule });
179
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: MmSharedUiModule });
179
180
  }
180
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: MmSharedUiModule, decorators: [{
181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: MmSharedUiModule, decorators: [{
181
182
  type: NgModule,
182
183
  args: [{
183
184
  declarations: [],
@@ -314,8 +315,8 @@ class ProgressWindowComponent {
314
315
  }
315
316
  this.dialogRef.close();
316
317
  }
317
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ProgressWindowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
318
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: ProgressWindowComponent, isStandalone: true, selector: "mm-progress-window", ngImport: i0, template: `
318
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ProgressWindowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
319
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.2", type: ProgressWindowComponent, isStandalone: true, selector: "mm-progress-window", ngImport: i0, template: `
319
320
  <mat-dialog-content>
320
321
  <div class="progress-section">
321
322
  @if (isDeterminate) {
@@ -333,9 +334,9 @@ class ProgressWindowComponent {
333
334
  <button mat-stroked-button (click)="onCancelClick()">Cancel</button>
334
335
  }
335
336
  </mat-dialog-actions>
336
- `, isInline: true, styles: [".progress-section{display:flex;flex-direction:column;gap:12px;min-width:350px}.status-text{margin:0;font-size:14px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"], dependencies: [{ kind: "ngmodule", type: MatDialogModule }, { 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: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }] });
337
+ `, isInline: true, styles: [".progress-section{display:flex;flex-direction:column;gap:12px;min-width:350px}.status-text{margin:0;font-size:14px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"], dependencies: [{ kind: "ngmodule", type: MatDialogModule }, { 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: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], changeDetection: i0.ChangeDetectionStrategy.Eager });
337
338
  }
338
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ProgressWindowComponent, decorators: [{
339
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ProgressWindowComponent, decorators: [{
339
340
  type: Component,
340
341
  args: [{ selector: 'mm-progress-window', standalone: true, imports: [MatDialogModule, MatButtonModule, MatProgressBarModule], template: `
341
342
  <mat-dialog-content>
@@ -355,7 +356,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImpo
355
356
  <button mat-stroked-button (click)="onCancelClick()">Cancel</button>
356
357
  }
357
358
  </mat-dialog-actions>
358
- `, styles: [".progress-section{display:flex;flex-direction:column;gap:12px;min-width:350px}.status-text{margin:0;font-size:14px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"] }]
359
+ `, changeDetection: ChangeDetectionStrategy.Eager, styles: [".progress-section{display:flex;flex-direction:column;gap:12px;min-width:350px}.status-text{margin:0;font-size:14px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"] }]
359
360
  }], ctorParameters: () => [] });
360
361
 
361
362
  /**
@@ -405,10 +406,10 @@ class ProgressWindowService {
405
406
  ...options
406
407
  });
407
408
  }
408
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ProgressWindowService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
409
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ProgressWindowService });
409
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ProgressWindowService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
410
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ProgressWindowService });
410
411
  }
411
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: ProgressWindowService, decorators: [{
412
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: ProgressWindowService, decorators: [{
412
413
  type: Injectable
413
414
  }] });
414
415
 
@@ -1 +1 @@
1
- {"version":3,"file":"meshmakers-shared-ui-legacy.mjs","sources":["../../../../projects/meshmakers/shared-ui-legacy/src/lib/confirmation/confirmation.model.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/confirmation/confirmation-dialog.component.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/confirmation/confirmation.service.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/shared-ui-module/mm-shared-ui-module.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/abstract-details/abstract-details-component.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/common-validators/common-validators.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/progress-window/progress-value.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/progress-window/progress-window.component.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/progress-window/progress-window.service.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/import-strategy/import-strategy-dto.ts","../../../../projects/meshmakers/shared-ui-legacy/src/public-api.ts","../../../../projects/meshmakers/shared-ui-legacy/src/meshmakers-shared-ui-legacy.ts"],"sourcesContent":["export enum ButtonTypes {\n Ok,\n Cancel,\n Yes,\n No\n}\n\nexport enum DialogType {\n YesNo = 0,\n YesNoCancel = 1,\n OkCancel = 2,\n Ok = 3\n}\n\nexport interface ConfirmationWindowData {\n title: string;\n message: string;\n dialogType: DialogType;\n}\n\nexport class ConfirmationWindowResult {\n result: ButtonTypes;\n\n constructor(result: ButtonTypes) {\n this.result = result;\n }\n}\n","import { Component, inject, OnInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ButtonTypes, ConfirmationWindowData, ConfirmationWindowResult, DialogType } from './confirmation.model';\n\n@Component({\n selector: 'mm-confirmation-dialog',\n standalone: true,\n imports: [MatDialogModule, MatButtonModule],\n template: `\n <h2 mat-dialog-title>{{ data.title }}</h2>\n <mat-dialog-content>{{ data.message }}</mat-dialog-content>\n <mat-dialog-actions align=\"end\">\n <button mat-flat-button color=\"primary\" (click)=\"onButton1()\">{{ button1Text }}</button>\n @if (button2Text) {\n <button mat-stroked-button (click)=\"onButton2()\">{{ button2Text }}</button>\n }\n @if (button3Text) {\n <button mat-stroked-button (click)=\"onButton3()\">{{ button3Text }}</button>\n }\n </mat-dialog-actions>\n `\n})\nexport class ConfirmationDialogComponent implements OnInit {\n private readonly dialogRef = inject<MatDialogRef<ConfirmationDialogComponent>>(MatDialogRef);\n readonly data = inject<ConfirmationWindowData>(MAT_DIALOG_DATA);\n\n button1Text = 'OK';\n button2Text: string | null = null;\n button3Text: string | null = null;\n\n private button1Result: ButtonTypes = ButtonTypes.Ok;\n private button2Result: ButtonTypes | null = null;\n private button3Result: ButtonTypes | null = null;\n\n ngOnInit(): void {\n switch (this.data.dialogType) {\n case DialogType.OkCancel:\n this.button1Text = 'OK';\n this.button1Result = ButtonTypes.Ok;\n this.button2Text = 'Cancel';\n this.button2Result = ButtonTypes.Cancel;\n break;\n case DialogType.YesNoCancel:\n this.button1Text = 'Yes';\n this.button1Result = ButtonTypes.Yes;\n this.button2Text = 'No';\n this.button2Result = ButtonTypes.No;\n this.button3Text = 'Cancel';\n this.button3Result = ButtonTypes.Cancel;\n break;\n case DialogType.Ok:\n this.button1Text = 'OK';\n this.button1Result = ButtonTypes.Ok;\n break;\n default: // YesNo\n this.button1Text = 'Yes';\n this.button1Result = ButtonTypes.Yes;\n this.button2Text = 'No';\n this.button2Result = ButtonTypes.No;\n break;\n }\n }\n\n onButton1(): void {\n this.dialogRef.close(new ConfirmationWindowResult(this.button1Result));\n }\n\n onButton2(): void {\n this.dialogRef.close(new ConfirmationWindowResult(this.button2Result!));\n }\n\n onButton3(): void {\n this.dialogRef.close(new ConfirmationWindowResult(this.button3Result!));\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { firstValueFrom } from 'rxjs';\nimport { ConfirmationDialogComponent } from './confirmation-dialog.component';\nimport {\n ButtonTypes,\n ConfirmationWindowData,\n ConfirmationWindowResult,\n DialogType,\n} from './confirmation.model';\n\n@Injectable()\nexport class ConfirmationService {\n private readonly dialog = inject(MatDialog);\n\n public async showYesNoConfirmationDialog(title: string, message: string): Promise<boolean> {\n const result = await this.openDialog(title, message, DialogType.YesNo);\n if (result instanceof ConfirmationWindowResult) {\n return result.result === ButtonTypes.Yes;\n }\n return false;\n }\n\n public async showYesNoCancelConfirmationDialog(title: string, message: string): Promise<ConfirmationWindowResult | undefined> {\n const result = await this.openDialog(title, message, DialogType.YesNoCancel);\n if (result instanceof ConfirmationWindowResult) {\n return result;\n }\n return undefined;\n }\n\n public async showOkCancelConfirmationDialog(title: string, message: string): Promise<boolean> {\n const result = await this.openDialog(title, message, DialogType.OkCancel);\n if (result instanceof ConfirmationWindowResult) {\n return result.result === ButtonTypes.Ok;\n }\n return false;\n }\n\n public async showOkDialog(title: string, message: string): Promise<boolean> {\n const result = await this.openDialog(title, message, DialogType.Ok);\n if (result instanceof ConfirmationWindowResult) {\n return result.result === ButtonTypes.Ok;\n }\n return false;\n }\n\n private async openDialog(title: string, message: string, dialogType: DialogType): Promise<ConfirmationWindowResult | undefined> {\n const dialogRef = this.dialog.open(ConfirmationDialogComponent, {\n data: { title, message, dialogType } as ConfirmationWindowData,\n });\n\n return firstValueFrom(dialogRef.afterClosed());\n }\n}\n","/**\n * Backward-compatible MmSharedUiModule for legacy apps that use\n * importProvidersFrom(MmSharedUiModule.forRoot()).\n *\n * Provides a Material-based ConfirmationService as a drop-in replacement\n * for the Kendo-based version from @meshmakers/shared-ui.\n */\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { ConfirmationService } from '../confirmation/confirmation.service';\n\n@NgModule({\n declarations: [],\n imports: [],\n exports: []\n})\nexport class MmSharedUiModule {\n static forRoot(): ModuleWithProviders<MmSharedUiModule> {\n return {\n ngModule: MmSharedUiModule,\n providers: [\n ConfirmationService,\n ]\n };\n }\n}\n","/**\n * Backward-compatible AbstractDetailsComponent for legacy apps.\n */\nimport { FormGroup } from '@angular/forms';\nimport { IsoDateTime } from '@meshmakers/shared-services';\n\nexport abstract class AbstractDetailsComponent<TEntity> {\n private _loading: boolean;\n private readonly _ownerForm: FormGroup;\n private _entity: TEntity | null;\n\n protected constructor(formGroup: FormGroup) {\n this._loading = true;\n this._entity = null;\n this._ownerForm = formGroup;\n }\n\n public get loading(): boolean {\n return this._loading;\n }\n\n public set loading(value: boolean) {\n this._loading = value;\n }\n\n public get entity(): TEntity | null {\n return this._entity;\n }\n\n public set entity(value: TEntity | null) {\n this._entity = value;\n }\n\n public get ownerForm(): FormGroup {\n return this._ownerForm;\n }\n\n public get isLoaded(): boolean {\n return this._entity !== null;\n }\n\n public hasError = (controlName: string, errorName: string): boolean => {\n return this.ownerForm?.controls[controlName].hasError(errorName);\n };\n\n public hasFormError = (errorName: string): boolean => {\n return this.ownerForm?.hasError(errorName);\n };\n\n public updateDateTime(controlName: string): void {\n this.ownerForm?.get(controlName)?.setValue(IsoDateTime.utcToLocalDateTimeIso(IsoDateTime.currentUtcDateTimeIso()));\n }\n\n public copyInputMessage(inputElement: HTMLInputElement): void {\n inputElement.select();\n document.execCommand('copy');\n inputElement.setSelectionRange(0, 0);\n }\n\n protected onProgressStarting(): void {\n this._loading = true;\n this.ownerForm?.disable();\n this.ownerForm?.updateValueAndValidity();\n }\n\n protected onProgressCompleted(): void {\n this.ownerForm?.enable();\n this._loading = false;\n }\n}\n","/**\n * Backward-compatible CommonValidators for legacy apps.\n */\nimport { AbstractControl, ValidatorFn, Validators } from '@angular/forms';\n\nexport type CompareValueFn<TValue> = (value: TValue) => boolean;\n\nexport class CommonValidators {\n public static phoneNumber(): ValidatorFn {\n return Validators.pattern('^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\\\s\\\\./0-9]*$');\n }\n\n public static httpUri(): ValidatorFn {\n return Validators.pattern(\n '^(http:\\\\/\\\\/|https:\\\\/\\\\/)([a-zA-Z0-9-_]+\\\\.)*[a-zA-Z0-9][a-zA-Z0-9-_]+(\\\\.[a-zA-Z]{2,11}?)*(:[0-9]{2,5}){0,1}\\\\/{0,1}$'\n );\n }\n\n public static ensureSameValue(sourceControlName: string): ValidatorFn {\n return (control: AbstractControl) => {\n const value = control.value;\n return value === control.parent?.get(sourceControlName)?.value ? null : { notSame: true };\n };\n }\n\n public static conditionalRequired<TCompareValue>(\n sourceControlName: string,\n sourceValueCompareExpression: CompareValueFn<TCompareValue>\n ): ValidatorFn {\n return (control: AbstractControl) => {\n if (control.parent != null && sourceValueCompareExpression((control.parent.get(sourceControlName)?.value as TCompareValue))) {\n const val = control.value;\n const isEmpty = val == null || (typeof val === 'string' && val.length === 0) || (Array.isArray(val) && val.length === 0);\n return isEmpty ? { required: true } : null;\n }\n return null;\n };\n }\n\n public static dependentControls(controlNames: string[]): ValidatorFn {\n return (control: AbstractControl) => {\n controlNames.forEach((controlName) => {\n control.parent?.get(controlName)?.updateValueAndValidity();\n });\n return null;\n };\n }\n}\n","export class ProgressValue {\n statusText: string | null;\n progressValue: number;\n\n constructor() {\n this.statusText = null;\n this.progressValue = 0;\n }\n}\n","import { ChangeDetectorRef, Component, inject, OnDestroy, AfterViewInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { Observable, Subscription } from 'rxjs';\nimport { ProgressValue } from './progress-value';\n\nexport interface ProgressWindowData {\n isDeterminate: boolean;\n progress: Observable<ProgressValue>;\n isCancelOperationAvailable: boolean;\n cancelOperation: () => void;\n}\n\n@Component({\n selector: 'mm-progress-window',\n standalone: true,\n imports: [MatDialogModule, MatButtonModule, MatProgressBarModule],\n template: `\n <mat-dialog-content>\n <div class=\"progress-section\">\n @if (isDeterminate) {\n <mat-progress-bar mode=\"determinate\" [value]=\"progressPercent\"></mat-progress-bar>\n } @else {\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\n }\n @if (statusText) {\n <p class=\"status-text\">{{ statusText }}</p>\n }\n </div>\n </mat-dialog-content>\n <mat-dialog-actions align=\"end\">\n @if (isCancelOperationAvailable) {\n <button mat-stroked-button (click)=\"onCancelClick()\">Cancel</button>\n }\n </mat-dialog-actions>\n `,\n styles: [`\n .progress-section {\n display: flex;\n flex-direction: column;\n gap: 12px;\n min-width: 350px;\n }\n .status-text {\n margin: 0;\n font-size: 14px;\n text-align: center;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n `]\n})\nexport class ProgressWindowComponent implements AfterViewInit, OnDestroy {\n private readonly dialogRef = inject<MatDialogRef<ProgressWindowComponent>>(MatDialogRef);\n private readonly data = inject<ProgressWindowData>(MAT_DIALOG_DATA);\n private readonly cdr = inject(ChangeDetectorRef);\n private progressSubscription?: Subscription;\n\n isDeterminate: boolean;\n isCancelOperationAvailable: boolean;\n statusText: string | null = null;\n progressPercent = 0;\n\n constructor() {\n this.isDeterminate = this.data.isDeterminate;\n this.isCancelOperationAvailable = this.data.isCancelOperationAvailable;\n }\n\n ngAfterViewInit(): void {\n if (this.data.progress) {\n this.progressSubscription = this.data.progress.subscribe((value: ProgressValue) => {\n this.statusText = value.statusText;\n this.progressPercent = value.progressValue;\n this.cdr.detectChanges();\n });\n }\n }\n\n ngOnDestroy(): void {\n this.progressSubscription?.unsubscribe();\n }\n\n onCancelClick(): void {\n if (this.data.cancelOperation) {\n this.data.cancelOperation();\n }\n this.dialogRef.close();\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { Observable } from 'rxjs';\nimport { ProgressValue } from './progress-value';\nimport { ProgressWindowComponent, ProgressWindowData } from './progress-window.component';\n\n/**\n * Reference returned by showProgress methods.\n * Provides a close() method compatible with the Kendo DialogRef API.\n */\nexport class ProgressDialogRef {\n constructor(private readonly dialogRef: MatDialogRef<ProgressWindowComponent>) {}\n\n close(): void {\n this.dialogRef.close();\n }\n}\n\nexport interface ProgressWindowConfig {\n title: string;\n progress: Observable<ProgressValue>;\n isDeterminate?: boolean;\n isCancelOperationAvailable?: boolean;\n cancelOperation?: () => void;\n width?: number;\n height?: number | string;\n}\n\nexport interface ProgressWindowOptions {\n isCancelOperationAvailable?: boolean;\n cancelOperation?: () => void;\n width?: number;\n height?: number | string;\n}\n\n@Injectable()\nexport class ProgressWindowService {\n private readonly dialog = inject(MatDialog);\n\n showProgress(config: ProgressWindowConfig): ProgressDialogRef {\n const dialogRef = this.dialog.open(ProgressWindowComponent, {\n data: {\n isDeterminate: config.isDeterminate !== false,\n progress: config.progress,\n isCancelOperationAvailable: config.isCancelOperationAvailable || false,\n cancelOperation: config.cancelOperation || (() => { /* noop */ }),\n } as ProgressWindowData,\n width: config.width ? `${config.width}px` : '450px',\n disableClose: true,\n });\n\n if (config.title) {\n // MatDialog doesn't have a built-in title on the ref, but we set it via the component\n }\n\n return new ProgressDialogRef(dialogRef);\n }\n\n showDeterminateProgress(\n title: string,\n progress: Observable<ProgressValue>,\n options?: Partial<ProgressWindowOptions>\n ): ProgressDialogRef {\n return this.showProgress({\n title,\n isDeterminate: true,\n progress,\n ...options\n });\n }\n\n showIndeterminateProgress(\n title: string,\n progress: Observable<ProgressValue>,\n options?: Partial<ProgressWindowOptions>\n ): ProgressDialogRef {\n return this.showProgress({\n title,\n isDeterminate: false,\n progress,\n ...options\n });\n }\n}\n","export enum ImportStrategyDto {\n InsertOnly = 0,\n Upsert = 1\n}\n","/*\n * Public API Surface of shared-ui-legacy\n */\n\nexport * from './lib/shared-ui-module';\nexport * from './lib/abstract-details';\nexport * from './lib/common-validators';\nexport * from './lib/confirmation';\nexport * from './lib/progress-window';\nexport * from './lib/import-strategy';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meshmakers-shared-ui-legacy.mjs","sources":["../../../../projects/meshmakers/shared-ui-legacy/src/lib/confirmation/confirmation.model.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/confirmation/confirmation-dialog.component.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/confirmation/confirmation.service.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/shared-ui-module/mm-shared-ui-module.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/abstract-details/abstract-details-component.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/common-validators/common-validators.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/progress-window/progress-value.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/progress-window/progress-window.component.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/progress-window/progress-window.service.ts","../../../../projects/meshmakers/shared-ui-legacy/src/lib/import-strategy/import-strategy-dto.ts","../../../../projects/meshmakers/shared-ui-legacy/src/public-api.ts","../../../../projects/meshmakers/shared-ui-legacy/src/meshmakers-shared-ui-legacy.ts"],"sourcesContent":["export enum ButtonTypes {\n Ok,\n Cancel,\n Yes,\n No\n}\n\nexport enum DialogType {\n YesNo = 0,\n YesNoCancel = 1,\n OkCancel = 2,\n Ok = 3\n}\n\nexport interface ConfirmationWindowData {\n title: string;\n message: string;\n dialogType: DialogType;\n}\n\nexport class ConfirmationWindowResult {\n result: ButtonTypes;\n\n constructor(result: ButtonTypes) {\n this.result = result;\n }\n}\n","import { Component, inject, OnInit, ChangeDetectionStrategy } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ButtonTypes, ConfirmationWindowData, ConfirmationWindowResult, DialogType } from './confirmation.model';\n\n@Component({\n selector: 'mm-confirmation-dialog',\n standalone: true,\n imports: [MatDialogModule, MatButtonModule],\n changeDetection: ChangeDetectionStrategy.Eager,\n template: `\n <h2 mat-dialog-title>{{ data.title }}</h2>\n <mat-dialog-content>{{ data.message }}</mat-dialog-content>\n <mat-dialog-actions align=\"end\">\n <button mat-flat-button color=\"primary\" (click)=\"onButton1()\">{{ button1Text }}</button>\n @if (button2Text) {\n <button mat-stroked-button (click)=\"onButton2()\">{{ button2Text }}</button>\n }\n @if (button3Text) {\n <button mat-stroked-button (click)=\"onButton3()\">{{ button3Text }}</button>\n }\n </mat-dialog-actions>\n `\n})\nexport class ConfirmationDialogComponent implements OnInit {\n private readonly dialogRef = inject<MatDialogRef<ConfirmationDialogComponent>>(MatDialogRef);\n readonly data = inject<ConfirmationWindowData>(MAT_DIALOG_DATA);\n\n button1Text = 'OK';\n button2Text: string | null = null;\n button3Text: string | null = null;\n\n private button1Result: ButtonTypes = ButtonTypes.Ok;\n private button2Result: ButtonTypes | null = null;\n private button3Result: ButtonTypes | null = null;\n\n ngOnInit(): void {\n switch (this.data.dialogType) {\n case DialogType.OkCancel:\n this.button1Text = 'OK';\n this.button1Result = ButtonTypes.Ok;\n this.button2Text = 'Cancel';\n this.button2Result = ButtonTypes.Cancel;\n break;\n case DialogType.YesNoCancel:\n this.button1Text = 'Yes';\n this.button1Result = ButtonTypes.Yes;\n this.button2Text = 'No';\n this.button2Result = ButtonTypes.No;\n this.button3Text = 'Cancel';\n this.button3Result = ButtonTypes.Cancel;\n break;\n case DialogType.Ok:\n this.button1Text = 'OK';\n this.button1Result = ButtonTypes.Ok;\n break;\n default: // YesNo\n this.button1Text = 'Yes';\n this.button1Result = ButtonTypes.Yes;\n this.button2Text = 'No';\n this.button2Result = ButtonTypes.No;\n break;\n }\n }\n\n onButton1(): void {\n this.dialogRef.close(new ConfirmationWindowResult(this.button1Result));\n }\n\n onButton2(): void {\n this.dialogRef.close(new ConfirmationWindowResult(this.button2Result!));\n }\n\n onButton3(): void {\n this.dialogRef.close(new ConfirmationWindowResult(this.button3Result!));\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { firstValueFrom } from 'rxjs';\nimport { ConfirmationDialogComponent } from './confirmation-dialog.component';\nimport {\n ButtonTypes,\n ConfirmationWindowData,\n ConfirmationWindowResult,\n DialogType,\n} from './confirmation.model';\n\n@Injectable()\nexport class ConfirmationService {\n private readonly dialog = inject(MatDialog);\n\n public async showYesNoConfirmationDialog(title: string, message: string): Promise<boolean> {\n const result = await this.openDialog(title, message, DialogType.YesNo);\n if (result instanceof ConfirmationWindowResult) {\n return result.result === ButtonTypes.Yes;\n }\n return false;\n }\n\n public async showYesNoCancelConfirmationDialog(title: string, message: string): Promise<ConfirmationWindowResult | undefined> {\n const result = await this.openDialog(title, message, DialogType.YesNoCancel);\n if (result instanceof ConfirmationWindowResult) {\n return result;\n }\n return undefined;\n }\n\n public async showOkCancelConfirmationDialog(title: string, message: string): Promise<boolean> {\n const result = await this.openDialog(title, message, DialogType.OkCancel);\n if (result instanceof ConfirmationWindowResult) {\n return result.result === ButtonTypes.Ok;\n }\n return false;\n }\n\n public async showOkDialog(title: string, message: string): Promise<boolean> {\n const result = await this.openDialog(title, message, DialogType.Ok);\n if (result instanceof ConfirmationWindowResult) {\n return result.result === ButtonTypes.Ok;\n }\n return false;\n }\n\n private async openDialog(title: string, message: string, dialogType: DialogType): Promise<ConfirmationWindowResult | undefined> {\n const dialogRef = this.dialog.open(ConfirmationDialogComponent, {\n data: { title, message, dialogType } as ConfirmationWindowData,\n });\n\n return firstValueFrom(dialogRef.afterClosed());\n }\n}\n","/**\n * Backward-compatible MmSharedUiModule for legacy apps that use\n * importProvidersFrom(MmSharedUiModule.forRoot()).\n *\n * Provides a Material-based ConfirmationService as a drop-in replacement\n * for the Kendo-based version from @meshmakers/shared-ui.\n */\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { ConfirmationService } from '../confirmation/confirmation.service';\n\n@NgModule({\n declarations: [],\n imports: [],\n exports: []\n})\nexport class MmSharedUiModule {\n static forRoot(): ModuleWithProviders<MmSharedUiModule> {\n return {\n ngModule: MmSharedUiModule,\n providers: [\n ConfirmationService,\n ]\n };\n }\n}\n","/**\n * Backward-compatible AbstractDetailsComponent for legacy apps.\n */\nimport { FormGroup } from '@angular/forms';\nimport { IsoDateTime } from '@meshmakers/shared-services';\n\nexport abstract class AbstractDetailsComponent<TEntity> {\n private _loading: boolean;\n private readonly _ownerForm: FormGroup;\n private _entity: TEntity | null;\n\n protected constructor(formGroup: FormGroup) {\n this._loading = true;\n this._entity = null;\n this._ownerForm = formGroup;\n }\n\n public get loading(): boolean {\n return this._loading;\n }\n\n public set loading(value: boolean) {\n this._loading = value;\n }\n\n public get entity(): TEntity | null {\n return this._entity;\n }\n\n public set entity(value: TEntity | null) {\n this._entity = value;\n }\n\n public get ownerForm(): FormGroup {\n return this._ownerForm;\n }\n\n public get isLoaded(): boolean {\n return this._entity !== null;\n }\n\n public hasError = (controlName: string, errorName: string): boolean => {\n return this.ownerForm?.controls[controlName].hasError(errorName);\n };\n\n public hasFormError = (errorName: string): boolean => {\n return this.ownerForm?.hasError(errorName);\n };\n\n public updateDateTime(controlName: string): void {\n this.ownerForm?.get(controlName)?.setValue(IsoDateTime.utcToLocalDateTimeIso(IsoDateTime.currentUtcDateTimeIso()));\n }\n\n public copyInputMessage(inputElement: HTMLInputElement): void {\n inputElement.select();\n document.execCommand('copy');\n inputElement.setSelectionRange(0, 0);\n }\n\n protected onProgressStarting(): void {\n this._loading = true;\n this.ownerForm?.disable();\n this.ownerForm?.updateValueAndValidity();\n }\n\n protected onProgressCompleted(): void {\n this.ownerForm?.enable();\n this._loading = false;\n }\n}\n","/**\n * Backward-compatible CommonValidators for legacy apps.\n */\nimport { AbstractControl, ValidatorFn, Validators } from '@angular/forms';\n\nexport type CompareValueFn<TValue> = (value: TValue) => boolean;\n\nexport class CommonValidators {\n public static phoneNumber(): ValidatorFn {\n return Validators.pattern('^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\\\s\\\\./0-9]*$');\n }\n\n public static httpUri(): ValidatorFn {\n return Validators.pattern(\n '^(http:\\\\/\\\\/|https:\\\\/\\\\/)([a-zA-Z0-9-_]+\\\\.)*[a-zA-Z0-9][a-zA-Z0-9-_]+(\\\\.[a-zA-Z]{2,11}?)*(:[0-9]{2,5}){0,1}\\\\/{0,1}$'\n );\n }\n\n public static ensureSameValue(sourceControlName: string): ValidatorFn {\n return (control: AbstractControl) => {\n const value = control.value;\n return value === control.parent?.get(sourceControlName)?.value ? null : { notSame: true };\n };\n }\n\n public static conditionalRequired<TCompareValue>(\n sourceControlName: string,\n sourceValueCompareExpression: CompareValueFn<TCompareValue>\n ): ValidatorFn {\n return (control: AbstractControl) => {\n if (control.parent != null && sourceValueCompareExpression((control.parent.get(sourceControlName)?.value as TCompareValue))) {\n const val = control.value;\n const isEmpty = val == null || (typeof val === 'string' && val.length === 0) || (Array.isArray(val) && val.length === 0);\n return isEmpty ? { required: true } : null;\n }\n return null;\n };\n }\n\n public static dependentControls(controlNames: string[]): ValidatorFn {\n return (control: AbstractControl) => {\n controlNames.forEach((controlName) => {\n control.parent?.get(controlName)?.updateValueAndValidity();\n });\n return null;\n };\n }\n}\n","export class ProgressValue {\n statusText: string | null;\n progressValue: number;\n\n constructor() {\n this.statusText = null;\n this.progressValue = 0;\n }\n}\n","import { ChangeDetectorRef, Component, inject, OnDestroy, AfterViewInit, ChangeDetectionStrategy } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { Observable, Subscription } from 'rxjs';\nimport { ProgressValue } from './progress-value';\n\nexport interface ProgressWindowData {\n isDeterminate: boolean;\n progress: Observable<ProgressValue>;\n isCancelOperationAvailable: boolean;\n cancelOperation: () => void;\n}\n\n@Component({\n selector: 'mm-progress-window',\n standalone: true,\n imports: [MatDialogModule, MatButtonModule, MatProgressBarModule],\n template: `\n <mat-dialog-content>\n <div class=\"progress-section\">\n @if (isDeterminate) {\n <mat-progress-bar mode=\"determinate\" [value]=\"progressPercent\"></mat-progress-bar>\n } @else {\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\n }\n @if (statusText) {\n <p class=\"status-text\">{{ statusText }}</p>\n }\n </div>\n </mat-dialog-content>\n <mat-dialog-actions align=\"end\">\n @if (isCancelOperationAvailable) {\n <button mat-stroked-button (click)=\"onCancelClick()\">Cancel</button>\n }\n </mat-dialog-actions>\n `,\n changeDetection: ChangeDetectionStrategy.Eager,\n styles: [`\n .progress-section {\n display: flex;\n flex-direction: column;\n gap: 12px;\n min-width: 350px;\n }\n .status-text {\n margin: 0;\n font-size: 14px;\n text-align: center;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n `]\n})\nexport class ProgressWindowComponent implements AfterViewInit, OnDestroy {\n private readonly dialogRef = inject<MatDialogRef<ProgressWindowComponent>>(MatDialogRef);\n private readonly data = inject<ProgressWindowData>(MAT_DIALOG_DATA);\n private readonly cdr = inject(ChangeDetectorRef);\n private progressSubscription?: Subscription;\n\n isDeterminate: boolean;\n isCancelOperationAvailable: boolean;\n statusText: string | null = null;\n progressPercent = 0;\n\n constructor() {\n this.isDeterminate = this.data.isDeterminate;\n this.isCancelOperationAvailable = this.data.isCancelOperationAvailable;\n }\n\n ngAfterViewInit(): void {\n if (this.data.progress) {\n this.progressSubscription = this.data.progress.subscribe((value: ProgressValue) => {\n this.statusText = value.statusText;\n this.progressPercent = value.progressValue;\n this.cdr.detectChanges();\n });\n }\n }\n\n ngOnDestroy(): void {\n this.progressSubscription?.unsubscribe();\n }\n\n onCancelClick(): void {\n if (this.data.cancelOperation) {\n this.data.cancelOperation();\n }\n this.dialogRef.close();\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { Observable } from 'rxjs';\nimport { ProgressValue } from './progress-value';\nimport { ProgressWindowComponent, ProgressWindowData } from './progress-window.component';\n\n/**\n * Reference returned by showProgress methods.\n * Provides a close() method compatible with the Kendo DialogRef API.\n */\nexport class ProgressDialogRef {\n constructor(private readonly dialogRef: MatDialogRef<ProgressWindowComponent>) {}\n\n close(): void {\n this.dialogRef.close();\n }\n}\n\nexport interface ProgressWindowConfig {\n title: string;\n progress: Observable<ProgressValue>;\n isDeterminate?: boolean;\n isCancelOperationAvailable?: boolean;\n cancelOperation?: () => void;\n width?: number;\n height?: number | string;\n}\n\nexport interface ProgressWindowOptions {\n isCancelOperationAvailable?: boolean;\n cancelOperation?: () => void;\n width?: number;\n height?: number | string;\n}\n\n@Injectable()\nexport class ProgressWindowService {\n private readonly dialog = inject(MatDialog);\n\n showProgress(config: ProgressWindowConfig): ProgressDialogRef {\n const dialogRef = this.dialog.open(ProgressWindowComponent, {\n data: {\n isDeterminate: config.isDeterminate !== false,\n progress: config.progress,\n isCancelOperationAvailable: config.isCancelOperationAvailable || false,\n cancelOperation: config.cancelOperation || (() => { /* noop */ }),\n } as ProgressWindowData,\n width: config.width ? `${config.width}px` : '450px',\n disableClose: true,\n });\n\n if (config.title) {\n // MatDialog doesn't have a built-in title on the ref, but we set it via the component\n }\n\n return new ProgressDialogRef(dialogRef);\n }\n\n showDeterminateProgress(\n title: string,\n progress: Observable<ProgressValue>,\n options?: Partial<ProgressWindowOptions>\n ): ProgressDialogRef {\n return this.showProgress({\n title,\n isDeterminate: true,\n progress,\n ...options\n });\n }\n\n showIndeterminateProgress(\n title: string,\n progress: Observable<ProgressValue>,\n options?: Partial<ProgressWindowOptions>\n ): ProgressDialogRef {\n return this.showProgress({\n title,\n isDeterminate: false,\n progress,\n ...options\n });\n }\n}\n","export enum ImportStrategyDto {\n InsertOnly = 0,\n Upsert = 1\n}\n","/*\n * Public API Surface of shared-ui-legacy\n */\n\nexport * from './lib/shared-ui-module';\nexport * from './lib/abstract-details';\nexport * from './lib/common-validators';\nexport * from './lib/confirmation';\nexport * from './lib/progress-window';\nexport * from './lib/import-strategy';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@meshmakers/shared-ui-legacy",
3
- "version": "3.4.180",
3
+ "version": "3.4.200",
4
4
  "peerDependencies": {
5
- "@angular/cdk": "^21.2.0",
6
- "@angular/common": "^21.2.0",
7
- "@angular/core": "^21.2.0",
8
- "@angular/forms": "^21.2.0",
9
- "@angular/material": "^21.2.0",
5
+ "@angular/cdk": "^22.0.0",
6
+ "@angular/common": "^22.0.0",
7
+ "@angular/core": "^22.0.0",
8
+ "@angular/forms": "^22.0.0",
9
+ "@angular/material": "^22.0.0",
10
10
  "@meshmakers/shared-services": "*"
11
11
  },
12
12
  "dependencies": {