@sendbird/uikit-react 3.0.0 → 3.0.2-beta.1

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 (422) hide show
  1. package/App.js +40 -32
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +28 -0
  4. package/Channel/components/ChannelHeader.js +17 -17
  5. package/Channel/components/ChannelUI.js +29 -25
  6. package/Channel/components/ChannelUI.js.map +1 -1
  7. package/Channel/components/FileViewer.js +16 -16
  8. package/Channel/components/FrozenNotification.js +5 -5
  9. package/Channel/components/Message.js +21 -21
  10. package/Channel/components/MessageInput.js +18 -18
  11. package/Channel/components/MessageList.js +28 -24
  12. package/Channel/components/MessageList.js.map +1 -1
  13. package/Channel/components/RemoveMessageModal.js +19 -19
  14. package/Channel/components/SuggestedMentionList.js +17 -17
  15. package/Channel/components/TypingIndicator.js +19 -17
  16. package/Channel/components/TypingIndicator.js.map +1 -1
  17. package/Channel/components/UnreadCount.js +5 -5
  18. package/Channel/context.js +15 -15
  19. package/Channel.js +24 -24
  20. package/ChannelList/components/AddChannel.js +14 -14
  21. package/ChannelList/components/ChannelListHeader.js +7 -7
  22. package/ChannelList/components/ChannelListUI.js +54 -35
  23. package/ChannelList/components/ChannelListUI.js.map +1 -1
  24. package/ChannelList/components/ChannelPreview.js +21 -21
  25. package/ChannelList/components/ChannelPreviewAction.js +16 -16
  26. package/ChannelList/context.js +10 -10
  27. package/ChannelList.js +28 -28
  28. package/ChannelList.js.map +1 -1
  29. package/{ChannelListProvider-bc1f14ac.js → ChannelListProvider-551b956e.js} +43 -29
  30. package/ChannelListProvider-551b956e.js.map +1 -0
  31. package/{ChannelProvider-3d7434a2.js → ChannelProvider-f2229414.js} +21 -15
  32. package/ChannelProvider-f2229414.js.map +1 -0
  33. package/ChannelSettings/components/ChannelProfile.js +13 -13
  34. package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  35. package/ChannelSettings/components/EditDetailsModal.js +13 -13
  36. package/ChannelSettings/components/LeaveChannel.js +10 -10
  37. package/ChannelSettings/components/ModerationPanel.js +15 -15
  38. package/ChannelSettings/components/UserListItem.js +12 -12
  39. package/ChannelSettings/components/UserPanel.js +14 -14
  40. package/ChannelSettings/context.js +3 -3
  41. package/ChannelSettings/context.js.map +1 -1
  42. package/ChannelSettings.js +18 -18
  43. package/CreateChannel/components/CreateChannelUI.js +21 -17
  44. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  45. package/CreateChannel/components/InviteUsers.js +51 -41
  46. package/CreateChannel/components/InviteUsers.js.map +1 -1
  47. package/CreateChannel/components/SelectChannelType.js +10 -10
  48. package/CreateChannel/context.js +4 -4
  49. package/CreateChannel.js +14 -14
  50. package/{CreateChannelProvider-8464145a.js → CreateChannelProvider-15dfa1af.js} +1 -1
  51. package/CreateChannelProvider-15dfa1af.js.map +1 -0
  52. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  53. package/EditUserProfile.js +13 -13
  54. package/{LocalizationContext-4b1ec8b9.js → LocalizationContext-cf80416c.js} +3 -3
  55. package/{LocalizationContext-4b1ec8b9.js.map → LocalizationContext-cf80416c.js.map} +1 -1
  56. package/{MemberList-0f94f1c7.js → MemberList-f79c33ff.js} +24 -20
  57. package/MemberList-f79c33ff.js.map +1 -0
  58. package/MessageSearch/components/MessageSearchUI.js +11 -11
  59. package/MessageSearch/context.js +2 -2
  60. package/MessageSearch.js +11 -11
  61. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  62. package/OpenChannel/components/OpenChannelHeader.js +14 -14
  63. package/OpenChannel/components/OpenChannelInput.js +18 -18
  64. package/OpenChannel/components/OpenChannelMessage.js +23 -23
  65. package/OpenChannel/components/OpenChannelMessageList.js +25 -25
  66. package/OpenChannel/components/OpenChannelUI.js +25 -25
  67. package/OpenChannel/context.js +11 -11
  68. package/OpenChannel.js +25 -25
  69. package/{OpenChannelProvider-c9d83594.js → OpenChannelProvider-e5364b83.js} +9 -9
  70. package/{OpenChannelProvider-c9d83594.js.map → OpenChannelProvider-e5364b83.js.map} +1 -1
  71. package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  72. package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  73. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  74. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  75. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  76. package/OpenChannelSettings/context.js +2 -2
  77. package/OpenChannelSettings.js +17 -17
  78. package/SendbirdProvider.js +67 -37
  79. package/SendbirdProvider.js.map +1 -1
  80. package/{UserProfileContext-d0287bb6.js → UserProfileContext-977db3ff.js} +1 -1
  81. package/{UserProfileContext-d0287bb6.js.map → UserProfileContext-977db3ff.js.map} +1 -1
  82. package/__bundle-7dfccc8c-db2ded0f.js +4396 -0
  83. package/__bundle-7dfccc8c-db2ded0f.js.map +1 -0
  84. package/{_rollupPluginBabelHelpers-abbcef5e.js → _rollupPluginBabelHelpers-fdcfbfcc.js} +1 -1
  85. package/{_rollupPluginBabelHelpers-abbcef5e.js.map → _rollupPluginBabelHelpers-fdcfbfcc.js.map} +1 -1
  86. package/{actionTypes-d0ccd7e4.js → actionTypes-6075fcef.js} +1 -1
  87. package/{actionTypes-d0ccd7e4.js.map → actionTypes-6075fcef.js.map} +1 -1
  88. package/cjs/App.js +40 -32
  89. package/cjs/App.js.map +1 -1
  90. package/cjs/Channel/components/ChannelHeader.js +17 -17
  91. package/cjs/Channel/components/ChannelUI.js +29 -25
  92. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  93. package/cjs/Channel/components/FileViewer.js +16 -16
  94. package/cjs/Channel/components/FrozenNotification.js +5 -5
  95. package/cjs/Channel/components/Message.js +21 -21
  96. package/cjs/Channel/components/MessageInput.js +18 -18
  97. package/cjs/Channel/components/MessageList.js +28 -24
  98. package/cjs/Channel/components/MessageList.js.map +1 -1
  99. package/cjs/Channel/components/RemoveMessageModal.js +19 -19
  100. package/cjs/Channel/components/SuggestedMentionList.js +17 -17
  101. package/cjs/Channel/components/TypingIndicator.js +19 -17
  102. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  103. package/cjs/Channel/components/UnreadCount.js +5 -5
  104. package/cjs/Channel/context.js +15 -15
  105. package/cjs/Channel.js +24 -24
  106. package/cjs/ChannelList/components/AddChannel.js +14 -14
  107. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  108. package/cjs/ChannelList/components/ChannelListUI.js +53 -34
  109. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  110. package/cjs/ChannelList/components/ChannelPreview.js +21 -21
  111. package/cjs/ChannelList/components/ChannelPreviewAction.js +16 -16
  112. package/cjs/ChannelList/context.js +10 -10
  113. package/cjs/ChannelList.js +28 -28
  114. package/cjs/ChannelList.js.map +1 -1
  115. package/cjs/{ChannelListProvider-8157ae01.js → ChannelListProvider-a78dcace.js} +43 -29
  116. package/cjs/ChannelListProvider-a78dcace.js.map +1 -0
  117. package/cjs/{ChannelProvider-793fddf5.js → ChannelProvider-1c64ff8e.js} +21 -15
  118. package/cjs/ChannelProvider-1c64ff8e.js.map +1 -0
  119. package/cjs/ChannelSettings/components/ChannelProfile.js +13 -13
  120. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  121. package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
  122. package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
  123. package/cjs/ChannelSettings/components/ModerationPanel.js +15 -15
  124. package/cjs/ChannelSettings/components/UserListItem.js +12 -12
  125. package/cjs/ChannelSettings/components/UserPanel.js +14 -14
  126. package/cjs/ChannelSettings/context.js +3 -3
  127. package/cjs/ChannelSettings/context.js.map +1 -1
  128. package/cjs/ChannelSettings.js +18 -18
  129. package/cjs/CreateChannel/components/CreateChannelUI.js +21 -17
  130. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  131. package/cjs/CreateChannel/components/InviteUsers.js +51 -41
  132. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  133. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  134. package/cjs/CreateChannel/context.js +4 -4
  135. package/cjs/CreateChannel.js +14 -14
  136. package/cjs/{CreateChannelProvider-b462ce84.js → CreateChannelProvider-d3305abc.js} +1 -1
  137. package/cjs/CreateChannelProvider-d3305abc.js.map +1 -0
  138. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  139. package/cjs/EditUserProfile.js +13 -13
  140. package/cjs/{LocalizationContext-855bfc31.js → LocalizationContext-baf1fe9b.js} +3 -3
  141. package/cjs/{LocalizationContext-855bfc31.js.map → LocalizationContext-baf1fe9b.js.map} +1 -1
  142. package/cjs/{MemberList-c446abed.js → MemberList-95fc8f1a.js} +24 -20
  143. package/cjs/MemberList-95fc8f1a.js.map +1 -0
  144. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  145. package/cjs/MessageSearch/context.js +2 -2
  146. package/cjs/MessageSearch.js +11 -11
  147. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  148. package/cjs/OpenChannel/components/OpenChannelHeader.js +14 -14
  149. package/cjs/OpenChannel/components/OpenChannelInput.js +18 -18
  150. package/cjs/OpenChannel/components/OpenChannelMessage.js +23 -23
  151. package/cjs/OpenChannel/components/OpenChannelMessageList.js +25 -25
  152. package/cjs/OpenChannel/components/OpenChannelUI.js +25 -25
  153. package/cjs/OpenChannel/context.js +11 -11
  154. package/cjs/OpenChannel.js +25 -25
  155. package/cjs/{OpenChannelProvider-2264dc27.js → OpenChannelProvider-cc9ee134.js} +9 -9
  156. package/cjs/{OpenChannelProvider-2264dc27.js.map → OpenChannelProvider-cc9ee134.js.map} +1 -1
  157. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  158. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  159. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  160. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  161. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  162. package/cjs/OpenChannelSettings/context.js +2 -2
  163. package/cjs/OpenChannelSettings.js +17 -17
  164. package/cjs/SendbirdProvider.js +67 -37
  165. package/cjs/SendbirdProvider.js.map +1 -1
  166. package/cjs/{UserProfileContext-627c1f20.js → UserProfileContext-d4c230c3.js} +1 -1
  167. package/cjs/{UserProfileContext-627c1f20.js.map → UserProfileContext-d4c230c3.js.map} +1 -1
  168. package/cjs/__bundle-7dfccc8c-e40d0934.js +4523 -0
  169. package/cjs/__bundle-7dfccc8c-e40d0934.js.map +1 -0
  170. package/cjs/{_rollupPluginBabelHelpers-89a197f1.js → _rollupPluginBabelHelpers-29633c69.js} +1 -1
  171. package/cjs/{_rollupPluginBabelHelpers-89a197f1.js.map → _rollupPluginBabelHelpers-29633c69.js.map} +1 -1
  172. package/cjs/{actionTypes-3f5d873f.js → actionTypes-27fdf504.js} +1 -1
  173. package/cjs/{actionTypes-3f5d873f.js.map → actionTypes-27fdf504.js.map} +1 -1
  174. package/cjs/{color-894bd822.js → color-10db49db.js} +1 -1
  175. package/cjs/{color-894bd822.js.map → color-10db49db.js.map} +1 -1
  176. package/cjs/{compareIds-bc1f1524.js → compareIds-b6c1549b.js} +1 -1
  177. package/cjs/{compareIds-bc1f1524.js.map → compareIds-b6c1549b.js.map} +1 -1
  178. package/cjs/{const-8fdee18a.js → const-216f25a9.js} +1 -1
  179. package/cjs/{const-8fdee18a.js.map → const-216f25a9.js.map} +1 -1
  180. package/cjs/{const-bb23ef90.js → const-7cba20e4.js} +1 -1
  181. package/cjs/{const-bb23ef90.js.map → const-7cba20e4.js.map} +1 -1
  182. package/cjs/{context-f07caf29.js → context-1bb3f131.js} +2 -2
  183. package/cjs/{context-f07caf29.js.map → context-1bb3f131.js.map} +1 -1
  184. package/cjs/dist/index.css +93 -93
  185. package/cjs/dist/index.css.map +1 -1
  186. package/cjs/{groupChannel-64ff0a33.js → groupChannel-7c2201a9.js} +2 -2
  187. package/cjs/{groupChannel-64ff0a33.js.map → groupChannel-7c2201a9.js.map} +1 -1
  188. package/cjs/{index-a7643049.js → index-31de37a9.js} +3 -3
  189. package/cjs/{index-a7643049.js.map → index-31de37a9.js.map} +1 -1
  190. package/cjs/{index-2ce368ff.js → index-4aac2260.js} +4 -4
  191. package/cjs/{index-2ce368ff.js.map → index-4aac2260.js.map} +1 -1
  192. package/cjs/{index-47e86329.js → index-802a624a.js} +2 -2
  193. package/cjs/{index-47e86329.js.map → index-802a624a.js.map} +1 -1
  194. package/cjs/{index-3dd33e71.js → index-885e6586.js} +2 -2
  195. package/cjs/{index-3dd33e71.js.map → index-885e6586.js.map} +1 -1
  196. package/cjs/{index-9bc1ab0f.js → index-8a02c34e.js} +2 -2
  197. package/cjs/{index-9bc1ab0f.js.map → index-8a02c34e.js.map} +1 -1
  198. package/cjs/{index-3298ba2f.js → index-9f277fa2.js} +4 -4
  199. package/cjs/{index-3298ba2f.js.map → index-9f277fa2.js.map} +1 -1
  200. package/cjs/{index-c730dbc7.js → index-c5e7bc6f.js} +6 -6
  201. package/cjs/{index-c730dbc7.js.map → index-c5e7bc6f.js.map} +1 -1
  202. package/cjs/{index-d85e4159.js → index-d4396be3.js} +1 -1
  203. package/cjs/{index-d85e4159.js.map → index-d4396be3.js.map} +1 -1
  204. package/cjs/{index-3bc84b64.js → index-f457d792.js} +3 -3
  205. package/cjs/{index-3bc84b64.js.map → index-f457d792.js.map} +1 -1
  206. package/cjs/{index-e844a017.js → index-fdfc8df4.js} +1 -1
  207. package/cjs/{index-e844a017.js.map → index-fdfc8df4.js.map} +1 -1
  208. package/cjs/index.js +35 -35
  209. package/cjs/openChannel-1f1f5648.js +5251 -0
  210. package/cjs/openChannel-1f1f5648.js.map +1 -0
  211. package/cjs/{openChannelUtils-f64587d0.js → openChannelUtils-3b8eec58.js} +1 -1
  212. package/cjs/{openChannelUtils-f64587d0.js.map → openChannelUtils-3b8eec58.js.map} +1 -1
  213. package/cjs/sendbirdSelectors.js +2 -2
  214. package/cjs/{stringSet-46fdf7f6.js → stringSet-f932274f.js} +1 -1
  215. package/cjs/{stringSet-46fdf7f6.js.map → stringSet-f932274f.js.map} +1 -1
  216. package/cjs/{topics-8365570f.js → topics-e0269931.js} +1 -1
  217. package/cjs/{topics-8365570f.js.map → topics-e0269931.js.map} +1 -1
  218. package/cjs/{tslib.es6-e6723880.js → tslib.es6-592b36e8.js} +1 -1
  219. package/cjs/{tslib.es6-e6723880.js.map → tslib.es6-592b36e8.js.map} +1 -1
  220. package/cjs/ui/Accordion.js +4 -4
  221. package/cjs/ui/AccordionGroup.js +2 -2
  222. package/cjs/ui/AdminMessage.js +3 -3
  223. package/cjs/ui/Avatar.js +3 -3
  224. package/cjs/ui/Badge.js +5 -5
  225. package/cjs/ui/Button.js +4 -4
  226. package/cjs/ui/ChannelAvatar.js +4 -4
  227. package/cjs/ui/ChannelPreview.js +12 -12
  228. package/cjs/ui/ChatHeader.js +8 -8
  229. package/cjs/ui/Checkbox.js +1 -1
  230. package/cjs/ui/ConnectionStatus.js +5 -5
  231. package/cjs/ui/ContextMenu.js +5 -5
  232. package/cjs/ui/DateSeparator.js +4 -4
  233. package/cjs/ui/Dropdown.js +3 -3
  234. package/cjs/ui/EmojiReactions.js +7 -7
  235. package/cjs/ui/FileMessageItemBody.js +6 -6
  236. package/cjs/ui/FileViewer.js +7 -7
  237. package/cjs/ui/Icon.js +1 -1
  238. package/cjs/ui/IconButton.js +1 -1
  239. package/cjs/ui/ImageRenderer.js +1 -1
  240. package/cjs/ui/Input.js +3 -3
  241. package/cjs/ui/Label.js +3 -3
  242. package/cjs/ui/LinkLabel.js +3 -3
  243. package/cjs/ui/Loader.js +1 -1
  244. package/cjs/ui/MentionLabel.js +14 -13
  245. package/cjs/ui/MentionLabel.js.map +1 -1
  246. package/cjs/ui/MessageContent.js +14 -14
  247. package/cjs/ui/MessageInput.js +10 -10
  248. package/cjs/ui/MessageItemMenu.js +7 -7
  249. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  250. package/cjs/ui/MessageSearchFileItem.js +10 -10
  251. package/cjs/ui/MessageSearchItem.js +10 -10
  252. package/cjs/ui/MessageStatus.js +8 -8
  253. package/cjs/ui/Modal.js +8 -8
  254. package/cjs/ui/MutedAvatarOverlay.js +1 -1
  255. package/cjs/ui/OGMessageItemBody.js +11 -11
  256. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  257. package/cjs/ui/OpenChannelAvatar.js +7 -7
  258. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  259. package/cjs/ui/OpenchannelFileMessage.js +15 -15
  260. package/cjs/ui/OpenchannelOGMessage.js +15 -15
  261. package/cjs/ui/OpenchannelThumbnailMessage.js +14 -14
  262. package/cjs/ui/OpenchannelUserMessage.js +15 -15
  263. package/cjs/ui/PlaceHolder.js +6 -6
  264. package/cjs/ui/QuoteMessage.js +7 -7
  265. package/cjs/ui/QuoteMessageInput.js +7 -7
  266. package/cjs/ui/ReactionBadge.js +3 -3
  267. package/cjs/ui/ReactionButton.js +1 -1
  268. package/cjs/ui/SortByRow.js +1 -1
  269. package/cjs/ui/TextButton.js +2 -2
  270. package/cjs/ui/TextMessageItemBody.js +11 -11
  271. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  272. package/cjs/ui/Tooltip.js +3 -3
  273. package/cjs/ui/TooltipWrapper.js +1 -1
  274. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  275. package/cjs/ui/UserListItem.js +12 -12
  276. package/cjs/ui/UserProfile.js +10 -10
  277. package/cjs/ui/Word.js +45 -11
  278. package/cjs/ui/Word.js.map +1 -1
  279. package/cjs/useSendbirdStateContext.js +1 -1
  280. package/cjs/{utils-a807e55b.js → utils-01d5bf79.js} +1 -1
  281. package/cjs/{utils-a807e55b.js.map → utils-01d5bf79.js.map} +1 -1
  282. package/cjs/{utils-d961e3ec.js → utils-352cb0a5.js} +1 -1
  283. package/cjs/{utils-d961e3ec.js.map → utils-352cb0a5.js.map} +1 -1
  284. package/cjs/{utils-896260ad.js → utils-762f2f61.js} +1 -1
  285. package/cjs/{utils-896260ad.js.map → utils-762f2f61.js.map} +1 -1
  286. package/cjs/{uuid-f50c28bd.js → uuid-5ffba0f8.js} +1 -1
  287. package/cjs/{uuid-f50c28bd.js.map → uuid-5ffba0f8.js.map} +1 -1
  288. package/cjs/withSendbird.js +1 -1
  289. package/{color-61b0f496.js → color-24138028.js} +1 -1
  290. package/{color-61b0f496.js.map → color-24138028.js.map} +1 -1
  291. package/{compareIds-e48fb1d0.js → compareIds-286831ea.js} +1 -1
  292. package/{compareIds-e48fb1d0.js.map → compareIds-286831ea.js.map} +1 -1
  293. package/{const-6fe536c0.js → const-725e6443.js} +1 -1
  294. package/{const-6fe536c0.js.map → const-725e6443.js.map} +1 -1
  295. package/{const-d3857731.js → const-9ccaba50.js} +1 -1
  296. package/{const-d3857731.js.map → const-9ccaba50.js.map} +1 -1
  297. package/{context-178f9029.js → context-482c87f7.js} +2 -2
  298. package/{context-178f9029.js.map → context-482c87f7.js.map} +1 -1
  299. package/dist/index.css +93 -93
  300. package/dist/index.css.map +1 -1
  301. package/{groupChannel-009a07f0.js → groupChannel-4ad208bd.js} +2 -2
  302. package/{groupChannel-009a07f0.js.map → groupChannel-4ad208bd.js.map} +1 -1
  303. package/{index-87af3e7d.js → index-072521c3.js} +1 -1
  304. package/{index-87af3e7d.js.map → index-072521c3.js.map} +1 -1
  305. package/{index-4eddd935.js → index-25339141.js} +4 -4
  306. package/{index-4eddd935.js.map → index-25339141.js.map} +1 -1
  307. package/{index-75f9b6fc.js → index-35ab7b97.js} +1 -1
  308. package/{index-75f9b6fc.js.map → index-35ab7b97.js.map} +1 -1
  309. package/{index-cff868a8.js → index-78302d10.js} +2 -2
  310. package/{index-cff868a8.js.map → index-78302d10.js.map} +1 -1
  311. package/{index-d6e33a8d.js → index-8a388ae7.js} +3 -3
  312. package/{index-d6e33a8d.js.map → index-8a388ae7.js.map} +1 -1
  313. package/{index-a5b58199.js → index-8d874712.js} +3 -3
  314. package/{index-a5b58199.js.map → index-8d874712.js.map} +1 -1
  315. package/{index-7b2f13ef.js → index-e53b04fa.js} +2 -2
  316. package/{index-7b2f13ef.js.map → index-e53b04fa.js.map} +1 -1
  317. package/{index-1b5914a8.js → index-e63d152e.js} +6 -6
  318. package/{index-1b5914a8.js.map → index-e63d152e.js.map} +1 -1
  319. package/{index-39d43f7e.js → index-e9e40be7.js} +4 -4
  320. package/{index-39d43f7e.js.map → index-e9e40be7.js.map} +1 -1
  321. package/{index-aa13fe48.js → index-f6b6701e.js} +2 -2
  322. package/{index-aa13fe48.js.map → index-f6b6701e.js.map} +1 -1
  323. package/index.d.ts +11 -5
  324. package/index.js +35 -35
  325. package/openChannel-6f350123.js +5246 -0
  326. package/openChannel-6f350123.js.map +1 -0
  327. package/{openChannelUtils-41763348.js → openChannelUtils-d9065b0b.js} +1 -1
  328. package/{openChannelUtils-41763348.js.map → openChannelUtils-d9065b0b.js.map} +1 -1
  329. package/package-lock.json +1 -1
  330. package/package.json +2 -1
  331. package/sendbirdSelectors.js +2 -2
  332. package/{stringSet-130b5cd9.js → stringSet-f697bfff.js} +1 -1
  333. package/{stringSet-130b5cd9.js.map → stringSet-f697bfff.js.map} +1 -1
  334. package/{topics-2773df5c.js → topics-b6afa630.js} +1 -1
  335. package/{topics-2773df5c.js.map → topics-b6afa630.js.map} +1 -1
  336. package/{tslib.es6-41c9b7f1.js → tslib.es6-42c9ba76.js} +1 -1
  337. package/{tslib.es6-41c9b7f1.js.map → tslib.es6-42c9ba76.js.map} +1 -1
  338. package/ui/Accordion.js +4 -4
  339. package/ui/AccordionGroup.js +2 -2
  340. package/ui/AdminMessage.js +3 -3
  341. package/ui/Avatar.js +3 -3
  342. package/ui/Badge.js +5 -5
  343. package/ui/Button.js +4 -4
  344. package/ui/ChannelAvatar.js +4 -4
  345. package/ui/ChannelPreview.js +12 -12
  346. package/ui/ChatHeader.js +8 -8
  347. package/ui/Checkbox.js +1 -1
  348. package/ui/ConnectionStatus.js +5 -5
  349. package/ui/ContextMenu.js +5 -5
  350. package/ui/DateSeparator.js +4 -4
  351. package/ui/Dropdown.js +3 -3
  352. package/ui/EmojiReactions.js +7 -7
  353. package/ui/FileMessageItemBody.js +6 -6
  354. package/ui/FileViewer.js +7 -7
  355. package/ui/Icon.js +1 -1
  356. package/ui/IconButton.js +1 -1
  357. package/ui/ImageRenderer.js +1 -1
  358. package/ui/Input.js +3 -3
  359. package/ui/Label.js +3 -3
  360. package/ui/LinkLabel.js +3 -3
  361. package/ui/Loader.js +1 -1
  362. package/ui/MentionLabel.js +14 -13
  363. package/ui/MentionLabel.js.map +1 -1
  364. package/ui/MessageContent.js +14 -14
  365. package/ui/MessageInput.js +10 -10
  366. package/ui/MessageItemMenu.js +7 -7
  367. package/ui/MessageItemReactionMenu.js +5 -5
  368. package/ui/MessageSearchFileItem.js +10 -10
  369. package/ui/MessageSearchItem.js +10 -10
  370. package/ui/MessageStatus.js +8 -8
  371. package/ui/Modal.js +8 -8
  372. package/ui/MutedAvatarOverlay.js +1 -1
  373. package/ui/OGMessageItemBody.js +11 -11
  374. package/ui/OpenChannelAdminMessage.js +4 -4
  375. package/ui/OpenChannelAvatar.js +7 -7
  376. package/ui/OpenchannelConversationHeader.js +7 -7
  377. package/ui/OpenchannelFileMessage.js +15 -15
  378. package/ui/OpenchannelOGMessage.js +15 -15
  379. package/ui/OpenchannelThumbnailMessage.js +14 -14
  380. package/ui/OpenchannelUserMessage.js +15 -15
  381. package/ui/PlaceHolder.js +6 -6
  382. package/ui/QuoteMessage.js +7 -7
  383. package/ui/QuoteMessageInput.js +7 -7
  384. package/ui/ReactionBadge.js +3 -3
  385. package/ui/ReactionButton.js +1 -1
  386. package/ui/SortByRow.js +1 -1
  387. package/ui/TextButton.js +2 -2
  388. package/ui/TextMessageItemBody.js +11 -11
  389. package/ui/ThumbnailMessageItemBody.js +3 -3
  390. package/ui/Tooltip.js +3 -3
  391. package/ui/TooltipWrapper.js +1 -1
  392. package/ui/UnknownMessageItemBody.js +7 -7
  393. package/ui/UserListItem.js +12 -12
  394. package/ui/UserProfile.js +10 -10
  395. package/ui/Word.js +45 -11
  396. package/ui/Word.js.map +1 -1
  397. package/useSendbirdStateContext.js +1 -1
  398. package/{utils-c2b6ba56.js → utils-02eaadb8.js} +1 -1
  399. package/{utils-c2b6ba56.js.map → utils-02eaadb8.js.map} +1 -1
  400. package/{utils-24f3af49.js → utils-78b45bd0.js} +1 -1
  401. package/{utils-24f3af49.js.map → utils-78b45bd0.js.map} +1 -1
  402. package/{utils-ce5e300e.js → utils-fb8d9bf1.js} +1 -1
  403. package/{utils-ce5e300e.js.map → utils-fb8d9bf1.js.map} +1 -1
  404. package/{uuid-cd809c2c.js → uuid-d61c5d2d.js} +1 -1
  405. package/{uuid-cd809c2c.js.map → uuid-d61c5d2d.js.map} +1 -1
  406. package/withSendbird.js +1 -1
  407. package/ChannelListProvider-bc1f14ac.js.map +0 -1
  408. package/ChannelProvider-3d7434a2.js.map +0 -1
  409. package/CreateChannelProvider-8464145a.js.map +0 -1
  410. package/MemberList-0f94f1c7.js.map +0 -1
  411. package/__bundle-7dfccc8c-36a58bd4.js +0 -24
  412. package/__bundle-7dfccc8c-36a58bd4.js.map +0 -1
  413. package/cjs/ChannelListProvider-8157ae01.js.map +0 -1
  414. package/cjs/ChannelProvider-793fddf5.js.map +0 -1
  415. package/cjs/CreateChannelProvider-b462ce84.js.map +0 -1
  416. package/cjs/MemberList-c446abed.js.map +0 -1
  417. package/cjs/__bundle-7dfccc8c-437d2fd3.js +0 -151
  418. package/cjs/__bundle-7dfccc8c-437d2fd3.js.map +0 -1
  419. package/cjs/openChannel-1fe2127a.js +0 -13
  420. package/cjs/openChannel-1fe2127a.js.map +0 -1
  421. package/openChannel-0d900561.js +0 -8
  422. package/openChannel-0d900561.js.map +0 -1
@@ -1,66 +1,66 @@
1
- import React__default, { useState } from 'react';
1
+ import React__default, { useState, useEffect } 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-bc1f14ac.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-551b956e.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-39d43f7e.js';
10
- import '../../LocalizationContext-4b1ec8b9.js';
11
- import '../../stringSet-130b5cd9.js';
12
- import '../../index-75f9b6fc.js';
13
- import '../../index-a5b58199.js';
14
- import '../../_rollupPluginBabelHelpers-abbcef5e.js';
9
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-e9e40be7.js';
10
+ import '../../LocalizationContext-cf80416c.js';
11
+ import '../../stringSet-f697bfff.js';
12
+ import '../../index-35ab7b97.js';
13
+ import '../../index-8d874712.js';
14
+ import '../../_rollupPluginBabelHelpers-fdcfbfcc.js';
15
15
  import 'prop-types';
16
16
  import '../../ui/IconButton.js';
17
17
  import '../../ui/Avatar.js';
18
- import '../../tslib.es6-41c9b7f1.js';
18
+ import '../../tslib.es6-42c9ba76.js';
19
19
  import '../../ui/ImageRenderer.js';
20
20
  import '../../ui/Icon.js';
21
- import '../../uuid-cd809c2c.js';
21
+ import '../../uuid-d61c5d2d.js';
22
22
  import '../../CreateChannel.js';
23
23
  import '../../CreateChannel/components/CreateChannelUI.js';
24
- import '../../CreateChannelProvider-8464145a.js';
24
+ import '../../CreateChannelProvider-15dfa1af.js';
25
25
  import '../../sendbirdSelectors.js';
26
- import '../../topics-2773df5c.js';
27
- import '../../utils-ce5e300e.js';
26
+ import '../../topics-b6afa630.js';
27
+ import '../../utils-fb8d9bf1.js';
28
28
  import '../../CreateChannel/components/InviteUsers.js';
29
29
  import '../../ui/Modal.js';
30
30
  import 'react-dom';
31
- import '../../index-87af3e7d.js';
32
- import '../../index-d6e33a8d.js';
31
+ import '../../index-072521c3.js';
32
+ import '../../index-8a388ae7.js';
33
33
  import '../../ui/UserListItem.js';
34
- import '../../UserProfileContext-d0287bb6.js';
34
+ import '../../UserProfileContext-977db3ff.js';
35
35
  import '../../ui/MutedAvatarOverlay.js';
36
36
  import '../../ui/Checkbox.js';
37
37
  import '../../ui/UserProfile.js';
38
38
  import '../../withSendbird.js';
39
39
  import '../../ui/ContextMenu.js';
40
- import '../../index-aa13fe48.js';
40
+ import '../../index-f6b6701e.js';
41
41
  import '../../ui/SortByRow.js';
42
42
  import '../../CreateChannel/components/SelectChannelType.js';
43
43
  import '../../ui/ChannelAvatar.js';
44
- import '../../utils-24f3af49.js';
44
+ import '../../utils-78b45bd0.js';
45
45
  import '../../ui/Badge.js';
46
- import '../../index-4eddd935.js';
47
- import '../../index-7b2f13ef.js';
48
- import '../../index-cff868a8.js';
46
+ import '../../index-25339141.js';
47
+ import '../../index-e53b04fa.js';
48
+ import '../../index-78302d10.js';
49
49
  import '../../ui/MentionUserLabel.js';
50
50
  import '../../Channel/components/TypingIndicator.js';
51
- import '../../groupChannel-009a07f0.js';
52
- import '../../__bundle-7dfccc8c-36a58bd4.js';
53
- import '../../ChannelProvider-3d7434a2.js';
54
- import '../../compareIds-e48fb1d0.js';
55
- import '../../const-d3857731.js';
51
+ import '../../groupChannel-4ad208bd.js';
52
+ import '../../__bundle-7dfccc8c-db2ded0f.js';
53
+ import '../../ChannelProvider-f2229414.js';
54
+ import '../../compareIds-286831ea.js';
55
+ import '../../const-9ccaba50.js';
56
56
  import '../../ui/ReactionButton.js';
57
57
  import '../../ui/MessageStatus.js';
58
58
  import '../../ui/Loader.js';
59
- import '../../index-1b5914a8.js';
59
+ import '../../index-e63d152e.js';
60
60
  import '../../ui/Input.js';
61
61
  import '../../ui/TextButton.js';
62
- import '../../color-61b0f496.js';
63
- import '../../actionTypes-d0ccd7e4.js';
62
+ import '../../color-24138028.js';
63
+ import '../../actionTypes-6075fcef.js';
64
64
 
65
65
  var DELIVERY_RECIPT = 'delivery_receipt';
66
66
 
@@ -95,6 +95,30 @@ var ChannelListUI = function ChannelListUI(props) {
95
95
  var sdk = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.sdk;
96
96
  var sdkError = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.error;
97
97
  var sdkIntialized = (sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.initialized) || false;
98
+
99
+ var _e = useState([]),
100
+ channelsTomarkAsRead = _e[0],
101
+ setChannelsToMarkAsRead = _e[1];
102
+
103
+ useEffect(function () {
104
+ // https://stackoverflow.com/a/60907638
105
+ var isMounted = true;
106
+
107
+ if ((channelsTomarkAsRead === null || channelsTomarkAsRead === void 0 ? void 0 : channelsTomarkAsRead.length) > 0) {
108
+ channelsTomarkAsRead === null || channelsTomarkAsRead === void 0 ? void 0 : channelsTomarkAsRead.forEach(function (c, idx) {
109
+ // Plan-based rate limits - minimum limit is 5 requests per second
110
+ setTimeout(function () {
111
+ if (isMounted) {
112
+ c === null || c === void 0 ? void 0 : c.markAsDelivered();
113
+ }
114
+ }, 2000 * idx);
115
+ });
116
+ }
117
+
118
+ return function () {
119
+ isMounted = false;
120
+ };
121
+ }, [channelsTomarkAsRead]);
98
122
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
99
123
  className: "sendbird-channel-list__header"
100
124
  }, /*#__PURE__*/React__default.createElement(ChannelListHeader, {
@@ -143,12 +167,7 @@ var ChannelListUI = function ChannelListUI(props) {
143
167
  if (canSetMarkAsDelivered) {
144
168
  logger.info('ChannelList: Marking all channels as read'); // eslint-disable-next-line no-unused-expressions
145
169
 
146
- channelList === null || channelList === void 0 ? void 0 : channelList.forEach(function (c, idx) {
147
- // Plan-based rate limits - minimum limit is 5 requests per second
148
- setTimeout(function () {
149
- c === null || c === void 0 ? void 0 : c.markAsDelivered();
150
- }, 300 * idx);
151
- });
170
+ setChannelsToMarkAsRead(channelList);
152
171
  }
153
172
  }).catch(function (err) {
154
173
  logger.info('ChannelList: Fetching channels failed', err);
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelListUI.js","sources":["../../../src/smart-components/ChannelList/components/ChannelListUI/index.tsx"],"sourcesContent":["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';\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.ReactNode;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;\n renderHeader?: (props: void) => React.ReactNode;\n renderPlaceHolderError?: (props: void) => React.ReactNode;\n renderPlaceHolderLoading?: (props: void) => React.ReactNode;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;\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 } = useChannelListContext();\n\n const state = useSendbirdStateContext();\n\n const sdkStore = state?.stores?.sdkStore;\n const config = state?.config;\n\n const isOnline = state?.config?.isOnline;\n const logger = config?.logger;\n\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n const sdkError = sdkStore?.error;\n const sdkIntialized = sdkStore?.initialized || false;\n\n return (\n <>\n <div className=\"sendbird-channel-list__header\">\n <ChannelListHeader\n renderHeader={renderHeader}\n onEdit={() => {\n if (allowProfileEdit) {\n setShowProfileEdit(true);\n }\n }}\n allowProfileEdit={allowProfileEdit}\n renderIconButton={() => (\n <AddChannel />\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 = target.clientHeight + target.scrollTop === target.scrollHeight;\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((c, idx) => {\n // Plan-based rate limits - minimum limit is 5 requests per second\n setTimeout(() => {\n c?.markAsDelivered();\n }, 300 * idx);\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) && (\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 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 isActive={channel?.url === currentChannel?.url}\n isTyping={typingChannels?.some(({ url }) => url === channel?.url)}\n renderChannelAction={(() => (\n <ChannelPreviewAction\n disabled={!isOnline}\n onLeaveChannel={() => onLeaveChannel(channel, null)}\n />\n ))}\n />\n )\n );\n })\n }\n </div>\n {\n (!sdkIntialized || loading) && (\n (renderPlaceHolderLoading && typeof renderPlaceHolderLoading === 'function') ? (\n renderPlaceHolderLoading?.()\n ): (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n )\n }\n {\n (!allChannels || 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":["DELIVERY_RECIPT","ChannelListUI","props","renderHeader","renderChannelPreview","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderEmptyList","_c","useState","showProfileEdit","setShowProfileEdit","_d","useChannelListContext","onThemeChange","allowProfileEdit","allChannels","loading","currentChannel","channelListDispatcher","channelSource","typingChannels","state","useSendbirdStateContext","sdkStore","stores","config","isOnline","logger","sdk","sdkError","error","sdkIntialized","initialized","React","EditUserProfile","e","target","fetchMore","clientHeight","scrollTop","scrollHeight","hasNext","info","type","channelListActions","payload","next","then","channelList","canSetMarkAsDelivered","appInfo","premiumFeatureList","find","feature","forEach","c","idx","setTimeout","markAsDelivered","catch","err","PlaceHolderTypes","WRONG","map","channel","onLeaveChannel","cb","leave","res","url","onClick","some","_a","LOADING","length","NO_CHANNELS"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelListUI.js","sources":["../../../src/smart-components/ChannelList/components/ChannelListUI/index.tsx"],"sourcesContent":["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';\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.ReactNode;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;\n renderHeader?: (props: void) => React.ReactNode;\n renderPlaceHolderError?: (props: void) => React.ReactNode;\n renderPlaceHolderLoading?: (props: void) => React.ReactNode;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;\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 } = useChannelListContext();\n\n const state = useSendbirdStateContext();\n\n const sdkStore = state?.stores?.sdkStore;\n const config = state?.config;\n\n const isOnline = state?.config?.isOnline;\n const logger = config?.logger;\n\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n const sdkError = sdkStore?.error;\n const sdkIntialized = sdkStore?.initialized || false;\n\n const [channelsTomarkAsRead, setChannelsToMarkAsRead] = useState([]);\n useEffect(() => {\n // https://stackoverflow.com/a/60907638\n let isMounted = true;\n if (channelsTomarkAsRead?.length > 0) {\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 <ChannelListHeader\n renderHeader={renderHeader}\n onEdit={() => {\n if (allowProfileEdit) {\n setShowProfileEdit(true);\n }\n }}\n allowProfileEdit={allowProfileEdit}\n renderIconButton={() => (\n <AddChannel />\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 = target.clientHeight + target.scrollTop === target.scrollHeight;\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) && (\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 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 isActive={channel?.url === currentChannel?.url}\n isTyping={typingChannels?.some(({ url }) => url === channel?.url)}\n renderChannelAction={(() => (\n <ChannelPreviewAction\n disabled={!isOnline}\n onLeaveChannel={() => onLeaveChannel(channel, null)}\n />\n ))}\n />\n )\n );\n })\n }\n </div>\n {\n (!sdkIntialized || loading) && (\n (renderPlaceHolderLoading && typeof renderPlaceHolderLoading === 'function') ? (\n renderPlaceHolderLoading?.()\n ): (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n )\n }\n {\n (!allChannels || 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":["DELIVERY_RECIPT","ChannelListUI","props","renderHeader","renderChannelPreview","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderEmptyList","_c","useState","showProfileEdit","setShowProfileEdit","_d","useChannelListContext","onThemeChange","allowProfileEdit","allChannels","loading","currentChannel","channelListDispatcher","channelSource","typingChannels","state","useSendbirdStateContext","sdkStore","stores","config","isOnline","logger","sdk","sdkError","error","sdkIntialized","initialized","_e","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","_a","LOADING","NO_CHANNELS"],"mappings":"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"}
@@ -2,35 +2,35 @@ import React__default from 'react';
2
2
  import ChannelAvatar from '../../ui/ChannelAvatar.js';
3
3
  import Badge from '../../ui/Badge.js';
4
4
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
5
- import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../../index-a5b58199.js';
6
- import { i as isToday, a as isYesterday, f as formatRelative } from '../../index-4eddd935.js';
7
- import { f as format } from '../../index-cff868a8.js';
8
- import { t as truncateString, e as isEditedMessage } from '../../index-aa13fe48.js';
5
+ import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../../index-8d874712.js';
6
+ import { i as isToday, a as isYesterday, f as formatRelative } from '../../index-25339141.js';
7
+ import { f as format } from '../../index-78302d10.js';
8
+ import { t as truncateString, e as isEditedMessage } from '../../index-f6b6701e.js';
9
9
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
10
- import { u as useLocalization } from '../../LocalizationContext-4b1ec8b9.js';
10
+ import { u as useLocalization } from '../../LocalizationContext-cf80416c.js';
11
11
  import MentionUserLabel from '../../ui/MentionUserLabel.js';
12
- import { u as useChannelListContext } from '../../ChannelListProvider-bc1f14ac.js';
12
+ import { u as useChannelListContext } from '../../ChannelListProvider-551b956e.js';
13
13
  import { TypingIndicatorText } from '../../Channel/components/TypingIndicator.js';
14
14
  import MessageStatus from '../../ui/MessageStatus.js';
15
15
  import '../../ui/Avatar.js';
16
- import '../../tslib.es6-41c9b7f1.js';
16
+ import '../../tslib.es6-42c9ba76.js';
17
17
  import '../../ui/ImageRenderer.js';
18
- import '../../_rollupPluginBabelHelpers-abbcef5e.js';
18
+ import '../../_rollupPluginBabelHelpers-fdcfbfcc.js';
19
19
  import 'prop-types';
20
- import '../../uuid-cd809c2c.js';
21
- import '../../utils-24f3af49.js';
22
- import '../../stringSet-130b5cd9.js';
23
- import '../../index-7b2f13ef.js';
24
- import '../../index-75f9b6fc.js';
20
+ import '../../uuid-d61c5d2d.js';
21
+ import '../../utils-78b45bd0.js';
22
+ import '../../stringSet-f697bfff.js';
23
+ import '../../index-e53b04fa.js';
24
+ import '../../index-35ab7b97.js';
25
25
  import '../../withSendbird.js';
26
- import '../../groupChannel-009a07f0.js';
27
- import '../../__bundle-7dfccc8c-36a58bd4.js';
28
- import '../../topics-2773df5c.js';
29
- import '../../utils-ce5e300e.js';
30
- import '../../UserProfileContext-d0287bb6.js';
31
- import '../../ChannelProvider-3d7434a2.js';
32
- import '../../compareIds-e48fb1d0.js';
33
- import '../../const-d3857731.js';
26
+ import '../../groupChannel-4ad208bd.js';
27
+ import '../../__bundle-7dfccc8c-db2ded0f.js';
28
+ import '../../topics-b6afa630.js';
29
+ import '../../utils-fb8d9bf1.js';
30
+ import '../../UserProfileContext-977db3ff.js';
31
+ import '../../ChannelProvider-f2229414.js';
32
+ import '../../compareIds-286831ea.js';
33
+ import '../../const-9ccaba50.js';
34
34
  import '../../ui/ContextMenu.js';
35
35
  import 'react-dom';
36
36
  import '../../ui/SortByRow.js';
@@ -1,29 +1,29 @@
1
- import { a as _slicedToArray } from '../../_rollupPluginBabelHelpers-abbcef5e.js';
1
+ import { a as _slicedToArray } from '../../_rollupPluginBabelHelpers-fdcfbfcc.js';
2
2
  import React__default, { useRef, useState, useContext } from 'react';
3
3
  import PropTypes from 'prop-types';
4
- import { a as LocalizationContext } from '../../LocalizationContext-4b1ec8b9.js';
4
+ import { a as LocalizationContext } from '../../LocalizationContext-cf80416c.js';
5
5
  import ContextMenu, { MenuItems, MenuItem } from '../../ui/ContextMenu.js';
6
6
  import IconButton from '../../ui/IconButton.js';
7
7
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
8
8
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
9
- import { n as noop } from '../../utils-ce5e300e.js';
9
+ import { n as noop } from '../../utils-fb8d9bf1.js';
10
10
  import Modal from '../../ui/Modal.js';
11
- import { u as useChannelListContext } from '../../ChannelListProvider-bc1f14ac.js';
12
- import '../../stringSet-130b5cd9.js';
13
- import '../../index-75f9b6fc.js';
14
- import '../../index-a5b58199.js';
15
- import '../../index-aa13fe48.js';
16
- import '../../tslib.es6-41c9b7f1.js';
11
+ import { u as useChannelListContext } from '../../ChannelListProvider-551b956e.js';
12
+ import '../../stringSet-f697bfff.js';
13
+ import '../../index-35ab7b97.js';
14
+ import '../../index-8d874712.js';
15
+ import '../../index-f6b6701e.js';
16
+ import '../../tslib.es6-42c9ba76.js';
17
17
  import 'react-dom';
18
18
  import '../../ui/SortByRow.js';
19
19
  import '../../withSendbird.js';
20
- import '../../index-87af3e7d.js';
21
- import '../../index-d6e33a8d.js';
22
- import '../../groupChannel-009a07f0.js';
23
- import '../../__bundle-7dfccc8c-36a58bd4.js';
24
- import '../../topics-2773df5c.js';
25
- import '../../uuid-cd809c2c.js';
26
- import '../../UserProfileContext-d0287bb6.js';
20
+ import '../../index-072521c3.js';
21
+ import '../../index-8a388ae7.js';
22
+ import '../../groupChannel-4ad208bd.js';
23
+ import '../../__bundle-7dfccc8c-db2ded0f.js';
24
+ import '../../topics-b6afa630.js';
25
+ import '../../uuid-d61c5d2d.js';
26
+ import '../../UserProfileContext-977db3ff.js';
27
27
 
28
28
  var LeaveChannel = function LeaveChannel(props) {
29
29
  var _a, _b, _c;
@@ -1,15 +1,15 @@
1
- import '../tslib.es6-41c9b7f1.js';
1
+ import '../tslib.es6-42c9ba76.js';
2
2
  import 'react';
3
- import '../groupChannel-009a07f0.js';
4
- export { C as ChannelListProvider, u as useChannelListContext } from '../ChannelListProvider-bc1f14ac.js';
5
- import '../uuid-cd809c2c.js';
6
- import '../utils-ce5e300e.js';
7
- import '../UserProfileContext-d0287bb6.js';
3
+ import '../groupChannel-4ad208bd.js';
4
+ export { C as ChannelListProvider, u as useChannelListContext } from '../ChannelListProvider-551b956e.js';
5
+ import '../uuid-d61c5d2d.js';
6
+ import '../utils-fb8d9bf1.js';
7
+ import '../UserProfileContext-977db3ff.js';
8
8
  import '../useSendbirdStateContext.js';
9
- import '../__bundle-7dfccc8c-36a58bd4.js';
10
- import '../topics-2773df5c.js';
11
- import '../_rollupPluginBabelHelpers-abbcef5e.js';
12
- import '../index-aa13fe48.js';
9
+ import '../__bundle-7dfccc8c-db2ded0f.js';
10
+ import '../topics-b6afa630.js';
11
+ import '../_rollupPluginBabelHelpers-fdcfbfcc.js';
12
+ import '../index-f6b6701e.js';
13
13
  import 'prop-types';
14
14
  import '../withSendbird.js';
15
15
  //# sourceMappingURL=context.js.map
package/ChannelList.js CHANGED
@@ -1,23 +1,23 @@
1
1
  import React__default from 'react';
2
- import { C as ChannelListProvider } from './ChannelListProvider-bc1f14ac.js';
2
+ import { C as ChannelListProvider } from './ChannelListProvider-551b956e.js';
3
3
  import ChannelListUI from './ChannelList/components/ChannelListUI.js';
4
- import './tslib.es6-41c9b7f1.js';
5
- import './groupChannel-009a07f0.js';
6
- import './__bundle-7dfccc8c-36a58bd4.js';
7
- import './topics-2773df5c.js';
8
- import './uuid-cd809c2c.js';
9
- import './utils-ce5e300e.js';
10
- import './UserProfileContext-d0287bb6.js';
4
+ import './tslib.es6-42c9ba76.js';
5
+ import './groupChannel-4ad208bd.js';
6
+ import './__bundle-7dfccc8c-db2ded0f.js';
7
+ import './topics-b6afa630.js';
8
+ import './uuid-d61c5d2d.js';
9
+ import './utils-fb8d9bf1.js';
10
+ import './UserProfileContext-977db3ff.js';
11
11
  import 'prop-types';
12
12
  import './useSendbirdStateContext.js';
13
13
  import './withSendbird.js';
14
- import './_rollupPluginBabelHelpers-abbcef5e.js';
15
- import './index-aa13fe48.js';
14
+ import './_rollupPluginBabelHelpers-fdcfbfcc.js';
15
+ import './index-f6b6701e.js';
16
16
  import './ChannelList/components/ChannelListHeader.js';
17
- import './LocalizationContext-4b1ec8b9.js';
18
- import './stringSet-130b5cd9.js';
19
- import './index-75f9b6fc.js';
20
- import './index-a5b58199.js';
17
+ import './LocalizationContext-cf80416c.js';
18
+ import './stringSet-f697bfff.js';
19
+ import './index-35ab7b97.js';
20
+ import './index-8d874712.js';
21
21
  import './ui/IconButton.js';
22
22
  import './ui/Avatar.js';
23
23
  import './ui/ImageRenderer.js';
@@ -25,13 +25,13 @@ import './ui/Icon.js';
25
25
  import './ChannelList/components/AddChannel.js';
26
26
  import './CreateChannel.js';
27
27
  import './CreateChannel/components/CreateChannelUI.js';
28
- import './CreateChannelProvider-8464145a.js';
28
+ import './CreateChannelProvider-15dfa1af.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-87af3e7d.js';
34
- import './index-d6e33a8d.js';
33
+ import './index-072521c3.js';
34
+ import './index-8a388ae7.js';
35
35
  import './ui/UserListItem.js';
36
36
  import './ui/MutedAvatarOverlay.js';
37
37
  import './ui/Checkbox.js';
@@ -41,27 +41,27 @@ import './ui/SortByRow.js';
41
41
  import './CreateChannel/components/SelectChannelType.js';
42
42
  import './ChannelList/components/ChannelPreview.js';
43
43
  import './ui/ChannelAvatar.js';
44
- import './utils-24f3af49.js';
44
+ import './utils-78b45bd0.js';
45
45
  import './ui/Badge.js';
46
- import './index-4eddd935.js';
47
- import './index-7b2f13ef.js';
48
- import './index-cff868a8.js';
46
+ import './index-25339141.js';
47
+ import './index-e53b04fa.js';
48
+ import './index-78302d10.js';
49
49
  import './ui/MentionUserLabel.js';
50
50
  import './Channel/components/TypingIndicator.js';
51
- import './ChannelProvider-3d7434a2.js';
52
- import './compareIds-e48fb1d0.js';
53
- import './const-d3857731.js';
51
+ import './ChannelProvider-f2229414.js';
52
+ import './compareIds-286831ea.js';
53
+ import './const-9ccaba50.js';
54
54
  import './ui/ReactionButton.js';
55
55
  import './ui/MessageStatus.js';
56
56
  import './ui/Loader.js';
57
57
  import './ChannelList/components/ChannelPreviewAction.js';
58
58
  import './EditUserProfile.js';
59
- import './index-1b5914a8.js';
59
+ import './index-e63d152e.js';
60
60
  import './ui/Input.js';
61
61
  import './ui/TextButton.js';
62
- import './color-61b0f496.js';
63
- import './actionTypes-d0ccd7e4.js';
64
- import './index-39d43f7e.js';
62
+ import './color-24138028.js';
63
+ import './actionTypes-6075fcef.js';
64
+ import './index-e9e40be7.js';
65
65
 
66
66
  var ChannelList = function ChannelList(props) {
67
67
  return /*#__PURE__*/React__default.createElement(ChannelListProvider, {
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelList.js","sources":["../src/smart-components/ChannelList/index.tsx"],"sourcesContent":["import React from 'react';\nimport {\n ChannelListProvider,\n ChannelListProviderInterface,\n} from './context/ChannelListProvider';\n\nimport ChannelListUI, { ChannelListUIProps } from './components/ChannelListUI';\n\ninterface ChannelListProps extends ChannelListProviderInterface, ChannelListUIProps {}\n\nconst ChannelList: React.FC<ChannelListProps> = (props: ChannelListProps) => {\n return (\n <ChannelListProvider\n className={props?.className}\n disableUserProfile={props?.disableUserProfile}\n allowProfileEdit={props?.allowProfileEdit}\n onBeforeCreateChannel={props?.onBeforeCreateChannel}\n onThemeChange={props?.onThemeChange}\n onProfileEditSuccess={props?.onProfileEditSuccess}\n onChannelSelect={props?.onChannelSelect}\n sortChannelList={props?.sortChannelList}\n queries={props?.queries}\n disableAutoSelect={props?.disableAutoSelect}\n isTypingIndicatorEnabled={props?.isTypingIndicatorEnabled}\n isMessageReceiptStatusEnabled={props?.isMessageReceiptStatusEnabled}\n >\n <ChannelListUI\n renderChannelPreview={props?.renderChannelPreview}\n renderUserProfile={props?.renderUserProfile}\n renderHeader={props?.renderHeader}\n renderPlaceHolderEmptyList={props?.renderPlaceHolderEmptyList}\n renderPlaceHolderError={props?.renderPlaceHolderError}\n renderPlaceHolderLoading={props?.renderPlaceHolderLoading}\n />\n </ChannelListProvider>\n );\n}\n\nexport default ChannelList;\n"],"names":["ChannelList","props","React","className","disableUserProfile","allowProfileEdit","onBeforeCreateChannel","onThemeChange","onProfileEditSuccess","onChannelSelect","sortChannelList","queries","disableAutoSelect","isTypingIndicatorEnabled","isMessageReceiptStatusEnabled","renderChannelPreview","renderUserProfile","renderHeader","renderPlaceHolderEmptyList","renderPlaceHolderError","renderPlaceHolderLoading"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAUMA,WAAW,GAA+B,SAA1CA,WAA0C,CAACC,KAAD;AAC9C,sBACEC,6BAAC,mBAAD;AACE,IAAA,SAAS,EAAED,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEE,SADpB;AAEE,IAAA,kBAAkB,EAAEF,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEG,kBAF7B;AAGE,IAAA,gBAAgB,EAAEH,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEI,gBAH3B;AAIE,IAAA,qBAAqB,EAAEJ,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEK,qBAJhC;AAKE,IAAA,aAAa,EAAEL,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEM,aALxB;AAME,IAAA,oBAAoB,EAAEN,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEO,oBAN/B;AAOE,IAAA,eAAe,EAAEP,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEQ,eAP1B;AAQE,IAAA,eAAe,EAAER,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAES,eAR1B;AASE,IAAA,OAAO,EAAET,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEU,OATlB;AAUE,IAAA,iBAAiB,EAAEV,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEW,iBAV5B;AAWE,IAAA,wBAAwB,EAAEX,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEY,wBAXnC;AAYE,IAAA,6BAA6B,EAAEZ,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEa;AAZxC,kBAcEZ,6BAAC,aAAD;AACE,IAAA,oBAAoB,EAAED,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEc,oBAD/B;AAEE,IAAA,iBAAiB,EAAEd,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEe,iBAF5B;AAGE,IAAA,YAAY,EAAEf,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEgB,YAHvB;AAIE,IAAA,0BAA0B,EAAEhB,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEiB,0BAJrC;AAKE,IAAA,sBAAsB,EAAEjB,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEkB,sBALjC;AAME,IAAA,wBAAwB,EAAElB,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEmB;AANnC,IAdF,CADF;AAyBD;;;;"}
1
+ {"version":3,"file":"ChannelList.js","sources":["../src/smart-components/ChannelList/index.tsx"],"sourcesContent":["import React from 'react';\nimport {\n ChannelListProvider,\n ChannelListProviderProps,\n} from './context/ChannelListProvider';\n\nimport ChannelListUI, { ChannelListUIProps } from './components/ChannelListUI';\n\ninterface ChannelListProps extends ChannelListProviderProps, ChannelListUIProps {}\n\nconst ChannelList: React.FC<ChannelListProps> = (props: ChannelListProps) => {\n return (\n <ChannelListProvider\n className={props?.className}\n disableUserProfile={props?.disableUserProfile}\n allowProfileEdit={props?.allowProfileEdit}\n onBeforeCreateChannel={props?.onBeforeCreateChannel}\n onThemeChange={props?.onThemeChange}\n onProfileEditSuccess={props?.onProfileEditSuccess}\n onChannelSelect={props?.onChannelSelect}\n sortChannelList={props?.sortChannelList}\n queries={props?.queries}\n disableAutoSelect={props?.disableAutoSelect}\n isTypingIndicatorEnabled={props?.isTypingIndicatorEnabled}\n isMessageReceiptStatusEnabled={props?.isMessageReceiptStatusEnabled}\n >\n <ChannelListUI\n renderChannelPreview={props?.renderChannelPreview}\n renderUserProfile={props?.renderUserProfile}\n renderHeader={props?.renderHeader}\n renderPlaceHolderEmptyList={props?.renderPlaceHolderEmptyList}\n renderPlaceHolderError={props?.renderPlaceHolderError}\n renderPlaceHolderLoading={props?.renderPlaceHolderLoading}\n />\n </ChannelListProvider>\n );\n}\n\nexport default ChannelList;\n"],"names":["ChannelList","props","React","className","disableUserProfile","allowProfileEdit","onBeforeCreateChannel","onThemeChange","onProfileEditSuccess","onChannelSelect","sortChannelList","queries","disableAutoSelect","isTypingIndicatorEnabled","isMessageReceiptStatusEnabled","renderChannelPreview","renderUserProfile","renderHeader","renderPlaceHolderEmptyList","renderPlaceHolderError","renderPlaceHolderLoading"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAUMA,WAAW,GAA+B,SAA1CA,WAA0C,CAACC,KAAD;AAC9C,sBACEC,6BAAC,mBAAD;AACE,IAAA,SAAS,EAAED,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEE,SADpB;AAEE,IAAA,kBAAkB,EAAEF,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEG,kBAF7B;AAGE,IAAA,gBAAgB,EAAEH,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEI,gBAH3B;AAIE,IAAA,qBAAqB,EAAEJ,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEK,qBAJhC;AAKE,IAAA,aAAa,EAAEL,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEM,aALxB;AAME,IAAA,oBAAoB,EAAEN,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEO,oBAN/B;AAOE,IAAA,eAAe,EAAEP,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEQ,eAP1B;AAQE,IAAA,eAAe,EAAER,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAES,eAR1B;AASE,IAAA,OAAO,EAAET,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEU,OATlB;AAUE,IAAA,iBAAiB,EAAEV,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEW,iBAV5B;AAWE,IAAA,wBAAwB,EAAEX,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEY,wBAXnC;AAYE,IAAA,6BAA6B,EAAEZ,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEa;AAZxC,kBAcEZ,6BAAC,aAAD;AACE,IAAA,oBAAoB,EAAED,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEc,oBAD/B;AAEE,IAAA,iBAAiB,EAAEd,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEe,iBAF5B;AAGE,IAAA,YAAY,EAAEf,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEgB,YAHvB;AAIE,IAAA,0BAA0B,EAAEhB,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEiB,0BAJrC;AAKE,IAAA,sBAAsB,EAAEjB,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEkB,sBALjC;AAME,IAAA,wBAAwB,EAAElB,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEmB;AANnC,IAdF,CADF;AAyBD;;;;"}
@@ -1,13 +1,13 @@
1
- import { a as __spreadArray, _ as __assign } from './tslib.es6-41c9b7f1.js';
1
+ import { a as __spreadArray, _ as __assign } from './tslib.es6-42c9ba76.js';
2
2
  import React__default, { useReducer, useState, useEffect, useMemo, useContext } from 'react';
3
- import { Y as Yr } from './groupChannel-009a07f0.js';
4
- import { C as CREATE_CHANNEL$1, U as UPDATE_USER_MESSAGE, L as LEAVE_CHANNEL, S as SEND_MESSAGE_START } from './topics-2773df5c.js';
5
- import { u as uuidv4 } from './uuid-cd809c2c.js';
6
- import { n as noop } from './utils-ce5e300e.js';
7
- import { U as UserProfileProvider } from './UserProfileContext-d0287bb6.js';
3
+ import { Y as Yr } from './groupChannel-4ad208bd.js';
4
+ import { C as CREATE_CHANNEL$1, U as UPDATE_USER_MESSAGE, L as LEAVE_CHANNEL, S as SEND_MESSAGE_START } from './topics-b6afa630.js';
5
+ import { u as uuidv4 } from './uuid-d61c5d2d.js';
6
+ import { n as noop } from './utils-fb8d9bf1.js';
7
+ import { U as UserProfileProvider } from './UserProfileContext-977db3ff.js';
8
8
  import useSendbirdStateContext from './useSendbirdStateContext.js';
9
- import { _ as _objectSpread2, b as _toConsumableArray } from './_rollupPluginBabelHelpers-abbcef5e.js';
10
- import { f as filterChannelListParams, g as getChannelsWithUpsertedChannel } from './index-aa13fe48.js';
9
+ import { _ as _objectSpread2, b as _toConsumableArray } from './_rollupPluginBabelHelpers-fdcfbfcc.js';
10
+ import { f as filterChannelListParams, g as getChannelsWithUpsertedChannel } from './index-f6b6701e.js';
11
11
 
12
12
  var RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';
13
13
  var CREATE_CHANNEL = 'CREATE_CHANNEL';
@@ -187,7 +187,8 @@ function setupChannelList(_ref3) {
187
187
  userFilledChannelListQuery = _ref3.userFilledChannelListQuery,
188
188
  logger = _ref3.logger,
189
189
  sortChannelList = _ref3.sortChannelList,
190
- disableAutoSelect = _ref3.disableAutoSelect;
190
+ disableAutoSelect = _ref3.disableAutoSelect,
191
+ setChannelsToMarkAsRead = _ref3.setChannelsToMarkAsRead;
191
192
 
192
193
  if (sdk !== null && sdk !== void 0 && sdk.groupChannel) {
193
194
  createEventHandler({
@@ -256,15 +257,7 @@ function setupChannelList(_ref3) {
256
257
  });
257
258
 
258
259
  if (canSetMarkAsDelivered) {
259
- logger.info('ChannelList: Marking all channels as read'); // eslint-disable-next-line no-unused-expressions
260
-
261
- channelList.forEach(function (c, idx) {
262
- // Plan-based rate limits - minimum limit is 5 requests per second
263
- setTimeout(function () {
264
- // eslint-disable-next-line no-unused-expressions
265
- c.markAsDelivered();
266
- }, 300 * idx);
267
- });
260
+ setChannelsToMarkAsRead(sortedChannelList);
268
261
  }
269
262
  }).catch(function (err) {
270
263
  if (err) {
@@ -745,14 +738,33 @@ var ChannelListProvider = function ChannelListProvider(props) {
745
738
  sdkChannelHandlerId = _f[0],
746
739
  setSdkChannelHandlerId = _f[1];
747
740
 
748
- var _g = useState(null),
749
- typingHandlerId = _g[0],
750
- setTypingHandlerId = _g[1];
741
+ var _g = useState([]),
742
+ typingChannels = _g[0],
743
+ setTypingChannels = _g[1];
751
744
 
752
745
  var _h = useState([]),
753
- typingChannels = _h[0],
754
- setTypingChannels = _h[1];
746
+ channelsTomarkAsRead = _h[0],
747
+ setChannelsToMarkAsRead = _h[1];
748
+
749
+ useEffect(function () {
750
+ // https://stackoverflow.com/a/60907638
751
+ var isMounted = true;
752
+
753
+ if ((channelsTomarkAsRead === null || channelsTomarkAsRead === void 0 ? void 0 : channelsTomarkAsRead.length) > 0) {
754
+ channelsTomarkAsRead === null || channelsTomarkAsRead === void 0 ? void 0 : channelsTomarkAsRead.forEach(function (c, idx) {
755
+ // Plan-based rate limits - minimum limit is 5 requests per second
756
+ setTimeout(function () {
757
+ if (isMounted) {
758
+ c === null || c === void 0 ? void 0 : c.markAsDelivered();
759
+ }
760
+ }, 2000 * idx);
761
+ });
762
+ }
755
763
 
764
+ return function () {
765
+ isMounted = false;
766
+ };
767
+ }, [channelsTomarkAsRead]);
756
768
  useEffect(function () {
757
769
  var subscriber = pubSubHandler(pubSub, channelListDispatcher);
758
770
  return function () {
@@ -775,7 +787,8 @@ var ChannelListProvider = function ChannelListProvider(props) {
775
787
  userFilledChannelListQuery: userFilledChannelListQuery,
776
788
  logger: logger,
777
789
  sortChannelList: sortChannelList,
778
- disableAutoSelect: disableAutoSelect
790
+ disableAutoSelect: disableAutoSelect,
791
+ setChannelsToMarkAsRead: setChannelsToMarkAsRead
779
792
  });
780
793
  } else {
781
794
  logger.info('ChannelList: Removing channelHandlers'); // remove previous channelHandlers
@@ -806,8 +819,10 @@ var ChannelListProvider = function ChannelListProvider(props) {
806
819
  useEffect(function () {
807
820
  var _a, _b;
808
821
 
822
+ var typingHandlerId = null;
823
+
809
824
  if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.addGroupChannelHandler) {
810
- var handlerId = uuidv4();
825
+ typingHandlerId = uuidv4();
811
826
  var handler = new Yr({
812
827
  onTypingStatusUpdated: function onTypingStatusUpdated(channel) {
813
828
  var _a;
@@ -860,14 +875,13 @@ var ChannelListProvider = function ChannelListProvider(props) {
860
875
  });
861
876
  }
862
877
  });
863
- (_b = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _b === void 0 ? void 0 : _b.addGroupChannelHandler(handlerId, handler);
864
- setTypingHandlerId(handlerId);
878
+ (_b = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _b === void 0 ? void 0 : _b.addGroupChannelHandler(typingHandlerId, handler);
865
879
  }
866
880
 
867
881
  return function () {
868
882
  var _a;
869
883
 
870
- if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.removeGroupChannelHandler) {
884
+ if (((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.removeGroupChannelHandler) && typingHandlerId) {
871
885
  sdk.groupChannel.removeGroupChannelHandler(typingHandlerId);
872
886
  }
873
887
  };
@@ -941,4 +955,4 @@ function useChannelListContext() {
941
955
  }
942
956
 
943
957
  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 };
944
- //# sourceMappingURL=ChannelListProvider-bc1f14ac.js.map
958
+ //# sourceMappingURL=ChannelListProvider-551b956e.js.map