@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,2000 @@
1
+ import React__default, { useEffect, useCallback, useState, useReducer, useRef, useMemo } from 'react';
2
+ import { f as format } from './index-161c05da.js';
3
+ import { U as UserProfileProvider } from './UserProfileContext-09f67c7e.js';
4
+ import { _ as __assign, a as __spreadArray } from './tslib.es6-ce2a9c4a.js';
5
+ import { c as compareIds } from './compareIds-83f851ce.js';
6
+ 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';
7
+ import { ChannelType } from '@sendbird/chat';
8
+ import { OpenChannelHandler } from '@sendbird/chat/openChannel';
9
+ import { u as uuidv4 } from './uuid-3e094678.js';
10
+ import useSendbirdStateContext from './useSendbirdStateContext.js';
11
+
12
+ var getMessageCreatedAt = function (message) {
13
+ return format(message.createdAt, 'p');
14
+ };
15
+ var shouldFetchMore = function (messageLength, maxMessages) {
16
+ if (typeof maxMessages !== 'number') {
17
+ return true;
18
+ }
19
+
20
+ if (typeof maxMessages === 'number' && maxMessages > messageLength) {
21
+ return true;
22
+ }
23
+
24
+ return false;
25
+ };
26
+ var scrollIntoLast = function (initialTry, scrollRef) {
27
+ if (initialTry === void 0) {
28
+ initialTry = 0;
29
+ }
30
+
31
+ var MAX_TRIES = 10;
32
+ var currentTry = initialTry;
33
+
34
+ if (currentTry > MAX_TRIES) {
35
+ return;
36
+ }
37
+
38
+ try {
39
+ var scrollDOM = (scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) || document.querySelector('.sendbird-openchannel-conversation-scroll__container__item-container'); // eslint-disable-next-line no-multi-assign
40
+
41
+ scrollDOM.scrollTop = scrollDOM.scrollHeight;
42
+ } catch (error) {
43
+ setTimeout(function () {
44
+ scrollIntoLast(currentTry + 1, scrollRef);
45
+ }, 500 * currentTry);
46
+ }
47
+ };
48
+ var isSameGroup = function (message, comparingMessage) {
49
+ var _a, _b, _c, _d;
50
+
51
+ if (!(message && comparingMessage && (message === null || message === void 0 ? void 0 : message.messageType) && message.messageType !== 'admin' && (comparingMessage === null || comparingMessage === void 0 ? void 0 : comparingMessage.messageType) && comparingMessage.messageType !== 'admin' && (message === null || message === void 0 ? void 0 : message.sender) && (comparingMessage === null || comparingMessage === void 0 ? void 0 : comparingMessage.sender) && (message === null || message === void 0 ? void 0 : message.createdAt) && (comparingMessage === null || comparingMessage === void 0 ? void 0 : comparingMessage.createdAt) && ((_a = message === null || message === void 0 ? void 0 : message.sender) === null || _a === void 0 ? void 0 : _a.userId) && ((_b = comparingMessage === null || comparingMessage === void 0 ? void 0 : comparingMessage.sender) === null || _b === void 0 ? void 0 : _b.userId))) {
52
+ return false;
53
+ } // to fix typecasting
54
+
55
+
56
+ var message_ = message;
57
+ var comparingMessage_ = comparingMessage;
58
+ return (message_ === null || message_ === void 0 ? void 0 : message_.sendingStatus) === (comparingMessage_ === null || comparingMessage_ === void 0 ? void 0 : comparingMessage_.sendingStatus) && ((_c = message_ === null || message_ === void 0 ? void 0 : message_.sender) === null || _c === void 0 ? void 0 : _c.userId) === ((_d = comparingMessage_ === null || comparingMessage_ === void 0 ? void 0 : comparingMessage_.sender) === null || _d === void 0 ? void 0 : _d.userId) && getMessageCreatedAt(message) === getMessageCreatedAt(comparingMessage);
59
+ };
60
+ var compareMessagesForGrouping = function (prevMessage, currMessage, nextMessage) {
61
+ return [isSameGroup(prevMessage, currMessage), isSameGroup(currMessage, nextMessage)];
62
+ };
63
+ var kFormatter = function (num) {
64
+ if (Math.abs(num) > 999999) {
65
+ return "".concat((Math.abs(num) / 1000000).toFixed(1), "M");
66
+ }
67
+
68
+ if (Math.abs(num) > 999) {
69
+ return "".concat((Math.abs(num) / 1000).toFixed(1), "K");
70
+ }
71
+
72
+ return "".concat(num);
73
+ };
74
+ var isOperator = function (openChannel, userId) {
75
+ var operators = openChannel === null || openChannel === void 0 ? void 0 : openChannel.operators;
76
+
77
+ if (operators.map(function (operator) {
78
+ return operator.userId;
79
+ }).indexOf(userId) < 0) {
80
+ return false;
81
+ }
82
+
83
+ return true;
84
+ };
85
+ var isDisabledBecauseFrozen = function (openChannel, userId) {
86
+ var isFrozen = openChannel === null || openChannel === void 0 ? void 0 : openChannel.isFrozen;
87
+ return isFrozen && !isOperator(openChannel, userId);
88
+ };
89
+ var isDisabledBecauseMuted = function (mutedParticipantIds, userId) {
90
+ return mutedParticipantIds.indexOf(userId) > -1;
91
+ };
92
+ var fetchWithListQuery = function (listQuery, logger, eachQueryNextCallback) {
93
+ var fetchList = function (query) {
94
+ var hasNext = query.hasNext;
95
+
96
+ if (hasNext) {
97
+ query.next().then(function (users) {
98
+ eachQueryNextCallback(users);
99
+ fetchList(query);
100
+ }).catch(function (error) {
101
+ logger.warning('OpenChannel | FetchUserList failed', error);
102
+ });
103
+ } else {
104
+ logger.info('OpenChannel | FetchUserList finished');
105
+ }
106
+ };
107
+
108
+ logger.info('OpenChannel | FetchUserList start', listQuery);
109
+ fetchList(listQuery);
110
+ };
111
+ var pxToNumber = function (px) {
112
+ if (typeof px === 'number') {
113
+ return px;
114
+ }
115
+
116
+ if (typeof px === 'string') {
117
+ var parsed = Number.parseFloat(px);
118
+
119
+ if (!Number.isNaN(parsed)) {
120
+ return parsed;
121
+ }
122
+ }
123
+
124
+ return null;
125
+ };
126
+
127
+ var SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';
128
+ var SET_CHANNEL_INVALID = 'SET_CHANNEL_INVALID';
129
+ var RESET_MESSAGES = 'RESET_MESSAGES';
130
+ var EXIT_CURRENT_CHANNEL = 'EXIT_CURRENT_CHANNEL';
131
+ var GET_PREV_MESSAGES_START = 'GET_PREV_MESSAGES_START';
132
+ var GET_PREV_MESSAGES_SUCESS = 'GET_PREV_MESSAGES_SUCESS';
133
+ var GET_PREV_MESSAGES_FAIL = 'GET_PREV_MESSAGES_FAIL';
134
+ var SENDING_MESSAGE_FAILED = 'SENDING_MESSAGE_FAILED';
135
+ var SENDING_MESSAGE_SUCCEEDED = 'SENDING_MESSAGE_SUCCEEDED';
136
+ var SENDING_MESSAGE_START = 'SENDING_MESSAGE_START';
137
+ var RESENDING_MESSAGE_START = 'RESENDING_MESSAGE_START';
138
+ var FETCH_PARTICIPANT_LIST = 'FETCH_PARTICIPANT_LIST';
139
+ var FETCH_BANNED_USER_LIST = 'FETCH_BANNED_USER_LIST';
140
+ var FETCH_MUTED_USER_LIST = 'FETCH_MUTED_USER_LIST';
141
+ var TRIM_MESSAGE_LIST = 'TRIM_MESSAGE_LIST'; // event handlers
142
+
143
+ var ON_MESSAGE_RECEIVED = 'ON_MESSAGE_RECEIVED';
144
+ var ON_MESSAGE_UPDATED = 'ON_MESSAGE_UPDATED';
145
+ var ON_MESSAGE_DELETED = 'ON_MESSAGE_DELETED';
146
+ var ON_MESSAGE_DELETED_BY_REQ_ID = 'ON_MESSAGE_DELETED_BY_REQ_ID';
147
+ var ON_OPERATOR_UPDATED = 'ON_OPERATOR_UPDATED';
148
+ var ON_USER_ENTERED = 'ON_USER_ENTERED';
149
+ var ON_USER_EXITED = 'ON_USER_EXITED';
150
+ var ON_USER_MUTED = 'ON_USER_MUTED';
151
+ var ON_USER_UNMUTED = 'ON_USER_UNMUTED';
152
+ var ON_USER_BANNED = 'ON_USER_BANNED';
153
+ var ON_USER_UNBANNED = 'ON_USER_UNBANNED';
154
+ var ON_CHANNEL_FROZEN = 'ON_CHANNEL_FROZEN';
155
+ var ON_CHANNEL_UNFROZEN = 'ON_CHANNEL_UNFROZEN';
156
+ var ON_CHANNEL_CHANGED = 'ON_CHANNEL_CHANGED';
157
+ var ON_CHANNEL_DELETED = 'ON_CHANNEL_DELETED';
158
+ var ON_META_DATA_CREATED = 'ON_META_DATA_CREATED';
159
+ var ON_META_DATA_UPDATED = 'ON_META_DATA_UPDATED';
160
+ var ON_META_DATA_DELETED = 'ON_META_DATA_DELETED';
161
+ var ON_META_COUNTERS_CREATED = 'ON_META_COUNTERS_CREATED';
162
+ var ON_META_COUNTERS_UPDATED = 'ON_META_COUNTERS_UPDATED';
163
+ var ON_META_COUNTERS_DELETED = 'ON_META_COUNTERS_DELETED';
164
+ var ON_MENTION_RECEIVED = 'ON_MENTION_RECEIVED';
165
+
166
+ function reducer(state, action) {
167
+ var _a, _b, _c;
168
+
169
+ switch (action.type) {
170
+ case RESET_MESSAGES:
171
+ {
172
+ return __assign(__assign({}, state), {
173
+ allMessages: []
174
+ });
175
+ }
176
+
177
+ case EXIT_CURRENT_CHANNEL:
178
+ {
179
+ if (((_a = action.payload) === null || _a === void 0 ? void 0 : _a.url) === ((_b = state.currentOpenChannel) === null || _b === void 0 ? void 0 : _b.url)) {
180
+ return __assign(__assign({}, state), {
181
+ currentOpenChannel: null
182
+ });
183
+ }
184
+
185
+ return state;
186
+ }
187
+
188
+ case SET_CURRENT_CHANNEL:
189
+ {
190
+ var gottenChannel = action.payload;
191
+ var operators = gottenChannel.operators;
192
+
193
+ if (!state.isInvalid && state.currentOpenChannel && state.currentOpenChannel.url && state.currentOpenChannel.url === gottenChannel.url) {
194
+ return state;
195
+ }
196
+
197
+ return __assign(__assign({}, state), {
198
+ currentOpenChannel: gottenChannel,
199
+ isInvalid: false,
200
+ operators: operators,
201
+ participants: operators,
202
+ bannedParticipantIds: [],
203
+ mutedParticipantIds: []
204
+ });
205
+ }
206
+
207
+ case SET_CHANNEL_INVALID:
208
+ {
209
+ return __assign(__assign({}, state), {
210
+ isInvalid: true
211
+ });
212
+ }
213
+
214
+ case GET_PREV_MESSAGES_START:
215
+ {
216
+ return __assign(__assign({}, state), {
217
+ loading: true
218
+ });
219
+ }
220
+
221
+ case GET_PREV_MESSAGES_SUCESS:
222
+ case GET_PREV_MESSAGES_FAIL:
223
+ {
224
+ var isFailed = action.type === GET_PREV_MESSAGES_FAIL;
225
+ var _d = action.payload,
226
+ _e = _d.currentOpenChannel,
227
+ currentOpenChannel = _e === void 0 ? {} : _e,
228
+ _f = _d.messages,
229
+ messages = _f === void 0 ? [] : _f,
230
+ hasMore = _d.hasMore,
231
+ lastMessageTimestamp = _d.lastMessageTimestamp;
232
+ var actionChannelUrl = currentOpenChannel.url;
233
+ var receivedMessages_1 = isFailed ? [] : messages;
234
+
235
+ var _hasMore = isFailed ? false : hasMore;
236
+
237
+ var _lastMessageTimestamp = isFailed ? 0 : lastMessageTimestamp;
238
+
239
+ var stateChannel = state.currentOpenChannel;
240
+ var stateChannelUrl = stateChannel.url;
241
+
242
+ if (actionChannelUrl !== stateChannelUrl) {
243
+ return state;
244
+ }
245
+
246
+ var filteredAllMessages = state.allMessages.filter(function (message) {
247
+ return !receivedMessages_1.find(function (_a) {
248
+ var messageId = _a.messageId;
249
+ return compareIds(messageId, message.messageId);
250
+ });
251
+ });
252
+ return __assign(__assign({}, state), {
253
+ loading: false,
254
+ initialized: true,
255
+ hasMore: _hasMore,
256
+ lastMessageTimestamp: _lastMessageTimestamp,
257
+ allMessages: __spreadArray(__spreadArray([], receivedMessages_1, true), filteredAllMessages, true)
258
+ });
259
+ }
260
+
261
+ case SENDING_MESSAGE_START:
262
+ {
263
+ var _g = action.payload,
264
+ message_1 = _g.message,
265
+ channel = _g.channel;
266
+
267
+ if ((channel === null || channel === void 0 ? void 0 : channel.url) !== state.currentOpenChannel.url || state.allMessages.some(function (m) {
268
+ return m.reqId === message_1.reqId;
269
+ }) // Handing failed first than sending start issue
270
+ ) {
271
+ return state;
272
+ }
273
+
274
+ return __assign(__assign({}, state), {
275
+ allMessages: __spreadArray(__spreadArray([], state.allMessages, true), [message_1], false)
276
+ });
277
+ }
278
+
279
+ case SENDING_MESSAGE_SUCCEEDED:
280
+ {
281
+ var sentMessage_1 = action.payload;
282
+ var newMessages = state.allMessages.map(function (m) {
283
+ return compareIds(m.reqId, sentMessage_1.reqId) ? sentMessage_1 : m;
284
+ });
285
+ return __assign(__assign({}, state), {
286
+ allMessages: newMessages
287
+ });
288
+ }
289
+
290
+ case SENDING_MESSAGE_FAILED:
291
+ {
292
+ var sentMessage_2 = action.payload;
293
+ sentMessage_2.sendingStatus = 'failed';
294
+
295
+ if (!state.allMessages.some(function (m) {
296
+ return (m === null || m === void 0 ? void 0 : m.reqId) === (sentMessage_2 === null || sentMessage_2 === void 0 ? void 0 : sentMessage_2.reqId);
297
+ })) {
298
+ // Handling failed first than sending start issue
299
+ return __assign(__assign({}, state), {
300
+ allMessages: __spreadArray(__spreadArray([], state.allMessages.filter(function (m) {
301
+ return !compareIds(m.reqId, sentMessage_2);
302
+ }), true), [sentMessage_2], false)
303
+ });
304
+ } else {
305
+ return __assign(__assign({}, state), {
306
+ allMessages: state.allMessages.map(function (m) {
307
+ return compareIds(m.reqId, sentMessage_2.reqId) ? sentMessage_2 : m;
308
+ })
309
+ });
310
+ }
311
+ }
312
+
313
+ case TRIM_MESSAGE_LIST:
314
+ {
315
+ var allMessages = state.allMessages;
316
+ var messageLimit = (_c = action.payload) === null || _c === void 0 ? void 0 : _c.messageLimit;
317
+
318
+ if (messageLimit && messageLimit > 0 && (allMessages === null || allMessages === void 0 ? void 0 : allMessages.length) > messageLimit) {
319
+ var sliceAt = allMessages.length - messageLimit;
320
+ return __assign(__assign({}, state), {
321
+ allMessages: allMessages.slice(sliceAt)
322
+ });
323
+ }
324
+
325
+ return state;
326
+ }
327
+
328
+ case RESENDING_MESSAGE_START:
329
+ {
330
+ var eventedChannel = action.payload.channel;
331
+ var resentMessage_1 = action.payload.message;
332
+
333
+ if (eventedChannel.url !== state.currentOpenChannel.url) {
334
+ return state;
335
+ }
336
+
337
+ return __assign(__assign({}, state), {
338
+ allMessages: state.allMessages.map(function (m) {
339
+ return compareIds(m.reqId, resentMessage_1.reqId) ? resentMessage_1 : m;
340
+ })
341
+ });
342
+ }
343
+
344
+ case FETCH_PARTICIPANT_LIST:
345
+ {
346
+ var eventedChannel = action.payload.channel;
347
+ var fetchedParticipantList = action.payload.users;
348
+
349
+ if (eventedChannel.url !== state.currentOpenChannel.url) {
350
+ return state;
351
+ }
352
+
353
+ return __assign(__assign({}, state), {
354
+ participants: __spreadArray(__spreadArray([], state.participants, true), fetchedParticipantList, true)
355
+ });
356
+ }
357
+
358
+ case FETCH_BANNED_USER_LIST:
359
+ {
360
+ var eventedChannel = action.payload.channel;
361
+ var fetchedBannedUserList = action.payload.users;
362
+
363
+ if (eventedChannel.url !== state.currentOpenChannel.url || !fetchedBannedUserList.every(function (user) {
364
+ return typeof user.userId === 'string';
365
+ })) {
366
+ return state;
367
+ }
368
+
369
+ return __assign(__assign({}, state), {
370
+ bannedParticipantIds: __spreadArray(__spreadArray([], state.bannedParticipantIds, true), fetchedBannedUserList.map(function (user) {
371
+ return user.userId;
372
+ }), true)
373
+ });
374
+ }
375
+
376
+ case FETCH_MUTED_USER_LIST:
377
+ {
378
+ var eventedChannel = action.payload.channel;
379
+ var fetchedMutedUserList = action.payload.users;
380
+
381
+ if (eventedChannel.url !== state.currentOpenChannel.url || !fetchedMutedUserList.every(function (user) {
382
+ return typeof user.userId === 'string';
383
+ })) {
384
+ return state;
385
+ }
386
+
387
+ return __assign(__assign({}, state), {
388
+ mutedParticipantIds: __spreadArray(__spreadArray([], state.mutedParticipantIds, true), fetchedMutedUserList.map(function (user) {
389
+ return user.userId;
390
+ }), true)
391
+ });
392
+ }
393
+ // events
394
+
395
+ case ON_MESSAGE_RECEIVED:
396
+ {
397
+ var eventedChannel = action.payload.channel;
398
+ var receivedMessage = action.payload.message;
399
+ var currentOpenChannel = state.currentOpenChannel;
400
+
401
+ if (!compareIds(eventedChannel.url, currentOpenChannel.url) || !(state.allMessages.map(function (message) {
402
+ return message.messageId;
403
+ }).indexOf(receivedMessage.messageId) < 0)) {
404
+ return state;
405
+ }
406
+
407
+ return __assign(__assign({}, state), {
408
+ allMessages: __spreadArray(__spreadArray([], state.allMessages, true), [receivedMessage], false)
409
+ });
410
+ }
411
+
412
+ case ON_MESSAGE_UPDATED:
413
+ {
414
+ var eventedChannel = action.payload.channel;
415
+ var updatedMessage_1 = action.payload.message;
416
+ var currentChannel = state.currentOpenChannel;
417
+
418
+ if (!currentChannel || currentChannel.url && currentChannel.url !== eventedChannel.url) {
419
+ return state;
420
+ }
421
+
422
+ return __assign(__assign({}, state), {
423
+ allMessages: state.allMessages.map(function (message) {
424
+ return message.isIdentical(updatedMessage_1) ? updatedMessage_1 : message;
425
+ })
426
+ });
427
+ }
428
+
429
+ case ON_MESSAGE_DELETED:
430
+ {
431
+ var eventedChannel = action.payload.channel;
432
+ var deletedMessageId_1 = action.payload.messageId;
433
+ var currentChannel = state.currentOpenChannel;
434
+
435
+ if (!currentChannel || currentChannel.url && currentChannel.url !== eventedChannel.url) {
436
+ return state;
437
+ }
438
+
439
+ return __assign(__assign({}, state), {
440
+ allMessages: state.allMessages.filter(function (message) {
441
+ return !compareIds(message.messageId, deletedMessageId_1);
442
+ })
443
+ });
444
+ }
445
+
446
+ case ON_MESSAGE_DELETED_BY_REQ_ID:
447
+ {
448
+ return __assign(__assign({}, state), {
449
+ allMessages: state.allMessages.filter(function (m) {
450
+ return !compareIds(m.reqId, action.payload);
451
+ })
452
+ });
453
+ }
454
+
455
+ case ON_OPERATOR_UPDATED:
456
+ {
457
+ var eventedChannel = action.payload.channel;
458
+ var updatedOperators = action.payload.operators;
459
+ var currentChannel = state.currentOpenChannel;
460
+
461
+ if (!currentChannel || currentChannel.url && currentChannel.url !== eventedChannel.url) {
462
+ return state;
463
+ }
464
+
465
+ return __assign(__assign({}, state), {
466
+ currentOpenChannel: eventedChannel,
467
+ operators: updatedOperators
468
+ });
469
+ }
470
+
471
+ case ON_USER_ENTERED:
472
+ {
473
+ var eventedChannel = action.payload.channel;
474
+ var enteredUser = action.payload.user;
475
+ var currentChannel = state.currentOpenChannel;
476
+
477
+ if (!currentChannel || currentChannel.url && currentChannel.url !== eventedChannel.url) {
478
+ return state;
479
+ }
480
+
481
+ return __assign(__assign({}, state), {
482
+ participants: __spreadArray(__spreadArray([], state.participants, true), [enteredUser], false)
483
+ });
484
+ }
485
+
486
+ case ON_USER_EXITED:
487
+ {
488
+ var eventedChannel = action.payload.channel;
489
+ var exitedUser_1 = action.payload.user;
490
+ var currentChannel = state.currentOpenChannel;
491
+
492
+ if (!currentChannel || currentChannel.url && currentChannel.url !== eventedChannel.url) {
493
+ return state;
494
+ }
495
+
496
+ return __assign(__assign({}, state), {
497
+ participants: state.participants.filter(function (participant) {
498
+ return !compareIds(participant.userId, exitedUser_1.userId);
499
+ })
500
+ });
501
+ }
502
+
503
+ case ON_USER_MUTED:
504
+ {
505
+ var eventedChannel = action.payload.channel;
506
+ var mutedUser = action.payload.user;
507
+ var currentChannel = state.currentOpenChannel;
508
+
509
+ if (!currentChannel || currentChannel.url && currentChannel.url !== eventedChannel.url || state.mutedParticipantIds.indexOf(mutedUser.userId) >= 0) {
510
+ return state;
511
+ }
512
+
513
+ return __assign(__assign({}, state), {
514
+ mutedParticipantIds: __spreadArray(__spreadArray([], state.mutedParticipantIds, true), [mutedUser.userId], false)
515
+ });
516
+ }
517
+
518
+ case ON_USER_UNMUTED:
519
+ {
520
+ var eventedChannel = action.payload.channel;
521
+ var unmutedUser_1 = action.payload.user;
522
+ var currentChannel = state.currentOpenChannel;
523
+
524
+ if (!currentChannel || currentChannel.url && currentChannel.url !== eventedChannel.url || state.mutedParticipantIds.indexOf(unmutedUser_1.userId) < 0) {
525
+ return state;
526
+ }
527
+
528
+ return __assign(__assign({}, state), {
529
+ mutedParticipantIds: state.mutedParticipantIds.filter(function (userId) {
530
+ return userId !== unmutedUser_1.userId;
531
+ })
532
+ });
533
+ }
534
+
535
+ case ON_USER_BANNED:
536
+ {
537
+ var eventedChannel = action.payload.channel;
538
+ var bannedUser = action.payload.user;
539
+ var currentUser = action.payload.currentUser;
540
+ var currentChannel = state.currentOpenChannel;
541
+
542
+ if ((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) === (eventedChannel === null || eventedChannel === void 0 ? void 0 : eventedChannel.url) && (bannedUser === null || bannedUser === void 0 ? void 0 : bannedUser.userId) === (currentUser === null || currentUser === void 0 ? void 0 : currentUser.userId)) {
543
+ return __assign(__assign({}, state), {
544
+ currentOpenChannel: null
545
+ });
546
+ } else if ((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) === (eventedChannel === null || eventedChannel === void 0 ? void 0 : eventedChannel.url)) {
547
+ return __assign(__assign({}, state), {
548
+ bannedParticipantIds: __spreadArray(__spreadArray([], state.bannedParticipantIds, true), [bannedUser.userId], false)
549
+ });
550
+ }
551
+
552
+ return state;
553
+ }
554
+
555
+ case ON_USER_UNBANNED:
556
+ {
557
+ var eventedChannel = action.payload.channel;
558
+ var unbannedUser_1 = action.payload.user;
559
+ var currentChannel = state.currentOpenChannel;
560
+
561
+ if ((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) === (eventedChannel === null || eventedChannel === void 0 ? void 0 : eventedChannel.url)) {
562
+ return __assign(__assign({}, state), {
563
+ bannedParticipantIds: state.bannedParticipantIds.filter(function (userId) {
564
+ return userId !== unbannedUser_1.userId;
565
+ })
566
+ });
567
+ }
568
+
569
+ return state;
570
+ }
571
+
572
+ case ON_CHANNEL_FROZEN:
573
+ {
574
+ var frozenChannel = action.payload;
575
+ var currentChannel = state.currentOpenChannel;
576
+
577
+ if (!currentChannel || currentChannel.url && currentChannel.url !== frozenChannel.url) {
578
+ return state;
579
+ }
580
+
581
+ return __assign(__assign({}, state), {
582
+ frozen: true
583
+ });
584
+ }
585
+
586
+ case ON_CHANNEL_UNFROZEN:
587
+ {
588
+ var unfrozenChannel = action.payload;
589
+ var currentChannel = state.currentOpenChannel;
590
+
591
+ if (!currentChannel || currentChannel.url && currentChannel.url !== unfrozenChannel.url) {
592
+ return state;
593
+ }
594
+
595
+ return __assign(__assign({}, state), {
596
+ frozen: false
597
+ });
598
+ }
599
+
600
+ case ON_CHANNEL_CHANGED:
601
+ {
602
+ var changedChannel = action.payload;
603
+ var currentChannel = state.currentOpenChannel;
604
+
605
+ if (!currentChannel || currentChannel.url && currentChannel.url !== changedChannel.url) {
606
+ return state;
607
+ }
608
+
609
+ return __assign(__assign({}, state), {
610
+ currentOpenChannel: changedChannel
611
+ });
612
+ }
613
+
614
+ case ON_CHANNEL_DELETED:
615
+ {
616
+ var deletedChannelUrl = action.payload;
617
+ var currentChannel = state === null || state === void 0 ? void 0 : state.currentOpenChannel;
618
+
619
+ if ((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) === deletedChannelUrl) {
620
+ return __assign(__assign({}, state), {
621
+ currentOpenChannel: null
622
+ });
623
+ }
624
+
625
+ return state;
626
+ }
627
+
628
+ case ON_META_DATA_CREATED:
629
+ {
630
+ // const eventedChannel = action.payload.channel;
631
+ // const createdMetaData = action.payload.metaData;
632
+ // return {
633
+ // ...state
634
+ // };
635
+ return state;
636
+ }
637
+
638
+ case ON_META_DATA_UPDATED:
639
+ {
640
+ // const eventedChannel = action.payload.channel;
641
+ // const updatedMetaData = action.payload.metaData;
642
+ // return {
643
+ // ...state
644
+ // };
645
+ return state;
646
+ }
647
+
648
+ case ON_META_DATA_DELETED:
649
+ {
650
+ // const eventedChannel = action.payload.channel;
651
+ // const deletedMetaDataKeys = action.payload.metaDataKeys;
652
+ // return {
653
+ // ...state
654
+ // };
655
+ return state;
656
+ }
657
+
658
+ case ON_META_COUNTERS_CREATED:
659
+ {
660
+ // const eventedChannel = action.payload.channel;
661
+ // const createdMetaCounter = action.payload.metaCounter;
662
+ // return {
663
+ // ...state
664
+ // };
665
+ return state;
666
+ }
667
+
668
+ case ON_META_COUNTERS_UPDATED:
669
+ {
670
+ // const eventedChannel = action.payload.channel;
671
+ // const updatedMetaCounter = action.payload.metaCounter;
672
+ // return {
673
+ // ...state
674
+ // };
675
+ return state;
676
+ }
677
+
678
+ case ON_META_COUNTERS_DELETED:
679
+ {
680
+ // const eventedChannel = action.payload.channel;
681
+ // const deletedMetaCounterKeys = action.payload.metaCounterKeys;
682
+ // return {
683
+ // ...state
684
+ // };
685
+ return state;
686
+ }
687
+
688
+ case ON_MENTION_RECEIVED:
689
+ {
690
+ // const eventedChannel = action.payload.channel;
691
+ // const mentionedMessage = action.payload.message;
692
+ // return {
693
+ // ...state
694
+ // };
695
+ return state;
696
+ }
697
+
698
+ default:
699
+ return state;
700
+ }
701
+ }
702
+
703
+ var initialState = {
704
+ allMessages: [],
705
+ loading: false,
706
+ initialized: false,
707
+ currentOpenChannel: null,
708
+ isInvalid: false,
709
+ hasMore: false,
710
+ lastMessageTimestamp: 0,
711
+ frozen: false,
712
+ operators: [],
713
+ participants: [],
714
+ bannedParticipantIds: [],
715
+ mutedParticipantIds: []
716
+ };
717
+
718
+ function useSetChannel(_a, _b) {
719
+ var channelUrl = _a.channelUrl,
720
+ sdkInit = _a.sdkInit,
721
+ fetchingParticipants = _a.fetchingParticipants,
722
+ userId = _a.userId,
723
+ currentOpenChannel = _a.currentOpenChannel;
724
+ var sdk = _b.sdk,
725
+ logger = _b.logger,
726
+ messagesDispatcher = _b.messagesDispatcher;
727
+ useEffect(function () {
728
+ var _a;
729
+
730
+ if (channelUrl && sdkInit && (sdk === null || sdk === void 0 ? void 0 : sdk.openChannel)) {
731
+ if (currentOpenChannel && (currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.exit)) {
732
+ (_a = currentOpenChannel.exit) === null || _a === void 0 ? void 0 : _a.call(currentOpenChannel).then(function () {
733
+ logger.info('OpenChannel | useSetChannel: Exit from the previous open channel', currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.url);
734
+ messagesDispatcher({
735
+ type: EXIT_CURRENT_CHANNEL,
736
+ payload: currentOpenChannel
737
+ });
738
+ });
739
+ }
740
+
741
+ logger.info('OpenChannel | useSetChannel: Fetching channel', channelUrl);
742
+ sdk.openChannel.getChannel(channelUrl).then(function (openChannel) {
743
+ logger.info('OpenChannel | useSetChannel: Succeeded to fetch channel', openChannel);
744
+ messagesDispatcher({
745
+ type: SET_CURRENT_CHANNEL,
746
+ payload: openChannel
747
+ });
748
+ openChannel.enter().then(function () {
749
+ if (openChannel.isOperator(userId)) {
750
+ // only operator has a permission to fetch these list
751
+ var bannedParticipantListQuery = openChannel.createBannedUserListQuery();
752
+ var mutedParticipantListQuery = openChannel.createMutedUserListQuery();
753
+ fetchWithListQuery(bannedParticipantListQuery, logger, function (users) {
754
+ messagesDispatcher({
755
+ type: FETCH_BANNED_USER_LIST,
756
+ payload: {
757
+ channel: openChannel,
758
+ users: users
759
+ }
760
+ });
761
+ });
762
+ fetchWithListQuery(mutedParticipantListQuery, logger, function (users) {
763
+ messagesDispatcher({
764
+ type: FETCH_MUTED_USER_LIST,
765
+ payload: {
766
+ channel: openChannel,
767
+ users: users
768
+ }
769
+ });
770
+ });
771
+ } else {
772
+ openChannel.getMyMutedInfo().then(function (mutedInfo) {
773
+ if (mutedInfo === null || mutedInfo === void 0 ? void 0 : mutedInfo.isMuted) {
774
+ messagesDispatcher({
775
+ type: FETCH_MUTED_USER_LIST,
776
+ payload: {
777
+ channel: openChannel,
778
+ users: [sdk === null || sdk === void 0 ? void 0 : sdk.currentUser]
779
+ }
780
+ });
781
+ }
782
+ });
783
+ }
784
+
785
+ if (fetchingParticipants) {
786
+ // fetch participants list
787
+ var participantListQuery = openChannel.createParticipantListQuery({
788
+ limit: openChannel.participantCount
789
+ });
790
+ fetchWithListQuery(participantListQuery, logger, function (users) {
791
+ messagesDispatcher({
792
+ type: FETCH_PARTICIPANT_LIST,
793
+ payload: {
794
+ channel: openChannel,
795
+ users: users
796
+ }
797
+ });
798
+ });
799
+ }
800
+ }).catch(function (error) {
801
+ logger.warning('OpenChannel | useSetChannel: Failed to enter channel', {
802
+ channelUrl: channelUrl,
803
+ error: error
804
+ });
805
+ messagesDispatcher({
806
+ type: SET_CHANNEL_INVALID,
807
+ payload: null
808
+ });
809
+ });
810
+ }).catch(function (error) {
811
+ logger.warning('OpenChannel | useSetChannel: Failed to fetch channel', {
812
+ channelUrl: channelUrl,
813
+ error: error
814
+ });
815
+ messagesDispatcher({
816
+ type: SET_CHANNEL_INVALID,
817
+ payload: null
818
+ });
819
+ });
820
+ }
821
+ }, [channelUrl, sdkInit, fetchingParticipants]);
822
+ }
823
+
824
+ function useHandleChannelEvents(_a, _b) {
825
+ var currentOpenChannel = _a.currentOpenChannel,
826
+ checkScrollBottom = _a.checkScrollBottom;
827
+ var sdk = _b.sdk,
828
+ logger = _b.logger,
829
+ messagesDispatcher = _b.messagesDispatcher,
830
+ scrollRef = _b.scrollRef;
831
+ useEffect(function () {
832
+ var _a, _b;
833
+
834
+ var messageReceiverId = uuidv4();
835
+
836
+ if (currentOpenChannel && currentOpenChannel.url && ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.openChannel) === null || _a === void 0 ? void 0 : _a.addOpenChannelHandler)) {
837
+ logger.info('OpenChannel | useHandleChannelEvents: Setup evnet handler', messageReceiverId);
838
+ var channelHandlerParams = {
839
+ onMessageReceived: function (channel, message) {
840
+ var scrollToEnd = checkScrollBottom();
841
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
842
+ logger.info('OpenChannel | useHandleChannelEvents: onMessageReceived', {
843
+ channelUrl: channelUrl,
844
+ message: message
845
+ });
846
+ messagesDispatcher({
847
+ type: ON_MESSAGE_RECEIVED,
848
+ payload: {
849
+ channel: channel,
850
+ message: message
851
+ }
852
+ });
853
+
854
+ if (scrollToEnd) {
855
+ try {
856
+ setTimeout(function () {
857
+ scrollIntoLast(0, scrollRef);
858
+ });
859
+ } catch (error) {
860
+ logger.warning('OpenChannel | onMessageReceived | scroll to end failed');
861
+ }
862
+ }
863
+ },
864
+ onMessageUpdated: function (channel, message) {
865
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
866
+ logger.info('OpenChannel | useHandleChannelEvents: onMessageUpdated', {
867
+ channelUrl: channelUrl,
868
+ message: message
869
+ });
870
+ messagesDispatcher({
871
+ type: ON_MESSAGE_UPDATED,
872
+ payload: {
873
+ channel: channel,
874
+ message: message
875
+ }
876
+ });
877
+ },
878
+ onMessageDeleted: function (channel, messageId) {
879
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
880
+ logger.info('OpenChannel | useHandleChannelEvents: onMessageDeleted', {
881
+ channelUrl: channelUrl,
882
+ messageId: messageId
883
+ });
884
+ messagesDispatcher({
885
+ type: ON_MESSAGE_DELETED,
886
+ payload: {
887
+ channel: channel,
888
+ messageId: messageId
889
+ }
890
+ });
891
+ },
892
+ onOperatorUpdated: function (channel, operators) {
893
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
894
+ logger.info('OpenChannel | useHandleChannelEvents: onOperatorUpdated', {
895
+ channelUrl: channelUrl,
896
+ operators: operators
897
+ });
898
+ messagesDispatcher({
899
+ type: ON_OPERATOR_UPDATED,
900
+ payload: {
901
+ channel: channel,
902
+ operators: operators
903
+ }
904
+ });
905
+ },
906
+ onUserEntered: function (channel, user) {
907
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
908
+ logger.info('OpenChannel | useHandleChannelEvents: onUserEntered', {
909
+ channelUrl: channelUrl,
910
+ user: user
911
+ });
912
+ messagesDispatcher({
913
+ type: ON_USER_ENTERED,
914
+ payload: {
915
+ channel: channel,
916
+ user: user
917
+ }
918
+ });
919
+ },
920
+ onUserExited: function (channel, user) {
921
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
922
+ logger.info('OpenChannel | useHandleChannelEvents: onUserExited', {
923
+ channelUrl: channelUrl,
924
+ user: user
925
+ });
926
+ messagesDispatcher({
927
+ type: ON_USER_EXITED,
928
+ payload: {
929
+ channel: channel,
930
+ user: user
931
+ }
932
+ });
933
+ },
934
+ onUserMuted: function (channel, user) {
935
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
936
+ logger.info('OpenChannel | useHandleChannelEvents: onUserMuted', {
937
+ channelUrl: channelUrl,
938
+ user: user
939
+ });
940
+ messagesDispatcher({
941
+ type: ON_USER_MUTED,
942
+ payload: {
943
+ channel: channel,
944
+ user: user
945
+ }
946
+ });
947
+ },
948
+ onUserUnmuted: function (channel, user) {
949
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
950
+ logger.info('OpenChannel | useHandleChannelEvents: onUserUnmuted', {
951
+ channelUrl: channelUrl,
952
+ user: user
953
+ });
954
+ messagesDispatcher({
955
+ type: ON_USER_UNMUTED,
956
+ payload: {
957
+ channel: channel,
958
+ user: user
959
+ }
960
+ });
961
+ },
962
+ onUserBanned: function (channel, user) {
963
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
964
+ logger.info('OpenChannel | useHandleChannelEvents: onUserBanned', {
965
+ channelUrl: channelUrl,
966
+ user: user
967
+ });
968
+ messagesDispatcher({
969
+ type: ON_USER_BANNED,
970
+ payload: {
971
+ channel: channel,
972
+ user: user,
973
+ currentUser: sdk === null || sdk === void 0 ? void 0 : sdk.currentUser
974
+ }
975
+ });
976
+ },
977
+ onUserUnbanned: function (channel, user) {
978
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
979
+ logger.info('OpenChannel | useHandleChannelEvents: onUserUnbanned', {
980
+ channelUrl: channelUrl,
981
+ user: user
982
+ });
983
+ messagesDispatcher({
984
+ type: ON_USER_UNBANNED,
985
+ payload: {
986
+ channel: channel,
987
+ user: user
988
+ }
989
+ });
990
+ },
991
+ onChannelFrozen: function (channel) {
992
+ logger.info('OpenChannel | useHandleChannelEvents: onChannelFrozen', channel);
993
+ messagesDispatcher({
994
+ type: ON_CHANNEL_FROZEN,
995
+ payload: channel
996
+ });
997
+ },
998
+ onChannelUnfrozen: function (channel) {
999
+ logger.info('OpenChannel | useHandleChannelEvents: onChannelUnfrozen', channel);
1000
+ messagesDispatcher({
1001
+ type: ON_CHANNEL_UNFROZEN,
1002
+ payload: channel
1003
+ });
1004
+ },
1005
+ onChannelChanged: function (channel) {
1006
+ logger.info('OpenChannel | useHandleChannelEvents: onChannelChanged', channel);
1007
+ messagesDispatcher({
1008
+ type: ON_CHANNEL_CHANGED,
1009
+ payload: channel
1010
+ });
1011
+ },
1012
+ onMetaDataCreated: function (channel, metaData) {
1013
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
1014
+ logger.info('OpenChannel | useHandleChannelEvents: onMetaDataCreated', {
1015
+ channelUrl: channelUrl,
1016
+ metaData: metaData
1017
+ });
1018
+ messagesDispatcher({
1019
+ type: ON_META_DATA_CREATED,
1020
+ payload: {
1021
+ channel: channel,
1022
+ metaData: metaData
1023
+ }
1024
+ });
1025
+ },
1026
+ onMetaDataUpdated: function (channel, metaData) {
1027
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
1028
+ logger.info('OpenChannel | useHandleChannelEvents: onMetaDataUpdated', {
1029
+ channelUrl: channelUrl,
1030
+ metaData: metaData
1031
+ });
1032
+ messagesDispatcher({
1033
+ type: ON_META_DATA_UPDATED,
1034
+ payload: {
1035
+ channel: channel,
1036
+ metaData: metaData
1037
+ }
1038
+ });
1039
+ },
1040
+ onMetaDataDeleted: function (channel, metaDataKeys) {
1041
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
1042
+ logger.info('OpenChannel | useHandleChannelEvents: onMetaDataDeleted', {
1043
+ channelUrl: channelUrl,
1044
+ metaDataKeys: metaDataKeys
1045
+ });
1046
+ messagesDispatcher({
1047
+ type: ON_META_DATA_DELETED,
1048
+ payload: {
1049
+ channel: channel,
1050
+ metaDataKeys: metaDataKeys
1051
+ }
1052
+ });
1053
+ },
1054
+ onMetaCounterCreated: function (channel, metaCounter) {
1055
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
1056
+ logger.info('OpenChannel | useHandleChannelEvents: onMetaCountersCreated', {
1057
+ channelUrl: channelUrl,
1058
+ metaCounter: metaCounter
1059
+ });
1060
+ messagesDispatcher({
1061
+ type: ON_META_COUNTERS_CREATED,
1062
+ payload: {
1063
+ channel: channel,
1064
+ metaCounter: metaCounter
1065
+ }
1066
+ });
1067
+ },
1068
+ onMetaCounterUpdated: function (channel, metaCounter) {
1069
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
1070
+ logger.info('OpenChannel | useHandleChannelEvents: onMetaCountersUpdated', {
1071
+ channelUrl: channelUrl,
1072
+ metaCounter: metaCounter
1073
+ });
1074
+ messagesDispatcher({
1075
+ type: ON_META_COUNTERS_UPDATED,
1076
+ payload: {
1077
+ channel: channel,
1078
+ metaCounter: metaCounter
1079
+ }
1080
+ });
1081
+ },
1082
+ onMetaCounterDeleted: function (channel, metaCounterKeys) {
1083
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
1084
+ logger.info('OpenChannel | useHandleChannelEvents: onMetaCountersDeleted', {
1085
+ channelUrl: channelUrl,
1086
+ metaCounterKeys: metaCounterKeys
1087
+ });
1088
+ messagesDispatcher({
1089
+ type: ON_META_COUNTERS_DELETED,
1090
+ payload: {
1091
+ channel: channel,
1092
+ metaCounterKeys: metaCounterKeys
1093
+ }
1094
+ });
1095
+ },
1096
+ onMentionReceived: function (channel, message) {
1097
+ var channelUrl = channel === null || channel === void 0 ? void 0 : channel.url;
1098
+ logger.info('OpenChannel | useHandleChannelEvents: onMentionReceived', {
1099
+ channelUrl: channelUrl,
1100
+ message: message
1101
+ });
1102
+ messagesDispatcher({
1103
+ type: ON_MENTION_RECEIVED,
1104
+ payload: {
1105
+ channel: channel,
1106
+ message: message
1107
+ }
1108
+ });
1109
+ },
1110
+ onChannelDeleted: function (channelUrl, channelType) {
1111
+ if (channelType === ChannelType.OPEN && (currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.url) === channelUrl) {
1112
+ messagesDispatcher({
1113
+ type: ON_CHANNEL_DELETED,
1114
+ payload: channelUrl
1115
+ });
1116
+ }
1117
+ }
1118
+ };
1119
+ var ChannelHandler = new OpenChannelHandler(channelHandlerParams);
1120
+ (_b = sdk === null || sdk === void 0 ? void 0 : sdk.openChannel) === null || _b === void 0 ? void 0 : _b.addOpenChannelHandler(messageReceiverId, ChannelHandler);
1121
+ }
1122
+
1123
+ return function () {
1124
+ var _a;
1125
+
1126
+ if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.openChannel) === null || _a === void 0 ? void 0 : _a.removeOpenChannelHandler) {
1127
+ logger.info('OpenChannel | useHandleChannelEvents: Removing message receiver handler', messageReceiverId);
1128
+ sdk.openChannel.removeOpenChannelHandler(messageReceiverId);
1129
+ }
1130
+ };
1131
+ }, [currentOpenChannel]);
1132
+ }
1133
+
1134
+ function useInitialMessagesFetch(_a, _b) {
1135
+ var currentOpenChannel = _a.currentOpenChannel,
1136
+ userFilledMessageListParams = _a.userFilledMessageListParams;
1137
+ var logger = _b.logger,
1138
+ messagesDispatcher = _b.messagesDispatcher,
1139
+ scrollRef = _b.scrollRef;
1140
+ useEffect(function () {
1141
+ logger.info('OpenChannel | useInitialMessagesFetch: Setup started', currentOpenChannel);
1142
+ messagesDispatcher({
1143
+ type: RESET_MESSAGES,
1144
+ payload: null
1145
+ });
1146
+
1147
+ if (currentOpenChannel && currentOpenChannel.getMessagesByTimestamp) {
1148
+ var messageListParams_1 = {
1149
+ nextResultSize: 0,
1150
+ prevResultSize: 30,
1151
+ isInclusive: true,
1152
+ includeReactions: false
1153
+ };
1154
+
1155
+ if (userFilledMessageListParams) {
1156
+ Object.keys(userFilledMessageListParams).forEach(function (key) {
1157
+ messageListParams_1[key] = userFilledMessageListParams[key];
1158
+ });
1159
+ logger.info('OpenChannel | useInitialMessagesFetch: Used customizedMessageListParams');
1160
+ }
1161
+
1162
+ logger.info('OpenChannel | useInitialMessagesFetch: Fetching messages', {
1163
+ currentOpenChannel: currentOpenChannel,
1164
+ messageListParams: messageListParams_1
1165
+ });
1166
+ messagesDispatcher({
1167
+ type: GET_PREV_MESSAGES_START,
1168
+ payload: null
1169
+ });
1170
+ currentOpenChannel.getMessagesByTimestamp(new Date().getTime(), messageListParams_1).then(function (messages) {
1171
+ logger.info('OpenChannel | useInitialMessagesFetch: Fetching messages succeeded', messages);
1172
+ var hasMore = messages && messages.length > 0;
1173
+ var lastMessageTimestamp = hasMore ? messages[0].createdAt : null;
1174
+ messagesDispatcher({
1175
+ type: GET_PREV_MESSAGES_SUCESS,
1176
+ payload: {
1177
+ currentOpenChannel: currentOpenChannel,
1178
+ messages: messages,
1179
+ hasMore: hasMore,
1180
+ lastMessageTimestamp: lastMessageTimestamp
1181
+ }
1182
+ });
1183
+ setTimeout(function () {
1184
+ scrollIntoLast(0, scrollRef);
1185
+ });
1186
+ }).catch(function (error) {
1187
+ logger.error('OpenChannel | useInitialMessagesFetch: Fetching messages failed', error);
1188
+ messagesDispatcher({
1189
+ type: GET_PREV_MESSAGES_FAIL,
1190
+ payload: {
1191
+ currentOpenChannel: currentOpenChannel,
1192
+ messages: [],
1193
+ hasMore: false,
1194
+ lastMessageTimestamp: 0
1195
+ }
1196
+ });
1197
+ });
1198
+ }
1199
+ }, [currentOpenChannel, userFilledMessageListParams]);
1200
+ }
1201
+
1202
+ function useScrollCallback(_a, _b) {
1203
+ var currentOpenChannel = _a.currentOpenChannel,
1204
+ lastMessageTimestamp = _a.lastMessageTimestamp,
1205
+ fetchMore = _a.fetchMore;
1206
+ var sdk = _b.sdk,
1207
+ logger = _b.logger,
1208
+ messagesDispatcher = _b.messagesDispatcher,
1209
+ hasMore = _b.hasMore,
1210
+ userFilledMessageListParams = _b.userFilledMessageListParams;
1211
+ return useCallback(function (callback) {
1212
+ if (fetchMore && hasMore) {
1213
+ logger.info('OpenChannel | useScrollCallback: start');
1214
+ var messageListParams_1 = {
1215
+ prevResultSize: 30,
1216
+ includeReactions: false,
1217
+ nextResultSize: 0
1218
+ };
1219
+
1220
+ if (userFilledMessageListParams) {
1221
+ Object.keys(userFilledMessageListParams).forEach(function (key) {
1222
+ messageListParams_1[key] = userFilledMessageListParams[key];
1223
+ });
1224
+ logger.info('OpenChannel | useScrollCallback: Used userFilledMessageListParams', userFilledMessageListParams);
1225
+ }
1226
+
1227
+ logger.info('OpenChannel | useScrollCallback: Fetching messages', {
1228
+ currentOpenChannel: currentOpenChannel,
1229
+ messageListParams: messageListParams_1
1230
+ });
1231
+ currentOpenChannel.getMessagesByTimestamp(lastMessageTimestamp || new Date().getTime(), messageListParams_1).then(function (messages) {
1232
+ logger.info('OpenChannel | useScrollCallback: Fetching messages succeeded', messages);
1233
+ var hasMore = messages && messages.length > 0;
1234
+ var lastMessageTimestamp = hasMore ? messages[0].createdAt : null;
1235
+ messagesDispatcher({
1236
+ type: GET_PREV_MESSAGES_SUCESS,
1237
+ payload: {
1238
+ currentOpenChannel: currentOpenChannel,
1239
+ messages: messages,
1240
+ hasMore: hasMore,
1241
+ lastMessageTimestamp: lastMessageTimestamp
1242
+ }
1243
+ });
1244
+ setTimeout(function () {
1245
+ callback();
1246
+ });
1247
+ }).catch(function (error) {
1248
+ logger.error('OpenChannel | useScrollCallback: Fetching messages failed', error);
1249
+ messagesDispatcher({
1250
+ type: GET_PREV_MESSAGES_FAIL,
1251
+ payload: {
1252
+ currentOpenChannel: currentOpenChannel,
1253
+ messages: [],
1254
+ hasMore: false,
1255
+ lastMessageTimestamp: 0
1256
+ }
1257
+ });
1258
+ });
1259
+ }
1260
+ }, [currentOpenChannel, lastMessageTimestamp, fetchMore, sdk]);
1261
+ }
1262
+
1263
+ function useCheckScrollBottom(_a, _b) {
1264
+ var conversationScrollRef = _a.conversationScrollRef;
1265
+ var logger = _b.logger;
1266
+ return useCallback(function () {
1267
+ var isBottom = true;
1268
+
1269
+ if (conversationScrollRef && (conversationScrollRef === null || conversationScrollRef === void 0 ? void 0 : conversationScrollRef.current)) {
1270
+ try {
1271
+ var conversationScroll = conversationScrollRef.current;
1272
+ isBottom = conversationScroll.scrollHeight <= conversationScroll.scrollTop + conversationScroll.clientHeight;
1273
+ } catch (error) {
1274
+ logger.error('OpenChannel | useCheckScrollBottom', error);
1275
+ }
1276
+ }
1277
+
1278
+ return isBottom;
1279
+ }, [conversationScrollRef]);
1280
+ }
1281
+
1282
+ function useSendMessageCallback(_a, _b) {
1283
+ var currentOpenChannel = _a.currentOpenChannel,
1284
+ onBeforeSendUserMessage = _a.onBeforeSendUserMessage,
1285
+ checkScrollBottom = _a.checkScrollBottom,
1286
+ messageInputRef = _a.messageInputRef;
1287
+ var sdk = _b.sdk,
1288
+ logger = _b.logger,
1289
+ messagesDispatcher = _b.messagesDispatcher,
1290
+ scrollRef = _b.scrollRef;
1291
+ return useCallback(function () {
1292
+ if (sdk) {
1293
+ var text = messageInputRef.current.innerText;
1294
+
1295
+ var createParamsDefault = function (txt) {
1296
+ var message = (txt === null || txt === void 0 ? void 0 : txt.trim()) || txt;
1297
+ var params = {
1298
+ message: message
1299
+ };
1300
+ return params;
1301
+ };
1302
+
1303
+ var createCustomParams = onBeforeSendUserMessage && typeof onBeforeSendUserMessage === 'function';
1304
+
1305
+ if (createCustomParams) {
1306
+ logger.info('OpenChannel | useSendMessageCallback: Creating params using onBeforeSendUserMessage', onBeforeSendUserMessage);
1307
+ }
1308
+
1309
+ var params = onBeforeSendUserMessage ? onBeforeSendUserMessage(text) : createParamsDefault(text);
1310
+ logger.info('OpenChannel | useSendMessageCallback: Sending message has started', params);
1311
+ var isBottom_1 = checkScrollBottom();
1312
+ var pendingMsg_1 = null;
1313
+ currentOpenChannel.sendUserMessage(params).onPending(function (pendingMessage) {
1314
+ messagesDispatcher({
1315
+ type: SENDING_MESSAGE_START,
1316
+ payload: {
1317
+ message: pendingMessage,
1318
+ channel: currentOpenChannel
1319
+ }
1320
+ });
1321
+ pendingMsg_1 = pendingMessage;
1322
+ }).onSucceeded(function (message) {
1323
+ logger.info('OpenChannel | useSendMessageCallback: Sending message succeeded', message);
1324
+ messagesDispatcher({
1325
+ type: SENDING_MESSAGE_SUCCEEDED,
1326
+ payload: message
1327
+ });
1328
+
1329
+ if (isBottom_1) {
1330
+ setTimeout(function () {
1331
+ scrollIntoLast(0, scrollRef);
1332
+ });
1333
+ }
1334
+ }).onFailed(function (error) {
1335
+ logger.warning('OpenChannel | useSendMessageCallback: Sending message failed', error);
1336
+ messagesDispatcher({
1337
+ type: SENDING_MESSAGE_FAILED,
1338
+ payload: pendingMsg_1
1339
+ }); // https://sendbird.com/docs/chat/v3/javascript/guides/error-codes#2-server-error-codes
1340
+ // TODO: Do we need to handle the error cases?
1341
+ // @ts-ignore
1342
+
1343
+ if ((error === null || error === void 0 ? void 0 : error.code) === 900041) {
1344
+ messagesDispatcher({
1345
+ type: ON_USER_MUTED,
1346
+ payload: {
1347
+ channel: currentOpenChannel,
1348
+ user: sdk.currentUser
1349
+ }
1350
+ });
1351
+ }
1352
+ });
1353
+ }
1354
+ }, [currentOpenChannel, onBeforeSendUserMessage, checkScrollBottom, messageInputRef]);
1355
+ }
1356
+
1357
+ function useFileUploadCallback(_a, _b) {
1358
+ var currentOpenChannel = _a.currentOpenChannel,
1359
+ checkScrollBottom = _a.checkScrollBottom,
1360
+ _c = _a.imageCompression,
1361
+ imageCompression = _c === void 0 ? {} : _c,
1362
+ onBeforeSendFileMessage = _a.onBeforeSendFileMessage;
1363
+ var sdk = _b.sdk,
1364
+ logger = _b.logger,
1365
+ messagesDispatcher = _b.messagesDispatcher,
1366
+ scrollRef = _b.scrollRef;
1367
+ return useCallback(function (file) {
1368
+ if (sdk) {
1369
+ var compressionRate_1 = imageCompression.compressionRate,
1370
+ resizingWidth_1 = imageCompression.resizingWidth,
1371
+ resizingHeight_1 = imageCompression.resizingHeight;
1372
+ var createCustomParams_1 = onBeforeSendFileMessage && typeof onBeforeSendFileMessage === 'function';
1373
+ var compressibleFileType = file.type === 'image/jpg' || file.type === 'image/png' || file.type === 'image/jpeg';
1374
+ var compressibleRatio = compressionRate_1 > 0 && compressionRate_1 < 1; // pxToNumber returns null if values are invalid
1375
+
1376
+ var compressibleDiamensions_1 = pxToNumber(resizingWidth_1) || pxToNumber(resizingHeight_1);
1377
+ var canCompressImage = compressibleFileType && (compressibleRatio || compressibleDiamensions_1);
1378
+
1379
+ var createParamsDefault_1 = function (file_) {
1380
+ var params = {};
1381
+ params.file = file_;
1382
+ return params;
1383
+ };
1384
+
1385
+ if (canCompressImage) {
1386
+ // Using image compression
1387
+ try {
1388
+ var image_1 = document.createElement('img');
1389
+ image_1.src = URL.createObjectURL(file);
1390
+
1391
+ image_1.onload = function () {
1392
+ URL.revokeObjectURL(image_1.src);
1393
+ var canvas = document.createElement('canvas');
1394
+ var imageWidth = image_1.naturalWidth || image_1.width;
1395
+ var imageHeight = image_1.naturalHeight || image_1.height;
1396
+ var targetWidth = pxToNumber(resizingWidth_1) || imageWidth;
1397
+ var targetHeight = pxToNumber(resizingHeight_1) || imageHeight; // In canvas.toBlob(callback, mimeType, qualityArgument)
1398
+ // qualityArgument doesnt work
1399
+ // so in case compressibleDiamensions are not present, we use ratio
1400
+
1401
+ if (file.type === 'image/png' && !compressibleDiamensions_1) {
1402
+ targetWidth *= compressionRate_1;
1403
+ targetHeight *= compressionRate_1;
1404
+ }
1405
+
1406
+ canvas.width = targetWidth;
1407
+ canvas.height = targetHeight;
1408
+ var context = canvas.getContext('2d');
1409
+ context.drawImage(image_1, 0, 0, targetWidth, targetHeight);
1410
+ context.canvas.toBlob(function (newImageBlob) {
1411
+ var compressedFile = new File([newImageBlob], file.name, {
1412
+ type: file.type
1413
+ });
1414
+
1415
+ if (createCustomParams_1) {
1416
+ logger.info('OpenChannel | useFileUploadCallback: Creating params using onBeforeSendFileMessage', onBeforeSendFileMessage);
1417
+ }
1418
+
1419
+ var params = onBeforeSendFileMessage ? onBeforeSendFileMessage(compressedFile) : createParamsDefault_1(compressedFile);
1420
+ logger.info('OpenChannel | useFileUploadCallback: Uploading file message start', params);
1421
+ var isBottom = checkScrollBottom();
1422
+ currentOpenChannel.sendFileMessage(params).onPending(function (pendingMessage) {
1423
+ messagesDispatcher({
1424
+ type: SENDING_MESSAGE_START,
1425
+ payload: {
1426
+ message: __assign(__assign({}, pendingMessage), {
1427
+ url: URL.createObjectURL(file),
1428
+ // pending thumbnail message seems to be failed
1429
+ requestState: 'pending'
1430
+ }),
1431
+ channel: currentOpenChannel
1432
+ }
1433
+ });
1434
+ }).onSucceeded(function (message) {
1435
+ logger.info('OpenChannel | useFileUploadCallback: Sending message succeeded', message);
1436
+ messagesDispatcher({
1437
+ type: SENDING_MESSAGE_SUCCEEDED,
1438
+ payload: message
1439
+ });
1440
+
1441
+ if (isBottom) {
1442
+ setTimeout(function () {
1443
+ scrollIntoLast(0, scrollRef);
1444
+ });
1445
+ }
1446
+ }).onFailed(function (error, message) {
1447
+ logger.error('OpenChannel | useFileUploadCallback: Sending file message failed', {
1448
+ message: message,
1449
+ error: error
1450
+ }); // @ts-ignore
1451
+
1452
+ message.localUrl = URL.createObjectURL(file); // @ts-ignore
1453
+
1454
+ message.file = file;
1455
+ messagesDispatcher({
1456
+ type: SENDING_MESSAGE_FAILED,
1457
+ payload: message
1458
+ });
1459
+ });
1460
+ }, file.type, compressionRate_1);
1461
+ };
1462
+ } catch (error) {
1463
+ logger.warning('OpenChannel | useFileUploadCallback: Sending file message with image compression failed', error);
1464
+ }
1465
+ } else {
1466
+ // Not using image compression
1467
+ if (createCustomParams_1) {
1468
+ logger.info('OpenChannel | useFileUploadCallback: Creating params using onBeforeSendFileMessage', onBeforeSendFileMessage);
1469
+ }
1470
+
1471
+ var params = onBeforeSendFileMessage ? onBeforeSendFileMessage(file) : createParamsDefault_1(file);
1472
+ logger.info('OpenChannel | useFileUploadCallback: Uploading file message start', params);
1473
+ var isBottom_1 = checkScrollBottom();
1474
+ currentOpenChannel.sendFileMessage(params).onPending(function (pendingMessage) {
1475
+ messagesDispatcher({
1476
+ type: SENDING_MESSAGE_START,
1477
+ payload: {
1478
+ message: __assign(__assign({}, pendingMessage), {
1479
+ url: URL.createObjectURL(file),
1480
+ // pending thumbnail message seems to be failed
1481
+ requestState: 'pending'
1482
+ }),
1483
+ channel: currentOpenChannel
1484
+ }
1485
+ });
1486
+ }).onSucceeded(function (message) {
1487
+ logger.info('OpenChannel | useFileUploadCallback: Sending message succeeded', message);
1488
+ messagesDispatcher({
1489
+ type: SENDING_MESSAGE_SUCCEEDED,
1490
+ payload: message
1491
+ });
1492
+
1493
+ if (isBottom_1) {
1494
+ setTimeout(function () {
1495
+ scrollIntoLast(0, scrollRef);
1496
+ });
1497
+ }
1498
+ }).onFailed(function (error, message) {
1499
+ logger.error('OpenChannel | useFileUploadCallback: Sending file message failed', {
1500
+ message: message,
1501
+ error: error
1502
+ }); // @ts-ignore
1503
+
1504
+ message.localUrl = URL.createObjectURL(file); // @ts-ignore
1505
+
1506
+ message.file = file;
1507
+ messagesDispatcher({
1508
+ type: SENDING_MESSAGE_FAILED,
1509
+ payload: message
1510
+ });
1511
+ });
1512
+ }
1513
+ }
1514
+ }, [currentOpenChannel, onBeforeSendFileMessage, checkScrollBottom, imageCompression]);
1515
+ }
1516
+
1517
+ function useUpdateMessageCallback(_a, _b) {
1518
+ var currentOpenChannel = _a.currentOpenChannel,
1519
+ onBeforeSendUserMessage = _a.onBeforeSendUserMessage;
1520
+ var logger = _b.logger,
1521
+ messagesDispatcher = _b.messagesDispatcher;
1522
+ return useCallback(function (messageId, text, callback) {
1523
+ var createParamsDefault = function (txt) {
1524
+ var params = {
1525
+ message: txt
1526
+ };
1527
+ return params;
1528
+ };
1529
+
1530
+ if (onBeforeSendUserMessage && typeof onBeforeSendUserMessage === 'function') {
1531
+ logger.info('OpenChannel | useUpdateMessageCallback: Creating params using onBeforeUpdateUserMessage');
1532
+ }
1533
+
1534
+ var params = onBeforeSendUserMessage ? onBeforeSendUserMessage(text) : createParamsDefault(text);
1535
+ currentOpenChannel.updateUserMessage(messageId, params).then(function (message) {
1536
+ if (callback) {
1537
+ callback();
1538
+ }
1539
+
1540
+ logger.info('OpenChannel | useUpdateMessageCallback: Updating message succeeded', {
1541
+ message: message,
1542
+ params: params
1543
+ });
1544
+ messagesDispatcher({
1545
+ type: ON_MESSAGE_UPDATED,
1546
+ payload: {
1547
+ channel: currentOpenChannel,
1548
+ message: message
1549
+ }
1550
+ });
1551
+ });
1552
+ }, [currentOpenChannel, onBeforeSendUserMessage]);
1553
+ }
1554
+
1555
+ function useDeleteMessageCallback(_a, _b) {
1556
+ var currentOpenChannel = _a.currentOpenChannel;
1557
+ var logger = _b.logger,
1558
+ messagesDispatcher = _b.messagesDispatcher;
1559
+ return useCallback(function (message, callback) {
1560
+ logger.info('OpenChannel | useDeleteMessageCallback: Deleting message', message);
1561
+ var sendingStatus = message.sendingStatus;
1562
+ logger.info('OpenChannel | useDeleteMessageCallback: Deleting message requestState', sendingStatus);
1563
+
1564
+ if (sendingStatus === 'failed' || sendingStatus === 'pending') {
1565
+ logger.info('OpenChannel | useDeleteMessageCallback: Deleted message from local', message);
1566
+ messagesDispatcher({
1567
+ type: ON_MESSAGE_DELETED_BY_REQ_ID,
1568
+ payload: message.reqId
1569
+ });
1570
+
1571
+ if (callback) {
1572
+ callback();
1573
+ }
1574
+ } else {
1575
+ if (!(message.messageType === 'file' || message.messageType === 'user')) {
1576
+ return;
1577
+ }
1578
+
1579
+ var messageToDelete = message;
1580
+ currentOpenChannel.deleteMessage(messageToDelete).then(function () {
1581
+ logger.info('OpenChannel | useDeleteMessageCallback: Deleting message on server', sendingStatus);
1582
+
1583
+ if (callback) {
1584
+ callback();
1585
+ }
1586
+
1587
+ logger.info('OpenChannel | useDeleteMessageCallback: Deleting message succeeded', message);
1588
+ messagesDispatcher({
1589
+ type: ON_MESSAGE_DELETED,
1590
+ payload: {
1591
+ channel: currentOpenChannel,
1592
+ messageId: message.messageId
1593
+ }
1594
+ });
1595
+ }).catch(function (error) {
1596
+ logger.warning('OpenChannel | useDeleteMessageCallback: Deleting message failed', error);
1597
+ });
1598
+ }
1599
+ }, [currentOpenChannel]);
1600
+ }
1601
+
1602
+ function useResendMessageCallback(_a, _b) {
1603
+ var currentOpenChannel = _a.currentOpenChannel;
1604
+ var logger = _b.logger,
1605
+ messagesDispatcher = _b.messagesDispatcher;
1606
+ return useCallback(function (failedMessage) {
1607
+ logger.info('OpenChannel | useResendMessageCallback: Resending message has started', failedMessage); // eslint-disable-next-line no-param-reassign
1608
+
1609
+ var _a = failedMessage,
1610
+ messageType = _a.messageType,
1611
+ file = _a.file;
1612
+
1613
+ if (failedMessage && typeof failedMessage.isResendable === 'function' && failedMessage.isResendable) {
1614
+ // eslint-disable-next-line no-param-reassign
1615
+ failedMessage.requestState = 'pending';
1616
+ messagesDispatcher({
1617
+ type: RESENDING_MESSAGE_START,
1618
+ payload: {
1619
+ channel: currentOpenChannel,
1620
+ message: failedMessage
1621
+ }
1622
+ }); // userMessage
1623
+
1624
+ if (messageType === 'user' && failedMessage.messageType === 'user') {
1625
+ currentOpenChannel.resendUserMessage(failedMessage).then(function (message) {
1626
+ logger.info('OpenChannel | useResendMessageCallback: Reseding message succeeded', message);
1627
+ messagesDispatcher({
1628
+ type: SENDING_MESSAGE_SUCCEEDED,
1629
+ payload: message
1630
+ });
1631
+ }).catch(function (error) {
1632
+ logger.warning('OpenChannel | useResendMessageCallback: Resending message failed', error); // eslint-disable-next-line no-param-reassign
1633
+
1634
+ failedMessage.requestState = 'failed';
1635
+ messagesDispatcher({
1636
+ type: SENDING_MESSAGE_FAILED,
1637
+ payload: failedMessage
1638
+ });
1639
+ });
1640
+ } // fileMessage
1641
+
1642
+
1643
+ if (messageType === 'file' && failedMessage.messageType === 'file') {
1644
+ currentOpenChannel.resendFileMessage(failedMessage, file).then(function (message) {
1645
+ logger.info('OpenChannel | useResendMessageCallback: Resending file message succeeded', message);
1646
+ messagesDispatcher({
1647
+ type: SENDING_MESSAGE_SUCCEEDED,
1648
+ payload: message
1649
+ });
1650
+ }).catch(function (error) {
1651
+ logger.warning('OpenChannel | useResendMessageCallback: Resending file message failed', error); // eslint-disable-next-line no-param-reassign
1652
+
1653
+ failedMessage.requestState = 'failed';
1654
+ messagesDispatcher({
1655
+ type: SENDING_MESSAGE_FAILED,
1656
+ payload: failedMessage
1657
+ });
1658
+ });
1659
+ }
1660
+ } else {
1661
+ // to alert user on console
1662
+ // eslint-disable-next-line no-console
1663
+ console.error('OpenChannel | useResendMessageCallback: Message is not resendable');
1664
+ logger.warning('OpenChannel | useResendMessageCallback: Message is not resendable', failedMessage);
1665
+ }
1666
+ }, [currentOpenChannel]);
1667
+ }
1668
+
1669
+ var THROTTLE_TIMER = 5000; // to trim message list so that we wont keep thousands of messages in memory
1670
+ // We are throttling here; not debouncing
1671
+ // it will be called once very 5 sec if messagesLength, messageLimit changes
1672
+ // we check if messagesLength > messageLimit before dispatching action
1673
+
1674
+ function useTrimMessageList(_a, _b) {
1675
+ var messagesLength = _a.messagesLength,
1676
+ messageLimit = _a.messageLimit;
1677
+ var messagesDispatcher = _b.messagesDispatcher,
1678
+ logger = _b.logger;
1679
+
1680
+ var _c = useState(false),
1681
+ inProgress = _c[0],
1682
+ setInProgress = _c[1];
1683
+
1684
+ useEffect(function () {
1685
+ if (inProgress) {
1686
+ return;
1687
+ }
1688
+
1689
+ if (typeof messagesLength === 'number' && messagesLength > messageLimit) {
1690
+ logger.info('Trimming MessageList');
1691
+ messagesDispatcher({
1692
+ type: TRIM_MESSAGE_LIST,
1693
+ payload: {
1694
+ messageLimit: messageLimit
1695
+ }
1696
+ });
1697
+ }
1698
+
1699
+ setInProgress(true);
1700
+ setTimeout(function () {
1701
+ setInProgress(false);
1702
+ }, THROTTLE_TIMER);
1703
+ }, [messagesLength, messageLimit]);
1704
+ }
1705
+
1706
+ var OpenChannelContext = /*#__PURE__*/React__default.createContext(undefined);
1707
+
1708
+ var OpenChannelProvider = function (props) {
1709
+ var _a, _b, _c, _d, _e, _f;
1710
+
1711
+ var channelUrl = props.channelUrl,
1712
+ children = props.children,
1713
+ _g = props.isMessageGroupingEnabled,
1714
+ isMessageGroupingEnabled = _g === void 0 ? true : _g,
1715
+ queries = props.queries,
1716
+ onBeforeSendUserMessage = props.onBeforeSendUserMessage,
1717
+ messageLimit = props.messageLimit,
1718
+ onBeforeSendFileMessage = props.onBeforeSendFileMessage,
1719
+ onChatHeaderActionClick = props.onChatHeaderActionClick,
1720
+ onBackClick = props.onBackClick; // We didn't decide to support fetching participant list
1721
+
1722
+ var fetchingParticipants = false;
1723
+ var globalStore = useSendbirdStateContext();
1724
+ 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;
1725
+ 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;
1726
+ var user = (_f = (_e = globalStore === null || globalStore === void 0 ? void 0 : globalStore.stores) === null || _e === void 0 ? void 0 : _e.userStore) === null || _f === void 0 ? void 0 : _f.user;
1727
+ var config = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config;
1728
+ var userId = config.userId,
1729
+ isOnline = config.isOnline,
1730
+ logger = config.logger,
1731
+ pubSub = config.pubSub,
1732
+ imageCompression = config.imageCompression; // hook variables
1733
+
1734
+ var _h = useReducer(reducer, initialState),
1735
+ messagesStore = _h[0],
1736
+ messagesDispatcher = _h[1];
1737
+
1738
+ var allMessages = messagesStore.allMessages,
1739
+ loading = messagesStore.loading,
1740
+ initialized = messagesStore.initialized,
1741
+ currentOpenChannel = messagesStore.currentOpenChannel,
1742
+ isInvalid = messagesStore.isInvalid,
1743
+ hasMore = messagesStore.hasMore,
1744
+ lastMessageTimestamp = messagesStore.lastMessageTimestamp,
1745
+ operators = messagesStore.operators,
1746
+ bannedParticipantIds = messagesStore.bannedParticipantIds,
1747
+ mutedParticipantIds = messagesStore.mutedParticipantIds; // ref
1748
+
1749
+ var messageInputRef = useRef(null); // useSendMessageCallback
1750
+
1751
+ var conversationScrollRef = useRef(null); // useScrollAfterSendMessageCallback
1752
+ // const
1753
+
1754
+ var userFilledMessageListParams = queries === null || queries === void 0 ? void 0 : queries.messageListParams;
1755
+ var disabled = !initialized || !isOnline || isDisabledBecauseFrozen(currentOpenChannel, userId) || isDisabledBecauseMuted(mutedParticipantIds, userId); // useMemo
1756
+
1757
+ var amIBanned = useMemo(function () {
1758
+ return bannedParticipantIds.indexOf(user.userId) >= 0;
1759
+ }, [channelUrl, bannedParticipantIds, user]);
1760
+ var amIMuted = useMemo(function () {
1761
+ return mutedParticipantIds.indexOf(user.userId) >= 0;
1762
+ }, [channelUrl, mutedParticipantIds, user]);
1763
+ var amIOperator = useMemo(function () {
1764
+ return operators.map(function (operator) {
1765
+ return operator.userId;
1766
+ }).indexOf(user.userId) >= 0;
1767
+ }, [channelUrl, operators, user]); // use hooks
1768
+
1769
+ useSetChannel({
1770
+ channelUrl: channelUrl,
1771
+ sdkInit: sdkInit,
1772
+ fetchingParticipants: fetchingParticipants,
1773
+ userId: userId,
1774
+ currentOpenChannel: currentOpenChannel
1775
+ }, {
1776
+ sdk: sdk,
1777
+ logger: logger,
1778
+ messagesDispatcher: messagesDispatcher
1779
+ });
1780
+ var checkScrollBottom = useCheckScrollBottom({
1781
+ conversationScrollRef: conversationScrollRef
1782
+ }, {
1783
+ logger: logger
1784
+ });
1785
+ useHandleChannelEvents({
1786
+ currentOpenChannel: currentOpenChannel,
1787
+ checkScrollBottom: checkScrollBottom
1788
+ }, {
1789
+ sdk: sdk,
1790
+ logger: logger,
1791
+ messagesDispatcher: messagesDispatcher,
1792
+ scrollRef: conversationScrollRef
1793
+ });
1794
+ useInitialMessagesFetch({
1795
+ currentOpenChannel: currentOpenChannel,
1796
+ userFilledMessageListParams: userFilledMessageListParams
1797
+ }, {
1798
+ logger: logger,
1799
+ messagesDispatcher: messagesDispatcher,
1800
+ scrollRef: conversationScrollRef
1801
+ });
1802
+ var fetchMore = shouldFetchMore(allMessages === null || allMessages === void 0 ? void 0 : allMessages.length, messageLimit); // donot fetch more for streaming
1803
+
1804
+ var onScroll = useScrollCallback({
1805
+ currentOpenChannel: currentOpenChannel,
1806
+ lastMessageTimestamp: lastMessageTimestamp,
1807
+ fetchMore: fetchMore
1808
+ }, {
1809
+ sdk: sdk,
1810
+ logger: logger,
1811
+ messagesDispatcher: messagesDispatcher,
1812
+ hasMore: hasMore,
1813
+ userFilledMessageListParams: userFilledMessageListParams
1814
+ });
1815
+ var handleSendMessage = useSendMessageCallback({
1816
+ currentOpenChannel: currentOpenChannel,
1817
+ onBeforeSendUserMessage: onBeforeSendUserMessage,
1818
+ checkScrollBottom: checkScrollBottom,
1819
+ messageInputRef: messageInputRef
1820
+ }, {
1821
+ sdk: sdk,
1822
+ logger: logger,
1823
+ messagesDispatcher: messagesDispatcher,
1824
+ scrollRef: conversationScrollRef
1825
+ });
1826
+ var handleFileUpload = useFileUploadCallback({
1827
+ currentOpenChannel: currentOpenChannel,
1828
+ onBeforeSendFileMessage: onBeforeSendFileMessage,
1829
+ checkScrollBottom: checkScrollBottom,
1830
+ imageCompression: imageCompression
1831
+ }, {
1832
+ sdk: sdk,
1833
+ logger: logger,
1834
+ messagesDispatcher: messagesDispatcher,
1835
+ scrollRef: conversationScrollRef
1836
+ });
1837
+ var updateMessage = useUpdateMessageCallback({
1838
+ currentOpenChannel: currentOpenChannel,
1839
+ onBeforeSendUserMessage: onBeforeSendUserMessage
1840
+ }, {
1841
+ logger: logger,
1842
+ messagesDispatcher: messagesDispatcher
1843
+ });
1844
+ var deleteMessage = useDeleteMessageCallback({
1845
+ currentOpenChannel: currentOpenChannel
1846
+ }, {
1847
+ logger: logger,
1848
+ messagesDispatcher: messagesDispatcher
1849
+ });
1850
+ var resendMessage = useResendMessageCallback({
1851
+ currentOpenChannel: currentOpenChannel
1852
+ }, {
1853
+ logger: logger,
1854
+ messagesDispatcher: messagesDispatcher
1855
+ });
1856
+ useTrimMessageList({
1857
+ messagesLength: allMessages === null || allMessages === void 0 ? void 0 : allMessages.length,
1858
+ messageLimit: messageLimit
1859
+ }, {
1860
+ messagesDispatcher: messagesDispatcher,
1861
+ logger: logger
1862
+ }); // handle API calls from withSendbird
1863
+
1864
+ useEffect(function () {
1865
+ var subscriber = new Map();
1866
+
1867
+ if (!pubSub || !pubSub.subscribe) {
1868
+ return;
1869
+ }
1870
+
1871
+ subscriber.set(SEND_USER_MESSAGE, pubSub.subscribe(SEND_USER_MESSAGE, function (msg) {
1872
+ var channel = msg.channel,
1873
+ message = msg.message;
1874
+ scrollIntoLast(0, conversationScrollRef);
1875
+
1876
+ if (channel && channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
1877
+ messagesDispatcher({
1878
+ type: SENDING_MESSAGE_SUCCEEDED,
1879
+ payload: message
1880
+ });
1881
+ }
1882
+ }));
1883
+ subscriber.set(SEND_MESSAGE_START, pubSub.subscribe(SEND_MESSAGE_START, function (msg) {
1884
+ var channel = msg.channel,
1885
+ message = msg.message;
1886
+
1887
+ if (channel && channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
1888
+ messagesDispatcher({
1889
+ type: SENDING_MESSAGE_START,
1890
+ payload: {
1891
+ message: message,
1892
+ channel: channel
1893
+ }
1894
+ });
1895
+ }
1896
+ }));
1897
+ subscriber.set(SEND_FILE_MESSAGE, pubSub.subscribe(SEND_FILE_MESSAGE, function (msg) {
1898
+ var channel = msg.channel,
1899
+ message = msg.message;
1900
+ scrollIntoLast(0, conversationScrollRef);
1901
+
1902
+ if (channel && channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
1903
+ messagesDispatcher({
1904
+ type: SENDING_MESSAGE_SUCCEEDED,
1905
+ payload: {
1906
+ message: message,
1907
+ channel: channel
1908
+ }
1909
+ });
1910
+ }
1911
+ }));
1912
+ subscriber.set(UPDATE_USER_MESSAGE, pubSub.subscribe(UPDATE_USER_MESSAGE, function (msg) {
1913
+ var channel = msg.channel,
1914
+ message = msg.message,
1915
+ fromSelector = msg.fromSelector;
1916
+
1917
+ if (fromSelector && channel && channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
1918
+ messagesDispatcher({
1919
+ type: ON_MESSAGE_UPDATED,
1920
+ payload: {
1921
+ channel: channel,
1922
+ message: message
1923
+ }
1924
+ });
1925
+ }
1926
+ }));
1927
+ subscriber.set(DELETE_MESSAGE, pubSub.subscribe(DELETE_MESSAGE, function (msg) {
1928
+ var channel = msg.channel,
1929
+ messageId = msg.messageId;
1930
+
1931
+ if (channel && channelUrl === (channel === null || channel === void 0 ? void 0 : channel.url)) {
1932
+ messagesDispatcher({
1933
+ type: ON_MESSAGE_DELETED,
1934
+ payload: messageId
1935
+ });
1936
+ }
1937
+ }));
1938
+ return function () {
1939
+ if (subscriber) {
1940
+ subscriber.forEach(function (s) {
1941
+ try {
1942
+ s.remove();
1943
+ } catch (_a) {//
1944
+ }
1945
+ });
1946
+ }
1947
+ };
1948
+ }, [channelUrl, sdkInit]);
1949
+ return /*#__PURE__*/React__default.createElement(OpenChannelContext.Provider, {
1950
+ value: {
1951
+ // props
1952
+ channelUrl: channelUrl,
1953
+ children: children,
1954
+ isMessageGroupingEnabled: isMessageGroupingEnabled,
1955
+ queries: queries,
1956
+ onBeforeSendUserMessage: onBeforeSendUserMessage,
1957
+ messageLimit: messageLimit,
1958
+ onBeforeSendFileMessage: onBeforeSendFileMessage,
1959
+ onChatHeaderActionClick: onChatHeaderActionClick,
1960
+ onBackClick: onBackClick,
1961
+ // store
1962
+ allMessages: allMessages,
1963
+ loading: loading,
1964
+ initialized: initialized,
1965
+ currentOpenChannel: currentOpenChannel,
1966
+ isInvalid: isInvalid,
1967
+ hasMore: hasMore,
1968
+ lastMessageTimestamp: lastMessageTimestamp,
1969
+ operators: operators,
1970
+ bannedParticipantIds: bannedParticipantIds,
1971
+ mutedParticipantIds: mutedParticipantIds,
1972
+ // derived/utils
1973
+ messageInputRef: messageInputRef,
1974
+ conversationScrollRef: conversationScrollRef,
1975
+ disabled: disabled,
1976
+ amIBanned: amIBanned,
1977
+ amIMuted: amIMuted,
1978
+ amIOperator: amIOperator,
1979
+ checkScrollBottom: checkScrollBottom,
1980
+ fetchMore: fetchMore,
1981
+ onScroll: onScroll,
1982
+ handleSendMessage: handleSendMessage,
1983
+ handleFileUpload: handleFileUpload,
1984
+ updateMessage: updateMessage,
1985
+ deleteMessage: deleteMessage,
1986
+ resendMessage: resendMessage
1987
+ }
1988
+ }, /*#__PURE__*/React__default.createElement(UserProfileProvider, {
1989
+ isOpenChannel: true,
1990
+ renderUserProfile: props === null || props === void 0 ? void 0 : props.renderUserProfile,
1991
+ disableUserProfile: props === null || props === void 0 ? void 0 : props.disableUserProfile
1992
+ }, children));
1993
+ };
1994
+
1995
+ var useOpenChannelContext = function () {
1996
+ return React__default.useContext(OpenChannelContext);
1997
+ };
1998
+
1999
+ export { OpenChannelProvider as O, compareMessagesForGrouping as c, kFormatter as k, useOpenChannelContext as u };
2000
+ //# sourceMappingURL=OpenChannelProvider-66965e8b.js.map