sceyt-chat-react-uikit 1.7.1-beta.8 → 1.7.1
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/components/Channel/index.d.ts +22 -1
- package/components/ChannelList/ChannelSearch/index.d.ts +1 -0
- package/components/ChannelList/index.d.ts +6 -1
- package/index.js +718 -413
- package/index.modern.js +718 -413
- package/package.json +1 -1
package/index.modern.js
CHANGED
|
@@ -9070,7 +9070,7 @@ function updateChannelLastMessageOnAllChannels(channelId, message) {
|
|
|
9070
9070
|
var updateChannel = allChannels.find(function (chan) {
|
|
9071
9071
|
return chan.id === channelId;
|
|
9072
9072
|
});
|
|
9073
|
-
if (message.state === 'Deleted' || message.state === 'Edited') {
|
|
9073
|
+
if ((message === null || message === void 0 ? void 0 : message.state) === 'Deleted' || (message === null || message === void 0 ? void 0 : message.state) === 'Edited') {
|
|
9074
9074
|
var _updateChannel;
|
|
9075
9075
|
if (((_updateChannel = updateChannel) === null || _updateChannel === void 0 ? void 0 : _updateChannel.lastMessage.id) === message.id) {
|
|
9076
9076
|
allChannels = allChannels.map(function (chan) {
|
|
@@ -10319,6 +10319,7 @@ var initialState$1 = {
|
|
|
10319
10319
|
attachmentsUploadingState: {},
|
|
10320
10320
|
scrollToMessage: null,
|
|
10321
10321
|
scrollToMessageHighlight: true,
|
|
10322
|
+
scrollToMessageBehavior: 'smooth',
|
|
10322
10323
|
scrollToMentionedMessage: false,
|
|
10323
10324
|
reactionsList: [],
|
|
10324
10325
|
reactionsHasNext: true,
|
|
@@ -10345,6 +10346,7 @@ var messageSlice = createSlice({
|
|
|
10345
10346
|
setScrollToMessage: function setScrollToMessage(state, action) {
|
|
10346
10347
|
state.scrollToMessage = action.payload.messageId;
|
|
10347
10348
|
state.scrollToMessageHighlight = action.payload.highlight;
|
|
10349
|
+
state.scrollToMessageBehavior = action.payload.behavior || 'smooth';
|
|
10348
10350
|
},
|
|
10349
10351
|
setScrollToMentionedMessage: function setScrollToMentionedMessage(state, action) {
|
|
10350
10352
|
state.scrollToMentionedMessage = action.payload.isScrollToMentionedMessage;
|
|
@@ -10374,7 +10376,7 @@ var messageSlice = createSlice({
|
|
|
10374
10376
|
return msg.tid === message.tid || msg.id === message.id;
|
|
10375
10377
|
});
|
|
10376
10378
|
});
|
|
10377
|
-
if (direction === MESSAGE_LOAD_DIRECTION.PREV) {
|
|
10379
|
+
if (direction === MESSAGE_LOAD_DIRECTION.PREV && newMessagesLength > 0) {
|
|
10378
10380
|
if (currentMessagesLength + newMessagesLength >= MESSAGES_MAX_LENGTH) {
|
|
10379
10381
|
var _state$activeChannelM;
|
|
10380
10382
|
setHasNextCached(true);
|
|
@@ -10396,7 +10398,7 @@ var messageSlice = createSlice({
|
|
|
10396
10398
|
var _state$activeChannelM3;
|
|
10397
10399
|
(_state$activeChannelM3 = state.activeChannelMessages).splice.apply(_state$activeChannelM3, [0, 0].concat(messagesIsNotIncludeInActiveChannelMessages));
|
|
10398
10400
|
}
|
|
10399
|
-
} else if (direction === 'next') {
|
|
10401
|
+
} else if (direction === 'next' && newMessagesLength > 0) {
|
|
10400
10402
|
if (currentMessagesLength >= MESSAGES_MAX_LENGTH) {
|
|
10401
10403
|
var _state$activeChannelM4;
|
|
10402
10404
|
setHasPrevCached(true);
|
|
@@ -10585,8 +10587,8 @@ var messageSlice = createSlice({
|
|
|
10585
10587
|
var _action$payload8 = action.payload,
|
|
10586
10588
|
uploaded = _action$payload8.uploaded,
|
|
10587
10589
|
total = _action$payload8.total,
|
|
10588
|
-
attachmentId = _action$payload8.attachmentId
|
|
10589
|
-
|
|
10590
|
+
attachmentId = _action$payload8.attachmentId;
|
|
10591
|
+
var progress = uploaded / total;
|
|
10590
10592
|
var updateData = {
|
|
10591
10593
|
uploaded: uploaded,
|
|
10592
10594
|
total: total,
|
|
@@ -11596,7 +11598,7 @@ function setMessageToEditAC(message) {
|
|
|
11596
11598
|
message: message
|
|
11597
11599
|
});
|
|
11598
11600
|
}
|
|
11599
|
-
function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight) {
|
|
11601
|
+
function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior) {
|
|
11600
11602
|
if (highlight === void 0) {
|
|
11601
11603
|
highlight = true;
|
|
11602
11604
|
}
|
|
@@ -11608,7 +11610,8 @@ function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliv
|
|
|
11608
11610
|
messageId: messageId,
|
|
11609
11611
|
limit: limit,
|
|
11610
11612
|
withDeliveredMessages: withDeliveredMessages,
|
|
11611
|
-
highlight: highlight
|
|
11613
|
+
highlight: highlight,
|
|
11614
|
+
behavior: behavior
|
|
11612
11615
|
}
|
|
11613
11616
|
};
|
|
11614
11617
|
}
|
|
@@ -11622,13 +11625,14 @@ function getMessageAC(channelId, messageId, limit) {
|
|
|
11622
11625
|
}
|
|
11623
11626
|
};
|
|
11624
11627
|
}
|
|
11625
|
-
function setScrollToMessagesAC(messageId, highlight) {
|
|
11628
|
+
function setScrollToMessagesAC(messageId, highlight, behavior) {
|
|
11626
11629
|
if (highlight === void 0) {
|
|
11627
11630
|
highlight = true;
|
|
11628
11631
|
}
|
|
11629
11632
|
return setScrollToMessage({
|
|
11630
11633
|
messageId: messageId || '',
|
|
11631
|
-
highlight: highlight
|
|
11634
|
+
highlight: highlight,
|
|
11635
|
+
behavior: behavior
|
|
11632
11636
|
});
|
|
11633
11637
|
}
|
|
11634
11638
|
function setScrollToMentionedMessageAC(isScrollToMentionedMessage) {
|
|
@@ -15161,9 +15165,8 @@ function searchChannels(action) {
|
|
|
15161
15165
|
handleChannels = function handleChannels(channels) {
|
|
15162
15166
|
channels.forEach(function (channel) {
|
|
15163
15167
|
if (channel.type === DEFAULT_CHANNEL_TYPE.DIRECT) {
|
|
15164
|
-
var _channel$metadata;
|
|
15165
15168
|
channel.metadata = isJSON(channel.metadata) ? JSON.parse(channel.metadata) : channel.metadata;
|
|
15166
|
-
var isSelfChannel =
|
|
15169
|
+
var isSelfChannel = channel.memberCount === 1 && channel.members.length > 0 && channel.members[0].id === SceytChatClient.user.id;
|
|
15167
15170
|
var directChannelUser = isSelfChannel ? SceytChatClient.user : channel.members.find(function (member) {
|
|
15168
15171
|
return member.id !== SceytChatClient.user.id;
|
|
15169
15172
|
});
|
|
@@ -15281,9 +15284,8 @@ function getChannelsForForward() {
|
|
|
15281
15284
|
return put(channelHasNextAC(channelsData.hasNext, true));
|
|
15282
15285
|
case 4:
|
|
15283
15286
|
channelsToAdd = channelsData.channels.filter(function (channel) {
|
|
15284
|
-
var _channel$metadata2;
|
|
15285
15287
|
channel.metadata = isJSON(channel.metadata) ? JSON.parse(channel.metadata) : channel.metadata;
|
|
15286
|
-
var isSelfChannel =
|
|
15288
|
+
var isSelfChannel = channel.memberCount === 1 && channel.members.length > 0 && channel.members[0].id === _SceytChatClient.user.id;
|
|
15287
15289
|
return channel.type === DEFAULT_CHANNEL_TYPE.BROADCAST || channel.type === DEFAULT_CHANNEL_TYPE.PUBLIC ? channel.userRole === 'admin' || channel.userRole === 'owner' : channel.type === DEFAULT_CHANNEL_TYPE.DIRECT ? isSelfChannel || channel.members.find(function (member) {
|
|
15288
15290
|
return member.id && member.id !== _SceytChatClient.user.id;
|
|
15289
15291
|
}) : true;
|
|
@@ -15350,9 +15352,8 @@ function searchChannelsForForward(action) {
|
|
|
15350
15352
|
handleChannels = function handleChannels(channels) {
|
|
15351
15353
|
channels.forEach(function (channel) {
|
|
15352
15354
|
if (channel.type === DEFAULT_CHANNEL_TYPE.DIRECT) {
|
|
15353
|
-
var _channel$metadata3;
|
|
15354
15355
|
channel.metadata = isJSON(channel.metadata) ? JSON.parse(channel.metadata) : channel.metadata;
|
|
15355
|
-
var isSelfChannel =
|
|
15356
|
+
var isSelfChannel = channel.memberCount === 1 && channel.members.length > 0 && channel.members[0].id === _SceytChatClient2.user.id;
|
|
15356
15357
|
var directChannelUser = isSelfChannel ? _SceytChatClient2.user : channel.members.find(function (member) {
|
|
15357
15358
|
return member.id !== _SceytChatClient2.user.id;
|
|
15358
15359
|
});
|
|
@@ -17092,6 +17093,9 @@ var scrollToMessageSelector = function scrollToMessageSelector(store) {
|
|
|
17092
17093
|
var scrollToMessageHighlightSelector = function scrollToMessageHighlightSelector(store) {
|
|
17093
17094
|
return store.MessageReducer.scrollToMessageHighlight;
|
|
17094
17095
|
};
|
|
17096
|
+
var scrollToMessageBehaviorSelector = function scrollToMessageBehaviorSelector(store) {
|
|
17097
|
+
return store.MessageReducer.scrollToMessageBehavior;
|
|
17098
|
+
};
|
|
17095
17099
|
var reactionsListSelector = function reactionsListSelector(store) {
|
|
17096
17100
|
return store.MessageReducer.reactionsList;
|
|
17097
17101
|
};
|
|
@@ -18485,7 +18489,7 @@ function editMessage(action) {
|
|
|
18485
18489
|
}, _marked6$1, null, [[0, 5]]);
|
|
18486
18490
|
}
|
|
18487
18491
|
function getMessagesQuery(action) {
|
|
18488
|
-
var _action$payload, channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, SceytChatClient, messageQueryBuilder, messageQuery, cachedMessages, result, allMessages, havLastMessage, secondResult, sentMessages, messagesMap, filteredSentMessages, _allMessages, messageIndex, maxLengthPart, _secondResult, thirdResult, _secondResult2, _thirdResult, _secondResult3, _secondResult4, updatedMessages, pendingMessages, _messagesMap, filteredPendingMessages, _t9;
|
|
18492
|
+
var _action$payload, channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior, SceytChatClient, messageQueryBuilder, messageQuery, cachedMessages, result, allMessages, havLastMessage, secondResult, sentMessages, messagesMap, filteredSentMessages, _allMessages, messageIndex, maxLengthPart, _secondResult, thirdResult, _secondResult2, _thirdResult, _secondResult3, _secondResult4, updatedMessages, pendingMessages, _messagesMap, filteredPendingMessages, _t9;
|
|
18489
18493
|
return _regenerator().w(function (_context9) {
|
|
18490
18494
|
while (1) switch (_context9.p = _context9.n) {
|
|
18491
18495
|
case 0:
|
|
@@ -18493,9 +18497,9 @@ function getMessagesQuery(action) {
|
|
|
18493
18497
|
_context9.n = 1;
|
|
18494
18498
|
return put(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
|
|
18495
18499
|
case 1:
|
|
18496
|
-
_action$payload = action.payload, channel = _action$payload.channel, loadWithLastMessage = _action$payload.loadWithLastMessage, messageId = _action$payload.messageId, limit = _action$payload.limit, withDeliveredMessages = _action$payload.withDeliveredMessages, highlight = _action$payload.highlight;
|
|
18500
|
+
_action$payload = action.payload, channel = _action$payload.channel, loadWithLastMessage = _action$payload.loadWithLastMessage, messageId = _action$payload.messageId, limit = _action$payload.limit, withDeliveredMessages = _action$payload.withDeliveredMessages, highlight = _action$payload.highlight, behavior = _action$payload.behavior;
|
|
18497
18501
|
if (!(channel.id && !channel.isMockChannel)) {
|
|
18498
|
-
_context9.n =
|
|
18502
|
+
_context9.n = 48;
|
|
18499
18503
|
break;
|
|
18500
18504
|
}
|
|
18501
18505
|
SceytChatClient = getClient();
|
|
@@ -18523,6 +18527,7 @@ function getMessagesQuery(action) {
|
|
|
18523
18527
|
break;
|
|
18524
18528
|
}
|
|
18525
18529
|
setHasPrevCached(false);
|
|
18530
|
+
setMessagesToMap(channel.id, []);
|
|
18526
18531
|
setAllMessages([]);
|
|
18527
18532
|
_context9.n = 3;
|
|
18528
18533
|
return call(messageQuery.loadPreviousMessageId, '0');
|
|
@@ -18579,13 +18584,13 @@ function getMessagesQuery(action) {
|
|
|
18579
18584
|
break;
|
|
18580
18585
|
}
|
|
18581
18586
|
_context9.n = 12;
|
|
18582
|
-
return put(setScrollToMessagesAC(messageId, highlight));
|
|
18587
|
+
return put(setScrollToMessagesAC(messageId, highlight, behavior));
|
|
18583
18588
|
case 12:
|
|
18584
|
-
_context9.n =
|
|
18589
|
+
_context9.n = 46;
|
|
18585
18590
|
break;
|
|
18586
18591
|
case 13:
|
|
18587
18592
|
if (!messageId) {
|
|
18588
|
-
_context9.n =
|
|
18593
|
+
_context9.n = 26;
|
|
18589
18594
|
break;
|
|
18590
18595
|
}
|
|
18591
18596
|
_allMessages = getAllMessages();
|
|
@@ -18594,7 +18599,7 @@ function getMessagesQuery(action) {
|
|
|
18594
18599
|
});
|
|
18595
18600
|
maxLengthPart = MESSAGES_MAX_LENGTH / 2;
|
|
18596
18601
|
if (!(messageIndex >= maxLengthPart)) {
|
|
18597
|
-
_context9.n =
|
|
18602
|
+
_context9.n = 16;
|
|
18598
18603
|
break;
|
|
18599
18604
|
}
|
|
18600
18605
|
result.messages = _allMessages.slice(messageIndex - maxLengthPart, messageIndex + maxLengthPart);
|
|
@@ -18603,151 +18608,160 @@ function getMessagesQuery(action) {
|
|
|
18603
18608
|
case 14:
|
|
18604
18609
|
setHasPrevCached(messageIndex > maxLengthPart);
|
|
18605
18610
|
setHasNextCached(_allMessages.length > maxLengthPart);
|
|
18611
|
+
_context9.n = 15;
|
|
18612
|
+
return put(setMessagesHasPrevAC(true));
|
|
18613
|
+
case 15:
|
|
18606
18614
|
_context9.n = 22;
|
|
18607
18615
|
break;
|
|
18608
|
-
case
|
|
18616
|
+
case 16:
|
|
18609
18617
|
messageQuery.limit = MESSAGES_MAX_LENGTH;
|
|
18610
18618
|
log.info('load by message id from server ...............', messageId);
|
|
18611
|
-
_context9.n =
|
|
18619
|
+
_context9.n = 17;
|
|
18612
18620
|
return call(messageQuery.loadNearMessageId, messageId);
|
|
18613
|
-
case
|
|
18621
|
+
case 17:
|
|
18614
18622
|
result = _context9.v;
|
|
18615
18623
|
if (!(result.messages.length === 50)) {
|
|
18616
|
-
_context9.n =
|
|
18624
|
+
_context9.n = 20;
|
|
18617
18625
|
break;
|
|
18618
18626
|
}
|
|
18619
|
-
messageQuery.limit =
|
|
18620
|
-
_context9.n =
|
|
18627
|
+
messageQuery.limit = MESSAGES_MAX_LENGTH - 50;
|
|
18628
|
+
_context9.n = 18;
|
|
18621
18629
|
return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
|
|
18622
|
-
case
|
|
18630
|
+
case 18:
|
|
18623
18631
|
_secondResult = _context9.v;
|
|
18624
18632
|
messageQuery.reverse = false;
|
|
18625
|
-
_context9.n =
|
|
18633
|
+
_context9.n = 19;
|
|
18626
18634
|
return call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
|
|
18627
|
-
case
|
|
18635
|
+
case 19:
|
|
18628
18636
|
thirdResult = _context9.v;
|
|
18629
18637
|
result.messages = [].concat(_secondResult.messages, result.messages, thirdResult.messages);
|
|
18630
18638
|
result.hasNext = _secondResult.hasNext;
|
|
18631
18639
|
messageQuery.reverse = true;
|
|
18632
|
-
case 19:
|
|
18633
|
-
log.info('result from server ....... ', result);
|
|
18634
18640
|
_context9.n = 20;
|
|
18635
|
-
return put(
|
|
18641
|
+
return put(setMessagesHasPrevAC(_secondResult.hasNext));
|
|
18636
18642
|
case 20:
|
|
18643
|
+
log.info('result from server ....... ', result);
|
|
18637
18644
|
_context9.n = 21;
|
|
18638
18645
|
return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
|
|
18639
18646
|
case 21:
|
|
18647
|
+
setMessagesToMap(channel.id, result.messages);
|
|
18640
18648
|
setAllMessages([].concat(result.messages));
|
|
18641
18649
|
setHasPrevCached(false);
|
|
18642
18650
|
setHasNextCached(false);
|
|
18643
18651
|
case 22:
|
|
18644
18652
|
_context9.n = 23;
|
|
18645
|
-
return put(
|
|
18653
|
+
return put(setMessagesHasNextAC(true));
|
|
18646
18654
|
case 23:
|
|
18647
18655
|
_context9.n = 24;
|
|
18648
|
-
return put(
|
|
18656
|
+
return put(setScrollToMessagesAC(messageId, true, behavior));
|
|
18649
18657
|
case 24:
|
|
18650
|
-
_context9.n =
|
|
18651
|
-
|
|
18658
|
+
_context9.n = 25;
|
|
18659
|
+
return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
|
|
18652
18660
|
case 25:
|
|
18661
|
+
_context9.n = 46;
|
|
18662
|
+
break;
|
|
18663
|
+
case 26:
|
|
18653
18664
|
if (!(channel.newMessageCount && channel.lastDisplayedMessageId)) {
|
|
18654
|
-
_context9.n =
|
|
18665
|
+
_context9.n = 39;
|
|
18655
18666
|
break;
|
|
18656
18667
|
}
|
|
18668
|
+
setMessagesToMap(channel.id, []);
|
|
18657
18669
|
setAllMessages([]);
|
|
18658
18670
|
messageQuery.limit = MESSAGES_MAX_LENGTH;
|
|
18659
18671
|
if (!Number(channel.lastDisplayedMessageId)) {
|
|
18660
|
-
_context9.n =
|
|
18672
|
+
_context9.n = 32;
|
|
18661
18673
|
break;
|
|
18662
18674
|
}
|
|
18663
|
-
_context9.n =
|
|
18675
|
+
_context9.n = 27;
|
|
18664
18676
|
return call(messageQuery.loadNearMessageId, channel.lastDisplayedMessageId);
|
|
18665
|
-
case
|
|
18677
|
+
case 27:
|
|
18666
18678
|
result = _context9.v;
|
|
18667
18679
|
if (!(result.messages.length === 50)) {
|
|
18668
|
-
_context9.n =
|
|
18680
|
+
_context9.n = 31;
|
|
18669
18681
|
break;
|
|
18670
18682
|
}
|
|
18671
18683
|
messageQuery.limit = channel.newMessageCount > 25 ? (MESSAGES_MAX_LENGTH - 50) / 2 : MESSAGES_MAX_LENGTH - 50;
|
|
18672
|
-
_context9.n =
|
|
18684
|
+
_context9.n = 28;
|
|
18673
18685
|
return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
|
|
18674
|
-
case
|
|
18686
|
+
case 28:
|
|
18675
18687
|
_secondResult2 = _context9.v;
|
|
18676
18688
|
if (!(channel.newMessageCount > 25)) {
|
|
18677
|
-
_context9.n =
|
|
18689
|
+
_context9.n = 30;
|
|
18678
18690
|
break;
|
|
18679
18691
|
}
|
|
18680
18692
|
messageQuery.reverse = false;
|
|
18681
|
-
_context9.n =
|
|
18693
|
+
_context9.n = 29;
|
|
18682
18694
|
return call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
|
|
18683
|
-
case
|
|
18695
|
+
case 29:
|
|
18684
18696
|
_thirdResult = _context9.v;
|
|
18685
18697
|
result.messages = [].concat(_secondResult2.messages, result.messages, _thirdResult.messages);
|
|
18686
18698
|
messageQuery.reverse = true;
|
|
18687
|
-
_context9.n =
|
|
18699
|
+
_context9.n = 31;
|
|
18688
18700
|
break;
|
|
18689
|
-
case 29:
|
|
18690
|
-
result.messages = [].concat(_secondResult2.messages, result.messages);
|
|
18691
18701
|
case 30:
|
|
18692
|
-
|
|
18693
|
-
break;
|
|
18702
|
+
result.messages = [].concat(_secondResult2.messages, result.messages);
|
|
18694
18703
|
case 31:
|
|
18695
|
-
_context9.n =
|
|
18696
|
-
|
|
18704
|
+
_context9.n = 35;
|
|
18705
|
+
break;
|
|
18697
18706
|
case 32:
|
|
18707
|
+
_context9.n = 33;
|
|
18708
|
+
return call(messageQuery.loadPrevious);
|
|
18709
|
+
case 33:
|
|
18698
18710
|
result = _context9.v;
|
|
18699
18711
|
if (!(result.messages.length === 50)) {
|
|
18700
|
-
_context9.n =
|
|
18712
|
+
_context9.n = 35;
|
|
18701
18713
|
break;
|
|
18702
18714
|
}
|
|
18703
18715
|
messageQuery.limit = MESSAGES_MAX_LENGTH - 50;
|
|
18704
|
-
_context9.n =
|
|
18716
|
+
_context9.n = 34;
|
|
18705
18717
|
return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
|
|
18706
|
-
case
|
|
18718
|
+
case 34:
|
|
18707
18719
|
_secondResult3 = _context9.v;
|
|
18708
18720
|
result.messages = [].concat(_secondResult3.messages, result.messages);
|
|
18709
18721
|
result.hasNext = _secondResult3.hasNext;
|
|
18710
|
-
case 34:
|
|
18711
|
-
setMessagesToMap(channel.id, result.messages);
|
|
18712
|
-
_context9.n = 35;
|
|
18713
|
-
return put(setMessagesHasPrevAC(true));
|
|
18714
18722
|
case 35:
|
|
18715
18723
|
_context9.n = 36;
|
|
18716
|
-
return put(
|
|
18724
|
+
return put(setMessagesHasPrevAC(true));
|
|
18717
18725
|
case 36:
|
|
18718
|
-
setAllMessages([].concat(result.messages));
|
|
18719
18726
|
_context9.n = 37;
|
|
18720
|
-
return put(
|
|
18727
|
+
return put(setMessagesHasNextAC(channel.lastMessage && result.messages.length > 0 && channel.lastMessage.id !== result.messages[result.messages.length - 1].id));
|
|
18721
18728
|
case 37:
|
|
18722
|
-
|
|
18723
|
-
|
|
18729
|
+
setMessagesToMap(channel.id, result.messages);
|
|
18730
|
+
setAllMessages([].concat(result.messages));
|
|
18731
|
+
_context9.n = 38;
|
|
18732
|
+
return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
|
|
18724
18733
|
case 38:
|
|
18734
|
+
_context9.n = 46;
|
|
18735
|
+
break;
|
|
18736
|
+
case 39:
|
|
18737
|
+
setMessagesToMap(channel.id, []);
|
|
18725
18738
|
setAllMessages([]);
|
|
18726
18739
|
if (!(cachedMessages && cachedMessages.length)) {
|
|
18727
|
-
_context9.n =
|
|
18740
|
+
_context9.n = 40;
|
|
18728
18741
|
break;
|
|
18729
18742
|
}
|
|
18743
|
+
setMessagesToMap(channel.id, []);
|
|
18730
18744
|
setAllMessages([].concat(cachedMessages));
|
|
18731
|
-
_context9.n =
|
|
18745
|
+
_context9.n = 40;
|
|
18732
18746
|
return put(setMessagesAC(JSON.parse(JSON.stringify(cachedMessages))));
|
|
18733
|
-
case
|
|
18747
|
+
case 40:
|
|
18734
18748
|
log.info('load message from server');
|
|
18735
|
-
_context9.n =
|
|
18749
|
+
_context9.n = 41;
|
|
18736
18750
|
return call(messageQuery.loadPrevious);
|
|
18737
|
-
case
|
|
18751
|
+
case 41:
|
|
18738
18752
|
result = _context9.v;
|
|
18739
18753
|
if (!(result.messages.length === 50)) {
|
|
18740
|
-
_context9.n =
|
|
18754
|
+
_context9.n = 43;
|
|
18741
18755
|
break;
|
|
18742
18756
|
}
|
|
18743
18757
|
messageQuery.limit = MESSAGES_MAX_LENGTH - 50;
|
|
18744
|
-
_context9.n =
|
|
18758
|
+
_context9.n = 42;
|
|
18745
18759
|
return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
|
|
18746
|
-
case
|
|
18760
|
+
case 42:
|
|
18747
18761
|
_secondResult4 = _context9.v;
|
|
18748
18762
|
result.messages = [].concat(_secondResult4.messages, result.messages);
|
|
18749
18763
|
result.hasNext = _secondResult4.hasNext;
|
|
18750
|
-
case
|
|
18764
|
+
case 43:
|
|
18751
18765
|
updatedMessages = [];
|
|
18752
18766
|
result.messages.forEach(function (msg) {
|
|
18753
18767
|
var updatedMessage = updateMessageOnMap(channel.id, {
|
|
@@ -18759,18 +18773,18 @@ function getMessagesQuery(action) {
|
|
|
18759
18773
|
});
|
|
18760
18774
|
setMessagesToMap(channel.id, updatedMessages);
|
|
18761
18775
|
setAllMessages([].concat(updatedMessages));
|
|
18762
|
-
_context9.n = 43;
|
|
18763
|
-
return put(setMessagesAC(JSON.parse(JSON.stringify(updatedMessages))));
|
|
18764
|
-
case 43:
|
|
18765
18776
|
_context9.n = 44;
|
|
18766
|
-
return put(
|
|
18777
|
+
return put(setMessagesAC(JSON.parse(JSON.stringify(updatedMessages))));
|
|
18767
18778
|
case 44:
|
|
18768
18779
|
_context9.n = 45;
|
|
18769
|
-
return put(
|
|
18780
|
+
return put(setMessagesHasPrevAC(result.hasNext));
|
|
18770
18781
|
case 45:
|
|
18782
|
+
_context9.n = 46;
|
|
18783
|
+
return put(setMessagesHasNextAC(false));
|
|
18784
|
+
case 46:
|
|
18771
18785
|
pendingMessages = getPendingMessages(channel.id);
|
|
18772
18786
|
if (!(pendingMessages && pendingMessages.length)) {
|
|
18773
|
-
_context9.n =
|
|
18787
|
+
_context9.n = 47;
|
|
18774
18788
|
break;
|
|
18775
18789
|
}
|
|
18776
18790
|
_messagesMap = {};
|
|
@@ -18780,38 +18794,38 @@ function getMessagesQuery(action) {
|
|
|
18780
18794
|
filteredPendingMessages = pendingMessages.filter(function (msg) {
|
|
18781
18795
|
return !_messagesMap[msg.tid || ''];
|
|
18782
18796
|
});
|
|
18783
|
-
_context9.n =
|
|
18797
|
+
_context9.n = 47;
|
|
18784
18798
|
return put(addMessagesAC(filteredPendingMessages, MESSAGE_LOAD_DIRECTION.NEXT));
|
|
18785
|
-
case 46:
|
|
18786
|
-
_context9.n = 48;
|
|
18787
|
-
break;
|
|
18788
18799
|
case 47:
|
|
18800
|
+
_context9.n = 49;
|
|
18801
|
+
break;
|
|
18802
|
+
case 48:
|
|
18789
18803
|
if (!channel.isMockChannel) {
|
|
18790
|
-
_context9.n =
|
|
18804
|
+
_context9.n = 49;
|
|
18791
18805
|
break;
|
|
18792
18806
|
}
|
|
18793
|
-
_context9.n =
|
|
18807
|
+
_context9.n = 49;
|
|
18794
18808
|
return put(setMessagesAC([]));
|
|
18795
|
-
case 48:
|
|
18796
|
-
_context9.n = 50;
|
|
18797
|
-
break;
|
|
18798
18809
|
case 49:
|
|
18799
|
-
_context9.
|
|
18800
|
-
|
|
18801
|
-
log.error('error in message query', _t9);
|
|
18810
|
+
_context9.n = 51;
|
|
18811
|
+
break;
|
|
18802
18812
|
case 50:
|
|
18803
18813
|
_context9.p = 50;
|
|
18804
|
-
|
|
18805
|
-
|
|
18814
|
+
_t9 = _context9.v;
|
|
18815
|
+
log.error('error in message query', _t9);
|
|
18806
18816
|
case 51:
|
|
18807
|
-
|
|
18817
|
+
_context9.p = 51;
|
|
18818
|
+
_context9.n = 52;
|
|
18819
|
+
return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
|
|
18808
18820
|
case 52:
|
|
18821
|
+
return _context9.f(51);
|
|
18822
|
+
case 53:
|
|
18809
18823
|
return _context9.a(2);
|
|
18810
18824
|
}
|
|
18811
|
-
}, _marked7$1, null, [[0,
|
|
18825
|
+
}, _marked7$1, null, [[0, 50, 51, 53]]);
|
|
18812
18826
|
}
|
|
18813
18827
|
function getMessageQuery(action) {
|
|
18814
|
-
var payload, channelId, messageId, channel, messages, _t0;
|
|
18828
|
+
var payload, channelId, messageId, channel, messages, fetchedMessage, _t0;
|
|
18815
18829
|
return _regenerator().w(function (_context0) {
|
|
18816
18830
|
while (1) switch (_context0.p = _context0.n) {
|
|
18817
18831
|
case 0:
|
|
@@ -18819,34 +18833,53 @@ function getMessageQuery(action) {
|
|
|
18819
18833
|
payload = action.payload;
|
|
18820
18834
|
channelId = payload.channelId, messageId = payload.messageId;
|
|
18821
18835
|
_context0.n = 1;
|
|
18822
|
-
return call(
|
|
18836
|
+
return call(getChannelFromAllChannels, channelId);
|
|
18823
18837
|
case 1:
|
|
18824
18838
|
channel = _context0.v;
|
|
18825
|
-
|
|
18826
|
-
|
|
18839
|
+
if (channel) {
|
|
18840
|
+
_context0.n = 2;
|
|
18841
|
+
break;
|
|
18842
|
+
}
|
|
18843
|
+
return _context0.a(2);
|
|
18827
18844
|
case 2:
|
|
18828
|
-
messages = _context0.v;
|
|
18829
18845
|
_context0.n = 3;
|
|
18830
|
-
return
|
|
18846
|
+
return call(channel.getMessagesById, [messageId]);
|
|
18831
18847
|
case 3:
|
|
18848
|
+
messages = _context0.v;
|
|
18849
|
+
fetchedMessage = messages && messages[0] ? JSON.parse(JSON.stringify(messages[0])) : null;
|
|
18850
|
+
if (!fetchedMessage) {
|
|
18851
|
+
_context0.n = 6;
|
|
18852
|
+
break;
|
|
18853
|
+
}
|
|
18854
|
+
_context0.n = 4;
|
|
18855
|
+
return put(updateMessageAC(messageId, fetchedMessage));
|
|
18856
|
+
case 4:
|
|
18832
18857
|
updateMessageOnMap(channel.id, {
|
|
18833
18858
|
messageId: messageId,
|
|
18834
|
-
params:
|
|
18859
|
+
params: fetchedMessage
|
|
18835
18860
|
});
|
|
18836
|
-
updateMessageOnAllMessages(messageId,
|
|
18837
|
-
_context0.n =
|
|
18861
|
+
updateMessageOnAllMessages(messageId, fetchedMessage);
|
|
18862
|
+
_context0.n = 5;
|
|
18838
18863
|
return put(setScrollToMessagesAC(messageId, false));
|
|
18839
|
-
case
|
|
18864
|
+
case 5:
|
|
18865
|
+
if (!(channel.lastMessage && channel.lastMessage.id === messageId)) {
|
|
18866
|
+
_context0.n = 6;
|
|
18867
|
+
break;
|
|
18868
|
+
}
|
|
18869
|
+
updateChannelLastMessageOnAllChannels(channel.id, fetchedMessage);
|
|
18840
18870
|
_context0.n = 6;
|
|
18871
|
+
return put(updateChannelLastMessageAC(fetchedMessage, channel));
|
|
18872
|
+
case 6:
|
|
18873
|
+
_context0.n = 8;
|
|
18841
18874
|
break;
|
|
18842
|
-
case
|
|
18843
|
-
_context0.p =
|
|
18875
|
+
case 7:
|
|
18876
|
+
_context0.p = 7;
|
|
18844
18877
|
_t0 = _context0.v;
|
|
18845
18878
|
log.error('error in message query', _t0);
|
|
18846
|
-
case
|
|
18879
|
+
case 8:
|
|
18847
18880
|
return _context0.a(2);
|
|
18848
18881
|
}
|
|
18849
|
-
}, _marked8$1, null, [[0,
|
|
18882
|
+
}, _marked8$1, null, [[0, 7]]);
|
|
18850
18883
|
}
|
|
18851
18884
|
function loadMoreMessages(action) {
|
|
18852
18885
|
var payload, limit, direction, channelId, messageId, hasNext, SceytChatClient, messageQueryBuilder, messageQuery, result, _t1;
|
|
@@ -18935,25 +18968,38 @@ function loadMoreMessages(action) {
|
|
|
18935
18968
|
_context1.n = 11;
|
|
18936
18969
|
return put(addMessagesAC(JSON.parse(JSON.stringify(result.messages)), direction));
|
|
18937
18970
|
case 11:
|
|
18938
|
-
_context1.n =
|
|
18971
|
+
_context1.n = 16;
|
|
18939
18972
|
break;
|
|
18940
18973
|
case 12:
|
|
18941
18974
|
_context1.n = 13;
|
|
18942
18975
|
return put(addMessagesAC([], direction));
|
|
18943
18976
|
case 13:
|
|
18977
|
+
if (!(direction === MESSAGE_LOAD_DIRECTION.NEXT)) {
|
|
18978
|
+
_context1.n = 15;
|
|
18979
|
+
break;
|
|
18980
|
+
}
|
|
18944
18981
|
_context1.n = 14;
|
|
18945
|
-
return put(
|
|
18982
|
+
return put(setMessagesHasNextAC(false));
|
|
18946
18983
|
case 14:
|
|
18947
18984
|
_context1.n = 16;
|
|
18948
18985
|
break;
|
|
18949
18986
|
case 15:
|
|
18950
|
-
_context1.
|
|
18987
|
+
_context1.n = 16;
|
|
18988
|
+
return put(setMessagesHasPrevAC(false));
|
|
18989
|
+
case 16:
|
|
18990
|
+
_context1.n = 17;
|
|
18991
|
+
return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
|
|
18992
|
+
case 17:
|
|
18993
|
+
_context1.n = 19;
|
|
18994
|
+
break;
|
|
18995
|
+
case 18:
|
|
18996
|
+
_context1.p = 18;
|
|
18951
18997
|
_t1 = _context1.v;
|
|
18952
18998
|
log.error('error in load more messages', _t1);
|
|
18953
|
-
case
|
|
18999
|
+
case 19:
|
|
18954
19000
|
return _context1.a(2);
|
|
18955
19001
|
}
|
|
18956
|
-
}, _marked9$1, null, [[0,
|
|
19002
|
+
}, _marked9$1, null, [[0, 18]]);
|
|
18957
19003
|
}
|
|
18958
19004
|
function addReaction(action) {
|
|
18959
19005
|
var payload, channelId, messageId, key, score, reason, enforceUnique, user, channel, _yield$call, _message2, reaction, channelUpdateParam, _t10;
|
|
@@ -19377,7 +19423,7 @@ function MessageSaga() {
|
|
|
19377
19423
|
return takeLatest(GET_MESSAGES, getMessagesQuery);
|
|
19378
19424
|
case 7:
|
|
19379
19425
|
_context18.n = 8;
|
|
19380
|
-
return
|
|
19426
|
+
return takeEvery(GET_MESSAGE, getMessageQuery);
|
|
19381
19427
|
case 8:
|
|
19382
19428
|
_context18.n = 9;
|
|
19383
19429
|
return takeLatest(GET_MESSAGES_ATTACHMENTS, getMessageAttachments);
|
|
@@ -20982,6 +21028,50 @@ function SvgAvatar(props) {
|
|
|
20982
21028
|
})));
|
|
20983
21029
|
}
|
|
20984
21030
|
|
|
21031
|
+
var ATTACHMENTS_CACHE = 'attachments-cache';
|
|
21032
|
+
var isBrowser = typeof window !== 'undefined';
|
|
21033
|
+
var cacheAvailable;
|
|
21034
|
+
if (isBrowser) {
|
|
21035
|
+
cacheAvailable = 'caches' in window;
|
|
21036
|
+
} else {
|
|
21037
|
+
cacheAvailable = 'caches' in global;
|
|
21038
|
+
}
|
|
21039
|
+
var setAttachmentToCache = function setAttachmentToCache(attachmentUrl, attachmentResponse) {
|
|
21040
|
+
if (cacheAvailable) {
|
|
21041
|
+
caches.open(ATTACHMENTS_CACHE).then(function (cache) {
|
|
21042
|
+
try {
|
|
21043
|
+
cache.put(attachmentUrl, attachmentResponse).then(function () {
|
|
21044
|
+
log.info('Cache success');
|
|
21045
|
+
})["catch"](function (e) {
|
|
21046
|
+
log.info('Error on cache attachment ... ', e);
|
|
21047
|
+
caches["delete"](attachmentUrl);
|
|
21048
|
+
});
|
|
21049
|
+
return Promise.resolve();
|
|
21050
|
+
} catch (e) {
|
|
21051
|
+
return Promise.reject(e);
|
|
21052
|
+
}
|
|
21053
|
+
});
|
|
21054
|
+
}
|
|
21055
|
+
};
|
|
21056
|
+
var getAttachmentUrlFromCache = function getAttachmentUrlFromCache(attachmentUrl) {
|
|
21057
|
+
try {
|
|
21058
|
+
if (!cacheAvailable) {
|
|
21059
|
+
log.error('Cache is not available');
|
|
21060
|
+
return Promise.reject(new Error('Cache not available'));
|
|
21061
|
+
}
|
|
21062
|
+
return Promise.resolve(caches.match(attachmentUrl)).then(function (response) {
|
|
21063
|
+
if (response) {
|
|
21064
|
+
return Promise.resolve(response.blob()).then(URL.createObjectURL);
|
|
21065
|
+
} else {
|
|
21066
|
+
log.info('The image or video is not cached', attachmentUrl);
|
|
21067
|
+
return false;
|
|
21068
|
+
}
|
|
21069
|
+
});
|
|
21070
|
+
} catch (e) {
|
|
21071
|
+
return Promise.reject(e);
|
|
21072
|
+
}
|
|
21073
|
+
};
|
|
21074
|
+
|
|
20985
21075
|
var _templateObject$3, _templateObject2$3, _templateObject3$2, _templateObject4$2;
|
|
20986
21076
|
var Avatar = function Avatar(_ref) {
|
|
20987
21077
|
var image = _ref.image,
|
|
@@ -20998,6 +21088,9 @@ var Avatar = function Avatar(_ref) {
|
|
|
20998
21088
|
var theme = useSelector(themeSelector);
|
|
20999
21089
|
var _useColor = useColors(),
|
|
21000
21090
|
iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE];
|
|
21091
|
+
var _useState = useState(image || null),
|
|
21092
|
+
resolvedImageSrc = _useState[0],
|
|
21093
|
+
setResolvedImageSrc = _useState[1];
|
|
21001
21094
|
var isDeletedUserAvatar = !image && !name;
|
|
21002
21095
|
var avatarText = '';
|
|
21003
21096
|
if (!image && name) {
|
|
@@ -21014,11 +21107,68 @@ var Avatar = function Avatar(_ref) {
|
|
|
21014
21107
|
avatarText = _firstCharOfFirstWord ? String.fromCodePoint(_firstCharOfFirstWord) : '';
|
|
21015
21108
|
}
|
|
21016
21109
|
}
|
|
21110
|
+
useEffect(function () {
|
|
21111
|
+
var isCancelled = false;
|
|
21112
|
+
if (!image) {
|
|
21113
|
+
setResolvedImageSrc(null);
|
|
21114
|
+
return;
|
|
21115
|
+
}
|
|
21116
|
+
var isHttpUrl = /^https?:\/\//i.test(image);
|
|
21117
|
+
if (!isHttpUrl) {
|
|
21118
|
+
setResolvedImageSrc(image);
|
|
21119
|
+
return;
|
|
21120
|
+
}
|
|
21121
|
+
getAttachmentUrlFromCache(image).then(function (cachedUrl) {
|
|
21122
|
+
try {
|
|
21123
|
+
if (isCancelled) return Promise.resolve();
|
|
21124
|
+
var _temp2 = function () {
|
|
21125
|
+
if (cachedUrl) {
|
|
21126
|
+
setResolvedImageSrc(cachedUrl);
|
|
21127
|
+
} else {
|
|
21128
|
+
var _temp = _catch(function () {
|
|
21129
|
+
return Promise.resolve(fetch(image, {
|
|
21130
|
+
credentials: 'same-origin'
|
|
21131
|
+
})).then(function (response) {
|
|
21132
|
+
setAttachmentToCache(image, response.clone());
|
|
21133
|
+
setResolvedImageSrc(image);
|
|
21134
|
+
});
|
|
21135
|
+
}, function () {
|
|
21136
|
+
setResolvedImageSrc(image);
|
|
21137
|
+
});
|
|
21138
|
+
if (_temp && _temp.then) return _temp.then(function () {});
|
|
21139
|
+
}
|
|
21140
|
+
}();
|
|
21141
|
+
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
21142
|
+
} catch (e) {
|
|
21143
|
+
return Promise.reject(e);
|
|
21144
|
+
}
|
|
21145
|
+
})["catch"](function () {
|
|
21146
|
+
try {
|
|
21147
|
+
if (isCancelled) return Promise.resolve();
|
|
21148
|
+
var _temp3 = _catch(function () {
|
|
21149
|
+
return Promise.resolve(fetch(image, {
|
|
21150
|
+
credentials: 'same-origin'
|
|
21151
|
+
})).then(function (response) {
|
|
21152
|
+
setAttachmentToCache(image, response.clone());
|
|
21153
|
+
setResolvedImageSrc(image);
|
|
21154
|
+
});
|
|
21155
|
+
}, function () {
|
|
21156
|
+
setResolvedImageSrc(image);
|
|
21157
|
+
});
|
|
21158
|
+
return Promise.resolve(_temp3 && _temp3.then ? _temp3.then(function () {}) : void 0);
|
|
21159
|
+
} catch (e) {
|
|
21160
|
+
return Promise.reject(e);
|
|
21161
|
+
}
|
|
21162
|
+
});
|
|
21163
|
+
return function () {
|
|
21164
|
+
isCancelled = true;
|
|
21165
|
+
};
|
|
21166
|
+
}, [image]);
|
|
21017
21167
|
return /*#__PURE__*/React__default.createElement(Container$1, {
|
|
21018
21168
|
border: border,
|
|
21019
21169
|
marginAuto: marginAuto,
|
|
21020
21170
|
size: size,
|
|
21021
|
-
isImage: !!(
|
|
21171
|
+
isImage: !!(resolvedImageSrc || setDefaultAvatar),
|
|
21022
21172
|
avatarName: name,
|
|
21023
21173
|
textSize: textSize,
|
|
21024
21174
|
onClick: handleAvatarClick,
|
|
@@ -21032,7 +21182,7 @@ var Avatar = function Avatar(_ref) {
|
|
|
21032
21182
|
}) : (/*#__PURE__*/React__default.createElement("span", null, avatarText)) : (/*#__PURE__*/React__default.createElement(AvatarImage, {
|
|
21033
21183
|
draggable: false,
|
|
21034
21184
|
showImage: true,
|
|
21035
|
-
src: image,
|
|
21185
|
+
src: resolvedImageSrc || image,
|
|
21036
21186
|
size: size,
|
|
21037
21187
|
alt: ''
|
|
21038
21188
|
})));
|
|
@@ -21123,7 +21273,6 @@ var ChannelMessageText = function ChannelMessageText(_ref2) {
|
|
|
21123
21273
|
}), channel.lastReactedMessage && '"')))));
|
|
21124
21274
|
};
|
|
21125
21275
|
var Channel = function Channel(_ref3) {
|
|
21126
|
-
var _channel$metadata;
|
|
21127
21276
|
var channel = _ref3.channel,
|
|
21128
21277
|
theme = _ref3.theme,
|
|
21129
21278
|
_ref3$showAvatar = _ref3.showAvatar,
|
|
@@ -21147,7 +21296,10 @@ var Channel = function Channel(_ref3) {
|
|
|
21147
21296
|
channelLastMessageTimeFontSize = _ref3.channelLastMessageTimeFontSize,
|
|
21148
21297
|
channelLastMessageHeight = _ref3.channelLastMessageHeight,
|
|
21149
21298
|
channelAvatarSize = _ref3.channelAvatarSize,
|
|
21150
|
-
channelAvatarTextSize = _ref3.channelAvatarTextSize
|
|
21299
|
+
channelAvatarTextSize = _ref3.channelAvatarTextSize,
|
|
21300
|
+
setSelectedChannel = _ref3.setSelectedChannel,
|
|
21301
|
+
getCustomLatestMessage = _ref3.getCustomLatestMessage,
|
|
21302
|
+
doNotShowMessageDeliveryTypes = _ref3.doNotShowMessageDeliveryTypes;
|
|
21151
21303
|
var _useColor = useColors(),
|
|
21152
21304
|
accentColor = _useColor[THEME_COLORS.ACCENT],
|
|
21153
21305
|
textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
|
|
@@ -21168,7 +21320,7 @@ var Channel = function Channel(_ref3) {
|
|
|
21168
21320
|
var activeChannel = useSelector(activeChannelSelector) || {};
|
|
21169
21321
|
var channelDraftIsRemoved = useSelector(channelMessageDraftIsRemovedSelector);
|
|
21170
21322
|
var isDirectChannel = channel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
|
|
21171
|
-
var isSelfChannel = isDirectChannel &&
|
|
21323
|
+
var isSelfChannel = isDirectChannel && channel.memberCount === 1 && channel.members.length > 0 && channel.members[0].id === user.id;
|
|
21172
21324
|
var directChannelUser = isDirectChannel && channel.members.find(function (member) {
|
|
21173
21325
|
return member.id !== user.id;
|
|
21174
21326
|
});
|
|
@@ -21185,13 +21337,6 @@ var Channel = function Channel(_ref3) {
|
|
|
21185
21337
|
statusWidth = _useState3[0],
|
|
21186
21338
|
setStatusWidth = _useState3[1];
|
|
21187
21339
|
var avatarName = channel.subject || (isDirectChannel && directChannelUser ? directChannelUser.firstName || directChannelUser.id : isSelfChannel ? 'Me' : '');
|
|
21188
|
-
var handleChangeActiveChannel = function handleChangeActiveChannel(chan) {
|
|
21189
|
-
if (activeChannel.id !== chan.id) {
|
|
21190
|
-
dispatch(sendTypingAC(false));
|
|
21191
|
-
dispatch(clearMessagesAC());
|
|
21192
|
-
dispatch(switchChannelActionAC(chan));
|
|
21193
|
-
}
|
|
21194
|
-
};
|
|
21195
21340
|
var messageAuthorRef = useRef(null);
|
|
21196
21341
|
var messageTimeAndStatusRef = useRef(null);
|
|
21197
21342
|
useUpdatePresence(channel, true);
|
|
@@ -21276,6 +21421,43 @@ var Channel = function Channel(_ref3) {
|
|
|
21276
21421
|
isDirectChannel: isDirectChannel
|
|
21277
21422
|
});
|
|
21278
21423
|
}, [typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.isTyping, typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.isRecording, draftMessageText, lastMessage, user, contactsMap, getFromContacts, lastMessageMetas, accentColor, typingOrRecording, channel, isDirectChannel]);
|
|
21424
|
+
var getCustomLatestMessageComponent = useCallback(function (_ref4) {
|
|
21425
|
+
var lastMessage = _ref4.lastMessage,
|
|
21426
|
+
typingOrRecording = _ref4.typingOrRecording,
|
|
21427
|
+
draftMessageText = _ref4.draftMessageText,
|
|
21428
|
+
textSecondary = _ref4.textSecondary,
|
|
21429
|
+
channel = _ref4.channel,
|
|
21430
|
+
channelLastMessageFontSize = _ref4.channelLastMessageFontSize,
|
|
21431
|
+
channelLastMessageHeight = _ref4.channelLastMessageHeight,
|
|
21432
|
+
isDirectChannel = _ref4.isDirectChannel,
|
|
21433
|
+
textPrimary = _ref4.textPrimary,
|
|
21434
|
+
messageAuthorRef = _ref4.messageAuthorRef,
|
|
21435
|
+
contactsMap = _ref4.contactsMap,
|
|
21436
|
+
getFromContacts = _ref4.getFromContacts,
|
|
21437
|
+
warningColor = _ref4.warningColor,
|
|
21438
|
+
user = _ref4.user,
|
|
21439
|
+
MessageText = _ref4.MessageText;
|
|
21440
|
+
return getCustomLatestMessage && getCustomLatestMessage({
|
|
21441
|
+
lastMessage: lastMessage,
|
|
21442
|
+
typingOrRecording: typingOrRecording,
|
|
21443
|
+
draftMessageText: draftMessageText,
|
|
21444
|
+
textSecondary: textSecondary,
|
|
21445
|
+
channel: channel,
|
|
21446
|
+
channelLastMessageFontSize: channelLastMessageFontSize,
|
|
21447
|
+
channelLastMessageHeight: channelLastMessageHeight,
|
|
21448
|
+
isDirectChannel: isDirectChannel,
|
|
21449
|
+
textPrimary: textPrimary,
|
|
21450
|
+
messageAuthorRef: messageAuthorRef,
|
|
21451
|
+
contactsMap: contactsMap,
|
|
21452
|
+
getFromContacts: getFromContacts,
|
|
21453
|
+
warningColor: warningColor,
|
|
21454
|
+
user: user,
|
|
21455
|
+
MessageText: MessageText
|
|
21456
|
+
});
|
|
21457
|
+
}, [getCustomLatestMessage, lastMessage, typingOrRecording, draftMessageText, textSecondary, channel, channelLastMessageFontSize, channelLastMessageHeight, isDirectChannel, textPrimary, messageAuthorRef, contactsMap, getFromContacts, warningColor, user, MessageText]);
|
|
21458
|
+
var isTypeValid = useCallback(function (type) {
|
|
21459
|
+
return !doNotShowMessageDeliveryTypes.includes(type);
|
|
21460
|
+
}, [doNotShowMessageDeliveryTypes]);
|
|
21279
21461
|
return /*#__PURE__*/React__default.createElement(Container$2, {
|
|
21280
21462
|
theme: theme,
|
|
21281
21463
|
selectedChannel: channel.id === activeChannel.id,
|
|
@@ -21286,7 +21468,7 @@ var Channel = function Channel(_ref3) {
|
|
|
21286
21468
|
selectedChannelBorderRadius: selectedChannelBorderRadius,
|
|
21287
21469
|
channelsMargin: channelsMargin,
|
|
21288
21470
|
onClick: function onClick() {
|
|
21289
|
-
return
|
|
21471
|
+
return setSelectedChannel(channel);
|
|
21290
21472
|
},
|
|
21291
21473
|
hoverBackground: channelHoverBackground || backgroundHovered
|
|
21292
21474
|
}, showAvatar && (/*#__PURE__*/React__default.createElement(AvatarWrapper, null, /*#__PURE__*/React__default.createElement(Avatar, {
|
|
@@ -21312,7 +21494,23 @@ var Channel = function Channel(_ref3) {
|
|
|
21312
21494
|
avatarSize: channelAvatarSize
|
|
21313
21495
|
}, /*#__PURE__*/React__default.createElement("h3", null, channel.subject || (isDirectChannel && directChannelUser ? makeUsername(contactsMap && contactsMap[directChannelUser.id], directChannelUser, getFromContacts) : isSelfChannel ? 'Me' : '')), channel.muted && (/*#__PURE__*/React__default.createElement(MutedIcon, {
|
|
21314
21496
|
color: notificationsIsMutedIconColor || iconInactive
|
|
21315
|
-
}, notificationsIsMutedIcon || /*#__PURE__*/React__default.createElement(SvgUnmuteNotifications, null))),
|
|
21497
|
+
}, notificationsIsMutedIcon || /*#__PURE__*/React__default.createElement(SvgUnmuteNotifications, null))), getCustomLatestMessage ? getCustomLatestMessageComponent({
|
|
21498
|
+
lastMessage: lastMessage,
|
|
21499
|
+
typingOrRecording: typingOrRecording,
|
|
21500
|
+
draftMessageText: draftMessageText,
|
|
21501
|
+
textSecondary: textSecondary,
|
|
21502
|
+
channel: channel,
|
|
21503
|
+
channelLastMessageFontSize: channelLastMessageFontSize || '14px',
|
|
21504
|
+
channelLastMessageHeight: channelLastMessageHeight || '20px',
|
|
21505
|
+
isDirectChannel: isDirectChannel,
|
|
21506
|
+
textPrimary: textPrimary,
|
|
21507
|
+
messageAuthorRef: messageAuthorRef,
|
|
21508
|
+
contactsMap: contactsMap || {},
|
|
21509
|
+
getFromContacts: getFromContacts,
|
|
21510
|
+
warningColor: warningColor,
|
|
21511
|
+
user: user,
|
|
21512
|
+
MessageText: MessageText
|
|
21513
|
+
}) : (lastMessage || typingOrRecording.items.length > 0 || draftMessageText) && (/*#__PURE__*/React__default.createElement(LastMessage, {
|
|
21316
21514
|
color: textSecondary,
|
|
21317
21515
|
markedAsUnread: !!(channel.unread || channel.newMessageCount && channel.newMessageCount > 0),
|
|
21318
21516
|
unreadMentions: !!(channel.newMentionCount && channel.newMentionCount > 0),
|
|
@@ -21348,7 +21546,7 @@ var Channel = function Channel(_ref3) {
|
|
|
21348
21546
|
}, MessageText)))), /*#__PURE__*/React__default.createElement(ChannelStatus, {
|
|
21349
21547
|
color: iconInactive,
|
|
21350
21548
|
ref: messageTimeAndStatusRef
|
|
21351
|
-
}, lastMessage && lastMessage.state !== MESSAGE_STATUS.DELETE && (/*#__PURE__*/React__default.createElement(DeliveryIconCont, null, lastMessage && lastMessage.user && lastMessage.user.id === user.id && lastMessage.type
|
|
21549
|
+
}, lastMessage && lastMessage.state !== MESSAGE_STATUS.DELETE && (/*#__PURE__*/React__default.createElement(DeliveryIconCont, null, lastMessage && lastMessage.user && lastMessage.user.id === user.id && isTypeValid(lastMessage.type) && MessageStatusIcon({
|
|
21352
21550
|
messageStatus: lastMessage.deliveryStatus,
|
|
21353
21551
|
messageStatusDisplayingType: 'ticks',
|
|
21354
21552
|
readIconColor: accentColor,
|
|
@@ -21415,9 +21613,9 @@ var Container$2 = styled.div(_templateObject6$1 || (_templateObject6$1 = _tagged
|
|
|
21415
21613
|
return props.channelsMargin || '0 8px';
|
|
21416
21614
|
}, function (props) {
|
|
21417
21615
|
return props.selectedChannelBorderRadius || '12px';
|
|
21418
|
-
}, function (
|
|
21419
|
-
var selectedChannel =
|
|
21420
|
-
hoverBackground =
|
|
21616
|
+
}, function (_ref5) {
|
|
21617
|
+
var selectedChannel = _ref5.selectedChannel,
|
|
21618
|
+
hoverBackground = _ref5.hoverBackground;
|
|
21421
21619
|
return !selectedChannel && "\n background-color: " + hoverBackground + ";\n ";
|
|
21422
21620
|
}, UserStatus, function (props) {
|
|
21423
21621
|
return props.selectedChannel ? props.selectedBackgroundColor : props.hoverBackground;
|
|
@@ -21432,9 +21630,9 @@ var DraftMessageText = styled.span(_templateObject8$1 || (_templateObject8$1 = _
|
|
|
21432
21630
|
});
|
|
21433
21631
|
var LastMessageAuthor = styled.div(_templateObject9$1 || (_templateObject9$1 = _taggedTemplateLiteralLoose(["\n max-width: 120px;\n font-weight: 500;\n color: ", ";\n\n ", "\n & > span {\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 100%;\n }\n"])), function (props) {
|
|
21434
21632
|
return props.color;
|
|
21435
|
-
}, function (
|
|
21436
|
-
var typing =
|
|
21437
|
-
recording =
|
|
21633
|
+
}, function (_ref6) {
|
|
21634
|
+
var typing = _ref6.typing,
|
|
21635
|
+
recording = _ref6.recording;
|
|
21438
21636
|
return (typing || recording) && "\n font-weight: 500;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: calc(100% - " + (typing ? 62 : 76) + "px);\n ";
|
|
21439
21637
|
});
|
|
21440
21638
|
var Points = styled.span(_templateObject0$1 || (_templateObject0$1 = _taggedTemplateLiteralLoose(["\n margin-right: 4px;\n color: ", ";\n font-style: normal;\n"])), function (props) {
|
|
@@ -21491,7 +21689,7 @@ var MessageTextContainer = styled.div(_templateObject20$1 || (_templateObject20$
|
|
|
21491
21689
|
|
|
21492
21690
|
var _templateObject$5, _templateObject2$5;
|
|
21493
21691
|
var SearchInputContainer = styled.div(_templateObject$5 || (_templateObject$5 = _taggedTemplateLiteralLoose(["\n position: relative;\n width: 100%;\n max-width: ", ";\n box-sizing: border-box;\n padding: ", ";\n\n & ", " {\n ", ";\n }\n"])), function (props) {
|
|
21494
|
-
return props.inline && 'calc(100% - 24px)';
|
|
21692
|
+
return props.width || props.inline && 'calc(100% - 24px)';
|
|
21495
21693
|
}, function (props) {
|
|
21496
21694
|
return !props.inline && '0 12px 16px';
|
|
21497
21695
|
}, ClearTypedText, function (props) {
|
|
@@ -21518,14 +21716,16 @@ var ChannelSearch = function ChannelSearch(_ref) {
|
|
|
21518
21716
|
borderRadius = _ref.borderRadius,
|
|
21519
21717
|
searchInputBackgroundColor = _ref.searchInputBackgroundColor,
|
|
21520
21718
|
searchInputTextColor = _ref.searchInputTextColor,
|
|
21521
|
-
fontSize = _ref.fontSize
|
|
21719
|
+
fontSize = _ref.fontSize,
|
|
21720
|
+
width = _ref.width;
|
|
21522
21721
|
var _useColor = useColors(),
|
|
21523
21722
|
textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
|
|
21524
21723
|
surface1 = _useColor[THEME_COLORS.SURFACE_1],
|
|
21525
21724
|
iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE],
|
|
21526
21725
|
footnoteColor = _useColor[THEME_COLORS.TEXT_FOOTNOTE];
|
|
21527
21726
|
return /*#__PURE__*/React__default.createElement(SearchInputContainer, {
|
|
21528
|
-
inline: inline
|
|
21727
|
+
inline: inline,
|
|
21728
|
+
width: width
|
|
21529
21729
|
}, /*#__PURE__*/React__default.createElement(StyledSearchSvg, {
|
|
21530
21730
|
left: !inline ? '22px' : '',
|
|
21531
21731
|
color: iconInactive
|
|
@@ -23306,6 +23506,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23306
23506
|
searchInputTextColor = _ref.searchInputTextColor,
|
|
23307
23507
|
_ref$searchChannelsPo = _ref.searchChannelsPosition,
|
|
23308
23508
|
searchChannelsPosition = _ref$searchChannelsPo === void 0 ? 'bottom' : _ref$searchChannelsPo,
|
|
23509
|
+
channelSearchWidth = _ref.channelSearchWidth,
|
|
23309
23510
|
searchInputBorderRadius = _ref.searchInputBorderRadius,
|
|
23310
23511
|
selectedChannelBorderRadius = _ref.selectedChannelBorderRadius,
|
|
23311
23512
|
selectedChannelPaddings = _ref.selectedChannelPaddings,
|
|
@@ -23352,7 +23553,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23352
23553
|
channelAvatarTextSize = _ref.channelAvatarTextSize,
|
|
23353
23554
|
searchChannelInputFontSize = _ref.searchChannelInputFontSize,
|
|
23354
23555
|
searchedChannelsTitleFontSize = _ref.searchedChannelsTitleFontSize,
|
|
23355
|
-
searchChannelsPadding = _ref.searchChannelsPadding
|
|
23556
|
+
searchChannelsPadding = _ref.searchChannelsPadding,
|
|
23557
|
+
getCustomLatestMessage = _ref.getCustomLatestMessage,
|
|
23558
|
+
_ref$doNotShowMessage = _ref.doNotShowMessageDeliveryTypes,
|
|
23559
|
+
doNotShowMessageDeliveryTypes = _ref$doNotShowMessage === void 0 ? ['system'] : _ref$doNotShowMessage;
|
|
23356
23560
|
var _useColor = useColors(),
|
|
23357
23561
|
background = _useColor[THEME_COLORS.BACKGROUND],
|
|
23358
23562
|
textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
|
|
@@ -23420,11 +23624,6 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23420
23624
|
handleLoadMoreChannels();
|
|
23421
23625
|
}
|
|
23422
23626
|
};
|
|
23423
|
-
var handleChangeActiveChannel = function handleChangeActiveChannel(chan) {
|
|
23424
|
-
if (activeChannel.id !== chan.id) {
|
|
23425
|
-
dispatch(switchChannelActionAC(chan));
|
|
23426
|
-
}
|
|
23427
|
-
};
|
|
23428
23627
|
var handleCrateChatWithContact = function handleCrateChatWithContact(contact) {
|
|
23429
23628
|
if (contact) {
|
|
23430
23629
|
var channelData = {
|
|
@@ -23580,6 +23779,13 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23580
23779
|
setListWidthIsSet(false);
|
|
23581
23780
|
}
|
|
23582
23781
|
}, [channels]);
|
|
23782
|
+
var setSelectedChannel = function setSelectedChannel(channel) {
|
|
23783
|
+
if (activeChannel.id !== channel.id) {
|
|
23784
|
+
dispatch(sendTypingAC(false));
|
|
23785
|
+
dispatch(clearMessagesAC());
|
|
23786
|
+
dispatch(switchChannelActionAC(channel));
|
|
23787
|
+
}
|
|
23788
|
+
};
|
|
23583
23789
|
return /*#__PURE__*/React__default.createElement(Container$7, {
|
|
23584
23790
|
className: className,
|
|
23585
23791
|
withCustomList: !!List,
|
|
@@ -23593,6 +23799,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23593
23799
|
padding: searchChannelsPadding
|
|
23594
23800
|
}, Profile, showSearch && searchChannelsPosition === 'inline' ? (/*#__PURE__*/React__default.createElement(ChannelSearch, {
|
|
23595
23801
|
inline: true,
|
|
23802
|
+
width: channelSearchWidth,
|
|
23596
23803
|
borderRadius: searchInputBorderRadius,
|
|
23597
23804
|
searchValue: searchValue,
|
|
23598
23805
|
handleSearchValueChange: handleSearchValueChange,
|
|
@@ -23614,6 +23821,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23614
23821
|
})))), showSearch && searchChannelsPosition === 'bottom' && (/*#__PURE__*/React__default.createElement(ChannelSearch, {
|
|
23615
23822
|
searchValue: searchValue,
|
|
23616
23823
|
theme: theme,
|
|
23824
|
+
width: channelSearchWidth,
|
|
23617
23825
|
borderRadius: searchInputBorderRadius,
|
|
23618
23826
|
handleSearchValueChange: handleSearchValueChange,
|
|
23619
23827
|
getMyChannels: getMyChannels,
|
|
@@ -23624,13 +23832,13 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23624
23832
|
channels: channels,
|
|
23625
23833
|
searchedChannels: searchedChannels,
|
|
23626
23834
|
selectedChannel: activeChannel,
|
|
23627
|
-
setSelectedChannel:
|
|
23835
|
+
setSelectedChannel: setSelectedChannel,
|
|
23628
23836
|
loadMoreChannels: handleLoadMoreChannels,
|
|
23629
23837
|
searchValue: searchValue
|
|
23630
23838
|
}, !searchValue ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, channels.map(function (channel) {
|
|
23631
23839
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23632
23840
|
channel: channel,
|
|
23633
|
-
setSelectedChannel:
|
|
23841
|
+
setSelectedChannel: setSelectedChannel,
|
|
23634
23842
|
key: channel.id
|
|
23635
23843
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23636
23844
|
theme: theme,
|
|
@@ -23656,7 +23864,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23656
23864
|
avatarBorderRadius: avatarBorderRadius,
|
|
23657
23865
|
channel: channel,
|
|
23658
23866
|
key: channel.id,
|
|
23659
|
-
contactsMap: contactsMap
|
|
23867
|
+
contactsMap: contactsMap,
|
|
23868
|
+
setSelectedChannel: setSelectedChannel,
|
|
23869
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
23870
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23660
23871
|
}));
|
|
23661
23872
|
}))) : channelsLoading === LOADING_STATE.LOADED && searchValue ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, searchedChannels !== null && searchedChannels !== void 0 && (_searchedChannels$cha = searchedChannels.chats_groups) !== null && _searchedChannels$cha !== void 0 && _searchedChannels$cha.length || searchedChannels !== null && searchedChannels !== void 0 && (_searchedChannels$cha2 = searchedChannels.channels) !== null && _searchedChannels$cha2 !== void 0 && _searchedChannels$cha2.length || searchedChannels !== null && searchedChannels !== void 0 && (_searchedChannels$con = searchedChannels.contacts) !== null && _searchedChannels$con !== void 0 && _searchedChannels$con.length ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, !!(searchedChannels.chats_groups && searchedChannels.chats_groups.length) && (/*#__PURE__*/React__default.createElement(DirectChannels, null, /*#__PURE__*/React__default.createElement(SearchedChannelsHeader, {
|
|
23662
23873
|
color: textSecondary,
|
|
@@ -23664,7 +23875,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23664
23875
|
}, "Chats & Groups"), searchedChannels.chats_groups.map(function (channel) {
|
|
23665
23876
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23666
23877
|
channel: channel,
|
|
23667
|
-
setSelectedChannel:
|
|
23878
|
+
setSelectedChannel: setSelectedChannel,
|
|
23668
23879
|
key: channel.id
|
|
23669
23880
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23670
23881
|
theme: theme,
|
|
@@ -23690,7 +23901,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23690
23901
|
avatarBorderRadius: avatarBorderRadius,
|
|
23691
23902
|
channel: channel,
|
|
23692
23903
|
key: channel.id,
|
|
23693
|
-
contactsMap: contactsMap
|
|
23904
|
+
contactsMap: contactsMap,
|
|
23905
|
+
setSelectedChannel: setSelectedChannel,
|
|
23906
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
23907
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23694
23908
|
}));
|
|
23695
23909
|
}))), !!(searchedChannels.contacts && searchedChannels.contacts.length) && (/*#__PURE__*/React__default.createElement(GroupChannels, null, /*#__PURE__*/React__default.createElement(SearchedChannelsHeader, {
|
|
23696
23910
|
color: textSecondary,
|
|
@@ -23699,7 +23913,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23699
23913
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23700
23914
|
contact: contact,
|
|
23701
23915
|
createChatWithContact: handleCrateChatWithContact,
|
|
23702
|
-
setSelectedChannel:
|
|
23916
|
+
setSelectedChannel: setSelectedChannel,
|
|
23703
23917
|
key: contact.id
|
|
23704
23918
|
})) : (/*#__PURE__*/React__default.createElement(ContactItem, {
|
|
23705
23919
|
theme: theme,
|
|
@@ -23730,7 +23944,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23730
23944
|
}, "Channels"), searchedChannels.channels.map(function (channel) {
|
|
23731
23945
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23732
23946
|
channel: channel,
|
|
23733
|
-
setSelectedChannel:
|
|
23947
|
+
setSelectedChannel: setSelectedChannel,
|
|
23734
23948
|
key: channel.id
|
|
23735
23949
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23736
23950
|
theme: theme,
|
|
@@ -23756,7 +23970,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23756
23970
|
avatarBorderRadius: avatarBorderRadius,
|
|
23757
23971
|
channel: channel,
|
|
23758
23972
|
key: channel.id,
|
|
23759
|
-
contactsMap: contactsMap
|
|
23973
|
+
contactsMap: contactsMap,
|
|
23974
|
+
setSelectedChannel: setSelectedChannel,
|
|
23975
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
23976
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23760
23977
|
}));
|
|
23761
23978
|
}))))) : (/*#__PURE__*/React__default.createElement(NoData, {
|
|
23762
23979
|
color: textSecondary,
|
|
@@ -23777,7 +23994,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23777
23994
|
}, channels.map(function (channel) {
|
|
23778
23995
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23779
23996
|
channel: channel,
|
|
23780
|
-
setSelectedChannel:
|
|
23997
|
+
setSelectedChannel: setSelectedChannel,
|
|
23781
23998
|
key: channel.id
|
|
23782
23999
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23783
24000
|
theme: theme,
|
|
@@ -23803,7 +24020,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23803
24020
|
avatarBorderRadius: avatarBorderRadius,
|
|
23804
24021
|
channel: channel,
|
|
23805
24022
|
key: channel.id,
|
|
23806
|
-
contactsMap: contactsMap
|
|
24023
|
+
contactsMap: contactsMap,
|
|
24024
|
+
setSelectedChannel: setSelectedChannel,
|
|
24025
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
24026
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23807
24027
|
}));
|
|
23808
24028
|
}))), !!searchValue && (channelsLoading === LOADING_STATE.LOADED ? !((_searchedChannels$cha4 = searchedChannels.chats_groups) !== null && _searchedChannels$cha4 !== void 0 && _searchedChannels$cha4.length) && !((_searchedChannels$cha5 = searchedChannels.chats_groups) !== null && _searchedChannels$cha5 !== void 0 && _searchedChannels$cha5.length) && !((_searchedChannels$cha6 = searchedChannels.channels) !== null && _searchedChannels$cha6 !== void 0 && _searchedChannels$cha6.length) ? (/*#__PURE__*/React__default.createElement(NoData, {
|
|
23809
24029
|
color: textSecondary,
|
|
@@ -23814,7 +24034,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23814
24034
|
}, "Chats & Groups"), searchedChannels.chats_groups.map(function (channel) {
|
|
23815
24035
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23816
24036
|
channel: channel,
|
|
23817
|
-
setSelectedChannel:
|
|
24037
|
+
setSelectedChannel: setSelectedChannel,
|
|
23818
24038
|
key: channel.id
|
|
23819
24039
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23820
24040
|
theme: theme,
|
|
@@ -23840,7 +24060,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23840
24060
|
avatarBorderRadius: avatarBorderRadius,
|
|
23841
24061
|
channel: channel,
|
|
23842
24062
|
contactsMap: contactsMap,
|
|
23843
|
-
key: channel.id
|
|
24063
|
+
key: channel.id,
|
|
24064
|
+
setSelectedChannel: setSelectedChannel,
|
|
24065
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
24066
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23844
24067
|
}));
|
|
23845
24068
|
}))), !!searchedChannels.channels.length && (/*#__PURE__*/React__default.createElement(GroupChannels, null, /*#__PURE__*/React__default.createElement(SearchedChannelsHeader, {
|
|
23846
24069
|
color: textSecondary,
|
|
@@ -23848,7 +24071,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23848
24071
|
}, "Channels"), searchedChannels.channels.map(function (channel) {
|
|
23849
24072
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23850
24073
|
channel: channel,
|
|
23851
|
-
setSelectedChannel:
|
|
24074
|
+
setSelectedChannel: setSelectedChannel,
|
|
23852
24075
|
key: channel.id
|
|
23853
24076
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23854
24077
|
theme: theme,
|
|
@@ -23874,7 +24097,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23874
24097
|
avatarBorderRadius: avatarBorderRadius,
|
|
23875
24098
|
channel: channel,
|
|
23876
24099
|
key: channel.id,
|
|
23877
|
-
contactsMap: contactsMap
|
|
24100
|
+
contactsMap: contactsMap,
|
|
24101
|
+
setSelectedChannel: setSelectedChannel,
|
|
24102
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
24103
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23878
24104
|
}));
|
|
23879
24105
|
}))))) : (/*#__PURE__*/React__default.createElement(LoadingWrapper, null, /*#__PURE__*/React__default.createElement(UploadingIcon, {
|
|
23880
24106
|
color: textFootnote
|
|
@@ -23913,7 +24139,7 @@ var NoData = styled.div(_templateObject8$4 || (_templateObject8$4 = _taggedTempl
|
|
|
23913
24139
|
return props.color;
|
|
23914
24140
|
});
|
|
23915
24141
|
var LoadingWrapper = styled.div(_templateObject9$4 || (_templateObject9$4 = _taggedTemplateLiteralLoose(["\n position: absolute;\n left: calc(50% - 20px);\n top: calc(50% - 20px);\n"])));
|
|
23916
|
-
var ChannelListHeader = styled.div(_templateObject0$3 || (_templateObject0$3 = _taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n flex-direction: row;\n justify-content: space-between;\n max-width: ", ";\n padding: ", ";\n
|
|
24142
|
+
var ChannelListHeader = styled.div(_templateObject0$3 || (_templateObject0$3 = _taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n flex-direction: row;\n justify-content: space-between;\n max-width: ", ";\n padding: ", ";\n box-sizing: border-box;\n padding-left: ", ";\n border-right: ", ";\n"])), function (props) {
|
|
23917
24143
|
return props.maxWidth ? props.maxWidth + "px" : 'inherit';
|
|
23918
24144
|
}, function (props) {
|
|
23919
24145
|
return props.padding || '12px';
|
|
@@ -24078,7 +24304,6 @@ function SvgInfo(props) {
|
|
|
24078
24304
|
|
|
24079
24305
|
var _templateObject$i, _templateObject2$g, _templateObject3$c, _templateObject4$a, _templateObject5$8, _templateObject6$6, _templateObject7$5, _templateObject8$5, _templateObject9$5, _templateObject0$4;
|
|
24080
24306
|
function ChatHeader(_ref) {
|
|
24081
|
-
var _activeChannel$metada;
|
|
24082
24307
|
var infoIcon = _ref.infoIcon,
|
|
24083
24308
|
backgroundColor = _ref.backgroundColor,
|
|
24084
24309
|
titleColor = _ref.titleColor,
|
|
@@ -24117,7 +24342,7 @@ function ChatHeader(_ref) {
|
|
|
24117
24342
|
var channelListHidden = useSelector(channelListHiddenSelector);
|
|
24118
24343
|
var channelDetailsIsOpen = useSelector(channelInfoIsOpenSelector, shallowEqual);
|
|
24119
24344
|
var isDirectChannel = activeChannel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
|
|
24120
|
-
var isSelfChannel = isDirectChannel &&
|
|
24345
|
+
var isSelfChannel = isDirectChannel && activeChannel.memberCount === 1 && activeChannel.members.length > 0 && activeChannel.members[0].id === user.id;
|
|
24121
24346
|
var directChannelUser = isDirectChannel && activeChannel.members.find(function (member) {
|
|
24122
24347
|
return member.id !== user.id;
|
|
24123
24348
|
});
|
|
@@ -24528,50 +24753,6 @@ function SvgDeleteChannel(props) {
|
|
|
24528
24753
|
})));
|
|
24529
24754
|
}
|
|
24530
24755
|
|
|
24531
|
-
var ATTACHMENTS_CACHE = 'attachments-cache';
|
|
24532
|
-
var isBrowser = typeof window !== 'undefined';
|
|
24533
|
-
var cacheAvailable;
|
|
24534
|
-
if (isBrowser) {
|
|
24535
|
-
cacheAvailable = 'caches' in window;
|
|
24536
|
-
} else {
|
|
24537
|
-
cacheAvailable = 'caches' in global;
|
|
24538
|
-
}
|
|
24539
|
-
var setAttachmentToCache = function setAttachmentToCache(attachmentUrl, attachmentResponse) {
|
|
24540
|
-
if (cacheAvailable) {
|
|
24541
|
-
caches.open(ATTACHMENTS_CACHE).then(function (cache) {
|
|
24542
|
-
try {
|
|
24543
|
-
cache.put(attachmentUrl, attachmentResponse).then(function () {
|
|
24544
|
-
log.info('Cache success');
|
|
24545
|
-
})["catch"](function (e) {
|
|
24546
|
-
log.info('Error on cache attachment ... ', e);
|
|
24547
|
-
caches["delete"](attachmentUrl);
|
|
24548
|
-
});
|
|
24549
|
-
return Promise.resolve();
|
|
24550
|
-
} catch (e) {
|
|
24551
|
-
return Promise.reject(e);
|
|
24552
|
-
}
|
|
24553
|
-
});
|
|
24554
|
-
}
|
|
24555
|
-
};
|
|
24556
|
-
var getAttachmentUrlFromCache = function getAttachmentUrlFromCache(attachmentUrl) {
|
|
24557
|
-
try {
|
|
24558
|
-
if (!cacheAvailable) {
|
|
24559
|
-
log.error('Cache is not available');
|
|
24560
|
-
return Promise.reject(new Error('Cache not available'));
|
|
24561
|
-
}
|
|
24562
|
-
return Promise.resolve(caches.match(attachmentUrl)).then(function (response) {
|
|
24563
|
-
if (response) {
|
|
24564
|
-
return Promise.resolve(response.blob()).then(URL.createObjectURL);
|
|
24565
|
-
} else {
|
|
24566
|
-
log.info('The image or video is not cached', attachmentUrl);
|
|
24567
|
-
return false;
|
|
24568
|
-
}
|
|
24569
|
-
});
|
|
24570
|
-
} catch (e) {
|
|
24571
|
-
return Promise.reject(e);
|
|
24572
|
-
}
|
|
24573
|
-
};
|
|
24574
|
-
|
|
24575
24756
|
var _path$A;
|
|
24576
24757
|
function _extends$B() {
|
|
24577
24758
|
return _extends$B = Object.assign ? Object.assign.bind() : function (n) {
|
|
@@ -25003,10 +25184,9 @@ function ForwardMessagePopup(_ref) {
|
|
|
25003
25184
|
setSearchValue('');
|
|
25004
25185
|
};
|
|
25005
25186
|
var handleChannelSelect = function handleChannelSelect(isSelected, channel) {
|
|
25006
|
-
var _channel$metadata;
|
|
25007
25187
|
var newSelectedChannels = [].concat(selectedChannels);
|
|
25008
25188
|
var isDirectChannel = channel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
|
|
25009
|
-
var isSelfChannel = isDirectChannel &&
|
|
25189
|
+
var isSelfChannel = isDirectChannel && channel.memberCount === 1 && channel.members.length > 0 && channel.members[0].id === user.id;
|
|
25010
25190
|
var directChannelUser = isDirectChannel && channel.members.find(function (member) {
|
|
25011
25191
|
return member.id !== user.id;
|
|
25012
25192
|
});
|
|
@@ -25119,12 +25299,11 @@ function ForwardMessagePopup(_ref) {
|
|
|
25119
25299
|
color: textSecondary,
|
|
25120
25300
|
margin: '0 0 12px'
|
|
25121
25301
|
}, "Chats & Groups"), searchedChannels.chats_groups.map(function (channel) {
|
|
25122
|
-
var _channel$metadata2;
|
|
25123
25302
|
var isSelected = selectedChannels.findIndex(function (chan) {
|
|
25124
25303
|
return chan.id === channel.id;
|
|
25125
25304
|
}) >= 0;
|
|
25126
25305
|
var isDirectChannel = channel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
|
|
25127
|
-
var isSelfChannel = isDirectChannel &&
|
|
25306
|
+
var isSelfChannel = isDirectChannel && channel.memberCount === 1 && channel.members.length > 0 && channel.members[0].id === user.id;
|
|
25128
25307
|
var directChannelUser = isDirectChannel && isSelfChannel ? user : channel.members.find(function (member) {
|
|
25129
25308
|
return member.id !== user.id;
|
|
25130
25309
|
});
|
|
@@ -25195,9 +25374,8 @@ function ForwardMessagePopup(_ref) {
|
|
|
25195
25374
|
}))), !searchedChannels.chats_groups.length && !searchedChannels.channels.length && (/*#__PURE__*/React__default.createElement(NoResults, {
|
|
25196
25375
|
color: textSecondary
|
|
25197
25376
|
}, "No channels found")))) : channels.map(function (channel) {
|
|
25198
|
-
var _channel$metadata3;
|
|
25199
25377
|
var isDirectChannel = channel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
|
|
25200
|
-
var isSelfChannel = isDirectChannel &&
|
|
25378
|
+
var isSelfChannel = isDirectChannel && channel.memberCount === 1 && channel.members.length > 0 && channel.members[0].id === user.id;
|
|
25201
25379
|
var directChannelUser = isDirectChannel && isSelfChannel ? user : channel.members.find(function (member) {
|
|
25202
25380
|
return member.id !== user.id;
|
|
25203
25381
|
});
|
|
@@ -26038,6 +26216,7 @@ var Message = function Message(_ref) {
|
|
|
26038
26216
|
var _useColor = useColors(),
|
|
26039
26217
|
textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY],
|
|
26040
26218
|
overlayBackground = _useColor[THEME_COLORS.OVERLAY_BACKGROUND];
|
|
26219
|
+
var scrollToNewMessage = useSelector(scrollToNewMessageSelector);
|
|
26041
26220
|
var dispatch = useDispatch();
|
|
26042
26221
|
var ChatClient = getClient();
|
|
26043
26222
|
var user = ChatClient.user;
|
|
@@ -26056,7 +26235,19 @@ var Message = function Message(_ref) {
|
|
|
26056
26235
|
};
|
|
26057
26236
|
useEffect(function () {
|
|
26058
26237
|
if (isVisible) {
|
|
26238
|
+
var _channel$lastMessage;
|
|
26059
26239
|
handleSendReadMarker();
|
|
26240
|
+
if (!channel.isLinkedChannel) {
|
|
26241
|
+
setMessageToVisibleMessagesMap(message);
|
|
26242
|
+
}
|
|
26243
|
+
if (scrollToNewMessage.scrollToBottom && ((message === null || message === void 0 ? void 0 : message.id) === ((_channel$lastMessage = channel.lastMessage) === null || _channel$lastMessage === void 0 ? void 0 : _channel$lastMessage.id) || !(message !== null && message !== void 0 && message.id))) {
|
|
26244
|
+
dispatch(scrollToNewMessageAC(false, false, false));
|
|
26245
|
+
dispatch(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
|
|
26246
|
+
}
|
|
26247
|
+
} else {
|
|
26248
|
+
if (!channel.isLinkedChannel) {
|
|
26249
|
+
removeMessageFromVisibleMessagesMap(message);
|
|
26250
|
+
}
|
|
26060
26251
|
}
|
|
26061
26252
|
}, [isVisible]);
|
|
26062
26253
|
useDidUpdate(function () {
|
|
@@ -27125,7 +27316,7 @@ var VideoPreview = /*#__PURE__*/memo(function VideoPreview(_ref) {
|
|
|
27125
27316
|
preload: 'auto',
|
|
27126
27317
|
id: 'video',
|
|
27127
27318
|
src: file.attachmentUrl || videoUrl
|
|
27128
|
-
}), videoCurrentTime && (/*#__PURE__*/React__default.createElement(VideoControls, null, !isPreview && !!videoCurrentTime && !isRepliedMessage && !uploading && !isDetailsView && (
|
|
27319
|
+
}), videoCurrentTime && !isRepliedMessage && (/*#__PURE__*/React__default.createElement(VideoControls, null, !isPreview && !!videoCurrentTime && !isRepliedMessage && !uploading && !isDetailsView && (
|
|
27129
27320
|
/*#__PURE__*/
|
|
27130
27321
|
React__default.createElement(VideoPlayButton, null, /*#__PURE__*/React__default.createElement(SvgPlayVideo, null))), /*#__PURE__*/React__default.createElement(VideoTime, {
|
|
27131
27322
|
isDetailsView: isDetailsView,
|
|
@@ -31172,7 +31363,7 @@ var validateUrl = function validateUrl(url) {
|
|
|
31172
31363
|
}
|
|
31173
31364
|
};
|
|
31174
31365
|
var OGMetadata = function OGMetadata(_ref) {
|
|
31175
|
-
var _metadata$
|
|
31366
|
+
var _metadata$og6, _metadata$og6$image, _metadata$og6$image$, _metadata$og7, _metadata$og7$image, _metadata$og7$image$, _metadata$og8, _metadata$og8$image, _metadata$og8$image$, _metadata$og9, _metadata$og0, _metadata$og0$favicon, _metadata$og1, _metadata$og1$favicon, _metadata$og10, _metadata$og11, _metadata$og12;
|
|
31176
31367
|
var attachments = _ref.attachments,
|
|
31177
31368
|
state = _ref.state;
|
|
31178
31369
|
var _useState = useState(null),
|
|
@@ -31181,6 +31372,18 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31181
31372
|
var _useState2 = useState(true),
|
|
31182
31373
|
imageLoadError = _useState2[0],
|
|
31183
31374
|
setImageLoadError = _useState2[1];
|
|
31375
|
+
var _useState3 = useState(true),
|
|
31376
|
+
faviconLoadError = _useState3[0],
|
|
31377
|
+
setFaviconLoadError = _useState3[1];
|
|
31378
|
+
var _useState4 = useState(false),
|
|
31379
|
+
imageLoaded = _useState4[0],
|
|
31380
|
+
setImageLoaded = _useState4[1];
|
|
31381
|
+
var _useState5 = useState(0),
|
|
31382
|
+
imageWidth = _useState5[0],
|
|
31383
|
+
setImageWidth = _useState5[1];
|
|
31384
|
+
var _useState6 = useState(0),
|
|
31385
|
+
imageHeight = _useState6[0],
|
|
31386
|
+
setImageHeight = _useState6[1];
|
|
31184
31387
|
var attachment = useMemo(function () {
|
|
31185
31388
|
return attachments.find(function (attachment) {
|
|
31186
31389
|
return attachment.type === attachmentTypes.link;
|
|
@@ -31195,7 +31398,7 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31195
31398
|
var queryBuilder = new client.MessageLinkOGQueryBuilder(url);
|
|
31196
31399
|
return Promise.resolve(queryBuilder.build()).then(function (query) {
|
|
31197
31400
|
return Promise.resolve(query.loadOGData()).then(function (metadata) {
|
|
31198
|
-
return Promise.resolve(storeMetadata(url
|
|
31401
|
+
return Promise.resolve(storeMetadata(url, metadata)).then(function () {
|
|
31199
31402
|
setMetadata(metadata);
|
|
31200
31403
|
});
|
|
31201
31404
|
});
|
|
@@ -31218,7 +31421,7 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31218
31421
|
if (attachment !== null && attachment !== void 0 && attachment.id && attachment !== null && attachment !== void 0 && attachment.url) {
|
|
31219
31422
|
var url = attachment === null || attachment === void 0 ? void 0 : attachment.url;
|
|
31220
31423
|
if (url) {
|
|
31221
|
-
getMetadata(url
|
|
31424
|
+
getMetadata(url).then(function (cachedMetadata) {
|
|
31222
31425
|
try {
|
|
31223
31426
|
if (cachedMetadata) {
|
|
31224
31427
|
setMetadata(cachedMetadata);
|
|
@@ -31247,6 +31450,29 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31247
31450
|
var _metadata$og, _metadata$og2, _metadata$og2$image, _metadata$og2$image$, _metadata$og3;
|
|
31248
31451
|
return state !== 'deleted' && (metadata === null || metadata === void 0 ? void 0 : (_metadata$og = metadata.og) === null || _metadata$og === void 0 ? void 0 : _metadata$og.title) && (metadata === null || metadata === void 0 ? void 0 : (_metadata$og2 = metadata.og) === null || _metadata$og2 === void 0 ? void 0 : (_metadata$og2$image = _metadata$og2.image) === null || _metadata$og2$image === void 0 ? void 0 : (_metadata$og2$image$ = _metadata$og2$image[0]) === null || _metadata$og2$image$ === void 0 ? void 0 : _metadata$og2$image$.url) && (metadata === null || metadata === void 0 ? void 0 : (_metadata$og3 = metadata.og) === null || _metadata$og3 === void 0 ? void 0 : _metadata$og3.description) && metadata;
|
|
31249
31452
|
}, [state, metadata]);
|
|
31453
|
+
useEffect(function () {
|
|
31454
|
+
var _metadata$og4, _metadata$og4$image, _metadata$og4$image$;
|
|
31455
|
+
if (metadata !== null && metadata !== void 0 && (_metadata$og4 = metadata.og) !== null && _metadata$og4 !== void 0 && (_metadata$og4$image = _metadata$og4.image) !== null && _metadata$og4$image !== void 0 && (_metadata$og4$image$ = _metadata$og4$image[0]) !== null && _metadata$og4$image$ !== void 0 && _metadata$og4$image$.url) {
|
|
31456
|
+
var _metadata$og5, _metadata$og5$image, _metadata$og5$image$;
|
|
31457
|
+
var image = new Image();
|
|
31458
|
+
image.src = metadata === null || metadata === void 0 ? void 0 : (_metadata$og5 = metadata.og) === null || _metadata$og5 === void 0 ? void 0 : (_metadata$og5$image = _metadata$og5.image) === null || _metadata$og5$image === void 0 ? void 0 : (_metadata$og5$image$ = _metadata$og5$image[0]) === null || _metadata$og5$image$ === void 0 ? void 0 : _metadata$og5$image$.url;
|
|
31459
|
+
image.onload = function () {
|
|
31460
|
+
var imageWidth = image.width;
|
|
31461
|
+
var imageHeight = image.height;
|
|
31462
|
+
setImageWidth(imageWidth);
|
|
31463
|
+
setImageHeight(imageHeight);
|
|
31464
|
+
setImageLoadError(false);
|
|
31465
|
+
setImageLoaded(true);
|
|
31466
|
+
};
|
|
31467
|
+
image.onerror = function () {
|
|
31468
|
+
setImageLoadError(true);
|
|
31469
|
+
setImageLoaded(true);
|
|
31470
|
+
};
|
|
31471
|
+
}
|
|
31472
|
+
}, [metadata === null || metadata === void 0 ? void 0 : (_metadata$og6 = metadata.og) === null || _metadata$og6 === void 0 ? void 0 : (_metadata$og6$image = _metadata$og6.image) === null || _metadata$og6$image === void 0 ? void 0 : (_metadata$og6$image$ = _metadata$og6$image[0]) === null || _metadata$og6$image$ === void 0 ? void 0 : _metadata$og6$image$.url]);
|
|
31473
|
+
var calculatedImageHeight = useMemo(function () {
|
|
31474
|
+
return imageHeight / (imageWidth / 400);
|
|
31475
|
+
}, [imageWidth, imageHeight]);
|
|
31250
31476
|
return /*#__PURE__*/React__default.createElement(OGMetadataContainer, {
|
|
31251
31477
|
showOGMetadata: !!showOGMetadata
|
|
31252
31478
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
@@ -31254,37 +31480,69 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31254
31480
|
window.open(attachment === null || attachment === void 0 ? void 0 : attachment.url, '_blank');
|
|
31255
31481
|
}
|
|
31256
31482
|
}, /*#__PURE__*/React__default.createElement(ImageContainer, {
|
|
31257
|
-
showOGMetadata: !!showOGMetadata && !imageLoadError
|
|
31258
|
-
|
|
31259
|
-
|
|
31483
|
+
showOGMetadata: !!showOGMetadata && !imageLoadError && imageLoaded,
|
|
31484
|
+
width: 400,
|
|
31485
|
+
height: calculatedImageHeight
|
|
31486
|
+
}, metadata !== null && metadata !== void 0 && (_metadata$og7 = metadata.og) !== null && _metadata$og7 !== void 0 && (_metadata$og7$image = _metadata$og7.image) !== null && _metadata$og7$image !== void 0 && (_metadata$og7$image$ = _metadata$og7$image[0]) !== null && _metadata$og7$image$ !== void 0 && _metadata$og7$image$.url && !imageLoadError ? (/*#__PURE__*/React__default.createElement(Img, {
|
|
31487
|
+
src: metadata === null || metadata === void 0 ? void 0 : (_metadata$og8 = metadata.og) === null || _metadata$og8 === void 0 ? void 0 : (_metadata$og8$image = _metadata$og8.image) === null || _metadata$og8$image === void 0 ? void 0 : (_metadata$og8$image$ = _metadata$og8$image[0]) === null || _metadata$og8$image$ === void 0 ? void 0 : _metadata$og8$image$.url,
|
|
31260
31488
|
alt: 'OG metadata image',
|
|
31489
|
+
width: 400,
|
|
31490
|
+
height: calculatedImageHeight
|
|
31491
|
+
})) : null), showOGMetadata && imageLoaded ? (/*#__PURE__*/React__default.createElement(OGText, null, /*#__PURE__*/React__default.createElement(Url, {
|
|
31492
|
+
maxWidth: 400
|
|
31493
|
+
}, ogUrl), metadata !== null && metadata !== void 0 && (_metadata$og9 = metadata.og) !== null && _metadata$og9 !== void 0 && _metadata$og9.title ? (/*#__PURE__*/React__default.createElement(Title, {
|
|
31494
|
+
maxWidth: 400
|
|
31495
|
+
}, metadata !== null && metadata !== void 0 && (_metadata$og0 = metadata.og) !== null && _metadata$og0 !== void 0 && (_metadata$og0$favicon = _metadata$og0.favicon) !== null && _metadata$og0$favicon !== void 0 && _metadata$og0$favicon.url && !faviconLoadError ? (/*#__PURE__*/React__default.createElement(Favicon, {
|
|
31496
|
+
src: metadata === null || metadata === void 0 ? void 0 : (_metadata$og1 = metadata.og) === null || _metadata$og1 === void 0 ? void 0 : (_metadata$og1$favicon = _metadata$og1.favicon) === null || _metadata$og1$favicon === void 0 ? void 0 : _metadata$og1$favicon.url,
|
|
31261
31497
|
onLoad: function onLoad() {
|
|
31262
|
-
return
|
|
31498
|
+
return setFaviconLoadError(false);
|
|
31263
31499
|
},
|
|
31264
31500
|
onError: function onError() {
|
|
31265
|
-
return
|
|
31501
|
+
return setFaviconLoadError(true);
|
|
31266
31502
|
}
|
|
31267
|
-
})) : null
|
|
31268
|
-
|
|
31269
|
-
}
|
|
31503
|
+
})) : null, /*#__PURE__*/React__default.createElement("span", null, metadata === null || metadata === void 0 ? void 0 : (_metadata$og10 = metadata.og) === null || _metadata$og10 === void 0 ? void 0 : _metadata$og10.title))) : null, metadata !== null && metadata !== void 0 && (_metadata$og11 = metadata.og) !== null && _metadata$og11 !== void 0 && _metadata$og11.description ? /*#__PURE__*/React__default.createElement(Desc, {
|
|
31504
|
+
maxWidth: 400
|
|
31505
|
+
}, metadata === null || metadata === void 0 ? void 0 : (_metadata$og12 = metadata.og) === null || _metadata$og12 === void 0 ? void 0 : _metadata$og12.description) : null)) : null));
|
|
31270
31506
|
};
|
|
31271
31507
|
var OGMetadataContainer = styled.div(_templateObject$A || (_templateObject$A = _taggedTemplateLiteralLoose(["\n min-width: inherit;\n max-width: inherit;\n display: grid;\n grid-template-columns: 1fr;\n background-color: rgba(0, 0, 0, 0.034);\n border-radius: 6px;\n margin-bottom: 0.4rem;\n margin: 0 auto;\n margin-bottom: ", ";\n &:hover {\n background-color: rgba(0, 0, 0, 0.1);\n cursor: pointer;\n }\n"])), function (_ref2) {
|
|
31272
31508
|
var showOGMetadata = _ref2.showOGMetadata;
|
|
31273
31509
|
return showOGMetadata ? '0.8rem' : '0';
|
|
31274
31510
|
});
|
|
31275
|
-
var ImageContainer = styled.div(_templateObject2$v || (_templateObject2$v = _taggedTemplateLiteralLoose(["\n
|
|
31276
|
-
var
|
|
31277
|
-
return
|
|
31511
|
+
var ImageContainer = styled.div(_templateObject2$v || (_templateObject2$v = _taggedTemplateLiteralLoose(["\n ", "\n\n ", "\n\n opacity: ", ";\n overflow: hidden;\n margin: 0 auto;\n padding: ", ";\n transition: height 0.2s ease;\n"])), function (_ref3) {
|
|
31512
|
+
var width = _ref3.width;
|
|
31513
|
+
return width ? "\n max-width: " + (width + "px") + ";\n " : "\n max-width: 100%;\n width: 100%;\n ";
|
|
31278
31514
|
}, function (_ref4) {
|
|
31279
|
-
var
|
|
31280
|
-
|
|
31515
|
+
var height = _ref4.height,
|
|
31516
|
+
showOGMetadata = _ref4.showOGMetadata;
|
|
31517
|
+
return height ? "\n max-height: " + (height + "px") + ";\n height: " + (showOGMetadata ? height + "px" : '0') + ";\n " : "\n max-height: 200px;\n height: " + (showOGMetadata ? '200px' : '0') + ";\n ";
|
|
31518
|
+
}, function (_ref5) {
|
|
31519
|
+
var showOGMetadata = _ref5.showOGMetadata;
|
|
31520
|
+
return showOGMetadata ? 1 : 0;
|
|
31521
|
+
}, function (_ref6) {
|
|
31522
|
+
var showOGMetadata = _ref6.showOGMetadata;
|
|
31523
|
+
return showOGMetadata ? '0.3rem' : '0';
|
|
31281
31524
|
});
|
|
31282
|
-
var OGText = styled.div(_templateObject3$p || (_templateObject3$p = _taggedTemplateLiteralLoose(["\n
|
|
31283
|
-
var Url = styled.p(_templateObject4$l || (_templateObject4$l = _taggedTemplateLiteralLoose(["\n font-weight: normal;\n font-size: 13px;\n padding: 0;\n margin: 0 0 12px 0;\n color: gray;\n"])))
|
|
31284
|
-
var
|
|
31285
|
-
|
|
31286
|
-
|
|
31287
|
-
var
|
|
31525
|
+
var OGText = styled.div(_templateObject3$p || (_templateObject3$p = _taggedTemplateLiteralLoose(["\n padding: 0.5rem;\n margin: 0;\n transition: all 0.2s ease;\n"])));
|
|
31526
|
+
var Url = styled.p(_templateObject4$l || (_templateObject4$l = _taggedTemplateLiteralLoose(["\n font-weight: normal;\n font-size: 13px;\n padding: 0;\n margin: 0 0 12px 0;\n color: gray;\n ", "\n transition: all 0.2s ease;\n"])), function (_ref7) {
|
|
31527
|
+
var maxWidth = _ref7.maxWidth;
|
|
31528
|
+
return maxWidth && "\n max-width: " + (maxWidth + "px") + ";\n ";
|
|
31529
|
+
});
|
|
31530
|
+
var Title = styled.p(_templateObject5$h || (_templateObject5$h = _taggedTemplateLiteralLoose(["\n font-weight: bold;\n font-size: 13px;\n padding: 0;\n display: flex;\n align-items: center;\n ", "\n transition: all 0.2s ease;\n"])), function (_ref8) {
|
|
31531
|
+
var maxWidth = _ref8.maxWidth;
|
|
31532
|
+
return maxWidth && "\n max-width: " + (maxWidth + "px") + ";\n ";
|
|
31533
|
+
});
|
|
31534
|
+
var Desc = styled.p(_templateObject6$f || (_templateObject6$f = _taggedTemplateLiteralLoose(["\n font-weight: normal;\n font-size: 13px;\n padding: 0;\n ", "\n transition: all 0.2s ease;\n"])), function (_ref9) {
|
|
31535
|
+
var maxWidth = _ref9.maxWidth;
|
|
31536
|
+
return maxWidth && "\n max-width: " + (maxWidth + "px") + ";\n ";
|
|
31537
|
+
});
|
|
31538
|
+
var Img = styled.img(_templateObject7$d || (_templateObject7$d = _taggedTemplateLiteralLoose(["\n ", "\n ", "\n object-fit: cover;\n transition: height 0.2s ease;\n"])), function (_ref0) {
|
|
31539
|
+
var width = _ref0.width;
|
|
31540
|
+
return width && "\n max-width: " + (width + "px") + ";\n min-width: " + (width + "px") + ";\n width: " + (width + "px") + ";\n ";
|
|
31541
|
+
}, function (_ref1) {
|
|
31542
|
+
var height = _ref1.height;
|
|
31543
|
+
return height && "\n max-height: " + (height + "px") + ";\n min-height: " + (height + "px") + ";\n height: " + (height + "px") + ";\n ";
|
|
31544
|
+
});
|
|
31545
|
+
var Favicon = styled.img(_templateObject8$c || (_templateObject8$c = _taggedTemplateLiteralLoose(["\n transition: all 0.2s ease;\n width: 24px;\n height: 24px;\n object-fit: contain;\n margin-right: 4px;\n"])));
|
|
31288
31546
|
|
|
31289
31547
|
var _templateObject$B, _templateObject2$w, _templateObject3$q, _templateObject4$m, _templateObject5$i;
|
|
31290
31548
|
var MessageBody = function MessageBody(_ref) {
|
|
@@ -32624,14 +32882,6 @@ var HiddenMessageProperty;
|
|
|
32624
32882
|
})(HiddenMessageProperty || (HiddenMessageProperty = {}));
|
|
32625
32883
|
|
|
32626
32884
|
var _templateObject$D, _templateObject2$y, _templateObject3$s, _templateObject4$o, _templateObject5$k, _templateObject6$h, _templateObject7$f, _templateObject8$e, _templateObject9$c, _templateObject0$b, _templateObject1$8;
|
|
32627
|
-
var loadFromServer = false;
|
|
32628
|
-
var loadDirection = '';
|
|
32629
|
-
var nextDisable = false;
|
|
32630
|
-
var prevDisable = false;
|
|
32631
|
-
var scrollToBottom = false;
|
|
32632
|
-
var shouldLoadMessages;
|
|
32633
|
-
var loading = false;
|
|
32634
|
-
var messagesIndexMap = {};
|
|
32635
32885
|
var CreateMessageDateDivider = function CreateMessageDateDivider(_ref) {
|
|
32636
32886
|
var lastIndex = _ref.lastIndex,
|
|
32637
32887
|
currentMessageDate = _ref.currentMessageDate,
|
|
@@ -32841,6 +33091,7 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32841
33091
|
var scrollToMentionedMessage = useSelector(scrollToMentionedMessageSelector, shallowEqual);
|
|
32842
33092
|
var scrollToRepliedMessage = useSelector(scrollToMessageSelector, shallowEqual);
|
|
32843
33093
|
var scrollToMessageHighlight = useSelector(scrollToMessageHighlightSelector, shallowEqual);
|
|
33094
|
+
var scrollToMessageBehavior = useSelector(scrollToMessageBehaviorSelector, shallowEqual);
|
|
32844
33095
|
var browserTabIsActive = useSelector(browserTabIsActiveSelector, shallowEqual);
|
|
32845
33096
|
var hasNextMessages = useSelector(messagesHasNextSelector, shallowEqual);
|
|
32846
33097
|
var hasPrevMessages = useSelector(messagesHasPrevSelector, shallowEqual);
|
|
@@ -32881,35 +33132,40 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32881
33132
|
setShouldPreserveScroll = _useState0[1];
|
|
32882
33133
|
var messageForReply = {};
|
|
32883
33134
|
var attachmentsSelected = false;
|
|
32884
|
-
var
|
|
33135
|
+
var _useState1 = useState(''),
|
|
33136
|
+
topDateLabel = _useState1[0],
|
|
33137
|
+
setTopDateLabel = _useState1[1];
|
|
32885
33138
|
var scrollRef = useRef(null);
|
|
33139
|
+
var loadFromServerRef = useRef(false);
|
|
33140
|
+
var loadDirectionRef = useRef('');
|
|
33141
|
+
var nextDisableRef = useRef(false);
|
|
33142
|
+
var prevDisableRef = useRef(false);
|
|
33143
|
+
var scrollToBottomRef = useRef(false);
|
|
33144
|
+
var shouldLoadMessagesRef = useRef('');
|
|
33145
|
+
var loadingRef = useRef(false);
|
|
33146
|
+
var messagesIndexMapRef = useRef({});
|
|
33147
|
+
var scrollRafRef = useRef(null);
|
|
33148
|
+
var loadingMessagesTimeoutRef = useRef(null);
|
|
32886
33149
|
var renderTopDate = function renderTopDate() {
|
|
32887
|
-
var
|
|
32888
|
-
|
|
33150
|
+
var container = scrollRef.current;
|
|
33151
|
+
if (!container) return;
|
|
33152
|
+
var dateLabels = container.querySelectorAll('.divider');
|
|
32889
33153
|
var text = '';
|
|
32890
33154
|
for (var i = dateLabels.length - 1; i >= 0; i--) {
|
|
32891
|
-
var _dateLabel$firstChild;
|
|
32892
33155
|
var dateLabel = dateLabels[i];
|
|
32893
|
-
|
|
32894
|
-
|
|
32895
|
-
text = span
|
|
32896
|
-
span.style.display = 'none';
|
|
32897
|
-
} else {
|
|
32898
|
-
span.style.display = 'block';
|
|
33156
|
+
if (!text && container.scrollTop > dateLabel.offsetTop) {
|
|
33157
|
+
var span = (dateLabel === null || dateLabel === void 0 ? void 0 : dateLabel.firstChild) && dateLabel.firstChild.firstChild;
|
|
33158
|
+
text = span ? span.innerText || '' : '';
|
|
32899
33159
|
}
|
|
32900
33160
|
}
|
|
32901
|
-
|
|
32902
|
-
messageTopDate.innerText = text;
|
|
32903
|
-
messageTopDate.style.display = 'inline';
|
|
32904
|
-
} else {
|
|
32905
|
-
messageTopDate.style.display = 'none';
|
|
32906
|
-
}
|
|
33161
|
+
setTopDateLabel(text);
|
|
32907
33162
|
};
|
|
32908
|
-
var handleMessagesListScroll = useCallback(function (
|
|
33163
|
+
var handleMessagesListScroll = useCallback(function () {
|
|
32909
33164
|
try {
|
|
33165
|
+
var target = scrollRef.current;
|
|
33166
|
+
if (!target) return Promise.resolve();
|
|
32910
33167
|
if (scrollToMentionedMessage) {
|
|
32911
|
-
|
|
32912
|
-
if (_target.scrollTop <= -50 || channel.lastMessage.id !== messages[messages.length - 1].id) {
|
|
33168
|
+
if (target.scrollTop <= -50 || channel.lastMessage.id !== messages[messages.length - 1].id) {
|
|
32913
33169
|
dispatch(showScrollToNewMessageButtonAC(true));
|
|
32914
33170
|
} else {
|
|
32915
33171
|
dispatch(showScrollToNewMessageButtonAC(false));
|
|
@@ -32922,7 +33178,6 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32922
33178
|
setShowTopDate(false);
|
|
32923
33179
|
}, 1000);
|
|
32924
33180
|
renderTopDate();
|
|
32925
|
-
var target = event.target;
|
|
32926
33181
|
var forceLoadPrevMessages = false;
|
|
32927
33182
|
if (-target.scrollTop + target.offsetHeight + 30 > target.scrollHeight) {
|
|
32928
33183
|
forceLoadPrevMessages = true;
|
|
@@ -32937,51 +33192,68 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32937
33192
|
}
|
|
32938
33193
|
if (scrollToReply) {
|
|
32939
33194
|
target.scrollTop = scrollToReply;
|
|
32940
|
-
|
|
32941
|
-
|
|
32942
|
-
|
|
32943
|
-
|
|
32944
|
-
|
|
32945
|
-
|
|
32946
|
-
|
|
32947
|
-
|
|
32948
|
-
|
|
32949
|
-
|
|
32950
|
-
|
|
32951
|
-
|
|
32952
|
-
|
|
32953
|
-
|
|
32954
|
-
|
|
33195
|
+
return Promise.resolve();
|
|
33196
|
+
}
|
|
33197
|
+
var currentIndex = messagesIndexMapRef.current[lastVisibleMessageId];
|
|
33198
|
+
var hasIndex = typeof currentIndex === 'number';
|
|
33199
|
+
if (hasIndex && currentIndex < 15 || forceLoadPrevMessages) {
|
|
33200
|
+
if (connectionStatus === CONNECTION_STATUS.CONNECTED && !scrollToNewMessage.scrollToBottom && hasPrevMessages) {
|
|
33201
|
+
if (loadingRef.current || messagesLoading === LOADING_STATE.LOADING || prevDisableRef.current) {
|
|
33202
|
+
shouldLoadMessagesRef.current = 'prev';
|
|
33203
|
+
} else {
|
|
33204
|
+
if (shouldLoadMessagesRef.current === 'prev') {
|
|
33205
|
+
shouldLoadMessagesRef.current = '';
|
|
33206
|
+
}
|
|
33207
|
+
loadDirectionRef.current = 'prev';
|
|
33208
|
+
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33209
|
+
if (!getHasPrevCached()) {
|
|
33210
|
+
loadFromServerRef.current = true;
|
|
32955
33211
|
}
|
|
33212
|
+
nextDisableRef.current = true;
|
|
32956
33213
|
}
|
|
32957
33214
|
}
|
|
32958
|
-
|
|
32959
|
-
|
|
32960
|
-
|
|
32961
|
-
|
|
32962
|
-
|
|
32963
|
-
|
|
32964
|
-
|
|
32965
|
-
|
|
32966
|
-
loadDirection = 'next';
|
|
32967
|
-
prevDisable = true;
|
|
32968
|
-
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33215
|
+
}
|
|
33216
|
+
if (hasIndex && currentIndex >= messages.length - 15 || target.scrollTop === 0) {
|
|
33217
|
+
if (connectionStatus === CONNECTION_STATUS.CONNECTED && !scrollToNewMessage.scrollToBottom && (hasNextMessages || getHasNextCached())) {
|
|
33218
|
+
if (loadingRef.current || messagesLoading === LOADING_STATE.LOADING || nextDisableRef.current) {
|
|
33219
|
+
shouldLoadMessagesRef.current = 'next';
|
|
33220
|
+
} else {
|
|
33221
|
+
if (shouldLoadMessagesRef.current === 'next') {
|
|
33222
|
+
shouldLoadMessagesRef.current = '';
|
|
32969
33223
|
}
|
|
33224
|
+
loadDirectionRef.current = 'next';
|
|
33225
|
+
prevDisableRef.current = true;
|
|
33226
|
+
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
32970
33227
|
}
|
|
32971
33228
|
}
|
|
32972
|
-
|
|
32973
|
-
|
|
32974
|
-
|
|
33229
|
+
}
|
|
33230
|
+
if (hasIndex && currentIndex > messages.length - 10) {
|
|
33231
|
+
nextDisableRef.current = false;
|
|
32975
33232
|
}
|
|
32976
33233
|
return Promise.resolve();
|
|
32977
33234
|
} catch (e) {
|
|
32978
33235
|
return Promise.reject(e);
|
|
32979
33236
|
}
|
|
32980
|
-
}, [channel === null || channel === void 0 ? void 0 : (_channel$lastMessage = channel.lastMessage) === null || _channel$lastMessage === void 0 ? void 0 : _channel$lastMessage.id, messages, scrollToMentionedMessage, scrollToNewMessage, messagesLoading, hasPrevMessages, hasNextMessages,
|
|
33237
|
+
}, [channel === null || channel === void 0 ? void 0 : (_channel$lastMessage = channel.lastMessage) === null || _channel$lastMessage === void 0 ? void 0 : _channel$lastMessage.id, messages, scrollToMentionedMessage, scrollToNewMessage, messagesLoading, hasPrevMessages, hasNextMessages, lastVisibleMessageId, connectionStatus, getHasPrevCached, getHasNextCached, scrollToReply]);
|
|
33238
|
+
var onScroll = useCallback(function () {
|
|
33239
|
+
if (scrollRafRef.current !== null) return;
|
|
33240
|
+
scrollRafRef.current = window.requestAnimationFrame(function () {
|
|
33241
|
+
scrollRafRef.current = null;
|
|
33242
|
+
handleMessagesListScroll();
|
|
33243
|
+
});
|
|
33244
|
+
}, [handleMessagesListScroll]);
|
|
33245
|
+
useEffect(function () {
|
|
33246
|
+
return function () {
|
|
33247
|
+
if (scrollRafRef.current !== null) {
|
|
33248
|
+
cancelAnimationFrame(scrollRafRef.current);
|
|
33249
|
+
scrollRafRef.current = null;
|
|
33250
|
+
}
|
|
33251
|
+
};
|
|
33252
|
+
}, []);
|
|
32981
33253
|
var handleScrollToRepliedMessage = function handleScrollToRepliedMessage(messageId) {
|
|
32982
33254
|
try {
|
|
32983
|
-
|
|
32984
|
-
|
|
33255
|
+
prevDisableRef.current = true;
|
|
33256
|
+
nextDisableRef.current = true;
|
|
32985
33257
|
if (messages.findIndex(function (msg) {
|
|
32986
33258
|
return msg.id === messageId;
|
|
32987
33259
|
}) >= 10) {
|
|
@@ -32995,8 +33267,8 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32995
33267
|
var positiveValue = repliedMessage.offsetTop - scrollRef.current.offsetHeight / 2 < 0 ? repliedMessage.offsetTop - scrollRef.current.offsetHeight * -1 : repliedMessage.offsetTop - scrollRef.current.offsetHeight / 2;
|
|
32996
33268
|
setTimeout(function () {
|
|
32997
33269
|
repliedMessage.classList.remove('highlight');
|
|
32998
|
-
|
|
32999
|
-
|
|
33270
|
+
prevDisableRef.current = false;
|
|
33271
|
+
nextDisableRef.current = false;
|
|
33000
33272
|
}, 1000 + positiveValue * 0.1);
|
|
33001
33273
|
}
|
|
33002
33274
|
} else {
|
|
@@ -33017,10 +33289,10 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33017
33289
|
var hasNextCached = getHasNextCached();
|
|
33018
33290
|
if (messagesLoading === LOADING_STATE.LOADED && connectionStatus === CONNECTION_STATUS.CONNECTED) {
|
|
33019
33291
|
if (direction === MESSAGE_LOAD_DIRECTION.PREV && firstMessageId && (hasPrevMessages || hasPrevCached)) {
|
|
33020
|
-
|
|
33292
|
+
loadingRef.current = true;
|
|
33021
33293
|
dispatch(loadMoreMessagesAC(channel.id, limit, direction, firstMessageId, hasPrevMessages));
|
|
33022
33294
|
} else if (direction === MESSAGE_LOAD_DIRECTION.NEXT && lastMessageId && (hasNextMessages || hasNextCached)) {
|
|
33023
|
-
|
|
33295
|
+
loadingRef.current = true;
|
|
33024
33296
|
dispatch(loadMoreMessagesAC(channel.id, limit, direction, lastMessageId, hasNextMessages));
|
|
33025
33297
|
}
|
|
33026
33298
|
}
|
|
@@ -33051,39 +33323,42 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33051
33323
|
setIsDragging(false);
|
|
33052
33324
|
}
|
|
33053
33325
|
};
|
|
33326
|
+
var readDroppedFiles = function readDroppedFiles(e) {
|
|
33327
|
+
return new Promise(function (resolve) {
|
|
33328
|
+
var fileList = Object.values(e.dataTransfer.files);
|
|
33329
|
+
var attachmentsFiles = [];
|
|
33330
|
+
var readFiles = 0;
|
|
33331
|
+
var errorCount = 0;
|
|
33332
|
+
fileList.forEach(function (attachment) {
|
|
33333
|
+
var fileReader = new FileReader();
|
|
33334
|
+
fileReader.onload = function (event) {
|
|
33335
|
+
var file = event.target.result;
|
|
33336
|
+
attachmentsFiles.push({
|
|
33337
|
+
name: attachment.name,
|
|
33338
|
+
data: file,
|
|
33339
|
+
type: attachment.type
|
|
33340
|
+
});
|
|
33341
|
+
readFiles++;
|
|
33342
|
+
if (readFiles + errorCount === fileList.length) {
|
|
33343
|
+
resolve(attachmentsFiles);
|
|
33344
|
+
}
|
|
33345
|
+
};
|
|
33346
|
+
fileReader.onerror = function () {
|
|
33347
|
+
errorCount++;
|
|
33348
|
+
if (readFiles + errorCount === fileList.length) {
|
|
33349
|
+
resolve(attachmentsFiles);
|
|
33350
|
+
}
|
|
33351
|
+
};
|
|
33352
|
+
fileReader.readAsDataURL(attachment);
|
|
33353
|
+
});
|
|
33354
|
+
});
|
|
33355
|
+
};
|
|
33054
33356
|
var handleDropFile = function handleDropFile(e) {
|
|
33055
33357
|
e.preventDefault();
|
|
33056
33358
|
e.stopPropagation();
|
|
33057
33359
|
setIsDragging(false);
|
|
33058
33360
|
if (e.dataTransfer.files && e.dataTransfer.files.length > 0) {
|
|
33059
|
-
|
|
33060
|
-
new Promise(function (resolve) {
|
|
33061
|
-
var attachmentsFiles = [];
|
|
33062
|
-
var readFiles = 0;
|
|
33063
|
-
var errorCount = 0;
|
|
33064
|
-
fileList.forEach(function (attachment) {
|
|
33065
|
-
var fileReader = new FileReader();
|
|
33066
|
-
fileReader.onload = function (event) {
|
|
33067
|
-
var file = event.target.result;
|
|
33068
|
-
attachmentsFiles.push({
|
|
33069
|
-
name: attachment.name,
|
|
33070
|
-
data: file,
|
|
33071
|
-
type: attachment.type
|
|
33072
|
-
});
|
|
33073
|
-
readFiles++;
|
|
33074
|
-
if (readFiles + errorCount === fileList.length) {
|
|
33075
|
-
resolve(attachmentsFiles);
|
|
33076
|
-
}
|
|
33077
|
-
};
|
|
33078
|
-
fileReader.onerror = function () {
|
|
33079
|
-
errorCount++;
|
|
33080
|
-
if (readFiles + errorCount === fileList.length) {
|
|
33081
|
-
resolve(attachmentsFiles);
|
|
33082
|
-
}
|
|
33083
|
-
};
|
|
33084
|
-
fileReader.readAsDataURL(attachment);
|
|
33085
|
-
});
|
|
33086
|
-
}).then(function (result) {
|
|
33361
|
+
readDroppedFiles(e).then(function (result) {
|
|
33087
33362
|
dispatch(setDraggedAttachmentsAC(result, 'file'));
|
|
33088
33363
|
})["catch"](function (error) {
|
|
33089
33364
|
console.error('Error in handleDropFile:', error);
|
|
@@ -33096,34 +33371,7 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33096
33371
|
e.stopPropagation();
|
|
33097
33372
|
setIsDragging(false);
|
|
33098
33373
|
if (e.dataTransfer.files && e.dataTransfer.files.length > 0) {
|
|
33099
|
-
|
|
33100
|
-
new Promise(function (resolve) {
|
|
33101
|
-
var attachmentsFiles = [];
|
|
33102
|
-
var readFiles = 0;
|
|
33103
|
-
var errorCount = 0;
|
|
33104
|
-
fileList.forEach(function (attachment) {
|
|
33105
|
-
var fileReader = new FileReader();
|
|
33106
|
-
fileReader.onload = function (event) {
|
|
33107
|
-
var file = event.target.result;
|
|
33108
|
-
attachmentsFiles.push({
|
|
33109
|
-
name: attachment.name,
|
|
33110
|
-
data: file,
|
|
33111
|
-
type: attachment.type
|
|
33112
|
-
});
|
|
33113
|
-
readFiles++;
|
|
33114
|
-
if (readFiles + errorCount === fileList.length) {
|
|
33115
|
-
resolve(attachmentsFiles);
|
|
33116
|
-
}
|
|
33117
|
-
};
|
|
33118
|
-
fileReader.onerror = function () {
|
|
33119
|
-
errorCount++;
|
|
33120
|
-
if (readFiles + errorCount === fileList.length) {
|
|
33121
|
-
resolve(attachmentsFiles);
|
|
33122
|
-
}
|
|
33123
|
-
};
|
|
33124
|
-
fileReader.readAsDataURL(attachment);
|
|
33125
|
-
});
|
|
33126
|
-
}).then(function (result) {
|
|
33374
|
+
readDroppedFiles(e).then(function (result) {
|
|
33127
33375
|
dispatch(setDraggedAttachmentsAC(result, 'media'));
|
|
33128
33376
|
})["catch"](function (error) {
|
|
33129
33377
|
console.error('Error in handleDropMedia:', error);
|
|
@@ -33135,21 +33383,21 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33135
33383
|
var _messages, _channel$lastMessage2;
|
|
33136
33384
|
if (messages.length > 0 && ((_messages = messages[messages.length - 1]) === null || _messages === void 0 ? void 0 : _messages.id) === ((_channel$lastMessage2 = channel.lastMessage) === null || _channel$lastMessage2 === void 0 ? void 0 : _channel$lastMessage2.id) && scrollRef.current && scrollRef.current.scrollTop > -50 && !showScrollToNewMessageButton) {
|
|
33137
33385
|
dispatch(showScrollToNewMessageButtonAC(false));
|
|
33138
|
-
|
|
33386
|
+
prevDisableRef.current = false;
|
|
33139
33387
|
}
|
|
33140
33388
|
}, [messages, channel === null || channel === void 0 ? void 0 : (_channel$lastMessage3 = channel.lastMessage) === null || _channel$lastMessage3 === void 0 ? void 0 : _channel$lastMessage3.id, scrollRef === null || scrollRef === void 0 ? void 0 : (_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 ? void 0 : _scrollRef$current.scrollTop, showScrollToNewMessageButton]);
|
|
33141
33389
|
useEffect(function () {
|
|
33142
33390
|
if (scrollToRepliedMessage) {
|
|
33143
|
-
|
|
33391
|
+
loadingRef.current = false;
|
|
33144
33392
|
scrollRef.current.style.scrollBehavior = 'inherit';
|
|
33145
33393
|
var repliedMessage = document.getElementById(scrollToRepliedMessage);
|
|
33146
33394
|
if (repliedMessage) {
|
|
33147
33395
|
setScrollToReply(repliedMessage && repliedMessage.offsetTop - (channel.backToLinkedChannel ? 0 : 200));
|
|
33148
33396
|
scrollRef.current.scrollTo({
|
|
33149
33397
|
top: repliedMessage && repliedMessage.offsetTop - (channel.backToLinkedChannel ? 0 : 200),
|
|
33150
|
-
behavior:
|
|
33398
|
+
behavior: scrollToMessageBehavior
|
|
33151
33399
|
});
|
|
33152
|
-
scrollRef.current.style.scrollBehavior =
|
|
33400
|
+
scrollRef.current.style.scrollBehavior = scrollToMessageBehavior;
|
|
33153
33401
|
if (!channel.backToLinkedChannel && scrollToMessageHighlight) {
|
|
33154
33402
|
repliedMessage && repliedMessage.classList.add('highlight');
|
|
33155
33403
|
}
|
|
@@ -33159,9 +33407,9 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33159
33407
|
var _repliedMessage = document.getElementById(scrollToRepliedMessage);
|
|
33160
33408
|
_repliedMessage && _repliedMessage.classList.remove('highlight');
|
|
33161
33409
|
}
|
|
33162
|
-
|
|
33410
|
+
prevDisableRef.current = false;
|
|
33163
33411
|
setScrollToReply(null);
|
|
33164
|
-
scrollRef.current.style.scrollBehavior = '
|
|
33412
|
+
scrollRef.current.style.scrollBehavior = 'instant';
|
|
33165
33413
|
}, 1000 + positiveValue * 0.1);
|
|
33166
33414
|
}
|
|
33167
33415
|
dispatch(setScrollToMessagesAC(null));
|
|
@@ -33177,15 +33425,15 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33177
33425
|
});
|
|
33178
33426
|
}
|
|
33179
33427
|
} else {
|
|
33180
|
-
|
|
33181
|
-
|
|
33428
|
+
nextDisableRef.current = true;
|
|
33429
|
+
prevDisableRef.current = true;
|
|
33182
33430
|
scrollRef.current.scrollTo({
|
|
33183
33431
|
top: 0,
|
|
33184
33432
|
behavior: 'smooth'
|
|
33185
33433
|
});
|
|
33186
33434
|
dispatch(showScrollToNewMessageButtonAC(false));
|
|
33187
33435
|
setTimeout(function () {
|
|
33188
|
-
|
|
33436
|
+
prevDisableRef.current = false;
|
|
33189
33437
|
}, 800);
|
|
33190
33438
|
}
|
|
33191
33439
|
}
|
|
@@ -33203,11 +33451,18 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33203
33451
|
useEffect(function () {
|
|
33204
33452
|
setHasNextCached(false);
|
|
33205
33453
|
setHasPrevCached(false);
|
|
33454
|
+
messagesIndexMapRef.current = {};
|
|
33455
|
+
loadFromServerRef.current = false;
|
|
33456
|
+
loadDirectionRef.current = '';
|
|
33457
|
+
nextDisableRef.current = false;
|
|
33458
|
+
prevDisableRef.current = false;
|
|
33459
|
+
shouldLoadMessagesRef.current = '';
|
|
33460
|
+
loadingRef.current = false;
|
|
33206
33461
|
if (channel.backToLinkedChannel) {
|
|
33207
33462
|
var visibleMessages = getVisibleMessagesMap();
|
|
33208
33463
|
var visibleMessagesIds = Object.keys(visibleMessages);
|
|
33209
33464
|
var messageId = visibleMessagesIds[visibleMessagesIds.length - 1];
|
|
33210
|
-
dispatch(getMessagesAC(channel, undefined, messageId));
|
|
33465
|
+
dispatch(getMessagesAC(channel, undefined, messageId, undefined, undefined, undefined, 'instant'));
|
|
33211
33466
|
setUnreadMessageId(messageId);
|
|
33212
33467
|
} else {
|
|
33213
33468
|
if (!channel.isLinkedChannel) {
|
|
@@ -33230,9 +33485,9 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33230
33485
|
}
|
|
33231
33486
|
setPreviousScrollTop(0);
|
|
33232
33487
|
setShouldPreserveScroll(false);
|
|
33233
|
-
|
|
33234
|
-
|
|
33235
|
-
|
|
33488
|
+
nextDisableRef.current = false;
|
|
33489
|
+
prevDisableRef.current = false;
|
|
33490
|
+
scrollToBottomRef.current = true;
|
|
33236
33491
|
setAllowEditDeleteIncomingMessage(allowEditDeleteIncomingMessage);
|
|
33237
33492
|
}, [channel.id]);
|
|
33238
33493
|
useEffect(function () {
|
|
@@ -33247,7 +33502,7 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33247
33502
|
setUnreadMessageId('');
|
|
33248
33503
|
}
|
|
33249
33504
|
}
|
|
33250
|
-
}, [messages]);
|
|
33505
|
+
}, [messages, hiddenMessagesProperties, user === null || user === void 0 ? void 0 : user.id]);
|
|
33251
33506
|
useEffect(function () {
|
|
33252
33507
|
if (scrollRef.current) {
|
|
33253
33508
|
var isAtBottom = scrollRef.current.scrollTop > -50;
|
|
@@ -33256,35 +33511,40 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33256
33511
|
setShouldPreserveScroll(true);
|
|
33257
33512
|
}
|
|
33258
33513
|
}
|
|
33259
|
-
if (
|
|
33260
|
-
if (
|
|
33514
|
+
if (loadingRef.current) {
|
|
33515
|
+
if (loadDirectionRef.current !== 'next') {
|
|
33261
33516
|
var lastVisibleMessage = document.getElementById(lastVisibleMessageId);
|
|
33262
33517
|
if (lastVisibleMessage) {
|
|
33263
33518
|
scrollRef.current.style.scrollBehavior = 'inherit';
|
|
33264
33519
|
scrollRef.current.scrollTop = lastVisibleMessage.offsetTop;
|
|
33265
33520
|
scrollRef.current.style.scrollBehavior = 'smooth';
|
|
33266
33521
|
}
|
|
33267
|
-
if (
|
|
33268
|
-
setTimeout(function () {
|
|
33269
|
-
|
|
33270
|
-
|
|
33271
|
-
|
|
33272
|
-
|
|
33522
|
+
if (loadFromServerRef.current) {
|
|
33523
|
+
var timeout = setTimeout(function () {
|
|
33524
|
+
loadingRef.current = false;
|
|
33525
|
+
loadFromServerRef.current = false;
|
|
33526
|
+
nextDisableRef.current = false;
|
|
33527
|
+
var currentIndex = messagesIndexMapRef.current[lastVisibleMessageId];
|
|
33528
|
+
if (shouldLoadMessagesRef.current === 'prev' && typeof currentIndex === 'number' && currentIndex < 15) {
|
|
33273
33529
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33274
33530
|
}
|
|
33275
|
-
if (
|
|
33531
|
+
if (shouldLoadMessagesRef.current === 'next' && typeof currentIndex === 'number' && currentIndex > messages.length - 15) {
|
|
33276
33532
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33277
33533
|
}
|
|
33278
33534
|
}, 50);
|
|
33535
|
+
if (loadingMessagesTimeoutRef.current) {
|
|
33536
|
+
clearTimeout(loadingMessagesTimeoutRef.current);
|
|
33537
|
+
}
|
|
33538
|
+
loadingMessagesTimeoutRef.current = timeout;
|
|
33279
33539
|
} else {
|
|
33280
|
-
|
|
33281
|
-
if (
|
|
33540
|
+
loadingRef.current = false;
|
|
33541
|
+
if (shouldLoadMessagesRef.current === 'prev') {
|
|
33282
33542
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33283
|
-
|
|
33543
|
+
shouldLoadMessagesRef.current = '';
|
|
33284
33544
|
}
|
|
33285
|
-
if (
|
|
33545
|
+
if (shouldLoadMessagesRef.current === 'next') {
|
|
33286
33546
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33287
|
-
|
|
33547
|
+
shouldLoadMessagesRef.current = '';
|
|
33288
33548
|
}
|
|
33289
33549
|
}
|
|
33290
33550
|
} else {
|
|
@@ -33294,22 +33554,26 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33294
33554
|
scrollRef.current.scrollTop = _lastVisibleMessage.offsetTop - scrollRef.current.offsetHeight + _lastVisibleMessage.offsetHeight;
|
|
33295
33555
|
scrollRef.current.style.scrollBehavior = 'smooth';
|
|
33296
33556
|
}
|
|
33297
|
-
|
|
33298
|
-
|
|
33299
|
-
if (
|
|
33557
|
+
loadingRef.current = false;
|
|
33558
|
+
prevDisableRef.current = false;
|
|
33559
|
+
if (shouldLoadMessagesRef.current === 'prev') {
|
|
33300
33560
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33301
|
-
|
|
33561
|
+
shouldLoadMessagesRef.current = '';
|
|
33302
33562
|
}
|
|
33303
|
-
if (
|
|
33563
|
+
if (shouldLoadMessagesRef.current === 'next') {
|
|
33304
33564
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33305
|
-
|
|
33565
|
+
shouldLoadMessagesRef.current = '';
|
|
33306
33566
|
}
|
|
33307
33567
|
}
|
|
33308
33568
|
}
|
|
33309
33569
|
renderTopDate();
|
|
33310
|
-
if (
|
|
33311
|
-
|
|
33312
|
-
|
|
33570
|
+
if (scrollToBottomRef.current) {
|
|
33571
|
+
if (channel.backToLinkedChannel) {
|
|
33572
|
+
dispatch(scrollToNewMessageAC(false));
|
|
33573
|
+
} else {
|
|
33574
|
+
dispatch(scrollToNewMessageAC(true));
|
|
33575
|
+
}
|
|
33576
|
+
scrollToBottomRef.current = false;
|
|
33313
33577
|
}
|
|
33314
33578
|
if (shouldPreserveScroll && scrollRef.current && previousScrollTop > 0) {
|
|
33315
33579
|
requestAnimationFrame(function () {
|
|
@@ -33322,13 +33586,43 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33322
33586
|
setPreviousScrollTop(0);
|
|
33323
33587
|
});
|
|
33324
33588
|
}
|
|
33589
|
+
return function () {
|
|
33590
|
+
if (loadingMessagesTimeoutRef.current) {
|
|
33591
|
+
clearTimeout(loadingMessagesTimeoutRef.current);
|
|
33592
|
+
}
|
|
33593
|
+
};
|
|
33325
33594
|
}, [messages]);
|
|
33595
|
+
useEffect(function () {
|
|
33596
|
+
if (messagesLoading === LOADING_STATE.LOADED) {
|
|
33597
|
+
var timeout = setTimeout(function () {
|
|
33598
|
+
loadingRef.current = false;
|
|
33599
|
+
loadFromServerRef.current = false;
|
|
33600
|
+
nextDisableRef.current = false;
|
|
33601
|
+
var currentIndex = messagesIndexMapRef.current[lastVisibleMessageId];
|
|
33602
|
+
if (shouldLoadMessagesRef.current === 'prev' && typeof currentIndex === 'number' && currentIndex < 15) {
|
|
33603
|
+
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33604
|
+
}
|
|
33605
|
+
if (shouldLoadMessagesRef.current === 'next' && typeof currentIndex === 'number' && currentIndex > messages.length - 15) {
|
|
33606
|
+
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33607
|
+
}
|
|
33608
|
+
}, 50);
|
|
33609
|
+
if (loadingMessagesTimeoutRef.current) {
|
|
33610
|
+
clearTimeout(loadingMessagesTimeoutRef.current);
|
|
33611
|
+
}
|
|
33612
|
+
loadingMessagesTimeoutRef.current = timeout;
|
|
33613
|
+
}
|
|
33614
|
+
return function () {
|
|
33615
|
+
if (loadingMessagesTimeoutRef.current) {
|
|
33616
|
+
clearTimeout(loadingMessagesTimeoutRef.current);
|
|
33617
|
+
}
|
|
33618
|
+
};
|
|
33619
|
+
}, [messagesLoading, messages, lastVisibleMessageId]);
|
|
33326
33620
|
useEffect(function () {
|
|
33327
33621
|
log.info('connection status is changed.. .... ', connectionStatus, 'channel ... ', channel);
|
|
33328
33622
|
if (connectionStatus === CONNECTION_STATUS.CONNECTED) {
|
|
33329
|
-
|
|
33330
|
-
|
|
33331
|
-
|
|
33623
|
+
loadingRef.current = false;
|
|
33624
|
+
prevDisableRef.current = false;
|
|
33625
|
+
nextDisableRef.current = false;
|
|
33332
33626
|
clearMessagesMap();
|
|
33333
33627
|
removeAllMessages();
|
|
33334
33628
|
if (channel.id) {
|
|
@@ -33337,7 +33631,8 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33337
33631
|
}
|
|
33338
33632
|
}, [connectionStatus]);
|
|
33339
33633
|
useEffect(function () {
|
|
33340
|
-
|
|
33634
|
+
var unreadScrollTo = getUnreadScrollTo();
|
|
33635
|
+
if (channel.newMessageCount && channel.newMessageCount > 0 && unreadScrollTo) {
|
|
33341
33636
|
if (scrollRef.current) {
|
|
33342
33637
|
scrollRef.current.style.scrollBehavior = 'inherit';
|
|
33343
33638
|
}
|
|
@@ -33350,7 +33645,14 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33350
33645
|
setUnreadScrollTo(false);
|
|
33351
33646
|
}
|
|
33352
33647
|
}
|
|
33353
|
-
});
|
|
33648
|
+
}, [channel.id, channel.newMessageCount, channel.lastDisplayedMessageId]);
|
|
33649
|
+
useEffect(function () {
|
|
33650
|
+
return function () {
|
|
33651
|
+
if (hideTopDateTimeout.current) {
|
|
33652
|
+
clearTimeout(hideTopDateTimeout.current);
|
|
33653
|
+
}
|
|
33654
|
+
};
|
|
33655
|
+
}, []);
|
|
33354
33656
|
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, isDragging && !(attachmentsPreview !== null && attachmentsPreview !== void 0 && attachmentsPreview.show && mediaFile) && (/*#__PURE__*/React__default.createElement(DragAndDropContainer, {
|
|
33355
33657
|
id: 'draggingContainer',
|
|
33356
33658
|
draggable: true,
|
|
@@ -33393,14 +33695,12 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33393
33695
|
dateDividerBackgroundColor: dateDividerBackgroundColor || overlayBackground,
|
|
33394
33696
|
dateDividerBorderRadius: dateDividerBorderRadius,
|
|
33395
33697
|
topOffset: scrollRef && scrollRef.current && scrollRef.current.offsetTop
|
|
33396
|
-
}, /*#__PURE__*/React__default.createElement("span", {
|
|
33397
|
-
ref: messageTopDateRef
|
|
33398
|
-
}))), /*#__PURE__*/React__default.createElement(Container$h, {
|
|
33698
|
+
}, /*#__PURE__*/React__default.createElement("span", null, topDateLabel))), /*#__PURE__*/React__default.createElement(Container$h, {
|
|
33399
33699
|
id: 'scrollableDiv',
|
|
33400
33700
|
className: isScrolling ? 'show-scrollbar' : '',
|
|
33401
33701
|
ref: scrollRef,
|
|
33402
33702
|
stopScrolling: stopScrolling,
|
|
33403
|
-
onScroll:
|
|
33703
|
+
onScroll: onScroll,
|
|
33404
33704
|
onMouseEnter: function onMouseEnter() {
|
|
33405
33705
|
return setIsScrolling(true);
|
|
33406
33706
|
},
|
|
@@ -33419,8 +33719,10 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33419
33719
|
var prevMessage = messages[index - 1];
|
|
33420
33720
|
var nextMessage = messages[index + 1];
|
|
33421
33721
|
var isUnreadMessage = !!(unreadMessageId && unreadMessageId === message.id && nextMessage) && !channel.backToLinkedChannel;
|
|
33422
|
-
|
|
33423
|
-
return /*#__PURE__*/React__default.createElement(React__default.Fragment,
|
|
33722
|
+
messagesIndexMapRef.current[message.id] = index;
|
|
33723
|
+
return /*#__PURE__*/React__default.createElement(React__default.Fragment, {
|
|
33724
|
+
key: message.id || message.tid
|
|
33725
|
+
}, /*#__PURE__*/React__default.createElement(CreateMessageDateDivider, {
|
|
33424
33726
|
noMargin: !isUnreadMessage && prevMessage && prevMessage.type === 'system' && message.type !== 'system',
|
|
33425
33727
|
theme: theme,
|
|
33426
33728
|
lastIndex: false,
|
|
@@ -36114,8 +36416,12 @@ var AudioRecord = function AudioRecord(_ref) {
|
|
|
36114
36416
|
}
|
|
36115
36417
|
}, [currentRecordedFile]);
|
|
36116
36418
|
useEffect(function () {
|
|
36419
|
+
if (!showRecording) {
|
|
36420
|
+
setCurrentTime(0);
|
|
36421
|
+
}
|
|
36117
36422
|
return function () {
|
|
36118
36423
|
handleStopRecording();
|
|
36424
|
+
setCurrentTime(0);
|
|
36119
36425
|
};
|
|
36120
36426
|
}, [showRecording]);
|
|
36121
36427
|
useEffect(function () {
|
|
@@ -37355,7 +37661,7 @@ var SendMessageInput = function SendMessageInput(_ref3) {
|
|
|
37355
37661
|
if (attachments.length) {
|
|
37356
37662
|
var videoAttachment = false;
|
|
37357
37663
|
attachments.forEach(function (att) {
|
|
37358
|
-
if (att.type === 'video' || att.data.type.split('/')[0] === 'video') {
|
|
37664
|
+
if ((att.type === 'video' || att.data.type.split('/')[0] === 'video') && att.type !== 'file') {
|
|
37359
37665
|
videoAttachment = true;
|
|
37360
37666
|
if (!readyVideoAttachments[att.tid]) {
|
|
37361
37667
|
setSendMessageIsActive(false);
|
|
@@ -38199,7 +38505,6 @@ function SvgUnpin(props) {
|
|
|
38199
38505
|
|
|
38200
38506
|
var _templateObject$K, _templateObject2$F, _templateObject3$y, _templateObject4$t, _templateObject5$p, _templateObject6$l, _templateObject7$j, _templateObject8$h, _templateObject9$e, _templateObject0$d, _templateObject1$a, _templateObject10$6, _templateObject11$6, _templateObject12$5, _templateObject13$4, _templateObject14$3, _templateObject15$3, _templateObject16$3;
|
|
38201
38507
|
var Actions = function Actions(_ref) {
|
|
38202
|
-
var _channel$metadata;
|
|
38203
38508
|
var setActionsHeight = _ref.setActionsHeight,
|
|
38204
38509
|
channel = _ref.channel,
|
|
38205
38510
|
actionMenuOpen = _ref.actionMenuOpen,
|
|
@@ -38317,7 +38622,7 @@ var Actions = function Actions(_ref) {
|
|
|
38317
38622
|
var twoHours = oneHour * 2;
|
|
38318
38623
|
var oneDay = oneHour * 24;
|
|
38319
38624
|
var isDirectChannel = channel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
|
|
38320
|
-
var isSelfChannel = isDirectChannel &&
|
|
38625
|
+
var isSelfChannel = isDirectChannel && channel.memberCount === 1 && channel.members.length > 0 && channel.members[0].id === user.id;
|
|
38321
38626
|
var directChannelUser = isDirectChannel && channel.members.find(function (member) {
|
|
38322
38627
|
return member.id !== user.id;
|
|
38323
38628
|
});
|
|
@@ -40224,7 +40529,7 @@ var EditChannel = function EditChannel(_ref) {
|
|
|
40224
40529
|
|
|
40225
40530
|
var _templateObject$V, _templateObject2$O, _templateObject3$F, _templateObject4$z, _templateObject5$u, _templateObject6$p, _templateObject7$n, _templateObject8$l, _templateObject9$g, _templateObject0$e, _templateObject1$b, _templateObject10$7;
|
|
40226
40531
|
var Details = function Details(_ref) {
|
|
40227
|
-
var _activeChannel$
|
|
40532
|
+
var _activeChannel$member;
|
|
40228
40533
|
var detailsTitleText = _ref.detailsTitleText,
|
|
40229
40534
|
editDetailsTitleText = _ref.editDetailsTitleText,
|
|
40230
40535
|
detailsTitleFontSize = _ref.detailsTitleFontSize,
|
|
@@ -40379,7 +40684,7 @@ var Details = function Details(_ref) {
|
|
|
40379
40684
|
var detailsHeaderRef = useRef(null);
|
|
40380
40685
|
var openTimeOut = useRef(null);
|
|
40381
40686
|
var isDirectChannel = activeChannel && activeChannel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
|
|
40382
|
-
var isSelfChannel = isDirectChannel &&
|
|
40687
|
+
var isSelfChannel = isDirectChannel && activeChannel.memberCount === 1 && activeChannel.members.length > 0 && activeChannel.members[0].id === user.id;
|
|
40383
40688
|
var memberDisplayText = getChannelTypesMemberDisplayTextMap();
|
|
40384
40689
|
var displayMemberText = memberDisplayText && (memberDisplayText[activeChannel.type] ? activeChannel.memberCount > 1 ? memberDisplayText[activeChannel.type] + "s" : memberDisplayText[activeChannel.type] : activeChannel.type === DEFAULT_CHANNEL_TYPE.BROADCAST || activeChannel.type === DEFAULT_CHANNEL_TYPE.PUBLIC ? activeChannel.memberCount > 1 ? 'subscribers' : 'subscriber' : activeChannel.memberCount > 1 ? 'members' : 'member');
|
|
40385
40690
|
var directChannelUser = isDirectChannel && (activeChannel.members.find(function (member) {
|
|
@@ -40493,7 +40798,7 @@ var Details = function Details(_ref) {
|
|
|
40493
40798
|
color: textSecondary,
|
|
40494
40799
|
fontSize: channelMembersFontSize,
|
|
40495
40800
|
lineHeight: channelMembersLineHeight
|
|
40496
|
-
}, showPhoneNumber ? "+" + (directChannelUser === null || directChannelUser === void 0 ? void 0 : directChannelUser.id) : hideUserPresence && directChannelUser && hideUserPresence(directChannelUser) ? '' : directChannelUser && directChannelUser.presence && (directChannelUser.presence.state === USER_PRESENCE_STATUS.ONLINE ? 'Online' : directChannelUser.presence.lastActiveAt && userLastActiveDateFormat(directChannelUser.presence.lastActiveAt)))) : (/*#__PURE__*/React__default.createElement(SubTitle, {
|
|
40801
|
+
}, showPhoneNumber && directChannelUser !== null && directChannelUser !== void 0 && directChannelUser.id ? "+" + (directChannelUser === null || directChannelUser === void 0 ? void 0 : directChannelUser.id) : hideUserPresence && directChannelUser && hideUserPresence(directChannelUser) ? '' : directChannelUser && directChannelUser.presence && (directChannelUser.presence.state === USER_PRESENCE_STATUS.ONLINE ? 'Online' : directChannelUser.presence.lastActiveAt && userLastActiveDateFormat(directChannelUser.presence.lastActiveAt)))) : (/*#__PURE__*/React__default.createElement(SubTitle, {
|
|
40497
40802
|
color: textSecondary,
|
|
40498
40803
|
fontSize: channelMembersFontSize,
|
|
40499
40804
|
lineHeight: channelMembersLineHeight
|
|
@@ -40947,10 +41252,10 @@ var MessagesScrollToBottomButton = function MessagesScrollToBottomButton(_ref) {
|
|
|
40947
41252
|
};
|
|
40948
41253
|
var handleScrollToLastMessage = function handleScrollToLastMessage(messageId) {
|
|
40949
41254
|
try {
|
|
40950
|
-
dispatch(scrollToNewMessageAC(true, false, false));
|
|
40951
41255
|
if (messages.findIndex(function (msg) {
|
|
40952
41256
|
return msg.id === messageId;
|
|
40953
41257
|
}) >= 10) {
|
|
41258
|
+
dispatch(scrollToNewMessageAC(true, false, false));
|
|
40954
41259
|
dispatch(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
|
|
40955
41260
|
var repliedMessage = document.getElementById(messageId);
|
|
40956
41261
|
if (repliedMessage) {
|