@acorex/platform 20.8.13 → 20.8.15

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 (123) hide show
  1. package/{types/acorex-platform-auth.d.ts → auth/index.d.ts} +2 -14
  2. package/{types/acorex-platform-common.d.ts → common/index.d.ts} +30 -302
  3. package/{types/acorex-platform-core.d.ts → core/index.d.ts} +44 -188
  4. package/{types/acorex-platform-domain.d.ts → domain/index.d.ts} +412 -744
  5. package/fesm2022/acorex-platform-auth.mjs +27 -125
  6. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  7. package/fesm2022/{acorex-platform-common-common-settings.provider-Bi1RYif5.mjs → acorex-platform-common-common-settings.provider-DVvuLUfF.mjs} +32 -30
  8. package/fesm2022/acorex-platform-common-common-settings.provider-DVvuLUfF.mjs.map +1 -0
  9. package/fesm2022/acorex-platform-common.mjs +205 -711
  10. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-core.mjs +127 -420
  12. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  13. package/fesm2022/acorex-platform-domain.mjs +830 -561
  14. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  15. package/fesm2022/acorex-platform-layout-builder.mjs +114 -634
  16. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  17. package/fesm2022/{acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs → acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs} +9 -9
  18. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-layout-components.mjs +877 -3362
  20. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-designer.mjs +204 -456
  22. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-layout-entity.mjs +10062 -14672
  24. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  25. package/fesm2022/acorex-platform-layout-views.mjs +171 -413
  26. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  27. package/fesm2022/acorex-platform-layout-widget-core.mjs +441 -507
  28. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  29. package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs → acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs} +10 -10
  30. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs.map +1 -0
  31. package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs → acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs} +76 -21
  32. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs.map +1 -0
  33. package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs → acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs} +7 -6
  34. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs.map +1 -0
  35. package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs → acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs} +12 -12
  36. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs.map +1 -0
  37. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs +111 -0
  38. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs.map +1 -0
  39. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs} +5 -5
  40. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs.map +1 -0
  41. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs} +4 -4
  42. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs.map +1 -0
  43. package/fesm2022/{acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs → acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs} +6 -6
  44. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs.map +1 -0
  45. package/fesm2022/acorex-platform-layout-widgets.mjs +3429 -5632
  46. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  47. package/fesm2022/acorex-platform-native.mjs +7 -8
  48. package/fesm2022/acorex-platform-native.mjs.map +1 -1
  49. package/fesm2022/acorex-platform-runtime.mjs +166 -391
  50. package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
  51. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs +160 -0
  52. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs.map +1 -0
  53. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D2CtNrSn.mjs +1716 -0
  54. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D2CtNrSn.mjs.map +1 -0
  55. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs +120 -0
  56. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs.map +1 -0
  57. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs → acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs} +23 -16
  58. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs.map +1 -0
  59. package/fesm2022/{acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs → acorex-platform-themes-default-error-401.component-53VB-PS_.mjs} +4 -4
  60. package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs.map +1 -0
  61. package/fesm2022/{acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs → acorex-platform-themes-default-error-404.component-DVF9soT5.mjs} +4 -4
  62. package/fesm2022/acorex-platform-themes-default-error-404.component-DVF9soT5.mjs.map +1 -0
  63. package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs +19 -0
  64. package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs.map +1 -0
  65. package/fesm2022/acorex-platform-themes-default.mjs +61 -1784
  66. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  67. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs → acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs} +6 -6
  68. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs.map +1 -0
  69. package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs} +6 -6
  70. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs.map +1 -0
  71. package/fesm2022/{acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs → acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs} +25 -24
  72. package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +1 -0
  73. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs +65 -0
  74. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs.map +1 -0
  75. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs +64 -0
  76. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs.map +1 -0
  77. package/fesm2022/acorex-platform-themes-shared.mjs +305 -408
  78. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  79. package/fesm2022/acorex-platform-workflow.mjs +100 -359
  80. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  81. package/fesm2022/acorex-platform.mjs.map +1 -1
  82. package/{types/acorex-platform-layout-builder.d.ts → layout/builder/index.d.ts} +38 -160
  83. package/{types/acorex-platform-layout-components.d.ts → layout/components/index.d.ts} +125 -854
  84. package/{types/acorex-platform-layout-designer.d.ts → layout/designer/index.d.ts} +18 -96
  85. package/{types/acorex-platform-layout-entity.d.ts → layout/entity/index.d.ts} +65 -848
  86. package/{types/acorex-platform-layout-views.d.ts → layout/views/index.d.ts} +47 -80
  87. package/{types/acorex-platform-layout-widget-core.d.ts → layout/widget-core/index.d.ts} +197 -274
  88. package/{types/acorex-platform-layout-widgets.d.ts → layout/widgets/index.d.ts} +124 -608
  89. package/{types/acorex-platform-native.d.ts → native/index.d.ts} +7 -0
  90. package/package.json +33 -33
  91. package/runtime/index.d.ts +307 -0
  92. package/{types/acorex-platform-themes-default.d.ts → themes/default/index.d.ts} +4 -113
  93. package/{types/acorex-platform-themes-shared.d.ts → themes/shared/index.d.ts} +4 -5
  94. package/{types/acorex-platform-workflow.d.ts → workflow/index.d.ts} +81 -162
  95. package/fesm2022/acorex-platform-common-common-settings.provider-Bi1RYif5.mjs.map +0 -1
  96. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +0 -1
  97. package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs.map +0 -1
  98. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs.map +0 -1
  99. package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs.map +0 -1
  100. package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs.map +0 -1
  101. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGO75IMz.mjs +0 -116
  102. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGO75IMz.mjs.map +0 -1
  103. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs.map +0 -1
  104. package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs.map +0 -1
  105. package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs.map +0 -1
  106. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs +0 -160
  107. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs.map +0 -1
  108. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs +0 -120
  109. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs.map +0 -1
  110. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs.map +0 -1
  111. package/fesm2022/acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs.map +0 -1
  112. package/fesm2022/acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs.map +0 -1
  113. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs +0 -19
  114. package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs.map +0 -1
  115. package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs.map +0 -1
  116. package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs.map +0 -1
  117. package/fesm2022/acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs.map +0 -1
  118. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs +0 -94
  119. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs.map +0 -1
  120. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs +0 -86
  121. package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs.map +0 -1
  122. package/types/acorex-platform-runtime.d.ts +0 -571
  123. /package/{types/acorex-platform.d.ts → index.d.ts} +0 -0
@@ -1,12 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, inject, Injectable, Directive, computed, Injector, ChangeDetectionStrategy, Component, input, ElementRef, ViewContainerRef, signal, effect, runInInjectionContext, Optional, Inject, NgModule, EventEmitter, HostListener, Output, provideAppInitializer, Pipe } from '@angular/core';
3
- import { get, isPlainObject, set, isNil, isEmpty, isArray, merge, isObjectLike, transform, isEqual, differenceWith, union, cloneDeep, has, sortBy, isUndefined, endsWith, startsWith, includes, lte, gte, lt, gt, orderBy } from 'lodash-es';
3
+ import { get, isPlainObject, set, isNil, isEmpty, isArray, merge, isObjectLike, transform, isEqual, differenceWith, union, cloneDeep, sortBy, isUndefined, endsWith, startsWith, includes, lte, gte, lt, gt, orderBy } from 'lodash-es';
4
4
  import { signalStore, withState, withComputed, withMethods, patchState } from '@ngrx/signals';
5
5
  import * as i1 from '@acorex/components/skeleton';
6
6
  import { AXSkeletonModule } from '@acorex/components/skeleton';
7
7
  import { Subject, interval, fromEvent } from 'rxjs';
8
- import { AXDataSource } from '@acorex/cdk/common';
9
- import { resolveMultiLanguageString } from '@acorex/core/translation';
10
8
  import { AXCalendarService } from '@acorex/core/date-time';
11
9
  import { startWith, map, debounceTime } from 'rxjs/operators';
12
10
 
@@ -21,10 +19,10 @@ class AXPActivityLogService {
21
19
  async getHistoryByIds(refId, refType, ids) {
22
20
  return (await Promise.all(this.providers?.map((p) => p.getHistoryByIds(refId, refType, ids)) ?? [])).flat();
23
21
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPActivityLogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
25
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPActivityLogService, providedIn: 'root' }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPActivityLogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
23
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPActivityLogService, providedIn: 'root' }); }
26
24
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPActivityLogService, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPActivityLogService, decorators: [{
28
26
  type: Injectable,
29
27
  args: [{ providedIn: 'root' }]
30
28
  }] });
@@ -174,10 +172,10 @@ class AXPColorPaletteService {
174
172
  const uniquePalettes = allPalettes.filter((palette, index, self) => index === self.findIndex((p) => p.name === palette.name));
175
173
  this.cache = uniquePalettes;
176
174
  }
177
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPColorPaletteService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
178
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPColorPaletteService, providedIn: 'root' }); }
175
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPColorPaletteService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
176
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPColorPaletteService, providedIn: 'root' }); }
179
177
  }
180
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPColorPaletteService, decorators: [{
178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPColorPaletteService, decorators: [{
181
179
  type: Injectable,
182
180
  args: [{
183
181
  providedIn: 'root',
@@ -292,10 +290,10 @@ class AXPDefaultColorPalettesProvider extends AXPColorPaletteProvider {
292
290
  },
293
291
  ];
294
292
  }
295
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDefaultColorPalettesProvider, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
296
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDefaultColorPalettesProvider }); }
293
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDefaultColorPalettesProvider, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
294
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDefaultColorPalettesProvider }); }
297
295
  }
298
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDefaultColorPalettesProvider, decorators: [{
296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDefaultColorPalettesProvider, decorators: [{
299
297
  type: Injectable
300
298
  }] });
301
299
 
@@ -481,10 +479,10 @@ class AXPColumnWidthService {
481
479
  }
482
480
  return width;
483
481
  }
484
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPColumnWidthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
485
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPColumnWidthService, providedIn: 'root' }); }
482
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPColumnWidthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
483
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPColumnWidthService, providedIn: 'root' }); }
486
484
  }
487
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPColumnWidthService, decorators: [{
485
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPColumnWidthService, decorators: [{
488
486
  type: Injectable,
489
487
  args: [{
490
488
  providedIn: 'root',
@@ -513,17 +511,15 @@ const defaultColumnWidthProvider = {
513
511
  { name: 'content', width: '500px', priority: 10 },
514
512
  { name: 'level', width: '100px', priority: 10 },
515
513
  { name: 'order', width: '100px', priority: 10 },
516
- { name: 'phones', width: '300px', priority: 10 },
517
- { name: 'emails', width: '300px', priority: 10 },
518
514
  ],
519
515
  };
520
516
  //#endregion
521
517
 
522
518
  class AXPComponentSlot {
523
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlot, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
524
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: AXPComponentSlot, isStandalone: true, ngImport: i0 }); }
519
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlot, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
520
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.19", type: AXPComponentSlot, isStandalone: true, ngImport: i0 }); }
525
521
  }
526
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlot, decorators: [{
522
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlot, decorators: [{
527
523
  type: Directive
528
524
  }] });
529
525
 
@@ -791,10 +787,9 @@ function getEnumValues(enumType) {
791
787
 
792
788
  class AXPContextChangeEvent {
793
789
  }
794
- //#endregion
795
- //#region ---- Context signal store ----
796
- // Shared reactive context: root injector has a default instance; widget/layout trees
797
- const AXPContextStore = signalStore(
790
+ const AXPContextStore = signalStore({
791
+ providedIn: 'root',
792
+ },
798
793
  // Initial State
799
794
  withState(() => ({
800
795
  data: {}, // Shared context data
@@ -844,7 +839,7 @@ withMethods((store) => ({
844
839
  lastChange: changeEvent,
845
840
  });
846
841
  },
847
- patch(context, skipDirtyTracking = false) {
842
+ patch(context) {
848
843
  const currentData = cloneDeep(store.data());
849
844
  // Update the value and prepare the change event
850
845
  const updatedData = { ...currentData, ...context };
@@ -854,7 +849,7 @@ withMethods((store) => ({
854
849
  };
855
850
  // Patch the state
856
851
  patchState(store, {
857
- ...(skipDirtyTracking ? {} : { previousSnapshot: store.snapshot() }),
852
+ previousSnapshot: store.snapshot(), // Save the previous state
858
853
  data: updatedData,
859
854
  state: 'changed',
860
855
  lastChange: changeEvent,
@@ -902,12 +897,7 @@ withMethods((store) => ({
902
897
  getValue(path) {
903
898
  return getSmart(store.data(), path);
904
899
  },
905
- // Check if a path exists in the context
906
- hasValue(path) {
907
- return has(store.data(), path);
908
- },
909
900
  })));
910
- //#endregion
911
901
 
912
902
  class AXPExpressionEvaluatorScopeProviderContext {
913
903
  constructor() {
@@ -937,12 +927,7 @@ class AXPExpressionEvaluatorScopeProviderService {
937
927
  : [];
938
928
  const context = new AXPExpressionEvaluatorScopeProviderContext();
939
929
  for (const provider of providers) {
940
- // Resolve lazy-loaded providers (provideLazyProvider useFactory returns Promise<Provider>)
941
- const resolved = await Promise.resolve(provider);
942
- if (!resolved || typeof resolved.provide !== 'function') {
943
- continue;
944
- }
945
- await resolved.provide(context);
930
+ await provider.provide(context);
946
931
  }
947
932
  this.cache = context.getScopes();
948
933
  }
@@ -950,10 +935,10 @@ class AXPExpressionEvaluatorScopeProviderService {
950
935
  await this.load();
951
936
  return this.cache || {};
952
937
  }
953
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPExpressionEvaluatorScopeProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
954
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPExpressionEvaluatorScopeProviderService, providedIn: 'root' }); }
938
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPExpressionEvaluatorScopeProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
939
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPExpressionEvaluatorScopeProviderService, providedIn: 'root' }); }
955
940
  }
956
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPExpressionEvaluatorScopeProviderService, decorators: [{
941
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPExpressionEvaluatorScopeProviderService, decorators: [{
957
942
  type: Injectable,
958
943
  args: [{ providedIn: 'root' }]
959
944
  }] });
@@ -1062,21 +1047,21 @@ class AXPExpressionEvaluatorService {
1062
1047
  }
1063
1048
  return false;
1064
1049
  }
1065
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPExpressionEvaluatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1066
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPExpressionEvaluatorService, providedIn: 'root' }); }
1050
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPExpressionEvaluatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1051
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPExpressionEvaluatorService, providedIn: 'root' }); }
1067
1052
  }
1068
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPExpressionEvaluatorService, decorators: [{
1053
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPExpressionEvaluatorService, decorators: [{
1069
1054
  type: Injectable,
1070
1055
  args: [{ providedIn: 'root' }]
1071
1056
  }] });
1072
1057
 
1073
1058
  class AXPComponentSlotPlaceholderComponent {
1074
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotPlaceholderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1075
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.9", type: AXPComponentSlotPlaceholderComponent, isStandalone: true, selector: "axp-component-slot-placeholder", ngImport: i0, template: `<div>
1059
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotPlaceholderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1060
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.19", type: AXPComponentSlotPlaceholderComponent, isStandalone: true, selector: "axp-component-slot-placeholder", ngImport: i0, template: `<div>
1076
1061
  <ax-skeleton class="ax-w-full ax-h-10 ax-rounded-md"></ax-skeleton>
1077
1062
  </div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: AXSkeletonModule }, { kind: "component", type: i1.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1078
1063
  }
1079
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotPlaceholderComponent, decorators: [{
1064
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotPlaceholderComponent, decorators: [{
1080
1065
  type: Component,
1081
1066
  args: [{
1082
1067
  selector: 'axp-component-slot-placeholder',
@@ -1105,10 +1090,10 @@ class AXPComponentSlotRegistryService {
1105
1090
  get(slotName) {
1106
1091
  return this.registry.get(slotName) || [];
1107
1092
  }
1108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1109
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotRegistryService, providedIn: 'root' }); }
1093
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1094
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotRegistryService, providedIn: 'root' }); }
1110
1095
  }
1111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotRegistryService, decorators: [{
1096
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotRegistryService, decorators: [{
1112
1097
  type: Injectable,
1113
1098
  args: [{
1114
1099
  providedIn: 'root'
@@ -1117,18 +1102,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
1117
1102
 
1118
1103
  class AXPComponentSlotDirective {
1119
1104
  constructor() {
1120
- this.name = input.required(...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
1121
- this.host = input(...(ngDevMode ? [undefined, { debugName: "host" }] : /* istanbul ignore next */ []));
1122
- this.context = input(...(ngDevMode ? [undefined, { debugName: "context" }] : /* istanbul ignore next */ []));
1105
+ this.name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
1106
+ this.host = input(...(ngDevMode ? [undefined, { debugName: "host" }] : []));
1107
+ this.context = input(...(ngDevMode ? [undefined, { debugName: "context" }] : []));
1123
1108
  this.elementRef = inject(ElementRef);
1124
1109
  this.registryService = inject(AXPComponentSlotRegistryService);
1125
1110
  this.injector = inject(Injector);
1126
1111
  this.evaluator = inject(AXPExpressionEvaluatorService);
1127
1112
  this.viewContainerRef = inject(ViewContainerRef);
1128
1113
  this.contextStore = inject(AXPContextStore);
1129
- this.isEmpty = computed(() => this._viewCount() === 0, ...(ngDevMode ? [{ debugName: "isEmpty" }] : /* istanbul ignore next */ []));
1114
+ this.isEmpty = computed(() => this._viewCount() === 0, ...(ngDevMode ? [{ debugName: "isEmpty" }] : []));
1130
1115
  // Create a signal to store the count of children
1131
- this._viewCount = signal(0, ...(ngDevMode ? [{ debugName: "_viewCount" }] : /* istanbul ignore next */ []));
1116
+ this._viewCount = signal(0, ...(ngDevMode ? [{ debugName: "_viewCount" }] : []));
1132
1117
  // Track component references for updates
1133
1118
  this.componentRefs = [];
1134
1119
  // Track placeholder references for replacement
@@ -1249,10 +1234,10 @@ class AXPComponentSlotDirective {
1249
1234
  return condition(this.contextStore.data());
1250
1235
  //return condition(this.context());
1251
1236
  }
1252
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1253
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.9", type: AXPComponentSlotDirective, isStandalone: false, selector: "axp-component-slot", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, host: { classPropertyName: "host", publicName: "host", isSignal: true, isRequired: false, transformFunction: null }, context: { classPropertyName: "context", publicName: "context", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["slot"], ngImport: i0 }); }
1237
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1238
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.19", type: AXPComponentSlotDirective, isStandalone: false, selector: "axp-component-slot", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, host: { classPropertyName: "host", publicName: "host", isSignal: true, isRequired: false, transformFunction: null }, context: { classPropertyName: "context", publicName: "context", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["slot"], ngImport: i0 }); }
1254
1239
  }
1255
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotDirective, decorators: [{
1240
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotDirective, decorators: [{
1256
1241
  type: Directive,
1257
1242
  args: [{
1258
1243
  selector: 'axp-component-slot',
@@ -1312,11 +1297,11 @@ class AXPComponentSlotModule {
1312
1297
  f();
1313
1298
  });
1314
1299
  }
1315
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotModule, deps: [{ token: 'AXPComponentSlotModuleFactory', optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
1316
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotModule, declarations: [AXPComponentSlotDirective], exports: [AXPComponentSlotDirective] }); }
1317
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotModule }); }
1300
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotModule, deps: [{ token: 'AXPComponentSlotModuleFactory', optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
1301
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotModule, declarations: [AXPComponentSlotDirective], exports: [AXPComponentSlotDirective] }); }
1302
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotModule }); }
1318
1303
  }
1319
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotModule, decorators: [{
1304
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPComponentSlotModule, decorators: [{
1320
1305
  type: NgModule,
1321
1306
  args: [{
1322
1307
  declarations: [AXPComponentSlotDirective],
@@ -1536,10 +1521,10 @@ class AXPDataSourceDefinitionProviderService {
1536
1521
  async get(name) {
1537
1522
  return (await this.items()).find((c) => c.name == name);
1538
1523
  }
1539
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDataSourceDefinitionProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1540
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDataSourceDefinitionProviderService, providedIn: 'root' }); }
1524
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDataSourceDefinitionProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1525
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDataSourceDefinitionProviderService, providedIn: 'root' }); }
1541
1526
  }
1542
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDataSourceDefinitionProviderService, decorators: [{
1527
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDataSourceDefinitionProviderService, decorators: [{
1543
1528
  type: Injectable,
1544
1529
  args: [{ providedIn: 'root' }]
1545
1530
  }] });
@@ -1549,12 +1534,12 @@ class AXPContentCheckerDirective {
1549
1534
  constructor() {
1550
1535
  this.viewContainerRef = inject(ViewContainerRef);
1551
1536
  this.elementRef = inject((ElementRef));
1552
- this.isEmpty = computed(() => this.viewContainerRef.length === 0, ...(ngDevMode ? [{ debugName: "isEmpty" }] : /* istanbul ignore next */ []));
1537
+ this.isEmpty = computed(() => this.viewContainerRef.length === 0, ...(ngDevMode ? [{ debugName: "isEmpty" }] : []));
1553
1538
  }
1554
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPContentCheckerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1555
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: AXPContentCheckerDirective, isStandalone: true, selector: "[axp-content-checker]", exportAs: ["checker"], ngImport: i0 }); }
1539
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPContentCheckerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1540
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.19", type: AXPContentCheckerDirective, isStandalone: true, selector: "[axp-content-checker]", exportAs: ["checker"], ngImport: i0 }); }
1556
1541
  }
1557
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPContentCheckerDirective, decorators: [{
1542
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPContentCheckerDirective, decorators: [{
1558
1543
  type: Directive,
1559
1544
  args: [{
1560
1545
  selector: '[axp-content-checker]',
@@ -1584,10 +1569,10 @@ class AXPDblClickDirective {
1584
1569
  }
1585
1570
  this.lastTap = currentTime;
1586
1571
  }
1587
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDblClickDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1588
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: AXPDblClickDirective, isStandalone: true, selector: "[onDblClick]", outputs: { onDblClick: "onDblClick" }, host: { listeners: { "dblclick": "handleOnDblClick($event)", "touchend": "onTouchEnd($event)" } }, ngImport: i0 }); }
1572
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDblClickDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1573
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.19", type: AXPDblClickDirective, isStandalone: true, selector: "[onDblClick]", outputs: { onDblClick: "onDblClick" }, host: { listeners: { "dblclick": "handleOnDblClick($event)", "touchend": "onTouchEnd($event)" } }, ngImport: i0 }); }
1589
1574
  }
1590
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDblClickDirective, decorators: [{
1575
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDblClickDirective, decorators: [{
1591
1576
  type: Directive,
1592
1577
  args: [{
1593
1578
  selector: '[onDblClick]'
@@ -1605,14 +1590,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
1605
1590
  class AXPElementDataDirective {
1606
1591
  constructor(elementRef) {
1607
1592
  this.elementRef = elementRef;
1608
- this.data = input(null, { ...(ngDevMode ? { debugName: "data" } : /* istanbul ignore next */ {}), alias: 'axp-data' });
1609
- this.path = input('__data__', { ...(ngDevMode ? { debugName: "path" } : /* istanbul ignore next */ {}), alias: 'axp-data-path' });
1593
+ this.data = input(null, ...(ngDevMode ? [{ debugName: "data", alias: 'axp-data' }] : [{ alias: 'axp-data' }]));
1594
+ this.path = input('__data__', ...(ngDevMode ? [{ debugName: "path", alias: 'axp-data-path' }] : [{ alias: 'axp-data-path' }]));
1610
1595
  // Effect to update element data when inputs change
1611
1596
  this.updateEffect = effect(() => {
1612
1597
  const currentData = this.data();
1613
1598
  const currentPath = this.path();
1614
1599
  set(this.elementRef.nativeElement, currentPath, currentData);
1615
- }, ...(ngDevMode ? [{ debugName: "updateEffect" }] : /* istanbul ignore next */ []));
1600
+ }, ...(ngDevMode ? [{ debugName: "updateEffect" }] : []));
1616
1601
  }
1617
1602
  ngOnInit() {
1618
1603
  // Initial data setup
@@ -1630,10 +1615,10 @@ class AXPElementDataDirective {
1630
1615
  setData(data) {
1631
1616
  set(this.elementRef.nativeElement, this.path(), data);
1632
1617
  }
1633
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPElementDataDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1634
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.9", type: AXPElementDataDirective, isStandalone: true, selector: "[axp-data]", inputs: { data: { classPropertyName: "data", publicName: "axp-data", isSignal: true, isRequired: false, transformFunction: null }, path: { classPropertyName: "path", publicName: "axp-data-path", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
1618
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPElementDataDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1619
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.19", type: AXPElementDataDirective, isStandalone: true, selector: "[axp-data]", inputs: { data: { classPropertyName: "data", publicName: "axp-data", isSignal: true, isRequired: false, transformFunction: null }, path: { classPropertyName: "path", publicName: "axp-data-path", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
1635
1620
  }
1636
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPElementDataDirective, decorators: [{
1621
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPElementDataDirective, decorators: [{
1637
1622
  type: Directive,
1638
1623
  args: [{
1639
1624
  selector: '[axp-data]',
@@ -1646,7 +1631,7 @@ class AXPGridLayoutDirective {
1646
1631
  constructor(el, renderer) {
1647
1632
  this.el = el;
1648
1633
  this.renderer = renderer;
1649
- this.options = input.required({ ...(ngDevMode ? { debugName: "options" } : /* istanbul ignore next */ {}), alias: 'axp-grid-layout' });
1634
+ this.options = input.required(...(ngDevMode ? [{ debugName: "options", alias: 'axp-grid-layout' }] : [{ alias: 'axp-grid-layout' }]));
1650
1635
  }
1651
1636
  ngOnChanges(changes) {
1652
1637
  if (changes['options']) {
@@ -1690,10 +1675,10 @@ class AXPGridLayoutDirective {
1690
1675
  }
1691
1676
  });
1692
1677
  }
1693
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPGridLayoutDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1694
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.9", type: AXPGridLayoutDirective, isStandalone: true, selector: "[axp-grid-layout]", inputs: { options: { classPropertyName: "options", publicName: "axp-grid-layout", isSignal: true, isRequired: true, transformFunction: null } }, usesOnChanges: true, ngImport: i0 }); }
1678
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPGridLayoutDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1679
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.19", type: AXPGridLayoutDirective, isStandalone: true, selector: "[axp-grid-layout]", inputs: { options: { classPropertyName: "options", publicName: "axp-grid-layout", isSignal: true, isRequired: true, transformFunction: null } }, usesOnChanges: true, ngImport: i0 }); }
1695
1680
  }
1696
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPGridLayoutDirective, decorators: [{
1681
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPGridLayoutDirective, decorators: [{
1697
1682
  type: Directive,
1698
1683
  args: [{
1699
1684
  selector: '[axp-grid-layout]',
@@ -1837,10 +1822,10 @@ class AXPDistributedEventListenerService {
1837
1822
  this.listenersByKey.clear();
1838
1823
  this.providersLoaded = false;
1839
1824
  }
1840
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDistributedEventListenerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1841
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDistributedEventListenerService, providedIn: 'root' }); }
1825
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDistributedEventListenerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1826
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDistributedEventListenerService, providedIn: 'root' }); }
1842
1827
  }
1843
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDistributedEventListenerService, decorators: [{
1828
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDistributedEventListenerService, decorators: [{
1844
1829
  type: Injectable,
1845
1830
  args: [{
1846
1831
  providedIn: 'root',
@@ -1964,10 +1949,10 @@ class AXPBroadcastEventService {
1964
1949
  // Cleanup multi-tab event history
1965
1950
  this.multiTabEventHistory.clear();
1966
1951
  }
1967
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPBroadcastEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1968
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPBroadcastEventService, providedIn: 'root' }); }
1952
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPBroadcastEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1953
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPBroadcastEventService, providedIn: 'root' }); }
1969
1954
  }
1970
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPBroadcastEventService, decorators: [{
1955
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPBroadcastEventService, decorators: [{
1971
1956
  type: Injectable,
1972
1957
  args: [{
1973
1958
  providedIn: 'root',
@@ -2020,10 +2005,10 @@ class AXPHookService {
2020
2005
  }
2021
2006
  return data;
2022
2007
  }
2023
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPHookService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2024
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPHookService, providedIn: 'root' }); }
2008
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPHookService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2009
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPHookService, providedIn: 'root' }); }
2025
2010
  }
2026
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPHookService, decorators: [{
2011
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPHookService, decorators: [{
2027
2012
  type: Injectable,
2028
2013
  args: [{ providedIn: 'root' }]
2029
2014
  }] });
@@ -2303,85 +2288,14 @@ class AXPModuleManifestRegistry {
2303
2288
  }
2304
2289
  return { missingModules, missingFeatures };
2305
2290
  }
2306
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPModuleManifestRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2307
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPModuleManifestRegistry, providedIn: 'root' }); }
2291
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPModuleManifestRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2292
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPModuleManifestRegistry, providedIn: 'root' }); }
2308
2293
  }
2309
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPModuleManifestRegistry, decorators: [{
2294
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPModuleManifestRegistry, decorators: [{
2310
2295
  type: Injectable,
2311
2296
  args: [{ providedIn: 'root' }]
2312
2297
  }] });
2313
2298
 
2314
- //#region ---- Imports ----
2315
- //#endregion
2316
- //#region ---- Module manifests data source ----
2317
- /**
2318
- * Registered module manifests for select widgets via dataSource name {@link MODULE_MANIFESTS_DATASOURCE_NAME}.
2319
- */
2320
- const MODULE_MANIFESTS_DATASOURCE_NAME = 'platform-module-manifests';
2321
- /**
2322
- * Data source definition for module names/titles from {@link AXPModuleManifestRegistry}.
2323
- */
2324
- class AXPModuleManifestsDataSourceDefinition {
2325
- constructor() {
2326
- //#region ---- Services & Dependencies ----
2327
- this.manifestRegistry = inject(AXPModuleManifestRegistry);
2328
- //#endregion
2329
- }
2330
- //#endregion
2331
- //#region ---- Public API ----
2332
- async items() {
2333
- return [
2334
- {
2335
- name: MODULE_MANIFESTS_DATASOURCE_NAME,
2336
- title: 'Module manifests',
2337
- source: () => new AXDataSource({
2338
- key: 'id',
2339
- load: async () => {
2340
- await this.manifestRegistry.initialize();
2341
- const list = this.manifestRegistry.getAll().map((m) => ({
2342
- id: m.name,
2343
- title: m.title || m.name,
2344
- }));
2345
- return { items: list, total: list.length };
2346
- },
2347
- byKey: async (key) => {
2348
- await this.manifestRegistry.initialize();
2349
- const m = this.manifestRegistry.getAll().find((x) => x.name === key);
2350
- return m ? { id: m.name, title: m.title || m.name } : undefined;
2351
- },
2352
- pageSize: 1000,
2353
- }),
2354
- columns: [
2355
- {
2356
- name: 'id',
2357
- title: 'ID',
2358
- datatype: 'string',
2359
- type: 'text-editor',
2360
- },
2361
- {
2362
- name: 'title',
2363
- title: 'Title',
2364
- datatype: 'string',
2365
- type: 'text-editor',
2366
- },
2367
- ],
2368
- filters: [
2369
- {
2370
- field: 'title',
2371
- title: 'Title',
2372
- operator: { type: 'equal' },
2373
- widget: { type: 'text-editor' },
2374
- filterType: { advance: true, inline: true },
2375
- },
2376
- ],
2377
- textField: { name: 'title', title: 'Title' },
2378
- valueField: { name: 'id', title: 'ID' },
2379
- },
2380
- ];
2381
- }
2382
- }
2383
- //#endregion
2384
-
2385
2299
  class AXPAppStartUpService {
2386
2300
  constructor() {
2387
2301
  this.tasks = [];
@@ -2401,10 +2315,10 @@ class AXPAppStartUpService {
2401
2315
  loadingText.innerHTML = status;
2402
2316
  }
2403
2317
  }
2404
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPAppStartUpService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2405
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPAppStartUpService, providedIn: 'root' }); }
2318
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPAppStartUpService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2319
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPAppStartUpService, providedIn: 'root' }); }
2406
2320
  }
2407
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPAppStartUpService, decorators: [{
2321
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPAppStartUpService, decorators: [{
2408
2322
  type: Injectable,
2409
2323
  args: [{
2410
2324
  providedIn: 'root',
@@ -2442,50 +2356,17 @@ class AXPModuleManifestModule {
2442
2356
  },
2443
2357
  });
2444
2358
  }
2445
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPModuleManifestModule, deps: [{ token: AXPAppStartUpService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.NgModule }); }
2446
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: AXPModuleManifestModule }); }
2447
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPModuleManifestModule }); }
2359
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPModuleManifestModule, deps: [{ token: AXPAppStartUpService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.NgModule }); }
2360
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: AXPModuleManifestModule }); }
2361
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPModuleManifestModule }); }
2448
2362
  }
2449
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPModuleManifestModule, decorators: [{
2363
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPModuleManifestModule, decorators: [{
2450
2364
  type: NgModule,
2451
2365
  args: [{
2452
2366
  providers: [],
2453
2367
  }]
2454
2368
  }], ctorParameters: () => [{ type: AXPAppStartUpService }, { type: i0.Injector }] });
2455
2369
 
2456
- //#region ---- Imports ----
2457
- //#endregion
2458
- //#region ---- Compare & sort ----
2459
- const DEFAULT_COLLATOR_OPTIONS = { sensitivity: 'base' };
2460
- /**
2461
- * Locale-aware comparison of {@link AXPMultiLanguageString} values (plain string, `@scope:key`, or locale map).
2462
- * Resolves each side with {@link resolveMultiLanguageString} for `locale`, then compares with `String#localeCompare`.
2463
- */
2464
- function compareMultiLanguageStrings(a, b, locale, collatorOptions = DEFAULT_COLLATOR_OPTIONS) {
2465
- const sa = resolveMultiLanguageString(a ?? '', locale);
2466
- const sb = resolveMultiLanguageString(b ?? '', locale);
2467
- return sa.localeCompare(sb, locale, collatorOptions);
2468
- }
2469
- /**
2470
- * Stable sort copy: orders items by resolved string for `getValue(item)` using the active `locale`.
2471
- */
2472
- function sortByMultiLanguageString(items, getValue, locale, collatorOptions) {
2473
- return [...items].sort((x, y) => compareMultiLanguageStrings(getValue(x), getValue(y), locale, collatorOptions));
2474
- }
2475
- /**
2476
- * True when the resolved value contains `query` (case-insensitive) for `locale`.
2477
- * Useful for search/filter flows over {@link AXPMultiLanguageString}.
2478
- */
2479
- function searchInMultiLanguageString(value, query, locale) {
2480
- const q = query.trim().toLocaleLowerCase(locale);
2481
- if (!q) {
2482
- return true;
2483
- }
2484
- const text = resolveMultiLanguageString(value ?? '', locale).toLocaleLowerCase(locale);
2485
- return text.includes(q);
2486
- }
2487
- //#endregion
2488
-
2489
2370
  //#region ---- Tag Types ----
2490
2371
  //#endregion
2491
2372
 
@@ -2637,10 +2518,10 @@ class AXPTagService {
2637
2518
  const uniqueTags = allTags.filter((tag, index, self) => index === self.findIndex((t) => t.title.toLowerCase() === tag.title.toLowerCase()));
2638
2519
  this.cache = uniqueTags;
2639
2520
  }
2640
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTagService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2641
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTagService, providedIn: 'root' }); }
2521
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPTagService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2522
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPTagService, providedIn: 'root' }); }
2642
2523
  }
2643
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTagService, decorators: [{
2524
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPTagService, decorators: [{
2644
2525
  type: Injectable,
2645
2526
  args: [{
2646
2527
  providedIn: 'root',
@@ -3571,13 +3452,6 @@ function getNestedKeys(obj, prefix = '') {
3571
3452
  }
3572
3453
  return keys;
3573
3454
  }
3574
- /** Normalizes definition categories to an array for iteration and serialization. */
3575
- function normalizeDefinitionCategories(categories) {
3576
- if (categories == null) {
3577
- return [];
3578
- }
3579
- return Array.isArray(categories) ? categories : [categories];
3580
- }
3581
3455
 
3582
3456
  //#region ---- Imports ----
3583
3457
  //#endregion
@@ -3648,7 +3522,7 @@ var AXPExportTemplateToken;
3648
3522
  class AXPCountdownPipe {
3649
3523
  constructor() {
3650
3524
  this.calendarService = inject(AXCalendarService);
3651
- this.countdownSignal = signal(this.setupTimer(), ...(ngDevMode ? [{ debugName: "countdownSignal" }] : /* istanbul ignore next */ []));
3525
+ this.countdownSignal = signal(this.setupTimer(), ...(ngDevMode ? [{ debugName: "countdownSignal" }] : []));
3652
3526
  this.targetDate = 0;
3653
3527
  this.prevValue = 0;
3654
3528
  }
@@ -3677,10 +3551,10 @@ class AXPCountdownPipe {
3677
3551
  updateTargetDate(value) {
3678
3552
  this.targetDate = new Date(value).getTime();
3679
3553
  }
3680
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCountdownPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
3681
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: AXPCountdownPipe, isStandalone: true, name: "countdown", pure: false }); }
3554
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPCountdownPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
3555
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.19", ngImport: i0, type: AXPCountdownPipe, isStandalone: true, name: "countdown", pure: false }); }
3682
3556
  }
3683
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCountdownPipe, decorators: [{
3557
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPCountdownPipe, decorators: [{
3684
3558
  type: Pipe,
3685
3559
  args: [{
3686
3560
  name: 'countdown',
@@ -3690,41 +3564,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
3690
3564
  }] });
3691
3565
 
3692
3566
  const loggingEnabled = false; // Set to true to enable logging, false to disable
3693
- //#region ---- Multilingual string helpers ----
3694
- /**
3695
- * Per-locale string map as produced by multilingual editors (e.g. `{ "en-US": "...", "fa-IR": "..." }`).
3696
- */
3697
- function isLocaleStringMap(value) {
3698
- if (value === null || typeof value !== 'object' || Array.isArray(value) || value instanceof Date) {
3699
- return false;
3700
- }
3701
- const values = Object.values(value);
3702
- return values.length > 0 && values.every((v) => typeof v === 'string');
3703
- }
3704
- /**
3705
- * Lowercased text for client-side filtering: plain string or all locale values joined.
3706
- */
3707
- function toFilterSearchText(value) {
3708
- if (typeof value === 'string') {
3709
- return value.toLowerCase();
3710
- }
3711
- if (isLocaleStringMap(value)) {
3712
- return Object.values(value).join(' ').toLowerCase();
3713
- }
3714
- return undefined;
3715
- }
3716
- function filterValuesAreEqual(itemRaw, condRaw) {
3717
- if (typeof condRaw === 'string' && isLocaleStringMap(itemRaw)) {
3718
- return Object.values(itemRaw).some((v) => v.toLowerCase() === condRaw.toLowerCase());
3719
- }
3720
- if (typeof itemRaw === 'string' && isLocaleStringMap(condRaw)) {
3721
- return Object.values(condRaw).some((v) => v.toLowerCase() === itemRaw.toLowerCase());
3722
- }
3723
- const itemScalar = typeof itemRaw === 'string' ? itemRaw.toLowerCase() : itemRaw;
3724
- const condScalar = typeof condRaw === 'string' ? condRaw.toLowerCase() : condRaw;
3725
- return isEqual(itemScalar, condScalar);
3726
- }
3727
- //#endregion
3728
3567
  function applyCondition(item, condition) {
3729
3568
  const rawValue = condition.field ? get(item, condition.field) : null;
3730
3569
  const itemValue = typeof rawValue === 'string' ? rawValue.toLowerCase() : rawValue;
@@ -3745,12 +3584,7 @@ function applyCondition(item, condition) {
3745
3584
  switch (op) {
3746
3585
  case 'equal':
3747
3586
  case 'eq':
3748
- if (!isNil(condition.field) && condition.field !== '') {
3749
- result = filterValuesAreEqual(rawValue, condition.value);
3750
- }
3751
- else {
3752
- result = isEqual(valueToCompare, conditionValue);
3753
- }
3587
+ result = isEqual(valueToCompare, conditionValue);
3754
3588
  if (loggingEnabled) {
3755
3589
  console.log('Equal check result:', result);
3756
3590
  }
@@ -3758,12 +3592,7 @@ function applyCondition(item, condition) {
3758
3592
  case 'notEqual':
3759
3593
  case 'ne':
3760
3594
  case 'neq':
3761
- if (!isNil(condition.field) && condition.field !== '') {
3762
- result = !filterValuesAreEqual(rawValue, condition.value);
3763
- }
3764
- else {
3765
- result = !isEqual(valueToCompare, conditionValue);
3766
- }
3595
+ result = !isEqual(valueToCompare, conditionValue);
3767
3596
  if (loggingEnabled) {
3768
3597
  console.log('Not equal check result:', result);
3769
3598
  }
@@ -3796,15 +3625,12 @@ function applyCondition(item, condition) {
3796
3625
  console.log('Less than or equal check result:', result);
3797
3626
  }
3798
3627
  break;
3799
- case 'contains': {
3800
- const needle = toFilterSearchText(condition.value) ??
3801
- (condition.value == null ? '' : String(condition.value).toLowerCase());
3802
- const haystack = toFilterSearchText(rawValue);
3803
- if (haystack !== undefined) {
3804
- result = includes(haystack, needle);
3628
+ case 'contains':
3629
+ if (typeof valueToCompare === 'string') {
3630
+ result = includes(valueToCompare, conditionValue);
3805
3631
  }
3806
- else if (Array.isArray(rawValue)) {
3807
- result = includes(rawValue.map((val) => toFilterSearchText(val) ?? val.toString().toLowerCase()), needle);
3632
+ else if (Array.isArray(valueToCompare)) {
3633
+ result = includes(valueToCompare.map((val) => val.toString().toLowerCase()), conditionValue);
3808
3634
  }
3809
3635
  else {
3810
3636
  result = false;
@@ -3813,18 +3639,13 @@ function applyCondition(item, condition) {
3813
3639
  console.log('Contains check result:', result);
3814
3640
  }
3815
3641
  break;
3816
- }
3817
3642
  case 'in':
3818
3643
  if (Array.isArray(conditionValue)) {
3819
3644
  if (typeof valueToCompare === 'string') {
3820
- result = conditionValue.some((val) => typeof val === 'string' ? val.toLowerCase() === valueToCompare : val === valueToCompare);
3821
- }
3822
- else if (isLocaleStringMap(rawValue)) {
3823
- const localeValues = Object.values(rawValue).map((v) => v.toLowerCase());
3824
- result = localeValues.some((localeVal) => conditionValue.some((val) => typeof val === 'string' ? val.toLowerCase() === localeVal : val === localeVal));
3645
+ result = conditionValue.some(val => typeof val === 'string' ? val.toLowerCase() === valueToCompare : val === valueToCompare);
3825
3646
  }
3826
3647
  else if (Array.isArray(valueToCompare)) {
3827
- result = valueToCompare.some((val) => conditionValue.some((condVal) => typeof val === 'string' && typeof condVal === 'string'
3648
+ result = valueToCompare.some(val => conditionValue.some(condVal => typeof val === 'string' && typeof condVal === 'string'
3828
3649
  ? val.toLowerCase() === condVal.toLowerCase()
3829
3650
  : val === condVal));
3830
3651
  }
@@ -3839,15 +3660,12 @@ function applyCondition(item, condition) {
3839
3660
  console.log('In check result:', result);
3840
3661
  }
3841
3662
  break;
3842
- case 'notContains': {
3843
- const needleNc = toFilterSearchText(condition.value) ??
3844
- (condition.value == null ? '' : String(condition.value).toLowerCase());
3845
- const haystackNc = toFilterSearchText(rawValue);
3846
- if (haystackNc !== undefined) {
3847
- result = !includes(haystackNc, needleNc);
3663
+ case 'notContains':
3664
+ if (typeof valueToCompare === 'string') {
3665
+ result = !includes(valueToCompare, conditionValue);
3848
3666
  }
3849
- else if (Array.isArray(rawValue)) {
3850
- result = !includes(rawValue.map((val) => toFilterSearchText(val) ?? val.toString().toLowerCase()), needleNc);
3667
+ else if (Array.isArray(valueToCompare)) {
3668
+ result = !includes(valueToCompare.map((val) => val.toString().toLowerCase()), conditionValue);
3851
3669
  }
3852
3670
  else {
3853
3671
  result = false;
@@ -3856,27 +3674,18 @@ function applyCondition(item, condition) {
3856
3674
  console.log('Not contains check result:', result);
3857
3675
  }
3858
3676
  break;
3859
- }
3860
- case 'startsWith': {
3861
- const prefix = toFilterSearchText(condition.value) ??
3862
- (condition.value == null ? '' : String(condition.value).toLowerCase());
3863
- const haystackSw = toFilterSearchText(rawValue);
3864
- result = haystackSw !== undefined && startsWith(haystackSw, prefix);
3677
+ case 'startsWith':
3678
+ result = typeof valueToCompare === 'string' && startsWith(valueToCompare, conditionValue);
3865
3679
  if (loggingEnabled) {
3866
3680
  console.log('Starts with check result:', result);
3867
3681
  }
3868
3682
  break;
3869
- }
3870
- case 'endsWith': {
3871
- const suffix = toFilterSearchText(condition.value) ??
3872
- (condition.value == null ? '' : String(condition.value).toLowerCase());
3873
- const haystackEw = toFilterSearchText(rawValue);
3874
- result = haystackEw !== undefined && endsWith(haystackEw, suffix);
3683
+ case 'endsWith':
3684
+ result = typeof valueToCompare === 'string' && endsWith(valueToCompare, conditionValue);
3875
3685
  if (loggingEnabled) {
3876
3686
  console.log('Ends with check result:', result);
3877
3687
  }
3878
3688
  break;
3879
- }
3880
3689
  case 'isEmpty':
3881
3690
  result = isEmpty(valueToCompare);
3882
3691
  if (loggingEnabled) {
@@ -4028,45 +3837,45 @@ class AXPDeviceService {
4028
3837
  /**
4029
3838
  * Current screen size (Small, Medium, Large)
4030
3839
  */
4031
- this.screenSize = signal(getScreenSize(), ...(ngDevMode ? [{ debugName: "screenSize" }] : /* istanbul ignore next */ []));
3840
+ this.screenSize = signal(getScreenSize(), ...(ngDevMode ? [{ debugName: "screenSize" }] : []));
4032
3841
  /**
4033
3842
  * Current device type (Mobile, Tablet, Desktop)
4034
3843
  */
4035
- this.deviceType = signal(getDeviceType(), ...(ngDevMode ? [{ debugName: "deviceType" }] : /* istanbul ignore next */ []));
3844
+ this.deviceType = signal(getDeviceType(), ...(ngDevMode ? [{ debugName: "deviceType" }] : []));
4036
3845
  /**
4037
3846
  * Whether the device supports touch input
4038
3847
  */
4039
- this.isTouchDevice = signal(isTouchDevice(), ...(ngDevMode ? [{ debugName: "isTouchDevice" }] : /* istanbul ignore next */ []));
3848
+ this.isTouchDevice = signal(isTouchDevice(), ...(ngDevMode ? [{ debugName: "isTouchDevice" }] : []));
4040
3849
  //#endregion
4041
3850
  //#region ---- Computed Signals ----
4042
3851
  /**
4043
3852
  * Whether the screen size is Small
4044
3853
  */
4045
- this.isSmall = computed(() => this.screenSize() === AXPScreenSize.Small, ...(ngDevMode ? [{ debugName: "isSmall" }] : /* istanbul ignore next */ []));
3854
+ this.isSmall = computed(() => this.screenSize() === AXPScreenSize.Small, ...(ngDevMode ? [{ debugName: "isSmall" }] : []));
4046
3855
  /**
4047
3856
  * Whether the screen size is Medium
4048
3857
  */
4049
- this.isMedium = computed(() => this.screenSize() === AXPScreenSize.Medium, ...(ngDevMode ? [{ debugName: "isMedium" }] : /* istanbul ignore next */ []));
3858
+ this.isMedium = computed(() => this.screenSize() === AXPScreenSize.Medium, ...(ngDevMode ? [{ debugName: "isMedium" }] : []));
4050
3859
  /**
4051
3860
  * Whether the screen size is Large
4052
3861
  */
4053
- this.isLarge = computed(() => this.screenSize() === AXPScreenSize.Large, ...(ngDevMode ? [{ debugName: "isLarge" }] : /* istanbul ignore next */ []));
3862
+ this.isLarge = computed(() => this.screenSize() === AXPScreenSize.Large, ...(ngDevMode ? [{ debugName: "isLarge" }] : []));
4054
3863
  /**
4055
3864
  * Whether the device is Mobile
4056
3865
  */
4057
- this.isMobileDevice = computed(() => this.deviceType() === AXPDeviceType.Mobile, ...(ngDevMode ? [{ debugName: "isMobileDevice" }] : /* istanbul ignore next */ []));
3866
+ this.isMobileDevice = computed(() => this.deviceType() === AXPDeviceType.Mobile, ...(ngDevMode ? [{ debugName: "isMobileDevice" }] : []));
4058
3867
  /**
4059
3868
  * Whether the device is Tablet
4060
3869
  */
4061
- this.isTabletDevice = computed(() => this.deviceType() === AXPDeviceType.Tablet, ...(ngDevMode ? [{ debugName: "isTabletDevice" }] : /* istanbul ignore next */ []));
3870
+ this.isTabletDevice = computed(() => this.deviceType() === AXPDeviceType.Tablet, ...(ngDevMode ? [{ debugName: "isTabletDevice" }] : []));
4062
3871
  /**
4063
3872
  * Whether the device is Desktop
4064
3873
  */
4065
- this.isDesktopDevice = computed(() => this.deviceType() === AXPDeviceType.Desktop, ...(ngDevMode ? [{ debugName: "isDesktopDevice" }] : /* istanbul ignore next */ []));
3874
+ this.isDesktopDevice = computed(() => this.deviceType() === AXPDeviceType.Desktop, ...(ngDevMode ? [{ debugName: "isDesktopDevice" }] : []));
4066
3875
  /**
4067
3876
  * Whether the device supports touch (alias for isTouchDevice)
4068
3877
  */
4069
- this.isTouchScreen = computed(() => this.isTouchDevice(), ...(ngDevMode ? [{ debugName: "isTouchScreen" }] : /* istanbul ignore next */ []));
3878
+ this.isTouchScreen = computed(() => this.isTouchDevice(), ...(ngDevMode ? [{ debugName: "isTouchScreen" }] : []));
4070
3879
  //#endregion
4071
3880
  //#region ---- Private Properties ----
4072
3881
  this._resizeListener = null;
@@ -4132,10 +3941,10 @@ class AXPDeviceService {
4132
3941
  destroy() {
4133
3942
  this._removeResizeListener();
4134
3943
  }
4135
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDeviceService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4136
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDeviceService, providedIn: 'root' }); }
3944
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDeviceService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
3945
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDeviceService, providedIn: 'root' }); }
4137
3946
  }
4138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDeviceService, decorators: [{
3947
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXPDeviceService, decorators: [{
4139
3948
  type: Injectable,
4140
3949
  args: [{
4141
3950
  providedIn: 'root',
@@ -4239,10 +4048,10 @@ class AXHighlightService {
4239
4048
  resultHTML += '</span>';
4240
4049
  return resultHTML;
4241
4050
  }
4242
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXHighlightService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4243
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXHighlightService, providedIn: 'root' }); }
4051
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXHighlightService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4052
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXHighlightService, providedIn: 'root' }); }
4244
4053
  }
4245
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXHighlightService, decorators: [{
4054
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXHighlightService, decorators: [{
4246
4055
  type: Injectable,
4247
4056
  args: [{
4248
4057
  providedIn: 'root',
@@ -4301,113 +4110,11 @@ function provideLazyProvider(token, loader, multi = true) {
4301
4110
  };
4302
4111
  }
4303
4112
 
4304
- //#region ---- Unwrapping ----
4305
- /**
4306
- * If `raw` is a plain non-array object with a `value` property, returns `value`; otherwise returns `raw`.
4307
- */
4308
- function unwrapValueProperty(raw) {
4309
- if (raw && typeof raw === 'object' && !Array.isArray(raw) && !(raw instanceof Date) && 'value' in raw) {
4310
- return raw.value;
4311
- }
4312
- return raw;
4313
- }
4314
- //#endregion
4315
- //#region ---- Scalar coercion ----
4316
- /**
4317
- * Coerces to a trimmed string. Plain objects may carry `{ value }` from setting widgets or `{ id }` from select payloads using `valueField: 'id'`.
4318
- */
4319
- function coerceUnknownToTrimmedString(raw) {
4320
- if (typeof raw === 'string') {
4321
- return raw.trim();
4322
- }
4323
- if (raw && typeof raw === 'object' && !Array.isArray(raw) && !(raw instanceof Date)) {
4324
- const r = raw;
4325
- if ('value' in r && r['value'] != null) {
4326
- return String(r['value']).trim();
4327
- }
4328
- if ('id' in r && r['id'] != null) {
4329
- return String(r['id']).trim();
4330
- }
4331
- }
4332
- return '';
4333
- }
4334
- /**
4335
- * Coerces to boolean: direct booleans pass through; wrapped `{ value: true | 'true' }` is respected; otherwise false.
4336
- */
4337
- function coerceUnknownToBoolean(raw) {
4338
- if (typeof raw === 'boolean') {
4339
- return raw;
4340
- }
4341
- if (raw && typeof raw === 'object' && 'value' in raw) {
4342
- const v = raw.value;
4343
- return v === true || v === 'true';
4344
- }
4345
- return false;
4346
- }
4347
- /** Parses a finite number after optional `{ value }` unwrap; non-finite or empty string yields NaN. */
4348
- function coerceUnknownToFiniteNumber(raw) {
4349
- const v = unwrapValueProperty(raw);
4350
- if (v === null || v === undefined) {
4351
- return NaN;
4352
- }
4353
- if (typeof v === 'number') {
4354
- return Number.isFinite(v) ? v : NaN;
4355
- }
4356
- if (typeof v === 'boolean') {
4357
- return v ? 1 : 0;
4358
- }
4359
- if (typeof v === 'string') {
4360
- const t = v.trim();
4361
- if (t === '') {
4362
- return NaN;
4363
- }
4364
- const n = Number(t);
4365
- return Number.isFinite(n) ? n : NaN;
4366
- }
4367
- return NaN;
4368
- }
4369
- /** Parses a Date after optional `{ value }` unwrap; invalid input yields Invalid Date. */
4370
- function coerceUnknownToDate(raw) {
4371
- const v = unwrapValueProperty(raw);
4372
- if (v === null || v === undefined) {
4373
- return new Date(NaN);
4374
- }
4375
- if (v instanceof Date) {
4376
- return new Date(v.getTime());
4377
- }
4378
- if (typeof v === 'number' && Number.isFinite(v)) {
4379
- return new Date(v);
4380
- }
4381
- if (typeof v === 'string') {
4382
- const t = v.trim();
4383
- if (t === '') {
4384
- return new Date(NaN);
4385
- }
4386
- return new Date(t);
4387
- }
4388
- return new Date(NaN);
4389
- }
4390
- //#endregion
4391
-
4392
4113
  function extractTextFromHtml(value) {
4393
4114
  const div = document.createElement('div');
4394
4115
  div.innerHTML = value;
4395
4116
  return div.textContent || div.innerText || '';
4396
4117
  }
4397
- /**
4398
- * True when the string likely contains HTML markup (e.g. `<p>`, `<ul>`), as opposed to plain text.
4399
- * Used to choose innerHTML vs text interpolation for multilingual fields.
4400
- */
4401
- function containsHtmlMarkup(value) {
4402
- if (value == null) {
4403
- return false;
4404
- }
4405
- const t = value.trim();
4406
- if (!t) {
4407
- return false;
4408
- }
4409
- return /<\/?[a-z][\s\S]*?>/i.test(t);
4410
- }
4411
4118
  /**
4412
4119
  * Generate kebab-case group name from title
4413
4120
  */
@@ -4425,5 +4132,5 @@ function generateKebabCase(title) {
4425
4132
  * Generated bundle index. Do not edit.
4426
4133
  */
4427
4134
 
4428
- export { AXHighlightService, AXPActivityLogProvider, AXPActivityLogService, AXPAppStartUpProvider, AXPAppStartUpService, AXPBroadcastEventService, AXPColorPaletteProvider, AXPColorPaletteService, AXPColumnWidthService, AXPComponentLogoConfig, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPContentCheckerDirective, AXPContextChangeEvent, AXPContextStore, AXPCountdownPipe, AXPDataGenerator, AXPDataSourceDefinitionProviderService, AXPDblClickDirective, AXPDefaultColorPalettesProvider, AXPDeviceService, AXPDeviceType, AXPDistributedEventListenerService, AXPElementDataDirective, AXPExportTemplateToken, AXPExpressionEvaluatorScopeProviderContext, AXPExpressionEvaluatorScopeProviderService, AXPExpressionEvaluatorService, AXPFeatureDefinitionProviderContext, AXPGridLayoutDirective, AXPHookService, AXPIconLogoConfig, AXPImageUrlLogoConfig, AXPModuleManifestModule, AXPModuleManifestRegistry, AXPModuleManifestsDataSourceDefinition, AXPPlatformScope, AXPScreenSize, AXPSystemActionType, AXPSystemActions, AXPTagProvider, AXPTagService, AXP_ACTIVITY_LOG_PROVIDER, AXP_COLOR_PALETTE_PROVIDER, AXP_COLUMN_WIDTH_PROVIDER, AXP_DATASOURCE_DEFINITION_PROVIDER, AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER, AXP_FEATURE_DEFINITION_PROVIDER, AXP_MODULE_MANIFEST_PROVIDER, AXP_SESSION_SERVICE, AXP_TAG_PROVIDER, MODULE_MANIFESTS_DATASOURCE_NAME, applyFilterArray, applyPagination, applyQueryArray, applySortArray, applySystemActionDefault, cleanDeep, coerceUnknownToBoolean, coerceUnknownToDate, coerceUnknownToFiniteNumber, coerceUnknownToTrimmedString, compareMultiLanguageStrings, containsHtmlMarkup, createProviderWithInjectionContext, defaultColumnWidthProvider, extractNestedFieldsWildcard, extractTextFromHtml, extractValue, generateKebabCase, getActionButton, getChangedPaths, getDetailedChanges, getEnumValues, getNestedKeys, getSmart, getSystemActions, normalizeDefinitionCategories, objectKeyValueTransforms, provideLazyProvider, resolveActionLook, resolvePlatformScopeKey, resolvePlatformScopeName, searchInMultiLanguageString, setSmart, sortByMultiLanguageString, unwrapValueProperty };
4135
+ export { AXHighlightService, AXPActivityLogProvider, AXPActivityLogService, AXPAppStartUpProvider, AXPAppStartUpService, AXPBroadcastEventService, AXPColorPaletteProvider, AXPColorPaletteService, AXPColumnWidthService, AXPComponentLogoConfig, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPContentCheckerDirective, AXPContextChangeEvent, AXPContextStore, AXPCountdownPipe, AXPDataGenerator, AXPDataSourceDefinitionProviderService, AXPDblClickDirective, AXPDefaultColorPalettesProvider, AXPDeviceService, AXPDeviceType, AXPDistributedEventListenerService, AXPElementDataDirective, AXPExportTemplateToken, AXPExpressionEvaluatorScopeProviderContext, AXPExpressionEvaluatorScopeProviderService, AXPExpressionEvaluatorService, AXPFeatureDefinitionProviderContext, AXPGridLayoutDirective, AXPHookService, AXPIconLogoConfig, AXPImageUrlLogoConfig, AXPModuleManifestModule, AXPModuleManifestRegistry, AXPPlatformScope, AXPScreenSize, AXPSystemActionType, AXPSystemActions, AXPTagProvider, AXPTagService, AXP_ACTIVITY_LOG_PROVIDER, AXP_COLOR_PALETTE_PROVIDER, AXP_COLUMN_WIDTH_PROVIDER, AXP_DATASOURCE_DEFINITION_PROVIDER, AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER, AXP_FEATURE_DEFINITION_PROVIDER, AXP_MODULE_MANIFEST_PROVIDER, AXP_SESSION_SERVICE, AXP_TAG_PROVIDER, applyFilterArray, applyPagination, applyQueryArray, applySortArray, applySystemActionDefault, cleanDeep, createProviderWithInjectionContext, defaultColumnWidthProvider, extractNestedFieldsWildcard, extractTextFromHtml, extractValue, generateKebabCase, getActionButton, getChangedPaths, getDetailedChanges, getEnumValues, getNestedKeys, getSmart, getSystemActions, objectKeyValueTransforms, provideLazyProvider, resolveActionLook, resolvePlatformScopeKey, resolvePlatformScopeName, setSmart };
4429
4136
  //# sourceMappingURL=acorex-platform-core.mjs.map