@cometchat/chat-uikit-angular 4.3.0 → 4.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CometChatContacts/cometchat-contacts/cometchat-contacts.component.d.ts +1 -0
- package/CometChatConversations/cometchat-conversations/cometchat-conversations.component.d.ts +3 -1
- package/CometChatConversationsWithMessages/cometchat-conversations-with-messages/cometchat-conversations-with-messages.component.d.ts +4 -1
- package/CometChatDetails/cometchat-details/cometchat-details.component.d.ts +1 -2
- package/CometChatMessageComposer/cometchat-message-composer/cometchat-message-composer.component.d.ts +2 -2
- package/CometChatMessageList/cometchat-message-list/cometchat-message-list.component.d.ts +4 -0
- package/Shared/Framework/DataSource.d.ts +3 -3
- package/Shared/Framework/DataSourceDecorator.d.ts +3 -3
- package/Shared/Utils/MessageUtils.d.ts +3 -3
- package/esm2020/Calls/CometChatCallButtons/cometchat-call-buttons/cometchat-call-buttons.component.mjs +12 -8
- package/esm2020/Calls/CometChatCallLogs/cometchat-call-logs/cometchat-call-logs.component.mjs +10 -6
- package/esm2020/CometChatContacts/cometchat-contacts/cometchat-contacts.component.mjs +5 -4
- package/esm2020/CometChatConversations/cometchat-conversations/cometchat-conversations.component.mjs +46 -15
- package/esm2020/CometChatConversationsWithMessages/cometchat-conversations-with-messages/cometchat-conversations-with-messages.component.mjs +38 -9
- package/esm2020/CometChatDetails/cometchat-details/cometchat-details.component.mjs +11 -25
- package/esm2020/CometChatMessageComposer/cometchat-message-composer/cometchat-message-composer.component.mjs +11 -7
- package/esm2020/CometChatMessageList/cometchat-message-list/cometchat-message-list.component.mjs +205 -46
- package/esm2020/CometChatUsers/cometchat-users/cometchat-users.component.mjs +2 -2
- package/esm2020/Extensions/TextModerator/TextModeratorExtensionDecorator.mjs +3 -3
- package/esm2020/Shared/CometChatUIkit/CometChatUIKit.mjs +39 -7
- package/esm2020/Shared/Framework/DataSource.mjs +1 -1
- package/esm2020/Shared/Framework/DataSourceDecorator.mjs +1 -1
- package/esm2020/Shared/Utils/MessageUtils.mjs +35 -33
- package/examples/sample-app/README.md +46 -0
- package/fesm2015/cometchat-chat-uikit-angular.mjs +405 -146
- package/fesm2015/cometchat-chat-uikit-angular.mjs.map +1 -1
- package/fesm2020/cometchat-chat-uikit-angular.mjs +401 -149
- package/fesm2020/cometchat-chat-uikit-angular.mjs.map +1 -1
- package/package.json +6 -6
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ConversationUtils,
|
|
1
|
+
import { ConversationUtils, CometChatMentionsFormatter, CometChatUIKitLoginListener, UserMentionStyle, CometChatUrlsFormatter, CallingDetailsUtils, ExtensionsDataSource as ExtensionsDataSource$1, CollaborativeDocumentConstants, ExtensionsId, CollaborativeWhiteboardConstants, PollsConstants, CometChatUIKitUtility, CometChatSoundManager, SmartRepliesConfiguration, StickersConstants, StickersConfiguration, CometChatUIKitSharedSettings, CometChatUIKitCalls, InteractiveMessageUtils, OutgoingCallStyle, OutgoingCallConfiguration, CallScreenConfiguration, CallButtonsStyle, StorageUtils, IncomingCallStyle, UsersStyle, AddMembersStyle, MessageHeaderStyle, ListStyle, BannedMembersStyle, MessageReceiptUtils, ConversationsStyle, MessageInformationStyle, ReactionsConfiguration, MessageInformationConfiguration, MessageTranslationConstants, MessageTranslationStyle, CalendarStyle, TimeSlotStyle, SchedulerBubbleStyle, ReactionsStyle, FormBubbleStyle, CardBubbleStyle, LinkPreviewConstants, ThumbnailGenerationConstants, MessageListStyle, LinkPreviewStyle, SmartRepliesConstants, ReactionListStyle, ReactionListConfiguration, ReactionInfoStyle, ReactionInfoConfiguration, GroupMemberUtils, GroupMembersStyle, MessageComposerStyle, MessageListConfiguration, MessageComposerConfiguration, ThreadedMessagesStyle, TransferOwnershipStyle, AddMembersConfiguration, BannedMembersConfiguration, GroupMembersConfiguration, TransferOwnershipConfiguration, DetailsUtils, DetailsStyle, MessageHeaderConfiguration, ThreadedMessagesConfiguration, DetailsConfiguration, MessagesStyle, GroupsStyle, UsersConfiguration, GroupsConfiguration, ContactsStyle, TabItemStyle, MessagesConfiguration, ConversationsConfiguration, ContactsConfiguration, WithMessagesStyle, CreateGroupConfiguration, JoinGroupConfiguration, CallLogsStyle, CallLogParticipantsStyle, CallLogRecordingsStyle, CallLogHistoryStyle, CallButtonsConfiguration, CallLogParticipantsConfiguration, CallLogHistoryConfiguration, CallLogRecordingsConfiguration, CallLogDetailsStyle, CallLogDetailsConfiguration, CallLogsConfiguration, WithDetailsStyle } from '@cometchat/uikit-shared';
|
|
2
2
|
export * from '@cometchat/uikit-shared';
|
|
3
3
|
import { CometChatMessageOption, CometChatUIKitConstants, localize, fontHelper, CometChatMessageTemplate, CometChatMessageComposerAction, MentionsTargetElement, MessageBubbleAlignment, CometChatTheme, CometChatMessageEvents, MessageStatus, CometChatUIEvents, ChatSdkEventInitializer, CometChatLocalize, CallWorkflow, CometChatCallEvents, IconButtonAlignment, TitleAlignment, States, DatePatterns, SelectionMode, UserPresencePlacement, CometChatUserEvents, CometChatGroupEvents, CometChatConversationEvents, MessageListAlignment, Receipts, TimestampAlignment, DocumentIconAlignment, Placement, UserMemberListType, AuxiliaryButtonAlignment, TabAlignment, TabsVisibility, CometChatCallDetailsTemplate, CometChatCallDetailsOption } from '@cometchat/uikit-resources';
|
|
4
4
|
export * from '@cometchat/uikit-resources';
|
|
@@ -520,38 +520,40 @@ class MessageUtils {
|
|
|
520
520
|
return actions;
|
|
521
521
|
}
|
|
522
522
|
getLastConversationMessage(conversation, loggedInUser, additionalConfigurations) {
|
|
523
|
-
let message = ConversationUtils.getLastConversationMessage(conversation, loggedInUser);
|
|
524
|
-
let messageObject = conversation.getLastMessage();
|
|
525
523
|
let config = Object.assign(Object.assign({}, additionalConfigurations), { textFormatters: (additionalConfigurations === null || additionalConfigurations === void 0 ? void 0 : additionalConfigurations.textFormatters) &&
|
|
526
524
|
(additionalConfigurations === null || additionalConfigurations === void 0 ? void 0 : additionalConfigurations.textFormatters.length)
|
|
527
525
|
? [...additionalConfigurations.textFormatters]
|
|
528
526
|
: [this.getMentionsTextFormatter({ theme: additionalConfigurations.theme, disableMentions: additionalConfigurations.disableMentions })] });
|
|
529
|
-
let
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
if (
|
|
537
|
-
mentionsTextFormatter
|
|
527
|
+
let message = ConversationUtils.getLastConversationMessage(conversation, loggedInUser, config);
|
|
528
|
+
let messageObject = conversation === null || conversation === void 0 ? void 0 : conversation.getLastMessage();
|
|
529
|
+
if (messageObject) {
|
|
530
|
+
let textFormatters = config.textFormatters;
|
|
531
|
+
if (config && !config.disableMentions) {
|
|
532
|
+
let mentionsTextFormatter;
|
|
533
|
+
for (let i = 0; i < textFormatters.length; i++) {
|
|
534
|
+
if (textFormatters[i] instanceof CometChatMentionsFormatter) {
|
|
535
|
+
mentionsTextFormatter = textFormatters[i];
|
|
536
|
+
mentionsTextFormatter.setMessage(messageObject);
|
|
537
|
+
if (messageObject.getMentionedUsers().length) {
|
|
538
|
+
mentionsTextFormatter.setCometChatUserGroupMembers(messageObject.getMentionedUsers());
|
|
539
|
+
}
|
|
540
|
+
mentionsTextFormatter.setLoggedInUser(CometChatUIKitLoginListener.getLoggedInUser());
|
|
541
|
+
}
|
|
542
|
+
if (mentionsTextFormatter) {
|
|
543
|
+
break;
|
|
538
544
|
}
|
|
539
|
-
mentionsTextFormatter.setLoggedInUser(CometChatUIKitLoginListener.getLoggedInUser());
|
|
540
545
|
}
|
|
541
|
-
if (mentionsTextFormatter) {
|
|
542
|
-
|
|
546
|
+
if (!mentionsTextFormatter) {
|
|
547
|
+
mentionsTextFormatter =
|
|
548
|
+
ChatConfigurator.getDataSource().getMentionsTextFormatter(Object.assign(Object.assign({ messageObject }, config), { alignment: null, theme: additionalConfigurations.theme }));
|
|
549
|
+
textFormatters.push(mentionsTextFormatter);
|
|
543
550
|
}
|
|
544
551
|
}
|
|
545
|
-
if (
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
}
|
|
551
|
-
if (messageObject &&
|
|
552
|
-
messageObject instanceof CometChat.TextMessage) {
|
|
553
|
-
for (let i = 0; i < textFormatters.length; i++) {
|
|
554
|
-
message = textFormatters[i].getFormattedText(message, { mentionsTargetElement: MentionsTargetElement.conversation });
|
|
552
|
+
if (messageObject &&
|
|
553
|
+
messageObject instanceof CometChat.TextMessage) {
|
|
554
|
+
for (let i = 0; i < textFormatters.length; i++) {
|
|
555
|
+
message = textFormatters[i].getFormattedText(message, { mentionsTargetElement: MentionsTargetElement.conversation });
|
|
556
|
+
}
|
|
555
557
|
}
|
|
556
558
|
}
|
|
557
559
|
return message;
|
|
@@ -604,7 +606,7 @@ class MessageUtils {
|
|
|
604
606
|
return formatters;
|
|
605
607
|
}
|
|
606
608
|
getMentionsTextFormatter(params) {
|
|
607
|
-
let mentionsTextFormatter = new
|
|
609
|
+
let mentionsTextFormatter = new CometChatMentionsFormatter();
|
|
608
610
|
if (params && params.theme) {
|
|
609
611
|
mentionsTextFormatter.setComposerMentionStyle(new UserMentionStyle({
|
|
610
612
|
loggedInUserTextFont: fontHelper(params.theme.typography.text2),
|
|
@@ -642,7 +644,7 @@ class MessageUtils {
|
|
|
642
644
|
return mentionsTextFormatter;
|
|
643
645
|
}
|
|
644
646
|
getUrlTextFormatter(params = {}) {
|
|
645
|
-
let urlTextFormatter = new
|
|
647
|
+
let urlTextFormatter = new CometChatUrlsFormatter([
|
|
646
648
|
/(https?:\/\/[^\s]+)/g,
|
|
647
649
|
]);
|
|
648
650
|
if (params.alignment == MessageBubbleAlignment.left) {
|
|
@@ -1591,7 +1593,7 @@ class TextModeratorExtensionDecorator extends DataSourceDecorator {
|
|
|
1591
1593
|
if (config && !config.disableMentions) {
|
|
1592
1594
|
let mentionsTextFormatter;
|
|
1593
1595
|
for (let i = 0; i < textFormatters.length; i++) {
|
|
1594
|
-
if (textFormatters[i] instanceof
|
|
1596
|
+
if (textFormatters[i] instanceof CometChatMentionsFormatter) {
|
|
1595
1597
|
mentionsTextFormatter = textFormatters[i];
|
|
1596
1598
|
mentionsTextFormatter.setMessage(messageObj);
|
|
1597
1599
|
if (messageObj.getMentionedUsers().length) {
|
|
@@ -1914,7 +1916,7 @@ class CometChatUIKit {
|
|
|
1914
1916
|
if (window) {
|
|
1915
1917
|
window.CometChatUiKit = {
|
|
1916
1918
|
name: "@cometchat/chat-uikit-angular",
|
|
1917
|
-
version: "4.3.
|
|
1919
|
+
version: "4.3.2",
|
|
1918
1920
|
};
|
|
1919
1921
|
}
|
|
1920
1922
|
if (CometChatUIKitSharedSettings) {
|
|
@@ -2108,6 +2110,10 @@ class CometChatUIKit {
|
|
|
2108
2110
|
* @param disableLocalEvents - A boolean indicating whether to disable local events or not. Default value is false.
|
|
2109
2111
|
*/
|
|
2110
2112
|
static sendFormMessage(message, disableLocalEvents = false) {
|
|
2113
|
+
message.setSentAt(CometChatUIKitUtility.getUnixTimestamp());
|
|
2114
|
+
if (!(message === null || message === void 0 ? void 0 : message.getMuid())) {
|
|
2115
|
+
message.setMuid(CometChatUIKitUtility.ID());
|
|
2116
|
+
}
|
|
2111
2117
|
if (!disableLocalEvents) {
|
|
2112
2118
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2113
2119
|
message: message,
|
|
@@ -2116,9 +2122,10 @@ class CometChatUIKit {
|
|
|
2116
2122
|
}
|
|
2117
2123
|
CometChat.sendInteractiveMessage(message)
|
|
2118
2124
|
.then((message) => {
|
|
2125
|
+
let interactiveMessage = InteractiveMessageUtils.convertInteractiveMessage(message);
|
|
2119
2126
|
if (!disableLocalEvents) {
|
|
2120
2127
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2121
|
-
message:
|
|
2128
|
+
message: interactiveMessage,
|
|
2122
2129
|
status: MessageStatus.success,
|
|
2123
2130
|
});
|
|
2124
2131
|
}
|
|
@@ -2134,6 +2141,10 @@ class CometChatUIKit {
|
|
|
2134
2141
|
});
|
|
2135
2142
|
}
|
|
2136
2143
|
static sendCardMessage(message, disableLocalEvents = false) {
|
|
2144
|
+
message.setSentAt(CometChatUIKitUtility.getUnixTimestamp());
|
|
2145
|
+
if (!(message === null || message === void 0 ? void 0 : message.getMuid())) {
|
|
2146
|
+
message.setMuid(CometChatUIKitUtility.ID());
|
|
2147
|
+
}
|
|
2137
2148
|
if (!disableLocalEvents) {
|
|
2138
2149
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2139
2150
|
message: message,
|
|
@@ -2142,9 +2153,10 @@ class CometChatUIKit {
|
|
|
2142
2153
|
}
|
|
2143
2154
|
CometChat.sendInteractiveMessage(message)
|
|
2144
2155
|
.then((message) => {
|
|
2156
|
+
let interactiveMessage = InteractiveMessageUtils.convertInteractiveMessage(message);
|
|
2145
2157
|
if (!disableLocalEvents) {
|
|
2146
2158
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2147
|
-
message:
|
|
2159
|
+
message: interactiveMessage,
|
|
2148
2160
|
status: MessageStatus.success,
|
|
2149
2161
|
});
|
|
2150
2162
|
}
|
|
@@ -2160,6 +2172,10 @@ class CometChatUIKit {
|
|
|
2160
2172
|
});
|
|
2161
2173
|
}
|
|
2162
2174
|
static sendCustomInteractiveMessage(message, disableLocalEvents = false) {
|
|
2175
|
+
message.setSentAt(CometChatUIKitUtility.getUnixTimestamp());
|
|
2176
|
+
if (!(message === null || message === void 0 ? void 0 : message.getMuid())) {
|
|
2177
|
+
message.setMuid(CometChatUIKitUtility.ID());
|
|
2178
|
+
}
|
|
2163
2179
|
if (!disableLocalEvents) {
|
|
2164
2180
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2165
2181
|
message: message,
|
|
@@ -2168,9 +2184,10 @@ class CometChatUIKit {
|
|
|
2168
2184
|
}
|
|
2169
2185
|
CometChat.sendInteractiveMessage(message)
|
|
2170
2186
|
.then((message) => {
|
|
2187
|
+
let interactiveMessage = InteractiveMessageUtils.convertInteractiveMessage(message);
|
|
2171
2188
|
if (!disableLocalEvents) {
|
|
2172
2189
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2173
|
-
message:
|
|
2190
|
+
message: interactiveMessage,
|
|
2174
2191
|
status: MessageStatus.success,
|
|
2175
2192
|
});
|
|
2176
2193
|
}
|
|
@@ -2189,6 +2206,10 @@ class CometChatUIKit {
|
|
|
2189
2206
|
// [sendCustomMessage] used to send a custom message
|
|
2190
2207
|
static sendCustomMessage(message) {
|
|
2191
2208
|
return new Promise((resolve, reject) => {
|
|
2209
|
+
message.setSentAt(CometChatUIKitUtility.getUnixTimestamp());
|
|
2210
|
+
if (!(message === null || message === void 0 ? void 0 : message.getMuid())) {
|
|
2211
|
+
message.setMuid(CometChatUIKitUtility.ID());
|
|
2212
|
+
}
|
|
2192
2213
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2193
2214
|
message: message,
|
|
2194
2215
|
status: MessageStatus.inprogress,
|
|
@@ -2215,6 +2236,10 @@ class CometChatUIKit {
|
|
|
2215
2236
|
// [sendTextMessage] used to send a custom message
|
|
2216
2237
|
static sendTextMessage(message) {
|
|
2217
2238
|
return new Promise((resolve, reject) => {
|
|
2239
|
+
message.setSentAt(CometChatUIKitUtility.getUnixTimestamp());
|
|
2240
|
+
if (!(message === null || message === void 0 ? void 0 : message.getMuid())) {
|
|
2241
|
+
message.setMuid(CometChatUIKitUtility.ID());
|
|
2242
|
+
}
|
|
2218
2243
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2219
2244
|
message: message,
|
|
2220
2245
|
status: MessageStatus.inprogress,
|
|
@@ -2241,6 +2266,10 @@ class CometChatUIKit {
|
|
|
2241
2266
|
// [sendMediaMessage] used to send a custom message
|
|
2242
2267
|
static sendMediaMessage(message) {
|
|
2243
2268
|
return new Promise((resolve, reject) => {
|
|
2269
|
+
message.setSentAt(CometChatUIKitUtility.getUnixTimestamp());
|
|
2270
|
+
if (!(message === null || message === void 0 ? void 0 : message.getMuid())) {
|
|
2271
|
+
message.setMuid(CometChatUIKitUtility.ID());
|
|
2272
|
+
}
|
|
2244
2273
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2245
2274
|
message: message,
|
|
2246
2275
|
status: MessageStatus.inprogress,
|
|
@@ -2269,6 +2298,10 @@ class CometChatUIKit {
|
|
|
2269
2298
|
* @param disableLocalEvents - A boolean indicating whether to disable local events or not. Default value is false.
|
|
2270
2299
|
*/
|
|
2271
2300
|
static sendSchedulerMessage(message, disableLocalEvents = false) {
|
|
2301
|
+
message.setSentAt(CometChatUIKitUtility.getUnixTimestamp());
|
|
2302
|
+
if (!(message === null || message === void 0 ? void 0 : message.getMuid())) {
|
|
2303
|
+
message.setMuid(CometChatUIKitUtility.ID());
|
|
2304
|
+
}
|
|
2272
2305
|
if (!disableLocalEvents) {
|
|
2273
2306
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2274
2307
|
message: message,
|
|
@@ -2277,9 +2310,10 @@ class CometChatUIKit {
|
|
|
2277
2310
|
}
|
|
2278
2311
|
CometChat.sendInteractiveMessage(message)
|
|
2279
2312
|
.then((message) => {
|
|
2313
|
+
let interactiveMessage = InteractiveMessageUtils.convertInteractiveMessage(message);
|
|
2280
2314
|
if (!disableLocalEvents) {
|
|
2281
2315
|
CometChatMessageEvents.ccMessageSent.next({
|
|
2282
|
-
message:
|
|
2316
|
+
message: interactiveMessage,
|
|
2283
2317
|
status: MessageStatus.success,
|
|
2284
2318
|
});
|
|
2285
2319
|
}
|
|
@@ -2907,7 +2941,7 @@ class CometChatCallButtonsComponent {
|
|
|
2907
2941
|
const conversationId = `group_${this.sessionId}`;
|
|
2908
2942
|
const customMessage = new CometChat.CustomMessage(receiverId, receiverType, customType, customData);
|
|
2909
2943
|
customMessage.setSender(this.loggedInUser);
|
|
2910
|
-
customMessage.setMetadata({ incrementUnreadCount:
|
|
2944
|
+
customMessage.setMetadata({ incrementUnreadCount: true });
|
|
2911
2945
|
customMessage.setReceiver(receiverType);
|
|
2912
2946
|
customMessage.setConversationId(conversationId);
|
|
2913
2947
|
customMessage.sentAt = CometChatUIKitUtility.getUnixTimestamp();
|
|
@@ -2953,14 +2987,18 @@ class CometChatCallButtonsComponent {
|
|
|
2953
2987
|
this.ref.detectChanges();
|
|
2954
2988
|
},
|
|
2955
2989
|
onOutgoingCallRejected: (call) => {
|
|
2956
|
-
this.
|
|
2957
|
-
|
|
2958
|
-
|
|
2959
|
-
|
|
2990
|
+
if (this.call && this.call.getSessionId() == call.getSessionId()) {
|
|
2991
|
+
this.disableButtons = false;
|
|
2992
|
+
this.call = null;
|
|
2993
|
+
this.showOutgoingCallscreen = false;
|
|
2994
|
+
this.ref.detectChanges();
|
|
2995
|
+
}
|
|
2960
2996
|
},
|
|
2961
2997
|
onOutgoingCallAccepted: (call) => {
|
|
2962
|
-
this.call
|
|
2963
|
-
|
|
2998
|
+
if (this.call && this.call.getSessionId() == call.getSessionId()) {
|
|
2999
|
+
this.call = call;
|
|
3000
|
+
this.openOngoingCallScreen(call);
|
|
3001
|
+
}
|
|
2964
3002
|
},
|
|
2965
3003
|
onCallEndedMessageReceived: (call) => {
|
|
2966
3004
|
this.disableButtons = false;
|
|
@@ -3855,7 +3893,7 @@ class CometChatUsersComponent {
|
|
|
3855
3893
|
this.state = States.loading;
|
|
3856
3894
|
this.selectionmodeEnum = SelectionMode;
|
|
3857
3895
|
this.usersList = [];
|
|
3858
|
-
this.limit =
|
|
3896
|
+
this.limit = 30;
|
|
3859
3897
|
this.userListenerId = "userlist_" + new Date().getTime();
|
|
3860
3898
|
this.firstReload = false;
|
|
3861
3899
|
this.connectionListenerId = "connection_" + new Date().getTime();
|
|
@@ -5789,7 +5827,7 @@ class CometChatConversationsComponent {
|
|
|
5789
5827
|
borderRadius: "",
|
|
5790
5828
|
};
|
|
5791
5829
|
this.listItemStyle = {
|
|
5792
|
-
height: "
|
|
5830
|
+
height: "97%",
|
|
5793
5831
|
width: "100%",
|
|
5794
5832
|
};
|
|
5795
5833
|
this.statusIndicatorStyle = {
|
|
@@ -6241,7 +6279,8 @@ class CometChatConversationsComponent {
|
|
|
6241
6279
|
return image;
|
|
6242
6280
|
}
|
|
6243
6281
|
getDate() {
|
|
6244
|
-
|
|
6282
|
+
var _a;
|
|
6283
|
+
return (_a = this.datePattern) !== null && _a !== void 0 ? _a : DatePatterns.DayDateTime;
|
|
6245
6284
|
}
|
|
6246
6285
|
ngOnInit() {
|
|
6247
6286
|
this.firstReload = true;
|
|
@@ -6346,7 +6385,7 @@ class CometChatConversationsComponent {
|
|
|
6346
6385
|
this.ccMessageSent = CometChatMessageEvents.ccMessageSent.subscribe((obj) => {
|
|
6347
6386
|
let message = obj.message;
|
|
6348
6387
|
if (obj.status == MessageStatus.success) {
|
|
6349
|
-
this.updateConversation(message);
|
|
6388
|
+
this.updateConversation(message, false);
|
|
6350
6389
|
}
|
|
6351
6390
|
});
|
|
6352
6391
|
this.ccMessageDelete = CometChatMessageEvents.ccMessageDeleted.subscribe((messageObject) => {
|
|
@@ -6517,7 +6556,7 @@ class CometChatConversationsComponent {
|
|
|
6517
6556
|
}
|
|
6518
6557
|
setListItemStyle() {
|
|
6519
6558
|
let defaultStyle = new ListItemStyle({
|
|
6520
|
-
height: "
|
|
6559
|
+
height: "97%",
|
|
6521
6560
|
width: "100%",
|
|
6522
6561
|
background: this.themeService.theme.palette.getBackground(),
|
|
6523
6562
|
activeBackground: this.themeService.theme.palette.getAccent50(),
|
|
@@ -6684,13 +6723,22 @@ class CometChatConversationsComponent {
|
|
|
6684
6723
|
this.updateConversation(message);
|
|
6685
6724
|
},
|
|
6686
6725
|
onGroupMemberKicked: (message, kickedUser, kickedBy, kickedFrom) => {
|
|
6687
|
-
|
|
6726
|
+
var _a;
|
|
6727
|
+
if (((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid()) === kickedUser.getUid()) {
|
|
6728
|
+
this.removeConversationFromMessage(kickedFrom);
|
|
6729
|
+
}
|
|
6730
|
+
else {
|
|
6731
|
+
this.updateConversation(message);
|
|
6732
|
+
}
|
|
6688
6733
|
},
|
|
6689
6734
|
onGroupMemberBanned: (message, bannedUser, bannedBy, bannedFrom) => {
|
|
6690
|
-
|
|
6691
|
-
|
|
6692
|
-
|
|
6693
|
-
|
|
6735
|
+
var _a;
|
|
6736
|
+
if (((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid()) === bannedUser.getUid()) {
|
|
6737
|
+
this.removeConversationFromMessage(bannedFrom);
|
|
6738
|
+
}
|
|
6739
|
+
else {
|
|
6740
|
+
this.updateConversation(message);
|
|
6741
|
+
}
|
|
6694
6742
|
},
|
|
6695
6743
|
onMemberAddedToGroup: (message, userAdded, userAddedBy, userAddedIn) => {
|
|
6696
6744
|
this.updateConversation(message);
|
|
@@ -6787,6 +6835,12 @@ class CometChatConversationsComponent {
|
|
|
6787
6835
|
this.conversationList = [];
|
|
6788
6836
|
this.getConversation(States.loaded);
|
|
6789
6837
|
}
|
|
6838
|
+
removeConversationFromMessage(group) {
|
|
6839
|
+
let conversation = this.getConversationFromGroup(group);
|
|
6840
|
+
if (conversation) {
|
|
6841
|
+
this.updateConversationList(conversation);
|
|
6842
|
+
}
|
|
6843
|
+
}
|
|
6790
6844
|
/**
|
|
6791
6845
|
* Removes all listeners
|
|
6792
6846
|
*/
|
|
@@ -6822,6 +6876,7 @@ class CometChatConversationsComponent {
|
|
|
6822
6876
|
let message = conversation.getLastMessage();
|
|
6823
6877
|
if (!this.disableReceipt &&
|
|
6824
6878
|
message &&
|
|
6879
|
+
!(message === null || message === void 0 ? void 0 : message.getDeletedAt()) &&
|
|
6825
6880
|
(message === null || message === void 0 ? void 0 : message.getCategory()) !=
|
|
6826
6881
|
CometChatUIKitConstants.MessageCategory.action &&
|
|
6827
6882
|
(message === null || message === void 0 ? void 0 : message.getCategory()) != CometChatUIKitConstants.MessageCategory.call &&
|
|
@@ -6899,6 +6954,18 @@ class CometChatConversationsComponent {
|
|
|
6899
6954
|
const newMessage = message;
|
|
6900
6955
|
return newMessage;
|
|
6901
6956
|
}
|
|
6957
|
+
updateConversationWithForGroup(message, conversation) {
|
|
6958
|
+
if (message.getReceiverType() === CometChatUIKitConstants.MessageReceiverType.group &&
|
|
6959
|
+
conversation.getConversationType() === CometChatUIKitConstants.MessageReceiverType.group) {
|
|
6960
|
+
const isSameGroup = message.getReceiver().getGuid() ===
|
|
6961
|
+
message.getActionFor().getGuid();
|
|
6962
|
+
if (isSameGroup) {
|
|
6963
|
+
let updatedGroup = conversation.getConversationWith();
|
|
6964
|
+
updatedGroup.setMembersCount(message.getActionFor().getMembersCount());
|
|
6965
|
+
conversation.setConversationWith(updatedGroup);
|
|
6966
|
+
}
|
|
6967
|
+
}
|
|
6968
|
+
}
|
|
6902
6969
|
/**
|
|
6903
6970
|
*
|
|
6904
6971
|
* Updates Conversations as Text/Custom Messages are received
|
|
@@ -6917,7 +6984,7 @@ class CometChatConversationsComponent {
|
|
|
6917
6984
|
try {
|
|
6918
6985
|
this.makeConversation(message)
|
|
6919
6986
|
.then((response) => {
|
|
6920
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
6987
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
6921
6988
|
const conversationKey = response.conversationKey;
|
|
6922
6989
|
const conversationObj = response.conversationObj;
|
|
6923
6990
|
const conversationList = response.conversationList;
|
|
@@ -6932,6 +6999,9 @@ class CometChatConversationsComponent {
|
|
|
6932
6999
|
: this.makeUnreadMessageCount(conversationObj) - 1;
|
|
6933
7000
|
let lastMessageObj = this.makeLastMessage(message, conversationObj);
|
|
6934
7001
|
let newConversationObj = conversationObj;
|
|
7002
|
+
if (message instanceof CometChat.Action) {
|
|
7003
|
+
this.updateConversationWithForGroup(message, newConversationObj);
|
|
7004
|
+
}
|
|
6935
7005
|
newConversationObj.setLastMessage(lastMessageObj);
|
|
6936
7006
|
newConversationObj.setUnreadMessageCount(unreadMessageCount);
|
|
6937
7007
|
if (lastMessageObj.getSender().getUid() != ((_c = this.loggedInUser) === null || _c === void 0 ? void 0 : _c.getUid())) {
|
|
@@ -6952,7 +7022,6 @@ class CometChatConversationsComponent {
|
|
|
6952
7022
|
// : 0
|
|
6953
7023
|
// );
|
|
6954
7024
|
}
|
|
6955
|
-
newConversationObj.getLastMessage();
|
|
6956
7025
|
conversationList.splice(conversationKey, 1);
|
|
6957
7026
|
conversationList.unshift(newConversationObj);
|
|
6958
7027
|
this.conversationList = [...conversationList];
|
|
@@ -6966,15 +7035,18 @@ class CometChatConversationsComponent {
|
|
|
6966
7035
|
}
|
|
6967
7036
|
}
|
|
6968
7037
|
else {
|
|
7038
|
+
let incrementCount = ((_h = this.loggedInUser) === null || _h === void 0 ? void 0 : _h.getUid()) != message.getSender().getUid() ? 1 : 0;
|
|
6969
7039
|
let lastMessageObj = this.makeLastMessage(message);
|
|
6970
7040
|
conversationObj.setLastMessage(lastMessageObj);
|
|
6971
|
-
|
|
7041
|
+
if (message instanceof CometChat.Action) {
|
|
7042
|
+
this.updateConversationWithForGroup(message, conversationObj);
|
|
7043
|
+
}
|
|
7044
|
+
conversationObj.setUnreadMessageCount(incrementCount);
|
|
6972
7045
|
conversationList.unshift(conversationObj);
|
|
6973
7046
|
this.conversationList = conversationList;
|
|
6974
7047
|
this.ref.detectChanges();
|
|
6975
|
-
// this.ref.detectChanges()
|
|
6976
7048
|
if (notification &&
|
|
6977
|
-
((
|
|
7049
|
+
((_j = this.loggedInUser) === null || _j === void 0 ? void 0 : _j.getUid()) != ((_k = message === null || message === void 0 ? void 0 : message.getSender()) === null || _k === void 0 ? void 0 : _k.getUid())) {
|
|
6978
7050
|
this.playAudio();
|
|
6979
7051
|
this.ref.detectChanges();
|
|
6980
7052
|
}
|
|
@@ -7229,10 +7301,10 @@ class CometChatConversationsComponent {
|
|
|
7229
7301
|
}
|
|
7230
7302
|
}
|
|
7231
7303
|
CometChatConversationsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatConversationsComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: CometChatThemeService }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
7232
|
-
CometChatConversationsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatConversationsComponent, selector: "cometchat-conversations", inputs: { subtitleView: "subtitleView", title: "title", options: "options", searchPlaceHolder: "searchPlaceHolder", disableUsersPresence: "disableUsersPresence", disableReceipt: "disableReceipt", disableTyping: "disableTyping", deliveredIcon: "deliveredIcon", readIcon: "readIcon", errorIcon: "errorIcon", datePattern: "datePattern", onError: "onError", sentIcon: "sentIcon", privateGroupIcon: "privateGroupIcon", protectedGroupIcon: "protectedGroupIcon", customSoundForMessages: "customSoundForMessages", activeConversation: "activeConversation", searchIconURL: "searchIconURL", hideSearch: "hideSearch", conversationsRequestBuilder: "conversationsRequestBuilder", emptyStateView: "emptyStateView", onSelect: "onSelect", loadingIconURL: "loadingIconURL", errorStateView: "errorStateView", loadingStateView: "loadingStateView", emptyStateText: "emptyStateText", errorStateText: "errorStateText", titleAlignment: "titleAlignment", listItemView: "listItemView", menu: "menu", hideSeparator: "hideSeparator", searchPlaceholder: "searchPlaceholder", hideError: "hideError", selectionMode: "selectionMode", disableSoundForMessages: "disableSoundForMessages", confirmDialogTitle: "confirmDialogTitle", confirmButtonText: "confirmButtonText", cancelButtonText: "cancelButtonText", confirmDialogMessage: "confirmDialogMessage", onItemClick: "onItemClick", deleteConversationDialogStyle: "deleteConversationDialogStyle", backdropStyle: "backdropStyle", badgeStyle: "badgeStyle", dateStyle: "dateStyle", conversationsStyle: "conversationsStyle", listItemStyle: "listItemStyle", statusIndicatorStyle: "statusIndicatorStyle", typingIndicatorText: "typingIndicatorText", threadIndicatorText: "threadIndicatorText", avatarStyle: "avatarStyle", receiptStyle: "receiptStyle", loggedInUser: "loggedInUser", disableMentions: "disableMentions", textFormatters: "textFormatters" }, usesOnChanges: true, ngImport: i0, template: "<div
|
|
7304
|
+
CometChatConversationsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatConversationsComponent, selector: "cometchat-conversations", inputs: { subtitleView: "subtitleView", title: "title", options: "options", searchPlaceHolder: "searchPlaceHolder", disableUsersPresence: "disableUsersPresence", disableReceipt: "disableReceipt", disableTyping: "disableTyping", deliveredIcon: "deliveredIcon", readIcon: "readIcon", errorIcon: "errorIcon", datePattern: "datePattern", onError: "onError", sentIcon: "sentIcon", privateGroupIcon: "privateGroupIcon", protectedGroupIcon: "protectedGroupIcon", customSoundForMessages: "customSoundForMessages", activeConversation: "activeConversation", searchIconURL: "searchIconURL", hideSearch: "hideSearch", conversationsRequestBuilder: "conversationsRequestBuilder", emptyStateView: "emptyStateView", onSelect: "onSelect", loadingIconURL: "loadingIconURL", errorStateView: "errorStateView", loadingStateView: "loadingStateView", emptyStateText: "emptyStateText", errorStateText: "errorStateText", titleAlignment: "titleAlignment", listItemView: "listItemView", menu: "menu", hideSeparator: "hideSeparator", searchPlaceholder: "searchPlaceholder", hideError: "hideError", selectionMode: "selectionMode", disableSoundForMessages: "disableSoundForMessages", confirmDialogTitle: "confirmDialogTitle", confirmButtonText: "confirmButtonText", cancelButtonText: "cancelButtonText", confirmDialogMessage: "confirmDialogMessage", onItemClick: "onItemClick", deleteConversationDialogStyle: "deleteConversationDialogStyle", backdropStyle: "backdropStyle", badgeStyle: "badgeStyle", dateStyle: "dateStyle", conversationsStyle: "conversationsStyle", listItemStyle: "listItemStyle", statusIndicatorStyle: "statusIndicatorStyle", typingIndicatorText: "typingIndicatorText", threadIndicatorText: "threadIndicatorText", avatarStyle: "avatarStyle", receiptStyle: "receiptStyle", loggedInUser: "loggedInUser", disableMentions: "disableMentions", textFormatters: "textFormatters" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cc-conversations\" [ngStyle]=\"styles.wrapperStyle()\">\n <cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"isDialogOpen\">\n <cometchat-confirm-dialog [title]=\"confirmDialogTitle\"\n [messageText]=\"confirmDialogMessage\" [cancelButtonText]=\"cancelButtonText\"\n [confirmButtonText]=\"confirmButtonText\"\n (cc-confirm-clicked)=\"onConfirmClick()\"\n (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"deleteConversationDialogStyle\">\n </cometchat-confirm-dialog>\n </cometchat-backdrop>\n <div class=\"cc-conversations__menus\" *ngIf=\"menu\">\n\n <ng-container *ngTemplateOutlet=\"menu\">\n </ng-container>\n\n </div>\n <cometchat-list [state]=\"state\" [searchIconURL]=\"searchIconURL\"\n [hideError]=\"hideError\" [emptyStateText]=\"emptyStateText\"\n [loadingIconURL]=\"loadingIconURL\" [titleAlignment]=\"titleAlignment\"\n [loadingView]=\"loadingStateView\" [listStyle]=\"listStyle\"\n [emptyStateView]=\"emptyStateView\" [errorStateText]=\"errorStateText\"\n [errorView]=\"errorStateView\" [onScrolledToBottom]=\"getConversation\"\n [list]=\"conversationList\"\n [listItemView]=\"listItemView ? listItemView : listItem\" [title]=\"title\"\n [hideSearch]=\"hideSearch\"></cometchat-list>\n</div>\n<ng-template #listItem let-conversation>\n <cometchat-list-item [hideSeparator]=\"hideSeparator\"\n [avatarStyle]=\"avatarStyle\"\n [statusIndicatorStyle]=\"setStatusIndicatorStyle(conversation)\"\n [id]=\"conversation?.conversationId\"\n [isActive]=\"getActiveConversation(conversation)\"\n (cc-listitem-clicked)=\"onClick(conversation)\"\n [title]=\"conversation?.conversationWith?.name\"\n [statusIndicatorIcon]=\"checkGroupType(conversation)\"\n [statusIndicatorColor]=\"checkStatusType(conversation)\"\n [listItemStyle]=\"listItemStyle\"\n [avatarURL]=\"conversation?.conversationWith?.avatar\"\n [avatarName]=\"conversation?.conversationWith?.name\">\n <div slot=\"subtitleView\" *ngIf=\"subtitleView;else conversationSubtitle\">\n <ng-container *ngTemplateOutlet=\"subtitleView\">\n </ng-container>\n </div>\n <ng-template #conversationSubtitle>\n\n <div class=\"cc-conversations__subtitle-view \" slot=\"subtitleView\">\n <div class=\"cc-conversations__threadview\"\n *ngIf=\"conversation?.lastMessage?.parentMessageId\">\n <cometchat-label [labelStyle]=\"itemThreadIndicatorStyle()\"\n [text]=\"threadIndicatorText\"> </cometchat-label>\n <cometchat-icon [URL]=\"threadIconURL\"\n [iconStyle]=\"iconStyle\"></cometchat-icon>\n\n </div>\n <div class=\"cc-conversations__subtitle\">\n <div class=\"cc-conversations__readreceipt\"\n *ngIf=\"isReceiptDisable(conversation)\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(conversation)\"\n [receiptStyle]=\"receiptStyle\" [sentIcon]=\"sentIcon\"\n [errorIcon]=\"errorIcon\" [deliveredIcon]=\"deliveredIcon\"\n [readIcon]=\"readIcon\"></cometchat-receipt>\n </div>\n\n <div [ngStyle]=\"subtitleStyle(conversation)\" class=\"cc-subtitle__text\"\n [innerHTML]=\"setSubtitle(conversation)\"></div>\n </div>\n\n </div>\n </ng-template>\n <div slot=\"menuView\" class=\"cc-conversations__optionsview\"\n *ngIf=\"selectionMode == selectionmodeEnum.none\">\n <div *ngIf=\"options\">\n <cometchat-menu-list [data]=\"options(conversation)\"\n (cc-menu-clicked)=\"onOptionClick($event,conversation)\"\n [menuListStyle]=\"menustyle\">\n\n </cometchat-menu-list>\n </div>\n <div *ngIf=\"!options && conversationOptions\">\n <cometchat-menu-list [data]=\"conversationOptions\"\n (cc-menu-clicked)=\"onOptionClick($event,conversation)\"\n [menuListStyle]=\"menustyle\">\n\n </cometchat-menu-list>\n </div>\n </div>\n <div slot=\"tailView\" class=\"cc-conversations__tail-view\">\n <div class=\"tail__view\" *ngIf=\"selectionMode == selectionmodeEnum.none\">\n <div class=\"cc-date\">\n <cometchat-date [dateStyle]=\"dateStyle\"\n [timestamp]=\"conversation?.lastMessage?.sentAt\"\n [pattern]=\"getDate()\"></cometchat-date>\n </div>\n <div class=\"cc-conversations__badge\">\n <!-- <cometchat-icon *ngIf=\"conversation?.getUnreadMentionInMessageCount()\" [ngStyle]=\"getUnreadMentionsIconStyle()\" [iconStyle]=getMentionIconStyle() [URL]=\"mentionsIconURL\"></cometchat-icon> -->\n <cometchat-badge [count]=\"conversation?.unreadMessageCount\"\n [badgeStyle]=\"badgeStyle\"></cometchat-badge>\n </div>\n </div>\n <div class=\"cc-conversations__selection-view\"\n *ngIf=\"selectionMode != selectionmodeEnum.none\">\n <ng-container *ngTemplateOutlet=\"tailView\">\n </ng-container>\n </div>\n </div>\n </cometchat-list-item>\n <ng-template #tailView>\n <div *ngIf=\"selectionMode == selectionmodeEnum.single\">\n <cometchat-radio-button\n (cc-radio-button-changed)=\"onConversationSelected(conversation,$event)\"></cometchat-radio-button>\n </div>\n <div *ngIf=\"selectionMode == selectionmodeEnum.multiple\">\n <cometchat-checkbox\n (cc-checkbox-changed)=\"onConversationSelected(conversation,$event)\"></cometchat-checkbox>\n </div>\n </ng-template>\n</ng-template>\n", styles: [".cc-conversations{height:100%;width:100%;box-sizing:border-box;margin-bottom:16px;position:relative}.cc-conversations__selection-view{position:relative}.tail__view{display:flex;flex-direction:column;justify-content:flex-start;align-items:center}.cc-subtitle__text{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.cc-conversations__menus{position:absolute;right:12px;padding:4px;cursor:pointer}.cc-menus__icon{height:24px;width:24px}.cc-conversations__subtitle-view{display:flex;align-items:center;width:90%;flex-direction:column;justify-content:flex-start}.cc-conversations__subtitle{display:flex;justify-content:flex-start;width:100%;align-items:center;min-height:22px}.cc-conversations__threadview{height:12px;display:flex;justify-content:flex-start;width:100%;align-items:center}.cc-conversations__badge{display:flex;align-items:flex-end;justify-content:flex-end;width:100%;padding-right:8px}cometchat-list-item{padding:0 8px}\n"], components: [{ type: CometchatListComponent, selector: "cometchat-list", inputs: ["listItemView", "onScrolledToBottom", "onScrolledToTop", "list", "onSearch", "getSectionHeader", "searchText", "searchIconURL", "listStyle", "searchPlaceholderText", "hideSearch", "hideError", "title", "titleAlignment", "errorStateView", "loadingStateView", "emptyStateView", "state", "errorStateText", "emptyStateText", "loadingIconURL", "showSectionHeader", "sectionHeaderField", "DateSeparatorPattern", "dateSeparatorStyle"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7233
7305
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatConversationsComponent, decorators: [{
|
|
7234
7306
|
type: Component,
|
|
7235
|
-
args: [{ selector: "cometchat-conversations", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div
|
|
7307
|
+
args: [{ selector: "cometchat-conversations", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-conversations\" [ngStyle]=\"styles.wrapperStyle()\">\n <cometchat-backdrop [backdropStyle]=\"backdropStyle\" *ngIf=\"isDialogOpen\">\n <cometchat-confirm-dialog [title]=\"confirmDialogTitle\"\n [messageText]=\"confirmDialogMessage\" [cancelButtonText]=\"cancelButtonText\"\n [confirmButtonText]=\"confirmButtonText\"\n (cc-confirm-clicked)=\"onConfirmClick()\"\n (cc-cancel-clicked)=\"onCancelClick()\"\n [confirmDialogStyle]=\"deleteConversationDialogStyle\">\n </cometchat-confirm-dialog>\n </cometchat-backdrop>\n <div class=\"cc-conversations__menus\" *ngIf=\"menu\">\n\n <ng-container *ngTemplateOutlet=\"menu\">\n </ng-container>\n\n </div>\n <cometchat-list [state]=\"state\" [searchIconURL]=\"searchIconURL\"\n [hideError]=\"hideError\" [emptyStateText]=\"emptyStateText\"\n [loadingIconURL]=\"loadingIconURL\" [titleAlignment]=\"titleAlignment\"\n [loadingView]=\"loadingStateView\" [listStyle]=\"listStyle\"\n [emptyStateView]=\"emptyStateView\" [errorStateText]=\"errorStateText\"\n [errorView]=\"errorStateView\" [onScrolledToBottom]=\"getConversation\"\n [list]=\"conversationList\"\n [listItemView]=\"listItemView ? listItemView : listItem\" [title]=\"title\"\n [hideSearch]=\"hideSearch\"></cometchat-list>\n</div>\n<ng-template #listItem let-conversation>\n <cometchat-list-item [hideSeparator]=\"hideSeparator\"\n [avatarStyle]=\"avatarStyle\"\n [statusIndicatorStyle]=\"setStatusIndicatorStyle(conversation)\"\n [id]=\"conversation?.conversationId\"\n [isActive]=\"getActiveConversation(conversation)\"\n (cc-listitem-clicked)=\"onClick(conversation)\"\n [title]=\"conversation?.conversationWith?.name\"\n [statusIndicatorIcon]=\"checkGroupType(conversation)\"\n [statusIndicatorColor]=\"checkStatusType(conversation)\"\n [listItemStyle]=\"listItemStyle\"\n [avatarURL]=\"conversation?.conversationWith?.avatar\"\n [avatarName]=\"conversation?.conversationWith?.name\">\n <div slot=\"subtitleView\" *ngIf=\"subtitleView;else conversationSubtitle\">\n <ng-container *ngTemplateOutlet=\"subtitleView\">\n </ng-container>\n </div>\n <ng-template #conversationSubtitle>\n\n <div class=\"cc-conversations__subtitle-view \" slot=\"subtitleView\">\n <div class=\"cc-conversations__threadview\"\n *ngIf=\"conversation?.lastMessage?.parentMessageId\">\n <cometchat-label [labelStyle]=\"itemThreadIndicatorStyle()\"\n [text]=\"threadIndicatorText\"> </cometchat-label>\n <cometchat-icon [URL]=\"threadIconURL\"\n [iconStyle]=\"iconStyle\"></cometchat-icon>\n\n </div>\n <div class=\"cc-conversations__subtitle\">\n <div class=\"cc-conversations__readreceipt\"\n *ngIf=\"isReceiptDisable(conversation)\">\n <cometchat-receipt [receipt]=\"getMessageReceipt(conversation)\"\n [receiptStyle]=\"receiptStyle\" [sentIcon]=\"sentIcon\"\n [errorIcon]=\"errorIcon\" [deliveredIcon]=\"deliveredIcon\"\n [readIcon]=\"readIcon\"></cometchat-receipt>\n </div>\n\n <div [ngStyle]=\"subtitleStyle(conversation)\" class=\"cc-subtitle__text\"\n [innerHTML]=\"setSubtitle(conversation)\"></div>\n </div>\n\n </div>\n </ng-template>\n <div slot=\"menuView\" class=\"cc-conversations__optionsview\"\n *ngIf=\"selectionMode == selectionmodeEnum.none\">\n <div *ngIf=\"options\">\n <cometchat-menu-list [data]=\"options(conversation)\"\n (cc-menu-clicked)=\"onOptionClick($event,conversation)\"\n [menuListStyle]=\"menustyle\">\n\n </cometchat-menu-list>\n </div>\n <div *ngIf=\"!options && conversationOptions\">\n <cometchat-menu-list [data]=\"conversationOptions\"\n (cc-menu-clicked)=\"onOptionClick($event,conversation)\"\n [menuListStyle]=\"menustyle\">\n\n </cometchat-menu-list>\n </div>\n </div>\n <div slot=\"tailView\" class=\"cc-conversations__tail-view\">\n <div class=\"tail__view\" *ngIf=\"selectionMode == selectionmodeEnum.none\">\n <div class=\"cc-date\">\n <cometchat-date [dateStyle]=\"dateStyle\"\n [timestamp]=\"conversation?.lastMessage?.sentAt\"\n [pattern]=\"getDate()\"></cometchat-date>\n </div>\n <div class=\"cc-conversations__badge\">\n <!-- <cometchat-icon *ngIf=\"conversation?.getUnreadMentionInMessageCount()\" [ngStyle]=\"getUnreadMentionsIconStyle()\" [iconStyle]=getMentionIconStyle() [URL]=\"mentionsIconURL\"></cometchat-icon> -->\n <cometchat-badge [count]=\"conversation?.unreadMessageCount\"\n [badgeStyle]=\"badgeStyle\"></cometchat-badge>\n </div>\n </div>\n <div class=\"cc-conversations__selection-view\"\n *ngIf=\"selectionMode != selectionmodeEnum.none\">\n <ng-container *ngTemplateOutlet=\"tailView\">\n </ng-container>\n </div>\n </div>\n </cometchat-list-item>\n <ng-template #tailView>\n <div *ngIf=\"selectionMode == selectionmodeEnum.single\">\n <cometchat-radio-button\n (cc-radio-button-changed)=\"onConversationSelected(conversation,$event)\"></cometchat-radio-button>\n </div>\n <div *ngIf=\"selectionMode == selectionmodeEnum.multiple\">\n <cometchat-checkbox\n (cc-checkbox-changed)=\"onConversationSelected(conversation,$event)\"></cometchat-checkbox>\n </div>\n </ng-template>\n</ng-template>\n", styles: [".cc-conversations{height:100%;width:100%;box-sizing:border-box;margin-bottom:16px;position:relative}.cc-conversations__selection-view{position:relative}.tail__view{display:flex;flex-direction:column;justify-content:flex-start;align-items:center}.cc-subtitle__text{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.cc-conversations__menus{position:absolute;right:12px;padding:4px;cursor:pointer}.cc-menus__icon{height:24px;width:24px}.cc-conversations__subtitle-view{display:flex;align-items:center;width:90%;flex-direction:column;justify-content:flex-start}.cc-conversations__subtitle{display:flex;justify-content:flex-start;width:100%;align-items:center;min-height:22px}.cc-conversations__threadview{height:12px;display:flex;justify-content:flex-start;width:100%;align-items:center}.cc-conversations__badge{display:flex;align-items:flex-end;justify-content:flex-end;width:100%;padding-right:8px}cometchat-list-item{padding:0 8px}\n"] }]
|
|
7236
7308
|
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: CometChatThemeService }, { type: i2.DomSanitizer }]; }, propDecorators: { subtitleView: [{
|
|
7237
7309
|
type: Input
|
|
7238
7310
|
}], title: [{
|
|
@@ -8588,6 +8660,126 @@ class CometChatMessageListComponent {
|
|
|
8588
8660
|
bubblePadding: "8px 12px"
|
|
8589
8661
|
};
|
|
8590
8662
|
};
|
|
8663
|
+
/*
|
|
8664
|
+
* isPartOfCurrentChatForUIEvent: To check if the message belongs for this list and is not part of thread even for current list
|
|
8665
|
+
it only runs for UI event because it assumes logged in user is always sender
|
|
8666
|
+
* @param: message: CometChat.BaseMessage
|
|
8667
|
+
*/
|
|
8668
|
+
this.isPartOfCurrentChatForUIEvent = (message) => {
|
|
8669
|
+
const receiverId = message === null || message === void 0 ? void 0 : message.getReceiverId();
|
|
8670
|
+
const receiverType = message === null || message === void 0 ? void 0 : message.getReceiverType();
|
|
8671
|
+
if (this.parentMessageId) {
|
|
8672
|
+
if (message.getParentMessageId() === this.parentMessageId) {
|
|
8673
|
+
return true;
|
|
8674
|
+
}
|
|
8675
|
+
else {
|
|
8676
|
+
return false;
|
|
8677
|
+
}
|
|
8678
|
+
}
|
|
8679
|
+
else {
|
|
8680
|
+
if (message.getParentMessageId()) {
|
|
8681
|
+
return false;
|
|
8682
|
+
}
|
|
8683
|
+
if (this.user) {
|
|
8684
|
+
if (receiverType === CometChatUIKitConstants.MessageReceiverType.user && receiverId === this.user.getUid()) {
|
|
8685
|
+
return true;
|
|
8686
|
+
}
|
|
8687
|
+
}
|
|
8688
|
+
else if (this.group) {
|
|
8689
|
+
if (receiverType === CometChatUIKitConstants.MessageReceiverType.group && receiverId === this.group.getGuid()) {
|
|
8690
|
+
return true;
|
|
8691
|
+
}
|
|
8692
|
+
}
|
|
8693
|
+
return false;
|
|
8694
|
+
}
|
|
8695
|
+
};
|
|
8696
|
+
/*
|
|
8697
|
+
* isPartOfCurrentChatForSDKEvent: To check if the message belongs for this list and is not part of thread even for current list
|
|
8698
|
+
it only runs for SDK event because it needs senderId to check if the message is sent by the same user
|
|
8699
|
+
* @param: message: CometChat.BaseMessage
|
|
8700
|
+
*/
|
|
8701
|
+
this.isPartOfCurrentChatForSDKEvent = (message) => {
|
|
8702
|
+
var _a;
|
|
8703
|
+
const receiverId = message === null || message === void 0 ? void 0 : message.getReceiverId();
|
|
8704
|
+
const receiverType = message === null || message === void 0 ? void 0 : message.getReceiverType();
|
|
8705
|
+
const senderId = (_a = message === null || message === void 0 ? void 0 : message.getSender()) === null || _a === void 0 ? void 0 : _a.getUid();
|
|
8706
|
+
if (this.parentMessageId) {
|
|
8707
|
+
if (message.getParentMessageId() === this.parentMessageId) {
|
|
8708
|
+
return true;
|
|
8709
|
+
}
|
|
8710
|
+
else {
|
|
8711
|
+
return false;
|
|
8712
|
+
}
|
|
8713
|
+
}
|
|
8714
|
+
else {
|
|
8715
|
+
if (message.getParentMessageId()) {
|
|
8716
|
+
return false;
|
|
8717
|
+
}
|
|
8718
|
+
if (this.user) {
|
|
8719
|
+
if (receiverType === CometChatUIKitConstants.MessageReceiverType.user && (receiverId === this.user.getUid() || senderId === this.user.getUid())) {
|
|
8720
|
+
return true;
|
|
8721
|
+
}
|
|
8722
|
+
else {
|
|
8723
|
+
return false;
|
|
8724
|
+
}
|
|
8725
|
+
}
|
|
8726
|
+
else if (this.group) {
|
|
8727
|
+
if (receiverType === CometChatUIKitConstants.MessageReceiverType.group && (receiverId === this.group.getGuid())) {
|
|
8728
|
+
return true;
|
|
8729
|
+
}
|
|
8730
|
+
else {
|
|
8731
|
+
return false;
|
|
8732
|
+
}
|
|
8733
|
+
}
|
|
8734
|
+
return false;
|
|
8735
|
+
}
|
|
8736
|
+
};
|
|
8737
|
+
/*
|
|
8738
|
+
* isThreadOfCurrentChatForUIEvent: To check if the message belongs thread of this list,
|
|
8739
|
+
it only runs for UI event because it assumes logged in user is always sender
|
|
8740
|
+
* @param: message: CometChat.BaseMessage
|
|
8741
|
+
*/
|
|
8742
|
+
this.isThreadOfCurrentChatForUIEvent = (message) => {
|
|
8743
|
+
if (!message.getParentMessageId()) {
|
|
8744
|
+
return false;
|
|
8745
|
+
}
|
|
8746
|
+
const receiverId = message === null || message === void 0 ? void 0 : message.getReceiverId();
|
|
8747
|
+
if (this.user) {
|
|
8748
|
+
if (receiverId === this.user.getUid()) {
|
|
8749
|
+
return true;
|
|
8750
|
+
}
|
|
8751
|
+
}
|
|
8752
|
+
else if (this.group) {
|
|
8753
|
+
if (receiverId === this.group.getGuid()) {
|
|
8754
|
+
return true;
|
|
8755
|
+
}
|
|
8756
|
+
}
|
|
8757
|
+
return false;
|
|
8758
|
+
};
|
|
8759
|
+
/*
|
|
8760
|
+
* isThreadOfCurrentChatForSDKEvent: To check if the message belongs thread of this list,
|
|
8761
|
+
it only runs for SDK event because it needs senderId to check if the message is sent by the same user
|
|
8762
|
+
* @param: message: CometChat.BaseMessage
|
|
8763
|
+
*/
|
|
8764
|
+
this.isThreadOfCurrentChatForSDKEvent = (message) => {
|
|
8765
|
+
var _a;
|
|
8766
|
+
if (!message.getParentMessageId()) {
|
|
8767
|
+
return false;
|
|
8768
|
+
}
|
|
8769
|
+
const receiverId = message === null || message === void 0 ? void 0 : message.getReceiverId();
|
|
8770
|
+
const senderId = (_a = message === null || message === void 0 ? void 0 : message.getSender()) === null || _a === void 0 ? void 0 : _a.getUid();
|
|
8771
|
+
if (this.user) {
|
|
8772
|
+
if (receiverId === this.user.getUid() || senderId === this.user.getUid()) {
|
|
8773
|
+
return true;
|
|
8774
|
+
}
|
|
8775
|
+
}
|
|
8776
|
+
else if (this.group) {
|
|
8777
|
+
if (receiverId === this.group.getGuid()) {
|
|
8778
|
+
return true;
|
|
8779
|
+
}
|
|
8780
|
+
}
|
|
8781
|
+
return false;
|
|
8782
|
+
};
|
|
8591
8783
|
this.startDirectCall = (sessionId) => {
|
|
8592
8784
|
this.sessionId = sessionId;
|
|
8593
8785
|
this.showOngoingCall = true;
|
|
@@ -8961,7 +9153,7 @@ class CometChatMessageListComponent {
|
|
|
8961
9153
|
this.messageReceivedHandler = (message) => {
|
|
8962
9154
|
++this.messageCount;
|
|
8963
9155
|
if (message.getParentMessageId()) {
|
|
8964
|
-
this.updateReplyCount(message);
|
|
9156
|
+
// this.updateReplyCount(message);
|
|
8965
9157
|
this.updateUnreadReplyCount(message);
|
|
8966
9158
|
this.addMessage(message);
|
|
8967
9159
|
}
|
|
@@ -9127,7 +9319,7 @@ class CometChatMessageListComponent {
|
|
|
9127
9319
|
++this.messageCount;
|
|
9128
9320
|
// add received message to messages list
|
|
9129
9321
|
if (message.getParentMessageId()) {
|
|
9130
|
-
this.updateReplyCount(message);
|
|
9322
|
+
// this.updateReplyCount(message);
|
|
9131
9323
|
this.updateUnreadReplyCount(message);
|
|
9132
9324
|
this.addMessage(message);
|
|
9133
9325
|
}
|
|
@@ -9210,7 +9402,7 @@ class CometChatMessageListComponent {
|
|
|
9210
9402
|
if (!this.disableMentions) {
|
|
9211
9403
|
let mentionsTextFormatter;
|
|
9212
9404
|
for (let i = 0; i < textFormatters.length; i++) {
|
|
9213
|
-
if (textFormatters[i] instanceof
|
|
9405
|
+
if (textFormatters[i] instanceof CometChatMentionsFormatter) {
|
|
9214
9406
|
mentionsTextFormatter = textFormatters[i];
|
|
9215
9407
|
mentionsTextFormatter.setMessage(message);
|
|
9216
9408
|
if (message.getMentionedUsers().length) {
|
|
@@ -9221,7 +9413,7 @@ class CometChatMessageListComponent {
|
|
|
9221
9413
|
break;
|
|
9222
9414
|
}
|
|
9223
9415
|
}
|
|
9224
|
-
if (textFormatters[i] instanceof
|
|
9416
|
+
if (textFormatters[i] instanceof CometChatUrlsFormatter) {
|
|
9225
9417
|
urlTextFormatter = textFormatters[i];
|
|
9226
9418
|
if (mentionsTextFormatter) {
|
|
9227
9419
|
break;
|
|
@@ -9236,7 +9428,7 @@ class CometChatMessageListComponent {
|
|
|
9236
9428
|
}
|
|
9237
9429
|
else {
|
|
9238
9430
|
for (let i = 0; i < textFormatters.length; i++) {
|
|
9239
|
-
if (textFormatters[i] instanceof
|
|
9431
|
+
if (textFormatters[i] instanceof CometChatUrlsFormatter) {
|
|
9240
9432
|
urlTextFormatter = textFormatters[i];
|
|
9241
9433
|
break;
|
|
9242
9434
|
}
|
|
@@ -9258,17 +9450,15 @@ class CometChatMessageListComponent {
|
|
|
9258
9450
|
// public methods
|
|
9259
9451
|
this.addMessage = (message) => {
|
|
9260
9452
|
var _a, _b;
|
|
9261
|
-
|
|
9262
|
-
|
|
9263
|
-
|
|
9264
|
-
|
|
9265
|
-
|
|
9266
|
-
|
|
9267
|
-
|
|
9268
|
-
|
|
9269
|
-
|
|
9270
|
-
this.ref.detectChanges();
|
|
9271
|
-
}
|
|
9453
|
+
this.messagesList.push(message);
|
|
9454
|
+
if (message.getId()) {
|
|
9455
|
+
this.lastMessageId = Number(message.getId());
|
|
9456
|
+
}
|
|
9457
|
+
if (!(message === null || message === void 0 ? void 0 : message.getSender()) ||
|
|
9458
|
+
((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid()) == ((_b = message === null || message === void 0 ? void 0 : message.getSender()) === null || _b === void 0 ? void 0 : _b.getUid()) ||
|
|
9459
|
+
this.isOnBottom) {
|
|
9460
|
+
this.scrollToBottom();
|
|
9461
|
+
this.ref.detectChanges();
|
|
9272
9462
|
}
|
|
9273
9463
|
if (this.state != States.loaded) {
|
|
9274
9464
|
this.state = States.loaded;
|
|
@@ -11035,19 +11225,29 @@ class CometChatMessageListComponent {
|
|
|
11035
11225
|
if (this.enableCalling) {
|
|
11036
11226
|
CometChat.addCallListener(this.callListenerId, new CometChat.CallListener({
|
|
11037
11227
|
onIncomingCallReceived: (call) => {
|
|
11038
|
-
this.
|
|
11228
|
+
if (this.isPartOfCurrentChatForSDKEvent(call)) {
|
|
11229
|
+
this.addMessage(call);
|
|
11230
|
+
}
|
|
11039
11231
|
},
|
|
11040
11232
|
onIncomingCallCancelled: (call) => {
|
|
11041
|
-
this.
|
|
11233
|
+
if (this.isPartOfCurrentChatForSDKEvent(call)) {
|
|
11234
|
+
this.addMessage(call);
|
|
11235
|
+
}
|
|
11042
11236
|
},
|
|
11043
11237
|
onOutgoingCallRejected: (call) => {
|
|
11044
|
-
this.
|
|
11238
|
+
if (this.isPartOfCurrentChatForSDKEvent(call)) {
|
|
11239
|
+
this.addMessage(call);
|
|
11240
|
+
}
|
|
11045
11241
|
},
|
|
11046
11242
|
onOutgoingCallAccepted: (call) => {
|
|
11047
|
-
this.
|
|
11243
|
+
if (this.isPartOfCurrentChatForSDKEvent(call)) {
|
|
11244
|
+
this.addMessage(call);
|
|
11245
|
+
}
|
|
11048
11246
|
},
|
|
11049
11247
|
onCallEndedMessageReceived: (call) => {
|
|
11050
|
-
this.
|
|
11248
|
+
if (this.isPartOfCurrentChatForSDKEvent(call)) {
|
|
11249
|
+
this.addMessage(call);
|
|
11250
|
+
}
|
|
11051
11251
|
},
|
|
11052
11252
|
}));
|
|
11053
11253
|
}
|
|
@@ -11158,7 +11358,12 @@ class CometChatMessageListComponent {
|
|
|
11158
11358
|
switch (key) {
|
|
11159
11359
|
case CometChatUIKitConstants.messages.TEXT_MESSAGE_RECEIVED:
|
|
11160
11360
|
case CometChatUIKitConstants.messages.MEDIA_MESSAGE_RECEIVED:
|
|
11161
|
-
this.
|
|
11361
|
+
if (this.isPartOfCurrentChatForSDKEvent(message)) {
|
|
11362
|
+
this.messageReceived(message);
|
|
11363
|
+
}
|
|
11364
|
+
if (this.isThreadOfCurrentChatForSDKEvent(message)) {
|
|
11365
|
+
this.updateReplyCount(message);
|
|
11366
|
+
}
|
|
11162
11367
|
break;
|
|
11163
11368
|
case CometChatUIKitConstants.messages.MESSAGE_DELIVERED:
|
|
11164
11369
|
case CometChatUIKitConstants.messages.MESSAGE_READ:
|
|
@@ -11176,15 +11381,24 @@ class CometChatMessageListComponent {
|
|
|
11176
11381
|
case CometChatUIKitConstants.groupMemberAction.KICKED:
|
|
11177
11382
|
case CometChatUIKitConstants.groupMemberAction.BANNED:
|
|
11178
11383
|
case CometChatUIKitConstants.groupMemberAction.UNBANNED: {
|
|
11179
|
-
this.
|
|
11384
|
+
if (this.isPartOfCurrentChatForSDKEvent(message)) {
|
|
11385
|
+
this.addMessage(message);
|
|
11386
|
+
}
|
|
11180
11387
|
break;
|
|
11181
11388
|
}
|
|
11182
11389
|
case CometChatUIKitConstants.messages.CUSTOM_MESSAGE_RECEIVED:
|
|
11183
11390
|
case CometChatUIKitConstants.messages.INTERACTIVE_MESSAGE_RECEIVED:
|
|
11184
|
-
this.
|
|
11391
|
+
if (this.isPartOfCurrentChatForSDKEvent(message)) {
|
|
11392
|
+
this.customMessageReceived(message);
|
|
11393
|
+
}
|
|
11394
|
+
if (this.isThreadOfCurrentChatForSDKEvent(message)) {
|
|
11395
|
+
this.updateReplyCount(message);
|
|
11396
|
+
}
|
|
11185
11397
|
break;
|
|
11186
11398
|
case CometChatUIKitConstants.messages.INTERACTION_GOAL_COMPLETED:
|
|
11187
|
-
this.
|
|
11399
|
+
if (this.isPartOfCurrentChatForSDKEvent(message)) {
|
|
11400
|
+
this.updateInteractiveMessage(message);
|
|
11401
|
+
}
|
|
11188
11402
|
break;
|
|
11189
11403
|
case CometChatUIKitConstants.messages.MESSAGE_REACTION_ADDED:
|
|
11190
11404
|
this.onReactionUpdated(message, true);
|
|
@@ -11683,7 +11897,7 @@ class CometChatMessageListComponent {
|
|
|
11683
11897
|
this.smartReplyConfig = data.configuration;
|
|
11684
11898
|
this.smartReplyMessage = data.message;
|
|
11685
11899
|
var smartReplyObject = (_e = (_d = (_c = (_b = data.message) === null || _b === void 0 ? void 0 : _b.metadata) === null || _c === void 0 ? void 0 : _c[SmartRepliesConstants.injected]) === null || _d === void 0 ? void 0 : _d.extensions) === null || _e === void 0 ? void 0 : _e[SmartRepliesConstants.smart_reply];
|
|
11686
|
-
if (smartReplyObject && !smartReplyObject.error) {
|
|
11900
|
+
if (this.isPartOfCurrentChatForSDKEvent(this.smartReplyMessage) && smartReplyObject && !smartReplyObject.error) {
|
|
11687
11901
|
this.enableSmartReply = true;
|
|
11688
11902
|
this.showSmartReply = true;
|
|
11689
11903
|
this.ref.detectChanges();
|
|
@@ -11709,34 +11923,43 @@ class CometChatMessageListComponent {
|
|
|
11709
11923
|
});
|
|
11710
11924
|
this.ccGroupMemberBanned =
|
|
11711
11925
|
CometChatGroupEvents.ccGroupMemberBanned.subscribe((item) => {
|
|
11712
|
-
this.
|
|
11926
|
+
if (this.isPartOfCurrentChatForUIEvent(item.message)) {
|
|
11927
|
+
this.addMessage(item.message);
|
|
11928
|
+
}
|
|
11713
11929
|
});
|
|
11714
11930
|
this.ccGroupMemberKicked =
|
|
11715
11931
|
CometChatGroupEvents.ccGroupMemberKicked.subscribe((item) => {
|
|
11716
|
-
this.
|
|
11932
|
+
if (this.isPartOfCurrentChatForUIEvent(item.message)) {
|
|
11933
|
+
this.addMessage(item.message);
|
|
11934
|
+
}
|
|
11717
11935
|
});
|
|
11718
11936
|
this.ccGroupMemberScopeChanged =
|
|
11719
11937
|
CometChatGroupEvents.ccGroupMemberScopeChanged.subscribe((item) => {
|
|
11720
|
-
this.
|
|
11938
|
+
if (this.isPartOfCurrentChatForUIEvent(item.message)) {
|
|
11939
|
+
this.addMessage(item.message);
|
|
11940
|
+
}
|
|
11721
11941
|
});
|
|
11722
11942
|
this.ccGroupLeft = CometChatGroupEvents.ccGroupLeft.subscribe((item) => {
|
|
11723
|
-
this.
|
|
11943
|
+
if (this.isPartOfCurrentChatForUIEvent(item.message)) {
|
|
11944
|
+
this.addMessage(item.message);
|
|
11945
|
+
}
|
|
11724
11946
|
});
|
|
11725
11947
|
this.ccMessageEdit = CometChatMessageEvents.ccMessageEdited.subscribe((object) => {
|
|
11726
11948
|
if ((object === null || object === void 0 ? void 0 : object.status) == MessageStatus.success) {
|
|
11727
|
-
this.
|
|
11949
|
+
if (this.isPartOfCurrentChatForSDKEvent(object.message)) {
|
|
11950
|
+
this.updateMessage(object.message);
|
|
11951
|
+
}
|
|
11728
11952
|
}
|
|
11729
11953
|
});
|
|
11730
11954
|
this.ccMessageSent = CometChatMessageEvents.ccMessageSent.subscribe((obj) => {
|
|
11731
|
-
|
|
11732
|
-
? this.user.getUid()
|
|
11733
|
-
: this.group.getGuid();
|
|
11734
|
-
if (obj.message && obj.message.getReceiverId() == receiverId) {
|
|
11955
|
+
if (obj.message) {
|
|
11735
11956
|
let message = obj.message;
|
|
11736
11957
|
switch (obj.status) {
|
|
11737
11958
|
case MessageStatus.inprogress: {
|
|
11738
|
-
this.
|
|
11739
|
-
|
|
11959
|
+
if (this.isPartOfCurrentChatForUIEvent(message)) {
|
|
11960
|
+
this.addMessage(message);
|
|
11961
|
+
this.playAudio();
|
|
11962
|
+
}
|
|
11740
11963
|
break;
|
|
11741
11964
|
}
|
|
11742
11965
|
case MessageStatus.success: {
|
|
@@ -11745,14 +11968,16 @@ class CometChatMessageListComponent {
|
|
|
11745
11968
|
this.showConversationSummary = false;
|
|
11746
11969
|
this.conversationSummary = [];
|
|
11747
11970
|
this.ref.detectChanges();
|
|
11748
|
-
if (
|
|
11971
|
+
if (this.isThreadOfCurrentChatForUIEvent(message)) {
|
|
11749
11972
|
this.updateReplyCount(message);
|
|
11750
11973
|
}
|
|
11751
11974
|
this.updateMessage(message, true);
|
|
11752
11975
|
break;
|
|
11753
11976
|
}
|
|
11754
|
-
case MessageStatus.
|
|
11755
|
-
this.
|
|
11977
|
+
case MessageStatus.error: {
|
|
11978
|
+
if (!message.getSender() || this.isPartOfCurrentChatForUIEvent(message)) {
|
|
11979
|
+
this.updateMessage(message);
|
|
11980
|
+
}
|
|
11756
11981
|
}
|
|
11757
11982
|
}
|
|
11758
11983
|
}
|
|
@@ -11765,18 +11990,26 @@ class CometChatMessageListComponent {
|
|
|
11765
11990
|
this.showOngoingCall = false;
|
|
11766
11991
|
this.sessionId = "";
|
|
11767
11992
|
if (call && Object.keys(call).length > 0) {
|
|
11768
|
-
this.
|
|
11993
|
+
if (this.isPartOfCurrentChatForUIEvent(call)) {
|
|
11994
|
+
this.addMessage(call);
|
|
11995
|
+
}
|
|
11769
11996
|
}
|
|
11770
11997
|
this.ref.detectChanges();
|
|
11771
11998
|
});
|
|
11772
11999
|
this.ccCallRejected = CometChatCallEvents.ccCallRejected.subscribe((call) => {
|
|
11773
|
-
this.
|
|
12000
|
+
if (this.isPartOfCurrentChatForUIEvent(call)) {
|
|
12001
|
+
this.addMessage(call);
|
|
12002
|
+
}
|
|
11774
12003
|
});
|
|
11775
12004
|
this.ccOutgoingCall = CometChatCallEvents.ccOutgoingCall.subscribe((call) => {
|
|
11776
|
-
this.
|
|
12005
|
+
if (this.isPartOfCurrentChatForUIEvent(call)) {
|
|
12006
|
+
this.addMessage(call);
|
|
12007
|
+
}
|
|
11777
12008
|
});
|
|
11778
12009
|
this.ccCallAccepted = CometChatCallEvents.ccCallAccepted.subscribe((call) => {
|
|
11779
|
-
this.
|
|
12010
|
+
if (this.isPartOfCurrentChatForUIEvent(call)) {
|
|
12011
|
+
this.addMessage(call);
|
|
12012
|
+
}
|
|
11780
12013
|
});
|
|
11781
12014
|
}
|
|
11782
12015
|
showStatusInfo(message) {
|
|
@@ -13042,6 +13275,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
13042
13275
|
*/
|
|
13043
13276
|
class CometChatMessageComposerComponent {
|
|
13044
13277
|
constructor(ref, themeService) {
|
|
13278
|
+
var _a, _b;
|
|
13045
13279
|
this.ref = ref;
|
|
13046
13280
|
this.themeService = themeService;
|
|
13047
13281
|
this.disableSoundForMessages = false;
|
|
@@ -13201,10 +13435,12 @@ class CometChatMessageComposerComponent {
|
|
|
13201
13435
|
width: "100%",
|
|
13202
13436
|
height: "100%",
|
|
13203
13437
|
border: "none",
|
|
13204
|
-
textFont:
|
|
13205
|
-
textColor:
|
|
13206
|
-
background:
|
|
13438
|
+
textFont: (_a = this.messageComposerStyle) === null || _a === void 0 ? void 0 : _a.emojiKeyboardTextFont,
|
|
13439
|
+
textColor: (_b = this.messageComposerStyle) === null || _b === void 0 ? void 0 : _b.emojiKeyboardTextColor,
|
|
13440
|
+
background: this.themeService.theme.palette.getBackground(),
|
|
13207
13441
|
borderRadius: "12px",
|
|
13442
|
+
activeIconTint: this.themeService.theme.palette.getPrimary(),
|
|
13443
|
+
iconTint: this.themeService.theme.palette.getAccent600()
|
|
13208
13444
|
};
|
|
13209
13445
|
this.stickerKeyboardStyle = {};
|
|
13210
13446
|
this.textInputStyle = {};
|
|
@@ -13563,7 +13799,7 @@ class CometChatMessageComposerComponent {
|
|
|
13563
13799
|
let foundMentionsFormatter;
|
|
13564
13800
|
if (this.textFormatters.length) {
|
|
13565
13801
|
for (let i = 0; i < this.textFormatterList.length; i++) {
|
|
13566
|
-
if (this.textFormatterList[i] instanceof
|
|
13802
|
+
if (this.textFormatterList[i] instanceof CometChatMentionsFormatter) {
|
|
13567
13803
|
foundMentionsFormatter = this.textFormatterList[i];
|
|
13568
13804
|
this.mentionsTextFormatterInstance = foundMentionsFormatter;
|
|
13569
13805
|
break;
|
|
@@ -14381,6 +14617,7 @@ class CometChatMessageComposerComponent {
|
|
|
14381
14617
|
}
|
|
14382
14618
|
ngOnInit() {
|
|
14383
14619
|
var _a, _b;
|
|
14620
|
+
this.setTheme();
|
|
14384
14621
|
this.textFormatterList = this.textFormatters
|
|
14385
14622
|
? this.textFormatters
|
|
14386
14623
|
: [];
|
|
@@ -14401,7 +14638,6 @@ class CometChatMessageComposerComponent {
|
|
|
14401
14638
|
this.initializeMentionsFormatter();
|
|
14402
14639
|
this.actions = ChatConfigurator.getDataSource().getAIOptions(this.themeService.theme, this.getComposerId(), this.aiOptionsStyle);
|
|
14403
14640
|
this.aiBotList = [];
|
|
14404
|
-
this.setTheme();
|
|
14405
14641
|
this.subscribeToEvents();
|
|
14406
14642
|
this.enableStickerKeyboard = true;
|
|
14407
14643
|
this.stickerConfiguration =
|
|
@@ -14550,6 +14786,8 @@ class CometChatMessageComposerComponent {
|
|
|
14550
14786
|
textColor: (_q = this.messageComposerStyle) === null || _q === void 0 ? void 0 : _q.emojiKeyboardTextColor,
|
|
14551
14787
|
background: this.themeService.theme.palette.getBackground(),
|
|
14552
14788
|
borderRadius: "12px",
|
|
14789
|
+
activeIconTint: this.themeService.theme.palette.getPrimary(),
|
|
14790
|
+
iconTint: this.themeService.theme.palette.getAccent600()
|
|
14553
14791
|
};
|
|
14554
14792
|
this.stickerKeyboardStyle = {
|
|
14555
14793
|
width: "100%",
|
|
@@ -15574,11 +15812,6 @@ class CometChatDetailsComponent {
|
|
|
15574
15812
|
var _a, _b;
|
|
15575
15813
|
return this.user && !this.disableUsersPresence ? this.statusColor[(_a = this.user) === null || _a === void 0 ? void 0 : _a.getStatus()] : this.statusColor[(_b = this.group) === null || _b === void 0 ? void 0 : _b.getType()];
|
|
15576
15814
|
};
|
|
15577
|
-
this.onCloseClick = () => {
|
|
15578
|
-
if (this.onClose) {
|
|
15579
|
-
this.onClose();
|
|
15580
|
-
}
|
|
15581
|
-
};
|
|
15582
15815
|
this.viewMembers = () => {
|
|
15583
15816
|
this.openViewMembersPage = !this.openViewMembersPage;
|
|
15584
15817
|
this.openBannedMembersPage = false;
|
|
@@ -15598,6 +15831,11 @@ class CometChatDetailsComponent {
|
|
|
15598
15831
|
this.openTransferOwnershipModal = !this.openTransferOwnershipModal;
|
|
15599
15832
|
this.confirmLeaveGroupModal = false;
|
|
15600
15833
|
};
|
|
15834
|
+
this.onCloseDetails = () => {
|
|
15835
|
+
if (this.onClose) {
|
|
15836
|
+
this.onClose();
|
|
15837
|
+
}
|
|
15838
|
+
};
|
|
15601
15839
|
this.subtitleStyle = () => {
|
|
15602
15840
|
if (this.user && this.user.getStatus() == CometChatUIKitConstants.userStatusType.online) {
|
|
15603
15841
|
return {
|
|
@@ -15697,9 +15935,7 @@ class CometChatDetailsComponent {
|
|
|
15697
15935
|
ngOnDestroy() {
|
|
15698
15936
|
this.removeListener();
|
|
15699
15937
|
this.defaultTemplate = [];
|
|
15700
|
-
|
|
15701
|
-
this.onClose();
|
|
15702
|
-
}
|
|
15938
|
+
this.onCloseDetails();
|
|
15703
15939
|
this.unsubscribeToEvents();
|
|
15704
15940
|
}
|
|
15705
15941
|
ngOnInit() {
|
|
@@ -15873,9 +16109,7 @@ class CometChatDetailsComponent {
|
|
|
15873
16109
|
this.ref.detectChanges();
|
|
15874
16110
|
this.openTransferOwnershipModal = false;
|
|
15875
16111
|
this.confirmLeaveGroupModal = false;
|
|
15876
|
-
|
|
15877
|
-
this.onClose();
|
|
15878
|
-
}
|
|
16112
|
+
this.onCloseDetails();
|
|
15879
16113
|
CometChatGroupEvents.ccGroupLeft.next({
|
|
15880
16114
|
userLeft: this.loggedInUser,
|
|
15881
16115
|
leftGroup: this.group,
|
|
@@ -15934,9 +16168,6 @@ class CometChatDetailsComponent {
|
|
|
15934
16168
|
this.user.setBlockedByMe(true);
|
|
15935
16169
|
CometChatUserEvents.ccUserBlocked.next(this.user);
|
|
15936
16170
|
this.getTemplate();
|
|
15937
|
-
if (this.onClose) {
|
|
15938
|
-
this.onClose();
|
|
15939
|
-
}
|
|
15940
16171
|
})
|
|
15941
16172
|
.catch((error) => {
|
|
15942
16173
|
if (this.onError) {
|
|
@@ -15981,9 +16212,7 @@ class CometChatDetailsComponent {
|
|
|
15981
16212
|
CometChat.deleteGroup((_a = this.group) === null || _a === void 0 ? void 0 : _a.getGuid()).then(() => {
|
|
15982
16213
|
this.deleteGroupModal = false;
|
|
15983
16214
|
CometChatGroupEvents.ccGroupDeleted.next(this.group);
|
|
15984
|
-
|
|
15985
|
-
this.onClose();
|
|
15986
|
-
}
|
|
16215
|
+
this.onCloseDetails();
|
|
15987
16216
|
})
|
|
15988
16217
|
.catch((error) => {
|
|
15989
16218
|
if (this.onError) {
|
|
@@ -15991,11 +16220,6 @@ class CometChatDetailsComponent {
|
|
|
15991
16220
|
}
|
|
15992
16221
|
});
|
|
15993
16222
|
}
|
|
15994
|
-
onCloseDetails() {
|
|
15995
|
-
if (this.onClose) {
|
|
15996
|
-
this.onClose();
|
|
15997
|
-
}
|
|
15998
|
-
}
|
|
15999
16223
|
/**
|
|
16000
16224
|
* @param {CometChat.Group} group
|
|
16001
16225
|
*/
|
|
@@ -16110,10 +16334,10 @@ class CometChatDetailsComponent {
|
|
|
16110
16334
|
}
|
|
16111
16335
|
}
|
|
16112
16336
|
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 });
|
|
16113
|
-
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", 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 ||onCloseClick\"\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]=\"onCloseClick\"\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 || onCloseClick\"\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", "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 });
|
|
16337
|
+
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", 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", "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 });
|
|
16114
16338
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatDetailsComponent, decorators: [{
|
|
16115
16339
|
type: Component,
|
|
16116
|
-
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 ||onCloseClick\"\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]=\"onCloseClick\"\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 || onCloseClick\"\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"] }]
|
|
16340
|
+
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"] }]
|
|
16117
16341
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { group: [{
|
|
16118
16342
|
type: Input
|
|
16119
16343
|
}], user: [{
|
|
@@ -17317,12 +17541,13 @@ class CometChatContactsComponent {
|
|
|
17317
17541
|
this.groupsConfiguration = new GroupsConfiguration({});
|
|
17318
17542
|
this.closeIconURL = "assets/close2x.svg";
|
|
17319
17543
|
this.contactsStyle = {};
|
|
17320
|
-
this.selectionMode = SelectionMode.
|
|
17544
|
+
this.selectionMode = SelectionMode.none;
|
|
17321
17545
|
this.tabVisibility = TabsVisibility.usersAndGroups;
|
|
17322
17546
|
this.selectionLimit = 5;
|
|
17323
17547
|
this.tabs = [];
|
|
17324
17548
|
this.hideSubmitButton = true;
|
|
17325
17549
|
this.submitButtonText = "Submit";
|
|
17550
|
+
this.selection = SelectionMode;
|
|
17326
17551
|
// public properties
|
|
17327
17552
|
this.usersRequestBuilder = new CometChat.UsersRequestBuilder().setLimit(30).hideBlockedUsers(true);
|
|
17328
17553
|
this.usersSearchRequestBuilder = new CometChat.UsersRequestBuilder().setLimit(30).hideBlockedUsers(true);
|
|
@@ -17516,10 +17741,10 @@ class CometChatContactsComponent {
|
|
|
17516
17741
|
}
|
|
17517
17742
|
}
|
|
17518
17743
|
CometChatContactsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatContactsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: CometChatThemeService }], target: i0.ɵɵFactoryTarget.Component });
|
|
17519
|
-
CometChatContactsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatContactsComponent, selector: "cometchat-contacts", inputs: { title: "title", usersTabTitle: "usersTabTitle", groupsTabTitle: "groupsTabTitle", usersConfiguration: "usersConfiguration", groupsConfiguration: "groupsConfiguration", onSubmitButtonClick: "onSubmitButtonClick", closeIconURL: "closeIconURL", contactsStyle: "contactsStyle", selectionMode: "selectionMode", onClose: "onClose", onItemClick: "onItemClick", tabVisibility: "tabVisibility", selectionLimit: "selectionLimit", tabs: "tabs", hideSubmitButton: "hideSubmitButton", submitButtonText: "submitButtonText" }, viewQueries: [{ propertyName: "usersRef", first: true, predicate: ["usersRef"], descendants: true }, { propertyName: "groupsRef", first: true, predicate: ["groupsRef"], descendants: true }], ngImport: i0, template: "<div class=\"cc-contacts\" [ngStyle]=\"wrapperStyle\">\n <div class=\"cc-contacts-title\">\n
|
|
17744
|
+
CometChatContactsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: CometChatContactsComponent, selector: "cometchat-contacts", inputs: { title: "title", usersTabTitle: "usersTabTitle", groupsTabTitle: "groupsTabTitle", usersConfiguration: "usersConfiguration", groupsConfiguration: "groupsConfiguration", onSubmitButtonClick: "onSubmitButtonClick", closeIconURL: "closeIconURL", contactsStyle: "contactsStyle", selectionMode: "selectionMode", onClose: "onClose", onItemClick: "onItemClick", tabVisibility: "tabVisibility", selectionLimit: "selectionLimit", tabs: "tabs", hideSubmitButton: "hideSubmitButton", submitButtonText: "submitButtonText" }, viewQueries: [{ propertyName: "usersRef", first: true, predicate: ["usersRef"], descendants: true }, { propertyName: "groupsRef", first: true, predicate: ["groupsRef"], descendants: true }], ngImport: i0, template: "<div class=\"cc-contacts\" [ngStyle]=\"wrapperStyle\">\n <div class=\"cc-contacts-title\">\n <cometchat-label [text]=\"title\" [labelStyle]=\"titleStyle\"></cometchat-label>\n </div>\n <div class=\"cc-contacts-error\" *ngIf=\"isLimitReached\">\n <cometchat-label [text]=\"'max limit has reached'\"\n [labelStyle]=\"errorStyle\"></cometchat-label>\n </div>\n <div class=\"cc-contacts__wrapper\" [ngStyle]=\"contactsPadding\">\n <div class=\"cc-tabs\">\n <cometchat-tabs [tabs]=\"tabs\" [tabsStyle]=\"tabsStyle\" [keepAlive]=\"true\">\n <ng-template #usersRef>\n <cometchat-users [onItemClick]=\"userClicked\"\n [usersRequestBuilder]=\"usersConfiguration.usersRequestBuilder || usersRequestBuilder\"\n [hideSearch]=\"usersConfiguration.hideSearch\"\n [StatusIndicatorStyle]=\"usersConfiguration.statusIndicatorStyle\"\n [avatarStyle]=\"usersConfiguration.avatarStyle\"\n [searchIconURL]=\"usersConfiguration.searchIconURL\"\n [searchRequestBuilder]=\"usersConfiguration.searchRequestBuilder || usersSearchRequestBuilder\"\n [usersStyle]=\"usersConfiguration.usersStyle\"\n [subtitleView]=\"usersConfiguration.subtitleView\"\n [options]=\"usersConfiguration.options\"\n [emptyStateView]=\"usersConfiguration.emptyStateView\"\n [onSelect]=\"usersConfiguration.onSelect || onUserSelected\"\n [loadingIconURL]=\"usersConfiguration.loadingIconURL\"\n [errorStateView]=\"usersConfiguration.errorStateView\"\n [loadingStateView]=\"usersConfiguration.loadingStateView\"\n [listItemView]=\"usersConfiguration.listItemView\"\n [menu]=\"usersConfiguration.menu\"\n [hideSeparator]=\"usersConfiguration.hideSeparator\"\n [hideError]=\"usersConfiguration.hideError\"\n [selectionMode]=\" selectionMode\" [title]=\"''\"></cometchat-users>\n </ng-template>\n <ng-template #groupsRef>\n <cometchat-groups [onItemClick]=\"groupClicked\"\n [groupsRequestBuilder]=\"groupsConfiguration.groupsRequestBuilder || groupsRequestBuilder\"\n [hideSearch]=\"groupsConfiguration.hideSearch\"\n [StatusIndicatorStyle]=\"groupsConfiguration.statusIndicatorStyle\"\n [avatarStyle]=\"groupsConfiguration.avatarStyle\"\n [searchIconURL]=\"groupsConfiguration.searchIconURL\"\n [searchRequestBuilder]=\"groupsConfiguration.searchRequestBuilder || groupsSearchRequestBuilder\"\n [groupsStyle]=\"groupsConfiguration.groupsStyle\"\n [subtitleView]=\"groupsConfiguration.subtitleView\"\n [options]=\"groupsConfiguration.options\"\n [emptyStateView]=\"groupsConfiguration.emptyStateView\"\n [onSelect]=\"groupsConfiguration.onSelect || onGroupSelected\"\n [loadingIconURL]=\"groupsConfiguration.loadingIconURL\"\n [errorStateView]=\"groupsConfiguration.errorStateView\"\n [loadingStateView]=\"groupsConfiguration.loadingStateView\"\n [listItemView]=\"groupsConfiguration.listItemView\"\n [menu]=\"groupsConfiguration.menu\"\n [hideSeparator]=\"groupsConfiguration.hideSeparator\"\n [hideError]=\"groupsConfiguration.hideError\"\n [selectionMode]=\"selectionMode\" [title]=\"''\"></cometchat-groups>\n </ng-template>\n </cometchat-tabs>\n </div>\n <div class=\"cc-contacts__buttons\" *ngIf=\"selectionMode != selection.none\">\n <cometchat-button [disabled]=\"isLimitReached\"\n class=\"cc-contacts__buttons--add\" [text]=\"submitButtonText\"\n [buttonStyle]=\"submitButtonStyle\"\n (click)=\"submitClicked()\"></cometchat-button>\n </div>\n </div>\n <div class=\"cc-close-button\">\n <cometchat-button [iconURL]=\"closeIconURL\" [buttonStyle]=\"closeButtonStyle\"\n (cc-button-clicked)=\"closeClicked()\">\n </cometchat-button>\n </div>\n</div>\n", styles: [".cc-contacts{display:flex;height:100%;width:100%;overflow:hidden;flex-direction:column}.cc-back-button{position:absolute;left:8px;padding:12px 8px 8px}.cc-contacts__wrapper{height:100%;padding:8px;overflow:hidden;display:flex;flex-direction:column}.cc-close-button{position:absolute;right:8px;padding:8px}.cc-contacts__buttons{height:10%;width:100%;display:flex;align-items:center;justify-content:center}.button__icon{display:flex;justify-content:flex-end}.cc-contacts__buttons--add{height:42px;width:100%}.cc-tabs{display:flex;height:100%;width:100%;overflow:hidden}cometchat-tabs{height:100%;width:100%}.cc-contacts-title,.cc-contacts-error{display:flex;align-items:center;justify-content:center;height:-moz-fit-content;height:fit-content;width:100%;padding:8px 0}\n"], components: [{ type: CometChatTabsComponent, selector: "cometchat-tabs", inputs: ["tabAlignment", "disableDragging", "tabsStyle", "tabs", "keepAlive"] }, { type: CometChatUsersComponent, selector: "cometchat-users", inputs: ["usersRequestBuilder", "searchRequestBuilder", "subtitleView", "disableUsersPresence", "listItemView", "menu", "options", "activeUser", "hideSeparator", "searchPlaceholder", "hideError", "selectionMode", "searchIconURL", "hideSearch", "title", "onError", "emptyStateView", "onSelect", "errorStateView", "loadingIconURL", "showSectionHeader", "sectionHeaderField", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "usersStyle", "listItemStyle", "statusIndicatorStyle", "avatarStyle", "onItemClick", "searchKeyword", "onEmpty", "userPresencePlacement", "disableLoadingState"] }, { type: CometChatGroupsComponent, selector: "cometchat-groups", inputs: ["groupsRequestBuilder", "searchRequestBuilder", "subtitleView", "listItemView", "menu", "options", "activeGroup", "hideSeparator", "selectionMode", "searchPlaceholder", "hideError", "searchIconURL", "hideSearch", "title", "onError", "onSelect", "emptyStateView", "errorStateView", "loadingIconURL", "privateGroupIcon", "protectedGroupIcon", "loadingStateView", "emptyStateText", "errorStateText", "titleAlignment", "statusIndicatorStyle", "avatarStyle", "groupsStyle", "listItemStyle", "onItemClick"] }], directives: [{ type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
17520
17745
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatContactsComponent, decorators: [{
|
|
17521
17746
|
type: Component,
|
|
17522
|
-
args: [{ selector: "cometchat-contacts", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-contacts\" [ngStyle]=\"wrapperStyle\">\n <div class=\"cc-contacts-title\">\n
|
|
17747
|
+
args: [{ selector: "cometchat-contacts", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cc-contacts\" [ngStyle]=\"wrapperStyle\">\n <div class=\"cc-contacts-title\">\n <cometchat-label [text]=\"title\" [labelStyle]=\"titleStyle\"></cometchat-label>\n </div>\n <div class=\"cc-contacts-error\" *ngIf=\"isLimitReached\">\n <cometchat-label [text]=\"'max limit has reached'\"\n [labelStyle]=\"errorStyle\"></cometchat-label>\n </div>\n <div class=\"cc-contacts__wrapper\" [ngStyle]=\"contactsPadding\">\n <div class=\"cc-tabs\">\n <cometchat-tabs [tabs]=\"tabs\" [tabsStyle]=\"tabsStyle\" [keepAlive]=\"true\">\n <ng-template #usersRef>\n <cometchat-users [onItemClick]=\"userClicked\"\n [usersRequestBuilder]=\"usersConfiguration.usersRequestBuilder || usersRequestBuilder\"\n [hideSearch]=\"usersConfiguration.hideSearch\"\n [StatusIndicatorStyle]=\"usersConfiguration.statusIndicatorStyle\"\n [avatarStyle]=\"usersConfiguration.avatarStyle\"\n [searchIconURL]=\"usersConfiguration.searchIconURL\"\n [searchRequestBuilder]=\"usersConfiguration.searchRequestBuilder || usersSearchRequestBuilder\"\n [usersStyle]=\"usersConfiguration.usersStyle\"\n [subtitleView]=\"usersConfiguration.subtitleView\"\n [options]=\"usersConfiguration.options\"\n [emptyStateView]=\"usersConfiguration.emptyStateView\"\n [onSelect]=\"usersConfiguration.onSelect || onUserSelected\"\n [loadingIconURL]=\"usersConfiguration.loadingIconURL\"\n [errorStateView]=\"usersConfiguration.errorStateView\"\n [loadingStateView]=\"usersConfiguration.loadingStateView\"\n [listItemView]=\"usersConfiguration.listItemView\"\n [menu]=\"usersConfiguration.menu\"\n [hideSeparator]=\"usersConfiguration.hideSeparator\"\n [hideError]=\"usersConfiguration.hideError\"\n [selectionMode]=\" selectionMode\" [title]=\"''\"></cometchat-users>\n </ng-template>\n <ng-template #groupsRef>\n <cometchat-groups [onItemClick]=\"groupClicked\"\n [groupsRequestBuilder]=\"groupsConfiguration.groupsRequestBuilder || groupsRequestBuilder\"\n [hideSearch]=\"groupsConfiguration.hideSearch\"\n [StatusIndicatorStyle]=\"groupsConfiguration.statusIndicatorStyle\"\n [avatarStyle]=\"groupsConfiguration.avatarStyle\"\n [searchIconURL]=\"groupsConfiguration.searchIconURL\"\n [searchRequestBuilder]=\"groupsConfiguration.searchRequestBuilder || groupsSearchRequestBuilder\"\n [groupsStyle]=\"groupsConfiguration.groupsStyle\"\n [subtitleView]=\"groupsConfiguration.subtitleView\"\n [options]=\"groupsConfiguration.options\"\n [emptyStateView]=\"groupsConfiguration.emptyStateView\"\n [onSelect]=\"groupsConfiguration.onSelect || onGroupSelected\"\n [loadingIconURL]=\"groupsConfiguration.loadingIconURL\"\n [errorStateView]=\"groupsConfiguration.errorStateView\"\n [loadingStateView]=\"groupsConfiguration.loadingStateView\"\n [listItemView]=\"groupsConfiguration.listItemView\"\n [menu]=\"groupsConfiguration.menu\"\n [hideSeparator]=\"groupsConfiguration.hideSeparator\"\n [hideError]=\"groupsConfiguration.hideError\"\n [selectionMode]=\"selectionMode\" [title]=\"''\"></cometchat-groups>\n </ng-template>\n </cometchat-tabs>\n </div>\n <div class=\"cc-contacts__buttons\" *ngIf=\"selectionMode != selection.none\">\n <cometchat-button [disabled]=\"isLimitReached\"\n class=\"cc-contacts__buttons--add\" [text]=\"submitButtonText\"\n [buttonStyle]=\"submitButtonStyle\"\n (click)=\"submitClicked()\"></cometchat-button>\n </div>\n </div>\n <div class=\"cc-close-button\">\n <cometchat-button [iconURL]=\"closeIconURL\" [buttonStyle]=\"closeButtonStyle\"\n (cc-button-clicked)=\"closeClicked()\">\n </cometchat-button>\n </div>\n</div>\n", styles: [".cc-contacts{display:flex;height:100%;width:100%;overflow:hidden;flex-direction:column}.cc-back-button{position:absolute;left:8px;padding:12px 8px 8px}.cc-contacts__wrapper{height:100%;padding:8px;overflow:hidden;display:flex;flex-direction:column}.cc-close-button{position:absolute;right:8px;padding:8px}.cc-contacts__buttons{height:10%;width:100%;display:flex;align-items:center;justify-content:center}.button__icon{display:flex;justify-content:flex-end}.cc-contacts__buttons--add{height:42px;width:100%}.cc-tabs{display:flex;height:100%;width:100%;overflow:hidden}cometchat-tabs{height:100%;width:100%}.cc-contacts-title,.cc-contacts-error{display:flex;align-items:center;justify-content:center;height:-moz-fit-content;height:fit-content;width:100%;padding:8px 0}\n"] }]
|
|
17523
17748
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { usersRef: [{
|
|
17524
17749
|
type: ViewChild,
|
|
17525
17750
|
args: ["usersRef"]
|
|
@@ -17598,21 +17823,22 @@ class CometChatConversationsWithMessagesComponent {
|
|
|
17598
17823
|
this.hideSearch = true;
|
|
17599
17824
|
this.startConversationButtonStyle = {};
|
|
17600
17825
|
this.sideBarStyle = {};
|
|
17826
|
+
this.groupListenerId = "withmessages_group_" + new Date().getTime();
|
|
17601
17827
|
this.onBack = () => {
|
|
17602
17828
|
this.user = null;
|
|
17603
17829
|
this.group = null;
|
|
17604
17830
|
this.activeConversation = null;
|
|
17605
17831
|
};
|
|
17606
|
-
this.
|
|
17832
|
+
this.onContactClicked = (user, group) => {
|
|
17607
17833
|
this.showStartConversation = false;
|
|
17608
|
-
if (
|
|
17834
|
+
if (user) {
|
|
17609
17835
|
this.group = null;
|
|
17610
|
-
this.user =
|
|
17836
|
+
this.user = user;
|
|
17611
17837
|
this.ref.detectChanges();
|
|
17612
17838
|
}
|
|
17613
|
-
if (
|
|
17839
|
+
if (group) {
|
|
17614
17840
|
this.user = null;
|
|
17615
|
-
this.group =
|
|
17841
|
+
this.group = group;
|
|
17616
17842
|
this.ref.detectChanges();
|
|
17617
17843
|
}
|
|
17618
17844
|
};
|
|
@@ -17689,6 +17915,33 @@ class CometChatConversationsWithMessagesComponent {
|
|
|
17689
17915
|
triggerStartConversation() {
|
|
17690
17916
|
this.showStartConversation = true;
|
|
17691
17917
|
}
|
|
17918
|
+
removeChatOnGroupAction(leftUser, message) {
|
|
17919
|
+
var _a;
|
|
17920
|
+
const isSameUser = ((_a = this.loggedInUser) === null || _a === void 0 ? void 0 : _a.getUid()) === leftUser.getUid();
|
|
17921
|
+
const actionForGroup = message.getActionFor() instanceof CometChat.Group;
|
|
17922
|
+
if (isSameUser && this.activeConversation && this.activeConversation.getConversationWith() instanceof CometChat.Group) {
|
|
17923
|
+
let group = this.activeConversation.getConversationWith();
|
|
17924
|
+
if (actionForGroup) {
|
|
17925
|
+
let actionOnGroup = message.getActionFor();
|
|
17926
|
+
if (actionOnGroup.getGuid() === group.getGuid()) {
|
|
17927
|
+
this.activeConversation = null;
|
|
17928
|
+
this.user = null;
|
|
17929
|
+
this.group = null;
|
|
17930
|
+
this.ref.detectChanges();
|
|
17931
|
+
}
|
|
17932
|
+
}
|
|
17933
|
+
}
|
|
17934
|
+
}
|
|
17935
|
+
attachGroupListeners() {
|
|
17936
|
+
CometChat.addGroupListener(this.groupListenerId, new CometChat.GroupListener({
|
|
17937
|
+
onGroupMemberKicked: (message, kickedUser, kickedBy, kickedFrom) => {
|
|
17938
|
+
this.removeChatOnGroupAction(kickedUser, message);
|
|
17939
|
+
},
|
|
17940
|
+
onGroupMemberBanned: (message, bannedUser, bannedBy, bannedFrom) => {
|
|
17941
|
+
this.removeChatOnGroupAction(bannedUser, message);
|
|
17942
|
+
},
|
|
17943
|
+
}));
|
|
17944
|
+
}
|
|
17692
17945
|
setWithMessagesStyle() {
|
|
17693
17946
|
var _a, _b, _c, _d, _e, _f;
|
|
17694
17947
|
let defaultStyle = new WithMessagesStyle({
|
|
@@ -17771,10 +18024,11 @@ class CometChatConversationsWithMessagesComponent {
|
|
|
17771
18024
|
if (!this.messagesConfiguration.messageHeaderConfiguration.onBack) {
|
|
17772
18025
|
this.messagesConfiguration.messageHeaderConfiguration.onBack = this.onBack;
|
|
17773
18026
|
}
|
|
17774
|
-
this.subscribeToEvents();
|
|
17775
18027
|
CometChat.getLoggedinUser()
|
|
17776
18028
|
.then((user) => {
|
|
17777
18029
|
this.loggedInUser = user;
|
|
18030
|
+
this.attachGroupListeners();
|
|
18031
|
+
this.subscribeToEvents();
|
|
17778
18032
|
})
|
|
17779
18033
|
.catch((error) => {
|
|
17780
18034
|
if (this.onError) {
|
|
@@ -17784,6 +18038,7 @@ class CometChatConversationsWithMessagesComponent {
|
|
|
17784
18038
|
}
|
|
17785
18039
|
ngOnDestroy() {
|
|
17786
18040
|
this.unsubscribeToEvents();
|
|
18041
|
+
CometChat.removeGroupListener(this.groupListenerId);
|
|
17787
18042
|
}
|
|
17788
18043
|
// subscribe to global events
|
|
17789
18044
|
subscribeToEvents() {
|
|
@@ -17878,10 +18133,10 @@ class CometChatConversationsWithMessagesComponent {
|
|
|
17878
18133
|
}
|
|
17879
18134
|
}
|
|
17880
18135
|
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 });
|
|
17881
|
-
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 [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 [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 [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 [ngClass]=\"{mobile : isMobileView}\" *ngIf=\"showStartConversation\">\n\n <cometchat-contacts\n [usersConfiguration]=\"StartConversationConfiguration?.usersConfiguration!\"\n [groupsConfiguration]=\"StartConversationConfiguration?.groupsConfiguration!\"\n [closeIconURL]=\"StartConversationConfiguration?.closeIconURL!\"\n [contactsStyle]=\"StartConversationConfiguration?.contactsStyle!\"\n [selectionMode]=\"StartConversationConfiguration?.selectionMode!\"\n [onClose]=\"StartConversationConfiguration?.onClose!\"\n [tabVisibility]=\"StartConversationConfiguration?.tabVisibility!\"\n [selectionLimit]=\"StartConversationConfiguration?.selectionLimit!\"\n [tabs]=\"StartConversationConfiguration?.tabs!\"\n [hideSubmitButton]=\"StartConversationConfiguration?.hideSubmitButton!\"
|
|
18136
|
+
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 [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 [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 [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]=\"StartConversationConfiguration?.onClose!\"\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", "disableTyping", "deliveredIcon", "readIcon", "errorIcon", "datePattern", "onError", "sentIcon", "privateGroupIcon", "protectedGroupIcon", "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 });
|
|
17882
18137
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: CometChatConversationsWithMessagesComponent, decorators: [{
|
|
17883
18138
|
type: Component,
|
|
17884
|
-
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 [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 [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 [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 [ngClass]=\"{mobile : isMobileView}\" *ngIf=\"showStartConversation\">\n\n <cometchat-contacts\n [usersConfiguration]=\"StartConversationConfiguration?.usersConfiguration!\"\n [groupsConfiguration]=\"StartConversationConfiguration?.groupsConfiguration!\"\n [closeIconURL]=\"StartConversationConfiguration?.closeIconURL!\"\n [contactsStyle]=\"StartConversationConfiguration?.contactsStyle!\"\n [selectionMode]=\"StartConversationConfiguration?.selectionMode!\"\n [onClose]=\"StartConversationConfiguration?.onClose!\"\n [tabVisibility]=\"StartConversationConfiguration?.tabVisibility!\"\n [selectionLimit]=\"StartConversationConfiguration?.selectionLimit!\"\n [tabs]=\"StartConversationConfiguration?.tabs!\"\n [hideSubmitButton]=\"StartConversationConfiguration?.hideSubmitButton!\"
|
|
18139
|
+
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 [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 [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 [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]=\"StartConversationConfiguration?.onClose!\"\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"] }]
|
|
17885
18140
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: CometChatThemeService }]; }, propDecorators: { user: [{
|
|
17886
18141
|
type: Input
|
|
17887
18142
|
}], group: [{
|
|
@@ -19289,13 +19544,17 @@ class CometchatCallLogsComponent {
|
|
|
19289
19544
|
this.ref.detectChanges();
|
|
19290
19545
|
},
|
|
19291
19546
|
onOutgoingCallRejected: (call) => {
|
|
19292
|
-
this.cometchatCallObject
|
|
19293
|
-
|
|
19294
|
-
|
|
19547
|
+
if (this.cometchatCallObject && this.cometchatCallObject.getSessionId() == call.getSessionId()) {
|
|
19548
|
+
this.cometchatCallObject = null;
|
|
19549
|
+
this.showOutgoingCallscreen = false;
|
|
19550
|
+
this.ref.detectChanges();
|
|
19551
|
+
}
|
|
19295
19552
|
},
|
|
19296
19553
|
onOutgoingCallAccepted: (call) => {
|
|
19297
|
-
this.cometchatCallObject
|
|
19298
|
-
|
|
19554
|
+
if (this.cometchatCallObject && this.cometchatCallObject.getSessionId() == call.getSessionId()) {
|
|
19555
|
+
this.cometchatCallObject = call;
|
|
19556
|
+
this.openOngoingCallScreen(call);
|
|
19557
|
+
}
|
|
19299
19558
|
},
|
|
19300
19559
|
onCallEndedMessageReceived: (call) => {
|
|
19301
19560
|
this.cometchatCallObject = null;
|