@acorex/platform 19.3.0-next.2 → 19.3.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.
Files changed (69) hide show
  1. package/auth/lib/application/application.types.d.ts +1 -1
  2. package/auth/lib/tenant/tenant.types.d.ts +1 -1
  3. package/common/index.d.ts +1 -0
  4. package/common/lib/app/application.types.d.ts +1 -1
  5. package/common/lib/app/index.d.ts +1 -0
  6. package/common/lib/configs/app.config.d.ts +1 -1
  7. package/common/lib/home-page/home-page-settings.key.d.ts +3 -0
  8. package/common/lib/home-page/home-page-settings.provider.d.ts +12 -0
  9. package/common/lib/home-page/home-page.module.d.ts +6 -0
  10. package/common/lib/home-page/home-page.routes.d.ts +2 -0
  11. package/common/lib/home-page/home-page.service.d.ts +24 -0
  12. package/common/lib/home-page/home-page.types.d.ts +9 -0
  13. package/common/lib/home-page/index.d.ts +4 -0
  14. package/common/lib/layout/logo/index.d.ts +0 -1
  15. package/common/lib/settings/setting.builder.d.ts +1 -1
  16. package/core/lib/data/data-generator.d.ts +2 -1
  17. package/core/lib/types/index.d.ts +4 -3
  18. package/core/lib/utils/object-util.d.ts +1 -0
  19. package/fesm2022/acorex-platform-auth.mjs +0 -1
  20. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-common.mjs +1556 -1393
  22. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-core.mjs +173 -113
  24. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  25. package/fesm2022/acorex-platform-layout-builder.mjs +2 -0
  26. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  27. package/fesm2022/acorex-platform-layout-entity.mjs +25 -37
  28. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  29. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-BqMlSX6b.mjs → acorex-platform-themes-default-entity-master-list-view.component-CuyWAi6X.mjs} +31 -20
  30. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CuyWAi6X.mjs.map +1 -0
  31. package/fesm2022/acorex-platform-themes-default.mjs +95 -47
  32. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  33. package/fesm2022/{acorex-platform-themes-shared-setting.provider-CXiRmniv.mjs → acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs} +1 -1
  34. package/fesm2022/acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs.map +1 -0
  35. package/fesm2022/acorex-platform-themes-shared.mjs +2 -2
  36. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  37. package/fesm2022/acorex-platform-widgets.mjs +571 -41
  38. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  39. package/layout/builder/lib/builder/widget-map.d.ts +2 -0
  40. package/layout/builder/lib/builder/widget.types.d.ts +2 -2
  41. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +2 -1
  42. package/package.json +1 -1
  43. package/themes/default/lib/layouts/base/base-page.component.d.ts +9 -4
  44. package/themes/default/lib/layouts/base/base-page.types.d.ts +3 -2
  45. package/themes/default/lib/layouts/base/page-layout/page-layout.component.d.ts +9 -2
  46. package/themes/default/lib/layouts/entity-layouts/entity-category/entity-category.component.d.ts +2 -1
  47. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +1 -0
  48. package/themes/default/lib/layouts/entity-layouts/entity-master-toolbar-view/entity-master-toolbar-view.component.d.ts +62 -0
  49. package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +3 -3
  50. package/themes/default/lib/layouts/root-layout/horizontal/horizontal-layout.component.d.ts +3 -3
  51. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +4 -1
  52. package/themes/default/lib/layouts/root-layout/vertical/vertical-layout.component.d.ts +3 -3
  53. package/themes/default/lib/layouts/view-layouts/layout-detail-view/layout-detail-view.component.d.ts +1 -1
  54. package/themes/shared/index.d.ts +1 -1
  55. package/widgets/lib/widgets/charts/notification/index.d.ts +3 -0
  56. package/widgets/lib/widgets/charts/notification/notification-widget.component.d.ts +54 -0
  57. package/widgets/lib/widgets/charts/notification/notification-widget.config.d.ts +10 -0
  58. package/widgets/lib/widgets/charts/notification/notification.type.d.ts +47 -0
  59. package/widgets/lib/widgets/charts/sticky-note/sticky-note-widget.component.d.ts +3 -3
  60. package/widgets/lib/widgets/charts/tasklist/index.d.ts +3 -0
  61. package/widgets/lib/widgets/charts/tasklist/tasklist-widget.component.d.ts +34 -0
  62. package/widgets/lib/widgets/charts/tasklist/tasklist-widget.config.d.ts +7 -0
  63. package/widgets/lib/widgets/charts/tasklist/tasklist.type.d.ts +36 -0
  64. package/widgets/lib/widgets/index.d.ts +3 -0
  65. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BqMlSX6b.mjs.map +0 -1
  66. package/fesm2022/acorex-platform-themes-shared-setting.provider-CXiRmniv.mjs.map +0 -1
  67. /package/{common/lib/layout/logo → core/lib/types}/logo.types.d.ts +0 -0
  68. /package/themes/shared/lib/{setting.keys.d.ts → settings.keys.d.ts} +0 -0
  69. /package/themes/shared/lib/{setting.provider.d.ts → settings.provider.d.ts} +0 -0
@@ -77,4 +77,6 @@ export interface AXPWidgetTypesMap {
77
77
  fontStyleChooser: 'font-style-chooser';
78
78
  fontSizeChooser: 'font-size-chooser';
79
79
  panel: 'panel';
80
+ notification: 'notification';
81
+ taskList: 'task-list';
80
82
  }
@@ -68,7 +68,7 @@ export declare function createSelectProperty<T = string | {
68
68
  visible?: boolean;
69
69
  }): AXPWidgetProperty;
70
70
  export interface AXPWidgetNode {
71
- type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | keyof AXPWidgetTypesMap;
71
+ type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | keyof AXPWidgetTypesMap | string;
72
72
  path?: string;
73
73
  name?: string;
74
74
  defaultValue?: any;
@@ -124,7 +124,7 @@ export type AXPExtractWidgetConfig<T> = {
124
124
  } ? V extends keyof AXPWidgetDesignerOptionsMap ? AXPWidgetDesignerOptionsMap[V] : any : any;
125
125
  };
126
126
  export interface AXPWidgetConfig<T = any> {
127
- name: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | keyof AXPWidgetTypesMap;
127
+ name: AXPWidgetTypesMap[keyof AXPWidgetTypesMap] | keyof AXPWidgetTypesMap | string;
128
128
  title: string;
129
129
  icon?: string;
130
130
  description?: string;
@@ -36,10 +36,11 @@ export declare class AXPLookupWidgetEditComponent extends AXPValueWidgetComponen
36
36
  private showSelector;
37
37
  protected handleValueChange(e: AXValueChangedEvent): void;
38
38
  protected handleOnBlur(e: AXFocusEvent): void;
39
- protected handleKeyDown(e: AXHtmlEvent): Promise<void>;
39
+ protected handleKeyUp(e: AXHtmlEvent): Promise<void>;
40
40
  private setItems;
41
41
  protected handleClearClick(): void;
42
42
  clear(): void;
43
+ clearInput(): void;
43
44
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPLookupWidgetEditComponent, never>;
44
45
  static ɵcmp: i0.ɵɵComponentDeclaration<AXPLookupWidgetEditComponent, "axp-lookup-widget-edit", never, {}, {}, never, never, true, never>;
45
46
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acorex/platform",
3
- "version": "19.3.0-next.2",
3
+ "version": "19.3.0-next.3",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=19.0.0",
6
6
  "@angular/core": ">=19.0.0",
@@ -1,10 +1,11 @@
1
- import { AXPSimplePageLayout } from './simple-page';
2
- import { AXPSessionService } from '@acorex/platform/auth';
1
+ import { AXToastService } from '@acorex/components/toast';
2
+ import { AXFormatService } from '@acorex/core/format';
3
3
  import { AXTranslationService } from '@acorex/core/translation';
4
+ import { AXPSessionService } from '@acorex/platform/auth';
5
+ import { AXPHomePageService } from '@acorex/platform/common';
4
6
  import { AXPActionMenuItem, AXPBackButton, AXPBreadcrumbItem, AXPExecuteCommand } from '@acorex/platform/core';
5
7
  import { AXPPageLayoutComponent } from './page-layout';
6
- import { AXFormatService } from '@acorex/core/format';
7
- import { AXToastService } from '@acorex/components/toast';
8
+ import { AXPSimplePageLayout } from './simple-page';
8
9
  import * as i0 from "@angular/core";
9
10
  export declare abstract class AXPBasePageComponent {
10
11
  #private;
@@ -72,6 +73,7 @@ export declare abstract class AXPBasePageComponent {
72
73
  protected readonly translateService: AXTranslationService;
73
74
  protected readonly formatService: AXFormatService;
74
75
  protected readonly toastService: AXToastService;
76
+ protected readonly homePageService: AXPHomePageService;
75
77
  private _updateTrigger;
76
78
  protected updateTrigger: import("@angular/core").Signal<number>;
77
79
  protected recompute(): void;
@@ -82,6 +84,7 @@ export declare abstract class AXPBasePageComponent {
82
84
  private description;
83
85
  private hasDescription;
84
86
  protected getPageDescription(): string | null | Promise<string | null>;
87
+ private defaultBreadCrumbs;
85
88
  private breadcrumbs;
86
89
  private hasBreadcrumbs;
87
90
  protected getPageBreadcrumbs(): AXPBreadcrumbItem[] | Promise<AXPBreadcrumbItem[]>;
@@ -89,6 +92,7 @@ export declare abstract class AXPBasePageComponent {
89
92
  private newLayout;
90
93
  protected layout: import("@angular/core").Signal<AXPSimplePageLayout | AXPPageLayoutComponent | undefined>;
91
94
  protected toggleEndSide(): void;
95
+ protected toggleStartSide(): void;
92
96
  primaryMenuItems: import("@angular/core").WritableSignal<AXPActionMenuItem[]>;
93
97
  hasPrimaryActions: import("@angular/core").Signal<boolean>;
94
98
  protected getPrimaryMenuItems(): AXPActionMenuItem[] | Promise<AXPActionMenuItem[]>;
@@ -103,6 +107,7 @@ export declare abstract class AXPBasePageComponent {
103
107
  hasBackButton: import("@angular/core").Signal<boolean>;
104
108
  protected getBackButton(): (AXPBackButton | null) | Promise<AXPBackButton | null>;
105
109
  execute(command: AXPExecuteCommand): void | Promise<void>;
110
+ startSideToggle(): void | Promise<void>;
106
111
  onBackButtonClick(): void | Promise<void>;
107
112
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPBasePageComponent, never>;
108
113
  static ɵcmp: i0.ɵɵComponentDeclaration<AXPBasePageComponent, "ng-component", never, {}, {}, never, never, true, never>;
@@ -1,5 +1,5 @@
1
- import { AXPActionMenuItem, AXPBackButton, AXPBreadcrumbItem, AXPExecuteCommand } from "@acorex/platform/core";
2
- import { Signal } from "@angular/core";
1
+ import { AXPActionMenuItem, AXPBackButton, AXPBreadcrumbItem, AXPExecuteCommand } from '@acorex/platform/core';
2
+ import { Signal } from '@angular/core';
3
3
  export declare abstract class AXPBasePage {
4
4
  abstract primaryMenuItems: Signal<AXPActionMenuItem[]>;
5
5
  abstract secondaryMenuItems: Signal<AXPActionMenuItem[]>;
@@ -17,5 +17,6 @@ export declare abstract class AXPBasePage {
17
17
  abstract hasBackButton: Signal<boolean>;
18
18
  abstract backButton: Signal<AXPBackButton>;
19
19
  abstract onBackButtonClick: () => void | Promise<void>;
20
+ abstract startSideToggle: () => void | Promise<void>;
20
21
  abstract execute: (command: AXPExecuteCommand) => void | Promise<void>;
21
22
  }
@@ -1,6 +1,9 @@
1
- import { AXPActionMenuItem } from '@acorex/platform/core';
1
+ import { AXDrawerItemDirective } from '@acorex/cdk/drawer';
2
+ import { AXPActionMenuItem, AXPExecuteCommand } from '@acorex/platform/core';
3
+ import { AXPWorkflowService } from '@acorex/platform/workflow';
2
4
  import { AXPBasePage } from '../base-page.types';
3
5
  import * as i0 from "@angular/core";
6
+ import * as i1 from "@acorex/cdk/drawer";
4
7
  export declare class AXPPageLayoutComponent {
5
8
  #private;
6
9
  protected page: AXPBasePage | null;
@@ -64,9 +67,13 @@ export declare class AXPPageLayoutComponent {
64
67
  sideMenuWidth: number;
65
68
  menuOrientation: import("@acorex/platform/themes/shared").AXPMenuOrientation;
66
69
  }>;
70
+ protected startSideDrawer: import("@angular/core").Signal<AXDrawerItemDirective | undefined>;
71
+ protected workflow: AXPWorkflowService;
67
72
  private checkScrollableContent;
68
73
  protected handleActionClick(item: AXPActionMenuItem): void;
74
+ toggleStartSide(): void;
69
75
  protected handleSecondaryActionClick(item: AXPActionMenuItem): void;
76
+ protected execute(command: AXPExecuteCommand): Promise<void>;
70
77
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPPageLayoutComponent, never>;
71
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPPageLayoutComponent, "axp-page-layout", never, {}, {}, never, ["axp-layout-start-side", "axp-page-toolbar", "axp-page-content", "axp-page-footer"], true, never>;
78
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPPageLayoutComponent, "axp-page-layout", never, {}, {}, never, ["axp-layout-start-side", "axp-page-toolbar", "axp-page-content", "axp-page-footer"], true, [{ directive: typeof i1.AXDrawerContainerDirective; inputs: {}; outputs: {}; }]>;
72
79
  }
@@ -1,5 +1,5 @@
1
1
  import { AXValueChangedEvent } from '@acorex/components/common';
2
- import { AXTreeItemClickBaseEvent } from '@acorex/components/tree-view';
2
+ import { AXTreeItemClickBaseEvent, AXTreeViewComponent } from '@acorex/components/tree-view';
3
3
  import { AXTranslationService } from '@acorex/core/translation';
4
4
  import { AXPEntity } from '@acorex/platform/common';
5
5
  import { AXPEntityMasterListViewModel, AXPEntityResolver } from '@acorex/platform/layout/entity';
@@ -8,6 +8,7 @@ export declare class AXPEntityCategoryComponent {
8
8
  protected readonly entityResolver: AXPEntityResolver;
9
9
  protected readonly translate: AXTranslationService;
10
10
  vm: import("@angular/core").InputSignal<AXPEntityMasterListViewModel>;
11
+ tree: import("@angular/core").Signal<AXTreeViewComponent | undefined>;
11
12
  searchValue: import("@angular/core").InputSignal<string>;
12
13
  isLoading: import("@angular/core").WritableSignal<boolean>;
13
14
  protected categoryEntityDef: AXPEntity | null;
@@ -90,6 +90,7 @@ export declare class AXPEntityMasterListViewComponent extends AXPBasePageCompone
90
90
  protected handleResetClick(sideBar: 'filter' | 'sort' | 'column'): void;
91
91
  protected handleApplyClick(sideBar: 'filter' | 'sort' | 'column'): void;
92
92
  ngOnDestroy(): void;
93
+ toggleCategoryDrawer(): void;
93
94
  getPageTitle(): string;
94
95
  getPageDescription(): Promise<string>;
95
96
  getPageBreadcrumbs(): AXPBreadcrumbItem[];
@@ -1,6 +1,68 @@
1
1
  import { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';
2
+ import { AXPEntityMasterListViewComponent } from '../entity-master-list-view/entity-master-list-view.component';
2
3
  import * as i0 from "@angular/core";
3
4
  export declare class AXPEntityMasterToolbarViewComponent {
5
+ protected layoutService: {
6
+ currentMode: import("@angular/core").Signal<import("@acorex/platform/themes/shared").AXPThemeMode>;
7
+ currentPalette: import("@angular/core").Signal<string>;
8
+ systemThemeMode: import("@angular/core").Signal<import("@acorex/platform/themes/shared").AXPThemeMode>;
9
+ font: import("@ngrx/signals").DeepSignal<{
10
+ family: string;
11
+ size: string;
12
+ }>;
13
+ screenSize: import("@angular/core").Signal<import("@acorex/platform/themes/shared").AXPScreenSize>;
14
+ deviceType: import("@angular/core").Signal<import("@acorex/platform/themes/shared").AXPDeviceType>;
15
+ isTouchDevice: import("@angular/core").Signal<boolean>;
16
+ overlayLoading: import("@angular/core").Signal<boolean>;
17
+ navigationLoading: import("@angular/core").Signal<boolean>;
18
+ overlayLoadingTaskCount: import("@angular/core").Signal<number>;
19
+ navigationLoadingTaskCount: import("@angular/core").Signal<number>;
20
+ sideMenuState: import("@angular/core").Signal<import("@acorex/platform/themes/shared").AXPSideMenuState>;
21
+ sideMenuWidth: import("@angular/core").Signal<number>;
22
+ menuOrientation: import("@angular/core").Signal<import("@acorex/platform/themes/shared").AXPMenuOrientation>;
23
+ isDarkMode: import("@angular/core").Signal<boolean>;
24
+ isLightMode: import("@angular/core").Signal<boolean>;
25
+ isSystemMode: import("@angular/core").Signal<boolean>;
26
+ isSideMenuOpen: import("@angular/core").Signal<boolean>;
27
+ isSideMenuOverlay: import("@angular/core").Signal<boolean>;
28
+ isSmall: import("@angular/core").Signal<boolean>;
29
+ isMedium: import("@angular/core").Signal<boolean>;
30
+ isLarge: import("@angular/core").Signal<boolean>;
31
+ isMobileDevice: import("@angular/core").Signal<boolean>;
32
+ isTabletDevice: import("@angular/core").Signal<boolean>;
33
+ isDesktopDevice: import("@angular/core").Signal<boolean>;
34
+ isTouchScreen: import("@angular/core").Signal<boolean>;
35
+ isOverlayLoading: import("@angular/core").Signal<boolean>;
36
+ isNavigationLoading: import("@angular/core").Signal<boolean>;
37
+ isMenuHorizontal: import("@angular/core").Signal<boolean>;
38
+ changeThemeMode: (theme: import("@acorex/platform/themes/shared").AXPThemeMode) => void;
39
+ openSideMenu: () => void;
40
+ closeSideMenu: () => void;
41
+ setSideMenuWidth: (width: number) => void;
42
+ toggleSideMenu: () => void;
43
+ setNavigationLoading: (value: boolean, delay?: number) => void;
44
+ setOverlayLoading: (value: boolean, delay?: number) => void;
45
+ loadSettings: () => Promise<void>;
46
+ } & import("@ngrx/signals").StateSource<{
47
+ currentMode: import("@acorex/platform/themes/shared").AXPThemeMode;
48
+ currentPalette: string;
49
+ systemThemeMode: import("@acorex/platform/themes/shared").AXPThemeMode;
50
+ font: {
51
+ family: string;
52
+ size: string;
53
+ };
54
+ screenSize: import("@acorex/platform/themes/shared").AXPScreenSize;
55
+ deviceType: import("@acorex/platform/themes/shared").AXPDeviceType;
56
+ isTouchDevice: boolean;
57
+ overlayLoading: boolean;
58
+ navigationLoading: boolean;
59
+ overlayLoadingTaskCount: number;
60
+ navigationLoadingTaskCount: number;
61
+ sideMenuState: import("@acorex/platform/themes/shared").AXPSideMenuState;
62
+ sideMenuWidth: number;
63
+ menuOrientation: import("@acorex/platform/themes/shared").AXPMenuOrientation;
64
+ }>;
65
+ protected parent: AXPEntityMasterListViewComponent;
4
66
  vm: AXPEntityMasterListViewModel;
5
67
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPEntityMasterToolbarViewComponent, never>;
6
68
  static ɵcmp: i0.ɵɵComponentDeclaration<AXPEntityMasterToolbarViewComponent, "axp-entity-master-toolbar-view", never, { "vm": { "alias": "viewModel"; "required": false; }; }, {}, never, never, true, never>;
@@ -63,9 +63,9 @@ export declare class AXPRootLayoutHeaderComponent {
63
63
  }>;
64
64
  private router;
65
65
  protected logo: {
66
- dark?: import("@acorex/platform/common").AXPLogoConfig;
67
- light?: import("@acorex/platform/common").AXPLogoConfig;
68
- colored?: import("@acorex/platform/common").AXPLogoConfig;
66
+ dark?: import("dist/libs/platform/core").AXPLogoConfig;
67
+ light?: import("dist/libs/platform/core").AXPLogoConfig;
68
+ colored?: import("dist/libs/platform/core").AXPLogoConfig;
69
69
  } | undefined;
70
70
  protected toggleSideMenu(): void;
71
71
  protected handleLogoClick(): void;
@@ -5,9 +5,9 @@ export declare class AXPRootHorizontalLayoutComponent {
5
5
  drawer: AXDrawerComponent;
6
6
  private config;
7
7
  protected logo: {
8
- dark?: import("@acorex/platform/common").AXPLogoConfig;
9
- light?: import("@acorex/platform/common").AXPLogoConfig;
10
- colored?: import("@acorex/platform/common").AXPLogoConfig;
8
+ dark?: import("@acorex/platform/core").AXPLogoConfig;
9
+ light?: import("@acorex/platform/core").AXPLogoConfig;
10
+ colored?: import("@acorex/platform/core").AXPLogoConfig;
11
11
  } | undefined;
12
12
  protected store: {
13
13
  currentMode: import("@angular/core").Signal<import("@acorex/platform/themes/shared").AXPThemeMode>;
@@ -1,4 +1,4 @@
1
- import { Router } from "@angular/router";
1
+ import { Router } from '@angular/router';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class AXPRootLayoutComponent {
4
4
  protected layout: {
@@ -79,6 +79,9 @@ export declare class AXPRootLayoutComponent {
79
79
  };
80
80
  }>;
81
81
  protected router: Router;
82
+ private sessionService;
83
+ private homePageService;
84
+ private unsubscriber;
82
85
  ngOnInit(): void;
83
86
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPRootLayoutComponent, never>;
84
87
  static ɵcmp: i0.ɵɵComponentDeclaration<AXPRootLayoutComponent, "ng-component", never, {}, {}, never, never, true, never>;
@@ -5,9 +5,9 @@ export declare class AXPRootVerticalLayoutComponent {
5
5
  drawer: AXDrawerComponent;
6
6
  private config;
7
7
  protected logo: {
8
- dark?: import("@acorex/platform/common").AXPLogoConfig;
9
- light?: import("@acorex/platform/common").AXPLogoConfig;
10
- colored?: import("@acorex/platform/common").AXPLogoConfig;
8
+ dark?: import("@acorex/platform/core").AXPLogoConfig;
9
+ light?: import("@acorex/platform/core").AXPLogoConfig;
10
+ colored?: import("@acorex/platform/core").AXPLogoConfig;
11
11
  } | undefined;
12
12
  protected store: {
13
13
  currentMode: import("@angular/core").Signal<import("@acorex/platform/themes/shared").AXPThemeMode>;
@@ -3,7 +3,7 @@ import { AXPBasePageComponent } from '../../base';
3
3
  import { AXPActionMenuItem } from '@acorex/platform/core';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class AXPLayoutDetailViewComponent extends AXPBasePageComponent {
6
- private evaludatorService;
6
+ private evaluatorService;
7
7
  config: import("@angular/core").InputSignal<AXPLayoutView<import("@acorex/platform/layout/builder").AXPPageOptions>>;
8
8
  children: import("@angular/core").Signal<AXPWidgetNode[]>;
9
9
  protected context: import("@angular/core").WritableSignal<{}>;
@@ -4,5 +4,5 @@ export * from './lib/components/slots/theme-slot.component';
4
4
  export * from './lib/palette.provider';
5
5
  export * from './lib/theme.service';
6
6
  export * from './lib/theme.types';
7
- export * from './lib/setting.keys';
7
+ export * from './lib/settings.keys';
8
8
  export * from './lib/shared.module';
@@ -0,0 +1,3 @@
1
+ export * from './notification-widget.component';
2
+ export * from './notification-widget.config';
3
+ export * from './notification.type';
@@ -0,0 +1,54 @@
1
+ import { AXTabStripChangedEvent } from '@acorex/components/tabs';
2
+ import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';
3
+ import { AXPNotificationData, AXPNotificationValue } from './notification.type';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Notification Widget Component
7
+ * Displays notifications in a card with tabs
8
+ */
9
+ export declare class AXPNotificationWidgetViewComponent extends AXPValueWidgetComponent<AXPNotificationValue> {
10
+ notificationClick: import("@angular/core").OutputEmitterRef<AXPNotificationData>;
11
+ markAsRead: import("@angular/core").OutputEmitterRef<AXPNotificationData>;
12
+ private readonly cdr;
13
+ private readonly datePipe;
14
+ protected activeTab: import("@angular/core").WritableSignal<"all" | "new">;
15
+ protected readonly maxItems: import("@angular/core").Signal<any>;
16
+ protected readonly showAvatar: import("@angular/core").Signal<any>;
17
+ protected readonly showDate: import("@angular/core").Signal<any>;
18
+ protected readonly notificationItems: import("@angular/core").Signal<AXPNotificationData[]>;
19
+ /**
20
+ * Get the count of new messages for the badge
21
+ */
22
+ protected getNewMessageCount(): number;
23
+ /**
24
+ * Handle tab change event from ax-tabs component
25
+ * @param index The index of the tab that was activated
26
+ */
27
+ protected handleTabChange(data: AXTabStripChangedEvent): void;
28
+ /**
29
+ * Mark all notifications as read
30
+ */
31
+ protected markAllAsRead(): void;
32
+ /**
33
+ * Change the active tab
34
+ */
35
+ protected onTabChange(tabName: 'new' | 'all'): void;
36
+ /**
37
+ * Handle notification click event
38
+ */
39
+ protected onNotificationClick(notification: AXPNotificationData): void;
40
+ /**
41
+ * Format the timestamp in a user-friendly way
42
+ */
43
+ protected formatTime(date: Date | string | undefined): string;
44
+ /**
45
+ * Mark notification as read if needed
46
+ */
47
+ private markAsReadIfNeeded;
48
+ /**
49
+ * Calculate days difference from now
50
+ */
51
+ private getDaysDifference;
52
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPNotificationWidgetViewComponent, never>;
53
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPNotificationWidgetViewComponent, "ng-component", never, {}, { "notificationClick": "notificationClick"; "markAsRead": "markAsRead"; }, never, never, true, never>;
54
+ }
@@ -0,0 +1,10 @@
1
+ import { AXPWidgetConfig } from '@acorex/platform/layout/builder';
2
+ /**
3
+ * Configuration for the Notification Widget
4
+ */
5
+ export declare const AXPNotificationWidget: AXPWidgetConfig;
6
+ declare module '@acorex/platform/layout/builder' {
7
+ interface AXPWidgetTypesMap {
8
+ notification: 'notification';
9
+ }
10
+ }
@@ -0,0 +1,47 @@
1
+ import { AXPWidgetDataSource } from '@acorex/platform/layout/builder';
2
+ export type AXPNotificationChannel = 'InApp' | 'Email' | 'SMS';
3
+ export type AXPNotificationCategory = 'Inbox' | 'Archive';
4
+ export type AXPNotificationPriority = 'Warning' | 'Danger' | 'Notice';
5
+ export type AXPNotificationType = 'File' | 'Person' | 'Notification';
6
+ export type AXPNotificationActionType = 'Link' | 'Entity' | 'Popup';
7
+ /**
8
+ * Notification item data structure
9
+ */
10
+ export interface AXPNotificationData {
11
+ id: string;
12
+ title: string;
13
+ body: string;
14
+ channel: AXPNotificationChannel;
15
+ content: {
16
+ type: AXPNotificationType;
17
+ data: object;
18
+ };
19
+ action?: {
20
+ type: AXPNotificationActionType;
21
+ data: {
22
+ [key: string]: unknown;
23
+ };
24
+ };
25
+ user: {
26
+ id: string;
27
+ name: string;
28
+ image: string;
29
+ };
30
+ template: {
31
+ category: AXPNotificationCategory;
32
+ priority: AXPNotificationPriority;
33
+ icon: string;
34
+ isPinned: boolean;
35
+ };
36
+ readAt: Date | null;
37
+ createdAt: Date;
38
+ entityName?: string;
39
+ }
40
+ /**
41
+ * Notification widget value structure
42
+ */
43
+ export interface AXPNotificationValue {
44
+ data: AXPNotificationData[];
45
+ dataSource?: AXPWidgetDataSource;
46
+ total?: number;
47
+ }
@@ -5,9 +5,9 @@ import * as i0 from "@angular/core";
5
5
  export declare class AXPStickyNoteWidgetViewComponent extends AXPValueWidgetComponent<string> implements OnInit {
6
6
  protected isEditing: import("@angular/core").WritableSignal<boolean>;
7
7
  private wysiwyg;
8
- protected date: Date;
9
- protected value: import("@angular/core").WritableSignal<string>;
10
- protected bgColor: import("@angular/core").WritableSignal<any>;
8
+ protected value: import("@angular/core").Signal<string>;
9
+ protected date: import("@angular/core").Signal<any>;
10
+ protected bgColor: import("@angular/core").Signal<any>;
11
11
  protected color: import("@angular/core").WritableSignal<string>;
12
12
  private el;
13
13
  protected colorPresets: string[];
@@ -0,0 +1,3 @@
1
+ export * from './tasklist-widget.component';
2
+ export * from './tasklist-widget.config';
3
+ export * from './tasklist.type';
@@ -0,0 +1,34 @@
1
+ import { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';
2
+ import { AXPTaskData, AXPTaskListValue } from './tasklist.type';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Task List Widget Component
6
+ * Displays a list of tasks with checkboxes and filtering options
7
+ */
8
+ export declare class AXPTaskListWidgetViewComponent extends AXPValueWidgetComponent<AXPTaskListValue> {
9
+ taskClick: import("@angular/core").OutputEmitterRef<AXPTaskData>;
10
+ taskCompleted: import("@angular/core").OutputEmitterRef<AXPTaskData>;
11
+ private readonly cdr;
12
+ private readonly datePipe;
13
+ protected readonly maxItems: import("@angular/core").Signal<any>;
14
+ protected readonly showDate: import("@angular/core").Signal<any>;
15
+ protected readonly showAssignee: import("@angular/core").Signal<any>;
16
+ protected readonly showPriority: import("@angular/core").Signal<any>;
17
+ protected readonly allowMarkComplete: import("@angular/core").Signal<any>;
18
+ protected readonly showCategories: import("@angular/core").Signal<any>;
19
+ protected readonly taskItems: import("@angular/core").Signal<AXPTaskData[]>;
20
+ protected getPendingTaskCount(): number;
21
+ protected getCompletedTaskCount(): number;
22
+ protected hasCategories(): boolean;
23
+ protected getCategories(): string[];
24
+ protected getTasksByCategory(category: string): AXPTaskData[];
25
+ protected getCategoryTaskCount(category: string): number;
26
+ protected onTaskClick(task: AXPTaskData): void;
27
+ protected onTaskCompletionChange(task: AXPTaskData, isCompleted: boolean): void;
28
+ protected formatDueDate(date: Date | string | undefined): string;
29
+ protected getPriorityColor(priority: string | undefined): string;
30
+ private getFilteredTasks;
31
+ protected getDaysDifference(date: Date): number;
32
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPTaskListWidgetViewComponent, never>;
33
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPTaskListWidgetViewComponent, "ng-component", never, {}, { "taskClick": "taskClick"; "taskCompleted": "taskCompleted"; }, never, never, true, never>;
34
+ }
@@ -0,0 +1,7 @@
1
+ import { AXPWidgetConfig } from '@acorex/platform/layout/builder';
2
+ export declare const AXPTaskListWidget: AXPWidgetConfig;
3
+ declare module '@acorex/platform/layout/builder' {
4
+ interface AXPWidgetTypesMap {
5
+ taskList: 'task-list';
6
+ }
7
+ }
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Task List Data structure
3
+ */
4
+ export interface AXPTaskData {
5
+ id: string;
6
+ title: string;
7
+ completed: boolean;
8
+ priority?: 'low' | 'medium' | 'high';
9
+ dueDate?: Date | string;
10
+ category?: string;
11
+ assignedTo?: {
12
+ id: string;
13
+ name: string;
14
+ image?: string;
15
+ };
16
+ createdAt: Date | string;
17
+ }
18
+ /**
19
+ * Task List Widget Value
20
+ */
21
+ export interface AXPTaskListValue {
22
+ data: AXPTaskData[];
23
+ }
24
+ /**
25
+ * Task List Widget Options
26
+ */
27
+ export interface AXPTaskListOptions {
28
+ maxItems?: number;
29
+ showDate?: boolean;
30
+ showAssignee?: boolean;
31
+ showCategory?: boolean;
32
+ showPriority?: boolean;
33
+ groupByCategory?: boolean;
34
+ groupByPriority?: boolean;
35
+ allowMarkComplete?: boolean;
36
+ }
@@ -45,5 +45,8 @@ export * from './charts/bar-chart';
45
45
  export * from './charts/clock-calendar';
46
46
  export * from './charts/donut-chart';
47
47
  export * from './charts/gauge-chart';
48
+ export * from './charts/notification';
48
49
  export * from './charts/sticky-note';
50
+ export * from './charts/tasklist';
49
51
  export * from './charts/weather';
52
+ export * from './charts/chart.type';