@sendbird/uikit-react 3.6.3 → 3.6.4-rc-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1337) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/App.js +734 -0
  3. package/dist/App.js.map +1 -0
  4. package/dist/CHANGELOG.md +1287 -0
  5. package/dist/Channel/components/ChannelHeader.js +114 -0
  6. package/dist/Channel/components/ChannelUI.js +189 -0
  7. package/dist/Channel/components/FileViewer.js +158 -0
  8. package/dist/Channel/components/FrozenNotification.js +24 -0
  9. package/dist/Channel/components/Message.js +410 -0
  10. package/dist/Channel/components/MessageInput.js +246 -0
  11. package/dist/Channel/components/MessageList.js +356 -0
  12. package/dist/Channel/components/RemoveMessageModal.js +60 -0
  13. package/dist/Channel/components/SuggestedMentionList.js +259 -0
  14. package/dist/Channel/components/TypingIndicator.js +88 -0
  15. package/dist/Channel/components/UnreadCount.js +38 -0
  16. package/dist/Channel/context.js +20 -0
  17. package/dist/Channel.js +155 -0
  18. package/dist/ChannelList/components/AddChannel.js +75 -0
  19. package/dist/ChannelList/components/ChannelListHeader.js +76 -0
  20. package/dist/ChannelList/components/ChannelListUI.js +227 -0
  21. package/dist/ChannelList/components/ChannelPreview.js +183 -0
  22. package/dist/ChannelList/components/ChannelPreviewAction.js +133 -0
  23. package/dist/ChannelList/context.js +14 -0
  24. package/dist/ChannelList.js +97 -0
  25. package/dist/ChannelListProvider-6c1df64a.js +967 -0
  26. package/dist/ChannelListProvider-6c1df64a.js.map +1 -0
  27. package/dist/ChannelProvider-1dc36682.js +2144 -0
  28. package/dist/ChannelProvider-1dc36682.js.map +1 -0
  29. package/dist/ChannelSettings/components/ChannelProfile.js +89 -0
  30. package/dist/ChannelSettings/components/ChannelSettingsUI.js +152 -0
  31. package/dist/ChannelSettings/components/EditDetailsModal.js +146 -0
  32. package/dist/ChannelSettings/components/LeaveChannel.js +95 -0
  33. package/dist/ChannelSettings/components/ModerationPanel.js +788 -0
  34. package/dist/ChannelSettings/components/UserListItem.js +107 -0
  35. package/dist/ChannelSettings/components/UserPanel.js +78 -0
  36. package/dist/ChannelSettings/context.js +96 -0
  37. package/dist/ChannelSettings.js +76 -0
  38. package/dist/CreateChannel/components/CreateChannelUI.js +58 -0
  39. package/dist/CreateChannel/components/InviteUsers.js +198 -0
  40. package/dist/CreateChannel/components/SelectChannelType.js +133 -0
  41. package/dist/CreateChannel/context.js +9 -0
  42. package/dist/CreateChannel.js +58 -0
  43. package/dist/CreateChannelProvider-ec477081.js +44 -0
  44. package/dist/CreateChannelProvider-ec477081.js.map +1 -0
  45. package/dist/CreateOpenChannel/components/CreateOpenChannelUI.js +120 -0
  46. package/dist/CreateOpenChannel/context.js +63 -0
  47. package/dist/CreateOpenChannel.js +47 -0
  48. package/dist/EditUserProfile/components/EditUserProfileUI.js +26 -0
  49. package/dist/EditUserProfile.js +41 -0
  50. package/dist/LICENSE +21 -0
  51. package/dist/LocalizationContext-1701e5c8.js +20 -0
  52. package/dist/LocalizationContext-1701e5c8.js.map +1 -0
  53. package/dist/MediaQueryContext-e5b401d0.js +87 -0
  54. package/dist/MediaQueryContext-e5b401d0.js.map +1 -0
  55. package/dist/MemberList-415d00a9.js +403 -0
  56. package/dist/MemberList-415d00a9.js.map +1 -0
  57. package/dist/MessageSearch/components/MessageSearchUI.js +143 -0
  58. package/dist/MessageSearch/context.js +371 -0
  59. package/dist/MessageSearch.js +135 -0
  60. package/dist/OpenChannel/components/FrozenChannelNotification.js +21 -0
  61. package/dist/OpenChannel/components/OpenChannelHeader.js +92 -0
  62. package/dist/OpenChannel/components/OpenChannelInput.js +76 -0
  63. package/dist/OpenChannel/components/OpenChannelMessage.js +289 -0
  64. package/dist/OpenChannel/components/OpenChannelMessageList.js +147 -0
  65. package/dist/OpenChannel/components/OpenChannelUI.js +121 -0
  66. package/dist/OpenChannel/context.js +15 -0
  67. package/dist/OpenChannel.js +94 -0
  68. package/dist/OpenChannelList/components/OpenChannelListUI.js +182 -0
  69. package/dist/OpenChannelList/components/OpenChannelPreview.js +66 -0
  70. package/dist/OpenChannelList/context.js +7 -0
  71. package/dist/OpenChannelList.js +61 -0
  72. package/dist/OpenChannelListProvider-acb00ca3.js +429 -0
  73. package/dist/OpenChannelListProvider-acb00ca3.js.map +1 -0
  74. package/dist/OpenChannelProvider-995a7397.js +1885 -0
  75. package/dist/OpenChannelProvider-995a7397.js.map +1 -0
  76. package/dist/OpenChannelSettings/components/EditDetailsModal.js +139 -0
  77. package/dist/OpenChannelSettings/components/OpenChannelProfile.js +78 -0
  78. package/dist/OpenChannelSettings/components/OpenChannelSettingsUI.js +128 -0
  79. package/dist/OpenChannelSettings/components/OperatorUI.js +842 -0
  80. package/dist/OpenChannelSettings/components/ParticipantUI.js +36 -0
  81. package/dist/OpenChannelSettings/context.js +132 -0
  82. package/dist/OpenChannelSettings.js +66 -0
  83. package/dist/README.md +172 -0
  84. package/dist/RemoveMessageModal-bf0ab3b2.js +36 -0
  85. package/dist/RemoveMessageModal-bf0ab3b2.js.map +1 -0
  86. package/dist/SendbirdProvider.js +1198 -0
  87. package/dist/SendbirdProvider.js.map +1 -0
  88. package/dist/Thread/components/ParentMessageInfo.js +381 -0
  89. package/dist/Thread/components/ParentMessageInfoItem.js +220 -0
  90. package/dist/Thread/components/ThreadHeader.js +60 -0
  91. package/dist/Thread/components/ThreadList.js +167 -0
  92. package/dist/Thread/components/ThreadListItem.js +555 -0
  93. package/dist/Thread/components/ThreadMessageInput.js +226 -0
  94. package/dist/Thread/components/ThreadUI.js +348 -0
  95. package/dist/Thread/context.js +18 -0
  96. package/dist/Thread.js +145 -0
  97. package/dist/ThreadProvider-dea308a0.js +1695 -0
  98. package/dist/ThreadProvider-dea308a0.js.map +1 -0
  99. package/dist/UserProfileContext-74e9a128.js +41 -0
  100. package/dist/UserProfileContext-74e9a128.js.map +1 -0
  101. package/dist/VoiceMessageInputWrapper-4625a847.js +170 -0
  102. package/dist/VoiceMessageInputWrapper-4625a847.js.map +1 -0
  103. package/dist/VoicePlayer/context.js +7 -0
  104. package/dist/VoicePlayer/useVoicePlayer.js +84 -0
  105. package/dist/VoiceRecorder/context.js +156 -0
  106. package/dist/VoiceRecorder/useVoiceRecorder.js +121 -0
  107. package/dist/WebAudioUtils-9bed7a8e.js +126 -0
  108. package/dist/WebAudioUtils-9bed7a8e.js.map +1 -0
  109. package/dist/_rollupPluginBabelHelpers-cc035350.js +66 -0
  110. package/dist/_rollupPluginBabelHelpers-cc035350.js.map +1 -0
  111. package/dist/actionTypes-cccf62ac.js +8 -0
  112. package/dist/actionTypes-cccf62ac.js.map +1 -0
  113. package/dist/cjs/App.js +741 -0
  114. package/dist/cjs/App.js.map +1 -0
  115. package/dist/cjs/Channel/components/ChannelHeader.js +120 -0
  116. package/dist/cjs/Channel/components/ChannelUI.js +195 -0
  117. package/dist/cjs/Channel/components/FileViewer.js +167 -0
  118. package/dist/cjs/Channel/components/FrozenNotification.js +30 -0
  119. package/dist/cjs/Channel/components/Message.js +416 -0
  120. package/dist/cjs/Channel/components/MessageInput.js +252 -0
  121. package/dist/cjs/Channel/components/MessageList.js +362 -0
  122. package/dist/cjs/Channel/components/RemoveMessageModal.js +66 -0
  123. package/dist/cjs/Channel/components/SuggestedMentionList.js +265 -0
  124. package/dist/cjs/Channel/components/TypingIndicator.js +97 -0
  125. package/dist/cjs/Channel/components/UnreadCount.js +44 -0
  126. package/dist/cjs/Channel/context.js +29 -0
  127. package/dist/cjs/Channel.js +161 -0
  128. package/dist/cjs/ChannelList/components/AddChannel.js +84 -0
  129. package/dist/cjs/ChannelList/components/ChannelListHeader.js +82 -0
  130. package/dist/cjs/ChannelList/components/ChannelListUI.js +233 -0
  131. package/dist/cjs/ChannelList/components/ChannelPreview.js +189 -0
  132. package/dist/cjs/ChannelList/components/ChannelPreviewAction.js +140 -0
  133. package/dist/cjs/ChannelList/context.js +23 -0
  134. package/dist/cjs/ChannelList.js +103 -0
  135. package/dist/cjs/ChannelListProvider-6278e465.js +979 -0
  136. package/dist/cjs/ChannelListProvider-6278e465.js.map +1 -0
  137. package/dist/cjs/ChannelProvider-a05d259f.js +2157 -0
  138. package/dist/cjs/ChannelProvider-a05d259f.js.map +1 -0
  139. package/dist/cjs/ChannelSettings/components/ChannelProfile.js +95 -0
  140. package/dist/cjs/ChannelSettings/components/ChannelSettingsUI.js +158 -0
  141. package/dist/cjs/ChannelSettings/components/EditDetailsModal.js +152 -0
  142. package/dist/cjs/ChannelSettings/components/LeaveChannel.js +101 -0
  143. package/dist/cjs/ChannelSettings/components/ModerationPanel.js +794 -0
  144. package/dist/cjs/ChannelSettings/components/UserListItem.js +113 -0
  145. package/dist/cjs/ChannelSettings/components/UserPanel.js +84 -0
  146. package/dist/cjs/ChannelSettings/context.js +105 -0
  147. package/dist/cjs/ChannelSettings.js +82 -0
  148. package/dist/cjs/CreateChannel/components/CreateChannelUI.js +64 -0
  149. package/dist/cjs/CreateChannel/components/InviteUsers.js +204 -0
  150. package/dist/cjs/CreateChannel/components/SelectChannelType.js +139 -0
  151. package/dist/cjs/CreateChannel/context.js +18 -0
  152. package/dist/cjs/CreateChannel.js +64 -0
  153. package/dist/cjs/CreateChannelProvider-2e0d0496.js +52 -0
  154. package/dist/cjs/CreateChannelProvider-2e0d0496.js.map +1 -0
  155. package/dist/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +126 -0
  156. package/dist/cjs/CreateOpenChannel/context.js +72 -0
  157. package/dist/cjs/CreateOpenChannel.js +53 -0
  158. package/dist/cjs/EditUserProfile/components/EditUserProfileUI.js +32 -0
  159. package/dist/cjs/EditUserProfile.js +47 -0
  160. package/dist/cjs/LocalizationContext-44d2f61b.js +28 -0
  161. package/dist/cjs/LocalizationContext-44d2f61b.js.map +1 -0
  162. package/dist/cjs/MediaQueryContext-5d311a86.js +94 -0
  163. package/dist/cjs/MediaQueryContext-5d311a86.js.map +1 -0
  164. package/dist/cjs/MemberList-324a4047.js +409 -0
  165. package/dist/cjs/MemberList-324a4047.js.map +1 -0
  166. package/dist/cjs/MessageSearch/components/MessageSearchUI.js +152 -0
  167. package/dist/cjs/MessageSearch/context.js +380 -0
  168. package/dist/cjs/MessageSearch.js +141 -0
  169. package/dist/cjs/OpenChannel/components/FrozenChannelNotification.js +27 -0
  170. package/dist/cjs/OpenChannel/components/OpenChannelHeader.js +98 -0
  171. package/dist/cjs/OpenChannel/components/OpenChannelInput.js +82 -0
  172. package/dist/cjs/OpenChannel/components/OpenChannelMessage.js +295 -0
  173. package/dist/cjs/OpenChannel/components/OpenChannelMessageList.js +153 -0
  174. package/dist/cjs/OpenChannel/components/OpenChannelUI.js +127 -0
  175. package/dist/cjs/OpenChannel/context.js +24 -0
  176. package/dist/cjs/OpenChannel.js +100 -0
  177. package/dist/cjs/OpenChannelList/components/OpenChannelListUI.js +188 -0
  178. package/dist/cjs/OpenChannelList/components/OpenChannelPreview.js +72 -0
  179. package/dist/cjs/OpenChannelList/context.js +17 -0
  180. package/dist/cjs/OpenChannelList.js +67 -0
  181. package/dist/cjs/OpenChannelListProvider-42bc1841.js +439 -0
  182. package/dist/cjs/OpenChannelListProvider-42bc1841.js.map +1 -0
  183. package/dist/cjs/OpenChannelProvider-ecae68c8.js +1894 -0
  184. package/dist/cjs/OpenChannelProvider-ecae68c8.js.map +1 -0
  185. package/dist/cjs/OpenChannelSettings/components/EditDetailsModal.js +145 -0
  186. package/dist/cjs/OpenChannelSettings/components/OpenChannelProfile.js +84 -0
  187. package/dist/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +134 -0
  188. package/dist/cjs/OpenChannelSettings/components/OperatorUI.js +852 -0
  189. package/dist/cjs/OpenChannelSettings/components/ParticipantUI.js +42 -0
  190. package/dist/cjs/OpenChannelSettings/context.js +141 -0
  191. package/dist/cjs/OpenChannelSettings.js +72 -0
  192. package/dist/cjs/RemoveMessageModal-81daa8a0.js +42 -0
  193. package/dist/cjs/RemoveMessageModal-81daa8a0.js.map +1 -0
  194. package/dist/cjs/SendbirdProvider.js +1206 -0
  195. package/dist/cjs/SendbirdProvider.js.map +1 -0
  196. package/dist/cjs/Thread/components/ParentMessageInfo.js +387 -0
  197. package/dist/cjs/Thread/components/ParentMessageInfoItem.js +226 -0
  198. package/dist/cjs/Thread/components/ThreadHeader.js +66 -0
  199. package/dist/cjs/Thread/components/ThreadList.js +173 -0
  200. package/dist/cjs/Thread/components/ThreadListItem.js +561 -0
  201. package/dist/cjs/Thread/components/ThreadMessageInput.js +232 -0
  202. package/dist/cjs/Thread/components/ThreadUI.js +354 -0
  203. package/dist/cjs/Thread/context.js +27 -0
  204. package/dist/cjs/Thread.js +151 -0
  205. package/dist/cjs/ThreadProvider-bac1bea8.js +1704 -0
  206. package/dist/cjs/ThreadProvider-bac1bea8.js.map +1 -0
  207. package/dist/cjs/UserProfileContext-9d843d68.js +49 -0
  208. package/dist/cjs/UserProfileContext-9d843d68.js.map +1 -0
  209. package/dist/cjs/VoiceMessageInputWrapper-6625f53a.js +176 -0
  210. package/dist/cjs/VoiceMessageInputWrapper-6625f53a.js.map +1 -0
  211. package/dist/cjs/VoicePlayer/context.js +17 -0
  212. package/dist/cjs/VoicePlayer/useVoicePlayer.js +88 -0
  213. package/dist/cjs/VoiceRecorder/context.js +166 -0
  214. package/dist/cjs/VoiceRecorder/useVoiceRecorder.js +126 -0
  215. package/dist/cjs/WebAudioUtils-23153df4.js +129 -0
  216. package/dist/cjs/WebAudioUtils-23153df4.js.map +1 -0
  217. package/dist/cjs/_rollupPluginBabelHelpers-21ae158b.js +70 -0
  218. package/dist/cjs/_rollupPluginBabelHelpers-21ae158b.js.map +1 -0
  219. package/dist/cjs/actionTypes-944c8755.js +10 -0
  220. package/dist/cjs/actionTypes-944c8755.js.map +1 -0
  221. package/dist/cjs/color-0c04efbd.js +37 -0
  222. package/dist/cjs/color-0c04efbd.js.map +1 -0
  223. package/dist/cjs/compareIds-a846891d.js +17 -0
  224. package/dist/cjs/compareIds-a846891d.js.map +1 -0
  225. package/dist/cjs/const-1ea78727.js +20 -0
  226. package/dist/cjs/const-1ea78727.js.map +1 -0
  227. package/dist/cjs/const-bd02657f.js +22 -0
  228. package/dist/cjs/const-bd02657f.js.map +1 -0
  229. package/dist/cjs/consts-867f1ae6.js +6 -0
  230. package/dist/cjs/consts-867f1ae6.js.map +1 -0
  231. package/dist/cjs/consts-900e72b9.js +43 -0
  232. package/dist/cjs/consts-900e72b9.js.map +1 -0
  233. package/dist/cjs/consts-b93ef9ea.js +6 -0
  234. package/dist/cjs/consts-b93ef9ea.js.map +1 -0
  235. package/dist/cjs/consts-bce71b24.js +6 -0
  236. package/dist/cjs/consts-bce71b24.js.map +1 -0
  237. package/dist/cjs/context-2bf3186e.js +20 -0
  238. package/dist/cjs/context-2bf3186e.js.map +1 -0
  239. package/dist/cjs/dist/index.css +7570 -0
  240. package/dist/cjs/dist/index.css.map +1 -0
  241. package/dist/cjs/index-0a446cca.js +9 -0
  242. package/dist/cjs/index-0a446cca.js.map +1 -0
  243. package/dist/cjs/index-1b3c69da.js +585 -0
  244. package/dist/cjs/index-1b3c69da.js.map +1 -0
  245. package/dist/cjs/index-24f791d1.js +178 -0
  246. package/dist/cjs/index-24f791d1.js.map +1 -0
  247. package/dist/cjs/index-2bfd366f.js +129 -0
  248. package/dist/cjs/index-2bfd366f.js.map +1 -0
  249. package/dist/cjs/index-4d2879d6.js +161 -0
  250. package/dist/cjs/index-4d2879d6.js.map +1 -0
  251. package/dist/cjs/index-50c4a83b.js +330 -0
  252. package/dist/cjs/index-50c4a83b.js.map +1 -0
  253. package/dist/cjs/index-77d10148.js +171 -0
  254. package/dist/cjs/index-77d10148.js.map +1 -0
  255. package/dist/cjs/index-78a1037e.js +456 -0
  256. package/dist/cjs/index-78a1037e.js.map +1 -0
  257. package/dist/cjs/index-88e8fdfa.js +503 -0
  258. package/dist/cjs/index-88e8fdfa.js.map +1 -0
  259. package/dist/cjs/index-892b4b7f.js +1857 -0
  260. package/dist/cjs/index-892b4b7f.js.map +1 -0
  261. package/dist/cjs/index-8cd9b25d.js +57 -0
  262. package/dist/cjs/index-8cd9b25d.js.map +1 -0
  263. package/dist/cjs/index-9a5e4383.js +118 -0
  264. package/dist/cjs/index-9a5e4383.js.map +1 -0
  265. package/dist/cjs/index-a3268370.js +68 -0
  266. package/dist/cjs/index-a3268370.js.map +1 -0
  267. package/dist/cjs/index-b339cfde.js +202 -0
  268. package/dist/cjs/index-b339cfde.js.map +1 -0
  269. package/dist/cjs/index-b6657c80.js +149 -0
  270. package/dist/cjs/index-b6657c80.js.map +1 -0
  271. package/dist/cjs/index-beae7f2c.js +367 -0
  272. package/dist/cjs/index-beae7f2c.js.map +1 -0
  273. package/dist/cjs/index-c08f5bf5.js +79 -0
  274. package/dist/cjs/index-c08f5bf5.js.map +1 -0
  275. package/dist/cjs/index.js +207 -0
  276. package/dist/cjs/index.module-5a6a79b6.js +6 -0
  277. package/dist/cjs/index.module-5a6a79b6.js.map +1 -0
  278. package/dist/cjs/package.json +52 -0
  279. package/dist/cjs/resolvedReplyType-14fa0f85.js +32 -0
  280. package/dist/cjs/resolvedReplyType-14fa0f85.js.map +1 -0
  281. package/dist/cjs/sendbirdSelectors.js +586 -0
  282. package/dist/cjs/stringSet-7aebf034.js +205 -0
  283. package/dist/cjs/stringSet-7aebf034.js.map +1 -0
  284. package/dist/cjs/tokenize-44139f1e.js +164 -0
  285. package/dist/cjs/tokenize-44139f1e.js.map +1 -0
  286. package/dist/cjs/topics-373d2156.js +18 -0
  287. package/dist/cjs/topics-373d2156.js.map +1 -0
  288. package/dist/cjs/types-df5bd4e5.js +17 -0
  289. package/dist/cjs/types-df5bd4e5.js.map +1 -0
  290. package/dist/cjs/ui/Accordion.js +70 -0
  291. package/dist/cjs/ui/AccordionGroup.js +29 -0
  292. package/dist/cjs/ui/AdminMessage.js +31 -0
  293. package/dist/cjs/ui/Avatar.js +203 -0
  294. package/dist/cjs/ui/Badge.js +35 -0
  295. package/dist/cjs/ui/BottomSheet.js +45 -0
  296. package/dist/cjs/ui/Button.js +79 -0
  297. package/dist/cjs/ui/ChannelAvatar.js +55 -0
  298. package/dist/cjs/ui/ConnectionStatus.js +33 -0
  299. package/dist/cjs/ui/ContextMenu.js +305 -0
  300. package/dist/cjs/ui/DateSeparator.js +34 -0
  301. package/dist/cjs/ui/EmojiReactions.js +335 -0
  302. package/dist/cjs/ui/FileMessageItemBody.js +63 -0
  303. package/dist/cjs/ui/FileViewer.js +137 -0
  304. package/dist/cjs/ui/IconButton.js +49 -0
  305. package/dist/cjs/ui/Input.js +54 -0
  306. package/dist/cjs/ui/Label.js +16 -0
  307. package/dist/cjs/ui/LinkLabel.js +61 -0
  308. package/dist/cjs/ui/MentionLabel.js +97 -0
  309. package/dist/cjs/ui/MentionUserLabel.js +27 -0
  310. package/dist/cjs/ui/MessageContent.js +430 -0
  311. package/dist/cjs/ui/MessageInput.js +846 -0
  312. package/dist/cjs/ui/MessageItemMenu.js +162 -0
  313. package/dist/cjs/ui/MessageItemReactionMenu.js +109 -0
  314. package/dist/cjs/ui/MessageSearchFileItem.js +137 -0
  315. package/dist/cjs/ui/MessageSearchItem.js +104 -0
  316. package/dist/cjs/ui/MessageStatus.js +25 -0
  317. package/dist/cjs/ui/Modal.js +132 -0
  318. package/dist/cjs/ui/OGMessageItemBody.js +133 -0
  319. package/dist/cjs/ui/OpenChannelAdminMessage.js +27 -0
  320. package/dist/cjs/ui/OpenChannelAvatar.js +41 -0
  321. package/dist/cjs/ui/OpenchannelConversationHeader.js +76 -0
  322. package/dist/cjs/ui/OpenchannelFileMessage.js +253 -0
  323. package/dist/cjs/ui/OpenchannelOGMessage.js +351 -0
  324. package/dist/cjs/ui/OpenchannelThumbnailMessage.js +332 -0
  325. package/dist/cjs/ui/OpenchannelUserMessage.js +279 -0
  326. package/dist/cjs/ui/PlaceHolder.js +19 -0
  327. package/dist/cjs/ui/PlaybackTime.js +35 -0
  328. package/dist/cjs/ui/QuoteMessage.js +158 -0
  329. package/dist/cjs/ui/QuoteMessageInput.js +99 -0
  330. package/dist/cjs/ui/ReactionBadge.js +50 -0
  331. package/dist/cjs/ui/ReactionButton.js +47 -0
  332. package/dist/cjs/ui/SortByRow.js +43 -0
  333. package/dist/cjs/ui/TextButton.js +29 -0
  334. package/dist/cjs/ui/TextMessageItemBody.js +79 -0
  335. package/dist/cjs/ui/ThreadReplies.js +85 -0
  336. package/dist/cjs/ui/ThumbnailMessageItemBody.js +77 -0
  337. package/dist/cjs/ui/Toggle.js +202 -0
  338. package/dist/cjs/ui/Tooltip.js +27 -0
  339. package/dist/cjs/ui/UnknownMessageItemBody.js +43 -0
  340. package/dist/cjs/ui/UserListItem.js +133 -0
  341. package/dist/cjs/ui/UserProfile.js +93 -0
  342. package/dist/cjs/ui/VoiceMessageItemBody.js +119 -0
  343. package/dist/cjs/ui/VoiceMessgeInput.js +22 -0
  344. package/dist/cjs/ui/Word.js +107 -0
  345. package/dist/cjs/useDirtyGetMentions-1500af53.js +77 -0
  346. package/dist/cjs/useDirtyGetMentions-1500af53.js.map +1 -0
  347. package/dist/cjs/useLongPress-83b6a2f1.js +87 -0
  348. package/dist/cjs/useLongPress-83b6a2f1.js.map +1 -0
  349. package/dist/cjs/useSendbirdStateContext.js +21 -0
  350. package/dist/cjs/utils/message/isVoiceMessage.js +12 -0
  351. package/dist/cjs/utils-6a43371d.js +31 -0
  352. package/dist/cjs/utils-6a43371d.js.map +1 -0
  353. package/dist/cjs/utils-6a748c02.js +6 -0
  354. package/dist/cjs/utils-6a748c02.js.map +1 -0
  355. package/dist/cjs/utils-c71f0bea.js +35 -0
  356. package/dist/cjs/utils-c71f0bea.js.map +1 -0
  357. package/dist/cjs/utils-d7f7f189.js +28 -0
  358. package/dist/cjs/utils-d7f7f189.js.map +1 -0
  359. package/dist/cjs/uuid-dee74248.js +15 -0
  360. package/dist/cjs/uuid-dee74248.js.map +1 -0
  361. package/dist/cjs/withSendbird.js +32 -0
  362. package/dist/color-ea3bf5b8.js +34 -0
  363. package/dist/color-ea3bf5b8.js.map +1 -0
  364. package/dist/compareIds-367bb030.js +15 -0
  365. package/dist/compareIds-367bb030.js.map +1 -0
  366. package/dist/const-2e67461b.js +18 -0
  367. package/dist/const-2e67461b.js.map +1 -0
  368. package/dist/const-7c266a95.js +13 -0
  369. package/dist/const-7c266a95.js.map +1 -0
  370. package/dist/consts-3a33a0a8.js +4 -0
  371. package/dist/consts-3a33a0a8.js.map +1 -0
  372. package/dist/consts-44eaef6b.js +28 -0
  373. package/dist/consts-44eaef6b.js.map +1 -0
  374. package/dist/consts-a0834b70.js +4 -0
  375. package/dist/consts-a0834b70.js.map +1 -0
  376. package/dist/consts-b3274b3d.js +4 -0
  377. package/dist/consts-b3274b3d.js.map +1 -0
  378. package/dist/context-b513d868.js +13 -0
  379. package/dist/context-b513d868.js.map +1 -0
  380. package/dist/dist/index.css +7570 -0
  381. package/dist/dist/index.css.map +1 -0
  382. package/dist/index-02ceed0a.js +320 -0
  383. package/dist/index-02ceed0a.js.map +1 -0
  384. package/dist/index-0aa8cbad.js +137 -0
  385. package/dist/index-0aa8cbad.js.map +1 -0
  386. package/dist/index-11fe17e1.js +110 -0
  387. package/dist/index-11fe17e1.js.map +1 -0
  388. package/dist/index-3461216d.js +76 -0
  389. package/dist/index-3461216d.js.map +1 -0
  390. package/dist/index-35696958.js +450 -0
  391. package/dist/index-35696958.js.map +1 -0
  392. package/dist/index-3f8e1a51.js +66 -0
  393. package/dist/index-3f8e1a51.js.map +1 -0
  394. package/dist/index-44c86e58.js +7 -0
  395. package/dist/index-44c86e58.js.map +1 -0
  396. package/dist/index-581e7610.js +360 -0
  397. package/dist/index-581e7610.js.map +1 -0
  398. package/dist/index-5a62f6b7.js +1852 -0
  399. package/dist/index-5a62f6b7.js.map +1 -0
  400. package/dist/index-7e5538e6.js +174 -0
  401. package/dist/index-7e5538e6.js.map +1 -0
  402. package/dist/index-99ab01f6.js +540 -0
  403. package/dist/index-99ab01f6.js.map +1 -0
  404. package/dist/index-9c80246a.js +164 -0
  405. package/dist/index-9c80246a.js.map +1 -0
  406. package/dist/index-a31ee68d.js +51 -0
  407. package/dist/index-a31ee68d.js.map +1 -0
  408. package/dist/index-cac27d56.js +154 -0
  409. package/dist/index-cac27d56.js.map +1 -0
  410. package/dist/index-e30c58e0.js +187 -0
  411. package/dist/index-e30c58e0.js.map +1 -0
  412. package/dist/index-f50d7ab0.js +118 -0
  413. package/dist/index-f50d7ab0.js.map +1 -0
  414. package/dist/index-ff8f2f61.js +501 -0
  415. package/dist/index-ff8f2f61.js.map +1 -0
  416. package/dist/index.d.ts +2627 -0
  417. package/dist/index.js +187 -0
  418. package/dist/index.module-d24badee.js +4 -0
  419. package/dist/index.module-d24badee.js.map +1 -0
  420. package/dist/package.json +127 -0
  421. package/dist/resolvedReplyType-6bb8f548.js +29 -0
  422. package/dist/resolvedReplyType-6bb8f548.js.map +1 -0
  423. package/dist/sendbirdSelectors.js +561 -0
  424. package/dist/stringSet-e9bb0333.js +203 -0
  425. package/dist/stringSet-e9bb0333.js.map +1 -0
  426. package/dist/tokenize-d12690c3.js +159 -0
  427. package/dist/tokenize-d12690c3.js.map +1 -0
  428. package/dist/topics-0b30f52b.js +16 -0
  429. package/dist/topics-0b30f52b.js.map +1 -0
  430. package/dist/types-28e84810.js +15 -0
  431. package/dist/types-28e84810.js.map +1 -0
  432. package/dist/ui/Accordion.js +61 -0
  433. package/dist/ui/AccordionGroup.js +23 -0
  434. package/dist/ui/AdminMessage.js +25 -0
  435. package/dist/ui/Avatar.js +194 -0
  436. package/dist/ui/Badge.js +29 -0
  437. package/dist/ui/BottomSheet.js +39 -0
  438. package/dist/ui/Button.js +69 -0
  439. package/dist/ui/ChannelAvatar.js +49 -0
  440. package/dist/ui/ConnectionStatus.js +27 -0
  441. package/dist/ui/ContextMenu.js +292 -0
  442. package/dist/ui/DateSeparator.js +28 -0
  443. package/dist/ui/EmojiReactions.js +329 -0
  444. package/dist/ui/FileMessageItemBody.js +57 -0
  445. package/dist/ui/FileViewer.js +128 -0
  446. package/dist/ui/IconButton.js +43 -0
  447. package/dist/ui/Input.js +45 -0
  448. package/dist/ui/Label.js +5 -0
  449. package/dist/ui/LinkLabel.js +50 -0
  450. package/dist/ui/MentionLabel.js +91 -0
  451. package/dist/ui/MentionUserLabel.js +21 -0
  452. package/dist/ui/MessageContent.js +424 -0
  453. package/dist/ui/MessageInput.js +838 -0
  454. package/dist/ui/MessageItemMenu.js +156 -0
  455. package/dist/ui/MessageItemReactionMenu.js +103 -0
  456. package/dist/ui/MessageSearchFileItem.js +131 -0
  457. package/dist/ui/MessageSearchItem.js +98 -0
  458. package/dist/ui/MessageStatus.js +16 -0
  459. package/dist/ui/Modal.js +121 -0
  460. package/dist/ui/OGMessageItemBody.js +127 -0
  461. package/dist/ui/OpenChannelAdminMessage.js +21 -0
  462. package/dist/ui/OpenChannelAvatar.js +35 -0
  463. package/dist/ui/OpenchannelConversationHeader.js +70 -0
  464. package/dist/ui/OpenchannelFileMessage.js +247 -0
  465. package/dist/ui/OpenchannelOGMessage.js +345 -0
  466. package/dist/ui/OpenchannelThumbnailMessage.js +326 -0
  467. package/dist/ui/OpenchannelUserMessage.js +273 -0
  468. package/dist/ui/PlaceHolder.js +10 -0
  469. package/dist/ui/PlaybackTime.js +26 -0
  470. package/dist/ui/QuoteMessage.js +152 -0
  471. package/dist/ui/QuoteMessageInput.js +93 -0
  472. package/dist/ui/ReactionBadge.js +44 -0
  473. package/dist/ui/ReactionButton.js +41 -0
  474. package/dist/ui/SortByRow.js +37 -0
  475. package/dist/ui/TextButton.js +23 -0
  476. package/dist/ui/TextMessageItemBody.js +73 -0
  477. package/dist/ui/ThreadReplies.js +79 -0
  478. package/dist/ui/ThumbnailMessageItemBody.js +71 -0
  479. package/dist/ui/Toggle.js +191 -0
  480. package/dist/ui/Tooltip.js +21 -0
  481. package/dist/ui/UnknownMessageItemBody.js +37 -0
  482. package/dist/ui/UserListItem.js +127 -0
  483. package/dist/ui/UserProfile.js +87 -0
  484. package/dist/ui/VoiceMessageItemBody.js +110 -0
  485. package/dist/ui/VoiceMessgeInput.js +14 -0
  486. package/dist/ui/Word.js +101 -0
  487. package/dist/useDirtyGetMentions-2df51ec3.js +75 -0
  488. package/dist/useDirtyGetMentions-2df51ec3.js.map +1 -0
  489. package/dist/useLongPress-6d0b6619.js +85 -0
  490. package/dist/useLongPress-6d0b6619.js.map +1 -0
  491. package/dist/useSendbirdStateContext.js +19 -0
  492. package/dist/utils/message/isVoiceMessage.js +8 -0
  493. package/dist/utils-05aa9060.js +4 -0
  494. package/dist/utils-05aa9060.js.map +1 -0
  495. package/dist/utils-a59107a2.js +26 -0
  496. package/dist/utils-a59107a2.js.map +1 -0
  497. package/dist/utils-cd7ab927.js +31 -0
  498. package/dist/utils-cd7ab927.js.map +1 -0
  499. package/dist/utils-f1b4b34b.js +29 -0
  500. package/dist/utils-f1b4b34b.js.map +1 -0
  501. package/dist/uuid-8b344dd2.js +13 -0
  502. package/dist/uuid-8b344dd2.js.map +1 -0
  503. package/dist/withSendbird.js +23 -0
  504. package/package.json +43 -13
  505. package/App.js +0 -730
  506. package/App.js.map +0 -1
  507. package/Channel/components/ChannelHeader.js +0 -114
  508. package/Channel/components/ChannelUI.js +0 -189
  509. package/Channel/components/FileViewer.js +0 -158
  510. package/Channel/components/FrozenNotification.js +0 -24
  511. package/Channel/components/Message.js +0 -410
  512. package/Channel/components/MessageInput.js +0 -246
  513. package/Channel/components/MessageList.js +0 -356
  514. package/Channel/components/RemoveMessageModal.js +0 -60
  515. package/Channel/components/SuggestedMentionList.js +0 -259
  516. package/Channel/components/TypingIndicator.js +0 -88
  517. package/Channel/components/UnreadCount.js +0 -38
  518. package/Channel/context.js +0 -20
  519. package/Channel.js +0 -155
  520. package/ChannelList/components/AddChannel.js +0 -75
  521. package/ChannelList/components/ChannelListHeader.js +0 -76
  522. package/ChannelList/components/ChannelListUI.js +0 -227
  523. package/ChannelList/components/ChannelPreview.js +0 -183
  524. package/ChannelList/components/ChannelPreviewAction.js +0 -133
  525. package/ChannelList/context.js +0 -14
  526. package/ChannelList.js +0 -97
  527. package/ChannelListProvider-1f3a3b98.js +0 -967
  528. package/ChannelListProvider-1f3a3b98.js.map +0 -1
  529. package/ChannelProvider-5c274c35.js +0 -2144
  530. package/ChannelProvider-5c274c35.js.map +0 -1
  531. package/ChannelSettings/components/ChannelProfile.js +0 -89
  532. package/ChannelSettings/components/ChannelSettingsUI.js +0 -152
  533. package/ChannelSettings/components/EditDetailsModal.js +0 -146
  534. package/ChannelSettings/components/LeaveChannel.js +0 -95
  535. package/ChannelSettings/components/ModerationPanel.js +0 -788
  536. package/ChannelSettings/components/UserListItem.js +0 -107
  537. package/ChannelSettings/components/UserPanel.js +0 -78
  538. package/ChannelSettings/context.js +0 -96
  539. package/ChannelSettings.js +0 -76
  540. package/CreateChannel/components/CreateChannelUI.js +0 -58
  541. package/CreateChannel/components/InviteUsers.js +0 -198
  542. package/CreateChannel/components/SelectChannelType.js +0 -133
  543. package/CreateChannel/context.js +0 -9
  544. package/CreateChannel.js +0 -58
  545. package/CreateChannelProvider-7c210c5c.js +0 -44
  546. package/CreateChannelProvider-7c210c5c.js.map +0 -1
  547. package/CreateOpenChannel/components/CreateOpenChannelUI.js +0 -120
  548. package/CreateOpenChannel/context.js +0 -63
  549. package/CreateOpenChannel.js +0 -47
  550. package/EditUserProfile/components/EditUserProfileUI.js +0 -26
  551. package/EditUserProfile.js +0 -41
  552. package/LocalizationContext-946f1522.js +0 -20
  553. package/LocalizationContext-946f1522.js.map +0 -1
  554. package/MediaQueryContext-3082308b.js +0 -87
  555. package/MediaQueryContext-3082308b.js.map +0 -1
  556. package/MemberList-56b35618.js +0 -403
  557. package/MemberList-56b35618.js.map +0 -1
  558. package/MessageSearch/components/MessageSearchUI.js +0 -143
  559. package/MessageSearch/context.js +0 -371
  560. package/MessageSearch.js +0 -135
  561. package/OpenChannel/components/FrozenChannelNotification.js +0 -21
  562. package/OpenChannel/components/OpenChannelHeader.js +0 -92
  563. package/OpenChannel/components/OpenChannelInput.js +0 -76
  564. package/OpenChannel/components/OpenChannelMessage.js +0 -289
  565. package/OpenChannel/components/OpenChannelMessageList.js +0 -147
  566. package/OpenChannel/components/OpenChannelUI.js +0 -121
  567. package/OpenChannel/context.js +0 -15
  568. package/OpenChannel.js +0 -94
  569. package/OpenChannelList/components/OpenChannelListUI.js +0 -182
  570. package/OpenChannelList/components/OpenChannelPreview.js +0 -66
  571. package/OpenChannelList/context.js +0 -7
  572. package/OpenChannelList.js +0 -61
  573. package/OpenChannelListProvider-3e2d0231.js +0 -429
  574. package/OpenChannelListProvider-3e2d0231.js.map +0 -1
  575. package/OpenChannelProvider-1015964c.js +0 -1885
  576. package/OpenChannelProvider-1015964c.js.map +0 -1
  577. package/OpenChannelSettings/components/EditDetailsModal.js +0 -139
  578. package/OpenChannelSettings/components/OpenChannelProfile.js +0 -78
  579. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +0 -128
  580. package/OpenChannelSettings/components/OperatorUI.js +0 -842
  581. package/OpenChannelSettings/components/ParticipantUI.js +0 -36
  582. package/OpenChannelSettings/context.js +0 -132
  583. package/OpenChannelSettings.js +0 -66
  584. package/RemoveMessageModal-0c26de36.js +0 -36
  585. package/RemoveMessageModal-0c26de36.js.map +0 -1
  586. package/SendbirdProvider.js +0 -1192
  587. package/SendbirdProvider.js.map +0 -1
  588. package/Thread/components/ParentMessageInfo.js +0 -381
  589. package/Thread/components/ParentMessageInfoItem.js +0 -220
  590. package/Thread/components/ThreadHeader.js +0 -60
  591. package/Thread/components/ThreadList.js +0 -167
  592. package/Thread/components/ThreadListItem.js +0 -555
  593. package/Thread/components/ThreadMessageInput.js +0 -226
  594. package/Thread/components/ThreadUI.js +0 -348
  595. package/Thread/context.js +0 -18
  596. package/Thread.js +0 -145
  597. package/ThreadProvider-d0b84f35.js +0 -1695
  598. package/ThreadProvider-d0b84f35.js.map +0 -1
  599. package/UserProfileContext-00a2876c.js +0 -41
  600. package/UserProfileContext-00a2876c.js.map +0 -1
  601. package/VoiceMessageInputWrapper-a5804e24.js +0 -170
  602. package/VoiceMessageInputWrapper-a5804e24.js.map +0 -1
  603. package/VoicePlayer/context.js +0 -7
  604. package/VoicePlayer/useVoicePlayer.js +0 -84
  605. package/VoiceRecorder/context.js +0 -156
  606. package/VoiceRecorder/useVoiceRecorder.js +0 -121
  607. package/WebAudioUtils-eae97f80.js +0 -126
  608. package/WebAudioUtils-eae97f80.js.map +0 -1
  609. package/_rollupPluginBabelHelpers-b483a7d2.js +0 -66
  610. package/_rollupPluginBabelHelpers-b483a7d2.js.map +0 -1
  611. package/actionTypes-cb0b031b.js +0 -8
  612. package/actionTypes-cb0b031b.js.map +0 -1
  613. package/cjs/App.js +0 -737
  614. package/cjs/App.js.map +0 -1
  615. package/cjs/Channel/components/ChannelHeader.js +0 -120
  616. package/cjs/Channel/components/ChannelUI.js +0 -195
  617. package/cjs/Channel/components/FileViewer.js +0 -167
  618. package/cjs/Channel/components/FrozenNotification.js +0 -30
  619. package/cjs/Channel/components/Message.js +0 -416
  620. package/cjs/Channel/components/MessageInput.js +0 -252
  621. package/cjs/Channel/components/MessageList.js +0 -362
  622. package/cjs/Channel/components/RemoveMessageModal.js +0 -66
  623. package/cjs/Channel/components/SuggestedMentionList.js +0 -265
  624. package/cjs/Channel/components/TypingIndicator.js +0 -97
  625. package/cjs/Channel/components/UnreadCount.js +0 -44
  626. package/cjs/Channel/context.js +0 -29
  627. package/cjs/Channel.js +0 -161
  628. package/cjs/ChannelList/components/AddChannel.js +0 -84
  629. package/cjs/ChannelList/components/ChannelListHeader.js +0 -82
  630. package/cjs/ChannelList/components/ChannelListUI.js +0 -233
  631. package/cjs/ChannelList/components/ChannelPreview.js +0 -189
  632. package/cjs/ChannelList/components/ChannelPreviewAction.js +0 -140
  633. package/cjs/ChannelList/context.js +0 -23
  634. package/cjs/ChannelList.js +0 -103
  635. package/cjs/ChannelListProvider-b45b79f5.js +0 -979
  636. package/cjs/ChannelListProvider-b45b79f5.js.map +0 -1
  637. package/cjs/ChannelProvider-7abd9fa3.js +0 -2157
  638. package/cjs/ChannelProvider-7abd9fa3.js.map +0 -1
  639. package/cjs/ChannelSettings/components/ChannelProfile.js +0 -95
  640. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +0 -158
  641. package/cjs/ChannelSettings/components/EditDetailsModal.js +0 -152
  642. package/cjs/ChannelSettings/components/LeaveChannel.js +0 -101
  643. package/cjs/ChannelSettings/components/ModerationPanel.js +0 -794
  644. package/cjs/ChannelSettings/components/UserListItem.js +0 -113
  645. package/cjs/ChannelSettings/components/UserPanel.js +0 -84
  646. package/cjs/ChannelSettings/context.js +0 -105
  647. package/cjs/ChannelSettings.js +0 -82
  648. package/cjs/CreateChannel/components/CreateChannelUI.js +0 -64
  649. package/cjs/CreateChannel/components/InviteUsers.js +0 -204
  650. package/cjs/CreateChannel/components/SelectChannelType.js +0 -139
  651. package/cjs/CreateChannel/context.js +0 -18
  652. package/cjs/CreateChannel.js +0 -64
  653. package/cjs/CreateChannelProvider-1cf31fc6.js +0 -52
  654. package/cjs/CreateChannelProvider-1cf31fc6.js.map +0 -1
  655. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +0 -126
  656. package/cjs/CreateOpenChannel/context.js +0 -72
  657. package/cjs/CreateOpenChannel.js +0 -53
  658. package/cjs/EditUserProfile/components/EditUserProfileUI.js +0 -32
  659. package/cjs/EditUserProfile.js +0 -47
  660. package/cjs/LocalizationContext-c014018b.js +0 -28
  661. package/cjs/LocalizationContext-c014018b.js.map +0 -1
  662. package/cjs/MediaQueryContext-aea0ce1a.js +0 -94
  663. package/cjs/MediaQueryContext-aea0ce1a.js.map +0 -1
  664. package/cjs/MemberList-c86e360b.js +0 -409
  665. package/cjs/MemberList-c86e360b.js.map +0 -1
  666. package/cjs/MessageSearch/components/MessageSearchUI.js +0 -152
  667. package/cjs/MessageSearch/context.js +0 -380
  668. package/cjs/MessageSearch.js +0 -141
  669. package/cjs/OpenChannel/components/FrozenChannelNotification.js +0 -27
  670. package/cjs/OpenChannel/components/OpenChannelHeader.js +0 -98
  671. package/cjs/OpenChannel/components/OpenChannelInput.js +0 -82
  672. package/cjs/OpenChannel/components/OpenChannelMessage.js +0 -295
  673. package/cjs/OpenChannel/components/OpenChannelMessageList.js +0 -153
  674. package/cjs/OpenChannel/components/OpenChannelUI.js +0 -127
  675. package/cjs/OpenChannel/context.js +0 -24
  676. package/cjs/OpenChannel.js +0 -100
  677. package/cjs/OpenChannelList/components/OpenChannelListUI.js +0 -188
  678. package/cjs/OpenChannelList/components/OpenChannelPreview.js +0 -72
  679. package/cjs/OpenChannelList/context.js +0 -17
  680. package/cjs/OpenChannelList.js +0 -67
  681. package/cjs/OpenChannelListProvider-6804c86a.js +0 -439
  682. package/cjs/OpenChannelListProvider-6804c86a.js.map +0 -1
  683. package/cjs/OpenChannelProvider-6ca34d20.js +0 -1894
  684. package/cjs/OpenChannelProvider-6ca34d20.js.map +0 -1
  685. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +0 -145
  686. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +0 -84
  687. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +0 -134
  688. package/cjs/OpenChannelSettings/components/OperatorUI.js +0 -852
  689. package/cjs/OpenChannelSettings/components/ParticipantUI.js +0 -42
  690. package/cjs/OpenChannelSettings/context.js +0 -141
  691. package/cjs/OpenChannelSettings.js +0 -72
  692. package/cjs/RemoveMessageModal-443d81bf.js +0 -42
  693. package/cjs/RemoveMessageModal-443d81bf.js.map +0 -1
  694. package/cjs/SendbirdProvider.js +0 -1200
  695. package/cjs/SendbirdProvider.js.map +0 -1
  696. package/cjs/Thread/components/ParentMessageInfo.js +0 -387
  697. package/cjs/Thread/components/ParentMessageInfoItem.js +0 -226
  698. package/cjs/Thread/components/ThreadHeader.js +0 -66
  699. package/cjs/Thread/components/ThreadList.js +0 -173
  700. package/cjs/Thread/components/ThreadListItem.js +0 -561
  701. package/cjs/Thread/components/ThreadMessageInput.js +0 -232
  702. package/cjs/Thread/components/ThreadUI.js +0 -354
  703. package/cjs/Thread/context.js +0 -27
  704. package/cjs/Thread.js +0 -151
  705. package/cjs/ThreadProvider-48a2b384.js +0 -1704
  706. package/cjs/ThreadProvider-48a2b384.js.map +0 -1
  707. package/cjs/UserProfileContext-218e40b8.js +0 -49
  708. package/cjs/UserProfileContext-218e40b8.js.map +0 -1
  709. package/cjs/VoiceMessageInputWrapper-90c4bdb2.js +0 -176
  710. package/cjs/VoiceMessageInputWrapper-90c4bdb2.js.map +0 -1
  711. package/cjs/VoicePlayer/context.js +0 -17
  712. package/cjs/VoicePlayer/useVoicePlayer.js +0 -88
  713. package/cjs/VoiceRecorder/context.js +0 -166
  714. package/cjs/VoiceRecorder/useVoiceRecorder.js +0 -126
  715. package/cjs/WebAudioUtils-752880d0.js +0 -129
  716. package/cjs/WebAudioUtils-752880d0.js.map +0 -1
  717. package/cjs/_rollupPluginBabelHelpers-a2f03c55.js +0 -70
  718. package/cjs/_rollupPluginBabelHelpers-a2f03c55.js.map +0 -1
  719. package/cjs/actionTypes-12a94d6c.js +0 -10
  720. package/cjs/actionTypes-12a94d6c.js.map +0 -1
  721. package/cjs/color-e2978317.js +0 -37
  722. package/cjs/color-e2978317.js.map +0 -1
  723. package/cjs/compareIds-0f9de3a1.js +0 -17
  724. package/cjs/compareIds-0f9de3a1.js.map +0 -1
  725. package/cjs/const-2371a4db.js +0 -20
  726. package/cjs/const-2371a4db.js.map +0 -1
  727. package/cjs/const-fc4d15a8.js +0 -22
  728. package/cjs/const-fc4d15a8.js.map +0 -1
  729. package/cjs/consts-0374d4b1.js +0 -6
  730. package/cjs/consts-0374d4b1.js.map +0 -1
  731. package/cjs/consts-65d5b30a.js +0 -6
  732. package/cjs/consts-65d5b30a.js.map +0 -1
  733. package/cjs/consts-e09f89f0.js +0 -43
  734. package/cjs/consts-e09f89f0.js.map +0 -1
  735. package/cjs/consts-fb57db79.js +0 -6
  736. package/cjs/consts-fb57db79.js.map +0 -1
  737. package/cjs/context-5404064d.js +0 -20
  738. package/cjs/context-5404064d.js.map +0 -1
  739. package/cjs/dist/index.css +0 -7570
  740. package/cjs/dist/index.css.map +0 -1
  741. package/cjs/index-016f7465.js +0 -456
  742. package/cjs/index-016f7465.js.map +0 -1
  743. package/cjs/index-035bdafb.js +0 -503
  744. package/cjs/index-035bdafb.js.map +0 -1
  745. package/cjs/index-10a942ae.js +0 -57
  746. package/cjs/index-10a942ae.js.map +0 -1
  747. package/cjs/index-347004c1.js +0 -129
  748. package/cjs/index-347004c1.js.map +0 -1
  749. package/cjs/index-3a1678b7.js +0 -118
  750. package/cjs/index-3a1678b7.js.map +0 -1
  751. package/cjs/index-4321dbbb.js +0 -79
  752. package/cjs/index-4321dbbb.js.map +0 -1
  753. package/cjs/index-449ba503.js +0 -178
  754. package/cjs/index-449ba503.js.map +0 -1
  755. package/cjs/index-451eee29.js +0 -202
  756. package/cjs/index-451eee29.js.map +0 -1
  757. package/cjs/index-45f1fd2f.js +0 -68
  758. package/cjs/index-45f1fd2f.js.map +0 -1
  759. package/cjs/index-513a30b7.js +0 -330
  760. package/cjs/index-513a30b7.js.map +0 -1
  761. package/cjs/index-b03881eb.js +0 -149
  762. package/cjs/index-b03881eb.js.map +0 -1
  763. package/cjs/index-b6aac2a6.js +0 -367
  764. package/cjs/index-b6aac2a6.js.map +0 -1
  765. package/cjs/index-b713c814.js +0 -161
  766. package/cjs/index-b713c814.js.map +0 -1
  767. package/cjs/index-dcbd98e1.js +0 -171
  768. package/cjs/index-dcbd98e1.js.map +0 -1
  769. package/cjs/index-ee440b53.js +0 -1857
  770. package/cjs/index-ee440b53.js.map +0 -1
  771. package/cjs/index-f4d89559.js +0 -585
  772. package/cjs/index-f4d89559.js.map +0 -1
  773. package/cjs/index-fea92ea0.js +0 -9
  774. package/cjs/index-fea92ea0.js.map +0 -1
  775. package/cjs/index.js +0 -207
  776. package/cjs/index.module-81f6dfc4.js +0 -6
  777. package/cjs/index.module-81f6dfc4.js.map +0 -1
  778. package/cjs/resolvedReplyType-478d89dd.js +0 -32
  779. package/cjs/resolvedReplyType-478d89dd.js.map +0 -1
  780. package/cjs/sendbirdSelectors.js +0 -586
  781. package/cjs/stringSet-b0d09ab2.js +0 -205
  782. package/cjs/stringSet-b0d09ab2.js.map +0 -1
  783. package/cjs/tokenize-dd712668.js +0 -164
  784. package/cjs/tokenize-dd712668.js.map +0 -1
  785. package/cjs/topics-d64c7836.js +0 -18
  786. package/cjs/topics-d64c7836.js.map +0 -1
  787. package/cjs/types-81253512.js +0 -17
  788. package/cjs/types-81253512.js.map +0 -1
  789. package/cjs/ui/Accordion.js +0 -70
  790. package/cjs/ui/AccordionGroup.js +0 -29
  791. package/cjs/ui/AdminMessage.js +0 -31
  792. package/cjs/ui/Avatar.js +0 -203
  793. package/cjs/ui/Badge.js +0 -35
  794. package/cjs/ui/BottomSheet.js +0 -45
  795. package/cjs/ui/Button.js +0 -79
  796. package/cjs/ui/ChannelAvatar.js +0 -55
  797. package/cjs/ui/ConnectionStatus.js +0 -33
  798. package/cjs/ui/ContextMenu.js +0 -305
  799. package/cjs/ui/DateSeparator.js +0 -34
  800. package/cjs/ui/EmojiReactions.js +0 -335
  801. package/cjs/ui/FileMessageItemBody.js +0 -63
  802. package/cjs/ui/FileViewer.js +0 -137
  803. package/cjs/ui/IconButton.js +0 -49
  804. package/cjs/ui/Input.js +0 -54
  805. package/cjs/ui/Label.js +0 -16
  806. package/cjs/ui/LinkLabel.js +0 -61
  807. package/cjs/ui/MentionLabel.js +0 -97
  808. package/cjs/ui/MentionUserLabel.js +0 -27
  809. package/cjs/ui/MessageContent.js +0 -430
  810. package/cjs/ui/MessageInput.js +0 -846
  811. package/cjs/ui/MessageItemMenu.js +0 -162
  812. package/cjs/ui/MessageItemReactionMenu.js +0 -109
  813. package/cjs/ui/MessageSearchFileItem.js +0 -137
  814. package/cjs/ui/MessageSearchItem.js +0 -104
  815. package/cjs/ui/MessageStatus.js +0 -25
  816. package/cjs/ui/Modal.js +0 -132
  817. package/cjs/ui/OGMessageItemBody.js +0 -133
  818. package/cjs/ui/OpenChannelAdminMessage.js +0 -27
  819. package/cjs/ui/OpenChannelAvatar.js +0 -41
  820. package/cjs/ui/OpenchannelConversationHeader.js +0 -76
  821. package/cjs/ui/OpenchannelFileMessage.js +0 -253
  822. package/cjs/ui/OpenchannelOGMessage.js +0 -351
  823. package/cjs/ui/OpenchannelThumbnailMessage.js +0 -332
  824. package/cjs/ui/OpenchannelUserMessage.js +0 -279
  825. package/cjs/ui/PlaceHolder.js +0 -19
  826. package/cjs/ui/PlaybackTime.js +0 -35
  827. package/cjs/ui/QuoteMessage.js +0 -158
  828. package/cjs/ui/QuoteMessageInput.js +0 -99
  829. package/cjs/ui/ReactionBadge.js +0 -50
  830. package/cjs/ui/ReactionButton.js +0 -47
  831. package/cjs/ui/SortByRow.js +0 -43
  832. package/cjs/ui/TextButton.js +0 -29
  833. package/cjs/ui/TextMessageItemBody.js +0 -79
  834. package/cjs/ui/ThreadReplies.js +0 -85
  835. package/cjs/ui/ThumbnailMessageItemBody.js +0 -77
  836. package/cjs/ui/Toggle.js +0 -202
  837. package/cjs/ui/Tooltip.js +0 -27
  838. package/cjs/ui/UnknownMessageItemBody.js +0 -43
  839. package/cjs/ui/UserListItem.js +0 -133
  840. package/cjs/ui/UserProfile.js +0 -93
  841. package/cjs/ui/VoiceMessageItemBody.js +0 -119
  842. package/cjs/ui/VoiceMessgeInput.js +0 -22
  843. package/cjs/ui/Word.js +0 -107
  844. package/cjs/useDirtyGetMentions-2f9462f1.js +0 -77
  845. package/cjs/useDirtyGetMentions-2f9462f1.js.map +0 -1
  846. package/cjs/useLongPress-d2e3654f.js +0 -87
  847. package/cjs/useLongPress-d2e3654f.js.map +0 -1
  848. package/cjs/useSendbirdStateContext.js +0 -21
  849. package/cjs/utils/message/isVoiceMessage.js +0 -12
  850. package/cjs/utils-29b5d4dd.js +0 -6
  851. package/cjs/utils-29b5d4dd.js.map +0 -1
  852. package/cjs/utils-799ac906.js +0 -28
  853. package/cjs/utils-799ac906.js.map +0 -1
  854. package/cjs/utils-d19c24e7.js +0 -35
  855. package/cjs/utils-d19c24e7.js.map +0 -1
  856. package/cjs/utils-f4dc128f.js +0 -31
  857. package/cjs/utils-f4dc128f.js.map +0 -1
  858. package/cjs/uuid-3462be83.js +0 -15
  859. package/cjs/uuid-3462be83.js.map +0 -1
  860. package/cjs/withSendbird.js +0 -32
  861. package/color-10f2cc07.js +0 -34
  862. package/color-10f2cc07.js.map +0 -1
  863. package/compareIds-ccc43f55.js +0 -15
  864. package/compareIds-ccc43f55.js.map +0 -1
  865. package/const-767f4b57.js +0 -18
  866. package/const-767f4b57.js.map +0 -1
  867. package/const-890116eb.js +0 -13
  868. package/const-890116eb.js.map +0 -1
  869. package/consts-0aca4c3a.js +0 -4
  870. package/consts-0aca4c3a.js.map +0 -1
  871. package/consts-1f057d2b.js +0 -4
  872. package/consts-1f057d2b.js.map +0 -1
  873. package/consts-7e4768e1.js +0 -28
  874. package/consts-7e4768e1.js.map +0 -1
  875. package/consts-da1e0e7e.js +0 -4
  876. package/consts-da1e0e7e.js.map +0 -1
  877. package/context-d11ebc96.js +0 -13
  878. package/context-d11ebc96.js.map +0 -1
  879. package/dist/index.css +0 -7570
  880. package/dist/index.css.map +0 -1
  881. package/index-1d39c765.js +0 -1852
  882. package/index-1d39c765.js.map +0 -1
  883. package/index-1f96f97d.js +0 -76
  884. package/index-1f96f97d.js.map +0 -1
  885. package/index-2862f2a8.js +0 -320
  886. package/index-2862f2a8.js.map +0 -1
  887. package/index-343ce5b1.js +0 -154
  888. package/index-343ce5b1.js.map +0 -1
  889. package/index-5ad0eb61.js +0 -164
  890. package/index-5ad0eb61.js.map +0 -1
  891. package/index-5e5ae563.js +0 -540
  892. package/index-5e5ae563.js.map +0 -1
  893. package/index-63ad98b8.js +0 -7
  894. package/index-63ad98b8.js.map +0 -1
  895. package/index-73542816.js +0 -360
  896. package/index-73542816.js.map +0 -1
  897. package/index-bccf4a37.js +0 -51
  898. package/index-bccf4a37.js.map +0 -1
  899. package/index-c764dea7.js +0 -501
  900. package/index-c764dea7.js.map +0 -1
  901. package/index-cd1c87b8.js +0 -174
  902. package/index-cd1c87b8.js.map +0 -1
  903. package/index-e090ec3e.js +0 -187
  904. package/index-e090ec3e.js.map +0 -1
  905. package/index-e10c31c8.js +0 -110
  906. package/index-e10c31c8.js.map +0 -1
  907. package/index-ea2470a3.js +0 -118
  908. package/index-ea2470a3.js.map +0 -1
  909. package/index-eb11c99c.js +0 -450
  910. package/index-eb11c99c.js.map +0 -1
  911. package/index-f7ed4f21.js +0 -66
  912. package/index-f7ed4f21.js.map +0 -1
  913. package/index-ffea1bf6.js +0 -137
  914. package/index-ffea1bf6.js.map +0 -1
  915. package/index.d.ts +0 -2627
  916. package/index.js +0 -187
  917. package/index.module-44f80561.js +0 -4
  918. package/index.module-44f80561.js.map +0 -1
  919. package/resolvedReplyType-335fb072.js +0 -29
  920. package/resolvedReplyType-335fb072.js.map +0 -1
  921. package/sendbirdSelectors.js +0 -561
  922. package/stringSet-4a6632f7.js +0 -203
  923. package/stringSet-4a6632f7.js.map +0 -1
  924. package/tokenize-ad9d76bd.js +0 -159
  925. package/tokenize-ad9d76bd.js.map +0 -1
  926. package/topics-6de6eb25.js +0 -16
  927. package/topics-6de6eb25.js.map +0 -1
  928. package/types-9f55bf02.js +0 -15
  929. package/types-9f55bf02.js.map +0 -1
  930. package/ui/Accordion.js +0 -61
  931. package/ui/AccordionGroup.js +0 -23
  932. package/ui/AdminMessage.js +0 -25
  933. package/ui/Avatar.js +0 -194
  934. package/ui/Badge.js +0 -29
  935. package/ui/BottomSheet.js +0 -39
  936. package/ui/Button.js +0 -69
  937. package/ui/ChannelAvatar.js +0 -49
  938. package/ui/ConnectionStatus.js +0 -27
  939. package/ui/ContextMenu.js +0 -292
  940. package/ui/DateSeparator.js +0 -28
  941. package/ui/EmojiReactions.js +0 -329
  942. package/ui/FileMessageItemBody.js +0 -57
  943. package/ui/FileViewer.js +0 -128
  944. package/ui/IconButton.js +0 -43
  945. package/ui/Input.js +0 -45
  946. package/ui/Label.js +0 -5
  947. package/ui/LinkLabel.js +0 -50
  948. package/ui/MentionLabel.js +0 -91
  949. package/ui/MentionUserLabel.js +0 -21
  950. package/ui/MessageContent.js +0 -424
  951. package/ui/MessageInput.js +0 -838
  952. package/ui/MessageItemMenu.js +0 -156
  953. package/ui/MessageItemReactionMenu.js +0 -103
  954. package/ui/MessageSearchFileItem.js +0 -131
  955. package/ui/MessageSearchItem.js +0 -98
  956. package/ui/MessageStatus.js +0 -16
  957. package/ui/Modal.js +0 -121
  958. package/ui/OGMessageItemBody.js +0 -127
  959. package/ui/OpenChannelAdminMessage.js +0 -21
  960. package/ui/OpenChannelAvatar.js +0 -35
  961. package/ui/OpenchannelConversationHeader.js +0 -70
  962. package/ui/OpenchannelFileMessage.js +0 -247
  963. package/ui/OpenchannelOGMessage.js +0 -345
  964. package/ui/OpenchannelThumbnailMessage.js +0 -326
  965. package/ui/OpenchannelUserMessage.js +0 -273
  966. package/ui/PlaceHolder.js +0 -10
  967. package/ui/PlaybackTime.js +0 -26
  968. package/ui/QuoteMessage.js +0 -152
  969. package/ui/QuoteMessageInput.js +0 -93
  970. package/ui/ReactionBadge.js +0 -44
  971. package/ui/ReactionButton.js +0 -41
  972. package/ui/SortByRow.js +0 -37
  973. package/ui/TextButton.js +0 -23
  974. package/ui/TextMessageItemBody.js +0 -73
  975. package/ui/ThreadReplies.js +0 -79
  976. package/ui/ThumbnailMessageItemBody.js +0 -71
  977. package/ui/Toggle.js +0 -191
  978. package/ui/Tooltip.js +0 -21
  979. package/ui/UnknownMessageItemBody.js +0 -37
  980. package/ui/UserListItem.js +0 -127
  981. package/ui/UserProfile.js +0 -87
  982. package/ui/VoiceMessageItemBody.js +0 -110
  983. package/ui/VoiceMessgeInput.js +0 -14
  984. package/ui/Word.js +0 -101
  985. package/useDirtyGetMentions-b20104b0.js +0 -75
  986. package/useDirtyGetMentions-b20104b0.js.map +0 -1
  987. package/useLongPress-81ea622f.js +0 -85
  988. package/useLongPress-81ea622f.js.map +0 -1
  989. package/useSendbirdStateContext.js +0 -19
  990. package/utils/message/isVoiceMessage.js +0 -8
  991. package/utils-43a3a6c6.js +0 -29
  992. package/utils-43a3a6c6.js.map +0 -1
  993. package/utils-834dac5f.js +0 -4
  994. package/utils-834dac5f.js.map +0 -1
  995. package/utils-d062897c.js +0 -31
  996. package/utils-d062897c.js.map +0 -1
  997. package/utils-df79f9e8.js +0 -26
  998. package/utils-df79f9e8.js.map +0 -1
  999. package/uuid-79fbb889.js +0 -13
  1000. package/uuid-79fbb889.js.map +0 -1
  1001. package/withSendbird.js +0 -23
  1002. /package/{Channel → dist/Channel}/components/ChannelHeader.js.map +0 -0
  1003. /package/{Channel → dist/Channel}/components/ChannelUI.js.map +0 -0
  1004. /package/{Channel → dist/Channel}/components/FileViewer.js.map +0 -0
  1005. /package/{Channel → dist/Channel}/components/FrozenNotification.js.map +0 -0
  1006. /package/{Channel → dist/Channel}/components/Message.js.map +0 -0
  1007. /package/{Channel → dist/Channel}/components/MessageInput.js.map +0 -0
  1008. /package/{Channel → dist/Channel}/components/MessageList.js.map +0 -0
  1009. /package/{Channel → dist/Channel}/components/RemoveMessageModal.js.map +0 -0
  1010. /package/{Channel → dist/Channel}/components/SuggestedMentionList.js.map +0 -0
  1011. /package/{Channel → dist/Channel}/components/TypingIndicator.js.map +0 -0
  1012. /package/{Channel → dist/Channel}/components/UnreadCount.js.map +0 -0
  1013. /package/{Channel → dist/Channel}/context.js.map +0 -0
  1014. /package/{Channel.js.map → dist/Channel.js.map} +0 -0
  1015. /package/{ChannelList → dist/ChannelList}/components/AddChannel.js.map +0 -0
  1016. /package/{ChannelList → dist/ChannelList}/components/ChannelListHeader.js.map +0 -0
  1017. /package/{ChannelList → dist/ChannelList}/components/ChannelListUI.js.map +0 -0
  1018. /package/{ChannelList → dist/ChannelList}/components/ChannelPreview.js.map +0 -0
  1019. /package/{ChannelList → dist/ChannelList}/components/ChannelPreviewAction.js.map +0 -0
  1020. /package/{ChannelList → dist/ChannelList}/context.js.map +0 -0
  1021. /package/{ChannelList.js.map → dist/ChannelList.js.map} +0 -0
  1022. /package/{ChannelSettings → dist/ChannelSettings}/components/ChannelProfile.js.map +0 -0
  1023. /package/{ChannelSettings → dist/ChannelSettings}/components/ChannelSettingsUI.js.map +0 -0
  1024. /package/{ChannelSettings → dist/ChannelSettings}/components/EditDetailsModal.js.map +0 -0
  1025. /package/{ChannelSettings → dist/ChannelSettings}/components/LeaveChannel.js.map +0 -0
  1026. /package/{ChannelSettings → dist/ChannelSettings}/components/ModerationPanel.js.map +0 -0
  1027. /package/{ChannelSettings → dist/ChannelSettings}/components/UserListItem.js.map +0 -0
  1028. /package/{ChannelSettings → dist/ChannelSettings}/components/UserPanel.js.map +0 -0
  1029. /package/{ChannelSettings → dist/ChannelSettings}/context.js.map +0 -0
  1030. /package/{ChannelSettings.js.map → dist/ChannelSettings.js.map} +0 -0
  1031. /package/{CreateChannel → dist/CreateChannel}/components/CreateChannelUI.js.map +0 -0
  1032. /package/{CreateChannel → dist/CreateChannel}/components/InviteUsers.js.map +0 -0
  1033. /package/{CreateChannel → dist/CreateChannel}/components/SelectChannelType.js.map +0 -0
  1034. /package/{CreateChannel → dist/CreateChannel}/context.js.map +0 -0
  1035. /package/{CreateChannel.js.map → dist/CreateChannel.js.map} +0 -0
  1036. /package/{CreateOpenChannel → dist/CreateOpenChannel}/components/CreateOpenChannelUI.js.map +0 -0
  1037. /package/{CreateOpenChannel → dist/CreateOpenChannel}/context.js.map +0 -0
  1038. /package/{CreateOpenChannel.js.map → dist/CreateOpenChannel.js.map} +0 -0
  1039. /package/{EditUserProfile → dist/EditUserProfile}/components/EditUserProfileUI.js.map +0 -0
  1040. /package/{EditUserProfile → dist/EditUserProfile}/context.js +0 -0
  1041. /package/{EditUserProfile → dist/EditUserProfile}/context.js.map +0 -0
  1042. /package/{EditUserProfile.js.map → dist/EditUserProfile.js.map} +0 -0
  1043. /package/{Message → dist/Message}/context.js +0 -0
  1044. /package/{Message → dist/Message}/context.js.map +0 -0
  1045. /package/{MessageSearch → dist/MessageSearch}/components/MessageSearchUI.js.map +0 -0
  1046. /package/{MessageSearch → dist/MessageSearch}/context.js.map +0 -0
  1047. /package/{MessageSearch.js.map → dist/MessageSearch.js.map} +0 -0
  1048. /package/{OpenChannel → dist/OpenChannel}/components/FrozenChannelNotification.js.map +0 -0
  1049. /package/{OpenChannel → dist/OpenChannel}/components/OpenChannelHeader.js.map +0 -0
  1050. /package/{OpenChannel → dist/OpenChannel}/components/OpenChannelInput.js.map +0 -0
  1051. /package/{OpenChannel → dist/OpenChannel}/components/OpenChannelMessage.js.map +0 -0
  1052. /package/{OpenChannel → dist/OpenChannel}/components/OpenChannelMessageList.js.map +0 -0
  1053. /package/{OpenChannel → dist/OpenChannel}/components/OpenChannelUI.js.map +0 -0
  1054. /package/{OpenChannel → dist/OpenChannel}/context.js.map +0 -0
  1055. /package/{OpenChannel.js.map → dist/OpenChannel.js.map} +0 -0
  1056. /package/{OpenChannelList → dist/OpenChannelList}/components/OpenChannelListUI.js.map +0 -0
  1057. /package/{OpenChannelList → dist/OpenChannelList}/components/OpenChannelPreview.js.map +0 -0
  1058. /package/{OpenChannelList → dist/OpenChannelList}/context.js.map +0 -0
  1059. /package/{OpenChannelList.js.map → dist/OpenChannelList.js.map} +0 -0
  1060. /package/{OpenChannelSettings → dist/OpenChannelSettings}/components/EditDetailsModal.js.map +0 -0
  1061. /package/{OpenChannelSettings → dist/OpenChannelSettings}/components/OpenChannelProfile.js.map +0 -0
  1062. /package/{OpenChannelSettings → dist/OpenChannelSettings}/components/OpenChannelSettingsUI.js.map +0 -0
  1063. /package/{OpenChannelSettings → dist/OpenChannelSettings}/components/OperatorUI.js.map +0 -0
  1064. /package/{OpenChannelSettings → dist/OpenChannelSettings}/components/ParticipantUI.js.map +0 -0
  1065. /package/{OpenChannelSettings → dist/OpenChannelSettings}/context.js.map +0 -0
  1066. /package/{OpenChannelSettings.js.map → dist/OpenChannelSettings.js.map} +0 -0
  1067. /package/{Thread → dist/Thread}/components/ParentMessageInfo.js.map +0 -0
  1068. /package/{Thread → dist/Thread}/components/ParentMessageInfoItem.js.map +0 -0
  1069. /package/{Thread → dist/Thread}/components/ThreadHeader.js.map +0 -0
  1070. /package/{Thread → dist/Thread}/components/ThreadList.js.map +0 -0
  1071. /package/{Thread → dist/Thread}/components/ThreadListItem.js.map +0 -0
  1072. /package/{Thread → dist/Thread}/components/ThreadMessageInput.js.map +0 -0
  1073. /package/{Thread → dist/Thread}/components/ThreadUI.js.map +0 -0
  1074. /package/{Thread → dist/Thread}/context/types.js +0 -0
  1075. /package/{Thread → dist/Thread}/context/types.js.map +0 -0
  1076. /package/{Thread → dist/Thread}/context.js.map +0 -0
  1077. /package/{Thread.js.map → dist/Thread.js.map} +0 -0
  1078. /package/{VoicePlayer → dist/VoicePlayer}/context.js.map +0 -0
  1079. /package/{VoicePlayer → dist/VoicePlayer}/useVoicePlayer.js.map +0 -0
  1080. /package/{VoiceRecorder → dist/VoiceRecorder}/context.js.map +0 -0
  1081. /package/{VoiceRecorder → dist/VoiceRecorder}/useVoiceRecorder.js.map +0 -0
  1082. /package/{cjs → dist/cjs}/Channel/components/ChannelHeader.js.map +0 -0
  1083. /package/{cjs → dist/cjs}/Channel/components/ChannelUI.js.map +0 -0
  1084. /package/{cjs → dist/cjs}/Channel/components/FileViewer.js.map +0 -0
  1085. /package/{cjs → dist/cjs}/Channel/components/FrozenNotification.js.map +0 -0
  1086. /package/{cjs → dist/cjs}/Channel/components/Message.js.map +0 -0
  1087. /package/{cjs → dist/cjs}/Channel/components/MessageInput.js.map +0 -0
  1088. /package/{cjs → dist/cjs}/Channel/components/MessageList.js.map +0 -0
  1089. /package/{cjs → dist/cjs}/Channel/components/RemoveMessageModal.js.map +0 -0
  1090. /package/{cjs → dist/cjs}/Channel/components/SuggestedMentionList.js.map +0 -0
  1091. /package/{cjs → dist/cjs}/Channel/components/TypingIndicator.js.map +0 -0
  1092. /package/{cjs → dist/cjs}/Channel/components/UnreadCount.js.map +0 -0
  1093. /package/{cjs → dist/cjs}/Channel/context.js.map +0 -0
  1094. /package/{cjs → dist/cjs}/Channel.js.map +0 -0
  1095. /package/{cjs → dist/cjs}/ChannelList/components/AddChannel.js.map +0 -0
  1096. /package/{cjs → dist/cjs}/ChannelList/components/ChannelListHeader.js.map +0 -0
  1097. /package/{cjs → dist/cjs}/ChannelList/components/ChannelListUI.js.map +0 -0
  1098. /package/{cjs → dist/cjs}/ChannelList/components/ChannelPreview.js.map +0 -0
  1099. /package/{cjs → dist/cjs}/ChannelList/components/ChannelPreviewAction.js.map +0 -0
  1100. /package/{cjs → dist/cjs}/ChannelList/context.js.map +0 -0
  1101. /package/{cjs → dist/cjs}/ChannelList.js.map +0 -0
  1102. /package/{cjs → dist/cjs}/ChannelSettings/components/ChannelProfile.js.map +0 -0
  1103. /package/{cjs → dist/cjs}/ChannelSettings/components/ChannelSettingsUI.js.map +0 -0
  1104. /package/{cjs → dist/cjs}/ChannelSettings/components/EditDetailsModal.js.map +0 -0
  1105. /package/{cjs → dist/cjs}/ChannelSettings/components/LeaveChannel.js.map +0 -0
  1106. /package/{cjs → dist/cjs}/ChannelSettings/components/ModerationPanel.js.map +0 -0
  1107. /package/{cjs → dist/cjs}/ChannelSettings/components/UserListItem.js.map +0 -0
  1108. /package/{cjs → dist/cjs}/ChannelSettings/components/UserPanel.js.map +0 -0
  1109. /package/{cjs → dist/cjs}/ChannelSettings/context.js.map +0 -0
  1110. /package/{cjs → dist/cjs}/ChannelSettings.js.map +0 -0
  1111. /package/{cjs → dist/cjs}/CreateChannel/components/CreateChannelUI.js.map +0 -0
  1112. /package/{cjs → dist/cjs}/CreateChannel/components/InviteUsers.js.map +0 -0
  1113. /package/{cjs → dist/cjs}/CreateChannel/components/SelectChannelType.js.map +0 -0
  1114. /package/{cjs → dist/cjs}/CreateChannel/context.js.map +0 -0
  1115. /package/{cjs → dist/cjs}/CreateChannel.js.map +0 -0
  1116. /package/{cjs → dist/cjs}/CreateOpenChannel/components/CreateOpenChannelUI.js.map +0 -0
  1117. /package/{cjs → dist/cjs}/CreateOpenChannel/context.js.map +0 -0
  1118. /package/{cjs → dist/cjs}/CreateOpenChannel.js.map +0 -0
  1119. /package/{cjs → dist/cjs}/EditUserProfile/components/EditUserProfileUI.js.map +0 -0
  1120. /package/{cjs → dist/cjs}/EditUserProfile/context.js +0 -0
  1121. /package/{cjs → dist/cjs}/EditUserProfile/context.js.map +0 -0
  1122. /package/{cjs → dist/cjs}/EditUserProfile.js.map +0 -0
  1123. /package/{cjs → dist/cjs}/Message/context.js +0 -0
  1124. /package/{cjs → dist/cjs}/Message/context.js.map +0 -0
  1125. /package/{cjs → dist/cjs}/MessageSearch/components/MessageSearchUI.js.map +0 -0
  1126. /package/{cjs → dist/cjs}/MessageSearch/context.js.map +0 -0
  1127. /package/{cjs → dist/cjs}/MessageSearch.js.map +0 -0
  1128. /package/{cjs → dist/cjs}/OpenChannel/components/FrozenChannelNotification.js.map +0 -0
  1129. /package/{cjs → dist/cjs}/OpenChannel/components/OpenChannelHeader.js.map +0 -0
  1130. /package/{cjs → dist/cjs}/OpenChannel/components/OpenChannelInput.js.map +0 -0
  1131. /package/{cjs → dist/cjs}/OpenChannel/components/OpenChannelMessage.js.map +0 -0
  1132. /package/{cjs → dist/cjs}/OpenChannel/components/OpenChannelMessageList.js.map +0 -0
  1133. /package/{cjs → dist/cjs}/OpenChannel/components/OpenChannelUI.js.map +0 -0
  1134. /package/{cjs → dist/cjs}/OpenChannel/context.js.map +0 -0
  1135. /package/{cjs → dist/cjs}/OpenChannel.js.map +0 -0
  1136. /package/{cjs → dist/cjs}/OpenChannelList/components/OpenChannelListUI.js.map +0 -0
  1137. /package/{cjs → dist/cjs}/OpenChannelList/components/OpenChannelPreview.js.map +0 -0
  1138. /package/{cjs → dist/cjs}/OpenChannelList/context.js.map +0 -0
  1139. /package/{cjs → dist/cjs}/OpenChannelList.js.map +0 -0
  1140. /package/{cjs → dist/cjs}/OpenChannelSettings/components/EditDetailsModal.js.map +0 -0
  1141. /package/{cjs → dist/cjs}/OpenChannelSettings/components/OpenChannelProfile.js.map +0 -0
  1142. /package/{cjs → dist/cjs}/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +0 -0
  1143. /package/{cjs → dist/cjs}/OpenChannelSettings/components/OperatorUI.js.map +0 -0
  1144. /package/{cjs → dist/cjs}/OpenChannelSettings/components/ParticipantUI.js.map +0 -0
  1145. /package/{cjs → dist/cjs}/OpenChannelSettings/context.js.map +0 -0
  1146. /package/{cjs → dist/cjs}/OpenChannelSettings.js.map +0 -0
  1147. /package/{cjs → dist/cjs}/Thread/components/ParentMessageInfo.js.map +0 -0
  1148. /package/{cjs → dist/cjs}/Thread/components/ParentMessageInfoItem.js.map +0 -0
  1149. /package/{cjs → dist/cjs}/Thread/components/ThreadHeader.js.map +0 -0
  1150. /package/{cjs → dist/cjs}/Thread/components/ThreadList.js.map +0 -0
  1151. /package/{cjs → dist/cjs}/Thread/components/ThreadListItem.js.map +0 -0
  1152. /package/{cjs → dist/cjs}/Thread/components/ThreadMessageInput.js.map +0 -0
  1153. /package/{cjs → dist/cjs}/Thread/components/ThreadUI.js.map +0 -0
  1154. /package/{cjs → dist/cjs}/Thread/context/types.js +0 -0
  1155. /package/{cjs → dist/cjs}/Thread/context/types.js.map +0 -0
  1156. /package/{cjs → dist/cjs}/Thread/context.js.map +0 -0
  1157. /package/{cjs → dist/cjs}/Thread.js.map +0 -0
  1158. /package/{cjs → dist/cjs}/VoicePlayer/context.js.map +0 -0
  1159. /package/{cjs → dist/cjs}/VoicePlayer/useVoicePlayer.js.map +0 -0
  1160. /package/{cjs → dist/cjs}/VoiceRecorder/context.js.map +0 -0
  1161. /package/{cjs → dist/cjs}/VoiceRecorder/useVoiceRecorder.js.map +0 -0
  1162. /package/{cjs → dist/cjs}/handlers/ConnectionHandler.js +0 -0
  1163. /package/{cjs → dist/cjs}/handlers/ConnectionHandler.js.map +0 -0
  1164. /package/{cjs → dist/cjs}/handlers/GroupChannelHandler.js +0 -0
  1165. /package/{cjs → dist/cjs}/handlers/GroupChannelHandler.js.map +0 -0
  1166. /package/{cjs → dist/cjs}/handlers/OpenChannelHandler.js +0 -0
  1167. /package/{cjs → dist/cjs}/handlers/OpenChannelHandler.js.map +0 -0
  1168. /package/{cjs → dist/cjs}/handlers/SessionHandler.js +0 -0
  1169. /package/{cjs → dist/cjs}/handlers/SessionHandler.js.map +0 -0
  1170. /package/{cjs → dist/cjs}/handlers/UserEventHandler.js +0 -0
  1171. /package/{cjs → dist/cjs}/handlers/UserEventHandler.js.map +0 -0
  1172. /package/{cjs → dist/cjs}/index.js.map +0 -0
  1173. /package/{cjs → dist/cjs}/lame.all.js +0 -0
  1174. /package/{cjs → dist/cjs}/lame.all.js.map +0 -0
  1175. /package/{cjs → dist/cjs}/sendbirdSelectors.js.map +0 -0
  1176. /package/{cjs → dist/cjs}/ui/Accordion.js.map +0 -0
  1177. /package/{cjs → dist/cjs}/ui/AccordionGroup.js.map +0 -0
  1178. /package/{cjs → dist/cjs}/ui/AdminMessage.js.map +0 -0
  1179. /package/{cjs → dist/cjs}/ui/Avatar.js.map +0 -0
  1180. /package/{cjs → dist/cjs}/ui/Badge.js.map +0 -0
  1181. /package/{cjs → dist/cjs}/ui/BottomSheet.js.map +0 -0
  1182. /package/{cjs → dist/cjs}/ui/Button.js.map +0 -0
  1183. /package/{cjs → dist/cjs}/ui/ChannelAvatar.js.map +0 -0
  1184. /package/{cjs → dist/cjs}/ui/Checkbox.js +0 -0
  1185. /package/{cjs → dist/cjs}/ui/Checkbox.js.map +0 -0
  1186. /package/{cjs → dist/cjs}/ui/ConnectionStatus.js.map +0 -0
  1187. /package/{cjs → dist/cjs}/ui/ContextMenu.js.map +0 -0
  1188. /package/{cjs → dist/cjs}/ui/DateSeparator.js.map +0 -0
  1189. /package/{cjs → dist/cjs}/ui/EmojiReactions.js.map +0 -0
  1190. /package/{cjs → dist/cjs}/ui/FileMessageItemBody.js.map +0 -0
  1191. /package/{cjs → dist/cjs}/ui/FileViewer.js.map +0 -0
  1192. /package/{cjs → dist/cjs}/ui/Icon.js +0 -0
  1193. /package/{cjs → dist/cjs}/ui/Icon.js.map +0 -0
  1194. /package/{cjs → dist/cjs}/ui/IconButton.js.map +0 -0
  1195. /package/{cjs → dist/cjs}/ui/ImageRenderer.js +0 -0
  1196. /package/{cjs → dist/cjs}/ui/ImageRenderer.js.map +0 -0
  1197. /package/{cjs → dist/cjs}/ui/Input.js.map +0 -0
  1198. /package/{cjs → dist/cjs}/ui/Label.js.map +0 -0
  1199. /package/{cjs → dist/cjs}/ui/LinkLabel.js.map +0 -0
  1200. /package/{cjs → dist/cjs}/ui/Loader.js +0 -0
  1201. /package/{cjs → dist/cjs}/ui/Loader.js.map +0 -0
  1202. /package/{cjs → dist/cjs}/ui/MentionLabel.js.map +0 -0
  1203. /package/{cjs → dist/cjs}/ui/MentionUserLabel.js.map +0 -0
  1204. /package/{cjs → dist/cjs}/ui/MessageContent.js.map +0 -0
  1205. /package/{cjs → dist/cjs}/ui/MessageInput.js.map +0 -0
  1206. /package/{cjs → dist/cjs}/ui/MessageItemMenu.js.map +0 -0
  1207. /package/{cjs → dist/cjs}/ui/MessageItemReactionMenu.js.map +0 -0
  1208. /package/{cjs → dist/cjs}/ui/MessageSearchFileItem.js.map +0 -0
  1209. /package/{cjs → dist/cjs}/ui/MessageSearchItem.js.map +0 -0
  1210. /package/{cjs → dist/cjs}/ui/MessageStatus.js.map +0 -0
  1211. /package/{cjs → dist/cjs}/ui/Modal.js.map +0 -0
  1212. /package/{cjs → dist/cjs}/ui/MutedAvatarOverlay.js +0 -0
  1213. /package/{cjs → dist/cjs}/ui/MutedAvatarOverlay.js.map +0 -0
  1214. /package/{cjs → dist/cjs}/ui/OGMessageItemBody.js.map +0 -0
  1215. /package/{cjs → dist/cjs}/ui/OpenChannelAdminMessage.js.map +0 -0
  1216. /package/{cjs → dist/cjs}/ui/OpenChannelAvatar.js.map +0 -0
  1217. /package/{cjs → dist/cjs}/ui/OpenchannelConversationHeader.js.map +0 -0
  1218. /package/{cjs → dist/cjs}/ui/OpenchannelFileMessage.js.map +0 -0
  1219. /package/{cjs → dist/cjs}/ui/OpenchannelOGMessage.js.map +0 -0
  1220. /package/{cjs → dist/cjs}/ui/OpenchannelThumbnailMessage.js.map +0 -0
  1221. /package/{cjs → dist/cjs}/ui/OpenchannelUserMessage.js.map +0 -0
  1222. /package/{cjs → dist/cjs}/ui/PlaceHolder.js.map +0 -0
  1223. /package/{cjs → dist/cjs}/ui/PlaybackTime.js.map +0 -0
  1224. /package/{cjs → dist/cjs}/ui/ProgressBar.js +0 -0
  1225. /package/{cjs → dist/cjs}/ui/ProgressBar.js.map +0 -0
  1226. /package/{cjs → dist/cjs}/ui/QuoteMessage.js.map +0 -0
  1227. /package/{cjs → dist/cjs}/ui/QuoteMessageInput.js.map +0 -0
  1228. /package/{cjs → dist/cjs}/ui/ReactionBadge.js.map +0 -0
  1229. /package/{cjs → dist/cjs}/ui/ReactionButton.js.map +0 -0
  1230. /package/{cjs → dist/cjs}/ui/SortByRow.js.map +0 -0
  1231. /package/{cjs → dist/cjs}/ui/TextButton.js.map +0 -0
  1232. /package/{cjs → dist/cjs}/ui/TextMessageItemBody.js.map +0 -0
  1233. /package/{cjs → dist/cjs}/ui/ThreadReplies.js.map +0 -0
  1234. /package/{cjs → dist/cjs}/ui/ThumbnailMessageItemBody.js.map +0 -0
  1235. /package/{cjs → dist/cjs}/ui/Toggle.js.map +0 -0
  1236. /package/{cjs → dist/cjs}/ui/Tooltip.js.map +0 -0
  1237. /package/{cjs → dist/cjs}/ui/TooltipWrapper.js +0 -0
  1238. /package/{cjs → dist/cjs}/ui/TooltipWrapper.js.map +0 -0
  1239. /package/{cjs → dist/cjs}/ui/UnknownMessageItemBody.js.map +0 -0
  1240. /package/{cjs → dist/cjs}/ui/UserListItem.js.map +0 -0
  1241. /package/{cjs → dist/cjs}/ui/UserProfile.js.map +0 -0
  1242. /package/{cjs → dist/cjs}/ui/VoiceMessageItemBody.js.map +0 -0
  1243. /package/{cjs → dist/cjs}/ui/VoiceMessgeInput.js.map +0 -0
  1244. /package/{cjs → dist/cjs}/ui/Word.js.map +0 -0
  1245. /package/{cjs → dist/cjs}/useSendbirdStateContext.js.map +0 -0
  1246. /package/{cjs → dist/cjs}/utils/message/getOutgoingMessageState.js +0 -0
  1247. /package/{cjs → dist/cjs}/utils/message/getOutgoingMessageState.js.map +0 -0
  1248. /package/{cjs → dist/cjs}/utils/message/isVoiceMessage.js.map +0 -0
  1249. /package/{cjs → dist/cjs}/withSendbird.js.map +0 -0
  1250. /package/{handlers → dist/handlers}/ConnectionHandler.js +0 -0
  1251. /package/{handlers → dist/handlers}/ConnectionHandler.js.map +0 -0
  1252. /package/{handlers → dist/handlers}/GroupChannelHandler.js +0 -0
  1253. /package/{handlers → dist/handlers}/GroupChannelHandler.js.map +0 -0
  1254. /package/{handlers → dist/handlers}/OpenChannelHandler.js +0 -0
  1255. /package/{handlers → dist/handlers}/OpenChannelHandler.js.map +0 -0
  1256. /package/{handlers → dist/handlers}/SessionHandler.js +0 -0
  1257. /package/{handlers → dist/handlers}/SessionHandler.js.map +0 -0
  1258. /package/{handlers → dist/handlers}/UserEventHandler.js +0 -0
  1259. /package/{handlers → dist/handlers}/UserEventHandler.js.map +0 -0
  1260. /package/{index.js.map → dist/index.js.map} +0 -0
  1261. /package/{lame.all.js → dist/lame.all.js} +0 -0
  1262. /package/{lame.all.js.map → dist/lame.all.js.map} +0 -0
  1263. /package/{sendbirdSelectors.js.map → dist/sendbirdSelectors.js.map} +0 -0
  1264. /package/{ui → dist/ui}/Accordion.js.map +0 -0
  1265. /package/{ui → dist/ui}/AccordionGroup.js.map +0 -0
  1266. /package/{ui → dist/ui}/AdminMessage.js.map +0 -0
  1267. /package/{ui → dist/ui}/Avatar.js.map +0 -0
  1268. /package/{ui → dist/ui}/Badge.js.map +0 -0
  1269. /package/{ui → dist/ui}/BottomSheet.js.map +0 -0
  1270. /package/{ui → dist/ui}/Button.js.map +0 -0
  1271. /package/{ui → dist/ui}/ChannelAvatar.js.map +0 -0
  1272. /package/{ui → dist/ui}/Checkbox.js +0 -0
  1273. /package/{ui → dist/ui}/Checkbox.js.map +0 -0
  1274. /package/{ui → dist/ui}/ConnectionStatus.js.map +0 -0
  1275. /package/{ui → dist/ui}/ContextMenu.js.map +0 -0
  1276. /package/{ui → dist/ui}/DateSeparator.js.map +0 -0
  1277. /package/{ui → dist/ui}/EmojiReactions.js.map +0 -0
  1278. /package/{ui → dist/ui}/FileMessageItemBody.js.map +0 -0
  1279. /package/{ui → dist/ui}/FileViewer.js.map +0 -0
  1280. /package/{ui → dist/ui}/Icon.js +0 -0
  1281. /package/{ui → dist/ui}/Icon.js.map +0 -0
  1282. /package/{ui → dist/ui}/IconButton.js.map +0 -0
  1283. /package/{ui → dist/ui}/ImageRenderer.js +0 -0
  1284. /package/{ui → dist/ui}/ImageRenderer.js.map +0 -0
  1285. /package/{ui → dist/ui}/Input.js.map +0 -0
  1286. /package/{ui → dist/ui}/Label.js.map +0 -0
  1287. /package/{ui → dist/ui}/LinkLabel.js.map +0 -0
  1288. /package/{ui → dist/ui}/Loader.js +0 -0
  1289. /package/{ui → dist/ui}/Loader.js.map +0 -0
  1290. /package/{ui → dist/ui}/MentionLabel.js.map +0 -0
  1291. /package/{ui → dist/ui}/MentionUserLabel.js.map +0 -0
  1292. /package/{ui → dist/ui}/MessageContent.js.map +0 -0
  1293. /package/{ui → dist/ui}/MessageInput.js.map +0 -0
  1294. /package/{ui → dist/ui}/MessageItemMenu.js.map +0 -0
  1295. /package/{ui → dist/ui}/MessageItemReactionMenu.js.map +0 -0
  1296. /package/{ui → dist/ui}/MessageSearchFileItem.js.map +0 -0
  1297. /package/{ui → dist/ui}/MessageSearchItem.js.map +0 -0
  1298. /package/{ui → dist/ui}/MessageStatus.js.map +0 -0
  1299. /package/{ui → dist/ui}/Modal.js.map +0 -0
  1300. /package/{ui → dist/ui}/MutedAvatarOverlay.js +0 -0
  1301. /package/{ui → dist/ui}/MutedAvatarOverlay.js.map +0 -0
  1302. /package/{ui → dist/ui}/OGMessageItemBody.js.map +0 -0
  1303. /package/{ui → dist/ui}/OpenChannelAdminMessage.js.map +0 -0
  1304. /package/{ui → dist/ui}/OpenChannelAvatar.js.map +0 -0
  1305. /package/{ui → dist/ui}/OpenchannelConversationHeader.js.map +0 -0
  1306. /package/{ui → dist/ui}/OpenchannelFileMessage.js.map +0 -0
  1307. /package/{ui → dist/ui}/OpenchannelOGMessage.js.map +0 -0
  1308. /package/{ui → dist/ui}/OpenchannelThumbnailMessage.js.map +0 -0
  1309. /package/{ui → dist/ui}/OpenchannelUserMessage.js.map +0 -0
  1310. /package/{ui → dist/ui}/PlaceHolder.js.map +0 -0
  1311. /package/{ui → dist/ui}/PlaybackTime.js.map +0 -0
  1312. /package/{ui → dist/ui}/ProgressBar.js +0 -0
  1313. /package/{ui → dist/ui}/ProgressBar.js.map +0 -0
  1314. /package/{ui → dist/ui}/QuoteMessage.js.map +0 -0
  1315. /package/{ui → dist/ui}/QuoteMessageInput.js.map +0 -0
  1316. /package/{ui → dist/ui}/ReactionBadge.js.map +0 -0
  1317. /package/{ui → dist/ui}/ReactionButton.js.map +0 -0
  1318. /package/{ui → dist/ui}/SortByRow.js.map +0 -0
  1319. /package/{ui → dist/ui}/TextButton.js.map +0 -0
  1320. /package/{ui → dist/ui}/TextMessageItemBody.js.map +0 -0
  1321. /package/{ui → dist/ui}/ThreadReplies.js.map +0 -0
  1322. /package/{ui → dist/ui}/ThumbnailMessageItemBody.js.map +0 -0
  1323. /package/{ui → dist/ui}/Toggle.js.map +0 -0
  1324. /package/{ui → dist/ui}/Tooltip.js.map +0 -0
  1325. /package/{ui → dist/ui}/TooltipWrapper.js +0 -0
  1326. /package/{ui → dist/ui}/TooltipWrapper.js.map +0 -0
  1327. /package/{ui → dist/ui}/UnknownMessageItemBody.js.map +0 -0
  1328. /package/{ui → dist/ui}/UserListItem.js.map +0 -0
  1329. /package/{ui → dist/ui}/UserProfile.js.map +0 -0
  1330. /package/{ui → dist/ui}/VoiceMessageItemBody.js.map +0 -0
  1331. /package/{ui → dist/ui}/VoiceMessgeInput.js.map +0 -0
  1332. /package/{ui → dist/ui}/Word.js.map +0 -0
  1333. /package/{useSendbirdStateContext.js.map → dist/useSendbirdStateContext.js.map} +0 -0
  1334. /package/{utils → dist/utils}/message/getOutgoingMessageState.js +0 -0
  1335. /package/{utils → dist/utils}/message/getOutgoingMessageState.js.map +0 -0
  1336. /package/{utils → dist/utils}/message/isVoiceMessage.js.map +0 -0
  1337. /package/{withSendbird.js.map → dist/withSendbird.js.map} +0 -0
@@ -0,0 +1,2144 @@
1
+ import React__default, { useEffect, useCallback, useRef, useState, useReducer, useMemo } from 'react';
2
+ import { U as UserProfileProvider } from './UserProfileContext-74e9a128.js';
3
+ import useSendbirdStateContext from './useSendbirdStateContext.js';
4
+ import { N as NEXT_RESULT_SIZE, P as PREV_RESULT_SIZE, T as ThreadReplySelectType } from './const-7c266a95.js';
5
+ import { f as format } from './index-5a62f6b7.js';
6
+ import { P as PUBSUB_TOPICS } from './topics-0b30f52b.js';
7
+ import { a as getSendingMessageStatus, b as isReadMessage, c as filterMessageListParams } from './index-99ab01f6.js';
8
+ import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-cc035350.js';
9
+ import { c as compareIds } from './compareIds-367bb030.js';
10
+ import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
11
+ import { u as uuidv4 } from './uuid-8b344dd2.js';
12
+ import { ReplyType, MessageMetaArray } from '@sendbird/chat/message';
13
+ import { b as VOICE_MESSAGE_FILE_NAME, c as VOICE_MESSAGE_MIME_TYPE, M as META_ARRAY_VOICE_DURATION_KEY, d as META_ARRAY_MESSAGE_TYPE_KEY, e as META_ARRAY_MESSAGE_TYPE_VALUE__VOICE } from './consts-44eaef6b.js';
14
+ import { a as getCaseResolvedThreadReplySelectType } from './resolvedReplyType-6bb8f548.js';
15
+
16
+ const RESET_MESSAGES = 'RESET_MESSAGES';
17
+ const FETCH_INITIAL_MESSAGES_START = 'FETCH_INITIAL_MESSAGES_START';
18
+ const FETCH_INITIAL_MESSAGES_SUCCESS = 'FETCH_INITIAL_MESSAGES_SUCCESS';
19
+ const FETCH_INITIAL_MESSAGES_FAILURE = 'FETCH_INITIAL_MESSAGES_FAILURE';
20
+ const FETCH_PREV_MESSAGES_SUCCESS = 'FETCH_PREV_MESSAGES_SUCCESS';
21
+ const FETCH_PREV_MESSAGES_FAILURE = 'FETCH_PREV_MESSAGES_FAILURE';
22
+ const FETCH_NEXT_MESSAGES_SUCCESS = 'FETCH_NEXT_MESSAGES_SUCCESS';
23
+ const FETCH_NEXT_MESSAGES_FAILURE = 'FETCH_NEXT_MESSAGES_FAILURE';
24
+ const SEND_MESSAGEGE_START = 'SEND_MESSAGEGE_START';
25
+ const SEND_MESSAGEGE_SUCESS = 'SEND_MESSAGEGE_SUCESS';
26
+ const SEND_MESSAGEGE_FAILURE = 'SEND_MESSAGEGE_FAILURE';
27
+ const RESEND_MESSAGEGE_START = 'RESEND_MESSAGEGE_START';
28
+ const ON_MESSAGE_RECEIVED = 'ON_MESSAGE_RECEIVED';
29
+ const ON_MESSAGE_UPDATED = 'ON_MESSAGE_UPDATED';
30
+ const ON_MESSAGE_THREAD_INFO_UPDATED = 'ON_MESSAGE_THREAD_INFO_UPDATED';
31
+ const ON_MESSAGE_DELETED = 'ON_MESSAGE_DELETED';
32
+ const ON_MESSAGE_DELETED_BY_REQ_ID = 'ON_MESSAGE_DELETED_BY_REQ_ID';
33
+ const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';
34
+ const SET_CHANNEL_INVALID = 'SET_CHANNEL_INVALID';
35
+ const MARK_AS_READ = 'MARK_AS_READ';
36
+ const ON_REACTION_UPDATED = 'ON_REACTION_UPDATED';
37
+ const SET_EMOJI_CONTAINER = 'SET_EMOJI_CONTAINER';
38
+ const MESSAGE_LIST_PARAMS_CHANGED = 'MESSAGE_LIST_PARAMS_CHANGED';
39
+
40
+ var messageActionTypes = /*#__PURE__*/Object.freeze({
41
+ __proto__: null,
42
+ RESET_MESSAGES: RESET_MESSAGES,
43
+ FETCH_INITIAL_MESSAGES_START: FETCH_INITIAL_MESSAGES_START,
44
+ FETCH_INITIAL_MESSAGES_SUCCESS: FETCH_INITIAL_MESSAGES_SUCCESS,
45
+ FETCH_INITIAL_MESSAGES_FAILURE: FETCH_INITIAL_MESSAGES_FAILURE,
46
+ FETCH_PREV_MESSAGES_SUCCESS: FETCH_PREV_MESSAGES_SUCCESS,
47
+ FETCH_PREV_MESSAGES_FAILURE: FETCH_PREV_MESSAGES_FAILURE,
48
+ FETCH_NEXT_MESSAGES_SUCCESS: FETCH_NEXT_MESSAGES_SUCCESS,
49
+ FETCH_NEXT_MESSAGES_FAILURE: FETCH_NEXT_MESSAGES_FAILURE,
50
+ SEND_MESSAGEGE_START: SEND_MESSAGEGE_START,
51
+ SEND_MESSAGEGE_SUCESS: SEND_MESSAGEGE_SUCESS,
52
+ SEND_MESSAGEGE_FAILURE: SEND_MESSAGEGE_FAILURE,
53
+ RESEND_MESSAGEGE_START: RESEND_MESSAGEGE_START,
54
+ ON_MESSAGE_RECEIVED: ON_MESSAGE_RECEIVED,
55
+ ON_MESSAGE_UPDATED: ON_MESSAGE_UPDATED,
56
+ ON_MESSAGE_THREAD_INFO_UPDATED: ON_MESSAGE_THREAD_INFO_UPDATED,
57
+ ON_MESSAGE_DELETED: ON_MESSAGE_DELETED,
58
+ ON_MESSAGE_DELETED_BY_REQ_ID: ON_MESSAGE_DELETED_BY_REQ_ID,
59
+ SET_CURRENT_CHANNEL: SET_CURRENT_CHANNEL,
60
+ SET_CHANNEL_INVALID: SET_CHANNEL_INVALID,
61
+ MARK_AS_READ: MARK_AS_READ,
62
+ ON_REACTION_UPDATED: ON_REACTION_UPDATED,
63
+ SET_EMOJI_CONTAINER: SET_EMOJI_CONTAINER,
64
+ MESSAGE_LIST_PARAMS_CHANGED: MESSAGE_LIST_PARAMS_CHANGED
65
+ });
66
+
67
+ const UNDEFINED = 'undefined';
68
+ const {
69
+ SUCCEEDED: SUCCEEDED$1,
70
+ FAILED,
71
+ PENDING
72
+ } = getSendingMessageStatus();
73
+ const scrollToRenderedMessage = (scrollRef, initialTimeStamp) => {
74
+ try {
75
+ var _container$querySelec;
76
+ const container = scrollRef.current;
77
+ // scroll into the message with initialTimeStamp
78
+ const element = (_container$querySelec = container.querySelectorAll(`[data-sb-created-at="${initialTimeStamp}"]`)) === null || _container$querySelec === void 0 ? void 0 : _container$querySelec[0];
79
+ if (element) {
80
+ // Calculate the offset of the element from the top of the container
81
+ const containerHeight = container.offsetHeight;
82
+ const elementHeight = element.offsetHeight;
83
+ const elementOffset = (containerHeight - elementHeight) / 2;
84
+ // Set the scroll position of the container to bring the element to the middle
85
+ container.scrollTop = element.offsetTop - elementOffset;
86
+ }
87
+ } catch (_unused) {
88
+ // do nothing
89
+ }
90
+ };
91
+
92
+ /* eslint-disable default-param-last */
93
+ const scrollIntoLast = function () {
94
+ let initialTry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
95
+ let scrollRef = arguments.length > 1 ? arguments[1] : undefined;
96
+ const MAX_TRIES = 10;
97
+ const currentTry = initialTry;
98
+ if (currentTry > MAX_TRIES) {
99
+ return;
100
+ }
101
+ try {
102
+ const scrollDOM = (scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) || document.querySelector('.sendbird-conversation__messages-padding');
103
+ // eslint-disable-next-line no-multi-assign
104
+ scrollDOM.scrollTop = scrollDOM.scrollHeight;
105
+ } catch (error) {
106
+ setTimeout(() => {
107
+ scrollIntoLast(currentTry + 1, scrollRef);
108
+ }, 500 * currentTry);
109
+ }
110
+ };
111
+ const pubSubHandleRemover = subscriber => {
112
+ subscriber.forEach(s => {
113
+ try {
114
+ s.remove();
115
+ } catch (_unused2) {
116
+ //
117
+ }
118
+ });
119
+ };
120
+ const pubSubHandler = _ref => {
121
+ let {
122
+ channelUrl,
123
+ pubSub,
124
+ dispatcher,
125
+ scrollRef
126
+ } = _ref;
127
+ const subscriber = new Map();
128
+ if (!pubSub || !pubSub.subscribe) return subscriber;
129
+ subscriber.set(PUBSUB_TOPICS.SEND_USER_MESSAGE, pubSub.subscribe(PUBSUB_TOPICS.SEND_USER_MESSAGE, msg => {
130
+ const {
131
+ channel,
132
+ message
133
+ } = msg;
134
+ scrollIntoLast(0, scrollRef);
135
+ if (channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
136
+ dispatcher({
137
+ type: SEND_MESSAGEGE_SUCESS,
138
+ payload: message
139
+ });
140
+ }
141
+ }));
142
+ subscriber.set(PUBSUB_TOPICS.SEND_MESSAGE_START, pubSub.subscribe(PUBSUB_TOPICS.SEND_MESSAGE_START, msg => {
143
+ const {
144
+ channel,
145
+ message
146
+ } = msg;
147
+ if (channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
148
+ dispatcher({
149
+ type: SEND_MESSAGEGE_START,
150
+ payload: message
151
+ });
152
+ }
153
+ }));
154
+ subscriber.set(PUBSUB_TOPICS.SEND_FILE_MESSAGE, pubSub.subscribe(PUBSUB_TOPICS.SEND_FILE_MESSAGE, msg => {
155
+ const {
156
+ channel,
157
+ message
158
+ } = msg;
159
+ scrollIntoLast(0, scrollRef);
160
+ if (channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
161
+ dispatcher({
162
+ type: SEND_MESSAGEGE_SUCESS,
163
+ payload: message
164
+ });
165
+ }
166
+ }));
167
+ subscriber.set(PUBSUB_TOPICS.UPDATE_USER_MESSAGE, pubSub.subscribe(PUBSUB_TOPICS.UPDATE_USER_MESSAGE, msg => {
168
+ const {
169
+ channel,
170
+ message,
171
+ fromSelector
172
+ } = msg;
173
+ if (fromSelector && channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
174
+ dispatcher({
175
+ type: ON_MESSAGE_UPDATED,
176
+ payload: {
177
+ channel,
178
+ message
179
+ }
180
+ });
181
+ }
182
+ }));
183
+ subscriber.set(PUBSUB_TOPICS.DELETE_MESSAGE, pubSub.subscribe(PUBSUB_TOPICS.DELETE_MESSAGE, msg => {
184
+ const {
185
+ channel,
186
+ messageId
187
+ } = msg;
188
+ if (channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
189
+ dispatcher({
190
+ type: ON_MESSAGE_DELETED,
191
+ payload: messageId
192
+ });
193
+ }
194
+ }));
195
+ return subscriber;
196
+ };
197
+ const isOperator = function () {
198
+ let groupChannel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
199
+ const myRole = groupChannel === null || groupChannel === void 0 ? void 0 : groupChannel.myRole;
200
+ return myRole === 'operator';
201
+ };
202
+ const isDisabledBecauseFrozen = function () {
203
+ let groupChannel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
204
+ const isFrozen = groupChannel === null || groupChannel === void 0 ? void 0 : groupChannel.isFrozen;
205
+ return isFrozen && !isOperator(groupChannel);
206
+ };
207
+ const isDisabledBecauseMuted = function () {
208
+ let groupChannel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
209
+ const myMutedState = groupChannel === null || groupChannel === void 0 ? void 0 : groupChannel.myMutedState;
210
+ return myMutedState === 'muted';
211
+ };
212
+ const getAllEmojisMapFromEmojiContainer = function () {
213
+ let emojiContainer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
214
+ const {
215
+ emojiCategories = []
216
+ } = emojiContainer;
217
+ const allEmojisMap = new Map();
218
+ for (let categoryIndex = 0; categoryIndex < emojiCategories.length; categoryIndex += 1) {
219
+ const {
220
+ emojis
221
+ } = emojiCategories[categoryIndex];
222
+ for (let emojiIndex = 0; emojiIndex < emojis.length; emojiIndex += 1) {
223
+ const {
224
+ key,
225
+ url
226
+ } = emojis[emojiIndex];
227
+ allEmojisMap.set(key, url);
228
+ }
229
+ }
230
+ return allEmojisMap;
231
+ };
232
+ const getNicknamesMapFromMembers = function () {
233
+ let members = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
234
+ const nicknamesMap = new Map();
235
+ for (let memberIndex = 0; memberIndex < members.length; memberIndex += 1) {
236
+ const {
237
+ userId,
238
+ nickname
239
+ } = members[memberIndex];
240
+ nicknamesMap.set(userId, nickname);
241
+ }
242
+ return nicknamesMap;
243
+ };
244
+ const getUniqueListBy = (arr, key) => [...new Map(arr.map(item => [item[key], item])).values()];
245
+ const getUniqueListByMessageId = arr => getUniqueListBy(arr, 'messageId');
246
+ const sortByCreatedAt = messages => messages.sort((a, b) => a.createdAt - b.createdAt);
247
+ const mergeAndSortMessages = (oldMessages, newMessages) => {
248
+ const lastOldMessage = oldMessages[oldMessages.length - 1];
249
+ const firstNewMessage = newMessages[0];
250
+ // If the last message of oldMessages is older than the first message of newMessages,
251
+ // then we can safely append newMessages to oldMessages.
252
+ if ((lastOldMessage === null || lastOldMessage === void 0 ? void 0 : lastOldMessage.createdAt) < (firstNewMessage === null || firstNewMessage === void 0 ? void 0 : firstNewMessage.createdAt)) {
253
+ return [...oldMessages, ...newMessages];
254
+ }
255
+
256
+ // todo: optimize this
257
+ // If the last message of oldMessages is newer than the first message of newMessages,
258
+ // then we need to merge the two arrays and sort them by createdAt.
259
+ const mergedMessages = [...oldMessages, ...newMessages];
260
+ const unique = getUniqueListByMessageId(mergedMessages);
261
+ return sortByCreatedAt(unique);
262
+ };
263
+ const getMessageCreatedAt = message => format(message.createdAt, 'p');
264
+ const isSameGroup = (message, comparingMessage, currentChannel) => {
265
+ var _message$sender, _comparingMessage$sen, _message$sender2, _comparingMessage$sen2;
266
+ if (!(message && comparingMessage && message.messageType && message.messageType !== 'admin' && comparingMessage.messageType && (comparingMessage === null || comparingMessage === void 0 ? void 0 : comparingMessage.messageType) !== 'admin' && message !== null && message !== void 0 && message.sender && comparingMessage !== null && comparingMessage !== void 0 && comparingMessage.sender && message !== null && message !== void 0 && message.createdAt && comparingMessage !== null && comparingMessage !== void 0 && comparingMessage.createdAt && message !== null && message !== void 0 && (_message$sender = message.sender) !== null && _message$sender !== void 0 && _message$sender.userId && comparingMessage !== null && comparingMessage !== void 0 && (_comparingMessage$sen = comparingMessage.sender) !== null && _comparingMessage$sen !== void 0 && _comparingMessage$sen.userId)) {
267
+ return false;
268
+ }
269
+ return (message === null || message === void 0 ? void 0 : message.sendingStatus) === (comparingMessage === null || comparingMessage === void 0 ? void 0 : comparingMessage.sendingStatus) && (message === null || message === void 0 ? void 0 : (_message$sender2 = message.sender) === null || _message$sender2 === void 0 ? void 0 : _message$sender2.userId) === (comparingMessage === null || comparingMessage === void 0 ? void 0 : (_comparingMessage$sen2 = comparingMessage.sender) === null || _comparingMessage$sen2 === void 0 ? void 0 : _comparingMessage$sen2.userId) && getMessageCreatedAt(message) === getMessageCreatedAt(comparingMessage) && isReadMessage(currentChannel, message) === isReadMessage(currentChannel, comparingMessage);
270
+ };
271
+ const compareMessagesForGrouping = (prevMessage, currMessage, nextMessage, currentChannel, replyType) => {
272
+ if (replyType === 'THREAD' && currMessage !== null && currMessage !== void 0 && currMessage.threadInfo) {
273
+ return [false, false];
274
+ }
275
+ const sendingStatus = (currMessage === null || currMessage === void 0 ? void 0 : currMessage.sendingStatus) || '';
276
+ const isAcceptable = sendingStatus !== 'pending' && sendingStatus !== 'failed';
277
+ return [isSameGroup(prevMessage, currMessage, currentChannel) && isAcceptable, isSameGroup(currMessage, nextMessage, currentChannel) && isAcceptable];
278
+ };
279
+ const passUnsuccessfullMessages = (allMessages, newMessage) => {
280
+ const {
281
+ sendingStatus = UNDEFINED
282
+ } = newMessage;
283
+ if (sendingStatus === SUCCEEDED$1 || sendingStatus === PENDING) {
284
+ const lastIndexOfSucceededMessage = allMessages.map(message => message.sendingStatus || (message.isAdminMessage && message.isAdminMessage() ? SUCCEEDED$1 : UNDEFINED)).lastIndexOf(SUCCEEDED$1);
285
+ if (lastIndexOfSucceededMessage + 1 < allMessages.length) {
286
+ const messages = [...allMessages];
287
+ messages.splice(lastIndexOfSucceededMessage + 1, 0, newMessage);
288
+ return messages;
289
+ }
290
+ }
291
+ return [...allMessages, newMessage];
292
+ };
293
+ const pxToNumber = px => {
294
+ if (typeof px === 'number') {
295
+ return px;
296
+ }
297
+ if (typeof px === 'string') {
298
+ const parsed = Number.parseFloat(px);
299
+ if (!Number.isNaN(parsed)) {
300
+ return parsed;
301
+ }
302
+ }
303
+ return null;
304
+ };
305
+ const isAboutSame = (a, b, px) => Math.abs(a - b) <= px;
306
+
307
+ /**
308
+ * This function helps consider the every condition
309
+ * related to enabling emoji reaction feature.
310
+ */
311
+
312
+ function getIsReactionEnabled(_ref) {
313
+ let {
314
+ isBroadcast = false,
315
+ isSuper = false,
316
+ globalLevel = true,
317
+ moduleLevel
318
+ } = _ref;
319
+ return !(isBroadcast || isSuper) && (moduleLevel !== null && moduleLevel !== void 0 ? moduleLevel : globalLevel);
320
+ }
321
+
322
+ var messagesInitialState = {
323
+ initialized: false,
324
+ loading: true,
325
+ allMessages: [],
326
+ currentGroupChannel: {
327
+ members: []
328
+ },
329
+ // for scrollup
330
+ hasMorePrev: false,
331
+ oldestMessageTimeStamp: 0,
332
+ // for scroll down
333
+ // onScrollDownCallback is added for navigation to different timestamps on messageSearch
334
+ // hasMorePrev, onScrollCallback -> scroll up(default behavior)
335
+ // hasMoreNext, onScrollDownCallback -> scroll down
336
+ hasMoreNext: false,
337
+ latestMessageTimeStamp: 0,
338
+ emojiContainer: {},
339
+ unreadSince: null,
340
+ /**
341
+ * unreadSince is a formatted date information string
342
+ * It's used only for the {unreadSince && <UnreadCount time={unreadSince} />}
343
+ */
344
+ isInvalid: false,
345
+ messageListParams: null
346
+ };
347
+
348
+ const {
349
+ SUCCEEDED
350
+ } = getSendingMessageStatus();
351
+ const getOldestMessageTimeStamp = function () {
352
+ let messages = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
353
+ const oldestMessage = messages[0];
354
+ return oldestMessage && oldestMessage.createdAt || null;
355
+ };
356
+ const getLatestMessageTimeStamp = function () {
357
+ let messages = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
358
+ const latestMessage = messages[messages.length - 1];
359
+ return latestMessage && latestMessage.createdAt || null;
360
+ };
361
+ function reducer(state, action) {
362
+ var _state$currentGroupCh7, _action$payload, _action$payload$chann;
363
+ switch (action.type) {
364
+ case RESET_MESSAGES:
365
+ return _objectSpread2(_objectSpread2({}, state), {}, {
366
+ // when user switches channel, if the previous channel `hasMorePrev`
367
+ // the onScroll gets called twice, setting hasMorePrev false prevents this
368
+ hasMorePrev: false,
369
+ hasMoreNext: false,
370
+ allMessages: []
371
+ });
372
+ case FETCH_INITIAL_MESSAGES_START:
373
+ {
374
+ return _objectSpread2(_objectSpread2({}, state), {}, {
375
+ loading: true,
376
+ allMessages: [...state.allMessages.filter(m => m.sendingStatus !== SUCCEEDED)]
377
+ });
378
+ }
379
+ case FETCH_INITIAL_MESSAGES_SUCCESS:
380
+ {
381
+ var _state$currentGroupCh;
382
+ const {
383
+ currentGroupChannel,
384
+ messages
385
+ } = action.payload;
386
+ if (!((currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url) === ((_state$currentGroupCh = state.currentGroupChannel) === null || _state$currentGroupCh === void 0 ? void 0 : _state$currentGroupCh.url))) {
387
+ return state;
388
+ }
389
+ const oldestMessageTimeStamp = getOldestMessageTimeStamp(messages);
390
+ const latestMessageTimeStamp = getLatestMessageTimeStamp(messages);
391
+ return _objectSpread2(_objectSpread2({}, state), {}, {
392
+ loading: false,
393
+ initialized: true,
394
+ hasMorePrev: true,
395
+ hasMoreNext: true,
396
+ oldestMessageTimeStamp,
397
+ latestMessageTimeStamp,
398
+ allMessages: [...messages]
399
+ });
400
+ }
401
+ case FETCH_PREV_MESSAGES_SUCCESS:
402
+ {
403
+ var _state$currentGroupCh2, _messages$length, _state$messageListPar, _state$messageListPar2;
404
+ const {
405
+ currentGroupChannel,
406
+ messages
407
+ } = action.payload;
408
+ if (!((currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url) === ((_state$currentGroupCh2 = state.currentGroupChannel) === null || _state$currentGroupCh2 === void 0 ? void 0 : _state$currentGroupCh2.url))) {
409
+ return state;
410
+ }
411
+ const hasMorePrev = ((_messages$length = messages === null || messages === void 0 ? void 0 : messages.length) !== null && _messages$length !== void 0 ? _messages$length : 0) >= ((_state$messageListPar = state === null || state === void 0 ? void 0 : (_state$messageListPar2 = state.messageListParams) === null || _state$messageListPar2 === void 0 ? void 0 : _state$messageListPar2.prevResultSize) !== null && _state$messageListPar !== void 0 ? _state$messageListPar : PREV_RESULT_SIZE) + 1;
412
+ const oldestMessageTimeStamp = getOldestMessageTimeStamp(messages);
413
+
414
+ // Remove duplicated messages
415
+ const duplicatedMessageIds = [];
416
+ const updatedOldMessages = state.allMessages.map(msg => {
417
+ const duplicatedMessage = messages.find(_ref => {
418
+ let {
419
+ messageId
420
+ } = _ref;
421
+ return compareIds(messageId, msg.messageId);
422
+ });
423
+ if (!duplicatedMessage) {
424
+ return msg;
425
+ }
426
+ duplicatedMessageIds.push(duplicatedMessage.messageId);
427
+ return duplicatedMessage.updatedAt > msg.updatedAt ? duplicatedMessage : msg;
428
+ });
429
+ const filteredNewMessages = duplicatedMessageIds.length > 0 ? messages.filter(msg => !duplicatedMessageIds.find(messageId => compareIds(messageId, msg.messageId))) : messages;
430
+ return _objectSpread2(_objectSpread2({}, state), {}, {
431
+ hasMorePrev,
432
+ oldestMessageTimeStamp,
433
+ allMessages: [...filteredNewMessages, ...updatedOldMessages]
434
+ });
435
+ }
436
+ case FETCH_NEXT_MESSAGES_SUCCESS:
437
+ {
438
+ var _state$currentGroupCh3, _messages$length2, _state$messageListPar3, _state$messageListPar4;
439
+ const {
440
+ currentGroupChannel,
441
+ messages
442
+ } = action.payload;
443
+ if (!((currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url) === ((_state$currentGroupCh3 = state.currentGroupChannel) === null || _state$currentGroupCh3 === void 0 ? void 0 : _state$currentGroupCh3.url))) {
444
+ return state;
445
+ }
446
+ const hasMoreNext = ((_messages$length2 = messages === null || messages === void 0 ? void 0 : messages.length) !== null && _messages$length2 !== void 0 ? _messages$length2 : 0) === ((_state$messageListPar3 = state === null || state === void 0 ? void 0 : (_state$messageListPar4 = state.messageListParams) === null || _state$messageListPar4 === void 0 ? void 0 : _state$messageListPar4.nextResultSize) !== null && _state$messageListPar3 !== void 0 ? _state$messageListPar3 : NEXT_RESULT_SIZE) + 1;
447
+ const latestMessageTimeStamp = getLatestMessageTimeStamp(messages);
448
+
449
+ // sort ~
450
+ const sortedMessages = mergeAndSortMessages(state.allMessages, messages);
451
+ return _objectSpread2(_objectSpread2({}, state), {}, {
452
+ hasMoreNext,
453
+ latestMessageTimeStamp,
454
+ allMessages: sortedMessages
455
+ });
456
+ }
457
+ case FETCH_INITIAL_MESSAGES_FAILURE:
458
+ case FETCH_PREV_MESSAGES_FAILURE:
459
+ case FETCH_NEXT_MESSAGES_FAILURE:
460
+ {
461
+ var _state$currentGroupCh4;
462
+ const {
463
+ currentGroupChannel
464
+ } = action.payload;
465
+ if ((currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url) !== (state === null || state === void 0 ? void 0 : (_state$currentGroupCh4 = state.currentGroupChannel) === null || _state$currentGroupCh4 === void 0 ? void 0 : _state$currentGroupCh4.url)) {
466
+ return state;
467
+ }
468
+ return _objectSpread2(_objectSpread2({}, state), {}, {
469
+ loading: false,
470
+ initialized: false,
471
+ allMessages: [],
472
+ hasMorePrev: false,
473
+ hasMoreNext: false,
474
+ oldestMessageTimeStamp: null,
475
+ latestMessageTimeStamp: null
476
+ });
477
+ }
478
+ case SEND_MESSAGEGE_START:
479
+ return _objectSpread2(_objectSpread2({}, state), {}, {
480
+ allMessages: [...state.allMessages, _objectSpread2({}, action.payload)]
481
+ });
482
+ case SEND_MESSAGEGE_SUCESS:
483
+ {
484
+ const message = action.payload;
485
+ const filteredMessages = state.allMessages.filter(m => (m === null || m === void 0 ? void 0 : m.reqId) !== (message === null || message === void 0 ? void 0 : message.reqId));
486
+ const pendingIndex = filteredMessages.findIndex(msg => (msg === null || msg === void 0 ? void 0 : msg.sendingStatus) === 'pending' || (msg === null || msg === void 0 ? void 0 : msg.sendingStatus) === 'failed');
487
+ return _objectSpread2(_objectSpread2({}, state), {}, {
488
+ allMessages: pendingIndex > -1 ? [...filteredMessages.slice(0, pendingIndex), message, ...filteredMessages.slice(pendingIndex)] : [...filteredMessages, message]
489
+ });
490
+ }
491
+ case SEND_MESSAGEGE_FAILURE:
492
+ {
493
+ // eslint-disable-next-line no-param-reassign
494
+ action.payload.failed = true;
495
+ return _objectSpread2(_objectSpread2({}, state), {}, {
496
+ allMessages: state.allMessages.map(m => compareIds(m.reqId, action.payload.reqId) ? action.payload : m)
497
+ });
498
+ }
499
+ case SET_CURRENT_CHANNEL:
500
+ {
501
+ return _objectSpread2(_objectSpread2({}, state), {}, {
502
+ currentGroupChannel: action.payload,
503
+ isInvalid: false
504
+ });
505
+ }
506
+ case SET_CHANNEL_INVALID:
507
+ {
508
+ return _objectSpread2(_objectSpread2({}, state), {}, {
509
+ currentGroupChannel: null,
510
+ isInvalid: true
511
+ });
512
+ }
513
+ case ON_MESSAGE_RECEIVED:
514
+ {
515
+ const {
516
+ channel,
517
+ message
518
+ } = action.payload;
519
+ const {
520
+ members
521
+ } = channel;
522
+ const {
523
+ sender
524
+ } = message;
525
+ const {
526
+ currentGroupChannel = {},
527
+ unreadSince
528
+ } = state;
529
+ const currentGroupChannelUrl = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url;
530
+ if (!compareIds(channel === null || channel === void 0 ? void 0 : channel.url, currentGroupChannelUrl)) {
531
+ return state;
532
+ }
533
+ // Excluded overlapping messages
534
+ if (state.allMessages.some(msg => msg.messageId === message.messageId)) {
535
+ return state;
536
+ }
537
+ // Filter by userFilledQuery
538
+ if (state.messageListParams && !filterMessageListParams(state.messageListParams, message)) {
539
+ return state;
540
+ }
541
+ if (message.isAdminMessage && message.isAdminMessage()) {
542
+ return _objectSpread2(_objectSpread2({}, state), {}, {
543
+ allMessages: passUnsuccessfullMessages(state.allMessages, message)
544
+ });
545
+ }
546
+
547
+ // Update members when sender profileUrl, nickname, friendName has been changed
548
+ const senderMember = members === null || members === void 0 ? void 0 : members.find(m => (m === null || m === void 0 ? void 0 : m.userId) === (sender === null || sender === void 0 ? void 0 : sender.userId));
549
+ if ((senderMember === null || senderMember === void 0 ? void 0 : senderMember.profileUrl) !== (sender === null || sender === void 0 ? void 0 : sender.profileUrl) || (senderMember === null || senderMember === void 0 ? void 0 : senderMember.friendName) !== (sender === null || sender === void 0 ? void 0 : sender.friendName) || (senderMember === null || senderMember === void 0 ? void 0 : senderMember.nickname) !== (sender === null || sender === void 0 ? void 0 : sender.nickname)) {
550
+ channel.members = members.map(member => {
551
+ if (member.userId === sender.userId) {
552
+ return sender;
553
+ }
554
+ return member;
555
+ });
556
+ }
557
+ return _objectSpread2(_objectSpread2({}, state), {}, {
558
+ currentGroupChannel: channel,
559
+ unreadSince: state !== null && state !== void 0 && state.unreadSince ? unreadSince : format(new Date(), 'p MMM dd'),
560
+ allMessages: passUnsuccessfullMessages(state.allMessages, message)
561
+ });
562
+ }
563
+ case ON_MESSAGE_UPDATED:
564
+ {
565
+ var _state$currentGroupCh5;
566
+ const {
567
+ channel,
568
+ message
569
+ } = action.payload;
570
+ const currentGroupChannelUrl = (state === null || state === void 0 ? void 0 : (_state$currentGroupCh5 = state.currentGroupChannel) === null || _state$currentGroupCh5 === void 0 ? void 0 : _state$currentGroupCh5.url) || '';
571
+ if (!compareIds(channel === null || channel === void 0 ? void 0 : channel.url, currentGroupChannelUrl)) {
572
+ return state; // Ignore event when it is not for the current channel
573
+ }
574
+
575
+ if (state.messageListParams && !filterMessageListParams(state.messageListParams, message)) {
576
+ // Delete the message if it doesn't match to the params anymore
577
+ return _objectSpread2(_objectSpread2({}, state), {}, {
578
+ allMessages: state.allMessages.filter(m => !compareIds(m.messageId, message === null || message === void 0 ? void 0 : message.messageId))
579
+ });
580
+ }
581
+ return _objectSpread2(_objectSpread2({}, state), {}, {
582
+ allMessages: state.allMessages.map(m => {
583
+ if (compareIds(m.messageId, message.messageId)) {
584
+ return message;
585
+ }
586
+ if (compareIds(m.parentMessageId, message.messageId)) {
587
+ m.parentMessage = message; // eslint-disable-line no-param-reassign
588
+ }
589
+
590
+ return m;
591
+ })
592
+ });
593
+ }
594
+ case ON_MESSAGE_THREAD_INFO_UPDATED:
595
+ {
596
+ var _state$currentGroupCh6;
597
+ const {
598
+ channel,
599
+ event
600
+ } = action.payload;
601
+ const {
602
+ channelUrl,
603
+ threadInfo,
604
+ targetMessageId
605
+ } = event;
606
+ const currentGroupChannelUrl = (state === null || state === void 0 ? void 0 : (_state$currentGroupCh6 = state.currentGroupChannel) === null || _state$currentGroupCh6 === void 0 ? void 0 : _state$currentGroupCh6.url) || '';
607
+ if (!compareIds(channel === null || channel === void 0 ? void 0 : channel.url, currentGroupChannelUrl) || !compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
608
+ return state; // Ignore event when it is not for the current channel
609
+ }
610
+
611
+ return _objectSpread2(_objectSpread2({}, state), {}, {
612
+ allMessages: state.allMessages.map(m => {
613
+ if (compareIds(m.messageId, targetMessageId)) {
614
+ // eslint-disable-next-line no-param-reassign
615
+ m.threadInfo = threadInfo; // Upsert threadInfo to the target message
616
+ }
617
+
618
+ return m;
619
+ })
620
+ });
621
+ }
622
+ case RESEND_MESSAGEGE_START:
623
+ return _objectSpread2(_objectSpread2({}, state), {}, {
624
+ allMessages: state.allMessages.map(m => compareIds(m.reqId, action.payload.reqId) ? action.payload : m)
625
+ });
626
+ case MARK_AS_READ:
627
+ if (((_state$currentGroupCh7 = state.currentGroupChannel) === null || _state$currentGroupCh7 === void 0 ? void 0 : _state$currentGroupCh7.url) !== ((_action$payload = action.payload) === null || _action$payload === void 0 ? void 0 : (_action$payload$chann = _action$payload.channel) === null || _action$payload$chann === void 0 ? void 0 : _action$payload$chann.url)) {
628
+ return state;
629
+ }
630
+ return _objectSpread2(_objectSpread2({}, state), {}, {
631
+ unreadSince: null
632
+ });
633
+ case ON_MESSAGE_DELETED:
634
+ return _objectSpread2(_objectSpread2({}, state), {}, {
635
+ allMessages: state.allMessages.filter(m => !compareIds(m.messageId, action.payload))
636
+ });
637
+ case ON_MESSAGE_DELETED_BY_REQ_ID:
638
+ return _objectSpread2(_objectSpread2({}, state), {}, {
639
+ allMessages: state.allMessages.filter(m => !compareIds(m.reqId, action.payload))
640
+ });
641
+ case SET_EMOJI_CONTAINER:
642
+ {
643
+ return _objectSpread2(_objectSpread2({}, state), {}, {
644
+ emojiContainer: action.payload
645
+ });
646
+ }
647
+ case ON_REACTION_UPDATED:
648
+ {
649
+ return _objectSpread2(_objectSpread2({}, state), {}, {
650
+ allMessages: state.allMessages.map(m => {
651
+ if (compareIds(m.messageId, action.payload.messageId)) {
652
+ if (m.applyReactionEvent && typeof m.applyReactionEvent === 'function') {
653
+ m.applyReactionEvent(action.payload);
654
+ }
655
+ return m;
656
+ }
657
+ return m;
658
+ })
659
+ });
660
+ }
661
+ case MESSAGE_LIST_PARAMS_CHANGED:
662
+ {
663
+ return _objectSpread2(_objectSpread2({}, state), {}, {
664
+ messageListParams: action.payload
665
+ });
666
+ }
667
+ default:
668
+ return state;
669
+ }
670
+ }
671
+
672
+ /**
673
+ * Handles ChannelEvents and send values to dispatcher using messagesDispatcher
674
+ * messagesDispatcher: Dispatcher
675
+ * sdk: sdkInstance
676
+ * logger: loggerInstance
677
+ * channelUrl: string
678
+ * sdkInit: bool
679
+ */
680
+
681
+ const DELIVERY_RECIPT = 'delivery_receipt';
682
+ function useHandleChannelEvents(_ref, _ref2) {
683
+ var _store$stores$sdkStor, _store$stores$sdkStor2, _store$stores$sdkStor3;
684
+ let {
685
+ sdkInit,
686
+ currentUserId,
687
+ currentGroupChannel,
688
+ disableMarkAsRead
689
+ } = _ref;
690
+ let {
691
+ sdk,
692
+ logger,
693
+ scrollRef,
694
+ setQuoteMessage,
695
+ messagesDispatcher
696
+ } = _ref2;
697
+ const store = useSendbirdStateContext();
698
+ const {
699
+ markAsReadScheduler,
700
+ markAsDeliveredScheduler,
701
+ disableMarkAsDelivered
702
+ } = store.config;
703
+ const canSetMarkAsDelivered = (_store$stores$sdkStor = store.stores.sdkStore.sdk) === null || _store$stores$sdkStor === void 0 ? void 0 : (_store$stores$sdkStor2 = _store$stores$sdkStor.appInfo) === null || _store$stores$sdkStor2 === void 0 ? void 0 : (_store$stores$sdkStor3 = _store$stores$sdkStor2.premiumFeatureList) === null || _store$stores$sdkStor3 === void 0 ? void 0 : _store$stores$sdkStor3.find(feature => feature === DELIVERY_RECIPT);
704
+ useEffect(() => {
705
+ const channelUrl = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url;
706
+ const channelHandlerId = uuidv4();
707
+ if (channelUrl && sdkInit) {
708
+ var _sdk$groupChannel;
709
+ const channelHandler = {
710
+ onMessageReceived: (channel, message) => {
711
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
712
+ var _document$getElementB, _document$getElementB2;
713
+ let scrollToEnd = false;
714
+ try {
715
+ const {
716
+ current
717
+ } = scrollRef;
718
+ scrollToEnd = current.offsetHeight + current.scrollTop >= current.scrollHeight - 10;
719
+ // 10 is a buffer
720
+ } catch (error) {
721
+ //
722
+ }
723
+ logger.info('Channel | useHandleChannelEvents: onMessageReceived', message);
724
+ messagesDispatcher({
725
+ type: ON_MESSAGE_RECEIVED,
726
+ payload: {
727
+ channel,
728
+ message
729
+ }
730
+ });
731
+ if (scrollToEnd && ((_document$getElementB = document.getElementById('sendbird-dropdown-portal')) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.childElementCount) === 0 && ((_document$getElementB2 = document.getElementById('sendbird-emoji-list-portal')) === null || _document$getElementB2 === void 0 ? void 0 : _document$getElementB2.childElementCount) === 0) {
732
+ // and !openContextMenu
733
+ try {
734
+ setTimeout(() => {
735
+ scrollIntoLast(0, scrollRef);
736
+ });
737
+ if (!disableMarkAsRead) {
738
+ markAsReadScheduler.push(currentGroupChannel);
739
+ }
740
+ if (canSetMarkAsDelivered && !disableMarkAsDelivered) {
741
+ markAsDeliveredScheduler.push(currentGroupChannel);
742
+ }
743
+ } catch (error) {
744
+ logger.warning('Channel | onMessageReceived | scroll to end failed');
745
+ }
746
+ }
747
+ }
748
+ },
749
+ onUnreadMemberStatusUpdated: channel => {
750
+ logger.info('Channel | useHandleChannelEvents: onUnreadMemberStatusUpdated', channel);
751
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
752
+ messagesDispatcher({
753
+ type: SET_CURRENT_CHANNEL,
754
+ payload: channel
755
+ });
756
+ }
757
+ },
758
+ // before(onDeliveryReceiptUpdated)
759
+ onUndeliveredMemberStatusUpdated: channel => {
760
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
761
+ logger.info('Channel | useHandleChannelEvents: onDeliveryReceiptUpdated', channel);
762
+ messagesDispatcher({
763
+ type: SET_CURRENT_CHANNEL,
764
+ payload: channel
765
+ });
766
+ }
767
+ },
768
+ onMessageUpdated: (channel, message) => {
769
+ logger.info('Channel | useHandleChannelEvents: onMessageUpdated', message);
770
+ messagesDispatcher({
771
+ type: ON_MESSAGE_UPDATED,
772
+ payload: {
773
+ channel,
774
+ message
775
+ }
776
+ });
777
+ },
778
+ onThreadInfoUpdated: (channel, threadInfoUpdateEvent) => {
779
+ logger.info('Channel | useHandleChannelEvents: onThreadInfoUpdated', {
780
+ channel,
781
+ threadInfoUpdateEvent
782
+ });
783
+ messagesDispatcher({
784
+ type: ON_MESSAGE_THREAD_INFO_UPDATED,
785
+ payload: {
786
+ channel,
787
+ event: threadInfoUpdateEvent
788
+ }
789
+ });
790
+ },
791
+ onMessageDeleted: (channel, messageId) => {
792
+ logger.info('Channel | useHandleChannelEvents: onMessageDeleted', {
793
+ channel,
794
+ messageId
795
+ });
796
+ setQuoteMessage(null);
797
+ messagesDispatcher({
798
+ type: ON_MESSAGE_DELETED,
799
+ payload: messageId
800
+ });
801
+ },
802
+ onReactionUpdated: (channel, reactionEvent) => {
803
+ logger.info('Channel | useHandleChannelEvents: onReactionUpdated', {
804
+ channel,
805
+ reactionEvent
806
+ });
807
+ messagesDispatcher({
808
+ type: ON_REACTION_UPDATED,
809
+ payload: reactionEvent
810
+ });
811
+ },
812
+ onChannelChanged: channel => {
813
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
814
+ logger.info('Channel | useHandleChannelEvents: onChannelChanged', channel);
815
+ messagesDispatcher({
816
+ type: SET_CURRENT_CHANNEL,
817
+ payload: channel
818
+ });
819
+ }
820
+ },
821
+ onChannelFrozen: channel => {
822
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
823
+ logger.info('Channel | useHandleChannelEvents: onChannelFrozen', channel);
824
+ messagesDispatcher({
825
+ type: SET_CURRENT_CHANNEL,
826
+ payload: channel
827
+ });
828
+ }
829
+ },
830
+ onChannelUnfrozen: channel => {
831
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
832
+ logger.info('Channel | useHandleChannelEvents: onChannelUnFrozen', channel);
833
+ messagesDispatcher({
834
+ type: SET_CURRENT_CHANNEL,
835
+ payload: channel
836
+ });
837
+ }
838
+ },
839
+ onUserMuted: (channel, user) => {
840
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
841
+ logger.info('Channel | useHandleChannelEvents: onUserMuted', {
842
+ channel,
843
+ user
844
+ });
845
+ messagesDispatcher({
846
+ type: SET_CURRENT_CHANNEL,
847
+ payload: channel
848
+ });
849
+ }
850
+ },
851
+ onUserUnmuted: (channel, user) => {
852
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
853
+ logger.info('Channel | useHandleChannelEvents: onUserUnmuted', {
854
+ channel,
855
+ user
856
+ });
857
+ messagesDispatcher({
858
+ type: SET_CURRENT_CHANNEL,
859
+ payload: channel
860
+ });
861
+ }
862
+ },
863
+ onUserBanned: (channel, user) => {
864
+ var _sdk$currentUser;
865
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl) && (user === null || user === void 0 ? void 0 : user.userId) === (sdk === null || sdk === void 0 ? void 0 : (_sdk$currentUser = sdk.currentUser) === null || _sdk$currentUser === void 0 ? void 0 : _sdk$currentUser.userId)) {
866
+ logger.info('Channel | useHandleChannelEvents: onUserBanned', {
867
+ channel,
868
+ user
869
+ });
870
+ messagesDispatcher({
871
+ type: SET_CURRENT_CHANNEL,
872
+ payload: null
873
+ });
874
+ }
875
+ },
876
+ onOperatorUpdated: (channel, users) => {
877
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
878
+ logger.info('Channel | useHandleChannelEvents: onOperatorUpdated', {
879
+ channel,
880
+ users
881
+ });
882
+ messagesDispatcher({
883
+ type: SET_CURRENT_CHANNEL,
884
+ payload: channel
885
+ });
886
+ }
887
+ },
888
+ onUserLeft: (channel, user) => {
889
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
890
+ logger.info('Channel | useHandleChannelEvents: onUserLeft', {
891
+ channel,
892
+ user
893
+ });
894
+ if ((user === null || user === void 0 ? void 0 : user.userId) === currentUserId) {
895
+ messagesDispatcher({
896
+ type: SET_CURRENT_CHANNEL,
897
+ payload: null
898
+ });
899
+ }
900
+ }
901
+ }
902
+ };
903
+ logger.info('Channel | useHandleChannelEvents: Setup event handler', {
904
+ channelHandlerId,
905
+ channelHandler
906
+ });
907
+ // Add this group channel handler to the Sendbird chat instance
908
+ (_sdk$groupChannel = sdk.groupChannel) === null || _sdk$groupChannel === void 0 ? void 0 : _sdk$groupChannel.addGroupChannelHandler(channelHandlerId, new GroupChannelHandler(channelHandler));
909
+ }
910
+ return () => {
911
+ var _sdk$groupChannel2;
912
+ if (sdk !== null && sdk !== void 0 && (_sdk$groupChannel2 = sdk.groupChannel) !== null && _sdk$groupChannel2 !== void 0 && _sdk$groupChannel2.removeGroupChannelHandler) {
913
+ logger.info('Channel | useHandleChannelEvents: Removing message reciver handler', channelHandlerId);
914
+ sdk.groupChannel.removeGroupChannelHandler(channelHandlerId);
915
+ } else if (sdk !== null && sdk !== void 0 && sdk.groupChannel) {
916
+ logger.error('Channel | useHandleChannelEvents: Not found the removeGroupChannelHandler');
917
+ }
918
+ };
919
+ }, [currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url, sdkInit]);
920
+ }
921
+
922
+ function useSetChannel(_ref, _ref2) {
923
+ let {
924
+ channelUrl,
925
+ sdkInit,
926
+ disableMarkAsRead
927
+ } = _ref;
928
+ let {
929
+ messagesDispatcher,
930
+ sdk,
931
+ logger,
932
+ markAsReadScheduler
933
+ } = _ref2;
934
+ useEffect(() => {
935
+ if (channelUrl && sdkInit && sdk && sdk.groupChannel) {
936
+ logger.info('Channel | useSetChannel fetching channel', channelUrl);
937
+ sdk.groupChannel.getChannel(channelUrl).then(groupChannel => {
938
+ logger.info('Channel | useSetChannel fetched channel', groupChannel);
939
+ messagesDispatcher({
940
+ type: SET_CURRENT_CHANNEL,
941
+ payload: groupChannel
942
+ });
943
+ logger.info('Channel: Mark as read', groupChannel);
944
+ if (!disableMarkAsRead) {
945
+ markAsReadScheduler.push(groupChannel);
946
+ }
947
+ }).catch(e => {
948
+ logger.warning('Channel | useSetChannel fetch channel failed', {
949
+ channelUrl,
950
+ e
951
+ });
952
+ messagesDispatcher({
953
+ type: SET_CHANNEL_INVALID
954
+ });
955
+ });
956
+ sdk.getAllEmoji().then(emojiContainer_ => {
957
+ logger.info('Channel: Getting emojis success', emojiContainer_);
958
+ messagesDispatcher({
959
+ type: SET_EMOJI_CONTAINER,
960
+ payload: emojiContainer_
961
+ });
962
+ }).catch(err => {
963
+ logger.error('Channel: Getting emojis failed', err);
964
+ });
965
+ sdk.getAllEmoji();
966
+ }
967
+ }, [channelUrl, sdkInit]);
968
+ }
969
+
970
+ function useInitialMessagesFetch(_ref, _ref2) {
971
+ let {
972
+ currentGroupChannel,
973
+ userFilledMessageListQuery,
974
+ initialTimeStamp,
975
+ replyType
976
+ } = _ref;
977
+ let {
978
+ logger,
979
+ scrollRef,
980
+ messagesDispatcher
981
+ } = _ref2;
982
+ const channelUrl = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url;
983
+ useEffect(() => {
984
+ logger.info('Channel useInitialMessagesFetch: Setup started', currentGroupChannel);
985
+ messagesDispatcher({
986
+ type: RESET_MESSAGES,
987
+ payload: null
988
+ });
989
+ if (currentGroupChannel && currentGroupChannel !== null && currentGroupChannel !== void 0 && currentGroupChannel.getMessagesByTimestamp) {
990
+ const messageListParams = {};
991
+ messageListParams.prevResultSize = PREV_RESULT_SIZE;
992
+ if (initialTimeStamp) {
993
+ messageListParams.nextResultSize = NEXT_RESULT_SIZE;
994
+ }
995
+ messageListParams.isInclusive = true;
996
+ messageListParams.includeReactions = true;
997
+ messageListParams.includeMetaArray = true;
998
+ if (replyType && (replyType === 'QUOTE_REPLY' || replyType === 'THREAD')) {
999
+ messageListParams.includeThreadInfo = true;
1000
+ messageListParams.includeParentMessageInfo = true;
1001
+ messageListParams.replyType = ReplyType.ONLY_REPLY_TO_CHANNEL;
1002
+ }
1003
+ if (userFilledMessageListQuery) {
1004
+ Object.keys(userFilledMessageListQuery).forEach(key => {
1005
+ messageListParams[key] = userFilledMessageListQuery[key];
1006
+ });
1007
+ }
1008
+ if (replyType && (replyType === 'QUOTE_REPLY' || replyType === 'THREAD') || userFilledMessageListQuery) {
1009
+ logger.info('Channel useInitialMessagesFetch: Setup messageListParams', messageListParams);
1010
+ messagesDispatcher({
1011
+ type: MESSAGE_LIST_PARAMS_CHANGED,
1012
+ payload: messageListParams
1013
+ });
1014
+ }
1015
+ logger.info('Channel: Fetching messages', {
1016
+ currentGroupChannel,
1017
+ userFilledMessageListQuery
1018
+ });
1019
+ messagesDispatcher({
1020
+ type: FETCH_INITIAL_MESSAGES_START,
1021
+ payload: null
1022
+ });
1023
+ currentGroupChannel.getMessagesByTimestamp(initialTimeStamp || new Date().getTime(), messageListParams).then(messages => {
1024
+ messagesDispatcher({
1025
+ type: FETCH_INITIAL_MESSAGES_SUCCESS,
1026
+ payload: {
1027
+ currentGroupChannel,
1028
+ messages
1029
+ }
1030
+ });
1031
+ }).catch(error => {
1032
+ logger.error('Channel: Fetching messages failed', error);
1033
+ messagesDispatcher({
1034
+ type: FETCH_INITIAL_MESSAGES_FAILURE,
1035
+ payload: {
1036
+ currentGroupChannel
1037
+ }
1038
+ });
1039
+ }).finally(() => {
1040
+ if (!initialTimeStamp) {
1041
+ setTimeout(() => scrollIntoLast(0, scrollRef));
1042
+ } else {
1043
+ setTimeout(() => {
1044
+ scrollToRenderedMessage(scrollRef, initialTimeStamp);
1045
+ }, 500);
1046
+ }
1047
+ });
1048
+ }
1049
+ }, [channelUrl, userFilledMessageListQuery, initialTimeStamp]);
1050
+ /**
1051
+ * Note - useEffect(() => {}, [currentGroupChannel])
1052
+ * was buggy, that is why we did
1053
+ * const channelUrl = currentGroupChannel && currentGroupChannel.url;
1054
+ * useEffect(() => {}, [channelUrl])
1055
+ * Again, this hook is supposed to execute when currentGroupChannel changes
1056
+ * The 'channelUrl' here is not the same memory reference from Conversation.props
1057
+ */
1058
+ }
1059
+
1060
+ function useHandleReconnect(_ref, _ref2) {
1061
+ let {
1062
+ isOnline,
1063
+ replyType,
1064
+ disableMarkAsRead
1065
+ } = _ref;
1066
+ let {
1067
+ logger,
1068
+ sdk,
1069
+ scrollRef,
1070
+ currentGroupChannel,
1071
+ messagesDispatcher,
1072
+ markAsReadScheduler,
1073
+ userFilledMessageListQuery
1074
+ } = _ref2;
1075
+ useEffect(() => {
1076
+ const wasOffline = !isOnline;
1077
+ return () => {
1078
+ // state changed from offline to online
1079
+ if (wasOffline && currentGroupChannel !== null && currentGroupChannel !== void 0 && currentGroupChannel.url) {
1080
+ var _sdk$appInfo, _sdk$groupChannel;
1081
+ logger.info('Refreshing conversation state');
1082
+ const isReactionEnabled = (sdk === null || sdk === void 0 ? void 0 : (_sdk$appInfo = sdk.appInfo) === null || _sdk$appInfo === void 0 ? void 0 : _sdk$appInfo.useReaction) || false;
1083
+ const messageListParams = {
1084
+ prevResultSize: PREV_RESULT_SIZE,
1085
+ isInclusive: true,
1086
+ includeReactions: isReactionEnabled,
1087
+ nextResultSize: NEXT_RESULT_SIZE
1088
+ };
1089
+ if (replyType && replyType === 'QUOTE_REPLY') {
1090
+ messageListParams.includeThreadInfo = true;
1091
+ messageListParams.includeParentMessageInfo = true;
1092
+ messageListParams.replyType = ReplyType.ONLY_REPLY_TO_CHANNEL;
1093
+ }
1094
+ if (userFilledMessageListQuery) {
1095
+ Object.keys(userFilledMessageListQuery).forEach(key => {
1096
+ messageListParams[key] = userFilledMessageListQuery[key];
1097
+ });
1098
+ }
1099
+ logger.info('Channel: Fetching messages', {
1100
+ currentGroupChannel,
1101
+ userFilledMessageListQuery
1102
+ });
1103
+ messagesDispatcher({
1104
+ type: FETCH_INITIAL_MESSAGES_START,
1105
+ payload: null
1106
+ });
1107
+ sdk === null || sdk === void 0 ? void 0 : (_sdk$groupChannel = sdk.groupChannel) === null || _sdk$groupChannel === void 0 ? void 0 : _sdk$groupChannel.getChannel(currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url).then(groupChannel => {
1108
+ const lastMessageTime = new Date().getTime();
1109
+ groupChannel.getMessagesByTimestamp(lastMessageTime, messageListParams).then(messages => {
1110
+ messagesDispatcher({
1111
+ type: FETCH_INITIAL_MESSAGES_SUCCESS,
1112
+ payload: {
1113
+ currentGroupChannel,
1114
+ messages
1115
+ }
1116
+ });
1117
+ setTimeout(() => scrollIntoLast(0, scrollRef));
1118
+ }).catch(error => {
1119
+ logger.error('Channel: Fetching messages failed', error);
1120
+ messagesDispatcher({
1121
+ type: FETCH_INITIAL_MESSAGES_FAILURE,
1122
+ payload: {
1123
+ currentGroupChannel
1124
+ }
1125
+ });
1126
+ });
1127
+ if (!disableMarkAsRead) {
1128
+ markAsReadScheduler.push(currentGroupChannel);
1129
+ }
1130
+ });
1131
+ }
1132
+ };
1133
+ }, [isOnline, replyType]);
1134
+ }
1135
+
1136
+ function useScrollCallback(_ref, _ref2) {
1137
+ let {
1138
+ currentGroupChannel,
1139
+ oldestMessageTimeStamp,
1140
+ userFilledMessageListQuery,
1141
+ replyType
1142
+ } = _ref;
1143
+ let {
1144
+ hasMorePrev,
1145
+ logger,
1146
+ messagesDispatcher,
1147
+ sdk
1148
+ } = _ref2;
1149
+ return useCallback(cb => {
1150
+ if (!hasMorePrev) {
1151
+ return;
1152
+ }
1153
+ const {
1154
+ appInfo = {}
1155
+ } = sdk;
1156
+ const isReactionEnabled = appInfo.useReaction || false;
1157
+ const messageListParams = {
1158
+ prevResultSize: PREV_RESULT_SIZE,
1159
+ isInclusive: true,
1160
+ includeReactions: isReactionEnabled
1161
+ };
1162
+ messageListParams.includeMetaArray = true;
1163
+ if (replyType === 'QUOTE_REPLY' || replyType === 'THREAD') {
1164
+ messageListParams.includeThreadInfo = true;
1165
+ messageListParams.includeParentMessageInfo = true;
1166
+ messageListParams.replyType = ReplyType.ONLY_REPLY_TO_CHANNEL;
1167
+ }
1168
+ if (userFilledMessageListQuery) {
1169
+ Object.keys(userFilledMessageListQuery).forEach(key => {
1170
+ messageListParams[key] = userFilledMessageListQuery[key];
1171
+ });
1172
+ }
1173
+ logger.info('Channel: Fetching messages', {
1174
+ currentGroupChannel,
1175
+ userFilledMessageListQuery
1176
+ });
1177
+ currentGroupChannel.getMessagesByTimestamp(oldestMessageTimeStamp || new Date().getTime(), messageListParams).then(messages => {
1178
+ messagesDispatcher({
1179
+ type: FETCH_PREV_MESSAGES_SUCCESS,
1180
+ payload: {
1181
+ currentGroupChannel,
1182
+ messages
1183
+ }
1184
+ });
1185
+ cb([messages, null]);
1186
+ }).catch(error => {
1187
+ logger.error('Channel: Fetching messages failed', error);
1188
+ messagesDispatcher({
1189
+ type: FETCH_PREV_MESSAGES_FAILURE,
1190
+ payload: {
1191
+ currentGroupChannel
1192
+ }
1193
+ });
1194
+ cb([null, error]);
1195
+ });
1196
+ }, [currentGroupChannel, oldestMessageTimeStamp, replyType]);
1197
+ }
1198
+
1199
+ function useScrollDownCallback(_ref, _ref2) {
1200
+ let {
1201
+ currentGroupChannel,
1202
+ latestMessageTimeStamp,
1203
+ userFilledMessageListQuery,
1204
+ hasMoreNext,
1205
+ replyType
1206
+ } = _ref;
1207
+ let {
1208
+ logger,
1209
+ messagesDispatcher,
1210
+ sdk
1211
+ } = _ref2;
1212
+ return useCallback(cb => {
1213
+ if (!hasMoreNext) {
1214
+ return;
1215
+ }
1216
+ const {
1217
+ appInfo = {}
1218
+ } = sdk;
1219
+ const isReactionEnabled = appInfo.useReaction || false;
1220
+ const messageListParams = {
1221
+ nextResultSize: NEXT_RESULT_SIZE,
1222
+ isInclusive: true,
1223
+ includeReactions: isReactionEnabled
1224
+ };
1225
+ messageListParams.includeMetaArray = true;
1226
+ if (replyType && (replyType === 'QUOTE_REPLY' || replyType === 'THREAD')) {
1227
+ messageListParams.includeThreadInfo = true;
1228
+ messageListParams.includeParentMessageInfo = true;
1229
+ messageListParams.replyType = ReplyType.ONLY_REPLY_TO_CHANNEL;
1230
+ }
1231
+ if (userFilledMessageListQuery) {
1232
+ Object.keys(userFilledMessageListQuery).forEach(key => {
1233
+ messageListParams[key] = userFilledMessageListQuery[key];
1234
+ });
1235
+ }
1236
+ logger.info('Channel: Fetching later messages', {
1237
+ currentGroupChannel,
1238
+ userFilledMessageListQuery
1239
+ });
1240
+ currentGroupChannel.getMessagesByTimestamp(latestMessageTimeStamp || new Date().getTime(), messageListParams).then(messages => {
1241
+ messagesDispatcher({
1242
+ type: FETCH_NEXT_MESSAGES_SUCCESS,
1243
+ payload: {
1244
+ currentGroupChannel,
1245
+ messages
1246
+ }
1247
+ });
1248
+ cb([messages, null]);
1249
+ }).catch(error => {
1250
+ logger.error('Channel: Fetching later messages failed', error);
1251
+ messagesDispatcher({
1252
+ type: FETCH_NEXT_MESSAGES_FAILURE,
1253
+ payload: {
1254
+ currentGroupChannel
1255
+ }
1256
+ });
1257
+ cb([null, error]);
1258
+ });
1259
+ }, [currentGroupChannel, latestMessageTimeStamp, hasMoreNext, replyType]);
1260
+ }
1261
+
1262
+ function useDeleteMessageCallback(_ref, _ref2) {
1263
+ let {
1264
+ currentGroupChannel,
1265
+ messagesDispatcher
1266
+ } = _ref;
1267
+ let {
1268
+ logger
1269
+ } = _ref2;
1270
+ return useCallback(message => {
1271
+ logger.info('Channel | useDeleteMessageCallback: Deleting message', message);
1272
+ const {
1273
+ requestState
1274
+ } = message;
1275
+ return new Promise((resolve, reject) => {
1276
+ logger.info('Channel | useDeleteMessageCallback: Deleting message requestState:', requestState);
1277
+ // Message is only on local
1278
+ if (requestState === 'failed' || requestState === 'pending') {
1279
+ logger.info('Channel | useDeleteMessageCallback: Deleted message from local:', message);
1280
+ messagesDispatcher({
1281
+ type: ON_MESSAGE_DELETED_BY_REQ_ID,
1282
+ payload: message.reqId
1283
+ });
1284
+ resolve(message);
1285
+ }
1286
+ logger.info('Channel | useDeleteMessageCallback: Deleting message from remote:', requestState);
1287
+ currentGroupChannel.deleteMessage(message).then(() => {
1288
+ logger.info('Channel | useDeleteMessageCallback: Deleting message success!', message);
1289
+ messagesDispatcher({
1290
+ type: ON_MESSAGE_DELETED,
1291
+ payload: message.messageId
1292
+ });
1293
+ resolve(message);
1294
+ }).catch(err => {
1295
+ logger.warning('Channel | useDeleteMessageCallback: Deleting message failed!', err);
1296
+ reject(err);
1297
+ });
1298
+ });
1299
+ }, [currentGroupChannel, messagesDispatcher]);
1300
+ }
1301
+
1302
+ function useUpdateMessageCallback(_ref, _ref2) {
1303
+ let {
1304
+ currentGroupChannel,
1305
+ messagesDispatcher,
1306
+ onBeforeUpdateUserMessage,
1307
+ isMentionEnabled
1308
+ } = _ref;
1309
+ let {
1310
+ logger,
1311
+ pubSub
1312
+ } = _ref2;
1313
+ return useCallback((props, callback) => {
1314
+ const {
1315
+ messageId,
1316
+ message,
1317
+ mentionedUsers,
1318
+ mentionTemplate
1319
+ } = props;
1320
+ const createParamsDefault = () => {
1321
+ const params = {};
1322
+ params.message = message;
1323
+ if (isMentionEnabled && (mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) > 0) {
1324
+ params.mentionedUsers = mentionedUsers;
1325
+ }
1326
+ if (isMentionEnabled && mentionTemplate) {
1327
+ params.mentionedMessageTemplate = mentionTemplate;
1328
+ } else {
1329
+ params.mentionedMessageTemplate = message;
1330
+ }
1331
+ return params;
1332
+ };
1333
+ const createCustomPrams = onBeforeUpdateUserMessage && typeof onBeforeUpdateUserMessage === 'function';
1334
+ if (createCustomPrams) {
1335
+ logger.info('Channel: creating params using onBeforeUpdateUserMessage', onBeforeUpdateUserMessage);
1336
+ }
1337
+ const params = onBeforeUpdateUserMessage ? onBeforeUpdateUserMessage(message) : createParamsDefault();
1338
+ logger.info('Channel: Updating message!', params);
1339
+ currentGroupChannel.updateUserMessage(messageId, params).then((msg, err) => {
1340
+ if (callback) {
1341
+ callback(err, msg);
1342
+ }
1343
+ logger.info('Channel: Updating message success!', msg);
1344
+ messagesDispatcher({
1345
+ type: ON_MESSAGE_UPDATED,
1346
+ payload: {
1347
+ channel: currentGroupChannel,
1348
+ message: msg
1349
+ }
1350
+ });
1351
+ pubSub.publish(PUBSUB_TOPICS.UPDATE_USER_MESSAGE, {
1352
+ message: msg,
1353
+ channel: currentGroupChannel
1354
+ });
1355
+ });
1356
+ }, [currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url, messagesDispatcher, onBeforeUpdateUserMessage]);
1357
+ }
1358
+
1359
+ function useResendMessageCallback(_ref, _ref2) {
1360
+ let {
1361
+ currentGroupChannel,
1362
+ messagesDispatcher
1363
+ } = _ref;
1364
+ let {
1365
+ logger
1366
+ } = _ref2;
1367
+ return useCallback(failedMessage => {
1368
+ logger.info('Channel: Resending message has started', failedMessage);
1369
+ const {
1370
+ messageType,
1371
+ file
1372
+ } = failedMessage;
1373
+ if (failedMessage !== null && failedMessage !== void 0 && failedMessage.isResendable) {
1374
+ // Move the logic setting sendingStatus to pending into the reducer
1375
+ // eslint-disable-next-line no-param-reassign
1376
+ failedMessage.requestState = 'pending';
1377
+ // eslint-disable-next-line no-param-reassign
1378
+ failedMessage.sendingStatus = 'pending';
1379
+ messagesDispatcher({
1380
+ type: RESEND_MESSAGEGE_START,
1381
+ payload: failedMessage
1382
+ });
1383
+
1384
+ // userMessage
1385
+ if (messageType === 'user') {
1386
+ currentGroupChannel.resendUserMessage(failedMessage).then(message => {
1387
+ logger.info('Channel: Resending message success!', message);
1388
+ messagesDispatcher({
1389
+ type: SEND_MESSAGEGE_SUCESS,
1390
+ payload: message
1391
+ });
1392
+ }).catch(e => {
1393
+ logger.warning('Channel: Resending message failed!', e);
1394
+ // eslint-disable-next-line no-param-reassign
1395
+ failedMessage.requestState = 'failed';
1396
+ // eslint-disable-next-line no-param-reassign
1397
+ failedMessage.sendingStatus = 'failed';
1398
+ messagesDispatcher({
1399
+ type: SEND_MESSAGEGE_FAILURE,
1400
+ payload: failedMessage
1401
+ });
1402
+ });
1403
+
1404
+ // eslint-disable-next-line no-param-reassign
1405
+ failedMessage.requestState = 'pending';
1406
+ // eslint-disable-next-line no-param-reassign
1407
+ failedMessage.sendingStatus = 'pending';
1408
+ messagesDispatcher({
1409
+ type: RESEND_MESSAGEGE_START,
1410
+ payload: failedMessage
1411
+ });
1412
+ return;
1413
+ }
1414
+ if (messageType === 'file') {
1415
+ currentGroupChannel.resendFileMessage(failedMessage, file).then(message => {
1416
+ logger.info('Channel: Resending file message success!', message);
1417
+ messagesDispatcher({
1418
+ type: SEND_MESSAGEGE_SUCESS,
1419
+ payload: message
1420
+ });
1421
+ }).catch(e => {
1422
+ logger.warning('Channel: Resending file message failed!', e);
1423
+ // eslint-disable-next-line no-param-reassign
1424
+ failedMessage.requestState = 'failed';
1425
+ // eslint-disable-next-line no-param-reassign
1426
+ failedMessage.sendingStatus = 'failed';
1427
+ messagesDispatcher({
1428
+ type: SEND_MESSAGEGE_FAILURE,
1429
+ payload: failedMessage
1430
+ });
1431
+ });
1432
+
1433
+ // eslint-disable-next-line no-param-reassign
1434
+ failedMessage.requestState = 'pending';
1435
+ // eslint-disable-next-line no-param-reassign
1436
+ failedMessage.sendingStatus = 'pending';
1437
+ messagesDispatcher({
1438
+ type: RESEND_MESSAGEGE_START,
1439
+ payload: failedMessage
1440
+ });
1441
+ }
1442
+ } else {
1443
+ // to alert user on console
1444
+ // eslint-disable-next-line no-console
1445
+ console.error('Message is not resendable');
1446
+ logger.warning('Message is not resendable', failedMessage);
1447
+ }
1448
+ }, [currentGroupChannel, messagesDispatcher]);
1449
+ }
1450
+
1451
+ function useSendMessageCallback(_ref, _ref2) {
1452
+ let {
1453
+ isMentionEnabled,
1454
+ currentGroupChannel,
1455
+ onBeforeSendUserMessage
1456
+ } = _ref;
1457
+ let {
1458
+ logger,
1459
+ pubSub,
1460
+ scrollRef,
1461
+ messagesDispatcher
1462
+ } = _ref2;
1463
+ const messageInputRef = useRef(null);
1464
+ const sendMessage = useCallback(props => {
1465
+ const {
1466
+ quoteMessage = null,
1467
+ message,
1468
+ mentionTemplate,
1469
+ // mentionedUserIds,
1470
+ mentionedUsers
1471
+ } = props;
1472
+ const createParamsDefault = () => {
1473
+ const params = {};
1474
+ params.message = message;
1475
+ // if (isMentionEnabled && mentionedUserIds?.length > 0) {
1476
+ if (isMentionEnabled && (mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) > 0) {
1477
+ // params.mentionedUserIds = mentionedUserIds;
1478
+ params.mentionedUsers = mentionedUsers;
1479
+ }
1480
+ // if (isMentionEnabled && mentionTemplate && mentionedUserIds?.length > 0) {
1481
+ if (isMentionEnabled && mentionTemplate && (mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) > 0) {
1482
+ params.mentionedMessageTemplate = mentionTemplate;
1483
+ }
1484
+ if (quoteMessage) {
1485
+ params.isReplyToChannel = true;
1486
+ params.parentMessageId = quoteMessage.messageId;
1487
+ }
1488
+ return params;
1489
+ };
1490
+ const createCustomPrams = onBeforeSendUserMessage && typeof onBeforeSendUserMessage === 'function';
1491
+ if (createCustomPrams) {
1492
+ logger.info('Channel: creating params using onBeforeSendUserMessage', onBeforeSendUserMessage);
1493
+ }
1494
+ const params = onBeforeSendUserMessage ? onBeforeSendUserMessage(message, quoteMessage) : createParamsDefault();
1495
+ logger.info('Channel: Sending message has started', params);
1496
+ currentGroupChannel.sendUserMessage(params).onPending(pendingMsg => {
1497
+ pubSub.publish(PUBSUB_TOPICS.SEND_MESSAGE_START, {
1498
+ /* pubSub is used instead of messagesDispatcher
1499
+ to avoid redundantly calling `messageActionTypes.SEND_MESSAGEGE_START` */
1500
+ message: pendingMsg,
1501
+ channel: currentGroupChannel
1502
+ });
1503
+ setTimeout(() => scrollIntoLast(0, scrollRef));
1504
+ }).onFailed((err, msg) => {
1505
+ logger.warning('Channel: Sending message failed!', {
1506
+ message: msg,
1507
+ error: err
1508
+ });
1509
+ messagesDispatcher({
1510
+ type: SEND_MESSAGEGE_FAILURE,
1511
+ payload: msg
1512
+ });
1513
+ }).onSucceeded(msg => {
1514
+ logger.info('Channel: Sending message success!', msg);
1515
+ messagesDispatcher({
1516
+ type: SEND_MESSAGEGE_SUCESS,
1517
+ payload: msg
1518
+ });
1519
+ });
1520
+ }, [currentGroupChannel, onBeforeSendUserMessage]);
1521
+ return [messageInputRef, sendMessage];
1522
+ }
1523
+
1524
+ function useSendFileMessageCallback(_ref, _ref2) {
1525
+ let {
1526
+ currentGroupChannel,
1527
+ onBeforeSendFileMessage,
1528
+ imageCompression = {}
1529
+ } = _ref;
1530
+ let {
1531
+ logger,
1532
+ pubSub,
1533
+ scrollRef,
1534
+ messagesDispatcher
1535
+ } = _ref2;
1536
+ const sendMessage = useCallback(function (file) {
1537
+ let quoteMessage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1538
+ const {
1539
+ compressionRate,
1540
+ resizingWidth,
1541
+ resizingHeight
1542
+ } = imageCompression;
1543
+ const createCustomParams = onBeforeSendFileMessage && typeof onBeforeSendFileMessage === 'function';
1544
+ const compressibleFileType = file.type === 'image/jpg' || file.type === 'image/png' || file.type === 'image/jpeg';
1545
+ const compressibleRatio = compressionRate > 0 && compressionRate < 1;
1546
+ // pxToNumber returns null if values are invalid
1547
+ const compressibleDiamensions = pxToNumber(resizingWidth) || pxToNumber(resizingHeight);
1548
+ const canCompressImage = compressibleFileType && (compressibleRatio || compressibleDiamensions);
1549
+ const createParamsDefault = file_ => {
1550
+ const params = {};
1551
+ params.file = file_;
1552
+ if (quoteMessage) {
1553
+ params.isReplyToChannel = true;
1554
+ params.parentMessageId = quoteMessage.messageId;
1555
+ }
1556
+ return params;
1557
+ };
1558
+ if (canCompressImage) {
1559
+ // Using image compression
1560
+ try {
1561
+ const image = document.createElement('img');
1562
+ image.src = URL.createObjectURL(file);
1563
+ image.onload = () => {
1564
+ URL.revokeObjectURL(image.src);
1565
+ const canvas = document.createElement('canvas');
1566
+ const imageWdith = image.naturalWidth || image.width;
1567
+ const imageHeight = image.naturalHeight || image.height;
1568
+ let targetWidth = pxToNumber(resizingWidth) || imageWdith;
1569
+ let targetHeight = pxToNumber(resizingHeight) || imageHeight;
1570
+
1571
+ // In canvas.toBlob(callback, mimeType, qualityArgument)
1572
+ // qualityArgument doesnt work
1573
+ // so in case compressibleDiamensions are not present, we use ratio
1574
+ if (file.type === 'image/png' && !compressibleDiamensions) {
1575
+ targetWidth *= compressionRate;
1576
+ targetHeight *= compressionRate;
1577
+ }
1578
+ canvas.width = targetWidth;
1579
+ canvas.height = targetHeight;
1580
+ const context = canvas.getContext('2d');
1581
+ context.drawImage(image, 0, 0, targetWidth, targetHeight);
1582
+ context.canvas.toBlob(newImageBlob => {
1583
+ const compressedFile = new File([newImageBlob], file.name, {
1584
+ type: file.type
1585
+ });
1586
+ if (createCustomParams) {
1587
+ logger.info('Channel: Creating params using onBeforeSendFileMessage', onBeforeSendFileMessage);
1588
+ }
1589
+ const params = createCustomParams ? onBeforeSendFileMessage(compressedFile, quoteMessage) : createParamsDefault(compressedFile);
1590
+ logger.info('Channel: Uploading file message start!', params);
1591
+ currentGroupChannel.sendFileMessage(params).onPending(pendingMessage => {
1592
+ pubSub.publish(PUBSUB_TOPICS.SEND_MESSAGE_START, {
1593
+ /* pubSub is used instead of messagesDispatcher
1594
+ to avoid redundantly calling `messageActionTypes.SEND_MESSAGEGE_START` */
1595
+ message: _objectSpread2(_objectSpread2({}, pendingMessage), {}, {
1596
+ url: URL.createObjectURL(compressedFile),
1597
+ // pending thumbnail message seems to be failed
1598
+ requestState: 'pending'
1599
+ }),
1600
+ channel: currentGroupChannel
1601
+ });
1602
+ setTimeout(() => scrollIntoLast(0, scrollRef), 1000);
1603
+ }).onFailed((err, failedMessage) => {
1604
+ logger.error('Channel: Sending file message failed!', {
1605
+ failedMessage,
1606
+ err
1607
+ });
1608
+ // eslint-disable-next-line no-param-reassign
1609
+ failedMessage.localUrl = URL.createObjectURL(compressedFile);
1610
+ // eslint-disable-next-line no-param-reassign
1611
+ failedMessage.file = compressedFile;
1612
+ messagesDispatcher({
1613
+ type: SEND_MESSAGEGE_FAILURE,
1614
+ payload: failedMessage
1615
+ });
1616
+ }).onSucceeded(succeededMessage => {
1617
+ logger.info('Channel: Sending file message success!', succeededMessage);
1618
+ messagesDispatcher({
1619
+ type: SEND_MESSAGEGE_SUCESS,
1620
+ payload: succeededMessage
1621
+ });
1622
+ });
1623
+ }, file.type, compressionRate);
1624
+ };
1625
+ } catch (error) {
1626
+ logger.error('Channel: Sending file message failed!', error);
1627
+ }
1628
+ } else {
1629
+ // Not using image compression
1630
+ if (createCustomParams) {
1631
+ logger.info('Channel: creating params using onBeforeSendFileMessage', onBeforeSendFileMessage);
1632
+ }
1633
+ const params = onBeforeSendFileMessage ? onBeforeSendFileMessage(file, quoteMessage) : createParamsDefault(file);
1634
+ logger.info('Channel: Uploading file message start!', params);
1635
+ currentGroupChannel.sendFileMessage(params).onPending(pendingMsg => {
1636
+ pubSub.publish(PUBSUB_TOPICS.SEND_MESSAGE_START, {
1637
+ /* pubSub is used instead of messagesDispatcher
1638
+ to avoid redundantly calling `messageActionTypes.SEND_MESSAGEGE_START` */
1639
+ message: _objectSpread2(_objectSpread2({}, pendingMsg), {}, {
1640
+ url: URL.createObjectURL(file),
1641
+ // pending thumbnail message seems to be failed
1642
+ requestState: 'pending'
1643
+ }),
1644
+ channel: currentGroupChannel
1645
+ });
1646
+ setTimeout(() => scrollIntoLast(0, scrollRef), 1000);
1647
+ }).onFailed((error, message) => {
1648
+ logger.error('Channel: Sending file message failed!', {
1649
+ message,
1650
+ error
1651
+ });
1652
+ // eslint-disable-next-line no-param-reassign
1653
+ message.localUrl = URL.createObjectURL(file);
1654
+ // eslint-disable-next-line no-param-reassign
1655
+ message.file = file;
1656
+ messagesDispatcher({
1657
+ type: SEND_MESSAGEGE_FAILURE,
1658
+ payload: message
1659
+ });
1660
+ }).onSucceeded(message => {
1661
+ logger.info('Channel: Sending message success!', message);
1662
+ messagesDispatcher({
1663
+ type: SEND_MESSAGEGE_SUCESS,
1664
+ payload: message
1665
+ });
1666
+ });
1667
+ }
1668
+ }, [currentGroupChannel, onBeforeSendFileMessage, imageCompression]);
1669
+ return [sendMessage];
1670
+ }
1671
+
1672
+ function useToggleReactionCallback(_ref, _ref2) {
1673
+ let {
1674
+ currentGroupChannel
1675
+ } = _ref;
1676
+ let {
1677
+ logger
1678
+ } = _ref2;
1679
+ return useCallback((message, key, isReacted) => {
1680
+ if (isReacted) {
1681
+ currentGroupChannel.deleteReaction(message, key).then(res => {
1682
+ logger.info('Delete reaction success', res);
1683
+ }).catch(err => {
1684
+ logger.warning('Delete reaction failed', err);
1685
+ });
1686
+ return;
1687
+ }
1688
+ currentGroupChannel.addReaction(message, key).then(res => {
1689
+ logger.info('Add reaction success', res);
1690
+ }).catch(err => {
1691
+ logger.warning('Add reaction failed', err);
1692
+ });
1693
+ }, [currentGroupChannel]);
1694
+ }
1695
+
1696
+ // To prevent multiple clicks on the message in the channel while scrolling
1697
+ function deactivateClick(scrollRef) {
1698
+ const element = scrollRef.current;
1699
+ const parentNode = element === null || element === void 0 ? void 0 : element.parentNode;
1700
+ if (element && parentNode) {
1701
+ element.style.pointerEvents = 'none';
1702
+ parentNode.style.cursor = 'wait';
1703
+ }
1704
+ }
1705
+ function activateClick(scrollRef) {
1706
+ const element = scrollRef.current;
1707
+ const parentNode = element === null || element === void 0 ? void 0 : element.parentNode;
1708
+ if (element && parentNode) {
1709
+ element.style.pointerEvents = 'auto';
1710
+ parentNode.style.cursor = 'auto';
1711
+ }
1712
+ }
1713
+ function useScrollToMessage(_ref, _ref2) {
1714
+ let {
1715
+ setInitialTimeStamp,
1716
+ setAnimatedMessageId,
1717
+ allMessages,
1718
+ scrollRef
1719
+ } = _ref;
1720
+ let {
1721
+ logger
1722
+ } = _ref2;
1723
+ return useCallback((createdAt, messageId) => {
1724
+ const isPresent = allMessages.find(m => m.messageId === messageId);
1725
+ setAnimatedMessageId(null);
1726
+ setTimeout(() => {
1727
+ try {
1728
+ logger.info('Channel: scroll to message - disabling mouse events');
1729
+ deactivateClick(scrollRef);
1730
+ if (isPresent) {
1731
+ logger.info('Channel: scroll to message - message is present');
1732
+ setAnimatedMessageId(messageId);
1733
+ scrollToRenderedMessage(scrollRef, createdAt);
1734
+ } else {
1735
+ logger.info('Channel: scroll to message - fetching older messages');
1736
+ setInitialTimeStamp(null);
1737
+ setInitialTimeStamp(createdAt);
1738
+ setAnimatedMessageId(messageId);
1739
+ }
1740
+ } finally {
1741
+ logger.info('Channel: scroll to message - enabled mouse events');
1742
+ activateClick(scrollRef);
1743
+ }
1744
+ });
1745
+ }, [setInitialTimeStamp, setAnimatedMessageId, allMessages]);
1746
+ }
1747
+
1748
+ const useSendVoiceMessageCallback = (_ref, _ref2) => {
1749
+ let {
1750
+ currentGroupChannel,
1751
+ onBeforeSendVoiceMessage
1752
+ } = _ref;
1753
+ let {
1754
+ logger,
1755
+ pubSub,
1756
+ scrollRef,
1757
+ messagesDispatcher
1758
+ } = _ref2;
1759
+ const sendMessage = useCallback((file, duration, quoteMessage) => {
1760
+ const messageParams = onBeforeSendVoiceMessage && typeof onBeforeSendVoiceMessage === 'function' ? onBeforeSendVoiceMessage(file, quoteMessage) : {
1761
+ file,
1762
+ fileName: VOICE_MESSAGE_FILE_NAME,
1763
+ mimeType: VOICE_MESSAGE_MIME_TYPE,
1764
+ metaArrays: [new MessageMetaArray({
1765
+ key: META_ARRAY_VOICE_DURATION_KEY,
1766
+ value: [`${duration}`]
1767
+ }), new MessageMetaArray({
1768
+ key: META_ARRAY_MESSAGE_TYPE_KEY,
1769
+ value: [META_ARRAY_MESSAGE_TYPE_VALUE__VOICE]
1770
+ })]
1771
+ };
1772
+ if (quoteMessage) {
1773
+ messageParams.isReplyToChannel = true;
1774
+ messageParams.parentMessageId = quoteMessage.messageId;
1775
+ }
1776
+ logger.info('Channel: Start sending voice message', messageParams);
1777
+ currentGroupChannel.sendFileMessage(messageParams).onPending(pendingMessage => {
1778
+ pubSub.publish(PUBSUB_TOPICS.SEND_MESSAGE_START, {
1779
+ /* pubSub is used instead of messagesDispatcher
1780
+ to avoid redundantly calling `messageActionTypes.SEND_MESSAGEGE_START` */
1781
+ message: pendingMessage,
1782
+ channel: currentGroupChannel
1783
+ });
1784
+ setTimeout(() => scrollIntoLast(0, scrollRef), 1000);
1785
+ }).onFailed((err, failedMessage) => {
1786
+ logger.error('Channel: Sending voice message failed!', {
1787
+ failedMessage,
1788
+ err
1789
+ });
1790
+ messagesDispatcher({
1791
+ type: SEND_MESSAGEGE_FAILURE,
1792
+ payload: failedMessage
1793
+ });
1794
+ }).onSucceeded(succeededMessage => {
1795
+ logger.info('Channel: Sending voice message success!', succeededMessage);
1796
+ messagesDispatcher({
1797
+ type: SEND_MESSAGEGE_SUCESS,
1798
+ payload: succeededMessage
1799
+ });
1800
+ });
1801
+ }, [currentGroupChannel, onBeforeSendVoiceMessage]);
1802
+ return [sendMessage];
1803
+ };
1804
+
1805
+ const ChannelContext = /*#__PURE__*/React__default.createContext(undefined);
1806
+ const ChannelProvider = props => {
1807
+ var _globalStore$stores, _globalStore$stores$s, _globalStore$stores2, _globalStore$stores2$, _ref, _props$disableUserPro;
1808
+ const {
1809
+ channelUrl,
1810
+ children,
1811
+ isReactionEnabled,
1812
+ isMessageGroupingEnabled = true,
1813
+ showSearchIcon,
1814
+ animatedMessage,
1815
+ highlightedMessage,
1816
+ startingPoint,
1817
+ onBeforeSendUserMessage,
1818
+ onBeforeSendFileMessage,
1819
+ onBeforeUpdateUserMessage,
1820
+ onBeforeSendVoiceMessage,
1821
+ onChatHeaderActionClick,
1822
+ onSearchClick,
1823
+ onBackClick,
1824
+ replyType: channelReplyType,
1825
+ threadReplySelectType,
1826
+ queries,
1827
+ filterMessageList,
1828
+ disableMarkAsRead = false,
1829
+ onReplyInThread,
1830
+ onQuoteMessageClick,
1831
+ onMessageAnimated,
1832
+ onMessageHighlighted,
1833
+ scrollBehavior = 'auto'
1834
+ } = props;
1835
+ const globalStore = useSendbirdStateContext();
1836
+ const {
1837
+ config
1838
+ } = globalStore;
1839
+ const replyType = channelReplyType !== null && channelReplyType !== void 0 ? channelReplyType : config.replyType;
1840
+ const {
1841
+ pubSub,
1842
+ logger,
1843
+ userId,
1844
+ isOnline,
1845
+ imageCompression,
1846
+ isMentionEnabled,
1847
+ isVoiceMessageEnabled,
1848
+ onUserProfileMessage,
1849
+ markAsReadScheduler,
1850
+ groupChannel
1851
+ } = config;
1852
+ const sdk = globalStore === null || globalStore === void 0 ? void 0 : (_globalStore$stores = globalStore.stores) === null || _globalStore$stores === void 0 ? void 0 : (_globalStore$stores$s = _globalStore$stores.sdkStore) === null || _globalStore$stores$s === void 0 ? void 0 : _globalStore$stores$s.sdk;
1853
+ const sdkInit = globalStore === null || globalStore === void 0 ? void 0 : (_globalStore$stores2 = globalStore.stores) === null || _globalStore$stores2 === void 0 ? void 0 : (_globalStore$stores2$ = _globalStore$stores2.sdkStore) === null || _globalStore$stores2$ === void 0 ? void 0 : _globalStore$stores2$.initialized;
1854
+ const globalConfigs = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config;
1855
+ const [initialTimeStamp, setInitialTimeStamp] = useState(startingPoint);
1856
+ useEffect(() => {
1857
+ setInitialTimeStamp(startingPoint);
1858
+ }, [startingPoint, channelUrl]);
1859
+ const [animatedMessageId, setAnimatedMessageId] = useState(0);
1860
+ const [highLightedMessageId, setHighLightedMessageId] = useState(highlightedMessage);
1861
+ useEffect(() => {
1862
+ setHighLightedMessageId(highlightedMessage);
1863
+ }, [highlightedMessage]);
1864
+ const userFilledMessageListQuery = queries === null || queries === void 0 ? void 0 : queries.messageListParams;
1865
+ const [quoteMessage, setQuoteMessage] = useState(null);
1866
+ const [messagesStore, messagesDispatcher] = useReducer(reducer, messagesInitialState);
1867
+ const scrollRef = useRef(null);
1868
+ const {
1869
+ allMessages,
1870
+ loading,
1871
+ initialized,
1872
+ unreadSince,
1873
+ isInvalid,
1874
+ currentGroupChannel,
1875
+ hasMorePrev,
1876
+ oldestMessageTimeStamp,
1877
+ hasMoreNext,
1878
+ latestMessageTimeStamp,
1879
+ emojiContainer,
1880
+ readStatus
1881
+ } = messagesStore;
1882
+ const isSuper = (currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.isSuper) || false;
1883
+ const isBroadcast = (currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.isBroadcast) || false;
1884
+ const usingReaction = getIsReactionEnabled({
1885
+ isBroadcast,
1886
+ isSuper,
1887
+ globalLevel: config === null || config === void 0 ? void 0 : config.isReactionEnabled,
1888
+ moduleLevel: isReactionEnabled
1889
+ });
1890
+ const emojiAllMap = useMemo(() => usingReaction ? getAllEmojisMapFromEmojiContainer(emojiContainer) : new Map(), [emojiContainer]);
1891
+ const nicknamesMap = useMemo(() => usingReaction && currentGroupChannel ? getNicknamesMapFromMembers(currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.members) : new Map(), [currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.members]);
1892
+
1893
+ // Animate message
1894
+ useEffect(() => {
1895
+ if (animatedMessage) {
1896
+ setAnimatedMessageId(animatedMessage);
1897
+ }
1898
+ }, [animatedMessage]);
1899
+
1900
+ // Scrollup is default scroll for channel
1901
+ const onScrollCallback = useScrollCallback({
1902
+ currentGroupChannel,
1903
+ oldestMessageTimeStamp,
1904
+ userFilledMessageListQuery,
1905
+ replyType,
1906
+ isVoiceMessageEnabled
1907
+ }, {
1908
+ hasMorePrev,
1909
+ logger,
1910
+ messagesDispatcher,
1911
+ sdk
1912
+ });
1913
+ const scrollToMessage = useScrollToMessage({
1914
+ setInitialTimeStamp,
1915
+ setAnimatedMessageId,
1916
+ allMessages,
1917
+ scrollRef
1918
+ }, {
1919
+ logger
1920
+ });
1921
+
1922
+ // onScrollDownCallback is added for navigation to different timestamps on messageSearch
1923
+ // hasMorePrev, onScrollCallback -> scroll up(default behavior)
1924
+ // hasMoreNext, onScrollDownCallback -> scroll down
1925
+ const onScrollDownCallback = useScrollDownCallback({
1926
+ currentGroupChannel,
1927
+ latestMessageTimeStamp,
1928
+ userFilledMessageListQuery,
1929
+ hasMoreNext,
1930
+ replyType,
1931
+ isVoiceMessageEnabled
1932
+ }, {
1933
+ logger,
1934
+ messagesDispatcher,
1935
+ sdk
1936
+ });
1937
+ const toggleReaction = useToggleReactionCallback({
1938
+ currentGroupChannel
1939
+ }, {
1940
+ logger
1941
+ });
1942
+
1943
+ // to create message-datasource
1944
+ // this hook sets currentGroupChannel asynchronously
1945
+ useSetChannel({
1946
+ channelUrl,
1947
+ sdkInit,
1948
+ disableMarkAsRead
1949
+ }, {
1950
+ messagesDispatcher,
1951
+ sdk,
1952
+ logger,
1953
+ markAsReadScheduler
1954
+ });
1955
+
1956
+ // to set quote message as null
1957
+ useEffect(() => {
1958
+ setQuoteMessage(null);
1959
+ }, [channelUrl]);
1960
+
1961
+ // Hook to handle ChannelEvents and send values to useReducer using messagesDispatcher
1962
+ useHandleChannelEvents({
1963
+ currentGroupChannel,
1964
+ sdkInit,
1965
+ currentUserId: userId,
1966
+ disableMarkAsRead
1967
+ }, {
1968
+ messagesDispatcher,
1969
+ sdk,
1970
+ logger,
1971
+ scrollRef,
1972
+ setQuoteMessage
1973
+ });
1974
+
1975
+ // hook that fetches messages when channel changes
1976
+ // to be clear here useGetChannel sets currentGroupChannel
1977
+ // and useInitialMessagesFetch executes when currentGroupChannel changes
1978
+ // p.s This one executes on initialTimeStamp change too
1979
+ useInitialMessagesFetch({
1980
+ currentGroupChannel,
1981
+ userFilledMessageListQuery,
1982
+ initialTimeStamp,
1983
+ latestMessageTimeStamp,
1984
+ replyType,
1985
+ isVoiceMessageEnabled
1986
+ }, {
1987
+ logger,
1988
+ scrollRef,
1989
+ messagesDispatcher
1990
+ });
1991
+
1992
+ // handles API calls from withSendbird
1993
+ useEffect(() => {
1994
+ const subscriber = pubSubHandler({
1995
+ channelUrl,
1996
+ pubSub,
1997
+ dispatcher: messagesDispatcher,
1998
+ scrollRef
1999
+ });
2000
+ return () => {
2001
+ pubSubHandleRemover(subscriber);
2002
+ };
2003
+ }, [channelUrl, sdkInit]);
2004
+
2005
+ // handling connection breaks
2006
+ useHandleReconnect({
2007
+ isOnline,
2008
+ replyType,
2009
+ disableMarkAsRead
2010
+ }, {
2011
+ logger,
2012
+ sdk,
2013
+ scrollRef,
2014
+ currentGroupChannel,
2015
+ messagesDispatcher,
2016
+ userFilledMessageListQuery,
2017
+ markAsReadScheduler
2018
+ });
2019
+
2020
+ // callbacks for Message CURD actions
2021
+ const deleteMessage = useDeleteMessageCallback({
2022
+ currentGroupChannel,
2023
+ messagesDispatcher
2024
+ }, {
2025
+ logger
2026
+ });
2027
+ const updateMessage = useUpdateMessageCallback({
2028
+ currentGroupChannel,
2029
+ messagesDispatcher,
2030
+ onBeforeUpdateUserMessage,
2031
+ isMentionEnabled
2032
+ }, {
2033
+ logger,
2034
+ pubSub
2035
+ });
2036
+ const resendMessage = useResendMessageCallback({
2037
+ currentGroupChannel,
2038
+ messagesDispatcher
2039
+ }, {
2040
+ logger
2041
+ });
2042
+ const [messageInputRef, sendMessage] = useSendMessageCallback({
2043
+ currentGroupChannel,
2044
+ onBeforeSendUserMessage,
2045
+ isMentionEnabled
2046
+ }, {
2047
+ logger,
2048
+ pubSub,
2049
+ scrollRef,
2050
+ messagesDispatcher
2051
+ });
2052
+ const [sendFileMessage] = useSendFileMessageCallback({
2053
+ currentGroupChannel,
2054
+ onBeforeSendFileMessage,
2055
+ imageCompression
2056
+ }, {
2057
+ logger,
2058
+ pubSub,
2059
+ scrollRef,
2060
+ messagesDispatcher
2061
+ });
2062
+ const [sendVoiceMessage] = useSendVoiceMessageCallback({
2063
+ currentGroupChannel,
2064
+ onBeforeSendVoiceMessage
2065
+ }, {
2066
+ logger,
2067
+ pubSub,
2068
+ scrollRef,
2069
+ messagesDispatcher
2070
+ });
2071
+ return /*#__PURE__*/React__default.createElement(ChannelContext.Provider, {
2072
+ value: {
2073
+ // props
2074
+ channelUrl,
2075
+ isReactionEnabled: usingReaction,
2076
+ isMessageGroupingEnabled,
2077
+ showSearchIcon: showSearchIcon !== null && showSearchIcon !== void 0 ? showSearchIcon : globalConfigs.showSearchIcon,
2078
+ highlightedMessage,
2079
+ startingPoint,
2080
+ onBeforeSendUserMessage,
2081
+ onBeforeSendFileMessage,
2082
+ onBeforeUpdateUserMessage,
2083
+ onChatHeaderActionClick,
2084
+ onSearchClick,
2085
+ onBackClick,
2086
+ replyType,
2087
+ threadReplySelectType: (_ref = threadReplySelectType !== null && threadReplySelectType !== void 0 ? threadReplySelectType : getCaseResolvedThreadReplySelectType(groupChannel.threadReplySelectType).upperCase) !== null && _ref !== void 0 ? _ref : ThreadReplySelectType.THREAD,
2088
+ queries,
2089
+ filterMessageList,
2090
+ disableMarkAsRead,
2091
+ onReplyInThread,
2092
+ onQuoteMessageClick,
2093
+ onMessageAnimated,
2094
+ onMessageHighlighted,
2095
+ // messagesStore
2096
+ allMessages,
2097
+ loading,
2098
+ initialized,
2099
+ unreadSince,
2100
+ isInvalid,
2101
+ currentGroupChannel,
2102
+ hasMorePrev,
2103
+ hasMoreNext,
2104
+ oldestMessageTimeStamp,
2105
+ latestMessageTimeStamp,
2106
+ emojiContainer,
2107
+ readStatus,
2108
+ // utils
2109
+ scrollToMessage,
2110
+ quoteMessage,
2111
+ setQuoteMessage,
2112
+ deleteMessage,
2113
+ updateMessage,
2114
+ resendMessage,
2115
+ messageInputRef,
2116
+ sendMessage,
2117
+ sendFileMessage,
2118
+ sendVoiceMessage,
2119
+ initialTimeStamp,
2120
+ messageActionTypes,
2121
+ messagesDispatcher,
2122
+ setInitialTimeStamp,
2123
+ setAnimatedMessageId,
2124
+ setHighLightedMessageId,
2125
+ animatedMessageId,
2126
+ highLightedMessageId,
2127
+ nicknamesMap,
2128
+ emojiAllMap,
2129
+ onScrollCallback,
2130
+ onScrollDownCallback,
2131
+ scrollRef,
2132
+ scrollBehavior,
2133
+ toggleReaction
2134
+ }
2135
+ }, /*#__PURE__*/React__default.createElement(UserProfileProvider, {
2136
+ disableUserProfile: (_props$disableUserPro = props === null || props === void 0 ? void 0 : props.disableUserProfile) !== null && _props$disableUserPro !== void 0 ? _props$disableUserPro : config === null || config === void 0 ? void 0 : config.disableUserProfile,
2137
+ renderUserProfile: props === null || props === void 0 ? void 0 : props.renderUserProfile,
2138
+ onUserProfileMessage: onUserProfileMessage
2139
+ }, children));
2140
+ };
2141
+ const useChannelContext = () => React__default.useContext(ChannelContext);
2142
+
2143
+ export { ChannelProvider as C, isDisabledBecauseFrozen as a, isDisabledBecauseMuted as b, compareMessagesForGrouping as c, isOperator as d, getIsReactionEnabled as g, isAboutSame as i, useChannelContext as u };
2144
+ //# sourceMappingURL=ChannelProvider-1dc36682.js.map