@acorex/platform 20.0.0 → 20.0.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 (26) hide show
  1. package/common/index.d.ts +1 -0
  2. package/fesm2022/acorex-platform-common.mjs +3 -1
  3. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  4. package/fesm2022/acorex-platform-layout-components.mjs +717 -459
  5. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  6. package/fesm2022/acorex-platform-layout-entity.mjs +32 -37
  7. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  8. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BFIGLwd9.mjs +115 -0
  9. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BFIGLwd9.mjs.map +1 -0
  10. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-PKLs3XdV.mjs → acorex-platform-themes-default-entity-master-list-view.component-BuyMyK_I.mjs} +29 -7
  11. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BuyMyK_I.mjs.map +1 -0
  12. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-CHHmHz2a.mjs +108 -0
  13. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-CHHmHz2a.mjs.map +1 -0
  14. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-IcmkHgp5.mjs → acorex-platform-themes-default-entity-master-single-view.component-CnjDBPeT.mjs} +6 -3
  15. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-CnjDBPeT.mjs.map +1 -0
  16. package/fesm2022/acorex-platform-themes-default.mjs +14 -11
  17. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  18. package/layout/components/index.d.ts +296 -250
  19. package/layout/entity/index.d.ts +3 -4
  20. package/package.json +1 -1
  21. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-DKihQPlU.mjs +0 -112
  22. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-DKihQPlU.mjs.map +0 -1
  23. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-PKLs3XdV.mjs.map +0 -1
  24. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DwDxUQfZ.mjs +0 -105
  25. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DwDxUQfZ.mjs.map +0 -1
  26. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-IcmkHgp5.mjs.map +0 -1
@@ -1,102 +1,77 @@
1
- import { Observable } from 'rxjs';
2
- import * as i0 from '@angular/core';
3
- import { InjectionToken, OnInit, OnDestroy, Signal, InputSignal, TemplateRef, ElementRef, Type, ViewContainerRef, ModuleWithProviders } from '@angular/core';
4
- import { AXHtmlEvent } from '@acorex/cdk/common';
5
- import { AXPMenuItem } from '@acorex/platform/common';
1
+ import * as _angular_core from '@angular/core';
2
+ import { Signal, InjectionToken, InputSignal, TemplateRef, ElementRef, OnInit, OnDestroy, Type, ViewContainerRef, ModuleWithProviders, QueryList } from '@angular/core';
6
3
  import * as _acorex_platform_core from '@acorex/platform/core';
7
- import { AXPContextData, AXPActivityLog, AXPSystemActionType } from '@acorex/platform/core';
4
+ import { AXPActivityLog, AXPSystemActionType, AXPContextData } from '@acorex/platform/core';
5
+ import { AXPMenuItem, AXPFilterDefinition, AXPFilterQuery } from '@acorex/platform/common';
6
+ import { AXPWidgetNode, AXPLayoutContextChangeEvent } from '@acorex/platform/layout/builder';
8
7
  import * as _ngrx_signals from '@ngrx/signals';
9
- import { AXPWidgetNode } from '@acorex/platform/layout/builder';
10
-
11
- type AXPUserAvatarSize = 'small' | 'medium' | 'large';
12
- type AXPUserAvatarStatus = 'online' | 'offline';
13
- type AXPUserAvatarData = {
14
- id: string;
15
- status: AXPUserAvatarStatus;
16
- username: string;
17
- firstName: string;
18
- lastName?: string;
19
- avatarUrl?: string;
20
- };
21
- interface AXPUserAvatarProvider {
22
- provide(userId: string): Promise<AXPUserAvatarData>;
23
- }
8
+ import { AXHtmlEvent, AXValueChangedEvent, AXEvent } from '@acorex/cdk/common';
9
+ import { AXPopoverComponent } from '@acorex/components/popover';
10
+ import { AXTagBoxComponent } from '@acorex/components/tag-box';
11
+ import { AXCalendarService } from '@acorex/core/date-time';
12
+ import { AXTranslationService } from '@acorex/core/translation';
13
+ import { Observable } from 'rxjs';
24
14
 
25
- declare class AXPUserAvatarService {
26
- private provider;
27
- private readonly cacheExpiryTime;
28
- private readonly refreshInterval;
29
- private cache;
15
+ declare class AXPActivityLogComponent {
16
+ private readonly translateService;
17
+ private readonly workflowService;
30
18
  /**
31
- * Gets user information with caching and auto-refresh
32
- * @param userId The username to fetch information for
33
- * @returns Observable that emits user avatar data
19
+ * Array of activity logs to display
34
20
  */
35
- getUserInfo$(userId: string): Observable<AXPUserAvatarData>;
21
+ activities: _angular_core.InputSignal<AXPActivityLog[]>;
36
22
  /**
37
- * Gets user information (Promise-based for backward compatibility)
38
- * @param userId The username to fetch information for
39
- * @returns Promise that resolves to user avatar data
23
+ * Whether the component is in loading state
40
24
  */
41
- getUserInfo(userId: string): Promise<AXPUserAvatarData>;
25
+ loading: _angular_core.InputSignal<boolean>;
26
+ protected readonly i18nScope = "activity-log";
27
+ protected readonly Object: ObjectConstructor;
42
28
  /**
43
- * Clears the entire cache or a specific user's cache
44
- * @param userId Optional username to clear specific cache
29
+ * Set of expanded activity IDs
45
30
  */
46
- clearCache(userId?: string): void;
31
+ private expandedItems;
47
32
  /**
48
- * Force refresh data for a specific username
49
- * @param userId The username to refresh
50
- * @returns Promise that resolves to the refreshed data
33
+ * Flag to track if component has been initialized
51
34
  */
52
- refreshUserInfo(userId: string): Promise<AXPUserAvatarData>;
35
+ private isInitialized;
53
36
  /**
54
- * Checks if a cache entry is expired
37
+ * Set of items that have been manually toggled (for animation control)
55
38
  */
56
- private isExpired;
39
+ private manuallyToggledItems;
40
+ constructor();
57
41
  /**
58
- * Fetches data from provider and updates the cache
42
+ * Gets the appropriate CSS class for the change type
59
43
  */
60
- private fetchAndUpdateCache;
61
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPUserAvatarService, never>;
62
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPUserAvatarService>;
63
- }
64
-
65
- declare const AXP_USER_AVATAR_PROVIDER: InjectionToken<AXPUserAvatarProvider>;
66
-
67
- declare class AXPUserAvatarComponent implements OnInit, OnDestroy {
68
- private readonly userAvatarService;
69
- private readonly destroy$;
70
- protected userInfo: i0.WritableSignal<AXPUserAvatarData | null>;
71
- size: i0.InputSignal<number>;
72
- userId: i0.InputSignal<string>;
73
- src: i0.WritableSignal<string>;
74
- userName: i0.Signal<string>;
75
- firstName: i0.Signal<string>;
76
- lastName: i0.Signal<string>;
77
- title: i0.Signal<string>;
78
- isOnline: i0.Signal<boolean>;
79
- avatarText: i0.Signal<string>;
80
- avatarColor: i0.Signal<string>;
81
- protected hasPicture: i0.WritableSignal<boolean>;
82
- protected onImageError(event: AXHtmlEvent<ErrorEvent>): void;
83
- protected onImageLoad(event: AXHtmlEvent<Event>): void;
84
- ngOnInit(): void;
85
- ngOnDestroy(): void;
86
- private loadUserData;
44
+ protected getChangeClasses(changeType: AXPSystemActionType): {
45
+ surface: string;
46
+ text: string;
47
+ icon: string;
48
+ };
87
49
  /**
88
- * Generate avatar image source
89
- * This is a placeholder - implement based on your actual requirements
50
+ * Checks if an activity item is expanded
51
+ */
52
+ protected isExpanded(activityId: string): boolean;
53
+ /**
54
+ * Toggles the expanded state of an activity item
55
+ */
56
+ protected toggleExpanded(activityId: string): void;
57
+ /**
58
+ * Checks if an item should have expand/collapse animation
90
59
  */
91
- private generateAvatarSrc;
60
+ protected shouldAnimate(activityId: string): boolean;
92
61
  /**
93
- * Get initials from first and last name
62
+ * Checks if an activity has expandable content (changes)
94
63
  */
95
- private getInitials;
96
- private hashString;
97
- private pickColor;
98
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPUserAvatarComponent, never>;
99
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPUserAvatarComponent, "axp-user-avatar", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "userId": { "alias": "userId"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
64
+ protected hasExpandableContent(activity: AXPActivityLog): boolean;
65
+ /**
66
+ * Handles the compare action for an activity
67
+ */
68
+ protected handleCompare(activity: AXPActivityLog, event: Event): Promise<void>;
69
+ /**
70
+ * Checks if an activity can be compared (has a previous version)
71
+ */
72
+ protected canCompare(activity: AXPActivityLog): boolean;
73
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPActivityLogComponent, never>;
74
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPActivityLogComponent, "axp-activity-log", never, { "activities": { "alias": "activities"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
100
75
  }
101
76
 
102
77
  declare class AXPTaskBadgeService {
@@ -105,8 +80,8 @@ declare class AXPTaskBadgeService {
105
80
  private computedCache;
106
81
  constructor();
107
82
  getCount(key: string): Signal<number>;
108
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPTaskBadgeService, never>;
109
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPTaskBadgeService>;
83
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTaskBadgeService, never>;
84
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPTaskBadgeService>;
110
85
  }
111
86
 
112
87
  declare const AXP_TASK_BADGE_PROVIDERS: InjectionToken<AXPTaskBadgeProvider[]>;
@@ -124,8 +99,8 @@ declare class AXPTaskBadgeDirective {
124
99
  count: InputSignal<number>;
125
100
  private readonly displayCount;
126
101
  private setValueOfInputSignal;
127
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPTaskBadgeDirective, never>;
128
- static ɵdir: i0.ɵɵDirectiveDeclaration<AXPTaskBadgeDirective, "[axp-task-badge]", never, { "badgeKey": { "alias": "badgeKey"; "required": false; "isSignal": true; }; "count": { "alias": "axp-task-badge"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
102
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPTaskBadgeDirective, never>;
103
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXPTaskBadgeDirective, "[axp-task-badge]", never, { "badgeKey": { "alias": "badgeKey"; "required": false; "isSignal": true; }; "count": { "alias": "axp-task-badge"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
129
104
  }
130
105
 
131
106
  declare class AXPMenuBadgeHelper {
@@ -134,81 +109,81 @@ declare class AXPMenuBadgeHelper {
134
109
  }
135
110
 
136
111
  declare class AXPThemeLayoutPagePrimaryActionsComponent {
137
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutPagePrimaryActionsComponent, never>;
138
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutPagePrimaryActionsComponent, "axp-layout-actions-primary", never, {}, {}, never, ["ax-button,ax-dropdown-button"], true, never>;
112
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutPagePrimaryActionsComponent, never>;
113
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutPagePrimaryActionsComponent, "axp-layout-actions-primary", never, {}, {}, never, ["ax-button,ax-dropdown-button"], true, never>;
139
114
  }
140
115
  declare class AXPThemeLayoutPageSecondaryActionsComponent {
141
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutPageSecondaryActionsComponent, never>;
142
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutPageSecondaryActionsComponent, "axp-layout-actions-secondary", never, {}, {}, never, ["ax-button-item,ax-divider,ng-container"], true, never>;
116
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutPageSecondaryActionsComponent, never>;
117
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutPageSecondaryActionsComponent, "axp-layout-actions-secondary", never, {}, {}, never, ["ax-button-item,ax-divider,ng-container"], true, never>;
143
118
  }
144
119
  declare class AXPThemeLayoutActionsComponent {
145
- readonly primaryTemplate: i0.Signal<TemplateRef<any> | undefined>;
120
+ readonly primaryTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
146
121
  private readonly primaryContent;
147
- hasPrimary: i0.Signal<boolean>;
148
- readonly secondaryTemplate: i0.Signal<TemplateRef<any> | undefined>;
122
+ hasPrimary: _angular_core.Signal<boolean>;
123
+ readonly secondaryTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
149
124
  private readonly secondaryContent;
150
- hasSecondary: i0.Signal<boolean>;
151
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutActionsComponent, never>;
152
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutActionsComponent, "axp-layout-actions", never, {}, {}, ["primaryContent", "secondaryContent"], ["axp-layout-actions-primary", "axp-layout-actions-secondary", "*"], true, never>;
125
+ hasSecondary: _angular_core.Signal<boolean>;
126
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutActionsComponent, never>;
127
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutActionsComponent, "axp-layout-actions", never, {}, {}, ["primaryContent", "secondaryContent"], ["axp-layout-actions-primary", "axp-layout-actions-secondary", "*"], true, never>;
153
128
  }
154
129
 
155
130
  declare class AXPThemeLayoutBlockComponent {
156
131
  protected readonly elementRef: ElementRef<any>;
157
132
  readonly hostElement: any;
158
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutBlockComponent, never>;
159
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutBlockComponent, " axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, ", never, {}, {}, never, ["*"], true, never>;
133
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutBlockComponent, never>;
134
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutBlockComponent, " axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, ", never, {}, {}, never, ["*"], true, never>;
160
135
  }
161
136
 
162
137
  declare class AXPThemeLayoutFooterComponent {
163
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutFooterComponent, never>;
164
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutFooterComponent, "axp-layout-footer, axp-layout-page-footer", never, {}, {}, never, ["axp-layout-prefix", "axp-layout-suffix"], true, never>;
138
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutFooterComponent, never>;
139
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutFooterComponent, "axp-layout-footer, axp-layout-page-footer", never, {}, {}, never, ["axp-layout-prefix", "axp-layout-suffix"], true, never>;
165
140
  }
166
141
 
167
142
  declare class AXPThemeLayoutPageHeaderComponent {
168
- readonly title: i0.Signal<TemplateRef<any> | undefined>;
169
- readonly description: i0.Signal<TemplateRef<any> | undefined>;
170
- readonly actions: i0.Signal<TemplateRef<any> | undefined>;
171
- readonly navbar: i0.Signal<TemplateRef<any> | undefined>;
172
- readonly breadcrumbs: i0.Signal<TemplateRef<any> | undefined>;
173
- readonly navButton: i0.Signal<TemplateRef<any> | undefined>;
174
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutPageHeaderComponent, never>;
175
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutPageHeaderComponent, "axp-layout-page-header", never, {}, {}, never, ["axp-layout-breadcrumbs", "axp-layout-toolbar", "axp-layout-actions", "axp-layout-description", "axp-layout-title", "axp-layout-nav-button"], true, never>;
143
+ readonly title: _angular_core.Signal<TemplateRef<any> | undefined>;
144
+ readonly description: _angular_core.Signal<TemplateRef<any> | undefined>;
145
+ readonly actions: _angular_core.Signal<TemplateRef<any> | undefined>;
146
+ readonly navbar: _angular_core.Signal<TemplateRef<any> | undefined>;
147
+ readonly breadcrumbs: _angular_core.Signal<TemplateRef<any> | undefined>;
148
+ readonly navButton: _angular_core.Signal<TemplateRef<any> | undefined>;
149
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutPageHeaderComponent, never>;
150
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutPageHeaderComponent, "axp-layout-page-header", never, {}, {}, never, ["axp-layout-breadcrumbs", "axp-layout-toolbar", "axp-layout-actions", "axp-layout-description", "axp-layout-title", "axp-layout-nav-button"], true, never>;
176
151
  }
177
152
  declare class AXPThemeLayoutHeaderComponent {
178
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutHeaderComponent, never>;
179
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutHeaderComponent, "axp-layout-header", never, {}, {}, never, ["axp-layout-prefix", "*", "axp-layout-suffix"], true, never>;
153
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutHeaderComponent, never>;
154
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutHeaderComponent, "axp-layout-header", never, {}, {}, never, ["axp-layout-prefix", "*", "axp-layout-suffix"], true, never>;
180
155
  }
181
156
 
182
157
  declare class AXPThemeLayoutListComponent {
183
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutListComponent, never>;
184
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutListComponent, "axp-layout-list", never, {}, {}, never, ["axp-layout-list-item,axp-layout-list-group,ng-container"], true, never>;
158
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutListComponent, never>;
159
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutListComponent, "axp-layout-list", never, {}, {}, never, ["axp-layout-list-item,axp-layout-list-group,ng-container"], true, never>;
185
160
  }
186
161
  declare class AXPThemeLayoutListItemsGroupComponent {
187
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutListItemsGroupComponent, never>;
188
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutListItemsGroupComponent, "axp-layout-list-group", never, {}, {}, never, ["axp-layout-list-item, axp-layout-title, axp-layout-header ,ng-container"], true, never>;
162
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutListItemsGroupComponent, never>;
163
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutListItemsGroupComponent, "axp-layout-list-group", never, {}, {}, never, ["axp-layout-list-item, axp-layout-title, axp-layout-header ,ng-container"], true, never>;
189
164
  }
190
165
  declare class AXPThemeLayoutListItemComponent {
191
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutListItemComponent, never>;
192
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutListItemComponent, "axp-layout-list-item", never, {}, {}, never, ["axp-layout-content,axp-layout-prefix,axp-layout-suffix,ng-container"], true, never>;
166
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutListItemComponent, never>;
167
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutListItemComponent, "axp-layout-list-item", never, {}, {}, never, ["axp-layout-content,axp-layout-prefix,axp-layout-suffix,ng-container"], true, never>;
193
168
  }
194
169
 
195
170
  declare class AXPThemeLayoutSectionComponent {
196
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutSectionComponent, never>;
197
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutSectionComponent, "axp-layout-section", never, {}, {}, never, ["axp-layout-header", "axp-layout-content"], true, never>;
171
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutSectionComponent, never>;
172
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutSectionComponent, "axp-layout-section", never, {}, {}, never, ["axp-layout-header", "axp-layout-content"], true, never>;
198
173
  }
199
174
 
200
175
  declare class AXPThemeLayoutStartSideComponent {
201
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutStartSideComponent, never>;
202
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutStartSideComponent, "axp-layout-page-start-side, axp-layout-start-side", never, {}, {}, never, ["axp-layout-header", "axp-layout-content", "axp-layout-footer", "*"], true, never>;
176
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutStartSideComponent, never>;
177
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutStartSideComponent, "axp-layout-page-start-side, axp-layout-start-side", never, {}, {}, never, ["axp-layout-header", "axp-layout-content", "axp-layout-footer", "*"], true, never>;
203
178
  }
204
179
  declare class AXPThemeLayoutEndSideComponent {
205
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutEndSideComponent, never>;
206
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutEndSideComponent, "axp-layout-page-end-side, axp-layout-end-side", never, {}, {}, never, ["axp-layout-header", "axp-layout-content", "axp-layout-footer"], true, never>;
180
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutEndSideComponent, never>;
181
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutEndSideComponent, "axp-layout-page-end-side, axp-layout-end-side", never, {}, {}, never, ["axp-layout-header", "axp-layout-content", "axp-layout-footer"], true, never>;
207
182
  }
208
183
 
209
184
  declare class AXPThemeLayoutToolbarComponent {
210
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutToolbarComponent, never>;
211
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutToolbarComponent, "axp-layout-toolbar", never, {}, {}, never, ["axp-layout-prefix", "axp-layout-suffix", "*"], true, never>;
185
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutToolbarComponent, never>;
186
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutToolbarComponent, "axp-layout-toolbar", never, {}, {}, never, ["axp-layout-prefix", "axp-layout-suffix", "*"], true, never>;
212
187
  }
213
188
 
214
189
  declare class AXPThemeLayoutContainerComponent {
@@ -219,8 +194,70 @@ declare class AXPThemeLayoutContainerComponent {
219
194
  private mutationObserver?;
220
195
  ngOnInit(): void;
221
196
  ngOnDestroy(): void;
222
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutContainerComponent, never>;
223
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutContainerComponent, "axp-layout-container", never, {}, {}, never, ["*"], true, never>;
197
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPThemeLayoutContainerComponent, never>;
198
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPThemeLayoutContainerComponent, "axp-layout-container", never, {}, {}, never, ["*"], true, never>;
199
+ }
200
+
201
+ interface AXPCompareViewField {
202
+ path: string;
203
+ title: string;
204
+ description?: string;
205
+ widget: AXPWidgetNode;
206
+ }
207
+ interface AXPCompareViewObject {
208
+ id: string;
209
+ title: string;
210
+ description?: string;
211
+ context: AXPContextData;
212
+ }
213
+ interface AXPCompareViewInputs {
214
+ fields: AXPCompareViewField[];
215
+ objects: AXPCompareViewObject[];
216
+ }
217
+ type AXPCompareViewMode = 'compare' | 'changes';
218
+ declare class AXPCompareViewComponent implements OnInit, OnDestroy {
219
+ inputs: _angular_core.InputSignal<AXPCompareViewInputs | undefined>;
220
+ showOnlyChanges: _angular_core.WritableSignal<boolean>;
221
+ mode: _angular_core.InputSignal<AXPCompareViewMode>;
222
+ private removedObjects;
223
+ protected isChangesMode: _angular_core.Signal<boolean>;
224
+ /**
225
+ * Filtered fields based on showOnlyChanges toggle
226
+ */
227
+ filteredFields: _angular_core.Signal<AXPCompareViewField[]>;
228
+ remainingObjects: _angular_core.Signal<AXPCompareViewObject[]>;
229
+ /**
230
+ * Check if a field value will change in the next object (to show arrow in current cell)
231
+ */
232
+ protected hasValueChangingToNext(fieldPath: string, currentObjectIndex: number): boolean;
233
+ /**
234
+ * Check if a field value has changed compared to the previous object
235
+ */
236
+ hasValueChangedFromPrevious(fieldPath: string, currentObjectIndex: number): boolean;
237
+ /**
238
+ * Check if a field has unequal values across objects
239
+ */
240
+ hasUnequalValues(fieldPath: string): boolean;
241
+ /**
242
+ * Check if a field has equal values across objects
243
+ */
244
+ hasEqualValues(fieldPath: string): boolean;
245
+ /**
246
+ * Compare two values for equality (deep comparison for objects/arrays)
247
+ */
248
+ private areValuesEqual;
249
+ /**
250
+ * Toggle the show only changes filter
251
+ */
252
+ toggleShowOnlyChanges(): void;
253
+ /**
254
+ * Remove an object from the comparison
255
+ */
256
+ removeObject(objectId: string): void;
257
+ ngOnInit(): void;
258
+ ngOnDestroy(): void;
259
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPCompareViewComponent, never>;
260
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPCompareViewComponent, "axp-compare-view", never, { "inputs": { "alias": "inputs"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
224
261
  }
225
262
 
226
263
  interface AXPComponentSlotConfig {
@@ -240,33 +277,33 @@ interface AXPComponentSlotModuleConfigs {
240
277
  }
241
278
  declare abstract class AXPComponentSlot {
242
279
  host: any;
243
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPComponentSlot, never>;
244
- static ɵdir: i0.ɵɵDirectiveDeclaration<AXPComponentSlot, never, never, {}, {}, never, never, true, never>;
280
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPComponentSlot, never>;
281
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXPComponentSlot, never, never, {}, {}, never, never, true, never>;
245
282
  }
246
283
 
247
284
  declare class AXPComponentSlotDirective implements OnInit {
248
- name: i0.InputSignal<string>;
249
- host: i0.InputSignal<any>;
250
- context: i0.InputSignal<any>;
285
+ name: _angular_core.InputSignal<string>;
286
+ host: _angular_core.InputSignal<any>;
287
+ context: _angular_core.InputSignal<any>;
251
288
  private elementRef;
252
289
  private registryService;
253
290
  private injector;
254
291
  private evaluator;
255
292
  viewContainerRef: ViewContainerRef;
256
293
  contextStore: {
257
- data: i0.Signal<AXPContextData>;
258
- state: i0.Signal<_acorex_platform_core.AXPContextState>;
294
+ data: _angular_core.Signal<AXPContextData>;
295
+ state: _angular_core.Signal<_acorex_platform_core.AXPContextState>;
259
296
  initialSnapshot: _ngrx_signals.DeepSignal<{}>;
260
297
  previousSnapshot: _ngrx_signals.DeepSignal<{}>;
261
298
  lastChange: _ngrx_signals.DeepSignal<_acorex_platform_core.AXPContextChangeEvent>;
262
- isChanged: i0.Signal<boolean>;
263
- isReset: i0.Signal<boolean>;
264
- isInitiated: i0.Signal<boolean>;
265
- isEmpty: i0.Signal<boolean>;
266
- snapshot: i0.Signal<AXPContextData>;
267
- initial: i0.Signal<{}>;
268
- previous: i0.Signal<{}>;
269
- changeEvent: i0.Signal<_acorex_platform_core.AXPContextChangeEvent>;
299
+ isChanged: _angular_core.Signal<boolean>;
300
+ isReset: _angular_core.Signal<boolean>;
301
+ isInitiated: _angular_core.Signal<boolean>;
302
+ isEmpty: _angular_core.Signal<boolean>;
303
+ snapshot: _angular_core.Signal<AXPContextData>;
304
+ initial: _angular_core.Signal<{}>;
305
+ previous: _angular_core.Signal<{}>;
306
+ changeEvent: _angular_core.Signal<_acorex_platform_core.AXPContextChangeEvent>;
270
307
  update: (path: string, value: any) => void;
271
308
  patch: (context: {}) => void;
272
309
  reset: () => void;
@@ -279,21 +316,21 @@ declare class AXPComponentSlotDirective implements OnInit {
279
316
  previousSnapshot: {};
280
317
  lastChange: _acorex_platform_core.AXPContextChangeEvent;
281
318
  }>;
282
- isEmpty: i0.Signal<boolean>;
319
+ isEmpty: _angular_core.Signal<boolean>;
283
320
  private _viewCount;
284
321
  ngOnInit(): Promise<void>;
285
322
  loadComponents(): Promise<void>;
286
323
  private evaluateCondition;
287
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPComponentSlotDirective, never>;
288
- static ɵdir: i0.ɵɵDirectiveDeclaration<AXPComponentSlotDirective, "axp-component-slot", ["slot"], { "name": { "alias": "name"; "required": true; "isSignal": true; }; "host": { "alias": "host"; "required": false; "isSignal": true; }; "context": { "alias": "context"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
324
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPComponentSlotDirective, never>;
325
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXPComponentSlotDirective, "axp-component-slot", ["slot"], { "name": { "alias": "name"; "required": true; "isSignal": true; }; "host": { "alias": "host"; "required": false; "isSignal": true; }; "context": { "alias": "context"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
289
326
  }
290
327
 
291
328
  declare class AXPComponentSlotRegistryService {
292
329
  private registry;
293
330
  register(slotName: string, config: AXPComponentSlotConfig): void;
294
331
  get(slotName: string): AXPComponentSlotConfig[];
295
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPComponentSlotRegistryService, never>;
296
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPComponentSlotRegistryService>;
332
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPComponentSlotRegistryService, never>;
333
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPComponentSlotRegistryService>;
297
334
  }
298
335
 
299
336
  declare class AXPComponentSlotModule {
@@ -303,134 +340,143 @@ declare class AXPComponentSlotModule {
303
340
  * @ignore
304
341
  */
305
342
  constructor(instances: any[]);
306
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPComponentSlotModule, [{ optional: true; }]>;
307
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXPComponentSlotModule, [typeof AXPComponentSlotDirective], never, [typeof AXPComponentSlotDirective]>;
308
- static ɵinj: i0.ɵɵInjectorDeclaration<AXPComponentSlotModule>;
343
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPComponentSlotModule, [{ optional: true; }]>;
344
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXPComponentSlotModule, [typeof AXPComponentSlotDirective], never, [typeof AXPComponentSlotDirective]>;
345
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPComponentSlotModule>;
309
346
  }
310
347
 
311
- declare class AXPActivityLogComponent {
312
- private readonly translateService;
313
- private readonly workflowService;
314
- /**
315
- * Array of activity logs to display
316
- */
317
- activities: i0.InputSignal<AXPActivityLog[]>;
318
- /**
319
- * Whether the component is in loading state
320
- */
321
- loading: i0.InputSignal<boolean>;
322
- protected readonly i18nScope = "activity-log";
323
- protected readonly Object: ObjectConstructor;
324
- /**
325
- * Set of expanded activity IDs
326
- */
327
- private expandedItems;
328
- /**
329
- * Flag to track if component has been initialized
330
- */
331
- private isInitialized;
332
- /**
333
- * Set of items that have been manually toggled (for animation control)
334
- */
335
- private manuallyToggledItems;
336
- constructor();
337
- /**
338
- * Gets the appropriate CSS class for the change type
339
- */
340
- protected getChangeClasses(changeType: AXPSystemActionType): {
341
- surface: string;
342
- text: string;
343
- icon: string;
344
- };
345
- /**
346
- * Checks if an activity item is expanded
347
- */
348
- protected isExpanded(activityId: string): boolean;
349
- /**
350
- * Toggles the expanded state of an activity item
351
- */
352
- protected toggleExpanded(activityId: string): void;
353
- /**
354
- * Checks if an item should have expand/collapse animation
355
- */
356
- protected shouldAnimate(activityId: string): boolean;
357
- /**
358
- * Checks if an activity has expandable content (changes)
359
- */
360
- protected hasExpandableContent(activity: AXPActivityLog): boolean;
361
- /**
362
- * Handles the compare action for an activity
363
- */
364
- protected handleCompare(activity: AXPActivityLog, event: Event): Promise<void>;
365
- /**
366
- * Checks if an activity can be compared (has a previous version)
367
- */
368
- protected canCompare(activity: AXPActivityLog): boolean;
369
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPActivityLogComponent, never>;
370
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPActivityLogComponent, "axp-activity-log", never, { "activities": { "alias": "activities"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
348
+ declare class AXPLayoutFiltersComponent {
349
+ #private;
350
+ protected translate: AXTranslationService;
351
+ protected calendarService: AXCalendarService;
352
+ private filterOperatorMiddleware;
353
+ filtersDefinitions: _angular_core.InputSignal<AXPFilterDefinition[]>;
354
+ initialFilters: _angular_core.InputSignal<AXPFilterQuery[]>;
355
+ onFiltersChanged: _angular_core.OutputEmitterRef<AXPFilterQuery[]>;
356
+ protected tagBox: _angular_core.Signal<AXTagBoxComponent | undefined>;
357
+ tagBoxInput: any;
358
+ listItems: QueryList<any>;
359
+ protected selectedField: _angular_core.WritableSignal<string | null>;
360
+ protected selectedFilters: _angular_core.WritableSignal<AXPFilterDefinition[]>;
361
+ context: _angular_core.WritableSignal<any>;
362
+ protected activeFilter: _angular_core.WritableSignal<AXPFilterDefinition | null>;
363
+ protected asyncTags: _angular_core.WritableSignal<any[]>;
364
+ protected popover: _angular_core.Signal<AXPopoverComponent | undefined>;
365
+ inputValue: _angular_core.WritableSignal<string>;
366
+ inlineFilters: () => AXPFilterDefinition[];
367
+ protected getDisplayValue: (filter: AXPFilterDefinition, val: any) => Promise<any>;
368
+ protected convertIfISOStringDate: (val: string) => string;
369
+ convertQueriesToDefinitions(queries: AXPFilterQuery[]): AXPFilterDefinition[];
370
+ convertQueriesToContext(queries: AXPFilterQuery[]): any;
371
+ filterFields: () => AXPFilterDefinition[];
372
+ ngOnInit(): void;
373
+ handleSelectField(field: AXPFilterDefinition): void;
374
+ handleFieldKeyDown(e: KeyboardEvent, field: AXPFilterDefinition): void;
375
+ onContextChanged(e: AXPLayoutContextChangeEvent): void;
376
+ handleApplyFilter(): void;
377
+ handleButtonKeyDown(e: Event): void;
378
+ handleKeyDown(e: AXHtmlEvent<KeyboardEvent>): void;
379
+ handleSelectFilters(e: AXValueChangedEvent): void;
380
+ protected getActiveOperator(filter: AXPFilterDefinition | null): string | undefined;
381
+ handleSelectInlineFilter(filter: AXPFilterDefinition): void;
382
+ handleInlineFilterKeyDown(e: KeyboardEvent, filter: AXPFilterDefinition): void;
383
+ handlePopoverClosed(e: AXEvent): void;
384
+ protected onPopoverOpened(e: AXEvent): void;
385
+ protected deactivateAllListItems(): void;
386
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPLayoutFiltersComponent, never>;
387
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPLayoutFiltersComponent, "axp-layout-filters", never, { "filtersDefinitions": { "alias": "filtersDefinitions"; "required": false; "isSignal": true; }; "initialFilters": { "alias": "initialFilters"; "required": false; "isSignal": true; }; }, { "onFiltersChanged": "onFiltersChanged"; }, never, never, true, never>;
371
388
  }
372
389
 
373
- interface AXPCompareViewField {
374
- path: string;
375
- title: string;
376
- description?: string;
377
- widget: AXPWidgetNode;
378
- }
379
- interface AXPCompareViewObject {
390
+ type AXPUserAvatarSize = 'small' | 'medium' | 'large';
391
+ type AXPUserAvatarStatus = 'online' | 'offline';
392
+ type AXPUserAvatarData = {
380
393
  id: string;
381
- title: string;
382
- description?: string;
383
- context: AXPContextData;
384
- }
385
- interface AXPCompareViewInputs {
386
- fields: AXPCompareViewField[];
387
- objects: AXPCompareViewObject[];
394
+ status: AXPUserAvatarStatus;
395
+ username: string;
396
+ firstName: string;
397
+ lastName?: string;
398
+ avatarUrl?: string;
399
+ };
400
+ interface AXPUserAvatarProvider {
401
+ provide(userId: string): Promise<AXPUserAvatarData>;
388
402
  }
389
- type AXPCompareViewMode = 'compare' | 'changes';
390
- declare class AXPCompareViewComponent implements OnInit, OnDestroy {
391
- inputs: i0.InputSignal<AXPCompareViewInputs | undefined>;
392
- showOnlyChanges: i0.WritableSignal<boolean>;
393
- mode: i0.InputSignal<AXPCompareViewMode>;
394
- private removedObjects;
395
- protected isChangesMode: i0.Signal<boolean>;
403
+
404
+ declare class AXPUserAvatarService {
405
+ private provider;
406
+ private readonly cacheExpiryTime;
407
+ private readonly refreshInterval;
408
+ private cache;
396
409
  /**
397
- * Filtered fields based on showOnlyChanges toggle
410
+ * Gets user information with caching and auto-refresh
411
+ * @param userId The username to fetch information for
412
+ * @returns Observable that emits user avatar data
398
413
  */
399
- filteredFields: i0.Signal<AXPCompareViewField[]>;
400
- remainingObjects: i0.Signal<AXPCompareViewObject[]>;
414
+ getUserInfo$(userId: string): Observable<AXPUserAvatarData>;
401
415
  /**
402
- * Check if a field value will change in the next object (to show arrow in current cell)
416
+ * Gets user information (Promise-based for backward compatibility)
417
+ * @param userId The username to fetch information for
418
+ * @returns Promise that resolves to user avatar data
403
419
  */
404
- protected hasValueChangingToNext(fieldPath: string, currentObjectIndex: number): boolean;
420
+ getUserInfo(userId: string): Promise<AXPUserAvatarData>;
405
421
  /**
406
- * Check if a field value has changed compared to the previous object
422
+ * Clears the entire cache or a specific user's cache
423
+ * @param userId Optional username to clear specific cache
407
424
  */
408
- hasValueChangedFromPrevious(fieldPath: string, currentObjectIndex: number): boolean;
425
+ clearCache(userId?: string): void;
409
426
  /**
410
- * Check if a field has unequal values across objects
427
+ * Force refresh data for a specific username
428
+ * @param userId The username to refresh
429
+ * @returns Promise that resolves to the refreshed data
411
430
  */
412
- hasUnequalValues(fieldPath: string): boolean;
431
+ refreshUserInfo(userId: string): Promise<AXPUserAvatarData>;
413
432
  /**
414
- * Check if a field has equal values across objects
433
+ * Checks if a cache entry is expired
415
434
  */
416
- hasEqualValues(fieldPath: string): boolean;
435
+ private isExpired;
417
436
  /**
418
- * Compare two values for equality (deep comparison for objects/arrays)
437
+ * Fetches data from provider and updates the cache
419
438
  */
420
- private areValuesEqual;
439
+ private fetchAndUpdateCache;
440
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPUserAvatarService, never>;
441
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPUserAvatarService>;
442
+ }
443
+
444
+ declare const AXP_USER_AVATAR_PROVIDER: InjectionToken<AXPUserAvatarProvider>;
445
+
446
+ declare class AXPUserAvatarComponent implements OnInit, OnDestroy {
447
+ private readonly userAvatarService;
448
+ private readonly destroy$;
449
+ protected userInfo: _angular_core.WritableSignal<AXPUserAvatarData | null>;
450
+ size: _angular_core.InputSignal<number>;
451
+ userId: _angular_core.InputSignal<string>;
452
+ src: _angular_core.WritableSignal<string>;
453
+ userName: _angular_core.Signal<string>;
454
+ firstName: _angular_core.Signal<string>;
455
+ lastName: _angular_core.Signal<string>;
456
+ title: _angular_core.Signal<string>;
457
+ isOnline: _angular_core.Signal<boolean>;
458
+ avatarText: _angular_core.Signal<string>;
459
+ avatarColor: _angular_core.Signal<string>;
460
+ protected hasPicture: _angular_core.WritableSignal<boolean>;
461
+ protected onImageError(event: AXHtmlEvent<ErrorEvent>): void;
462
+ protected onImageLoad(event: AXHtmlEvent<Event>): void;
463
+ ngOnInit(): void;
464
+ ngOnDestroy(): void;
465
+ private loadUserData;
421
466
  /**
422
- * Toggle the show only changes filter
467
+ * Generate avatar image source
468
+ * This is a placeholder - implement based on your actual requirements
423
469
  */
424
- toggleShowOnlyChanges(): void;
470
+ private generateAvatarSrc;
425
471
  /**
426
- * Remove an object from the comparison
472
+ * Get initials from first and last name
427
473
  */
428
- removeObject(objectId: string): void;
429
- ngOnInit(): void;
430
- ngOnDestroy(): void;
431
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPCompareViewComponent, never>;
432
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPCompareViewComponent, "axp-compare-view", never, { "inputs": { "alias": "inputs"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
474
+ private getInitials;
475
+ private hashString;
476
+ private pickColor;
477
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPUserAvatarComponent, never>;
478
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPUserAvatarComponent, "axp-user-avatar", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "userId": { "alias": "userId"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
433
479
  }
434
480
 
435
- export { AXPActivityLogComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPMenuBadgeHelper, AXPTaskBadgeDirective, AXPTaskBadgeProvider, AXPTaskBadgeService, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutContainerComponent, AXPThemeLayoutEndSideComponent, AXPThemeLayoutFooterComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPageHeaderComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionComponent, AXPThemeLayoutStartSideComponent, AXPThemeLayoutToolbarComponent, AXPUserAvatarComponent, AXPUserAvatarService, AXP_TASK_BADGE_PROVIDERS, AXP_USER_AVATAR_PROVIDER };
481
+ export { AXPActivityLogComponent, AXPCompareViewComponent, AXPComponentSlot, AXPComponentSlotDirective, AXPComponentSlotModule, AXPComponentSlotRegistryService, AXPLayoutFiltersComponent, AXPMenuBadgeHelper, AXPTaskBadgeDirective, AXPTaskBadgeProvider, AXPTaskBadgeService, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutContainerComponent, AXPThemeLayoutEndSideComponent, AXPThemeLayoutFooterComponent, AXPThemeLayoutHeaderComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPageHeaderComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionComponent, AXPThemeLayoutStartSideComponent, AXPThemeLayoutToolbarComponent, AXPUserAvatarComponent, AXPUserAvatarService, AXP_TASK_BADGE_PROVIDERS, AXP_USER_AVATAR_PROVIDER };
436
482
  export type { AXPCompareViewField, AXPCompareViewInputs, AXPCompareViewMode, AXPCompareViewObject, AXPComponentSlotConfig, AXPComponentSlotModuleConfigs, AXPUserAvatarData, AXPUserAvatarProvider, AXPUserAvatarSize, AXPUserAvatarStatus };