@acorex/platform 21.0.0-next.1 → 21.0.0-next.3
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/auth/index.d.ts +6 -1
- package/common/index.d.ts +208 -207
- package/core/index.d.ts +31 -44
- package/fesm2022/acorex-platform-auth.mjs +10 -3
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common.mjs +20 -30
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +100 -93
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/package.json +1 -1
package/auth/index.d.ts
CHANGED
|
@@ -267,14 +267,19 @@ declare const AXP_FEATURE_CHECKER: InjectionToken<AXPFeatureChecker>;
|
|
|
267
267
|
declare class AXPSessionService {
|
|
268
268
|
private eventService;
|
|
269
269
|
private authStrategyRegistry;
|
|
270
|
+
private readonly injector;
|
|
270
271
|
static readonly SESSION_KEY = "AXP_SESSION";
|
|
271
272
|
private readonly permissionLoader;
|
|
272
273
|
private readonly featureLoader;
|
|
273
274
|
private readonly tenantLoader;
|
|
274
275
|
private readonly applicationLoader;
|
|
275
|
-
private readonly moduleProviderLoader;
|
|
276
276
|
private readonly permissionChecker;
|
|
277
277
|
private readonly featureChecker;
|
|
278
|
+
/**
|
|
279
|
+
* Get module provider loader lazily to avoid circular dependency.
|
|
280
|
+
* ModuleProviderLoader depends on AXPSessionService, which is this service.
|
|
281
|
+
*/
|
|
282
|
+
private getModuleProviderLoader;
|
|
278
283
|
private status;
|
|
279
284
|
readonly status$: Observable<AXPSessionStatus>;
|
|
280
285
|
private isLoading;
|
package/common/index.d.ts
CHANGED
|
@@ -3,16 +3,17 @@ import { InjectionToken, EnvironmentProviders, Injector, ErrorHandler, ModuleWit
|
|
|
3
3
|
import { AXStyleColorType, AXDataSourceOperator, AXDataSourceFilterOption } from '@acorex/cdk/common';
|
|
4
4
|
import * as i2 from '@acorex/components/popup';
|
|
5
5
|
import { AXPopupSizeType, AXPopupService } from '@acorex/components/popup';
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
6
|
+
import * as i5 from '@acorex/platform/core';
|
|
7
|
+
import { AXPValueTransformerFunctions, AXPGridLayoutOptions, AXPValidationRules, AXPSystemActionType, AXPMetaData, AXPOptionsData, AXPLogoConfig, AXPNavigateActionCommand, AXPExecuteCommand, AXPEntityReference, AXPApplicationUserReference, AXPPlatformScopeKey, AXPPlatformScope, AXPWidgetTriggers, AXPExpressionEvaluatorScopeProvider, AXPExpressionEvaluatorScopeProviderContext } from '@acorex/platform/core';
|
|
8
|
+
import { AXPWidgetTypesMap, AXPMetaDataDefinition, AXPWidgetNode } from '@acorex/platform/layout/widget-core';
|
|
9
|
+
import * as i6 from '@angular/router';
|
|
9
10
|
import { Route, Routes } from '@angular/router';
|
|
10
|
-
import * as rxjs from 'rxjs';
|
|
11
|
-
import { Subject } from 'rxjs';
|
|
12
11
|
import * as i1 from '@acorex/platform/workflow';
|
|
13
12
|
import { AXPWorkflowAction, AXPWorkflowContext, AXPWorkflow } from '@acorex/platform/workflow';
|
|
14
13
|
import * as i3 from '@acorex/core/date-time';
|
|
15
14
|
import * as i4 from '@acorex/components/toast';
|
|
15
|
+
import * as rxjs from 'rxjs';
|
|
16
|
+
import { Subject } from 'rxjs';
|
|
16
17
|
import * as _ngrx_signals from '@ngrx/signals';
|
|
17
18
|
import { AXTranslationService } from '@acorex/core/translation';
|
|
18
19
|
import { AXLocaleProfile } from '@acorex/core/locale';
|
|
@@ -486,206 +487,6 @@ declare class AXPGlobalErrorHandler extends ErrorHandler {
|
|
|
486
487
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXPGlobalErrorHandler>;
|
|
487
488
|
}
|
|
488
489
|
|
|
489
|
-
interface AXPSettingValueProvider {
|
|
490
|
-
get scope(): AXPPlatformScope;
|
|
491
|
-
load(): Promise<AXPSettingValue[]>;
|
|
492
|
-
set(key: string, value: any): Promise<void>;
|
|
493
|
-
set(values: Record<string, any>): Promise<void>;
|
|
494
|
-
}
|
|
495
|
-
/**
|
|
496
|
-
* Provider interface for supplying default setting values from higher layers (e.g., app, mocks, API).
|
|
497
|
-
* Providers are merged by ascending priority; later providers override earlier values on key conflicts.
|
|
498
|
-
*/
|
|
499
|
-
interface AXPSettingDefaultValuesProvider {
|
|
500
|
-
/** Merge order; lower numbers are applied first. Default is 0. */
|
|
501
|
-
priority?: number;
|
|
502
|
-
/** Returns a flat map of setting key to default value. */
|
|
503
|
-
provide(): Promise<Record<string, unknown>>;
|
|
504
|
-
}
|
|
505
|
-
interface AXPSettingValue {
|
|
506
|
-
key: string;
|
|
507
|
-
value: any;
|
|
508
|
-
}
|
|
509
|
-
interface AXPSettingChangedEvent {
|
|
510
|
-
scope: AXPPlatformScope;
|
|
511
|
-
keys: string[];
|
|
512
|
-
values: Record<string, any>;
|
|
513
|
-
entries: AXPSettingValue[];
|
|
514
|
-
}
|
|
515
|
-
interface AXPSettingDefinition {
|
|
516
|
-
name: string;
|
|
517
|
-
title: string;
|
|
518
|
-
description?: string;
|
|
519
|
-
widget: AXPWidgetNode;
|
|
520
|
-
layout?: AXPGridLayoutOptions;
|
|
521
|
-
scope: AXPPlatformScopeKey;
|
|
522
|
-
isRequired?: boolean;
|
|
523
|
-
isInherited?: boolean;
|
|
524
|
-
isEncrypted?: boolean;
|
|
525
|
-
defaultValue?: unknown;
|
|
526
|
-
value?: unknown;
|
|
527
|
-
}
|
|
528
|
-
interface AXPSettingDefinitionGroup {
|
|
529
|
-
name: string;
|
|
530
|
-
title: string;
|
|
531
|
-
icon?: string;
|
|
532
|
-
description?: string;
|
|
533
|
-
groups: AXPSettingDefinitionGroup[];
|
|
534
|
-
sections: AXPSettingDefinitionSection[];
|
|
535
|
-
}
|
|
536
|
-
interface AXPSettingDefinitionSection {
|
|
537
|
-
name: string;
|
|
538
|
-
title: string;
|
|
539
|
-
description?: string;
|
|
540
|
-
settings: AXPSettingDefinition[];
|
|
541
|
-
}
|
|
542
|
-
interface AXPGroupSearchResult {
|
|
543
|
-
breadcrumb: {
|
|
544
|
-
name: string;
|
|
545
|
-
title: string;
|
|
546
|
-
description?: string;
|
|
547
|
-
}[];
|
|
548
|
-
sections: AXPSettingDefinitionSection[] | null;
|
|
549
|
-
groups: AXPSettingDefinitionGroup[] | null;
|
|
550
|
-
}
|
|
551
|
-
|
|
552
|
-
declare class AXPSettingDefinitionProviderContext {
|
|
553
|
-
private rootGroups;
|
|
554
|
-
private groupMap;
|
|
555
|
-
addGroup(name: string, title: string, description?: string, icon?: string): AXPSettingDefinitionGroupBuilder;
|
|
556
|
-
group(name: string): AXPSettingDefinitionGroupBuilder | null;
|
|
557
|
-
getGroups(): AXPSettingDefinitionGroup[];
|
|
558
|
-
hasGroup(name: string): boolean;
|
|
559
|
-
getGroup(name: string): AXPSettingDefinitionGroup | undefined;
|
|
560
|
-
}
|
|
561
|
-
declare class AXPSettingDefinitionGroupBuilder {
|
|
562
|
-
private context;
|
|
563
|
-
private group;
|
|
564
|
-
constructor(context: AXPSettingDefinitionProviderContext, group: AXPSettingDefinitionGroup);
|
|
565
|
-
addSection(name: string, title: string, description?: string): AXPSettingDefinitionSectionBuilder;
|
|
566
|
-
section(name: string): AXPSettingDefinitionSectionBuilder | null;
|
|
567
|
-
addGroup(name: string, title: string, description?: string, icon?: string): AXPSettingDefinitionGroupBuilder;
|
|
568
|
-
endGroup(): AXPSettingDefinitionProviderContext;
|
|
569
|
-
}
|
|
570
|
-
declare class AXPSettingDefinitionSectionBuilder {
|
|
571
|
-
private groupBuilder;
|
|
572
|
-
private section;
|
|
573
|
-
constructor(groupBuilder: AXPSettingDefinitionGroupBuilder, section: AXPSettingDefinitionSection);
|
|
574
|
-
addSetting(setting: {
|
|
575
|
-
key: string;
|
|
576
|
-
title: string;
|
|
577
|
-
scope: AXPPlatformScopeKey;
|
|
578
|
-
widget: {
|
|
579
|
-
type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | string;
|
|
580
|
-
options?: AXPOptionsData;
|
|
581
|
-
triggers?: AXPWidgetTriggers;
|
|
582
|
-
layout?: AXPGridLayoutOptions;
|
|
583
|
-
};
|
|
584
|
-
description?: string;
|
|
585
|
-
isRequired?: boolean;
|
|
586
|
-
isInherited?: boolean;
|
|
587
|
-
isEncrypted?: boolean;
|
|
588
|
-
defaultValue?: unknown;
|
|
589
|
-
valueTransforms?: AXPValueTransformerFunctions;
|
|
590
|
-
validationRules?: AXPValidationRules;
|
|
591
|
-
}): this;
|
|
592
|
-
endSection(): AXPSettingDefinitionGroupBuilder;
|
|
593
|
-
}
|
|
594
|
-
|
|
595
|
-
interface AXPSettingDefinitionProvider {
|
|
596
|
-
provide(context: AXPSettingDefinitionProviderContext): Promise<void>;
|
|
597
|
-
}
|
|
598
|
-
declare const AXP_SETTING_DEFINITION_PROVIDER: InjectionToken<AXPSettingDefinitionProvider[]>;
|
|
599
|
-
declare class AXPSettingDefinitionProviderService {
|
|
600
|
-
private providers;
|
|
601
|
-
private providerRegistry;
|
|
602
|
-
private cache;
|
|
603
|
-
private load;
|
|
604
|
-
reload(): Promise<void>;
|
|
605
|
-
getListAsync(scope: AXPPlatformScopeKey): Promise<AXPSettingDefinitionGroup[]>;
|
|
606
|
-
getList(scope: AXPPlatformScopeKey): AXPSettingDefinitionGroup[];
|
|
607
|
-
defaultValues(): Promise<Record<string, unknown>>;
|
|
608
|
-
findGroup(scope: AXPPlatformScopeKey, groupName: string): AXPGroupSearchResult;
|
|
609
|
-
private searchRecursive;
|
|
610
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingDefinitionProviderService, never>;
|
|
611
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingDefinitionProviderService>;
|
|
612
|
-
}
|
|
613
|
-
declare const AXP_SETTING_DEFAULT_VALUES_PROVIDERS: InjectionToken<AXPSettingDefaultValuesProvider[]>;
|
|
614
|
-
declare class AXPSettingDefaultValuesAggregatorService {
|
|
615
|
-
private readonly definitionService;
|
|
616
|
-
private readonly providers;
|
|
617
|
-
getDefaults(): Promise<Record<string, unknown>>;
|
|
618
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingDefaultValuesAggregatorService, never>;
|
|
619
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingDefaultValuesAggregatorService>;
|
|
620
|
-
}
|
|
621
|
-
|
|
622
|
-
declare const AXP_SETTING_VALUE_PROVIDER: InjectionToken<AXPSettingValueProvider[]>;
|
|
623
|
-
|
|
624
|
-
interface AXPSettingsServiceInterface {
|
|
625
|
-
load(): Promise<AXPSettingValue[]>;
|
|
626
|
-
get<T = any>(key: string): Promise<T>;
|
|
627
|
-
defaultValues(scope: AXPPlatformScope): Promise<Record<string, unknown>>;
|
|
628
|
-
scope(scope: AXPPlatformScope): ScopedSettingService;
|
|
629
|
-
}
|
|
630
|
-
declare class AXPSettingsService implements AXPSettingsServiceInterface {
|
|
631
|
-
private readonly providers;
|
|
632
|
-
private readonly injector;
|
|
633
|
-
private readonly eventService;
|
|
634
|
-
private readonly sessionService;
|
|
635
|
-
private readonly scopedSettingsCache;
|
|
636
|
-
readonly onChanged: Subject<AXPSettingChangedEvent>;
|
|
637
|
-
readonly onLoaded: Subject<void>;
|
|
638
|
-
constructor();
|
|
639
|
-
reload(): Promise<void>;
|
|
640
|
-
load(): Promise<AXPSettingValue[]>;
|
|
641
|
-
get<T = any>(key: string): Promise<T>;
|
|
642
|
-
defaultValues(scope: AXPPlatformScope): Promise<Record<string, unknown>>;
|
|
643
|
-
scope(scope: AXPPlatformScope): ScopedSettingService;
|
|
644
|
-
invokeChangeEvent(event: AXPSettingChangedEvent): void;
|
|
645
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingsService, never>;
|
|
646
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingsService>;
|
|
647
|
-
}
|
|
648
|
-
declare class ScopedSettingService {
|
|
649
|
-
private parent;
|
|
650
|
-
private provider;
|
|
651
|
-
private scopeCache;
|
|
652
|
-
constructor(parent: AXPSettingsService, provider: AXPSettingValueProvider, scopeCache: Map<string, any>);
|
|
653
|
-
get<T = any>(key: string): Promise<T>;
|
|
654
|
-
all(): Promise<any>;
|
|
655
|
-
defaultValues(): Promise<Record<string, unknown>>;
|
|
656
|
-
set<T = any>(key: string, value: T): Promise<void>;
|
|
657
|
-
set<T = any>(values: Record<string, T>): Promise<void>;
|
|
658
|
-
update<T = any>(key: string, updateFn: (currentValue: T) => T): Promise<void>;
|
|
659
|
-
}
|
|
660
|
-
|
|
661
|
-
/**
|
|
662
|
-
* Regional settings keys for date, time, and locale formatting.
|
|
663
|
-
* These keys are used by platform widgets and components to access regional settings.
|
|
664
|
-
* The actual setting definitions and providers are implemented in the locale-management module.
|
|
665
|
-
*/
|
|
666
|
-
declare enum AXPRegionalSetting {
|
|
667
|
-
LocaleProfile = "LocaleManagement:Setting:Regional.LocaleProfile",
|
|
668
|
-
TimeZone = "LocaleManagement:Setting:Regional.TimeZone",
|
|
669
|
-
Language = "LocaleManagement:Setting:Regional.Language",
|
|
670
|
-
Country = "LocaleManagement:Setting:Regional.Country",
|
|
671
|
-
Calendar = "LocaleManagement:Setting:Regional.Calendar",
|
|
672
|
-
FirstDayOfWeek = "LocaleManagement:Setting:Regional.FirstDayOfWeek",
|
|
673
|
-
WeekendDays = "LocaleManagement:Setting:Regional.WeekendDays",
|
|
674
|
-
ShortDate = "LocaleManagement:Setting:Regional.ShortDate",
|
|
675
|
-
MediumDate = "LocaleManagement:Setting:Regional.MediumDate",
|
|
676
|
-
LongDate = "LocaleManagement:Setting:Regional.LongDate",
|
|
677
|
-
ShortTime = "LocaleManagement:Setting:Regional.ShortTime",
|
|
678
|
-
MediumTime = "LocaleManagement:Setting:Regional.MediumTime",
|
|
679
|
-
LongTime = "LocaleManagement:Setting:Regional.LongTime",
|
|
680
|
-
MeasurementUnits = "LocaleManagement:Setting:Regional.MeasurementUnits",
|
|
681
|
-
TemperatureUnits = "LocaleManagement:Setting:Regional.TemperatureUnits",
|
|
682
|
-
DistanceUnits = "LocaleManagement:Setting:Regional.DistanceUnits",
|
|
683
|
-
WeightUnits = "LocaleManagement:Setting:Regional.WeightUnits",
|
|
684
|
-
VolumeUnits = "LocaleManagement:Setting:Regional.VolumeUnits",
|
|
685
|
-
SpeedUnits = "LocaleManagement:Setting:Regional.SpeedUnits",
|
|
686
|
-
AreaUnits = "LocaleManagement:Setting:Regional.AreaUnits"
|
|
687
|
-
}
|
|
688
|
-
|
|
689
490
|
interface AXPCommonModuleConfigs {
|
|
690
491
|
errorHandlers: (new () => AXPErrorHandler)[];
|
|
691
492
|
}
|
|
@@ -695,9 +496,9 @@ declare class AXPCommonModule {
|
|
|
695
496
|
/**
|
|
696
497
|
* @ignore
|
|
697
498
|
*/
|
|
698
|
-
constructor(instances: any[]
|
|
499
|
+
constructor(instances: any[]);
|
|
699
500
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXPCommonModule, never>;
|
|
700
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AXPCommonModule, never, [typeof i1.AXPWorkflowModule, typeof i2.AXPopupModule, typeof i3.AXDateTimeModule, typeof i4.AXToastModule], [typeof
|
|
501
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AXPCommonModule, never, [typeof i1.AXPWorkflowModule, typeof i2.AXPopupModule, typeof i3.AXDateTimeModule, typeof i4.AXToastModule, typeof i5.AXPModuleManifestModule], [typeof i6.RouterModule]>;
|
|
701
502
|
static ɵinj: i0.ɵɵInjectorDeclaration<AXPCommonModule>;
|
|
702
503
|
}
|
|
703
504
|
|
|
@@ -1706,6 +1507,206 @@ declare abstract class AXPLockService {
|
|
|
1706
1507
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXPLockService>;
|
|
1707
1508
|
}
|
|
1708
1509
|
|
|
1510
|
+
interface AXPSettingValueProvider {
|
|
1511
|
+
get scope(): AXPPlatformScope;
|
|
1512
|
+
load(): Promise<AXPSettingValue[]>;
|
|
1513
|
+
set(key: string, value: any): Promise<void>;
|
|
1514
|
+
set(values: Record<string, any>): Promise<void>;
|
|
1515
|
+
}
|
|
1516
|
+
/**
|
|
1517
|
+
* Provider interface for supplying default setting values from higher layers (e.g., app, mocks, API).
|
|
1518
|
+
* Providers are merged by ascending priority; later providers override earlier values on key conflicts.
|
|
1519
|
+
*/
|
|
1520
|
+
interface AXPSettingDefaultValuesProvider {
|
|
1521
|
+
/** Merge order; lower numbers are applied first. Default is 0. */
|
|
1522
|
+
priority?: number;
|
|
1523
|
+
/** Returns a flat map of setting key to default value. */
|
|
1524
|
+
provide(): Promise<Record<string, unknown>>;
|
|
1525
|
+
}
|
|
1526
|
+
interface AXPSettingValue {
|
|
1527
|
+
key: string;
|
|
1528
|
+
value: any;
|
|
1529
|
+
}
|
|
1530
|
+
interface AXPSettingChangedEvent {
|
|
1531
|
+
scope: AXPPlatformScope;
|
|
1532
|
+
keys: string[];
|
|
1533
|
+
values: Record<string, any>;
|
|
1534
|
+
entries: AXPSettingValue[];
|
|
1535
|
+
}
|
|
1536
|
+
interface AXPSettingDefinition {
|
|
1537
|
+
name: string;
|
|
1538
|
+
title: string;
|
|
1539
|
+
description?: string;
|
|
1540
|
+
widget: AXPWidgetNode;
|
|
1541
|
+
layout?: AXPGridLayoutOptions;
|
|
1542
|
+
scope: AXPPlatformScopeKey;
|
|
1543
|
+
isRequired?: boolean;
|
|
1544
|
+
isInherited?: boolean;
|
|
1545
|
+
isEncrypted?: boolean;
|
|
1546
|
+
defaultValue?: unknown;
|
|
1547
|
+
value?: unknown;
|
|
1548
|
+
}
|
|
1549
|
+
interface AXPSettingDefinitionGroup {
|
|
1550
|
+
name: string;
|
|
1551
|
+
title: string;
|
|
1552
|
+
icon?: string;
|
|
1553
|
+
description?: string;
|
|
1554
|
+
groups: AXPSettingDefinitionGroup[];
|
|
1555
|
+
sections: AXPSettingDefinitionSection[];
|
|
1556
|
+
}
|
|
1557
|
+
interface AXPSettingDefinitionSection {
|
|
1558
|
+
name: string;
|
|
1559
|
+
title: string;
|
|
1560
|
+
description?: string;
|
|
1561
|
+
settings: AXPSettingDefinition[];
|
|
1562
|
+
}
|
|
1563
|
+
interface AXPGroupSearchResult {
|
|
1564
|
+
breadcrumb: {
|
|
1565
|
+
name: string;
|
|
1566
|
+
title: string;
|
|
1567
|
+
description?: string;
|
|
1568
|
+
}[];
|
|
1569
|
+
sections: AXPSettingDefinitionSection[] | null;
|
|
1570
|
+
groups: AXPSettingDefinitionGroup[] | null;
|
|
1571
|
+
}
|
|
1572
|
+
|
|
1573
|
+
declare class AXPSettingDefinitionProviderContext {
|
|
1574
|
+
private rootGroups;
|
|
1575
|
+
private groupMap;
|
|
1576
|
+
addGroup(name: string, title: string, description?: string, icon?: string): AXPSettingDefinitionGroupBuilder;
|
|
1577
|
+
group(name: string): AXPSettingDefinitionGroupBuilder | null;
|
|
1578
|
+
getGroups(): AXPSettingDefinitionGroup[];
|
|
1579
|
+
hasGroup(name: string): boolean;
|
|
1580
|
+
getGroup(name: string): AXPSettingDefinitionGroup | undefined;
|
|
1581
|
+
}
|
|
1582
|
+
declare class AXPSettingDefinitionGroupBuilder {
|
|
1583
|
+
private context;
|
|
1584
|
+
private group;
|
|
1585
|
+
constructor(context: AXPSettingDefinitionProviderContext, group: AXPSettingDefinitionGroup);
|
|
1586
|
+
addSection(name: string, title: string, description?: string): AXPSettingDefinitionSectionBuilder;
|
|
1587
|
+
section(name: string): AXPSettingDefinitionSectionBuilder | null;
|
|
1588
|
+
addGroup(name: string, title: string, description?: string, icon?: string): AXPSettingDefinitionGroupBuilder;
|
|
1589
|
+
endGroup(): AXPSettingDefinitionProviderContext;
|
|
1590
|
+
}
|
|
1591
|
+
declare class AXPSettingDefinitionSectionBuilder {
|
|
1592
|
+
private groupBuilder;
|
|
1593
|
+
private section;
|
|
1594
|
+
constructor(groupBuilder: AXPSettingDefinitionGroupBuilder, section: AXPSettingDefinitionSection);
|
|
1595
|
+
addSetting(setting: {
|
|
1596
|
+
key: string;
|
|
1597
|
+
title: string;
|
|
1598
|
+
scope: AXPPlatformScopeKey;
|
|
1599
|
+
widget: {
|
|
1600
|
+
type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | string;
|
|
1601
|
+
options?: AXPOptionsData;
|
|
1602
|
+
triggers?: AXPWidgetTriggers;
|
|
1603
|
+
layout?: AXPGridLayoutOptions;
|
|
1604
|
+
};
|
|
1605
|
+
description?: string;
|
|
1606
|
+
isRequired?: boolean;
|
|
1607
|
+
isInherited?: boolean;
|
|
1608
|
+
isEncrypted?: boolean;
|
|
1609
|
+
defaultValue?: unknown;
|
|
1610
|
+
valueTransforms?: AXPValueTransformerFunctions;
|
|
1611
|
+
validationRules?: AXPValidationRules;
|
|
1612
|
+
}): this;
|
|
1613
|
+
endSection(): AXPSettingDefinitionGroupBuilder;
|
|
1614
|
+
}
|
|
1615
|
+
|
|
1616
|
+
interface AXPSettingDefinitionProvider {
|
|
1617
|
+
provide(context: AXPSettingDefinitionProviderContext): Promise<void>;
|
|
1618
|
+
}
|
|
1619
|
+
declare const AXP_SETTING_DEFINITION_PROVIDER: InjectionToken<AXPSettingDefinitionProvider[]>;
|
|
1620
|
+
declare class AXPSettingDefinitionProviderService {
|
|
1621
|
+
private providers;
|
|
1622
|
+
private providerRegistry;
|
|
1623
|
+
private cache;
|
|
1624
|
+
private load;
|
|
1625
|
+
reload(): Promise<void>;
|
|
1626
|
+
getListAsync(scope: AXPPlatformScopeKey): Promise<AXPSettingDefinitionGroup[]>;
|
|
1627
|
+
getList(scope: AXPPlatformScopeKey): AXPSettingDefinitionGroup[];
|
|
1628
|
+
defaultValues(): Promise<Record<string, unknown>>;
|
|
1629
|
+
findGroup(scope: AXPPlatformScopeKey, groupName: string): AXPGroupSearchResult;
|
|
1630
|
+
private searchRecursive;
|
|
1631
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingDefinitionProviderService, never>;
|
|
1632
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingDefinitionProviderService>;
|
|
1633
|
+
}
|
|
1634
|
+
declare const AXP_SETTING_DEFAULT_VALUES_PROVIDERS: InjectionToken<AXPSettingDefaultValuesProvider[]>;
|
|
1635
|
+
declare class AXPSettingDefaultValuesAggregatorService {
|
|
1636
|
+
private readonly definitionService;
|
|
1637
|
+
private readonly providers;
|
|
1638
|
+
getDefaults(): Promise<Record<string, unknown>>;
|
|
1639
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingDefaultValuesAggregatorService, never>;
|
|
1640
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingDefaultValuesAggregatorService>;
|
|
1641
|
+
}
|
|
1642
|
+
|
|
1643
|
+
declare const AXP_SETTING_VALUE_PROVIDER: InjectionToken<AXPSettingValueProvider[]>;
|
|
1644
|
+
|
|
1645
|
+
interface AXPSettingsServiceInterface {
|
|
1646
|
+
load(): Promise<AXPSettingValue[]>;
|
|
1647
|
+
get<T = any>(key: string): Promise<T>;
|
|
1648
|
+
defaultValues(scope: AXPPlatformScope): Promise<Record<string, unknown>>;
|
|
1649
|
+
scope(scope: AXPPlatformScope): ScopedSettingService;
|
|
1650
|
+
}
|
|
1651
|
+
declare class AXPSettingsService implements AXPSettingsServiceInterface {
|
|
1652
|
+
private readonly providers;
|
|
1653
|
+
private readonly injector;
|
|
1654
|
+
private readonly eventService;
|
|
1655
|
+
private readonly sessionService;
|
|
1656
|
+
private readonly scopedSettingsCache;
|
|
1657
|
+
readonly onChanged: Subject<AXPSettingChangedEvent>;
|
|
1658
|
+
readonly onLoaded: Subject<void>;
|
|
1659
|
+
constructor();
|
|
1660
|
+
reload(): Promise<void>;
|
|
1661
|
+
load(): Promise<AXPSettingValue[]>;
|
|
1662
|
+
get<T = any>(key: string): Promise<T>;
|
|
1663
|
+
defaultValues(scope: AXPPlatformScope): Promise<Record<string, unknown>>;
|
|
1664
|
+
scope(scope: AXPPlatformScope): ScopedSettingService;
|
|
1665
|
+
invokeChangeEvent(event: AXPSettingChangedEvent): void;
|
|
1666
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingsService, never>;
|
|
1667
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingsService>;
|
|
1668
|
+
}
|
|
1669
|
+
declare class ScopedSettingService {
|
|
1670
|
+
private parent;
|
|
1671
|
+
private provider;
|
|
1672
|
+
private scopeCache;
|
|
1673
|
+
constructor(parent: AXPSettingsService, provider: AXPSettingValueProvider, scopeCache: Map<string, any>);
|
|
1674
|
+
get<T = any>(key: string): Promise<T>;
|
|
1675
|
+
all(): Promise<any>;
|
|
1676
|
+
defaultValues(): Promise<Record<string, unknown>>;
|
|
1677
|
+
set<T = any>(key: string, value: T): Promise<void>;
|
|
1678
|
+
set<T = any>(values: Record<string, T>): Promise<void>;
|
|
1679
|
+
update<T = any>(key: string, updateFn: (currentValue: T) => T): Promise<void>;
|
|
1680
|
+
}
|
|
1681
|
+
|
|
1682
|
+
/**
|
|
1683
|
+
* Regional settings keys for date, time, and locale formatting.
|
|
1684
|
+
* These keys are used by platform widgets and components to access regional settings.
|
|
1685
|
+
* The actual setting definitions and providers are implemented in the locale-management module.
|
|
1686
|
+
*/
|
|
1687
|
+
declare enum AXPRegionalSetting {
|
|
1688
|
+
LocaleProfile = "LocaleManagement:Setting:Regional.LocaleProfile",
|
|
1689
|
+
TimeZone = "LocaleManagement:Setting:Regional.TimeZone",
|
|
1690
|
+
Language = "LocaleManagement:Setting:Regional.Language",
|
|
1691
|
+
Country = "LocaleManagement:Setting:Regional.Country",
|
|
1692
|
+
Calendar = "LocaleManagement:Setting:Regional.Calendar",
|
|
1693
|
+
FirstDayOfWeek = "LocaleManagement:Setting:Regional.FirstDayOfWeek",
|
|
1694
|
+
WeekendDays = "LocaleManagement:Setting:Regional.WeekendDays",
|
|
1695
|
+
ShortDate = "LocaleManagement:Setting:Regional.ShortDate",
|
|
1696
|
+
MediumDate = "LocaleManagement:Setting:Regional.MediumDate",
|
|
1697
|
+
LongDate = "LocaleManagement:Setting:Regional.LongDate",
|
|
1698
|
+
ShortTime = "LocaleManagement:Setting:Regional.ShortTime",
|
|
1699
|
+
MediumTime = "LocaleManagement:Setting:Regional.MediumTime",
|
|
1700
|
+
LongTime = "LocaleManagement:Setting:Regional.LongTime",
|
|
1701
|
+
MeasurementUnits = "LocaleManagement:Setting:Regional.MeasurementUnits",
|
|
1702
|
+
TemperatureUnits = "LocaleManagement:Setting:Regional.TemperatureUnits",
|
|
1703
|
+
DistanceUnits = "LocaleManagement:Setting:Regional.DistanceUnits",
|
|
1704
|
+
WeightUnits = "LocaleManagement:Setting:Regional.WeightUnits",
|
|
1705
|
+
VolumeUnits = "LocaleManagement:Setting:Regional.VolumeUnits",
|
|
1706
|
+
SpeedUnits = "LocaleManagement:Setting:Regional.SpeedUnits",
|
|
1707
|
+
AreaUnits = "LocaleManagement:Setting:Regional.AreaUnits"
|
|
1708
|
+
}
|
|
1709
|
+
|
|
1709
1710
|
/**
|
|
1710
1711
|
* Status Definition Types
|
|
1711
1712
|
* Defines the structure for status definitions and their transitions
|
package/core/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Type, InjectionToken, OnInit, ElementRef, EventEmitter, OnChanges, Renderer2, SimpleChanges, ViewContainerRef, OnDestroy, PipeTransform } from '@angular/core';
|
|
2
|
+
import { Type, InjectionToken, OnInit, ElementRef, EventEmitter, OnChanges, Renderer2, SimpleChanges, ViewContainerRef, OnDestroy, Injector, PipeTransform } from '@angular/core';
|
|
3
3
|
import { AXStyleColorType, AXDataSource, AXDataSourceSortOption, AXDataSourceFilterOption, AXDataSourceQuery, AXDataSourceCallbackResult } from '@acorex/cdk/common';
|
|
4
4
|
import * as _ngrx_signals from '@ngrx/signals';
|
|
5
5
|
import { Observable } from 'rxjs';
|
|
@@ -2024,12 +2024,6 @@ interface AXPFeatureDefinition extends AXPModuleFeatureDefinition {
|
|
|
2024
2024
|
key: string;
|
|
2025
2025
|
}
|
|
2026
2026
|
|
|
2027
|
-
/**
|
|
2028
|
-
* Injection token for module manifest providers.
|
|
2029
|
-
* Modules register their manifest providers using this token.
|
|
2030
|
-
*/
|
|
2031
|
-
declare const AXP_MODULE_MANIFEST_PROVIDER: InjectionToken<AXPModuleManifest[]>;
|
|
2032
|
-
|
|
2033
2027
|
/**
|
|
2034
2028
|
* Registry service for module manifests.
|
|
2035
2029
|
* Collects and manages all registered module manifests.
|
|
@@ -2111,18 +2105,29 @@ interface AXPStartUpTask {
|
|
|
2111
2105
|
run: () => Promise<void>;
|
|
2112
2106
|
}
|
|
2113
2107
|
|
|
2108
|
+
declare class AXPAppStartUpService {
|
|
2109
|
+
private tasks;
|
|
2110
|
+
registerTask(task: AXPStartUpTask): void;
|
|
2111
|
+
runAllTasks(): Promise<void>;
|
|
2112
|
+
private updateStatus;
|
|
2113
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPAppStartUpService, never>;
|
|
2114
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXPAppStartUpService>;
|
|
2115
|
+
}
|
|
2116
|
+
declare const AXPAppStartUpProvider: i0.EnvironmentProviders;
|
|
2117
|
+
|
|
2114
2118
|
/**
|
|
2115
|
-
*
|
|
2116
|
-
*
|
|
2119
|
+
* Module for managing module manifests and providers initialization.
|
|
2120
|
+
* Handles the registration of manifest and module provider startup tasks.
|
|
2117
2121
|
*/
|
|
2118
|
-
declare class
|
|
2119
|
-
private readonly manifestRegistry;
|
|
2122
|
+
declare class AXPModuleManifestModule {
|
|
2120
2123
|
/**
|
|
2121
|
-
*
|
|
2124
|
+
* @ignore
|
|
2125
|
+
* Initializes module manifest and provider tasks on module construction.
|
|
2122
2126
|
*/
|
|
2123
|
-
|
|
2124
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
2125
|
-
static
|
|
2127
|
+
constructor(appInitService: AXPAppStartUpService, injector: Injector);
|
|
2128
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPModuleManifestModule, never>;
|
|
2129
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AXPModuleManifestModule, never, never, never>;
|
|
2130
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<AXPModuleManifestModule>;
|
|
2126
2131
|
}
|
|
2127
2132
|
|
|
2128
2133
|
/**
|
|
@@ -2241,6 +2246,8 @@ declare const AXP_EDITION_SERVICE: InjectionToken<AXPIEditionService>;
|
|
|
2241
2246
|
interface AXPIModuleProviderLoader {
|
|
2242
2247
|
loadRequiredModules(): Promise<void>;
|
|
2243
2248
|
loadProviders(context: any): Promise<void>;
|
|
2249
|
+
loadProvidersIfReady(): Promise<void>;
|
|
2250
|
+
loadProvidersForApplication(application: any): Promise<void>;
|
|
2244
2251
|
clear(): Promise<void>;
|
|
2245
2252
|
isModuleRegistered(moduleName: string): boolean;
|
|
2246
2253
|
}
|
|
@@ -2249,21 +2256,6 @@ interface AXPIModuleProviderLoader {
|
|
|
2249
2256
|
* Implementation: @acorex/platform/auth
|
|
2250
2257
|
*/
|
|
2251
2258
|
declare const AXP_MODULE_PROVIDER_LOADER: InjectionToken<AXPIModuleProviderLoader>;
|
|
2252
|
-
/**
|
|
2253
|
-
* Module provider initializer interface.
|
|
2254
|
-
* Implementation: @acorex/platform/auth
|
|
2255
|
-
*/
|
|
2256
|
-
interface AXPIModuleProviderInitializer {
|
|
2257
|
-
createRequiredModulesTask(): any;
|
|
2258
|
-
createStartupTask(): any;
|
|
2259
|
-
loadProvidersIfReady(): Promise<void>;
|
|
2260
|
-
loadProvidersForApplication(application: any): Promise<void>;
|
|
2261
|
-
}
|
|
2262
|
-
/**
|
|
2263
|
-
* Injection token for module provider initializer.
|
|
2264
|
-
* Implementation: @acorex/platform/auth
|
|
2265
|
-
*/
|
|
2266
|
-
declare const AXP_MODULE_PROVIDER_INITIALIZER: InjectionToken<AXPIModuleProviderInitializer>;
|
|
2267
2259
|
/**
|
|
2268
2260
|
* Session service interface for module provider operations.
|
|
2269
2261
|
* Implementation: @acorex/platform/auth
|
|
@@ -2280,6 +2272,11 @@ interface AXPISessionService {
|
|
|
2280
2272
|
* Implementation: @acorex/platform/auth
|
|
2281
2273
|
*/
|
|
2282
2274
|
declare const AXP_SESSION_SERVICE: InjectionToken<AXPISessionService>;
|
|
2275
|
+
/**
|
|
2276
|
+
* Injection token for module manifest providers.
|
|
2277
|
+
* Modules register their manifest providers using this token.
|
|
2278
|
+
*/
|
|
2279
|
+
declare const AXP_MODULE_MANIFEST_PROVIDER: InjectionToken<AXPModuleManifest[]>;
|
|
2283
2280
|
|
|
2284
2281
|
/**
|
|
2285
2282
|
* Registry service for dynamically loaded module providers.
|
|
@@ -2414,14 +2411,14 @@ interface AXPModuleAccessControlService {
|
|
|
2414
2411
|
* @param context Access control context
|
|
2415
2412
|
* @returns true if module should be loaded, false otherwise
|
|
2416
2413
|
*/
|
|
2417
|
-
checkAccess(
|
|
2414
|
+
checkAccess(manifest: AXPModuleManifest, context: AXPModuleAccessContext): boolean | Promise<boolean>;
|
|
2418
2415
|
}
|
|
2419
2416
|
/**
|
|
2420
2417
|
* Default implementation of module access control service.
|
|
2421
2418
|
* Checks if module is enabled in edition.modulesAndFeatures.modules.
|
|
2422
2419
|
*/
|
|
2423
2420
|
declare class DefaultModuleAccessControlService implements AXPModuleAccessControlService {
|
|
2424
|
-
checkAccess(
|
|
2421
|
+
checkAccess(manifest: AXPModuleManifest, context: AXPModuleAccessContext): boolean;
|
|
2425
2422
|
static ɵfac: i0.ɵɵFactoryDeclaration<DefaultModuleAccessControlService, never>;
|
|
2426
2423
|
static ɵprov: i0.ɵɵInjectableDeclaration<DefaultModuleAccessControlService>;
|
|
2427
2424
|
}
|
|
@@ -2431,16 +2428,6 @@ declare class DefaultModuleAccessControlService implements AXPModuleAccessContro
|
|
|
2431
2428
|
*/
|
|
2432
2429
|
declare const AXP_MODULE_ACCESS_CONTROL_SERVICE: InjectionToken<AXPModuleAccessControlService>;
|
|
2433
2430
|
|
|
2434
|
-
declare class AXPAppStartUpService {
|
|
2435
|
-
private tasks;
|
|
2436
|
-
registerTask(task: AXPStartUpTask): void;
|
|
2437
|
-
runAllTasks(): Promise<void>;
|
|
2438
|
-
private updateStatus;
|
|
2439
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AXPAppStartUpService, never>;
|
|
2440
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<AXPAppStartUpService>;
|
|
2441
|
-
}
|
|
2442
|
-
declare const AXPAppStartUpProvider: i0.EnvironmentProviders;
|
|
2443
|
-
|
|
2444
2431
|
/**
|
|
2445
2432
|
* Represents a tag with text, color, and metadata
|
|
2446
2433
|
*/
|
|
@@ -2711,5 +2698,5 @@ declare function extractTextFromHtml(value: string): string;
|
|
|
2711
2698
|
*/
|
|
2712
2699
|
declare function generateKebabCase(title: string): string;
|
|
2713
2700
|
|
|
2714
|
-
export { AXFullscreenDirective, AXHighlightService, AXPActivityLogProvider, AXPActivityLogService, AXPAppStartUpProvider, AXPAppStartUpService, AXPBroadcastEventService, AXPColorPaletteProvider, AXPColorPaletteService, AXPComponentLogoConfig, AXPContentCheckerDirective, AXPContextChangeEvent, AXPContextStore, AXPCountdownPipe, AXPDataGenerator, AXPDataSourceDefinitionProviderService, AXPDblClickDirective, AXPDefaultColorPalettesProvider, AXPDeviceService, AXPDeviceType, AXPDistributedEventListenerService, AXPElementDataDirective, AXPExportTemplateToken, AXPExpressionEvaluatorScopeProviderContext, AXPExpressionEvaluatorScopeProviderService, AXPExpressionEvaluatorService, AXPFeatureDefinitionProviderContext, AXPGridLayoutDirective, AXPHookService, AXPIconLogoConfig, AXPImageUrlLogoConfig,
|
|
2715
|
-
export type { AXIEntityDefinitionLoader, AXPActionMenuItem, AXPActivityLog, AXPActivityLogChange, AXPApplicationUserReference, AXPBackButton, AXPBadge, AXPBreadcrumbItem, AXPCategorizedEntity, AXPCategorizedEntityDto, AXPCategoryEntity, AXPCategoryEntityWithItems, AXPColorPalette, AXPColorPaletteFilterOptions, AXPColumnQuery, AXPCommandMessage, AXPContent, AXPContentDirection, AXPContentType, AXPContextData, AXPContextState, AXPDataSource, AXPDataSourceDataFieldDefinition, AXPDataSourceDefinition, AXPDataSourceDefinitionProvider, AXPDataType, AXPDistributedEventListenerProvider, AXPDistributedEventListenerProviderToken, AXPEntityReference, AXPEqualValidationRule, AXPExecuteCommand, AXPExecuteCommandResult, AXPExportCsvOptions, AXPExportExcelOptions, AXPExportOptions, AXPExportPdfOptions, AXPExportPrintOptions, AXPExpression, AXPExpressionEvaluatorScope, AXPExpressionEvaluatorScopeProvider, AXPExpressionEvaluatorScopeProviders, AXPFeatureDefinition, AXPFeatureDefinitionProvider, AXPFeatureName, AXPFileListItem, AXPFileSource, AXPFileStatus, AXPFilterClause, AXPFilterDefinition, AXPFilterQuery, AXPFlowDirection, AXPGridLayoutOptions, AXPGridPlacement, AXPIEditionService, AXPIMenuProvider,
|
|
2701
|
+
export { AXFullscreenDirective, AXHighlightService, AXPActivityLogProvider, AXPActivityLogService, AXPAppStartUpProvider, AXPAppStartUpService, AXPBroadcastEventService, AXPColorPaletteProvider, AXPColorPaletteService, AXPComponentLogoConfig, AXPContentCheckerDirective, AXPContextChangeEvent, AXPContextStore, AXPCountdownPipe, AXPDataGenerator, AXPDataSourceDefinitionProviderService, AXPDblClickDirective, AXPDefaultColorPalettesProvider, AXPDeviceService, AXPDeviceType, AXPDistributedEventListenerService, AXPElementDataDirective, AXPExportTemplateToken, AXPExpressionEvaluatorScopeProviderContext, AXPExpressionEvaluatorScopeProviderService, AXPExpressionEvaluatorService, AXPFeatureDefinitionProviderContext, AXPGridLayoutDirective, AXPHookService, AXPIconLogoConfig, AXPImageUrlLogoConfig, AXPModuleManifestModule, AXPModuleManifestRegistry, AXPModuleProviderRegistry, AXPPlatformScope, AXPScreenSize, AXPSystemActionType, AXPSystemActions, AXPTagProvider, AXPTagService, AXP_ACTIVITY_LOG_PROVIDER, AXP_COLOR_PALETTE_PROVIDER, AXP_DATASOURCE_DEFINITION_PROVIDER, AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, AXP_EDITION_SERVICE, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER, AXP_FEATURE_DEFINITION_PROVIDER, AXP_MODULE_ACCESS_CONTROL_SERVICE, AXP_MODULE_MANIFEST_PROVIDER, AXP_MODULE_PROVIDER_LOADER, AXP_SESSION_SERVICE, AXP_TAG_PROVIDER, DefaultModuleAccessControlService, applyFilterArray, applyPagination, applyQueryArray, applySortArray, applySystemActionDefault, cleanDeep, extractNestedFieldsWildcard, extractTextFromHtml, extractValue, generateKebabCase, getActionButton, getChangedPaths, getDetailedChanges, getEnumValues, getNestedKeys, getSmart, getSystemActions, objectKeyValueTransforms, resolveActionLook, resolvePlatformScopeKey, resolvePlatformScopeName, setSmart };
|
|
2702
|
+
export type { AXIEntityDefinitionLoader, AXPActionMenuItem, AXPActivityLog, AXPActivityLogChange, AXPApplicationUserReference, AXPBackButton, AXPBadge, AXPBreadcrumbItem, AXPCategorizedEntity, AXPCategorizedEntityDto, AXPCategoryEntity, AXPCategoryEntityWithItems, AXPColorPalette, AXPColorPaletteFilterOptions, AXPColumnQuery, AXPCommandMessage, AXPContent, AXPContentDirection, AXPContentType, AXPContextData, AXPContextState, AXPDataSource, AXPDataSourceDataFieldDefinition, AXPDataSourceDefinition, AXPDataSourceDefinitionProvider, AXPDataType, AXPDistributedEventListenerProvider, AXPDistributedEventListenerProviderToken, AXPEntityReference, AXPEqualValidationRule, AXPExecuteCommand, AXPExecuteCommandResult, AXPExportCsvOptions, AXPExportExcelOptions, AXPExportOptions, AXPExportPdfOptions, AXPExportPrintOptions, AXPExpression, AXPExpressionEvaluatorScope, AXPExpressionEvaluatorScopeProvider, AXPExpressionEvaluatorScopeProviders, AXPFeatureDefinition, AXPFeatureDefinitionProvider, AXPFeatureName, AXPFileListItem, AXPFileSource, AXPFileStatus, AXPFilterClause, AXPFilterDefinition, AXPFilterQuery, AXPFlowDirection, AXPGridLayoutOptions, AXPGridPlacement, AXPIEditionService, AXPIMenuProvider, AXPIModuleProviderLoader, AXPIPermissionDefinitionProvider, AXPISearchCommandProvider, AXPISessionService, AXPISettingDefinitionProvider, AXPLogoConfig, AXPMaxLengthValidationRule, AXPMetaData, AXPMiddlewareErrorResponse, AXPMinLengthValidationRule, AXPModuleAccessContext, AXPModuleAccessControlService, AXPModuleFeatureDefinition, AXPModuleFeatureDefinitionWithKey, AXPModuleManifest, AXPNavigateActionCommand, AXPNavigateActionOptions, AXPOptionsData, AXPPagedListResult, AXPPartialNested, AXPPlatformScopeKey, AXPQueryFetchResult, AXPQueryRequest, AXPReqexValidationRule, AXPRequiredValidationRule, AXPSortDefinition, AXPSortQuery, AXPStartUpTask, AXPStringValidationRules, AXPSystemAction, AXPTag, AXPTagFilterOptions, AXPUserReference, AXPValidationRule, AXPValidationRules, AXPValueTransformerFunction, AXPValueTransformerFunctions, AXPValueUnit, AXPValueUnits, AXPViewBlockDefinition, AXPViewDefinition, AXPViewFieldDefinition, AXPViewQuery, AXPWidgetTrigger, AXPWidgetTriggers };
|
|
@@ -236,11 +236,11 @@ class AXPSessionService {
|
|
|
236
236
|
constructor() {
|
|
237
237
|
this.eventService = inject(AXPBroadcastEventService);
|
|
238
238
|
this.authStrategyRegistry = inject(AXPAuthStrategyRegistryService);
|
|
239
|
+
this.injector = inject(Injector);
|
|
239
240
|
this.permissionLoader = inject(AXP_PERMISSION_LOADER);
|
|
240
241
|
this.featureLoader = inject(AXP_FEATURE_LOADER);
|
|
241
242
|
this.tenantLoader = inject(AXP_TENANT_LOADER);
|
|
242
243
|
this.applicationLoader = inject(AXP_APPLICATION_LOADER);
|
|
243
|
-
this.moduleProviderLoader = inject(AXP_MODULE_PROVIDER_LOADER);
|
|
244
244
|
this.permissionChecker = inject(AXP_PERMISSION_CHECKER, { optional: true });
|
|
245
245
|
this.featureChecker = inject(AXP_FEATURE_CHECKER, { optional: true });
|
|
246
246
|
this.status = new BehaviorSubject(AXPSessionStatus.Unauthenticated);
|
|
@@ -274,6 +274,13 @@ class AXPSessionService {
|
|
|
274
274
|
this.isAuthorized$ = this.status$.pipe(map((status) => status === AXPSessionStatus.Authorized), shareReplay(1));
|
|
275
275
|
}
|
|
276
276
|
static { this.SESSION_KEY = 'AXP_SESSION'; }
|
|
277
|
+
/**
|
|
278
|
+
* Get module provider loader lazily to avoid circular dependency.
|
|
279
|
+
* ModuleProviderLoader depends on AXPSessionService, which is this service.
|
|
280
|
+
*/
|
|
281
|
+
getModuleProviderLoader() {
|
|
282
|
+
return this.injector.get(AXP_MODULE_PROVIDER_LOADER);
|
|
283
|
+
}
|
|
277
284
|
get user() {
|
|
278
285
|
const session = this.getSessionData();
|
|
279
286
|
if (session?.user && !this.currentUserSubject.value) {
|
|
@@ -325,7 +332,7 @@ class AXPSessionService {
|
|
|
325
332
|
// Load required modules first to ensure entities are available for loaders
|
|
326
333
|
// This is critical because loaders (like application.loader) need entities
|
|
327
334
|
// from required modules (ApplicationManagement, TenantManagement, SecurityManagement)
|
|
328
|
-
await this.
|
|
335
|
+
await this.getModuleProviderLoader().loadRequiredModules();
|
|
329
336
|
await this.loadPermissions();
|
|
330
337
|
await this.loadFeatures();
|
|
331
338
|
await this.signInComplete();
|
|
@@ -445,7 +452,7 @@ class AXPSessionService {
|
|
|
445
452
|
const userId = this.user?.id;
|
|
446
453
|
// Clear module provider loader cache before clearing session
|
|
447
454
|
// This ensures modules and providers from previous user are not cached
|
|
448
|
-
await this.
|
|
455
|
+
await this.getModuleProviderLoader().clear();
|
|
449
456
|
this.clearSession();
|
|
450
457
|
this.eventService.publish(AXPSessionStatus.SignedOut, { id: userId });
|
|
451
458
|
this.isLoading.next(false);
|