@acorex/components 20.4.18 → 20.4.20

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.
@@ -464,8 +464,17 @@ interface AXParticipant {
464
464
  id: string;
465
465
  /** Display name of the participant */
466
466
  name: string;
467
+ /**
468
+ * Short line shown under the name in lists (e.g. job title, status line).
469
+ * Distinct from long-form bio in optional `metadata` (e.g. profile fields).
470
+ */
471
+ description?: string;
467
472
  /** Avatar/profile image URL */
468
473
  avatar?: string;
474
+ /**
475
+ * Font Awesome icon class(es) used when `avatar` is not set (e.g. `'fa-light fa-user'`).
476
+ */
477
+ icon?: string;
469
478
  /** Role in the conversation (for groups/channels) */
470
479
  role?: AXParticipantRole;
471
480
  /** Current online status */
@@ -557,6 +566,11 @@ interface AXConversation {
557
566
  title: string;
558
567
  /** Conversation avatar/image URL */
559
568
  avatar?: string;
569
+ /**
570
+ * Font Awesome icon class(es) for this conversation when no image avatar is used
571
+ * (e.g. default placeholder for senders without a participant avatar/icon).
572
+ */
573
+ icon?: string;
560
574
  /** Conversation description (for groups/channels) */
561
575
  description?: string;
562
576
  /** List of participants */
@@ -802,6 +816,8 @@ interface AXUserProfileUpdate {
802
816
  name?: string;
803
817
  /** Avatar URL */
804
818
  avatar?: string;
819
+ /** Short line under the name in lists (e.g. job title) */
820
+ description?: string;
805
821
  /** Bio/status text */
806
822
  bio?: string;
807
823
  /** Phone number */
@@ -2892,7 +2908,7 @@ declare class AXConversationService {
2892
2908
  * @param metadata - Optional metadata (title, avatar, etc.)
2893
2909
  * @returns Created conversation
2894
2910
  */
2895
- createConversation(participantIds: string[], type: 'private' | 'group' | 'channel', metadata?: AXConversationMetadata): Promise<AXConversation>;
2911
+ createConversation(participantIds: string[], type: AXConversationType, metadata?: AXConversationMetadata): Promise<AXConversation>;
2896
2912
  /**
2897
2913
  * Get available users for conversation creation
2898
2914
  * @param query - Optional search query
@@ -4138,6 +4154,8 @@ declare class AXMessageListComponent implements OnDestroy {
4138
4154
  getSenderName(message: AXMessage): string;
4139
4155
  /** Get sender avatar */
4140
4156
  getSenderAvatar(message: AXMessage): string | undefined;
4157
+ /** Font Awesome icon for sender when no avatar image (participant or conversation icon). */
4158
+ getSenderAvatarIcon(message: AXMessage): string | undefined;
4141
4159
  /** Get original sender name for forwarded messages */
4142
4160
  getOriginalSenderName(message: AXMessage): string;
4143
4161
  /** Get forwarded text with sender and conversation info */
@@ -4248,6 +4266,8 @@ interface AXMessageAvatarTemplateContext {
4248
4266
  size: number;
4249
4267
  senderName: string;
4250
4268
  senderAvatar?: string;
4269
+ /** Font Awesome class string when there is no `senderAvatar` image. */
4270
+ senderIcon?: string;
4251
4271
  }
4252
4272
 
4253
4273
  declare class AXMessageListService {
@@ -5730,9 +5750,14 @@ declare class AXConversationMessageUtilsService {
5730
5750
  */
5731
5751
  static getSenderName(message: AXMessage, conversation: AXConversation): string;
5732
5752
  /**
5733
- * Get sender avatar
5753
+ * Get sender avatar image URL (takes precedence over {@link getSenderAvatarIcon}).
5734
5754
  */
5735
5755
  static getSenderAvatar(message: AXMessage, conversation: AXConversation): string | undefined;
5756
+ /**
5757
+ * Font Awesome icon class(es) for the sender when there is no avatar image:
5758
+ * participant `icon` first, then conversation-level `icon`.
5759
+ */
5760
+ static getSenderAvatarIcon(message: AXMessage, conversation: AXConversation): string | undefined;
5736
5761
  /**
5737
5762
  * Get initials from name
5738
5763
  */
package/fab/index.d.ts CHANGED
@@ -1,26 +1,41 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { AXClickEvent } from '@acorex/cdk/common';
2
+ import { AXPlacementType, AXClickEvent, AXEvent } from '@acorex/cdk/common';
3
3
 
4
- declare class AXFabItemComponent {
4
+ declare class AXFabComponent {
5
5
  label: _angular_core.InputSignal<string>;
6
+ popupStyle: _angular_core.InputSignal<"bubble" | "box">;
7
+ popupPlacement: _angular_core.InputSignal<AXPlacementType>;
6
8
  /**
7
9
  * Fires each time the user clicks the button.
8
10
  * @event
9
11
  */
10
12
  onClick: _angular_core.OutputEmitterRef<AXClickEvent>;
11
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFabItemComponent, never>;
12
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFabItemComponent, "ax-fab-item", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "onClick": "onClick"; }, never, ["ax-icon"], true, never>;
13
+ /**
14
+ * Emits when the popover is opened.
15
+ * @event
16
+ */
17
+ onOpened: _angular_core.OutputEmitterRef<AXEvent>;
18
+ /**
19
+ * Emits when the popover is closed.
20
+ * @event
21
+ */
22
+ onClosed: _angular_core.OutputEmitterRef<AXEvent>;
23
+ protected openPopover(): void;
24
+ protected closePopover(): void;
25
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFabComponent, never>;
26
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFabComponent, "ax-fab", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "popupStyle": { "alias": "popupStyle"; "required": false; "isSignal": true; }; "popupPlacement": { "alias": "popupPlacement"; "required": false; "isSignal": true; }; }, { "onClick": "onClick"; "onOpened": "onOpened"; "onClosed": "onClosed"; }, never, ["ax-icon", "ax-fab-item"], true, never>;
13
27
  }
14
28
 
15
- declare class AXFabComponent {
29
+ declare class AXFabItemComponent {
16
30
  label: _angular_core.InputSignal<string>;
31
+ protected parent: AXFabComponent;
17
32
  /**
18
33
  * Fires each time the user clicks the button.
19
34
  * @event
20
35
  */
21
36
  onClick: _angular_core.OutputEmitterRef<AXClickEvent>;
22
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFabComponent, never>;
23
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFabComponent, "ax-fab", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "onClick": "onClick"; }, never, ["ax-icon", "ax-fab-item"], true, never>;
37
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFabItemComponent, never>;
38
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFabItemComponent, "ax-fab-item", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "onClick": "onClick"; }, never, ["ax-icon"], true, never>;
24
39
  }
25
40
 
26
41
  export { AXFabComponent, AXFabItemComponent };