@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.
- package/{types/acorex-platform-auth.d.ts → auth/index.d.ts} +2 -14
- package/{types/acorex-platform-common.d.ts → common/index.d.ts} +30 -302
- package/{types/acorex-platform-core.d.ts → core/index.d.ts} +44 -188
- package/{types/acorex-platform-domain.d.ts → domain/index.d.ts} +412 -744
- package/fesm2022/acorex-platform-auth.mjs +27 -125
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-common-settings.provider-Bi1RYif5.mjs → acorex-platform-common-common-settings.provider-DVvuLUfF.mjs} +32 -30
- package/fesm2022/acorex-platform-common-common-settings.provider-DVvuLUfF.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +205 -711
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +127 -420
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-domain.mjs +830 -561
- package/fesm2022/acorex-platform-domain.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +114 -634
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- 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
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CSxCnzwU.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-components.mjs +877 -3362
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +204 -456
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +10062 -14672
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +171 -413
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widget-core.mjs +441 -507
- package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
- 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
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-CPBzE96V.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs → acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs} +76 -21
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-Dtv6U3df.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs → acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs} +7 -6
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-QxJfswhK.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs → acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs} +12 -12
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-CVdssZBD.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs +111 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BCxE0RTB.mjs.map +1 -0
- 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
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DVaZN9QN.mjs.map +1 -0
- 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
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-DPGHgXa6.mjs.map +1 -0
- 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
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-CdiNW691.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets.mjs +3429 -5632
- package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-native.mjs +7 -8
- package/fesm2022/acorex-platform-native.mjs.map +1 -1
- package/fesm2022/acorex-platform-runtime.mjs +166 -391
- package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs +160 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-D4hU2SCE.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D2CtNrSn.mjs +1716 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D2CtNrSn.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs +120 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BVTklnzs.mjs.map +1 -0
- 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
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-rGsMVAZj.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs → acorex-platform-themes-default-error-401.component-53VB-PS_.mjs} +4 -4
- package/fesm2022/acorex-platform-themes-default-error-401.component-53VB-PS_.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs → acorex-platform-themes-default-error-404.component-DVF9soT5.mjs} +4 -4
- package/fesm2022/acorex-platform-themes-default-error-404.component-DVF9soT5.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs +19 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-CwNNHzZn.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +61 -1784
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs → acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs} +6 -6
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-TJ9PWHMY.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs} +6 -6
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BHcKkIx0.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs → acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs} +25 -24
- package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs +65 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-BUPs84MI.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs +64 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-BotknoHn.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +305 -408
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +100 -359
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/fesm2022/acorex-platform.mjs.map +1 -1
- package/{types/acorex-platform-layout-builder.d.ts → layout/builder/index.d.ts} +38 -160
- package/{types/acorex-platform-layout-components.d.ts → layout/components/index.d.ts} +125 -854
- package/{types/acorex-platform-layout-designer.d.ts → layout/designer/index.d.ts} +18 -96
- package/{types/acorex-platform-layout-entity.d.ts → layout/entity/index.d.ts} +65 -848
- package/{types/acorex-platform-layout-views.d.ts → layout/views/index.d.ts} +47 -80
- package/{types/acorex-platform-layout-widget-core.d.ts → layout/widget-core/index.d.ts} +197 -274
- package/{types/acorex-platform-layout-widgets.d.ts → layout/widgets/index.d.ts} +124 -608
- package/{types/acorex-platform-native.d.ts → native/index.d.ts} +7 -0
- package/package.json +33 -33
- package/runtime/index.d.ts +307 -0
- package/{types/acorex-platform-themes-default.d.ts → themes/default/index.d.ts} +4 -113
- package/{types/acorex-platform-themes-shared.d.ts → themes/shared/index.d.ts} +4 -5
- package/{types/acorex-platform-workflow.d.ts → workflow/index.d.ts} +81 -162
- package/fesm2022/acorex-platform-common-common-settings.provider-Bi1RYif5.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CDYAGBku.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGO75IMz.mjs +0 -116
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-BGO75IMz.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DmzNTYiS.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-BNG_588B.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs +0 -160
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Cx1lLUaR.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs +0 -120
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-AOrcgjDF.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BfCeUU5F.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-401.component-C7EYJzSr.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-404.component-7MVLMwIa.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs +0 -19
- package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-DK6R87Lf.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs +0 -94
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs +0 -86
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs.map +0 -1
- package/types/acorex-platform-runtime.d.ts +0 -571
- /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,
|
|
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: "
|
|
25
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
178
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
296
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
485
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
524
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
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: "
|
|
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
|
-
|
|
795
|
-
|
|
796
|
-
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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: "
|
|
954
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
1066
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
1075
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
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: "
|
|
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: "
|
|
1109
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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" }] :
|
|
1121
|
-
this.host = input(...(ngDevMode ? [undefined, { debugName: "host" }] :
|
|
1122
|
-
this.context = input(...(ngDevMode ? [undefined, { debugName: "context" }] :
|
|
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" }] :
|
|
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" }] :
|
|
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: "
|
|
1253
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
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: "
|
|
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: "
|
|
1316
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
1317
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
1540
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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" }] :
|
|
1537
|
+
this.isEmpty = computed(() => this.viewContainerRef.length === 0, ...(ngDevMode ? [{ debugName: "isEmpty" }] : []));
|
|
1553
1538
|
}
|
|
1554
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1555
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
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: "
|
|
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: "
|
|
1588
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
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: "
|
|
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,
|
|
1609
|
-
this.path = input('__data__',
|
|
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" }] :
|
|
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: "
|
|
1634
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
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: "
|
|
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(
|
|
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: "
|
|
1694
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
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: "
|
|
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: "
|
|
1841
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
1968
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
2024
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
2307
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
2405
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
2446
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
2447
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
2641
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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" }] :
|
|
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: "
|
|
3681
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "
|
|
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: "
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
3801
|
-
|
|
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(
|
|
3807
|
-
result = includes(
|
|
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(
|
|
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(
|
|
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
|
-
|
|
3844
|
-
|
|
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(
|
|
3850
|
-
result = !includes(
|
|
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
|
-
|
|
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
|
-
|
|
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" }] :
|
|
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" }] :
|
|
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" }] :
|
|
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" }] :
|
|
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" }] :
|
|
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" }] :
|
|
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" }] :
|
|
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" }] :
|
|
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" }] :
|
|
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" }] :
|
|
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: "
|
|
4136
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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: "
|
|
4243
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
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: "
|
|
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,
|
|
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
|