@acorex/platform 20.0.5 → 20.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/auth/index.d.ts +37 -32
  2. package/common/index.d.ts +104 -4
  3. package/core/index.d.ts +4 -0
  4. package/domain/index.d.ts +2010 -42
  5. package/fesm2022/acorex-platform-auth.mjs +57 -21
  6. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-common.mjs +332 -90
  8. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-core.mjs +54 -42
  10. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-domain.mjs +3338 -31
  12. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  13. package/fesm2022/acorex-platform-layout-builder.mjs +174 -168
  14. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  15. package/fesm2022/acorex-platform-layout-components.mjs +281 -89
  16. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  17. package/fesm2022/acorex-platform-layout-designer.mjs +72 -72
  18. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  19. package/fesm2022/acorex-platform-layout-entity.mjs +210 -130
  20. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-views.mjs +342 -119
  22. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-native.mjs +7 -7
  24. package/fesm2022/acorex-platform-native.mjs.map +1 -1
  25. package/fesm2022/acorex-platform-runtime.mjs +51 -48
  26. package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
  27. package/fesm2022/{acorex-platform-themes-default-create-entity-view.component-BxYe1IlE.mjs → acorex-platform-themes-default-create-entity-view.component-DyVB3PZT.mjs} +4 -4
  28. package/fesm2022/{acorex-platform-themes-default-create-entity-view.component-BxYe1IlE.mjs.map → acorex-platform-themes-default-create-entity-view.component-DyVB3PZT.mjs.map} +1 -1
  29. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-CzSqhYfE.mjs → acorex-platform-themes-default-entity-master-create-view.component-CsWVOu-r.mjs} +4 -4
  30. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-CzSqhYfE.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-CsWVOu-r.mjs.map} +1 -1
  31. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-BxdQ5JWS.mjs → acorex-platform-themes-default-entity-master-list-view.component-DgyzWR29.mjs} +20 -20
  32. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DgyzWR29.mjs.map +1 -0
  33. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-12xcM8FJ.mjs → acorex-platform-themes-default-entity-master-modify-view.component-gJap_TBH.mjs} +4 -4
  34. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-12xcM8FJ.mjs.map → acorex-platform-themes-default-entity-master-modify-view.component-gJap_TBH.mjs.map} +1 -1
  35. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-D99jLndX.mjs → acorex-platform-themes-default-entity-master-single-view.component-BUNm9JV5.mjs} +8 -8
  36. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BUNm9JV5.mjs.map +1 -0
  37. package/fesm2022/{acorex-platform-themes-default-error-401.component-8QfQ3hNo.mjs → acorex-platform-themes-default-error-401.component-DP3msj3d.mjs} +4 -4
  38. package/fesm2022/{acorex-platform-themes-default-error-401.component-8QfQ3hNo.mjs.map → acorex-platform-themes-default-error-401.component-DP3msj3d.mjs.map} +1 -1
  39. package/fesm2022/{acorex-platform-themes-default-error-404.component-D9npA9_W.mjs → acorex-platform-themes-default-error-404.component-uvBHGbHY.mjs} +4 -4
  40. package/fesm2022/{acorex-platform-themes-default-error-404.component-D9npA9_W.mjs.map → acorex-platform-themes-default-error-404.component-uvBHGbHY.mjs.map} +1 -1
  41. package/fesm2022/{acorex-platform-themes-default-error-offline.component-BQpVnLzt.mjs → acorex-platform-themes-default-error-offline.component-CdXIik4U.mjs} +4 -4
  42. package/fesm2022/{acorex-platform-themes-default-error-offline.component-BQpVnLzt.mjs.map → acorex-platform-themes-default-error-offline.component-CdXIik4U.mjs.map} +1 -1
  43. package/fesm2022/acorex-platform-themes-default.mjs +469 -51
  44. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  45. package/fesm2022/acorex-platform-themes-shared.mjs +22 -23
  46. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  47. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-BIZkWv8q.mjs → acorex-platform-widgets-button-widget-designer.component-CgUkYMwV.mjs} +4 -4
  48. package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-BIZkWv8q.mjs.map → acorex-platform-widgets-button-widget-designer.component-CgUkYMwV.mjs.map} +1 -1
  49. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-MjSzOXIJ.mjs → acorex-platform-widgets-checkbox-widget-column.component-Dn0U56O7.mjs} +4 -4
  50. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-MjSzOXIJ.mjs.map → acorex-platform-widgets-checkbox-widget-column.component-Dn0U56O7.mjs.map} +1 -1
  51. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-5kuroU6r.mjs → acorex-platform-widgets-checkbox-widget-designer.component-BD0-kCi0.mjs} +5 -5
  52. package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-BD0-kCi0.mjs.map +1 -0
  53. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-BgrIeNW0.mjs → acorex-platform-widgets-checkbox-widget-view.component-CzCWGDil.mjs} +4 -4
  54. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-BgrIeNW0.mjs.map → acorex-platform-widgets-checkbox-widget-view.component-CzCWGDil.mjs.map} +1 -1
  55. package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-BTxAgvMQ.mjs → acorex-platform-widgets-color-box-widget-designer.component-BSRAHIPQ.mjs} +4 -4
  56. package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-BTxAgvMQ.mjs.map → acorex-platform-widgets-color-box-widget-designer.component-BSRAHIPQ.mjs.map} +1 -1
  57. package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-DCUfKMJ6.mjs → acorex-platform-widgets-contact-widget-filter.component-CtCAgeH9.mjs} +4 -4
  58. package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-DCUfKMJ6.mjs.map → acorex-platform-widgets-contact-widget-filter.component-CtCAgeH9.mjs.map} +1 -1
  59. package/fesm2022/{acorex-platform-widgets-file-list-popup.component-yqqPJMg2.mjs → acorex-platform-widgets-file-list-popup.component-hyJf0xT2.mjs} +4 -4
  60. package/fesm2022/{acorex-platform-widgets-file-list-popup.component-yqqPJMg2.mjs.map → acorex-platform-widgets-file-list-popup.component-hyJf0xT2.mjs.map} +1 -1
  61. package/fesm2022/acorex-platform-widgets-file-rename-popup.component-BSm6Qew2.mjs +211 -0
  62. package/fesm2022/acorex-platform-widgets-file-rename-popup.component-BSm6Qew2.mjs.map +1 -0
  63. package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-tITe8tiu.mjs → acorex-platform-widgets-page-widget-designer.component-Dlu4Tkou.mjs} +6 -4
  64. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-Dlu4Tkou.mjs.map +1 -0
  65. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-Bk20MsqK.mjs → acorex-platform-widgets-rich-text-popup.component-DB2IMaLw.mjs} +4 -4
  66. package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-Bk20MsqK.mjs.map → acorex-platform-widgets-rich-text-popup.component-DB2IMaLw.mjs.map} +1 -1
  67. package/fesm2022/{acorex-platform-widgets-tabular-data-edit-popup.component-2srL34Aq.mjs → acorex-platform-widgets-tabular-data-edit-popup.component-CBOUSkL4.mjs} +4 -4
  68. package/fesm2022/{acorex-platform-widgets-tabular-data-edit-popup.component-2srL34Aq.mjs.map → acorex-platform-widgets-tabular-data-edit-popup.component-CBOUSkL4.mjs.map} +1 -1
  69. package/fesm2022/{acorex-platform-widgets-tabular-data-view-popup.component-D9654sA3.mjs → acorex-platform-widgets-tabular-data-view-popup.component-Dl5U2HFR.mjs} +4 -4
  70. package/fesm2022/{acorex-platform-widgets-tabular-data-view-popup.component-D9654sA3.mjs.map → acorex-platform-widgets-tabular-data-view-popup.component-Dl5U2HFR.mjs.map} +1 -1
  71. package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-C1VgsL1j.mjs → acorex-platform-widgets-text-block-widget-designer.component-CG_2APU3.mjs} +4 -4
  72. package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-C1VgsL1j.mjs.map → acorex-platform-widgets-text-block-widget-designer.component-CG_2APU3.mjs.map} +1 -1
  73. package/fesm2022/acorex-platform-widgets.mjs +942 -706
  74. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  75. package/fesm2022/acorex-platform-workflow.mjs +25 -25
  76. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  77. package/layout/builder/index.d.ts +21 -13
  78. package/layout/components/index.d.ts +106 -2
  79. package/layout/entity/index.d.ts +9 -0
  80. package/layout/views/index.d.ts +83 -24
  81. package/package.json +1 -1
  82. package/runtime/index.d.ts +5 -5
  83. package/widgets/index.d.ts +16 -4
  84. package/domain/README.md +0 -3
  85. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BxdQ5JWS.mjs.map +0 -1
  86. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-D99jLndX.mjs.map +0 -1
  87. package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-5kuroU6r.mjs.map +0 -1
  88. package/fesm2022/acorex-platform-widgets-page-widget-designer.component-tITe8tiu.mjs.map +0 -1
@@ -6,9 +6,9 @@ import { CommonModule } from '@angular/common';
6
6
  import * as i0 from '@angular/core';
7
7
  import { signal, computed, Injectable, InjectionToken, inject, Injector, ChangeDetectorRef, ViewChild, Input, ChangeDetectionStrategy, Component, EventEmitter, effect, Output, input, output, ViewContainerRef, Directive, Optional, Inject, NgModule, ElementRef } from '@angular/core';
8
8
  import { AXDataTableColumnComponent, AXBaseDataTable } from '@acorex/components/data-table';
9
- import { set, merge, cloneDeep, isNil, get, isEqual, sum, isEmpty, isString, isUndefined } from 'lodash-es';
9
+ import { set, merge, cloneDeep, isNil, isEqual, get, sum, isEmpty, isString, isUndefined } from 'lodash-es';
10
10
  import { Subject, filter, BehaviorSubject } from 'rxjs';
11
- import { getSmart, setSmart } from '@acorex/platform/core';
11
+ import { getSmart, setSmart, AXPExpressionEvaluatorService } from '@acorex/platform/core';
12
12
  import { signalStore, withState, withComputed, withMethods, patchState } from '@ngrx/signals';
13
13
  import { AXTranslationService } from '@acorex/core/translation';
14
14
  import { AXUnsubscriber } from '@acorex/core/utils';
@@ -16,6 +16,8 @@ import { convertArrayToDataSource, AXDataSource } from '@acorex/cdk/common';
16
16
 
17
17
  var AXPPageStatus;
18
18
  (function (AXPPageStatus) {
19
+ // Idle statuses
20
+ AXPPageStatus["Idle"] = "idle";
19
21
  // Rendering statuses
20
22
  AXPPageStatus["Rendering"] = "rendering";
21
23
  AXPPageStatus["Rendered"] = "rendered";
@@ -120,10 +122,10 @@ class AXPLayoutBuilderService {
120
122
  }
121
123
  ngOnDestroy() {
122
124
  }
123
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutBuilderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
124
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutBuilderService }); }
125
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutBuilderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
126
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutBuilderService }); }
125
127
  }
126
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutBuilderService, decorators: [{
128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutBuilderService, decorators: [{
127
129
  type: Injectable
128
130
  }] });
129
131
 
@@ -154,10 +156,10 @@ class AXPWidgetRegistryService {
154
156
  all() {
155
157
  return Array.from(this.types.values());
156
158
  }
157
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
158
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetRegistryService, providedIn: 'root' }); }
159
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
160
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetRegistryService, providedIn: 'root' }); }
159
161
  }
160
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetRegistryService, decorators: [{
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetRegistryService, decorators: [{
161
163
  type: Injectable,
162
164
  args: [{
163
165
  providedIn: 'root',
@@ -409,8 +411,8 @@ class AXPWidgetColumnRendererComponent extends AXDataTableColumnComponent {
409
411
  rowData: data
410
412
  };
411
413
  }
412
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetColumnRendererComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
413
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.4", type: AXPWidgetColumnRendererComponent, isStandalone: false, selector: "axp-widget-column-renderer", inputs: { caption: "caption", customExpandIcon: "customExpandIcon", customCollapseIcon: "customCollapseIcon", customWidth: "customWidth", node: "node", footerTemplate: "footerTemplate", expandHandler: "expandHandler", cellTemplate: "cellTemplate", headerTemplate: "headerTemplate" }, providers: [
414
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetColumnRendererComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
415
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: AXPWidgetColumnRendererComponent, isStandalone: false, selector: "axp-widget-column-renderer", inputs: { caption: "caption", customExpandIcon: "customExpandIcon", customCollapseIcon: "customCollapseIcon", customWidth: "customWidth", node: "node", footerTemplate: "footerTemplate", expandHandler: "expandHandler", cellTemplate: "cellTemplate", headerTemplate: "headerTemplate" }, providers: [
414
416
  AXPLayoutBuilderService,
415
417
  { provide: AXDataTableColumnComponent, useExisting: AXPWidgetColumnRendererComponent },
416
418
  ], viewQueries: [{ propertyName: "_contentFooterTemplate", first: true, predicate: ["footer"], descendants: true }, { propertyName: "_contentCellTemplate", first: true, predicate: ["cell"], descendants: true }, { propertyName: "_contentHeaderTemplate", first: true, predicate: ["header"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
@@ -443,7 +445,7 @@ class AXPWidgetColumnRendererComponent extends AXDataTableColumnComponent {
443
445
  <ng-template #footer></ng-template>
444
446
  `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
445
447
  }
446
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetColumnRendererComponent, decorators: [{
448
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetColumnRendererComponent, decorators: [{
447
449
  type: Component,
448
450
  args: [{
449
451
  selector: 'axp-widget-column-renderer',
@@ -531,6 +533,7 @@ withComputed(({ data, state, lastChange, initialSnapshot, previousSnapshot }) =>
531
533
  isReset: computed(() => state() === 'restored'),
532
534
  isInitiated: computed(() => state() === 'initiated'),
533
535
  isEmpty: computed(() => Object.keys(data()).length === 0),
536
+ isDirty: computed(() => !isEqual(data(), previousSnapshot())),
534
537
  snapshot: computed(() => cloneDeep(data())), // Current data snapshot
535
538
  initial: computed(() => cloneDeep(initialSnapshot())), // Initial snapshot
536
539
  previous: computed(() => cloneDeep(previousSnapshot())), // Previous snapshot
@@ -646,10 +649,10 @@ class AXPWidgetContainerComponent {
646
649
  }
647
650
  });
648
651
  }
649
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
650
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.4", type: AXPWidgetContainerComponent, isStandalone: false, selector: "axp-widgets-container", inputs: { context: "context", functions: "functions" }, outputs: { onContextChanged: "onContextChanged" }, host: { styleAttribute: "display: contents;" }, providers: [AXPLayoutBuilderService, AXPLayoutBuilderContextStore], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
652
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
653
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: AXPWidgetContainerComponent, isStandalone: false, selector: "axp-widgets-container", inputs: { context: "context", functions: "functions" }, outputs: { onContextChanged: "onContextChanged" }, host: { styleAttribute: "display: contents;" }, providers: [AXPLayoutBuilderService, AXPLayoutBuilderContextStore], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
651
654
  }
652
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetContainerComponent, decorators: [{
655
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetContainerComponent, decorators: [{
653
656
  type: Component,
654
657
  args: [{
655
658
  selector: 'axp-widgets-container',
@@ -668,12 +671,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImpor
668
671
  }] } });
669
672
 
670
673
  class AXPWidgetPlaceholderComponent {
671
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetPlaceholderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
672
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.4", type: AXPWidgetPlaceholderComponent, isStandalone: true, selector: "axp-widget-placeholder", ngImport: i0, template: `<div>
674
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetPlaceholderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
675
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.6", type: AXPWidgetPlaceholderComponent, isStandalone: true, selector: "axp-widget-placeholder", ngImport: i0, template: `<div>
673
676
  <ax-skeleton class="ax-w-full ax-h-10 ax-rounded-md"></ax-skeleton>
674
677
  </div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: AXSkeletonModule }, { kind: "component", type: i1$1.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
675
678
  }
676
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetPlaceholderComponent, decorators: [{
679
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetPlaceholderComponent, decorators: [{
677
680
  type: Component,
678
681
  args: [{
679
682
  selector: 'axp-widget-placeholder',
@@ -704,11 +707,10 @@ class AXPWidgetRendererDirective {
704
707
  this.unsubscriber = inject(AXUnsubscriber);
705
708
  this.translateService = inject(AXTranslationService);
706
709
  this.widgetService = inject(AXPWidgetRegistryService);
710
+ this.expressionEvaluator = inject(AXPExpressionEvaluatorService);
707
711
  this.viewContainerRef = inject(ViewContainerRef);
708
712
  this.isLoading = signal(false);
709
- this.expressionCache = new Map();
710
713
  this.expressionEvaluators = new Map();
711
- this.scope = null;
712
714
  this.onContextChanged = new Subject();
713
715
  effect(async () => {
714
716
  const changed = this.contextService.changeEvent();
@@ -838,7 +840,7 @@ class AXPWidgetRendererDirective {
838
840
  }
839
841
  Object.entries(obj).forEach(([key, value]) => {
840
842
  const currentPath = pathPrefix ? `${pathPrefix}.${key}` : key;
841
- if (typeof value === 'string' && value.includes('{{')) {
843
+ if (typeof value === 'string' && this.expressionEvaluator.isExpression(value)) {
842
844
  // Cache dynamic expression for later evaluation
843
845
  this.expressionEvaluators.set(currentPath, () => this.evaluateExpression(value));
844
846
  }
@@ -884,170 +886,172 @@ class AXPWidgetRendererDirective {
884
886
  }
885
887
  async evaluateExpression(templateExpression) {
886
888
  try {
887
- // Check cache first, but cache the function for evaluation, not the evaluated value
888
- if (!this.expressionCache.has(templateExpression)) {
889
- const expressionMatch = templateExpression.match(/\{\{\s*(.*?)\s*\}\}/);
890
- if (!expressionMatch) {
891
- throw Error(`No valid expression found in "${templateExpression}"`);
892
- }
893
- const expression = expressionMatch[1];
894
- // Cache the evaluation function instead of the result
895
- const scope = this.getGlobalScope();
896
- const evaluationFunction = async () => {
897
- const sandbox = new Function('scope', `with (scope) { return (async function() { return ${expression}; })(); }`);
898
- return await sandbox(scope);
899
- };
900
- this.expressionCache.set(templateExpression, evaluationFunction);
901
- }
902
- // Retrieve the function from the cache and call it to evaluate the expression
903
- const evaluate = this.expressionCache.get(templateExpression);
904
- if (evaluate) {
905
- const result = await evaluate();
906
- return result;
907
- }
908
- else {
909
- throw Error(`Failed to retrieve evaluation function for expression: "${templateExpression}"`);
910
- }
889
+ const scope = this.buildExpressionScope();
890
+ return await this.expressionEvaluator.evaluate(templateExpression, scope);
911
891
  }
912
892
  catch (error) {
913
893
  console.error('Error evaluating expression:', error);
914
894
  return false;
915
895
  }
916
896
  }
917
- getGlobalScope() {
918
- if (this.scope)
919
- return this.scope;
920
- this.scope = {};
921
- set(this.scope, 'context', this.getContextScope());
922
- set(this.scope, 'events', this.getEventScope());
923
- set(this.scope, 'widget', this.getWidgetScope());
924
- set(this.scope, 'methods', this.getFunctionScope());
925
- set(this.scope, 'vars', this.getVariablesScope());
926
- return this.scope;
897
+ buildExpressionScope() {
898
+ return {
899
+ context: this.getContextScope(),
900
+ events: this.getEventScope(),
901
+ widget: this.getWidgetScope(),
902
+ methods: this.getFunctionScope(),
903
+ vars: this.getVariablesScope(),
904
+ };
927
905
  }
928
906
  getContextScope() {
929
- const scope = {};
930
- set(scope, 'eval', (path) => this.contextService.getValue(path));
931
- set(scope, 'set', (path, value) => {
932
- this.contextService.update(path, value);
933
- });
934
- return scope;
907
+ return {
908
+ eval: (path) => {
909
+ //TODO: Handle array index
910
+ const fullPath = path.startsWith('>') ? `${this.instance?.parentPath()}.${path.substring(1)}` : path;
911
+ const value = this.contextService.getValue(fullPath);
912
+ return value;
913
+ },
914
+ set: (path, value) => {
915
+ this.contextService.update(path, value);
916
+ },
917
+ isDirty: () => {
918
+ return this.contextService.isDirty();
919
+ },
920
+ };
935
921
  }
936
922
  getEventScope() {
937
- const scope = {};
938
- set(scope, 'context', (path) => {
939
- return this.onContextChanged.pipe(filter((c) => {
940
- if (path == null) {
941
- return true;
942
- }
943
- if (path.endsWith('*')) {
944
- return c.path.startsWith(path.substring(0, path.length - 1));
945
- }
946
- else if (path.startsWith('*')) {
947
- return c.path.startsWith(path.substring(1, path.length));
948
- }
949
- else {
950
- return path == c.path;
951
- }
952
- }));
953
- });
954
- set(scope, 'from', (event) => get(this.instance.api(), event));
955
- return scope;
923
+ return {
924
+ context: (path) => {
925
+ return this.onContextChanged.pipe(filter((c) => {
926
+ // If no path filter specified, pass all events
927
+ if (path == null || path === '') {
928
+ return true;
929
+ }
930
+ // Ensure c.path exists
931
+ if (!c.path) {
932
+ return false;
933
+ }
934
+ // Pattern: "prefix*" - matches paths that start with prefix
935
+ if (path.endsWith('*')) {
936
+ const prefix = path.substring(0, path.length - 1);
937
+ return c.path.startsWith(prefix);
938
+ }
939
+ // Pattern: "*suffix" - matches paths that end with suffix
940
+ else if (path.startsWith('*')) {
941
+ const suffix = path.substring(1);
942
+ return c.path.endsWith(suffix);
943
+ }
944
+ // Exact match
945
+ else {
946
+ return c.path === path;
947
+ }
948
+ }));
949
+ },
950
+ from: (event) => get(this.instance.api(), event),
951
+ };
956
952
  }
957
953
  getWidgetScope() {
958
- const scope = {};
959
- set(scope, 'call', (name, ...args) => {
960
- this.instance.call(name, ...args);
961
- });
962
- set(scope, 'setValue', (value) => {
963
- this.instance.setValue(value);
964
- });
965
- set(scope, 'output', (name) => {
966
- this.instance.output(name);
967
- });
968
- set(scope, 'find', (id) => {
969
- return this.builderService.getWidget(id);
970
- });
971
- return scope;
954
+ return {
955
+ call: (name, ...args) => {
956
+ this.instance.call(name, ...args);
957
+ },
958
+ setValue: (value) => {
959
+ this.instance.setValue(value);
960
+ },
961
+ output: (name) => {
962
+ this.instance.output(name);
963
+ },
964
+ find: (id) => {
965
+ return this.builderService.getWidget(id);
966
+ },
967
+ };
972
968
  }
973
969
  getFunctionScope() {
974
- const scope = {};
975
- set(scope, 'sum', (values) => {
976
- return sum(values);
977
- });
978
- set(scope, 'translate', (text, options) => {
979
- return this.translateService.translateAsync(text, options);
980
- });
981
- set(scope, 'widgetInfo', (name) => {
982
- return this.widgetService.resolve(name);
983
- });
984
- Object.entries(this.builderService.functions).forEach((i) => {
985
- set(scope, i[0], (...args) => {
986
- return i[1](...args);
987
- });
970
+ const scope = {
971
+ sum: (values) => {
972
+ return sum(values);
973
+ },
974
+ translate: (text, options) => {
975
+ return this.translateService.translateAsync(text, options);
976
+ },
977
+ widgetInfo: (name) => {
978
+ return this.widgetService.resolve(name);
979
+ },
980
+ };
981
+ // Add custom functions from builder service
982
+ Object.entries(this.builderService.functions).forEach(([key, fn]) => {
983
+ scope[key] = (...args) => {
984
+ return fn(...args);
985
+ };
988
986
  });
989
987
  return scope;
990
988
  }
991
989
  getVariablesScope() {
992
- const scope = {};
993
- set(scope, 'eval', (path) => get(this.builderService.variables, path));
994
- return scope;
990
+ return {
991
+ eval: (path) => get(this.builderService.variables, path),
992
+ };
995
993
  }
996
994
  async assignTriggers() {
997
- this.node().triggers?.forEach((t) => {
998
- const event = this.evaluateTrigger(t.event);
999
- event?.pipe(this.unsubscriber.takeUntilDestroy).subscribe((c) => {
1000
- const exec = (action) => {
1001
- if (!isEmpty(action) && isString(action)) {
1002
- this.evaluateAction(action);
1003
- }
1004
- };
1005
- const actions = Array.isArray(t.action) ? t.action : [t.action];
1006
- actions.forEach((a) => exec(a));
1007
- });
1008
- });
995
+ const node = this.node();
996
+ // Check multiple possible locations for triggers
997
+ const triggers = node.triggers || node.options?.['triggers'] || this.mergedOptions()?.triggers;
998
+ if (!triggers) {
999
+ return;
1000
+ }
1001
+ for (const trigger of triggers) {
1002
+ try {
1003
+ const event = await this.evaluateTrigger(trigger.event);
1004
+ if (event) {
1005
+ event.pipe(this.unsubscriber.takeUntilDestroy).subscribe(() => {
1006
+ const exec = async (action) => {
1007
+ if (!isEmpty(action) && isString(action)) {
1008
+ await this.evaluateAction(action);
1009
+ }
1010
+ };
1011
+ const actions = Array.isArray(trigger.action) ? trigger.action : [trigger.action];
1012
+ actions.forEach((a) => exec(a));
1013
+ });
1014
+ }
1015
+ }
1016
+ catch (error) {
1017
+ console.error('Error assigning trigger:', error);
1018
+ }
1019
+ }
1009
1020
  }
1010
- evaluateTrigger(templateExpression) {
1021
+ async evaluateTrigger(templateExpression) {
1011
1022
  try {
1012
- const expressionMatch = templateExpression.match(/\{\{\s*(.*?)\s*\}\}/);
1013
- if (!expressionMatch) {
1014
- throw Error(`No valid expression found in "${templateExpression}"`);
1023
+ const scope = this.buildExpressionScope();
1024
+ const result = await this.expressionEvaluator.evaluate(templateExpression, scope);
1025
+ // Check if result is an Observable
1026
+ if (result && typeof result.subscribe === 'function') {
1027
+ return result;
1028
+ }
1029
+ else {
1030
+ return null;
1015
1031
  }
1016
- const expression = expressionMatch[1];
1017
- // Cache the evaluation function instead of the result
1018
- const scope = this.getGlobalScope();
1019
- const sandbox = new Function('scope', `with (scope) { return ( function() { return ${expression}; })(); }`);
1020
- return sandbox(scope);
1021
1032
  }
1022
1033
  catch (error) {
1023
- console.error('Error evaluating expression:', error);
1034
+ console.error('Error evaluating trigger expression:', error);
1024
1035
  return null;
1025
1036
  }
1026
1037
  }
1027
- evaluateAction(templateExpression) {
1038
+ async evaluateAction(templateExpression) {
1028
1039
  try {
1029
- const expressionMatch = templateExpression.match(/\{\{\s*(.*?)\s*\}\}/);
1030
- if (!expressionMatch) {
1031
- throw Error(`No valid expression found in "${templateExpression}"`);
1032
- }
1033
- const expression = expressionMatch[1];
1034
- // Cache the evaluation function instead of the result
1035
- const scope = this.getGlobalScope();
1036
- const sandbox = new Function('scope', `with (scope) { ${expression} }`);
1037
- sandbox(scope);
1040
+ const scope = this.buildExpressionScope();
1041
+ await this.expressionEvaluator.evaluate(templateExpression, scope);
1038
1042
  }
1039
1043
  catch (error) {
1040
- console.error('Error evaluating expression:', error);
1044
+ console.error('Error evaluating action expression:', templateExpression, error);
1041
1045
  }
1042
1046
  }
1043
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetRendererDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1044
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.4", type: AXPWidgetRendererDirective, isStandalone: false, selector: "[axp-widget-renderer]", inputs: { parentNode: { classPropertyName: "parentNode", publicName: "parentNode", isSignal: true, isRequired: false, transformFunction: null }, index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: true, transformFunction: null }, node: { classPropertyName: "node", publicName: "node", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onOptionsChanged: "onOptionsChanged", onValueChanged: "onValueChanged" }, providers: [
1047
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetRendererDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1048
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: AXPWidgetRendererDirective, isStandalone: false, selector: "[axp-widget-renderer]", inputs: { parentNode: { classPropertyName: "parentNode", publicName: "parentNode", isSignal: true, isRequired: false, transformFunction: null }, index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: true, transformFunction: null }, node: { classPropertyName: "node", publicName: "node", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onOptionsChanged: "onOptionsChanged", onValueChanged: "onValueChanged" }, providers: [
1045
1049
  {
1046
1050
  provide: AXUnsubscriber,
1047
1051
  },
1048
1052
  ], exportAs: ["widgetRenderer"], usesOnChanges: true, ngImport: i0 }); }
1049
1053
  }
1050
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetRendererDirective, decorators: [{
1054
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetRendererDirective, decorators: [{
1051
1055
  type: Directive,
1052
1056
  args: [{
1053
1057
  selector: '[axp-widget-renderer]',
@@ -1103,11 +1107,11 @@ class AXPLayoutBuilderModule {
1103
1107
  f();
1104
1108
  });
1105
1109
  }
1106
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutBuilderModule, deps: [{ token: 'AXPLayoutBuilderModuleFactory', optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
1107
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutBuilderModule, declarations: [AXPWidgetContainerComponent, AXPWidgetColumnRendererComponent, AXPWidgetRendererDirective], imports: [CommonModule, PortalModule, AXSkeletonModule, CommonModule], exports: [AXPWidgetContainerComponent, AXPWidgetColumnRendererComponent, AXPWidgetRendererDirective] }); }
1108
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutBuilderModule, imports: [CommonModule, PortalModule, AXSkeletonModule, CommonModule] }); }
1110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutBuilderModule, deps: [{ token: 'AXPLayoutBuilderModuleFactory', optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
1111
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutBuilderModule, declarations: [AXPWidgetContainerComponent, AXPWidgetColumnRendererComponent, AXPWidgetRendererDirective], imports: [CommonModule, PortalModule, AXSkeletonModule, CommonModule], exports: [AXPWidgetContainerComponent, AXPWidgetColumnRendererComponent, AXPWidgetRendererDirective] }); }
1112
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutBuilderModule, imports: [CommonModule, PortalModule, AXSkeletonModule, CommonModule] }); }
1109
1113
  }
1110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutBuilderModule, decorators: [{
1114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutBuilderModule, decorators: [{
1111
1115
  type: NgModule,
1112
1116
  args: [{
1113
1117
  imports: [CommonModule, PortalModule, AXSkeletonModule, CommonModule],
@@ -1138,10 +1142,10 @@ class AXPWidgetDataSourceProviderService {
1138
1142
  async get(name) {
1139
1143
  return (await this.items()).find((c) => c.name == name);
1140
1144
  }
1141
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetDataSourceProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1142
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetDataSourceProviderService, providedIn: 'root' }); }
1145
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetDataSourceProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1146
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetDataSourceProviderService, providedIn: 'root' }); }
1143
1147
  }
1144
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPWidgetDataSourceProviderService, decorators: [{
1148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPWidgetDataSourceProviderService, decorators: [{
1145
1149
  type: Injectable,
1146
1150
  args: [{ providedIn: 'root' }]
1147
1151
  }] });
@@ -1249,17 +1253,17 @@ class AXPBaseWidgetComponent extends AXPLayoutElement {
1249
1253
  this._children.set([...children]);
1250
1254
  }
1251
1255
  onAdded() { }
1252
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPBaseWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1253
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPBaseWidgetComponent }); }
1256
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPBaseWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1257
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPBaseWidgetComponent }); }
1254
1258
  }
1255
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPBaseWidgetComponent, decorators: [{
1259
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPBaseWidgetComponent, decorators: [{
1256
1260
  type: Injectable
1257
1261
  }] });
1258
1262
  class AXPLayoutWidgetComponent extends AXPBaseWidgetComponent {
1259
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1260
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutWidgetComponent }); }
1263
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1264
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutWidgetComponent }); }
1261
1265
  }
1262
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPLayoutWidgetComponent, decorators: [{
1266
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPLayoutWidgetComponent, decorators: [{
1263
1267
  type: Injectable
1264
1268
  }] });
1265
1269
  class AXPValueWidgetComponent extends AXPLayoutWidgetComponent {
@@ -1271,6 +1275,7 @@ class AXPValueWidgetComponent extends AXPLayoutWidgetComponent {
1271
1275
  this.isValueWidget = () => this._isValueWidget;
1272
1276
  this.onValueChanged = new Subject();
1273
1277
  this.fullPath = signal(null);
1278
+ this.parentPath = signal(null);
1274
1279
  this.getValue = computed(() => {
1275
1280
  return this.fullPath() ? this.extractValue(this.fullPath()) : null;
1276
1281
  }, { equal: isEqual });
@@ -1351,6 +1356,7 @@ class AXPValueWidgetComponent extends AXPLayoutWidgetComponent {
1351
1356
  }
1352
1357
  //
1353
1358
  this.fullPath.set(sections.reverse().join('.'));
1359
+ this.parentPath.set(sections.slice(0, sections.length - 1).join('.'));
1354
1360
  this._id = this.name || this.parent ? ids.reverse().join('_') : null;
1355
1361
  if (this._id) {
1356
1362
  this.layoutService.registerWidget(this._id, this);
@@ -1361,10 +1367,10 @@ class AXPValueWidgetComponent extends AXPLayoutWidgetComponent {
1361
1367
  this.setValue(e.value);
1362
1368
  }
1363
1369
  }
1364
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPValueWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1365
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPValueWidgetComponent }); }
1370
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPValueWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1371
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPValueWidgetComponent }); }
1366
1372
  }
1367
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPValueWidgetComponent, decorators: [{
1373
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPValueWidgetComponent, decorators: [{
1368
1374
  type: Injectable
1369
1375
  }] });
1370
1376
  class AXPDataListWidgetComponent extends AXPValueWidgetComponent {
@@ -1432,10 +1438,10 @@ class AXPDataListWidgetComponent extends AXPValueWidgetComponent {
1432
1438
  }
1433
1439
  });
1434
1440
  }
1435
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPDataListWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1436
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPDataListWidgetComponent }); }
1441
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPDataListWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
1442
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPDataListWidgetComponent }); }
1437
1443
  }
1438
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPDataListWidgetComponent, decorators: [{
1444
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPDataListWidgetComponent, decorators: [{
1439
1445
  type: Injectable
1440
1446
  }] });
1441
1447
  class AXPColumnWidgetComponent {
@@ -1445,10 +1451,10 @@ class AXPColumnWidgetComponent {
1445
1451
  this.options = this.token.options ?? {};
1446
1452
  this.rawValue = null;
1447
1453
  }
1448
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPColumnWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1449
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPColumnWidgetComponent }); }
1454
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPColumnWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1455
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPColumnWidgetComponent }); }
1450
1456
  }
1451
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: AXPColumnWidgetComponent, decorators: [{
1457
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: AXPColumnWidgetComponent, decorators: [{
1452
1458
  type: Injectable
1453
1459
  }] });
1454
1460