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

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/index.js CHANGED
@@ -9411,7 +9411,7 @@ var channelSlice = createSlice({
9411
9411
  }
9412
9412
  },
9413
9413
  setChannels: function setChannels(state, action) {
9414
- state.channels = [].concat(action.payload.channels);
9414
+ state.channels = sortChannelByLastMessage([].concat(action.payload.channels));
9415
9415
  },
9416
9416
  setSearchedChannels: function setSearchedChannels(state, action) {
9417
9417
  state.searchedChannels = action.payload.searchedChannels;
@@ -9584,7 +9584,7 @@ var channelSlice = createSlice({
9584
9584
  })
9585
9585
  });
9586
9586
  }
9587
- state.channels = [].concat(updatedChannels);
9587
+ state.channels = sortChannelByLastMessage([].concat(updatedChannels));
9588
9588
  },
9589
9589
  updateChannelLastMessage: function updateChannelLastMessage(state, action) {
9590
9590
  var _action$payload5 = action.payload,
@@ -9604,6 +9604,7 @@ var channelSlice = createSlice({
9604
9604
  }
9605
9605
  return chan;
9606
9606
  });
9607
+ state.channels = sortChannelByLastMessage(state.channels);
9607
9608
  }
9608
9609
  } else {
9609
9610
  var updatedChannels = state.channels.filter(function (chan) {
@@ -9633,6 +9634,7 @@ var channelSlice = createSlice({
9633
9634
  }
9634
9635
  return chan;
9635
9636
  });
9637
+ state.channels = sortChannelByLastMessage(state.channels);
9636
9638
  },
9637
9639
  setChannelInfoOpenClose: function setChannelInfoOpenClose(state, action) {
9638
9640
  state.channelInfoIsOpen = action.payload.open;
@@ -10847,6 +10849,11 @@ function updatePendingMessageAC(channelId, messageId, updatedMessage) {
10847
10849
  updatedMessage: updatedMessage
10848
10850
  });
10849
10851
  }
10852
+ function setUnreadMessageIdAC(messageId) {
10853
+ return setUnreadMessageId({
10854
+ messageId: messageId
10855
+ });
10856
+ }
10850
10857
 
10851
10858
  var MESSAGES_MAX_PAGE_COUNT = 80;
10852
10859
  var MESSAGES_MAX_LENGTH = 50;
@@ -11367,6 +11374,31 @@ var setPendingPollAction = function setPendingPollAction(action) {
11367
11374
  }
11368
11375
  store.dispatch(setPendingPollActionsMapAC(messageId, action));
11369
11376
  };
11377
+ var getCenterTwoMessages = function getCenterTwoMessages(messages) {
11378
+ var mid = Math.floor(messages.length / 2);
11379
+ if (messages.length % 2 === 0) {
11380
+ return {
11381
+ mid1: {
11382
+ messageId: messages[mid - 1].id,
11383
+ index: mid - 1
11384
+ },
11385
+ mid2: {
11386
+ messageId: messages[mid].id,
11387
+ index: mid
11388
+ }
11389
+ };
11390
+ }
11391
+ return {
11392
+ mid1: {
11393
+ messageId: messages[mid - 1].id,
11394
+ index: mid - 1
11395
+ },
11396
+ mid2: {
11397
+ messageId: messages[mid + 1].id,
11398
+ index: mid + 1
11399
+ }
11400
+ };
11401
+ };
11370
11402
 
11371
11403
  var initialState$1 = {
11372
11404
  messagesLoadingState: null,
@@ -11413,7 +11445,8 @@ var initialState$1 = {
11413
11445
  pollVotesInitialCount: null,
11414
11446
  pendingPollActions: {},
11415
11447
  pendingMessagesMap: {},
11416
- unreadScrollTo: true
11448
+ unreadScrollTo: true,
11449
+ unreadMessageId: ''
11417
11450
  };
11418
11451
  var messageSlice = createSlice({
11419
11452
  name: 'messages',
@@ -11989,6 +12022,9 @@ var messageSlice = createSlice({
11989
12022
  },
11990
12023
  clearPendingMessagesMap: function clearPendingMessagesMap(state) {
11991
12024
  state.pendingMessagesMap = {};
12025
+ },
12026
+ setUnreadMessageId: function setUnreadMessageId(state, action) {
12027
+ state.unreadMessageId = action.payload.messageId;
11992
12028
  }
11993
12029
  },
11994
12030
  extraReducers: function extraReducers(builder) {
@@ -12053,7 +12089,8 @@ var _messageSlice$actions = messageSlice.actions,
12053
12089
  setPendingMessage$1 = _messageSlice$actions.setPendingMessage,
12054
12090
  removePendingMessage = _messageSlice$actions.removePendingMessage,
12055
12091
  updatePendingMessage = _messageSlice$actions.updatePendingMessage,
12056
- updatePendingPollAction = _messageSlice$actions.updatePendingPollAction;
12092
+ updatePendingPollAction = _messageSlice$actions.updatePendingPollAction,
12093
+ setUnreadMessageId = _messageSlice$actions.setUnreadMessageId;
12057
12094
  var MessageReducer = messageSlice.reducer;
12058
12095
 
12059
12096
  var initialState$2 = {
@@ -17491,7 +17528,7 @@ function markMessagesRead(action) {
17491
17528
  }, _marked9, null, [[2, 9]]);
17492
17529
  }
17493
17530
  function markVoiceMessageAsPlayed(action) {
17494
- var payload, channelId, messageIds, channel, _t10;
17531
+ var payload, channelId, messageIds, channel, messageListMarker, _iterator6, _step6, messageId, updateParams, _t10;
17495
17532
  return _regenerator().w(function (_context0) {
17496
17533
  while (1) switch (_context0.p = _context0.n) {
17497
17534
  case 0:
@@ -17509,25 +17546,54 @@ function markVoiceMessageAsPlayed(action) {
17509
17546
  }
17510
17547
  }
17511
17548
  if (!channel) {
17512
- _context0.n = 3;
17549
+ _context0.n = 7;
17513
17550
  break;
17514
17551
  }
17515
17552
  _context0.n = 3;
17516
17553
  return effects.call(channel.markVoiceMessagesAsPlayed, messageIds);
17517
17554
  case 3:
17555
+ messageListMarker = _context0.v;
17556
+ _iterator6 = _createForOfIteratorHelperLoose(messageListMarker.messageIds);
17557
+ case 4:
17558
+ if ((_step6 = _iterator6()).done) {
17559
+ _context0.n = 7;
17560
+ break;
17561
+ }
17562
+ messageId = _step6.value;
17563
+ updateParams = {
17564
+ deliveryStatus: MESSAGE_DELIVERY_STATUS.PLAYED,
17565
+ userMarkers: [{
17566
+ user: messageListMarker.user,
17567
+ createdAt: messageListMarker.createdAt,
17568
+ messageId: messageId,
17569
+ name: MESSAGE_DELIVERY_STATUS.READ
17570
+ }]
17571
+ };
17518
17572
  _context0.n = 5;
17573
+ return effects.put(updateMessageAC(messageId, updateParams));
17574
+ case 5:
17575
+ updateMessageOnMap(channel.id, {
17576
+ messageId: messageId,
17577
+ params: updateParams
17578
+ });
17579
+ updateMessageOnAllMessages(messageId, updateParams);
17580
+ case 6:
17581
+ _context0.n = 4;
17519
17582
  break;
17520
- case 4:
17521
- _context0.p = 4;
17583
+ case 7:
17584
+ _context0.n = 9;
17585
+ break;
17586
+ case 8:
17587
+ _context0.p = 8;
17522
17588
  _t10 = _context0.v;
17523
17589
  log.error(_t10, 'Error on mark voice messages read');
17524
- case 5:
17590
+ case 9:
17525
17591
  return _context0.a(2);
17526
17592
  }
17527
- }, _marked0, null, [[1, 4]]);
17593
+ }, _marked0, null, [[1, 8]]);
17528
17594
  }
17529
17595
  function markMessagesDelivered(action) {
17530
- var payload, channelId, messageIds, channel, _t11;
17596
+ var payload, channelId, messageIds, channel, messageListMarker, _iterator7, _step7, messageId, updateParams, _t11;
17531
17597
  return _regenerator().w(function (_context1) {
17532
17598
  while (1) switch (_context1.p = _context1.n) {
17533
17599
  case 0:
@@ -17545,23 +17611,52 @@ function markMessagesDelivered(action) {
17545
17611
  }
17546
17612
  }
17547
17613
  if (!channel) {
17548
- _context1.n = 3;
17614
+ _context1.n = 7;
17549
17615
  break;
17550
17616
  }
17551
17617
  log.info('send delivered marker ', messageIds);
17552
17618
  _context1.n = 3;
17553
17619
  return effects.call(channel.markMessagesAsReceived, messageIds);
17554
17620
  case 3:
17621
+ messageListMarker = _context1.v;
17622
+ _iterator7 = _createForOfIteratorHelperLoose(messageListMarker.messageIds);
17623
+ case 4:
17624
+ if ((_step7 = _iterator7()).done) {
17625
+ _context1.n = 7;
17626
+ break;
17627
+ }
17628
+ messageId = _step7.value;
17629
+ updateParams = {
17630
+ deliveryStatus: MESSAGE_DELIVERY_STATUS.DELIVERED,
17631
+ userMarkers: [{
17632
+ user: messageListMarker.user,
17633
+ createdAt: messageListMarker.createdAt,
17634
+ messageId: messageId,
17635
+ name: MESSAGE_DELIVERY_STATUS.DELIVERED
17636
+ }]
17637
+ };
17555
17638
  _context1.n = 5;
17639
+ return effects.put(updateMessageAC(messageId, updateParams));
17640
+ case 5:
17641
+ updateMessageOnMap(channel.id, {
17642
+ messageId: messageId,
17643
+ params: updateParams
17644
+ });
17645
+ updateMessageOnAllMessages(messageId, updateParams);
17646
+ case 6:
17647
+ _context1.n = 4;
17556
17648
  break;
17557
- case 4:
17558
- _context1.p = 4;
17649
+ case 7:
17650
+ _context1.n = 9;
17651
+ break;
17652
+ case 8:
17653
+ _context1.p = 8;
17559
17654
  _t11 = _context1.v;
17560
17655
  log.error(_t11, 'Error on mark messages delivered');
17561
- case 5:
17656
+ case 9:
17562
17657
  return _context1.a(2);
17563
17658
  }
17564
- }, _marked1, null, [[1, 4]]);
17659
+ }, _marked1, null, [[1, 8]]);
17565
17660
  }
17566
17661
  function switchChannel(action) {
17567
17662
  var payload, channel, updateActiveChannel, channelToSwitch, existingChannel, addChannel, _SceytChatClient5, fetchedChannel, channelFromMap, currentActiveChannel, _t12;
@@ -17959,18 +18054,18 @@ function leaveChannel(action) {
17959
18054
  }, _marked18, null, [[0, 6]]);
17960
18055
  }
17961
18056
  function deletePendingDeleteChannels() {
17962
- var pendingDeleteChannels, _iterator6, _step6, channel, resendableError, _t20;
18057
+ var pendingDeleteChannels, _iterator8, _step8, channel, resendableError, _t20;
17963
18058
  return _regenerator().w(function (_context19) {
17964
18059
  while (1) switch (_context19.p = _context19.n) {
17965
18060
  case 0:
17966
18061
  pendingDeleteChannels = getPendingDeleteChannels();
17967
- _iterator6 = _createForOfIteratorHelperLoose(pendingDeleteChannels);
18062
+ _iterator8 = _createForOfIteratorHelperLoose(pendingDeleteChannels);
17968
18063
  case 1:
17969
- if ((_step6 = _iterator6()).done) {
18064
+ if ((_step8 = _iterator8()).done) {
17970
18065
  _context19.n = 9;
17971
18066
  break;
17972
18067
  }
17973
- channel = _step6.value;
18068
+ channel = _step8.value;
17974
18069
  _context19.p = 2;
17975
18070
  _context19.n = 3;
17976
18071
  return effects.call(channel["delete"]);
@@ -19699,7 +19794,7 @@ var updateMessage$1 = function updateMessage(actionType, pending, channelId, scr
19699
19794
  break;
19700
19795
  }
19701
19796
  _context.n = 7;
19702
- return effects.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));
19797
+ return effects.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));
19703
19798
  case 7:
19704
19799
  return _context.a(2);
19705
19800
  }
@@ -20002,22 +20097,10 @@ function sendMessage(action) {
20002
20097
  return attachment;
20003
20098
  });
20004
20099
  }
20005
- messageUpdateData = {
20006
- id: messageResponse.id,
20007
- body: messageResponse.body,
20008
- type: messageResponse.type,
20009
- state: messageResponse.state,
20010
- displayCount: messageResponse.displayCount,
20011
- deliveryStatus: messageResponse.deliveryStatus,
20100
+ messageUpdateData = _extends({}, messageResponse, {
20012
20101
  attachments: attachmentsToUpdate,
20013
- mentionedUsers: messageResponse.mentionedUsers,
20014
- bodyAttributes: messageResponse.bodyAttributes,
20015
- metadata: messageResponse.metadata,
20016
- parentMessage: messageResponse.parentMessage,
20017
- repliedInThread: messageResponse.repliedInThread,
20018
- createdAt: messageResponse.createdAt,
20019
20102
  channelId: channel.id
20020
- };
20103
+ });
20021
20104
  stringifiedMessageUpdateData = JSON.parse(JSON.stringify(messageResponse));
20022
20105
  activeChannelId = getActiveChannelId();
20023
20106
  if (!(activeChannelId === channel.id)) {
@@ -20130,7 +20213,7 @@ function sendMessage(action) {
20130
20213
  }, _marked$3, null, [[1, 16, 17, 19]]);
20131
20214
  }
20132
20215
  function sendTextMessage(action) {
20133
- 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;
20216
+ 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;
20134
20217
  return _regenerator().w(function (_context5) {
20135
20218
  while (1) switch (_context5.p = _context5.n) {
20136
20219
  case 0:
@@ -20240,23 +20323,9 @@ function sendTextMessage(action) {
20240
20323
  case 11:
20241
20324
  messageResponse = _context5.v;
20242
20325
  case 12:
20243
- messageUpdateData = {
20244
- id: messageResponse.id,
20245
- body: messageResponse.body,
20246
- type: messageResponse.type,
20247
- state: messageResponse.state,
20248
- bodyAttributes: messageResponse.bodyAttributes,
20249
- displayCount: messageResponse.displayCount,
20250
- deliveryStatus: messageResponse.deliveryStatus,
20251
- attachments: messageResponse.attachments,
20252
- mentionedUsers: messageResponse.mentionedUsers,
20253
- metadata: messageResponse.metadata,
20254
- parentMessage: messageResponse.parentMessage,
20255
- repliedInThread: messageResponse.repliedInThread,
20256
- createdAt: messageResponse.createdAt,
20257
- pollDetails: (_messageResponse = messageResponse) === null || _messageResponse === void 0 ? void 0 : _messageResponse.pollDetails,
20326
+ messageUpdateData = _extends({}, messageResponse, {
20258
20327
  channelId: channel.id
20259
- };
20328
+ });
20260
20329
  activeChannelId = getActiveChannelId();
20261
20330
  if (!(activeChannelId === channel.id)) {
20262
20331
  _context5.n = 13;
@@ -20479,20 +20548,9 @@ function forwardMessage(action) {
20479
20548
  return effects.call(channel.sendMessage, messageToSend);
20480
20549
  case 10:
20481
20550
  messageResponse = _context6.v;
20482
- messageUpdateData = {
20483
- id: messageResponse.id,
20484
- type: messageResponse.type,
20485
- state: messageResponse.state,
20486
- displayCount: messageResponse.displayCount,
20487
- deliveryStatus: messageResponse.deliveryStatus,
20488
- attachments: messageResponse.attachments,
20489
- mentionedUsers: messageResponse.mentionedUsers,
20490
- metadata: messageResponse.metadata,
20491
- parentMessage: messageResponse.parentMessage,
20492
- repliedInThread: messageResponse.repliedInThread,
20493
- createdAt: messageResponse.createdAt,
20551
+ messageUpdateData = _extends({}, messageResponse, {
20494
20552
  channelId: channel.id
20495
- };
20553
+ });
20496
20554
  if (!(channelId === activeChannelId)) {
20497
20555
  _context6.n = 12;
20498
20556
  break;
@@ -20894,7 +20952,7 @@ var getFilteredPendingMessages = function getFilteredPendingMessages(messages) {
20894
20952
  return filteredPendingMessages;
20895
20953
  };
20896
20954
  function getMessagesQuery(action) {
20897
- 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;
20955
+ 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;
20898
20956
  return _regenerator().w(function (_context10) {
20899
20957
  while (1) switch (_context10.p = _context10.n) {
20900
20958
  case 0:
@@ -20903,29 +20961,69 @@ function getMessagesQuery(action) {
20903
20961
  return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
20904
20962
  case 1:
20905
20963
  _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;
20964
+ channelNewMessageCount = (channel === null || channel === void 0 ? void 0 : channel.newMessageCount) || 0;
20906
20965
  connectionState = store.getState().UserReducer.connectionStatus;
20907
20966
  if (!(channel !== null && channel !== void 0 && channel.id && !(channel !== null && channel !== void 0 && channel.isMockChannel))) {
20908
- _context10.n = 87;
20967
+ _context10.n = 77;
20909
20968
  break;
20910
20969
  }
20911
20970
  SceytChatClient = getClient();
20971
+ if (!networkChanged) {
20972
+ _context10.n = 8;
20973
+ break;
20974
+ }
20975
+ _context10.p = 2;
20976
+ _context10.n = 3;
20977
+ return effects.call(SceytChatClient.getChannel, channel.id, true);
20978
+ case 3:
20979
+ _updatedChannel = _context10.v;
20980
+ if (!(_updatedChannel && _updatedChannel !== null && _updatedChannel !== void 0 && _updatedChannel.id)) {
20981
+ _context10.n = 6;
20982
+ break;
20983
+ }
20984
+ _context10.n = 4;
20985
+ return effects.put(updateChannelDataAC(channel.id, _extends({}, _updatedChannel)));
20986
+ case 4:
20987
+ channelNewMessageCount = (_updatedChannel === null || _updatedChannel === void 0 ? void 0 : _updatedChannel.newMessageCount) || 0;
20988
+ if (!(channelNewMessageCount !== channel.newMessageCount)) {
20989
+ _context10.n = 6;
20990
+ break;
20991
+ }
20992
+ _context10.n = 5;
20993
+ return effects.put(updateChannelDataAC(channel.id, {
20994
+ newMessageCount: channelNewMessageCount
20995
+ }));
20996
+ case 5:
20997
+ updateChannelOnAllChannels(channel.id, {
20998
+ newMessageCount: channelNewMessageCount
20999
+ });
21000
+ _context10.n = 6;
21001
+ return effects.put(setUnreadMessageIdAC(channel.lastDisplayedMessageId));
21002
+ case 6:
21003
+ _context10.n = 8;
21004
+ break;
21005
+ case 7:
21006
+ _context10.p = 7;
21007
+ _t0 = _context10.v;
21008
+ log.error('error to get updated channel in get messages query', _t0);
21009
+ case 8:
20912
21010
  messageQueryBuilder = new SceytChatClient.MessageListQueryBuilder(channel.id);
20913
21011
  messageQueryBuilder.limit(limit || MESSAGES_MAX_LENGTH);
20914
21012
  messageQueryBuilder.reverse(true);
20915
21013
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
20916
- _context10.n = 3;
21014
+ _context10.n = 10;
20917
21015
  break;
20918
21016
  }
20919
- _context10.n = 2;
21017
+ _context10.n = 9;
20920
21018
  return effects.call(messageQueryBuilder.build);
20921
- case 2:
20922
- _t0 = _context10.v;
20923
- _context10.n = 4;
21019
+ case 9:
21020
+ _t1 = _context10.v;
21021
+ _context10.n = 11;
20924
21022
  break;
20925
- case 3:
20926
- _t0 = null;
20927
- case 4:
20928
- messageQuery = _t0;
21023
+ case 10:
21024
+ _t1 = null;
21025
+ case 11:
21026
+ messageQuery = _t1;
20929
21027
  query.messageQuery = messageQuery;
20930
21028
  cachedMessages = Object.values(getMessagesFromMap(channel.id) || {}).sort(function (a, b) {
20931
21029
  return Number(a.id) - Number(b.id);
@@ -20935,161 +21033,126 @@ function getMessagesQuery(action) {
20935
21033
  hasNext: false
20936
21034
  };
20937
21035
  if (!loadWithLastMessage) {
20938
- _context10.n = 22;
21036
+ _context10.n = 29;
20939
21037
  break;
20940
21038
  }
20941
- if (!(channel.newMessageCount && channel.newMessageCount > 0)) {
20942
- _context10.n = 15;
21039
+ if (!(channelNewMessageCount && channelNewMessageCount > 0)) {
21040
+ _context10.n = 22;
20943
21041
  break;
20944
21042
  }
20945
21043
  setHasPrevCached(false);
20946
21044
  setAllMessages([]);
20947
21045
  messageQuery.limit = MESSAGES_MAX_LENGTH;
20948
21046
  if (!Number(channel.lastDisplayedMessageId)) {
20949
- _context10.n = 8;
21047
+ _context10.n = 15;
20950
21048
  break;
20951
21049
  }
20952
21050
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
20953
- _context10.n = 6;
21051
+ _context10.n = 13;
20954
21052
  break;
20955
21053
  }
20956
- _context10.n = 5;
21054
+ _context10.n = 12;
20957
21055
  return effects.call(messageQuery.loadNearMessageId, channel.lastDisplayedMessageId);
20958
- case 5:
20959
- _t1 = _context10.v;
20960
- _context10.n = 7;
21056
+ case 12:
21057
+ _t10 = _context10.v;
21058
+ _context10.n = 14;
20961
21059
  break;
20962
- case 6:
20963
- _t1 = {
21060
+ case 13:
21061
+ _t10 = {
20964
21062
  messages: [],
20965
21063
  hasNext: false
20966
21064
  };
20967
- case 7:
20968
- result = _t1;
20969
- _context10.n = 12;
21065
+ case 14:
21066
+ result = _t10;
21067
+ _context10.n = 19;
20970
21068
  break;
20971
- case 8:
21069
+ case 15:
20972
21070
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
20973
- _context10.n = 10;
21071
+ _context10.n = 17;
20974
21072
  break;
20975
21073
  }
20976
- _context10.n = 9;
21074
+ _context10.n = 16;
20977
21075
  return effects.call(messageQuery.loadPrevious);
20978
- case 9:
20979
- _t10 = _context10.v;
20980
- _context10.n = 11;
21076
+ case 16:
21077
+ _t11 = _context10.v;
21078
+ _context10.n = 18;
20981
21079
  break;
20982
- case 10:
20983
- _t10 = {
21080
+ case 17:
21081
+ _t11 = {
20984
21082
  messages: [],
20985
21083
  hasNext: false
20986
21084
  };
20987
- case 11:
20988
- result = _t10;
20989
- case 12:
20990
- _context10.n = 13;
20991
- return effects.put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
20992
- case 13:
20993
- 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);
20994
- setAllMessages(result.messages);
20995
- _context10.n = 14;
20996
- return effects.put(setMessagesHasPrevAC(true));
20997
- case 14:
20998
- _context10.n = 17;
20999
- break;
21000
- case 15:
21001
- result.messages = getFromAllMessagesByMessageId('', '', true);
21002
- _context10.n = 16;
21003
- return effects.put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21004
- case 16:
21005
- _context10.n = 17;
21006
- return effects.put(setMessagesHasPrevAC(true));
21007
- case 17:
21008
- _context10.n = 18;
21009
- return effects.put(setMessagesHasNextAC(false));
21010
21085
  case 18:
21011
- setHasNextCached(false);
21012
- if (!(messageId && scrollToMessage)) {
21013
- _context10.n = 21;
21014
- break;
21015
- }
21016
- if (!(channel.newMessageCount && channel.newMessageCount > 0)) {
21017
- _context10.n = 20;
21018
- break;
21019
- }
21020
- _context10.n = 19;
21021
- return effects.put(setScrollToMessagesAC(channel.lastDisplayedMessageId, highlight, behavior));
21086
+ result = _t11;
21022
21087
  case 19:
21023
- _context10.n = 21;
21024
- break;
21088
+ _context10.n = 20;
21089
+ return effects.put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21025
21090
  case 20:
21091
+ 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);
21092
+ setAllMessages(result.messages);
21026
21093
  _context10.n = 21;
21027
- return effects.put(scrollToNewMessageAC(true));
21094
+ return effects.put(setMessagesHasPrevAC(true));
21028
21095
  case 21:
21029
- _context10.n = 80;
21096
+ _context10.n = 24;
21030
21097
  break;
21031
21098
  case 22:
21032
- if (!messageId) {
21033
- _context10.n = 52;
21034
- break;
21035
- }
21036
- messages = store.getState().MessageReducer.activeChannelMessages;
21037
- centerMessageId = (_messages$Math$floor = messages[Math.floor(messages.length / 2)]) === null || _messages$Math$floor === void 0 ? void 0 : _messages$Math$floor.id;
21038
- loadWithMessageId = networkChanged && (messages === null || messages === void 0 ? void 0 : messages.length) > 0 ? centerMessageId : messageId;
21039
- allMessages = getAllMessages();
21040
- messageIndex = allMessages.findIndex(function (msg) {
21041
- return msg.id === loadWithMessageId;
21042
- });
21043
- maxLengthPart = MESSAGES_MAX_LENGTH / 2;
21044
- if (!(messageIndex >= maxLengthPart)) {
21045
- _context10.n = 25;
21046
- break;
21047
- }
21048
- result.messages = allMessages.slice(messageIndex - maxLengthPart, messageIndex + maxLengthPart);
21099
+ result.messages = getFromAllMessagesByMessageId('', '', true);
21049
21100
  _context10.n = 23;
21050
21101
  return effects.put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21051
21102
  case 23:
21052
- setHasPrevCached(messageIndex > maxLengthPart);
21053
- setHasNextCached(allMessages.length > maxLengthPart);
21054
21103
  _context10.n = 24;
21055
21104
  return effects.put(setMessagesHasPrevAC(true));
21056
21105
  case 24:
21057
- _context10.n = 48;
21058
- break;
21106
+ _context10.n = 25;
21107
+ return effects.put(setMessagesHasNextAC(false));
21059
21108
  case 25:
21060
- messageQuery.limit = MESSAGES_MAX_LENGTH;
21061
- log.info('load by message id from server ...............', loadWithMessageId);
21062
- if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21109
+ setHasNextCached(false);
21110
+ if (!(messageId && scrollToMessage)) {
21111
+ _context10.n = 28;
21112
+ break;
21113
+ }
21114
+ if (!(channelNewMessageCount && channelNewMessageCount > 0)) {
21063
21115
  _context10.n = 27;
21064
21116
  break;
21065
21117
  }
21066
21118
  _context10.n = 26;
21067
- return effects.call(messageQuery.loadNearMessageId, loadWithMessageId);
21119
+ return effects.put(setScrollToMessagesAC(channel.lastDisplayedMessageId, highlight, behavior));
21068
21120
  case 26:
21069
- _t11 = _context10.v;
21070
21121
  _context10.n = 28;
21071
21122
  break;
21072
21123
  case 27:
21073
- _t11 = {
21074
- messages: [],
21075
- hasNext: false
21076
- };
21124
+ _context10.n = 28;
21125
+ return effects.put(scrollToNewMessageAC(true));
21077
21126
  case 28:
21078
- result = _t11;
21079
- _context10.n = 29;
21080
- return effects.put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21127
+ _context10.n = 70;
21128
+ break;
21081
21129
  case 29:
21082
- if (!(result.messages.length === 50)) {
21083
- _context10.n = 47;
21130
+ if (!messageId) {
21131
+ _context10.n = 40;
21084
21132
  break;
21085
21133
  }
21086
- messageQuery.limit = (MESSAGES_MAX_PAGE_COUNT - 50) / 2;
21134
+ messages = store.getState().MessageReducer.activeChannelMessages;
21135
+ loadNextMessageId = '';
21136
+ loadPreviousMessageId = '';
21137
+ nextLoadLimit = MESSAGES_MAX_PAGE_COUNT / 2;
21138
+ previousLoadLimit = MESSAGES_MAX_PAGE_COUNT / 2;
21139
+ if (networkChanged) {
21140
+ centerMessageIndex = getCenterTwoMessages(messages);
21141
+ loadPreviousMessageId = centerMessageIndex.mid2.messageId;
21142
+ loadNextMessageId = centerMessageIndex.mid1.messageId;
21143
+ previousLoadLimit = centerMessageIndex.mid2.index;
21144
+ nextLoadLimit = messages.length - centerMessageIndex.mid1.index - 1;
21145
+ } else if (messageId) {
21146
+ loadPreviousMessageId = messageId;
21147
+ }
21148
+ messageQuery.limit = previousLoadLimit;
21149
+ log.info('load by message id from server ...............', messageId);
21087
21150
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21088
21151
  _context10.n = 31;
21089
21152
  break;
21090
21153
  }
21091
21154
  _context10.n = 30;
21092
- return effects.call(messageQuery.loadPreviousMessageId, result.messages[0].id);
21155
+ return effects.call(messageQuery.loadPreviousMessageId, loadPreviousMessageId);
21093
21156
  case 30:
21094
21157
  _t12 = _context10.v;
21095
21158
  _context10.n = 32;
@@ -21100,235 +21163,185 @@ function getMessagesQuery(action) {
21100
21163
  hasNext: false
21101
21164
  };
21102
21165
  case 32:
21103
- secondResult = _t12;
21104
- result.messages = [].concat(secondResult.messages, result.messages);
21105
- _context10.n = 33;
21106
- return effects.put(addMessagesAC(JSON.parse(JSON.stringify(secondResult.messages)), MESSAGE_LOAD_DIRECTION.PREV));
21107
- case 33:
21108
- messageQuery.limit = MESSAGES_MAX_PAGE_COUNT - 50 - secondResult.messages.length;
21166
+ firstResult = _t12;
21167
+ if (!networkChanged && firstResult.messages.length > 0) {
21168
+ loadNextMessageId = firstResult.messages[firstResult.messages.length - 1].id;
21169
+ } else if (!networkChanged && !firstResult.messages.length) {
21170
+ loadNextMessageId = '0';
21171
+ }
21109
21172
  messageQuery.reverse = false;
21173
+ messageQuery.limit = nextLoadLimit;
21110
21174
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21111
- _context10.n = 35;
21175
+ _context10.n = 34;
21112
21176
  break;
21113
21177
  }
21114
- _context10.n = 34;
21115
- return effects.call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
21116
- case 34:
21178
+ _context10.n = 33;
21179
+ return effects.call(messageQuery.loadNextMessageId, loadNextMessageId);
21180
+ case 33:
21117
21181
  _t13 = _context10.v;
21118
- _context10.n = 36;
21182
+ _context10.n = 35;
21119
21183
  break;
21120
- case 35:
21184
+ case 34:
21121
21185
  _t13 = {
21122
21186
  messages: [],
21123
21187
  hasNext: false
21124
21188
  };
21189
+ case 35:
21190
+ secondResult = _t13;
21191
+ result.messages = [].concat(firstResult.messages, secondResult.messages);
21192
+ _context10.n = 36;
21193
+ return effects.put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21125
21194
  case 36:
21126
- thirdResult = _t13;
21127
- result.messages = [].concat(result.messages, thirdResult.messages);
21128
- _context10.n = 37;
21129
- return effects.put(addMessagesAC(JSON.parse(JSON.stringify(thirdResult.messages)), MESSAGE_LOAD_DIRECTION.NEXT));
21130
- case 37:
21131
- if (!(secondResult.hasNext && !thirdResult.hasNext)) {
21132
- _context10.n = 42;
21133
- break;
21134
- }
21135
- messageQuery.limit = MESSAGES_MAX_PAGE_COUNT - 50 - secondResult.messages.length - result.messages.length;
21136
- if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21137
- _context10.n = 39;
21138
- break;
21139
- }
21140
- _context10.n = 38;
21141
- return effects.call(messageQuery.loadPreviousMessageId, result.messages[0].id);
21142
- case 38:
21143
- _t14 = _context10.v;
21144
- _context10.n = 40;
21145
- break;
21146
- case 39:
21147
- _t14 = {
21148
- messages: [],
21149
- hasNext: false
21150
- };
21151
- case 40:
21152
- fourthResult = _t14;
21153
- result.messages = [].concat(fourthResult.messages, result.messages);
21154
- _context10.n = 41;
21155
- return effects.put(addMessagesAC(JSON.parse(JSON.stringify(fourthResult.messages)), MESSAGE_LOAD_DIRECTION.PREV));
21156
- case 41:
21157
- _context10.n = 46;
21158
- break;
21159
- case 42:
21160
- if (!(!secondResult.hasNext && thirdResult.hasNext)) {
21161
- _context10.n = 46;
21162
- break;
21163
- }
21164
- messageQuery.limit = MESSAGES_MAX_PAGE_COUNT - 50 - secondResult.messages.length - result.messages.length;
21165
- if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21166
- _context10.n = 44;
21167
- break;
21168
- }
21169
- _context10.n = 43;
21170
- return effects.call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
21171
- case 43:
21172
- _t15 = _context10.v;
21173
- _context10.n = 45;
21174
- break;
21175
- case 44:
21176
- _t15 = {
21177
- messages: [],
21178
- hasNext: false
21179
- };
21180
- case 45:
21181
- _fourthResult = _t15;
21182
- result.messages = [].concat(result.messages, _fourthResult.messages);
21183
- _context10.n = 46;
21184
- return effects.put(addMessagesAC(JSON.parse(JSON.stringify(_fourthResult.messages)), MESSAGE_LOAD_DIRECTION.NEXT));
21185
- case 46:
21186
- messageQuery.reverse = true;
21187
- case 47:
21188
21195
  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);
21189
21196
  setAllMessages([].concat(result.messages));
21190
21197
  setHasPrevCached(false);
21191
21198
  setHasNextCached(false);
21192
- case 48:
21193
- _context10.n = 49;
21199
+ _context10.n = 37;
21194
21200
  return effects.put(setMessagesHasNextAC(true));
21195
- case 49:
21196
- if (!scrollToMessage) {
21197
- _context10.n = 50;
21201
+ case 37:
21202
+ if (!(scrollToMessage && !networkChanged)) {
21203
+ _context10.n = 38;
21198
21204
  break;
21199
21205
  }
21200
- _context10.n = 50;
21201
- return effects.put(setScrollToMessagesAC(loadWithMessageId, highlight, behavior));
21202
- case 50:
21203
- _context10.n = 51;
21206
+ _context10.n = 38;
21207
+ return effects.put(setScrollToMessagesAC(messageId, highlight, behavior));
21208
+ case 38:
21209
+ _context10.n = 39;
21204
21210
  return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
21205
- case 51:
21206
- _context10.n = 80;
21211
+ case 39:
21212
+ _context10.n = 70;
21207
21213
  break;
21208
- case 52:
21209
- if (!(channel.newMessageCount && channel.lastDisplayedMessageId)) {
21210
- _context10.n = 64;
21214
+ case 40:
21215
+ if (!(channelNewMessageCount && channel.lastDisplayedMessageId)) {
21216
+ _context10.n = 54;
21211
21217
  break;
21212
21218
  }
21213
21219
  setAllMessages([]);
21214
21220
  messageQuery.limit = MESSAGES_MAX_LENGTH;
21215
21221
  if (!Number(channel.lastDisplayedMessageId)) {
21216
- _context10.n = 56;
21222
+ _context10.n = 44;
21217
21223
  break;
21218
21224
  }
21219
21225
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21220
- _context10.n = 54;
21226
+ _context10.n = 42;
21221
21227
  break;
21222
21228
  }
21223
- _context10.n = 53;
21229
+ _context10.n = 41;
21224
21230
  return effects.call(messageQuery.loadNearMessageId, channel.lastDisplayedMessageId);
21225
- case 53:
21226
- _t16 = _context10.v;
21227
- _context10.n = 55;
21231
+ case 41:
21232
+ _t14 = _context10.v;
21233
+ _context10.n = 43;
21228
21234
  break;
21229
- case 54:
21230
- _t16 = {
21235
+ case 42:
21236
+ _t14 = {
21231
21237
  messages: [],
21232
21238
  hasNext: false
21233
21239
  };
21234
- case 55:
21235
- result = _t16;
21236
- _context10.n = 60;
21240
+ case 43:
21241
+ result = _t14;
21242
+ _context10.n = 48;
21237
21243
  break;
21238
- case 56:
21244
+ case 44:
21239
21245
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21240
- _context10.n = 58;
21246
+ _context10.n = 46;
21241
21247
  break;
21242
21248
  }
21243
- _context10.n = 57;
21249
+ _context10.n = 45;
21244
21250
  return effects.call(messageQuery.loadPrevious);
21245
- case 57:
21246
- _t17 = _context10.v;
21247
- _context10.n = 59;
21251
+ case 45:
21252
+ _t15 = _context10.v;
21253
+ _context10.n = 47;
21248
21254
  break;
21249
- case 58:
21250
- _t17 = {
21255
+ case 46:
21256
+ _t15 = {
21251
21257
  messages: [],
21252
21258
  hasNext: false
21253
21259
  };
21254
- case 59:
21255
- result = _t17;
21256
- case 60:
21257
- _context10.n = 61;
21260
+ case 47:
21261
+ result = _t15;
21262
+ case 48:
21263
+ _context10.n = 49;
21258
21264
  return effects.put(setMessagesHasPrevAC(true));
21259
- case 61:
21260
- _context10.n = 62;
21265
+ case 49:
21266
+ _context10.n = 50;
21261
21267
  return effects.put(setMessagesHasNextAC(channel.lastMessage && result.messages.length > 0 && channel.lastMessage.id !== result.messages[result.messages.length - 1].id));
21262
- case 62:
21268
+ case 50:
21263
21269
  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);
21264
21270
  setAllMessages([].concat(result.messages));
21265
- _context10.n = 63;
21271
+ _context10.n = 51;
21266
21272
  return effects.put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
21267
- case 63:
21268
- _context10.n = 80;
21273
+ case 51:
21274
+ _context10.n = 52;
21275
+ return effects.put(scrollToNewMessageAC(false));
21276
+ case 52:
21277
+ _context10.n = 53;
21278
+ return effects.put(setUnreadScrollToAC(true));
21279
+ case 53:
21280
+ _context10.n = 70;
21269
21281
  break;
21270
- case 64:
21282
+ case 54:
21271
21283
  if (!(cachedMessages && cachedMessages.length)) {
21272
- _context10.n = 67;
21284
+ _context10.n = 57;
21273
21285
  break;
21274
21286
  }
21275
- _context10.n = 65;
21276
- return effects.put(setMessagesAC(JSON.parse(JSON.stringify(cachedMessages))));
21277
- case 65:
21278
- _context10.n = 66;
21287
+ _messages = getFromAllMessagesByMessageId('', '', true);
21288
+ _context10.n = 55;
21289
+ return effects.put(setMessagesAC(JSON.parse(JSON.stringify(_messages))));
21290
+ case 55:
21291
+ _context10.n = 56;
21279
21292
  return effects.delay(0);
21280
- case 66:
21281
- _filteredPendingMessages = getFilteredPendingMessages(cachedMessages);
21282
- _context10.n = 67;
21293
+ case 56:
21294
+ _filteredPendingMessages = getFilteredPendingMessages(_messages);
21295
+ _context10.n = 57;
21283
21296
  return effects.put(addMessagesAC(_filteredPendingMessages, MESSAGE_LOAD_DIRECTION.NEXT));
21284
- case 67:
21297
+ case 57:
21285
21298
  log.info('load message from server');
21286
21299
  result = {
21287
21300
  messages: [],
21288
21301
  hasNext: false
21289
21302
  };
21290
21303
  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))) {
21291
- _context10.n = 71;
21304
+ _context10.n = 61;
21292
21305
  break;
21293
21306
  }
21294
21307
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21295
- _context10.n = 69;
21308
+ _context10.n = 59;
21296
21309
  break;
21297
21310
  }
21298
- _context10.n = 68;
21311
+ _context10.n = 58;
21299
21312
  return effects.call(messageQuery.loadPreviousMessageId, channel === null || channel === void 0 ? void 0 : channel.lastDisplayedMessageId);
21300
- case 68:
21301
- _t18 = _context10.v;
21302
- _context10.n = 70;
21313
+ case 58:
21314
+ _t16 = _context10.v;
21315
+ _context10.n = 60;
21303
21316
  break;
21304
- case 69:
21305
- _t18 = {
21317
+ case 59:
21318
+ _t16 = {
21306
21319
  messages: [],
21307
21320
  hasNext: false
21308
21321
  };
21309
- case 70:
21310
- result = _t18;
21311
- _context10.n = 75;
21322
+ case 60:
21323
+ result = _t16;
21324
+ _context10.n = 65;
21312
21325
  break;
21313
- case 71:
21326
+ case 61:
21314
21327
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
21315
- _context10.n = 73;
21328
+ _context10.n = 63;
21316
21329
  break;
21317
21330
  }
21318
- _context10.n = 72;
21331
+ _context10.n = 62;
21319
21332
  return effects.call(messageQuery.loadPrevious);
21320
- case 72:
21321
- _t19 = _context10.v;
21322
- _context10.n = 74;
21333
+ case 62:
21334
+ _t17 = _context10.v;
21335
+ _context10.n = 64;
21323
21336
  break;
21324
- case 73:
21325
- _t19 = {
21337
+ case 63:
21338
+ _t17 = {
21326
21339
  messages: [],
21327
21340
  hasNext: false
21328
21341
  };
21329
- case 74:
21330
- result = _t19;
21331
- case 75:
21342
+ case 64:
21343
+ result = _t17;
21344
+ case 65:
21332
21345
  updatedMessages = [];
21333
21346
  result.messages.forEach(function (msg) {
21334
21347
  var updatedMessage = updateMessageOnMap(channel.id, {
@@ -21340,85 +21353,85 @@ function getMessagesQuery(action) {
21340
21353
  });
21341
21354
  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';
21342
21355
  if (!updatedMessages.length) {
21343
- _context10.n = 79;
21356
+ _context10.n = 69;
21344
21357
  break;
21345
21358
  }
21346
- _context10.n = 76;
21359
+ _context10.n = 66;
21347
21360
  return effects.call(updateMessages, channel, updatedMessages, (_updatedMessages$ = updatedMessages[0]) === null || _updatedMessages$ === void 0 ? void 0 : _updatedMessages$.id, messageIdForLoad);
21348
- case 76:
21349
- _context10.n = 77;
21361
+ case 66:
21362
+ _context10.n = 67;
21350
21363
  return effects.put(setMessagesHasPrevAC(true));
21351
- case 77:
21352
- _context10.n = 78;
21364
+ case 67:
21365
+ _context10.n = 68;
21353
21366
  return effects.put(setMessagesHasNextAC(false));
21354
- case 78:
21355
- _context10.n = 80;
21367
+ case 68:
21368
+ _context10.n = 70;
21356
21369
  break;
21357
- case 79:
21370
+ case 69:
21358
21371
  if (!(!(cachedMessages !== null && cachedMessages !== void 0 && cachedMessages.length) && !((_result$messages4 = result.messages) !== null && _result$messages4 !== void 0 && _result$messages4.length))) {
21359
- _context10.n = 80;
21372
+ _context10.n = 70;
21360
21373
  break;
21361
21374
  }
21362
- _context10.n = 80;
21375
+ _context10.n = 70;
21363
21376
  return effects.put(setMessagesAC([]));
21364
- case 80:
21377
+ case 70:
21365
21378
  filteredPendingMessages = getFilteredPendingMessages(result.messages);
21366
- _context10.n = 81;
21379
+ _context10.n = 71;
21367
21380
  return effects.put(addMessagesAC(filteredPendingMessages, MESSAGE_LOAD_DIRECTION.NEXT));
21368
- case 81:
21381
+ case 71:
21369
21382
  waitToSendPendingMessages = store.getState().UserReducer.waitToSendPendingMessages;
21370
21383
  if (!(connectionState === CONNECTION_STATUS.CONNECTED && waitToSendPendingMessages)) {
21371
- _context10.n = 83;
21384
+ _context10.n = 73;
21372
21385
  break;
21373
21386
  }
21374
- _context10.n = 82;
21387
+ _context10.n = 72;
21375
21388
  return effects.put(setWaitToSendPendingMessagesAC(false));
21376
- case 82:
21377
- _context10.n = 83;
21389
+ case 72:
21390
+ _context10.n = 73;
21378
21391
  return effects.spawn(sendPendingMessages, connectionState);
21379
- case 83:
21380
- _context10.n = 84;
21392
+ case 73:
21393
+ _context10.n = 74;
21381
21394
  return effects.call(SceytChatClient.getChannel, channel.id, true);
21382
- case 84:
21395
+ case 74:
21383
21396
  updatedChannel = _context10.v;
21384
21397
  if (!(updatedChannel && updatedChannel !== null && updatedChannel !== void 0 && updatedChannel.lastMessage)) {
21385
- _context10.n = 86;
21398
+ _context10.n = 76;
21386
21399
  break;
21387
21400
  }
21388
- _context10.n = 85;
21401
+ _context10.n = 75;
21389
21402
  return effects.put(updateChannelLastMessageAC(updatedChannel.lastMessage, updatedChannel));
21390
- case 85:
21403
+ case 75:
21391
21404
  updateChannelLastMessageOnAllChannels(channel.id, updatedChannel.lastMessage);
21392
- case 86:
21393
- _context10.n = 88;
21405
+ case 76:
21406
+ _context10.n = 78;
21394
21407
  break;
21395
- case 87:
21408
+ case 77:
21396
21409
  if (!(channel !== null && channel !== void 0 && channel.isMockChannel)) {
21397
- _context10.n = 88;
21410
+ _context10.n = 78;
21398
21411
  break;
21399
21412
  }
21400
- _context10.n = 88;
21413
+ _context10.n = 78;
21401
21414
  return effects.put(setMessagesAC([]));
21402
- case 88:
21403
- _context10.n = 90;
21415
+ case 78:
21416
+ _context10.n = 80;
21404
21417
  break;
21405
- case 89:
21406
- _context10.p = 89;
21407
- _t20 = _context10.v;
21408
- log.error('error in message query', _t20);
21409
- case 90:
21410
- _context10.p = 90;
21411
- _context10.n = 91;
21418
+ case 79:
21419
+ _context10.p = 79;
21420
+ _t18 = _context10.v;
21421
+ log.error('error in message query', _t18);
21422
+ case 80:
21423
+ _context10.p = 80;
21424
+ _context10.n = 81;
21412
21425
  return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
21413
- case 91:
21414
- return _context10.f(90);
21415
- case 92:
21426
+ case 81:
21427
+ return _context10.f(80);
21428
+ case 82:
21416
21429
  return _context10.a(2);
21417
21430
  }
21418
- }, _marked7$1, null, [[0, 89, 90, 92]]);
21431
+ }, _marked7$1, null, [[2, 7], [0, 79, 80, 82]]);
21419
21432
  }
21420
21433
  function getMessageQuery(action) {
21421
- var payload, channelId, messageId, channel, connectionState, messages, fetchedMessage, _t21;
21434
+ var payload, channelId, messageId, channel, connectionState, messages, fetchedMessage, _t19;
21422
21435
  return _regenerator().w(function (_context11) {
21423
21436
  while (1) switch (_context11.p = _context11.n) {
21424
21437
  case 0:
@@ -21468,15 +21481,15 @@ function getMessageQuery(action) {
21468
21481
  break;
21469
21482
  case 7:
21470
21483
  _context11.p = 7;
21471
- _t21 = _context11.v;
21472
- log.error('error in message query', _t21);
21484
+ _t19 = _context11.v;
21485
+ log.error('error in message query', _t19);
21473
21486
  case 8:
21474
21487
  return _context11.a(2);
21475
21488
  }
21476
21489
  }, _marked8$1, null, [[0, 7]]);
21477
21490
  }
21478
21491
  function loadMoreMessages(action) {
21479
- var payload, limit, direction, channelId, messageId, hasNext, SceytChatClient, messageQueryBuilder, messageQuery, result, _result$messages$4, _result$messages5, _result$messages$5, _result$messages6, _t22;
21492
+ var payload, limit, direction, channelId, messageId, hasNext, SceytChatClient, messageQueryBuilder, messageQuery, result, _result$messages$4, _result$messages5, _result$messages$5, _result$messages6, _t20;
21480
21493
  return _regenerator().w(function (_context12) {
21481
21494
  while (1) switch (_context12.p = _context12.n) {
21482
21495
  case 0:
@@ -21589,15 +21602,15 @@ function loadMoreMessages(action) {
21589
21602
  break;
21590
21603
  case 18:
21591
21604
  _context12.p = 18;
21592
- _t22 = _context12.v;
21593
- log.error('error in load more messages', _t22);
21605
+ _t20 = _context12.v;
21606
+ log.error('error in load more messages', _t20);
21594
21607
  case 19:
21595
21608
  return _context12.a(2);
21596
21609
  }
21597
21610
  }, _marked9$1, null, [[0, 18]]);
21598
21611
  }
21599
21612
  function addReaction(action) {
21600
- var payload, channelId, messageId, key, score, reason, enforceUnique, user, channel, _yield$call, message, reaction, channelUpdateParam, _t23;
21613
+ var payload, channelId, messageId, key, score, reason, enforceUnique, user, channel, _yield$call, message, reaction, channelUpdateParam, _t21;
21601
21614
  return _regenerator().w(function (_context13) {
21602
21615
  while (1) switch (_context13.p = _context13.n) {
21603
21616
  case 0:
@@ -21650,15 +21663,15 @@ function addReaction(action) {
21650
21663
  break;
21651
21664
  case 8:
21652
21665
  _context13.p = 8;
21653
- _t23 = _context13.v;
21654
- log.error('ERROR in add reaction', _t23.message);
21666
+ _t21 = _context13.v;
21667
+ log.error('ERROR in add reaction', _t21.message);
21655
21668
  case 9:
21656
21669
  return _context13.a(2);
21657
21670
  }
21658
21671
  }, _marked0$1, null, [[0, 8]]);
21659
21672
  }
21660
21673
  function deleteReaction(action) {
21661
- var payload, channelId, messageId, key, isLastReaction, channel, _yield$call2, message, reaction, channelUpdateParam, _t24;
21674
+ var payload, channelId, messageId, key, isLastReaction, channel, _yield$call2, message, reaction, channelUpdateParam, _t22;
21662
21675
  return _regenerator().w(function (_context14) {
21663
21676
  while (1) switch (_context14.p = _context14.n) {
21664
21677
  case 0:
@@ -21706,15 +21719,15 @@ function deleteReaction(action) {
21706
21719
  break;
21707
21720
  case 7:
21708
21721
  _context14.p = 7;
21709
- _t24 = _context14.v;
21710
- log.error('ERROR in delete reaction', _t24.message);
21722
+ _t22 = _context14.v;
21723
+ log.error('ERROR in delete reaction', _t22.message);
21711
21724
  case 8:
21712
21725
  return _context14.a(2);
21713
21726
  }
21714
21727
  }, _marked1$1, null, [[0, 7]]);
21715
21728
  }
21716
21729
  function getReactions(action) {
21717
- var payload, messageId, key, limit, SceytChatClient, reactionQueryBuilder, reactionQuery, result, _t25;
21730
+ var payload, messageId, key, limit, SceytChatClient, reactionQueryBuilder, reactionQuery, result, _t23;
21718
21731
  return _regenerator().w(function (_context15) {
21719
21732
  while (1) switch (_context15.p = _context15.n) {
21720
21733
  case 0:
@@ -21749,15 +21762,15 @@ function getReactions(action) {
21749
21762
  break;
21750
21763
  case 6:
21751
21764
  _context15.p = 6;
21752
- _t25 = _context15.v;
21753
- log.error('ERROR in get reactions', _t25.message);
21765
+ _t23 = _context15.v;
21766
+ log.error('ERROR in get reactions', _t23.message);
21754
21767
  case 7:
21755
21768
  return _context15.a(2);
21756
21769
  }
21757
21770
  }, _marked10$1, null, [[0, 6]]);
21758
21771
  }
21759
21772
  function loadMoreReactions(action) {
21760
- var payload, limit, ReactionQuery, result, _t26;
21773
+ var payload, limit, ReactionQuery, result, _t24;
21761
21774
  return _regenerator().w(function (_context16) {
21762
21775
  while (1) switch (_context16.p = _context16.n) {
21763
21776
  case 0:
@@ -21785,15 +21798,15 @@ function loadMoreReactions(action) {
21785
21798
  break;
21786
21799
  case 5:
21787
21800
  _context16.p = 5;
21788
- _t26 = _context16.v;
21789
- log.error('ERROR in load more reactions', _t26.message);
21801
+ _t24 = _context16.v;
21802
+ log.error('ERROR in load more reactions', _t24.message);
21790
21803
  case 6:
21791
21804
  return _context16.a(2);
21792
21805
  }
21793
21806
  }, _marked11$1, null, [[0, 5]]);
21794
21807
  }
21795
21808
  function getMessageAttachments(action) {
21796
- var _action$payload2, channelId, attachmentType, limit, direction, attachmentId, forPopup, SceytChatClient, typeList, AttachmentByTypeQueryBuilder, AttachmentByTypeQuery, result, _t27;
21809
+ var _action$payload2, channelId, attachmentType, limit, direction, attachmentId, forPopup, SceytChatClient, typeList, AttachmentByTypeQueryBuilder, AttachmentByTypeQuery, result, _t25;
21797
21810
  return _regenerator().w(function (_context17) {
21798
21811
  while (1) switch (_context17.p = _context17.n) {
21799
21812
  case 0:
@@ -21871,15 +21884,15 @@ function getMessageAttachments(action) {
21871
21884
  break;
21872
21885
  case 13:
21873
21886
  _context17.p = 13;
21874
- _t27 = _context17.v;
21875
- log.error('error in message attachment query', _t27);
21887
+ _t25 = _context17.v;
21888
+ log.error('error in message attachment query', _t25);
21876
21889
  case 14:
21877
21890
  return _context17.a(2);
21878
21891
  }
21879
21892
  }, _marked12$1, null, [[0, 13]]);
21880
21893
  }
21881
21894
  function loadMoreMessageAttachments(action) {
21882
- var _action$payload3, limit, direction, forPopup, AttachmentQuery, _yield$call3, attachments, hasNext, _t28;
21895
+ var _action$payload3, limit, direction, forPopup, AttachmentQuery, _yield$call3, attachments, hasNext, _t26;
21883
21896
  return _regenerator().w(function (_context18) {
21884
21897
  while (1) switch (_context18.p = _context18.n) {
21885
21898
  case 0:
@@ -21923,15 +21936,15 @@ function loadMoreMessageAttachments(action) {
21923
21936
  break;
21924
21937
  case 8:
21925
21938
  _context18.p = 8;
21926
- _t28 = _context18.v;
21927
- log.error('error in message attachment query', _t28);
21939
+ _t26 = _context18.v;
21940
+ log.error('error in message attachment query', _t26);
21928
21941
  case 9:
21929
21942
  return _context18.a(2);
21930
21943
  }
21931
21944
  }, _marked13$1, null, [[0, 8]]);
21932
21945
  }
21933
21946
  function pauseAttachmentUploading(action) {
21934
- var attachmentId, isPaused, _t29;
21947
+ var attachmentId, isPaused, _t27;
21935
21948
  return _regenerator().w(function (_context19) {
21936
21949
  while (1) switch (_context19.p = _context19.n) {
21937
21950
  case 0:
@@ -21953,15 +21966,15 @@ function pauseAttachmentUploading(action) {
21953
21966
  break;
21954
21967
  case 2:
21955
21968
  _context19.p = 2;
21956
- _t29 = _context19.v;
21957
- log.error('error in pause attachment uploading', _t29);
21969
+ _t27 = _context19.v;
21970
+ log.error('error in pause attachment uploading', _t27);
21958
21971
  case 3:
21959
21972
  return _context19.a(2);
21960
21973
  }
21961
21974
  }, _marked14$1, null, [[0, 2]]);
21962
21975
  }
21963
21976
  function resumeAttachmentUploading(action) {
21964
- var attachmentId, isResumed, _t30;
21977
+ var attachmentId, isResumed, _t28;
21965
21978
  return _regenerator().w(function (_context20) {
21966
21979
  while (1) switch (_context20.p = _context20.n) {
21967
21980
  case 0:
@@ -21984,15 +21997,15 @@ function resumeAttachmentUploading(action) {
21984
21997
  break;
21985
21998
  case 2:
21986
21999
  _context20.p = 2;
21987
- _t30 = _context20.v;
21988
- log.error('error in resume attachment uploading', _t30);
22000
+ _t28 = _context20.v;
22001
+ log.error('error in resume attachment uploading', _t28);
21989
22002
  case 3:
21990
22003
  return _context20.a(2);
21991
22004
  }
21992
22005
  }, _marked15$1, null, [[0, 2]]);
21993
22006
  }
21994
22007
  function getMessageMarkers(action) {
21995
- var _action$payload4, messageId, channelId, deliveryStatus, sceytChatClient, messageMarkerListQueryBuilder, messageMarkerListQuery, messageMarkers, _t31;
22008
+ var _action$payload4, messageId, channelId, deliveryStatus, sceytChatClient, messageMarkerListQueryBuilder, messageMarkerListQuery, messageMarkers, _t29;
21996
22009
  return _regenerator().w(function (_context21) {
21997
22010
  while (1) switch (_context21.p = _context21.n) {
21998
22011
  case 0:
@@ -22022,8 +22035,8 @@ function getMessageMarkers(action) {
22022
22035
  break;
22023
22036
  case 5:
22024
22037
  _context21.p = 5;
22025
- _t31 = _context21.v;
22026
- log.error('error in get message markers', _t31);
22038
+ _t29 = _context21.v;
22039
+ log.error('error in get message markers', _t29);
22027
22040
  case 6:
22028
22041
  _context21.p = 6;
22029
22042
  _context21.n = 7;
@@ -22139,7 +22152,7 @@ function updateMessageOptimisticallyForAddPollVote(channelId, message, vote) {
22139
22152
  }, _marked18$1);
22140
22153
  }
22141
22154
  function addPollVote(action) {
22142
- 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;
22155
+ 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;
22143
22156
  return _regenerator().w(function (_context24) {
22144
22157
  while (1) switch (_context24.p = _context24.n) {
22145
22158
  case 0:
@@ -22231,8 +22244,8 @@ function addPollVote(action) {
22231
22244
  break;
22232
22245
  case 7:
22233
22246
  _context24.p = 7;
22234
- _t32 = _context24.v;
22235
- log.error('error in add poll vote', _t32);
22247
+ _t30 = _context24.v;
22248
+ log.error('error in add poll vote', _t30);
22236
22249
  case 8:
22237
22250
  return _context24.a(2);
22238
22251
  }
@@ -22316,7 +22329,7 @@ function updateMessageOptimisticallyForDeletePollVote(channelId, message, vote)
22316
22329
  }, _marked21$1);
22317
22330
  }
22318
22331
  function deletePollVote(action) {
22319
- 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;
22332
+ 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;
22320
22333
  return _regenerator().w(function (_context27) {
22321
22334
  while (1) switch (_context27.p = _context27.n) {
22322
22335
  case 0:
@@ -22394,8 +22407,8 @@ function deletePollVote(action) {
22394
22407
  break;
22395
22408
  case 8:
22396
22409
  _context27.p = 8;
22397
- _t33 = _context27.v;
22398
- log.error('error in delete poll vote', _t33);
22410
+ _t31 = _context27.v;
22411
+ log.error('error in delete poll vote', _t31);
22399
22412
  case 9:
22400
22413
  return _context27.a(2);
22401
22414
  }
@@ -22473,7 +22486,7 @@ function updateMessageOptimisticallyForClosePoll(channelId, message) {
22473
22486
  }, _marked24$1);
22474
22487
  }
22475
22488
  function closePoll(action) {
22476
- var payload, channelId, pollId, message, sceytChatClient, connectionState, _t34;
22489
+ var payload, channelId, pollId, message, sceytChatClient, connectionState, _t32;
22477
22490
  return _regenerator().w(function (_context30) {
22478
22491
  while (1) switch (_context30.p = _context30.n) {
22479
22492
  case 0:
@@ -22506,8 +22519,8 @@ function closePoll(action) {
22506
22519
  break;
22507
22520
  case 4:
22508
22521
  _context30.p = 4;
22509
- _t34 = _context30.v;
22510
- log.error('error in close poll', _t34);
22522
+ _t32 = _context30.v;
22523
+ log.error('error in close poll', _t32);
22511
22524
  case 5:
22512
22525
  return _context30.a(2);
22513
22526
  }
@@ -22596,7 +22609,7 @@ function updateMessageOptimisticallyForRetractPollVote(channelId, message, objs)
22596
22609
  }, _marked27$1);
22597
22610
  }
22598
22611
  function retractPollVote(action) {
22599
- var payload, channelId, pollId, message, isResend, sceytChatClient, connectionState, objs, _iterator4, _step4, _message$pollDetails12, _message$pollDetails13, vote, _t35;
22612
+ var payload, channelId, pollId, message, isResend, sceytChatClient, connectionState, objs, _iterator4, _step4, _message$pollDetails12, _message$pollDetails13, vote, _t33;
22600
22613
  return _regenerator().w(function (_context33) {
22601
22614
  while (1) switch (_context33.p = _context33.n) {
22602
22615
  case 0:
@@ -22638,15 +22651,15 @@ function retractPollVote(action) {
22638
22651
  break;
22639
22652
  case 4:
22640
22653
  _context33.p = 4;
22641
- _t35 = _context33.v;
22642
- log.error('error in retract poll vote', _t35);
22654
+ _t33 = _context33.v;
22655
+ log.error('error in retract poll vote', _t33);
22643
22656
  case 5:
22644
22657
  return _context33.a(2);
22645
22658
  }
22646
22659
  }, _marked28$1, null, [[0, 4]]);
22647
22660
  }
22648
22661
  function resendPendingPollActions(action) {
22649
- var payload, connectionState, sceytChatClient, pendingPollActionsMap, pendingPollActionsMapCopy, _t36;
22662
+ var payload, connectionState, sceytChatClient, pendingPollActionsMap, pendingPollActionsMapCopy, _t34;
22650
22663
  return _regenerator().w(function (_context34) {
22651
22664
  while (1) switch (_context34.p = _context34.n) {
22652
22665
  case 0:
@@ -22695,15 +22708,15 @@ function resendPendingPollActions(action) {
22695
22708
  break;
22696
22709
  case 2:
22697
22710
  _context34.p = 2;
22698
- _t36 = _context34.v;
22699
- log.error('error in resend pending poll actions', _t36);
22711
+ _t34 = _context34.v;
22712
+ log.error('error in resend pending poll actions', _t34);
22700
22713
  case 3:
22701
22714
  return _context34.a(2);
22702
22715
  }
22703
22716
  }, _marked29$1, null, [[0, 2]]);
22704
22717
  }
22705
22718
  function getPollVotes(action) {
22706
- var payload, messageId, pollId, optionId, limit, key, SceytChatClient, queryBuilder, pollVotesQuery, result, formattedVotes, _t37;
22719
+ var payload, messageId, pollId, optionId, limit, key, SceytChatClient, queryBuilder, pollVotesQuery, result, formattedVotes, _t35;
22707
22720
  return _regenerator().w(function (_context35) {
22708
22721
  while (1) switch (_context35.p = _context35.n) {
22709
22722
  case 0:
@@ -22769,8 +22782,8 @@ function getPollVotes(action) {
22769
22782
  break;
22770
22783
  case 7:
22771
22784
  _context35.p = 7;
22772
- _t37 = _context35.v;
22773
- log.error('ERROR in get poll votes', _t37);
22785
+ _t35 = _context35.v;
22786
+ log.error('ERROR in get poll votes', _t35);
22774
22787
  _context35.n = 8;
22775
22788
  return effects.put(setPollVotesLoadingStateAC(action.payload.pollId, action.payload.optionId, LOADING_STATE.LOADED));
22776
22789
  case 8:
@@ -22779,7 +22792,7 @@ function getPollVotes(action) {
22779
22792
  }, _marked30$1, null, [[0, 7]]);
22780
22793
  }
22781
22794
  function loadMorePollVotes(action) {
22782
- var payload, pollId, optionId, limit, key, pollVotesQuery, result, formattedVotes, _t38;
22795
+ var payload, pollId, optionId, limit, key, pollVotesQuery, result, formattedVotes, _t36;
22783
22796
  return _regenerator().w(function (_context36) {
22784
22797
  while (1) switch (_context36.p = _context36.n) {
22785
22798
  case 0:
@@ -22837,8 +22850,8 @@ function loadMorePollVotes(action) {
22837
22850
  break;
22838
22851
  case 6:
22839
22852
  _context36.p = 6;
22840
- _t38 = _context36.v;
22841
- log.error('ERROR in load more poll votes', _t38);
22853
+ _t36 = _context36.v;
22854
+ log.error('ERROR in load more poll votes', _t36);
22842
22855
  _context36.n = 7;
22843
22856
  return effects.put(setPollVotesLoadingStateAC(action.payload.pollId, action.payload.optionId, LOADING_STATE.LOADED));
22844
22857
  case 7:
@@ -28697,6 +28710,9 @@ var pollVotesLoadingStateSelector = function pollVotesLoadingStateSelector(store
28697
28710
  var unreadScrollToSelector = function unreadScrollToSelector(store) {
28698
28711
  return store.MessageReducer.unreadScrollTo;
28699
28712
  };
28713
+ var unreadMessageIdSelector = function unreadMessageIdSelector(store) {
28714
+ return store.MessageReducer.unreadMessageId;
28715
+ };
28700
28716
 
28701
28717
  var _path$v;
28702
28718
  function _extends$w() {
@@ -31242,6 +31258,10 @@ var _templateObject$t, _templateObject2$p, _templateObject3$k;
31242
31258
  function MessageActions(_ref) {
31243
31259
  var _ref$isPollMessage = _ref.isPollMessage,
31244
31260
  isPollMessage = _ref$isPollMessage === void 0 ? false : _ref$isPollMessage,
31261
+ _ref$allowVoteRetract = _ref.allowVoteRetract,
31262
+ allowVoteRetract = _ref$allowVoteRetract === void 0 ? false : _ref$allowVoteRetract,
31263
+ _ref$pollClosed = _ref.pollClosed,
31264
+ pollClosed = _ref$pollClosed === void 0 ? false : _ref$pollClosed,
31245
31265
  editModeToggle = _ref.editModeToggle,
31246
31266
  channel = _ref.channel,
31247
31267
  handleResendMessage = _ref.handleResendMessage,
@@ -31334,7 +31354,7 @@ function MessageActions(_ref) {
31334
31354
  }, /*#__PURE__*/React__default.createElement(EditMessageContainer, {
31335
31355
  backgroundColor: backgroundSections,
31336
31356
  className: 'message_actions_cont '
31337
- }, showMessageReaction && !isPollMessage && messageStatus !== MESSAGE_DELIVERY_STATUS.PENDING && checkActionPermission('addMessageReaction') && (/*#__PURE__*/React__default.createElement(Action, {
31357
+ }, showMessageReaction && messageStatus !== MESSAGE_DELIVERY_STATUS.PENDING && checkActionPermission('addMessageReaction') && (/*#__PURE__*/React__default.createElement(Action, {
31338
31358
  order: reactionIconOrder || 0,
31339
31359
  iconColor: messageActionIconsColor || iconInactive,
31340
31360
  hoverBackgroundColor: backgroundHovered,
@@ -31403,7 +31423,7 @@ function MessageActions(_ref) {
31403
31423
  disabledColor: textSecondary,
31404
31424
  bgColor: tooltipBackground,
31405
31425
  direction: 'top'
31406
- }, copyIconTooltipText || 'Copy', /*#__PURE__*/React__default.createElement(SvgArrowDown, null)), copyIcon || /*#__PURE__*/React__default.createElement(SvgCopyIcon, null))), isPollMessage && (/*#__PURE__*/React__default.createElement(Action, {
31426
+ }, copyIconTooltipText || 'Copy', /*#__PURE__*/React__default.createElement(SvgArrowDown, null)), copyIcon || /*#__PURE__*/React__default.createElement(SvgCopyIcon, null))), isPollMessage && allowVoteRetract && !pollClosed && (/*#__PURE__*/React__default.createElement(Action, {
31407
31427
  onClick: handleRetractVote,
31408
31428
  iconColor: messageActionIconsColor || iconInactive,
31409
31429
  hoverBackgroundColor: backgroundHovered,
@@ -31412,7 +31432,7 @@ function MessageActions(_ref) {
31412
31432
  disabledColor: textSecondary,
31413
31433
  bgColor: tooltipBackground,
31414
31434
  direction: 'top'
31415
- }, "Retract Vote", /*#__PURE__*/React__default.createElement(SvgArrowDown, null)), retractVoteIcon || /*#__PURE__*/React__default.createElement(SvgRetractVote, null))), !isPollMessage && (/*#__PURE__*/React__default.createElement(Action, {
31435
+ }, "Retract Vote", /*#__PURE__*/React__default.createElement(SvgArrowDown, null)), retractVoteIcon || /*#__PURE__*/React__default.createElement(SvgRetractVote, null))), isPollMessage && !isIncoming && !pollClosed && (/*#__PURE__*/React__default.createElement(Action, {
31416
31436
  onClick: handleEndVote,
31417
31437
  iconColor: messageActionIconsColor || iconInactive,
31418
31438
  hoverBackgroundColor: backgroundHovered,
@@ -31421,7 +31441,7 @@ function MessageActions(_ref) {
31421
31441
  disabledColor: textSecondary,
31422
31442
  bgColor: tooltipBackground,
31423
31443
  direction: 'top'
31424
- }, "End Vote", /*#__PURE__*/React__default.createElement(SvgArrowDown, null)), endVoteIcon || /*#__PURE__*/React__default.createElement(SvgEndVote, null))), showForwardMessage && forwardMessagePermitted && messageStatus !== MESSAGE_DELIVERY_STATUS.PENDING && (/*#__PURE__*/React__default.createElement(Action, {
31444
+ }, "End Vote", /*#__PURE__*/React__default.createElement(SvgArrowDown, null)), endVoteIcon || /*#__PURE__*/React__default.createElement(SvgEndVote, null))), showForwardMessage && forwardMessagePermitted && messageStatus !== MESSAGE_DELIVERY_STATUS.PENDING && !isPollMessage && (/*#__PURE__*/React__default.createElement(Action, {
31425
31445
  order: forwardIconOrder || 5,
31426
31446
  iconColor: messageActionIconsColor || iconInactive,
31427
31447
  hoverBackgroundColor: backgroundHovered,
@@ -36305,11 +36325,11 @@ var PollMessage = function PollMessage(_ref) {
36305
36325
  onClick: handleResultsClick,
36306
36326
  cursor: poll.anonymous ? 'default' : 'pointer'
36307
36327
  }, optionVotesUsers.map(function (vote) {
36308
- var _vote$user, _vote$user2, _vote$user2$profile, _vote$user3, _vote$user3$profile;
36328
+ var _vote$user, _vote$user2, _vote$user2$profile, _vote$user3, _vote$user3$profile, _vote$user4;
36309
36329
  return /*#__PURE__*/React__default.createElement(Avatar, {
36310
36330
  key: vote === null || vote === void 0 ? void 0 : (_vote$user = vote.user) === null || _vote$user === void 0 ? void 0 : _vote$user.id,
36311
36331
  image: vote === null || vote === void 0 ? void 0 : (_vote$user2 = vote.user) === null || _vote$user2 === void 0 ? void 0 : (_vote$user2$profile = _vote$user2.profile) === null || _vote$user2$profile === void 0 ? void 0 : _vote$user2$profile.avatar,
36312
- name: vote === null || vote === void 0 ? void 0 : (_vote$user3 = vote.user) === null || _vote$user3 === void 0 ? void 0 : (_vote$user3$profile = _vote$user3.profile) === null || _vote$user3$profile === void 0 ? void 0 : _vote$user3$profile.firstName,
36332
+ name: (vote === null || vote === void 0 ? void 0 : (_vote$user3 = vote.user) === null || _vote$user3 === void 0 ? void 0 : (_vote$user3$profile = _vote$user3.profile) === null || _vote$user3$profile === void 0 ? void 0 : _vote$user3$profile.firstName) || (vote === null || vote === void 0 ? void 0 : (_vote$user4 = vote.user) === null || _vote$user4 === void 0 ? void 0 : _vote$user4.id),
36313
36333
  size: 18,
36314
36334
  textSize: 12,
36315
36335
  setDefaultAvatar: true,
@@ -36855,6 +36875,7 @@ var FaviconImg = styled__default.img(_templateObject1$a || (_templateObject1$a =
36855
36875
 
36856
36876
  var _templateObject$H, _templateObject2$C, _templateObject3$w, _templateObject4$r, _templateObject5$m, _templateObject6$k, _templateObject7$j;
36857
36877
  var MessageBody = function MessageBody(_ref) {
36878
+ var _message$pollDetails, _message$pollDetails2;
36858
36879
  var message = _ref.message,
36859
36880
  channel = _ref.channel,
36860
36881
  MessageActionsMenu = _ref.MessageActionsMenu,
@@ -37230,6 +37251,8 @@ var MessageBody = function MessageBody(_ref) {
37230
37251
  handleEndVote: handleEndVote
37231
37252
  })) : (/*#__PURE__*/React__default.createElement(MessageActions, {
37232
37253
  isPollMessage: (message === null || message === void 0 ? void 0 : message.type) === exports.MESSAGE_TYPE.POLL,
37254
+ allowVoteRetract: message === null || message === void 0 ? void 0 : (_message$pollDetails = message.pollDetails) === null || _message$pollDetails === void 0 ? void 0 : _message$pollDetails.allowVoteRetract,
37255
+ pollClosed: message === null || message === void 0 ? void 0 : (_message$pollDetails2 = message.pollDetails) === null || _message$pollDetails2 === void 0 ? void 0 : _message$pollDetails2.closed,
37233
37256
  messageFrom: message.user,
37234
37257
  channel: channel,
37235
37258
  editModeToggle: toggleEditMode,
@@ -39251,42 +39274,40 @@ var MessageList = function MessageList(_ref2) {
39251
39274
  var showScrollToNewMessageButton = useSelector(showScrollToNewMessageButtonSelector, reactRedux.shallowEqual);
39252
39275
  var unreadScrollTo = useSelector(unreadScrollToSelector, reactRedux.shallowEqual);
39253
39276
  var messages = useSelector(activeChannelMessagesSelector, reactRedux.shallowEqual) || [];
39254
- var _useState2 = React.useState(''),
39255
- unreadMessageId = _useState2[0],
39256
- setUnreadMessageId = _useState2[1];
39277
+ var unreadMessageId = useSelector(unreadMessageIdSelector, reactRedux.shallowEqual);
39278
+ var _useState2 = React.useState(null),
39279
+ mediaFile = _useState2[0],
39280
+ setMediaFile = _useState2[1];
39257
39281
  var _useState3 = React.useState(null),
39258
- mediaFile = _useState3[0],
39259
- setMediaFile = _useState3[1];
39282
+ isDragging = _useState3[0],
39283
+ setIsDragging = _useState3[1];
39260
39284
  var _useState4 = React.useState(null),
39261
- isDragging = _useState4[0],
39262
- setIsDragging = _useState4[1];
39263
- var _useState5 = React.useState(null),
39264
- showTopDate = _useState5[0],
39265
- setShowTopDate = _useState5[1];
39285
+ showTopDate = _useState4[0],
39286
+ setShowTopDate = _useState4[1];
39287
+ var _useState5 = React.useState(false),
39288
+ stopScrolling = _useState5[0],
39289
+ setStopScrolling = _useState5[1];
39266
39290
  var _useState6 = React.useState(false),
39267
- stopScrolling = _useState6[0],
39268
- setStopScrolling = _useState6[1];
39269
- var _useState7 = React.useState(false),
39270
- isScrolling = _useState7[0],
39271
- setIsScrolling = _useState7[1];
39291
+ isScrolling = _useState6[0],
39292
+ setIsScrolling = _useState6[1];
39272
39293
  var hideTopDateTimeout = React.useRef(null);
39273
- var _useState8 = React.useState(''),
39274
- lastVisibleMessageId = _useState8[0],
39275
- _setLastVisibleMessageId = _useState8[1];
39276
- var _useState9 = React.useState(null),
39277
- scrollToReply = _useState9[0],
39278
- setScrollToReply = _useState9[1];
39279
- var _useState0 = React.useState(0),
39280
- previousScrollTop = _useState0[0],
39281
- setPreviousScrollTop = _useState0[1];
39282
- var _useState1 = React.useState(false),
39283
- shouldPreserveScroll = _useState1[0],
39284
- setShouldPreserveScroll = _useState1[1];
39294
+ var _useState7 = React.useState(''),
39295
+ lastVisibleMessageId = _useState7[0],
39296
+ _setLastVisibleMessageId = _useState7[1];
39297
+ var _useState8 = React.useState(null),
39298
+ scrollToReply = _useState8[0],
39299
+ setScrollToReply = _useState8[1];
39300
+ var _useState9 = React.useState(0),
39301
+ previousScrollTop = _useState9[0],
39302
+ setPreviousScrollTop = _useState9[1];
39303
+ var _useState0 = React.useState(false),
39304
+ shouldPreserveScroll = _useState0[0],
39305
+ setShouldPreserveScroll = _useState0[1];
39285
39306
  var messageForReply = {};
39286
39307
  var attachmentsSelected = false;
39287
- var _useState10 = React.useState(''),
39288
- topDateLabel = _useState10[0],
39289
- setTopDateLabel = _useState10[1];
39308
+ var _useState1 = React.useState(''),
39309
+ topDateLabel = _useState1[0],
39310
+ setTopDateLabel = _useState1[1];
39290
39311
  var scrollRef = React.useRef(null);
39291
39312
  var loadFromServerRef = React.useRef(false);
39292
39313
  var loadDirectionRef = React.useRef('');
@@ -39621,7 +39642,7 @@ var MessageList = function MessageList(_ref2) {
39621
39642
  var visibleMessagesIds = Object.keys(visibleMessages);
39622
39643
  var messageId = visibleMessagesIds[visibleMessagesIds.length - 1];
39623
39644
  dispatch(getMessagesAC(channel, undefined, messageId, undefined, undefined, 'instant'));
39624
- setUnreadMessageId(messageId);
39645
+ dispatch(setUnreadMessageIdAC(messageId));
39625
39646
  } else {
39626
39647
  if (!channel.isLinkedChannel) {
39627
39648
  clearVisibleMessagesMap();
@@ -39631,9 +39652,9 @@ var MessageList = function MessageList(_ref2) {
39631
39652
  }
39632
39653
  if (channel.id) {
39633
39654
  if (channel.newMessageCount && channel.newMessageCount > 0) {
39634
- setUnreadMessageId(channel.lastDisplayedMessageId);
39655
+ dispatch(setUnreadMessageIdAC(channel.lastDisplayedMessageId));
39635
39656
  } else {
39636
- setUnreadMessageId('');
39657
+ dispatch(setUnreadMessageIdAC(''));
39637
39658
  }
39638
39659
  }
39639
39660
  }
@@ -39657,7 +39678,7 @@ var MessageList = function MessageList(_ref2) {
39657
39678
  if (messages.length > 0 && hiddenMessagesProperties !== null && hiddenMessagesProperties !== void 0 && hiddenMessagesProperties.includes(HiddenMessageProperty.hideAfterSendMessage)) {
39658
39679
  var lastMessage = messages[messages.length - 1];
39659
39680
  if (lastMessage.user.id === user.id) {
39660
- setUnreadMessageId('');
39681
+ dispatch(setUnreadMessageIdAC(''));
39661
39682
  }
39662
39683
  }
39663
39684
  }, [messages, hiddenMessagesProperties, user === null || user === void 0 ? void 0 : user.id]);
@@ -39778,12 +39799,14 @@ var MessageList = function MessageList(_ref2) {
39778
39799
  React.useEffect(function () {
39779
39800
  log.info('connection status is changed.. .... ', connectionStatus, 'channel ... ', channel);
39780
39801
  if (connectionStatus === CONNECTION_STATUS.CONNECTED && channel !== null && channel !== void 0 && channel.id) {
39802
+ var _channel$lastMessage4;
39781
39803
  loadingRef.current = false;
39782
39804
  prevDisableRef.current = false;
39783
39805
  nextDisableRef.current = false;
39784
39806
  clearMessagesMap();
39785
39807
  removeAllMessages();
39786
- dispatch(getMessagesAC(channel, false, lastVisibleMessageId, 0, false, 'instant', false, true));
39808
+ var isWithLastVisibleMessageId = lastVisibleMessageId !== ((_channel$lastMessage4 = channel.lastMessage) === null || _channel$lastMessage4 === void 0 ? void 0 : _channel$lastMessage4.id) && lastVisibleMessageId ? lastVisibleMessageId : '';
39809
+ dispatch(getMessagesAC(channel, false, isWithLastVisibleMessageId, 0, false, 'instant', false, true));
39787
39810
  }
39788
39811
  }, [connectionStatus]);
39789
39812
  React.useEffect(function () {