sceyt-chat-react-uikit 1.7.9-beta.7 → 1.7.9-beta.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.js +465 -451
  2. package/index.modern.js +465 -451
  3. package/package.json +1 -1
package/index.modern.js CHANGED
@@ -10846,6 +10846,11 @@ function updatePendingMessageAC(channelId, messageId, updatedMessage) {
10846
10846
  updatedMessage: updatedMessage
10847
10847
  });
10848
10848
  }
10849
+ function setUnreadMessageIdAC(messageId) {
10850
+ return setUnreadMessageId({
10851
+ messageId: messageId
10852
+ });
10853
+ }
10849
10854
 
10850
10855
  var MESSAGES_MAX_PAGE_COUNT = 80;
10851
10856
  var MESSAGES_MAX_LENGTH = 50;
@@ -11366,6 +11371,31 @@ var setPendingPollAction = function setPendingPollAction(action) {
11366
11371
  }
11367
11372
  store.dispatch(setPendingPollActionsMapAC(messageId, action));
11368
11373
  };
11374
+ var getCenterTwoMessages = function getCenterTwoMessages(messages) {
11375
+ var mid = Math.floor(messages.length / 2);
11376
+ if (messages.length % 2 === 0) {
11377
+ return {
11378
+ mid1: {
11379
+ messageId: messages[mid - 1].id,
11380
+ index: mid - 1
11381
+ },
11382
+ mid2: {
11383
+ messageId: messages[mid].id,
11384
+ index: mid
11385
+ }
11386
+ };
11387
+ }
11388
+ return {
11389
+ mid1: {
11390
+ messageId: messages[mid - 1].id,
11391
+ index: mid - 1
11392
+ },
11393
+ mid2: {
11394
+ messageId: messages[mid + 1].id,
11395
+ index: mid + 1
11396
+ }
11397
+ };
11398
+ };
11369
11399
 
11370
11400
  var initialState$1 = {
11371
11401
  messagesLoadingState: null,
@@ -11412,7 +11442,8 @@ var initialState$1 = {
11412
11442
  pollVotesInitialCount: null,
11413
11443
  pendingPollActions: {},
11414
11444
  pendingMessagesMap: {},
11415
- unreadScrollTo: true
11445
+ unreadScrollTo: true,
11446
+ unreadMessageId: ''
11416
11447
  };
11417
11448
  var messageSlice = createSlice({
11418
11449
  name: 'messages',
@@ -11988,6 +12019,9 @@ var messageSlice = createSlice({
11988
12019
  },
11989
12020
  clearPendingMessagesMap: function clearPendingMessagesMap(state) {
11990
12021
  state.pendingMessagesMap = {};
12022
+ },
12023
+ setUnreadMessageId: function setUnreadMessageId(state, action) {
12024
+ state.unreadMessageId = action.payload.messageId;
11991
12025
  }
11992
12026
  },
11993
12027
  extraReducers: function extraReducers(builder) {
@@ -12052,7 +12086,8 @@ var _messageSlice$actions = messageSlice.actions,
12052
12086
  setPendingMessage$1 = _messageSlice$actions.setPendingMessage,
12053
12087
  removePendingMessage = _messageSlice$actions.removePendingMessage,
12054
12088
  updatePendingMessage = _messageSlice$actions.updatePendingMessage,
12055
- updatePendingPollAction = _messageSlice$actions.updatePendingPollAction;
12089
+ updatePendingPollAction = _messageSlice$actions.updatePendingPollAction,
12090
+ setUnreadMessageId = _messageSlice$actions.setUnreadMessageId;
12056
12091
  var MessageReducer = messageSlice.reducer;
12057
12092
 
12058
12093
  var initialState$2 = {
@@ -17490,7 +17525,7 @@ function markMessagesRead(action) {
17490
17525
  }, _marked9, null, [[2, 9]]);
17491
17526
  }
17492
17527
  function markVoiceMessageAsPlayed(action) {
17493
- var payload, channelId, messageIds, channel, _t10;
17528
+ var payload, channelId, messageIds, channel, messageListMarker, _iterator6, _step6, messageId, updateParams, _t10;
17494
17529
  return _regenerator().w(function (_context0) {
17495
17530
  while (1) switch (_context0.p = _context0.n) {
17496
17531
  case 0:
@@ -17508,25 +17543,54 @@ function markVoiceMessageAsPlayed(action) {
17508
17543
  }
17509
17544
  }
17510
17545
  if (!channel) {
17511
- _context0.n = 3;
17546
+ _context0.n = 7;
17512
17547
  break;
17513
17548
  }
17514
17549
  _context0.n = 3;
17515
17550
  return call(channel.markVoiceMessagesAsPlayed, messageIds);
17516
17551
  case 3:
17552
+ messageListMarker = _context0.v;
17553
+ _iterator6 = _createForOfIteratorHelperLoose(messageListMarker.messageIds);
17554
+ case 4:
17555
+ if ((_step6 = _iterator6()).done) {
17556
+ _context0.n = 7;
17557
+ break;
17558
+ }
17559
+ messageId = _step6.value;
17560
+ updateParams = {
17561
+ deliveryStatus: MESSAGE_DELIVERY_STATUS.PLAYED,
17562
+ userMarkers: [{
17563
+ user: messageListMarker.user,
17564
+ createdAt: messageListMarker.createdAt,
17565
+ messageId: messageId,
17566
+ name: MESSAGE_DELIVERY_STATUS.READ
17567
+ }]
17568
+ };
17517
17569
  _context0.n = 5;
17570
+ return put(updateMessageAC(messageId, updateParams));
17571
+ case 5:
17572
+ updateMessageOnMap(channel.id, {
17573
+ messageId: messageId,
17574
+ params: updateParams
17575
+ });
17576
+ updateMessageOnAllMessages(messageId, updateParams);
17577
+ case 6:
17578
+ _context0.n = 4;
17518
17579
  break;
17519
- case 4:
17520
- _context0.p = 4;
17580
+ case 7:
17581
+ _context0.n = 9;
17582
+ break;
17583
+ case 8:
17584
+ _context0.p = 8;
17521
17585
  _t10 = _context0.v;
17522
17586
  log.error(_t10, 'Error on mark voice messages read');
17523
- case 5:
17587
+ case 9:
17524
17588
  return _context0.a(2);
17525
17589
  }
17526
- }, _marked0, null, [[1, 4]]);
17590
+ }, _marked0, null, [[1, 8]]);
17527
17591
  }
17528
17592
  function markMessagesDelivered(action) {
17529
- var payload, channelId, messageIds, channel, _t11;
17593
+ var payload, channelId, messageIds, channel, messageListMarker, _iterator7, _step7, messageId, updateParams, _t11;
17530
17594
  return _regenerator().w(function (_context1) {
17531
17595
  while (1) switch (_context1.p = _context1.n) {
17532
17596
  case 0:
@@ -17544,23 +17608,52 @@ function markMessagesDelivered(action) {
17544
17608
  }
17545
17609
  }
17546
17610
  if (!channel) {
17547
- _context1.n = 3;
17611
+ _context1.n = 7;
17548
17612
  break;
17549
17613
  }
17550
17614
  log.info('send delivered marker ', messageIds);
17551
17615
  _context1.n = 3;
17552
17616
  return call(channel.markMessagesAsReceived, messageIds);
17553
17617
  case 3:
17618
+ messageListMarker = _context1.v;
17619
+ _iterator7 = _createForOfIteratorHelperLoose(messageListMarker.messageIds);
17620
+ case 4:
17621
+ if ((_step7 = _iterator7()).done) {
17622
+ _context1.n = 7;
17623
+ break;
17624
+ }
17625
+ messageId = _step7.value;
17626
+ updateParams = {
17627
+ deliveryStatus: MESSAGE_DELIVERY_STATUS.DELIVERED,
17628
+ userMarkers: [{
17629
+ user: messageListMarker.user,
17630
+ createdAt: messageListMarker.createdAt,
17631
+ messageId: messageId,
17632
+ name: MESSAGE_DELIVERY_STATUS.DELIVERED
17633
+ }]
17634
+ };
17554
17635
  _context1.n = 5;
17636
+ return put(updateMessageAC(messageId, updateParams));
17637
+ case 5:
17638
+ updateMessageOnMap(channel.id, {
17639
+ messageId: messageId,
17640
+ params: updateParams
17641
+ });
17642
+ updateMessageOnAllMessages(messageId, updateParams);
17643
+ case 6:
17644
+ _context1.n = 4;
17555
17645
  break;
17556
- case 4:
17557
- _context1.p = 4;
17646
+ case 7:
17647
+ _context1.n = 9;
17648
+ break;
17649
+ case 8:
17650
+ _context1.p = 8;
17558
17651
  _t11 = _context1.v;
17559
17652
  log.error(_t11, 'Error on mark messages delivered');
17560
- case 5:
17653
+ case 9:
17561
17654
  return _context1.a(2);
17562
17655
  }
17563
- }, _marked1, null, [[1, 4]]);
17656
+ }, _marked1, null, [[1, 8]]);
17564
17657
  }
17565
17658
  function switchChannel(action) {
17566
17659
  var payload, channel, updateActiveChannel, channelToSwitch, existingChannel, addChannel, _SceytChatClient5, fetchedChannel, channelFromMap, currentActiveChannel, _t12;
@@ -17958,18 +18051,18 @@ function leaveChannel(action) {
17958
18051
  }, _marked18, null, [[0, 6]]);
17959
18052
  }
17960
18053
  function deletePendingDeleteChannels() {
17961
- var pendingDeleteChannels, _iterator6, _step6, channel, resendableError, _t20;
18054
+ var pendingDeleteChannels, _iterator8, _step8, channel, resendableError, _t20;
17962
18055
  return _regenerator().w(function (_context19) {
17963
18056
  while (1) switch (_context19.p = _context19.n) {
17964
18057
  case 0:
17965
18058
  pendingDeleteChannels = getPendingDeleteChannels();
17966
- _iterator6 = _createForOfIteratorHelperLoose(pendingDeleteChannels);
18059
+ _iterator8 = _createForOfIteratorHelperLoose(pendingDeleteChannels);
17967
18060
  case 1:
17968
- if ((_step6 = _iterator6()).done) {
18061
+ if ((_step8 = _iterator8()).done) {
17969
18062
  _context19.n = 9;
17970
18063
  break;
17971
18064
  }
17972
- channel = _step6.value;
18065
+ channel = _step8.value;
17973
18066
  _context19.p = 2;
17974
18067
  _context19.n = 3;
17975
18068
  return call(channel["delete"]);
@@ -19698,7 +19791,7 @@ var updateMessage$1 = function updateMessage(actionType, pending, channelId, scr
19698
19791
  break;
19699
19792
  }
19700
19793
  _context.n = 7;
19701
- return put(getMessagesAC(channel, false, channel === null || channel === void 0 ? void 0 : (_channel$lastMessage3 = channel.lastMessage) === null || _channel$lastMessage3 === void 0 ? void 0 : _channel$lastMessage3.id, undefined, false, 'smooth', true));
19794
+ return put(getMessagesAC(channel, true, channel === null || channel === void 0 ? void 0 : (_channel$lastMessage3 = channel.lastMessage) === null || _channel$lastMessage3 === void 0 ? void 0 : _channel$lastMessage3.id, undefined, false, 'smooth', true));
19702
19795
  case 7:
19703
19796
  return _context.a(2);
19704
19797
  }
@@ -20001,22 +20094,10 @@ function sendMessage(action) {
20001
20094
  return attachment;
20002
20095
  });
20003
20096
  }
20004
- messageUpdateData = {
20005
- id: messageResponse.id,
20006
- body: messageResponse.body,
20007
- type: messageResponse.type,
20008
- state: messageResponse.state,
20009
- displayCount: messageResponse.displayCount,
20010
- deliveryStatus: messageResponse.deliveryStatus,
20097
+ messageUpdateData = _extends({}, messageResponse, {
20011
20098
  attachments: attachmentsToUpdate,
20012
- mentionedUsers: messageResponse.mentionedUsers,
20013
- bodyAttributes: messageResponse.bodyAttributes,
20014
- metadata: messageResponse.metadata,
20015
- parentMessage: messageResponse.parentMessage,
20016
- repliedInThread: messageResponse.repliedInThread,
20017
- createdAt: messageResponse.createdAt,
20018
20099
  channelId: channel.id
20019
- };
20100
+ });
20020
20101
  stringifiedMessageUpdateData = JSON.parse(JSON.stringify(messageResponse));
20021
20102
  activeChannelId = getActiveChannelId();
20022
20103
  if (!(activeChannelId === channel.id)) {
@@ -20129,7 +20210,7 @@ function sendMessage(action) {
20129
20210
  }, _marked$3, null, [[1, 16, 17, 19]]);
20130
20211
  }
20131
20212
  function sendTextMessage(action) {
20132
- var payload, message, connectionState, channelId, channel, sendMessageTid, pendingMessage, SceytChatClient, createChannelData, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, createdMessage, messageToSend, _messageResponse, messageResponse, messageUpdateData, activeChannelId, stringifiedMessageUpdateData, messageToUpdate, channelUpdateParam, _channel3, _channel4, isErrorResendable, _activeChannelId, _t3;
20213
+ var payload, message, connectionState, channelId, channel, sendMessageTid, pendingMessage, SceytChatClient, createChannelData, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, createdMessage, messageToSend, messageResponse, messageUpdateData, activeChannelId, stringifiedMessageUpdateData, messageToUpdate, channelUpdateParam, _channel3, _channel4, isErrorResendable, _activeChannelId, _t3;
20133
20214
  return _regenerator().w(function (_context5) {
20134
20215
  while (1) switch (_context5.p = _context5.n) {
20135
20216
  case 0:
@@ -20239,23 +20320,9 @@ function sendTextMessage(action) {
20239
20320
  case 11:
20240
20321
  messageResponse = _context5.v;
20241
20322
  case 12:
20242
- messageUpdateData = {
20243
- id: messageResponse.id,
20244
- body: messageResponse.body,
20245
- type: messageResponse.type,
20246
- state: messageResponse.state,
20247
- bodyAttributes: messageResponse.bodyAttributes,
20248
- displayCount: messageResponse.displayCount,
20249
- deliveryStatus: messageResponse.deliveryStatus,
20250
- attachments: messageResponse.attachments,
20251
- mentionedUsers: messageResponse.mentionedUsers,
20252
- metadata: messageResponse.metadata,
20253
- parentMessage: messageResponse.parentMessage,
20254
- repliedInThread: messageResponse.repliedInThread,
20255
- createdAt: messageResponse.createdAt,
20256
- pollDetails: (_messageResponse = messageResponse) === null || _messageResponse === void 0 ? void 0 : _messageResponse.pollDetails,
20323
+ messageUpdateData = _extends({}, messageResponse, {
20257
20324
  channelId: channel.id
20258
- };
20325
+ });
20259
20326
  activeChannelId = getActiveChannelId();
20260
20327
  if (!(activeChannelId === channel.id)) {
20261
20328
  _context5.n = 13;
@@ -20478,20 +20545,9 @@ function forwardMessage(action) {
20478
20545
  return call(channel.sendMessage, messageToSend);
20479
20546
  case 10:
20480
20547
  messageResponse = _context6.v;
20481
- messageUpdateData = {
20482
- id: messageResponse.id,
20483
- type: messageResponse.type,
20484
- state: messageResponse.state,
20485
- displayCount: messageResponse.displayCount,
20486
- deliveryStatus: messageResponse.deliveryStatus,
20487
- attachments: messageResponse.attachments,
20488
- mentionedUsers: messageResponse.mentionedUsers,
20489
- metadata: messageResponse.metadata,
20490
- parentMessage: messageResponse.parentMessage,
20491
- repliedInThread: messageResponse.repliedInThread,
20492
- createdAt: messageResponse.createdAt,
20548
+ messageUpdateData = _extends({}, messageResponse, {
20493
20549
  channelId: channel.id
20494
- };
20550
+ });
20495
20551
  if (!(channelId === activeChannelId)) {
20496
20552
  _context6.n = 12;
20497
20553
  break;
@@ -20893,7 +20949,7 @@ var getFilteredPendingMessages = function getFilteredPendingMessages(messages) {
20893
20949
  return filteredPendingMessages;
20894
20950
  };
20895
20951
  function getMessagesQuery(action) {
20896
- var _action$payload, channel, loadWithLastMessage, messageId, limit, highlight, behavior, scrollToMessage, networkChanged, connectionState, SceytChatClient, messageQueryBuilder, messageQuery, cachedMessages, result, _result$messages$, _result$messages, _messages$Math$floor, messages, centerMessageId, loadWithMessageId, allMessages, messageIndex, maxLengthPart, _result$messages$2, _result$messages2, secondResult, thirdResult, fourthResult, _fourthResult, _result$messages$3, _result$messages3, _channel$lastMessage4, _channel$lastMessage5, _channel$lastMessage6, _result$messages4, _filteredPendingMessages, updatedMessages, messageIdForLoad, _updatedMessages$, filteredPendingMessages, waitToSendPendingMessages, updatedChannel, _t0, _t1, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
20952
+ var _action$payload, channel, loadWithLastMessage, messageId, limit, highlight, behavior, scrollToMessage, networkChanged, channelNewMessageCount, connectionState, SceytChatClient, _updatedChannel, messageQueryBuilder, messageQuery, cachedMessages, result, _result$messages$, _result$messages, _result$messages$2, _result$messages2, messages, loadNextMessageId, loadPreviousMessageId, nextLoadLimit, previousLoadLimit, centerMessageIndex, firstResult, secondResult, _result$messages$3, _result$messages3, _channel$lastMessage4, _channel$lastMessage5, _channel$lastMessage6, _result$messages4, _messages, _filteredPendingMessages, updatedMessages, messageIdForLoad, _updatedMessages$, filteredPendingMessages, waitToSendPendingMessages, updatedChannel, _t0, _t1, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
20897
20953
  return _regenerator().w(function (_context10) {
20898
20954
  while (1) switch (_context10.p = _context10.n) {
20899
20955
  case 0:
@@ -20902,29 +20958,69 @@ function getMessagesQuery(action) {
20902
20958
  return put(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
20903
20959
  case 1:
20904
20960
  _action$payload = action.payload, channel = _action$payload.channel, loadWithLastMessage = _action$payload.loadWithLastMessage, messageId = _action$payload.messageId, limit = _action$payload.limit, highlight = _action$payload.highlight, behavior = _action$payload.behavior, scrollToMessage = _action$payload.scrollToMessage, networkChanged = _action$payload.networkChanged;
20961
+ channelNewMessageCount = (channel === null || channel === void 0 ? void 0 : channel.newMessageCount) || 0;
20905
20962
  connectionState = store.getState().UserReducer.connectionStatus;
20906
20963
  if (!(channel !== null && channel !== void 0 && channel.id && !(channel !== null && channel !== void 0 && channel.isMockChannel))) {
20907
- _context10.n = 87;
20964
+ _context10.n = 77;
20908
20965
  break;
20909
20966
  }
20910
20967
  SceytChatClient = getClient();
20968
+ if (!networkChanged) {
20969
+ _context10.n = 8;
20970
+ break;
20971
+ }
20972
+ _context10.p = 2;
20973
+ _context10.n = 3;
20974
+ return call(SceytChatClient.getChannel, channel.id, true);
20975
+ case 3:
20976
+ _updatedChannel = _context10.v;
20977
+ if (!(_updatedChannel && _updatedChannel !== null && _updatedChannel !== void 0 && _updatedChannel.id)) {
20978
+ _context10.n = 6;
20979
+ break;
20980
+ }
20981
+ _context10.n = 4;
20982
+ return put(updateChannelDataAC(channel.id, _extends({}, _updatedChannel)));
20983
+ case 4:
20984
+ channelNewMessageCount = (_updatedChannel === null || _updatedChannel === void 0 ? void 0 : _updatedChannel.newMessageCount) || 0;
20985
+ if (!(channelNewMessageCount !== channel.newMessageCount)) {
20986
+ _context10.n = 6;
20987
+ break;
20988
+ }
20989
+ _context10.n = 5;
20990
+ return put(updateChannelDataAC(channel.id, {
20991
+ newMessageCount: channelNewMessageCount
20992
+ }));
20993
+ case 5:
20994
+ updateChannelOnAllChannels(channel.id, {
20995
+ newMessageCount: channelNewMessageCount
20996
+ });
20997
+ _context10.n = 6;
20998
+ return put(setUnreadMessageIdAC(channel.lastDisplayedMessageId));
20999
+ case 6:
21000
+ _context10.n = 8;
21001
+ break;
21002
+ case 7:
21003
+ _context10.p = 7;
21004
+ _t0 = _context10.v;
21005
+ log.error('error to get updated channel in get messages query', _t0);
21006
+ case 8:
20911
21007
  messageQueryBuilder = new SceytChatClient.MessageListQueryBuilder(channel.id);
20912
21008
  messageQueryBuilder.limit(limit || MESSAGES_MAX_LENGTH);
20913
21009
  messageQueryBuilder.reverse(true);
20914
21010
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
20915
- _context10.n = 3;
21011
+ _context10.n = 10;
20916
21012
  break;
20917
21013
  }
20918
- _context10.n = 2;
21014
+ _context10.n = 9;
20919
21015
  return call(messageQueryBuilder.build);
20920
- case 2:
20921
- _t0 = _context10.v;
20922
- _context10.n = 4;
21016
+ case 9:
21017
+ _t1 = _context10.v;
21018
+ _context10.n = 11;
20923
21019
  break;
20924
- case 3:
20925
- _t0 = null;
20926
- case 4:
20927
- messageQuery = _t0;
21020
+ case 10:
21021
+ _t1 = null;
21022
+ case 11:
21023
+ messageQuery = _t1;
20928
21024
  query.messageQuery = messageQuery;
20929
21025
  cachedMessages = Object.values(getMessagesFromMap(channel.id) || {}).sort(function (a, b) {
20930
21026
  return Number(a.id) - Number(b.id);
@@ -20934,161 +21030,126 @@ function getMessagesQuery(action) {
20934
21030
  hasNext: false
20935
21031
  };
20936
21032
  if (!loadWithLastMessage) {
20937
- _context10.n = 22;
21033
+ _context10.n = 29;
20938
21034
  break;
20939
21035
  }
20940
- if (!(channel.newMessageCount && channel.newMessageCount > 0)) {
20941
- _context10.n = 15;
21036
+ if (!(channelNewMessageCount && channelNewMessageCount > 0)) {
21037
+ _context10.n = 22;
20942
21038
  break;
20943
21039
  }
20944
21040
  setHasPrevCached(false);
20945
21041
  setAllMessages([]);
20946
21042
  messageQuery.limit = MESSAGES_MAX_LENGTH;
20947
21043
  if (!Number(channel.lastDisplayedMessageId)) {
20948
- _context10.n = 8;
21044
+ _context10.n = 15;
20949
21045
  break;
20950
21046
  }
20951
21047
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
20952
- _context10.n = 6;
21048
+ _context10.n = 13;
20953
21049
  break;
20954
21050
  }
20955
- _context10.n = 5;
21051
+ _context10.n = 12;
20956
21052
  return call(messageQuery.loadNearMessageId, channel.lastDisplayedMessageId);
20957
- case 5:
20958
- _t1 = _context10.v;
20959
- _context10.n = 7;
21053
+ case 12:
21054
+ _t10 = _context10.v;
21055
+ _context10.n = 14;
20960
21056
  break;
20961
- case 6:
20962
- _t1 = {
21057
+ case 13:
21058
+ _t10 = {
20963
21059
  messages: [],
20964
21060
  hasNext: false
20965
21061
  };
20966
- case 7:
20967
- result = _t1;
20968
- _context10.n = 12;
21062
+ case 14:
21063
+ result = _t10;
21064
+ _context10.n = 19;
20969
21065
  break;
20970
- case 8:
21066
+ case 15:
20971
21067
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
20972
- _context10.n = 10;
21068
+ _context10.n = 17;
20973
21069
  break;
20974
21070
  }
20975
- _context10.n = 9;
21071
+ _context10.n = 16;
20976
21072
  return call(messageQuery.loadPrevious);
20977
- case 9:
20978
- _t10 = _context10.v;
20979
- _context10.n = 11;
21073
+ case 16:
21074
+ _t11 = _context10.v;
21075
+ _context10.n = 18;
20980
21076
  break;
20981
- case 10:
20982
- _t10 = {
21077
+ case 17:
21078
+ _t11 = {
20983
21079
  messages: [],
20984
21080
  hasNext: false
20985
21081
  };
20986
- case 11:
20987
- result = _t10;
20988
- case 12:
20989
- _context10.n = 13;
20990
- return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
20991
- case 13:
20992
- setMessagesToMap(channel.id, result.messages, (_result$messages$ = result.messages[0]) === null || _result$messages$ === void 0 ? void 0 : _result$messages$.id, (_result$messages = result.messages[result.messages.length - 1]) === null || _result$messages === void 0 ? void 0 : _result$messages.id);
20993
- setAllMessages(result.messages);
20994
- _context10.n = 14;
20995
- return put(setMessagesHasPrevAC(true));
20996
- case 14:
20997
- _context10.n = 17;
20998
- break;
20999
- case 15:
21000
- result.messages = getFromAllMessagesByMessageId('', '', true);
21001
- _context10.n = 16;
21002
- return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21003
- case 16:
21004
- _context10.n = 17;
21005
- return put(setMessagesHasPrevAC(true));
21006
- case 17:
21007
- _context10.n = 18;
21008
- return put(setMessagesHasNextAC(false));
21009
21082
  case 18:
21010
- setHasNextCached(false);
21011
- if (!(messageId && scrollToMessage)) {
21012
- _context10.n = 21;
21013
- break;
21014
- }
21015
- if (!(channel.newMessageCount && channel.newMessageCount > 0)) {
21016
- _context10.n = 20;
21017
- break;
21018
- }
21019
- _context10.n = 19;
21020
- return put(setScrollToMessagesAC(channel.lastDisplayedMessageId, highlight, behavior));
21083
+ result = _t11;
21021
21084
  case 19:
21022
- _context10.n = 21;
21023
- break;
21085
+ _context10.n = 20;
21086
+ return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21024
21087
  case 20:
21088
+ setMessagesToMap(channel.id, result.messages, (_result$messages$ = result.messages[0]) === null || _result$messages$ === void 0 ? void 0 : _result$messages$.id, (_result$messages = result.messages[result.messages.length - 1]) === null || _result$messages === void 0 ? void 0 : _result$messages.id);
21089
+ setAllMessages(result.messages);
21025
21090
  _context10.n = 21;
21026
- return put(scrollToNewMessageAC(true));
21091
+ return put(setMessagesHasPrevAC(true));
21027
21092
  case 21:
21028
- _context10.n = 80;
21093
+ _context10.n = 24;
21029
21094
  break;
21030
21095
  case 22:
21031
- if (!messageId) {
21032
- _context10.n = 52;
21033
- break;
21034
- }
21035
- messages = store.getState().MessageReducer.activeChannelMessages;
21036
- centerMessageId = (_messages$Math$floor = messages[Math.floor(messages.length / 2)]) === null || _messages$Math$floor === void 0 ? void 0 : _messages$Math$floor.id;
21037
- loadWithMessageId = networkChanged && (messages === null || messages === void 0 ? void 0 : messages.length) > 0 ? centerMessageId : messageId;
21038
- allMessages = getAllMessages();
21039
- messageIndex = allMessages.findIndex(function (msg) {
21040
- return msg.id === loadWithMessageId;
21041
- });
21042
- maxLengthPart = MESSAGES_MAX_LENGTH / 2;
21043
- if (!(messageIndex >= maxLengthPart)) {
21044
- _context10.n = 25;
21045
- break;
21046
- }
21047
- result.messages = allMessages.slice(messageIndex - maxLengthPart, messageIndex + maxLengthPart);
21096
+ result.messages = getFromAllMessagesByMessageId('', '', true);
21048
21097
  _context10.n = 23;
21049
21098
  return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21050
21099
  case 23:
21051
- setHasPrevCached(messageIndex > maxLengthPart);
21052
- setHasNextCached(allMessages.length > maxLengthPart);
21053
21100
  _context10.n = 24;
21054
21101
  return put(setMessagesHasPrevAC(true));
21055
21102
  case 24:
21056
- _context10.n = 48;
21057
- break;
21103
+ _context10.n = 25;
21104
+ return put(setMessagesHasNextAC(false));
21058
21105
  case 25:
21059
- messageQuery.limit = MESSAGES_MAX_LENGTH;
21060
- log.info('load by message id from server ...............', loadWithMessageId);
21061
- if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21106
+ setHasNextCached(false);
21107
+ if (!(messageId && scrollToMessage)) {
21108
+ _context10.n = 28;
21109
+ break;
21110
+ }
21111
+ if (!(channelNewMessageCount && channelNewMessageCount > 0)) {
21062
21112
  _context10.n = 27;
21063
21113
  break;
21064
21114
  }
21065
21115
  _context10.n = 26;
21066
- return call(messageQuery.loadNearMessageId, loadWithMessageId);
21116
+ return put(setScrollToMessagesAC(channel.lastDisplayedMessageId, highlight, behavior));
21067
21117
  case 26:
21068
- _t11 = _context10.v;
21069
21118
  _context10.n = 28;
21070
21119
  break;
21071
21120
  case 27:
21072
- _t11 = {
21073
- messages: [],
21074
- hasNext: false
21075
- };
21121
+ _context10.n = 28;
21122
+ return put(scrollToNewMessageAC(true));
21076
21123
  case 28:
21077
- result = _t11;
21078
- _context10.n = 29;
21079
- return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21124
+ _context10.n = 70;
21125
+ break;
21080
21126
  case 29:
21081
- if (!(result.messages.length === 50)) {
21082
- _context10.n = 47;
21127
+ if (!messageId) {
21128
+ _context10.n = 40;
21083
21129
  break;
21084
21130
  }
21085
- messageQuery.limit = (MESSAGES_MAX_PAGE_COUNT - 50) / 2;
21131
+ messages = store.getState().MessageReducer.activeChannelMessages;
21132
+ loadNextMessageId = '';
21133
+ loadPreviousMessageId = '';
21134
+ nextLoadLimit = MESSAGES_MAX_PAGE_COUNT / 2;
21135
+ previousLoadLimit = MESSAGES_MAX_PAGE_COUNT / 2;
21136
+ if (networkChanged) {
21137
+ centerMessageIndex = getCenterTwoMessages(messages);
21138
+ loadPreviousMessageId = centerMessageIndex.mid2.messageId;
21139
+ loadNextMessageId = centerMessageIndex.mid1.messageId;
21140
+ previousLoadLimit = centerMessageIndex.mid2.index;
21141
+ nextLoadLimit = messages.length - centerMessageIndex.mid1.index - 1;
21142
+ } else if (messageId) {
21143
+ loadPreviousMessageId = messageId;
21144
+ }
21145
+ messageQuery.limit = previousLoadLimit;
21146
+ log.info('load by message id from server ...............', messageId);
21086
21147
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21087
21148
  _context10.n = 31;
21088
21149
  break;
21089
21150
  }
21090
21151
  _context10.n = 30;
21091
- return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
21152
+ return call(messageQuery.loadPreviousMessageId, loadPreviousMessageId);
21092
21153
  case 30:
21093
21154
  _t12 = _context10.v;
21094
21155
  _context10.n = 32;
@@ -21099,235 +21160,185 @@ function getMessagesQuery(action) {
21099
21160
  hasNext: false
21100
21161
  };
21101
21162
  case 32:
21102
- secondResult = _t12;
21103
- result.messages = [].concat(secondResult.messages, result.messages);
21104
- _context10.n = 33;
21105
- return put(addMessagesAC(JSON.parse(JSON.stringify(secondResult.messages)), MESSAGE_LOAD_DIRECTION.PREV));
21106
- case 33:
21107
- messageQuery.limit = MESSAGES_MAX_PAGE_COUNT - 50 - secondResult.messages.length;
21163
+ firstResult = _t12;
21164
+ if (!networkChanged && firstResult.messages.length > 0) {
21165
+ loadNextMessageId = firstResult.messages[firstResult.messages.length - 1].id;
21166
+ } else if (!networkChanged && !firstResult.messages.length) {
21167
+ loadNextMessageId = '0';
21168
+ }
21108
21169
  messageQuery.reverse = false;
21170
+ messageQuery.limit = nextLoadLimit;
21109
21171
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21110
- _context10.n = 35;
21172
+ _context10.n = 34;
21111
21173
  break;
21112
21174
  }
21113
- _context10.n = 34;
21114
- return call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
21115
- case 34:
21175
+ _context10.n = 33;
21176
+ return call(messageQuery.loadNextMessageId, loadNextMessageId);
21177
+ case 33:
21116
21178
  _t13 = _context10.v;
21117
- _context10.n = 36;
21179
+ _context10.n = 35;
21118
21180
  break;
21119
- case 35:
21181
+ case 34:
21120
21182
  _t13 = {
21121
21183
  messages: [],
21122
21184
  hasNext: false
21123
21185
  };
21186
+ case 35:
21187
+ secondResult = _t13;
21188
+ result.messages = [].concat(firstResult.messages, secondResult.messages);
21189
+ _context10.n = 36;
21190
+ return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21124
21191
  case 36:
21125
- thirdResult = _t13;
21126
- result.messages = [].concat(result.messages, thirdResult.messages);
21127
- _context10.n = 37;
21128
- return put(addMessagesAC(JSON.parse(JSON.stringify(thirdResult.messages)), MESSAGE_LOAD_DIRECTION.NEXT));
21129
- case 37:
21130
- if (!(secondResult.hasNext && !thirdResult.hasNext)) {
21131
- _context10.n = 42;
21132
- break;
21133
- }
21134
- messageQuery.limit = MESSAGES_MAX_PAGE_COUNT - 50 - secondResult.messages.length - result.messages.length;
21135
- if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21136
- _context10.n = 39;
21137
- break;
21138
- }
21139
- _context10.n = 38;
21140
- return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
21141
- case 38:
21142
- _t14 = _context10.v;
21143
- _context10.n = 40;
21144
- break;
21145
- case 39:
21146
- _t14 = {
21147
- messages: [],
21148
- hasNext: false
21149
- };
21150
- case 40:
21151
- fourthResult = _t14;
21152
- result.messages = [].concat(fourthResult.messages, result.messages);
21153
- _context10.n = 41;
21154
- return put(addMessagesAC(JSON.parse(JSON.stringify(fourthResult.messages)), MESSAGE_LOAD_DIRECTION.PREV));
21155
- case 41:
21156
- _context10.n = 46;
21157
- break;
21158
- case 42:
21159
- if (!(!secondResult.hasNext && thirdResult.hasNext)) {
21160
- _context10.n = 46;
21161
- break;
21162
- }
21163
- messageQuery.limit = MESSAGES_MAX_PAGE_COUNT - 50 - secondResult.messages.length - result.messages.length;
21164
- if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21165
- _context10.n = 44;
21166
- break;
21167
- }
21168
- _context10.n = 43;
21169
- return call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
21170
- case 43:
21171
- _t15 = _context10.v;
21172
- _context10.n = 45;
21173
- break;
21174
- case 44:
21175
- _t15 = {
21176
- messages: [],
21177
- hasNext: false
21178
- };
21179
- case 45:
21180
- _fourthResult = _t15;
21181
- result.messages = [].concat(result.messages, _fourthResult.messages);
21182
- _context10.n = 46;
21183
- return put(addMessagesAC(JSON.parse(JSON.stringify(_fourthResult.messages)), MESSAGE_LOAD_DIRECTION.NEXT));
21184
- case 46:
21185
- messageQuery.reverse = true;
21186
- case 47:
21187
21192
  setMessagesToMap(channel.id, result.messages, (_result$messages$2 = result.messages[0]) === null || _result$messages$2 === void 0 ? void 0 : _result$messages$2.id, (_result$messages2 = result.messages[result.messages.length - 1]) === null || _result$messages2 === void 0 ? void 0 : _result$messages2.id);
21188
21193
  setAllMessages([].concat(result.messages));
21189
21194
  setHasPrevCached(false);
21190
21195
  setHasNextCached(false);
21191
- case 48:
21192
- _context10.n = 49;
21196
+ _context10.n = 37;
21193
21197
  return put(setMessagesHasNextAC(true));
21194
- case 49:
21195
- if (!scrollToMessage) {
21196
- _context10.n = 50;
21198
+ case 37:
21199
+ if (!(scrollToMessage && !networkChanged)) {
21200
+ _context10.n = 38;
21197
21201
  break;
21198
21202
  }
21199
- _context10.n = 50;
21200
- return put(setScrollToMessagesAC(loadWithMessageId, highlight, behavior));
21201
- case 50:
21202
- _context10.n = 51;
21203
+ _context10.n = 38;
21204
+ return put(setScrollToMessagesAC(messageId, highlight, behavior));
21205
+ case 38:
21206
+ _context10.n = 39;
21203
21207
  return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
21204
- case 51:
21205
- _context10.n = 80;
21208
+ case 39:
21209
+ _context10.n = 70;
21206
21210
  break;
21207
- case 52:
21208
- if (!(channel.newMessageCount && channel.lastDisplayedMessageId)) {
21209
- _context10.n = 64;
21211
+ case 40:
21212
+ if (!(channelNewMessageCount && channel.lastDisplayedMessageId)) {
21213
+ _context10.n = 54;
21210
21214
  break;
21211
21215
  }
21212
21216
  setAllMessages([]);
21213
21217
  messageQuery.limit = MESSAGES_MAX_LENGTH;
21214
21218
  if (!Number(channel.lastDisplayedMessageId)) {
21215
- _context10.n = 56;
21219
+ _context10.n = 44;
21216
21220
  break;
21217
21221
  }
21218
21222
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21219
- _context10.n = 54;
21223
+ _context10.n = 42;
21220
21224
  break;
21221
21225
  }
21222
- _context10.n = 53;
21226
+ _context10.n = 41;
21223
21227
  return call(messageQuery.loadNearMessageId, channel.lastDisplayedMessageId);
21224
- case 53:
21225
- _t16 = _context10.v;
21226
- _context10.n = 55;
21228
+ case 41:
21229
+ _t14 = _context10.v;
21230
+ _context10.n = 43;
21227
21231
  break;
21228
- case 54:
21229
- _t16 = {
21232
+ case 42:
21233
+ _t14 = {
21230
21234
  messages: [],
21231
21235
  hasNext: false
21232
21236
  };
21233
- case 55:
21234
- result = _t16;
21235
- _context10.n = 60;
21237
+ case 43:
21238
+ result = _t14;
21239
+ _context10.n = 48;
21236
21240
  break;
21237
- case 56:
21241
+ case 44:
21238
21242
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21239
- _context10.n = 58;
21243
+ _context10.n = 46;
21240
21244
  break;
21241
21245
  }
21242
- _context10.n = 57;
21246
+ _context10.n = 45;
21243
21247
  return call(messageQuery.loadPrevious);
21244
- case 57:
21245
- _t17 = _context10.v;
21246
- _context10.n = 59;
21248
+ case 45:
21249
+ _t15 = _context10.v;
21250
+ _context10.n = 47;
21247
21251
  break;
21248
- case 58:
21249
- _t17 = {
21252
+ case 46:
21253
+ _t15 = {
21250
21254
  messages: [],
21251
21255
  hasNext: false
21252
21256
  };
21253
- case 59:
21254
- result = _t17;
21255
- case 60:
21256
- _context10.n = 61;
21257
+ case 47:
21258
+ result = _t15;
21259
+ case 48:
21260
+ _context10.n = 49;
21257
21261
  return put(setMessagesHasPrevAC(true));
21258
- case 61:
21259
- _context10.n = 62;
21262
+ case 49:
21263
+ _context10.n = 50;
21260
21264
  return put(setMessagesHasNextAC(channel.lastMessage && result.messages.length > 0 && channel.lastMessage.id !== result.messages[result.messages.length - 1].id));
21261
- case 62:
21265
+ case 50:
21262
21266
  setMessagesToMap(channel.id, result.messages, (_result$messages$3 = result.messages[0]) === null || _result$messages$3 === void 0 ? void 0 : _result$messages$3.id, (_result$messages3 = result.messages[result.messages.length - 1]) === null || _result$messages3 === void 0 ? void 0 : _result$messages3.id);
21263
21267
  setAllMessages([].concat(result.messages));
21264
- _context10.n = 63;
21268
+ _context10.n = 51;
21265
21269
  return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21266
- case 63:
21267
- _context10.n = 80;
21270
+ case 51:
21271
+ _context10.n = 52;
21272
+ return put(scrollToNewMessageAC(false));
21273
+ case 52:
21274
+ _context10.n = 53;
21275
+ return put(setUnreadScrollToAC(true));
21276
+ case 53:
21277
+ _context10.n = 70;
21268
21278
  break;
21269
- case 64:
21279
+ case 54:
21270
21280
  if (!(cachedMessages && cachedMessages.length)) {
21271
- _context10.n = 67;
21281
+ _context10.n = 57;
21272
21282
  break;
21273
21283
  }
21274
- _context10.n = 65;
21275
- return put(setMessagesAC(JSON.parse(JSON.stringify(cachedMessages))));
21276
- case 65:
21277
- _context10.n = 66;
21284
+ _messages = getFromAllMessagesByMessageId('', '', true);
21285
+ _context10.n = 55;
21286
+ return put(setMessagesAC(JSON.parse(JSON.stringify(_messages))));
21287
+ case 55:
21288
+ _context10.n = 56;
21278
21289
  return delay(0);
21279
- case 66:
21280
- _filteredPendingMessages = getFilteredPendingMessages(cachedMessages);
21281
- _context10.n = 67;
21290
+ case 56:
21291
+ _filteredPendingMessages = getFilteredPendingMessages(_messages);
21292
+ _context10.n = 57;
21282
21293
  return put(addMessagesAC(_filteredPendingMessages, MESSAGE_LOAD_DIRECTION.NEXT));
21283
- case 67:
21294
+ case 57:
21284
21295
  log.info('load message from server');
21285
21296
  result = {
21286
21297
  messages: [],
21287
21298
  hasNext: false
21288
21299
  };
21289
21300
  if (!((channel === null || channel === void 0 ? void 0 : channel.lastDisplayedMessageId) > (channel === null || channel === void 0 ? void 0 : (_channel$lastMessage4 = channel.lastMessage) === null || _channel$lastMessage4 === void 0 ? void 0 : _channel$lastMessage4.id))) {
21290
- _context10.n = 71;
21301
+ _context10.n = 61;
21291
21302
  break;
21292
21303
  }
21293
21304
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21294
- _context10.n = 69;
21305
+ _context10.n = 59;
21295
21306
  break;
21296
21307
  }
21297
- _context10.n = 68;
21308
+ _context10.n = 58;
21298
21309
  return call(messageQuery.loadPreviousMessageId, channel === null || channel === void 0 ? void 0 : channel.lastDisplayedMessageId);
21299
- case 68:
21300
- _t18 = _context10.v;
21301
- _context10.n = 70;
21310
+ case 58:
21311
+ _t16 = _context10.v;
21312
+ _context10.n = 60;
21302
21313
  break;
21303
- case 69:
21304
- _t18 = {
21314
+ case 59:
21315
+ _t16 = {
21305
21316
  messages: [],
21306
21317
  hasNext: false
21307
21318
  };
21308
- case 70:
21309
- result = _t18;
21310
- _context10.n = 75;
21319
+ case 60:
21320
+ result = _t16;
21321
+ _context10.n = 65;
21311
21322
  break;
21312
- case 71:
21323
+ case 61:
21313
21324
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21314
- _context10.n = 73;
21325
+ _context10.n = 63;
21315
21326
  break;
21316
21327
  }
21317
- _context10.n = 72;
21328
+ _context10.n = 62;
21318
21329
  return call(messageQuery.loadPrevious);
21319
- case 72:
21320
- _t19 = _context10.v;
21321
- _context10.n = 74;
21330
+ case 62:
21331
+ _t17 = _context10.v;
21332
+ _context10.n = 64;
21322
21333
  break;
21323
- case 73:
21324
- _t19 = {
21334
+ case 63:
21335
+ _t17 = {
21325
21336
  messages: [],
21326
21337
  hasNext: false
21327
21338
  };
21328
- case 74:
21329
- result = _t19;
21330
- case 75:
21339
+ case 64:
21340
+ result = _t17;
21341
+ case 65:
21331
21342
  updatedMessages = [];
21332
21343
  result.messages.forEach(function (msg) {
21333
21344
  var updatedMessage = updateMessageOnMap(channel.id, {
@@ -21339,85 +21350,85 @@ function getMessagesQuery(action) {
21339
21350
  });
21340
21351
  messageIdForLoad = (channel === null || channel === void 0 ? void 0 : channel.lastDisplayedMessageId) > (channel === null || channel === void 0 ? void 0 : (_channel$lastMessage5 = channel.lastMessage) === null || _channel$lastMessage5 === void 0 ? void 0 : _channel$lastMessage5.id) ? (channel === null || channel === void 0 ? void 0 : channel.lastDisplayedMessageId) || '0' : (channel === null || channel === void 0 ? void 0 : (_channel$lastMessage6 = channel.lastMessage) === null || _channel$lastMessage6 === void 0 ? void 0 : _channel$lastMessage6.id) || '0';
21341
21352
  if (!updatedMessages.length) {
21342
- _context10.n = 79;
21353
+ _context10.n = 69;
21343
21354
  break;
21344
21355
  }
21345
- _context10.n = 76;
21356
+ _context10.n = 66;
21346
21357
  return call(updateMessages, channel, updatedMessages, (_updatedMessages$ = updatedMessages[0]) === null || _updatedMessages$ === void 0 ? void 0 : _updatedMessages$.id, messageIdForLoad);
21347
- case 76:
21348
- _context10.n = 77;
21358
+ case 66:
21359
+ _context10.n = 67;
21349
21360
  return put(setMessagesHasPrevAC(true));
21350
- case 77:
21351
- _context10.n = 78;
21361
+ case 67:
21362
+ _context10.n = 68;
21352
21363
  return put(setMessagesHasNextAC(false));
21353
- case 78:
21354
- _context10.n = 80;
21364
+ case 68:
21365
+ _context10.n = 70;
21355
21366
  break;
21356
- case 79:
21367
+ case 69:
21357
21368
  if (!(!(cachedMessages !== null && cachedMessages !== void 0 && cachedMessages.length) && !((_result$messages4 = result.messages) !== null && _result$messages4 !== void 0 && _result$messages4.length))) {
21358
- _context10.n = 80;
21369
+ _context10.n = 70;
21359
21370
  break;
21360
21371
  }
21361
- _context10.n = 80;
21372
+ _context10.n = 70;
21362
21373
  return put(setMessagesAC([]));
21363
- case 80:
21374
+ case 70:
21364
21375
  filteredPendingMessages = getFilteredPendingMessages(result.messages);
21365
- _context10.n = 81;
21376
+ _context10.n = 71;
21366
21377
  return put(addMessagesAC(filteredPendingMessages, MESSAGE_LOAD_DIRECTION.NEXT));
21367
- case 81:
21378
+ case 71:
21368
21379
  waitToSendPendingMessages = store.getState().UserReducer.waitToSendPendingMessages;
21369
21380
  if (!(connectionState === CONNECTION_STATUS.CONNECTED && waitToSendPendingMessages)) {
21370
- _context10.n = 83;
21381
+ _context10.n = 73;
21371
21382
  break;
21372
21383
  }
21373
- _context10.n = 82;
21384
+ _context10.n = 72;
21374
21385
  return put(setWaitToSendPendingMessagesAC(false));
21375
- case 82:
21376
- _context10.n = 83;
21386
+ case 72:
21387
+ _context10.n = 73;
21377
21388
  return spawn(sendPendingMessages, connectionState);
21378
- case 83:
21379
- _context10.n = 84;
21389
+ case 73:
21390
+ _context10.n = 74;
21380
21391
  return call(SceytChatClient.getChannel, channel.id, true);
21381
- case 84:
21392
+ case 74:
21382
21393
  updatedChannel = _context10.v;
21383
21394
  if (!(updatedChannel && updatedChannel !== null && updatedChannel !== void 0 && updatedChannel.lastMessage)) {
21384
- _context10.n = 86;
21395
+ _context10.n = 76;
21385
21396
  break;
21386
21397
  }
21387
- _context10.n = 85;
21398
+ _context10.n = 75;
21388
21399
  return put(updateChannelLastMessageAC(updatedChannel.lastMessage, updatedChannel));
21389
- case 85:
21400
+ case 75:
21390
21401
  updateChannelLastMessageOnAllChannels(channel.id, updatedChannel.lastMessage);
21391
- case 86:
21392
- _context10.n = 88;
21402
+ case 76:
21403
+ _context10.n = 78;
21393
21404
  break;
21394
- case 87:
21405
+ case 77:
21395
21406
  if (!(channel !== null && channel !== void 0 && channel.isMockChannel)) {
21396
- _context10.n = 88;
21407
+ _context10.n = 78;
21397
21408
  break;
21398
21409
  }
21399
- _context10.n = 88;
21410
+ _context10.n = 78;
21400
21411
  return put(setMessagesAC([]));
21401
- case 88:
21402
- _context10.n = 90;
21412
+ case 78:
21413
+ _context10.n = 80;
21403
21414
  break;
21404
- case 89:
21405
- _context10.p = 89;
21406
- _t20 = _context10.v;
21407
- log.error('error in message query', _t20);
21408
- case 90:
21409
- _context10.p = 90;
21410
- _context10.n = 91;
21415
+ case 79:
21416
+ _context10.p = 79;
21417
+ _t18 = _context10.v;
21418
+ log.error('error in message query', _t18);
21419
+ case 80:
21420
+ _context10.p = 80;
21421
+ _context10.n = 81;
21411
21422
  return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
21412
- case 91:
21413
- return _context10.f(90);
21414
- case 92:
21423
+ case 81:
21424
+ return _context10.f(80);
21425
+ case 82:
21415
21426
  return _context10.a(2);
21416
21427
  }
21417
- }, _marked7$1, null, [[0, 89, 90, 92]]);
21428
+ }, _marked7$1, null, [[2, 7], [0, 79, 80, 82]]);
21418
21429
  }
21419
21430
  function getMessageQuery(action) {
21420
- var payload, channelId, messageId, channel, connectionState, messages, fetchedMessage, _t21;
21431
+ var payload, channelId, messageId, channel, connectionState, messages, fetchedMessage, _t19;
21421
21432
  return _regenerator().w(function (_context11) {
21422
21433
  while (1) switch (_context11.p = _context11.n) {
21423
21434
  case 0:
@@ -21467,15 +21478,15 @@ function getMessageQuery(action) {
21467
21478
  break;
21468
21479
  case 7:
21469
21480
  _context11.p = 7;
21470
- _t21 = _context11.v;
21471
- log.error('error in message query', _t21);
21481
+ _t19 = _context11.v;
21482
+ log.error('error in message query', _t19);
21472
21483
  case 8:
21473
21484
  return _context11.a(2);
21474
21485
  }
21475
21486
  }, _marked8$1, null, [[0, 7]]);
21476
21487
  }
21477
21488
  function loadMoreMessages(action) {
21478
- var payload, limit, direction, channelId, messageId, hasNext, SceytChatClient, messageQueryBuilder, messageQuery, result, _result$messages$4, _result$messages5, _result$messages$5, _result$messages6, _t22;
21489
+ var payload, limit, direction, channelId, messageId, hasNext, SceytChatClient, messageQueryBuilder, messageQuery, result, _result$messages$4, _result$messages5, _result$messages$5, _result$messages6, _t20;
21479
21490
  return _regenerator().w(function (_context12) {
21480
21491
  while (1) switch (_context12.p = _context12.n) {
21481
21492
  case 0:
@@ -21588,15 +21599,15 @@ function loadMoreMessages(action) {
21588
21599
  break;
21589
21600
  case 18:
21590
21601
  _context12.p = 18;
21591
- _t22 = _context12.v;
21592
- log.error('error in load more messages', _t22);
21602
+ _t20 = _context12.v;
21603
+ log.error('error in load more messages', _t20);
21593
21604
  case 19:
21594
21605
  return _context12.a(2);
21595
21606
  }
21596
21607
  }, _marked9$1, null, [[0, 18]]);
21597
21608
  }
21598
21609
  function addReaction(action) {
21599
- var payload, channelId, messageId, key, score, reason, enforceUnique, user, channel, _yield$call, message, reaction, channelUpdateParam, _t23;
21610
+ var payload, channelId, messageId, key, score, reason, enforceUnique, user, channel, _yield$call, message, reaction, channelUpdateParam, _t21;
21600
21611
  return _regenerator().w(function (_context13) {
21601
21612
  while (1) switch (_context13.p = _context13.n) {
21602
21613
  case 0:
@@ -21649,15 +21660,15 @@ function addReaction(action) {
21649
21660
  break;
21650
21661
  case 8:
21651
21662
  _context13.p = 8;
21652
- _t23 = _context13.v;
21653
- log.error('ERROR in add reaction', _t23.message);
21663
+ _t21 = _context13.v;
21664
+ log.error('ERROR in add reaction', _t21.message);
21654
21665
  case 9:
21655
21666
  return _context13.a(2);
21656
21667
  }
21657
21668
  }, _marked0$1, null, [[0, 8]]);
21658
21669
  }
21659
21670
  function deleteReaction(action) {
21660
- var payload, channelId, messageId, key, isLastReaction, channel, _yield$call2, message, reaction, channelUpdateParam, _t24;
21671
+ var payload, channelId, messageId, key, isLastReaction, channel, _yield$call2, message, reaction, channelUpdateParam, _t22;
21661
21672
  return _regenerator().w(function (_context14) {
21662
21673
  while (1) switch (_context14.p = _context14.n) {
21663
21674
  case 0:
@@ -21705,15 +21716,15 @@ function deleteReaction(action) {
21705
21716
  break;
21706
21717
  case 7:
21707
21718
  _context14.p = 7;
21708
- _t24 = _context14.v;
21709
- log.error('ERROR in delete reaction', _t24.message);
21719
+ _t22 = _context14.v;
21720
+ log.error('ERROR in delete reaction', _t22.message);
21710
21721
  case 8:
21711
21722
  return _context14.a(2);
21712
21723
  }
21713
21724
  }, _marked1$1, null, [[0, 7]]);
21714
21725
  }
21715
21726
  function getReactions(action) {
21716
- var payload, messageId, key, limit, SceytChatClient, reactionQueryBuilder, reactionQuery, result, _t25;
21727
+ var payload, messageId, key, limit, SceytChatClient, reactionQueryBuilder, reactionQuery, result, _t23;
21717
21728
  return _regenerator().w(function (_context15) {
21718
21729
  while (1) switch (_context15.p = _context15.n) {
21719
21730
  case 0:
@@ -21748,15 +21759,15 @@ function getReactions(action) {
21748
21759
  break;
21749
21760
  case 6:
21750
21761
  _context15.p = 6;
21751
- _t25 = _context15.v;
21752
- log.error('ERROR in get reactions', _t25.message);
21762
+ _t23 = _context15.v;
21763
+ log.error('ERROR in get reactions', _t23.message);
21753
21764
  case 7:
21754
21765
  return _context15.a(2);
21755
21766
  }
21756
21767
  }, _marked10$1, null, [[0, 6]]);
21757
21768
  }
21758
21769
  function loadMoreReactions(action) {
21759
- var payload, limit, ReactionQuery, result, _t26;
21770
+ var payload, limit, ReactionQuery, result, _t24;
21760
21771
  return _regenerator().w(function (_context16) {
21761
21772
  while (1) switch (_context16.p = _context16.n) {
21762
21773
  case 0:
@@ -21784,15 +21795,15 @@ function loadMoreReactions(action) {
21784
21795
  break;
21785
21796
  case 5:
21786
21797
  _context16.p = 5;
21787
- _t26 = _context16.v;
21788
- log.error('ERROR in load more reactions', _t26.message);
21798
+ _t24 = _context16.v;
21799
+ log.error('ERROR in load more reactions', _t24.message);
21789
21800
  case 6:
21790
21801
  return _context16.a(2);
21791
21802
  }
21792
21803
  }, _marked11$1, null, [[0, 5]]);
21793
21804
  }
21794
21805
  function getMessageAttachments(action) {
21795
- var _action$payload2, channelId, attachmentType, limit, direction, attachmentId, forPopup, SceytChatClient, typeList, AttachmentByTypeQueryBuilder, AttachmentByTypeQuery, result, _t27;
21806
+ var _action$payload2, channelId, attachmentType, limit, direction, attachmentId, forPopup, SceytChatClient, typeList, AttachmentByTypeQueryBuilder, AttachmentByTypeQuery, result, _t25;
21796
21807
  return _regenerator().w(function (_context17) {
21797
21808
  while (1) switch (_context17.p = _context17.n) {
21798
21809
  case 0:
@@ -21870,15 +21881,15 @@ function getMessageAttachments(action) {
21870
21881
  break;
21871
21882
  case 13:
21872
21883
  _context17.p = 13;
21873
- _t27 = _context17.v;
21874
- log.error('error in message attachment query', _t27);
21884
+ _t25 = _context17.v;
21885
+ log.error('error in message attachment query', _t25);
21875
21886
  case 14:
21876
21887
  return _context17.a(2);
21877
21888
  }
21878
21889
  }, _marked12$1, null, [[0, 13]]);
21879
21890
  }
21880
21891
  function loadMoreMessageAttachments(action) {
21881
- var _action$payload3, limit, direction, forPopup, AttachmentQuery, _yield$call3, attachments, hasNext, _t28;
21892
+ var _action$payload3, limit, direction, forPopup, AttachmentQuery, _yield$call3, attachments, hasNext, _t26;
21882
21893
  return _regenerator().w(function (_context18) {
21883
21894
  while (1) switch (_context18.p = _context18.n) {
21884
21895
  case 0:
@@ -21922,15 +21933,15 @@ function loadMoreMessageAttachments(action) {
21922
21933
  break;
21923
21934
  case 8:
21924
21935
  _context18.p = 8;
21925
- _t28 = _context18.v;
21926
- log.error('error in message attachment query', _t28);
21936
+ _t26 = _context18.v;
21937
+ log.error('error in message attachment query', _t26);
21927
21938
  case 9:
21928
21939
  return _context18.a(2);
21929
21940
  }
21930
21941
  }, _marked13$1, null, [[0, 8]]);
21931
21942
  }
21932
21943
  function pauseAttachmentUploading(action) {
21933
- var attachmentId, isPaused, _t29;
21944
+ var attachmentId, isPaused, _t27;
21934
21945
  return _regenerator().w(function (_context19) {
21935
21946
  while (1) switch (_context19.p = _context19.n) {
21936
21947
  case 0:
@@ -21952,15 +21963,15 @@ function pauseAttachmentUploading(action) {
21952
21963
  break;
21953
21964
  case 2:
21954
21965
  _context19.p = 2;
21955
- _t29 = _context19.v;
21956
- log.error('error in pause attachment uploading', _t29);
21966
+ _t27 = _context19.v;
21967
+ log.error('error in pause attachment uploading', _t27);
21957
21968
  case 3:
21958
21969
  return _context19.a(2);
21959
21970
  }
21960
21971
  }, _marked14$1, null, [[0, 2]]);
21961
21972
  }
21962
21973
  function resumeAttachmentUploading(action) {
21963
- var attachmentId, isResumed, _t30;
21974
+ var attachmentId, isResumed, _t28;
21964
21975
  return _regenerator().w(function (_context20) {
21965
21976
  while (1) switch (_context20.p = _context20.n) {
21966
21977
  case 0:
@@ -21983,15 +21994,15 @@ function resumeAttachmentUploading(action) {
21983
21994
  break;
21984
21995
  case 2:
21985
21996
  _context20.p = 2;
21986
- _t30 = _context20.v;
21987
- log.error('error in resume attachment uploading', _t30);
21997
+ _t28 = _context20.v;
21998
+ log.error('error in resume attachment uploading', _t28);
21988
21999
  case 3:
21989
22000
  return _context20.a(2);
21990
22001
  }
21991
22002
  }, _marked15$1, null, [[0, 2]]);
21992
22003
  }
21993
22004
  function getMessageMarkers(action) {
21994
- var _action$payload4, messageId, channelId, deliveryStatus, sceytChatClient, messageMarkerListQueryBuilder, messageMarkerListQuery, messageMarkers, _t31;
22005
+ var _action$payload4, messageId, channelId, deliveryStatus, sceytChatClient, messageMarkerListQueryBuilder, messageMarkerListQuery, messageMarkers, _t29;
21995
22006
  return _regenerator().w(function (_context21) {
21996
22007
  while (1) switch (_context21.p = _context21.n) {
21997
22008
  case 0:
@@ -22021,8 +22032,8 @@ function getMessageMarkers(action) {
22021
22032
  break;
22022
22033
  case 5:
22023
22034
  _context21.p = 5;
22024
- _t31 = _context21.v;
22025
- log.error('error in get message markers', _t31);
22035
+ _t29 = _context21.v;
22036
+ log.error('error in get message markers', _t29);
22026
22037
  case 6:
22027
22038
  _context21.p = 6;
22028
22039
  _context21.n = 7;
@@ -22138,7 +22149,7 @@ function updateMessageOptimisticallyForAddPollVote(channelId, message, vote) {
22138
22149
  }, _marked18$1);
22139
22150
  }
22140
22151
  function addPollVote(action) {
22141
- var payload, channelId, pollId, optionId, message, isResend, sceytChatClient, _user$presence2, user, vote, pendingAction, conflictCheck, channel, _Object$values, _store$getState$Messa, _currentMessage$pollD, _currentMessage$pollD2, _currentMessage$pollD3, currentMessage, hasNext, obj, _t32;
22152
+ var payload, channelId, pollId, optionId, message, isResend, sceytChatClient, _user$presence2, user, vote, pendingAction, conflictCheck, channel, _Object$values, _store$getState$Messa, _currentMessage$pollD, _currentMessage$pollD2, _currentMessage$pollD3, currentMessage, hasNext, obj, _t30;
22142
22153
  return _regenerator().w(function (_context24) {
22143
22154
  while (1) switch (_context24.p = _context24.n) {
22144
22155
  case 0:
@@ -22230,8 +22241,8 @@ function addPollVote(action) {
22230
22241
  break;
22231
22242
  case 7:
22232
22243
  _context24.p = 7;
22233
- _t32 = _context24.v;
22234
- log.error('error in add poll vote', _t32);
22244
+ _t30 = _context24.v;
22245
+ log.error('error in add poll vote', _t30);
22235
22246
  case 8:
22236
22247
  return _context24.a(2);
22237
22248
  }
@@ -22315,7 +22326,7 @@ function updateMessageOptimisticallyForDeletePollVote(channelId, message, vote)
22315
22326
  }, _marked21$1);
22316
22327
  }
22317
22328
  function deletePollVote(action) {
22318
- var payload, channelId, pollId, optionId, message, isResend, sceytChatClient, _message$pollDetails1, _message$pollDetails10, _message$pollDetails11, vote, pendingAction, conflictCheck, channel, _Object$values2, _currentMessage$pollD4, _currentMessage$pollD5, _currentMessage$pollD6, currentMessage, obj, _t33;
22329
+ var payload, channelId, pollId, optionId, message, isResend, sceytChatClient, _message$pollDetails1, _message$pollDetails10, _message$pollDetails11, vote, pendingAction, conflictCheck, channel, _Object$values2, _currentMessage$pollD4, _currentMessage$pollD5, _currentMessage$pollD6, currentMessage, obj, _t31;
22319
22330
  return _regenerator().w(function (_context27) {
22320
22331
  while (1) switch (_context27.p = _context27.n) {
22321
22332
  case 0:
@@ -22393,8 +22404,8 @@ function deletePollVote(action) {
22393
22404
  break;
22394
22405
  case 8:
22395
22406
  _context27.p = 8;
22396
- _t33 = _context27.v;
22397
- log.error('error in delete poll vote', _t33);
22407
+ _t31 = _context27.v;
22408
+ log.error('error in delete poll vote', _t31);
22398
22409
  case 9:
22399
22410
  return _context27.a(2);
22400
22411
  }
@@ -22472,7 +22483,7 @@ function updateMessageOptimisticallyForClosePoll(channelId, message) {
22472
22483
  }, _marked24$1);
22473
22484
  }
22474
22485
  function closePoll(action) {
22475
- var payload, channelId, pollId, message, sceytChatClient, connectionState, _t34;
22486
+ var payload, channelId, pollId, message, sceytChatClient, connectionState, _t32;
22476
22487
  return _regenerator().w(function (_context30) {
22477
22488
  while (1) switch (_context30.p = _context30.n) {
22478
22489
  case 0:
@@ -22505,8 +22516,8 @@ function closePoll(action) {
22505
22516
  break;
22506
22517
  case 4:
22507
22518
  _context30.p = 4;
22508
- _t34 = _context30.v;
22509
- log.error('error in close poll', _t34);
22519
+ _t32 = _context30.v;
22520
+ log.error('error in close poll', _t32);
22510
22521
  case 5:
22511
22522
  return _context30.a(2);
22512
22523
  }
@@ -22595,7 +22606,7 @@ function updateMessageOptimisticallyForRetractPollVote(channelId, message, objs)
22595
22606
  }, _marked27$1);
22596
22607
  }
22597
22608
  function retractPollVote(action) {
22598
- var payload, channelId, pollId, message, isResend, sceytChatClient, connectionState, objs, _iterator4, _step4, _message$pollDetails12, _message$pollDetails13, vote, _t35;
22609
+ var payload, channelId, pollId, message, isResend, sceytChatClient, connectionState, objs, _iterator4, _step4, _message$pollDetails12, _message$pollDetails13, vote, _t33;
22599
22610
  return _regenerator().w(function (_context33) {
22600
22611
  while (1) switch (_context33.p = _context33.n) {
22601
22612
  case 0:
@@ -22637,15 +22648,15 @@ function retractPollVote(action) {
22637
22648
  break;
22638
22649
  case 4:
22639
22650
  _context33.p = 4;
22640
- _t35 = _context33.v;
22641
- log.error('error in retract poll vote', _t35);
22651
+ _t33 = _context33.v;
22652
+ log.error('error in retract poll vote', _t33);
22642
22653
  case 5:
22643
22654
  return _context33.a(2);
22644
22655
  }
22645
22656
  }, _marked28$1, null, [[0, 4]]);
22646
22657
  }
22647
22658
  function resendPendingPollActions(action) {
22648
- var payload, connectionState, sceytChatClient, pendingPollActionsMap, pendingPollActionsMapCopy, _t36;
22659
+ var payload, connectionState, sceytChatClient, pendingPollActionsMap, pendingPollActionsMapCopy, _t34;
22649
22660
  return _regenerator().w(function (_context34) {
22650
22661
  while (1) switch (_context34.p = _context34.n) {
22651
22662
  case 0:
@@ -22694,15 +22705,15 @@ function resendPendingPollActions(action) {
22694
22705
  break;
22695
22706
  case 2:
22696
22707
  _context34.p = 2;
22697
- _t36 = _context34.v;
22698
- log.error('error in resend pending poll actions', _t36);
22708
+ _t34 = _context34.v;
22709
+ log.error('error in resend pending poll actions', _t34);
22699
22710
  case 3:
22700
22711
  return _context34.a(2);
22701
22712
  }
22702
22713
  }, _marked29$1, null, [[0, 2]]);
22703
22714
  }
22704
22715
  function getPollVotes(action) {
22705
- var payload, messageId, pollId, optionId, limit, key, SceytChatClient, queryBuilder, pollVotesQuery, result, formattedVotes, _t37;
22716
+ var payload, messageId, pollId, optionId, limit, key, SceytChatClient, queryBuilder, pollVotesQuery, result, formattedVotes, _t35;
22706
22717
  return _regenerator().w(function (_context35) {
22707
22718
  while (1) switch (_context35.p = _context35.n) {
22708
22719
  case 0:
@@ -22768,8 +22779,8 @@ function getPollVotes(action) {
22768
22779
  break;
22769
22780
  case 7:
22770
22781
  _context35.p = 7;
22771
- _t37 = _context35.v;
22772
- log.error('ERROR in get poll votes', _t37);
22782
+ _t35 = _context35.v;
22783
+ log.error('ERROR in get poll votes', _t35);
22773
22784
  _context35.n = 8;
22774
22785
  return put(setPollVotesLoadingStateAC(action.payload.pollId, action.payload.optionId, LOADING_STATE.LOADED));
22775
22786
  case 8:
@@ -22778,7 +22789,7 @@ function getPollVotes(action) {
22778
22789
  }, _marked30$1, null, [[0, 7]]);
22779
22790
  }
22780
22791
  function loadMorePollVotes(action) {
22781
- var payload, pollId, optionId, limit, key, pollVotesQuery, result, formattedVotes, _t38;
22792
+ var payload, pollId, optionId, limit, key, pollVotesQuery, result, formattedVotes, _t36;
22782
22793
  return _regenerator().w(function (_context36) {
22783
22794
  while (1) switch (_context36.p = _context36.n) {
22784
22795
  case 0:
@@ -22836,8 +22847,8 @@ function loadMorePollVotes(action) {
22836
22847
  break;
22837
22848
  case 6:
22838
22849
  _context36.p = 6;
22839
- _t38 = _context36.v;
22840
- log.error('ERROR in load more poll votes', _t38);
22850
+ _t36 = _context36.v;
22851
+ log.error('ERROR in load more poll votes', _t36);
22841
22852
  _context36.n = 7;
22842
22853
  return put(setPollVotesLoadingStateAC(action.payload.pollId, action.payload.optionId, LOADING_STATE.LOADED));
22843
22854
  case 7:
@@ -28696,6 +28707,9 @@ var pollVotesLoadingStateSelector = function pollVotesLoadingStateSelector(store
28696
28707
  var unreadScrollToSelector = function unreadScrollToSelector(store) {
28697
28708
  return store.MessageReducer.unreadScrollTo;
28698
28709
  };
28710
+ var unreadMessageIdSelector = function unreadMessageIdSelector(store) {
28711
+ return store.MessageReducer.unreadMessageId;
28712
+ };
28699
28713
 
28700
28714
  var _path$v;
28701
28715
  function _extends$w() {
@@ -39250,42 +39264,40 @@ var MessageList = function MessageList(_ref2) {
39250
39264
  var showScrollToNewMessageButton = useSelector(showScrollToNewMessageButtonSelector, shallowEqual);
39251
39265
  var unreadScrollTo = useSelector(unreadScrollToSelector, shallowEqual);
39252
39266
  var messages = useSelector(activeChannelMessagesSelector, shallowEqual) || [];
39253
- var _useState2 = useState(''),
39254
- unreadMessageId = _useState2[0],
39255
- setUnreadMessageId = _useState2[1];
39267
+ var unreadMessageId = useSelector(unreadMessageIdSelector, shallowEqual);
39268
+ var _useState2 = useState(null),
39269
+ mediaFile = _useState2[0],
39270
+ setMediaFile = _useState2[1];
39256
39271
  var _useState3 = useState(null),
39257
- mediaFile = _useState3[0],
39258
- setMediaFile = _useState3[1];
39272
+ isDragging = _useState3[0],
39273
+ setIsDragging = _useState3[1];
39259
39274
  var _useState4 = useState(null),
39260
- isDragging = _useState4[0],
39261
- setIsDragging = _useState4[1];
39262
- var _useState5 = useState(null),
39263
- showTopDate = _useState5[0],
39264
- setShowTopDate = _useState5[1];
39275
+ showTopDate = _useState4[0],
39276
+ setShowTopDate = _useState4[1];
39277
+ var _useState5 = useState(false),
39278
+ stopScrolling = _useState5[0],
39279
+ setStopScrolling = _useState5[1];
39265
39280
  var _useState6 = useState(false),
39266
- stopScrolling = _useState6[0],
39267
- setStopScrolling = _useState6[1];
39268
- var _useState7 = useState(false),
39269
- isScrolling = _useState7[0],
39270
- setIsScrolling = _useState7[1];
39281
+ isScrolling = _useState6[0],
39282
+ setIsScrolling = _useState6[1];
39271
39283
  var hideTopDateTimeout = useRef(null);
39272
- var _useState8 = useState(''),
39273
- lastVisibleMessageId = _useState8[0],
39274
- _setLastVisibleMessageId = _useState8[1];
39275
- var _useState9 = useState(null),
39276
- scrollToReply = _useState9[0],
39277
- setScrollToReply = _useState9[1];
39278
- var _useState0 = useState(0),
39279
- previousScrollTop = _useState0[0],
39280
- setPreviousScrollTop = _useState0[1];
39281
- var _useState1 = useState(false),
39282
- shouldPreserveScroll = _useState1[0],
39283
- setShouldPreserveScroll = _useState1[1];
39284
+ var _useState7 = useState(''),
39285
+ lastVisibleMessageId = _useState7[0],
39286
+ _setLastVisibleMessageId = _useState7[1];
39287
+ var _useState8 = useState(null),
39288
+ scrollToReply = _useState8[0],
39289
+ setScrollToReply = _useState8[1];
39290
+ var _useState9 = useState(0),
39291
+ previousScrollTop = _useState9[0],
39292
+ setPreviousScrollTop = _useState9[1];
39293
+ var _useState0 = useState(false),
39294
+ shouldPreserveScroll = _useState0[0],
39295
+ setShouldPreserveScroll = _useState0[1];
39284
39296
  var messageForReply = {};
39285
39297
  var attachmentsSelected = false;
39286
- var _useState10 = useState(''),
39287
- topDateLabel = _useState10[0],
39288
- setTopDateLabel = _useState10[1];
39298
+ var _useState1 = useState(''),
39299
+ topDateLabel = _useState1[0],
39300
+ setTopDateLabel = _useState1[1];
39289
39301
  var scrollRef = useRef(null);
39290
39302
  var loadFromServerRef = useRef(false);
39291
39303
  var loadDirectionRef = useRef('');
@@ -39620,7 +39632,7 @@ var MessageList = function MessageList(_ref2) {
39620
39632
  var visibleMessagesIds = Object.keys(visibleMessages);
39621
39633
  var messageId = visibleMessagesIds[visibleMessagesIds.length - 1];
39622
39634
  dispatch(getMessagesAC(channel, undefined, messageId, undefined, undefined, 'instant'));
39623
- setUnreadMessageId(messageId);
39635
+ dispatch(setUnreadMessageIdAC(messageId));
39624
39636
  } else {
39625
39637
  if (!channel.isLinkedChannel) {
39626
39638
  clearVisibleMessagesMap();
@@ -39630,9 +39642,9 @@ var MessageList = function MessageList(_ref2) {
39630
39642
  }
39631
39643
  if (channel.id) {
39632
39644
  if (channel.newMessageCount && channel.newMessageCount > 0) {
39633
- setUnreadMessageId(channel.lastDisplayedMessageId);
39645
+ dispatch(setUnreadMessageIdAC(channel.lastDisplayedMessageId));
39634
39646
  } else {
39635
- setUnreadMessageId('');
39647
+ dispatch(setUnreadMessageIdAC(''));
39636
39648
  }
39637
39649
  }
39638
39650
  }
@@ -39656,7 +39668,7 @@ var MessageList = function MessageList(_ref2) {
39656
39668
  if (messages.length > 0 && hiddenMessagesProperties !== null && hiddenMessagesProperties !== void 0 && hiddenMessagesProperties.includes(HiddenMessageProperty.hideAfterSendMessage)) {
39657
39669
  var lastMessage = messages[messages.length - 1];
39658
39670
  if (lastMessage.user.id === user.id) {
39659
- setUnreadMessageId('');
39671
+ dispatch(setUnreadMessageIdAC(''));
39660
39672
  }
39661
39673
  }
39662
39674
  }, [messages, hiddenMessagesProperties, user === null || user === void 0 ? void 0 : user.id]);
@@ -39777,12 +39789,14 @@ var MessageList = function MessageList(_ref2) {
39777
39789
  useEffect(function () {
39778
39790
  log.info('connection status is changed.. .... ', connectionStatus, 'channel ... ', channel);
39779
39791
  if (connectionStatus === CONNECTION_STATUS.CONNECTED && channel !== null && channel !== void 0 && channel.id) {
39792
+ var _channel$lastMessage4;
39780
39793
  loadingRef.current = false;
39781
39794
  prevDisableRef.current = false;
39782
39795
  nextDisableRef.current = false;
39783
39796
  clearMessagesMap();
39784
39797
  removeAllMessages();
39785
- dispatch(getMessagesAC(channel, false, lastVisibleMessageId, 0, false, 'instant', false, true));
39798
+ var isWithLastVisibleMessageId = lastVisibleMessageId !== ((_channel$lastMessage4 = channel.lastMessage) === null || _channel$lastMessage4 === void 0 ? void 0 : _channel$lastMessage4.id) && lastVisibleMessageId ? lastVisibleMessageId : '';
39799
+ dispatch(getMessagesAC(channel, false, isWithLastVisibleMessageId, 0, false, 'instant', false, true));
39786
39800
  }
39787
39801
  }, [connectionStatus]);
39788
39802
  useEffect(function () {