@acorex/platform 20.8.5 → 21.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/acorex-platform-auth.mjs +121 -27
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-common-settings.provider-41RhWqb4.mjs → acorex-platform-common-common-settings.provider-G9XcXXOG.mjs} +4 -4
- package/fesm2022/acorex-platform-common-common-settings.provider-G9XcXXOG.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +669 -268
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +333 -140
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-domain.mjs +557 -826
- package/fesm2022/acorex-platform-domain.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +539 -110
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs → acorex-platform-layout-components-binding-expression-editor-popup.component-CWV4XD36.mjs} +15 -15
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CWV4XD36.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-components.mjs +3285 -1035
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +488 -284
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +15955 -11978
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +410 -170
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widget-core.mjs +548 -474
- package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs → acorex-platform-layout-widgets-button-widget-designer.component-fLjWiSFE.mjs} +11 -11
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-fLjWiSFE.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs → acorex-platform-layout-widgets-file-list-popup.component-3oRAKxTo.mjs} +22 -77
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-3oRAKxTo.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs → acorex-platform-layout-widgets-image-preview.popup-CazpERbX.mjs} +8 -9
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-CazpERbX.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs → acorex-platform-layout-widgets-page-widget-designer.component-BQ4G6aYf.mjs} +17 -17
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-BQ4G6aYf.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-DWuWxUF_.mjs +116 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-DWuWxUF_.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-fV94u3t2.mjs} +25 -19
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-fV94u3t2.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-DyuvQhgN.mjs} +9 -9
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-DyuvQhgN.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs → acorex-platform-layout-widgets-text-block-widget-designer.component-EJMMdpIs.mjs} +7 -7
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-EJMMdpIs.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets.mjs +6396 -4058
- package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-native.mjs +8 -7
- package/fesm2022/acorex-platform-native.mjs.map +1 -1
- package/fesm2022/acorex-platform-runtime.mjs +328 -166
- package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CkptOSO3.mjs +160 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CkptOSO3.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DXC2qtvK.mjs +120 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DXC2qtvK.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs → acorex-platform-themes-default-entity-master-single-view.component-DYyunzKZ.mjs} +16 -23
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DYyunzKZ.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-C5lQECDP.mjs +31 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-C5lQECDP.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-404.component-D5wBXAB-.mjs +25 -0
- package/fesm2022/acorex-platform-themes-default-error-404.component-D5wBXAB-.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-AhDiY3DI.mjs +19 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-AhDiY3DI.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +1687 -69
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs → acorex-platform-themes-shared-icon-chooser-column.component-QL2-ZUVg.mjs} +8 -8
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-QL2-ZUVg.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BXydqPt_.mjs} +8 -8
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BXydqPt_.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs → acorex-platform-themes-shared-settings.provider-D13QB3Hr.mjs} +2 -2
- package/fesm2022/acorex-platform-themes-shared-settings.provider-D13QB3Hr.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-Cb9iY6k9.mjs +88 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-Cb9iY6k9.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-KP4-BND5.mjs +80 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-KP4-BND5.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +572 -465
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +276 -98
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/fesm2022/acorex-platform.mjs.map +1 -1
- package/package.json +33 -33
- package/{auth/index.d.ts → types/acorex-platform-auth.d.ts} +14 -2
- package/{common/index.d.ts → types/acorex-platform-common.d.ts} +261 -24
- package/{core/index.d.ts → types/acorex-platform-core.d.ts} +163 -42
- package/{domain/index.d.ts → types/acorex-platform-domain.d.ts} +744 -412
- package/{layout/builder/index.d.ts → types/acorex-platform-layout-builder.d.ts} +137 -38
- package/{layout/components/index.d.ts → types/acorex-platform-layout-components.d.ts} +808 -131
- package/{layout/designer/index.d.ts → types/acorex-platform-layout-designer.d.ts} +96 -18
- package/{layout/entity/index.d.ts → types/acorex-platform-layout-entity.d.ts} +686 -61
- package/{layout/views/index.d.ts → types/acorex-platform-layout-views.d.ts} +80 -47
- package/{layout/widget-core/index.d.ts → types/acorex-platform-layout-widget-core.d.ts} +274 -197
- package/{layout/widgets/index.d.ts → types/acorex-platform-layout-widgets.d.ts} +583 -104
- package/{native/index.d.ts → types/acorex-platform-native.d.ts} +0 -7
- package/types/acorex-platform-runtime.d.ts +565 -0
- package/{themes/default/index.d.ts → types/acorex-platform-themes-default.d.ts} +105 -4
- package/{themes/shared/index.d.ts → types/acorex-platform-themes-shared.d.ts} +14 -5
- package/{workflow/index.d.ts → types/acorex-platform-workflow.d.ts} +96 -81
- package/fesm2022/acorex-platform-common-common-settings.provider-41RhWqb4.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs +0 -111
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs +0 -160
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CLDoygoI.mjs +0 -1610
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CLDoygoI.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs +0 -120
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs +0 -31
- package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-404.component-DVF9soT5.mjs +0 -25
- package/fesm2022/acorex-platform-themes-default-error-404.component-DVF9soT5.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs +0 -19
- package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs +0 -65
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs +0 -64
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs.map +0 -1
- package/runtime/index.d.ts +0 -307
- /package/{index.d.ts → types/acorex-platform.d.ts} +0 -0
|
@@ -1,10 +1,12 @@
|
|
|
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, 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, has, 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';
|
|
8
10
|
import { AXCalendarService } from '@acorex/core/date-time';
|
|
9
11
|
import { startWith, map, debounceTime } from 'rxjs/operators';
|
|
10
12
|
|
|
@@ -19,10 +21,10 @@ class AXPActivityLogService {
|
|
|
19
21
|
async getHistoryByIds(refId, refType, ids) {
|
|
20
22
|
return (await Promise.all(this.providers?.map((p) => p.getHistoryByIds(refId, refType, ids)) ?? [])).flat();
|
|
21
23
|
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
23
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
24
26
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPActivityLogService, decorators: [{
|
|
26
28
|
type: Injectable,
|
|
27
29
|
args: [{ providedIn: 'root' }]
|
|
28
30
|
}] });
|
|
@@ -172,10 +174,10 @@ class AXPColorPaletteService {
|
|
|
172
174
|
const uniquePalettes = allPalettes.filter((palette, index, self) => index === self.findIndex((p) => p.name === palette.name));
|
|
173
175
|
this.cache = uniquePalettes;
|
|
174
176
|
}
|
|
175
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
176
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
177
179
|
}
|
|
178
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
180
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPColorPaletteService, decorators: [{
|
|
179
181
|
type: Injectable,
|
|
180
182
|
args: [{
|
|
181
183
|
providedIn: 'root',
|
|
@@ -290,10 +292,10 @@ class AXPDefaultColorPalettesProvider extends AXPColorPaletteProvider {
|
|
|
290
292
|
},
|
|
291
293
|
];
|
|
292
294
|
}
|
|
293
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
294
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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 }); }
|
|
295
297
|
}
|
|
296
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
298
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDefaultColorPalettesProvider, decorators: [{
|
|
297
299
|
type: Injectable
|
|
298
300
|
}] });
|
|
299
301
|
|
|
@@ -479,10 +481,10 @@ class AXPColumnWidthService {
|
|
|
479
481
|
}
|
|
480
482
|
return width;
|
|
481
483
|
}
|
|
482
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
483
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
484
486
|
}
|
|
485
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
487
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPColumnWidthService, decorators: [{
|
|
486
488
|
type: Injectable,
|
|
487
489
|
args: [{
|
|
488
490
|
providedIn: 'root',
|
|
@@ -511,15 +513,17 @@ const defaultColumnWidthProvider = {
|
|
|
511
513
|
{ name: 'content', width: '500px', priority: 10 },
|
|
512
514
|
{ name: 'level', width: '100px', priority: 10 },
|
|
513
515
|
{ name: 'order', width: '100px', priority: 10 },
|
|
516
|
+
{ name: 'phones', width: '300px', priority: 10 },
|
|
517
|
+
{ name: 'emails', width: '300px', priority: 10 },
|
|
514
518
|
],
|
|
515
519
|
};
|
|
516
520
|
//#endregion
|
|
517
521
|
|
|
518
522
|
class AXPComponentSlot {
|
|
519
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
520
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
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 }); }
|
|
521
525
|
}
|
|
522
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
526
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlot, decorators: [{
|
|
523
527
|
type: Directive
|
|
524
528
|
}] });
|
|
525
529
|
|
|
@@ -787,9 +791,10 @@ function getEnumValues(enumType) {
|
|
|
787
791
|
|
|
788
792
|
class AXPContextChangeEvent {
|
|
789
793
|
}
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
794
|
+
//#endregion
|
|
795
|
+
//#region ---- Context signal store ----
|
|
796
|
+
// Shared reactive context: root injector has a default instance; widget/layout trees
|
|
797
|
+
const AXPContextStore = signalStore(
|
|
793
798
|
// Initial State
|
|
794
799
|
withState(() => ({
|
|
795
800
|
data: {}, // Shared context data
|
|
@@ -839,7 +844,7 @@ withMethods((store) => ({
|
|
|
839
844
|
lastChange: changeEvent,
|
|
840
845
|
});
|
|
841
846
|
},
|
|
842
|
-
patch(context) {
|
|
847
|
+
patch(context, skipDirtyTracking = false) {
|
|
843
848
|
const currentData = cloneDeep(store.data());
|
|
844
849
|
// Update the value and prepare the change event
|
|
845
850
|
const updatedData = { ...currentData, ...context };
|
|
@@ -849,7 +854,7 @@ withMethods((store) => ({
|
|
|
849
854
|
};
|
|
850
855
|
// Patch the state
|
|
851
856
|
patchState(store, {
|
|
852
|
-
previousSnapshot: store.snapshot(),
|
|
857
|
+
...(skipDirtyTracking ? {} : { previousSnapshot: store.snapshot() }),
|
|
853
858
|
data: updatedData,
|
|
854
859
|
state: 'changed',
|
|
855
860
|
lastChange: changeEvent,
|
|
@@ -897,7 +902,12 @@ withMethods((store) => ({
|
|
|
897
902
|
getValue(path) {
|
|
898
903
|
return getSmart(store.data(), path);
|
|
899
904
|
},
|
|
905
|
+
// Check if a path exists in the context
|
|
906
|
+
hasValue(path) {
|
|
907
|
+
return has(store.data(), path);
|
|
908
|
+
},
|
|
900
909
|
})));
|
|
910
|
+
//#endregion
|
|
901
911
|
|
|
902
912
|
class AXPExpressionEvaluatorScopeProviderContext {
|
|
903
913
|
constructor() {
|
|
@@ -927,7 +937,12 @@ class AXPExpressionEvaluatorScopeProviderService {
|
|
|
927
937
|
: [];
|
|
928
938
|
const context = new AXPExpressionEvaluatorScopeProviderContext();
|
|
929
939
|
for (const provider of providers) {
|
|
930
|
-
|
|
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);
|
|
931
946
|
}
|
|
932
947
|
this.cache = context.getScopes();
|
|
933
948
|
}
|
|
@@ -935,10 +950,10 @@ class AXPExpressionEvaluatorScopeProviderService {
|
|
|
935
950
|
await this.load();
|
|
936
951
|
return this.cache || {};
|
|
937
952
|
}
|
|
938
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
939
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
940
955
|
}
|
|
941
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
956
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPExpressionEvaluatorScopeProviderService, decorators: [{
|
|
942
957
|
type: Injectable,
|
|
943
958
|
args: [{ providedIn: 'root' }]
|
|
944
959
|
}] });
|
|
@@ -1047,26 +1062,26 @@ class AXPExpressionEvaluatorService {
|
|
|
1047
1062
|
}
|
|
1048
1063
|
return false;
|
|
1049
1064
|
}
|
|
1050
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1051
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1052
1067
|
}
|
|
1053
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1068
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPExpressionEvaluatorService, decorators: [{
|
|
1054
1069
|
type: Injectable,
|
|
1055
1070
|
args: [{ providedIn: 'root' }]
|
|
1056
1071
|
}] });
|
|
1057
1072
|
|
|
1058
1073
|
class AXPComponentSlotPlaceholderComponent {
|
|
1059
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1060
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1061
|
-
<ax-skeleton class="
|
|
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>
|
|
1076
|
+
<ax-skeleton class="w-full h-10 rounded-md"></ax-skeleton>
|
|
1062
1077
|
</div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: AXSkeletonModule }, { kind: "component", type: i1.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1063
1078
|
}
|
|
1064
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1079
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotPlaceholderComponent, decorators: [{
|
|
1065
1080
|
type: Component,
|
|
1066
1081
|
args: [{
|
|
1067
1082
|
selector: 'axp-component-slot-placeholder',
|
|
1068
1083
|
template: `<div>
|
|
1069
|
-
<ax-skeleton class="
|
|
1084
|
+
<ax-skeleton class="w-full h-10 rounded-md"></ax-skeleton>
|
|
1070
1085
|
</div>`,
|
|
1071
1086
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1072
1087
|
imports: [AXSkeletonModule],
|
|
@@ -1090,10 +1105,10 @@ class AXPComponentSlotRegistryService {
|
|
|
1090
1105
|
get(slotName) {
|
|
1091
1106
|
return this.registry.get(slotName) || [];
|
|
1092
1107
|
}
|
|
1093
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1094
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1095
1110
|
}
|
|
1096
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotRegistryService, decorators: [{
|
|
1097
1112
|
type: Injectable,
|
|
1098
1113
|
args: [{
|
|
1099
1114
|
providedIn: 'root'
|
|
@@ -1102,18 +1117,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
1102
1117
|
|
|
1103
1118
|
class AXPComponentSlotDirective {
|
|
1104
1119
|
constructor() {
|
|
1105
|
-
this.name = input.required(...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
1106
|
-
this.host = input(...(ngDevMode ? [undefined, { debugName: "host" }] : []));
|
|
1107
|
-
this.context = input(...(ngDevMode ? [undefined, { debugName: "context" }] : []));
|
|
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 */ []));
|
|
1108
1123
|
this.elementRef = inject(ElementRef);
|
|
1109
1124
|
this.registryService = inject(AXPComponentSlotRegistryService);
|
|
1110
1125
|
this.injector = inject(Injector);
|
|
1111
1126
|
this.evaluator = inject(AXPExpressionEvaluatorService);
|
|
1112
1127
|
this.viewContainerRef = inject(ViewContainerRef);
|
|
1113
1128
|
this.contextStore = inject(AXPContextStore);
|
|
1114
|
-
this.isEmpty = computed(() => this._viewCount() === 0, ...(ngDevMode ? [{ debugName: "isEmpty" }] : []));
|
|
1129
|
+
this.isEmpty = computed(() => this._viewCount() === 0, ...(ngDevMode ? [{ debugName: "isEmpty" }] : /* istanbul ignore next */ []));
|
|
1115
1130
|
// Create a signal to store the count of children
|
|
1116
|
-
this._viewCount = signal(0, ...(ngDevMode ? [{ debugName: "_viewCount" }] : []));
|
|
1131
|
+
this._viewCount = signal(0, ...(ngDevMode ? [{ debugName: "_viewCount" }] : /* istanbul ignore next */ []));
|
|
1117
1132
|
// Track component references for updates
|
|
1118
1133
|
this.componentRefs = [];
|
|
1119
1134
|
// Track placeholder references for replacement
|
|
@@ -1234,10 +1249,10 @@ class AXPComponentSlotDirective {
|
|
|
1234
1249
|
return condition(this.contextStore.data());
|
|
1235
1250
|
//return condition(this.context());
|
|
1236
1251
|
}
|
|
1237
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1238
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
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 }); }
|
|
1239
1254
|
}
|
|
1240
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1255
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotDirective, decorators: [{
|
|
1241
1256
|
type: Directive,
|
|
1242
1257
|
args: [{
|
|
1243
1258
|
selector: 'axp-component-slot',
|
|
@@ -1297,11 +1312,11 @@ class AXPComponentSlotModule {
|
|
|
1297
1312
|
f();
|
|
1298
1313
|
});
|
|
1299
1314
|
}
|
|
1300
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1301
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
1302
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
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 }); }
|
|
1303
1318
|
}
|
|
1304
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1319
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPComponentSlotModule, decorators: [{
|
|
1305
1320
|
type: NgModule,
|
|
1306
1321
|
args: [{
|
|
1307
1322
|
declarations: [AXPComponentSlotDirective],
|
|
@@ -1521,10 +1536,10 @@ class AXPDataSourceDefinitionProviderService {
|
|
|
1521
1536
|
async get(name) {
|
|
1522
1537
|
return (await this.items()).find((c) => c.name == name);
|
|
1523
1538
|
}
|
|
1524
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1525
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1526
1541
|
}
|
|
1527
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1542
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDataSourceDefinitionProviderService, decorators: [{
|
|
1528
1543
|
type: Injectable,
|
|
1529
1544
|
args: [{ providedIn: 'root' }]
|
|
1530
1545
|
}] });
|
|
@@ -1534,12 +1549,12 @@ class AXPContentCheckerDirective {
|
|
|
1534
1549
|
constructor() {
|
|
1535
1550
|
this.viewContainerRef = inject(ViewContainerRef);
|
|
1536
1551
|
this.elementRef = inject((ElementRef));
|
|
1537
|
-
this.isEmpty = computed(() => this.viewContainerRef.length === 0, ...(ngDevMode ? [{ debugName: "isEmpty" }] : []));
|
|
1552
|
+
this.isEmpty = computed(() => this.viewContainerRef.length === 0, ...(ngDevMode ? [{ debugName: "isEmpty" }] : /* istanbul ignore next */ []));
|
|
1538
1553
|
}
|
|
1539
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1540
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
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 }); }
|
|
1541
1556
|
}
|
|
1542
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1557
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPContentCheckerDirective, decorators: [{
|
|
1543
1558
|
type: Directive,
|
|
1544
1559
|
args: [{
|
|
1545
1560
|
selector: '[axp-content-checker]',
|
|
@@ -1569,10 +1584,10 @@ class AXPDblClickDirective {
|
|
|
1569
1584
|
}
|
|
1570
1585
|
this.lastTap = currentTime;
|
|
1571
1586
|
}
|
|
1572
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1573
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
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 }); }
|
|
1574
1589
|
}
|
|
1575
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1590
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDblClickDirective, decorators: [{
|
|
1576
1591
|
type: Directive,
|
|
1577
1592
|
args: [{
|
|
1578
1593
|
selector: '[onDblClick]'
|
|
@@ -1590,14 +1605,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
1590
1605
|
class AXPElementDataDirective {
|
|
1591
1606
|
constructor(elementRef) {
|
|
1592
1607
|
this.elementRef = elementRef;
|
|
1593
|
-
this.data = input(null, ...(ngDevMode ?
|
|
1594
|
-
this.path = input('__data__', ...(ngDevMode ?
|
|
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' });
|
|
1595
1610
|
// Effect to update element data when inputs change
|
|
1596
1611
|
this.updateEffect = effect(() => {
|
|
1597
1612
|
const currentData = this.data();
|
|
1598
1613
|
const currentPath = this.path();
|
|
1599
1614
|
set(this.elementRef.nativeElement, currentPath, currentData);
|
|
1600
|
-
}, ...(ngDevMode ? [{ debugName: "updateEffect" }] : []));
|
|
1615
|
+
}, ...(ngDevMode ? [{ debugName: "updateEffect" }] : /* istanbul ignore next */ []));
|
|
1601
1616
|
}
|
|
1602
1617
|
ngOnInit() {
|
|
1603
1618
|
// Initial data setup
|
|
@@ -1615,10 +1630,10 @@ class AXPElementDataDirective {
|
|
|
1615
1630
|
setData(data) {
|
|
1616
1631
|
set(this.elementRef.nativeElement, this.path(), data);
|
|
1617
1632
|
}
|
|
1618
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1619
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
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 }); }
|
|
1620
1635
|
}
|
|
1621
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1636
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPElementDataDirective, decorators: [{
|
|
1622
1637
|
type: Directive,
|
|
1623
1638
|
args: [{
|
|
1624
1639
|
selector: '[axp-data]',
|
|
@@ -1631,7 +1646,7 @@ class AXPGridLayoutDirective {
|
|
|
1631
1646
|
constructor(el, renderer) {
|
|
1632
1647
|
this.el = el;
|
|
1633
1648
|
this.renderer = renderer;
|
|
1634
|
-
this.options = input.required(...(ngDevMode ?
|
|
1649
|
+
this.options = input.required({ ...(ngDevMode ? { debugName: "options" } : /* istanbul ignore next */ {}), alias: 'axp-grid-layout' });
|
|
1635
1650
|
}
|
|
1636
1651
|
ngOnChanges(changes) {
|
|
1637
1652
|
if (changes['options']) {
|
|
@@ -1654,14 +1669,14 @@ class AXPGridLayoutDirective {
|
|
|
1654
1669
|
setClasses(placement, prefix) {
|
|
1655
1670
|
if (placement == null)
|
|
1656
1671
|
return;
|
|
1657
|
-
const colStart = placement.colStart ? `${prefix}
|
|
1658
|
-
const colEnd = placement.colEnd ? `${prefix}
|
|
1659
|
-
const colSpan = placement.colSpan ? `${prefix}
|
|
1660
|
-
const rowStart = placement.rowStart ? `${prefix}
|
|
1661
|
-
const rowEnd = placement.rowEnd ? `${prefix}
|
|
1662
|
-
const rowSpan = placement.rowSpan ? `${prefix}
|
|
1663
|
-
const order = placement.order ? `${prefix}
|
|
1664
|
-
[colStart, colEnd, colSpan, rowStart, rowEnd, rowSpan, order].forEach(cls => {
|
|
1672
|
+
const colStart = placement.colStart ? `${prefix}col-start-${placement.colStart}` : '';
|
|
1673
|
+
const colEnd = placement.colEnd ? `${prefix}col-end-${placement.colEnd}` : '';
|
|
1674
|
+
const colSpan = placement.colSpan ? `${prefix}col-span-${placement.colSpan}` : '';
|
|
1675
|
+
const rowStart = placement.rowStart ? `${prefix}row-start-${placement.rowStart}` : '';
|
|
1676
|
+
const rowEnd = placement.rowEnd ? `${prefix}row-end-${placement.rowEnd}` : '';
|
|
1677
|
+
const rowSpan = placement.rowSpan ? `${prefix}row-span-${placement.rowSpan}` : '';
|
|
1678
|
+
const order = placement.order ? `${prefix}order-${placement.order}` : ''; // Handling order
|
|
1679
|
+
[colStart, colEnd, colSpan, rowStart, rowEnd, rowSpan, order].forEach((cls) => {
|
|
1665
1680
|
if (cls) {
|
|
1666
1681
|
this.renderer.addClass(this.el.nativeElement, cls);
|
|
1667
1682
|
}
|
|
@@ -1670,15 +1685,15 @@ class AXPGridLayoutDirective {
|
|
|
1670
1685
|
clearClasses() {
|
|
1671
1686
|
const currentClasses = this.el.nativeElement.className.split(' ');
|
|
1672
1687
|
currentClasses.forEach((className) => {
|
|
1673
|
-
if (className.startsWith('
|
|
1688
|
+
if (className.startsWith('col-') || className.startsWith('ax-row-') || className.startsWith('ax-order-')) {
|
|
1674
1689
|
this.renderer.removeClass(this.el.nativeElement, className);
|
|
1675
1690
|
}
|
|
1676
1691
|
});
|
|
1677
1692
|
}
|
|
1678
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1679
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
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 }); }
|
|
1680
1695
|
}
|
|
1681
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1696
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPGridLayoutDirective, decorators: [{
|
|
1682
1697
|
type: Directive,
|
|
1683
1698
|
args: [{
|
|
1684
1699
|
selector: '[axp-grid-layout]',
|
|
@@ -1822,10 +1837,10 @@ class AXPDistributedEventListenerService {
|
|
|
1822
1837
|
this.listenersByKey.clear();
|
|
1823
1838
|
this.providersLoaded = false;
|
|
1824
1839
|
}
|
|
1825
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1826
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1827
1842
|
}
|
|
1828
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1843
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDistributedEventListenerService, decorators: [{
|
|
1829
1844
|
type: Injectable,
|
|
1830
1845
|
args: [{
|
|
1831
1846
|
providedIn: 'root',
|
|
@@ -1949,10 +1964,10 @@ class AXPBroadcastEventService {
|
|
|
1949
1964
|
// Cleanup multi-tab event history
|
|
1950
1965
|
this.multiTabEventHistory.clear();
|
|
1951
1966
|
}
|
|
1952
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1953
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
1954
1969
|
}
|
|
1955
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1970
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPBroadcastEventService, decorators: [{
|
|
1956
1971
|
type: Injectable,
|
|
1957
1972
|
args: [{
|
|
1958
1973
|
providedIn: 'root',
|
|
@@ -2005,10 +2020,10 @@ class AXPHookService {
|
|
|
2005
2020
|
}
|
|
2006
2021
|
return data;
|
|
2007
2022
|
}
|
|
2008
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2009
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
2010
2025
|
}
|
|
2011
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2026
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPHookService, decorators: [{
|
|
2012
2027
|
type: Injectable,
|
|
2013
2028
|
args: [{ providedIn: 'root' }]
|
|
2014
2029
|
}] });
|
|
@@ -2288,14 +2303,85 @@ class AXPModuleManifestRegistry {
|
|
|
2288
2303
|
}
|
|
2289
2304
|
return { missingModules, missingFeatures };
|
|
2290
2305
|
}
|
|
2291
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2292
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
2293
2308
|
}
|
|
2294
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2309
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPModuleManifestRegistry, decorators: [{
|
|
2295
2310
|
type: Injectable,
|
|
2296
2311
|
args: [{ providedIn: 'root' }]
|
|
2297
2312
|
}] });
|
|
2298
2313
|
|
|
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
|
+
|
|
2299
2385
|
class AXPAppStartUpService {
|
|
2300
2386
|
constructor() {
|
|
2301
2387
|
this.tasks = [];
|
|
@@ -2315,10 +2401,10 @@ class AXPAppStartUpService {
|
|
|
2315
2401
|
loadingText.innerHTML = status;
|
|
2316
2402
|
}
|
|
2317
2403
|
}
|
|
2318
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2319
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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' }); }
|
|
2320
2406
|
}
|
|
2321
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2407
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPAppStartUpService, decorators: [{
|
|
2322
2408
|
type: Injectable,
|
|
2323
2409
|
args: [{
|
|
2324
2410
|
providedIn: 'root',
|
|
@@ -2356,17 +2442,38 @@ class AXPModuleManifestModule {
|
|
|
2356
2442
|
},
|
|
2357
2443
|
});
|
|
2358
2444
|
}
|
|
2359
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2360
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
2361
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
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 }); }
|
|
2362
2448
|
}
|
|
2363
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2449
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPModuleManifestModule, decorators: [{
|
|
2364
2450
|
type: NgModule,
|
|
2365
2451
|
args: [{
|
|
2366
2452
|
providers: [],
|
|
2367
2453
|
}]
|
|
2368
2454
|
}], ctorParameters: () => [{ type: AXPAppStartUpService }, { type: i0.Injector }] });
|
|
2369
2455
|
|
|
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
|
+
//#endregion
|
|
2476
|
+
|
|
2370
2477
|
//#region ---- Tag Types ----
|
|
2371
2478
|
//#endregion
|
|
2372
2479
|
|
|
@@ -2518,10 +2625,10 @@ class AXPTagService {
|
|
|
2518
2625
|
const uniqueTags = allTags.filter((tag, index, self) => index === self.findIndex((t) => t.title.toLowerCase() === tag.title.toLowerCase()));
|
|
2519
2626
|
this.cache = uniqueTags;
|
|
2520
2627
|
}
|
|
2521
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2522
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
2628
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTagService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2629
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTagService, providedIn: 'root' }); }
|
|
2523
2630
|
}
|
|
2524
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2631
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPTagService, decorators: [{
|
|
2525
2632
|
type: Injectable,
|
|
2526
2633
|
args: [{
|
|
2527
2634
|
providedIn: 'root',
|
|
@@ -3452,6 +3559,13 @@ function getNestedKeys(obj, prefix = '') {
|
|
|
3452
3559
|
}
|
|
3453
3560
|
return keys;
|
|
3454
3561
|
}
|
|
3562
|
+
/** Normalizes definition categories to an array for iteration and serialization. */
|
|
3563
|
+
function normalizeDefinitionCategories(categories) {
|
|
3564
|
+
if (categories == null) {
|
|
3565
|
+
return [];
|
|
3566
|
+
}
|
|
3567
|
+
return Array.isArray(categories) ? categories : [categories];
|
|
3568
|
+
}
|
|
3455
3569
|
|
|
3456
3570
|
//#region ---- Imports ----
|
|
3457
3571
|
//#endregion
|
|
@@ -3521,7 +3635,7 @@ var AXPExportTemplateToken;
|
|
|
3521
3635
|
class AXPCountdownPipe {
|
|
3522
3636
|
constructor() {
|
|
3523
3637
|
this.calendarService = inject(AXCalendarService);
|
|
3524
|
-
this.countdownSignal = signal(this.setupTimer(), ...(ngDevMode ? [{ debugName: "countdownSignal" }] : []));
|
|
3638
|
+
this.countdownSignal = signal(this.setupTimer(), ...(ngDevMode ? [{ debugName: "countdownSignal" }] : /* istanbul ignore next */ []));
|
|
3525
3639
|
this.targetDate = 0;
|
|
3526
3640
|
this.prevValue = 0;
|
|
3527
3641
|
}
|
|
@@ -3550,10 +3664,10 @@ class AXPCountdownPipe {
|
|
|
3550
3664
|
updateTargetDate(value) {
|
|
3551
3665
|
this.targetDate = new Date(value).getTime();
|
|
3552
3666
|
}
|
|
3553
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3554
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "
|
|
3667
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCountdownPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
3668
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: AXPCountdownPipe, isStandalone: true, name: "countdown", pure: false }); }
|
|
3555
3669
|
}
|
|
3556
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3670
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPCountdownPipe, decorators: [{
|
|
3557
3671
|
type: Pipe,
|
|
3558
3672
|
args: [{
|
|
3559
3673
|
name: 'countdown',
|
|
@@ -3563,6 +3677,41 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
3563
3677
|
}] });
|
|
3564
3678
|
|
|
3565
3679
|
const loggingEnabled = false; // Set to true to enable logging, false to disable
|
|
3680
|
+
//#region ---- Multilingual string helpers ----
|
|
3681
|
+
/**
|
|
3682
|
+
* Per-locale string map as produced by multilingual editors (e.g. `{ "en-US": "...", "fa-IR": "..." }`).
|
|
3683
|
+
*/
|
|
3684
|
+
function isLocaleStringMap(value) {
|
|
3685
|
+
if (value === null || typeof value !== 'object' || Array.isArray(value) || value instanceof Date) {
|
|
3686
|
+
return false;
|
|
3687
|
+
}
|
|
3688
|
+
const values = Object.values(value);
|
|
3689
|
+
return values.length > 0 && values.every((v) => typeof v === 'string');
|
|
3690
|
+
}
|
|
3691
|
+
/**
|
|
3692
|
+
* Lowercased text for client-side filtering: plain string or all locale values joined.
|
|
3693
|
+
*/
|
|
3694
|
+
function toFilterSearchText(value) {
|
|
3695
|
+
if (typeof value === 'string') {
|
|
3696
|
+
return value.toLowerCase();
|
|
3697
|
+
}
|
|
3698
|
+
if (isLocaleStringMap(value)) {
|
|
3699
|
+
return Object.values(value).join(' ').toLowerCase();
|
|
3700
|
+
}
|
|
3701
|
+
return undefined;
|
|
3702
|
+
}
|
|
3703
|
+
function filterValuesAreEqual(itemRaw, condRaw) {
|
|
3704
|
+
if (typeof condRaw === 'string' && isLocaleStringMap(itemRaw)) {
|
|
3705
|
+
return Object.values(itemRaw).some((v) => v.toLowerCase() === condRaw.toLowerCase());
|
|
3706
|
+
}
|
|
3707
|
+
if (typeof itemRaw === 'string' && isLocaleStringMap(condRaw)) {
|
|
3708
|
+
return Object.values(condRaw).some((v) => v.toLowerCase() === itemRaw.toLowerCase());
|
|
3709
|
+
}
|
|
3710
|
+
const itemScalar = typeof itemRaw === 'string' ? itemRaw.toLowerCase() : itemRaw;
|
|
3711
|
+
const condScalar = typeof condRaw === 'string' ? condRaw.toLowerCase() : condRaw;
|
|
3712
|
+
return isEqual(itemScalar, condScalar);
|
|
3713
|
+
}
|
|
3714
|
+
//#endregion
|
|
3566
3715
|
function applyCondition(item, condition) {
|
|
3567
3716
|
const rawValue = condition.field ? get(item, condition.field) : null;
|
|
3568
3717
|
const itemValue = typeof rawValue === 'string' ? rawValue.toLowerCase() : rawValue;
|
|
@@ -3583,7 +3732,12 @@ function applyCondition(item, condition) {
|
|
|
3583
3732
|
switch (op) {
|
|
3584
3733
|
case 'equal':
|
|
3585
3734
|
case 'eq':
|
|
3586
|
-
|
|
3735
|
+
if (!isNil(condition.field) && condition.field !== '') {
|
|
3736
|
+
result = filterValuesAreEqual(rawValue, condition.value);
|
|
3737
|
+
}
|
|
3738
|
+
else {
|
|
3739
|
+
result = isEqual(valueToCompare, conditionValue);
|
|
3740
|
+
}
|
|
3587
3741
|
if (loggingEnabled) {
|
|
3588
3742
|
console.log('Equal check result:', result);
|
|
3589
3743
|
}
|
|
@@ -3591,7 +3745,12 @@ function applyCondition(item, condition) {
|
|
|
3591
3745
|
case 'notEqual':
|
|
3592
3746
|
case 'ne':
|
|
3593
3747
|
case 'neq':
|
|
3594
|
-
|
|
3748
|
+
if (!isNil(condition.field) && condition.field !== '') {
|
|
3749
|
+
result = !filterValuesAreEqual(rawValue, condition.value);
|
|
3750
|
+
}
|
|
3751
|
+
else {
|
|
3752
|
+
result = !isEqual(valueToCompare, conditionValue);
|
|
3753
|
+
}
|
|
3595
3754
|
if (loggingEnabled) {
|
|
3596
3755
|
console.log('Not equal check result:', result);
|
|
3597
3756
|
}
|
|
@@ -3624,12 +3783,15 @@ function applyCondition(item, condition) {
|
|
|
3624
3783
|
console.log('Less than or equal check result:', result);
|
|
3625
3784
|
}
|
|
3626
3785
|
break;
|
|
3627
|
-
case 'contains':
|
|
3628
|
-
|
|
3629
|
-
|
|
3786
|
+
case 'contains': {
|
|
3787
|
+
const needle = toFilterSearchText(condition.value) ??
|
|
3788
|
+
(condition.value == null ? '' : String(condition.value).toLowerCase());
|
|
3789
|
+
const haystack = toFilterSearchText(rawValue);
|
|
3790
|
+
if (haystack !== undefined) {
|
|
3791
|
+
result = includes(haystack, needle);
|
|
3630
3792
|
}
|
|
3631
|
-
else if (Array.isArray(
|
|
3632
|
-
result = includes(
|
|
3793
|
+
else if (Array.isArray(rawValue)) {
|
|
3794
|
+
result = includes(rawValue.map((val) => toFilterSearchText(val) ?? val.toString().toLowerCase()), needle);
|
|
3633
3795
|
}
|
|
3634
3796
|
else {
|
|
3635
3797
|
result = false;
|
|
@@ -3638,13 +3800,18 @@ function applyCondition(item, condition) {
|
|
|
3638
3800
|
console.log('Contains check result:', result);
|
|
3639
3801
|
}
|
|
3640
3802
|
break;
|
|
3803
|
+
}
|
|
3641
3804
|
case 'in':
|
|
3642
3805
|
if (Array.isArray(conditionValue)) {
|
|
3643
3806
|
if (typeof valueToCompare === 'string') {
|
|
3644
|
-
result = conditionValue.some(val => typeof val === 'string' ? val.toLowerCase() === valueToCompare : val === valueToCompare);
|
|
3807
|
+
result = conditionValue.some((val) => typeof val === 'string' ? val.toLowerCase() === valueToCompare : val === valueToCompare);
|
|
3808
|
+
}
|
|
3809
|
+
else if (isLocaleStringMap(rawValue)) {
|
|
3810
|
+
const localeValues = Object.values(rawValue).map((v) => v.toLowerCase());
|
|
3811
|
+
result = localeValues.some((localeVal) => conditionValue.some((val) => typeof val === 'string' ? val.toLowerCase() === localeVal : val === localeVal));
|
|
3645
3812
|
}
|
|
3646
3813
|
else if (Array.isArray(valueToCompare)) {
|
|
3647
|
-
result = valueToCompare.some(val => conditionValue.some(condVal => typeof val === 'string' && typeof condVal === 'string'
|
|
3814
|
+
result = valueToCompare.some((val) => conditionValue.some((condVal) => typeof val === 'string' && typeof condVal === 'string'
|
|
3648
3815
|
? val.toLowerCase() === condVal.toLowerCase()
|
|
3649
3816
|
: val === condVal));
|
|
3650
3817
|
}
|
|
@@ -3659,12 +3826,15 @@ function applyCondition(item, condition) {
|
|
|
3659
3826
|
console.log('In check result:', result);
|
|
3660
3827
|
}
|
|
3661
3828
|
break;
|
|
3662
|
-
case 'notContains':
|
|
3663
|
-
|
|
3664
|
-
|
|
3829
|
+
case 'notContains': {
|
|
3830
|
+
const needleNc = toFilterSearchText(condition.value) ??
|
|
3831
|
+
(condition.value == null ? '' : String(condition.value).toLowerCase());
|
|
3832
|
+
const haystackNc = toFilterSearchText(rawValue);
|
|
3833
|
+
if (haystackNc !== undefined) {
|
|
3834
|
+
result = !includes(haystackNc, needleNc);
|
|
3665
3835
|
}
|
|
3666
|
-
else if (Array.isArray(
|
|
3667
|
-
result = !includes(
|
|
3836
|
+
else if (Array.isArray(rawValue)) {
|
|
3837
|
+
result = !includes(rawValue.map((val) => toFilterSearchText(val) ?? val.toString().toLowerCase()), needleNc);
|
|
3668
3838
|
}
|
|
3669
3839
|
else {
|
|
3670
3840
|
result = false;
|
|
@@ -3673,18 +3843,27 @@ function applyCondition(item, condition) {
|
|
|
3673
3843
|
console.log('Not contains check result:', result);
|
|
3674
3844
|
}
|
|
3675
3845
|
break;
|
|
3676
|
-
|
|
3677
|
-
|
|
3846
|
+
}
|
|
3847
|
+
case 'startsWith': {
|
|
3848
|
+
const prefix = toFilterSearchText(condition.value) ??
|
|
3849
|
+
(condition.value == null ? '' : String(condition.value).toLowerCase());
|
|
3850
|
+
const haystackSw = toFilterSearchText(rawValue);
|
|
3851
|
+
result = haystackSw !== undefined && startsWith(haystackSw, prefix);
|
|
3678
3852
|
if (loggingEnabled) {
|
|
3679
3853
|
console.log('Starts with check result:', result);
|
|
3680
3854
|
}
|
|
3681
3855
|
break;
|
|
3682
|
-
|
|
3683
|
-
|
|
3856
|
+
}
|
|
3857
|
+
case 'endsWith': {
|
|
3858
|
+
const suffix = toFilterSearchText(condition.value) ??
|
|
3859
|
+
(condition.value == null ? '' : String(condition.value).toLowerCase());
|
|
3860
|
+
const haystackEw = toFilterSearchText(rawValue);
|
|
3861
|
+
result = haystackEw !== undefined && endsWith(haystackEw, suffix);
|
|
3684
3862
|
if (loggingEnabled) {
|
|
3685
3863
|
console.log('Ends with check result:', result);
|
|
3686
3864
|
}
|
|
3687
3865
|
break;
|
|
3866
|
+
}
|
|
3688
3867
|
case 'isEmpty':
|
|
3689
3868
|
result = isEmpty(valueToCompare);
|
|
3690
3869
|
if (loggingEnabled) {
|
|
@@ -3836,45 +4015,45 @@ class AXPDeviceService {
|
|
|
3836
4015
|
/**
|
|
3837
4016
|
* Current screen size (Small, Medium, Large)
|
|
3838
4017
|
*/
|
|
3839
|
-
this.screenSize = signal(getScreenSize(), ...(ngDevMode ? [{ debugName: "screenSize" }] : []));
|
|
4018
|
+
this.screenSize = signal(getScreenSize(), ...(ngDevMode ? [{ debugName: "screenSize" }] : /* istanbul ignore next */ []));
|
|
3840
4019
|
/**
|
|
3841
4020
|
* Current device type (Mobile, Tablet, Desktop)
|
|
3842
4021
|
*/
|
|
3843
|
-
this.deviceType = signal(getDeviceType(), ...(ngDevMode ? [{ debugName: "deviceType" }] : []));
|
|
4022
|
+
this.deviceType = signal(getDeviceType(), ...(ngDevMode ? [{ debugName: "deviceType" }] : /* istanbul ignore next */ []));
|
|
3844
4023
|
/**
|
|
3845
4024
|
* Whether the device supports touch input
|
|
3846
4025
|
*/
|
|
3847
|
-
this.isTouchDevice = signal(isTouchDevice(), ...(ngDevMode ? [{ debugName: "isTouchDevice" }] : []));
|
|
4026
|
+
this.isTouchDevice = signal(isTouchDevice(), ...(ngDevMode ? [{ debugName: "isTouchDevice" }] : /* istanbul ignore next */ []));
|
|
3848
4027
|
//#endregion
|
|
3849
4028
|
//#region ---- Computed Signals ----
|
|
3850
4029
|
/**
|
|
3851
4030
|
* Whether the screen size is Small
|
|
3852
4031
|
*/
|
|
3853
|
-
this.isSmall = computed(() => this.screenSize() === AXPScreenSize.Small, ...(ngDevMode ? [{ debugName: "isSmall" }] : []));
|
|
4032
|
+
this.isSmall = computed(() => this.screenSize() === AXPScreenSize.Small, ...(ngDevMode ? [{ debugName: "isSmall" }] : /* istanbul ignore next */ []));
|
|
3854
4033
|
/**
|
|
3855
4034
|
* Whether the screen size is Medium
|
|
3856
4035
|
*/
|
|
3857
|
-
this.isMedium = computed(() => this.screenSize() === AXPScreenSize.Medium, ...(ngDevMode ? [{ debugName: "isMedium" }] : []));
|
|
4036
|
+
this.isMedium = computed(() => this.screenSize() === AXPScreenSize.Medium, ...(ngDevMode ? [{ debugName: "isMedium" }] : /* istanbul ignore next */ []));
|
|
3858
4037
|
/**
|
|
3859
4038
|
* Whether the screen size is Large
|
|
3860
4039
|
*/
|
|
3861
|
-
this.isLarge = computed(() => this.screenSize() === AXPScreenSize.Large, ...(ngDevMode ? [{ debugName: "isLarge" }] : []));
|
|
4040
|
+
this.isLarge = computed(() => this.screenSize() === AXPScreenSize.Large, ...(ngDevMode ? [{ debugName: "isLarge" }] : /* istanbul ignore next */ []));
|
|
3862
4041
|
/**
|
|
3863
4042
|
* Whether the device is Mobile
|
|
3864
4043
|
*/
|
|
3865
|
-
this.isMobileDevice = computed(() => this.deviceType() === AXPDeviceType.Mobile, ...(ngDevMode ? [{ debugName: "isMobileDevice" }] : []));
|
|
4044
|
+
this.isMobileDevice = computed(() => this.deviceType() === AXPDeviceType.Mobile, ...(ngDevMode ? [{ debugName: "isMobileDevice" }] : /* istanbul ignore next */ []));
|
|
3866
4045
|
/**
|
|
3867
4046
|
* Whether the device is Tablet
|
|
3868
4047
|
*/
|
|
3869
|
-
this.isTabletDevice = computed(() => this.deviceType() === AXPDeviceType.Tablet, ...(ngDevMode ? [{ debugName: "isTabletDevice" }] : []));
|
|
4048
|
+
this.isTabletDevice = computed(() => this.deviceType() === AXPDeviceType.Tablet, ...(ngDevMode ? [{ debugName: "isTabletDevice" }] : /* istanbul ignore next */ []));
|
|
3870
4049
|
/**
|
|
3871
4050
|
* Whether the device is Desktop
|
|
3872
4051
|
*/
|
|
3873
|
-
this.isDesktopDevice = computed(() => this.deviceType() === AXPDeviceType.Desktop, ...(ngDevMode ? [{ debugName: "isDesktopDevice" }] : []));
|
|
4052
|
+
this.isDesktopDevice = computed(() => this.deviceType() === AXPDeviceType.Desktop, ...(ngDevMode ? [{ debugName: "isDesktopDevice" }] : /* istanbul ignore next */ []));
|
|
3874
4053
|
/**
|
|
3875
4054
|
* Whether the device supports touch (alias for isTouchDevice)
|
|
3876
4055
|
*/
|
|
3877
|
-
this.isTouchScreen = computed(() => this.isTouchDevice(), ...(ngDevMode ? [{ debugName: "isTouchScreen" }] : []));
|
|
4056
|
+
this.isTouchScreen = computed(() => this.isTouchDevice(), ...(ngDevMode ? [{ debugName: "isTouchScreen" }] : /* istanbul ignore next */ []));
|
|
3878
4057
|
//#endregion
|
|
3879
4058
|
//#region ---- Private Properties ----
|
|
3880
4059
|
this._resizeListener = null;
|
|
@@ -3940,10 +4119,10 @@ class AXPDeviceService {
|
|
|
3940
4119
|
destroy() {
|
|
3941
4120
|
this._removeResizeListener();
|
|
3942
4121
|
}
|
|
3943
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3944
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4122
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDeviceService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4123
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDeviceService, providedIn: 'root' }); }
|
|
3945
4124
|
}
|
|
3946
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4125
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPDeviceService, decorators: [{
|
|
3947
4126
|
type: Injectable,
|
|
3948
4127
|
args: [{
|
|
3949
4128
|
providedIn: 'root',
|
|
@@ -4033,12 +4212,12 @@ class AXHighlightService {
|
|
|
4033
4212
|
let parts = [];
|
|
4034
4213
|
let match;
|
|
4035
4214
|
let lastIndex = 0;
|
|
4036
|
-
let resultHTML = '<span class="
|
|
4215
|
+
let resultHTML = '<span class="highlight-text">';
|
|
4037
4216
|
while ((match = searchRegex.exec(textContent)) !== null) {
|
|
4038
4217
|
if (match.index > lastIndex) {
|
|
4039
4218
|
resultHTML += `<span>${textContent.slice(lastIndex, match.index)}</span>`;
|
|
4040
4219
|
}
|
|
4041
|
-
resultHTML += `<span class="
|
|
4220
|
+
resultHTML += `<span class="highlight">${match[0]}</span>`;
|
|
4042
4221
|
lastIndex = searchRegex.lastIndex;
|
|
4043
4222
|
}
|
|
4044
4223
|
if (lastIndex < textContent.length) {
|
|
@@ -4047,10 +4226,10 @@ class AXHighlightService {
|
|
|
4047
4226
|
resultHTML += '</span>';
|
|
4048
4227
|
return resultHTML;
|
|
4049
4228
|
}
|
|
4050
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4051
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4229
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXHighlightService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4230
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXHighlightService, providedIn: 'root' }); }
|
|
4052
4231
|
}
|
|
4053
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4232
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXHighlightService, decorators: [{
|
|
4054
4233
|
type: Injectable,
|
|
4055
4234
|
args: [{
|
|
4056
4235
|
providedIn: 'root',
|
|
@@ -4114,6 +4293,20 @@ function extractTextFromHtml(value) {
|
|
|
4114
4293
|
div.innerHTML = value;
|
|
4115
4294
|
return div.textContent || div.innerText || '';
|
|
4116
4295
|
}
|
|
4296
|
+
/**
|
|
4297
|
+
* True when the string likely contains HTML markup (e.g. `<p>`, `<ul>`), as opposed to plain text.
|
|
4298
|
+
* Used to choose innerHTML vs text interpolation for multilingual fields.
|
|
4299
|
+
*/
|
|
4300
|
+
function containsHtmlMarkup(value) {
|
|
4301
|
+
if (value == null) {
|
|
4302
|
+
return false;
|
|
4303
|
+
}
|
|
4304
|
+
const t = value.trim();
|
|
4305
|
+
if (!t) {
|
|
4306
|
+
return false;
|
|
4307
|
+
}
|
|
4308
|
+
return /<\/?[a-z][\s\S]*?>/i.test(t);
|
|
4309
|
+
}
|
|
4117
4310
|
/**
|
|
4118
4311
|
* Generate kebab-case group name from title
|
|
4119
4312
|
*/
|
|
@@ -4131,5 +4324,5 @@ function generateKebabCase(title) {
|
|
|
4131
4324
|
* Generated bundle index. Do not edit.
|
|
4132
4325
|
*/
|
|
4133
4326
|
|
|
4134
|
-
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 };
|
|
4327
|
+
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, compareMultiLanguageStrings, containsHtmlMarkup, createProviderWithInjectionContext, defaultColumnWidthProvider, extractNestedFieldsWildcard, extractTextFromHtml, extractValue, generateKebabCase, getActionButton, getChangedPaths, getDetailedChanges, getEnumValues, getNestedKeys, getSmart, getSystemActions, normalizeDefinitionCategories, objectKeyValueTransforms, provideLazyProvider, resolveActionLook, resolvePlatformScopeKey, resolvePlatformScopeName, setSmart, sortByMultiLanguageString };
|
|
4135
4328
|
//# sourceMappingURL=acorex-platform-core.mjs.map
|