stream-chat-react-native-core 5.0.0-offline-support.9 → 5.0.0-offline-support.12

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 (302) hide show
  1. package/lib/commonjs/components/Attachment/Gallery.js +17 -17
  2. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  3. package/lib/commonjs/components/Attachment/{GallaryImage.js → GalleryImage.js} +3 -3
  4. package/lib/{module/components/Attachment/GallaryImage.js.map → commonjs/components/Attachment/GalleryImage.js.map} +1 -1
  5. package/lib/commonjs/components/Attachment/Giphy.js +1 -1
  6. package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
  7. package/lib/commonjs/components/Attachment/VideoThumbnail.js +4 -5
  8. package/lib/commonjs/components/Attachment/VideoThumbnail.js.map +1 -1
  9. package/lib/commonjs/components/Avatar/Avatar.js +1 -1
  10. package/lib/commonjs/components/Avatar/Avatar.js.map +1 -1
  11. package/lib/commonjs/components/Avatar/GroupAvatar.js +1 -1
  12. package/lib/commonjs/components/Avatar/GroupAvatar.js.map +1 -1
  13. package/lib/commonjs/components/Channel/Channel.js +18 -13
  14. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  15. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -0
  16. package/lib/commonjs/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  17. package/lib/commonjs/components/ChannelList/ChannelList.js +21 -20
  18. package/lib/commonjs/components/ChannelList/ChannelList.js.map +1 -1
  19. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js +8 -4
  20. package/lib/commonjs/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  21. package/lib/commonjs/components/Chat/Chat.js +31 -6
  22. package/lib/commonjs/components/Chat/Chat.js.map +1 -1
  23. package/lib/{module/components/ChannelList/hooks/listeners → commonjs/components/Chat/hooks}/handleEventToSyncDB.js +9 -9
  24. package/lib/commonjs/components/Chat/hooks/handleEventToSyncDB.js.map +1 -0
  25. package/lib/commonjs/components/{ChannelList/hooks/listeners → Chat/hooks}/useConnectionRecovered.js +43 -27
  26. package/lib/commonjs/components/Chat/hooks/useConnectionRecovered.js.map +1 -0
  27. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js +4 -2
  28. package/lib/commonjs/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  29. package/lib/commonjs/components/{ChannelList/hooks/listeners → Chat/hooks}/useSyncDatabase.js +2 -7
  30. package/lib/commonjs/components/Chat/hooks/useSyncDatabase.js.map +1 -0
  31. package/lib/commonjs/components/ImageGallery/ImageGallery.js +37 -30
  32. package/lib/commonjs/components/ImageGallery/ImageGallery.js.map +1 -1
  33. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js +5 -3
  34. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  35. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js +10 -6
  36. package/lib/commonjs/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
  37. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js +17 -14
  38. package/lib/commonjs/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  39. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js +1 -0
  40. package/lib/commonjs/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  41. package/lib/commonjs/components/ImageGallery/components/ImageGalleryOverlay.js +2 -1
  42. package/lib/commonjs/components/ImageGallery/components/ImageGalleryOverlay.js.map +1 -1
  43. package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js +36 -18
  44. package/lib/commonjs/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
  45. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js +3 -1
  46. package/lib/commonjs/components/ImageGallery/components/ImageGrid.js.map +1 -1
  47. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js +5 -4
  48. package/lib/commonjs/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  49. package/lib/commonjs/components/Message/Message.js +8 -6
  50. package/lib/commonjs/components/Message/Message.js.map +1 -1
  51. package/lib/commonjs/components/MessageInput/AudioAttachmentUploadPreview.js +538 -0
  52. package/lib/commonjs/components/MessageInput/AudioAttachmentUploadPreview.js.map +1 -0
  53. package/lib/commonjs/components/MessageInput/FileUploadPreview.js +143 -32
  54. package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
  55. package/lib/commonjs/components/{ImageGallery/components → ProgressControl}/ProgressControl.js +37 -24
  56. package/lib/commonjs/components/ProgressControl/ProgressControl.js.map +1 -0
  57. package/lib/commonjs/components/index.js +52 -13
  58. package/lib/commonjs/components/index.js.map +1 -1
  59. package/lib/commonjs/contexts/chatContext/ChatContext.js +2 -2
  60. package/lib/commonjs/contexts/chatContext/ChatContext.js.map +1 -1
  61. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +5 -2
  62. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  63. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +7 -2
  64. package/lib/commonjs/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  65. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +12 -21
  66. package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
  67. package/lib/commonjs/contexts/themeContext/utils/theme.js +9 -0
  68. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  69. package/lib/commonjs/hooks/useLoadingImage.js +1 -1
  70. package/lib/commonjs/hooks/useLoadingImage.js.map +1 -1
  71. package/lib/commonjs/icons/Pause.js +2 -2
  72. package/lib/commonjs/icons/Pause.js.map +1 -1
  73. package/lib/commonjs/index.js +0 -2
  74. package/lib/commonjs/index.js.map +1 -1
  75. package/lib/commonjs/mock-builders/DB/mock.js.map +1 -1
  76. package/lib/commonjs/native.js +13 -5
  77. package/lib/commonjs/native.js.map +1 -1
  78. package/lib/commonjs/store/QuickSqliteClient.js +8 -0
  79. package/lib/commonjs/store/QuickSqliteClient.js.map +1 -1
  80. package/lib/commonjs/store/apis/getLastSyncedAt.js.map +1 -1
  81. package/lib/commonjs/store/mappers/mapChannelDataToStorable.js.map +1 -1
  82. package/lib/commonjs/store/sqlite-utils/appendWhereCluase.js.map +1 -1
  83. package/lib/commonjs/store/sqlite-utils/createDeleteQuery.js.map +1 -1
  84. package/lib/commonjs/store/sqlite-utils/createSelectQuery.js +1 -1
  85. package/lib/commonjs/store/sqlite-utils/createSelectQuery.js.map +1 -1
  86. package/lib/commonjs/store/sqlite-utils/createUpdateQuery.js +1 -1
  87. package/lib/commonjs/store/sqlite-utils/createUpdateQuery.js.map +1 -1
  88. package/lib/commonjs/store/sqlite-utils/createUpsertQuery.js.map +1 -1
  89. package/lib/commonjs/store/sqlite-utils/printRow.js +2 -12
  90. package/lib/commonjs/store/sqlite-utils/printRow.js.map +1 -1
  91. package/lib/commonjs/version.json +1 -1
  92. package/lib/module/components/Attachment/Gallery.js +17 -17
  93. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  94. package/lib/module/components/Attachment/{GallaryImage.js → GalleryImage.js} +3 -3
  95. package/lib/{commonjs/components/Attachment/GallaryImage.js.map → module/components/Attachment/GalleryImage.js.map} +1 -1
  96. package/lib/module/components/Attachment/Giphy.js +1 -1
  97. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  98. package/lib/module/components/Attachment/VideoThumbnail.js +4 -5
  99. package/lib/module/components/Attachment/VideoThumbnail.js.map +1 -1
  100. package/lib/module/components/Avatar/Avatar.js +1 -1
  101. package/lib/module/components/Avatar/Avatar.js.map +1 -1
  102. package/lib/module/components/Avatar/GroupAvatar.js +1 -1
  103. package/lib/module/components/Avatar/GroupAvatar.js.map +1 -1
  104. package/lib/module/components/Channel/Channel.js +18 -13
  105. package/lib/module/components/Channel/Channel.js.map +1 -1
  106. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js +2 -0
  107. package/lib/module/components/Channel/hooks/useCreateInputMessageInputContext.js.map +1 -1
  108. package/lib/module/components/ChannelList/ChannelList.js +21 -20
  109. package/lib/module/components/ChannelList/ChannelList.js.map +1 -1
  110. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js +8 -4
  111. package/lib/module/components/ChannelList/hooks/usePaginatedChannels.js.map +1 -1
  112. package/lib/module/components/Chat/Chat.js +31 -6
  113. package/lib/module/components/Chat/Chat.js.map +1 -1
  114. package/lib/{commonjs/components/ChannelList/hooks/listeners → module/components/Chat/hooks}/handleEventToSyncDB.js +9 -9
  115. package/lib/module/components/Chat/hooks/handleEventToSyncDB.js.map +1 -0
  116. package/lib/module/components/{ChannelList/hooks/listeners → Chat/hooks}/useConnectionRecovered.js +43 -27
  117. package/lib/module/components/Chat/hooks/useConnectionRecovered.js.map +1 -0
  118. package/lib/module/components/Chat/hooks/useCreateChatContext.js +4 -2
  119. package/lib/module/components/Chat/hooks/useCreateChatContext.js.map +1 -1
  120. package/lib/module/components/{ChannelList/hooks/listeners → Chat/hooks}/useSyncDatabase.js +2 -7
  121. package/lib/module/components/Chat/hooks/useSyncDatabase.js.map +1 -0
  122. package/lib/module/components/ImageGallery/ImageGallery.js +37 -30
  123. package/lib/module/components/ImageGallery/ImageGallery.js.map +1 -1
  124. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js +5 -3
  125. package/lib/module/components/ImageGallery/components/AnimatedGalleryImage.js.map +1 -1
  126. package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js +10 -6
  127. package/lib/module/components/ImageGallery/components/AnimatedGalleryVideo.js.map +1 -1
  128. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js +17 -14
  129. package/lib/module/components/ImageGallery/components/ImageGalleryFooter.js.map +1 -1
  130. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js +1 -0
  131. package/lib/module/components/ImageGallery/components/ImageGalleryHeader.js.map +1 -1
  132. package/lib/module/components/ImageGallery/components/ImageGalleryOverlay.js +2 -1
  133. package/lib/module/components/ImageGallery/components/ImageGalleryOverlay.js.map +1 -1
  134. package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js +36 -18
  135. package/lib/module/components/ImageGallery/components/ImageGalleryVideoControl.js.map +1 -1
  136. package/lib/module/components/ImageGallery/components/ImageGrid.js +3 -1
  137. package/lib/module/components/ImageGallery/components/ImageGrid.js.map +1 -1
  138. package/lib/module/components/ImageGallery/components/ImageGridHandle.js +5 -4
  139. package/lib/module/components/ImageGallery/components/ImageGridHandle.js.map +1 -1
  140. package/lib/module/components/Message/Message.js +8 -6
  141. package/lib/module/components/Message/Message.js.map +1 -1
  142. package/lib/module/components/MessageInput/AudioAttachmentUploadPreview.js +538 -0
  143. package/lib/module/components/MessageInput/AudioAttachmentUploadPreview.js.map +1 -0
  144. package/lib/module/components/MessageInput/FileUploadPreview.js +143 -32
  145. package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
  146. package/lib/module/components/{ImageGallery/components → ProgressControl}/ProgressControl.js +37 -24
  147. package/lib/module/components/ProgressControl/ProgressControl.js.map +1 -0
  148. package/lib/module/components/index.js +52 -13
  149. package/lib/module/components/index.js.map +1 -1
  150. package/lib/module/contexts/chatContext/ChatContext.js +2 -2
  151. package/lib/module/contexts/chatContext/ChatContext.js.map +1 -1
  152. package/lib/module/contexts/messageInputContext/MessageInputContext.js +5 -2
  153. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  154. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js +7 -2
  155. package/lib/module/contexts/messageInputContext/hooks/useCreateMessageInputContext.js.map +1 -1
  156. package/lib/module/contexts/overlayContext/OverlayProvider.js +12 -21
  157. package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
  158. package/lib/module/contexts/themeContext/utils/theme.js +9 -0
  159. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  160. package/lib/module/hooks/useLoadingImage.js +1 -1
  161. package/lib/module/hooks/useLoadingImage.js.map +1 -1
  162. package/lib/module/icons/Pause.js +2 -2
  163. package/lib/module/icons/Pause.js.map +1 -1
  164. package/lib/module/index.js +0 -2
  165. package/lib/module/index.js.map +1 -1
  166. package/lib/module/mock-builders/DB/mock.js.map +1 -1
  167. package/lib/module/native.js +13 -5
  168. package/lib/module/native.js.map +1 -1
  169. package/lib/module/store/QuickSqliteClient.js +8 -0
  170. package/lib/module/store/QuickSqliteClient.js.map +1 -1
  171. package/lib/module/store/apis/getLastSyncedAt.js.map +1 -1
  172. package/lib/module/store/mappers/mapChannelDataToStorable.js.map +1 -1
  173. package/lib/module/store/sqlite-utils/appendWhereCluase.js.map +1 -1
  174. package/lib/module/store/sqlite-utils/createDeleteQuery.js.map +1 -1
  175. package/lib/module/store/sqlite-utils/createSelectQuery.js +1 -1
  176. package/lib/module/store/sqlite-utils/createSelectQuery.js.map +1 -1
  177. package/lib/module/store/sqlite-utils/createUpdateQuery.js +1 -1
  178. package/lib/module/store/sqlite-utils/createUpdateQuery.js.map +1 -1
  179. package/lib/module/store/sqlite-utils/createUpsertQuery.js.map +1 -1
  180. package/lib/module/store/sqlite-utils/printRow.js +2 -12
  181. package/lib/module/store/sqlite-utils/printRow.js.map +1 -1
  182. package/lib/module/version.json +1 -1
  183. package/lib/typescript/components/Attachment/{GallaryImage.d.ts → GalleryImage.d.ts} +0 -0
  184. package/lib/typescript/components/Channel/hooks/useCreateInputMessageInputContext.d.ts +1 -1
  185. package/lib/typescript/components/{ChannelList/hooks/listeners → Chat/hooks}/handleEventToSyncDB.d.ts +1 -1
  186. package/lib/typescript/components/Chat/hooks/useConnectionRecovered.d.ts +10 -0
  187. package/lib/typescript/components/Chat/hooks/useCreateChatContext.d.ts +1 -1
  188. package/lib/typescript/components/Chat/hooks/useSyncDatabase.d.ts +8 -0
  189. package/lib/typescript/components/ImageGallery/__tests__/AnimatedVideoGallery.test.d.ts +1 -0
  190. package/lib/typescript/components/ImageGallery/__tests__/ImageGallery.test.d.ts +1 -0
  191. package/lib/typescript/components/ImageGallery/__tests__/ImageGalleryFooter.test.d.ts +1 -0
  192. package/lib/typescript/components/ImageGallery/__tests__/ImageGalleryGrid.test.d.ts +1 -0
  193. package/lib/typescript/components/ImageGallery/__tests__/ImageGalleryGridHandle.test.d.ts +1 -0
  194. package/lib/typescript/components/ImageGallery/__tests__/ImageGalleryHeader.test.d.ts +1 -0
  195. package/lib/typescript/components/ImageGallery/__tests__/ImageGalleryOverlay.test.d.ts +1 -0
  196. package/lib/typescript/components/ImageGallery/__tests__/ImageGalleryVideoControl.test.d.ts +1 -0
  197. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryImage.d.ts +1 -0
  198. package/lib/typescript/components/ImageGallery/components/AnimatedGalleryVideo.d.ts +2 -3
  199. package/lib/typescript/components/ImageGallery/components/ImageGalleryFooter.d.ts +2 -1
  200. package/lib/typescript/components/ImageGallery/components/ImageGrid.d.ts +2 -3
  201. package/lib/typescript/components/Message/hooks/useMessageActionHandlers.d.ts +1 -1
  202. package/lib/typescript/components/Message/hooks/useMessageActions.d.ts +1 -1
  203. package/lib/typescript/components/MessageInput/AudioAttachmentUploadPreview.d.ts +26 -0
  204. package/lib/typescript/components/MessageInput/FileUploadPreview.d.ts +1 -1
  205. package/lib/typescript/components/MessageInput/__tests__/AudioAttachmentUploadPreviewExpo.test.d.ts +1 -0
  206. package/lib/typescript/components/MessageInput/__tests__/AudioAttachmentUploadPreviewNative.test.d.ts +1 -0
  207. package/lib/typescript/components/ProgressControl/ProgressControl.d.ts +11 -0
  208. package/lib/typescript/components/index.d.ts +4 -1
  209. package/lib/typescript/contexts/chatContext/ChatContext.d.ts +2 -1
  210. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +1 -1
  211. package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +7 -1
  212. package/lib/typescript/contexts/messageInputContext/hooks/useCreateMessageInputContext.d.ts +1 -1
  213. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +9 -0
  214. package/lib/typescript/index.d.ts +0 -1
  215. package/lib/typescript/native.d.ts +59 -2
  216. package/lib/typescript/store/apis/getLastSyncedAt.d.ts +2 -2
  217. package/lib/typescript/store/sqlite-utils/appendWhereCluase.d.ts +2 -1
  218. package/lib/typescript/store/sqlite-utils/createDeleteQuery.d.ts +2 -2
  219. package/lib/typescript/store/sqlite-utils/createSelectQuery.d.ts +2 -2
  220. package/lib/typescript/store/sqlite-utils/createUpdateQuery.d.ts +2 -2
  221. package/lib/typescript/store/types.d.ts +1 -0
  222. package/package.json +1 -1
  223. package/src/__tests__/offline-feature.test.js +0 -2
  224. package/src/components/Attachment/Gallery.tsx +1 -2
  225. package/src/components/Attachment/{GallaryImage.tsx → GalleryImage.tsx} +1 -1
  226. package/src/components/Attachment/Giphy.tsx +1 -1
  227. package/src/components/Attachment/VideoThumbnail.tsx +1 -2
  228. package/src/components/Attachment/__tests__/Gallery.test.js +6 -6
  229. package/src/components/Attachment/__tests__/Giphy.test.js +4 -4
  230. package/src/components/Avatar/Avatar.tsx +1 -1
  231. package/src/components/Avatar/GroupAvatar.tsx +1 -1
  232. package/src/components/Channel/Channel.tsx +3 -0
  233. package/src/components/Channel/hooks/useCreateInputMessageInputContext.ts +2 -0
  234. package/src/components/ChannelList/ChannelList.tsx +12 -15
  235. package/src/components/ChannelList/hooks/listeners/__tests__/useChannelUpdated.test.tsx +1 -0
  236. package/src/components/ChannelList/hooks/usePaginatedChannels.ts +6 -3
  237. package/src/components/Chat/Chat.tsx +17 -1
  238. package/src/components/{ChannelList/hooks/listeners → Chat/hooks}/handleEventToSyncDB.ts +9 -9
  239. package/src/components/Chat/hooks/useConnectionRecovered.ts +92 -0
  240. package/src/components/Chat/hooks/useCreateChatContext.ts +2 -0
  241. package/src/components/{ChannelList/hooks/listeners → Chat/hooks}/useSyncDatabase.ts +6 -6
  242. package/src/components/ImageGallery/ImageGallery.tsx +21 -11
  243. package/src/components/ImageGallery/__tests__/AnimatedVideoGallery.test.tsx +241 -0
  244. package/src/components/ImageGallery/__tests__/ImageGallery.test.tsx +192 -0
  245. package/src/components/ImageGallery/__tests__/ImageGalleryFooter.test.tsx +190 -0
  246. package/src/components/ImageGallery/__tests__/ImageGalleryGrid.test.tsx +98 -0
  247. package/src/components/ImageGallery/__tests__/ImageGalleryGridHandle.test.tsx +79 -0
  248. package/src/components/ImageGallery/__tests__/ImageGalleryHeader.test.tsx +172 -0
  249. package/src/components/ImageGallery/__tests__/ImageGalleryOverlay.test.tsx +94 -0
  250. package/src/components/ImageGallery/__tests__/ImageGalleryVideoControl.test.tsx +84 -0
  251. package/src/components/ImageGallery/components/AnimatedGalleryImage.tsx +3 -0
  252. package/src/components/ImageGallery/components/AnimatedGalleryVideo.tsx +11 -3
  253. package/src/components/ImageGallery/components/ImageGalleryFooter.tsx +9 -2
  254. package/src/components/ImageGallery/components/ImageGalleryHeader.tsx +1 -1
  255. package/src/components/ImageGallery/components/ImageGalleryOverlay.tsx +6 -1
  256. package/src/components/ImageGallery/components/ImageGalleryVideoControl.tsx +22 -9
  257. package/src/components/ImageGallery/components/ImageGrid.tsx +19 -17
  258. package/src/components/ImageGallery/components/ImageGridHandle.tsx +4 -1
  259. package/src/components/Message/Message.tsx +2 -1
  260. package/src/components/Message/MessageSimple/__tests__/MessageContent.test.js +9 -3
  261. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageAvatar.test.js.snap +1 -1
  262. package/src/components/MessageInput/AudioAttachmentUploadPreview.tsx +362 -0
  263. package/src/components/MessageInput/FileUploadPreview.tsx +162 -57
  264. package/src/components/MessageInput/__tests__/AudioAttachmentUploadPreviewExpo.test.tsx +199 -0
  265. package/src/components/MessageInput/__tests__/AudioAttachmentUploadPreviewNative.test.tsx +215 -0
  266. package/src/components/MessageInput/__tests__/FileUploadPreview.test.js +64 -0
  267. package/src/components/{ImageGallery/components → ProgressControl}/ProgressControl.tsx +37 -19
  268. package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +4 -4
  269. package/src/components/index.ts +5 -1
  270. package/src/contexts/chatContext/ChatContext.tsx +2 -1
  271. package/src/contexts/messageInputContext/MessageInputContext.tsx +13 -0
  272. package/src/contexts/messageInputContext/hooks/useCreateMessageInputContext.ts +5 -1
  273. package/src/contexts/overlayContext/OverlayProvider.tsx +1 -2
  274. package/src/contexts/themeContext/utils/theme.ts +15 -0
  275. package/src/hooks/useLoadingImage.tsx +1 -1
  276. package/src/icons/Pause.tsx +2 -2
  277. package/src/index.ts +0 -2
  278. package/src/mock-builders/DB/mock.ts +1 -3
  279. package/src/native.ts +67 -7
  280. package/src/store/QuickSqliteClient.ts +20 -0
  281. package/src/store/apis/getLastSyncedAt.ts +5 -1
  282. package/src/store/mappers/mapChannelDataToStorable.ts +1 -1
  283. package/src/store/sqlite-utils/appendWhereCluase.ts +6 -6
  284. package/src/store/sqlite-utils/createDeleteQuery.ts +4 -4
  285. package/src/store/sqlite-utils/createSelectQuery.ts +4 -4
  286. package/src/store/sqlite-utils/createUpdateQuery.ts +5 -5
  287. package/src/store/sqlite-utils/createUpsertQuery.ts +2 -2
  288. package/src/store/sqlite-utils/printRow.ts +5 -14
  289. package/src/store/types.ts +1 -0
  290. package/src/version.json +1 -1
  291. package/lib/commonjs/components/ChannelList/hooks/listeners/handleEventToSyncDB.js.map +0 -1
  292. package/lib/commonjs/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +0 -1
  293. package/lib/commonjs/components/ChannelList/hooks/listeners/useSyncDatabase.js.map +0 -1
  294. package/lib/commonjs/components/ImageGallery/components/ProgressControl.js.map +0 -1
  295. package/lib/module/components/ChannelList/hooks/listeners/handleEventToSyncDB.js.map +0 -1
  296. package/lib/module/components/ChannelList/hooks/listeners/useConnectionRecovered.js.map +0 -1
  297. package/lib/module/components/ChannelList/hooks/listeners/useSyncDatabase.js.map +0 -1
  298. package/lib/module/components/ImageGallery/components/ProgressControl.js.map +0 -1
  299. package/lib/typescript/components/ChannelList/hooks/listeners/useConnectionRecovered.d.ts +0 -9
  300. package/lib/typescript/components/ChannelList/hooks/listeners/useSyncDatabase.d.ts +0 -6
  301. package/lib/typescript/components/ImageGallery/components/ProgressControl.d.ts +0 -5
  302. package/src/components/ChannelList/hooks/listeners/useConnectionRecovered.ts +0 -86
@@ -1 +1 @@
1
- {"version":3,"sources":["Avatar.tsx"],"names":["randomImageBaseUrl","randomSvgBaseUrl","streamCDN","styles","StyleSheet","create","container","alignItems","justifyContent","overflow","presenceIndicatorContainer","height","position","right","top","width","getInitials","fullName","split","slice","map","name","charAt","join","Avatar","props","containerStyle","imageProp","image","imageStyle","online","presenceIndicatorProp","presenceIndicator","presenceIndicatorContainerStyle","size","testID","theme","avatar","colors","accent_green","white","isLoadingImageError","setLoadingImageError","borderRadius","backgroundColor","uri","includes","url","displayName"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;;;;;;AAEA,IAAMA,kBAAkB,GAAG,kCAA3B;AACA,IAAMC,gBAAgB,GAAG,kCAAzB;AACA,IAAMC,SAAS,GAAG,mBAAlB;;AAEA,IAAMC,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,UAAU,EAAE,QADH;AAETC,IAAAA,cAAc,EAAE,QAFP;AAGTC,IAAAA,QAAQ,EAAE;AAHD,GADoB;AAM/BC,EAAAA,0BAA0B,EAAE;AAC1BC,IAAAA,MAAM,EAAE,EADkB;AAE1BC,IAAAA,QAAQ,EAAE,UAFgB;AAG1BC,IAAAA,KAAK,EAAE,CAHmB;AAI1BC,IAAAA,GAAG,EAAE,CAJqB;AAK1BC,IAAAA,KAAK,EAAE;AALmB;AANG,CAAlB,CAAf;;AAeA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,QAAD;AAAA,SAClBA,QAAQ,CACLC,KADH,CACS,GADT,EAEGC,KAFH,CAES,CAFT,EAEY,CAFZ,EAGGC,GAHH,CAGO,UAACC,IAAD;AAAA,WAAUA,IAAI,CAACC,MAAL,CAAY,CAAZ,CAAV;AAAA,GAHP,EAIGC,IAJH,CAIQ,GAJR,CADkB;AAAA,CAApB;;AAyBO,IAAMC,MAA6B,GAAG,SAAhCA,MAAgC,CAACC,KAAD,EAAW;AACtD,MACEC,cADF,GAUID,KAVJ,CACEC,cADF;AAAA,MAESC,SAFT,GAUIF,KAVJ,CAEEG,KAFF;AAAA,MAGEC,UAHF,GAUIJ,KAVJ,CAGEI,UAHF;AAAA,MAIER,IAJF,GAUII,KAVJ,CAIEJ,IAJF;AAAA,MAKES,MALF,GAUIL,KAVJ,CAKEK,MALF;AAAA,MAMqBC,qBANrB,GAUIN,KAVJ,CAMEO,iBANF;AAAA,MAOEC,+BAPF,GAUIR,KAVJ,CAOEQ,+BAPF;AAAA,MAQEC,IARF,GAUIT,KAVJ,CAQES,IARF;AAAA,MASEC,MATF,GAUIV,KAVJ,CASEU,MATF;;AAWA,kBAKI,6BALJ;AAAA,kCACEC,KADF;AAAA,8CAEIC,MAFJ;AAAA,MAEc/B,SAFd,yBAEcA,SAFd;AAAA,MAEyBsB,KAFzB,yBAEyBA,KAFzB;AAAA,MAEgCI,iBAFhC,yBAEgCA,iBAFhC;AAAA,MAEmDtB,0BAFnD,yBAEmDA,0BAFnD;AAAA,8CAGI4B,MAHJ;AAAA,MAGcC,YAHd,yBAGcA,YAHd;AAAA,MAG4BC,KAH5B,yBAG4BA,KAH5B;;AAOA,yBAAsD,wCAAtD;AAAA,MAAQC,mBAAR,oBAAQA,mBAAR;AAAA,MAA6BC,oBAA7B,oBAA6BA,oBAA7B;;AAEA,SACE,gCAAC,iBAAD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACE,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACLvC,MAAM,CAACG,SADF,EAEL;AACEqC,MAAAA,YAAY,EAAET,IAAI,GAAG,CADvB;AAEEvB,MAAAA,MAAM,EAAEuB,IAFV;AAGEnB,MAAAA,KAAK,EAAEmB;AAHT,KAFK,EAOL5B,SAPK,EAQLoB,cARK,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAYGe,mBAAmB,GAClB,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE;AACLG,MAAAA,eAAe,EAAE,SADZ;AAELD,MAAAA,YAAY,EAAET,IAAI,GAAG,CAFhB;AAGLvB,MAAAA,MAAM,EAAEuB,IAHH;AAILnB,MAAAA,KAAK,EAAEmB;AAJF,KADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IADkB,GAUlB,gCAAC,kBAAD;AACE,IAAA,kBAAkB,EAAEC,MAAM,IAAI,cADhC;AAEE,IAAA,OAAO,EAAE;AAAA,aAAMO,oBAAoB,CAAC,IAAD,CAA1B;AAAA,KAFX;AAGE,IAAA,MAAM,EAAE;AACNG,MAAAA,GAAG,EACD,CAAClB,SAAD,IACAA,SAAS,CAACmB,QAAV,CAAmB9C,kBAAnB,CADA,IAEA2B,SAAS,CAACmB,QAAV,CAAmB7C,gBAAnB,CAFA,GAGI0B,SAAS,QAAT,IAAAA,SAAS,CAAEmB,QAAX,CAAoB5C,SAApB,IACEyB,SADF,QAEK3B,kBAFL,IAGIqB,IAAI,cAAYL,WAAW,CAACK,IAAD,CAAvB,cAAsCa,IAAtC,GAA+C,EAHvD,CAHJ,GAQI,4CAAmB;AACjBvB,QAAAA,MAAM,EAAEuB,IADS;AAEjBa,QAAAA,GAAG,EAAEpB,SAFY;AAGjBZ,QAAAA,KAAK,EAAEmB;AAHU,OAAnB;AAVA,KAHV;AAmBE,IAAA,KAAK,EAAE,CACLN,KADK,EAELM,IAAI,GACA;AACEU,MAAAA,eAAe,EAAE,SADnB;AAEED,MAAAA,YAAY,EAAET,IAAI,GAAG,CAFvB;AAGEvB,MAAAA,MAAM,EAAEuB,IAHV;AAIEnB,MAAAA,KAAK,EAAEmB;AAJT,KADA,GAOA,EATC,EAULL,UAVK,CAnBT;AA+BE,IAAA,MAAM,EAAEM,MAAM,IAAI,cA/BpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAtBJ,CADF,EA0DGL,MAAM,IACL,gCAAC,iBAAD;AACE,IAAA,KAAK,EAAE,CACL3B,MAAM,CAACO,0BADF,EAELA,0BAFK,EAGLuB,+BAHK,CADT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAOE,gCAAC,0BAAD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACE,gCAAC,sBAAD;AACE,IAAA,IAAI,EAAEM,YADR;AAEE,IAAA,MAAM,EAAEC;AAFV,KAGMR,iBAHN,EAIMD,qBAJN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KADF,CAPF,CA3DJ,CADF;AA+ED,CApGM;;;AAsGPP,MAAM,CAACwB,WAAP,GAAqB,gBAArB","sourcesContent":["import React from 'react';\nimport { Image, ImageStyle, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\nimport Svg, { Circle, CircleProps } from 'react-native-svg';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useLoadingImage } from '../../hooks/useLoadingImage';\nimport { getResizedImageUrl } from '../../utils/getResizedImageUrl';\n\nconst randomImageBaseUrl = 'https://getstream.io/random_png/';\nconst randomSvgBaseUrl = 'https://getstream.io/random_svg/';\nconst streamCDN = 'stream-io-cdn.com';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n justifyContent: 'center',\n overflow: 'hidden',\n },\n presenceIndicatorContainer: {\n height: 12,\n position: 'absolute',\n right: 0,\n top: 0,\n width: 12,\n },\n});\n\nconst getInitials = (fullName: string) =>\n fullName\n .split(' ')\n .slice(0, 2)\n .map((name) => name.charAt(0))\n .join(' ');\n\nexport type AvatarProps = {\n /** size in pixels */\n size: number;\n containerStyle?: StyleProp<ViewStyle>;\n /** image url */\n image?: string;\n /** name of the picture, used for fallback */\n imageStyle?: StyleProp<ImageStyle>;\n name?: string;\n online?: boolean;\n presenceIndicator?: CircleProps;\n presenceIndicatorContainerStyle?: StyleProp<ViewStyle>;\n testID?: string;\n};\n\n/**\n * Avatar - A round avatar image with fallback to user's initials.\n */\nexport const Avatar: React.FC<AvatarProps> = (props) => {\n const {\n containerStyle,\n image: imageProp,\n imageStyle,\n name,\n online,\n presenceIndicator: presenceIndicatorProp,\n presenceIndicatorContainerStyle,\n size,\n testID,\n } = props;\n const {\n theme: {\n avatar: { container, image, presenceIndicator, presenceIndicatorContainer },\n colors: { accent_green, white },\n },\n } = useTheme();\n\n const { isLoadingImageError, setLoadingImageError } = useLoadingImage();\n\n return (\n <View>\n <View\n style={[\n styles.container,\n {\n borderRadius: size / 2,\n height: size,\n width: size,\n },\n container,\n containerStyle,\n ]}\n >\n {isLoadingImageError ? (\n <View\n style={{\n backgroundColor: '#ececec',\n borderRadius: size / 2,\n height: size,\n width: size,\n }}\n />\n ) : (\n <Image\n accessibilityLabel={testID || 'avatar-image'}\n onError={() => setLoadingImageError(true)}\n source={{\n uri:\n !imageProp ||\n imageProp.includes(randomImageBaseUrl) ||\n imageProp.includes(randomSvgBaseUrl)\n ? imageProp?.includes(streamCDN)\n ? imageProp\n : `${randomImageBaseUrl}${\n name ? `?name=${getInitials(name)}&size=${size}` : ''\n }`\n : getResizedImageUrl({\n height: size,\n url: imageProp,\n width: size,\n }),\n }}\n style={[\n image,\n size\n ? {\n backgroundColor: '#ececec',\n borderRadius: size / 2,\n height: size,\n width: size,\n }\n : {},\n imageStyle,\n ]}\n testID={testID || 'avatar-image'}\n />\n )}\n </View>\n {online && (\n <View\n style={[\n styles.presenceIndicatorContainer,\n presenceIndicatorContainer,\n presenceIndicatorContainerStyle,\n ]}\n >\n <Svg>\n <Circle\n fill={accent_green}\n stroke={white}\n {...presenceIndicator}\n {...presenceIndicatorProp}\n />\n </Svg>\n </View>\n )}\n </View>\n );\n};\n\nAvatar.displayName = 'Avatar{avatar}';\n"]}
1
+ {"version":3,"sources":["Avatar.tsx"],"names":["randomImageBaseUrl","randomSvgBaseUrl","streamCDN","styles","StyleSheet","create","container","alignItems","justifyContent","overflow","presenceIndicatorContainer","height","position","right","top","width","getInitials","fullName","split","slice","map","name","charAt","join","Avatar","props","containerStyle","imageProp","image","imageStyle","online","presenceIndicatorProp","presenceIndicator","presenceIndicatorContainerStyle","size","testID","theme","avatar","colors","accent_green","white","isLoadingImageError","setLoadingImageError","borderRadius","backgroundColor","uri","includes","url","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Image, ImageStyle, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\nimport Svg, { Circle, CircleProps } from 'react-native-svg';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useLoadingImage } from '../../hooks/useLoadingImage';\nimport { getResizedImageUrl } from '../../utils/getResizedImageUrl';\n\nconst randomImageBaseUrl = 'https://getstream.io/random_png/';\nconst randomSvgBaseUrl = 'https://getstream.io/random_svg/';\nconst streamCDN = 'stream-io-cdn.com';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n justifyContent: 'center',\n overflow: 'hidden',\n },\n presenceIndicatorContainer: {\n height: 12,\n position: 'absolute',\n right: 0,\n top: 0,\n width: 12,\n },\n});\n\nconst getInitials = (fullName: string) =>\n fullName\n .split(' ')\n .slice(0, 2)\n .map((name) => name.charAt(0))\n .join(' ');\n\nexport type AvatarProps = {\n /** size in pixels */\n size: number;\n containerStyle?: StyleProp<ViewStyle>;\n /** image url */\n image?: string;\n /** name of the picture, used for fallback */\n imageStyle?: StyleProp<ImageStyle>;\n name?: string;\n online?: boolean;\n presenceIndicator?: CircleProps;\n presenceIndicatorContainerStyle?: StyleProp<ViewStyle>;\n testID?: string;\n};\n\n/**\n * Avatar - A round avatar image with fallback to user's initials.\n */\nexport const Avatar: React.FC<AvatarProps> = (props) => {\n const {\n containerStyle,\n image: imageProp,\n imageStyle,\n name,\n online,\n presenceIndicator: presenceIndicatorProp,\n presenceIndicatorContainerStyle,\n size,\n testID,\n } = props;\n const {\n theme: {\n avatar: { container, image, presenceIndicator, presenceIndicatorContainer },\n colors: { accent_green, white },\n },\n } = useTheme();\n\n const { isLoadingImageError, setLoadingImageError } = useLoadingImage();\n\n return (\n <View>\n <View\n style={[\n styles.container,\n {\n borderRadius: size / 2,\n height: size,\n width: size,\n },\n container,\n containerStyle,\n ]}\n >\n {isLoadingImageError ? (\n <View\n style={{\n backgroundColor: '#ececec',\n borderRadius: size / 2,\n height: size,\n width: size,\n }}\n />\n ) : (\n <Image\n accessibilityLabel={testID || 'Avatar Image'}\n onError={() => setLoadingImageError(true)}\n source={{\n uri:\n !imageProp ||\n imageProp.includes(randomImageBaseUrl) ||\n imageProp.includes(randomSvgBaseUrl)\n ? imageProp?.includes(streamCDN)\n ? imageProp\n : `${randomImageBaseUrl}${\n name ? `?name=${getInitials(name)}&size=${size}` : ''\n }`\n : getResizedImageUrl({\n height: size,\n url: imageProp,\n width: size,\n }),\n }}\n style={[\n image,\n size\n ? {\n backgroundColor: '#ececec',\n borderRadius: size / 2,\n height: size,\n width: size,\n }\n : {},\n imageStyle,\n ]}\n testID={testID || 'avatar-image'}\n />\n )}\n </View>\n {online && (\n <View\n style={[\n styles.presenceIndicatorContainer,\n presenceIndicatorContainer,\n presenceIndicatorContainerStyle,\n ]}\n >\n <Svg>\n <Circle\n fill={accent_green}\n stroke={white}\n {...presenceIndicator}\n {...presenceIndicatorProp}\n />\n </Svg>\n </View>\n )}\n </View>\n );\n};\n\nAvatar.displayName = 'Avatar{avatar}';\n"]}
@@ -130,7 +130,7 @@ var GroupAvatar = function GroupAvatar(props) {
130
130
  url = _ref.url,
131
131
  width = _ref.width;
132
132
  return _react["default"].createElement(_reactNative.Image, {
133
- accessibilityLabel: testID || 'avatar-image',
133
+ accessibilityLabel: testID || 'Avatar Image',
134
134
  key: "avatar-" + url + "-" + rowIndex,
135
135
  onError: function onError() {
136
136
  return setLoadingImageError(true);
@@ -1 +1 @@
1
- {"version":3,"sources":["GroupAvatar.tsx"],"names":["randomImageBaseUrl","randomSvgBaseUrl","streamCDN","styles","StyleSheet","create","container","overflow","flex","getInitials","fullName","split","slice","map","name","charAt","join","GroupAvatar","props","containerStyle","images","names","size","testID","theme","groupAvatar","image","isLoadingImageError","setLoadingImageError","imagesOrNames","avatarImages","reduce","returnArray","currentImage","index","url","startsWith","length","height","width","borderRadius","backgroundColor","column","colIndex","flexDirection","rowIndex","uri","includes","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Image, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useLoadingImage } from '../../hooks/useLoadingImage';\nimport { getResizedImageUrl } from '../../utils/getResizedImageUrl';\n\nconst randomImageBaseUrl = 'https://getstream.io/random_png/';\nconst randomSvgBaseUrl = 'https://getstream.io/random_svg/';\nconst streamCDN = 'stream-io-cdn.com';\n\nconst styles = StyleSheet.create({\n container: {\n overflow: 'hidden',\n },\n flex: { flex: 1 },\n});\n\nconst getInitials = (fullName: string) =>\n fullName\n .split(' ')\n .slice(0, 2)\n .map((name) => name.charAt(0))\n .join(' ');\n\nexport type GroupAvatarProps = {\n /** total size in pixels */\n size: number;\n containerStyle?: StyleProp<ViewStyle>;\n /** image urls */\n images?: string[];\n /** name of the users, used for fallback */\n names?: string[];\n testID?: string;\n};\n\n/**\n * GroupAvatar - A round group of avatar images with fallbacks to users' initials\n */\nexport const GroupAvatar: React.FC<GroupAvatarProps> = (props) => {\n const { containerStyle, images, names, size, testID } = props;\n const {\n theme: {\n groupAvatar: { container, image },\n },\n } = useTheme();\n\n const { isLoadingImageError, setLoadingImageError } = useLoadingImage();\n /**\n * [\n * [\n * { height: number; name: string; url: string; width: number },\n * { height: number; name: string; url: string; width: number },\n * ],\n * [\n * { height: number; name: string; url: string; width: number },\n * { height: number; name: string; url: string; width: number },\n * ],\n * ]\n */\n const imagesOrNames = images || names || [];\n const avatarImages = imagesOrNames.slice(0, 4).reduce((returnArray, currentImage, index) => {\n const url = currentImage.startsWith('http')\n ? currentImage\n : `${randomImageBaseUrl}${\n names\n ? `?name=${getInitials(names[index])}&size=${\n imagesOrNames.length <= 2 ? size : size / 2\n }`\n : ''\n }`;\n if (imagesOrNames.length <= 2) {\n returnArray[0] = [\n ...(returnArray[0] || []),\n {\n height: imagesOrNames.length === 1 ? size : size / 2,\n name: names ? names[index] : '',\n url,\n width: size,\n },\n ];\n } else {\n if (index < 2) {\n returnArray[0] = [\n ...(returnArray[0] || []),\n {\n height: size / 2,\n name: names ? names[index] : '',\n url,\n width: size / 2,\n },\n ];\n } else {\n returnArray[1] = [\n ...(returnArray[1] || []),\n {\n height: size / 2,\n name: names ? names[index] : '',\n url,\n width: imagesOrNames.length === 3 ? size : size / 2,\n },\n ];\n }\n }\n return returnArray;\n }, [] as { height: number; name: string; url: string; width: number }[][]);\n\n return (\n <View\n style={[\n styles.container,\n { borderRadius: size / 2, height: size, width: size },\n container,\n containerStyle,\n ]}\n testID={testID || 'group-avatar'}\n >\n {isLoadingImageError ? (\n <View\n style={{\n backgroundColor: '#ececec',\n borderRadius: size / 2,\n height: size,\n width: size,\n }}\n />\n ) : (\n avatarImages.map((column, colIndex) => (\n <View\n key={`avatar-column-${colIndex}`}\n style={[\n styles.flex,\n {\n flexDirection: imagesOrNames.length === 2 ? 'column' : 'row',\n },\n ]}\n >\n {column.map(({ height, name, url, width }, rowIndex) => (\n <Image\n accessibilityLabel={testID || 'avatar-image'}\n key={`avatar-${url}-${rowIndex}`}\n onError={() => setLoadingImageError(true)}\n source={{\n uri: url.includes(randomSvgBaseUrl)\n ? url.includes(streamCDN)\n ? url\n : `${randomImageBaseUrl}${\n name ? `?name=${getInitials(name)}&size=${height}` : ''\n }`\n : getResizedImageUrl({\n height,\n url,\n width,\n }),\n }}\n style={[\n image,\n size\n ? {\n backgroundColor: '#ececec',\n height,\n width,\n }\n : {},\n ]}\n testID={`group-avatar-image-${colIndex}-${rowIndex}`}\n />\n ))}\n </View>\n ))\n )}\n </View>\n );\n};\n\nGroupAvatar.displayName = 'GroupAvatar{groupAvatar}';\n"]}
1
+ {"version":3,"sources":["GroupAvatar.tsx"],"names":["randomImageBaseUrl","randomSvgBaseUrl","streamCDN","styles","StyleSheet","create","container","overflow","flex","getInitials","fullName","split","slice","map","name","charAt","join","GroupAvatar","props","containerStyle","images","names","size","testID","theme","groupAvatar","image","isLoadingImageError","setLoadingImageError","imagesOrNames","avatarImages","reduce","returnArray","currentImage","index","url","startsWith","length","height","width","borderRadius","backgroundColor","column","colIndex","flexDirection","rowIndex","uri","includes","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Image, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useLoadingImage } from '../../hooks/useLoadingImage';\nimport { getResizedImageUrl } from '../../utils/getResizedImageUrl';\n\nconst randomImageBaseUrl = 'https://getstream.io/random_png/';\nconst randomSvgBaseUrl = 'https://getstream.io/random_svg/';\nconst streamCDN = 'stream-io-cdn.com';\n\nconst styles = StyleSheet.create({\n container: {\n overflow: 'hidden',\n },\n flex: { flex: 1 },\n});\n\nconst getInitials = (fullName: string) =>\n fullName\n .split(' ')\n .slice(0, 2)\n .map((name) => name.charAt(0))\n .join(' ');\n\nexport type GroupAvatarProps = {\n /** total size in pixels */\n size: number;\n containerStyle?: StyleProp<ViewStyle>;\n /** image urls */\n images?: string[];\n /** name of the users, used for fallback */\n names?: string[];\n testID?: string;\n};\n\n/**\n * GroupAvatar - A round group of avatar images with fallbacks to users' initials\n */\nexport const GroupAvatar: React.FC<GroupAvatarProps> = (props) => {\n const { containerStyle, images, names, size, testID } = props;\n const {\n theme: {\n groupAvatar: { container, image },\n },\n } = useTheme();\n\n const { isLoadingImageError, setLoadingImageError } = useLoadingImage();\n /**\n * [\n * [\n * { height: number; name: string; url: string; width: number },\n * { height: number; name: string; url: string; width: number },\n * ],\n * [\n * { height: number; name: string; url: string; width: number },\n * { height: number; name: string; url: string; width: number },\n * ],\n * ]\n */\n const imagesOrNames = images || names || [];\n const avatarImages = imagesOrNames.slice(0, 4).reduce((returnArray, currentImage, index) => {\n const url = currentImage.startsWith('http')\n ? currentImage\n : `${randomImageBaseUrl}${\n names\n ? `?name=${getInitials(names[index])}&size=${\n imagesOrNames.length <= 2 ? size : size / 2\n }`\n : ''\n }`;\n if (imagesOrNames.length <= 2) {\n returnArray[0] = [\n ...(returnArray[0] || []),\n {\n height: imagesOrNames.length === 1 ? size : size / 2,\n name: names ? names[index] : '',\n url,\n width: size,\n },\n ];\n } else {\n if (index < 2) {\n returnArray[0] = [\n ...(returnArray[0] || []),\n {\n height: size / 2,\n name: names ? names[index] : '',\n url,\n width: size / 2,\n },\n ];\n } else {\n returnArray[1] = [\n ...(returnArray[1] || []),\n {\n height: size / 2,\n name: names ? names[index] : '',\n url,\n width: imagesOrNames.length === 3 ? size : size / 2,\n },\n ];\n }\n }\n return returnArray;\n }, [] as { height: number; name: string; url: string; width: number }[][]);\n\n return (\n <View\n style={[\n styles.container,\n { borderRadius: size / 2, height: size, width: size },\n container,\n containerStyle,\n ]}\n testID={testID || 'group-avatar'}\n >\n {isLoadingImageError ? (\n <View\n style={{\n backgroundColor: '#ececec',\n borderRadius: size / 2,\n height: size,\n width: size,\n }}\n />\n ) : (\n avatarImages.map((column, colIndex) => (\n <View\n key={`avatar-column-${colIndex}`}\n style={[\n styles.flex,\n {\n flexDirection: imagesOrNames.length === 2 ? 'column' : 'row',\n },\n ]}\n >\n {column.map(({ height, name, url, width }, rowIndex) => (\n <Image\n accessibilityLabel={testID || 'Avatar Image'}\n key={`avatar-${url}-${rowIndex}`}\n onError={() => setLoadingImageError(true)}\n source={{\n uri: url.includes(randomSvgBaseUrl)\n ? url.includes(streamCDN)\n ? url\n : `${randomImageBaseUrl}${\n name ? `?name=${getInitials(name)}&size=${height}` : ''\n }`\n : getResizedImageUrl({\n height,\n url,\n width,\n }),\n }}\n style={[\n image,\n size\n ? {\n backgroundColor: '#ececec',\n height,\n width,\n }\n : {},\n ]}\n testID={`group-avatar-image-${colIndex}-${rowIndex}`}\n />\n ))}\n </View>\n ))\n )}\n </View>\n );\n};\n\nGroupAvatar.displayName = 'GroupAvatar{groupAvatar}';\n"]}
@@ -137,6 +137,8 @@ var _ReactionList = require("../Message/MessageSimple/ReactionList");
137
137
 
138
138
  var _AttachButton = require("../MessageInput/AttachButton");
139
139
 
140
+ var _AudioAttachmentUploadPreview = require("../MessageInput/AudioAttachmentUploadPreview");
141
+
140
142
  var _CommandsButton = require("../MessageInput/CommandsButton");
141
143
 
142
144
  var _InputEditingStateHeader = require("../MessageInput/components/InputEditingStateHeader");
@@ -245,6 +247,8 @@ var ChannelWithContext = function ChannelWithContext(props) {
245
247
  Attachment = _props$Attachment === void 0 ? _Attachment.Attachment : _props$Attachment,
246
248
  _props$AttachmentActi = props.AttachmentActions,
247
249
  AttachmentActions = _props$AttachmentActi === void 0 ? _AttachmentActions.AttachmentActions : _props$AttachmentActi,
250
+ _props$AudioAttachmen = props.AudioAttachmentUploadPreview,
251
+ AudioAttachmentUploadPreview = _props$AudioAttachmen === void 0 ? _AudioAttachmentUploadPreview.AudioAttachmentUploadPreview : _props$AudioAttachmen,
248
252
  _props$AutoCompleteSu = props.AutoCompleteSuggestionHeader,
249
253
  AutoCompleteSuggestionHeader = _props$AutoCompleteSu === void 0 ? _AutoCompleteSuggestionHeader.AutoCompleteSuggestionHeader : _props$AutoCompleteSu,
250
254
  _props$AutoCompleteSu2 = props.AutoCompleteSuggestionItem,
@@ -1870,6 +1874,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
1870
1874
  var inputMessageInputContext = (0, _useCreateInputMessageInputContext.useCreateInputMessageInputContext)({
1871
1875
  additionalTextInputProps: additionalTextInputProps,
1872
1876
  AttachButton: AttachButton,
1877
+ AudioAttachmentUploadPreview: AudioAttachmentUploadPreview,
1873
1878
  autoCompleteSuggestionsLimit: autoCompleteSuggestionsLimit,
1874
1879
  autoCompleteTriggerSettings: autoCompleteTriggerSettings,
1875
1880
  channelId: channelId,
@@ -2031,7 +2036,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2031
2036
  __self: _this,
2032
2037
  __source: {
2033
2038
  fileName: _jsxFileName,
2034
- lineNumber: 1747,
2039
+ lineNumber: 1750,
2035
2040
  columnNumber: 12
2036
2041
  }
2037
2042
  });
@@ -2046,7 +2051,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2046
2051
  __self: _this,
2047
2052
  __source: {
2048
2053
  fileName: _jsxFileName,
2049
- lineNumber: 1752,
2054
+ lineNumber: 1755,
2050
2055
  columnNumber: 7
2051
2056
  }
2052
2057
  }, t('Please select a channel first'));
@@ -2060,7 +2065,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2060
2065
  __self: _this,
2061
2066
  __source: {
2062
2067
  fileName: _jsxFileName,
2063
- lineNumber: 1759,
2068
+ lineNumber: 1762,
2064
2069
  columnNumber: 5
2065
2070
  }
2066
2071
  }), _react["default"].createElement(_ChannelContext.ChannelProvider, {
@@ -2068,7 +2073,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2068
2073
  __self: _this,
2069
2074
  __source: {
2070
2075
  fileName: _jsxFileName,
2071
- lineNumber: 1765,
2076
+ lineNumber: 1768,
2072
2077
  columnNumber: 7
2073
2078
  }
2074
2079
  }, _react["default"].createElement(_OwnCapabilitiesContext.OwnCapabilitiesProvider, {
@@ -2076,7 +2081,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2076
2081
  __self: _this,
2077
2082
  __source: {
2078
2083
  fileName: _jsxFileName,
2079
- lineNumber: 1766,
2084
+ lineNumber: 1769,
2080
2085
  columnNumber: 9
2081
2086
  }
2082
2087
  }, _react["default"].createElement(_TypingContext.TypingProvider, {
@@ -2084,7 +2089,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2084
2089
  __self: _this,
2085
2090
  __source: {
2086
2091
  fileName: _jsxFileName,
2087
- lineNumber: 1767,
2092
+ lineNumber: 1770,
2088
2093
  columnNumber: 11
2089
2094
  }
2090
2095
  }, _react["default"].createElement(_PaginatedMessageListContext.PaginatedMessageListProvider, {
@@ -2092,7 +2097,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2092
2097
  __self: _this,
2093
2098
  __source: {
2094
2099
  fileName: _jsxFileName,
2095
- lineNumber: 1768,
2100
+ lineNumber: 1771,
2096
2101
  columnNumber: 13
2097
2102
  }
2098
2103
  }, _react["default"].createElement(_MessagesContext.MessagesProvider, {
@@ -2100,7 +2105,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2100
2105
  __self: _this,
2101
2106
  __source: {
2102
2107
  fileName: _jsxFileName,
2103
- lineNumber: 1769,
2108
+ lineNumber: 1772,
2104
2109
  columnNumber: 15
2105
2110
  }
2106
2111
  }, _react["default"].createElement(_ThreadContext.ThreadProvider, {
@@ -2108,7 +2113,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2108
2113
  __self: _this,
2109
2114
  __source: {
2110
2115
  fileName: _jsxFileName,
2111
- lineNumber: 1770,
2116
+ lineNumber: 1773,
2112
2117
  columnNumber: 17
2113
2118
  }
2114
2119
  }, _react["default"].createElement(_SuggestionsContext.SuggestionsProvider, {
@@ -2116,7 +2121,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2116
2121
  __self: _this,
2117
2122
  __source: {
2118
2123
  fileName: _jsxFileName,
2119
- lineNumber: 1771,
2124
+ lineNumber: 1774,
2120
2125
  columnNumber: 19
2121
2126
  }
2122
2127
  }, _react["default"].createElement(_MessageInputContext.MessageInputProvider, {
@@ -2124,7 +2129,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2124
2129
  __self: _this,
2125
2130
  __source: {
2126
2131
  fileName: _jsxFileName,
2127
- lineNumber: 1772,
2132
+ lineNumber: 1775,
2128
2133
  columnNumber: 21
2129
2134
  }
2130
2135
  }, _react["default"].createElement(_reactNative.View, {
@@ -2134,7 +2139,7 @@ var ChannelWithContext = function ChannelWithContext(props) {
2134
2139
  __self: _this,
2135
2140
  __source: {
2136
2141
  fileName: _jsxFileName,
2137
- lineNumber: 1773,
2142
+ lineNumber: 1776,
2138
2143
  columnNumber: 23
2139
2144
  }
2140
2145
  }, children))))))))));
@@ -2189,7 +2194,7 @@ var Channel = function Channel(props) {
2189
2194
  __self: _this,
2190
2195
  __source: {
2191
2196
  fileName: _jsxFileName,
2192
- lineNumber: 1830,
2197
+ lineNumber: 1833,
2193
2198
  columnNumber: 5
2194
2199
  }
2195
2200
  }));