@sendbird/uikit-react 3.4.4 → 3.4.5-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (552) hide show
  1. package/App.js +47 -42
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +80 -0
  4. package/Channel/components/ChannelHeader.js +19 -19
  5. package/Channel/components/ChannelUI.js +39 -35
  6. package/Channel/components/ChannelUI.js.map +1 -1
  7. package/Channel/components/FileViewer.js +15 -15
  8. package/Channel/components/FrozenNotification.js +4 -4
  9. package/Channel/components/Message.js +43 -39
  10. package/Channel/components/Message.js.map +1 -1
  11. package/Channel/components/MessageInput.js +27 -24
  12. package/Channel/components/MessageInput.js.map +1 -1
  13. package/Channel/components/MessageList.js +65 -62
  14. package/Channel/components/MessageList.js.map +1 -1
  15. package/Channel/components/RemoveMessageModal.js +17 -17
  16. package/Channel/components/SuggestedMentionList.js +17 -17
  17. package/Channel/components/TypingIndicator.js +15 -15
  18. package/Channel/components/UnreadCount.js +4 -4
  19. package/Channel/context.js +14 -14
  20. package/Channel.js +40 -35
  21. package/Channel.js.map +1 -1
  22. package/ChannelList/components/AddChannel.js +15 -15
  23. package/ChannelList/components/ChannelListHeader.js +6 -6
  24. package/ChannelList/components/ChannelListUI.js +40 -62
  25. package/ChannelList/components/ChannelListUI.js.map +1 -1
  26. package/ChannelList/components/ChannelPreview.js +26 -26
  27. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  28. package/ChannelList/context.js +8 -8
  29. package/ChannelList.js +30 -30
  30. package/{ChannelListProvider-3c107fc7.js → ChannelListProvider-38d1234f.js} +18 -12
  31. package/ChannelListProvider-38d1234f.js.map +1 -0
  32. package/{ChannelProvider-28639e83.js → ChannelProvider-1e05ac9e.js} +32 -32
  33. package/ChannelProvider-1e05ac9e.js.map +1 -0
  34. package/ChannelSettings/components/ChannelProfile.js +11 -11
  35. package/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  36. package/ChannelSettings/components/EditDetailsModal.js +11 -11
  37. package/ChannelSettings/components/LeaveChannel.js +11 -11
  38. package/ChannelSettings/components/ModerationPanel.js +14 -14
  39. package/ChannelSettings/components/UserListItem.js +10 -10
  40. package/ChannelSettings/components/UserPanel.js +13 -13
  41. package/ChannelSettings/context.js +3 -3
  42. package/ChannelSettings.js +17 -17
  43. package/CreateChannel/components/CreateChannelUI.js +13 -13
  44. package/CreateChannel/components/InviteUsers.js +13 -13
  45. package/CreateChannel/components/SelectChannelType.js +10 -10
  46. package/CreateChannel/context.js +4 -4
  47. package/CreateChannel.js +13 -13
  48. package/{CreateChannelProvider-09772304.js → CreateChannelProvider-3614d73c.js} +1 -1
  49. package/{CreateChannelProvider-09772304.js.map → CreateChannelProvider-3614d73c.js.map} +1 -1
  50. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  51. package/CreateOpenChannel/context.js +1 -1
  52. package/CreateOpenChannel.js +9 -9
  53. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  54. package/EditUserProfile.js +12 -12
  55. package/{LocalizationContext-ef72d4b1.js → LocalizationContext-34b46c40.js} +3 -3
  56. package/{LocalizationContext-ef72d4b1.js.map → LocalizationContext-34b46c40.js.map} +1 -1
  57. package/{MediaQueryContext-683c7242.js → MediaQueryContext-ce624aa4.js} +1 -1
  58. package/{MediaQueryContext-683c7242.js.map → MediaQueryContext-ce624aa4.js.map} +1 -1
  59. package/{MemberList-0bc3ff4a.js → MemberList-4de628ca.js} +5 -5
  60. package/{MemberList-0bc3ff4a.js.map → MemberList-4de628ca.js.map} +1 -1
  61. package/Message/context.js +30 -0
  62. package/Message/context.js.map +1 -0
  63. package/MessageSearch/components/MessageSearchUI.js +11 -11
  64. package/MessageSearch/context.js +1 -1
  65. package/MessageSearch.js +11 -11
  66. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  67. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  68. package/OpenChannel/components/OpenChannelInput.js +19 -16
  69. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  70. package/OpenChannel/components/OpenChannelMessage.js +28 -24
  71. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  72. package/OpenChannel/components/OpenChannelMessageList.js +58 -38
  73. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  74. package/OpenChannel/components/OpenChannelUI.js +31 -27
  75. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  76. package/OpenChannel/context.js +8 -8
  77. package/OpenChannel.js +31 -27
  78. package/OpenChannel.js.map +1 -1
  79. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  80. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  81. package/OpenChannelList/context.js +3 -3
  82. package/OpenChannelList.js +13 -13
  83. package/{OpenChannelListProvider-e5246224.js → OpenChannelListProvider-ab54ddfd.js} +3 -3
  84. package/{OpenChannelListProvider-e5246224.js.map → OpenChannelListProvider-ab54ddfd.js.map} +1 -1
  85. package/{OpenChannelProvider-c5952f33.js → OpenChannelProvider-801fe2a5.js} +7 -7
  86. package/{OpenChannelProvider-c5952f33.js.map → OpenChannelProvider-801fe2a5.js.map} +1 -1
  87. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  88. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  89. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  90. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  91. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  92. package/OpenChannelSettings/context.js +3 -3
  93. package/OpenChannelSettings.js +17 -17
  94. package/README.md +3 -2
  95. package/{RemoveMessageModal-63a8b079.js → RemoveMessageModal-73877b13.js} +3 -3
  96. package/{RemoveMessageModal-63a8b079.js.map → RemoveMessageModal-73877b13.js.map} +1 -1
  97. package/SendbirdProvider.js +93 -14
  98. package/SendbirdProvider.js.map +1 -1
  99. package/Thread/components/ParentMessageInfo.js +32 -28
  100. package/Thread/components/ParentMessageInfo.js.map +1 -1
  101. package/Thread/components/ParentMessageInfoItem.js +43 -45
  102. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  103. package/Thread/components/ThreadHeader.js +6 -6
  104. package/Thread/components/ThreadList.js +48 -36
  105. package/Thread/components/ThreadList.js.map +1 -1
  106. package/Thread/components/ThreadListItem.js +34 -30
  107. package/Thread/components/ThreadListItem.js.map +1 -1
  108. package/Thread/components/ThreadMessageInput.js +28 -25
  109. package/Thread/components/ThreadMessageInput.js.map +1 -1
  110. package/Thread/components/ThreadUI.js +66 -58
  111. package/Thread/components/ThreadUI.js.map +1 -1
  112. package/Thread/context.js +8 -8
  113. package/Thread.js +44 -40
  114. package/Thread.js.map +1 -1
  115. package/{ThreadProvider-435a6f11.js → ThreadProvider-44c43f8d.js} +7 -7
  116. package/{ThreadProvider-435a6f11.js.map → ThreadProvider-44c43f8d.js.map} +1 -1
  117. package/{UserProfileContext-5d7c5f9f.js → UserProfileContext-3fa0c617.js} +1 -1
  118. package/{UserProfileContext-5d7c5f9f.js.map → UserProfileContext-3fa0c617.js.map} +1 -1
  119. package/{VoiceMessageInputWrapper-8a9dda68.js → VoiceMessageInputWrapper-9e4d2e0f.js} +7 -7
  120. package/{VoiceMessageInputWrapper-8a9dda68.js.map → VoiceMessageInputWrapper-9e4d2e0f.js.map} +1 -1
  121. package/VoicePlayer/context.js +3 -3
  122. package/VoicePlayer/useVoicePlayer.js +3 -3
  123. package/VoiceRecorder/context.js +2 -2
  124. package/VoiceRecorder/useVoiceRecorder.js +2 -2
  125. package/{_rollupPluginBabelHelpers-37cba0d6.js → _rollupPluginBabelHelpers-f78972d2.js} +1 -1
  126. package/_rollupPluginBabelHelpers-f78972d2.js.map +1 -0
  127. package/{actionTypes-80e9dbe4.js → actionTypes-1693ceb3.js} +1 -1
  128. package/{actionTypes-80e9dbe4.js.map → actionTypes-1693ceb3.js.map} +1 -1
  129. package/cjs/App.js +47 -42
  130. package/cjs/App.js.map +1 -1
  131. package/cjs/Channel/components/ChannelHeader.js +19 -19
  132. package/cjs/Channel/components/ChannelUI.js +39 -35
  133. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  134. package/cjs/Channel/components/FileViewer.js +15 -15
  135. package/cjs/Channel/components/FrozenNotification.js +4 -4
  136. package/cjs/Channel/components/Message.js +43 -39
  137. package/cjs/Channel/components/Message.js.map +1 -1
  138. package/cjs/Channel/components/MessageInput.js +27 -24
  139. package/cjs/Channel/components/MessageInput.js.map +1 -1
  140. package/cjs/Channel/components/MessageList.js +65 -62
  141. package/cjs/Channel/components/MessageList.js.map +1 -1
  142. package/cjs/Channel/components/RemoveMessageModal.js +17 -17
  143. package/cjs/Channel/components/SuggestedMentionList.js +17 -17
  144. package/cjs/Channel/components/TypingIndicator.js +15 -15
  145. package/cjs/Channel/components/UnreadCount.js +4 -4
  146. package/cjs/Channel/context.js +14 -14
  147. package/cjs/Channel.js +40 -35
  148. package/cjs/Channel.js.map +1 -1
  149. package/cjs/ChannelList/components/AddChannel.js +15 -15
  150. package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
  151. package/cjs/ChannelList/components/ChannelListUI.js +39 -61
  152. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  153. package/cjs/ChannelList/components/ChannelPreview.js +26 -26
  154. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  155. package/cjs/ChannelList/context.js +8 -8
  156. package/cjs/ChannelList.js +30 -30
  157. package/cjs/{ChannelListProvider-b7ffadf7.js → ChannelListProvider-1f84d03b.js} +18 -12
  158. package/cjs/ChannelListProvider-1f84d03b.js.map +1 -0
  159. package/cjs/{ChannelProvider-b963c72c.js → ChannelProvider-5915747e.js} +32 -32
  160. package/cjs/ChannelProvider-5915747e.js.map +1 -0
  161. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  162. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  163. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  164. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  165. package/cjs/ChannelSettings/components/ModerationPanel.js +14 -14
  166. package/cjs/ChannelSettings/components/UserListItem.js +10 -10
  167. package/cjs/ChannelSettings/components/UserPanel.js +13 -13
  168. package/cjs/ChannelSettings/context.js +3 -3
  169. package/cjs/ChannelSettings.js +17 -17
  170. package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
  171. package/cjs/CreateChannel/components/InviteUsers.js +13 -13
  172. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  173. package/cjs/CreateChannel/context.js +4 -4
  174. package/cjs/CreateChannel.js +13 -13
  175. package/cjs/{CreateChannelProvider-ea54c83b.js → CreateChannelProvider-b0ade226.js} +1 -1
  176. package/cjs/{CreateChannelProvider-ea54c83b.js.map → CreateChannelProvider-b0ade226.js.map} +1 -1
  177. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  178. package/cjs/CreateOpenChannel/context.js +1 -1
  179. package/cjs/CreateOpenChannel.js +9 -9
  180. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  181. package/cjs/EditUserProfile.js +12 -12
  182. package/cjs/{LocalizationContext-4822793b.js → LocalizationContext-3fb1efd5.js} +3 -3
  183. package/cjs/{LocalizationContext-4822793b.js.map → LocalizationContext-3fb1efd5.js.map} +1 -1
  184. package/cjs/{MediaQueryContext-b83880cc.js → MediaQueryContext-9982e73b.js} +1 -1
  185. package/cjs/{MediaQueryContext-b83880cc.js.map → MediaQueryContext-9982e73b.js.map} +1 -1
  186. package/cjs/{MemberList-4cfc05a3.js → MemberList-574bae3f.js} +5 -5
  187. package/cjs/{MemberList-4cfc05a3.js.map → MemberList-574bae3f.js.map} +1 -1
  188. package/cjs/Message/context.js +39 -0
  189. package/cjs/Message/context.js.map +1 -0
  190. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  191. package/cjs/MessageSearch/context.js +1 -1
  192. package/cjs/MessageSearch.js +11 -11
  193. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  194. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  195. package/cjs/OpenChannel/components/OpenChannelInput.js +19 -16
  196. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  197. package/cjs/OpenChannel/components/OpenChannelMessage.js +28 -24
  198. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  199. package/cjs/OpenChannel/components/OpenChannelMessageList.js +58 -38
  200. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  201. package/cjs/OpenChannel/components/OpenChannelUI.js +31 -27
  202. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  203. package/cjs/OpenChannel/context.js +8 -8
  204. package/cjs/OpenChannel.js +31 -27
  205. package/cjs/OpenChannel.js.map +1 -1
  206. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  207. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  208. package/cjs/OpenChannelList/context.js +3 -3
  209. package/cjs/OpenChannelList.js +13 -13
  210. package/cjs/{OpenChannelListProvider-9fc6f344.js → OpenChannelListProvider-43b94684.js} +3 -3
  211. package/cjs/{OpenChannelListProvider-9fc6f344.js.map → OpenChannelListProvider-43b94684.js.map} +1 -1
  212. package/cjs/{OpenChannelProvider-64fb7652.js → OpenChannelProvider-411e1365.js} +7 -7
  213. package/cjs/{OpenChannelProvider-64fb7652.js.map → OpenChannelProvider-411e1365.js.map} +1 -1
  214. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  215. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  216. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  217. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  218. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  219. package/cjs/OpenChannelSettings/context.js +3 -3
  220. package/cjs/OpenChannelSettings.js +17 -17
  221. package/cjs/{RemoveMessageModal-00de23ec.js → RemoveMessageModal-0c4b41d0.js} +3 -3
  222. package/cjs/{RemoveMessageModal-00de23ec.js.map → RemoveMessageModal-0c4b41d0.js.map} +1 -1
  223. package/cjs/SendbirdProvider.js +92 -13
  224. package/cjs/SendbirdProvider.js.map +1 -1
  225. package/cjs/Thread/components/ParentMessageInfo.js +32 -28
  226. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  227. package/cjs/Thread/components/ParentMessageInfoItem.js +42 -44
  228. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  229. package/cjs/Thread/components/ThreadHeader.js +6 -6
  230. package/cjs/Thread/components/ThreadList.js +48 -36
  231. package/cjs/Thread/components/ThreadList.js.map +1 -1
  232. package/cjs/Thread/components/ThreadListItem.js +34 -30
  233. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  234. package/cjs/Thread/components/ThreadMessageInput.js +28 -25
  235. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  236. package/cjs/Thread/components/ThreadUI.js +67 -59
  237. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  238. package/cjs/Thread/context.js +8 -8
  239. package/cjs/Thread.js +44 -40
  240. package/cjs/Thread.js.map +1 -1
  241. package/cjs/{ThreadProvider-93f2b7e5.js → ThreadProvider-73f209d6.js} +7 -7
  242. package/cjs/{ThreadProvider-93f2b7e5.js.map → ThreadProvider-73f209d6.js.map} +1 -1
  243. package/cjs/{UserProfileContext-7bc4eec4.js → UserProfileContext-b0b956b8.js} +1 -1
  244. package/cjs/{UserProfileContext-7bc4eec4.js.map → UserProfileContext-b0b956b8.js.map} +1 -1
  245. package/cjs/{VoiceMessageInputWrapper-82c8ef13.js → VoiceMessageInputWrapper-2301a9cd.js} +7 -7
  246. package/cjs/{VoiceMessageInputWrapper-82c8ef13.js.map → VoiceMessageInputWrapper-2301a9cd.js.map} +1 -1
  247. package/cjs/VoicePlayer/context.js +3 -3
  248. package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
  249. package/cjs/VoiceRecorder/context.js +2 -2
  250. package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
  251. package/cjs/{_rollupPluginBabelHelpers-1218aafb.js → _rollupPluginBabelHelpers-05716924.js} +1 -1
  252. package/cjs/_rollupPluginBabelHelpers-05716924.js.map +1 -0
  253. package/cjs/{actionTypes-f186c4dd.js → actionTypes-de2a8f54.js} +1 -1
  254. package/cjs/{actionTypes-f186c4dd.js.map → actionTypes-de2a8f54.js.map} +1 -1
  255. package/cjs/{color-937f65ad.js → color-360107a6.js} +1 -1
  256. package/cjs/{color-937f65ad.js.map → color-360107a6.js.map} +1 -1
  257. package/cjs/{compareIds-3d732a01.js → compareIds-c4f938a4.js} +1 -1
  258. package/cjs/{compareIds-3d732a01.js.map → compareIds-c4f938a4.js.map} +1 -1
  259. package/cjs/{const-44ac2c14.js → const-7ce7d646.js} +1 -1
  260. package/cjs/{const-44ac2c14.js.map → const-7ce7d646.js.map} +1 -1
  261. package/cjs/{const-73aa22ac.js → const-893ed415.js} +1 -1
  262. package/cjs/{const-73aa22ac.js.map → const-893ed415.js.map} +1 -1
  263. package/cjs/consts-0b50a0c8.js +6 -0
  264. package/cjs/consts-0b50a0c8.js.map +1 -0
  265. package/cjs/consts-c4097faa.js +6 -0
  266. package/cjs/consts-c4097faa.js.map +1 -0
  267. package/cjs/{consts-2b0eaee0.js → consts-d9856131.js} +1 -1
  268. package/cjs/{consts-2b0eaee0.js.map → consts-d9856131.js.map} +1 -1
  269. package/cjs/{consts-11872691.js → consts-f5219aa0.js} +1 -1
  270. package/cjs/{consts-11872691.js.map → consts-f5219aa0.js.map} +1 -1
  271. package/cjs/{context-7e270322.js → context-971dc2dc.js} +2 -2
  272. package/cjs/{context-7e270322.js.map → context-971dc2dc.js.map} +1 -1
  273. package/cjs/dist/index.css +34 -26
  274. package/cjs/dist/index.css.map +1 -1
  275. package/cjs/{index-aaa65319.js → index-046dffba.js} +7 -7
  276. package/cjs/{index-aaa65319.js.map → index-046dffba.js.map} +1 -1
  277. package/cjs/{index-1151a507.js → index-05458f16.js} +1 -1
  278. package/cjs/{index-1151a507.js.map → index-05458f16.js.map} +1 -1
  279. package/cjs/{index-cfff5dbb.js → index-106dbf0e.js} +2 -2
  280. package/cjs/{index-cfff5dbb.js.map → index-106dbf0e.js.map} +1 -1
  281. package/cjs/{index-c7ff34af.js → index-1ebfe279.js} +5 -5
  282. package/cjs/{index-c7ff34af.js.map → index-1ebfe279.js.map} +1 -1
  283. package/cjs/{index-7207d339.js → index-2068f053.js} +11 -5
  284. package/cjs/index-2068f053.js.map +1 -0
  285. package/cjs/{index-2f2f3e43.js → index-27196170.js} +8 -2
  286. package/cjs/index-27196170.js.map +1 -0
  287. package/cjs/{index-57989185.js → index-3ecf6f1c.js} +1 -1
  288. package/cjs/{index-57989185.js.map → index-3ecf6f1c.js.map} +1 -1
  289. package/cjs/index-4efda0a3.js +63 -0
  290. package/cjs/index-4efda0a3.js.map +1 -0
  291. package/cjs/{index-f52caf82.js → index-4f21cdee.js} +2 -2
  292. package/cjs/{index-f52caf82.js.map → index-4f21cdee.js.map} +1 -1
  293. package/cjs/{index-f78cff63.js → index-871938c2.js} +2 -2
  294. package/cjs/{index-f78cff63.js.map → index-871938c2.js.map} +1 -1
  295. package/cjs/{index-a5fad93c.js → index-95fe4955.js} +4 -4
  296. package/cjs/{index-a5fad93c.js.map → index-95fe4955.js.map} +1 -1
  297. package/cjs/{index-e9d3a5d6.js → index-a981854c.js} +3 -3
  298. package/cjs/{index-e9d3a5d6.js.map → index-a981854c.js.map} +1 -1
  299. package/cjs/{index-20fc629b.js → index-b8bcbe2e.js} +3 -3
  300. package/cjs/{index-20fc629b.js.map → index-b8bcbe2e.js.map} +1 -1
  301. package/cjs/{index-a867516a.js → index-bd887626.js} +4 -4
  302. package/cjs/{index-a867516a.js.map → index-bd887626.js.map} +1 -1
  303. package/cjs/{index-3f30ab14.js → index-d4ad85fe.js} +7 -7
  304. package/cjs/{index-3f30ab14.js.map → index-d4ad85fe.js.map} +1 -1
  305. package/cjs/index.js +55 -51
  306. package/cjs/index.js.map +1 -1
  307. package/cjs/sendbirdSelectors.js +2 -2
  308. package/cjs/{stringSet-7f49973c.js → stringSet-eba21df4.js} +1 -1
  309. package/cjs/{stringSet-7f49973c.js.map → stringSet-eba21df4.js.map} +1 -1
  310. package/cjs/tokenize-ca4ac5a1.js +134 -0
  311. package/cjs/tokenize-ca4ac5a1.js.map +1 -0
  312. package/cjs/{topics-9d6a6d36.js → topics-e4dffa33.js} +1 -1
  313. package/cjs/{topics-9d6a6d36.js.map → topics-e4dffa33.js.map} +1 -1
  314. package/cjs/{tslib.es6-46c08a06.js → tslib.es6-94d25845.js} +1 -1
  315. package/cjs/{tslib.es6-46c08a06.js.map → tslib.es6-94d25845.js.map} +1 -1
  316. package/cjs/{types-31b11c88.js → types-dd4057f8.js} +1 -1
  317. package/cjs/types-dd4057f8.js.map +1 -0
  318. package/cjs/ui/Accordion.js +3 -3
  319. package/cjs/ui/AccordionGroup.js +2 -2
  320. package/cjs/ui/AdminMessage.js +3 -3
  321. package/cjs/ui/Avatar.js +2 -2
  322. package/cjs/ui/Badge.js +5 -5
  323. package/cjs/ui/BottomSheet.js +1 -1
  324. package/cjs/ui/Button.js +3 -3
  325. package/cjs/ui/ChannelAvatar.js +3 -3
  326. package/cjs/ui/ConnectionStatus.js +4 -4
  327. package/cjs/ui/ContextMenu.js +5 -5
  328. package/cjs/ui/DateSeparator.js +4 -4
  329. package/cjs/ui/EmojiReactions.js +7 -7
  330. package/cjs/ui/FileMessageItemBody.js +6 -6
  331. package/cjs/ui/FileViewer.js +8 -8
  332. package/cjs/ui/IconButton.js +1 -1
  333. package/cjs/ui/ImageRenderer.js +1 -1
  334. package/cjs/ui/Input.js +2 -2
  335. package/cjs/ui/Label.js +2 -2
  336. package/cjs/ui/LinkLabel.js +2 -2
  337. package/cjs/ui/Loader.js +1 -1
  338. package/cjs/ui/MentionLabel.js +12 -11
  339. package/cjs/ui/MentionLabel.js.map +1 -1
  340. package/cjs/ui/MentionUserLabel.js +1 -1
  341. package/cjs/ui/MessageContent.js +29 -25
  342. package/cjs/ui/MessageContent.js.map +1 -1
  343. package/cjs/ui/MessageInput.js +81 -52
  344. package/cjs/ui/MessageInput.js.map +1 -1
  345. package/cjs/ui/MessageItemMenu.js +8 -8
  346. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  347. package/cjs/ui/MessageSearchFileItem.js +10 -10
  348. package/cjs/ui/MessageSearchItem.js +9 -9
  349. package/cjs/ui/MessageStatus.js +10 -10
  350. package/cjs/ui/Modal.js +7 -7
  351. package/cjs/ui/OGMessageItemBody.js +26 -32
  352. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  353. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  354. package/cjs/ui/OpenChannelAvatar.js +6 -6
  355. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  356. package/cjs/ui/OpenchannelFileMessage.js +16 -16
  357. package/cjs/ui/OpenchannelOGMessage.js +48 -64
  358. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  359. package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
  360. package/cjs/ui/OpenchannelUserMessage.js +16 -16
  361. package/cjs/ui/PlaceHolder.js +6 -6
  362. package/cjs/ui/PlaybackTime.js +2 -2
  363. package/cjs/ui/QuoteMessage.js +6 -6
  364. package/cjs/ui/QuoteMessageInput.js +6 -6
  365. package/cjs/ui/ReactionBadge.js +3 -3
  366. package/cjs/ui/ReactionButton.js +1 -1
  367. package/cjs/ui/SortByRow.js +2 -2
  368. package/cjs/ui/TextButton.js +2 -2
  369. package/cjs/ui/TextMessageItemBody.js +25 -30
  370. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  371. package/cjs/ui/ThreadReplies.js +6 -6
  372. package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
  373. package/cjs/ui/Tooltip.js +3 -3
  374. package/cjs/ui/TooltipWrapper.js +1 -1
  375. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  376. package/cjs/ui/UserListItem.js +10 -10
  377. package/cjs/ui/UserProfile.js +9 -9
  378. package/cjs/ui/VoiceMessageItemBody.js +5 -5
  379. package/cjs/ui/VoiceMessgeInput.js +8 -8
  380. package/cjs/ui/Word.js +15 -10
  381. package/cjs/ui/Word.js.map +1 -1
  382. package/cjs/{useLongPress-839c53cb.js → useLongPress-d8b2586f.js} +3 -3
  383. package/cjs/{useLongPress-839c53cb.js.map → useLongPress-d8b2586f.js.map} +1 -1
  384. package/cjs/useSendbirdStateContext.js +1 -1
  385. package/cjs/utils/message/isVoiceMessage.js +2 -2
  386. package/cjs/{utils-41bb82dc.js → utils-49414b11.js} +1 -1
  387. package/cjs/{utils-41bb82dc.js.map → utils-49414b11.js.map} +1 -1
  388. package/cjs/{utils-7d2c966a.js → utils-6584b9f0.js} +1 -1
  389. package/cjs/{utils-7d2c966a.js.map → utils-6584b9f0.js.map} +1 -1
  390. package/cjs/{utils-9fc9438c.js → utils-7846a174.js} +2 -2
  391. package/cjs/{utils-9fc9438c.js.map → utils-7846a174.js.map} +1 -1
  392. package/cjs/{utils-dae078f4.js → utils-f294dd80.js} +1 -1
  393. package/cjs/{utils-dae078f4.js.map → utils-f294dd80.js.map} +1 -1
  394. package/cjs/{uuid-8454abf3.js → uuid-fe1b03cf.js} +1 -1
  395. package/cjs/{uuid-8454abf3.js.map → uuid-fe1b03cf.js.map} +1 -1
  396. package/cjs/withSendbird.js +1 -1
  397. package/{color-e5d40073.js → color-6e50d9e2.js} +1 -1
  398. package/{color-e5d40073.js.map → color-6e50d9e2.js.map} +1 -1
  399. package/{compareIds-148644b4.js → compareIds-67c3b05b.js} +1 -1
  400. package/{compareIds-148644b4.js.map → compareIds-67c3b05b.js.map} +1 -1
  401. package/{const-bf594206.js → const-8c87d265.js} +1 -1
  402. package/{const-bf594206.js.map → const-8c87d265.js.map} +1 -1
  403. package/{const-bba4efc9.js → const-b20d1024.js} +1 -1
  404. package/{const-bba4efc9.js.map → const-b20d1024.js.map} +1 -1
  405. package/{consts-f9543b99.js → consts-44e40533.js} +1 -1
  406. package/{consts-f9543b99.js.map → consts-44e40533.js.map} +1 -1
  407. package/consts-5929bec3.js +4 -0
  408. package/consts-5929bec3.js.map +1 -0
  409. package/{consts-b3042213.js → consts-5b2caf41.js} +1 -1
  410. package/{consts-b3042213.js.map → consts-5b2caf41.js.map} +1 -1
  411. package/consts-996c0a58.js +4 -0
  412. package/consts-996c0a58.js.map +1 -0
  413. package/{context-e82cf2c4.js → context-3ffe9980.js} +2 -2
  414. package/{context-e82cf2c4.js.map → context-3ffe9980.js.map} +1 -1
  415. package/dist/index.css +34 -26
  416. package/dist/index.css.map +1 -1
  417. package/{index-1dfb77d4.js → index-055bcae0.js} +2 -2
  418. package/{index-1dfb77d4.js.map → index-055bcae0.js.map} +1 -1
  419. package/{index-e1cff2ff.js → index-1d770388.js} +3 -3
  420. package/{index-e1cff2ff.js.map → index-1d770388.js.map} +1 -1
  421. package/{index-113d122f.js → index-26931609.js} +5 -5
  422. package/{index-113d122f.js.map → index-26931609.js.map} +1 -1
  423. package/{index-556999ef.js → index-3ee902ac.js} +8 -3
  424. package/index-3ee902ac.js.map +1 -0
  425. package/{index-18c2f8d4.js → index-3fff67da.js} +1 -1
  426. package/{index-18c2f8d4.js.map → index-3fff67da.js.map} +1 -1
  427. package/{index-253052c7.js → index-4538a9f1.js} +7 -7
  428. package/{index-253052c7.js.map → index-4538a9f1.js.map} +1 -1
  429. package/{index-9a413f89.js → index-55b1016d.js} +3 -3
  430. package/{index-9a413f89.js.map → index-55b1016d.js.map} +1 -1
  431. package/{index-e3d008b9.js → index-5668e8eb.js} +1 -1
  432. package/{index-e3d008b9.js.map → index-5668e8eb.js.map} +1 -1
  433. package/{index-86cb1c98.js → index-5d8bac74.js} +4 -4
  434. package/{index-86cb1c98.js.map → index-5d8bac74.js.map} +1 -1
  435. package/index-66393faa.js +57 -0
  436. package/index-66393faa.js.map +1 -0
  437. package/{index-97a2ff37.js → index-6e6736ec.js} +2 -2
  438. package/{index-97a2ff37.js.map → index-6e6736ec.js.map} +1 -1
  439. package/{index-2c0ab386.js → index-824e5bc8.js} +11 -5
  440. package/index-824e5bc8.js.map +1 -0
  441. package/{index-e571f56c.js → index-c36339ab.js} +4 -4
  442. package/{index-e571f56c.js.map → index-c36339ab.js.map} +1 -1
  443. package/{index-5be5af6d.js → index-d5769ac4.js} +7 -7
  444. package/{index-5be5af6d.js.map → index-d5769ac4.js.map} +1 -1
  445. package/{index-90365474.js → index-e34d85fd.js} +2 -2
  446. package/{index-90365474.js.map → index-e34d85fd.js.map} +1 -1
  447. package/index.d.ts +28 -1
  448. package/index.js +55 -51
  449. package/index.js.map +1 -1
  450. package/package.json +1 -1
  451. package/sendbirdSelectors.js +2 -2
  452. package/{stringSet-273bec27.js → stringSet-a9c3ac4a.js} +1 -1
  453. package/{stringSet-273bec27.js.map → stringSet-a9c3ac4a.js.map} +1 -1
  454. package/tokenize-63675252.js +130 -0
  455. package/tokenize-63675252.js.map +1 -0
  456. package/{topics-df7f51d4.js → topics-2a79610f.js} +1 -1
  457. package/{topics-df7f51d4.js.map → topics-2a79610f.js.map} +1 -1
  458. package/{tslib.es6-1aaf3795.js → tslib.es6-bb0710b6.js} +1 -1
  459. package/{tslib.es6-1aaf3795.js.map → tslib.es6-bb0710b6.js.map} +1 -1
  460. package/{types-ed183627.js → types-27a6a112.js} +1 -1
  461. package/types-27a6a112.js.map +1 -0
  462. package/ui/Accordion.js +3 -3
  463. package/ui/AccordionGroup.js +2 -2
  464. package/ui/AdminMessage.js +3 -3
  465. package/ui/Avatar.js +2 -2
  466. package/ui/Badge.js +5 -5
  467. package/ui/BottomSheet.js +1 -1
  468. package/ui/Button.js +3 -3
  469. package/ui/ChannelAvatar.js +3 -3
  470. package/ui/ConnectionStatus.js +4 -4
  471. package/ui/ContextMenu.js +5 -5
  472. package/ui/DateSeparator.js +4 -4
  473. package/ui/EmojiReactions.js +7 -7
  474. package/ui/FileMessageItemBody.js +6 -6
  475. package/ui/FileViewer.js +8 -8
  476. package/ui/IconButton.js +1 -1
  477. package/ui/ImageRenderer.js +1 -1
  478. package/ui/Input.js +2 -2
  479. package/ui/Label.js +2 -2
  480. package/ui/LinkLabel.js +2 -2
  481. package/ui/Loader.js +1 -1
  482. package/ui/MentionLabel.js +12 -11
  483. package/ui/MentionLabel.js.map +1 -1
  484. package/ui/MentionUserLabel.js +1 -1
  485. package/ui/MessageContent.js +29 -25
  486. package/ui/MessageContent.js.map +1 -1
  487. package/ui/MessageInput.js +81 -52
  488. package/ui/MessageInput.js.map +1 -1
  489. package/ui/MessageItemMenu.js +8 -8
  490. package/ui/MessageItemReactionMenu.js +5 -5
  491. package/ui/MessageSearchFileItem.js +10 -10
  492. package/ui/MessageSearchItem.js +9 -9
  493. package/ui/MessageStatus.js +10 -10
  494. package/ui/Modal.js +7 -7
  495. package/ui/OGMessageItemBody.js +26 -32
  496. package/ui/OGMessageItemBody.js.map +1 -1
  497. package/ui/OpenChannelAdminMessage.js +3 -3
  498. package/ui/OpenChannelAvatar.js +6 -6
  499. package/ui/OpenchannelConversationHeader.js +6 -6
  500. package/ui/OpenchannelFileMessage.js +16 -16
  501. package/ui/OpenchannelOGMessage.js +48 -64
  502. package/ui/OpenchannelOGMessage.js.map +1 -1
  503. package/ui/OpenchannelThumbnailMessage.js +15 -15
  504. package/ui/OpenchannelUserMessage.js +16 -16
  505. package/ui/PlaceHolder.js +6 -6
  506. package/ui/PlaybackTime.js +2 -2
  507. package/ui/QuoteMessage.js +6 -6
  508. package/ui/QuoteMessageInput.js +6 -6
  509. package/ui/ReactionBadge.js +3 -3
  510. package/ui/ReactionButton.js +1 -1
  511. package/ui/SortByRow.js +2 -2
  512. package/ui/TextButton.js +2 -2
  513. package/ui/TextMessageItemBody.js +25 -30
  514. package/ui/TextMessageItemBody.js.map +1 -1
  515. package/ui/ThreadReplies.js +6 -6
  516. package/ui/ThumbnailMessageItemBody.js +2 -2
  517. package/ui/Tooltip.js +3 -3
  518. package/ui/TooltipWrapper.js +1 -1
  519. package/ui/UnknownMessageItemBody.js +6 -6
  520. package/ui/UserListItem.js +10 -10
  521. package/ui/UserProfile.js +9 -9
  522. package/ui/VoiceMessageItemBody.js +5 -5
  523. package/ui/VoiceMessgeInput.js +8 -8
  524. package/ui/Word.js +15 -10
  525. package/ui/Word.js.map +1 -1
  526. package/{useLongPress-1ae5a380.js → useLongPress-7504e5b8.js} +3 -3
  527. package/{useLongPress-1ae5a380.js.map → useLongPress-7504e5b8.js.map} +1 -1
  528. package/useSendbirdStateContext.js +1 -1
  529. package/utils/message/isVoiceMessage.js +2 -2
  530. package/{utils-09901477.js → utils-1789e6d0.js} +1 -1
  531. package/{utils-09901477.js.map → utils-1789e6d0.js.map} +1 -1
  532. package/{utils-25614c42.js → utils-3ba27c29.js} +1 -1
  533. package/{utils-25614c42.js.map → utils-3ba27c29.js.map} +1 -1
  534. package/{utils-1b97d8ea.js → utils-3c4b1dd1.js} +2 -2
  535. package/{utils-1b97d8ea.js.map → utils-3c4b1dd1.js.map} +1 -1
  536. package/{utils-99c30ef6.js → utils-8318012f.js} +1 -1
  537. package/{utils-99c30ef6.js.map → utils-8318012f.js.map} +1 -1
  538. package/{uuid-29207f65.js → uuid-9ea19939.js} +1 -1
  539. package/{uuid-29207f65.js.map → uuid-9ea19939.js.map} +1 -1
  540. package/withSendbird.js +1 -1
  541. package/ChannelListProvider-3c107fc7.js.map +0 -1
  542. package/ChannelProvider-28639e83.js.map +0 -1
  543. package/_rollupPluginBabelHelpers-37cba0d6.js.map +0 -1
  544. package/cjs/ChannelListProvider-b7ffadf7.js.map +0 -1
  545. package/cjs/ChannelProvider-b963c72c.js.map +0 -1
  546. package/cjs/_rollupPluginBabelHelpers-1218aafb.js.map +0 -1
  547. package/cjs/index-2f2f3e43.js.map +0 -1
  548. package/cjs/index-7207d339.js.map +0 -1
  549. package/cjs/types-31b11c88.js.map +0 -1
  550. package/index-2c0ab386.js.map +0 -1
  551. package/index-556999ef.js.map +0 -1
  552. package/types-ed183627.js.map +0 -1
@@ -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/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 } 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 markAsReadScheduler,\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) {\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 markAsReadScheduler.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","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","logger","_d","isOnline","markAsReadScheduler","sdk","sdkError","error","React","EditUserProfile","e","target","fetchMore","clientHeight","scrollTop","scrollHeight","hasNext","info","type","channelListActions","payload","next","then","channelList","canSetMarkAsDelivered","appInfo","premiumFeatureList","find","feature","forEach","channel","unreadMessageCount","push","catch","err","PlaceHolderTypes","WRONG","map","idx","onLeaveChannel","c","cb","leave","res","url","onClick","some","LOADING","length","NO_CHANNELS"],"mappings":"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"}
@@ -1,52 +1,52 @@
1
- import { a as _extends } from '../../_rollupPluginBabelHelpers-37cba0d6.js';
2
- import { _ as __assign } from '../../tslib.es6-1aaf3795.js';
1
+ import { a as _extends } from '../../_rollupPluginBabelHelpers-f78972d2.js';
2
+ import { _ as __assign } from '../../tslib.es6-bb0710b6.js';
3
3
  import React__default, { useState } from 'react';
4
4
  import ChannelAvatar from '../../ui/ChannelAvatar.js';
5
5
  import Badge from '../../ui/Badge.js';
6
6
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
7
- import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-2c0ab386.js';
8
- import { g as getChannelTitle, a as getTotalMembers, M as MessageStatus, b as getLastMessageCreatedAt, c as getLastMessage, d as getChannelUnreadMessageCount } from '../../index-5be5af6d.js';
7
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-824e5bc8.js';
8
+ import { g as getChannelTitle, a as getTotalMembers, M as MessageStatus, b as getLastMessageCreatedAt, c as getLastMessage, d as getChannelUnreadMessageCount } from '../../index-d5769ac4.js';
9
9
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
10
- import { u as useLocalization } from '../../LocalizationContext-ef72d4b1.js';
10
+ import { u as useLocalization } from '../../LocalizationContext-34b46c40.js';
11
11
  import MentionUserLabel from '../../ui/MentionUserLabel.js';
12
12
  import Modal from '../../ui/Modal.js';
13
13
  import TextButton from '../../ui/TextButton.js';
14
- import { u as useChannelListContext } from '../../ChannelListProvider-3c107fc7.js';
14
+ import { u as useChannelListContext } from '../../ChannelListProvider-38d1234f.js';
15
15
  import { TypingIndicatorText } from '../../Channel/components/TypingIndicator.js';
16
- import { d as isVoiceMessage, e as isEditedMessage } from '../../index-556999ef.js';
17
- import { u as useMediaQueryContext } from '../../MediaQueryContext-683c7242.js';
18
- import { u as useLongPress } from '../../useLongPress-1ae5a380.js';
16
+ import { d as isVoiceMessage, e as isEditedMessage } from '../../index-3ee902ac.js';
17
+ import { u as useMediaQueryContext } from '../../MediaQueryContext-ce624aa4.js';
18
+ import { u as useLongPress } from '../../useLongPress-7504e5b8.js';
19
19
  import '../../ui/Avatar.js';
20
20
  import '../../ui/ImageRenderer.js';
21
- import '../../uuid-29207f65.js';
22
- import '../../utils-25614c42.js';
21
+ import '../../uuid-9ea19939.js';
22
+ import '../../utils-3ba27c29.js';
23
23
  import 'prop-types';
24
- import '../../stringSet-273bec27.js';
25
- import '../../index-97a2ff37.js';
26
- import '../../index-18c2f8d4.js';
24
+ import '../../stringSet-a9c3ac4a.js';
25
+ import '../../index-6e6736ec.js';
26
+ import '../../index-3fff67da.js';
27
27
  import '../../ui/Loader.js';
28
28
  import '../../utils/message/getOutgoingMessageState.js';
29
- import '../../index-9a413f89.js';
30
- import '../../index-1dfb77d4.js';
29
+ import '../../index-55b1016d.js';
30
+ import '../../index-055bcae0.js';
31
31
  import '../../withSendbird.js';
32
- import '../../consts-f9543b99.js';
32
+ import '../../consts-44e40533.js';
33
33
  import 'react-dom';
34
- import '../../index-e3d008b9.js';
34
+ import '../../index-5668e8eb.js';
35
35
  import '../../ui/Button.js';
36
36
  import '../../ui/IconButton.js';
37
- import '../../color-e5d40073.js';
37
+ import '../../color-6e50d9e2.js';
38
38
  import '@sendbird/chat/groupChannel';
39
- import '../../topics-df7f51d4.js';
40
- import '../../utils-99c30ef6.js';
41
- import '../../UserProfileContext-5d7c5f9f.js';
42
- import '../../ChannelProvider-28639e83.js';
43
- import '../../compareIds-148644b4.js';
44
- import '../../const-bf594206.js';
39
+ import '../../topics-2a79610f.js';
40
+ import '../../utils-8318012f.js';
41
+ import '../../UserProfileContext-3fa0c617.js';
42
+ import '../../ChannelProvider-1e05ac9e.js';
43
+ import '../../compareIds-67c3b05b.js';
44
+ import '../../const-8c87d265.js';
45
45
  import '@sendbird/chat/message';
46
46
  import '../../ui/ContextMenu.js';
47
47
  import '../../ui/SortByRow.js';
48
48
  import '../../ui/ReactionButton.js';
49
- import '../../consts-b3042213.js';
49
+ import '../../consts-5b2caf41.js';
50
50
 
51
51
  var ChannelPreview = function (_a) {
52
52
  var _b, _c, _d, _e, _f, _g, _h, _j, _k;
@@ -1,30 +1,30 @@
1
1
  import React__default, { useRef, useState, useContext } from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import { u as useLocalization, a as LocalizationContext } from '../../LocalizationContext-ef72d4b1.js';
3
+ import { u as useLocalization, a as LocalizationContext } from '../../LocalizationContext-34b46c40.js';
4
4
  import ContextMenu, { MenuItems, MenuItem } from '../../ui/ContextMenu.js';
5
5
  import IconButton from '../../ui/IconButton.js';
6
6
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
7
7
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
8
- import { n as noop } from '../../utils-99c30ef6.js';
8
+ import { n as noop } from '../../utils-8318012f.js';
9
9
  import Modal from '../../ui/Modal.js';
10
- import { u as useChannelListContext } from '../../ChannelListProvider-3c107fc7.js';
11
- import '../../stringSet-273bec27.js';
12
- import '../../index-18c2f8d4.js';
13
- import '../../tslib.es6-1aaf3795.js';
10
+ import { u as useChannelListContext } from '../../ChannelListProvider-38d1234f.js';
11
+ import '../../stringSet-a9c3ac4a.js';
12
+ import '../../index-3fff67da.js';
13
+ import '../../tslib.es6-bb0710b6.js';
14
14
  import 'react-dom';
15
15
  import '../../ui/SortByRow.js';
16
- import '../../uuid-29207f65.js';
17
- import '../../index-556999ef.js';
16
+ import '../../uuid-9ea19939.js';
17
+ import '../../index-3ee902ac.js';
18
18
  import '../../utils/message/getOutgoingMessageState.js';
19
- import '../../index-2c0ab386.js';
19
+ import '../../index-824e5bc8.js';
20
20
  import '../../withSendbird.js';
21
- import '../../index-e3d008b9.js';
21
+ import '../../index-5668e8eb.js';
22
22
  import '../../ui/Button.js';
23
- import '../../MediaQueryContext-683c7242.js';
23
+ import '../../MediaQueryContext-ce624aa4.js';
24
24
  import '@sendbird/chat/groupChannel';
25
- import '../../topics-df7f51d4.js';
26
- import '../../UserProfileContext-5d7c5f9f.js';
27
- import '../../_rollupPluginBabelHelpers-37cba0d6.js';
25
+ import '../../topics-2a79610f.js';
26
+ import '../../UserProfileContext-3fa0c617.js';
27
+ import '../../_rollupPluginBabelHelpers-f78972d2.js';
28
28
 
29
29
  var LeaveChannel = function (props) {
30
30
  var _a, _b, _c;
@@ -1,14 +1,14 @@
1
- import '../tslib.es6-1aaf3795.js';
1
+ import '../tslib.es6-bb0710b6.js';
2
2
  import 'react';
3
3
  import '@sendbird/chat/groupChannel';
4
- export { C as ChannelListProvider, u as useChannelListContext } from '../ChannelListProvider-3c107fc7.js';
5
- import '../uuid-29207f65.js';
6
- import '../utils-99c30ef6.js';
7
- import '../UserProfileContext-5d7c5f9f.js';
4
+ export { C as ChannelListProvider, u as useChannelListContext } from '../ChannelListProvider-38d1234f.js';
5
+ import '../uuid-9ea19939.js';
6
+ import '../utils-8318012f.js';
7
+ import '../UserProfileContext-3fa0c617.js';
8
8
  import '../useSendbirdStateContext.js';
9
- import '../topics-df7f51d4.js';
10
- import '../_rollupPluginBabelHelpers-37cba0d6.js';
11
- import '../index-556999ef.js';
9
+ import '../topics-2a79610f.js';
10
+ import '../_rollupPluginBabelHelpers-f78972d2.js';
11
+ import '../index-3ee902ac.js';
12
12
  import '../utils/message/getOutgoingMessageState.js';
13
13
  import 'prop-types';
14
14
  import '../withSendbird.js';
package/ChannelList.js CHANGED
@@ -1,23 +1,23 @@
1
1
  import React__default from 'react';
2
- import { C as ChannelListProvider } from './ChannelListProvider-3c107fc7.js';
2
+ import { C as ChannelListProvider } from './ChannelListProvider-38d1234f.js';
3
3
  import ChannelListUI from './ChannelList/components/ChannelListUI.js';
4
- import './tslib.es6-1aaf3795.js';
4
+ import './tslib.es6-bb0710b6.js';
5
5
  import '@sendbird/chat/groupChannel';
6
- import './topics-df7f51d4.js';
7
- import './uuid-29207f65.js';
8
- import './utils-99c30ef6.js';
9
- import './UserProfileContext-5d7c5f9f.js';
6
+ import './topics-2a79610f.js';
7
+ import './uuid-9ea19939.js';
8
+ import './utils-8318012f.js';
9
+ import './UserProfileContext-3fa0c617.js';
10
10
  import 'prop-types';
11
11
  import './useSendbirdStateContext.js';
12
12
  import './withSendbird.js';
13
- import './_rollupPluginBabelHelpers-37cba0d6.js';
14
- import './index-556999ef.js';
13
+ import './_rollupPluginBabelHelpers-f78972d2.js';
14
+ import './index-3ee902ac.js';
15
15
  import './utils/message/getOutgoingMessageState.js';
16
16
  import './ChannelList/components/ChannelListHeader.js';
17
- import './LocalizationContext-ef72d4b1.js';
18
- import './stringSet-273bec27.js';
19
- import './index-18c2f8d4.js';
20
- import './index-2c0ab386.js';
17
+ import './LocalizationContext-34b46c40.js';
18
+ import './stringSet-a9c3ac4a.js';
19
+ import './index-3fff67da.js';
20
+ import './index-824e5bc8.js';
21
21
  import './ui/Avatar.js';
22
22
  import './ui/ImageRenderer.js';
23
23
  import './ui/Icon.js';
@@ -25,14 +25,14 @@ import './ChannelList/components/AddChannel.js';
25
25
  import './ui/IconButton.js';
26
26
  import './CreateChannel.js';
27
27
  import './CreateChannel/components/CreateChannelUI.js';
28
- import './CreateChannelProvider-09772304.js';
28
+ import './CreateChannelProvider-3614d73c.js';
29
29
  import './sendbirdSelectors.js';
30
30
  import './CreateChannel/components/InviteUsers.js';
31
31
  import './ui/Modal.js';
32
32
  import 'react-dom';
33
- import './index-e3d008b9.js';
33
+ import './index-5668e8eb.js';
34
34
  import './ui/Button.js';
35
- import './MediaQueryContext-683c7242.js';
35
+ import './MediaQueryContext-ce624aa4.js';
36
36
  import './ui/UserListItem.js';
37
37
  import './ui/MutedAvatarOverlay.js';
38
38
  import './ui/Checkbox.js';
@@ -42,31 +42,31 @@ import './ui/SortByRow.js';
42
42
  import './CreateChannel/components/SelectChannelType.js';
43
43
  import './ChannelList/components/ChannelPreview.js';
44
44
  import './ui/ChannelAvatar.js';
45
- import './utils-25614c42.js';
45
+ import './utils-3ba27c29.js';
46
46
  import './ui/Badge.js';
47
- import './index-5be5af6d.js';
48
- import './index-97a2ff37.js';
47
+ import './index-d5769ac4.js';
48
+ import './index-6e6736ec.js';
49
49
  import './ui/Loader.js';
50
- import './index-9a413f89.js';
51
- import './index-1dfb77d4.js';
50
+ import './index-55b1016d.js';
51
+ import './index-055bcae0.js';
52
52
  import './ui/MentionUserLabel.js';
53
- import './consts-f9543b99.js';
53
+ import './consts-44e40533.js';
54
54
  import './ui/TextButton.js';
55
- import './color-e5d40073.js';
55
+ import './color-6e50d9e2.js';
56
56
  import './Channel/components/TypingIndicator.js';
57
- import './ChannelProvider-28639e83.js';
58
- import './compareIds-148644b4.js';
59
- import './const-bf594206.js';
57
+ import './ChannelProvider-1e05ac9e.js';
58
+ import './compareIds-67c3b05b.js';
59
+ import './const-8c87d265.js';
60
60
  import '@sendbird/chat/message';
61
61
  import './ui/ReactionButton.js';
62
- import './consts-b3042213.js';
63
- import './useLongPress-1ae5a380.js';
62
+ import './consts-5b2caf41.js';
63
+ import './useLongPress-7504e5b8.js';
64
64
  import './ChannelList/components/ChannelPreviewAction.js';
65
65
  import './EditUserProfile.js';
66
- import './index-113d122f.js';
66
+ import './index-26931609.js';
67
67
  import './ui/Input.js';
68
- import './actionTypes-80e9dbe4.js';
69
- import './index-86cb1c98.js';
68
+ import './actionTypes-1693ceb3.js';
69
+ import './index-5d8bac74.js';
70
70
 
71
71
  var ChannelList = function (props) {
72
72
  return /*#__PURE__*/React__default.createElement(ChannelListProvider, {
@@ -1,13 +1,13 @@
1
- import { a as __spreadArray, _ as __assign } from './tslib.es6-1aaf3795.js';
1
+ import { a as __spreadArray, _ as __assign } from './tslib.es6-bb0710b6.js';
2
2
  import React__default, { useEffect, useReducer, useState, useMemo, useContext } from 'react';
3
3
  import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
4
- import { P as PUBSUB_TOPICS } from './topics-df7f51d4.js';
5
- import { u as uuidv4 } from './uuid-29207f65.js';
6
- import { n as noop } from './utils-99c30ef6.js';
7
- import { U as UserProfileProvider } from './UserProfileContext-5d7c5f9f.js';
4
+ import { P as PUBSUB_TOPICS } from './topics-2a79610f.js';
5
+ import { u as uuidv4 } from './uuid-9ea19939.js';
6
+ import { n as noop } from './utils-8318012f.js';
7
+ import { U as UserProfileProvider } from './UserProfileContext-3fa0c617.js';
8
8
  import useSendbirdStateContext from './useSendbirdStateContext.js';
9
- import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-37cba0d6.js';
10
- import { f as filterChannelListParams, g as getChannelsWithUpsertedChannel } from './index-556999ef.js';
9
+ import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-f78972d2.js';
10
+ import { f as filterChannelListParams, g as getChannelsWithUpsertedChannel } from './index-3ee902ac.js';
11
11
 
12
12
  const RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';
13
13
  const CREATE_CHANNEL = 'CREATE_CHANNEL';
@@ -215,7 +215,7 @@ function setupChannelList(_ref3) {
215
215
  logger,
216
216
  sortChannelList,
217
217
  disableAutoSelect,
218
- setChannelsToMarkAsRead
218
+ markAsReadScheduler
219
219
  } = _ref3;
220
220
 
221
221
  if (sdk !== null && sdk !== void 0 && sdk.groupChannel) {
@@ -283,7 +283,11 @@ function setupChannelList(_ref3) {
283
283
  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);
284
284
 
285
285
  if (canSetMarkAsDelivered) {
286
- setChannelsToMarkAsRead(sortedChannelList);
286
+ sortChannelList.forEach(channel => {
287
+ if ((channel === null || channel === void 0 ? void 0 : channel.unreadMessageCount) > 0) {
288
+ markAsReadScheduler.push(channel);
289
+ }
290
+ });
287
291
  }
288
292
  }).catch(err => {
289
293
  if (err) {
@@ -815,7 +819,8 @@ var ChannelListProvider = function (props) {
815
819
  var pubSub = config.pubSub,
816
820
  logger = config.logger,
817
821
  onUserProfileMessage = config.onUserProfileMessage;
818
- var _d = config.disableMarkAsDelivered,
822
+ var markAsReadScheduler = config.markAsReadScheduler,
823
+ _d = config.disableMarkAsDelivered,
819
824
  disableMarkAsDelivered = _d === void 0 ? false : _d,
820
825
  _e = config.isTypingIndicatorEnabledOnChannelList,
821
826
  isTypingIndicatorEnabledOnChannelList = _e === void 0 ? false : _e,
@@ -892,7 +897,8 @@ var ChannelListProvider = function (props) {
892
897
  logger: logger,
893
898
  sortChannelList: sortChannelList,
894
899
  disableAutoSelect: disableAutoSelect,
895
- setChannelsToMarkAsRead: setChannelsToMarkAsRead
900
+ setChannelsToMarkAsRead: setChannelsToMarkAsRead,
901
+ markAsReadScheduler: markAsReadScheduler
896
902
  });
897
903
  } else {
898
904
  logger.info('ChannelList: Removing channelHandlers'); // remove previous channelHandlers
@@ -1071,4 +1077,4 @@ function useChannelListContext() {
1071
1077
  }
1072
1078
 
1073
1079
  export { ChannelListProvider as C, FETCH_CHANNELS_START as F, LEAVE_CHANNEL_SUCCESS as L, SET_CURRENT_CHANNEL as S, FETCH_CHANNELS_SUCCESS as a, FETCH_CHANNELS_FAILURE as b, useChannelListContext as u };
1074
- //# sourceMappingURL=ChannelListProvider-3c107fc7.js.map
1080
+ //# sourceMappingURL=ChannelListProvider-38d1234f.js.map