sceyt-chat-react-uikit 1.6.9-beta.2 → 1.6.9-beta.3

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.modern.js CHANGED
@@ -17106,14 +17106,14 @@ function editMessage(action) {
17106
17106
  }, _marked6$1, null, [[0, 21]]);
17107
17107
  }
17108
17108
  function getMessagesQuery(action) {
17109
- var _action$payload, channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, SceytChatClient, messageQueryBuilder, messageQuery, cachedMessages, result, allMessages, havLastMessage, secondResult, sentMessages, _allMessages, messageIndex, maxLengthPart, _secondResult, thirdResult, pendingMessages, messagesMap, filteredPendingMessages, _secondResult2, _thirdResult, _secondResult3, _pendingMessages, _messagesMap, _filteredPendingMessages, _secondResult4, _pendingMessages2, _messagesMap2, _filteredPendingMessages2;
17109
+ var _action$payload, channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, SceytChatClient, messageQueryBuilder, messageQuery, cachedMessages, result, allMessages, havLastMessage, secondResult, sentMessages, messagesMap, filteredSentMessages, _allMessages, messageIndex, maxLengthPart, _secondResult, thirdResult, pendingMessages, _messagesMap, filteredPendingMessages, _secondResult2, _thirdResult, _secondResult3, _pendingMessages, _messagesMap2, _filteredPendingMessages, _secondResult4, _pendingMessages2, _messagesMap3, _filteredPendingMessages2;
17110
17110
  return _regeneratorRuntime().wrap(function getMessagesQuery$(_context9) {
17111
17111
  while (1) switch (_context9.prev = _context9.next) {
17112
17112
  case 0:
17113
17113
  _context9.prev = 0;
17114
17114
  _action$payload = action.payload, channel = _action$payload.channel, loadWithLastMessage = _action$payload.loadWithLastMessage, messageId = _action$payload.messageId, limit = _action$payload.limit, withDeliveredMessages = _action$payload.withDeliveredMessages;
17115
17115
  if (!(channel.id && !channel.isMockChannel)) {
17116
- _context9.next = 175;
17116
+ _context9.next = 178;
17117
17117
  break;
17118
17118
  }
17119
17119
  SceytChatClient = getClient();
@@ -17134,13 +17134,13 @@ function getMessagesQuery(action) {
17134
17134
  hasNext: false
17135
17135
  };
17136
17136
  if (!loadWithLastMessage) {
17137
- _context9.next = 54;
17137
+ _context9.next = 57;
17138
17138
  break;
17139
17139
  }
17140
17140
  allMessages = getAllMessages();
17141
17141
  havLastMessage = allMessages && allMessages.length && channel.lastMessage && allMessages[allMessages.length - 1] && allMessages[allMessages.length - 1].id === channel.lastMessage.id;
17142
17142
  if (!(channel.newMessageCount && channel.newMessageCount > 0 || !havLastMessage)) {
17143
- _context9.next = 44;
17143
+ _context9.next = 47;
17144
17144
  break;
17145
17145
  }
17146
17146
  setHasPrevCached(false);
@@ -17165,37 +17165,44 @@ function getMessagesQuery(action) {
17165
17165
  if (withDeliveredMessages) {
17166
17166
  sentMessages = getFromAllMessagesByMessageId('', '', true);
17167
17167
  }
17168
- result.messages = [].concat(result.messages, sentMessages);
17169
- _context9.next = 36;
17168
+ messagesMap = {};
17169
+ result.messages.forEach(function (msg) {
17170
+ messagesMap[msg.tid || ''] = msg;
17171
+ });
17172
+ filteredSentMessages = sentMessages.filter(function (msg) {
17173
+ return !messagesMap[msg.tid || ''];
17174
+ });
17175
+ result.messages = [].concat(result.messages, filteredSentMessages);
17176
+ _context9.next = 39;
17170
17177
  return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
17171
- case 36:
17178
+ case 39:
17172
17179
  setMessagesToMap(channel.id, result.messages);
17173
17180
  setAllMessages(result.messages);
17174
- _context9.next = 40;
17181
+ _context9.next = 43;
17175
17182
  return put(setMessagesHasPrevAC(true));
17176
- case 40:
17177
- _context9.next = 42;
17183
+ case 43:
17184
+ _context9.next = 45;
17178
17185
  return put(markChannelAsReadAC(channel.id));
17179
- case 42:
17180
- _context9.next = 49;
17186
+ case 45:
17187
+ _context9.next = 52;
17181
17188
  break;
17182
- case 44:
17189
+ case 47:
17183
17190
  result.messages = getFromAllMessagesByMessageId('', '', true);
17184
- _context9.next = 47;
17191
+ _context9.next = 50;
17185
17192
  return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
17186
- case 47:
17187
- _context9.next = 49;
17193
+ case 50:
17194
+ _context9.next = 52;
17188
17195
  return put(setMessagesHasPrevAC(true));
17189
- case 49:
17190
- _context9.next = 51;
17196
+ case 52:
17197
+ _context9.next = 54;
17191
17198
  return put(setMessagesHasNextAC(false));
17192
- case 51:
17199
+ case 54:
17193
17200
  setHasNextCached(false);
17194
- _context9.next = 164;
17201
+ _context9.next = 167;
17195
17202
  break;
17196
- case 54:
17203
+ case 57:
17197
17204
  if (!messageId) {
17198
- _context9.next = 97;
17205
+ _context9.next = 100;
17199
17206
  break;
17200
17207
  }
17201
17208
  _allMessages = getAllMessages();
@@ -17204,181 +17211,181 @@ function getMessagesQuery(action) {
17204
17211
  });
17205
17212
  maxLengthPart = MESSAGES_MAX_LENGTH / 2;
17206
17213
  if (!(messageIndex >= maxLengthPart)) {
17207
- _context9.next = 66;
17214
+ _context9.next = 69;
17208
17215
  break;
17209
17216
  }
17210
17217
  result.messages = _allMessages.slice(messageIndex - maxLengthPart, messageIndex + maxLengthPart);
17211
- _context9.next = 62;
17218
+ _context9.next = 65;
17212
17219
  return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
17213
- case 62:
17220
+ case 65:
17214
17221
  setHasPrevCached(messageIndex > maxLengthPart);
17215
17222
  setHasNextCached(_allMessages.length > maxLengthPart);
17216
- _context9.next = 93;
17223
+ _context9.next = 96;
17217
17224
  break;
17218
- case 66:
17225
+ case 69:
17219
17226
  messageQuery.limit = MESSAGES_MAX_LENGTH;
17220
17227
  log.info('load by message id from server ...............', messageId);
17221
- _context9.next = 70;
17228
+ _context9.next = 73;
17222
17229
  return call(messageQuery.loadNearMessageId, messageId);
17223
- case 70:
17230
+ case 73:
17224
17231
  result = _context9.sent;
17225
17232
  if (!(result.messages.length === 50)) {
17226
- _context9.next = 83;
17233
+ _context9.next = 86;
17227
17234
  break;
17228
17235
  }
17229
17236
  messageQuery.limit = (MESSAGES_MAX_LENGTH - 50) / 2;
17230
- _context9.next = 75;
17237
+ _context9.next = 78;
17231
17238
  return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
17232
- case 75:
17239
+ case 78:
17233
17240
  _secondResult = _context9.sent;
17234
17241
  messageQuery.reverse = false;
17235
- _context9.next = 79;
17242
+ _context9.next = 82;
17236
17243
  return call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
17237
- case 79:
17244
+ case 82:
17238
17245
  thirdResult = _context9.sent;
17239
17246
  result.messages = [].concat(_secondResult.messages, result.messages, thirdResult.messages);
17240
17247
  result.hasNext = _secondResult.hasNext;
17241
17248
  messageQuery.reverse = true;
17242
- case 83:
17249
+ case 86:
17243
17250
  log.info('result from server ....... ', result);
17244
- _context9.next = 86;
17251
+ _context9.next = 89;
17245
17252
  return put(setMessagesHasNextAC(true));
17246
- case 86:
17253
+ case 89:
17247
17254
  pendingMessages = getPendingMessages(channel.id);
17248
17255
  if (pendingMessages && pendingMessages.length) {
17249
- messagesMap = {};
17256
+ _messagesMap = {};
17250
17257
  result.messages.forEach(function (msg) {
17251
- messagesMap[msg.tid || ''] = msg;
17258
+ _messagesMap[msg.tid || ''] = msg;
17252
17259
  });
17253
17260
  filteredPendingMessages = pendingMessages.filter(function (msg) {
17254
- return !messagesMap[msg.tid || ''];
17261
+ return !_messagesMap[msg.tid || ''];
17255
17262
  });
17256
17263
  setPendingMessages(channel.id, filteredPendingMessages);
17257
17264
  result.messages = [].concat(result.messages, filteredPendingMessages);
17258
17265
  }
17259
- _context9.next = 90;
17266
+ _context9.next = 93;
17260
17267
  return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
17261
- case 90:
17268
+ case 93:
17262
17269
  setAllMessages([].concat(result.messages));
17263
17270
  setHasPrevCached(false);
17264
17271
  setHasNextCached(false);
17265
- case 93:
17266
- _context9.next = 95;
17272
+ case 96:
17273
+ _context9.next = 98;
17267
17274
  return put(setScrollToMessagesAC(messageId));
17268
- case 95:
17269
- _context9.next = 164;
17275
+ case 98:
17276
+ _context9.next = 167;
17270
17277
  break;
17271
- case 97:
17278
+ case 100:
17272
17279
  if (!(channel.newMessageCount && channel.lastDisplayedMessageId)) {
17273
- _context9.next = 143;
17280
+ _context9.next = 146;
17274
17281
  break;
17275
17282
  }
17276
17283
  setAllMessages([]);
17277
17284
  messageQuery.limit = MESSAGES_MAX_LENGTH;
17278
17285
  if (!Number(channel.lastDisplayedMessageId)) {
17279
- _context9.next = 121;
17286
+ _context9.next = 124;
17280
17287
  break;
17281
17288
  }
17282
- _context9.next = 103;
17289
+ _context9.next = 106;
17283
17290
  return call(messageQuery.loadNearMessageId, channel.lastDisplayedMessageId);
17284
- case 103:
17291
+ case 106:
17285
17292
  result = _context9.sent;
17286
17293
  if (!(result.messages.length === 50)) {
17287
- _context9.next = 119;
17294
+ _context9.next = 122;
17288
17295
  break;
17289
17296
  }
17290
17297
  messageQuery.limit = channel.newMessageCount > 25 ? (MESSAGES_MAX_LENGTH - 50) / 2 : MESSAGES_MAX_LENGTH - 50;
17291
- _context9.next = 108;
17298
+ _context9.next = 111;
17292
17299
  return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
17293
- case 108:
17300
+ case 111:
17294
17301
  _secondResult2 = _context9.sent;
17295
17302
  if (!(channel.newMessageCount > 25)) {
17296
- _context9.next = 118;
17303
+ _context9.next = 121;
17297
17304
  break;
17298
17305
  }
17299
17306
  messageQuery.reverse = false;
17300
- _context9.next = 113;
17307
+ _context9.next = 116;
17301
17308
  return call(messageQuery.loadNextMessageId, result.messages[result.messages.length - 1].id);
17302
- case 113:
17309
+ case 116:
17303
17310
  _thirdResult = _context9.sent;
17304
17311
  result.messages = [].concat(_secondResult2.messages, result.messages, _thirdResult.messages);
17305
17312
  messageQuery.reverse = true;
17306
- _context9.next = 119;
17313
+ _context9.next = 122;
17307
17314
  break;
17308
- case 118:
17315
+ case 121:
17309
17316
  result.messages = [].concat(_secondResult2.messages, result.messages);
17310
- case 119:
17311
- _context9.next = 131;
17317
+ case 122:
17318
+ _context9.next = 134;
17312
17319
  break;
17313
- case 121:
17314
- _context9.next = 123;
17320
+ case 124:
17321
+ _context9.next = 126;
17315
17322
  return call(messageQuery.loadPrevious);
17316
- case 123:
17323
+ case 126:
17317
17324
  result = _context9.sent;
17318
17325
  if (!(result.messages.length === 50)) {
17319
- _context9.next = 131;
17326
+ _context9.next = 134;
17320
17327
  break;
17321
17328
  }
17322
17329
  messageQuery.limit = MESSAGES_MAX_LENGTH - 50;
17323
- _context9.next = 128;
17330
+ _context9.next = 131;
17324
17331
  return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
17325
- case 128:
17332
+ case 131:
17326
17333
  _secondResult3 = _context9.sent;
17327
17334
  result.messages = [].concat(_secondResult3.messages, result.messages);
17328
17335
  result.hasNext = _secondResult3.hasNext;
17329
- case 131:
17336
+ case 134:
17330
17337
  setMessagesToMap(channel.id, result.messages);
17331
- _context9.next = 134;
17338
+ _context9.next = 137;
17332
17339
  return put(setMessagesHasPrevAC(true));
17333
- case 134:
17334
- _context9.next = 136;
17340
+ case 137:
17341
+ _context9.next = 139;
17335
17342
  return put(setMessagesHasNextAC(channel.lastMessage && result.messages.length > 0 && channel.lastMessage.id !== result.messages[result.messages.length - 1].id));
17336
- case 136:
17343
+ case 139:
17337
17344
  _pendingMessages = getPendingMessages(channel.id);
17338
17345
  if (_pendingMessages && _pendingMessages.length) {
17339
- _messagesMap = {};
17346
+ _messagesMap2 = {};
17340
17347
  result.messages.forEach(function (msg) {
17341
- _messagesMap[msg.tid || ''] = msg;
17348
+ _messagesMap2[msg.tid || ''] = msg;
17342
17349
  });
17343
17350
  _filteredPendingMessages = _pendingMessages.filter(function (msg) {
17344
- return !_messagesMap[msg.tid || ''];
17351
+ return !_messagesMap2[msg.tid || ''];
17345
17352
  });
17346
17353
  setPendingMessages(channel.id, _filteredPendingMessages);
17347
17354
  result.messages = [].concat(result.messages, _filteredPendingMessages);
17348
17355
  }
17349
17356
  setAllMessages([].concat(result.messages));
17350
- _context9.next = 141;
17357
+ _context9.next = 144;
17351
17358
  return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
17352
- case 141:
17353
- _context9.next = 164;
17359
+ case 144:
17360
+ _context9.next = 167;
17354
17361
  break;
17355
- case 143:
17362
+ case 146:
17356
17363
  setAllMessages([]);
17357
17364
  if (!(cachedMessages && cachedMessages.length)) {
17358
- _context9.next = 148;
17365
+ _context9.next = 151;
17359
17366
  break;
17360
17367
  }
17361
17368
  setAllMessages([].concat(cachedMessages));
17362
- _context9.next = 148;
17369
+ _context9.next = 151;
17363
17370
  return put(setMessagesAC(JSON.parse(JSON.stringify(cachedMessages))));
17364
- case 148:
17371
+ case 151:
17365
17372
  log.info('load message from server');
17366
- _context9.next = 151;
17373
+ _context9.next = 154;
17367
17374
  return call(messageQuery.loadPrevious);
17368
- case 151:
17375
+ case 154:
17369
17376
  result = _context9.sent;
17370
17377
  if (!(result.messages.length === 50)) {
17371
- _context9.next = 159;
17378
+ _context9.next = 162;
17372
17379
  break;
17373
17380
  }
17374
17381
  messageQuery.limit = MESSAGES_MAX_LENGTH - 50;
17375
- _context9.next = 156;
17382
+ _context9.next = 159;
17376
17383
  return call(messageQuery.loadPreviousMessageId, result.messages[0].id);
17377
- case 156:
17384
+ case 159:
17378
17385
  _secondResult4 = _context9.sent;
17379
17386
  result.messages = [].concat(_secondResult4.messages, result.messages);
17380
17387
  result.hasNext = _secondResult4.hasNext;
17381
- case 159:
17388
+ case 162:
17382
17389
  result.messages.forEach(function (msg) {
17383
17390
  updateMessageOnMap(channel.id, {
17384
17391
  messageId: msg.id,
@@ -17386,58 +17393,58 @@ function getMessagesQuery(action) {
17386
17393
  });
17387
17394
  updateMessageOnAllMessages(msg.id, msg);
17388
17395
  });
17389
- _context9.next = 162;
17396
+ _context9.next = 165;
17390
17397
  return put(setMessagesHasPrevAC(result.hasNext));
17391
- case 162:
17392
- _context9.next = 164;
17398
+ case 165:
17399
+ _context9.next = 167;
17393
17400
  return put(setMessagesHasNextAC(false));
17394
- case 164:
17401
+ case 167:
17395
17402
  if (cachedMessages && cachedMessages.length) {
17396
- _context9.next = 171;
17403
+ _context9.next = 174;
17397
17404
  break;
17398
17405
  }
17399
17406
  _pendingMessages2 = getPendingMessages(channel.id);
17400
17407
  if (_pendingMessages2 && _pendingMessages2.length) {
17401
- _messagesMap2 = {};
17408
+ _messagesMap3 = {};
17402
17409
  result.messages.forEach(function (msg) {
17403
- _messagesMap2[msg.tid || ''] = msg;
17410
+ _messagesMap3[msg.tid || ''] = msg;
17404
17411
  });
17405
17412
  _filteredPendingMessages2 = _pendingMessages2.filter(function (msg) {
17406
- return !_messagesMap2[msg.tid || ''];
17413
+ return !_messagesMap3[msg.tid || ''];
17407
17414
  });
17408
17415
  setPendingMessages(channel.id, _filteredPendingMessages2);
17409
17416
  result.messages = [].concat(result.messages, _filteredPendingMessages2);
17410
17417
  }
17411
- _context9.next = 169;
17418
+ _context9.next = 172;
17412
17419
  return put(setMessagesAC(JSON.parse(JSON.stringify(result.messages))));
17413
- case 169:
17420
+ case 172:
17414
17421
  setMessagesToMap(channel.id, result.messages);
17415
17422
  setAllMessages([].concat(result.messages));
17416
- case 171:
17417
- _context9.next = 173;
17423
+ case 174:
17424
+ _context9.next = 176;
17418
17425
  return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
17419
- case 173:
17420
- _context9.next = 178;
17426
+ case 176:
17427
+ _context9.next = 181;
17421
17428
  break;
17422
- case 175:
17429
+ case 178:
17423
17430
  if (!channel.isMockChannel) {
17424
- _context9.next = 178;
17431
+ _context9.next = 181;
17425
17432
  break;
17426
17433
  }
17427
- _context9.next = 178;
17434
+ _context9.next = 181;
17428
17435
  return put(setMessagesAC([]));
17429
- case 178:
17430
- _context9.next = 183;
17436
+ case 181:
17437
+ _context9.next = 186;
17431
17438
  break;
17432
- case 180:
17433
- _context9.prev = 180;
17439
+ case 183:
17440
+ _context9.prev = 183;
17434
17441
  _context9.t0 = _context9["catch"](0);
17435
17442
  log.error('error in message query', _context9.t0);
17436
- case 183:
17443
+ case 186:
17437
17444
  case "end":
17438
17445
  return _context9.stop();
17439
17446
  }
17440
- }, _marked7$1, null, [[0, 180]]);
17447
+ }, _marked7$1, null, [[0, 183]]);
17441
17448
  }
17442
17449
  function loadMoreMessages(action) {
17443
17450
  var payload, limit, direction, channelId, messageId, hasNext, SceytChatClient, messageQueryBuilder, messageQuery, result;
@@ -19597,20 +19604,24 @@ var DeletedAvatarWrapper = styled(SvgDeletedUserAvatar)(_templateObject4$2 || (_
19597
19604
  });
19598
19605
 
19599
19606
  var _templateObject$4, _templateObject2$4, _templateObject3$3, _templateObject4$3, _templateObject5$2, _templateObject6$1, _templateObject7$1, _templateObject8$1, _templateObject9$1, _templateObject0$1, _templateObject1$1, _templateObject10$1, _templateObject11$1, _templateObject12$1, _templateObject13$1, _templateObject14$1, _templateObject15$1, _templateObject16$1, _templateObject17$1, _templateObject18$1, _templateObject19$1, _templateObject20$1;
19600
- var ChannelMessageText = function ChannelMessageText(_ref) {
19601
- var isTypingOrRecording = _ref.isTypingOrRecording,
19602
- textPrimary = _ref.textPrimary,
19603
- textSecondary = _ref.textSecondary,
19604
- draftMessageText = _ref.draftMessageText,
19605
- lastMessage = _ref.lastMessage,
19606
- user = _ref.user,
19607
- contactsMap = _ref.contactsMap,
19608
- getFromContacts = _ref.getFromContacts,
19609
- lastMessageMetas = _ref.lastMessageMetas,
19610
- accentColor = _ref.accentColor,
19611
- typingOrRecording = _ref.typingOrRecording,
19612
- channel = _ref.channel,
19613
- isDirectChannel = _ref.isDirectChannel;
19607
+ var LastMessageAttachments = function LastMessageAttachments(_ref) {
19608
+ var lastMessage = _ref.lastMessage;
19609
+ return !!(lastMessage.attachments && lastMessage.attachments.length) && (lastMessage.attachments[0].type === attachmentTypes.image ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SvgPicture, null), lastMessage.body ? '' : 'Photo')) : lastMessage.attachments[0].type === attachmentTypes.video ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SvgVideoCall, null), lastMessage.body ? '' : 'Video')) : lastMessage.attachments[0].type === attachmentTypes.file ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SvgChoseFile, null), lastMessage.body ? '' : 'File')) : lastMessage.attachments[0].type === attachmentTypes.voice ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SvgVoiceIcon, null), lastMessage.body ? '' : 'Voice')) : null);
19610
+ };
19611
+ var ChannelMessageText = function ChannelMessageText(_ref2) {
19612
+ var isTypingOrRecording = _ref2.isTypingOrRecording,
19613
+ textPrimary = _ref2.textPrimary,
19614
+ textSecondary = _ref2.textSecondary,
19615
+ draftMessageText = _ref2.draftMessageText,
19616
+ lastMessage = _ref2.lastMessage,
19617
+ user = _ref2.user,
19618
+ contactsMap = _ref2.contactsMap,
19619
+ getFromContacts = _ref2.getFromContacts,
19620
+ lastMessageMetas = _ref2.lastMessageMetas,
19621
+ accentColor = _ref2.accentColor,
19622
+ typingOrRecording = _ref2.typingOrRecording,
19623
+ channel = _ref2.channel,
19624
+ isDirectChannel = _ref2.isDirectChannel;
19614
19625
  return /*#__PURE__*/React__default.createElement(MessageTextContainer, null, isTypingOrRecording && (/*#__PURE__*/React__default.createElement(TypingIndicator, null, !isDirectChannel && /*#__PURE__*/React__default.createElement(Points, {
19615
19626
  color: textPrimary
19616
19627
  }, ":"), typingOrRecording.isTyping ? 'typing' : 'recording', "...")), !isTypingOrRecording && (draftMessageText ? (/*#__PURE__*/React__default.createElement(DraftMessageText, {
@@ -19619,7 +19630,9 @@ var ChannelMessageText = function ChannelMessageText(_ref) {
19619
19630
  return mem === user.id ? ' You' : " " + systemMessageUserName(mem, contactsMap && contactsMap[mem], lastMessage.mentionedUsers);
19620
19631
  })) + " " + (lastMessageMetas && lastMessageMetas.m && lastMessageMetas.m.length > 5 ? "and " + (lastMessageMetas.m.length - 5) + " more" : '') : lastMessage.body === 'RM' ? " removed " + (lastMessageMetas && lastMessageMetas.m && lastMessageMetas.m.slice(0, 5).map(function (mem) {
19621
19632
  return mem === user.id ? ' You' : " " + systemMessageUserName(mem, contactsMap && contactsMap[mem], lastMessage.mentionedUsers);
19622
- })) + " " + (lastMessageMetas && lastMessageMetas.m && lastMessageMetas.m.length > 5 ? "and " + (lastMessageMetas.m.length - 5) + " more" : '') : lastMessage.body === 'LG' ? 'Left this group' : '') : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, channel.lastReactedMessage && (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, "Reacted", /*#__PURE__*/React__default.createElement(ReactionItem, null, channel.newReactions && channel.newReactions[0] && channel.newReactions[0].key), "to", ' "')), !!(lastMessage.attachments && lastMessage.attachments.length) && (lastMessage.attachments[0].type === attachmentTypes.image ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SvgPicture, null), lastMessage.body ? '' : 'Photo')) : lastMessage.attachments[0].type === attachmentTypes.video ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SvgVideoCall, null), lastMessage.body ? '' : 'Video')) : lastMessage.attachments[0].type === attachmentTypes.file ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SvgChoseFile, null), lastMessage.body ? '' : 'File')) : lastMessage.attachments[0].type === attachmentTypes.voice ? (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SvgVoiceIcon, null), lastMessage.body ? '' : 'Voice')) : null), /*#__PURE__*/React__default.createElement(LastMessageDescription, null, !!(lastMessage && lastMessage.id) && MessageTextFormat({
19633
+ })) + " " + (lastMessageMetas && lastMessageMetas.m && lastMessageMetas.m.length > 5 ? "and " + (lastMessageMetas.m.length - 5) + " more" : '') : lastMessage.body === 'LG' ? 'Left this group' : '') : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(LastMessageDescription, null, channel.lastReactedMessage && (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, "Reacted", /*#__PURE__*/React__default.createElement(ReactionItem, null, channel.newReactions && channel.newReactions[0] && channel.newReactions[0].key), "to", ' "')), LastMessageAttachments({
19634
+ lastMessage: lastMessage
19635
+ }), !!(lastMessage && lastMessage.id) && MessageTextFormat({
19623
19636
  text: lastMessage.body,
19624
19637
  message: lastMessage,
19625
19638
  contactsMap: contactsMap,
@@ -19627,34 +19640,34 @@ var ChannelMessageText = function ChannelMessageText(_ref) {
19627
19640
  isLastMessage: true,
19628
19641
  accentColor: accentColor,
19629
19642
  textSecondary: textSecondary
19630
- })), channel.lastReactedMessage && '"'))));
19643
+ }), channel.lastReactedMessage && '"')))));
19631
19644
  };
19632
- var Channel = function Channel(_ref2) {
19645
+ var Channel = function Channel(_ref3) {
19633
19646
  var _channel$metadata, _channel$metadata2;
19634
- var channel = _ref2.channel,
19635
- theme = _ref2.theme,
19636
- _ref2$showAvatar = _ref2.showAvatar,
19637
- showAvatar = _ref2$showAvatar === void 0 ? true : _ref2$showAvatar,
19638
- avatarBorderRadius = _ref2.avatarBorderRadius,
19639
- notificationsIsMutedIcon = _ref2.notificationsIsMutedIcon,
19640
- notificationsIsMutedIconColor = _ref2.notificationsIsMutedIconColor,
19641
- pinedIcon = _ref2.pinedIcon,
19642
- selectedChannelLeftBorder = _ref2.selectedChannelLeftBorder,
19643
- selectedChannelBackground = _ref2.selectedChannelBackground,
19644
- contactsMap = _ref2.contactsMap,
19645
- selectedChannelBorderRadius = _ref2.selectedChannelBorderRadius,
19646
- selectedChannelPaddings = _ref2.selectedChannelPaddings,
19647
- channelsPaddings = _ref2.channelsPaddings,
19648
- channelsMargin = _ref2.channelsMargin,
19649
- channelHoverBackground = _ref2.channelHoverBackground,
19650
- channelSubjectFontSize = _ref2.channelSubjectFontSize,
19651
- channelSubjectLineHeight = _ref2.channelSubjectLineHeight,
19652
- channelSubjectColor = _ref2.channelSubjectColor,
19653
- channelLastMessageFontSize = _ref2.channelLastMessageFontSize,
19654
- channelLastMessageTimeFontSize = _ref2.channelLastMessageTimeFontSize,
19655
- channelLastMessageHeight = _ref2.channelLastMessageHeight,
19656
- channelAvatarSize = _ref2.channelAvatarSize,
19657
- channelAvatarTextSize = _ref2.channelAvatarTextSize;
19647
+ var channel = _ref3.channel,
19648
+ theme = _ref3.theme,
19649
+ _ref3$showAvatar = _ref3.showAvatar,
19650
+ showAvatar = _ref3$showAvatar === void 0 ? true : _ref3$showAvatar,
19651
+ avatarBorderRadius = _ref3.avatarBorderRadius,
19652
+ notificationsIsMutedIcon = _ref3.notificationsIsMutedIcon,
19653
+ notificationsIsMutedIconColor = _ref3.notificationsIsMutedIconColor,
19654
+ pinedIcon = _ref3.pinedIcon,
19655
+ selectedChannelLeftBorder = _ref3.selectedChannelLeftBorder,
19656
+ selectedChannelBackground = _ref3.selectedChannelBackground,
19657
+ contactsMap = _ref3.contactsMap,
19658
+ selectedChannelBorderRadius = _ref3.selectedChannelBorderRadius,
19659
+ selectedChannelPaddings = _ref3.selectedChannelPaddings,
19660
+ channelsPaddings = _ref3.channelsPaddings,
19661
+ channelsMargin = _ref3.channelsMargin,
19662
+ channelHoverBackground = _ref3.channelHoverBackground,
19663
+ channelSubjectFontSize = _ref3.channelSubjectFontSize,
19664
+ channelSubjectLineHeight = _ref3.channelSubjectLineHeight,
19665
+ channelSubjectColor = _ref3.channelSubjectColor,
19666
+ channelLastMessageFontSize = _ref3.channelLastMessageFontSize,
19667
+ channelLastMessageTimeFontSize = _ref3.channelLastMessageTimeFontSize,
19668
+ channelLastMessageHeight = _ref3.channelLastMessageHeight,
19669
+ channelAvatarSize = _ref3.channelAvatarSize,
19670
+ channelAvatarTextSize = _ref3.channelAvatarTextSize;
19658
19671
  var _useColor = useColors(),
19659
19672
  accentColor = _useColor[THEME_COLORS.ACCENT],
19660
19673
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
@@ -19906,9 +19919,9 @@ var Container$2 = styled.div(_templateObject6$1 || (_templateObject6$1 = _tagged
19906
19919
  return props.channelsMargin || '0 8px';
19907
19920
  }, function (props) {
19908
19921
  return props.selectedChannelBorderRadius || '12px';
19909
- }, function (_ref3) {
19910
- var selectedChannel = _ref3.selectedChannel,
19911
- hoverBackground = _ref3.hoverBackground;
19922
+ }, function (_ref4) {
19923
+ var selectedChannel = _ref4.selectedChannel,
19924
+ hoverBackground = _ref4.hoverBackground;
19912
19925
  return !selectedChannel && "\n background-color: " + hoverBackground + ";\n ";
19913
19926
  }, UserStatus, function (props) {
19914
19927
  return props.selectedChannel ? props.selectedBackgroundColor : props.hoverBackground;
@@ -19923,9 +19936,9 @@ var DraftMessageText = styled.span(_templateObject8$1 || (_templateObject8$1 = _
19923
19936
  });
19924
19937
  var LastMessageAuthor = styled.div(_templateObject9$1 || (_templateObject9$1 = _taggedTemplateLiteralLoose(["\n max-width: 120px;\n font-weight: 500;\n color: ", ";\n\n ", "\n & > span {\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 100%;\n }\n"])), function (props) {
19925
19938
  return props.color;
19926
- }, function (_ref4) {
19927
- var typing = _ref4.typing,
19928
- recording = _ref4.recording;
19939
+ }, function (_ref5) {
19940
+ var typing = _ref5.typing,
19941
+ recording = _ref5.recording;
19929
19942
  return (typing || recording) && "\n font-weight: 500;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: calc(100% - " + (typing ? 62 : 76) + "px);\n ";
19930
19943
  });
19931
19944
  var Points = styled.span(_templateObject0$1 || (_templateObject0$1 = _taggedTemplateLiteralLoose(["\n margin-right: 4px;\n color: ", ";\n font-style: normal;\n"])), function (props) {
@@ -19942,7 +19955,7 @@ var LastMessageText = styled.span(_templateObject1$1 || (_templateObject1$1 = _t
19942
19955
  }, function (props) {
19943
19956
  return props.color;
19944
19957
  });
19945
- var LastMessageDescription = styled.div(_templateObject10$1 || (_templateObject10$1 = _taggedTemplateLiteralLoose(["\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 100%;\n"])));
19958
+ var LastMessageDescription = styled.div(_templateObject10$1 || (_templateObject10$1 = _taggedTemplateLiteralLoose(["\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 100%;\n & > svg {\n width: 18px;\n height: 18px;\n margin: 3px 0 -3px 0;\n margin-right: 4px;\n }\n"])));
19946
19959
  var ChannelStatus = styled.div(_templateObject11$1 || (_templateObject11$1 = _taggedTemplateLiteralLoose(["\n position: absolute;\n right: 16px;\n top: 15px;\n display: flex;\n flex-wrap: wrap;\n height: 42px;\n margin-left: auto;\n\n & > svg {\n width: 16px;\n height: 16px;\n color: ", ";\n }\n"])), function (props) {
19947
19960
  return props.color;
19948
19961
  });
@@ -30884,8 +30897,7 @@ var CreateMessageDateDivider = function CreateMessageDateDivider(_ref) {
30884
30897
  };
30885
30898
  var MessageList = function MessageList(_ref2) {
30886
30899
  var _channel$lastMessage, _channel$lastMessage3, _scrollRef$current;
30887
- var messages = _ref2.messages,
30888
- fontFamily = _ref2.fontFamily,
30900
+ var fontFamily = _ref2.fontFamily,
30889
30901
  _ref2$ownMessageOnRig = _ref2.ownMessageOnRightSide,
30890
30902
  ownMessageOnRightSide = _ref2$ownMessageOnRig === void 0 ? true : _ref2$ownMessageOnRig,
30891
30903
  messageWidthPercent = _ref2.messageWidthPercent,
@@ -31058,6 +31070,7 @@ var MessageList = function MessageList(_ref2) {
31058
31070
  var messagesLoading = useSelector(messagesLoadingState);
31059
31071
  var draggingSelector = useSelector(isDraggingSelector, shallowEqual);
31060
31072
  var showScrollToNewMessageButton = useSelector(showScrollToNewMessageButtonSelector, shallowEqual);
31073
+ var messages = useSelector(activeChannelMessagesSelector, shallowEqual) || [];
31061
31074
  var _useState = useState(''),
31062
31075
  unreadMessageId = _useState[0],
31063
31076
  setUnreadMessageId = _useState[1];
@@ -31144,14 +31157,14 @@ var MessageList = function MessageList(_ref2) {
31144
31157
  if (target.scrollTop === 0 && scrollToNewMessage.scrollToBottom && scrollToNewMessage.updateMessageList && messagesLoading !== LOADING_STATE.LOADING) {
31145
31158
  dispatch(getMessagesAC(channel, true));
31146
31159
  }
31160
+ if (target.scrollTop <= -50) {
31161
+ dispatch(showScrollToNewMessageButtonAC(true));
31162
+ } else {
31163
+ dispatch(showScrollToNewMessageButtonAC(false));
31164
+ }
31147
31165
  if (scrollToReply) {
31148
31166
  target.scrollTop = scrollToReply;
31149
31167
  } else {
31150
- if (target.scrollTop <= -50) {
31151
- dispatch(showScrollToNewMessageButtonAC(true));
31152
- } else {
31153
- dispatch(showScrollToNewMessageButtonAC(false));
31154
- }
31155
31168
  if (messagesIndexMap[lastVisibleMessageId] < 15 || forceLoadPrevMessages) {
31156
31169
  if (connectionStatus === CONNECTION_STATUS.CONNECTED && !scrollToNewMessage.scrollToBottom && hasPrevMessages) {
31157
31170
  if (messagesLoading === LOADING_STATE.LOADING || loading || prevDisable) {
@@ -31201,7 +31214,10 @@ var MessageList = function MessageList(_ref2) {
31201
31214
  }) >= 10) {
31202
31215
  var repliedMessage = document.getElementById(messageId);
31203
31216
  if (repliedMessage) {
31204
- scrollRef.current.scrollTop = repliedMessage.offsetTop - scrollRef.current.offsetHeight / 2;
31217
+ scrollRef.current.scrollTo({
31218
+ top: repliedMessage.offsetTop - scrollRef.current.offsetHeight / 2,
31219
+ behavior: 'smooth'
31220
+ });
31205
31221
  repliedMessage.classList.add('highlight');
31206
31222
  setTimeout(function () {
31207
31223
  repliedMessage.classList.remove('highlight');
@@ -31334,7 +31350,10 @@ var MessageList = function MessageList(_ref2) {
31334
31350
  var repliedMessage = document.getElementById(scrollToRepliedMessage);
31335
31351
  if (repliedMessage) {
31336
31352
  setScrollToReply(repliedMessage && repliedMessage.offsetTop - (channel.backToLinkedChannel ? 0 : 200));
31337
- scrollRef.current.scrollTop = repliedMessage && repliedMessage.offsetTop - (channel.backToLinkedChannel ? 0 : 200);
31353
+ scrollRef.current.scrollTo({
31354
+ top: repliedMessage && repliedMessage.offsetTop - (channel.backToLinkedChannel ? 0 : 200),
31355
+ behavior: 'smooth'
31356
+ });
31338
31357
  scrollRef.current.style.scrollBehavior = 'smooth';
31339
31358
  if (!channel.backToLinkedChannel) {
31340
31359
  repliedMessage && repliedMessage.classList.add('highlight');
@@ -31356,12 +31375,18 @@ var MessageList = function MessageList(_ref2) {
31356
31375
  if (scrollToNewMessage.scrollToBottom) {
31357
31376
  if (scrollToNewMessage.isIncomingMessage) {
31358
31377
  if (scrollRef.current.scrollTop > -100) {
31359
- scrollRef.current.scrollTop = 0;
31378
+ scrollRef.current.scrollTo({
31379
+ top: 0,
31380
+ behavior: 'smooth'
31381
+ });
31360
31382
  }
31361
31383
  } else {
31362
31384
  nextDisable = true;
31363
31385
  prevDisable = true;
31364
- scrollRef.current.scrollTop = 0;
31386
+ scrollRef.current.scrollTo({
31387
+ top: 0,
31388
+ behavior: 'smooth'
31389
+ });
31365
31390
  dispatch(showScrollToNewMessageButtonAC(false));
31366
31391
  setTimeout(function () {
31367
31392
  prevDisable = false;
@@ -32008,9 +32033,7 @@ var MessagesContainer = function MessagesContainer(_ref) {
32008
32033
  _ref$hiddenMessagesPr = _ref.hiddenMessagesProperties,
32009
32034
  hiddenMessagesProperties = _ref$hiddenMessagesPr === void 0 ? [] : _ref$hiddenMessagesPr,
32010
32035
  shouldOpenUserProfileForMention = _ref.shouldOpenUserProfileForMention;
32011
- var messages = useSelector(activeChannelMessagesSelector) || [];
32012
32036
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(MessageList, {
32013
- messages: messages,
32014
32037
  fontFamily: fontFamily,
32015
32038
  ownMessageOnRightSide: ownMessageOnRightSide,
32016
32039
  messageWidthPercent: messageWidthPercent,
@@ -38963,7 +38986,10 @@ var MessagesScrollToBottomButton = function MessagesScrollToBottomButton(_ref) {
38963
38986
  if (repliedMessage) {
38964
38987
  var scrollRef = document.getElementById('scrollableDiv');
38965
38988
  if (scrollRef) {
38966
- scrollRef.scrollTop = repliedMessage.offsetTop;
38989
+ scrollRef.scrollTo({
38990
+ top: repliedMessage.offsetTop - scrollRef.offsetHeight / 2,
38991
+ behavior: 'smooth'
38992
+ });
38967
38993
  }
38968
38994
  }
38969
38995
  } else {