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

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 (1252) hide show
  1. package/App.js +664 -0
  2. package/CHANGELOG.md +1 -1
  3. package/Channel/components/ChannelHeader.js +111 -0
  4. package/Channel/components/ChannelUI.js +234 -0
  5. package/Channel/components/FileViewer.js +155 -0
  6. package/Channel/components/FrozenNotification.js +19 -0
  7. package/Channel/components/Message.js +406 -0
  8. package/Channel/components/MessageInput.js +265 -0
  9. package/Channel/components/MessageList.js +260 -0
  10. package/Channel/components/RemoveMessageModal.js +60 -0
  11. package/Channel/components/SuggestedMentionList.js +314 -0
  12. package/Channel/components/TypingIndicator.js +106 -0
  13. package/Channel/components/UnreadCount.js +40 -0
  14. package/Channel/context.js +28 -0
  15. package/Channel.js +143 -0
  16. package/ChannelList/components/AddChannel.js +76 -0
  17. package/ChannelList/components/ChannelListHeader.js +72 -0
  18. package/ChannelList/components/ChannelListUI.js +268 -0
  19. package/ChannelList/components/ChannelPreview.js +193 -0
  20. package/ChannelList/components/ChannelPreviewAction.js +133 -0
  21. package/ChannelList/context.js +15 -0
  22. package/ChannelList.js +97 -0
  23. package/ChannelListProvider-0181b8e8.js +1074 -0
  24. package/ChannelListProvider-0181b8e8.js.map +1 -0
  25. package/ChannelProvider-07627f89.js +2283 -0
  26. package/ChannelProvider-07627f89.js.map +1 -0
  27. package/ChannelSettings/components/ChannelProfile.js +102 -0
  28. package/ChannelSettings/components/ChannelSettingsUI.js +155 -0
  29. package/ChannelSettings/components/EditDetailsModal.js +157 -0
  30. package/ChannelSettings/components/LeaveChannel.js +101 -0
  31. package/ChannelSettings/components/ModerationPanel.js +871 -0
  32. package/ChannelSettings/components/UserListItem.js +108 -0
  33. package/ChannelSettings/components/UserPanel.js +84 -0
  34. package/ChannelSettings/context.js +99 -0
  35. package/ChannelSettings.js +76 -0
  36. package/CreateChannel/components/CreateChannelUI.js +58 -0
  37. package/CreateChannel/components/InviteUsers.js +218 -0
  38. package/CreateChannel/components/SelectChannelType.js +134 -0
  39. package/CreateChannel/context.js +9 -0
  40. package/CreateChannel.js +57 -0
  41. package/CreateChannelProvider-ee6d8250.js +55 -0
  42. package/CreateChannelProvider-ee6d8250.js.map +1 -0
  43. package/CreateOpenChannel/components/CreateOpenChannelUI.js +130 -0
  44. package/CreateOpenChannel/context.js +63 -0
  45. package/CreateOpenChannel.js +46 -0
  46. package/EditUserProfile/components/EditUserProfileUI.js +27 -0
  47. package/EditUserProfile.js +40 -0
  48. package/LocalizationContext-4daeeb0b.js +22 -0
  49. package/LocalizationContext-4daeeb0b.js.map +1 -0
  50. package/MediaQueryContext-302dec11.js +90 -0
  51. package/MediaQueryContext-302dec11.js.map +1 -0
  52. package/MemberList-523cb5d1.js +445 -0
  53. package/MemberList-523cb5d1.js.map +1 -0
  54. package/MessageSearch/components/MessageSearchUI.js +153 -0
  55. package/MessageSearch/context.js +396 -0
  56. package/MessageSearch.js +148 -0
  57. package/OpenChannel/components/FrozenChannelNotification.js +19 -0
  58. package/OpenChannel/components/OpenChannelHeader.js +90 -0
  59. package/OpenChannel/components/OpenChannelInput.js +62 -0
  60. package/OpenChannel/components/OpenChannelMessage.js +306 -0
  61. package/OpenChannel/components/OpenChannelMessageList.js +167 -0
  62. package/OpenChannel/components/OpenChannelUI.js +118 -0
  63. package/OpenChannel/context.js +16 -0
  64. package/OpenChannel.js +88 -0
  65. package/OpenChannelList/components/OpenChannelListUI.js +197 -0
  66. package/OpenChannelList/components/OpenChannelPreview.js +67 -0
  67. package/OpenChannelList/context.js +8 -0
  68. package/OpenChannelList.js +59 -0
  69. package/OpenChannelListProvider-b4bbd1ca.js +434 -0
  70. package/OpenChannelListProvider-b4bbd1ca.js.map +1 -0
  71. package/OpenChannelProvider-66965e8b.js +2000 -0
  72. package/OpenChannelProvider-66965e8b.js.map +1 -0
  73. package/OpenChannelSettings/components/EditDetailsModal.js +148 -0
  74. package/OpenChannelSettings/components/OpenChannelProfile.js +83 -0
  75. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +126 -0
  76. package/OpenChannelSettings/components/OperatorUI.js +912 -0
  77. package/OpenChannelSettings/components/ParticipantUI.js +37 -0
  78. package/OpenChannelSettings/context.js +145 -0
  79. package/OpenChannelSettings.js +67 -0
  80. package/RemoveMessageModal-8b30f572.js +31 -0
  81. package/RemoveMessageModal-8b30f572.js.map +1 -0
  82. package/SendbirdProvider.js +822 -0
  83. package/Thread/components/ParentMessageInfo.js +370 -0
  84. package/Thread/components/ParentMessageInfoItem.js +214 -0
  85. package/Thread/components/ThreadHeader.js +61 -0
  86. package/Thread/components/ThreadList.js +150 -0
  87. package/Thread/components/ThreadListItem.js +539 -0
  88. package/Thread/components/ThreadMessageInput.js +243 -0
  89. package/Thread/components/ThreadUI.js +334 -0
  90. package/Thread/context.js +19 -0
  91. package/Thread.js +132 -0
  92. package/ThreadProvider-522102d8.js +1724 -0
  93. package/ThreadProvider-522102d8.js.map +1 -0
  94. package/UserProfileContext-09f67c7e.js +44 -0
  95. package/UserProfileContext-09f67c7e.js.map +1 -0
  96. package/VoiceMessageInputWrapper-4a7dd349.js +173 -0
  97. package/VoiceMessageInputWrapper-4a7dd349.js.map +1 -0
  98. package/VoicePlayer/context.js +5 -0
  99. package/VoicePlayer/useVoicePlayer.js +87 -0
  100. package/VoiceRecorder/context.js +243 -0
  101. package/VoiceRecorder/context.js.map +1 -0
  102. package/VoiceRecorder/useVoiceRecorder.js +117 -0
  103. package/_rollupPluginBabelHelpers-b78f44f0.js +60 -0
  104. package/_rollupPluginBabelHelpers-b78f44f0.js.map +1 -0
  105. package/actionTypes-3685fd77.js +6 -0
  106. package/actionTypes-3685fd77.js.map +1 -0
  107. package/cjs/App.js +671 -0
  108. package/cjs/Channel/components/ChannelHeader.js +117 -0
  109. package/cjs/Channel/components/ChannelUI.js +240 -0
  110. package/cjs/Channel/components/FileViewer.js +164 -0
  111. package/cjs/Channel/components/FrozenNotification.js +25 -0
  112. package/cjs/Channel/components/Message.js +412 -0
  113. package/cjs/Channel/components/MessageInput.js +271 -0
  114. package/cjs/Channel/components/MessageList.js +266 -0
  115. package/cjs/Channel/components/RemoveMessageModal.js +66 -0
  116. package/cjs/Channel/components/SuggestedMentionList.js +320 -0
  117. package/cjs/Channel/components/TypingIndicator.js +115 -0
  118. package/cjs/Channel/components/UnreadCount.js +46 -0
  119. package/cjs/Channel/context.js +41 -0
  120. package/cjs/Channel.js +149 -0
  121. package/cjs/ChannelList/components/AddChannel.js +85 -0
  122. package/cjs/ChannelList/components/ChannelListHeader.js +78 -0
  123. package/cjs/ChannelList/components/ChannelListUI.js +274 -0
  124. package/cjs/ChannelList/components/ChannelPreview.js +199 -0
  125. package/cjs/ChannelList/components/ChannelPreviewAction.js +140 -0
  126. package/cjs/ChannelList/context.js +24 -0
  127. package/cjs/ChannelList.js +103 -0
  128. package/cjs/ChannelListProvider-db1034ff.js +1086 -0
  129. package/cjs/ChannelListProvider-db1034ff.js.map +1 -0
  130. package/cjs/ChannelProvider-90eaf8d4.js +2296 -0
  131. package/cjs/ChannelProvider-90eaf8d4.js.map +1 -0
  132. package/cjs/ChannelSettings/components/ChannelProfile.js +108 -0
  133. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +161 -0
  134. package/cjs/ChannelSettings/components/EditDetailsModal.js +163 -0
  135. package/cjs/ChannelSettings/components/LeaveChannel.js +107 -0
  136. package/cjs/ChannelSettings/components/ModerationPanel.js +877 -0
  137. package/cjs/ChannelSettings/components/UserListItem.js +114 -0
  138. package/cjs/ChannelSettings/components/UserPanel.js +90 -0
  139. package/cjs/ChannelSettings/context.js +108 -0
  140. package/cjs/ChannelSettings.js +82 -0
  141. package/cjs/CreateChannel/components/CreateChannelUI.js +64 -0
  142. package/cjs/CreateChannel/components/InviteUsers.js +224 -0
  143. package/cjs/CreateChannel/components/SelectChannelType.js +140 -0
  144. package/cjs/CreateChannel/context.js +18 -0
  145. package/cjs/CreateChannel.js +63 -0
  146. package/cjs/CreateChannelProvider-650e04d7.js +62 -0
  147. package/cjs/CreateChannelProvider-650e04d7.js.map +1 -0
  148. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +136 -0
  149. package/cjs/CreateOpenChannel/context.js +72 -0
  150. package/cjs/CreateOpenChannel.js +52 -0
  151. package/cjs/EditUserProfile/components/EditUserProfileUI.js +33 -0
  152. package/cjs/EditUserProfile.js +46 -0
  153. package/cjs/LocalizationContext-96daa26e.js +30 -0
  154. package/cjs/LocalizationContext-96daa26e.js.map +1 -0
  155. package/cjs/MediaQueryContext-9bc6235f.js +97 -0
  156. package/cjs/MediaQueryContext-9bc6235f.js.map +1 -0
  157. package/cjs/MemberList-455c2b0c.js +451 -0
  158. package/cjs/MemberList-455c2b0c.js.map +1 -0
  159. package/cjs/MessageSearch/components/MessageSearchUI.js +162 -0
  160. package/cjs/MessageSearch/context.js +405 -0
  161. package/cjs/MessageSearch.js +154 -0
  162. package/cjs/OpenChannel/components/FrozenChannelNotification.js +25 -0
  163. package/cjs/OpenChannel/components/OpenChannelHeader.js +96 -0
  164. package/cjs/OpenChannel/components/OpenChannelInput.js +68 -0
  165. package/cjs/OpenChannel/components/OpenChannelMessage.js +312 -0
  166. package/cjs/OpenChannel/components/OpenChannelMessageList.js +173 -0
  167. package/cjs/OpenChannel/components/OpenChannelUI.js +124 -0
  168. package/cjs/OpenChannel/context.js +25 -0
  169. package/cjs/OpenChannel.js +94 -0
  170. package/cjs/OpenChannelList/components/OpenChannelListUI.js +203 -0
  171. package/cjs/OpenChannelList/components/OpenChannelPreview.js +73 -0
  172. package/cjs/OpenChannelList/context.js +18 -0
  173. package/cjs/OpenChannelList.js +65 -0
  174. package/cjs/OpenChannelListProvider-77c9fbbb.js +443 -0
  175. package/cjs/OpenChannelListProvider-77c9fbbb.js.map +1 -0
  176. package/cjs/OpenChannelProvider-9cec5cd4.js +2009 -0
  177. package/cjs/OpenChannelProvider-9cec5cd4.js.map +1 -0
  178. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +154 -0
  179. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +89 -0
  180. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +132 -0
  181. package/cjs/OpenChannelSettings/components/OperatorUI.js +922 -0
  182. package/cjs/OpenChannelSettings/components/ParticipantUI.js +43 -0
  183. package/cjs/OpenChannelSettings/context.js +154 -0
  184. package/cjs/OpenChannelSettings.js +73 -0
  185. package/cjs/RemoveMessageModal-b3192d64.js +37 -0
  186. package/cjs/RemoveMessageModal-b3192d64.js.map +1 -0
  187. package/cjs/SendbirdProvider.js +831 -0
  188. package/cjs/Thread/components/ParentMessageInfo.js +376 -0
  189. package/cjs/Thread/components/ParentMessageInfoItem.js +220 -0
  190. package/cjs/Thread/components/ThreadHeader.js +67 -0
  191. package/cjs/Thread/components/ThreadList.js +156 -0
  192. package/cjs/Thread/components/ThreadListItem.js +545 -0
  193. package/cjs/Thread/components/ThreadMessageInput.js +249 -0
  194. package/cjs/Thread/components/ThreadUI.js +340 -0
  195. package/cjs/Thread/context.js +28 -0
  196. package/cjs/Thread.js +138 -0
  197. package/cjs/ThreadProvider-19361728.js +1733 -0
  198. package/cjs/ThreadProvider-19361728.js.map +1 -0
  199. package/cjs/UserProfileContext-bfd64db5.js +52 -0
  200. package/cjs/UserProfileContext-bfd64db5.js.map +1 -0
  201. package/cjs/VoiceMessageInputWrapper-531de35b.js +179 -0
  202. package/cjs/VoiceMessageInputWrapper-531de35b.js.map +1 -0
  203. package/cjs/VoicePlayer/context.js +14 -0
  204. package/cjs/VoicePlayer/useVoicePlayer.js +91 -0
  205. package/cjs/VoiceRecorder/context.js +253 -0
  206. package/cjs/VoiceRecorder/context.js.map +1 -0
  207. package/cjs/VoiceRecorder/useVoiceRecorder.js +122 -0
  208. package/cjs/_rollupPluginBabelHelpers-28744a32.js +63 -0
  209. package/cjs/_rollupPluginBabelHelpers-28744a32.js.map +1 -0
  210. package/cjs/actionTypes-46b359e2.js +10 -0
  211. package/cjs/actionTypes-46b359e2.js.map +1 -0
  212. package/cjs/color-5efe1d41.js +45 -0
  213. package/cjs/color-5efe1d41.js.map +1 -0
  214. package/cjs/compareIds-3fedd5a6.js +18 -0
  215. package/cjs/compareIds-3fedd5a6.js.map +1 -0
  216. package/cjs/const-3f17c1cc.js +20 -0
  217. package/cjs/const-3f17c1cc.js.map +1 -0
  218. package/cjs/const-ff05ead2.js +22 -0
  219. package/cjs/const-ff05ead2.js.map +1 -0
  220. package/cjs/consts-33111201.js +36 -0
  221. package/cjs/consts-33111201.js.map +1 -0
  222. package/cjs/context-b6e29045.js +19 -0
  223. package/cjs/context-b6e29045.js.map +1 -0
  224. package/cjs/dist/index.css +7346 -0
  225. package/cjs/dist/index.css.map +1 -0
  226. package/cjs/index-052d46a8.js +1857 -0
  227. package/cjs/index-052d46a8.js.map +1 -0
  228. package/cjs/index-21d53a07.js +157 -0
  229. package/cjs/index-21d53a07.js.map +1 -0
  230. package/cjs/index-246e3b08.js +178 -0
  231. package/cjs/index-246e3b08.js.map +1 -0
  232. package/cjs/index-4179358d.js +280 -0
  233. package/cjs/index-4179358d.js.map +1 -0
  234. package/cjs/index-426c8bab.js +747 -0
  235. package/cjs/index-426c8bab.js.map +1 -0
  236. package/cjs/index-50398b54.js +68 -0
  237. package/cjs/index-50398b54.js.map +1 -0
  238. package/cjs/index-5067b9ac.js +194 -0
  239. package/cjs/index-5067b9ac.js.map +1 -0
  240. package/cjs/index-52589393.js +360 -0
  241. package/cjs/index-52589393.js.map +1 -0
  242. package/cjs/index-9f3e208a.js +143 -0
  243. package/cjs/index-9f3e208a.js.map +1 -0
  244. package/cjs/index-b95fe816.js +503 -0
  245. package/cjs/index-b95fe816.js.map +1 -0
  246. package/cjs/index-c34aa203.js +179 -0
  247. package/cjs/index-c34aa203.js.map +1 -0
  248. package/cjs/index-d340da0c.js +119 -0
  249. package/cjs/index-d340da0c.js.map +1 -0
  250. package/cjs/index-ecc3e24d.js +178 -0
  251. package/cjs/index-ecc3e24d.js.map +1 -0
  252. package/cjs/index-f6ff50c4.js +9 -0
  253. package/cjs/index-f6ff50c4.js.map +1 -0
  254. package/cjs/index.js +197 -0
  255. package/cjs/lame.all.js +2541 -0
  256. package/cjs/lame.all.js.map +1 -0
  257. package/cjs/sendbirdSelectors.js +696 -0
  258. package/cjs/stringSet-071d4406.js +183 -0
  259. package/cjs/stringSet-071d4406.js.map +1 -0
  260. package/cjs/topics-aca671cd.js +22 -0
  261. package/cjs/topics-aca671cd.js.map +1 -0
  262. package/cjs/tslib.es6-88ed2248.js +97 -0
  263. package/cjs/tslib.es6-88ed2248.js.map +1 -0
  264. package/cjs/types-844c5e5e.js +11 -0
  265. package/cjs/types-844c5e5e.js.map +1 -0
  266. package/cjs/ui/Accordion.js +73 -0
  267. package/cjs/ui/AccordionGroup.js +32 -0
  268. package/cjs/ui/AdminMessage.js +34 -0
  269. package/cjs/ui/Avatar.js +225 -0
  270. package/cjs/ui/Badge.js +34 -0
  271. package/cjs/ui/BottomSheet.js +43 -0
  272. package/cjs/ui/Button.js +94 -0
  273. package/cjs/ui/ChannelAvatar.js +58 -0
  274. package/cjs/ui/ConnectionStatus.js +31 -0
  275. package/cjs/ui/ContextMenu.js +329 -0
  276. package/cjs/ui/DateSeparator.js +36 -0
  277. package/cjs/ui/EmojiReactions.js +140 -0
  278. package/cjs/ui/FileMessageItemBody.js +64 -0
  279. package/cjs/ui/FileViewer.js +137 -0
  280. package/cjs/ui/IconButton.js +60 -0
  281. package/cjs/ui/ImageRenderer.js +101 -0
  282. package/cjs/ui/Input.js +54 -0
  283. package/cjs/ui/Label.js +16 -0
  284. package/cjs/ui/LinkLabel.js +60 -0
  285. package/cjs/ui/Loader.js +34 -0
  286. package/cjs/ui/MentionLabel.js +104 -0
  287. package/cjs/ui/MessageContent.js +778 -0
  288. package/cjs/ui/MessageInput.js +590 -0
  289. package/cjs/ui/MessageItemMenu.js +163 -0
  290. package/cjs/ui/MessageItemReactionMenu.js +113 -0
  291. package/cjs/ui/MessageSearchFileItem.js +134 -0
  292. package/cjs/ui/MessageSearchItem.js +102 -0
  293. package/cjs/ui/MessageStatus.js +25 -0
  294. package/cjs/ui/Modal.js +126 -0
  295. package/cjs/ui/OGMessageItemBody.js +139 -0
  296. package/cjs/ui/OpenChannelAdminMessage.js +26 -0
  297. package/cjs/ui/OpenChannelAvatar.js +40 -0
  298. package/cjs/ui/OpenchannelConversationHeader.js +72 -0
  299. package/cjs/ui/OpenchannelFileMessage.js +264 -0
  300. package/cjs/ui/OpenchannelOGMessage.js +380 -0
  301. package/cjs/ui/OpenchannelThumbnailMessage.js +339 -0
  302. package/cjs/ui/OpenchannelUserMessage.js +289 -0
  303. package/cjs/ui/PlaceHolder.js +20 -0
  304. package/cjs/ui/PlaybackTime.js +36 -0
  305. package/cjs/ui/QuoteMessage.js +158 -0
  306. package/cjs/ui/QuoteMessageInput.js +98 -0
  307. package/cjs/ui/ReactionBadge.js +58 -0
  308. package/cjs/ui/ReactionButton.js +44 -0
  309. package/cjs/ui/SortByRow.js +47 -0
  310. package/cjs/ui/TextButton.js +37 -0
  311. package/cjs/ui/TextMessageItemBody.js +86 -0
  312. package/cjs/ui/ThreadReplies.js +82 -0
  313. package/cjs/ui/ThumbnailMessageItemBody.js +86 -0
  314. package/cjs/ui/Tooltip.js +28 -0
  315. package/cjs/ui/TooltipWrapper.js +55 -0
  316. package/cjs/ui/UnknownMessageItemBody.js +43 -0
  317. package/cjs/ui/UserListItem.js +133 -0
  318. package/cjs/ui/UserProfile.js +91 -0
  319. package/cjs/ui/VoiceMessageItemBody.js +119 -0
  320. package/cjs/ui/VoiceMessgeInput.js +23 -0
  321. package/cjs/ui/Word.js +115 -0
  322. package/cjs/useLongPress-8387a957.js +118 -0
  323. package/cjs/useLongPress-8387a957.js.map +1 -0
  324. package/cjs/useSendbirdStateContext.js +22 -0
  325. package/cjs/utils/message/isVoiceMessage.js +10 -0
  326. package/cjs/utils-1c34989b.js +38 -0
  327. package/cjs/utils-1c34989b.js.map +1 -0
  328. package/cjs/utils-772a7f91.js +6 -0
  329. package/cjs/utils-772a7f91.js.map +1 -0
  330. package/cjs/utils-7d05e1de.js +32 -0
  331. package/cjs/utils-7d05e1de.js.map +1 -0
  332. package/cjs/utils-e2cccbe7.js +32 -0
  333. package/cjs/utils-e2cccbe7.js.map +1 -0
  334. package/cjs/uuid-5499c9f4.js +19 -0
  335. package/cjs/uuid-5499c9f4.js.map +1 -0
  336. package/cjs/withSendbird.js +33 -0
  337. package/color-e2230e8b.js +43 -0
  338. package/color-e2230e8b.js.map +1 -0
  339. package/compareIds-83f851ce.js +16 -0
  340. package/compareIds-83f851ce.js.map +1 -0
  341. package/const-50617e3a.js +18 -0
  342. package/const-50617e3a.js.map +1 -0
  343. package/const-ca46adf6.js +14 -0
  344. package/const-ca46adf6.js.map +1 -0
  345. package/consts-243f8df6.js +23 -0
  346. package/consts-243f8df6.js.map +1 -0
  347. package/context-e729e390.js +12 -0
  348. package/context-e729e390.js.map +1 -0
  349. package/dist/index.css +7346 -0
  350. package/dist/index.css.map +1 -0
  351. package/index-161c05da.js +1852 -0
  352. package/index-161c05da.js.map +1 -0
  353. package/index-3a87f118.js +132 -0
  354. package/index-3a87f118.js.map +1 -0
  355. package/index-4bbbea68.js +7 -0
  356. package/index-4bbbea68.js.map +1 -0
  357. package/index-587bb3bd.js +353 -0
  358. package/index-587bb3bd.js.map +1 -0
  359. package/index-683afa58.js +172 -0
  360. package/index-683afa58.js.map +1 -0
  361. package/index-7cf72737.js +111 -0
  362. package/index-7cf72737.js.map +1 -0
  363. package/index-8f893823.js +174 -0
  364. package/index-8f893823.js.map +1 -0
  365. package/index-bb7ad379.js +145 -0
  366. package/index-bb7ad379.js.map +1 -0
  367. package/index-c4c39acb.js +501 -0
  368. package/index-c4c39acb.js.map +1 -0
  369. package/index-c9e463fe.js +66 -0
  370. package/index-c9e463fe.js.map +1 -0
  371. package/index-d7a0c94d.js +706 -0
  372. package/index-d7a0c94d.js.map +1 -0
  373. package/index-e360a65e.js +271 -0
  374. package/index-e360a65e.js.map +1 -0
  375. package/index-e7848a92.js +171 -0
  376. package/index-e7848a92.js.map +1 -0
  377. package/index-fcab817e.js +179 -0
  378. package/index-fcab817e.js.map +1 -0
  379. package/index.d.ts +2501 -0
  380. package/index.js +177 -0
  381. package/lame.all.js +2537 -0
  382. package/lame.all.js.map +1 -0
  383. package/package.json +28 -54
  384. package/sendbirdSelectors.js +671 -0
  385. package/stringSet-cbfee5c4.js +181 -0
  386. package/stringSet-cbfee5c4.js.map +1 -0
  387. package/topics-e015bff4.js +13 -0
  388. package/topics-e015bff4.js.map +1 -0
  389. package/tslib.es6-ce2a9c4a.js +92 -0
  390. package/tslib.es6-ce2a9c4a.js.map +1 -0
  391. package/types-716473cb.js +9 -0
  392. package/types-716473cb.js.map +1 -0
  393. package/ui/Accordion.js +64 -0
  394. package/ui/AccordionGroup.js +26 -0
  395. package/ui/AdminMessage.js +28 -0
  396. package/ui/Avatar.js +216 -0
  397. package/ui/Badge.js +28 -0
  398. package/ui/BottomSheet.js +37 -0
  399. package/ui/Button.js +84 -0
  400. package/ui/ChannelAvatar.js +52 -0
  401. package/ui/ConnectionStatus.js +25 -0
  402. package/ui/ContextMenu.js +316 -0
  403. package/ui/DateSeparator.js +30 -0
  404. package/ui/EmojiReactions.js +134 -0
  405. package/ui/FileMessageItemBody.js +58 -0
  406. package/ui/FileViewer.js +128 -0
  407. package/ui/IconButton.js +54 -0
  408. package/ui/ImageRenderer.js +95 -0
  409. package/ui/Input.js +45 -0
  410. package/ui/Label.js +5 -0
  411. package/ui/LinkLabel.js +49 -0
  412. package/ui/Loader.js +28 -0
  413. package/ui/MentionLabel.js +98 -0
  414. package/ui/MessageContent.js +772 -0
  415. package/ui/MessageInput.js +583 -0
  416. package/ui/MessageItemMenu.js +157 -0
  417. package/ui/MessageItemReactionMenu.js +107 -0
  418. package/ui/MessageSearchFileItem.js +128 -0
  419. package/ui/MessageSearchItem.js +96 -0
  420. package/ui/MessageStatus.js +16 -0
  421. package/ui/Modal.js +115 -0
  422. package/ui/OGMessageItemBody.js +133 -0
  423. package/ui/OpenChannelAdminMessage.js +20 -0
  424. package/ui/OpenChannelAvatar.js +34 -0
  425. package/ui/OpenchannelConversationHeader.js +66 -0
  426. package/ui/OpenchannelFileMessage.js +258 -0
  427. package/ui/OpenchannelOGMessage.js +374 -0
  428. package/ui/OpenchannelThumbnailMessage.js +333 -0
  429. package/ui/OpenchannelUserMessage.js +283 -0
  430. package/ui/PlaceHolder.js +11 -0
  431. package/ui/PlaybackTime.js +27 -0
  432. package/ui/QuoteMessage.js +152 -0
  433. package/ui/QuoteMessageInput.js +92 -0
  434. package/ui/ReactionBadge.js +52 -0
  435. package/ui/ReactionButton.js +38 -0
  436. package/ui/SortByRow.js +41 -0
  437. package/ui/TextButton.js +31 -0
  438. package/ui/TextMessageItemBody.js +80 -0
  439. package/ui/ThreadReplies.js +76 -0
  440. package/ui/ThumbnailMessageItemBody.js +80 -0
  441. package/ui/Tooltip.js +22 -0
  442. package/ui/TooltipWrapper.js +49 -0
  443. package/ui/UnknownMessageItemBody.js +37 -0
  444. package/ui/UserListItem.js +127 -0
  445. package/ui/UserProfile.js +85 -0
  446. package/ui/VoiceMessageItemBody.js +110 -0
  447. package/ui/VoiceMessgeInput.js +15 -0
  448. package/ui/Word.js +109 -0
  449. package/useLongPress-b8c1e9d0.js +116 -0
  450. package/useLongPress-b8c1e9d0.js.map +1 -0
  451. package/useSendbirdStateContext.js +20 -0
  452. package/utils/message/isVoiceMessage.js +7 -0
  453. package/utils-0c116669.js +30 -0
  454. package/utils-0c116669.js.map +1 -0
  455. package/utils-22cf0b3a.js +4 -0
  456. package/utils-22cf0b3a.js.map +1 -0
  457. package/utils-7f4e907b.js +30 -0
  458. package/utils-7f4e907b.js.map +1 -0
  459. package/utils-bb62cae7.js +34 -0
  460. package/utils-bb62cae7.js.map +1 -0
  461. package/uuid-3e094678.js +17 -0
  462. package/uuid-3e094678.js.map +1 -0
  463. package/withSendbird.js +24 -0
  464. package/dist/App.js +0 -664
  465. package/dist/CHANGELOG.md +0 -782
  466. package/dist/Channel/components/ChannelHeader.js +0 -111
  467. package/dist/Channel/components/ChannelUI.js +0 -234
  468. package/dist/Channel/components/FileViewer.js +0 -155
  469. package/dist/Channel/components/FrozenNotification.js +0 -19
  470. package/dist/Channel/components/Message.js +0 -406
  471. package/dist/Channel/components/MessageInput.js +0 -265
  472. package/dist/Channel/components/MessageList.js +0 -260
  473. package/dist/Channel/components/RemoveMessageModal.js +0 -60
  474. package/dist/Channel/components/SuggestedMentionList.js +0 -314
  475. package/dist/Channel/components/TypingIndicator.js +0 -106
  476. package/dist/Channel/components/UnreadCount.js +0 -40
  477. package/dist/Channel/context.js +0 -28
  478. package/dist/Channel.js +0 -143
  479. package/dist/ChannelList/components/AddChannel.js +0 -76
  480. package/dist/ChannelList/components/ChannelListHeader.js +0 -72
  481. package/dist/ChannelList/components/ChannelListUI.js +0 -268
  482. package/dist/ChannelList/components/ChannelPreview.js +0 -193
  483. package/dist/ChannelList/components/ChannelPreviewAction.js +0 -133
  484. package/dist/ChannelList/context.js +0 -15
  485. package/dist/ChannelList.js +0 -97
  486. package/dist/ChannelListProvider-eced39aa.js +0 -1074
  487. package/dist/ChannelListProvider-eced39aa.js.map +0 -1
  488. package/dist/ChannelProvider-bbe16a96.js +0 -2283
  489. package/dist/ChannelProvider-bbe16a96.js.map +0 -1
  490. package/dist/ChannelSettings/components/ChannelProfile.js +0 -102
  491. package/dist/ChannelSettings/components/ChannelSettingsUI.js +0 -155
  492. package/dist/ChannelSettings/components/EditDetailsModal.js +0 -157
  493. package/dist/ChannelSettings/components/LeaveChannel.js +0 -101
  494. package/dist/ChannelSettings/components/ModerationPanel.js +0 -871
  495. package/dist/ChannelSettings/components/UserListItem.js +0 -108
  496. package/dist/ChannelSettings/components/UserPanel.js +0 -84
  497. package/dist/ChannelSettings/context.js +0 -99
  498. package/dist/ChannelSettings.js +0 -76
  499. package/dist/CreateChannel/components/CreateChannelUI.js +0 -58
  500. package/dist/CreateChannel/components/InviteUsers.js +0 -218
  501. package/dist/CreateChannel/components/SelectChannelType.js +0 -134
  502. package/dist/CreateChannel/context.js +0 -9
  503. package/dist/CreateChannel.js +0 -57
  504. package/dist/CreateChannelProvider-951098e6.js +0 -55
  505. package/dist/CreateChannelProvider-951098e6.js.map +0 -1
  506. package/dist/CreateOpenChannel/components/CreateOpenChannelUI.js +0 -130
  507. package/dist/CreateOpenChannel/context.js +0 -63
  508. package/dist/CreateOpenChannel.js +0 -46
  509. package/dist/EditUserProfile/components/EditUserProfileUI.js +0 -27
  510. package/dist/EditUserProfile.js +0 -40
  511. package/dist/LICENSE +0 -21
  512. package/dist/LocalizationContext-948efac4.js +0 -22
  513. package/dist/LocalizationContext-948efac4.js.map +0 -1
  514. package/dist/MediaQueryContext-b04e7ffd.js +0 -90
  515. package/dist/MediaQueryContext-b04e7ffd.js.map +0 -1
  516. package/dist/MemberList-af295cb0.js +0 -445
  517. package/dist/MemberList-af295cb0.js.map +0 -1
  518. package/dist/MessageSearch/components/MessageSearchUI.js +0 -153
  519. package/dist/MessageSearch/context.js +0 -396
  520. package/dist/MessageSearch.js +0 -148
  521. package/dist/OpenChannel/components/FrozenChannelNotification.js +0 -19
  522. package/dist/OpenChannel/components/OpenChannelHeader.js +0 -90
  523. package/dist/OpenChannel/components/OpenChannelInput.js +0 -62
  524. package/dist/OpenChannel/components/OpenChannelMessage.js +0 -306
  525. package/dist/OpenChannel/components/OpenChannelMessageList.js +0 -167
  526. package/dist/OpenChannel/components/OpenChannelUI.js +0 -118
  527. package/dist/OpenChannel/context.js +0 -16
  528. package/dist/OpenChannel.js +0 -88
  529. package/dist/OpenChannelList/components/OpenChannelListUI.js +0 -197
  530. package/dist/OpenChannelList/components/OpenChannelPreview.js +0 -67
  531. package/dist/OpenChannelList/context.js +0 -8
  532. package/dist/OpenChannelList.js +0 -59
  533. package/dist/OpenChannelListProvider-13b17927.js +0 -434
  534. package/dist/OpenChannelListProvider-13b17927.js.map +0 -1
  535. package/dist/OpenChannelProvider-180d3e3a.js +0 -2000
  536. package/dist/OpenChannelProvider-180d3e3a.js.map +0 -1
  537. package/dist/OpenChannelSettings/components/EditDetailsModal.js +0 -148
  538. package/dist/OpenChannelSettings/components/OpenChannelProfile.js +0 -83
  539. package/dist/OpenChannelSettings/components/OpenChannelSettingsUI.js +0 -126
  540. package/dist/OpenChannelSettings/components/OperatorUI.js +0 -912
  541. package/dist/OpenChannelSettings/components/ParticipantUI.js +0 -37
  542. package/dist/OpenChannelSettings/context.js +0 -145
  543. package/dist/OpenChannelSettings.js +0 -67
  544. package/dist/README.md +0 -131
  545. package/dist/RemoveMessageModal-f1a27721.js +0 -31
  546. package/dist/RemoveMessageModal-f1a27721.js.map +0 -1
  547. package/dist/SendbirdProvider.js +0 -822
  548. package/dist/Thread/components/ParentMessageInfo.js +0 -370
  549. package/dist/Thread/components/ParentMessageInfoItem.js +0 -214
  550. package/dist/Thread/components/ThreadHeader.js +0 -61
  551. package/dist/Thread/components/ThreadList.js +0 -150
  552. package/dist/Thread/components/ThreadListItem.js +0 -539
  553. package/dist/Thread/components/ThreadMessageInput.js +0 -243
  554. package/dist/Thread/components/ThreadUI.js +0 -334
  555. package/dist/Thread/context.js +0 -19
  556. package/dist/Thread.js +0 -132
  557. package/dist/ThreadProvider-50bdb59e.js +0 -1724
  558. package/dist/ThreadProvider-50bdb59e.js.map +0 -1
  559. package/dist/UserProfileContext-74d60d34.js +0 -44
  560. package/dist/UserProfileContext-74d60d34.js.map +0 -1
  561. package/dist/VoiceMessageInputWrapper-e5f8b5d0.js +0 -173
  562. package/dist/VoiceMessageInputWrapper-e5f8b5d0.js.map +0 -1
  563. package/dist/VoicePlayer/context.js +0 -5
  564. package/dist/VoicePlayer/useVoicePlayer.js +0 -87
  565. package/dist/VoiceRecorder/context.js +0 -243
  566. package/dist/VoiceRecorder/context.js.map +0 -1
  567. package/dist/VoiceRecorder/useVoiceRecorder.js +0 -117
  568. package/dist/_rollupPluginBabelHelpers-e4ed87a8.js +0 -60
  569. package/dist/_rollupPluginBabelHelpers-e4ed87a8.js.map +0 -1
  570. package/dist/actionTypes-a37e872a.js +0 -6
  571. package/dist/actionTypes-a37e872a.js.map +0 -1
  572. package/dist/cjs/App.js +0 -671
  573. package/dist/cjs/Channel/components/ChannelHeader.js +0 -117
  574. package/dist/cjs/Channel/components/ChannelUI.js +0 -240
  575. package/dist/cjs/Channel/components/FileViewer.js +0 -164
  576. package/dist/cjs/Channel/components/FrozenNotification.js +0 -25
  577. package/dist/cjs/Channel/components/Message.js +0 -412
  578. package/dist/cjs/Channel/components/MessageInput.js +0 -271
  579. package/dist/cjs/Channel/components/MessageList.js +0 -266
  580. package/dist/cjs/Channel/components/RemoveMessageModal.js +0 -66
  581. package/dist/cjs/Channel/components/SuggestedMentionList.js +0 -320
  582. package/dist/cjs/Channel/components/TypingIndicator.js +0 -115
  583. package/dist/cjs/Channel/components/UnreadCount.js +0 -46
  584. package/dist/cjs/Channel/context.js +0 -41
  585. package/dist/cjs/Channel.js +0 -149
  586. package/dist/cjs/ChannelList/components/AddChannel.js +0 -85
  587. package/dist/cjs/ChannelList/components/ChannelListHeader.js +0 -78
  588. package/dist/cjs/ChannelList/components/ChannelListUI.js +0 -274
  589. package/dist/cjs/ChannelList/components/ChannelPreview.js +0 -199
  590. package/dist/cjs/ChannelList/components/ChannelPreviewAction.js +0 -140
  591. package/dist/cjs/ChannelList/context.js +0 -24
  592. package/dist/cjs/ChannelList.js +0 -103
  593. package/dist/cjs/ChannelListProvider-854e774b.js +0 -1086
  594. package/dist/cjs/ChannelListProvider-854e774b.js.map +0 -1
  595. package/dist/cjs/ChannelProvider-367995a6.js +0 -2296
  596. package/dist/cjs/ChannelProvider-367995a6.js.map +0 -1
  597. package/dist/cjs/ChannelSettings/components/ChannelProfile.js +0 -108
  598. package/dist/cjs/ChannelSettings/components/ChannelSettingsUI.js +0 -161
  599. package/dist/cjs/ChannelSettings/components/EditDetailsModal.js +0 -163
  600. package/dist/cjs/ChannelSettings/components/LeaveChannel.js +0 -107
  601. package/dist/cjs/ChannelSettings/components/ModerationPanel.js +0 -877
  602. package/dist/cjs/ChannelSettings/components/UserListItem.js +0 -114
  603. package/dist/cjs/ChannelSettings/components/UserPanel.js +0 -90
  604. package/dist/cjs/ChannelSettings/context.js +0 -108
  605. package/dist/cjs/ChannelSettings.js +0 -82
  606. package/dist/cjs/CreateChannel/components/CreateChannelUI.js +0 -64
  607. package/dist/cjs/CreateChannel/components/InviteUsers.js +0 -224
  608. package/dist/cjs/CreateChannel/components/SelectChannelType.js +0 -140
  609. package/dist/cjs/CreateChannel/context.js +0 -18
  610. package/dist/cjs/CreateChannel.js +0 -63
  611. package/dist/cjs/CreateChannelProvider-31020b12.js +0 -62
  612. package/dist/cjs/CreateChannelProvider-31020b12.js.map +0 -1
  613. package/dist/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +0 -136
  614. package/dist/cjs/CreateOpenChannel/context.js +0 -72
  615. package/dist/cjs/CreateOpenChannel.js +0 -52
  616. package/dist/cjs/EditUserProfile/components/EditUserProfileUI.js +0 -33
  617. package/dist/cjs/EditUserProfile.js +0 -46
  618. package/dist/cjs/LocalizationContext-2fb0be1f.js +0 -30
  619. package/dist/cjs/LocalizationContext-2fb0be1f.js.map +0 -1
  620. package/dist/cjs/MediaQueryContext-db5159f3.js +0 -97
  621. package/dist/cjs/MediaQueryContext-db5159f3.js.map +0 -1
  622. package/dist/cjs/MemberList-3049bffe.js +0 -451
  623. package/dist/cjs/MemberList-3049bffe.js.map +0 -1
  624. package/dist/cjs/MessageSearch/components/MessageSearchUI.js +0 -162
  625. package/dist/cjs/MessageSearch/context.js +0 -405
  626. package/dist/cjs/MessageSearch.js +0 -154
  627. package/dist/cjs/OpenChannel/components/FrozenChannelNotification.js +0 -25
  628. package/dist/cjs/OpenChannel/components/OpenChannelHeader.js +0 -96
  629. package/dist/cjs/OpenChannel/components/OpenChannelInput.js +0 -68
  630. package/dist/cjs/OpenChannel/components/OpenChannelMessage.js +0 -312
  631. package/dist/cjs/OpenChannel/components/OpenChannelMessageList.js +0 -173
  632. package/dist/cjs/OpenChannel/components/OpenChannelUI.js +0 -124
  633. package/dist/cjs/OpenChannel/context.js +0 -25
  634. package/dist/cjs/OpenChannel.js +0 -94
  635. package/dist/cjs/OpenChannelList/components/OpenChannelListUI.js +0 -203
  636. package/dist/cjs/OpenChannelList/components/OpenChannelPreview.js +0 -73
  637. package/dist/cjs/OpenChannelList/context.js +0 -18
  638. package/dist/cjs/OpenChannelList.js +0 -65
  639. package/dist/cjs/OpenChannelListProvider-fee6af21.js +0 -443
  640. package/dist/cjs/OpenChannelListProvider-fee6af21.js.map +0 -1
  641. package/dist/cjs/OpenChannelProvider-bf43f315.js +0 -2009
  642. package/dist/cjs/OpenChannelProvider-bf43f315.js.map +0 -1
  643. package/dist/cjs/OpenChannelSettings/components/EditDetailsModal.js +0 -154
  644. package/dist/cjs/OpenChannelSettings/components/OpenChannelProfile.js +0 -89
  645. package/dist/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +0 -132
  646. package/dist/cjs/OpenChannelSettings/components/OperatorUI.js +0 -922
  647. package/dist/cjs/OpenChannelSettings/components/ParticipantUI.js +0 -43
  648. package/dist/cjs/OpenChannelSettings/context.js +0 -154
  649. package/dist/cjs/OpenChannelSettings.js +0 -73
  650. package/dist/cjs/RemoveMessageModal-a9a5cd37.js +0 -37
  651. package/dist/cjs/RemoveMessageModal-a9a5cd37.js.map +0 -1
  652. package/dist/cjs/SendbirdProvider.js +0 -831
  653. package/dist/cjs/Thread/components/ParentMessageInfo.js +0 -376
  654. package/dist/cjs/Thread/components/ParentMessageInfoItem.js +0 -220
  655. package/dist/cjs/Thread/components/ThreadHeader.js +0 -67
  656. package/dist/cjs/Thread/components/ThreadList.js +0 -156
  657. package/dist/cjs/Thread/components/ThreadListItem.js +0 -545
  658. package/dist/cjs/Thread/components/ThreadMessageInput.js +0 -249
  659. package/dist/cjs/Thread/components/ThreadUI.js +0 -340
  660. package/dist/cjs/Thread/context.js +0 -28
  661. package/dist/cjs/Thread.js +0 -138
  662. package/dist/cjs/ThreadProvider-6300587c.js +0 -1733
  663. package/dist/cjs/ThreadProvider-6300587c.js.map +0 -1
  664. package/dist/cjs/UserProfileContext-0549101e.js +0 -52
  665. package/dist/cjs/UserProfileContext-0549101e.js.map +0 -1
  666. package/dist/cjs/VoiceMessageInputWrapper-8eb47421.js +0 -179
  667. package/dist/cjs/VoiceMessageInputWrapper-8eb47421.js.map +0 -1
  668. package/dist/cjs/VoicePlayer/context.js +0 -14
  669. package/dist/cjs/VoicePlayer/useVoicePlayer.js +0 -91
  670. package/dist/cjs/VoiceRecorder/context.js +0 -253
  671. package/dist/cjs/VoiceRecorder/context.js.map +0 -1
  672. package/dist/cjs/VoiceRecorder/useVoiceRecorder.js +0 -122
  673. package/dist/cjs/_rollupPluginBabelHelpers-e7c78521.js +0 -63
  674. package/dist/cjs/_rollupPluginBabelHelpers-e7c78521.js.map +0 -1
  675. package/dist/cjs/actionTypes-80ffd63e.js +0 -10
  676. package/dist/cjs/actionTypes-80ffd63e.js.map +0 -1
  677. package/dist/cjs/color-84bbbc0b.js +0 -45
  678. package/dist/cjs/color-84bbbc0b.js.map +0 -1
  679. package/dist/cjs/compareIds-19a11ffa.js +0 -18
  680. package/dist/cjs/compareIds-19a11ffa.js.map +0 -1
  681. package/dist/cjs/const-3c5d5059.js +0 -20
  682. package/dist/cjs/const-3c5d5059.js.map +0 -1
  683. package/dist/cjs/const-86e2750e.js +0 -22
  684. package/dist/cjs/const-86e2750e.js.map +0 -1
  685. package/dist/cjs/consts-9d221c68.js +0 -36
  686. package/dist/cjs/consts-9d221c68.js.map +0 -1
  687. package/dist/cjs/context-f5c934a0.js +0 -19
  688. package/dist/cjs/context-f5c934a0.js.map +0 -1
  689. package/dist/cjs/dist/index.css +0 -7346
  690. package/dist/cjs/dist/index.css.map +0 -1
  691. package/dist/cjs/index-02407ba5.js +0 -360
  692. package/dist/cjs/index-02407ba5.js.map +0 -1
  693. package/dist/cjs/index-1ec959ab.js +0 -503
  694. package/dist/cjs/index-1ec959ab.js.map +0 -1
  695. package/dist/cjs/index-2d7e8e6d.js +0 -119
  696. package/dist/cjs/index-2d7e8e6d.js.map +0 -1
  697. package/dist/cjs/index-43d893cf.js +0 -157
  698. package/dist/cjs/index-43d893cf.js.map +0 -1
  699. package/dist/cjs/index-490839e3.js +0 -9
  700. package/dist/cjs/index-490839e3.js.map +0 -1
  701. package/dist/cjs/index-4e46a153.js +0 -68
  702. package/dist/cjs/index-4e46a153.js.map +0 -1
  703. package/dist/cjs/index-578f0575.js +0 -143
  704. package/dist/cjs/index-578f0575.js.map +0 -1
  705. package/dist/cjs/index-6714492f.js +0 -747
  706. package/dist/cjs/index-6714492f.js.map +0 -1
  707. package/dist/cjs/index-812adbfb.js +0 -179
  708. package/dist/cjs/index-812adbfb.js.map +0 -1
  709. package/dist/cjs/index-8b769862.js +0 -174
  710. package/dist/cjs/index-8b769862.js.map +0 -1
  711. package/dist/cjs/index-a79f62a3.js +0 -194
  712. package/dist/cjs/index-a79f62a3.js.map +0 -1
  713. package/dist/cjs/index-aada6371.js +0 -178
  714. package/dist/cjs/index-aada6371.js.map +0 -1
  715. package/dist/cjs/index-e1d58610.js +0 -280
  716. package/dist/cjs/index-e1d58610.js.map +0 -1
  717. package/dist/cjs/index-f1bd9638.js +0 -1857
  718. package/dist/cjs/index-f1bd9638.js.map +0 -1
  719. package/dist/cjs/index.js +0 -197
  720. package/dist/cjs/lame.all.js +0 -14498
  721. package/dist/cjs/lame.all.js.map +0 -1
  722. package/dist/cjs/sendbirdSelectors.js +0 -696
  723. package/dist/cjs/stringSet-388f679a.js +0 -183
  724. package/dist/cjs/stringSet-388f679a.js.map +0 -1
  725. package/dist/cjs/topics-839402ce.js +0 -22
  726. package/dist/cjs/topics-839402ce.js.map +0 -1
  727. package/dist/cjs/tslib.es6-e8acf1b5.js +0 -97
  728. package/dist/cjs/tslib.es6-e8acf1b5.js.map +0 -1
  729. package/dist/cjs/types-6ffa6822.js +0 -11
  730. package/dist/cjs/types-6ffa6822.js.map +0 -1
  731. package/dist/cjs/ui/Accordion.js +0 -73
  732. package/dist/cjs/ui/AccordionGroup.js +0 -32
  733. package/dist/cjs/ui/AdminMessage.js +0 -34
  734. package/dist/cjs/ui/Avatar.js +0 -225
  735. package/dist/cjs/ui/Badge.js +0 -34
  736. package/dist/cjs/ui/BottomSheet.js +0 -43
  737. package/dist/cjs/ui/Button.js +0 -94
  738. package/dist/cjs/ui/ChannelAvatar.js +0 -58
  739. package/dist/cjs/ui/ConnectionStatus.js +0 -31
  740. package/dist/cjs/ui/ContextMenu.js +0 -329
  741. package/dist/cjs/ui/DateSeparator.js +0 -36
  742. package/dist/cjs/ui/EmojiReactions.js +0 -140
  743. package/dist/cjs/ui/FileMessageItemBody.js +0 -64
  744. package/dist/cjs/ui/FileViewer.js +0 -137
  745. package/dist/cjs/ui/IconButton.js +0 -60
  746. package/dist/cjs/ui/ImageRenderer.js +0 -101
  747. package/dist/cjs/ui/Input.js +0 -54
  748. package/dist/cjs/ui/Label.js +0 -16
  749. package/dist/cjs/ui/LinkLabel.js +0 -60
  750. package/dist/cjs/ui/Loader.js +0 -34
  751. package/dist/cjs/ui/MentionLabel.js +0 -104
  752. package/dist/cjs/ui/MessageContent.js +0 -778
  753. package/dist/cjs/ui/MessageInput.js +0 -590
  754. package/dist/cjs/ui/MessageItemMenu.js +0 -163
  755. package/dist/cjs/ui/MessageItemReactionMenu.js +0 -113
  756. package/dist/cjs/ui/MessageSearchFileItem.js +0 -134
  757. package/dist/cjs/ui/MessageSearchItem.js +0 -102
  758. package/dist/cjs/ui/MessageStatus.js +0 -25
  759. package/dist/cjs/ui/Modal.js +0 -126
  760. package/dist/cjs/ui/OGMessageItemBody.js +0 -139
  761. package/dist/cjs/ui/OpenChannelAdminMessage.js +0 -26
  762. package/dist/cjs/ui/OpenChannelAvatar.js +0 -40
  763. package/dist/cjs/ui/OpenchannelConversationHeader.js +0 -72
  764. package/dist/cjs/ui/OpenchannelFileMessage.js +0 -264
  765. package/dist/cjs/ui/OpenchannelOGMessage.js +0 -380
  766. package/dist/cjs/ui/OpenchannelThumbnailMessage.js +0 -339
  767. package/dist/cjs/ui/OpenchannelUserMessage.js +0 -289
  768. package/dist/cjs/ui/PlaceHolder.js +0 -20
  769. package/dist/cjs/ui/PlaybackTime.js +0 -36
  770. package/dist/cjs/ui/QuoteMessage.js +0 -158
  771. package/dist/cjs/ui/QuoteMessageInput.js +0 -98
  772. package/dist/cjs/ui/ReactionBadge.js +0 -58
  773. package/dist/cjs/ui/ReactionButton.js +0 -44
  774. package/dist/cjs/ui/SortByRow.js +0 -47
  775. package/dist/cjs/ui/TextButton.js +0 -37
  776. package/dist/cjs/ui/TextMessageItemBody.js +0 -86
  777. package/dist/cjs/ui/ThreadReplies.js +0 -82
  778. package/dist/cjs/ui/ThumbnailMessageItemBody.js +0 -86
  779. package/dist/cjs/ui/Tooltip.js +0 -28
  780. package/dist/cjs/ui/TooltipWrapper.js +0 -55
  781. package/dist/cjs/ui/UnknownMessageItemBody.js +0 -43
  782. package/dist/cjs/ui/UserListItem.js +0 -133
  783. package/dist/cjs/ui/UserProfile.js +0 -91
  784. package/dist/cjs/ui/VoiceMessageItemBody.js +0 -119
  785. package/dist/cjs/ui/VoiceMessgeInput.js +0 -23
  786. package/dist/cjs/ui/Word.js +0 -115
  787. package/dist/cjs/useLongPress-b75b3860.js +0 -118
  788. package/dist/cjs/useLongPress-b75b3860.js.map +0 -1
  789. package/dist/cjs/useSendbirdStateContext.js +0 -22
  790. package/dist/cjs/utils/message/isVoiceMessage.js +0 -10
  791. package/dist/cjs/utils-56a22c82.js +0 -32
  792. package/dist/cjs/utils-56a22c82.js.map +0 -1
  793. package/dist/cjs/utils-6e33484b.js +0 -32
  794. package/dist/cjs/utils-6e33484b.js.map +0 -1
  795. package/dist/cjs/utils-763f5a7f.js +0 -38
  796. package/dist/cjs/utils-763f5a7f.js.map +0 -1
  797. package/dist/cjs/utils-c61c3737.js +0 -6
  798. package/dist/cjs/utils-c61c3737.js.map +0 -1
  799. package/dist/cjs/uuid-a94df44e.js +0 -19
  800. package/dist/cjs/uuid-a94df44e.js.map +0 -1
  801. package/dist/cjs/withSendbird.js +0 -33
  802. package/dist/color-206fa031.js +0 -43
  803. package/dist/color-206fa031.js.map +0 -1
  804. package/dist/compareIds-3442d021.js +0 -16
  805. package/dist/compareIds-3442d021.js.map +0 -1
  806. package/dist/const-78033061.js +0 -18
  807. package/dist/const-78033061.js.map +0 -1
  808. package/dist/const-8f606c40.js +0 -14
  809. package/dist/const-8f606c40.js.map +0 -1
  810. package/dist/consts-854f6e5f.js +0 -23
  811. package/dist/consts-854f6e5f.js.map +0 -1
  812. package/dist/context-17109f64.js +0 -12
  813. package/dist/context-17109f64.js.map +0 -1
  814. package/dist/dist/index.css +0 -7346
  815. package/dist/dist/index.css.map +0 -1
  816. package/dist/index-39098053.js +0 -7
  817. package/dist/index-39098053.js.map +0 -1
  818. package/dist/index-3b737aa6.js +0 -167
  819. package/dist/index-3b737aa6.js.map +0 -1
  820. package/dist/index-4217213f.js +0 -706
  821. package/dist/index-4217213f.js.map +0 -1
  822. package/dist/index-515b7f4e.js +0 -145
  823. package/dist/index-515b7f4e.js.map +0 -1
  824. package/dist/index-5c8b0523.js +0 -501
  825. package/dist/index-5c8b0523.js.map +0 -1
  826. package/dist/index-6b63d598.js +0 -1852
  827. package/dist/index-6b63d598.js.map +0 -1
  828. package/dist/index-8a78af9f.js +0 -111
  829. package/dist/index-8a78af9f.js.map +0 -1
  830. package/dist/index-8ff79952.js +0 -132
  831. package/dist/index-8ff79952.js.map +0 -1
  832. package/dist/index-a3d3d77a.js +0 -66
  833. package/dist/index-a3d3d77a.js.map +0 -1
  834. package/dist/index-a983f435.js +0 -174
  835. package/dist/index-a983f435.js.map +0 -1
  836. package/dist/index-bb3ccac9.js +0 -271
  837. package/dist/index-bb3ccac9.js.map +0 -1
  838. package/dist/index-c17ebf21.js +0 -172
  839. package/dist/index-c17ebf21.js.map +0 -1
  840. package/dist/index-cb271040.js +0 -179
  841. package/dist/index-cb271040.js.map +0 -1
  842. package/dist/index-d4ce9200.js +0 -353
  843. package/dist/index-d4ce9200.js.map +0 -1
  844. package/dist/index.d.ts +0 -2501
  845. package/dist/index.js +0 -177
  846. package/dist/lame.all.js +0 -14492
  847. package/dist/lame.all.js.map +0 -1
  848. package/dist/package.json +0 -104
  849. package/dist/sendbirdSelectors.js +0 -671
  850. package/dist/stringSet-fbd7c37c.js +0 -181
  851. package/dist/stringSet-fbd7c37c.js.map +0 -1
  852. package/dist/topics-d6268256.js +0 -13
  853. package/dist/topics-d6268256.js.map +0 -1
  854. package/dist/tslib.es6-96c33448.js +0 -92
  855. package/dist/tslib.es6-96c33448.js.map +0 -1
  856. package/dist/types-63b4e9db.js +0 -9
  857. package/dist/types-63b4e9db.js.map +0 -1
  858. package/dist/ui/Accordion.js +0 -64
  859. package/dist/ui/AccordionGroup.js +0 -26
  860. package/dist/ui/AdminMessage.js +0 -28
  861. package/dist/ui/Avatar.js +0 -216
  862. package/dist/ui/Badge.js +0 -28
  863. package/dist/ui/BottomSheet.js +0 -37
  864. package/dist/ui/Button.js +0 -84
  865. package/dist/ui/ChannelAvatar.js +0 -52
  866. package/dist/ui/ConnectionStatus.js +0 -25
  867. package/dist/ui/ContextMenu.js +0 -316
  868. package/dist/ui/DateSeparator.js +0 -30
  869. package/dist/ui/EmojiReactions.js +0 -134
  870. package/dist/ui/FileMessageItemBody.js +0 -58
  871. package/dist/ui/FileViewer.js +0 -128
  872. package/dist/ui/IconButton.js +0 -54
  873. package/dist/ui/ImageRenderer.js +0 -95
  874. package/dist/ui/Input.js +0 -45
  875. package/dist/ui/Label.js +0 -5
  876. package/dist/ui/LinkLabel.js +0 -49
  877. package/dist/ui/Loader.js +0 -28
  878. package/dist/ui/MentionLabel.js +0 -98
  879. package/dist/ui/MessageContent.js +0 -772
  880. package/dist/ui/MessageInput.js +0 -583
  881. package/dist/ui/MessageItemMenu.js +0 -157
  882. package/dist/ui/MessageItemReactionMenu.js +0 -107
  883. package/dist/ui/MessageSearchFileItem.js +0 -128
  884. package/dist/ui/MessageSearchItem.js +0 -96
  885. package/dist/ui/MessageStatus.js +0 -16
  886. package/dist/ui/Modal.js +0 -115
  887. package/dist/ui/OGMessageItemBody.js +0 -133
  888. package/dist/ui/OpenChannelAdminMessage.js +0 -20
  889. package/dist/ui/OpenChannelAvatar.js +0 -34
  890. package/dist/ui/OpenchannelConversationHeader.js +0 -66
  891. package/dist/ui/OpenchannelFileMessage.js +0 -258
  892. package/dist/ui/OpenchannelOGMessage.js +0 -374
  893. package/dist/ui/OpenchannelThumbnailMessage.js +0 -333
  894. package/dist/ui/OpenchannelUserMessage.js +0 -283
  895. package/dist/ui/PlaceHolder.js +0 -11
  896. package/dist/ui/PlaybackTime.js +0 -27
  897. package/dist/ui/QuoteMessage.js +0 -152
  898. package/dist/ui/QuoteMessageInput.js +0 -92
  899. package/dist/ui/ReactionBadge.js +0 -52
  900. package/dist/ui/ReactionButton.js +0 -38
  901. package/dist/ui/SortByRow.js +0 -41
  902. package/dist/ui/TextButton.js +0 -31
  903. package/dist/ui/TextMessageItemBody.js +0 -80
  904. package/dist/ui/ThreadReplies.js +0 -76
  905. package/dist/ui/ThumbnailMessageItemBody.js +0 -80
  906. package/dist/ui/Tooltip.js +0 -22
  907. package/dist/ui/TooltipWrapper.js +0 -49
  908. package/dist/ui/UnknownMessageItemBody.js +0 -37
  909. package/dist/ui/UserListItem.js +0 -127
  910. package/dist/ui/UserProfile.js +0 -85
  911. package/dist/ui/VoiceMessageItemBody.js +0 -110
  912. package/dist/ui/VoiceMessgeInput.js +0 -15
  913. package/dist/ui/Word.js +0 -109
  914. package/dist/useLongPress-96570844.js +0 -116
  915. package/dist/useLongPress-96570844.js.map +0 -1
  916. package/dist/useSendbirdStateContext.js +0 -20
  917. package/dist/utils/message/isVoiceMessage.js +0 -7
  918. package/dist/utils-273068f6.js +0 -4
  919. package/dist/utils-273068f6.js.map +0 -1
  920. package/dist/utils-5cfd2d4d.js +0 -34
  921. package/dist/utils-5cfd2d4d.js.map +0 -1
  922. package/dist/utils-aa379202.js +0 -30
  923. package/dist/utils-aa379202.js.map +0 -1
  924. package/dist/utils-feeb0ce4.js +0 -30
  925. package/dist/utils-feeb0ce4.js.map +0 -1
  926. package/dist/uuid-d8fc0ef1.js +0 -17
  927. package/dist/uuid-d8fc0ef1.js.map +0 -1
  928. package/dist/withSendbird.js +0 -24
  929. /package/{dist/App.js.map → App.js.map} +0 -0
  930. /package/{dist/Channel → Channel}/components/ChannelHeader.js.map +0 -0
  931. /package/{dist/Channel → Channel}/components/ChannelUI.js.map +0 -0
  932. /package/{dist/Channel → Channel}/components/FileViewer.js.map +0 -0
  933. /package/{dist/Channel → Channel}/components/FrozenNotification.js.map +0 -0
  934. /package/{dist/Channel → Channel}/components/Message.js.map +0 -0
  935. /package/{dist/Channel → Channel}/components/MessageInput.js.map +0 -0
  936. /package/{dist/Channel → Channel}/components/MessageList.js.map +0 -0
  937. /package/{dist/Channel → Channel}/components/RemoveMessageModal.js.map +0 -0
  938. /package/{dist/Channel → Channel}/components/SuggestedMentionList.js.map +0 -0
  939. /package/{dist/Channel → Channel}/components/TypingIndicator.js.map +0 -0
  940. /package/{dist/Channel → Channel}/components/UnreadCount.js.map +0 -0
  941. /package/{dist/Channel → Channel}/context.js.map +0 -0
  942. /package/{dist/Channel.js.map → Channel.js.map} +0 -0
  943. /package/{dist/ChannelList → ChannelList}/components/AddChannel.js.map +0 -0
  944. /package/{dist/ChannelList → ChannelList}/components/ChannelListHeader.js.map +0 -0
  945. /package/{dist/ChannelList → ChannelList}/components/ChannelListUI.js.map +0 -0
  946. /package/{dist/ChannelList → ChannelList}/components/ChannelPreview.js.map +0 -0
  947. /package/{dist/ChannelList → ChannelList}/components/ChannelPreviewAction.js.map +0 -0
  948. /package/{dist/ChannelList → ChannelList}/context.js.map +0 -0
  949. /package/{dist/ChannelList.js.map → ChannelList.js.map} +0 -0
  950. /package/{dist/ChannelSettings → ChannelSettings}/components/ChannelProfile.js.map +0 -0
  951. /package/{dist/ChannelSettings → ChannelSettings}/components/ChannelSettingsUI.js.map +0 -0
  952. /package/{dist/ChannelSettings → ChannelSettings}/components/EditDetailsModal.js.map +0 -0
  953. /package/{dist/ChannelSettings → ChannelSettings}/components/LeaveChannel.js.map +0 -0
  954. /package/{dist/ChannelSettings → ChannelSettings}/components/ModerationPanel.js.map +0 -0
  955. /package/{dist/ChannelSettings → ChannelSettings}/components/UserListItem.js.map +0 -0
  956. /package/{dist/ChannelSettings → ChannelSettings}/components/UserPanel.js.map +0 -0
  957. /package/{dist/ChannelSettings → ChannelSettings}/context.js.map +0 -0
  958. /package/{dist/ChannelSettings.js.map → ChannelSettings.js.map} +0 -0
  959. /package/{dist/CreateChannel → CreateChannel}/components/CreateChannelUI.js.map +0 -0
  960. /package/{dist/CreateChannel → CreateChannel}/components/InviteUsers.js.map +0 -0
  961. /package/{dist/CreateChannel → CreateChannel}/components/SelectChannelType.js.map +0 -0
  962. /package/{dist/CreateChannel → CreateChannel}/context.js.map +0 -0
  963. /package/{dist/CreateChannel.js.map → CreateChannel.js.map} +0 -0
  964. /package/{dist/CreateOpenChannel → CreateOpenChannel}/components/CreateOpenChannelUI.js.map +0 -0
  965. /package/{dist/CreateOpenChannel → CreateOpenChannel}/context.js.map +0 -0
  966. /package/{dist/CreateOpenChannel.js.map → CreateOpenChannel.js.map} +0 -0
  967. /package/{dist/EditUserProfile → EditUserProfile}/components/EditUserProfileUI.js.map +0 -0
  968. /package/{dist/EditUserProfile → EditUserProfile}/context.js +0 -0
  969. /package/{dist/EditUserProfile → EditUserProfile}/context.js.map +0 -0
  970. /package/{dist/EditUserProfile.js.map → EditUserProfile.js.map} +0 -0
  971. /package/{dist/MessageSearch → MessageSearch}/components/MessageSearchUI.js.map +0 -0
  972. /package/{dist/MessageSearch → MessageSearch}/context.js.map +0 -0
  973. /package/{dist/MessageSearch.js.map → MessageSearch.js.map} +0 -0
  974. /package/{dist/OpenChannel → OpenChannel}/components/FrozenChannelNotification.js.map +0 -0
  975. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelHeader.js.map +0 -0
  976. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelInput.js.map +0 -0
  977. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelMessage.js.map +0 -0
  978. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelMessageList.js.map +0 -0
  979. /package/{dist/OpenChannel → OpenChannel}/components/OpenChannelUI.js.map +0 -0
  980. /package/{dist/OpenChannel → OpenChannel}/context.js.map +0 -0
  981. /package/{dist/OpenChannel.js.map → OpenChannel.js.map} +0 -0
  982. /package/{dist/OpenChannelList → OpenChannelList}/components/OpenChannelListUI.js.map +0 -0
  983. /package/{dist/OpenChannelList → OpenChannelList}/components/OpenChannelPreview.js.map +0 -0
  984. /package/{dist/OpenChannelList → OpenChannelList}/context.js.map +0 -0
  985. /package/{dist/OpenChannelList.js.map → OpenChannelList.js.map} +0 -0
  986. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/EditDetailsModal.js.map +0 -0
  987. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/OpenChannelProfile.js.map +0 -0
  988. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/OpenChannelSettingsUI.js.map +0 -0
  989. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/OperatorUI.js.map +0 -0
  990. /package/{dist/OpenChannelSettings → OpenChannelSettings}/components/ParticipantUI.js.map +0 -0
  991. /package/{dist/OpenChannelSettings → OpenChannelSettings}/context.js.map +0 -0
  992. /package/{dist/OpenChannelSettings.js.map → OpenChannelSettings.js.map} +0 -0
  993. /package/{dist/SendbirdProvider.js.map → SendbirdProvider.js.map} +0 -0
  994. /package/{dist/Thread → Thread}/components/ParentMessageInfo.js.map +0 -0
  995. /package/{dist/Thread → Thread}/components/ParentMessageInfoItem.js.map +0 -0
  996. /package/{dist/Thread → Thread}/components/ThreadHeader.js.map +0 -0
  997. /package/{dist/Thread → Thread}/components/ThreadList.js.map +0 -0
  998. /package/{dist/Thread → Thread}/components/ThreadListItem.js.map +0 -0
  999. /package/{dist/Thread → Thread}/components/ThreadMessageInput.js.map +0 -0
  1000. /package/{dist/Thread → Thread}/components/ThreadUI.js.map +0 -0
  1001. /package/{dist/Thread → Thread}/context/types.js +0 -0
  1002. /package/{dist/Thread → Thread}/context/types.js.map +0 -0
  1003. /package/{dist/Thread → Thread}/context.js.map +0 -0
  1004. /package/{dist/Thread.js.map → Thread.js.map} +0 -0
  1005. /package/{dist/VoicePlayer → VoicePlayer}/context.js.map +0 -0
  1006. /package/{dist/VoicePlayer → VoicePlayer}/useVoicePlayer.js.map +0 -0
  1007. /package/{dist/VoiceRecorder → VoiceRecorder}/useVoiceRecorder.js.map +0 -0
  1008. /package/{dist/cjs → cjs}/App.js.map +0 -0
  1009. /package/{dist/cjs → cjs}/Channel/components/ChannelHeader.js.map +0 -0
  1010. /package/{dist/cjs → cjs}/Channel/components/ChannelUI.js.map +0 -0
  1011. /package/{dist/cjs → cjs}/Channel/components/FileViewer.js.map +0 -0
  1012. /package/{dist/cjs → cjs}/Channel/components/FrozenNotification.js.map +0 -0
  1013. /package/{dist/cjs → cjs}/Channel/components/Message.js.map +0 -0
  1014. /package/{dist/cjs → cjs}/Channel/components/MessageInput.js.map +0 -0
  1015. /package/{dist/cjs → cjs}/Channel/components/MessageList.js.map +0 -0
  1016. /package/{dist/cjs → cjs}/Channel/components/RemoveMessageModal.js.map +0 -0
  1017. /package/{dist/cjs → cjs}/Channel/components/SuggestedMentionList.js.map +0 -0
  1018. /package/{dist/cjs → cjs}/Channel/components/TypingIndicator.js.map +0 -0
  1019. /package/{dist/cjs → cjs}/Channel/components/UnreadCount.js.map +0 -0
  1020. /package/{dist/cjs → cjs}/Channel/context.js.map +0 -0
  1021. /package/{dist/cjs → cjs}/Channel.js.map +0 -0
  1022. /package/{dist/cjs → cjs}/ChannelList/components/AddChannel.js.map +0 -0
  1023. /package/{dist/cjs → cjs}/ChannelList/components/ChannelListHeader.js.map +0 -0
  1024. /package/{dist/cjs → cjs}/ChannelList/components/ChannelListUI.js.map +0 -0
  1025. /package/{dist/cjs → cjs}/ChannelList/components/ChannelPreview.js.map +0 -0
  1026. /package/{dist/cjs → cjs}/ChannelList/components/ChannelPreviewAction.js.map +0 -0
  1027. /package/{dist/cjs → cjs}/ChannelList/context.js.map +0 -0
  1028. /package/{dist/cjs → cjs}/ChannelList.js.map +0 -0
  1029. /package/{dist/cjs → cjs}/ChannelSettings/components/ChannelProfile.js.map +0 -0
  1030. /package/{dist/cjs → cjs}/ChannelSettings/components/ChannelSettingsUI.js.map +0 -0
  1031. /package/{dist/cjs → cjs}/ChannelSettings/components/EditDetailsModal.js.map +0 -0
  1032. /package/{dist/cjs → cjs}/ChannelSettings/components/LeaveChannel.js.map +0 -0
  1033. /package/{dist/cjs → cjs}/ChannelSettings/components/ModerationPanel.js.map +0 -0
  1034. /package/{dist/cjs → cjs}/ChannelSettings/components/UserListItem.js.map +0 -0
  1035. /package/{dist/cjs → cjs}/ChannelSettings/components/UserPanel.js.map +0 -0
  1036. /package/{dist/cjs → cjs}/ChannelSettings/context.js.map +0 -0
  1037. /package/{dist/cjs → cjs}/ChannelSettings.js.map +0 -0
  1038. /package/{dist/cjs → cjs}/CreateChannel/components/CreateChannelUI.js.map +0 -0
  1039. /package/{dist/cjs → cjs}/CreateChannel/components/InviteUsers.js.map +0 -0
  1040. /package/{dist/cjs → cjs}/CreateChannel/components/SelectChannelType.js.map +0 -0
  1041. /package/{dist/cjs → cjs}/CreateChannel/context.js.map +0 -0
  1042. /package/{dist/cjs → cjs}/CreateChannel.js.map +0 -0
  1043. /package/{dist/cjs → cjs}/CreateOpenChannel/components/CreateOpenChannelUI.js.map +0 -0
  1044. /package/{dist/cjs → cjs}/CreateOpenChannel/context.js.map +0 -0
  1045. /package/{dist/cjs → cjs}/CreateOpenChannel.js.map +0 -0
  1046. /package/{dist/cjs → cjs}/EditUserProfile/components/EditUserProfileUI.js.map +0 -0
  1047. /package/{dist/cjs → cjs}/EditUserProfile/context.js +0 -0
  1048. /package/{dist/cjs → cjs}/EditUserProfile/context.js.map +0 -0
  1049. /package/{dist/cjs → cjs}/EditUserProfile.js.map +0 -0
  1050. /package/{dist/cjs → cjs}/MessageSearch/components/MessageSearchUI.js.map +0 -0
  1051. /package/{dist/cjs → cjs}/MessageSearch/context.js.map +0 -0
  1052. /package/{dist/cjs → cjs}/MessageSearch.js.map +0 -0
  1053. /package/{dist/cjs → cjs}/OpenChannel/components/FrozenChannelNotification.js.map +0 -0
  1054. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelHeader.js.map +0 -0
  1055. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelInput.js.map +0 -0
  1056. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelMessage.js.map +0 -0
  1057. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelMessageList.js.map +0 -0
  1058. /package/{dist/cjs → cjs}/OpenChannel/components/OpenChannelUI.js.map +0 -0
  1059. /package/{dist/cjs → cjs}/OpenChannel/context.js.map +0 -0
  1060. /package/{dist/cjs → cjs}/OpenChannel.js.map +0 -0
  1061. /package/{dist/cjs → cjs}/OpenChannelList/components/OpenChannelListUI.js.map +0 -0
  1062. /package/{dist/cjs → cjs}/OpenChannelList/components/OpenChannelPreview.js.map +0 -0
  1063. /package/{dist/cjs → cjs}/OpenChannelList/context.js.map +0 -0
  1064. /package/{dist/cjs → cjs}/OpenChannelList.js.map +0 -0
  1065. /package/{dist/cjs → cjs}/OpenChannelSettings/components/EditDetailsModal.js.map +0 -0
  1066. /package/{dist/cjs → cjs}/OpenChannelSettings/components/OpenChannelProfile.js.map +0 -0
  1067. /package/{dist/cjs → cjs}/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +0 -0
  1068. /package/{dist/cjs → cjs}/OpenChannelSettings/components/OperatorUI.js.map +0 -0
  1069. /package/{dist/cjs → cjs}/OpenChannelSettings/components/ParticipantUI.js.map +0 -0
  1070. /package/{dist/cjs → cjs}/OpenChannelSettings/context.js.map +0 -0
  1071. /package/{dist/cjs → cjs}/OpenChannelSettings.js.map +0 -0
  1072. /package/{dist/cjs → cjs}/SendbirdProvider.js.map +0 -0
  1073. /package/{dist/cjs → cjs}/Thread/components/ParentMessageInfo.js.map +0 -0
  1074. /package/{dist/cjs → cjs}/Thread/components/ParentMessageInfoItem.js.map +0 -0
  1075. /package/{dist/cjs → cjs}/Thread/components/ThreadHeader.js.map +0 -0
  1076. /package/{dist/cjs → cjs}/Thread/components/ThreadList.js.map +0 -0
  1077. /package/{dist/cjs → cjs}/Thread/components/ThreadListItem.js.map +0 -0
  1078. /package/{dist/cjs → cjs}/Thread/components/ThreadMessageInput.js.map +0 -0
  1079. /package/{dist/cjs → cjs}/Thread/components/ThreadUI.js.map +0 -0
  1080. /package/{dist/cjs → cjs}/Thread/context/types.js +0 -0
  1081. /package/{dist/cjs → cjs}/Thread/context/types.js.map +0 -0
  1082. /package/{dist/cjs → cjs}/Thread/context.js.map +0 -0
  1083. /package/{dist/cjs → cjs}/Thread.js.map +0 -0
  1084. /package/{dist/cjs → cjs}/VoicePlayer/context.js.map +0 -0
  1085. /package/{dist/cjs → cjs}/VoicePlayer/useVoicePlayer.js.map +0 -0
  1086. /package/{dist/cjs → cjs}/VoiceRecorder/useVoiceRecorder.js.map +0 -0
  1087. /package/{dist/cjs → cjs}/handlers/ConnectionHandler.js +0 -0
  1088. /package/{dist/cjs → cjs}/handlers/ConnectionHandler.js.map +0 -0
  1089. /package/{dist/cjs → cjs}/handlers/GroupChannelHandler.js +0 -0
  1090. /package/{dist/cjs → cjs}/handlers/GroupChannelHandler.js.map +0 -0
  1091. /package/{dist/cjs → cjs}/handlers/OpenChannelHandler.js +0 -0
  1092. /package/{dist/cjs → cjs}/handlers/OpenChannelHandler.js.map +0 -0
  1093. /package/{dist/cjs → cjs}/handlers/SessionHandler.js +0 -0
  1094. /package/{dist/cjs → cjs}/handlers/SessionHandler.js.map +0 -0
  1095. /package/{dist/cjs → cjs}/handlers/UserEventHandler.js +0 -0
  1096. /package/{dist/cjs → cjs}/handlers/UserEventHandler.js.map +0 -0
  1097. /package/{dist/cjs → cjs}/index.js.map +0 -0
  1098. /package/{dist/cjs → cjs}/sendbirdSelectors.js.map +0 -0
  1099. /package/{dist/cjs → cjs}/ui/Accordion.js.map +0 -0
  1100. /package/{dist/cjs → cjs}/ui/AccordionGroup.js.map +0 -0
  1101. /package/{dist/cjs → cjs}/ui/AdminMessage.js.map +0 -0
  1102. /package/{dist/cjs → cjs}/ui/Avatar.js.map +0 -0
  1103. /package/{dist/cjs → cjs}/ui/Badge.js.map +0 -0
  1104. /package/{dist/cjs → cjs}/ui/BottomSheet.js.map +0 -0
  1105. /package/{dist/cjs → cjs}/ui/Button.js.map +0 -0
  1106. /package/{dist/cjs → cjs}/ui/ChannelAvatar.js.map +0 -0
  1107. /package/{dist/cjs → cjs}/ui/Checkbox.js +0 -0
  1108. /package/{dist/cjs → cjs}/ui/Checkbox.js.map +0 -0
  1109. /package/{dist/cjs → cjs}/ui/ConnectionStatus.js.map +0 -0
  1110. /package/{dist/cjs → cjs}/ui/ContextMenu.js.map +0 -0
  1111. /package/{dist/cjs → cjs}/ui/DateSeparator.js.map +0 -0
  1112. /package/{dist/cjs → cjs}/ui/EmojiReactions.js.map +0 -0
  1113. /package/{dist/cjs → cjs}/ui/FileMessageItemBody.js.map +0 -0
  1114. /package/{dist/cjs → cjs}/ui/FileViewer.js.map +0 -0
  1115. /package/{dist/cjs → cjs}/ui/Icon.js +0 -0
  1116. /package/{dist/cjs → cjs}/ui/Icon.js.map +0 -0
  1117. /package/{dist/cjs → cjs}/ui/IconButton.js.map +0 -0
  1118. /package/{dist/cjs → cjs}/ui/ImageRenderer.js.map +0 -0
  1119. /package/{dist/cjs → cjs}/ui/Input.js.map +0 -0
  1120. /package/{dist/cjs → cjs}/ui/Label.js.map +0 -0
  1121. /package/{dist/cjs → cjs}/ui/LinkLabel.js.map +0 -0
  1122. /package/{dist/cjs → cjs}/ui/Loader.js.map +0 -0
  1123. /package/{dist/cjs → cjs}/ui/MentionLabel.js.map +0 -0
  1124. /package/{dist/cjs → cjs}/ui/MentionUserLabel.js +0 -0
  1125. /package/{dist/cjs → cjs}/ui/MentionUserLabel.js.map +0 -0
  1126. /package/{dist/cjs → cjs}/ui/MessageContent.js.map +0 -0
  1127. /package/{dist/cjs → cjs}/ui/MessageInput.js.map +0 -0
  1128. /package/{dist/cjs → cjs}/ui/MessageItemMenu.js.map +0 -0
  1129. /package/{dist/cjs → cjs}/ui/MessageItemReactionMenu.js.map +0 -0
  1130. /package/{dist/cjs → cjs}/ui/MessageSearchFileItem.js.map +0 -0
  1131. /package/{dist/cjs → cjs}/ui/MessageSearchItem.js.map +0 -0
  1132. /package/{dist/cjs → cjs}/ui/MessageStatus.js.map +0 -0
  1133. /package/{dist/cjs → cjs}/ui/Modal.js.map +0 -0
  1134. /package/{dist/cjs → cjs}/ui/MutedAvatarOverlay.js +0 -0
  1135. /package/{dist/cjs → cjs}/ui/MutedAvatarOverlay.js.map +0 -0
  1136. /package/{dist/cjs → cjs}/ui/OGMessageItemBody.js.map +0 -0
  1137. /package/{dist/cjs → cjs}/ui/OpenChannelAdminMessage.js.map +0 -0
  1138. /package/{dist/cjs → cjs}/ui/OpenChannelAvatar.js.map +0 -0
  1139. /package/{dist/cjs → cjs}/ui/OpenchannelConversationHeader.js.map +0 -0
  1140. /package/{dist/cjs → cjs}/ui/OpenchannelFileMessage.js.map +0 -0
  1141. /package/{dist/cjs → cjs}/ui/OpenchannelOGMessage.js.map +0 -0
  1142. /package/{dist/cjs → cjs}/ui/OpenchannelThumbnailMessage.js.map +0 -0
  1143. /package/{dist/cjs → cjs}/ui/OpenchannelUserMessage.js.map +0 -0
  1144. /package/{dist/cjs → cjs}/ui/PlaceHolder.js.map +0 -0
  1145. /package/{dist/cjs → cjs}/ui/PlaybackTime.js.map +0 -0
  1146. /package/{dist/cjs → cjs}/ui/ProgressBar.js +0 -0
  1147. /package/{dist/cjs → cjs}/ui/ProgressBar.js.map +0 -0
  1148. /package/{dist/cjs → cjs}/ui/QuoteMessage.js.map +0 -0
  1149. /package/{dist/cjs → cjs}/ui/QuoteMessageInput.js.map +0 -0
  1150. /package/{dist/cjs → cjs}/ui/ReactionBadge.js.map +0 -0
  1151. /package/{dist/cjs → cjs}/ui/ReactionButton.js.map +0 -0
  1152. /package/{dist/cjs → cjs}/ui/SortByRow.js.map +0 -0
  1153. /package/{dist/cjs → cjs}/ui/TextButton.js.map +0 -0
  1154. /package/{dist/cjs → cjs}/ui/TextMessageItemBody.js.map +0 -0
  1155. /package/{dist/cjs → cjs}/ui/ThreadReplies.js.map +0 -0
  1156. /package/{dist/cjs → cjs}/ui/ThumbnailMessageItemBody.js.map +0 -0
  1157. /package/{dist/cjs → cjs}/ui/Tooltip.js.map +0 -0
  1158. /package/{dist/cjs → cjs}/ui/TooltipWrapper.js.map +0 -0
  1159. /package/{dist/cjs → cjs}/ui/UnknownMessageItemBody.js.map +0 -0
  1160. /package/{dist/cjs → cjs}/ui/UserListItem.js.map +0 -0
  1161. /package/{dist/cjs → cjs}/ui/UserProfile.js.map +0 -0
  1162. /package/{dist/cjs → cjs}/ui/VoiceMessageItemBody.js.map +0 -0
  1163. /package/{dist/cjs → cjs}/ui/VoiceMessgeInput.js.map +0 -0
  1164. /package/{dist/cjs → cjs}/ui/Word.js.map +0 -0
  1165. /package/{dist/cjs → cjs}/useSendbirdStateContext.js.map +0 -0
  1166. /package/{dist/cjs → cjs}/utils/message/getOutgoingMessageState.js +0 -0
  1167. /package/{dist/cjs → cjs}/utils/message/getOutgoingMessageState.js.map +0 -0
  1168. /package/{dist/cjs → cjs}/utils/message/isVoiceMessage.js.map +0 -0
  1169. /package/{dist/cjs → cjs}/withSendbird.js.map +0 -0
  1170. /package/{dist/handlers → handlers}/ConnectionHandler.js +0 -0
  1171. /package/{dist/handlers → handlers}/ConnectionHandler.js.map +0 -0
  1172. /package/{dist/handlers → handlers}/GroupChannelHandler.js +0 -0
  1173. /package/{dist/handlers → handlers}/GroupChannelHandler.js.map +0 -0
  1174. /package/{dist/handlers → handlers}/OpenChannelHandler.js +0 -0
  1175. /package/{dist/handlers → handlers}/OpenChannelHandler.js.map +0 -0
  1176. /package/{dist/handlers → handlers}/SessionHandler.js +0 -0
  1177. /package/{dist/handlers → handlers}/SessionHandler.js.map +0 -0
  1178. /package/{dist/handlers → handlers}/UserEventHandler.js +0 -0
  1179. /package/{dist/handlers → handlers}/UserEventHandler.js.map +0 -0
  1180. /package/{dist/index.js.map → index.js.map} +0 -0
  1181. /package/{dist/sendbirdSelectors.js.map → sendbirdSelectors.js.map} +0 -0
  1182. /package/{dist/ui → ui}/Accordion.js.map +0 -0
  1183. /package/{dist/ui → ui}/AccordionGroup.js.map +0 -0
  1184. /package/{dist/ui → ui}/AdminMessage.js.map +0 -0
  1185. /package/{dist/ui → ui}/Avatar.js.map +0 -0
  1186. /package/{dist/ui → ui}/Badge.js.map +0 -0
  1187. /package/{dist/ui → ui}/BottomSheet.js.map +0 -0
  1188. /package/{dist/ui → ui}/Button.js.map +0 -0
  1189. /package/{dist/ui → ui}/ChannelAvatar.js.map +0 -0
  1190. /package/{dist/ui → ui}/Checkbox.js +0 -0
  1191. /package/{dist/ui → ui}/Checkbox.js.map +0 -0
  1192. /package/{dist/ui → ui}/ConnectionStatus.js.map +0 -0
  1193. /package/{dist/ui → ui}/ContextMenu.js.map +0 -0
  1194. /package/{dist/ui → ui}/DateSeparator.js.map +0 -0
  1195. /package/{dist/ui → ui}/EmojiReactions.js.map +0 -0
  1196. /package/{dist/ui → ui}/FileMessageItemBody.js.map +0 -0
  1197. /package/{dist/ui → ui}/FileViewer.js.map +0 -0
  1198. /package/{dist/ui → ui}/Icon.js +0 -0
  1199. /package/{dist/ui → ui}/Icon.js.map +0 -0
  1200. /package/{dist/ui → ui}/IconButton.js.map +0 -0
  1201. /package/{dist/ui → ui}/ImageRenderer.js.map +0 -0
  1202. /package/{dist/ui → ui}/Input.js.map +0 -0
  1203. /package/{dist/ui → ui}/Label.js.map +0 -0
  1204. /package/{dist/ui → ui}/LinkLabel.js.map +0 -0
  1205. /package/{dist/ui → ui}/Loader.js.map +0 -0
  1206. /package/{dist/ui → ui}/MentionLabel.js.map +0 -0
  1207. /package/{dist/ui → ui}/MentionUserLabel.js +0 -0
  1208. /package/{dist/ui → ui}/MentionUserLabel.js.map +0 -0
  1209. /package/{dist/ui → ui}/MessageContent.js.map +0 -0
  1210. /package/{dist/ui → ui}/MessageInput.js.map +0 -0
  1211. /package/{dist/ui → ui}/MessageItemMenu.js.map +0 -0
  1212. /package/{dist/ui → ui}/MessageItemReactionMenu.js.map +0 -0
  1213. /package/{dist/ui → ui}/MessageSearchFileItem.js.map +0 -0
  1214. /package/{dist/ui → ui}/MessageSearchItem.js.map +0 -0
  1215. /package/{dist/ui → ui}/MessageStatus.js.map +0 -0
  1216. /package/{dist/ui → ui}/Modal.js.map +0 -0
  1217. /package/{dist/ui → ui}/MutedAvatarOverlay.js +0 -0
  1218. /package/{dist/ui → ui}/MutedAvatarOverlay.js.map +0 -0
  1219. /package/{dist/ui → ui}/OGMessageItemBody.js.map +0 -0
  1220. /package/{dist/ui → ui}/OpenChannelAdminMessage.js.map +0 -0
  1221. /package/{dist/ui → ui}/OpenChannelAvatar.js.map +0 -0
  1222. /package/{dist/ui → ui}/OpenchannelConversationHeader.js.map +0 -0
  1223. /package/{dist/ui → ui}/OpenchannelFileMessage.js.map +0 -0
  1224. /package/{dist/ui → ui}/OpenchannelOGMessage.js.map +0 -0
  1225. /package/{dist/ui → ui}/OpenchannelThumbnailMessage.js.map +0 -0
  1226. /package/{dist/ui → ui}/OpenchannelUserMessage.js.map +0 -0
  1227. /package/{dist/ui → ui}/PlaceHolder.js.map +0 -0
  1228. /package/{dist/ui → ui}/PlaybackTime.js.map +0 -0
  1229. /package/{dist/ui → ui}/ProgressBar.js +0 -0
  1230. /package/{dist/ui → ui}/ProgressBar.js.map +0 -0
  1231. /package/{dist/ui → ui}/QuoteMessage.js.map +0 -0
  1232. /package/{dist/ui → ui}/QuoteMessageInput.js.map +0 -0
  1233. /package/{dist/ui → ui}/ReactionBadge.js.map +0 -0
  1234. /package/{dist/ui → ui}/ReactionButton.js.map +0 -0
  1235. /package/{dist/ui → ui}/SortByRow.js.map +0 -0
  1236. /package/{dist/ui → ui}/TextButton.js.map +0 -0
  1237. /package/{dist/ui → ui}/TextMessageItemBody.js.map +0 -0
  1238. /package/{dist/ui → ui}/ThreadReplies.js.map +0 -0
  1239. /package/{dist/ui → ui}/ThumbnailMessageItemBody.js.map +0 -0
  1240. /package/{dist/ui → ui}/Tooltip.js.map +0 -0
  1241. /package/{dist/ui → ui}/TooltipWrapper.js.map +0 -0
  1242. /package/{dist/ui → ui}/UnknownMessageItemBody.js.map +0 -0
  1243. /package/{dist/ui → ui}/UserListItem.js.map +0 -0
  1244. /package/{dist/ui → ui}/UserProfile.js.map +0 -0
  1245. /package/{dist/ui → ui}/VoiceMessageItemBody.js.map +0 -0
  1246. /package/{dist/ui → ui}/VoiceMessgeInput.js.map +0 -0
  1247. /package/{dist/ui → ui}/Word.js.map +0 -0
  1248. /package/{dist/useSendbirdStateContext.js.map → useSendbirdStateContext.js.map} +0 -0
  1249. /package/{dist/utils → utils}/message/getOutgoingMessageState.js +0 -0
  1250. /package/{dist/utils → utils}/message/getOutgoingMessageState.js.map +0 -0
  1251. /package/{dist/utils → utils}/message/isVoiceMessage.js.map +0 -0
  1252. /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-09f67c7e.js';
3
+ import useSendbirdStateContext from './useSendbirdStateContext.js';
4
+ import { f as format } from './index-161c05da.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-e015bff4.js';
6
+ import { a as getSendingMessageStatus, b as isReadMessage, c as filterMessageListParams } from './index-d7a0c94d.js';
7
+ import './utils/message/getOutgoingMessageState.js';
8
+ import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-b78f44f0.js';
9
+ import { c as compareIds } from './compareIds-83f851ce.js';
10
+ import { N as NEXT_RESULT_SIZE, P as PREV_RESULT_SIZE } from './const-ca46adf6.js';
11
+ import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
12
+ import { u as uuidv4 } from './uuid-3e094678.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-243f8df6.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-07627f89.js.map