@cometchat/chat-uikit-angular 4.3.16 → 4.3.18

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 (29) hide show
  1. package/CometChatConversationsWithMessages/cometchat-conversations-with-messages/cometchat-conversations-with-messages.component.d.ts +1 -0
  2. package/CometChatDetails/cometchat-details/cometchat-details.component.d.ts +2 -0
  3. package/CometChatGroups/cometchat-groups/cometchat-groups.component.d.ts +1 -0
  4. package/CometChatGroupsWithMessages/cometchat-groups-with-messages/cometchat-groups-with-messages.component.d.ts +1 -0
  5. package/CometChatMessageComposer/cometchat-message-composer/cometchat-message-composer.component.d.ts +1 -0
  6. package/CometChatMessageHeader/cometchat-message-header/cometchat-message-header.component.d.ts +1 -0
  7. package/CometChatMessageInformation/cometchat-message-information/cometchat-message-information.component.d.ts +0 -2
  8. package/CometChatMessageList/cometchat-message-list/cometchat-message-list.component.d.ts +1 -1
  9. package/CometChatUsersWithMessages/cometchat-users-with-messages/cometchat-users-with-messages.component.d.ts +1 -0
  10. package/esm2020/Calls/CometChatCallLogsWithDetails/cometchat-call-logs-with-details/cometchat-call-logs-with-details.component.mjs +8 -3
  11. package/esm2020/CometChatContacts/cometchat-contacts/cometchat-contacts.component.mjs +2 -2
  12. package/esm2020/CometChatConversations/cometchat-conversations/cometchat-conversations.component.mjs +2 -11
  13. package/esm2020/CometChatConversationsWithMessages/cometchat-conversations-with-messages/cometchat-conversations-with-messages.component.mjs +11 -5
  14. package/esm2020/CometChatDetails/cometchat-details/cometchat-details.component.mjs +20 -4
  15. package/esm2020/CometChatGroups/cometchat-groups/cometchat-groups.component.mjs +89 -23
  16. package/esm2020/CometChatGroupsWithMessages/cometchat-groups-with-messages/cometchat-groups-with-messages.component.mjs +11 -5
  17. package/esm2020/CometChatMessageComposer/cometchat-message-composer/cometchat-message-composer.component.mjs +41 -2
  18. package/esm2020/CometChatMessageHeader/cometchat-message-header/cometchat-message-header.component.mjs +21 -32
  19. package/esm2020/CometChatMessageInformation/cometchat-message-information/cometchat-message-information.component.mjs +1 -3
  20. package/esm2020/CometChatMessageList/cometchat-message-list/cometchat-message-list.component.mjs +27 -25
  21. package/esm2020/CometChatUsers/cometchat-users/cometchat-users.component.mjs +2 -1
  22. package/esm2020/CometChatUsersWithMessages/cometchat-users-with-messages/cometchat-users-with-messages.component.mjs +9 -3
  23. package/esm2020/Shared/CometChatUIkit/CometChatUIKit.mjs +2 -2
  24. package/examples/sample-app/README.md +4 -8
  25. package/fesm2015/cometchat-chat-uikit-angular.mjs +237 -115
  26. package/fesm2015/cometchat-chat-uikit-angular.mjs.map +1 -1
  27. package/fesm2020/cometchat-chat-uikit-angular.mjs +232 -107
  28. package/fesm2020/cometchat-chat-uikit-angular.mjs.map +1 -1
  29. package/package.json +5 -5
@@ -1940,7 +1940,7 @@ class CometChatUIKit {
1940
1940
  if (window) {
1941
1941
  window.CometChatUiKit = {
1942
1942
  name: "@cometchat/chat-uikit-angular",
1943
- version: "4.3.16",
1943
+ version: "4.3.18",
1944
1944
  };
1945
1945
  }
1946
1946
  if (CometChatUIKitSharedSettings) {
@@ -4076,6 +4076,7 @@ class CometChatUsersComponent {
4076
4076
  else {
4077
4077
  delete this.selectedUsers[user.getUid()];
4078
4078
  }
4079
+ this.ref.detectChanges();
4079
4080
  };
4080
4081
  this.fetchNextUsersList = (state = States.loading) => {
4081
4082
  var _a;
@@ -4943,6 +4944,21 @@ class CometChatMessageHeaderComponent {
4943
4944
  else
4944
4945
  return;
4945
4946
  };
4947
+ this.handleGroupEvent = (group, user, hasJoined, newScope) => {
4948
+ var _a;
4949
+ if (this.group.getGuid() !== group.getGuid()) {
4950
+ return;
4951
+ }
4952
+ if (user.getUid() === ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
4953
+ group.setHasJoined(hasJoined);
4954
+ if (newScope) {
4955
+ group.setScope(newScope);
4956
+ }
4957
+ }
4958
+ this.group = group;
4959
+ this.ref.detectChanges();
4960
+ this.updateSubtitle();
4961
+ };
4946
4962
  this.setTypingIndicatorText = (typing) => {
4947
4963
  var _a;
4948
4964
  const sender = typing.getSender();
@@ -5216,50 +5232,20 @@ class CometChatMessageHeaderComponent {
5216
5232
  }
5217
5233
  CometChat.addGroupListener(this.groupsListenerId, new CometChat.GroupListener({
5218
5234
  onGroupMemberScopeChanged: (message, changedUser, newScope, oldScope, changedGroup) => {
5219
- var _a;
5220
- if (changedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
5221
- changedGroup.setScope(newScope);
5222
- }
5223
- this.group = changedGroup;
5224
- this.ref.detectChanges();
5225
- this.updateSubtitle();
5235
+ this.handleGroupEvent(changedGroup, changedUser, true, newScope);
5226
5236
  },
5227
5237
  onGroupMemberKicked: (message, kickedUser, kickedBy, kickedFrom) => {
5228
- var _a;
5229
- if (kickedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
5230
- kickedFrom.setHasJoined(false);
5231
- }
5232
- this.group = kickedFrom;
5233
- this.ref.detectChanges();
5234
- this.updateSubtitle();
5238
+ this.handleGroupEvent(kickedFrom, kickedUser, false);
5235
5239
  },
5236
5240
  onMemberAddedToGroup: (message, userAdded, userAddedBy, userAddedIn) => {
5237
- var _a;
5238
- if (userAdded.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
5239
- userAddedIn.setHasJoined(true);
5240
- }
5241
- this.group = userAddedIn;
5242
- this.ref.detectChanges();
5243
- this.updateSubtitle();
5241
+ this.handleGroupEvent(userAddedIn, userAdded, true);
5244
5242
  },
5245
5243
  onGroupMemberLeft: (message, leavingUser, group) => {
5246
- var _a;
5247
- if (leavingUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
5248
- group.setHasJoined(false);
5249
- }
5250
- this.group = group;
5251
- this.ref.detectChanges();
5252
- this.updateSubtitle();
5244
+ this.handleGroupEvent(group, leavingUser, false);
5253
5245
  },
5254
5246
  onGroupMemberJoined: (message, joinedUser, joinedGroup) => {
5255
- var _a;
5256
- if (joinedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
5257
- joinedGroup.setHasJoined(true);
5258
- }
5259
- this.group = joinedGroup;
5260
- this.ref.detectChanges();
5261
- this.updateSubtitle();
5262
- },
5247
+ this.handleGroupEvent(joinedGroup, joinedUser, true);
5248
+ }
5263
5249
  }));
5264
5250
  }
5265
5251
  catch (error) {
@@ -6308,17 +6294,7 @@ class CometChatConversationsComponent {
6308
6294
  * @param {CometChat.BaseMessage} message
6309
6295
  */
6310
6296
  this.markMessageAsDelivered = (message) => {
6311
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
6312
- const isGroupConversation = ((_a = this.activeConversation) === null || _a === void 0 ? void 0 : _a.getConversationType()) ==
6313
- CometChatUIKitConstants.MessageReceiverType.group;
6314
- const isUserConversation = ((_b = this.activeConversation) === null || _b === void 0 ? void 0 : _b.getConversationType()) ==
6315
- CometChatUIKitConstants.MessageReceiverType.user;
6316
- const isSameGroup = ((_c = this.activeConversation) === null || _c === void 0 ? void 0 : _c.getConversationWith()) instanceof CometChat.Group && ((_e = (_d = this.activeConversation) === null || _d === void 0 ? void 0 : _d.getConversationWith()) === null || _e === void 0 ? void 0 : _e.getGuid()) === (message === null || message === void 0 ? void 0 : message.getReceiverId());
6317
- const isSameUser = ((_f = this.activeConversation) === null || _f === void 0 ? void 0 : _f.getConversationWith()) instanceof CometChat.User && ((_h = (_g = this.activeConversation) === null || _g === void 0 ? void 0 : _g.getConversationWith()) === null || _h === void 0 ? void 0 : _h.getUid()) === ((_j = message === null || message === void 0 ? void 0 : message.getSender()) === null || _j === void 0 ? void 0 : _j.getUid());
6318
- const shouldMarkAsDelivered = !this.activeConversation ||
6319
- (isGroupConversation && isSameGroup) ||
6320
- (isUserConversation && isSameUser);
6321
- if (shouldMarkAsDelivered && !message.hasOwnProperty("deliveredAt")) {
6297
+ if (!message.hasOwnProperty("deliveredAt")) {
6322
6298
  CometChat.markAsDelivered(message);
6323
6299
  }
6324
6300
  };
@@ -8330,8 +8306,6 @@ class CometChatMessageInformationComponent {
8330
8306
  ngOnDestroy() {
8331
8307
  this.onMessagesDelivered.unsubscribe();
8332
8308
  this.onMessagesRead.unsubscribe();
8333
- this.onMessagesReadByAll.unsubscribe();
8334
- this.onMessagesDeliveredToAll.unsubscribe();
8335
8309
  }
8336
8310
  addMessageEventListeners() {
8337
8311
  try {
@@ -9148,18 +9122,10 @@ class CometChatMessageListComponent {
9148
9122
  * @param
9149
9123
  */
9150
9124
  this.fetchPreviousMessages = () => {
9151
- var _a, _b, _c, _d;
9125
+ var _a, _b;
9152
9126
  if (this.reinitialized) {
9153
9127
  if (this.messagesRequestBuilder) {
9154
- this.requestBuilder = this.user
9155
- ? this.messagesRequestBuilder
9156
- .setUID((_a = this.user) === null || _a === void 0 ? void 0 : _a.getUid())
9157
- .setMessageId(this.messagesList[0].getId())
9158
- .build()
9159
- : this.messagesRequestBuilder
9160
- .setGUID((_b = this.group) === null || _b === void 0 ? void 0 : _b.getGuid())
9161
- .setMessageId(this.messagesList[0].getId())
9162
- .build();
9128
+ this.requestBuilder = CometChatUIKitUtility.clone(this.messagesRequestBuilder);
9163
9129
  }
9164
9130
  else {
9165
9131
  this.requestBuilder = new CometChat.MessagesRequestBuilder()
@@ -9169,10 +9135,10 @@ class CometChatMessageListComponent {
9169
9135
  .setCategories(this.categories)
9170
9136
  .hideReplies(true);
9171
9137
  if (this.user) {
9172
- this.requestBuilder.setUID((_c = this.user) === null || _c === void 0 ? void 0 : _c.getUid()).build();
9138
+ this.requestBuilder = this.requestBuilder.setUID((_a = this.user) === null || _a === void 0 ? void 0 : _a.getUid()).build();
9173
9139
  }
9174
9140
  else if (this.group) {
9175
- this.requestBuilder.setGUID((_d = this.group) === null || _d === void 0 ? void 0 : _d.getGuid()).build();
9141
+ this.requestBuilder = this.requestBuilder.setGUID((_b = this.group) === null || _b === void 0 ? void 0 : _b.getGuid()).build();
9176
9142
  }
9177
9143
  }
9178
9144
  }
@@ -11388,7 +11354,7 @@ class CometChatMessageListComponent {
11388
11354
  return Object.assign({}, this.receiptStyle);
11389
11355
  }
11390
11356
  createRequestBuilder() {
11391
- var _a, _b, _c;
11357
+ var _a, _b;
11392
11358
  if (!this.templates || ((_a = this.templates) === null || _a === void 0 ? void 0 : _a.length) == 0) {
11393
11359
  this.messageTemplate =
11394
11360
  ChatConfigurator.getDataSource().getAllMessageTemplates();
@@ -11404,25 +11370,23 @@ class CometChatMessageListComponent {
11404
11370
  if (this.user || this.group) {
11405
11371
  if (this.user) {
11406
11372
  this.requestBuilder = this.messagesRequestBuilder
11407
- ? this.messagesRequestBuilder.setUID((_b = this.user) === null || _b === void 0 ? void 0 : _b.getUid()).build()
11373
+ ? CometChatUIKitUtility.clone(this.messagesRequestBuilder)
11408
11374
  : new CometChat.MessagesRequestBuilder()
11409
- .setUID(this.user.getUid())
11410
11375
  .setLimit(this.limit)
11411
11376
  .setTypes(this.types)
11412
11377
  .setCategories(this.categories)
11413
- .hideReplies(true)
11414
- .build();
11378
+ .hideReplies(true);
11379
+ this.requestBuilder = this.requestBuilder.setUID(this.user.getUid()).build();
11415
11380
  }
11416
11381
  else {
11417
11382
  this.requestBuilder = this.messagesRequestBuilder
11418
- ? this.messagesRequestBuilder.setGUID((_c = this.group) === null || _c === void 0 ? void 0 : _c.getGuid()).build()
11383
+ ? CometChatUIKitUtility.clone(this.messagesRequestBuilder)
11419
11384
  : new CometChat.MessagesRequestBuilder()
11420
- .setGUID(this.group.getGuid())
11421
11385
  .setLimit(this.limit)
11422
11386
  .setTypes(this.types)
11423
11387
  .hideReplies(true)
11424
- .setCategories(this.categories)
11425
- .build();
11388
+ .setCategories(this.categories);
11389
+ this.requestBuilder = this.requestBuilder.setGUID((_b = this.group) === null || _b === void 0 ? void 0 : _b.getGuid()).build();
11426
11390
  }
11427
11391
  this.computeUnreadCount();
11428
11392
  this.fetchPreviousMessages();
@@ -11608,22 +11572,24 @@ class CometChatMessageListComponent {
11608
11572
  });
11609
11573
  this.onMessagesDelivered =
11610
11574
  CometChatMessageEvents.onMessagesDelivered.subscribe((messageReceipt) => {
11611
- if (messageReceipt.getReceiptType() == CometChatUIKitConstants.MessageReceiverType.user) {
11575
+ if (messageReceipt.getReceiverType() == CometChatUIKitConstants.MessageReceiverType.user) {
11612
11576
  this.messageUpdate(CometChatUIKitConstants.messages.MESSAGE_DELIVERED, messageReceipt);
11613
11577
  }
11614
11578
  });
11615
11579
  this.onMessagesRead = CometChatMessageEvents.onMessagesRead.subscribe((messageReceipt) => {
11616
- if (messageReceipt.getReceiptType() == CometChatUIKitConstants.MessageReceiverType.user) {
11580
+ if (messageReceipt.getReceiverType() == CometChatUIKitConstants.MessageReceiverType.user) {
11617
11581
  this.messageUpdate(CometChatUIKitConstants.messages.MESSAGE_READ, messageReceipt);
11618
11582
  }
11619
11583
  });
11620
11584
  this.onMessagesReadByAll = CometChatMessageEvents.onMessagesReadByAll.subscribe((messageReceipt) => {
11621
11585
  if (messageReceipt.getReceiverType() == CometChatUIKitConstants.MessageReceiverType.group) {
11586
+ this.messageReadAndDelivered(messageReceipt, true);
11622
11587
  this.messageUpdate(CometChatUIKitConstants.messages.MESSAGE_READ, messageReceipt);
11623
11588
  }
11624
11589
  });
11625
11590
  this.onMessagesDeliveredToAll = CometChatMessageEvents.onMessagesDeliveredToAll.subscribe((messageReceipt) => {
11626
11591
  if (messageReceipt.getReceiverType() == CometChatUIKitConstants.MessageReceiverType.group) {
11592
+ this.messageReadAndDelivered(messageReceipt, true);
11627
11593
  this.messageUpdate(CometChatUIKitConstants.messages.MESSAGE_DELIVERED, messageReceipt);
11628
11594
  }
11629
11595
  });
@@ -11689,6 +11655,7 @@ class CometChatMessageListComponent {
11689
11655
  switch (key) {
11690
11656
  case CometChatUIKitConstants.messages.TEXT_MESSAGE_RECEIVED:
11691
11657
  case CometChatUIKitConstants.messages.MEDIA_MESSAGE_RECEIVED:
11658
+ this.markMessageAsDelivered(message);
11692
11659
  if (this.isPartOfCurrentChatForSDKEvent(message)) {
11693
11660
  this.messageReceived(message);
11694
11661
  }
@@ -11784,7 +11751,6 @@ class CometChatMessageListComponent {
11784
11751
  */
11785
11752
  messageReceived(message) {
11786
11753
  var _a, _b, _c;
11787
- this.markMessageAsDelivered(message);
11788
11754
  try {
11789
11755
  if (message.getReceiverId() === ((_a = this.group) === null || _a === void 0 ? void 0 : _a.getGuid()) ||
11790
11756
  ((message === null || message === void 0 ? void 0 : message.getSender().getUid()) === ((_b = this.user) === null || _b === void 0 ? void 0 : _b.getUid()) &&
@@ -11885,10 +11851,20 @@ class CometChatMessageListComponent {
11885
11851
  let receipt = MessageReceiptUtils.getReceiptStatus(message);
11886
11852
  return receipt;
11887
11853
  }
11888
- messageReadAndDelivered(message) {
11854
+ messageReadAndDelivered(message, isGroupReceipt = false) {
11889
11855
  var _a;
11890
11856
  try {
11891
- if (message.getSender().getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
11857
+ if (isGroupReceipt) {
11858
+ let messageKey = this.messagesList.findIndex((m) => m.getId() == Number(message.getMessageId()));
11859
+ if (messageKey > -1) {
11860
+ this.messagesList[messageKey].setDeliveredAt(message.getDeliveredAt());
11861
+ this.ref.detectChanges();
11862
+ }
11863
+ console.log(message.getReceiptType());
11864
+ message.getReceiptType() == message.RECEIPT_TYPE.DELIVERED_TO_ALL_RECEIPT && this.markAllMessagAsDelivered(messageKey);
11865
+ message.getReceiptType() == message.RECEIPT_TYPE.READ_BY_ALL_RECEIPT && this.markAllMessagAsRead(messageKey);
11866
+ }
11867
+ else if (message.getSender().getUid() !== ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
11892
11868
  if (message.getReceiptType() == CometChatUIKitConstants.messages.DELIVERY) {
11893
11869
  //search for message
11894
11870
  let messageKey = this.messagesList.findIndex((m) => m.getId() == Number(message.getMessageId()));
@@ -13940,6 +13916,39 @@ class CometChatMessageComposerComponent {
13940
13916
  }
13941
13917
  return true;
13942
13918
  };
13919
+ /*
13920
+ * isPartOfCurrentChatForUIEvent: To check if the message belongs for this list and is not part of thread even for current list
13921
+ it only runs for UI event because it assumes logged in user is always sender
13922
+ * @param: message: CometChat.BaseMessage
13923
+ */
13924
+ this.isPartOfCurrentChatForUIEvent = (message) => {
13925
+ if (this.parentMessageId) {
13926
+ if (message.getParentMessageId() === this.parentMessageId) {
13927
+ return true;
13928
+ }
13929
+ else {
13930
+ return false;
13931
+ }
13932
+ }
13933
+ else {
13934
+ if (message.getParentMessageId()) {
13935
+ return false;
13936
+ }
13937
+ if (this.user) {
13938
+ if (message.getReceiverType() === CometChatUIKitConstants.MessageReceiverType.user &&
13939
+ (message === null || message === void 0 ? void 0 : message.getReceiverId()) === this.user.getUid()) {
13940
+ return true;
13941
+ }
13942
+ }
13943
+ else if (this.group) {
13944
+ if (message.getReceiverType() === CometChatUIKitConstants.MessageReceiverType.group &&
13945
+ (message === null || message === void 0 ? void 0 : message.getReceiverId()) === this.group.getGuid()) {
13946
+ return true;
13947
+ }
13948
+ }
13949
+ return false;
13950
+ }
13951
+ };
13943
13952
  this.handleActions = (event) => {
13944
13953
  var _a;
13945
13954
  let action = (_a = event === null || event === void 0 ? void 0 : event.detail) === null || _a === void 0 ? void 0 : _a.action;
@@ -14430,7 +14439,12 @@ class CometChatMessageComposerComponent {
14430
14439
  if ((this.parentMessageId && parentId && parentId == this.parentMessageId) || (!this.parentMessageId && !parentId)) {
14431
14440
  if ((object === null || object === void 0 ? void 0 : object.status) == MessageStatus.inprogress) {
14432
14441
  this.messageToBeEdited = object.message;
14433
- this.openEditPreview();
14442
+ if (this.isPartOfCurrentChatForUIEvent(object === null || object === void 0 ? void 0 : object.message)) {
14443
+ this.openEditPreview();
14444
+ }
14445
+ }
14446
+ if ((object === null || object === void 0 ? void 0 : object.status) === MessageStatus.success && object.message instanceof CometChat.TextMessage) {
14447
+ this.closePreview();
14434
14448
  }
14435
14449
  }
14436
14450
  });
@@ -14454,6 +14468,7 @@ class CometChatMessageComposerComponent {
14454
14468
  let messageTextWithMentionTags = this.checkForMentions(this.messageToBeEdited);
14455
14469
  this.text = "";
14456
14470
  (_b = (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.nativeElement) === null || _b === void 0 ? void 0 : _b.emptyInputField();
14471
+ this.inputRef.nativeElement.text = "";
14457
14472
  this.text = this.messageToBeEdited.getText();
14458
14473
  this.editPreviewText = messageTextWithMentionTags;
14459
14474
  this.showPreview = true;
@@ -16266,6 +16281,7 @@ class CometChatDetailsComponent {
16266
16281
  this.deleteGroupModal = false;
16267
16282
  this.subtitleText = "";
16268
16283
  this.userListenerId = "userlist_" + new Date().getTime();
16284
+ this.membersListenerId = "memberlist_" + new Date().getTime();
16269
16285
  this.checkStatusType = () => {
16270
16286
  var _a, _b;
16271
16287
  if (this.user) {
@@ -16296,6 +16312,13 @@ class CometChatDetailsComponent {
16296
16312
  this.openBannedMembersPage = !this.openBannedMembersPage;
16297
16313
  this.ref.detectChanges();
16298
16314
  };
16315
+ this.onBackForAddMembers = () => {
16316
+ var _a, _b;
16317
+ this.addMembers();
16318
+ if ((_a = this.addMembersConfiguration) === null || _a === void 0 ? void 0 : _a.onBack) {
16319
+ (_b = this.addMembersConfiguration) === null || _b === void 0 ? void 0 : _b.onBack();
16320
+ }
16321
+ };
16299
16322
  this.openTransferOwnership = () => {
16300
16323
  this.openTransferOwnershipModal = !this.openTransferOwnershipModal;
16301
16324
  this.confirmLeaveGroupModal = false;
@@ -16401,6 +16424,7 @@ class CometChatDetailsComponent {
16401
16424
  }
16402
16425
  removeListener() {
16403
16426
  CometChat.removeUserListener(this.userListenerId);
16427
+ CometChat.removeGroupListener(this.membersListenerId);
16404
16428
  }
16405
16429
  ngOnDestroy() {
16406
16430
  this.removeListener();
@@ -16419,7 +16443,6 @@ class CometChatDetailsComponent {
16419
16443
  this.ccGroupMemberAdded = CometChatGroupEvents.ccGroupMemberAdded.subscribe((item) => {
16420
16444
  this.group = item === null || item === void 0 ? void 0 : item.userAddedIn;
16421
16445
  this.group = item === null || item === void 0 ? void 0 : item.userAddedIn;
16422
- this.openAddMembersPage = false;
16423
16446
  this.updateSubtitle();
16424
16447
  this.ref.detectChanges();
16425
16448
  });
@@ -16517,6 +16540,16 @@ class CometChatDetailsComponent {
16517
16540
  },
16518
16541
  }));
16519
16542
  }
16543
+ CometChat.addGroupListener(this.membersListenerId, new CometChat.GroupListener({
16544
+ onGroupMemberScopeChanged: (message, changedUser, newScope, oldScope, changedGroup) => {
16545
+ var _a;
16546
+ if (changedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
16547
+ changedGroup.setScope(newScope);
16548
+ this.group = changedGroup;
16549
+ this.getTemplate();
16550
+ }
16551
+ },
16552
+ }));
16520
16553
  }
16521
16554
  catch (error) {
16522
16555
  if (this.onError) {
@@ -16812,10 +16845,10 @@ class CometChatDetailsComponent {
16812
16845
  }
16813
16846
  }
16814
16847
  CometChatDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatDetailsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
16815
- CometChatDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatDetailsComponent, selector: "cometchat-details", inputs: { group: "group", user: "user", title: "title", closeButtonIconURL: "closeButtonIconURL", hideProfile: "hideProfile", subtitleView: "subtitleView", customProfileView: "customProfileView", data: "data", disableUsersPresence: "disableUsersPresence", privateGroupIcon: "privateGroupIcon", protectedGroupIcon: "protectedGroupIcon", passwordGroupIcon: "passwordGroupIcon", onError: "onError", onClose: "onClose", leaveGroupConfirmButtonText: "leaveGroupConfirmButtonText", leaveGroupCancelButtonText: "leaveGroupCancelButtonText", leaveGroupDialogMessage: "leaveGroupDialogMessage", leaveGroupDialogStyle: "leaveGroupDialogStyle", deleteGroupConfirmButtonText: "deleteGroupConfirmButtonText", deleteGroupDialogMessage: "deleteGroupDialogMessage", deleteGroupCancelButtonText: "deleteGroupCancelButtonText", deleteGroupDialogStyle: "deleteGroupDialogStyle", transferOwnershipConfirmButtonText: "transferOwnershipConfirmButtonText", transferOwnershipDialogMessage: "transferOwnershipDialogMessage", transferOwnershipCancelButtonText: "transferOwnershipCancelButtonText", transferOwnershipDialogStyle: "transferOwnershipDialogStyle", addMembersConfiguration: "addMembersConfiguration", bannedMembersConfiguration: "bannedMembersConfiguration", groupMembersConfiguration: "groupMembersConfiguration", transferOwnershipConfiguration: "transferOwnershipConfiguration", statusIndicatorStyle: "statusIndicatorStyle", backdropStyle: "backdropStyle", avatarStyle: "avatarStyle", detailsStyle: "detailsStyle", listItemStyle: "listItemStyle" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-details__wrapper\" *ngIf=\"user || group\"\n [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-details__header\">\n <cometchat-label [text]=\"title\"\n [labelStyle]=\"getTitleStyle()\"></cometchat-label>\n <cometchat-button [iconURL]=\"closeButtonIconURL\"\n class=\"cc-details__close-button\" [buttonStyle]=\"closeButtonStyle\"\n (cc-button-clicked)=\"onCloseDetails()\"></cometchat-button>\n </div>\n <div class=\"cc-details\" [ngStyle]=\"marginStyle()\">\n <div class=\"cc-details__profile\" *ngIf=\"!hideProfile\">\n <cometchat-list-item *ngIf=\"!customProfileView;else listitem\"\n [avatarName]=\"user?.getName() ?? this.group?.getName()\"\n [avatarURL]=\"this.user?.getAvatar() ?? this.group?.getIcon()\"\n [listItemStyle]=\"listItemStyle\"\n [statusIndicatorColor]=\"checkStatusType()\"\n [statusIndicatorIcon]=\"checkGroupType()\"\n [title]=\"this.user?.getName() ?? this.group?.getName()\"\n [hideSeparator]=\"false\" [statusIndicatorStyle]=\"statusIndicatorStyle\"\n [avatarStyle]=\"avatarStyle\">\n <div slot=\"subtitleView\">\n <div *ngIf=\"!subtitleView; else subtitle\">\n <cometchat-label [text]=\"subtitleText\"\n [labelStyle]=\"subtitleStyle()\">\n </cometchat-label>\n </div>\n <ng-template #subtitle>\n <ng-container\n *ngTemplateOutlet=\"subtitleView;context:{ $implicit: user ?? group }\">\n </ng-container>\n </ng-template>\n </div>\n </cometchat-list-item>\n </div>\n <div class=\"cc-details__section-list\"\n *ngIf=\"defaultTemplate && defaultTemplate.length > 0\">\n <div class=\"cc-details__section\" *ngFor=\"let item of defaultTemplate\">\n <div class=\"cc-details__section-separator\" *ngIf=\"item.title\">\n <cometchat-label [text]=\"item.title\"\n [labelStyle]=\"getSectionHeaderStyle(item)\"></cometchat-label>\n </div>\n <div class=\"cc-details__options-wrapper\"\n *ngIf=\"getTemplateOptions(item)\">\n <div class=\"cc-details__options\"\n *ngFor=\"let option of getTemplateOptions(item)\">\n <div class=\"cc-details__option\"\n *ngIf=\"!getCustomOptionView(option);else customView\"\n (click)=\"onOptionClick(option)\">\n <div class=\"cc-details__option-title\">\n <cometchat-button [text]=\"option.title\"\n [buttonStyle]=\"getButtonStyle(option)\"></cometchat-button>\n <div class=\"cc-details__option-tail\" *ngIf=\"option?.tail\">\n <ng-container *ngTemplateOutlet=\"option?.tail\"></ng-container>\n </div>\n </div>\n <cometchat-divider\n [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n </div>\n <ng-template #customView>\n <ng-container *ngTemplateOutlet=\"getCustomOptionView(option)\">\n </ng-container>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<ng-template #listitem>\n <ng-container *ngTemplateOutlet=\"customProfileView\">\n </ng-container>\n</ng-template>\n<div class=\"cc-details__view\" *ngIf=\"openAddMembersPage\">\n <cometchat-add-members\n [titleAlignment]=\"addMembersConfiguration?.titleAlignment!\"\n [listItemStyle]=\"addMembersConfiguration?.listItemStyle!\"\n [addMembersStyle]=\"addMembersConfiguration?.addMembersStyle!\"\n [avatarStyle]=\"addMembersConfiguration?.avatarStyle!\"\n [statusIndicatorStyle]=\"addMembersConfiguration?.statusIndicatorStyle!\"\n [loadingStateView]=\"addMembersConfiguration?.loadingStateView!\"\n [loadingIconURL]=\"addMembersConfiguration?.loadingIconURL!\"\n [errorStateView]=\"addMembersConfiguration?.errorStateView\"\n [emptyStateView]=\"addMembersConfiguration?.emptyStateView\"\n [onSelect]=\"addMembersConfiguration?.onSelect!\"\n [onError]=\"addMembersConfiguration?.onError!\"\n [hideError]=\"addMembersConfiguration?.hideError!\"\n [hideSearch]=\"addMembersConfiguration?.hideSearch!\"\n [searchIconURL]=\"addMembersConfiguration?.searchIconURL!\"\n [selectionMode]=\"addMembersConfiguration?.selectionMode!\"\n [hideSeparator]=\"addMembersConfiguration?.hideSeparator!\"\n [showBackButton]=\"addMembersConfiguration?.showBackButton!\"\n [showSectionHeader]=\"addMembersConfiguration?.showSectionHeader!\"\n [onAddMembersButtonClick]=\"addMembersConfiguration?.onAddMembersButtonClick!\"\n [usersConfiguration]=\"addMembersConfiguration?.usersConfiguration\"\n [backButtonIconURL]=\"addMembersConfiguration?.backButtonIconURL!\"\n [sectionHeaderField]=\"addMembersConfiguration?.sectionHeaderField!\"\n [closeButtonIconURL]=\"addMembersConfiguration?.closeButtonIconURL!\"\n [options]=\"addMembersConfiguration?.options!\"\n [menu]=\"addMembersConfiguration?.menu\"\n [disableUsersPresence]=\"addMembersConfiguration?.disableUsersPresence!\"\n [subtitleView]=\"addMembersConfiguration?.subtitleView\" [group]=\"group\"\n [selectionMode]=\"selectionmodeEnum\"\n [onClose]=\"addMembersConfiguration?.onClose || onCloseDetails\"\n [onBack]=\"addMembersConfiguration?.onBack || addMembers\"\n [usersRequestBuilder]=\"addMembersConfiguration?.usersRequestBuilder!\"\n [searchRequestBuilder]=\"addMembersConfiguration?.usersRequestBuilder!\"\n [listItemView]=\"addMembersConfiguration?.listItemView\">\n </cometchat-add-members>\n</div>\n<div class=\"cc-details__view\" *ngIf=\"openBannedMembersPage\">\n <cometchat-banned-members\n [listItemView]=\"bannedMembersConfiguration?.listItemView\"\n [bannedMembersRequestBuilder]=\"bannedMembersConfiguration?.bannedMembersRequestBuilder!\"\n [searchRequestBuilder]=\"bannedMembersConfiguration?.searchRequestBuilder!\"\n [titleAlignment]=\"bannedMembersConfiguration.titleAlignment\"\n [listItemStyle]=\"bannedMembersConfiguration.listItemStyle\"\n [bannedMembersStyle]=\"bannedMembersConfiguration.bannedMembersStyle\"\n [avatarStyle]=\"bannedMembersConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"bannedMembersConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"bannedMembersConfiguration.loadingStateView\"\n [loadingIconURL]=\"bannedMembersConfiguration.loadingIconURL\"\n [errorStateView]=\"bannedMembersConfiguration.errorStateView\"\n [emptyStateView]=\"bannedMembersConfiguration.emptyStateView\"\n [onSelect]=\"bannedMembersConfiguration.onSelect\"\n [onError]=\"bannedMembersConfiguration.onError\"\n [hideError]=\"bannedMembersConfiguration.hideError\"\n [hideSearch]=\"bannedMembersConfiguration.hideSearch\"\n [searchIconURL]=\"bannedMembersConfiguration.searchIconURL\"\n [selectionMode]=\"bannedMembersConfiguration.selectionMode\"\n [hideSeparator]=\"bannedMembersConfiguration.hideSeparator\"\n [showBackButton]=\"bannedMembersConfiguration.showBackButton\"\n [backButtonIconURL]=\"bannedMembersConfiguration.backButtonIconURL\"\n [closeButtonIconURL]=\"bannedMembersConfiguration.closeButtonIconURL\"\n [options]=\"bannedMembersConfiguration.options\"\n [menu]=\"bannedMembersConfiguration.menu\"\n [disableUsersPresence]=\"bannedMembersConfiguration.disableUsersPresence\"\n [subtitleView]=\"bannedMembersConfiguration.subtitleView\" [group]=\"group\"\n [onClose]=\"onCloseDetails\"\n [onBack]=\"bannedMembersConfiguration.onBack || bannedMembers\">\n </cometchat-banned-members>\n</div>\n<div class=\"cc-details__view\" *ngIf=\"openViewMembersPage\">\n <cometchat-group-members\n [groupMembersRequestBuilder]=\"groupMembersConfiguration?.groupMembersRequestBuilder!\"\n [searchRequestBuilder]=\"groupMembersConfiguration?.searchRequestBuilder!\"\n [titleAlignment]=\"groupMembersConfiguration.titleAlignment\"\n [listItemStyle]=\"groupMembersConfiguration.listItemStyle\"\n [groupMembersStyle]=\"groupMembersConfiguration.groupMembersStyle\"\n [avatarStyle]=\"groupMembersConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"groupMembersConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"groupMembersConfiguration.loadingStateView\"\n [loadingIconURL]=\"groupMembersConfiguration.loadingIconURL\"\n [errorStateView]=\"groupMembersConfiguration.errorStateView\"\n [emptyStateView]=\"groupMembersConfiguration.emptyStateView\"\n [onSelect]=\"groupMembersConfiguration.onSelect\"\n [onError]=\"groupMembersConfiguration.onError\"\n [hideError]=\"groupMembersConfiguration.hideError\"\n [hideSearch]=\"groupMembersConfiguration.hideSearch\"\n [searchIconURL]=\"groupMembersConfiguration.searchIconURL\"\n [selectionMode]=\"groupMembersConfiguration.selectionMode\"\n [backdropStyle]=\"groupMembersConfiguration.backdropStyle\"\n [hideSeparator]=\"groupMembersConfiguration.hideSeparator\"\n [showBackButton]=\"groupMembersConfiguration.showBackButton\"\n [backButtonIconURL]=\"groupMembersConfiguration.backButtonIconURL\"\n [closeButtonIconURL]=\"groupMembersConfiguration.closeButtonIconURL\"\n [options]=\"groupMembersConfiguration.options\"\n [menu]=\"groupMembersConfiguration.menu\"\n [disableUsersPresence]=\"groupMembersConfiguration.disableUsersPresence\"\n [subtitleView]=\"groupMembersConfiguration.subtitleView\"\n [groupScopeStyle]=\"groupMembersConfiguration.groupScopeStyle\"\n [group]=\"group\"\n [onClose]=\" groupMembersConfiguration.onClose || onCloseDetails\"\n [onBack]=\"groupMembersConfiguration.onBack || viewMembers\">\n </cometchat-group-members>\n</div>\n\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\"\n *ngIf=\"confirmLeaveGroupModal\">\n <cometchat-confirm-dialog [title]=\"''\" [messageText]=\"leaveGroupDialogMessage\"\n [cancelButtonText]=\"leaveGroupCancelButtonText\"\n [confirmButtonText]=\"leaveGroupConfirmButtonText\"\n (cc-confirm-clicked)=\"onLeaveClick()\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"leaveGroupDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"showTransferDialog\">\n <cometchat-confirm-dialog [title]=\"''\"\n [messageText]=\"transferOwnershipDialogMessage\"\n [cancelButtonText]=\"transferOwnershipCancelButtonText\"\n [confirmButtonText]=\"transferOwnershipConfirmButtonText\"\n (cc-confirm-clicked)=\"onTransferClick()\"\n (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"transferOwnershipDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\"\n *ngIf=\"openTransferOwnershipModal\">\n <cometchat-transfer-ownership\n [groupMembersRequestBuilder]=\"transferOwnershipConfiguration?.groupMembersRequestBuilder\"\n [transferOwnershipStyle]=\"transferOwnershipConfiguration.transferOwnershipStyle\"\n [onTransferOwnership]=\"transferOwnershipConfiguration.onTransferOwnership\"\n [titleAlignment]=\"transferOwnershipConfiguration.titleAlignment\"\n [listItemStyle]=\"transferOwnershipConfiguration.listItemStyle\"\n [avatarStyle]=\"transferOwnershipConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"transferOwnershipConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"transferOwnershipConfiguration.loadingStateView\"\n [loadingIconURL]=\"transferOwnershipConfiguration.loadingIconURL\"\n [errorStateView]=\"transferOwnershipConfiguration.errorStateView\"\n [emptyStateView]=\"transferOwnershipConfiguration.emptyStateView\"\n [onError]=\"transferOwnershipConfiguration.onError\"\n [hideSearch]=\"transferOwnershipConfiguration.hideSearch\"\n [searchIconURL]=\"transferOwnershipConfiguration.searchIconURL\"\n [hideSeparator]=\"transferOwnershipConfiguration.hideSeparator\"\n [closeButtonIconURL]=\"transferOwnershipConfiguration.closeButtonIconURL\"\n [options]=\"transferOwnershipConfiguration.options\"\n [disableUsersPresence]=\"transferOwnershipConfiguration.disableUsersPresence\"\n [subtitleView]=\"transferOwnershipConfiguration.subtitleView\" [group]=\"group\"\n [onClose]=\"transferOwnershipConfiguration.onClose || openTransferOwnership\">\n </cometchat-transfer-ownership>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"deleteGroupModal\">\n <cometchat-confirm-dialog [title]=\"''\"\n [messageText]=\"deleteGroupDialogMessage\"\n [cancelButtonText]=\"deleteGroupCancelButtonText\"\n [confirmButtonText]=\"deleteGroupConfirmButtonText\"\n (cc-confirm-clicked)=\"deleteGroup()\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"deleteGroupDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-details__wrapper{padding:8px;border-radius:5px;height:100%;overflow:hidden}.cc-details__profile{margin-bottom:50px;height:8%}.cc-details__section-list{height:84%;width:100%;overflow-y:auto;overflow-x:hidden}.cc-details__header{display:flex;justify-content:center;align-items:center;margin-bottom:30px}.cc-details__close-button{position:absolute;right:20px}.cc-details__section{margin-bottom:32px}.cc-details__section-separator{margin-bottom:16px;padding-left:6px;height:5%}.cc-details__options-wrapper{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}.cc-details__option{display:flex;flex-direction:column;justify-content:space-evenly;min-height:50px}.cc-details__option-title{padding-bottom:12px;display:flex;align-items:center;justify-content:space-between}.cc-details__view{position:absolute;top:0;left:0;height:100%;width:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;max-width:100%;z-index:1}.cc-details__section-list::-webkit-scrollbar{background:transparent;width:8px}.cc-details__section-list::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-details__leavedialog,.cc-details__transferownership{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:-moz-fit-content;height:fit-content;width:100%;z-index:2}\n"], components: [{ type: CometChatAddMembersComponent, selector: "cometchat-add-members", inputs: ["usersRequestBuilder", "searchRequestBuilder", "subtitleView", "listItemView", "disableUsersPresence", "menu", "options", "backButtonIconURL", "closeButtonIconURL", "showBackButton", "hideSeparator", "selectionMode", "searchPlaceholder", "hideError", "searchIconURL", "hideSearch", "title", "onError", "onBack", "onClose", "onSelect", "buttonText", "group", "emptyStateView", "errorStateView", "loadingIconURL", "listItemStyle", "showSectionHeader", "sectionHeaderField", "loadingStateView", "emptyStateText", "errorStateText", "onAddMembersButtonClick", "titleAlignment", "addMembersStyle", "StatusIndicatorStyle", "statusIndicatorStyle", "avatarStyle"] }, { type: CometChatBannedMembersComponent, selector: "cometchat-banned-members", inputs: ["bannedMembersRequestBuilder", "searchRequestBuilder", "subtitleView", "listItemView", "disableUsersPresence", "menu", "options", "backButtonIconURL", "closeButtonIconURL", "showBackButton", "hideSeparator", "selectionMode", "searchPlaceholder", "searchIconURL", "hideSearch", "title", "onError", "onSelect", "onBack", "onClose", "group", "emptyStateView", "errorStateView", "loadingIconURL", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "unbanIconURL", "statusIndicatorStyle", "avatarStyle", "bannedMembersStyle", "listItemStyle"] }, { type: CometChatGroupMembersComponent, selector: "cometchat-group-members", inputs: ["groupMemberRequestBuilder", "searchRequestBuilder", "subtitleView", "listItemView", "tailView", "disableUsersPresence", "menu", "options", "backButtonIconURL", "closeButtonIconURL", "showBackButton", "hideSeparator", "selectionMode", "searchPlaceholder", "searchIconURL", "hideSearch", "title", "onError", "backdropStyle", "onBack", "onClose", "onSelect", "group", "emptyStateView", "errorStateView", "loadingIconURL", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "dropdownIconURL", "statusIndicatorStyle", "avatarStyle", "groupMembersStyle", "groupScopeStyle", "listItemStyle", "onItemClick", "onEmpty", "userPresencePlacement", "disableLoadingState", "searchKeyword"] }, { type: CometChatTransferOwnershipComponent, selector: "cometchat-transfer-ownership", inputs: ["groupMemberRequestBuilder", "searchRequestBuilder", "subtitleView", "listItemView", "disableUsersPresence", "options", "closeButtonIconURL", "hideSeparator", "searchPlaceholder", "searchIconURL", "hideSearch", "title", "onError", "onClose", "onTransferOwnership", "group", "emptyStateView", "errorStateView", "loadingIconURL", "loadingStateView", "emptyStateText", "errorStateText", "statusIndicatorStyle", "transferOwnershipStyle", "transferButtonText", "cancelButtonText", "avatarStyle", "groupMembersStyle", "listItemStyle", "titleAlignment"] }], 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 });
16848
+ CometChatDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatDetailsComponent, selector: "cometchat-details", inputs: { group: "group", user: "user", title: "title", closeButtonIconURL: "closeButtonIconURL", hideProfile: "hideProfile", subtitleView: "subtitleView", customProfileView: "customProfileView", data: "data", disableUsersPresence: "disableUsersPresence", privateGroupIcon: "privateGroupIcon", protectedGroupIcon: "protectedGroupIcon", passwordGroupIcon: "passwordGroupIcon", onError: "onError", onClose: "onClose", leaveGroupConfirmButtonText: "leaveGroupConfirmButtonText", leaveGroupCancelButtonText: "leaveGroupCancelButtonText", leaveGroupDialogMessage: "leaveGroupDialogMessage", leaveGroupDialogStyle: "leaveGroupDialogStyle", deleteGroupConfirmButtonText: "deleteGroupConfirmButtonText", deleteGroupDialogMessage: "deleteGroupDialogMessage", deleteGroupCancelButtonText: "deleteGroupCancelButtonText", deleteGroupDialogStyle: "deleteGroupDialogStyle", transferOwnershipConfirmButtonText: "transferOwnershipConfirmButtonText", transferOwnershipDialogMessage: "transferOwnershipDialogMessage", transferOwnershipCancelButtonText: "transferOwnershipCancelButtonText", transferOwnershipDialogStyle: "transferOwnershipDialogStyle", addMembersConfiguration: "addMembersConfiguration", bannedMembersConfiguration: "bannedMembersConfiguration", groupMembersConfiguration: "groupMembersConfiguration", transferOwnershipConfiguration: "transferOwnershipConfiguration", statusIndicatorStyle: "statusIndicatorStyle", backdropStyle: "backdropStyle", avatarStyle: "avatarStyle", detailsStyle: "detailsStyle", listItemStyle: "listItemStyle" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-details__wrapper\" *ngIf=\"user || group\"\n [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-details__header\">\n <cometchat-label [text]=\"title\"\n [labelStyle]=\"getTitleStyle()\"></cometchat-label>\n <cometchat-button [iconURL]=\"closeButtonIconURL\"\n class=\"cc-details__close-button\" [buttonStyle]=\"closeButtonStyle\"\n (cc-button-clicked)=\"onCloseDetails()\"></cometchat-button>\n </div>\n <div class=\"cc-details\" [ngStyle]=\"marginStyle()\">\n <div class=\"cc-details__profile\" *ngIf=\"!hideProfile\">\n <cometchat-list-item *ngIf=\"!customProfileView;else listitem\"\n [avatarName]=\"user?.getName() ?? this.group?.getName()\"\n [avatarURL]=\"this.user?.getAvatar() ?? this.group?.getIcon()\"\n [listItemStyle]=\"listItemStyle\"\n [statusIndicatorColor]=\"checkStatusType()\"\n [statusIndicatorIcon]=\"checkGroupType()\"\n [title]=\"this.user?.getName() ?? this.group?.getName()\"\n [hideSeparator]=\"false\" [statusIndicatorStyle]=\"statusIndicatorStyle\"\n [avatarStyle]=\"avatarStyle\">\n <div slot=\"subtitleView\">\n <div *ngIf=\"!subtitleView; else subtitle\">\n <cometchat-label [text]=\"subtitleText\"\n [labelStyle]=\"subtitleStyle()\">\n </cometchat-label>\n </div>\n <ng-template #subtitle>\n <ng-container\n *ngTemplateOutlet=\"subtitleView;context:{ $implicit: user ?? group }\">\n </ng-container>\n </ng-template>\n </div>\n </cometchat-list-item>\n </div>\n <div class=\"cc-details__section-list\"\n *ngIf=\"defaultTemplate && defaultTemplate.length > 0\">\n <div class=\"cc-details__section\" *ngFor=\"let item of defaultTemplate\">\n <div class=\"cc-details__section-separator\" *ngIf=\"item.title\">\n <cometchat-label [text]=\"item.title\"\n [labelStyle]=\"getSectionHeaderStyle(item)\"></cometchat-label>\n </div>\n <div class=\"cc-details__options-wrapper\"\n *ngIf=\"getTemplateOptions(item)\">\n <div class=\"cc-details__options\"\n *ngFor=\"let option of getTemplateOptions(item)\">\n <div class=\"cc-details__option\"\n *ngIf=\"!getCustomOptionView(option);else customView\"\n (click)=\"onOptionClick(option)\">\n <div class=\"cc-details__option-title\">\n <cometchat-button [text]=\"option.title\"\n [buttonStyle]=\"getButtonStyle(option)\"></cometchat-button>\n <div class=\"cc-details__option-tail\" *ngIf=\"option?.tail\">\n <ng-container *ngTemplateOutlet=\"option?.tail\"></ng-container>\n </div>\n </div>\n <cometchat-divider\n [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n </div>\n <ng-template #customView>\n <ng-container *ngTemplateOutlet=\"getCustomOptionView(option)\">\n </ng-container>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<ng-template #listitem>\n <ng-container *ngTemplateOutlet=\"customProfileView\">\n </ng-container>\n</ng-template>\n<div class=\"cc-details__view\" *ngIf=\"openAddMembersPage\">\n <cometchat-add-members\n [titleAlignment]=\"addMembersConfiguration?.titleAlignment!\"\n [listItemStyle]=\"addMembersConfiguration?.listItemStyle!\"\n [addMembersStyle]=\"addMembersConfiguration?.addMembersStyle!\"\n [avatarStyle]=\"addMembersConfiguration?.avatarStyle!\"\n [statusIndicatorStyle]=\"addMembersConfiguration?.statusIndicatorStyle!\"\n [loadingStateView]=\"addMembersConfiguration?.loadingStateView!\"\n [loadingIconURL]=\"addMembersConfiguration?.loadingIconURL!\"\n [errorStateView]=\"addMembersConfiguration?.errorStateView\"\n [emptyStateView]=\"addMembersConfiguration?.emptyStateView\"\n [onSelect]=\"addMembersConfiguration?.onSelect!\"\n [onError]=\"addMembersConfiguration?.onError!\"\n [hideError]=\"addMembersConfiguration?.hideError!\"\n [hideSearch]=\"addMembersConfiguration?.hideSearch!\"\n [searchIconURL]=\"addMembersConfiguration?.searchIconURL!\"\n [selectionMode]=\"addMembersConfiguration?.selectionMode!\"\n [hideSeparator]=\"addMembersConfiguration?.hideSeparator!\"\n [showBackButton]=\"addMembersConfiguration?.showBackButton!\"\n [showSectionHeader]=\"addMembersConfiguration?.showSectionHeader!\"\n [onAddMembersButtonClick]=\"addMembersConfiguration?.onAddMembersButtonClick!\"\n [usersConfiguration]=\"addMembersConfiguration?.usersConfiguration\"\n [backButtonIconURL]=\"addMembersConfiguration?.backButtonIconURL!\"\n [sectionHeaderField]=\"addMembersConfiguration?.sectionHeaderField!\"\n [closeButtonIconURL]=\"addMembersConfiguration?.closeButtonIconURL!\"\n [options]=\"addMembersConfiguration?.options!\"\n [menu]=\"addMembersConfiguration?.menu\"\n [disableUsersPresence]=\"addMembersConfiguration?.disableUsersPresence!\"\n [subtitleView]=\"addMembersConfiguration?.subtitleView\" [group]=\"group\"\n [selectionMode]=\"selectionmodeEnum\"\n [onClose]=\"addMembersConfiguration?.onClose || onCloseDetails\"\n [onBack]=\"onBackForAddMembers\"\n [usersRequestBuilder]=\"addMembersConfiguration?.usersRequestBuilder!\"\n [searchRequestBuilder]=\"addMembersConfiguration?.usersRequestBuilder!\"\n [listItemView]=\"addMembersConfiguration?.listItemView\">\n </cometchat-add-members>\n</div>\n<div class=\"cc-details__view\" *ngIf=\"openBannedMembersPage\">\n <cometchat-banned-members\n [listItemView]=\"bannedMembersConfiguration?.listItemView\"\n [bannedMembersRequestBuilder]=\"bannedMembersConfiguration?.bannedMembersRequestBuilder!\"\n [searchRequestBuilder]=\"bannedMembersConfiguration?.searchRequestBuilder!\"\n [titleAlignment]=\"bannedMembersConfiguration.titleAlignment\"\n [listItemStyle]=\"bannedMembersConfiguration.listItemStyle\"\n [bannedMembersStyle]=\"bannedMembersConfiguration.bannedMembersStyle\"\n [avatarStyle]=\"bannedMembersConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"bannedMembersConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"bannedMembersConfiguration.loadingStateView\"\n [loadingIconURL]=\"bannedMembersConfiguration.loadingIconURL\"\n [errorStateView]=\"bannedMembersConfiguration.errorStateView\"\n [emptyStateView]=\"bannedMembersConfiguration.emptyStateView\"\n [onSelect]=\"bannedMembersConfiguration.onSelect\"\n [onError]=\"bannedMembersConfiguration.onError\"\n [hideError]=\"bannedMembersConfiguration.hideError\"\n [hideSearch]=\"bannedMembersConfiguration.hideSearch\"\n [searchIconURL]=\"bannedMembersConfiguration.searchIconURL\"\n [selectionMode]=\"bannedMembersConfiguration.selectionMode\"\n [hideSeparator]=\"bannedMembersConfiguration.hideSeparator\"\n [showBackButton]=\"bannedMembersConfiguration.showBackButton\"\n [backButtonIconURL]=\"bannedMembersConfiguration.backButtonIconURL\"\n [closeButtonIconURL]=\"bannedMembersConfiguration.closeButtonIconURL\"\n [options]=\"bannedMembersConfiguration.options\"\n [menu]=\"bannedMembersConfiguration.menu\"\n [disableUsersPresence]=\"bannedMembersConfiguration.disableUsersPresence\"\n [subtitleView]=\"bannedMembersConfiguration.subtitleView\" [group]=\"group\"\n [onClose]=\"onCloseDetails\"\n [onBack]=\"bannedMembersConfiguration.onBack || bannedMembers\">\n </cometchat-banned-members>\n</div>\n<div class=\"cc-details__view\" *ngIf=\"openViewMembersPage\">\n <cometchat-group-members\n [groupMembersRequestBuilder]=\"groupMembersConfiguration?.groupMembersRequestBuilder!\"\n [searchRequestBuilder]=\"groupMembersConfiguration?.searchRequestBuilder!\"\n [titleAlignment]=\"groupMembersConfiguration.titleAlignment\"\n [listItemStyle]=\"groupMembersConfiguration.listItemStyle\"\n [groupMembersStyle]=\"groupMembersConfiguration.groupMembersStyle\"\n [avatarStyle]=\"groupMembersConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"groupMembersConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"groupMembersConfiguration.loadingStateView\"\n [loadingIconURL]=\"groupMembersConfiguration.loadingIconURL\"\n [errorStateView]=\"groupMembersConfiguration.errorStateView\"\n [emptyStateView]=\"groupMembersConfiguration.emptyStateView\"\n [onSelect]=\"groupMembersConfiguration.onSelect\"\n [onError]=\"groupMembersConfiguration.onError\"\n [hideError]=\"groupMembersConfiguration.hideError\"\n [hideSearch]=\"groupMembersConfiguration.hideSearch\"\n [searchIconURL]=\"groupMembersConfiguration.searchIconURL\"\n [selectionMode]=\"groupMembersConfiguration.selectionMode\"\n [backdropStyle]=\"groupMembersConfiguration.backdropStyle\"\n [hideSeparator]=\"groupMembersConfiguration.hideSeparator\"\n [showBackButton]=\"groupMembersConfiguration.showBackButton\"\n [backButtonIconURL]=\"groupMembersConfiguration.backButtonIconURL\"\n [closeButtonIconURL]=\"groupMembersConfiguration.closeButtonIconURL\"\n [options]=\"groupMembersConfiguration.options\"\n [menu]=\"groupMembersConfiguration.menu\"\n [disableUsersPresence]=\"groupMembersConfiguration.disableUsersPresence\"\n [subtitleView]=\"groupMembersConfiguration.subtitleView\"\n [groupScopeStyle]=\"groupMembersConfiguration.groupScopeStyle\"\n [group]=\"group\"\n [onClose]=\" groupMembersConfiguration.onClose || onCloseDetails\"\n [onBack]=\"groupMembersConfiguration.onBack || viewMembers\">\n </cometchat-group-members>\n</div>\n\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\"\n *ngIf=\"confirmLeaveGroupModal\">\n <cometchat-confirm-dialog [title]=\"''\" [messageText]=\"leaveGroupDialogMessage\"\n [cancelButtonText]=\"leaveGroupCancelButtonText\"\n [confirmButtonText]=\"leaveGroupConfirmButtonText\"\n (cc-confirm-clicked)=\"onLeaveClick()\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"leaveGroupDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"showTransferDialog\">\n <cometchat-confirm-dialog [title]=\"''\"\n [messageText]=\"transferOwnershipDialogMessage\"\n [cancelButtonText]=\"transferOwnershipCancelButtonText\"\n [confirmButtonText]=\"transferOwnershipConfirmButtonText\"\n (cc-confirm-clicked)=\"onTransferClick()\"\n (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"transferOwnershipDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\"\n *ngIf=\"openTransferOwnershipModal\">\n <cometchat-transfer-ownership\n [groupMembersRequestBuilder]=\"transferOwnershipConfiguration?.groupMembersRequestBuilder\"\n [transferOwnershipStyle]=\"transferOwnershipConfiguration.transferOwnershipStyle\"\n [onTransferOwnership]=\"transferOwnershipConfiguration.onTransferOwnership\"\n [titleAlignment]=\"transferOwnershipConfiguration.titleAlignment\"\n [listItemStyle]=\"transferOwnershipConfiguration.listItemStyle\"\n [avatarStyle]=\"transferOwnershipConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"transferOwnershipConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"transferOwnershipConfiguration.loadingStateView\"\n [loadingIconURL]=\"transferOwnershipConfiguration.loadingIconURL\"\n [errorStateView]=\"transferOwnershipConfiguration.errorStateView\"\n [emptyStateView]=\"transferOwnershipConfiguration.emptyStateView\"\n [onError]=\"transferOwnershipConfiguration.onError\"\n [hideSearch]=\"transferOwnershipConfiguration.hideSearch\"\n [searchIconURL]=\"transferOwnershipConfiguration.searchIconURL\"\n [hideSeparator]=\"transferOwnershipConfiguration.hideSeparator\"\n [closeButtonIconURL]=\"transferOwnershipConfiguration.closeButtonIconURL\"\n [options]=\"transferOwnershipConfiguration.options\"\n [disableUsersPresence]=\"transferOwnershipConfiguration.disableUsersPresence\"\n [subtitleView]=\"transferOwnershipConfiguration.subtitleView\" [group]=\"group\"\n [onClose]=\"transferOwnershipConfiguration.onClose || openTransferOwnership\">\n </cometchat-transfer-ownership>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"deleteGroupModal\">\n <cometchat-confirm-dialog [title]=\"''\"\n [messageText]=\"deleteGroupDialogMessage\"\n [cancelButtonText]=\"deleteGroupCancelButtonText\"\n [confirmButtonText]=\"deleteGroupConfirmButtonText\"\n (cc-confirm-clicked)=\"deleteGroup()\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"deleteGroupDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-details__wrapper{padding:8px;border-radius:5px;height:100%;overflow:hidden}.cc-details__profile{margin-bottom:50px;height:8%}.cc-details__section-list{height:84%;width:100%;overflow-y:auto;overflow-x:hidden}.cc-details__header{display:flex;justify-content:center;align-items:center;margin-bottom:30px}.cc-details__close-button{position:absolute;right:20px}.cc-details__section{margin-bottom:32px}.cc-details__section-separator{margin-bottom:16px;padding-left:6px;height:5%}.cc-details__options-wrapper{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}.cc-details__option{display:flex;flex-direction:column;justify-content:space-evenly;min-height:50px}.cc-details__option-title{padding-bottom:12px;display:flex;align-items:center;justify-content:space-between}.cc-details__view{position:absolute;top:0;left:0;height:100%;width:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;max-width:100%;z-index:1}.cc-details__section-list::-webkit-scrollbar{background:transparent;width:8px}.cc-details__section-list::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-details__leavedialog,.cc-details__transferownership{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:-moz-fit-content;height:fit-content;width:100%;z-index:2}\n"], components: [{ type: CometChatAddMembersComponent, selector: "cometchat-add-members", inputs: ["usersRequestBuilder", "searchRequestBuilder", "subtitleView", "listItemView", "disableUsersPresence", "menu", "options", "backButtonIconURL", "closeButtonIconURL", "showBackButton", "hideSeparator", "selectionMode", "searchPlaceholder", "hideError", "searchIconURL", "hideSearch", "title", "onError", "onBack", "onClose", "onSelect", "buttonText", "group", "emptyStateView", "errorStateView", "loadingIconURL", "listItemStyle", "showSectionHeader", "sectionHeaderField", "loadingStateView", "emptyStateText", "errorStateText", "onAddMembersButtonClick", "titleAlignment", "addMembersStyle", "StatusIndicatorStyle", "statusIndicatorStyle", "avatarStyle"] }, { type: CometChatBannedMembersComponent, selector: "cometchat-banned-members", inputs: ["bannedMembersRequestBuilder", "searchRequestBuilder", "subtitleView", "listItemView", "disableUsersPresence", "menu", "options", "backButtonIconURL", "closeButtonIconURL", "showBackButton", "hideSeparator", "selectionMode", "searchPlaceholder", "searchIconURL", "hideSearch", "title", "onError", "onSelect", "onBack", "onClose", "group", "emptyStateView", "errorStateView", "loadingIconURL", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "unbanIconURL", "statusIndicatorStyle", "avatarStyle", "bannedMembersStyle", "listItemStyle"] }, { type: CometChatGroupMembersComponent, selector: "cometchat-group-members", inputs: ["groupMemberRequestBuilder", "searchRequestBuilder", "subtitleView", "listItemView", "tailView", "disableUsersPresence", "menu", "options", "backButtonIconURL", "closeButtonIconURL", "showBackButton", "hideSeparator", "selectionMode", "searchPlaceholder", "searchIconURL", "hideSearch", "title", "onError", "backdropStyle", "onBack", "onClose", "onSelect", "group", "emptyStateView", "errorStateView", "loadingIconURL", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "dropdownIconURL", "statusIndicatorStyle", "avatarStyle", "groupMembersStyle", "groupScopeStyle", "listItemStyle", "onItemClick", "onEmpty", "userPresencePlacement", "disableLoadingState", "searchKeyword"] }, { type: CometChatTransferOwnershipComponent, selector: "cometchat-transfer-ownership", inputs: ["groupMemberRequestBuilder", "searchRequestBuilder", "subtitleView", "listItemView", "disableUsersPresence", "options", "closeButtonIconURL", "hideSeparator", "searchPlaceholder", "searchIconURL", "hideSearch", "title", "onError", "onClose", "onTransferOwnership", "group", "emptyStateView", "errorStateView", "loadingIconURL", "loadingStateView", "emptyStateText", "errorStateText", "statusIndicatorStyle", "transferOwnershipStyle", "transferButtonText", "cancelButtonText", "avatarStyle", "groupMembersStyle", "listItemStyle", "titleAlignment"] }], 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 });
16816
16849
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatDetailsComponent, decorators: [{
16817
16850
  type: Component,
16818
- args: [{ selector: "cometchat-details", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-details__wrapper\" *ngIf=\"user || group\"\n [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-details__header\">\n <cometchat-label [text]=\"title\"\n [labelStyle]=\"getTitleStyle()\"></cometchat-label>\n <cometchat-button [iconURL]=\"closeButtonIconURL\"\n class=\"cc-details__close-button\" [buttonStyle]=\"closeButtonStyle\"\n (cc-button-clicked)=\"onCloseDetails()\"></cometchat-button>\n </div>\n <div class=\"cc-details\" [ngStyle]=\"marginStyle()\">\n <div class=\"cc-details__profile\" *ngIf=\"!hideProfile\">\n <cometchat-list-item *ngIf=\"!customProfileView;else listitem\"\n [avatarName]=\"user?.getName() ?? this.group?.getName()\"\n [avatarURL]=\"this.user?.getAvatar() ?? this.group?.getIcon()\"\n [listItemStyle]=\"listItemStyle\"\n [statusIndicatorColor]=\"checkStatusType()\"\n [statusIndicatorIcon]=\"checkGroupType()\"\n [title]=\"this.user?.getName() ?? this.group?.getName()\"\n [hideSeparator]=\"false\" [statusIndicatorStyle]=\"statusIndicatorStyle\"\n [avatarStyle]=\"avatarStyle\">\n <div slot=\"subtitleView\">\n <div *ngIf=\"!subtitleView; else subtitle\">\n <cometchat-label [text]=\"subtitleText\"\n [labelStyle]=\"subtitleStyle()\">\n </cometchat-label>\n </div>\n <ng-template #subtitle>\n <ng-container\n *ngTemplateOutlet=\"subtitleView;context:{ $implicit: user ?? group }\">\n </ng-container>\n </ng-template>\n </div>\n </cometchat-list-item>\n </div>\n <div class=\"cc-details__section-list\"\n *ngIf=\"defaultTemplate && defaultTemplate.length > 0\">\n <div class=\"cc-details__section\" *ngFor=\"let item of defaultTemplate\">\n <div class=\"cc-details__section-separator\" *ngIf=\"item.title\">\n <cometchat-label [text]=\"item.title\"\n [labelStyle]=\"getSectionHeaderStyle(item)\"></cometchat-label>\n </div>\n <div class=\"cc-details__options-wrapper\"\n *ngIf=\"getTemplateOptions(item)\">\n <div class=\"cc-details__options\"\n *ngFor=\"let option of getTemplateOptions(item)\">\n <div class=\"cc-details__option\"\n *ngIf=\"!getCustomOptionView(option);else customView\"\n (click)=\"onOptionClick(option)\">\n <div class=\"cc-details__option-title\">\n <cometchat-button [text]=\"option.title\"\n [buttonStyle]=\"getButtonStyle(option)\"></cometchat-button>\n <div class=\"cc-details__option-tail\" *ngIf=\"option?.tail\">\n <ng-container *ngTemplateOutlet=\"option?.tail\"></ng-container>\n </div>\n </div>\n <cometchat-divider\n [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n </div>\n <ng-template #customView>\n <ng-container *ngTemplateOutlet=\"getCustomOptionView(option)\">\n </ng-container>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<ng-template #listitem>\n <ng-container *ngTemplateOutlet=\"customProfileView\">\n </ng-container>\n</ng-template>\n<div class=\"cc-details__view\" *ngIf=\"openAddMembersPage\">\n <cometchat-add-members\n [titleAlignment]=\"addMembersConfiguration?.titleAlignment!\"\n [listItemStyle]=\"addMembersConfiguration?.listItemStyle!\"\n [addMembersStyle]=\"addMembersConfiguration?.addMembersStyle!\"\n [avatarStyle]=\"addMembersConfiguration?.avatarStyle!\"\n [statusIndicatorStyle]=\"addMembersConfiguration?.statusIndicatorStyle!\"\n [loadingStateView]=\"addMembersConfiguration?.loadingStateView!\"\n [loadingIconURL]=\"addMembersConfiguration?.loadingIconURL!\"\n [errorStateView]=\"addMembersConfiguration?.errorStateView\"\n [emptyStateView]=\"addMembersConfiguration?.emptyStateView\"\n [onSelect]=\"addMembersConfiguration?.onSelect!\"\n [onError]=\"addMembersConfiguration?.onError!\"\n [hideError]=\"addMembersConfiguration?.hideError!\"\n [hideSearch]=\"addMembersConfiguration?.hideSearch!\"\n [searchIconURL]=\"addMembersConfiguration?.searchIconURL!\"\n [selectionMode]=\"addMembersConfiguration?.selectionMode!\"\n [hideSeparator]=\"addMembersConfiguration?.hideSeparator!\"\n [showBackButton]=\"addMembersConfiguration?.showBackButton!\"\n [showSectionHeader]=\"addMembersConfiguration?.showSectionHeader!\"\n [onAddMembersButtonClick]=\"addMembersConfiguration?.onAddMembersButtonClick!\"\n [usersConfiguration]=\"addMembersConfiguration?.usersConfiguration\"\n [backButtonIconURL]=\"addMembersConfiguration?.backButtonIconURL!\"\n [sectionHeaderField]=\"addMembersConfiguration?.sectionHeaderField!\"\n [closeButtonIconURL]=\"addMembersConfiguration?.closeButtonIconURL!\"\n [options]=\"addMembersConfiguration?.options!\"\n [menu]=\"addMembersConfiguration?.menu\"\n [disableUsersPresence]=\"addMembersConfiguration?.disableUsersPresence!\"\n [subtitleView]=\"addMembersConfiguration?.subtitleView\" [group]=\"group\"\n [selectionMode]=\"selectionmodeEnum\"\n [onClose]=\"addMembersConfiguration?.onClose || onCloseDetails\"\n [onBack]=\"addMembersConfiguration?.onBack || addMembers\"\n [usersRequestBuilder]=\"addMembersConfiguration?.usersRequestBuilder!\"\n [searchRequestBuilder]=\"addMembersConfiguration?.usersRequestBuilder!\"\n [listItemView]=\"addMembersConfiguration?.listItemView\">\n </cometchat-add-members>\n</div>\n<div class=\"cc-details__view\" *ngIf=\"openBannedMembersPage\">\n <cometchat-banned-members\n [listItemView]=\"bannedMembersConfiguration?.listItemView\"\n [bannedMembersRequestBuilder]=\"bannedMembersConfiguration?.bannedMembersRequestBuilder!\"\n [searchRequestBuilder]=\"bannedMembersConfiguration?.searchRequestBuilder!\"\n [titleAlignment]=\"bannedMembersConfiguration.titleAlignment\"\n [listItemStyle]=\"bannedMembersConfiguration.listItemStyle\"\n [bannedMembersStyle]=\"bannedMembersConfiguration.bannedMembersStyle\"\n [avatarStyle]=\"bannedMembersConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"bannedMembersConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"bannedMembersConfiguration.loadingStateView\"\n [loadingIconURL]=\"bannedMembersConfiguration.loadingIconURL\"\n [errorStateView]=\"bannedMembersConfiguration.errorStateView\"\n [emptyStateView]=\"bannedMembersConfiguration.emptyStateView\"\n [onSelect]=\"bannedMembersConfiguration.onSelect\"\n [onError]=\"bannedMembersConfiguration.onError\"\n [hideError]=\"bannedMembersConfiguration.hideError\"\n [hideSearch]=\"bannedMembersConfiguration.hideSearch\"\n [searchIconURL]=\"bannedMembersConfiguration.searchIconURL\"\n [selectionMode]=\"bannedMembersConfiguration.selectionMode\"\n [hideSeparator]=\"bannedMembersConfiguration.hideSeparator\"\n [showBackButton]=\"bannedMembersConfiguration.showBackButton\"\n [backButtonIconURL]=\"bannedMembersConfiguration.backButtonIconURL\"\n [closeButtonIconURL]=\"bannedMembersConfiguration.closeButtonIconURL\"\n [options]=\"bannedMembersConfiguration.options\"\n [menu]=\"bannedMembersConfiguration.menu\"\n [disableUsersPresence]=\"bannedMembersConfiguration.disableUsersPresence\"\n [subtitleView]=\"bannedMembersConfiguration.subtitleView\" [group]=\"group\"\n [onClose]=\"onCloseDetails\"\n [onBack]=\"bannedMembersConfiguration.onBack || bannedMembers\">\n </cometchat-banned-members>\n</div>\n<div class=\"cc-details__view\" *ngIf=\"openViewMembersPage\">\n <cometchat-group-members\n [groupMembersRequestBuilder]=\"groupMembersConfiguration?.groupMembersRequestBuilder!\"\n [searchRequestBuilder]=\"groupMembersConfiguration?.searchRequestBuilder!\"\n [titleAlignment]=\"groupMembersConfiguration.titleAlignment\"\n [listItemStyle]=\"groupMembersConfiguration.listItemStyle\"\n [groupMembersStyle]=\"groupMembersConfiguration.groupMembersStyle\"\n [avatarStyle]=\"groupMembersConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"groupMembersConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"groupMembersConfiguration.loadingStateView\"\n [loadingIconURL]=\"groupMembersConfiguration.loadingIconURL\"\n [errorStateView]=\"groupMembersConfiguration.errorStateView\"\n [emptyStateView]=\"groupMembersConfiguration.emptyStateView\"\n [onSelect]=\"groupMembersConfiguration.onSelect\"\n [onError]=\"groupMembersConfiguration.onError\"\n [hideError]=\"groupMembersConfiguration.hideError\"\n [hideSearch]=\"groupMembersConfiguration.hideSearch\"\n [searchIconURL]=\"groupMembersConfiguration.searchIconURL\"\n [selectionMode]=\"groupMembersConfiguration.selectionMode\"\n [backdropStyle]=\"groupMembersConfiguration.backdropStyle\"\n [hideSeparator]=\"groupMembersConfiguration.hideSeparator\"\n [showBackButton]=\"groupMembersConfiguration.showBackButton\"\n [backButtonIconURL]=\"groupMembersConfiguration.backButtonIconURL\"\n [closeButtonIconURL]=\"groupMembersConfiguration.closeButtonIconURL\"\n [options]=\"groupMembersConfiguration.options\"\n [menu]=\"groupMembersConfiguration.menu\"\n [disableUsersPresence]=\"groupMembersConfiguration.disableUsersPresence\"\n [subtitleView]=\"groupMembersConfiguration.subtitleView\"\n [groupScopeStyle]=\"groupMembersConfiguration.groupScopeStyle\"\n [group]=\"group\"\n [onClose]=\" groupMembersConfiguration.onClose || onCloseDetails\"\n [onBack]=\"groupMembersConfiguration.onBack || viewMembers\">\n </cometchat-group-members>\n</div>\n\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\"\n *ngIf=\"confirmLeaveGroupModal\">\n <cometchat-confirm-dialog [title]=\"''\" [messageText]=\"leaveGroupDialogMessage\"\n [cancelButtonText]=\"leaveGroupCancelButtonText\"\n [confirmButtonText]=\"leaveGroupConfirmButtonText\"\n (cc-confirm-clicked)=\"onLeaveClick()\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"leaveGroupDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"showTransferDialog\">\n <cometchat-confirm-dialog [title]=\"''\"\n [messageText]=\"transferOwnershipDialogMessage\"\n [cancelButtonText]=\"transferOwnershipCancelButtonText\"\n [confirmButtonText]=\"transferOwnershipConfirmButtonText\"\n (cc-confirm-clicked)=\"onTransferClick()\"\n (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"transferOwnershipDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\"\n *ngIf=\"openTransferOwnershipModal\">\n <cometchat-transfer-ownership\n [groupMembersRequestBuilder]=\"transferOwnershipConfiguration?.groupMembersRequestBuilder\"\n [transferOwnershipStyle]=\"transferOwnershipConfiguration.transferOwnershipStyle\"\n [onTransferOwnership]=\"transferOwnershipConfiguration.onTransferOwnership\"\n [titleAlignment]=\"transferOwnershipConfiguration.titleAlignment\"\n [listItemStyle]=\"transferOwnershipConfiguration.listItemStyle\"\n [avatarStyle]=\"transferOwnershipConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"transferOwnershipConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"transferOwnershipConfiguration.loadingStateView\"\n [loadingIconURL]=\"transferOwnershipConfiguration.loadingIconURL\"\n [errorStateView]=\"transferOwnershipConfiguration.errorStateView\"\n [emptyStateView]=\"transferOwnershipConfiguration.emptyStateView\"\n [onError]=\"transferOwnershipConfiguration.onError\"\n [hideSearch]=\"transferOwnershipConfiguration.hideSearch\"\n [searchIconURL]=\"transferOwnershipConfiguration.searchIconURL\"\n [hideSeparator]=\"transferOwnershipConfiguration.hideSeparator\"\n [closeButtonIconURL]=\"transferOwnershipConfiguration.closeButtonIconURL\"\n [options]=\"transferOwnershipConfiguration.options\"\n [disableUsersPresence]=\"transferOwnershipConfiguration.disableUsersPresence\"\n [subtitleView]=\"transferOwnershipConfiguration.subtitleView\" [group]=\"group\"\n [onClose]=\"transferOwnershipConfiguration.onClose || openTransferOwnership\">\n </cometchat-transfer-ownership>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"deleteGroupModal\">\n <cometchat-confirm-dialog [title]=\"''\"\n [messageText]=\"deleteGroupDialogMessage\"\n [cancelButtonText]=\"deleteGroupCancelButtonText\"\n [confirmButtonText]=\"deleteGroupConfirmButtonText\"\n (cc-confirm-clicked)=\"deleteGroup()\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"deleteGroupDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-details__wrapper{padding:8px;border-radius:5px;height:100%;overflow:hidden}.cc-details__profile{margin-bottom:50px;height:8%}.cc-details__section-list{height:84%;width:100%;overflow-y:auto;overflow-x:hidden}.cc-details__header{display:flex;justify-content:center;align-items:center;margin-bottom:30px}.cc-details__close-button{position:absolute;right:20px}.cc-details__section{margin-bottom:32px}.cc-details__section-separator{margin-bottom:16px;padding-left:6px;height:5%}.cc-details__options-wrapper{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}.cc-details__option{display:flex;flex-direction:column;justify-content:space-evenly;min-height:50px}.cc-details__option-title{padding-bottom:12px;display:flex;align-items:center;justify-content:space-between}.cc-details__view{position:absolute;top:0;left:0;height:100%;width:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;max-width:100%;z-index:1}.cc-details__section-list::-webkit-scrollbar{background:transparent;width:8px}.cc-details__section-list::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-details__leavedialog,.cc-details__transferownership{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:-moz-fit-content;height:fit-content;width:100%;z-index:2}\n"] }]
16851
+ args: [{ selector: "cometchat-details", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-details__wrapper\" *ngIf=\"user || group\"\n [ngStyle]=\"wrapperStyle()\">\n <div class=\"cc-details__header\">\n <cometchat-label [text]=\"title\"\n [labelStyle]=\"getTitleStyle()\"></cometchat-label>\n <cometchat-button [iconURL]=\"closeButtonIconURL\"\n class=\"cc-details__close-button\" [buttonStyle]=\"closeButtonStyle\"\n (cc-button-clicked)=\"onCloseDetails()\"></cometchat-button>\n </div>\n <div class=\"cc-details\" [ngStyle]=\"marginStyle()\">\n <div class=\"cc-details__profile\" *ngIf=\"!hideProfile\">\n <cometchat-list-item *ngIf=\"!customProfileView;else listitem\"\n [avatarName]=\"user?.getName() ?? this.group?.getName()\"\n [avatarURL]=\"this.user?.getAvatar() ?? this.group?.getIcon()\"\n [listItemStyle]=\"listItemStyle\"\n [statusIndicatorColor]=\"checkStatusType()\"\n [statusIndicatorIcon]=\"checkGroupType()\"\n [title]=\"this.user?.getName() ?? this.group?.getName()\"\n [hideSeparator]=\"false\" [statusIndicatorStyle]=\"statusIndicatorStyle\"\n [avatarStyle]=\"avatarStyle\">\n <div slot=\"subtitleView\">\n <div *ngIf=\"!subtitleView; else subtitle\">\n <cometchat-label [text]=\"subtitleText\"\n [labelStyle]=\"subtitleStyle()\">\n </cometchat-label>\n </div>\n <ng-template #subtitle>\n <ng-container\n *ngTemplateOutlet=\"subtitleView;context:{ $implicit: user ?? group }\">\n </ng-container>\n </ng-template>\n </div>\n </cometchat-list-item>\n </div>\n <div class=\"cc-details__section-list\"\n *ngIf=\"defaultTemplate && defaultTemplate.length > 0\">\n <div class=\"cc-details__section\" *ngFor=\"let item of defaultTemplate\">\n <div class=\"cc-details__section-separator\" *ngIf=\"item.title\">\n <cometchat-label [text]=\"item.title\"\n [labelStyle]=\"getSectionHeaderStyle(item)\"></cometchat-label>\n </div>\n <div class=\"cc-details__options-wrapper\"\n *ngIf=\"getTemplateOptions(item)\">\n <div class=\"cc-details__options\"\n *ngFor=\"let option of getTemplateOptions(item)\">\n <div class=\"cc-details__option\"\n *ngIf=\"!getCustomOptionView(option);else customView\"\n (click)=\"onOptionClick(option)\">\n <div class=\"cc-details__option-title\">\n <cometchat-button [text]=\"option.title\"\n [buttonStyle]=\"getButtonStyle(option)\"></cometchat-button>\n <div class=\"cc-details__option-tail\" *ngIf=\"option?.tail\">\n <ng-container *ngTemplateOutlet=\"option?.tail\"></ng-container>\n </div>\n </div>\n <cometchat-divider\n [dividerStyle]=\"dividerStyle\"></cometchat-divider>\n </div>\n <ng-template #customView>\n <ng-container *ngTemplateOutlet=\"getCustomOptionView(option)\">\n </ng-container>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<ng-template #listitem>\n <ng-container *ngTemplateOutlet=\"customProfileView\">\n </ng-container>\n</ng-template>\n<div class=\"cc-details__view\" *ngIf=\"openAddMembersPage\">\n <cometchat-add-members\n [titleAlignment]=\"addMembersConfiguration?.titleAlignment!\"\n [listItemStyle]=\"addMembersConfiguration?.listItemStyle!\"\n [addMembersStyle]=\"addMembersConfiguration?.addMembersStyle!\"\n [avatarStyle]=\"addMembersConfiguration?.avatarStyle!\"\n [statusIndicatorStyle]=\"addMembersConfiguration?.statusIndicatorStyle!\"\n [loadingStateView]=\"addMembersConfiguration?.loadingStateView!\"\n [loadingIconURL]=\"addMembersConfiguration?.loadingIconURL!\"\n [errorStateView]=\"addMembersConfiguration?.errorStateView\"\n [emptyStateView]=\"addMembersConfiguration?.emptyStateView\"\n [onSelect]=\"addMembersConfiguration?.onSelect!\"\n [onError]=\"addMembersConfiguration?.onError!\"\n [hideError]=\"addMembersConfiguration?.hideError!\"\n [hideSearch]=\"addMembersConfiguration?.hideSearch!\"\n [searchIconURL]=\"addMembersConfiguration?.searchIconURL!\"\n [selectionMode]=\"addMembersConfiguration?.selectionMode!\"\n [hideSeparator]=\"addMembersConfiguration?.hideSeparator!\"\n [showBackButton]=\"addMembersConfiguration?.showBackButton!\"\n [showSectionHeader]=\"addMembersConfiguration?.showSectionHeader!\"\n [onAddMembersButtonClick]=\"addMembersConfiguration?.onAddMembersButtonClick!\"\n [usersConfiguration]=\"addMembersConfiguration?.usersConfiguration\"\n [backButtonIconURL]=\"addMembersConfiguration?.backButtonIconURL!\"\n [sectionHeaderField]=\"addMembersConfiguration?.sectionHeaderField!\"\n [closeButtonIconURL]=\"addMembersConfiguration?.closeButtonIconURL!\"\n [options]=\"addMembersConfiguration?.options!\"\n [menu]=\"addMembersConfiguration?.menu\"\n [disableUsersPresence]=\"addMembersConfiguration?.disableUsersPresence!\"\n [subtitleView]=\"addMembersConfiguration?.subtitleView\" [group]=\"group\"\n [selectionMode]=\"selectionmodeEnum\"\n [onClose]=\"addMembersConfiguration?.onClose || onCloseDetails\"\n [onBack]=\"onBackForAddMembers\"\n [usersRequestBuilder]=\"addMembersConfiguration?.usersRequestBuilder!\"\n [searchRequestBuilder]=\"addMembersConfiguration?.usersRequestBuilder!\"\n [listItemView]=\"addMembersConfiguration?.listItemView\">\n </cometchat-add-members>\n</div>\n<div class=\"cc-details__view\" *ngIf=\"openBannedMembersPage\">\n <cometchat-banned-members\n [listItemView]=\"bannedMembersConfiguration?.listItemView\"\n [bannedMembersRequestBuilder]=\"bannedMembersConfiguration?.bannedMembersRequestBuilder!\"\n [searchRequestBuilder]=\"bannedMembersConfiguration?.searchRequestBuilder!\"\n [titleAlignment]=\"bannedMembersConfiguration.titleAlignment\"\n [listItemStyle]=\"bannedMembersConfiguration.listItemStyle\"\n [bannedMembersStyle]=\"bannedMembersConfiguration.bannedMembersStyle\"\n [avatarStyle]=\"bannedMembersConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"bannedMembersConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"bannedMembersConfiguration.loadingStateView\"\n [loadingIconURL]=\"bannedMembersConfiguration.loadingIconURL\"\n [errorStateView]=\"bannedMembersConfiguration.errorStateView\"\n [emptyStateView]=\"bannedMembersConfiguration.emptyStateView\"\n [onSelect]=\"bannedMembersConfiguration.onSelect\"\n [onError]=\"bannedMembersConfiguration.onError\"\n [hideError]=\"bannedMembersConfiguration.hideError\"\n [hideSearch]=\"bannedMembersConfiguration.hideSearch\"\n [searchIconURL]=\"bannedMembersConfiguration.searchIconURL\"\n [selectionMode]=\"bannedMembersConfiguration.selectionMode\"\n [hideSeparator]=\"bannedMembersConfiguration.hideSeparator\"\n [showBackButton]=\"bannedMembersConfiguration.showBackButton\"\n [backButtonIconURL]=\"bannedMembersConfiguration.backButtonIconURL\"\n [closeButtonIconURL]=\"bannedMembersConfiguration.closeButtonIconURL\"\n [options]=\"bannedMembersConfiguration.options\"\n [menu]=\"bannedMembersConfiguration.menu\"\n [disableUsersPresence]=\"bannedMembersConfiguration.disableUsersPresence\"\n [subtitleView]=\"bannedMembersConfiguration.subtitleView\" [group]=\"group\"\n [onClose]=\"onCloseDetails\"\n [onBack]=\"bannedMembersConfiguration.onBack || bannedMembers\">\n </cometchat-banned-members>\n</div>\n<div class=\"cc-details__view\" *ngIf=\"openViewMembersPage\">\n <cometchat-group-members\n [groupMembersRequestBuilder]=\"groupMembersConfiguration?.groupMembersRequestBuilder!\"\n [searchRequestBuilder]=\"groupMembersConfiguration?.searchRequestBuilder!\"\n [titleAlignment]=\"groupMembersConfiguration.titleAlignment\"\n [listItemStyle]=\"groupMembersConfiguration.listItemStyle\"\n [groupMembersStyle]=\"groupMembersConfiguration.groupMembersStyle\"\n [avatarStyle]=\"groupMembersConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"groupMembersConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"groupMembersConfiguration.loadingStateView\"\n [loadingIconURL]=\"groupMembersConfiguration.loadingIconURL\"\n [errorStateView]=\"groupMembersConfiguration.errorStateView\"\n [emptyStateView]=\"groupMembersConfiguration.emptyStateView\"\n [onSelect]=\"groupMembersConfiguration.onSelect\"\n [onError]=\"groupMembersConfiguration.onError\"\n [hideError]=\"groupMembersConfiguration.hideError\"\n [hideSearch]=\"groupMembersConfiguration.hideSearch\"\n [searchIconURL]=\"groupMembersConfiguration.searchIconURL\"\n [selectionMode]=\"groupMembersConfiguration.selectionMode\"\n [backdropStyle]=\"groupMembersConfiguration.backdropStyle\"\n [hideSeparator]=\"groupMembersConfiguration.hideSeparator\"\n [showBackButton]=\"groupMembersConfiguration.showBackButton\"\n [backButtonIconURL]=\"groupMembersConfiguration.backButtonIconURL\"\n [closeButtonIconURL]=\"groupMembersConfiguration.closeButtonIconURL\"\n [options]=\"groupMembersConfiguration.options\"\n [menu]=\"groupMembersConfiguration.menu\"\n [disableUsersPresence]=\"groupMembersConfiguration.disableUsersPresence\"\n [subtitleView]=\"groupMembersConfiguration.subtitleView\"\n [groupScopeStyle]=\"groupMembersConfiguration.groupScopeStyle\"\n [group]=\"group\"\n [onClose]=\" groupMembersConfiguration.onClose || onCloseDetails\"\n [onBack]=\"groupMembersConfiguration.onBack || viewMembers\">\n </cometchat-group-members>\n</div>\n\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\"\n *ngIf=\"confirmLeaveGroupModal\">\n <cometchat-confirm-dialog [title]=\"''\" [messageText]=\"leaveGroupDialogMessage\"\n [cancelButtonText]=\"leaveGroupCancelButtonText\"\n [confirmButtonText]=\"leaveGroupConfirmButtonText\"\n (cc-confirm-clicked)=\"onLeaveClick()\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"leaveGroupDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"showTransferDialog\">\n <cometchat-confirm-dialog [title]=\"''\"\n [messageText]=\"transferOwnershipDialogMessage\"\n [cancelButtonText]=\"transferOwnershipCancelButtonText\"\n [confirmButtonText]=\"transferOwnershipConfirmButtonText\"\n (cc-confirm-clicked)=\"onTransferClick()\"\n (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"transferOwnershipDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\"\n *ngIf=\"openTransferOwnershipModal\">\n <cometchat-transfer-ownership\n [groupMembersRequestBuilder]=\"transferOwnershipConfiguration?.groupMembersRequestBuilder\"\n [transferOwnershipStyle]=\"transferOwnershipConfiguration.transferOwnershipStyle\"\n [onTransferOwnership]=\"transferOwnershipConfiguration.onTransferOwnership\"\n [titleAlignment]=\"transferOwnershipConfiguration.titleAlignment\"\n [listItemStyle]=\"transferOwnershipConfiguration.listItemStyle\"\n [avatarStyle]=\"transferOwnershipConfiguration.avatarStyle\"\n [statusIndicatorStyle]=\"transferOwnershipConfiguration.statusIndicatorStyle\"\n [loadingStateView]=\"transferOwnershipConfiguration.loadingStateView\"\n [loadingIconURL]=\"transferOwnershipConfiguration.loadingIconURL\"\n [errorStateView]=\"transferOwnershipConfiguration.errorStateView\"\n [emptyStateView]=\"transferOwnershipConfiguration.emptyStateView\"\n [onError]=\"transferOwnershipConfiguration.onError\"\n [hideSearch]=\"transferOwnershipConfiguration.hideSearch\"\n [searchIconURL]=\"transferOwnershipConfiguration.searchIconURL\"\n [hideSeparator]=\"transferOwnershipConfiguration.hideSeparator\"\n [closeButtonIconURL]=\"transferOwnershipConfiguration.closeButtonIconURL\"\n [options]=\"transferOwnershipConfiguration.options\"\n [disableUsersPresence]=\"transferOwnershipConfiguration.disableUsersPresence\"\n [subtitleView]=\"transferOwnershipConfiguration.subtitleView\" [group]=\"group\"\n [onClose]=\"transferOwnershipConfiguration.onClose || openTransferOwnership\">\n </cometchat-transfer-ownership>\n</cometchat-backdrop>\n<cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"deleteGroupModal\">\n <cometchat-confirm-dialog [title]=\"''\"\n [messageText]=\"deleteGroupDialogMessage\"\n [cancelButtonText]=\"deleteGroupCancelButtonText\"\n [confirmButtonText]=\"deleteGroupConfirmButtonText\"\n (cc-confirm-clicked)=\"deleteGroup()\" (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"deleteGroupDialogStyle\">\n </cometchat-confirm-dialog>\n</cometchat-backdrop>\n", styles: ["*{box-sizing:border-box;margin:0;padding:0}.cc-details__wrapper{padding:8px;border-radius:5px;height:100%;overflow:hidden}.cc-details__profile{margin-bottom:50px;height:8%}.cc-details__section-list{height:84%;width:100%;overflow-y:auto;overflow-x:hidden}.cc-details__header{display:flex;justify-content:center;align-items:center;margin-bottom:30px}.cc-details__close-button{position:absolute;right:20px}.cc-details__section{margin-bottom:32px}.cc-details__section-separator{margin-bottom:16px;padding-left:6px;height:5%}.cc-details__options-wrapper{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}.cc-details__option{display:flex;flex-direction:column;justify-content:space-evenly;min-height:50px}.cc-details__option-title{padding-bottom:12px;display:flex;align-items:center;justify-content:space-between}.cc-details__view{position:absolute;top:0;left:0;height:100%;width:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;max-width:100%;z-index:1}.cc-details__section-list::-webkit-scrollbar{background:transparent;width:8px}.cc-details__section-list::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-details__leavedialog,.cc-details__transferownership{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:-moz-fit-content;height:fit-content;width:100%;z-index:2}\n"] }]
16819
16852
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { group: [{
16820
16853
  type: Input
16821
16854
  }], user: [{
@@ -17510,6 +17543,10 @@ class CometChatGroupsComponent {
17510
17543
  }
17511
17544
  return status;
17512
17545
  };
17546
+ this.findGroupIndex = (groupToFind) => {
17547
+ let groupIndex = this.groupsList.findIndex((g, k) => g.getGuid() === groupToFind.getGuid());
17548
+ return groupIndex;
17549
+ };
17513
17550
  this.fetchNextGroupList = (state = States.loading) => {
17514
17551
  var _a, _b, _c;
17515
17552
  this.onScrolledToBottom = null;
@@ -17773,54 +17810,116 @@ class CometChatGroupsComponent {
17773
17810
  CometChat.addGroupListener(this.groupsListenerId, new CometChat.GroupListener({
17774
17811
  onGroupMemberScopeChanged: (message, changedUser, newScope, oldScope, changedGroup) => {
17775
17812
  var _a;
17776
- if (changedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17777
- changedGroup.setScope(newScope);
17813
+ const groupIndex = this.findGroupIndex(changedGroup);
17814
+ if (groupIndex > -1) {
17815
+ let groupsList = [...this.groupsList];
17816
+ const groupFound = groupsList[groupIndex];
17817
+ if (changedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17818
+ groupFound.setScope(newScope);
17819
+ this.ref.detectChanges();
17820
+ }
17821
+ groupsList.splice(groupIndex, 1, groupFound);
17822
+ this.groupsList = groupsList;
17778
17823
  }
17779
- this.updateGroup(changedGroup);
17780
17824
  },
17781
17825
  onGroupMemberKicked: (message, kickedUser, kickedBy, kickedFrom) => {
17782
17826
  var _a;
17783
- if (kickedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17784
- kickedFrom.setHasJoined(false);
17827
+ const groupIndex = this.findGroupIndex(kickedFrom);
17828
+ if (groupIndex > -1) {
17829
+ let groupsList = [...this.groupsList];
17830
+ let groupFound = groupsList[groupIndex];
17831
+ if (kickedUser.getUid() === ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17832
+ groupFound.setHasJoined(false);
17833
+ }
17834
+ groupFound.setMembersCount(kickedFrom.getMembersCount());
17835
+ groupsList.splice(groupIndex, 1, groupFound);
17836
+ this.groupsList = groupsList;
17837
+ this.ref.detectChanges();
17785
17838
  }
17786
- this.updateGroup(kickedFrom);
17787
17839
  },
17788
17840
  onGroupMemberBanned: (message, bannedUser, bannedBy, bannedFrom) => {
17789
17841
  var _a;
17790
- if (bannedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17791
- this.removeGroup(bannedFrom);
17792
- }
17793
- else {
17794
- this.updateGroup(bannedFrom);
17842
+ const groupIndex = this.findGroupIndex(bannedFrom);
17843
+ if (groupIndex > -1) {
17844
+ let groupsList = [...this.groupsList];
17845
+ let groupFound = groupsList[groupIndex];
17846
+ if (bannedUser.getUid() === ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17847
+ this.removeGroup(bannedFrom);
17848
+ return;
17849
+ }
17850
+ groupFound.setMembersCount(bannedFrom.getMembersCount());
17851
+ groupsList.splice(groupIndex, 1, groupFound);
17852
+ this.groupsList = groupsList;
17853
+ this.ref.detectChanges();
17795
17854
  }
17796
17855
  },
17797
17856
  onGroupMemberUnbanned: (message, unbannedUser, unbannedBy, unbannedFrom) => {
17798
17857
  var _a;
17799
- if (unbannedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17800
- unbannedFrom.setHasJoined(false);
17858
+ const groupIndex = this.findGroupIndex(unbannedFrom);
17859
+ if (groupIndex > -1) {
17860
+ let groupsList = [...this.groupsList];
17861
+ let groupFound = groupsList[groupIndex];
17862
+ if (unbannedUser.getUid() === ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17863
+ groupFound.setHasJoined(false);
17864
+ }
17865
+ groupsList.splice(groupIndex, 1, groupFound);
17866
+ this.groupsList = groupsList;
17801
17867
  }
17802
- this.addGroup(unbannedFrom);
17868
+ else {
17869
+ this.addGroup(unbannedFrom);
17870
+ }
17871
+ this.ref.detectChanges();
17803
17872
  },
17804
17873
  onMemberAddedToGroup: (message, userAdded, userAddedBy, userAddedIn) => {
17805
17874
  var _a;
17806
- if (userAdded.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17875
+ if (this.searchKeyword)
17876
+ return;
17877
+ const groupIndex = this.findGroupIndex(userAddedIn);
17878
+ if (groupIndex > -1) {
17879
+ let groupsList = [...this.groupsList];
17880
+ let groupFound = groupsList[groupIndex];
17881
+ if (userAdded.getUid() === ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17882
+ groupFound.setHasJoined(true);
17883
+ }
17884
+ groupFound.setMembersCount(userAddedIn.getMembersCount());
17885
+ groupsList.splice(groupIndex, 1, groupFound);
17886
+ this.groupsList = groupsList;
17887
+ }
17888
+ else {
17807
17889
  userAddedIn.setHasJoined(true);
17890
+ this.addGroup(userAddedIn);
17808
17891
  }
17809
- this.updateGroup(userAddedIn);
17892
+ this.ref.detectChanges();
17810
17893
  },
17811
17894
  onGroupMemberLeft: (message, leavingUser, group) => {
17812
17895
  var _a;
17813
- if (leavingUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17814
- group.setHasJoined(false);
17896
+ const groupIndex = this.findGroupIndex(group);
17897
+ if (groupIndex > -1) {
17898
+ let groupsList = [...this.groupsList];
17899
+ let groupFound = groupsList[groupIndex];
17900
+ if (leavingUser.getUid() === ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17901
+ groupFound.setHasJoined(false);
17902
+ }
17903
+ groupFound.setMembersCount(group.getMembersCount());
17904
+ groupsList.splice(groupIndex, 1, groupFound);
17905
+ this.groupsList = groupsList;
17906
+ this.ref.detectChanges();
17815
17907
  }
17816
- this.updateGroup(group);
17817
17908
  },
17818
17909
  onGroupMemberJoined: (message, joinedUser, joinedGroup) => {
17819
17910
  var _a;
17820
- if (joinedUser.getUid() == ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17821
- joinedGroup.setHasJoined(true);
17911
+ const groupIndex = this.findGroupIndex(joinedGroup);
17912
+ if (groupIndex > -1) {
17913
+ let groupsList = [...this.groupsList];
17914
+ let groupFound = groupsList[groupIndex];
17915
+ if (joinedUser.getUid() === ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid())) {
17916
+ groupFound.setHasJoined(true);
17917
+ }
17918
+ groupFound.setMembersCount(joinedGroup.getMembersCount());
17919
+ groupsList.splice(groupIndex, 1, groupFound);
17920
+ this.groupsList = groupsList;
17921
+ this.ref.detectChanges();
17822
17922
  }
17823
- this.updateGroup(joinedGroup);
17824
17923
  },
17825
17924
  }));
17826
17925
  }
@@ -18086,7 +18185,7 @@ class CometChatContactsComponent {
18086
18185
  else {
18087
18186
  this.groupsList.push(group);
18088
18187
  }
18089
- this.isLimitReached = this.groupsList.length + this.usersList.length >= this.selectionLimit;
18188
+ this.isLimitReached = this.groupsList.length + this.usersList.length > this.selectionLimit;
18090
18189
  this.ref.detectChanges();
18091
18190
  };
18092
18191
  this.onUserSelected = (user) => {
@@ -18383,6 +18482,7 @@ class CometChatConversationsWithMessagesComponent {
18383
18482
  border: this.conversationsWithMessagesStyle.border,
18384
18483
  borderRadius: this.conversationsWithMessagesStyle.borderRadius,
18385
18484
  background: this.conversationsWithMessagesStyle.background || this.themeService.theme.palette.getBackground(),
18485
+ position: 'relative'
18386
18486
  };
18387
18487
  };
18388
18488
  this.contactsWrapperStyles = () => {
@@ -18495,8 +18595,13 @@ class CometChatConversationsWithMessagesComponent {
18495
18595
  this.updateBackdropHeight();
18496
18596
  }
18497
18597
  updateBackdropHeight() {
18498
- const divHeight = this.elementRef.nativeElement.offsetHeight;
18499
- const divWidth = this.elementRef.nativeElement.offsetWidth;
18598
+ let divHeight = this.elementRef.nativeElement.offsetHeight;
18599
+ let divWidth = this.elementRef.nativeElement.offsetWidth;
18600
+ if (divHeight === 0 || divWidth === 0) {
18601
+ const rect = this.elementRef.nativeElement.getBoundingClientRect();
18602
+ divHeight = rect.height;
18603
+ divWidth = rect.width;
18604
+ }
18500
18605
  let backdropStyle = {
18501
18606
  height: divHeight + "px",
18502
18607
  width: divWidth + "px",
@@ -18661,10 +18766,10 @@ class CometChatConversationsWithMessagesComponent {
18661
18766
  }
18662
18767
  }
18663
18768
  CometChatConversationsWithMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatConversationsWithMessagesComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
18664
- CometChatConversationsWithMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatConversationsWithMessagesComponent, selector: "cometchat-conversations-with-messages", inputs: { user: "user", group: "group", isMobileView: "isMobileView", messageText: "messageText", conversationsWithMessagesStyle: "conversationsWithMessagesStyle", messagesConfiguration: "messagesConfiguration", conversationConfiguration: "conversationConfiguration", onError: "onError", startNewConversationIconURL: "startNewConversationIconURL", hideStartNewConversation: "hideStartNewConversation", StartConversationConfiguration: "StartConversationConfiguration" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-with-messages__wrapper\" [ngStyle]=\"chatsWrapperStyles()\">\n <div class=\"cc-with-messages__sidebar\" [ngClass]=\"{mobile : isMobileView}\"\n [ngStyle]=\"sideBarStyle\">\n <cometchat-conversations #conversationRef\n [activeConversation]=\"activeConversation\"\n [onItemClick]=\"conversationConfiguration.onItemClick || onItemClick\"\n [conversationsStyle]=\"conversationConfiguration.conversationsStyle\"\n [statusIndicatorStyle]=\"conversationConfiguration?.statusIndicatorStyle\"\n [avatarStyle]=\"conversationConfiguration?.avatarStyle!\"\n [subtitleView]=\"conversationConfiguration.subtitleView\"\n [options]=\"conversationConfiguration.options\"\n [disableUsersPresence]=\"conversationConfiguration.disableUsersPresence\"\n [disableReceipt]=\"conversationConfiguration.disableReceipt\"\n [hideReceipt]=\"conversationConfiguration.hideReceipt\"\n [disableTyping]=\"conversationConfiguration.disableTyping\"\n [deliveredIcon]=\"conversationConfiguration.deliveredIcon\"\n [readIcon]=\"conversationConfiguration.readIcon\"\n [waitIcon]=\"conversationConfiguration.waitIcon\"\n [errorIcon]=\"conversationConfiguration.errorIcon\"\n [datePattern]=\"conversationConfiguration.datePattern\"\n [receiptStyle]=\"conversationConfiguration.receiptStyle\"\n [sentIcon]=\"conversationConfiguration.sentIcon\"\n [privateGroupIcon]=\"conversationConfiguration.privateGroupIcon\"\n [protectedGroupIcon]=\"conversationConfiguration.protectedGroupIcon\"\n [passwordGroupIcon]=\"conversationConfiguration.passwordGroupIcon\"\n [customSoundForMessages]=\"conversationConfiguration.customSoundForMessages\"\n [conversationsRequestBuilder]=\"conversationConfiguration.conversationsRequestBuilder\"\n [emptyStateView]=\"conversationConfiguration.emptyStateView\"\n [onSelect]=\"conversationConfiguration.onSelect\"\n [loadingIconURL]=\"conversationConfiguration.loadingIconURL\"\n [errorStateView]=\"conversationConfiguration.errorStateView\"\n [loadingStateView]=\"conversationConfiguration.loadingStateView\"\n [titleAlignment]=\"conversationConfiguration.titleAlignment\"\n [listItemView]=\"conversationConfiguration.listItemView\"\n [menu]=\"conversationConfiguration.menu || startConversationButton\"\n [hideSeparator]=\"conversationConfiguration.hideSeparator\"\n [hideError]=\"conversationConfiguration.hideError\"\n [selectionMode]=\"conversationConfiguration.selectionMode\"\n [disableSoundForMessages]=\"conversationConfiguration.disableSoundForMessages\"\n [deleteConversationDialogStyle]=\"conversationConfiguration.deleteConversationDialogStyle\"\n [badgeStyle]=\"conversationConfiguration.badgeStyle\"\n [dateStyle]=\"conversationConfiguration.dateStyle\"\n [listItemStyle]=\"conversationConfiguration.listItemStyle\"\n [backdropStyle]=\"conversationConfiguration.backdropStyle\"\n [textFormatters]=\"conversationConfiguration?.textFormatters\"\n [disableMentions]=\"conversationConfiguration.disableMentions\"></cometchat-conversations>\n </div>\n <div class=\"cc-with-messages__main\" [ngClass]=\"{mobile : isMobileView}\"\n *ngIf=\"!showStartConversation && (user || group)\">\n <!--Message List Screen-->\n <cometchat-messages #messagesRef [user]=\"user!\" [group]=\"group!\"\n [messageHeaderConfiguration]=\"messagesConfiguration.messageHeaderConfiguration\"\n [messageListConfiguration]=\"messagesConfiguration.messageListConfiguration\"\n [messageComposerConfiguration]=\"messagesConfiguration.messageComposerConfiguration\"\n [messagesStyle]=\"messagesConfiguration.messagesStyle\"\n [customSoundForIncomingMessages]=\"messagesConfiguration.customSoundForIncomingMessages\"\n [customSoundForOutgoingMessages]=\"messagesConfiguration.customSoundForOutgoingMessages\"\n [detailsConfiguration]=\"messagesConfiguration.detailsConfiguration\"\n [disableSoundForMessages]=\"messagesConfiguration.disableSoundForMessages\"\n [disableTyping]=\"messagesConfiguration.disableTyping\"\n [hideMessageComposer]=\"messagesConfiguration.hideMessageComposer\"\n [hideMessageHeader]=\"messagesConfiguration.hideMessageHeader\"\n [messageComposerView]=\"messagesConfiguration.messageComposerView\"\n [messageHeaderView]=\"messagesConfiguration.messageHeaderView\"\n [messageListView]=\"messagesConfiguration.messageListView\"\n [hideDetails]=\"messagesConfiguration.hideDetails!\"\n [threadedMessageConfiguration]=\"messagesConfiguration.threadedMessageConfiguration\">\n </cometchat-messages>\n <!--Message List Screen ENDS-->\n </div>\n <div class=\"cc-with-messages__start-conversation\"\n [ngStyle]=\"contactsWrapperStyles()\"\n [ngClass]=\"{mobile : isMobileView}\" *ngIf=\"showStartConversation\">\n\n <cometchat-contacts [onItemClick]=\"onContactClicked\"\n [usersConfiguration]=\"StartConversationConfiguration?.usersConfiguration!\"\n [groupsConfiguration]=\"StartConversationConfiguration?.groupsConfiguration!\"\n [closeIconURL]=\"StartConversationConfiguration?.closeIconURL!\"\n [contactsStyle]=\"StartConversationConfiguration?.contactsStyle!\"\n [selectionMode]=\"StartConversationConfiguration?.selectionMode!\"\n [onClose]=\"closeStartConversation\"\n [tabVisibility]=\"StartConversationConfiguration?.tabVisibility!\"\n [selectionLimit]=\"StartConversationConfiguration?.selectionLimit!\"\n [tabs]=\"StartConversationConfiguration?.tabs!\"\n [hideSubmitButton]=\"StartConversationConfiguration?.hideSubmitButton!\"></cometchat-contacts>\n </div>\n <div class=\"cc-decorator__message--empty\"\n *ngIf=\"!user && !group && !showStartConversation\"\n [ngStyle]=\"emptyMessageStyle()\">\n <cometchat-label [text]=\"messageText\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n </div>\n <ng-template #startConversationButton>\n <cometchat-button *ngIf=\"!hideStartNewConversation\"\n [iconURL]=\"startNewConversationIconURL\"\n [buttonStyle]=\"startConversationButtonStyle\"\n (cc-button-clicked)=\"triggerStartConversation()\"></cometchat-button>\n\n </ng-template>\n", styles: [".cc-with-messages__wrapper{display:flex;height:100%;width:100%;box-sizing:border-box;overflow:hidden}.cc-with-messages__sidebar{width:280px;height:100%;position:relative}.cc-with-messages__main,.cc-with-messages__start-conversation{width:calc(100% - 280px);height:100%}.mobile{width:100%!important;height:100%;position:absolute}.cc-decorator__message--empty{display:flex;justify-content:center;align-items:center}\n"], components: [{ type: CometChatConversationsComponent, selector: "cometchat-conversations", inputs: ["subtitleView", "title", "options", "searchPlaceHolder", "disableUsersPresence", "disableReceipt", "hideReceipt", "disableTyping", "deliveredIcon", "readIcon", "errorIcon", "datePattern", "onError", "sentIcon", "privateGroupIcon", "protectedGroupIcon", "passwordGroupIcon", "customSoundForMessages", "activeConversation", "searchIconURL", "hideSearch", "conversationsRequestBuilder", "emptyStateView", "onSelect", "loadingIconURL", "errorStateView", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "listItemView", "menu", "hideSeparator", "searchPlaceholder", "hideError", "selectionMode", "disableSoundForMessages", "confirmDialogTitle", "confirmButtonText", "cancelButtonText", "confirmDialogMessage", "onItemClick", "deleteConversationDialogStyle", "backdropStyle", "badgeStyle", "dateStyle", "conversationsStyle", "listItemStyle", "statusIndicatorStyle", "typingIndicatorText", "threadIndicatorText", "avatarStyle", "receiptStyle", "loggedInUser", "disableMentions", "textFormatters"] }, { type: CometChatMessagesComponent, selector: "cometchat-messages", inputs: ["user", "group", "currentAskAIBot", "hideMessageComposer", "disableTyping", "messageHeaderConfiguration", "messageListConfiguration", "messageComposerConfiguration", "threadedMessageConfiguration", "detailsConfiguration", "customSoundForIncomingMessages", "customSoundForOutgoingMessages", "disableSoundForMessages", "messagesStyle", "messageHeaderView", "messageComposerView", "messageListView", "hideMessageHeader", "hideDetails", "auxiliaryMenu"] }, { type: CometChatContactsComponent, selector: "cometchat-contacts", inputs: ["title", "usersTabTitle", "groupsTabTitle", "usersConfiguration", "groupsConfiguration", "onSubmitButtonClick", "closeIconURL", "contactsStyle", "selectionMode", "onClose", "onItemClick", "tabVisibility", "selectionLimit", "tabs", "hideSubmitButton", "submitButtonText"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18769
+ CometChatConversationsWithMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatConversationsWithMessagesComponent, selector: "cometchat-conversations-with-messages", inputs: { user: "user", group: "group", isMobileView: "isMobileView", messageText: "messageText", conversationsWithMessagesStyle: "conversationsWithMessagesStyle", messagesConfiguration: "messagesConfiguration", conversationConfiguration: "conversationConfiguration", onError: "onError", startNewConversationIconURL: "startNewConversationIconURL", hideStartNewConversation: "hideStartNewConversation", StartConversationConfiguration: "StartConversationConfiguration" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-with-messages__wrapper\" [ngStyle]=\"chatsWrapperStyles()\">\n <div class=\"cc-with-messages__sidebar\" [ngClass]=\"{mobile : isMobileView}\"\n [ngStyle]=\"sideBarStyle\">\n <cometchat-conversations #conversationRef\n [activeConversation]=\"activeConversation\"\n [onItemClick]=\"conversationConfiguration.onItemClick || onItemClick\"\n [conversationsStyle]=\"conversationConfiguration.conversationsStyle\"\n [statusIndicatorStyle]=\"conversationConfiguration?.statusIndicatorStyle\"\n [avatarStyle]=\"conversationConfiguration?.avatarStyle!\"\n [subtitleView]=\"conversationConfiguration.subtitleView\"\n [options]=\"conversationConfiguration.options\"\n [disableUsersPresence]=\"conversationConfiguration.disableUsersPresence\"\n [disableReceipt]=\"conversationConfiguration.disableReceipt\"\n [hideReceipt]=\"conversationConfiguration.hideReceipt\"\n [disableTyping]=\"conversationConfiguration.disableTyping\"\n [deliveredIcon]=\"conversationConfiguration.deliveredIcon\"\n [readIcon]=\"conversationConfiguration.readIcon\"\n [waitIcon]=\"conversationConfiguration.waitIcon\"\n [errorIcon]=\"conversationConfiguration.errorIcon\"\n [datePattern]=\"conversationConfiguration.datePattern\"\n [receiptStyle]=\"conversationConfiguration.receiptStyle\"\n [sentIcon]=\"conversationConfiguration.sentIcon\"\n [privateGroupIcon]=\"conversationConfiguration.privateGroupIcon\"\n [protectedGroupIcon]=\"conversationConfiguration.protectedGroupIcon\"\n [passwordGroupIcon]=\"conversationConfiguration.passwordGroupIcon\"\n [customSoundForMessages]=\"conversationConfiguration.customSoundForMessages\"\n [conversationsRequestBuilder]=\"conversationConfiguration.conversationsRequestBuilder\"\n [emptyStateView]=\"conversationConfiguration.emptyStateView\"\n [onSelect]=\"conversationConfiguration.onSelect\"\n [loadingIconURL]=\"conversationConfiguration.loadingIconURL\"\n [errorStateView]=\"conversationConfiguration.errorStateView\"\n [loadingStateView]=\"conversationConfiguration.loadingStateView\"\n [titleAlignment]=\"conversationConfiguration.titleAlignment\"\n [listItemView]=\"conversationConfiguration.listItemView\"\n [menu]=\"conversationConfiguration.menu || startConversationButton\"\n [hideSeparator]=\"conversationConfiguration.hideSeparator\"\n [hideError]=\"conversationConfiguration.hideError\"\n [selectionMode]=\"conversationConfiguration.selectionMode\"\n [disableSoundForMessages]=\"conversationConfiguration.disableSoundForMessages\"\n [deleteConversationDialogStyle]=\"conversationConfiguration.deleteConversationDialogStyle\"\n [badgeStyle]=\"conversationConfiguration.badgeStyle\"\n [dateStyle]=\"conversationConfiguration.dateStyle\"\n [listItemStyle]=\"conversationConfiguration.listItemStyle\"\n [backdropStyle]=\"conversationConfiguration.backdropStyle\"\n [textFormatters]=\"conversationConfiguration?.textFormatters\"\n [disableMentions]=\"conversationConfiguration.disableMentions\"></cometchat-conversations>\n </div>\n <div class=\"cc-with-messages__main\" [ngClass]=\"{mobile : isMobileView}\"\n *ngIf=\"!showStartConversation && (user || group)\">\n <!--Message List Screen-->\n <cometchat-messages #messagesRef [user]=\"user!\" [group]=\"group!\"\n [messageHeaderConfiguration]=\"messagesConfiguration.messageHeaderConfiguration\"\n [messageListConfiguration]=\"messagesConfiguration.messageListConfiguration\"\n [messageComposerConfiguration]=\"messagesConfiguration.messageComposerConfiguration\"\n [messagesStyle]=\"messagesConfiguration.messagesStyle\"\n [customSoundForIncomingMessages]=\"messagesConfiguration.customSoundForIncomingMessages\"\n [customSoundForOutgoingMessages]=\"messagesConfiguration.customSoundForOutgoingMessages\"\n [detailsConfiguration]=\"messagesConfiguration.detailsConfiguration\"\n [disableSoundForMessages]=\"messagesConfiguration.disableSoundForMessages\"\n [disableTyping]=\"messagesConfiguration.disableTyping\"\n [hideMessageComposer]=\"messagesConfiguration.hideMessageComposer\"\n [hideMessageHeader]=\"messagesConfiguration.hideMessageHeader\"\n [messageComposerView]=\"messagesConfiguration.messageComposerView\"\n [messageHeaderView]=\"messagesConfiguration.messageHeaderView\"\n [messageListView]=\"messagesConfiguration.messageListView\"\n [hideDetails]=\"messagesConfiguration.hideDetails!\"\n [threadedMessageConfiguration]=\"messagesConfiguration.threadedMessageConfiguration\">\n </cometchat-messages>\n <!--Message List Screen ENDS-->\n </div>\n <div class=\"cc-with-messages__start-conversation\"\n [ngStyle]=\"contactsWrapperStyles()\"\n [ngClass]=\"{mobile : isMobileView}\" *ngIf=\"showStartConversation\">\n\n <cometchat-contacts [onItemClick]=\"onContactClicked\"\n [usersConfiguration]=\"StartConversationConfiguration?.usersConfiguration!\"\n [groupsConfiguration]=\"StartConversationConfiguration?.groupsConfiguration!\"\n [closeIconURL]=\"StartConversationConfiguration?.closeIconURL!\"\n [contactsStyle]=\"StartConversationConfiguration?.contactsStyle!\"\n [selectionMode]=\"StartConversationConfiguration?.selectionMode!\"\n [onClose]=\"closeStartConversation\"\n [tabVisibility]=\"StartConversationConfiguration?.tabVisibility!\"\n [selectionLimit]=\"StartConversationConfiguration?.selectionLimit!\"\n [tabs]=\"StartConversationConfiguration?.tabs!\"\n [onSubmitButtonClick]=\"StartConversationConfiguration?.onSubmitButtonClick!\"\n [hideSubmitButton]=\"StartConversationConfiguration?.hideSubmitButton!\"></cometchat-contacts>\n </div>\n <div class=\"cc-decorator__message--empty\"\n *ngIf=\"!user && !group && !showStartConversation\"\n [ngStyle]=\"emptyMessageStyle()\">\n <cometchat-label [text]=\"messageText\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n </div>\n <ng-template #startConversationButton>\n <cometchat-button *ngIf=\"!hideStartNewConversation\"\n [iconURL]=\"startNewConversationIconURL\"\n [buttonStyle]=\"startConversationButtonStyle\"\n (cc-button-clicked)=\"triggerStartConversation()\"></cometchat-button>\n\n </ng-template>\n", styles: [".cc-with-messages__wrapper{display:flex;height:100%;width:100%;box-sizing:border-box;overflow:hidden}.cc-with-messages__sidebar{width:280px;height:100%;position:relative}.cc-with-messages__main,.cc-with-messages__start-conversation{width:calc(100% - 280px);height:100%}.mobile{width:100%!important;height:100%;position:absolute}.cc-decorator__message--empty{display:flex;justify-content:center;align-items:center}\n"], components: [{ type: CometChatConversationsComponent, selector: "cometchat-conversations", inputs: ["subtitleView", "title", "options", "searchPlaceHolder", "disableUsersPresence", "disableReceipt", "hideReceipt", "disableTyping", "deliveredIcon", "readIcon", "errorIcon", "datePattern", "onError", "sentIcon", "privateGroupIcon", "protectedGroupIcon", "passwordGroupIcon", "customSoundForMessages", "activeConversation", "searchIconURL", "hideSearch", "conversationsRequestBuilder", "emptyStateView", "onSelect", "loadingIconURL", "errorStateView", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "listItemView", "menu", "hideSeparator", "searchPlaceholder", "hideError", "selectionMode", "disableSoundForMessages", "confirmDialogTitle", "confirmButtonText", "cancelButtonText", "confirmDialogMessage", "onItemClick", "deleteConversationDialogStyle", "backdropStyle", "badgeStyle", "dateStyle", "conversationsStyle", "listItemStyle", "statusIndicatorStyle", "typingIndicatorText", "threadIndicatorText", "avatarStyle", "receiptStyle", "loggedInUser", "disableMentions", "textFormatters"] }, { type: CometChatMessagesComponent, selector: "cometchat-messages", inputs: ["user", "group", "currentAskAIBot", "hideMessageComposer", "disableTyping", "messageHeaderConfiguration", "messageListConfiguration", "messageComposerConfiguration", "threadedMessageConfiguration", "detailsConfiguration", "customSoundForIncomingMessages", "customSoundForOutgoingMessages", "disableSoundForMessages", "messagesStyle", "messageHeaderView", "messageComposerView", "messageListView", "hideMessageHeader", "hideDetails", "auxiliaryMenu"] }, { type: CometChatContactsComponent, selector: "cometchat-contacts", inputs: ["title", "usersTabTitle", "groupsTabTitle", "usersConfiguration", "groupsConfiguration", "onSubmitButtonClick", "closeIconURL", "contactsStyle", "selectionMode", "onClose", "onItemClick", "tabVisibility", "selectionLimit", "tabs", "hideSubmitButton", "submitButtonText"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18665
18770
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatConversationsWithMessagesComponent, decorators: [{
18666
18771
  type: Component,
18667
- args: [{ selector: "cometchat-conversations-with-messages", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-with-messages__wrapper\" [ngStyle]=\"chatsWrapperStyles()\">\n <div class=\"cc-with-messages__sidebar\" [ngClass]=\"{mobile : isMobileView}\"\n [ngStyle]=\"sideBarStyle\">\n <cometchat-conversations #conversationRef\n [activeConversation]=\"activeConversation\"\n [onItemClick]=\"conversationConfiguration.onItemClick || onItemClick\"\n [conversationsStyle]=\"conversationConfiguration.conversationsStyle\"\n [statusIndicatorStyle]=\"conversationConfiguration?.statusIndicatorStyle\"\n [avatarStyle]=\"conversationConfiguration?.avatarStyle!\"\n [subtitleView]=\"conversationConfiguration.subtitleView\"\n [options]=\"conversationConfiguration.options\"\n [disableUsersPresence]=\"conversationConfiguration.disableUsersPresence\"\n [disableReceipt]=\"conversationConfiguration.disableReceipt\"\n [hideReceipt]=\"conversationConfiguration.hideReceipt\"\n [disableTyping]=\"conversationConfiguration.disableTyping\"\n [deliveredIcon]=\"conversationConfiguration.deliveredIcon\"\n [readIcon]=\"conversationConfiguration.readIcon\"\n [waitIcon]=\"conversationConfiguration.waitIcon\"\n [errorIcon]=\"conversationConfiguration.errorIcon\"\n [datePattern]=\"conversationConfiguration.datePattern\"\n [receiptStyle]=\"conversationConfiguration.receiptStyle\"\n [sentIcon]=\"conversationConfiguration.sentIcon\"\n [privateGroupIcon]=\"conversationConfiguration.privateGroupIcon\"\n [protectedGroupIcon]=\"conversationConfiguration.protectedGroupIcon\"\n [passwordGroupIcon]=\"conversationConfiguration.passwordGroupIcon\"\n [customSoundForMessages]=\"conversationConfiguration.customSoundForMessages\"\n [conversationsRequestBuilder]=\"conversationConfiguration.conversationsRequestBuilder\"\n [emptyStateView]=\"conversationConfiguration.emptyStateView\"\n [onSelect]=\"conversationConfiguration.onSelect\"\n [loadingIconURL]=\"conversationConfiguration.loadingIconURL\"\n [errorStateView]=\"conversationConfiguration.errorStateView\"\n [loadingStateView]=\"conversationConfiguration.loadingStateView\"\n [titleAlignment]=\"conversationConfiguration.titleAlignment\"\n [listItemView]=\"conversationConfiguration.listItemView\"\n [menu]=\"conversationConfiguration.menu || startConversationButton\"\n [hideSeparator]=\"conversationConfiguration.hideSeparator\"\n [hideError]=\"conversationConfiguration.hideError\"\n [selectionMode]=\"conversationConfiguration.selectionMode\"\n [disableSoundForMessages]=\"conversationConfiguration.disableSoundForMessages\"\n [deleteConversationDialogStyle]=\"conversationConfiguration.deleteConversationDialogStyle\"\n [badgeStyle]=\"conversationConfiguration.badgeStyle\"\n [dateStyle]=\"conversationConfiguration.dateStyle\"\n [listItemStyle]=\"conversationConfiguration.listItemStyle\"\n [backdropStyle]=\"conversationConfiguration.backdropStyle\"\n [textFormatters]=\"conversationConfiguration?.textFormatters\"\n [disableMentions]=\"conversationConfiguration.disableMentions\"></cometchat-conversations>\n </div>\n <div class=\"cc-with-messages__main\" [ngClass]=\"{mobile : isMobileView}\"\n *ngIf=\"!showStartConversation && (user || group)\">\n <!--Message List Screen-->\n <cometchat-messages #messagesRef [user]=\"user!\" [group]=\"group!\"\n [messageHeaderConfiguration]=\"messagesConfiguration.messageHeaderConfiguration\"\n [messageListConfiguration]=\"messagesConfiguration.messageListConfiguration\"\n [messageComposerConfiguration]=\"messagesConfiguration.messageComposerConfiguration\"\n [messagesStyle]=\"messagesConfiguration.messagesStyle\"\n [customSoundForIncomingMessages]=\"messagesConfiguration.customSoundForIncomingMessages\"\n [customSoundForOutgoingMessages]=\"messagesConfiguration.customSoundForOutgoingMessages\"\n [detailsConfiguration]=\"messagesConfiguration.detailsConfiguration\"\n [disableSoundForMessages]=\"messagesConfiguration.disableSoundForMessages\"\n [disableTyping]=\"messagesConfiguration.disableTyping\"\n [hideMessageComposer]=\"messagesConfiguration.hideMessageComposer\"\n [hideMessageHeader]=\"messagesConfiguration.hideMessageHeader\"\n [messageComposerView]=\"messagesConfiguration.messageComposerView\"\n [messageHeaderView]=\"messagesConfiguration.messageHeaderView\"\n [messageListView]=\"messagesConfiguration.messageListView\"\n [hideDetails]=\"messagesConfiguration.hideDetails!\"\n [threadedMessageConfiguration]=\"messagesConfiguration.threadedMessageConfiguration\">\n </cometchat-messages>\n <!--Message List Screen ENDS-->\n </div>\n <div class=\"cc-with-messages__start-conversation\"\n [ngStyle]=\"contactsWrapperStyles()\"\n [ngClass]=\"{mobile : isMobileView}\" *ngIf=\"showStartConversation\">\n\n <cometchat-contacts [onItemClick]=\"onContactClicked\"\n [usersConfiguration]=\"StartConversationConfiguration?.usersConfiguration!\"\n [groupsConfiguration]=\"StartConversationConfiguration?.groupsConfiguration!\"\n [closeIconURL]=\"StartConversationConfiguration?.closeIconURL!\"\n [contactsStyle]=\"StartConversationConfiguration?.contactsStyle!\"\n [selectionMode]=\"StartConversationConfiguration?.selectionMode!\"\n [onClose]=\"closeStartConversation\"\n [tabVisibility]=\"StartConversationConfiguration?.tabVisibility!\"\n [selectionLimit]=\"StartConversationConfiguration?.selectionLimit!\"\n [tabs]=\"StartConversationConfiguration?.tabs!\"\n [hideSubmitButton]=\"StartConversationConfiguration?.hideSubmitButton!\"></cometchat-contacts>\n </div>\n <div class=\"cc-decorator__message--empty\"\n *ngIf=\"!user && !group && !showStartConversation\"\n [ngStyle]=\"emptyMessageStyle()\">\n <cometchat-label [text]=\"messageText\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n </div>\n <ng-template #startConversationButton>\n <cometchat-button *ngIf=\"!hideStartNewConversation\"\n [iconURL]=\"startNewConversationIconURL\"\n [buttonStyle]=\"startConversationButtonStyle\"\n (cc-button-clicked)=\"triggerStartConversation()\"></cometchat-button>\n\n </ng-template>\n", styles: [".cc-with-messages__wrapper{display:flex;height:100%;width:100%;box-sizing:border-box;overflow:hidden}.cc-with-messages__sidebar{width:280px;height:100%;position:relative}.cc-with-messages__main,.cc-with-messages__start-conversation{width:calc(100% - 280px);height:100%}.mobile{width:100%!important;height:100%;position:absolute}.cc-decorator__message--empty{display:flex;justify-content:center;align-items:center}\n"] }]
18772
+ args: [{ selector: "cometchat-conversations-with-messages", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-with-messages__wrapper\" [ngStyle]=\"chatsWrapperStyles()\">\n <div class=\"cc-with-messages__sidebar\" [ngClass]=\"{mobile : isMobileView}\"\n [ngStyle]=\"sideBarStyle\">\n <cometchat-conversations #conversationRef\n [activeConversation]=\"activeConversation\"\n [onItemClick]=\"conversationConfiguration.onItemClick || onItemClick\"\n [conversationsStyle]=\"conversationConfiguration.conversationsStyle\"\n [statusIndicatorStyle]=\"conversationConfiguration?.statusIndicatorStyle\"\n [avatarStyle]=\"conversationConfiguration?.avatarStyle!\"\n [subtitleView]=\"conversationConfiguration.subtitleView\"\n [options]=\"conversationConfiguration.options\"\n [disableUsersPresence]=\"conversationConfiguration.disableUsersPresence\"\n [disableReceipt]=\"conversationConfiguration.disableReceipt\"\n [hideReceipt]=\"conversationConfiguration.hideReceipt\"\n [disableTyping]=\"conversationConfiguration.disableTyping\"\n [deliveredIcon]=\"conversationConfiguration.deliveredIcon\"\n [readIcon]=\"conversationConfiguration.readIcon\"\n [waitIcon]=\"conversationConfiguration.waitIcon\"\n [errorIcon]=\"conversationConfiguration.errorIcon\"\n [datePattern]=\"conversationConfiguration.datePattern\"\n [receiptStyle]=\"conversationConfiguration.receiptStyle\"\n [sentIcon]=\"conversationConfiguration.sentIcon\"\n [privateGroupIcon]=\"conversationConfiguration.privateGroupIcon\"\n [protectedGroupIcon]=\"conversationConfiguration.protectedGroupIcon\"\n [passwordGroupIcon]=\"conversationConfiguration.passwordGroupIcon\"\n [customSoundForMessages]=\"conversationConfiguration.customSoundForMessages\"\n [conversationsRequestBuilder]=\"conversationConfiguration.conversationsRequestBuilder\"\n [emptyStateView]=\"conversationConfiguration.emptyStateView\"\n [onSelect]=\"conversationConfiguration.onSelect\"\n [loadingIconURL]=\"conversationConfiguration.loadingIconURL\"\n [errorStateView]=\"conversationConfiguration.errorStateView\"\n [loadingStateView]=\"conversationConfiguration.loadingStateView\"\n [titleAlignment]=\"conversationConfiguration.titleAlignment\"\n [listItemView]=\"conversationConfiguration.listItemView\"\n [menu]=\"conversationConfiguration.menu || startConversationButton\"\n [hideSeparator]=\"conversationConfiguration.hideSeparator\"\n [hideError]=\"conversationConfiguration.hideError\"\n [selectionMode]=\"conversationConfiguration.selectionMode\"\n [disableSoundForMessages]=\"conversationConfiguration.disableSoundForMessages\"\n [deleteConversationDialogStyle]=\"conversationConfiguration.deleteConversationDialogStyle\"\n [badgeStyle]=\"conversationConfiguration.badgeStyle\"\n [dateStyle]=\"conversationConfiguration.dateStyle\"\n [listItemStyle]=\"conversationConfiguration.listItemStyle\"\n [backdropStyle]=\"conversationConfiguration.backdropStyle\"\n [textFormatters]=\"conversationConfiguration?.textFormatters\"\n [disableMentions]=\"conversationConfiguration.disableMentions\"></cometchat-conversations>\n </div>\n <div class=\"cc-with-messages__main\" [ngClass]=\"{mobile : isMobileView}\"\n *ngIf=\"!showStartConversation && (user || group)\">\n <!--Message List Screen-->\n <cometchat-messages #messagesRef [user]=\"user!\" [group]=\"group!\"\n [messageHeaderConfiguration]=\"messagesConfiguration.messageHeaderConfiguration\"\n [messageListConfiguration]=\"messagesConfiguration.messageListConfiguration\"\n [messageComposerConfiguration]=\"messagesConfiguration.messageComposerConfiguration\"\n [messagesStyle]=\"messagesConfiguration.messagesStyle\"\n [customSoundForIncomingMessages]=\"messagesConfiguration.customSoundForIncomingMessages\"\n [customSoundForOutgoingMessages]=\"messagesConfiguration.customSoundForOutgoingMessages\"\n [detailsConfiguration]=\"messagesConfiguration.detailsConfiguration\"\n [disableSoundForMessages]=\"messagesConfiguration.disableSoundForMessages\"\n [disableTyping]=\"messagesConfiguration.disableTyping\"\n [hideMessageComposer]=\"messagesConfiguration.hideMessageComposer\"\n [hideMessageHeader]=\"messagesConfiguration.hideMessageHeader\"\n [messageComposerView]=\"messagesConfiguration.messageComposerView\"\n [messageHeaderView]=\"messagesConfiguration.messageHeaderView\"\n [messageListView]=\"messagesConfiguration.messageListView\"\n [hideDetails]=\"messagesConfiguration.hideDetails!\"\n [threadedMessageConfiguration]=\"messagesConfiguration.threadedMessageConfiguration\">\n </cometchat-messages>\n <!--Message List Screen ENDS-->\n </div>\n <div class=\"cc-with-messages__start-conversation\"\n [ngStyle]=\"contactsWrapperStyles()\"\n [ngClass]=\"{mobile : isMobileView}\" *ngIf=\"showStartConversation\">\n\n <cometchat-contacts [onItemClick]=\"onContactClicked\"\n [usersConfiguration]=\"StartConversationConfiguration?.usersConfiguration!\"\n [groupsConfiguration]=\"StartConversationConfiguration?.groupsConfiguration!\"\n [closeIconURL]=\"StartConversationConfiguration?.closeIconURL!\"\n [contactsStyle]=\"StartConversationConfiguration?.contactsStyle!\"\n [selectionMode]=\"StartConversationConfiguration?.selectionMode!\"\n [onClose]=\"closeStartConversation\"\n [tabVisibility]=\"StartConversationConfiguration?.tabVisibility!\"\n [selectionLimit]=\"StartConversationConfiguration?.selectionLimit!\"\n [tabs]=\"StartConversationConfiguration?.tabs!\"\n [onSubmitButtonClick]=\"StartConversationConfiguration?.onSubmitButtonClick!\"\n [hideSubmitButton]=\"StartConversationConfiguration?.hideSubmitButton!\"></cometchat-contacts>\n </div>\n <div class=\"cc-decorator__message--empty\"\n *ngIf=\"!user && !group && !showStartConversation\"\n [ngStyle]=\"emptyMessageStyle()\">\n <cometchat-label [text]=\"messageText\"\n [labelStyle]=\"labelStyle\"></cometchat-label>\n </div>\n <ng-template #startConversationButton>\n <cometchat-button *ngIf=\"!hideStartNewConversation\"\n [iconURL]=\"startNewConversationIconURL\"\n [buttonStyle]=\"startConversationButtonStyle\"\n (cc-button-clicked)=\"triggerStartConversation()\"></cometchat-button>\n\n </ng-template>\n", styles: [".cc-with-messages__wrapper{display:flex;height:100%;width:100%;box-sizing:border-box;overflow:hidden}.cc-with-messages__sidebar{width:280px;height:100%;position:relative}.cc-with-messages__main,.cc-with-messages__start-conversation{width:calc(100% - 280px);height:100%}.mobile{width:100%!important;height:100%;position:absolute}.cc-decorator__message--empty{display:flex;justify-content:center;align-items:center}\n"] }]
18668
18773
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { user: [{
18669
18774
  type: Input
18670
18775
  }], group: [{
@@ -19082,9 +19187,9 @@ class CometChatGroupsWithMessagesComponent {
19082
19187
  this.ref.detectChanges();
19083
19188
  return;
19084
19189
  }
19085
- CometChat.joinGroup(group).then(() => {
19190
+ CometChat.joinGroup(group).then((groupJoined) => {
19086
19191
  CometChatGroupEvents.ccGroupMemberJoined.next({
19087
- joinedGroup: group,
19192
+ joinedGroup: groupJoined,
19088
19193
  joinedUser: this.loggedInUser
19089
19194
  });
19090
19195
  group.setHasJoined(true);
@@ -19202,6 +19307,7 @@ class CometChatGroupsWithMessagesComponent {
19202
19307
  border: this.groupsWithMessagesStyle.border,
19203
19308
  borderRadius: this.groupsWithMessagesStyle.borderRadius,
19204
19309
  background: this.groupsWithMessagesStyle.background || this.themeService.theme.palette.getBackground(),
19310
+ position: 'relative'
19205
19311
  };
19206
19312
  };
19207
19313
  }
@@ -19263,8 +19369,13 @@ class CometChatGroupsWithMessagesComponent {
19263
19369
  this.openCreateGroupPage = true;
19264
19370
  }
19265
19371
  updateBackdropHeight() {
19266
- const divHeight = this.elementRef.nativeElement.offsetHeight;
19267
- const divWidth = this.elementRef.nativeElement.offsetWidth;
19372
+ let divHeight = this.elementRef.nativeElement.offsetHeight;
19373
+ let divWidth = this.elementRef.nativeElement.offsetWidth;
19374
+ if (divHeight === 0 || divWidth === 0) {
19375
+ const rect = this.elementRef.nativeElement.getBoundingClientRect();
19376
+ divHeight = rect.height;
19377
+ divWidth = rect.width;
19378
+ }
19268
19379
  let backdropStyle = {
19269
19380
  height: divHeight + "px",
19270
19381
  width: divWidth + "px",
@@ -19574,6 +19685,7 @@ class CometChatUsersWithMessagesComponent {
19574
19685
  border: this.usersWithMessagesStyle.border,
19575
19686
  borderRadius: this.usersWithMessagesStyle.borderRadius,
19576
19687
  background: this.usersWithMessagesStyle.background || this.themeService.theme.palette.getBackground(),
19688
+ position: 'relative'
19577
19689
  };
19578
19690
  };
19579
19691
  }
@@ -19581,8 +19693,13 @@ class CometChatUsersWithMessagesComponent {
19581
19693
  this.updateBackdropHeight();
19582
19694
  }
19583
19695
  updateBackdropHeight() {
19584
- const divHeight = this.elementRef.nativeElement.offsetHeight;
19585
- const divWidth = this.elementRef.nativeElement.offsetWidth;
19696
+ let divHeight = this.elementRef.nativeElement.offsetHeight;
19697
+ let divWidth = this.elementRef.nativeElement.offsetWidth;
19698
+ if (divHeight === 0 || divWidth === 0) {
19699
+ const rect = this.elementRef.nativeElement.getBoundingClientRect();
19700
+ divHeight = rect.height;
19701
+ divWidth = rect.width;
19702
+ }
19586
19703
  let backdropStyle = {
19587
19704
  height: divHeight + "px",
19588
19705
  width: divWidth + "px",
@@ -21813,8 +21930,13 @@ class CometChatCallLogsWithDetailsComponent {
21813
21930
  }
21814
21931
  }
21815
21932
  updateBackdropHeight() {
21816
- const divHeight = this.elementRef.nativeElement.offsetHeight;
21817
- const divWidth = this.elementRef.nativeElement.offsetWidth;
21933
+ let divHeight = this.elementRef.nativeElement.offsetHeight;
21934
+ let divWidth = this.elementRef.nativeElement.offsetWidth;
21935
+ if (divHeight === 0 || divWidth === 0) {
21936
+ const rect = this.elementRef.nativeElement.getBoundingClientRect();
21937
+ divHeight = rect.height;
21938
+ divWidth = rect.width;
21939
+ }
21818
21940
  this.backdropStyle = {
21819
21941
  height: divHeight + "px",
21820
21942
  width: divWidth + "px",