stream-chat-react 11.13.1 → 11.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/dist/{Window-44a85f63.js → Window-847d5d88.js} +13943 -397
  2. package/dist/browser.full-bundle.js +17317 -3876
  3. package/dist/browser.full-bundle.js.map +1 -1
  4. package/dist/browser.full-bundle.min.js +4 -4
  5. package/dist/browser.full-bundle.min.js.map +1 -1
  6. package/dist/components/Attachment/Audio.d.ts.map +1 -1
  7. package/dist/components/Attachment/Audio.js +7 -4
  8. package/dist/components/Attachment/Card.d.ts +1 -1
  9. package/dist/components/Attachment/Card.d.ts.map +1 -1
  10. package/dist/components/Attachment/Card.js +4 -2
  11. package/dist/components/Attachment/VoiceRecording.d.ts.map +1 -1
  12. package/dist/components/Attachment/VoiceRecording.js +6 -4
  13. package/dist/components/Attachment/audioSampling.d.ts +10 -0
  14. package/dist/components/Attachment/audioSampling.d.ts.map +1 -0
  15. package/dist/components/Attachment/audioSampling.js +83 -0
  16. package/dist/components/Attachment/components/FileSizeIndicator.js +2 -2
  17. package/dist/components/Attachment/components/WaveProgressBar.d.ts +3 -10
  18. package/dist/components/Attachment/components/WaveProgressBar.d.ts.map +1 -1
  19. package/dist/components/Attachment/components/WaveProgressBar.js +23 -90
  20. package/dist/components/Attachment/hooks/useAudioController.d.ts +11 -3
  21. package/dist/components/Attachment/hooks/useAudioController.d.ts.map +1 -1
  22. package/dist/components/Attachment/hooks/useAudioController.js +89 -26
  23. package/dist/components/Attachment/index.d.ts +1 -0
  24. package/dist/components/Attachment/index.d.ts.map +1 -1
  25. package/dist/components/Attachment/index.js +1 -0
  26. package/dist/components/Attachment/utils.d.ts +5 -3
  27. package/dist/components/Attachment/utils.d.ts.map +1 -1
  28. package/dist/components/Attachment/utils.js +1 -0
  29. package/dist/components/Channel/Channel.d.ts +5 -1
  30. package/dist/components/Channel/Channel.d.ts.map +1 -1
  31. package/dist/components/Channel/Channel.js +2 -0
  32. package/dist/components/ChannelSearch/SearchResults.d.ts +2 -2
  33. package/dist/components/ChannelSearch/SearchResults.d.ts.map +1 -1
  34. package/dist/components/ChannelSearch/SearchResults.js +1 -1
  35. package/dist/components/ChannelSearch/hooks/useChannelSearch.d.ts +1 -1
  36. package/dist/components/ChannelSearch/hooks/useChannelSearch.d.ts.map +1 -1
  37. package/dist/components/ChannelSearch/hooks/useChannelSearch.js +1 -1
  38. package/dist/components/Emojis/EmojiPicker.d.ts +2 -2
  39. package/dist/components/Emojis/index.cjs.js +2 -3
  40. package/dist/components/MediaRecorder/AudioRecorder/AudioRecorder.d.ts +3 -0
  41. package/dist/components/MediaRecorder/AudioRecorder/AudioRecorder.d.ts.map +1 -0
  42. package/dist/components/MediaRecorder/AudioRecorder/AudioRecorder.js +24 -0
  43. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingButtons.d.ts +4 -0
  44. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingButtons.d.ts.map +1 -0
  45. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingButtons.js +5 -0
  46. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingInProgress.d.ts +3 -0
  47. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingInProgress.d.ts.map +1 -0
  48. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingInProgress.js +47 -0
  49. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingPreview.d.ts +8 -0
  50. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingPreview.d.ts.map +1 -0
  51. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingPreview.js +21 -0
  52. package/dist/components/MediaRecorder/AudioRecorder/RecordingTimer.d.ts +6 -0
  53. package/dist/components/MediaRecorder/AudioRecorder/RecordingTimer.d.ts.map +1 -0
  54. package/dist/components/MediaRecorder/AudioRecorder/RecordingTimer.js +9 -0
  55. package/dist/components/MediaRecorder/AudioRecorder/index.d.ts +4 -0
  56. package/dist/components/MediaRecorder/AudioRecorder/index.d.ts.map +1 -0
  57. package/dist/components/MediaRecorder/AudioRecorder/index.js +3 -0
  58. package/dist/components/MediaRecorder/RecordingPermissionDeniedNotification.d.ts +8 -0
  59. package/dist/components/MediaRecorder/RecordingPermissionDeniedNotification.d.ts.map +1 -0
  60. package/dist/components/MediaRecorder/RecordingPermissionDeniedNotification.js +21 -0
  61. package/dist/components/MediaRecorder/classes/AmplitudeRecorder.d.ts +55 -0
  62. package/dist/components/MediaRecorder/classes/AmplitudeRecorder.d.ts.map +1 -0
  63. package/dist/components/MediaRecorder/classes/AmplitudeRecorder.js +93 -0
  64. package/dist/components/MediaRecorder/classes/BrowserPermission.d.ts +23 -0
  65. package/dist/components/MediaRecorder/classes/BrowserPermission.d.ts.map +1 -0
  66. package/dist/components/MediaRecorder/classes/BrowserPermission.js +98 -0
  67. package/dist/components/MediaRecorder/classes/MediaRecorderController.d.ts +83 -0
  68. package/dist/components/MediaRecorder/classes/MediaRecorderController.d.ts.map +1 -0
  69. package/dist/components/MediaRecorder/classes/MediaRecorderController.js +313 -0
  70. package/dist/components/MediaRecorder/classes/index.d.ts +4 -0
  71. package/dist/components/MediaRecorder/classes/index.d.ts.map +1 -0
  72. package/dist/components/MediaRecorder/classes/index.js +2 -0
  73. package/dist/components/MediaRecorder/hooks/index.d.ts +2 -0
  74. package/dist/components/MediaRecorder/hooks/index.d.ts.map +1 -0
  75. package/dist/components/MediaRecorder/hooks/index.js +1 -0
  76. package/dist/components/MediaRecorder/hooks/useMediaRecorder.d.ts +20 -0
  77. package/dist/components/MediaRecorder/hooks/useMediaRecorder.d.ts.map +1 -0
  78. package/dist/components/MediaRecorder/hooks/useMediaRecorder.js +73 -0
  79. package/dist/components/MediaRecorder/index.d.ts +6 -0
  80. package/dist/components/MediaRecorder/index.d.ts.map +1 -0
  81. package/dist/components/MediaRecorder/index.js +5 -0
  82. package/dist/components/MediaRecorder/observable/BehaviorSubject.d.ts +11 -0
  83. package/dist/components/MediaRecorder/observable/BehaviorSubject.d.ts.map +1 -0
  84. package/dist/components/MediaRecorder/observable/BehaviorSubject.js +34 -0
  85. package/dist/components/MediaRecorder/observable/Observable.d.ts +18 -0
  86. package/dist/components/MediaRecorder/observable/Observable.d.ts.map +1 -0
  87. package/dist/components/MediaRecorder/observable/Observable.js +29 -0
  88. package/dist/components/MediaRecorder/observable/Observer.d.ts +10 -0
  89. package/dist/components/MediaRecorder/observable/Observer.d.ts.map +1 -0
  90. package/dist/components/MediaRecorder/observable/Observer.js +3 -0
  91. package/dist/components/MediaRecorder/observable/Subject.d.ts +16 -0
  92. package/dist/components/MediaRecorder/observable/Subject.d.ts.map +1 -0
  93. package/dist/components/MediaRecorder/observable/Subject.js +70 -0
  94. package/dist/components/MediaRecorder/observable/Subscription.d.ts +11 -0
  95. package/dist/components/MediaRecorder/observable/Subscription.d.ts.map +1 -0
  96. package/dist/components/MediaRecorder/observable/Subscription.js +13 -0
  97. package/dist/components/MediaRecorder/observable/index.d.ts +6 -0
  98. package/dist/components/MediaRecorder/observable/index.d.ts.map +1 -0
  99. package/dist/components/MediaRecorder/observable/index.js +5 -0
  100. package/dist/components/MediaRecorder/transcode/audioProcessing.d.ts +16 -0
  101. package/dist/components/MediaRecorder/transcode/audioProcessing.d.ts.map +1 -0
  102. package/dist/components/MediaRecorder/transcode/audioProcessing.js +51 -0
  103. package/dist/components/MediaRecorder/transcode/index.d.ts +8 -0
  104. package/dist/components/MediaRecorder/transcode/index.d.ts.map +1 -0
  105. package/dist/components/MediaRecorder/transcode/index.js +18 -0
  106. package/dist/components/MediaRecorder/transcode/mp3.d.ts +2 -0
  107. package/dist/components/MediaRecorder/transcode/mp3.d.ts.map +1 -0
  108. package/dist/components/MediaRecorder/transcode/mp3.js +53 -0
  109. package/dist/components/MediaRecorder/transcode/wav.d.ts +8 -0
  110. package/dist/components/MediaRecorder/transcode/wav.d.ts.map +1 -0
  111. package/dist/components/MediaRecorder/transcode/wav.js +117 -0
  112. package/dist/components/Message/MessageSimple.d.ts.map +1 -1
  113. package/dist/components/Message/MessageSimple.js +3 -2
  114. package/dist/components/MessageInput/AttachmentPreviewList.d.ts +2 -1
  115. package/dist/components/MessageInput/AttachmentPreviewList.d.ts.map +1 -1
  116. package/dist/components/MessageInput/AttachmentPreviewList.js +66 -20
  117. package/dist/components/MessageInput/CooldownTimer.d.ts.map +1 -1
  118. package/dist/components/MessageInput/CooldownTimer.js +4 -17
  119. package/dist/components/MessageInput/MessageInput.d.ts +10 -0
  120. package/dist/components/MessageInput/MessageInput.d.ts.map +1 -1
  121. package/dist/components/MessageInput/MessageInputFlat.d.ts.map +1 -1
  122. package/dist/components/MessageInput/MessageInputFlat.js +31 -9
  123. package/dist/components/MessageInput/MessageInputSmall.d.ts.map +1 -1
  124. package/dist/components/MessageInput/MessageInputSmall.js +3 -2
  125. package/dist/components/MessageInput/SendButton.d.ts +8 -0
  126. package/dist/components/MessageInput/SendButton.d.ts.map +1 -0
  127. package/dist/components/MessageInput/SendButton.js +9 -0
  128. package/dist/components/MessageInput/hooks/useAttachments.d.ts +5 -2
  129. package/dist/components/MessageInput/hooks/useAttachments.d.ts.map +1 -1
  130. package/dist/components/MessageInput/hooks/useAttachments.js +87 -3
  131. package/dist/components/MessageInput/hooks/useCreateMessageInputContext.d.ts.map +1 -1
  132. package/dist/components/MessageInput/hooks/useCreateMessageInputContext.js +12 -2
  133. package/dist/components/MessageInput/hooks/useMessageInputState.d.ts +22 -7
  134. package/dist/components/MessageInput/hooks/useMessageInputState.d.ts.map +1 -1
  135. package/dist/components/MessageInput/hooks/useMessageInputState.js +31 -5
  136. package/dist/components/MessageInput/hooks/useSubmitHandler.d.ts +2 -2
  137. package/dist/components/MessageInput/hooks/useSubmitHandler.d.ts.map +1 -1
  138. package/dist/components/MessageInput/hooks/useSubmitHandler.js +15 -6
  139. package/dist/components/MessageInput/hooks/useTimeElapsed.d.ts +10 -0
  140. package/dist/components/MessageInput/hooks/useTimeElapsed.d.ts.map +1 -0
  141. package/dist/components/MessageInput/hooks/useTimeElapsed.js +30 -0
  142. package/dist/components/MessageInput/hooks/useTimer.d.ts +4 -0
  143. package/dist/components/MessageInput/hooks/useTimer.d.ts.map +1 -0
  144. package/dist/components/MessageInput/hooks/useTimer.js +20 -0
  145. package/dist/components/MessageInput/hooks/utils.d.ts +1 -0
  146. package/dist/components/MessageInput/hooks/utils.d.ts.map +1 -1
  147. package/dist/components/MessageInput/hooks/utils.js +24 -7
  148. package/dist/components/MessageInput/icons.d.ts +5 -6
  149. package/dist/components/MessageInput/icons.d.ts.map +1 -1
  150. package/dist/components/MessageInput/icons.js +13 -10
  151. package/dist/components/MessageInput/index.d.ts +1 -0
  152. package/dist/components/MessageInput/index.d.ts.map +1 -1
  153. package/dist/components/MessageInput/index.js +1 -0
  154. package/dist/components/MessageInput/types.d.ts +36 -1
  155. package/dist/components/MessageInput/types.d.ts.map +1 -1
  156. package/dist/components/ReactFileUtilities/types.d.ts +1 -0
  157. package/dist/components/ReactFileUtilities/types.d.ts.map +1 -1
  158. package/dist/components/ReactFileUtilities/utils.d.ts +9 -1
  159. package/dist/components/ReactFileUtilities/utils.d.ts.map +1 -1
  160. package/dist/components/ReactFileUtilities/utils.js +25 -0
  161. package/dist/components/Reactions/utils/utils.d.ts +2 -1
  162. package/dist/components/Reactions/utils/utils.d.ts.map +1 -1
  163. package/dist/components/index.d.ts +1 -0
  164. package/dist/components/index.d.ts.map +1 -1
  165. package/dist/components/index.js +1 -0
  166. package/dist/constants/limits.d.ts +1 -0
  167. package/dist/constants/limits.d.ts.map +1 -1
  168. package/dist/constants/limits.js +1 -0
  169. package/dist/context/ComponentContext.d.ts +7 -4
  170. package/dist/context/ComponentContext.d.ts.map +1 -1
  171. package/dist/context/MessageInputContext.d.ts +4 -1
  172. package/dist/context/MessageInputContext.d.ts.map +1 -1
  173. package/dist/css/v2/index.css +3 -1
  174. package/dist/css/v2/index.layout.css +3 -1
  175. package/dist/i18n/Streami18n.d.ts +14 -0
  176. package/dist/i18n/Streami18n.d.ts.map +1 -1
  177. package/dist/i18n/de.json +14 -0
  178. package/dist/i18n/en.json +14 -0
  179. package/dist/i18n/es.json +14 -0
  180. package/dist/i18n/fr.json +14 -0
  181. package/dist/i18n/hi.json +14 -0
  182. package/dist/i18n/it.json +14 -0
  183. package/dist/i18n/ja.json +14 -0
  184. package/dist/i18n/ko.json +14 -0
  185. package/dist/i18n/nl.json +14 -0
  186. package/dist/i18n/pt.json +14 -0
  187. package/dist/i18n/ru.json +14 -0
  188. package/dist/i18n/tr.json +14 -0
  189. package/dist/index.cjs.js +22 -4
  190. package/dist/scss/v2/AttachmentList/AttachmentList-layout.scss +56 -8
  191. package/dist/scss/v2/AttachmentList/AttachmentList-theme.scss +22 -4
  192. package/dist/scss/v2/ImageCarousel/ImageCarousel-layout.scss +11 -2
  193. package/dist/scss/v2/ImageCarousel/ImageCarousel-theme.scss +14 -0
  194. package/dist/scss/v2/_global-theme-variables.scss +13 -13
  195. package/dist/utils/mergeDeep.d.ts +4 -0
  196. package/dist/utils/mergeDeep.d.ts.map +1 -0
  197. package/dist/utils/mergeDeep.js +5 -0
  198. package/dist/version.d.ts +1 -1
  199. package/dist/version.js +1 -1
  200. package/package.json +6 -3
  201. package/dist/components/MessageInput/hooks/useFileState.d.ts +0 -7
  202. package/dist/components/MessageInput/hooks/useFileState.d.ts.map +0 -1
  203. package/dist/components/MessageInput/hooks/useFileState.js +0 -8
package/dist/index.cjs.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Window = require('./Window-44a85f63.js');
5
+ var Window = require('./Window-847d5d88.js');
6
6
  var React = require('react');
7
7
  var streamChat = require('stream-chat');
8
8
  var throttle = require('lodash.throttle');
@@ -10,6 +10,7 @@ require('emoji-regex');
10
10
  require('linkifyjs');
11
11
  require('lodash.uniqby');
12
12
  var reactVirtuoso = require('react-virtuoso');
13
+ require('react-player');
13
14
  require('@braintree/sanitize-url');
14
15
  require('react-image-gallery');
15
16
  require('react-dom');
@@ -36,8 +37,6 @@ require('dayjs/locale/pt');
36
37
  require('dayjs/locale/ru');
37
38
  require('dayjs/locale/tr');
38
39
  require('dayjs/locale/en');
39
- require('react-player');
40
- require('pretty-bytes');
41
40
  require('prop-types');
42
41
  require('@babel/runtime/helpers/extends');
43
42
  require('@babel/runtime/helpers/defineProperty');
@@ -1345,7 +1344,7 @@ function VirtualizedMessageList(props) {
1345
1344
  return (React__default["default"].createElement(VirtualizedMessageListWithContext, Window.__assign({ channel: channel, channelUnreadUiState: channelUnreadUiState, hasMore: !!hasMore, hasMoreNewer: !!hasMoreNewer, highlightedMessageId: highlightedMessageId, jumpToLatestMessage: jumpToLatestMessage, loadingMore: !!loadingMore, loadingMoreNewer: !!loadingMoreNewer, loadMore: loadMore, loadMoreNewer: loadMoreNewer, messages: messages, notifications: notifications, read: read, suppressAutoscroll: suppressAutoscroll }, props)));
1346
1345
  }
1347
1346
 
1348
- var version = '11.13.1';
1347
+ var version = '11.15.0';
1349
1348
 
1350
1349
  var useChat = function (_a) {
1351
1350
  var _b, _c;
@@ -1687,9 +1686,11 @@ exports.AttachmentPreviewList = Window.AttachmentPreviewList;
1687
1686
  exports.AttachmentWithinContainer = Window.AttachmentWithinContainer;
1688
1687
  exports.Audio = Window.Audio;
1689
1688
  exports.AudioContainer = Window.AudioContainer;
1689
+ exports.AudioRecorder = Window.AudioRecorder;
1690
1690
  exports.AutoCompleteTextarea = Window.ReactTextareaAutocomplete;
1691
1691
  exports.Avatar = Window.Avatar;
1692
1692
  exports.BaseImage = Window.BaseImage;
1693
+ exports.BinIcon = Window.BinIcon;
1693
1694
  exports.Card = Window.Card;
1694
1695
  exports.CardAudio = Window.CardAudio;
1695
1696
  exports.CardContainer = Window.CardContainer;
@@ -1710,6 +1711,7 @@ exports.ChatAutoComplete = Window.ChatAutoComplete;
1710
1711
  exports.ChatContext = Window.ChatContext;
1711
1712
  exports.ChatDown = Window.ChatDown;
1712
1713
  exports.ChatProvider = Window.ChatProvider;
1714
+ exports.CheckSignIcon = Window.CheckSignIcon;
1713
1715
  exports.CloseIcon = Window.CloseIcon$1;
1714
1716
  exports.CommandItem = Window.CommandItem;
1715
1717
  exports.ComponentContext = Window.ComponentContext;
@@ -1760,6 +1762,10 @@ exports.MAX_QUERY_CHANNELS_LIMIT = Window.MAX_QUERY_CHANNELS_LIMIT;
1760
1762
  exports.MESSAGE_ACTIONS = Window.MESSAGE_ACTIONS;
1761
1763
  exports.MML = Window.MML;
1762
1764
  exports.MediaContainer = Window.MediaContainer;
1765
+ Object.defineProperty(exports, 'MediaRecordingState', {
1766
+ enumerable: true,
1767
+ get: function () { return Window.MediaRecordingState; }
1768
+ });
1763
1769
  exports.Message = Window.Message;
1764
1770
  exports.MessageActions = Window.MessageActions;
1765
1771
  exports.MessageActionsBox = Window.MessageActionsBox;
@@ -1786,12 +1792,15 @@ exports.MessageSimple = Window.MessageSimple;
1786
1792
  exports.MessageStatus = Window.MessageStatus;
1787
1793
  exports.MessageText = Window.MessageText;
1788
1794
  exports.MessageTimestamp = Window.MessageTimestamp;
1795
+ exports.MicIcon = Window.MicIcon;
1789
1796
  exports.Modal = Window.Modal;
1790
1797
  exports.ModalGallery = Window.ModalGallery;
1791
1798
  exports.NullComponent = Window.NullComponent;
1799
+ exports.PauseIcon = Window.PauseIcon;
1792
1800
  exports.PinIcon = Window.PinIcon;
1793
1801
  exports.PinIndicator = Window.PinIndicator;
1794
1802
  exports.PlayButton = Window.PlayButton;
1803
+ exports.PlayIcon = Window.PlayIcon;
1795
1804
  exports.PlaybackRateButton = Window.PlaybackRateButton;
1796
1805
  exports.PopperTooltip = Window.PopperTooltip;
1797
1806
  exports.ProgressBar = Window.ProgressBar;
@@ -1801,6 +1810,12 @@ exports.QuotedMessagePreviewHeader = Window.QuotedMessagePreviewHeader;
1801
1810
  exports.ReactionIcon = Window.ReactionIcon;
1802
1811
  exports.ReactionSelector = Window.ReactionSelector;
1803
1812
  exports.ReactionsList = Window.ReactionsList;
1813
+ Object.defineProperty(exports, 'RecordingPermission', {
1814
+ enumerable: true,
1815
+ get: function () { return Window.RecordingPermission; }
1816
+ });
1817
+ exports.RecordingPermissionDeniedNotification = Window.RecordingPermissionDeniedNotification;
1818
+ exports.RecordingTimer = Window.RecordingTimer;
1804
1819
  exports.ReplyIcon = Window.ReplyIcon;
1805
1820
  exports.RetryIcon = Window.RetryIcon;
1806
1821
  exports.SUPPORTED_VIDEO_FORMATS = Window.SUPPORTED_VIDEO_FORMATS;
@@ -1818,6 +1833,7 @@ Object.defineProperty(exports, 'SetLinkPreviewMode', {
1818
1833
  });
1819
1834
  exports.SimpleReactionsList = Window.SimpleReactionsList;
1820
1835
  exports.SpriteImage = Window.SpriteImage;
1836
+ exports.StartRecordingAudioButton = Window.StartRecordingAudioButton;
1821
1837
  exports.StreamEmoji = Window.StreamEmoji;
1822
1838
  exports.Streami18n = Window.Streami18n;
1823
1839
  exports.ThreadIcon = Window.ThreadIcon;
@@ -1884,6 +1900,7 @@ exports.isDayOrMoment = Window.isDayOrMoment;
1884
1900
  exports.isFileAttachment = Window.isFileAttachment;
1885
1901
  exports.isGalleryAttachmentType = Window.isGalleryAttachmentType;
1886
1902
  exports.isLanguageSupported = Window.isLanguageSupported;
1903
+ exports.isLocalAttachment = Window.isLocalAttachment;
1887
1904
  exports.isMediaAttachment = Window.isMediaAttachment;
1888
1905
  exports.isMessageBounced = Window.isMessageBounced;
1889
1906
  exports.isMessageEdited = Window.isMessageEdited;
@@ -1923,6 +1940,7 @@ exports.renderImage = Window.renderImage;
1923
1940
  exports.renderMedia = Window.renderMedia;
1924
1941
  exports.renderPreviewText = Window.renderPreviewText;
1925
1942
  exports.renderText = Window.renderText;
1943
+ exports.resampleWaveformData = Window.resampleWaveformData;
1926
1944
  exports.ruTranslations = Window.ruTranslations;
1927
1945
  exports.showMessageActionsBox = Window.showMessageActionsBox;
1928
1946
  exports.trTranslations = Window.trTranslations;
@@ -6,6 +6,12 @@
6
6
 
7
7
  /* The height of GIFs */
8
8
  --str-chat__gif-height: calc(var(--str-chat__spacing-px) * 200);
9
+
10
+ /* The width of the amplitude bar of the voice recording wave data */
11
+ --str-chat__voice-recording-amplitude-bar-width: 2px;
12
+
13
+ /* The gap between amplitudes of the wave data of a voice recording */
14
+ --str-chat__voice-recording-amplitude-bar-gap-width: var(--str-chat__spacing-px);
9
15
  }
10
16
 
11
17
  .str-chat__attachment-list {
@@ -346,7 +352,7 @@
346
352
  grid-template-columns: 36px auto 55px;
347
353
  align-items: center;
348
354
  justify-content: center;
349
- gap: calc(var(--str-chat__spacing-px) * 14);
355
+ gap: calc(var(--str-chat__spacing-px) * 9);
350
356
  padding: var(--str-chat__spacing-2);
351
357
  margin: var(--str-chat__attachment-margin);
352
358
 
@@ -357,6 +363,33 @@
357
363
  flex-direction: column;
358
364
  gap: var(--str-chat__spacing-2);
359
365
 
366
+ a {
367
+ cursor: pointer;
368
+ text-decoration: none;
369
+ }
370
+
371
+ .str-chat__message-attachment-voice-recording-widget--first-row {
372
+ @include utils.ellipsis-text-parent;
373
+
374
+ width: 100%;
375
+ display: flex;
376
+ align-items: center;
377
+ justify-content: space-between;
378
+ gap: var(--str-chat__spacing-1);
379
+ }
380
+
381
+ .str-chat__message-attachment__voice-recording-widget__title {
382
+ @include utils.ellipsis-text;
383
+ min-width: 0;
384
+ }
385
+
386
+ .str-chat__message-attachment-download-icon {
387
+ svg {
388
+ width: calc(var(--str-chat__spacing-px) * 24);
389
+ height: calc(var(--str-chat__spacing-px) * 16);
390
+ }
391
+ }
392
+
360
393
  .str-chat__message-attachment__voice-recording-widget__audio-state {
361
394
  display: flex;
362
395
  align-items: center;
@@ -364,6 +397,13 @@
364
397
  gap: var(--str-chat__spacing-1_5);
365
398
  height: 100%;
366
399
  }
400
+
401
+ .str-chat__message-attachment__voice-recording-widget__error-message {
402
+ display: flex;
403
+ align-items: center;
404
+ justify-content: start;
405
+ gap: var(--str-chat__spacing-1);
406
+ }
367
407
  }
368
408
 
369
409
  .str-chat__message-attachment__voice-recording-widget__right-section {
@@ -375,26 +415,33 @@
375
415
  width: calc(var(--str-chat__spacing-px) * 45);
376
416
  }
377
417
 
418
+ stream-voice-recording-wavebar {
419
+ flex: 1;
420
+ }
421
+
378
422
  .str-chat__wave-progress-bar__track {
379
423
  $min_amplitude_height: 2px;
380
424
  position: relative;
381
425
  flex: 1;
382
- width: 120px;
426
+ width: 100%;
383
427
  height: calc(var(--str-chat__spacing-px) * 25);
384
428
  display: flex;
385
429
  align-items: center;
386
- gap: var(--str-chat__spacing-px);
430
+ justify-content: space-between;
431
+ gap: var(--str-chat__voice-recording-amplitude-bar-gap-width);
387
432
 
388
433
  .str-chat__wave-progress-bar__amplitude-bar {
389
- width: 2px;
390
- min-width: 2px;
391
- height: calc(var(--str-chat__wave-progress-bar__amplitude-bar-height) + $min_amplitude_height); // variable set dynamically on element
434
+ width: var(--str-chat__voice-recording-amplitude-bar-width);
435
+ min-width: var(--str-chat__voice-recording-amplitude-bar-width);
436
+ height: calc(
437
+ var(--str-chat__wave-progress-bar__amplitude-bar-height) + #{$min_amplitude_height}
438
+ ); // variable set dynamically on element
392
439
  }
393
440
 
394
441
  .str-chat__wave-progress-bar__progress-indicator {
395
442
  position: absolute;
396
443
  left: 0;
397
- height: calc(100% + $min_amplitude_height + 2px);
444
+ height: calc(100% + #{$min_amplitude_height} + 2px);
398
445
  width: calc(var(--str-chat__spacing-px) * 6);
399
446
  }
400
447
  }
@@ -463,7 +510,8 @@
463
510
  }
464
511
 
465
512
  /* Angular has different UI here, the download icon is too small to use on mobile */
466
- .str-chat-angular__message-attachment-file-single {
513
+ .str-chat-angular__message-attachment-file-single
514
+ .str-chat__message-attachment-file--item-first-row {
467
515
  cursor: pointer;
468
516
  text-decoration: none;
469
517
  }
@@ -179,10 +179,14 @@
179
179
  --str-chat__voice-recording-attachment-widget-color: var(--str-chat__text-color);
180
180
 
181
181
  /* Border radius applied to audio recording widget */
182
- --str-chat__voice-recording-attachment-widget-secondary-color: var(--str-chat__text-low-emphasis-color);
182
+ --str-chat__voice-recording-attachment-widget-secondary-color: var(
183
+ --str-chat__text-low-emphasis-color
184
+ );
183
185
 
184
186
  /* The text/icon color for low emphasis texts (for example file size) in audio recording widget */
185
- --str-chat__voice-recording-attachment-widget-background-color: var(--str-chat__secondary-background-color);
187
+ --str-chat__voice-recording-attachment-widget-background-color: var(
188
+ --str-chat__secondary-background-color
189
+ );
186
190
 
187
191
  /* Top border of audio recording widget */
188
192
  --str-chat__voice-recording-attachment-widget-border-block-start: none;
@@ -346,7 +350,7 @@
346
350
  .str-chat__message-attachment-audio-widget--progress-track {
347
351
  background: linear-gradient(
348
352
  to right,
349
- var(--str-chat__primary-color) var(--str-chat__message-attachment-audio-widget-progress),
353
+ var(--str-chat__primary-color) var(--str-chat__message-attachment-audio-widget-progress),
350
354
  var(--str-chat__disabled-color) var(--str-chat__message-attachment-audio-widget-progress)
351
355
  );
352
356
  border-radius: calc(var(--str-chat__spacing-px) * 5);
@@ -365,6 +369,10 @@
365
369
  .str-chat__message-attachment__voice-recording-widget {
366
370
  @include utils.component-layer-overrides('voice-recording-attachment-widget');
367
371
 
372
+ a {
373
+ color: var(--str-chat__voice-recording-attachment-widget-color);
374
+ }
375
+
368
376
  .str-chat__message-attachment__voice-recording-widget__title {
369
377
  @include utils.ellipsis-text;
370
378
  font: var(--str-chat__subtitle-medium-text);
@@ -391,6 +399,11 @@
391
399
  border: 1px solid var(--str-chat__secondary-overlay-color);
392
400
  cursor: grab;
393
401
  }
402
+
403
+ .str-chat__message-attachment__voice-recording-widget__error-message {
404
+ font: var(--str-chat__body-text);
405
+ color: var(--str-chat__text-low-emphasis-color);
406
+ }
394
407
  }
395
408
 
396
409
  .str-chat__message_attachment__playback-rate-button {
@@ -468,4 +481,9 @@
468
481
  border-end-start-radius: 0;
469
482
  border-end-end-radius: 0;
470
483
  }
471
- }
484
+ }
485
+
486
+ .str-chat-angular__message-attachment-file-single
487
+ .str-chat__message-attachment-file--item-first-row {
488
+ color: var(--str-chat__attachment-list-color);
489
+ }
@@ -1,11 +1,13 @@
1
1
  .str-chat__image-carousel {
2
2
  display: flex;
3
- justify-content: center;
3
+ flex-direction: column;
4
+ justify-content: space-between;
4
5
  align-items: center;
5
6
  min-height: 0;
6
7
  min-width: 0;
7
8
  max-width: 100%;
8
9
  max-height: 100%;
10
+ height: 100%;
9
11
 
10
12
  .str-chat__image-carousel-stepper {
11
13
  padding: var(--str-chat__spacing-2_5);
@@ -15,11 +17,13 @@
15
17
  }
16
18
 
17
19
  .str-chat__image-carousel-image {
18
- object-fit: cover;
20
+ object-fit: contain;
19
21
  min-height: 0;
20
22
  max-height: 100%;
21
23
  min-width: 0;
22
24
  max-width: 100%;
25
+ height: 100%;
26
+ width: 100%;
23
27
  }
24
28
  }
25
29
 
@@ -29,6 +33,11 @@
29
33
  .str-chat__modal__inner {
30
34
  height: 80%;
31
35
  width: 80%;
36
+
37
+ @media only screen and (max-device-width: 768px) {
38
+ height: 100%;
39
+ width: 100%;
40
+ }
32
41
  }
33
42
  }
34
43
  }
@@ -6,8 +6,22 @@
6
6
  --str-chat__image-carousel-stepper-color: var(--str-chat__text-color);
7
7
  }
8
8
 
9
+ @media only screen and (max-device-width: 768px) {
10
+ .str-chat__message {
11
+ .str-chat__attachment-list {
12
+ .str-chat__modal--open {
13
+ .str-chat__modal__inner {
14
+ border-radius: 0;
15
+ }
16
+ }
17
+ }
18
+ }
19
+ }
20
+
9
21
  .str-chat__image-carousel {
10
22
  .str-chat__image-carousel-stepper {
23
+ cursor: pointer;
24
+
11
25
  svg path {
12
26
  fill: var(--str-chat__image-carousel-stepper-color);
13
27
  }
@@ -19,43 +19,43 @@
19
19
  Cantarell, Helvetica Neue, sans-serif;
20
20
 
21
21
  /* The font used for caption texts */
22
- --str-chat__caption-text: 0.75rem/1rem var(--str-chat__font-family);
22
+ --str-chat__caption-text: 0.75rem/1.3 var(--str-chat__font-family);
23
23
 
24
24
  /* The font used for caption texts with emphasize */
25
- --str-chat__caption-medium-text: 500 0.75rem/1rem var(--str-chat__font-family);
25
+ --str-chat__caption-medium-text: 500 0.75rem/1.3 var(--str-chat__font-family);
26
26
 
27
27
  /* The font used for caption texts with emphasize */
28
- --str-chat__caption-strong-text: 700 0.75rem/1rem var(--str-chat__font-family);
28
+ --str-chat__caption-strong-text: 700 0.75rem/1.3 var(--str-chat__font-family);
29
29
 
30
30
  /* The font used for body texts */
31
- --str-chat__body-text: 0.875rem/1rem var(--str-chat__font-family);
31
+ --str-chat__body-text: 0.875rem/1.2 var(--str-chat__font-family);
32
32
 
33
33
  /* The font used for body texts with emphasize */
34
- --str-chat__body-medium-text: 500 0.875rem/1rem var(--str-chat__font-family);
34
+ --str-chat__body-medium-text: 500 0.875rem/1.2 var(--str-chat__font-family);
35
35
 
36
36
  /* The font used for body texts */
37
- --str-chat__body2-text: 0.9375rem/1rem var(--str-chat__font-family);
37
+ --str-chat__body2-text: 0.9375rem/1.2 var(--str-chat__font-family);
38
38
 
39
39
  /* The font used for body texts with emphasize */
40
- --str-chat__body2-medium-text: 500 0.9375rem/1rem var(--str-chat__font-family);
40
+ --str-chat__body2-medium-text: 500 0.9375rem/1.2 var(--str-chat__font-family);
41
41
 
42
42
  /* The font used for subtitle texts */
43
- --str-chat__subtitle-text: 1rem/1.25rem var(--str-chat__font-family);
43
+ --str-chat__subtitle-text: 1rem/1.1.25 var(--str-chat__font-family);
44
44
 
45
45
  /* The font used for subtitle texts with emphasize */
46
- --str-chat__subtitle-medium-text: 500 1rem/1.25rem var(--str-chat__font-family);
46
+ --str-chat__subtitle-medium-text: 500 1rem/1.25 var(--str-chat__font-family);
47
47
 
48
48
  /* The font used for subtitle texts */
49
- --str-chat__subtitle2-text: 1.25rem/1.5rem var(--str-chat__font-family);
49
+ --str-chat__subtitle2-text: 1.25rem/1.2 var(--str-chat__font-family);
50
50
 
51
51
  /* The font used for subtitle texts with emphasize */
52
- --str-chat__subtitle2-medium-text: 500 1.25rem/1.5rem var(--str-chat__font-family);
52
+ --str-chat__subtitle2-medium-text: 500 1.25rem/1.2 var(--str-chat__font-family);
53
53
 
54
54
  /* The font used for headline texts */
55
- --str-chat__headline-text: 1.5rem/1.5rem var(--str-chat__font-family);
55
+ --str-chat__headline-text: 1.5rem/1.2 var(--str-chat__font-family);
56
56
 
57
57
  /* The font used for headline texts */
58
- --str-chat__headline2-text: 1.8rem/1.8rem var(--str-chat__font-family);
58
+ --str-chat__headline2-text: 1.8rem/1.2 var(--str-chat__font-family);
59
59
  }
60
60
 
61
61
  .str-chat,
@@ -0,0 +1,4 @@
1
+ import { UR } from 'stream-chat';
2
+ export declare const mergeDeep: <TObject extends UR, TSource extends UR>(target: TObject, source: TSource) => TObject & TSource;
3
+ export declare const mergeDeepUndefined: <TObject extends UR, TSource extends UR>(target: TObject, source: TSource) => TObject & TSource;
4
+ //# sourceMappingURL=mergeDeep.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeDeep.d.ts","sourceRoot":"","sources":["../../src/utils/mergeDeep.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAIjC,eAAO,MAAM,SAAS,iGAG8C,CAAC;AAIrE,eAAO,MAAM,kBAAkB,iGAGwC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import mergeWith from 'lodash.mergewith';
2
+ var overrideEverything = function (_, source) { return source; };
3
+ export var mergeDeep = function (target, source) { return mergeWith(target, source, overrideEverything); };
4
+ var overrideUndefinedOnly = function (object, source) { return object !== null && object !== void 0 ? object : source; };
5
+ export var mergeDeepUndefined = function (target, source) { return mergeWith(target, source, overrideUndefinedOnly); };
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "11.13.1";
1
+ export declare const version = "11.15.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export var version = '11.13.1';
1
+ export var version = '11.15.0';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stream-chat-react",
3
- "version": "11.13.1",
3
+ "version": "11.15.0",
4
4
  "description": "React components to create chat conversations or livestream style chat",
5
5
  "author": "GetStream",
6
6
  "homepage": "https://getstream.io/chat/",
@@ -61,21 +61,23 @@
61
61
  "dependencies": {
62
62
  "@babel/runtime": "^7.23.6",
63
63
  "@braintree/sanitize-url": "^6.0.4",
64
+ "@breezystack/lamejs": "^1.2.7",
64
65
  "@popperjs/core": "^2.11.5",
65
66
  "@react-aria/focus": "^3",
66
67
  "clsx": "^2.0.0",
67
68
  "dayjs": "^1.10.4",
68
69
  "emoji-regex": "^9.2.0",
70
+ "fix-webm-duration": "^1.0.5",
69
71
  "hast-util-find-and-replace": "^5.0.1",
70
72
  "i18next": "^21.6.14",
71
73
  "isomorphic-ws": "^4.0.1",
72
74
  "linkifyjs": "^4.1.0",
73
75
  "lodash.debounce": "^4.0.8",
74
76
  "lodash.defaultsdeep": "^4.6.1",
77
+ "lodash.mergewith": "^4.6.2",
75
78
  "lodash.throttle": "^4.1.1",
76
79
  "lodash.uniqby": "^4.7.0",
77
80
  "nanoid": "^3.3.4",
78
- "pretty-bytes": "^5.4.1",
79
81
  "prop-types": "^15.7.2",
80
82
  "react-dropzone": "^14.2.3",
81
83
  "react-fast-compare": "^3.2.2",
@@ -157,6 +159,7 @@
157
159
  "@types/linkifyjs": "^2.1.3",
158
160
  "@types/lodash.debounce": "^4.0.7",
159
161
  "@types/lodash.defaultsdeep": "^4.6.9",
162
+ "@types/lodash.mergewith": "^4.6.9",
160
163
  "@types/lodash.throttle": "^4.1.7",
161
164
  "@types/lodash.uniqby": "^4.7.7",
162
165
  "@types/moment": "^2.13.0",
@@ -223,7 +226,7 @@
223
226
  "rollup-plugin-url": "^3.0.1",
224
227
  "rollup-plugin-visualizer": "^4.2.0",
225
228
  "semantic-release": "^19.0.5",
226
- "stream-chat": "^8.21.0",
229
+ "stream-chat": "^8.25.1",
227
230
  "style-loader": "^2.0.0",
228
231
  "ts-jest": "^28.0.8",
229
232
  "typescript": "^4.7.4",
@@ -1,7 +0,0 @@
1
- import type { FileUpload } from '../types';
2
- export declare const useFileState: <T extends Pick<FileUpload, "state">>(file: T) => {
3
- failed: boolean;
4
- finished: boolean;
5
- uploading: boolean;
6
- };
7
- //# sourceMappingURL=useFileState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFileState.d.ts","sourceRoot":"","sources":["../../../../src/components/MessageInput/hooks/useFileState.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,eAAO,MAAM,YAAY;;;;CAQtB,CAAC"}
@@ -1,8 +0,0 @@
1
- import { useMemo } from 'react';
2
- export var useFileState = function (file) {
3
- return useMemo(function () { return ({
4
- failed: file.state === 'failed',
5
- finished: file.state === 'finished',
6
- uploading: file.state === 'uploading',
7
- }); }, [file.state]);
8
- };