stream-chat-react 11.14.0 → 11.15.1

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-64e7e4c0.js → Window-847d5d88.js} +13829 -299
  2. package/dist/browser.full-bundle.js +48811 -35270
  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/WaveProgressBar.d.ts +3 -10
  17. package/dist/components/Attachment/components/WaveProgressBar.d.ts.map +1 -1
  18. package/dist/components/Attachment/components/WaveProgressBar.js +23 -90
  19. package/dist/components/Attachment/hooks/useAudioController.d.ts +11 -3
  20. package/dist/components/Attachment/hooks/useAudioController.d.ts.map +1 -1
  21. package/dist/components/Attachment/hooks/useAudioController.js +89 -26
  22. package/dist/components/Attachment/index.d.ts +1 -0
  23. package/dist/components/Attachment/index.d.ts.map +1 -1
  24. package/dist/components/Attachment/index.js +1 -0
  25. package/dist/components/Attachment/utils.d.ts +5 -3
  26. package/dist/components/Attachment/utils.d.ts.map +1 -1
  27. package/dist/components/Attachment/utils.js +1 -0
  28. package/dist/components/Channel/Channel.d.ts +5 -1
  29. package/dist/components/Channel/Channel.d.ts.map +1 -1
  30. package/dist/components/Channel/Channel.js +2 -0
  31. package/dist/components/ChannelSearch/SearchResults.d.ts +2 -2
  32. package/dist/components/ChannelSearch/SearchResults.d.ts.map +1 -1
  33. package/dist/components/ChannelSearch/SearchResults.js +1 -1
  34. package/dist/components/ChannelSearch/hooks/useChannelSearch.d.ts +1 -1
  35. package/dist/components/ChannelSearch/hooks/useChannelSearch.d.ts.map +1 -1
  36. package/dist/components/ChannelSearch/hooks/useChannelSearch.js +1 -1
  37. package/dist/components/Emojis/EmojiPicker.d.ts +2 -2
  38. package/dist/components/Emojis/index.cjs.js +2 -2
  39. package/dist/components/MediaRecorder/AudioRecorder/AudioRecorder.d.ts +3 -0
  40. package/dist/components/MediaRecorder/AudioRecorder/AudioRecorder.d.ts.map +1 -0
  41. package/dist/components/MediaRecorder/AudioRecorder/AudioRecorder.js +24 -0
  42. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingButtons.d.ts +4 -0
  43. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingButtons.d.ts.map +1 -0
  44. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingButtons.js +5 -0
  45. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingInProgress.d.ts +3 -0
  46. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingInProgress.d.ts.map +1 -0
  47. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingInProgress.js +47 -0
  48. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingPreview.d.ts +8 -0
  49. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingPreview.d.ts.map +1 -0
  50. package/dist/components/MediaRecorder/AudioRecorder/AudioRecordingPreview.js +21 -0
  51. package/dist/components/MediaRecorder/AudioRecorder/RecordingTimer.d.ts +6 -0
  52. package/dist/components/MediaRecorder/AudioRecorder/RecordingTimer.d.ts.map +1 -0
  53. package/dist/components/MediaRecorder/AudioRecorder/RecordingTimer.js +9 -0
  54. package/dist/components/MediaRecorder/AudioRecorder/index.d.ts +4 -0
  55. package/dist/components/MediaRecorder/AudioRecorder/index.d.ts.map +1 -0
  56. package/dist/components/MediaRecorder/AudioRecorder/index.js +3 -0
  57. package/dist/components/MediaRecorder/RecordingPermissionDeniedNotification.d.ts +8 -0
  58. package/dist/components/MediaRecorder/RecordingPermissionDeniedNotification.d.ts.map +1 -0
  59. package/dist/components/MediaRecorder/RecordingPermissionDeniedNotification.js +21 -0
  60. package/dist/components/MediaRecorder/classes/AmplitudeRecorder.d.ts +55 -0
  61. package/dist/components/MediaRecorder/classes/AmplitudeRecorder.d.ts.map +1 -0
  62. package/dist/components/MediaRecorder/classes/AmplitudeRecorder.js +93 -0
  63. package/dist/components/MediaRecorder/classes/BrowserPermission.d.ts +23 -0
  64. package/dist/components/MediaRecorder/classes/BrowserPermission.d.ts.map +1 -0
  65. package/dist/components/MediaRecorder/classes/BrowserPermission.js +98 -0
  66. package/dist/components/MediaRecorder/classes/MediaRecorderController.d.ts +83 -0
  67. package/dist/components/MediaRecorder/classes/MediaRecorderController.d.ts.map +1 -0
  68. package/dist/components/MediaRecorder/classes/MediaRecorderController.js +313 -0
  69. package/dist/components/MediaRecorder/classes/index.d.ts +4 -0
  70. package/dist/components/MediaRecorder/classes/index.d.ts.map +1 -0
  71. package/dist/components/MediaRecorder/classes/index.js +2 -0
  72. package/dist/components/MediaRecorder/hooks/index.d.ts +2 -0
  73. package/dist/components/MediaRecorder/hooks/index.d.ts.map +1 -0
  74. package/dist/components/MediaRecorder/hooks/index.js +1 -0
  75. package/dist/components/MediaRecorder/hooks/useMediaRecorder.d.ts +20 -0
  76. package/dist/components/MediaRecorder/hooks/useMediaRecorder.d.ts.map +1 -0
  77. package/dist/components/MediaRecorder/hooks/useMediaRecorder.js +73 -0
  78. package/dist/components/MediaRecorder/index.d.ts +6 -0
  79. package/dist/components/MediaRecorder/index.d.ts.map +1 -0
  80. package/dist/components/MediaRecorder/index.js +5 -0
  81. package/dist/components/MediaRecorder/observable/BehaviorSubject.d.ts +11 -0
  82. package/dist/components/MediaRecorder/observable/BehaviorSubject.d.ts.map +1 -0
  83. package/dist/components/MediaRecorder/observable/BehaviorSubject.js +34 -0
  84. package/dist/components/MediaRecorder/observable/Observable.d.ts +18 -0
  85. package/dist/components/MediaRecorder/observable/Observable.d.ts.map +1 -0
  86. package/dist/components/MediaRecorder/observable/Observable.js +29 -0
  87. package/dist/components/MediaRecorder/observable/Observer.d.ts +10 -0
  88. package/dist/components/MediaRecorder/observable/Observer.d.ts.map +1 -0
  89. package/dist/components/MediaRecorder/observable/Observer.js +3 -0
  90. package/dist/components/MediaRecorder/observable/Subject.d.ts +16 -0
  91. package/dist/components/MediaRecorder/observable/Subject.d.ts.map +1 -0
  92. package/dist/components/MediaRecorder/observable/Subject.js +70 -0
  93. package/dist/components/MediaRecorder/observable/Subscription.d.ts +11 -0
  94. package/dist/components/MediaRecorder/observable/Subscription.d.ts.map +1 -0
  95. package/dist/components/MediaRecorder/observable/Subscription.js +13 -0
  96. package/dist/components/MediaRecorder/observable/index.d.ts +6 -0
  97. package/dist/components/MediaRecorder/observable/index.d.ts.map +1 -0
  98. package/dist/components/MediaRecorder/observable/index.js +5 -0
  99. package/dist/components/MediaRecorder/transcode/audioProcessing.d.ts +16 -0
  100. package/dist/components/MediaRecorder/transcode/audioProcessing.d.ts.map +1 -0
  101. package/dist/components/MediaRecorder/transcode/audioProcessing.js +51 -0
  102. package/dist/components/MediaRecorder/transcode/index.d.ts +8 -0
  103. package/dist/components/MediaRecorder/transcode/index.d.ts.map +1 -0
  104. package/dist/components/MediaRecorder/transcode/index.js +18 -0
  105. package/dist/components/MediaRecorder/transcode/mp3.d.ts +2 -0
  106. package/dist/components/MediaRecorder/transcode/mp3.d.ts.map +1 -0
  107. package/dist/components/MediaRecorder/transcode/mp3.js +53 -0
  108. package/dist/components/MediaRecorder/transcode/wav.d.ts +8 -0
  109. package/dist/components/MediaRecorder/transcode/wav.d.ts.map +1 -0
  110. package/dist/components/MediaRecorder/transcode/wav.js +117 -0
  111. package/dist/components/MessageInput/AttachmentPreviewList.d.ts +2 -1
  112. package/dist/components/MessageInput/AttachmentPreviewList.d.ts.map +1 -1
  113. package/dist/components/MessageInput/AttachmentPreviewList.js +66 -20
  114. package/dist/components/MessageInput/CooldownTimer.d.ts.map +1 -1
  115. package/dist/components/MessageInput/CooldownTimer.js +4 -17
  116. package/dist/components/MessageInput/MessageInput.d.ts +10 -0
  117. package/dist/components/MessageInput/MessageInput.d.ts.map +1 -1
  118. package/dist/components/MessageInput/MessageInputFlat.d.ts.map +1 -1
  119. package/dist/components/MessageInput/MessageInputFlat.js +31 -9
  120. package/dist/components/MessageInput/MessageInputSmall.d.ts.map +1 -1
  121. package/dist/components/MessageInput/MessageInputSmall.js +3 -2
  122. package/dist/components/MessageInput/SendButton.d.ts +8 -0
  123. package/dist/components/MessageInput/SendButton.d.ts.map +1 -0
  124. package/dist/components/MessageInput/SendButton.js +9 -0
  125. package/dist/components/MessageInput/hooks/useAttachments.d.ts +5 -2
  126. package/dist/components/MessageInput/hooks/useAttachments.d.ts.map +1 -1
  127. package/dist/components/MessageInput/hooks/useAttachments.js +87 -3
  128. package/dist/components/MessageInput/hooks/useCreateMessageInputContext.d.ts.map +1 -1
  129. package/dist/components/MessageInput/hooks/useCreateMessageInputContext.js +12 -2
  130. package/dist/components/MessageInput/hooks/useMessageInputState.d.ts +22 -7
  131. package/dist/components/MessageInput/hooks/useMessageInputState.d.ts.map +1 -1
  132. package/dist/components/MessageInput/hooks/useMessageInputState.js +31 -5
  133. package/dist/components/MessageInput/hooks/useSubmitHandler.d.ts +2 -2
  134. package/dist/components/MessageInput/hooks/useSubmitHandler.d.ts.map +1 -1
  135. package/dist/components/MessageInput/hooks/useSubmitHandler.js +15 -6
  136. package/dist/components/MessageInput/hooks/useTimeElapsed.d.ts +10 -0
  137. package/dist/components/MessageInput/hooks/useTimeElapsed.d.ts.map +1 -0
  138. package/dist/components/MessageInput/hooks/useTimeElapsed.js +30 -0
  139. package/dist/components/MessageInput/hooks/useTimer.d.ts +4 -0
  140. package/dist/components/MessageInput/hooks/useTimer.d.ts.map +1 -0
  141. package/dist/components/MessageInput/hooks/useTimer.js +20 -0
  142. package/dist/components/MessageInput/icons.d.ts +5 -6
  143. package/dist/components/MessageInput/icons.d.ts.map +1 -1
  144. package/dist/components/MessageInput/icons.js +13 -10
  145. package/dist/components/MessageInput/index.d.ts +1 -0
  146. package/dist/components/MessageInput/index.d.ts.map +1 -1
  147. package/dist/components/MessageInput/index.js +1 -0
  148. package/dist/components/MessageInput/types.d.ts +36 -1
  149. package/dist/components/MessageInput/types.d.ts.map +1 -1
  150. package/dist/components/ReactFileUtilities/types.d.ts +1 -0
  151. package/dist/components/ReactFileUtilities/types.d.ts.map +1 -1
  152. package/dist/components/ReactFileUtilities/utils.d.ts +9 -1
  153. package/dist/components/ReactFileUtilities/utils.d.ts.map +1 -1
  154. package/dist/components/ReactFileUtilities/utils.js +25 -0
  155. package/dist/components/Reactions/utils/utils.d.ts +2 -1
  156. package/dist/components/Reactions/utils/utils.d.ts.map +1 -1
  157. package/dist/components/index.d.ts +1 -0
  158. package/dist/components/index.d.ts.map +1 -1
  159. package/dist/components/index.js +1 -0
  160. package/dist/context/ComponentContext.d.ts +7 -4
  161. package/dist/context/ComponentContext.d.ts.map +1 -1
  162. package/dist/context/MessageInputContext.d.ts +4 -1
  163. package/dist/context/MessageInputContext.d.ts.map +1 -1
  164. package/dist/css/v2/index.css +2 -2
  165. package/dist/css/v2/index.layout.css +2 -2
  166. package/dist/i18n/Streami18n.d.ts +13 -0
  167. package/dist/i18n/Streami18n.d.ts.map +1 -1
  168. package/dist/i18n/de.json +13 -0
  169. package/dist/i18n/en.json +13 -0
  170. package/dist/i18n/es.json +13 -0
  171. package/dist/i18n/fr.json +13 -0
  172. package/dist/i18n/hi.json +13 -0
  173. package/dist/i18n/it.json +13 -0
  174. package/dist/i18n/ja.json +13 -0
  175. package/dist/i18n/ko.json +13 -0
  176. package/dist/i18n/nl.json +13 -0
  177. package/dist/i18n/pt.json +13 -0
  178. package/dist/i18n/ru.json +13 -0
  179. package/dist/i18n/tr.json +13 -0
  180. package/dist/index.cjs.js +22 -3
  181. package/dist/scss/v2/AttachmentList/AttachmentList-layout.scss +38 -13
  182. package/dist/scss/v2/AttachmentList/AttachmentList-theme.scss +44 -0
  183. package/dist/scss/v2/AttachmentPreviewList/AttachmentPreviewList-layout.scss +17 -10
  184. package/dist/scss/v2/AttachmentPreviewList/AttachmentPreviewList-theme.scss +16 -0
  185. package/dist/scss/v2/AudioRecorder/AudioRecorder-layout.scss +89 -0
  186. package/dist/scss/v2/AudioRecorder/AudioRecorder-theme.scss +51 -0
  187. package/dist/scss/v2/ChannelPreview/ChannelPreview-layout.scss +19 -2
  188. package/dist/scss/v2/ChannelPreview/ChannelPreview-theme.scss +21 -0
  189. package/dist/scss/v2/Message/Message-layout.scss +2 -2
  190. package/dist/scss/v2/MessageInput/MessageInput-layout.scss +30 -1
  191. package/dist/scss/v2/MessageInput/MessageInput-theme.scss +62 -2
  192. package/dist/scss/v2/_base.scss +2 -2
  193. package/dist/scss/v2/index.layout.scss +1 -0
  194. package/dist/scss/v2/index.scss +1 -0
  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 -2
  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/i18n/tr.json CHANGED
@@ -1,6 +1,11 @@
1
1
  {
2
+ "Allow access to camera": "Kameraya erişime izin ver",
3
+ "Allow access to microphone": "Mikrofona erişime izin ver",
4
+ "An error has occurred during recording": "Kayıt sırasında bir hata oluştu",
5
+ "An error has occurred during the recording processing": "Kayıt işlemi sırasında bir hata oluştu",
2
6
  "Attach files": "Dosya ekle",
3
7
  "Cancel": "İptal",
8
+ "Cannot seek in the recording": "Kayıtta arama yapılamıyor",
4
9
  "Channel Missing": "Kanal bulunamıyor",
5
10
  "Close": "Kapat",
6
11
  "Close emoji picker": "Emoji seçiciyi kapat",
@@ -24,13 +29,16 @@
24
29
  "Error pinning message": "Mesaj sabitlenirken hata oluştu",
25
30
  "Error removing message pin": "Mesaj PIN'i kaldırılırken hata oluştu",
26
31
  "Error reproducing the recording": "Kaydı yeniden üretme hatası",
32
+ "Error starting recording": "Kayıt başlatılırken hata oluştu",
27
33
  "Error unmuting a user ...": "Kullanıcının sesini açarken hata oluştu ...",
34
+ "Error uploading attachment": "Ek yüklenirken hata oluştu",
28
35
  "Error uploading file": "Dosya yüklenirken hata oluştu",
29
36
  "Error uploading image": "Resmi yüklerken hata",
30
37
  "Error · Unsent": "Hata · Gönderilemedi",
31
38
  "Error: {{ errorMessage }}": "Hata: {{ errorMessage }}",
32
39
  "Failed to jump to the first unread message": "İlk okunmamış mesaja atlamada hata oluştu",
33
40
  "Failed to mark channel as read": "Kanalı okundu olarak işaretleme başarısız oldu",
41
+ "Failed to play the recording": "Kayıt oynatılamadı",
34
42
  "File is too large: {{ size }}, maximum upload size is {{ limit }}": "Dosya çok büyük: {{ size }}, maksimum yükleme boyutu {{ limit }}",
35
43
  "Flag": "Bayrak",
36
44
  "Latest Messages": "Son Mesajlar",
@@ -43,16 +51,19 @@
43
51
  "Message has been successfully flagged": "Mesaj başarıyla bayraklandı",
44
52
  "Message pinned": "Mesaj sabitlendi",
45
53
  "Messages have been marked unread.": "Mesajlar okunmamış olarak işaretlendi.",
54
+ "Missing permissions to upload the attachment": "Ek yüklemek için izinler eksik",
46
55
  "Mute": "Sessiz",
47
56
  "New": "Yeni",
48
57
  "New Messages!": "Yeni Mesajlar!",
49
58
  "No chats here yet…": "Henüz burada sohbet yok...",
50
59
  "No results found": "Sonuç bulunamadı",
51
60
  "Nothing yet...": "Şimdilik hiçbir şey...",
61
+ "Ok": "Tamam",
52
62
  "Open emoji picker": "Emoji klavyesini aç",
53
63
  "People matching": "Eşleşen kişiler",
54
64
  "Pin": "Toplu iğne",
55
65
  "Pinned by": "Sabitleyen",
66
+ "Recording format is not supported and cannot be reproduced": "Kayıt formatı desteklenmiyor ve çoğaltılamıyor",
56
67
  "Reply": "Cevapla",
57
68
  "Reply to Message": "Mesajı Cevapla",
58
69
  "Search": "Arama",
@@ -67,6 +78,8 @@
67
78
  "This message did not meet our content guidelines": "Bu mesaj içerik yönergelerimize uygun değil",
68
79
  "This message was deleted...": "Bu mesaj silindi",
69
80
  "Thread": "Konu",
81
+ "To start recording, allow the camera access in your browser": "Kayıt yapmaya başlamak için tarayıcınızda kameraya erişime izin verin",
82
+ "To start recording, allow the microphone access in your browser": "Kayıt yapmaya başlamak için tarayıcınızda mikrofona erişime izin verin",
70
83
  "Type your message": "Mesajınızı yazın",
71
84
  "Unmute": "Sesini aç",
72
85
  "Unpin": "Sabitlemeyi kaldır",
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-64e7e4c0.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,7 +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
40
  require('prop-types');
41
41
  require('@babel/runtime/helpers/extends');
42
42
  require('@babel/runtime/helpers/defineProperty');
@@ -1344,7 +1344,7 @@ function VirtualizedMessageList(props) {
1344
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)));
1345
1345
  }
1346
1346
 
1347
- var version = '11.14.0';
1347
+ var version = '11.15.1';
1348
1348
 
1349
1349
  var useChat = function (_a) {
1350
1350
  var _b, _c;
@@ -1686,9 +1686,11 @@ exports.AttachmentPreviewList = Window.AttachmentPreviewList;
1686
1686
  exports.AttachmentWithinContainer = Window.AttachmentWithinContainer;
1687
1687
  exports.Audio = Window.Audio;
1688
1688
  exports.AudioContainer = Window.AudioContainer;
1689
+ exports.AudioRecorder = Window.AudioRecorder;
1689
1690
  exports.AutoCompleteTextarea = Window.ReactTextareaAutocomplete;
1690
1691
  exports.Avatar = Window.Avatar;
1691
1692
  exports.BaseImage = Window.BaseImage;
1693
+ exports.BinIcon = Window.BinIcon;
1692
1694
  exports.Card = Window.Card;
1693
1695
  exports.CardAudio = Window.CardAudio;
1694
1696
  exports.CardContainer = Window.CardContainer;
@@ -1709,6 +1711,7 @@ exports.ChatAutoComplete = Window.ChatAutoComplete;
1709
1711
  exports.ChatContext = Window.ChatContext;
1710
1712
  exports.ChatDown = Window.ChatDown;
1711
1713
  exports.ChatProvider = Window.ChatProvider;
1714
+ exports.CheckSignIcon = Window.CheckSignIcon;
1712
1715
  exports.CloseIcon = Window.CloseIcon$1;
1713
1716
  exports.CommandItem = Window.CommandItem;
1714
1717
  exports.ComponentContext = Window.ComponentContext;
@@ -1759,6 +1762,10 @@ exports.MAX_QUERY_CHANNELS_LIMIT = Window.MAX_QUERY_CHANNELS_LIMIT;
1759
1762
  exports.MESSAGE_ACTIONS = Window.MESSAGE_ACTIONS;
1760
1763
  exports.MML = Window.MML;
1761
1764
  exports.MediaContainer = Window.MediaContainer;
1765
+ Object.defineProperty(exports, 'MediaRecordingState', {
1766
+ enumerable: true,
1767
+ get: function () { return Window.MediaRecordingState; }
1768
+ });
1762
1769
  exports.Message = Window.Message;
1763
1770
  exports.MessageActions = Window.MessageActions;
1764
1771
  exports.MessageActionsBox = Window.MessageActionsBox;
@@ -1785,12 +1792,15 @@ exports.MessageSimple = Window.MessageSimple;
1785
1792
  exports.MessageStatus = Window.MessageStatus;
1786
1793
  exports.MessageText = Window.MessageText;
1787
1794
  exports.MessageTimestamp = Window.MessageTimestamp;
1795
+ exports.MicIcon = Window.MicIcon;
1788
1796
  exports.Modal = Window.Modal;
1789
1797
  exports.ModalGallery = Window.ModalGallery;
1790
1798
  exports.NullComponent = Window.NullComponent;
1799
+ exports.PauseIcon = Window.PauseIcon;
1791
1800
  exports.PinIcon = Window.PinIcon;
1792
1801
  exports.PinIndicator = Window.PinIndicator;
1793
1802
  exports.PlayButton = Window.PlayButton;
1803
+ exports.PlayIcon = Window.PlayIcon;
1794
1804
  exports.PlaybackRateButton = Window.PlaybackRateButton;
1795
1805
  exports.PopperTooltip = Window.PopperTooltip;
1796
1806
  exports.ProgressBar = Window.ProgressBar;
@@ -1800,6 +1810,12 @@ exports.QuotedMessagePreviewHeader = Window.QuotedMessagePreviewHeader;
1800
1810
  exports.ReactionIcon = Window.ReactionIcon;
1801
1811
  exports.ReactionSelector = Window.ReactionSelector;
1802
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;
1803
1819
  exports.ReplyIcon = Window.ReplyIcon;
1804
1820
  exports.RetryIcon = Window.RetryIcon;
1805
1821
  exports.SUPPORTED_VIDEO_FORMATS = Window.SUPPORTED_VIDEO_FORMATS;
@@ -1817,6 +1833,7 @@ Object.defineProperty(exports, 'SetLinkPreviewMode', {
1817
1833
  });
1818
1834
  exports.SimpleReactionsList = Window.SimpleReactionsList;
1819
1835
  exports.SpriteImage = Window.SpriteImage;
1836
+ exports.StartRecordingAudioButton = Window.StartRecordingAudioButton;
1820
1837
  exports.StreamEmoji = Window.StreamEmoji;
1821
1838
  exports.Streami18n = Window.Streami18n;
1822
1839
  exports.ThreadIcon = Window.ThreadIcon;
@@ -1883,6 +1900,7 @@ exports.isDayOrMoment = Window.isDayOrMoment;
1883
1900
  exports.isFileAttachment = Window.isFileAttachment;
1884
1901
  exports.isGalleryAttachmentType = Window.isGalleryAttachmentType;
1885
1902
  exports.isLanguageSupported = Window.isLanguageSupported;
1903
+ exports.isLocalAttachment = Window.isLocalAttachment;
1886
1904
  exports.isMediaAttachment = Window.isMediaAttachment;
1887
1905
  exports.isMessageBounced = Window.isMessageBounced;
1888
1906
  exports.isMessageEdited = Window.isMessageEdited;
@@ -1922,6 +1940,7 @@ exports.renderImage = Window.renderImage;
1922
1940
  exports.renderMedia = Window.renderMedia;
1923
1941
  exports.renderPreviewText = Window.renderPreviewText;
1924
1942
  exports.renderText = Window.renderText;
1943
+ exports.resampleWaveformData = Window.resampleWaveformData;
1925
1944
  exports.ruTranslations = Window.ruTranslations;
1926
1945
  exports.showMessageActionsBox = Window.showMessageActionsBox;
1927
1946
  exports.trTranslations = Window.trTranslations;
@@ -335,18 +335,6 @@
335
335
  }
336
336
  }
337
337
 
338
- .str-chat__message-attachment-audio-widget--play-button {
339
- @include utils.flex-row-center();
340
- height: calc(var(--str-chat__spacing-px) * 36);
341
- width: calc(var(--str-chat__spacing-px) * 36);
342
- cursor: pointer;
343
- z-index: 1;
344
-
345
- svg {
346
- width: var(--str-chat__spacing-3);
347
- }
348
- }
349
-
350
338
  .str-chat__message-attachment__voice-recording-widget {
351
339
  display: grid;
352
340
  grid-template-columns: 36px auto 55px;
@@ -401,7 +389,7 @@
401
389
  .str-chat__message-attachment__voice-recording-widget__error-message {
402
390
  display: flex;
403
391
  align-items: center;
404
- justify-content: start;
392
+ justify-content: flex-start;
405
393
  gap: var(--str-chat__spacing-1);
406
394
  }
407
395
  }
@@ -415,6 +403,7 @@
415
403
  width: calc(var(--str-chat__spacing-px) * 45);
416
404
  }
417
405
 
406
+ // Angular SDK element, do not remove
418
407
  stream-voice-recording-wavebar {
419
408
  flex: 1;
420
409
  }
@@ -517,6 +506,17 @@
517
506
  }
518
507
  }
519
508
 
509
+ .str-chat__message-attachment-audio-widget--play-button {
510
+ @include utils.flex-row-center();
511
+ height: calc(var(--str-chat__spacing-px) * 36);
512
+ width: calc(var(--str-chat__spacing-px) * 36);
513
+ cursor: pointer;
514
+
515
+ svg {
516
+ width: var(--str-chat__spacing-3);
517
+ }
518
+ }
519
+
520
520
  .str-chat__quoted-message-preview {
521
521
  /* stylelint-disable-next-line length-zero-no-unit */
522
522
  --str-chat__attachment-margin: 0px;
@@ -558,6 +558,31 @@
558
558
  }
559
559
  }
560
560
 
561
+ .str-chat__audio_recorder__waveform-box,
562
+ .str-chat__wave-progress-bar__track {
563
+ $min_amplitude_height: 2px;
564
+ position: relative;
565
+ flex: 1;
566
+ width: 120px;
567
+ height: calc(var(--str-chat__spacing-px) * 25);
568
+ display: flex;
569
+ align-items: center;
570
+ gap: var(--str-chat__spacing-px);
571
+
572
+ .str-chat__wave-progress-bar__amplitude-bar {
573
+ width: 2px;
574
+ min-width: 2px;
575
+ height: calc(var(--str-chat__wave-progress-bar__amplitude-bar-height) + $min_amplitude_height); // variable set dynamically on element
576
+ }
577
+
578
+ .str-chat__wave-progress-bar__progress-indicator {
579
+ position: absolute;
580
+ left: 0;
581
+ height: calc(100% + $min_amplitude_height + 2px);
582
+ width: calc(var(--str-chat__spacing-px) * 6);
583
+ }
584
+ }
585
+
561
586
  .str-chat__attachment-list-angular-host {
562
587
  min-width: 0;
563
588
  }
@@ -329,6 +329,7 @@
329
329
  .str-chat__message-attachment-file--item-name,
330
330
  .str-chat__message-attachment-audio-widget--title {
331
331
  font: var(--str-chat__subtitle-medium-text);
332
+ word-break: keep-all;
332
333
  }
333
334
 
334
335
  .str-chat__message-attachment-file--item-size {
@@ -476,6 +477,11 @@
476
477
  }
477
478
  }
478
479
 
480
+ .str-chat__message-attachment-audio-widget--play-button {
481
+ @include utils.component-layer-overrides('audio-attachment-controls-button');
482
+ @include utils.circle-fab-overrides('audio-attachment-controls-button');
483
+ }
484
+
479
485
  .str-chat__message-attachment-card.str-chat__message-attachment-card--audio {
480
486
  .str-chat__message-attachment-card--header {
481
487
  border-end-start-radius: 0;
@@ -483,6 +489,44 @@
483
489
  }
484
490
  }
485
491
 
492
+ .str-chat__message-attachment__voice-recording-widget {
493
+ @include utils.component-layer-overrides('voice-recording-attachment-widget');
494
+
495
+ .str-chat__message-attachment__voice-recording-widget__title {
496
+ @include utils.ellipsis-text;
497
+ word-break: keep-all;
498
+ font: var(--str-chat__subtitle-medium-text);
499
+ }
500
+
501
+ .str-chat__message-attachment__voice-recording-widget__timer {
502
+ font: var(--str-chat__body-text);
503
+ color: var(--str-chat__text-low-emphasis-color);
504
+ white-space: nowrap;
505
+ }
506
+ }
507
+
508
+ .str-chat__audio_recorder__waveform-box,
509
+ .str-chat__wave-progress-bar__track {
510
+ cursor: pointer;
511
+
512
+ .str-chat__wave-progress-bar__amplitude-bar {
513
+ background: var(--str-chat__text-low-emphasis-color);
514
+ border-radius: var(--str-chat__border-radius-circle);
515
+ }
516
+
517
+ .str-chat__wave-progress-bar__amplitude-bar--active {
518
+ background: var(--str-chat__primary-color);
519
+ }
520
+
521
+ .str-chat__wave-progress-bar__progress-indicator {
522
+ background-color: #fff;
523
+ border-radius: var(--str-chat__border-radius-circle);
524
+ border: 1px solid var(--str-chat__secondary-overlay-color);
525
+ cursor: grab;
526
+ }
527
+ }
528
+
529
+
486
530
  .str-chat-angular__message-attachment-file-single
487
531
  .str-chat__message-attachment-file--item-first-row {
488
532
  color: var(--str-chat__attachment-list-color);
@@ -46,6 +46,7 @@
46
46
  }
47
47
  }
48
48
 
49
+ .str-chat__attachment-preview-voice-recording,
49
50
  .str-chat__attachment-preview-file {
50
51
  display: flex;
51
52
  justify-content: flex-start;
@@ -57,17 +58,10 @@
57
58
  padding: 0 var(--str-chat__spacing-4);
58
59
  column-gap: var(--str-chat__spacing-2);
59
60
 
60
- .str-chat__attachment-preview-file-icon {
61
- @include utils.flex-row-center;
62
-
63
- svg {
64
- height: calc(var(--str-chat__spacing-px) * 37);
65
- width: unset;
66
- }
67
- }
68
-
69
- .str-chat__attachment-preview-file-end {
61
+ .str-chat__attachment-preview-metadata,
62
+ .str-chat__attachment-preview-file-end{
70
63
  @include utils.ellipsis-text-parent;
64
+ flex: 1;
71
65
  display: flex;
72
66
  flex-direction: column;
73
67
  align-items: flex-start;
@@ -77,7 +71,20 @@
77
71
  @include utils.ellipsis-text;
78
72
  max-width: 100%;
79
73
  }
74
+ }
80
75
 
76
+ .str-chat__attachment-preview-file-icon {
77
+ @include utils.flex-row-center;
78
+
79
+ svg {
80
+ height: calc(var(--str-chat__spacing-px) * 37);
81
+ width: unset;
82
+ }
83
+ }
84
+ }
85
+
86
+ .str-chat__attachment-preview-file {
87
+ .str-chat__attachment-preview-file-end {
81
88
  .str-chat__attachment-preview-file-download {
82
89
  line-height: calc(var(--str-chat__spacing-px) * 13);
83
90
 
@@ -107,6 +107,7 @@
107
107
  }
108
108
  }
109
109
 
110
+ .str-chat__attachment-preview-voice-recording,
110
111
  .str-chat__attachment-preview-file {
111
112
  @include utils.component-layer-overrides('attachment-preview-file');
112
113
 
@@ -121,6 +122,21 @@
121
122
  }
122
123
  }
123
124
 
125
+ .str-chat__attachment-preview-file {
126
+ .str-chat__attachment-preview-file-download {
127
+ svg path {
128
+ fill: var(--str-chat__attachment-preview-download-icon-color);
129
+ }
130
+ }
131
+ }
132
+
133
+ .str-chat__attachment-preview-voice-recording {
134
+ .str-chat__recording-timer {
135
+ color: var(--str-chat__text-low-emphasis-color);
136
+ font: var(--str-chat__caption-medium-text);
137
+ }
138
+ }
139
+
124
140
  .str-chat__attachment-preview-delete {
125
141
  svg {
126
142
  background-color: var(--str-chat__attachment-preview-close-icon-background);
@@ -0,0 +1,89 @@
1
+ @use '../utils';
2
+
3
+ .str-chat__audio_recorder-container {
4
+ bottom: 0;
5
+ display: flex;
6
+ align-items: center;
7
+ justify-content: flex-end;
8
+ width: 100%;
9
+ min-height: 3.25rem;
10
+ padding-inline: 1rem;
11
+ }
12
+
13
+ .str-chat__audio_recorder {
14
+ @include utils.flex-row-center;
15
+ gap: 0.375rem;
16
+
17
+ button {
18
+ @include utils.flex-row-center;
19
+ height: 32px;
20
+ width: 32px;
21
+ padding: 0;
22
+ }
23
+
24
+ .str-chat__audio_recorder__cancel-button svg {
25
+ height: 28px;
26
+ }
27
+
28
+ .str-chat__audio_recorder__toggle-playback-button svg {
29
+ height: 16px;
30
+ }
31
+
32
+ .str-chat__audio_recorder__pause-recording-button svg {
33
+ height: 12px;
34
+ }
35
+
36
+ .str-chat__audio_recorder__resume-recording-button svg {
37
+ height: 24px;
38
+ }
39
+
40
+ .str-chat__audio_recorder__stop-button svg {
41
+ height: 12px;
42
+ }
43
+
44
+ .str-chat__audio_recorder__complete-button svg {
45
+ height: 16px;
46
+ }
47
+
48
+ .str-chat__recording-timer {
49
+ display: flex;
50
+ align-items: center;
51
+ width: 3rem;
52
+ }
53
+
54
+ .str-chat__recording-timer--hours {
55
+ width: 3.75rem;
56
+ }
57
+
58
+ .str-chat__wave-progress-bar__track-container {
59
+ padding-block: 0.5rem;
60
+ overflow-x: auto;
61
+ height: fit-content;
62
+ }
63
+
64
+ .str-chat__waveform-box-container {
65
+ flex: 1;
66
+ display: flex;
67
+ align-items: center;
68
+ justify-content: flex-end;
69
+ width: 100%;
70
+ }
71
+
72
+ .str-chat__audio_recorder__waveform-box,
73
+ .str-chat__wave-progress-bar__track {
74
+ display: flex;
75
+ justify-content: flex-end;
76
+ align-items: center;
77
+ flex-wrap: nowrap;
78
+ height: 2rem;
79
+ margin-inline: 1rem;
80
+ }
81
+
82
+ .str-chat__wave-progress-bar__track {
83
+ width: 120px;
84
+ }
85
+
86
+ .str-chat__audio_recorder__waveform-box {
87
+ overflow-x: hidden;
88
+ }
89
+ }
@@ -0,0 +1,51 @@
1
+ @use '../utils';
2
+
3
+ .str-chat__audio_recorder-container {
4
+ background-color: var(--str-chat__background-color);
5
+ }
6
+
7
+ .str-chat__audio_recorder {
8
+ //@include utils.component-layer-overrides('audio-recorder');
9
+
10
+ button {
11
+ @include utils.button-reset;
12
+ cursor: pointer;
13
+
14
+ &:disabled {
15
+ cursor: default;
16
+ }
17
+ }
18
+
19
+ .str-chat__audio_recorder__cancel-button {
20
+ color: var(--str-chat__text-low-emphasis-color);
21
+ }
22
+
23
+ .str-chat__audio_recorder__toggle-playback-button {
24
+ color: var(--str-chat__text-low-emphasis-color);
25
+ }
26
+
27
+ .str-chat__audio_recorder__pause-recording-button,
28
+ .str-chat__audio_recorder__resume-recording-button {
29
+ color: var(--str-chat__danger-color);
30
+ }
31
+
32
+ .str-chat__audio_recorder__pause-recording-button {
33
+ border: 3px solid var(--str-chat__danger-color);
34
+ border-radius: var(--str-chat__border-radius-circle);
35
+ }
36
+
37
+ .str-chat__audio_recorder__stop-button,
38
+ .str-chat__audio_recorder__complete-button {
39
+ border-radius: var(--str-chat__border-radius-circle);
40
+ color: var(--str-chat__on-primary-color);
41
+ background-color: var(--str-chat__primary-color);
42
+
43
+ .str-chat__loading-indicator svg {
44
+ linearGradient {
45
+ stop:last-child {
46
+ stop-color: var(--str-chat__background-color);
47
+ }
48
+ }
49
+ }
50
+ }
51
+ }
@@ -36,10 +36,9 @@
36
36
  .str-chat__channel-preview-end-first-row {
37
37
  display: flex;
38
38
  column-gap: var(--str-chat__spacing-1);
39
- align-items: center;
39
+ align-items: stretch;
40
40
 
41
41
  .str-chat__channel-preview-unread-badge {
42
- height: 100%;
43
42
  display: flex;
44
43
  align-items: center;
45
44
  padding: 0 var(--str-chat__spacing-2);
@@ -50,6 +49,24 @@
50
49
  }
51
50
  }
52
51
 
52
+ .str-chat__channel-preview-end-second-row {
53
+ @include utils.ellipsis-text-parent;
54
+ display: flex;
55
+ column-gap: var(--str-chat__spacing-1);
56
+ align-items: center;
57
+
58
+ .str-chat__channel-preview-messenger--last-message {
59
+ flex: 1;
60
+ }
61
+
62
+ .str-chat__channel-preview-messenger--status {
63
+ svg {
64
+ width: calc(var(--str-chat__spacing-px) * 15);
65
+ height: calc(var(--str-chat__spacing-px) * 15);
66
+ }
67
+ }
68
+ }
69
+
53
70
  .str-chat__channel-preview-messenger--name,
54
71
  .str-chat__channel-preview-messenger--last-message {
55
72
  @include utils.ellipsis-text;
@@ -56,6 +56,12 @@
56
56
 
57
57
  /* Right (left in RTL layout) border of the unread badge */
58
58
  --str-chat__channel-preview-unread-badge-border-inline-end: none;
59
+
60
+ /* The color of the message status indicator icon (only available in Angular) */
61
+ --str-chat__channel-preview-message-status-color: var(--str-chat__primary-color);
62
+
63
+ /* The color of the text that displays the message time (only available in Angular) */
64
+ --str-chat__channel-preview-message-time-color: var(--str-chat__message-secondary-color);
59
65
  }
60
66
 
61
67
  .str-chat__channel-preview {
@@ -90,6 +96,21 @@
90
96
  }
91
97
  }
92
98
  }
99
+
100
+ .str-chat__channel-preview-messenger--status {
101
+ color: var(--str-chat__channel-preview-message-status-color);
102
+
103
+ svg {
104
+ path {
105
+ fill: var(--str-chat__channel-preview-message-status-color);
106
+ }
107
+ }
108
+ }
109
+
110
+ .str-chat__channel-preview-messenger--time {
111
+ color: var(--str-chat__channel-preview-message-time-color);
112
+ font: var(--str-chat__caption-text);
113
+ }
93
114
  }
94
115
 
95
116
  .str-chat__channel-preview-loading {
@@ -76,7 +76,7 @@
76
76
  '. metadata';
77
77
  column-gap: var(--str-chat__spacing-2);
78
78
  grid-template-columns: auto 1fr;
79
- justify-items: start;
79
+ justify-items: flex-start;
80
80
  }
81
81
 
82
82
  &.str-chat__message--me {
@@ -120,7 +120,7 @@
120
120
 
121
121
  .str-chat__message-options {
122
122
  grid-area: options;
123
- align-items: start;
123
+ align-items: flex-start;
124
124
  justify-content: flex-end;
125
125
  flex-direction: row-reverse;
126
126
  width: calc(3 * var(--str-chat__message-options-button-size));
@@ -2,6 +2,7 @@
2
2
 
3
3
  .str-chat__message-input {
4
4
  $send-button-size: calc(var(--str-chat__spacing-px) * 45);
5
+ $start-audio-recording-button-size: calc(var(--str-chat__spacing-px) * 40);
5
6
 
6
7
  @include utils.flex-col-center;
7
8
  width: 100%;
@@ -145,6 +146,19 @@
145
146
  }
146
147
  }
147
148
 
149
+ .str-chat__start-recording-audio-button {
150
+ @include utils.flex-row-center;
151
+ cursor: pointer;
152
+ padding: 0;
153
+ width: $start-audio-recording-button-size;
154
+ height: $start-audio-recording-button-size;
155
+ min-width: $start-audio-recording-button-size;
156
+
157
+ svg {
158
+ height: calc(var(--str-chat__spacing-px) * 25);
159
+ }
160
+ }
161
+
148
162
  .str-chat__message-input-cooldown {
149
163
  @include utils.flex-row-center;
150
164
  margin-inline-start: var(--str-chat__spacing-2);
@@ -161,6 +175,21 @@
161
175
  .str-chat__quoted-message-preview {
162
176
  padding: var(--str-chat__spacing-2);
163
177
  }
178
+
179
+ .str-chat__recording-permission-denied-notification {
180
+ position: absolute;
181
+ left: 0.5rem;
182
+ max-width: 100%;
183
+ bottom: 100%;
184
+ padding: 1rem;
185
+ margin-inline: 0.5rem;
186
+ z-index: 2;
187
+
188
+ .str-chat__recording-permission-denied-notification__dismiss-button-container {
189
+ display: flex;
190
+ justify-content: flex-end;
191
+ }
192
+ }
164
193
  }
165
194
 
166
195
  .str-chat__message-input-angular-host {
@@ -179,7 +208,7 @@
179
208
  flex-grow: initial;
180
209
  }
181
210
 
182
- [dir='rtl'] .str-chat__send-button {
211
+ [dir='rtl'] .str-chat__send-button, [dir='rtl'] .str-chat__start-recording-audio-button {
183
212
  svg {
184
213
  transform: scale(-1, 1);
185
214
  }