sceyt-chat-react-uikit 1.7.7-beta.15 → 1.7.7-beta.16

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.
@@ -60,7 +60,13 @@ export interface IChatClientProps {
60
60
  inviteLinkOptions?: InviteLinkOptions | null;
61
61
  embeddedJoinGroupPopup?: boolean;
62
62
  onUpdateChannel?: (channel: IChannel, updatedFields: string[]) => void;
63
- enableDisappearingMessages?: boolean;
63
+ disappearingSettings?: {
64
+ show?: boolean;
65
+ customOptions?: {
66
+ label: string;
67
+ seconds: number;
68
+ }[];
69
+ } | null;
64
70
  }
65
- 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, enableDisappearingMessages }: IChatClientProps) => React.JSX.Element;
71
+ 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 }: IChatClientProps) => React.JSX.Element;
66
72
  export default SceytChatContainer;
package/index.js CHANGED
@@ -2678,42 +2678,6 @@ var FIXED_TIMER_OPTIONS = {
2678
2678
  '1month': 60 * 60 * 24 * 30,
2679
2679
  custom: 60 * 60 * 24 * 2
2680
2680
  };
2681
- var CUSTOM_OPTIONS = [{
2682
- label: '1 day',
2683
- value: '1day',
2684
- seconds: 60 * 60 * 24
2685
- }, {
2686
- label: '2 days',
2687
- value: '2days',
2688
- seconds: 60 * 60 * 24 * 2
2689
- }, {
2690
- label: '3 days',
2691
- value: '3days',
2692
- seconds: 60 * 60 * 24 * 3
2693
- }, {
2694
- label: '4 days',
2695
- value: '4days',
2696
- seconds: 60 * 60 * 24 * 4
2697
- }, {
2698
- label: '5 days',
2699
- value: '5days',
2700
- seconds: 60 * 60 * 24 * 5
2701
- }, {
2702
- label: '1 week',
2703
- value: '1week',
2704
- seconds: 60 * 60 * 24 * 7
2705
- }, {
2706
- label: '2 weeks',
2707
- value: '2weeks',
2708
- seconds: 60 * 60 * 24 * 14
2709
- }, {
2710
- label: '1 month',
2711
- value: '1month',
2712
- seconds: 60 * 60 * 24 * 30
2713
- }];
2714
- var CUSTOM_SECONDS_MAP = Object.fromEntries(CUSTOM_OPTIONS.map(function (o) {
2715
- return [o.value, o.seconds];
2716
- }));
2717
2681
 
2718
2682
  // A type of promise-like that resolves synchronously and supports only one observer
2719
2683
  const _Pact = /*#__PURE__*/(function() {
@@ -9079,7 +9043,7 @@ var memberCount = 10;
9079
9043
  var disableFrowardMentionsCount = false;
9080
9044
  var onUpdateChannel = function onUpdateChannel() {};
9081
9045
  var useInviteLink = false;
9082
- var enableDisappearingMessages = true;
9046
+ var disappearingSettings;
9083
9047
  var inviteLinkOptions = null;
9084
9048
  function setBaseUrlForInviteMembers(url) {
9085
9049
  baseUrlForInviteMembers = url;
@@ -9298,11 +9262,11 @@ var setShowChannelDetails = function setShowChannelDetails(state) {
9298
9262
  var getShowChannelDetails = function getShowChannelDetails() {
9299
9263
  return showChannelDetails;
9300
9264
  };
9301
- var setEnableDisappearingMessages = function setEnableDisappearingMessages(state) {
9302
- enableDisappearingMessages = state;
9265
+ var setDisappearingSettings = function setDisappearingSettings(settings) {
9266
+ disappearingSettings = settings;
9303
9267
  };
9304
- var getEnableDisappearingMessages = function getEnableDisappearingMessages() {
9305
- return enableDisappearingMessages;
9268
+ var getDisappearingSettings = function getDisappearingSettings() {
9269
+ return disappearingSettings;
9306
9270
  };
9307
9271
  var sortChannelByLastMessage = function sortChannelByLastMessage(channels) {
9308
9272
  return channels.sort(function (a, b) {
@@ -10094,6 +10058,7 @@ var hashString = function hashString(str) {
10094
10058
  }
10095
10059
  };
10096
10060
  var formatDisappearingMessageTime = function formatDisappearingMessageTime(periodInMilliseconds) {
10061
+ var _getDisappearingSetti;
10097
10062
  if (!periodInMilliseconds) return 'Off';
10098
10063
  var periodInSeconds = periodInMilliseconds / 1000;
10099
10064
  switch (periodInSeconds) {
@@ -10104,7 +10069,8 @@ var formatDisappearingMessageTime = function formatDisappearingMessageTime(perio
10104
10069
  case FIXED_TIMER_OPTIONS['1month']:
10105
10070
  return '1 month';
10106
10071
  }
10107
- var customMatch = CUSTOM_OPTIONS.find(function (option) {
10072
+ var customOptions = ((_getDisappearingSetti = getDisappearingSettings()) === null || _getDisappearingSetti === void 0 ? void 0 : _getDisappearingSetti.customOptions) || [];
10073
+ var customMatch = customOptions.find(function (option) {
10108
10074
  return option.seconds === periodInSeconds;
10109
10075
  });
10110
10076
  if (customMatch) return customMatch.label;
@@ -10252,10 +10218,13 @@ function setMessageToEditAC(message) {
10252
10218
  message: message
10253
10219
  });
10254
10220
  }
10255
- function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior) {
10221
+ function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior, scrollToMessage) {
10256
10222
  if (highlight === void 0) {
10257
10223
  highlight = true;
10258
10224
  }
10225
+ if (scrollToMessage === void 0) {
10226
+ scrollToMessage = true;
10227
+ }
10259
10228
  return {
10260
10229
  type: GET_MESSAGES,
10261
10230
  payload: {
@@ -10265,7 +10234,8 @@ function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliv
10265
10234
  limit: limit,
10266
10235
  withDeliveredMessages: withDeliveredMessages,
10267
10236
  highlight: highlight,
10268
- behavior: behavior
10237
+ behavior: behavior,
10238
+ scrollToMessage: scrollToMessage
10269
10239
  }
10270
10240
  };
10271
10241
  }
@@ -19222,7 +19192,7 @@ function sendMessage(action) {
19222
19192
  }
19223
19193
  case 11:
19224
19194
  _loop2 = /*#__PURE__*/_regenerator().m(function _callee2() {
19225
- var messageAttachment, messageToSend, messageCopy, _attachmentsToSend, linkAttachmentToSend, linkAttachmentBuilder, messageResponse, k, pendingAttachment, attachmentsToUpdate, currentAttachmentsMap, messageUpdateData, messageToUpdate, channelUpdateParam, pendingMessage, _t;
19195
+ var messageAttachment, messageToSend, messageCopy, _attachmentsToSend, linkAttachmentToSend, linkAttachmentBuilder, messageResponse, k, pendingAttachment, attachmentsToUpdate, currentAttachmentsMap, messageUpdateData, messageToUpdate, channelUpdateParam, pendingMessage, connectionIsDisconnected, _t;
19226
19196
  return _regenerator().w(function (_context2) {
19227
19197
  while (1) switch (_context2.p = _context2.n) {
19228
19198
  case 0:
@@ -19357,7 +19327,7 @@ function sendMessage(action) {
19357
19327
  case 12:
19358
19328
  throw new Error('Connection required to send message');
19359
19329
  case 13:
19360
- _context2.n = 17;
19330
+ _context2.n = 19;
19361
19331
  break;
19362
19332
  case 14:
19363
19333
  _context2.p = 14;
@@ -19366,24 +19336,31 @@ function sendMessage(action) {
19366
19336
  return pendingMessage.tid === messageToSend.tid;
19367
19337
  });
19368
19338
  if (!(channel && pendingMessage && action.type !== RESEND_MESSAGE)) {
19369
- _context2.n = 15;
19339
+ _context2.n = 17;
19370
19340
  break;
19371
19341
  }
19372
- if (!isAddToPendingMessagesMap) {
19373
- _context2.n = 15;
19342
+ connectionIsDisconnected = store.getState().UserReducer.connectionStatus !== CONNECTION_STATUS.CONNECTED;
19343
+ if (!(isAddToPendingMessagesMap && connectionIsDisconnected)) {
19344
+ _context2.n = 16;
19374
19345
  break;
19375
19346
  }
19376
19347
  _context2.n = 15;
19377
19348
  return effects.call(addPendingMessage, message, pendingMessage, channel);
19378
19349
  case 15:
19350
+ _context2.n = 17;
19351
+ break;
19352
+ case 16:
19353
+ _context2.n = 17;
19354
+ return effects.put(removePendingMessageAC(channel.id, pendingMessage.tid));
19355
+ case 17:
19379
19356
  log.error('Error on uploading attachment', messageToSend.tid, _t);
19380
19357
  if (!(messageToSend.attachments && messageToSend.attachments.length)) {
19381
- _context2.n = 16;
19358
+ _context2.n = 18;
19382
19359
  break;
19383
19360
  }
19384
- _context2.n = 16;
19361
+ _context2.n = 18;
19385
19362
  return effects.put(updateAttachmentUploadingStateAC(UPLOAD_STATE.FAIL, messageToSend.attachments[0].tid));
19386
- case 16:
19363
+ case 18:
19387
19364
  updateMessageOnMap(channel.id, {
19388
19365
  messageId: messageToSend.tid,
19389
19366
  params: {
@@ -19393,11 +19370,11 @@ function sendMessage(action) {
19393
19370
  updateMessageOnAllMessages(messageToSend.tid, {
19394
19371
  state: MESSAGE_STATUS.FAILED
19395
19372
  });
19396
- _context2.n = 17;
19373
+ _context2.n = 19;
19397
19374
  return effects.put(updateMessageAC(messageToSend.tid, {
19398
19375
  state: MESSAGE_STATUS.FAILED
19399
19376
  }));
19400
- case 17:
19377
+ case 19:
19401
19378
  return _context2.a(2);
19402
19379
  }
19403
19380
  }, _callee2, null, [[1, 14]]);
@@ -19421,12 +19398,18 @@ function sendMessage(action) {
19421
19398
  _t2 = _context3.v;
19422
19399
  log.error('error on send message ... ', _t2);
19423
19400
  case 16:
19401
+ _context3.p = 16;
19402
+ _context3.n = 17;
19403
+ return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19404
+ case 17:
19405
+ return _context3.f(16);
19406
+ case 18:
19424
19407
  return _context3.a(2);
19425
19408
  }
19426
- }, _marked$3, null, [[1, 15]]);
19409
+ }, _marked$3, null, [[1, 15, 16, 18]]);
19427
19410
  }
19428
19411
  function sendTextMessage(action) {
19429
- var payload, message, connectionState, channelId, isAddToPendingMessagesMap, channel, sendMessageTid, pendingMessage, activeChannelId, SceytChatClient, createChannelData, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, createdMessage, messageToSend, _messageResponse, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, _t3;
19412
+ var payload, message, connectionState, channelId, isAddToPendingMessagesMap, channel, sendMessageTid, pendingMessage, activeChannelId, SceytChatClient, createChannelData, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, createdMessage, messageToSend, _messageResponse, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, connectionIsDisconnected, _t3;
19430
19413
  return _regenerator().w(function (_context4) {
19431
19414
  while (1) switch (_context4.p = _context4.n) {
19432
19415
  case 0:
@@ -19582,25 +19565,29 @@ function sendTextMessage(action) {
19582
19565
  case 15:
19583
19566
  throw new Error('Connection required to send message');
19584
19567
  case 16:
19585
- _context4.n = 17;
19586
- return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19587
- case 17:
19588
19568
  _context4.n = 21;
19589
19569
  break;
19590
- case 18:
19591
- _context4.p = 18;
19570
+ case 17:
19571
+ _context4.p = 17;
19592
19572
  _t3 = _context4.v;
19593
19573
  if (!(activeChannelId === channel.id && pendingMessage && action.type !== RESEND_MESSAGE)) {
19594
- _context4.n = 19;
19574
+ _context4.n = 20;
19595
19575
  break;
19596
19576
  }
19597
- if (!isAddToPendingMessagesMap) {
19577
+ connectionIsDisconnected = store.getState().UserReducer.connectionStatus !== CONNECTION_STATUS.CONNECTED;
19578
+ if (!(isAddToPendingMessagesMap && connectionIsDisconnected)) {
19598
19579
  _context4.n = 19;
19599
19580
  break;
19600
19581
  }
19601
- _context4.n = 19;
19582
+ _context4.n = 18;
19602
19583
  return effects.call(addPendingMessage, message, pendingMessage, channel);
19584
+ case 18:
19585
+ _context4.n = 20;
19586
+ break;
19603
19587
  case 19:
19588
+ _context4.n = 20;
19589
+ return effects.put(removePendingMessageAC(channel.id, pendingMessage.tid));
19590
+ case 20:
19604
19591
  log.error('error on send text message ... ', _t3);
19605
19592
  updateMessageOnMap(channel.id, {
19606
19593
  messageId: sendMessageTid,
@@ -19609,26 +19596,29 @@ function sendTextMessage(action) {
19609
19596
  }
19610
19597
  });
19611
19598
  if (!(activeChannelId === channel.id)) {
19612
- _context4.n = 20;
19599
+ _context4.n = 21;
19613
19600
  break;
19614
19601
  }
19615
19602
  updateMessageOnAllMessages(sendMessageTid, {
19616
19603
  state: MESSAGE_STATUS.FAILED
19617
19604
  });
19618
- _context4.n = 20;
19605
+ _context4.n = 21;
19619
19606
  return effects.put(updateMessageAC(sendMessageTid, {
19620
19607
  state: MESSAGE_STATUS.FAILED
19621
19608
  }));
19622
- case 20:
19623
- _context4.n = 21;
19624
- return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19625
19609
  case 21:
19610
+ _context4.p = 21;
19611
+ _context4.n = 22;
19612
+ return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19613
+ case 22:
19614
+ return _context4.f(21);
19615
+ case 23:
19626
19616
  return _context4.a(2);
19627
19617
  }
19628
- }, _marked2$2, null, [[3, 18]]);
19618
+ }, _marked2$2, null, [[3, 17, 21, 23]]);
19629
19619
  }
19630
19620
  function forwardMessage(action) {
19631
- var payload, message, channelId, connectionState, isForward, isAddToPendingMessagesMap, pendingMessage, channel, activeChannelId, messageTid, SceytChatClient, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, pollDetails, messageToSend, hasNextMessages, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, _t4;
19621
+ var payload, message, channelId, connectionState, isForward, isAddToPendingMessagesMap, pendingMessage, channel, activeChannelId, messageTid, SceytChatClient, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, pollDetails, messageToSend, hasNextMessages, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, connectionIsDisconnected, _t4;
19632
19622
  return _regenerator().w(function (_context5) {
19633
19623
  while (1) switch (_context5.p = _context5.n) {
19634
19624
  case 0:
@@ -19798,24 +19788,31 @@ function forwardMessage(action) {
19798
19788
  case 14:
19799
19789
  throw new Error('Connection required to forward message');
19800
19790
  case 15:
19801
- _context5.n = 20;
19791
+ _context5.n = 21;
19802
19792
  break;
19803
19793
  case 16:
19804
19794
  _context5.p = 16;
19805
19795
  _t4 = _context5.v;
19806
19796
  if (!(pendingMessage && channel && action.type !== RESEND_MESSAGE)) {
19807
- _context5.n = 17;
19797
+ _context5.n = 19;
19808
19798
  break;
19809
19799
  }
19810
- if (!isAddToPendingMessagesMap) {
19811
- _context5.n = 17;
19800
+ connectionIsDisconnected = store.getState().UserReducer.connectionStatus !== CONNECTION_STATUS.CONNECTED;
19801
+ if (!(isAddToPendingMessagesMap && connectionIsDisconnected)) {
19802
+ _context5.n = 18;
19812
19803
  break;
19813
19804
  }
19814
19805
  _context5.n = 17;
19815
19806
  return effects.call(addPendingMessage, message, pendingMessage, channel);
19816
19807
  case 17:
19808
+ _context5.n = 19;
19809
+ break;
19810
+ case 18:
19811
+ _context5.n = 19;
19812
+ return effects.put(removePendingMessageAC(channel.id, pendingMessage.tid));
19813
+ case 19:
19817
19814
  if (!(channel && messageTid)) {
19818
- _context5.n = 18;
19815
+ _context5.n = 20;
19819
19816
  break;
19820
19817
  }
19821
19818
  updateMessageOnMap(channel.id, {
@@ -19825,28 +19822,28 @@ function forwardMessage(action) {
19825
19822
  }
19826
19823
  });
19827
19824
  if (!(activeChannelId === channel.id)) {
19828
- _context5.n = 18;
19825
+ _context5.n = 20;
19829
19826
  break;
19830
19827
  }
19831
19828
  updateMessageOnAllMessages(messageTid, {
19832
19829
  state: MESSAGE_STATUS.FAILED
19833
19830
  });
19834
- _context5.n = 18;
19831
+ _context5.n = 20;
19835
19832
  return effects.put(updateMessageAC(messageTid, {
19836
19833
  state: MESSAGE_STATUS.FAILED
19837
19834
  }));
19838
- case 18:
19839
- _context5.n = 19;
19840
- return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19841
- case 19:
19842
- log.error('error on forward message ... ', _t4);
19843
19835
  case 20:
19844
- _context5.n = 21;
19845
- return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19836
+ log.error('error on forward message ... ', _t4);
19846
19837
  case 21:
19838
+ _context5.p = 21;
19839
+ _context5.n = 22;
19840
+ return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19841
+ case 22:
19842
+ return _context5.f(21);
19843
+ case 23:
19847
19844
  return _context5.a(2);
19848
19845
  }
19849
- }, _marked3$1, null, [[1, 16]]);
19846
+ }, _marked3$1, null, [[1, 16, 21, 23]]);
19850
19847
  }
19851
19848
  function resendMessage(action) {
19852
19849
  var payload, message, connectionState, channelId, sendAttachmentsAsSeparateMessage, isVoiceMessage;
@@ -20091,7 +20088,7 @@ var sendPendingMessages = /*#__PURE__*/_regenerator().m(function _callee3(connec
20091
20088
  }, _callee3, null, [[3, 9]]);
20092
20089
  });
20093
20090
  function getMessagesQuery(action) {
20094
- var _action$payload, channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior, connectionState, SceytChatClient, messageQueryBuilder, messageQuery, cachedMessages, result, allMessages, havLastMessage, secondResult, sentMessages, messagesMap, filteredSentMessages, _allMessages, messageIndex, maxLengthPart, _secondResult, thirdResult, _secondResult2, _thirdResult, _secondResult3, _updatedMessages, _Object$values, previousAllMessages, _secondResult4, updatedMessages, lastMessageId, _allMessages2, setMappedAllMessages, allMessagesAfterLastMessage, pendingMessages, _messagesMap, filteredPendingMessages, waitToSendPendingMessages, _t0, _t1, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
20091
+ var _action$payload, channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior, scrollToMessage, connectionState, SceytChatClient, messageQueryBuilder, messageQuery, cachedMessages, result, allMessages, havLastMessage, secondResult, sentMessages, messagesMap, filteredSentMessages, _allMessages, messageIndex, maxLengthPart, _secondResult, thirdResult, _secondResult2, _thirdResult, _secondResult3, _updatedMessages, _Object$values, previousAllMessages, _secondResult4, updatedMessages, lastMessageId, _allMessages2, setMappedAllMessages, allMessagesAfterLastMessage, pendingMessages, _messagesMap, filteredPendingMessages, waitToSendPendingMessages, _t0, _t1, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
20095
20092
  return _regenerator().w(function (_context0) {
20096
20093
  while (1) switch (_context0.p = _context0.n) {
20097
20094
  case 0:
@@ -20099,7 +20096,7 @@ function getMessagesQuery(action) {
20099
20096
  _context0.n = 1;
20100
20097
  return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
20101
20098
  case 1:
20102
- _action$payload = action.payload, channel = _action$payload.channel, loadWithLastMessage = _action$payload.loadWithLastMessage, messageId = _action$payload.messageId, limit = _action$payload.limit, withDeliveredMessages = _action$payload.withDeliveredMessages, highlight = _action$payload.highlight, behavior = _action$payload.behavior;
20099
+ _action$payload = action.payload, channel = _action$payload.channel, loadWithLastMessage = _action$payload.loadWithLastMessage, messageId = _action$payload.messageId, limit = _action$payload.limit, withDeliveredMessages = _action$payload.withDeliveredMessages, highlight = _action$payload.highlight, behavior = _action$payload.behavior, scrollToMessage = _action$payload.scrollToMessage;
20103
20100
  connectionState = store.getState().UserReducer.connectionStatus;
20104
20101
  if (!(channel.id && !channel.isMockChannel)) {
20105
20102
  _context0.n = 76;
@@ -20220,7 +20217,7 @@ function getMessagesQuery(action) {
20220
20217
  return effects.put(setMessagesHasNextAC(false));
20221
20218
  case 17:
20222
20219
  setHasNextCached(false);
20223
- if (!messageId) {
20220
+ if (!(messageId && scrollToMessage)) {
20224
20221
  _context0.n = 18;
20225
20222
  break;
20226
20223
  }
@@ -20331,6 +20328,10 @@ function getMessagesQuery(action) {
20331
20328
  _context0.n = 35;
20332
20329
  return effects.put(setMessagesHasNextAC(true));
20333
20330
  case 35:
20331
+ if (!scrollToMessage) {
20332
+ _context0.n = 36;
20333
+ break;
20334
+ }
20334
20335
  _context0.n = 36;
20335
20336
  return effects.put(setScrollToMessagesAC(messageId, true, behavior));
20336
20337
  case 36:
@@ -23963,21 +23964,31 @@ var SceytChatContainer = function SceytChatContainer(_ref) {
23963
23964
  _ref$embeddedJoinGrou = _ref.embeddedJoinGroupPopup,
23964
23965
  embeddedJoinGroupPopup = _ref$embeddedJoinGrou === void 0 ? false : _ref$embeddedJoinGrou,
23965
23966
  onUpdateChannel = _ref.onUpdateChannel,
23966
- _ref$enableDisappeari = _ref.enableDisappearingMessages,
23967
- enableDisappearingMessages = _ref$enableDisappeari === void 0 ? false : _ref$enableDisappeari;
23967
+ _ref$disappearingSett = _ref.disappearingSettings,
23968
+ disappearingSettings = _ref$disappearingSett === void 0 ? null : _ref$disappearingSett;
23968
23969
  React.useEffect(function () {
23969
23970
  log.setLevel(logLevel);
23971
+ }, [logLevel]);
23972
+ React.useEffect(function () {
23970
23973
  if (baseUrlForInviteMembers) {
23971
23974
  setBaseUrlForInviteMembers(baseUrlForInviteMembers);
23972
23975
  }
23976
+ }, [baseUrlForInviteMembers]);
23977
+ React.useEffect(function () {
23973
23978
  if (useInviteLink) {
23974
23979
  setUseInviteLink(useInviteLink);
23975
23980
  }
23981
+ }, [useInviteLink]);
23982
+ React.useEffect(function () {
23976
23983
  if (inviteLinkOptions) {
23977
23984
  setInviteLinkOptions(inviteLinkOptions);
23978
23985
  }
23979
- setEnableDisappearingMessages(enableDisappearingMessages);
23980
- }, [baseUrlForInviteMembers, useInviteLink, inviteLinkOptions, enableDisappearingMessages]);
23986
+ }, [inviteLinkOptions]);
23987
+ React.useEffect(function () {
23988
+ if (disappearingSettings) {
23989
+ setDisappearingSettings(disappearingSettings);
23990
+ }
23991
+ }, [disappearingSettings]);
23981
23992
  return /*#__PURE__*/React__default.createElement(reactRedux.Provider, {
23982
23993
  store: store,
23983
23994
  context: SceytReduxContext
@@ -24345,7 +24356,7 @@ var ChannelMessageText = function ChannelMessageText(_ref2) {
24345
24356
  return mem === user.id ? ' You' : " " + systemMessageUserName(mem, contactsMap && contactsMap[mem], lastMessage.mentionedUsers);
24346
24357
  })) + " " + (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) {
24347
24358
  return mem === user.id ? ' You' : " " + systemMessageUserName(mem, contactsMap && contactsMap[mem], lastMessage.mentionedUsers);
24348
- })) + " " + (lastMessageMetas && lastMessageMetas.m && lastMessageMetas.m.length > 5 ? "and " + (lastMessageMetas.m.length - 5) + " more" : '') : lastMessage.body === 'LG' ? 'Left this group' : lastMessage.body === 'JL' ? 'joined via invite link' : lastMessage.body === 'ADM' && getEnableDisappearingMessages() ? !Number(lastMessageMetas === null || lastMessageMetas === void 0 ? void 0 : lastMessageMetas.autoDeletePeriod) ? 'disabled disappearing messages' : "set disappearing message time to " + formatDisappearingMessageTime(lastMessageMetas !== null && lastMessageMetas !== void 0 && lastMessageMetas.autoDeletePeriod ? Number(lastMessageMetas.autoDeletePeriod) : null) : '') : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(LastMessageDescription, {
24359
+ })) + " " + (lastMessageMetas && lastMessageMetas.m && lastMessageMetas.m.length > 5 ? "and " + (lastMessageMetas.m.length - 5) + " more" : '') : lastMessage.body === 'LG' ? 'Left this group' : lastMessage.body === 'JL' ? 'joined via invite link' : lastMessage.body === 'ADM' ? !Number(lastMessageMetas === null || lastMessageMetas === void 0 ? void 0 : lastMessageMetas.autoDeletePeriod) ? 'disabled disappearing messages' : "set the disappearing messages timer to " + formatDisappearingMessageTime(lastMessageMetas !== null && lastMessageMetas !== void 0 && lastMessageMetas.autoDeletePeriod ? Number(lastMessageMetas.autoDeletePeriod) : null) : '') : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(LastMessageDescription, {
24349
24360
  poll: (lastMessage === null || lastMessage === void 0 ? void 0 : lastMessage.pollDetails) && (lastMessage === null || lastMessage === void 0 ? void 0 : lastMessage.type) === exports.MESSAGE_TYPE.POLL
24350
24361
  }, 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({
24351
24362
  lastMessage: lastMessage
@@ -29574,7 +29585,7 @@ var Message = function Message(_ref) {
29574
29585
  return mem === user.id ? 'You' : " " + systemMessageUserName(mem, contactsMap[mem], message.mentionedUsers);
29575
29586
  })) + " " + (messageMetas && messageMetas.m && messageMetas.m.length > 5 ? "and " + (messageMetas.m.length - 5) + " more" : '') : message.body === 'RM' ? " removed " + (messageMetas && messageMetas.m && messageMetas.m.slice(0, 5).map(function (mem) {
29576
29587
  return mem === user.id ? 'You' : " " + systemMessageUserName(mem, contactsMap[mem], message.mentionedUsers);
29577
- })) + " " + (messageMetas && messageMetas.m && messageMetas.m.length > 5 ? "and " + (messageMetas.m.length - 5) + " more" : '') : message.body === 'LG' ? ' left the group' : message.body === 'JL' ? " joined via invite link" : message.body === 'ADM' && getEnableDisappearingMessages() ? !Number(messageMetas === null || messageMetas === void 0 ? void 0 : messageMetas.autoDeletePeriod) ? ' disabled disappearing messages' : " set disappearing message time to " + formatDisappearingMessageTime(messageMetas !== null && messageMetas !== void 0 && messageMetas.autoDeletePeriod ? Number(messageMetas.autoDeletePeriod) : null) : ''));
29588
+ })) + " " + (messageMetas && messageMetas.m && messageMetas.m.length > 5 ? "and " + (messageMetas.m.length - 5) + " more" : '') : message.body === 'LG' ? ' left the group' : message.body === 'JL' ? " joined via invite link" : message.body === 'ADM' ? !Number(messageMetas === null || messageMetas === void 0 ? void 0 : messageMetas.autoDeletePeriod) ? ' disabled disappearing messages' : " set the disappearing messages timer to " + formatDisappearingMessageTime(messageMetas !== null && messageMetas !== void 0 && messageMetas.autoDeletePeriod ? Number(messageMetas.autoDeletePeriod) : null) : ''));
29578
29589
  };
29579
29590
  var SystemMessage = /*#__PURE__*/React__default.memo(Message, function (prevProps, nextProps) {
29580
29591
  return prevProps.message.deliveryStatus === nextProps.message.deliveryStatus && prevProps.message.state === nextProps.message.state && prevProps.message.userMarkers === nextProps.message.userMarkers && prevProps.nextMessage === nextProps.nextMessage && prevProps.connectionStatus === nextProps.connectionStatus && prevProps.tabIsActive === nextProps.tabIsActive;
@@ -38734,7 +38745,7 @@ var MessageList = function MessageList(_ref2) {
38734
38745
  nextDisableRef.current = false;
38735
38746
  clearMessagesMap();
38736
38747
  removeAllMessages();
38737
- dispatch(getMessagesAC(channel));
38748
+ dispatch(getMessagesAC(channel, false, lastVisibleMessageId, 0, false, false, 'instant', false));
38738
38749
  }
38739
38750
  }, [connectionStatus]);
38740
38751
  React.useEffect(function () {
@@ -44283,7 +44294,7 @@ function DisappearingMessagesPopup(_ref) {
44283
44294
  var _useState = React.useState('off'),
44284
44295
  selectedOption = _useState[0],
44285
44296
  setSelectedOption = _useState[1];
44286
- var _useState2 = React.useState('2days'),
44297
+ var _useState2 = React.useState(''),
44287
44298
  customValue = _useState2[0],
44288
44299
  setCustomValue = _useState2[1];
44289
44300
  var _useState3 = React.useState(true),
@@ -44294,6 +44305,22 @@ function DisappearingMessagesPopup(_ref) {
44294
44305
  setDropdownOpen = _useState4[1];
44295
44306
  var previousTimerRef = React.useRef(currentTimer);
44296
44307
  var hasInitializedRef = React.useRef(false);
44308
+ var CUSTOM_OPTIONS = React.useMemo(function () {
44309
+ var _getDisappearingSetti;
44310
+ return ((_getDisappearingSetti = getDisappearingSettings()) === null || _getDisappearingSetti === void 0 ? void 0 : _getDisappearingSetti.customOptions) || [];
44311
+ }, []);
44312
+ React.useEffect(function () {
44313
+ var _CUSTOM_OPTIONS$;
44314
+ if (CUSTOM_OPTIONS.length > 0 && (_CUSTOM_OPTIONS$ = CUSTOM_OPTIONS[0]) !== null && _CUSTOM_OPTIONS$ !== void 0 && _CUSTOM_OPTIONS$.label) {
44315
+ var _CUSTOM_OPTIONS$2;
44316
+ setCustomValue(((_CUSTOM_OPTIONS$2 = CUSTOM_OPTIONS[0]) === null || _CUSTOM_OPTIONS$2 === void 0 ? void 0 : _CUSTOM_OPTIONS$2.label) || '');
44317
+ }
44318
+ }, [CUSTOM_OPTIONS]);
44319
+ var CUSTOM_SECONDS_MAP = React.useMemo(function () {
44320
+ return Object.fromEntries(CUSTOM_OPTIONS.map(function (o) {
44321
+ return [o.label, o.seconds];
44322
+ }));
44323
+ }, [CUSTOM_OPTIONS]);
44297
44324
  React.useEffect(function () {
44298
44325
  if (previousTimerRef.current !== currentTimer) {
44299
44326
  setInitialRender(true);
@@ -44304,16 +44331,16 @@ function DisappearingMessagesPopup(_ref) {
44304
44331
  setSelectedOption('off');
44305
44332
  } else {
44306
44333
  var fixedMatch = Object.keys(FIXED_TIMER_OPTIONS).find(function (key) {
44307
- return FIXED_TIMER_OPTIONS[key] === currentTimer;
44334
+ return (FIXED_TIMER_OPTIONS[key] || 0) * 1000 === currentTimer;
44308
44335
  });
44309
44336
  if (fixedMatch) {
44310
44337
  setSelectedOption(fixedMatch);
44311
44338
  } else {
44312
44339
  var customMatch = CUSTOM_OPTIONS.find(function (o) {
44313
- return o.seconds === currentTimer;
44340
+ return o.seconds * 1000 === currentTimer;
44314
44341
  });
44315
44342
  setSelectedOption('custom');
44316
- setCustomValue((customMatch === null || customMatch === void 0 ? void 0 : customMatch.value) || '2days');
44343
+ setCustomValue((customMatch === null || customMatch === void 0 ? void 0 : customMatch.label) || '2days');
44317
44344
  }
44318
44345
  }
44319
44346
  }, [currentTimer]);
@@ -44328,9 +44355,12 @@ function DisappearingMessagesPopup(_ref) {
44328
44355
  }, [selectedOption, customValue]);
44329
44356
  var isValueUnchanged = React.useMemo(function () {
44330
44357
  if (initialRender) return true;
44331
- var normalizedCurrent = currentTimer === 0 ? null : currentTimer != null ? currentTimer : null;
44332
- var normalizedSelected = selectedTimerValue === 0 ? null : selectedTimerValue != null ? selectedTimerValue : null;
44333
- return normalizedCurrent === normalizedSelected;
44358
+ if (!selectedTimerValue && !selectedTimerValue) {
44359
+ return true;
44360
+ } else if (selectedTimerValue * 1000 === currentTimer) {
44361
+ return true;
44362
+ }
44363
+ return false;
44334
44364
  }, [currentTimer, selectedTimerValue, initialRender]);
44335
44365
  var handleSet = React.useCallback(function () {
44336
44366
  if (selectedOption === 'custom') {
@@ -44343,9 +44373,9 @@ function DisappearingMessagesPopup(_ref) {
44343
44373
  var selectedCustomLabel = React.useMemo(function () {
44344
44374
  var _CUSTOM_OPTIONS$find;
44345
44375
  return ((_CUSTOM_OPTIONS$find = CUSTOM_OPTIONS.find(function (o) {
44346
- return o.value === customValue;
44376
+ return o.label === customValue;
44347
44377
  })) === null || _CUSTOM_OPTIONS$find === void 0 ? void 0 : _CUSTOM_OPTIONS$find.label) || '2 days';
44348
- }, [customValue]);
44378
+ }, [customValue, CUSTOM_OPTIONS]);
44349
44379
  return /*#__PURE__*/React__default.createElement(PopupContainer, null, /*#__PURE__*/React__default.createElement(Popup, {
44350
44380
  theme: theme,
44351
44381
  backgroundColor: background,
@@ -44391,7 +44421,7 @@ function DisappearingMessagesPopup(_ref) {
44391
44421
  borderRadius: '4px',
44392
44422
  variant: 'checkbox'
44393
44423
  }), option.label);
44394
- }), /*#__PURE__*/React__default.createElement(TimerOptionItem, {
44424
+ }), CUSTOM_OPTIONS.length > 0 && (/*#__PURE__*/React__default.createElement(TimerOptionItem, {
44395
44425
  color: textPrimary,
44396
44426
  onClick: function onClick() {
44397
44427
  return setSelectedOption('custom');
@@ -44407,7 +44437,7 @@ function DisappearingMessagesPopup(_ref) {
44407
44437
  borderColor: iconInactive,
44408
44438
  borderRadius: '4px',
44409
44439
  variant: 'checkbox'
44410
- }), "Custom"), selectedOption === 'custom' && (/*#__PURE__*/React__default.createElement(CustomTimerSection, null, /*#__PURE__*/React__default.createElement(Label, {
44440
+ }), "Custom")), selectedOption === 'custom' && (/*#__PURE__*/React__default.createElement(CustomTimerSection, null, /*#__PURE__*/React__default.createElement(Label, {
44411
44441
  color: textPrimary,
44412
44442
  marginTop: '0'
44413
44443
  }, "Auto-delete after"), /*#__PURE__*/React__default.createElement(CustomSelectWrapper, {
@@ -44436,9 +44466,9 @@ function DisappearingMessagesPopup(_ref) {
44436
44466
  }, CUSTOM_OPTIONS.map(function (o) {
44437
44467
  return /*#__PURE__*/React__default.createElement(CustomDropdownOptionLi, {
44438
44468
  hoverBackground: backgroundHovered,
44439
- key: o.value,
44469
+ key: o.label,
44440
44470
  onClick: function onClick() {
44441
- return setCustomValue(o.value);
44471
+ return setCustomValue(o.label);
44442
44472
  },
44443
44473
  textColor: textPrimary
44444
44474
  }, o.label);
@@ -44477,6 +44507,7 @@ var SetButton = styled__default(Button)(_templateObject8$n || (_templateObject8$
44477
44507
 
44478
44508
  var _templateObject$T, _templateObject2$O, _templateObject3$H, _templateObject4$B, _templateObject5$w, _templateObject6$s, _templateObject7$r, _templateObject8$o, _templateObject9$k, _templateObject0$i, _templateObject1$f, _templateObject10$9, _templateObject11$7, _templateObject12$6, _templateObject13$4, _templateObject14$3, _templateObject15$3, _templateObject16$3, _templateObject17$3, _templateObject18$3, _templateObject19$3, _templateObject20$3;
44479
44509
  var Actions = function Actions(_ref) {
44510
+ var _getDisappearingSetti;
44480
44511
  var setActionsHeight = _ref.setActionsHeight,
44481
44512
  channel = _ref.channel,
44482
44513
  actionMenuOpen = _ref.actionMenuOpen,
@@ -44785,7 +44816,7 @@ var Actions = function Actions(_ref) {
44785
44816
  color: staredMessagesTextColor || textPrimary,
44786
44817
  hoverColor: staredMessagesTextColor || textPrimary,
44787
44818
  fontSize: actionItemsFontSize
44788
- }, /*#__PURE__*/React__default.createElement(React__default.Fragment, null, staredMessagesIcon || /*#__PURE__*/React__default.createElement(DefaultStarIcon, null), " Starred messages "))), getEnableDisappearingMessages() && !channel.isMockChannel && canToggleDisappearingMessages && (isDirectChannel && directChannelUser ? directChannelUser.state !== USER_STATE.DELETED : true) && (/*#__PURE__*/React__default.createElement(ActionItem, {
44819
+ }, /*#__PURE__*/React__default.createElement(React__default.Fragment, null, staredMessagesIcon || /*#__PURE__*/React__default.createElement(DefaultStarIcon, null), " Starred messages "))), ((_getDisappearingSetti = getDisappearingSettings()) === null || _getDisappearingSetti === void 0 ? void 0 : _getDisappearingSetti.show) && !channel.isMockChannel && canToggleDisappearingMessages && (isDirectChannel && directChannelUser ? directChannelUser.state !== USER_STATE.DELETED : true) && (/*#__PURE__*/React__default.createElement(ActionItem, {
44789
44820
  key: 1.5,
44790
44821
  onClick: handleToggleDisappearingMessagesPopup,
44791
44822
  iconColor: iconPrimary,
package/index.modern.js CHANGED
@@ -2676,42 +2676,6 @@ var FIXED_TIMER_OPTIONS = {
2676
2676
  '1month': 60 * 60 * 24 * 30,
2677
2677
  custom: 60 * 60 * 24 * 2
2678
2678
  };
2679
- var CUSTOM_OPTIONS = [{
2680
- label: '1 day',
2681
- value: '1day',
2682
- seconds: 60 * 60 * 24
2683
- }, {
2684
- label: '2 days',
2685
- value: '2days',
2686
- seconds: 60 * 60 * 24 * 2
2687
- }, {
2688
- label: '3 days',
2689
- value: '3days',
2690
- seconds: 60 * 60 * 24 * 3
2691
- }, {
2692
- label: '4 days',
2693
- value: '4days',
2694
- seconds: 60 * 60 * 24 * 4
2695
- }, {
2696
- label: '5 days',
2697
- value: '5days',
2698
- seconds: 60 * 60 * 24 * 5
2699
- }, {
2700
- label: '1 week',
2701
- value: '1week',
2702
- seconds: 60 * 60 * 24 * 7
2703
- }, {
2704
- label: '2 weeks',
2705
- value: '2weeks',
2706
- seconds: 60 * 60 * 24 * 14
2707
- }, {
2708
- label: '1 month',
2709
- value: '1month',
2710
- seconds: 60 * 60 * 24 * 30
2711
- }];
2712
- var CUSTOM_SECONDS_MAP = Object.fromEntries(CUSTOM_OPTIONS.map(function (o) {
2713
- return [o.value, o.seconds];
2714
- }));
2715
2679
 
2716
2680
  // A type of promise-like that resolves synchronously and supports only one observer
2717
2681
  const _Pact = /*#__PURE__*/(function() {
@@ -9078,7 +9042,7 @@ var memberCount = 10;
9078
9042
  var disableFrowardMentionsCount = false;
9079
9043
  var onUpdateChannel = function onUpdateChannel() {};
9080
9044
  var useInviteLink = false;
9081
- var enableDisappearingMessages = true;
9045
+ var disappearingSettings;
9082
9046
  var inviteLinkOptions = null;
9083
9047
  function setBaseUrlForInviteMembers(url) {
9084
9048
  baseUrlForInviteMembers = url;
@@ -9297,11 +9261,11 @@ var setShowChannelDetails = function setShowChannelDetails(state) {
9297
9261
  var getShowChannelDetails = function getShowChannelDetails() {
9298
9262
  return showChannelDetails;
9299
9263
  };
9300
- var setEnableDisappearingMessages = function setEnableDisappearingMessages(state) {
9301
- enableDisappearingMessages = state;
9264
+ var setDisappearingSettings = function setDisappearingSettings(settings) {
9265
+ disappearingSettings = settings;
9302
9266
  };
9303
- var getEnableDisappearingMessages = function getEnableDisappearingMessages() {
9304
- return enableDisappearingMessages;
9267
+ var getDisappearingSettings = function getDisappearingSettings() {
9268
+ return disappearingSettings;
9305
9269
  };
9306
9270
  var sortChannelByLastMessage = function sortChannelByLastMessage(channels) {
9307
9271
  return channels.sort(function (a, b) {
@@ -10093,6 +10057,7 @@ var hashString = function hashString(str) {
10093
10057
  }
10094
10058
  };
10095
10059
  var formatDisappearingMessageTime = function formatDisappearingMessageTime(periodInMilliseconds) {
10060
+ var _getDisappearingSetti;
10096
10061
  if (!periodInMilliseconds) return 'Off';
10097
10062
  var periodInSeconds = periodInMilliseconds / 1000;
10098
10063
  switch (periodInSeconds) {
@@ -10103,7 +10068,8 @@ var formatDisappearingMessageTime = function formatDisappearingMessageTime(perio
10103
10068
  case FIXED_TIMER_OPTIONS['1month']:
10104
10069
  return '1 month';
10105
10070
  }
10106
- var customMatch = CUSTOM_OPTIONS.find(function (option) {
10071
+ var customOptions = ((_getDisappearingSetti = getDisappearingSettings()) === null || _getDisappearingSetti === void 0 ? void 0 : _getDisappearingSetti.customOptions) || [];
10072
+ var customMatch = customOptions.find(function (option) {
10107
10073
  return option.seconds === periodInSeconds;
10108
10074
  });
10109
10075
  if (customMatch) return customMatch.label;
@@ -10251,10 +10217,13 @@ function setMessageToEditAC(message) {
10251
10217
  message: message
10252
10218
  });
10253
10219
  }
10254
- function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior) {
10220
+ function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior, scrollToMessage) {
10255
10221
  if (highlight === void 0) {
10256
10222
  highlight = true;
10257
10223
  }
10224
+ if (scrollToMessage === void 0) {
10225
+ scrollToMessage = true;
10226
+ }
10258
10227
  return {
10259
10228
  type: GET_MESSAGES,
10260
10229
  payload: {
@@ -10264,7 +10233,8 @@ function getMessagesAC(channel, loadWithLastMessage, messageId, limit, withDeliv
10264
10233
  limit: limit,
10265
10234
  withDeliveredMessages: withDeliveredMessages,
10266
10235
  highlight: highlight,
10267
- behavior: behavior
10236
+ behavior: behavior,
10237
+ scrollToMessage: scrollToMessage
10268
10238
  }
10269
10239
  };
10270
10240
  }
@@ -19221,7 +19191,7 @@ function sendMessage(action) {
19221
19191
  }
19222
19192
  case 11:
19223
19193
  _loop2 = /*#__PURE__*/_regenerator().m(function _callee2() {
19224
- var messageAttachment, messageToSend, messageCopy, _attachmentsToSend, linkAttachmentToSend, linkAttachmentBuilder, messageResponse, k, pendingAttachment, attachmentsToUpdate, currentAttachmentsMap, messageUpdateData, messageToUpdate, channelUpdateParam, pendingMessage, _t;
19194
+ var messageAttachment, messageToSend, messageCopy, _attachmentsToSend, linkAttachmentToSend, linkAttachmentBuilder, messageResponse, k, pendingAttachment, attachmentsToUpdate, currentAttachmentsMap, messageUpdateData, messageToUpdate, channelUpdateParam, pendingMessage, connectionIsDisconnected, _t;
19225
19195
  return _regenerator().w(function (_context2) {
19226
19196
  while (1) switch (_context2.p = _context2.n) {
19227
19197
  case 0:
@@ -19356,7 +19326,7 @@ function sendMessage(action) {
19356
19326
  case 12:
19357
19327
  throw new Error('Connection required to send message');
19358
19328
  case 13:
19359
- _context2.n = 17;
19329
+ _context2.n = 19;
19360
19330
  break;
19361
19331
  case 14:
19362
19332
  _context2.p = 14;
@@ -19365,24 +19335,31 @@ function sendMessage(action) {
19365
19335
  return pendingMessage.tid === messageToSend.tid;
19366
19336
  });
19367
19337
  if (!(channel && pendingMessage && action.type !== RESEND_MESSAGE)) {
19368
- _context2.n = 15;
19338
+ _context2.n = 17;
19369
19339
  break;
19370
19340
  }
19371
- if (!isAddToPendingMessagesMap) {
19372
- _context2.n = 15;
19341
+ connectionIsDisconnected = store.getState().UserReducer.connectionStatus !== CONNECTION_STATUS.CONNECTED;
19342
+ if (!(isAddToPendingMessagesMap && connectionIsDisconnected)) {
19343
+ _context2.n = 16;
19373
19344
  break;
19374
19345
  }
19375
19346
  _context2.n = 15;
19376
19347
  return call(addPendingMessage, message, pendingMessage, channel);
19377
19348
  case 15:
19349
+ _context2.n = 17;
19350
+ break;
19351
+ case 16:
19352
+ _context2.n = 17;
19353
+ return put(removePendingMessageAC(channel.id, pendingMessage.tid));
19354
+ case 17:
19378
19355
  log.error('Error on uploading attachment', messageToSend.tid, _t);
19379
19356
  if (!(messageToSend.attachments && messageToSend.attachments.length)) {
19380
- _context2.n = 16;
19357
+ _context2.n = 18;
19381
19358
  break;
19382
19359
  }
19383
- _context2.n = 16;
19360
+ _context2.n = 18;
19384
19361
  return put(updateAttachmentUploadingStateAC(UPLOAD_STATE.FAIL, messageToSend.attachments[0].tid));
19385
- case 16:
19362
+ case 18:
19386
19363
  updateMessageOnMap(channel.id, {
19387
19364
  messageId: messageToSend.tid,
19388
19365
  params: {
@@ -19392,11 +19369,11 @@ function sendMessage(action) {
19392
19369
  updateMessageOnAllMessages(messageToSend.tid, {
19393
19370
  state: MESSAGE_STATUS.FAILED
19394
19371
  });
19395
- _context2.n = 17;
19372
+ _context2.n = 19;
19396
19373
  return put(updateMessageAC(messageToSend.tid, {
19397
19374
  state: MESSAGE_STATUS.FAILED
19398
19375
  }));
19399
- case 17:
19376
+ case 19:
19400
19377
  return _context2.a(2);
19401
19378
  }
19402
19379
  }, _callee2, null, [[1, 14]]);
@@ -19420,12 +19397,18 @@ function sendMessage(action) {
19420
19397
  _t2 = _context3.v;
19421
19398
  log.error('error on send message ... ', _t2);
19422
19399
  case 16:
19400
+ _context3.p = 16;
19401
+ _context3.n = 17;
19402
+ return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19403
+ case 17:
19404
+ return _context3.f(16);
19405
+ case 18:
19423
19406
  return _context3.a(2);
19424
19407
  }
19425
- }, _marked$3, null, [[1, 15]]);
19408
+ }, _marked$3, null, [[1, 15, 16, 18]]);
19426
19409
  }
19427
19410
  function sendTextMessage(action) {
19428
- var payload, message, connectionState, channelId, isAddToPendingMessagesMap, channel, sendMessageTid, pendingMessage, activeChannelId, SceytChatClient, createChannelData, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, createdMessage, messageToSend, _messageResponse, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, _t3;
19411
+ var payload, message, connectionState, channelId, isAddToPendingMessagesMap, channel, sendMessageTid, pendingMessage, activeChannelId, SceytChatClient, createChannelData, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, createdMessage, messageToSend, _messageResponse, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, connectionIsDisconnected, _t3;
19429
19412
  return _regenerator().w(function (_context4) {
19430
19413
  while (1) switch (_context4.p = _context4.n) {
19431
19414
  case 0:
@@ -19581,25 +19564,29 @@ function sendTextMessage(action) {
19581
19564
  case 15:
19582
19565
  throw new Error('Connection required to send message');
19583
19566
  case 16:
19584
- _context4.n = 17;
19585
- return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19586
- case 17:
19587
19567
  _context4.n = 21;
19588
19568
  break;
19589
- case 18:
19590
- _context4.p = 18;
19569
+ case 17:
19570
+ _context4.p = 17;
19591
19571
  _t3 = _context4.v;
19592
19572
  if (!(activeChannelId === channel.id && pendingMessage && action.type !== RESEND_MESSAGE)) {
19593
- _context4.n = 19;
19573
+ _context4.n = 20;
19594
19574
  break;
19595
19575
  }
19596
- if (!isAddToPendingMessagesMap) {
19576
+ connectionIsDisconnected = store.getState().UserReducer.connectionStatus !== CONNECTION_STATUS.CONNECTED;
19577
+ if (!(isAddToPendingMessagesMap && connectionIsDisconnected)) {
19597
19578
  _context4.n = 19;
19598
19579
  break;
19599
19580
  }
19600
- _context4.n = 19;
19581
+ _context4.n = 18;
19601
19582
  return call(addPendingMessage, message, pendingMessage, channel);
19583
+ case 18:
19584
+ _context4.n = 20;
19585
+ break;
19602
19586
  case 19:
19587
+ _context4.n = 20;
19588
+ return put(removePendingMessageAC(channel.id, pendingMessage.tid));
19589
+ case 20:
19603
19590
  log.error('error on send text message ... ', _t3);
19604
19591
  updateMessageOnMap(channel.id, {
19605
19592
  messageId: sendMessageTid,
@@ -19608,26 +19595,29 @@ function sendTextMessage(action) {
19608
19595
  }
19609
19596
  });
19610
19597
  if (!(activeChannelId === channel.id)) {
19611
- _context4.n = 20;
19598
+ _context4.n = 21;
19612
19599
  break;
19613
19600
  }
19614
19601
  updateMessageOnAllMessages(sendMessageTid, {
19615
19602
  state: MESSAGE_STATUS.FAILED
19616
19603
  });
19617
- _context4.n = 20;
19604
+ _context4.n = 21;
19618
19605
  return put(updateMessageAC(sendMessageTid, {
19619
19606
  state: MESSAGE_STATUS.FAILED
19620
19607
  }));
19621
- case 20:
19622
- _context4.n = 21;
19623
- return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19624
19608
  case 21:
19609
+ _context4.p = 21;
19610
+ _context4.n = 22;
19611
+ return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19612
+ case 22:
19613
+ return _context4.f(21);
19614
+ case 23:
19625
19615
  return _context4.a(2);
19626
19616
  }
19627
- }, _marked2$2, null, [[3, 18]]);
19617
+ }, _marked2$2, null, [[3, 17, 21, 23]]);
19628
19618
  }
19629
19619
  function forwardMessage(action) {
19630
- var payload, message, channelId, connectionState, isForward, isAddToPendingMessagesMap, pendingMessage, channel, activeChannelId, messageTid, SceytChatClient, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, pollDetails, messageToSend, hasNextMessages, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, _t4;
19620
+ var payload, message, channelId, connectionState, isForward, isAddToPendingMessagesMap, pendingMessage, channel, activeChannelId, messageTid, SceytChatClient, mentionedUserIds, attachments, attachmentBuilder, att, messageBuilder, pollDetails, messageToSend, hasNextMessages, messageResponse, messageUpdateData, messageToUpdate, channelUpdateParam, connectionIsDisconnected, _t4;
19631
19621
  return _regenerator().w(function (_context5) {
19632
19622
  while (1) switch (_context5.p = _context5.n) {
19633
19623
  case 0:
@@ -19797,24 +19787,31 @@ function forwardMessage(action) {
19797
19787
  case 14:
19798
19788
  throw new Error('Connection required to forward message');
19799
19789
  case 15:
19800
- _context5.n = 20;
19790
+ _context5.n = 21;
19801
19791
  break;
19802
19792
  case 16:
19803
19793
  _context5.p = 16;
19804
19794
  _t4 = _context5.v;
19805
19795
  if (!(pendingMessage && channel && action.type !== RESEND_MESSAGE)) {
19806
- _context5.n = 17;
19796
+ _context5.n = 19;
19807
19797
  break;
19808
19798
  }
19809
- if (!isAddToPendingMessagesMap) {
19810
- _context5.n = 17;
19799
+ connectionIsDisconnected = store.getState().UserReducer.connectionStatus !== CONNECTION_STATUS.CONNECTED;
19800
+ if (!(isAddToPendingMessagesMap && connectionIsDisconnected)) {
19801
+ _context5.n = 18;
19811
19802
  break;
19812
19803
  }
19813
19804
  _context5.n = 17;
19814
19805
  return call(addPendingMessage, message, pendingMessage, channel);
19815
19806
  case 17:
19807
+ _context5.n = 19;
19808
+ break;
19809
+ case 18:
19810
+ _context5.n = 19;
19811
+ return put(removePendingMessageAC(channel.id, pendingMessage.tid));
19812
+ case 19:
19816
19813
  if (!(channel && messageTid)) {
19817
- _context5.n = 18;
19814
+ _context5.n = 20;
19818
19815
  break;
19819
19816
  }
19820
19817
  updateMessageOnMap(channel.id, {
@@ -19824,28 +19821,28 @@ function forwardMessage(action) {
19824
19821
  }
19825
19822
  });
19826
19823
  if (!(activeChannelId === channel.id)) {
19827
- _context5.n = 18;
19824
+ _context5.n = 20;
19828
19825
  break;
19829
19826
  }
19830
19827
  updateMessageOnAllMessages(messageTid, {
19831
19828
  state: MESSAGE_STATUS.FAILED
19832
19829
  });
19833
- _context5.n = 18;
19830
+ _context5.n = 20;
19834
19831
  return put(updateMessageAC(messageTid, {
19835
19832
  state: MESSAGE_STATUS.FAILED
19836
19833
  }));
19837
- case 18:
19838
- _context5.n = 19;
19839
- return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19840
- case 19:
19841
- log.error('error on forward message ... ', _t4);
19842
19834
  case 20:
19843
- _context5.n = 21;
19844
- return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19835
+ log.error('error on forward message ... ', _t4);
19845
19836
  case 21:
19837
+ _context5.p = 21;
19838
+ _context5.n = 22;
19839
+ return put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
19840
+ case 22:
19841
+ return _context5.f(21);
19842
+ case 23:
19846
19843
  return _context5.a(2);
19847
19844
  }
19848
- }, _marked3$1, null, [[1, 16]]);
19845
+ }, _marked3$1, null, [[1, 16, 21, 23]]);
19849
19846
  }
19850
19847
  function resendMessage(action) {
19851
19848
  var payload, message, connectionState, channelId, sendAttachmentsAsSeparateMessage, isVoiceMessage;
@@ -20090,7 +20087,7 @@ var sendPendingMessages = /*#__PURE__*/_regenerator().m(function _callee3(connec
20090
20087
  }, _callee3, null, [[3, 9]]);
20091
20088
  });
20092
20089
  function getMessagesQuery(action) {
20093
- var _action$payload, channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior, connectionState, SceytChatClient, messageQueryBuilder, messageQuery, cachedMessages, result, allMessages, havLastMessage, secondResult, sentMessages, messagesMap, filteredSentMessages, _allMessages, messageIndex, maxLengthPart, _secondResult, thirdResult, _secondResult2, _thirdResult, _secondResult3, _updatedMessages, _Object$values, previousAllMessages, _secondResult4, updatedMessages, lastMessageId, _allMessages2, setMappedAllMessages, allMessagesAfterLastMessage, pendingMessages, _messagesMap, filteredPendingMessages, waitToSendPendingMessages, _t0, _t1, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
20090
+ var _action$payload, channel, loadWithLastMessage, messageId, limit, withDeliveredMessages, highlight, behavior, scrollToMessage, connectionState, SceytChatClient, messageQueryBuilder, messageQuery, cachedMessages, result, allMessages, havLastMessage, secondResult, sentMessages, messagesMap, filteredSentMessages, _allMessages, messageIndex, maxLengthPart, _secondResult, thirdResult, _secondResult2, _thirdResult, _secondResult3, _updatedMessages, _Object$values, previousAllMessages, _secondResult4, updatedMessages, lastMessageId, _allMessages2, setMappedAllMessages, allMessagesAfterLastMessage, pendingMessages, _messagesMap, filteredPendingMessages, waitToSendPendingMessages, _t0, _t1, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
20094
20091
  return _regenerator().w(function (_context0) {
20095
20092
  while (1) switch (_context0.p = _context0.n) {
20096
20093
  case 0:
@@ -20098,7 +20095,7 @@ function getMessagesQuery(action) {
20098
20095
  _context0.n = 1;
20099
20096
  return put(setMessagesLoadingStateAC(LOADING_STATE.LOADING));
20100
20097
  case 1:
20101
- _action$payload = action.payload, channel = _action$payload.channel, loadWithLastMessage = _action$payload.loadWithLastMessage, messageId = _action$payload.messageId, limit = _action$payload.limit, withDeliveredMessages = _action$payload.withDeliveredMessages, highlight = _action$payload.highlight, behavior = _action$payload.behavior;
20098
+ _action$payload = action.payload, channel = _action$payload.channel, loadWithLastMessage = _action$payload.loadWithLastMessage, messageId = _action$payload.messageId, limit = _action$payload.limit, withDeliveredMessages = _action$payload.withDeliveredMessages, highlight = _action$payload.highlight, behavior = _action$payload.behavior, scrollToMessage = _action$payload.scrollToMessage;
20102
20099
  connectionState = store.getState().UserReducer.connectionStatus;
20103
20100
  if (!(channel.id && !channel.isMockChannel)) {
20104
20101
  _context0.n = 76;
@@ -20219,7 +20216,7 @@ function getMessagesQuery(action) {
20219
20216
  return put(setMessagesHasNextAC(false));
20220
20217
  case 17:
20221
20218
  setHasNextCached(false);
20222
- if (!messageId) {
20219
+ if (!(messageId && scrollToMessage)) {
20223
20220
  _context0.n = 18;
20224
20221
  break;
20225
20222
  }
@@ -20330,6 +20327,10 @@ function getMessagesQuery(action) {
20330
20327
  _context0.n = 35;
20331
20328
  return put(setMessagesHasNextAC(true));
20332
20329
  case 35:
20330
+ if (!scrollToMessage) {
20331
+ _context0.n = 36;
20332
+ break;
20333
+ }
20333
20334
  _context0.n = 36;
20334
20335
  return put(setScrollToMessagesAC(messageId, true, behavior));
20335
20336
  case 36:
@@ -23962,21 +23963,31 @@ var SceytChatContainer = function SceytChatContainer(_ref) {
23962
23963
  _ref$embeddedJoinGrou = _ref.embeddedJoinGroupPopup,
23963
23964
  embeddedJoinGroupPopup = _ref$embeddedJoinGrou === void 0 ? false : _ref$embeddedJoinGrou,
23964
23965
  onUpdateChannel = _ref.onUpdateChannel,
23965
- _ref$enableDisappeari = _ref.enableDisappearingMessages,
23966
- enableDisappearingMessages = _ref$enableDisappeari === void 0 ? false : _ref$enableDisappeari;
23966
+ _ref$disappearingSett = _ref.disappearingSettings,
23967
+ disappearingSettings = _ref$disappearingSett === void 0 ? null : _ref$disappearingSett;
23967
23968
  useEffect(function () {
23968
23969
  log.setLevel(logLevel);
23970
+ }, [logLevel]);
23971
+ useEffect(function () {
23969
23972
  if (baseUrlForInviteMembers) {
23970
23973
  setBaseUrlForInviteMembers(baseUrlForInviteMembers);
23971
23974
  }
23975
+ }, [baseUrlForInviteMembers]);
23976
+ useEffect(function () {
23972
23977
  if (useInviteLink) {
23973
23978
  setUseInviteLink(useInviteLink);
23974
23979
  }
23980
+ }, [useInviteLink]);
23981
+ useEffect(function () {
23975
23982
  if (inviteLinkOptions) {
23976
23983
  setInviteLinkOptions(inviteLinkOptions);
23977
23984
  }
23978
- setEnableDisappearingMessages(enableDisappearingMessages);
23979
- }, [baseUrlForInviteMembers, useInviteLink, inviteLinkOptions, enableDisappearingMessages]);
23985
+ }, [inviteLinkOptions]);
23986
+ useEffect(function () {
23987
+ if (disappearingSettings) {
23988
+ setDisappearingSettings(disappearingSettings);
23989
+ }
23990
+ }, [disappearingSettings]);
23980
23991
  return /*#__PURE__*/React__default.createElement(Provider, {
23981
23992
  store: store,
23982
23993
  context: SceytReduxContext
@@ -24344,7 +24355,7 @@ var ChannelMessageText = function ChannelMessageText(_ref2) {
24344
24355
  return mem === user.id ? ' You' : " " + systemMessageUserName(mem, contactsMap && contactsMap[mem], lastMessage.mentionedUsers);
24345
24356
  })) + " " + (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) {
24346
24357
  return mem === user.id ? ' You' : " " + systemMessageUserName(mem, contactsMap && contactsMap[mem], lastMessage.mentionedUsers);
24347
- })) + " " + (lastMessageMetas && lastMessageMetas.m && lastMessageMetas.m.length > 5 ? "and " + (lastMessageMetas.m.length - 5) + " more" : '') : lastMessage.body === 'LG' ? 'Left this group' : lastMessage.body === 'JL' ? 'joined via invite link' : lastMessage.body === 'ADM' && getEnableDisappearingMessages() ? !Number(lastMessageMetas === null || lastMessageMetas === void 0 ? void 0 : lastMessageMetas.autoDeletePeriod) ? 'disabled disappearing messages' : "set disappearing message time to " + formatDisappearingMessageTime(lastMessageMetas !== null && lastMessageMetas !== void 0 && lastMessageMetas.autoDeletePeriod ? Number(lastMessageMetas.autoDeletePeriod) : null) : '') : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(LastMessageDescription, {
24358
+ })) + " " + (lastMessageMetas && lastMessageMetas.m && lastMessageMetas.m.length > 5 ? "and " + (lastMessageMetas.m.length - 5) + " more" : '') : lastMessage.body === 'LG' ? 'Left this group' : lastMessage.body === 'JL' ? 'joined via invite link' : lastMessage.body === 'ADM' ? !Number(lastMessageMetas === null || lastMessageMetas === void 0 ? void 0 : lastMessageMetas.autoDeletePeriod) ? 'disabled disappearing messages' : "set the disappearing messages timer to " + formatDisappearingMessageTime(lastMessageMetas !== null && lastMessageMetas !== void 0 && lastMessageMetas.autoDeletePeriod ? Number(lastMessageMetas.autoDeletePeriod) : null) : '') : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(LastMessageDescription, {
24348
24359
  poll: (lastMessage === null || lastMessage === void 0 ? void 0 : lastMessage.pollDetails) && (lastMessage === null || lastMessage === void 0 ? void 0 : lastMessage.type) === MESSAGE_TYPE.POLL
24349
24360
  }, 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({
24350
24361
  lastMessage: lastMessage
@@ -29573,7 +29584,7 @@ var Message = function Message(_ref) {
29573
29584
  return mem === user.id ? 'You' : " " + systemMessageUserName(mem, contactsMap[mem], message.mentionedUsers);
29574
29585
  })) + " " + (messageMetas && messageMetas.m && messageMetas.m.length > 5 ? "and " + (messageMetas.m.length - 5) + " more" : '') : message.body === 'RM' ? " removed " + (messageMetas && messageMetas.m && messageMetas.m.slice(0, 5).map(function (mem) {
29575
29586
  return mem === user.id ? 'You' : " " + systemMessageUserName(mem, contactsMap[mem], message.mentionedUsers);
29576
- })) + " " + (messageMetas && messageMetas.m && messageMetas.m.length > 5 ? "and " + (messageMetas.m.length - 5) + " more" : '') : message.body === 'LG' ? ' left the group' : message.body === 'JL' ? " joined via invite link" : message.body === 'ADM' && getEnableDisappearingMessages() ? !Number(messageMetas === null || messageMetas === void 0 ? void 0 : messageMetas.autoDeletePeriod) ? ' disabled disappearing messages' : " set disappearing message time to " + formatDisappearingMessageTime(messageMetas !== null && messageMetas !== void 0 && messageMetas.autoDeletePeriod ? Number(messageMetas.autoDeletePeriod) : null) : ''));
29587
+ })) + " " + (messageMetas && messageMetas.m && messageMetas.m.length > 5 ? "and " + (messageMetas.m.length - 5) + " more" : '') : message.body === 'LG' ? ' left the group' : message.body === 'JL' ? " joined via invite link" : message.body === 'ADM' ? !Number(messageMetas === null || messageMetas === void 0 ? void 0 : messageMetas.autoDeletePeriod) ? ' disabled disappearing messages' : " set the disappearing messages timer to " + formatDisappearingMessageTime(messageMetas !== null && messageMetas !== void 0 && messageMetas.autoDeletePeriod ? Number(messageMetas.autoDeletePeriod) : null) : ''));
29577
29588
  };
29578
29589
  var SystemMessage = /*#__PURE__*/React__default.memo(Message, function (prevProps, nextProps) {
29579
29590
  return prevProps.message.deliveryStatus === nextProps.message.deliveryStatus && prevProps.message.state === nextProps.message.state && prevProps.message.userMarkers === nextProps.message.userMarkers && prevProps.nextMessage === nextProps.nextMessage && prevProps.connectionStatus === nextProps.connectionStatus && prevProps.tabIsActive === nextProps.tabIsActive;
@@ -38733,7 +38744,7 @@ var MessageList = function MessageList(_ref2) {
38733
38744
  nextDisableRef.current = false;
38734
38745
  clearMessagesMap();
38735
38746
  removeAllMessages();
38736
- dispatch(getMessagesAC(channel));
38747
+ dispatch(getMessagesAC(channel, false, lastVisibleMessageId, 0, false, false, 'instant', false));
38737
38748
  }
38738
38749
  }, [connectionStatus]);
38739
38750
  useEffect(function () {
@@ -44282,7 +44293,7 @@ function DisappearingMessagesPopup(_ref) {
44282
44293
  var _useState = useState('off'),
44283
44294
  selectedOption = _useState[0],
44284
44295
  setSelectedOption = _useState[1];
44285
- var _useState2 = useState('2days'),
44296
+ var _useState2 = useState(''),
44286
44297
  customValue = _useState2[0],
44287
44298
  setCustomValue = _useState2[1];
44288
44299
  var _useState3 = useState(true),
@@ -44293,6 +44304,22 @@ function DisappearingMessagesPopup(_ref) {
44293
44304
  setDropdownOpen = _useState4[1];
44294
44305
  var previousTimerRef = useRef(currentTimer);
44295
44306
  var hasInitializedRef = useRef(false);
44307
+ var CUSTOM_OPTIONS = useMemo(function () {
44308
+ var _getDisappearingSetti;
44309
+ return ((_getDisappearingSetti = getDisappearingSettings()) === null || _getDisappearingSetti === void 0 ? void 0 : _getDisappearingSetti.customOptions) || [];
44310
+ }, []);
44311
+ useEffect(function () {
44312
+ var _CUSTOM_OPTIONS$;
44313
+ if (CUSTOM_OPTIONS.length > 0 && (_CUSTOM_OPTIONS$ = CUSTOM_OPTIONS[0]) !== null && _CUSTOM_OPTIONS$ !== void 0 && _CUSTOM_OPTIONS$.label) {
44314
+ var _CUSTOM_OPTIONS$2;
44315
+ setCustomValue(((_CUSTOM_OPTIONS$2 = CUSTOM_OPTIONS[0]) === null || _CUSTOM_OPTIONS$2 === void 0 ? void 0 : _CUSTOM_OPTIONS$2.label) || '');
44316
+ }
44317
+ }, [CUSTOM_OPTIONS]);
44318
+ var CUSTOM_SECONDS_MAP = useMemo(function () {
44319
+ return Object.fromEntries(CUSTOM_OPTIONS.map(function (o) {
44320
+ return [o.label, o.seconds];
44321
+ }));
44322
+ }, [CUSTOM_OPTIONS]);
44296
44323
  useEffect(function () {
44297
44324
  if (previousTimerRef.current !== currentTimer) {
44298
44325
  setInitialRender(true);
@@ -44303,16 +44330,16 @@ function DisappearingMessagesPopup(_ref) {
44303
44330
  setSelectedOption('off');
44304
44331
  } else {
44305
44332
  var fixedMatch = Object.keys(FIXED_TIMER_OPTIONS).find(function (key) {
44306
- return FIXED_TIMER_OPTIONS[key] === currentTimer;
44333
+ return (FIXED_TIMER_OPTIONS[key] || 0) * 1000 === currentTimer;
44307
44334
  });
44308
44335
  if (fixedMatch) {
44309
44336
  setSelectedOption(fixedMatch);
44310
44337
  } else {
44311
44338
  var customMatch = CUSTOM_OPTIONS.find(function (o) {
44312
- return o.seconds === currentTimer;
44339
+ return o.seconds * 1000 === currentTimer;
44313
44340
  });
44314
44341
  setSelectedOption('custom');
44315
- setCustomValue((customMatch === null || customMatch === void 0 ? void 0 : customMatch.value) || '2days');
44342
+ setCustomValue((customMatch === null || customMatch === void 0 ? void 0 : customMatch.label) || '2days');
44316
44343
  }
44317
44344
  }
44318
44345
  }, [currentTimer]);
@@ -44327,9 +44354,12 @@ function DisappearingMessagesPopup(_ref) {
44327
44354
  }, [selectedOption, customValue]);
44328
44355
  var isValueUnchanged = useMemo(function () {
44329
44356
  if (initialRender) return true;
44330
- var normalizedCurrent = currentTimer === 0 ? null : currentTimer != null ? currentTimer : null;
44331
- var normalizedSelected = selectedTimerValue === 0 ? null : selectedTimerValue != null ? selectedTimerValue : null;
44332
- return normalizedCurrent === normalizedSelected;
44357
+ if (!selectedTimerValue && !selectedTimerValue) {
44358
+ return true;
44359
+ } else if (selectedTimerValue * 1000 === currentTimer) {
44360
+ return true;
44361
+ }
44362
+ return false;
44333
44363
  }, [currentTimer, selectedTimerValue, initialRender]);
44334
44364
  var handleSet = useCallback(function () {
44335
44365
  if (selectedOption === 'custom') {
@@ -44342,9 +44372,9 @@ function DisappearingMessagesPopup(_ref) {
44342
44372
  var selectedCustomLabel = useMemo(function () {
44343
44373
  var _CUSTOM_OPTIONS$find;
44344
44374
  return ((_CUSTOM_OPTIONS$find = CUSTOM_OPTIONS.find(function (o) {
44345
- return o.value === customValue;
44375
+ return o.label === customValue;
44346
44376
  })) === null || _CUSTOM_OPTIONS$find === void 0 ? void 0 : _CUSTOM_OPTIONS$find.label) || '2 days';
44347
- }, [customValue]);
44377
+ }, [customValue, CUSTOM_OPTIONS]);
44348
44378
  return /*#__PURE__*/React__default.createElement(PopupContainer, null, /*#__PURE__*/React__default.createElement(Popup, {
44349
44379
  theme: theme,
44350
44380
  backgroundColor: background,
@@ -44390,7 +44420,7 @@ function DisappearingMessagesPopup(_ref) {
44390
44420
  borderRadius: '4px',
44391
44421
  variant: 'checkbox'
44392
44422
  }), option.label);
44393
- }), /*#__PURE__*/React__default.createElement(TimerOptionItem, {
44423
+ }), CUSTOM_OPTIONS.length > 0 && (/*#__PURE__*/React__default.createElement(TimerOptionItem, {
44394
44424
  color: textPrimary,
44395
44425
  onClick: function onClick() {
44396
44426
  return setSelectedOption('custom');
@@ -44406,7 +44436,7 @@ function DisappearingMessagesPopup(_ref) {
44406
44436
  borderColor: iconInactive,
44407
44437
  borderRadius: '4px',
44408
44438
  variant: 'checkbox'
44409
- }), "Custom"), selectedOption === 'custom' && (/*#__PURE__*/React__default.createElement(CustomTimerSection, null, /*#__PURE__*/React__default.createElement(Label, {
44439
+ }), "Custom")), selectedOption === 'custom' && (/*#__PURE__*/React__default.createElement(CustomTimerSection, null, /*#__PURE__*/React__default.createElement(Label, {
44410
44440
  color: textPrimary,
44411
44441
  marginTop: '0'
44412
44442
  }, "Auto-delete after"), /*#__PURE__*/React__default.createElement(CustomSelectWrapper, {
@@ -44435,9 +44465,9 @@ function DisappearingMessagesPopup(_ref) {
44435
44465
  }, CUSTOM_OPTIONS.map(function (o) {
44436
44466
  return /*#__PURE__*/React__default.createElement(CustomDropdownOptionLi, {
44437
44467
  hoverBackground: backgroundHovered,
44438
- key: o.value,
44468
+ key: o.label,
44439
44469
  onClick: function onClick() {
44440
- return setCustomValue(o.value);
44470
+ return setCustomValue(o.label);
44441
44471
  },
44442
44472
  textColor: textPrimary
44443
44473
  }, o.label);
@@ -44476,6 +44506,7 @@ var SetButton = styled(Button)(_templateObject8$n || (_templateObject8$n = _tagg
44476
44506
 
44477
44507
  var _templateObject$T, _templateObject2$O, _templateObject3$H, _templateObject4$B, _templateObject5$w, _templateObject6$s, _templateObject7$r, _templateObject8$o, _templateObject9$k, _templateObject0$i, _templateObject1$f, _templateObject10$9, _templateObject11$7, _templateObject12$6, _templateObject13$4, _templateObject14$3, _templateObject15$3, _templateObject16$3, _templateObject17$3, _templateObject18$3, _templateObject19$3, _templateObject20$3;
44478
44508
  var Actions = function Actions(_ref) {
44509
+ var _getDisappearingSetti;
44479
44510
  var setActionsHeight = _ref.setActionsHeight,
44480
44511
  channel = _ref.channel,
44481
44512
  actionMenuOpen = _ref.actionMenuOpen,
@@ -44784,7 +44815,7 @@ var Actions = function Actions(_ref) {
44784
44815
  color: staredMessagesTextColor || textPrimary,
44785
44816
  hoverColor: staredMessagesTextColor || textPrimary,
44786
44817
  fontSize: actionItemsFontSize
44787
- }, /*#__PURE__*/React__default.createElement(React__default.Fragment, null, staredMessagesIcon || /*#__PURE__*/React__default.createElement(DefaultStarIcon, null), " Starred messages "))), getEnableDisappearingMessages() && !channel.isMockChannel && canToggleDisappearingMessages && (isDirectChannel && directChannelUser ? directChannelUser.state !== USER_STATE.DELETED : true) && (/*#__PURE__*/React__default.createElement(ActionItem, {
44818
+ }, /*#__PURE__*/React__default.createElement(React__default.Fragment, null, staredMessagesIcon || /*#__PURE__*/React__default.createElement(DefaultStarIcon, null), " Starred messages "))), ((_getDisappearingSetti = getDisappearingSettings()) === null || _getDisappearingSetti === void 0 ? void 0 : _getDisappearingSetti.show) && !channel.isMockChannel && canToggleDisappearingMessages && (isDirectChannel && directChannelUser ? directChannelUser.state !== USER_STATE.DELETED : true) && (/*#__PURE__*/React__default.createElement(ActionItem, {
44788
44819
  key: 1.5,
44789
44820
  onClick: handleToggleDisappearingMessagesPopup,
44790
44821
  iconColor: iconPrimary,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sceyt-chat-react-uikit",
3
- "version": "1.7.7-beta.15",
3
+ "version": "1.7.7-beta.16",
4
4
  "description": "Interactive React UI Components for Sceyt Chat.",
5
5
  "author": "Sceyt",
6
6
  "license": "MIT",