@sendbird/uikit-react 3.5.0-rc.1 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (936) hide show
  1. package/App.js +312 -235
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +544 -0
  4. package/Channel/components/ChannelHeader.js +46 -41
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +104 -131
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +56 -52
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +12 -7
  11. package/Channel/components/FrozenNotification.js.map +1 -1
  12. package/Channel/components/Message.js +240 -230
  13. package/Channel/components/Message.js.map +1 -1
  14. package/Channel/components/MessageInput.js +152 -129
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageList.js +260 -175
  17. package/Channel/components/MessageList.js.map +1 -1
  18. package/Channel/components/RemoveMessageModal.js +34 -30
  19. package/Channel/components/RemoveMessageModal.js.map +1 -1
  20. package/Channel/components/SuggestedMentionList.js +139 -193
  21. package/Channel/components/SuggestedMentionList.js.map +1 -1
  22. package/Channel/components/TypingIndicator.js +44 -61
  23. package/Channel/components/TypingIndicator.js.map +1 -1
  24. package/Channel/components/UnreadCount.js +18 -20
  25. package/Channel/components/UnreadCount.js.map +1 -1
  26. package/Channel/context.js +12 -19
  27. package/Channel/context.js.map +1 -1
  28. package/Channel.js +69 -44
  29. package/Channel.js.map +1 -1
  30. package/ChannelList/components/AddChannel.js +29 -30
  31. package/ChannelList/components/AddChannel.js.map +1 -1
  32. package/ChannelList/components/ChannelListHeader.js +32 -28
  33. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  34. package/ChannelList/components/ChannelListUI.js +101 -142
  35. package/ChannelList/components/ChannelListUI.js.map +1 -1
  36. package/ChannelList/components/ChannelPreview.js +72 -82
  37. package/ChannelList/components/ChannelPreview.js.map +1 -1
  38. package/ChannelList/components/ChannelPreviewAction.js +36 -36
  39. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  40. package/ChannelList/context.js +7 -8
  41. package/ChannelList/context.js.map +1 -1
  42. package/ChannelList.js +32 -31
  43. package/ChannelList.js.map +1 -1
  44. package/{ChannelListProvider-1d36e2e9.js → ChannelListProvider-4cf5c0f5.js} +233 -285
  45. package/ChannelListProvider-4cf5c0f5.js.map +1 -0
  46. package/{ChannelProvider-289cd35f.js → ChannelProvider-6e8e99df.js} +659 -726
  47. package/ChannelProvider-6e8e99df.js.map +1 -0
  48. package/ChannelSettings/components/ChannelProfile.js +33 -46
  49. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  50. package/ChannelSettings/components/ChannelSettingsUI.js +45 -48
  51. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  52. package/ChannelSettings/components/EditDetailsModal.js +47 -58
  53. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  54. package/ChannelSettings/components/LeaveChannel.js +40 -46
  55. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  56. package/ChannelSettings/components/ModerationPanel.js +522 -605
  57. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  58. package/ChannelSettings/components/UserListItem.js +71 -72
  59. package/ChannelSettings/components/UserListItem.js.map +1 -1
  60. package/ChannelSettings/components/UserPanel.js +29 -32
  61. package/ChannelSettings/components/UserPanel.js.map +1 -1
  62. package/ChannelSettings/context.js +53 -57
  63. package/ChannelSettings/context.js.map +1 -1
  64. package/ChannelSettings.js +20 -20
  65. package/ChannelSettings.js.map +1 -1
  66. package/CreateChannel/components/CreateChannelUI.js +24 -24
  67. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  68. package/CreateChannel/components/InviteUsers.js +102 -124
  69. package/CreateChannel/components/InviteUsers.js.map +1 -1
  70. package/CreateChannel/components/SelectChannelType.js +41 -42
  71. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  72. package/CreateChannel/context.js +4 -4
  73. package/CreateChannel.js +22 -21
  74. package/CreateChannel.js.map +1 -1
  75. package/CreateChannelProvider-34603fa5.js +44 -0
  76. package/CreateChannelProvider-34603fa5.js.map +1 -0
  77. package/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
  78. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  79. package/CreateOpenChannel/context.js +33 -33
  80. package/CreateOpenChannel/context.js.map +1 -1
  81. package/CreateOpenChannel.js +18 -17
  82. package/CreateOpenChannel.js.map +1 -1
  83. package/EditUserProfile/components/EditUserProfileUI.js +12 -13
  84. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  85. package/EditUserProfile/context.js +0 -2
  86. package/EditUserProfile/context.js.map +1 -1
  87. package/EditUserProfile.js +18 -17
  88. package/EditUserProfile.js.map +1 -1
  89. package/LocalizationContext-04c0c9dc.js +20 -0
  90. package/{LocalizationContext-289c1917.js.map → LocalizationContext-04c0c9dc.js.map} +1 -1
  91. package/MediaQueryContext-ff9dca2b.js +87 -0
  92. package/MediaQueryContext-ff9dca2b.js.map +1 -0
  93. package/MemberList-9bf26111.js +403 -0
  94. package/MemberList-9bf26111.js.map +1 -0
  95. package/Message/context.js +31 -0
  96. package/Message/context.js.map +1 -0
  97. package/MessageSearch/components/MessageSearchUI.js +62 -71
  98. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  99. package/MessageSearch/context.js +201 -224
  100. package/MessageSearch/context.js.map +1 -1
  101. package/MessageSearch.js +46 -58
  102. package/MessageSearch.js.map +1 -1
  103. package/OpenChannel/components/FrozenChannelNotification.js +8 -6
  104. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  105. package/OpenChannel/components/OpenChannelHeader.js +27 -25
  106. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  107. package/OpenChannel/components/OpenChannelInput.js +50 -35
  108. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  109. package/OpenChannel/components/OpenChannelMessage.js +174 -191
  110. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  111. package/OpenChannel/components/OpenChannelMessageList.js +72 -92
  112. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  113. package/OpenChannel/components/OpenChannelUI.js +52 -49
  114. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  115. package/OpenChannel/context.js +8 -9
  116. package/OpenChannel/context.js.map +1 -1
  117. package/OpenChannel.js +36 -30
  118. package/OpenChannel.js.map +1 -1
  119. package/OpenChannelList/components/OpenChannelListUI.js +61 -76
  120. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  121. package/OpenChannelList/components/OpenChannelPreview.js +21 -22
  122. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  123. package/OpenChannelList/context.js +3 -4
  124. package/OpenChannelList/context.js.map +1 -1
  125. package/OpenChannelList.js +26 -24
  126. package/OpenChannelList.js.map +1 -1
  127. package/OpenChannelListProvider-d7372692.js +429 -0
  128. package/OpenChannelListProvider-d7372692.js.map +1 -0
  129. package/OpenChannelProvider-24cd68b9.js +1885 -0
  130. package/OpenChannelProvider-24cd68b9.js.map +1 -0
  131. package/OpenChannelSettings/components/EditDetailsModal.js +47 -56
  132. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  133. package/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
  134. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  135. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
  136. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  137. package/OpenChannelSettings/components/OperatorUI.js +516 -586
  138. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  139. package/OpenChannelSettings/components/ParticipantUI.js +15 -16
  140. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  141. package/OpenChannelSettings/context.js +56 -69
  142. package/OpenChannelSettings/context.js.map +1 -1
  143. package/OpenChannelSettings.js +19 -20
  144. package/OpenChannelSettings.js.map +1 -1
  145. package/README.md +62 -13
  146. package/RemoveMessageModal-94e2bf9e.js +36 -0
  147. package/RemoveMessageModal-94e2bf9e.js.map +1 -0
  148. package/SendbirdProvider.js +749 -408
  149. package/SendbirdProvider.js.map +1 -1
  150. package/Thread/components/ParentMessageInfo.js +238 -217
  151. package/Thread/components/ParentMessageInfo.js.map +1 -1
  152. package/Thread/components/ParentMessageInfoItem.js +112 -89
  153. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  154. package/Thread/components/ThreadHeader.js +22 -23
  155. package/Thread/components/ThreadHeader.js.map +1 -1
  156. package/Thread/components/ThreadList.js +108 -83
  157. package/Thread/components/ThreadList.js.map +1 -1
  158. package/Thread/components/ThreadListItem.js +306 -276
  159. package/Thread/components/ThreadListItem.js.map +1 -1
  160. package/Thread/components/ThreadMessageInput.js +146 -113
  161. package/Thread/components/ThreadMessageInput.js.map +1 -1
  162. package/Thread/components/ThreadUI.js +169 -138
  163. package/Thread/components/ThreadUI.js.map +1 -1
  164. package/Thread/context/types.js +9 -14
  165. package/Thread/context/types.js.map +1 -1
  166. package/Thread/context.js +8 -8
  167. package/Thread.js +87 -57
  168. package/Thread.js.map +1 -1
  169. package/ThreadProvider-203b94f3.js +1695 -0
  170. package/ThreadProvider-203b94f3.js.map +1 -0
  171. package/{UserProfileContext-e3530842.js → UserProfileContext-c776d522.js} +1 -4
  172. package/{UserProfileContext-e3530842.js.map → UserProfileContext-c776d522.js.map} +1 -1
  173. package/VoiceMessageInputWrapper-77d8f487.js +170 -0
  174. package/VoiceMessageInputWrapper-77d8f487.js.map +1 -0
  175. package/VoicePlayer/context.js +7 -0
  176. package/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
  177. package/VoicePlayer/useVoicePlayer.js +84 -0
  178. package/VoicePlayer/useVoicePlayer.js.map +1 -0
  179. package/VoiceRecorder/context.js +156 -0
  180. package/VoiceRecorder/context.js.map +1 -0
  181. package/VoiceRecorder/useVoiceRecorder.js +121 -0
  182. package/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  183. package/WebAudioUtils-62e6d3a7.js +123 -0
  184. package/WebAudioUtils-62e6d3a7.js.map +1 -0
  185. package/{_rollupPluginBabelHelpers-519f674b.js → _rollupPluginBabelHelpers-fb0e05a4.js} +17 -11
  186. package/_rollupPluginBabelHelpers-fb0e05a4.js.map +1 -0
  187. package/actionTypes-1db5749d.js +8 -0
  188. package/actionTypes-1db5749d.js.map +1 -0
  189. package/cjs/App.js +312 -235
  190. package/cjs/App.js.map +1 -1
  191. package/cjs/Channel/components/ChannelHeader.js +46 -41
  192. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  193. package/cjs/Channel/components/ChannelUI.js +102 -129
  194. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  195. package/cjs/Channel/components/FileViewer.js +56 -52
  196. package/cjs/Channel/components/FileViewer.js.map +1 -1
  197. package/cjs/Channel/components/FrozenNotification.js +12 -7
  198. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  199. package/cjs/Channel/components/Message.js +243 -233
  200. package/cjs/Channel/components/Message.js.map +1 -1
  201. package/cjs/Channel/components/MessageInput.js +151 -128
  202. package/cjs/Channel/components/MessageInput.js.map +1 -1
  203. package/cjs/Channel/components/MessageList.js +260 -175
  204. package/cjs/Channel/components/MessageList.js.map +1 -1
  205. package/cjs/Channel/components/RemoveMessageModal.js +34 -30
  206. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  207. package/cjs/Channel/components/SuggestedMentionList.js +139 -193
  208. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  209. package/cjs/Channel/components/TypingIndicator.js +44 -61
  210. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  211. package/cjs/Channel/components/UnreadCount.js +18 -20
  212. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  213. package/cjs/Channel/context.js +12 -23
  214. package/cjs/Channel/context.js.map +1 -1
  215. package/cjs/Channel.js +69 -44
  216. package/cjs/Channel.js.map +1 -1
  217. package/cjs/ChannelList/components/AddChannel.js +29 -30
  218. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  219. package/cjs/ChannelList/components/ChannelListHeader.js +32 -28
  220. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  221. package/cjs/ChannelList/components/ChannelListUI.js +100 -141
  222. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  223. package/cjs/ChannelList/components/ChannelPreview.js +72 -82
  224. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  225. package/cjs/ChannelList/components/ChannelPreviewAction.js +36 -36
  226. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  227. package/cjs/ChannelList/context.js +7 -8
  228. package/cjs/ChannelList/context.js.map +1 -1
  229. package/cjs/ChannelList.js +32 -31
  230. package/cjs/ChannelList.js.map +1 -1
  231. package/cjs/{ChannelListProvider-0de52d2b.js → ChannelListProvider-e0ce316a.js} +232 -284
  232. package/cjs/ChannelListProvider-e0ce316a.js.map +1 -0
  233. package/cjs/{ChannelProvider-fc58e60e.js → ChannelProvider-0df75472.js} +657 -724
  234. package/cjs/ChannelProvider-0df75472.js.map +1 -0
  235. package/cjs/ChannelSettings/components/ChannelProfile.js +33 -46
  236. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  237. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +45 -48
  238. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  239. package/cjs/ChannelSettings/components/EditDetailsModal.js +47 -58
  240. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  241. package/cjs/ChannelSettings/components/LeaveChannel.js +40 -46
  242. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  243. package/cjs/ChannelSettings/components/ModerationPanel.js +522 -605
  244. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  245. package/cjs/ChannelSettings/components/UserListItem.js +71 -72
  246. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  247. package/cjs/ChannelSettings/components/UserPanel.js +29 -32
  248. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  249. package/cjs/ChannelSettings/context.js +55 -59
  250. package/cjs/ChannelSettings/context.js.map +1 -1
  251. package/cjs/ChannelSettings.js +20 -20
  252. package/cjs/ChannelSettings.js.map +1 -1
  253. package/cjs/CreateChannel/components/CreateChannelUI.js +24 -24
  254. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  255. package/cjs/CreateChannel/components/InviteUsers.js +102 -124
  256. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  257. package/cjs/CreateChannel/components/SelectChannelType.js +41 -42
  258. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  259. package/cjs/CreateChannel/context.js +4 -4
  260. package/cjs/CreateChannel.js +22 -21
  261. package/cjs/CreateChannel.js.map +1 -1
  262. package/cjs/CreateChannelProvider-c0fca0a5.js +52 -0
  263. package/cjs/CreateChannelProvider-c0fca0a5.js.map +1 -0
  264. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
  265. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  266. package/cjs/CreateOpenChannel/context.js +33 -33
  267. package/cjs/CreateOpenChannel/context.js.map +1 -1
  268. package/cjs/CreateOpenChannel.js +18 -17
  269. package/cjs/CreateOpenChannel.js.map +1 -1
  270. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -13
  271. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  272. package/cjs/EditUserProfile/context.js +0 -2
  273. package/cjs/EditUserProfile/context.js.map +1 -1
  274. package/cjs/EditUserProfile.js +18 -17
  275. package/cjs/EditUserProfile.js.map +1 -1
  276. package/cjs/{LocalizationContext-bddc5c2b.js → LocalizationContext-0e429c3d.js} +9 -11
  277. package/cjs/{LocalizationContext-bddc5c2b.js.map → LocalizationContext-0e429c3d.js.map} +1 -1
  278. package/cjs/MediaQueryContext-33fc3b17.js +94 -0
  279. package/cjs/MediaQueryContext-33fc3b17.js.map +1 -0
  280. package/cjs/MemberList-a45a51c4.js +409 -0
  281. package/cjs/MemberList-a45a51c4.js.map +1 -0
  282. package/cjs/Message/context.js +40 -0
  283. package/cjs/Message/context.js.map +1 -0
  284. package/cjs/MessageSearch/components/MessageSearchUI.js +61 -70
  285. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  286. package/cjs/MessageSearch/context.js +201 -224
  287. package/cjs/MessageSearch/context.js.map +1 -1
  288. package/cjs/MessageSearch.js +46 -58
  289. package/cjs/MessageSearch.js.map +1 -1
  290. package/cjs/OpenChannel/components/FrozenChannelNotification.js +8 -6
  291. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  292. package/cjs/OpenChannel/components/OpenChannelHeader.js +27 -25
  293. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  294. package/cjs/OpenChannel/components/OpenChannelInput.js +50 -35
  295. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  296. package/cjs/OpenChannel/components/OpenChannelMessage.js +174 -191
  297. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  298. package/cjs/OpenChannel/components/OpenChannelMessageList.js +72 -92
  299. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  300. package/cjs/OpenChannel/components/OpenChannelUI.js +52 -49
  301. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  302. package/cjs/OpenChannel/context.js +8 -9
  303. package/cjs/OpenChannel/context.js.map +1 -1
  304. package/cjs/OpenChannel.js +36 -30
  305. package/cjs/OpenChannel.js.map +1 -1
  306. package/cjs/OpenChannelList/components/OpenChannelListUI.js +61 -76
  307. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  308. package/cjs/OpenChannelList/components/OpenChannelPreview.js +21 -22
  309. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  310. package/cjs/OpenChannelList/context.js +3 -4
  311. package/cjs/OpenChannelList/context.js.map +1 -1
  312. package/cjs/OpenChannelList.js +26 -24
  313. package/cjs/OpenChannelList.js.map +1 -1
  314. package/cjs/OpenChannelListProvider-fc8b53ee.js +439 -0
  315. package/cjs/OpenChannelListProvider-fc8b53ee.js.map +1 -0
  316. package/cjs/OpenChannelProvider-217a8ac2.js +1894 -0
  317. package/cjs/OpenChannelProvider-217a8ac2.js.map +1 -0
  318. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +47 -56
  319. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  320. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
  321. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  322. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
  323. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  324. package/cjs/OpenChannelSettings/components/OperatorUI.js +516 -586
  325. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  326. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -16
  327. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  328. package/cjs/OpenChannelSettings/context.js +57 -70
  329. package/cjs/OpenChannelSettings/context.js.map +1 -1
  330. package/cjs/OpenChannelSettings.js +19 -20
  331. package/cjs/OpenChannelSettings.js.map +1 -1
  332. package/cjs/{RemoveMessageModal-9169766a.js → RemoveMessageModal-5903f232.js} +19 -14
  333. package/cjs/RemoveMessageModal-5903f232.js.map +1 -0
  334. package/cjs/SendbirdProvider.js +748 -408
  335. package/cjs/SendbirdProvider.js.map +1 -1
  336. package/cjs/Thread/components/ParentMessageInfo.js +237 -216
  337. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  338. package/cjs/Thread/components/ParentMessageInfoItem.js +111 -88
  339. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  340. package/cjs/Thread/components/ThreadHeader.js +22 -23
  341. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  342. package/cjs/Thread/components/ThreadList.js +108 -83
  343. package/cjs/Thread/components/ThreadList.js.map +1 -1
  344. package/cjs/Thread/components/ThreadListItem.js +305 -275
  345. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  346. package/cjs/Thread/components/ThreadMessageInput.js +146 -113
  347. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  348. package/cjs/Thread/components/ThreadUI.js +170 -139
  349. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  350. package/cjs/Thread/context/types.js +13 -14
  351. package/cjs/Thread/context/types.js.map +1 -1
  352. package/cjs/Thread/context.js +8 -8
  353. package/cjs/Thread.js +87 -57
  354. package/cjs/Thread.js.map +1 -1
  355. package/cjs/ThreadProvider-8ee179c2.js +1704 -0
  356. package/cjs/ThreadProvider-8ee179c2.js.map +1 -0
  357. package/cjs/{UserProfileContext-8d0dee57.js → UserProfileContext-87580795.js} +1 -4
  358. package/cjs/{UserProfileContext-8d0dee57.js.map → UserProfileContext-87580795.js.map} +1 -1
  359. package/cjs/VoiceMessageInputWrapper-4fdc8ef1.js +176 -0
  360. package/cjs/VoiceMessageInputWrapper-4fdc8ef1.js.map +1 -0
  361. package/cjs/VoicePlayer/context.js +17 -0
  362. package/cjs/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
  363. package/cjs/VoicePlayer/useVoicePlayer.js +88 -0
  364. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -0
  365. package/cjs/VoiceRecorder/context.js +166 -0
  366. package/cjs/VoiceRecorder/context.js.map +1 -0
  367. package/cjs/VoiceRecorder/useVoiceRecorder.js +126 -0
  368. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  369. package/cjs/WebAudioUtils-e226789c.js +126 -0
  370. package/cjs/WebAudioUtils-e226789c.js.map +1 -0
  371. package/cjs/{_rollupPluginBabelHelpers-fed1e122.js → _rollupPluginBabelHelpers-c89f311a.js} +17 -10
  372. package/cjs/_rollupPluginBabelHelpers-c89f311a.js.map +1 -0
  373. package/cjs/actionTypes-0fa2943d.js +10 -0
  374. package/cjs/actionTypes-0fa2943d.js.map +1 -0
  375. package/cjs/{color-f47044b3.js → color-bada0fc7.js} +13 -21
  376. package/cjs/color-bada0fc7.js.map +1 -0
  377. package/cjs/{compareIds-4124b297.js → compareIds-ccccfe86.js} +5 -6
  378. package/cjs/compareIds-ccccfe86.js.map +1 -0
  379. package/cjs/const-a85f3364.js +20 -0
  380. package/cjs/const-a85f3364.js.map +1 -0
  381. package/cjs/{const-fd64914b.js → const-d8cece19.js} +4 -4
  382. package/cjs/const-d8cece19.js.map +1 -0
  383. package/cjs/consts-1c3020ad.js +6 -0
  384. package/cjs/consts-1c3020ad.js.map +1 -0
  385. package/cjs/consts-1d94dc61.js +6 -0
  386. package/cjs/consts-1d94dc61.js.map +1 -0
  387. package/cjs/consts-5e0f96b3.js +41 -0
  388. package/cjs/consts-5e0f96b3.js.map +1 -0
  389. package/cjs/consts-740f60b8.js +6 -0
  390. package/cjs/consts-740f60b8.js.map +1 -0
  391. package/cjs/{context-7a0e057b.js → context-8e7e8457.js} +6 -5
  392. package/cjs/{context-7a0e057b.js.map → context-8e7e8457.js.map} +1 -1
  393. package/cjs/dist/index.css +1640 -1187
  394. package/cjs/dist/index.css.map +1 -1
  395. package/cjs/handlers/OpenChannelHandler.js.map +1 -1
  396. package/cjs/handlers/SessionHandler.js.map +1 -1
  397. package/cjs/{index-d14a43c4.js → index-016f7106.js} +1 -1
  398. package/cjs/{index-d14a43c4.js.map → index-016f7106.js.map} +1 -1
  399. package/cjs/{index-9ca07037.js → index-1613ae03.js} +29 -37
  400. package/cjs/index-1613ae03.js.map +1 -0
  401. package/cjs/index-2be14d85.js +57 -0
  402. package/cjs/index-2be14d85.js.map +1 -0
  403. package/cjs/index-3b30939e.js +79 -0
  404. package/cjs/index-3b30939e.js.map +1 -0
  405. package/cjs/index-5231fde8.js +585 -0
  406. package/cjs/index-5231fde8.js.map +1 -0
  407. package/cjs/index-648c06ed.js +330 -0
  408. package/cjs/index-648c06ed.js.map +1 -0
  409. package/cjs/{index-5d5497c2.js → index-6cb0d040.js} +11 -25
  410. package/cjs/index-6cb0d040.js.map +1 -0
  411. package/cjs/{index-c475c3c8.js → index-71fdaa1b.js} +55 -63
  412. package/cjs/index-71fdaa1b.js.map +1 -0
  413. package/cjs/{index-343cd84a.js → index-7d125728.js} +2 -2
  414. package/cjs/{index-343cd84a.js.map → index-7d125728.js.map} +1 -1
  415. package/cjs/{index-3a4f8219.js → index-7f6bbe0c.js} +42 -51
  416. package/cjs/index-7f6bbe0c.js.map +1 -0
  417. package/cjs/{index-8de8f28a.js → index-869e9a94.js} +2 -2
  418. package/cjs/{index-8de8f28a.js.map → index-869e9a94.js.map} +1 -1
  419. package/cjs/index-89d81dad.js +456 -0
  420. package/cjs/index-89d81dad.js.map +1 -0
  421. package/cjs/{index-abbc8024.js → index-8affdde5.js} +57 -3
  422. package/cjs/index-8affdde5.js.map +1 -0
  423. package/cjs/index-99f16473.js +202 -0
  424. package/cjs/index-99f16473.js.map +1 -0
  425. package/cjs/index-c9d348b6.js +367 -0
  426. package/cjs/index-c9d348b6.js.map +1 -0
  427. package/cjs/index-e8c0080f.js +161 -0
  428. package/cjs/index-e8c0080f.js.map +1 -0
  429. package/cjs/{index-c5cd589d.js → index-f570d25c.js} +1 -1
  430. package/cjs/index-f570d25c.js.map +1 -0
  431. package/cjs/index.js +84 -63
  432. package/cjs/index.js.map +1 -1
  433. package/cjs/index.module-0585715f.js +6 -0
  434. package/cjs/index.module-0585715f.js.map +1 -0
  435. package/cjs/lame.all.js +2541 -0
  436. package/cjs/lame.all.js.map +1 -0
  437. package/cjs/resolvedReplyType-67e78c63.js +32 -0
  438. package/cjs/resolvedReplyType-67e78c63.js.map +1 -0
  439. package/cjs/sendbirdSelectors.js +307 -417
  440. package/cjs/sendbirdSelectors.js.map +1 -1
  441. package/cjs/{stringSet-3e6167ef.js → stringSet-106da549.js} +112 -90
  442. package/cjs/stringSet-106da549.js.map +1 -0
  443. package/cjs/tokenize-2aa0f876.js +164 -0
  444. package/cjs/tokenize-2aa0f876.js.map +1 -0
  445. package/cjs/topics-b384e6b3.js +18 -0
  446. package/cjs/topics-b384e6b3.js.map +1 -0
  447. package/cjs/types-e0b77c8c.js +17 -0
  448. package/cjs/types-e0b77c8c.js.map +1 -0
  449. package/cjs/ui/Accordion.js +21 -24
  450. package/cjs/ui/Accordion.js.map +1 -1
  451. package/cjs/ui/AccordionGroup.js +10 -13
  452. package/cjs/ui/AccordionGroup.js.map +1 -1
  453. package/cjs/ui/AdminMessage.js +10 -13
  454. package/cjs/ui/AdminMessage.js.map +1 -1
  455. package/cjs/ui/Avatar.js +57 -79
  456. package/cjs/ui/Avatar.js.map +1 -1
  457. package/cjs/ui/Badge.js +16 -15
  458. package/cjs/ui/Badge.js.map +1 -1
  459. package/cjs/ui/BottomSheet.js +14 -12
  460. package/cjs/ui/BottomSheet.js.map +1 -1
  461. package/cjs/ui/Button.js +20 -35
  462. package/cjs/ui/Button.js.map +1 -1
  463. package/cjs/ui/ChannelAvatar.js +38 -41
  464. package/cjs/ui/ChannelAvatar.js.map +1 -1
  465. package/cjs/ui/Checkbox.js +11 -13
  466. package/cjs/ui/Checkbox.js.map +1 -1
  467. package/cjs/ui/ConnectionStatus.js +7 -5
  468. package/cjs/ui/ConnectionStatus.js.map +1 -1
  469. package/cjs/ui/ContextMenu.js +175 -199
  470. package/cjs/ui/ContextMenu.js.map +1 -1
  471. package/cjs/ui/DateSeparator.js +12 -14
  472. package/cjs/ui/DateSeparator.js.map +1 -1
  473. package/cjs/ui/EmojiReactions.js +299 -107
  474. package/cjs/ui/EmojiReactions.js.map +1 -1
  475. package/cjs/ui/FileMessageItemBody.js +22 -23
  476. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  477. package/cjs/ui/FileViewer.js +36 -36
  478. package/cjs/ui/FileViewer.js.map +1 -1
  479. package/cjs/ui/Icon.js +447 -623
  480. package/cjs/ui/Icon.js.map +1 -1
  481. package/cjs/ui/IconButton.js +20 -31
  482. package/cjs/ui/IconButton.js.map +1 -1
  483. package/cjs/ui/ImageRenderer.js +34 -43
  484. package/cjs/ui/ImageRenderer.js.map +1 -1
  485. package/cjs/ui/Input.js +16 -16
  486. package/cjs/ui/Input.js.map +1 -1
  487. package/cjs/ui/Label.js +2 -2
  488. package/cjs/ui/LinkLabel.js +4 -3
  489. package/cjs/ui/LinkLabel.js.map +1 -1
  490. package/cjs/ui/Loader.js +10 -12
  491. package/cjs/ui/Loader.js.map +1 -1
  492. package/cjs/ui/MentionLabel.js +58 -65
  493. package/cjs/ui/MentionLabel.js.map +1 -1
  494. package/cjs/ui/MentionUserLabel.js +12 -10
  495. package/cjs/ui/MentionUserLabel.js.map +1 -1
  496. package/cjs/ui/MessageContent.js +212 -548
  497. package/cjs/ui/MessageContent.js.map +1 -1
  498. package/cjs/ui/MessageInput.js +392 -119
  499. package/cjs/ui/MessageInput.js.map +1 -1
  500. package/cjs/ui/MessageItemMenu.js +83 -83
  501. package/cjs/ui/MessageItemMenu.js.map +1 -1
  502. package/cjs/ui/MessageItemReactionMenu.js +58 -62
  503. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  504. package/cjs/ui/MessageSearchFileItem.js +56 -51
  505. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  506. package/cjs/ui/MessageSearchItem.js +42 -41
  507. package/cjs/ui/MessageSearchItem.js.map +1 -1
  508. package/cjs/ui/MessageStatus.js +10 -11
  509. package/cjs/ui/MessageStatus.js.map +1 -1
  510. package/cjs/ui/Modal.js +52 -46
  511. package/cjs/ui/Modal.js.map +1 -1
  512. package/cjs/ui/MutedAvatarOverlay.js +10 -10
  513. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  514. package/cjs/ui/OGMessageItemBody.js +67 -63
  515. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  516. package/cjs/ui/OpenChannelAdminMessage.js +8 -7
  517. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  518. package/cjs/ui/OpenChannelAvatar.js +18 -17
  519. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  520. package/cjs/ui/OpenchannelConversationHeader.js +17 -13
  521. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  522. package/cjs/ui/OpenchannelFileMessage.js +140 -151
  523. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  524. package/cjs/ui/OpenchannelOGMessage.js +204 -233
  525. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  526. package/cjs/ui/OpenchannelThumbnailMessage.js +215 -222
  527. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  528. package/cjs/ui/OpenchannelUserMessage.js +168 -178
  529. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  530. package/cjs/ui/PlaceHolder.js +5 -6
  531. package/cjs/ui/PlaceHolder.js.map +1 -1
  532. package/cjs/ui/PlaybackTime.js +35 -0
  533. package/cjs/ui/PlaybackTime.js.map +1 -0
  534. package/cjs/ui/ProgressBar.js +40 -0
  535. package/cjs/ui/ProgressBar.js.map +1 -0
  536. package/cjs/ui/QuoteMessage.js +50 -44
  537. package/cjs/ui/QuoteMessage.js.map +1 -1
  538. package/cjs/ui/QuoteMessageInput.js +31 -29
  539. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  540. package/cjs/ui/ReactionBadge.js +13 -21
  541. package/cjs/ui/ReactionBadge.js.map +1 -1
  542. package/cjs/ui/ReactionButton.js +30 -27
  543. package/cjs/ui/ReactionButton.js.map +1 -1
  544. package/cjs/ui/SortByRow.js +14 -18
  545. package/cjs/ui/SortByRow.js.map +1 -1
  546. package/cjs/ui/TextButton.js +13 -21
  547. package/cjs/ui/TextButton.js.map +1 -1
  548. package/cjs/ui/TextMessageItemBody.js +41 -48
  549. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  550. package/cjs/ui/ThreadReplies.js +25 -22
  551. package/cjs/ui/ThreadReplies.js.map +1 -1
  552. package/cjs/ui/ThumbnailMessageItemBody.js +36 -45
  553. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  554. package/cjs/ui/Toggle.js +202 -0
  555. package/cjs/ui/Toggle.js.map +1 -0
  556. package/cjs/ui/Tooltip.js +8 -9
  557. package/cjs/ui/Tooltip.js.map +1 -1
  558. package/cjs/ui/TooltipWrapper.js +17 -20
  559. package/cjs/ui/TooltipWrapper.js.map +1 -1
  560. package/cjs/ui/UnknownMessageItemBody.js +21 -22
  561. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  562. package/cjs/ui/UserListItem.js +76 -76
  563. package/cjs/ui/UserListItem.js.map +1 -1
  564. package/cjs/ui/UserProfile.js +31 -29
  565. package/cjs/ui/UserProfile.js.map +1 -1
  566. package/cjs/ui/VoiceMessageItemBody.js +119 -0
  567. package/cjs/ui/VoiceMessageItemBody.js.map +1 -0
  568. package/cjs/ui/VoiceMessgeInput.js +22 -0
  569. package/cjs/ui/VoiceMessgeInput.js.map +1 -0
  570. package/cjs/ui/Word.js +31 -39
  571. package/cjs/ui/Word.js.map +1 -1
  572. package/cjs/useDirtyGetMentions-b8ca5675.js +77 -0
  573. package/cjs/useDirtyGetMentions-b8ca5675.js.map +1 -0
  574. package/cjs/useLongPress-8037894e.js +87 -0
  575. package/cjs/useLongPress-8037894e.js.map +1 -0
  576. package/cjs/useSendbirdStateContext.js +2 -3
  577. package/cjs/useSendbirdStateContext.js.map +1 -1
  578. package/cjs/utils/message/getOutgoingMessageState.js +16 -21
  579. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  580. package/cjs/utils/message/isVoiceMessage.js +12 -0
  581. package/cjs/utils/message/isVoiceMessage.js.map +1 -0
  582. package/cjs/{utils-5f86a394.js → utils-01ff5332.js} +3 -7
  583. package/cjs/{utils-5f86a394.js.map → utils-01ff5332.js.map} +1 -1
  584. package/cjs/utils-2edcddc8.js +35 -0
  585. package/cjs/utils-2edcddc8.js.map +1 -0
  586. package/cjs/utils-5ac3db44.js +31 -0
  587. package/cjs/utils-5ac3db44.js.map +1 -0
  588. package/cjs/{utils-374d57b4.js → utils-ad7b5b82.js} +1 -1
  589. package/cjs/{utils-374d57b4.js.map → utils-ad7b5b82.js.map} +1 -1
  590. package/cjs/uuid-12b01f73.js +15 -0
  591. package/cjs/{uuid-2475ef6c.js.map → uuid-12b01f73.js.map} +1 -1
  592. package/cjs/withSendbird.js +5 -6
  593. package/cjs/withSendbird.js.map +1 -1
  594. package/{color-163ba24d.js → color-347926b6.js} +5 -14
  595. package/{color-163ba24d.js.map → color-347926b6.js.map} +1 -1
  596. package/{compareIds-ef41eb2c.js → compareIds-3a43c11b.js} +5 -6
  597. package/compareIds-3a43c11b.js.map +1 -0
  598. package/const-18dba7a4.js +13 -0
  599. package/const-18dba7a4.js.map +1 -0
  600. package/{const-76d87f47.js → const-c608f749.js} +4 -4
  601. package/const-c608f749.js.map +1 -0
  602. package/consts-6bca01c7.js +4 -0
  603. package/consts-6bca01c7.js.map +1 -0
  604. package/consts-7a169a0f.js +4 -0
  605. package/consts-7a169a0f.js.map +1 -0
  606. package/consts-c1baf70a.js +27 -0
  607. package/consts-c1baf70a.js.map +1 -0
  608. package/consts-fb4d475a.js +4 -0
  609. package/consts-fb4d475a.js.map +1 -0
  610. package/context-786ef1a2.js +13 -0
  611. package/{context-10475c77.js.map → context-786ef1a2.js.map} +1 -1
  612. package/dist/index.css +1640 -1187
  613. package/dist/index.css.map +1 -1
  614. package/handlers/OpenChannelHandler.js.map +1 -1
  615. package/handlers/SessionHandler.js.map +1 -1
  616. package/{index-12754b45.js → index-06b854f7.js} +55 -63
  617. package/index-06b854f7.js.map +1 -0
  618. package/index-2673effb.js +360 -0
  619. package/index-2673effb.js.map +1 -0
  620. package/{index-4ebfc7a7.js → index-319984d0.js} +1 -1
  621. package/{index-4ebfc7a7.js.map → index-319984d0.js.map} +1 -1
  622. package/{index-3c013a28.js → index-4455855e.js} +2 -2
  623. package/{index-3c013a28.js.map → index-4455855e.js.map} +1 -1
  624. package/index-6663ce18.js +450 -0
  625. package/index-6663ce18.js.map +1 -0
  626. package/{index-a02da5bd.js → index-6c252d25.js} +2 -2
  627. package/{index-a02da5bd.js.map → index-6c252d25.js.map} +1 -1
  628. package/index-71a20863.js +320 -0
  629. package/index-71a20863.js.map +1 -0
  630. package/index-7d71b26c.js +154 -0
  631. package/index-7d71b26c.js.map +1 -0
  632. package/{index-2f346069.js → index-9a4e0846.js} +1 -1
  633. package/index-9a4e0846.js.map +1 -0
  634. package/{index-232388fa.js → index-9cd77b08.js} +29 -37
  635. package/index-9cd77b08.js.map +1 -0
  636. package/index-c149ea48.js +187 -0
  637. package/index-c149ea48.js.map +1 -0
  638. package/index-cf3939c6.js +76 -0
  639. package/index-cf3939c6.js.map +1 -0
  640. package/index-cf859f03.js +540 -0
  641. package/index-cf859f03.js.map +1 -0
  642. package/{index-2784bdd8.js → index-e33f7f55.js} +11 -25
  643. package/index-e33f7f55.js.map +1 -0
  644. package/{index-aea7b7d6.js → index-eabd1e7e.js} +39 -48
  645. package/index-eabd1e7e.js.map +1 -0
  646. package/index-ebb62af1.js +51 -0
  647. package/index-ebb62af1.js.map +1 -0
  648. package/{index-751f97ce.js → index-edf844f0.js} +57 -4
  649. package/index-edf844f0.js.map +1 -0
  650. package/index.d.ts +176 -124
  651. package/index.js +84 -63
  652. package/index.js.map +1 -1
  653. package/index.module-6b7ed635.js +4 -0
  654. package/index.module-6b7ed635.js.map +1 -0
  655. package/lame.all.js +2537 -0
  656. package/lame.all.js.map +1 -0
  657. package/package.json +62 -41
  658. package/resolvedReplyType-8776d777.js +29 -0
  659. package/resolvedReplyType-8776d777.js.map +1 -0
  660. package/sendbirdSelectors.js +307 -417
  661. package/sendbirdSelectors.js.map +1 -1
  662. package/{stringSet-9ae71b7d.js → stringSet-e0ee1265.js} +112 -90
  663. package/stringSet-e0ee1265.js.map +1 -0
  664. package/tokenize-1b053c86.js +159 -0
  665. package/tokenize-1b053c86.js.map +1 -0
  666. package/topics-70f569e9.js +16 -0
  667. package/topics-70f569e9.js.map +1 -0
  668. package/types-77bbdda6.js +15 -0
  669. package/types-77bbdda6.js.map +1 -0
  670. package/ui/Accordion.js +21 -24
  671. package/ui/Accordion.js.map +1 -1
  672. package/ui/AccordionGroup.js +10 -13
  673. package/ui/AccordionGroup.js.map +1 -1
  674. package/ui/AdminMessage.js +10 -13
  675. package/ui/AdminMessage.js.map +1 -1
  676. package/ui/Avatar.js +57 -79
  677. package/ui/Avatar.js.map +1 -1
  678. package/ui/Badge.js +16 -15
  679. package/ui/Badge.js.map +1 -1
  680. package/ui/BottomSheet.js +14 -12
  681. package/ui/BottomSheet.js.map +1 -1
  682. package/ui/Button.js +20 -35
  683. package/ui/Button.js.map +1 -1
  684. package/ui/ChannelAvatar.js +38 -41
  685. package/ui/ChannelAvatar.js.map +1 -1
  686. package/ui/Checkbox.js +11 -13
  687. package/ui/Checkbox.js.map +1 -1
  688. package/ui/ConnectionStatus.js +7 -5
  689. package/ui/ConnectionStatus.js.map +1 -1
  690. package/ui/ContextMenu.js +176 -200
  691. package/ui/ContextMenu.js.map +1 -1
  692. package/ui/DateSeparator.js +12 -14
  693. package/ui/DateSeparator.js.map +1 -1
  694. package/ui/EmojiReactions.js +300 -108
  695. package/ui/EmojiReactions.js.map +1 -1
  696. package/ui/FileMessageItemBody.js +22 -23
  697. package/ui/FileMessageItemBody.js.map +1 -1
  698. package/ui/FileViewer.js +36 -36
  699. package/ui/FileViewer.js.map +1 -1
  700. package/ui/Icon.js +448 -622
  701. package/ui/Icon.js.map +1 -1
  702. package/ui/IconButton.js +20 -31
  703. package/ui/IconButton.js.map +1 -1
  704. package/ui/ImageRenderer.js +34 -43
  705. package/ui/ImageRenderer.js.map +1 -1
  706. package/ui/Input.js +16 -16
  707. package/ui/Input.js.map +1 -1
  708. package/ui/Label.js +2 -2
  709. package/ui/LinkLabel.js +4 -3
  710. package/ui/LinkLabel.js.map +1 -1
  711. package/ui/Loader.js +10 -12
  712. package/ui/Loader.js.map +1 -1
  713. package/ui/MentionLabel.js +58 -65
  714. package/ui/MentionLabel.js.map +1 -1
  715. package/ui/MentionUserLabel.js +12 -10
  716. package/ui/MentionUserLabel.js.map +1 -1
  717. package/ui/MessageContent.js +215 -551
  718. package/ui/MessageContent.js.map +1 -1
  719. package/ui/MessageInput.js +392 -120
  720. package/ui/MessageInput.js.map +1 -1
  721. package/ui/MessageItemMenu.js +83 -83
  722. package/ui/MessageItemMenu.js.map +1 -1
  723. package/ui/MessageItemReactionMenu.js +58 -62
  724. package/ui/MessageItemReactionMenu.js.map +1 -1
  725. package/ui/MessageSearchFileItem.js +55 -50
  726. package/ui/MessageSearchFileItem.js.map +1 -1
  727. package/ui/MessageSearchItem.js +41 -40
  728. package/ui/MessageSearchItem.js.map +1 -1
  729. package/ui/MessageStatus.js +10 -11
  730. package/ui/MessageStatus.js.map +1 -1
  731. package/ui/Modal.js +52 -46
  732. package/ui/Modal.js.map +1 -1
  733. package/ui/MutedAvatarOverlay.js +10 -10
  734. package/ui/MutedAvatarOverlay.js.map +1 -1
  735. package/ui/OGMessageItemBody.js +68 -64
  736. package/ui/OGMessageItemBody.js.map +1 -1
  737. package/ui/OpenChannelAdminMessage.js +8 -7
  738. package/ui/OpenChannelAdminMessage.js.map +1 -1
  739. package/ui/OpenChannelAvatar.js +18 -17
  740. package/ui/OpenChannelAvatar.js.map +1 -1
  741. package/ui/OpenchannelConversationHeader.js +17 -13
  742. package/ui/OpenchannelConversationHeader.js.map +1 -1
  743. package/ui/OpenchannelFileMessage.js +140 -151
  744. package/ui/OpenchannelFileMessage.js.map +1 -1
  745. package/ui/OpenchannelOGMessage.js +204 -233
  746. package/ui/OpenchannelOGMessage.js.map +1 -1
  747. package/ui/OpenchannelThumbnailMessage.js +215 -222
  748. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  749. package/ui/OpenchannelUserMessage.js +168 -178
  750. package/ui/OpenchannelUserMessage.js.map +1 -1
  751. package/ui/PlaceHolder.js +5 -6
  752. package/ui/PlaceHolder.js.map +1 -1
  753. package/ui/PlaybackTime.js +26 -0
  754. package/ui/PlaybackTime.js.map +1 -0
  755. package/ui/ProgressBar.js +30 -0
  756. package/ui/ProgressBar.js.map +1 -0
  757. package/ui/QuoteMessage.js +50 -44
  758. package/ui/QuoteMessage.js.map +1 -1
  759. package/ui/QuoteMessageInput.js +31 -29
  760. package/ui/QuoteMessageInput.js.map +1 -1
  761. package/ui/ReactionBadge.js +13 -21
  762. package/ui/ReactionBadge.js.map +1 -1
  763. package/ui/ReactionButton.js +30 -27
  764. package/ui/ReactionButton.js.map +1 -1
  765. package/ui/SortByRow.js +14 -18
  766. package/ui/SortByRow.js.map +1 -1
  767. package/ui/TextButton.js +13 -21
  768. package/ui/TextButton.js.map +1 -1
  769. package/ui/TextMessageItemBody.js +41 -48
  770. package/ui/TextMessageItemBody.js.map +1 -1
  771. package/ui/ThreadReplies.js +25 -22
  772. package/ui/ThreadReplies.js.map +1 -1
  773. package/ui/ThumbnailMessageItemBody.js +36 -45
  774. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  775. package/ui/Toggle.js +191 -0
  776. package/ui/Toggle.js.map +1 -0
  777. package/ui/Tooltip.js +8 -9
  778. package/ui/Tooltip.js.map +1 -1
  779. package/ui/TooltipWrapper.js +17 -20
  780. package/ui/TooltipWrapper.js.map +1 -1
  781. package/ui/UnknownMessageItemBody.js +21 -22
  782. package/ui/UnknownMessageItemBody.js.map +1 -1
  783. package/ui/UserListItem.js +76 -76
  784. package/ui/UserListItem.js.map +1 -1
  785. package/ui/UserProfile.js +31 -29
  786. package/ui/UserProfile.js.map +1 -1
  787. package/ui/VoiceMessageItemBody.js +110 -0
  788. package/ui/VoiceMessageItemBody.js.map +1 -0
  789. package/ui/VoiceMessgeInput.js +14 -0
  790. package/ui/VoiceMessgeInput.js.map +1 -0
  791. package/ui/Word.js +31 -39
  792. package/ui/Word.js.map +1 -1
  793. package/useDirtyGetMentions-f00f1f94.js +75 -0
  794. package/useDirtyGetMentions-f00f1f94.js.map +1 -0
  795. package/useLongPress-1ab49410.js +85 -0
  796. package/useLongPress-1ab49410.js.map +1 -0
  797. package/useSendbirdStateContext.js +2 -3
  798. package/useSendbirdStateContext.js.map +1 -1
  799. package/utils/message/getOutgoingMessageState.js +9 -15
  800. package/utils/message/getOutgoingMessageState.js.map +1 -1
  801. package/utils/message/isVoiceMessage.js +8 -0
  802. package/utils/message/isVoiceMessage.js.map +1 -0
  803. package/{utils-ea66f822.js → utils-56cb7de5.js} +1 -1
  804. package/{utils-ea66f822.js.map → utils-56cb7de5.js.map} +1 -1
  805. package/utils-77f7e8b2.js +29 -0
  806. package/utils-77f7e8b2.js.map +1 -0
  807. package/{utils-ddb0df4c.js → utils-7f3d0d8c.js} +3 -7
  808. package/{utils-ddb0df4c.js.map → utils-7f3d0d8c.js.map} +1 -1
  809. package/utils-af9b1c06.js +31 -0
  810. package/utils-af9b1c06.js.map +1 -0
  811. package/uuid-92d22300.js +13 -0
  812. package/{uuid-7e004f47.js.map → uuid-92d22300.js.map} +1 -1
  813. package/withSendbird.js +5 -6
  814. package/withSendbird.js.map +1 -1
  815. package/ChannelListProvider-1d36e2e9.js.map +0 -1
  816. package/ChannelProvider-289cd35f.js.map +0 -1
  817. package/CreateChannelProvider-72b655e9.js +0 -55
  818. package/CreateChannelProvider-72b655e9.js.map +0 -1
  819. package/LocalizationContext-289c1917.js +0 -22
  820. package/MediaQueryContext-273d29f6.js +0 -90
  821. package/MediaQueryContext-273d29f6.js.map +0 -1
  822. package/MemberList-7ad0fa0b.js +0 -435
  823. package/MemberList-7ad0fa0b.js.map +0 -1
  824. package/NotificationChannel/components/NotificationChannelUI.js +0 -119
  825. package/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
  826. package/NotificationChannel/components/NotificationList.js +0 -111
  827. package/NotificationChannel/components/NotificationList.js.map +0 -1
  828. package/NotificationChannel/components/NotificationMessageWrap.js +0 -136
  829. package/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
  830. package/NotificationChannel/context.js +0 -12
  831. package/NotificationChannel.js +0 -58
  832. package/NotificationChannel.js.map +0 -1
  833. package/NotificationChannelProvider-ad556c64.js +0 -535
  834. package/NotificationChannelProvider-ad556c64.js.map +0 -1
  835. package/OpenChannelListProvider-0febf8b2.js +0 -434
  836. package/OpenChannelListProvider-0febf8b2.js.map +0 -1
  837. package/OpenChannelProvider-c254c663.js +0 -2000
  838. package/OpenChannelProvider-c254c663.js.map +0 -1
  839. package/RemoveMessageModal-d6cbf9fa.js +0 -31
  840. package/RemoveMessageModal-d6cbf9fa.js.map +0 -1
  841. package/ThreadProvider-8696ef31.js +0 -1644
  842. package/ThreadProvider-8696ef31.js.map +0 -1
  843. package/_rollupPluginBabelHelpers-519f674b.js.map +0 -1
  844. package/actionTypes-9f87e87f.js +0 -6
  845. package/actionTypes-9f87e87f.js.map +0 -1
  846. package/cjs/ChannelListProvider-0de52d2b.js.map +0 -1
  847. package/cjs/ChannelProvider-fc58e60e.js.map +0 -1
  848. package/cjs/CreateChannelProvider-a82d20f4.js +0 -62
  849. package/cjs/CreateChannelProvider-a82d20f4.js.map +0 -1
  850. package/cjs/MediaQueryContext-4711a81f.js +0 -97
  851. package/cjs/MediaQueryContext-4711a81f.js.map +0 -1
  852. package/cjs/MemberList-b2623166.js +0 -441
  853. package/cjs/MemberList-b2623166.js.map +0 -1
  854. package/cjs/NotificationChannel/components/NotificationChannelUI.js +0 -125
  855. package/cjs/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
  856. package/cjs/NotificationChannel/components/NotificationList.js +0 -117
  857. package/cjs/NotificationChannel/components/NotificationList.js.map +0 -1
  858. package/cjs/NotificationChannel/components/NotificationMessageWrap.js +0 -142
  859. package/cjs/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
  860. package/cjs/NotificationChannel/context.js +0 -21
  861. package/cjs/NotificationChannel.js +0 -64
  862. package/cjs/NotificationChannel.js.map +0 -1
  863. package/cjs/NotificationChannelProvider-2cdc7ff4.js +0 -543
  864. package/cjs/NotificationChannelProvider-2cdc7ff4.js.map +0 -1
  865. package/cjs/OpenChannelListProvider-60bc3c69.js +0 -443
  866. package/cjs/OpenChannelListProvider-60bc3c69.js.map +0 -1
  867. package/cjs/OpenChannelProvider-3ed4eb6e.js +0 -2009
  868. package/cjs/OpenChannelProvider-3ed4eb6e.js.map +0 -1
  869. package/cjs/RemoveMessageModal-9169766a.js.map +0 -1
  870. package/cjs/ThreadProvider-389f5031.js +0 -1653
  871. package/cjs/ThreadProvider-389f5031.js.map +0 -1
  872. package/cjs/_rollupPluginBabelHelpers-fed1e122.js.map +0 -1
  873. package/cjs/actionTypes-2f90e726.js +0 -10
  874. package/cjs/actionTypes-2f90e726.js.map +0 -1
  875. package/cjs/color-f47044b3.js.map +0 -1
  876. package/cjs/compareIds-4124b297.js.map +0 -1
  877. package/cjs/const-015e5589.js +0 -20
  878. package/cjs/const-015e5589.js.map +0 -1
  879. package/cjs/const-fd64914b.js.map +0 -1
  880. package/cjs/index-30c97863.js +0 -194
  881. package/cjs/index-30c97863.js.map +0 -1
  882. package/cjs/index-3a4f8219.js.map +0 -1
  883. package/cjs/index-40e4653a.js +0 -59
  884. package/cjs/index-40e4653a.js.map +0 -1
  885. package/cjs/index-5d5497c2.js.map +0 -1
  886. package/cjs/index-62c1bdfc.js +0 -701
  887. package/cjs/index-62c1bdfc.js.map +0 -1
  888. package/cjs/index-9ca07037.js.map +0 -1
  889. package/cjs/index-9f3670d0.js +0 -360
  890. package/cjs/index-9f3670d0.js.map +0 -1
  891. package/cjs/index-abbc8024.js.map +0 -1
  892. package/cjs/index-c475c3c8.js.map +0 -1
  893. package/cjs/index-c5cd589d.js.map +0 -1
  894. package/cjs/stringSet-3e6167ef.js.map +0 -1
  895. package/cjs/topics-56842e14.js +0 -22
  896. package/cjs/topics-56842e14.js.map +0 -1
  897. package/cjs/tslib.es6-b8ba50ef.js +0 -110
  898. package/cjs/tslib.es6-b8ba50ef.js.map +0 -1
  899. package/cjs/useLongPress-99c66f7f.js +0 -118
  900. package/cjs/useLongPress-99c66f7f.js.map +0 -1
  901. package/cjs/utils-9adfd244.js +0 -38
  902. package/cjs/utils-9adfd244.js.map +0 -1
  903. package/cjs/utils-f6a96ebf.js +0 -32
  904. package/cjs/utils-f6a96ebf.js.map +0 -1
  905. package/cjs/uuid-2475ef6c.js +0 -19
  906. package/compareIds-ef41eb2c.js.map +0 -1
  907. package/const-76d87f47.js.map +0 -1
  908. package/const-da6f3d34.js +0 -14
  909. package/const-da6f3d34.js.map +0 -1
  910. package/context-10475c77.js +0 -12
  911. package/index-12754b45.js.map +0 -1
  912. package/index-1e46e582.js +0 -179
  913. package/index-1e46e582.js.map +0 -1
  914. package/index-232388fa.js.map +0 -1
  915. package/index-2784bdd8.js.map +0 -1
  916. package/index-2f346069.js.map +0 -1
  917. package/index-4637b0de.js +0 -57
  918. package/index-4637b0de.js.map +0 -1
  919. package/index-4900e890.js +0 -353
  920. package/index-4900e890.js.map +0 -1
  921. package/index-751f97ce.js.map +0 -1
  922. package/index-855ef33d.js +0 -662
  923. package/index-855ef33d.js.map +0 -1
  924. package/index-aea7b7d6.js.map +0 -1
  925. package/stringSet-9ae71b7d.js.map +0 -1
  926. package/topics-e2963bba.js +0 -13
  927. package/topics-e2963bba.js.map +0 -1
  928. package/tslib.es6-72df3331.js +0 -104
  929. package/tslib.es6-72df3331.js.map +0 -1
  930. package/useLongPress-1a777e9e.js +0 -116
  931. package/useLongPress-1a777e9e.js.map +0 -1
  932. package/utils-2976f2c1.js +0 -30
  933. package/utils-2976f2c1.js.map +0 -1
  934. package/utils-6b69fb18.js +0 -34
  935. package/utils-6b69fb18.js.map +0 -1
  936. package/uuid-7e004f47.js +0 -17
@@ -1,184 +1,153 @@
1
- import React__default, { useState, useEffect } from 'react';
1
+ import React__default, { useState } from 'react';
2
2
  import ChannelListHeader from './ChannelListHeader.js';
3
3
  import { AddChannel } from './AddChannel.js';
4
4
  import ChannelPreview from './ChannelPreview.js';
5
5
  import ChannelPreviewAction from './ChannelPreviewAction.js';
6
- import { u as useChannelListContext, F as FETCH_CHANNELS_START, a as FETCH_CHANNELS_SUCCESS, b as FETCH_CHANNELS_FAILURE, L as LEAVE_CHANNEL_SUCCESS, S as SET_CURRENT_CHANNEL } from '../../ChannelListProvider-1d36e2e9.js';
6
+ import { u as useChannelListContext, F as FETCH_CHANNELS_START, a as FETCH_CHANNELS_SUCCESS, b as FETCH_CHANNELS_FAILURE, L as LEAVE_CHANNEL_SUCCESS, S as SET_CURRENT_CHANNEL } from '../../ChannelListProvider-4cf5c0f5.js';
7
7
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
8
8
  import EditProfile from '../../EditUserProfile.js';
9
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-232388fa.js';
10
- import '../../LocalizationContext-289c1917.js';
11
- import '../../stringSet-9ae71b7d.js';
12
- import '../../index-4ebfc7a7.js';
13
- import '../../index-2784bdd8.js';
9
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-9cd77b08.js';
10
+ import '../../LocalizationContext-04c0c9dc.js';
11
+ import '../../stringSet-e0ee1265.js';
12
+ import '../../index-319984d0.js';
13
+ import '../../index-e33f7f55.js';
14
14
  import 'prop-types';
15
15
  import '../../ui/Avatar.js';
16
- import '../../tslib.es6-72df3331.js';
17
16
  import '../../ui/ImageRenderer.js';
18
17
  import '../../ui/Icon.js';
19
- import '../../uuid-7e004f47.js';
18
+ import '../../uuid-92d22300.js';
20
19
  import '../../ui/IconButton.js';
20
+ import '../../_rollupPluginBabelHelpers-fb0e05a4.js';
21
21
  import '../../CreateChannel.js';
22
22
  import '../../CreateChannel/components/CreateChannelUI.js';
23
- import '../../CreateChannelProvider-72b655e9.js';
23
+ import '../../CreateChannelProvider-34603fa5.js';
24
24
  import '../../sendbirdSelectors.js';
25
- import '../../topics-e2963bba.js';
26
- import '../../utils-ea66f822.js';
25
+ import '../../topics-70f569e9.js';
26
+ import '../../utils-56cb7de5.js';
27
27
  import '../../CreateChannel/components/InviteUsers.js';
28
28
  import '../../ui/Modal.js';
29
29
  import 'react-dom';
30
- import '../../index-2f346069.js';
30
+ import '../../index-9a4e0846.js';
31
31
  import '../../ui/Button.js';
32
- import '../../MediaQueryContext-273d29f6.js';
32
+ import '../../MediaQueryContext-ff9dca2b.js';
33
33
  import '../../ui/UserListItem.js';
34
- import '../../UserProfileContext-e3530842.js';
34
+ import '../../UserProfileContext-c776d522.js';
35
35
  import '../../ui/MutedAvatarOverlay.js';
36
36
  import '../../ui/Checkbox.js';
37
37
  import '../../ui/UserProfile.js';
38
38
  import '../../ui/ContextMenu.js';
39
39
  import '../../ui/SortByRow.js';
40
- import '../../index-855ef33d.js';
40
+ import '../../index-cf859f03.js';
41
41
  import '../../utils/message/getOutgoingMessageState.js';
42
42
  import '../../CreateChannel/components/SelectChannelType.js';
43
- import '../../_rollupPluginBabelHelpers-519f674b.js';
44
43
  import '../../ui/ChannelAvatar.js';
45
- import '../../utils-6b69fb18.js';
44
+ import '../../utils-af9b1c06.js';
46
45
  import '../../ui/Badge.js';
47
- import '../../index-aea7b7d6.js';
48
- import '../../index-3c013a28.js';
46
+ import '../../index-eabd1e7e.js';
47
+ import '../../index-4455855e.js';
49
48
  import '../../ui/Loader.js';
50
- import '../../index-751f97ce.js';
51
- import '../../index-a02da5bd.js';
52
- import '../../index-4637b0de.js';
49
+ import '../../index-edf844f0.js';
50
+ import '../../index-6c252d25.js';
53
51
  import '../../ui/MentionUserLabel.js';
52
+ import '../../consts-fb4d475a.js';
54
53
  import '../../ui/TextButton.js';
55
- import '../../color-163ba24d.js';
54
+ import '../../color-347926b6.js';
56
55
  import '../../Channel/components/TypingIndicator.js';
57
56
  import '@sendbird/chat/groupChannel';
58
- import '../../ChannelProvider-289cd35f.js';
59
- import '../../compareIds-ef41eb2c.js';
60
- import '../../const-da6f3d34.js';
57
+ import '../../ChannelProvider-6e8e99df.js';
58
+ import '../../const-18dba7a4.js';
59
+ import '../../compareIds-3a43c11b.js';
61
60
  import '@sendbird/chat/message';
62
- import '../../ui/ReactionButton.js';
63
- import '../../useLongPress-1a777e9e.js';
61
+ import '../../consts-c1baf70a.js';
62
+ import '../../resolvedReplyType-8776d777.js';
63
+ import '../../useLongPress-1ab49410.js';
64
64
  import '../../withSendbird.js';
65
- import '../../index-12754b45.js';
65
+ import '../../index-06b854f7.js';
66
66
  import '../../ui/Input.js';
67
- import '../../actionTypes-9f87e87f.js';
67
+ import '../../actionTypes-1db5749d.js';
68
68
 
69
69
  const isAboutSame = (a, b, px) => Math.abs(a - b) <= px;
70
70
 
71
- var DELIVERY_RECIPT = 'delivery_receipt';
72
-
73
- var ChannelListUI = function (props) {
74
- var _a;
75
-
76
- var renderHeader = props.renderHeader,
77
- renderChannelPreview = props.renderChannelPreview,
78
- renderPlaceHolderError = props.renderPlaceHolderError,
79
- renderPlaceHolderLoading = props.renderPlaceHolderLoading,
80
- renderPlaceHolderEmptyList = props.renderPlaceHolderEmptyList;
81
-
82
- var _b = useState(false),
83
- showProfileEdit = _b[0],
84
- setShowProfileEdit = _b[1];
85
-
86
- var _c = useChannelListContext(),
87
- onThemeChange = _c.onThemeChange,
88
- allowProfileEdit = _c.allowProfileEdit,
89
- allChannels = _c.allChannels,
90
- loading = _c.loading,
91
- currentChannel = _c.currentChannel,
92
- channelListDispatcher = _c.channelListDispatcher,
93
- channelSource = _c.channelSource,
94
- typingChannels = _c.typingChannels,
95
- initialized = _c.initialized;
96
-
97
- var state = useSendbirdStateContext();
98
- var sdkStore = (_a = state === null || state === void 0 ? void 0 : state.stores) === null || _a === void 0 ? void 0 : _a.sdkStore;
99
- var config = state === null || state === void 0 ? void 0 : state.config;
100
- var _d = config.logger,
101
- logger = _d === void 0 ? null : _d,
102
- _e = config.isOnline,
103
- isOnline = _e === void 0 ? false : _e,
104
- _f = config.disableMarkAsDelivered,
105
- disableMarkAsDelivered = _f === void 0 ? false : _f;
106
- var sdk = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.sdk;
107
- var sdkError = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.error;
108
-
109
- var _g = useState([]),
110
- channelsTomarkAsRead = _g[0],
111
- setChannelsToMarkAsRead = _g[1];
112
-
113
- useEffect(function () {
114
- // https://stackoverflow.com/a/60907638
115
- var isMounted = true;
116
-
117
- if ((channelsTomarkAsRead === null || channelsTomarkAsRead === void 0 ? void 0 : channelsTomarkAsRead.length) > 0 && !disableMarkAsDelivered) {
118
- channelsTomarkAsRead === null || channelsTomarkAsRead === void 0 ? void 0 : channelsTomarkAsRead.forEach(function (c, idx) {
119
- // Plan-based rate limits - minimum limit is 5 requests per second
120
- setTimeout(function () {
121
- if (isMounted) {
122
- c === null || c === void 0 ? void 0 : c.markAsDelivered();
123
- }
124
- }, 2000 * idx);
125
- });
126
- }
127
-
128
- return function () {
129
- isMounted = false;
130
- };
131
- }, [channelsTomarkAsRead]);
71
+ const DELIVERY_RECIPT = 'delivery_receipt';
72
+ const ChannelListUI = props => {
73
+ var _state$stores;
74
+ const {
75
+ renderHeader,
76
+ renderChannelPreview,
77
+ renderPlaceHolderError,
78
+ renderPlaceHolderLoading,
79
+ renderPlaceHolderEmptyList
80
+ } = props;
81
+ const [showProfileEdit, setShowProfileEdit] = useState(false);
82
+ const {
83
+ onThemeChange,
84
+ allowProfileEdit,
85
+ allChannels,
86
+ loading,
87
+ currentChannel,
88
+ channelListDispatcher,
89
+ channelSource,
90
+ typingChannels,
91
+ initialized
92
+ } = useChannelListContext();
93
+ const state = useSendbirdStateContext();
94
+ const sdkStore = state === null || state === void 0 ? void 0 : (_state$stores = state.stores) === null || _state$stores === void 0 ? void 0 : _state$stores.sdkStore;
95
+ const config = state === null || state === void 0 ? void 0 : state.config;
96
+ const {
97
+ logger,
98
+ isOnline = false,
99
+ markAsDeliveredScheduler,
100
+ disableMarkAsDelivered
101
+ } = config;
102
+ const sdk = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.sdk;
103
+ const sdkError = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.error;
132
104
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
133
105
  className: "sendbird-channel-list__header"
134
106
  }, (renderHeader === null || renderHeader === void 0 ? void 0 : renderHeader()) || /*#__PURE__*/React__default.createElement(ChannelListHeader, {
135
- onEdit: function () {
107
+ onEdit: () => {
136
108
  if (allowProfileEdit) {
137
109
  setShowProfileEdit(true);
138
110
  }
139
111
  },
140
112
  allowProfileEdit: allowProfileEdit,
141
- renderIconButton: function () {
142
- return /*#__PURE__*/React__default.createElement(AddChannel, null);
143
- }
113
+ renderIconButton: () => /*#__PURE__*/React__default.createElement(AddChannel, null)
144
114
  })), showProfileEdit && /*#__PURE__*/React__default.createElement(EditProfile, {
145
115
  onThemeChange: onThemeChange,
146
- onCancel: function () {
116
+ onCancel: () => {
147
117
  setShowProfileEdit(false);
148
118
  },
149
- onEditProfile: function () {
119
+ onEditProfile: () => {
150
120
  setShowProfileEdit(false);
151
121
  }
152
122
  }), /*#__PURE__*/React__default.createElement("div", {
153
123
  className: "sendbird-channel-list__body",
154
- onScroll: function (e) {
155
- var target = e === null || e === void 0 ? void 0 : e.target;
156
- var fetchMore = isAboutSame(target.clientHeight + target.scrollTop, target.scrollHeight, 10);
157
-
158
- if (fetchMore && (channelSource === null || channelSource === void 0 ? void 0 : channelSource.hasNext)) {
124
+ onScroll: e => {
125
+ const target = e === null || e === void 0 ? void 0 : e.target;
126
+ const fetchMore = isAboutSame(target.clientHeight + target.scrollTop, target.scrollHeight, 10);
127
+ if (fetchMore && channelSource !== null && channelSource !== void 0 && channelSource.hasNext) {
159
128
  logger.info('ChannelList: Fetching more channels');
160
129
  channelListDispatcher({
161
130
  type: FETCH_CHANNELS_START,
162
131
  payload: null
163
132
  });
164
- channelSource.next().then(function (channelList) {
165
- var _a, _b;
166
-
133
+ channelSource.next().then(channelList => {
134
+ var _sdk$appInfo, _sdk$appInfo$premiumF;
167
135
  logger.info('ChannelList: Fetching channels successful', channelList);
168
136
  channelListDispatcher({
169
137
  type: FETCH_CHANNELS_SUCCESS,
170
138
  payload: channelList
171
139
  });
172
- var canSetMarkAsDelivered = (_b = (_a = sdk === null || sdk === void 0 ? void 0 : sdk.appInfo) === null || _a === void 0 ? void 0 : _a.premiumFeatureList) === null || _b === void 0 ? void 0 : _b.find(function (feature) {
173
- return feature === DELIVERY_RECIPT;
174
- });
175
-
176
- if (canSetMarkAsDelivered) {
177
- logger.info('ChannelList: Marking all channels as read'); // eslint-disable-next-line no-unused-expressions
178
-
179
- setChannelsToMarkAsRead(channelList);
140
+ const canSetMarkAsDelivered = sdk === null || sdk === void 0 ? void 0 : (_sdk$appInfo = sdk.appInfo) === null || _sdk$appInfo === void 0 ? void 0 : (_sdk$appInfo$premiumF = _sdk$appInfo.premiumFeatureList) === null || _sdk$appInfo$premiumF === void 0 ? void 0 : _sdk$appInfo$premiumF.find(feature => feature === DELIVERY_RECIPT);
141
+ if (canSetMarkAsDelivered && !disableMarkAsDelivered) {
142
+ logger.info('ChannelList: Marking all channels as read');
143
+ // eslint-disable-next-line no-unused-expressions
144
+ channelList === null || channelList === void 0 ? void 0 : channelList.forEach(channel => {
145
+ if ((channel === null || channel === void 0 ? void 0 : channel.unreadMessageCount) > 0) {
146
+ markAsDeliveredScheduler.push(channel);
147
+ }
148
+ });
180
149
  }
181
- }).catch(function (err) {
150
+ }).catch(err => {
182
151
  logger.info('ChannelList: Fetching channels failed', err);
183
152
  channelListDispatcher({
184
153
  type: FETCH_CHANNELS_FAILURE,
@@ -189,42 +158,36 @@ var ChannelListUI = function (props) {
189
158
  }
190
159
  }, sdkError && !loading && (renderPlaceHolderError && typeof renderPlaceHolderError === 'function' ? renderPlaceHolderError === null || renderPlaceHolderError === void 0 ? void 0 : renderPlaceHolderError() : /*#__PURE__*/React__default.createElement(PlaceHolder, {
191
160
  type: PlaceHolderTypes.WRONG
192
- })), /*#__PURE__*/React__default.createElement("div", null, allChannels && allChannels.map(function (channel, idx) {
161
+ })), /*#__PURE__*/React__default.createElement("div", null, allChannels && allChannels.map((channel, idx) => {
193
162
  // todo: Refactor and move this inside channel - preview
194
- var onLeaveChannel = function (c, cb) {
163
+ const onLeaveChannel = (c, cb) => {
195
164
  logger.info('ChannelList: Leaving channel', c);
196
- c.leave().then(function (res) {
165
+ c.leave().then(res => {
197
166
  logger.info('ChannelList: Leaving channel success', res);
198
-
199
167
  if (cb && typeof cb === 'function') {
200
168
  cb(res, null);
201
169
  }
202
-
203
170
  channelListDispatcher({
204
171
  type: LEAVE_CHANNEL_SUCCESS,
205
172
  payload: channel === null || channel === void 0 ? void 0 : channel.url
206
173
  });
207
- }).catch(function (err) {
174
+ }).catch(err => {
208
175
  logger.error('ChannelList: Leaving channel failed', err);
209
-
210
176
  if (cb && typeof cb === 'function') {
211
177
  cb(null, err);
212
178
  }
213
179
  });
214
180
  };
215
-
216
- var onClick = function () {
181
+ const onClick = () => {
217
182
  if (!isOnline) {
218
183
  return;
219
184
  }
220
-
221
185
  logger.info('ChannelList: Clicked on channel:', channel);
222
186
  channelListDispatcher({
223
187
  type: SET_CURRENT_CHANNEL,
224
188
  payload: channel
225
189
  });
226
190
  };
227
-
228
191
  return renderChannelPreview ?
229
192
  /*#__PURE__*/
230
193
  // eslint-disable-next-line
@@ -232,30 +195,26 @@ var ChannelListUI = function (props) {
232
195
  key: channel === null || channel === void 0 ? void 0 : channel.url,
233
196
  onClick: onClick
234
197
  }, renderChannelPreview({
235
- channel: channel,
236
- onLeaveChannel: onLeaveChannel
198
+ channel,
199
+ onLeaveChannel
237
200
  })) : /*#__PURE__*/React__default.createElement(ChannelPreview, {
238
201
  key: channel === null || channel === void 0 ? void 0 : channel.url,
239
202
  tabIndex: idx,
240
203
  onClick: onClick,
241
204
  channel: channel,
242
- onLeaveChannel: function () {
243
- return onLeaveChannel(channel, null);
244
- },
205
+ onLeaveChannel: () => onLeaveChannel(channel, null),
245
206
  isActive: (channel === null || channel === void 0 ? void 0 : channel.url) === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url),
246
- isTyping: typingChannels === null || typingChannels === void 0 ? void 0 : typingChannels.some(function (_a) {
247
- var url = _a.url;
207
+ isTyping: typingChannels === null || typingChannels === void 0 ? void 0 : typingChannels.some(_ref => {
208
+ let {
209
+ url
210
+ } = _ref;
248
211
  return url === (channel === null || channel === void 0 ? void 0 : channel.url);
249
212
  }),
250
- renderChannelAction: function () {
251
- return /*#__PURE__*/React__default.createElement(ChannelPreviewAction, {
252
- channel: channel,
253
- disabled: !isOnline,
254
- onLeaveChannel: function () {
255
- return onLeaveChannel(channel, null);
256
- }
257
- });
258
- }
213
+ renderChannelAction: () => /*#__PURE__*/React__default.createElement(ChannelPreviewAction, {
214
+ channel: channel,
215
+ disabled: !isOnline,
216
+ onLeaveChannel: () => onLeaveChannel(channel, null)
217
+ })
259
218
  });
260
219
  })), !initialized && loading && (renderPlaceHolderLoading && typeof renderPlaceHolderLoading === 'function' ? renderPlaceHolderLoading === null || renderPlaceHolderLoading === void 0 ? void 0 : renderPlaceHolderLoading() : /*#__PURE__*/React__default.createElement(PlaceHolder, {
261
220
  type: PlaceHolderTypes.LOADING
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelListUI.js","sources":["../../../src/smart-components/ChannelList/components/utils.js","../../../src/smart-components/ChannelList/components/ChannelListUI/index.tsx"],"sourcesContent":["export const createDefaultUserListQuery = ({ sdk, userFilledApplicationUserListQuery = {} }) => {\n if (sdk?.createApplicationUserListQuery) {\n const params = sdk?.createApplicationUserListQuery();\n if (userFilledApplicationUserListQuery) {\n Object.keys(userFilledApplicationUserListQuery).forEach((key) => {\n params[key] = userFilledApplicationUserListQuery[key];\n });\n }\n return params;\n }\n return null;\n};\n\nconst getApplicationAttributes = (sdk = {}) => {\n const { appInfo = {} } = sdk;\n const { applicationAttributes = [] } = appInfo;\n return applicationAttributes;\n};\n\nexport const isBroadcastChannelEnabled = (sdk = {}) => {\n const ALLOW_BROADCAST_CHANNEL = 'allow_broadcast_channel';\n const applicationAttributes = getApplicationAttributes(sdk);\n\n if (Array.isArray(applicationAttributes)) {\n return applicationAttributes.includes(ALLOW_BROADCAST_CHANNEL);\n }\n\n return false;\n};\nexport const isSuperGroupChannelEnabled = (sdk = {}) => {\n const ALLOW_SUPER_GROUP_CHANNEL = 'allow_super_group_channel';\n const applicationAttributes = getApplicationAttributes(sdk);\n\n if (Array.isArray(applicationAttributes)) {\n return applicationAttributes.includes(ALLOW_SUPER_GROUP_CHANNEL);\n }\n\n return false;\n};\n\nexport const isAboutSame = (a, b, px) => (Math.abs(a - b) <= px);\n\nexport const setChannelType = (params, type) => {\n if (type === 'broadcast') {\n // eslint-disable-next-line no-param-reassign\n params.isBroadcast = true;\n }\n if (type === 'supergroup') {\n // eslint-disable-next-line no-param-reassign\n params.isSuper = true;\n }\n return params;\n};\n\nexport const createChannel = (\n sdk,\n selectedUsers,\n onBeforeCreateChannel,\n userId,\n type = 'group',\n) => new Promise((resolve, reject) => {\n // have custom params\n if (onBeforeCreateChannel) {\n const params = onBeforeCreateChannel(selectedUsers);\n setChannelType(params, type);\n sdk.groupChannel.createChannel(params).then((groupChannel) => {\n resolve(groupChannel);\n }).catch((err) => { reject(err); });\n return;\n }\n\n const params = new sdk.GroupChannelParams();\n params.addUserIds(selectedUsers);\n params.isDistinct = false;\n\n if (userId) {\n params.operatorUserIds = [userId];\n }\n setChannelType(params, type);\n // do not have custom params\n sdk.groupChannel.createChannel(params).then((groupChannel) => {\n resolve(groupChannel);\n }).catch((err) => { resolve(err); });\n});\n\nexport default createChannel;\n","import './channel-list-ui.scss';\n\nimport React, { useState, useEffect } from 'react';\nimport type { GroupChannel, Member, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport type { User } from '@sendbird/chat';\n\nimport ChannelListHeader from '../ChannelListHeader';\nimport AddChannel from '../AddChannel';\nimport ChannelPreview from '../ChannelPreview';\nimport ChannelPreviewAction from '../ChannelPreviewAction';\nimport { useChannelListContext } from '../../context/ChannelListProvider';\nimport * as channelListActions from '../../dux/actionTypes';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport EditUserProfile from '../../../EditUserProfile';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { isAboutSame } from '../utils';\n\nconst DELIVERY_RECIPT = 'delivery_receipt';\n\ninterface RenderChannelPreviewProps {\n channel: GroupChannel;\n onLeaveChannel(\n channel: GroupChannel,\n onLeaveChannelCb?: (c: GroupChannel) => void,\n );\n}\n\ninterface RenderUserProfileProps {\n user: Member | User;\n currentUserId: string;\n close(): void;\n}\n\nexport interface ChannelListUIProps {\n renderChannelPreview?: (props: RenderChannelPreviewProps) => React.ReactElement;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactElement;\n renderHeader?: (props: void) => React.ReactElement;\n renderPlaceHolderError?: (props: void) => React.ReactElement;\n renderPlaceHolderLoading?: (props: void) => React.ReactElement;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactElement;\n}\n\nconst ChannelListUI: React.FC<ChannelListUIProps> = (props: ChannelListUIProps) => {\n const {\n renderHeader,\n renderChannelPreview,\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderEmptyList,\n } = props;\n\n const [showProfileEdit, setShowProfileEdit] = useState(false);\n\n const {\n onThemeChange,\n allowProfileEdit,\n allChannels,\n loading,\n currentChannel,\n channelListDispatcher,\n channelSource,\n typingChannels,\n initialized,\n } = useChannelListContext();\n\n const state = useSendbirdStateContext();\n\n const sdkStore = state?.stores?.sdkStore;\n const config = state?.config;\n const {\n logger = null,\n isOnline = false,\n disableMarkAsDelivered = false,\n } = config;\n\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n const sdkError = sdkStore?.error;\n\n const [channelsTomarkAsRead, setChannelsToMarkAsRead] = useState([]);\n useEffect(() => {\n // https://stackoverflow.com/a/60907638\n let isMounted = true;\n if (channelsTomarkAsRead?.length > 0 && !disableMarkAsDelivered) {\n channelsTomarkAsRead?.forEach((c, idx) => {\n // Plan-based rate limits - minimum limit is 5 requests per second\n setTimeout(() => {\n if (isMounted) {\n c?.markAsDelivered();\n }\n }, 2000 * idx);\n });\n }\n return () => {\n isMounted = false;\n }\n }, [channelsTomarkAsRead]);\n\n return (\n <>\n <div className=\"sendbird-channel-list__header\">\n {\n renderHeader?.() || (\n <ChannelListHeader\n onEdit={() => {\n if (allowProfileEdit) {\n setShowProfileEdit(true);\n }\n }}\n allowProfileEdit={allowProfileEdit}\n renderIconButton={() => (\n <AddChannel />\n )}\n />\n )\n }\n </div>\n {\n showProfileEdit && (\n <EditUserProfile\n onThemeChange={onThemeChange}\n onCancel={() => { setShowProfileEdit(false); }}\n onEditProfile={() => {\n setShowProfileEdit(false);\n }}\n />\n )\n }\n <div\n className=\"sendbird-channel-list__body\"\n onScroll={(e) => {\n const target = e?.target as HTMLDivElement;\n const fetchMore = isAboutSame(target.clientHeight + target.scrollTop, target.scrollHeight, 10);\n if (fetchMore && channelSource?.hasNext) {\n logger.info('ChannelList: Fetching more channels');\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_START,\n payload: null,\n });\n channelSource.next().then((channelList) => {\n logger.info('ChannelList: Fetching channels successful', channelList);\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_SUCCESS,\n payload: channelList,\n });\n const canSetMarkAsDelivered = sdk?.appInfo?.premiumFeatureList\n ?.find((feature) => (feature === DELIVERY_RECIPT));\n\n if (canSetMarkAsDelivered) {\n logger.info('ChannelList: Marking all channels as read');\n // eslint-disable-next-line no-unused-expressions\n setChannelsToMarkAsRead(channelList);\n }\n }).catch((err) => {\n logger.info('ChannelList: Fetching channels failed', err);\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_FAILURE,\n payload: err,\n });\n });\n }\n }}\n >\n {\n (sdkError && !loading) && (\n (renderPlaceHolderError && typeof renderPlaceHolderError === 'function') ? (\n renderPlaceHolderError?.()\n ) : (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n )\n }\n {/*\n To do: Implement windowing\n Implement windowing if you are dealing with large number of messages/channels\n https://github.com/bvaughn/react-window -> recommendation\n We hesitate to bring one more dependency to our library,\n we are planning to implement it inside the library\n */}\n <div>\n {\n allChannels && allChannels.map((channel, idx) => {\n // todo: Refactor and move this inside channel - preview\n const onLeaveChannel = (c, cb) => {\n logger.info('ChannelList: Leaving channel', c);\n c.leave()\n .then((res) => {\n logger.info('ChannelList: Leaving channel success', res);\n if (cb && typeof cb === 'function') {\n cb(res, null);\n }\n channelListDispatcher({\n type: channelListActions.LEAVE_CHANNEL_SUCCESS,\n payload: channel?.url,\n });\n })\n .catch((err) => {\n logger.error('ChannelList: Leaving channel failed', err);\n if (cb && typeof cb === 'function') {\n cb(null, err);\n }\n });\n };\n\n const onClick = () => {\n if (!isOnline) { return; }\n logger.info('ChannelList: Clicked on channel:', channel);\n channelListDispatcher({\n type: channelListActions.SET_CURRENT_CHANNEL,\n payload: channel,\n });\n };\n\n return (\n (renderChannelPreview)\n ? (\n // eslint-disable-next-line\n <div key={channel?.url} onClick={onClick}>\n {renderChannelPreview({ channel, onLeaveChannel })}\n </div>\n )\n : (\n <ChannelPreview\n key={channel?.url}\n tabIndex={idx}\n onClick={onClick}\n channel={channel}\n onLeaveChannel={() => onLeaveChannel(channel, null)}\n isActive={channel?.url === currentChannel?.url}\n isTyping={typingChannels?.some(({ url }) => url === channel?.url)}\n renderChannelAction={(() => (\n <ChannelPreviewAction\n channel={channel}\n disabled={!isOnline}\n onLeaveChannel={() => onLeaveChannel(channel, null)}\n />\n ))}\n />\n )\n );\n })\n }\n </div>\n {\n (!initialized && loading) && (\n (renderPlaceHolderLoading && typeof renderPlaceHolderLoading === 'function') ? (\n renderPlaceHolderLoading?.()\n ) : (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n )\n }\n {\n (initialized && allChannels?.length === 0) && (\n (renderPlaceHolderEmptyList && typeof renderPlaceHolderEmptyList === 'function') ? (\n renderPlaceHolderEmptyList?.()\n ) : (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n )\n }\n </div>\n </>\n );\n}\n\nexport default ChannelListUI;\n"],"names":["isAboutSame","a","b","px","Math","abs","DELIVERY_RECIPT","ChannelListUI","props","renderHeader","renderChannelPreview","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderEmptyList","_b","useState","showProfileEdit","setShowProfileEdit","_c","useChannelListContext","onThemeChange","allowProfileEdit","allChannels","loading","currentChannel","channelListDispatcher","channelSource","typingChannels","initialized","state","useSendbirdStateContext","sdkStore","_a","stores","config","_d","logger","_e","isOnline","_f","disableMarkAsDelivered","sdk","sdkError","error","_g","channelsTomarkAsRead","setChannelsToMarkAsRead","useEffect","isMounted","length","forEach","c","idx","setTimeout","markAsDelivered","React","EditUserProfile","e","target","fetchMore","clientHeight","scrollTop","scrollHeight","hasNext","info","type","channelListActions","payload","next","then","channelList","canSetMarkAsDelivered","appInfo","premiumFeatureList","find","feature","catch","err","PlaceHolderTypes","WRONG","map","channel","onLeaveChannel","cb","leave","res","url","onClick","some","LOADING","NO_CHANNELS"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelListUI.js","sources":["../../../src/modules/ChannelList/components/utils.js","../../../src/modules/ChannelList/components/ChannelListUI/index.tsx"],"sourcesContent":["export const createDefaultUserListQuery = ({ sdk, userFilledApplicationUserListQuery = {} }) => {\n if (sdk?.createApplicationUserListQuery) {\n const params = sdk?.createApplicationUserListQuery();\n if (userFilledApplicationUserListQuery) {\n Object.keys(userFilledApplicationUserListQuery).forEach((key) => {\n params[key] = userFilledApplicationUserListQuery[key];\n });\n }\n return params;\n }\n return null;\n};\n\nconst getApplicationAttributes = (sdk = {}) => {\n const { appInfo = {} } = sdk;\n const { applicationAttributes = [] } = appInfo;\n return applicationAttributes;\n};\n\nexport const isBroadcastChannelEnabled = (sdk = {}) => {\n const ALLOW_BROADCAST_CHANNEL = 'allow_broadcast_channel';\n const applicationAttributes = getApplicationAttributes(sdk);\n\n if (Array.isArray(applicationAttributes)) {\n return applicationAttributes.includes(ALLOW_BROADCAST_CHANNEL);\n }\n\n return false;\n};\nexport const isSuperGroupChannelEnabled = (sdk = {}) => {\n const ALLOW_SUPER_GROUP_CHANNEL = 'allow_super_group_channel';\n const applicationAttributes = getApplicationAttributes(sdk);\n\n if (Array.isArray(applicationAttributes)) {\n return applicationAttributes.includes(ALLOW_SUPER_GROUP_CHANNEL);\n }\n\n return false;\n};\n\nexport const isAboutSame = (a, b, px) => (Math.abs(a - b) <= px);\n\nexport const setChannelType = (params, type) => {\n if (type === 'broadcast') {\n // eslint-disable-next-line no-param-reassign\n params.isBroadcast = true;\n }\n if (type === 'supergroup') {\n // eslint-disable-next-line no-param-reassign\n params.isSuper = true;\n }\n return params;\n};\n\nexport const createChannel = (\n sdk,\n selectedUsers,\n onBeforeCreateChannel,\n userId,\n type = 'group',\n) => new Promise((resolve, reject) => {\n // have custom params\n if (onBeforeCreateChannel) {\n const params = onBeforeCreateChannel(selectedUsers);\n setChannelType(params, type);\n sdk.groupChannel.createChannel(params).then((groupChannel) => {\n resolve(groupChannel);\n }).catch((err) => { reject(err); });\n return;\n }\n\n const params = new sdk.GroupChannelParams();\n params.addUserIds(selectedUsers);\n params.isDistinct = false;\n\n if (userId) {\n params.operatorUserIds = [userId];\n }\n setChannelType(params, type);\n // do not have custom params\n sdk.groupChannel.createChannel(params).then((groupChannel) => {\n resolve(groupChannel);\n }).catch((err) => { resolve(err); });\n});\n\nexport default createChannel;\n","import './channel-list-ui.scss';\n\nimport React, { useState } from 'react';\nimport type { GroupChannel, Member, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport type { User } from '@sendbird/chat';\n\nimport ChannelListHeader from '../ChannelListHeader';\nimport AddChannel from '../AddChannel';\nimport ChannelPreview from '../ChannelPreview';\nimport ChannelPreviewAction from '../ChannelPreviewAction';\nimport { useChannelListContext } from '../../context/ChannelListProvider';\nimport * as channelListActions from '../../dux/actionTypes';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport EditUserProfile from '../../../EditUserProfile';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { isAboutSame } from '../utils';\n\nconst DELIVERY_RECIPT = 'delivery_receipt';\n\ninterface RenderChannelPreviewProps {\n channel: GroupChannel;\n onLeaveChannel(\n channel: GroupChannel,\n onLeaveChannelCb?: (c: GroupChannel) => void,\n );\n}\n\ninterface RenderUserProfileProps {\n user: Member | User;\n currentUserId: string;\n close(): void;\n}\n\nexport interface ChannelListUIProps {\n renderChannelPreview?: (props: RenderChannelPreviewProps) => React.ReactElement;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactElement;\n renderHeader?: (props: void) => React.ReactElement;\n renderPlaceHolderError?: (props: void) => React.ReactElement;\n renderPlaceHolderLoading?: (props: void) => React.ReactElement;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactElement;\n}\n\nconst ChannelListUI: React.FC<ChannelListUIProps> = (props: ChannelListUIProps) => {\n const {\n renderHeader,\n renderChannelPreview,\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderEmptyList,\n } = props;\n\n const [showProfileEdit, setShowProfileEdit] = useState(false);\n\n const {\n onThemeChange,\n allowProfileEdit,\n allChannels,\n loading,\n currentChannel,\n channelListDispatcher,\n channelSource,\n typingChannels,\n initialized,\n } = useChannelListContext();\n\n const state = useSendbirdStateContext();\n\n const sdkStore = state?.stores?.sdkStore;\n const config = state?.config;\n const {\n logger,\n isOnline = false,\n markAsDeliveredScheduler,\n disableMarkAsDelivered,\n } = config;\n\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n const sdkError = sdkStore?.error;\n\n return (\n <>\n <div className=\"sendbird-channel-list__header\">\n {\n renderHeader?.() || (\n <ChannelListHeader\n onEdit={() => {\n if (allowProfileEdit) {\n setShowProfileEdit(true);\n }\n }}\n allowProfileEdit={allowProfileEdit}\n renderIconButton={() => (\n <AddChannel />\n )}\n />\n )\n }\n </div>\n {\n showProfileEdit && (\n <EditUserProfile\n onThemeChange={onThemeChange}\n onCancel={() => { setShowProfileEdit(false); }}\n onEditProfile={() => {\n setShowProfileEdit(false);\n }}\n />\n )\n }\n <div\n className=\"sendbird-channel-list__body\"\n onScroll={(e) => {\n const target = e?.target as HTMLDivElement;\n const fetchMore = isAboutSame(target.clientHeight + target.scrollTop, target.scrollHeight, 10);\n if (fetchMore && channelSource?.hasNext) {\n logger.info('ChannelList: Fetching more channels');\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_START,\n payload: null,\n });\n channelSource.next().then((channelList) => {\n logger.info('ChannelList: Fetching channels successful', channelList);\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_SUCCESS,\n payload: channelList,\n });\n const canSetMarkAsDelivered = sdk?.appInfo?.premiumFeatureList\n ?.find((feature) => (feature === DELIVERY_RECIPT));\n\n if (canSetMarkAsDelivered && !disableMarkAsDelivered) {\n logger.info('ChannelList: Marking all channels as read');\n // eslint-disable-next-line no-unused-expressions\n channelList?.forEach((channel) => {\n if (channel?.unreadMessageCount > 0) {\n markAsDeliveredScheduler.push(channel);\n }\n });\n }\n }).catch((err) => {\n logger.info('ChannelList: Fetching channels failed', err);\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_FAILURE,\n payload: err,\n });\n });\n }\n }}\n >\n {\n (sdkError && !loading) && (\n (renderPlaceHolderError && typeof renderPlaceHolderError === 'function') ? (\n renderPlaceHolderError?.()\n ) : (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n )\n }\n {/*\n To do: Implement windowing\n Implement windowing if you are dealing with large number of messages/channels\n https://github.com/bvaughn/react-window -> recommendation\n We hesitate to bring one more dependency to our library,\n we are planning to implement it inside the library\n */}\n <div>\n {\n allChannels && allChannels.map((channel, idx) => {\n // todo: Refactor and move this inside channel - preview\n const onLeaveChannel = (c, cb) => {\n logger.info('ChannelList: Leaving channel', c);\n c.leave()\n .then((res) => {\n logger.info('ChannelList: Leaving channel success', res);\n if (cb && typeof cb === 'function') {\n cb(res, null);\n }\n channelListDispatcher({\n type: channelListActions.LEAVE_CHANNEL_SUCCESS,\n payload: channel?.url,\n });\n })\n .catch((err) => {\n logger.error('ChannelList: Leaving channel failed', err);\n if (cb && typeof cb === 'function') {\n cb(null, err);\n }\n });\n };\n\n const onClick = () => {\n if (!isOnline) { return; }\n logger.info('ChannelList: Clicked on channel:', channel);\n channelListDispatcher({\n type: channelListActions.SET_CURRENT_CHANNEL,\n payload: channel,\n });\n };\n\n return (\n (renderChannelPreview)\n ? (\n // eslint-disable-next-line\n <div key={channel?.url} onClick={onClick}>\n {renderChannelPreview({ channel, onLeaveChannel })}\n </div>\n )\n : (\n <ChannelPreview\n key={channel?.url}\n tabIndex={idx}\n onClick={onClick}\n channel={channel}\n onLeaveChannel={() => onLeaveChannel(channel, null)}\n isActive={channel?.url === currentChannel?.url}\n isTyping={typingChannels?.some(({ url }) => url === channel?.url)}\n renderChannelAction={(() => (\n <ChannelPreviewAction\n channel={channel}\n disabled={!isOnline}\n onLeaveChannel={() => onLeaveChannel(channel, null)}\n />\n ))}\n />\n )\n );\n })\n }\n </div>\n {\n (!initialized && loading) && (\n (renderPlaceHolderLoading && typeof renderPlaceHolderLoading === 'function') ? (\n renderPlaceHolderLoading?.()\n ) : (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n )\n }\n {\n (initialized && allChannels?.length === 0) && (\n (renderPlaceHolderEmptyList && typeof renderPlaceHolderEmptyList === 'function') ? (\n renderPlaceHolderEmptyList?.()\n ) : (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n )\n }\n </div>\n </>\n );\n};\n\nexport default ChannelListUI;\n"],"names":["isAboutSame","a","b","px","Math","abs","DELIVERY_RECIPT","ChannelListUI","props","_state$stores","renderHeader","renderChannelPreview","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderEmptyList","showProfileEdit","setShowProfileEdit","useState","onThemeChange","allowProfileEdit","allChannels","loading","currentChannel","channelListDispatcher","channelSource","typingChannels","initialized","useChannelListContext","state","useSendbirdStateContext","sdkStore","stores","config","logger","isOnline","markAsDeliveredScheduler","disableMarkAsDelivered","sdk","sdkError","error","React","createElement","Fragment","className","ChannelListHeader","onEdit","renderIconButton","AddChannel","EditUserProfile","onCancel","onEditProfile","onScroll","e","target","fetchMore","clientHeight","scrollTop","scrollHeight","hasNext","info","type","channelListActions","payload","next","then","channelList","_sdk$appInfo","_sdk$appInfo$premiumF","canSetMarkAsDelivered","appInfo","premiumFeatureList","find","feature","forEach","channel","unreadMessageCount","push","catch","err","PlaceHolder","PlaceHolderTypes","WRONG","map","idx","onLeaveChannel","c","cb","leave","res","url","onClick","key","ChannelPreview","tabIndex","isActive","isTyping","some","_ref","renderChannelAction","ChannelPreviewAction","disabled","LOADING","length","NO_CHANNELS"],"mappings":"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"}