@ajsf/material 21.0.0 → 22.0.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.
@@ -91,8 +91,8 @@ class FlexLayoutRootComponent {
91
91
  showWidget(layoutNode) {
92
92
  return this.jsf.evaluateCondition(layoutNode, this.dataIndex);
93
93
  }
94
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: FlexLayoutRootComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
95
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: FlexLayoutRootComponent, isStandalone: false, selector: "flex-layout-root-widget", inputs: { dataIndex: "dataIndex", layoutIndex: "layoutIndex", layout: "layout", isFlexItem: "isFlexItem" }, ngImport: i0, template: `
94
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: FlexLayoutRootComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
95
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: FlexLayoutRootComponent, isStandalone: false, selector: "flex-layout-root-widget", inputs: { dataIndex: "dataIndex", layoutIndex: "layoutIndex", layout: "layout", isFlexItem: "isFlexItem" }, ngImport: i0, template: `
96
96
  @for (layoutNode of layout; track layoutNode; let i = $index) {
97
97
  <div
98
98
  [class.form-flex-item]="isFlexItem"
@@ -112,7 +112,7 @@ class FlexLayoutRootComponent {
112
112
  </div>
113
113
  }`, isInline: true, dependencies: [{ kind: "component", type: i1.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
114
114
  }
115
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: FlexLayoutRootComponent, decorators: [{
115
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: FlexLayoutRootComponent, decorators: [{
116
116
  type: Component,
117
117
  args: [{
118
118
  selector: 'flex-layout-root-widget',
@@ -135,7 +135,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
135
135
  }
136
136
  </div>
137
137
  }`,
138
- changeDetection: ChangeDetectionStrategy.Default,
138
+ changeDetection: ChangeDetectionStrategy.Eager,
139
139
  standalone: false
140
140
  }]
141
141
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { dataIndex: [{
@@ -233,8 +233,8 @@ class FlexLayoutSectionComponent {
233
233
  return this.options[attribute];
234
234
  }
235
235
  }
236
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: FlexLayoutSectionComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
237
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: FlexLayoutSectionComponent, isStandalone: false, selector: "flex-layout-section-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
236
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: FlexLayoutSectionComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
237
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: FlexLayoutSectionComponent, isStandalone: false, selector: "flex-layout-section-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
238
238
  @if (containerType === 'div') {
239
239
  <div
240
240
  [class]="options?.htmlClass || ''"
@@ -266,7 +266,7 @@ class FlexLayoutSectionComponent {
266
266
  }
267
267
  @if (options?.showErrors && options?.errorMessage) {
268
268
  <mat-error
269
- [innerHTML]="options?.errorMessage"></mat-error>
269
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
270
270
  }
271
271
  </div>
272
272
  }
@@ -276,7 +276,7 @@ class FlexLayoutSectionComponent {
276
276
  [class]="options?.htmlClass || ''"
277
277
  [class.expandable]="options?.expandable && !expanded"
278
278
  [class.expanded]="options?.expandable && expanded"
279
- [disabled]="options?.readonly">
279
+ [disabled]="$safeNavigationMigration(options?.readonly)">
280
280
  @if (sectionTitle) {
281
281
  <legend
282
282
  [class]="'legend ' + (options?.labelHtmlClass || '')"
@@ -303,7 +303,7 @@ class FlexLayoutSectionComponent {
303
303
  }
304
304
  @if (options?.showErrors && options?.errorMessage) {
305
305
  <mat-error
306
- [innerHTML]="options?.errorMessage"></mat-error>
306
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
307
307
  }
308
308
  </fieldset>
309
309
  }
@@ -323,7 +323,7 @@ class FlexLayoutSectionComponent {
323
323
  }
324
324
  @if (expanded) {
325
325
  <mat-card-content>
326
- <fieldset [disabled]="options?.readonly">
326
+ <fieldset [disabled]="$safeNavigationMigration(options?.readonly)">
327
327
  @if (expanded) {
328
328
  <flex-layout-root-widget
329
329
  [layout]="layoutNode.items"
@@ -348,7 +348,7 @@ class FlexLayoutSectionComponent {
348
348
  <mat-card-footer>
349
349
  @if (options?.showErrors && options?.errorMessage) {
350
350
  <mat-error
351
- [innerHTML]="options?.errorMessage"></mat-error>
351
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
352
352
  }
353
353
  </mat-card-footer>
354
354
  </mat-card>
@@ -368,7 +368,7 @@ class FlexLayoutSectionComponent {
368
368
  }
369
369
  </mat-panel-title>
370
370
  </mat-expansion-panel-header>
371
- <fieldset [disabled]="options?.readonly">
371
+ <fieldset [disabled]="$safeNavigationMigration(options?.readonly)">
372
372
  @if (expanded) {
373
373
  <flex-layout-root-widget
374
374
  [layout]="layoutNode.items"
@@ -390,12 +390,12 @@ class FlexLayoutSectionComponent {
390
390
  </fieldset>
391
391
  @if (options?.showErrors && options?.errorMessage) {
392
392
  <mat-error
393
- [innerHTML]="options?.errorMessage"></mat-error>
393
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
394
394
  }
395
395
  </mat-expansion-panel>
396
- }`, isInline: true, styles: ["fieldset{border:0;margin:0;padding:0}.legend{font-weight:700}.expandable>.legend:before{content:\"\\25b6\";padding-right:.3em}.expanded>.legend:before{content:\"\\25bc\";padding-right:.2em}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i3.MatCardFooter, selector: "mat-card-footer" }, { kind: "component", type: i3.MatCardHeader, selector: "mat-card-header" }, { kind: "component", type: i4.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["hideToggle", "togglePosition"], outputs: ["afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i4.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight", "tabIndex"] }, { kind: "directive", type: i4.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: FlexLayoutRootComponent, selector: "flex-layout-root-widget", inputs: ["dataIndex", "layoutIndex", "layout", "isFlexItem"] }] }); }
396
+ }`, isInline: true, styles: ["fieldset{border:0;margin:0;padding:0}.legend{font-weight:700}.expandable>.legend:before{content:\"\\25b6\";padding-right:.3em}.expanded>.legend:before{content:\"\\25bc\";padding-right:.2em}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i3.MatCardFooter, selector: "mat-card-footer" }, { kind: "component", type: i3.MatCardHeader, selector: "mat-card-header" }, { kind: "component", type: i4.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["hideToggle", "togglePosition"], outputs: ["afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i4.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight", "tabIndex"] }, { kind: "directive", type: i4.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: FlexLayoutRootComponent, selector: "flex-layout-root-widget", inputs: ["dataIndex", "layoutIndex", "layout", "isFlexItem"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
397
397
  }
398
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: FlexLayoutSectionComponent, decorators: [{
398
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: FlexLayoutSectionComponent, decorators: [{
399
399
  type: Component,
400
400
  args: [{ selector: 'flex-layout-section-widget', template: `
401
401
  @if (containerType === 'div') {
@@ -429,7 +429,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
429
429
  }
430
430
  @if (options?.showErrors && options?.errorMessage) {
431
431
  <mat-error
432
- [innerHTML]="options?.errorMessage"></mat-error>
432
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
433
433
  }
434
434
  </div>
435
435
  }
@@ -439,7 +439,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
439
439
  [class]="options?.htmlClass || ''"
440
440
  [class.expandable]="options?.expandable && !expanded"
441
441
  [class.expanded]="options?.expandable && expanded"
442
- [disabled]="options?.readonly">
442
+ [disabled]="$safeNavigationMigration(options?.readonly)">
443
443
  @if (sectionTitle) {
444
444
  <legend
445
445
  [class]="'legend ' + (options?.labelHtmlClass || '')"
@@ -466,7 +466,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
466
466
  }
467
467
  @if (options?.showErrors && options?.errorMessage) {
468
468
  <mat-error
469
- [innerHTML]="options?.errorMessage"></mat-error>
469
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
470
470
  }
471
471
  </fieldset>
472
472
  }
@@ -486,7 +486,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
486
486
  }
487
487
  @if (expanded) {
488
488
  <mat-card-content>
489
- <fieldset [disabled]="options?.readonly">
489
+ <fieldset [disabled]="$safeNavigationMigration(options?.readonly)">
490
490
  @if (expanded) {
491
491
  <flex-layout-root-widget
492
492
  [layout]="layoutNode.items"
@@ -511,7 +511,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
511
511
  <mat-card-footer>
512
512
  @if (options?.showErrors && options?.errorMessage) {
513
513
  <mat-error
514
- [innerHTML]="options?.errorMessage"></mat-error>
514
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
515
515
  }
516
516
  </mat-card-footer>
517
517
  </mat-card>
@@ -531,7 +531,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
531
531
  }
532
532
  </mat-panel-title>
533
533
  </mat-expansion-panel-header>
534
- <fieldset [disabled]="options?.readonly">
534
+ <fieldset [disabled]="$safeNavigationMigration(options?.readonly)">
535
535
  @if (expanded) {
536
536
  <flex-layout-root-widget
537
537
  [layout]="layoutNode.items"
@@ -553,10 +553,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
553
553
  </fieldset>
554
554
  @if (options?.showErrors && options?.errorMessage) {
555
555
  <mat-error
556
- [innerHTML]="options?.errorMessage"></mat-error>
556
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
557
557
  }
558
558
  </mat-expansion-panel>
559
- }`, standalone: false, styles: ["fieldset{border:0;margin:0;padding:0}.legend{font-weight:700}.expandable>.legend:before{content:\"\\25b6\";padding-right:.3em}.expanded>.legend:before{content:\"\\25bc\";padding-right:.2em}\n"] }]
559
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["fieldset{border:0;margin:0;padding:0}.legend{font-weight:700}.expandable>.legend:before{content:\"\\25b6\";padding-right:.3em}.expanded>.legend:before{content:\"\\25bc\";padding-right:.2em}\n"] }]
560
560
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
561
561
  type: Input
562
562
  }], layoutIndex: [{
@@ -589,13 +589,13 @@ class MaterialAddReferenceComponent {
589
589
  return parent.layoutNode.add ||
590
590
  this.jsf.setArrayItemTitle(parent, this.layoutNode, this.itemCount);
591
591
  }
592
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialAddReferenceComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
593
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialAddReferenceComponent, isStandalone: false, selector: "material-add-reference-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
592
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialAddReferenceComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
593
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialAddReferenceComponent, isStandalone: false, selector: "material-add-reference-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
594
594
  <section [class]="options?.htmlClass || ''" align="end">
595
595
  @if (showAddButton) {
596
596
  <button mat-raised-button
597
597
  [color]="options?.color || 'accent'"
598
- [disabled]="options?.readonly"
598
+ [disabled]="$safeNavigationMigration(options?.readonly)"
599
599
  (click)="addItem($event)">
600
600
  @if (options?.icon) {
601
601
  <span [class]="options?.icon"></span>
@@ -607,7 +607,7 @@ class MaterialAddReferenceComponent {
607
607
  }
608
608
  </section>`, isInline: true, dependencies: [{ kind: "component", type: i2$1.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 }); }
609
609
  }
610
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialAddReferenceComponent, decorators: [{
610
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialAddReferenceComponent, decorators: [{
611
611
  type: Component,
612
612
  args: [{
613
613
  selector: 'material-add-reference-widget',
@@ -616,7 +616,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
616
616
  @if (showAddButton) {
617
617
  <button mat-raised-button
618
618
  [color]="options?.color || 'accent'"
619
- [disabled]="options?.readonly"
619
+ [disabled]="$safeNavigationMigration(options?.readonly)"
620
620
  (click)="addItem($event)">
621
621
  @if (options?.icon) {
622
622
  <span [class]="options?.icon"></span>
@@ -627,7 +627,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
627
627
  </button>
628
628
  }
629
629
  </section>`,
630
- changeDetection: ChangeDetectionStrategy.Default,
630
+ changeDetection: ChangeDetectionStrategy.Eager,
631
631
  standalone: false
632
632
  }]
633
633
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
@@ -663,29 +663,29 @@ class MaterialButtonComponent {
663
663
  this.jsf.updateValue(this, event.target.value);
664
664
  }
665
665
  }
666
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialButtonComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
667
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialButtonComponent, isStandalone: false, selector: "material-button-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
666
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialButtonComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
667
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialButtonComponent, isStandalone: false, selector: "material-button-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
668
668
  <div class="button-row" [class]="options?.htmlClass || ''">
669
669
  <button mat-raised-button
670
670
  [attr.readonly]="options?.readonly ? 'readonly' : null"
671
671
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
672
672
  [color]="options?.color || 'primary'"
673
673
  [disabled]="controlDisabled || options?.readonly"
674
- [id]="'control' + layoutNode?._id"
674
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
675
675
  [name]="controlName"
676
- [type]="layoutNode?.type"
676
+ [type]="$safeNavigationMigration(layoutNode?.type)"
677
677
  [value]="controlValue"
678
678
  (click)="updateValue($event)">
679
679
  @if (options?.icon) {
680
680
  <mat-icon class="mat-24">{{options?.icon}}</mat-icon>
681
681
  }
682
682
  @if (options?.title) {
683
- <span [innerHTML]="options?.title"></span>
683
+ <span [innerHTML]="$safeNavigationMigration(options?.title)"></span>
684
684
  }
685
685
  </button>
686
- </div>`, isInline: true, styles: ["button{margin-top:10px}\n"], dependencies: [{ kind: "component", type: i2$1.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: "component", type: i4$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
686
+ </div>`, isInline: true, styles: ["button{margin-top:10px}\n"], dependencies: [{ kind: "component", type: i2$1.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: "component", type: i4$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
687
687
  }
688
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialButtonComponent, decorators: [{
688
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialButtonComponent, decorators: [{
689
689
  type: Component,
690
690
  args: [{ selector: 'material-button-widget', template: `
691
691
  <div class="button-row" [class]="options?.htmlClass || ''">
@@ -694,19 +694,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
694
694
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
695
695
  [color]="options?.color || 'primary'"
696
696
  [disabled]="controlDisabled || options?.readonly"
697
- [id]="'control' + layoutNode?._id"
697
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
698
698
  [name]="controlName"
699
- [type]="layoutNode?.type"
699
+ [type]="$safeNavigationMigration(layoutNode?.type)"
700
700
  [value]="controlValue"
701
701
  (click)="updateValue($event)">
702
702
  @if (options?.icon) {
703
703
  <mat-icon class="mat-24">{{options?.icon}}</mat-icon>
704
704
  }
705
705
  @if (options?.title) {
706
- <span [innerHTML]="options?.title"></span>
706
+ <span [innerHTML]="$safeNavigationMigration(options?.title)"></span>
707
707
  }
708
708
  </button>
709
- </div>`, standalone: false, styles: ["button{margin-top:10px}\n"] }]
709
+ </div>`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["button{margin-top:10px}\n"] }]
710
710
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
711
711
  type: Input
712
712
  }], layoutIndex: [{
@@ -732,8 +732,8 @@ class MaterialButtonGroupComponent {
732
732
  this.options.showErrors = true;
733
733
  this.jsf.updateValue(this, value);
734
734
  }
735
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialButtonGroupComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
736
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialButtonGroupComponent, isStandalone: false, selector: "material-button-group-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
735
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialButtonGroupComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
736
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialButtonGroupComponent, isStandalone: false, selector: "material-button-group-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
737
737
  <div>
738
738
  @if (options?.title) {
739
739
  <div>
@@ -741,7 +741,7 @@ class MaterialButtonGroupComponent {
741
741
  [attr.for]="'control' + layoutNode?._id"
742
742
  [class]="options?.labelHtmlClass || ''"
743
743
  [style.display]="options?.notitle ? 'none' : ''"
744
- [innerHTML]="options?.title"></label>
744
+ [innerHTML]="$safeNavigationMigration(options?.title)"></label>
745
745
  </div>
746
746
  }
747
747
  <mat-button-toggle-group
@@ -754,20 +754,20 @@ class MaterialButtonGroupComponent {
754
754
  [vertical]="!!options.vertical">
755
755
  @for (radioItem of radiosList; track radioItem) {
756
756
  <mat-button-toggle
757
- [id]="'control' + layoutNode?._id + '/' + radioItem?.name"
758
- [value]="radioItem?.value"
759
- (click)="updateValue(radioItem?.value)">
760
- <span [innerHTML]="radioItem?.name"></span>
757
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id) + '/' + $safeNavigationMigration(radioItem?.name)"
758
+ [value]="$safeNavigationMigration(radioItem?.value)"
759
+ (click)="updateValue($safeNavigationMigration(radioItem?.value))">
760
+ <span [innerHTML]="$safeNavigationMigration(radioItem?.name)"></span>
761
761
  </mat-button-toggle>
762
762
  }
763
763
  </mat-button-toggle-group>
764
764
  @if (options?.showErrors && options?.errorMessage) {
765
765
  <mat-error
766
- [innerHTML]="options?.errorMessage"></mat-error>
766
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
767
767
  }
768
- </div>`, isInline: true, styles: ["mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$2.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "disabledInteractive", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i2$2.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled", "disabledInteractive"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }] }); }
768
+ </div>`, isInline: true, styles: ["mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$2.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "disabledInteractive", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i2$2.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled", "disabledInteractive"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
769
769
  }
770
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialButtonGroupComponent, decorators: [{
770
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialButtonGroupComponent, decorators: [{
771
771
  type: Component,
772
772
  args: [{ selector: 'material-button-group-widget', template: `
773
773
  <div>
@@ -777,7 +777,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
777
777
  [attr.for]="'control' + layoutNode?._id"
778
778
  [class]="options?.labelHtmlClass || ''"
779
779
  [style.display]="options?.notitle ? 'none' : ''"
780
- [innerHTML]="options?.title"></label>
780
+ [innerHTML]="$safeNavigationMigration(options?.title)"></label>
781
781
  </div>
782
782
  }
783
783
  <mat-button-toggle-group
@@ -790,18 +790,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
790
790
  [vertical]="!!options.vertical">
791
791
  @for (radioItem of radiosList; track radioItem) {
792
792
  <mat-button-toggle
793
- [id]="'control' + layoutNode?._id + '/' + radioItem?.name"
794
- [value]="radioItem?.value"
795
- (click)="updateValue(radioItem?.value)">
796
- <span [innerHTML]="radioItem?.name"></span>
793
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id) + '/' + $safeNavigationMigration(radioItem?.name)"
794
+ [value]="$safeNavigationMigration(radioItem?.value)"
795
+ (click)="updateValue($safeNavigationMigration(radioItem?.value))">
796
+ <span [innerHTML]="$safeNavigationMigration(radioItem?.name)"></span>
797
797
  </mat-button-toggle>
798
798
  }
799
799
  </mat-button-toggle-group>
800
800
  @if (options?.showErrors && options?.errorMessage) {
801
801
  <mat-error
802
- [innerHTML]="options?.errorMessage"></mat-error>
802
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
803
803
  }
804
- </div>`, standalone: false, styles: ["mat-error{font-size:75%}\n"] }]
804
+ </div>`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%}\n"] }]
805
805
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
806
806
  type: Input
807
807
  }], layoutIndex: [{
@@ -838,14 +838,14 @@ class MaterialCheckboxComponent {
838
838
  get isChecked() {
839
839
  return this.jsf.getFormControlValue(this) === this.trueValue;
840
840
  }
841
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialCheckboxComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
842
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialCheckboxComponent, isStandalone: false, selector: "material-checkbox-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
841
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialCheckboxComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
842
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialCheckboxComponent, isStandalone: false, selector: "material-checkbox-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
843
843
  @if (boundControl && !showSlideToggle) {
844
844
  <mat-checkbox
845
845
  [formControl]="formControl"
846
846
  align="left"
847
847
  [color]="options?.color || 'primary'"
848
- [id]="'control' + layoutNode?._id"
848
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
849
849
  labelPosition="after"
850
850
  [name]="controlName"
851
851
  (blur)="options.showErrors = true">
@@ -853,7 +853,7 @@ class MaterialCheckboxComponent {
853
853
  <span
854
854
  class="checkbox-name"
855
855
  [style.display]="options?.notitle ? 'none' : ''"
856
- [innerHTML]="options?.title"></span>
856
+ [innerHTML]="$safeNavigationMigration(options?.title)"></span>
857
857
  }
858
858
  </mat-checkbox>
859
859
  }
@@ -862,7 +862,7 @@ class MaterialCheckboxComponent {
862
862
  align="left"
863
863
  [color]="options?.color || 'primary'"
864
864
  [disabled]="controlDisabled || options?.readonly"
865
- [id]="'control' + layoutNode?._id"
865
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
866
866
  labelPosition="after"
867
867
  [name]="controlName"
868
868
  [checked]="isChecked"
@@ -872,7 +872,7 @@ class MaterialCheckboxComponent {
872
872
  <span
873
873
  class="checkbox-name"
874
874
  [style.display]="options?.notitle ? 'none' : ''"
875
- [innerHTML]="options?.title"></span>
875
+ [innerHTML]="$safeNavigationMigration(options?.title)"></span>
876
876
  }
877
877
  </mat-checkbox>
878
878
  }
@@ -881,7 +881,7 @@ class MaterialCheckboxComponent {
881
881
  [formControl]="formControl"
882
882
  align="left"
883
883
  [color]="options?.color || 'primary'"
884
- [id]="'control' + layoutNode?._id"
884
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
885
885
  labelPosition="after"
886
886
  [name]="controlName"
887
887
  (blur)="options.showErrors = true">
@@ -889,7 +889,7 @@ class MaterialCheckboxComponent {
889
889
  <span
890
890
  class="checkbox-name"
891
891
  [style.display]="options?.notitle ? 'none' : ''"
892
- [innerHTML]="options?.title"></span>
892
+ [innerHTML]="$safeNavigationMigration(options?.title)"></span>
893
893
  }
894
894
  </mat-slide-toggle>
895
895
  }
@@ -898,7 +898,7 @@ class MaterialCheckboxComponent {
898
898
  align="left"
899
899
  [color]="options?.color || 'primary'"
900
900
  [disabled]="controlDisabled || options?.readonly"
901
- [id]="'control' + layoutNode?._id"
901
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
902
902
  labelPosition="after"
903
903
  [name]="controlName"
904
904
  [checked]="isChecked"
@@ -908,16 +908,16 @@ class MaterialCheckboxComponent {
908
908
  <span
909
909
  class="checkbox-name"
910
910
  [style.display]="options?.notitle ? 'none' : ''"
911
- [innerHTML]="options?.title"></span>
911
+ [innerHTML]="$safeNavigationMigration(options?.title)"></span>
912
912
  }
913
913
  </mat-slide-toggle>
914
914
  }
915
915
  @if (options?.showErrors && options?.errorMessage) {
916
916
  <mat-error
917
- [innerHTML]="options?.errorMessage"></mat-error>
918
- }`, isInline: true, styles: [".checkbox-name{white-space:nowrap}mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }] }); }
917
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
918
+ }`, isInline: true, styles: [".checkbox-name{white-space:nowrap}mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "fullWidth", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
919
919
  }
920
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialCheckboxComponent, decorators: [{
920
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialCheckboxComponent, decorators: [{
921
921
  type: Component,
922
922
  args: [{ selector: 'material-checkbox-widget', template: `
923
923
  @if (boundControl && !showSlideToggle) {
@@ -925,7 +925,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
925
925
  [formControl]="formControl"
926
926
  align="left"
927
927
  [color]="options?.color || 'primary'"
928
- [id]="'control' + layoutNode?._id"
928
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
929
929
  labelPosition="after"
930
930
  [name]="controlName"
931
931
  (blur)="options.showErrors = true">
@@ -933,7 +933,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
933
933
  <span
934
934
  class="checkbox-name"
935
935
  [style.display]="options?.notitle ? 'none' : ''"
936
- [innerHTML]="options?.title"></span>
936
+ [innerHTML]="$safeNavigationMigration(options?.title)"></span>
937
937
  }
938
938
  </mat-checkbox>
939
939
  }
@@ -942,7 +942,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
942
942
  align="left"
943
943
  [color]="options?.color || 'primary'"
944
944
  [disabled]="controlDisabled || options?.readonly"
945
- [id]="'control' + layoutNode?._id"
945
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
946
946
  labelPosition="after"
947
947
  [name]="controlName"
948
948
  [checked]="isChecked"
@@ -952,7 +952,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
952
952
  <span
953
953
  class="checkbox-name"
954
954
  [style.display]="options?.notitle ? 'none' : ''"
955
- [innerHTML]="options?.title"></span>
955
+ [innerHTML]="$safeNavigationMigration(options?.title)"></span>
956
956
  }
957
957
  </mat-checkbox>
958
958
  }
@@ -961,7 +961,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
961
961
  [formControl]="formControl"
962
962
  align="left"
963
963
  [color]="options?.color || 'primary'"
964
- [id]="'control' + layoutNode?._id"
964
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
965
965
  labelPosition="after"
966
966
  [name]="controlName"
967
967
  (blur)="options.showErrors = true">
@@ -969,7 +969,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
969
969
  <span
970
970
  class="checkbox-name"
971
971
  [style.display]="options?.notitle ? 'none' : ''"
972
- [innerHTML]="options?.title"></span>
972
+ [innerHTML]="$safeNavigationMigration(options?.title)"></span>
973
973
  }
974
974
  </mat-slide-toggle>
975
975
  }
@@ -978,7 +978,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
978
978
  align="left"
979
979
  [color]="options?.color || 'primary'"
980
980
  [disabled]="controlDisabled || options?.readonly"
981
- [id]="'control' + layoutNode?._id"
981
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
982
982
  labelPosition="after"
983
983
  [name]="controlName"
984
984
  [checked]="isChecked"
@@ -988,14 +988,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
988
988
  <span
989
989
  class="checkbox-name"
990
990
  [style.display]="options?.notitle ? 'none' : ''"
991
- [innerHTML]="options?.title"></span>
991
+ [innerHTML]="$safeNavigationMigration(options?.title)"></span>
992
992
  }
993
993
  </mat-slide-toggle>
994
994
  }
995
995
  @if (options?.showErrors && options?.errorMessage) {
996
996
  <mat-error
997
- [innerHTML]="options?.errorMessage"></mat-error>
998
- }`, standalone: false, styles: [".checkbox-name{white-space:nowrap}mat-error{font-size:75%}\n"] }]
997
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
998
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: [".checkbox-name{white-space:nowrap}mat-error{font-size:75%}\n"] }]
999
999
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
1000
1000
  type: Input
1001
1001
  }], layoutIndex: [{
@@ -1045,25 +1045,25 @@ class MaterialCheckboxesComponent {
1045
1045
  this.checkboxList.forEach(t => t.checked = event.checked);
1046
1046
  this.updateValue();
1047
1047
  }
1048
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialCheckboxesComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1049
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialCheckboxesComponent, isStandalone: false, selector: "material-checkboxes-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1048
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialCheckboxesComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1049
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialCheckboxesComponent, isStandalone: false, selector: "material-checkboxes-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1050
1050
  <div>
1051
1051
  <mat-checkbox type="checkbox"
1052
1052
  [checked]="allChecked"
1053
1053
  [color]="options?.color || 'primary'"
1054
1054
  [disabled]="controlDisabled || options?.readonly"
1055
1055
  [indeterminate]="someChecked"
1056
- [name]="options?.name"
1056
+ [name]="$safeNavigationMigration(options?.name)"
1057
1057
  (blur)="options.showErrors = true"
1058
1058
  (change)="updateAllValues($event)">
1059
- <span class="checkbox-name" [innerHTML]="options?.name"></span>
1059
+ <span class="checkbox-name" [innerHTML]="$safeNavigationMigration(options?.name)"></span>
1060
1060
  </mat-checkbox>
1061
1061
  @if (options?.title) {
1062
1062
  <label
1063
1063
  class="title"
1064
1064
  [class]="options?.labelHtmlClass || ''"
1065
1065
  [style.display]="options?.notitle ? 'none' : ''"
1066
- [innerHTML]="options?.title"></label>
1066
+ [innerHTML]="$safeNavigationMigration(options?.title)"></label>
1067
1067
  }
1068
1068
  <ul class="checkbox-list" [class.horizontal-list]="horizontalList">
1069
1069
  @for (checkboxItem of checkboxList; track checkboxItem) {
@@ -1073,21 +1073,21 @@ class MaterialCheckboxesComponent {
1073
1073
  [(ngModel)]="checkboxItem.checked"
1074
1074
  [color]="options?.color || 'primary'"
1075
1075
  [disabled]="controlDisabled || options?.readonly"
1076
- [name]="checkboxItem?.name"
1076
+ [name]="$safeNavigationMigration(checkboxItem?.name)"
1077
1077
  (blur)="options.showErrors = true"
1078
1078
  (change)="updateValue()">
1079
- <span class="checkbox-name" [innerHTML]="checkboxItem?.name"></span>
1079
+ <span class="checkbox-name" [innerHTML]="$safeNavigationMigration(checkboxItem?.name)"></span>
1080
1080
  </mat-checkbox>
1081
1081
  </li>
1082
1082
  }
1083
1083
  </ul>
1084
1084
  @if (options?.showErrors && options?.errorMessage) {
1085
1085
  <mat-error
1086
- [innerHTML]="options?.errorMessage"></mat-error>
1086
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1087
1087
  }
1088
- </div>`, isInline: true, styles: [".title{font-weight:700}.checkbox-list{list-style-type:none}.horizontal-list>li{display:inline-block;margin-right:10px;zoom:1}.checkbox-name{white-space:nowrap}mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }] }); }
1088
+ </div>`, isInline: true, styles: [".title{font-weight:700}.checkbox-list{list-style-type:none}.horizontal-list>li{display:inline-block;margin-right:10px;zoom:1}.checkbox-name{white-space:nowrap}mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
1089
1089
  }
1090
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialCheckboxesComponent, decorators: [{
1090
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialCheckboxesComponent, decorators: [{
1091
1091
  type: Component,
1092
1092
  args: [{ selector: 'material-checkboxes-widget', template: `
1093
1093
  <div>
@@ -1096,17 +1096,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1096
1096
  [color]="options?.color || 'primary'"
1097
1097
  [disabled]="controlDisabled || options?.readonly"
1098
1098
  [indeterminate]="someChecked"
1099
- [name]="options?.name"
1099
+ [name]="$safeNavigationMigration(options?.name)"
1100
1100
  (blur)="options.showErrors = true"
1101
1101
  (change)="updateAllValues($event)">
1102
- <span class="checkbox-name" [innerHTML]="options?.name"></span>
1102
+ <span class="checkbox-name" [innerHTML]="$safeNavigationMigration(options?.name)"></span>
1103
1103
  </mat-checkbox>
1104
1104
  @if (options?.title) {
1105
1105
  <label
1106
1106
  class="title"
1107
1107
  [class]="options?.labelHtmlClass || ''"
1108
1108
  [style.display]="options?.notitle ? 'none' : ''"
1109
- [innerHTML]="options?.title"></label>
1109
+ [innerHTML]="$safeNavigationMigration(options?.title)"></label>
1110
1110
  }
1111
1111
  <ul class="checkbox-list" [class.horizontal-list]="horizontalList">
1112
1112
  @for (checkboxItem of checkboxList; track checkboxItem) {
@@ -1116,19 +1116,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1116
1116
  [(ngModel)]="checkboxItem.checked"
1117
1117
  [color]="options?.color || 'primary'"
1118
1118
  [disabled]="controlDisabled || options?.readonly"
1119
- [name]="checkboxItem?.name"
1119
+ [name]="$safeNavigationMigration(checkboxItem?.name)"
1120
1120
  (blur)="options.showErrors = true"
1121
1121
  (change)="updateValue()">
1122
- <span class="checkbox-name" [innerHTML]="checkboxItem?.name"></span>
1122
+ <span class="checkbox-name" [innerHTML]="$safeNavigationMigration(checkboxItem?.name)"></span>
1123
1123
  </mat-checkbox>
1124
1124
  </li>
1125
1125
  }
1126
1126
  </ul>
1127
1127
  @if (options?.showErrors && options?.errorMessage) {
1128
1128
  <mat-error
1129
- [innerHTML]="options?.errorMessage"></mat-error>
1129
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1130
1130
  }
1131
- </div>`, standalone: false, styles: [".title{font-weight:700}.checkbox-list{list-style-type:none}.horizontal-list>li{display:inline-block;margin-right:10px;zoom:1}.checkbox-name{white-space:nowrap}mat-error{font-size:75%}\n"] }]
1131
+ </div>`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: [".title{font-weight:700}.checkbox-list{list-style-type:none}.horizontal-list>li{display:inline-block;margin-right:10px;zoom:1}.checkbox-name{white-space:nowrap}mat-error{font-size:75%}\n"] }]
1132
1132
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
1133
1133
  type: Input
1134
1134
  }], layoutIndex: [{
@@ -1165,8 +1165,8 @@ class MaterialChipListComponent {
1165
1165
  syncFormArray() {
1166
1166
  this.jsf.updateArrayCheckboxList(this, this.tags.map(value => ({ checked: true, value })));
1167
1167
  }
1168
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialChipListComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1169
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialChipListComponent, isStandalone: false, selector: "material-chip-list-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1168
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialChipListComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1169
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialChipListComponent, isStandalone: false, selector: "material-chip-list-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1170
1170
  <mat-form-field
1171
1171
  [appearance]="options?.appearance || 'fill'"
1172
1172
  [class]="options?.htmlClass || ''"
@@ -1195,15 +1195,15 @@ class MaterialChipListComponent {
1195
1195
  (matChipInputTokenEnd)="add($event)">
1196
1196
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1197
1197
  <mat-hint
1198
- align="end" [innerHTML]="options?.description"></mat-hint>
1198
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
1199
1199
  }
1200
1200
  </mat-form-field>
1201
1201
  @if (options?.showErrors && options?.errorMessage) {
1202
1202
  <mat-error
1203
- [innerHTML]="options?.errorMessage"></mat-error>
1204
- }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"], dependencies: [{ kind: "component", type: i2$4.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i2$4.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled", "readonly", "matChipInputDisabledInteractive"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i2$4.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i2$4.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
1203
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1204
+ }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"], dependencies: [{ kind: "component", type: i2$4.MatChipGrid, selector: "mat-chip-grid", inputs: ["disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i2$4.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled", "readonly", "matChipInputDisabledInteractive"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i2$4.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i2$4.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["editable"], outputs: ["edited"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
1205
1205
  }
1206
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialChipListComponent, decorators: [{
1206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialChipListComponent, decorators: [{
1207
1207
  type: Component,
1208
1208
  args: [{ selector: 'material-chip-list-widget', template: `
1209
1209
  <mat-form-field
@@ -1234,13 +1234,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1234
1234
  (matChipInputTokenEnd)="add($event)">
1235
1235
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1236
1236
  <mat-hint
1237
- align="end" [innerHTML]="options?.description"></mat-hint>
1237
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
1238
1238
  }
1239
1239
  </mat-form-field>
1240
1240
  @if (options?.showErrors && options?.errorMessage) {
1241
1241
  <mat-error
1242
- [innerHTML]="options?.errorMessage"></mat-error>
1243
- }`, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"] }]
1242
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1243
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"] }]
1244
1244
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
1245
1245
  type: Input
1246
1246
  }], layoutIndex: [{
@@ -1264,8 +1264,8 @@ class MaterialDatepickerComponent {
1264
1264
  this.options.description = this.options.placeholder;
1265
1265
  }
1266
1266
  }
1267
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDatepickerComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1268
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialDatepickerComponent, isStandalone: false, selector: "material-datepicker-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1267
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDatepickerComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1268
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialDatepickerComponent, isStandalone: false, selector: "material-datepicker-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1269
1269
  <mat-form-field [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
1270
1270
  [class]="options?.htmlClass || ''"
1271
1271
  [floatLabel]="options?.floatLabel || matFormFieldDefaultOptions?.floatLabel || 'auto'"
@@ -1284,14 +1284,14 @@ class MaterialDatepickerComponent {
1284
1284
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
1285
1285
  [attr.list]="'control' + layoutNode?._id + 'Autocomplete'"
1286
1286
  [attr.readonly]="options?.readonly ? 'readonly' : null"
1287
- [id]="'control' + layoutNode?._id"
1288
- [max]="options?.maximum"
1287
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1288
+ [max]="$safeNavigationMigration(options?.maximum)"
1289
1289
  [matDatepicker]="picker"
1290
- [min]="options?.minimum"
1290
+ [min]="$safeNavigationMigration(options?.minimum)"
1291
1291
  [name]="controlName"
1292
- [placeholder]="options?.title"
1293
- [readonly]="options?.readonly"
1294
- [required]="options?.required"
1292
+ [placeholder]="$safeNavigationMigration(options?.title)"
1293
+ [readonly]="$safeNavigationMigration(options?.readonly)"
1294
+ [required]="$safeNavigationMigration(options?.required)"
1295
1295
  [style.width]="'100%'"
1296
1296
  (blur)="options.showErrors = true"
1297
1297
  >
@@ -1302,15 +1302,15 @@ class MaterialDatepickerComponent {
1302
1302
  [attr.list]="'control' + layoutNode?._id + 'Autocomplete'"
1303
1303
  [attr.readonly]="options?.readonly ? 'readonly' : null"
1304
1304
  [disabled]="controlDisabled || options?.readonly"
1305
- [id]="'control' + layoutNode?._id"
1306
- [max]="options?.maximum"
1305
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1306
+ [max]="$safeNavigationMigration(options?.maximum)"
1307
1307
  [matDatepicker]="picker"
1308
- [min]="options?.minimum"
1308
+ [min]="$safeNavigationMigration(options?.minimum)"
1309
1309
  [name]="controlName"
1310
- [placeholder]="options?.title"
1311
- [required]="options?.required"
1310
+ [placeholder]="$safeNavigationMigration(options?.title)"
1311
+ [required]="$safeNavigationMigration(options?.required)"
1312
1312
  [style.width]="'100%'"
1313
- [readonly]="options?.readonly"
1313
+ [readonly]="$safeNavigationMigration(options?.readonly)"
1314
1314
  (blur)="options.showErrors = true"
1315
1315
  >
1316
1316
  }
@@ -1320,17 +1320,17 @@ class MaterialDatepickerComponent {
1320
1320
  }
1321
1321
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1322
1322
  <mat-hint
1323
- align="end" [innerHTML]="options?.description"></mat-hint>
1323
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
1324
1324
  }
1325
1325
  <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
1326
1326
  </mat-form-field>
1327
1327
  <mat-datepicker #picker ></mat-datepicker>
1328
1328
  @if (options?.showErrors && options?.errorMessage) {
1329
1329
  <mat-error
1330
- [innerHTML]="options?.errorMessage"></mat-error>
1331
- }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$2.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i3$2.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i3$2.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
1330
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1331
+ }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$2.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i3$2.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i3$2.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
1332
1332
  }
1333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDatepickerComponent, decorators: [{
1333
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDatepickerComponent, decorators: [{
1334
1334
  type: Component,
1335
1335
  args: [{ selector: 'material-datepicker-widget', template: `
1336
1336
  <mat-form-field [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
@@ -1351,14 +1351,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1351
1351
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
1352
1352
  [attr.list]="'control' + layoutNode?._id + 'Autocomplete'"
1353
1353
  [attr.readonly]="options?.readonly ? 'readonly' : null"
1354
- [id]="'control' + layoutNode?._id"
1355
- [max]="options?.maximum"
1354
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1355
+ [max]="$safeNavigationMigration(options?.maximum)"
1356
1356
  [matDatepicker]="picker"
1357
- [min]="options?.minimum"
1357
+ [min]="$safeNavigationMigration(options?.minimum)"
1358
1358
  [name]="controlName"
1359
- [placeholder]="options?.title"
1360
- [readonly]="options?.readonly"
1361
- [required]="options?.required"
1359
+ [placeholder]="$safeNavigationMigration(options?.title)"
1360
+ [readonly]="$safeNavigationMigration(options?.readonly)"
1361
+ [required]="$safeNavigationMigration(options?.required)"
1362
1362
  [style.width]="'100%'"
1363
1363
  (blur)="options.showErrors = true"
1364
1364
  >
@@ -1369,15 +1369,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1369
1369
  [attr.list]="'control' + layoutNode?._id + 'Autocomplete'"
1370
1370
  [attr.readonly]="options?.readonly ? 'readonly' : null"
1371
1371
  [disabled]="controlDisabled || options?.readonly"
1372
- [id]="'control' + layoutNode?._id"
1373
- [max]="options?.maximum"
1372
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1373
+ [max]="$safeNavigationMigration(options?.maximum)"
1374
1374
  [matDatepicker]="picker"
1375
- [min]="options?.minimum"
1375
+ [min]="$safeNavigationMigration(options?.minimum)"
1376
1376
  [name]="controlName"
1377
- [placeholder]="options?.title"
1378
- [required]="options?.required"
1377
+ [placeholder]="$safeNavigationMigration(options?.title)"
1378
+ [required]="$safeNavigationMigration(options?.required)"
1379
1379
  [style.width]="'100%'"
1380
- [readonly]="options?.readonly"
1380
+ [readonly]="$safeNavigationMigration(options?.readonly)"
1381
1381
  (blur)="options.showErrors = true"
1382
1382
  >
1383
1383
  }
@@ -1387,15 +1387,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1387
1387
  }
1388
1388
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1389
1389
  <mat-hint
1390
- align="end" [innerHTML]="options?.description"></mat-hint>
1390
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
1391
1391
  }
1392
1392
  <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
1393
1393
  </mat-form-field>
1394
1394
  <mat-datepicker #picker ></mat-datepicker>
1395
1395
  @if (options?.showErrors && options?.errorMessage) {
1396
1396
  <mat-error
1397
- [innerHTML]="options?.errorMessage"></mat-error>
1398
- }`, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
1397
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1398
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
1399
1399
  }], ctorParameters: () => [{ type: undefined, decorators: [{
1400
1400
  type: Inject,
1401
1401
  args: [MAT_FORM_FIELD_DEFAULT_OPTIONS]
@@ -1491,12 +1491,12 @@ class MaterialDesignFrameworkComponent {
1491
1491
  removeItem() {
1492
1492
  this.jsf.removeItem(this);
1493
1493
  }
1494
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDesignFrameworkComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1495
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialDesignFrameworkComponent, isStandalone: false, selector: "material-design-framework", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, usesOnChanges: true, ngImport: i0, template: "<div\n [class.array-item]=\"widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref'\"\n [orderable]=\"isOrderable\"\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\">\n @if (showRemoveButton) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"18\" width=\"18\" viewBox=\"0 0 24 24\"\n class=\"close-button\"\n (click)=\"removeItem()\">\n <path\n d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z\"/>\n </svg>\n }\n <select-widget-widget\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\"></select-widget-widget>\n</div>\n@if (widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref') {\n <div class=\"spacer\"></div>\n}\n", styles: [".array-item{border-radius:2px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;padding:6px;position:relative;transition:all .28s cubic-bezier(.4,0,.2,1)}.close-button{cursor:pointer;position:absolute;top:6px;right:6px;fill:#0006;visibility:hidden;z-index:500}.close-button:hover{fill:#000c}.array-item:hover>.close-button{visibility:visible}.spacer{margin:6px 0}[draggable=true]:hover{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:move;z-index:10}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}\n"], dependencies: [{ kind: "component", type: i1.SelectWidgetComponent, selector: "select-widget-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }, { kind: "directive", type: i1.OrderableDirective, selector: "[orderable]", inputs: ["orderable", "layoutNode", "layoutIndex", "dataIndex"] }] }); }
1494
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDesignFrameworkComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1495
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialDesignFrameworkComponent, isStandalone: false, selector: "material-design-framework", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, usesOnChanges: true, ngImport: i0, template: "<div\n [class.array-item]=\"widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref'\"\n [orderable]=\"isOrderable\"\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\">\n @if (showRemoveButton) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"18\" width=\"18\" viewBox=\"0 0 24 24\"\n class=\"close-button\"\n (click)=\"removeItem()\">\n <path\n d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z\"/>\n </svg>\n }\n <select-widget-widget\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\"></select-widget-widget>\n</div>\n@if (widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref') {\n <div class=\"spacer\"></div>\n}\n", styles: [".array-item{border-radius:2px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;padding:6px;position:relative;transition:all .28s cubic-bezier(.4,0,.2,1)}.close-button{cursor:pointer;position:absolute;top:6px;right:6px;fill:#0006;visibility:hidden;z-index:500}.close-button:hover{fill:#000c}.array-item:hover>.close-button{visibility:visible}.spacer{margin:6px 0}[draggable=true]:hover{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:move;z-index:10}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}\n"], dependencies: [{ kind: "component", type: i1.SelectWidgetComponent, selector: "select-widget-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }, { kind: "directive", type: i1.OrderableDirective, selector: "[orderable]", inputs: ["orderable", "layoutNode", "layoutIndex", "dataIndex"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
1496
1496
  }
1497
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDesignFrameworkComponent, decorators: [{
1497
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDesignFrameworkComponent, decorators: [{
1498
1498
  type: Component,
1499
- args: [{ selector: 'material-design-framework', standalone: false, template: "<div\n [class.array-item]=\"widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref'\"\n [orderable]=\"isOrderable\"\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\">\n @if (showRemoveButton) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"18\" width=\"18\" viewBox=\"0 0 24 24\"\n class=\"close-button\"\n (click)=\"removeItem()\">\n <path\n d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z\"/>\n </svg>\n }\n <select-widget-widget\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\"></select-widget-widget>\n</div>\n@if (widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref') {\n <div class=\"spacer\"></div>\n}\n", styles: [".array-item{border-radius:2px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;padding:6px;position:relative;transition:all .28s cubic-bezier(.4,0,.2,1)}.close-button{cursor:pointer;position:absolute;top:6px;right:6px;fill:#0006;visibility:hidden;z-index:500}.close-button:hover{fill:#000c}.array-item:hover>.close-button{visibility:visible}.spacer{margin:6px 0}[draggable=true]:hover{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:move;z-index:10}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}\n"] }]
1499
+ args: [{ selector: 'material-design-framework', changeDetection: ChangeDetectionStrategy.Eager, standalone: false, template: "<div\n [class.array-item]=\"widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref'\"\n [orderable]=\"isOrderable\"\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\">\n @if (showRemoveButton) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"18\" width=\"18\" viewBox=\"0 0 24 24\"\n class=\"close-button\"\n (click)=\"removeItem()\">\n <path\n d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z\"/>\n </svg>\n }\n <select-widget-widget\n [dataIndex]=\"dataIndex\"\n [layoutIndex]=\"layoutIndex\"\n [layoutNode]=\"widgetLayoutNode\"></select-widget-widget>\n</div>\n@if (widgetLayoutNode?.arrayItem && widgetLayoutNode?.type !== '$ref') {\n <div class=\"spacer\"></div>\n}\n", styles: [".array-item{border-radius:2px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;padding:6px;position:relative;transition:all .28s cubic-bezier(.4,0,.2,1)}.close-button{cursor:pointer;position:absolute;top:6px;right:6px;fill:#0006;visibility:hidden;z-index:500}.close-button:hover{fill:#000c}.array-item:hover>.close-button{visibility:visible}.spacer{margin:6px 0}[draggable=true]:hover{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:move;z-index:10}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}\n"] }]
1500
1500
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
1501
1501
  type: Input
1502
1502
  }], layoutIndex: [{
@@ -1528,8 +1528,8 @@ class MaterialFileComponent {
1528
1528
  };
1529
1529
  reader.readAsDataURL(file);
1530
1530
  }
1531
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialFileComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1532
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialFileComponent, isStandalone: false, selector: "material-file-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1531
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialFileComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1532
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialFileComponent, isStandalone: false, selector: "material-file-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1533
1533
  <div [class]="options?.htmlClass || ''" [style.width]="'100%'">
1534
1534
  @if (!options?.notitle) {
1535
1535
  <label
@@ -1550,16 +1550,16 @@ class MaterialFileComponent {
1550
1550
  </div>
1551
1551
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1552
1552
  <mat-hint
1553
- [innerHTML]="options?.description"
1553
+ [innerHTML]="$safeNavigationMigration(options?.description)"
1554
1554
  style="display:block; font-size:75%; color:rgba(0,0,0,.6); margin-top:4px;"></mat-hint>
1555
1555
  }
1556
1556
  </div>
1557
1557
  @if (options?.showErrors && options?.errorMessage) {
1558
1558
  <mat-error
1559
- [innerHTML]="options?.errorMessage"></mat-error>
1560
- }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"], dependencies: [{ kind: "component", type: i2$1.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: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
1559
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1560
+ }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"], dependencies: [{ kind: "component", type: i2$1.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: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
1561
1561
  }
1562
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialFileComponent, decorators: [{
1562
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialFileComponent, decorators: [{
1563
1563
  type: Component,
1564
1564
  args: [{ selector: 'material-file-widget', template: `
1565
1565
  <div [class]="options?.htmlClass || ''" [style.width]="'100%'">
@@ -1582,14 +1582,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1582
1582
  </div>
1583
1583
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1584
1584
  <mat-hint
1585
- [innerHTML]="options?.description"
1585
+ [innerHTML]="$safeNavigationMigration(options?.description)"
1586
1586
  style="display:block; font-size:75%; color:rgba(0,0,0,.6); margin-top:4px;"></mat-hint>
1587
1587
  }
1588
1588
  </div>
1589
1589
  @if (options?.showErrors && options?.errorMessage) {
1590
1590
  <mat-error
1591
- [innerHTML]="options?.errorMessage"></mat-error>
1592
- }`, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"] }]
1591
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1592
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"] }]
1593
1593
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
1594
1594
  type: Input
1595
1595
  }], layoutIndex: [{
@@ -1616,8 +1616,8 @@ class MaterialInputComponent {
1616
1616
  updateValue(event) {
1617
1617
  this.jsf.updateValue(this, event.target.value);
1618
1618
  }
1619
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialInputComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1620
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialInputComponent, isStandalone: false, selector: "material-input-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1619
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialInputComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1620
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialInputComponent, isStandalone: false, selector: "material-input-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1621
1621
  <mat-form-field [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
1622
1622
  [class]="options?.htmlClass || ''"
1623
1623
  [floatLabel]="options?.floatLabel || matFormFieldDefaultOptions?.floatLabel || 'auto'"
@@ -1639,12 +1639,12 @@ class MaterialInputComponent {
1639
1639
  [attr.minlength]="options?.minLength"
1640
1640
  [attr.pattern]="options?.pattern"
1641
1641
  [readonly]="options?.readonly ? 'readonly' : null"
1642
- [id]="'control' + layoutNode?._id"
1642
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1643
1643
  [name]="controlName"
1644
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
1645
- [required]="options?.required"
1644
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
1645
+ [required]="$safeNavigationMigration(options?.required)"
1646
1646
  [style.width]="'100%'"
1647
- [type]="layoutNode?.type"
1647
+ [type]="$safeNavigationMigration(layoutNode?.type)"
1648
1648
  (blur)="options.showErrors = true">
1649
1649
  }
1650
1650
  @if (!boundControl) {
@@ -1655,13 +1655,13 @@ class MaterialInputComponent {
1655
1655
  [attr.minlength]="options?.minLength"
1656
1656
  [attr.pattern]="options?.pattern"
1657
1657
  [disabled]="controlDisabled"
1658
- [id]="'control' + layoutNode?._id"
1658
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1659
1659
  [name]="controlName"
1660
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
1660
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
1661
1661
  [readonly]="options?.readonly ? 'readonly' : null"
1662
- [required]="options?.required"
1662
+ [required]="$safeNavigationMigration(options?.required)"
1663
1663
  [style.width]="'100%'"
1664
- [type]="layoutNode?.type"
1664
+ [type]="$safeNavigationMigration(layoutNode?.type)"
1665
1665
  [value]="controlValue"
1666
1666
  (input)="updateValue($event)"
1667
1667
  (blur)="options.showErrors = true">
@@ -1672,7 +1672,7 @@ class MaterialInputComponent {
1672
1672
  }
1673
1673
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1674
1674
  <mat-hint
1675
- align="end" [innerHTML]="options?.description"></mat-hint>
1675
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
1676
1676
  }
1677
1677
  @if (options?.typeahead?.source) {
1678
1678
  <mat-autocomplete>
@@ -1685,10 +1685,10 @@ class MaterialInputComponent {
1685
1685
  </mat-form-field>
1686
1686
  @if (options?.showErrors && options?.errorMessage) {
1687
1687
  <mat-error
1688
- [innerHTML]="options?.errorMessage"></mat-error>
1689
- }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i3$3.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
1688
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1689
+ }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i3$3.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
1690
1690
  }
1691
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialInputComponent, decorators: [{
1691
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialInputComponent, decorators: [{
1692
1692
  type: Component,
1693
1693
  args: [{ selector: 'material-input-widget', template: `
1694
1694
  <mat-form-field [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
@@ -1712,12 +1712,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1712
1712
  [attr.minlength]="options?.minLength"
1713
1713
  [attr.pattern]="options?.pattern"
1714
1714
  [readonly]="options?.readonly ? 'readonly' : null"
1715
- [id]="'control' + layoutNode?._id"
1715
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1716
1716
  [name]="controlName"
1717
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
1718
- [required]="options?.required"
1717
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
1718
+ [required]="$safeNavigationMigration(options?.required)"
1719
1719
  [style.width]="'100%'"
1720
- [type]="layoutNode?.type"
1720
+ [type]="$safeNavigationMigration(layoutNode?.type)"
1721
1721
  (blur)="options.showErrors = true">
1722
1722
  }
1723
1723
  @if (!boundControl) {
@@ -1728,13 +1728,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1728
1728
  [attr.minlength]="options?.minLength"
1729
1729
  [attr.pattern]="options?.pattern"
1730
1730
  [disabled]="controlDisabled"
1731
- [id]="'control' + layoutNode?._id"
1731
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1732
1732
  [name]="controlName"
1733
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
1733
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
1734
1734
  [readonly]="options?.readonly ? 'readonly' : null"
1735
- [required]="options?.required"
1735
+ [required]="$safeNavigationMigration(options?.required)"
1736
1736
  [style.width]="'100%'"
1737
- [type]="layoutNode?.type"
1737
+ [type]="$safeNavigationMigration(layoutNode?.type)"
1738
1738
  [value]="controlValue"
1739
1739
  (input)="updateValue($event)"
1740
1740
  (blur)="options.showErrors = true">
@@ -1745,7 +1745,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1745
1745
  }
1746
1746
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1747
1747
  <mat-hint
1748
- align="end" [innerHTML]="options?.description"></mat-hint>
1748
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
1749
1749
  }
1750
1750
  @if (options?.typeahead?.source) {
1751
1751
  <mat-autocomplete>
@@ -1758,8 +1758,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1758
1758
  </mat-form-field>
1759
1759
  @if (options?.showErrors && options?.errorMessage) {
1760
1760
  <mat-error
1761
- [innerHTML]="options?.errorMessage"></mat-error>
1762
- }`, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
1761
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1762
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
1763
1763
  }], ctorParameters: () => [{ type: undefined, decorators: [{
1764
1764
  type: Inject,
1765
1765
  args: [MAT_FORM_FIELD_DEFAULT_OPTIONS]
@@ -1799,8 +1799,8 @@ class MaterialNumberComponent {
1799
1799
  updateValue(event) {
1800
1800
  this.jsf.updateValue(this, event.target.value);
1801
1801
  }
1802
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialNumberComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1803
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialNumberComponent, isStandalone: false, selector: "material-number-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1802
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialNumberComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
1803
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialNumberComponent, isStandalone: false, selector: "material-number-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
1804
1804
  <mat-form-field [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
1805
1805
  [class]="options?.htmlClass || ''"
1806
1806
  [floatLabel]="options?.floatLabel || matFormFieldDefaultOptions?.floatLabel || 'auto'"
@@ -1820,11 +1820,11 @@ class MaterialNumberComponent {
1820
1820
  [attr.max]="maxValue"
1821
1821
  [attr.min]="minValue"
1822
1822
  [attr.step]="options?.multipleOf || options?.step || 'any'"
1823
- [id]="'control' + layoutNode?._id"
1823
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1824
1824
  [name]="controlName"
1825
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
1825
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
1826
1826
  [readonly]="options?.readonly ? 'readonly' : null"
1827
- [required]="options?.required"
1827
+ [required]="$safeNavigationMigration(options?.required)"
1828
1828
  [style.width]="'100%'"
1829
1829
  [type]="'number'"
1830
1830
  (blur)="options.showErrors = true">
@@ -1836,11 +1836,11 @@ class MaterialNumberComponent {
1836
1836
  [attr.min]="minValue"
1837
1837
  [attr.step]="options?.multipleOf || options?.step || 'any'"
1838
1838
  [disabled]="controlDisabled"
1839
- [id]="'control' + layoutNode?._id"
1839
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1840
1840
  [name]="controlName"
1841
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
1841
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
1842
1842
  [readonly]="options?.readonly ? 'readonly' : null"
1843
- [required]="options?.required"
1843
+ [required]="$safeNavigationMigration(options?.required)"
1844
1844
  [style.width]="'100%'"
1845
1845
  [type]="'number'"
1846
1846
  [value]="controlValue"
@@ -1857,15 +1857,15 @@ class MaterialNumberComponent {
1857
1857
  }
1858
1858
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1859
1859
  <mat-hint
1860
- align="end" [innerHTML]="options?.description"></mat-hint>
1860
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
1861
1861
  }
1862
1862
  </mat-form-field>
1863
1863
  @if (options?.showErrors && options?.errorMessage) {
1864
1864
  <mat-error
1865
- [innerHTML]="options?.errorMessage"></mat-error>
1866
- }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
1865
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1866
+ }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
1867
1867
  }
1868
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialNumberComponent, decorators: [{
1868
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialNumberComponent, decorators: [{
1869
1869
  type: Component,
1870
1870
  args: [{ selector: 'material-number-widget', template: `
1871
1871
  <mat-form-field [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
@@ -1887,11 +1887,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1887
1887
  [attr.max]="maxValue"
1888
1888
  [attr.min]="minValue"
1889
1889
  [attr.step]="options?.multipleOf || options?.step || 'any'"
1890
- [id]="'control' + layoutNode?._id"
1890
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1891
1891
  [name]="controlName"
1892
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
1892
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
1893
1893
  [readonly]="options?.readonly ? 'readonly' : null"
1894
- [required]="options?.required"
1894
+ [required]="$safeNavigationMigration(options?.required)"
1895
1895
  [style.width]="'100%'"
1896
1896
  [type]="'number'"
1897
1897
  (blur)="options.showErrors = true">
@@ -1903,11 +1903,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1903
1903
  [attr.min]="minValue"
1904
1904
  [attr.step]="options?.multipleOf || options?.step || 'any'"
1905
1905
  [disabled]="controlDisabled"
1906
- [id]="'control' + layoutNode?._id"
1906
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
1907
1907
  [name]="controlName"
1908
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
1908
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
1909
1909
  [readonly]="options?.readonly ? 'readonly' : null"
1910
- [required]="options?.required"
1910
+ [required]="$safeNavigationMigration(options?.required)"
1911
1911
  [style.width]="'100%'"
1912
1912
  [type]="'number'"
1913
1913
  [value]="controlValue"
@@ -1924,13 +1924,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
1924
1924
  }
1925
1925
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
1926
1926
  <mat-hint
1927
- align="end" [innerHTML]="options?.description"></mat-hint>
1927
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
1928
1928
  }
1929
1929
  </mat-form-field>
1930
1930
  @if (options?.showErrors && options?.errorMessage) {
1931
1931
  <mat-error
1932
- [innerHTML]="options?.errorMessage"></mat-error>
1933
- }`, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
1932
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
1933
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
1934
1934
  }], ctorParameters: () => [{ type: undefined, decorators: [{
1935
1935
  type: Inject,
1936
1936
  args: [MAT_FORM_FIELD_DEFAULT_OPTIONS]
@@ -2006,8 +2006,8 @@ class MaterialOneOfComponent {
2006
2006
  this.options.showErrors = true;
2007
2007
  this.jsf.updateValue(this, event.value);
2008
2008
  }
2009
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialOneOfComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2010
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialOneOfComponent, isStandalone: false, selector: "material-one-of-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2009
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialOneOfComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2010
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialOneOfComponent, isStandalone: false, selector: "material-one-of-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2011
2011
  <mat-form-field
2012
2012
  [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
2013
2013
  [class]="options?.htmlClass || ''"
@@ -2021,14 +2021,14 @@ class MaterialOneOfComponent {
2021
2021
  <mat-select
2022
2022
  [formControl]="formControl"
2023
2023
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2024
- [id]="'control' + layoutNode?._id"
2025
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2026
- [required]="options?.required"
2024
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2025
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2026
+ [required]="$safeNavigationMigration(options?.required)"
2027
2027
  [style.width]="'100%'"
2028
2028
  (blur)="options.showErrors = true">
2029
2029
  @for (item of selectList; track item) {
2030
- <mat-option [value]="item?.value">
2031
- <span [innerHTML]="item?.name"></span>
2030
+ <mat-option [value]="$safeNavigationMigration(item?.value)">
2031
+ <span [innerHTML]="$safeNavigationMigration(item?.name)"></span>
2032
2032
  </mat-option>
2033
2033
  }
2034
2034
  </mat-select>
@@ -2037,17 +2037,17 @@ class MaterialOneOfComponent {
2037
2037
  @if (!boundControl && !isFieldset) {
2038
2038
  <mat-select
2039
2039
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2040
- [id]="'control' + layoutNode?._id"
2040
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2041
2041
  [disabled]="controlDisabled || options?.readonly"
2042
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2043
- [required]="options?.required"
2042
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2043
+ [required]="$safeNavigationMigration(options?.required)"
2044
2044
  [style.width]="'100%'"
2045
2045
  [value]="controlValue"
2046
2046
  (selectionChange)="updateValue($event)"
2047
2047
  (blur)="options.showErrors = true">
2048
2048
  @for (item of selectList; track item) {
2049
- <mat-option [value]="item?.value">
2050
- <span [innerHTML]="item?.name"></span>
2049
+ <mat-option [value]="$safeNavigationMigration(item?.value)">
2050
+ <span [innerHTML]="$safeNavigationMigration(item?.name)"></span>
2051
2051
  </mat-option>
2052
2052
  }
2053
2053
  </mat-select>
@@ -2056,14 +2056,14 @@ class MaterialOneOfComponent {
2056
2056
  @if (!boundControl && isFieldset) {
2057
2057
  <mat-select
2058
2058
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2059
- [id]="'control' + layoutNode?._id"
2059
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2060
2060
  [disabled]="controlDisabled || options?.readonly"
2061
2061
  [style.width]="'100%'"
2062
2062
  [value]="selectedValue"
2063
2063
  (selectionChange)="selectChild($event)">
2064
2064
  @for (item of selectList; track item) {
2065
- <mat-option [value]="item?.value">
2066
- <span [innerHTML]="item?.name"></span>
2065
+ <mat-option [value]="$safeNavigationMigration(item?.value)">
2066
+ <span [innerHTML]="$safeNavigationMigration(item?.name)"></span>
2067
2067
  </mat-option>
2068
2068
  }
2069
2069
  </mat-select>
@@ -2071,12 +2071,12 @@ class MaterialOneOfComponent {
2071
2071
 
2072
2072
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
2073
2073
  <mat-hint
2074
- align="end" [innerHTML]="options?.description"></mat-hint>
2074
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
2075
2075
  }
2076
2076
  </mat-form-field>
2077
2077
  @if (options?.showErrors && options?.errorMessage) {
2078
2078
  <mat-error
2079
- [innerHTML]="options?.errorMessage"></mat-error>
2079
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
2080
2080
  }
2081
2081
 
2082
2082
  @for (layoutItem of layoutNode?.items; track layoutItem; let i = $index) {
@@ -2088,9 +2088,9 @@ class MaterialOneOfComponent {
2088
2088
  [layoutNode]="layoutItem"></select-framework-widget>
2089
2089
  }
2090
2090
  </div>
2091
- }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$3.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i1.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] }); }
2091
+ }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$3.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i1.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
2092
2092
  }
2093
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialOneOfComponent, decorators: [{
2093
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialOneOfComponent, decorators: [{
2094
2094
  type: Component,
2095
2095
  args: [{ selector: 'material-one-of-widget', template: `
2096
2096
  <mat-form-field
@@ -2106,14 +2106,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2106
2106
  <mat-select
2107
2107
  [formControl]="formControl"
2108
2108
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2109
- [id]="'control' + layoutNode?._id"
2110
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2111
- [required]="options?.required"
2109
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2110
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2111
+ [required]="$safeNavigationMigration(options?.required)"
2112
2112
  [style.width]="'100%'"
2113
2113
  (blur)="options.showErrors = true">
2114
2114
  @for (item of selectList; track item) {
2115
- <mat-option [value]="item?.value">
2116
- <span [innerHTML]="item?.name"></span>
2115
+ <mat-option [value]="$safeNavigationMigration(item?.value)">
2116
+ <span [innerHTML]="$safeNavigationMigration(item?.name)"></span>
2117
2117
  </mat-option>
2118
2118
  }
2119
2119
  </mat-select>
@@ -2122,17 +2122,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2122
2122
  @if (!boundControl && !isFieldset) {
2123
2123
  <mat-select
2124
2124
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2125
- [id]="'control' + layoutNode?._id"
2125
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2126
2126
  [disabled]="controlDisabled || options?.readonly"
2127
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2128
- [required]="options?.required"
2127
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2128
+ [required]="$safeNavigationMigration(options?.required)"
2129
2129
  [style.width]="'100%'"
2130
2130
  [value]="controlValue"
2131
2131
  (selectionChange)="updateValue($event)"
2132
2132
  (blur)="options.showErrors = true">
2133
2133
  @for (item of selectList; track item) {
2134
- <mat-option [value]="item?.value">
2135
- <span [innerHTML]="item?.name"></span>
2134
+ <mat-option [value]="$safeNavigationMigration(item?.value)">
2135
+ <span [innerHTML]="$safeNavigationMigration(item?.name)"></span>
2136
2136
  </mat-option>
2137
2137
  }
2138
2138
  </mat-select>
@@ -2141,14 +2141,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2141
2141
  @if (!boundControl && isFieldset) {
2142
2142
  <mat-select
2143
2143
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2144
- [id]="'control' + layoutNode?._id"
2144
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2145
2145
  [disabled]="controlDisabled || options?.readonly"
2146
2146
  [style.width]="'100%'"
2147
2147
  [value]="selectedValue"
2148
2148
  (selectionChange)="selectChild($event)">
2149
2149
  @for (item of selectList; track item) {
2150
- <mat-option [value]="item?.value">
2151
- <span [innerHTML]="item?.name"></span>
2150
+ <mat-option [value]="$safeNavigationMigration(item?.value)">
2151
+ <span [innerHTML]="$safeNavigationMigration(item?.name)"></span>
2152
2152
  </mat-option>
2153
2153
  }
2154
2154
  </mat-select>
@@ -2156,12 +2156,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2156
2156
 
2157
2157
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
2158
2158
  <mat-hint
2159
- align="end" [innerHTML]="options?.description"></mat-hint>
2159
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
2160
2160
  }
2161
2161
  </mat-form-field>
2162
2162
  @if (options?.showErrors && options?.errorMessage) {
2163
2163
  <mat-error
2164
- [innerHTML]="options?.errorMessage"></mat-error>
2164
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
2165
2165
  }
2166
2166
 
2167
2167
  @for (layoutItem of layoutNode?.items; track layoutItem; let i = $index) {
@@ -2173,7 +2173,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2173
2173
  [layoutNode]="layoutItem"></select-framework-widget>
2174
2174
  }
2175
2175
  </div>
2176
- }`, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"] }]
2176
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}\n"] }]
2177
2177
  }], ctorParameters: () => [{ type: undefined, decorators: [{
2178
2178
  type: Inject,
2179
2179
  args: [MAT_FORM_FIELD_DEFAULT_OPTIONS]
@@ -2207,8 +2207,8 @@ class MaterialRadiosComponent {
2207
2207
  this.options.showErrors = true;
2208
2208
  this.jsf.updateValue(this, value);
2209
2209
  }
2210
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialRadiosComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2211
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialRadiosComponent, isStandalone: false, selector: "material-radios-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2210
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialRadiosComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2211
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialRadiosComponent, isStandalone: false, selector: "material-radios-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2212
2212
  <div>
2213
2213
  @if (options?.title) {
2214
2214
  <div>
@@ -2216,7 +2216,7 @@ class MaterialRadiosComponent {
2216
2216
  [attr.for]="'control' + layoutNode?._id"
2217
2217
  [class]="options?.labelHtmlClass || ''"
2218
2218
  [style.display]="options?.notitle ? 'none' : ''"
2219
- [innerHTML]="options?.title"></label>
2219
+ [innerHTML]="$safeNavigationMigration(options?.title)"></label>
2220
2220
  </div>
2221
2221
  }
2222
2222
  @if (boundControl) {
@@ -2230,9 +2230,9 @@ class MaterialRadiosComponent {
2230
2230
  (blur)="options.showErrors = true">
2231
2231
  @for (radioItem of radiosList; track radioItem) {
2232
2232
  <mat-radio-button
2233
- [id]="'control' + layoutNode?._id + '/' + radioItem?.name"
2234
- [value]="radioItem?.value">
2235
- <span [innerHTML]="radioItem?.name"></span>
2233
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id) + '/' + $safeNavigationMigration(radioItem?.name)"
2234
+ [value]="$safeNavigationMigration(radioItem?.value)">
2235
+ <span [innerHTML]="$safeNavigationMigration(radioItem?.name)"></span>
2236
2236
  </mat-radio-button>
2237
2237
  }
2238
2238
  </mat-radio-group>
@@ -2248,21 +2248,21 @@ class MaterialRadiosComponent {
2248
2248
  [value]="controlValue">
2249
2249
  @for (radioItem of radiosList; track radioItem) {
2250
2250
  <mat-radio-button
2251
- [id]="'control' + layoutNode?._id + '/' + radioItem?.name"
2252
- [value]="radioItem?.value"
2253
- (click)="updateValue(radioItem?.value)">
2254
- <span [innerHTML]="radioItem?.name"></span>
2251
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id) + '/' + $safeNavigationMigration(radioItem?.name)"
2252
+ [value]="$safeNavigationMigration(radioItem?.value)"
2253
+ (click)="updateValue($safeNavigationMigration(radioItem?.value))">
2254
+ <span [innerHTML]="$safeNavigationMigration(radioItem?.name)"></span>
2255
2255
  </mat-radio-button>
2256
2256
  }
2257
2257
  </mat-radio-group>
2258
2258
  }
2259
2259
  @if (options?.showErrors && options?.errorMessage) {
2260
2260
  <mat-error
2261
- [innerHTML]="options?.errorMessage"></mat-error>
2261
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
2262
2262
  }
2263
- </div>`, isInline: true, styles: ["mat-radio-group{display:inline-flex}mat-radio-button{margin:2px}mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$3.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i4$3.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }] }); }
2263
+ </div>`, isInline: true, styles: ["mat-radio-group{display:inline-flex}mat-radio-button{margin:2px}mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$3.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i4$3.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
2264
2264
  }
2265
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialRadiosComponent, decorators: [{
2265
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialRadiosComponent, decorators: [{
2266
2266
  type: Component,
2267
2267
  args: [{ selector: 'material-radios-widget', template: `
2268
2268
  <div>
@@ -2272,7 +2272,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2272
2272
  [attr.for]="'control' + layoutNode?._id"
2273
2273
  [class]="options?.labelHtmlClass || ''"
2274
2274
  [style.display]="options?.notitle ? 'none' : ''"
2275
- [innerHTML]="options?.title"></label>
2275
+ [innerHTML]="$safeNavigationMigration(options?.title)"></label>
2276
2276
  </div>
2277
2277
  }
2278
2278
  @if (boundControl) {
@@ -2286,9 +2286,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2286
2286
  (blur)="options.showErrors = true">
2287
2287
  @for (radioItem of radiosList; track radioItem) {
2288
2288
  <mat-radio-button
2289
- [id]="'control' + layoutNode?._id + '/' + radioItem?.name"
2290
- [value]="radioItem?.value">
2291
- <span [innerHTML]="radioItem?.name"></span>
2289
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id) + '/' + $safeNavigationMigration(radioItem?.name)"
2290
+ [value]="$safeNavigationMigration(radioItem?.value)">
2291
+ <span [innerHTML]="$safeNavigationMigration(radioItem?.name)"></span>
2292
2292
  </mat-radio-button>
2293
2293
  }
2294
2294
  </mat-radio-group>
@@ -2304,19 +2304,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2304
2304
  [value]="controlValue">
2305
2305
  @for (radioItem of radiosList; track radioItem) {
2306
2306
  <mat-radio-button
2307
- [id]="'control' + layoutNode?._id + '/' + radioItem?.name"
2308
- [value]="radioItem?.value"
2309
- (click)="updateValue(radioItem?.value)">
2310
- <span [innerHTML]="radioItem?.name"></span>
2307
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id) + '/' + $safeNavigationMigration(radioItem?.name)"
2308
+ [value]="$safeNavigationMigration(radioItem?.value)"
2309
+ (click)="updateValue($safeNavigationMigration(radioItem?.value))">
2310
+ <span [innerHTML]="$safeNavigationMigration(radioItem?.name)"></span>
2311
2311
  </mat-radio-button>
2312
2312
  }
2313
2313
  </mat-radio-group>
2314
2314
  }
2315
2315
  @if (options?.showErrors && options?.errorMessage) {
2316
2316
  <mat-error
2317
- [innerHTML]="options?.errorMessage"></mat-error>
2317
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
2318
2318
  }
2319
- </div>`, standalone: false, styles: ["mat-radio-group{display:inline-flex}mat-radio-button{margin:2px}mat-error{font-size:75%}\n"] }]
2319
+ </div>`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-radio-group{display:inline-flex}mat-radio-button{margin:2px}mat-error{font-size:75%}\n"] }]
2320
2320
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
2321
2321
  type: Input
2322
2322
  }], layoutIndex: [{
@@ -2346,8 +2346,8 @@ class MaterialSelectComponent {
2346
2346
  this.options.showErrors = true;
2347
2347
  this.jsf.updateValue(this, event.value);
2348
2348
  }
2349
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialSelectComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2350
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialSelectComponent, isStandalone: false, selector: "material-select-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2349
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialSelectComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2350
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialSelectComponent, isStandalone: false, selector: "material-select-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2351
2351
  <mat-form-field
2352
2352
  [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
2353
2353
  [class]="options?.htmlClass || ''"
@@ -2366,26 +2366,26 @@ class MaterialSelectComponent {
2366
2366
  [formControl]="formControl"
2367
2367
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2368
2368
  [attr.name]="controlName"
2369
- [id]="'control' + layoutNode?._id"
2370
- [multiple]="options?.multiple"
2371
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2372
- [required]="options?.required"
2369
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2370
+ [multiple]="$safeNavigationMigration(options?.multiple)"
2371
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2372
+ [required]="$safeNavigationMigration(options?.required)"
2373
2373
  [style.width]="'100%'"
2374
2374
  (blur)="options.showErrors = true">
2375
2375
  @for (selectItem of selectList; track selectItem) {
2376
- @if (!isArray(selectItem?.items)) {
2376
+ @if (!isArray($safeNavigationMigration(selectItem?.items))) {
2377
2377
  <mat-option
2378
- [value]="selectItem?.value">
2379
- <span [innerHTML]="selectItem?.name"></span>
2378
+ [value]="$safeNavigationMigration(selectItem?.value)">
2379
+ <span [innerHTML]="$safeNavigationMigration(selectItem?.name)"></span>
2380
2380
  </mat-option>
2381
2381
  }
2382
- @if (isArray(selectItem?.items)) {
2382
+ @if (isArray($safeNavigationMigration(selectItem?.items))) {
2383
2383
  <mat-optgroup
2384
- [label]="selectItem?.group">
2384
+ [label]="$safeNavigationMigration(selectItem?.group)">
2385
2385
  @for (subItem of selectItem.items; track subItem) {
2386
2386
  <mat-option
2387
- [value]="subItem?.value">
2388
- <span [innerHTML]="subItem?.name"></span>
2387
+ [value]="$safeNavigationMigration(subItem?.value)">
2388
+ <span [innerHTML]="$safeNavigationMigration(subItem?.name)"></span>
2389
2389
  </mat-option>
2390
2390
  }
2391
2391
  </mat-optgroup>
@@ -2398,30 +2398,30 @@ class MaterialSelectComponent {
2398
2398
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2399
2399
  [attr.name]="controlName"
2400
2400
  [disabled]="controlDisabled || options?.readonly"
2401
- [id]="'control' + layoutNode?._id"
2402
- [multiple]="options?.multiple"
2403
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2404
- [required]="options?.required"
2401
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2402
+ [multiple]="$safeNavigationMigration(options?.multiple)"
2403
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2404
+ [required]="$safeNavigationMigration(options?.required)"
2405
2405
  [style.width]="'100%'"
2406
2406
  [value]="controlValue"
2407
2407
  (blur)="options.showErrors = true"
2408
2408
  (change)="updateValue($event)">
2409
2409
  @for (selectItem of selectList; track selectItem) {
2410
- @if (!isArray(selectItem?.items)) {
2410
+ @if (!isArray($safeNavigationMigration(selectItem?.items))) {
2411
2411
  <mat-option
2412
2412
  [attr.selected]="selectItem?.value === controlValue"
2413
- [value]="selectItem?.value">
2414
- <span [innerHTML]="selectItem?.name"></span>
2413
+ [value]="$safeNavigationMigration(selectItem?.value)">
2414
+ <span [innerHTML]="$safeNavigationMigration(selectItem?.name)"></span>
2415
2415
  </mat-option>
2416
2416
  }
2417
- @if (isArray(selectItem?.items)) {
2417
+ @if (isArray($safeNavigationMigration(selectItem?.items))) {
2418
2418
  <mat-optgroup
2419
- [label]="selectItem?.group">
2419
+ [label]="$safeNavigationMigration(selectItem?.group)">
2420
2420
  @for (subItem of selectItem.items; track subItem) {
2421
2421
  <mat-option
2422
2422
  [attr.selected]="subItem?.value === controlValue"
2423
- [value]="subItem?.value">
2424
- <span [innerHTML]="subItem?.name"></span>
2423
+ [value]="$safeNavigationMigration(subItem?.value)">
2424
+ <span [innerHTML]="$safeNavigationMigration(subItem?.name)"></span>
2425
2425
  </mat-option>
2426
2426
  }
2427
2427
  </mat-optgroup>
@@ -2435,15 +2435,15 @@ class MaterialSelectComponent {
2435
2435
  }
2436
2436
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
2437
2437
  <mat-hint
2438
- align="end" [innerHTML]="options?.description"></mat-hint>
2438
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
2439
2439
  }
2440
2440
  </mat-form-field>
2441
2441
  @if (options?.showErrors && options?.errorMessage) {
2442
2442
  <mat-error
2443
- [innerHTML]="options?.errorMessage"></mat-error>
2444
- }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$3.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$3.MatOptgroup, selector: "mat-optgroup", inputs: ["label", "disabled"], exportAs: ["matOptgroup"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i5$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }] }); }
2443
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
2444
+ }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3$3.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i3$3.MatOptgroup, selector: "mat-optgroup", inputs: ["label", "disabled"], exportAs: ["matOptgroup"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i5$2.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
2445
2445
  }
2446
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialSelectComponent, decorators: [{
2446
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialSelectComponent, decorators: [{
2447
2447
  type: Component,
2448
2448
  args: [{ selector: 'material-select-widget', template: `
2449
2449
  <mat-form-field
@@ -2464,26 +2464,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2464
2464
  [formControl]="formControl"
2465
2465
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2466
2466
  [attr.name]="controlName"
2467
- [id]="'control' + layoutNode?._id"
2468
- [multiple]="options?.multiple"
2469
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2470
- [required]="options?.required"
2467
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2468
+ [multiple]="$safeNavigationMigration(options?.multiple)"
2469
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2470
+ [required]="$safeNavigationMigration(options?.required)"
2471
2471
  [style.width]="'100%'"
2472
2472
  (blur)="options.showErrors = true">
2473
2473
  @for (selectItem of selectList; track selectItem) {
2474
- @if (!isArray(selectItem?.items)) {
2474
+ @if (!isArray($safeNavigationMigration(selectItem?.items))) {
2475
2475
  <mat-option
2476
- [value]="selectItem?.value">
2477
- <span [innerHTML]="selectItem?.name"></span>
2476
+ [value]="$safeNavigationMigration(selectItem?.value)">
2477
+ <span [innerHTML]="$safeNavigationMigration(selectItem?.name)"></span>
2478
2478
  </mat-option>
2479
2479
  }
2480
- @if (isArray(selectItem?.items)) {
2480
+ @if (isArray($safeNavigationMigration(selectItem?.items))) {
2481
2481
  <mat-optgroup
2482
- [label]="selectItem?.group">
2482
+ [label]="$safeNavigationMigration(selectItem?.group)">
2483
2483
  @for (subItem of selectItem.items; track subItem) {
2484
2484
  <mat-option
2485
- [value]="subItem?.value">
2486
- <span [innerHTML]="subItem?.name"></span>
2485
+ [value]="$safeNavigationMigration(subItem?.value)">
2486
+ <span [innerHTML]="$safeNavigationMigration(subItem?.name)"></span>
2487
2487
  </mat-option>
2488
2488
  }
2489
2489
  </mat-optgroup>
@@ -2496,30 +2496,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2496
2496
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2497
2497
  [attr.name]="controlName"
2498
2498
  [disabled]="controlDisabled || options?.readonly"
2499
- [id]="'control' + layoutNode?._id"
2500
- [multiple]="options?.multiple"
2501
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2502
- [required]="options?.required"
2499
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2500
+ [multiple]="$safeNavigationMigration(options?.multiple)"
2501
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2502
+ [required]="$safeNavigationMigration(options?.required)"
2503
2503
  [style.width]="'100%'"
2504
2504
  [value]="controlValue"
2505
2505
  (blur)="options.showErrors = true"
2506
2506
  (change)="updateValue($event)">
2507
2507
  @for (selectItem of selectList; track selectItem) {
2508
- @if (!isArray(selectItem?.items)) {
2508
+ @if (!isArray($safeNavigationMigration(selectItem?.items))) {
2509
2509
  <mat-option
2510
2510
  [attr.selected]="selectItem?.value === controlValue"
2511
- [value]="selectItem?.value">
2512
- <span [innerHTML]="selectItem?.name"></span>
2511
+ [value]="$safeNavigationMigration(selectItem?.value)">
2512
+ <span [innerHTML]="$safeNavigationMigration(selectItem?.name)"></span>
2513
2513
  </mat-option>
2514
2514
  }
2515
- @if (isArray(selectItem?.items)) {
2515
+ @if (isArray($safeNavigationMigration(selectItem?.items))) {
2516
2516
  <mat-optgroup
2517
- [label]="selectItem?.group">
2517
+ [label]="$safeNavigationMigration(selectItem?.group)">
2518
2518
  @for (subItem of selectItem.items; track subItem) {
2519
2519
  <mat-option
2520
2520
  [attr.selected]="subItem?.value === controlValue"
2521
- [value]="subItem?.value">
2522
- <span [innerHTML]="subItem?.name"></span>
2521
+ [value]="$safeNavigationMigration(subItem?.value)">
2522
+ <span [innerHTML]="$safeNavigationMigration(subItem?.name)"></span>
2523
2523
  </mat-option>
2524
2524
  }
2525
2525
  </mat-optgroup>
@@ -2533,13 +2533,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2533
2533
  }
2534
2534
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
2535
2535
  <mat-hint
2536
- align="end" [innerHTML]="options?.description"></mat-hint>
2536
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
2537
2537
  }
2538
2538
  </mat-form-field>
2539
2539
  @if (options?.showErrors && options?.errorMessage) {
2540
2540
  <mat-error
2541
- [innerHTML]="options?.errorMessage"></mat-error>
2542
- }`, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
2541
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
2542
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
2543
2543
  }], ctorParameters: () => [{ type: undefined, decorators: [{
2544
2544
  type: Inject,
2545
2545
  args: [MAT_FORM_FIELD_DEFAULT_OPTIONS]
@@ -2573,12 +2573,12 @@ class MaterialSliderComponent {
2573
2573
  this.options.showErrors = true;
2574
2574
  this.jsf.updateValue(this, event.value);
2575
2575
  }
2576
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialSliderComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2577
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialSliderComponent, isStandalone: false, selector: "material-slider-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2576
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialSliderComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2577
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialSliderComponent, isStandalone: false, selector: "material-slider-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2578
2578
  @if (boundControl) {
2579
2579
  <mat-slider discrete
2580
2580
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2581
- [id]="'control' + layoutNode?._id"
2581
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2582
2582
  [max]="maxValue"
2583
2583
  [min]="minValue"
2584
2584
  [step]="options?.multipleOf || options?.step || 'any'"
@@ -2589,7 +2589,7 @@ class MaterialSliderComponent {
2589
2589
  <mat-slider discrete
2590
2590
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2591
2591
  [disabled]="controlDisabled || options?.readonly"
2592
- [id]="'control' + layoutNode?._id"
2592
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2593
2593
  [max]="maxValue"
2594
2594
  [min]="minValue"
2595
2595
  [step]="options?.multipleOf || options?.step || 'any'"
@@ -2598,16 +2598,16 @@ class MaterialSliderComponent {
2598
2598
  }
2599
2599
  @if (options?.showErrors && options?.errorMessage) {
2600
2600
  <mat-error
2601
- [innerHTML]="options?.errorMessage"></mat-error>
2602
- }`, isInline: true, styles: ["mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$4.MatSlider, selector: "mat-slider", inputs: ["disabled", "discrete", "showTickMarks", "min", "color", "disableRipple", "max", "step", "displayWith"], exportAs: ["matSlider"] }, { kind: "directive", type: i4$4.MatSliderThumb, selector: "input[matSliderThumb]", inputs: ["value"], outputs: ["valueChange", "dragStart", "dragEnd"], exportAs: ["matSliderThumb"] }] }); }
2601
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
2602
+ }`, isInline: true, styles: ["mat-error{font-size:75%}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$4.MatSlider, selector: "mat-slider", inputs: ["disabled", "discrete", "showTickMarks", "min", "color", "disableRipple", "max", "step", "displayWith"], exportAs: ["matSlider"] }, { kind: "directive", type: i4$4.MatSliderThumb, selector: "input[matSliderThumb]", inputs: ["value"], outputs: ["valueChange", "dragStart", "dragEnd"], exportAs: ["matSliderThumb"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
2603
2603
  }
2604
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialSliderComponent, decorators: [{
2604
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialSliderComponent, decorators: [{
2605
2605
  type: Component,
2606
2606
  args: [{ selector: 'material-slider-widget', template: `
2607
2607
  @if (boundControl) {
2608
2608
  <mat-slider discrete
2609
2609
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2610
- [id]="'control' + layoutNode?._id"
2610
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2611
2611
  [max]="maxValue"
2612
2612
  [min]="minValue"
2613
2613
  [step]="options?.multipleOf || options?.step || 'any'"
@@ -2618,7 +2618,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2618
2618
  <mat-slider discrete
2619
2619
  [attr.aria-describedby]="'control' + layoutNode?._id + 'Status'"
2620
2620
  [disabled]="controlDisabled || options?.readonly"
2621
- [id]="'control' + layoutNode?._id"
2621
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2622
2622
  [max]="maxValue"
2623
2623
  [min]="minValue"
2624
2624
  [step]="options?.multipleOf || options?.step || 'any'"
@@ -2627,8 +2627,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2627
2627
  }
2628
2628
  @if (options?.showErrors && options?.errorMessage) {
2629
2629
  <mat-error
2630
- [innerHTML]="options?.errorMessage"></mat-error>
2631
- }`, standalone: false, styles: ["mat-error{font-size:75%}\n"] }]
2630
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
2631
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%}\n"] }]
2632
2632
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
2633
2633
  type: Input
2634
2634
  }], layoutIndex: [{
@@ -2687,8 +2687,8 @@ class MaterialStepperComponent {
2687
2687
  setStepTitle(item, index) {
2688
2688
  return this.jsf.setArrayItemTitle(this, item, index);
2689
2689
  }
2690
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialStepperComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2691
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialStepperComponent, isStandalone: false, selector: "material-stepper-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2690
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialStepperComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2691
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialStepperComponent, isStandalone: false, selector: "material-stepper-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2692
2692
  <mat-stepper
2693
2693
  [selectedIndex]="selectedItem"
2694
2694
  [linear]="options?.linear || false"
@@ -2717,9 +2717,9 @@ class MaterialStepperComponent {
2717
2717
  </mat-step>
2718
2718
  }
2719
2719
  }
2720
- </mat-stepper>`, isInline: true, dependencies: [{ kind: "component", type: i2$1.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: "component", type: i3$4.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i3$4.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i3$4.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["disableRipple", "color", "labelPosition", "headerPosition", "aria-label", "headerPrefix", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "directive", type: i3$4.MatStepperNext, selector: "button[matStepperNext]" }, { kind: "directive", type: i3$4.MatStepperPrevious, selector: "button[matStepperPrevious]" }, { kind: "directive", type: i3$4.MatStepContent, selector: "ng-template[matStepContent]" }, { kind: "component", type: i1.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] }); }
2720
+ </mat-stepper>`, isInline: true, dependencies: [{ kind: "component", type: i2$1.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: "component", type: i3$4.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "directive", type: i3$4.MatStepLabel, selector: "[matStepLabel]" }, { kind: "component", type: i3$4.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["disableRipple", "color", "labelPosition", "headerPosition", "aria-label", "headerPrefix", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }, { kind: "directive", type: i3$4.MatStepperNext, selector: "button[matStepperNext]" }, { kind: "directive", type: i3$4.MatStepperPrevious, selector: "button[matStepperPrevious]" }, { kind: "directive", type: i3$4.MatStepContent, selector: "ng-template[matStepContent]" }, { kind: "component", type: i1.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
2721
2721
  }
2722
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialStepperComponent, decorators: [{
2722
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialStepperComponent, decorators: [{
2723
2723
  type: Component,
2724
2724
  args: [{
2725
2725
  selector: 'material-stepper-widget',
@@ -2753,6 +2753,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2753
2753
  }
2754
2754
  }
2755
2755
  </mat-stepper>`,
2756
+ changeDetection: ChangeDetectionStrategy.Eager,
2756
2757
  standalone: false
2757
2758
  }]
2758
2759
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
@@ -2794,8 +2795,8 @@ class MaterialTabsComponent {
2794
2795
  setTabTitle(item, index) {
2795
2796
  return this.jsf.setArrayItemTitle(this, item, index);
2796
2797
  }
2797
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialTabsComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2798
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialTabsComponent, isStandalone: false, selector: "material-tabs-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2798
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialTabsComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2799
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialTabsComponent, isStandalone: false, selector: "material-tabs-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2799
2800
  <nav mat-tab-nav-bar
2800
2801
  [attr.aria-label]="options?.label || options?.title || ''"
2801
2802
  [tabPanel]="tabPanel"
@@ -2826,9 +2827,9 @@ class MaterialTabsComponent {
2826
2827
  }
2827
2828
  </div>
2828
2829
  }
2829
- </div>`, isInline: true, styles: ["a{cursor:pointer}\n"], dependencies: [{ kind: "component", type: i2$5.MatTabNav, selector: "[mat-tab-nav-bar]", inputs: ["fitInkBarToContent", "mat-stretch-tabs", "animationDuration", "backgroundColor", "disableRipple", "color", "tabPanel"], exportAs: ["matTabNavBar", "matTabNav"] }, { kind: "component", type: i2$5.MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: ["active", "disabled", "disableRipple", "tabIndex", "id"], exportAs: ["matTabLink"] }, { kind: "component", type: i1.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] }); }
2830
+ </div>`, isInline: true, styles: ["a{cursor:pointer}\n"], dependencies: [{ kind: "component", type: i2$5.MatTabNav, selector: "[mat-tab-nav-bar]", inputs: ["fitInkBarToContent", "mat-stretch-tabs", "animationDuration", "backgroundColor", "disableRipple", "color", "tabPanel"], exportAs: ["matTabNavBar", "matTabNav"] }, { kind: "component", type: i2$5.MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: ["active", "disabled", "disableRipple", "tabIndex", "id"], exportAs: ["matTabLink"] }, { kind: "component", type: i1.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
2830
2831
  }
2831
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialTabsComponent, decorators: [{
2832
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialTabsComponent, decorators: [{
2832
2833
  type: Component,
2833
2834
  args: [{ selector: 'material-tabs-widget', template: `
2834
2835
  <nav mat-tab-nav-bar
@@ -2861,7 +2862,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2861
2862
  }
2862
2863
  </div>
2863
2864
  }
2864
- </div>`, standalone: false, styles: ["a{cursor:pointer}\n"] }]
2865
+ </div>`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["a{cursor:pointer}\n"] }]
2865
2866
  }], ctorParameters: () => [{ type: i1.JsonSchemaFormService }], propDecorators: { layoutNode: [{
2866
2867
  type: Input
2867
2868
  }], layoutIndex: [{
@@ -2887,8 +2888,8 @@ class MaterialTextareaComponent {
2887
2888
  updateValue(event) {
2888
2889
  this.jsf.updateValue(this, event.target.value);
2889
2890
  }
2890
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialTextareaComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2891
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.23", type: MaterialTextareaComponent, isStandalone: false, selector: "material-textarea-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2891
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialTextareaComponent, deps: [{ token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
2892
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: MaterialTextareaComponent, isStandalone: false, selector: "material-textarea-widget", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: `
2892
2893
  <mat-form-field [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
2893
2894
  [class]="options?.htmlClass || ''"
2894
2895
  [floatLabel]="options?.floatLabel || matFormFieldDefaultOptions?.floatLabel || 'auto'"
@@ -2909,10 +2910,10 @@ class MaterialTextareaComponent {
2909
2910
  [attr.maxlength]="options?.maxLength"
2910
2911
  [attr.minlength]="options?.minLength"
2911
2912
  [attr.pattern]="options?.pattern"
2912
- [required]="options?.required"
2913
- [id]="'control' + layoutNode?._id"
2913
+ [required]="$safeNavigationMigration(options?.required)"
2914
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2914
2915
  [name]="controlName"
2915
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2916
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2916
2917
  [readonly]="options?.readonly ? 'readonly' : null"
2917
2918
  [style.width]="'100%'"
2918
2919
  (blur)="options.showErrors = true"></textarea>
@@ -2924,11 +2925,11 @@ class MaterialTextareaComponent {
2924
2925
  [attr.maxlength]="options?.maxLength"
2925
2926
  [attr.minlength]="options?.minLength"
2926
2927
  [attr.pattern]="options?.pattern"
2927
- [required]="options?.required"
2928
+ [required]="$safeNavigationMigration(options?.required)"
2928
2929
  [disabled]="controlDisabled"
2929
- [id]="'control' + layoutNode?._id"
2930
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2930
2931
  [name]="controlName"
2931
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2932
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2932
2933
  [readonly]="options?.readonly ? 'readonly' : null"
2933
2934
  [style.width]="'100%'"
2934
2935
  [value]="controlValue"
@@ -2941,15 +2942,15 @@ class MaterialTextareaComponent {
2941
2942
  }
2942
2943
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
2943
2944
  <mat-hint
2944
- align="end" [innerHTML]="options?.description"></mat-hint>
2945
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
2945
2946
  }
2946
2947
  </mat-form-field>
2947
2948
  @if (options?.showErrors && options?.errorMessage) {
2948
2949
  <mat-error
2949
- [innerHTML]="options?.errorMessage"></mat-error>
2950
- }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }] }); }
2950
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
2951
+ }`, isInline: true, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"], dependencies: [{ kind: "directive", type: i2$3.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$1.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$1.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$1.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i5$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }], changeDetection: i0.ChangeDetectionStrategy.Eager }); }
2951
2952
  }
2952
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialTextareaComponent, decorators: [{
2953
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialTextareaComponent, decorators: [{
2953
2954
  type: Component,
2954
2955
  args: [{ selector: 'material-textarea-widget', template: `
2955
2956
  <mat-form-field [appearance]="options?.appearance || matFormFieldDefaultOptions?.appearance || 'fill'"
@@ -2972,10 +2973,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2972
2973
  [attr.maxlength]="options?.maxLength"
2973
2974
  [attr.minlength]="options?.minLength"
2974
2975
  [attr.pattern]="options?.pattern"
2975
- [required]="options?.required"
2976
- [id]="'control' + layoutNode?._id"
2976
+ [required]="$safeNavigationMigration(options?.required)"
2977
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2977
2978
  [name]="controlName"
2978
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2979
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2979
2980
  [readonly]="options?.readonly ? 'readonly' : null"
2980
2981
  [style.width]="'100%'"
2981
2982
  (blur)="options.showErrors = true"></textarea>
@@ -2987,11 +2988,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
2987
2988
  [attr.maxlength]="options?.maxLength"
2988
2989
  [attr.minlength]="options?.minLength"
2989
2990
  [attr.pattern]="options?.pattern"
2990
- [required]="options?.required"
2991
+ [required]="$safeNavigationMigration(options?.required)"
2991
2992
  [disabled]="controlDisabled"
2992
- [id]="'control' + layoutNode?._id"
2993
+ [id]="'control' + $safeNavigationMigration(layoutNode?._id)"
2993
2994
  [name]="controlName"
2994
- [placeholder]="options?.notitle ? options?.placeholder : options?.title"
2995
+ [placeholder]="options?.notitle ? $safeNavigationMigration(options?.placeholder) : $safeNavigationMigration(options?.title)"
2995
2996
  [readonly]="options?.readonly ? 'readonly' : null"
2996
2997
  [style.width]="'100%'"
2997
2998
  [value]="controlValue"
@@ -3004,13 +3005,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImpo
3004
3005
  }
3005
3006
  @if (options?.description && (!options?.showErrors || !options?.errorMessage)) {
3006
3007
  <mat-hint
3007
- align="end" [innerHTML]="options?.description"></mat-hint>
3008
+ align="end" [innerHTML]="$safeNavigationMigration(options?.description)"></mat-hint>
3008
3009
  }
3009
3010
  </mat-form-field>
3010
3011
  @if (options?.showErrors && options?.errorMessage) {
3011
3012
  <mat-error
3012
- [innerHTML]="options?.errorMessage"></mat-error>
3013
- }`, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
3013
+ [innerHTML]="$safeNavigationMigration(options?.errorMessage)"></mat-error>
3014
+ }`, changeDetection: ChangeDetectionStrategy.Eager, standalone: false, styles: ["mat-error{font-size:75%;margin-top:-1rem;margin-bottom:.5rem}::ng-deep json-schema-form mat-form-field .mat-mdc-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{width:initial}\n"] }]
3014
3015
  }], ctorParameters: () => [{ type: undefined, decorators: [{
3015
3016
  type: Inject,
3016
3017
  args: [MAT_FORM_FIELD_DEFAULT_OPTIONS]
@@ -3082,10 +3083,10 @@ class MaterialDesignFramework extends Framework {
3082
3083
  'wizard': 'stepper',
3083
3084
  };
3084
3085
  }
3085
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDesignFramework, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3086
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDesignFramework }); }
3086
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDesignFramework, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3087
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDesignFramework }); }
3087
3088
  }
3088
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDesignFramework, decorators: [{
3089
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDesignFramework, decorators: [{
3089
3090
  type: Injectable
3090
3091
  }] });
3091
3092
 
@@ -3105,8 +3106,8 @@ const ANGULAR_MATERIAL_MODULES = [
3105
3106
  MatToolbarModule, MatMenuModule, MatToolbarModule,
3106
3107
  ];
3107
3108
  class MaterialDesignFrameworkModule {
3108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDesignFrameworkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3109
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.23", ngImport: i0, type: MaterialDesignFrameworkModule, declarations: [FlexLayoutRootComponent, FlexLayoutSectionComponent, MaterialAddReferenceComponent, MaterialOneOfComponent, MaterialButtonComponent, MaterialButtonGroupComponent, MaterialCheckboxComponent, MaterialCheckboxesComponent, MaterialChipListComponent, MaterialDatepickerComponent, MaterialFileComponent, MaterialInputComponent, MaterialNumberComponent, MaterialRadiosComponent, MaterialSelectComponent, MaterialSliderComponent, MaterialStepperComponent, MaterialTabsComponent, MaterialTextareaComponent, MaterialDesignFrameworkComponent], imports: [CommonModule,
3109
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDesignFrameworkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3110
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.6", ngImport: i0, type: MaterialDesignFrameworkModule, declarations: [FlexLayoutRootComponent, FlexLayoutSectionComponent, MaterialAddReferenceComponent, MaterialOneOfComponent, MaterialButtonComponent, MaterialButtonGroupComponent, MaterialCheckboxComponent, MaterialCheckboxesComponent, MaterialChipListComponent, MaterialDatepickerComponent, MaterialFileComponent, MaterialInputComponent, MaterialNumberComponent, MaterialRadiosComponent, MaterialSelectComponent, MaterialSliderComponent, MaterialStepperComponent, MaterialTabsComponent, MaterialTextareaComponent, MaterialDesignFrameworkComponent], imports: [CommonModule,
3110
3111
  FormsModule,
3111
3112
  ReactiveFormsModule, MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule,
3112
3113
  MatCheckboxModule, MatChipsModule, MatDatepickerModule, MatExpansionModule,
@@ -3115,7 +3116,7 @@ class MaterialDesignFrameworkModule {
3115
3116
  MatStepperModule, MatTabsModule, MatTooltipModule,
3116
3117
  MatToolbarModule, MatMenuModule, MatToolbarModule, WidgetLibraryModule,
3117
3118
  JsonSchemaFormModule], exports: [JsonSchemaFormModule, FlexLayoutRootComponent, FlexLayoutSectionComponent, MaterialAddReferenceComponent, MaterialOneOfComponent, MaterialButtonComponent, MaterialButtonGroupComponent, MaterialCheckboxComponent, MaterialCheckboxesComponent, MaterialChipListComponent, MaterialDatepickerComponent, MaterialFileComponent, MaterialInputComponent, MaterialNumberComponent, MaterialRadiosComponent, MaterialSelectComponent, MaterialSliderComponent, MaterialStepperComponent, MaterialTabsComponent, MaterialTextareaComponent, MaterialDesignFrameworkComponent] }); }
3118
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDesignFrameworkModule, providers: [
3119
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDesignFrameworkModule, providers: [
3119
3120
  JsonSchemaFormService,
3120
3121
  FrameworkLibraryService,
3121
3122
  WidgetLibraryService,
@@ -3125,7 +3126,7 @@ class MaterialDesignFrameworkModule {
3125
3126
  ReactiveFormsModule, ANGULAR_MATERIAL_MODULES, WidgetLibraryModule,
3126
3127
  JsonSchemaFormModule, JsonSchemaFormModule] }); }
3127
3128
  }
3128
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.23", ngImport: i0, type: MaterialDesignFrameworkModule, decorators: [{
3129
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: MaterialDesignFrameworkModule, decorators: [{
3129
3130
  type: NgModule,
3130
3131
  args: [{
3131
3132
  imports: [