sceyt-chat-react-uikit 1.7.1-beta.9 → 1.7.2-beta.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 +699 -397
- package/index.modern.js +699 -397
- 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) {
|
|
@@ -17089,6 +17093,9 @@ var scrollToMessageSelector = function scrollToMessageSelector(store) {
|
|
|
17089
17093
|
var scrollToMessageHighlightSelector = function scrollToMessageHighlightSelector(store) {
|
|
17090
17094
|
return store.MessageReducer.scrollToMessageHighlight;
|
|
17091
17095
|
};
|
|
17096
|
+
var scrollToMessageBehaviorSelector = function scrollToMessageBehaviorSelector(store) {
|
|
17097
|
+
return store.MessageReducer.scrollToMessageBehavior;
|
|
17098
|
+
};
|
|
17092
17099
|
var reactionsListSelector = function reactionsListSelector(store) {
|
|
17093
17100
|
return store.MessageReducer.reactionsList;
|
|
17094
17101
|
};
|
|
@@ -18482,7 +18489,7 @@ function editMessage(action) {
|
|
|
18482
18489
|
}, _marked6$1, null, [[0, 5]]);
|
|
18483
18490
|
}
|
|
18484
18491
|
function getMessagesQuery(action) {
|
|
18485
|
-
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;
|
|
18486
18493
|
return _regenerator().w(function (_context9) {
|
|
18487
18494
|
while (1) switch (_context9.p = _context9.n) {
|
|
18488
18495
|
case 0:
|
|
@@ -18490,9 +18497,9 @@ function getMessagesQuery(action) {
|
|
|
18490
18497
|
_context9.n = 1;
|
|
18491
18498
|
return put(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
|
|
18492
18499
|
case 1:
|
|
18493
|
-
_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;
|
|
18494
18501
|
if (!(channel.id && !channel.isMockChannel)) {
|
|
18495
|
-
_context9.n =
|
|
18502
|
+
_context9.n = 48;
|
|
18496
18503
|
break;
|
|
18497
18504
|
}
|
|
18498
18505
|
SceytChatClient = getClient();
|
|
@@ -18520,6 +18527,7 @@ function getMessagesQuery(action) {
|
|
|
18520
18527
|
break;
|
|
18521
18528
|
}
|
|
18522
18529
|
setHasPrevCached(false);
|
|
18530
|
+
setMessagesToMap(channel.id, []);
|
|
18523
18531
|
setAllMessages([]);
|
|
18524
18532
|
_context9.n = 3;
|
|
18525
18533
|
return call(messageQuery.loadPreviousMessageId, '0');
|
|
@@ -18576,13 +18584,13 @@ function getMessagesQuery(action) {
|
|
|
18576
18584
|
break;
|
|
18577
18585
|
}
|
|
18578
18586
|
_context9.n = 12;
|
|
18579
|
-
return put(setScrollToMessagesAC(messageId, highlight));
|
|
18587
|
+
return put(setScrollToMessagesAC(messageId, highlight, behavior));
|
|
18580
18588
|
case 12:
|
|
18581
|
-
_context9.n =
|
|
18589
|
+
_context9.n = 46;
|
|
18582
18590
|
break;
|
|
18583
18591
|
case 13:
|
|
18584
18592
|
if (!messageId) {
|
|
18585
|
-
_context9.n =
|
|
18593
|
+
_context9.n = 26;
|
|
18586
18594
|
break;
|
|
18587
18595
|
}
|
|
18588
18596
|
_allMessages = getAllMessages();
|
|
@@ -18591,7 +18599,7 @@ function getMessagesQuery(action) {
|
|
|
18591
18599
|
});
|
|
18592
18600
|
maxLengthPart = MESSAGES_MAX_LENGTH / 2;
|
|
18593
18601
|
if (!(messageIndex >= maxLengthPart)) {
|
|
18594
|
-
_context9.n =
|
|
18602
|
+
_context9.n = 16;
|
|
18595
18603
|
break;
|
|
18596
18604
|
}
|
|
18597
18605
|
result.messages = _allMessages.slice(messageIndex - maxLengthPart, messageIndex + maxLengthPart);
|
|
@@ -18600,151 +18608,160 @@ function getMessagesQuery(action) {
|
|
|
18600
18608
|
case 14:
|
|
18601
18609
|
setHasPrevCached(messageIndex > maxLengthPart);
|
|
18602
18610
|
setHasNextCached(_allMessages.length > maxLengthPart);
|
|
18611
|
+
_context9.n = 15;
|
|
18612
|
+
return put(setMessagesHasPrevAC(true));
|
|
18613
|
+
case 15:
|
|
18603
18614
|
_context9.n = 22;
|
|
18604
18615
|
break;
|
|
18605
|
-
case
|
|
18616
|
+
case 16:
|
|
18606
18617
|
messageQuery.limit = MESSAGES_MAX_LENGTH;
|
|
18607
18618
|
log.info('load by message id from server ...............', messageId);
|
|
18608
|
-
_context9.n =
|
|
18619
|
+
_context9.n = 17;
|
|
18609
18620
|
return call(messageQuery.loadNearMessageId, messageId);
|
|
18610
|
-
case
|
|
18621
|
+
case 17:
|
|
18611
18622
|
result = _context9.v;
|
|
18612
18623
|
if (!(result.messages.length === 50)) {
|
|
18613
|
-
_context9.n =
|
|
18624
|
+
_context9.n = 20;
|
|
18614
18625
|
break;
|
|
18615
18626
|
}
|
|
18616
|
-
messageQuery.limit =
|
|
18617
|
-
_context9.n =
|
|
18627
|
+
messageQuery.limit = MESSAGES_MAX_LENGTH - 50;
|
|
18628
|
+
_context9.n = 18;
|
|
18618
18629
|
return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
|
|
18619
|
-
case
|
|
18630
|
+
case 18:
|
|
18620
18631
|
_secondResult = _context9.v;
|
|
18621
18632
|
messageQuery.reverse = false;
|
|
18622
|
-
_context9.n =
|
|
18633
|
+
_context9.n = 19;
|
|
18623
18634
|
return call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
|
|
18624
|
-
case
|
|
18635
|
+
case 19:
|
|
18625
18636
|
thirdResult = _context9.v;
|
|
18626
18637
|
result.messages = [].concat(_secondResult.messages, result.messages, thirdResult.messages);
|
|
18627
18638
|
result.hasNext = _secondResult.hasNext;
|
|
18628
18639
|
messageQuery.reverse = true;
|
|
18629
|
-
case 19:
|
|
18630
|
-
log.info('result from server ....... ', result);
|
|
18631
18640
|
_context9.n = 20;
|
|
18632
|
-
return put(
|
|
18641
|
+
return put(setMessagesHasPrevAC(_secondResult.hasNext));
|
|
18633
18642
|
case 20:
|
|
18643
|
+
log.info('result from server ....... ', result);
|
|
18634
18644
|
_context9.n = 21;
|
|
18635
18645
|
return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
|
|
18636
18646
|
case 21:
|
|
18647
|
+
setMessagesToMap(channel.id, result.messages);
|
|
18637
18648
|
setAllMessages([].concat(result.messages));
|
|
18638
18649
|
setHasPrevCached(false);
|
|
18639
18650
|
setHasNextCached(false);
|
|
18640
18651
|
case 22:
|
|
18641
18652
|
_context9.n = 23;
|
|
18642
|
-
return put(
|
|
18653
|
+
return put(setMessagesHasNextAC(true));
|
|
18643
18654
|
case 23:
|
|
18644
18655
|
_context9.n = 24;
|
|
18645
|
-
return put(
|
|
18656
|
+
return put(setScrollToMessagesAC(messageId, true, behavior));
|
|
18646
18657
|
case 24:
|
|
18647
|
-
_context9.n =
|
|
18648
|
-
|
|
18658
|
+
_context9.n = 25;
|
|
18659
|
+
return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
|
|
18649
18660
|
case 25:
|
|
18661
|
+
_context9.n = 46;
|
|
18662
|
+
break;
|
|
18663
|
+
case 26:
|
|
18650
18664
|
if (!(channel.newMessageCount && channel.lastDisplayedMessageId)) {
|
|
18651
|
-
_context9.n =
|
|
18665
|
+
_context9.n = 39;
|
|
18652
18666
|
break;
|
|
18653
18667
|
}
|
|
18668
|
+
setMessagesToMap(channel.id, []);
|
|
18654
18669
|
setAllMessages([]);
|
|
18655
18670
|
messageQuery.limit = MESSAGES_MAX_LENGTH;
|
|
18656
18671
|
if (!Number(channel.lastDisplayedMessageId)) {
|
|
18657
|
-
_context9.n =
|
|
18672
|
+
_context9.n = 32;
|
|
18658
18673
|
break;
|
|
18659
18674
|
}
|
|
18660
|
-
_context9.n =
|
|
18675
|
+
_context9.n = 27;
|
|
18661
18676
|
return call(messageQuery.loadNearMessageId, channel.lastDisplayedMessageId);
|
|
18662
|
-
case
|
|
18677
|
+
case 27:
|
|
18663
18678
|
result = _context9.v;
|
|
18664
18679
|
if (!(result.messages.length === 50)) {
|
|
18665
|
-
_context9.n =
|
|
18680
|
+
_context9.n = 31;
|
|
18666
18681
|
break;
|
|
18667
18682
|
}
|
|
18668
18683
|
messageQuery.limit = channel.newMessageCount > 25 ? (MESSAGES_MAX_LENGTH - 50) / 2 : MESSAGES_MAX_LENGTH - 50;
|
|
18669
|
-
_context9.n =
|
|
18684
|
+
_context9.n = 28;
|
|
18670
18685
|
return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
|
|
18671
|
-
case
|
|
18686
|
+
case 28:
|
|
18672
18687
|
_secondResult2 = _context9.v;
|
|
18673
18688
|
if (!(channel.newMessageCount > 25)) {
|
|
18674
|
-
_context9.n =
|
|
18689
|
+
_context9.n = 30;
|
|
18675
18690
|
break;
|
|
18676
18691
|
}
|
|
18677
18692
|
messageQuery.reverse = false;
|
|
18678
|
-
_context9.n =
|
|
18693
|
+
_context9.n = 29;
|
|
18679
18694
|
return call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
|
|
18680
|
-
case
|
|
18695
|
+
case 29:
|
|
18681
18696
|
_thirdResult = _context9.v;
|
|
18682
18697
|
result.messages = [].concat(_secondResult2.messages, result.messages, _thirdResult.messages);
|
|
18683
18698
|
messageQuery.reverse = true;
|
|
18684
|
-
_context9.n =
|
|
18699
|
+
_context9.n = 31;
|
|
18685
18700
|
break;
|
|
18686
|
-
case 29:
|
|
18687
|
-
result.messages = [].concat(_secondResult2.messages, result.messages);
|
|
18688
18701
|
case 30:
|
|
18689
|
-
|
|
18690
|
-
break;
|
|
18702
|
+
result.messages = [].concat(_secondResult2.messages, result.messages);
|
|
18691
18703
|
case 31:
|
|
18692
|
-
_context9.n =
|
|
18693
|
-
|
|
18704
|
+
_context9.n = 35;
|
|
18705
|
+
break;
|
|
18694
18706
|
case 32:
|
|
18707
|
+
_context9.n = 33;
|
|
18708
|
+
return call(messageQuery.loadPrevious);
|
|
18709
|
+
case 33:
|
|
18695
18710
|
result = _context9.v;
|
|
18696
18711
|
if (!(result.messages.length === 50)) {
|
|
18697
|
-
_context9.n =
|
|
18712
|
+
_context9.n = 35;
|
|
18698
18713
|
break;
|
|
18699
18714
|
}
|
|
18700
18715
|
messageQuery.limit = MESSAGES_MAX_LENGTH - 50;
|
|
18701
|
-
_context9.n =
|
|
18716
|
+
_context9.n = 34;
|
|
18702
18717
|
return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
|
|
18703
|
-
case
|
|
18718
|
+
case 34:
|
|
18704
18719
|
_secondResult3 = _context9.v;
|
|
18705
18720
|
result.messages = [].concat(_secondResult3.messages, result.messages);
|
|
18706
18721
|
result.hasNext = _secondResult3.hasNext;
|
|
18707
|
-
case 34:
|
|
18708
|
-
setMessagesToMap(channel.id, result.messages);
|
|
18709
|
-
_context9.n = 35;
|
|
18710
|
-
return put(setMessagesHasPrevAC(true));
|
|
18711
18722
|
case 35:
|
|
18712
18723
|
_context9.n = 36;
|
|
18713
|
-
return put(
|
|
18724
|
+
return put(setMessagesHasPrevAC(true));
|
|
18714
18725
|
case 36:
|
|
18715
|
-
setAllMessages([].concat(result.messages));
|
|
18716
18726
|
_context9.n = 37;
|
|
18717
|
-
return put(
|
|
18727
|
+
return put(setMessagesHasNextAC(channel.lastMessage && result.messages.length > 0 && channel.lastMessage.id !== result.messages[result.messages.length - 1].id));
|
|
18718
18728
|
case 37:
|
|
18719
|
-
|
|
18720
|
-
|
|
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))));
|
|
18721
18733
|
case 38:
|
|
18734
|
+
_context9.n = 46;
|
|
18735
|
+
break;
|
|
18736
|
+
case 39:
|
|
18737
|
+
setMessagesToMap(channel.id, []);
|
|
18722
18738
|
setAllMessages([]);
|
|
18723
18739
|
if (!(cachedMessages && cachedMessages.length)) {
|
|
18724
|
-
_context9.n =
|
|
18740
|
+
_context9.n = 40;
|
|
18725
18741
|
break;
|
|
18726
18742
|
}
|
|
18743
|
+
setMessagesToMap(channel.id, []);
|
|
18727
18744
|
setAllMessages([].concat(cachedMessages));
|
|
18728
|
-
_context9.n =
|
|
18745
|
+
_context9.n = 40;
|
|
18729
18746
|
return put(setMessagesAC(JSON.parse(JSON.stringify(cachedMessages))));
|
|
18730
|
-
case
|
|
18747
|
+
case 40:
|
|
18731
18748
|
log.info('load message from server');
|
|
18732
|
-
_context9.n =
|
|
18749
|
+
_context9.n = 41;
|
|
18733
18750
|
return call(messageQuery.loadPrevious);
|
|
18734
|
-
case
|
|
18751
|
+
case 41:
|
|
18735
18752
|
result = _context9.v;
|
|
18736
18753
|
if (!(result.messages.length === 50)) {
|
|
18737
|
-
_context9.n =
|
|
18754
|
+
_context9.n = 43;
|
|
18738
18755
|
break;
|
|
18739
18756
|
}
|
|
18740
18757
|
messageQuery.limit = MESSAGES_MAX_LENGTH - 50;
|
|
18741
|
-
_context9.n =
|
|
18758
|
+
_context9.n = 42;
|
|
18742
18759
|
return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
|
|
18743
|
-
case
|
|
18760
|
+
case 42:
|
|
18744
18761
|
_secondResult4 = _context9.v;
|
|
18745
18762
|
result.messages = [].concat(_secondResult4.messages, result.messages);
|
|
18746
18763
|
result.hasNext = _secondResult4.hasNext;
|
|
18747
|
-
case
|
|
18764
|
+
case 43:
|
|
18748
18765
|
updatedMessages = [];
|
|
18749
18766
|
result.messages.forEach(function (msg) {
|
|
18750
18767
|
var updatedMessage = updateMessageOnMap(channel.id, {
|
|
@@ -18756,18 +18773,18 @@ function getMessagesQuery(action) {
|
|
|
18756
18773
|
});
|
|
18757
18774
|
setMessagesToMap(channel.id, updatedMessages);
|
|
18758
18775
|
setAllMessages([].concat(updatedMessages));
|
|
18759
|
-
_context9.n = 43;
|
|
18760
|
-
return put(setMessagesAC(JSON.parse(JSON.stringify(updatedMessages))));
|
|
18761
|
-
case 43:
|
|
18762
18776
|
_context9.n = 44;
|
|
18763
|
-
return put(
|
|
18777
|
+
return put(setMessagesAC(JSON.parse(JSON.stringify(updatedMessages))));
|
|
18764
18778
|
case 44:
|
|
18765
18779
|
_context9.n = 45;
|
|
18766
|
-
return put(
|
|
18780
|
+
return put(setMessagesHasPrevAC(result.hasNext));
|
|
18767
18781
|
case 45:
|
|
18782
|
+
_context9.n = 46;
|
|
18783
|
+
return put(setMessagesHasNextAC(false));
|
|
18784
|
+
case 46:
|
|
18768
18785
|
pendingMessages = getPendingMessages(channel.id);
|
|
18769
18786
|
if (!(pendingMessages && pendingMessages.length)) {
|
|
18770
|
-
_context9.n =
|
|
18787
|
+
_context9.n = 47;
|
|
18771
18788
|
break;
|
|
18772
18789
|
}
|
|
18773
18790
|
_messagesMap = {};
|
|
@@ -18777,38 +18794,38 @@ function getMessagesQuery(action) {
|
|
|
18777
18794
|
filteredPendingMessages = pendingMessages.filter(function (msg) {
|
|
18778
18795
|
return !_messagesMap[msg.tid || ''];
|
|
18779
18796
|
});
|
|
18780
|
-
_context9.n =
|
|
18797
|
+
_context9.n = 47;
|
|
18781
18798
|
return put(addMessagesAC(filteredPendingMessages, MESSAGE_LOAD_DIRECTION.NEXT));
|
|
18782
|
-
case 46:
|
|
18783
|
-
_context9.n = 48;
|
|
18784
|
-
break;
|
|
18785
18799
|
case 47:
|
|
18800
|
+
_context9.n = 49;
|
|
18801
|
+
break;
|
|
18802
|
+
case 48:
|
|
18786
18803
|
if (!channel.isMockChannel) {
|
|
18787
|
-
_context9.n =
|
|
18804
|
+
_context9.n = 49;
|
|
18788
18805
|
break;
|
|
18789
18806
|
}
|
|
18790
|
-
_context9.n =
|
|
18807
|
+
_context9.n = 49;
|
|
18791
18808
|
return put(setMessagesAC([]));
|
|
18792
|
-
case 48:
|
|
18793
|
-
_context9.n = 50;
|
|
18794
|
-
break;
|
|
18795
18809
|
case 49:
|
|
18796
|
-
_context9.
|
|
18797
|
-
|
|
18798
|
-
log.error('error in message query', _t9);
|
|
18810
|
+
_context9.n = 51;
|
|
18811
|
+
break;
|
|
18799
18812
|
case 50:
|
|
18800
18813
|
_context9.p = 50;
|
|
18801
|
-
|
|
18802
|
-
|
|
18814
|
+
_t9 = _context9.v;
|
|
18815
|
+
log.error('error in message query', _t9);
|
|
18803
18816
|
case 51:
|
|
18804
|
-
|
|
18817
|
+
_context9.p = 51;
|
|
18818
|
+
_context9.n = 52;
|
|
18819
|
+
return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
|
|
18805
18820
|
case 52:
|
|
18821
|
+
return _context9.f(51);
|
|
18822
|
+
case 53:
|
|
18806
18823
|
return _context9.a(2);
|
|
18807
18824
|
}
|
|
18808
|
-
}, _marked7$1, null, [[0,
|
|
18825
|
+
}, _marked7$1, null, [[0, 50, 51, 53]]);
|
|
18809
18826
|
}
|
|
18810
18827
|
function getMessageQuery(action) {
|
|
18811
|
-
var payload, channelId, messageId, channel, messages, _t0;
|
|
18828
|
+
var payload, channelId, messageId, channel, messages, fetchedMessage, _t0;
|
|
18812
18829
|
return _regenerator().w(function (_context0) {
|
|
18813
18830
|
while (1) switch (_context0.p = _context0.n) {
|
|
18814
18831
|
case 0:
|
|
@@ -18816,34 +18833,53 @@ function getMessageQuery(action) {
|
|
|
18816
18833
|
payload = action.payload;
|
|
18817
18834
|
channelId = payload.channelId, messageId = payload.messageId;
|
|
18818
18835
|
_context0.n = 1;
|
|
18819
|
-
return call(
|
|
18836
|
+
return call(getChannelFromAllChannels, channelId);
|
|
18820
18837
|
case 1:
|
|
18821
18838
|
channel = _context0.v;
|
|
18822
|
-
|
|
18823
|
-
|
|
18839
|
+
if (channel) {
|
|
18840
|
+
_context0.n = 2;
|
|
18841
|
+
break;
|
|
18842
|
+
}
|
|
18843
|
+
return _context0.a(2);
|
|
18824
18844
|
case 2:
|
|
18825
|
-
messages = _context0.v;
|
|
18826
18845
|
_context0.n = 3;
|
|
18827
|
-
return
|
|
18846
|
+
return call(channel.getMessagesById, [messageId]);
|
|
18828
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:
|
|
18829
18857
|
updateMessageOnMap(channel.id, {
|
|
18830
18858
|
messageId: messageId,
|
|
18831
|
-
params:
|
|
18859
|
+
params: fetchedMessage
|
|
18832
18860
|
});
|
|
18833
|
-
updateMessageOnAllMessages(messageId,
|
|
18834
|
-
_context0.n =
|
|
18861
|
+
updateMessageOnAllMessages(messageId, fetchedMessage);
|
|
18862
|
+
_context0.n = 5;
|
|
18835
18863
|
return put(setScrollToMessagesAC(messageId, false));
|
|
18836
|
-
case
|
|
18864
|
+
case 5:
|
|
18865
|
+
if (!(channel.lastMessage && channel.lastMessage.id === messageId)) {
|
|
18866
|
+
_context0.n = 6;
|
|
18867
|
+
break;
|
|
18868
|
+
}
|
|
18869
|
+
updateChannelLastMessageOnAllChannels(channel.id, fetchedMessage);
|
|
18837
18870
|
_context0.n = 6;
|
|
18871
|
+
return put(updateChannelLastMessageAC(fetchedMessage, channel));
|
|
18872
|
+
case 6:
|
|
18873
|
+
_context0.n = 8;
|
|
18838
18874
|
break;
|
|
18839
|
-
case
|
|
18840
|
-
_context0.p =
|
|
18875
|
+
case 7:
|
|
18876
|
+
_context0.p = 7;
|
|
18841
18877
|
_t0 = _context0.v;
|
|
18842
18878
|
log.error('error in message query', _t0);
|
|
18843
|
-
case
|
|
18879
|
+
case 8:
|
|
18844
18880
|
return _context0.a(2);
|
|
18845
18881
|
}
|
|
18846
|
-
}, _marked8$1, null, [[0,
|
|
18882
|
+
}, _marked8$1, null, [[0, 7]]);
|
|
18847
18883
|
}
|
|
18848
18884
|
function loadMoreMessages(action) {
|
|
18849
18885
|
var payload, limit, direction, channelId, messageId, hasNext, SceytChatClient, messageQueryBuilder, messageQuery, result, _t1;
|
|
@@ -18932,25 +18968,38 @@ function loadMoreMessages(action) {
|
|
|
18932
18968
|
_context1.n = 11;
|
|
18933
18969
|
return put(addMessagesAC(JSON.parse(JSON.stringify(result.messages)), direction));
|
|
18934
18970
|
case 11:
|
|
18935
|
-
_context1.n =
|
|
18971
|
+
_context1.n = 16;
|
|
18936
18972
|
break;
|
|
18937
18973
|
case 12:
|
|
18938
18974
|
_context1.n = 13;
|
|
18939
18975
|
return put(addMessagesAC([], direction));
|
|
18940
18976
|
case 13:
|
|
18977
|
+
if (!(direction === MESSAGE_LOAD_DIRECTION.NEXT)) {
|
|
18978
|
+
_context1.n = 15;
|
|
18979
|
+
break;
|
|
18980
|
+
}
|
|
18941
18981
|
_context1.n = 14;
|
|
18942
|
-
return put(
|
|
18982
|
+
return put(setMessagesHasNextAC(false));
|
|
18943
18983
|
case 14:
|
|
18944
18984
|
_context1.n = 16;
|
|
18945
18985
|
break;
|
|
18946
18986
|
case 15:
|
|
18947
|
-
_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;
|
|
18948
18997
|
_t1 = _context1.v;
|
|
18949
18998
|
log.error('error in load more messages', _t1);
|
|
18950
|
-
case
|
|
18999
|
+
case 19:
|
|
18951
19000
|
return _context1.a(2);
|
|
18952
19001
|
}
|
|
18953
|
-
}, _marked9$1, null, [[0,
|
|
19002
|
+
}, _marked9$1, null, [[0, 18]]);
|
|
18954
19003
|
}
|
|
18955
19004
|
function addReaction(action) {
|
|
18956
19005
|
var payload, channelId, messageId, key, score, reason, enforceUnique, user, channel, _yield$call, _message2, reaction, channelUpdateParam, _t10;
|
|
@@ -19374,7 +19423,7 @@ function MessageSaga() {
|
|
|
19374
19423
|
return takeLatest(GET_MESSAGES, getMessagesQuery);
|
|
19375
19424
|
case 7:
|
|
19376
19425
|
_context18.n = 8;
|
|
19377
|
-
return
|
|
19426
|
+
return takeEvery(GET_MESSAGE, getMessageQuery);
|
|
19378
19427
|
case 8:
|
|
19379
19428
|
_context18.n = 9;
|
|
19380
19429
|
return takeLatest(GET_MESSAGES_ATTACHMENTS, getMessageAttachments);
|
|
@@ -20979,6 +21028,50 @@ function SvgAvatar(props) {
|
|
|
20979
21028
|
})));
|
|
20980
21029
|
}
|
|
20981
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
|
+
|
|
20982
21075
|
var _templateObject$3, _templateObject2$3, _templateObject3$2, _templateObject4$2;
|
|
20983
21076
|
var Avatar = function Avatar(_ref) {
|
|
20984
21077
|
var image = _ref.image,
|
|
@@ -20995,6 +21088,9 @@ var Avatar = function Avatar(_ref) {
|
|
|
20995
21088
|
var theme = useSelector(themeSelector);
|
|
20996
21089
|
var _useColor = useColors(),
|
|
20997
21090
|
iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE];
|
|
21091
|
+
var _useState = useState(image || null),
|
|
21092
|
+
resolvedImageSrc = _useState[0],
|
|
21093
|
+
setResolvedImageSrc = _useState[1];
|
|
20998
21094
|
var isDeletedUserAvatar = !image && !name;
|
|
20999
21095
|
var avatarText = '';
|
|
21000
21096
|
if (!image && name) {
|
|
@@ -21011,11 +21107,68 @@ var Avatar = function Avatar(_ref) {
|
|
|
21011
21107
|
avatarText = _firstCharOfFirstWord ? String.fromCodePoint(_firstCharOfFirstWord) : '';
|
|
21012
21108
|
}
|
|
21013
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]);
|
|
21014
21167
|
return /*#__PURE__*/React__default.createElement(Container$1, {
|
|
21015
21168
|
border: border,
|
|
21016
21169
|
marginAuto: marginAuto,
|
|
21017
21170
|
size: size,
|
|
21018
|
-
isImage: !!(
|
|
21171
|
+
isImage: !!(resolvedImageSrc || setDefaultAvatar),
|
|
21019
21172
|
avatarName: name,
|
|
21020
21173
|
textSize: textSize,
|
|
21021
21174
|
onClick: handleAvatarClick,
|
|
@@ -21029,7 +21182,7 @@ var Avatar = function Avatar(_ref) {
|
|
|
21029
21182
|
}) : (/*#__PURE__*/React__default.createElement("span", null, avatarText)) : (/*#__PURE__*/React__default.createElement(AvatarImage, {
|
|
21030
21183
|
draggable: false,
|
|
21031
21184
|
showImage: true,
|
|
21032
|
-
src: image,
|
|
21185
|
+
src: resolvedImageSrc || image,
|
|
21033
21186
|
size: size,
|
|
21034
21187
|
alt: ''
|
|
21035
21188
|
})));
|
|
@@ -21143,7 +21296,10 @@ var Channel = function Channel(_ref3) {
|
|
|
21143
21296
|
channelLastMessageTimeFontSize = _ref3.channelLastMessageTimeFontSize,
|
|
21144
21297
|
channelLastMessageHeight = _ref3.channelLastMessageHeight,
|
|
21145
21298
|
channelAvatarSize = _ref3.channelAvatarSize,
|
|
21146
|
-
channelAvatarTextSize = _ref3.channelAvatarTextSize
|
|
21299
|
+
channelAvatarTextSize = _ref3.channelAvatarTextSize,
|
|
21300
|
+
setSelectedChannel = _ref3.setSelectedChannel,
|
|
21301
|
+
getCustomLatestMessage = _ref3.getCustomLatestMessage,
|
|
21302
|
+
doNotShowMessageDeliveryTypes = _ref3.doNotShowMessageDeliveryTypes;
|
|
21147
21303
|
var _useColor = useColors(),
|
|
21148
21304
|
accentColor = _useColor[THEME_COLORS.ACCENT],
|
|
21149
21305
|
textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
|
|
@@ -21181,13 +21337,6 @@ var Channel = function Channel(_ref3) {
|
|
|
21181
21337
|
statusWidth = _useState3[0],
|
|
21182
21338
|
setStatusWidth = _useState3[1];
|
|
21183
21339
|
var avatarName = channel.subject || (isDirectChannel && directChannelUser ? directChannelUser.firstName || directChannelUser.id : isSelfChannel ? 'Me' : '');
|
|
21184
|
-
var handleChangeActiveChannel = function handleChangeActiveChannel(chan) {
|
|
21185
|
-
if (activeChannel.id !== chan.id) {
|
|
21186
|
-
dispatch(sendTypingAC(false));
|
|
21187
|
-
dispatch(clearMessagesAC());
|
|
21188
|
-
dispatch(switchChannelActionAC(chan));
|
|
21189
|
-
}
|
|
21190
|
-
};
|
|
21191
21340
|
var messageAuthorRef = useRef(null);
|
|
21192
21341
|
var messageTimeAndStatusRef = useRef(null);
|
|
21193
21342
|
useUpdatePresence(channel, true);
|
|
@@ -21272,6 +21421,43 @@ var Channel = function Channel(_ref3) {
|
|
|
21272
21421
|
isDirectChannel: isDirectChannel
|
|
21273
21422
|
});
|
|
21274
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]);
|
|
21275
21461
|
return /*#__PURE__*/React__default.createElement(Container$2, {
|
|
21276
21462
|
theme: theme,
|
|
21277
21463
|
selectedChannel: channel.id === activeChannel.id,
|
|
@@ -21282,7 +21468,7 @@ var Channel = function Channel(_ref3) {
|
|
|
21282
21468
|
selectedChannelBorderRadius: selectedChannelBorderRadius,
|
|
21283
21469
|
channelsMargin: channelsMargin,
|
|
21284
21470
|
onClick: function onClick() {
|
|
21285
|
-
return
|
|
21471
|
+
return setSelectedChannel(channel);
|
|
21286
21472
|
},
|
|
21287
21473
|
hoverBackground: channelHoverBackground || backgroundHovered
|
|
21288
21474
|
}, showAvatar && (/*#__PURE__*/React__default.createElement(AvatarWrapper, null, /*#__PURE__*/React__default.createElement(Avatar, {
|
|
@@ -21308,7 +21494,23 @@ var Channel = function Channel(_ref3) {
|
|
|
21308
21494
|
avatarSize: channelAvatarSize
|
|
21309
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, {
|
|
21310
21496
|
color: notificationsIsMutedIconColor || iconInactive
|
|
21311
|
-
}, 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, {
|
|
21312
21514
|
color: textSecondary,
|
|
21313
21515
|
markedAsUnread: !!(channel.unread || channel.newMessageCount && channel.newMessageCount > 0),
|
|
21314
21516
|
unreadMentions: !!(channel.newMentionCount && channel.newMentionCount > 0),
|
|
@@ -21344,7 +21546,7 @@ var Channel = function Channel(_ref3) {
|
|
|
21344
21546
|
}, MessageText)))), /*#__PURE__*/React__default.createElement(ChannelStatus, {
|
|
21345
21547
|
color: iconInactive,
|
|
21346
21548
|
ref: messageTimeAndStatusRef
|
|
21347
|
-
}, 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({
|
|
21348
21550
|
messageStatus: lastMessage.deliveryStatus,
|
|
21349
21551
|
messageStatusDisplayingType: 'ticks',
|
|
21350
21552
|
readIconColor: accentColor,
|
|
@@ -21411,9 +21613,9 @@ var Container$2 = styled.div(_templateObject6$1 || (_templateObject6$1 = _tagged
|
|
|
21411
21613
|
return props.channelsMargin || '0 8px';
|
|
21412
21614
|
}, function (props) {
|
|
21413
21615
|
return props.selectedChannelBorderRadius || '12px';
|
|
21414
|
-
}, function (
|
|
21415
|
-
var selectedChannel =
|
|
21416
|
-
hoverBackground =
|
|
21616
|
+
}, function (_ref5) {
|
|
21617
|
+
var selectedChannel = _ref5.selectedChannel,
|
|
21618
|
+
hoverBackground = _ref5.hoverBackground;
|
|
21417
21619
|
return !selectedChannel && "\n background-color: " + hoverBackground + ";\n ";
|
|
21418
21620
|
}, UserStatus, function (props) {
|
|
21419
21621
|
return props.selectedChannel ? props.selectedBackgroundColor : props.hoverBackground;
|
|
@@ -21428,9 +21630,9 @@ var DraftMessageText = styled.span(_templateObject8$1 || (_templateObject8$1 = _
|
|
|
21428
21630
|
});
|
|
21429
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) {
|
|
21430
21632
|
return props.color;
|
|
21431
|
-
}, function (
|
|
21432
|
-
var typing =
|
|
21433
|
-
recording =
|
|
21633
|
+
}, function (_ref6) {
|
|
21634
|
+
var typing = _ref6.typing,
|
|
21635
|
+
recording = _ref6.recording;
|
|
21434
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 ";
|
|
21435
21637
|
});
|
|
21436
21638
|
var Points = styled.span(_templateObject0$1 || (_templateObject0$1 = _taggedTemplateLiteralLoose(["\n margin-right: 4px;\n color: ", ";\n font-style: normal;\n"])), function (props) {
|
|
@@ -21487,7 +21689,7 @@ var MessageTextContainer = styled.div(_templateObject20$1 || (_templateObject20$
|
|
|
21487
21689
|
|
|
21488
21690
|
var _templateObject$5, _templateObject2$5;
|
|
21489
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) {
|
|
21490
|
-
return props.inline && 'calc(100% - 24px)';
|
|
21692
|
+
return props.width || props.inline && 'calc(100% - 24px)';
|
|
21491
21693
|
}, function (props) {
|
|
21492
21694
|
return !props.inline && '0 12px 16px';
|
|
21493
21695
|
}, ClearTypedText, function (props) {
|
|
@@ -21514,14 +21716,16 @@ var ChannelSearch = function ChannelSearch(_ref) {
|
|
|
21514
21716
|
borderRadius = _ref.borderRadius,
|
|
21515
21717
|
searchInputBackgroundColor = _ref.searchInputBackgroundColor,
|
|
21516
21718
|
searchInputTextColor = _ref.searchInputTextColor,
|
|
21517
|
-
fontSize = _ref.fontSize
|
|
21719
|
+
fontSize = _ref.fontSize,
|
|
21720
|
+
width = _ref.width;
|
|
21518
21721
|
var _useColor = useColors(),
|
|
21519
21722
|
textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
|
|
21520
21723
|
surface1 = _useColor[THEME_COLORS.SURFACE_1],
|
|
21521
21724
|
iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE],
|
|
21522
21725
|
footnoteColor = _useColor[THEME_COLORS.TEXT_FOOTNOTE];
|
|
21523
21726
|
return /*#__PURE__*/React__default.createElement(SearchInputContainer, {
|
|
21524
|
-
inline: inline
|
|
21727
|
+
inline: inline,
|
|
21728
|
+
width: width
|
|
21525
21729
|
}, /*#__PURE__*/React__default.createElement(StyledSearchSvg, {
|
|
21526
21730
|
left: !inline ? '22px' : '',
|
|
21527
21731
|
color: iconInactive
|
|
@@ -23302,6 +23506,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23302
23506
|
searchInputTextColor = _ref.searchInputTextColor,
|
|
23303
23507
|
_ref$searchChannelsPo = _ref.searchChannelsPosition,
|
|
23304
23508
|
searchChannelsPosition = _ref$searchChannelsPo === void 0 ? 'bottom' : _ref$searchChannelsPo,
|
|
23509
|
+
channelSearchWidth = _ref.channelSearchWidth,
|
|
23305
23510
|
searchInputBorderRadius = _ref.searchInputBorderRadius,
|
|
23306
23511
|
selectedChannelBorderRadius = _ref.selectedChannelBorderRadius,
|
|
23307
23512
|
selectedChannelPaddings = _ref.selectedChannelPaddings,
|
|
@@ -23348,7 +23553,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23348
23553
|
channelAvatarTextSize = _ref.channelAvatarTextSize,
|
|
23349
23554
|
searchChannelInputFontSize = _ref.searchChannelInputFontSize,
|
|
23350
23555
|
searchedChannelsTitleFontSize = _ref.searchedChannelsTitleFontSize,
|
|
23351
|
-
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;
|
|
23352
23560
|
var _useColor = useColors(),
|
|
23353
23561
|
background = _useColor[THEME_COLORS.BACKGROUND],
|
|
23354
23562
|
textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
|
|
@@ -23416,11 +23624,6 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23416
23624
|
handleLoadMoreChannels();
|
|
23417
23625
|
}
|
|
23418
23626
|
};
|
|
23419
|
-
var handleChangeActiveChannel = function handleChangeActiveChannel(chan) {
|
|
23420
|
-
if (activeChannel.id !== chan.id) {
|
|
23421
|
-
dispatch(switchChannelActionAC(chan));
|
|
23422
|
-
}
|
|
23423
|
-
};
|
|
23424
23627
|
var handleCrateChatWithContact = function handleCrateChatWithContact(contact) {
|
|
23425
23628
|
if (contact) {
|
|
23426
23629
|
var channelData = {
|
|
@@ -23576,6 +23779,13 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23576
23779
|
setListWidthIsSet(false);
|
|
23577
23780
|
}
|
|
23578
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
|
+
};
|
|
23579
23789
|
return /*#__PURE__*/React__default.createElement(Container$7, {
|
|
23580
23790
|
className: className,
|
|
23581
23791
|
withCustomList: !!List,
|
|
@@ -23589,6 +23799,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23589
23799
|
padding: searchChannelsPadding
|
|
23590
23800
|
}, Profile, showSearch && searchChannelsPosition === 'inline' ? (/*#__PURE__*/React__default.createElement(ChannelSearch, {
|
|
23591
23801
|
inline: true,
|
|
23802
|
+
width: channelSearchWidth,
|
|
23592
23803
|
borderRadius: searchInputBorderRadius,
|
|
23593
23804
|
searchValue: searchValue,
|
|
23594
23805
|
handleSearchValueChange: handleSearchValueChange,
|
|
@@ -23610,6 +23821,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23610
23821
|
})))), showSearch && searchChannelsPosition === 'bottom' && (/*#__PURE__*/React__default.createElement(ChannelSearch, {
|
|
23611
23822
|
searchValue: searchValue,
|
|
23612
23823
|
theme: theme,
|
|
23824
|
+
width: channelSearchWidth,
|
|
23613
23825
|
borderRadius: searchInputBorderRadius,
|
|
23614
23826
|
handleSearchValueChange: handleSearchValueChange,
|
|
23615
23827
|
getMyChannels: getMyChannels,
|
|
@@ -23620,13 +23832,13 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23620
23832
|
channels: channels,
|
|
23621
23833
|
searchedChannels: searchedChannels,
|
|
23622
23834
|
selectedChannel: activeChannel,
|
|
23623
|
-
setSelectedChannel:
|
|
23835
|
+
setSelectedChannel: setSelectedChannel,
|
|
23624
23836
|
loadMoreChannels: handleLoadMoreChannels,
|
|
23625
23837
|
searchValue: searchValue
|
|
23626
23838
|
}, !searchValue ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, channels.map(function (channel) {
|
|
23627
23839
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23628
23840
|
channel: channel,
|
|
23629
|
-
setSelectedChannel:
|
|
23841
|
+
setSelectedChannel: setSelectedChannel,
|
|
23630
23842
|
key: channel.id
|
|
23631
23843
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23632
23844
|
theme: theme,
|
|
@@ -23652,7 +23864,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23652
23864
|
avatarBorderRadius: avatarBorderRadius,
|
|
23653
23865
|
channel: channel,
|
|
23654
23866
|
key: channel.id,
|
|
23655
|
-
contactsMap: contactsMap
|
|
23867
|
+
contactsMap: contactsMap,
|
|
23868
|
+
setSelectedChannel: setSelectedChannel,
|
|
23869
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
23870
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23656
23871
|
}));
|
|
23657
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, {
|
|
23658
23873
|
color: textSecondary,
|
|
@@ -23660,7 +23875,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23660
23875
|
}, "Chats & Groups"), searchedChannels.chats_groups.map(function (channel) {
|
|
23661
23876
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23662
23877
|
channel: channel,
|
|
23663
|
-
setSelectedChannel:
|
|
23878
|
+
setSelectedChannel: setSelectedChannel,
|
|
23664
23879
|
key: channel.id
|
|
23665
23880
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23666
23881
|
theme: theme,
|
|
@@ -23686,7 +23901,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23686
23901
|
avatarBorderRadius: avatarBorderRadius,
|
|
23687
23902
|
channel: channel,
|
|
23688
23903
|
key: channel.id,
|
|
23689
|
-
contactsMap: contactsMap
|
|
23904
|
+
contactsMap: contactsMap,
|
|
23905
|
+
setSelectedChannel: setSelectedChannel,
|
|
23906
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
23907
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23690
23908
|
}));
|
|
23691
23909
|
}))), !!(searchedChannels.contacts && searchedChannels.contacts.length) && (/*#__PURE__*/React__default.createElement(GroupChannels, null, /*#__PURE__*/React__default.createElement(SearchedChannelsHeader, {
|
|
23692
23910
|
color: textSecondary,
|
|
@@ -23695,7 +23913,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23695
23913
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23696
23914
|
contact: contact,
|
|
23697
23915
|
createChatWithContact: handleCrateChatWithContact,
|
|
23698
|
-
setSelectedChannel:
|
|
23916
|
+
setSelectedChannel: setSelectedChannel,
|
|
23699
23917
|
key: contact.id
|
|
23700
23918
|
})) : (/*#__PURE__*/React__default.createElement(ContactItem, {
|
|
23701
23919
|
theme: theme,
|
|
@@ -23726,7 +23944,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23726
23944
|
}, "Channels"), searchedChannels.channels.map(function (channel) {
|
|
23727
23945
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23728
23946
|
channel: channel,
|
|
23729
|
-
setSelectedChannel:
|
|
23947
|
+
setSelectedChannel: setSelectedChannel,
|
|
23730
23948
|
key: channel.id
|
|
23731
23949
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23732
23950
|
theme: theme,
|
|
@@ -23752,7 +23970,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23752
23970
|
avatarBorderRadius: avatarBorderRadius,
|
|
23753
23971
|
channel: channel,
|
|
23754
23972
|
key: channel.id,
|
|
23755
|
-
contactsMap: contactsMap
|
|
23973
|
+
contactsMap: contactsMap,
|
|
23974
|
+
setSelectedChannel: setSelectedChannel,
|
|
23975
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
23976
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23756
23977
|
}));
|
|
23757
23978
|
}))))) : (/*#__PURE__*/React__default.createElement(NoData, {
|
|
23758
23979
|
color: textSecondary,
|
|
@@ -23773,7 +23994,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23773
23994
|
}, channels.map(function (channel) {
|
|
23774
23995
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23775
23996
|
channel: channel,
|
|
23776
|
-
setSelectedChannel:
|
|
23997
|
+
setSelectedChannel: setSelectedChannel,
|
|
23777
23998
|
key: channel.id
|
|
23778
23999
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23779
24000
|
theme: theme,
|
|
@@ -23799,7 +24020,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23799
24020
|
avatarBorderRadius: avatarBorderRadius,
|
|
23800
24021
|
channel: channel,
|
|
23801
24022
|
key: channel.id,
|
|
23802
|
-
contactsMap: contactsMap
|
|
24023
|
+
contactsMap: contactsMap,
|
|
24024
|
+
setSelectedChannel: setSelectedChannel,
|
|
24025
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
24026
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23803
24027
|
}));
|
|
23804
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, {
|
|
23805
24029
|
color: textSecondary,
|
|
@@ -23810,7 +24034,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23810
24034
|
}, "Chats & Groups"), searchedChannels.chats_groups.map(function (channel) {
|
|
23811
24035
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23812
24036
|
channel: channel,
|
|
23813
|
-
setSelectedChannel:
|
|
24037
|
+
setSelectedChannel: setSelectedChannel,
|
|
23814
24038
|
key: channel.id
|
|
23815
24039
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23816
24040
|
theme: theme,
|
|
@@ -23836,7 +24060,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23836
24060
|
avatarBorderRadius: avatarBorderRadius,
|
|
23837
24061
|
channel: channel,
|
|
23838
24062
|
contactsMap: contactsMap,
|
|
23839
|
-
key: channel.id
|
|
24063
|
+
key: channel.id,
|
|
24064
|
+
setSelectedChannel: setSelectedChannel,
|
|
24065
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
24066
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23840
24067
|
}));
|
|
23841
24068
|
}))), !!searchedChannels.channels.length && (/*#__PURE__*/React__default.createElement(GroupChannels, null, /*#__PURE__*/React__default.createElement(SearchedChannelsHeader, {
|
|
23842
24069
|
color: textSecondary,
|
|
@@ -23844,7 +24071,7 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23844
24071
|
}, "Channels"), searchedChannels.channels.map(function (channel) {
|
|
23845
24072
|
return ListItem ? (/*#__PURE__*/React__default.createElement(ListItem, {
|
|
23846
24073
|
channel: channel,
|
|
23847
|
-
setSelectedChannel:
|
|
24074
|
+
setSelectedChannel: setSelectedChannel,
|
|
23848
24075
|
key: channel.id
|
|
23849
24076
|
})) : (/*#__PURE__*/React__default.createElement(Channel, {
|
|
23850
24077
|
theme: theme,
|
|
@@ -23870,7 +24097,10 @@ var ChannelList = function ChannelList(_ref) {
|
|
|
23870
24097
|
avatarBorderRadius: avatarBorderRadius,
|
|
23871
24098
|
channel: channel,
|
|
23872
24099
|
key: channel.id,
|
|
23873
|
-
contactsMap: contactsMap
|
|
24100
|
+
contactsMap: contactsMap,
|
|
24101
|
+
setSelectedChannel: setSelectedChannel,
|
|
24102
|
+
getCustomLatestMessage: getCustomLatestMessage,
|
|
24103
|
+
doNotShowMessageDeliveryTypes: doNotShowMessageDeliveryTypes
|
|
23874
24104
|
}));
|
|
23875
24105
|
}))))) : (/*#__PURE__*/React__default.createElement(LoadingWrapper, null, /*#__PURE__*/React__default.createElement(UploadingIcon, {
|
|
23876
24106
|
color: textFootnote
|
|
@@ -23909,7 +24139,7 @@ var NoData = styled.div(_templateObject8$4 || (_templateObject8$4 = _taggedTempl
|
|
|
23909
24139
|
return props.color;
|
|
23910
24140
|
});
|
|
23911
24141
|
var LoadingWrapper = styled.div(_templateObject9$4 || (_templateObject9$4 = _taggedTemplateLiteralLoose(["\n position: absolute;\n left: calc(50% - 20px);\n top: calc(50% - 20px);\n"])));
|
|
23912
|
-
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) {
|
|
23913
24143
|
return props.maxWidth ? props.maxWidth + "px" : 'inherit';
|
|
23914
24144
|
}, function (props) {
|
|
23915
24145
|
return props.padding || '12px';
|
|
@@ -24523,50 +24753,6 @@ function SvgDeleteChannel(props) {
|
|
|
24523
24753
|
})));
|
|
24524
24754
|
}
|
|
24525
24755
|
|
|
24526
|
-
var ATTACHMENTS_CACHE = 'attachments-cache';
|
|
24527
|
-
var isBrowser = typeof window !== 'undefined';
|
|
24528
|
-
var cacheAvailable;
|
|
24529
|
-
if (isBrowser) {
|
|
24530
|
-
cacheAvailable = 'caches' in window;
|
|
24531
|
-
} else {
|
|
24532
|
-
cacheAvailable = 'caches' in global;
|
|
24533
|
-
}
|
|
24534
|
-
var setAttachmentToCache = function setAttachmentToCache(attachmentUrl, attachmentResponse) {
|
|
24535
|
-
if (cacheAvailable) {
|
|
24536
|
-
caches.open(ATTACHMENTS_CACHE).then(function (cache) {
|
|
24537
|
-
try {
|
|
24538
|
-
cache.put(attachmentUrl, attachmentResponse).then(function () {
|
|
24539
|
-
log.info('Cache success');
|
|
24540
|
-
})["catch"](function (e) {
|
|
24541
|
-
log.info('Error on cache attachment ... ', e);
|
|
24542
|
-
caches["delete"](attachmentUrl);
|
|
24543
|
-
});
|
|
24544
|
-
return Promise.resolve();
|
|
24545
|
-
} catch (e) {
|
|
24546
|
-
return Promise.reject(e);
|
|
24547
|
-
}
|
|
24548
|
-
});
|
|
24549
|
-
}
|
|
24550
|
-
};
|
|
24551
|
-
var getAttachmentUrlFromCache = function getAttachmentUrlFromCache(attachmentUrl) {
|
|
24552
|
-
try {
|
|
24553
|
-
if (!cacheAvailable) {
|
|
24554
|
-
log.error('Cache is not available');
|
|
24555
|
-
return Promise.reject(new Error('Cache not available'));
|
|
24556
|
-
}
|
|
24557
|
-
return Promise.resolve(caches.match(attachmentUrl)).then(function (response) {
|
|
24558
|
-
if (response) {
|
|
24559
|
-
return Promise.resolve(response.blob()).then(URL.createObjectURL);
|
|
24560
|
-
} else {
|
|
24561
|
-
log.info('The image or video is not cached', attachmentUrl);
|
|
24562
|
-
return false;
|
|
24563
|
-
}
|
|
24564
|
-
});
|
|
24565
|
-
} catch (e) {
|
|
24566
|
-
return Promise.reject(e);
|
|
24567
|
-
}
|
|
24568
|
-
};
|
|
24569
|
-
|
|
24570
24756
|
var _path$A;
|
|
24571
24757
|
function _extends$B() {
|
|
24572
24758
|
return _extends$B = Object.assign ? Object.assign.bind() : function (n) {
|
|
@@ -26030,6 +26216,7 @@ var Message = function Message(_ref) {
|
|
|
26030
26216
|
var _useColor = useColors(),
|
|
26031
26217
|
textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY],
|
|
26032
26218
|
overlayBackground = _useColor[THEME_COLORS.OVERLAY_BACKGROUND];
|
|
26219
|
+
var scrollToNewMessage = useSelector(scrollToNewMessageSelector);
|
|
26033
26220
|
var dispatch = useDispatch();
|
|
26034
26221
|
var ChatClient = getClient();
|
|
26035
26222
|
var user = ChatClient.user;
|
|
@@ -26048,7 +26235,19 @@ var Message = function Message(_ref) {
|
|
|
26048
26235
|
};
|
|
26049
26236
|
useEffect(function () {
|
|
26050
26237
|
if (isVisible) {
|
|
26238
|
+
var _channel$lastMessage;
|
|
26051
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
|
+
}
|
|
26052
26251
|
}
|
|
26053
26252
|
}, [isVisible]);
|
|
26054
26253
|
useDidUpdate(function () {
|
|
@@ -31164,7 +31363,7 @@ var validateUrl = function validateUrl(url) {
|
|
|
31164
31363
|
}
|
|
31165
31364
|
};
|
|
31166
31365
|
var OGMetadata = function OGMetadata(_ref) {
|
|
31167
|
-
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;
|
|
31168
31367
|
var attachments = _ref.attachments,
|
|
31169
31368
|
state = _ref.state;
|
|
31170
31369
|
var _useState = useState(null),
|
|
@@ -31176,6 +31375,15 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31176
31375
|
var _useState3 = useState(true),
|
|
31177
31376
|
faviconLoadError = _useState3[0],
|
|
31178
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];
|
|
31179
31387
|
var attachment = useMemo(function () {
|
|
31180
31388
|
return attachments.find(function (attachment) {
|
|
31181
31389
|
return attachment.type === attachmentTypes.link;
|
|
@@ -31190,7 +31398,7 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31190
31398
|
var queryBuilder = new client.MessageLinkOGQueryBuilder(url);
|
|
31191
31399
|
return Promise.resolve(queryBuilder.build()).then(function (query) {
|
|
31192
31400
|
return Promise.resolve(query.loadOGData()).then(function (metadata) {
|
|
31193
|
-
return Promise.resolve(storeMetadata(url
|
|
31401
|
+
return Promise.resolve(storeMetadata(url, metadata)).then(function () {
|
|
31194
31402
|
setMetadata(metadata);
|
|
31195
31403
|
});
|
|
31196
31404
|
});
|
|
@@ -31213,7 +31421,7 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31213
31421
|
if (attachment !== null && attachment !== void 0 && attachment.id && attachment !== null && attachment !== void 0 && attachment.url) {
|
|
31214
31422
|
var url = attachment === null || attachment === void 0 ? void 0 : attachment.url;
|
|
31215
31423
|
if (url) {
|
|
31216
|
-
getMetadata(url
|
|
31424
|
+
getMetadata(url).then(function (cachedMetadata) {
|
|
31217
31425
|
try {
|
|
31218
31426
|
if (cachedMetadata) {
|
|
31219
31427
|
setMetadata(cachedMetadata);
|
|
@@ -31242,6 +31450,29 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31242
31450
|
var _metadata$og, _metadata$og2, _metadata$og2$image, _metadata$og2$image$, _metadata$og3;
|
|
31243
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;
|
|
31244
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]);
|
|
31245
31476
|
return /*#__PURE__*/React__default.createElement(OGMetadataContainer, {
|
|
31246
31477
|
showOGMetadata: !!showOGMetadata
|
|
31247
31478
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
@@ -31249,43 +31480,69 @@ var OGMetadata = function OGMetadata(_ref) {
|
|
|
31249
31480
|
window.open(attachment === null || attachment === void 0 ? void 0 : attachment.url, '_blank');
|
|
31250
31481
|
}
|
|
31251
31482
|
}, /*#__PURE__*/React__default.createElement(ImageContainer, {
|
|
31252
|
-
showOGMetadata: !!showOGMetadata && !imageLoadError
|
|
31253
|
-
|
|
31254
|
-
|
|
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,
|
|
31255
31488
|
alt: 'OG metadata image',
|
|
31256
|
-
|
|
31257
|
-
|
|
31258
|
-
|
|
31259
|
-
|
|
31260
|
-
|
|
31261
|
-
|
|
31262
|
-
}
|
|
31263
|
-
src: metadata === null || metadata === void 0 ? void 0 : (_metadata$
|
|
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,
|
|
31264
31497
|
onLoad: function onLoad() {
|
|
31265
31498
|
return setFaviconLoadError(false);
|
|
31266
31499
|
},
|
|
31267
31500
|
onError: function onError() {
|
|
31268
31501
|
return setFaviconLoadError(true);
|
|
31269
31502
|
}
|
|
31270
|
-
})) : null, /*#__PURE__*/React__default.createElement("span", null, metadata === null || metadata === void 0 ? void 0 : (_metadata$
|
|
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));
|
|
31271
31506
|
};
|
|
31272
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) {
|
|
31273
31508
|
var showOGMetadata = _ref2.showOGMetadata;
|
|
31274
31509
|
return showOGMetadata ? '0.8rem' : '0';
|
|
31275
31510
|
});
|
|
31276
|
-
var ImageContainer = styled.div(_templateObject2$v || (_templateObject2$v = _taggedTemplateLiteralLoose(["\n
|
|
31277
|
-
var
|
|
31278
|
-
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 ";
|
|
31279
31514
|
}, function (_ref4) {
|
|
31280
|
-
var
|
|
31281
|
-
|
|
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';
|
|
31524
|
+
});
|
|
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 ";
|
|
31282
31533
|
});
|
|
31283
|
-
var
|
|
31284
|
-
var
|
|
31285
|
-
|
|
31286
|
-
|
|
31287
|
-
var Img = styled.img(_templateObject7$d || (_templateObject7$d = _taggedTemplateLiteralLoose(["\n
|
|
31288
|
-
var
|
|
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"])));
|
|
31289
31546
|
|
|
31290
31547
|
var _templateObject$B, _templateObject2$w, _templateObject3$q, _templateObject4$m, _templateObject5$i;
|
|
31291
31548
|
var MessageBody = function MessageBody(_ref) {
|
|
@@ -32625,14 +32882,6 @@ var HiddenMessageProperty;
|
|
|
32625
32882
|
})(HiddenMessageProperty || (HiddenMessageProperty = {}));
|
|
32626
32883
|
|
|
32627
32884
|
var _templateObject$D, _templateObject2$y, _templateObject3$s, _templateObject4$o, _templateObject5$k, _templateObject6$h, _templateObject7$f, _templateObject8$e, _templateObject9$c, _templateObject0$b, _templateObject1$8;
|
|
32628
|
-
var loadFromServer = false;
|
|
32629
|
-
var loadDirection = '';
|
|
32630
|
-
var nextDisable = false;
|
|
32631
|
-
var prevDisable = false;
|
|
32632
|
-
var scrollToBottom = false;
|
|
32633
|
-
var shouldLoadMessages;
|
|
32634
|
-
var loading = false;
|
|
32635
|
-
var messagesIndexMap = {};
|
|
32636
32885
|
var CreateMessageDateDivider = function CreateMessageDateDivider(_ref) {
|
|
32637
32886
|
var lastIndex = _ref.lastIndex,
|
|
32638
32887
|
currentMessageDate = _ref.currentMessageDate,
|
|
@@ -32842,6 +33091,7 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32842
33091
|
var scrollToMentionedMessage = useSelector(scrollToMentionedMessageSelector, shallowEqual);
|
|
32843
33092
|
var scrollToRepliedMessage = useSelector(scrollToMessageSelector, shallowEqual);
|
|
32844
33093
|
var scrollToMessageHighlight = useSelector(scrollToMessageHighlightSelector, shallowEqual);
|
|
33094
|
+
var scrollToMessageBehavior = useSelector(scrollToMessageBehaviorSelector, shallowEqual);
|
|
32845
33095
|
var browserTabIsActive = useSelector(browserTabIsActiveSelector, shallowEqual);
|
|
32846
33096
|
var hasNextMessages = useSelector(messagesHasNextSelector, shallowEqual);
|
|
32847
33097
|
var hasPrevMessages = useSelector(messagesHasPrevSelector, shallowEqual);
|
|
@@ -32882,35 +33132,41 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32882
33132
|
setShouldPreserveScroll = _useState0[1];
|
|
32883
33133
|
var messageForReply = {};
|
|
32884
33134
|
var attachmentsSelected = false;
|
|
32885
|
-
var
|
|
33135
|
+
var _useState1 = useState(''),
|
|
33136
|
+
topDateLabel = _useState1[0],
|
|
33137
|
+
setTopDateLabel = _useState1[1];
|
|
32886
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);
|
|
32887
33149
|
var renderTopDate = function renderTopDate() {
|
|
32888
|
-
var
|
|
32889
|
-
|
|
33150
|
+
var container = scrollRef.current;
|
|
33151
|
+
if (!container) return;
|
|
33152
|
+
var dateLabels = container.querySelectorAll('.divider');
|
|
32890
33153
|
var text = '';
|
|
32891
33154
|
for (var i = dateLabels.length - 1; i >= 0; i--) {
|
|
32892
|
-
var _dateLabel$firstChild;
|
|
32893
33155
|
var dateLabel = dateLabels[i];
|
|
32894
|
-
|
|
32895
|
-
|
|
32896
|
-
text = span
|
|
32897
|
-
|
|
32898
|
-
|
|
32899
|
-
span.style.display = 'block';
|
|
33156
|
+
if (!text && container.scrollTop > dateLabel.offsetTop - 28) {
|
|
33157
|
+
var span = (dateLabel === null || dateLabel === void 0 ? void 0 : dateLabel.firstChild) && dateLabel.firstChild.firstChild;
|
|
33158
|
+
text = span ? span.innerText || '' : '';
|
|
33159
|
+
setTopDateLabel(text);
|
|
33160
|
+
break;
|
|
32900
33161
|
}
|
|
32901
33162
|
}
|
|
32902
|
-
if (text) {
|
|
32903
|
-
messageTopDate.innerText = text;
|
|
32904
|
-
messageTopDate.style.display = 'inline';
|
|
32905
|
-
} else {
|
|
32906
|
-
messageTopDate.style.display = 'none';
|
|
32907
|
-
}
|
|
32908
33163
|
};
|
|
32909
|
-
var handleMessagesListScroll = useCallback(function (
|
|
33164
|
+
var handleMessagesListScroll = useCallback(function () {
|
|
32910
33165
|
try {
|
|
33166
|
+
var target = scrollRef.current;
|
|
33167
|
+
if (!target) return Promise.resolve();
|
|
32911
33168
|
if (scrollToMentionedMessage) {
|
|
32912
|
-
|
|
32913
|
-
if (_target.scrollTop <= -50 || channel.lastMessage.id !== messages[messages.length - 1].id) {
|
|
33169
|
+
if (target.scrollTop <= -50 || channel.lastMessage.id !== messages[messages.length - 1].id) {
|
|
32914
33170
|
dispatch(showScrollToNewMessageButtonAC(true));
|
|
32915
33171
|
} else {
|
|
32916
33172
|
dispatch(showScrollToNewMessageButtonAC(false));
|
|
@@ -32923,7 +33179,6 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32923
33179
|
setShowTopDate(false);
|
|
32924
33180
|
}, 1000);
|
|
32925
33181
|
renderTopDate();
|
|
32926
|
-
var target = event.target;
|
|
32927
33182
|
var forceLoadPrevMessages = false;
|
|
32928
33183
|
if (-target.scrollTop + target.offsetHeight + 30 > target.scrollHeight) {
|
|
32929
33184
|
forceLoadPrevMessages = true;
|
|
@@ -32938,51 +33193,68 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32938
33193
|
}
|
|
32939
33194
|
if (scrollToReply) {
|
|
32940
33195
|
target.scrollTop = scrollToReply;
|
|
32941
|
-
|
|
32942
|
-
|
|
32943
|
-
|
|
32944
|
-
|
|
32945
|
-
|
|
32946
|
-
|
|
32947
|
-
|
|
32948
|
-
|
|
32949
|
-
|
|
32950
|
-
|
|
32951
|
-
|
|
32952
|
-
|
|
32953
|
-
|
|
32954
|
-
|
|
32955
|
-
|
|
33196
|
+
return Promise.resolve();
|
|
33197
|
+
}
|
|
33198
|
+
var currentIndex = messagesIndexMapRef.current[lastVisibleMessageId];
|
|
33199
|
+
var hasIndex = typeof currentIndex === 'number';
|
|
33200
|
+
if (hasIndex && currentIndex < 15 || forceLoadPrevMessages) {
|
|
33201
|
+
if (connectionStatus === CONNECTION_STATUS.CONNECTED && !scrollToNewMessage.scrollToBottom && hasPrevMessages) {
|
|
33202
|
+
if (loadingRef.current || messagesLoading === LOADING_STATE.LOADING || prevDisableRef.current) {
|
|
33203
|
+
shouldLoadMessagesRef.current = 'prev';
|
|
33204
|
+
} else {
|
|
33205
|
+
if (shouldLoadMessagesRef.current === 'prev') {
|
|
33206
|
+
shouldLoadMessagesRef.current = '';
|
|
33207
|
+
}
|
|
33208
|
+
loadDirectionRef.current = 'prev';
|
|
33209
|
+
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33210
|
+
if (!getHasPrevCached()) {
|
|
33211
|
+
loadFromServerRef.current = true;
|
|
32956
33212
|
}
|
|
33213
|
+
nextDisableRef.current = true;
|
|
32957
33214
|
}
|
|
32958
33215
|
}
|
|
32959
|
-
|
|
32960
|
-
|
|
32961
|
-
|
|
32962
|
-
|
|
32963
|
-
|
|
32964
|
-
|
|
32965
|
-
|
|
32966
|
-
|
|
32967
|
-
loadDirection = 'next';
|
|
32968
|
-
prevDisable = true;
|
|
32969
|
-
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33216
|
+
}
|
|
33217
|
+
if (hasIndex && currentIndex >= messages.length - 15 || target.scrollTop === 0) {
|
|
33218
|
+
if (connectionStatus === CONNECTION_STATUS.CONNECTED && !scrollToNewMessage.scrollToBottom && (hasNextMessages || getHasNextCached())) {
|
|
33219
|
+
if (loadingRef.current || messagesLoading === LOADING_STATE.LOADING || nextDisableRef.current) {
|
|
33220
|
+
shouldLoadMessagesRef.current = 'next';
|
|
33221
|
+
} else {
|
|
33222
|
+
if (shouldLoadMessagesRef.current === 'next') {
|
|
33223
|
+
shouldLoadMessagesRef.current = '';
|
|
32970
33224
|
}
|
|
33225
|
+
loadDirectionRef.current = 'next';
|
|
33226
|
+
prevDisableRef.current = true;
|
|
33227
|
+
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
32971
33228
|
}
|
|
32972
33229
|
}
|
|
32973
|
-
|
|
32974
|
-
|
|
32975
|
-
|
|
33230
|
+
}
|
|
33231
|
+
if (hasIndex && currentIndex > messages.length - 10) {
|
|
33232
|
+
nextDisableRef.current = false;
|
|
32976
33233
|
}
|
|
32977
33234
|
return Promise.resolve();
|
|
32978
33235
|
} catch (e) {
|
|
32979
33236
|
return Promise.reject(e);
|
|
32980
33237
|
}
|
|
32981
|
-
}, [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,
|
|
33238
|
+
}, [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]);
|
|
33239
|
+
var onScroll = useCallback(function () {
|
|
33240
|
+
if (scrollRafRef.current !== null) return;
|
|
33241
|
+
scrollRafRef.current = window.requestAnimationFrame(function () {
|
|
33242
|
+
scrollRafRef.current = null;
|
|
33243
|
+
handleMessagesListScroll();
|
|
33244
|
+
});
|
|
33245
|
+
}, [handleMessagesListScroll]);
|
|
33246
|
+
useEffect(function () {
|
|
33247
|
+
return function () {
|
|
33248
|
+
if (scrollRafRef.current !== null) {
|
|
33249
|
+
cancelAnimationFrame(scrollRafRef.current);
|
|
33250
|
+
scrollRafRef.current = null;
|
|
33251
|
+
}
|
|
33252
|
+
};
|
|
33253
|
+
}, []);
|
|
32982
33254
|
var handleScrollToRepliedMessage = function handleScrollToRepliedMessage(messageId) {
|
|
32983
33255
|
try {
|
|
32984
|
-
|
|
32985
|
-
|
|
33256
|
+
prevDisableRef.current = true;
|
|
33257
|
+
nextDisableRef.current = true;
|
|
32986
33258
|
if (messages.findIndex(function (msg) {
|
|
32987
33259
|
return msg.id === messageId;
|
|
32988
33260
|
}) >= 10) {
|
|
@@ -32996,8 +33268,8 @@ var MessageList = function MessageList(_ref2) {
|
|
|
32996
33268
|
var positiveValue = repliedMessage.offsetTop - scrollRef.current.offsetHeight / 2 < 0 ? repliedMessage.offsetTop - scrollRef.current.offsetHeight * -1 : repliedMessage.offsetTop - scrollRef.current.offsetHeight / 2;
|
|
32997
33269
|
setTimeout(function () {
|
|
32998
33270
|
repliedMessage.classList.remove('highlight');
|
|
32999
|
-
|
|
33000
|
-
|
|
33271
|
+
prevDisableRef.current = false;
|
|
33272
|
+
nextDisableRef.current = false;
|
|
33001
33273
|
}, 1000 + positiveValue * 0.1);
|
|
33002
33274
|
}
|
|
33003
33275
|
} else {
|
|
@@ -33018,10 +33290,10 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33018
33290
|
var hasNextCached = getHasNextCached();
|
|
33019
33291
|
if (messagesLoading === LOADING_STATE.LOADED && connectionStatus === CONNECTION_STATUS.CONNECTED) {
|
|
33020
33292
|
if (direction === MESSAGE_LOAD_DIRECTION.PREV && firstMessageId && (hasPrevMessages || hasPrevCached)) {
|
|
33021
|
-
|
|
33293
|
+
loadingRef.current = true;
|
|
33022
33294
|
dispatch(loadMoreMessagesAC(channel.id, limit, direction, firstMessageId, hasPrevMessages));
|
|
33023
33295
|
} else if (direction === MESSAGE_LOAD_DIRECTION.NEXT && lastMessageId && (hasNextMessages || hasNextCached)) {
|
|
33024
|
-
|
|
33296
|
+
loadingRef.current = true;
|
|
33025
33297
|
dispatch(loadMoreMessagesAC(channel.id, limit, direction, lastMessageId, hasNextMessages));
|
|
33026
33298
|
}
|
|
33027
33299
|
}
|
|
@@ -33052,39 +33324,42 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33052
33324
|
setIsDragging(false);
|
|
33053
33325
|
}
|
|
33054
33326
|
};
|
|
33327
|
+
var readDroppedFiles = function readDroppedFiles(e) {
|
|
33328
|
+
return new Promise(function (resolve) {
|
|
33329
|
+
var fileList = Object.values(e.dataTransfer.files);
|
|
33330
|
+
var attachmentsFiles = [];
|
|
33331
|
+
var readFiles = 0;
|
|
33332
|
+
var errorCount = 0;
|
|
33333
|
+
fileList.forEach(function (attachment) {
|
|
33334
|
+
var fileReader = new FileReader();
|
|
33335
|
+
fileReader.onload = function (event) {
|
|
33336
|
+
var file = event.target.result;
|
|
33337
|
+
attachmentsFiles.push({
|
|
33338
|
+
name: attachment.name,
|
|
33339
|
+
data: file,
|
|
33340
|
+
type: attachment.type
|
|
33341
|
+
});
|
|
33342
|
+
readFiles++;
|
|
33343
|
+
if (readFiles + errorCount === fileList.length) {
|
|
33344
|
+
resolve(attachmentsFiles);
|
|
33345
|
+
}
|
|
33346
|
+
};
|
|
33347
|
+
fileReader.onerror = function () {
|
|
33348
|
+
errorCount++;
|
|
33349
|
+
if (readFiles + errorCount === fileList.length) {
|
|
33350
|
+
resolve(attachmentsFiles);
|
|
33351
|
+
}
|
|
33352
|
+
};
|
|
33353
|
+
fileReader.readAsDataURL(attachment);
|
|
33354
|
+
});
|
|
33355
|
+
});
|
|
33356
|
+
};
|
|
33055
33357
|
var handleDropFile = function handleDropFile(e) {
|
|
33056
33358
|
e.preventDefault();
|
|
33057
33359
|
e.stopPropagation();
|
|
33058
33360
|
setIsDragging(false);
|
|
33059
33361
|
if (e.dataTransfer.files && e.dataTransfer.files.length > 0) {
|
|
33060
|
-
|
|
33061
|
-
new Promise(function (resolve) {
|
|
33062
|
-
var attachmentsFiles = [];
|
|
33063
|
-
var readFiles = 0;
|
|
33064
|
-
var errorCount = 0;
|
|
33065
|
-
fileList.forEach(function (attachment) {
|
|
33066
|
-
var fileReader = new FileReader();
|
|
33067
|
-
fileReader.onload = function (event) {
|
|
33068
|
-
var file = event.target.result;
|
|
33069
|
-
attachmentsFiles.push({
|
|
33070
|
-
name: attachment.name,
|
|
33071
|
-
data: file,
|
|
33072
|
-
type: attachment.type
|
|
33073
|
-
});
|
|
33074
|
-
readFiles++;
|
|
33075
|
-
if (readFiles + errorCount === fileList.length) {
|
|
33076
|
-
resolve(attachmentsFiles);
|
|
33077
|
-
}
|
|
33078
|
-
};
|
|
33079
|
-
fileReader.onerror = function () {
|
|
33080
|
-
errorCount++;
|
|
33081
|
-
if (readFiles + errorCount === fileList.length) {
|
|
33082
|
-
resolve(attachmentsFiles);
|
|
33083
|
-
}
|
|
33084
|
-
};
|
|
33085
|
-
fileReader.readAsDataURL(attachment);
|
|
33086
|
-
});
|
|
33087
|
-
}).then(function (result) {
|
|
33362
|
+
readDroppedFiles(e).then(function (result) {
|
|
33088
33363
|
dispatch(setDraggedAttachmentsAC(result, 'file'));
|
|
33089
33364
|
})["catch"](function (error) {
|
|
33090
33365
|
console.error('Error in handleDropFile:', error);
|
|
@@ -33097,34 +33372,7 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33097
33372
|
e.stopPropagation();
|
|
33098
33373
|
setIsDragging(false);
|
|
33099
33374
|
if (e.dataTransfer.files && e.dataTransfer.files.length > 0) {
|
|
33100
|
-
|
|
33101
|
-
new Promise(function (resolve) {
|
|
33102
|
-
var attachmentsFiles = [];
|
|
33103
|
-
var readFiles = 0;
|
|
33104
|
-
var errorCount = 0;
|
|
33105
|
-
fileList.forEach(function (attachment) {
|
|
33106
|
-
var fileReader = new FileReader();
|
|
33107
|
-
fileReader.onload = function (event) {
|
|
33108
|
-
var file = event.target.result;
|
|
33109
|
-
attachmentsFiles.push({
|
|
33110
|
-
name: attachment.name,
|
|
33111
|
-
data: file,
|
|
33112
|
-
type: attachment.type
|
|
33113
|
-
});
|
|
33114
|
-
readFiles++;
|
|
33115
|
-
if (readFiles + errorCount === fileList.length) {
|
|
33116
|
-
resolve(attachmentsFiles);
|
|
33117
|
-
}
|
|
33118
|
-
};
|
|
33119
|
-
fileReader.onerror = function () {
|
|
33120
|
-
errorCount++;
|
|
33121
|
-
if (readFiles + errorCount === fileList.length) {
|
|
33122
|
-
resolve(attachmentsFiles);
|
|
33123
|
-
}
|
|
33124
|
-
};
|
|
33125
|
-
fileReader.readAsDataURL(attachment);
|
|
33126
|
-
});
|
|
33127
|
-
}).then(function (result) {
|
|
33375
|
+
readDroppedFiles(e).then(function (result) {
|
|
33128
33376
|
dispatch(setDraggedAttachmentsAC(result, 'media'));
|
|
33129
33377
|
})["catch"](function (error) {
|
|
33130
33378
|
console.error('Error in handleDropMedia:', error);
|
|
@@ -33136,21 +33384,21 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33136
33384
|
var _messages, _channel$lastMessage2;
|
|
33137
33385
|
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) {
|
|
33138
33386
|
dispatch(showScrollToNewMessageButtonAC(false));
|
|
33139
|
-
|
|
33387
|
+
prevDisableRef.current = false;
|
|
33140
33388
|
}
|
|
33141
33389
|
}, [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]);
|
|
33142
33390
|
useEffect(function () {
|
|
33143
33391
|
if (scrollToRepliedMessage) {
|
|
33144
|
-
|
|
33392
|
+
loadingRef.current = false;
|
|
33145
33393
|
scrollRef.current.style.scrollBehavior = 'inherit';
|
|
33146
33394
|
var repliedMessage = document.getElementById(scrollToRepliedMessage);
|
|
33147
33395
|
if (repliedMessage) {
|
|
33148
33396
|
setScrollToReply(repliedMessage && repliedMessage.offsetTop - (channel.backToLinkedChannel ? 0 : 200));
|
|
33149
33397
|
scrollRef.current.scrollTo({
|
|
33150
33398
|
top: repliedMessage && repliedMessage.offsetTop - (channel.backToLinkedChannel ? 0 : 200),
|
|
33151
|
-
behavior:
|
|
33399
|
+
behavior: scrollToMessageBehavior
|
|
33152
33400
|
});
|
|
33153
|
-
scrollRef.current.style.scrollBehavior =
|
|
33401
|
+
scrollRef.current.style.scrollBehavior = scrollToMessageBehavior;
|
|
33154
33402
|
if (!channel.backToLinkedChannel && scrollToMessageHighlight) {
|
|
33155
33403
|
repliedMessage && repliedMessage.classList.add('highlight');
|
|
33156
33404
|
}
|
|
@@ -33160,9 +33408,9 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33160
33408
|
var _repliedMessage = document.getElementById(scrollToRepliedMessage);
|
|
33161
33409
|
_repliedMessage && _repliedMessage.classList.remove('highlight');
|
|
33162
33410
|
}
|
|
33163
|
-
|
|
33411
|
+
prevDisableRef.current = false;
|
|
33164
33412
|
setScrollToReply(null);
|
|
33165
|
-
scrollRef.current.style.scrollBehavior = '
|
|
33413
|
+
scrollRef.current.style.scrollBehavior = 'instant';
|
|
33166
33414
|
}, 1000 + positiveValue * 0.1);
|
|
33167
33415
|
}
|
|
33168
33416
|
dispatch(setScrollToMessagesAC(null));
|
|
@@ -33178,15 +33426,15 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33178
33426
|
});
|
|
33179
33427
|
}
|
|
33180
33428
|
} else {
|
|
33181
|
-
|
|
33182
|
-
|
|
33429
|
+
nextDisableRef.current = true;
|
|
33430
|
+
prevDisableRef.current = true;
|
|
33183
33431
|
scrollRef.current.scrollTo({
|
|
33184
33432
|
top: 0,
|
|
33185
33433
|
behavior: 'smooth'
|
|
33186
33434
|
});
|
|
33187
33435
|
dispatch(showScrollToNewMessageButtonAC(false));
|
|
33188
33436
|
setTimeout(function () {
|
|
33189
|
-
|
|
33437
|
+
prevDisableRef.current = false;
|
|
33190
33438
|
}, 800);
|
|
33191
33439
|
}
|
|
33192
33440
|
}
|
|
@@ -33204,11 +33452,18 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33204
33452
|
useEffect(function () {
|
|
33205
33453
|
setHasNextCached(false);
|
|
33206
33454
|
setHasPrevCached(false);
|
|
33455
|
+
messagesIndexMapRef.current = {};
|
|
33456
|
+
loadFromServerRef.current = false;
|
|
33457
|
+
loadDirectionRef.current = '';
|
|
33458
|
+
nextDisableRef.current = false;
|
|
33459
|
+
prevDisableRef.current = false;
|
|
33460
|
+
shouldLoadMessagesRef.current = '';
|
|
33461
|
+
loadingRef.current = false;
|
|
33207
33462
|
if (channel.backToLinkedChannel) {
|
|
33208
33463
|
var visibleMessages = getVisibleMessagesMap();
|
|
33209
33464
|
var visibleMessagesIds = Object.keys(visibleMessages);
|
|
33210
33465
|
var messageId = visibleMessagesIds[visibleMessagesIds.length - 1];
|
|
33211
|
-
dispatch(getMessagesAC(channel, undefined, messageId));
|
|
33466
|
+
dispatch(getMessagesAC(channel, undefined, messageId, undefined, undefined, undefined, 'instant'));
|
|
33212
33467
|
setUnreadMessageId(messageId);
|
|
33213
33468
|
} else {
|
|
33214
33469
|
if (!channel.isLinkedChannel) {
|
|
@@ -33231,9 +33486,9 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33231
33486
|
}
|
|
33232
33487
|
setPreviousScrollTop(0);
|
|
33233
33488
|
setShouldPreserveScroll(false);
|
|
33234
|
-
|
|
33235
|
-
|
|
33236
|
-
|
|
33489
|
+
nextDisableRef.current = false;
|
|
33490
|
+
prevDisableRef.current = false;
|
|
33491
|
+
scrollToBottomRef.current = true;
|
|
33237
33492
|
setAllowEditDeleteIncomingMessage(allowEditDeleteIncomingMessage);
|
|
33238
33493
|
}, [channel.id]);
|
|
33239
33494
|
useEffect(function () {
|
|
@@ -33248,7 +33503,7 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33248
33503
|
setUnreadMessageId('');
|
|
33249
33504
|
}
|
|
33250
33505
|
}
|
|
33251
|
-
}, [messages]);
|
|
33506
|
+
}, [messages, hiddenMessagesProperties, user === null || user === void 0 ? void 0 : user.id]);
|
|
33252
33507
|
useEffect(function () {
|
|
33253
33508
|
if (scrollRef.current) {
|
|
33254
33509
|
var isAtBottom = scrollRef.current.scrollTop > -50;
|
|
@@ -33257,35 +33512,40 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33257
33512
|
setShouldPreserveScroll(true);
|
|
33258
33513
|
}
|
|
33259
33514
|
}
|
|
33260
|
-
if (
|
|
33261
|
-
if (
|
|
33515
|
+
if (loadingRef.current) {
|
|
33516
|
+
if (loadDirectionRef.current !== 'next') {
|
|
33262
33517
|
var lastVisibleMessage = document.getElementById(lastVisibleMessageId);
|
|
33263
33518
|
if (lastVisibleMessage) {
|
|
33264
33519
|
scrollRef.current.style.scrollBehavior = 'inherit';
|
|
33265
33520
|
scrollRef.current.scrollTop = lastVisibleMessage.offsetTop;
|
|
33266
33521
|
scrollRef.current.style.scrollBehavior = 'smooth';
|
|
33267
33522
|
}
|
|
33268
|
-
if (
|
|
33269
|
-
setTimeout(function () {
|
|
33270
|
-
|
|
33271
|
-
|
|
33272
|
-
|
|
33273
|
-
|
|
33523
|
+
if (loadFromServerRef.current) {
|
|
33524
|
+
var timeout = setTimeout(function () {
|
|
33525
|
+
loadingRef.current = false;
|
|
33526
|
+
loadFromServerRef.current = false;
|
|
33527
|
+
nextDisableRef.current = false;
|
|
33528
|
+
var currentIndex = messagesIndexMapRef.current[lastVisibleMessageId];
|
|
33529
|
+
if (shouldLoadMessagesRef.current === 'prev' && typeof currentIndex === 'number' && currentIndex < 15) {
|
|
33274
33530
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33275
33531
|
}
|
|
33276
|
-
if (
|
|
33532
|
+
if (shouldLoadMessagesRef.current === 'next' && typeof currentIndex === 'number' && currentIndex > messages.length - 15) {
|
|
33277
33533
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33278
33534
|
}
|
|
33279
33535
|
}, 50);
|
|
33536
|
+
if (loadingMessagesTimeoutRef.current) {
|
|
33537
|
+
clearTimeout(loadingMessagesTimeoutRef.current);
|
|
33538
|
+
}
|
|
33539
|
+
loadingMessagesTimeoutRef.current = timeout;
|
|
33280
33540
|
} else {
|
|
33281
|
-
|
|
33282
|
-
if (
|
|
33541
|
+
loadingRef.current = false;
|
|
33542
|
+
if (shouldLoadMessagesRef.current === 'prev') {
|
|
33283
33543
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33284
|
-
|
|
33544
|
+
shouldLoadMessagesRef.current = '';
|
|
33285
33545
|
}
|
|
33286
|
-
if (
|
|
33546
|
+
if (shouldLoadMessagesRef.current === 'next') {
|
|
33287
33547
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33288
|
-
|
|
33548
|
+
shouldLoadMessagesRef.current = '';
|
|
33289
33549
|
}
|
|
33290
33550
|
}
|
|
33291
33551
|
} else {
|
|
@@ -33295,22 +33555,26 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33295
33555
|
scrollRef.current.scrollTop = _lastVisibleMessage.offsetTop - scrollRef.current.offsetHeight + _lastVisibleMessage.offsetHeight;
|
|
33296
33556
|
scrollRef.current.style.scrollBehavior = 'smooth';
|
|
33297
33557
|
}
|
|
33298
|
-
|
|
33299
|
-
|
|
33300
|
-
if (
|
|
33558
|
+
loadingRef.current = false;
|
|
33559
|
+
prevDisableRef.current = false;
|
|
33560
|
+
if (shouldLoadMessagesRef.current === 'prev') {
|
|
33301
33561
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33302
|
-
|
|
33562
|
+
shouldLoadMessagesRef.current = '';
|
|
33303
33563
|
}
|
|
33304
|
-
if (
|
|
33564
|
+
if (shouldLoadMessagesRef.current === 'next') {
|
|
33305
33565
|
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33306
|
-
|
|
33566
|
+
shouldLoadMessagesRef.current = '';
|
|
33307
33567
|
}
|
|
33308
33568
|
}
|
|
33309
33569
|
}
|
|
33310
33570
|
renderTopDate();
|
|
33311
|
-
if (
|
|
33312
|
-
|
|
33313
|
-
|
|
33571
|
+
if (scrollToBottomRef.current) {
|
|
33572
|
+
if (channel.backToLinkedChannel) {
|
|
33573
|
+
dispatch(scrollToNewMessageAC(false));
|
|
33574
|
+
} else {
|
|
33575
|
+
dispatch(scrollToNewMessageAC(true));
|
|
33576
|
+
}
|
|
33577
|
+
scrollToBottomRef.current = false;
|
|
33314
33578
|
}
|
|
33315
33579
|
if (shouldPreserveScroll && scrollRef.current && previousScrollTop > 0) {
|
|
33316
33580
|
requestAnimationFrame(function () {
|
|
@@ -33323,13 +33587,43 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33323
33587
|
setPreviousScrollTop(0);
|
|
33324
33588
|
});
|
|
33325
33589
|
}
|
|
33590
|
+
return function () {
|
|
33591
|
+
if (loadingMessagesTimeoutRef.current) {
|
|
33592
|
+
clearTimeout(loadingMessagesTimeoutRef.current);
|
|
33593
|
+
}
|
|
33594
|
+
};
|
|
33326
33595
|
}, [messages]);
|
|
33596
|
+
useEffect(function () {
|
|
33597
|
+
if (messagesLoading === LOADING_STATE.LOADED) {
|
|
33598
|
+
var timeout = setTimeout(function () {
|
|
33599
|
+
loadingRef.current = false;
|
|
33600
|
+
loadFromServerRef.current = false;
|
|
33601
|
+
nextDisableRef.current = false;
|
|
33602
|
+
var currentIndex = messagesIndexMapRef.current[lastVisibleMessageId];
|
|
33603
|
+
if (shouldLoadMessagesRef.current === 'prev' && typeof currentIndex === 'number' && currentIndex < 15) {
|
|
33604
|
+
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.PREV, LOAD_MAX_MESSAGE_COUNT);
|
|
33605
|
+
}
|
|
33606
|
+
if (shouldLoadMessagesRef.current === 'next' && typeof currentIndex === 'number' && currentIndex > messages.length - 15) {
|
|
33607
|
+
handleLoadMoreMessages(MESSAGE_LOAD_DIRECTION.NEXT, LOAD_MAX_MESSAGE_COUNT);
|
|
33608
|
+
}
|
|
33609
|
+
}, 50);
|
|
33610
|
+
if (loadingMessagesTimeoutRef.current) {
|
|
33611
|
+
clearTimeout(loadingMessagesTimeoutRef.current);
|
|
33612
|
+
}
|
|
33613
|
+
loadingMessagesTimeoutRef.current = timeout;
|
|
33614
|
+
}
|
|
33615
|
+
return function () {
|
|
33616
|
+
if (loadingMessagesTimeoutRef.current) {
|
|
33617
|
+
clearTimeout(loadingMessagesTimeoutRef.current);
|
|
33618
|
+
}
|
|
33619
|
+
};
|
|
33620
|
+
}, [messagesLoading, messages, lastVisibleMessageId]);
|
|
33327
33621
|
useEffect(function () {
|
|
33328
33622
|
log.info('connection status is changed.. .... ', connectionStatus, 'channel ... ', channel);
|
|
33329
33623
|
if (connectionStatus === CONNECTION_STATUS.CONNECTED) {
|
|
33330
|
-
|
|
33331
|
-
|
|
33332
|
-
|
|
33624
|
+
loadingRef.current = false;
|
|
33625
|
+
prevDisableRef.current = false;
|
|
33626
|
+
nextDisableRef.current = false;
|
|
33333
33627
|
clearMessagesMap();
|
|
33334
33628
|
removeAllMessages();
|
|
33335
33629
|
if (channel.id) {
|
|
@@ -33338,7 +33632,8 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33338
33632
|
}
|
|
33339
33633
|
}, [connectionStatus]);
|
|
33340
33634
|
useEffect(function () {
|
|
33341
|
-
|
|
33635
|
+
var unreadScrollTo = getUnreadScrollTo();
|
|
33636
|
+
if (channel.newMessageCount && channel.newMessageCount > 0 && unreadScrollTo) {
|
|
33342
33637
|
if (scrollRef.current) {
|
|
33343
33638
|
scrollRef.current.style.scrollBehavior = 'inherit';
|
|
33344
33639
|
}
|
|
@@ -33351,7 +33646,14 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33351
33646
|
setUnreadScrollTo(false);
|
|
33352
33647
|
}
|
|
33353
33648
|
}
|
|
33354
|
-
});
|
|
33649
|
+
}, [channel.id, channel.newMessageCount, channel.lastDisplayedMessageId]);
|
|
33650
|
+
useEffect(function () {
|
|
33651
|
+
return function () {
|
|
33652
|
+
if (hideTopDateTimeout.current) {
|
|
33653
|
+
clearTimeout(hideTopDateTimeout.current);
|
|
33654
|
+
}
|
|
33655
|
+
};
|
|
33656
|
+
}, []);
|
|
33355
33657
|
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, isDragging && !(attachmentsPreview !== null && attachmentsPreview !== void 0 && attachmentsPreview.show && mediaFile) && (/*#__PURE__*/React__default.createElement(DragAndDropContainer, {
|
|
33356
33658
|
id: 'draggingContainer',
|
|
33357
33659
|
draggable: true,
|
|
@@ -33386,7 +33688,7 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33386
33688
|
backgroundColor: surface1,
|
|
33387
33689
|
draggable: true,
|
|
33388
33690
|
iconColor: accentColor
|
|
33389
|
-
}, /*#__PURE__*/React__default.createElement(SvgChoseMedia, null)), "Drag & drop to send as media")))), /*#__PURE__*/React__default.createElement(React__default.Fragment, null, showTopFixedDate && (/*#__PURE__*/React__default.createElement(MessageTopDate, {
|
|
33691
|
+
}, /*#__PURE__*/React__default.createElement(SvgChoseMedia, null)), "Drag & drop to send as media")))), /*#__PURE__*/React__default.createElement(React__default.Fragment, null, showTopFixedDate && topDateLabel && (/*#__PURE__*/React__default.createElement(MessageTopDate, {
|
|
33390
33692
|
visible: showTopDate,
|
|
33391
33693
|
dateDividerFontSize: dateDividerFontSize,
|
|
33392
33694
|
dateDividerTextColor: dateDividerTextColor || textOnPrimary,
|
|
@@ -33394,14 +33696,12 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33394
33696
|
dateDividerBackgroundColor: dateDividerBackgroundColor || overlayBackground,
|
|
33395
33697
|
dateDividerBorderRadius: dateDividerBorderRadius,
|
|
33396
33698
|
topOffset: scrollRef && scrollRef.current && scrollRef.current.offsetTop
|
|
33397
|
-
}, /*#__PURE__*/React__default.createElement("span", {
|
|
33398
|
-
ref: messageTopDateRef
|
|
33399
|
-
}))), /*#__PURE__*/React__default.createElement(Container$h, {
|
|
33699
|
+
}, /*#__PURE__*/React__default.createElement("span", null, topDateLabel))), /*#__PURE__*/React__default.createElement(Container$h, {
|
|
33400
33700
|
id: 'scrollableDiv',
|
|
33401
33701
|
className: isScrolling ? 'show-scrollbar' : '',
|
|
33402
33702
|
ref: scrollRef,
|
|
33403
33703
|
stopScrolling: stopScrolling,
|
|
33404
|
-
onScroll:
|
|
33704
|
+
onScroll: onScroll,
|
|
33405
33705
|
onMouseEnter: function onMouseEnter() {
|
|
33406
33706
|
return setIsScrolling(true);
|
|
33407
33707
|
},
|
|
@@ -33420,8 +33720,10 @@ var MessageList = function MessageList(_ref2) {
|
|
|
33420
33720
|
var prevMessage = messages[index - 1];
|
|
33421
33721
|
var nextMessage = messages[index + 1];
|
|
33422
33722
|
var isUnreadMessage = !!(unreadMessageId && unreadMessageId === message.id && nextMessage) && !channel.backToLinkedChannel;
|
|
33423
|
-
|
|
33424
|
-
return /*#__PURE__*/React__default.createElement(React__default.Fragment,
|
|
33723
|
+
messagesIndexMapRef.current[message.id] = index;
|
|
33724
|
+
return /*#__PURE__*/React__default.createElement(React__default.Fragment, {
|
|
33725
|
+
key: message.id || message.tid
|
|
33726
|
+
}, /*#__PURE__*/React__default.createElement(CreateMessageDateDivider, {
|
|
33425
33727
|
noMargin: !isUnreadMessage && prevMessage && prevMessage.type === 'system' && message.type !== 'system',
|
|
33426
33728
|
theme: theme,
|
|
33427
33729
|
lastIndex: false,
|
|
@@ -37360,7 +37662,7 @@ var SendMessageInput = function SendMessageInput(_ref3) {
|
|
|
37360
37662
|
if (attachments.length) {
|
|
37361
37663
|
var videoAttachment = false;
|
|
37362
37664
|
attachments.forEach(function (att) {
|
|
37363
|
-
if (att.type === 'video' || att.data.type.split('/')[0] === 'video') {
|
|
37665
|
+
if ((att.type === 'video' || att.data.type.split('/')[0] === 'video') && att.type !== 'file') {
|
|
37364
37666
|
videoAttachment = true;
|
|
37365
37667
|
if (!readyVideoAttachments[att.tid]) {
|
|
37366
37668
|
setSendMessageIsActive(false);
|
|
@@ -40497,7 +40799,7 @@ var Details = function Details(_ref) {
|
|
|
40497
40799
|
color: textSecondary,
|
|
40498
40800
|
fontSize: channelMembersFontSize,
|
|
40499
40801
|
lineHeight: channelMembersLineHeight
|
|
40500
|
-
}, 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, {
|
|
40802
|
+
}, 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, {
|
|
40501
40803
|
color: textSecondary,
|
|
40502
40804
|
fontSize: channelMembersFontSize,
|
|
40503
40805
|
lineHeight: channelMembersLineHeight
|
|
@@ -40951,10 +41253,10 @@ var MessagesScrollToBottomButton = function MessagesScrollToBottomButton(_ref) {
|
|
|
40951
41253
|
};
|
|
40952
41254
|
var handleScrollToLastMessage = function handleScrollToLastMessage(messageId) {
|
|
40953
41255
|
try {
|
|
40954
|
-
dispatch(scrollToNewMessageAC(true, false, false));
|
|
40955
41256
|
if (messages.findIndex(function (msg) {
|
|
40956
41257
|
return msg.id === messageId;
|
|
40957
41258
|
}) >= 10) {
|
|
41259
|
+
dispatch(scrollToNewMessageAC(true, false, false));
|
|
40958
41260
|
dispatch(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
|
|
40959
41261
|
var repliedMessage = document.getElementById(messageId);
|
|
40960
41262
|
if (repliedMessage) {
|