stream-chat-react-native-core 5.40.0-rc.2 → 5.41.0-beta.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 (1350) hide show
  1. package/README.md +2 -1
  2. package/lib/commonjs/components/Attachment/Attachment.js +1 -1
  3. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  4. package/lib/commonjs/components/Attachment/Card.js +6 -6
  5. package/lib/commonjs/components/Attachment/Card.js.map +1 -1
  6. package/lib/commonjs/components/Attachment/FileAttachment.js +5 -5
  7. package/lib/commonjs/components/Attachment/FileAttachment.js.map +1 -1
  8. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js +1 -1
  9. package/lib/commonjs/components/Attachment/FileAttachmentGroup.js.map +1 -1
  10. package/lib/commonjs/components/Attachment/Gallery.js +22 -29
  11. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  12. package/lib/commonjs/components/Attachment/Giphy.js +8 -8
  13. package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
  14. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js +0 -7
  15. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -1
  16. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +1 -3
  17. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -1
  18. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +0 -3
  19. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -1
  20. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +0 -4
  21. package/lib/commonjs/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -1
  22. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js +0 -2
  23. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -1
  24. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +0 -2
  25. package/lib/commonjs/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -1
  26. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerItem.js +3 -3
  27. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerItem.js.map +1 -1
  28. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerSelectionBar.js +27 -0
  29. package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerSelectionBar.js.map +1 -1
  30. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js +2 -1
  31. package/lib/commonjs/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  32. package/lib/commonjs/components/Avatar/Avatar.js +0 -4
  33. package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
  34. package/lib/commonjs/components/Avatar/GroupAvatar.js +0 -4
  35. package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
  36. package/lib/commonjs/components/Channel/Channel.js +445 -301
  37. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  38. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js +2 -0
  39. package/lib/commonjs/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  40. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +9 -3
  41. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  42. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +15 -27
  43. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  44. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js +9 -8
  45. package/lib/commonjs/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  46. package/lib/commonjs/components/ChannelList/ChannelList.js +2 -0
  47. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  48. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js +1 -1
  49. package/lib/commonjs/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  50. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js +18 -8
  51. package/lib/commonjs/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  52. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js +46 -3
  53. package/lib/commonjs/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  54. package/lib/commonjs/components/Chat/Chat.js +11 -2
  55. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  56. package/lib/commonjs/components/Chat/hooks/handleEventToSyncDB.js +13 -3
  57. package/lib/commonjs/components/Chat/hooks/handleEventToSyncDB.js.map +1 -1
  58. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js +2 -0
  59. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  60. package/lib/commonjs/components/Chat/hooks/useIsOnline.js +13 -16
  61. package/lib/commonjs/components/Chat/hooks/useIsOnline.js.map +1 -1
  62. package/lib/commonjs/components/{UIComponents/ImageBackground.js → ImageBackground.js} +1 -1
  63. package/lib/commonjs/components/ImageBackground.js.map +1 -0
  64. package/lib/commonjs/components/ImageGallery/ImageGallery.js +96 -58
  65. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  66. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js +3 -3
  67. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
  68. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +90 -92
  69. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  70. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +39 -39
  71. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  72. package/lib/commonjs/components/ImageGallery/components/ImageGalleryOverlay.js.map +1 -1
  73. package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js +221 -221
  74. package/lib/commonjs/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
  75. package/lib/commonjs/components/Indicators/LoadingIndicator.js +1 -1
  76. package/lib/commonjs/components/Indicators/LoadingIndicator.js.map +1 -1
  77. package/lib/commonjs/components/Message/Message.js +186 -123
  78. package/lib/commonjs/components/Message/Message.js.map +1 -1
  79. package/lib/commonjs/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  80. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +168 -48
  81. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  82. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js +1 -1
  83. package/lib/commonjs/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  84. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js +1 -0
  85. package/lib/commonjs/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  86. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js +34 -20
  87. package/lib/commonjs/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  88. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +44 -180
  89. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  90. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +1 -1
  91. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  92. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js +305 -0
  93. package/lib/commonjs/components/Message/MessageSimple/ReactionList.js.map +1 -0
  94. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +16 -4
  95. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  96. package/lib/commonjs/components/Message/hooks/useMessageActions.js +72 -36
  97. package/lib/commonjs/components/Message/hooks/useMessageActions.js.map +1 -1
  98. package/lib/commonjs/components/Message/hooks/useProcessReactions.js +3 -3
  99. package/lib/commonjs/components/Message/hooks/useProcessReactions.js.map +1 -1
  100. package/lib/commonjs/components/Message/utils/messageActions.js +6 -4
  101. package/lib/commonjs/components/Message/utils/messageActions.js.map +1 -1
  102. package/lib/commonjs/components/MessageInput/FileUploadPreview.js +1 -1
  103. package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
  104. package/lib/commonjs/components/MessageInput/MessageInput.js +46 -2
  105. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  106. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +0 -1
  107. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
  108. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js +2 -1
  109. package/lib/commonjs/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js.map +1 -1
  110. package/lib/commonjs/components/MessageInput/components/NativeAttachmentPicker.js +18 -1
  111. package/lib/commonjs/components/MessageInput/components/NativeAttachmentPicker.js.map +1 -1
  112. package/lib/commonjs/components/MessageInput/hooks/useAudioController.js +60 -42
  113. package/lib/commonjs/components/MessageInput/hooks/useAudioController.js.map +1 -1
  114. package/lib/commonjs/components/MessageList/MessageList.js +3 -1
  115. package/lib/commonjs/components/MessageList/MessageList.js.map +1 -1
  116. package/lib/commonjs/components/MessageOverlay/MessageActionList.js +112 -0
  117. package/lib/commonjs/components/MessageOverlay/MessageActionList.js.map +1 -0
  118. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js +87 -0
  119. package/lib/commonjs/components/MessageOverlay/MessageActionListItem.js.map +1 -0
  120. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +452 -0
  121. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -0
  122. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js +24 -0
  123. package/lib/commonjs/components/MessageOverlay/OverlayBackdrop.js.map +1 -0
  124. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js +305 -0
  125. package/lib/commonjs/components/MessageOverlay/OverlayReactionList.js.map +1 -0
  126. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js +188 -0
  127. package/lib/commonjs/components/MessageOverlay/OverlayReactions.js.map +1 -0
  128. package/lib/{module/components/MessageMenu/MessageUserReactionsAvatar.js → commonjs/components/MessageOverlay/OverlayReactionsAvatar.js} +6 -5
  129. package/lib/commonjs/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  130. package/lib/commonjs/components/MessageOverlay/OverlayReactionsItem.js +166 -0
  131. package/lib/commonjs/components/MessageOverlay/OverlayReactionsItem.js.map +1 -0
  132. package/lib/{module/components/MessageMenu → commonjs/components/MessageOverlay}/hooks/useFetchReactions.js +0 -2
  133. package/lib/commonjs/components/MessageOverlay/hooks/useFetchReactions.js.map +1 -0
  134. package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js +34 -0
  135. package/lib/commonjs/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -0
  136. package/lib/commonjs/components/Poll/CreatePollContent.js +386 -0
  137. package/lib/commonjs/components/Poll/CreatePollContent.js.map +1 -0
  138. package/lib/commonjs/components/Poll/Poll.js +112 -0
  139. package/lib/commonjs/components/Poll/Poll.js.map +1 -0
  140. package/lib/commonjs/components/Poll/components/Button.js +513 -0
  141. package/lib/commonjs/components/Poll/components/Button.js.map +1 -0
  142. package/lib/commonjs/components/Poll/components/CreatePollIcon.js +23 -0
  143. package/lib/commonjs/components/Poll/components/CreatePollIcon.js.map +1 -0
  144. package/lib/commonjs/components/Poll/components/CreatePollOptions.js +281 -0
  145. package/lib/commonjs/components/Poll/components/CreatePollOptions.js.map +1 -0
  146. package/lib/commonjs/components/Poll/components/PollAnswersList.js +154 -0
  147. package/lib/commonjs/components/Poll/components/PollAnswersList.js.map +1 -0
  148. package/lib/commonjs/components/Poll/components/PollInputDialog.js +139 -0
  149. package/lib/commonjs/components/Poll/components/PollInputDialog.js.map +1 -0
  150. package/lib/commonjs/components/Poll/components/PollModalHeader.js +60 -0
  151. package/lib/commonjs/components/Poll/components/PollModalHeader.js.map +1 -0
  152. package/lib/commonjs/components/Poll/components/PollOption.js +209 -0
  153. package/lib/commonjs/components/Poll/components/PollOption.js.map +1 -0
  154. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js +125 -0
  155. package/lib/commonjs/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -0
  156. package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js +158 -0
  157. package/lib/commonjs/components/Poll/components/PollResults/PollResultItem.js.map +1 -0
  158. package/lib/commonjs/components/Poll/components/PollResults/PollResults.js +101 -0
  159. package/lib/commonjs/components/Poll/components/PollResults/PollResults.js.map +1 -0
  160. package/lib/commonjs/components/Poll/components/PollResults/index.js +37 -0
  161. package/lib/commonjs/components/Poll/components/PollResults/index.js.map +1 -0
  162. package/lib/commonjs/components/Poll/components/index.js +92 -0
  163. package/lib/commonjs/components/Poll/components/index.js.map +1 -0
  164. package/lib/commonjs/components/Poll/hooks/usePollAnswersPagination.js +129 -0
  165. package/lib/commonjs/components/Poll/hooks/usePollAnswersPagination.js.map +1 -0
  166. package/lib/commonjs/components/Poll/hooks/usePollOptionVotesPagination.js +140 -0
  167. package/lib/commonjs/components/Poll/hooks/usePollOptionVotesPagination.js.map +1 -0
  168. package/lib/commonjs/components/Poll/hooks/usePollState.js +103 -0
  169. package/lib/commonjs/components/Poll/hooks/usePollState.js.map +1 -0
  170. package/lib/commonjs/components/Poll/hooks/usePollStateStore.js +13 -0
  171. package/lib/commonjs/components/Poll/hooks/usePollStateStore.js.map +1 -0
  172. package/lib/commonjs/components/Poll/index.js +81 -0
  173. package/lib/commonjs/components/Poll/index.js.map +1 -0
  174. package/lib/commonjs/components/ProgressControl/ProgressControl.js +28 -21
  175. package/lib/commonjs/components/ProgressControl/ProgressControl.js.map +1 -1
  176. package/lib/commonjs/components/ProgressControl/WaveProgressBar.js +27 -22
  177. package/lib/commonjs/components/ProgressControl/WaveProgressBar.js.map +1 -1
  178. package/lib/commonjs/components/Reply/Reply.js +3 -7
  179. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  180. package/lib/commonjs/components/{UIComponents → Spinner}/Spinner.js +1 -1
  181. package/lib/commonjs/components/Spinner/Spinner.js.map +1 -0
  182. package/lib/commonjs/components/ThreadList/ThreadList.js +8 -7
  183. package/lib/commonjs/components/ThreadList/ThreadList.js.map +1 -1
  184. package/lib/commonjs/components/ThreadList/ThreadListItem.js +12 -9
  185. package/lib/commonjs/components/ThreadList/ThreadListItem.js.map +1 -1
  186. package/lib/commonjs/components/ThreadList/ThreadListUnreadBanner.js +4 -4
  187. package/lib/commonjs/components/ThreadList/ThreadListUnreadBanner.js.map +1 -1
  188. package/lib/commonjs/components/docs/data.js.map +1 -1
  189. package/lib/commonjs/components/index.js +50 -50
  190. package/lib/commonjs/components/index.js.map +1 -1
  191. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +13 -1
  192. package/lib/commonjs/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  193. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js +11 -1
  194. package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  195. package/lib/commonjs/contexts/channelContext/ChannelContext.js +11 -1
  196. package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
  197. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js +11 -1
  198. package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
  199. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +11 -1
  200. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  201. package/lib/commonjs/contexts/chatContext/ChatContext.js +11 -1
  202. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  203. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js +11 -1
  204. package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  205. package/lib/commonjs/contexts/index.js +22 -11
  206. package/lib/commonjs/contexts/index.js.map +1 -1
  207. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js +11 -1
  208. package/lib/commonjs/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  209. package/lib/commonjs/contexts/messageContext/MessageContext.js +11 -1
  210. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  211. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +40 -7
  212. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  213. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +10 -2
  214. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  215. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js +45 -0
  216. package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -0
  217. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js +27 -0
  218. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  219. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js +67 -0
  220. package/lib/commonjs/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  221. package/lib/commonjs/contexts/messagesContext/MessagesContext.js +11 -1
  222. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  223. package/lib/commonjs/contexts/overlayContext/OverlayContext.js +14 -1
  224. package/lib/commonjs/contexts/overlayContext/OverlayContext.js.map +1 -1
  225. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +58 -18
  226. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  227. package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +3 -0
  228. package/lib/commonjs/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -1
  229. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +11 -1
  230. package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  231. package/lib/commonjs/contexts/pollContext/createPollContentContext.js +33 -0
  232. package/lib/commonjs/contexts/pollContext/createPollContentContext.js.map +1 -0
  233. package/lib/commonjs/contexts/pollContext/index.js +26 -0
  234. package/lib/commonjs/contexts/pollContext/index.js.map +1 -0
  235. package/lib/commonjs/contexts/{chatConfigContext/ChatConfigContext.js → pollContext/pollContext.js} +17 -17
  236. package/lib/commonjs/contexts/pollContext/pollContext.js.map +1 -0
  237. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js +11 -1
  238. package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  239. package/lib/commonjs/contexts/themeContext/utils/theme.js +176 -68
  240. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  241. package/lib/commonjs/contexts/threadContext/ThreadContext.js +11 -1
  242. package/lib/commonjs/contexts/threadContext/ThreadContext.js.map +1 -1
  243. package/lib/commonjs/contexts/translationContext/TranslationContext.js +11 -1
  244. package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
  245. package/lib/commonjs/contexts/typingContext/TypingContext.js +11 -1
  246. package/lib/commonjs/contexts/typingContext/TypingContext.js.map +1 -1
  247. package/lib/commonjs/hooks/useStateStore.js.map +1 -1
  248. package/lib/commonjs/hooks/useTranslatedMessage.js +4 -1
  249. package/lib/commonjs/hooks/useTranslatedMessage.js.map +1 -1
  250. package/lib/commonjs/i18n/en.json +34 -0
  251. package/lib/commonjs/i18n/es.json +38 -0
  252. package/lib/commonjs/i18n/fr.json +38 -0
  253. package/lib/commonjs/i18n/he.json +38 -0
  254. package/lib/commonjs/i18n/hi.json +34 -0
  255. package/lib/commonjs/i18n/it.json +38 -0
  256. package/lib/commonjs/i18n/ja.json +34 -0
  257. package/lib/commonjs/i18n/ko.json +34 -0
  258. package/lib/commonjs/i18n/nl.json +34 -0
  259. package/lib/commonjs/i18n/pt-br.json +38 -0
  260. package/lib/commonjs/i18n/ru.json +42 -0
  261. package/lib/commonjs/i18n/tr.json +34 -0
  262. package/lib/commonjs/icons/Back.js +19 -0
  263. package/lib/commonjs/icons/Back.js.map +1 -0
  264. package/lib/commonjs/icons/DragHandle.js +21 -0
  265. package/lib/commonjs/icons/DragHandle.js.map +1 -0
  266. package/lib/commonjs/icons/PinHeader.js +6 -17
  267. package/lib/commonjs/icons/PinHeader.js.map +1 -1
  268. package/lib/commonjs/icons/PollThumbnail.js +19 -0
  269. package/lib/commonjs/icons/PollThumbnail.js.map +1 -0
  270. package/lib/commonjs/icons/SendPoll.js +19 -0
  271. package/lib/commonjs/icons/SendPoll.js.map +1 -0
  272. package/lib/commonjs/icons/index.js +44 -0
  273. package/lib/commonjs/icons/index.js.map +1 -1
  274. package/lib/commonjs/index.js +23 -4
  275. package/lib/commonjs/index.js.map +1 -1
  276. package/lib/commonjs/mock-builders/DB/mock.js +82 -79
  277. package/lib/commonjs/mock-builders/DB/mock.js.map +1 -1
  278. package/lib/commonjs/native.js +25 -36
  279. package/lib/commonjs/native.js.map +1 -1
  280. package/lib/commonjs/store/QuickSqliteClient.js +158 -0
  281. package/lib/commonjs/store/QuickSqliteClient.js.map +1 -0
  282. package/lib/commonjs/store/apis/addPendingTask.js +5 -5
  283. package/lib/commonjs/store/apis/addPendingTask.js.map +1 -1
  284. package/lib/commonjs/store/apis/deleteChannel.js +3 -3
  285. package/lib/commonjs/store/apis/deleteChannel.js.map +1 -1
  286. package/lib/commonjs/store/apis/deleteMember.js +3 -3
  287. package/lib/commonjs/store/apis/deleteMember.js.map +1 -1
  288. package/lib/commonjs/store/apis/deleteMessage.js +3 -3
  289. package/lib/commonjs/store/apis/deleteMessage.js.map +1 -1
  290. package/lib/commonjs/store/apis/deleteMessagesForChannel.js +3 -3
  291. package/lib/commonjs/store/apis/deleteMessagesForChannel.js.map +1 -1
  292. package/lib/commonjs/store/apis/deletePendingTask.js +3 -3
  293. package/lib/commonjs/store/apis/deletePendingTask.js.map +1 -1
  294. package/lib/commonjs/store/apis/deleteReaction.js +3 -3
  295. package/lib/commonjs/store/apis/deleteReaction.js.map +1 -1
  296. package/lib/commonjs/store/apis/deleteReactions.js +2 -2
  297. package/lib/commonjs/store/apis/deleteReactions.js.map +1 -1
  298. package/lib/commonjs/store/apis/getAllChannelIds.js +2 -2
  299. package/lib/commonjs/store/apis/getAllChannelIds.js.map +1 -1
  300. package/lib/commonjs/store/apis/getAppSettings.js +3 -3
  301. package/lib/commonjs/store/apis/getAppSettings.js.map +1 -1
  302. package/lib/commonjs/store/apis/getChannelMessages.js +2 -2
  303. package/lib/commonjs/store/apis/getChannelMessages.js.map +1 -1
  304. package/lib/commonjs/store/apis/getChannels.js +2 -2
  305. package/lib/commonjs/store/apis/getChannels.js.map +1 -1
  306. package/lib/commonjs/store/apis/getChannelsForFilterSort.js +2 -2
  307. package/lib/commonjs/store/apis/getChannelsForFilterSort.js.map +1 -1
  308. package/lib/commonjs/store/apis/getLastSyncedAt.js +3 -3
  309. package/lib/commonjs/store/apis/getLastSyncedAt.js.map +1 -1
  310. package/lib/commonjs/store/apis/getMembers.js +2 -2
  311. package/lib/commonjs/store/apis/getMembers.js.map +1 -1
  312. package/lib/commonjs/store/apis/getPendingTasks.js +3 -3
  313. package/lib/commonjs/store/apis/getPendingTasks.js.map +1 -1
  314. package/lib/commonjs/store/apis/getReactions.js +2 -2
  315. package/lib/commonjs/store/apis/getReactions.js.map +1 -1
  316. package/lib/commonjs/store/apis/getReactionsforFilterSort.js +3 -6
  317. package/lib/commonjs/store/apis/getReactionsforFilterSort.js.map +1 -1
  318. package/lib/commonjs/store/apis/getReads.js +2 -2
  319. package/lib/commonjs/store/apis/getReads.js.map +1 -1
  320. package/lib/commonjs/store/apis/index.js +11 -0
  321. package/lib/commonjs/store/apis/index.js.map +1 -1
  322. package/lib/commonjs/store/apis/insertReaction.js +3 -3
  323. package/lib/commonjs/store/apis/insertReaction.js.map +1 -1
  324. package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js +3 -3
  325. package/lib/commonjs/store/apis/queries/selectChannelIdsForFilterSort.js.map +1 -1
  326. package/lib/commonjs/store/apis/queries/selectChannels.js +3 -3
  327. package/lib/commonjs/store/apis/queries/selectChannels.js.map +1 -1
  328. package/lib/commonjs/store/apis/queries/selectMembersForChannels.js +3 -3
  329. package/lib/commonjs/store/apis/queries/selectMembersForChannels.js.map +1 -1
  330. package/lib/commonjs/store/apis/queries/selectMessagesForChannels.js +3 -3
  331. package/lib/commonjs/store/apis/queries/selectMessagesForChannels.js.map +1 -1
  332. package/lib/commonjs/store/apis/queries/selectReactionsForMessages.js +3 -3
  333. package/lib/commonjs/store/apis/queries/selectReactionsForMessages.js.map +1 -1
  334. package/lib/commonjs/store/apis/queries/selectReadsForChannels.js +3 -3
  335. package/lib/commonjs/store/apis/queries/selectReadsForChannels.js.map +1 -1
  336. package/lib/commonjs/store/apis/updateMessage.js +4 -4
  337. package/lib/commonjs/store/apis/updateMessage.js.map +1 -1
  338. package/lib/commonjs/store/apis/updatePollMessage.js +50 -0
  339. package/lib/commonjs/store/apis/updatePollMessage.js.map +1 -0
  340. package/lib/commonjs/store/apis/updateReaction.js +3 -3
  341. package/lib/commonjs/store/apis/updateReaction.js.map +1 -1
  342. package/lib/commonjs/store/apis/upsertAppSettings.js +3 -3
  343. package/lib/commonjs/store/apis/upsertAppSettings.js.map +1 -1
  344. package/lib/commonjs/store/apis/upsertChannelData.js +3 -3
  345. package/lib/commonjs/store/apis/upsertChannelData.js.map +1 -1
  346. package/lib/commonjs/store/apis/upsertChannelDataFromChannel.js +2 -2
  347. package/lib/commonjs/store/apis/upsertChannelDataFromChannel.js.map +1 -1
  348. package/lib/commonjs/store/apis/upsertChannels.js +3 -3
  349. package/lib/commonjs/store/apis/upsertChannels.js.map +1 -1
  350. package/lib/commonjs/store/apis/upsertCidsForQuery.js +3 -3
  351. package/lib/commonjs/store/apis/upsertCidsForQuery.js.map +1 -1
  352. package/lib/commonjs/store/apis/upsertMembers.js +3 -3
  353. package/lib/commonjs/store/apis/upsertMembers.js.map +1 -1
  354. package/lib/commonjs/store/apis/upsertMessages.js +3 -3
  355. package/lib/commonjs/store/apis/upsertMessages.js.map +1 -1
  356. package/lib/commonjs/store/apis/upsertReads.js +3 -3
  357. package/lib/commonjs/store/apis/upsertReads.js.map +1 -1
  358. package/lib/commonjs/store/apis/upsertUserSyncStatus.js +3 -3
  359. package/lib/commonjs/store/apis/upsertUserSyncStatus.js.map +1 -1
  360. package/lib/commonjs/store/mappers/mapMessageToStorable.js +5 -1
  361. package/lib/commonjs/store/mappers/mapMessageToStorable.js.map +1 -1
  362. package/lib/commonjs/store/mappers/mapStorableToMessage.js +5 -1
  363. package/lib/commonjs/store/mappers/mapStorableToMessage.js.map +1 -1
  364. package/lib/commonjs/store/schema.js +2 -0
  365. package/lib/commonjs/store/schema.js.map +1 -1
  366. package/lib/commonjs/utils/DBSyncManager.js +4 -4
  367. package/lib/commonjs/utils/DBSyncManager.js.map +1 -1
  368. package/lib/commonjs/utils/StreamChatRN.js +25 -0
  369. package/lib/commonjs/utils/StreamChatRN.js.map +1 -0
  370. package/lib/commonjs/utils/getResizedImageUrl.js +3 -5
  371. package/lib/commonjs/utils/getResizedImageUrl.js.map +1 -1
  372. package/lib/commonjs/version.json +1 -1
  373. package/lib/module/components/Attachment/Attachment.js +1 -1
  374. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  375. package/lib/module/components/Attachment/Card.js +6 -6
  376. package/lib/module/components/Attachment/Card.js.map +1 -1
  377. package/lib/module/components/Attachment/FileAttachment.js +5 -5
  378. package/lib/module/components/Attachment/FileAttachment.js.map +1 -1
  379. package/lib/module/components/Attachment/FileAttachmentGroup.js +1 -1
  380. package/lib/module/components/Attachment/FileAttachmentGroup.js.map +1 -1
  381. package/lib/module/components/Attachment/Gallery.js +22 -29
  382. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  383. package/lib/module/components/Attachment/Giphy.js +8 -8
  384. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  385. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js +0 -7
  386. package/lib/module/components/Attachment/utils/buildGallery/buildGallery.js.map +1 -1
  387. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js +1 -3
  388. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.js.map +1 -1
  389. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js +0 -3
  390. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.js.map +1 -1
  391. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js +0 -4
  392. package/lib/module/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.js.map +1 -1
  393. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js +0 -2
  394. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnail.js.map +1 -1
  395. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js +0 -2
  396. package/lib/module/components/Attachment/utils/buildGallery/buildThumbnailGrid.js.map +1 -1
  397. package/lib/module/components/AttachmentPicker/components/AttachmentPickerItem.js +3 -3
  398. package/lib/module/components/AttachmentPicker/components/AttachmentPickerItem.js.map +1 -1
  399. package/lib/module/components/AttachmentPicker/components/AttachmentPickerSelectionBar.js +27 -0
  400. package/lib/module/components/AttachmentPicker/components/AttachmentPickerSelectionBar.js.map +1 -1
  401. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js +2 -1
  402. package/lib/module/components/AutoCompleteInput/AutoCompleteSuggestionList.js.map +1 -1
  403. package/lib/module/components/Avatar/Avatar.js +0 -4
  404. package/lib/module/components/Avatar/Avatar.js.map +1 -1
  405. package/lib/module/components/Avatar/GroupAvatar.js +0 -4
  406. package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
  407. package/lib/module/components/Channel/Channel.js +445 -301
  408. package/lib/module/components/Channel/Channel.js.map +1 -1
  409. package/lib/module/components/Channel/hooks/useCreateChannelContext.js +2 -0
  410. package/lib/module/components/Channel/hooks/useCreateChannelContext.js.map +1 -1
  411. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +9 -3
  412. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  413. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +15 -27
  414. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  415. package/lib/module/components/Channel/hooks/useCreateThreadContext.js +9 -8
  416. package/lib/module/components/Channel/hooks/useCreateThreadContext.js.map +1 -1
  417. package/lib/module/components/ChannelList/ChannelList.js +2 -0
  418. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  419. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js +1 -1
  420. package/lib/module/components/ChannelList/ChannelListFooterLoadingIndicator.js.map +1 -1
  421. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js +18 -8
  422. package/lib/module/components/ChannelList/hooks/listeners/useNewMessageNotification.js.map +1 -1
  423. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js +46 -3
  424. package/lib/module/components/ChannelPreview/hooks/useLatestMessagePreview.js.map +1 -1
  425. package/lib/module/components/Chat/Chat.js +11 -2
  426. package/lib/module/components/Chat/Chat.js.map +1 -1
  427. package/lib/module/components/Chat/hooks/handleEventToSyncDB.js +13 -3
  428. package/lib/module/components/Chat/hooks/handleEventToSyncDB.js.map +1 -1
  429. package/lib/module/components/Chat/hooks/useCreateChatContext.js +2 -0
  430. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  431. package/lib/module/components/Chat/hooks/useIsOnline.js +13 -16
  432. package/lib/module/components/Chat/hooks/useIsOnline.js.map +1 -1
  433. package/lib/module/components/{UIComponents/ImageBackground.js → ImageBackground.js} +1 -1
  434. package/lib/module/components/ImageBackground.js.map +1 -0
  435. package/lib/module/components/ImageGallery/ImageGallery.js +96 -58
  436. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  437. package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js +3 -3
  438. package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
  439. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +90 -92
  440. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  441. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +39 -39
  442. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  443. package/lib/module/components/ImageGallery/components/ImageGalleryOverlay.js.map +1 -1
  444. package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js +221 -221
  445. package/lib/module/components/ImageGallery/hooks/useImageGalleryGestures.js.map +1 -1
  446. package/lib/module/components/Indicators/LoadingIndicator.js +1 -1
  447. package/lib/module/components/Indicators/LoadingIndicator.js.map +1 -1
  448. package/lib/module/components/Message/Message.js +186 -123
  449. package/lib/module/components/Message/Message.js.map +1 -1
  450. package/lib/module/components/Message/MessageSimple/MessageAvatar.js.map +1 -1
  451. package/lib/module/components/Message/MessageSimple/MessageContent.js +168 -48
  452. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  453. package/lib/module/components/Message/MessageSimple/MessageDeleted.js +1 -1
  454. package/lib/module/components/Message/MessageSimple/MessageDeleted.js.map +1 -1
  455. package/lib/module/components/Message/MessageSimple/MessageFooter.js +1 -0
  456. package/lib/module/components/Message/MessageSimple/MessageFooter.js.map +1 -1
  457. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js +34 -20
  458. package/lib/module/components/Message/MessageSimple/MessagePinnedHeader.js.map +1 -1
  459. package/lib/module/components/Message/MessageSimple/MessageSimple.js +44 -180
  460. package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  461. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +1 -1
  462. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  463. package/lib/module/components/Message/MessageSimple/ReactionList.js +305 -0
  464. package/lib/module/components/Message/MessageSimple/ReactionList.js.map +1 -0
  465. package/lib/module/components/Message/hooks/useCreateMessageContext.js +16 -4
  466. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  467. package/lib/module/components/Message/hooks/useMessageActions.js +72 -36
  468. package/lib/module/components/Message/hooks/useMessageActions.js.map +1 -1
  469. package/lib/module/components/Message/hooks/useProcessReactions.js +3 -3
  470. package/lib/module/components/Message/hooks/useProcessReactions.js.map +1 -1
  471. package/lib/module/components/Message/utils/messageActions.js +6 -4
  472. package/lib/module/components/Message/utils/messageActions.js.map +1 -1
  473. package/lib/module/components/MessageInput/FileUploadPreview.js +1 -1
  474. package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
  475. package/lib/module/components/MessageInput/MessageInput.js +46 -2
  476. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  477. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js +0 -1
  478. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingButton.js.map +1 -1
  479. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js +2 -1
  480. package/lib/module/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.js.map +1 -1
  481. package/lib/module/components/MessageInput/components/NativeAttachmentPicker.js +18 -1
  482. package/lib/module/components/MessageInput/components/NativeAttachmentPicker.js.map +1 -1
  483. package/lib/module/components/MessageInput/hooks/useAudioController.js +60 -42
  484. package/lib/module/components/MessageInput/hooks/useAudioController.js.map +1 -1
  485. package/lib/module/components/MessageList/MessageList.js +3 -1
  486. package/lib/module/components/MessageList/MessageList.js.map +1 -1
  487. package/lib/module/components/MessageOverlay/MessageActionList.js +112 -0
  488. package/lib/module/components/MessageOverlay/MessageActionList.js.map +1 -0
  489. package/lib/module/components/MessageOverlay/MessageActionListItem.js +87 -0
  490. package/lib/module/components/MessageOverlay/MessageActionListItem.js.map +1 -0
  491. package/lib/module/components/MessageOverlay/MessageOverlay.js +452 -0
  492. package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -0
  493. package/lib/module/components/MessageOverlay/OverlayBackdrop.js +24 -0
  494. package/lib/module/components/MessageOverlay/OverlayBackdrop.js.map +1 -0
  495. package/lib/module/components/MessageOverlay/OverlayReactionList.js +305 -0
  496. package/lib/module/components/MessageOverlay/OverlayReactionList.js.map +1 -0
  497. package/lib/module/components/MessageOverlay/OverlayReactions.js +188 -0
  498. package/lib/module/components/MessageOverlay/OverlayReactions.js.map +1 -0
  499. package/lib/{commonjs/components/MessageMenu/MessageUserReactionsAvatar.js → module/components/MessageOverlay/OverlayReactionsAvatar.js} +6 -5
  500. package/lib/module/components/MessageOverlay/OverlayReactionsAvatar.js.map +1 -0
  501. package/lib/module/components/MessageOverlay/OverlayReactionsItem.js +166 -0
  502. package/lib/module/components/MessageOverlay/OverlayReactionsItem.js.map +1 -0
  503. package/lib/{commonjs/components/MessageMenu → module/components/MessageOverlay}/hooks/useFetchReactions.js +0 -2
  504. package/lib/module/components/MessageOverlay/hooks/useFetchReactions.js.map +1 -0
  505. package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js +34 -0
  506. package/lib/module/components/MessageOverlay/hooks/useMessageActionAnimation.js.map +1 -0
  507. package/lib/module/components/Poll/CreatePollContent.js +386 -0
  508. package/lib/module/components/Poll/CreatePollContent.js.map +1 -0
  509. package/lib/module/components/Poll/Poll.js +112 -0
  510. package/lib/module/components/Poll/Poll.js.map +1 -0
  511. package/lib/module/components/Poll/components/Button.js +513 -0
  512. package/lib/module/components/Poll/components/Button.js.map +1 -0
  513. package/lib/module/components/Poll/components/CreatePollIcon.js +23 -0
  514. package/lib/module/components/Poll/components/CreatePollIcon.js.map +1 -0
  515. package/lib/module/components/Poll/components/CreatePollOptions.js +281 -0
  516. package/lib/module/components/Poll/components/CreatePollOptions.js.map +1 -0
  517. package/lib/module/components/Poll/components/PollAnswersList.js +154 -0
  518. package/lib/module/components/Poll/components/PollAnswersList.js.map +1 -0
  519. package/lib/module/components/Poll/components/PollInputDialog.js +139 -0
  520. package/lib/module/components/Poll/components/PollInputDialog.js.map +1 -0
  521. package/lib/module/components/Poll/components/PollModalHeader.js +60 -0
  522. package/lib/module/components/Poll/components/PollModalHeader.js.map +1 -0
  523. package/lib/module/components/Poll/components/PollOption.js +209 -0
  524. package/lib/module/components/Poll/components/PollOption.js.map +1 -0
  525. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js +125 -0
  526. package/lib/module/components/Poll/components/PollResults/PollOptionFullResults.js.map +1 -0
  527. package/lib/module/components/Poll/components/PollResults/PollResultItem.js +158 -0
  528. package/lib/module/components/Poll/components/PollResults/PollResultItem.js.map +1 -0
  529. package/lib/module/components/Poll/components/PollResults/PollResults.js +101 -0
  530. package/lib/module/components/Poll/components/PollResults/PollResults.js.map +1 -0
  531. package/lib/module/components/Poll/components/PollResults/index.js +37 -0
  532. package/lib/module/components/Poll/components/PollResults/index.js.map +1 -0
  533. package/lib/module/components/Poll/components/index.js +92 -0
  534. package/lib/module/components/Poll/components/index.js.map +1 -0
  535. package/lib/module/components/Poll/hooks/usePollAnswersPagination.js +129 -0
  536. package/lib/module/components/Poll/hooks/usePollAnswersPagination.js.map +1 -0
  537. package/lib/module/components/Poll/hooks/usePollOptionVotesPagination.js +140 -0
  538. package/lib/module/components/Poll/hooks/usePollOptionVotesPagination.js.map +1 -0
  539. package/lib/module/components/Poll/hooks/usePollState.js +103 -0
  540. package/lib/module/components/Poll/hooks/usePollState.js.map +1 -0
  541. package/lib/module/components/Poll/hooks/usePollStateStore.js +13 -0
  542. package/lib/module/components/Poll/hooks/usePollStateStore.js.map +1 -0
  543. package/lib/module/components/Poll/index.js +81 -0
  544. package/lib/module/components/Poll/index.js.map +1 -0
  545. package/lib/module/components/ProgressControl/ProgressControl.js +28 -21
  546. package/lib/module/components/ProgressControl/ProgressControl.js.map +1 -1
  547. package/lib/module/components/ProgressControl/WaveProgressBar.js +27 -22
  548. package/lib/module/components/ProgressControl/WaveProgressBar.js.map +1 -1
  549. package/lib/module/components/Reply/Reply.js +3 -7
  550. package/lib/module/components/Reply/Reply.js.map +1 -1
  551. package/lib/module/components/{UIComponents → Spinner}/Spinner.js +1 -1
  552. package/lib/module/components/Spinner/Spinner.js.map +1 -0
  553. package/lib/module/components/ThreadList/ThreadList.js +8 -7
  554. package/lib/module/components/ThreadList/ThreadList.js.map +1 -1
  555. package/lib/module/components/ThreadList/ThreadListItem.js +12 -9
  556. package/lib/module/components/ThreadList/ThreadListItem.js.map +1 -1
  557. package/lib/module/components/ThreadList/ThreadListUnreadBanner.js +4 -4
  558. package/lib/module/components/ThreadList/ThreadListUnreadBanner.js.map +1 -1
  559. package/lib/module/components/docs/data.js.map +1 -1
  560. package/lib/module/components/index.js +50 -50
  561. package/lib/module/components/index.js.map +1 -1
  562. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js +13 -1
  563. package/lib/module/contexts/activeChannelsRefContext/ActiveChannelsRefContext.js.map +1 -1
  564. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js +11 -1
  565. package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
  566. package/lib/module/contexts/channelContext/ChannelContext.js +11 -1
  567. package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
  568. package/lib/module/contexts/channelsContext/ChannelsContext.js +11 -1
  569. package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
  570. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +11 -1
  571. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  572. package/lib/module/contexts/chatContext/ChatContext.js +11 -1
  573. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  574. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js +11 -1
  575. package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.js.map +1 -1
  576. package/lib/module/contexts/index.js +22 -11
  577. package/lib/module/contexts/index.js.map +1 -1
  578. package/lib/module/contexts/keyboardContext/KeyboardContext.js +11 -1
  579. package/lib/module/contexts/keyboardContext/KeyboardContext.js.map +1 -1
  580. package/lib/module/contexts/messageContext/MessageContext.js +11 -1
  581. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  582. package/lib/module/contexts/messageInputContext/MessageInputContext.js +40 -7
  583. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  584. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +10 -2
  585. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  586. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js +45 -0
  587. package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -0
  588. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js +27 -0
  589. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.js.map +1 -0
  590. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js +67 -0
  591. package/lib/module/contexts/messageOverlayContext/hooks/useResettableState.test.js.map +1 -0
  592. package/lib/module/contexts/messagesContext/MessagesContext.js +11 -1
  593. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  594. package/lib/module/contexts/overlayContext/OverlayContext.js +14 -1
  595. package/lib/module/contexts/overlayContext/OverlayContext.js.map +1 -1
  596. package/lib/module/contexts/overlayContext/OverlayProvider.js +58 -18
  597. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  598. package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js +3 -0
  599. package/lib/module/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.js.map +1 -1
  600. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js +11 -1
  601. package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.js.map +1 -1
  602. package/lib/module/contexts/pollContext/createPollContentContext.js +33 -0
  603. package/lib/module/contexts/pollContext/createPollContentContext.js.map +1 -0
  604. package/lib/module/contexts/pollContext/index.js +26 -0
  605. package/lib/module/contexts/pollContext/index.js.map +1 -0
  606. package/lib/module/contexts/{chatConfigContext/ChatConfigContext.js → pollContext/pollContext.js} +17 -17
  607. package/lib/module/contexts/pollContext/pollContext.js.map +1 -0
  608. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js +11 -1
  609. package/lib/module/contexts/suggestionsContext/SuggestionsContext.js.map +1 -1
  610. package/lib/module/contexts/themeContext/utils/theme.js +176 -68
  611. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  612. package/lib/module/contexts/threadContext/ThreadContext.js +11 -1
  613. package/lib/module/contexts/threadContext/ThreadContext.js.map +1 -1
  614. package/lib/module/contexts/translationContext/TranslationContext.js +11 -1
  615. package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
  616. package/lib/module/contexts/typingContext/TypingContext.js +11 -1
  617. package/lib/module/contexts/typingContext/TypingContext.js.map +1 -1
  618. package/lib/module/hooks/useStateStore.js.map +1 -1
  619. package/lib/module/hooks/useTranslatedMessage.js +4 -1
  620. package/lib/module/hooks/useTranslatedMessage.js.map +1 -1
  621. package/lib/module/i18n/en.json +34 -0
  622. package/lib/module/i18n/es.json +38 -0
  623. package/lib/module/i18n/fr.json +38 -0
  624. package/lib/module/i18n/he.json +38 -0
  625. package/lib/module/i18n/hi.json +34 -0
  626. package/lib/module/i18n/it.json +38 -0
  627. package/lib/module/i18n/ja.json +34 -0
  628. package/lib/module/i18n/ko.json +34 -0
  629. package/lib/module/i18n/nl.json +34 -0
  630. package/lib/module/i18n/pt-br.json +38 -0
  631. package/lib/module/i18n/ru.json +42 -0
  632. package/lib/module/i18n/tr.json +34 -0
  633. package/lib/module/icons/Back.js +19 -0
  634. package/lib/module/icons/Back.js.map +1 -0
  635. package/lib/module/icons/DragHandle.js +21 -0
  636. package/lib/module/icons/DragHandle.js.map +1 -0
  637. package/lib/module/icons/PinHeader.js +6 -17
  638. package/lib/module/icons/PinHeader.js.map +1 -1
  639. package/lib/module/icons/PollThumbnail.js +19 -0
  640. package/lib/module/icons/PollThumbnail.js.map +1 -0
  641. package/lib/module/icons/SendPoll.js +19 -0
  642. package/lib/module/icons/SendPoll.js.map +1 -0
  643. package/lib/module/icons/index.js +44 -0
  644. package/lib/module/icons/index.js.map +1 -1
  645. package/lib/module/index.js +23 -4
  646. package/lib/module/index.js.map +1 -1
  647. package/lib/module/mock-builders/DB/mock.js +82 -79
  648. package/lib/module/mock-builders/DB/mock.js.map +1 -1
  649. package/lib/module/native.js +25 -36
  650. package/lib/module/native.js.map +1 -1
  651. package/lib/module/store/QuickSqliteClient.js +158 -0
  652. package/lib/module/store/QuickSqliteClient.js.map +1 -0
  653. package/lib/module/store/apis/addPendingTask.js +5 -5
  654. package/lib/module/store/apis/addPendingTask.js.map +1 -1
  655. package/lib/module/store/apis/deleteChannel.js +3 -3
  656. package/lib/module/store/apis/deleteChannel.js.map +1 -1
  657. package/lib/module/store/apis/deleteMember.js +3 -3
  658. package/lib/module/store/apis/deleteMember.js.map +1 -1
  659. package/lib/module/store/apis/deleteMessage.js +3 -3
  660. package/lib/module/store/apis/deleteMessage.js.map +1 -1
  661. package/lib/module/store/apis/deleteMessagesForChannel.js +3 -3
  662. package/lib/module/store/apis/deleteMessagesForChannel.js.map +1 -1
  663. package/lib/module/store/apis/deletePendingTask.js +3 -3
  664. package/lib/module/store/apis/deletePendingTask.js.map +1 -1
  665. package/lib/module/store/apis/deleteReaction.js +3 -3
  666. package/lib/module/store/apis/deleteReaction.js.map +1 -1
  667. package/lib/module/store/apis/deleteReactions.js +2 -2
  668. package/lib/module/store/apis/deleteReactions.js.map +1 -1
  669. package/lib/module/store/apis/getAllChannelIds.js +2 -2
  670. package/lib/module/store/apis/getAllChannelIds.js.map +1 -1
  671. package/lib/module/store/apis/getAppSettings.js +3 -3
  672. package/lib/module/store/apis/getAppSettings.js.map +1 -1
  673. package/lib/module/store/apis/getChannelMessages.js +2 -2
  674. package/lib/module/store/apis/getChannelMessages.js.map +1 -1
  675. package/lib/module/store/apis/getChannels.js +2 -2
  676. package/lib/module/store/apis/getChannels.js.map +1 -1
  677. package/lib/module/store/apis/getChannelsForFilterSort.js +2 -2
  678. package/lib/module/store/apis/getChannelsForFilterSort.js.map +1 -1
  679. package/lib/module/store/apis/getLastSyncedAt.js +3 -3
  680. package/lib/module/store/apis/getLastSyncedAt.js.map +1 -1
  681. package/lib/module/store/apis/getMembers.js +2 -2
  682. package/lib/module/store/apis/getMembers.js.map +1 -1
  683. package/lib/module/store/apis/getPendingTasks.js +3 -3
  684. package/lib/module/store/apis/getPendingTasks.js.map +1 -1
  685. package/lib/module/store/apis/getReactions.js +2 -2
  686. package/lib/module/store/apis/getReactions.js.map +1 -1
  687. package/lib/module/store/apis/getReactionsforFilterSort.js +3 -6
  688. package/lib/module/store/apis/getReactionsforFilterSort.js.map +1 -1
  689. package/lib/module/store/apis/getReads.js +2 -2
  690. package/lib/module/store/apis/getReads.js.map +1 -1
  691. package/lib/module/store/apis/index.js +11 -0
  692. package/lib/module/store/apis/index.js.map +1 -1
  693. package/lib/module/store/apis/insertReaction.js +3 -3
  694. package/lib/module/store/apis/insertReaction.js.map +1 -1
  695. package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js +3 -3
  696. package/lib/module/store/apis/queries/selectChannelIdsForFilterSort.js.map +1 -1
  697. package/lib/module/store/apis/queries/selectChannels.js +3 -3
  698. package/lib/module/store/apis/queries/selectChannels.js.map +1 -1
  699. package/lib/module/store/apis/queries/selectMembersForChannels.js +3 -3
  700. package/lib/module/store/apis/queries/selectMembersForChannels.js.map +1 -1
  701. package/lib/module/store/apis/queries/selectMessagesForChannels.js +3 -3
  702. package/lib/module/store/apis/queries/selectMessagesForChannels.js.map +1 -1
  703. package/lib/module/store/apis/queries/selectReactionsForMessages.js +3 -3
  704. package/lib/module/store/apis/queries/selectReactionsForMessages.js.map +1 -1
  705. package/lib/module/store/apis/queries/selectReadsForChannels.js +3 -3
  706. package/lib/module/store/apis/queries/selectReadsForChannels.js.map +1 -1
  707. package/lib/module/store/apis/updateMessage.js +4 -4
  708. package/lib/module/store/apis/updateMessage.js.map +1 -1
  709. package/lib/module/store/apis/updatePollMessage.js +50 -0
  710. package/lib/module/store/apis/updatePollMessage.js.map +1 -0
  711. package/lib/module/store/apis/updateReaction.js +3 -3
  712. package/lib/module/store/apis/updateReaction.js.map +1 -1
  713. package/lib/module/store/apis/upsertAppSettings.js +3 -3
  714. package/lib/module/store/apis/upsertAppSettings.js.map +1 -1
  715. package/lib/module/store/apis/upsertChannelData.js +3 -3
  716. package/lib/module/store/apis/upsertChannelData.js.map +1 -1
  717. package/lib/module/store/apis/upsertChannelDataFromChannel.js +2 -2
  718. package/lib/module/store/apis/upsertChannelDataFromChannel.js.map +1 -1
  719. package/lib/module/store/apis/upsertChannels.js +3 -3
  720. package/lib/module/store/apis/upsertChannels.js.map +1 -1
  721. package/lib/module/store/apis/upsertCidsForQuery.js +3 -3
  722. package/lib/module/store/apis/upsertCidsForQuery.js.map +1 -1
  723. package/lib/module/store/apis/upsertMembers.js +3 -3
  724. package/lib/module/store/apis/upsertMembers.js.map +1 -1
  725. package/lib/module/store/apis/upsertMessages.js +3 -3
  726. package/lib/module/store/apis/upsertMessages.js.map +1 -1
  727. package/lib/module/store/apis/upsertReads.js +3 -3
  728. package/lib/module/store/apis/upsertReads.js.map +1 -1
  729. package/lib/module/store/apis/upsertUserSyncStatus.js +3 -3
  730. package/lib/module/store/apis/upsertUserSyncStatus.js.map +1 -1
  731. package/lib/module/store/mappers/mapMessageToStorable.js +5 -1
  732. package/lib/module/store/mappers/mapMessageToStorable.js.map +1 -1
  733. package/lib/module/store/mappers/mapStorableToMessage.js +5 -1
  734. package/lib/module/store/mappers/mapStorableToMessage.js.map +1 -1
  735. package/lib/module/store/schema.js +2 -0
  736. package/lib/module/store/schema.js.map +1 -1
  737. package/lib/module/utils/DBSyncManager.js +4 -4
  738. package/lib/module/utils/DBSyncManager.js.map +1 -1
  739. package/lib/module/utils/StreamChatRN.js +25 -0
  740. package/lib/module/utils/StreamChatRN.js.map +1 -0
  741. package/lib/module/utils/getResizedImageUrl.js +3 -5
  742. package/lib/module/utils/getResizedImageUrl.js.map +1 -1
  743. package/lib/module/version.json +1 -1
  744. package/lib/typescript/components/Attachment/Card.d.ts +2 -2
  745. package/lib/typescript/components/Attachment/Card.d.ts.map +1 -1
  746. package/lib/typescript/components/Attachment/FileAttachment.d.ts +1 -1
  747. package/lib/typescript/components/Attachment/FileAttachment.d.ts.map +1 -1
  748. package/lib/typescript/components/Attachment/Gallery.d.ts +1 -1
  749. package/lib/typescript/components/Attachment/Gallery.d.ts.map +1 -1
  750. package/lib/typescript/components/Attachment/Giphy.d.ts +1 -1
  751. package/lib/typescript/components/Attachment/utils/buildGallery/buildGallery.d.ts +1 -2
  752. package/lib/typescript/components/Attachment/utils/buildGallery/buildGallery.d.ts.map +1 -1
  753. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.d.ts +1 -2
  754. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.d.ts.map +1 -1
  755. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.d.ts +1 -2
  756. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.d.ts.map +1 -1
  757. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.d.ts +1 -2
  758. package/lib/typescript/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.d.ts.map +1 -1
  759. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts +2 -4
  760. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnail.d.ts.map +1 -1
  761. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnailGrid.d.ts +1 -2
  762. package/lib/typescript/components/Attachment/utils/buildGallery/buildThumbnailGrid.d.ts.map +1 -1
  763. package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.d.ts +2 -2
  764. package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.d.ts.map +1 -1
  765. package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerItem.d.ts.map +1 -1
  766. package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerSelectionBar.d.ts.map +1 -1
  767. package/lib/typescript/components/AutoCompleteInput/AutoCompleteSuggestionList.d.ts.map +1 -1
  768. package/lib/typescript/components/Avatar/Avatar.d.ts.map +1 -1
  769. package/lib/typescript/components/Avatar/GroupAvatar.d.ts.map +1 -1
  770. package/lib/typescript/components/Channel/Channel.d.ts +2 -2
  771. package/lib/typescript/components/Channel/Channel.d.ts.map +1 -1
  772. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts +1 -1
  773. package/lib/typescript/components/Channel/hooks/useCreateChannelContext.d.ts.map +1 -1
  774. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
  775. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts.map +1 -1
  776. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -1
  777. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts.map +1 -1
  778. package/lib/typescript/components/Channel/hooks/useCreateThreadContext.d.ts.map +1 -1
  779. package/lib/typescript/components/ChannelList/ChannelList.d.ts +12 -0
  780. package/lib/typescript/components/ChannelList/ChannelList.d.ts.map +1 -1
  781. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessageNotification.d.ts +2 -1
  782. package/lib/typescript/components/ChannelList/hooks/listeners/useNewMessageNotification.d.ts.map +1 -1
  783. package/lib/typescript/components/ChannelPreview/hooks/useLatestMessagePreview.d.ts +5 -1
  784. package/lib/typescript/components/ChannelPreview/hooks/useLatestMessagePreview.d.ts.map +1 -1
  785. package/lib/typescript/components/Chat/Chat.d.ts +1 -1
  786. package/lib/typescript/components/Chat/Chat.d.ts.map +1 -1
  787. package/lib/typescript/components/Chat/hooks/handleEventToSyncDB.d.ts.map +1 -1
  788. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +1 -1
  789. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts.map +1 -1
  790. package/lib/typescript/components/Chat/hooks/useIsOnline.d.ts.map +1 -1
  791. package/lib/typescript/components/ImageBackground.d.ts.map +1 -0
  792. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts +2 -2
  793. package/lib/typescript/components/ImageGallery/ImageGallery.d.ts.map +1 -1
  794. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts +5 -5
  795. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts.map +1 -1
  796. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryVideo.d.ts +5 -5
  797. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryVideo.d.ts.map +1 -1
  798. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +3 -3
  799. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts.map +1 -1
  800. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts +3 -3
  801. package/lib/typescript/components/ImageGallery/components/ImageGalleryHeader.d.ts.map +1 -1
  802. package/lib/typescript/components/ImageGallery/components/ImageGalleryOverlay.d.ts +2 -2
  803. package/lib/typescript/components/ImageGallery/components/ImageGalleryOverlay.d.ts.map +1 -1
  804. package/lib/typescript/components/ImageGallery/hooks/useImageGalleryGestures.d.ts +5 -4
  805. package/lib/typescript/components/ImageGallery/hooks/useImageGalleryGestures.d.ts.map +1 -1
  806. package/lib/typescript/components/Message/Message.d.ts +40 -4
  807. package/lib/typescript/components/Message/Message.d.ts.map +1 -1
  808. package/lib/typescript/components/Message/MessageSimple/MessageAvatar.d.ts.map +1 -1
  809. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +5 -11
  810. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts.map +1 -1
  811. package/lib/typescript/components/Message/MessageSimple/MessagePinnedHeader.d.ts +6 -2
  812. package/lib/typescript/components/Message/MessageSimple/MessagePinnedHeader.d.ts.map +1 -1
  813. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +1 -1
  814. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts.map +1 -1
  815. package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +2 -1
  816. package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts.map +1 -1
  817. package/lib/typescript/components/Message/MessageSimple/ReactionList.d.ts +32 -0
  818. package/lib/typescript/components/Message/MessageSimple/ReactionList.d.ts.map +1 -0
  819. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +1 -1
  820. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts.map +1 -1
  821. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +6 -5
  822. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts.map +1 -1
  823. package/lib/typescript/components/Message/hooks/useProcessReactions.d.ts +3 -11
  824. package/lib/typescript/components/Message/hooks/useProcessReactions.d.ts.map +1 -1
  825. package/lib/typescript/components/Message/utils/messageActions.d.ts +14 -6
  826. package/lib/typescript/components/Message/utils/messageActions.d.ts.map +1 -1
  827. package/lib/typescript/components/MessageInput/MessageInput.d.ts +1 -1
  828. package/lib/typescript/components/MessageInput/MessageInput.d.ts.map +1 -1
  829. package/lib/typescript/components/MessageInput/components/AudioRecorder/AudioRecordingButton.d.ts.map +1 -1
  830. package/lib/typescript/components/MessageInput/components/NativeAttachmentPicker.d.ts.map +1 -1
  831. package/lib/typescript/components/MessageInput/hooks/useAudioController.d.ts.map +1 -1
  832. package/lib/typescript/components/MessageOverlay/MessageActionList.d.ts +14 -0
  833. package/lib/typescript/components/MessageOverlay/MessageActionList.d.ts.map +1 -0
  834. package/lib/typescript/components/{MessageMenu → MessageOverlay}/MessageActionListItem.d.ts +8 -2
  835. package/lib/typescript/components/MessageOverlay/MessageActionListItem.d.ts.map +1 -0
  836. package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts +15 -0
  837. package/lib/typescript/components/MessageOverlay/MessageOverlay.d.ts.map +1 -0
  838. package/lib/typescript/components/MessageOverlay/OverlayBackdrop.d.ts +8 -0
  839. package/lib/typescript/components/MessageOverlay/OverlayBackdrop.d.ts.map +1 -0
  840. package/lib/typescript/components/MessageOverlay/OverlayReactionList.d.ts +36 -0
  841. package/lib/typescript/components/MessageOverlay/OverlayReactionList.d.ts.map +1 -0
  842. package/lib/typescript/components/MessageOverlay/OverlayReactions.d.ts +29 -0
  843. package/lib/typescript/components/MessageOverlay/OverlayReactions.d.ts.map +1 -0
  844. package/lib/typescript/components/MessageOverlay/OverlayReactionsAvatar.d.ts +11 -0
  845. package/lib/typescript/components/MessageOverlay/OverlayReactionsAvatar.d.ts.map +1 -0
  846. package/lib/typescript/components/MessageOverlay/OverlayReactionsItem.d.ts +11 -0
  847. package/lib/typescript/components/MessageOverlay/OverlayReactionsItem.d.ts.map +1 -0
  848. package/lib/typescript/components/MessageOverlay/hooks/useFetchReactions.d.ts.map +1 -0
  849. package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts +11 -0
  850. package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts.map +1 -0
  851. package/lib/typescript/components/Poll/CreatePollContent.d.ts +6 -0
  852. package/lib/typescript/components/Poll/CreatePollContent.d.ts.map +1 -0
  853. package/lib/typescript/components/Poll/Poll.d.ts +13 -0
  854. package/lib/typescript/components/Poll/Poll.d.ts.map +1 -0
  855. package/lib/typescript/components/Poll/components/Button.d.ts +35 -0
  856. package/lib/typescript/components/Poll/components/Button.d.ts.map +1 -0
  857. package/lib/typescript/components/Poll/components/CreatePollIcon.d.ts +3 -0
  858. package/lib/typescript/components/Poll/components/CreatePollIcon.d.ts.map +1 -0
  859. package/lib/typescript/components/Poll/components/CreatePollOptions.d.ts +34 -0
  860. package/lib/typescript/components/Poll/components/CreatePollOptions.d.ts.map +1 -0
  861. package/lib/typescript/components/Poll/components/PollAnswersList.d.ts +15 -0
  862. package/lib/typescript/components/Poll/components/PollAnswersList.d.ts.map +1 -0
  863. package/lib/typescript/components/Poll/components/PollInputDialog.d.ts +10 -0
  864. package/lib/typescript/components/Poll/components/PollInputDialog.d.ts.map +1 -0
  865. package/lib/typescript/components/Poll/components/PollModalHeader.d.ts +7 -0
  866. package/lib/typescript/components/Poll/components/PollModalHeader.d.ts.map +1 -0
  867. package/lib/typescript/components/Poll/components/PollOption.d.ts +16 -0
  868. package/lib/typescript/components/Poll/components/PollOption.d.ts.map +1 -0
  869. package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts +18 -0
  870. package/lib/typescript/components/Poll/components/PollResults/PollOptionFullResults.d.ts.map +1 -0
  871. package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts +11 -0
  872. package/lib/typescript/components/Poll/components/PollResults/PollResultItem.d.ts.map +1 -0
  873. package/lib/typescript/components/Poll/components/PollResults/PollResults.d.ts +10 -0
  874. package/lib/typescript/components/Poll/components/PollResults/PollResults.d.ts.map +1 -0
  875. package/lib/typescript/components/Poll/components/PollResults/index.d.ts +4 -0
  876. package/lib/typescript/components/Poll/components/PollResults/index.d.ts.map +1 -0
  877. package/lib/typescript/components/Poll/components/index.d.ts +9 -0
  878. package/lib/typescript/components/Poll/components/index.d.ts.map +1 -0
  879. package/lib/typescript/components/Poll/hooks/usePollAnswersPagination.d.ts +29 -0
  880. package/lib/typescript/components/Poll/hooks/usePollAnswersPagination.d.ts.map +1 -0
  881. package/lib/typescript/components/Poll/hooks/usePollOptionVotesPagination.d.ts +32 -0
  882. package/lib/typescript/components/Poll/hooks/usePollOptionVotesPagination.d.ts.map +1 -0
  883. package/lib/typescript/components/Poll/hooks/usePollState.d.ts +26 -0
  884. package/lib/typescript/components/Poll/hooks/usePollState.d.ts.map +1 -0
  885. package/lib/typescript/components/Poll/hooks/usePollStateStore.d.ts +3 -0
  886. package/lib/typescript/components/Poll/hooks/usePollStateStore.d.ts.map +1 -0
  887. package/lib/typescript/components/Poll/index.d.ts +8 -0
  888. package/lib/typescript/components/Poll/index.d.ts.map +1 -0
  889. package/lib/typescript/components/ProgressControl/ProgressControl.d.ts.map +1 -1
  890. package/lib/typescript/components/ProgressControl/WaveProgressBar.d.ts.map +1 -1
  891. package/lib/typescript/components/Reply/Reply.d.ts.map +1 -1
  892. package/lib/typescript/components/Spinner/Spinner.d.ts.map +1 -0
  893. package/lib/typescript/components/ThreadList/ThreadList.d.ts.map +1 -1
  894. package/lib/typescript/components/ThreadList/ThreadListItem.d.ts.map +1 -1
  895. package/lib/typescript/components/ThreadList/ThreadListUnreadBanner.d.ts.map +1 -1
  896. package/lib/typescript/components/index.d.ts +11 -11
  897. package/lib/typescript/components/index.d.ts.map +1 -1
  898. package/lib/typescript/contexts/activeChannelsRefContext/ActiveChannelsRefContext.d.ts +11 -0
  899. package/lib/typescript/contexts/activeChannelsRefContext/ActiveChannelsRefContext.d.ts.map +1 -1
  900. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +18 -2
  901. package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts.map +1 -1
  902. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +25 -1
  903. package/lib/typescript/contexts/channelContext/ChannelContext.d.ts.map +1 -1
  904. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +11 -1
  905. package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts.map +1 -1
  906. package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts +11 -1
  907. package/lib/typescript/contexts/channelsStateContext/ChannelsStateContext.d.ts.map +1 -1
  908. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +15 -1
  909. package/lib/typescript/contexts/chatContext/ChatContext.d.ts.map +1 -1
  910. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts +10 -0
  911. package/lib/typescript/contexts/imageGalleryContext/ImageGalleryContext.d.ts.map +1 -1
  912. package/lib/typescript/contexts/index.d.ts +2 -1
  913. package/lib/typescript/contexts/index.d.ts.map +1 -1
  914. package/lib/typescript/contexts/keyboardContext/KeyboardContext.d.ts +11 -0
  915. package/lib/typescript/contexts/keyboardContext/KeyboardContext.d.ts.map +1 -1
  916. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +56 -21
  917. package/lib/typescript/contexts/messageContext/MessageContext.d.ts.map +1 -1
  918. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +22 -3
  919. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts.map +1 -1
  920. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -1
  921. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts.map +1 -1
  922. package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +80 -0
  923. package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts.map +1 -0
  924. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.d.ts +13 -0
  925. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.d.ts.map +1 -0
  926. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.test.d.ts +2 -0
  927. package/lib/typescript/contexts/messageOverlayContext/hooks/useResettableState.test.d.ts.map +1 -0
  928. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +45 -77
  929. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts.map +1 -1
  930. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts +27 -2
  931. package/lib/typescript/contexts/overlayContext/OverlayContext.d.ts.map +1 -1
  932. package/lib/typescript/contexts/overlayContext/OverlayProvider.d.ts.map +1 -1
  933. package/lib/typescript/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.d.ts +3 -0
  934. package/lib/typescript/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.d.ts.map +1 -1
  935. package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts +11 -1
  936. package/lib/typescript/contexts/paginatedMessageListContext/PaginatedMessageListContext.d.ts.map +1 -1
  937. package/lib/typescript/contexts/pollContext/createPollContentContext.d.ts +20 -0
  938. package/lib/typescript/contexts/pollContext/createPollContentContext.d.ts.map +1 -0
  939. package/lib/typescript/contexts/pollContext/index.d.ts +3 -0
  940. package/lib/typescript/contexts/pollContext/index.d.ts.map +1 -0
  941. package/lib/typescript/contexts/pollContext/pollContext.d.ts +14 -0
  942. package/lib/typescript/contexts/pollContext/pollContext.d.ts.map +1 -0
  943. package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts +11 -1
  944. package/lib/typescript/contexts/suggestionsContext/SuggestionsContext.d.ts.map +1 -1
  945. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +170 -61
  946. package/lib/typescript/contexts/themeContext/utils/theme.d.ts.map +1 -1
  947. package/lib/typescript/contexts/threadContext/ThreadContext.d.ts +11 -1
  948. package/lib/typescript/contexts/threadContext/ThreadContext.d.ts.map +1 -1
  949. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +11 -0
  950. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts.map +1 -1
  951. package/lib/typescript/contexts/typingContext/TypingContext.d.ts +11 -1
  952. package/lib/typescript/contexts/typingContext/TypingContext.d.ts.map +1 -1
  953. package/lib/typescript/hooks/useStateStore.d.ts +2 -2
  954. package/lib/typescript/hooks/useStateStore.d.ts.map +1 -1
  955. package/lib/typescript/hooks/useTranslatedMessage.d.ts.map +1 -1
  956. package/lib/typescript/i18n/en.json +34 -0
  957. package/lib/typescript/i18n/es.json +38 -0
  958. package/lib/typescript/i18n/fr.json +38 -0
  959. package/lib/typescript/i18n/he.json +38 -0
  960. package/lib/typescript/i18n/hi.json +34 -0
  961. package/lib/typescript/i18n/it.json +38 -0
  962. package/lib/typescript/i18n/ja.json +34 -0
  963. package/lib/typescript/i18n/ko.json +34 -0
  964. package/lib/typescript/i18n/nl.json +34 -0
  965. package/lib/typescript/i18n/pt-br.json +38 -0
  966. package/lib/typescript/i18n/ru.json +42 -0
  967. package/lib/typescript/i18n/tr.json +34 -0
  968. package/lib/typescript/icons/Back.d.ts +4 -0
  969. package/lib/typescript/icons/Back.d.ts.map +1 -0
  970. package/lib/typescript/icons/DragHandle.d.ts +4 -0
  971. package/lib/typescript/icons/DragHandle.d.ts.map +1 -0
  972. package/lib/typescript/icons/PinHeader.d.ts +1 -5
  973. package/lib/typescript/icons/PinHeader.d.ts.map +1 -1
  974. package/lib/typescript/icons/PollThumbnail.d.ts +4 -0
  975. package/lib/typescript/icons/PollThumbnail.d.ts.map +1 -0
  976. package/lib/typescript/icons/SendPoll.d.ts +4 -0
  977. package/lib/typescript/icons/SendPoll.d.ts.map +1 -0
  978. package/lib/typescript/icons/index.d.ts +4 -0
  979. package/lib/typescript/icons/index.d.ts.map +1 -1
  980. package/lib/typescript/index.d.ts +3 -2
  981. package/lib/typescript/index.d.ts.map +1 -1
  982. package/lib/typescript/native.d.ts +11 -9
  983. package/lib/typescript/native.d.ts.map +1 -1
  984. package/lib/typescript/store/{SqliteClient.d.ts → QuickSqliteClient.d.ts} +5 -6
  985. package/lib/typescript/store/QuickSqliteClient.d.ts.map +1 -0
  986. package/lib/typescript/store/apis/getReactionsforFilterSort.d.ts.map +1 -1
  987. package/lib/typescript/store/apis/index.d.ts +1 -0
  988. package/lib/typescript/store/apis/index.d.ts.map +1 -1
  989. package/lib/typescript/store/apis/updatePollMessage.d.ts +7 -0
  990. package/lib/typescript/store/apis/updatePollMessage.d.ts.map +1 -0
  991. package/lib/typescript/store/mappers/mapMessageToStorable.d.ts.map +1 -1
  992. package/lib/typescript/store/mappers/mapStorableToMessage.d.ts.map +1 -1
  993. package/lib/typescript/store/schema.d.ts +2 -0
  994. package/lib/typescript/store/schema.d.ts.map +1 -1
  995. package/lib/typescript/types/types.d.ts +0 -6
  996. package/lib/typescript/types/types.d.ts.map +1 -1
  997. package/lib/typescript/utils/StreamChatRN.d.ts +23 -0
  998. package/lib/typescript/utils/StreamChatRN.d.ts.map +1 -0
  999. package/lib/typescript/utils/getResizedImageUrl.d.ts +2 -3
  1000. package/lib/typescript/utils/getResizedImageUrl.d.ts.map +1 -1
  1001. package/lib/typescript/utils/i18n/Streami18n.d.ts +34 -0
  1002. package/lib/typescript/utils/i18n/Streami18n.d.ts.map +1 -1
  1003. package/package.json +12 -12
  1004. package/src/__tests__/offline-support/offline-feature.js +5 -5
  1005. package/src/__tests__/offline-support/optimistic-update.js +4 -4
  1006. package/src/components/Attachment/Attachment.tsx +2 -2
  1007. package/src/components/Attachment/Card.tsx +10 -10
  1008. package/src/components/Attachment/FileAttachment.tsx +16 -8
  1009. package/src/components/Attachment/FileAttachmentGroup.tsx +2 -2
  1010. package/src/components/Attachment/Gallery.tsx +17 -20
  1011. package/src/components/Attachment/Giphy.tsx +14 -14
  1012. package/src/components/Attachment/__tests__/Attachment.test.js +2 -4
  1013. package/src/components/Attachment/__tests__/Gallery.test.js +2 -0
  1014. package/src/components/Attachment/utils/buildGallery/buildGallery.ts +1 -10
  1015. package/src/components/Attachment/utils/buildGallery/buildGalleryOfSingleImage.ts +1 -4
  1016. package/src/components/Attachment/utils/buildGallery/buildGalleryOfThreeImages.ts +1 -5
  1017. package/src/components/Attachment/utils/buildGallery/buildGalleryOfTwoImages.ts +1 -6
  1018. package/src/components/Attachment/utils/buildGallery/buildThumbnail.ts +6 -13
  1019. package/src/components/Attachment/utils/buildGallery/buildThumbnailGrid.ts +1 -5
  1020. package/src/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.tsx +2 -2
  1021. package/src/components/AttachmentPicker/components/AttachmentPickerItem.tsx +1 -1
  1022. package/src/components/AttachmentPicker/components/AttachmentPickerSelectionBar.tsx +35 -2
  1023. package/src/components/AutoCompleteInput/AutoCompleteSuggestionList.tsx +1 -1
  1024. package/src/components/Avatar/Avatar.tsx +0 -3
  1025. package/src/components/Avatar/GroupAvatar.tsx +0 -4
  1026. package/src/components/Channel/Channel.tsx +159 -60
  1027. package/src/components/Channel/__tests__/ownCapabilities.test.js +57 -57
  1028. package/src/components/Channel/hooks/useCreateChannelContext.ts +2 -0
  1029. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +22 -3
  1030. package/src/components/Channel/hooks/useCreateMessagesContext.ts +15 -26
  1031. package/src/components/Channel/hooks/useCreateThreadContext.ts +7 -8
  1032. package/src/components/ChannelList/ChannelList.tsx +17 -0
  1033. package/src/components/ChannelList/ChannelListFooterLoadingIndicator.tsx +1 -1
  1034. package/src/components/ChannelList/__tests__/ChannelList.test.js +5 -5
  1035. package/src/components/ChannelList/hooks/listeners/useNewMessageNotification.ts +11 -2
  1036. package/src/components/ChannelPreview/hooks/useLatestMessagePreview.ts +56 -4
  1037. package/src/components/Chat/Chat.tsx +11 -3
  1038. package/src/components/Chat/__tests__/Chat.test.js +179 -184
  1039. package/src/components/Chat/hooks/handleEventToSyncDB.ts +22 -3
  1040. package/src/components/Chat/hooks/useCreateChatContext.ts +2 -0
  1041. package/src/components/Chat/hooks/useIsOnline.ts +10 -13
  1042. package/src/components/ImageGallery/ImageGallery.tsx +121 -71
  1043. package/src/components/ImageGallery/__tests__/AnimatedVideoGallery.test.tsx +11 -0
  1044. package/src/components/ImageGallery/__tests__/ImageGallery.test.tsx +4 -3
  1045. package/src/components/ImageGallery/__tests__/ImageGalleryFooter.test.tsx +5 -3
  1046. package/src/components/ImageGallery/__tests__/ImageGalleryGrid.test.tsx +1 -1
  1047. package/src/components/ImageGallery/__tests__/ImageGalleryGridHandle.test.tsx +1 -1
  1048. package/src/components/ImageGallery/__tests__/ImageGalleryHeader.test.tsx +5 -3
  1049. package/src/components/ImageGallery/__tests__/ImageGalleryOverlay.test.tsx +3 -0
  1050. package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +5 -5
  1051. package/src/components/ImageGallery/components/AnimatedGalleryVideo.tsx +9 -9
  1052. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +86 -97
  1053. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +44 -46
  1054. package/src/components/ImageGallery/components/ImageGalleryOverlay.tsx +1 -2
  1055. package/src/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.tsx +4 -3
  1056. package/src/components/ImageGallery/hooks/useImageGalleryGestures.tsx +466 -481
  1057. package/src/components/Indicators/LoadingIndicator.tsx +1 -1
  1058. package/src/components/Message/Message.tsx +217 -113
  1059. package/src/components/Message/MessageSimple/MessageAvatar.tsx +0 -1
  1060. package/src/components/Message/MessageSimple/MessageContent.tsx +171 -28
  1061. package/src/components/Message/MessageSimple/MessageDeleted.tsx +1 -1
  1062. package/src/components/Message/MessageSimple/MessageFooter.tsx +1 -1
  1063. package/src/components/Message/MessageSimple/MessagePinnedHeader.tsx +66 -21
  1064. package/src/components/Message/MessageSimple/MessageSimple.tsx +55 -247
  1065. package/src/components/Message/MessageSimple/MessageTextContainer.tsx +4 -3
  1066. package/src/components/Message/MessageSimple/ReactionList.tsx +398 -0
  1067. package/src/components/Message/MessageSimple/__tests__/MessageContent.test.js +2 -1
  1068. package/src/components/Message/MessageSimple/__tests__/MessageTextContainer.test.tsx +3 -3
  1069. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessagePinnedHeader.test.js.snap +19 -23
  1070. package/src/components/Message/hooks/useCreateMessageContext.ts +16 -4
  1071. package/src/components/Message/hooks/useMessageActions.tsx +68 -48
  1072. package/src/components/Message/hooks/useProcessReactions.ts +10 -17
  1073. package/src/components/Message/utils/messageActions.ts +20 -10
  1074. package/src/components/MessageInput/FileUploadPreview.tsx +2 -2
  1075. package/src/components/MessageInput/MessageInput.tsx +59 -1
  1076. package/src/components/MessageInput/__tests__/AudioAttachmentUploadPreviewExpo.test.tsx +4 -1
  1077. package/src/components/MessageInput/__tests__/AudioAttachmentUploadPreviewNative.test.tsx +4 -1
  1078. package/src/components/MessageInput/__tests__/FileUploadPreview.test.js +5 -3
  1079. package/src/components/MessageInput/__tests__/MessageInput.test.js +2 -0
  1080. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingButton.tsx +1 -7
  1081. package/src/components/MessageInput/components/AudioRecorder/AudioRecordingLockIndicator.tsx +1 -0
  1082. package/src/components/MessageInput/components/NativeAttachmentPicker.tsx +29 -2
  1083. package/src/components/MessageInput/hooks/useAudioController.tsx +3 -0
  1084. package/src/components/MessageList/MessageList.tsx +1 -1
  1085. package/src/components/MessageList/__tests__/MessageList.test.js +21 -0
  1086. package/src/components/MessageOverlay/MessageActionList.tsx +171 -0
  1087. package/src/components/MessageOverlay/MessageActionListItem.tsx +144 -0
  1088. package/src/components/MessageOverlay/MessageOverlay.tsx +637 -0
  1089. package/src/components/MessageOverlay/OverlayBackdrop.tsx +18 -0
  1090. package/src/components/MessageOverlay/OverlayReactionList.tsx +447 -0
  1091. package/src/components/MessageOverlay/OverlayReactions.tsx +250 -0
  1092. package/src/components/{MessageMenu/MessageUserReactionsAvatar.tsx → MessageOverlay/OverlayReactionsAvatar.tsx} +6 -6
  1093. package/src/components/MessageOverlay/OverlayReactionsItem.tsx +188 -0
  1094. package/src/components/{MessageMenu → MessageOverlay}/hooks/useFetchReactions.ts +0 -2
  1095. package/src/components/MessageOverlay/hooks/useMessageActionAnimation.tsx +44 -0
  1096. package/src/components/Poll/CreatePollContent.tsx +299 -0
  1097. package/src/components/Poll/Poll.tsx +126 -0
  1098. package/src/components/Poll/components/Button.tsx +465 -0
  1099. package/src/components/Poll/components/CreatePollIcon.tsx +14 -0
  1100. package/src/components/Poll/components/CreatePollOptions.tsx +351 -0
  1101. package/src/components/Poll/components/PollAnswersList.tsx +134 -0
  1102. package/src/components/Poll/components/PollInputDialog.tsx +117 -0
  1103. package/src/components/Poll/components/PollModalHeader.tsx +42 -0
  1104. package/src/components/Poll/components/PollOption.tsx +167 -0
  1105. package/src/components/Poll/components/PollResults/PollOptionFullResults.tsx +108 -0
  1106. package/src/components/Poll/components/PollResults/PollResultItem.tsx +119 -0
  1107. package/src/components/Poll/components/PollResults/PollResults.tsx +79 -0
  1108. package/src/components/Poll/components/PollResults/index.ts +3 -0
  1109. package/src/components/Poll/components/index.ts +8 -0
  1110. package/src/components/Poll/hooks/usePollAnswersPagination.ts +109 -0
  1111. package/src/components/Poll/hooks/usePollOptionVotesPagination.ts +119 -0
  1112. package/src/components/Poll/hooks/usePollState.ts +122 -0
  1113. package/src/components/Poll/hooks/usePollStateStore.ts +13 -0
  1114. package/src/components/Poll/index.ts +10 -0
  1115. package/src/components/ProgressControl/ProgressControl.tsx +38 -28
  1116. package/src/components/ProgressControl/WaveProgressBar.tsx +37 -29
  1117. package/src/components/Reply/Reply.tsx +4 -5
  1118. package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +796 -903
  1119. package/src/components/ThreadList/ThreadList.tsx +6 -2
  1120. package/src/components/ThreadList/ThreadListItem.tsx +9 -8
  1121. package/src/components/ThreadList/ThreadListUnreadBanner.tsx +3 -2
  1122. package/src/components/docs/data.js +27 -13
  1123. package/src/components/index.ts +11 -11
  1124. package/src/contexts/__tests__/index.test.tsx +5 -0
  1125. package/src/contexts/activeChannelsRefContext/ActiveChannelsRefContext.tsx +27 -0
  1126. package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +41 -2
  1127. package/src/contexts/channelContext/ChannelContext.tsx +46 -2
  1128. package/src/contexts/channelsContext/ChannelsContext.tsx +28 -1
  1129. package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +30 -1
  1130. package/src/contexts/chatContext/ChatContext.tsx +30 -1
  1131. package/src/contexts/imageGalleryContext/ImageGalleryContext.tsx +29 -0
  1132. package/src/contexts/index.ts +2 -1
  1133. package/src/contexts/keyboardContext/KeyboardContext.tsx +30 -0
  1134. package/src/contexts/messageContext/MessageContext.tsx +75 -22
  1135. package/src/contexts/messageInputContext/MessageInputContext.tsx +75 -21
  1136. package/src/contexts/messageInputContext/__tests__/isValidMessage.test.tsx +3 -2
  1137. package/src/contexts/messageInputContext/__tests__/pickFile.test.tsx +4 -2
  1138. package/src/contexts/messageInputContext/__tests__/uploadFile.test.tsx +2 -1
  1139. package/src/contexts/messageInputContext/__tests__/uploadImage.test.tsx +2 -1
  1140. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +14 -1
  1141. package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +148 -0
  1142. package/src/contexts/messageOverlayContext/hooks/useResettableState.test.tsx +48 -0
  1143. package/src/contexts/messageOverlayContext/hooks/useResettableState.ts +22 -0
  1144. package/src/contexts/messagesContext/MessagesContext.tsx +70 -84
  1145. package/src/contexts/overlayContext/OverlayContext.tsx +56 -2
  1146. package/src/contexts/overlayContext/OverlayProvider.tsx +67 -23
  1147. package/src/contexts/ownCapabilitiesContext/OwnCapabilitiesContext.tsx +3 -0
  1148. package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx +30 -1
  1149. package/src/contexts/pollContext/createPollContentContext.tsx +49 -0
  1150. package/src/contexts/pollContext/index.ts +2 -0
  1151. package/src/contexts/pollContext/pollContext.tsx +43 -0
  1152. package/src/contexts/suggestionsContext/SuggestionsContext.tsx +30 -1
  1153. package/src/contexts/themeContext/utils/theme.ts +326 -126
  1154. package/src/contexts/threadContext/ThreadContext.tsx +28 -1
  1155. package/src/contexts/translationContext/TranslationContext.tsx +29 -0
  1156. package/src/contexts/typingContext/TypingContext.tsx +28 -1
  1157. package/src/hooks/__tests__/useTranslatedMessage.test.tsx +9 -3
  1158. package/src/hooks/useStateStore.ts +12 -12
  1159. package/src/hooks/useTranslatedMessage.ts +4 -1
  1160. package/src/i18n/en.json +34 -0
  1161. package/src/i18n/es.json +38 -0
  1162. package/src/i18n/fr.json +38 -0
  1163. package/src/i18n/he.json +38 -0
  1164. package/src/i18n/hi.json +34 -0
  1165. package/src/i18n/it.json +38 -0
  1166. package/src/i18n/ja.json +34 -0
  1167. package/src/i18n/ko.json +34 -0
  1168. package/src/i18n/nl.json +34 -0
  1169. package/src/i18n/pt-br.json +38 -0
  1170. package/src/i18n/ru.json +42 -0
  1171. package/src/i18n/tr.json +34 -0
  1172. package/src/icons/Back.tsx +12 -0
  1173. package/src/icons/DragHandle.tsx +9 -0
  1174. package/src/icons/PinHeader.tsx +7 -13
  1175. package/src/icons/PollThumbnail.tsx +12 -0
  1176. package/src/icons/SendPoll.tsx +12 -0
  1177. package/src/icons/index.ts +4 -0
  1178. package/src/index.ts +3 -2
  1179. package/src/mock-builders/DB/mock.ts +84 -82
  1180. package/src/native.ts +26 -15
  1181. package/src/store/{SqliteClient.ts → QuickSqliteClient.ts} +55 -75
  1182. package/src/store/apis/addPendingTask.ts +5 -5
  1183. package/src/store/apis/deleteChannel.ts +3 -3
  1184. package/src/store/apis/deleteMember.ts +3 -3
  1185. package/src/store/apis/deleteMessage.ts +3 -3
  1186. package/src/store/apis/deleteMessagesForChannel.ts +3 -3
  1187. package/src/store/apis/deletePendingTask.ts +3 -3
  1188. package/src/store/apis/deleteReaction.ts +3 -3
  1189. package/src/store/apis/deleteReactions.ts +2 -2
  1190. package/src/store/apis/getAllChannelIds.ts +2 -2
  1191. package/src/store/apis/getAppSettings.ts +3 -3
  1192. package/src/store/apis/getChannelMessages.ts +2 -2
  1193. package/src/store/apis/getChannels.ts +2 -2
  1194. package/src/store/apis/getChannelsForFilterSort.ts +2 -2
  1195. package/src/store/apis/getLastSyncedAt.ts +3 -3
  1196. package/src/store/apis/getMembers.ts +2 -2
  1197. package/src/store/apis/getPendingTasks.ts +3 -3
  1198. package/src/store/apis/getReactions.ts +2 -2
  1199. package/src/store/apis/getReactionsforFilterSort.ts +3 -5
  1200. package/src/store/apis/getReads.ts +2 -2
  1201. package/src/store/apis/index.ts +1 -0
  1202. package/src/store/apis/insertReaction.ts +3 -3
  1203. package/src/store/apis/queries/selectChannelIdsForFilterSort.ts +3 -3
  1204. package/src/store/apis/queries/selectChannels.ts +3 -3
  1205. package/src/store/apis/queries/selectMembersForChannels.ts +3 -3
  1206. package/src/store/apis/queries/selectMessagesForChannels.ts +4 -4
  1207. package/src/store/apis/queries/selectReactionsForMessages.ts +3 -3
  1208. package/src/store/apis/queries/selectReadsForChannels.ts +4 -4
  1209. package/src/store/apis/updateMessage.ts +4 -4
  1210. package/src/store/apis/updatePollMessage.ts +48 -0
  1211. package/src/store/apis/updateReaction.ts +3 -3
  1212. package/src/store/apis/upsertAppSettings.ts +3 -3
  1213. package/src/store/apis/upsertChannelData.ts +3 -3
  1214. package/src/store/apis/upsertChannelDataFromChannel.ts +2 -2
  1215. package/src/store/apis/upsertChannels.ts +3 -3
  1216. package/src/store/apis/upsertCidsForQuery.ts +3 -3
  1217. package/src/store/apis/upsertMembers.ts +3 -3
  1218. package/src/store/apis/upsertMessages.ts +3 -3
  1219. package/src/store/apis/upsertReads.ts +3 -3
  1220. package/src/store/apis/upsertUserSyncStatus.ts +3 -3
  1221. package/src/store/mappers/mapMessageToStorable.ts +4 -0
  1222. package/src/store/mappers/mapStorableToMessage.ts +4 -0
  1223. package/src/store/schema.ts +4 -0
  1224. package/src/types/types.ts +0 -7
  1225. package/src/utils/DBSyncManager.ts +4 -4
  1226. package/src/utils/StreamChatRN.ts +27 -0
  1227. package/src/utils/__tests__/getResizedImageUrl.test.ts +2 -1
  1228. package/src/utils/getResizedImageUrl.ts +5 -7
  1229. package/src/version.json +1 -1
  1230. package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListBottom.js +0 -234
  1231. package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListBottom.js.map +0 -1
  1232. package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListTop.js +0 -195
  1233. package/lib/commonjs/components/Message/MessageSimple/ReactionList/ReactionListTop.js.map +0 -1
  1234. package/lib/commonjs/components/Message/hooks/useMessageData.js +0 -38
  1235. package/lib/commonjs/components/Message/hooks/useMessageData.js.map +0 -1
  1236. package/lib/commonjs/components/MessageMenu/MessageActionList.js +0 -35
  1237. package/lib/commonjs/components/MessageMenu/MessageActionList.js.map +0 -1
  1238. package/lib/commonjs/components/MessageMenu/MessageActionListItem.js +0 -60
  1239. package/lib/commonjs/components/MessageMenu/MessageActionListItem.js.map +0 -1
  1240. package/lib/commonjs/components/MessageMenu/MessageMenu.js +0 -70
  1241. package/lib/commonjs/components/MessageMenu/MessageMenu.js.map +0 -1
  1242. package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js +0 -81
  1243. package/lib/commonjs/components/MessageMenu/MessageReactionPicker.js.map +0 -1
  1244. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js +0 -171
  1245. package/lib/commonjs/components/MessageMenu/MessageUserReactions.js.map +0 -1
  1246. package/lib/commonjs/components/MessageMenu/MessageUserReactionsAvatar.js.map +0 -1
  1247. package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js +0 -110
  1248. package/lib/commonjs/components/MessageMenu/MessageUserReactionsItem.js.map +0 -1
  1249. package/lib/commonjs/components/MessageMenu/ReactionButton.js +0 -59
  1250. package/lib/commonjs/components/MessageMenu/ReactionButton.js.map +0 -1
  1251. package/lib/commonjs/components/MessageMenu/hooks/useFetchReactions.js.map +0 -1
  1252. package/lib/commonjs/components/UIComponents/BottomSheetModal.js +0 -152
  1253. package/lib/commonjs/components/UIComponents/BottomSheetModal.js.map +0 -1
  1254. package/lib/commonjs/components/UIComponents/ImageBackground.js.map +0 -1
  1255. package/lib/commonjs/components/UIComponents/Spinner.js.map +0 -1
  1256. package/lib/commonjs/components/UIComponents/index.js +0 -37
  1257. package/lib/commonjs/components/UIComponents/index.js.map +0 -1
  1258. package/lib/commonjs/contexts/chatConfigContext/ChatConfigContext.js.map +0 -1
  1259. package/lib/commonjs/store/SqliteClient.js +0 -179
  1260. package/lib/commonjs/store/SqliteClient.js.map +0 -1
  1261. package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListBottom.js +0 -234
  1262. package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListBottom.js.map +0 -1
  1263. package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListTop.js +0 -195
  1264. package/lib/module/components/Message/MessageSimple/ReactionList/ReactionListTop.js.map +0 -1
  1265. package/lib/module/components/Message/hooks/useMessageData.js +0 -38
  1266. package/lib/module/components/Message/hooks/useMessageData.js.map +0 -1
  1267. package/lib/module/components/MessageMenu/MessageActionList.js +0 -35
  1268. package/lib/module/components/MessageMenu/MessageActionList.js.map +0 -1
  1269. package/lib/module/components/MessageMenu/MessageActionListItem.js +0 -60
  1270. package/lib/module/components/MessageMenu/MessageActionListItem.js.map +0 -1
  1271. package/lib/module/components/MessageMenu/MessageMenu.js +0 -70
  1272. package/lib/module/components/MessageMenu/MessageMenu.js.map +0 -1
  1273. package/lib/module/components/MessageMenu/MessageReactionPicker.js +0 -81
  1274. package/lib/module/components/MessageMenu/MessageReactionPicker.js.map +0 -1
  1275. package/lib/module/components/MessageMenu/MessageUserReactions.js +0 -171
  1276. package/lib/module/components/MessageMenu/MessageUserReactions.js.map +0 -1
  1277. package/lib/module/components/MessageMenu/MessageUserReactionsAvatar.js.map +0 -1
  1278. package/lib/module/components/MessageMenu/MessageUserReactionsItem.js +0 -110
  1279. package/lib/module/components/MessageMenu/MessageUserReactionsItem.js.map +0 -1
  1280. package/lib/module/components/MessageMenu/ReactionButton.js +0 -59
  1281. package/lib/module/components/MessageMenu/ReactionButton.js.map +0 -1
  1282. package/lib/module/components/MessageMenu/hooks/useFetchReactions.js.map +0 -1
  1283. package/lib/module/components/UIComponents/BottomSheetModal.js +0 -152
  1284. package/lib/module/components/UIComponents/BottomSheetModal.js.map +0 -1
  1285. package/lib/module/components/UIComponents/ImageBackground.js.map +0 -1
  1286. package/lib/module/components/UIComponents/Spinner.js.map +0 -1
  1287. package/lib/module/components/UIComponents/index.js +0 -37
  1288. package/lib/module/components/UIComponents/index.js.map +0 -1
  1289. package/lib/module/contexts/chatConfigContext/ChatConfigContext.js.map +0 -1
  1290. package/lib/module/store/SqliteClient.js +0 -179
  1291. package/lib/module/store/SqliteClient.js.map +0 -1
  1292. package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListBottom.d.ts +0 -12
  1293. package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListBottom.d.ts.map +0 -1
  1294. package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListTop.d.ts +0 -20
  1295. package/lib/typescript/components/Message/MessageSimple/ReactionList/ReactionListTop.d.ts.map +0 -1
  1296. package/lib/typescript/components/Message/hooks/useMessageData.d.ts +0 -12
  1297. package/lib/typescript/components/Message/hooks/useMessageData.d.ts.map +0 -1
  1298. package/lib/typescript/components/MessageMenu/MessageActionList.d.ts +0 -16
  1299. package/lib/typescript/components/MessageMenu/MessageActionList.d.ts.map +0 -1
  1300. package/lib/typescript/components/MessageMenu/MessageActionListItem.d.ts.map +0 -1
  1301. package/lib/typescript/components/MessageMenu/MessageMenu.d.ts +0 -32
  1302. package/lib/typescript/components/MessageMenu/MessageMenu.d.ts.map +0 -1
  1303. package/lib/typescript/components/MessageMenu/MessageReactionPicker.d.ts +0 -30
  1304. package/lib/typescript/components/MessageMenu/MessageReactionPicker.d.ts.map +0 -1
  1305. package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts +0 -21
  1306. package/lib/typescript/components/MessageMenu/MessageUserReactions.d.ts.map +0 -1
  1307. package/lib/typescript/components/MessageMenu/MessageUserReactionsAvatar.d.ts +0 -11
  1308. package/lib/typescript/components/MessageMenu/MessageUserReactionsAvatar.d.ts.map +0 -1
  1309. package/lib/typescript/components/MessageMenu/MessageUserReactionsItem.d.ts +0 -16
  1310. package/lib/typescript/components/MessageMenu/MessageUserReactionsItem.d.ts.map +0 -1
  1311. package/lib/typescript/components/MessageMenu/ReactionButton.d.ts +0 -25
  1312. package/lib/typescript/components/MessageMenu/ReactionButton.d.ts.map +0 -1
  1313. package/lib/typescript/components/MessageMenu/hooks/useFetchReactions.d.ts.map +0 -1
  1314. package/lib/typescript/components/UIComponents/BottomSheetModal.d.ts +0 -21
  1315. package/lib/typescript/components/UIComponents/BottomSheetModal.d.ts.map +0 -1
  1316. package/lib/typescript/components/UIComponents/ImageBackground.d.ts.map +0 -1
  1317. package/lib/typescript/components/UIComponents/Spinner.d.ts.map +0 -1
  1318. package/lib/typescript/components/UIComponents/index.d.ts +0 -4
  1319. package/lib/typescript/components/UIComponents/index.d.ts.map +0 -1
  1320. package/lib/typescript/contexts/chatConfigContext/ChatConfigContext.d.ts +0 -16
  1321. package/lib/typescript/contexts/chatConfigContext/ChatConfigContext.d.ts.map +0 -1
  1322. package/lib/typescript/store/SqliteClient.d.ts.map +0 -1
  1323. package/src/components/Message/MessageSimple/ReactionList/ReactionListBottom.tsx +0 -295
  1324. package/src/components/Message/MessageSimple/ReactionList/ReactionListTop.tsx +0 -271
  1325. package/src/components/Message/MessageSimple/__tests__/MessageSimple.test.js +0 -208
  1326. package/src/components/Message/MessageSimple/__tests__/ReactionListBottom.test.js +0 -166
  1327. package/src/components/Message/MessageSimple/__tests__/ReactionListTop.test.js +0 -92
  1328. package/src/components/Message/hooks/useMessageData.ts +0 -59
  1329. package/src/components/MessageMenu/MessageActionList.tsx +0 -49
  1330. package/src/components/MessageMenu/MessageActionListItem.tsx +0 -86
  1331. package/src/components/MessageMenu/MessageMenu.tsx +0 -123
  1332. package/src/components/MessageMenu/MessageReactionPicker.tsx +0 -122
  1333. package/src/components/MessageMenu/MessageUserReactions.tsx +0 -209
  1334. package/src/components/MessageMenu/MessageUserReactionsItem.tsx +0 -130
  1335. package/src/components/MessageMenu/ReactionButton.tsx +0 -72
  1336. package/src/components/MessageMenu/__tests__/MessageActionList.test.tsx +0 -48
  1337. package/src/components/MessageMenu/__tests__/MessageActionListItem.test.tsx +0 -48
  1338. package/src/components/MessageMenu/__tests__/MessageReactionPicker.test.tsx +0 -101
  1339. package/src/components/MessageMenu/__tests__/MessageUserReactions.test.tsx +0 -186
  1340. package/src/components/MessageMenu/__tests__/MessageUserReactionsAvatar.test.tsx +0 -35
  1341. package/src/components/MessageMenu/__tests__/MessageUserReactionsItem.test.tsx +0 -81
  1342. package/src/components/MessageMenu/__tests__/ReactionButton.test.tsx +0 -77
  1343. package/src/components/UIComponents/BottomSheetModal.tsx +0 -170
  1344. package/src/components/UIComponents/index.ts +0 -3
  1345. package/src/contexts/chatConfigContext/ChatConfigContext.tsx +0 -33
  1346. /package/lib/typescript/components/{UIComponents/ImageBackground.d.ts → ImageBackground.d.ts} +0 -0
  1347. /package/lib/typescript/components/{MessageMenu → MessageOverlay}/hooks/useFetchReactions.d.ts +0 -0
  1348. /package/lib/typescript/components/{UIComponents → Spinner}/Spinner.d.ts +0 -0
  1349. /package/src/components/{UIComponents/ImageBackground.tsx → ImageBackground.tsx} +0 -0
  1350. /package/src/components/{UIComponents → Spinner}/Spinner.tsx +0 -0
@@ -0,0 +1,351 @@
1
+ import React, { Dispatch, SetStateAction, useCallback, useMemo } from 'react';
2
+ import { StyleSheet, Text, TextInput, TouchableOpacity, View } from 'react-native';
3
+ import { Gesture, GestureDetector } from 'react-native-gesture-handler';
4
+ import Animated, {
5
+ interpolate,
6
+ SharedValue,
7
+ useAnimatedReaction,
8
+ useAnimatedStyle,
9
+ useDerivedValue,
10
+ useSharedValue,
11
+ withDelay,
12
+ withSpring,
13
+ } from 'react-native-reanimated';
14
+
15
+ import { PollOptionData } from 'stream-chat';
16
+
17
+ import { useCreatePollContentContext, useTheme, useTranslationContext } from '../../../contexts';
18
+ import { DragHandle } from '../../../icons';
19
+
20
+ export type CurrentOptionPositionsCache = {
21
+ inverseIndexCache: {
22
+ [key: number]: number;
23
+ };
24
+ positionCache: {
25
+ [key: number]: {
26
+ updatedIndex: number;
27
+ updatedTop: number;
28
+ };
29
+ };
30
+ };
31
+
32
+ const OPTION_HEIGHT = 71;
33
+
34
+ export const CreatePollOption = ({
35
+ boundaries,
36
+ currentOptionPositions,
37
+ draggedItemId,
38
+ handleChangeText,
39
+ hasDuplicate,
40
+ index,
41
+ isDragging,
42
+ option,
43
+ }: {
44
+ boundaries: { maxBound: number; minBound: number };
45
+ currentOptionPositions: SharedValue<CurrentOptionPositionsCache>;
46
+ draggedItemId: SharedValue<number | null>;
47
+ handleChangeText: (newText: string, index: number) => void;
48
+ hasDuplicate: boolean;
49
+ index: number;
50
+ isDragging: SharedValue<1 | 0>;
51
+ option: PollOptionData;
52
+ }) => {
53
+ const { t } = useTranslationContext();
54
+ const { createPollOptionHeight = OPTION_HEIGHT } = useCreatePollContentContext();
55
+ const top = useSharedValue(index * createPollOptionHeight);
56
+ const isDraggingDerived = useDerivedValue(() => isDragging.value);
57
+
58
+ const draggedItemIdDerived = useDerivedValue(() => draggedItemId.value);
59
+
60
+ const isCurrentDraggingItem = useDerivedValue(
61
+ () => isDraggingDerived.value && draggedItemIdDerived.value === index,
62
+ );
63
+
64
+ const animatedStyles = useAnimatedStyle(() => ({
65
+ top: top.value,
66
+ transform: [
67
+ {
68
+ scale: isCurrentDraggingItem.value
69
+ ? interpolate(isDraggingDerived.value, [0, 1], [1, 1.025])
70
+ : interpolate(isDraggingDerived.value, [0, 1], [1, 0.98]),
71
+ },
72
+ ],
73
+ }));
74
+ const currentOptionPositionsDerived = useDerivedValue<CurrentOptionPositionsCache>(
75
+ () => currentOptionPositions.value,
76
+ );
77
+
78
+ // used for swapping with currentIndex
79
+ const newIndex = useSharedValue<number | null>(null);
80
+
81
+ // used for swapping with newIndex
82
+ const currentIndex = useSharedValue<number | null>(null);
83
+
84
+ useAnimatedReaction(
85
+ () => currentOptionPositionsDerived.value.positionCache[index].updatedIndex,
86
+ (currentValue, previousValue) => {
87
+ if (currentValue !== previousValue) {
88
+ top.value = withSpring(
89
+ currentOptionPositionsDerived.value.positionCache[index].updatedIndex *
90
+ createPollOptionHeight,
91
+ );
92
+ }
93
+ },
94
+ );
95
+
96
+ const gesture = Gesture.Pan()
97
+ .onStart(() => {
98
+ // start dragging
99
+ isDragging.value = withSpring(1);
100
+
101
+ // keep track of dragged item
102
+ draggedItemId.value = index;
103
+
104
+ // store dragged item id for future swap
105
+ currentIndex.value = currentOptionPositionsDerived.value.positionCache[index].updatedIndex;
106
+ })
107
+ .onUpdate((e) => {
108
+ const { inverseIndexCache, positionCache } = currentOptionPositionsDerived.value;
109
+ if (draggedItemIdDerived.value === null || currentIndex.value === null) {
110
+ return;
111
+ }
112
+ const newTop = positionCache[draggedItemIdDerived.value].updatedTop + e.translationY;
113
+ // we add a small leeway to account for sharp animations which tend to bug out otherwise
114
+ if (newTop < boundaries.minBound - 10 || newTop > boundaries.maxBound + 10) {
115
+ // out of bounds, exit out of the animation early
116
+ return;
117
+ }
118
+ top.value = newTop;
119
+
120
+ // calculate the new index where drag is headed to
121
+ newIndex.value = Math.floor((newTop + createPollOptionHeight / 2) / createPollOptionHeight);
122
+
123
+ // swap the items present at newIndex and currentIndex
124
+ if (newIndex.value !== currentIndex.value) {
125
+ // find id of the item that currently resides at newIndex
126
+ const newIndexItemKey = inverseIndexCache[newIndex.value];
127
+
128
+ // find id of the item that currently resides at currentIndex
129
+ const currentDragIndexItemKey = inverseIndexCache[currentIndex.value];
130
+
131
+ if (newIndexItemKey !== undefined && currentDragIndexItemKey !== undefined) {
132
+ // if we indeed have a candidate for a new index, we update our cache so that
133
+ // it can be reflected through animations
134
+ currentOptionPositions.value = {
135
+ inverseIndexCache: {
136
+ ...inverseIndexCache,
137
+ [newIndex.value]: currentDragIndexItemKey,
138
+ [currentIndex.value]: newIndexItemKey,
139
+ },
140
+ positionCache: {
141
+ ...positionCache,
142
+ [currentDragIndexItemKey]: {
143
+ ...positionCache[currentDragIndexItemKey],
144
+ updatedIndex: newIndex.value,
145
+ },
146
+ [newIndexItemKey]: {
147
+ ...positionCache[newIndexItemKey],
148
+ updatedIndex: currentIndex.value,
149
+ updatedTop: currentIndex.value * createPollOptionHeight,
150
+ },
151
+ },
152
+ };
153
+
154
+ // update new index as current index
155
+ currentIndex.value = newIndex.value;
156
+ }
157
+ }
158
+ })
159
+ .onEnd(() => {
160
+ const { inverseIndexCache, positionCache } = currentOptionPositionsDerived.value;
161
+ if (currentIndex.value === null || newIndex.value === null) {
162
+ return;
163
+ }
164
+
165
+ top.value = withSpring(newIndex.value * createPollOptionHeight);
166
+
167
+ // find original id of the item that currently resides at currentIndex
168
+ const currentDragIndexItemKey = inverseIndexCache[currentIndex.value];
169
+
170
+ if (currentDragIndexItemKey !== undefined) {
171
+ // update the values for item whose drag we just stopped
172
+ currentOptionPositions.value = {
173
+ ...currentOptionPositionsDerived.value,
174
+ positionCache: {
175
+ ...positionCache,
176
+ [currentDragIndexItemKey]: {
177
+ ...positionCache[currentDragIndexItemKey],
178
+ updatedTop: newIndex.value * createPollOptionHeight,
179
+ },
180
+ },
181
+ };
182
+ }
183
+ // stop dragging
184
+ isDragging.value = withDelay(200, withSpring(0));
185
+ });
186
+
187
+ const {
188
+ theme: {
189
+ colors: { accent_error, bg_user, black, text_low_emphasis },
190
+ poll: {
191
+ createContent: {
192
+ pollOptions: { optionStyle },
193
+ },
194
+ },
195
+ },
196
+ } = useTheme();
197
+
198
+ return (
199
+ <Animated.View
200
+ style={[
201
+ styles.optionWrapper,
202
+ optionStyle.wrapper,
203
+ {
204
+ backgroundColor: bg_user,
205
+ borderColor: hasDuplicate ? accent_error : bg_user,
206
+ position: 'absolute',
207
+ width: '100%',
208
+ },
209
+ animatedStyles,
210
+ ]}
211
+ >
212
+ {hasDuplicate ? (
213
+ <Text
214
+ style={[
215
+ styles.optionValidationError,
216
+ { color: accent_error },
217
+ optionStyle.validationErrorText,
218
+ ]}
219
+ >
220
+ {t<string>('This is already an option')}
221
+ </Text>
222
+ ) : null}
223
+ <TextInput
224
+ onChangeText={(newText) => handleChangeText(newText, index)}
225
+ placeholder={t<string>('Option')}
226
+ style={[styles.optionInput, { color: black }, optionStyle.input]}
227
+ value={option.text}
228
+ />
229
+ <GestureDetector gesture={gesture}>
230
+ <Animated.View>
231
+ <DragHandle pathFill={text_low_emphasis} />
232
+ </Animated.View>
233
+ </GestureDetector>
234
+ </Animated.View>
235
+ );
236
+ };
237
+
238
+ const MemoizedCreatePollOption = React.memo(CreatePollOption);
239
+
240
+ export const CreatePollOptions = (props: {
241
+ currentOptionPositions: SharedValue<CurrentOptionPositionsCache>;
242
+ duplicates: string[];
243
+ pollOptions: PollOptionData[];
244
+ setPollOptions: Dispatch<SetStateAction<PollOptionData[]>>;
245
+ }) => {
246
+ const { t } = useTranslationContext();
247
+ const { createPollOptionHeight = OPTION_HEIGHT } = useCreatePollContentContext();
248
+ const { currentOptionPositions, duplicates = [], pollOptions, setPollOptions } = props;
249
+ const updateOption = useCallback(
250
+ (newText: string, index: number) => {
251
+ setPollOptions((prevOptions) =>
252
+ prevOptions.map((option, idx) => (idx === index ? { ...option, text: newText } : option)),
253
+ );
254
+ },
255
+ [setPollOptions],
256
+ );
257
+
258
+ // used to know if drag is happening or not
259
+ const isDragging = useSharedValue<0 | 1>(0);
260
+ // this will hold id for item which user started dragging
261
+ const draggedItemId = useSharedValue<number | null>(null);
262
+
263
+ const boundaries = useMemo(
264
+ () => ({ maxBound: (pollOptions.length - 1) * createPollOptionHeight, minBound: 0 }),
265
+ [createPollOptionHeight, pollOptions.length],
266
+ );
267
+
268
+ const {
269
+ theme: {
270
+ colors: { bg_user, black },
271
+ poll: {
272
+ createContent: {
273
+ pollOptions: { addOption, container, title },
274
+ },
275
+ },
276
+ },
277
+ } = useTheme();
278
+
279
+ return (
280
+ <View style={[styles.container, container]}>
281
+ <Text style={[styles.text, { color: black }, title]}>{t<string>('Options')}</Text>
282
+ <View style={{ height: createPollOptionHeight * pollOptions.length }}>
283
+ {pollOptions.map((option, index) => (
284
+ <MemoizedCreatePollOption
285
+ boundaries={boundaries}
286
+ currentOptionPositions={currentOptionPositions}
287
+ draggedItemId={draggedItemId}
288
+ handleChangeText={updateOption}
289
+ hasDuplicate={duplicates.includes(option.text)}
290
+ index={index}
291
+ isDragging={isDragging}
292
+ key={index}
293
+ option={option}
294
+ />
295
+ ))}
296
+ </View>
297
+ <TouchableOpacity
298
+ onPress={() => {
299
+ const newIndex = pollOptions.length;
300
+ currentOptionPositions.value = {
301
+ inverseIndexCache: {
302
+ ...currentOptionPositions.value.inverseIndexCache,
303
+ [newIndex]: newIndex,
304
+ },
305
+ positionCache: {
306
+ ...currentOptionPositions.value.positionCache,
307
+ [newIndex]: {
308
+ updatedIndex: newIndex,
309
+ updatedTop: newIndex * createPollOptionHeight,
310
+ },
311
+ },
312
+ };
313
+ setPollOptions([...pollOptions, { text: '' }]);
314
+ }}
315
+ style={[styles.addOptionWrapper, { backgroundColor: bg_user }, addOption.wrapper]}
316
+ >
317
+ <Text style={[styles.text, { color: black }, addOption.text]}>
318
+ {t<string>('Add an option')}
319
+ </Text>
320
+ </TouchableOpacity>
321
+ </View>
322
+ );
323
+ };
324
+
325
+ const styles = StyleSheet.create({
326
+ addOptionWrapper: {
327
+ borderRadius: 12,
328
+ marginTop: 8,
329
+ paddingHorizontal: 16,
330
+ paddingVertical: 18,
331
+ },
332
+ container: { marginVertical: 16 },
333
+ optionInput: {
334
+ flex: 1,
335
+ fontSize: 16,
336
+ paddingRight: 4,
337
+ paddingVertical: 0, // android is adding extra padding so we remove it
338
+ },
339
+ optionValidationError: { fontSize: 12, left: 16, position: 'absolute', top: 4 },
340
+ optionWrapper: {
341
+ alignItems: 'center',
342
+ borderRadius: 12,
343
+ borderWidth: 1,
344
+ flexDirection: 'row',
345
+ justifyContent: 'space-between',
346
+ marginTop: 8,
347
+ paddingHorizontal: 16,
348
+ paddingVertical: 18,
349
+ },
350
+ text: { fontSize: 16 },
351
+ });
@@ -0,0 +1,134 @@
1
+ import React, { useMemo } from 'react';
2
+ import { FlatList, type FlatListProps, StyleSheet, Text, View } from 'react-native';
3
+
4
+ import { PollAnswer, VotingVisibility } from 'stream-chat';
5
+
6
+ import { AnswerListAddCommentButton } from './Button';
7
+
8
+ import {
9
+ PollContextProvider,
10
+ PollContextValue,
11
+ useTheme,
12
+ useTranslationContext,
13
+ } from '../../../contexts';
14
+ import { DefaultStreamChatGenerics } from '../../../types/types';
15
+ import { getDateString } from '../../../utils/i18n/getDateString';
16
+ import { Avatar } from '../../Avatar/Avatar';
17
+ import { usePollAnswersPagination } from '../hooks/usePollAnswersPagination';
18
+ import { usePollState } from '../hooks/usePollState';
19
+
20
+ export type PollAnswersListProps<
21
+ StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,
22
+ > = PollContextValue & {
23
+ additionalFlatListProps?: Partial<FlatListProps<PollAnswer<StreamChatGenerics>>>;
24
+ PollAnswersListContent?: React.ComponentType;
25
+ };
26
+
27
+ export const PollAnswerListItem = ({ answer }: { answer: PollAnswer }) => {
28
+ const { t, tDateTimeParser } = useTranslationContext();
29
+ const { votingVisibility } = usePollState();
30
+
31
+ const {
32
+ theme: {
33
+ colors: { bg_user, black },
34
+ poll: {
35
+ answersList: { item: itemStyle },
36
+ },
37
+ },
38
+ } = useTheme();
39
+
40
+ const dateString = useMemo(
41
+ () =>
42
+ getDateString({
43
+ date: answer.updated_at,
44
+ t,
45
+ tDateTimeParser,
46
+ timestampTranslationKey: 'timestamp/PollVote',
47
+ }),
48
+ [answer.updated_at, t, tDateTimeParser],
49
+ );
50
+
51
+ const isAnonymous = useMemo(
52
+ () => votingVisibility === VotingVisibility.anonymous,
53
+ [votingVisibility],
54
+ );
55
+
56
+ return (
57
+ <View style={[styles.listItemContainer, { backgroundColor: bg_user }, itemStyle.container]}>
58
+ <Text style={[styles.listItemAnswerText, { color: black }, itemStyle.answerText]}>
59
+ {answer.answer_text}
60
+ </Text>
61
+ <View style={[styles.listItemInfoContainer, itemStyle.infoContainer]}>
62
+ <View style={[styles.listItemUserInfoContainer, itemStyle.userInfoContainer]}>
63
+ {!isAnonymous && answer.user?.image ? (
64
+ <Avatar image={answer.user?.image as string} size={20} />
65
+ ) : null}
66
+ <Text style={{ color: black, fontSize: 14, marginLeft: 2 }}>
67
+ {isAnonymous ? t<string>('Anonymous') : answer.user?.name}
68
+ </Text>
69
+ </View>
70
+ <Text style={{ color: black }}>{dateString}</Text>
71
+ </View>
72
+ </View>
73
+ );
74
+ };
75
+
76
+ const PollAnswerListItemComponent = ({ item }: { item: PollAnswer }) => (
77
+ <PollAnswerListItem answer={item} />
78
+ );
79
+
80
+ export const PollAnswersListContent = ({
81
+ additionalFlatListProps,
82
+ }: Pick<PollAnswersListProps, 'additionalFlatListProps'>) => {
83
+ const { hasNextPage, loadMore, pollAnswers } = usePollAnswersPagination();
84
+ const {
85
+ theme: {
86
+ colors: { white },
87
+ poll: {
88
+ answersList: { container },
89
+ },
90
+ },
91
+ } = useTheme();
92
+
93
+ return (
94
+ <View style={[styles.container, { backgroundColor: white }, container]}>
95
+ <FlatList
96
+ data={pollAnswers}
97
+ keyExtractor={(item) => `poll_answer_${item.id}`}
98
+ onEndReached={() => hasNextPage && loadMore()}
99
+ renderItem={PollAnswerListItemComponent}
100
+ {...additionalFlatListProps}
101
+ />
102
+ <AnswerListAddCommentButton />
103
+ </View>
104
+ );
105
+ };
106
+
107
+ export const PollAnswersList = ({
108
+ additionalFlatListProps,
109
+ message,
110
+ poll,
111
+ PollAnswersListContent: PollAnswersListOverride,
112
+ }: PollAnswersListProps) => (
113
+ <PollContextProvider value={{ message, poll }}>
114
+ {PollAnswersListOverride ? (
115
+ <PollAnswersListOverride />
116
+ ) : (
117
+ <PollAnswersListContent additionalFlatListProps={additionalFlatListProps} />
118
+ )}
119
+ </PollContextProvider>
120
+ );
121
+
122
+ const styles = StyleSheet.create({
123
+ container: { flex: 1, margin: 16 },
124
+ listItemAnswerText: { fontSize: 16, fontWeight: '500' },
125
+ listItemContainer: {
126
+ borderRadius: 12,
127
+ marginBottom: 8,
128
+ paddingBottom: 20,
129
+ paddingHorizontal: 16,
130
+ paddingTop: 12,
131
+ },
132
+ listItemInfoContainer: { flexDirection: 'row', justifyContent: 'space-between', marginTop: 24 },
133
+ listItemUserInfoContainer: { alignItems: 'center', flexDirection: 'row' },
134
+ });
@@ -0,0 +1,117 @@
1
+ import React, { useState } from 'react';
2
+ import {
3
+ KeyboardAvoidingView,
4
+ Modal,
5
+ Platform,
6
+ StyleSheet,
7
+ Text,
8
+ TextInput,
9
+ TouchableOpacity,
10
+ View,
11
+ } from 'react-native';
12
+
13
+ import { useTheme, useTranslationContext } from '../../../contexts';
14
+
15
+ export type PollInputDialogProps = {
16
+ closeDialog: () => void;
17
+ onSubmit: (text: string) => void;
18
+ title: string;
19
+ visible: boolean;
20
+ initialValue?: string;
21
+ };
22
+
23
+ export const PollInputDialog = ({
24
+ closeDialog,
25
+ initialValue = '',
26
+ onSubmit,
27
+ title,
28
+ visible,
29
+ }: PollInputDialogProps) => {
30
+ const { t } = useTranslationContext();
31
+ const [dialogInput, setDialogInput] = useState(initialValue);
32
+
33
+ const {
34
+ theme: {
35
+ colors: { accent_dark_blue, black, white },
36
+ poll: {
37
+ inputDialog: {
38
+ button,
39
+ buttonContainer,
40
+ container,
41
+ input,
42
+ title: titleStyle,
43
+ transparentContainer,
44
+ },
45
+ },
46
+ },
47
+ } = useTheme();
48
+
49
+ return (
50
+ <Modal animationType='fade' onRequestClose={closeDialog} transparent={true} visible={visible}>
51
+ <KeyboardAvoidingView
52
+ behavior={Platform.OS === 'ios' ? 'padding' : 'height'}
53
+ style={[styles.transparentContainer, transparentContainer]}
54
+ >
55
+ <View style={[styles.container, { backgroundColor: white }, container]}>
56
+ <Text style={[styles.title, { color: black }, titleStyle]}>{title}</Text>
57
+ <TextInput
58
+ autoFocus={true}
59
+ onChangeText={setDialogInput}
60
+ placeholder={t<string>('Ask a question')}
61
+ style={[styles.input, { color: black }, input]}
62
+ value={dialogInput}
63
+ />
64
+ <View style={[styles.buttonContainer, buttonContainer]}>
65
+ <TouchableOpacity onPress={closeDialog}>
66
+ <Text style={[styles.button, { color: accent_dark_blue }, button]}>
67
+ {t<string>('Cancel')}
68
+ </Text>
69
+ </TouchableOpacity>
70
+ <TouchableOpacity
71
+ onPress={() => {
72
+ onSubmit(dialogInput);
73
+ closeDialog();
74
+ }}
75
+ style={{ marginLeft: 32 }}
76
+ >
77
+ <Text style={[styles.button, { color: accent_dark_blue }, button]}>
78
+ {t<string>('SEND')}
79
+ </Text>
80
+ </TouchableOpacity>
81
+ </View>
82
+ </View>
83
+ </KeyboardAvoidingView>
84
+ </Modal>
85
+ );
86
+ };
87
+
88
+ const styles = StyleSheet.create({
89
+ button: { fontSize: 16, fontWeight: '500' },
90
+ buttonContainer: { flexDirection: 'row', justifyContent: 'flex-end', marginTop: 52 },
91
+ container: {
92
+ backgroundColor: 'white',
93
+ borderRadius: 16,
94
+ paddingBottom: 20,
95
+ paddingHorizontal: 16,
96
+ paddingTop: 32,
97
+ width: '80%',
98
+ },
99
+ input: {
100
+ alignItems: 'center',
101
+ borderColor: 'gray',
102
+ borderRadius: 18,
103
+ borderWidth: 1,
104
+ fontSize: 16,
105
+ height: 36,
106
+ marginTop: 16,
107
+ padding: 0,
108
+ paddingHorizontal: 16,
109
+ },
110
+ title: { fontSize: 17, fontWeight: '500', lineHeight: 20 },
111
+ transparentContainer: {
112
+ alignItems: 'center',
113
+ backgroundColor: 'rgba(0, 0, 0, 0.4)',
114
+ flex: 1,
115
+ justifyContent: 'center',
116
+ },
117
+ });
@@ -0,0 +1,42 @@
1
+ import React from 'react';
2
+ import { StyleSheet, Text, TouchableOpacity, View } from 'react-native';
3
+
4
+ import { useTheme } from '../../../contexts';
5
+ import { Back } from '../../../icons';
6
+
7
+ export type PollModalHeaderProps = {
8
+ onPress: () => void;
9
+ title: string;
10
+ };
11
+
12
+ export const PollModalHeader = ({ onPress, title }: PollModalHeaderProps) => {
13
+ const {
14
+ theme: {
15
+ colors: { black, text_high_emphasis, white },
16
+ poll: {
17
+ modalHeader: { container, title: titleStyle },
18
+ },
19
+ },
20
+ } = useTheme();
21
+
22
+ return (
23
+ <View style={[styles.container, { backgroundColor: white }, container]}>
24
+ <TouchableOpacity onPress={onPress}>
25
+ <Back height={24} pathFill={text_high_emphasis} viewBox='0 0 24 24' width={24} />
26
+ </TouchableOpacity>
27
+ <Text numberOfLines={1} style={[styles.title, { color: black }, titleStyle]}>
28
+ {title}
29
+ </Text>
30
+ </View>
31
+ );
32
+ };
33
+
34
+ const styles = StyleSheet.create({
35
+ container: {
36
+ alignItems: 'center',
37
+ flexDirection: 'row',
38
+ paddingHorizontal: 16,
39
+ paddingVertical: 18,
40
+ },
41
+ title: { fontSize: 16, fontWeight: '500', marginLeft: 32 },
42
+ });