sceyt-chat-react-uikit 1.7.9-beta.13 → 1.7.9-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.
@@ -80,6 +80,7 @@ export interface IChatClientProps {
80
80
  joinMembersEvent?: (channelId: string, joinedMembers: IMember[], members: IMember[]) => IMember[];
81
81
  updateMembersEvent?: (channelId: string, updatedMembers: IMember[], members: IMember[]) => IMember[];
82
82
  } | null;
83
+ showOwnMessageForward?: boolean;
83
84
  }
84
- declare const SceytChatContainer: ({ client, theme, themeMode, avatarColors, children, showOnlyContactUsers, handleNewMessages, sendAttachmentsAsSeparateMessages, membersDisplayTextByChannelTypesMap, defaultRolesByChannelTypesMap, channelTypeFilter, logoSrc, CustomUploader, showNotifications, hideUserPresence, openChatOnUserInteraction, autoSelectFirstChannel, logLevel, memberCount, disableFrowardMentionsCount, chatMinWidth, baseUrlForInviteMembers, useInviteLink, inviteLinkOptions, embeddedJoinGroupPopup, onUpdateChannel, disappearingSettings, customLoadMembersFunctions }: IChatClientProps) => React.JSX.Element;
85
+ declare const SceytChatContainer: ({ client, theme, themeMode, avatarColors, children, showOnlyContactUsers, handleNewMessages, sendAttachmentsAsSeparateMessages, membersDisplayTextByChannelTypesMap, defaultRolesByChannelTypesMap, channelTypeFilter, logoSrc, CustomUploader, showNotifications, hideUserPresence, openChatOnUserInteraction, autoSelectFirstChannel, logLevel, memberCount, disableFrowardMentionsCount, chatMinWidth, baseUrlForInviteMembers, useInviteLink, inviteLinkOptions, embeddedJoinGroupPopup, onUpdateChannel, disappearingSettings, customLoadMembersFunctions, showOwnMessageForward }: IChatClientProps) => React.JSX.Element;
85
86
  export default SceytChatContainer;
package/index.js CHANGED
@@ -9085,6 +9085,7 @@ var disableFrowardMentionsCount = false;
9085
9085
  var onUpdateChannel = function onUpdateChannel() {};
9086
9086
  var useInviteLink = false;
9087
9087
  var disappearingSettings;
9088
+ var showOwnMessageForward = true;
9088
9089
  var customLoadMembersFunctions;
9089
9090
  var inviteLinkOptions = null;
9090
9091
  function setBaseUrlForInviteMembers(url) {
@@ -9341,6 +9342,12 @@ var setDisappearingSettings = function setDisappearingSettings(settings) {
9341
9342
  var setCustomLoadMembersFunctions = function setCustomLoadMembersFunctions(functions) {
9342
9343
  customLoadMembersFunctions = functions;
9343
9344
  };
9345
+ var setShowOwnMessageForward = function setShowOwnMessageForward(show) {
9346
+ showOwnMessageForward = show;
9347
+ };
9348
+ var getShowOwnMessageForward = function getShowOwnMessageForward() {
9349
+ return showOwnMessageForward;
9350
+ };
9344
9351
  var getDisappearingSettings = function getDisappearingSettings() {
9345
9352
  return disappearingSettings;
9346
9353
  };
@@ -19119,7 +19126,7 @@ function getChannelsWithUser(action) {
19119
19126
  channelsQueryBuilder = new _SceytChatClient10.ChannelListQueryBuilder();
19120
19127
  channelsQueryBuilder.memberCount(0);
19121
19128
  channelsQueryBuilder.setMutualWithUserId(userId);
19122
- channelsQueryBuilder.withExcludeTypes([DEFAULT_CHANNEL_TYPE.DIRECT]);
19129
+ channelsQueryBuilder.types([DEFAULT_CHANNEL_TYPE.PRIVATE]);
19123
19130
  channelsQueryBuilder.limit(15);
19124
19131
  _context37.n = 3;
19125
19132
  return effects.call(channelsQueryBuilder.build);
@@ -19873,10 +19880,13 @@ var addPendingMessage = function addPendingMessage(message, messageCopy, channel
19873
19880
  return Promise.reject(e);
19874
19881
  }
19875
19882
  };
19876
- var updateMessage$1 = function updateMessage(actionType, pending, channelId, scrollToNewMessage, message) {
19883
+ var updateMessage$1 = function updateMessage(actionType, pending, channelId, scrollToNewMessage, message, isNotShowOwnMessageForward) {
19877
19884
  if (scrollToNewMessage === void 0) {
19878
19885
  scrollToNewMessage = true;
19879
19886
  }
19887
+ if (isNotShowOwnMessageForward === void 0) {
19888
+ isNotShowOwnMessageForward = false;
19889
+ }
19880
19890
  return /*#__PURE__*/_regenerator().m(function _callee() {
19881
19891
  var activeChannelId, channel, messages, _channel$lastMessage2, repliedMessage, scrollRef, _channel$lastMessage3;
19882
19892
  return _regenerator().w(function (_context) {
@@ -19888,14 +19898,18 @@ var updateMessage$1 = function updateMessage(actionType, pending, channelId, scr
19888
19898
  break;
19889
19899
  }
19890
19900
  if (activeChannelId === channelId) {
19891
- addAllMessages([pending], MESSAGE_LOAD_DIRECTION.NEXT);
19901
+ addAllMessages([_extends({}, pending, isNotShowOwnMessageForward ? {
19902
+ forwardingDetails: undefined
19903
+ } : {})], MESSAGE_LOAD_DIRECTION.NEXT);
19892
19904
  }
19893
19905
  if (!(activeChannelId === channelId)) {
19894
19906
  _context.n = 1;
19895
19907
  break;
19896
19908
  }
19897
19909
  _context.n = 1;
19898
- return effects.put(addMessageAC(pending));
19910
+ return effects.put(addMessageAC(_extends({}, pending, isNotShowOwnMessageForward ? {
19911
+ forwardingDetails: undefined
19912
+ } : {})));
19899
19913
  case 1:
19900
19914
  _context.n = 2;
19901
19915
  return effects.call(addPendingMessage, message, pending, channelId);
@@ -20565,12 +20579,15 @@ function sendTextMessage(action) {
20565
20579
  }, _marked2$2, null, [[3, 20, 23, 25]]);
20566
20580
  }
20567
20581
  function forwardMessage(action) {
20568
- var payload, message, channelId, connectionState, isForward, pendingMessage, channel, activeChannelId, messageTid, SceytChatClient, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, pollDetails, messageToSend, hasNextMessages, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, _channel5, isErrorResendable, _channel6, _activeChannelId2, _t4;
20582
+ var payload, message, channelId, connectionState, isForward, showOwnMessageForward, SceytChatClient, isNotShowOwnMessageForward, pendingMessage, channel, activeChannelId, messageTid, _SceytChatClient, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, pollDetails, messageToSend, hasNextMessages, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, _channel5, isErrorResendable, _channel6, _activeChannelId2, _t4;
20569
20583
  return _regenerator().w(function (_context6) {
20570
20584
  while (1) switch (_context6.p = _context6.n) {
20571
20585
  case 0:
20572
20586
  payload = action.payload;
20573
20587
  message = payload.message, channelId = payload.channelId, connectionState = payload.connectionState, isForward = payload.isForward;
20588
+ showOwnMessageForward = getShowOwnMessageForward();
20589
+ SceytChatClient = getClient();
20590
+ isNotShowOwnMessageForward = message.user.id === SceytChatClient.user.id && !showOwnMessageForward;
20574
20591
  pendingMessage = null;
20575
20592
  channel = null;
20576
20593
  activeChannelId = getActiveChannelId();
@@ -20592,9 +20609,9 @@ function forwardMessage(action) {
20592
20609
  _context6.n = 5;
20593
20610
  break;
20594
20611
  }
20595
- SceytChatClient = getClient();
20612
+ _SceytChatClient = getClient();
20596
20613
  _context6.n = 4;
20597
- return effects.call(SceytChatClient.getChannel, channelId);
20614
+ return effects.call(_SceytChatClient.getChannel, channelId);
20598
20615
  case 4:
20599
20616
  channel = _context6.v;
20600
20617
  case 5:
@@ -20650,7 +20667,8 @@ function forwardMessage(action) {
20650
20667
  }) : messageBuilder.create();
20651
20668
  messageTid = messageToSend.tid;
20652
20669
  pendingMessage = _extends({}, messageToSend, {
20653
- createdAt: new Date(Date.now())
20670
+ createdAt: new Date(Date.now()),
20671
+ user: message.user
20654
20672
  });
20655
20673
  if (isForward && pendingMessage && action.type !== RESEND_MESSAGE) {
20656
20674
  if (message.forwardingDetails) {
@@ -20687,14 +20705,16 @@ function forwardMessage(action) {
20687
20705
  break;
20688
20706
  }
20689
20707
  _context6.n = 9;
20690
- return effects.call(updateMessage$1, action.type, pendingMessage, channel.id, false, message);
20708
+ return effects.call(updateMessage$1, action.type, pendingMessage, channel.id, false, message, isNotShowOwnMessageForward);
20691
20709
  case 9:
20692
20710
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
20693
20711
  _context6.n = 16;
20694
20712
  break;
20695
20713
  }
20696
20714
  _context6.n = 10;
20697
- return effects.call(channel.sendMessage, messageToSend);
20715
+ return effects.call(channel.sendMessage, _extends({}, messageToSend, isNotShowOwnMessageForward ? {
20716
+ forwardingDetails: null
20717
+ } : {}));
20698
20718
  case 10:
20699
20719
  messageResponse = _context6.v;
20700
20720
  messageUpdateData = _extends({}, messageResponse, {
@@ -25169,7 +25189,9 @@ var SceytChatContainer = function SceytChatContainer(_ref) {
25169
25189
  _ref$disappearingSett = _ref.disappearingSettings,
25170
25190
  disappearingSettings = _ref$disappearingSett === void 0 ? null : _ref$disappearingSett,
25171
25191
  _ref$customLoadMember = _ref.customLoadMembersFunctions,
25172
- customLoadMembersFunctions = _ref$customLoadMember === void 0 ? null : _ref$customLoadMember;
25192
+ customLoadMembersFunctions = _ref$customLoadMember === void 0 ? null : _ref$customLoadMember,
25193
+ _ref$showOwnMessageFo = _ref.showOwnMessageForward,
25194
+ showOwnMessageForward = _ref$showOwnMessageFo === void 0 ? true : _ref$showOwnMessageFo;
25173
25195
  React.useEffect(function () {
25174
25196
  log.setLevel(logLevel);
25175
25197
  }, [logLevel]);
@@ -25198,6 +25220,9 @@ var SceytChatContainer = function SceytChatContainer(_ref) {
25198
25220
  setCustomLoadMembersFunctions(customLoadMembersFunctions);
25199
25221
  }
25200
25222
  }, [customLoadMembersFunctions]);
25223
+ React.useEffect(function () {
25224
+ setShowOwnMessageForward(showOwnMessageForward);
25225
+ }, [showOwnMessageForward]);
25201
25226
  return /*#__PURE__*/React__default.createElement(reactRedux.Provider, {
25202
25227
  store: store,
25203
25228
  context: SceytReduxContext
@@ -26517,6 +26542,9 @@ var UsersPopup = function UsersPopup(_ref2) {
26517
26542
  var _useState5 = React.useState(false),
26518
26543
  isScrolling = _useState5[0],
26519
26544
  setIsScrolling = _useState5[1];
26545
+ var _useState6 = React.useState(false),
26546
+ isSelectedMembersScrolling = _useState6[0],
26547
+ setIsSelectedMembersScrolling = _useState6[1];
26520
26548
  var popupTitleText = channel && (memberDisplayText && memberDisplayText[channel.type] ? "Add " + memberDisplayText[channel.type] + "s" : channel.type === DEFAULT_CHANNEL_TYPE.BROADCAST || channel.type === DEFAULT_CHANNEL_TYPE.PUBLIC ? 'Subscribers' : 'Members');
26521
26549
  var handleMembersListScroll = function handleMembersListScroll(event) {
26522
26550
  if (!userSearchValue && event.target.scrollHeight - event.target.scrollTop <= event.target.offsetHeight + 300) {
@@ -26706,7 +26734,15 @@ var UsersPopup = function UsersPopup(_ref2) {
26706
26734
  return setUserSearchValue('');
26707
26735
  }
26708
26736
  })), actionType !== 'createChat' && selectedMembers.length !== 0 && (/*#__PURE__*/React__default.createElement(SelectedMembersContainer, {
26709
- ref: selectedMembersCont
26737
+ ref: selectedMembersCont,
26738
+ thumbColor: surface2,
26739
+ className: isSelectedMembersScrolling ? 'show-scrollbar' : '',
26740
+ onMouseEnter: function onMouseEnter() {
26741
+ return setIsSelectedMembersScrolling(true);
26742
+ },
26743
+ onMouseLeave: function onMouseLeave() {
26744
+ return setIsSelectedMembersScrolling(false);
26745
+ }
26710
26746
  }, selectedMembers.map(function (member) {
26711
26747
  return /*#__PURE__*/React__default.createElement(SelectedMemberBubble, {
26712
26748
  backgroundColor: surface1,
@@ -26803,7 +26839,7 @@ var UsersPopup = function UsersPopup(_ref2) {
26803
26839
  }, actionType === 'selectUsers' ? 'Create' : 'Add')))));
26804
26840
  };
26805
26841
  var List = styled__default.div(_templateObject$b || (_templateObject$b = _taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n overflow-y: scroll;\n overflow-x: hidden;\n margin-top: 12px;\n min-height: 150px;\n box-sizing: border-box;\n"])));
26806
- var MembersContainer = styled__default(List)(_templateObject2$a || (_templateObject2$a = _taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n //margin-top: 24px;\n position: relative;\n max-height: ", ";\n overflow-y: auto;\n\n //width: calc(100% + 16px);\n padding-right: 16px;\n\n &::-webkit-scrollbar {\n width: 8px;\n background: transparent;\n }\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n &.show-scrollbar::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 4px;\n }\n &.show-scrollbar::-webkit-scrollbar-track {\n background: transparent;\n }\n"])), function (props) {
26842
+ var MembersContainer = styled__default(List)(_templateObject2$a || (_templateObject2$a = _taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n position: relative;\n max-height: ", ";\n overflow-y: auto;\n padding-right: 16px;\n\n &::-webkit-scrollbar {\n width: 8px;\n background: transparent;\n }\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n &.show-scrollbar::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 4px;\n }\n &.show-scrollbar::-webkit-scrollbar-track {\n background: transparent;\n }\n"])), function (props) {
26807
26843
  return "calc(100% - (" + ((props.isAdd ? 67 : 70) + props.selectedMembersHeight) + "px))";
26808
26844
  }, function (props) {
26809
26845
  return props.thumbColor;
@@ -26825,7 +26861,9 @@ var UserNamePresence = styled__default.div(_templateObject6$3 || (_templateObjec
26825
26861
  var MemberName = styled__default.h4(_templateObject7$3 || (_templateObject7$3 = _taggedTemplateLiteralLoose(["\n font-style: normal;\n font-size: 15px;\n font-weight: 500;\n line-height: 16px;\n color: ", ";\n margin: 0;\n max-width: calc(100% - 10px);\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n"])), function (props) {
26826
26862
  return props.color;
26827
26863
  });
26828
- var SelectedMembersContainer = styled__default.div(_templateObject8$3 || (_templateObject8$3 = _taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n width: 100%;\n max-height: 85px;\n overflow-x: hidden;\n padding: 2px 12px 0;\n box-sizing: border-box;\n //flex: 0 0 auto;\n"])));
26864
+ var SelectedMembersContainer = styled__default.div(_templateObject8$3 || (_templateObject8$3 = _taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n width: 100%;\n max-height: 85px;\n overflow-x: hidden;\n padding: 2px 12px 0;\n box-sizing: border-box;\n overflow-y: auto;\n\n &::-webkit-scrollbar {\n width: 8px;\n background: transparent;\n }\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n &.show-scrollbar::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 4px;\n }\n &.show-scrollbar::-webkit-scrollbar-track {\n background: transparent;\n }\n"])), function (props) {
26865
+ return props.thumbColor;
26866
+ });
26829
26867
  var SelectedMemberBubble = styled__default.div(_templateObject9$2 || (_templateObject9$2 = _taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: space-between;\n background: ", ";\n border-radius: 16px;\n align-items: center;\n padding: 4px 10px 4px 0;\n height: 28px;\n margin: 8px 8px 0 0;\n box-sizing: border-box;\n"])), function (props) {
26830
26868
  return props.backgroundColor;
26831
26869
  });
@@ -43884,6 +43922,7 @@ var SendMessageInput = function SendMessageInput(_ref3) {
43884
43922
  accentColor = _useColor[THEME_COLORS.ACCENT],
43885
43923
  backgroundSections = _useColor[THEME_COLORS.BACKGROUND_SECTIONS],
43886
43924
  surface1Background = _useColor[THEME_COLORS.SURFACE_1],
43925
+ surface2 = _useColor[THEME_COLORS.SURFACE_2],
43887
43926
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
43888
43927
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
43889
43928
  iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE],
@@ -44027,6 +44066,9 @@ var SendMessageInput = function SendMessageInput(_ref3) {
44027
44066
  var _useState29 = React.useState(false),
44028
44067
  isSmallWidthViewport = _useState29[0],
44029
44068
  setIsSmallWidthViewport = _useState29[1];
44069
+ var _useState30 = React.useState(false),
44070
+ isScrolling = _useState30[0],
44071
+ setIsScrolling = _useState30[1];
44030
44072
  var addAttachmentByMenu = showChooseFileAttachment && showChooseMediaAttachment;
44031
44073
  function onChange(editorState) {
44032
44074
  setRealEditorState(editorState);
@@ -45319,7 +45361,8 @@ var SendMessageInput = function SendMessageInput(_ref3) {
45319
45361
  className: inputCustomClassname,
45320
45362
  highlightedBackground: textSelectionBackgroundColor || highlightedBackground,
45321
45363
  borderRadius: inputBorderRadius,
45322
- color: textPrimary
45364
+ color: textPrimary,
45365
+ thumbColor: surface2
45323
45366
  }, /*#__PURE__*/React__default.createElement(LexicalComposer.LexicalComposer, {
45324
45367
  initialConfig: initialConfig
45325
45368
  }, /*#__PURE__*/React__default.createElement(AutoFocusPlugin, {
@@ -45364,7 +45407,13 @@ var SendMessageInput = function SendMessageInput(_ref3) {
45364
45407
  contentEditable: /*#__PURE__*/React__default.createElement("div", {
45365
45408
  onKeyDown: handleSendEditMessage,
45366
45409
  onDoubleClick: handleDoubleClick,
45367
- className: 'rich_text_editor',
45410
+ className: "rich_text_editor " + (isScrolling ? 'show-scrollbar' : ''),
45411
+ onMouseEnter: function onMouseEnter() {
45412
+ return setIsScrolling(true);
45413
+ },
45414
+ onMouseLeave: function onMouseLeave() {
45415
+ return setIsScrolling(false);
45416
+ },
45368
45417
  ref: onRef
45369
45418
  }, /*#__PURE__*/React__default.createElement(LexicalContentEditable.ContentEditable, {
45370
45419
  className: 'content_editable_input'
@@ -45472,7 +45521,7 @@ var MessageInputWrapper = styled__default.div(_templateObject10$8 || (_templateO
45472
45521
  }, function (props) {
45473
45522
  return props.borderRadius || '18px';
45474
45523
  });
45475
- var LexicalWrapper = styled__default.div(_templateObject11$6 || (_templateObject11$6 = _taggedTemplateLiteralLoose(["\n position: relative;\n width: 100%;\n\n & .rich_text_editor {\n width: 100%;\n max-height: 80px;\n min-height: 20px;\n display: block;\n border: none;\n box-sizing: border-box;\n outline: none !important;\n overflow: auto;\n border-radius: ", ";\n background-color: ", ";\n padding: ", ";\n color: ", ";\n order: ", ";\n\n & p {\n font-size: 15px;\n line-height: 20px;\n color: ", ";\n }\n\n &::selection {\n background-color: ", ";\n }\n\n & *::selection {\n background-color: ", ";\n }\n\n & span::selection {\n background-color: ", ";\n }\n\n &:empty:before {\n content: attr(data-placeholder);\n }\n\n & .content_editable_input {\n border: none !important;\n outline: none !important;\n }\n\n & .mention {\n color: ", ";\n background-color: inherit !important;\n user-modify: read-only;\n }\n\n & span.bold {\n font-weight: bold;\n }\n\n & .editor_paragraph {\n margin: 0;\n }\n\n & .text_bold {\n font-weight: 600;\n }\n\n & .text_italic {\n font-style: italic;\n }\n\n & .text_underline {\n text-decoration: underline;\n }\n\n & .text_strikethrough {\n text-decoration: line-through;\n }\n\n & .text_underlineStrikethrough {\n text-decoration: underline line-through;\n }\n\n & code {\n font-family: inherit;\n letter-spacing: 4px;\n }\n }\n"])), function (props) {
45524
+ var LexicalWrapper = styled__default.div(_templateObject11$6 || (_templateObject11$6 = _taggedTemplateLiteralLoose(["\n position: relative;\n width: 100%;\n\n & .rich_text_editor {\n width: 100%;\n max-height: 80px;\n min-height: 20px;\n display: block;\n border: none;\n box-sizing: border-box;\n outline: none !important;\n border-radius: ", ";\n background-color: ", ";\n padding: ", ";\n color: ", ";\n order: ", ";\n overflow-y: auto;\n overflow-x: hidden;\n\n &::-webkit-scrollbar {\n width: 8px;\n background: transparent;\n }\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n &.show-scrollbar::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 4px;\n }\n &.show-scrollbar::-webkit-scrollbar-track {\n background: transparent;\n }\n\n & p {\n font-size: 15px;\n line-height: 20px;\n color: ", ";\n }\n\n &::selection {\n background-color: ", ";\n }\n\n & *::selection {\n background-color: ", ";\n }\n\n & span::selection {\n background-color: ", ";\n }\n\n &:empty:before {\n content: attr(data-placeholder);\n }\n\n & .content_editable_input {\n border: none !important;\n outline: none !important;\n }\n\n & .mention {\n color: ", ";\n background-color: inherit !important;\n user-modify: read-only;\n }\n\n & span.bold {\n font-weight: bold;\n }\n\n & .editor_paragraph {\n margin: 0;\n }\n\n & .text_bold {\n font-weight: 600;\n }\n\n & .text_italic {\n font-style: italic;\n }\n\n & .text_underline {\n text-decoration: underline;\n }\n\n & .text_strikethrough {\n text-decoration: line-through;\n }\n\n & .text_underlineStrikethrough {\n text-decoration: underline line-through;\n }\n\n & code {\n font-family: inherit;\n letter-spacing: 4px;\n }\n }\n"])), function (props) {
45476
45525
  return props.borderRadius;
45477
45526
  }, function (props) {
45478
45527
  return props.backgroundColor;
@@ -45482,6 +45531,8 @@ var LexicalWrapper = styled__default.div(_templateObject11$6 || (_templateObject
45482
45531
  return props.color;
45483
45532
  }, function (props) {
45484
45533
  return props.order === 0 || props.order ? props.order : 1;
45534
+ }, function (props) {
45535
+ return props.thumbColor;
45485
45536
  }, function (props) {
45486
45537
  return props.color;
45487
45538
  }, function (props) {
@@ -48364,14 +48415,8 @@ var Members = function Members(_ref) {
48364
48415
  setCloseMenu = _useState8[1];
48365
48416
  var contactsMap = useSelector(contactsMapSelector) || {};
48366
48417
  var openInviteModal = useSelector(openInviteModalSelector);
48367
- var channelsMembersHasNext = useSelector(channelsMembersHasNextMapSelector, reactRedux.shallowEqual);
48368
- var membersHasNext = React.useMemo(function () {
48369
- return channelsMembersHasNext === null || channelsMembersHasNext === void 0 ? void 0 : channelsMembersHasNext[channel.id];
48370
- }, [channelsMembersHasNext === null || channelsMembersHasNext === void 0 ? void 0 : channelsMembersHasNext[channel.id]]);
48371
- var channelsMembersLoadingState = useSelector(channelsMembersLoadingStateSelector, reactRedux.shallowEqual);
48372
- var membersLoading = React.useMemo(function () {
48373
- return channelsMembersLoadingState === null || channelsMembersLoadingState === void 0 ? void 0 : channelsMembersLoadingState[channel.id];
48374
- }, [channelsMembersLoadingState === null || channelsMembersLoadingState === void 0 ? void 0 : channelsMembersLoadingState[channel.id]]);
48418
+ var rolesMap = useSelector(rolesMapSelector, reactRedux.shallowEqual);
48419
+ var connectionStatus = useSelector(connectionStatusSelector);
48375
48420
  var user = getClient().user;
48376
48421
  var memberDisplayText = getChannelTypesMemberDisplayTextMap();
48377
48422
  var channelTypeRoleMap = getDefaultRolesByChannelTypesMap();
@@ -48471,13 +48516,15 @@ var Members = function Members(_ref) {
48471
48516
  setAddMemberPopupOpen(false);
48472
48517
  };
48473
48518
  React.useEffect(function () {
48474
- if (getFromContacts) {
48475
- dispatch(getContactsAC());
48476
- }
48477
- if (channel !== null && channel !== void 0 && channel.id && membersHasNext === undefined && membersLoading !== LOADING_STATE.LOADING) {
48478
- dispatch(getMembersAC(channel.id));
48519
+ if (connectionStatus === CONNECTION_STATUS.CONNECTED) {
48520
+ if (getFromContacts) {
48521
+ dispatch(getContactsAC());
48522
+ }
48523
+ if (channel !== null && channel !== void 0 && channel.id) {
48524
+ dispatch(getMembersAC(channel.id));
48525
+ }
48479
48526
  }
48480
- }, [channel === null || channel === void 0 ? void 0 : channel.id]);
48527
+ }, [channel === null || channel === void 0 ? void 0 : channel.id, connectionStatus]);
48481
48528
  var currentUserRole = (_members$find = members.find(function (member) {
48482
48529
  return member.id === user.id;
48483
48530
  })) === null || _members$find === void 0 ? void 0 : _members$find.role;
@@ -48492,6 +48539,7 @@ var Members = function Members(_ref) {
48492
48539
  fontSize: addMemberFontSize,
48493
48540
  addMemberBackground: surface1
48494
48541
  }, addMemberIcon || /*#__PURE__*/React__default.createElement(SvgAddMember, null), "Add " + displayMemberText)), !!members.length && members.map(function (member, index) {
48542
+ var _rolesMap$member$role, _rolesMap$currentUser, _rolesMap$member$role2, _rolesMap$currentUser2;
48495
48543
  return /*#__PURE__*/React__default.createElement(MemberItem$1, {
48496
48544
  addMemberIconColor: iconInactive,
48497
48545
  key: member.id + index,
@@ -48519,7 +48567,7 @@ var Members = function Members(_ref) {
48519
48567
  color: textSecondary,
48520
48568
  margin: '1px 0 0',
48521
48569
  fontSize: memberPresenceFontSize
48522
- }, member.presence && member.presence.state === USER_PRESENCE_STATUS.ONLINE ? 'Online' : member.presence && member.presence.lastActiveAt && userLastActiveDateFormat(member.presence.lastActiveAt))), !noMemberEditPermissions && member.role !== 'owner' && member.id !== user.id && (/*#__PURE__*/React__default.createElement(DropDown, {
48570
+ }, member.presence && member.presence.state === USER_PRESENCE_STATUS.ONLINE ? 'Online' : member.presence && member.presence.lastActiveAt && userLastActiveDateFormat(member.presence.lastActiveAt))), !noMemberEditPermissions && member.role !== 'owner' && currentUserRole && (rolesMap === null || rolesMap === void 0 ? void 0 : (_rolesMap$member$role = rolesMap[member.role]) === null || _rolesMap$member$role === void 0 ? void 0 : _rolesMap$member$role.priority) && (rolesMap === null || rolesMap === void 0 ? void 0 : (_rolesMap$currentUser = rolesMap[currentUserRole]) === null || _rolesMap$currentUser === void 0 ? void 0 : _rolesMap$currentUser.priority) && (rolesMap === null || rolesMap === void 0 ? void 0 : (_rolesMap$member$role2 = rolesMap[member.role]) === null || _rolesMap$member$role2 === void 0 ? void 0 : _rolesMap$member$role2.priority) < (rolesMap === null || rolesMap === void 0 ? void 0 : (_rolesMap$currentUser2 = rolesMap[currentUserRole]) === null || _rolesMap$currentUser2 === void 0 ? void 0 : _rolesMap$currentUser2.priority) && member.id !== user.id && (/*#__PURE__*/React__default.createElement(DropDown, {
48523
48571
  theme: theme,
48524
48572
  isSelect: true,
48525
48573
  forceClose: !!(closeMenu && closeMenu !== member.id),
package/index.modern.js CHANGED
@@ -9084,6 +9084,7 @@ var disableFrowardMentionsCount = false;
9084
9084
  var onUpdateChannel = function onUpdateChannel() {};
9085
9085
  var useInviteLink = false;
9086
9086
  var disappearingSettings;
9087
+ var showOwnMessageForward = true;
9087
9088
  var customLoadMembersFunctions;
9088
9089
  var inviteLinkOptions = null;
9089
9090
  function setBaseUrlForInviteMembers(url) {
@@ -9340,6 +9341,12 @@ var setDisappearingSettings = function setDisappearingSettings(settings) {
9340
9341
  var setCustomLoadMembersFunctions = function setCustomLoadMembersFunctions(functions) {
9341
9342
  customLoadMembersFunctions = functions;
9342
9343
  };
9344
+ var setShowOwnMessageForward = function setShowOwnMessageForward(show) {
9345
+ showOwnMessageForward = show;
9346
+ };
9347
+ var getShowOwnMessageForward = function getShowOwnMessageForward() {
9348
+ return showOwnMessageForward;
9349
+ };
9343
9350
  var getDisappearingSettings = function getDisappearingSettings() {
9344
9351
  return disappearingSettings;
9345
9352
  };
@@ -19118,7 +19125,7 @@ function getChannelsWithUser(action) {
19118
19125
  channelsQueryBuilder = new _SceytChatClient10.ChannelListQueryBuilder();
19119
19126
  channelsQueryBuilder.memberCount(0);
19120
19127
  channelsQueryBuilder.setMutualWithUserId(userId);
19121
- channelsQueryBuilder.withExcludeTypes([DEFAULT_CHANNEL_TYPE.DIRECT]);
19128
+ channelsQueryBuilder.types([DEFAULT_CHANNEL_TYPE.PRIVATE]);
19122
19129
  channelsQueryBuilder.limit(15);
19123
19130
  _context37.n = 3;
19124
19131
  return call(channelsQueryBuilder.build);
@@ -19872,10 +19879,13 @@ var addPendingMessage = function addPendingMessage(message, messageCopy, channel
19872
19879
  return Promise.reject(e);
19873
19880
  }
19874
19881
  };
19875
- var updateMessage$1 = function updateMessage(actionType, pending, channelId, scrollToNewMessage, message) {
19882
+ var updateMessage$1 = function updateMessage(actionType, pending, channelId, scrollToNewMessage, message, isNotShowOwnMessageForward) {
19876
19883
  if (scrollToNewMessage === void 0) {
19877
19884
  scrollToNewMessage = true;
19878
19885
  }
19886
+ if (isNotShowOwnMessageForward === void 0) {
19887
+ isNotShowOwnMessageForward = false;
19888
+ }
19879
19889
  return /*#__PURE__*/_regenerator().m(function _callee() {
19880
19890
  var activeChannelId, channel, messages, _channel$lastMessage2, repliedMessage, scrollRef, _channel$lastMessage3;
19881
19891
  return _regenerator().w(function (_context) {
@@ -19887,14 +19897,18 @@ var updateMessage$1 = function updateMessage(actionType, pending, channelId, scr
19887
19897
  break;
19888
19898
  }
19889
19899
  if (activeChannelId === channelId) {
19890
- addAllMessages([pending], MESSAGE_LOAD_DIRECTION.NEXT);
19900
+ addAllMessages([_extends({}, pending, isNotShowOwnMessageForward ? {
19901
+ forwardingDetails: undefined
19902
+ } : {})], MESSAGE_LOAD_DIRECTION.NEXT);
19891
19903
  }
19892
19904
  if (!(activeChannelId === channelId)) {
19893
19905
  _context.n = 1;
19894
19906
  break;
19895
19907
  }
19896
19908
  _context.n = 1;
19897
- return put(addMessageAC(pending));
19909
+ return put(addMessageAC(_extends({}, pending, isNotShowOwnMessageForward ? {
19910
+ forwardingDetails: undefined
19911
+ } : {})));
19898
19912
  case 1:
19899
19913
  _context.n = 2;
19900
19914
  return call(addPendingMessage, message, pending, channelId);
@@ -20564,12 +20578,15 @@ function sendTextMessage(action) {
20564
20578
  }, _marked2$2, null, [[3, 20, 23, 25]]);
20565
20579
  }
20566
20580
  function forwardMessage(action) {
20567
- var payload, message, channelId, connectionState, isForward, pendingMessage, channel, activeChannelId, messageTid, SceytChatClient, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, pollDetails, messageToSend, hasNextMessages, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, _channel5, isErrorResendable, _channel6, _activeChannelId2, _t4;
20581
+ var payload, message, channelId, connectionState, isForward, showOwnMessageForward, SceytChatClient, isNotShowOwnMessageForward, pendingMessage, channel, activeChannelId, messageTid, _SceytChatClient, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, pollDetails, messageToSend, hasNextMessages, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, _channel5, isErrorResendable, _channel6, _activeChannelId2, _t4;
20568
20582
  return _regenerator().w(function (_context6) {
20569
20583
  while (1) switch (_context6.p = _context6.n) {
20570
20584
  case 0:
20571
20585
  payload = action.payload;
20572
20586
  message = payload.message, channelId = payload.channelId, connectionState = payload.connectionState, isForward = payload.isForward;
20587
+ showOwnMessageForward = getShowOwnMessageForward();
20588
+ SceytChatClient = getClient();
20589
+ isNotShowOwnMessageForward = message.user.id === SceytChatClient.user.id && !showOwnMessageForward;
20573
20590
  pendingMessage = null;
20574
20591
  channel = null;
20575
20592
  activeChannelId = getActiveChannelId();
@@ -20591,9 +20608,9 @@ function forwardMessage(action) {
20591
20608
  _context6.n = 5;
20592
20609
  break;
20593
20610
  }
20594
- SceytChatClient = getClient();
20611
+ _SceytChatClient = getClient();
20595
20612
  _context6.n = 4;
20596
- return call(SceytChatClient.getChannel, channelId);
20613
+ return call(_SceytChatClient.getChannel, channelId);
20597
20614
  case 4:
20598
20615
  channel = _context6.v;
20599
20616
  case 5:
@@ -20649,7 +20666,8 @@ function forwardMessage(action) {
20649
20666
  }) : messageBuilder.create();
20650
20667
  messageTid = messageToSend.tid;
20651
20668
  pendingMessage = _extends({}, messageToSend, {
20652
- createdAt: new Date(Date.now())
20669
+ createdAt: new Date(Date.now()),
20670
+ user: message.user
20653
20671
  });
20654
20672
  if (isForward && pendingMessage && action.type !== RESEND_MESSAGE) {
20655
20673
  if (message.forwardingDetails) {
@@ -20686,14 +20704,16 @@ function forwardMessage(action) {
20686
20704
  break;
20687
20705
  }
20688
20706
  _context6.n = 9;
20689
- return call(updateMessage$1, action.type, pendingMessage, channel.id, false, message);
20707
+ return call(updateMessage$1, action.type, pendingMessage, channel.id, false, message, isNotShowOwnMessageForward);
20690
20708
  case 9:
20691
20709
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
20692
20710
  _context6.n = 16;
20693
20711
  break;
20694
20712
  }
20695
20713
  _context6.n = 10;
20696
- return call(channel.sendMessage, messageToSend);
20714
+ return call(channel.sendMessage, _extends({}, messageToSend, isNotShowOwnMessageForward ? {
20715
+ forwardingDetails: null
20716
+ } : {}));
20697
20717
  case 10:
20698
20718
  messageResponse = _context6.v;
20699
20719
  messageUpdateData = _extends({}, messageResponse, {
@@ -25168,7 +25188,9 @@ var SceytChatContainer = function SceytChatContainer(_ref) {
25168
25188
  _ref$disappearingSett = _ref.disappearingSettings,
25169
25189
  disappearingSettings = _ref$disappearingSett === void 0 ? null : _ref$disappearingSett,
25170
25190
  _ref$customLoadMember = _ref.customLoadMembersFunctions,
25171
- customLoadMembersFunctions = _ref$customLoadMember === void 0 ? null : _ref$customLoadMember;
25191
+ customLoadMembersFunctions = _ref$customLoadMember === void 0 ? null : _ref$customLoadMember,
25192
+ _ref$showOwnMessageFo = _ref.showOwnMessageForward,
25193
+ showOwnMessageForward = _ref$showOwnMessageFo === void 0 ? true : _ref$showOwnMessageFo;
25172
25194
  useEffect(function () {
25173
25195
  log.setLevel(logLevel);
25174
25196
  }, [logLevel]);
@@ -25197,6 +25219,9 @@ var SceytChatContainer = function SceytChatContainer(_ref) {
25197
25219
  setCustomLoadMembersFunctions(customLoadMembersFunctions);
25198
25220
  }
25199
25221
  }, [customLoadMembersFunctions]);
25222
+ useEffect(function () {
25223
+ setShowOwnMessageForward(showOwnMessageForward);
25224
+ }, [showOwnMessageForward]);
25200
25225
  return /*#__PURE__*/React__default.createElement(Provider, {
25201
25226
  store: store,
25202
25227
  context: SceytReduxContext
@@ -26516,6 +26541,9 @@ var UsersPopup = function UsersPopup(_ref2) {
26516
26541
  var _useState5 = useState(false),
26517
26542
  isScrolling = _useState5[0],
26518
26543
  setIsScrolling = _useState5[1];
26544
+ var _useState6 = useState(false),
26545
+ isSelectedMembersScrolling = _useState6[0],
26546
+ setIsSelectedMembersScrolling = _useState6[1];
26519
26547
  var popupTitleText = channel && (memberDisplayText && memberDisplayText[channel.type] ? "Add " + memberDisplayText[channel.type] + "s" : channel.type === DEFAULT_CHANNEL_TYPE.BROADCAST || channel.type === DEFAULT_CHANNEL_TYPE.PUBLIC ? 'Subscribers' : 'Members');
26520
26548
  var handleMembersListScroll = function handleMembersListScroll(event) {
26521
26549
  if (!userSearchValue && event.target.scrollHeight - event.target.scrollTop <= event.target.offsetHeight + 300) {
@@ -26705,7 +26733,15 @@ var UsersPopup = function UsersPopup(_ref2) {
26705
26733
  return setUserSearchValue('');
26706
26734
  }
26707
26735
  })), actionType !== 'createChat' && selectedMembers.length !== 0 && (/*#__PURE__*/React__default.createElement(SelectedMembersContainer, {
26708
- ref: selectedMembersCont
26736
+ ref: selectedMembersCont,
26737
+ thumbColor: surface2,
26738
+ className: isSelectedMembersScrolling ? 'show-scrollbar' : '',
26739
+ onMouseEnter: function onMouseEnter() {
26740
+ return setIsSelectedMembersScrolling(true);
26741
+ },
26742
+ onMouseLeave: function onMouseLeave() {
26743
+ return setIsSelectedMembersScrolling(false);
26744
+ }
26709
26745
  }, selectedMembers.map(function (member) {
26710
26746
  return /*#__PURE__*/React__default.createElement(SelectedMemberBubble, {
26711
26747
  backgroundColor: surface1,
@@ -26802,7 +26838,7 @@ var UsersPopup = function UsersPopup(_ref2) {
26802
26838
  }, actionType === 'selectUsers' ? 'Create' : 'Add')))));
26803
26839
  };
26804
26840
  var List = styled.div(_templateObject$b || (_templateObject$b = _taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n overflow-y: scroll;\n overflow-x: hidden;\n margin-top: 12px;\n min-height: 150px;\n box-sizing: border-box;\n"])));
26805
- var MembersContainer = styled(List)(_templateObject2$a || (_templateObject2$a = _taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n //margin-top: 24px;\n position: relative;\n max-height: ", ";\n overflow-y: auto;\n\n //width: calc(100% + 16px);\n padding-right: 16px;\n\n &::-webkit-scrollbar {\n width: 8px;\n background: transparent;\n }\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n &.show-scrollbar::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 4px;\n }\n &.show-scrollbar::-webkit-scrollbar-track {\n background: transparent;\n }\n"])), function (props) {
26841
+ var MembersContainer = styled(List)(_templateObject2$a || (_templateObject2$a = _taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n position: relative;\n max-height: ", ";\n overflow-y: auto;\n padding-right: 16px;\n\n &::-webkit-scrollbar {\n width: 8px;\n background: transparent;\n }\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n &.show-scrollbar::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 4px;\n }\n &.show-scrollbar::-webkit-scrollbar-track {\n background: transparent;\n }\n"])), function (props) {
26806
26842
  return "calc(100% - (" + ((props.isAdd ? 67 : 70) + props.selectedMembersHeight) + "px))";
26807
26843
  }, function (props) {
26808
26844
  return props.thumbColor;
@@ -26824,7 +26860,9 @@ var UserNamePresence = styled.div(_templateObject6$3 || (_templateObject6$3 = _t
26824
26860
  var MemberName = styled.h4(_templateObject7$3 || (_templateObject7$3 = _taggedTemplateLiteralLoose(["\n font-style: normal;\n font-size: 15px;\n font-weight: 500;\n line-height: 16px;\n color: ", ";\n margin: 0;\n max-width: calc(100% - 10px);\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n"])), function (props) {
26825
26861
  return props.color;
26826
26862
  });
26827
- var SelectedMembersContainer = styled.div(_templateObject8$3 || (_templateObject8$3 = _taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n width: 100%;\n max-height: 85px;\n overflow-x: hidden;\n padding: 2px 12px 0;\n box-sizing: border-box;\n //flex: 0 0 auto;\n"])));
26863
+ var SelectedMembersContainer = styled.div(_templateObject8$3 || (_templateObject8$3 = _taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: flex-start;\n flex-wrap: wrap;\n width: 100%;\n max-height: 85px;\n overflow-x: hidden;\n padding: 2px 12px 0;\n box-sizing: border-box;\n overflow-y: auto;\n\n &::-webkit-scrollbar {\n width: 8px;\n background: transparent;\n }\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n &.show-scrollbar::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 4px;\n }\n &.show-scrollbar::-webkit-scrollbar-track {\n background: transparent;\n }\n"])), function (props) {
26864
+ return props.thumbColor;
26865
+ });
26828
26866
  var SelectedMemberBubble = styled.div(_templateObject9$2 || (_templateObject9$2 = _taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: space-between;\n background: ", ";\n border-radius: 16px;\n align-items: center;\n padding: 4px 10px 4px 0;\n height: 28px;\n margin: 8px 8px 0 0;\n box-sizing: border-box;\n"])), function (props) {
26829
26867
  return props.backgroundColor;
26830
26868
  });
@@ -43883,6 +43921,7 @@ var SendMessageInput = function SendMessageInput(_ref3) {
43883
43921
  accentColor = _useColor[THEME_COLORS.ACCENT],
43884
43922
  backgroundSections = _useColor[THEME_COLORS.BACKGROUND_SECTIONS],
43885
43923
  surface1Background = _useColor[THEME_COLORS.SURFACE_1],
43924
+ surface2 = _useColor[THEME_COLORS.SURFACE_2],
43886
43925
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
43887
43926
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
43888
43927
  iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE],
@@ -44026,6 +44065,9 @@ var SendMessageInput = function SendMessageInput(_ref3) {
44026
44065
  var _useState29 = useState(false),
44027
44066
  isSmallWidthViewport = _useState29[0],
44028
44067
  setIsSmallWidthViewport = _useState29[1];
44068
+ var _useState30 = useState(false),
44069
+ isScrolling = _useState30[0],
44070
+ setIsScrolling = _useState30[1];
44029
44071
  var addAttachmentByMenu = showChooseFileAttachment && showChooseMediaAttachment;
44030
44072
  function onChange(editorState) {
44031
44073
  setRealEditorState(editorState);
@@ -45318,7 +45360,8 @@ var SendMessageInput = function SendMessageInput(_ref3) {
45318
45360
  className: inputCustomClassname,
45319
45361
  highlightedBackground: textSelectionBackgroundColor || highlightedBackground,
45320
45362
  borderRadius: inputBorderRadius,
45321
- color: textPrimary
45363
+ color: textPrimary,
45364
+ thumbColor: surface2
45322
45365
  }, /*#__PURE__*/React__default.createElement(LexicalComposer, {
45323
45366
  initialConfig: initialConfig
45324
45367
  }, /*#__PURE__*/React__default.createElement(AutoFocusPlugin, {
@@ -45363,7 +45406,13 @@ var SendMessageInput = function SendMessageInput(_ref3) {
45363
45406
  contentEditable: /*#__PURE__*/React__default.createElement("div", {
45364
45407
  onKeyDown: handleSendEditMessage,
45365
45408
  onDoubleClick: handleDoubleClick,
45366
- className: 'rich_text_editor',
45409
+ className: "rich_text_editor " + (isScrolling ? 'show-scrollbar' : ''),
45410
+ onMouseEnter: function onMouseEnter() {
45411
+ return setIsScrolling(true);
45412
+ },
45413
+ onMouseLeave: function onMouseLeave() {
45414
+ return setIsScrolling(false);
45415
+ },
45367
45416
  ref: onRef
45368
45417
  }, /*#__PURE__*/React__default.createElement(ContentEditable, {
45369
45418
  className: 'content_editable_input'
@@ -45471,7 +45520,7 @@ var MessageInputWrapper = styled.div(_templateObject10$8 || (_templateObject10$8
45471
45520
  }, function (props) {
45472
45521
  return props.borderRadius || '18px';
45473
45522
  });
45474
- var LexicalWrapper = styled.div(_templateObject11$6 || (_templateObject11$6 = _taggedTemplateLiteralLoose(["\n position: relative;\n width: 100%;\n\n & .rich_text_editor {\n width: 100%;\n max-height: 80px;\n min-height: 20px;\n display: block;\n border: none;\n box-sizing: border-box;\n outline: none !important;\n overflow: auto;\n border-radius: ", ";\n background-color: ", ";\n padding: ", ";\n color: ", ";\n order: ", ";\n\n & p {\n font-size: 15px;\n line-height: 20px;\n color: ", ";\n }\n\n &::selection {\n background-color: ", ";\n }\n\n & *::selection {\n background-color: ", ";\n }\n\n & span::selection {\n background-color: ", ";\n }\n\n &:empty:before {\n content: attr(data-placeholder);\n }\n\n & .content_editable_input {\n border: none !important;\n outline: none !important;\n }\n\n & .mention {\n color: ", ";\n background-color: inherit !important;\n user-modify: read-only;\n }\n\n & span.bold {\n font-weight: bold;\n }\n\n & .editor_paragraph {\n margin: 0;\n }\n\n & .text_bold {\n font-weight: 600;\n }\n\n & .text_italic {\n font-style: italic;\n }\n\n & .text_underline {\n text-decoration: underline;\n }\n\n & .text_strikethrough {\n text-decoration: line-through;\n }\n\n & .text_underlineStrikethrough {\n text-decoration: underline line-through;\n }\n\n & code {\n font-family: inherit;\n letter-spacing: 4px;\n }\n }\n"])), function (props) {
45523
+ var LexicalWrapper = styled.div(_templateObject11$6 || (_templateObject11$6 = _taggedTemplateLiteralLoose(["\n position: relative;\n width: 100%;\n\n & .rich_text_editor {\n width: 100%;\n max-height: 80px;\n min-height: 20px;\n display: block;\n border: none;\n box-sizing: border-box;\n outline: none !important;\n border-radius: ", ";\n background-color: ", ";\n padding: ", ";\n color: ", ";\n order: ", ";\n overflow-y: auto;\n overflow-x: hidden;\n\n &::-webkit-scrollbar {\n width: 8px;\n background: transparent;\n }\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n &.show-scrollbar::-webkit-scrollbar-thumb {\n background: ", ";\n border-radius: 4px;\n }\n &.show-scrollbar::-webkit-scrollbar-track {\n background: transparent;\n }\n\n & p {\n font-size: 15px;\n line-height: 20px;\n color: ", ";\n }\n\n &::selection {\n background-color: ", ";\n }\n\n & *::selection {\n background-color: ", ";\n }\n\n & span::selection {\n background-color: ", ";\n }\n\n &:empty:before {\n content: attr(data-placeholder);\n }\n\n & .content_editable_input {\n border: none !important;\n outline: none !important;\n }\n\n & .mention {\n color: ", ";\n background-color: inherit !important;\n user-modify: read-only;\n }\n\n & span.bold {\n font-weight: bold;\n }\n\n & .editor_paragraph {\n margin: 0;\n }\n\n & .text_bold {\n font-weight: 600;\n }\n\n & .text_italic {\n font-style: italic;\n }\n\n & .text_underline {\n text-decoration: underline;\n }\n\n & .text_strikethrough {\n text-decoration: line-through;\n }\n\n & .text_underlineStrikethrough {\n text-decoration: underline line-through;\n }\n\n & code {\n font-family: inherit;\n letter-spacing: 4px;\n }\n }\n"])), function (props) {
45475
45524
  return props.borderRadius;
45476
45525
  }, function (props) {
45477
45526
  return props.backgroundColor;
@@ -45481,6 +45530,8 @@ var LexicalWrapper = styled.div(_templateObject11$6 || (_templateObject11$6 = _t
45481
45530
  return props.color;
45482
45531
  }, function (props) {
45483
45532
  return props.order === 0 || props.order ? props.order : 1;
45533
+ }, function (props) {
45534
+ return props.thumbColor;
45484
45535
  }, function (props) {
45485
45536
  return props.color;
45486
45537
  }, function (props) {
@@ -48363,14 +48414,8 @@ var Members = function Members(_ref) {
48363
48414
  setCloseMenu = _useState8[1];
48364
48415
  var contactsMap = useSelector(contactsMapSelector) || {};
48365
48416
  var openInviteModal = useSelector(openInviteModalSelector);
48366
- var channelsMembersHasNext = useSelector(channelsMembersHasNextMapSelector, shallowEqual);
48367
- var membersHasNext = useMemo(function () {
48368
- return channelsMembersHasNext === null || channelsMembersHasNext === void 0 ? void 0 : channelsMembersHasNext[channel.id];
48369
- }, [channelsMembersHasNext === null || channelsMembersHasNext === void 0 ? void 0 : channelsMembersHasNext[channel.id]]);
48370
- var channelsMembersLoadingState = useSelector(channelsMembersLoadingStateSelector, shallowEqual);
48371
- var membersLoading = useMemo(function () {
48372
- return channelsMembersLoadingState === null || channelsMembersLoadingState === void 0 ? void 0 : channelsMembersLoadingState[channel.id];
48373
- }, [channelsMembersLoadingState === null || channelsMembersLoadingState === void 0 ? void 0 : channelsMembersLoadingState[channel.id]]);
48417
+ var rolesMap = useSelector(rolesMapSelector, shallowEqual);
48418
+ var connectionStatus = useSelector(connectionStatusSelector);
48374
48419
  var user = getClient().user;
48375
48420
  var memberDisplayText = getChannelTypesMemberDisplayTextMap();
48376
48421
  var channelTypeRoleMap = getDefaultRolesByChannelTypesMap();
@@ -48470,13 +48515,15 @@ var Members = function Members(_ref) {
48470
48515
  setAddMemberPopupOpen(false);
48471
48516
  };
48472
48517
  useEffect(function () {
48473
- if (getFromContacts) {
48474
- dispatch(getContactsAC());
48475
- }
48476
- if (channel !== null && channel !== void 0 && channel.id && membersHasNext === undefined && membersLoading !== LOADING_STATE.LOADING) {
48477
- dispatch(getMembersAC(channel.id));
48518
+ if (connectionStatus === CONNECTION_STATUS.CONNECTED) {
48519
+ if (getFromContacts) {
48520
+ dispatch(getContactsAC());
48521
+ }
48522
+ if (channel !== null && channel !== void 0 && channel.id) {
48523
+ dispatch(getMembersAC(channel.id));
48524
+ }
48478
48525
  }
48479
- }, [channel === null || channel === void 0 ? void 0 : channel.id]);
48526
+ }, [channel === null || channel === void 0 ? void 0 : channel.id, connectionStatus]);
48480
48527
  var currentUserRole = (_members$find = members.find(function (member) {
48481
48528
  return member.id === user.id;
48482
48529
  })) === null || _members$find === void 0 ? void 0 : _members$find.role;
@@ -48491,6 +48538,7 @@ var Members = function Members(_ref) {
48491
48538
  fontSize: addMemberFontSize,
48492
48539
  addMemberBackground: surface1
48493
48540
  }, addMemberIcon || /*#__PURE__*/React__default.createElement(SvgAddMember, null), "Add " + displayMemberText)), !!members.length && members.map(function (member, index) {
48541
+ var _rolesMap$member$role, _rolesMap$currentUser, _rolesMap$member$role2, _rolesMap$currentUser2;
48494
48542
  return /*#__PURE__*/React__default.createElement(MemberItem$1, {
48495
48543
  addMemberIconColor: iconInactive,
48496
48544
  key: member.id + index,
@@ -48518,7 +48566,7 @@ var Members = function Members(_ref) {
48518
48566
  color: textSecondary,
48519
48567
  margin: '1px 0 0',
48520
48568
  fontSize: memberPresenceFontSize
48521
- }, member.presence && member.presence.state === USER_PRESENCE_STATUS.ONLINE ? 'Online' : member.presence && member.presence.lastActiveAt && userLastActiveDateFormat(member.presence.lastActiveAt))), !noMemberEditPermissions && member.role !== 'owner' && member.id !== user.id && (/*#__PURE__*/React__default.createElement(DropDown, {
48569
+ }, member.presence && member.presence.state === USER_PRESENCE_STATUS.ONLINE ? 'Online' : member.presence && member.presence.lastActiveAt && userLastActiveDateFormat(member.presence.lastActiveAt))), !noMemberEditPermissions && member.role !== 'owner' && currentUserRole && (rolesMap === null || rolesMap === void 0 ? void 0 : (_rolesMap$member$role = rolesMap[member.role]) === null || _rolesMap$member$role === void 0 ? void 0 : _rolesMap$member$role.priority) && (rolesMap === null || rolesMap === void 0 ? void 0 : (_rolesMap$currentUser = rolesMap[currentUserRole]) === null || _rolesMap$currentUser === void 0 ? void 0 : _rolesMap$currentUser.priority) && (rolesMap === null || rolesMap === void 0 ? void 0 : (_rolesMap$member$role2 = rolesMap[member.role]) === null || _rolesMap$member$role2 === void 0 ? void 0 : _rolesMap$member$role2.priority) < (rolesMap === null || rolesMap === void 0 ? void 0 : (_rolesMap$currentUser2 = rolesMap[currentUserRole]) === null || _rolesMap$currentUser2 === void 0 ? void 0 : _rolesMap$currentUser2.priority) && member.id !== user.id && (/*#__PURE__*/React__default.createElement(DropDown, {
48522
48570
  theme: theme,
48523
48571
  isSelect: true,
48524
48572
  forceClose: !!(closeMenu && closeMenu !== member.id),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sceyt-chat-react-uikit",
3
- "version": "1.7.9-beta.13",
3
+ "version": "1.7.9-beta.14",
4
4
  "description": "Interactive React UI Components for Sceyt Chat.",
5
5
  "author": "Sceyt",
6
6
  "license": "MIT",