sceyt-chat-react-uikit 1.7.0 → 1.7.1-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js CHANGED
@@ -11114,12 +11114,13 @@ var ThemeReducer = (function (state, _ref) {
11114
11114
  }
11115
11115
  });
11116
11116
 
11117
- var createChannelAC = function createChannelAC(channelData, dontCreateIfNotExists) {
11117
+ var createChannelAC = function createChannelAC(channelData, dontCreateIfNotExists, callback) {
11118
11118
  return {
11119
11119
  type: CREATE_CHANNEL,
11120
11120
  payload: {
11121
11121
  channelData: channelData,
11122
- dontCreateIfNotExists: dontCreateIfNotExists
11122
+ dontCreateIfNotExists: dontCreateIfNotExists,
11123
+ callback: callback
11123
11124
  }
11124
11125
  };
11125
11126
  };
@@ -11285,11 +11286,15 @@ var setActiveChannelAC = function setActiveChannelAC(channel) {
11285
11286
  channel: channel
11286
11287
  });
11287
11288
  };
11288
- var switchChannelActionAC = function switchChannelActionAC(channel) {
11289
+ var switchChannelActionAC = function switchChannelActionAC(channel, updateActiveChannel) {
11290
+ if (updateActiveChannel === void 0) {
11291
+ updateActiveChannel = true;
11292
+ }
11289
11293
  return {
11290
11294
  type: SWITCH_CHANNEL,
11291
11295
  payload: {
11292
- channel: channel
11296
+ channel: channel,
11297
+ updateActiveChannel: updateActiveChannel
11293
11298
  }
11294
11299
  };
11295
11300
  };
@@ -11521,6 +11526,7 @@ var getChannelMentionsAC = function getChannelMentionsAC(channelId) {
11521
11526
  };
11522
11527
 
11523
11528
  var GET_MESSAGES = 'GET_MESSAGES';
11529
+ var GET_MESSAGE = 'GET_MESSAGE';
11524
11530
  var LOAD_MORE_MESSAGES = 'LOAD_MORE_MESSAGES';
11525
11531
  var SEND_MESSAGE = 'SEND_MESSAGE';
11526
11532
  var SEND_TEXT_MESSAGE = 'SEND_TEXT_MESSAGE';
@@ -11629,6 +11635,16 @@ function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliv
11629
11635
  }
11630
11636
  };
11631
11637
  }
11638
+ function getMessageAC(channelId, messageId, limit) {
11639
+ return {
11640
+ type: GET_MESSAGE,
11641
+ payload: {
11642
+ channelId: channelId,
11643
+ messageId: messageId,
11644
+ limit: limit
11645
+ }
11646
+ };
11647
+ }
11632
11648
  function setScrollToMessagesAC(messageId, highlight) {
11633
11649
  if (highlight === void 0) {
11634
11650
  highlight = true;
@@ -14761,13 +14777,13 @@ var _marked$2 = /*#__PURE__*/_regenerator().m(createChannel),
14761
14777
  _marked27 = /*#__PURE__*/_regenerator().m(watchForChannelEvents),
14762
14778
  _marked28 = /*#__PURE__*/_regenerator().m(ChannelsSaga);
14763
14779
  function createChannel(action) {
14764
- var payload, channelData, dontCreateIfNotExists, SceytChatClient, createChannelData, fileToUpload, isSelfChannel, channelIsExistOnAllChannels, createdChannel, allChannels, memberId, checkChannelExist, messageToSend, _allChannels, _memberId, _t;
14780
+ var payload, channelData, dontCreateIfNotExists, callback, SceytChatClient, createChannelData, fileToUpload, isSelfChannel, channelIsExistOnAllChannels, createdChannel, allChannels, memberId, checkChannelExist, messageToSend, _allChannels, _memberId, _t;
14765
14781
  return _regenerator().w(function (_context) {
14766
14782
  while (1) switch (_context.p = _context.n) {
14767
14783
  case 0:
14768
14784
  _context.p = 0;
14769
14785
  payload = action.payload;
14770
- channelData = payload.channelData, dontCreateIfNotExists = payload.dontCreateIfNotExists;
14786
+ channelData = payload.channelData, dontCreateIfNotExists = payload.dontCreateIfNotExists, callback = payload.callback;
14771
14787
  SceytChatClient = getClient();
14772
14788
  createChannelData = _extends({}, channelData);
14773
14789
  if (!createChannelData.avatarFile) {
@@ -14894,7 +14910,7 @@ function createChannel(action) {
14894
14910
  _context.n = 14;
14895
14911
  return effects.put(switchChannelActionAC(JSON.parse(JSON.stringify(_extends({}, createdChannel, {
14896
14912
  isLinkedChannel: dontCreateIfNotExists
14897
- })))));
14913
+ }))), !callback));
14898
14914
  case 14:
14899
14915
  if (dontCreateIfNotExists) {
14900
14916
  if (!channelIsExistOnAllChannels) {
@@ -14924,19 +14940,27 @@ function createChannel(action) {
14924
14940
  addChannelToAllChannels(createdChannel);
14925
14941
  }
14926
14942
  }
14927
- _context.n = 15;
14928
- return effects.call(setActiveChannelId, createdChannel.id);
14929
- case 15:
14930
- _context.n = 17;
14943
+ if (!callback) {
14944
+ _context.n = 15;
14945
+ break;
14946
+ }
14947
+ callback(createdChannel);
14948
+ _context.n = 16;
14931
14949
  break;
14950
+ case 15:
14951
+ _context.n = 16;
14952
+ return effects.call(setActiveChannelId, createdChannel.id);
14932
14953
  case 16:
14933
- _context.p = 16;
14954
+ _context.n = 18;
14955
+ break;
14956
+ case 17:
14957
+ _context.p = 17;
14934
14958
  _t = _context.v;
14935
14959
  log.error(_t, 'Error on create channel');
14936
- case 17:
14960
+ case 18:
14937
14961
  return _context.a(2);
14938
14962
  }
14939
- }, _marked$2, null, [[0, 16]]);
14963
+ }, _marked$2, null, [[0, 17]]);
14940
14964
  }
14941
14965
  function getChannels(action) {
14942
14966
  var _params$filter, _types, payload, params, SceytChatClient, channelQueryBuilder, channelTypesFilter, types, channelQuery, channelsData, channelList, channelId, activeChannel, _yield$call, mappedChannels, channelsForUpdateLastReactionMessage, channelMessageMap, hiddenList, allChannelsQueryBuilder, allChannelsQuery, hasNext, i, allChannelsData, allChannelList, _t2, _t3, _t4;
@@ -15688,15 +15712,15 @@ function markMessagesDelivered(action) {
15688
15712
  }, _marked0, null, [[1, 4]]);
15689
15713
  }
15690
15714
  function switchChannel(action) {
15691
- var payload, channel, channelToSwitch, existingChannel, addChannel, SceytChatClient, fetchedChannel, channelFromMap, currentActiveChannel, _t11;
15715
+ var payload, channel, updateActiveChannel, channelToSwitch, existingChannel, addChannel, SceytChatClient, fetchedChannel, channelFromMap, currentActiveChannel, _t11;
15692
15716
  return _regenerator().w(function (_context1) {
15693
15717
  while (1) switch (_context1.p = _context1.n) {
15694
15718
  case 0:
15695
15719
  _context1.p = 0;
15696
15720
  payload = action.payload;
15697
- channel = payload.channel;
15721
+ channel = payload.channel, updateActiveChannel = payload.updateActiveChannel;
15698
15722
  channelToSwitch = channel;
15699
- if (channel !== null && channel !== void 0 && channel.id) {
15723
+ if (!(!(channel !== null && channel !== void 0 && channel.id) && updateActiveChannel)) {
15700
15724
  _context1.n = 3;
15701
15725
  break;
15702
15726
  }
@@ -15744,6 +15768,10 @@ function switchChannel(action) {
15744
15768
  channelFromMap = getChannelFromMap(channel.id);
15745
15769
  channelToSwitch = _extends({}, channelToSwitch, channelFromMap);
15746
15770
  case 10:
15771
+ if (!updateActiveChannel) {
15772
+ _context1.n = 13;
15773
+ break;
15774
+ }
15747
15775
  currentActiveChannel = getChannelFromMap(getActiveChannelId());
15748
15776
  _context1.n = 11;
15749
15777
  return effects.call(setUnreadScrollTo, true);
@@ -17135,16 +17163,17 @@ var _marked$3 = /*#__PURE__*/_regenerator().m(sendMessage),
17135
17163
  _marked5$1 = /*#__PURE__*/_regenerator().m(deleteMessage),
17136
17164
  _marked6$1 = /*#__PURE__*/_regenerator().m(editMessage),
17137
17165
  _marked7$1 = /*#__PURE__*/_regenerator().m(getMessagesQuery),
17138
- _marked8$1 = /*#__PURE__*/_regenerator().m(loadMoreMessages),
17139
- _marked9$1 = /*#__PURE__*/_regenerator().m(addReaction),
17140
- _marked0$1 = /*#__PURE__*/_regenerator().m(deleteReaction),
17141
- _marked1$1 = /*#__PURE__*/_regenerator().m(getReactions),
17142
- _marked10$1 = /*#__PURE__*/_regenerator().m(loadMoreReactions),
17143
- _marked11$1 = /*#__PURE__*/_regenerator().m(getMessageAttachments),
17144
- _marked12$1 = /*#__PURE__*/_regenerator().m(loadMoreMessageAttachments),
17145
- _marked13$1 = /*#__PURE__*/_regenerator().m(pauseAttachmentUploading),
17146
- _marked14$1 = /*#__PURE__*/_regenerator().m(resumeAttachmentUploading),
17147
- _marked15$1 = /*#__PURE__*/_regenerator().m(MessageSaga);
17166
+ _marked8$1 = /*#__PURE__*/_regenerator().m(getMessageQuery),
17167
+ _marked9$1 = /*#__PURE__*/_regenerator().m(loadMoreMessages),
17168
+ _marked0$1 = /*#__PURE__*/_regenerator().m(addReaction),
17169
+ _marked1$1 = /*#__PURE__*/_regenerator().m(deleteReaction),
17170
+ _marked10$1 = /*#__PURE__*/_regenerator().m(getReactions),
17171
+ _marked11$1 = /*#__PURE__*/_regenerator().m(loadMoreReactions),
17172
+ _marked12$1 = /*#__PURE__*/_regenerator().m(getMessageAttachments),
17173
+ _marked13$1 = /*#__PURE__*/_regenerator().m(loadMoreMessageAttachments),
17174
+ _marked14$1 = /*#__PURE__*/_regenerator().m(pauseAttachmentUploading),
17175
+ _marked15$1 = /*#__PURE__*/_regenerator().m(resumeAttachmentUploading),
17176
+ _marked16$1 = /*#__PURE__*/_regenerator().m(MessageSaga);
17148
17177
  var handleUploadAttachments = function handleUploadAttachments(attachments, message, channel) {
17149
17178
  try {
17150
17179
  return Promise.resolve(Promise.all(attachments.map(function (attachment) {
@@ -17731,7 +17760,8 @@ function sendTextMessage(action) {
17731
17760
  metadata: messageResponse.metadata,
17732
17761
  parentMessage: messageResponse.parentMessage,
17733
17762
  repliedInThread: messageResponse.repliedInThread,
17734
- createdAt: messageResponse.createdAt
17763
+ createdAt: messageResponse.createdAt,
17764
+ channelId: channel.id
17735
17765
  };
17736
17766
  _context4.n = 13;
17737
17767
  return effects.put(updateMessageAC(messageToSend.tid, messageUpdateData));
@@ -18758,23 +18788,61 @@ function getMessagesQuery(action) {
18758
18788
  }
18759
18789
  }, _marked7$1, null, [[0, 49, 50, 52]]);
18760
18790
  }
18761
- function loadMoreMessages(action) {
18762
- var payload, limit, direction, channelId, messageId, hasNext, SceytChatClient, messageQueryBuilder, messageQuery, result, _t0;
18791
+ function getMessageQuery(action) {
18792
+ var payload, channelId, messageId, channel, messages, _t0;
18763
18793
  return _regenerator().w(function (_context0) {
18764
18794
  while (1) switch (_context0.p = _context0.n) {
18765
18795
  case 0:
18766
18796
  _context0.p = 0;
18767
18797
  payload = action.payload;
18798
+ channelId = payload.channelId, messageId = payload.messageId;
18799
+ _context0.n = 1;
18800
+ return effects.call(getChannelFromMap, channelId);
18801
+ case 1:
18802
+ channel = _context0.v;
18803
+ _context0.n = 2;
18804
+ return effects.call(channel.getMessagesById, [messageId]);
18805
+ case 2:
18806
+ messages = _context0.v;
18807
+ _context0.n = 3;
18808
+ return effects.put(updateMessageAC(messageId, messages[0]));
18809
+ case 3:
18810
+ updateMessageOnMap(channel.id, {
18811
+ messageId: messageId,
18812
+ params: messages[0]
18813
+ });
18814
+ updateMessageOnAllMessages(messageId, messages[0]);
18815
+ _context0.n = 4;
18816
+ return effects.put(setScrollToMessagesAC(messageId, false));
18817
+ case 4:
18818
+ _context0.n = 6;
18819
+ break;
18820
+ case 5:
18821
+ _context0.p = 5;
18822
+ _t0 = _context0.v;
18823
+ log.error('error in message query', _t0);
18824
+ case 6:
18825
+ return _context0.a(2);
18826
+ }
18827
+ }, _marked8$1, null, [[0, 5]]);
18828
+ }
18829
+ function loadMoreMessages(action) {
18830
+ var payload, limit, direction, channelId, messageId, hasNext, SceytChatClient, messageQueryBuilder, messageQuery, result, _t1;
18831
+ return _regenerator().w(function (_context1) {
18832
+ while (1) switch (_context1.p = _context1.n) {
18833
+ case 0:
18834
+ _context1.p = 0;
18835
+ payload = action.payload;
18768
18836
  limit = payload.limit, direction = payload.direction, channelId = payload.channelId, messageId = payload.messageId, hasNext = payload.hasNext;
18769
18837
  SceytChatClient = getClient();
18770
18838
  messageQueryBuilder = new SceytChatClient.MessageListQueryBuilder(channelId);
18771
18839
  messageQueryBuilder.reverse(true);
18772
- _context0.n = 1;
18840
+ _context1.n = 1;
18773
18841
  return effects.call(messageQueryBuilder.build);
18774
18842
  case 1:
18775
- messageQuery = _context0.v;
18843
+ messageQuery = _context1.v;
18776
18844
  messageQuery.limit = limit || 5;
18777
- _context0.n = 2;
18845
+ _context1.n = 2;
18778
18846
  return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
18779
18847
  case 2:
18780
18848
  result = {
@@ -18782,116 +18850,116 @@ function loadMoreMessages(action) {
18782
18850
  hasNext: false
18783
18851
  };
18784
18852
  if (!(direction === MESSAGE_LOAD_DIRECTION.PREV)) {
18785
- _context0.n = 6;
18853
+ _context1.n = 6;
18786
18854
  break;
18787
18855
  }
18788
18856
  if (!getHasPrevCached()) {
18789
- _context0.n = 3;
18857
+ _context1.n = 3;
18790
18858
  break;
18791
18859
  }
18792
18860
  result.messages = getFromAllMessagesByMessageId(messageId, MESSAGE_LOAD_DIRECTION.PREV);
18793
- _context0.n = 5;
18861
+ _context1.n = 5;
18794
18862
  break;
18795
18863
  case 3:
18796
18864
  if (!hasNext) {
18797
- _context0.n = 5;
18865
+ _context1.n = 5;
18798
18866
  break;
18799
18867
  }
18800
- _context0.n = 4;
18868
+ _context1.n = 4;
18801
18869
  return effects.call(messageQuery.loadPreviousMessageId, messageId);
18802
18870
  case 4:
18803
- result = _context0.v;
18871
+ result = _context1.v;
18804
18872
  if (result.messages.length) {
18805
18873
  addAllMessages(result.messages, MESSAGE_LOAD_DIRECTION.PREV);
18806
18874
  }
18807
- _context0.n = 5;
18875
+ _context1.n = 5;
18808
18876
  return effects.put(setMessagesHasPrevAC(result.hasNext));
18809
18877
  case 5:
18810
- _context0.n = 10;
18878
+ _context1.n = 10;
18811
18879
  break;
18812
18880
  case 6:
18813
18881
  if (!getHasNextCached()) {
18814
- _context0.n = 7;
18882
+ _context1.n = 7;
18815
18883
  break;
18816
18884
  }
18817
18885
  result.messages = getFromAllMessagesByMessageId(messageId, MESSAGE_LOAD_DIRECTION.NEXT);
18818
- _context0.n = 9;
18886
+ _context1.n = 9;
18819
18887
  break;
18820
18888
  case 7:
18821
18889
  if (!hasNext) {
18822
- _context0.n = 9;
18890
+ _context1.n = 9;
18823
18891
  break;
18824
18892
  }
18825
18893
  log.info('saga load next from server ... ', messageId);
18826
18894
  messageQuery.reverse = false;
18827
- _context0.n = 8;
18895
+ _context1.n = 8;
18828
18896
  return effects.call(messageQuery.loadNextMessageId, messageId);
18829
18897
  case 8:
18830
- result = _context0.v;
18898
+ result = _context1.v;
18831
18899
  log.info('result from server next ... ', result);
18832
18900
  if (result.messages.length) {
18833
18901
  addAllMessages(result.messages, MESSAGE_LOAD_DIRECTION.NEXT);
18834
18902
  }
18835
- _context0.n = 9;
18903
+ _context1.n = 9;
18836
18904
  return effects.put(setMessagesHasNextAC(result.hasNext));
18837
18905
  case 9:
18838
- _context0.n = 10;
18906
+ _context1.n = 10;
18839
18907
  return effects.put(setMessagesHasPrevAC(true));
18840
18908
  case 10:
18841
18909
  if (!(result.messages && result.messages.length && result.messages.length > 0)) {
18842
- _context0.n = 12;
18910
+ _context1.n = 12;
18843
18911
  break;
18844
18912
  }
18845
- _context0.n = 11;
18913
+ _context1.n = 11;
18846
18914
  return effects.put(addMessagesAC(JSON.parse(JSON.stringify(result.messages)), direction));
18847
18915
  case 11:
18848
- _context0.n = 13;
18916
+ _context1.n = 13;
18849
18917
  break;
18850
18918
  case 12:
18851
- _context0.n = 13;
18919
+ _context1.n = 13;
18852
18920
  return effects.put(addMessagesAC([], direction));
18853
18921
  case 13:
18854
- _context0.n = 14;
18922
+ _context1.n = 14;
18855
18923
  return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
18856
18924
  case 14:
18857
- _context0.n = 16;
18925
+ _context1.n = 16;
18858
18926
  break;
18859
18927
  case 15:
18860
- _context0.p = 15;
18861
- _t0 = _context0.v;
18862
- log.error('error in load more messages', _t0);
18928
+ _context1.p = 15;
18929
+ _t1 = _context1.v;
18930
+ log.error('error in load more messages', _t1);
18863
18931
  case 16:
18864
- return _context0.a(2);
18932
+ return _context1.a(2);
18865
18933
  }
18866
- }, _marked8$1, null, [[0, 15]]);
18934
+ }, _marked9$1, null, [[0, 15]]);
18867
18935
  }
18868
18936
  function addReaction(action) {
18869
- var payload, channelId, messageId, key, score, reason, enforceUnique, user, channel, _yield$call, _message2, reaction, channelUpdateParam, _t1;
18870
- return _regenerator().w(function (_context1) {
18871
- while (1) switch (_context1.p = _context1.n) {
18937
+ var payload, channelId, messageId, key, score, reason, enforceUnique, user, channel, _yield$call, _message2, reaction, channelUpdateParam, _t10;
18938
+ return _regenerator().w(function (_context10) {
18939
+ while (1) switch (_context10.p = _context10.n) {
18872
18940
  case 0:
18873
- _context1.p = 0;
18941
+ _context10.p = 0;
18874
18942
  payload = action.payload;
18875
18943
  channelId = payload.channelId, messageId = payload.messageId, key = payload.key, score = payload.score, reason = payload.reason, enforceUnique = payload.enforceUnique;
18876
18944
  user = getClient().user;
18877
- _context1.n = 1;
18945
+ _context10.n = 1;
18878
18946
  return effects.call(getChannelFromMap, channelId);
18879
18947
  case 1:
18880
- channel = _context1.v;
18948
+ channel = _context10.v;
18881
18949
  if (!channel) {
18882
18950
  channel = getChannelFromAllChannels(channelId);
18883
18951
  if (channel) {
18884
18952
  setChannelInMap(channel);
18885
18953
  }
18886
18954
  }
18887
- _context1.n = 2;
18955
+ _context10.n = 2;
18888
18956
  return effects.call(channel.addReaction, messageId, key, score, reason, enforceUnique);
18889
18957
  case 2:
18890
- _yield$call = _context1.v;
18958
+ _yield$call = _context10.v;
18891
18959
  _message2 = _yield$call.message;
18892
18960
  reaction = _yield$call.reaction;
18893
18961
  if (!(user.id === _message2.user.id)) {
18894
- _context1.n = 4;
18962
+ _context10.n = 4;
18895
18963
  break;
18896
18964
  }
18897
18965
  channelUpdateParam = {
@@ -18899,100 +18967,100 @@ function addReaction(action) {
18899
18967
  lastReactedMessage: _message2,
18900
18968
  newReactions: [reaction]
18901
18969
  };
18902
- _context1.n = 3;
18970
+ _context10.n = 3;
18903
18971
  return effects.put(updateChannelDataAC(channel.id, channelUpdateParam));
18904
18972
  case 3:
18905
18973
  updateChannelOnAllChannels(channel.id, channelUpdateParam);
18906
18974
  case 4:
18907
- _context1.n = 5;
18975
+ _context10.n = 5;
18908
18976
  return effects.put(addChannelAC(JSON.parse(JSON.stringify(channel))));
18909
18977
  case 5:
18910
- _context1.n = 6;
18978
+ _context10.n = 6;
18911
18979
  return effects.put(addReactionToListAC(reaction));
18912
18980
  case 6:
18913
- _context1.n = 7;
18981
+ _context10.n = 7;
18914
18982
  return effects.put(addReactionToMessageAC(_message2, reaction, true));
18915
18983
  case 7:
18916
18984
  addReactionToMessageOnMap(channelId, _message2, reaction, true);
18917
18985
  addReactionOnAllMessages(_message2, reaction, true);
18918
- _context1.n = 9;
18986
+ _context10.n = 9;
18919
18987
  break;
18920
18988
  case 8:
18921
- _context1.p = 8;
18922
- _t1 = _context1.v;
18923
- log.error('ERROR in add reaction', _t1.message);
18989
+ _context10.p = 8;
18990
+ _t10 = _context10.v;
18991
+ log.error('ERROR in add reaction', _t10.message);
18924
18992
  case 9:
18925
- return _context1.a(2);
18993
+ return _context10.a(2);
18926
18994
  }
18927
- }, _marked9$1, null, [[0, 8]]);
18995
+ }, _marked0$1, null, [[0, 8]]);
18928
18996
  }
18929
18997
  function deleteReaction(action) {
18930
- var payload, channelId, messageId, key, isLastReaction, channel, _yield$call2, _message3, reaction, channelUpdateParam, _t10;
18931
- return _regenerator().w(function (_context10) {
18932
- while (1) switch (_context10.p = _context10.n) {
18998
+ var payload, channelId, messageId, key, isLastReaction, channel, _yield$call2, _message3, reaction, channelUpdateParam, _t11;
18999
+ return _regenerator().w(function (_context11) {
19000
+ while (1) switch (_context11.p = _context11.n) {
18933
19001
  case 0:
18934
- _context10.p = 0;
19002
+ _context11.p = 0;
18935
19003
  payload = action.payload;
18936
19004
  channelId = payload.channelId, messageId = payload.messageId, key = payload.key, isLastReaction = payload.isLastReaction;
18937
- _context10.n = 1;
19005
+ _context11.n = 1;
18938
19006
  return effects.call(getChannelFromMap, channelId);
18939
19007
  case 1:
18940
- channel = _context10.v;
19008
+ channel = _context11.v;
18941
19009
  if (!channel) {
18942
19010
  channel = getChannelFromAllChannels(channelId);
18943
19011
  if (channel) {
18944
19012
  setChannelInMap(channel);
18945
19013
  }
18946
19014
  }
18947
- _context10.n = 2;
19015
+ _context11.n = 2;
18948
19016
  return effects.call(channel.deleteReaction, messageId, key);
18949
19017
  case 2:
18950
- _yield$call2 = _context10.v;
19018
+ _yield$call2 = _context11.v;
18951
19019
  _message3 = _yield$call2.message;
18952
19020
  reaction = _yield$call2.reaction;
18953
19021
  if (!isLastReaction) {
18954
- _context10.n = 4;
19022
+ _context11.n = 4;
18955
19023
  break;
18956
19024
  }
18957
19025
  channelUpdateParam = {
18958
19026
  userMessageReactions: [],
18959
19027
  lastReactedMessage: null
18960
19028
  };
18961
- _context10.n = 3;
19029
+ _context11.n = 3;
18962
19030
  return effects.put(updateChannelDataAC(channel.id, channelUpdateParam));
18963
19031
  case 3:
18964
19032
  updateChannelOnAllChannels(channel.id, channelUpdateParam);
18965
19033
  case 4:
18966
19034
  log.info('message received. ... ', _message3);
18967
- _context10.n = 5;
19035
+ _context11.n = 5;
18968
19036
  return effects.put(deleteReactionFromListAC(reaction));
18969
19037
  case 5:
18970
- _context10.n = 6;
19038
+ _context11.n = 6;
18971
19039
  return effects.put(deleteReactionFromMessageAC(_message3, reaction, true));
18972
19040
  case 6:
18973
19041
  removeReactionToMessageOnMap(channelId, _message3, reaction, true);
18974
19042
  removeReactionOnAllMessages(_message3, reaction, true);
18975
- _context10.n = 8;
19043
+ _context11.n = 8;
18976
19044
  break;
18977
19045
  case 7:
18978
- _context10.p = 7;
18979
- _t10 = _context10.v;
18980
- log.error('ERROR in delete reaction', _t10.message);
19046
+ _context11.p = 7;
19047
+ _t11 = _context11.v;
19048
+ log.error('ERROR in delete reaction', _t11.message);
18981
19049
  case 8:
18982
- return _context10.a(2);
19050
+ return _context11.a(2);
18983
19051
  }
18984
- }, _marked0$1, null, [[0, 7]]);
19052
+ }, _marked1$1, null, [[0, 7]]);
18985
19053
  }
18986
19054
  function getReactions(action) {
18987
- var payload, messageId, key, limit, SceytChatClient, reactionQueryBuilder, reactionQuery, result, _t11;
18988
- return _regenerator().w(function (_context11) {
18989
- while (1) switch (_context11.p = _context11.n) {
19055
+ var payload, messageId, key, limit, SceytChatClient, reactionQueryBuilder, reactionQuery, result, _t12;
19056
+ return _regenerator().w(function (_context12) {
19057
+ while (1) switch (_context12.p = _context12.n) {
18990
19058
  case 0:
18991
- _context11.p = 0;
19059
+ _context12.p = 0;
18992
19060
  payload = action.payload;
18993
19061
  messageId = payload.messageId, key = payload.key, limit = payload.limit;
18994
19062
  SceytChatClient = getClient();
18995
- _context11.n = 1;
19063
+ _context12.n = 1;
18996
19064
  return effects.put(setReactionsLoadingStateAC(LOADING_STATE.LOADING));
18997
19065
  case 1:
18998
19066
  reactionQueryBuilder = new SceytChatClient.ReactionListQueryBuilder(messageId);
@@ -19000,74 +19068,74 @@ function getReactions(action) {
19000
19068
  if (key) {
19001
19069
  reactionQueryBuilder.setKey(key);
19002
19070
  }
19003
- _context11.n = 2;
19071
+ _context12.n = 2;
19004
19072
  return effects.call(reactionQueryBuilder.build);
19005
19073
  case 2:
19006
- reactionQuery = _context11.v;
19007
- _context11.n = 3;
19074
+ reactionQuery = _context12.v;
19075
+ _context12.n = 3;
19008
19076
  return effects.call(reactionQuery.loadNext);
19009
19077
  case 3:
19010
- result = _context11.v;
19078
+ result = _context12.v;
19011
19079
  query.ReactionsQuery = reactionQuery;
19012
- _context11.n = 4;
19080
+ _context12.n = 4;
19013
19081
  return effects.put(setReactionsListAC(result.reactions, result.hasNext));
19014
19082
  case 4:
19015
- _context11.n = 5;
19083
+ _context12.n = 5;
19016
19084
  return effects.put(setReactionsLoadingStateAC(LOADING_STATE.LOADED));
19017
19085
  case 5:
19018
- _context11.n = 7;
19086
+ _context12.n = 7;
19019
19087
  break;
19020
19088
  case 6:
19021
- _context11.p = 6;
19022
- _t11 = _context11.v;
19023
- log.error('ERROR in get reactions', _t11.message);
19089
+ _context12.p = 6;
19090
+ _t12 = _context12.v;
19091
+ log.error('ERROR in get reactions', _t12.message);
19024
19092
  case 7:
19025
- return _context11.a(2);
19093
+ return _context12.a(2);
19026
19094
  }
19027
- }, _marked1$1, null, [[0, 6]]);
19095
+ }, _marked10$1, null, [[0, 6]]);
19028
19096
  }
19029
19097
  function loadMoreReactions(action) {
19030
- var payload, limit, ReactionQuery, result, _t12;
19031
- return _regenerator().w(function (_context12) {
19032
- while (1) switch (_context12.p = _context12.n) {
19098
+ var payload, limit, ReactionQuery, result, _t13;
19099
+ return _regenerator().w(function (_context13) {
19100
+ while (1) switch (_context13.p = _context13.n) {
19033
19101
  case 0:
19034
- _context12.p = 0;
19102
+ _context13.p = 0;
19035
19103
  payload = action.payload;
19036
19104
  limit = payload.limit;
19037
- _context12.n = 1;
19105
+ _context13.n = 1;
19038
19106
  return effects.put(setReactionsLoadingStateAC(LOADING_STATE.LOADING));
19039
19107
  case 1:
19040
19108
  ReactionQuery = query.ReactionsQuery;
19041
19109
  if (limit) {
19042
19110
  ReactionQuery.limit = limit;
19043
19111
  }
19044
- _context12.n = 2;
19112
+ _context13.n = 2;
19045
19113
  return effects.call(ReactionQuery.loadNext);
19046
19114
  case 2:
19047
- result = _context12.v;
19048
- _context12.n = 3;
19115
+ result = _context13.v;
19116
+ _context13.n = 3;
19049
19117
  return effects.put(addReactionsToListAC(result.reactions, result.hasNext));
19050
19118
  case 3:
19051
- _context12.n = 4;
19119
+ _context13.n = 4;
19052
19120
  return effects.put(setReactionsLoadingStateAC(LOADING_STATE.LOADED));
19053
19121
  case 4:
19054
- _context12.n = 6;
19122
+ _context13.n = 6;
19055
19123
  break;
19056
19124
  case 5:
19057
- _context12.p = 5;
19058
- _t12 = _context12.v;
19059
- log.error('ERROR in load more reactions', _t12.message);
19125
+ _context13.p = 5;
19126
+ _t13 = _context13.v;
19127
+ log.error('ERROR in load more reactions', _t13.message);
19060
19128
  case 6:
19061
- return _context12.a(2);
19129
+ return _context13.a(2);
19062
19130
  }
19063
- }, _marked10$1, null, [[0, 5]]);
19131
+ }, _marked11$1, null, [[0, 5]]);
19064
19132
  }
19065
19133
  function getMessageAttachments(action) {
19066
- var _action$payload2, channelId, attachmentType, limit, direction, attachmentId, forPopup, SceytChatClient, typeList, AttachmentByTypeQueryBuilder, AttachmentByTypeQuery, result, _t13;
19067
- return _regenerator().w(function (_context13) {
19068
- while (1) switch (_context13.p = _context13.n) {
19134
+ var _action$payload2, channelId, attachmentType, limit, direction, attachmentId, forPopup, SceytChatClient, typeList, AttachmentByTypeQueryBuilder, AttachmentByTypeQuery, result, _t14;
19135
+ return _regenerator().w(function (_context14) {
19136
+ while (1) switch (_context14.p = _context14.n) {
19069
19137
  case 0:
19070
- _context13.p = 0;
19138
+ _context14.p = 0;
19071
19139
  _action$payload2 = action.payload, channelId = _action$payload2.channelId, attachmentType = _action$payload2.attachmentType, limit = _action$payload2.limit, direction = _action$payload2.direction, attachmentId = _action$payload2.attachmentId, forPopup = _action$payload2.forPopup;
19072
19140
  SceytChatClient = getClient();
19073
19141
  typeList = [attachmentTypes.video, attachmentTypes.image, attachmentTypes.file, attachmentTypes.link, attachmentTypes.voice];
@@ -19082,240 +19150,243 @@ function getMessageAttachments(action) {
19082
19150
  }
19083
19151
  AttachmentByTypeQueryBuilder = new SceytChatClient.AttachmentListQueryBuilder(channelId, typeList);
19084
19152
  AttachmentByTypeQueryBuilder.limit(limit || 34);
19085
- _context13.n = 1;
19153
+ _context14.n = 1;
19086
19154
  return effects.call(AttachmentByTypeQueryBuilder.build);
19087
19155
  case 1:
19088
- AttachmentByTypeQuery = _context13.v;
19156
+ AttachmentByTypeQuery = _context14.v;
19089
19157
  if (forPopup) {
19090
19158
  AttachmentByTypeQuery.reverse = true;
19091
19159
  }
19092
19160
  if (!(direction === queryDirection.NEXT)) {
19093
- _context13.n = 3;
19161
+ _context14.n = 3;
19094
19162
  break;
19095
19163
  }
19096
- _context13.n = 2;
19164
+ _context14.n = 2;
19097
19165
  return effects.call(AttachmentByTypeQuery.loadPrevious);
19098
19166
  case 2:
19099
- result = _context13.v;
19100
- _context13.n = 7;
19167
+ result = _context14.v;
19168
+ _context14.n = 7;
19101
19169
  break;
19102
19170
  case 3:
19103
19171
  if (!(direction === queryDirection.NEAR)) {
19104
- _context13.n = 5;
19172
+ _context14.n = 5;
19105
19173
  break;
19106
19174
  }
19107
- _context13.n = 4;
19175
+ _context14.n = 4;
19108
19176
  return effects.call(AttachmentByTypeQuery.loadNearMessageId, attachmentId);
19109
19177
  case 4:
19110
- result = _context13.v;
19111
- _context13.n = 7;
19178
+ result = _context14.v;
19179
+ _context14.n = 7;
19112
19180
  break;
19113
19181
  case 5:
19114
- _context13.n = 6;
19182
+ _context14.n = 6;
19115
19183
  return effects.call(AttachmentByTypeQuery.loadPrevious);
19116
19184
  case 6:
19117
- result = _context13.v;
19185
+ result = _context14.v;
19118
19186
  case 7:
19119
19187
  if (!forPopup) {
19120
- _context13.n = 10;
19188
+ _context14.n = 10;
19121
19189
  break;
19122
19190
  }
19123
19191
  query.AttachmentByTypeQueryForPopup = AttachmentByTypeQuery;
19124
- _context13.n = 8;
19192
+ _context14.n = 8;
19125
19193
  return effects.put(setAttachmentsForPopupAC(JSON.parse(JSON.stringify(result.attachments))));
19126
19194
  case 8:
19127
- _context13.n = 9;
19195
+ _context14.n = 9;
19128
19196
  return effects.put(setAttachmentsCompleteForPopupAC(result.hasNext));
19129
19197
  case 9:
19130
- _context13.n = 12;
19198
+ _context14.n = 12;
19131
19199
  break;
19132
19200
  case 10:
19133
19201
  query.AttachmentByTypeQuery = AttachmentByTypeQuery;
19134
- _context13.n = 11;
19202
+ _context14.n = 11;
19135
19203
  return effects.put(setAttachmentsCompleteAC(result.hasNext));
19136
19204
  case 11:
19137
- _context13.n = 12;
19205
+ _context14.n = 12;
19138
19206
  return effects.put(setAttachmentsAC(JSON.parse(JSON.stringify(result.attachments))));
19139
19207
  case 12:
19140
- _context13.n = 14;
19208
+ _context14.n = 14;
19141
19209
  break;
19142
19210
  case 13:
19143
- _context13.p = 13;
19144
- _t13 = _context13.v;
19145
- log.error('error in message attachment query', _t13);
19211
+ _context14.p = 13;
19212
+ _t14 = _context14.v;
19213
+ log.error('error in message attachment query', _t14);
19146
19214
  case 14:
19147
- return _context13.a(2);
19215
+ return _context14.a(2);
19148
19216
  }
19149
- }, _marked11$1, null, [[0, 13]]);
19217
+ }, _marked12$1, null, [[0, 13]]);
19150
19218
  }
19151
19219
  function loadMoreMessageAttachments(action) {
19152
- var _action$payload3, limit, direction, forPopup, AttachmentQuery, _yield$call3, attachments, hasNext, _t14;
19153
- return _regenerator().w(function (_context14) {
19154
- while (1) switch (_context14.p = _context14.n) {
19220
+ var _action$payload3, limit, direction, forPopup, AttachmentQuery, _yield$call3, attachments, hasNext, _t15;
19221
+ return _regenerator().w(function (_context15) {
19222
+ while (1) switch (_context15.p = _context15.n) {
19155
19223
  case 0:
19156
- _context14.p = 0;
19224
+ _context15.p = 0;
19157
19225
  _action$payload3 = action.payload, limit = _action$payload3.limit, direction = _action$payload3.direction, forPopup = _action$payload3.forPopup;
19158
19226
  if (forPopup) {
19159
19227
  AttachmentQuery = query.AttachmentByTypeQueryForPopup;
19160
19228
  } else {
19161
19229
  AttachmentQuery = query.AttachmentByTypeQuery;
19162
19230
  }
19163
- _context14.n = 1;
19231
+ _context15.n = 1;
19164
19232
  return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
19165
19233
  case 1:
19166
19234
  AttachmentQuery.limit = limit;
19167
- _context14.n = 2;
19235
+ _context15.n = 2;
19168
19236
  return effects.call(AttachmentQuery.loadPrevious);
19169
19237
  case 2:
19170
- _yield$call3 = _context14.v;
19238
+ _yield$call3 = _context15.v;
19171
19239
  attachments = _yield$call3.attachments;
19172
19240
  hasNext = _yield$call3.hasNext;
19173
19241
  if (!forPopup) {
19174
- _context14.n = 4;
19242
+ _context15.n = 4;
19175
19243
  break;
19176
19244
  }
19177
- _context14.n = 3;
19245
+ _context15.n = 3;
19178
19246
  return effects.put(addAttachmentsForPopupAC(attachments, direction));
19179
19247
  case 3:
19180
- _context14.n = 7;
19248
+ _context15.n = 7;
19181
19249
  break;
19182
19250
  case 4:
19183
- _context14.n = 5;
19251
+ _context15.n = 5;
19184
19252
  return effects.put(setAttachmentsCompleteAC(hasNext));
19185
19253
  case 5:
19186
- _context14.n = 6;
19254
+ _context15.n = 6;
19187
19255
  return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19188
19256
  case 6:
19189
- _context14.n = 7;
19257
+ _context15.n = 7;
19190
19258
  return effects.put(addAttachmentsAC(attachments));
19191
19259
  case 7:
19192
- _context14.n = 9;
19260
+ _context15.n = 9;
19193
19261
  break;
19194
19262
  case 8:
19195
- _context14.p = 8;
19196
- _t14 = _context14.v;
19197
- log.error('error in message attachment query', _t14);
19263
+ _context15.p = 8;
19264
+ _t15 = _context15.v;
19265
+ log.error('error in message attachment query', _t15);
19198
19266
  case 9:
19199
- return _context14.a(2);
19267
+ return _context15.a(2);
19200
19268
  }
19201
- }, _marked12$1, null, [[0, 8]]);
19269
+ }, _marked13$1, null, [[0, 8]]);
19202
19270
  }
19203
19271
  function pauseAttachmentUploading(action) {
19204
- var attachmentId, isPaused, _t15;
19205
- return _regenerator().w(function (_context15) {
19206
- while (1) switch (_context15.p = _context15.n) {
19272
+ var attachmentId, isPaused, _t16;
19273
+ return _regenerator().w(function (_context16) {
19274
+ while (1) switch (_context16.p = _context16.n) {
19207
19275
  case 0:
19208
- _context15.p = 0;
19276
+ _context16.p = 0;
19209
19277
  attachmentId = action.payload.attachmentId;
19210
19278
  if (!getCustomUploader()) {
19211
- _context15.n = 1;
19279
+ _context16.n = 1;
19212
19280
  break;
19213
19281
  }
19214
19282
  isPaused = pauseUpload(attachmentId);
19215
19283
  if (!isPaused) {
19216
- _context15.n = 1;
19284
+ _context16.n = 1;
19217
19285
  break;
19218
19286
  }
19219
- _context15.n = 1;
19287
+ _context16.n = 1;
19220
19288
  return effects.put(updateAttachmentUploadingStateAC(UPLOAD_STATE.PAUSED, attachmentId));
19221
19289
  case 1:
19222
- _context15.n = 3;
19290
+ _context16.n = 3;
19223
19291
  break;
19224
19292
  case 2:
19225
- _context15.p = 2;
19226
- _t15 = _context15.v;
19227
- log.error('error in pause attachment uploading', _t15);
19293
+ _context16.p = 2;
19294
+ _t16 = _context16.v;
19295
+ log.error('error in pause attachment uploading', _t16);
19228
19296
  case 3:
19229
- return _context15.a(2);
19297
+ return _context16.a(2);
19230
19298
  }
19231
- }, _marked13$1, null, [[0, 2]]);
19299
+ }, _marked14$1, null, [[0, 2]]);
19232
19300
  }
19233
19301
  function resumeAttachmentUploading(action) {
19234
- var attachmentId, isResumed, _t16;
19235
- return _regenerator().w(function (_context16) {
19236
- while (1) switch (_context16.p = _context16.n) {
19302
+ var attachmentId, isResumed, _t17;
19303
+ return _regenerator().w(function (_context17) {
19304
+ while (1) switch (_context17.p = _context17.n) {
19237
19305
  case 0:
19238
- _context16.p = 0;
19306
+ _context17.p = 0;
19239
19307
  attachmentId = action.payload.attachmentId;
19240
19308
  log.info('resume for attachment ... ', attachmentId);
19241
19309
  if (!getCustomUploader()) {
19242
- _context16.n = 1;
19310
+ _context17.n = 1;
19243
19311
  break;
19244
19312
  }
19245
19313
  isResumed = resumeUpload(attachmentId);
19246
19314
  if (!isResumed) {
19247
- _context16.n = 1;
19315
+ _context17.n = 1;
19248
19316
  break;
19249
19317
  }
19250
- _context16.n = 1;
19318
+ _context17.n = 1;
19251
19319
  return effects.put(updateAttachmentUploadingStateAC(UPLOAD_STATE.UPLOADING, attachmentId));
19252
19320
  case 1:
19253
- _context16.n = 3;
19321
+ _context17.n = 3;
19254
19322
  break;
19255
19323
  case 2:
19256
- _context16.p = 2;
19257
- _t16 = _context16.v;
19258
- log.error('error in resume attachment uploading', _t16);
19324
+ _context17.p = 2;
19325
+ _t17 = _context17.v;
19326
+ log.error('error in resume attachment uploading', _t17);
19259
19327
  case 3:
19260
- return _context16.a(2);
19328
+ return _context17.a(2);
19261
19329
  }
19262
- }, _marked14$1, null, [[0, 2]]);
19330
+ }, _marked15$1, null, [[0, 2]]);
19263
19331
  }
19264
19332
  function MessageSaga() {
19265
- return _regenerator().w(function (_context17) {
19266
- while (1) switch (_context17.n) {
19333
+ return _regenerator().w(function (_context18) {
19334
+ while (1) switch (_context18.n) {
19267
19335
  case 0:
19268
- _context17.n = 1;
19336
+ _context18.n = 1;
19269
19337
  return effects.takeEvery(SEND_MESSAGE, sendMessage);
19270
19338
  case 1:
19271
- _context17.n = 2;
19339
+ _context18.n = 2;
19272
19340
  return effects.takeEvery(SEND_TEXT_MESSAGE, sendTextMessage);
19273
19341
  case 2:
19274
- _context17.n = 3;
19342
+ _context18.n = 3;
19275
19343
  return effects.takeEvery(FORWARD_MESSAGE, forwardMessage);
19276
19344
  case 3:
19277
- _context17.n = 4;
19345
+ _context18.n = 4;
19278
19346
  return effects.takeEvery(RESEND_MESSAGE, resendMessage);
19279
19347
  case 4:
19280
- _context17.n = 5;
19348
+ _context18.n = 5;
19281
19349
  return effects.takeLatest(EDIT_MESSAGE, editMessage);
19282
19350
  case 5:
19283
- _context17.n = 6;
19351
+ _context18.n = 6;
19284
19352
  return effects.takeEvery(DELETE_MESSAGE, deleteMessage);
19285
19353
  case 6:
19286
- _context17.n = 7;
19354
+ _context18.n = 7;
19287
19355
  return effects.takeLatest(GET_MESSAGES, getMessagesQuery);
19288
19356
  case 7:
19289
- _context17.n = 8;
19290
- return effects.takeLatest(GET_MESSAGES_ATTACHMENTS, getMessageAttachments);
19357
+ _context18.n = 8;
19358
+ return effects.takeLatest(GET_MESSAGE, getMessageQuery);
19291
19359
  case 8:
19292
- _context17.n = 9;
19293
- return effects.takeLatest(LOAD_MORE_MESSAGES_ATTACHMENTS, loadMoreMessageAttachments);
19360
+ _context18.n = 9;
19361
+ return effects.takeLatest(GET_MESSAGES_ATTACHMENTS, getMessageAttachments);
19294
19362
  case 9:
19295
- _context17.n = 10;
19296
- return effects.takeLatest(ADD_REACTION, addReaction);
19363
+ _context18.n = 10;
19364
+ return effects.takeLatest(LOAD_MORE_MESSAGES_ATTACHMENTS, loadMoreMessageAttachments);
19297
19365
  case 10:
19298
- _context17.n = 11;
19299
- return effects.takeLatest(DELETE_REACTION, deleteReaction);
19366
+ _context18.n = 11;
19367
+ return effects.takeLatest(ADD_REACTION, addReaction);
19300
19368
  case 11:
19301
- _context17.n = 12;
19302
- return effects.takeEvery(LOAD_MORE_MESSAGES, loadMoreMessages);
19369
+ _context18.n = 12;
19370
+ return effects.takeLatest(DELETE_REACTION, deleteReaction);
19303
19371
  case 12:
19304
- _context17.n = 13;
19305
- return effects.takeEvery(GET_REACTIONS, getReactions);
19372
+ _context18.n = 13;
19373
+ return effects.takeEvery(LOAD_MORE_MESSAGES, loadMoreMessages);
19306
19374
  case 13:
19307
- _context17.n = 14;
19308
- return effects.takeEvery(LOAD_MORE_REACTIONS, loadMoreReactions);
19375
+ _context18.n = 14;
19376
+ return effects.takeEvery(GET_REACTIONS, getReactions);
19309
19377
  case 14:
19310
- _context17.n = 15;
19311
- return effects.takeEvery(PAUSE_ATTACHMENT_UPLOADING, pauseAttachmentUploading);
19378
+ _context18.n = 15;
19379
+ return effects.takeEvery(LOAD_MORE_REACTIONS, loadMoreReactions);
19312
19380
  case 15:
19313
- _context17.n = 16;
19314
- return effects.takeEvery(RESUME_ATTACHMENT_UPLOADING, resumeAttachmentUploading);
19381
+ _context18.n = 16;
19382
+ return effects.takeEvery(PAUSE_ATTACHMENT_UPLOADING, pauseAttachmentUploading);
19315
19383
  case 16:
19316
- return _context17.a(2);
19384
+ _context18.n = 17;
19385
+ return effects.takeEvery(RESUME_ATTACHMENT_UPLOADING, resumeAttachmentUploading);
19386
+ case 17:
19387
+ return _context18.a(2);
19317
19388
  }
19318
- }, _marked15$1);
19389
+ }, _marked16$1);
19319
19390
  }
19320
19391
 
19321
19392
  var _marked$4 = /*#__PURE__*/_regenerator().m(getMembers),
@@ -20083,6 +20154,12 @@ var store = configureStore({
20083
20154
  });
20084
20155
  sagaMiddleware.run(rootSaga);
20085
20156
 
20157
+ var SceytReduxContext = /*#__PURE__*/React__default.createContext(null);
20158
+
20159
+ var useSelector = reactRedux.createSelectorHook(SceytReduxContext);
20160
+ var useDispatch = reactRedux.createDispatchHook(SceytReduxContext);
20161
+ var useStore = reactRedux.createStoreHook(SceytReduxContext);
20162
+
20086
20163
  var channelsSelector = function channelsSelector(store) {
20087
20164
  return store.ChannelReducer.channels;
20088
20165
  };
@@ -20257,7 +20334,7 @@ function useOnScreen(ref, rootElement) {
20257
20334
  }
20258
20335
 
20259
20336
  var useColors = function useColors() {
20260
- var themeReducer = reactRedux.useSelector(function (state) {
20337
+ var themeReducer = useSelector(function (state) {
20261
20338
  return state.ThemeReducer;
20262
20339
  });
20263
20340
  var currentThemeMode = (themeReducer === null || themeReducer === void 0 ? void 0 : themeReducer.theme) || defaultThemeMode;
@@ -20314,11 +20391,11 @@ var SceytChat = function SceytChat(_ref) {
20314
20391
  var _useColor = useColors(),
20315
20392
  backgroundColor = _useColor[THEME_COLORS.BACKGROUND],
20316
20393
  highlightedBackground = _useColor[THEME_COLORS.HIGHLIGHTED_BACKGROUND];
20317
- var dispatch = reactRedux.useDispatch();
20318
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
20319
- var draggingSelector = reactRedux.useSelector(isDraggingSelector, reactRedux.shallowEqual);
20320
- var channelsListWidth = reactRedux.useSelector(channelListWidthSelector, reactRedux.shallowEqual);
20321
- var getRolesFail = reactRedux.useSelector(getRolesFailSelector, reactRedux.shallowEqual);
20394
+ var dispatch = useDispatch();
20395
+ var contactsMap = useSelector(contactsMapSelector);
20396
+ var draggingSelector = useSelector(isDraggingSelector, reactRedux.shallowEqual);
20397
+ var channelsListWidth = useSelector(channelListWidthSelector, reactRedux.shallowEqual);
20398
+ var getRolesFail = useSelector(getRolesFailSelector, reactRedux.shallowEqual);
20322
20399
  var _useState = React.useState(null),
20323
20400
  SceytChatClient = _useState[0],
20324
20401
  setSceytChatClient = _useState[1];
@@ -20566,7 +20643,8 @@ var SceytChatContainer = function SceytChatContainer(_ref) {
20566
20643
  log.setLevel(logLevel);
20567
20644
  }, []);
20568
20645
  return /*#__PURE__*/React__default.createElement(reactRedux.Provider, {
20569
- store: store
20646
+ store: store,
20647
+ context: SceytReduxContext
20570
20648
  }, /*#__PURE__*/React__default.createElement(SceytChat, {
20571
20649
  client: client,
20572
20650
  theme: theme,
@@ -20596,8 +20674,8 @@ var themeSelector = function themeSelector(store) {
20596
20674
 
20597
20675
  var updateInterval;
20598
20676
  function useUpdatePresence(channel, isVisible) {
20599
- var dispatch = reactRedux.useDispatch();
20600
- var connectionStatus = reactRedux.useSelector(connectionStatusSelector);
20677
+ var dispatch = useDispatch();
20678
+ var connectionStatus = useSelector(connectionStatusSelector);
20601
20679
  var ChatClient = getClient();
20602
20680
  var user = ChatClient.user;
20603
20681
  var isDirectChannel = channel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
@@ -20895,7 +20973,7 @@ var Avatar = function Avatar(_ref) {
20895
20973
  border = _ref.border,
20896
20974
  borderRadius = _ref.borderRadius,
20897
20975
  handleAvatarClick = _ref.handleAvatarClick;
20898
- var theme = reactRedux.useSelector(themeSelector);
20976
+ var theme = useSelector(themeSelector);
20899
20977
  var _useColor = useColors(),
20900
20978
  iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE];
20901
20979
  var isDeletedUserAvatar = !image && !name;
@@ -21023,7 +21101,7 @@ var ChannelMessageText = function ChannelMessageText(_ref2) {
21023
21101
  }), channel.lastReactedMessage && '"')))));
21024
21102
  };
21025
21103
  var Channel = function Channel(_ref3) {
21026
- var _channel$metadata, _channel$metadata2;
21104
+ var _channel$metadata;
21027
21105
  var channel = _ref3.channel,
21028
21106
  theme = _ref3.theme,
21029
21107
  _ref3$showAvatar = _ref3.showAvatar,
@@ -21061,18 +21139,18 @@ var Channel = function Channel(_ref3) {
21061
21139
  iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE],
21062
21140
  textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY],
21063
21141
  background = _useColor[THEME_COLORS.BACKGROUND];
21064
- var dispatch = reactRedux.useDispatch();
21142
+ var dispatch = useDispatch();
21065
21143
  var ChatClient = getClient();
21066
21144
  var getFromContacts = getShowOnlyContactUsers();
21067
21145
  var user = ChatClient.user;
21068
- var activeChannel = reactRedux.useSelector(activeChannelSelector) || {};
21069
- var channelDraftIsRemoved = reactRedux.useSelector(channelMessageDraftIsRemovedSelector);
21146
+ var activeChannel = useSelector(activeChannelSelector) || {};
21147
+ var channelDraftIsRemoved = useSelector(channelMessageDraftIsRemovedSelector);
21070
21148
  var isDirectChannel = channel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
21071
- var isSelfChannel = isDirectChannel && ((_channel$metadata = channel.metadata) === null || _channel$metadata === void 0 ? void 0 : _channel$metadata.s);
21149
+ var isSelfChannel = isDirectChannel && (((_channel$metadata = channel.metadata) === null || _channel$metadata === void 0 ? void 0 : _channel$metadata.s) || channel.members.length === 1 && channel.members[0].id === user.id);
21072
21150
  var directChannelUser = isDirectChannel && channel.members.find(function (member) {
21073
21151
  return member.id !== user.id;
21074
21152
  });
21075
- var typingOrRecordingIndicator = reactRedux.useSelector(typingOrRecordingIndicatorArraySelector(channel.id));
21153
+ var typingOrRecordingIndicator = useSelector(typingOrRecordingIndicatorArraySelector(channel.id));
21076
21154
  var _useState = React.useState(),
21077
21155
  draftMessageText = _useState[0],
21078
21156
  setDraftMessageText = _useState[1];
@@ -21210,7 +21288,7 @@ var Channel = function Channel(_ref3) {
21210
21288
  subjectLineHeight: channelSubjectLineHeight,
21211
21289
  subjectColor: channelSubjectColor || textPrimary,
21212
21290
  avatarSize: channelAvatarSize
21213
- }, /*#__PURE__*/React__default.createElement("h3", null, channel.subject || (isDirectChannel && directChannelUser ? makeUsername(contactsMap && contactsMap[directChannelUser.id], directChannelUser, getFromContacts) : (_channel$metadata2 = channel.metadata) !== null && _channel$metadata2 !== void 0 && _channel$metadata2.s ? 'Me' : '')), channel.muted && (/*#__PURE__*/React__default.createElement(MutedIcon, {
21291
+ }, /*#__PURE__*/React__default.createElement("h3", null, channel.subject || (isDirectChannel && directChannelUser ? makeUsername(contactsMap && contactsMap[directChannelUser.id], directChannelUser, getFromContacts) : isSelfChannel ? 'Me' : '')), channel.muted && (/*#__PURE__*/React__default.createElement(MutedIcon, {
21214
21292
  color: notificationsIsMutedIconColor || iconInactive
21215
21293
  }, notificationsIsMutedIcon || /*#__PURE__*/React__default.createElement(SvgUnmuteNotifications, null))), (lastMessage || typingOrRecording.items.length > 0 || draftMessageText) && (/*#__PURE__*/React__default.createElement(LastMessage, {
21216
21294
  color: textSecondary,
@@ -21785,15 +21863,15 @@ var UsersPopup = function UsersPopup(_ref) {
21785
21863
  surface1 = _useColor[THEME_COLORS.SURFACE_1],
21786
21864
  textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY],
21787
21865
  surface2 = _useColor[THEME_COLORS.SURFACE_2];
21788
- var dispatch = reactRedux.useDispatch();
21866
+ var dispatch = useDispatch();
21789
21867
  var ChatClient = getClient();
21790
21868
  var selfUser = ChatClient.user;
21791
- var contactList = reactRedux.useSelector(contactListSelector);
21792
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
21793
- var usersList = reactRedux.useSelector(usersListSelector);
21794
- var theme = reactRedux.useSelector(themeSelector);
21869
+ var contactList = useSelector(contactListSelector);
21870
+ var contactsMap = useSelector(contactsMapSelector);
21871
+ var usersList = useSelector(usersListSelector);
21872
+ var theme = useSelector(themeSelector);
21795
21873
  var getFromContacts = getShowOnlyContactUsers();
21796
- var usersLoadingState = reactRedux.useSelector(usersLoadingStateSelector);
21874
+ var usersLoadingState = useSelector(usersLoadingStateSelector);
21797
21875
  var selectedMembersCont = React.useRef('');
21798
21876
  var _useState = React.useState(''),
21799
21877
  userSearchValue = _useState[0],
@@ -22353,11 +22431,11 @@ function CreateChannel(_ref) {
22353
22431
  warningColor = _useColor[THEME_COLORS.WARNING],
22354
22432
  textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY],
22355
22433
  background = _useColor[THEME_COLORS.BACKGROUND];
22356
- var dispatch = reactRedux.useDispatch();
22434
+ var dispatch = useDispatch();
22357
22435
  var uriRegexp = /^[A-Za-z0-9]*$/;
22358
22436
  var fileUploader = React.useRef(null);
22359
22437
  var uriPrefixRef = React.useRef(null);
22360
- var theme = reactRedux.useSelector(themeSelector);
22438
+ var theme = useSelector(themeSelector);
22361
22439
  var _useState = React.useState(false),
22362
22440
  usersPopupVisible = _useState[0],
22363
22441
  setUsersPopupVisible = _useState[1];
@@ -23031,7 +23109,7 @@ var EditProfile = function EditProfile(_ref) {
23031
23109
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
23032
23110
  background = _useColor[THEME_COLORS.BACKGROUND],
23033
23111
  surface1 = _useColor[THEME_COLORS.SURFACE_1];
23034
- var dispatch = reactRedux.useDispatch();
23112
+ var dispatch = useDispatch();
23035
23113
  var _useState = React.useState(user.firstName),
23036
23114
  firstName = _useState[0],
23037
23115
  setFirstName = _useState[1];
@@ -23122,7 +23200,7 @@ var ProfileSettings = function ProfileSettings(_ref) {
23122
23200
  var _useState2 = React.useState(''),
23123
23201
  activeSettingPage = _useState2[0],
23124
23202
  setActiveSettingPage = _useState2[1];
23125
- var user = reactRedux.useSelector(userSelector);
23203
+ var user = useSelector(userSelector);
23126
23204
  var handleOpenEditProfile = function handleOpenEditProfile() {
23127
23205
  setActiveSettingPage(editProfileIsOpen ? '' : settingsPages.profile);
23128
23206
  setEditProfileIsOpen(!editProfileIsOpen);
@@ -23260,27 +23338,27 @@ var ChannelList = function ChannelList(_ref) {
23260
23338
  textFootnote = _useColor[THEME_COLORS.TEXT_FOOTNOTE],
23261
23339
  borderColor = _useColor[THEME_COLORS.BORDER],
23262
23340
  surface2 = _useColor[THEME_COLORS.SURFACE_2];
23263
- var dispatch = reactRedux.useDispatch();
23341
+ var dispatch = useDispatch();
23264
23342
  var getFromContacts = getShowOnlyContactUsers();
23265
- var theme = reactRedux.useSelector(themeSelector);
23343
+ var theme = useSelector(themeSelector);
23266
23344
  var channelListRef = React.useRef(null);
23267
23345
  var channelsScrollRef = React.useRef(null);
23268
23346
  var _useState = React.useState(''),
23269
23347
  searchValue = _useState[0],
23270
23348
  setSearchValue = _useState[1];
23271
- var connectionStatus = reactRedux.useSelector(connectionStatusSelector);
23272
- var channels = reactRedux.useSelector(channelsSelector, reactRedux.shallowEqual) || [];
23273
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
23274
- var addedChannel = reactRedux.useSelector(addedChannelSelector);
23275
- var closeSearchChannels = reactRedux.useSelector(closeSearchChannelSelector);
23276
- var addedToChannel = reactRedux.useSelector(addedToChannelSelector);
23277
- var deletedChannel = reactRedux.useSelector(deletedChannelSelector);
23278
- var hiddenChannel = reactRedux.useSelector(hiddenChannelSelector);
23279
- var visibleChannel = reactRedux.useSelector(visibleChannelSelector);
23280
- var channelsHasNext = reactRedux.useSelector(channelsHasNextSelector) || false;
23281
- var searchedChannels = reactRedux.useSelector(searchedChannelsSelector) || [];
23282
- var channelsLoading = reactRedux.useSelector(channelsLoadingState) || {};
23283
- var activeChannel = reactRedux.useSelector(activeChannelSelector) || {};
23349
+ var connectionStatus = useSelector(connectionStatusSelector);
23350
+ var channels = useSelector(channelsSelector, reactRedux.shallowEqual) || [];
23351
+ var contactsMap = useSelector(contactsMapSelector);
23352
+ var addedChannel = useSelector(addedChannelSelector);
23353
+ var closeSearchChannels = useSelector(closeSearchChannelSelector);
23354
+ var addedToChannel = useSelector(addedToChannelSelector);
23355
+ var deletedChannel = useSelector(deletedChannelSelector);
23356
+ var hiddenChannel = useSelector(hiddenChannelSelector);
23357
+ var visibleChannel = useSelector(visibleChannelSelector);
23358
+ var channelsHasNext = useSelector(channelsHasNextSelector) || false;
23359
+ var searchedChannels = useSelector(searchedChannelsSelector) || [];
23360
+ var channelsLoading = useSelector(channelsLoadingState) || {};
23361
+ var activeChannel = useSelector(activeChannelSelector) || {};
23284
23362
  var _useState2 = React.useState(false),
23285
23363
  listWidthIsSet = _useState2[0],
23286
23364
  setListWidthIsSet = _useState2[1];
@@ -23863,12 +23941,12 @@ function Chat(_ref) {
23863
23941
  background = _useColor[THEME_COLORS.BACKGROUND],
23864
23942
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
23865
23943
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY];
23866
- var dispatch = reactRedux.useDispatch();
23867
- var channelListWidth = reactRedux.useSelector(channelListWidthSelector, reactRedux.shallowEqual);
23868
- var channelDetailsIsOpen = reactRedux.useSelector(channelInfoIsOpenSelector, reactRedux.shallowEqual);
23869
- var addedChannel = reactRedux.useSelector(addedToChannelSelector);
23870
- var channelCreated = reactRedux.useSelector(addedChannelSelector);
23871
- var activeChannel = reactRedux.useSelector(activeChannelSelector);
23944
+ var dispatch = useDispatch();
23945
+ var channelListWidth = useSelector(channelListWidthSelector, reactRedux.shallowEqual);
23946
+ var channelDetailsIsOpen = useSelector(channelInfoIsOpenSelector, reactRedux.shallowEqual);
23947
+ var addedChannel = useSelector(addedToChannelSelector);
23948
+ var channelCreated = useSelector(addedChannelSelector);
23949
+ var activeChannel = useSelector(activeChannelSelector);
23872
23950
  var autoSelectChannel = getAutoSelectFitsChannel();
23873
23951
  var _useState = React.useState(0),
23874
23952
  channelDetailsWidth = _useState[0],
@@ -24007,21 +24085,21 @@ function ChatHeader(_ref) {
24007
24085
  iconPrimary = _useColor[THEME_COLORS.ICON_PRIMARY],
24008
24086
  border = _useColor[THEME_COLORS.BORDER],
24009
24087
  backgroundHovered = _useColor[THEME_COLORS.BACKGROUND_HOVERED];
24010
- var dispatch = reactRedux.useDispatch();
24088
+ var dispatch = useDispatch();
24011
24089
  var ChatClient = getClient();
24012
24090
  var user = ChatClient.user;
24013
24091
  var getFromContacts = getShowOnlyContactUsers();
24014
- var activeChannel = reactRedux.useSelector(activeChannelSelector);
24015
- var theme = reactRedux.useSelector(themeSelector);
24092
+ var activeChannel = useSelector(activeChannelSelector);
24093
+ var theme = useSelector(themeSelector);
24016
24094
  var showChannelDetails = getShowChannelDetails();
24017
- var channelListHidden = reactRedux.useSelector(channelListHiddenSelector);
24018
- var channelDetailsIsOpen = reactRedux.useSelector(channelInfoIsOpenSelector, reactRedux.shallowEqual);
24095
+ var channelListHidden = useSelector(channelListHiddenSelector);
24096
+ var channelDetailsIsOpen = useSelector(channelInfoIsOpenSelector, reactRedux.shallowEqual);
24019
24097
  var isDirectChannel = activeChannel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
24020
24098
  var isSelfChannel = isDirectChannel && ((_activeChannel$metada = activeChannel.metadata) === null || _activeChannel$metada === void 0 ? void 0 : _activeChannel$metada.s);
24021
24099
  var directChannelUser = isDirectChannel && activeChannel.members.find(function (member) {
24022
24100
  return member.id !== user.id;
24023
24101
  });
24024
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
24102
+ var contactsMap = useSelector(contactsMapSelector);
24025
24103
  var memberDisplayText = getChannelTypesMemberDisplayTextMap();
24026
24104
  var displayMemberText = memberDisplayText && memberDisplayText[activeChannel.type] ? activeChannel.memberCount > 1 ? memberDisplayText[activeChannel.type] + "s" : memberDisplayText[activeChannel.type] : activeChannel.type === DEFAULT_CHANNEL_TYPE.BROADCAST || activeChannel.type === DEFAULT_CHANNEL_TYPE.PUBLIC ? activeChannel.memberCount > 1 ? 'subscribers' : 'subscriber' : activeChannel.memberCount > 1 ? 'members' : 'member';
24027
24105
  var channelDetailsOnOpen = function channelDetailsOnOpen() {
@@ -24862,13 +24940,13 @@ function ForwardMessagePopup(_ref) {
24862
24940
  surface2 = _useColor[THEME_COLORS.SURFACE_2];
24863
24941
  var ChatClient = getClient();
24864
24942
  var user = ChatClient.user;
24865
- var dispatch = reactRedux.useDispatch();
24866
- var channels = reactRedux.useSelector(channelsForForwardSelector) || [];
24867
- var searchedChannels = reactRedux.useSelector(searchedChannelsForForwardSelector) || [];
24868
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
24943
+ var dispatch = useDispatch();
24944
+ var channels = useSelector(channelsForForwardSelector) || [];
24945
+ var searchedChannels = useSelector(searchedChannelsForForwardSelector) || [];
24946
+ var contactsMap = useSelector(contactsMapSelector);
24869
24947
  var getFromContacts = getShowOnlyContactUsers();
24870
- var channelsLoading = reactRedux.useSelector(channelsLoadingStateForForwardSelector);
24871
- var channelsHasNext = reactRedux.useSelector(channelsForForwardHasNextSelector);
24948
+ var channelsLoading = useSelector(channelsLoadingStateForForwardSelector);
24949
+ var channelsHasNext = useSelector(channelsForForwardHasNextSelector);
24872
24950
  var _useState = React.useState(''),
24873
24951
  searchValue = _useState[0],
24874
24952
  setSearchValue = _useState[1];
@@ -25225,7 +25303,7 @@ var CustomLabel$1 = styled__default.label(_templateObject$m || (_templateObject$
25225
25303
  var Radio = styled__default.input(_templateObject2$j || (_templateObject2$j = _taggedTemplateLiteralLoose(["\n display: none;\n"])));
25226
25304
 
25227
25305
  function usePermissions(myRole) {
25228
- var rolesMap = reactRedux.useSelector(rolesMapSelector, reactRedux.shallowEqual);
25306
+ var rolesMap = useSelector(rolesMapSelector, reactRedux.shallowEqual);
25229
25307
  var myPermissions = myRole && rolesMap && rolesMap[myRole] ? rolesMap[myRole].permissions : [];
25230
25308
  var checkActionPermission = function checkActionPermission(actionName) {
25231
25309
  return myPermissions.includes(actionName);
@@ -25366,9 +25444,9 @@ var SliderPopup = function SliderPopup(_ref) {
25366
25444
  var _useColor = useColors(),
25367
25445
  textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY],
25368
25446
  overlayBackground2 = _useColor[THEME_COLORS.OVERLAY_BACKGROUND_2];
25369
- var dispatch = reactRedux.useDispatch();
25447
+ var dispatch = useDispatch();
25370
25448
  var getFromContacts = getShowOnlyContactUsers();
25371
- var connectionStatus = reactRedux.useSelector(connectionStatusSelector);
25449
+ var connectionStatus = useSelector(connectionStatusSelector);
25372
25450
  var ChatClient = getClient();
25373
25451
  var user = ChatClient.user;
25374
25452
  var _useState = React.useState(_extends({}, currentMediaFile)),
@@ -25405,8 +25483,8 @@ var SliderPopup = function SliderPopup(_ref) {
25405
25483
  messageToDelete = _useState1[0],
25406
25484
  setMessageToDelete = _useState1[1];
25407
25485
  var customDownloader = getCustomDownloader();
25408
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
25409
- var attachments = reactRedux.useSelector(attachmentsForPopupSelector, reactRedux.shallowEqual) || [];
25486
+ var contactsMap = useSelector(contactsMapSelector);
25487
+ var attachments = useSelector(attachmentsForPopupSelector, reactRedux.shallowEqual) || [];
25410
25488
  var visibilityTimeout = React.useRef();
25411
25489
  var carouselRef = React.useRef(null);
25412
25490
  var attachmentUserName = currentFile ? currentFile.user && makeUsername(contactsMap[currentFile.user.id], currentFile.user, getFromContacts && user.id !== currentFile.user.id) : '';
@@ -25938,7 +26016,7 @@ var Message = function Message(_ref) {
25938
26016
  var _useColor = useColors(),
25939
26017
  textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY],
25940
26018
  overlayBackground = _useColor[THEME_COLORS.OVERLAY_BACKGROUND];
25941
- var dispatch = reactRedux.useDispatch();
26019
+ var dispatch = useDispatch();
25942
26020
  var ChatClient = getClient();
25943
26021
  var user = ChatClient.user;
25944
26022
  var getFromContacts = getShowOnlyContactUsers();
@@ -26080,11 +26158,11 @@ function ReactionsPopup(_ref) {
26080
26158
  backgroundHovered = _useColor[THEME_COLORS.BACKGROUND_HOVERED];
26081
26159
  var popupRef = React.useRef(null);
26082
26160
  var scoresRef = React.useRef(null);
26083
- var reactions = reactRedux.useSelector(reactionsListSelector, reactRedux.shallowEqual);
26084
- var messageInputHeight = reactRedux.useSelector(sendMessageInputHeightSelector, reactRedux.shallowEqual);
26085
- var reactionsHasNext = reactRedux.useSelector(reactionsHasNextSelector, reactRedux.shallowEqual);
26086
- var reactionsLoadingState = reactRedux.useSelector(reactionsLoadingStateSelector, reactRedux.shallowEqual);
26087
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
26161
+ var reactions = useSelector(reactionsListSelector, reactRedux.shallowEqual);
26162
+ var messageInputHeight = useSelector(sendMessageInputHeightSelector, reactRedux.shallowEqual);
26163
+ var reactionsHasNext = useSelector(reactionsHasNextSelector, reactRedux.shallowEqual);
26164
+ var reactionsLoadingState = useSelector(reactionsLoadingStateSelector, reactRedux.shallowEqual);
26165
+ var contactsMap = useSelector(contactsMapSelector);
26088
26166
  var getFromContacts = getShowOnlyContactUsers();
26089
26167
  var _useState = React.useState('all'),
26090
26168
  activeTabKey = _useState[0],
@@ -26111,7 +26189,7 @@ function ReactionsPopup(_ref) {
26111
26189
  });
26112
26190
  }
26113
26191
  var user = getClient().user;
26114
- var dispatch = reactRedux.useDispatch();
26192
+ var dispatch = useDispatch();
26115
26193
  var _useState7 = React.useState(false),
26116
26194
  isScrolling = _useState7[0],
26117
26195
  setIsScrolling = _useState7[1];
@@ -29035,8 +29113,8 @@ var AudioPlayer = function AudioPlayer(_ref) {
29035
29113
  accentColor = _useColor[THEME_COLORS.ACCENT],
29036
29114
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
29037
29115
  backgroundSections = _useColor[THEME_COLORS.BACKGROUND_SECTIONS];
29038
- var dispatch = reactRedux.useDispatch();
29039
- var playingAudioId = reactRedux.useSelector(playingAudioIdSelector);
29116
+ var dispatch = useDispatch();
29117
+ var playingAudioId = useSelector(playingAudioIdSelector);
29040
29118
  var _useState = React.useState(recordingInitialState),
29041
29119
  recording = _useState[0],
29042
29120
  setRecording = _useState[1];
@@ -29277,11 +29355,11 @@ var Attachment = function Attachment(_ref) {
29277
29355
  iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE],
29278
29356
  borderColor = _useColor[THEME_COLORS.BORDER],
29279
29357
  background = _useColor[THEME_COLORS.BACKGROUND];
29280
- var dispatch = reactRedux.useDispatch();
29281
- var attachmentCompilationState = reactRedux.useSelector(attachmentCompilationStateSelector) || {};
29282
- var attachmentsUploadProgress = reactRedux.useSelector(attachmentsUploadProgressSelector) || {};
29283
- var connectionStatus = reactRedux.useSelector(connectionStatusSelector);
29284
- var theme = reactRedux.useSelector(themeSelector);
29358
+ var dispatch = useDispatch();
29359
+ var attachmentCompilationState = useSelector(attachmentCompilationStateSelector) || {};
29360
+ var attachmentsUploadProgress = useSelector(attachmentsUploadProgressSelector) || {};
29361
+ var connectionStatus = useSelector(connectionStatusSelector);
29362
+ var theme = useSelector(themeSelector);
29285
29363
  var imageContRef = React.useRef(null);
29286
29364
  var _useState = React.useState(!attachment.attachmentUrl),
29287
29365
  imageLoading = _useState[0],
@@ -31850,7 +31928,7 @@ var Message$1 = function Message(_ref) {
31850
31928
  border = _useColor[THEME_COLORS.BORDER];
31851
31929
  var bubbleOutgoing = outgoingMessageBackground;
31852
31930
  var bubbleIncoming = incomingMessageBackground;
31853
- var dispatch = reactRedux.useDispatch();
31931
+ var dispatch = useDispatch();
31854
31932
  var _useState = React.useState(false),
31855
31933
  deletePopupOpen = _useState[0],
31856
31934
  setDeletePopupOpen = _useState[1];
@@ -31884,7 +31962,7 @@ var Message$1 = function Message(_ref) {
31884
31962
  }),
31885
31963
  reactionsPopupHorizontalPosition = _useState0[0],
31886
31964
  setReactionsPopupHorizontalPosition = _useState0[1];
31887
- var scrollToNewMessage = reactRedux.useSelector(scrollToNewMessageSelector, reactRedux.shallowEqual);
31965
+ var scrollToNewMessage = useSelector(scrollToNewMessageSelector, reactRedux.shallowEqual);
31888
31966
  var messageItemRef = React.useRef();
31889
31967
  var isVisible = useOnScreen(messageItemRef);
31890
31968
  var reactionsCount = message.reactionTotals && message.reactionTotals.reduce(function (prevValue, currentValue) {
@@ -32059,6 +32137,7 @@ var Message$1 = function Message(_ref) {
32059
32137
  };
32060
32138
  React.useEffect(function () {
32061
32139
  if (isVisible) {
32140
+ var _channel$lastMessage;
32062
32141
  if (setLastVisibleMessageId) {
32063
32142
  setLastVisibleMessageId(message.id);
32064
32143
  }
@@ -32066,7 +32145,7 @@ var Message$1 = function Message(_ref) {
32066
32145
  if (!channel.isLinkedChannel) {
32067
32146
  setMessageToVisibleMessagesMap(message);
32068
32147
  }
32069
- if (scrollToNewMessage.scrollToBottom && (message.id === channel.lastMessage.id || !message.id)) {
32148
+ if (scrollToNewMessage.scrollToBottom && ((message === null || message === void 0 ? void 0 : message.id) === ((_channel$lastMessage = channel.lastMessage) === null || _channel$lastMessage === void 0 ? void 0 : _channel$lastMessage.id) || !(message !== null && message !== void 0 && message.id))) {
32070
32149
  dispatch(scrollToNewMessageAC(false, false, false));
32071
32150
  dispatch(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
32072
32151
  }
@@ -32403,7 +32482,7 @@ var Message$1 = function Message(_ref) {
32403
32482
  })));
32404
32483
  };
32405
32484
  var Message$2 = /*#__PURE__*/React__default.memo(Message$1, function (prevProps, nextProps) {
32406
- return prevProps.message.deliveryStatus === nextProps.message.deliveryStatus && prevProps.message.state === nextProps.message.state && prevProps.message.userReactions === nextProps.message.userReactions && prevProps.message.body === nextProps.message.body && prevProps.message.reactionTotals === nextProps.message.reactionTotals && prevProps.message.attachments === nextProps.message.attachments && prevProps.message.userMarkers === nextProps.message.userMarkers && prevProps.prevMessage === nextProps.prevMessage && prevProps.nextMessage === nextProps.nextMessage && prevProps.selectedMessagesMap === nextProps.selectedMessagesMap && prevProps.contactsMap === nextProps.contactsMap && prevProps.connectionStatus === nextProps.connectionStatus && prevProps.openedMessageMenuId === nextProps.openedMessageMenuId && prevProps.theme === nextProps.theme;
32485
+ return prevProps.message.deliveryStatus === nextProps.message.deliveryStatus && prevProps.message.state === nextProps.message.state && prevProps.message.userReactions === nextProps.message.userReactions && prevProps.message.body === nextProps.message.body && prevProps.message.reactionTotals === nextProps.message.reactionTotals && prevProps.message.attachments === nextProps.message.attachments && prevProps.message.metadata === nextProps.message.metadata && prevProps.message.userMarkers === nextProps.message.userMarkers && prevProps.prevMessage === nextProps.prevMessage && prevProps.nextMessage === nextProps.nextMessage && prevProps.selectedMessagesMap === nextProps.selectedMessagesMap && prevProps.contactsMap === nextProps.contactsMap && prevProps.connectionStatus === nextProps.connectionStatus && prevProps.openedMessageMenuId === nextProps.openedMessageMenuId && prevProps.theme === nextProps.theme;
32407
32486
  });
32408
32487
  var MessageReactionKey = styled__default.span(_templateObject$C || (_templateObject$C = _taggedTemplateLiteralLoose(["\n display: inline-flex;\n align-items: center;\n font-family:\n apple color emoji,\n segoe ui emoji,\n noto color emoji,\n android emoji,\n emojisymbols,\n emojione mozilla,\n twemoji mozilla,\n segoe ui symbol;\n"])));
32409
32488
  var ReactionItemCount = styled__default.span(_templateObject2$x || (_templateObject2$x = _taggedTemplateLiteralLoose(["\n margin-left: 2px;\n font-family: Inter, sans-serif;\n font-weight: 400;\n font-size: 14px;\n line-height: 16px;\n color: ", ";\n"])), function (props) {
@@ -32718,25 +32797,25 @@ var MessageList = function MessageList(_ref2) {
32718
32797
  incomingMessageBackgroundX = _useColor[THEME_COLORS.INCOMING_MESSAGE_BACKGROUND_X];
32719
32798
  var ChatClient = getClient();
32720
32799
  var user = ChatClient.user;
32721
- var dispatch = reactRedux.useDispatch();
32722
- var theme = reactRedux.useSelector(themeSelector);
32723
- var channel = reactRedux.useSelector(activeChannelSelector);
32724
- var contactsMap = reactRedux.useSelector(contactsMapSelector, reactRedux.shallowEqual);
32725
- var connectionStatus = reactRedux.useSelector(connectionStatusSelector, reactRedux.shallowEqual);
32726
- var openedMessageMenuId = reactRedux.useSelector(openedMessageMenuSelector, reactRedux.shallowEqual);
32727
- var tabIsActive = reactRedux.useSelector(tabIsActiveSelector, reactRedux.shallowEqual);
32728
- var selectedMessagesMap = reactRedux.useSelector(selectedMessagesMapSelector);
32729
- var scrollToNewMessage = reactRedux.useSelector(scrollToNewMessageSelector, reactRedux.shallowEqual);
32730
- var scrollToMentionedMessage = reactRedux.useSelector(scrollToMentionedMessageSelector, reactRedux.shallowEqual);
32731
- var scrollToRepliedMessage = reactRedux.useSelector(scrollToMessageSelector, reactRedux.shallowEqual);
32732
- var scrollToMessageHighlight = reactRedux.useSelector(scrollToMessageHighlightSelector, reactRedux.shallowEqual);
32733
- var browserTabIsActive = reactRedux.useSelector(browserTabIsActiveSelector, reactRedux.shallowEqual);
32734
- var hasNextMessages = reactRedux.useSelector(messagesHasNextSelector, reactRedux.shallowEqual);
32735
- var hasPrevMessages = reactRedux.useSelector(messagesHasPrevSelector, reactRedux.shallowEqual);
32736
- var messagesLoading = reactRedux.useSelector(messagesLoadingState);
32737
- var draggingSelector = reactRedux.useSelector(isDraggingSelector, reactRedux.shallowEqual);
32738
- var showScrollToNewMessageButton = reactRedux.useSelector(showScrollToNewMessageButtonSelector, reactRedux.shallowEqual);
32739
- var messages = reactRedux.useSelector(activeChannelMessagesSelector, reactRedux.shallowEqual) || [];
32800
+ var dispatch = useDispatch();
32801
+ var theme = useSelector(themeSelector);
32802
+ var channel = useSelector(activeChannelSelector);
32803
+ var contactsMap = useSelector(contactsMapSelector, reactRedux.shallowEqual);
32804
+ var connectionStatus = useSelector(connectionStatusSelector, reactRedux.shallowEqual);
32805
+ var openedMessageMenuId = useSelector(openedMessageMenuSelector, reactRedux.shallowEqual);
32806
+ var tabIsActive = useSelector(tabIsActiveSelector, reactRedux.shallowEqual);
32807
+ var selectedMessagesMap = useSelector(selectedMessagesMapSelector);
32808
+ var scrollToNewMessage = useSelector(scrollToNewMessageSelector, reactRedux.shallowEqual);
32809
+ var scrollToMentionedMessage = useSelector(scrollToMentionedMessageSelector, reactRedux.shallowEqual);
32810
+ var scrollToRepliedMessage = useSelector(scrollToMessageSelector, reactRedux.shallowEqual);
32811
+ var scrollToMessageHighlight = useSelector(scrollToMessageHighlightSelector, reactRedux.shallowEqual);
32812
+ var browserTabIsActive = useSelector(browserTabIsActiveSelector, reactRedux.shallowEqual);
32813
+ var hasNextMessages = useSelector(messagesHasNextSelector, reactRedux.shallowEqual);
32814
+ var hasPrevMessages = useSelector(messagesHasPrevSelector, reactRedux.shallowEqual);
32815
+ var messagesLoading = useSelector(messagesLoadingState);
32816
+ var draggingSelector = useSelector(isDraggingSelector, reactRedux.shallowEqual);
32817
+ var showScrollToNewMessageButton = useSelector(showScrollToNewMessageButtonSelector, reactRedux.shallowEqual);
32818
+ var messages = useSelector(activeChannelMessagesSelector, reactRedux.shallowEqual) || [];
32740
32819
  var _useState = React.useState(''),
32741
32820
  unreadMessageId = _useState[0],
32742
32821
  setUnreadMessageId = _useState[1];
@@ -34087,7 +34166,7 @@ function MentionsContainer(_ref2) {
34087
34166
  selectOptionAndCleanUp = _ref2.selectOptionAndCleanUp,
34088
34167
  setHighlightedIndex = _ref2.setHighlightedIndex,
34089
34168
  setMentionsIsOpen = _ref2.setMentionsIsOpen;
34090
- var theme = reactRedux.useSelector(themeSelector);
34169
+ var theme = useSelector(themeSelector);
34091
34170
  var _useColor2 = useColors(),
34092
34171
  borderColor = _useColor2[THEME_COLORS.BORDER],
34093
34172
  background = _useColor2[THEME_COLORS.BACKGROUND];
@@ -35564,7 +35643,7 @@ var AudioRecord = function AudioRecord(_ref) {
35564
35643
  setRecordedFile(currentRecordedFile);
35565
35644
  }
35566
35645
  }, [currentRecordedFile]);
35567
- var dispatch = reactRedux.useDispatch();
35646
+ var dispatch = useDispatch();
35568
35647
  var handleStartRecording = function handleStartRecording() {
35569
35648
  dispatch(sendRecordingAC(true, currentChannelId));
35570
35649
  if (sendingInterval) {
@@ -36292,18 +36371,18 @@ var SendMessageInput = function SendMessageInput(_ref3) {
36292
36371
  textFootnote = _useColor[THEME_COLORS.TEXT_FOOTNOTE],
36293
36372
  highlightedBackground = _useColor[THEME_COLORS.HIGHLIGHTED_BACKGROUND],
36294
36373
  textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY];
36295
- var dispatch = reactRedux.useDispatch();
36374
+ var dispatch = useDispatch();
36296
36375
  var ChatClient = getClient();
36297
36376
  var user = ChatClient.user;
36298
- var channelDetailsIsOpen = reactRedux.useSelector(channelInfoIsOpenSelector, reactRedux.shallowEqual);
36299
- var theme = reactRedux.useSelector(themeSelector);
36377
+ var channelDetailsIsOpen = useSelector(channelInfoIsOpenSelector, reactRedux.shallowEqual);
36378
+ var theme = useSelector(themeSelector);
36300
36379
  var getFromContacts = getShowOnlyContactUsers();
36301
- var activeChannel = reactRedux.useSelector(activeChannelSelector);
36302
- var messageToEdit = reactRedux.useSelector(messageToEditSelector);
36303
- var activeChannelMembers = reactRedux.useSelector(activeChannelMembersSelector, reactRedux.shallowEqual);
36304
- var messageForReply = reactRedux.useSelector(messageForReplySelector);
36305
- var draggedAttachments = reactRedux.useSelector(draggedAttachmentsSelector);
36306
- var selectedMessagesMap = reactRedux.useSelector(selectedMessagesMapSelector);
36380
+ var activeChannel = useSelector(activeChannelSelector);
36381
+ var messageToEdit = useSelector(messageToEditSelector);
36382
+ var activeChannelMembers = useSelector(activeChannelMembersSelector, reactRedux.shallowEqual);
36383
+ var messageForReply = useSelector(messageForReplySelector);
36384
+ var draggedAttachments = useSelector(draggedAttachmentsSelector);
36385
+ var selectedMessagesMap = useSelector(selectedMessagesMapSelector);
36307
36386
  var isDirectChannel = activeChannel && activeChannel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
36308
36387
  var directChannelUser = isDirectChannel && activeChannel.members.find(function (member) {
36309
36388
  return member.id !== user.id;
@@ -36398,9 +36477,9 @@ var SendMessageInput = function SendMessageInput(_ref3) {
36398
36477
  var _useState25 = React.useState(''),
36399
36478
  uploadErrorMessage = _useState25[0],
36400
36479
  setUploadErrorMessage = _useState25[1];
36401
- var typingOrRecordingIndicator = reactRedux.useSelector(typingOrRecordingIndicatorArraySelector(activeChannel.id));
36402
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
36403
- var connectionStatus = reactRedux.useSelector(connectionStatusSelector, reactRedux.shallowEqual);
36480
+ var typingOrRecordingIndicator = useSelector(typingOrRecordingIndicatorArraySelector(activeChannel.id));
36481
+ var contactsMap = useSelector(contactsMapSelector);
36482
+ var connectionStatus = useSelector(connectionStatusSelector, reactRedux.shallowEqual);
36404
36483
  var messageContRef = React.useRef(null);
36405
36484
  var fileUploader = React.useRef(null);
36406
36485
  var inputWrapperRef = React.useRef(null);
@@ -38201,7 +38280,7 @@ var Actions = function Actions(_ref) {
38201
38280
  var _useState0 = React.useState(''),
38202
38281
  popupTitle = _useState0[0],
38203
38282
  setPopupTitle = _useState0[1];
38204
- var dispatch = reactRedux.useDispatch();
38283
+ var dispatch = useDispatch();
38205
38284
  var oneHour = 60 * 60 * 1000;
38206
38285
  var twoHours = oneHour * 2;
38207
38286
  var oneDay = oneHour * 24;
@@ -38663,14 +38742,14 @@ var ChangeMemberRole = function ChangeMemberRole(_ref) {
38663
38742
  surface1 = _useColor[THEME_COLORS.SURFACE_1],
38664
38743
  iconPrimary = _useColor[THEME_COLORS.ICON_PRIMARY],
38665
38744
  border = _useColor[THEME_COLORS.BORDER];
38666
- var dispatch = reactRedux.useDispatch();
38745
+ var dispatch = useDispatch();
38667
38746
  var _useState = React.useState(false),
38668
38747
  isChanged = _useState[0],
38669
38748
  setIsChanged = _useState[1];
38670
38749
  var _useState2 = React.useState(),
38671
38750
  selectedRole = _useState2[0],
38672
38751
  setSelectedRole = _useState2[1];
38673
- var roles = reactRedux.useSelector(rolesSelector, reactRedux.shallowEqual) || [];
38752
+ var roles = useSelector(rolesSelector, reactRedux.shallowEqual) || [];
38674
38753
  React.useEffect(function () {
38675
38754
  dispatch(getRolesAC());
38676
38755
  }, []);
@@ -38780,7 +38859,7 @@ var Members = function Members(_ref) {
38780
38859
  backgroundFocused = _useColor[THEME_COLORS.BACKGROUND_FOCUSED],
38781
38860
  iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE],
38782
38861
  surface1 = _useColor[THEME_COLORS.SURFACE_1];
38783
- var dispatch = reactRedux.useDispatch();
38862
+ var dispatch = useDispatch();
38784
38863
  var getFromContacts = getShowOnlyContactUsers();
38785
38864
  var _useState = React.useState(null),
38786
38865
  selectedMember = _useState[0],
@@ -38806,9 +38885,9 @@ var Members = function Members(_ref) {
38806
38885
  var _useState8 = React.useState(),
38807
38886
  closeMenu = _useState8[0],
38808
38887
  setCloseMenu = _useState8[1];
38809
- var members = reactRedux.useSelector(activeChannelMembersSelector) || [];
38810
- var contactsMap = reactRedux.useSelector(contactsMapSelector) || {};
38811
- var membersLoading = reactRedux.useSelector(membersLoadingStateSelector) || {};
38888
+ var members = useSelector(activeChannelMembersSelector) || [];
38889
+ var contactsMap = useSelector(contactsMapSelector) || {};
38890
+ var membersLoading = useSelector(membersLoadingStateSelector) || {};
38812
38891
  var user = getClient().user;
38813
38892
  var memberDisplayText = getChannelTypesMemberDisplayTextMap();
38814
38893
  var channelTypeRoleMap = getDefaultRolesByChannelTypesMap();
@@ -39088,11 +39167,11 @@ var Media = function Media(_ref) {
39088
39167
  var channel = _ref.channel;
39089
39168
  var _useColor = useColors(),
39090
39169
  background = _useColor[THEME_COLORS.BACKGROUND];
39091
- var attachments = reactRedux.useSelector(activeTabAttachmentsSelector, reactRedux.shallowEqual) || [];
39170
+ var attachments = useSelector(activeTabAttachmentsSelector, reactRedux.shallowEqual) || [];
39092
39171
  var _useState = React.useState(null),
39093
39172
  mediaFile = _useState[0],
39094
39173
  setMediaFile = _useState[1];
39095
- var dispatch = reactRedux.useDispatch();
39174
+ var dispatch = useDispatch();
39096
39175
  var handleMediaItemClick = function handleMediaItemClick(file) {
39097
39176
  setMediaFile(file);
39098
39177
  };
@@ -39206,11 +39285,11 @@ var Files = function Files(_ref) {
39206
39285
  backgroundHovered = _useColor[THEME_COLORS.BACKGROUND_HOVERED],
39207
39286
  surface1 = _useColor[THEME_COLORS.SURFACE_1],
39208
39287
  overlayBackground2 = _useColor[THEME_COLORS.OVERLAY_BACKGROUND_2];
39209
- var dispatch = reactRedux.useDispatch();
39288
+ var dispatch = useDispatch();
39210
39289
  var _useState = React.useState({}),
39211
39290
  downloadingFilesMap = _useState[0],
39212
39291
  setDownloadingFilesMap = _useState[1];
39213
- var attachments = reactRedux.useSelector(activeTabAttachmentsSelector, reactRedux.shallowEqual) || [];
39292
+ var attachments = useSelector(activeTabAttachmentsSelector, reactRedux.shallowEqual) || [];
39214
39293
  var nameSizeNum = fileNameFontSize && Number(fileNameFontSize.slice(0, -2));
39215
39294
  var nameMaxLength = nameSizeNum ? 32 - (nameSizeNum - 15) * (nameSizeNum < 20 ? 2 : 1) : 32;
39216
39295
  var handleCompleteDownload = function handleCompleteDownload(attachmentId) {
@@ -39275,7 +39354,7 @@ var Files = function Files(_ref) {
39275
39354
  lineHeight: fileSizeLineHeight,
39276
39355
  color: filePreviewSizeColor || textSecondary
39277
39356
  }, file.size ? bytesToSize(file.size) : '')), /*#__PURE__*/React__default.createElement(DownloadWrapper, {
39278
- visible: downloadingFilesMap[file.id],
39357
+ visible: !!downloadingFilesMap[file.id],
39279
39358
  iconColor: accentColor,
39280
39359
  onClick: function onClick() {
39281
39360
  return handleDownloadFile(file);
@@ -39422,8 +39501,8 @@ var Links = function Links(_ref) {
39422
39501
  linkPreviewTitleColor = _ref.linkPreviewTitleColor,
39423
39502
  linkPreviewColor = _ref.linkPreviewColor,
39424
39503
  linkPreviewHoverBackgroundColor = _ref.linkPreviewHoverBackgroundColor;
39425
- var dispatch = reactRedux.useDispatch();
39426
- var attachments = reactRedux.useSelector(activeTabAttachmentsSelector, reactRedux.shallowEqual) || [];
39504
+ var dispatch = useDispatch();
39505
+ var attachments = useSelector(activeTabAttachmentsSelector, reactRedux.shallowEqual) || [];
39427
39506
  React.useEffect(function () {
39428
39507
  dispatch(getAttachmentsAC(channelId, channelDetailsTabs.link));
39429
39508
  }, [channelId]);
@@ -39511,8 +39590,8 @@ var VoiceItem = function VoiceItem(_ref) {
39511
39590
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
39512
39591
  backgroundHovered = _useColor[THEME_COLORS.BACKGROUND_HOVERED],
39513
39592
  accentColor = _useColor[THEME_COLORS.ACCENT];
39514
- var dispatch = reactRedux.useDispatch();
39515
- var playingAudioId = reactRedux.useSelector(playingAudioIdSelector);
39593
+ var dispatch = useDispatch();
39594
+ var playingAudioId = useSelector(playingAudioIdSelector);
39516
39595
  var getFromContacts = getShowOnlyContactUsers();
39517
39596
  var _useState = React.useState(''),
39518
39597
  fileUrl = _useState[0],
@@ -39524,8 +39603,8 @@ var VoiceItem = function VoiceItem(_ref) {
39524
39603
  currentTime = _useState3[0],
39525
39604
  setCurrentTime = _useState3[1];
39526
39605
  var customDownloader = getCustomDownloader();
39527
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
39528
- var user = reactRedux.useSelector(userSelector);
39606
+ var contactsMap = useSelector(contactsMapSelector);
39607
+ var user = useSelector(userSelector);
39529
39608
  var audioRef = React.useRef();
39530
39609
  var intervalRef = React.useRef(null);
39531
39610
  var handlePlayPause = function handlePlayPause() {
@@ -39655,8 +39734,8 @@ var Voices = function Voices(_ref) {
39655
39734
  voicePreviewTitleColor = _ref.voicePreviewTitleColor,
39656
39735
  voicePreviewDateAndTimeColor = _ref.voicePreviewDateAndTimeColor,
39657
39736
  voicePreviewHoverBackgroundColor = _ref.voicePreviewHoverBackgroundColor;
39658
- var dispatch = reactRedux.useDispatch();
39659
- var attachments = reactRedux.useSelector(activeTabAttachmentsSelector, reactRedux.shallowEqual) || [];
39737
+ var dispatch = useDispatch();
39738
+ var attachments = useSelector(activeTabAttachmentsSelector, reactRedux.shallowEqual) || [];
39660
39739
  React.useEffect(function () {
39661
39740
  dispatch(getAttachmentsAC(channelId, channelDetailsTabs.voice));
39662
39741
  }, [channelId]);
@@ -39727,7 +39806,7 @@ var DetailsTab = function DetailsTab(_ref) {
39727
39806
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
39728
39807
  border = _useColor[THEME_COLORS.BORDER],
39729
39808
  background = _useColor[THEME_COLORS.BACKGROUND];
39730
- var dispatch = reactRedux.useDispatch();
39809
+ var dispatch = useDispatch();
39731
39810
  var isDirectChannel = channel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
39732
39811
  var showMembers = !isDirectChannel && checkActionPermission('getMembers');
39733
39812
  var memberDisplayText = getChannelTypesMemberDisplayTextMap();
@@ -39879,8 +39958,8 @@ var EditChannel = function EditChannel(_ref) {
39879
39958
  textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY];
39880
39959
  var ChatClient = getClient();
39881
39960
  var user = ChatClient.user;
39882
- var dispatch = reactRedux.useDispatch();
39883
- var isEditMode = reactRedux.useSelector(channelEditModeSelector);
39961
+ var dispatch = useDispatch();
39962
+ var isEditMode = useSelector(channelEditModeSelector);
39884
39963
  var _useState = React.useState(false),
39885
39964
  cropPopup = _useState[0],
39886
39965
  setCropPopup = _useState[1];
@@ -40113,7 +40192,7 @@ var EditChannel = function EditChannel(_ref) {
40113
40192
 
40114
40193
  var _templateObject$V, _templateObject2$O, _templateObject3$F, _templateObject4$z, _templateObject5$u, _templateObject6$p, _templateObject7$n, _templateObject8$l, _templateObject9$g, _templateObject0$e, _templateObject1$b, _templateObject10$7;
40115
40194
  var Details = function Details(_ref) {
40116
- var _activeChannel$metada;
40195
+ var _activeChannel$metada, _activeChannel$member;
40117
40196
  var detailsTitleText = _ref.detailsTitleText,
40118
40197
  editDetailsTitleText = _ref.editDetailsTitleText,
40119
40198
  detailsTitleFontSize = _ref.detailsTitleFontSize,
@@ -40236,10 +40315,10 @@ var Details = function Details(_ref) {
40236
40315
  borderThemeColor = _useColor[THEME_COLORS.BORDER],
40237
40316
  textFootnote = _useColor[THEME_COLORS.TEXT_FOOTNOTE],
40238
40317
  surface2 = _useColor[THEME_COLORS.SURFACE_2];
40239
- var dispatch = reactRedux.useDispatch();
40318
+ var dispatch = useDispatch();
40240
40319
  var ChatClient = getClient();
40241
40320
  var user = ChatClient.user;
40242
- var theme = reactRedux.useSelector(themeSelector);
40321
+ var theme = useSelector(themeSelector);
40243
40322
  var getFromContacts = getShowOnlyContactUsers();
40244
40323
  var _useState = React.useState(false),
40245
40324
  mounted = _useState[0],
@@ -40253,14 +40332,14 @@ var Details = function Details(_ref) {
40253
40332
  var _useState4 = React.useState(0),
40254
40333
  actionsHeight = _useState4[0],
40255
40334
  setActionsHeight = _useState4[1];
40256
- var editMode = reactRedux.useSelector(channelEditModeSelector);
40257
- var activeChannel = reactRedux.useSelector(activeChannelSelector, reactRedux.shallowEqual);
40335
+ var editMode = useSelector(channelEditModeSelector);
40336
+ var activeChannel = useSelector(activeChannelSelector, reactRedux.shallowEqual);
40258
40337
  var _usePermissions = usePermissions(activeChannel ? activeChannel.userRole : ''),
40259
40338
  checkActionPermission = _usePermissions[0];
40260
- var membersLoading = reactRedux.useSelector(membersLoadingStateSelector);
40261
- var messagesLoading = reactRedux.useSelector(messagesLoadingState);
40262
- var attachmentsHasNex = reactRedux.useSelector(activeTabAttachmentsHasNextSelector);
40263
- var contactsMap = reactRedux.useSelector(contactsMapSelector);
40339
+ var membersLoading = useSelector(membersLoadingStateSelector);
40340
+ var messagesLoading = useSelector(messagesLoadingState);
40341
+ var attachmentsHasNex = useSelector(activeTabAttachmentsHasNextSelector);
40342
+ var contactsMap = useSelector(contactsMapSelector);
40264
40343
  var _useState5 = React.useState(false),
40265
40344
  isScrolling = _useState5[0],
40266
40345
  setIsScrolling = _useState5[1];
@@ -40271,9 +40350,9 @@ var Details = function Details(_ref) {
40271
40350
  var isSelfChannel = isDirectChannel && ((_activeChannel$metada = activeChannel.metadata) === null || _activeChannel$metada === void 0 ? void 0 : _activeChannel$metada.s);
40272
40351
  var memberDisplayText = getChannelTypesMemberDisplayTextMap();
40273
40352
  var displayMemberText = memberDisplayText && (memberDisplayText[activeChannel.type] ? activeChannel.memberCount > 1 ? memberDisplayText[activeChannel.type] + "s" : memberDisplayText[activeChannel.type] : activeChannel.type === DEFAULT_CHANNEL_TYPE.BROADCAST || activeChannel.type === DEFAULT_CHANNEL_TYPE.PUBLIC ? activeChannel.memberCount > 1 ? 'subscribers' : 'subscriber' : activeChannel.memberCount > 1 ? 'members' : 'member');
40274
- var directChannelUser = isDirectChannel && activeChannel.members.find(function (member) {
40353
+ var directChannelUser = isDirectChannel && (activeChannel.members.find(function (member) {
40275
40354
  return member.id !== user.id;
40276
- });
40355
+ }) || (activeChannel === null || activeChannel === void 0 ? void 0 : (_activeChannel$member = activeChannel.members) === null || _activeChannel$member === void 0 ? void 0 : _activeChannel$member[0]));
40277
40356
  var handleMembersListScroll = function handleMembersListScroll(event) {
40278
40357
  if (event.target.scrollTop >= event.target.scrollHeight - event.target.offsetHeight - 100) {
40279
40358
  if (activeTab === channelDetailsTabs.member) {
@@ -40382,7 +40461,7 @@ var Details = function Details(_ref) {
40382
40461
  color: textSecondary,
40383
40462
  fontSize: channelMembersFontSize,
40384
40463
  lineHeight: channelMembersLineHeight
40385
- }, showPhoneNumber ? "+" + directChannelUser.id : hideUserPresence && directChannelUser && hideUserPresence(directChannelUser) ? '' : directChannelUser && directChannelUser.presence && (directChannelUser.presence.state === USER_PRESENCE_STATUS.ONLINE ? 'Online' : directChannelUser.presence.lastActiveAt && userLastActiveDateFormat(directChannelUser.presence.lastActiveAt)))) : (/*#__PURE__*/React__default.createElement(SubTitle, {
40464
+ }, showPhoneNumber ? "+" + (directChannelUser === null || directChannelUser === void 0 ? void 0 : directChannelUser.id) : hideUserPresence && directChannelUser && hideUserPresence(directChannelUser) ? '' : directChannelUser && directChannelUser.presence && (directChannelUser.presence.state === USER_PRESENCE_STATUS.ONLINE ? 'Online' : directChannelUser.presence.lastActiveAt && userLastActiveDateFormat(directChannelUser.presence.lastActiveAt)))) : (/*#__PURE__*/React__default.createElement(SubTitle, {
40386
40465
  color: textSecondary,
40387
40466
  fontSize: channelMembersFontSize,
40388
40467
  lineHeight: channelMembersLineHeight
@@ -40660,7 +40739,7 @@ var ChannelDetailsContainer = function ChannelDetailsContainer(_ref) {
40660
40739
  tabItemsMinWidth = _ref.tabItemsMinWidth,
40661
40740
  bordersColor = _ref.bordersColor,
40662
40741
  showPhoneNumber = _ref.showPhoneNumber;
40663
- var channelDetailsIsOpen = reactRedux.useSelector(channelInfoIsOpenSelector, reactRedux.shallowEqual);
40742
+ var channelDetailsIsOpen = useSelector(channelInfoIsOpenSelector, reactRedux.shallowEqual);
40664
40743
  React.useEffect(function () {
40665
40744
  setShowChannelDetails(true);
40666
40745
  }, []);
@@ -40821,12 +40900,12 @@ var MessagesScrollToBottomButton = function MessagesScrollToBottomButton(_ref) {
40821
40900
  var _useColor = useColors(),
40822
40901
  accentColor = _useColor[THEME_COLORS.ACCENT],
40823
40902
  backgroundSections = _useColor[THEME_COLORS.BACKGROUND_SECTIONS];
40824
- var dispatch = reactRedux.useDispatch();
40825
- var channel = reactRedux.useSelector(activeChannelSelector);
40826
- var theme = reactRedux.useSelector(themeSelector);
40827
- var sendMessageInputHeight = reactRedux.useSelector(sendMessageInputHeightSelector);
40828
- var showScrollToNewMessageButton = reactRedux.useSelector(showScrollToNewMessageButtonSelector);
40829
- var messages = reactRedux.useSelector(activeChannelMessagesSelector) || [];
40903
+ var dispatch = useDispatch();
40904
+ var channel = useSelector(activeChannelSelector);
40905
+ var theme = useSelector(themeSelector);
40906
+ var sendMessageInputHeight = useSelector(sendMessageInputHeightSelector);
40907
+ var showScrollToNewMessageButton = useSelector(showScrollToNewMessageButtonSelector);
40908
+ var messages = useSelector(activeChannelMessagesSelector) || [];
40830
40909
  var handleScrollToBottom = function handleScrollToBottom() {
40831
40910
  var user = getClient().user;
40832
40911
  if (channel.lastMessage.user.id !== user.id) {
@@ -40958,12 +41037,12 @@ var MessagesScrollToUnreadMentionsButton = function MessagesScrollToUnreadMentio
40958
41037
  var _useColor = useColors(),
40959
41038
  accentColor = _useColor[THEME_COLORS.ACCENT],
40960
41039
  backgroundSections = _useColor[THEME_COLORS.BACKGROUND_SECTIONS];
40961
- var dispatch = reactRedux.useDispatch();
40962
- var channel = reactRedux.useSelector(activeChannelSelector);
40963
- var theme = reactRedux.useSelector(themeSelector);
40964
- var sendMessageInputHeight = reactRedux.useSelector(sendMessageInputHeightSelector);
40965
- var showScrollToNewMessageButton = reactRedux.useSelector(showScrollToNewMessageButtonSelector);
40966
- var messages = reactRedux.useSelector(activeChannelMessagesSelector) || [];
41040
+ var dispatch = useDispatch();
41041
+ var channel = useSelector(activeChannelSelector);
41042
+ var theme = useSelector(themeSelector);
41043
+ var sendMessageInputHeight = useSelector(sendMessageInputHeightSelector);
41044
+ var showScrollToNewMessageButton = useSelector(showScrollToNewMessageButtonSelector);
41045
+ var messages = useSelector(activeChannelMessagesSelector) || [];
40967
41046
  var isMessageRead = React.useCallback(function (messageId) {
40968
41047
  var _message$userMarkers;
40969
41048
  var message = messages.find(function (msg) {
@@ -41103,6 +41182,37 @@ var UnreadCount$2 = styled__default.span(_templateObject2$Q || (_templateObject2
41103
41182
  return props.textColor || '#fff';
41104
41183
  });
41105
41184
 
41185
+ var createOrGetDirectChannel = function createOrGetDirectChannel(user, callback) {
41186
+ try {
41187
+ if (user) {
41188
+ store.dispatch(createChannelAC({
41189
+ metadata: '',
41190
+ type: DEFAULT_CHANNEL_TYPE.DIRECT,
41191
+ members: [_extends({}, user, {
41192
+ role: 'owner'
41193
+ })]
41194
+ }, true, callback));
41195
+ }
41196
+ return Promise.resolve();
41197
+ } catch (e) {
41198
+ return Promise.reject(e);
41199
+ }
41200
+ };
41201
+ var switchChannelActiveChannel = function switchChannelActiveChannel(channel) {
41202
+ try {
41203
+ store.dispatch(switchChannelActionAC(channel, true));
41204
+ return Promise.resolve();
41205
+ } catch (e) {
41206
+ return Promise.reject(e);
41207
+ }
41208
+ };
41209
+ var handleSendMessage = function handleSendMessage(message, channelId, connectionState) {
41210
+ return store.dispatch(sendTextMessageAC(message, channelId, connectionState));
41211
+ };
41212
+ var handleGetMessage = function handleGetMessage(channelId, messageId) {
41213
+ return store.dispatch(getMessageAC(channelId, messageId));
41214
+ };
41215
+
41106
41216
  exports.Attachment = Attachment$1;
41107
41217
  exports.Avatar = Avatar;
41108
41218
  exports.Channel = Channel;
@@ -41124,4 +41234,8 @@ exports.OGMetadata = OGMetadata;
41124
41234
  exports.SceytChat = SceytChatContainer;
41125
41235
  exports.SendMessage = SendMessageInput;
41126
41236
  exports.THEME_COLORS = THEME_COLORS;
41237
+ exports.createOrGetDirectChannel = createOrGetDirectChannel;
41238
+ exports.handleGetMessage = handleGetMessage;
41239
+ exports.handleSendMessage = handleSendMessage;
41240
+ exports.switchChannelActiveChannel = switchChannelActiveChannel;
41127
41241
  //# sourceMappingURL=index.js.map