@sendbird/uikit-react 3.4.0-rc.1 → 3.4.0-rc.2

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 (1241) hide show
  1. package/App.js +664 -0
  2. package/Channel/components/ChannelHeader.js +111 -0
  3. package/Channel/components/ChannelUI.js +234 -0
  4. package/Channel/components/FileViewer.js +155 -0
  5. package/Channel/components/FrozenNotification.js +19 -0
  6. package/Channel/components/Message.js +406 -0
  7. package/Channel/components/MessageInput.js +265 -0
  8. package/Channel/components/MessageList.js +260 -0
  9. package/Channel/components/RemoveMessageModal.js +60 -0
  10. package/Channel/components/SuggestedMentionList.js +314 -0
  11. package/Channel/components/TypingIndicator.js +106 -0
  12. package/Channel/components/UnreadCount.js +40 -0
  13. package/Channel/context.js +28 -0
  14. package/Channel.js +143 -0
  15. package/ChannelList/components/AddChannel.js +76 -0
  16. package/ChannelList/components/ChannelListHeader.js +72 -0
  17. package/ChannelList/components/ChannelListUI.js +268 -0
  18. package/ChannelList/components/ChannelPreview.js +193 -0
  19. package/ChannelList/components/ChannelPreviewAction.js +133 -0
  20. package/ChannelList/context.js +15 -0
  21. package/ChannelList.js +97 -0
  22. package/ChannelListProvider-43f3a74a.js +1074 -0
  23. package/ChannelListProvider-43f3a74a.js.map +1 -0
  24. package/ChannelProvider-def8e42f.js +2283 -0
  25. package/ChannelProvider-def8e42f.js.map +1 -0
  26. package/ChannelSettings/components/ChannelProfile.js +102 -0
  27. package/ChannelSettings/components/ChannelSettingsUI.js +155 -0
  28. package/ChannelSettings/components/EditDetailsModal.js +157 -0
  29. package/ChannelSettings/components/LeaveChannel.js +101 -0
  30. package/ChannelSettings/components/ModerationPanel.js +871 -0
  31. package/ChannelSettings/components/UserListItem.js +108 -0
  32. package/ChannelSettings/components/UserPanel.js +84 -0
  33. package/ChannelSettings/context.js +99 -0
  34. package/ChannelSettings.js +76 -0
  35. package/CreateChannel/components/CreateChannelUI.js +58 -0
  36. package/CreateChannel/components/InviteUsers.js +218 -0
  37. package/CreateChannel/components/SelectChannelType.js +134 -0
  38. package/CreateChannel/context.js +9 -0
  39. package/CreateChannel.js +57 -0
  40. package/CreateChannelProvider-763b1601.js +55 -0
  41. package/CreateChannelProvider-763b1601.js.map +1 -0
  42. package/CreateOpenChannel/components/CreateOpenChannelUI.js +130 -0
  43. package/CreateOpenChannel/context.js +63 -0
  44. package/CreateOpenChannel.js +46 -0
  45. package/EditUserProfile/components/EditUserProfileUI.js +27 -0
  46. package/EditUserProfile.js +40 -0
  47. package/LocalizationContext-a6aa8be8.js +22 -0
  48. package/LocalizationContext-a6aa8be8.js.map +1 -0
  49. package/MediaQueryContext-a551e770.js +90 -0
  50. package/MediaQueryContext-a551e770.js.map +1 -0
  51. package/MemberList-304b6711.js +445 -0
  52. package/MemberList-304b6711.js.map +1 -0
  53. package/MessageSearch/components/MessageSearchUI.js +153 -0
  54. package/MessageSearch/context.js +396 -0
  55. package/MessageSearch.js +148 -0
  56. package/OpenChannel/components/FrozenChannelNotification.js +19 -0
  57. package/OpenChannel/components/OpenChannelHeader.js +90 -0
  58. package/OpenChannel/components/OpenChannelInput.js +62 -0
  59. package/OpenChannel/components/OpenChannelMessage.js +306 -0
  60. package/OpenChannel/components/OpenChannelMessageList.js +167 -0
  61. package/OpenChannel/components/OpenChannelUI.js +118 -0
  62. package/OpenChannel/context.js +16 -0
  63. package/OpenChannel.js +88 -0
  64. package/OpenChannelList/components/OpenChannelListUI.js +197 -0
  65. package/OpenChannelList/components/OpenChannelPreview.js +67 -0
  66. package/OpenChannelList/context.js +8 -0
  67. package/OpenChannelList.js +59 -0
  68. package/OpenChannelListProvider-9dddf0c2.js +434 -0
  69. package/OpenChannelListProvider-9dddf0c2.js.map +1 -0
  70. package/OpenChannelProvider-931c2c9e.js +2000 -0
  71. package/OpenChannelProvider-931c2c9e.js.map +1 -0
  72. package/OpenChannelSettings/components/EditDetailsModal.js +148 -0
  73. package/OpenChannelSettings/components/OpenChannelProfile.js +83 -0
  74. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +126 -0
  75. package/OpenChannelSettings/components/OperatorUI.js +912 -0
  76. package/OpenChannelSettings/components/ParticipantUI.js +37 -0
  77. package/OpenChannelSettings/context.js +145 -0
  78. package/OpenChannelSettings.js +67 -0
  79. package/RemoveMessageModal-aee6074c.js +31 -0
  80. package/RemoveMessageModal-aee6074c.js.map +1 -0
  81. package/SendbirdProvider.js +822 -0
  82. package/Thread/components/ParentMessageInfo.js +370 -0
  83. package/Thread/components/ParentMessageInfoItem.js +214 -0
  84. package/Thread/components/ThreadHeader.js +61 -0
  85. package/Thread/components/ThreadList.js +150 -0
  86. package/Thread/components/ThreadListItem.js +539 -0
  87. package/Thread/components/ThreadMessageInput.js +243 -0
  88. package/Thread/components/ThreadUI.js +334 -0
  89. package/Thread/context.js +19 -0
  90. package/Thread.js +132 -0
  91. package/ThreadProvider-e0d19ff6.js +1724 -0
  92. package/ThreadProvider-e0d19ff6.js.map +1 -0
  93. package/UserProfileContext-dd096494.js +44 -0
  94. package/UserProfileContext-dd096494.js.map +1 -0
  95. package/VoiceMessageInputWrapper-f70b47c7.js +173 -0
  96. package/VoiceMessageInputWrapper-f70b47c7.js.map +1 -0
  97. package/VoicePlayer/context.js +5 -0
  98. package/VoicePlayer/useVoicePlayer.js +87 -0
  99. package/VoiceRecorder/context.js +243 -0
  100. package/VoiceRecorder/useVoiceRecorder.js +117 -0
  101. package/_rollupPluginBabelHelpers-3e5825fa.js +60 -0
  102. package/_rollupPluginBabelHelpers-3e5825fa.js.map +1 -0
  103. package/actionTypes-3245f646.js +6 -0
  104. package/actionTypes-3245f646.js.map +1 -0
  105. package/cjs/App.js +671 -0
  106. package/cjs/Channel/components/ChannelHeader.js +117 -0
  107. package/cjs/Channel/components/ChannelUI.js +240 -0
  108. package/cjs/Channel/components/FileViewer.js +164 -0
  109. package/cjs/Channel/components/FrozenNotification.js +25 -0
  110. package/cjs/Channel/components/Message.js +412 -0
  111. package/cjs/Channel/components/MessageInput.js +271 -0
  112. package/cjs/Channel/components/MessageList.js +266 -0
  113. package/cjs/Channel/components/RemoveMessageModal.js +66 -0
  114. package/cjs/Channel/components/SuggestedMentionList.js +320 -0
  115. package/cjs/Channel/components/TypingIndicator.js +115 -0
  116. package/cjs/Channel/components/UnreadCount.js +46 -0
  117. package/cjs/Channel/context.js +41 -0
  118. package/cjs/Channel.js +149 -0
  119. package/cjs/ChannelList/components/AddChannel.js +85 -0
  120. package/cjs/ChannelList/components/ChannelListHeader.js +78 -0
  121. package/cjs/ChannelList/components/ChannelListUI.js +274 -0
  122. package/cjs/ChannelList/components/ChannelPreview.js +199 -0
  123. package/cjs/ChannelList/components/ChannelPreviewAction.js +140 -0
  124. package/cjs/ChannelList/context.js +24 -0
  125. package/cjs/ChannelList.js +103 -0
  126. package/cjs/ChannelListProvider-81b54cf3.js +1086 -0
  127. package/cjs/ChannelListProvider-81b54cf3.js.map +1 -0
  128. package/cjs/ChannelProvider-498847bc.js +2296 -0
  129. package/cjs/ChannelProvider-498847bc.js.map +1 -0
  130. package/cjs/ChannelSettings/components/ChannelProfile.js +108 -0
  131. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +161 -0
  132. package/cjs/ChannelSettings/components/EditDetailsModal.js +163 -0
  133. package/cjs/ChannelSettings/components/LeaveChannel.js +107 -0
  134. package/cjs/ChannelSettings/components/ModerationPanel.js +877 -0
  135. package/cjs/ChannelSettings/components/UserListItem.js +114 -0
  136. package/cjs/ChannelSettings/components/UserPanel.js +90 -0
  137. package/cjs/ChannelSettings/context.js +108 -0
  138. package/cjs/ChannelSettings.js +82 -0
  139. package/cjs/CreateChannel/components/CreateChannelUI.js +64 -0
  140. package/cjs/CreateChannel/components/InviteUsers.js +224 -0
  141. package/cjs/CreateChannel/components/SelectChannelType.js +140 -0
  142. package/cjs/CreateChannel/context.js +18 -0
  143. package/cjs/CreateChannel.js +63 -0
  144. package/cjs/CreateChannelProvider-a7ea8fd0.js +62 -0
  145. package/cjs/CreateChannelProvider-a7ea8fd0.js.map +1 -0
  146. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +136 -0
  147. package/cjs/CreateOpenChannel/context.js +72 -0
  148. package/cjs/CreateOpenChannel.js +52 -0
  149. package/cjs/EditUserProfile/components/EditUserProfileUI.js +33 -0
  150. package/cjs/EditUserProfile.js +46 -0
  151. package/cjs/LocalizationContext-53fd4ae9.js +30 -0
  152. package/cjs/LocalizationContext-53fd4ae9.js.map +1 -0
  153. package/cjs/MediaQueryContext-cfb37524.js +97 -0
  154. package/cjs/MediaQueryContext-cfb37524.js.map +1 -0
  155. package/cjs/MemberList-5d8110fb.js +451 -0
  156. package/cjs/MemberList-5d8110fb.js.map +1 -0
  157. package/cjs/MessageSearch/components/MessageSearchUI.js +162 -0
  158. package/cjs/MessageSearch/context.js +405 -0
  159. package/cjs/MessageSearch.js +154 -0
  160. package/cjs/OpenChannel/components/FrozenChannelNotification.js +25 -0
  161. package/cjs/OpenChannel/components/OpenChannelHeader.js +96 -0
  162. package/cjs/OpenChannel/components/OpenChannelInput.js +68 -0
  163. package/cjs/OpenChannel/components/OpenChannelMessage.js +312 -0
  164. package/cjs/OpenChannel/components/OpenChannelMessageList.js +173 -0
  165. package/cjs/OpenChannel/components/OpenChannelUI.js +124 -0
  166. package/cjs/OpenChannel/context.js +25 -0
  167. package/cjs/OpenChannel.js +94 -0
  168. package/cjs/OpenChannelList/components/OpenChannelListUI.js +203 -0
  169. package/cjs/OpenChannelList/components/OpenChannelPreview.js +73 -0
  170. package/cjs/OpenChannelList/context.js +18 -0
  171. package/cjs/OpenChannelList.js +65 -0
  172. package/cjs/OpenChannelListProvider-523d5e22.js +443 -0
  173. package/cjs/OpenChannelListProvider-523d5e22.js.map +1 -0
  174. package/cjs/OpenChannelProvider-49f11291.js +2009 -0
  175. package/cjs/OpenChannelProvider-49f11291.js.map +1 -0
  176. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +154 -0
  177. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +89 -0
  178. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +132 -0
  179. package/cjs/OpenChannelSettings/components/OperatorUI.js +922 -0
  180. package/cjs/OpenChannelSettings/components/ParticipantUI.js +43 -0
  181. package/cjs/OpenChannelSettings/context.js +154 -0
  182. package/cjs/OpenChannelSettings.js +73 -0
  183. package/cjs/RemoveMessageModal-29719052.js +37 -0
  184. package/cjs/RemoveMessageModal-29719052.js.map +1 -0
  185. package/cjs/SendbirdProvider.js +831 -0
  186. package/cjs/Thread/components/ParentMessageInfo.js +376 -0
  187. package/cjs/Thread/components/ParentMessageInfoItem.js +220 -0
  188. package/cjs/Thread/components/ThreadHeader.js +67 -0
  189. package/cjs/Thread/components/ThreadList.js +156 -0
  190. package/cjs/Thread/components/ThreadListItem.js +545 -0
  191. package/cjs/Thread/components/ThreadMessageInput.js +249 -0
  192. package/cjs/Thread/components/ThreadUI.js +340 -0
  193. package/cjs/Thread/context.js +28 -0
  194. package/cjs/Thread.js +138 -0
  195. package/cjs/ThreadProvider-2dc43e25.js +1733 -0
  196. package/cjs/ThreadProvider-2dc43e25.js.map +1 -0
  197. package/cjs/UserProfileContext-c7d6be85.js +52 -0
  198. package/cjs/UserProfileContext-c7d6be85.js.map +1 -0
  199. package/cjs/VoiceMessageInputWrapper-965de260.js +179 -0
  200. package/cjs/VoiceMessageInputWrapper-965de260.js.map +1 -0
  201. package/cjs/VoicePlayer/context.js +14 -0
  202. package/cjs/VoicePlayer/useVoicePlayer.js +91 -0
  203. package/cjs/VoiceRecorder/context.js +253 -0
  204. package/cjs/VoiceRecorder/useVoiceRecorder.js +122 -0
  205. package/cjs/_rollupPluginBabelHelpers-3c8c757e.js +63 -0
  206. package/cjs/_rollupPluginBabelHelpers-3c8c757e.js.map +1 -0
  207. package/cjs/actionTypes-30b8654a.js +10 -0
  208. package/cjs/actionTypes-30b8654a.js.map +1 -0
  209. package/cjs/color-578986d2.js +45 -0
  210. package/cjs/color-578986d2.js.map +1 -0
  211. package/cjs/compareIds-d78964c7.js +18 -0
  212. package/cjs/compareIds-d78964c7.js.map +1 -0
  213. package/cjs/const-5e034408.js +20 -0
  214. package/cjs/const-5e034408.js.map +1 -0
  215. package/cjs/const-6d262369.js +22 -0
  216. package/cjs/const-6d262369.js.map +1 -0
  217. package/cjs/consts-b08b4ca6.js +36 -0
  218. package/cjs/consts-b08b4ca6.js.map +1 -0
  219. package/cjs/context-43fa845b.js +19 -0
  220. package/cjs/context-43fa845b.js.map +1 -0
  221. package/cjs/index-160b94cd.js +178 -0
  222. package/cjs/index-160b94cd.js.map +1 -0
  223. package/cjs/index-178229c9.js +280 -0
  224. package/cjs/index-178229c9.js.map +1 -0
  225. package/cjs/index-331d013f.js +157 -0
  226. package/cjs/index-331d013f.js.map +1 -0
  227. package/cjs/index-482bbe89.js +747 -0
  228. package/cjs/index-482bbe89.js.map +1 -0
  229. package/cjs/index-5706b33b.js +68 -0
  230. package/cjs/index-5706b33b.js.map +1 -0
  231. package/cjs/index-7630682a.js +119 -0
  232. package/cjs/index-7630682a.js.map +1 -0
  233. package/cjs/index-7c018421.js +503 -0
  234. package/cjs/index-7c018421.js.map +1 -0
  235. package/cjs/index-a283267f.js +1857 -0
  236. package/cjs/index-a283267f.js.map +1 -0
  237. package/cjs/index-a6416067.js +360 -0
  238. package/cjs/index-a6416067.js.map +1 -0
  239. package/cjs/index-cc0a43a7.js +194 -0
  240. package/cjs/index-cc0a43a7.js.map +1 -0
  241. package/cjs/index-db48f031.js +143 -0
  242. package/cjs/index-db48f031.js.map +1 -0
  243. package/cjs/index-e42edbd5.js +174 -0
  244. package/cjs/index-e42edbd5.js.map +1 -0
  245. package/cjs/index-e49314a5.js +9 -0
  246. package/cjs/index-e49314a5.js.map +1 -0
  247. package/cjs/index-ef4f97c8.js +179 -0
  248. package/cjs/index-ef4f97c8.js.map +1 -0
  249. package/cjs/index.js +197 -0
  250. package/cjs/sendbirdSelectors.js +696 -0
  251. package/cjs/stringSet-42fa6280.js +183 -0
  252. package/cjs/stringSet-42fa6280.js.map +1 -0
  253. package/cjs/topics-bc8e923e.js +22 -0
  254. package/cjs/topics-bc8e923e.js.map +1 -0
  255. package/cjs/tslib.es6-5163dacf.js +97 -0
  256. package/cjs/tslib.es6-5163dacf.js.map +1 -0
  257. package/cjs/types-c8782eaf.js +11 -0
  258. package/cjs/types-c8782eaf.js.map +1 -0
  259. package/cjs/ui/Accordion.js +73 -0
  260. package/cjs/ui/AccordionGroup.js +32 -0
  261. package/cjs/ui/AdminMessage.js +34 -0
  262. package/cjs/ui/Avatar.js +225 -0
  263. package/cjs/ui/Badge.js +34 -0
  264. package/cjs/ui/BottomSheet.js +43 -0
  265. package/cjs/ui/Button.js +94 -0
  266. package/cjs/ui/ChannelAvatar.js +58 -0
  267. package/cjs/ui/ConnectionStatus.js +31 -0
  268. package/cjs/ui/ContextMenu.js +329 -0
  269. package/cjs/ui/DateSeparator.js +36 -0
  270. package/cjs/ui/EmojiReactions.js +140 -0
  271. package/cjs/ui/FileMessageItemBody.js +64 -0
  272. package/cjs/ui/FileViewer.js +137 -0
  273. package/cjs/ui/IconButton.js +60 -0
  274. package/cjs/ui/ImageRenderer.js +101 -0
  275. package/cjs/ui/Input.js +54 -0
  276. package/cjs/ui/Label.js +16 -0
  277. package/cjs/ui/LinkLabel.js +60 -0
  278. package/cjs/ui/Loader.js +34 -0
  279. package/cjs/ui/MentionLabel.js +104 -0
  280. package/cjs/ui/MessageContent.js +778 -0
  281. package/cjs/ui/MessageInput.js +590 -0
  282. package/cjs/ui/MessageItemMenu.js +163 -0
  283. package/cjs/ui/MessageItemReactionMenu.js +113 -0
  284. package/cjs/ui/MessageSearchFileItem.js +134 -0
  285. package/cjs/ui/MessageSearchItem.js +102 -0
  286. package/cjs/ui/MessageStatus.js +25 -0
  287. package/cjs/ui/Modal.js +126 -0
  288. package/cjs/ui/OGMessageItemBody.js +139 -0
  289. package/cjs/ui/OpenChannelAdminMessage.js +26 -0
  290. package/cjs/ui/OpenChannelAvatar.js +40 -0
  291. package/cjs/ui/OpenchannelConversationHeader.js +72 -0
  292. package/cjs/ui/OpenchannelFileMessage.js +264 -0
  293. package/cjs/ui/OpenchannelOGMessage.js +380 -0
  294. package/cjs/ui/OpenchannelThumbnailMessage.js +339 -0
  295. package/cjs/ui/OpenchannelUserMessage.js +289 -0
  296. package/cjs/ui/PlaceHolder.js +20 -0
  297. package/cjs/ui/PlaybackTime.js +36 -0
  298. package/cjs/ui/QuoteMessage.js +158 -0
  299. package/cjs/ui/QuoteMessageInput.js +98 -0
  300. package/cjs/ui/ReactionBadge.js +58 -0
  301. package/cjs/ui/ReactionButton.js +44 -0
  302. package/cjs/ui/SortByRow.js +47 -0
  303. package/cjs/ui/TextButton.js +37 -0
  304. package/cjs/ui/TextMessageItemBody.js +86 -0
  305. package/cjs/ui/ThreadReplies.js +82 -0
  306. package/cjs/ui/ThumbnailMessageItemBody.js +86 -0
  307. package/cjs/ui/Tooltip.js +28 -0
  308. package/cjs/ui/TooltipWrapper.js +55 -0
  309. package/cjs/ui/UnknownMessageItemBody.js +43 -0
  310. package/cjs/ui/UserListItem.js +133 -0
  311. package/cjs/ui/UserProfile.js +91 -0
  312. package/cjs/ui/VoiceMessageItemBody.js +119 -0
  313. package/cjs/ui/VoiceMessgeInput.js +23 -0
  314. package/cjs/ui/Word.js +115 -0
  315. package/cjs/useLongPress-591a6fa9.js +118 -0
  316. package/cjs/useLongPress-591a6fa9.js.map +1 -0
  317. package/cjs/useSendbirdStateContext.js +22 -0
  318. package/cjs/utils/message/isVoiceMessage.js +10 -0
  319. package/cjs/utils-09e1cb5d.js +6 -0
  320. package/cjs/utils-09e1cb5d.js.map +1 -0
  321. package/cjs/utils-bafa76b3.js +32 -0
  322. package/cjs/utils-bafa76b3.js.map +1 -0
  323. package/cjs/utils-dfe9178d.js +32 -0
  324. package/cjs/utils-dfe9178d.js.map +1 -0
  325. package/cjs/utils-ea9d80f3.js +38 -0
  326. package/cjs/utils-ea9d80f3.js.map +1 -0
  327. package/cjs/uuid-e879709a.js +19 -0
  328. package/cjs/uuid-e879709a.js.map +1 -0
  329. package/cjs/withSendbird.js +33 -0
  330. package/color-ed83ffc3.js +43 -0
  331. package/color-ed83ffc3.js.map +1 -0
  332. package/compareIds-c8335d61.js +16 -0
  333. package/compareIds-c8335d61.js.map +1 -0
  334. package/const-a965f964.js +18 -0
  335. package/const-a965f964.js.map +1 -0
  336. package/const-e27598a1.js +14 -0
  337. package/const-e27598a1.js.map +1 -0
  338. package/consts-886b25ca.js +23 -0
  339. package/consts-886b25ca.js.map +1 -0
  340. package/context-2f7024fc.js +12 -0
  341. package/context-2f7024fc.js.map +1 -0
  342. package/index-00eb27a6.js +66 -0
  343. package/index-00eb27a6.js.map +1 -0
  344. package/index-1c547263.js +172 -0
  345. package/index-1c547263.js.map +1 -0
  346. package/index-3a76c1d2.js +353 -0
  347. package/index-3a76c1d2.js.map +1 -0
  348. package/index-4625f10e.js +179 -0
  349. package/index-4625f10e.js.map +1 -0
  350. package/index-67c5e94c.js +132 -0
  351. package/index-67c5e94c.js.map +1 -0
  352. package/index-6ccea9a6.js +1852 -0
  353. package/index-6ccea9a6.js.map +1 -0
  354. package/index-7283bb53.js +174 -0
  355. package/index-7283bb53.js.map +1 -0
  356. package/index-757a563a.js +501 -0
  357. package/index-757a563a.js.map +1 -0
  358. package/index-86034384.js +111 -0
  359. package/index-86034384.js.map +1 -0
  360. package/index-8ee9e1f5.js +706 -0
  361. package/index-8ee9e1f5.js.map +1 -0
  362. package/index-978b3d6d.js +167 -0
  363. package/index-978b3d6d.js.map +1 -0
  364. package/index-a3a4b35c.js +271 -0
  365. package/index-a3a4b35c.js.map +1 -0
  366. package/index-c8a147a4.js +145 -0
  367. package/index-c8a147a4.js.map +1 -0
  368. package/index-d4908e3c.js +7 -0
  369. package/index-d4908e3c.js.map +1 -0
  370. package/index.d.ts +2501 -0
  371. package/index.js +177 -0
  372. package/package.json +28 -54
  373. package/sendbirdSelectors.js +671 -0
  374. package/stringSet-ad8993d1.js +181 -0
  375. package/stringSet-ad8993d1.js.map +1 -0
  376. package/topics-9fbe0d61.js +13 -0
  377. package/topics-9fbe0d61.js.map +1 -0
  378. package/tslib.es6-cd680863.js +92 -0
  379. package/tslib.es6-cd680863.js.map +1 -0
  380. package/types-17028dc8.js +9 -0
  381. package/types-17028dc8.js.map +1 -0
  382. package/ui/Accordion.js +64 -0
  383. package/ui/AccordionGroup.js +26 -0
  384. package/ui/AdminMessage.js +28 -0
  385. package/ui/Avatar.js +216 -0
  386. package/ui/Badge.js +28 -0
  387. package/ui/BottomSheet.js +37 -0
  388. package/ui/Button.js +84 -0
  389. package/ui/ChannelAvatar.js +52 -0
  390. package/ui/ConnectionStatus.js +25 -0
  391. package/ui/ContextMenu.js +316 -0
  392. package/ui/DateSeparator.js +30 -0
  393. package/ui/EmojiReactions.js +134 -0
  394. package/ui/FileMessageItemBody.js +58 -0
  395. package/ui/FileViewer.js +128 -0
  396. package/ui/IconButton.js +54 -0
  397. package/ui/ImageRenderer.js +95 -0
  398. package/ui/Input.js +45 -0
  399. package/ui/Label.js +5 -0
  400. package/ui/LinkLabel.js +49 -0
  401. package/ui/Loader.js +28 -0
  402. package/ui/MentionLabel.js +98 -0
  403. package/ui/MessageContent.js +772 -0
  404. package/ui/MessageInput.js +583 -0
  405. package/ui/MessageItemMenu.js +157 -0
  406. package/ui/MessageItemReactionMenu.js +107 -0
  407. package/ui/MessageSearchFileItem.js +128 -0
  408. package/ui/MessageSearchItem.js +96 -0
  409. package/ui/MessageStatus.js +16 -0
  410. package/ui/Modal.js +115 -0
  411. package/ui/OGMessageItemBody.js +133 -0
  412. package/ui/OpenChannelAdminMessage.js +20 -0
  413. package/ui/OpenChannelAvatar.js +34 -0
  414. package/ui/OpenchannelConversationHeader.js +66 -0
  415. package/ui/OpenchannelFileMessage.js +258 -0
  416. package/ui/OpenchannelOGMessage.js +374 -0
  417. package/ui/OpenchannelThumbnailMessage.js +333 -0
  418. package/ui/OpenchannelUserMessage.js +283 -0
  419. package/ui/PlaceHolder.js +11 -0
  420. package/ui/PlaybackTime.js +27 -0
  421. package/ui/QuoteMessage.js +152 -0
  422. package/ui/QuoteMessageInput.js +92 -0
  423. package/ui/ReactionBadge.js +52 -0
  424. package/ui/ReactionButton.js +38 -0
  425. package/ui/SortByRow.js +41 -0
  426. package/ui/TextButton.js +31 -0
  427. package/ui/TextMessageItemBody.js +80 -0
  428. package/ui/ThreadReplies.js +76 -0
  429. package/ui/ThumbnailMessageItemBody.js +80 -0
  430. package/ui/Tooltip.js +22 -0
  431. package/ui/TooltipWrapper.js +49 -0
  432. package/ui/UnknownMessageItemBody.js +37 -0
  433. package/ui/UserListItem.js +127 -0
  434. package/ui/UserProfile.js +85 -0
  435. package/ui/VoiceMessageItemBody.js +110 -0
  436. package/ui/VoiceMessgeInput.js +15 -0
  437. package/ui/Word.js +109 -0
  438. package/useLongPress-49f5ba4f.js +116 -0
  439. package/useLongPress-49f5ba4f.js.map +1 -0
  440. package/useSendbirdStateContext.js +20 -0
  441. package/utils/message/isVoiceMessage.js +7 -0
  442. package/utils-aae15fda.js +4 -0
  443. package/utils-aae15fda.js.map +1 -0
  444. package/utils-c196d7c4.js +34 -0
  445. package/utils-c196d7c4.js.map +1 -0
  446. package/utils-d5c443b8.js +30 -0
  447. package/utils-d5c443b8.js.map +1 -0
  448. package/utils-fe2f08d7.js +30 -0
  449. package/utils-fe2f08d7.js.map +1 -0
  450. package/uuid-9f7da91d.js +17 -0
  451. package/uuid-9f7da91d.js.map +1 -0
  452. package/withSendbird.js +24 -0
  453. package/dist/App.js +0 -664
  454. package/dist/CHANGELOG.md +0 -782
  455. package/dist/Channel/components/ChannelHeader.js +0 -111
  456. package/dist/Channel/components/ChannelUI.js +0 -234
  457. package/dist/Channel/components/FileViewer.js +0 -155
  458. package/dist/Channel/components/FrozenNotification.js +0 -19
  459. package/dist/Channel/components/Message.js +0 -406
  460. package/dist/Channel/components/MessageInput.js +0 -265
  461. package/dist/Channel/components/MessageList.js +0 -260
  462. package/dist/Channel/components/RemoveMessageModal.js +0 -60
  463. package/dist/Channel/components/SuggestedMentionList.js +0 -314
  464. package/dist/Channel/components/TypingIndicator.js +0 -106
  465. package/dist/Channel/components/UnreadCount.js +0 -40
  466. package/dist/Channel/context.js +0 -28
  467. package/dist/Channel.js +0 -143
  468. package/dist/ChannelList/components/AddChannel.js +0 -76
  469. package/dist/ChannelList/components/ChannelListHeader.js +0 -72
  470. package/dist/ChannelList/components/ChannelListUI.js +0 -268
  471. package/dist/ChannelList/components/ChannelPreview.js +0 -193
  472. package/dist/ChannelList/components/ChannelPreviewAction.js +0 -133
  473. package/dist/ChannelList/context.js +0 -15
  474. package/dist/ChannelList.js +0 -97
  475. package/dist/ChannelListProvider-eced39aa.js +0 -1074
  476. package/dist/ChannelListProvider-eced39aa.js.map +0 -1
  477. package/dist/ChannelProvider-bbe16a96.js +0 -2283
  478. package/dist/ChannelProvider-bbe16a96.js.map +0 -1
  479. package/dist/ChannelSettings/components/ChannelProfile.js +0 -102
  480. package/dist/ChannelSettings/components/ChannelSettingsUI.js +0 -155
  481. package/dist/ChannelSettings/components/EditDetailsModal.js +0 -157
  482. package/dist/ChannelSettings/components/LeaveChannel.js +0 -101
  483. package/dist/ChannelSettings/components/ModerationPanel.js +0 -871
  484. package/dist/ChannelSettings/components/UserListItem.js +0 -108
  485. package/dist/ChannelSettings/components/UserPanel.js +0 -84
  486. package/dist/ChannelSettings/context.js +0 -99
  487. package/dist/ChannelSettings.js +0 -76
  488. package/dist/CreateChannel/components/CreateChannelUI.js +0 -58
  489. package/dist/CreateChannel/components/InviteUsers.js +0 -218
  490. package/dist/CreateChannel/components/SelectChannelType.js +0 -134
  491. package/dist/CreateChannel/context.js +0 -9
  492. package/dist/CreateChannel.js +0 -57
  493. package/dist/CreateChannelProvider-951098e6.js +0 -55
  494. package/dist/CreateChannelProvider-951098e6.js.map +0 -1
  495. package/dist/CreateOpenChannel/components/CreateOpenChannelUI.js +0 -130
  496. package/dist/CreateOpenChannel/context.js +0 -63
  497. package/dist/CreateOpenChannel.js +0 -46
  498. package/dist/EditUserProfile/components/EditUserProfileUI.js +0 -27
  499. package/dist/EditUserProfile.js +0 -40
  500. package/dist/LICENSE +0 -21
  501. package/dist/LocalizationContext-948efac4.js +0 -22
  502. package/dist/LocalizationContext-948efac4.js.map +0 -1
  503. package/dist/MediaQueryContext-b04e7ffd.js +0 -90
  504. package/dist/MediaQueryContext-b04e7ffd.js.map +0 -1
  505. package/dist/MemberList-af295cb0.js +0 -445
  506. package/dist/MemberList-af295cb0.js.map +0 -1
  507. package/dist/MessageSearch/components/MessageSearchUI.js +0 -153
  508. package/dist/MessageSearch/context.js +0 -396
  509. package/dist/MessageSearch.js +0 -148
  510. package/dist/OpenChannel/components/FrozenChannelNotification.js +0 -19
  511. package/dist/OpenChannel/components/OpenChannelHeader.js +0 -90
  512. package/dist/OpenChannel/components/OpenChannelInput.js +0 -62
  513. package/dist/OpenChannel/components/OpenChannelMessage.js +0 -306
  514. package/dist/OpenChannel/components/OpenChannelMessageList.js +0 -167
  515. package/dist/OpenChannel/components/OpenChannelUI.js +0 -118
  516. package/dist/OpenChannel/context.js +0 -16
  517. package/dist/OpenChannel.js +0 -88
  518. package/dist/OpenChannelList/components/OpenChannelListUI.js +0 -197
  519. package/dist/OpenChannelList/components/OpenChannelPreview.js +0 -67
  520. package/dist/OpenChannelList/context.js +0 -8
  521. package/dist/OpenChannelList.js +0 -59
  522. package/dist/OpenChannelListProvider-13b17927.js +0 -434
  523. package/dist/OpenChannelListProvider-13b17927.js.map +0 -1
  524. package/dist/OpenChannelProvider-180d3e3a.js +0 -2000
  525. package/dist/OpenChannelProvider-180d3e3a.js.map +0 -1
  526. package/dist/OpenChannelSettings/components/EditDetailsModal.js +0 -148
  527. package/dist/OpenChannelSettings/components/OpenChannelProfile.js +0 -83
  528. package/dist/OpenChannelSettings/components/OpenChannelSettingsUI.js +0 -126
  529. package/dist/OpenChannelSettings/components/OperatorUI.js +0 -912
  530. package/dist/OpenChannelSettings/components/ParticipantUI.js +0 -37
  531. package/dist/OpenChannelSettings/context.js +0 -145
  532. package/dist/OpenChannelSettings.js +0 -67
  533. package/dist/README.md +0 -131
  534. package/dist/RemoveMessageModal-f1a27721.js +0 -31
  535. package/dist/RemoveMessageModal-f1a27721.js.map +0 -1
  536. package/dist/SendbirdProvider.js +0 -822
  537. package/dist/Thread/components/ParentMessageInfo.js +0 -370
  538. package/dist/Thread/components/ParentMessageInfoItem.js +0 -214
  539. package/dist/Thread/components/ThreadHeader.js +0 -61
  540. package/dist/Thread/components/ThreadList.js +0 -150
  541. package/dist/Thread/components/ThreadListItem.js +0 -539
  542. package/dist/Thread/components/ThreadMessageInput.js +0 -243
  543. package/dist/Thread/components/ThreadUI.js +0 -334
  544. package/dist/Thread/context.js +0 -19
  545. package/dist/Thread.js +0 -132
  546. package/dist/ThreadProvider-50bdb59e.js +0 -1724
  547. package/dist/ThreadProvider-50bdb59e.js.map +0 -1
  548. package/dist/UserProfileContext-74d60d34.js +0 -44
  549. package/dist/UserProfileContext-74d60d34.js.map +0 -1
  550. package/dist/VoiceMessageInputWrapper-e5f8b5d0.js +0 -173
  551. package/dist/VoiceMessageInputWrapper-e5f8b5d0.js.map +0 -1
  552. package/dist/VoicePlayer/context.js +0 -5
  553. package/dist/VoicePlayer/useVoicePlayer.js +0 -87
  554. package/dist/VoiceRecorder/context.js +0 -243
  555. package/dist/VoiceRecorder/useVoiceRecorder.js +0 -117
  556. package/dist/_rollupPluginBabelHelpers-e4ed87a8.js +0 -60
  557. package/dist/_rollupPluginBabelHelpers-e4ed87a8.js.map +0 -1
  558. package/dist/actionTypes-a37e872a.js +0 -6
  559. package/dist/actionTypes-a37e872a.js.map +0 -1
  560. package/dist/cjs/App.js +0 -671
  561. package/dist/cjs/Channel/components/ChannelHeader.js +0 -117
  562. package/dist/cjs/Channel/components/ChannelUI.js +0 -240
  563. package/dist/cjs/Channel/components/FileViewer.js +0 -164
  564. package/dist/cjs/Channel/components/FrozenNotification.js +0 -25
  565. package/dist/cjs/Channel/components/Message.js +0 -412
  566. package/dist/cjs/Channel/components/MessageInput.js +0 -271
  567. package/dist/cjs/Channel/components/MessageList.js +0 -266
  568. package/dist/cjs/Channel/components/RemoveMessageModal.js +0 -66
  569. package/dist/cjs/Channel/components/SuggestedMentionList.js +0 -320
  570. package/dist/cjs/Channel/components/TypingIndicator.js +0 -115
  571. package/dist/cjs/Channel/components/UnreadCount.js +0 -46
  572. package/dist/cjs/Channel/context.js +0 -41
  573. package/dist/cjs/Channel.js +0 -149
  574. package/dist/cjs/ChannelList/components/AddChannel.js +0 -85
  575. package/dist/cjs/ChannelList/components/ChannelListHeader.js +0 -78
  576. package/dist/cjs/ChannelList/components/ChannelListUI.js +0 -274
  577. package/dist/cjs/ChannelList/components/ChannelPreview.js +0 -199
  578. package/dist/cjs/ChannelList/components/ChannelPreviewAction.js +0 -140
  579. package/dist/cjs/ChannelList/context.js +0 -24
  580. package/dist/cjs/ChannelList.js +0 -103
  581. package/dist/cjs/ChannelListProvider-854e774b.js +0 -1086
  582. package/dist/cjs/ChannelListProvider-854e774b.js.map +0 -1
  583. package/dist/cjs/ChannelProvider-367995a6.js +0 -2296
  584. package/dist/cjs/ChannelProvider-367995a6.js.map +0 -1
  585. package/dist/cjs/ChannelSettings/components/ChannelProfile.js +0 -108
  586. package/dist/cjs/ChannelSettings/components/ChannelSettingsUI.js +0 -161
  587. package/dist/cjs/ChannelSettings/components/EditDetailsModal.js +0 -163
  588. package/dist/cjs/ChannelSettings/components/LeaveChannel.js +0 -107
  589. package/dist/cjs/ChannelSettings/components/ModerationPanel.js +0 -877
  590. package/dist/cjs/ChannelSettings/components/UserListItem.js +0 -114
  591. package/dist/cjs/ChannelSettings/components/UserPanel.js +0 -90
  592. package/dist/cjs/ChannelSettings/context.js +0 -108
  593. package/dist/cjs/ChannelSettings.js +0 -82
  594. package/dist/cjs/CreateChannel/components/CreateChannelUI.js +0 -64
  595. package/dist/cjs/CreateChannel/components/InviteUsers.js +0 -224
  596. package/dist/cjs/CreateChannel/components/SelectChannelType.js +0 -140
  597. package/dist/cjs/CreateChannel/context.js +0 -18
  598. package/dist/cjs/CreateChannel.js +0 -63
  599. package/dist/cjs/CreateChannelProvider-31020b12.js +0 -62
  600. package/dist/cjs/CreateChannelProvider-31020b12.js.map +0 -1
  601. package/dist/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +0 -136
  602. package/dist/cjs/CreateOpenChannel/context.js +0 -72
  603. package/dist/cjs/CreateOpenChannel.js +0 -52
  604. package/dist/cjs/EditUserProfile/components/EditUserProfileUI.js +0 -33
  605. package/dist/cjs/EditUserProfile.js +0 -46
  606. package/dist/cjs/LocalizationContext-2fb0be1f.js +0 -30
  607. package/dist/cjs/LocalizationContext-2fb0be1f.js.map +0 -1
  608. package/dist/cjs/MediaQueryContext-db5159f3.js +0 -97
  609. package/dist/cjs/MediaQueryContext-db5159f3.js.map +0 -1
  610. package/dist/cjs/MemberList-3049bffe.js +0 -451
  611. package/dist/cjs/MemberList-3049bffe.js.map +0 -1
  612. package/dist/cjs/MessageSearch/components/MessageSearchUI.js +0 -162
  613. package/dist/cjs/MessageSearch/context.js +0 -405
  614. package/dist/cjs/MessageSearch.js +0 -154
  615. package/dist/cjs/OpenChannel/components/FrozenChannelNotification.js +0 -25
  616. package/dist/cjs/OpenChannel/components/OpenChannelHeader.js +0 -96
  617. package/dist/cjs/OpenChannel/components/OpenChannelInput.js +0 -68
  618. package/dist/cjs/OpenChannel/components/OpenChannelMessage.js +0 -312
  619. package/dist/cjs/OpenChannel/components/OpenChannelMessageList.js +0 -173
  620. package/dist/cjs/OpenChannel/components/OpenChannelUI.js +0 -124
  621. package/dist/cjs/OpenChannel/context.js +0 -25
  622. package/dist/cjs/OpenChannel.js +0 -94
  623. package/dist/cjs/OpenChannelList/components/OpenChannelListUI.js +0 -203
  624. package/dist/cjs/OpenChannelList/components/OpenChannelPreview.js +0 -73
  625. package/dist/cjs/OpenChannelList/context.js +0 -18
  626. package/dist/cjs/OpenChannelList.js +0 -65
  627. package/dist/cjs/OpenChannelListProvider-fee6af21.js +0 -443
  628. package/dist/cjs/OpenChannelListProvider-fee6af21.js.map +0 -1
  629. package/dist/cjs/OpenChannelProvider-bf43f315.js +0 -2009
  630. package/dist/cjs/OpenChannelProvider-bf43f315.js.map +0 -1
  631. package/dist/cjs/OpenChannelSettings/components/EditDetailsModal.js +0 -154
  632. package/dist/cjs/OpenChannelSettings/components/OpenChannelProfile.js +0 -89
  633. package/dist/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +0 -132
  634. package/dist/cjs/OpenChannelSettings/components/OperatorUI.js +0 -922
  635. package/dist/cjs/OpenChannelSettings/components/ParticipantUI.js +0 -43
  636. package/dist/cjs/OpenChannelSettings/context.js +0 -154
  637. package/dist/cjs/OpenChannelSettings.js +0 -73
  638. package/dist/cjs/RemoveMessageModal-a9a5cd37.js +0 -37
  639. package/dist/cjs/RemoveMessageModal-a9a5cd37.js.map +0 -1
  640. package/dist/cjs/SendbirdProvider.js +0 -831
  641. package/dist/cjs/Thread/components/ParentMessageInfo.js +0 -376
  642. package/dist/cjs/Thread/components/ParentMessageInfoItem.js +0 -220
  643. package/dist/cjs/Thread/components/ThreadHeader.js +0 -67
  644. package/dist/cjs/Thread/components/ThreadList.js +0 -156
  645. package/dist/cjs/Thread/components/ThreadListItem.js +0 -545
  646. package/dist/cjs/Thread/components/ThreadMessageInput.js +0 -249
  647. package/dist/cjs/Thread/components/ThreadUI.js +0 -340
  648. package/dist/cjs/Thread/context.js +0 -28
  649. package/dist/cjs/Thread.js +0 -138
  650. package/dist/cjs/ThreadProvider-6300587c.js +0 -1733
  651. package/dist/cjs/ThreadProvider-6300587c.js.map +0 -1
  652. package/dist/cjs/UserProfileContext-0549101e.js +0 -52
  653. package/dist/cjs/UserProfileContext-0549101e.js.map +0 -1
  654. package/dist/cjs/VoiceMessageInputWrapper-8eb47421.js +0 -179
  655. package/dist/cjs/VoiceMessageInputWrapper-8eb47421.js.map +0 -1
  656. package/dist/cjs/VoicePlayer/context.js +0 -14
  657. package/dist/cjs/VoicePlayer/useVoicePlayer.js +0 -91
  658. package/dist/cjs/VoiceRecorder/context.js +0 -253
  659. package/dist/cjs/VoiceRecorder/useVoiceRecorder.js +0 -122
  660. package/dist/cjs/_rollupPluginBabelHelpers-e7c78521.js +0 -63
  661. package/dist/cjs/_rollupPluginBabelHelpers-e7c78521.js.map +0 -1
  662. package/dist/cjs/actionTypes-80ffd63e.js +0 -10
  663. package/dist/cjs/actionTypes-80ffd63e.js.map +0 -1
  664. package/dist/cjs/color-84bbbc0b.js +0 -45
  665. package/dist/cjs/color-84bbbc0b.js.map +0 -1
  666. package/dist/cjs/compareIds-19a11ffa.js +0 -18
  667. package/dist/cjs/compareIds-19a11ffa.js.map +0 -1
  668. package/dist/cjs/const-3c5d5059.js +0 -20
  669. package/dist/cjs/const-3c5d5059.js.map +0 -1
  670. package/dist/cjs/const-86e2750e.js +0 -22
  671. package/dist/cjs/const-86e2750e.js.map +0 -1
  672. package/dist/cjs/consts-9d221c68.js +0 -36
  673. package/dist/cjs/consts-9d221c68.js.map +0 -1
  674. package/dist/cjs/context-f5c934a0.js +0 -19
  675. package/dist/cjs/context-f5c934a0.js.map +0 -1
  676. package/dist/cjs/index-02407ba5.js +0 -360
  677. package/dist/cjs/index-02407ba5.js.map +0 -1
  678. package/dist/cjs/index-1ec959ab.js +0 -503
  679. package/dist/cjs/index-1ec959ab.js.map +0 -1
  680. package/dist/cjs/index-2d7e8e6d.js +0 -119
  681. package/dist/cjs/index-2d7e8e6d.js.map +0 -1
  682. package/dist/cjs/index-43d893cf.js +0 -157
  683. package/dist/cjs/index-43d893cf.js.map +0 -1
  684. package/dist/cjs/index-490839e3.js +0 -9
  685. package/dist/cjs/index-490839e3.js.map +0 -1
  686. package/dist/cjs/index-4e46a153.js +0 -68
  687. package/dist/cjs/index-4e46a153.js.map +0 -1
  688. package/dist/cjs/index-578f0575.js +0 -143
  689. package/dist/cjs/index-578f0575.js.map +0 -1
  690. package/dist/cjs/index-6714492f.js +0 -747
  691. package/dist/cjs/index-6714492f.js.map +0 -1
  692. package/dist/cjs/index-812adbfb.js +0 -179
  693. package/dist/cjs/index-812adbfb.js.map +0 -1
  694. package/dist/cjs/index-8b769862.js +0 -174
  695. package/dist/cjs/index-8b769862.js.map +0 -1
  696. package/dist/cjs/index-a79f62a3.js +0 -194
  697. package/dist/cjs/index-a79f62a3.js.map +0 -1
  698. package/dist/cjs/index-aada6371.js +0 -178
  699. package/dist/cjs/index-aada6371.js.map +0 -1
  700. package/dist/cjs/index-e1d58610.js +0 -280
  701. package/dist/cjs/index-e1d58610.js.map +0 -1
  702. package/dist/cjs/index-f1bd9638.js +0 -1857
  703. package/dist/cjs/index-f1bd9638.js.map +0 -1
  704. package/dist/cjs/index.js +0 -197
  705. package/dist/cjs/sendbirdSelectors.js +0 -696
  706. package/dist/cjs/stringSet-388f679a.js +0 -183
  707. package/dist/cjs/stringSet-388f679a.js.map +0 -1
  708. package/dist/cjs/topics-839402ce.js +0 -22
  709. package/dist/cjs/topics-839402ce.js.map +0 -1
  710. package/dist/cjs/tslib.es6-e8acf1b5.js +0 -97
  711. package/dist/cjs/tslib.es6-e8acf1b5.js.map +0 -1
  712. package/dist/cjs/types-6ffa6822.js +0 -11
  713. package/dist/cjs/types-6ffa6822.js.map +0 -1
  714. package/dist/cjs/ui/Accordion.js +0 -73
  715. package/dist/cjs/ui/AccordionGroup.js +0 -32
  716. package/dist/cjs/ui/AdminMessage.js +0 -34
  717. package/dist/cjs/ui/Avatar.js +0 -225
  718. package/dist/cjs/ui/Badge.js +0 -34
  719. package/dist/cjs/ui/BottomSheet.js +0 -43
  720. package/dist/cjs/ui/Button.js +0 -94
  721. package/dist/cjs/ui/ChannelAvatar.js +0 -58
  722. package/dist/cjs/ui/ConnectionStatus.js +0 -31
  723. package/dist/cjs/ui/ContextMenu.js +0 -329
  724. package/dist/cjs/ui/DateSeparator.js +0 -36
  725. package/dist/cjs/ui/EmojiReactions.js +0 -140
  726. package/dist/cjs/ui/FileMessageItemBody.js +0 -64
  727. package/dist/cjs/ui/FileViewer.js +0 -137
  728. package/dist/cjs/ui/IconButton.js +0 -60
  729. package/dist/cjs/ui/ImageRenderer.js +0 -101
  730. package/dist/cjs/ui/Input.js +0 -54
  731. package/dist/cjs/ui/Label.js +0 -16
  732. package/dist/cjs/ui/LinkLabel.js +0 -60
  733. package/dist/cjs/ui/Loader.js +0 -34
  734. package/dist/cjs/ui/MentionLabel.js +0 -104
  735. package/dist/cjs/ui/MessageContent.js +0 -778
  736. package/dist/cjs/ui/MessageInput.js +0 -590
  737. package/dist/cjs/ui/MessageItemMenu.js +0 -163
  738. package/dist/cjs/ui/MessageItemReactionMenu.js +0 -113
  739. package/dist/cjs/ui/MessageSearchFileItem.js +0 -134
  740. package/dist/cjs/ui/MessageSearchItem.js +0 -102
  741. package/dist/cjs/ui/MessageStatus.js +0 -25
  742. package/dist/cjs/ui/Modal.js +0 -126
  743. package/dist/cjs/ui/OGMessageItemBody.js +0 -139
  744. package/dist/cjs/ui/OpenChannelAdminMessage.js +0 -26
  745. package/dist/cjs/ui/OpenChannelAvatar.js +0 -40
  746. package/dist/cjs/ui/OpenchannelConversationHeader.js +0 -72
  747. package/dist/cjs/ui/OpenchannelFileMessage.js +0 -264
  748. package/dist/cjs/ui/OpenchannelOGMessage.js +0 -380
  749. package/dist/cjs/ui/OpenchannelThumbnailMessage.js +0 -339
  750. package/dist/cjs/ui/OpenchannelUserMessage.js +0 -289
  751. package/dist/cjs/ui/PlaceHolder.js +0 -20
  752. package/dist/cjs/ui/PlaybackTime.js +0 -36
  753. package/dist/cjs/ui/QuoteMessage.js +0 -158
  754. package/dist/cjs/ui/QuoteMessageInput.js +0 -98
  755. package/dist/cjs/ui/ReactionBadge.js +0 -58
  756. package/dist/cjs/ui/ReactionButton.js +0 -44
  757. package/dist/cjs/ui/SortByRow.js +0 -47
  758. package/dist/cjs/ui/TextButton.js +0 -37
  759. package/dist/cjs/ui/TextMessageItemBody.js +0 -86
  760. package/dist/cjs/ui/ThreadReplies.js +0 -82
  761. package/dist/cjs/ui/ThumbnailMessageItemBody.js +0 -86
  762. package/dist/cjs/ui/Tooltip.js +0 -28
  763. package/dist/cjs/ui/TooltipWrapper.js +0 -55
  764. package/dist/cjs/ui/UnknownMessageItemBody.js +0 -43
  765. package/dist/cjs/ui/UserListItem.js +0 -133
  766. package/dist/cjs/ui/UserProfile.js +0 -91
  767. package/dist/cjs/ui/VoiceMessageItemBody.js +0 -119
  768. package/dist/cjs/ui/VoiceMessgeInput.js +0 -23
  769. package/dist/cjs/ui/Word.js +0 -115
  770. package/dist/cjs/useLongPress-b75b3860.js +0 -118
  771. package/dist/cjs/useLongPress-b75b3860.js.map +0 -1
  772. package/dist/cjs/useSendbirdStateContext.js +0 -22
  773. package/dist/cjs/utils/message/isVoiceMessage.js +0 -10
  774. package/dist/cjs/utils-56a22c82.js +0 -32
  775. package/dist/cjs/utils-56a22c82.js.map +0 -1
  776. package/dist/cjs/utils-6e33484b.js +0 -32
  777. package/dist/cjs/utils-6e33484b.js.map +0 -1
  778. package/dist/cjs/utils-763f5a7f.js +0 -38
  779. package/dist/cjs/utils-763f5a7f.js.map +0 -1
  780. package/dist/cjs/utils-c61c3737.js +0 -6
  781. package/dist/cjs/utils-c61c3737.js.map +0 -1
  782. package/dist/cjs/uuid-a94df44e.js +0 -19
  783. package/dist/cjs/uuid-a94df44e.js.map +0 -1
  784. package/dist/cjs/withSendbird.js +0 -33
  785. package/dist/color-206fa031.js +0 -43
  786. package/dist/color-206fa031.js.map +0 -1
  787. package/dist/compareIds-3442d021.js +0 -16
  788. package/dist/compareIds-3442d021.js.map +0 -1
  789. package/dist/const-78033061.js +0 -18
  790. package/dist/const-78033061.js.map +0 -1
  791. package/dist/const-8f606c40.js +0 -14
  792. package/dist/const-8f606c40.js.map +0 -1
  793. package/dist/consts-854f6e5f.js +0 -23
  794. package/dist/consts-854f6e5f.js.map +0 -1
  795. package/dist/context-17109f64.js +0 -12
  796. package/dist/context-17109f64.js.map +0 -1
  797. package/dist/index-39098053.js +0 -7
  798. package/dist/index-39098053.js.map +0 -1
  799. package/dist/index-3b737aa6.js +0 -167
  800. package/dist/index-3b737aa6.js.map +0 -1
  801. package/dist/index-4217213f.js +0 -706
  802. package/dist/index-4217213f.js.map +0 -1
  803. package/dist/index-515b7f4e.js +0 -145
  804. package/dist/index-515b7f4e.js.map +0 -1
  805. package/dist/index-5c8b0523.js +0 -501
  806. package/dist/index-5c8b0523.js.map +0 -1
  807. package/dist/index-6b63d598.js +0 -1852
  808. package/dist/index-6b63d598.js.map +0 -1
  809. package/dist/index-8a78af9f.js +0 -111
  810. package/dist/index-8a78af9f.js.map +0 -1
  811. package/dist/index-8ff79952.js +0 -132
  812. package/dist/index-8ff79952.js.map +0 -1
  813. package/dist/index-a3d3d77a.js +0 -66
  814. package/dist/index-a3d3d77a.js.map +0 -1
  815. package/dist/index-a983f435.js +0 -174
  816. package/dist/index-a983f435.js.map +0 -1
  817. package/dist/index-bb3ccac9.js +0 -271
  818. package/dist/index-bb3ccac9.js.map +0 -1
  819. package/dist/index-c17ebf21.js +0 -172
  820. package/dist/index-c17ebf21.js.map +0 -1
  821. package/dist/index-cb271040.js +0 -179
  822. package/dist/index-cb271040.js.map +0 -1
  823. package/dist/index-d4ce9200.js +0 -353
  824. package/dist/index-d4ce9200.js.map +0 -1
  825. package/dist/index.d.ts +0 -2501
  826. package/dist/index.js +0 -177
  827. package/dist/package.json +0 -104
  828. package/dist/sendbirdSelectors.js +0 -671
  829. package/dist/stringSet-fbd7c37c.js +0 -181
  830. package/dist/stringSet-fbd7c37c.js.map +0 -1
  831. package/dist/topics-d6268256.js +0 -13
  832. package/dist/topics-d6268256.js.map +0 -1
  833. package/dist/tslib.es6-96c33448.js +0 -92
  834. package/dist/tslib.es6-96c33448.js.map +0 -1
  835. package/dist/types-63b4e9db.js +0 -9
  836. package/dist/types-63b4e9db.js.map +0 -1
  837. package/dist/ui/Accordion.js +0 -64
  838. package/dist/ui/AccordionGroup.js +0 -26
  839. package/dist/ui/AdminMessage.js +0 -28
  840. package/dist/ui/Avatar.js +0 -216
  841. package/dist/ui/Badge.js +0 -28
  842. package/dist/ui/BottomSheet.js +0 -37
  843. package/dist/ui/Button.js +0 -84
  844. package/dist/ui/ChannelAvatar.js +0 -52
  845. package/dist/ui/ConnectionStatus.js +0 -25
  846. package/dist/ui/ContextMenu.js +0 -316
  847. package/dist/ui/DateSeparator.js +0 -30
  848. package/dist/ui/EmojiReactions.js +0 -134
  849. package/dist/ui/FileMessageItemBody.js +0 -58
  850. package/dist/ui/FileViewer.js +0 -128
  851. package/dist/ui/IconButton.js +0 -54
  852. package/dist/ui/ImageRenderer.js +0 -95
  853. package/dist/ui/Input.js +0 -45
  854. package/dist/ui/Label.js +0 -5
  855. package/dist/ui/LinkLabel.js +0 -49
  856. package/dist/ui/Loader.js +0 -28
  857. package/dist/ui/MentionLabel.js +0 -98
  858. package/dist/ui/MessageContent.js +0 -772
  859. package/dist/ui/MessageInput.js +0 -583
  860. package/dist/ui/MessageItemMenu.js +0 -157
  861. package/dist/ui/MessageItemReactionMenu.js +0 -107
  862. package/dist/ui/MessageSearchFileItem.js +0 -128
  863. package/dist/ui/MessageSearchItem.js +0 -96
  864. package/dist/ui/MessageStatus.js +0 -16
  865. package/dist/ui/Modal.js +0 -115
  866. package/dist/ui/OGMessageItemBody.js +0 -133
  867. package/dist/ui/OpenChannelAdminMessage.js +0 -20
  868. package/dist/ui/OpenChannelAvatar.js +0 -34
  869. package/dist/ui/OpenchannelConversationHeader.js +0 -66
  870. package/dist/ui/OpenchannelFileMessage.js +0 -258
  871. package/dist/ui/OpenchannelOGMessage.js +0 -374
  872. package/dist/ui/OpenchannelThumbnailMessage.js +0 -333
  873. package/dist/ui/OpenchannelUserMessage.js +0 -283
  874. package/dist/ui/PlaceHolder.js +0 -11
  875. package/dist/ui/PlaybackTime.js +0 -27
  876. package/dist/ui/QuoteMessage.js +0 -152
  877. package/dist/ui/QuoteMessageInput.js +0 -92
  878. package/dist/ui/ReactionBadge.js +0 -52
  879. package/dist/ui/ReactionButton.js +0 -38
  880. package/dist/ui/SortByRow.js +0 -41
  881. package/dist/ui/TextButton.js +0 -31
  882. package/dist/ui/TextMessageItemBody.js +0 -80
  883. package/dist/ui/ThreadReplies.js +0 -76
  884. package/dist/ui/ThumbnailMessageItemBody.js +0 -80
  885. package/dist/ui/Tooltip.js +0 -22
  886. package/dist/ui/TooltipWrapper.js +0 -49
  887. package/dist/ui/UnknownMessageItemBody.js +0 -37
  888. package/dist/ui/UserListItem.js +0 -127
  889. package/dist/ui/UserProfile.js +0 -85
  890. package/dist/ui/VoiceMessageItemBody.js +0 -110
  891. package/dist/ui/VoiceMessgeInput.js +0 -15
  892. package/dist/ui/Word.js +0 -109
  893. package/dist/useLongPress-96570844.js +0 -116
  894. package/dist/useLongPress-96570844.js.map +0 -1
  895. package/dist/useSendbirdStateContext.js +0 -20
  896. package/dist/utils/message/isVoiceMessage.js +0 -7
  897. package/dist/utils-273068f6.js +0 -4
  898. package/dist/utils-273068f6.js.map +0 -1
  899. package/dist/utils-5cfd2d4d.js +0 -34
  900. package/dist/utils-5cfd2d4d.js.map +0 -1
  901. package/dist/utils-aa379202.js +0 -30
  902. package/dist/utils-aa379202.js.map +0 -1
  903. package/dist/utils-feeb0ce4.js +0 -30
  904. package/dist/utils-feeb0ce4.js.map +0 -1
  905. package/dist/uuid-d8fc0ef1.js +0 -17
  906. package/dist/uuid-d8fc0ef1.js.map +0 -1
  907. package/dist/withSendbird.js +0 -24
  908. /package/{dist/App.js.map → App.js.map} +0 -0
  909. /package/{dist/Channel → Channel}/components/ChannelHeader.js.map +0 -0
  910. /package/{dist/Channel → Channel}/components/ChannelUI.js.map +0 -0
  911. /package/{dist/Channel → Channel}/components/FileViewer.js.map +0 -0
  912. /package/{dist/Channel → Channel}/components/FrozenNotification.js.map +0 -0
  913. /package/{dist/Channel → Channel}/components/Message.js.map +0 -0
  914. /package/{dist/Channel → Channel}/components/MessageInput.js.map +0 -0
  915. /package/{dist/Channel → Channel}/components/MessageList.js.map +0 -0
  916. /package/{dist/Channel → Channel}/components/RemoveMessageModal.js.map +0 -0
  917. /package/{dist/Channel → Channel}/components/SuggestedMentionList.js.map +0 -0
  918. /package/{dist/Channel → Channel}/components/TypingIndicator.js.map +0 -0
  919. /package/{dist/Channel → Channel}/components/UnreadCount.js.map +0 -0
  920. /package/{dist/Channel → Channel}/context.js.map +0 -0
  921. /package/{dist/Channel.js.map → Channel.js.map} +0 -0
  922. /package/{dist/ChannelList → ChannelList}/components/AddChannel.js.map +0 -0
  923. /package/{dist/ChannelList → ChannelList}/components/ChannelListHeader.js.map +0 -0
  924. /package/{dist/ChannelList → ChannelList}/components/ChannelListUI.js.map +0 -0
  925. /package/{dist/ChannelList → ChannelList}/components/ChannelPreview.js.map +0 -0
  926. /package/{dist/ChannelList → ChannelList}/components/ChannelPreviewAction.js.map +0 -0
  927. /package/{dist/ChannelList → ChannelList}/context.js.map +0 -0
  928. /package/{dist/ChannelList.js.map → ChannelList.js.map} +0 -0
  929. /package/{dist/ChannelSettings → ChannelSettings}/components/ChannelProfile.js.map +0 -0
  930. /package/{dist/ChannelSettings → ChannelSettings}/components/ChannelSettingsUI.js.map +0 -0
  931. /package/{dist/ChannelSettings → ChannelSettings}/components/EditDetailsModal.js.map +0 -0
  932. /package/{dist/ChannelSettings → ChannelSettings}/components/LeaveChannel.js.map +0 -0
  933. /package/{dist/ChannelSettings → ChannelSettings}/components/ModerationPanel.js.map +0 -0
  934. /package/{dist/ChannelSettings → ChannelSettings}/components/UserListItem.js.map +0 -0
  935. /package/{dist/ChannelSettings → ChannelSettings}/components/UserPanel.js.map +0 -0
  936. /package/{dist/ChannelSettings → ChannelSettings}/context.js.map +0 -0
  937. /package/{dist/ChannelSettings.js.map → ChannelSettings.js.map} +0 -0
  938. /package/{dist/CreateChannel → CreateChannel}/components/CreateChannelUI.js.map +0 -0
  939. /package/{dist/CreateChannel → CreateChannel}/components/InviteUsers.js.map +0 -0
  940. /package/{dist/CreateChannel → CreateChannel}/components/SelectChannelType.js.map +0 -0
  941. /package/{dist/CreateChannel → CreateChannel}/context.js.map +0 -0
  942. /package/{dist/CreateChannel.js.map → CreateChannel.js.map} +0 -0
  943. /package/{dist/CreateOpenChannel → CreateOpenChannel}/components/CreateOpenChannelUI.js.map +0 -0
  944. /package/{dist/CreateOpenChannel → CreateOpenChannel}/context.js.map +0 -0
  945. /package/{dist/CreateOpenChannel.js.map → CreateOpenChannel.js.map} +0 -0
  946. /package/{dist/EditUserProfile → EditUserProfile}/components/EditUserProfileUI.js.map +0 -0
  947. /package/{dist/EditUserProfile → EditUserProfile}/context.js +0 -0
  948. /package/{dist/EditUserProfile → EditUserProfile}/context.js.map +0 -0
  949. /package/{dist/EditUserProfile.js.map → EditUserProfile.js.map} +0 -0
  950. /package/{dist/MessageSearch → MessageSearch}/components/MessageSearchUI.js.map +0 -0
  951. /package/{dist/MessageSearch → MessageSearch}/context.js.map +0 -0
  952. /package/{dist/MessageSearch.js.map → MessageSearch.js.map} +0 -0
  953. /package/{dist/OpenChannel → OpenChannel}/components/FrozenChannelNotification.js.map +0 -0
  954. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelHeader.js.map +0 -0
  955. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelInput.js.map +0 -0
  956. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelMessage.js.map +0 -0
  957. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelMessageList.js.map +0 -0
  958. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelUI.js.map +0 -0
  959. /package/{dist/OpenChannel → OpenChannel}/context.js.map +0 -0
  960. /package/{dist/OpenChannel.js.map → OpenChannel.js.map} +0 -0
  961. /package/{dist/OpenChannelList → OpenChannelList}/components/OpenChannelListUI.js.map +0 -0
  962. /package/{dist/OpenChannelList → OpenChannelList}/components/OpenChannelPreview.js.map +0 -0
  963. /package/{dist/OpenChannelList → OpenChannelList}/context.js.map +0 -0
  964. /package/{dist/OpenChannelList.js.map → OpenChannelList.js.map} +0 -0
  965. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/EditDetailsModal.js.map +0 -0
  966. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/OpenChannelProfile.js.map +0 -0
  967. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/OpenChannelSettingsUI.js.map +0 -0
  968. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/OperatorUI.js.map +0 -0
  969. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/ParticipantUI.js.map +0 -0
  970. /package/{dist/OpenChannelSettings → OpenChannelSettings}/context.js.map +0 -0
  971. /package/{dist/OpenChannelSettings.js.map → OpenChannelSettings.js.map} +0 -0
  972. /package/{dist/SendbirdProvider.js.map → SendbirdProvider.js.map} +0 -0
  973. /package/{dist/Thread → Thread}/components/ParentMessageInfo.js.map +0 -0
  974. /package/{dist/Thread → Thread}/components/ParentMessageInfoItem.js.map +0 -0
  975. /package/{dist/Thread → Thread}/components/ThreadHeader.js.map +0 -0
  976. /package/{dist/Thread → Thread}/components/ThreadList.js.map +0 -0
  977. /package/{dist/Thread → Thread}/components/ThreadListItem.js.map +0 -0
  978. /package/{dist/Thread → Thread}/components/ThreadMessageInput.js.map +0 -0
  979. /package/{dist/Thread → Thread}/components/ThreadUI.js.map +0 -0
  980. /package/{dist/Thread → Thread}/context/types.js +0 -0
  981. /package/{dist/Thread → Thread}/context/types.js.map +0 -0
  982. /package/{dist/Thread → Thread}/context.js.map +0 -0
  983. /package/{dist/Thread.js.map → Thread.js.map} +0 -0
  984. /package/{dist/VoicePlayer → VoicePlayer}/context.js.map +0 -0
  985. /package/{dist/VoicePlayer → VoicePlayer}/useVoicePlayer.js.map +0 -0
  986. /package/{dist/VoiceRecorder → VoiceRecorder}/context.js.map +0 -0
  987. /package/{dist/VoiceRecorder → VoiceRecorder}/useVoiceRecorder.js.map +0 -0
  988. /package/{dist/cjs → cjs}/App.js.map +0 -0
  989. /package/{dist/cjs → cjs}/Channel/components/ChannelHeader.js.map +0 -0
  990. /package/{dist/cjs → cjs}/Channel/components/ChannelUI.js.map +0 -0
  991. /package/{dist/cjs → cjs}/Channel/components/FileViewer.js.map +0 -0
  992. /package/{dist/cjs → cjs}/Channel/components/FrozenNotification.js.map +0 -0
  993. /package/{dist/cjs → cjs}/Channel/components/Message.js.map +0 -0
  994. /package/{dist/cjs → cjs}/Channel/components/MessageInput.js.map +0 -0
  995. /package/{dist/cjs → cjs}/Channel/components/MessageList.js.map +0 -0
  996. /package/{dist/cjs → cjs}/Channel/components/RemoveMessageModal.js.map +0 -0
  997. /package/{dist/cjs → cjs}/Channel/components/SuggestedMentionList.js.map +0 -0
  998. /package/{dist/cjs → cjs}/Channel/components/TypingIndicator.js.map +0 -0
  999. /package/{dist/cjs → cjs}/Channel/components/UnreadCount.js.map +0 -0
  1000. /package/{dist/cjs → cjs}/Channel/context.js.map +0 -0
  1001. /package/{dist/cjs → cjs}/Channel.js.map +0 -0
  1002. /package/{dist/cjs → cjs}/ChannelList/components/AddChannel.js.map +0 -0
  1003. /package/{dist/cjs → cjs}/ChannelList/components/ChannelListHeader.js.map +0 -0
  1004. /package/{dist/cjs → cjs}/ChannelList/components/ChannelListUI.js.map +0 -0
  1005. /package/{dist/cjs → cjs}/ChannelList/components/ChannelPreview.js.map +0 -0
  1006. /package/{dist/cjs → cjs}/ChannelList/components/ChannelPreviewAction.js.map +0 -0
  1007. /package/{dist/cjs → cjs}/ChannelList/context.js.map +0 -0
  1008. /package/{dist/cjs → cjs}/ChannelList.js.map +0 -0
  1009. /package/{dist/cjs → cjs}/ChannelSettings/components/ChannelProfile.js.map +0 -0
  1010. /package/{dist/cjs → cjs}/ChannelSettings/components/ChannelSettingsUI.js.map +0 -0
  1011. /package/{dist/cjs → cjs}/ChannelSettings/components/EditDetailsModal.js.map +0 -0
  1012. /package/{dist/cjs → cjs}/ChannelSettings/components/LeaveChannel.js.map +0 -0
  1013. /package/{dist/cjs → cjs}/ChannelSettings/components/ModerationPanel.js.map +0 -0
  1014. /package/{dist/cjs → cjs}/ChannelSettings/components/UserListItem.js.map +0 -0
  1015. /package/{dist/cjs → cjs}/ChannelSettings/components/UserPanel.js.map +0 -0
  1016. /package/{dist/cjs → cjs}/ChannelSettings/context.js.map +0 -0
  1017. /package/{dist/cjs → cjs}/ChannelSettings.js.map +0 -0
  1018. /package/{dist/cjs → cjs}/CreateChannel/components/CreateChannelUI.js.map +0 -0
  1019. /package/{dist/cjs → cjs}/CreateChannel/components/InviteUsers.js.map +0 -0
  1020. /package/{dist/cjs → cjs}/CreateChannel/components/SelectChannelType.js.map +0 -0
  1021. /package/{dist/cjs → cjs}/CreateChannel/context.js.map +0 -0
  1022. /package/{dist/cjs → cjs}/CreateChannel.js.map +0 -0
  1023. /package/{dist/cjs → cjs}/CreateOpenChannel/components/CreateOpenChannelUI.js.map +0 -0
  1024. /package/{dist/cjs → cjs}/CreateOpenChannel/context.js.map +0 -0
  1025. /package/{dist/cjs → cjs}/CreateOpenChannel.js.map +0 -0
  1026. /package/{dist/cjs → cjs}/EditUserProfile/components/EditUserProfileUI.js.map +0 -0
  1027. /package/{dist/cjs → cjs}/EditUserProfile/context.js +0 -0
  1028. /package/{dist/cjs → cjs}/EditUserProfile/context.js.map +0 -0
  1029. /package/{dist/cjs → cjs}/EditUserProfile.js.map +0 -0
  1030. /package/{dist/cjs → cjs}/MessageSearch/components/MessageSearchUI.js.map +0 -0
  1031. /package/{dist/cjs → cjs}/MessageSearch/context.js.map +0 -0
  1032. /package/{dist/cjs → cjs}/MessageSearch.js.map +0 -0
  1033. /package/{dist/cjs → cjs}/OpenChannel/components/FrozenChannelNotification.js.map +0 -0
  1034. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelHeader.js.map +0 -0
  1035. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelInput.js.map +0 -0
  1036. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelMessage.js.map +0 -0
  1037. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelMessageList.js.map +0 -0
  1038. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelUI.js.map +0 -0
  1039. /package/{dist/cjs → cjs}/OpenChannel/context.js.map +0 -0
  1040. /package/{dist/cjs → cjs}/OpenChannel.js.map +0 -0
  1041. /package/{dist/cjs → cjs}/OpenChannelList/components/OpenChannelListUI.js.map +0 -0
  1042. /package/{dist/cjs → cjs}/OpenChannelList/components/OpenChannelPreview.js.map +0 -0
  1043. /package/{dist/cjs → cjs}/OpenChannelList/context.js.map +0 -0
  1044. /package/{dist/cjs → cjs}/OpenChannelList.js.map +0 -0
  1045. /package/{dist/cjs → cjs}/OpenChannelSettings/components/EditDetailsModal.js.map +0 -0
  1046. /package/{dist/cjs → cjs}/OpenChannelSettings/components/OpenChannelProfile.js.map +0 -0
  1047. /package/{dist/cjs → cjs}/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +0 -0
  1048. /package/{dist/cjs → cjs}/OpenChannelSettings/components/OperatorUI.js.map +0 -0
  1049. /package/{dist/cjs → cjs}/OpenChannelSettings/components/ParticipantUI.js.map +0 -0
  1050. /package/{dist/cjs → cjs}/OpenChannelSettings/context.js.map +0 -0
  1051. /package/{dist/cjs → cjs}/OpenChannelSettings.js.map +0 -0
  1052. /package/{dist/cjs → cjs}/SendbirdProvider.js.map +0 -0
  1053. /package/{dist/cjs → cjs}/Thread/components/ParentMessageInfo.js.map +0 -0
  1054. /package/{dist/cjs → cjs}/Thread/components/ParentMessageInfoItem.js.map +0 -0
  1055. /package/{dist/cjs → cjs}/Thread/components/ThreadHeader.js.map +0 -0
  1056. /package/{dist/cjs → cjs}/Thread/components/ThreadList.js.map +0 -0
  1057. /package/{dist/cjs → cjs}/Thread/components/ThreadListItem.js.map +0 -0
  1058. /package/{dist/cjs → cjs}/Thread/components/ThreadMessageInput.js.map +0 -0
  1059. /package/{dist/cjs → cjs}/Thread/components/ThreadUI.js.map +0 -0
  1060. /package/{dist/cjs → cjs}/Thread/context/types.js +0 -0
  1061. /package/{dist/cjs → cjs}/Thread/context/types.js.map +0 -0
  1062. /package/{dist/cjs → cjs}/Thread/context.js.map +0 -0
  1063. /package/{dist/cjs → cjs}/Thread.js.map +0 -0
  1064. /package/{dist/cjs → cjs}/VoicePlayer/context.js.map +0 -0
  1065. /package/{dist/cjs → cjs}/VoicePlayer/useVoicePlayer.js.map +0 -0
  1066. /package/{dist/cjs → cjs}/VoiceRecorder/context.js.map +0 -0
  1067. /package/{dist/cjs → cjs}/VoiceRecorder/useVoiceRecorder.js.map +0 -0
  1068. /package/{dist/cjs → cjs}/dist/index.css +0 -0
  1069. /package/{dist/cjs → cjs}/dist/index.css.map +0 -0
  1070. /package/{dist/cjs → cjs}/handlers/ConnectionHandler.js +0 -0
  1071. /package/{dist/cjs → cjs}/handlers/ConnectionHandler.js.map +0 -0
  1072. /package/{dist/cjs → cjs}/handlers/GroupChannelHandler.js +0 -0
  1073. /package/{dist/cjs → cjs}/handlers/GroupChannelHandler.js.map +0 -0
  1074. /package/{dist/cjs → cjs}/handlers/OpenChannelHandler.js +0 -0
  1075. /package/{dist/cjs → cjs}/handlers/OpenChannelHandler.js.map +0 -0
  1076. /package/{dist/cjs → cjs}/handlers/SessionHandler.js +0 -0
  1077. /package/{dist/cjs → cjs}/handlers/SessionHandler.js.map +0 -0
  1078. /package/{dist/cjs → cjs}/handlers/UserEventHandler.js +0 -0
  1079. /package/{dist/cjs → cjs}/handlers/UserEventHandler.js.map +0 -0
  1080. /package/{dist/cjs → cjs}/index.js.map +0 -0
  1081. /package/{dist/cjs → cjs}/lame.all.js +0 -0
  1082. /package/{dist/cjs → cjs}/lame.all.js.map +0 -0
  1083. /package/{dist/cjs → cjs}/sendbirdSelectors.js.map +0 -0
  1084. /package/{dist/cjs → cjs}/ui/Accordion.js.map +0 -0
  1085. /package/{dist/cjs → cjs}/ui/AccordionGroup.js.map +0 -0
  1086. /package/{dist/cjs → cjs}/ui/AdminMessage.js.map +0 -0
  1087. /package/{dist/cjs → cjs}/ui/Avatar.js.map +0 -0
  1088. /package/{dist/cjs → cjs}/ui/Badge.js.map +0 -0
  1089. /package/{dist/cjs → cjs}/ui/BottomSheet.js.map +0 -0
  1090. /package/{dist/cjs → cjs}/ui/Button.js.map +0 -0
  1091. /package/{dist/cjs → cjs}/ui/ChannelAvatar.js.map +0 -0
  1092. /package/{dist/cjs → cjs}/ui/Checkbox.js +0 -0
  1093. /package/{dist/cjs → cjs}/ui/Checkbox.js.map +0 -0
  1094. /package/{dist/cjs → cjs}/ui/ConnectionStatus.js.map +0 -0
  1095. /package/{dist/cjs → cjs}/ui/ContextMenu.js.map +0 -0
  1096. /package/{dist/cjs → cjs}/ui/DateSeparator.js.map +0 -0
  1097. /package/{dist/cjs → cjs}/ui/EmojiReactions.js.map +0 -0
  1098. /package/{dist/cjs → cjs}/ui/FileMessageItemBody.js.map +0 -0
  1099. /package/{dist/cjs → cjs}/ui/FileViewer.js.map +0 -0
  1100. /package/{dist/cjs → cjs}/ui/Icon.js +0 -0
  1101. /package/{dist/cjs → cjs}/ui/Icon.js.map +0 -0
  1102. /package/{dist/cjs → cjs}/ui/IconButton.js.map +0 -0
  1103. /package/{dist/cjs → cjs}/ui/ImageRenderer.js.map +0 -0
  1104. /package/{dist/cjs → cjs}/ui/Input.js.map +0 -0
  1105. /package/{dist/cjs → cjs}/ui/Label.js.map +0 -0
  1106. /package/{dist/cjs → cjs}/ui/LinkLabel.js.map +0 -0
  1107. /package/{dist/cjs → cjs}/ui/Loader.js.map +0 -0
  1108. /package/{dist/cjs → cjs}/ui/MentionLabel.js.map +0 -0
  1109. /package/{dist/cjs → cjs}/ui/MentionUserLabel.js +0 -0
  1110. /package/{dist/cjs → cjs}/ui/MentionUserLabel.js.map +0 -0
  1111. /package/{dist/cjs → cjs}/ui/MessageContent.js.map +0 -0
  1112. /package/{dist/cjs → cjs}/ui/MessageInput.js.map +0 -0
  1113. /package/{dist/cjs → cjs}/ui/MessageItemMenu.js.map +0 -0
  1114. /package/{dist/cjs → cjs}/ui/MessageItemReactionMenu.js.map +0 -0
  1115. /package/{dist/cjs → cjs}/ui/MessageSearchFileItem.js.map +0 -0
  1116. /package/{dist/cjs → cjs}/ui/MessageSearchItem.js.map +0 -0
  1117. /package/{dist/cjs → cjs}/ui/MessageStatus.js.map +0 -0
  1118. /package/{dist/cjs → cjs}/ui/Modal.js.map +0 -0
  1119. /package/{dist/cjs → cjs}/ui/MutedAvatarOverlay.js +0 -0
  1120. /package/{dist/cjs → cjs}/ui/MutedAvatarOverlay.js.map +0 -0
  1121. /package/{dist/cjs → cjs}/ui/OGMessageItemBody.js.map +0 -0
  1122. /package/{dist/cjs → cjs}/ui/OpenChannelAdminMessage.js.map +0 -0
  1123. /package/{dist/cjs → cjs}/ui/OpenChannelAvatar.js.map +0 -0
  1124. /package/{dist/cjs → cjs}/ui/OpenchannelConversationHeader.js.map +0 -0
  1125. /package/{dist/cjs → cjs}/ui/OpenchannelFileMessage.js.map +0 -0
  1126. /package/{dist/cjs → cjs}/ui/OpenchannelOGMessage.js.map +0 -0
  1127. /package/{dist/cjs → cjs}/ui/OpenchannelThumbnailMessage.js.map +0 -0
  1128. /package/{dist/cjs → cjs}/ui/OpenchannelUserMessage.js.map +0 -0
  1129. /package/{dist/cjs → cjs}/ui/PlaceHolder.js.map +0 -0
  1130. /package/{dist/cjs → cjs}/ui/PlaybackTime.js.map +0 -0
  1131. /package/{dist/cjs → cjs}/ui/ProgressBar.js +0 -0
  1132. /package/{dist/cjs → cjs}/ui/ProgressBar.js.map +0 -0
  1133. /package/{dist/cjs → cjs}/ui/QuoteMessage.js.map +0 -0
  1134. /package/{dist/cjs → cjs}/ui/QuoteMessageInput.js.map +0 -0
  1135. /package/{dist/cjs → cjs}/ui/ReactionBadge.js.map +0 -0
  1136. /package/{dist/cjs → cjs}/ui/ReactionButton.js.map +0 -0
  1137. /package/{dist/cjs → cjs}/ui/SortByRow.js.map +0 -0
  1138. /package/{dist/cjs → cjs}/ui/TextButton.js.map +0 -0
  1139. /package/{dist/cjs → cjs}/ui/TextMessageItemBody.js.map +0 -0
  1140. /package/{dist/cjs → cjs}/ui/ThreadReplies.js.map +0 -0
  1141. /package/{dist/cjs → cjs}/ui/ThumbnailMessageItemBody.js.map +0 -0
  1142. /package/{dist/cjs → cjs}/ui/Tooltip.js.map +0 -0
  1143. /package/{dist/cjs → cjs}/ui/TooltipWrapper.js.map +0 -0
  1144. /package/{dist/cjs → cjs}/ui/UnknownMessageItemBody.js.map +0 -0
  1145. /package/{dist/cjs → cjs}/ui/UserListItem.js.map +0 -0
  1146. /package/{dist/cjs → cjs}/ui/UserProfile.js.map +0 -0
  1147. /package/{dist/cjs → cjs}/ui/VoiceMessageItemBody.js.map +0 -0
  1148. /package/{dist/cjs → cjs}/ui/VoiceMessgeInput.js.map +0 -0
  1149. /package/{dist/cjs → cjs}/ui/Word.js.map +0 -0
  1150. /package/{dist/cjs → cjs}/useSendbirdStateContext.js.map +0 -0
  1151. /package/{dist/cjs → cjs}/utils/message/getOutgoingMessageState.js +0 -0
  1152. /package/{dist/cjs → cjs}/utils/message/getOutgoingMessageState.js.map +0 -0
  1153. /package/{dist/cjs → cjs}/utils/message/isVoiceMessage.js.map +0 -0
  1154. /package/{dist/cjs → cjs}/withSendbird.js.map +0 -0
  1155. /package/dist/{dist/index.css → index.css} +0 -0
  1156. /package/dist/{dist/index.css.map → index.css.map} +0 -0
  1157. /package/{dist/handlers → handlers}/ConnectionHandler.js +0 -0
  1158. /package/{dist/handlers → handlers}/ConnectionHandler.js.map +0 -0
  1159. /package/{dist/handlers → handlers}/GroupChannelHandler.js +0 -0
  1160. /package/{dist/handlers → handlers}/GroupChannelHandler.js.map +0 -0
  1161. /package/{dist/handlers → handlers}/OpenChannelHandler.js +0 -0
  1162. /package/{dist/handlers → handlers}/OpenChannelHandler.js.map +0 -0
  1163. /package/{dist/handlers → handlers}/SessionHandler.js +0 -0
  1164. /package/{dist/handlers → handlers}/SessionHandler.js.map +0 -0
  1165. /package/{dist/handlers → handlers}/UserEventHandler.js +0 -0
  1166. /package/{dist/handlers → handlers}/UserEventHandler.js.map +0 -0
  1167. /package/{dist/index.js.map → index.js.map} +0 -0
  1168. /package/{dist/lame.all.js → lame.all.js} +0 -0
  1169. /package/{dist/lame.all.js.map → lame.all.js.map} +0 -0
  1170. /package/{dist/sendbirdSelectors.js.map → sendbirdSelectors.js.map} +0 -0
  1171. /package/{dist/ui → ui}/Accordion.js.map +0 -0
  1172. /package/{dist/ui → ui}/AccordionGroup.js.map +0 -0
  1173. /package/{dist/ui → ui}/AdminMessage.js.map +0 -0
  1174. /package/{dist/ui → ui}/Avatar.js.map +0 -0
  1175. /package/{dist/ui → ui}/Badge.js.map +0 -0
  1176. /package/{dist/ui → ui}/BottomSheet.js.map +0 -0
  1177. /package/{dist/ui → ui}/Button.js.map +0 -0
  1178. /package/{dist/ui → ui}/ChannelAvatar.js.map +0 -0
  1179. /package/{dist/ui → ui}/Checkbox.js +0 -0
  1180. /package/{dist/ui → ui}/Checkbox.js.map +0 -0
  1181. /package/{dist/ui → ui}/ConnectionStatus.js.map +0 -0
  1182. /package/{dist/ui → ui}/ContextMenu.js.map +0 -0
  1183. /package/{dist/ui → ui}/DateSeparator.js.map +0 -0
  1184. /package/{dist/ui → ui}/EmojiReactions.js.map +0 -0
  1185. /package/{dist/ui → ui}/FileMessageItemBody.js.map +0 -0
  1186. /package/{dist/ui → ui}/FileViewer.js.map +0 -0
  1187. /package/{dist/ui → ui}/Icon.js +0 -0
  1188. /package/{dist/ui → ui}/Icon.js.map +0 -0
  1189. /package/{dist/ui → ui}/IconButton.js.map +0 -0
  1190. /package/{dist/ui → ui}/ImageRenderer.js.map +0 -0
  1191. /package/{dist/ui → ui}/Input.js.map +0 -0
  1192. /package/{dist/ui → ui}/Label.js.map +0 -0
  1193. /package/{dist/ui → ui}/LinkLabel.js.map +0 -0
  1194. /package/{dist/ui → ui}/Loader.js.map +0 -0
  1195. /package/{dist/ui → ui}/MentionLabel.js.map +0 -0
  1196. /package/{dist/ui → ui}/MentionUserLabel.js +0 -0
  1197. /package/{dist/ui → ui}/MentionUserLabel.js.map +0 -0
  1198. /package/{dist/ui → ui}/MessageContent.js.map +0 -0
  1199. /package/{dist/ui → ui}/MessageInput.js.map +0 -0
  1200. /package/{dist/ui → ui}/MessageItemMenu.js.map +0 -0
  1201. /package/{dist/ui → ui}/MessageItemReactionMenu.js.map +0 -0
  1202. /package/{dist/ui → ui}/MessageSearchFileItem.js.map +0 -0
  1203. /package/{dist/ui → ui}/MessageSearchItem.js.map +0 -0
  1204. /package/{dist/ui → ui}/MessageStatus.js.map +0 -0
  1205. /package/{dist/ui → ui}/Modal.js.map +0 -0
  1206. /package/{dist/ui → ui}/MutedAvatarOverlay.js +0 -0
  1207. /package/{dist/ui → ui}/MutedAvatarOverlay.js.map +0 -0
  1208. /package/{dist/ui → ui}/OGMessageItemBody.js.map +0 -0
  1209. /package/{dist/ui → ui}/OpenChannelAdminMessage.js.map +0 -0
  1210. /package/{dist/ui → ui}/OpenChannelAvatar.js.map +0 -0
  1211. /package/{dist/ui → ui}/OpenchannelConversationHeader.js.map +0 -0
  1212. /package/{dist/ui → ui}/OpenchannelFileMessage.js.map +0 -0
  1213. /package/{dist/ui → ui}/OpenchannelOGMessage.js.map +0 -0
  1214. /package/{dist/ui → ui}/OpenchannelThumbnailMessage.js.map +0 -0
  1215. /package/{dist/ui → ui}/OpenchannelUserMessage.js.map +0 -0
  1216. /package/{dist/ui → ui}/PlaceHolder.js.map +0 -0
  1217. /package/{dist/ui → ui}/PlaybackTime.js.map +0 -0
  1218. /package/{dist/ui → ui}/ProgressBar.js +0 -0
  1219. /package/{dist/ui → ui}/ProgressBar.js.map +0 -0
  1220. /package/{dist/ui → ui}/QuoteMessage.js.map +0 -0
  1221. /package/{dist/ui → ui}/QuoteMessageInput.js.map +0 -0
  1222. /package/{dist/ui → ui}/ReactionBadge.js.map +0 -0
  1223. /package/{dist/ui → ui}/ReactionButton.js.map +0 -0
  1224. /package/{dist/ui → ui}/SortByRow.js.map +0 -0
  1225. /package/{dist/ui → ui}/TextButton.js.map +0 -0
  1226. /package/{dist/ui → ui}/TextMessageItemBody.js.map +0 -0
  1227. /package/{dist/ui → ui}/ThreadReplies.js.map +0 -0
  1228. /package/{dist/ui → ui}/ThumbnailMessageItemBody.js.map +0 -0
  1229. /package/{dist/ui → ui}/Tooltip.js.map +0 -0
  1230. /package/{dist/ui → ui}/TooltipWrapper.js.map +0 -0
  1231. /package/{dist/ui → ui}/UnknownMessageItemBody.js.map +0 -0
  1232. /package/{dist/ui → ui}/UserListItem.js.map +0 -0
  1233. /package/{dist/ui → ui}/UserProfile.js.map +0 -0
  1234. /package/{dist/ui → ui}/VoiceMessageItemBody.js.map +0 -0
  1235. /package/{dist/ui → ui}/VoiceMessgeInput.js.map +0 -0
  1236. /package/{dist/ui → ui}/Word.js.map +0 -0
  1237. /package/{dist/useSendbirdStateContext.js.map → useSendbirdStateContext.js.map} +0 -0
  1238. /package/{dist/utils → utils}/message/getOutgoingMessageState.js +0 -0
  1239. /package/{dist/utils → utils}/message/getOutgoingMessageState.js.map +0 -0
  1240. /package/{dist/utils → utils}/message/isVoiceMessage.js.map +0 -0
  1241. /package/{dist/withSendbird.js.map → withSendbird.js.map} +0 -0
@@ -0,0 +1,2283 @@
1
+ import React__default, { useEffect, useCallback, useRef, useMemo, useState, useReducer } from 'react';
2
+ import { U as UserProfileProvider } from './UserProfileContext-dd096494.js';
3
+ import useSendbirdStateContext from './useSendbirdStateContext.js';
4
+ import { f as format } from './index-6ccea9a6.js';
5
+ import { a as SEND_USER_MESSAGE, S as SEND_MESSAGE_START, b as SEND_FILE_MESSAGE, U as UPDATE_USER_MESSAGE, D as DELETE_MESSAGE } from './topics-9fbe0d61.js';
6
+ import { a as getSendingMessageStatus, b as isReadMessage, c as filterMessageListParams } from './index-8ee9e1f5.js';
7
+ import './utils/message/getOutgoingMessageState.js';
8
+ import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-3e5825fa.js';
9
+ import { c as compareIds } from './compareIds-c8335d61.js';
10
+ import { N as NEXT_RESULT_SIZE, P as PREV_RESULT_SIZE } from './const-e27598a1.js';
11
+ import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
12
+ import { u as uuidv4 } from './uuid-9f7da91d.js';
13
+ import { ReplyType, MessageMetaArray } from '@sendbird/chat/message';
14
+ import { EmojiListItems } from './ui/ContextMenu.js';
15
+ import ReactionButton from './ui/ReactionButton.js';
16
+ import ImageRenderer from './ui/ImageRenderer.js';
17
+ import Icon, { IconTypes } from './ui/Icon.js';
18
+ import { d as VOICE_MESSAGE_FILE_NAME, e as VOICE_MESSAGE_MIME_TYPE, M as META_ARRAY_VOICE_DURATION_KEY, h as META_ARRAY_MESSAGE_TYPE_KEY, i as META_ARRAY_MESSAGE_TYPE_VALUE__VOICE } from './consts-886b25ca.js';
19
+
20
+ const RESET_MESSAGES = 'RESET_MESSAGES';
21
+ const FETCH_INITIAL_MESSAGES_START = 'FETCH_INITIAL_MESSAGES_START';
22
+ const FETCH_INITIAL_MESSAGES_SUCCESS = 'FETCH_INITIAL_MESSAGES_SUCCESS';
23
+ const FETCH_INITIAL_MESSAGES_FAILURE = 'FETCH_INITIAL_MESSAGES_FAILURE';
24
+ const FETCH_PREV_MESSAGES_SUCCESS = 'FETCH_PREV_MESSAGES_SUCCESS';
25
+ const FETCH_PREV_MESSAGES_FAILURE = 'FETCH_PREV_MESSAGES_FAILURE';
26
+ const FETCH_NEXT_MESSAGES_SUCCESS = 'FETCH_NEXT_MESSAGES_SUCCESS';
27
+ const FETCH_NEXT_MESSAGES_FAILURE = 'FETCH_NEXT_MESSAGES_FAILURE';
28
+ const SEND_MESSAGEGE_START = 'SEND_MESSAGEGE_START';
29
+ const SEND_MESSAGEGE_SUCESS = 'SEND_MESSAGEGE_SUCESS';
30
+ const SEND_MESSAGEGE_FAILURE = 'SEND_MESSAGEGE_FAILURE';
31
+ const RESEND_MESSAGEGE_START = 'RESEND_MESSAGEGE_START';
32
+ const ON_MESSAGE_RECEIVED = 'ON_MESSAGE_RECEIVED';
33
+ const ON_MESSAGE_UPDATED = 'ON_MESSAGE_UPDATED';
34
+ const ON_MESSAGE_THREAD_INFO_UPDATED = 'ON_MESSAGE_THREAD_INFO_UPDATED';
35
+ const ON_MESSAGE_DELETED = 'ON_MESSAGE_DELETED';
36
+ const ON_MESSAGE_DELETED_BY_REQ_ID = 'ON_MESSAGE_DELETED_BY_REQ_ID';
37
+ const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';
38
+ const SET_CHANNEL_INVALID = 'SET_CHANNEL_INVALID';
39
+ const MARK_AS_READ = 'MARK_AS_READ';
40
+ const ON_REACTION_UPDATED = 'ON_REACTION_UPDATED';
41
+ const SET_EMOJI_CONTAINER = 'SET_EMOJI_CONTAINER';
42
+ const MESSAGE_LIST_PARAMS_CHANGED = 'MESSAGE_LIST_PARAMS_CHANGED';
43
+
44
+ var messageActionTypes = /*#__PURE__*/Object.freeze({
45
+ __proto__: null,
46
+ RESET_MESSAGES: RESET_MESSAGES,
47
+ FETCH_INITIAL_MESSAGES_START: FETCH_INITIAL_MESSAGES_START,
48
+ FETCH_INITIAL_MESSAGES_SUCCESS: FETCH_INITIAL_MESSAGES_SUCCESS,
49
+ FETCH_INITIAL_MESSAGES_FAILURE: FETCH_INITIAL_MESSAGES_FAILURE,
50
+ FETCH_PREV_MESSAGES_SUCCESS: FETCH_PREV_MESSAGES_SUCCESS,
51
+ FETCH_PREV_MESSAGES_FAILURE: FETCH_PREV_MESSAGES_FAILURE,
52
+ FETCH_NEXT_MESSAGES_SUCCESS: FETCH_NEXT_MESSAGES_SUCCESS,
53
+ FETCH_NEXT_MESSAGES_FAILURE: FETCH_NEXT_MESSAGES_FAILURE,
54
+ SEND_MESSAGEGE_START: SEND_MESSAGEGE_START,
55
+ SEND_MESSAGEGE_SUCESS: SEND_MESSAGEGE_SUCESS,
56
+ SEND_MESSAGEGE_FAILURE: SEND_MESSAGEGE_FAILURE,
57
+ RESEND_MESSAGEGE_START: RESEND_MESSAGEGE_START,
58
+ ON_MESSAGE_RECEIVED: ON_MESSAGE_RECEIVED,
59
+ ON_MESSAGE_UPDATED: ON_MESSAGE_UPDATED,
60
+ ON_MESSAGE_THREAD_INFO_UPDATED: ON_MESSAGE_THREAD_INFO_UPDATED,
61
+ ON_MESSAGE_DELETED: ON_MESSAGE_DELETED,
62
+ ON_MESSAGE_DELETED_BY_REQ_ID: ON_MESSAGE_DELETED_BY_REQ_ID,
63
+ SET_CURRENT_CHANNEL: SET_CURRENT_CHANNEL,
64
+ SET_CHANNEL_INVALID: SET_CHANNEL_INVALID,
65
+ MARK_AS_READ: MARK_AS_READ,
66
+ ON_REACTION_UPDATED: ON_REACTION_UPDATED,
67
+ SET_EMOJI_CONTAINER: SET_EMOJI_CONTAINER,
68
+ MESSAGE_LIST_PARAMS_CHANGED: MESSAGE_LIST_PARAMS_CHANGED
69
+ });
70
+
71
+ const UNDEFINED = 'undefined';
72
+ const {
73
+ SUCCEEDED: SUCCEEDED$1,
74
+ FAILED,
75
+ PENDING
76
+ } = getSendingMessageStatus();
77
+ const scrollIntoLast = function () {
78
+ let initialTry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
79
+ let scrollRef = arguments.length > 1 ? arguments[1] : undefined;
80
+ const MAX_TRIES = 10;
81
+ const currentTry = initialTry;
82
+
83
+ if (currentTry > MAX_TRIES) {
84
+ return;
85
+ }
86
+
87
+ try {
88
+ const scrollDOM = (scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) || document.querySelector('.sendbird-conversation__messages-padding'); // eslint-disable-next-line no-multi-assign
89
+
90
+ scrollDOM.scrollTop = scrollDOM.scrollHeight;
91
+ } catch (error) {
92
+ setTimeout(() => {
93
+ scrollIntoLast(currentTry + 1, scrollRef);
94
+ }, 500 * currentTry);
95
+ }
96
+ };
97
+ const pubSubHandleRemover = subscriber => {
98
+ subscriber.forEach(s => {
99
+ try {
100
+ s.remove();
101
+ } catch (_unused) {//
102
+ }
103
+ });
104
+ };
105
+ const pubSubHandler = _ref => {
106
+ let {
107
+ channelUrl,
108
+ pubSub,
109
+ dispatcher,
110
+ scrollRef
111
+ } = _ref;
112
+ const subscriber = new Map();
113
+ if (!pubSub || !pubSub.subscribe) return subscriber;
114
+ subscriber.set(SEND_USER_MESSAGE, pubSub.subscribe(SEND_USER_MESSAGE, msg => {
115
+ const {
116
+ channel,
117
+ message
118
+ } = msg;
119
+ scrollIntoLast(0, scrollRef);
120
+
121
+ if (channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
122
+ dispatcher({
123
+ type: SEND_MESSAGEGE_SUCESS,
124
+ payload: message
125
+ });
126
+ }
127
+ }));
128
+ subscriber.set(SEND_MESSAGE_START, pubSub.subscribe(SEND_MESSAGE_START, msg => {
129
+ const {
130
+ channel,
131
+ message
132
+ } = msg;
133
+
134
+ if (channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
135
+ dispatcher({
136
+ type: SEND_MESSAGEGE_START,
137
+ payload: message
138
+ });
139
+ }
140
+ }));
141
+ subscriber.set(SEND_FILE_MESSAGE, pubSub.subscribe(SEND_FILE_MESSAGE, msg => {
142
+ const {
143
+ channel,
144
+ message
145
+ } = msg;
146
+ scrollIntoLast(0, scrollRef);
147
+
148
+ if (channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
149
+ dispatcher({
150
+ type: SEND_MESSAGEGE_SUCESS,
151
+ payload: message
152
+ });
153
+ }
154
+ }));
155
+ subscriber.set(UPDATE_USER_MESSAGE, pubSub.subscribe(UPDATE_USER_MESSAGE, msg => {
156
+ const {
157
+ channel,
158
+ message,
159
+ fromSelector
160
+ } = msg;
161
+
162
+ if (fromSelector && channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
163
+ dispatcher({
164
+ type: ON_MESSAGE_UPDATED,
165
+ payload: {
166
+ channel,
167
+ message
168
+ }
169
+ });
170
+ }
171
+ }));
172
+ subscriber.set(DELETE_MESSAGE, pubSub.subscribe(DELETE_MESSAGE, msg => {
173
+ const {
174
+ channel,
175
+ messageId
176
+ } = msg;
177
+
178
+ if (channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
179
+ dispatcher({
180
+ type: ON_MESSAGE_DELETED,
181
+ payload: messageId
182
+ });
183
+ }
184
+ }));
185
+ return subscriber;
186
+ };
187
+ const isOperator = function () {
188
+ let groupChannel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
189
+ const myRole = groupChannel === null || groupChannel === void 0 ? void 0 : groupChannel.myRole;
190
+ return myRole === 'operator';
191
+ };
192
+ const isDisabledBecauseFrozen = function () {
193
+ let groupChannel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
194
+ const isFrozen = groupChannel === null || groupChannel === void 0 ? void 0 : groupChannel.isFrozen;
195
+ return isFrozen && !isOperator(groupChannel);
196
+ };
197
+ const isDisabledBecauseMuted = function () {
198
+ let groupChannel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
199
+ const myMutedState = groupChannel === null || groupChannel === void 0 ? void 0 : groupChannel.myMutedState;
200
+ return myMutedState === 'muted';
201
+ };
202
+ const getAllEmojisFromEmojiContainer = function () {
203
+ let emojiContainer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
204
+ const {
205
+ emojiCategories = []
206
+ } = emojiContainer;
207
+ const allEmojis = [];
208
+
209
+ for (let categoryIndex = 0; categoryIndex < emojiCategories.length; categoryIndex += 1) {
210
+ const {
211
+ emojis
212
+ } = emojiCategories[categoryIndex];
213
+
214
+ for (let emojiIndex = 0; emojiIndex < emojis.length; emojiIndex += 1) {
215
+ allEmojis.push(emojis[emojiIndex]);
216
+ }
217
+ }
218
+
219
+ return allEmojis;
220
+ };
221
+ const getAllEmojisMapFromEmojiContainer = function () {
222
+ let emojiContainer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
223
+ const {
224
+ emojiCategories = []
225
+ } = emojiContainer;
226
+ const allEmojisMap = new Map();
227
+
228
+ for (let categoryIndex = 0; categoryIndex < emojiCategories.length; categoryIndex += 1) {
229
+ const {
230
+ emojis
231
+ } = emojiCategories[categoryIndex];
232
+
233
+ for (let emojiIndex = 0; emojiIndex < emojis.length; emojiIndex += 1) {
234
+ const {
235
+ key,
236
+ url
237
+ } = emojis[emojiIndex];
238
+ allEmojisMap.set(key, url);
239
+ }
240
+ }
241
+
242
+ return allEmojisMap;
243
+ };
244
+ const getNicknamesMapFromMembers = function () {
245
+ let members = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
246
+ const nicknamesMap = new Map();
247
+
248
+ for (let memberIndex = 0; memberIndex < members.length; memberIndex += 1) {
249
+ const {
250
+ userId,
251
+ nickname
252
+ } = members[memberIndex];
253
+ nicknamesMap.set(userId, nickname);
254
+ }
255
+
256
+ return nicknamesMap;
257
+ };
258
+
259
+ const getUniqueListBy = (arr, key) => [...new Map(arr.map(item => [item[key], item])).values()];
260
+
261
+ const getUniqueListByMessageId = arr => getUniqueListBy(arr, 'messageId');
262
+
263
+ const sortByCreatedAt = messages => messages.sort((a, b) => a.createdAt - b.createdAt);
264
+
265
+ const mergeAndSortMessages = (oldMessages, newMessages) => {
266
+ const lastOldMessage = oldMessages[oldMessages.length - 1];
267
+ const firstNewMessage = newMessages[0]; // If the last message of oldMessages is older than the first message of newMessages,
268
+ // then we can safely append newMessages to oldMessages.
269
+
270
+ if ((lastOldMessage === null || lastOldMessage === void 0 ? void 0 : lastOldMessage.createdAt) < (firstNewMessage === null || firstNewMessage === void 0 ? void 0 : firstNewMessage.createdAt)) {
271
+ return [...oldMessages, ...newMessages];
272
+ } // todo: optimize this
273
+ // If the last message of oldMessages is newer than the first message of newMessages,
274
+ // then we need to merge the two arrays and sort them by createdAt.
275
+
276
+
277
+ const mergedMessages = [...oldMessages, ...newMessages];
278
+ const unique = getUniqueListByMessageId(mergedMessages);
279
+ return sortByCreatedAt(unique);
280
+ };
281
+ const getMessageCreatedAt = message => format(message.createdAt, 'p');
282
+ const isSameGroup = (message, comparingMessage, currentChannel) => {
283
+ var _message$sender, _comparingMessage$sen, _message$sender2, _comparingMessage$sen2;
284
+
285
+ 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)) {
286
+ return false;
287
+ }
288
+
289
+ 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);
290
+ };
291
+ const compareMessagesForGrouping = (prevMessage, currMessage, nextMessage, currentChannel, replyType) => {
292
+ if (replyType === 'THREAD' && currMessage !== null && currMessage !== void 0 && currMessage.threadInfo) {
293
+ return [false, false];
294
+ }
295
+
296
+ const sendingStatus = (currMessage === null || currMessage === void 0 ? void 0 : currMessage.sendingStatus) || '';
297
+ const isAcceptable = sendingStatus !== 'pending' && sendingStatus !== 'failed';
298
+ return [isSameGroup(prevMessage, currMessage, currentChannel) && isAcceptable, isSameGroup(currMessage, nextMessage, currentChannel) && isAcceptable];
299
+ };
300
+ const passUnsuccessfullMessages = (allMessages, newMessage) => {
301
+ const {
302
+ sendingStatus = UNDEFINED
303
+ } = newMessage;
304
+
305
+ if (sendingStatus === SUCCEEDED$1 || sendingStatus === PENDING) {
306
+ const lastIndexOfSucceededMessage = allMessages.map(message => message.sendingStatus || (message.isAdminMessage && message.isAdminMessage() ? SUCCEEDED$1 : UNDEFINED)).lastIndexOf(SUCCEEDED$1);
307
+
308
+ if (lastIndexOfSucceededMessage + 1 < allMessages.length) {
309
+ const messages = [...allMessages];
310
+ messages.splice(lastIndexOfSucceededMessage + 1, 0, newMessage);
311
+ return messages;
312
+ }
313
+ }
314
+
315
+ return [...allMessages, newMessage];
316
+ };
317
+ const pxToNumber = px => {
318
+ if (typeof px === 'number') {
319
+ return px;
320
+ }
321
+
322
+ if (typeof px === 'string') {
323
+ const parsed = Number.parseFloat(px);
324
+
325
+ if (!Number.isNaN(parsed)) {
326
+ return parsed;
327
+ }
328
+ }
329
+
330
+ return null;
331
+ };
332
+ const isAboutSame = (a, b, px) => Math.abs(a - b) <= px;
333
+
334
+ var messagesInitialState = {
335
+ initialized: false,
336
+ loading: true,
337
+ allMessages: [],
338
+ currentGroupChannel: {
339
+ members: []
340
+ },
341
+ // for scrollup
342
+ hasMorePrev: false,
343
+ oldestMessageTimeStamp: 0,
344
+ // for scroll down
345
+ // onScrollDownCallback is added for navigation to different timestamps on messageSearch
346
+ // hasMorePrev, onScrollCallback -> scroll up(default behavior)
347
+ // hasMoreNext, onScrollDownCallback -> scroll down
348
+ hasMoreNext: false,
349
+ latestMessageTimeStamp: 0,
350
+ emojiContainer: {},
351
+ unreadSince: null,
352
+ isInvalid: false,
353
+ messageListParams: null
354
+ };
355
+
356
+ const {
357
+ SUCCEEDED
358
+ } = getSendingMessageStatus();
359
+
360
+ const getOldestMessageTimeStamp = function () {
361
+ let messages = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
362
+ const oldestMessage = messages[0];
363
+ return oldestMessage && oldestMessage.createdAt || null;
364
+ };
365
+
366
+ const getLatestMessageTimeStamp = function () {
367
+ let messages = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
368
+ const latestMessage = messages[messages.length - 1];
369
+ return latestMessage && latestMessage.createdAt || null;
370
+ };
371
+
372
+ function reducer(state, action) {
373
+ var _state$currentGroupCh7, _action$payload, _action$payload$chann;
374
+
375
+ switch (action.type) {
376
+ case RESET_MESSAGES:
377
+ return _objectSpread2(_objectSpread2({}, state), {}, {
378
+ // when user switches channel, if the previous channel `hasMorePrev`
379
+ // the onScroll gets called twice, setting hasMorePrev false prevents this
380
+ hasMorePrev: false,
381
+ hasMoreNext: false,
382
+ allMessages: []
383
+ });
384
+
385
+ case FETCH_INITIAL_MESSAGES_START:
386
+ {
387
+ return _objectSpread2(_objectSpread2({}, state), {}, {
388
+ loading: true,
389
+ allMessages: [...state.allMessages.filter(m => m.sendingStatus !== SUCCEEDED)]
390
+ });
391
+ }
392
+
393
+ case FETCH_INITIAL_MESSAGES_SUCCESS:
394
+ {
395
+ var _state$currentGroupCh;
396
+
397
+ const {
398
+ currentGroupChannel,
399
+ messages
400
+ } = action.payload;
401
+
402
+ if (!((currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url) === ((_state$currentGroupCh = state.currentGroupChannel) === null || _state$currentGroupCh === void 0 ? void 0 : _state$currentGroupCh.url))) {
403
+ return state;
404
+ }
405
+
406
+ const oldestMessageTimeStamp = getOldestMessageTimeStamp(messages);
407
+ const latestMessageTimeStamp = getLatestMessageTimeStamp(messages);
408
+ return _objectSpread2(_objectSpread2({}, state), {}, {
409
+ loading: false,
410
+ initialized: true,
411
+ hasMorePrev: true,
412
+ hasMoreNext: true,
413
+ oldestMessageTimeStamp,
414
+ latestMessageTimeStamp,
415
+ allMessages: [...messages]
416
+ });
417
+ }
418
+
419
+ case FETCH_PREV_MESSAGES_SUCCESS:
420
+ {
421
+ var _state$currentGroupCh2;
422
+
423
+ const {
424
+ currentGroupChannel,
425
+ messages
426
+ } = action.payload;
427
+
428
+ if (!((currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url) === ((_state$currentGroupCh2 = state.currentGroupChannel) === null || _state$currentGroupCh2 === void 0 ? void 0 : _state$currentGroupCh2.url))) {
429
+ return state;
430
+ }
431
+
432
+ const hasMorePrev = messages && messages.length === PREV_RESULT_SIZE + 1;
433
+ const oldestMessageTimeStamp = getOldestMessageTimeStamp(messages); // Remove duplicated messages
434
+
435
+ const duplicatedMessageIds = [];
436
+ const updatedOldMessages = state.allMessages.map(msg => {
437
+ const duplicatedMessage = messages.find(_ref => {
438
+ let {
439
+ messageId
440
+ } = _ref;
441
+ return compareIds(messageId, msg.messageId);
442
+ });
443
+
444
+ if (!duplicatedMessage) {
445
+ return msg;
446
+ }
447
+
448
+ duplicatedMessageIds.push(duplicatedMessage.messageId);
449
+ return duplicatedMessage.updatedAt > msg.updatedAt ? duplicatedMessage : msg;
450
+ });
451
+ const filteredNewMessages = duplicatedMessageIds.length > 0 ? messages.filter(msg => !duplicatedMessageIds.find(messageId => compareIds(messageId, msg.messageId))) : messages;
452
+ return _objectSpread2(_objectSpread2({}, state), {}, {
453
+ hasMorePrev,
454
+ oldestMessageTimeStamp,
455
+ allMessages: [...filteredNewMessages, ...updatedOldMessages]
456
+ });
457
+ }
458
+
459
+ case FETCH_NEXT_MESSAGES_SUCCESS:
460
+ {
461
+ var _state$currentGroupCh3;
462
+
463
+ const {
464
+ currentGroupChannel,
465
+ messages
466
+ } = action.payload;
467
+
468
+ if (!((currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url) === ((_state$currentGroupCh3 = state.currentGroupChannel) === null || _state$currentGroupCh3 === void 0 ? void 0 : _state$currentGroupCh3.url))) {
469
+ return state;
470
+ }
471
+
472
+ const hasMoreNext = messages && messages.length === NEXT_RESULT_SIZE + 1;
473
+ const latestMessageTimeStamp = getLatestMessageTimeStamp(messages); // sort ~
474
+
475
+ const sortedMessages = mergeAndSortMessages(state.allMessages, messages);
476
+ return _objectSpread2(_objectSpread2({}, state), {}, {
477
+ hasMoreNext,
478
+ latestMessageTimeStamp,
479
+ allMessages: sortedMessages
480
+ });
481
+ }
482
+
483
+ case FETCH_INITIAL_MESSAGES_FAILURE:
484
+ case FETCH_PREV_MESSAGES_FAILURE:
485
+ case FETCH_NEXT_MESSAGES_FAILURE:
486
+ {
487
+ var _state$currentGroupCh4;
488
+
489
+ const {
490
+ currentGroupChannel
491
+ } = action.payload;
492
+
493
+ 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)) {
494
+ return state;
495
+ }
496
+
497
+ return _objectSpread2(_objectSpread2({}, state), {}, {
498
+ loading: false,
499
+ initialized: false,
500
+ allMessages: [],
501
+ hasMorePrev: false,
502
+ hasMoreNext: false,
503
+ oldestMessageTimeStamp: null,
504
+ latestMessageTimeStamp: null
505
+ });
506
+ }
507
+
508
+ case SEND_MESSAGEGE_START:
509
+ return _objectSpread2(_objectSpread2({}, state), {}, {
510
+ allMessages: [...state.allMessages, _objectSpread2({}, action.payload)]
511
+ });
512
+
513
+ case SEND_MESSAGEGE_SUCESS:
514
+ {
515
+ const message = action.payload;
516
+ const filteredMessages = state.allMessages.filter(m => (m === null || m === void 0 ? void 0 : m.reqId) !== (message === null || message === void 0 ? void 0 : message.reqId));
517
+ 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');
518
+ return _objectSpread2(_objectSpread2({}, state), {}, {
519
+ allMessages: pendingIndex > -1 ? [...filteredMessages.slice(0, pendingIndex), message, ...filteredMessages.slice(pendingIndex)] : [...filteredMessages, message]
520
+ });
521
+ }
522
+
523
+ case SEND_MESSAGEGE_FAILURE:
524
+ {
525
+ // eslint-disable-next-line no-param-reassign
526
+ action.payload.failed = true;
527
+ return _objectSpread2(_objectSpread2({}, state), {}, {
528
+ allMessages: state.allMessages.map(m => compareIds(m.reqId, action.payload.reqId) ? action.payload : m)
529
+ });
530
+ }
531
+
532
+ case SET_CURRENT_CHANNEL:
533
+ {
534
+ return _objectSpread2(_objectSpread2({}, state), {}, {
535
+ currentGroupChannel: action.payload,
536
+ isInvalid: false
537
+ });
538
+ }
539
+
540
+ case SET_CHANNEL_INVALID:
541
+ {
542
+ return _objectSpread2(_objectSpread2({}, state), {}, {
543
+ currentGroupChannel: null,
544
+ isInvalid: true
545
+ });
546
+ }
547
+
548
+ case ON_MESSAGE_RECEIVED:
549
+ {
550
+ const {
551
+ channel,
552
+ message
553
+ } = action.payload;
554
+ const {
555
+ members
556
+ } = channel;
557
+ const {
558
+ sender
559
+ } = message;
560
+ const {
561
+ currentGroupChannel = {},
562
+ unreadSince
563
+ } = state;
564
+ const currentGroupChannelUrl = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url;
565
+
566
+ if (!compareIds(channel === null || channel === void 0 ? void 0 : channel.url, currentGroupChannelUrl)) {
567
+ return state;
568
+ } // Excluded overlapping messages
569
+
570
+
571
+ if (state.allMessages.some(msg => msg.messageId === message.messageId)) {
572
+ return state;
573
+ } // Filter by userFilledQuery
574
+
575
+
576
+ if (state.messageListParams && !filterMessageListParams(state.messageListParams, message)) {
577
+ return state;
578
+ }
579
+
580
+ if (message.isAdminMessage && message.isAdminMessage()) {
581
+ return _objectSpread2(_objectSpread2({}, state), {}, {
582
+ allMessages: passUnsuccessfullMessages(state.allMessages, message)
583
+ });
584
+ } // Update members when sender profileUrl, nickname, friendName has been changed
585
+
586
+
587
+ 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));
588
+
589
+ 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)) {
590
+ channel.members = members.map(member => {
591
+ if (member.userId === sender.userId) {
592
+ return sender;
593
+ }
594
+
595
+ return member;
596
+ });
597
+ }
598
+
599
+ return _objectSpread2(_objectSpread2({}, state), {}, {
600
+ currentGroupChannel: channel,
601
+ unreadSince: state !== null && state !== void 0 && state.unreadSince ? unreadSince : format(new Date(), 'p MMM dd'),
602
+ allMessages: passUnsuccessfullMessages(state.allMessages, message)
603
+ });
604
+ }
605
+
606
+ case ON_MESSAGE_UPDATED:
607
+ {
608
+ var _state$currentGroupCh5;
609
+
610
+ const {
611
+ channel,
612
+ message
613
+ } = action.payload;
614
+ const currentGroupChannelUrl = (state === null || state === void 0 ? void 0 : (_state$currentGroupCh5 = state.currentGroupChannel) === null || _state$currentGroupCh5 === void 0 ? void 0 : _state$currentGroupCh5.url) || '';
615
+
616
+ if (!compareIds(channel === null || channel === void 0 ? void 0 : channel.url, currentGroupChannelUrl)) {
617
+ return state; // Ignore event when it is not for the current channel
618
+ }
619
+
620
+ if (state.messageListParams && !filterMessageListParams(state.messageListParams, message)) {
621
+ // Delete the message if it doesn't match to the params anymore
622
+ return _objectSpread2(_objectSpread2({}, state), {}, {
623
+ allMessages: state.allMessages.filter(m => !compareIds(m.messageId, message === null || message === void 0 ? void 0 : message.messageId))
624
+ });
625
+ }
626
+
627
+ return _objectSpread2(_objectSpread2({}, state), {}, {
628
+ allMessages: state.allMessages.map(m => {
629
+ if (compareIds(m.messageId, message.messageId)) {
630
+ return message;
631
+ }
632
+
633
+ if (compareIds(m.parentMessageId, message.messageId)) {
634
+ m.parentMessage = message; // eslint-disable-line no-param-reassign
635
+ }
636
+
637
+ return m;
638
+ })
639
+ });
640
+ }
641
+
642
+ case ON_MESSAGE_THREAD_INFO_UPDATED:
643
+ {
644
+ var _state$currentGroupCh6;
645
+
646
+ const {
647
+ channel,
648
+ event
649
+ } = action.payload;
650
+ const {
651
+ channelUrl,
652
+ threadInfo,
653
+ targetMessageId
654
+ } = event;
655
+ const currentGroupChannelUrl = (state === null || state === void 0 ? void 0 : (_state$currentGroupCh6 = state.currentGroupChannel) === null || _state$currentGroupCh6 === void 0 ? void 0 : _state$currentGroupCh6.url) || '';
656
+
657
+ if (!compareIds(channel === null || channel === void 0 ? void 0 : channel.url, currentGroupChannelUrl) || !compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
658
+ return state; // Ignore event when it is not for the current channel
659
+ }
660
+
661
+ return _objectSpread2(_objectSpread2({}, state), {}, {
662
+ allMessages: state.allMessages.map(m => {
663
+ if (compareIds(m.messageId, targetMessageId)) {
664
+ // eslint-disable-next-line no-param-reassign
665
+ m.threadInfo = threadInfo; // Upsert threadInfo to the target message
666
+ }
667
+
668
+ return m;
669
+ })
670
+ });
671
+ }
672
+
673
+ case RESEND_MESSAGEGE_START:
674
+ return _objectSpread2(_objectSpread2({}, state), {}, {
675
+ allMessages: state.allMessages.map(m => compareIds(m.reqId, action.payload.reqId) ? action.payload : m)
676
+ });
677
+
678
+ case MARK_AS_READ:
679
+ 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)) {
680
+ return state;
681
+ }
682
+
683
+ return _objectSpread2(_objectSpread2({}, state), {}, {
684
+ unreadSince: null
685
+ });
686
+
687
+ case ON_MESSAGE_DELETED:
688
+ return _objectSpread2(_objectSpread2({}, state), {}, {
689
+ allMessages: state.allMessages.filter(m => !compareIds(m.messageId, action.payload))
690
+ });
691
+
692
+ case ON_MESSAGE_DELETED_BY_REQ_ID:
693
+ return _objectSpread2(_objectSpread2({}, state), {}, {
694
+ allMessages: state.allMessages.filter(m => !compareIds(m.reqId, action.payload))
695
+ });
696
+
697
+ case SET_EMOJI_CONTAINER:
698
+ {
699
+ return _objectSpread2(_objectSpread2({}, state), {}, {
700
+ emojiContainer: action.payload
701
+ });
702
+ }
703
+
704
+ case ON_REACTION_UPDATED:
705
+ {
706
+ return _objectSpread2(_objectSpread2({}, state), {}, {
707
+ allMessages: state.allMessages.map(m => {
708
+ if (compareIds(m.messageId, action.payload.messageId)) {
709
+ if (m.applyReactionEvent && typeof m.applyReactionEvent === 'function') {
710
+ m.applyReactionEvent(action.payload);
711
+ }
712
+
713
+ return m;
714
+ }
715
+
716
+ return m;
717
+ })
718
+ });
719
+ }
720
+
721
+ case MESSAGE_LIST_PARAMS_CHANGED:
722
+ {
723
+ return _objectSpread2(_objectSpread2({}, state), {}, {
724
+ messageListParams: action.payload
725
+ });
726
+ }
727
+
728
+ default:
729
+ return state;
730
+ }
731
+ }
732
+
733
+ function useHandleChannelEvents(_a, _b) {
734
+ var sdkInit = _a.sdkInit,
735
+ currentUserId = _a.currentUserId,
736
+ disableMarkAsRead = _a.disableMarkAsRead,
737
+ currentGroupChannel = _a.currentGroupChannel;
738
+ var sdk = _b.sdk,
739
+ logger = _b.logger,
740
+ scrollRef = _b.scrollRef,
741
+ setQuoteMessage = _b.setQuoteMessage,
742
+ messagesDispatcher = _b.messagesDispatcher;
743
+ useEffect(function () {
744
+ var _a;
745
+
746
+ var channelUrl = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url;
747
+ var channelHandlerId = uuidv4();
748
+
749
+ if (channelUrl && sdkInit) {
750
+ var channelHandler = {
751
+ onMessageReceived: function (channel, message) {
752
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
753
+ var scrollToEnd = false;
754
+
755
+ try {
756
+ var current = scrollRef.current;
757
+ scrollToEnd = current.offsetHeight + current.scrollTop >= current.scrollHeight - 10; // 10 is a buffer
758
+ } catch (error) {//
759
+ }
760
+
761
+ logger.info('Channel | useHandleChannelEvents: onMessageReceived', message);
762
+ messagesDispatcher({
763
+ type: ON_MESSAGE_RECEIVED,
764
+ payload: {
765
+ channel: channel,
766
+ message: message
767
+ }
768
+ });
769
+
770
+ if (scrollToEnd) {
771
+ try {
772
+ setTimeout(function () {
773
+ var _a;
774
+
775
+ if (!disableMarkAsRead) {
776
+ (_a = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.markAsRead) === null || _a === void 0 ? void 0 : _a.call(currentGroupChannel);
777
+ }
778
+
779
+ scrollIntoLast(0, scrollRef);
780
+ });
781
+ } catch (error) {
782
+ logger.warning('Channel | onMessageReceived | scroll to end failed');
783
+ }
784
+ }
785
+ }
786
+ },
787
+ onUnreadMemberStatusUpdated: function (channel) {
788
+ logger.info('Channel | useHandleChannelEvents: onUnreadMemberStatusUpdated', channel);
789
+
790
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
791
+ messagesDispatcher({
792
+ type: SET_CURRENT_CHANNEL,
793
+ payload: channel
794
+ });
795
+ }
796
+ },
797
+ // before(onDeliveryReceiptUpdated)
798
+ onUndeliveredMemberStatusUpdated: function (channel) {
799
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
800
+ logger.info('Channel | useHandleChannelEvents: onDeliveryReceiptUpdated', channel);
801
+ messagesDispatcher({
802
+ type: SET_CURRENT_CHANNEL,
803
+ payload: channel
804
+ });
805
+ }
806
+ },
807
+ onMessageUpdated: function (channel, message) {
808
+ logger.info('Channel | useHandleChannelEvents: onMessageUpdated', message);
809
+ messagesDispatcher({
810
+ type: ON_MESSAGE_UPDATED,
811
+ payload: {
812
+ channel: channel,
813
+ message: message
814
+ }
815
+ });
816
+ },
817
+ onThreadInfoUpdated: function (channel, threadInfoUpdateEvent) {
818
+ logger.info('Channel | useHandleChannelEvents: onThreadInfoUpdated', {
819
+ channel: channel,
820
+ threadInfoUpdateEvent: threadInfoUpdateEvent
821
+ });
822
+ messagesDispatcher({
823
+ type: ON_MESSAGE_THREAD_INFO_UPDATED,
824
+ payload: {
825
+ channel: channel,
826
+ event: threadInfoUpdateEvent
827
+ }
828
+ });
829
+ },
830
+ onMessageDeleted: function (channel, messageId) {
831
+ logger.info('Channel | useHandleChannelEvents: onMessageDeleted', {
832
+ channel: channel,
833
+ messageId: messageId
834
+ });
835
+ setQuoteMessage(null);
836
+ messagesDispatcher({
837
+ type: ON_MESSAGE_DELETED,
838
+ payload: messageId
839
+ });
840
+ },
841
+ onReactionUpdated: function (channel, reactionEvent) {
842
+ logger.info('Channel | useHandleChannelEvents: onReactionUpdated', {
843
+ channel: channel,
844
+ reactionEvent: reactionEvent
845
+ });
846
+ messagesDispatcher({
847
+ type: ON_REACTION_UPDATED,
848
+ payload: reactionEvent
849
+ });
850
+ },
851
+ onChannelChanged: function (channel) {
852
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
853
+ logger.info('Channel | useHandleChannelEvents: onChannelChanged', channel);
854
+ messagesDispatcher({
855
+ type: SET_CURRENT_CHANNEL,
856
+ payload: channel
857
+ });
858
+ }
859
+ },
860
+ onChannelFrozen: function (channel) {
861
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
862
+ logger.info('Channel | useHandleChannelEvents: onChannelFrozen', channel);
863
+ messagesDispatcher({
864
+ type: SET_CURRENT_CHANNEL,
865
+ payload: channel
866
+ });
867
+ }
868
+ },
869
+ onChannelUnfrozen: function (channel) {
870
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
871
+ logger.info('Channel | useHandleChannelEvents: onChannelUnFrozen', channel);
872
+ messagesDispatcher({
873
+ type: SET_CURRENT_CHANNEL,
874
+ payload: channel
875
+ });
876
+ }
877
+ },
878
+ onUserMuted: function (channel, user) {
879
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
880
+ logger.info('Channel | useHandleChannelEvents: onUserMuted', {
881
+ channel: channel,
882
+ user: user
883
+ });
884
+ messagesDispatcher({
885
+ type: SET_CURRENT_CHANNEL,
886
+ payload: channel
887
+ });
888
+ }
889
+ },
890
+ onUserUnmuted: function (channel, user) {
891
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
892
+ logger.info('Channel | useHandleChannelEvents: onUserUnmuted', {
893
+ channel: channel,
894
+ user: user
895
+ });
896
+ messagesDispatcher({
897
+ type: SET_CURRENT_CHANNEL,
898
+ payload: channel
899
+ });
900
+ }
901
+ },
902
+ onUserBanned: function (channel, user) {
903
+ var _a;
904
+
905
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl) && (user === null || user === void 0 ? void 0 : user.userId) === ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.currentUser) === null || _a === void 0 ? void 0 : _a.userId)) {
906
+ logger.info('Channel | useHandleChannelEvents: onUserBanned', {
907
+ channel: channel,
908
+ user: user
909
+ });
910
+ messagesDispatcher({
911
+ type: SET_CURRENT_CHANNEL,
912
+ payload: null
913
+ });
914
+ }
915
+ },
916
+ onOperatorUpdated: function (channel, users) {
917
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
918
+ logger.info('Channel | useHandleChannelEvents: onOperatorUpdated', {
919
+ channel: channel,
920
+ users: users
921
+ });
922
+ messagesDispatcher({
923
+ type: SET_CURRENT_CHANNEL,
924
+ payload: channel
925
+ });
926
+ }
927
+ },
928
+ onUserLeft: function (channel, user) {
929
+ if (compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
930
+ logger.info('Channel | useHandleChannelEvents: onUserLeft', {
931
+ channel: channel,
932
+ user: user
933
+ });
934
+
935
+ if ((user === null || user === void 0 ? void 0 : user.userId) === currentUserId) {
936
+ messagesDispatcher({
937
+ type: SET_CURRENT_CHANNEL,
938
+ payload: null
939
+ });
940
+ }
941
+ }
942
+ }
943
+ };
944
+ logger.info('Channel | useHandleChannelEvents: Setup event handler', {
945
+ channelHandlerId: channelHandlerId,
946
+ channelHandler: channelHandler
947
+ }); // Add this group channel handler to the Sendbird chat instance
948
+
949
+ (_a = sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.addGroupChannelHandler(channelHandlerId, new GroupChannelHandler(channelHandler));
950
+ }
951
+
952
+ return function () {
953
+ var _a;
954
+
955
+ if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.removeGroupChannelHandler) {
956
+ logger.info('Channel | useHandleChannelEvents: Removing message reciver handler', channelHandlerId);
957
+ sdk.groupChannel.removeGroupChannelHandler(channelHandlerId);
958
+ } else if (sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) {
959
+ logger.error('Channel | useHandleChannelEvents: Not found the removeGroupChannelHandler');
960
+ }
961
+ };
962
+ }, [currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url, sdkInit]);
963
+ }
964
+
965
+ function useSetChannel(_ref, _ref2) {
966
+ let {
967
+ channelUrl,
968
+ sdkInit,
969
+ disableMarkAsRead
970
+ } = _ref;
971
+ let {
972
+ messagesDispatcher,
973
+ sdk,
974
+ logger
975
+ } = _ref2;
976
+ useEffect(() => {
977
+ if (channelUrl && sdkInit && sdk && sdk.groupChannel) {
978
+ logger.info('Channel | useSetChannel fetching channel', channelUrl);
979
+ sdk.groupChannel.getChannel(channelUrl).then(groupChannel => {
980
+ logger.info('Channel | useSetChannel fetched channel', groupChannel);
981
+ messagesDispatcher({
982
+ type: SET_CURRENT_CHANNEL,
983
+ payload: groupChannel
984
+ });
985
+ logger.info('Channel: Mark as read', groupChannel);
986
+
987
+ if (!disableMarkAsRead) {
988
+ // this order is important - this mark as read should update the event handler up above
989
+ try {
990
+ groupChannel.markAsRead();
991
+ } catch (_unused) {//
992
+ }
993
+ }
994
+ }).catch(e => {
995
+ logger.warning('Channel | useSetChannel fetch channel failed', {
996
+ channelUrl,
997
+ e
998
+ });
999
+ messagesDispatcher({
1000
+ type: SET_CHANNEL_INVALID
1001
+ });
1002
+ });
1003
+ sdk.getAllEmoji().then(emojiContainer_ => {
1004
+ logger.info('Channel: Getting emojis success', emojiContainer_);
1005
+ messagesDispatcher({
1006
+ type: SET_EMOJI_CONTAINER,
1007
+ payload: emojiContainer_
1008
+ });
1009
+ }).catch(err => {
1010
+ logger.error('Channel: Getting emojis failed', err);
1011
+ });
1012
+ sdk.getAllEmoji();
1013
+ }
1014
+ }, [channelUrl, sdkInit]);
1015
+ }
1016
+
1017
+ function useInitialMessagesFetch(_ref, _ref2) {
1018
+ let {
1019
+ currentGroupChannel,
1020
+ userFilledMessageListQuery,
1021
+ initialTimeStamp,
1022
+ replyType
1023
+ } = _ref;
1024
+ let {
1025
+ logger,
1026
+ scrollRef,
1027
+ messagesDispatcher
1028
+ } = _ref2;
1029
+ const channelUrl = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url;
1030
+ useEffect(() => {
1031
+ logger.info('Channel useInitialMessagesFetch: Setup started', currentGroupChannel);
1032
+ messagesDispatcher({
1033
+ type: RESET_MESSAGES,
1034
+ payload: null
1035
+ });
1036
+
1037
+ if (currentGroupChannel && currentGroupChannel !== null && currentGroupChannel !== void 0 && currentGroupChannel.getMessagesByTimestamp) {
1038
+ const messageListParams = {};
1039
+ messageListParams.prevResultSize = PREV_RESULT_SIZE;
1040
+
1041
+ if (initialTimeStamp) {
1042
+ messageListParams.nextResultSize = NEXT_RESULT_SIZE;
1043
+ }
1044
+
1045
+ messageListParams.isInclusive = true;
1046
+ messageListParams.includeReactions = true;
1047
+ messageListParams.includeMetaArray = true;
1048
+
1049
+ if (replyType && (replyType === 'QUOTE_REPLY' || replyType === 'THREAD')) {
1050
+ messageListParams.includeThreadInfo = true;
1051
+ messageListParams.includeParentMessageInfo = true;
1052
+ messageListParams.replyType = ReplyType.ONLY_REPLY_TO_CHANNEL;
1053
+ }
1054
+
1055
+ if (userFilledMessageListQuery) {
1056
+ Object.keys(userFilledMessageListQuery).forEach(key => {
1057
+ messageListParams[key] = userFilledMessageListQuery[key];
1058
+ });
1059
+ }
1060
+
1061
+ if (replyType && (replyType === 'QUOTE_REPLY' || replyType === 'THREAD') || userFilledMessageListQuery) {
1062
+ logger.info('Channel useInitialMessagesFetch: Setup messageListParams', messageListParams);
1063
+ messagesDispatcher({
1064
+ type: MESSAGE_LIST_PARAMS_CHANGED,
1065
+ payload: messageListParams
1066
+ });
1067
+ }
1068
+
1069
+ logger.info('Channel: Fetching messages', {
1070
+ currentGroupChannel,
1071
+ userFilledMessageListQuery
1072
+ });
1073
+ messagesDispatcher({
1074
+ type: FETCH_INITIAL_MESSAGES_START,
1075
+ payload: null
1076
+ });
1077
+ currentGroupChannel.getMessagesByTimestamp(initialTimeStamp || new Date().getTime(), messageListParams).then(messages => {
1078
+ messagesDispatcher({
1079
+ type: FETCH_INITIAL_MESSAGES_SUCCESS,
1080
+ payload: {
1081
+ currentGroupChannel,
1082
+ messages
1083
+ }
1084
+ });
1085
+ }).catch(error => {
1086
+ logger.error('Channel: Fetching messages failed', error);
1087
+ messagesDispatcher({
1088
+ type: FETCH_INITIAL_MESSAGES_FAILURE,
1089
+ payload: {
1090
+ currentGroupChannel
1091
+ }
1092
+ });
1093
+ }).finally(() => {
1094
+ if (!initialTimeStamp) {
1095
+ setTimeout(() => scrollIntoLast(0, scrollRef));
1096
+ }
1097
+ });
1098
+ }
1099
+ }, [channelUrl, userFilledMessageListQuery, initialTimeStamp]);
1100
+ /**
1101
+ * Note - useEffect(() => {}, [currentGroupChannel])
1102
+ * was buggy, that is why we did
1103
+ * const channelUrl = currentGroupChannel && currentGroupChannel.url;
1104
+ * useEffect(() => {}, [channelUrl])
1105
+ * Again, this hook is supposed to execute when currentGroupChannel changes
1106
+ * The 'channelUrl' here is not the same memory reference from Conversation.props
1107
+ */
1108
+ }
1109
+
1110
+ function useHandleReconnect(_a, _b) {
1111
+ var isOnline = _a.isOnline,
1112
+ replyType = _a.replyType,
1113
+ disableMarkAsRead = _a.disableMarkAsRead;
1114
+ var logger = _b.logger,
1115
+ sdk = _b.sdk,
1116
+ scrollRef = _b.scrollRef,
1117
+ currentGroupChannel = _b.currentGroupChannel,
1118
+ messagesDispatcher = _b.messagesDispatcher,
1119
+ userFilledMessageListQuery = _b.userFilledMessageListQuery;
1120
+ useEffect(function () {
1121
+ var wasOffline = !isOnline;
1122
+ return function () {
1123
+ var _a, _b; // state changed from offline to online
1124
+
1125
+
1126
+ if (wasOffline && (currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url)) {
1127
+ logger.info('Refreshing conversation state');
1128
+ var isReactionEnabled = ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.appInfo) === null || _a === void 0 ? void 0 : _a.useReaction) || false;
1129
+ var messageListParams_1 = {
1130
+ prevResultSize: PREV_RESULT_SIZE,
1131
+ isInclusive: true,
1132
+ includeReactions: isReactionEnabled,
1133
+ nextResultSize: NEXT_RESULT_SIZE
1134
+ };
1135
+
1136
+ if (replyType && replyType === 'QUOTE_REPLY') {
1137
+ messageListParams_1.includeThreadInfo = true;
1138
+ messageListParams_1.includeParentMessageInfo = true;
1139
+ messageListParams_1.replyType = ReplyType.ONLY_REPLY_TO_CHANNEL;
1140
+ }
1141
+
1142
+ if (userFilledMessageListQuery) {
1143
+ Object.keys(userFilledMessageListQuery).forEach(function (key) {
1144
+ messageListParams_1[key] = userFilledMessageListQuery[key];
1145
+ });
1146
+ }
1147
+
1148
+ logger.info('Channel: Fetching messages', {
1149
+ currentGroupChannel: currentGroupChannel,
1150
+ userFilledMessageListQuery: userFilledMessageListQuery
1151
+ });
1152
+ messagesDispatcher({
1153
+ type: FETCH_INITIAL_MESSAGES_START,
1154
+ payload: null
1155
+ });
1156
+ (_b = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _b === void 0 ? void 0 : _b.getChannel(currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url).then(function (groupChannel) {
1157
+ var _a;
1158
+
1159
+ var lastMessageTime = new Date().getTime();
1160
+ groupChannel.getMessagesByTimestamp(lastMessageTime, messageListParams_1).then(function (messages) {
1161
+ messagesDispatcher({
1162
+ type: FETCH_INITIAL_MESSAGES_SUCCESS,
1163
+ payload: {
1164
+ currentGroupChannel: currentGroupChannel,
1165
+ messages: messages
1166
+ }
1167
+ });
1168
+ setTimeout(function () {
1169
+ return scrollIntoLast(0, scrollRef);
1170
+ });
1171
+ }).catch(function (error) {
1172
+ logger.error('Channel: Fetching messages failed', error);
1173
+ messagesDispatcher({
1174
+ type: FETCH_INITIAL_MESSAGES_FAILURE,
1175
+ payload: {
1176
+ currentGroupChannel: currentGroupChannel
1177
+ }
1178
+ });
1179
+ });
1180
+
1181
+ if (!disableMarkAsRead) {
1182
+ try {
1183
+ (_a = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.markAsRead) === null || _a === void 0 ? void 0 : _a.call(currentGroupChannel);
1184
+ } catch (_b) {//
1185
+ }
1186
+ }
1187
+ });
1188
+ }
1189
+ };
1190
+ }, [isOnline, replyType]);
1191
+ }
1192
+
1193
+ function useScrollCallback(_ref, _ref2) {
1194
+ let {
1195
+ currentGroupChannel,
1196
+ oldestMessageTimeStamp,
1197
+ userFilledMessageListQuery,
1198
+ replyType
1199
+ } = _ref;
1200
+ let {
1201
+ hasMorePrev,
1202
+ logger,
1203
+ messagesDispatcher,
1204
+ sdk
1205
+ } = _ref2;
1206
+ return useCallback(cb => {
1207
+ if (!hasMorePrev) {
1208
+ return;
1209
+ }
1210
+
1211
+ const {
1212
+ appInfo = {}
1213
+ } = sdk;
1214
+ const isReactionEnabled = appInfo.useReaction || false;
1215
+ const messageListParams = {
1216
+ prevResultSize: PREV_RESULT_SIZE,
1217
+ isInclusive: true,
1218
+ includeReactions: isReactionEnabled
1219
+ };
1220
+ messageListParams.includeMetaArray = true;
1221
+
1222
+ if (replyType === 'QUOTE_REPLY' || replyType === 'THREAD') {
1223
+ messageListParams.includeThreadInfo = true;
1224
+ messageListParams.includeParentMessageInfo = true;
1225
+ messageListParams.replyType = ReplyType.ONLY_REPLY_TO_CHANNEL;
1226
+ }
1227
+
1228
+ if (userFilledMessageListQuery) {
1229
+ Object.keys(userFilledMessageListQuery).forEach(key => {
1230
+ messageListParams[key] = userFilledMessageListQuery[key];
1231
+ });
1232
+ }
1233
+
1234
+ logger.info('Channel: Fetching messages', {
1235
+ currentGroupChannel,
1236
+ userFilledMessageListQuery
1237
+ });
1238
+ currentGroupChannel.getMessagesByTimestamp(oldestMessageTimeStamp || new Date().getTime(), messageListParams).then(messages => {
1239
+ messagesDispatcher({
1240
+ type: FETCH_PREV_MESSAGES_SUCCESS,
1241
+ payload: {
1242
+ currentGroupChannel,
1243
+ messages
1244
+ }
1245
+ });
1246
+ cb([messages, null]);
1247
+ }).catch(error => {
1248
+ logger.error('Channel: Fetching messages failed', error);
1249
+ messagesDispatcher({
1250
+ type: FETCH_PREV_MESSAGES_FAILURE,
1251
+ payload: {
1252
+ currentGroupChannel
1253
+ }
1254
+ });
1255
+ cb([null, error]);
1256
+ });
1257
+ }, [currentGroupChannel, oldestMessageTimeStamp, replyType]);
1258
+ }
1259
+
1260
+ function useScrollDownCallback(_ref, _ref2) {
1261
+ let {
1262
+ currentGroupChannel,
1263
+ latestMessageTimeStamp,
1264
+ userFilledMessageListQuery,
1265
+ hasMoreNext,
1266
+ replyType
1267
+ } = _ref;
1268
+ let {
1269
+ logger,
1270
+ messagesDispatcher,
1271
+ sdk
1272
+ } = _ref2;
1273
+ return useCallback(cb => {
1274
+ if (!hasMoreNext) {
1275
+ return;
1276
+ }
1277
+
1278
+ const {
1279
+ appInfo = {}
1280
+ } = sdk;
1281
+ const isReactionEnabled = appInfo.useReaction || false;
1282
+ const messageListParams = {
1283
+ nextResultSize: NEXT_RESULT_SIZE,
1284
+ isInclusive: true,
1285
+ includeReactions: isReactionEnabled
1286
+ };
1287
+ messageListParams.includeMetaArray = true;
1288
+
1289
+ if (replyType && (replyType === 'QUOTE_REPLY' || replyType === 'THREAD')) {
1290
+ messageListParams.includeThreadInfo = true;
1291
+ messageListParams.includeParentMessageInfo = true;
1292
+ messageListParams.replyType = ReplyType.ONLY_REPLY_TO_CHANNEL;
1293
+ }
1294
+
1295
+ if (userFilledMessageListQuery) {
1296
+ Object.keys(userFilledMessageListQuery).forEach(key => {
1297
+ messageListParams[key] = userFilledMessageListQuery[key];
1298
+ });
1299
+ }
1300
+
1301
+ logger.info('Channel: Fetching later messages', {
1302
+ currentGroupChannel,
1303
+ userFilledMessageListQuery
1304
+ });
1305
+ currentGroupChannel.getMessagesByTimestamp(latestMessageTimeStamp || new Date().getTime(), messageListParams).then(messages => {
1306
+ messagesDispatcher({
1307
+ type: FETCH_NEXT_MESSAGES_SUCCESS,
1308
+ payload: {
1309
+ currentGroupChannel,
1310
+ messages
1311
+ }
1312
+ });
1313
+ cb([messages, null]);
1314
+ }).catch(error => {
1315
+ logger.error('Channel: Fetching later messages failed', error);
1316
+ messagesDispatcher({
1317
+ type: FETCH_NEXT_MESSAGES_FAILURE,
1318
+ payload: {
1319
+ currentGroupChannel
1320
+ }
1321
+ });
1322
+ cb([null, error]);
1323
+ });
1324
+ }, [currentGroupChannel, latestMessageTimeStamp, hasMoreNext, replyType]);
1325
+ }
1326
+
1327
+ function useDeleteMessageCallback(_ref, _ref2) {
1328
+ let {
1329
+ currentGroupChannel,
1330
+ messagesDispatcher
1331
+ } = _ref;
1332
+ let {
1333
+ logger
1334
+ } = _ref2;
1335
+ return useCallback(message => {
1336
+ logger.info('Channel | useDeleteMessageCallback: Deleting message', message);
1337
+ const {
1338
+ requestState
1339
+ } = message;
1340
+ return new Promise((resolve, reject) => {
1341
+ logger.info('Channel | useDeleteMessageCallback: Deleting message requestState:', requestState); // Message is only on local
1342
+
1343
+ if (requestState === 'failed' || requestState === 'pending') {
1344
+ logger.info('Channel | useDeleteMessageCallback: Deleted message from local:', message);
1345
+ messagesDispatcher({
1346
+ type: ON_MESSAGE_DELETED_BY_REQ_ID,
1347
+ payload: message.reqId
1348
+ });
1349
+ resolve(message);
1350
+ }
1351
+
1352
+ logger.info('Channel | useDeleteMessageCallback: Deleting message from remote:', requestState);
1353
+ currentGroupChannel.deleteMessage(message).then(() => {
1354
+ logger.info('Channel | useDeleteMessageCallback: Deleting message success!', message);
1355
+ messagesDispatcher({
1356
+ type: ON_MESSAGE_DELETED,
1357
+ payload: message.messageId
1358
+ });
1359
+ resolve(message);
1360
+ }).catch(err => {
1361
+ logger.warning('Channel | useDeleteMessageCallback: Deleting message failed!', err);
1362
+ reject(err);
1363
+ });
1364
+ });
1365
+ }, [currentGroupChannel, messagesDispatcher]);
1366
+ }
1367
+
1368
+ function useUpdateMessageCallback(_ref, _ref2) {
1369
+ let {
1370
+ currentGroupChannel,
1371
+ messagesDispatcher,
1372
+ onBeforeUpdateUserMessage,
1373
+ isMentionEnabled
1374
+ } = _ref;
1375
+ let {
1376
+ logger,
1377
+ pubSub
1378
+ } = _ref2;
1379
+ return useCallback((props, callback) => {
1380
+ const {
1381
+ messageId,
1382
+ message,
1383
+ mentionedUsers,
1384
+ mentionTemplate
1385
+ } = props;
1386
+
1387
+ const createParamsDefault = () => {
1388
+ const params = {};
1389
+ params.message = message;
1390
+
1391
+ if (isMentionEnabled && (mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) > 0) {
1392
+ params.mentionedUsers = mentionedUsers;
1393
+ }
1394
+
1395
+ if (isMentionEnabled && mentionTemplate) {
1396
+ params.mentionedMessageTemplate = mentionTemplate;
1397
+ } else {
1398
+ params.mentionedMessageTemplate = message;
1399
+ }
1400
+
1401
+ return params;
1402
+ };
1403
+
1404
+ const createCustomPrams = onBeforeUpdateUserMessage && typeof onBeforeUpdateUserMessage === 'function';
1405
+
1406
+ if (createCustomPrams) {
1407
+ logger.info('Channel: creating params using onBeforeUpdateUserMessage', onBeforeUpdateUserMessage);
1408
+ }
1409
+
1410
+ const params = onBeforeUpdateUserMessage ? onBeforeUpdateUserMessage(message) : createParamsDefault();
1411
+ logger.info('Channel: Updating message!', params);
1412
+ currentGroupChannel.updateUserMessage(messageId, params).then((msg, err) => {
1413
+ if (callback) {
1414
+ callback(err, msg);
1415
+ }
1416
+
1417
+ logger.info('Channel: Updating message success!', msg);
1418
+ messagesDispatcher({
1419
+ type: ON_MESSAGE_UPDATED,
1420
+ payload: {
1421
+ channel: currentGroupChannel,
1422
+ message: msg
1423
+ }
1424
+ });
1425
+ pubSub.publish(UPDATE_USER_MESSAGE, {
1426
+ message: msg,
1427
+ channel: currentGroupChannel
1428
+ });
1429
+ });
1430
+ }, [currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url, messagesDispatcher, onBeforeUpdateUserMessage]);
1431
+ }
1432
+
1433
+ function useResendMessageCallback(_ref, _ref2) {
1434
+ let {
1435
+ currentGroupChannel,
1436
+ messagesDispatcher
1437
+ } = _ref;
1438
+ let {
1439
+ logger
1440
+ } = _ref2;
1441
+ return useCallback(failedMessage => {
1442
+ logger.info('Channel: Resending message has started', failedMessage);
1443
+ const {
1444
+ messageType,
1445
+ file
1446
+ } = failedMessage;
1447
+
1448
+ if (failedMessage !== null && failedMessage !== void 0 && failedMessage.isResendable) {
1449
+ // Move the logic setting sendingStatus to pending into the reducer
1450
+ // eslint-disable-next-line no-param-reassign
1451
+ failedMessage.requestState = 'pending'; // eslint-disable-next-line no-param-reassign
1452
+
1453
+ failedMessage.sendingStatus = 'pending';
1454
+ messagesDispatcher({
1455
+ type: RESEND_MESSAGEGE_START,
1456
+ payload: failedMessage
1457
+ }); // userMessage
1458
+
1459
+ if (messageType === 'user') {
1460
+ currentGroupChannel.resendUserMessage(failedMessage).then(message => {
1461
+ logger.info('Channel: Resending message success!', message);
1462
+ messagesDispatcher({
1463
+ type: SEND_MESSAGEGE_SUCESS,
1464
+ payload: message
1465
+ });
1466
+ }).catch(e => {
1467
+ logger.warning('Channel: Resending message failed!', e); // eslint-disable-next-line no-param-reassign
1468
+
1469
+ failedMessage.requestState = 'failed'; // eslint-disable-next-line no-param-reassign
1470
+
1471
+ failedMessage.sendingStatus = 'failed';
1472
+ messagesDispatcher({
1473
+ type: SEND_MESSAGEGE_FAILURE,
1474
+ payload: failedMessage
1475
+ });
1476
+ }); // eslint-disable-next-line no-param-reassign
1477
+
1478
+ failedMessage.requestState = 'pending'; // eslint-disable-next-line no-param-reassign
1479
+
1480
+ failedMessage.sendingStatus = 'pending';
1481
+ messagesDispatcher({
1482
+ type: RESEND_MESSAGEGE_START,
1483
+ payload: failedMessage
1484
+ });
1485
+ return;
1486
+ }
1487
+
1488
+ if (messageType === 'file') {
1489
+ currentGroupChannel.resendFileMessage(failedMessage, file).then(message => {
1490
+ logger.info('Channel: Resending file message success!', message);
1491
+ messagesDispatcher({
1492
+ type: SEND_MESSAGEGE_SUCESS,
1493
+ payload: message
1494
+ });
1495
+ }).catch(e => {
1496
+ logger.warning('Channel: Resending file message failed!', e); // eslint-disable-next-line no-param-reassign
1497
+
1498
+ failedMessage.requestState = 'failed'; // eslint-disable-next-line no-param-reassign
1499
+
1500
+ failedMessage.sendingStatus = 'failed';
1501
+ messagesDispatcher({
1502
+ type: SEND_MESSAGEGE_FAILURE,
1503
+ payload: failedMessage
1504
+ });
1505
+ }); // eslint-disable-next-line no-param-reassign
1506
+
1507
+ failedMessage.requestState = 'pending'; // eslint-disable-next-line no-param-reassign
1508
+
1509
+ failedMessage.sendingStatus = 'pending';
1510
+ messagesDispatcher({
1511
+ type: RESEND_MESSAGEGE_START,
1512
+ payload: failedMessage
1513
+ });
1514
+ }
1515
+ } else {
1516
+ // to alert user on console
1517
+ // eslint-disable-next-line no-console
1518
+ console.error('Message is not resendable');
1519
+ logger.warning('Message is not resendable', failedMessage);
1520
+ }
1521
+ }, [currentGroupChannel, messagesDispatcher]);
1522
+ }
1523
+
1524
+ function useSendMessageCallback(_ref, _ref2) {
1525
+ let {
1526
+ isMentionEnabled,
1527
+ currentGroupChannel,
1528
+ onBeforeSendUserMessage
1529
+ } = _ref;
1530
+ let {
1531
+ logger,
1532
+ pubSub,
1533
+ scrollRef,
1534
+ messagesDispatcher
1535
+ } = _ref2;
1536
+ const messageInputRef = useRef(null);
1537
+ const sendMessage = useCallback(props => {
1538
+ const {
1539
+ quoteMessage = null,
1540
+ message,
1541
+ mentionTemplate,
1542
+ // mentionedUserIds,
1543
+ mentionedUsers
1544
+ } = props;
1545
+
1546
+ const createParamsDefault = () => {
1547
+ const params = {};
1548
+ params.message = (message === null || message === void 0 ? void 0 : message.trim()) || message; // if (isMentionEnabled && mentionedUserIds?.length > 0) {
1549
+
1550
+ if (isMentionEnabled && (mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) > 0) {
1551
+ // params.mentionedUserIds = mentionedUserIds;
1552
+ params.mentionedUsers = mentionedUsers;
1553
+ } // if (isMentionEnabled && mentionTemplate && mentionedUserIds?.length > 0) {
1554
+
1555
+
1556
+ if (isMentionEnabled && mentionTemplate && (mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) > 0) {
1557
+ params.mentionedMessageTemplate = (mentionTemplate === null || mentionTemplate === void 0 ? void 0 : mentionTemplate.trim()) || mentionTemplate;
1558
+ }
1559
+
1560
+ if (quoteMessage) {
1561
+ params.isReplyToChannel = true;
1562
+ params.parentMessageId = quoteMessage.messageId;
1563
+ }
1564
+
1565
+ return params;
1566
+ };
1567
+
1568
+ const createCustomPrams = onBeforeSendUserMessage && typeof onBeforeSendUserMessage === 'function';
1569
+
1570
+ if (createCustomPrams) {
1571
+ logger.info('Channel: creating params using onBeforeSendUserMessage', onBeforeSendUserMessage);
1572
+ }
1573
+
1574
+ const params = onBeforeSendUserMessage ? onBeforeSendUserMessage(message, quoteMessage) : createParamsDefault();
1575
+ logger.info('Channel: Sending message has started', params);
1576
+ currentGroupChannel.sendUserMessage(params).onPending(pendingMsg => {
1577
+ pubSub.publish(SEND_MESSAGE_START, {
1578
+ /* pubSub is used instead of messagesDispatcher
1579
+ to avoid redundantly calling `messageActionTypes.SEND_MESSAGEGE_START` */
1580
+ message: pendingMsg,
1581
+ channel: currentGroupChannel
1582
+ });
1583
+ setTimeout(() => scrollIntoLast(0, scrollRef));
1584
+ }).onFailed((err, msg) => {
1585
+ logger.warning('Channel: Sending message failed!', {
1586
+ message: msg,
1587
+ error: err
1588
+ });
1589
+ messagesDispatcher({
1590
+ type: SEND_MESSAGEGE_FAILURE,
1591
+ payload: msg
1592
+ });
1593
+ }).onSucceeded(msg => {
1594
+ logger.info('Channel: Sending message success!', msg);
1595
+ messagesDispatcher({
1596
+ type: SEND_MESSAGEGE_SUCESS,
1597
+ payload: msg
1598
+ });
1599
+ });
1600
+ }, [currentGroupChannel, onBeforeSendUserMessage]);
1601
+ return [messageInputRef, sendMessage];
1602
+ }
1603
+
1604
+ function useSendFileMessageCallback(_ref, _ref2) {
1605
+ let {
1606
+ currentGroupChannel,
1607
+ onBeforeSendFileMessage,
1608
+ imageCompression = {}
1609
+ } = _ref;
1610
+ let {
1611
+ logger,
1612
+ pubSub,
1613
+ scrollRef,
1614
+ messagesDispatcher
1615
+ } = _ref2;
1616
+ const sendMessage = useCallback(function (file) {
1617
+ let quoteMessage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1618
+ const {
1619
+ compressionRate,
1620
+ resizingWidth,
1621
+ resizingHeight
1622
+ } = imageCompression;
1623
+ const createCustomParams = onBeforeSendFileMessage && typeof onBeforeSendFileMessage === 'function';
1624
+ const compressibleFileType = file.type === 'image/jpg' || file.type === 'image/png' || file.type === 'image/jpeg';
1625
+ const compressibleRatio = compressionRate > 0 && compressionRate < 1; // pxToNumber returns null if values are invalid
1626
+
1627
+ const compressibleDiamensions = pxToNumber(resizingWidth) || pxToNumber(resizingHeight);
1628
+ const canCompressImage = compressibleFileType && (compressibleRatio || compressibleDiamensions);
1629
+
1630
+ const createParamsDefault = file_ => {
1631
+ const params = {};
1632
+ params.file = file_;
1633
+
1634
+ if (quoteMessage) {
1635
+ params.isReplyToChannel = true;
1636
+ params.parentMessageId = quoteMessage.messageId;
1637
+ }
1638
+
1639
+ return params;
1640
+ };
1641
+
1642
+ if (canCompressImage) {
1643
+ // Using image compression
1644
+ try {
1645
+ const image = document.createElement('img');
1646
+ image.src = URL.createObjectURL(file);
1647
+
1648
+ image.onload = () => {
1649
+ URL.revokeObjectURL(image.src);
1650
+ const canvas = document.createElement('canvas');
1651
+ const imageWdith = image.naturalWidth || image.width;
1652
+ const imageHeight = image.naturalHeight || image.height;
1653
+ let targetWidth = pxToNumber(resizingWidth) || imageWdith;
1654
+ let targetHeight = pxToNumber(resizingHeight) || imageHeight; // In canvas.toBlob(callback, mimeType, qualityArgument)
1655
+ // qualityArgument doesnt work
1656
+ // so in case compressibleDiamensions are not present, we use ratio
1657
+
1658
+ if (file.type === 'image/png' && !compressibleDiamensions) {
1659
+ targetWidth *= compressionRate;
1660
+ targetHeight *= compressionRate;
1661
+ }
1662
+
1663
+ canvas.width = targetWidth;
1664
+ canvas.height = targetHeight;
1665
+ const context = canvas.getContext('2d');
1666
+ context.drawImage(image, 0, 0, targetWidth, targetHeight);
1667
+ context.canvas.toBlob(newImageBlob => {
1668
+ const compressedFile = new File([newImageBlob], file.name, {
1669
+ type: file.type
1670
+ });
1671
+
1672
+ if (createCustomParams) {
1673
+ logger.info('Channel: Creating params using onBeforeSendFileMessage', onBeforeSendFileMessage);
1674
+ }
1675
+
1676
+ const params = createCustomParams ? onBeforeSendFileMessage(compressedFile, quoteMessage) : createParamsDefault(compressedFile);
1677
+ logger.info('Channel: Uploading file message start!', params);
1678
+ currentGroupChannel.sendFileMessage(params).onPending(pendingMessage => {
1679
+ pubSub.publish(SEND_MESSAGE_START, {
1680
+ /* pubSub is used instead of messagesDispatcher
1681
+ to avoid redundantly calling `messageActionTypes.SEND_MESSAGEGE_START` */
1682
+ message: _objectSpread2(_objectSpread2({}, pendingMessage), {}, {
1683
+ url: URL.createObjectURL(compressedFile),
1684
+ // pending thumbnail message seems to be failed
1685
+ requestState: 'pending'
1686
+ }),
1687
+ channel: currentGroupChannel
1688
+ });
1689
+ setTimeout(() => scrollIntoLast(0, scrollRef), 1000);
1690
+ }).onFailed((err, failedMessage) => {
1691
+ logger.error('Channel: Sending file message failed!', {
1692
+ failedMessage,
1693
+ err
1694
+ }); // eslint-disable-next-line no-param-reassign
1695
+
1696
+ failedMessage.localUrl = URL.createObjectURL(compressedFile); // eslint-disable-next-line no-param-reassign
1697
+
1698
+ failedMessage.file = compressedFile;
1699
+ messagesDispatcher({
1700
+ type: SEND_MESSAGEGE_FAILURE,
1701
+ payload: failedMessage
1702
+ });
1703
+ }).onSucceeded(succeededMessage => {
1704
+ logger.info('Channel: Sending file message success!', succeededMessage);
1705
+ messagesDispatcher({
1706
+ type: SEND_MESSAGEGE_SUCESS,
1707
+ payload: succeededMessage
1708
+ });
1709
+ });
1710
+ }, file.type, compressionRate);
1711
+ };
1712
+ } catch (error) {
1713
+ logger.error('Channel: Sending file message failed!', error);
1714
+ }
1715
+ } else {
1716
+ // Not using image compression
1717
+ if (createCustomParams) {
1718
+ logger.info('Channel: creating params using onBeforeSendFileMessage', onBeforeSendFileMessage);
1719
+ }
1720
+
1721
+ const params = onBeforeSendFileMessage ? onBeforeSendFileMessage(file, quoteMessage) : createParamsDefault(file);
1722
+ logger.info('Channel: Uploading file message start!', params);
1723
+ currentGroupChannel.sendFileMessage(params).onPending(pendingMsg => {
1724
+ pubSub.publish(SEND_MESSAGE_START, {
1725
+ /* pubSub is used instead of messagesDispatcher
1726
+ to avoid redundantly calling `messageActionTypes.SEND_MESSAGEGE_START` */
1727
+ message: _objectSpread2(_objectSpread2({}, pendingMsg), {}, {
1728
+ url: URL.createObjectURL(file),
1729
+ // pending thumbnail message seems to be failed
1730
+ requestState: 'pending'
1731
+ }),
1732
+ channel: currentGroupChannel
1733
+ });
1734
+ setTimeout(() => scrollIntoLast(0, scrollRef), 1000);
1735
+ }).onFailed((error, message) => {
1736
+ logger.error('Channel: Sending file message failed!', {
1737
+ message,
1738
+ error
1739
+ }); // eslint-disable-next-line no-param-reassign
1740
+
1741
+ message.localUrl = URL.createObjectURL(file); // eslint-disable-next-line no-param-reassign
1742
+
1743
+ message.file = file;
1744
+ messagesDispatcher({
1745
+ type: SEND_MESSAGEGE_FAILURE,
1746
+ payload: message
1747
+ });
1748
+ }).onSucceeded(message => {
1749
+ logger.info('Channel: Sending message success!', message);
1750
+ messagesDispatcher({
1751
+ type: SEND_MESSAGEGE_SUCESS,
1752
+ payload: message
1753
+ });
1754
+ });
1755
+ }
1756
+ }, [currentGroupChannel, onBeforeSendFileMessage, imageCompression]);
1757
+ return [sendMessage];
1758
+ }
1759
+
1760
+ function useMemoizedEmojiListItems(_ref, _ref2) {
1761
+ let {
1762
+ emojiContainer,
1763
+ toggleReaction
1764
+ } = _ref;
1765
+ let {
1766
+ isReactionEnabled,
1767
+ logger,
1768
+ userId,
1769
+ emojiAllList
1770
+ } = _ref2;
1771
+
1772
+ /* eslint-disable react/prop-types */
1773
+ return useMemo(() => _ref3 => {
1774
+ let {
1775
+ parentRef,
1776
+ parentContainRef,
1777
+ message,
1778
+ closeDropdown,
1779
+ spaceFromTrigger = {}
1780
+ } = _ref3;
1781
+
1782
+ if (!isReactionEnabled || !(parentRef || parentContainRef || message || closeDropdown)) {
1783
+ logger.warning('Channel: Invalid Params in memoizedEmojiListItems');
1784
+ return null;
1785
+ }
1786
+
1787
+ return /*#__PURE__*/React__default.createElement(EmojiListItems, {
1788
+ parentRef: parentRef,
1789
+ parentContainRef: parentContainRef,
1790
+ closeDropdown: closeDropdown,
1791
+ spaceFromTrigger: spaceFromTrigger
1792
+ }, emojiAllList.map(emoji => {
1793
+ const reactedReaction = message.reactions.filter(reaction => reaction.key === emoji.key)[0];
1794
+ const isReacted = reactedReaction ? !(reactedReaction.userIds.indexOf(userId) < 0) : false;
1795
+ return /*#__PURE__*/React__default.createElement(ReactionButton, {
1796
+ key: emoji.key,
1797
+ width: "36px",
1798
+ height: "36px",
1799
+ selected: isReacted,
1800
+ onClick: () => {
1801
+ closeDropdown();
1802
+ toggleReaction(message, emoji.key, isReacted);
1803
+ }
1804
+ }, /*#__PURE__*/React__default.createElement(ImageRenderer, {
1805
+ url: emoji.url,
1806
+ width: "28px",
1807
+ height: "28px",
1808
+ defaultComponent: /*#__PURE__*/React__default.createElement(Icon, {
1809
+ width: "28px",
1810
+ height: "28px",
1811
+ type: IconTypes.QUESTION
1812
+ })
1813
+ }));
1814
+ }));
1815
+ }, [emojiContainer, toggleReaction]);
1816
+ }
1817
+
1818
+ function useToggleReactionCallback(_ref, _ref2) {
1819
+ let {
1820
+ currentGroupChannel
1821
+ } = _ref;
1822
+ let {
1823
+ logger
1824
+ } = _ref2;
1825
+ return useCallback((message, key, isReacted) => {
1826
+ if (isReacted) {
1827
+ currentGroupChannel.deleteReaction(message, key).then(res => {
1828
+ logger.info('Delete reaction success', res);
1829
+ }).catch(err => {
1830
+ logger.warning('Delete reaction failed', err);
1831
+ });
1832
+ return;
1833
+ }
1834
+
1835
+ currentGroupChannel.addReaction(message, key).then(res => {
1836
+ logger.info('Add reaction success', res);
1837
+ }).catch(err => {
1838
+ logger.warning('Add reaction failed', err);
1839
+ });
1840
+ }, [currentGroupChannel]);
1841
+ }
1842
+
1843
+ function useScrollToMessage(_a, _b) {
1844
+ var setInitialTimeStamp = _a.setInitialTimeStamp,
1845
+ setAnimatedMessageId = _a.setAnimatedMessageId,
1846
+ allMessages = _a.allMessages;
1847
+ var logger = _b.logger;
1848
+ return useCallback(function (createdAt, messageId) {
1849
+ var isPresent = allMessages.find(function (m) {
1850
+ return m.messageId === messageId;
1851
+ });
1852
+ setAnimatedMessageId(null);
1853
+ setTimeout(function () {
1854
+ if (isPresent) {
1855
+ logger.info('Channel: scroll to message - message is present');
1856
+ setAnimatedMessageId(messageId);
1857
+ } else {
1858
+ logger.info('Channel: scroll to message - fetching older messages');
1859
+ setInitialTimeStamp(null);
1860
+ setInitialTimeStamp(createdAt);
1861
+ setAnimatedMessageId(messageId);
1862
+ }
1863
+ });
1864
+ }, [setInitialTimeStamp, setAnimatedMessageId, allMessages]);
1865
+ }
1866
+
1867
+ var useSendVoiceMessageCallback = function (_a, _b) {
1868
+ var currentGroupChannel = _a.currentGroupChannel,
1869
+ onBeforeSendVoiceMessage = _a.onBeforeSendVoiceMessage;
1870
+ var logger = _b.logger,
1871
+ pubSub = _b.pubSub,
1872
+ scrollRef = _b.scrollRef,
1873
+ messagesDispatcher = _b.messagesDispatcher;
1874
+ var sendMessage = useCallback(function (file, duration, quoteMessage) {
1875
+ var messageParams = onBeforeSendVoiceMessage && typeof onBeforeSendVoiceMessage === 'function' ? onBeforeSendVoiceMessage(file, quoteMessage) : {
1876
+ file: file,
1877
+ fileName: VOICE_MESSAGE_FILE_NAME,
1878
+ mimeType: VOICE_MESSAGE_MIME_TYPE,
1879
+ metaArrays: [new MessageMetaArray({
1880
+ key: META_ARRAY_VOICE_DURATION_KEY,
1881
+ value: ["".concat(duration)]
1882
+ }), new MessageMetaArray({
1883
+ key: META_ARRAY_MESSAGE_TYPE_KEY,
1884
+ value: [META_ARRAY_MESSAGE_TYPE_VALUE__VOICE]
1885
+ })]
1886
+ };
1887
+
1888
+ if (quoteMessage) {
1889
+ messageParams.isReplyToChannel = true;
1890
+ messageParams.parentMessageId = quoteMessage.messageId;
1891
+ }
1892
+
1893
+ currentGroupChannel.sendFileMessage(messageParams).onPending(function (pendingMessage) {
1894
+ pubSub.publish(SEND_MESSAGE_START, {
1895
+ /* pubSub is used instead of messagesDispatcher
1896
+ to avoid redundantly calling `messageActionTypes.SEND_MESSAGEGE_START` */
1897
+ message: pendingMessage,
1898
+ channel: currentGroupChannel
1899
+ });
1900
+ setTimeout(function () {
1901
+ return scrollIntoLast(0, scrollRef);
1902
+ }, 1000);
1903
+ }).onFailed(function (err, failedMessage) {
1904
+ logger.error('Channel: Sending voice message failed!', {
1905
+ failedMessage: failedMessage,
1906
+ err: err
1907
+ });
1908
+ messagesDispatcher({
1909
+ type: SEND_MESSAGEGE_FAILURE,
1910
+ payload: failedMessage
1911
+ });
1912
+ }).onSucceeded(function (succeededMessage) {
1913
+ logger.info('Channel: Sending voice message success!', succeededMessage);
1914
+ messagesDispatcher({
1915
+ type: SEND_MESSAGEGE_SUCESS,
1916
+ payload: succeededMessage
1917
+ });
1918
+ });
1919
+ }, [currentGroupChannel, onBeforeSendVoiceMessage]);
1920
+ return [sendMessage];
1921
+ };
1922
+
1923
+ var ThreadReplySelectType;
1924
+
1925
+ (function (ThreadReplySelectType) {
1926
+ ThreadReplySelectType["PARENT"] = "PARENT";
1927
+ ThreadReplySelectType["THREAD"] = "THREAD";
1928
+ })(ThreadReplySelectType || (ThreadReplySelectType = {}));
1929
+
1930
+ var ChannelContext = /*#__PURE__*/React__default.createContext(undefined);
1931
+
1932
+ var ChannelProvider = function (props) {
1933
+ var _a, _b, _c, _d;
1934
+
1935
+ var channelUrl = props.channelUrl,
1936
+ children = props.children,
1937
+ isReactionEnabled = props.isReactionEnabled,
1938
+ _e = props.isMessageGroupingEnabled,
1939
+ isMessageGroupingEnabled = _e === void 0 ? true : _e,
1940
+ showSearchIcon = props.showSearchIcon,
1941
+ animatedMessage = props.animatedMessage,
1942
+ highlightedMessage = props.highlightedMessage,
1943
+ startingPoint = props.startingPoint,
1944
+ onBeforeSendUserMessage = props.onBeforeSendUserMessage,
1945
+ onBeforeSendFileMessage = props.onBeforeSendFileMessage,
1946
+ onBeforeUpdateUserMessage = props.onBeforeUpdateUserMessage,
1947
+ onBeforeSendVoiceMessage = props.onBeforeSendVoiceMessage,
1948
+ onChatHeaderActionClick = props.onChatHeaderActionClick,
1949
+ onSearchClick = props.onSearchClick,
1950
+ onBackClick = props.onBackClick,
1951
+ replyType = props.replyType,
1952
+ _f = props.threadReplySelectType,
1953
+ threadReplySelectType = _f === void 0 ? ThreadReplySelectType.THREAD : _f,
1954
+ queries = props.queries,
1955
+ _g = props.disableMarkAsRead,
1956
+ disableMarkAsRead = _g === void 0 ? false : _g,
1957
+ onReplyInThread = props.onReplyInThread,
1958
+ onQuoteMessageClick = props.onQuoteMessageClick,
1959
+ onMessageAnimated = props.onMessageAnimated,
1960
+ onMessageHighlighted = props.onMessageHighlighted;
1961
+ var globalStore = useSendbirdStateContext();
1962
+ var config = globalStore.config;
1963
+ var pubSub = config.pubSub,
1964
+ logger = config.logger,
1965
+ userId = config.userId,
1966
+ isOnline = config.isOnline,
1967
+ imageCompression = config.imageCompression,
1968
+ isMentionEnabled = config.isMentionEnabled,
1969
+ isVoiceMessageEnabled = config.isVoiceMessageEnabled,
1970
+ onUserProfileMessage = config.onUserProfileMessage;
1971
+ var sdk = (_b = (_a = globalStore === null || globalStore === void 0 ? void 0 : globalStore.stores) === null || _a === void 0 ? void 0 : _a.sdkStore) === null || _b === void 0 ? void 0 : _b.sdk;
1972
+ var sdkInit = (_d = (_c = globalStore === null || globalStore === void 0 ? void 0 : globalStore.stores) === null || _c === void 0 ? void 0 : _c.sdkStore) === null || _d === void 0 ? void 0 : _d.initialized;
1973
+
1974
+ var _h = useState(startingPoint),
1975
+ initialTimeStamp = _h[0],
1976
+ setInitialTimeStamp = _h[1];
1977
+
1978
+ useEffect(function () {
1979
+ setInitialTimeStamp(startingPoint);
1980
+ }, [startingPoint, channelUrl]);
1981
+
1982
+ var _j = useState(0),
1983
+ animatedMessageId = _j[0],
1984
+ setAnimatedMessageId = _j[1];
1985
+
1986
+ var _k = useState(highlightedMessage),
1987
+ highLightedMessageId = _k[0],
1988
+ setHighLightedMessageId = _k[1];
1989
+
1990
+ useEffect(function () {
1991
+ setHighLightedMessageId(highlightedMessage);
1992
+ }, [highlightedMessage]);
1993
+ var userFilledMessageListQuery = queries === null || queries === void 0 ? void 0 : queries.messageListParams;
1994
+
1995
+ var _l = useState(null),
1996
+ quoteMessage = _l[0],
1997
+ setQuoteMessage = _l[1];
1998
+
1999
+ var _m = useReducer(reducer, messagesInitialState),
2000
+ messagesStore = _m[0],
2001
+ messagesDispatcher = _m[1];
2002
+
2003
+ var scrollRef = useRef(null);
2004
+ var allMessages = messagesStore.allMessages,
2005
+ loading = messagesStore.loading,
2006
+ initialized = messagesStore.initialized,
2007
+ unreadSince = messagesStore.unreadSince,
2008
+ isInvalid = messagesStore.isInvalid,
2009
+ currentGroupChannel = messagesStore.currentGroupChannel,
2010
+ hasMorePrev = messagesStore.hasMorePrev,
2011
+ oldestMessageTimeStamp = messagesStore.oldestMessageTimeStamp,
2012
+ hasMoreNext = messagesStore.hasMoreNext,
2013
+ latestMessageTimeStamp = messagesStore.latestMessageTimeStamp,
2014
+ emojiContainer = messagesStore.emojiContainer,
2015
+ readStatus = messagesStore.readStatus;
2016
+ var isSuper = (currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.isSuper) || false;
2017
+ var isBroadcast = (currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.isBroadcast) || false;
2018
+ var appInfo = sdk.appInfo;
2019
+ var usingReaction = (appInfo === null || appInfo === void 0 ? void 0 : appInfo.useReaction) && !isBroadcast && !isSuper && ((config === null || config === void 0 ? void 0 : config.isReactionEnabled) || isReactionEnabled);
2020
+ var emojiAllMap = useMemo(function () {
2021
+ return usingReaction ? getAllEmojisMapFromEmojiContainer(emojiContainer) : new Map();
2022
+ }, [emojiContainer]);
2023
+ var emojiAllList = useMemo(function () {
2024
+ return usingReaction ? getAllEmojisFromEmojiContainer(emojiContainer) : [];
2025
+ }, [emojiContainer]);
2026
+ var nicknamesMap = useMemo(function () {
2027
+ return usingReaction && currentGroupChannel ? getNicknamesMapFromMembers(currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.members) : new Map();
2028
+ }, [currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.members]); // Animate message
2029
+
2030
+ useEffect(function () {
2031
+ if (animatedMessage) {
2032
+ setAnimatedMessageId(animatedMessage);
2033
+ }
2034
+ }, [animatedMessage]); // Scrollup is default scroll for channel
2035
+
2036
+ var onScrollCallback = useScrollCallback({
2037
+ currentGroupChannel: currentGroupChannel,
2038
+ oldestMessageTimeStamp: oldestMessageTimeStamp,
2039
+ userFilledMessageListQuery: userFilledMessageListQuery,
2040
+ replyType: replyType,
2041
+ isVoiceMessageEnabled: isVoiceMessageEnabled
2042
+ }, {
2043
+ hasMorePrev: hasMorePrev,
2044
+ logger: logger,
2045
+ messagesDispatcher: messagesDispatcher,
2046
+ sdk: sdk
2047
+ });
2048
+ var scrollToMessage = useScrollToMessage({
2049
+ setInitialTimeStamp: setInitialTimeStamp,
2050
+ setAnimatedMessageId: setAnimatedMessageId,
2051
+ allMessages: allMessages
2052
+ }, {
2053
+ logger: logger
2054
+ }); // onScrollDownCallback is added for navigation to different timestamps on messageSearch
2055
+ // hasMorePrev, onScrollCallback -> scroll up(default behavior)
2056
+ // hasMoreNext, onScrollDownCallback -> scroll down
2057
+
2058
+ var onScrollDownCallback = useScrollDownCallback({
2059
+ currentGroupChannel: currentGroupChannel,
2060
+ latestMessageTimeStamp: latestMessageTimeStamp,
2061
+ userFilledMessageListQuery: userFilledMessageListQuery,
2062
+ hasMoreNext: hasMoreNext,
2063
+ replyType: replyType,
2064
+ isVoiceMessageEnabled: isVoiceMessageEnabled
2065
+ }, {
2066
+ logger: logger,
2067
+ messagesDispatcher: messagesDispatcher,
2068
+ sdk: sdk
2069
+ });
2070
+ var toggleReaction = useToggleReactionCallback({
2071
+ currentGroupChannel: currentGroupChannel
2072
+ }, {
2073
+ logger: logger
2074
+ });
2075
+ var memoizedEmojiListItems = useMemoizedEmojiListItems({
2076
+ emojiContainer: emojiContainer,
2077
+ toggleReaction: toggleReaction
2078
+ }, {
2079
+ isReactionEnabled: usingReaction,
2080
+ logger: logger,
2081
+ userId: userId,
2082
+ emojiAllList: emojiAllList
2083
+ }); // to create message-datasource
2084
+ // this hook sets currentGroupChannel asynchronously
2085
+
2086
+ useSetChannel({
2087
+ channelUrl: channelUrl,
2088
+ sdkInit: sdkInit,
2089
+ disableMarkAsRead: disableMarkAsRead
2090
+ }, {
2091
+ messagesDispatcher: messagesDispatcher,
2092
+ sdk: sdk,
2093
+ logger: logger
2094
+ }); // to set quote message as null
2095
+
2096
+ useEffect(function () {
2097
+ setQuoteMessage(null);
2098
+ }, [channelUrl]); // Hook to handle ChannelEvents and send values to useReducer using messagesDispatcher
2099
+
2100
+ useHandleChannelEvents({
2101
+ currentGroupChannel: currentGroupChannel,
2102
+ sdkInit: sdkInit,
2103
+ currentUserId: userId,
2104
+ disableMarkAsRead: disableMarkAsRead
2105
+ }, {
2106
+ messagesDispatcher: messagesDispatcher,
2107
+ sdk: sdk,
2108
+ logger: logger,
2109
+ scrollRef: scrollRef,
2110
+ setQuoteMessage: setQuoteMessage
2111
+ }); // hook that fetches messages when channel changes
2112
+ // to be clear here useGetChannel sets currentGroupChannel
2113
+ // and useInitialMessagesFetch executes when currentGroupChannel changes
2114
+ // p.s This one executes on initialTimeStamp change too
2115
+
2116
+ useInitialMessagesFetch({
2117
+ currentGroupChannel: currentGroupChannel,
2118
+ userFilledMessageListQuery: userFilledMessageListQuery,
2119
+ initialTimeStamp: initialTimeStamp,
2120
+ latestMessageTimeStamp: latestMessageTimeStamp,
2121
+ replyType: replyType,
2122
+ isVoiceMessageEnabled: isVoiceMessageEnabled
2123
+ }, {
2124
+ logger: logger,
2125
+ scrollRef: scrollRef,
2126
+ messagesDispatcher: messagesDispatcher
2127
+ }); // handles API calls from withSendbird
2128
+
2129
+ useEffect(function () {
2130
+ var subscriber = pubSubHandler({
2131
+ channelUrl: channelUrl,
2132
+ pubSub: pubSub,
2133
+ dispatcher: messagesDispatcher,
2134
+ scrollRef: scrollRef
2135
+ });
2136
+ return function () {
2137
+ pubSubHandleRemover(subscriber);
2138
+ };
2139
+ }, [channelUrl, sdkInit]); // handling connection breaks
2140
+
2141
+ useHandleReconnect({
2142
+ isOnline: isOnline,
2143
+ replyType: replyType,
2144
+ disableMarkAsRead: disableMarkAsRead
2145
+ }, {
2146
+ logger: logger,
2147
+ sdk: sdk,
2148
+ scrollRef: scrollRef,
2149
+ currentGroupChannel: currentGroupChannel,
2150
+ messagesDispatcher: messagesDispatcher,
2151
+ userFilledMessageListQuery: userFilledMessageListQuery
2152
+ }); // callbacks for Message CURD actions
2153
+
2154
+ var deleteMessage = useDeleteMessageCallback({
2155
+ currentGroupChannel: currentGroupChannel,
2156
+ messagesDispatcher: messagesDispatcher
2157
+ }, {
2158
+ logger: logger
2159
+ });
2160
+ var updateMessage = useUpdateMessageCallback({
2161
+ currentGroupChannel: currentGroupChannel,
2162
+ messagesDispatcher: messagesDispatcher,
2163
+ onBeforeUpdateUserMessage: onBeforeUpdateUserMessage,
2164
+ isMentionEnabled: isMentionEnabled
2165
+ }, {
2166
+ logger: logger,
2167
+ pubSub: pubSub
2168
+ });
2169
+ var resendMessage = useResendMessageCallback({
2170
+ currentGroupChannel: currentGroupChannel,
2171
+ messagesDispatcher: messagesDispatcher
2172
+ }, {
2173
+ logger: logger
2174
+ });
2175
+
2176
+ var _o = useSendMessageCallback({
2177
+ currentGroupChannel: currentGroupChannel,
2178
+ onBeforeSendUserMessage: onBeforeSendUserMessage,
2179
+ isMentionEnabled: isMentionEnabled
2180
+ }, {
2181
+ logger: logger,
2182
+ pubSub: pubSub,
2183
+ scrollRef: scrollRef,
2184
+ messagesDispatcher: messagesDispatcher
2185
+ }),
2186
+ messageInputRef = _o[0],
2187
+ sendMessage = _o[1];
2188
+
2189
+ var sendFileMessage = useSendFileMessageCallback({
2190
+ currentGroupChannel: currentGroupChannel,
2191
+ onBeforeSendFileMessage: onBeforeSendFileMessage,
2192
+ imageCompression: imageCompression
2193
+ }, {
2194
+ logger: logger,
2195
+ pubSub: pubSub,
2196
+ scrollRef: scrollRef,
2197
+ messagesDispatcher: messagesDispatcher
2198
+ })[0];
2199
+ var sendVoiceMessage = useSendVoiceMessageCallback({
2200
+ currentGroupChannel: currentGroupChannel,
2201
+ onBeforeSendVoiceMessage: onBeforeSendVoiceMessage
2202
+ }, {
2203
+ logger: logger,
2204
+ pubSub: pubSub,
2205
+ scrollRef: scrollRef,
2206
+ messagesDispatcher: messagesDispatcher
2207
+ })[0];
2208
+ return /*#__PURE__*/React__default.createElement(ChannelContext.Provider, {
2209
+ value: {
2210
+ // props
2211
+ channelUrl: channelUrl,
2212
+ isReactionEnabled: usingReaction,
2213
+ isMessageGroupingEnabled: isMessageGroupingEnabled,
2214
+ showSearchIcon: showSearchIcon,
2215
+ highlightedMessage: highlightedMessage,
2216
+ startingPoint: startingPoint,
2217
+ onBeforeSendUserMessage: onBeforeSendUserMessage,
2218
+ onBeforeSendFileMessage: onBeforeSendFileMessage,
2219
+ onBeforeUpdateUserMessage: onBeforeUpdateUserMessage,
2220
+ onChatHeaderActionClick: onChatHeaderActionClick,
2221
+ onSearchClick: onSearchClick,
2222
+ onBackClick: onBackClick,
2223
+ replyType: replyType,
2224
+ threadReplySelectType: threadReplySelectType,
2225
+ queries: queries,
2226
+ disableMarkAsRead: disableMarkAsRead,
2227
+ onReplyInThread: onReplyInThread,
2228
+ onQuoteMessageClick: onQuoteMessageClick,
2229
+ onMessageAnimated: onMessageAnimated,
2230
+ onMessageHighlighted: onMessageHighlighted,
2231
+ // messagesStore
2232
+ allMessages: allMessages,
2233
+ loading: loading,
2234
+ initialized: initialized,
2235
+ unreadSince: unreadSince,
2236
+ isInvalid: isInvalid,
2237
+ currentGroupChannel: currentGroupChannel,
2238
+ hasMorePrev: hasMorePrev,
2239
+ hasMoreNext: hasMoreNext,
2240
+ oldestMessageTimeStamp: oldestMessageTimeStamp,
2241
+ latestMessageTimeStamp: latestMessageTimeStamp,
2242
+ emojiContainer: emojiContainer,
2243
+ readStatus: readStatus,
2244
+ // utils
2245
+ scrollToMessage: scrollToMessage,
2246
+ quoteMessage: quoteMessage,
2247
+ setQuoteMessage: setQuoteMessage,
2248
+ deleteMessage: deleteMessage,
2249
+ updateMessage: updateMessage,
2250
+ resendMessage: resendMessage,
2251
+ messageInputRef: messageInputRef,
2252
+ sendMessage: sendMessage,
2253
+ sendFileMessage: sendFileMessage,
2254
+ sendVoiceMessage: sendVoiceMessage,
2255
+ initialTimeStamp: initialTimeStamp,
2256
+ messageActionTypes: messageActionTypes,
2257
+ messagesDispatcher: messagesDispatcher,
2258
+ setInitialTimeStamp: setInitialTimeStamp,
2259
+ setAnimatedMessageId: setAnimatedMessageId,
2260
+ setHighLightedMessageId: setHighLightedMessageId,
2261
+ animatedMessageId: animatedMessageId,
2262
+ highLightedMessageId: highLightedMessageId,
2263
+ nicknamesMap: nicknamesMap,
2264
+ emojiAllMap: emojiAllMap,
2265
+ onScrollCallback: onScrollCallback,
2266
+ onScrollDownCallback: onScrollDownCallback,
2267
+ memoizedEmojiListItems: memoizedEmojiListItems,
2268
+ scrollRef: scrollRef,
2269
+ toggleReaction: toggleReaction
2270
+ }
2271
+ }, /*#__PURE__*/React__default.createElement(UserProfileProvider, {
2272
+ disableUserProfile: props === null || props === void 0 ? void 0 : props.disableUserProfile,
2273
+ renderUserProfile: props === null || props === void 0 ? void 0 : props.renderUserProfile,
2274
+ onUserProfileMessage: onUserProfileMessage
2275
+ }, children));
2276
+ };
2277
+
2278
+ var useChannelContext = function () {
2279
+ return React__default.useContext(ChannelContext);
2280
+ };
2281
+
2282
+ export { ChannelProvider as C, MARK_AS_READ as M, ThreadReplySelectType as T, isDisabledBecauseFrozen as a, isDisabledBecauseMuted as b, compareMessagesForGrouping as c, isOperator as d, isAboutSame as i, useChannelContext as u };
2283
+ //# sourceMappingURL=ChannelProvider-def8e42f.js.map