sceyt-chat-react-uikit 1.7.6-beta.12 → 1.7.6-beta.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.js +38 -10
  2. package/index.modern.js +38 -10
  3. package/package.json +1 -1
package/index.js CHANGED
@@ -9883,6 +9883,11 @@ var calculateRenderedImageWidth = function calculateRenderedImageWidth(width, he
9883
9883
  }
9884
9884
  }
9885
9885
  };
9886
+ var formatChannelDetailsDate = function formatChannelDetailsDate(date) {
9887
+ if (!date) return '';
9888
+ var momentDate = moment(date);
9889
+ return momentDate.isValid() ? momentDate.format('DD.MM.YY, HH:mm') : '';
9890
+ };
9886
9891
  var userLastActiveDateFormat = function userLastActiveDateFormat(date) {
9887
9892
  var formattingDate = moment(date).format();
9888
9893
  var currentTime = moment();
@@ -15000,7 +15005,7 @@ function watchForEvents() {
15000
15005
  case 74:
15001
15006
  markersMap[messageId] = true;
15002
15007
  if (_channel6) {
15003
- if (_channel6.lastMessage && messageId === _channel6.lastMessage.id && _channel6.lastMessage.deliveryStatus !== MESSAGE_DELIVERY_STATUS.READ) {
15008
+ if (_channel6.lastMessage && messageId === _channel6.lastMessage.id) {
15004
15009
  updateLastMessage = true;
15005
15010
  }
15006
15011
  }
@@ -15016,9 +15021,7 @@ function watchForEvents() {
15016
15021
  _context.n = 77;
15017
15022
  break;
15018
15023
  }
15019
- lastMessage = _extends({}, _channel6.lastMessage, {
15020
- deliveryStatus: markerList.name
15021
- });
15024
+ lastMessage = _extends({}, _channel6.lastMessage, updateMessageDeliveryStatusAndMarkers(_channel6.lastMessage, markerList.name));
15022
15025
  updateChannelLastMessageOnAllChannels(_channel6.id, lastMessage);
15023
15026
  _context.n = 77;
15024
15027
  return effects.put(updateChannelLastMessageStatusAC(lastMessage, _channel6));
@@ -36646,6 +36649,7 @@ var Message$1 = function Message(_ref) {
36646
36649
  left: reactionsContainer ? reactionsContainer.getBoundingClientRect().left : 0,
36647
36650
  right: reactionsContPos ? window.innerWidth - reactionsContPos.left - reactionsContPos.width : 0
36648
36651
  });
36652
+ dispatch(setReactionsListAC([], false));
36649
36653
  setReactionsPopupOpen(!reactionsPopupOpen);
36650
36654
  };
36651
36655
  var handleMouseEnter = function handleMouseEnter() {
@@ -36736,7 +36740,7 @@ var Message$1 = function Message(_ref) {
36736
36740
  }
36737
36741
  };
36738
36742
  React.useEffect(function () {
36739
- if (isVisible) {
36743
+ if (isVisible && !unreadScrollTo) {
36740
36744
  var _channel$lastMessage;
36741
36745
  if (setLastVisibleMessageId) {
36742
36746
  setLastVisibleMessageId(message.id);
@@ -36754,7 +36758,7 @@ var Message$1 = function Message(_ref) {
36754
36758
  removeMessageFromVisibleMessagesMap(message);
36755
36759
  }
36756
36760
  }
36757
- }, [isVisible]);
36761
+ }, [isVisible, unreadScrollTo]);
36758
36762
  useDidUpdate(function () {
36759
36763
  if (tabIsActive) {
36760
36764
  handleSendReadMarker();
@@ -38038,6 +38042,9 @@ var MessageList = function MessageList(_ref2) {
38038
38042
  setScrollIntoView(false);
38039
38043
  }, 100);
38040
38044
  }
38045
+ } else {
38046
+ dispatch(setUnreadScrollToAC(false));
38047
+ setScrollIntoView(false);
38041
38048
  }
38042
38049
  }, [channel.id, channel.newMessageCount, scrollRef.current, unreadScrollTo, channel.lastDisplayedMessageId, scrollIntoView, messages.length]);
38043
38050
  React.useEffect(function () {
@@ -42888,7 +42895,28 @@ var SendMessageInput = function SendMessageInput(_ref3) {
42888
42895
  iconColor: textOnPrimary
42889
42896
  }, /*#__PURE__*/React__default.createElement(SvgChoseFile, null)))), /*#__PURE__*/React__default.createElement(ReplyMessageBody$1, null, /*#__PURE__*/React__default.createElement(EditReplyMessageHeader, {
42890
42897
  color: accentColor
42891
- }, replyMessageIcon || /*#__PURE__*/React__default.createElement(SvgReplyIcon, null), " Reply to", /*#__PURE__*/React__default.createElement(UserName$1, null, user.id === messageForReply.user.id ? user.firstName ? user.firstName + " " + user.lastName : user.id : makeUsername(contactsMap[messageForReply.user.id], messageForReply.user, getFromContacts))), messageForReply.attachments && messageForReply.attachments.length ? messageForReply.attachments[0].type === attachmentTypes.voice ? 'Voice' : messageForReply.attachments[0].type === attachmentTypes.image ? (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'Photo')) : messageForReply.attachments[0].type === attachmentTypes.video ? (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'Video')) : (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'File')) : MessageTextFormat({
42898
+ }, replyMessageIcon || /*#__PURE__*/React__default.createElement(SvgReplyIcon, null), " Reply to", /*#__PURE__*/React__default.createElement(UserName$1, null, user.id === messageForReply.user.id ? user.firstName ? user.firstName + " " + user.lastName : user.id : makeUsername(contactsMap[messageForReply.user.id], messageForReply.user, getFromContacts))), messageForReply.attachments && messageForReply.attachments.length ? messageForReply.attachments[0].type === attachmentTypes.voice ? 'Voice' : messageForReply.body && messageForReply.bodyAttributes && messageForReply.bodyAttributes.length > 0 ? MessageTextFormat({
42899
+ text: messageForReply.body,
42900
+ message: _extends({}, messageForReply, {
42901
+ mentionedUsers: messageForReply.mentionedUsers && messageForReply.mentionedUsers.length > 0 ? messageForReply.mentionedUsers : activeChannelMembers && messageForReply.bodyAttributes && messageForReply.bodyAttributes.length > 0 ? messageForReply.bodyAttributes.filter(function (attr) {
42902
+ return attr.type.includes('mention');
42903
+ }).map(function (attr) {
42904
+ var member = activeChannelMembers.find(function (m) {
42905
+ return m.id === attr.metadata;
42906
+ });
42907
+ return member || null;
42908
+ }).filter(function (m) {
42909
+ return m !== null;
42910
+ }) : messageForReply.mentionedUsers || [],
42911
+ channel: activeChannelMembers ? {
42912
+ members: activeChannelMembers
42913
+ } : undefined
42914
+ }),
42915
+ contactsMap: contactsMap,
42916
+ getFromContacts: getFromContacts,
42917
+ accentColor: accentColor,
42918
+ textSecondary: textSecondary
42919
+ }) : messageForReply.attachments[0].type === attachmentTypes.image ? (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'Photo')) : messageForReply.attachments[0].type === attachmentTypes.video ? (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'Video')) : (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'File')) : MessageTextFormat({
42892
42920
  text: messageForReply.body,
42893
42921
  message: messageForReply,
42894
42922
  contactsMap: contactsMap,
@@ -45225,7 +45253,7 @@ var Files = function Files(_ref) {
45225
45253
  fontSize: fileSizeFontSize,
45226
45254
  lineHeight: fileSizeLineHeight,
45227
45255
  color: filePreviewSizeColor || textSecondary
45228
- }, file.size ? bytesToSize(file.size) : '')), /*#__PURE__*/React__default.createElement(DownloadWrapper, {
45256
+ }, file.size ? bytesToSize(file.size) + " \u2022 " + formatChannelDetailsDate(file.createdAt) : formatChannelDetailsDate(file.createdAt))), /*#__PURE__*/React__default.createElement(DownloadWrapper, {
45229
45257
  visible: !!downloadingFilesMap[file.id],
45230
45258
  iconColor: accentColor,
45231
45259
  onClick: function onClick() {
@@ -45557,7 +45585,7 @@ var VoiceItem = function VoiceItem(_ref) {
45557
45585
  color: voicePreviewTitleColor || textPrimary
45558
45586
  }, file.user && (file.user.id === user.id ? 'You' : makeUsername(contactsMap[file.user.id], file.user, getFromContacts))), /*#__PURE__*/React__default.createElement(AudioDate, {
45559
45587
  color: voicePreviewDateAndTimeColor || textSecondary
45560
- }, moment(file.createdAt).format('DD MMMM, YYYY')), /*#__PURE__*/React__default.createElement(AudioSendTime, {
45588
+ }, formatChannelDetailsDate(file.createdAt)), /*#__PURE__*/React__default.createElement(AudioSendTime, {
45561
45589
  color: textSecondary
45562
45590
  }, currentTime || (file.metadata.dur ? formatAudioVideoTime(file.metadata.dur) : ''))), /*#__PURE__*/React__default.createElement(Audio, {
45563
45591
  controls: true,
@@ -45588,7 +45616,7 @@ var AudioInfo = styled__default.div(_templateObject4$F || (_templateObject4$F =
45588
45616
  var AudioTitle = styled__default.span(_templateObject5$A || (_templateObject5$A = _taggedTemplateLiteralLoose(["\n display: block;\n font-style: normal;\n font-weight: 500;\n font-size: 15px;\n line-height: 20px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n max-width: calc(100% - 72px);\n color: ", ";\n"])), function (props) {
45589
45617
  return props.color;
45590
45618
  });
45591
- var AudioDate = styled__default.span(_templateObject6$v || (_templateObject6$v = _taggedTemplateLiteralLoose(["\n display: block;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n max-width: calc(100% - 72px);\n font-style: normal;\n font-weight: normal;\n font-size: 12px;\n line-height: 16px;\n color: ", ";\n"])), function (props) {
45619
+ var AudioDate = styled__default.span(_templateObject6$v || (_templateObject6$v = _taggedTemplateLiteralLoose(["\n display: block;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n max-width: calc(100% - 72px);\n font-style: normal;\n font-weight: normal;\n font-size: 13px;\n line-height: 16px;\n color: ", ";\n"])), function (props) {
45592
45620
  return props.color;
45593
45621
  });
45594
45622
  var AudioSendTime = styled__default.span(_templateObject7$t || (_templateObject7$t = _taggedTemplateLiteralLoose(["\n position: absolute;\n right: 0;\n top: 11px;\n color: ", ";\n font-size: 12px;\n line-height: 16px;\n"])), function (props) {
package/index.modern.js CHANGED
@@ -9882,6 +9882,11 @@ var calculateRenderedImageWidth = function calculateRenderedImageWidth(width, he
9882
9882
  }
9883
9883
  }
9884
9884
  };
9885
+ var formatChannelDetailsDate = function formatChannelDetailsDate(date) {
9886
+ if (!date) return '';
9887
+ var momentDate = moment(date);
9888
+ return momentDate.isValid() ? momentDate.format('DD.MM.YY, HH:mm') : '';
9889
+ };
9885
9890
  var userLastActiveDateFormat = function userLastActiveDateFormat(date) {
9886
9891
  var formattingDate = moment(date).format();
9887
9892
  var currentTime = moment();
@@ -14999,7 +15004,7 @@ function watchForEvents() {
14999
15004
  case 74:
15000
15005
  markersMap[messageId] = true;
15001
15006
  if (_channel6) {
15002
- if (_channel6.lastMessage && messageId === _channel6.lastMessage.id && _channel6.lastMessage.deliveryStatus !== MESSAGE_DELIVERY_STATUS.READ) {
15007
+ if (_channel6.lastMessage && messageId === _channel6.lastMessage.id) {
15003
15008
  updateLastMessage = true;
15004
15009
  }
15005
15010
  }
@@ -15015,9 +15020,7 @@ function watchForEvents() {
15015
15020
  _context.n = 77;
15016
15021
  break;
15017
15022
  }
15018
- lastMessage = _extends({}, _channel6.lastMessage, {
15019
- deliveryStatus: markerList.name
15020
- });
15023
+ lastMessage = _extends({}, _channel6.lastMessage, updateMessageDeliveryStatusAndMarkers(_channel6.lastMessage, markerList.name));
15021
15024
  updateChannelLastMessageOnAllChannels(_channel6.id, lastMessage);
15022
15025
  _context.n = 77;
15023
15026
  return put(updateChannelLastMessageStatusAC(lastMessage, _channel6));
@@ -36645,6 +36648,7 @@ var Message$1 = function Message(_ref) {
36645
36648
  left: reactionsContainer ? reactionsContainer.getBoundingClientRect().left : 0,
36646
36649
  right: reactionsContPos ? window.innerWidth - reactionsContPos.left - reactionsContPos.width : 0
36647
36650
  });
36651
+ dispatch(setReactionsListAC([], false));
36648
36652
  setReactionsPopupOpen(!reactionsPopupOpen);
36649
36653
  };
36650
36654
  var handleMouseEnter = function handleMouseEnter() {
@@ -36735,7 +36739,7 @@ var Message$1 = function Message(_ref) {
36735
36739
  }
36736
36740
  };
36737
36741
  useEffect(function () {
36738
- if (isVisible) {
36742
+ if (isVisible && !unreadScrollTo) {
36739
36743
  var _channel$lastMessage;
36740
36744
  if (setLastVisibleMessageId) {
36741
36745
  setLastVisibleMessageId(message.id);
@@ -36753,7 +36757,7 @@ var Message$1 = function Message(_ref) {
36753
36757
  removeMessageFromVisibleMessagesMap(message);
36754
36758
  }
36755
36759
  }
36756
- }, [isVisible]);
36760
+ }, [isVisible, unreadScrollTo]);
36757
36761
  useDidUpdate(function () {
36758
36762
  if (tabIsActive) {
36759
36763
  handleSendReadMarker();
@@ -38037,6 +38041,9 @@ var MessageList = function MessageList(_ref2) {
38037
38041
  setScrollIntoView(false);
38038
38042
  }, 100);
38039
38043
  }
38044
+ } else {
38045
+ dispatch(setUnreadScrollToAC(false));
38046
+ setScrollIntoView(false);
38040
38047
  }
38041
38048
  }, [channel.id, channel.newMessageCount, scrollRef.current, unreadScrollTo, channel.lastDisplayedMessageId, scrollIntoView, messages.length]);
38042
38049
  useEffect(function () {
@@ -42887,7 +42894,28 @@ var SendMessageInput = function SendMessageInput(_ref3) {
42887
42894
  iconColor: textOnPrimary
42888
42895
  }, /*#__PURE__*/React__default.createElement(SvgChoseFile, null)))), /*#__PURE__*/React__default.createElement(ReplyMessageBody$1, null, /*#__PURE__*/React__default.createElement(EditReplyMessageHeader, {
42889
42896
  color: accentColor
42890
- }, replyMessageIcon || /*#__PURE__*/React__default.createElement(SvgReplyIcon, null), " Reply to", /*#__PURE__*/React__default.createElement(UserName$1, null, user.id === messageForReply.user.id ? user.firstName ? user.firstName + " " + user.lastName : user.id : makeUsername(contactsMap[messageForReply.user.id], messageForReply.user, getFromContacts))), messageForReply.attachments && messageForReply.attachments.length ? messageForReply.attachments[0].type === attachmentTypes.voice ? 'Voice' : messageForReply.attachments[0].type === attachmentTypes.image ? (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'Photo')) : messageForReply.attachments[0].type === attachmentTypes.video ? (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'Video')) : (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'File')) : MessageTextFormat({
42897
+ }, replyMessageIcon || /*#__PURE__*/React__default.createElement(SvgReplyIcon, null), " Reply to", /*#__PURE__*/React__default.createElement(UserName$1, null, user.id === messageForReply.user.id ? user.firstName ? user.firstName + " " + user.lastName : user.id : makeUsername(contactsMap[messageForReply.user.id], messageForReply.user, getFromContacts))), messageForReply.attachments && messageForReply.attachments.length ? messageForReply.attachments[0].type === attachmentTypes.voice ? 'Voice' : messageForReply.body && messageForReply.bodyAttributes && messageForReply.bodyAttributes.length > 0 ? MessageTextFormat({
42898
+ text: messageForReply.body,
42899
+ message: _extends({}, messageForReply, {
42900
+ mentionedUsers: messageForReply.mentionedUsers && messageForReply.mentionedUsers.length > 0 ? messageForReply.mentionedUsers : activeChannelMembers && messageForReply.bodyAttributes && messageForReply.bodyAttributes.length > 0 ? messageForReply.bodyAttributes.filter(function (attr) {
42901
+ return attr.type.includes('mention');
42902
+ }).map(function (attr) {
42903
+ var member = activeChannelMembers.find(function (m) {
42904
+ return m.id === attr.metadata;
42905
+ });
42906
+ return member || null;
42907
+ }).filter(function (m) {
42908
+ return m !== null;
42909
+ }) : messageForReply.mentionedUsers || [],
42910
+ channel: activeChannelMembers ? {
42911
+ members: activeChannelMembers
42912
+ } : undefined
42913
+ }),
42914
+ contactsMap: contactsMap,
42915
+ getFromContacts: getFromContacts,
42916
+ accentColor: accentColor,
42917
+ textSecondary: textSecondary
42918
+ }) : messageForReply.attachments[0].type === attachmentTypes.image ? (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'Photo')) : messageForReply.attachments[0].type === attachmentTypes.video ? (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'Video')) : (/*#__PURE__*/React__default.createElement(TextInOneLine, null, messageForReply.body || 'File')) : MessageTextFormat({
42891
42919
  text: messageForReply.body,
42892
42920
  message: messageForReply,
42893
42921
  contactsMap: contactsMap,
@@ -45224,7 +45252,7 @@ var Files = function Files(_ref) {
45224
45252
  fontSize: fileSizeFontSize,
45225
45253
  lineHeight: fileSizeLineHeight,
45226
45254
  color: filePreviewSizeColor || textSecondary
45227
- }, file.size ? bytesToSize(file.size) : '')), /*#__PURE__*/React__default.createElement(DownloadWrapper, {
45255
+ }, file.size ? bytesToSize(file.size) + " \u2022 " + formatChannelDetailsDate(file.createdAt) : formatChannelDetailsDate(file.createdAt))), /*#__PURE__*/React__default.createElement(DownloadWrapper, {
45228
45256
  visible: !!downloadingFilesMap[file.id],
45229
45257
  iconColor: accentColor,
45230
45258
  onClick: function onClick() {
@@ -45556,7 +45584,7 @@ var VoiceItem = function VoiceItem(_ref) {
45556
45584
  color: voicePreviewTitleColor || textPrimary
45557
45585
  }, file.user && (file.user.id === user.id ? 'You' : makeUsername(contactsMap[file.user.id], file.user, getFromContacts))), /*#__PURE__*/React__default.createElement(AudioDate, {
45558
45586
  color: voicePreviewDateAndTimeColor || textSecondary
45559
- }, moment(file.createdAt).format('DD MMMM, YYYY')), /*#__PURE__*/React__default.createElement(AudioSendTime, {
45587
+ }, formatChannelDetailsDate(file.createdAt)), /*#__PURE__*/React__default.createElement(AudioSendTime, {
45560
45588
  color: textSecondary
45561
45589
  }, currentTime || (file.metadata.dur ? formatAudioVideoTime(file.metadata.dur) : ''))), /*#__PURE__*/React__default.createElement(Audio, {
45562
45590
  controls: true,
@@ -45587,7 +45615,7 @@ var AudioInfo = styled.div(_templateObject4$F || (_templateObject4$F = _taggedTe
45587
45615
  var AudioTitle = styled.span(_templateObject5$A || (_templateObject5$A = _taggedTemplateLiteralLoose(["\n display: block;\n font-style: normal;\n font-weight: 500;\n font-size: 15px;\n line-height: 20px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n max-width: calc(100% - 72px);\n color: ", ";\n"])), function (props) {
45588
45616
  return props.color;
45589
45617
  });
45590
- var AudioDate = styled.span(_templateObject6$v || (_templateObject6$v = _taggedTemplateLiteralLoose(["\n display: block;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n max-width: calc(100% - 72px);\n font-style: normal;\n font-weight: normal;\n font-size: 12px;\n line-height: 16px;\n color: ", ";\n"])), function (props) {
45618
+ var AudioDate = styled.span(_templateObject6$v || (_templateObject6$v = _taggedTemplateLiteralLoose(["\n display: block;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n max-width: calc(100% - 72px);\n font-style: normal;\n font-weight: normal;\n font-size: 13px;\n line-height: 16px;\n color: ", ";\n"])), function (props) {
45591
45619
  return props.color;
45592
45620
  });
45593
45621
  var AudioSendTime = styled.span(_templateObject7$t || (_templateObject7$t = _taggedTemplateLiteralLoose(["\n position: absolute;\n right: 0;\n top: 11px;\n color: ", ";\n font-size: 12px;\n line-height: 16px;\n"])), function (props) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sceyt-chat-react-uikit",
3
- "version": "1.7.6-beta.12",
3
+ "version": "1.7.6-beta.14",
4
4
  "description": "Interactive React UI Components for Sceyt Chat.",
5
5
  "author": "Sceyt",
6
6
  "license": "MIT",