@acorex/platform 21.0.0-next.1 → 21.0.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/auth/index.d.ts +238 -92
  2. package/common/index.d.ts +42 -606
  3. package/core/index.d.ts +432 -574
  4. package/fesm2022/acorex-platform-auth.mjs +200 -153
  5. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  6. package/fesm2022/acorex-platform-common.mjs +112 -1009
  7. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  8. package/fesm2022/acorex-platform-core.mjs +416 -694
  9. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  10. package/fesm2022/acorex-platform-domain.mjs +11 -54
  11. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  12. package/fesm2022/acorex-platform-layout-builder.mjs +272 -414
  13. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  14. package/fesm2022/acorex-platform-layout-components.mjs +3105 -2064
  15. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  16. package/fesm2022/acorex-platform-layout-designer.mjs +7 -7
  17. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  18. package/fesm2022/acorex-platform-layout-entity.mjs +648 -756
  19. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  20. package/fesm2022/acorex-platform-layout-views.mjs +4 -4
  21. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  22. package/fesm2022/acorex-platform-layout-widget-core.mjs +174 -248
  23. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  24. package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-fhhZOWul.mjs +50 -0
  25. package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-edit.component-fhhZOWul.mjs.map +1 -0
  26. package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-C3Qbs0fz.mjs +42 -0
  27. package/fesm2022/acorex-platform-layout-widgets-extra-properties-schema-widget-view.component-C3Qbs0fz.mjs.map +1 -0
  28. package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-CngQBUlN.mjs +55 -0
  29. package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-edit.component-CngQBUlN.mjs.map +1 -0
  30. package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-view.component-DSNo9e4W.mjs +50 -0
  31. package/fesm2022/acorex-platform-layout-widgets-extra-properties-values-widget-view.component-DSNo9e4W.mjs.map +1 -0
  32. package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-edit.component-CL0CwEHX.mjs +48 -0
  33. package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-edit.component-CL0CwEHX.mjs.map +1 -0
  34. package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-view.component-B6Fi0xTw.mjs +42 -0
  35. package/fesm2022/acorex-platform-layout-widgets-extra-properties-widget-view.component-B6Fi0xTw.mjs.map +1 -0
  36. package/fesm2022/{acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs → acorex-platform-layout-widgets-file-list-popup.component-D0y-9nE5.mjs} +2 -2
  37. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-D0y-9nE5.mjs.map +1 -0
  38. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-m8rHZP8L.mjs} +2 -2
  39. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-m8rHZP8L.mjs.map +1 -0
  40. package/fesm2022/acorex-platform-layout-widgets.mjs +974 -2994
  41. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  42. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs → acorex-platform-themes-default-entity-master-create-view.component-mARj77Mr.mjs} +5 -26
  43. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-mARj77Mr.mjs.map +1 -0
  44. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs → acorex-platform-themes-default-entity-master-list-view.component-Cym8pq0v.mjs} +5 -4
  45. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-Cym8pq0v.mjs.map +1 -0
  46. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BTA6h7Xd.mjs +101 -0
  47. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BTA6h7Xd.mjs.map +1 -0
  48. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs → acorex-platform-themes-default-entity-master-single-view.component-B_P0a5KW.mjs} +3 -3
  49. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-B_P0a5KW.mjs.map +1 -0
  50. package/fesm2022/acorex-platform-themes-default.mjs +30 -166
  51. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  52. package/fesm2022/acorex-platform-themes-shared.mjs +27 -27
  53. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  54. package/layout/builder/index.d.ts +1 -4
  55. package/layout/components/index.d.ts +327 -405
  56. package/layout/designer/index.d.ts +3 -3
  57. package/layout/entity/index.d.ts +108 -163
  58. package/layout/widget-core/index.d.ts +49 -39
  59. package/layout/widgets/index.d.ts +54 -368
  60. package/package.json +5 -5
  61. package/themes/default/index.d.ts +2 -15
  62. package/themes/shared/index.d.ts +10 -10
  63. package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs.map +0 -1
  64. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs.map +0 -1
  65. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs.map +0 -1
  66. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DyDa_hyd.mjs.map +0 -1
  67. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs +0 -101
  68. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs.map +0 -1
  69. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs.map +0 -1
package/core/index.d.ts CHANGED
@@ -924,8 +924,6 @@ interface AXPValueUnits {
924
924
  interface AXPEntityReference {
925
925
  id: string;
926
926
  type: string;
927
- title?: string;
928
- metadata?: AXPMetaData;
929
927
  }
930
928
  interface AXPUserReference {
931
929
  id: string;
@@ -1004,14 +1002,19 @@ interface AXPFileListItem {
1004
1002
  source?: AXPFileSource;
1005
1003
  }
1006
1004
 
1007
- interface AXPFilterClause extends AXDataSourceFilterOption {
1008
- id?: string;
1009
- order?: number;
1010
- filters?: AXPFilterClause[];
1011
- }
1012
- interface AXPFilterDefinition extends AXPFilterClause {
1005
+ type AXPFilterOperation = {
1006
+ type: 'equal' | 'isNull' | 'isEmpty' | 'lt' | 'lte' | 'gt' | 'gte' | 'startsWith' | 'endsWith' | 'contains' | 'in';
1007
+ negative?: boolean;
1008
+ };
1009
+ type AXPFilterLogic = 'and' | 'or';
1010
+ interface AXPFilterDefinition {
1013
1011
  title: string;
1012
+ field: string;
1013
+ value?: unknown;
1014
1014
  isParametric?: boolean;
1015
+ operator: AXPFilterOperation;
1016
+ logic?: AXPFilterLogic;
1017
+ filters?: AXPFilterDefinition[];
1015
1018
  icon?: string;
1016
1019
  widget: {
1017
1020
  type: string;
@@ -1032,7 +1035,6 @@ type AXPActionMenuItem = {
1032
1035
  name?: string;
1033
1036
  title: string;
1034
1037
  icon?: string;
1035
- iconOnly?: boolean;
1036
1038
  color?: string;
1037
1039
  break?: boolean;
1038
1040
  items?: AXPActionMenuItem[];
@@ -1139,11 +1141,6 @@ declare class AXPComponentLogoConfig implements AXPLogoConfig {
1139
1141
  width?: number | undefined;
1140
1142
  constructor(component: Type<any>);
1141
1143
  }
1142
- declare class AXPIconLogoConfig implements AXPLogoConfig {
1143
- icon: string;
1144
- color?: string | undefined;
1145
- constructor(icon: string, color?: string | undefined);
1146
- }
1147
1144
 
1148
1145
  type AXPPlatformScopeKey = 'C' | 'G' | 'P' | 'T' | 'U';
1149
1146
  declare enum AXPPlatformScope {
@@ -1448,11 +1445,6 @@ declare class AXPColorPaletteService {
1448
1445
  * Reload palettes from all providers
1449
1446
  */
1450
1447
  reload(): Promise<void>;
1451
- /**
1452
- * Get the default palette (material-design) or fallback colors
1453
- * @returns Promise of default palette, never returns undefined
1454
- */
1455
- getDefaultPalette(): Promise<AXPColorPalette>;
1456
1448
  /**
1457
1449
  * Load palettes from all providers
1458
1450
  */
@@ -1537,7 +1529,6 @@ declare class AXPDataGenerator {
1537
1529
  static city(): string;
1538
1530
  static state(): string;
1539
1531
  static address(): string;
1540
- static avatar(): string;
1541
1532
  }
1542
1533
 
1543
1534
  type AXPValueTransformerFunction = (value: any) => any;
@@ -1568,7 +1559,6 @@ interface AXPDataSourceDefinition<T = any> {
1568
1559
  columns: AXPDataSourceDataFieldDefinition[];
1569
1560
  filters: AXPFilterDefinition[];
1570
1561
  samples?: any[];
1571
- visible?: boolean;
1572
1562
  source: () => AXDataSource<T> | Promise<AXDataSource<T>>;
1573
1563
  }
1574
1564
  interface AXPDataSourceDefinitionProvider {
@@ -1577,7 +1567,6 @@ interface AXPDataSourceDefinitionProvider {
1577
1567
  declare const AXP_DATASOURCE_DEFINITION_PROVIDER: InjectionToken<AXPDataSourceDefinitionProvider[]>;
1578
1568
  declare class AXPDataSourceDefinitionProviderService implements AXPDataSourceDefinitionProvider {
1579
1569
  private providers;
1580
- private providerRegistry;
1581
1570
  items(): Promise<AXPDataSourceDefinition[]>;
1582
1571
  get(name: string): Promise<AXPDataSourceDefinition | undefined>;
1583
1572
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPDataSourceDefinitionProviderService, never>;
@@ -1634,69 +1623,6 @@ declare class AXPContentCheckerDirective {
1634
1623
  static ɵdir: i0.ɵɵDirectiveDeclaration<AXPContentCheckerDirective, "[axp-content-checker]", ["checker"], {}, {}, never, never, true, never>;
1635
1624
  }
1636
1625
 
1637
- /**
1638
- * Fullscreen directive that provides CSS-based fullscreen functionality
1639
- * Usage: <element axFullscreen #fullscreen="axFullscreen"></element>
1640
- * Then: fullscreen.toggle() or fullscreen.enter() or fullscreen.exit()
1641
- */
1642
- declare class AXFullscreenDirective implements OnDestroy {
1643
- private elementRef;
1644
- /**
1645
- * Current fullscreen state
1646
- */
1647
- private readonly isFullscreenState;
1648
- /**
1649
- * Original element styles to restore
1650
- */
1651
- private originalStyles;
1652
- /**
1653
- * Original parent element reference
1654
- */
1655
- private originalParent;
1656
- /**
1657
- * Fullscreen container element
1658
- */
1659
- private fullscreenContainer;
1660
- /**
1661
- * Fullscreen change event
1662
- */
1663
- readonly fullscreenChange: i0.OutputEmitterRef<boolean>;
1664
- private readonly destroyRef;
1665
- private readonly renderer;
1666
- constructor(elementRef: ElementRef<HTMLElement>);
1667
- /**
1668
- * Toggle fullscreen state
1669
- */
1670
- toggle(): Promise<void>;
1671
- /**
1672
- * Enter fullscreen mode using CSS
1673
- */
1674
- enter(): Promise<void>;
1675
- /**
1676
- * Exit fullscreen mode
1677
- */
1678
- exit(): Promise<void>;
1679
- /**
1680
- * Check if currently in fullscreen mode
1681
- */
1682
- isFullscreen(): boolean;
1683
- /**
1684
- * Store original element styles
1685
- */
1686
- private storeOriginalStyles;
1687
- /**
1688
- * Restore original element styles
1689
- */
1690
- private restoreOriginalStyles;
1691
- /**
1692
- * Convert camelCase to kebab-case for CSS properties
1693
- */
1694
- private camelToKebabCase;
1695
- ngOnDestroy(): void;
1696
- static ɵfac: i0.ɵɵFactoryDeclaration<AXFullscreenDirective, never>;
1697
- static ɵdir: i0.ɵɵDirectiveDeclaration<AXFullscreenDirective, "[axFullscreen]", ["axFullscreen"], {}, { "fullscreenChange": "fullscreenChange"; }, never, never, true, never>;
1698
- }
1699
-
1700
1626
  type AXPDistributedEventListenerProviderToken<T> = AXPDistributedEventListenerProvider<T> | Promise<AXPDistributedEventListenerProvider<T>>;
1701
1627
  declare const AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER: InjectionToken<AXPDistributedEventListenerProviderToken<any>[]>;
1702
1628
  interface AXPDistributedEventListenerProvider<TInput = any, TOutput = void> {
@@ -1854,592 +1780,524 @@ declare class AXPHookService {
1854
1780
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPHookService>;
1855
1781
  }
1856
1782
 
1857
- /**
1858
- * Feature definition in module manifest.
1859
- * Defines available features with default values.
1860
- */
1861
- interface AXPModuleFeatureDefinition {
1862
- /**
1863
- * Feature title (translation key or literal)
1864
- */
1865
- title: string;
1866
- /**
1867
- * Feature description (translation key or literal)
1868
- */
1869
- description?: string;
1870
- /**
1871
- * Default value for the feature.
1872
- * Used when user doesn't have explicit feature value.
1873
- */
1874
- defaultValue: boolean | number | string | string[] | null;
1875
- /**
1876
- * Type hint for validation and UI rendering
1877
- */
1878
- type?: 'boolean' | 'number' | 'string' | 'array';
1879
- /**
1880
- * Widget interface for feature configuration UI (optional)
1881
- */
1882
- interface?: {
1883
- type: string;
1884
- options?: Record<string, any>;
1885
- };
1783
+ interface AXPStartUpTask {
1784
+ name: string;
1785
+ statusText: string;
1786
+ priority: number;
1787
+ run: () => Promise<void>;
1788
+ }
1789
+
1790
+ declare class AXPAppStartUpService {
1791
+ private tasks;
1792
+ registerTask(task: AXPStartUpTask): void;
1793
+ runAllTasks(): Promise<void>;
1794
+ private updateStatus;
1795
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPAppStartUpService, never>;
1796
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPAppStartUpService>;
1886
1797
  }
1798
+ declare const AXPAppStartUpProvider: i0.EnvironmentProviders;
1799
+
1887
1800
  /**
1888
- * Feature definition in array format (with key).
1889
- * Used when features are defined as an array in manifest.
1801
+ * Status Definition Types
1802
+ * Defines the structure for status definitions and their transitions
1890
1803
  */
1891
- interface AXPModuleFeatureDefinitionWithKey extends AXPModuleFeatureDefinition {
1892
- /**
1893
- * Full feature key (ModuleName.FeatureKey format).
1894
- * When using array format, this must be provided.
1895
- */
1896
- key: string;
1897
- }
1804
+
1898
1805
  /**
1899
- * Module manifest structure.
1900
- * Defines module metadata, features, and provider references.
1806
+ * Status definition with metadata
1901
1807
  */
1902
- interface AXPModuleManifest {
1808
+ interface AXPStatusDefinition {
1903
1809
  /**
1904
- * Module name (must match RootConfig.module.name)
1810
+ * Unique identifier for the status
1905
1811
  */
1906
1812
  name: string;
1907
1813
  /**
1908
- * Module version
1909
- */
1910
- version: string;
1911
- /**
1912
- * Module title (can reference const.ts or be translation key)
1814
+ * Display title for the status
1913
1815
  */
1914
1816
  title: string;
1915
1817
  /**
1916
- * Module description (optional)
1818
+ * Color code or semantic color name for the status
1917
1819
  */
1918
- description?: string;
1820
+ color: string;
1919
1821
  /**
1920
- * Module icon (can reference const.ts)
1822
+ * Optional icon class (e.g., 'fa-light fa-check')
1921
1823
  */
1922
1824
  icon?: string;
1923
1825
  /**
1924
- * i18n scope name (can reference const.ts)
1826
+ * Optional description
1925
1827
  */
1926
- i18n?: string;
1828
+ description?: string;
1927
1829
  /**
1928
- * Permission provider reference (lazy-loaded).
1830
+ * Optional order for sorting
1929
1831
  */
1930
- permissions?: {
1931
- provider: () => Promise<any>;
1932
- };
1832
+ order?: number;
1933
1833
  /**
1934
- * Menu provider reference (lazy-loaded).
1834
+ * Whether this status is active/available
1935
1835
  */
1936
- menus?: {
1937
- provider: () => Promise<any>;
1938
- };
1836
+ isActive?: boolean;
1939
1837
  /**
1940
- * Entity definition provider reference (lazy-loaded).
1838
+ * Whether this is a final status (end state)
1941
1839
  */
1942
- entities?: {
1943
- provider: () => Promise<any>;
1944
- };
1840
+ isFinal?: boolean;
1945
1841
  /**
1946
- * Settings provider reference (lazy-loaded).
1842
+ * Whether this is an initial status (starting state)
1947
1843
  */
1948
- settings?: {
1949
- provider: () => Promise<any>;
1950
- };
1844
+ isInitial?: boolean;
1951
1845
  /**
1952
- * Search provider reference (lazy-loaded).
1846
+ * Whether list views should be automatically generated for this status
1953
1847
  */
1954
- search?: {
1955
- provider: () => Promise<any>;
1956
- };
1848
+ generateView?: boolean;
1849
+ }
1850
+ /**
1851
+ * Status transition definition
1852
+ */
1853
+ interface AXPStatusTransition {
1957
1854
  /**
1958
- * Feature definition provider reference (lazy-loaded).
1959
- * Used to provide feature definitions for the module.
1855
+ * Source status name
1960
1856
  */
1961
- features?: {
1962
- provider: () => Promise<any>;
1963
- };
1857
+ from: string;
1964
1858
  /**
1965
- * Data source provider reference (lazy-loaded).
1859
+ * Target status name
1966
1860
  */
1967
- datasources?: {
1968
- provider: () => Promise<any>;
1969
- };
1861
+ to: string;
1970
1862
  /**
1971
- * Component slots provider reference (lazy-loaded).
1972
- * Returns component slot configurations grouped by slot name.
1973
- * Slots registered via manifest are loaded after application selection.
1974
- * Module-level registration (AXPComponentSlotModule.forChild) still works for immediate availability.
1863
+ * Optional condition expression to evaluate before allowing transition
1864
+ * Uses expression evaluator syntax (e.g., "{{user.isAdmin}}", "{{item.priority > 5}}")
1975
1865
  */
1976
- componentSlots?: {
1977
- provider: () => Promise<any>;
1978
- };
1866
+ condition?: string;
1979
1867
  /**
1980
- * Module dependencies
1868
+ * Optional display title for the transition
1981
1869
  */
1982
- dependencies?: {
1983
- /**
1984
- * Required module names
1985
- */
1986
- modules?: string[];
1987
- /**
1988
- * Required feature keys (full format: ModuleName.FeatureKey)
1989
- */
1990
- features?: string[];
1991
- };
1870
+ title?: string;
1992
1871
  /**
1993
- * Whether this module is required (always enabled, cannot be disabled).
1994
- * Required modules like 'auth' and 'common' are always available.
1872
+ * Optional description
1995
1873
  */
1996
- required?: boolean;
1874
+ description?: string;
1997
1875
  /**
1998
- * Additional metadata
1876
+ * Optional action identifier
1999
1877
  */
2000
- metadata?: {
2001
- [key: string]: any;
2002
- };
2003
- }
2004
- /**
2005
- * Full feature name with module prefix.
2006
- * Format: ModuleName.FeatureKey
2007
- */
2008
- type AXPFeatureName = string;
2009
- /**
2010
- * Feature definition with full name.
2011
- */
2012
- interface AXPFeatureDefinition extends AXPModuleFeatureDefinition {
1878
+ action?: string;
2013
1879
  /**
2014
- * Full feature name (ModuleName.FeatureKey)
1880
+ * Optional color for the transition button/indicator
2015
1881
  */
2016
- name: AXPFeatureName;
1882
+ color?: string;
2017
1883
  /**
2018
- * Module name
1884
+ * Optional icon for the transition
2019
1885
  */
2020
- module: string;
1886
+ icon?: string;
2021
1887
  /**
2022
- * Feature key (short name)
1888
+ * Whether this transition is automatic (no user action required)
2023
1889
  */
2024
- key: string;
1890
+ isAutomatic?: boolean;
1891
+ /**
1892
+ * Whether this transition requires approval
1893
+ */
1894
+ requiresApproval?: boolean;
2025
1895
  }
2026
-
2027
1896
  /**
2028
- * Injection token for module manifest providers.
2029
- * Modules register their manifest providers using this token.
1897
+ * Abstract class for status providers
1898
+ * Similar to AXPTaskBadgeProvider pattern
2030
1899
  */
2031
- declare const AXP_MODULE_MANIFEST_PROVIDER: InjectionToken<AXPModuleManifest[]>;
2032
-
2033
- /**
2034
- * Registry service for module manifests.
2035
- * Collects and manages all registered module manifests.
2036
- */
2037
- declare class AXPModuleManifestRegistry {
2038
- private readonly manifests;
2039
- private readonly featureDefinitions;
2040
- private readonly injector;
2041
- private initializationPromise;
2042
- private isInitialized;
2043
- /**
2044
- * Initialize registry by loading all manifest providers.
2045
- * Should be called during app startup.
2046
- * Safe to call multiple times - will only initialize once.
2047
- */
2048
- initialize(): Promise<void>;
2049
- /**
2050
- * Internal initialization logic.
2051
- */
2052
- private _doInitialize;
2053
- /**
2054
- * Register a module manifest.
2055
- */
2056
- register(manifest: AXPModuleManifest): Promise<void>;
1900
+ declare abstract class AXPStatusProvider {
2057
1901
  /**
2058
- * Get manifest for a module.
1902
+ * Unique key for the status (e.g., 'task-management.status')
2059
1903
  */
2060
- get(moduleName: string): AXPModuleManifest | undefined;
1904
+ abstract readonly key: string;
2061
1905
  /**
2062
- * Get all registered manifests.
1906
+ * List of available status definitions
2063
1907
  */
2064
- getAll(): AXPModuleManifest[];
1908
+ abstract readonly statuses: AXPStatusDefinition[];
2065
1909
  /**
2066
- * Check if a module manifest is registered.
1910
+ * List of allowed transitions between statuses
2067
1911
  */
2068
- has(moduleName: string): boolean;
1912
+ abstract readonly transitions: AXPStatusTransition[];
2069
1913
  /**
2070
- * Get all feature definitions from all manifests.
1914
+ * Optional default status name
2071
1915
  */
2072
- getAllFeatureDefinitions(): AXPFeatureDefinition[];
1916
+ abstract readonly defaultStatus?: string;
2073
1917
  /**
2074
- * Get feature definition by full name.
1918
+ * Optional workflow actions that should be exposed on entity lists/records
2075
1919
  */
2076
- getFeatureDefinition(featureName: AXPFeatureName): AXPFeatureDefinition | undefined;
1920
+ readonly workflowActions?: AXPStatusWorkflowAction[];
1921
+ }
1922
+ type AXPStatusActionPriority = 'primary' | 'secondary';
1923
+ type AXPStatusActionScope = 'individual' | 'selected' | 'typeLevel' | 'section';
1924
+ interface AXPStatusWorkflowAction {
2077
1925
  /**
2078
- * Check if a feature is defined in any manifest.
1926
+ * Unique action name
2079
1927
  */
2080
- isFeatureDefined(featureName: AXPFeatureName): boolean;
1928
+ name: string;
2081
1929
  /**
2082
- * Get default value for a feature.
2083
- * Returns undefined if feature is not defined.
1930
+ * Localized title key
2084
1931
  */
2085
- getFeatureDefault(featureName: AXPFeatureName): any;
1932
+ title: string;
2086
1933
  /**
2087
- * Get all feature definitions for a specific module.
1934
+ * Command descriptor to execute
2088
1935
  */
2089
- getModuleFeatures(moduleName: string): AXPFeatureDefinition[];
1936
+ command: {
1937
+ name: string;
1938
+ options?: Record<string, unknown>;
1939
+ };
2090
1940
  /**
2091
- * Register a feature definition dynamically (e.g., from feature definition provider).
2092
- * Used to add features that are defined at runtime via featuresProvider.
1941
+ * Optional hidden expression
2093
1942
  */
2094
- registerFeatureDefinition(definition: AXPFeatureDefinition): void;
1943
+ hidden?: string;
2095
1944
  /**
2096
- * Check if module dependencies are satisfied.
2097
- * Returns array of missing dependencies.
1945
+ * Action priority (primary/secondary)
2098
1946
  */
2099
- checkDependencies(moduleName: string): {
2100
- missingModules: string[];
2101
- missingFeatures: string[];
2102
- };
2103
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPModuleManifestRegistry, never>;
2104
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPModuleManifestRegistry>;
2105
- }
2106
-
2107
- interface AXPStartUpTask {
2108
- name: string;
2109
- statusText: string;
2110
- priority: number;
2111
- run: () => Promise<void>;
2112
- }
2113
-
2114
- /**
2115
- * Startup task to initialize module manifest registry.
2116
- * Registers this task with app startup service.
2117
- */
2118
- declare class AXPModuleManifestInitializer {
2119
- private readonly manifestRegistry;
1947
+ priority?: AXPStatusActionPriority;
2120
1948
  /**
2121
- * Create startup task for manifest initialization.
1949
+ * System action type for telemetry/audit
2122
1950
  */
2123
- createStartupTask(): AXPStartUpTask;
2124
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPModuleManifestInitializer, never>;
2125
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPModuleManifestInitializer>;
2126
- }
2127
-
2128
- /**
2129
- * Context for feature definition providers.
2130
- * Allows providers to add additional feature definitions dynamically.
2131
- */
2132
- declare class AXPFeatureDefinitionProviderContext {
2133
- private readonly features;
1951
+ type?: AXPSystemActionType;
2134
1952
  /**
2135
- * Add a feature definition.
2136
- * @param key Full feature key (ModuleName:FeatureKey format with colon separator)
2137
- * @param definition Feature definition
1953
+ * Command scope (individual, selected, typeLevel, section)
2138
1954
  */
2139
- addFeature(key: string, definition: AXPModuleFeatureDefinition): void;
1955
+ scope?: AXPStatusActionScope;
2140
1956
  /**
2141
- * Get all feature definitions.
1957
+ * Whether action should be rendered separated from others
2142
1958
  */
2143
- getFeatures(): Map<string, AXPModuleFeatureDefinition>;
2144
- }
2145
- /**
2146
- * Interface for feature definition providers.
2147
- * Used to dynamically provide feature definitions for modules.
2148
- */
2149
- interface AXPFeatureDefinitionProvider {
1959
+ separated?: boolean;
2150
1960
  /**
2151
- * Provide feature definitions.
2152
- * @param context Context for adding feature definitions
1961
+ * Optional icon representation
2153
1962
  */
2154
- provide(context: AXPFeatureDefinitionProviderContext): Promise<void>;
1963
+ icon?: string;
2155
1964
  }
2156
- /**
2157
- * Injection token for feature definition providers.
2158
- */
2159
- declare const AXP_FEATURE_DEFINITION_PROVIDER: InjectionToken<AXPFeatureDefinitionProvider[]>;
2160
1965
 
2161
1966
  /**
2162
- * Minimal provider interfaces for the module provider registry.
2163
- * These interfaces are defined in core to avoid circular dependencies.
2164
- * The actual implementations in platform/auth and platform/common implement these interfaces.
2165
- */
2166
- /**
2167
- * Permission definition provider interface.
2168
- * Actual implementation: @acorex/platform/auth
2169
- */
2170
- interface AXPIPermissionDefinitionProvider {
2171
- define(context: any): Promise<void>;
2172
- }
2173
- /**
2174
- * Menu provider interface.
2175
- * Actual implementation: @acorex/platform/common
1967
+ * Injection token for status providers
1968
+ * Use with multi: true to register multiple providers
2176
1969
  */
2177
- interface AXPIMenuProvider {
2178
- provide(context: any): Promise<void>;
2179
- }
2180
- /**
2181
- * Setting definition provider interface.
2182
- * Actual implementation: @acorex/platform/common
2183
- */
2184
- interface AXPISettingDefinitionProvider {
2185
- provide(context: any): Promise<void>;
2186
- }
1970
+ declare const AXP_STATUS_PROVIDERS: InjectionToken<AXPStatusProvider[]>;
2187
1971
  /**
2188
- * Search command provider interface.
2189
- * Actual implementation: @acorex/platform/common
2190
- */
2191
- interface AXPISearchCommandProvider {
2192
- search(text: string): Promise<any[]>;
2193
- commands?: any[];
2194
- }
2195
- /**
2196
- * Entity definition loader interface.
2197
- * Actual implementation: @acorex/platform/layout/entity
2198
- */
2199
- interface AXIEntityDefinitionLoader {
2200
- get(moduleName: string, entityName: string): Promise<any | null>;
2201
- }
2202
- /**
2203
- * Edition service interface for querying edition information.
2204
- * Actual implementation: @acorex/modules/application-management
1972
+ * Service for managing status definitions from multiple providers
1973
+ * Similar to AXPTaskBadgeService pattern - no cache, direct access
2205
1974
  *
2206
- * This interface is defined in core to avoid circular dependencies.
2207
- * Modules provide implementations that extend AXMEntityCrudServiceImpl.
2208
- */
2209
- interface AXPIEditionService {
2210
- /**
2211
- * Query editions with pagination and filtering.
2212
- * @param request Query request with skip, take, and optional filters
2213
- * @returns Promise that resolves to paged list of editions
2214
- */
2215
- query(request: {
2216
- skip: number;
2217
- take: number;
2218
- [key: string]: any;
2219
- }): Promise<{
2220
- items: Array<{
2221
- id: string;
2222
- title: string;
2223
- modulesAndFeatures?: {
2224
- modules: string[];
2225
- features: Record<string, any>;
2226
- };
2227
- [key: string]: any;
2228
- }>;
2229
- total: number;
2230
- }>;
2231
- }
2232
- /**
2233
- * Injection token for edition service.
2234
- * Modules should provide their implementation using this token.
2235
- */
2236
- declare const AXP_EDITION_SERVICE: InjectionToken<AXPIEditionService>;
2237
- /**
2238
- * Module provider loader interface.
2239
- * Implementation: @acorex/platform/auth
2240
- */
2241
- interface AXPIModuleProviderLoader {
2242
- loadRequiredModules(): Promise<void>;
2243
- loadProviders(context: any): Promise<void>;
2244
- clear(): Promise<void>;
2245
- isModuleRegistered(moduleName: string): boolean;
2246
- }
2247
- /**
2248
- * Injection token for module provider loader.
2249
- * Implementation: @acorex/platform/auth
2250
- */
2251
- 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
- /**
2268
- * Session service interface for module provider operations.
2269
- * Implementation: @acorex/platform/auth
1975
+ * @example
1976
+ * ```typescript
1977
+ * // In a module providers array:
1978
+ * {
1979
+ * provide: AXP_STATUS_PROVIDERS,
1980
+ * useClass: TaskStatusProvider,
1981
+ * multi: true,
1982
+ * }
1983
+ *
1984
+ * // Example provider implementation:
1985
+ * export class TaskStatusProvider extends AXPStatusProvider {
1986
+ * readonly key = 'task-management.status';
1987
+ * readonly statuses = [
1988
+ * { name: 'todo', title: 'To Do', color: '#6b7280', icon: 'fa-light fa-circle', isInitial: true },
1989
+ * { name: 'in-progress', title: 'In Progress', color: '#3b82f6', icon: 'fa-light fa-play' },
1990
+ * { name: 'done', title: 'Done', color: '#10b981', icon: 'fa-light fa-check-circle', isFinal: true },
1991
+ * ];
1992
+ * readonly transitions = [
1993
+ * { from: 'todo', to: 'in-progress', title: 'Start', condition: '{{user.canEdit}}' },
1994
+ * { from: 'in-progress', to: 'done', title: 'Complete' },
1995
+ * ];
1996
+ * readonly defaultStatus = 'todo';
1997
+ * }
1998
+ *
1999
+ * // Later, get the status:
2000
+ * const status = statusService.getStatus('task-management.status');
2001
+ * if (status) {
2002
+ * console.log('Statuses:', status.statuses);
2003
+ * console.log('Transitions:', status.transitions);
2004
+ * }
2005
+ * ```
2270
2006
  */
2271
- interface AXPISessionService {
2272
- isLoading$: any;
2273
- status$: any;
2274
- tenant: any | null;
2275
- application: any | null;
2276
- user: any | null;
2007
+ declare class AXPStatusDefinitionProviderService {
2008
+ private providers;
2009
+ private statusMap;
2010
+ constructor();
2011
+ /**
2012
+ * Get a status provider by key
2013
+ * Direct access from Map (no lazy load, no cache)
2014
+ *
2015
+ * @param key - Status key (e.g., 'task-management.status')
2016
+ * @returns Status provider with all statuses and transitions, or undefined if not found
2017
+ *
2018
+ * @example
2019
+ * ```typescript
2020
+ * const status = statusService.getStatus('task-management.status');
2021
+ * if (status) {
2022
+ * console.log('Statuses:', status.statuses);
2023
+ * console.log('Transitions:', status.transitions);
2024
+ * }
2025
+ * ```
2026
+ */
2027
+ getStatus(key: string): AXPStatusProvider | undefined;
2028
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPStatusDefinitionProviderService, never>;
2029
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPStatusDefinitionProviderService>;
2277
2030
  }
2278
- /**
2279
- * Injection token for session service.
2280
- * Implementation: @acorex/platform/auth
2281
- */
2282
- declare const AXP_SESSION_SERVICE: InjectionToken<AXPISessionService>;
2283
2031
 
2284
2032
  /**
2285
- * Registry service for dynamically loaded module providers.
2286
- * Stores provider instances that are loaded conditionally based on access control.
2033
+ * Standard system status types
2034
+ * These are the predefined status values used across the platform
2287
2035
  */
2288
- declare class AXPModuleProviderRegistry {
2289
- private readonly permissionProviders;
2290
- private readonly menuProviders;
2291
- private readonly entityProviders;
2292
- private readonly settingProviders;
2293
- private readonly searchProviders;
2294
- private readonly featureProviders;
2295
- private readonly datasourceProviders;
2296
- /**
2297
- * Register a permission provider.
2298
- */
2299
- registerPermissionProvider(provider: AXPIPermissionDefinitionProvider): void;
2300
- /**
2301
- * Get all registered permission providers.
2302
- */
2303
- getPermissionProviders(): AXPIPermissionDefinitionProvider[];
2304
- /**
2305
- * Register a menu provider.
2306
- */
2307
- registerMenuProvider(provider: AXPIMenuProvider): void;
2308
- /**
2309
- * Get all registered menu providers.
2310
- */
2311
- getMenuProviders(): AXPIMenuProvider[];
2312
- /**
2313
- * Register an entity provider.
2314
- */
2315
- registerEntityProvider(provider: AXIEntityDefinitionLoader): void;
2316
- /**
2317
- * Get all registered entity providers.
2318
- */
2319
- getEntityProviders(): AXIEntityDefinitionLoader[];
2320
- /**
2321
- * Register a settings provider.
2322
- */
2323
- registerSettingProvider(provider: AXPISettingDefinitionProvider): void;
2324
- /**
2325
- * Get all registered settings providers.
2326
- */
2327
- getSettingProviders(): AXPISettingDefinitionProvider[];
2328
- /**
2329
- * Register a search provider.
2330
- */
2331
- registerSearchProvider(provider: AXPISearchCommandProvider): void;
2332
- /**
2333
- * Get all registered search providers.
2334
- */
2335
- getSearchProviders(): AXPISearchCommandProvider[];
2336
- /**
2337
- * Register a feature provider.
2338
- */
2339
- registerFeatureProvider(provider: AXPFeatureDefinitionProvider): void;
2340
- /**
2341
- * Get all registered feature providers.
2342
- */
2343
- getFeatureProviders(): AXPFeatureDefinitionProvider[];
2344
- /**
2345
- * Register a datasource provider.
2346
- */
2347
- registerDatasourceProvider(provider: AXPDataSourceDefinitionProvider): void;
2348
- /**
2349
- * Get all registered datasource providers.
2350
- */
2351
- getDatasourceProviders(): AXPDataSourceDefinitionProvider[];
2352
- /**
2353
- * Clear all registered providers.
2354
- * Useful for testing or re-initialization.
2355
- */
2356
- clear(): void;
2357
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPModuleProviderRegistry, never>;
2358
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPModuleProviderRegistry>;
2036
+ declare enum AXPSystemStatusType {
2037
+ Todo = "todo",
2038
+ InProgress = "in-progress",
2039
+ InReview = "in-review",
2040
+ Blocked = "blocked",
2041
+ Done = "done",
2042
+ Cancelled = "cancelled",
2043
+ Draft = "draft",
2044
+ PendingReview = "pending-review",
2045
+ Approved = "approved",
2046
+ Published = "published",
2047
+ Archived = "archived",
2048
+ Rejected = "rejected",
2049
+ Active = "active",
2050
+ Inactive = "inactive",
2051
+ Pending = "pending",
2052
+ Completed = "completed",
2053
+ Suspended = "suspended",
2054
+ Failed = "failed",
2055
+ Review = "review"
2359
2056
  }
2360
-
2361
2057
  /**
2362
- * Access control context for module loading.
2363
- * Note: Types are defined locally to avoid circular dependency with @acorex/platform/auth
2364
- * These types match the structure of AXPTenant, AXPApplication, and AXPUser
2058
+ * Standard system status definitions
2059
+ * Provides consistent status definitions across the platform
2060
+ * Uses AXPStatusDefinition interface from status-definition.types.ts
2365
2061
  */
2366
- interface AXPModuleAccessContext {
2367
- tenant: {
2368
- id: string;
2369
- name: string;
2370
- title: string;
2371
- description?: string;
2372
- logo?: any;
2373
- [key: string]: any;
2374
- };
2375
- application: {
2376
- id: string;
2377
- name: string;
2378
- title?: string;
2379
- version?: string;
2380
- edition?: {
2381
- id: string;
2382
- title: string;
2383
- description?: string;
2384
- };
2385
- description?: string;
2386
- logo?: any;
2387
- [key: string]: any;
2388
- };
2389
- edition: {
2390
- id: string;
2391
- title: string;
2392
- modulesAndFeatures?: {
2393
- modules: string[];
2394
- features: Record<string, any>;
2395
- };
2062
+ declare const AXPSystemStatuses: Readonly<{
2063
+ readonly Todo: {
2064
+ readonly name: AXPSystemStatusType.Todo;
2065
+ readonly title: string;
2066
+ readonly icon: "fa-light fa-circle";
2067
+ readonly color: "secondary";
2068
+ readonly description: string;
2069
+ readonly order: 1;
2070
+ readonly isActive: true;
2071
+ readonly isInitial: true;
2072
+ readonly isFinal: false;
2073
+ };
2074
+ readonly InProgress: {
2075
+ readonly name: AXPSystemStatusType.InProgress;
2076
+ readonly title: string;
2077
+ readonly icon: "fa-light fa-play";
2078
+ readonly color: "info";
2079
+ readonly description: string;
2080
+ readonly order: 2;
2081
+ readonly isActive: true;
2082
+ readonly isInitial: false;
2083
+ readonly isFinal: false;
2084
+ };
2085
+ readonly InReview: {
2086
+ readonly name: AXPSystemStatusType.InReview;
2087
+ readonly title: string;
2088
+ readonly icon: "fa-light fa-eye";
2089
+ readonly color: "info";
2090
+ readonly description: string;
2091
+ readonly order: 3;
2092
+ readonly isActive: true;
2093
+ readonly isInitial: false;
2094
+ readonly isFinal: false;
2095
+ };
2096
+ readonly Blocked: {
2097
+ readonly name: AXPSystemStatusType.Blocked;
2098
+ readonly title: string;
2099
+ readonly icon: "fa-light fa-ban";
2100
+ readonly color: "danger";
2101
+ readonly description: string;
2102
+ readonly order: 4;
2103
+ readonly isActive: true;
2104
+ readonly isInitial: false;
2105
+ readonly isFinal: false;
2106
+ };
2107
+ readonly Done: {
2108
+ readonly name: AXPSystemStatusType.Done;
2109
+ readonly title: string;
2110
+ readonly icon: "fa-light fa-check-circle";
2111
+ readonly color: "success";
2112
+ readonly description: string;
2113
+ readonly order: 5;
2114
+ readonly isActive: true;
2115
+ readonly isInitial: false;
2116
+ readonly isFinal: true;
2117
+ };
2118
+ readonly Cancelled: {
2119
+ readonly name: AXPSystemStatusType.Cancelled;
2120
+ readonly title: string;
2121
+ readonly icon: "fa-light fa-times-circle";
2122
+ readonly color: "neutral";
2123
+ readonly description: string;
2124
+ readonly order: 6;
2125
+ readonly isActive: true;
2126
+ readonly isInitial: false;
2127
+ readonly isFinal: true;
2128
+ };
2129
+ readonly Draft: {
2130
+ readonly name: AXPSystemStatusType.Draft;
2131
+ readonly title: string;
2132
+ readonly icon: "fa-light fa-file-pen";
2133
+ readonly color: "neutral";
2134
+ readonly description: string;
2135
+ readonly order: 1;
2136
+ readonly isActive: true;
2137
+ readonly isInitial: true;
2138
+ readonly isFinal: false;
2139
+ };
2140
+ readonly PendingReview: {
2141
+ readonly name: AXPSystemStatusType.PendingReview;
2142
+ readonly title: string;
2143
+ readonly icon: "fa-light fa-clock";
2144
+ readonly color: "warning";
2145
+ readonly description: string;
2146
+ readonly order: 2;
2147
+ readonly isActive: true;
2148
+ readonly isInitial: false;
2149
+ readonly isFinal: false;
2150
+ };
2151
+ readonly Approved: {
2152
+ readonly name: AXPSystemStatusType.Approved;
2153
+ readonly title: string;
2154
+ readonly icon: "fa-light fa-check-circle";
2155
+ readonly color: "success";
2156
+ readonly description: string;
2157
+ readonly order: 3;
2158
+ readonly isActive: true;
2159
+ readonly isInitial: false;
2160
+ readonly isFinal: false;
2161
+ };
2162
+ readonly Published: {
2163
+ readonly name: AXPSystemStatusType.Published;
2164
+ readonly title: string;
2165
+ readonly icon: "fa-light fa-globe";
2166
+ readonly color: "primary";
2167
+ readonly description: string;
2168
+ readonly order: 4;
2169
+ readonly isActive: true;
2170
+ readonly isInitial: false;
2171
+ readonly isFinal: false;
2172
+ };
2173
+ readonly Archived: {
2174
+ readonly name: AXPSystemStatusType.Archived;
2175
+ readonly title: string;
2176
+ readonly icon: "fa-light fa-archive";
2177
+ readonly color: "neutral";
2178
+ readonly description: string;
2179
+ readonly order: 5;
2180
+ readonly isActive: true;
2181
+ readonly isInitial: false;
2182
+ readonly isFinal: true;
2183
+ };
2184
+ readonly Rejected: {
2185
+ readonly name: AXPSystemStatusType.Rejected;
2186
+ readonly title: string;
2187
+ readonly icon: "fa-light fa-times-circle";
2188
+ readonly color: "danger";
2189
+ readonly description: string;
2190
+ readonly order: 6;
2191
+ readonly isActive: true;
2192
+ readonly isInitial: false;
2193
+ readonly isFinal: true;
2194
+ };
2195
+ readonly Active: {
2196
+ readonly name: AXPSystemStatusType.Active;
2197
+ readonly title: string;
2198
+ readonly icon: "fa-light fa-check-circle";
2199
+ readonly color: "success";
2200
+ readonly description: string;
2201
+ readonly order: 1;
2202
+ readonly isActive: true;
2203
+ readonly isInitial: false;
2204
+ readonly isFinal: false;
2205
+ };
2206
+ readonly Inactive: {
2207
+ readonly name: AXPSystemStatusType.Inactive;
2208
+ readonly title: string;
2209
+ readonly icon: "fa-light fa-circle";
2210
+ readonly color: "secondary";
2211
+ readonly description: string;
2212
+ readonly order: 2;
2213
+ readonly isActive: true;
2214
+ readonly isInitial: false;
2215
+ readonly isFinal: false;
2216
+ };
2217
+ readonly Pending: {
2218
+ readonly name: AXPSystemStatusType.Pending;
2219
+ readonly title: string;
2220
+ readonly icon: "fa-light fa-clock";
2221
+ readonly color: "warning";
2222
+ readonly description: string;
2223
+ readonly order: 1;
2224
+ readonly isActive: true;
2225
+ readonly isInitial: true;
2226
+ readonly isFinal: false;
2227
+ };
2228
+ readonly Completed: {
2229
+ readonly name: AXPSystemStatusType.Completed;
2230
+ readonly title: string;
2231
+ readonly icon: "fa-light fa-check-circle";
2232
+ readonly color: "success";
2233
+ readonly description: string;
2234
+ readonly order: 10;
2235
+ readonly isActive: true;
2236
+ readonly isInitial: false;
2237
+ readonly isFinal: true;
2238
+ };
2239
+ readonly Suspended: {
2240
+ readonly name: AXPSystemStatusType.Suspended;
2241
+ readonly title: string;
2242
+ readonly icon: "fa-light fa-pause-circle";
2243
+ readonly color: "neutral";
2244
+ readonly description: string;
2245
+ readonly order: 5;
2246
+ readonly isActive: true;
2247
+ readonly isInitial: false;
2248
+ readonly isFinal: false;
2249
+ };
2250
+ readonly Failed: {
2251
+ readonly name: AXPSystemStatusType.Failed;
2252
+ readonly title: string;
2253
+ readonly icon: "fa-light fa-xmark-circle";
2254
+ readonly color: "danger";
2255
+ readonly description: string;
2256
+ readonly order: 10;
2257
+ readonly isActive: true;
2258
+ readonly isInitial: false;
2259
+ readonly isFinal: true;
2396
2260
  };
2397
- subscription?: any;
2398
- user: {
2399
- id: string;
2400
- name: string;
2401
- title: string;
2402
- avatar?: string;
2403
- [key: string]: any;
2261
+ readonly Review: {
2262
+ readonly name: AXPSystemStatusType.Review;
2263
+ readonly title: string;
2264
+ readonly icon: "fa-light fa-eye";
2265
+ readonly color: "info";
2266
+ readonly description: string;
2267
+ readonly order: 3;
2268
+ readonly isActive: true;
2404
2269
  };
2405
- }
2270
+ }>;
2406
2271
  /**
2407
- * Service for checking module access control.
2408
- * Provides centralized access control logic that can be overridden per module.
2272
+ * Get system status definition by type
2273
+ * @param type - Status type
2274
+ * @returns System status definition or undefined
2409
2275
  */
2410
- interface AXPModuleAccessControlService {
2411
- /**
2412
- * Check if user has access to a module based on context.
2413
- * @param moduleName Module name to check access for
2414
- * @param context Access control context
2415
- * @returns true if module should be loaded, false otherwise
2416
- */
2417
- checkAccess(moduleName: string, context: AXPModuleAccessContext): boolean | Promise<boolean>;
2418
- }
2276
+ declare function getSystemStatus(type: AXPSystemStatusType): AXPStatusDefinition;
2419
2277
  /**
2420
- * Default implementation of module access control service.
2421
- * Checks if module is enabled in edition.modulesAndFeatures.modules.
2278
+ * Resolves the visual appearance (color and icon) for status
2279
+ * using the system statuses from the core module.
2280
+ * @param statusType - Status type string
2281
+ * @returns Color and icon for the status
2422
2282
  */
2423
- declare class DefaultModuleAccessControlService implements AXPModuleAccessControlService {
2424
- checkAccess(moduleName: string, context: AXPModuleAccessContext): boolean;
2425
- static ɵfac: i0.ɵɵFactoryDeclaration<DefaultModuleAccessControlService, never>;
2426
- static ɵprov: i0.ɵɵInjectableDeclaration<DefaultModuleAccessControlService>;
2427
- }
2283
+ declare function resolveStatusLook(statusType: string): {
2284
+ color: AXStyleColorType;
2285
+ icon: string;
2286
+ };
2428
2287
  /**
2429
- * Injection token for module access control service.
2430
- * If not provided, DefaultModuleAccessControlService will be used as fallback.
2288
+ * Resolves the complete status information (title, description, icon, color) for a status
2289
+ * using the system statuses from the core module.
2290
+ * @param statusType - Status type string
2291
+ * @returns Complete status information as AXPStatusDefinition
2431
2292
  */
2432
- declare const AXP_MODULE_ACCESS_CONTROL_SERVICE: InjectionToken<AXPModuleAccessControlService>;
2433
-
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;
2293
+ declare function getStatusInfo(statusType: string): AXPStatusDefinition;
2294
+ /**
2295
+ * Get system status definition directly (no conversion needed since it's already AXPStatusDefinition)
2296
+ * @param statusType - Status type
2297
+ * @param overrides - Optional overrides for the status definition
2298
+ * @returns AXPStatusDefinition
2299
+ */
2300
+ declare function systemStatusToDefinition(statusType: AXPSystemStatusType, overrides?: Partial<AXPStatusDefinition>): AXPStatusDefinition;
2443
2301
 
2444
2302
  /**
2445
2303
  * Represents a tag with text, color, and metadata
@@ -2711,5 +2569,5 @@ declare function extractTextFromHtml(value: string): string;
2711
2569
  */
2712
2570
  declare function generateKebabCase(title: string): string;
2713
2571
 
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, AXPModuleManifestInitializer, 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_INITIALIZER, 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 };
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, AXPIModuleProviderInitializer, 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 };
2572
+ export { 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, AXPGridLayoutDirective, AXPHookService, AXPImageUrlLogoConfig, AXPPlatformScope, AXPScreenSize, AXPStatusDefinitionProviderService, AXPStatusProvider, AXPSystemActionType, AXPSystemActions, AXPSystemStatusType, AXPSystemStatuses, AXPTagProvider, AXPTagService, AXP_ACTIVITY_LOG_PROVIDER, AXP_COLOR_PALETTE_PROVIDER, AXP_DATASOURCE_DEFINITION_PROVIDER, AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER, AXP_STATUS_PROVIDERS, AXP_TAG_PROVIDER, applyFilterArray, applyPagination, applyQueryArray, applySortArray, applySystemActionDefault, cleanDeep, extractNestedFieldsWildcard, extractTextFromHtml, extractValue, generateKebabCase, getActionButton, getChangedPaths, getDetailedChanges, getEnumValues, getNestedKeys, getSmart, getStatusInfo, getSystemActions, getSystemStatus, objectKeyValueTransforms, resolveActionLook, resolvePlatformScopeKey, resolvePlatformScopeName, resolveStatusLook, setSmart, systemStatusToDefinition };
2573
+ export type { 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, AXPFileListItem, AXPFileSource, AXPFileStatus, AXPFilterDefinition, AXPFilterLogic, AXPFilterOperation, AXPFilterQuery, AXPFlowDirection, AXPGridLayoutOptions, AXPGridPlacement, AXPLogoConfig, AXPMaxLengthValidationRule, AXPMetaData, AXPMiddlewareErrorResponse, AXPMinLengthValidationRule, AXPNavigateActionCommand, AXPNavigateActionOptions, AXPOptionsData, AXPPagedListResult, AXPPartialNested, AXPPlatformScopeKey, AXPQueryFetchResult, AXPQueryRequest, AXPReqexValidationRule, AXPRequiredValidationRule, AXPSortDefinition, AXPSortQuery, AXPStartUpTask, AXPStatusActionPriority, AXPStatusActionScope, AXPStatusDefinition, AXPStatusTransition, AXPStatusWorkflowAction, AXPStringValidationRules, AXPSystemAction, AXPTag, AXPTagFilterOptions, AXPUserReference, AXPValidationRule, AXPValidationRules, AXPValueTransformerFunction, AXPValueTransformerFunctions, AXPValueUnit, AXPValueUnits, AXPViewBlockDefinition, AXPViewDefinition, AXPViewFieldDefinition, AXPViewQuery, AXPWidgetTrigger, AXPWidgetTriggers };