@cometchat/chat-uikit-angular 4.1.0 → 4.2.0

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 (25) hide show
  1. package/CometChatConversations/cometchat-conversations/cometchat-conversations.component.d.ts +1 -0
  2. package/CometChatMessageList/cometchat-message-list/cometchat-message-list.component.d.ts +5 -3
  3. package/CometChatThreadedMessages/cometchat-threaded-messages/cometchat-threaded-messages.component.d.ts +7 -0
  4. package/Shared/CometChatUIkit/CometChatUIKit.d.ts +7 -1
  5. package/Shared/Framework/DataSource.d.ts +3 -0
  6. package/Shared/Framework/DataSourceDecorator.d.ts +3 -0
  7. package/Shared/Utils/MessageUtils.d.ts +3 -0
  8. package/assets/empty-slot.svg +14 -0
  9. package/esm2020/CometChatConversations/cometchat-conversations/cometchat-conversations.component.mjs +7 -2
  10. package/esm2020/CometChatConversationsWithMessages/cometchat-conversations-with-messages/cometchat-conversations-with-messages.component.mjs +1 -2
  11. package/esm2020/CometChatGroupMembers/cometchat-group-members/cometchat-group-members.component.mjs +3 -3
  12. package/esm2020/CometChatMessageComposer/cometchat-message-composer/cometchat-message-composer.component.mjs +1 -1
  13. package/esm2020/CometChatMessageList/cometchat-message-list/cometchat-message-list.component.mjs +176 -39
  14. package/esm2020/CometChatThreadedMessages/cometchat-threaded-messages/cometchat-threaded-messages.component.mjs +52 -3
  15. package/esm2020/Shared/CometChatUIkit/CometChatUIKit.mjs +34 -1
  16. package/esm2020/Shared/Framework/DataSource.mjs +1 -1
  17. package/esm2020/Shared/Framework/DataSourceDecorator.mjs +10 -1
  18. package/esm2020/Shared/Utils/MessageUtils.mjs +40 -3
  19. package/esm2020/public-api.mjs +2 -2
  20. package/fesm2015/cometchat-chat-uikit-angular.mjs +346 -70
  21. package/fesm2015/cometchat-chat-uikit-angular.mjs.map +1 -1
  22. package/fesm2020/cometchat-chat-uikit-angular.mjs +315 -47
  23. package/fesm2020/cometchat-chat-uikit-angular.mjs.map +1 -1
  24. package/package.json +5 -5
  25. package/public-api.d.ts +1 -1
@@ -1,9 +1,9 @@
1
- import { ConversationUtils, CallingDetailsUtils, ExtensionsDataSource as ExtensionsDataSource$1, CollaborativeDocumentConstants, ExtensionsId, CollaborativeWhiteboardConstants, PollsConstants, CometChatUIKitUtility, CometChatSoundManager, SmartRepliesConfiguration, StickersConstants, StickersConfiguration, CometChatUIKitCalls, OutgoingCallStyle, OutgoingCallConfiguration, CallScreenConfiguration, CallButtonsStyle, StorageUtils, IncomingCallStyle, UsersStyle, AddMembersStyle, MessageHeaderStyle, ListStyle, BannedMembersStyle, MessageReceiptUtils, ConversationsStyle, MessageInformationStyle, MessageInformationConfiguration, MessageTranslationConstants, MessageTranslationStyle, InteractiveMessageUtils, ReactionsConstants, FormBubbleStyle, CardBubbleStyle, LinkPreviewConstants, ThumbnailGenerationConstants, MessageListStyle, LinkPreviewStyle, SmartRepliesConstants, MessageComposerStyle, MessageListConfiguration, MessageComposerConfiguration, ThreadedMessagesStyle, GroupMemberUtils, GroupMembersStyle, TransferOwnershipStyle, AddMembersConfiguration, BannedMembersConfiguration, GroupMembersConfiguration, TransferOwnershipConfiguration, DetailsUtils, DetailsStyle, MessageHeaderConfiguration, ThreadedMessagesConfiguration, DetailsConfiguration, MessagesStyle, GroupsStyle, UsersConfiguration, GroupsConfiguration, ContactsStyle, TabItemStyle, MessagesConfiguration, ConversationsConfiguration, ContactsConfiguration, WithMessagesStyle, CreateGroupConfiguration, JoinGroupConfiguration, CallLogsStyle, CallLogParticipantsStyle, CallLogRecordingsStyle, CallLogHistoryStyle, CallButtonsConfiguration, CallLogParticipantsConfiguration, CallLogHistoryConfiguration, CallLogRecordingsConfiguration, CallLogDetailsStyle, CallLogDetailsConfiguration, CallLogsConfiguration, WithDetailsStyle } from '@cometchat/uikit-shared';
1
+ import { ConversationUtils, CallingDetailsUtils, ExtensionsDataSource as ExtensionsDataSource$1, CollaborativeDocumentConstants, ExtensionsId, CollaborativeWhiteboardConstants, PollsConstants, CometChatUIKitUtility, CometChatSoundManager, SmartRepliesConfiguration, StickersConstants, StickersConfiguration, CometChatUIKitSharedSettings, CometChatUIKitCalls, OutgoingCallStyle, OutgoingCallConfiguration, CallScreenConfiguration, CallButtonsStyle, StorageUtils, IncomingCallStyle, UsersStyle, AddMembersStyle, MessageHeaderStyle, ListStyle, BannedMembersStyle, MessageReceiptUtils, ConversationsStyle, MessageInformationStyle, MessageInformationConfiguration, MessageTranslationConstants, MessageTranslationStyle, InteractiveMessageUtils, CalendarStyle, TimeSlotStyle, SchedulerBubbleStyle, ReactionsConstants, FormBubbleStyle, CardBubbleStyle, LinkPreviewConstants, ThumbnailGenerationConstants, MessageListStyle, LinkPreviewStyle, SmartRepliesConstants, MessageComposerStyle, MessageListConfiguration, MessageComposerConfiguration, ThreadedMessagesStyle, GroupMemberUtils, GroupMembersStyle, TransferOwnershipStyle, AddMembersConfiguration, BannedMembersConfiguration, GroupMembersConfiguration, TransferOwnershipConfiguration, DetailsUtils, DetailsStyle, MessageHeaderConfiguration, ThreadedMessagesConfiguration, DetailsConfiguration, MessagesStyle, GroupsStyle, UsersConfiguration, GroupsConfiguration, ContactsStyle, TabItemStyle, MessagesConfiguration, ConversationsConfiguration, ContactsConfiguration, WithMessagesStyle, CreateGroupConfiguration, JoinGroupConfiguration, CallLogsStyle, CallLogParticipantsStyle, CallLogRecordingsStyle, CallLogHistoryStyle, CallButtonsConfiguration, CallLogParticipantsConfiguration, CallLogHistoryConfiguration, CallLogRecordingsConfiguration, CallLogDetailsStyle, CallLogDetailsConfiguration, CallLogsConfiguration, WithDetailsStyle } from '@cometchat/uikit-shared';
2
2
  export * from '@cometchat/uikit-shared';
3
3
  import { CometChatMessageOption, CometChatUIKitConstants, localize, fontHelper, CometChatMessageTemplate, CometChatMessageComposerAction, CometChatTheme, CometChatMessageEvents, MessageStatus, CometChatUIEvents, ChatSdkEventInitializer, CometChatLocalize, CallWorkflow, CometChatCallEvents, IconButtonAlignment, TitleAlignment, States, DatePatterns, SelectionMode, CometChatUserEvents, CometChatGroupEvents, CometChatConversationEvents, MessageBubbleAlignment, MessageListAlignment, Receipts, TimestampAlignment, DocumentIconAlignment, Placement, AuxiliaryButtonAlignment, TabAlignment, TabsVisibility, CometChatCallDetailsTemplate, CometChatCallDetailsOption } from '@cometchat/uikit-resources';
4
4
  export * from '@cometchat/uikit-resources';
5
- import { CallscreenStyle, AvatarStyle, ListItemStyle, DateStyle, ReceiptStyle, BadgeStyle, ConfirmDialogStyle, MenuListStyle, InputStyle, LabelStyle, RadioButtonStyle, CheckboxStyle, DropdownStyle, SingleSelectStyle, QuickViewStyle, MediaRecorderStyle, ChangeScopeStyle, CreateGroupStyle, JoinGroupStyle } from '@cometchat/uikit-elements';
6
- export { ActionSheetStyle, AvatarStyle, BackdropStyle, BadgeStyle, ButtonGroupStyle, CallscreenStyle, CardStyle, ChangeScopeStyle, CheckboxStyle, CometChatActionItem, CometChatActionSheet, CometChatAudioBubble, CometChatAvatar, CometChatBackdrop, CometChatBadge, CometChatButton, CometChatButtonGroup, CometChatCallscreenWrapper, CometChatCard, CometChatChangeScope, CometChatCheckbox, CometChatConfirmDialog, CometChatContextMenu, CometChatCreateGroup, CometChatDate, CometChatDivider, CometChatDocumentBubble, CometChatDraggable, CometChatDropdown, CometChatEmoji, CometChatEmojiKeyboard, CometChatFileBubble, CometChatFullScreenViewer, CometChatIcon, CometChatIconButton, CometChatImageBubble, CometChatInput, CometChatJoinGroup, CometChatLabel, CometChatListItem, CometChatLiveReaction, CometChatLoader, CometChatMediaRecorder, CometChatMenuList, CometChatMessageInput, CometChatModal, CometChatPopover, CometChatPreview, CometChatRadioButton, CometChatReceipt, CometChatSearchInput, CometChatStatusIndicator, CometChatTextBubble, CometChatVideoBubble, ConfirmDialogStyle, ContextMenuStyle, CreateGroupStyle, DateStyle, DocumentBubbleStyle, DropdownStyle, EmojiKeyboardStyle, Emojis, FileBubbleStyle, FullScreenViewerStyle, IconStyle, ImageBubbleStyle, InputStyle, JoinGroupStyle, LabelStyle, ListItemStyle, LoaderStyle, MediaRecorderStyle, MenuListStyle, MessageInputStyle, ModalStyle, PopoverStyle, PreviewStyle, RadioButtonStyle, ReceiptStyle, SearchInputStyle, TextBubbleStyle, auxiliaryButtonAlignmentEnum, layoutType } from '@cometchat/uikit-elements';
5
+ import { CallscreenStyle, AvatarStyle, ListItemStyle, DateStyle, ReceiptStyle, BadgeStyle, ConfirmDialogStyle, MenuListStyle, QuickViewStyle, InputStyle, LabelStyle, RadioButtonStyle, CheckboxStyle, DropdownStyle, SingleSelectStyle, MediaRecorderStyle, ChangeScopeStyle, CreateGroupStyle, JoinGroupStyle } from '@cometchat/uikit-elements';
6
+ export { ActionSheetStyle, AvatarStyle, BackdropStyle, BadgeStyle, ButtonGroupStyle, CallscreenStyle, CardStyle, ChangeScopeStyle, CheckboxStyle, CometChatActionItem, CometChatActionSheet, CometChatAudioBubble, CometChatAvatar, CometChatBackdrop, CometChatBadge, CometChatButton, CometChatButtonGroup, CometChatCallscreenWrapper, CometChatCard, CometChatChangeScope, CometChatCheckbox, CometChatConfirmDialog, CometChatContextMenu, CometChatCreateGroup, CometChatDate, CometChatDivider, CometChatDocumentBubble, CometChatDraggable, CometChatDropdown, CometChatEmoji, CometChatEmojiKeyboard, CometChatFileBubble, CometChatFullScreenViewer, CometChatIcon, CometChatIconButton, CometChatImageBubble, CometChatInput, CometChatJoinGroup, CometChatLabel, CometChatListItem, CometChatLiveReaction, CometChatLoader, CometChatMediaRecorder, CometChatMenuList, CometChatMessageInput, CometChatModal, CometChatPanel, CometChatPopover, CometChatPreview, CometChatQuickView, CometChatRadioButton, CometChatReceipt, CometChatSearchInput, CometChatSingleSelect, CometChatStatusIndicator, CometChatTextBubble, CometChatVideoBubble, ConfirmDialogStyle, ContextMenuStyle, CreateGroupStyle, DateStyle, DocumentBubbleStyle, DropdownStyle, EmojiKeyboardStyle, Emojis, FileBubbleStyle, FullScreenViewerStyle, IconStyle, ImageBubbleStyle, InputStyle, JoinGroupStyle, LabelStyle, ListItemStyle, LoaderStyle, MediaRecorderStyle, MenuListStyle, MessageInputStyle, ModalStyle, PanelStyle, PopoverStyle, PreviewStyle, QuickViewStyle, RadioButtonStyle, ReceiptStyle, SearchInputStyle, SingleSelectStyle, TextBubbleStyle, auxiliaryButtonAlignmentEnum, layoutType } from '@cometchat/uikit-elements';
7
7
  import { __awaiter } from 'tslib';
8
8
  import { CometChat } from '@cometchat/chat-sdk-javascript';
9
9
  import * as i0 from '@angular/core';
@@ -125,6 +125,13 @@ class MessageUtils {
125
125
  getBottomView(_messageObject, _alignment) {
126
126
  return null;
127
127
  }
128
+ getSchedulerMessageTemplate() {
129
+ return new CometChatMessageTemplate({
130
+ type: CometChatUIKitConstants.MessageTypes.scheduler,
131
+ category: CometChatUIKitConstants.MessageCategory.interactive,
132
+ options: ChatConfigurator.getDataSource().getMessageOptions,
133
+ });
134
+ }
128
135
  getTextMessageTemplate() {
129
136
  return new CometChatMessageTemplate({
130
137
  type: CometChatUIKitConstants.MessageTypes.text,
@@ -166,6 +173,20 @@ class MessageUtils {
166
173
  options: ChatConfigurator.getDataSource().getMessageOptions,
167
174
  });
168
175
  }
176
+ getFormMessageTemplate() {
177
+ return new CometChatMessageTemplate({
178
+ type: CometChatUIKitConstants.MessageTypes.form,
179
+ category: CometChatUIKitConstants.MessageCategory.interactive,
180
+ options: ChatConfigurator.getDataSource().getMessageOptions,
181
+ });
182
+ }
183
+ getCardMessageTemplate() {
184
+ return new CometChatMessageTemplate({
185
+ type: CometChatUIKitConstants.MessageTypes.card,
186
+ category: CometChatUIKitConstants.MessageCategory.interactive,
187
+ options: ChatConfigurator.getDataSource().getMessageOptions,
188
+ });
189
+ }
169
190
  getAllMessageTemplates() {
170
191
  return [
171
192
  ChatConfigurator.getDataSource().getTextMessageTemplate(),
@@ -174,6 +195,9 @@ class MessageUtils {
174
195
  ChatConfigurator.getDataSource().getAudioMessageTemplate(),
175
196
  ChatConfigurator.getDataSource().getFileMessageTemplate(),
176
197
  ChatConfigurator.getDataSource().getGroupActionTemplate(),
198
+ ChatConfigurator.getDataSource().getFormMessageTemplate(),
199
+ ChatConfigurator.getDataSource().getCardMessageTemplate(),
200
+ ChatConfigurator.getDataSource().getSchedulerMessageTemplate()
177
201
  ];
178
202
  }
179
203
  getMessageTemplate(messageType, messageCategory) {
@@ -201,6 +225,15 @@ class MessageUtils {
201
225
  _template =
202
226
  ChatConfigurator.getDataSource().getAudioMessageTemplate();
203
227
  break;
228
+ case CometChatUIKitConstants.MessageTypes.form:
229
+ _template = ChatConfigurator.getDataSource().getFormMessageTemplate();
230
+ break;
231
+ case CometChatUIKitConstants.MessageTypes.card:
232
+ _template = ChatConfigurator.getDataSource().getCardMessageTemplate();
233
+ break;
234
+ case CometChatUIKitConstants.MessageTypes.scheduler:
235
+ _template = ChatConfigurator.getDataSource().getSchedulerMessageTemplate();
236
+ break;
204
237
  }
205
238
  }
206
239
  return _template;
@@ -235,8 +268,8 @@ class MessageUtils {
235
268
  break;
236
269
  }
237
270
  }
238
- else if (messageObject.getCategory() ==
239
- CometChatUIKitConstants.MessageCategory.custom) {
271
+ else if ((messageObject.getCategory() == CometChatUIKitConstants.MessageCategory.custom) ||
272
+ (messageObject.getCategory() == CometChatUIKitConstants.MessageCategory.interactive)) {
240
273
  _optionList = ChatConfigurator.getDataSource().getCommonOptions(loggedInUser, messageObject, theme, group);
241
274
  }
242
275
  return _optionList;
@@ -268,6 +301,9 @@ class MessageUtils {
268
301
  CometChatUIKitConstants.MessageTypes.video,
269
302
  CometChatUIKitConstants.MessageTypes.file,
270
303
  CometChatUIKitConstants.MessageTypes.groupMember,
304
+ CometChatUIKitConstants.MessageTypes.form,
305
+ CometChatUIKitConstants.MessageTypes.card,
306
+ CometChatUIKitConstants.MessageTypes.scheduler
271
307
  ];
272
308
  }
273
309
  addList() {
@@ -277,6 +313,7 @@ class MessageUtils {
277
313
  return [
278
314
  CometChatUIKitConstants.MessageCategory.message,
279
315
  CometChatUIKitConstants.MessageCategory.action,
316
+ CometChatUIKitConstants.MessageCategory.interactive
280
317
  ];
281
318
  }
282
319
  getAuxiliaryOptions(id, user, group) {
@@ -455,10 +492,22 @@ class DataSourceDecorator {
455
492
  var _a;
456
493
  return ((_a = this.dataSource) !== null && _a !== void 0 ? _a : new MessageUtils()).getFileMessageTemplate();
457
494
  }
495
+ getFormMessageTemplate() {
496
+ var _a;
497
+ return ((_a = this.dataSource) !== null && _a !== void 0 ? _a : new MessageUtils()).getFormMessageTemplate();
498
+ }
499
+ getCardMessageTemplate() {
500
+ var _a;
501
+ return ((_a = this.dataSource) !== null && _a !== void 0 ? _a : new MessageUtils()).getCardMessageTemplate();
502
+ }
458
503
  getGroupActionTemplate() {
459
504
  var _a;
460
505
  return ((_a = this.dataSource) !== null && _a !== void 0 ? _a : new MessageUtils()).getGroupActionTemplate();
461
506
  }
507
+ getSchedulerMessageTemplate() {
508
+ var _a;
509
+ return ((_a = this.dataSource) !== null && _a !== void 0 ? _a : new MessageUtils()).getSchedulerMessageTemplate();
510
+ }
462
511
  getAllMessageTemplates() {
463
512
  var _a;
464
513
  return ((_a = this.dataSource) !== null && _a !== void 0 ? _a : new MessageUtils()).getAllMessageTemplates();
@@ -1567,6 +1616,7 @@ class CometChatUIKit {
1567
1616
  static init(uiKitSettings) {
1568
1617
  // perform sdk init taking values from uiKitSettings
1569
1618
  CometChatUIKit.uiKitSettings = uiKitSettings;
1619
+ CometChatUIKitSharedSettings.uikitSettings = CometChatUIKit.uiKitSettings;
1570
1620
  if (!CometChatUIKit.checkAuthSettings())
1571
1621
  return undefined;
1572
1622
  const appSettingsBuilder = new CometChat.AppSettingsBuilder();
@@ -1902,6 +1952,37 @@ class CometChatUIKit {
1902
1952
  });
1903
1953
  });
1904
1954
  }
1955
+ /**
1956
+ * Sends a scheduler message and emits events based on the message status.
1957
+ * @param message - The scheduler message to be sent.
1958
+ * @param disableLocalEvents - A boolean indicating whether to disable local events or not. Default value is false.
1959
+ */
1960
+ static sendSchedulerMessage(message, disableLocalEvents = false) {
1961
+ if (!disableLocalEvents) {
1962
+ CometChatMessageEvents.ccMessageSent.next({
1963
+ message: message,
1964
+ status: MessageStatus.inprogress,
1965
+ });
1966
+ }
1967
+ CometChat.sendInteractiveMessage(message)
1968
+ .then((message) => {
1969
+ if (!disableLocalEvents) {
1970
+ CometChatMessageEvents.ccMessageSent.next({
1971
+ message: message,
1972
+ status: MessageStatus.success,
1973
+ });
1974
+ }
1975
+ })
1976
+ .catch((error) => {
1977
+ message.setMetadata({ error });
1978
+ if (!disableLocalEvents) {
1979
+ CometChatMessageEvents.ccMessageSent.next({
1980
+ message: message,
1981
+ status: MessageStatus.error,
1982
+ });
1983
+ }
1984
+ });
1985
+ }
1905
1986
  }
1906
1987
  CometChatUIKit.SoundManager = CometChatSoundManager;
1907
1988
  CometChatUIKit.Localize = CometChatLocalize;
@@ -6156,7 +6237,7 @@ class CometChatConversationsComponent {
6156
6237
  this.updateConversation(call);
6157
6238
  }
6158
6239
  }));
6159
- // SDK listeners
6240
+ // SDK listeners
6160
6241
  this.onTextMessageReceived =
6161
6242
  CometChatMessageEvents.onTextMessageReceived.subscribe((textMessage) => {
6162
6243
  callback(CometChatUIKitConstants.messages.TEXT_MESSAGE_RECEIVED, null, textMessage);
@@ -6173,6 +6254,10 @@ class CometChatConversationsComponent {
6173
6254
  CometChatMessageEvents.onFormMessageReceived.subscribe((formMessage) => {
6174
6255
  callback(CometChatUIKitConstants.messages.INTERACTIVE_MESSAGE_RECEIVED, null, formMessage);
6175
6256
  });
6257
+ this.onSchedulerMessageReceived =
6258
+ CometChatMessageEvents.onSchedulerMessageReceived.subscribe((formMessage) => {
6259
+ callback(CometChatUIKitConstants.messages.INTERACTIVE_MESSAGE_RECEIVED, null, formMessage);
6260
+ });
6176
6261
  this.onCardMessageReceived =
6177
6262
  CometChatMessageEvents.onCardMessageReceived.subscribe((cardMessage) => {
6178
6263
  callback(CometChatUIKitConstants.messages.INTERACTIVE_MESSAGE_RECEIVED, null, cardMessage);
@@ -6224,7 +6309,7 @@ class CometChatConversationsComponent {
6224
6309
  * Removes all listeners
6225
6310
  */
6226
6311
  removeListeners() {
6227
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
6312
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
6228
6313
  try {
6229
6314
  CometChat.removeUserListener(this.userListenerId);
6230
6315
  CometChat.removeGroupListener(this.groupListenerId);
@@ -6233,14 +6318,15 @@ class CometChatConversationsComponent {
6233
6318
  (_b = this.onMediaMessageReceived) === null || _b === void 0 ? void 0 : _b.unsubscribe();
6234
6319
  (_c = this.onCustomMessageReceived) === null || _c === void 0 ? void 0 : _c.unsubscribe();
6235
6320
  (_d = this.onFormMessageReceived) === null || _d === void 0 ? void 0 : _d.unsubscribe();
6236
- (_e = this.onCardMessageReceived) === null || _e === void 0 ? void 0 : _e.unsubscribe();
6237
- (_f = this.onCustomInteractiveMessageReceived) === null || _f === void 0 ? void 0 : _f.unsubscribe();
6238
- (_g = this.onMessagesRead) === null || _g === void 0 ? void 0 : _g.unsubscribe();
6239
- (_h = this.onMessageDeleted) === null || _h === void 0 ? void 0 : _h.unsubscribe();
6240
- (_j = this.onMessageEdited) === null || _j === void 0 ? void 0 : _j.unsubscribe();
6241
- (_k = this.onMessagesDelivered) === null || _k === void 0 ? void 0 : _k.unsubscribe();
6242
- (_l = this.onTypingStarted) === null || _l === void 0 ? void 0 : _l.unsubscribe();
6243
- (_m = this.onTypingEnded) === null || _m === void 0 ? void 0 : _m.unsubscribe();
6321
+ (_e = this.onSchedulerMessageReceived) === null || _e === void 0 ? void 0 : _e.unsubscribe();
6322
+ (_f = this.onCardMessageReceived) === null || _f === void 0 ? void 0 : _f.unsubscribe();
6323
+ (_g = this.onCustomInteractiveMessageReceived) === null || _g === void 0 ? void 0 : _g.unsubscribe();
6324
+ (_h = this.onMessagesRead) === null || _h === void 0 ? void 0 : _h.unsubscribe();
6325
+ (_j = this.onMessageDeleted) === null || _j === void 0 ? void 0 : _j.unsubscribe();
6326
+ (_k = this.onMessageEdited) === null || _k === void 0 ? void 0 : _k.unsubscribe();
6327
+ (_l = this.onMessagesDelivered) === null || _l === void 0 ? void 0 : _l.unsubscribe();
6328
+ (_m = this.onTypingStarted) === null || _m === void 0 ? void 0 : _m.unsubscribe();
6329
+ (_o = this.onTypingEnded) === null || _o === void 0 ? void 0 : _o.unsubscribe();
6244
6330
  }
6245
6331
  catch (error) {
6246
6332
  if (this.onError) {
@@ -8004,7 +8090,7 @@ class CometChatMessageListComponent {
8004
8090
  this.requestBuilder
8005
8091
  .fetchPrevious()
8006
8092
  .then((messageList) => {
8007
- var _a, _b;
8093
+ var _a, _b, _c;
8008
8094
  if (messageList && messageList.length > 0) {
8009
8095
  messageList = messageList.map((message, i) => {
8010
8096
  if (message.getCategory() ===
@@ -8037,8 +8123,8 @@ class CometChatMessageListComponent {
8037
8123
  this.lastMessageId = Number(messageList[messageList.length - 1].getId());
8038
8124
  }
8039
8125
  let lastMessage = messageList[messageList.length - 1];
8040
- if ((lastMessage === null || lastMessage === void 0 ? void 0 : lastMessage.getSender().getUid()) !=
8041
- ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid()) &&
8126
+ if (((_a = lastMessage === null || lastMessage === void 0 ? void 0 : lastMessage.getSender()) === null || _a === void 0 ? void 0 : _a.getUid()) !=
8127
+ ((_b = this.loggedInUser) === null || _b === void 0 ? void 0 : _b.getUid()) &&
8042
8128
  !lastMessage.getDeliveredAt()) {
8043
8129
  //mark the message as delivered
8044
8130
  if (!this.disableReceipt) {
@@ -8073,7 +8159,7 @@ class CometChatMessageListComponent {
8073
8159
  this.state = States.loaded;
8074
8160
  this.ref.detectChanges();
8075
8161
  //if the sender of the message is not the loggedin user, mark it as read.
8076
- let prevScrollHeight = (_b = this.listScroll) === null || _b === void 0 ? void 0 : _b.nativeElement.scrollHeight;
8162
+ let prevScrollHeight = (_c = this.listScroll) === null || _c === void 0 ? void 0 : _c.nativeElement.scrollHeight;
8077
8163
  setTimeout(() => {
8078
8164
  var _a;
8079
8165
  this.listScroll.nativeElement.scrollTop =
@@ -8375,24 +8461,12 @@ class CometChatMessageListComponent {
8375
8461
  return callSettings;
8376
8462
  };
8377
8463
  this.reInitializeMessageBuilder = () => {
8378
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
8379
8464
  if (!this.parentMessageId) {
8380
8465
  this.messageCount = 0;
8381
8466
  }
8382
8467
  this.requestBuilder = null;
8383
8468
  CometChat.removeGroupListener(this.groupListenerId);
8384
8469
  CometChat.removeCallListener(this.callListenerId);
8385
- (_a = this.onTextMessageReceived) === null || _a === void 0 ? void 0 : _a.unsubscribe();
8386
- (_b = this.onMediaMessageReceived) === null || _b === void 0 ? void 0 : _b.unsubscribe();
8387
- (_c = this.onCustomMessageReceived) === null || _c === void 0 ? void 0 : _c.unsubscribe();
8388
- (_d = this.onFormMessageReceived) === null || _d === void 0 ? void 0 : _d.unsubscribe();
8389
- (_e = this.onCardMessageReceived) === null || _e === void 0 ? void 0 : _e.unsubscribe();
8390
- (_f = this.onCustomInteractiveMessageReceived) === null || _f === void 0 ? void 0 : _f.unsubscribe();
8391
- (_g = this.onMessagesDelivered) === null || _g === void 0 ? void 0 : _g.unsubscribe();
8392
- (_h = this.onMessagesRead) === null || _h === void 0 ? void 0 : _h.unsubscribe();
8393
- (_j = this.onMessageDeleted) === null || _j === void 0 ? void 0 : _j.unsubscribe();
8394
- (_k = this.onMessageEdited) === null || _k === void 0 ? void 0 : _k.unsubscribe();
8395
- (_l = this.onTransientMessageReceived) === null || _l === void 0 ? void 0 : _l.unsubscribe();
8396
8470
  this.reInitializeMessageList();
8397
8471
  };
8398
8472
  /**
@@ -8697,6 +8771,152 @@ class CometChatMessageListComponent {
8697
8771
  iconTint: this.theme.palette.getAccent600(),
8698
8772
  };
8699
8773
  };
8774
+ this.getSchedulerBubbleStyle = (messgae) => {
8775
+ let avatarStyle = new AvatarStyle({
8776
+ borderRadius: "50%",
8777
+ width: "48px",
8778
+ height: "48px",
8779
+ border: "none",
8780
+ backgroundColor: this.themeService.theme.palette.getAccent700(),
8781
+ nameTextColor: this.themeService.theme.palette.getAccent900(),
8782
+ backgroundSize: "cover",
8783
+ nameTextFont: fontHelper(this.themeService.theme.typography.subtitle1),
8784
+ });
8785
+ let listItemStyle = new ListItemStyle({
8786
+ height: "auto",
8787
+ width: "100%",
8788
+ background: "inherit",
8789
+ activeBackground: "transparent",
8790
+ borderRadius: "0",
8791
+ titleFont: fontHelper(this.themeService.theme.typography.text1),
8792
+ titleColor: this.themeService.theme.palette.getAccent(),
8793
+ border: "none",
8794
+ separatorColor: "",
8795
+ hoverBackground: "transparent"
8796
+ });
8797
+ let calendarStyle = new CalendarStyle({
8798
+ height: "100%",
8799
+ width: "100%",
8800
+ border: "none",
8801
+ borderRadius: "0",
8802
+ background: "transparent",
8803
+ dateTextFont: fontHelper(this.themeService.theme.typography.subtitle2),
8804
+ dateTextColor: this.themeService.theme.palette.getAccent(),
8805
+ dayTextFont: fontHelper(this.themeService.theme.typography.text2),
8806
+ dayTextColor: this.themeService.theme.palette.getAccent(),
8807
+ monthYearTextFont: fontHelper(this.themeService.theme.typography.text2),
8808
+ monthYearTextColor: this.themeService.theme.palette.getAccent(),
8809
+ defaultDateTextBackground: 'transparent',
8810
+ disabledDateTextColor: this.themeService.theme.palette.getAccent400(),
8811
+ disabledDateTextFont: fontHelper(this.themeService.theme.typography.subtitle2),
8812
+ disabledDateTextBackground: "transparent",
8813
+ titleTextFont: fontHelper(this.themeService.theme.typography.text1),
8814
+ titleTextColor: this.themeService.theme.palette.getAccent(),
8815
+ timezoneTextFont: fontHelper(this.themeService.theme.typography.caption2),
8816
+ timezoneTextColor: this.themeService.theme.palette.getAccent(),
8817
+ arrowButtonTextColor: this.themeService.theme.palette.getAccent(),
8818
+ arrowButtonTextFont: fontHelper(this.themeService.theme.typography.title2),
8819
+ });
8820
+ let timeSlotStyle = new TimeSlotStyle({
8821
+ background: "transparent",
8822
+ height: "fit-content",
8823
+ width: "100%",
8824
+ border: "none",
8825
+ borderRadius: "0",
8826
+ calendarIconTint: this.themeService.theme.palette.getAccent(),
8827
+ timezoneIconTint: this.themeService.theme.palette.getAccent(),
8828
+ emptySlotIconTint: this.themeService.theme.palette.getAccent500(),
8829
+ emptySlotTextColor: this.themeService.theme.palette.getAccent500(),
8830
+ emptySlotTextFont: fontHelper(this.themeService.theme.typography.subtitle1),
8831
+ dateTextColor: this.themeService.theme.palette.getAccent(),
8832
+ dateTextFont: fontHelper(this.themeService.theme.typography.subtitle1),
8833
+ seperatorTint: this.themeService.theme.palette.getAccent100(),
8834
+ slotBackground: this.themeService.theme.palette.getAccent900(),
8835
+ slotBorder: "none",
8836
+ slotBorderRadius: "8px",
8837
+ slotTextColor: this.themeService.theme.palette.getAccent(),
8838
+ slotTextFont: fontHelper(this.themeService.theme.typography.caption2),
8839
+ timezoneTextColor: this.themeService.theme.palette.getAccent(),
8840
+ timezoneTextFont: fontHelper(this.themeService.theme.typography.caption2),
8841
+ titleTextColor: this.themeService.theme.palette.getAccent(),
8842
+ titleTextFont: fontHelper(this.themeService.theme.typography.text1)
8843
+ });
8844
+ let qucikViewStyle = new QuickViewStyle({
8845
+ background: this.themeService.theme.palette.getAccent50(),
8846
+ height: "fit-content",
8847
+ width: "100%",
8848
+ titleFont: fontHelper(this.themeService.theme.typography.subtitle2),
8849
+ titleColor: this.themeService.theme.palette.getAccent(),
8850
+ subtitleFont: fontHelper(this.themeService.theme.typography.subtitle2),
8851
+ subtitleColor: this.themeService.theme.palette.getAccent600(),
8852
+ leadingBarTint: this.themeService.theme.palette.getPrimary(),
8853
+ leadingBarWidth: "4px",
8854
+ borderRadius: "8px",
8855
+ });
8856
+ return new SchedulerBubbleStyle({
8857
+ avatarStyle: avatarStyle,
8858
+ listItemStyle: listItemStyle,
8859
+ quickViewStyle: qucikViewStyle,
8860
+ dateSelectorStyle: calendarStyle,
8861
+ timeSlotSelectorStyle: timeSlotStyle,
8862
+ backButtonIconTint: this.themeService.theme.palette.getPrimary(),
8863
+ background: "transparent",
8864
+ height: "100%",
8865
+ width: "100%",
8866
+ border: `1px solid ${this.themeService.theme.palette.getAccent100()}`,
8867
+ borderRadius: "8px",
8868
+ loadingIconTint: this.themeService.theme.palette.getAccent600(),
8869
+ suggestedTimeBackground: this.themeService.theme.palette.getAccent900(),
8870
+ suggestedTimeBorder: `1px solid ${this.themeService.theme.palette.getPrimary()}`,
8871
+ suggestedTimeBorderRadius: "8px",
8872
+ suggestedTimeDisabledBackground: this.themeService.theme.palette.getAccent50(),
8873
+ suggestedTimeDisabledBorder: `1px solid ${this.themeService.theme.palette.getAccent200()}`,
8874
+ suggestedTimeDisabledBorderRadius: "8px",
8875
+ suggestedTimeDisabledTextColor: this.themeService.theme.palette.getAccent700(),
8876
+ suggestedTimeDisabledTextFont: fontHelper(this.themeService.theme.typography.text3),
8877
+ suggestedTimeTextColor: this.themeService.theme.palette.getPrimary(),
8878
+ suggestedTimeTextFont: fontHelper(this.themeService.theme.typography.text3),
8879
+ moreButtonDisabledTextBackground: "transparent",
8880
+ moreButtonDisabledTextBorder: "none",
8881
+ moreButtonDisabledTextBorderRadius: "0",
8882
+ moreButtonDisabledTextColor: this.themeService.theme.palette.getAccent600(),
8883
+ moreButtonDisabledTextFont: fontHelper(this.themeService.theme.typography.caption2),
8884
+ moreButtonTextBackground: "transparent",
8885
+ moreButtonTextBorder: "none",
8886
+ moreButtonTextBorderRadius: "0",
8887
+ moreButtonTextColor: this.themeService.theme.palette.getPrimary(),
8888
+ moreButtonTextFont: fontHelper(this.themeService.theme.typography.caption2),
8889
+ goalCompletionTextColor: this.themeService.theme.palette.getAccent(),
8890
+ goalCompletionTextFont: fontHelper(this.themeService.theme.typography.text3),
8891
+ errorTextColor: this.themeService.theme.palette.getError(),
8892
+ errorTextFont: fontHelper(this.themeService.theme.typography.text3),
8893
+ scheduleButtonStyle: {
8894
+ iconHeight: "20px", iconWidth: "20px",
8895
+ buttonIconTint: this.themeService.theme.palette.getAccent(),
8896
+ buttonTextFont: fontHelper(this.themeService.theme.typography.name),
8897
+ buttonTextColor: this.themeService.theme.palette.getAccent("dark"),
8898
+ border: "none",
8899
+ borderRadius: "8px",
8900
+ background: this.themeService.theme.palette.getPrimary(),
8901
+ width: "100%",
8902
+ display: "flex",
8903
+ justifyContent: "center",
8904
+ padding: "8px"
8905
+ },
8906
+ seperatorTint: this.themeService.theme.palette.getAccent200(),
8907
+ subtitleTextColor: this.themeService.theme.palette.getAccent400(),
8908
+ subtitleTextFont: fontHelper(this.themeService.theme.typography.name),
8909
+ summaryTextColor: this.themeService.theme.palette.getAccent(),
8910
+ summaryTextFont: fontHelper(this.themeService.theme.typography.subtitle1),
8911
+ timezoneTextColor: this.themeService.theme.palette.getAccent600(),
8912
+ timezoneTextFont: fontHelper(this.themeService.theme.typography.caption2),
8913
+ titleTextColor: this.themeService.theme.palette.getAccent(),
8914
+ titleTextFont: fontHelper(this.themeService.theme.typography.title1),
8915
+ timezoneIconTint: this.themeService.theme.palette.getAccent(),
8916
+ calendarIconTint: this.themeService.theme.palette.getAccent(),
8917
+ clockIconTint: this.themeService.theme.palette.getAccent(),
8918
+ });
8919
+ };
8700
8920
  this.wrapperStyle = () => {
8701
8921
  return {
8702
8922
  height: this.messageListStyle.height,
@@ -8750,7 +8970,6 @@ class CometChatMessageListComponent {
8750
8970
  }
8751
8971
  }
8752
8972
  ngOnChanges(changes) {
8753
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
8754
8973
  try {
8755
8974
  if (changes["user"] || changes["group"]) {
8756
8975
  this.chatChanged = true;
@@ -8807,23 +9026,11 @@ class CometChatMessageListComponent {
8807
9026
  }
8808
9027
  }
8809
9028
  //Removing Previous Conversation Listeners
8810
- (_a = this.onTextMessageReceived) === null || _a === void 0 ? void 0 : _a.unsubscribe();
8811
- (_b = this.onMediaMessageReceived) === null || _b === void 0 ? void 0 : _b.unsubscribe();
8812
- (_c = this.onCustomMessageReceived) === null || _c === void 0 ? void 0 : _c.unsubscribe();
8813
- (_d = this.onFormMessageReceived) === null || _d === void 0 ? void 0 : _d.unsubscribe();
8814
- (_e = this.onCardMessageReceived) === null || _e === void 0 ? void 0 : _e.unsubscribe();
8815
- (_f = this.onCustomInteractiveMessageReceived) === null || _f === void 0 ? void 0 : _f.unsubscribe();
8816
- (_g = this.onMessagesDelivered) === null || _g === void 0 ? void 0 : _g.unsubscribe();
8817
- (_h = this.onMessagesRead) === null || _h === void 0 ? void 0 : _h.unsubscribe();
8818
- (_j = this.onMessageDeleted) === null || _j === void 0 ? void 0 : _j.unsubscribe();
8819
- (_k = this.onMessageEdited) === null || _k === void 0 ? void 0 : _k.unsubscribe();
8820
- (_l = this.onTransientMessageReceived) === null || _l === void 0 ? void 0 : _l.unsubscribe();
8821
9029
  CometChat.removeGroupListener(this.groupListenerId);
8822
9030
  CometChat.removeCallListener(this.callListenerId);
8823
9031
  this.groupListenerId = "group_" + new Date().getTime();
8824
9032
  this.callListenerId = "call_" + new Date().getTime();
8825
9033
  // Attach MessageListeners for the new conversation
8826
- this.addMessageEventListeners();
8827
9034
  }
8828
9035
  }
8829
9036
  catch (error) {
@@ -8976,7 +9183,7 @@ class CometChatMessageListComponent {
8976
9183
  }
8977
9184
  }
8978
9185
  ngOnDestroy() {
8979
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
9186
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
8980
9187
  this.showConversationStarter = false;
8981
9188
  this.showConversationSummary = false;
8982
9189
  this.unsubscribeToEvents();
@@ -8988,13 +9195,14 @@ class CometChatMessageListComponent {
8988
9195
  (_b = this.onMediaMessageReceived) === null || _b === void 0 ? void 0 : _b.unsubscribe();
8989
9196
  (_c = this.onCustomMessageReceived) === null || _c === void 0 ? void 0 : _c.unsubscribe();
8990
9197
  (_d = this.onFormMessageReceived) === null || _d === void 0 ? void 0 : _d.unsubscribe();
8991
- (_e = this.onCardMessageReceived) === null || _e === void 0 ? void 0 : _e.unsubscribe();
8992
- (_f = this.onCustomInteractiveMessageReceived) === null || _f === void 0 ? void 0 : _f.unsubscribe();
8993
- (_g = this.onMessagesDelivered) === null || _g === void 0 ? void 0 : _g.unsubscribe();
8994
- (_h = this.onMessagesRead) === null || _h === void 0 ? void 0 : _h.unsubscribe();
8995
- (_j = this.onMessageDeleted) === null || _j === void 0 ? void 0 : _j.unsubscribe();
8996
- (_k = this.onMessageEdited) === null || _k === void 0 ? void 0 : _k.unsubscribe();
8997
- (_l = this.onTransientMessageReceived) === null || _l === void 0 ? void 0 : _l.unsubscribe();
9198
+ (_e = this.onSchedulerMessageReceived) === null || _e === void 0 ? void 0 : _e.unsubscribe();
9199
+ (_f = this.onCardMessageReceived) === null || _f === void 0 ? void 0 : _f.unsubscribe();
9200
+ (_g = this.onCustomInteractiveMessageReceived) === null || _g === void 0 ? void 0 : _g.unsubscribe();
9201
+ (_h = this.onMessagesDelivered) === null || _h === void 0 ? void 0 : _h.unsubscribe();
9202
+ (_j = this.onMessagesRead) === null || _j === void 0 ? void 0 : _j.unsubscribe();
9203
+ (_k = this.onMessageDeleted) === null || _k === void 0 ? void 0 : _k.unsubscribe();
9204
+ (_l = this.onMessageEdited) === null || _l === void 0 ? void 0 : _l.unsubscribe();
9205
+ (_m = this.onTransientMessageReceived) === null || _m === void 0 ? void 0 : _m.unsubscribe();
8998
9206
  }
8999
9207
  catch (error) {
9000
9208
  if (this.onError) {
@@ -9210,7 +9418,7 @@ class CometChatMessageListComponent {
9210
9418
  (msg === null || msg === void 0 ? void 0 : msg.getType()) == CometChatUIKitConstants.MessageTypes.audio) {
9211
9419
  style = {
9212
9420
  borderRadius: "",
9213
- background: this.themeService.theme.palette.getAccent100(),
9421
+ background: this.themeService.theme.palette.getSecondary(),
9214
9422
  };
9215
9423
  }
9216
9424
  else if ((msg === null || msg === void 0 ? void 0 : msg.getType()) == CometChatUIKitConstants.MessageTypes.groupMember ||
@@ -9218,13 +9426,13 @@ class CometChatMessageListComponent {
9218
9426
  style = {
9219
9427
  background: "transparent",
9220
9428
  borderRadius: "12px",
9221
- border: `1px solid ${this.themeService.theme.palette.getAccent100()}`,
9429
+ border: `1px solid ${this.themeService.theme.palette.getSecondary()}`,
9222
9430
  };
9223
9431
  }
9224
9432
  else if (!(msg === null || msg === void 0 ? void 0 : msg.getDeletedAt()) &&
9225
9433
  (msg === null || msg === void 0 ? void 0 : msg.getCategory()) === CometChatUIKitConstants.MessageCategory.interactive) {
9226
9434
  return {
9227
- background: this.themeService.theme.palette.getAccent100(),
9435
+ background: this.themeService.theme.palette.getSecondary(),
9228
9436
  width: "300px",
9229
9437
  };
9230
9438
  }
@@ -9232,13 +9440,13 @@ class CometChatMessageListComponent {
9232
9440
  if ((msg === null || msg === void 0 ? void 0 : msg.getSender()) &&
9233
9441
  (msg === null || msg === void 0 ? void 0 : msg.getSender().getUid()) != this.loggedInUser.getUid()) {
9234
9442
  style = {
9235
- background: this.themeService.theme.palette.getAccent100(),
9443
+ background: this.themeService.theme.palette.getSecondary(),
9236
9444
  borderRadius: "12px",
9237
9445
  };
9238
9446
  }
9239
9447
  else {
9240
9448
  style = {
9241
- background: this.themeService.theme.palette.getAccent100(),
9449
+ background: this.themeService.theme.palette.getSecondary(),
9242
9450
  borderRadius: "12px",
9243
9451
  };
9244
9452
  }
@@ -9332,7 +9540,7 @@ class CometChatMessageListComponent {
9332
9540
  width: "100%",
9333
9541
  height: "30px",
9334
9542
  border: `1px solid ${this.themeService.theme.palette.getAccent100()}`,
9335
- borderRadius: "3px",
9543
+ borderRadius: "6px",
9336
9544
  padding: "0px 0px 0px 5px",
9337
9545
  placeholderTextColor: this.themeService.theme.palette.getAccent400(),
9338
9546
  placeholderTextFont: fontHelper(this.themeService.theme.typography.subtitle2),
@@ -9361,14 +9569,14 @@ class CometChatMessageListComponent {
9361
9569
  borderRadius: "4px",
9362
9570
  background: "",
9363
9571
  labelTextFont: fontHelper(this.themeService.theme.typography.subtitle2),
9364
- labelTextColor: this.themeService.theme.palette.getAccent600(),
9572
+ labelTextColor: this.themeService.theme.palette.getAccent(),
9365
9573
  });
9366
9574
  const dropdownStyle = new DropdownStyle({
9367
9575
  height: "35px",
9368
9576
  width: "100%",
9369
9577
  background: this.themeService.theme.palette.getBackground(),
9370
9578
  border: `1px solid ${this.themeService.theme.palette.getAccent100()}`,
9371
- borderRadius: "12px",
9579
+ borderRadius: "6px",
9372
9580
  activeTextFont: fontHelper(this.themeService.theme.typography.subtitle2),
9373
9581
  activeTextColor: this.themeService.theme.palette.getAccent(),
9374
9582
  arrowIconTint: this.themeService.theme.palette.getAccent700(),
@@ -9386,7 +9594,7 @@ class CometChatMessageListComponent {
9386
9594
  width: "100%",
9387
9595
  background: this.themeService.theme.palette.getPrimary(),
9388
9596
  border: `none`,
9389
- borderRadius: "12px",
9597
+ borderRadius: "6px",
9390
9598
  buttonTextFont: fontHelper(this.themeService.theme.typography.subtitle2),
9391
9599
  buttonTextColor: this.themeService.theme.palette.getBackground(),
9392
9600
  justifyContent: "center",
@@ -9404,7 +9612,7 @@ class CometChatMessageListComponent {
9404
9612
  textColor: this.themeService.theme.palette.getAccent(),
9405
9613
  optionBackground: this.themeService.theme.palette.getBackground(),
9406
9614
  optionBorder: `1px solid ${this.themeService.theme.palette.getAccent100()}`,
9407
- optionBorderRadius: "2px",
9615
+ optionBorderRadius: "3px",
9408
9616
  hoverTextFont: fontHelper(this.themeService.theme.typography.subtitle2),
9409
9617
  hoverTextColor: this.themeService.theme.palette.getAccent(),
9410
9618
  hoverTextBackground: this.themeService.theme.palette.getAccent100(),
@@ -9442,6 +9650,10 @@ class CometChatMessageListComponent {
9442
9650
  goalCompletionTextColor: this.themeService.theme.palette.getAccent(),
9443
9651
  goalCompletionTextFont: fontHelper(this.themeService.theme.typography.subtitle1),
9444
9652
  wrapperPadding: "2px",
9653
+ datePickerBorder: `1px solid ${this.themeService.theme.palette.getAccent100()}`,
9654
+ datePickerBorderRadius: "6px",
9655
+ datePickerFont: fontHelper(this.themeService.theme.typography.subtitle2),
9656
+ datePickerFontColor: this.themeService.theme.palette.getAccent(),
9445
9657
  });
9446
9658
  }
9447
9659
  getCardMessageBubbleStyle() {
@@ -9579,6 +9791,7 @@ class CometChatMessageListComponent {
9579
9791
  extension_document: this.documentBubble,
9580
9792
  extension_poll: this.pollBubble,
9581
9793
  meeting: this.directCalling,
9794
+ scheduler: this.schedulerBubble,
9582
9795
  form: this.formBubble,
9583
9796
  card: this.cardBubble,
9584
9797
  };
@@ -9748,6 +9961,7 @@ class CometChatMessageListComponent {
9748
9961
  this.setDateStyle();
9749
9962
  this.setReceiptStyle();
9750
9963
  this.subscribeToEvents();
9964
+ this.addMessageEventListeners();
9751
9965
  this.setOngoingCallStyle();
9752
9966
  this.state = States.loading;
9753
9967
  CometChat.getLoggedinUser()
@@ -10105,6 +10319,10 @@ class CometChatMessageListComponent {
10105
10319
  CometChatMessageEvents.onFormMessageReceived.subscribe((message) => {
10106
10320
  this.messageUpdate(CometChatUIKitConstants.messages.INTERACTIVE_MESSAGE_RECEIVED, message);
10107
10321
  });
10322
+ this.onSchedulerMessageReceived =
10323
+ CometChatMessageEvents.onSchedulerMessageReceived.subscribe((message) => {
10324
+ this.messageUpdate(CometChatUIKitConstants.messages.INTERACTIVE_MESSAGE_RECEIVED, message);
10325
+ });
10108
10326
  this.onCardMessageReceived =
10109
10327
  CometChatMessageEvents.onCardMessageReceived.subscribe((message) => {
10110
10328
  this.messageUpdate(CometChatUIKitConstants.messages.INTERACTIVE_MESSAGE_RECEIVED, message);
@@ -10806,10 +11024,10 @@ class CometChatMessageListComponent {
10806
11024
  }
10807
11025
  }
10808
11026
  CometChatMessageListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatMessageListComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
10809
- CometChatMessageListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatMessageListComponent, selector: "cometchat-message-list", inputs: { hideError: "hideError", errorStateView: "errorStateView", loadingStateView: "loadingStateView", emptyStateView: "emptyStateView", errorStateText: "errorStateText", emptyStateText: "emptyStateText", loadingIconURL: "loadingIconURL", user: "user", group: "group", disableReceipt: "disableReceipt", disableSoundForMessages: "disableSoundForMessages", customSoundForMessages: "customSoundForMessages", readIcon: "readIcon", deliveredIcon: "deliveredIcon", sentIcon: "sentIcon", waitIcon: "waitIcon", errorIcon: "errorIcon", aiErrorIcon: "aiErrorIcon", aiEmptyIcon: "aiEmptyIcon", alignment: "alignment", showAvatar: "showAvatar", datePattern: "datePattern", timestampAlignment: "timestampAlignment", DateSeparatorPattern: "DateSeparatorPattern", templates: "templates", messagesRequestBuilder: "messagesRequestBuilder", newMessageIndicatorText: "newMessageIndicatorText", scrollToBottomOnNewMessages: "scrollToBottomOnNewMessages", thresholdValue: "thresholdValue", unreadMessageThreshold: "unreadMessageThreshold", apiConfiguration: "apiConfiguration", onThreadRepliesClick: "onThreadRepliesClick", headerView: "headerView", footerView: "footerView", parentMessageId: "parentMessageId", avatarStyle: "avatarStyle", backdropStyle: "backdropStyle", dateSeparatorStyle: "dateSeparatorStyle", messageListStyle: "messageListStyle", onError: "onError", messageInformationConfiguration: "messageInformationConfiguration" }, viewQueries: [{ propertyName: "listScroll", first: true, predicate: ["listScroll"], descendants: true }, { propertyName: "bottom", first: true, predicate: ["bottom"], descendants: true }, { propertyName: "top", first: true, predicate: ["top"], descendants: true }, { propertyName: "textBubble", first: true, predicate: ["textBubble"], descendants: true }, { propertyName: "threadMessageBubble", first: true, predicate: ["threadMessageBubble"], descendants: true }, { propertyName: "fileBubble", first: true, predicate: ["fileBubble"], descendants: true }, { propertyName: "audioBubble", first: true, predicate: ["audioBubble"], descendants: true }, { propertyName: "videoBubble", first: true, predicate: ["videoBubble"], descendants: true }, { propertyName: "imageBubble", first: true, predicate: ["imageBubble"], descendants: true }, { propertyName: "formBubble", first: true, predicate: ["formBubble"], descendants: true }, { propertyName: "cardBubble", first: true, predicate: ["cardBubble"], descendants: true }, { propertyName: "stickerBubble", first: true, predicate: ["stickerBubble"], descendants: true }, { propertyName: "documentBubble", first: true, predicate: ["documentBubble"], descendants: true }, { propertyName: "whiteboardBubble", first: true, predicate: ["whiteboardBubble"], descendants: true }, { propertyName: "popoverRef", first: true, predicate: ["popoverRef"], descendants: true }, { propertyName: "directCalling", first: true, predicate: ["directCalling"], descendants: true }, { propertyName: "pollBubble", first: true, predicate: ["pollBubble"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-message-list__wrapper\" [ngStyle]=\"wrapperStyle()\" *ngIf=\"!openContactsView\">\n\n <div class=\"cc-message-list__header-view\">\n <div *ngIf=\"headerView\">\n <ng-container *ngTemplateOutlet=\"headerView\">\n </ng-container>\n </div>\n </div>\n <div class=\"cc-message-list\" #listScroll\n [ngStyle]=\"{height: showSmartReply || showConversationStarter || showConversationSummary ? '92%' : '100%'}\">\n <div class=\"cc-message-list__top\" #top>\n </div>\n <div class=\"cc-message-list__decorator-message\"\n *ngIf=\"state == states.loading || state == states.error || state == states.empty \"\n [ngStyle]=\"messageContainerStyle()\">\n <div class=\"cc-message-list__loading-view\" *ngIf=\"state == states.loading \">\n <cometchat-loader [iconURL]=\"loadingIconURL\" [loaderStyle]=\"loadingStyle()\">\n </cometchat-loader>\n <span class=\"cc-message-list__customview--loading\" *ngIf=\"state == states.loading && loadingStateView\">\n <ng-container *ngTemplateOutlet=\"loadingStateView\">\n </ng-container>\n </span>\n </div>\n <div class=\"cc-message-list__error-view\" *ngIf=\"state == states.error && !hideError \">\n <cometchat-label [labelStyle]=\"errorStyle()\" *ngIf=\"state == states.error && !hideError && !errorStateView\"\n [text]=\"errorStateText\">\n </cometchat-label>\n <span class=\"cc-message-list__custom-view--error\"\n *ngIf=\"state == states.error && !hideError && errorStateView\">\n <ng-container *ngTemplateOutlet=\"errorStateView\">\n </ng-container>\n </span>\n </div>\n <div class=\"cc-message-list__empty-view\" *ngIf=\"state == states.empty\">\n <!-- <cometchat-label [labelStyle]=\"emptyStyle()\" *ngIf=\"state == states.empty && !emptyStateView\" [text]=\"emptyStateText\"\n >\n </cometchat-label> -->\n <span class=\"cc-message-list__custom-view--empty\" *ngIf=\"state == states.empty && emptyStateView\">\n <ng-container *ngTemplateOutlet=\"emptyStateView\">\n </ng-container>\n </span>\n </div>\n </div>\n <div class=\"cc-message-list__bubble\" *ngFor=\"let message of messagesList; let i = index\">\n <div class=\"cc-message-list__date-container\" *ngIf=\"(i === 0) && message?.getSentAt()\">\n <span class=\"cc-message-list__date\">\n <cometchat-date [timestamp]=\"message!.getSentAt()\" [pattern]=\"DateSeparatorPattern\"\n [dateStyle]=\"dateSeparatorStyle\">\n </cometchat-date>\n </span>\n </div>\n <div class=\"cc-message-list__date-container\"\n *ngIf=\"(i > 0 && isDateDifferent(messagesList[i - 1]?.getSentAt(), messagesList[i]?.getSentAt())) && message?.getSentAt()\">\n <span class=\"cc-message-list__date\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\" [pattern]=\"DateSeparatorPattern\"\n [dateStyle]=\"dateSeparatorStyle\">\n </cometchat-date>\n </span>\n </div>\n <div *ngIf=\"getBubbleWrapper(message) \">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\" [leadingView]=\" showAvatar ? leadingView : null\"\n [bottomView]=\"enableReactions ? reactionView : null\"\n [headerView]=\"getHeaderView(message) || message?.getCategory() != MessageCategory.action && showHeaderTitle(message) ? bubbleHeader : null\"\n [footerView]=\"footerView\" [contentView]=\"contentView\" [threadView]=\"threadView\"\n [id]=\"message?.getId() || message?.getMuid()\" [options]=\"setMessageOptions(message)\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\" [alignment]=\"setBubbleAlignment(message)\">\n <ng-template #contentView>\n <ng-container *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\"\n [alignment]=\"setBubbleAlignment(message)\" [addReactionIconURL]=\"addReactionIconURL\"\n [loggedInUser]=\"loggedInUser\" [reactionsStyle]=\"reactionsStyle(message)\"></reactions-view>\n </ng-template>\n <ng-template #footerView>\n <div class=\"cc-message-list__bubble-footer\">\n <div *ngIf=\"getFooterView(message);else bubbleFooter\">\n <ng-container *ngTemplateOutlet=\"getFooterView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #bubbleFooter>\n <div class=\"cc-message-list__bubble-date\"\n *ngIf=\"timestampAlignment == timestampEnum.bottom && message?.getCategory() != MessageCategory.action && !message.getDeletedAt() && message?.getCategory() != MessageCategory.call && message?.getSentAt()\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n [pattern]=\"datePattern\">\n </cometchat-date>\n </div>\n <div\n *ngIf=\" !message?.getDeletedAt() && !disableReceipt && (!message?.getSender() ||this.loggedInUser.getUid() == message?.getSender()?.getUid()) && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call\"\n class=\"cc-message-list__receipt\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(message)\" [receiptStyle]=\"receiptStyle\"\n [waitIcon]=\"waitIcon\" [sentIcon]=\"sentIcon\" [deliveredIcon]=\"deliveredIcon\" [readIcon]=\"readIcon\"\n [errorIcon]=\"errorIcon\"></cometchat-receipt>\n </div>\n </ng-template>\n </div>\n </ng-template>\n <ng-template #leadingView>\n <div *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\" [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\" [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\" [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n <ng-template #threadView>\n <div class=\"cc-message-list__threadreplies\" *ngIf=\"message?.getReplyCount() && !message.getDeletedAt()\">\n <cometchat-divider [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n <cometchat-button [text]=\"getThreadCount(message)\" [buttonStyle]=\"getThreadViewStyle(message)\"\n [iconURL]=\"threadOpenIcon\" (cc-button-clicked)=\"openThreadView(message)\">\n </cometchat-button>\n </div>\n </ng-template>\n </cometchat-message-bubble>\n </div>\n </div>\n <div class=\"cc-message-list__bottom\" #bottom>\n </div>\n\n </div>\n <div class=\"cc-message-list__message-indicator\" *ngIf=\"UnreadCount && UnreadCount.length > 0 && !isOnBottom\"\n [ngStyle]=\"{bottom: showSmartReply || footerView || showConversationStarter || showConversationSummary ? '20%' : '13%'}\">\n <cometchat-button [text]=\"newMessageCount\" [buttonStyle]=\"unreadMessagesStyle\"\n (cc-button-clicked)=\"scrollToBottom()\"></cometchat-button>\n </div>\n <div class=\"cc-message-list__footer-view\" [ngStyle]=\"{height: 'auto'}\">\n\n <div *ngIf=\"footerView;else footer\">\n <ng-container *ngTemplateOutlet=\"footerView\">\n </ng-container>\n </div>\n <ng-template #footer>\n\n <div class=\"cc-message-list__smart-replies\" *ngIf=\"!showConversationStarter && showSmartReply && getReplies()\">\n <smart-replies [smartReplyStyle]=\"smartReplyStyle\" [replies]=\"getReplies()\"\n (cc-reply-clicked)=\"sendReply($event)\" (cc-close-clicked)=\"closeSmartReply()\">\n </smart-replies>\n </div>\n\n\n <div class=\"cc-message-list__conversation-starters\" *ngIf=\"enableConversationStarter && showConversationStarter\">\n <cometchat-ai-card [state]=\"conversationStarterState\" [loadingStateText]=\"starterLoadingStateText\"\n [emptyStateText]=\"starterEmptyStateText\" [errorStateText]=\"errorStateText\">\n <smart-replies *ngIf=\"conversationStarterState == states.loaded && !parentMessageId\"\n [smartReplyStyle]=\"conversationStarterStyle\" [replies]=\"conversationStarterReplies\" slot=\"loadedView\"\n (cc-reply-clicked)=\"sendConversationStarter($event)\" [closeIconURL]=\"''\">\n </smart-replies>\n </cometchat-ai-card>\n </div>\n\n <div class=\"cc-message-list__conversation-summary\" *ngIf=\"enableConversationSummary && showConversationSummary\">\n\n <cometchat-ai-card [state]=\"conversationSummaryState\" [loadingStateText]=\"summaryLoadingStateText\"\n [emptyStateText]=\"summaryEmptyStateText\" [errorStateText]=\"errorStateText\" [errorIconURL]=\"aiErrorIcon\"\n [emptyIconURL]=\"aiEmptyIcon\">\n <cometchat-panel *ngIf=\"conversationSummaryState == states.loaded && !parentMessageId\" slot=\"loadedView\"\n [panelStyle]=\"conversationSummaryStyle\" title=\"Conversation Summary\" [text]=\"conversationSummary\"\n (cc-close-clicked)=\"closeConversationSummary()\">\n </cometchat-panel>\n </cometchat-ai-card>\n\n </div>\n\n </ng-template>\n </div>\n\n</div>\n<!-- default bubbles -->\n<ng-template #textBubble let-message>\n <cometchat-text-bubble *ngIf=\"message?.type == MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\" [text]=\"message?.message\"></cometchat-text-bubble>\n <cometchat-text-bubble *ngIf=\"message?.getDeletedAt()\" [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"localize('MESSAGE_IS_DELETED')\"></cometchat-text-bubble>\n <cometchat-text-bubble\n *ngIf=\"!isTranslated(message) && !getLinkPreview(message) && !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\" [text]=\"getTextMessage(message)\"></cometchat-text-bubble>\n <link-preview [linkPreviewStyle]=\"linkPreviewStyle\" (cc-link-clicked)=\"openLinkURL($event)\"\n *ngIf=\"!message?.getDeletedAt() && getLinkPreview(message) && enableLinkPreview\"\n [title]=\"getLinkPreviewDetails('title',message)\" [description]=\"getLinkPreviewDetails('description',message)\"\n [URL]=\"getLinkPreviewDetails('url',message)\" [image]=\"getLinkPreviewDetails('image',message)\"\n [favIconURL]=\"getLinkPreviewDetails('favicon',message)\">\n <cometchat-text-bubble\n *ngIf=\"!isTranslated(message) && getLinkPreview(message) && !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\" [text]=\"getTextMessage(message)\"></cometchat-text-bubble>\n </link-preview>\n <message-translation-bubble [alignment]=\"getBubbleAlignment(message)\" *ngIf=\"isTranslated(message)\"\n [messageTranslationStyle]=\"setTranslationStyle(message)\" [translatedText]=\"isTranslated(message)\">\n <cometchat-text-bubble *ngIf=\" !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\" [text]=\"message?.text\"></cometchat-text-bubble>\n\n </message-translation-bubble>\n</ng-template>\n<ng-template #fileBubble let-message>\n\n <cometchat-file-bubble [fileStyle]=\"setFileBubbleStyle(message)\" [downloadIconURL]=\"downloadIconURL\"\n [subtitle]=\"localize('SHARED_FILE')\" [title]=\"message?.data?.attachments ? message?.data?.attachments[0]?.name: ''\"\n [fileURL]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"></cometchat-file-bubble>\n</ng-template>\n<ng-template #audioBubble let-message>\n <cometchat-icon-button [disabled]=\"true\"\n *ngIf=\"message?.category == callConstant && message?.type == MessageTypesConstant.audio\"\n [iconURL]=\"getCallTypeIcon(message)\" [buttonStyle]=\"callStatusStyle(message)\"\n [text]=\"getCallActionMessage(message)\"></cometchat-icon-button>\n <cometchat-audio-bubble *ngIf=\"!message.getDeletedAt() && message?.category != callConstant\"\n [src]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"> </cometchat-audio-bubble>\n</ng-template>\n<ng-template #videoBubble let-message>\n <cometchat-icon-button [disabled]=\"true\"\n *ngIf=\"message?.category == callConstant && message?.type == MessageTypesConstant.video\"\n [iconURL]=\"getCallTypeIcon(message)\" [buttonStyle]=\"callStatusStyle(message)\"\n [text]=\"getCallActionMessage(message)\"></cometchat-icon-button>\n\n <cometchat-video-bubble *ngIf=\"!message.getDeletedAt() && message?.category != callConstant\"\n [videoStyle]=\"videoBubbleStyle\" [src]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"\n [poster]=\" getImageThumbnail(message)\"></cometchat-video-bubble>\n</ng-template>\n<ng-template #imageBubble let-message>\n <image-moderation (cc-show-dialog)=\"openWarningDialog($event)\"\n *ngIf=\"!message.getDeletedAt() && enableImageModeration\" [message]=\"message\"\n [imageModerationStyle]=\"imageModerationStyle\">\n <cometchat-image-bubble (cc-image-clicked)=\"openImageInFullScreen(message)\" [imageStyle]=\"imageBubbleStyle\"\n [src]=\" getImageThumbnail(message)\" [placeholderImage]=\"placeholderIconURL\"></cometchat-image-bubble>\n </image-moderation>\n <cometchat-image-bubble [imageStyle]=\"imageBubbleStyle\" (cc-image-clicked)=\"openImageInFullScreen(message)\"\n *ngIf=\"!message.getDeletedAt() && !enableImageModeration\" [src]=\" getImageThumbnail(message)\"\n [placeholderImage]=\"placeholderIconURL\"></cometchat-image-bubble>\n</ng-template>\n<ng-template #formBubble let-message>\n <cometchat-form-bubble [message]=\"message\" [formBubbleStyle]=\"getFormMessageBubbleStyle()\"></cometchat-form-bubble>\n</ng-template>\n<ng-template #cardBubble let-message>\n <cometchat-card-bubble [message]=\"message\" [cardBubbleStyle]=\"getCardMessageBubbleStyle()\"></cometchat-card-bubble>\n</ng-template>\n<ng-template #customTextBubble>\n</ng-template>\n<ng-template #stickerBubble let-message>\n <cometchat-image-bubble [src]=\"getSticker(message)\" [imageStyle]=\"imageBubbleStyle\"></cometchat-image-bubble>\n\n</ng-template>\n<ng-template #whiteboardBubble let-message>\n <cometchat-document-bubble [hideSeparator]=\"false\" [iconAlignment]=\"documentBubbleAlignment\"\n [documentStyle]=\"documentBubbleStyle\" [URL]=\"getWhiteboardDocument(message)\"\n [ccClicked]=\"launchCollaborativeWhiteboardDocument\" [iconURL]=\"whiteboardIconURL\" [title]=\"whiteboardTitle\"\n [buttonText]=\"whiteboardButtonText\" [subtitle]=\"whiteboardSubitle\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #documentBubble let-message>\n <cometchat-document-bubble [hideSeparator]=\"false\" [iconAlignment]=\"documentBubbleAlignment\"\n [documentStyle]=\"documentBubbleStyle\" [URL]=\"getWhiteboardDocument(message)\"\n [ccClicked]=\"launchCollaborativeWhiteboardDocument\" [iconURL]=\"documentIconURL\" [title]=\"documentTitle\"\n [buttonText]=\"documentButtonText\" [subtitle]=\"documentSubitle\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #directCalling let-message>\n <cometchat-document-bubble [hideSeparator]=\"true\" [iconAlignment]=\"callBubbleAlignment\"\n [documentStyle]=\"getCallBubbleStyle(message)\" [URL]=\"getSessionId(message)\" [ccClicked]=\"startDirectCall\"\n [iconURL]=\"directCallIconURL\" [title]=\"getCallBubbleTitle(message)\"\n [buttonText]=\"joinCallButtonText\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #pollBubble let-message>\n <polls-bubble [pollStyle]=\"pollBubbleStyle\" [pollQuestion]=\"getPollBubbleData(message,'question')\"\n [pollId]=\"getPollBubbleData(message,'id')\" [loggedInUser]=\"loggedInUser\" [senderUid]=\"getPollBubbleData(message)\"\n [metadata]=\"message?.metadata\"></polls-bubble>\n\n</ng-template>\n\n<!-- thread bubble view -->\n<ng-template #threadMessageBubble let-message>\n <div *ngIf=\"getBubbleWrapper(message)\">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\" [bottomView]=\"enableReactions ? reactionView : null\"\n [leadingView]=\" showAvatar ? leadingView : null\" [headerView]=\"bubbleHeader\" [footerView]=\"footerView\"\n [contentView]=\"contentView\" [id]=\"message?.getId() || message?.getMuid()\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\" [alignment]=\"threadedAlignment\">\n <ng-template #contentView>\n <ng-container *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\" [alignment]=\"setBubbleAlignment(message)\"\n [loggedInUser]=\"loggedInUser\" [reactionsStyle]=\"reactionsStyle(message)\"\n [addReactionIconURL]=\"addReactionIconURL\"></reactions-view>\n </ng-template>\n <ng-template #footerView>\n <div class=\"cc-message-list__bubble-footer\">\n <div *ngIf=\"getFooterView(message);else bubbleFooter\">\n <ng-container *ngTemplateOutlet=\"getFooterView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #bubbleFooter>\n <div class=\"cc-message-list__bubble-date\"\n *ngIf=\"timestampAlignment == timestampEnum.bottom && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call && message?.getSentAt()\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\" [pattern]=\"datePattern\">\n </cometchat-date>\n </div>\n <div\n *ngIf=\" !message?.getDeletedAt() && !disableReceipt && (!message?.getSender() ||this.loggedInUser.getUid() == message?.getSender()?.getUid()) && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call\"\n class=\"cc-message-list__receipt\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(message)\" [receiptStyle]=\"receiptStyle\"\n [waitIcon]=\"waitIcon\" [sentIcon]=\"sentIcon\" [deliveredIcon]=\"\" [readIcon]=\"deliveredIcon\"\n [errorIcon]=\"errorIcon\"></cometchat-receipt>\n </div>\n </ng-template>\n </div>\n </ng-template>\n <ng-template #leadingView>\n <div *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\" [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\" [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\" [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n </cometchat-message-bubble>\n\n</ng-template>\n\n\n<!-- -->\n<ng-template #bubbleView></ng-template>\n<cometchat-popover [popoverStyle]=\"popoverStyle\" #popoverRef [placement]=\"keyboardAlignment\">\n <cometchat-emoji-keyboard (cc-emoji-clicked)=\"addReaction($event)\" slot=\"content\"></cometchat-emoji-keyboard>\n</cometchat-popover>\n<cometchat-backdrop *ngIf=\"openConfirmDialog\" [backdropStyle]=\"backdropStyle\">\n <cometchat-confirm-dialog [title]=\"''\" [messageText]=\"warningText\" (cc-confirm-clicked)=\"onConfirmClick()\"\n [cancelButtonText]=\"cancelText\" [confirmButtonText]=\"confirmText\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"confirmDialogStyle\">\n\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-full-screen-viewer (cc-close-clicked)=\"closeImageInFullScreen()\" *ngIf=\"openFullscreenView\"\n [URL]=\"imageurlToOpen\" [closeIconURL]=\"closeIconURL\" [fullScreenViewerStyle]=\"fullScreenViewerStyle\">\n\n</cometchat-full-screen-viewer>\n\n<!-- ongoing callscreen for direct call -->\n<cometchat-ongoing-call *ngIf=\"showOngoingCall\" [callSettingsBuilder]=\"getCallBuilder()\"\n [ongoingCallStyle]=\"ongoingCallStyle\" [sessionID]=\"sessionId\"></cometchat-ongoing-call>\n<!-- message information view -->\n<!-- thread bubble view -->\n<ng-template #messageinfoBubble let-message>\n <div *ngIf=\"getBubbleWrapper(message)\">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\"\n [bottomView]=\"enableReactions && hasReaction(message) ? reactionView : null\"\n [leadingView]=\" showAvatar ? leadingView : null\" [headerView]=\"bubbleHeader\" [contentView]=\"contentView\"\n [id]=\"message?.getId() || message?.getMuid()\" [messageBubbleStyle]=\"setMessageBubbleStyle(message)\"\n [alignment]=\"messageInfoAlignment\">\n <ng-template #contentView>\n <ng-container *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\" [alignment]=\"setBubbleAlignment(message)\"\n [addReactionIconURL]=\"addReactionIconURL\" [loggedInUser]=\"loggedInUser\"\n [reactionsStyle]=\"reactionsStyle(message)\"></reactions-view>\n </ng-template>\n <ng-template #leadingView>\n <div *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\" [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\" [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\" [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n </cometchat-message-bubble>\n\n</ng-template>\n<cometchat-backdrop *ngIf=\"openMessageInfoPage\" [backdropStyle]=\"backdropStyle\">\n <cometchat-message-information [closeIconURL]=\"messageInformationConfiguration.closeIconURL\"\n [loadingStateView]=\"messageInformationConfiguration.loadingStateView\"\n [errorStateView]=\"messageInformationConfiguration.errorStateView\"\n [listItemStyle]=\"messageInformationConfiguration.listItemStyle\"\n [emptyStateView]=\"messageInformationConfiguration.emptyStateView\"\n [loadingIconURL]=\"messageInformationConfiguration.loadingIconURL\"\n [readIcon]=\"messageInformationConfiguration.readIcon\"\n [deliveredIcon]=\"messageInformationConfiguration.deliveredIcon\" [onError]=\"messageInformationConfiguration.onError\"\n [SubtitleView]=\"messageInformationConfiguration.subtitleView\"\n [receiptDatePattern]=\"messageInformationConfiguration.receiptDatePattern\"\n [listItemView]=\"messageInformationConfiguration.listItemView \"\n [messageInformationStyle]=\"messageInformationConfiguration.messageInformationStyle\"\n [onClose]=\"messageInformationConfiguration.onClose ?? closeMessageInfoPage\"\n [bubbleView]=\"messageInformationConfiguration.bubbleView ?? messageinfoBubble\" [message]=\"messageInfoObject\">\n\n </cometchat-message-information>\n</cometchat-backdrop>", styles: [".cc-message-list{height:100%;width:100%;overflow-y:auto;overflow-x:hidden;position:relative}.cc-message-list__wrapper{height:100%;width:100%;display:flex;flex-direction:column;justify-content:space-between;overflow-y:hidden}.cc-message-list__bubble-footer{display:flex;justify-content:center;align-items:center}.cc-message-list__date-container{text-align:center;margin:5px 0}.cc-message-list__smart-replies,.cc-message-list__conversation-starters{height:-moz-fit-content;height:fit-content;width:100%;position:absolute;bottom:0;z-index:1}.cc-message-list__conversation-summary{height:100%;position:relative;bottom:0;z-index:1;padding:.1px 14px}.cc-message-list__date{border-radius:10px;display:flex;justify-content:center}.cc-message-list__threadreplies{min-width:130px;width:100%}.cc-message-list__message-indicator{height:25px;display:flex;align-items:center;justify-content:center;width:100%;bottom:10%;position:absolute}.cc-message-list__footer-view{z-index:1;position:relative;width:100%;box-sizing:border-box;margin-bottom:1px}.cc-message-list__decorator-message{margin:0;line-height:30px;word-wrap:break-word;padding:0 8px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;height:100%}.cc-message-list__footer__decorator-message{margin:0;line-height:30px;word-wrap:break-word;padding:0 8px 0 16px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:flex-start;height:100%}.cc-message-list::-webkit-scrollbar{background:transparent;width:8px}.cc-message-list::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-message-list__footer-view-decorator{display:flex;flex-direction:row;column-gap:8px}.cc_panel_container{border:1px solid #6851d6}\n"], components: [{ type: CometChatMessageBubbleComponent, selector: "cometchat-message-bubble", inputs: ["messageBubbleStyle", "alignment", "options", "id", "leadingView", "headerView", "replyView", "contentView", "threadView", "footerView", "bottomView", "moreIconURL", "topMenuSize"] }, { type: CometChatOngoingCallComponent, selector: "cometchat-ongoing-call", inputs: ["ongoingCallStyle", "resizeIconHoverText", "sessionID", "minimizeIconURL", "maximizeIconURL", "callSettingsBuilder", "callWorkflow", "onError"] }, { type: CometChatMessageInformationComponent, selector: "cometchat-message-information", inputs: ["closeIconURL", "message", "title", "template", "bubbleView", "subtitleView", "listItemView", "receiptDatePattern", "onError", "messageInformationStyle", "readIcon", "deliveredIcon", "onClose", "listItemStyle", "emptyStateText", "errorStateText", "emptyStateView", "loadingIconURL", "loadingStateView", "errorStateView"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
11027
+ CometChatMessageListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatMessageListComponent, selector: "cometchat-message-list", inputs: { hideError: "hideError", errorStateView: "errorStateView", loadingStateView: "loadingStateView", emptyStateView: "emptyStateView", errorStateText: "errorStateText", emptyStateText: "emptyStateText", loadingIconURL: "loadingIconURL", user: "user", group: "group", disableReceipt: "disableReceipt", disableSoundForMessages: "disableSoundForMessages", customSoundForMessages: "customSoundForMessages", readIcon: "readIcon", deliveredIcon: "deliveredIcon", sentIcon: "sentIcon", waitIcon: "waitIcon", errorIcon: "errorIcon", aiErrorIcon: "aiErrorIcon", aiEmptyIcon: "aiEmptyIcon", alignment: "alignment", showAvatar: "showAvatar", datePattern: "datePattern", timestampAlignment: "timestampAlignment", DateSeparatorPattern: "DateSeparatorPattern", templates: "templates", messagesRequestBuilder: "messagesRequestBuilder", newMessageIndicatorText: "newMessageIndicatorText", scrollToBottomOnNewMessages: "scrollToBottomOnNewMessages", thresholdValue: "thresholdValue", unreadMessageThreshold: "unreadMessageThreshold", apiConfiguration: "apiConfiguration", onThreadRepliesClick: "onThreadRepliesClick", headerView: "headerView", footerView: "footerView", parentMessageId: "parentMessageId", avatarStyle: "avatarStyle", backdropStyle: "backdropStyle", dateSeparatorStyle: "dateSeparatorStyle", messageListStyle: "messageListStyle", onError: "onError", messageInformationConfiguration: "messageInformationConfiguration" }, viewQueries: [{ propertyName: "listScroll", first: true, predicate: ["listScroll"], descendants: true }, { propertyName: "bottom", first: true, predicate: ["bottom"], descendants: true }, { propertyName: "top", first: true, predicate: ["top"], descendants: true }, { propertyName: "textBubble", first: true, predicate: ["textBubble"], descendants: true }, { propertyName: "threadMessageBubble", first: true, predicate: ["threadMessageBubble"], descendants: true }, { propertyName: "fileBubble", first: true, predicate: ["fileBubble"], descendants: true }, { propertyName: "audioBubble", first: true, predicate: ["audioBubble"], descendants: true }, { propertyName: "videoBubble", first: true, predicate: ["videoBubble"], descendants: true }, { propertyName: "imageBubble", first: true, predicate: ["imageBubble"], descendants: true }, { propertyName: "formBubble", first: true, predicate: ["formBubble"], descendants: true }, { propertyName: "cardBubble", first: true, predicate: ["cardBubble"], descendants: true }, { propertyName: "stickerBubble", first: true, predicate: ["stickerBubble"], descendants: true }, { propertyName: "documentBubble", first: true, predicate: ["documentBubble"], descendants: true }, { propertyName: "whiteboardBubble", first: true, predicate: ["whiteboardBubble"], descendants: true }, { propertyName: "popoverRef", first: true, predicate: ["popoverRef"], descendants: true }, { propertyName: "directCalling", first: true, predicate: ["directCalling"], descendants: true }, { propertyName: "schedulerBubble", first: true, predicate: ["schedulerBubble"], descendants: true }, { propertyName: "pollBubble", first: true, predicate: ["pollBubble"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-message-list__wrapper\" [ngStyle]=\"wrapperStyle()\"\n *ngIf=\"!openContactsView\">\n\n <div class=\"cc-message-list__header-view\">\n <div *ngIf=\"headerView\">\n <ng-container *ngTemplateOutlet=\"headerView\">\n </ng-container>\n </div>\n </div>\n <div class=\"cc-message-list\" #listScroll\n [ngStyle]=\"{height: showSmartReply || showConversationStarter || showConversationSummary ? '92%' : '100%'}\">\n <div class=\"cc-message-list__top\" #top>\n </div>\n <div class=\"cc-message-list__decorator-message\"\n *ngIf=\"state == states.loading || state == states.error || state == states.empty \"\n [ngStyle]=\"messageContainerStyle()\">\n <div class=\"cc-message-list__loading-view\"\n *ngIf=\"state == states.loading \">\n <cometchat-loader [iconURL]=\"loadingIconURL\"\n [loaderStyle]=\"loadingStyle()\">\n </cometchat-loader>\n <span class=\"cc-message-list__customview--loading\"\n *ngIf=\"state == states.loading && loadingStateView\">\n <ng-container *ngTemplateOutlet=\"loadingStateView\">\n </ng-container>\n </span>\n </div>\n <div class=\"cc-message-list__error-view\"\n *ngIf=\"state == states.error && !hideError \">\n <cometchat-label [labelStyle]=\"errorStyle()\"\n *ngIf=\"state == states.error && !hideError && !errorStateView\"\n [text]=\"errorStateText\">\n </cometchat-label>\n <span class=\"cc-message-list__custom-view--error\"\n *ngIf=\"state == states.error && !hideError && errorStateView\">\n <ng-container *ngTemplateOutlet=\"errorStateView\">\n </ng-container>\n </span>\n </div>\n <div class=\"cc-message-list__empty-view\" *ngIf=\"state == states.empty\">\n <!-- <cometchat-label [labelStyle]=\"emptyStyle()\" *ngIf=\"state == states.empty && !emptyStateView\" [text]=\"emptyStateText\"\n >\n </cometchat-label> -->\n <span class=\"cc-message-list__custom-view--empty\"\n *ngIf=\"state == states.empty && emptyStateView\">\n <ng-container *ngTemplateOutlet=\"emptyStateView\">\n </ng-container>\n </span>\n </div>\n </div>\n <div class=\"cc-message-list__bubble\"\n *ngFor=\"let message of messagesList; let i = index\">\n <div class=\"cc-message-list__date-container\"\n *ngIf=\"(i === 0) && message?.getSentAt()\">\n <span class=\"cc-message-list__date\">\n <cometchat-date [timestamp]=\"message!.getSentAt()\"\n [pattern]=\"DateSeparatorPattern\" [dateStyle]=\"dateSeparatorStyle\">\n </cometchat-date>\n </span>\n </div>\n <div class=\"cc-message-list__date-container\"\n *ngIf=\"(i > 0 && isDateDifferent(messagesList[i - 1]?.getSentAt(), messagesList[i]?.getSentAt())) && message?.getSentAt()\">\n <span class=\"cc-message-list__date\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\"\n [pattern]=\"DateSeparatorPattern\" [dateStyle]=\"dateSeparatorStyle\">\n </cometchat-date>\n </span>\n </div>\n <div *ngIf=\"getBubbleWrapper(message) \">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\"\n [leadingView]=\" showAvatar ? leadingView : null\"\n [bottomView]=\"enableReactions ? reactionView : null\"\n [headerView]=\"getHeaderView(message) || message?.getCategory() != MessageCategory.action && showHeaderTitle(message) ? bubbleHeader : null\"\n [footerView]=\"footerView\" [contentView]=\"contentView\"\n [threadView]=\"threadView\"\n [id]=\"message?.getId() || message?.getMuid()\"\n [options]=\"setMessageOptions(message)\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\"\n [alignment]=\"setBubbleAlignment(message)\">\n <ng-template #contentView>\n <ng-container\n *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\"\n [messageObject]=\"message\"\n [alignment]=\"setBubbleAlignment(message)\"\n [addReactionIconURL]=\"addReactionIconURL\"\n [loggedInUser]=\"loggedInUser\"\n [reactionsStyle]=\"reactionsStyle(message)\"></reactions-view>\n </ng-template>\n <ng-template #footerView>\n <div class=\"cc-message-list__bubble-footer\">\n <div *ngIf=\"getFooterView(message);else bubbleFooter\">\n <ng-container\n *ngTemplateOutlet=\"getFooterView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #bubbleFooter>\n <div class=\"cc-message-list__bubble-date\"\n *ngIf=\"timestampAlignment == timestampEnum.bottom && message?.getCategory() != MessageCategory.action && !message.getDeletedAt() && message?.getCategory() != MessageCategory.call && message?.getSentAt()\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\"\n [dateStyle]=\"bubbleDateStyle\" [pattern]=\"datePattern\">\n </cometchat-date>\n </div>\n <div\n *ngIf=\" !message?.getDeletedAt() && !disableReceipt && (!message?.getSender() ||this.loggedInUser.getUid() == message?.getSender()?.getUid()) && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call\"\n class=\"cc-message-list__receipt\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(message)\"\n [receiptStyle]=\"receiptStyle\" [waitIcon]=\"waitIcon\"\n [sentIcon]=\"sentIcon\" [deliveredIcon]=\"deliveredIcon\"\n [readIcon]=\"readIcon\"\n [errorIcon]=\"errorIcon\"></cometchat-receipt>\n </div>\n </ng-template>\n </div>\n </ng-template>\n <ng-template #leadingView>\n <div\n *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\"\n [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container\n *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\"\n [timestamp]=\"message?.getSentAt()\"\n [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n <ng-template #threadView>\n <div class=\"cc-message-list__threadreplies\"\n *ngIf=\"message?.getReplyCount() && !message.getDeletedAt()\">\n <cometchat-divider\n [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n <cometchat-button [text]=\"getThreadCount(message)\"\n [buttonStyle]=\"getThreadViewStyle(message)\"\n [iconURL]=\"threadOpenIcon\"\n (cc-button-clicked)=\"openThreadView(message)\">\n </cometchat-button>\n </div>\n </ng-template>\n </cometchat-message-bubble>\n </div>\n </div>\n <div class=\"cc-message-list__bottom\" #bottom>\n </div>\n\n </div>\n <div class=\"cc-message-list__message-indicator\"\n *ngIf=\"UnreadCount && UnreadCount.length > 0 && !isOnBottom\"\n [ngStyle]=\"{bottom: showSmartReply || footerView || showConversationStarter || showConversationSummary ? '20%' : '13%'}\">\n <cometchat-button [text]=\"newMessageCount\"\n [buttonStyle]=\"unreadMessagesStyle\"\n (cc-button-clicked)=\"scrollToBottom()\"></cometchat-button>\n </div>\n <div class=\"cc-message-list__footer-view\" [ngStyle]=\"{height: 'auto'}\">\n\n <div *ngIf=\"footerView;else footer\">\n <ng-container *ngTemplateOutlet=\"footerView\">\n </ng-container>\n </div>\n <ng-template #footer>\n\n <div class=\"cc-message-list__smart-replies\"\n *ngIf=\"!showConversationStarter && showSmartReply && getReplies()\">\n <smart-replies [smartReplyStyle]=\"smartReplyStyle\"\n [replies]=\"getReplies()\" (cc-reply-clicked)=\"sendReply($event)\"\n (cc-close-clicked)=\"closeSmartReply()\">\n </smart-replies>\n </div>\n\n\n <div class=\"cc-message-list__conversation-starters\"\n *ngIf=\"enableConversationStarter && showConversationStarter\">\n <cometchat-ai-card [state]=\"conversationStarterState\"\n [loadingStateText]=\"starterLoadingStateText\"\n [emptyStateText]=\"starterEmptyStateText\"\n [errorStateText]=\"errorStateText\">\n <smart-replies\n *ngIf=\"conversationStarterState == states.loaded && !parentMessageId\"\n [smartReplyStyle]=\"conversationStarterStyle\"\n [replies]=\"conversationStarterReplies\" slot=\"loadedView\"\n (cc-reply-clicked)=\"sendConversationStarter($event)\"\n [closeIconURL]=\"''\">\n </smart-replies>\n </cometchat-ai-card>\n </div>\n\n <div class=\"cc-message-list__conversation-summary\"\n *ngIf=\"enableConversationSummary && showConversationSummary\">\n\n <cometchat-ai-card [state]=\"conversationSummaryState\"\n [loadingStateText]=\"summaryLoadingStateText\"\n [emptyStateText]=\"summaryEmptyStateText\"\n [errorStateText]=\"errorStateText\" [errorIconURL]=\"aiErrorIcon\"\n [emptyIconURL]=\"aiEmptyIcon\">\n <cometchat-panel\n *ngIf=\"conversationSummaryState == states.loaded && !parentMessageId\"\n slot=\"loadedView\" [panelStyle]=\"conversationSummaryStyle\"\n title=\"Conversation Summary\" [text]=\"conversationSummary\"\n (cc-close-clicked)=\"closeConversationSummary()\">\n </cometchat-panel>\n </cometchat-ai-card>\n\n </div>\n\n </ng-template>\n </div>\n\n</div>\n<!-- default bubbles -->\n<ng-template #textBubble let-message>\n <cometchat-text-bubble\n *ngIf=\"message?.type == MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"message?.message\"></cometchat-text-bubble>\n <cometchat-text-bubble *ngIf=\"message?.getDeletedAt()\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"localize('MESSAGE_IS_DELETED')\"></cometchat-text-bubble>\n <cometchat-text-bubble\n *ngIf=\"!isTranslated(message) && !getLinkPreview(message) && !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"getTextMessage(message)\"></cometchat-text-bubble>\n <link-preview [linkPreviewStyle]=\"linkPreviewStyle\"\n (cc-link-clicked)=\"openLinkURL($event)\"\n *ngIf=\"!message?.getDeletedAt() && getLinkPreview(message) && enableLinkPreview\"\n [title]=\"getLinkPreviewDetails('title',message)\"\n [description]=\"getLinkPreviewDetails('description',message)\"\n [URL]=\"getLinkPreviewDetails('url',message)\"\n [image]=\"getLinkPreviewDetails('image',message)\"\n [favIconURL]=\"getLinkPreviewDetails('favicon',message)\">\n <cometchat-text-bubble\n *ngIf=\"!isTranslated(message) && getLinkPreview(message) && !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"getTextMessage(message)\"></cometchat-text-bubble>\n </link-preview>\n <message-translation-bubble [alignment]=\"getBubbleAlignment(message)\"\n *ngIf=\"isTranslated(message)\"\n [messageTranslationStyle]=\"setTranslationStyle(message)\"\n [translatedText]=\"isTranslated(message)\">\n <cometchat-text-bubble\n *ngIf=\" !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"message?.text\"></cometchat-text-bubble>\n\n </message-translation-bubble>\n</ng-template>\n<ng-template #fileBubble let-message>\n\n <cometchat-file-bubble [fileStyle]=\"setFileBubbleStyle(message)\"\n [downloadIconURL]=\"downloadIconURL\" [subtitle]=\"localize('SHARED_FILE')\"\n [title]=\"message?.data?.attachments ? message?.data?.attachments[0]?.name: ''\"\n [fileURL]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"></cometchat-file-bubble>\n</ng-template>\n<ng-template #audioBubble let-message>\n <cometchat-icon-button [disabled]=\"true\"\n *ngIf=\"message?.category == callConstant && message?.type == MessageTypesConstant.audio\"\n [iconURL]=\"getCallTypeIcon(message)\"\n [buttonStyle]=\"callStatusStyle(message)\"\n [text]=\"getCallActionMessage(message)\"></cometchat-icon-button>\n <cometchat-audio-bubble\n *ngIf=\"!message.getDeletedAt() && message?.category != callConstant\"\n [src]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\">\n </cometchat-audio-bubble>\n</ng-template>\n<ng-template #videoBubble let-message>\n <cometchat-icon-button [disabled]=\"true\"\n *ngIf=\"message?.category == callConstant && message?.type == MessageTypesConstant.video\"\n [iconURL]=\"getCallTypeIcon(message)\"\n [buttonStyle]=\"callStatusStyle(message)\"\n [text]=\"getCallActionMessage(message)\"></cometchat-icon-button>\n\n <cometchat-video-bubble\n *ngIf=\"!message.getDeletedAt() && message?.category != callConstant\"\n [videoStyle]=\"videoBubbleStyle\"\n [src]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"\n [poster]=\" getImageThumbnail(message)\"></cometchat-video-bubble>\n</ng-template>\n<ng-template #imageBubble let-message>\n <image-moderation (cc-show-dialog)=\"openWarningDialog($event)\"\n *ngIf=\"!message.getDeletedAt() && enableImageModeration\" [message]=\"message\"\n [imageModerationStyle]=\"imageModerationStyle\">\n <cometchat-image-bubble (cc-image-clicked)=\"openImageInFullScreen(message)\"\n [imageStyle]=\"imageBubbleStyle\" [src]=\" getImageThumbnail(message)\"\n [placeholderImage]=\"placeholderIconURL\"></cometchat-image-bubble>\n </image-moderation>\n <cometchat-image-bubble [imageStyle]=\"imageBubbleStyle\"\n (cc-image-clicked)=\"openImageInFullScreen(message)\"\n *ngIf=\"!message.getDeletedAt() && !enableImageModeration\"\n [src]=\" getImageThumbnail(message)\"\n [placeholderImage]=\"placeholderIconURL\"></cometchat-image-bubble>\n</ng-template>\n<ng-template #formBubble let-message>\n <cometchat-form-bubble [message]=\"message\"\n [formBubbleStyle]=\"getFormMessageBubbleStyle()\"></cometchat-form-bubble>\n</ng-template>\n<ng-template #cardBubble let-message>\n <cometchat-card-bubble [message]=\"message\"\n [cardBubbleStyle]=\"getCardMessageBubbleStyle()\"></cometchat-card-bubble>\n</ng-template>\n<ng-template #customTextBubble>\n</ng-template>\n<ng-template #stickerBubble let-message>\n <cometchat-image-bubble [src]=\"getSticker(message)\"\n [imageStyle]=\"imageBubbleStyle\"></cometchat-image-bubble>\n\n</ng-template>\n<ng-template #whiteboardBubble let-message>\n <cometchat-document-bubble [hideSeparator]=\"false\"\n [iconAlignment]=\"documentBubbleAlignment\"\n [documentStyle]=\"documentBubbleStyle\" [URL]=\"getWhiteboardDocument(message)\"\n [ccClicked]=\"launchCollaborativeWhiteboardDocument\"\n [iconURL]=\"whiteboardIconURL\" [title]=\"whiteboardTitle\"\n [buttonText]=\"whiteboardButtonText\"\n [subtitle]=\"whiteboardSubitle\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #documentBubble let-message>\n <cometchat-document-bubble [hideSeparator]=\"false\"\n [iconAlignment]=\"documentBubbleAlignment\"\n [documentStyle]=\"documentBubbleStyle\" [URL]=\"getWhiteboardDocument(message)\"\n [ccClicked]=\"launchCollaborativeWhiteboardDocument\"\n [iconURL]=\"documentIconURL\" [title]=\"documentTitle\"\n [buttonText]=\"documentButtonText\"\n [subtitle]=\"documentSubitle\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #directCalling let-message>\n <cometchat-document-bubble [hideSeparator]=\"true\"\n [iconAlignment]=\"callBubbleAlignment\"\n [documentStyle]=\"getCallBubbleStyle(message)\" [URL]=\"getSessionId(message)\"\n [ccClicked]=\"startDirectCall\" [iconURL]=\"directCallIconURL\"\n [title]=\"getCallBubbleTitle(message)\" [buttonText]=\"joinCallButtonText\"\n *ngIf=\"message.category == 'custom'\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #schedulerBubble let-message>\n <cometchat-scheduler-bubble [schedulerMessage]=\"message\"\n [loggedInUser]=\"loggedInUser\"\n [schedulerBubbleStyle]=\"getSchedulerBubbleStyle(message)\"></cometchat-scheduler-bubble>\n\n</ng-template>\n<ng-template #pollBubble let-message>\n <polls-bubble [pollStyle]=\"pollBubbleStyle\"\n [pollQuestion]=\"getPollBubbleData(message,'question')\"\n [pollId]=\"getPollBubbleData(message,'id')\" [loggedInUser]=\"loggedInUser\"\n [senderUid]=\"getPollBubbleData(message)\"\n [metadata]=\"message?.metadata\"></polls-bubble>\n\n</ng-template>\n\n<!-- thread bubble view -->\n<ng-template #threadMessageBubble let-message>\n <div *ngIf=\"getBubbleWrapper(message)\">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\"\n [bottomView]=\"enableReactions ? reactionView : null\"\n [leadingView]=\" showAvatar ? leadingView : null\" [headerView]=\"bubbleHeader\"\n [footerView]=\"footerView\" [contentView]=\"contentView\"\n [id]=\"message?.getId() || message?.getMuid()\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\"\n [alignment]=\"threadedAlignment\">\n <ng-template #contentView>\n <ng-container\n *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\"\n [alignment]=\"setBubbleAlignment(message)\" [loggedInUser]=\"loggedInUser\"\n [reactionsStyle]=\"reactionsStyle(message)\"\n [addReactionIconURL]=\"addReactionIconURL\"></reactions-view>\n </ng-template>\n <ng-template #footerView>\n <div class=\"cc-message-list__bubble-footer\">\n <div *ngIf=\"getFooterView(message);else bubbleFooter\">\n <ng-container\n *ngTemplateOutlet=\"getFooterView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #bubbleFooter>\n <div class=\"cc-message-list__bubble-date\"\n *ngIf=\"timestampAlignment == timestampEnum.bottom && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call && message?.getSentAt()\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\"\n [dateStyle]=\"bubbleDateStyle\" [pattern]=\"datePattern\">\n </cometchat-date>\n </div>\n <div\n *ngIf=\" !message?.getDeletedAt() && !disableReceipt && (!message?.getSender() ||this.loggedInUser.getUid() == message?.getSender()?.getUid()) && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call\"\n class=\"cc-message-list__receipt\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(message)\"\n [receiptStyle]=\"receiptStyle\" [waitIcon]=\"waitIcon\"\n [sentIcon]=\"sentIcon\" [deliveredIcon]=\"\"\n [readIcon]=\"deliveredIcon\"\n [errorIcon]=\"errorIcon\"></cometchat-receipt>\n </div>\n </ng-template>\n </div>\n </ng-template>\n <ng-template #leadingView>\n <div\n *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\"\n [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container\n *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\"\n [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n </cometchat-message-bubble>\n\n</ng-template>\n\n\n<!-- -->\n<ng-template #bubbleView></ng-template>\n<cometchat-popover [popoverStyle]=\"popoverStyle\" #popoverRef\n [placement]=\"keyboardAlignment\">\n <cometchat-emoji-keyboard (cc-emoji-clicked)=\"addReaction($event)\"\n slot=\"content\"></cometchat-emoji-keyboard>\n</cometchat-popover>\n<cometchat-backdrop *ngIf=\"openConfirmDialog\" [backdropStyle]=\"backdropStyle\">\n <cometchat-confirm-dialog [title]=\"''\" [messageText]=\"warningText\"\n (cc-confirm-clicked)=\"onConfirmClick()\" [cancelButtonText]=\"cancelText\"\n [confirmButtonText]=\"confirmText\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"confirmDialogStyle\">\n\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-full-screen-viewer (cc-close-clicked)=\"closeImageInFullScreen()\"\n *ngIf=\"openFullscreenView\" [URL]=\"imageurlToOpen\"\n [closeIconURL]=\"closeIconURL\" [fullScreenViewerStyle]=\"fullScreenViewerStyle\">\n\n</cometchat-full-screen-viewer>\n\n<!-- ongoing callscreen for direct call -->\n<cometchat-ongoing-call *ngIf=\"showOngoingCall\"\n [callSettingsBuilder]=\"getCallBuilder()\" [ongoingCallStyle]=\"ongoingCallStyle\"\n [sessionID]=\"sessionId\"></cometchat-ongoing-call>\n<!-- message information view -->\n<!-- thread bubble view -->\n<ng-template #messageinfoBubble let-message>\n <div *ngIf=\"getBubbleWrapper(message)\">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\"\n [bottomView]=\"enableReactions && hasReaction(message) ? reactionView : null\"\n [leadingView]=\" showAvatar ? leadingView : null\" [headerView]=\"bubbleHeader\"\n [contentView]=\"contentView\" [id]=\"message?.getId() || message?.getMuid()\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\"\n [alignment]=\"messageInfoAlignment\">\n <ng-template #contentView>\n <ng-container\n *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\"\n [alignment]=\"setBubbleAlignment(message)\"\n [addReactionIconURL]=\"addReactionIconURL\" [loggedInUser]=\"loggedInUser\"\n [reactionsStyle]=\"reactionsStyle(message)\"></reactions-view>\n </ng-template>\n <ng-template #leadingView>\n <div\n *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\"\n [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container\n *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\"\n [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n </cometchat-message-bubble>\n\n</ng-template>\n<cometchat-backdrop *ngIf=\"openMessageInfoPage\" [backdropStyle]=\"backdropStyle\">\n <cometchat-message-information\n [closeIconURL]=\"messageInformationConfiguration.closeIconURL\"\n [loadingStateView]=\"messageInformationConfiguration.loadingStateView\"\n [errorStateView]=\"messageInformationConfiguration.errorStateView\"\n [listItemStyle]=\"messageInformationConfiguration.listItemStyle\"\n [emptyStateView]=\"messageInformationConfiguration.emptyStateView\"\n [loadingIconURL]=\"messageInformationConfiguration.loadingIconURL\"\n [readIcon]=\"messageInformationConfiguration.readIcon\"\n [deliveredIcon]=\"messageInformationConfiguration.deliveredIcon\"\n [onError]=\"messageInformationConfiguration.onError\"\n [SubtitleView]=\"messageInformationConfiguration.subtitleView\"\n [receiptDatePattern]=\"messageInformationConfiguration.receiptDatePattern\"\n [listItemView]=\"messageInformationConfiguration.listItemView \"\n [messageInformationStyle]=\"messageInformationConfiguration.messageInformationStyle\"\n [onClose]=\"messageInformationConfiguration.onClose ?? closeMessageInfoPage\"\n [bubbleView]=\"messageInformationConfiguration.bubbleView ?? messageinfoBubble\"\n [message]=\"messageInfoObject\">\n\n </cometchat-message-information>\n</cometchat-backdrop>\n", styles: [".cc-message-list{height:100%;width:100%;overflow-y:auto;overflow-x:hidden;position:relative}.cc-message-list__wrapper{height:100%;width:100%;display:flex;flex-direction:column;justify-content:space-between;overflow-y:hidden}.cc-message-list__bubble-footer{display:flex;justify-content:center;align-items:center}.cc-message-list__date-container{text-align:center;margin:5px 0}.cc-message-list__smart-replies,.cc-message-list__conversation-starters{height:-moz-fit-content;height:fit-content;width:100%;position:absolute;bottom:0;z-index:1}.cc-message-list__conversation-summary{height:100%;position:relative;bottom:0;z-index:1;padding:.1px 14px}.cc-message-list__date{border-radius:10px;display:flex;justify-content:center}.cc-message-list__threadreplies{min-width:130px;width:100%}.cc-message-list__message-indicator{height:25px;display:flex;align-items:center;justify-content:center;width:100%;bottom:10%;position:absolute}.cc-message-list__footer-view{z-index:1;position:relative;width:100%;box-sizing:border-box;margin-bottom:1px}.cc-message-list__decorator-message{margin:0;line-height:30px;word-wrap:break-word;padding:0 8px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;height:100%}.cc-message-list__footer__decorator-message{margin:0;line-height:30px;word-wrap:break-word;padding:0 8px 0 16px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:flex-start;height:100%}.cc-message-list::-webkit-scrollbar{background:transparent;width:8px}.cc-message-list::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-message-list__footer-view-decorator{display:flex;flex-direction:row;column-gap:8px}.cc_panel_container{border:1px solid #6851d6}cometchat-scheduler-bubble{width:100%}\n"], components: [{ type: CometChatMessageBubbleComponent, selector: "cometchat-message-bubble", inputs: ["messageBubbleStyle", "alignment", "options", "id", "leadingView", "headerView", "replyView", "contentView", "threadView", "footerView", "bottomView", "moreIconURL", "topMenuSize"] }, { type: CometChatOngoingCallComponent, selector: "cometchat-ongoing-call", inputs: ["ongoingCallStyle", "resizeIconHoverText", "sessionID", "minimizeIconURL", "maximizeIconURL", "callSettingsBuilder", "callWorkflow", "onError"] }, { type: CometChatMessageInformationComponent, selector: "cometchat-message-information", inputs: ["closeIconURL", "message", "title", "template", "bubbleView", "subtitleView", "listItemView", "receiptDatePattern", "onError", "messageInformationStyle", "readIcon", "deliveredIcon", "onClose", "listItemStyle", "emptyStateText", "errorStateText", "emptyStateView", "loadingIconURL", "loadingStateView", "errorStateView"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
10810
11028
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatMessageListComponent, decorators: [{
10811
11029
  type: Component,
10812
- args: [{ selector: "cometchat-message-list", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-message-list__wrapper\" [ngStyle]=\"wrapperStyle()\" *ngIf=\"!openContactsView\">\n\n <div class=\"cc-message-list__header-view\">\n <div *ngIf=\"headerView\">\n <ng-container *ngTemplateOutlet=\"headerView\">\n </ng-container>\n </div>\n </div>\n <div class=\"cc-message-list\" #listScroll\n [ngStyle]=\"{height: showSmartReply || showConversationStarter || showConversationSummary ? '92%' : '100%'}\">\n <div class=\"cc-message-list__top\" #top>\n </div>\n <div class=\"cc-message-list__decorator-message\"\n *ngIf=\"state == states.loading || state == states.error || state == states.empty \"\n [ngStyle]=\"messageContainerStyle()\">\n <div class=\"cc-message-list__loading-view\" *ngIf=\"state == states.loading \">\n <cometchat-loader [iconURL]=\"loadingIconURL\" [loaderStyle]=\"loadingStyle()\">\n </cometchat-loader>\n <span class=\"cc-message-list__customview--loading\" *ngIf=\"state == states.loading && loadingStateView\">\n <ng-container *ngTemplateOutlet=\"loadingStateView\">\n </ng-container>\n </span>\n </div>\n <div class=\"cc-message-list__error-view\" *ngIf=\"state == states.error && !hideError \">\n <cometchat-label [labelStyle]=\"errorStyle()\" *ngIf=\"state == states.error && !hideError && !errorStateView\"\n [text]=\"errorStateText\">\n </cometchat-label>\n <span class=\"cc-message-list__custom-view--error\"\n *ngIf=\"state == states.error && !hideError && errorStateView\">\n <ng-container *ngTemplateOutlet=\"errorStateView\">\n </ng-container>\n </span>\n </div>\n <div class=\"cc-message-list__empty-view\" *ngIf=\"state == states.empty\">\n <!-- <cometchat-label [labelStyle]=\"emptyStyle()\" *ngIf=\"state == states.empty && !emptyStateView\" [text]=\"emptyStateText\"\n >\n </cometchat-label> -->\n <span class=\"cc-message-list__custom-view--empty\" *ngIf=\"state == states.empty && emptyStateView\">\n <ng-container *ngTemplateOutlet=\"emptyStateView\">\n </ng-container>\n </span>\n </div>\n </div>\n <div class=\"cc-message-list__bubble\" *ngFor=\"let message of messagesList; let i = index\">\n <div class=\"cc-message-list__date-container\" *ngIf=\"(i === 0) && message?.getSentAt()\">\n <span class=\"cc-message-list__date\">\n <cometchat-date [timestamp]=\"message!.getSentAt()\" [pattern]=\"DateSeparatorPattern\"\n [dateStyle]=\"dateSeparatorStyle\">\n </cometchat-date>\n </span>\n </div>\n <div class=\"cc-message-list__date-container\"\n *ngIf=\"(i > 0 && isDateDifferent(messagesList[i - 1]?.getSentAt(), messagesList[i]?.getSentAt())) && message?.getSentAt()\">\n <span class=\"cc-message-list__date\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\" [pattern]=\"DateSeparatorPattern\"\n [dateStyle]=\"dateSeparatorStyle\">\n </cometchat-date>\n </span>\n </div>\n <div *ngIf=\"getBubbleWrapper(message) \">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\" [leadingView]=\" showAvatar ? leadingView : null\"\n [bottomView]=\"enableReactions ? reactionView : null\"\n [headerView]=\"getHeaderView(message) || message?.getCategory() != MessageCategory.action && showHeaderTitle(message) ? bubbleHeader : null\"\n [footerView]=\"footerView\" [contentView]=\"contentView\" [threadView]=\"threadView\"\n [id]=\"message?.getId() || message?.getMuid()\" [options]=\"setMessageOptions(message)\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\" [alignment]=\"setBubbleAlignment(message)\">\n <ng-template #contentView>\n <ng-container *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\"\n [alignment]=\"setBubbleAlignment(message)\" [addReactionIconURL]=\"addReactionIconURL\"\n [loggedInUser]=\"loggedInUser\" [reactionsStyle]=\"reactionsStyle(message)\"></reactions-view>\n </ng-template>\n <ng-template #footerView>\n <div class=\"cc-message-list__bubble-footer\">\n <div *ngIf=\"getFooterView(message);else bubbleFooter\">\n <ng-container *ngTemplateOutlet=\"getFooterView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #bubbleFooter>\n <div class=\"cc-message-list__bubble-date\"\n *ngIf=\"timestampAlignment == timestampEnum.bottom && message?.getCategory() != MessageCategory.action && !message.getDeletedAt() && message?.getCategory() != MessageCategory.call && message?.getSentAt()\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n [pattern]=\"datePattern\">\n </cometchat-date>\n </div>\n <div\n *ngIf=\" !message?.getDeletedAt() && !disableReceipt && (!message?.getSender() ||this.loggedInUser.getUid() == message?.getSender()?.getUid()) && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call\"\n class=\"cc-message-list__receipt\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(message)\" [receiptStyle]=\"receiptStyle\"\n [waitIcon]=\"waitIcon\" [sentIcon]=\"sentIcon\" [deliveredIcon]=\"deliveredIcon\" [readIcon]=\"readIcon\"\n [errorIcon]=\"errorIcon\"></cometchat-receipt>\n </div>\n </ng-template>\n </div>\n </ng-template>\n <ng-template #leadingView>\n <div *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\" [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\" [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\" [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n <ng-template #threadView>\n <div class=\"cc-message-list__threadreplies\" *ngIf=\"message?.getReplyCount() && !message.getDeletedAt()\">\n <cometchat-divider [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n <cometchat-button [text]=\"getThreadCount(message)\" [buttonStyle]=\"getThreadViewStyle(message)\"\n [iconURL]=\"threadOpenIcon\" (cc-button-clicked)=\"openThreadView(message)\">\n </cometchat-button>\n </div>\n </ng-template>\n </cometchat-message-bubble>\n </div>\n </div>\n <div class=\"cc-message-list__bottom\" #bottom>\n </div>\n\n </div>\n <div class=\"cc-message-list__message-indicator\" *ngIf=\"UnreadCount && UnreadCount.length > 0 && !isOnBottom\"\n [ngStyle]=\"{bottom: showSmartReply || footerView || showConversationStarter || showConversationSummary ? '20%' : '13%'}\">\n <cometchat-button [text]=\"newMessageCount\" [buttonStyle]=\"unreadMessagesStyle\"\n (cc-button-clicked)=\"scrollToBottom()\"></cometchat-button>\n </div>\n <div class=\"cc-message-list__footer-view\" [ngStyle]=\"{height: 'auto'}\">\n\n <div *ngIf=\"footerView;else footer\">\n <ng-container *ngTemplateOutlet=\"footerView\">\n </ng-container>\n </div>\n <ng-template #footer>\n\n <div class=\"cc-message-list__smart-replies\" *ngIf=\"!showConversationStarter && showSmartReply && getReplies()\">\n <smart-replies [smartReplyStyle]=\"smartReplyStyle\" [replies]=\"getReplies()\"\n (cc-reply-clicked)=\"sendReply($event)\" (cc-close-clicked)=\"closeSmartReply()\">\n </smart-replies>\n </div>\n\n\n <div class=\"cc-message-list__conversation-starters\" *ngIf=\"enableConversationStarter && showConversationStarter\">\n <cometchat-ai-card [state]=\"conversationStarterState\" [loadingStateText]=\"starterLoadingStateText\"\n [emptyStateText]=\"starterEmptyStateText\" [errorStateText]=\"errorStateText\">\n <smart-replies *ngIf=\"conversationStarterState == states.loaded && !parentMessageId\"\n [smartReplyStyle]=\"conversationStarterStyle\" [replies]=\"conversationStarterReplies\" slot=\"loadedView\"\n (cc-reply-clicked)=\"sendConversationStarter($event)\" [closeIconURL]=\"''\">\n </smart-replies>\n </cometchat-ai-card>\n </div>\n\n <div class=\"cc-message-list__conversation-summary\" *ngIf=\"enableConversationSummary && showConversationSummary\">\n\n <cometchat-ai-card [state]=\"conversationSummaryState\" [loadingStateText]=\"summaryLoadingStateText\"\n [emptyStateText]=\"summaryEmptyStateText\" [errorStateText]=\"errorStateText\" [errorIconURL]=\"aiErrorIcon\"\n [emptyIconURL]=\"aiEmptyIcon\">\n <cometchat-panel *ngIf=\"conversationSummaryState == states.loaded && !parentMessageId\" slot=\"loadedView\"\n [panelStyle]=\"conversationSummaryStyle\" title=\"Conversation Summary\" [text]=\"conversationSummary\"\n (cc-close-clicked)=\"closeConversationSummary()\">\n </cometchat-panel>\n </cometchat-ai-card>\n\n </div>\n\n </ng-template>\n </div>\n\n</div>\n<!-- default bubbles -->\n<ng-template #textBubble let-message>\n <cometchat-text-bubble *ngIf=\"message?.type == MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\" [text]=\"message?.message\"></cometchat-text-bubble>\n <cometchat-text-bubble *ngIf=\"message?.getDeletedAt()\" [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"localize('MESSAGE_IS_DELETED')\"></cometchat-text-bubble>\n <cometchat-text-bubble\n *ngIf=\"!isTranslated(message) && !getLinkPreview(message) && !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\" [text]=\"getTextMessage(message)\"></cometchat-text-bubble>\n <link-preview [linkPreviewStyle]=\"linkPreviewStyle\" (cc-link-clicked)=\"openLinkURL($event)\"\n *ngIf=\"!message?.getDeletedAt() && getLinkPreview(message) && enableLinkPreview\"\n [title]=\"getLinkPreviewDetails('title',message)\" [description]=\"getLinkPreviewDetails('description',message)\"\n [URL]=\"getLinkPreviewDetails('url',message)\" [image]=\"getLinkPreviewDetails('image',message)\"\n [favIconURL]=\"getLinkPreviewDetails('favicon',message)\">\n <cometchat-text-bubble\n *ngIf=\"!isTranslated(message) && getLinkPreview(message) && !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\" [text]=\"getTextMessage(message)\"></cometchat-text-bubble>\n </link-preview>\n <message-translation-bubble [alignment]=\"getBubbleAlignment(message)\" *ngIf=\"isTranslated(message)\"\n [messageTranslationStyle]=\"setTranslationStyle(message)\" [translatedText]=\"isTranslated(message)\">\n <cometchat-text-bubble *ngIf=\" !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\" [text]=\"message?.text\"></cometchat-text-bubble>\n\n </message-translation-bubble>\n</ng-template>\n<ng-template #fileBubble let-message>\n\n <cometchat-file-bubble [fileStyle]=\"setFileBubbleStyle(message)\" [downloadIconURL]=\"downloadIconURL\"\n [subtitle]=\"localize('SHARED_FILE')\" [title]=\"message?.data?.attachments ? message?.data?.attachments[0]?.name: ''\"\n [fileURL]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"></cometchat-file-bubble>\n</ng-template>\n<ng-template #audioBubble let-message>\n <cometchat-icon-button [disabled]=\"true\"\n *ngIf=\"message?.category == callConstant && message?.type == MessageTypesConstant.audio\"\n [iconURL]=\"getCallTypeIcon(message)\" [buttonStyle]=\"callStatusStyle(message)\"\n [text]=\"getCallActionMessage(message)\"></cometchat-icon-button>\n <cometchat-audio-bubble *ngIf=\"!message.getDeletedAt() && message?.category != callConstant\"\n [src]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"> </cometchat-audio-bubble>\n</ng-template>\n<ng-template #videoBubble let-message>\n <cometchat-icon-button [disabled]=\"true\"\n *ngIf=\"message?.category == callConstant && message?.type == MessageTypesConstant.video\"\n [iconURL]=\"getCallTypeIcon(message)\" [buttonStyle]=\"callStatusStyle(message)\"\n [text]=\"getCallActionMessage(message)\"></cometchat-icon-button>\n\n <cometchat-video-bubble *ngIf=\"!message.getDeletedAt() && message?.category != callConstant\"\n [videoStyle]=\"videoBubbleStyle\" [src]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"\n [poster]=\" getImageThumbnail(message)\"></cometchat-video-bubble>\n</ng-template>\n<ng-template #imageBubble let-message>\n <image-moderation (cc-show-dialog)=\"openWarningDialog($event)\"\n *ngIf=\"!message.getDeletedAt() && enableImageModeration\" [message]=\"message\"\n [imageModerationStyle]=\"imageModerationStyle\">\n <cometchat-image-bubble (cc-image-clicked)=\"openImageInFullScreen(message)\" [imageStyle]=\"imageBubbleStyle\"\n [src]=\" getImageThumbnail(message)\" [placeholderImage]=\"placeholderIconURL\"></cometchat-image-bubble>\n </image-moderation>\n <cometchat-image-bubble [imageStyle]=\"imageBubbleStyle\" (cc-image-clicked)=\"openImageInFullScreen(message)\"\n *ngIf=\"!message.getDeletedAt() && !enableImageModeration\" [src]=\" getImageThumbnail(message)\"\n [placeholderImage]=\"placeholderIconURL\"></cometchat-image-bubble>\n</ng-template>\n<ng-template #formBubble let-message>\n <cometchat-form-bubble [message]=\"message\" [formBubbleStyle]=\"getFormMessageBubbleStyle()\"></cometchat-form-bubble>\n</ng-template>\n<ng-template #cardBubble let-message>\n <cometchat-card-bubble [message]=\"message\" [cardBubbleStyle]=\"getCardMessageBubbleStyle()\"></cometchat-card-bubble>\n</ng-template>\n<ng-template #customTextBubble>\n</ng-template>\n<ng-template #stickerBubble let-message>\n <cometchat-image-bubble [src]=\"getSticker(message)\" [imageStyle]=\"imageBubbleStyle\"></cometchat-image-bubble>\n\n</ng-template>\n<ng-template #whiteboardBubble let-message>\n <cometchat-document-bubble [hideSeparator]=\"false\" [iconAlignment]=\"documentBubbleAlignment\"\n [documentStyle]=\"documentBubbleStyle\" [URL]=\"getWhiteboardDocument(message)\"\n [ccClicked]=\"launchCollaborativeWhiteboardDocument\" [iconURL]=\"whiteboardIconURL\" [title]=\"whiteboardTitle\"\n [buttonText]=\"whiteboardButtonText\" [subtitle]=\"whiteboardSubitle\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #documentBubble let-message>\n <cometchat-document-bubble [hideSeparator]=\"false\" [iconAlignment]=\"documentBubbleAlignment\"\n [documentStyle]=\"documentBubbleStyle\" [URL]=\"getWhiteboardDocument(message)\"\n [ccClicked]=\"launchCollaborativeWhiteboardDocument\" [iconURL]=\"documentIconURL\" [title]=\"documentTitle\"\n [buttonText]=\"documentButtonText\" [subtitle]=\"documentSubitle\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #directCalling let-message>\n <cometchat-document-bubble [hideSeparator]=\"true\" [iconAlignment]=\"callBubbleAlignment\"\n [documentStyle]=\"getCallBubbleStyle(message)\" [URL]=\"getSessionId(message)\" [ccClicked]=\"startDirectCall\"\n [iconURL]=\"directCallIconURL\" [title]=\"getCallBubbleTitle(message)\"\n [buttonText]=\"joinCallButtonText\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #pollBubble let-message>\n <polls-bubble [pollStyle]=\"pollBubbleStyle\" [pollQuestion]=\"getPollBubbleData(message,'question')\"\n [pollId]=\"getPollBubbleData(message,'id')\" [loggedInUser]=\"loggedInUser\" [senderUid]=\"getPollBubbleData(message)\"\n [metadata]=\"message?.metadata\"></polls-bubble>\n\n</ng-template>\n\n<!-- thread bubble view -->\n<ng-template #threadMessageBubble let-message>\n <div *ngIf=\"getBubbleWrapper(message)\">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\" [bottomView]=\"enableReactions ? reactionView : null\"\n [leadingView]=\" showAvatar ? leadingView : null\" [headerView]=\"bubbleHeader\" [footerView]=\"footerView\"\n [contentView]=\"contentView\" [id]=\"message?.getId() || message?.getMuid()\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\" [alignment]=\"threadedAlignment\">\n <ng-template #contentView>\n <ng-container *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\" [alignment]=\"setBubbleAlignment(message)\"\n [loggedInUser]=\"loggedInUser\" [reactionsStyle]=\"reactionsStyle(message)\"\n [addReactionIconURL]=\"addReactionIconURL\"></reactions-view>\n </ng-template>\n <ng-template #footerView>\n <div class=\"cc-message-list__bubble-footer\">\n <div *ngIf=\"getFooterView(message);else bubbleFooter\">\n <ng-container *ngTemplateOutlet=\"getFooterView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #bubbleFooter>\n <div class=\"cc-message-list__bubble-date\"\n *ngIf=\"timestampAlignment == timestampEnum.bottom && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call && message?.getSentAt()\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\" [pattern]=\"datePattern\">\n </cometchat-date>\n </div>\n <div\n *ngIf=\" !message?.getDeletedAt() && !disableReceipt && (!message?.getSender() ||this.loggedInUser.getUid() == message?.getSender()?.getUid()) && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call\"\n class=\"cc-message-list__receipt\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(message)\" [receiptStyle]=\"receiptStyle\"\n [waitIcon]=\"waitIcon\" [sentIcon]=\"sentIcon\" [deliveredIcon]=\"\" [readIcon]=\"deliveredIcon\"\n [errorIcon]=\"errorIcon\"></cometchat-receipt>\n </div>\n </ng-template>\n </div>\n </ng-template>\n <ng-template #leadingView>\n <div *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\" [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\" [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\" [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n </cometchat-message-bubble>\n\n</ng-template>\n\n\n<!-- -->\n<ng-template #bubbleView></ng-template>\n<cometchat-popover [popoverStyle]=\"popoverStyle\" #popoverRef [placement]=\"keyboardAlignment\">\n <cometchat-emoji-keyboard (cc-emoji-clicked)=\"addReaction($event)\" slot=\"content\"></cometchat-emoji-keyboard>\n</cometchat-popover>\n<cometchat-backdrop *ngIf=\"openConfirmDialog\" [backdropStyle]=\"backdropStyle\">\n <cometchat-confirm-dialog [title]=\"''\" [messageText]=\"warningText\" (cc-confirm-clicked)=\"onConfirmClick()\"\n [cancelButtonText]=\"cancelText\" [confirmButtonText]=\"confirmText\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"confirmDialogStyle\">\n\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-full-screen-viewer (cc-close-clicked)=\"closeImageInFullScreen()\" *ngIf=\"openFullscreenView\"\n [URL]=\"imageurlToOpen\" [closeIconURL]=\"closeIconURL\" [fullScreenViewerStyle]=\"fullScreenViewerStyle\">\n\n</cometchat-full-screen-viewer>\n\n<!-- ongoing callscreen for direct call -->\n<cometchat-ongoing-call *ngIf=\"showOngoingCall\" [callSettingsBuilder]=\"getCallBuilder()\"\n [ongoingCallStyle]=\"ongoingCallStyle\" [sessionID]=\"sessionId\"></cometchat-ongoing-call>\n<!-- message information view -->\n<!-- thread bubble view -->\n<ng-template #messageinfoBubble let-message>\n <div *ngIf=\"getBubbleWrapper(message)\">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\"\n [bottomView]=\"enableReactions && hasReaction(message) ? reactionView : null\"\n [leadingView]=\" showAvatar ? leadingView : null\" [headerView]=\"bubbleHeader\" [contentView]=\"contentView\"\n [id]=\"message?.getId() || message?.getMuid()\" [messageBubbleStyle]=\"setMessageBubbleStyle(message)\"\n [alignment]=\"messageInfoAlignment\">\n <ng-template #contentView>\n <ng-container *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\" [alignment]=\"setBubbleAlignment(message)\"\n [addReactionIconURL]=\"addReactionIconURL\" [loggedInUser]=\"loggedInUser\"\n [reactionsStyle]=\"reactionsStyle(message)\"></reactions-view>\n </ng-template>\n <ng-template #leadingView>\n <div *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\" [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\" [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\" [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n </cometchat-message-bubble>\n\n</ng-template>\n<cometchat-backdrop *ngIf=\"openMessageInfoPage\" [backdropStyle]=\"backdropStyle\">\n <cometchat-message-information [closeIconURL]=\"messageInformationConfiguration.closeIconURL\"\n [loadingStateView]=\"messageInformationConfiguration.loadingStateView\"\n [errorStateView]=\"messageInformationConfiguration.errorStateView\"\n [listItemStyle]=\"messageInformationConfiguration.listItemStyle\"\n [emptyStateView]=\"messageInformationConfiguration.emptyStateView\"\n [loadingIconURL]=\"messageInformationConfiguration.loadingIconURL\"\n [readIcon]=\"messageInformationConfiguration.readIcon\"\n [deliveredIcon]=\"messageInformationConfiguration.deliveredIcon\" [onError]=\"messageInformationConfiguration.onError\"\n [SubtitleView]=\"messageInformationConfiguration.subtitleView\"\n [receiptDatePattern]=\"messageInformationConfiguration.receiptDatePattern\"\n [listItemView]=\"messageInformationConfiguration.listItemView \"\n [messageInformationStyle]=\"messageInformationConfiguration.messageInformationStyle\"\n [onClose]=\"messageInformationConfiguration.onClose ?? closeMessageInfoPage\"\n [bubbleView]=\"messageInformationConfiguration.bubbleView ?? messageinfoBubble\" [message]=\"messageInfoObject\">\n\n </cometchat-message-information>\n</cometchat-backdrop>", styles: [".cc-message-list{height:100%;width:100%;overflow-y:auto;overflow-x:hidden;position:relative}.cc-message-list__wrapper{height:100%;width:100%;display:flex;flex-direction:column;justify-content:space-between;overflow-y:hidden}.cc-message-list__bubble-footer{display:flex;justify-content:center;align-items:center}.cc-message-list__date-container{text-align:center;margin:5px 0}.cc-message-list__smart-replies,.cc-message-list__conversation-starters{height:-moz-fit-content;height:fit-content;width:100%;position:absolute;bottom:0;z-index:1}.cc-message-list__conversation-summary{height:100%;position:relative;bottom:0;z-index:1;padding:.1px 14px}.cc-message-list__date{border-radius:10px;display:flex;justify-content:center}.cc-message-list__threadreplies{min-width:130px;width:100%}.cc-message-list__message-indicator{height:25px;display:flex;align-items:center;justify-content:center;width:100%;bottom:10%;position:absolute}.cc-message-list__footer-view{z-index:1;position:relative;width:100%;box-sizing:border-box;margin-bottom:1px}.cc-message-list__decorator-message{margin:0;line-height:30px;word-wrap:break-word;padding:0 8px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;height:100%}.cc-message-list__footer__decorator-message{margin:0;line-height:30px;word-wrap:break-word;padding:0 8px 0 16px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:flex-start;height:100%}.cc-message-list::-webkit-scrollbar{background:transparent;width:8px}.cc-message-list::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-message-list__footer-view-decorator{display:flex;flex-direction:row;column-gap:8px}.cc_panel_container{border:1px solid #6851d6}\n"] }]
11030
+ args: [{ selector: "cometchat-message-list", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-message-list__wrapper\" [ngStyle]=\"wrapperStyle()\"\n *ngIf=\"!openContactsView\">\n\n <div class=\"cc-message-list__header-view\">\n <div *ngIf=\"headerView\">\n <ng-container *ngTemplateOutlet=\"headerView\">\n </ng-container>\n </div>\n </div>\n <div class=\"cc-message-list\" #listScroll\n [ngStyle]=\"{height: showSmartReply || showConversationStarter || showConversationSummary ? '92%' : '100%'}\">\n <div class=\"cc-message-list__top\" #top>\n </div>\n <div class=\"cc-message-list__decorator-message\"\n *ngIf=\"state == states.loading || state == states.error || state == states.empty \"\n [ngStyle]=\"messageContainerStyle()\">\n <div class=\"cc-message-list__loading-view\"\n *ngIf=\"state == states.loading \">\n <cometchat-loader [iconURL]=\"loadingIconURL\"\n [loaderStyle]=\"loadingStyle()\">\n </cometchat-loader>\n <span class=\"cc-message-list__customview--loading\"\n *ngIf=\"state == states.loading && loadingStateView\">\n <ng-container *ngTemplateOutlet=\"loadingStateView\">\n </ng-container>\n </span>\n </div>\n <div class=\"cc-message-list__error-view\"\n *ngIf=\"state == states.error && !hideError \">\n <cometchat-label [labelStyle]=\"errorStyle()\"\n *ngIf=\"state == states.error && !hideError && !errorStateView\"\n [text]=\"errorStateText\">\n </cometchat-label>\n <span class=\"cc-message-list__custom-view--error\"\n *ngIf=\"state == states.error && !hideError && errorStateView\">\n <ng-container *ngTemplateOutlet=\"errorStateView\">\n </ng-container>\n </span>\n </div>\n <div class=\"cc-message-list__empty-view\" *ngIf=\"state == states.empty\">\n <!-- <cometchat-label [labelStyle]=\"emptyStyle()\" *ngIf=\"state == states.empty && !emptyStateView\" [text]=\"emptyStateText\"\n >\n </cometchat-label> -->\n <span class=\"cc-message-list__custom-view--empty\"\n *ngIf=\"state == states.empty && emptyStateView\">\n <ng-container *ngTemplateOutlet=\"emptyStateView\">\n </ng-container>\n </span>\n </div>\n </div>\n <div class=\"cc-message-list__bubble\"\n *ngFor=\"let message of messagesList; let i = index\">\n <div class=\"cc-message-list__date-container\"\n *ngIf=\"(i === 0) && message?.getSentAt()\">\n <span class=\"cc-message-list__date\">\n <cometchat-date [timestamp]=\"message!.getSentAt()\"\n [pattern]=\"DateSeparatorPattern\" [dateStyle]=\"dateSeparatorStyle\">\n </cometchat-date>\n </span>\n </div>\n <div class=\"cc-message-list__date-container\"\n *ngIf=\"(i > 0 && isDateDifferent(messagesList[i - 1]?.getSentAt(), messagesList[i]?.getSentAt())) && message?.getSentAt()\">\n <span class=\"cc-message-list__date\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\"\n [pattern]=\"DateSeparatorPattern\" [dateStyle]=\"dateSeparatorStyle\">\n </cometchat-date>\n </span>\n </div>\n <div *ngIf=\"getBubbleWrapper(message) \">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\"\n [leadingView]=\" showAvatar ? leadingView : null\"\n [bottomView]=\"enableReactions ? reactionView : null\"\n [headerView]=\"getHeaderView(message) || message?.getCategory() != MessageCategory.action && showHeaderTitle(message) ? bubbleHeader : null\"\n [footerView]=\"footerView\" [contentView]=\"contentView\"\n [threadView]=\"threadView\"\n [id]=\"message?.getId() || message?.getMuid()\"\n [options]=\"setMessageOptions(message)\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\"\n [alignment]=\"setBubbleAlignment(message)\">\n <ng-template #contentView>\n <ng-container\n *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\"\n [messageObject]=\"message\"\n [alignment]=\"setBubbleAlignment(message)\"\n [addReactionIconURL]=\"addReactionIconURL\"\n [loggedInUser]=\"loggedInUser\"\n [reactionsStyle]=\"reactionsStyle(message)\"></reactions-view>\n </ng-template>\n <ng-template #footerView>\n <div class=\"cc-message-list__bubble-footer\">\n <div *ngIf=\"getFooterView(message);else bubbleFooter\">\n <ng-container\n *ngTemplateOutlet=\"getFooterView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #bubbleFooter>\n <div class=\"cc-message-list__bubble-date\"\n *ngIf=\"timestampAlignment == timestampEnum.bottom && message?.getCategory() != MessageCategory.action && !message.getDeletedAt() && message?.getCategory() != MessageCategory.call && message?.getSentAt()\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\"\n [dateStyle]=\"bubbleDateStyle\" [pattern]=\"datePattern\">\n </cometchat-date>\n </div>\n <div\n *ngIf=\" !message?.getDeletedAt() && !disableReceipt && (!message?.getSender() ||this.loggedInUser.getUid() == message?.getSender()?.getUid()) && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call\"\n class=\"cc-message-list__receipt\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(message)\"\n [receiptStyle]=\"receiptStyle\" [waitIcon]=\"waitIcon\"\n [sentIcon]=\"sentIcon\" [deliveredIcon]=\"deliveredIcon\"\n [readIcon]=\"readIcon\"\n [errorIcon]=\"errorIcon\"></cometchat-receipt>\n </div>\n </ng-template>\n </div>\n </ng-template>\n <ng-template #leadingView>\n <div\n *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\"\n [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container\n *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\"\n [timestamp]=\"message?.getSentAt()\"\n [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n <ng-template #threadView>\n <div class=\"cc-message-list__threadreplies\"\n *ngIf=\"message?.getReplyCount() && !message.getDeletedAt()\">\n <cometchat-divider\n [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n <cometchat-button [text]=\"getThreadCount(message)\"\n [buttonStyle]=\"getThreadViewStyle(message)\"\n [iconURL]=\"threadOpenIcon\"\n (cc-button-clicked)=\"openThreadView(message)\">\n </cometchat-button>\n </div>\n </ng-template>\n </cometchat-message-bubble>\n </div>\n </div>\n <div class=\"cc-message-list__bottom\" #bottom>\n </div>\n\n </div>\n <div class=\"cc-message-list__message-indicator\"\n *ngIf=\"UnreadCount && UnreadCount.length > 0 && !isOnBottom\"\n [ngStyle]=\"{bottom: showSmartReply || footerView || showConversationStarter || showConversationSummary ? '20%' : '13%'}\">\n <cometchat-button [text]=\"newMessageCount\"\n [buttonStyle]=\"unreadMessagesStyle\"\n (cc-button-clicked)=\"scrollToBottom()\"></cometchat-button>\n </div>\n <div class=\"cc-message-list__footer-view\" [ngStyle]=\"{height: 'auto'}\">\n\n <div *ngIf=\"footerView;else footer\">\n <ng-container *ngTemplateOutlet=\"footerView\">\n </ng-container>\n </div>\n <ng-template #footer>\n\n <div class=\"cc-message-list__smart-replies\"\n *ngIf=\"!showConversationStarter && showSmartReply && getReplies()\">\n <smart-replies [smartReplyStyle]=\"smartReplyStyle\"\n [replies]=\"getReplies()\" (cc-reply-clicked)=\"sendReply($event)\"\n (cc-close-clicked)=\"closeSmartReply()\">\n </smart-replies>\n </div>\n\n\n <div class=\"cc-message-list__conversation-starters\"\n *ngIf=\"enableConversationStarter && showConversationStarter\">\n <cometchat-ai-card [state]=\"conversationStarterState\"\n [loadingStateText]=\"starterLoadingStateText\"\n [emptyStateText]=\"starterEmptyStateText\"\n [errorStateText]=\"errorStateText\">\n <smart-replies\n *ngIf=\"conversationStarterState == states.loaded && !parentMessageId\"\n [smartReplyStyle]=\"conversationStarterStyle\"\n [replies]=\"conversationStarterReplies\" slot=\"loadedView\"\n (cc-reply-clicked)=\"sendConversationStarter($event)\"\n [closeIconURL]=\"''\">\n </smart-replies>\n </cometchat-ai-card>\n </div>\n\n <div class=\"cc-message-list__conversation-summary\"\n *ngIf=\"enableConversationSummary && showConversationSummary\">\n\n <cometchat-ai-card [state]=\"conversationSummaryState\"\n [loadingStateText]=\"summaryLoadingStateText\"\n [emptyStateText]=\"summaryEmptyStateText\"\n [errorStateText]=\"errorStateText\" [errorIconURL]=\"aiErrorIcon\"\n [emptyIconURL]=\"aiEmptyIcon\">\n <cometchat-panel\n *ngIf=\"conversationSummaryState == states.loaded && !parentMessageId\"\n slot=\"loadedView\" [panelStyle]=\"conversationSummaryStyle\"\n title=\"Conversation Summary\" [text]=\"conversationSummary\"\n (cc-close-clicked)=\"closeConversationSummary()\">\n </cometchat-panel>\n </cometchat-ai-card>\n\n </div>\n\n </ng-template>\n </div>\n\n</div>\n<!-- default bubbles -->\n<ng-template #textBubble let-message>\n <cometchat-text-bubble\n *ngIf=\"message?.type == MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"message?.message\"></cometchat-text-bubble>\n <cometchat-text-bubble *ngIf=\"message?.getDeletedAt()\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"localize('MESSAGE_IS_DELETED')\"></cometchat-text-bubble>\n <cometchat-text-bubble\n *ngIf=\"!isTranslated(message) && !getLinkPreview(message) && !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"getTextMessage(message)\"></cometchat-text-bubble>\n <link-preview [linkPreviewStyle]=\"linkPreviewStyle\"\n (cc-link-clicked)=\"openLinkURL($event)\"\n *ngIf=\"!message?.getDeletedAt() && getLinkPreview(message) && enableLinkPreview\"\n [title]=\"getLinkPreviewDetails('title',message)\"\n [description]=\"getLinkPreviewDetails('description',message)\"\n [URL]=\"getLinkPreviewDetails('url',message)\"\n [image]=\"getLinkPreviewDetails('image',message)\"\n [favIconURL]=\"getLinkPreviewDetails('favicon',message)\">\n <cometchat-text-bubble\n *ngIf=\"!isTranslated(message) && getLinkPreview(message) && !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"getTextMessage(message)\"></cometchat-text-bubble>\n </link-preview>\n <message-translation-bubble [alignment]=\"getBubbleAlignment(message)\"\n *ngIf=\"isTranslated(message)\"\n [messageTranslationStyle]=\"setTranslationStyle(message)\"\n [translatedText]=\"isTranslated(message)\">\n <cometchat-text-bubble\n *ngIf=\" !message?.deletedAt && message?.type != MessageTypesConstant.groupMember\"\n [textStyle]=\"setTextBubbleStyle(message)\"\n [text]=\"message?.text\"></cometchat-text-bubble>\n\n </message-translation-bubble>\n</ng-template>\n<ng-template #fileBubble let-message>\n\n <cometchat-file-bubble [fileStyle]=\"setFileBubbleStyle(message)\"\n [downloadIconURL]=\"downloadIconURL\" [subtitle]=\"localize('SHARED_FILE')\"\n [title]=\"message?.data?.attachments ? message?.data?.attachments[0]?.name: ''\"\n [fileURL]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"></cometchat-file-bubble>\n</ng-template>\n<ng-template #audioBubble let-message>\n <cometchat-icon-button [disabled]=\"true\"\n *ngIf=\"message?.category == callConstant && message?.type == MessageTypesConstant.audio\"\n [iconURL]=\"getCallTypeIcon(message)\"\n [buttonStyle]=\"callStatusStyle(message)\"\n [text]=\"getCallActionMessage(message)\"></cometchat-icon-button>\n <cometchat-audio-bubble\n *ngIf=\"!message.getDeletedAt() && message?.category != callConstant\"\n [src]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\">\n </cometchat-audio-bubble>\n</ng-template>\n<ng-template #videoBubble let-message>\n <cometchat-icon-button [disabled]=\"true\"\n *ngIf=\"message?.category == callConstant && message?.type == MessageTypesConstant.video\"\n [iconURL]=\"getCallTypeIcon(message)\"\n [buttonStyle]=\"callStatusStyle(message)\"\n [text]=\"getCallActionMessage(message)\"></cometchat-icon-button>\n\n <cometchat-video-bubble\n *ngIf=\"!message.getDeletedAt() && message?.category != callConstant\"\n [videoStyle]=\"videoBubbleStyle\"\n [src]=\"message?.data?.attachments ? message?.data?.attachments[0]?.url : ''\"\n [poster]=\" getImageThumbnail(message)\"></cometchat-video-bubble>\n</ng-template>\n<ng-template #imageBubble let-message>\n <image-moderation (cc-show-dialog)=\"openWarningDialog($event)\"\n *ngIf=\"!message.getDeletedAt() && enableImageModeration\" [message]=\"message\"\n [imageModerationStyle]=\"imageModerationStyle\">\n <cometchat-image-bubble (cc-image-clicked)=\"openImageInFullScreen(message)\"\n [imageStyle]=\"imageBubbleStyle\" [src]=\" getImageThumbnail(message)\"\n [placeholderImage]=\"placeholderIconURL\"></cometchat-image-bubble>\n </image-moderation>\n <cometchat-image-bubble [imageStyle]=\"imageBubbleStyle\"\n (cc-image-clicked)=\"openImageInFullScreen(message)\"\n *ngIf=\"!message.getDeletedAt() && !enableImageModeration\"\n [src]=\" getImageThumbnail(message)\"\n [placeholderImage]=\"placeholderIconURL\"></cometchat-image-bubble>\n</ng-template>\n<ng-template #formBubble let-message>\n <cometchat-form-bubble [message]=\"message\"\n [formBubbleStyle]=\"getFormMessageBubbleStyle()\"></cometchat-form-bubble>\n</ng-template>\n<ng-template #cardBubble let-message>\n <cometchat-card-bubble [message]=\"message\"\n [cardBubbleStyle]=\"getCardMessageBubbleStyle()\"></cometchat-card-bubble>\n</ng-template>\n<ng-template #customTextBubble>\n</ng-template>\n<ng-template #stickerBubble let-message>\n <cometchat-image-bubble [src]=\"getSticker(message)\"\n [imageStyle]=\"imageBubbleStyle\"></cometchat-image-bubble>\n\n</ng-template>\n<ng-template #whiteboardBubble let-message>\n <cometchat-document-bubble [hideSeparator]=\"false\"\n [iconAlignment]=\"documentBubbleAlignment\"\n [documentStyle]=\"documentBubbleStyle\" [URL]=\"getWhiteboardDocument(message)\"\n [ccClicked]=\"launchCollaborativeWhiteboardDocument\"\n [iconURL]=\"whiteboardIconURL\" [title]=\"whiteboardTitle\"\n [buttonText]=\"whiteboardButtonText\"\n [subtitle]=\"whiteboardSubitle\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #documentBubble let-message>\n <cometchat-document-bubble [hideSeparator]=\"false\"\n [iconAlignment]=\"documentBubbleAlignment\"\n [documentStyle]=\"documentBubbleStyle\" [URL]=\"getWhiteboardDocument(message)\"\n [ccClicked]=\"launchCollaborativeWhiteboardDocument\"\n [iconURL]=\"documentIconURL\" [title]=\"documentTitle\"\n [buttonText]=\"documentButtonText\"\n [subtitle]=\"documentSubitle\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #directCalling let-message>\n <cometchat-document-bubble [hideSeparator]=\"true\"\n [iconAlignment]=\"callBubbleAlignment\"\n [documentStyle]=\"getCallBubbleStyle(message)\" [URL]=\"getSessionId(message)\"\n [ccClicked]=\"startDirectCall\" [iconURL]=\"directCallIconURL\"\n [title]=\"getCallBubbleTitle(message)\" [buttonText]=\"joinCallButtonText\"\n *ngIf=\"message.category == 'custom'\"></cometchat-document-bubble>\n\n</ng-template>\n<ng-template #schedulerBubble let-message>\n <cometchat-scheduler-bubble [schedulerMessage]=\"message\"\n [loggedInUser]=\"loggedInUser\"\n [schedulerBubbleStyle]=\"getSchedulerBubbleStyle(message)\"></cometchat-scheduler-bubble>\n\n</ng-template>\n<ng-template #pollBubble let-message>\n <polls-bubble [pollStyle]=\"pollBubbleStyle\"\n [pollQuestion]=\"getPollBubbleData(message,'question')\"\n [pollId]=\"getPollBubbleData(message,'id')\" [loggedInUser]=\"loggedInUser\"\n [senderUid]=\"getPollBubbleData(message)\"\n [metadata]=\"message?.metadata\"></polls-bubble>\n\n</ng-template>\n\n<!-- thread bubble view -->\n<ng-template #threadMessageBubble let-message>\n <div *ngIf=\"getBubbleWrapper(message)\">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\"\n [bottomView]=\"enableReactions ? reactionView : null\"\n [leadingView]=\" showAvatar ? leadingView : null\" [headerView]=\"bubbleHeader\"\n [footerView]=\"footerView\" [contentView]=\"contentView\"\n [id]=\"message?.getId() || message?.getMuid()\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\"\n [alignment]=\"threadedAlignment\">\n <ng-template #contentView>\n <ng-container\n *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\"\n [alignment]=\"setBubbleAlignment(message)\" [loggedInUser]=\"loggedInUser\"\n [reactionsStyle]=\"reactionsStyle(message)\"\n [addReactionIconURL]=\"addReactionIconURL\"></reactions-view>\n </ng-template>\n <ng-template #footerView>\n <div class=\"cc-message-list__bubble-footer\">\n <div *ngIf=\"getFooterView(message);else bubbleFooter\">\n <ng-container\n *ngTemplateOutlet=\"getFooterView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #bubbleFooter>\n <div class=\"cc-message-list__bubble-date\"\n *ngIf=\"timestampAlignment == timestampEnum.bottom && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call && message?.getSentAt()\">\n <cometchat-date [timestamp]=\"message?.getSentAt()\"\n [dateStyle]=\"bubbleDateStyle\" [pattern]=\"datePattern\">\n </cometchat-date>\n </div>\n <div\n *ngIf=\" !message?.getDeletedAt() && !disableReceipt && (!message?.getSender() ||this.loggedInUser.getUid() == message?.getSender()?.getUid()) && message?.getCategory() != MessageCategory.action && message?.getCategory() != MessageCategory.call\"\n class=\"cc-message-list__receipt\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(message)\"\n [receiptStyle]=\"receiptStyle\" [waitIcon]=\"waitIcon\"\n [sentIcon]=\"sentIcon\" [deliveredIcon]=\"\"\n [readIcon]=\"deliveredIcon\"\n [errorIcon]=\"errorIcon\"></cometchat-receipt>\n </div>\n </ng-template>\n </div>\n </ng-template>\n <ng-template #leadingView>\n <div\n *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\"\n [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container\n *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\"\n [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n </cometchat-message-bubble>\n\n</ng-template>\n\n\n<!-- -->\n<ng-template #bubbleView></ng-template>\n<cometchat-popover [popoverStyle]=\"popoverStyle\" #popoverRef\n [placement]=\"keyboardAlignment\">\n <cometchat-emoji-keyboard (cc-emoji-clicked)=\"addReaction($event)\"\n slot=\"content\"></cometchat-emoji-keyboard>\n</cometchat-popover>\n<cometchat-backdrop *ngIf=\"openConfirmDialog\" [backdropStyle]=\"backdropStyle\">\n <cometchat-confirm-dialog [title]=\"''\" [messageText]=\"warningText\"\n (cc-confirm-clicked)=\"onConfirmClick()\" [cancelButtonText]=\"cancelText\"\n [confirmButtonText]=\"confirmText\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"confirmDialogStyle\">\n\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-full-screen-viewer (cc-close-clicked)=\"closeImageInFullScreen()\"\n *ngIf=\"openFullscreenView\" [URL]=\"imageurlToOpen\"\n [closeIconURL]=\"closeIconURL\" [fullScreenViewerStyle]=\"fullScreenViewerStyle\">\n\n</cometchat-full-screen-viewer>\n\n<!-- ongoing callscreen for direct call -->\n<cometchat-ongoing-call *ngIf=\"showOngoingCall\"\n [callSettingsBuilder]=\"getCallBuilder()\" [ongoingCallStyle]=\"ongoingCallStyle\"\n [sessionID]=\"sessionId\"></cometchat-ongoing-call>\n<!-- message information view -->\n<!-- thread bubble view -->\n<ng-template #messageinfoBubble let-message>\n <div *ngIf=\"getBubbleWrapper(message)\">\n <ng-container *ngTemplateOutlet=\"getBubbleWrapper(message)\">\n </ng-container>\n </div>\n <cometchat-message-bubble *ngIf=\"!getBubbleWrapper(message)\"\n [bottomView]=\"enableReactions && hasReaction(message) ? reactionView : null\"\n [leadingView]=\" showAvatar ? leadingView : null\" [headerView]=\"bubbleHeader\"\n [contentView]=\"contentView\" [id]=\"message?.getId() || message?.getMuid()\"\n [messageBubbleStyle]=\"setMessageBubbleStyle(message)\"\n [alignment]=\"messageInfoAlignment\">\n <ng-template #contentView>\n <ng-container\n *ngTemplateOutlet=\"getContentView(message);context:{ $implicit: message }\">\n </ng-container>\n </ng-template>\n <ng-template #reactionView>\n <reactions-view *ngIf=\"hasReaction(message)\" [messageObject]=\"message\"\n [alignment]=\"setBubbleAlignment(message)\"\n [addReactionIconURL]=\"addReactionIconURL\" [loggedInUser]=\"loggedInUser\"\n [reactionsStyle]=\"reactionsStyle(message)\"></reactions-view>\n </ng-template>\n <ng-template #leadingView>\n <div\n *ngIf=\" message?.getCategory() != MessageCategory.action && showHeaderTitle(message)\">\n <cometchat-avatar [name]=\"message?.getSender()?.getName()\"\n [avatarStyle]=\"avatarStyle\"\n [image]=\"message?.getSender()?.getAvatar()\">\n </cometchat-avatar>\n </div>\n </ng-template>\n <ng-template #bubbleHeader>\n <div *ngIf=\"getHeaderView(message);else defaultHeader\">\n <ng-container\n *ngTemplateOutlet=\"getHeaderView(message);context:{ $implicit: message }\">\n </ng-container>\n </div>\n <ng-template #defaultHeader>\n <div class=\"cc-message-list__bubble-header\"\n *ngIf=\"message?.getCategory() != MessageCategory.action && showHeaderTitle(message) && message?.getCategory() != MessageCategory.call\">\n <cometchat-label [text]=\"message?.getSender()?.getName()\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n <cometchat-date [pattern]=\"datePattern\"\n [timestamp]=\"message?.getSentAt()\" [dateStyle]=\"bubbleDateStyle\"\n *ngIf=\"timestampAlignment == timestampEnum.top && message?.getSentAt()\"></cometchat-date>\n </div>\n </ng-template>\n </ng-template>\n </cometchat-message-bubble>\n\n</ng-template>\n<cometchat-backdrop *ngIf=\"openMessageInfoPage\" [backdropStyle]=\"backdropStyle\">\n <cometchat-message-information\n [closeIconURL]=\"messageInformationConfiguration.closeIconURL\"\n [loadingStateView]=\"messageInformationConfiguration.loadingStateView\"\n [errorStateView]=\"messageInformationConfiguration.errorStateView\"\n [listItemStyle]=\"messageInformationConfiguration.listItemStyle\"\n [emptyStateView]=\"messageInformationConfiguration.emptyStateView\"\n [loadingIconURL]=\"messageInformationConfiguration.loadingIconURL\"\n [readIcon]=\"messageInformationConfiguration.readIcon\"\n [deliveredIcon]=\"messageInformationConfiguration.deliveredIcon\"\n [onError]=\"messageInformationConfiguration.onError\"\n [SubtitleView]=\"messageInformationConfiguration.subtitleView\"\n [receiptDatePattern]=\"messageInformationConfiguration.receiptDatePattern\"\n [listItemView]=\"messageInformationConfiguration.listItemView \"\n [messageInformationStyle]=\"messageInformationConfiguration.messageInformationStyle\"\n [onClose]=\"messageInformationConfiguration.onClose ?? closeMessageInfoPage\"\n [bubbleView]=\"messageInformationConfiguration.bubbleView ?? messageinfoBubble\"\n [message]=\"messageInfoObject\">\n\n </cometchat-message-information>\n</cometchat-backdrop>\n", styles: [".cc-message-list{height:100%;width:100%;overflow-y:auto;overflow-x:hidden;position:relative}.cc-message-list__wrapper{height:100%;width:100%;display:flex;flex-direction:column;justify-content:space-between;overflow-y:hidden}.cc-message-list__bubble-footer{display:flex;justify-content:center;align-items:center}.cc-message-list__date-container{text-align:center;margin:5px 0}.cc-message-list__smart-replies,.cc-message-list__conversation-starters{height:-moz-fit-content;height:fit-content;width:100%;position:absolute;bottom:0;z-index:1}.cc-message-list__conversation-summary{height:100%;position:relative;bottom:0;z-index:1;padding:.1px 14px}.cc-message-list__date{border-radius:10px;display:flex;justify-content:center}.cc-message-list__threadreplies{min-width:130px;width:100%}.cc-message-list__message-indicator{height:25px;display:flex;align-items:center;justify-content:center;width:100%;bottom:10%;position:absolute}.cc-message-list__footer-view{z-index:1;position:relative;width:100%;box-sizing:border-box;margin-bottom:1px}.cc-message-list__decorator-message{margin:0;line-height:30px;word-wrap:break-word;padding:0 8px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;height:100%}.cc-message-list__footer__decorator-message{margin:0;line-height:30px;word-wrap:break-word;padding:0 8px 0 16px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:flex-start;height:100%}.cc-message-list::-webkit-scrollbar{background:transparent;width:8px}.cc-message-list::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-message-list__footer-view-decorator{display:flex;flex-direction:row;column-gap:8px}.cc_panel_container{border:1px solid #6851d6}cometchat-scheduler-bubble{width:100%}\n"] }]
10813
11031
  }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { listScroll: [{
10814
11032
  type: ViewChild,
10815
11033
  args: ["listScroll", { static: false }]
@@ -10858,6 +11076,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
10858
11076
  }], directCalling: [{
10859
11077
  type: ViewChild,
10860
11078
  args: ["directCalling", { static: false }]
11079
+ }], schedulerBubble: [{
11080
+ type: ViewChild,
11081
+ args: ["schedulerBubble", { static: false }]
10861
11082
  }], pollBubble: [{
10862
11083
  type: ViewChild,
10863
11084
  args: ["pollBubble", { static: false }]
@@ -12558,6 +12779,55 @@ class CometChatThreadedMessagesComponent {
12558
12779
  this.onMessageEdited = CometChatMessageEvents.onMessageEdited.subscribe((editedMessage) => {
12559
12780
  this.updateMessage(editedMessage);
12560
12781
  });
12782
+ this.onTextMessageReceived =
12783
+ CometChatMessageEvents.onTextMessageReceived.subscribe((message) => {
12784
+ var _a;
12785
+ if (message.getParentMessageId() && message.getParentMessageId() == ((_a = this.parentMessage) === null || _a === void 0 ? void 0 : _a.getId())) {
12786
+ this.ref.detectChanges();
12787
+ }
12788
+ });
12789
+ this.onMediaMessageReceived =
12790
+ CometChatMessageEvents.onMediaMessageReceived.subscribe((message) => {
12791
+ var _a;
12792
+ if (message.getParentMessageId() && message.getParentMessageId() == ((_a = this.parentMessage) === null || _a === void 0 ? void 0 : _a.getId())) {
12793
+ this.ref.detectChanges();
12794
+ }
12795
+ });
12796
+ this.onCustomMessageReceived =
12797
+ CometChatMessageEvents.onCustomMessageReceived.subscribe((message) => {
12798
+ var _a;
12799
+ if (message.getParentMessageId() && message.getParentMessageId() == ((_a = this.parentMessage) === null || _a === void 0 ? void 0 : _a.getId())) {
12800
+ this.ref.detectChanges();
12801
+ }
12802
+ });
12803
+ this.onFormMessageReceived =
12804
+ CometChatMessageEvents.onFormMessageReceived.subscribe((message) => {
12805
+ var _a;
12806
+ if (message.getParentMessageId() && message.getParentMessageId() == ((_a = this.parentMessage) === null || _a === void 0 ? void 0 : _a.getId())) {
12807
+ this.ref.detectChanges();
12808
+ }
12809
+ });
12810
+ this.onSchedulerMessageReceived =
12811
+ CometChatMessageEvents.onSchedulerMessageReceived.subscribe((message) => {
12812
+ var _a;
12813
+ if (message.getParentMessageId() && message.getParentMessageId() == ((_a = this.parentMessage) === null || _a === void 0 ? void 0 : _a.getId())) {
12814
+ this.ref.detectChanges();
12815
+ }
12816
+ });
12817
+ this.onCardMessageReceived =
12818
+ CometChatMessageEvents.onCardMessageReceived.subscribe((message) => {
12819
+ var _a;
12820
+ if (message.getParentMessageId() && message.getParentMessageId() == ((_a = this.parentMessage) === null || _a === void 0 ? void 0 : _a.getId())) {
12821
+ this.ref.detectChanges();
12822
+ }
12823
+ });
12824
+ this.onCustomInteractiveMessageReceived =
12825
+ CometChatMessageEvents.onCustomInteractiveMessageReceived.subscribe((message) => {
12826
+ var _a;
12827
+ if (message.getParentMessageId() && message.getParentMessageId() == ((_a = this.parentMessage) === null || _a === void 0 ? void 0 : _a.getId())) {
12828
+ this.ref.detectChanges();
12829
+ }
12830
+ });
12561
12831
  }
12562
12832
  catch (error) {
12563
12833
  if (this.onError) {
@@ -12598,11 +12868,18 @@ class CometChatThreadedMessagesComponent {
12598
12868
  });
12599
12869
  }
12600
12870
  unsubscribeToEvents() {
12601
- var _a, _b, _c, _d;
12871
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
12602
12872
  (_a = this.ccMessageDeleted) === null || _a === void 0 ? void 0 : _a.unsubscribe();
12603
12873
  (_b = this.ccMessageEdited) === null || _b === void 0 ? void 0 : _b.unsubscribe();
12604
12874
  (_c = this.ccMessageRead) === null || _c === void 0 ? void 0 : _c.unsubscribe();
12605
12875
  (_d = this.ccMessageSent) === null || _d === void 0 ? void 0 : _d.unsubscribe();
12876
+ (_e = this.onCardMessageReceived) === null || _e === void 0 ? void 0 : _e.unsubscribe();
12877
+ (_f = this.onFormMessageReceived) === null || _f === void 0 ? void 0 : _f.unsubscribe();
12878
+ (_g = this.onSchedulerMessageReceived) === null || _g === void 0 ? void 0 : _g.unsubscribe();
12879
+ (_h = this.onTextMessageReceived) === null || _h === void 0 ? void 0 : _h.unsubscribe();
12880
+ (_j = this.onCustomInteractiveMessageReceived) === null || _j === void 0 ? void 0 : _j.unsubscribe();
12881
+ (_k = this.onCustomMessageReceived) === null || _k === void 0 ? void 0 : _k.unsubscribe();
12882
+ (_l = this.onMediaMessageReceived) === null || _l === void 0 ? void 0 : _l.unsubscribe();
12606
12883
  }
12607
12884
  closeView() {
12608
12885
  if (this.onClose) {
@@ -12646,10 +12923,10 @@ class CometChatThreadedMessagesComponent {
12646
12923
  }
12647
12924
  }
12648
12925
  CometChatThreadedMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatThreadedMessagesComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
12649
- CometChatThreadedMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatThreadedMessagesComponent, selector: "cometchat-threaded-messages", inputs: { onClose: "onClose", onError: "onError", parentMessage: "parentMessage", title: "title", closeIconURL: "closeIconURL", bubbleView: "bubbleView", messageActionView: "messageActionView", messageListConfiguration: "messageListConfiguration", messageComposerConfiguration: "messageComposerConfiguration", threadedMessagesStyle: "threadedMessagesStyle" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-threaded-messages__wrapper\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-threaded-messages__header\">\n <div class=\"cc-threaded-messages__title\">\n <cometchat-label [text]=\"title\"\n [labelStyle]=\"titleStyle\"></cometchat-label>\n </div>\n <div class=\"cc-threaded-messages__close\">\n <cometchat-button [iconURL]=\"closeIconURL\" [buttonStyle]=\"buttonStyle\"\n (cc-button-clicked)=\"closeView()\"></cometchat-button>\n </div>\n </div>\n <div class=\"cc-threaded-messages__bubble-view\">\n <ng-container\n *ngTemplateOutlet=\"bubbleView; context:{ $implicit: parentMessage }\">\n </ng-container>\n </div>\n <div class=\"cc-threaded-messages__action-view\">\n <ng-container\n *ngTemplateOutlet=\"messageActionView; context:{ $implicit: parentMessage }\">\n </ng-container>\n <cometchat-button *ngIf=\"!messageActionView\" [text]=\"getThreadCount()\"\n [buttonStyle]=\"actionButtonStyle\"></cometchat-button>\n </div>\n <div class=\"cc-threaded-messages__list\">\n <cometchat-message-list #messageListRef\n [parentMessageId]=\"parentMessage!.getId()\"\n [emptyStateView]=\"messageListConfiguration.emptyStateView\"\n [loadingStateView]=\"messageListConfiguration.loadingStateView\"\n [user]=\"user\" [group]=\"group\"\n [errorStateView]=\"messageListConfiguration.errorStateView\"\n [disableReceipt]=\"messageListConfiguration.disableReceipt\"\n [readIcon]=\"messageListConfiguration.readIcon\"\n [deliveredIcon]=\"messageListConfiguration.deliveredIcon\"\n [sentIcon]=\"messageListConfiguration.sentIcon\"\n [waitIcon]=\"messageListConfiguration.waitIcon\"\n [errorIcon]=\"messageListConfiguration.errorIcon\"\n [alignment]=\"messageListConfiguration.alignment\"\n [showAvatar]=\"messageListConfiguration.showAvatar\"\n [datePattern]=\"messageListConfiguration.datePattern\"\n [timestampAlignment]=\"messageListConfiguration.timestampAlignment\"\n [DateSeparatorPattern]=\"messageListConfiguration.DateSeparatorPattern\"\n [messageTypes]=\"messageListConfiguration.templates\"\n [messagesRequestBuilder]=\"messageListConfiguration.messagesRequestBuilder || requestBuilder\"\n [thresholdValue]=\"messageListConfiguration.thresholdValue\"\n [onThreadRepliesClick]=\"messageListConfiguration.onThreadRepliesClick\"\n [headerView]=\"messageListConfiguration.headerView\"\n [footerView]=\"messageListConfiguration.footerView\"\n [avatarStyle]=\"messageListConfiguration.avatarStyle\"\n [dateSeparatorStyle]=\"messageListConfiguration.dateSeparatorStyle\"\n [messageListStyle]=\"messageListConfiguration.messageListStyle\"\n [onError]=\"messageListConfiguration.onError\">\n </cometchat-message-list>\n </div>\n <div class=\"cc-threaded-messages__composer\">\n <cometchat-message-composer #messageComposerRef\n [parentMessageId]=\"parentMessage!.getId()\" [user]=\"user\" [group]=\"group\"\n [text]=\"messageComposerConfiguration.text\"\n [headerView]=\"messageComposerConfiguration.headerView\"\n [onTextChange]=\"messageComposerConfiguration.onTextChange\"\n [attachmentIconURL]=\"messageComposerConfiguration.attachmentIconURL\"\n [attachmentOptions]=\"messageComposerConfiguration.attachmentOptions\"\n [secondaryButtonView]=\"messageComposerConfiguration.secondaryButtonView\"\n [auxilaryButtonView]=\"messageComposerConfiguration.auxilaryButtonView\"\n [auxiliaryButtonsAlignment]=\"messageComposerConfiguration.auxiliaryButtonsAlignment\"\n [sendButtonView]=\"messageComposerConfiguration.sendButtonView\"\n [hideLiveReaction]=\"messageComposerConfiguration.hideLiveReaction\"\n [LiveReactionIconURL]=\"messageComposerConfiguration.LiveReactionIconURL\"\n [messageComposerStyle]=\"messageComposerConfiguration.messageComposerStyle\"\n [onSendButtonClick]=\"messageComposerConfiguration.onSendButtonClick\"\n [onSendButtonClick]=\"messageComposerConfiguration.onSendButtonClick\"\n [onError]=\"messageComposerConfiguration.onError\"\n [actionSheetStyle]=\"messageComposerConfiguration.actionSheetStyle\">\n </cometchat-message-composer>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-threaded-messages__wrapper{display:flex;flex-direction:column;height:100%;overflow-y:auto}.cc-threaded-messages__header{height:8%;width:100%;display:flex;padding:16px;align-items:flex-start}.cc-threaded-messages__close{display:flex;align-items:center}.cc-threaded-messages__title{display:flex;align-items:center;justify-content:center;width:100%}.cc-threaded-messages__bubble-view{width:-moz-fit-content;width:fit-content}.cc-threaded-messages__header{flex:0 0 auto}.cc-threaded-messages__list{flex:1 1 auto;min-height:65%}.cc-threaded-messages__composer{flex:0 0 auto;min-height:80px}\n"], components: [{ type: CometChatMessageListComponent, selector: "cometchat-message-list", inputs: ["hideError", "errorStateView", "loadingStateView", "emptyStateView", "errorStateText", "emptyStateText", "loadingIconURL", "user", "group", "disableReceipt", "disableSoundForMessages", "customSoundForMessages", "readIcon", "deliveredIcon", "sentIcon", "waitIcon", "errorIcon", "aiErrorIcon", "aiEmptyIcon", "alignment", "showAvatar", "datePattern", "timestampAlignment", "DateSeparatorPattern", "templates", "messagesRequestBuilder", "newMessageIndicatorText", "scrollToBottomOnNewMessages", "thresholdValue", "unreadMessageThreshold", "apiConfiguration", "onThreadRepliesClick", "headerView", "footerView", "parentMessageId", "avatarStyle", "backdropStyle", "dateSeparatorStyle", "messageListStyle", "onError", "messageInformationConfiguration"] }, { type: CometChatMessageComposerComponent, selector: "cometchat-message-composer", inputs: ["user", "group", "disableSoundForMessages", "customSoundForMessage", "disableTypingEvents", "text", "placeholderText", "headerView", "onTextChange", "attachmentIconURL", "attachmentOptions", "secondaryButtonView", "auxilaryButtonView", "auxiliaryButtonsAlignment", "sendButtonView", "parentMessageId", "hideLiveReaction", "LiveReactionIconURL", "backButtonIconURL", "messageComposerStyle", "onSendButtonClick", "onError", "backdropStyle", "actionSheetStyle", "aiActionSheetStyle", "hideVoiceRecording", "mediaRecorderStyle", "aiOptionsStyle", "aiIconURL", "voiceRecordingIconURL", "voiceRecordingCloseIconURL", "voiceRecordingStartIconURL", "voiceRecordingStopIconURL", "voiceRecordingSubmitIconURL"], outputs: ["childEvent"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12926
+ CometChatThreadedMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatThreadedMessagesComponent, selector: "cometchat-threaded-messages", inputs: { onClose: "onClose", onError: "onError", parentMessage: "parentMessage", title: "title", closeIconURL: "closeIconURL", bubbleView: "bubbleView", messageActionView: "messageActionView", messageListConfiguration: "messageListConfiguration", messageComposerConfiguration: "messageComposerConfiguration", threadedMessagesStyle: "threadedMessagesStyle" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-threaded-messages__wrapper\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-threaded-messages__header\">\n <div class=\"cc-threaded-messages__title\">\n <cometchat-label [text]=\"title\"\n [labelStyle]=\"titleStyle\"></cometchat-label>\n </div>\n <div class=\"cc-threaded-messages__close\">\n <cometchat-button [iconURL]=\"closeIconURL\" [buttonStyle]=\"buttonStyle\"\n (cc-button-clicked)=\"closeView()\"></cometchat-button>\n </div>\n </div>\n <div class=\"cc-threaded-messages__bubble-view\">\n <ng-container\n *ngTemplateOutlet=\"bubbleView; context:{ $implicit: parentMessage }\">\n </ng-container>\n </div>\n <div class=\"cc-threaded-messages__action-view\">\n <ng-container\n *ngTemplateOutlet=\"messageActionView; context:{ $implicit: parentMessage }\">\n </ng-container>\n <cometchat-button *ngIf=\"!messageActionView\" [text]=\"getThreadCount()\"\n [buttonStyle]=\"actionButtonStyle\"></cometchat-button>\n </div>\n <div class=\"cc-threaded-messages__list\">\n <cometchat-message-list #messageListRef\n [parentMessageId]=\"parentMessage!.getId()\"\n [emptyStateView]=\"messageListConfiguration.emptyStateView\"\n [loadingStateView]=\"messageListConfiguration.loadingStateView\"\n [user]=\"user\" [group]=\"group\"\n [errorStateView]=\"messageListConfiguration.errorStateView\"\n [disableReceipt]=\"messageListConfiguration.disableReceipt\"\n [readIcon]=\"messageListConfiguration.readIcon\"\n [deliveredIcon]=\"messageListConfiguration.deliveredIcon\"\n [sentIcon]=\"messageListConfiguration.sentIcon\"\n [waitIcon]=\"messageListConfiguration.waitIcon\"\n [errorIcon]=\"messageListConfiguration.errorIcon\"\n [alignment]=\"messageListConfiguration.alignment\"\n [showAvatar]=\"messageListConfiguration.showAvatar\"\n [datePattern]=\"messageListConfiguration.datePattern\"\n [timestampAlignment]=\"messageListConfiguration.timestampAlignment\"\n [DateSeparatorPattern]=\"messageListConfiguration.DateSeparatorPattern\"\n [messageTypes]=\"messageListConfiguration.templates\"\n [messagesRequestBuilder]=\"messageListConfiguration.messagesRequestBuilder || requestBuilder\"\n [thresholdValue]=\"messageListConfiguration.thresholdValue\"\n [onThreadRepliesClick]=\"messageListConfiguration.onThreadRepliesClick\"\n [headerView]=\"messageListConfiguration.headerView\"\n [footerView]=\"messageListConfiguration.footerView\"\n [avatarStyle]=\"messageListConfiguration.avatarStyle\"\n [dateSeparatorStyle]=\"messageListConfiguration.dateSeparatorStyle\"\n [messageListStyle]=\"messageListConfiguration.messageListStyle\"\n [onError]=\"messageListConfiguration.onError\">\n </cometchat-message-list>\n </div>\n <div class=\"cc-threaded-messages__composer\">\n <cometchat-message-composer #messageComposerRef\n [parentMessageId]=\"parentMessage!.getId()\" [user]=\"user\" [group]=\"group\"\n [text]=\"messageComposerConfiguration.text\"\n [headerView]=\"messageComposerConfiguration.headerView\"\n [onTextChange]=\"messageComposerConfiguration.onTextChange\"\n [attachmentIconURL]=\"messageComposerConfiguration.attachmentIconURL\"\n [attachmentOptions]=\"messageComposerConfiguration.attachmentOptions\"\n [secondaryButtonView]=\"messageComposerConfiguration.secondaryButtonView\"\n [auxilaryButtonView]=\"messageComposerConfiguration.auxilaryButtonView\"\n [auxiliaryButtonsAlignment]=\"messageComposerConfiguration.auxiliaryButtonsAlignment\"\n [sendButtonView]=\"messageComposerConfiguration.sendButtonView\"\n [hideLiveReaction]=\"messageComposerConfiguration.hideLiveReaction\"\n [LiveReactionIconURL]=\"messageComposerConfiguration.LiveReactionIconURL\"\n [messageComposerStyle]=\"messageComposerConfiguration.messageComposerStyle\"\n [onSendButtonClick]=\"messageComposerConfiguration.onSendButtonClick\"\n [onSendButtonClick]=\"messageComposerConfiguration.onSendButtonClick\"\n [onError]=\"messageComposerConfiguration.onError\"\n [actionSheetStyle]=\"messageComposerConfiguration.actionSheetStyle\">\n </cometchat-message-composer>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-threaded-messages__wrapper{display:flex;flex-direction:column;height:100%;overflow-y:auto}.cc-threaded-messages__header{height:8%;width:100%;display:flex;padding:16px;align-items:flex-start}.cc-threaded-messages__close{display:flex;align-items:center}.cc-threaded-messages__title{display:flex;align-items:center;justify-content:center;width:100%}.cc-threaded-messages__bubble-view{width:100%}.cc-threaded-messages__header{flex:0 0 auto}.cc-threaded-messages__list{flex:1 1 auto;min-height:65%}.cc-threaded-messages__composer{flex:0 0 auto;min-height:80px}\n"], components: [{ type: CometChatMessageListComponent, selector: "cometchat-message-list", inputs: ["hideError", "errorStateView", "loadingStateView", "emptyStateView", "errorStateText", "emptyStateText", "loadingIconURL", "user", "group", "disableReceipt", "disableSoundForMessages", "customSoundForMessages", "readIcon", "deliveredIcon", "sentIcon", "waitIcon", "errorIcon", "aiErrorIcon", "aiEmptyIcon", "alignment", "showAvatar", "datePattern", "timestampAlignment", "DateSeparatorPattern", "templates", "messagesRequestBuilder", "newMessageIndicatorText", "scrollToBottomOnNewMessages", "thresholdValue", "unreadMessageThreshold", "apiConfiguration", "onThreadRepliesClick", "headerView", "footerView", "parentMessageId", "avatarStyle", "backdropStyle", "dateSeparatorStyle", "messageListStyle", "onError", "messageInformationConfiguration"] }, { type: CometChatMessageComposerComponent, selector: "cometchat-message-composer", inputs: ["user", "group", "disableSoundForMessages", "customSoundForMessage", "disableTypingEvents", "text", "placeholderText", "headerView", "onTextChange", "attachmentIconURL", "attachmentOptions", "secondaryButtonView", "auxilaryButtonView", "auxiliaryButtonsAlignment", "sendButtonView", "parentMessageId", "hideLiveReaction", "LiveReactionIconURL", "backButtonIconURL", "messageComposerStyle", "onSendButtonClick", "onError", "backdropStyle", "actionSheetStyle", "aiActionSheetStyle", "hideVoiceRecording", "mediaRecorderStyle", "aiOptionsStyle", "aiIconURL", "voiceRecordingIconURL", "voiceRecordingCloseIconURL", "voiceRecordingStartIconURL", "voiceRecordingStopIconURL", "voiceRecordingSubmitIconURL"], outputs: ["childEvent"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12650
12927
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatThreadedMessagesComponent, decorators: [{
12651
12928
  type: Component,
12652
- args: [{ selector: "cometchat-threaded-messages", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-threaded-messages__wrapper\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-threaded-messages__header\">\n <div class=\"cc-threaded-messages__title\">\n <cometchat-label [text]=\"title\"\n [labelStyle]=\"titleStyle\"></cometchat-label>\n </div>\n <div class=\"cc-threaded-messages__close\">\n <cometchat-button [iconURL]=\"closeIconURL\" [buttonStyle]=\"buttonStyle\"\n (cc-button-clicked)=\"closeView()\"></cometchat-button>\n </div>\n </div>\n <div class=\"cc-threaded-messages__bubble-view\">\n <ng-container\n *ngTemplateOutlet=\"bubbleView; context:{ $implicit: parentMessage }\">\n </ng-container>\n </div>\n <div class=\"cc-threaded-messages__action-view\">\n <ng-container\n *ngTemplateOutlet=\"messageActionView; context:{ $implicit: parentMessage }\">\n </ng-container>\n <cometchat-button *ngIf=\"!messageActionView\" [text]=\"getThreadCount()\"\n [buttonStyle]=\"actionButtonStyle\"></cometchat-button>\n </div>\n <div class=\"cc-threaded-messages__list\">\n <cometchat-message-list #messageListRef\n [parentMessageId]=\"parentMessage!.getId()\"\n [emptyStateView]=\"messageListConfiguration.emptyStateView\"\n [loadingStateView]=\"messageListConfiguration.loadingStateView\"\n [user]=\"user\" [group]=\"group\"\n [errorStateView]=\"messageListConfiguration.errorStateView\"\n [disableReceipt]=\"messageListConfiguration.disableReceipt\"\n [readIcon]=\"messageListConfiguration.readIcon\"\n [deliveredIcon]=\"messageListConfiguration.deliveredIcon\"\n [sentIcon]=\"messageListConfiguration.sentIcon\"\n [waitIcon]=\"messageListConfiguration.waitIcon\"\n [errorIcon]=\"messageListConfiguration.errorIcon\"\n [alignment]=\"messageListConfiguration.alignment\"\n [showAvatar]=\"messageListConfiguration.showAvatar\"\n [datePattern]=\"messageListConfiguration.datePattern\"\n [timestampAlignment]=\"messageListConfiguration.timestampAlignment\"\n [DateSeparatorPattern]=\"messageListConfiguration.DateSeparatorPattern\"\n [messageTypes]=\"messageListConfiguration.templates\"\n [messagesRequestBuilder]=\"messageListConfiguration.messagesRequestBuilder || requestBuilder\"\n [thresholdValue]=\"messageListConfiguration.thresholdValue\"\n [onThreadRepliesClick]=\"messageListConfiguration.onThreadRepliesClick\"\n [headerView]=\"messageListConfiguration.headerView\"\n [footerView]=\"messageListConfiguration.footerView\"\n [avatarStyle]=\"messageListConfiguration.avatarStyle\"\n [dateSeparatorStyle]=\"messageListConfiguration.dateSeparatorStyle\"\n [messageListStyle]=\"messageListConfiguration.messageListStyle\"\n [onError]=\"messageListConfiguration.onError\">\n </cometchat-message-list>\n </div>\n <div class=\"cc-threaded-messages__composer\">\n <cometchat-message-composer #messageComposerRef\n [parentMessageId]=\"parentMessage!.getId()\" [user]=\"user\" [group]=\"group\"\n [text]=\"messageComposerConfiguration.text\"\n [headerView]=\"messageComposerConfiguration.headerView\"\n [onTextChange]=\"messageComposerConfiguration.onTextChange\"\n [attachmentIconURL]=\"messageComposerConfiguration.attachmentIconURL\"\n [attachmentOptions]=\"messageComposerConfiguration.attachmentOptions\"\n [secondaryButtonView]=\"messageComposerConfiguration.secondaryButtonView\"\n [auxilaryButtonView]=\"messageComposerConfiguration.auxilaryButtonView\"\n [auxiliaryButtonsAlignment]=\"messageComposerConfiguration.auxiliaryButtonsAlignment\"\n [sendButtonView]=\"messageComposerConfiguration.sendButtonView\"\n [hideLiveReaction]=\"messageComposerConfiguration.hideLiveReaction\"\n [LiveReactionIconURL]=\"messageComposerConfiguration.LiveReactionIconURL\"\n [messageComposerStyle]=\"messageComposerConfiguration.messageComposerStyle\"\n [onSendButtonClick]=\"messageComposerConfiguration.onSendButtonClick\"\n [onSendButtonClick]=\"messageComposerConfiguration.onSendButtonClick\"\n [onError]=\"messageComposerConfiguration.onError\"\n [actionSheetStyle]=\"messageComposerConfiguration.actionSheetStyle\">\n </cometchat-message-composer>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-threaded-messages__wrapper{display:flex;flex-direction:column;height:100%;overflow-y:auto}.cc-threaded-messages__header{height:8%;width:100%;display:flex;padding:16px;align-items:flex-start}.cc-threaded-messages__close{display:flex;align-items:center}.cc-threaded-messages__title{display:flex;align-items:center;justify-content:center;width:100%}.cc-threaded-messages__bubble-view{width:-moz-fit-content;width:fit-content}.cc-threaded-messages__header{flex:0 0 auto}.cc-threaded-messages__list{flex:1 1 auto;min-height:65%}.cc-threaded-messages__composer{flex:0 0 auto;min-height:80px}\n"] }]
12929
+ args: [{ selector: "cometchat-threaded-messages", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-threaded-messages__wrapper\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-threaded-messages__header\">\n <div class=\"cc-threaded-messages__title\">\n <cometchat-label [text]=\"title\"\n [labelStyle]=\"titleStyle\"></cometchat-label>\n </div>\n <div class=\"cc-threaded-messages__close\">\n <cometchat-button [iconURL]=\"closeIconURL\" [buttonStyle]=\"buttonStyle\"\n (cc-button-clicked)=\"closeView()\"></cometchat-button>\n </div>\n </div>\n <div class=\"cc-threaded-messages__bubble-view\">\n <ng-container\n *ngTemplateOutlet=\"bubbleView; context:{ $implicit: parentMessage }\">\n </ng-container>\n </div>\n <div class=\"cc-threaded-messages__action-view\">\n <ng-container\n *ngTemplateOutlet=\"messageActionView; context:{ $implicit: parentMessage }\">\n </ng-container>\n <cometchat-button *ngIf=\"!messageActionView\" [text]=\"getThreadCount()\"\n [buttonStyle]=\"actionButtonStyle\"></cometchat-button>\n </div>\n <div class=\"cc-threaded-messages__list\">\n <cometchat-message-list #messageListRef\n [parentMessageId]=\"parentMessage!.getId()\"\n [emptyStateView]=\"messageListConfiguration.emptyStateView\"\n [loadingStateView]=\"messageListConfiguration.loadingStateView\"\n [user]=\"user\" [group]=\"group\"\n [errorStateView]=\"messageListConfiguration.errorStateView\"\n [disableReceipt]=\"messageListConfiguration.disableReceipt\"\n [readIcon]=\"messageListConfiguration.readIcon\"\n [deliveredIcon]=\"messageListConfiguration.deliveredIcon\"\n [sentIcon]=\"messageListConfiguration.sentIcon\"\n [waitIcon]=\"messageListConfiguration.waitIcon\"\n [errorIcon]=\"messageListConfiguration.errorIcon\"\n [alignment]=\"messageListConfiguration.alignment\"\n [showAvatar]=\"messageListConfiguration.showAvatar\"\n [datePattern]=\"messageListConfiguration.datePattern\"\n [timestampAlignment]=\"messageListConfiguration.timestampAlignment\"\n [DateSeparatorPattern]=\"messageListConfiguration.DateSeparatorPattern\"\n [messageTypes]=\"messageListConfiguration.templates\"\n [messagesRequestBuilder]=\"messageListConfiguration.messagesRequestBuilder || requestBuilder\"\n [thresholdValue]=\"messageListConfiguration.thresholdValue\"\n [onThreadRepliesClick]=\"messageListConfiguration.onThreadRepliesClick\"\n [headerView]=\"messageListConfiguration.headerView\"\n [footerView]=\"messageListConfiguration.footerView\"\n [avatarStyle]=\"messageListConfiguration.avatarStyle\"\n [dateSeparatorStyle]=\"messageListConfiguration.dateSeparatorStyle\"\n [messageListStyle]=\"messageListConfiguration.messageListStyle\"\n [onError]=\"messageListConfiguration.onError\">\n </cometchat-message-list>\n </div>\n <div class=\"cc-threaded-messages__composer\">\n <cometchat-message-composer #messageComposerRef\n [parentMessageId]=\"parentMessage!.getId()\" [user]=\"user\" [group]=\"group\"\n [text]=\"messageComposerConfiguration.text\"\n [headerView]=\"messageComposerConfiguration.headerView\"\n [onTextChange]=\"messageComposerConfiguration.onTextChange\"\n [attachmentIconURL]=\"messageComposerConfiguration.attachmentIconURL\"\n [attachmentOptions]=\"messageComposerConfiguration.attachmentOptions\"\n [secondaryButtonView]=\"messageComposerConfiguration.secondaryButtonView\"\n [auxilaryButtonView]=\"messageComposerConfiguration.auxilaryButtonView\"\n [auxiliaryButtonsAlignment]=\"messageComposerConfiguration.auxiliaryButtonsAlignment\"\n [sendButtonView]=\"messageComposerConfiguration.sendButtonView\"\n [hideLiveReaction]=\"messageComposerConfiguration.hideLiveReaction\"\n [LiveReactionIconURL]=\"messageComposerConfiguration.LiveReactionIconURL\"\n [messageComposerStyle]=\"messageComposerConfiguration.messageComposerStyle\"\n [onSendButtonClick]=\"messageComposerConfiguration.onSendButtonClick\"\n [onSendButtonClick]=\"messageComposerConfiguration.onSendButtonClick\"\n [onError]=\"messageComposerConfiguration.onError\"\n [actionSheetStyle]=\"messageComposerConfiguration.actionSheetStyle\">\n </cometchat-message-composer>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-threaded-messages__wrapper{display:flex;flex-direction:column;height:100%;overflow-y:auto}.cc-threaded-messages__header{height:8%;width:100%;display:flex;padding:16px;align-items:flex-start}.cc-threaded-messages__close{display:flex;align-items:center}.cc-threaded-messages__title{display:flex;align-items:center;justify-content:center;width:100%}.cc-threaded-messages__bubble-view{width:100%}.cc-threaded-messages__header{flex:0 0 auto}.cc-threaded-messages__list{flex:1 1 auto;min-height:65%}.cc-threaded-messages__composer{flex:0 0 auto;min-height:80px}\n"] }]
12653
12930
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { onClose: [{
12654
12931
  type: Input
12655
12932
  }], onError: [{
@@ -13275,10 +13552,10 @@ class CometChatGroupMembersComponent {
13275
13552
  }
13276
13553
  }
13277
13554
  CometChatGroupMembersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatGroupMembersComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
13278
- CometChatGroupMembersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatGroupMembersComponent, selector: "cometchat-group-members", inputs: { groupMemberRequestBuilder: "groupMemberRequestBuilder", searchRequestBuilder: "searchRequestBuilder", subtitleView: "subtitleView", listItemView: "listItemView", tailView: "tailView", disableUsersPresence: "disableUsersPresence", menu: "menu", options: "options", backButtonIconURL: "backButtonIconURL", closeButtonIconURL: "closeButtonIconURL", showBackButton: "showBackButton", hideSeparator: "hideSeparator", selectionMode: "selectionMode", searchPlaceholder: "searchPlaceholder", searchIconURL: "searchIconURL", hideSearch: "hideSearch", title: "title", onError: "onError", backdropStyle: "backdropStyle", onBack: "onBack", onClose: "onClose", onSelect: "onSelect", group: "group", emptyStateView: "emptyStateView", errorStateView: "errorStateView", loadingIconURL: "loadingIconURL", loadingStateView: "loadingStateView", emptyStateText: "emptyStateText", errorStateText: "errorStateText", titleAlignment: "titleAlignment", dropdownIconURL: "dropdownIconURL", statusIndicatorStyle: "statusIndicatorStyle", avatarStyle: "avatarStyle", groupMembersStyle: "groupMembersStyle", groupScopeStyle: "groupScopeStyle", listItemStyle: "listItemStyle" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-group-members\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-group-members__back\">\n <cometchat-button [iconURL]=\"backButtonIconURL\" [buttonStyle]=\"backButtonStyle()\" *ngIf=\"showBackButton\" (cc-button-clicked)=\"backClicked()\" >\n\n </cometchat-button>\n </div>\n <div class=\"cc-group-members__wrapper\" [ngStyle]=\"membersStyle()\">\n <div class=\"cc-group-members__menus\" >\n <ng-container *ngTemplateOutlet=\"menu\">\n </ng-container>\n </div>\n <cometchat-list [listItemView]=\"listItemView ? listItemView : listItem\" [onScrolledToBottom]=\"onScrolledToBottom\" [onSearch]=\"onSearch\"\n [list]=\"groupMembers\" [searchText]=\"searchKeyword\" [searchPlaceholderText]=\"searchPlaceholder\"\n [searchIconURL]=\"searchIconURL\" [hideSearch]=\"hideSearch\" [title]=\"title\"\n\n [emptyStateText]=\"emptyStateText\" [loadingIconURL]=\"loadingIconURL\"\n [titleAlignment]=\"titleAlignment\" [loadingStateView]=\"loadingStateView\" [emptyStateView]=\"emptyStateView\"\n [errorStateText]=\"errorStateText\" [errorStateView]=\"errorStateView\" [listStyle]=\"listStyle\" [state]=\"state\">\n </cometchat-list>\n <ng-template #listItem let-groupMember>\n <cometchat-list-item [title]=\"groupMember?.name\" [avatarURL]=\"groupMember?.avatar\" [avatarName]=\"groupMember?.name\"\n [listItemStyle]=\"listItemStyle\" [avatarStyle]=\"avatarStyle\" [statusIndicatorStyle]=\"statusIndicatorStyle\"\n [statusIndicatorColor]=\"getStatusIndicatorColor(groupMember)\" [hideSeparator]=\"hideSeparator\">\n <div slot=\"subtitleView\" *ngIf=\"subtitleView\" class=\"cc-group-members__subtitle-view\">\n <ng-container *ngTemplateOutlet=\"subtitleView\">\n </ng-container>\n </div>\n <div slot=\"menuView\" class=\"cc-group-members__options\" *ngIf=\" !tailView && options\">\n <cometchat-menu-list [data]=\"options(groupMember)\" [menuListStyle]=\"menuListStyle\" (cc-menu-clicked)=\"handleMenuAction($event, groupMember)\"></cometchat-menu-list>\n </div>\n <div slot=\"tailView\" class=\"cc-group-members__tail-view\">\n\n <div *ngIf=\"tailView\">\n <ng-container *ngTemplateOutlet=\"tailView;context:{ $implicit: groupMember }\">\n </ng-container>\n\n </div>\n <div *ngIf=\"selectionMode != selectionmodeEnum.none\" >\n <div *ngIf=\"selectionMode == selectionmodeEnum.single\" class=\"cc-group-members__selection--single\">\n <cometchat-radio-button (cc-radio-button-changed)=\"onMemberSelected(groupMember,$event)\"></cometchat-radio-button>\n </div>\n <div *ngIf=\"selectionMode == selectionmodeEnum.multiple\" class=\"cc-group-members__selection--multiple\">\n <cometchat-checkbox (cc-checkbox-changed)=\"onMemberSelected(groupMember,$event)\"></cometchat-checkbox>\n </div>\n </div>\n <div *ngIf=\"!tailView\">\n <div class=\"cc-group-members__scopechange\" slot=\"tailView\">\n\n <cometchat-menu-list [moreIconURL]=\"moreIconURL\" *ngIf=\"isArray(getOptions(groupMember))\" [topMenuSize]=\"0\" [data]=\"getOptions(groupMember)\" (cc-menu-clicked)=\"handleMenuAction($event, groupMember)\" [menuListStyle]=\"menuListStyle\"></cometchat-menu-list>\n <cometchat-label *ngIf=\" isString(getOptions(groupMember))\" [text]=\"getOptions(groupMember)\" [labelStyle]=\"getScopeStyle()\">\n\n </cometchat-label>\n\n </div>\n </div>\n </div>\n </cometchat-list-item>\n\n </ng-template>\n </div>\n <div class=\"cc-group-members__close\">\n <cometchat-button [iconURL]=\"closeButtonIconURL\" [buttonStyle]=\"closeButtonStyle()\" (cc-button-clicked)=\"closeClicked()\">\n\n </cometchat-button>\n </div>\n</div>\n<cometchat-backdrop *ngIf=\"changeScope && memberScope.length > 0\" [backdropStyle]=\"backdropStyle\">\n <cometchat-change-scope [changeScopeStyle]=\"groupScopeStyle\" [options]=\"memberScope\" [arrowIconURL]=\"dropdownIconURL\" (cc-changescope-close-clicked)=\"changeScope = false;\" (cc-changescope-changed)=\"changeMemberScope($event)\">\n\n </cometchat-change-scope>\n</cometchat-backdrop>", styles: [".cc-group-members{display:flex;height:100%;width:100%;overflow:hidden}.cc-group-members__back{position:absolute;left:8px;padding:12px 8px 8px}.cc-group-members__wrapper{height:100%;padding:8px;width:100%}.cc-group-members__close{position:absolute;right:8px;padding:8px}.cc-group-members__tail-view{position:relative;display:flex;gap:8px;justify-content:flex-end;align-items:center}.cc-group-members__menus{position:absolute;right:12px;padding:12px;cursor:pointer}.scope__changed{height:100%;width:-moz-fit-content;width:fit-content;position:absolute;right:8px}\n"], components: [{ type: CometchatListComponent, selector: "cometchat-list", inputs: ["listItemView", "onScrolledToBottom", "onScrolledToTop", "list", "onSearch", "getSectionHeader", "searchText", "searchIconURL", "listStyle", "searchPlaceholderText", "hideSearch", "hideError", "title", "titleAlignment", "errorStateView", "loadingStateView", "emptyStateView", "state", "errorStateText", "emptyStateText", "loadingIconURL", "showSectionHeader", "sectionHeaderField", "DateSeparatorPattern", "dateSeparatorStyle"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13555
+ CometChatGroupMembersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatGroupMembersComponent, selector: "cometchat-group-members", inputs: { groupMemberRequestBuilder: "groupMemberRequestBuilder", searchRequestBuilder: "searchRequestBuilder", subtitleView: "subtitleView", listItemView: "listItemView", tailView: "tailView", disableUsersPresence: "disableUsersPresence", menu: "menu", options: "options", backButtonIconURL: "backButtonIconURL", closeButtonIconURL: "closeButtonIconURL", showBackButton: "showBackButton", hideSeparator: "hideSeparator", selectionMode: "selectionMode", searchPlaceholder: "searchPlaceholder", searchIconURL: "searchIconURL", hideSearch: "hideSearch", title: "title", onError: "onError", backdropStyle: "backdropStyle", onBack: "onBack", onClose: "onClose", onSelect: "onSelect", group: "group", emptyStateView: "emptyStateView", errorStateView: "errorStateView", loadingIconURL: "loadingIconURL", loadingStateView: "loadingStateView", emptyStateText: "emptyStateText", errorStateText: "errorStateText", titleAlignment: "titleAlignment", dropdownIconURL: "dropdownIconURL", statusIndicatorStyle: "statusIndicatorStyle", avatarStyle: "avatarStyle", groupMembersStyle: "groupMembersStyle", groupScopeStyle: "groupScopeStyle", listItemStyle: "listItemStyle" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-group-members\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-group-members__back\">\n <cometchat-button [iconURL]=\"backButtonIconURL\"\n [buttonStyle]=\"backButtonStyle()\" *ngIf=\"showBackButton\"\n (cc-button-clicked)=\"backClicked()\">\n\n </cometchat-button>\n </div>\n <div class=\"cc-group-members__wrapper\" [ngStyle]=\"membersStyle()\">\n <div class=\"cc-group-members__menus\">\n <ng-container *ngTemplateOutlet=\"menu\">\n </ng-container>\n </div>\n <cometchat-list [listItemView]=\"listItemView ? listItemView : listItem\"\n [onScrolledToBottom]=\"onScrolledToBottom\" [onSearch]=\"onSearch\"\n [list]=\"groupMembers\" [searchText]=\"searchKeyword\"\n [searchPlaceholderText]=\"searchPlaceholder\"\n [searchIconURL]=\"searchIconURL\" [hideSearch]=\"hideSearch\" [title]=\"title\"\n [emptyStateText]=\"emptyStateText\" [loadingIconURL]=\"loadingIconURL\"\n [titleAlignment]=\"titleAlignment\" [loadingStateView]=\"loadingStateView\"\n [emptyStateView]=\"emptyStateView\" [errorStateText]=\"errorStateText\"\n [errorStateView]=\"errorStateView\" [listStyle]=\"listStyle\" [state]=\"state\">\n </cometchat-list>\n <ng-template #listItem let-groupMember>\n <cometchat-list-item [title]=\"groupMember?.name\"\n [avatarURL]=\"groupMember?.avatar\" [avatarName]=\"groupMember?.name\"\n [listItemStyle]=\"listItemStyle\" [avatarStyle]=\"avatarStyle\"\n [statusIndicatorStyle]=\"statusIndicatorStyle\"\n [statusIndicatorColor]=\"getStatusIndicatorColor(groupMember)\"\n [hideSeparator]=\"hideSeparator\">\n <div slot=\"subtitleView\" *ngIf=\"subtitleView\"\n class=\"cc-group-members__subtitle-view\">\n <ng-container *ngTemplateOutlet=\"subtitleView\">\n </ng-container>\n </div>\n <div slot=\"menuView\" class=\"cc-group-members__options\"\n *ngIf=\" !tailView && options\">\n <cometchat-menu-list [data]=\"options(groupMember)\"\n [menuListStyle]=\"menuListStyle\"\n (cc-menu-clicked)=\"handleMenuAction($event, groupMember)\"></cometchat-menu-list>\n </div>\n <div slot=\"tailView\" class=\"cc-group-members__tail-view\">\n\n <div *ngIf=\"tailView\">\n <ng-container\n *ngTemplateOutlet=\"tailView;context:{ $implicit: groupMember }\">\n </ng-container>\n\n </div>\n <div *ngIf=\"selectionMode != selectionmodeEnum.none\">\n <div *ngIf=\"selectionMode == selectionmodeEnum.single\"\n class=\"cc-group-members__selection--single\">\n <cometchat-radio-button\n (cc-radio-button-changed)=\"onMemberSelected(groupMember,$event)\"></cometchat-radio-button>\n </div>\n <div *ngIf=\"selectionMode == selectionmodeEnum.multiple\"\n class=\"cc-group-members__selection--multiple\">\n <cometchat-checkbox\n (cc-checkbox-changed)=\"onMemberSelected(groupMember,$event)\"></cometchat-checkbox>\n </div>\n </div>\n <div *ngIf=\"!tailView\">\n <div class=\"cc-group-members__scopechange\" slot=\"tailView\">\n\n <cometchat-menu-list [moreIconURL]=\"moreIconURL\"\n *ngIf=\"isArray(getOptions(groupMember))\" [topMenuSize]=\"0\"\n [data]=\"getOptions(groupMember)\"\n (cc-menu-clicked)=\"handleMenuAction($event, groupMember)\"\n [menuListStyle]=\"menuListStyle\"></cometchat-menu-list>\n <cometchat-label *ngIf=\" isString(getOptions(groupMember))\"\n [text]=\"getOptions(groupMember)\" [labelStyle]=\"getScopeStyle()\">\n\n </cometchat-label>\n\n </div>\n </div>\n </div>\n </cometchat-list-item>\n\n </ng-template>\n </div>\n <div class=\"cc-group-members__close\">\n <cometchat-button [iconURL]=\"closeButtonIconURL\"\n [buttonStyle]=\"closeButtonStyle()\" (cc-button-clicked)=\"closeClicked()\">\n </cometchat-button>\n </div>\n</div>\n<cometchat-backdrop *ngIf=\"changeScope && memberScope.length > 0\"\n [backdropStyle]=\"backdropStyle\">\n <cometchat-change-scope [changeScopeStyle]=\"groupScopeStyle\"\n [options]=\"memberScope\" [arrowIconURL]=\"dropdownIconURL\"\n (cc-changescope-close-clicked)=\"changeScope = false;\"\n (cc-changescope-changed)=\"changeMemberScope($event)\">\n\n </cometchat-change-scope>\n</cometchat-backdrop>\n", styles: [".cc-group-members{display:flex;height:100%;width:100%;overflow:hidden}.cc-group-members__back{position:absolute;left:8px;padding:12px 8px 8px}.cc-group-members__wrapper{height:100%;padding:8px;width:100%}.cc-group-members__close{position:absolute;right:8px;padding:8px}.cc-group-members__tail-view{position:relative;display:flex;gap:8px;justify-content:flex-end;align-items:center}.cc-group-members__menus{position:absolute;right:12px;padding:12px;cursor:pointer}.scope__changed{height:100%;width:-moz-fit-content;width:fit-content;position:absolute;right:8px}\n"], components: [{ type: CometchatListComponent, selector: "cometchat-list", inputs: ["listItemView", "onScrolledToBottom", "onScrolledToTop", "list", "onSearch", "getSectionHeader", "searchText", "searchIconURL", "listStyle", "searchPlaceholderText", "hideSearch", "hideError", "title", "titleAlignment", "errorStateView", "loadingStateView", "emptyStateView", "state", "errorStateText", "emptyStateText", "loadingIconURL", "showSectionHeader", "sectionHeaderField", "DateSeparatorPattern", "dateSeparatorStyle"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13279
13556
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatGroupMembersComponent, decorators: [{
13280
13557
  type: Component,
13281
- args: [{ selector: "cometchat-group-members", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-group-members\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-group-members__back\">\n <cometchat-button [iconURL]=\"backButtonIconURL\" [buttonStyle]=\"backButtonStyle()\" *ngIf=\"showBackButton\" (cc-button-clicked)=\"backClicked()\" >\n\n </cometchat-button>\n </div>\n <div class=\"cc-group-members__wrapper\" [ngStyle]=\"membersStyle()\">\n <div class=\"cc-group-members__menus\" >\n <ng-container *ngTemplateOutlet=\"menu\">\n </ng-container>\n </div>\n <cometchat-list [listItemView]=\"listItemView ? listItemView : listItem\" [onScrolledToBottom]=\"onScrolledToBottom\" [onSearch]=\"onSearch\"\n [list]=\"groupMembers\" [searchText]=\"searchKeyword\" [searchPlaceholderText]=\"searchPlaceholder\"\n [searchIconURL]=\"searchIconURL\" [hideSearch]=\"hideSearch\" [title]=\"title\"\n\n [emptyStateText]=\"emptyStateText\" [loadingIconURL]=\"loadingIconURL\"\n [titleAlignment]=\"titleAlignment\" [loadingStateView]=\"loadingStateView\" [emptyStateView]=\"emptyStateView\"\n [errorStateText]=\"errorStateText\" [errorStateView]=\"errorStateView\" [listStyle]=\"listStyle\" [state]=\"state\">\n </cometchat-list>\n <ng-template #listItem let-groupMember>\n <cometchat-list-item [title]=\"groupMember?.name\" [avatarURL]=\"groupMember?.avatar\" [avatarName]=\"groupMember?.name\"\n [listItemStyle]=\"listItemStyle\" [avatarStyle]=\"avatarStyle\" [statusIndicatorStyle]=\"statusIndicatorStyle\"\n [statusIndicatorColor]=\"getStatusIndicatorColor(groupMember)\" [hideSeparator]=\"hideSeparator\">\n <div slot=\"subtitleView\" *ngIf=\"subtitleView\" class=\"cc-group-members__subtitle-view\">\n <ng-container *ngTemplateOutlet=\"subtitleView\">\n </ng-container>\n </div>\n <div slot=\"menuView\" class=\"cc-group-members__options\" *ngIf=\" !tailView && options\">\n <cometchat-menu-list [data]=\"options(groupMember)\" [menuListStyle]=\"menuListStyle\" (cc-menu-clicked)=\"handleMenuAction($event, groupMember)\"></cometchat-menu-list>\n </div>\n <div slot=\"tailView\" class=\"cc-group-members__tail-view\">\n\n <div *ngIf=\"tailView\">\n <ng-container *ngTemplateOutlet=\"tailView;context:{ $implicit: groupMember }\">\n </ng-container>\n\n </div>\n <div *ngIf=\"selectionMode != selectionmodeEnum.none\" >\n <div *ngIf=\"selectionMode == selectionmodeEnum.single\" class=\"cc-group-members__selection--single\">\n <cometchat-radio-button (cc-radio-button-changed)=\"onMemberSelected(groupMember,$event)\"></cometchat-radio-button>\n </div>\n <div *ngIf=\"selectionMode == selectionmodeEnum.multiple\" class=\"cc-group-members__selection--multiple\">\n <cometchat-checkbox (cc-checkbox-changed)=\"onMemberSelected(groupMember,$event)\"></cometchat-checkbox>\n </div>\n </div>\n <div *ngIf=\"!tailView\">\n <div class=\"cc-group-members__scopechange\" slot=\"tailView\">\n\n <cometchat-menu-list [moreIconURL]=\"moreIconURL\" *ngIf=\"isArray(getOptions(groupMember))\" [topMenuSize]=\"0\" [data]=\"getOptions(groupMember)\" (cc-menu-clicked)=\"handleMenuAction($event, groupMember)\" [menuListStyle]=\"menuListStyle\"></cometchat-menu-list>\n <cometchat-label *ngIf=\" isString(getOptions(groupMember))\" [text]=\"getOptions(groupMember)\" [labelStyle]=\"getScopeStyle()\">\n\n </cometchat-label>\n\n </div>\n </div>\n </div>\n </cometchat-list-item>\n\n </ng-template>\n </div>\n <div class=\"cc-group-members__close\">\n <cometchat-button [iconURL]=\"closeButtonIconURL\" [buttonStyle]=\"closeButtonStyle()\" (cc-button-clicked)=\"closeClicked()\">\n\n </cometchat-button>\n </div>\n</div>\n<cometchat-backdrop *ngIf=\"changeScope && memberScope.length > 0\" [backdropStyle]=\"backdropStyle\">\n <cometchat-change-scope [changeScopeStyle]=\"groupScopeStyle\" [options]=\"memberScope\" [arrowIconURL]=\"dropdownIconURL\" (cc-changescope-close-clicked)=\"changeScope = false;\" (cc-changescope-changed)=\"changeMemberScope($event)\">\n\n </cometchat-change-scope>\n</cometchat-backdrop>", styles: [".cc-group-members{display:flex;height:100%;width:100%;overflow:hidden}.cc-group-members__back{position:absolute;left:8px;padding:12px 8px 8px}.cc-group-members__wrapper{height:100%;padding:8px;width:100%}.cc-group-members__close{position:absolute;right:8px;padding:8px}.cc-group-members__tail-view{position:relative;display:flex;gap:8px;justify-content:flex-end;align-items:center}.cc-group-members__menus{position:absolute;right:12px;padding:12px;cursor:pointer}.scope__changed{height:100%;width:-moz-fit-content;width:fit-content;position:absolute;right:8px}\n"] }]
13558
+ args: [{ selector: "cometchat-group-members", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-group-members\" [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-group-members__back\">\n <cometchat-button [iconURL]=\"backButtonIconURL\"\n [buttonStyle]=\"backButtonStyle()\" *ngIf=\"showBackButton\"\n (cc-button-clicked)=\"backClicked()\">\n\n </cometchat-button>\n </div>\n <div class=\"cc-group-members__wrapper\" [ngStyle]=\"membersStyle()\">\n <div class=\"cc-group-members__menus\">\n <ng-container *ngTemplateOutlet=\"menu\">\n </ng-container>\n </div>\n <cometchat-list [listItemView]=\"listItemView ? listItemView : listItem\"\n [onScrolledToBottom]=\"onScrolledToBottom\" [onSearch]=\"onSearch\"\n [list]=\"groupMembers\" [searchText]=\"searchKeyword\"\n [searchPlaceholderText]=\"searchPlaceholder\"\n [searchIconURL]=\"searchIconURL\" [hideSearch]=\"hideSearch\" [title]=\"title\"\n [emptyStateText]=\"emptyStateText\" [loadingIconURL]=\"loadingIconURL\"\n [titleAlignment]=\"titleAlignment\" [loadingStateView]=\"loadingStateView\"\n [emptyStateView]=\"emptyStateView\" [errorStateText]=\"errorStateText\"\n [errorStateView]=\"errorStateView\" [listStyle]=\"listStyle\" [state]=\"state\">\n </cometchat-list>\n <ng-template #listItem let-groupMember>\n <cometchat-list-item [title]=\"groupMember?.name\"\n [avatarURL]=\"groupMember?.avatar\" [avatarName]=\"groupMember?.name\"\n [listItemStyle]=\"listItemStyle\" [avatarStyle]=\"avatarStyle\"\n [statusIndicatorStyle]=\"statusIndicatorStyle\"\n [statusIndicatorColor]=\"getStatusIndicatorColor(groupMember)\"\n [hideSeparator]=\"hideSeparator\">\n <div slot=\"subtitleView\" *ngIf=\"subtitleView\"\n class=\"cc-group-members__subtitle-view\">\n <ng-container *ngTemplateOutlet=\"subtitleView\">\n </ng-container>\n </div>\n <div slot=\"menuView\" class=\"cc-group-members__options\"\n *ngIf=\" !tailView && options\">\n <cometchat-menu-list [data]=\"options(groupMember)\"\n [menuListStyle]=\"menuListStyle\"\n (cc-menu-clicked)=\"handleMenuAction($event, groupMember)\"></cometchat-menu-list>\n </div>\n <div slot=\"tailView\" class=\"cc-group-members__tail-view\">\n\n <div *ngIf=\"tailView\">\n <ng-container\n *ngTemplateOutlet=\"tailView;context:{ $implicit: groupMember }\">\n </ng-container>\n\n </div>\n <div *ngIf=\"selectionMode != selectionmodeEnum.none\">\n <div *ngIf=\"selectionMode == selectionmodeEnum.single\"\n class=\"cc-group-members__selection--single\">\n <cometchat-radio-button\n (cc-radio-button-changed)=\"onMemberSelected(groupMember,$event)\"></cometchat-radio-button>\n </div>\n <div *ngIf=\"selectionMode == selectionmodeEnum.multiple\"\n class=\"cc-group-members__selection--multiple\">\n <cometchat-checkbox\n (cc-checkbox-changed)=\"onMemberSelected(groupMember,$event)\"></cometchat-checkbox>\n </div>\n </div>\n <div *ngIf=\"!tailView\">\n <div class=\"cc-group-members__scopechange\" slot=\"tailView\">\n\n <cometchat-menu-list [moreIconURL]=\"moreIconURL\"\n *ngIf=\"isArray(getOptions(groupMember))\" [topMenuSize]=\"0\"\n [data]=\"getOptions(groupMember)\"\n (cc-menu-clicked)=\"handleMenuAction($event, groupMember)\"\n [menuListStyle]=\"menuListStyle\"></cometchat-menu-list>\n <cometchat-label *ngIf=\" isString(getOptions(groupMember))\"\n [text]=\"getOptions(groupMember)\" [labelStyle]=\"getScopeStyle()\">\n\n </cometchat-label>\n\n </div>\n </div>\n </div>\n </cometchat-list-item>\n\n </ng-template>\n </div>\n <div class=\"cc-group-members__close\">\n <cometchat-button [iconURL]=\"closeButtonIconURL\"\n [buttonStyle]=\"closeButtonStyle()\" (cc-button-clicked)=\"closeClicked()\">\n </cometchat-button>\n </div>\n</div>\n<cometchat-backdrop *ngIf=\"changeScope && memberScope.length > 0\"\n [backdropStyle]=\"backdropStyle\">\n <cometchat-change-scope [changeScopeStyle]=\"groupScopeStyle\"\n [options]=\"memberScope\" [arrowIconURL]=\"dropdownIconURL\"\n (cc-changescope-close-clicked)=\"changeScope = false;\"\n (cc-changescope-changed)=\"changeMemberScope($event)\">\n\n </cometchat-change-scope>\n</cometchat-backdrop>\n", styles: [".cc-group-members{display:flex;height:100%;width:100%;overflow:hidden}.cc-group-members__back{position:absolute;left:8px;padding:12px 8px 8px}.cc-group-members__wrapper{height:100%;padding:8px;width:100%}.cc-group-members__close{position:absolute;right:8px;padding:8px}.cc-group-members__tail-view{position:relative;display:flex;gap:8px;justify-content:flex-end;align-items:center}.cc-group-members__menus{position:absolute;right:12px;padding:12px;cursor:pointer}.scope__changed{height:100%;width:-moz-fit-content;width:fit-content;position:absolute;right:8px}\n"] }]
13282
13559
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { groupMemberRequestBuilder: [{
13283
13560
  type: Input
13284
13561
  }], searchRequestBuilder: [{
@@ -16077,7 +16354,6 @@ class CometChatConversationsWithMessagesComponent {
16077
16354
  if (this.group && this.group.getGuid() == (item === null || item === void 0 ? void 0 : item.leftGroup.getGuid()) && ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid()) == ((_b = item === null || item === void 0 ? void 0 : item.userLeft) === null || _b === void 0 ? void 0 : _b.getUid())) {
16078
16355
  this.group = null;
16079
16356
  this.activeConversation = null;
16080
- console.log(this.group, this.user, this.activeConversation);
16081
16357
  this.ref.detectChanges();
16082
16358
  }
16083
16359
  });