@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.
- package/auth/lib/application/application.types.d.ts +1 -1
- package/auth/lib/tenant/tenant.types.d.ts +1 -1
- package/common/index.d.ts +1 -0
- package/common/lib/app/application.types.d.ts +1 -1
- package/common/lib/app/index.d.ts +1 -0
- package/common/lib/configs/app.config.d.ts +1 -1
- package/common/lib/home-page/home-page-settings.key.d.ts +3 -0
- package/common/lib/home-page/home-page-settings.provider.d.ts +12 -0
- package/common/lib/home-page/home-page.module.d.ts +6 -0
- package/common/lib/home-page/home-page.routes.d.ts +2 -0
- package/common/lib/home-page/home-page.service.d.ts +24 -0
- package/common/lib/home-page/home-page.types.d.ts +9 -0
- package/common/lib/home-page/index.d.ts +4 -0
- package/common/lib/layout/logo/index.d.ts +0 -1
- package/common/lib/settings/setting.builder.d.ts +1 -1
- package/core/lib/data/data-generator.d.ts +2 -1
- package/core/lib/types/index.d.ts +4 -3
- package/core/lib/utils/object-util.d.ts +1 -0
- package/fesm2022/acorex-platform-auth.mjs +0 -1
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common.mjs +1556 -1393
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +173 -113
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +2 -0
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +25 -37
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- 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
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-CuyWAi6X.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +95 -47
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-setting.provider-CXiRmniv.mjs → acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs} +1 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-CXiRmniv.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +2 -2
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-widgets.mjs +571 -41
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/layout/builder/lib/builder/widget-map.d.ts +2 -0
- package/layout/builder/lib/builder/widget.types.d.ts +2 -2
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +2 -1
- package/package.json +1 -1
- package/themes/default/lib/layouts/base/base-page.component.d.ts +9 -4
- package/themes/default/lib/layouts/base/base-page.types.d.ts +3 -2
- package/themes/default/lib/layouts/base/page-layout/page-layout.component.d.ts +9 -2
- package/themes/default/lib/layouts/entity-layouts/entity-category/entity-category.component.d.ts +2 -1
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +1 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-toolbar-view/entity-master-toolbar-view.component.d.ts +62 -0
- package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +3 -3
- package/themes/default/lib/layouts/root-layout/horizontal/horizontal-layout.component.d.ts +3 -3
- package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +4 -1
- package/themes/default/lib/layouts/root-layout/vertical/vertical-layout.component.d.ts +3 -3
- package/themes/default/lib/layouts/view-layouts/layout-detail-view/layout-detail-view.component.d.ts +1 -1
- package/themes/shared/index.d.ts +1 -1
- package/widgets/lib/widgets/charts/notification/index.d.ts +3 -0
- package/widgets/lib/widgets/charts/notification/notification-widget.component.d.ts +54 -0
- package/widgets/lib/widgets/charts/notification/notification-widget.config.d.ts +10 -0
- package/widgets/lib/widgets/charts/notification/notification.type.d.ts +47 -0
- package/widgets/lib/widgets/charts/sticky-note/sticky-note-widget.component.d.ts +3 -3
- package/widgets/lib/widgets/charts/tasklist/index.d.ts +3 -0
- package/widgets/lib/widgets/charts/tasklist/tasklist-widget.component.d.ts +34 -0
- package/widgets/lib/widgets/charts/tasklist/tasklist-widget.config.d.ts +7 -0
- package/widgets/lib/widgets/charts/tasklist/tasklist.type.d.ts +36 -0
- package/widgets/lib/widgets/index.d.ts +3 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BqMlSX6b.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-setting.provider-CXiRmniv.mjs.map +0 -1
- /package/{common/lib/layout/logo → core/lib/types}/logo.types.d.ts +0 -0
- /package/themes/shared/lib/{setting.keys.d.ts → settings.keys.d.ts} +0 -0
- /package/themes/shared/lib/{setting.provider.d.ts → settings.provider.d.ts} +0 -0
|
@@ -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
|
|
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,10 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
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 {
|
|
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
|
|
2
|
-
import { Signal } from
|
|
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 {
|
|
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,
|
|
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
|
}
|
package/themes/default/lib/layouts/entity-layouts/entity-category/entity-category.component.d.ts
CHANGED
|
@@ -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("
|
|
67
|
-
light?: import("
|
|
68
|
-
colored?: import("
|
|
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/
|
|
9
|
-
light?: import("@acorex/platform/
|
|
10
|
-
colored?: import("@acorex/platform/
|
|
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
|
|
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/
|
|
9
|
-
light?: import("@acorex/platform/
|
|
10
|
-
colored?: import("@acorex/platform/
|
|
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>;
|
package/themes/default/lib/layouts/view-layouts/layout-detail-view/layout-detail-view.component.d.ts
CHANGED
|
@@ -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
|
|
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<{}>;
|
package/themes/shared/index.d.ts
CHANGED
|
@@ -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/
|
|
7
|
+
export * from './lib/settings.keys';
|
|
8
8
|
export * from './lib/shared.module';
|
|
@@ -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
|
|
9
|
-
protected
|
|
10
|
-
protected bgColor: import("@angular/core").
|
|
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,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,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';
|