@acorex/platform 20.3.0-next.8 → 20.4.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/common/index.d.ts +643 -367
- package/core/index.d.ts +91 -66
- package/fesm2022/acorex-platform-auth.mjs +19 -19
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common-common-settings.provider-9OHien_H.mjs +47 -0
- package/fesm2022/acorex-platform-common-common-settings.provider-9OHien_H.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +678 -252
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +173 -161
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-domain.mjs +16 -16
- package/fesm2022/acorex-platform-domain.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +1946 -1947
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-components.mjs +1902 -904
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +96 -89
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity-create-entity.command-DyXF9zAh.mjs +52 -0
- package/fesm2022/acorex-platform-layout-entity-create-entity.command-DyXF9zAh.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-entity.mjs +2237 -1834
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +64 -62
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widget-core.mjs +2758 -0
- package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-C2Qn1YAW.mjs → acorex-platform-layout-widgets-button-widget-designer.component-C_3IWNkj.mjs} +6 -6
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-C_3IWNkj.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-extra-properties-schema-widget-edit.component-D9mf08rU.mjs → acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-CJltEgut.mjs} +5 -5
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-CJltEgut.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-extra-properties-schema-widget-view.component-D6GQ-eyr.mjs → acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-pM-TIuk0.mjs} +5 -5
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-pM-TIuk0.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-extra-properties-values-widget-edit.component-DVbIdVZ6.mjs → acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-BqI96-fU.mjs} +5 -5
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-BqI96-fU.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-extra-properties-values-widget-view.component-D-aM64Hu.mjs → acorex-platform-layout-widgets-extra-properties-values-widget-view.component-C-AhenaM.mjs} +5 -5
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-view.component-C-AhenaM.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-extra-properties-widget-edit.component-em2-aU8E.mjs → acorex-platform-layout-widgets-extra-properties-widget-edit.component-DCAya5ne.mjs} +5 -5
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-edit.component-DCAya5ne.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-extra-properties-widget-view.component-BeuIofdr.mjs → acorex-platform-layout-widgets-extra-properties-widget-view.component-D-PnBqLb.mjs} +5 -5
- package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-view.component-D-PnBqLb.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-file-list-popup.component-rW2RD35f.mjs → acorex-platform-layout-widgets-file-list-popup.component-DuuFHWvB.mjs} +10 -10
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-DuuFHWvB.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-DNvnQ4Mc.mjs → acorex-platform-layout-widgets-page-widget-designer.component-Bss0xUcu.mjs} +8 -8
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-Bss0xUcu.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-tabular-data-edit-popup.component-CPVRbE8B.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-Cy9mHnNP.mjs} +14 -14
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-Cy9mHnNP.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-tabular-data-view-popup.component-Dmg5DdX8.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-DznLtuer.mjs} +6 -5
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-DznLtuer.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-yADN3Xji.mjs → acorex-platform-layout-widgets-text-block-widget-designer.component-ndOUSFi9.mjs} +6 -7
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-ndOUSFi9.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets.mjs → acorex-platform-layout-widgets.mjs} +9918 -8826
- package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -0
- package/fesm2022/acorex-platform-native.mjs +7 -7
- package/fesm2022/acorex-platform-native.mjs.map +1 -1
- package/fesm2022/acorex-platform-runtime.mjs +40 -40
- package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-B1PT6FtZ.mjs +115 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-B1PT6FtZ.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-rdKxuMC_.mjs +742 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-rdKxuMC_.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-4g19A3eI.mjs +101 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-4g19A3eI.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-BExtm1JE.mjs → acorex-platform-themes-default-entity-master-single-view.component-B8gx5cG7.mjs} +17 -17
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-B8gx5cG7.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-401.component-DrO1PEOH.mjs → acorex-platform-themes-default-error-401.component-CcvGfdhu.mjs} +4 -4
- package/fesm2022/{acorex-platform-themes-default-error-401.component-DrO1PEOH.mjs.map → acorex-platform-themes-default-error-401.component-CcvGfdhu.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-error-404.component-DqVq0oHX.mjs → acorex-platform-themes-default-error-404.component-4-CaEsnV.mjs} +4 -4
- package/fesm2022/{acorex-platform-themes-default-error-404.component-DqVq0oHX.mjs.map → acorex-platform-themes-default-error-404.component-4-CaEsnV.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-error-offline.component-Bt2PTL7_.mjs → acorex-platform-themes-default-error-offline.component-BNecbFEj.mjs} +4 -4
- package/fesm2022/{acorex-platform-themes-default-error-offline.component-Bt2PTL7_.mjs.map → acorex-platform-themes-default-error-offline.component-BNecbFEj.mjs.map} +1 -1
- package/fesm2022/acorex-platform-themes-default.mjs +117 -51
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs → acorex-platform-themes-shared-icon-chooser-view.component-Dc_Txe32.mjs} +5 -5
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-Dc_Txe32.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs → acorex-platform-themes-shared-settings.provider-DY2xFnrv.mjs} +9 -9
- package/fesm2022/acorex-platform-themes-shared-settings.provider-DY2xFnrv.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-column.component-AeOQxjbS.mjs → acorex-platform-themes-shared-theme-color-chooser-column.component-hgWLhhle.mjs} +5 -5
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-hgWLhhle.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-theme-color-chooser-view.component-DEVzRd6-.mjs → acorex-platform-themes-shared-theme-color-chooser-view.component-CY3JZK_W.mjs} +5 -5
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-CY3JZK_W.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +217 -75
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +27 -39
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/layout/builder/README.md +1577 -3
- package/layout/builder/index.d.ts +735 -813
- package/layout/components/index.d.ts +384 -433
- package/layout/designer/index.d.ts +8 -6
- package/layout/entity/index.d.ts +953 -338
- package/layout/views/index.d.ts +13 -14
- package/layout/widget-core/README.md +4 -0
- package/layout/widget-core/index.d.ts +959 -0
- package/layout/widgets/README.md +4 -0
- package/{widgets → layout/widgets}/index.d.ts +768 -655
- package/package.json +14 -10
- package/themes/shared/index.d.ts +2 -2
- package/workflow/index.d.ts +3 -173
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BXbkGGei.mjs +0 -115
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BXbkGGei.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-gQIK6PIx.mjs +0 -706
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-gQIK6PIx.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Bp1JLsj1.mjs +0 -101
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Bp1JLsj1.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BExtm1JE.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BgEh06Tn.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-AeOQxjbS.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DEVzRd6-.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-button-widget-designer.component-C2Qn1YAW.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-CzEFmKWG.mjs +0 -84
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-CzEFmKWG.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-BXPrXy-h.mjs +0 -55
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-BXPrXy-h.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-KYCQ2qTJ.mjs +0 -92
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-KYCQ2qTJ.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-BVZ7lWm9.mjs +0 -55
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-BVZ7lWm9.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-extra-properties-schema-widget-edit.component-D9mf08rU.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-extra-properties-schema-widget-view.component-D6GQ-eyr.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-extra-properties-values-widget-edit.component-DVbIdVZ6.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-extra-properties-values-widget-view.component-D-aM64Hu.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-extra-properties-widget-edit.component-em2-aU8E.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-extra-properties-widget-view.component-BeuIofdr.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-file-list-popup.component-rW2RD35f.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DNvnQ4Mc.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-rich-text-popup.component-Cydlpsat.mjs +0 -40
- package/fesm2022/acorex-platform-widgets-rich-text-popup.component-Cydlpsat.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-tabular-data-edit-popup.component-CPVRbE8B.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-tabular-data-view-popup.component-Dmg5DdX8.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-text-block-widget-designer.component-yADN3Xji.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets.mjs.map +0 -1
- package/widgets/README.md +0 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, inject, Injectable, Injector, makeEnvironmentProviders, NgModule, ErrorHandler,
|
|
2
|
+
import { InjectionToken, inject, Injectable, Injector, makeEnvironmentProviders, NgModule, ErrorHandler, EventEmitter, Input, Output, Directive, Component, ViewEncapsulation, Inject, signal, model, linkedSignal, afterNextRender } from '@angular/core';
|
|
3
3
|
import { kebabCase, merge, sortBy, cloneDeep, get, omit } from 'lodash-es';
|
|
4
4
|
import { Router, ROUTES, RouterModule } from '@angular/router';
|
|
5
5
|
import { AXPSessionService, AXPSessionStatus } from '@acorex/platform/auth';
|
|
@@ -7,7 +7,7 @@ import { Subject, distinctUntilChanged, merge as merge$1 } from 'rxjs';
|
|
|
7
7
|
import * as i1$1 from '@acorex/platform/core';
|
|
8
8
|
import { AXPPlatformScope, AXPBroadcastEventService, objectKeyValueTransforms, AXPComponentLogoConfig, AXPImageUrlLogoConfig, AXPSystemActionType, AXPAppStartUpProvider, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER } from '@acorex/platform/core';
|
|
9
9
|
import { AXTranslationService } from '@acorex/core/translation';
|
|
10
|
-
import { AXPWidgetsCatalog } from '@acorex/platform/layout/
|
|
10
|
+
import { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';
|
|
11
11
|
import { AXPopupModule, AXPopupService } from '@acorex/components/popup';
|
|
12
12
|
import { AXToastService, AXToastModule } from '@acorex/components/toast';
|
|
13
13
|
import { AXDateTimeModule } from '@acorex/core/date-time';
|
|
@@ -20,8 +20,8 @@ import { AXImageModule } from '@acorex/components/image';
|
|
|
20
20
|
import { AXPlatform } from '@acorex/core/platform';
|
|
21
21
|
import * as i1 from '@angular/common';
|
|
22
22
|
import { CommonModule } from '@angular/common';
|
|
23
|
-
import { signalStore, withState, withMethods, patchState, withHooks } from '@ngrx/signals';
|
|
24
23
|
import { AXPCommandExecutor } from '@acorex/platform/runtime';
|
|
24
|
+
import { signalStore, withState, withMethods, patchState, withHooks } from '@ngrx/signals';
|
|
25
25
|
import { AXFormatService } from '@acorex/core/format';
|
|
26
26
|
import { AXDialogService } from '@acorex/components/dialog';
|
|
27
27
|
import * as i5 from '@acorex/components/button';
|
|
@@ -60,10 +60,10 @@ class AXPAppVersionService {
|
|
|
60
60
|
async getAppVersion() {
|
|
61
61
|
return this.provider.provider();
|
|
62
62
|
}
|
|
63
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
64
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
63
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPAppVersionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
64
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPAppVersionService, providedIn: 'root' }); }
|
|
65
65
|
}
|
|
66
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPAppVersionService, decorators: [{
|
|
67
67
|
type: Injectable,
|
|
68
68
|
args: [{
|
|
69
69
|
providedIn: 'root',
|
|
@@ -126,7 +126,7 @@ function createAllQueryView(params = {
|
|
|
126
126
|
conditions: [],
|
|
127
127
|
}) {
|
|
128
128
|
params = Object.assign({ columns: [], sorts: [], conditions: [] }, params);
|
|
129
|
-
return createQueryView('all', '
|
|
129
|
+
return createQueryView('all', '@general:terms.interface.selection.all-items', true, {
|
|
130
130
|
columns: params.columns ?? [],
|
|
131
131
|
conditions: params.conditions ?? [],
|
|
132
132
|
sorts: params.sorts ?? [],
|
|
@@ -438,10 +438,10 @@ class AXPSettingDefinitionProviderService {
|
|
|
438
438
|
sections: []
|
|
439
439
|
};
|
|
440
440
|
}
|
|
441
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
442
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
441
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSettingDefinitionProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
442
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSettingDefinitionProviderService, providedIn: 'root' }); }
|
|
443
443
|
}
|
|
444
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
444
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSettingDefinitionProviderService, decorators: [{
|
|
445
445
|
type: Injectable,
|
|
446
446
|
args: [{ providedIn: 'root' }]
|
|
447
447
|
}] });
|
|
@@ -471,10 +471,10 @@ class AXPSettingDefaultValuesAggregatorService {
|
|
|
471
471
|
}
|
|
472
472
|
return merged;
|
|
473
473
|
}
|
|
474
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
475
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
474
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSettingDefaultValuesAggregatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
475
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSettingDefaultValuesAggregatorService, providedIn: 'root' }); }
|
|
476
476
|
}
|
|
477
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
477
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSettingDefaultValuesAggregatorService, decorators: [{
|
|
478
478
|
type: Injectable,
|
|
479
479
|
args: [{ providedIn: 'root' }]
|
|
480
480
|
}] });
|
|
@@ -676,10 +676,10 @@ class AXPSettingService {
|
|
|
676
676
|
this.onChanged.next(event);
|
|
677
677
|
this.eventService.publish('AXPSettingChangedEvent', event);
|
|
678
678
|
}
|
|
679
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
680
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
679
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSettingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
680
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSettingService, providedIn: 'root' }); }
|
|
681
681
|
}
|
|
682
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
682
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSettingService, decorators: [{
|
|
683
683
|
type: Injectable,
|
|
684
684
|
args: [{
|
|
685
685
|
providedIn: 'root',
|
|
@@ -861,10 +861,10 @@ class AXPHomePageService {
|
|
|
861
861
|
router.navigate([current.path]);
|
|
862
862
|
}, 100);
|
|
863
863
|
}
|
|
864
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
865
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
864
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
865
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageService, providedIn: 'root' }); }
|
|
866
866
|
}
|
|
867
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
867
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageService, decorators: [{
|
|
868
868
|
type: Injectable,
|
|
869
869
|
args: [{
|
|
870
870
|
providedIn: 'root',
|
|
@@ -893,7 +893,7 @@ class AXPHomePageSettingProvider {
|
|
|
893
893
|
this.defaultHomePageKey = inject(AXP_HOME_PAGE_DEFAULT_KEY, { optional: true }) ?? 'home';
|
|
894
894
|
}
|
|
895
895
|
async provide(context) {
|
|
896
|
-
const trans = async (key) => await this.translateService.translateAsync(
|
|
896
|
+
const trans = async (key) => await this.translateService.translateAsync(`@general:settings.${key}`);
|
|
897
897
|
const list = await this.homePageService.getRegisteredList().map((c) => ({ id: c.key, title: c.title }));
|
|
898
898
|
if (list.length === 0) {
|
|
899
899
|
return;
|
|
@@ -926,17 +926,17 @@ class AXPHomePageSettingProvider {
|
|
|
926
926
|
// End the 'General Settings' group
|
|
927
927
|
.endGroup();
|
|
928
928
|
}
|
|
929
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
930
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
929
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageSettingProvider, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
930
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageSettingProvider }); }
|
|
931
931
|
}
|
|
932
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
932
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageSettingProvider, decorators: [{
|
|
933
933
|
type: Injectable
|
|
934
934
|
}], ctorParameters: () => [{ type: i0.Injector }] });
|
|
935
935
|
|
|
936
936
|
class AXPHomePageModule {
|
|
937
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
938
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.
|
|
939
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.
|
|
937
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
938
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageModule }); }
|
|
939
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageModule, providers: [
|
|
940
940
|
{
|
|
941
941
|
provide: AXP_SETTING_DEFINITION_PROVIDER,
|
|
942
942
|
useClass: AXPHomePageSettingProvider,
|
|
@@ -944,7 +944,7 @@ class AXPHomePageModule {
|
|
|
944
944
|
},
|
|
945
945
|
] }); }
|
|
946
946
|
}
|
|
947
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
947
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPHomePageModule, decorators: [{
|
|
948
948
|
type: NgModule,
|
|
949
949
|
args: [{
|
|
950
950
|
imports: [],
|
|
@@ -967,10 +967,10 @@ class AXPCustomOperatorServiceImpl extends AXPCustomOperatorService {
|
|
|
967
967
|
getCustomOperators() {
|
|
968
968
|
return {};
|
|
969
969
|
}
|
|
970
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
971
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
970
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPCustomOperatorServiceImpl, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
971
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPCustomOperatorServiceImpl }); }
|
|
972
972
|
}
|
|
973
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
973
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPCustomOperatorServiceImpl, decorators: [{
|
|
974
974
|
type: Injectable
|
|
975
975
|
}] });
|
|
976
976
|
|
|
@@ -1015,10 +1015,10 @@ class AXPFilterOperatorMiddlewareServiceImpl extends AXPFilterOperatorMiddleware
|
|
|
1015
1015
|
return acc;
|
|
1016
1016
|
}, {});
|
|
1017
1017
|
}
|
|
1018
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1019
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
1018
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFilterOperatorMiddlewareServiceImpl, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1019
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFilterOperatorMiddlewareServiceImpl }); }
|
|
1020
1020
|
}
|
|
1021
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
1021
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFilterOperatorMiddlewareServiceImpl, decorators: [{
|
|
1022
1022
|
type: Injectable
|
|
1023
1023
|
}] });
|
|
1024
1024
|
|
|
@@ -1039,10 +1039,10 @@ class AXPErrorHandlerRegistryService {
|
|
|
1039
1039
|
get handlers() {
|
|
1040
1040
|
return this.errorHandlers;
|
|
1041
1041
|
}
|
|
1042
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1043
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
1042
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPErrorHandlerRegistryService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1043
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPErrorHandlerRegistryService, providedIn: 'root' }); }
|
|
1044
1044
|
}
|
|
1045
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
1045
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPErrorHandlerRegistryService, decorators: [{
|
|
1046
1046
|
type: Injectable,
|
|
1047
1047
|
args: [{
|
|
1048
1048
|
providedIn: 'root'
|
|
@@ -1073,74 +1073,84 @@ class AXPGlobalErrorHandler extends ErrorHandler {
|
|
|
1073
1073
|
}
|
|
1074
1074
|
handleErrorRecursively(0, error);
|
|
1075
1075
|
}
|
|
1076
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1077
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
1076
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPGlobalErrorHandler, deps: [{ token: i0.Injector }, { token: AXPErrorHandlerRegistryService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1077
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPGlobalErrorHandler, providedIn: 'root' }); }
|
|
1078
1078
|
}
|
|
1079
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
1079
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPGlobalErrorHandler, decorators: [{
|
|
1080
1080
|
type: Injectable,
|
|
1081
1081
|
args: [{ providedIn: 'root' }]
|
|
1082
1082
|
}], ctorParameters: () => [{ type: i0.Injector }, { type: AXPErrorHandlerRegistryService }] });
|
|
1083
1083
|
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1084
|
+
const AXP_GLOBAL_VARIABLE_DEFINITION_PROVIDER = new InjectionToken('AXP_GLOBAL_VARIABLE_DEFINITION_PROVIDER', {
|
|
1085
|
+
factory: () => [],
|
|
1086
|
+
});
|
|
1087
|
+
|
|
1088
|
+
//#region ---- Imports ----
|
|
1089
|
+
//#endregion
|
|
1090
|
+
class AXPGlobalVariableDefinitionService {
|
|
1091
|
+
constructor() {
|
|
1092
|
+
//#region ---- Providers & Caches ----
|
|
1093
|
+
this.definitionProviders = inject(AXP_GLOBAL_VARIABLE_DEFINITION_PROVIDER, { optional: true }) || [];
|
|
1094
|
+
/** Cache for definitions by name. */
|
|
1095
|
+
this.definitionsByName = new Map();
|
|
1089
1096
|
}
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1097
|
+
//#endregion
|
|
1098
|
+
//#region ---- Public API ----
|
|
1099
|
+
/**
|
|
1100
|
+
* Returns a report definition by its id.
|
|
1101
|
+
* First checks the cache, then queries all providers if not found.
|
|
1102
|
+
* @param name The global variable name.
|
|
1103
|
+
* @returns The global variable definition if found, undefined otherwise.
|
|
1104
|
+
*/
|
|
1105
|
+
async getByName(name) {
|
|
1106
|
+
// Check cache first
|
|
1107
|
+
if (this.definitionsByName.has(name)) {
|
|
1108
|
+
return this.definitionsByName.get(name);
|
|
1093
1109
|
}
|
|
1110
|
+
// Not in cache, query providers (each provider is itself a global variable definition)
|
|
1111
|
+
const resolvedProviders = await Promise.all(this.definitionProviders);
|
|
1112
|
+
const match = resolvedProviders.find(def => def?.name === name);
|
|
1113
|
+
if (match) {
|
|
1114
|
+
this.definitionsByName.set(name, match);
|
|
1115
|
+
return match;
|
|
1116
|
+
}
|
|
1117
|
+
return undefined;
|
|
1094
1118
|
}
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
this.setClasses(this.options.positions?.default, '');
|
|
1102
|
-
this.setClasses(this.options.positions?.md, 'md:');
|
|
1103
|
-
this.setClasses(this.options.positions?.lg, 'lg:');
|
|
1104
|
-
this.setClasses(this.options.positions?.xl, 'xl:');
|
|
1105
|
-
this.setClasses(this.options.positions?.xxl, '2xl:');
|
|
1106
|
-
}
|
|
1107
|
-
setClasses(positions, prefix) {
|
|
1108
|
-
if (positions == null)
|
|
1109
|
-
return;
|
|
1110
|
-
const colStart = positions.colStart ? `${prefix}ax-col-start-${positions.colStart}` : '';
|
|
1111
|
-
const colEnd = positions.colEnd ? `${prefix}ax-col-end-${positions.colEnd}` : '';
|
|
1112
|
-
const colSpan = positions.colSpan ? `${prefix}ax-col-span-${positions.colSpan}` : '';
|
|
1113
|
-
const rowStart = positions.rowStart ? `${prefix}ax-row-start-${positions.rowStart}` : '';
|
|
1114
|
-
const rowEnd = positions.rowEnd ? `${prefix}ax-row-end-${positions.rowEnd}` : '';
|
|
1115
|
-
const rowSpan = positions.rowSpan ? `${prefix}ax-row-span-${positions.rowSpan}` : '';
|
|
1116
|
-
const order = positions.order ? `${prefix}ax-order-${positions.order}` : ''; // Handling order
|
|
1117
|
-
[colStart, colEnd, colSpan, rowStart, rowEnd, rowSpan, order].forEach(cls => {
|
|
1118
|
-
if (cls) {
|
|
1119
|
-
this.renderer.addClass(this.el.nativeElement, cls);
|
|
1120
|
-
}
|
|
1121
|
-
});
|
|
1119
|
+
async execute(name) {
|
|
1120
|
+
const definition = await this.getByName(name);
|
|
1121
|
+
if (definition) {
|
|
1122
|
+
return await definition.execute();
|
|
1123
|
+
}
|
|
1124
|
+
return undefined;
|
|
1122
1125
|
}
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
}
|
|
1129
|
-
});
|
|
1126
|
+
//#endregion
|
|
1127
|
+
//#region ---- Cache Management ----
|
|
1128
|
+
/** Clears the definitions by name cache. */
|
|
1129
|
+
clearDefinitionsCache() {
|
|
1130
|
+
this.definitionsByName.clear();
|
|
1130
1131
|
}
|
|
1131
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1132
|
-
static { this.ɵ
|
|
1132
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPGlobalVariableDefinitionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1133
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPGlobalVariableDefinitionService, providedIn: 'root' }); }
|
|
1133
1134
|
}
|
|
1134
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
1135
|
-
type:
|
|
1135
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPGlobalVariableDefinitionService, decorators: [{
|
|
1136
|
+
type: Injectable,
|
|
1136
1137
|
args: [{
|
|
1137
|
-
|
|
1138
|
-
standalone: true,
|
|
1138
|
+
providedIn: 'root',
|
|
1139
1139
|
}]
|
|
1140
|
-
}]
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1140
|
+
}] });
|
|
1141
|
+
|
|
1142
|
+
class AXPGlobalVariableEvaluatorScopeProvider {
|
|
1143
|
+
constructor() {
|
|
1144
|
+
this.globalVariableService = inject(AXPGlobalVariableDefinitionService);
|
|
1145
|
+
}
|
|
1146
|
+
async provide(context) {
|
|
1147
|
+
context.addScope('variables', {
|
|
1148
|
+
execute: async (name) => {
|
|
1149
|
+
return await this.globalVariableService.execute(name);
|
|
1150
|
+
}
|
|
1151
|
+
});
|
|
1152
|
+
}
|
|
1153
|
+
}
|
|
1144
1154
|
|
|
1145
1155
|
class AXPStickyDirective {
|
|
1146
1156
|
get isSticky() {
|
|
@@ -1162,9 +1172,7 @@ class AXPStickyDirective {
|
|
|
1162
1172
|
this._isSticky = false;
|
|
1163
1173
|
this.onParentScroll = () => {
|
|
1164
1174
|
this.zone.runOutsideAngular(() => {
|
|
1165
|
-
const scrollTop = this.parentElement === window
|
|
1166
|
-
? window.scrollY
|
|
1167
|
-
: this.parentElement.scrollTop;
|
|
1175
|
+
const scrollTop = this.parentElement === window ? window.scrollY : this.parentElement.scrollTop;
|
|
1168
1176
|
const shouldStick = scrollTop + this.stickyOffset >= this.topOffset;
|
|
1169
1177
|
if (shouldStick !== this.isSticky) {
|
|
1170
1178
|
this.zone.run(() => {
|
|
@@ -1194,12 +1202,9 @@ class AXPStickyDirective {
|
|
|
1194
1202
|
this.parentElement = this.stickyParent;
|
|
1195
1203
|
}
|
|
1196
1204
|
else {
|
|
1197
|
-
this.parentElement =
|
|
1198
|
-
document.querySelector(this.stickyParent) || window;
|
|
1205
|
+
this.parentElement = document.querySelector(this.stickyParent) || window;
|
|
1199
1206
|
}
|
|
1200
|
-
this.targetElement =
|
|
1201
|
-
document.querySelector(this.stickyTarget) ||
|
|
1202
|
-
this.element.nativeElement;
|
|
1207
|
+
this.targetElement = document.querySelector(this.stickyTarget) || this.element.nativeElement;
|
|
1203
1208
|
this.updateTopOffset();
|
|
1204
1209
|
this.parentElement.addEventListener('scroll', this.onParentScroll);
|
|
1205
1210
|
}
|
|
@@ -1227,10 +1232,10 @@ class AXPStickyDirective {
|
|
|
1227
1232
|
this.mutationObserver.disconnect();
|
|
1228
1233
|
}
|
|
1229
1234
|
}
|
|
1230
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1231
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.
|
|
1235
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPStickyDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1236
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: AXPStickyDirective, isStandalone: true, selector: "[axpSticky]", inputs: { stickyClass: ["axpSticky", "stickyClass"], stickyOffset: "stickyOffset", stickyParent: "stickyParent", stickyTarget: "stickyTarget" }, outputs: { isStickyChange: "isStickyChange" }, exportAs: ["axpSticky"], ngImport: i0 }); }
|
|
1232
1237
|
}
|
|
1233
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
1238
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPStickyDirective, decorators: [{
|
|
1234
1239
|
type: Directive,
|
|
1235
1240
|
args: [{
|
|
1236
1241
|
selector: '[axpSticky]',
|
|
@@ -1281,26 +1286,365 @@ class AXPLogoComponent {
|
|
|
1281
1286
|
this.source = this.platform.isDark() ? this.source.dark : this.source.light;
|
|
1282
1287
|
}
|
|
1283
1288
|
}
|
|
1284
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1285
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.
|
|
1289
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPLogoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1290
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: AXPLogoComponent, isStandalone: true, selector: "axp-logo", inputs: { source: "source" }, host: { classAttribute: "ax-flex ax-justify-center" }, usesOnChanges: true, ngImport: i0, template: "@switch (logoType) { @case ('url') {\n<ax-image [width]=\"source.width\" [height]=\"source.height\" [src]=\"source.url\"></ax-image>\n} @case ('component') {\n<ng-container *ngComponentOutlet=\"source.component\"></ng-container>\n} }\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2.AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXDecoratorModule }] }); }
|
|
1286
1291
|
}
|
|
1287
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
1292
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPLogoComponent, decorators: [{
|
|
1288
1293
|
type: Component,
|
|
1289
1294
|
args: [{ selector: 'axp-logo', imports: [CommonModule, AXImageModule, AXDecoratorModule], host: { class: 'ax-flex ax-justify-center' }, template: "@switch (logoType) { @case ('url') {\n<ax-image [width]=\"source.width\" [height]=\"source.height\" [src]=\"source.url\"></ax-image>\n} @case ('component') {\n<ng-container *ngComponentOutlet=\"source.component\"></ng-container>\n} }\n" }]
|
|
1290
1295
|
}], propDecorators: { source: [{
|
|
1291
1296
|
type: Input
|
|
1292
1297
|
}] } });
|
|
1293
1298
|
|
|
1299
|
+
//#region ---- Menu Context Builder ----
|
|
1300
|
+
/**
|
|
1301
|
+
* Creates a rich context for menu manipulation
|
|
1302
|
+
* Similar to entity modifier context pattern
|
|
1303
|
+
*/
|
|
1304
|
+
function createMenuContext(items) {
|
|
1305
|
+
const context = {
|
|
1306
|
+
get items() {
|
|
1307
|
+
return items;
|
|
1308
|
+
},
|
|
1309
|
+
find(nameOrPattern) {
|
|
1310
|
+
if (typeof nameOrPattern === 'string') {
|
|
1311
|
+
return context.findByName(nameOrPattern);
|
|
1312
|
+
}
|
|
1313
|
+
const found = context.findByPattern(nameOrPattern);
|
|
1314
|
+
return found.length > 0 ? found[0] : createEmptyFinder();
|
|
1315
|
+
},
|
|
1316
|
+
findByName(name) {
|
|
1317
|
+
return createMenuItemFinder(items, name);
|
|
1318
|
+
},
|
|
1319
|
+
findByPattern(pattern) {
|
|
1320
|
+
const regex = typeof pattern === 'string' ? wildcardToRegex(pattern) : pattern;
|
|
1321
|
+
const results = [];
|
|
1322
|
+
const searchRecursive = (itemList) => {
|
|
1323
|
+
for (const item of itemList) {
|
|
1324
|
+
if (item.name && regex.test(item.name)) {
|
|
1325
|
+
results.push(createMenuItemFinder(items, item.name));
|
|
1326
|
+
}
|
|
1327
|
+
if (item.children) {
|
|
1328
|
+
searchRecursive(item.children);
|
|
1329
|
+
}
|
|
1330
|
+
}
|
|
1331
|
+
};
|
|
1332
|
+
searchRecursive(items);
|
|
1333
|
+
return results;
|
|
1334
|
+
},
|
|
1335
|
+
add(...newItems) {
|
|
1336
|
+
items.push(...newItems);
|
|
1337
|
+
return context;
|
|
1338
|
+
},
|
|
1339
|
+
remove(predicate) {
|
|
1340
|
+
removeRecursive(items, predicate);
|
|
1341
|
+
return context;
|
|
1342
|
+
},
|
|
1343
|
+
sort() {
|
|
1344
|
+
sortItemsRecursively(items);
|
|
1345
|
+
return context;
|
|
1346
|
+
},
|
|
1347
|
+
toArray() {
|
|
1348
|
+
return items;
|
|
1349
|
+
},
|
|
1350
|
+
};
|
|
1351
|
+
return context;
|
|
1352
|
+
}
|
|
1353
|
+
//#endregion
|
|
1354
|
+
//#region ---- Menu Item Finder Implementation ----
|
|
1355
|
+
/**
|
|
1356
|
+
* Creates a finder for a specific menu item
|
|
1357
|
+
*/
|
|
1358
|
+
function createMenuItemFinder(rootItems, targetName) {
|
|
1359
|
+
const findItemWithParent = (items, name, parent = { items: rootItems }) => {
|
|
1360
|
+
for (const item of items) {
|
|
1361
|
+
if (item.name === name) {
|
|
1362
|
+
return { item, parent };
|
|
1363
|
+
}
|
|
1364
|
+
if (item.children) {
|
|
1365
|
+
const result = findItemWithParent(item.children, name, { items: item.children });
|
|
1366
|
+
if (result.item) {
|
|
1367
|
+
return result;
|
|
1368
|
+
}
|
|
1369
|
+
}
|
|
1370
|
+
}
|
|
1371
|
+
return { item: undefined, parent };
|
|
1372
|
+
};
|
|
1373
|
+
const finder = {
|
|
1374
|
+
get() {
|
|
1375
|
+
return findItemWithParent(rootItems, targetName).item;
|
|
1376
|
+
},
|
|
1377
|
+
exists() {
|
|
1378
|
+
return finder.get() !== undefined;
|
|
1379
|
+
},
|
|
1380
|
+
update(updater) {
|
|
1381
|
+
const { item } = findItemWithParent(rootItems, targetName);
|
|
1382
|
+
if (item) {
|
|
1383
|
+
const updates = typeof updater === 'function' ? updater(item) : updater;
|
|
1384
|
+
Object.assign(item, updates);
|
|
1385
|
+
}
|
|
1386
|
+
return finder;
|
|
1387
|
+
},
|
|
1388
|
+
remove() {
|
|
1389
|
+
const { item, parent } = findItemWithParent(rootItems, targetName);
|
|
1390
|
+
if (item) {
|
|
1391
|
+
const index = parent.items.indexOf(item);
|
|
1392
|
+
if (index !== -1) {
|
|
1393
|
+
parent.items.splice(index, 1);
|
|
1394
|
+
}
|
|
1395
|
+
}
|
|
1396
|
+
return finder;
|
|
1397
|
+
},
|
|
1398
|
+
hide() {
|
|
1399
|
+
// Hide by removing the item from menu
|
|
1400
|
+
return finder.remove();
|
|
1401
|
+
},
|
|
1402
|
+
show() {
|
|
1403
|
+
// Show is a no-op since items are visible by default
|
|
1404
|
+
// To truly implement show, we'd need to track removed items and re-add them
|
|
1405
|
+
console.warn('show() is not fully implemented - items are visible by default');
|
|
1406
|
+
return finder;
|
|
1407
|
+
},
|
|
1408
|
+
setPriority(priority) {
|
|
1409
|
+
return finder.update({ priority });
|
|
1410
|
+
},
|
|
1411
|
+
addChildren(...children) {
|
|
1412
|
+
const { item } = findItemWithParent(rootItems, targetName);
|
|
1413
|
+
if (item) {
|
|
1414
|
+
item.children = item.children || [];
|
|
1415
|
+
item.children.push(...children);
|
|
1416
|
+
}
|
|
1417
|
+
return finder;
|
|
1418
|
+
},
|
|
1419
|
+
removeChildren(predicate) {
|
|
1420
|
+
const { item } = findItemWithParent(rootItems, targetName);
|
|
1421
|
+
if (item && item.children) {
|
|
1422
|
+
item.children = item.children.filter((c) => !predicate(c));
|
|
1423
|
+
}
|
|
1424
|
+
return finder;
|
|
1425
|
+
},
|
|
1426
|
+
moveTo(parentName) {
|
|
1427
|
+
const { item, parent: oldParent } = findItemWithParent(rootItems, targetName);
|
|
1428
|
+
if (!item) {
|
|
1429
|
+
return finder;
|
|
1430
|
+
}
|
|
1431
|
+
// Remove from old parent
|
|
1432
|
+
const oldIndex = oldParent.items.indexOf(item);
|
|
1433
|
+
if (oldIndex !== -1) {
|
|
1434
|
+
oldParent.items.splice(oldIndex, 1);
|
|
1435
|
+
}
|
|
1436
|
+
// Add to new parent
|
|
1437
|
+
if (parentName === null) {
|
|
1438
|
+
// Move to root
|
|
1439
|
+
rootItems.push(item);
|
|
1440
|
+
}
|
|
1441
|
+
else {
|
|
1442
|
+
const { item: newParentItem } = findItemWithParent(rootItems, parentName);
|
|
1443
|
+
if (newParentItem) {
|
|
1444
|
+
newParentItem.children = newParentItem.children || [];
|
|
1445
|
+
newParentItem.children.push(item);
|
|
1446
|
+
}
|
|
1447
|
+
}
|
|
1448
|
+
return finder;
|
|
1449
|
+
},
|
|
1450
|
+
insertBefore(...items) {
|
|
1451
|
+
const { item, parent } = findItemWithParent(rootItems, targetName);
|
|
1452
|
+
if (item) {
|
|
1453
|
+
const index = parent.items.indexOf(item);
|
|
1454
|
+
if (index !== -1) {
|
|
1455
|
+
parent.items.splice(index, 0, ...items);
|
|
1456
|
+
}
|
|
1457
|
+
}
|
|
1458
|
+
return finder;
|
|
1459
|
+
},
|
|
1460
|
+
insertAfter(...items) {
|
|
1461
|
+
const { item, parent } = findItemWithParent(rootItems, targetName);
|
|
1462
|
+
if (item) {
|
|
1463
|
+
const index = parent.items.indexOf(item);
|
|
1464
|
+
if (index !== -1) {
|
|
1465
|
+
parent.items.splice(index + 1, 0, ...items);
|
|
1466
|
+
}
|
|
1467
|
+
}
|
|
1468
|
+
return finder;
|
|
1469
|
+
},
|
|
1470
|
+
};
|
|
1471
|
+
return finder;
|
|
1472
|
+
}
|
|
1473
|
+
/**
|
|
1474
|
+
* Creates an empty finder for items not found
|
|
1475
|
+
*/
|
|
1476
|
+
function createEmptyFinder() {
|
|
1477
|
+
return {
|
|
1478
|
+
get: () => undefined,
|
|
1479
|
+
exists: () => false,
|
|
1480
|
+
update: () => createEmptyFinder(),
|
|
1481
|
+
remove: () => createEmptyFinder(),
|
|
1482
|
+
hide: () => createEmptyFinder(),
|
|
1483
|
+
show: () => createEmptyFinder(),
|
|
1484
|
+
setPriority: () => createEmptyFinder(),
|
|
1485
|
+
addChildren: () => createEmptyFinder(),
|
|
1486
|
+
removeChildren: () => createEmptyFinder(),
|
|
1487
|
+
moveTo: () => createEmptyFinder(),
|
|
1488
|
+
insertBefore: () => createEmptyFinder(),
|
|
1489
|
+
insertAfter: () => createEmptyFinder(),
|
|
1490
|
+
};
|
|
1491
|
+
}
|
|
1492
|
+
//#endregion
|
|
1493
|
+
//#region ---- Helper Functions ----
|
|
1494
|
+
/**
|
|
1495
|
+
* Converts wildcard pattern to regex
|
|
1496
|
+
*/
|
|
1497
|
+
function wildcardToRegex(pattern) {
|
|
1498
|
+
const escaped = pattern.replace(/[.+?^${}()|\[\]\\]/g, '\\$&');
|
|
1499
|
+
const regexStr = `^${escaped.replace(/\*/g, '.*')}$`;
|
|
1500
|
+
return new RegExp(regexStr);
|
|
1501
|
+
}
|
|
1502
|
+
/**
|
|
1503
|
+
* Recursively removes items matching predicate
|
|
1504
|
+
*/
|
|
1505
|
+
function removeRecursive(items, predicate) {
|
|
1506
|
+
for (let i = items.length - 1; i >= 0; i--) {
|
|
1507
|
+
const item = items[i];
|
|
1508
|
+
if (predicate(item)) {
|
|
1509
|
+
items.splice(i, 1);
|
|
1510
|
+
}
|
|
1511
|
+
else if (item.children) {
|
|
1512
|
+
removeRecursive(item.children, predicate);
|
|
1513
|
+
}
|
|
1514
|
+
}
|
|
1515
|
+
}
|
|
1516
|
+
/**
|
|
1517
|
+
* Recursively sorts items by priority
|
|
1518
|
+
*/
|
|
1519
|
+
function sortItemsRecursively(items) {
|
|
1520
|
+
items.sort((a, b) => (a.priority ?? 0) - (b.priority ?? 0));
|
|
1521
|
+
items.forEach((item) => {
|
|
1522
|
+
if (item.children && item.children.length > 0) {
|
|
1523
|
+
sortItemsRecursively(item.children);
|
|
1524
|
+
}
|
|
1525
|
+
});
|
|
1526
|
+
}
|
|
1527
|
+
//#endregion
|
|
1528
|
+
|
|
1529
|
+
/**
|
|
1530
|
+
* Injection token for menu middlewares (multi-provider)
|
|
1531
|
+
*/
|
|
1532
|
+
const AXP_MENU_MIDDLEWARE = new InjectionToken('AXP_MENU_MIDDLEWARE');
|
|
1533
|
+
//#endregion
|
|
1534
|
+
|
|
1535
|
+
//#region ---- Menu Middleware Registry ----
|
|
1536
|
+
/**
|
|
1537
|
+
* Central service for managing menu middlewares with priority-based ordering
|
|
1538
|
+
* Similar to token registry pattern used in identifier-management
|
|
1539
|
+
*/
|
|
1540
|
+
class AXPMenuMiddlewareRegistry {
|
|
1541
|
+
constructor() {
|
|
1542
|
+
//#region ---- Fields ----
|
|
1543
|
+
/**
|
|
1544
|
+
* Manually registered middlewares
|
|
1545
|
+
*/
|
|
1546
|
+
this.manualMiddlewares = new Map();
|
|
1547
|
+
/**
|
|
1548
|
+
* Provider-based middlewares (multi-provider injection)
|
|
1549
|
+
*/
|
|
1550
|
+
this.providerMiddlewares = inject(AXP_MENU_MIDDLEWARE, { optional: true }) ?? [];
|
|
1551
|
+
}
|
|
1552
|
+
//#endregion
|
|
1553
|
+
//#region ---- Registration Methods ----
|
|
1554
|
+
/**
|
|
1555
|
+
* Manually register a middleware
|
|
1556
|
+
* @param middleware - The middleware to register
|
|
1557
|
+
*/
|
|
1558
|
+
register(middleware) {
|
|
1559
|
+
const name = middleware.name || `middleware_${Date.now()}_${Math.random()}`;
|
|
1560
|
+
const existing = this.manualMiddlewares.get(name);
|
|
1561
|
+
if (!existing || (middleware.priority ?? 0) > (existing.priority ?? 0)) {
|
|
1562
|
+
this.manualMiddlewares.set(name, middleware);
|
|
1563
|
+
}
|
|
1564
|
+
}
|
|
1565
|
+
/**
|
|
1566
|
+
* Unregister a middleware by name
|
|
1567
|
+
* @param name - The name of the middleware to remove
|
|
1568
|
+
*/
|
|
1569
|
+
unregister(name) {
|
|
1570
|
+
this.manualMiddlewares.delete(name);
|
|
1571
|
+
}
|
|
1572
|
+
/**
|
|
1573
|
+
* Get a specific middleware by name
|
|
1574
|
+
* @param name - The middleware name
|
|
1575
|
+
*/
|
|
1576
|
+
get(name) {
|
|
1577
|
+
// Provider-provided middlewares take precedence
|
|
1578
|
+
const fromProvider = this.providerMiddlewares
|
|
1579
|
+
.filter((m) => m.name === name)
|
|
1580
|
+
.sort((a, b) => (b.priority ?? 0) - (a.priority ?? 0))[0];
|
|
1581
|
+
if (fromProvider) {
|
|
1582
|
+
return fromProvider;
|
|
1583
|
+
}
|
|
1584
|
+
return this.manualMiddlewares.get(name);
|
|
1585
|
+
}
|
|
1586
|
+
/**
|
|
1587
|
+
* Get all middlewares sorted by priority (highest first)
|
|
1588
|
+
* Combines provider-based and manually registered middlewares
|
|
1589
|
+
*/
|
|
1590
|
+
list() {
|
|
1591
|
+
const map = new Map();
|
|
1592
|
+
// Helper to add middleware, respecting priority
|
|
1593
|
+
const addMiddleware = (m) => {
|
|
1594
|
+
const name = m.name || `anonymous_${Date.now()}`;
|
|
1595
|
+
const existing = map.get(name);
|
|
1596
|
+
if (!existing || (m.priority ?? 0) > (existing.priority ?? 0)) {
|
|
1597
|
+
map.set(name, m);
|
|
1598
|
+
}
|
|
1599
|
+
};
|
|
1600
|
+
// Add provider middlewares first (higher precedence)
|
|
1601
|
+
this.providerMiddlewares.forEach(addMiddleware);
|
|
1602
|
+
// Add manual middlewares
|
|
1603
|
+
Array.from(this.manualMiddlewares.values()).forEach(addMiddleware);
|
|
1604
|
+
// Return sorted by priority (highest first)
|
|
1605
|
+
return Array.from(map.values()).sort((a, b) => (b.priority ?? 0) - (a.priority ?? 0));
|
|
1606
|
+
}
|
|
1607
|
+
/**
|
|
1608
|
+
* Check if a middleware exists
|
|
1609
|
+
* @param name - The middleware name
|
|
1610
|
+
*/
|
|
1611
|
+
exists(name) {
|
|
1612
|
+
return this.get(name) !== undefined;
|
|
1613
|
+
}
|
|
1614
|
+
/**
|
|
1615
|
+
* Clear all manually registered middlewares
|
|
1616
|
+
* Provider-based middlewares are not affected
|
|
1617
|
+
*/
|
|
1618
|
+
clear() {
|
|
1619
|
+
this.manualMiddlewares.clear();
|
|
1620
|
+
}
|
|
1621
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPMenuMiddlewareRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1622
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPMenuMiddlewareRegistry, providedIn: 'root' }); }
|
|
1623
|
+
}
|
|
1624
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPMenuMiddlewareRegistry, decorators: [{
|
|
1625
|
+
type: Injectable,
|
|
1626
|
+
args: [{ providedIn: 'root' }]
|
|
1627
|
+
}] });
|
|
1628
|
+
|
|
1294
1629
|
const AXP_MENU_PROVIDER = new InjectionToken('AXP_MENU_PROVIDER');
|
|
1295
1630
|
class AXPMenuProviderService {
|
|
1296
1631
|
constructor() {
|
|
1632
|
+
//#region ---- Dependencies ----
|
|
1297
1633
|
this.providers = inject(AXP_MENU_PROVIDER, { optional: true });
|
|
1634
|
+
this.middlewareRegistry = inject(AXPMenuMiddlewareRegistry);
|
|
1635
|
+
//#endregion
|
|
1636
|
+
//#region ---- State ----
|
|
1298
1637
|
this.cache = null;
|
|
1299
1638
|
this.pendingInserts = [];
|
|
1300
1639
|
this.pendingRemovals = [];
|
|
1301
1640
|
this.pendingUpdates = [];
|
|
1302
1641
|
this.pendingAdditions = [];
|
|
1303
1642
|
}
|
|
1643
|
+
//#endregion
|
|
1644
|
+
//#region ---- Public API ----
|
|
1645
|
+
/**
|
|
1646
|
+
* Get menu items with middlewares applied (for end-user display)
|
|
1647
|
+
*/
|
|
1304
1648
|
async items() {
|
|
1305
1649
|
// Return cached items if available
|
|
1306
1650
|
if (this.cache) {
|
|
@@ -1317,12 +1661,65 @@ class AXPMenuProviderService {
|
|
|
1317
1661
|
this.applyPendingOperations(items);
|
|
1318
1662
|
// Sort items by priority
|
|
1319
1663
|
items.sort((a, b) => (a.priority ?? 0) - (b.priority ?? 0));
|
|
1664
|
+
// Apply middlewares using registry (sorted by priority)
|
|
1665
|
+
await this.applyMiddlewares(items);
|
|
1320
1666
|
// ADD level property to items
|
|
1321
1667
|
setMenuItemMeta(items);
|
|
1322
1668
|
// Cache the computed items
|
|
1323
1669
|
this.cache = items;
|
|
1324
1670
|
return items;
|
|
1325
1671
|
}
|
|
1672
|
+
/**
|
|
1673
|
+
* Get raw menu items WITHOUT middleware applied (for management/editing)
|
|
1674
|
+
* Used by menu management pages to show original items before customization
|
|
1675
|
+
*/
|
|
1676
|
+
async rawItems() {
|
|
1677
|
+
const items = [];
|
|
1678
|
+
const context = this.createMenuProviderContext(items);
|
|
1679
|
+
if (Array.isArray(this.providers)) {
|
|
1680
|
+
for (const provider of this.providers) {
|
|
1681
|
+
await provider.provide(context);
|
|
1682
|
+
}
|
|
1683
|
+
}
|
|
1684
|
+
// Apply pending operations
|
|
1685
|
+
this.applyPendingOperations(items);
|
|
1686
|
+
// Sort items by priority
|
|
1687
|
+
items.sort((a, b) => (a.priority ?? 0) - (b.priority ?? 0));
|
|
1688
|
+
// ADD level property to items (but NO middleware)
|
|
1689
|
+
setMenuItemMeta(items);
|
|
1690
|
+
return items;
|
|
1691
|
+
}
|
|
1692
|
+
/**
|
|
1693
|
+
* Clear the cache to force reload of menu items
|
|
1694
|
+
*/
|
|
1695
|
+
clearCache() {
|
|
1696
|
+
this.cache = null;
|
|
1697
|
+
this.pendingInserts = [];
|
|
1698
|
+
this.pendingRemovals = [];
|
|
1699
|
+
this.pendingUpdates = [];
|
|
1700
|
+
this.pendingAdditions = [];
|
|
1701
|
+
}
|
|
1702
|
+
//#endregion
|
|
1703
|
+
//#region ---- Private Methods ----
|
|
1704
|
+
/**
|
|
1705
|
+
* Apply middlewares in priority order using the enhanced context API
|
|
1706
|
+
*/
|
|
1707
|
+
async applyMiddlewares(items) {
|
|
1708
|
+
const middlewares = this.middlewareRegistry.list();
|
|
1709
|
+
for (const middleware of middlewares) {
|
|
1710
|
+
try {
|
|
1711
|
+
const context = createMenuContext(items);
|
|
1712
|
+
await middleware.process(context);
|
|
1713
|
+
// The context mutates the items array, so no need to reassign
|
|
1714
|
+
}
|
|
1715
|
+
catch (error) {
|
|
1716
|
+
console.error(`Error in menu middleware ${middleware.name || 'anonymous'}:`, error);
|
|
1717
|
+
}
|
|
1718
|
+
}
|
|
1719
|
+
}
|
|
1720
|
+
/**
|
|
1721
|
+
* Create provider context for menu providers
|
|
1722
|
+
*/
|
|
1326
1723
|
createMenuProviderContext(items) {
|
|
1327
1724
|
return {
|
|
1328
1725
|
addItems: (newItems) => {
|
|
@@ -1419,18 +1816,10 @@ class AXPMenuProviderService {
|
|
|
1419
1816
|
}
|
|
1420
1817
|
return { foundItem: null, parentItems: items };
|
|
1421
1818
|
}
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
this.cache = null;
|
|
1425
|
-
this.pendingInserts = [];
|
|
1426
|
-
this.pendingRemovals = [];
|
|
1427
|
-
this.pendingUpdates = [];
|
|
1428
|
-
this.pendingAdditions = [];
|
|
1429
|
-
}
|
|
1430
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPMenuProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1431
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPMenuProviderService, providedIn: 'root' }); }
|
|
1819
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPMenuProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1820
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPMenuProviderService, providedIn: 'root' }); }
|
|
1432
1821
|
}
|
|
1433
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
1822
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPMenuProviderService, decorators: [{
|
|
1434
1823
|
type: Injectable,
|
|
1435
1824
|
args: [{ providedIn: 'root' }]
|
|
1436
1825
|
}] });
|
|
@@ -1450,6 +1839,57 @@ function setMenuItemMeta(items, parentIndex = '', depth = 0) {
|
|
|
1450
1839
|
});
|
|
1451
1840
|
}
|
|
1452
1841
|
|
|
1842
|
+
//#region ---- Menu Middleware Provider Helper ----
|
|
1843
|
+
/**
|
|
1844
|
+
* Helper function to provide menu middlewares with proper DI setup
|
|
1845
|
+
* Similar to provideCommandMiddleware pattern
|
|
1846
|
+
*
|
|
1847
|
+
* @example
|
|
1848
|
+
* ```typescript
|
|
1849
|
+
* // In app.config.ts or module providers
|
|
1850
|
+
* export const appConfig: ApplicationConfig = {
|
|
1851
|
+
* providers: [
|
|
1852
|
+
* provideMenuMiddleware([
|
|
1853
|
+
* customizationMiddleware,
|
|
1854
|
+
* securityMiddleware,
|
|
1855
|
+
* loggingMiddleware
|
|
1856
|
+
* ])
|
|
1857
|
+
* ]
|
|
1858
|
+
* };
|
|
1859
|
+
* ```
|
|
1860
|
+
*/
|
|
1861
|
+
function provideMenuMiddleware(middlewares) {
|
|
1862
|
+
return makeEnvironmentProviders([
|
|
1863
|
+
...middlewares.map((middleware) => ({
|
|
1864
|
+
provide: AXP_MENU_MIDDLEWARE,
|
|
1865
|
+
useValue: middleware,
|
|
1866
|
+
multi: true,
|
|
1867
|
+
})),
|
|
1868
|
+
]);
|
|
1869
|
+
}
|
|
1870
|
+
/**
|
|
1871
|
+
* Helper to create a class-based middleware with priority
|
|
1872
|
+
*
|
|
1873
|
+
* @example
|
|
1874
|
+
* ```typescript
|
|
1875
|
+
* const myMiddleware = createMenuMiddleware({
|
|
1876
|
+
* name: 'my-middleware',
|
|
1877
|
+
* priority: 100,
|
|
1878
|
+
* process: async (context) => {
|
|
1879
|
+
* context.find('dashboard').setPriority(1);
|
|
1880
|
+
* }
|
|
1881
|
+
* });
|
|
1882
|
+
* ```
|
|
1883
|
+
*/
|
|
1884
|
+
function createMenuMiddleware(config) {
|
|
1885
|
+
return {
|
|
1886
|
+
name: config.name,
|
|
1887
|
+
priority: config.priority ?? 0,
|
|
1888
|
+
process: config.process,
|
|
1889
|
+
};
|
|
1890
|
+
}
|
|
1891
|
+
//#endregion
|
|
1892
|
+
|
|
1453
1893
|
const AXPMenuService = signalStore({ providedIn: 'root' },
|
|
1454
1894
|
// Initial State
|
|
1455
1895
|
withState((router = inject(Router)) => {
|
|
@@ -1468,7 +1908,7 @@ withMethods((store, router = inject(Router), workflow = inject(AXPWorkflowServic
|
|
|
1468
1908
|
patchState(store, { items: items });
|
|
1469
1909
|
},
|
|
1470
1910
|
selectMenuItemByRoute(path) {
|
|
1471
|
-
const
|
|
1911
|
+
const currentRawPath = path;
|
|
1472
1912
|
const findItem = (items) => {
|
|
1473
1913
|
for (const item of items) {
|
|
1474
1914
|
// Recursively search children first
|
|
@@ -1479,8 +1919,8 @@ withMethods((store, router = inject(Router), workflow = inject(AXPWorkflowServic
|
|
|
1479
1919
|
}
|
|
1480
1920
|
}
|
|
1481
1921
|
if (item.path) {
|
|
1482
|
-
// Check if the item path matches the current path
|
|
1483
|
-
const matchResult = pathsMatch(item.path,
|
|
1922
|
+
// Check if the item path matches the current path (including query param subset if provided on item)
|
|
1923
|
+
const matchResult = pathsMatch(item.path, currentRawPath, ['list', 'view', 'edit', 'create']);
|
|
1484
1924
|
if (matchResult.isMatch) {
|
|
1485
1925
|
return { item, isPartialMatch: matchResult.isPartial };
|
|
1486
1926
|
}
|
|
@@ -1489,8 +1929,13 @@ withMethods((store, router = inject(Router), workflow = inject(AXPWorkflowServic
|
|
|
1489
1929
|
return { item: null, isPartialMatch: false };
|
|
1490
1930
|
};
|
|
1491
1931
|
const pathsMatch = (itemPath, currentPath, trailingSegmentsToIgnore = []) => {
|
|
1492
|
-
|
|
1493
|
-
const
|
|
1932
|
+
// Split base and query/hash
|
|
1933
|
+
const itemNoHash = itemPath.split('#')[0];
|
|
1934
|
+
const currentNoHash = currentPath.split('#')[0];
|
|
1935
|
+
const [itemBase, itemQueryString = ''] = itemNoHash.split('?');
|
|
1936
|
+
const [currentBase, currentQueryString = ''] = currentNoHash.split('?');
|
|
1937
|
+
const itemSegments = itemBase.split('/').filter((segment) => segment.length > 0);
|
|
1938
|
+
const pathSegments = currentBase.split('/').filter((segment) => segment.length > 0);
|
|
1494
1939
|
const menuLength = itemSegments.length;
|
|
1495
1940
|
const pathLength = pathSegments.length;
|
|
1496
1941
|
// Identify the effective base length for the menuPath
|
|
@@ -1516,8 +1961,24 @@ withMethods((store, router = inject(Router), workflow = inject(AXPWorkflowServic
|
|
|
1516
1961
|
const isPartialMatch = effectiveMenuLength < pathLength;
|
|
1517
1962
|
// Exact match: all segments match completely
|
|
1518
1963
|
const isExactMatch = effectiveMenuLength === pathLength;
|
|
1964
|
+
// Query params subset match: if item defines any query params, require them to match
|
|
1965
|
+
const itemParams = new URLSearchParams(itemQueryString);
|
|
1966
|
+
const currentParams = new URLSearchParams(currentQueryString);
|
|
1967
|
+
let queryMatches = true;
|
|
1968
|
+
const itemParamPairs = [];
|
|
1969
|
+
itemParams.forEach((value, key) => {
|
|
1970
|
+
itemParamPairs.push([key, value]);
|
|
1971
|
+
});
|
|
1972
|
+
if (itemParamPairs.length > 0) {
|
|
1973
|
+
for (const [k, v] of itemParamPairs) {
|
|
1974
|
+
if (currentParams.get(k) !== v) {
|
|
1975
|
+
queryMatches = false;
|
|
1976
|
+
break;
|
|
1977
|
+
}
|
|
1978
|
+
}
|
|
1979
|
+
}
|
|
1519
1980
|
return {
|
|
1520
|
-
isMatch: isExactMatch || isPartialMatch,
|
|
1981
|
+
isMatch: (isExactMatch || isPartialMatch) && queryMatches,
|
|
1521
1982
|
isPartial: isPartialMatch && !isExactMatch,
|
|
1522
1983
|
};
|
|
1523
1984
|
};
|
|
@@ -1639,12 +2100,12 @@ class AXPMenuSearchProvider {
|
|
|
1639
2100
|
}
|
|
1640
2101
|
|
|
1641
2102
|
class AXPFooterTextSlotComponent {
|
|
1642
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1643
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.
|
|
2103
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFooterTextSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2104
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: AXPFooterTextSlotComponent, isStandalone: true, selector: "ng-component", inputs: { text: "text" }, ngImport: i0, template: `
|
|
1644
2105
|
<small class="ax-text-sm" [innerHTML]="text"></small>
|
|
1645
2106
|
`, isInline: true }); }
|
|
1646
2107
|
}
|
|
1647
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2108
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFooterTextSlotComponent, decorators: [{
|
|
1648
2109
|
type: Component,
|
|
1649
2110
|
args: [{
|
|
1650
2111
|
template: `
|
|
@@ -1661,8 +2122,8 @@ class AXPNavBarSlotComponent {
|
|
|
1661
2122
|
// if (action)
|
|
1662
2123
|
// this.store.dispatch(action)
|
|
1663
2124
|
}
|
|
1664
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1665
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.
|
|
2125
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPNavBarSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2126
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: AXPNavBarSlotComponent, isStandalone: true, selector: "ng-component", inputs: { items: "items" }, ngImport: i0, template: `
|
|
1666
2127
|
<div class="ax-flex ax-items-center ax-justify-between ax-gap-5">
|
|
1667
2128
|
@for (link of items; track link) {
|
|
1668
2129
|
<a (click)="handleCommand(link.command)" >{{ link.text }}</a>
|
|
@@ -1670,7 +2131,7 @@ class AXPNavBarSlotComponent {
|
|
|
1670
2131
|
</div>
|
|
1671
2132
|
`, isInline: true, encapsulation: i0.ViewEncapsulation.None }); }
|
|
1672
2133
|
}
|
|
1673
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2134
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPNavBarSlotComponent, decorators: [{
|
|
1674
2135
|
type: Component,
|
|
1675
2136
|
args: [{
|
|
1676
2137
|
template: `
|
|
@@ -1801,10 +2262,10 @@ class AXPSearchDefinitionProviderService {
|
|
|
1801
2262
|
}
|
|
1802
2263
|
return definition;
|
|
1803
2264
|
}
|
|
1804
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1805
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2265
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSearchDefinitionProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2266
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSearchDefinitionProviderService, providedIn: 'root' }); }
|
|
1806
2267
|
}
|
|
1807
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2268
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSearchDefinitionProviderService, decorators: [{
|
|
1808
2269
|
type: Injectable,
|
|
1809
2270
|
args: [{ providedIn: 'root' }]
|
|
1810
2271
|
}] });
|
|
@@ -1888,14 +2349,19 @@ class AXPSearchService {
|
|
|
1888
2349
|
groupedData.sort((a, b) => a.order - b.order);
|
|
1889
2350
|
return groupedData;
|
|
1890
2351
|
}
|
|
1891
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1892
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2352
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSearchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2353
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSearchService, providedIn: 'root' }); }
|
|
1893
2354
|
}
|
|
1894
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2355
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPSearchService, decorators: [{
|
|
1895
2356
|
type: Injectable,
|
|
1896
2357
|
args: [{ providedIn: 'root' }]
|
|
1897
2358
|
}] });
|
|
1898
2359
|
|
|
2360
|
+
var AXPCommonSettings;
|
|
2361
|
+
(function (AXPCommonSettings) {
|
|
2362
|
+
AXPCommonSettings["EnableOperationToasts"] = "general:notifications:enable-operation-toasts";
|
|
2363
|
+
})(AXPCommonSettings || (AXPCommonSettings = {}));
|
|
2364
|
+
|
|
1899
2365
|
//TODO Loading, Redirect, Drawer, Show toast
|
|
1900
2366
|
const AXPRedirectEvent = createWorkFlowEvent('Redirect Event Fired');
|
|
1901
2367
|
const AXPRefreshEvent = createWorkFlowEvent('Refresh Event Fired');
|
|
@@ -1918,10 +2384,10 @@ class AXPWorkflowNavigateAction extends AXPWorkflowAction {
|
|
|
1918
2384
|
this.router.navigate([payload.commands], payload.extras);
|
|
1919
2385
|
}
|
|
1920
2386
|
}
|
|
1921
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1922
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2387
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPWorkflowNavigateAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2388
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPWorkflowNavigateAction }); }
|
|
1923
2389
|
}
|
|
1924
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2390
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPWorkflowNavigateAction, decorators: [{
|
|
1925
2391
|
type: Injectable
|
|
1926
2392
|
}] });
|
|
1927
2393
|
class AXPDialogConfirmAction extends AXPWorkflowAction {
|
|
@@ -1932,14 +2398,15 @@ class AXPDialogConfirmAction extends AXPWorkflowAction {
|
|
|
1932
2398
|
this.defaultAction = 'cancel';
|
|
1933
2399
|
}
|
|
1934
2400
|
async execute(context) {
|
|
2401
|
+
console.log('AXPDialogConfirmAction', this.title, this.message, this.type);
|
|
1935
2402
|
context.setOutput('result', false);
|
|
1936
2403
|
const dialogResult = await this.dialogService.confirm(await this.translationService.translateAsync(this.title), await this.translationService.translateAsync(this.message), (await this.translationService.translateAsync(this.type)), 'horizontal', false, 'cancel');
|
|
1937
2404
|
context.setOutput('result', dialogResult.result);
|
|
1938
2405
|
}
|
|
1939
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1940
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2406
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPDialogConfirmAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2407
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPDialogConfirmAction }); }
|
|
1941
2408
|
}
|
|
1942
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2409
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPDialogConfirmAction, decorators: [{
|
|
1943
2410
|
type: Injectable
|
|
1944
2411
|
}] });
|
|
1945
2412
|
class AXPToastAction extends AXPWorkflowAction {
|
|
@@ -1947,11 +2414,10 @@ class AXPToastAction extends AXPWorkflowAction {
|
|
|
1947
2414
|
super(...arguments);
|
|
1948
2415
|
this.toastService = inject(AXToastService);
|
|
1949
2416
|
this.translationService = inject(AXTranslationService);
|
|
2417
|
+
this.settingService = inject(AXPSettingService);
|
|
1950
2418
|
}
|
|
1951
2419
|
async execute(context) {
|
|
1952
|
-
const
|
|
1953
|
-
const process = options?.['process'];
|
|
1954
|
-
const showResult = process?.showResult ?? true;
|
|
2420
|
+
const showResult = await this.settingService.get(AXPCommonSettings.EnableOperationToasts);
|
|
1955
2421
|
if (showResult) {
|
|
1956
2422
|
this.toastService.show({
|
|
1957
2423
|
color: this.color,
|
|
@@ -1963,20 +2429,20 @@ class AXPToastAction extends AXPWorkflowAction {
|
|
|
1963
2429
|
});
|
|
1964
2430
|
}
|
|
1965
2431
|
}
|
|
1966
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1967
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2432
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPToastAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2433
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPToastAction }); }
|
|
1968
2434
|
}
|
|
1969
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2435
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPToastAction, decorators: [{
|
|
1970
2436
|
type: Injectable
|
|
1971
2437
|
}] });
|
|
1972
2438
|
class AXPReloadAction extends AXPWorkflowAction {
|
|
1973
2439
|
async execute(context) {
|
|
1974
2440
|
this.dispatch(AXPReloadEvent({ entity: context.getVariable('entity'), meta: context.getVariable('meta') }));
|
|
1975
2441
|
}
|
|
1976
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
1977
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2442
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPReloadAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2443
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPReloadAction }); }
|
|
1978
2444
|
}
|
|
1979
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2445
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPReloadAction, decorators: [{
|
|
1980
2446
|
type: Injectable
|
|
1981
2447
|
}] });
|
|
1982
2448
|
|
|
@@ -2016,10 +2482,10 @@ class AXPWorkflowRouterNavigateAction extends AXPWorkflowAction {
|
|
|
2016
2482
|
return params;
|
|
2017
2483
|
}, {});
|
|
2018
2484
|
}
|
|
2019
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
2020
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2485
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPWorkflowRouterNavigateAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2486
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPWorkflowRouterNavigateAction }); }
|
|
2021
2487
|
}
|
|
2022
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2488
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPWorkflowRouterNavigateAction, decorators: [{
|
|
2023
2489
|
type: Injectable
|
|
2024
2490
|
}] });
|
|
2025
2491
|
const AXPNavigateWorkflow = {
|
|
@@ -2044,84 +2510,13 @@ class AXMWorkflowErrorHandler {
|
|
|
2044
2510
|
next(error);
|
|
2045
2511
|
}
|
|
2046
2512
|
}
|
|
2047
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
2048
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2513
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMWorkflowErrorHandler, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2514
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMWorkflowErrorHandler }); }
|
|
2049
2515
|
}
|
|
2050
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2516
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMWorkflowErrorHandler, decorators: [{
|
|
2051
2517
|
type: Injectable
|
|
2052
2518
|
}] });
|
|
2053
2519
|
|
|
2054
|
-
const AXP_GLOBAL_VARIABLE_DEFINITION_PROVIDER = new InjectionToken('AXP_GLOBAL_VARIABLE_DEFINITION_PROVIDER', {
|
|
2055
|
-
factory: () => [],
|
|
2056
|
-
});
|
|
2057
|
-
|
|
2058
|
-
//#region ---- Imports ----
|
|
2059
|
-
//#endregion
|
|
2060
|
-
class AXPGlobalVariableDefinitionService {
|
|
2061
|
-
constructor() {
|
|
2062
|
-
//#region ---- Providers & Caches ----
|
|
2063
|
-
this.definitionProviders = inject(AXP_GLOBAL_VARIABLE_DEFINITION_PROVIDER, { optional: true }) || [];
|
|
2064
|
-
/** Cache for definitions by name. */
|
|
2065
|
-
this.definitionsByName = new Map();
|
|
2066
|
-
}
|
|
2067
|
-
//#endregion
|
|
2068
|
-
//#region ---- Public API ----
|
|
2069
|
-
/**
|
|
2070
|
-
* Returns a report definition by its id.
|
|
2071
|
-
* First checks the cache, then queries all providers if not found.
|
|
2072
|
-
* @param name The global variable name.
|
|
2073
|
-
* @returns The global variable definition if found, undefined otherwise.
|
|
2074
|
-
*/
|
|
2075
|
-
async getByName(name) {
|
|
2076
|
-
// Check cache first
|
|
2077
|
-
if (this.definitionsByName.has(name)) {
|
|
2078
|
-
return this.definitionsByName.get(name);
|
|
2079
|
-
}
|
|
2080
|
-
// Not in cache, query providers (each provider is itself a global variable definition)
|
|
2081
|
-
const resolvedProviders = await Promise.all(this.definitionProviders);
|
|
2082
|
-
const match = resolvedProviders.find(def => def?.name === name);
|
|
2083
|
-
if (match) {
|
|
2084
|
-
this.definitionsByName.set(name, match);
|
|
2085
|
-
return match;
|
|
2086
|
-
}
|
|
2087
|
-
return undefined;
|
|
2088
|
-
}
|
|
2089
|
-
async execute(name) {
|
|
2090
|
-
const definition = await this.getByName(name);
|
|
2091
|
-
if (definition) {
|
|
2092
|
-
return await definition.execute();
|
|
2093
|
-
}
|
|
2094
|
-
return undefined;
|
|
2095
|
-
}
|
|
2096
|
-
//#endregion
|
|
2097
|
-
//#region ---- Cache Management ----
|
|
2098
|
-
/** Clears the definitions by name cache. */
|
|
2099
|
-
clearDefinitionsCache() {
|
|
2100
|
-
this.definitionsByName.clear();
|
|
2101
|
-
}
|
|
2102
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPGlobalVariableDefinitionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2103
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPGlobalVariableDefinitionService, providedIn: 'root' }); }
|
|
2104
|
-
}
|
|
2105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPGlobalVariableDefinitionService, decorators: [{
|
|
2106
|
-
type: Injectable,
|
|
2107
|
-
args: [{
|
|
2108
|
-
providedIn: 'root',
|
|
2109
|
-
}]
|
|
2110
|
-
}] });
|
|
2111
|
-
|
|
2112
|
-
class AXPGlobalVariableEvaluatorScopeProvider {
|
|
2113
|
-
constructor() {
|
|
2114
|
-
this.globalVariableService = inject(AXPGlobalVariableDefinitionService);
|
|
2115
|
-
}
|
|
2116
|
-
async provide(context) {
|
|
2117
|
-
context.addScope('variables', {
|
|
2118
|
-
execute: async (name) => {
|
|
2119
|
-
return await this.globalVariableService.execute(name);
|
|
2120
|
-
}
|
|
2121
|
-
});
|
|
2122
|
-
}
|
|
2123
|
-
}
|
|
2124
|
-
|
|
2125
2520
|
class AXPCommonModule {
|
|
2126
2521
|
static forRoot(configs) {
|
|
2127
2522
|
return {
|
|
@@ -2171,11 +2566,11 @@ class AXPCommonModule {
|
|
|
2171
2566
|
},
|
|
2172
2567
|
});
|
|
2173
2568
|
}
|
|
2174
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
2175
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.
|
|
2569
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPCommonModule, deps: [{ token: 'AXPCommonModuleFactory' }, { token: i1$1.AXPAppStartUpService }, { token: AXPSettingService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
2570
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: AXPCommonModule, imports: [i3.AXPWorkflowModule, AXPopupModule,
|
|
2176
2571
|
AXDateTimeModule,
|
|
2177
2572
|
AXToastModule], exports: [RouterModule] }); }
|
|
2178
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.
|
|
2573
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPCommonModule, providers: [
|
|
2179
2574
|
AXPAppStartUpProvider,
|
|
2180
2575
|
{
|
|
2181
2576
|
provide: ErrorHandler,
|
|
@@ -2204,12 +2599,21 @@ class AXPCommonModule {
|
|
|
2204
2599
|
useClass: AXPGlobalVariableEvaluatorScopeProvider,
|
|
2205
2600
|
multi: true,
|
|
2206
2601
|
},
|
|
2602
|
+
{
|
|
2603
|
+
provide: AXP_SETTING_DEFINITION_PROVIDER,
|
|
2604
|
+
useFactory: async () => {
|
|
2605
|
+
const injector = inject(Injector);
|
|
2606
|
+
const provider = (await import('./acorex-platform-common-common-settings.provider-9OHien_H.mjs')).AXPCommonSettingProvider;
|
|
2607
|
+
return new provider(injector);
|
|
2608
|
+
},
|
|
2609
|
+
multi: true,
|
|
2610
|
+
},
|
|
2207
2611
|
], imports: [AXPWorkflowModule.forChild({
|
|
2208
2612
|
actions: {
|
|
2209
2613
|
'navigate-router': AXPWorkflowRouterNavigateAction,
|
|
2210
2614
|
'show-prompt-dialog': AXPDialogConfirmAction,
|
|
2211
2615
|
'show-toast': AXPToastAction,
|
|
2212
|
-
|
|
2616
|
+
reload: AXPReloadAction,
|
|
2213
2617
|
},
|
|
2214
2618
|
workflows: {
|
|
2215
2619
|
navigate: AXPNavigateWorkflow,
|
|
@@ -2219,7 +2623,7 @@ class AXPCommonModule {
|
|
|
2219
2623
|
AXDateTimeModule,
|
|
2220
2624
|
AXToastModule, RouterModule] }); }
|
|
2221
2625
|
}
|
|
2222
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2626
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPCommonModule, decorators: [{
|
|
2223
2627
|
type: NgModule,
|
|
2224
2628
|
args: [{
|
|
2225
2629
|
imports: [
|
|
@@ -2228,7 +2632,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImpor
|
|
|
2228
2632
|
'navigate-router': AXPWorkflowRouterNavigateAction,
|
|
2229
2633
|
'show-prompt-dialog': AXPDialogConfirmAction,
|
|
2230
2634
|
'show-toast': AXPToastAction,
|
|
2231
|
-
|
|
2635
|
+
reload: AXPReloadAction,
|
|
2232
2636
|
},
|
|
2233
2637
|
workflows: {
|
|
2234
2638
|
navigate: AXPNavigateWorkflow,
|
|
@@ -2268,6 +2672,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImpor
|
|
|
2268
2672
|
useClass: AXPGlobalVariableEvaluatorScopeProvider,
|
|
2269
2673
|
multi: true,
|
|
2270
2674
|
},
|
|
2675
|
+
{
|
|
2676
|
+
provide: AXP_SETTING_DEFINITION_PROVIDER,
|
|
2677
|
+
useFactory: async () => {
|
|
2678
|
+
const injector = inject(Injector);
|
|
2679
|
+
const provider = (await import('./acorex-platform-common-common-settings.provider-9OHien_H.mjs')).AXPCommonSettingProvider;
|
|
2680
|
+
return new provider(injector);
|
|
2681
|
+
},
|
|
2682
|
+
multi: true,
|
|
2683
|
+
},
|
|
2271
2684
|
],
|
|
2272
2685
|
}]
|
|
2273
2686
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
@@ -2296,10 +2709,10 @@ function configPlatform(config = AXPPlatformDefaultConfigs) {
|
|
|
2296
2709
|
const AXP_ROOT_CONFIG_TOKEN = new InjectionToken('AXP_ROOT_CONFIG_TOKEN');
|
|
2297
2710
|
|
|
2298
2711
|
class AXPFileStorageService {
|
|
2299
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
2300
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2712
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFileStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2713
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFileStorageService }); }
|
|
2301
2714
|
}
|
|
2302
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2715
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFileStorageService, decorators: [{
|
|
2303
2716
|
type: Injectable
|
|
2304
2717
|
}] });
|
|
2305
2718
|
|
|
@@ -2329,19 +2742,19 @@ class AXPFileTypeProviderService {
|
|
|
2329
2742
|
async get(name) {
|
|
2330
2743
|
return (await this.items()).find((c) => c.name == name);
|
|
2331
2744
|
}
|
|
2332
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
2333
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2745
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFileTypeProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2746
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFileTypeProviderService, providedIn: 'root' }); }
|
|
2334
2747
|
}
|
|
2335
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2748
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPFileTypeProviderService, decorators: [{
|
|
2336
2749
|
type: Injectable,
|
|
2337
2750
|
args: [{ providedIn: 'root' }]
|
|
2338
2751
|
}] });
|
|
2339
2752
|
|
|
2340
2753
|
class AXPLockService {
|
|
2341
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
2342
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2754
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPLockService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2755
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPLockService }); }
|
|
2343
2756
|
}
|
|
2344
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2757
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPLockService, decorators: [{
|
|
2345
2758
|
type: Injectable
|
|
2346
2759
|
}] });
|
|
2347
2760
|
|
|
@@ -2358,10 +2771,10 @@ class AXPClipBoardService {
|
|
|
2358
2771
|
navigator.clipboard.writeText(value);
|
|
2359
2772
|
this.toast.success(`${title} copied!`);
|
|
2360
2773
|
}
|
|
2361
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
2362
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2774
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPClipBoardService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2775
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPClipBoardService, providedIn: 'root' }); }
|
|
2363
2776
|
}
|
|
2364
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2777
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPClipBoardService, decorators: [{
|
|
2365
2778
|
type: Injectable,
|
|
2366
2779
|
args: [{
|
|
2367
2780
|
providedIn: 'root',
|
|
@@ -2378,7 +2791,7 @@ class AXMOrgChartPrintPage extends AXBasePageComponent {
|
|
|
2378
2791
|
this.width = model(...(ngDevMode ? [undefined, { debugName: "width" }] : []));
|
|
2379
2792
|
this.height = model(...(ngDevMode ? [undefined, { debugName: "height" }] : []));
|
|
2380
2793
|
this.quality = model(...(ngDevMode ? [undefined, { debugName: "quality" }] : []));
|
|
2381
|
-
this.qualityComputed = linkedSignal(() => (this.data.quality ?? 1) * 100);
|
|
2794
|
+
this.qualityComputed = linkedSignal(() => (this.data.quality ?? 1) * 100, ...(ngDevMode ? [{ debugName: "qualityComputed" }] : []));
|
|
2382
2795
|
this.scale = model(...(ngDevMode ? [undefined, { debugName: "scale" }] : []));
|
|
2383
2796
|
this.#init = afterNextRender(() => {
|
|
2384
2797
|
this.bgcolor.set(this.data.bgcolor);
|
|
@@ -2416,8 +2829,8 @@ class AXMOrgChartPrintPage extends AXBasePageComponent {
|
|
|
2416
2829
|
isCanceled,
|
|
2417
2830
|
});
|
|
2418
2831
|
}
|
|
2419
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
2420
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.
|
|
2832
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMOrgChartPrintPage, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
2833
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.4", type: AXMOrgChartPrintPage, isStandalone: true, selector: "ng-component", inputs: { bgcolor: { classPropertyName: "bgcolor", publicName: "bgcolor", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, quality: { classPropertyName: "quality", publicName: "quality", isSignal: true, isRequired: false, transformFunction: null }, scale: { classPropertyName: "scale", publicName: "scale", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { bgcolor: "bgcolorChange", width: "widthChange", height: "heightChange", quality: "qualityChange", scale: "scaleChange" }, usesInheritance: true, ngImport: i0, template: ` <div class="ax-grid ax-grid-cols-[auto_18rem] ax-gap-4 ax-justify-center ax-p-4 ax-items-center">
|
|
2421
2834
|
<ax-label>Resolution (px)</ax-label>
|
|
2422
2835
|
<div class="ax-flex ax-gap-2 ax-items-center">
|
|
2423
2836
|
<ax-number-box
|
|
@@ -2468,7 +2881,7 @@ class AXMOrgChartPrintPage extends AXBasePageComponent {
|
|
|
2468
2881
|
</ax-suffix>
|
|
2469
2882
|
</ax-footer>`, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i2$1.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "type", "changeOnScroll", "allDigits", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i3$1.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i4.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i4.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXColorBoxModule }, { kind: "component", type: i6.AXColorBoxComponent, selector: "ax-color-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "showBadge", "showValue", "showClearButton", "showIcon"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }] }); }
|
|
2470
2883
|
}
|
|
2471
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
2884
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMOrgChartPrintPage, decorators: [{
|
|
2472
2885
|
type: Component,
|
|
2473
2886
|
args: [{
|
|
2474
2887
|
template: ` <div class="ax-grid ax-grid-cols-[auto_18rem] ax-gap-4 ax-justify-center ax-p-4 ax-items-center">
|
|
@@ -2582,10 +2995,10 @@ class AXPExportService {
|
|
|
2582
2995
|
document.body.removeChild(link);
|
|
2583
2996
|
URL.revokeObjectURL(link.href);
|
|
2584
2997
|
}
|
|
2585
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.
|
|
2586
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.
|
|
2998
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPExportService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2999
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPExportService, providedIn: 'root' }); }
|
|
2587
3000
|
}
|
|
2588
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.
|
|
3001
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPExportService, decorators: [{
|
|
2589
3002
|
type: Injectable,
|
|
2590
3003
|
args: [{
|
|
2591
3004
|
providedIn: 'root',
|
|
@@ -2615,9 +3028,22 @@ function AXPCleanNestedFilters(filters) {
|
|
|
2615
3028
|
.filter(Boolean);
|
|
2616
3029
|
}
|
|
2617
3030
|
|
|
3031
|
+
//#region ---- Versioning Types ----
|
|
3032
|
+
var AXVChangeType;
|
|
3033
|
+
(function (AXVChangeType) {
|
|
3034
|
+
AXVChangeType["Create"] = "Create";
|
|
3035
|
+
AXVChangeType["Update"] = "Update";
|
|
3036
|
+
AXVChangeType["Delete"] = "Delete";
|
|
3037
|
+
})(AXVChangeType || (AXVChangeType = {}));
|
|
3038
|
+
//#endregion
|
|
3039
|
+
//#region ---- Service Contract ----
|
|
3040
|
+
class AXPVersioningService {
|
|
3041
|
+
}
|
|
3042
|
+
//#endregion
|
|
3043
|
+
|
|
2618
3044
|
/**
|
|
2619
3045
|
* Generated bundle index. Do not edit.
|
|
2620
3046
|
*/
|
|
2621
3047
|
|
|
2622
|
-
export { ALL_DEFAULT_OPERATORS, AXMWorkflowErrorHandler, AXPAppVersionService, AXPCleanNestedFilters, AXPClipBoardService, AXPCommonModule, AXPCustomOperatorService, AXPCustomOperatorServiceImpl, AXPDataProvider, AXPDialogConfirmAction, AXPEntityCommandScope, AXPEntityQueryType, AXPErrorHandlerRegistryService, AXPExportService, AXPFileStorageService, AXPFileStorageStatus, AXPFileTypeProviderService, AXPFilterOperatorMiddlewareService, AXPFilterOperatorMiddlewareServiceImpl, AXPFooterTextSlotComponent, AXPGlobalErrorHandler, AXPGlobalVariableDefinitionService, AXPGlobalVariableEvaluatorScopeProvider,
|
|
3048
|
+
export { ALL_DEFAULT_OPERATORS, AXMWorkflowErrorHandler, AXPAppVersionService, AXPCleanNestedFilters, AXPClipBoardService, AXPCommonModule, AXPCommonSettings, AXPCustomOperatorService, AXPCustomOperatorServiceImpl, AXPDataProvider, AXPDialogConfirmAction, AXPEntityCommandScope, AXPEntityQueryType, AXPErrorHandlerRegistryService, AXPExportService, AXPFileStorageService, AXPFileStorageStatus, AXPFileTypeProviderService, AXPFilterOperatorMiddlewareService, AXPFilterOperatorMiddlewareServiceImpl, AXPFooterTextSlotComponent, AXPGlobalErrorHandler, AXPGlobalVariableDefinitionService, AXPGlobalVariableEvaluatorScopeProvider, AXPHomePageModule, AXPHomePageService, AXPLockService, AXPLogoComponent, AXPMenuMiddlewareRegistry, AXPMenuProviderService, AXPMenuSearchDefinitionProvider, AXPMenuSearchProvider, AXPMenuService, AXPNavBarSlotComponent, AXPNavigateWorkflow, AXPPlatformDefaultConfigs, AXPRedirectEvent, AXPRefreshEvent, AXPRelationshipCardinality, AXPRelationshipKind, AXPReloadAction, AXPReloadEvent, AXPSearchCommandProvider, AXPSearchDefinitionActionBuilder, AXPSearchDefinitionBuilder, AXPSearchDefinitionProviderContext, AXPSearchDefinitionProviderService, AXPSearchService, AXPSettingDefaultValuesAggregatorService, AXPSettingDefinitionGroupBuilder, AXPSettingDefinitionProviderContext, AXPSettingDefinitionProviderService, AXPSettingDefinitionSectionBuilder, AXPSettingService, AXPStickyDirective, AXPToastAction, AXPVersioningService, AXPWorkflowNavigateAction, AXPWorkflowRouterNavigateAction, AXP_APP_VERSION_PROVIDER, AXP_FILE_TYPE_INFO_PROVIDER, AXP_GLOBAL_VARIABLE_DEFINITION_PROVIDER, AXP_HOME_PAGES, AXP_HOME_PAGE_DEFAULT_KEY, AXP_MENU_MIDDLEWARE, AXP_MENU_PROVIDER, AXP_PLATFORM_CONFIG_TOKEN, AXP_ROOT_CONFIG_TOKEN, AXP_SEARCH_DEFINITION_PROVIDER, AXP_SEARCH_PROVIDER, AXP_SETTING_DEFAULT_VALUES_PROVIDERS, AXP_SETTING_DEFINITION_PROVIDER, AXP_SETTING_VALUE_PROVIDER, AXVChangeType, BETWEEN_OPER, BOOLEAN_OPERATORS, CONTAINS_OPER, DATE_OPERATORS, ENDS_WITH_OPER, ENVIRONMENT, EQ_OPER, GTE_OPER, GT_OPER, IN_OPER, IS_EMPTY_OPER, IS_NOT_EMPTY_OPER, LTE_OPER, LT_OPER, NOT_CONTAINS_OPER, NOT_EQ_OPER, NUMBER_OPERATORS, STARTS_WITH_OPER, STRING_OPERATORS, configPlatform, createAllQueryView, createMenuContext, createMenuMiddleware, createQueryView, getEntityInfo, provideDynamicHomePage, provideMenuMiddleware };
|
|
2623
3049
|
//# sourceMappingURL=acorex-platform-common.mjs.map
|