stream-chat-react 14.0.0-beta.6 → 14.0.0-beta.7

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 (191) hide show
  1. package/dist/cjs/{WithAudioPlayback.f9abf707.js → WithAudioPlayback.83ba0e35.js} +255 -153
  2. package/dist/cjs/WithAudioPlayback.83ba0e35.js.map +1 -0
  3. package/dist/cjs/emojis.js +5 -2
  4. package/dist/cjs/emojis.js.map +1 -1
  5. package/dist/cjs/index.js +1584 -1421
  6. package/dist/cjs/index.js.map +1 -1
  7. package/dist/css/emoji-picker.css +11 -0
  8. package/dist/css/emoji-picker.css.map +1 -0
  9. package/dist/css/index.css +554 -345
  10. package/dist/css/index.css.map +1 -1
  11. package/dist/es/{WithAudioPlayback.d90f1a99.mjs → WithAudioPlayback.21b7f35a.mjs} +405 -303
  12. package/dist/es/WithAudioPlayback.21b7f35a.mjs.map +1 -0
  13. package/dist/es/emojis.mjs +5 -2
  14. package/dist/es/emojis.mjs.map +1 -1
  15. package/dist/es/index.mjs +1665 -1502
  16. package/dist/es/index.mjs.map +1 -1
  17. package/dist/types/components/Attachment/Audio.d.ts.map +1 -1
  18. package/dist/types/components/Attachment/FileAttachment.d.ts.map +1 -1
  19. package/dist/types/components/Attachment/UnsupportedAttachment.d.ts +1 -1
  20. package/dist/types/components/Attachment/UnsupportedAttachment.d.ts.map +1 -1
  21. package/dist/types/components/Attachment/VoiceRecording.d.ts.map +1 -1
  22. package/dist/types/components/Attachment/components/FileSizeIndicator.d.ts +1 -2
  23. package/dist/types/components/Attachment/components/FileSizeIndicator.d.ts.map +1 -1
  24. package/dist/types/components/AudioPlayback/components/useInteractiveProgressBar.d.ts.map +1 -1
  25. package/dist/types/components/AudioPlayback/plugins/AudioPlayerNotificationsPlugin.d.ts +4 -4
  26. package/dist/types/components/AudioPlayback/plugins/AudioPlayerNotificationsPlugin.d.ts.map +1 -1
  27. package/dist/types/components/Badge/MediaBadge.d.ts +8 -0
  28. package/dist/types/components/Badge/MediaBadge.d.ts.map +1 -0
  29. package/dist/types/components/Channel/Channel.d.ts.map +1 -1
  30. package/dist/types/components/ChannelHeader/ChannelHeader.d.ts +0 -2
  31. package/dist/types/components/ChannelHeader/ChannelHeader.d.ts.map +1 -1
  32. package/dist/types/components/ChannelList/ChannelList.d.ts.map +1 -1
  33. package/dist/types/components/ChannelList/ChannelListHeader.d.ts +1 -5
  34. package/dist/types/components/ChannelList/ChannelListHeader.d.ts.map +1 -1
  35. package/dist/types/components/ChannelList/hooks/index.d.ts +0 -11
  36. package/dist/types/components/ChannelList/hooks/index.d.ts.map +1 -1
  37. package/dist/types/components/ChannelList/utils.d.ts +0 -9
  38. package/dist/types/components/ChannelList/utils.d.ts.map +1 -1
  39. package/dist/types/components/ChannelListItem/ChannelListItem.d.ts +0 -2
  40. package/dist/types/components/ChannelListItem/ChannelListItem.d.ts.map +1 -1
  41. package/dist/types/components/ChannelListItem/ChannelListItemActionButtons.defaults.d.ts.map +1 -1
  42. package/dist/types/components/Chat/Chat.d.ts +1 -5
  43. package/dist/types/components/Chat/Chat.d.ts.map +1 -1
  44. package/dist/types/components/Chat/hooks/useChat.d.ts +1 -10
  45. package/dist/types/components/Chat/hooks/useChat.d.ts.map +1 -1
  46. package/dist/types/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
  47. package/dist/types/components/Chat/hooks/useReportLostConnectionSystemNotification.d.ts +6 -0
  48. package/dist/types/components/Chat/hooks/useReportLostConnectionSystemNotification.d.ts.map +1 -0
  49. package/dist/types/components/Chat/index.d.ts +1 -0
  50. package/dist/types/components/Chat/index.d.ts.map +1 -1
  51. package/dist/types/components/ChatView/ChatView.d.ts.map +1 -1
  52. package/dist/types/components/Dialog/components/ContextMenu.d.ts +1 -1
  53. package/dist/types/components/Dialog/components/ContextMenu.d.ts.map +1 -1
  54. package/dist/types/components/Dialog/hooks/useDialog.d.ts.map +1 -1
  55. package/dist/types/components/Dialog/service/DialogManager.d.ts +3 -2
  56. package/dist/types/components/Dialog/service/DialogManager.d.ts.map +1 -1
  57. package/dist/types/components/Icons/icons.d.ts +18 -6
  58. package/dist/types/components/Icons/icons.d.ts.map +1 -1
  59. package/dist/types/components/InfiniteScrollPaginator/InfiniteScroll.d.ts +0 -20
  60. package/dist/types/components/InfiniteScrollPaginator/InfiniteScroll.d.ts.map +1 -1
  61. package/dist/types/components/LoadMore/LoadMoreButton.d.ts +1 -6
  62. package/dist/types/components/LoadMore/LoadMoreButton.d.ts.map +1 -1
  63. package/dist/types/components/LoadMore/LoadMorePaginator.d.ts.map +1 -1
  64. package/dist/types/components/Loading/UploadProgressIndicator.d.ts +5 -0
  65. package/dist/types/components/Loading/UploadProgressIndicator.d.ts.map +1 -0
  66. package/dist/types/components/Loading/UploadedSizeIndicator.d.ts +6 -0
  67. package/dist/types/components/Loading/UploadedSizeIndicator.d.ts.map +1 -0
  68. package/dist/types/components/Loading/index.d.ts +3 -0
  69. package/dist/types/components/Loading/index.d.ts.map +1 -1
  70. package/dist/types/components/Loading/progress-indicators.d.ts +7 -0
  71. package/dist/types/components/Loading/progress-indicators.d.ts.map +1 -0
  72. package/dist/types/components/Location/ShareLocationDialog.d.ts.map +1 -1
  73. package/dist/types/components/MediaRecorder/AudioRecorder/AudioRecorderRecordingControls.d.ts.map +1 -1
  74. package/dist/types/components/Message/Message.d.ts.map +1 -1
  75. package/dist/types/components/Message/MessageAlsoSentInChannelIndicator.d.ts.map +1 -1
  76. package/dist/types/components/Message/MessageUI.d.ts.map +1 -1
  77. package/dist/types/components/Message/hooks/useDeleteHandler.d.ts +1 -5
  78. package/dist/types/components/Message/hooks/useDeleteHandler.d.ts.map +1 -1
  79. package/dist/types/components/Message/hooks/useFlagHandler.d.ts +1 -6
  80. package/dist/types/components/Message/hooks/useFlagHandler.d.ts.map +1 -1
  81. package/dist/types/components/Message/hooks/useMarkUnreadHandler.d.ts +1 -6
  82. package/dist/types/components/Message/hooks/useMarkUnreadHandler.d.ts.map +1 -1
  83. package/dist/types/components/Message/hooks/useMuteHandler.d.ts +2 -7
  84. package/dist/types/components/Message/hooks/useMuteHandler.d.ts.map +1 -1
  85. package/dist/types/components/Message/hooks/usePinHandler.d.ts +1 -23
  86. package/dist/types/components/Message/hooks/usePinHandler.d.ts.map +1 -1
  87. package/dist/types/components/Message/hooks/useReactionsFetcher.d.ts +1 -6
  88. package/dist/types/components/Message/hooks/useReactionsFetcher.d.ts.map +1 -1
  89. package/dist/types/components/Message/hooks/useUserRole.d.ts +1 -1
  90. package/dist/types/components/Message/hooks/useUserRole.d.ts.map +1 -1
  91. package/dist/types/components/Message/types.d.ts +1 -23
  92. package/dist/types/components/Message/types.d.ts.map +1 -1
  93. package/dist/types/components/Message/utils.d.ts +1 -2
  94. package/dist/types/components/Message/utils.d.ts.map +1 -1
  95. package/dist/types/components/MessageActions/MessageActions.defaults.d.ts.map +1 -1
  96. package/dist/types/components/MessageActions/RemindMeSubmenu.d.ts.map +1 -1
  97. package/dist/types/components/MessageComposer/AttachmentPreviewList/AttachmentUploadedSizeIndicator.d.ts +14 -0
  98. package/dist/types/components/MessageComposer/AttachmentPreviewList/AttachmentUploadedSizeIndicator.d.ts.map +1 -0
  99. package/dist/types/components/MessageComposer/AttachmentPreviewList/AudioAttachmentPreview.d.ts.map +1 -1
  100. package/dist/types/components/MessageComposer/AttachmentPreviewList/FileAttachmentPreview.d.ts.map +1 -1
  101. package/dist/types/components/MessageComposer/AttachmentPreviewList/MediaAttachmentPreview.d.ts.map +1 -1
  102. package/dist/types/components/MessageComposer/AttachmentPreviewList/UnsupportedAttachmentPreview.d.ts +1 -1
  103. package/dist/types/components/MessageComposer/AttachmentPreviewList/UnsupportedAttachmentPreview.d.ts.map +1 -1
  104. package/dist/types/components/MessageComposer/hooks/useSubmitHandler.d.ts.map +1 -1
  105. package/dist/types/components/MessageComposer/icons.d.ts +0 -1
  106. package/dist/types/components/MessageComposer/icons.d.ts.map +1 -1
  107. package/dist/types/components/MessageList/MessageList.d.ts +1 -1
  108. package/dist/types/components/MessageList/MessageList.d.ts.map +1 -1
  109. package/dist/types/components/MessageList/hooks/MessageList/useScrollLocationLogic.d.ts.map +1 -1
  110. package/dist/types/components/MessageList/index.d.ts +0 -1
  111. package/dist/types/components/MessageList/index.d.ts.map +1 -1
  112. package/dist/types/components/MessageList/utils.d.ts +0 -1
  113. package/dist/types/components/MessageList/utils.d.ts.map +1 -1
  114. package/dist/types/components/Notifications/NotificationList.d.ts.map +1 -1
  115. package/dist/types/components/Notifications/hooks/index.d.ts +2 -0
  116. package/dist/types/components/Notifications/hooks/index.d.ts.map +1 -1
  117. package/dist/types/components/Notifications/hooks/useNotificationApi.d.ts +63 -0
  118. package/dist/types/components/Notifications/hooks/useNotificationApi.d.ts.map +1 -0
  119. package/dist/types/components/Notifications/hooks/useSystemNotifications.d.ts +14 -0
  120. package/dist/types/components/Notifications/hooks/useSystemNotifications.d.ts.map +1 -0
  121. package/dist/types/components/Notifications/notificationTarget.d.ts +1 -0
  122. package/dist/types/components/Notifications/notificationTarget.d.ts.map +1 -1
  123. package/dist/types/components/Poll/PollActions/EndPollAlert.d.ts.map +1 -1
  124. package/dist/types/components/ReactFileUtilities/UploadButton.d.ts +3 -11
  125. package/dist/types/components/ReactFileUtilities/UploadButton.d.ts.map +1 -1
  126. package/dist/types/components/Reactions/MessageReactions.d.ts.map +1 -1
  127. package/dist/types/components/Reactions/MessageReactionsDetail.d.ts +12 -2
  128. package/dist/types/components/Reactions/MessageReactionsDetail.d.ts.map +1 -1
  129. package/dist/types/components/Reactions/ReactionSelector.d.ts +3 -0
  130. package/dist/types/components/Reactions/ReactionSelector.d.ts.map +1 -1
  131. package/dist/types/components/Reactions/hooks/useFetchReactions.d.ts.map +1 -1
  132. package/dist/types/components/Reactions/index.d.ts +0 -1
  133. package/dist/types/components/Reactions/index.d.ts.map +1 -1
  134. package/dist/types/components/SummarizedMessagePreview/SummarizedMessagePreview.d.ts.map +1 -1
  135. package/dist/types/components/SummarizedMessagePreview/hooks/useLatestMessagePreview.d.ts +1 -1
  136. package/dist/types/components/SummarizedMessagePreview/hooks/useLatestMessagePreview.d.ts.map +1 -1
  137. package/dist/types/components/Thread/ThreadHeader.d.ts +0 -2
  138. package/dist/types/components/Thread/ThreadHeader.d.ts.map +1 -1
  139. package/dist/types/components/Threads/ThreadList/ThreadList.d.ts.map +1 -1
  140. package/dist/types/components/Threads/ThreadList/ThreadListHeader.d.ts +1 -5
  141. package/dist/types/components/Threads/ThreadList/ThreadListHeader.d.ts.map +1 -1
  142. package/dist/types/components/Threads/ThreadList/ThreadListItemUI.d.ts.map +1 -1
  143. package/dist/types/components/index.d.ts +2 -2
  144. package/dist/types/components/index.d.ts.map +1 -1
  145. package/dist/types/context/ChatContext.d.ts +0 -3
  146. package/dist/types/context/ChatContext.d.ts.map +1 -1
  147. package/dist/types/context/ComponentContext.d.ts +18 -2
  148. package/dist/types/context/ComponentContext.d.ts.map +1 -1
  149. package/dist/types/context/MessageContext.d.ts +0 -3
  150. package/dist/types/context/MessageContext.d.ts.map +1 -1
  151. package/dist/types/i18n/Streami18n.d.ts +21 -11
  152. package/dist/types/i18n/Streami18n.d.ts.map +1 -1
  153. package/dist/types/plugins/Emojis/EmojiPicker.d.ts +0 -6
  154. package/dist/types/plugins/Emojis/EmojiPicker.d.ts.map +1 -1
  155. package/dist/types/types/types.d.ts +0 -5
  156. package/dist/types/types/types.d.ts.map +1 -1
  157. package/package.json +4 -4
  158. package/dist/cjs/WithAudioPlayback.f9abf707.js.map +0 -1
  159. package/dist/es/WithAudioPlayback.d90f1a99.mjs.map +0 -1
  160. package/dist/types/components/Button/ToggleSidebarButton.d.ts +0 -10
  161. package/dist/types/components/Button/ToggleSidebarButton.d.ts.map +0 -1
  162. package/dist/types/components/ChannelHeader/hooks/useIsMobileViewport.d.ts +0 -3
  163. package/dist/types/components/ChannelHeader/hooks/useIsMobileViewport.d.ts.map +0 -1
  164. package/dist/types/components/ChannelList/hooks/useChannelDeletedListener.d.ts +0 -3
  165. package/dist/types/components/ChannelList/hooks/useChannelDeletedListener.d.ts.map +0 -1
  166. package/dist/types/components/ChannelList/hooks/useChannelHiddenListener.d.ts +0 -3
  167. package/dist/types/components/ChannelList/hooks/useChannelHiddenListener.d.ts.map +0 -1
  168. package/dist/types/components/ChannelList/hooks/useChannelTruncatedListener.d.ts +0 -3
  169. package/dist/types/components/ChannelList/hooks/useChannelTruncatedListener.d.ts.map +0 -1
  170. package/dist/types/components/ChannelList/hooks/useChannelUpdatedListener.d.ts +0 -3
  171. package/dist/types/components/ChannelList/hooks/useChannelUpdatedListener.d.ts.map +0 -1
  172. package/dist/types/components/ChannelList/hooks/useChannelVisibleListener.d.ts +0 -3
  173. package/dist/types/components/ChannelList/hooks/useChannelVisibleListener.d.ts.map +0 -1
  174. package/dist/types/components/ChannelList/hooks/useMessageNewListener.d.ts +0 -3
  175. package/dist/types/components/ChannelList/hooks/useMessageNewListener.d.ts.map +0 -1
  176. package/dist/types/components/ChannelList/hooks/useMobileNavigation.d.ts +0 -2
  177. package/dist/types/components/ChannelList/hooks/useMobileNavigation.d.ts.map +0 -1
  178. package/dist/types/components/ChannelList/hooks/useNotificationAddedToChannelListener.d.ts +0 -3
  179. package/dist/types/components/ChannelList/hooks/useNotificationAddedToChannelListener.d.ts.map +0 -1
  180. package/dist/types/components/ChannelList/hooks/useNotificationMessageNewListener.d.ts +0 -3
  181. package/dist/types/components/ChannelList/hooks/useNotificationMessageNewListener.d.ts.map +0 -1
  182. package/dist/types/components/ChannelList/hooks/useNotificationRemovedFromChannelListener.d.ts +0 -3
  183. package/dist/types/components/ChannelList/hooks/useNotificationRemovedFromChannelListener.d.ts.map +0 -1
  184. package/dist/types/components/ChannelList/hooks/useUserPresenceChangedListener.d.ts +0 -3
  185. package/dist/types/components/ChannelList/hooks/useUserPresenceChangedListener.d.ts.map +0 -1
  186. package/dist/types/components/MessageList/ConnectionStatus.d.ts +0 -3
  187. package/dist/types/components/MessageList/ConnectionStatus.d.ts.map +0 -1
  188. package/dist/types/components/Reactions/StreamEmoji.d.ts +0 -19
  189. package/dist/types/components/Reactions/StreamEmoji.d.ts.map +0 -1
  190. package/dist/types/utils/deprecationWarning.d.ts +0 -2
  191. package/dist/types/utils/deprecationWarning.d.ts.map +0 -1
@@ -684,6 +684,8 @@
684
684
  --badge-text: var(--text-primary);
685
685
  --badge-bg-default: #ffffff;
686
686
  --badge-text-on-accent: #ffffff;
687
+ --badge-text-on-inverse: #ffffff;
688
+ --badge-bg-inverse: var(--chrome-1000);
687
689
  /* ─── Control (remove, progress bar, toggle, playback, checkbox, play button, thumb, radio) ─── */
688
690
  --control-remove-control-bg: #1a1b25;
689
691
  --control-remove-control-icon: #ffffff;
@@ -927,6 +929,104 @@
927
929
  --avatar-presence-border: var(--border-core-inverse);
928
930
  }
929
931
 
932
+ /* Numeric styles are used for compact, layout-critical UI elements such as:
933
+ - badge counts,
934
+ - avatar initials,
935
+ - keyboard key labels, and
936
+ - numeric labels inside pills.
937
+ Numeric tokens are classified as layout-stable UI indicators, not content text. */
938
+ .str-chat {
939
+ /* The font used in the chat, by default, we use [preinstalled OS fonts](https://systemfontstack.com/) */
940
+ --str-chat__font-family:
941
+ var(--typography-font-family-sans), system-ui, -apple-system, BlinkMacSystemFont,
942
+ Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
943
+ --str-chat__font-heading-xs: normal var(--typography-font-weight-semi-bold)
944
+ var(--typography-font-size-sm) / var(--typography-line-height-normal)
945
+ var(--str-chat__font-family);
946
+ --str-chat__font-heading-sm: normal var(--typography-font-weight-semi-bold)
947
+ var(--typography-font-size-md) / var(--typography-line-height-normal)
948
+ var(--str-chat__font-family);
949
+ --str-chat__font-heading-md: normal var(--typography-font-weight-semi-bold)
950
+ var(--typography-font-size-lg) / var(--typography-line-height-relaxed)
951
+ var(--str-chat__font-family);
952
+ --str-chat__font-heading-lg: normal var(--typography-font-weight-semi-bold)
953
+ var(--typography-font-size-xl) / var(--typography-line-height-relaxed)
954
+ var(--str-chat__font-family);
955
+ --str-chat__font-body-default: normal var(--typography-font-weight-regular)
956
+ var(--typography-font-size-md) / var(--typography-line-height-normal)
957
+ var(--str-chat__font-family);
958
+ --str-chat__font-body-emphasis: normal var(--typography-font-weight-semi-bold)
959
+ var(--typography-font-size-md) / var(--typography-line-height-normal)
960
+ var(--str-chat__font-family);
961
+ --str-chat__font-body-link: normal var(--typography-font-weight-regular)
962
+ var(--typography-font-size-md) / var(--typography-line-height-normal)
963
+ var(--str-chat__font-family);
964
+ --str-chat__font-body-link-emphasis: normal var(--typography-font-weight-semi-bold)
965
+ var(--typography-font-size-md) / var(--typography-line-height-normal)
966
+ var(--str-chat__font-family);
967
+ --str-chat__font-caption-default: normal var(--typography-font-weight-regular)
968
+ var(--typography-font-size-sm) / var(--typography-line-height-tight)
969
+ var(--str-chat__font-family);
970
+ --str-chat__font-caption-emphasis: normal var(--typography-font-weight-semi-bold)
971
+ var(--typography-font-size-sm) / var(--typography-line-height-tight)
972
+ var(--str-chat__font-family);
973
+ --str-chat__font-caption-link: normal var(--typography-font-weight-regular)
974
+ var(--typography-font-size-sm) / var(--typography-line-height-tight)
975
+ var(--str-chat__font-family);
976
+ --str-chat__font-caption-link-emphasis: normal var(--typography-font-weight-semi-bold)
977
+ var(--typography-font-size-sm) / var(--typography-line-height-tight)
978
+ var(--str-chat__font-family);
979
+ --str-chat__font-metadata-default: normal var(--typography-font-weight-regular)
980
+ var(--typography-font-size-xs) / var(--typography-line-height-tight)
981
+ var(--str-chat__font-family);
982
+ --str-chat__font-metadata-emphasis: normal var(--typography-font-weight-semi-bold)
983
+ var(--typography-font-size-xs) / var(--typography-line-height-tight)
984
+ var(--str-chat__font-family);
985
+ --str-chat__font-metadata-link: normal var(--typography-font-weight-regular)
986
+ var(--typography-font-size-xs) / var(--typography-line-height-tight)
987
+ var(--str-chat__font-family);
988
+ --str-chat__font-metadata-link-emphasis: normal var(--typography-font-weight-semi-bold)
989
+ var(--typography-font-size-xs) / var(--typography-line-height-tight)
990
+ var(--str-chat__font-family);
991
+ --str-chat__font-numeric-sm: normal var(--typography-font-weight-bold)
992
+ var(--typography-font-size-micro) / 100% var(--str-chat__font-family);
993
+ --str-chat__font-numeric-md: normal var(--typography-font-weight-bold)
994
+ var(--typography-font-size-xxs) / 100% var(--str-chat__font-family);
995
+ --str-chat__font-numeric-lg: normal var(--typography-font-weight-bold)
996
+ var(--typography-font-size-xs) / 100% var(--str-chat__font-family);
997
+ --str-chat__font-numeric-xl: normal var(--typography-font-weight-bold)
998
+ var(--typography-font-size-sm) / var(--line-height-line-height-14)
999
+ var(--str-chat__font-family);
1000
+ }
1001
+
1002
+ /*
1003
+ Shadows on Web communicate visual separation and hierarchy through composed box-shadow layers.
1004
+
1005
+ Unlike iOS (single shadow token) and Android (dp elevation), web elevation is constructed
1006
+ from multiple shadow layers to simulate depth and ambient light.
1007
+
1008
+ Each shadow level consists of predefined layered shadows.
1009
+ Components must use these tokens instead of defining custom box-shadow values.
1010
+
1011
+ Higher levels combine stronger blur, increased offset, and additional ambient layers
1012
+ to create clearer separation from the base surface.
1013
+ */
1014
+ .str-chat,
1015
+ .str-chat__theme-light {
1016
+ --str-chat__box-shadow-1: var(--light-elevation-1);
1017
+ --str-chat__box-shadow-2: var(--light-elevation-2);
1018
+ --str-chat__box-shadow-3: var(--light-elevation-3);
1019
+ --str-chat__box-shadow-4: var(--light-elevation-4);
1020
+ }
1021
+
1022
+ .str-chat__theme-dark,
1023
+ .str-chat:not(.str-chat__theme-dark) *:not(.str-chat__theme-dark) .str-chat__theme-inverse {
1024
+ --str-chat__box-shadow-1: var(--dark-elevation-1);
1025
+ --str-chat__box-shadow-2: var(--dark-elevation-2);
1026
+ --str-chat__box-shadow-3: var(--dark-elevation-3);
1027
+ --str-chat__box-shadow-4: var(--dark-elevation-4);
1028
+ }
1029
+
930
1030
  .str-chat {
931
1031
  font-family: var(--str-chat__font-family);
932
1032
  font-size: var(--typography-font-size-md);
@@ -1112,6 +1212,27 @@
1112
1212
  min-height: 24px;
1113
1213
  }
1114
1214
 
1215
+ .str-chat__media-badge {
1216
+ display: flex;
1217
+ align-items: center;
1218
+ gap: var(--spacing-xxs);
1219
+ position: absolute;
1220
+ bottom: var(--spacing-xs);
1221
+ inset-inline-start: var(--spacing-xs);
1222
+ padding: var(--spacing-xxs) var(--spacing-xs);
1223
+ border-radius: var(--radius-max);
1224
+ background: var(--badge-bg-inverse);
1225
+ color: var(--badge-text-on-inverse);
1226
+ font: var(--str-chat__numeric-md-text);
1227
+ overflow: hidden;
1228
+ text-overflow: ellipsis;
1229
+ }
1230
+ .str-chat__media-badge .str-chat__icon {
1231
+ width: var(--icon-size-xs);
1232
+ height: var(--icon-size-xs);
1233
+ fill: currentColor;
1234
+ }
1235
+
1115
1236
  .str-chat .str-chat__image-placeholder {
1116
1237
  width: 100%;
1117
1238
  height: 100%;
@@ -1260,6 +1381,10 @@
1260
1381
  justify-content: center;
1261
1382
  border-radius: var(--button-radius-full);
1262
1383
  }
1384
+ .str-chat .str-chat__button.str-chat__button--circular .str-chat__icon {
1385
+ height: var(--icon-size-sm);
1386
+ width: var(--icon-size-sm);
1387
+ }
1263
1388
  .str-chat .str-chat__button .str-chat__button__content {
1264
1389
  display: flex;
1265
1390
  align-items: center;
@@ -2200,9 +2325,9 @@
2200
2325
 
2201
2326
  .str-chat {
2202
2327
  /* The margin applied to every attachment in the attachment list */
2203
- --str-chat__attachment-margin: var(--space-2)
2204
- /* The border radius used for the borders of the component */
2205
- --str-chat__attachment-list-border-radius: 0;
2328
+ --str-chat__attachment-margin: var(--spacing-xs);
2329
+ /* The border radius used for the borders of the component */
2330
+ --str-chat__attachment-list-border-radius: 0;
2206
2331
  /* The text/icon color of the component */
2207
2332
  --str-chat__attachment-list-color: var(--str-chat__text-color);
2208
2333
  /* The background color of the component */
@@ -2297,28 +2422,6 @@
2297
2422
  --str-chat__file-attachment-border-inline-end: none;
2298
2423
  /* Box shadow applied to file attachments */
2299
2424
  --str-chat__file-attachment-box-shadow: none;
2300
- /* Border radius applied to audio recording widget */
2301
- --str-chat__voice-recording-attachment-widget-border-radius: calc(
2302
- var(--str-chat__message-bubble-border-radius) - var(--str-chat__attachment-margin)
2303
- );
2304
- /* Text color used in audio recording widget */
2305
- --str-chat__voice-recording-attachment-widget-color: var(--str-chat__text-color);
2306
- /* Border radius applied to audio recording widget */
2307
- --str-chat__voice-recording-attachment-widget-secondary-color: var(
2308
- --str-chat__text-low-emphasis-color
2309
- );
2310
- /* The text/icon color for low emphasis texts (for example file size) in audio recording widget */
2311
- --str-chat__voice-recording-attachment-widget-background-color: transparent;
2312
- /* Top border of audio recording widget */
2313
- --str-chat__voice-recording-attachment-widget-border-block-start: none;
2314
- /* Bottom border of audio recording widget */
2315
- --str-chat__voice-recording-attachment-widget-border-block-end: none;
2316
- /* Left (right in RTL layout) border of audio recording widget */
2317
- --str-chat__voice-recording-attachment-widget-border-inline-start: none;
2318
- /* Right (left in RTL layout) border of audio recording widget */
2319
- --str-chat__voice-recording-attachment-widget-border-inline-end: none;
2320
- /* Box shadow applied to audio recording widget */
2321
- --str-chat__voice-recording-attachment-widget-box-shadow: none;
2322
2425
  /* Border radius applied to the play / pause button of audio widget */
2323
2426
  --str-chat__audio-attachment-controls-button-border-radius: var(
2324
2427
  --str-chat__border-radius-circle
@@ -2356,7 +2459,7 @@
2356
2459
  --str-chat__video-height: var(--str-chat__attachment-max-width);
2357
2460
  display: flex;
2358
2461
  flex-direction: column;
2359
- align-items: stretch;
2462
+ align-items: flex-start;
2360
2463
  gap: var(--spacing-xs);
2361
2464
  min-width: 0;
2362
2465
  background: var(--str-chat__attachment-list-background-color);
@@ -2396,6 +2499,15 @@
2396
2499
  align-items: center;
2397
2500
  overflow: hidden;
2398
2501
  }
2502
+ .str-chat__attachment-list .str-chat__message-attachment--audio,
2503
+ .str-chat__attachment-list .str-chat__message-attachment--file,
2504
+ .str-chat__attachment-list .str-chat__message-attachment--unsupported,
2505
+ .str-chat__attachment-list .str-chat__message-attachment--geolocation,
2506
+ .str-chat__attachment-list .str-chat__message-attachment--voiceRecording,
2507
+ .str-chat__attachment-list .str-chat__message-attachment--card {
2508
+ width: var(--str-chat__attachment-max-width);
2509
+ max-width: 100%;
2510
+ }
2399
2511
  .str-chat__attachment-list .str-chat__message-attachment--image:not(.str-chat__message-attachment--card) img {
2400
2512
  height: min(var(--str-chat__attachment-max-width), min(var(--str-chat__attachment-max-width, 1000000) / var(--original-width, 1000000), 1px) * var(--original-height, 1000000));
2401
2513
  max-width: var(--str-chat__attachment-max-width);
@@ -2450,40 +2562,6 @@
2450
2562
  max-width: calc(var(--str-chat__attachment-max-width) - var(--space-24));
2451
2563
  max-height: calc(var(--str-chat__attachment-max-width) - var(--space-24));
2452
2564
  }
2453
- .str-chat__attachment-list .str-chat__message-attachment-unsupported {
2454
- background: var(--str-chat__file-attachment-background-color);
2455
- color: var(--str-chat__file-attachment-color);
2456
- box-shadow: var(--str-chat__file-attachment-box-shadow);
2457
- border-radius: var(--str-chat__file-attachment-border-radius);
2458
- border-block-start: var(--str-chat__file-attachment-border-block-start);
2459
- border-block-end: var(--str-chat__file-attachment-border-block-end);
2460
- border-inline-start: var(--str-chat__file-attachment-border-inline-start);
2461
- border-inline-end: var(--str-chat__file-attachment-border-inline-end);
2462
- display: flex;
2463
- align-items: center;
2464
- justify-content: center;
2465
- padding: var(--space-8);
2466
- column-gap: var(--space-16);
2467
- }
2468
- .str-chat__attachment-list .str-chat__message-attachment-unsupported .str-chat__file-icon {
2469
- width: calc(var(--str-chat__spacing-px) * 30);
2470
- }
2471
- .str-chat__attachment-list .str-chat__message-attachment-unsupported .str-chat__message-attachment-unsupported__metadata {
2472
- min-width: 0;
2473
- flex: 1;
2474
- display: flex;
2475
- flex-direction: column;
2476
- align-items: flex-start;
2477
- justify-content: center;
2478
- }
2479
- .str-chat__attachment-list .str-chat__message-attachment-unsupported .str-chat__message-attachment-unsupported__title {
2480
- white-space: nowrap;
2481
- overflow-y: visible;
2482
- overflow-x: hidden;
2483
- overflow-x: clip;
2484
- text-overflow: ellipsis;
2485
- max-width: 100%;
2486
- }
2487
2565
  .str-chat__attachment-list .str-chat__message-attachment-file--item,
2488
2566
  .str-chat__attachment-list .str-chat__message-attachment-audio-widget {
2489
2567
  display: flex;
@@ -2560,48 +2638,17 @@
2560
2638
  border-inline-start: var(--str-chat__file-attachment-border-inline-start);
2561
2639
  border-inline-end: var(--str-chat__file-attachment-border-inline-end);
2562
2640
  }
2563
- .str-chat__attachment-list .str-chat__message-attachment__voice-recording-widget {
2564
- background: var(--str-chat__voice-recording-attachment-widget-background-color);
2565
- color: var(--str-chat__voice-recording-attachment-widget-color);
2566
- box-shadow: var(--str-chat__voice-recording-attachment-widget-box-shadow);
2567
- border-radius: var(--str-chat__voice-recording-attachment-widget-border-radius);
2568
- border-block-start: var(--str-chat__voice-recording-attachment-widget-border-block-start);
2569
- border-block-end: var(--str-chat__voice-recording-attachment-widget-border-block-end);
2570
- border-inline-start: var(--str-chat__voice-recording-attachment-widget-border-inline-start);
2571
- border-inline-end: var(--str-chat__voice-recording-attachment-widget-border-inline-end);
2572
- display: flex;
2573
- align-items: center;
2574
- justify-content: center;
2575
- padding-block: var(--spacing-xs);
2576
- padding-inline-start: var(--spacing-xs);
2577
- padding-inline-end: var(--spacing-sm);
2578
- min-height: 60px;
2579
- }
2580
- .str-chat__attachment-list .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__play-button-container {
2581
- padding: var(--spacing-xxs);
2582
- }
2583
- .str-chat__attachment-list .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__metadata {
2584
- min-width: 180px;
2585
- padding-inline: var(--spacing-xs);
2586
- }
2587
- .str-chat__attachment-list .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__metadata a {
2588
- cursor: pointer;
2589
- text-decoration: none;
2590
- color: var(--str-chat__voice-recording-attachment-widget-color);
2591
- }
2592
- .str-chat__attachment-list .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__metadata .str-chat__message-attachment-download-icon svg {
2593
- width: calc(var(--str-chat__spacing-px) * 24);
2594
- height: calc(var(--str-chat__spacing-px) * 16);
2595
- }
2596
- .str-chat__attachment-list .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__timer {
2597
- min-width: calc(var(--str-chat__spacing-px) * 40);
2598
- width: calc(var(--str-chat__spacing-px) * 40);
2599
- font: var(--str-chat__metadata-emphasis-text);
2600
- }
2601
2641
  .str-chat__attachment-list .str-chat__message-attachment-download-icon {
2602
2642
  --str-chat-icon-height: calc(var(--str-chat__spacing-px) * 16);
2603
2643
  }
2604
2644
 
2645
+ .str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-no-text:not(.str-chat__message--has-quoted-message) .str-chat__message-bubble {
2646
+ padding: 0;
2647
+ }
2648
+
2649
+ .str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__attachment-list {
2650
+ --str-chat__attachment-max-width: var(--str-chat__message-max-width);
2651
+ }
2605
2652
  .str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-bubble {
2606
2653
  border: 1px solid var(--chat-border-incoming);
2607
2654
  box-shadow: var(--background-core-elevation-0);
@@ -2609,11 +2656,10 @@
2609
2656
  .str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-attachment {
2610
2657
  background-color: var(--chat-bg-incoming);
2611
2658
  }
2612
- .str-chat__message.str-chat__message--has-single-attachment.str-chat__message--has-no-text .str-chat__message-attachment .str-chat__message-attachment__voice-recording-widget {
2613
- padding: unset;
2614
- padding-inline-end: var(--spacing-xxs);
2615
- }
2616
2659
 
2660
+ .str-chat__message--me .str-chat__attachment-list {
2661
+ align-items: flex-end;
2662
+ }
2617
2663
  .str-chat__message--me .str-chat__message-attachment {
2618
2664
  background-color: var(--chat-bg-attachment-outgoing);
2619
2665
  border-radius: var(--message-bubble-radius-attachment);
@@ -2761,7 +2807,8 @@
2761
2807
  border-inline-start: var(--str-chat__audio-attachment-widget-border-inline-start);
2762
2808
  border-inline-end: var(--str-chat__audio-attachment-widget-border-inline-end);
2763
2809
  flex: 1 1 auto;
2764
- min-width: 276px;
2810
+ width: 100%;
2811
+ min-width: 0;
2765
2812
  }
2766
2813
  .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--play-controls {
2767
2814
  display: flex;
@@ -2770,6 +2817,7 @@
2770
2817
  }
2771
2818
  .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--data {
2772
2819
  flex: 1;
2820
+ min-width: 0;
2773
2821
  display: flex;
2774
2822
  flex-direction: column;
2775
2823
  gap: var(--spacing-xxs);
@@ -2806,6 +2854,7 @@
2806
2854
  }
2807
2855
  .str-chat__message-attachment-audio-widget .str-chat__message-attachment-audio-widget--text-second-row .str-chat__message-attachment-file--item-size {
2808
2856
  line-height: calc(var(--str-chat__spacing-px) * 14);
2857
+ font: var(--str-chat__font-metadata-default);
2809
2858
  }
2810
2859
 
2811
2860
  .str-chat__message-attachment-card--audio .str-chat__message-attachment-card--content {
@@ -2857,7 +2906,8 @@
2857
2906
  display: flex;
2858
2907
  flex-direction: column;
2859
2908
  height: 200px;
2860
- width: 200px;
2909
+ width: 100%;
2910
+ max-width: var(--str-chat__attachment-max-width);
2861
2911
  }
2862
2912
  .str-chat__message-attachment-geolocation .str-chat__message-attachment-geolocation__location-preview {
2863
2913
  flex: 1;
@@ -2932,6 +2982,10 @@
2932
2982
  width: 100%;
2933
2983
  cursor: default;
2934
2984
  }
2985
+ .str-chat__message-attachment-giphy .str-chat__image-placeholder {
2986
+ height: var(--str-chat__gif-height);
2987
+ width: var(--str-chat__attachment-max-width);
2988
+ }
2935
2989
 
2936
2990
  .str-chat__giphy-badge {
2937
2991
  display: inline-flex;
@@ -2952,6 +3006,12 @@
2952
3006
  text-transform: uppercase;
2953
3007
  }
2954
3008
 
3009
+ .str-chat__message-attachment--giphy--actions .str-chat__message-attachment-giphy {
3010
+ height: var(--str-chat__gif-height);
3011
+ }
3012
+ .str-chat__message-attachment--giphy--actions .str-chat__message-attachment-giphy img.str-chat__base-image {
3013
+ height: var(--str-chat__gif-height);
3014
+ }
2955
3015
  .str-chat__message-attachment--giphy--actions .str-chat__visibility-disclaimer {
2956
3016
  display: flex;
2957
3017
  padding: var(--spacing-sm, 12px);
@@ -3262,6 +3322,132 @@
3262
3322
  background-position: -200% 0;
3263
3323
  }
3264
3324
  }
3325
+ .str-chat {
3326
+ /* The border radius used for the borders of file attachments */
3327
+ --str-chat__unsupported-attachment-border-radius: calc(
3328
+ var(--str-chat__message-bubble-border-radius) - var(--str-chat__attachment-margin)
3329
+ );
3330
+ /* The text/icon color of file attachments */
3331
+ --str-chat__unsupported-attachment-color: var(--str-chat__text-color);
3332
+ /* The text/icon color of file attachments for low emphasis texts (for example file size) */
3333
+ --str-chat__unsupported-attachment-secondary-color: var(
3334
+ --str-chat__text-low-emphasis-color
3335
+ );
3336
+ /* The background color of file attachments */
3337
+ --str-chat__unsupported-attachment-background-color: transparent;
3338
+ /* Top border of file attachments */
3339
+ --str-chat__unsupported-attachment-border-block-start: none;
3340
+ /* Bottom border of file attachments */
3341
+ --str-chat__unsupported-attachment-border-block-end: none;
3342
+ /* Left (right in RTL layout) border of file attachments */
3343
+ --str-chat__unsupported-attachment-border-inline-start: none;
3344
+ /* Right (left in RTL layout) border of file attachments */
3345
+ --str-chat__unsupported-attachment-border-inline-end: none;
3346
+ /* Box shadow applied to file attachments */
3347
+ --str-chat__unsupported-attachment-box-shadow: none;
3348
+ }
3349
+
3350
+ .str-chat__message-attachment-unsupported {
3351
+ background: var(--str-chat__unsupported-attachment-background-color);
3352
+ color: var(--str-chat__unsupported-attachment-color);
3353
+ box-shadow: var(--str-chat__unsupported-attachment-box-shadow);
3354
+ border-radius: var(--str-chat__unsupported-attachment-border-radius);
3355
+ border-block-start: var(--str-chat__unsupported-attachment-border-block-start);
3356
+ border-block-end: var(--str-chat__unsupported-attachment-border-block-end);
3357
+ border-inline-start: var(--str-chat__unsupported-attachment-border-inline-start);
3358
+ border-inline-end: var(--str-chat__unsupported-attachment-border-inline-end);
3359
+ display: flex;
3360
+ align-items: center;
3361
+ justify-content: center;
3362
+ padding: var(--spacing-md);
3363
+ column-gap: var(--spacing-xs);
3364
+ }
3365
+ .str-chat__message-attachment-unsupported .str-chat__icon {
3366
+ height: calc(var(--str-chat__spacing-px) * 20);
3367
+ width: calc(var(--str-chat__spacing-px) * 20);
3368
+ }
3369
+ .str-chat__message-attachment-unsupported .str-chat__message-attachment-unsupported__metadata {
3370
+ min-width: 0;
3371
+ flex: 1;
3372
+ height: stretch;
3373
+ display: flex;
3374
+ align-items: center;
3375
+ }
3376
+ .str-chat__message-attachment-unsupported .str-chat__message-attachment-unsupported__title {
3377
+ white-space: nowrap;
3378
+ overflow-y: visible;
3379
+ overflow-x: hidden;
3380
+ overflow-x: clip;
3381
+ text-overflow: ellipsis;
3382
+ font: var(--str-chat__font-caption-emphasis);
3383
+ color: var(--text-primary);
3384
+ max-width: 100%;
3385
+ }
3386
+
3387
+ .str-chat {
3388
+ /* Border radius applied to audio recording widget */
3389
+ --str-chat__voice-recording-attachment-widget-border-radius: calc(
3390
+ var(--str-chat__message-bubble-border-radius) - var(--str-chat__attachment-margin)
3391
+ );
3392
+ /* Text color used in audio recording widget */
3393
+ --str-chat__voice-recording-attachment-widget-color: var(--str-chat__text-color);
3394
+ /* Border radius applied to audio recording widget */
3395
+ --str-chat__voice-recording-attachment-widget-secondary-color: var(
3396
+ --str-chat__text-low-emphasis-color
3397
+ );
3398
+ /* The text/icon color for low emphasis texts (for example file size) in audio recording widget */
3399
+ --str-chat__voice-recording-attachment-widget-background-color: transparent;
3400
+ /* Top border of audio recording widget */
3401
+ --str-chat__voice-recording-attachment-widget-border-block-start: none;
3402
+ /* Bottom border of audio recording widget */
3403
+ --str-chat__voice-recording-attachment-widget-border-block-end: none;
3404
+ /* Left (right in RTL layout) border of audio recording widget */
3405
+ --str-chat__voice-recording-attachment-widget-border-inline-start: none;
3406
+ /* Right (left in RTL layout) border of audio recording widget */
3407
+ --str-chat__voice-recording-attachment-widget-border-inline-end: none;
3408
+ /* Box shadow applied to audio recording widget */
3409
+ --str-chat__voice-recording-attachment-widget-box-shadow: none;
3410
+ }
3411
+
3412
+ .str-chat__message-attachment__voice-recording-widget {
3413
+ background: var(--str-chat__voice-recording-attachment-widget-background-color);
3414
+ color: var(--str-chat__voice-recording-attachment-widget-color);
3415
+ box-shadow: var(--str-chat__voice-recording-attachment-widget-box-shadow);
3416
+ border-radius: var(--str-chat__voice-recording-attachment-widget-border-radius);
3417
+ border-block-start: var(--str-chat__voice-recording-attachment-widget-border-block-start);
3418
+ border-block-end: var(--str-chat__voice-recording-attachment-widget-border-block-end);
3419
+ border-inline-start: var(--str-chat__voice-recording-attachment-widget-border-inline-start);
3420
+ border-inline-end: var(--str-chat__voice-recording-attachment-widget-border-inline-end);
3421
+ display: flex;
3422
+ align-items: center;
3423
+ justify-content: center;
3424
+ width: 100%;
3425
+ min-width: 0;
3426
+ min-height: 60px;
3427
+ padding: var(--spacing-xs);
3428
+ }
3429
+ .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__play-button-container {
3430
+ padding: var(--spacing-xxs);
3431
+ }
3432
+ .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__metadata {
3433
+ flex: 1;
3434
+ min-width: 0;
3435
+ }
3436
+ .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__metadata a {
3437
+ cursor: pointer;
3438
+ text-decoration: none;
3439
+ color: var(--str-chat__voice-recording-attachment-widget-color);
3440
+ }
3441
+ .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__metadata .str-chat__message-attachment-download-icon svg {
3442
+ width: calc(var(--str-chat__spacing-px) * 24);
3443
+ height: calc(var(--str-chat__spacing-px) * 16);
3444
+ }
3445
+ .str-chat__message-attachment__voice-recording-widget .str-chat__message-attachment__voice-recording-widget__timer {
3446
+ min-width: calc(var(--str-chat__spacing-px) * 40);
3447
+ width: calc(var(--str-chat__spacing-px) * 40);
3448
+ font: var(--str-chat__metadata-emphasis-text);
3449
+ }
3450
+
3265
3451
  .str-chat .str-chat__duration-display {
3266
3452
  letter-spacing: 0;
3267
3453
  min-width: 35px;
@@ -3384,14 +3570,22 @@
3384
3570
  width: 14px;
3385
3571
  border-radius: var(--radius-max);
3386
3572
  cursor: grab;
3573
+ transition: inset-inline-start 250ms linear;
3387
3574
  }
3388
3575
  .str-chat .str-chat__wave-progress-bar__amplitude-bar {
3389
3576
  background: var(--chat-waveform-bar);
3390
3577
  border-radius: var(--radius-max);
3578
+ transition: background 250ms linear;
3391
3579
  }
3392
3580
  .str-chat .str-chat__wave-progress-bar__amplitude-bar--active {
3393
3581
  background: var(--chat-waveform-bar-playing);
3394
3582
  }
3583
+ .str-chat .str-chat__wave-progress-bar__track--dragging .str-chat__wave-progress-bar__progress-indicator {
3584
+ transition: none;
3585
+ }
3586
+ .str-chat .str-chat__wave-progress-bar__track--dragging .str-chat__wave-progress-bar__amplitude-bar {
3587
+ transition: none;
3588
+ }
3395
3589
  .str-chat .str-chat__wave-progress-bar__track--playback-initiated .str-chat__wave-progress-bar__progress-indicator {
3396
3590
  background: var(--accent-primary);
3397
3591
  }
@@ -3949,6 +4143,7 @@
3949
4143
  overflow-x: hidden;
3950
4144
  max-width: 100%;
3951
4145
  row-gap: var(--spacing-xxs);
4146
+ width: 100%;
3952
4147
  }
3953
4148
  .str-chat__channel-header .str-chat__channel-header__end {
3954
4149
  flex: 1;
@@ -3970,6 +4165,7 @@
3970
4165
  font: var(--str-chat__caption-default-text);
3971
4166
  color: var(--str-chat__channel-header__data__subtitle-color);
3972
4167
  }
4168
+
3973
4169
  .str-chat {
3974
4170
  /* The border radius used for the borders of the component */
3975
4171
  --str-chat__channel-list-border-radius: 0;
@@ -4145,36 +4341,6 @@
4145
4341
  inset-inline-start: var(--str-chat__chat-view-selector-mobile-width, 0px);
4146
4342
  width: calc(100% - var(--str-chat__chat-view-selector-mobile-width, 0px));
4147
4343
  }
4148
- .str-chat__channel-list.str-chat__channel-list--open {
4149
- pointer-events: auto;
4150
- transform: translateX(0);
4151
- transition-delay: 0s, 0s;
4152
- visibility: visible;
4153
- }
4154
- }
4155
- .str-chat__channel-list {
4156
- /* Desktop (≥768px): collapse when nav closed so main content uses space. */
4157
- }
4158
- @media (min-width: 768px) {
4159
- .str-chat__channel-list.str-chat__channel-list--open {
4160
- flex-basis: var(--str-chat__channel-list-width);
4161
- max-width: 100%;
4162
- min-width: 280px;
4163
- opacity: 1;
4164
- pointer-events: auto;
4165
- transform: translateX(0);
4166
- width: var(--str-chat__channel-list-width);
4167
- }
4168
- .str-chat__channel-list:not(.str-chat__channel-list--open) {
4169
- flex: 0 0 0;
4170
- width: 0;
4171
- min-width: 0;
4172
- max-width: 0;
4173
- opacity: 0;
4174
- overflow: hidden;
4175
- pointer-events: none;
4176
- transform: translateX(calc(0px - var(--str-chat__channel-list-transition-offset)));
4177
- }
4178
4344
  }
4179
4345
  @media (prefers-reduced-motion: reduce) {
4180
4346
  .str-chat__channel-list {
@@ -4185,10 +4351,7 @@
4185
4351
  .str-chat__channel-list__header {
4186
4352
  display: flex;
4187
4353
  align-items: center;
4188
- opacity: 1;
4189
4354
  padding: var(--spacing-md);
4190
- transform: translateX(0);
4191
- transition: opacity var(--str-chat__channel-list-transition-duration, 180ms) var(--str-chat__channel-list-transition-easing, ease), transform var(--str-chat__channel-list-transition-duration, 180ms) var(--str-chat__channel-list-transition-easing, ease);
4192
4355
  width: 100%;
4193
4356
  }
4194
4357
  .str-chat__channel-list__header .str-chat__channel-list__header__title {
@@ -4196,25 +4359,6 @@
4196
4359
  font: var(--str-chat__heading-lg-text);
4197
4360
  color: var(--text-primary);
4198
4361
  }
4199
- .str-chat__channel-list__header.str-chat__channel-list__header--sidebar-collapsed {
4200
- opacity: 0;
4201
- pointer-events: none;
4202
- transform: translateX(calc(0px - var(--str-chat__channel-list-transition-offset, 8px)));
4203
- }
4204
- @media (max-width: 767px) {
4205
- .str-chat__channel-list__header {
4206
- transition: none;
4207
- }
4208
- .str-chat__channel-list__header.str-chat__channel-list__header--sidebar-collapsed {
4209
- opacity: 1;
4210
- transform: none;
4211
- }
4212
- }
4213
- @media (prefers-reduced-motion: reduce) {
4214
- .str-chat__channel-list__header {
4215
- transition: none;
4216
- }
4217
- }
4218
4362
 
4219
4363
  .str-chat__channel-list-item-container {
4220
4364
  padding: var(--spacing-xxs);
@@ -4341,51 +4485,15 @@
4341
4485
  width: 100%;
4342
4486
  height: 100%;
4343
4487
  min-height: 0;
4344
- position: relative;
4345
- }
4346
- .str-chat__chat-view .str-chat__chat-view__selector {
4347
- display: flex;
4348
- flex-direction: column;
4349
- padding: var(--spacing-md);
4350
- gap: var(--spacing-xs);
4351
- border-inline-end: 1px solid var(--str-chat-selector-border-color);
4352
- background-color: var(--str-chat-selector-background-color);
4353
- /* Mobile: hide when nav closed, show when nav open. */
4354
- }
4355
- @media (max-width: 767px) {
4356
- .str-chat__chat-view .str-chat__chat-view__selector.str-chat__chat-view__selector--nav-closed {
4357
- pointer-events: none;
4358
- transform: translateX(calc(0px - var(--str-chat__chat-view-selector-transition-offset)));
4359
- visibility: hidden;
4360
- }
4361
- .str-chat__chat-view .str-chat__chat-view__selector {
4362
- inset-block: 0;
4363
- inset-inline-start: 0;
4364
- position: absolute;
4365
- transition: transform var(--str-chat__chat-view-selector-transition-duration) var(--str-chat__chat-view-selector-transition-easing), visibility 0s linear var(--str-chat__chat-view-selector-transition-duration);
4366
- width: var(--str-chat__chat-view-selector-mobile-width);
4367
- z-index: 2;
4368
- }
4369
- .str-chat__chat-view .str-chat__chat-view__selector.str-chat__chat-view__selector--nav-open {
4370
- pointer-events: auto;
4371
- transform: translateX(0);
4372
- transition-delay: 0s, 0s;
4373
- visibility: visible;
4374
- }
4375
- }
4376
- .str-chat__chat-view .str-chat__chat-view__selector {
4377
- /* Desktop (≥768px): collapse when nav closed so main content uses space. */
4378
- }
4379
- @media (min-width: 768px) {
4380
- .str-chat__chat-view .str-chat__chat-view__selector.str-chat__chat-view__selector--nav-closed {
4381
- width: 0;
4382
- min-width: 0;
4383
- overflow: hidden;
4384
- padding-inline: 0;
4385
- padding-block: 0;
4386
- gap: 0;
4387
- border-inline-end: none;
4388
- }
4488
+ position: relative;
4489
+ }
4490
+ .str-chat__chat-view .str-chat__chat-view__selector {
4491
+ display: flex;
4492
+ flex-direction: column;
4493
+ padding: var(--spacing-md);
4494
+ gap: var(--spacing-xs);
4495
+ border-inline-end: 1px solid var(--str-chat-selector-border-color);
4496
+ background-color: var(--str-chat-selector-background-color);
4389
4497
  }
4390
4498
  .str-chat__chat-view .str-chat__chat-view__selector .str-chat__chat-view__selector-button-container {
4391
4499
  display: flex;
@@ -4981,6 +5089,14 @@
4981
5089
  }
4982
5090
  }
4983
5091
 
5092
+ .str-chat__circular-progress-indicator {
5093
+ width: 100%;
5094
+ height: 100%;
5095
+ }
5096
+ .str-chat__circular-progress-indicator svg {
5097
+ display: block;
5098
+ }
5099
+
4984
5100
  .str-chat__share-location-dialog {
4985
5101
  width: 100%;
4986
5102
  max-width: 520px;
@@ -5194,7 +5310,7 @@
5194
5310
  /* The maximum allowed width of the message component */
5195
5311
  --str-chat__message-max-width: calc(var(--str-chat__spacing-px) * 400);
5196
5312
  /* The maximum allowed width of the message component, if it has attachments */
5197
- --str-chat__message-with-attachment-max-width: calc(var(--str-chat__spacing-px) * 300);
5313
+ --str-chat__message-with-attachment-max-width: calc(var(--str-chat__spacing-px) * 400);
5198
5314
  }
5199
5315
 
5200
5316
  /* Make spaces between message groups */
@@ -5221,6 +5337,7 @@
5221
5337
  padding-inline: var(--str-chat__message-composer-padding);
5222
5338
  }
5223
5339
  .str-chat__message .str-chat__message-bubble {
5340
+ width: min(100%, var(--str-chat__message-max-width));
5224
5341
  max-width: var(--str-chat__message-max-width);
5225
5342
  display: flex;
5226
5343
  flex-direction: column;
@@ -5239,6 +5356,15 @@
5239
5356
  background-color: transparent;
5240
5357
  overflow: visible;
5241
5358
  }
5359
+ .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-1 .str-chat__message-bubble,
5360
+ .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-1 .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text,
5361
+ .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-1 .str-chat__message-inner .str-chat__message-replies-count-button-wrapper, .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-2 .str-chat__message-bubble,
5362
+ .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-2 .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text,
5363
+ .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-2 .str-chat__message-inner .str-chat__message-replies-count-button-wrapper, .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-3 .str-chat__message-bubble,
5364
+ .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-3 .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text,
5365
+ .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-3 .str-chat__message-inner .str-chat__message-replies-count-button-wrapper {
5366
+ padding-inline: 0;
5367
+ }
5242
5368
  .str-chat__message.str-chat__message--is-emoji-only.str-chat__message--is-emoji-only-count-1 .str-chat__message-inner .str-chat__message-bubble {
5243
5369
  font-size: 64px;
5244
5370
  line-height: 64px;
@@ -5251,11 +5377,6 @@
5251
5377
  font-size: 32px;
5252
5378
  line-height: 32px;
5253
5379
  }
5254
- .str-chat__message.str-chat__message--is-emoji-only .str-chat__message-bubble,
5255
- .str-chat__message.str-chat__message--is-emoji-only .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text,
5256
- .str-chat__message.str-chat__message--is-emoji-only .str-chat__message-inner .str-chat__message-replies-count-button-wrapper {
5257
- padding-inline: 0;
5258
- }
5259
5380
  .str-chat__message.str-chat__message--is-emoji-only .str-chat__message-replies-count-button-wrapper::after {
5260
5381
  display: none;
5261
5382
  }
@@ -5264,6 +5385,7 @@
5264
5385
  --str-chat__message-max-width: var(--str-chat__message-with-attachment-max-width);
5265
5386
  }
5266
5387
  .str-chat__message.str-chat__message--has-attachment .str-chat__message-bubble {
5388
+ width: min(100%, var(--str-chat__message-max-width));
5267
5389
  max-width: var(--str-chat__message-max-width);
5268
5390
  }
5269
5391
 
@@ -5302,9 +5424,20 @@
5302
5424
  display: flex;
5303
5425
  align-items: center;
5304
5426
  gap: var(--spacing-xxs);
5305
- font: var(--str-chat__metadata-default-text);
5427
+ font: var(--str-chat__metadata-emphasis-text);
5306
5428
  color: var(--text-primary-text);
5307
5429
  }
5430
+ .str-chat__message .str-chat__message-pin-indicator .str-chat__message-pin-indicator__content .str-chat__message-pin-indicator__icon {
5431
+ display: flex;
5432
+ align-items: center;
5433
+ }
5434
+ .str-chat__message .str-chat__message-pin-indicator .str-chat__message-pin-indicator__content .str-chat__message-pin-indicator__icon .str-chat__icon {
5435
+ width: var(--icon-size-xs);
5436
+ height: var(--icon-size-xs);
5437
+ }
5438
+ .str-chat__message .str-chat__message-pin-indicator .str-chat__message-pin-indicator__content .str-chat__message-pin-indicator__icon .str-chat__icon path {
5439
+ stroke-width: 2px;
5440
+ }
5308
5441
  .str-chat__message.str-chat__message--me .str-chat__message-pin-indicator .str-chat__message-pin-indicator__content {
5309
5442
  justify-content: flex-end;
5310
5443
  }
@@ -5331,8 +5464,6 @@
5331
5464
  }
5332
5465
  .str-chat__message.str-chat__message--other .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--top) {
5333
5466
  padding-inline-start: calc(var(--str-chat__message-reactions-host-offset-x) * -1);
5334
- }
5335
- .str-chat__message.str-chat__message--other .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--top):has(.str-chat__message-reactions--flipped-horizontally) {
5336
5467
  margin-inline-end: var(--str-chat__message-reactions-host-offset-x);
5337
5468
  }
5338
5469
  .str-chat__message.str-chat__message--other .str-chat__message-inner .str-chat__message-reactions-host .str-chat__message-reactions.str-chat__message-reactions--segmented.str-chat__message-reactions--bottom > .str-chat__message-reactions__list {
@@ -5367,8 +5498,6 @@
5367
5498
  }
5368
5499
  .str-chat__message.str-chat__message--me .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--top) {
5369
5500
  padding-inline-end: calc(var(--str-chat__message-reactions-host-offset-x) * -1);
5370
- }
5371
- .str-chat__message.str-chat__message--me .str-chat__message-inner .str-chat__message-reactions-host:has(.str-chat__message-reactions--top):has(.str-chat__message-reactions--flipped-horizontally) {
5372
5501
  margin-inline-start: var(--str-chat__message-reactions-host-offset-x);
5373
5502
  }
5374
5503
  .str-chat__message.str-chat__message--me .str-chat__message-inner .str-chat__message-reactions-host .str-chat__message-reactions.str-chat__message-reactions--segmented.str-chat__message-reactions--bottom > .str-chat__message-reactions__list {
@@ -5428,7 +5557,7 @@
5428
5557
  overflow: hidden;
5429
5558
  }
5430
5559
  .str-chat__message .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text {
5431
- padding-inline: var(--spacing-sm);
5560
+ padding-inline: var(--spacing-xxs);
5432
5561
  }
5433
5562
  .str-chat__message .str-chat__message-inner .str-chat__message-bubble .str-chat__message-text p {
5434
5563
  white-space: pre-line;
@@ -5455,6 +5584,7 @@
5455
5584
  grid-area: metadata;
5456
5585
  display: flex;
5457
5586
  flex-wrap: wrap;
5587
+ gap: var(--spacing-xxs);
5458
5588
  align-items: center;
5459
5589
  height: var(--size-24);
5460
5590
  color: var(--chat-text-timestamp);
@@ -5474,7 +5604,7 @@
5474
5604
  text-align: end;
5475
5605
  }
5476
5606
  .str-chat__message .str-chat__message--blocked-inner {
5477
- padding-inline: var(--spacing-sm);
5607
+ padding-inline: var(--spacing-xxs);
5478
5608
  }
5479
5609
  .str-chat__message .str-chat__message--blocked-inner p {
5480
5610
  white-space: pre-line;
@@ -5645,8 +5775,12 @@
5645
5775
  border-inline-end: var(--str-chat__message-also-sent-in-channel-border-inline-end);
5646
5776
  font: var(--str-chat__metadata-emphasis-text);
5647
5777
  }
5648
- .str-chat__message-also-sent-in-channel svg path {
5649
- stroke-width: 1.5px;
5778
+ .str-chat__message-also-sent-in-channel .str-chat__icon {
5779
+ height: var(--spacing-sm);
5780
+ width: var(--spacing-sm);
5781
+ }
5782
+ .str-chat__message-also-sent-in-channel .str-chat__icon path {
5783
+ stroke-width: 2px;
5650
5784
  stroke: var(--str-chat__message-also-sent-in-channel-color);
5651
5785
  }
5652
5786
  .str-chat__message-also-sent-in-channel .str-chat__message-also-sent-in-channel__link-button {
@@ -5737,6 +5871,9 @@
5737
5871
  }
5738
5872
  .str-chat .str-chat__message .str-chat__quoted-message-preview {
5739
5873
  background-color: var(--chat-bg-attachment-incoming);
5874
+ width: calc(var(--str-chat__message-with-attachment-max-width) - 2 * var(--spacing-xs));
5875
+ max-width: 100%;
5876
+ min-width: 0;
5740
5877
  }
5741
5878
  .str-chat .str-chat__message--me .str-chat__quoted-message-preview {
5742
5879
  background-color: var(--chat-bg-attachment-outgoing);
@@ -5779,8 +5916,12 @@
5779
5916
  border-inline-end: var(--str-chat__message-saved-for-later-border-inline-end);
5780
5917
  font: var(--str-chat__metadata-emphasis-text);
5781
5918
  }
5919
+ .str-chat__message-saved-for-later svg {
5920
+ width: var(--icon-size-xs);
5921
+ height: var(--icon-size-xs);
5922
+ }
5782
5923
  .str-chat__message-saved-for-later svg path {
5783
- stroke-width: 1.5px;
5924
+ stroke-width: 2px;
5784
5925
  stroke: var(--str-chat__message-saved-for-later-color);
5785
5926
  }
5786
5927
 
@@ -6049,6 +6190,7 @@
6049
6190
  padding: var(--spacing-md);
6050
6191
  padding-inline-end: var(--spacing-sm);
6051
6192
  width: 290px;
6193
+ height: 72px;
6052
6194
  }
6053
6195
  .str-chat .str-chat__attachment-preview-audio .str-chat__attachment-preview-file__data {
6054
6196
  padding-inline-end: var(--spacing-xs);
@@ -6083,42 +6225,23 @@
6083
6225
  cursor: pointer;
6084
6226
  }
6085
6227
  .str-chat .str-chat__attachment-preview-media .str-chat__attachment-preview-media__thumbnail-wrapper {
6086
- border-radius: inherit;
6228
+ border-radius: max(0px, var(--str-chat__attachment-preview-image-border-radius) - 1px);
6087
6229
  overflow: hidden;
6088
6230
  height: 100%;
6089
6231
  width: 100%;
6090
6232
  }
6091
6233
  .str-chat .str-chat__attachment-preview-media .str-chat__attachment-preview-media__thumbnail-wrapper img {
6092
- width: 72px;
6093
- height: 72px;
6234
+ width: 100%;
6235
+ height: 100%;
6094
6236
  object-fit: cover;
6095
6237
  }
6096
- .str-chat .str-chat__attachment-preview-media .str-chat__attachment-preview-media__video-indicator {
6097
- display: flex;
6098
- align-items: center;
6099
- gap: var(--spacing-xxs);
6100
- position: absolute;
6101
- bottom: var(--spacing-xs);
6102
- inset-inline-start: var(--spacing-xs);
6103
- padding: var(--spacing-xxs) var(--spacing-xs);
6104
- border-radius: var(--radius-max);
6105
- background: var(--badge-bg-inverse);
6106
- color: var(--badge-text-on-inverse);
6107
- font: var(--str-chat__numeric-md-text);
6108
- overflow: hidden;
6109
- text-overflow: ellipsis;
6110
- }
6111
- .str-chat .str-chat__attachment-preview-media .str-chat__attachment-preview-media__video-indicator .str-chat__icon {
6112
- width: var(--icon-size-xs);
6113
- height: var(--icon-size-xs);
6114
- fill: currentColor;
6115
- }
6116
6238
  .str-chat .str-chat__attachment-preview-media__overlay {
6117
6239
  display: flex;
6118
6240
  align-items: center;
6119
6241
  justify-content: center;
6120
6242
  position: absolute;
6121
6243
  inset: 0;
6244
+ overflow: hidden;
6122
6245
  border-radius: var(--message-bubble-radius-attachment);
6123
6246
  }
6124
6247
  .str-chat .str-chat__attachment-preview-media__overlay:hover::after {
@@ -6141,14 +6264,14 @@
6141
6264
  .str-chat .str-chat__attachment-preview-media__overlay:active {
6142
6265
  background-color: var(--str-chat__attachment-preview-media-overlay-pressed-background-color);
6143
6266
  }
6144
- .str-chat .str-chat__attachment-preview-media__overlay .str-chat__icon.str-chat__loading-indicator {
6267
+ .str-chat .str-chat__attachment-preview-media__overlay .str-chat__loading-indicator,
6268
+ .str-chat .str-chat__attachment-preview-media__overlay .str-chat__progress-indicator {
6145
6269
  width: var(--icon-size-sm);
6146
6270
  height: var(--icon-size-sm);
6147
6271
  position: absolute;
6148
6272
  inset-inline-start: var(--spacing-xxs);
6149
6273
  bottom: var(--spacing-xxs);
6150
6274
  border-radius: var(--radius-max);
6151
- border-radius: var(--radius-max);
6152
6275
  background: var(--background-core-elevation-0);
6153
6276
  color: var(--accent-primary);
6154
6277
  }
@@ -6205,9 +6328,11 @@
6205
6328
  font-size: var(--typography-font-size-xs);
6206
6329
  line-height: var(--typography-line-height-tight);
6207
6330
  }
6208
- .str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__icon.str-chat__loading-indicator {
6331
+ .str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__loading-indicator,
6332
+ .str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__progress-indicator {
6209
6333
  width: var(--icon-size-sm);
6210
6334
  height: var(--icon-size-sm);
6335
+ color: var(--accent-primary);
6211
6336
  }
6212
6337
  .str-chat .str-chat__attachment-preview-file__info .str-chat__attachment-preview-file__data .str-chat__attachment-preview-file__fatal-error {
6213
6338
  display: flex;
@@ -6844,6 +6969,9 @@
6844
6969
  min-width: 40px;
6845
6970
  overflow: hidden;
6846
6971
  }
6972
+ .str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__image img {
6973
+ object-fit: cover;
6974
+ }
6847
6975
  .str-chat .str-chat__quoted-message-preview .str-chat__quoted-message-preview__image .str-chat__attachment-preview__thumbnail__play-indicator {
6848
6976
  display: flex;
6849
6977
  align-items: center;
@@ -6927,7 +7055,7 @@
6927
7055
  border-color: var(--control-radiocheck-bg-selected, var(--accent-primary));
6928
7056
  }
6929
7057
  .str-chat__send-to-channel-checkbox__container .str-chat__send-to-channel-checkbox__field .str-chat__send-to-channel-checkbox__checkmark {
6930
- color: var(--control-radiocheck-icon-selected);
7058
+ color: var(--control-checkbox-icon);
6931
7059
  opacity: 0;
6932
7060
  display: flex;
6933
7061
  align-items: center;
@@ -6946,6 +7074,69 @@
6946
7074
  transition: color 0.15s ease, border-color 0.15s ease;
6947
7075
  }
6948
7076
 
7077
+ .str-chat {
7078
+ /* The border radius used for the borders of file attachments */
7079
+ --str-chat__unsupported-attachment-preview-border-radius: calc(
7080
+ var(--str-chat__message-bubble-border-radius) - var(--str-chat__attachment-margin)
7081
+ );
7082
+ /* The text/icon color of file attachments */
7083
+ --str-chat__unsupported-attachment-preview-color: var(--str-chat__text-color);
7084
+ /* The text/icon color of file attachments for low emphasis texts (for example file size) */
7085
+ --str-chat__unsupported-attachment-preview-secondary-color: var(
7086
+ --str-chat__text-low-emphasis-color
7087
+ );
7088
+ /* The background color of file attachments */
7089
+ --str-chat__unsupported-attachment-preview-background-color: transparent;
7090
+ /* Top border of file attachments */
7091
+ --str-chat__unsupported-attachment-preview-border-block-start: none;
7092
+ /* Bottom border of file attachments */
7093
+ --str-chat__unsupported-attachment-preview-border-block-end: none;
7094
+ /* Left (right in RTL layout) border of file attachments */
7095
+ --str-chat__unsupported-attachment-preview-border-inline-start: none;
7096
+ /* Right (left in RTL layout) border of file attachments */
7097
+ --str-chat__unsupported-attachment-preview-border-inline-end: none;
7098
+ /* Box shadow applied to file attachments */
7099
+ --str-chat__unsupported-attachment-preview-box-shadow: none;
7100
+ }
7101
+
7102
+ .str-chat__attachment-preview-unsupported {
7103
+ background: var(--str-chat__unsupported-attachment-preview-background-color);
7104
+ color: var(--str-chat__unsupported-attachment-preview-color);
7105
+ box-shadow: var(--str-chat__unsupported-attachment-preview-box-shadow);
7106
+ border-radius: var(--str-chat__unsupported-attachment-preview-border-radius);
7107
+ border-block-start: var(--str-chat__unsupported-attachment-preview-border-block-start);
7108
+ border-block-end: var(--str-chat__unsupported-attachment-preview-border-block-end);
7109
+ border-inline-start: var(--str-chat__unsupported-attachment-preview-border-inline-start);
7110
+ border-inline-end: var(--str-chat__unsupported-attachment-preview-border-inline-end);
7111
+ display: flex;
7112
+ align-items: center;
7113
+ justify-content: center;
7114
+ padding: var(--spacing-md);
7115
+ column-gap: var(--spacing-xs);
7116
+ }
7117
+ .str-chat__attachment-preview-unsupported .str-chat__icon {
7118
+ height: calc(var(--str-chat__spacing-px) * 20);
7119
+ width: calc(var(--str-chat__spacing-px) * 20);
7120
+ }
7121
+ .str-chat__attachment-preview-unsupported .str-chat__attachment-preview-unsupported__metadata {
7122
+ min-width: 0;
7123
+ flex: 1;
7124
+ height: stretch;
7125
+ display: flex;
7126
+ align-items: center;
7127
+ }
7128
+ .str-chat__attachment-preview-unsupported .str-chat__attachment-preview-unsupported__title {
7129
+ white-space: nowrap;
7130
+ overflow-y: visible;
7131
+ overflow-x: hidden;
7132
+ overflow-x: clip;
7133
+ text-overflow: ellipsis;
7134
+ font: var(--str-chat__font-caption-emphasis);
7135
+ color: var(--text-primary);
7136
+ max-width: 100%;
7137
+ height: fit-content;
7138
+ }
7139
+
6949
7140
  .str-chat__main-panel-inner {
6950
7141
  width: 100%;
6951
7142
  height: 100%;
@@ -7228,7 +7419,6 @@
7228
7419
  align-items: center;
7229
7420
  gap: var(--spacing-xs);
7230
7421
  min-height: 48px;
7231
- min-width: 200px;
7232
7422
  max-width: 100%;
7233
7423
  padding: var(--spacing-xs);
7234
7424
  position: relative;
@@ -7243,6 +7433,7 @@
7243
7433
  display: flex;
7244
7434
  flex: 1 1 auto;
7245
7435
  gap: var(--spacing-xs);
7436
+ padding-inline: var(--spacing-xxs) var(--spacing-xs);
7246
7437
  }
7247
7438
  .str-chat__notification .str-chat__notification-content .str-chat__notification-icon {
7248
7439
  display: flex;
@@ -7430,8 +7621,9 @@
7430
7621
  flex-direction: column;
7431
7622
  gap: var(--spacing-xl);
7432
7623
  padding: var(--spacing-xs);
7624
+ width: calc(var(--str-chat__message-with-attachment-max-width) - 2 * var(--spacing-xs));
7625
+ max-width: 100%;
7433
7626
  min-width: 260px;
7434
- max-width: 400px;
7435
7627
  font-size: var(--typography-font-size-sm);
7436
7628
  font-weight: var(--typography-font-weight-regular);
7437
7629
  line-height: var(--typography-line-height-tight);
@@ -7856,9 +8048,8 @@
7856
8048
  align-items: center;
7857
8049
  gap: var(--spacing-xs);
7858
8050
  border-radius: var(--radius-4xl, 32px);
7859
- border: 1px solid var(--border-core-surface-subtle, #e2e6ea);
7860
8051
  background: var(--background-core-elevation-2, #fff);
7861
- box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.16);
8052
+ box-shadow: var(--light-elevation-3);
7862
8053
  }
7863
8054
  .str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list) {
7864
8055
  padding: 0;
@@ -7869,7 +8060,27 @@
7869
8060
  scrollbar-gutter: stable;
7870
8061
  scrollbar-width: none;
7871
8062
  border-radius: var(--radius-lg);
7872
- max-height: 250px;
8063
+ max-height: 320px;
8064
+ }
8065
+ .str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list)::before, .str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list)::after {
8066
+ content: "";
8067
+ position: absolute;
8068
+ width: 100%;
8069
+ inset-inline-start: 0;
8070
+ height: var(--size-16);
8071
+ }
8072
+ .str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list)::after {
8073
+ bottom: 0;
8074
+ border-end-end-radius: inherit;
8075
+ border-end-start-radius: inherit;
8076
+ background: linear-gradient(to bottom, transparent 5%, var(--background-core-elevation-0) 95%);
8077
+ }
8078
+ .str-chat__reaction-selector:has(.str-chat__reaction-selector-extended-list)::before {
8079
+ z-index: 1;
8080
+ top: 0;
8081
+ border-start-end-radius: inherit;
8082
+ border-start-start-radius: inherit;
8083
+ background: linear-gradient(to top, transparent 5%, var(--background-core-elevation-0) 95%);
7873
8084
  }
7874
8085
  .str-chat__reaction-selector .str-chat__reaction-selector__add-button {
7875
8086
  width: 32px;
@@ -7879,25 +8090,6 @@
7879
8090
  width: var(--icon-size-sm);
7880
8091
  height: var(--icon-size-sm);
7881
8092
  }
7882
- .str-chat__reaction-selector .str-chat__reaction-selector-extended-list {
7883
- display: grid;
7884
- grid-template-columns: repeat(7, 1fr);
7885
- height: 100%;
7886
- padding-block: var(--spacing-md);
7887
- padding-inline: var(--spacing-sm);
7888
- }
7889
- .str-chat__reaction-selector .str-chat__reaction-selector-extended-list .str-chat__reaction-selector-extended-list__button .str-chat__reaction-icon {
7890
- height: var(--emoji-md);
7891
- width: var(--emoji-md);
7892
- font-size: var(--emoji-md);
7893
- letter-spacing: var(--typography-letter-spacing-default);
7894
- font-style: normal;
7895
- line-height: 0;
7896
- font-family: system-ui;
7897
- display: flex;
7898
- justify-content: center;
7899
- align-items: center;
7900
- }
7901
8093
  .str-chat__reaction-selector .str-chat__reaction-selector-list {
7902
8094
  list-style: none;
7903
8095
  margin: var(--spacing-none, 0);
@@ -7943,6 +8135,26 @@
7943
8135
  font-family: system-ui, sans-serif;
7944
8136
  }
7945
8137
 
8138
+ .str-chat__reaction-selector-extended-list {
8139
+ display: grid;
8140
+ grid-template-columns: repeat(7, 1fr);
8141
+ height: 100%;
8142
+ padding-block: var(--spacing-md);
8143
+ padding-inline: var(--spacing-sm);
8144
+ }
8145
+ .str-chat__reaction-selector-extended-list .str-chat__reaction-selector-extended-list__button .str-chat__reaction-icon {
8146
+ height: var(--emoji-md);
8147
+ width: var(--emoji-md);
8148
+ font-size: var(--emoji-md);
8149
+ letter-spacing: var(--typography-letter-spacing-default);
8150
+ font-style: normal;
8151
+ line-height: 0;
8152
+ font-family: system-ui;
8153
+ display: flex;
8154
+ justify-content: center;
8155
+ align-items: center;
8156
+ }
8157
+
7946
8158
  .str-chat__message-reactions {
7947
8159
  display: flex;
7948
8160
  }
@@ -8040,20 +8252,41 @@
8040
8252
  max-width: 256px;
8041
8253
  min-width: min(90vw, 256px);
8042
8254
  }
8043
- .str-chat__message-reactions-detail::after {
8255
+ .str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list)::before, .str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list)::after {
8044
8256
  content: "";
8045
8257
  position: absolute;
8046
8258
  width: 100%;
8047
- bottom: 0;
8048
8259
  inset-inline-start: 0;
8049
- height: var(--size-12);
8260
+ height: var(--size-16);
8261
+ }
8262
+ .str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list)::after {
8263
+ bottom: 0;
8050
8264
  border-end-end-radius: inherit;
8051
8265
  border-end-start-radius: inherit;
8052
- background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 5%, rgba(0, 0, 0, 0.1) 130%);
8266
+ background: linear-gradient(to bottom, transparent 5%, var(--background-core-elevation-0) 95%);
8267
+ }
8268
+ .str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list)::before {
8269
+ z-index: 1;
8270
+ top: 0;
8271
+ border-start-end-radius: inherit;
8272
+ border-start-start-radius: inherit;
8273
+ background: linear-gradient(to top, transparent 5%, var(--background-core-elevation-0) 95%);
8274
+ }
8275
+ .str-chat__message-reactions-detail:has(.str-chat__reaction-selector-extended-list) {
8276
+ overflow-x: hidden;
8277
+ overflow-y: auto;
8278
+ overscroll-behavior: contain;
8279
+ scrollbar-gutter: stable;
8280
+ padding: 0;
8281
+ display: block;
8282
+ scrollbar-width: none;
8283
+ max-height: 320px;
8284
+ max-width: unset;
8285
+ min-width: unset;
8053
8286
  }
8054
8287
  .str-chat__message-reactions-detail {
8055
8288
  font-family: var(--typography-font-family-sans);
8056
- box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 4px 8px 0 rgba(0, 0, 0, 0.14), 0 12px 24px 0 rgba(0, 0, 0, 0.1);
8289
+ box-shadow: var(--light-elevation-3);
8057
8290
  padding-block-start: var(--spacing-xxs);
8058
8291
  display: flex;
8059
8292
  flex-direction: column;
@@ -8074,7 +8307,7 @@
8074
8307
  .str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list {
8075
8308
  list-style: none;
8076
8309
  margin: 0;
8077
- padding-inline: var(--spacing-xs);
8310
+ padding-inline: var(--spacing-md);
8078
8311
  padding-block: var(--spacing-xs);
8079
8312
  display: flex;
8080
8313
  flex-wrap: wrap;
@@ -8126,6 +8359,7 @@
8126
8359
  }
8127
8360
  .str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button {
8128
8361
  box-shadow: unset;
8362
+ min-width: var(--size-48);
8129
8363
  }
8130
8364
  .str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button .str-chat__message-reactions-detail__reaction-type-list-item-icon {
8131
8365
  font-family: system-ui;
@@ -8133,10 +8367,46 @@
8133
8367
  font-style: normal;
8134
8368
  line-height: var(--typography-line-height-normal);
8135
8369
  }
8370
+ .str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button .str-chat__message-reactions-detail__reaction-type-list-item-icon .str-chat__icon {
8371
+ width: var(--icon-size-sm);
8372
+ height: var(--icon-size-sm);
8373
+ }
8374
+ .str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button .str-chat__message-reactions-detail__reaction-type-list-item-icon:has(.str-chat__icon) {
8375
+ display: flex;
8376
+ align-items: center;
8377
+ justify-content: center;
8378
+ }
8136
8379
  .str-chat__message-reactions-detail .str-chat__message-reactions-detail__reaction-type-list .str-chat__message-reactions-detail__reaction-type-list-item .str-chat__message-reactions-detail__reaction-type-list-item-button .str-chat__message-reactions-detail__reaction-type-list-item-count {
8137
8380
  color: var(--reaction-text);
8138
8381
  font: var(--str-chat__metadata-emphasis-text);
8139
8382
  }
8383
+ .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container {
8384
+ position: relative;
8385
+ border-radius: inherit;
8386
+ }
8387
+ .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container::before, .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container::after {
8388
+ content: "";
8389
+ position: absolute;
8390
+ width: 100%;
8391
+ inset-inline-start: 0;
8392
+ height: var(--size-16);
8393
+ }
8394
+ .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container::after {
8395
+ bottom: 0;
8396
+ border-end-end-radius: inherit;
8397
+ border-end-start-radius: inherit;
8398
+ background: linear-gradient(to bottom, transparent 5%, var(--background-core-elevation-0) 95%);
8399
+ }
8400
+ .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container::before {
8401
+ z-index: 1;
8402
+ top: 0;
8403
+ border-start-end-radius: inherit;
8404
+ border-start-start-radius: inherit;
8405
+ background: linear-gradient(to top, transparent 5%, var(--background-core-elevation-0) 95%);
8406
+ }
8407
+ .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list-container::before {
8408
+ display: none;
8409
+ }
8140
8410
  .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list {
8141
8411
  overflow-x: hidden;
8142
8412
  overflow-y: auto;
@@ -8145,10 +8415,7 @@
8145
8415
  scrollbar-width: none;
8146
8416
  position: relative;
8147
8417
  padding-block-end: var(--spacing-xxs);
8148
- max-height: 100px;
8149
- }
8150
- .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list:has(.str-chat__message-reactions-detail__user-list-item .str-chat__message-reactions-detail__user-list-item-button:nth-child(-n+3)) {
8151
- max-height: 106px;
8418
+ max-height: 180px;
8152
8419
  }
8153
8420
  .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__skeleton-item {
8154
8421
  padding-block: var(--spacing-xxs);
@@ -8187,6 +8454,7 @@
8187
8454
  align-items: center;
8188
8455
  gap: var(--spacing-xs);
8189
8456
  padding-inline: calc(var(--spacing-sm) + var(--spacing-xxs));
8457
+ max-height: var(--size-40);
8190
8458
  }
8191
8459
  .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__user-list-item .str-chat__message-reactions-detail__user-list-item-icon {
8192
8460
  font-family: system-ui;
@@ -8197,7 +8465,6 @@
8197
8465
  .str-chat__message-reactions-detail .str-chat__message-reactions-detail__user-list .str-chat__message-reactions-detail__user-list-item .str-chat__message-reactions-detail__user-list-item-info {
8198
8466
  display: flex;
8199
8467
  flex-direction: column;
8200
- gap: var(--spacing-xxxs);
8201
8468
  flex-grow: 1;
8202
8469
  min-width: 0;
8203
8470
  }
@@ -8262,10 +8529,6 @@
8262
8529
  padding-block: var(--spacing-xs);
8263
8530
  padding-inline: var(--spacing-sm);
8264
8531
  }
8265
- .str-chat__search-bar .str-chat__search-bar__input-wrapper .str-chat__icon {
8266
- width: var(--icon-size-sm);
8267
- height: var(--icon-size-sm);
8268
- }
8269
8532
  .str-chat__search-bar .str-chat__search-bar__exit-search-button {
8270
8533
  flex-shrink: 0;
8271
8534
  }
@@ -8528,7 +8791,9 @@
8528
8791
  overflow-x: hidden;
8529
8792
  max-width: 100%;
8530
8793
  row-gap: var(--spacing-xxs);
8794
+ width: 100%;
8531
8795
  align-items: start;
8796
+ flex: 1;
8532
8797
  }
8533
8798
  .str-chat__thread-header .str-chat__thread-header-details .str-chat__thread-header-subtitle,
8534
8799
  .str-chat__thread-header .str-chat__thread-header-details .str-chat__thread-header-title {
@@ -8542,11 +8807,9 @@
8542
8807
  overflow-y: hidden;
8543
8808
  }
8544
8809
  .str-chat__thread-header .str-chat__thread-header__start {
8545
- flex: 1;
8546
8810
  display: flex;
8547
8811
  }
8548
8812
  .str-chat__thread-header .str-chat__thread-header__end {
8549
- flex: 1;
8550
8813
  display: flex;
8551
8814
  justify-content: flex-end;
8552
8815
  }
@@ -8560,13 +8823,16 @@
8560
8823
  background-color: transparent;
8561
8824
  border: none;
8562
8825
  }
8563
- .str-chat__thread-header .str-chat__close-thread-button svg {
8826
+ .str-chat__thread-header .str-chat__close-thread-button .str-chat__icon {
8564
8827
  fill: var(--str-chat__thread-color);
8565
8828
  }
8566
8829
 
8567
8830
  .str-chat__chat-view__threads .str-chat__thread-header .str-chat__thread-header-details {
8568
8831
  align-items: center;
8569
8832
  }
8833
+ .str-chat__chat-view__threads .str-chat__thread {
8834
+ border: none;
8835
+ }
8570
8836
 
8571
8837
  /* Only available in React SDK. */
8572
8838
  .str-chat {
@@ -8686,41 +8952,6 @@
8686
8952
  width: var(--str-chat__thread-list-mobile-width);
8687
8953
  z-index: 1;
8688
8954
  }
8689
- .str-chat__thread-list-container.str-chat__thread-list-container--open {
8690
- box-shadow: var(--str-chat__thread-list-box-shadow);
8691
- pointer-events: auto;
8692
- transform: translateX(0);
8693
- transition-delay: 0s, 0s;
8694
- visibility: visible;
8695
- }
8696
- .str-chat__chat-view .str-chat__thread-list-container.str-chat__thread-list-container--open {
8697
- inset-inline-start: var(--str-chat__chat-view-selector-mobile-width, 0px);
8698
- width: calc(100% - var(--str-chat__chat-view-selector-mobile-width, 0px));
8699
- }
8700
- }
8701
- .str-chat__thread-list-container {
8702
- /* Desktop (≥768px): collapse when nav closed so main content uses space. */
8703
- }
8704
- @media (min-width: 768px) {
8705
- .str-chat__thread-list-container.str-chat__thread-list-container--open {
8706
- flex-basis: var(--str-chat__thread-list-width);
8707
- max-width: 100%;
8708
- min-width: var(--str-chat__thread-list-min-width);
8709
- opacity: 1;
8710
- pointer-events: auto;
8711
- transform: translateX(0);
8712
- width: var(--str-chat__thread-list-width);
8713
- }
8714
- .str-chat__thread-list-container:not(.str-chat__thread-list-container--open) {
8715
- flex: 0 0 0;
8716
- width: 0;
8717
- min-width: 0;
8718
- max-width: 0;
8719
- opacity: 0;
8720
- overflow: hidden;
8721
- pointer-events: none;
8722
- transform: translateX(calc(0px - var(--str-chat__thread-list-transition-offset)));
8723
- }
8724
8955
  }
8725
8956
  @media (prefers-reduced-motion: reduce) {
8726
8957
  .str-chat__thread-list-container {
@@ -8795,11 +9026,8 @@
8795
9026
  .str-chat__thread-list__header {
8796
9027
  display: flex;
8797
9028
  align-items: center;
8798
- opacity: 1;
8799
9029
  padding: var(--spacing-md);
8800
9030
  height: var(--str-chat__channel-header-height);
8801
- transform: translateX(0);
8802
- transition: opacity var(--str-chat__channel-list-transition-duration, 180ms) var(--str-chat__channel-list-transition-easing, ease), transform var(--str-chat__channel-list-transition-duration, 180ms) var(--str-chat__channel-list-transition-easing, ease);
8803
9031
  width: 100%;
8804
9032
  }
8805
9033
  .str-chat__thread-list__header .str-chat__thread-list__header__title {
@@ -8807,25 +9035,6 @@
8807
9035
  font: var(--str-chat__heading-lg-text);
8808
9036
  color: var(--text-primary);
8809
9037
  }
8810
- .str-chat__thread-list__header.str-chat__thread-list__header--sidebar-collapsed {
8811
- opacity: 0;
8812
- pointer-events: none;
8813
- transform: translateX(calc(0px - var(--str-chat__channel-list-transition-offset, 8px)));
8814
- }
8815
- @media (max-width: 767px) {
8816
- .str-chat__thread-list__header {
8817
- transition: none;
8818
- }
8819
- .str-chat__thread-list__header.str-chat__thread-list__header--sidebar-collapsed {
8820
- opacity: 1;
8821
- transform: none;
8822
- }
8823
- }
8824
- @media (prefers-reduced-motion: reduce) {
8825
- .str-chat__thread-list__header {
8826
- transition: none;
8827
- }
8828
- }
8829
9038
 
8830
9039
  .str-chat__thread-list-item-container {
8831
9040
  border-bottom: 1px solid var(--border-core-subtle);
@@ -9085,7 +9294,7 @@
9085
9294
  height: 48px;
9086
9295
  width: 48px;
9087
9296
  border-radius: var(--radius-max);
9088
- background-color: var(--control-play-control-bg);
9297
+ background-color: var(--control-play-button-bg);
9089
9298
  left: calc(50% - 24px);
9090
9299
  top: calc(50% - 24px);
9091
9300
  }
@@ -9096,7 +9305,7 @@
9096
9305
  }
9097
9306
  .str-chat .str-chat__message-attachment__video-thumbnail .str-chat__message-attachment__video-thumbnail__play-indicator svg path,
9098
9307
  .str-chat .str-chat__message-attachment__video-thumbnail .str-chat__button.str-chat__button--solid.str-chat__message-attachment__video-thumbnail__play-indicator svg path {
9099
- fill: var(--control-play-control-icon);
9308
+ fill: var(--control-play-button-icon);
9100
9309
  }
9101
9310
 
9102
9311
  /*# sourceMappingURL=index.css.map */