@sendbird/uikit-react 3.3.7 → 3.4.0-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 (572) hide show
  1. package/App.js +60 -34
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +150 -0
  4. package/Channel/components/ChannelHeader.js +20 -18
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +48 -29
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +15 -14
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +4 -4
  11. package/Channel/components/Message.js +33 -24
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +62 -20
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +36 -27
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +21 -17
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +17 -16
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +15 -14
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +4 -4
  24. package/Channel/context.js +14 -13
  25. package/Channel/context.js.map +1 -1
  26. package/Channel.js +43 -28
  27. package/Channel.js.map +1 -1
  28. package/ChannelList/components/AddChannel.js +15 -15
  29. package/ChannelList/components/ChannelListHeader.js +7 -7
  30. package/ChannelList/components/ChannelListUI.js +29 -28
  31. package/ChannelList/components/ChannelListUI.js.map +1 -1
  32. package/ChannelList/components/ChannelPreview.js +26 -25
  33. package/ChannelList/components/ChannelPreview.js.map +1 -1
  34. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  35. package/ChannelList/context.js +8 -8
  36. package/ChannelList.js +29 -28
  37. package/ChannelList.js.map +1 -1
  38. package/{ChannelListProvider-eb4708a3.js → ChannelListProvider-3c78429f.js} +8 -8
  39. package/{ChannelListProvider-eb4708a3.js.map → ChannelListProvider-3c78429f.js.map} +1 -1
  40. package/{ChannelProvider-1e540c0e.js → ChannelProvider-1d70b8a0.js} +88 -13
  41. package/ChannelProvider-1d70b8a0.js.map +1 -0
  42. package/ChannelSettings/components/ChannelProfile.js +12 -12
  43. package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  44. package/ChannelSettings/components/EditDetailsModal.js +12 -12
  45. package/ChannelSettings/components/LeaveChannel.js +12 -12
  46. package/ChannelSettings/components/ModerationPanel.js +15 -15
  47. package/ChannelSettings/components/UserListItem.js +11 -11
  48. package/ChannelSettings/components/UserPanel.js +18 -15
  49. package/ChannelSettings/components/UserPanel.js.map +1 -1
  50. package/ChannelSettings/context.js +3 -3
  51. package/ChannelSettings.js +18 -18
  52. package/CreateChannel/components/CreateChannelUI.js +14 -14
  53. package/CreateChannel/components/InviteUsers.js +14 -14
  54. package/CreateChannel/components/SelectChannelType.js +11 -11
  55. package/CreateChannel/context.js +4 -4
  56. package/CreateChannel.js +14 -14
  57. package/{CreateChannelProvider-ed2e3cb4.js → CreateChannelProvider-946fb371.js} +1 -1
  58. package/{CreateChannelProvider-ed2e3cb4.js.map → CreateChannelProvider-946fb371.js.map} +1 -1
  59. package/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
  60. package/CreateOpenChannel/context.js +1 -1
  61. package/CreateOpenChannel.js +10 -10
  62. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  63. package/EditUserProfile.js +13 -13
  64. package/{LocalizationContext-4c2faa9a.js → LocalizationContext-539093a9.js} +3 -3
  65. package/{LocalizationContext-4c2faa9a.js.map → LocalizationContext-539093a9.js.map} +1 -1
  66. package/{MediaQueryContext-97a21b7e.js → MediaQueryContext-79c8ad08.js} +1 -1
  67. package/{MediaQueryContext-97a21b7e.js.map → MediaQueryContext-79c8ad08.js.map} +1 -1
  68. package/{MemberList-6483a7db.js → MemberList-1350e670.js} +10 -7
  69. package/MemberList-1350e670.js.map +1 -0
  70. package/MessageSearch/components/MessageSearchUI.js +13 -11
  71. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  72. package/MessageSearch/context.js +2 -2
  73. package/MessageSearch.js +13 -11
  74. package/MessageSearch.js.map +1 -1
  75. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  76. package/OpenChannel/components/OpenChannelHeader.js +13 -13
  77. package/OpenChannel/components/OpenChannelInput.js +16 -15
  78. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  79. package/OpenChannel/components/OpenChannelMessage.js +22 -22
  80. package/OpenChannel/components/OpenChannelMessageList.js +24 -24
  81. package/OpenChannel/components/OpenChannelUI.js +24 -24
  82. package/OpenChannel/context.js +9 -9
  83. package/OpenChannel.js +24 -24
  84. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  85. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  86. package/OpenChannelList/context.js +4 -4
  87. package/OpenChannelList.js +13 -13
  88. package/{OpenChannelListProvider-95808e48.js → OpenChannelListProvider-64e2ca27.js} +3 -3
  89. package/{OpenChannelListProvider-95808e48.js.map → OpenChannelListProvider-64e2ca27.js.map} +1 -1
  90. package/{OpenChannelProvider-e3137432.js → OpenChannelProvider-5a54a791.js} +7 -7
  91. package/{OpenChannelProvider-e3137432.js.map → OpenChannelProvider-5a54a791.js.map} +1 -1
  92. package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  93. package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  94. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  95. package/OpenChannelSettings/components/OperatorUI.js +17 -17
  96. package/OpenChannelSettings/components/ParticipantUI.js +15 -15
  97. package/OpenChannelSettings/context.js +3 -3
  98. package/OpenChannelSettings.js +18 -18
  99. package/README.md +8 -0
  100. package/{RemoveMessageModal-0baf3553.js → RemoveMessageModal-cd536405.js} +3 -3
  101. package/{RemoveMessageModal-0baf3553.js.map → RemoveMessageModal-cd536405.js.map} +1 -1
  102. package/SendbirdProvider.js +29 -11
  103. package/SendbirdProvider.js.map +1 -1
  104. package/Thread/components/ParentMessageInfo.js +32 -22
  105. package/Thread/components/ParentMessageInfo.js.map +1 -1
  106. package/Thread/components/ParentMessageInfoItem.js +33 -16
  107. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  108. package/Thread/components/ThreadHeader.js +6 -6
  109. package/Thread/components/ThreadList.js +33 -24
  110. package/Thread/components/ThreadList.js.map +1 -1
  111. package/Thread/components/ThreadListItem.js +40 -25
  112. package/Thread/components/ThreadListItem.js.map +1 -1
  113. package/Thread/components/ThreadMessageInput.js +71 -21
  114. package/Thread/components/ThreadMessageInput.js.map +1 -1
  115. package/Thread/components/ThreadUI.js +49 -31
  116. package/Thread/components/ThreadUI.js.map +1 -1
  117. package/Thread/context.js +9 -8
  118. package/Thread/context.js.map +1 -1
  119. package/Thread.js +47 -29
  120. package/Thread.js.map +1 -1
  121. package/{ThreadProvider-a1413f01.js → ThreadProvider-9f8652df.js} +91 -11
  122. package/ThreadProvider-9f8652df.js.map +1 -0
  123. package/{UserProfileContext-e5d90f15.js → UserProfileContext-bd8525b7.js} +1 -1
  124. package/{UserProfileContext-e5d90f15.js.map → UserProfileContext-bd8525b7.js.map} +1 -1
  125. package/VoiceMessageInputWrapper-b149ff89.js +173 -0
  126. package/VoiceMessageInputWrapper-b149ff89.js.map +1 -0
  127. package/VoicePlayer/context.js +5 -0
  128. package/VoicePlayer/context.js.map +1 -0
  129. package/VoicePlayer/useVoicePlayer.js +87 -0
  130. package/VoicePlayer/useVoicePlayer.js.map +1 -0
  131. package/VoiceRecorder/context.js +243 -0
  132. package/VoiceRecorder/context.js.map +1 -0
  133. package/VoiceRecorder/useVoiceRecorder.js +117 -0
  134. package/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  135. package/{_rollupPluginBabelHelpers-b45d3824.js → _rollupPluginBabelHelpers-09618dc3.js} +1 -1
  136. package/_rollupPluginBabelHelpers-09618dc3.js.map +1 -0
  137. package/{actionTypes-c69daac1.js → actionTypes-0dd0c34b.js} +1 -1
  138. package/{actionTypes-c69daac1.js.map → actionTypes-0dd0c34b.js.map} +1 -1
  139. package/cjs/App.js +60 -34
  140. package/cjs/App.js.map +1 -1
  141. package/cjs/Channel/components/ChannelHeader.js +20 -18
  142. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  143. package/cjs/Channel/components/ChannelUI.js +48 -29
  144. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  145. package/cjs/Channel/components/FileViewer.js +15 -14
  146. package/cjs/Channel/components/FileViewer.js.map +1 -1
  147. package/cjs/Channel/components/FrozenNotification.js +4 -4
  148. package/cjs/Channel/components/Message.js +33 -24
  149. package/cjs/Channel/components/Message.js.map +1 -1
  150. package/cjs/Channel/components/MessageInput.js +62 -20
  151. package/cjs/Channel/components/MessageInput.js.map +1 -1
  152. package/cjs/Channel/components/MessageList.js +36 -27
  153. package/cjs/Channel/components/MessageList.js.map +1 -1
  154. package/cjs/Channel/components/RemoveMessageModal.js +21 -17
  155. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  156. package/cjs/Channel/components/SuggestedMentionList.js +17 -16
  157. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  158. package/cjs/Channel/components/TypingIndicator.js +15 -14
  159. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  160. package/cjs/Channel/components/UnreadCount.js +4 -4
  161. package/cjs/Channel/context.js +14 -13
  162. package/cjs/Channel/context.js.map +1 -1
  163. package/cjs/Channel.js +43 -28
  164. package/cjs/Channel.js.map +1 -1
  165. package/cjs/ChannelList/components/AddChannel.js +15 -15
  166. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  167. package/cjs/ChannelList/components/ChannelListUI.js +29 -28
  168. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  169. package/cjs/ChannelList/components/ChannelPreview.js +26 -25
  170. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  171. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  172. package/cjs/ChannelList/context.js +8 -8
  173. package/cjs/ChannelList.js +29 -28
  174. package/cjs/ChannelList.js.map +1 -1
  175. package/cjs/{ChannelListProvider-94df9f01.js → ChannelListProvider-7df03e2a.js} +8 -8
  176. package/cjs/{ChannelListProvider-94df9f01.js.map → ChannelListProvider-7df03e2a.js.map} +1 -1
  177. package/cjs/{ChannelProvider-3fbf7c5e.js → ChannelProvider-56b10dd6.js} +87 -12
  178. package/cjs/ChannelProvider-56b10dd6.js.map +1 -0
  179. package/cjs/ChannelSettings/components/ChannelProfile.js +12 -12
  180. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  181. package/cjs/ChannelSettings/components/EditDetailsModal.js +12 -12
  182. package/cjs/ChannelSettings/components/LeaveChannel.js +12 -12
  183. package/cjs/ChannelSettings/components/ModerationPanel.js +15 -15
  184. package/cjs/ChannelSettings/components/UserListItem.js +11 -11
  185. package/cjs/ChannelSettings/components/UserPanel.js +18 -15
  186. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  187. package/cjs/ChannelSettings/context.js +3 -3
  188. package/cjs/ChannelSettings.js +18 -18
  189. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  190. package/cjs/CreateChannel/components/InviteUsers.js +14 -14
  191. package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
  192. package/cjs/CreateChannel/context.js +4 -4
  193. package/cjs/CreateChannel.js +14 -14
  194. package/cjs/{CreateChannelProvider-70422add.js → CreateChannelProvider-359f35d1.js} +1 -1
  195. package/cjs/{CreateChannelProvider-70422add.js.map → CreateChannelProvider-359f35d1.js.map} +1 -1
  196. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
  197. package/cjs/CreateOpenChannel/context.js +1 -1
  198. package/cjs/CreateOpenChannel.js +10 -10
  199. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  200. package/cjs/EditUserProfile.js +13 -13
  201. package/cjs/{LocalizationContext-a0f833e9.js → LocalizationContext-7d2c13ee.js} +3 -3
  202. package/cjs/{LocalizationContext-a0f833e9.js.map → LocalizationContext-7d2c13ee.js.map} +1 -1
  203. package/cjs/{MediaQueryContext-770ae8bc.js → MediaQueryContext-36855cf6.js} +1 -1
  204. package/cjs/{MediaQueryContext-770ae8bc.js.map → MediaQueryContext-36855cf6.js.map} +1 -1
  205. package/cjs/{MemberList-4a0910dd.js → MemberList-cf4488bc.js} +10 -7
  206. package/cjs/MemberList-cf4488bc.js.map +1 -0
  207. package/cjs/MessageSearch/components/MessageSearchUI.js +13 -11
  208. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  209. package/cjs/MessageSearch/context.js +2 -2
  210. package/cjs/MessageSearch.js +13 -11
  211. package/cjs/MessageSearch.js.map +1 -1
  212. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  213. package/cjs/OpenChannel/components/OpenChannelHeader.js +13 -13
  214. package/cjs/OpenChannel/components/OpenChannelInput.js +16 -15
  215. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  216. package/cjs/OpenChannel/components/OpenChannelMessage.js +22 -22
  217. package/cjs/OpenChannel/components/OpenChannelMessageList.js +24 -24
  218. package/cjs/OpenChannel/components/OpenChannelUI.js +24 -24
  219. package/cjs/OpenChannel/context.js +9 -9
  220. package/cjs/OpenChannel.js +24 -24
  221. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  222. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  223. package/cjs/OpenChannelList/context.js +4 -4
  224. package/cjs/OpenChannelList.js +13 -13
  225. package/cjs/{OpenChannelListProvider-e97c8ed9.js → OpenChannelListProvider-d0e494e8.js} +3 -3
  226. package/cjs/{OpenChannelListProvider-e97c8ed9.js.map → OpenChannelListProvider-d0e494e8.js.map} +1 -1
  227. package/cjs/{OpenChannelProvider-9b453ac0.js → OpenChannelProvider-84d45a52.js} +7 -7
  228. package/cjs/{OpenChannelProvider-9b453ac0.js.map → OpenChannelProvider-84d45a52.js.map} +1 -1
  229. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  230. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  231. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  232. package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -17
  233. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
  234. package/cjs/OpenChannelSettings/context.js +3 -3
  235. package/cjs/OpenChannelSettings.js +18 -18
  236. package/cjs/{RemoveMessageModal-7bde69be.js → RemoveMessageModal-44018509.js} +3 -3
  237. package/cjs/{RemoveMessageModal-7bde69be.js.map → RemoveMessageModal-44018509.js.map} +1 -1
  238. package/cjs/SendbirdProvider.js +29 -11
  239. package/cjs/SendbirdProvider.js.map +1 -1
  240. package/cjs/Thread/components/ParentMessageInfo.js +34 -24
  241. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  242. package/cjs/Thread/components/ParentMessageInfoItem.js +33 -16
  243. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  244. package/cjs/Thread/components/ThreadHeader.js +6 -6
  245. package/cjs/Thread/components/ThreadList.js +33 -24
  246. package/cjs/Thread/components/ThreadList.js.map +1 -1
  247. package/cjs/Thread/components/ThreadListItem.js +41 -26
  248. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  249. package/cjs/Thread/components/ThreadMessageInput.js +73 -23
  250. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  251. package/cjs/Thread/components/ThreadUI.js +49 -31
  252. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  253. package/cjs/Thread/context.js +9 -8
  254. package/cjs/Thread/context.js.map +1 -1
  255. package/cjs/Thread.js +47 -29
  256. package/cjs/Thread.js.map +1 -1
  257. package/cjs/{ThreadProvider-71441c16.js → ThreadProvider-e8591a61.js} +90 -10
  258. package/cjs/ThreadProvider-e8591a61.js.map +1 -0
  259. package/cjs/{UserProfileContext-74e6409b.js → UserProfileContext-89b8a98d.js} +1 -1
  260. package/cjs/{UserProfileContext-74e6409b.js.map → UserProfileContext-89b8a98d.js.map} +1 -1
  261. package/cjs/VoiceMessageInputWrapper-6d309e8c.js +179 -0
  262. package/cjs/VoiceMessageInputWrapper-6d309e8c.js.map +1 -0
  263. package/cjs/VoicePlayer/context.js +14 -0
  264. package/cjs/VoicePlayer/context.js.map +1 -0
  265. package/cjs/VoicePlayer/useVoicePlayer.js +91 -0
  266. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -0
  267. package/cjs/VoiceRecorder/context.js +253 -0
  268. package/cjs/VoiceRecorder/context.js.map +1 -0
  269. package/cjs/VoiceRecorder/useVoiceRecorder.js +122 -0
  270. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  271. package/cjs/{_rollupPluginBabelHelpers-25763ef8.js → _rollupPluginBabelHelpers-9807f0cb.js} +1 -1
  272. package/cjs/_rollupPluginBabelHelpers-9807f0cb.js.map +1 -0
  273. package/cjs/{actionTypes-85a652e4.js → actionTypes-64f969d0.js} +1 -1
  274. package/cjs/{actionTypes-85a652e4.js.map → actionTypes-64f969d0.js.map} +1 -1
  275. package/cjs/{color-51fd9a0c.js → color-ae15b40e.js} +1 -1
  276. package/cjs/{color-51fd9a0c.js.map → color-ae15b40e.js.map} +1 -1
  277. package/cjs/{compareIds-44844f10.js → compareIds-88a3abee.js} +1 -1
  278. package/cjs/{compareIds-44844f10.js.map → compareIds-88a3abee.js.map} +1 -1
  279. package/cjs/{const-4761421a.js → const-6d993a66.js} +1 -1
  280. package/cjs/{const-4761421a.js.map → const-6d993a66.js.map} +1 -1
  281. package/cjs/{const-618dd4f4.js → const-98ae036e.js} +1 -1
  282. package/cjs/{const-618dd4f4.js.map → const-98ae036e.js.map} +1 -1
  283. package/cjs/consts-7142bdfe.js +36 -0
  284. package/cjs/consts-7142bdfe.js.map +1 -0
  285. package/cjs/{context-4b1de73e.js → context-9f945182.js} +2 -2
  286. package/cjs/{context-4b1de73e.js.map → context-9f945182.js.map} +1 -1
  287. package/cjs/dist/index.css +413 -16
  288. package/cjs/dist/index.css.map +1 -1
  289. package/cjs/{index-32b39be6.js → index-1f2ac00b.js} +5 -5
  290. package/cjs/{index-32b39be6.js.map → index-1f2ac00b.js.map} +1 -1
  291. package/cjs/{index-4dc29990.js → index-31135e46.js} +1 -1
  292. package/cjs/{index-4dc29990.js.map → index-31135e46.js.map} +1 -1
  293. package/cjs/{index-9f6a474c.js → index-318ca5bb.js} +2 -2
  294. package/cjs/{index-9f6a474c.js.map → index-318ca5bb.js.map} +1 -1
  295. package/cjs/{index-0e76934f.js → index-45c199d5.js} +8 -8
  296. package/cjs/index-45c199d5.js.map +1 -0
  297. package/cjs/{index-bfe8bdde.js → index-6691da2c.js} +49 -3
  298. package/cjs/index-6691da2c.js.map +1 -0
  299. package/cjs/{index-97532335.js → index-80ec94b9.js} +2 -2
  300. package/cjs/{index-97532335.js.map → index-80ec94b9.js.map} +1 -1
  301. package/cjs/{index-2c095d94.js → index-86b55059.js} +2 -2
  302. package/cjs/{index-2c095d94.js.map → index-86b55059.js.map} +1 -1
  303. package/cjs/{index-c4738d8b.js → index-9d2d5d23.js} +3 -3
  304. package/cjs/{index-c4738d8b.js.map → index-9d2d5d23.js.map} +1 -1
  305. package/cjs/{index-756baf20.js → index-9f074bb0.js} +7 -7
  306. package/cjs/{index-756baf20.js.map → index-9f074bb0.js.map} +1 -1
  307. package/cjs/{index-4d6f2a4e.js → index-a34a53d3.js} +4 -4
  308. package/cjs/{index-4d6f2a4e.js.map → index-a34a53d3.js.map} +1 -1
  309. package/cjs/{index-67134275.js → index-c34f34a2.js} +2 -2
  310. package/cjs/{index-67134275.js.map → index-c34f34a2.js.map} +1 -1
  311. package/cjs/index-e0971532.js +280 -0
  312. package/cjs/index-e0971532.js.map +1 -0
  313. package/cjs/index-fa531baa.js +175 -0
  314. package/cjs/index-fa531baa.js.map +1 -0
  315. package/cjs/{index-7d4e7ad9.js → index-fb42d34c.js} +1 -1
  316. package/cjs/{index-7d4e7ad9.js.map → index-fb42d34c.js.map} +1 -1
  317. package/cjs/index.js +51 -39
  318. package/cjs/index.js.map +1 -1
  319. package/cjs/lame.all.js +14498 -0
  320. package/cjs/lame.all.js.map +1 -0
  321. package/cjs/sendbirdSelectors.js +2 -2
  322. package/cjs/{stringSet-87e51d08.js → stringSet-d4071e23.js} +5 -1
  323. package/cjs/stringSet-d4071e23.js.map +1 -0
  324. package/cjs/{topics-d9091126.js → topics-7108f68f.js} +1 -1
  325. package/cjs/{topics-d9091126.js.map → topics-7108f68f.js.map} +1 -1
  326. package/cjs/{tslib.es6-0b4c49f8.js → tslib.es6-23b4ef32.js} +1 -1
  327. package/cjs/{tslib.es6-0b4c49f8.js.map → tslib.es6-23b4ef32.js.map} +1 -1
  328. package/cjs/types-8f7bbb00.js +11 -0
  329. package/cjs/types-8f7bbb00.js.map +1 -0
  330. package/cjs/ui/Accordion.js +3 -3
  331. package/cjs/ui/AccordionGroup.js +2 -2
  332. package/cjs/ui/AdminMessage.js +3 -3
  333. package/cjs/ui/Avatar.js +2 -2
  334. package/cjs/ui/Badge.js +5 -5
  335. package/cjs/ui/BottomSheet.js +1 -1
  336. package/cjs/ui/Button.js +3 -3
  337. package/cjs/ui/ChannelAvatar.js +3 -3
  338. package/cjs/ui/ConnectionStatus.js +4 -4
  339. package/cjs/ui/ContextMenu.js +5 -5
  340. package/cjs/ui/DateSeparator.js +4 -4
  341. package/cjs/ui/EmojiReactions.js +7 -7
  342. package/cjs/ui/FileMessageItemBody.js +6 -6
  343. package/cjs/ui/FileViewer.js +8 -8
  344. package/cjs/ui/Icon.js +354 -314
  345. package/cjs/ui/Icon.js.map +1 -1
  346. package/cjs/ui/IconButton.js +1 -1
  347. package/cjs/ui/ImageRenderer.js +1 -1
  348. package/cjs/ui/Input.js +2 -2
  349. package/cjs/ui/Label.js +2 -2
  350. package/cjs/ui/LinkLabel.js +2 -2
  351. package/cjs/ui/Loader.js +1 -1
  352. package/cjs/ui/MentionLabel.js +11 -11
  353. package/cjs/ui/MessageContent.js +35 -20
  354. package/cjs/ui/MessageContent.js.map +1 -1
  355. package/cjs/ui/MessageInput.js +35 -16
  356. package/cjs/ui/MessageInput.js.map +1 -1
  357. package/cjs/ui/MessageItemMenu.js +9 -8
  358. package/cjs/ui/MessageItemMenu.js.map +1 -1
  359. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  360. package/cjs/ui/MessageSearchFileItem.js +17 -14
  361. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  362. package/cjs/ui/MessageSearchItem.js +9 -9
  363. package/cjs/ui/MessageStatus.js +10 -10
  364. package/cjs/ui/Modal.js +7 -7
  365. package/cjs/ui/OGMessageItemBody.js +36 -26
  366. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  367. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  368. package/cjs/ui/OpenChannelAvatar.js +6 -6
  369. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  370. package/cjs/ui/OpenchannelFileMessage.js +16 -16
  371. package/cjs/ui/OpenchannelOGMessage.js +16 -16
  372. package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
  373. package/cjs/ui/OpenchannelUserMessage.js +16 -16
  374. package/cjs/ui/PlaceHolder.js +6 -6
  375. package/cjs/ui/PlaybackTime.js +36 -0
  376. package/cjs/ui/PlaybackTime.js.map +1 -0
  377. package/cjs/ui/ProgressBar.js +41 -0
  378. package/cjs/ui/ProgressBar.js.map +1 -0
  379. package/cjs/ui/QuoteMessage.js +14 -8
  380. package/cjs/ui/QuoteMessage.js.map +1 -1
  381. package/cjs/ui/QuoteMessageInput.js +12 -11
  382. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  383. package/cjs/ui/ReactionBadge.js +3 -3
  384. package/cjs/ui/ReactionButton.js +1 -1
  385. package/cjs/ui/SortByRow.js +2 -2
  386. package/cjs/ui/TextButton.js +2 -2
  387. package/cjs/ui/TextMessageItemBody.js +11 -11
  388. package/cjs/ui/ThreadReplies.js +6 -6
  389. package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
  390. package/cjs/ui/Tooltip.js +3 -3
  391. package/cjs/ui/TooltipWrapper.js +1 -1
  392. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  393. package/cjs/ui/UserListItem.js +11 -11
  394. package/cjs/ui/UserProfile.js +10 -10
  395. package/cjs/ui/VoiceMessageItemBody.js +119 -0
  396. package/cjs/ui/VoiceMessageItemBody.js.map +1 -0
  397. package/cjs/ui/VoiceMessgeInput.js +23 -0
  398. package/cjs/ui/VoiceMessgeInput.js.map +1 -0
  399. package/cjs/ui/Word.js +11 -11
  400. package/cjs/{useLongPress-ff6353a1.js → useLongPress-62a89444.js} +3 -3
  401. package/cjs/{useLongPress-ff6353a1.js.map → useLongPress-62a89444.js.map} +1 -1
  402. package/cjs/useSendbirdStateContext.js +1 -1
  403. package/cjs/utils/message/isVoiceMessage.js +10 -0
  404. package/cjs/utils/message/isVoiceMessage.js.map +1 -0
  405. package/cjs/{utils-aa1597cc.js → utils-178ccede.js} +1 -1
  406. package/cjs/{utils-aa1597cc.js.map → utils-178ccede.js.map} +1 -1
  407. package/cjs/{utils-edb40a10.js → utils-41fef560.js} +2 -2
  408. package/cjs/{utils-edb40a10.js.map → utils-41fef560.js.map} +1 -1
  409. package/cjs/{utils-c948ddfe.js → utils-7bec6eaa.js} +1 -1
  410. package/cjs/{utils-c948ddfe.js.map → utils-7bec6eaa.js.map} +1 -1
  411. package/cjs/{utils-72ab488f.js → utils-b691a058.js} +1 -1
  412. package/cjs/{utils-72ab488f.js.map → utils-b691a058.js.map} +1 -1
  413. package/cjs/{uuid-0b5f4e5e.js → uuid-42040a5c.js} +1 -1
  414. package/cjs/{uuid-0b5f4e5e.js.map → uuid-42040a5c.js.map} +1 -1
  415. package/cjs/withSendbird.js +1 -1
  416. package/{color-1b42e49d.js → color-f2370c85.js} +1 -1
  417. package/{color-1b42e49d.js.map → color-f2370c85.js.map} +1 -1
  418. package/{compareIds-df760ae2.js → compareIds-a4557492.js} +1 -1
  419. package/{compareIds-df760ae2.js.map → compareIds-a4557492.js.map} +1 -1
  420. package/{const-c269fd32.js → const-593595f5.js} +1 -1
  421. package/{const-c269fd32.js.map → const-593595f5.js.map} +1 -1
  422. package/{const-11ae0dd9.js → const-ce447fcf.js} +1 -1
  423. package/{const-11ae0dd9.js.map → const-ce447fcf.js.map} +1 -1
  424. package/consts-d2d25dac.js +23 -0
  425. package/consts-d2d25dac.js.map +1 -0
  426. package/{context-2c35a852.js → context-95839b09.js} +2 -2
  427. package/{context-2c35a852.js.map → context-95839b09.js.map} +1 -1
  428. package/dist/index.css +413 -16
  429. package/dist/index.css.map +1 -1
  430. package/{index-6a8be188.js → index-2aaa784a.js} +7 -7
  431. package/{index-6a8be188.js.map → index-2aaa784a.js.map} +1 -1
  432. package/{index-e2994193.js → index-4a977e7d.js} +2 -2
  433. package/{index-e2994193.js.map → index-4a977e7d.js.map} +1 -1
  434. package/{index-6491c190.js → index-4b51e7af.js} +5 -5
  435. package/{index-6491c190.js.map → index-4b51e7af.js.map} +1 -1
  436. package/{index-30726ee1.js → index-4c6a2064.js} +2 -2
  437. package/{index-30726ee1.js.map → index-4c6a2064.js.map} +1 -1
  438. package/index-60d3992b.js +271 -0
  439. package/index-60d3992b.js.map +1 -0
  440. package/{index-8c38f9d0.js → index-620331eb.js} +2 -2
  441. package/{index-8c38f9d0.js.map → index-620331eb.js.map} +1 -1
  442. package/index-7b5efb26.js +168 -0
  443. package/index-7b5efb26.js.map +1 -0
  444. package/{index-a53d78b6.js → index-999fdb64.js} +1 -1
  445. package/{index-a53d78b6.js.map → index-999fdb64.js.map} +1 -1
  446. package/{index-1f0b91f3.js → index-9c2d0ccd.js} +2 -2
  447. package/{index-1f0b91f3.js.map → index-9c2d0ccd.js.map} +1 -1
  448. package/{index-fd5a03a3.js → index-b8e990b4.js} +1 -1
  449. package/{index-fd5a03a3.js.map → index-b8e990b4.js.map} +1 -1
  450. package/{index-425e5f17.js → index-bbab31f0.js} +48 -4
  451. package/index-bbab31f0.js.map +1 -0
  452. package/{index-aa4edbe2.js → index-daccde5e.js} +8 -8
  453. package/index-daccde5e.js.map +1 -0
  454. package/{index-6d541758.js → index-ed1f765b.js} +3 -3
  455. package/{index-6d541758.js.map → index-ed1f765b.js.map} +1 -1
  456. package/{index-aecdd02c.js → index-eefaf935.js} +4 -4
  457. package/{index-aecdd02c.js.map → index-eefaf935.js.map} +1 -1
  458. package/index.d.ts +16 -1
  459. package/index.js +51 -39
  460. package/index.js.map +1 -1
  461. package/lame.all.js +14492 -0
  462. package/lame.all.js.map +1 -0
  463. package/package.json +1 -1
  464. package/sendbirdSelectors.js +2 -2
  465. package/{stringSet-c2443946.js → stringSet-f9763488.js} +5 -1
  466. package/stringSet-f9763488.js.map +1 -0
  467. package/{topics-0ba43ee8.js → topics-1ec669f0.js} +1 -1
  468. package/{topics-0ba43ee8.js.map → topics-1ec669f0.js.map} +1 -1
  469. package/{tslib.es6-13412863.js → tslib.es6-fc4a2658.js} +1 -1
  470. package/{tslib.es6-13412863.js.map → tslib.es6-fc4a2658.js.map} +1 -1
  471. package/types-e86f9fca.js +9 -0
  472. package/types-e86f9fca.js.map +1 -0
  473. package/ui/Accordion.js +3 -3
  474. package/ui/AccordionGroup.js +2 -2
  475. package/ui/AdminMessage.js +3 -3
  476. package/ui/Avatar.js +2 -2
  477. package/ui/Badge.js +5 -5
  478. package/ui/BottomSheet.js +1 -1
  479. package/ui/Button.js +3 -3
  480. package/ui/ChannelAvatar.js +3 -3
  481. package/ui/ConnectionStatus.js +4 -4
  482. package/ui/ContextMenu.js +5 -5
  483. package/ui/DateSeparator.js +4 -4
  484. package/ui/EmojiReactions.js +7 -7
  485. package/ui/FileMessageItemBody.js +6 -6
  486. package/ui/FileViewer.js +8 -8
  487. package/ui/Icon.js +341 -299
  488. package/ui/Icon.js.map +1 -1
  489. package/ui/IconButton.js +1 -1
  490. package/ui/ImageRenderer.js +1 -1
  491. package/ui/Input.js +2 -2
  492. package/ui/Label.js +2 -2
  493. package/ui/LinkLabel.js +2 -2
  494. package/ui/Loader.js +1 -1
  495. package/ui/MentionLabel.js +11 -11
  496. package/ui/MessageContent.js +35 -20
  497. package/ui/MessageContent.js.map +1 -1
  498. package/ui/MessageInput.js +35 -16
  499. package/ui/MessageInput.js.map +1 -1
  500. package/ui/MessageItemMenu.js +9 -8
  501. package/ui/MessageItemMenu.js.map +1 -1
  502. package/ui/MessageItemReactionMenu.js +5 -5
  503. package/ui/MessageSearchFileItem.js +17 -14
  504. package/ui/MessageSearchFileItem.js.map +1 -1
  505. package/ui/MessageSearchItem.js +9 -9
  506. package/ui/MessageStatus.js +10 -10
  507. package/ui/Modal.js +7 -7
  508. package/ui/OGMessageItemBody.js +37 -27
  509. package/ui/OGMessageItemBody.js.map +1 -1
  510. package/ui/OpenChannelAdminMessage.js +3 -3
  511. package/ui/OpenChannelAvatar.js +6 -6
  512. package/ui/OpenchannelConversationHeader.js +6 -6
  513. package/ui/OpenchannelFileMessage.js +16 -16
  514. package/ui/OpenchannelOGMessage.js +16 -16
  515. package/ui/OpenchannelThumbnailMessage.js +15 -15
  516. package/ui/OpenchannelUserMessage.js +16 -16
  517. package/ui/PlaceHolder.js +6 -6
  518. package/ui/PlaybackTime.js +27 -0
  519. package/ui/PlaybackTime.js.map +1 -0
  520. package/ui/ProgressBar.js +31 -0
  521. package/ui/ProgressBar.js.map +1 -0
  522. package/ui/QuoteMessage.js +14 -8
  523. package/ui/QuoteMessage.js.map +1 -1
  524. package/ui/QuoteMessageInput.js +12 -11
  525. package/ui/QuoteMessageInput.js.map +1 -1
  526. package/ui/ReactionBadge.js +3 -3
  527. package/ui/ReactionButton.js +1 -1
  528. package/ui/SortByRow.js +2 -2
  529. package/ui/TextButton.js +2 -2
  530. package/ui/TextMessageItemBody.js +11 -11
  531. package/ui/ThreadReplies.js +6 -6
  532. package/ui/ThumbnailMessageItemBody.js +2 -2
  533. package/ui/Tooltip.js +3 -3
  534. package/ui/TooltipWrapper.js +1 -1
  535. package/ui/UnknownMessageItemBody.js +6 -6
  536. package/ui/UserListItem.js +11 -11
  537. package/ui/UserProfile.js +10 -10
  538. package/ui/VoiceMessageItemBody.js +110 -0
  539. package/ui/VoiceMessageItemBody.js.map +1 -0
  540. package/ui/VoiceMessgeInput.js +15 -0
  541. package/ui/VoiceMessgeInput.js.map +1 -0
  542. package/ui/Word.js +11 -11
  543. package/{useLongPress-fbe83e54.js → useLongPress-6fc8312a.js} +3 -3
  544. package/{useLongPress-fbe83e54.js.map → useLongPress-6fc8312a.js.map} +1 -1
  545. package/useSendbirdStateContext.js +1 -1
  546. package/utils/message/isVoiceMessage.js +7 -0
  547. package/utils/message/isVoiceMessage.js.map +1 -0
  548. package/{utils-87d19647.js → utils-2570c397.js} +1 -1
  549. package/{utils-87d19647.js.map → utils-2570c397.js.map} +1 -1
  550. package/{utils-dd13f89e.js → utils-6c7dd397.js} +1 -1
  551. package/{utils-dd13f89e.js.map → utils-6c7dd397.js.map} +1 -1
  552. package/{utils-9c95a786.js → utils-8c242c8c.js} +2 -2
  553. package/{utils-9c95a786.js.map → utils-8c242c8c.js.map} +1 -1
  554. package/{utils-87dce5dd.js → utils-c1d219fa.js} +1 -1
  555. package/{utils-87dce5dd.js.map → utils-c1d219fa.js.map} +1 -1
  556. package/{uuid-7a5e68ed.js → uuid-6ca64623.js} +1 -1
  557. package/{uuid-7a5e68ed.js.map → uuid-6ca64623.js.map} +1 -1
  558. package/withSendbird.js +1 -1
  559. package/ChannelProvider-1e540c0e.js.map +0 -1
  560. package/MemberList-6483a7db.js.map +0 -1
  561. package/ThreadProvider-a1413f01.js.map +0 -1
  562. package/_rollupPluginBabelHelpers-b45d3824.js.map +0 -1
  563. package/cjs/ChannelProvider-3fbf7c5e.js.map +0 -1
  564. package/cjs/MemberList-4a0910dd.js.map +0 -1
  565. package/cjs/ThreadProvider-71441c16.js.map +0 -1
  566. package/cjs/_rollupPluginBabelHelpers-25763ef8.js.map +0 -1
  567. package/cjs/index-0e76934f.js.map +0 -1
  568. package/cjs/index-bfe8bdde.js.map +0 -1
  569. package/cjs/stringSet-87e51d08.js.map +0 -1
  570. package/index-425e5f17.js.map +0 -1
  571. package/index-aa4edbe2.js.map +0 -1
  572. package/stringSet-c2443946.js.map +0 -1
package/ChannelList.js CHANGED
@@ -1,23 +1,23 @@
1
1
  import React__default from 'react';
2
- import { C as ChannelListProvider } from './ChannelListProvider-eb4708a3.js';
2
+ import { C as ChannelListProvider } from './ChannelListProvider-3c78429f.js';
3
3
  import ChannelListUI from './ChannelList/components/ChannelListUI.js';
4
- import './tslib.es6-13412863.js';
4
+ import './tslib.es6-fc4a2658.js';
5
5
  import '@sendbird/chat/groupChannel';
6
- import './topics-0ba43ee8.js';
7
- import './uuid-7a5e68ed.js';
8
- import './utils-87dce5dd.js';
9
- import './UserProfileContext-e5d90f15.js';
6
+ import './topics-1ec669f0.js';
7
+ import './uuid-6ca64623.js';
8
+ import './utils-c1d219fa.js';
9
+ import './UserProfileContext-bd8525b7.js';
10
10
  import 'prop-types';
11
11
  import './useSendbirdStateContext.js';
12
12
  import './withSendbird.js';
13
- import './_rollupPluginBabelHelpers-b45d3824.js';
14
- import './index-425e5f17.js';
13
+ import './_rollupPluginBabelHelpers-09618dc3.js';
14
+ import './index-bbab31f0.js';
15
15
  import './utils/message/getOutgoingMessageState.js';
16
16
  import './ChannelList/components/ChannelListHeader.js';
17
- import './LocalizationContext-4c2faa9a.js';
18
- import './stringSet-c2443946.js';
19
- import './index-a53d78b6.js';
20
- import './index-e2994193.js';
17
+ import './LocalizationContext-539093a9.js';
18
+ import './stringSet-f9763488.js';
19
+ import './index-999fdb64.js';
20
+ import './index-4a977e7d.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-ed2e3cb4.js';
28
+ import './CreateChannelProvider-946fb371.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-fd5a03a3.js';
33
+ import './index-b8e990b4.js';
34
34
  import './ui/Button.js';
35
- import './MediaQueryContext-97a21b7e.js';
35
+ import './MediaQueryContext-79c8ad08.js';
36
36
  import './ui/UserListItem.js';
37
37
  import './ui/MutedAvatarOverlay.js';
38
38
  import './ui/Checkbox.js';
@@ -42,29 +42,30 @@ 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-87d19647.js';
45
+ import './utils-2570c397.js';
46
46
  import './ui/Badge.js';
47
- import './index-aa4edbe2.js';
48
- import './index-8c38f9d0.js';
47
+ import './index-daccde5e.js';
48
+ import './index-620331eb.js';
49
49
  import './ui/Loader.js';
50
- import './index-6d541758.js';
51
- import './index-30726ee1.js';
50
+ import './index-ed1f765b.js';
51
+ import './index-4c6a2064.js';
52
52
  import './ui/MentionUserLabel.js';
53
53
  import './ui/TextButton.js';
54
- import './color-1b42e49d.js';
54
+ import './color-f2370c85.js';
55
55
  import './Channel/components/TypingIndicator.js';
56
- import './ChannelProvider-1e540c0e.js';
57
- import './compareIds-df760ae2.js';
58
- import './const-c269fd32.js';
56
+ import './ChannelProvider-1d70b8a0.js';
57
+ import './compareIds-a4557492.js';
58
+ import './const-593595f5.js';
59
59
  import '@sendbird/chat/message';
60
60
  import './ui/ReactionButton.js';
61
- import './useLongPress-fbe83e54.js';
61
+ import './consts-d2d25dac.js';
62
+ import './useLongPress-6fc8312a.js';
62
63
  import './ChannelList/components/ChannelPreviewAction.js';
63
64
  import './EditUserProfile.js';
64
- import './index-6491c190.js';
65
+ import './index-4b51e7af.js';
65
66
  import './ui/Input.js';
66
- import './actionTypes-c69daac1.js';
67
- import './index-aecdd02c.js';
67
+ import './actionTypes-0dd0c34b.js';
68
+ import './index-eefaf935.js';
68
69
 
69
70
  var ChannelList = function (props) {
70
71
  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 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 overrideInviteUser={props?.overrideInviteUser}\n onProfileEditSuccess={props?.onProfileEditSuccess}\n onChannelSelect={props?.onChannelSelect}\n sortChannelList={props?.sortChannelList}\n queries={props?.queries}\n disableAutoSelect={props?.disableAutoSelect}\n activeChannelUrl={props?.activeChannelUrl}\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","overrideInviteUser","onProfileEditSuccess","onChannelSelect","sortChannelList","queries","disableAutoSelect","activeChannelUrl","isTypingIndicatorEnabled","isMessageReceiptStatusEnabled","renderChannelPreview","renderUserProfile","renderHeader","renderPlaceHolderEmptyList","renderPlaceHolderError","renderPlaceHolderLoading"],"mappings":"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"}
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 overrideInviteUser={props?.overrideInviteUser}\n onProfileEditSuccess={props?.onProfileEditSuccess}\n onChannelSelect={props?.onChannelSelect}\n sortChannelList={props?.sortChannelList}\n queries={props?.queries}\n disableAutoSelect={props?.disableAutoSelect}\n activeChannelUrl={props?.activeChannelUrl}\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","overrideInviteUser","onProfileEditSuccess","onChannelSelect","sortChannelList","queries","disableAutoSelect","activeChannelUrl","isTypingIndicatorEnabled","isMessageReceiptStatusEnabled","renderChannelPreview","renderUserProfile","renderHeader","renderPlaceHolderEmptyList","renderPlaceHolderError","renderPlaceHolderLoading"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAMA,WAAW,GAA+B,UAACC,KAAD,EAAwB;AACtE,EAAA,oBACEC,6BAAC,mBAAD,EAAA;AACE,IAAA,SAAS,EAAED,KAAK,KAAL,IAAA,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEE,SADpB;AAEE,IAAA,kBAAkB,EAAEF,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,KAAK,CAAEG,kBAF7B;AAGE,IAAA,gBAAgB,EAAEH,KAAK,SAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEI,gBAH3B;AAIE,IAAA,qBAAqB,EAAEJ,KAAK,KAAL,IAAA,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEK,qBAJhC;AAKE,IAAA,aAAa,EAAEL,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,KAAK,CAAEM,aALxB;AAME,IAAA,kBAAkB,EAAEN,KAAK,SAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEO,kBAN7B;AAOE,IAAA,oBAAoB,EAAEP,KAAK,KAAL,IAAA,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEQ,oBAP/B;AAQE,IAAA,eAAe,EAAER,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,KAAK,CAAES,eAR1B;AASE,IAAA,eAAe,EAAET,KAAK,SAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEU,eAT1B;AAUE,IAAA,OAAO,EAAEV,KAAK,KAAL,IAAA,IAAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,KAAK,CAAEW,OAVlB;AAWE,IAAA,iBAAiB,EAAEX,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEY,iBAX5B;AAYE,IAAA,gBAAgB,EAAEZ,KAAK,KAAL,IAAA,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEa,gBAZ3B;AAaE,IAAA,wBAAwB,EAAEb,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,KAAK,CAAEc,wBAbnC;AAcE,IAAA,6BAA6B,EAAEd,KAAK,SAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEe,6BAAAA;AAdxC,GAAA,eAgBEd,6BAAC,aAAD,EAAA;AACE,IAAA,oBAAoB,EAAED,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEgB,oBAD/B;AAEE,IAAA,iBAAiB,EAAEhB,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEiB,iBAF5B;AAGE,IAAA,YAAY,EAAEjB,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEkB,YAHvB;AAIE,IAAA,0BAA0B,EAAElB,KAAK,SAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEmB,0BAJrC;AAKE,IAAA,sBAAsB,EAAEnB,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAA,KAAA,CAAL,GAAK,KAAA,CAAL,GAAAA,KAAK,CAAEoB,sBALjC;AAME,IAAA,wBAAwB,EAAEpB,KAAK,KAAA,IAAL,IAAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,KAAK,CAAEqB,wBAAAA;AANnC,GAAA,CAhBF,CADF,CAAA;AA2BD;;;;"}
@@ -1,13 +1,13 @@
1
- import { a as __spreadArray, _ as __assign } from './tslib.es6-13412863.js';
1
+ import { a as __spreadArray, _ as __assign } from './tslib.es6-fc4a2658.js';
2
2
  import React__default, { useEffect, useReducer, useState, useMemo, useContext } from 'react';
3
3
  import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
4
- import { C as CREATE_CHANNEL$1, U as UPDATE_USER_MESSAGE, L as LEAVE_CHANNEL, S as SEND_MESSAGE_START } from './topics-0ba43ee8.js';
5
- import { u as uuidv4 } from './uuid-7a5e68ed.js';
6
- import { n as noop } from './utils-87dce5dd.js';
7
- import { U as UserProfileProvider } from './UserProfileContext-e5d90f15.js';
4
+ import { C as CREATE_CHANNEL$1, U as UPDATE_USER_MESSAGE, L as LEAVE_CHANNEL, S as SEND_MESSAGE_START } from './topics-1ec669f0.js';
5
+ import { u as uuidv4 } from './uuid-6ca64623.js';
6
+ import { n as noop } from './utils-c1d219fa.js';
7
+ import { U as UserProfileProvider } from './UserProfileContext-bd8525b7.js';
8
8
  import useSendbirdStateContext from './useSendbirdStateContext.js';
9
- import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-b45d3824.js';
10
- import { f as filterChannelListParams, g as getChannelsWithUpsertedChannel } from './index-425e5f17.js';
9
+ import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-09618dc3.js';
10
+ import { f as filterChannelListParams, g as getChannelsWithUpsertedChannel } from './index-bbab31f0.js';
11
11
 
12
12
  const RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';
13
13
  const CREATE_CHANNEL = 'CREATE_CHANNEL';
@@ -1071,4 +1071,4 @@ function useChannelListContext() {
1071
1071
  }
1072
1072
 
1073
1073
  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-eb4708a3.js.map
1074
+ //# sourceMappingURL=ChannelListProvider-3c78429f.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelListProvider-eb4708a3.js","sources":["../src/smart-components/ChannelList/dux/actionTypes.js","../src/smart-components/ChannelList/utils.js","../src/smart-components/ChannelList/dux/initialState.js","../src/smart-components/ChannelList/dux/reducers.js","../src/smart-components/ChannelList/context/hooks/useActiveChannelUrl.ts","../src/smart-components/ChannelList/context/ChannelListProvider.tsx"],"sourcesContent":["export const RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';\nexport const CREATE_CHANNEL = 'CREATE_CHANNEL';\nexport const USER_INVITED = 'USER_INVITED';\nexport const UNLOAD_CHANNELS = 'UNLOAD_CHANNELS';\nexport const SET_CHANNEL_LOADING = 'SET_CHANNEL_LOADING';\nexport const LEAVE_CHANNEL_SUCCESS = 'LEAVE_CHANNEL_SUCCESS';\n\nexport const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';\n\nexport const SHOW_CHANNEL_SETTINGS = 'SHOW_CHANNEL_SETTINGS';\nexport const HIDE_CHANNEL_SETTINGS = 'HIDE_CHANNEL_SETTINGS';\n\nexport const FETCH_CHANNELS_START = 'FETCH_CHANNELS_START';\nexport const FETCH_CHANNELS_SUCCESS = 'FETCH_CHANNELS_SUCCESS';\nexport const FETCH_CHANNELS_FAILURE = 'FETCH_CHANNELS_FAILURE';\n\nexport const INIT_CHANNELS_START = 'INIT_CHANNELS_START';\nexport const INIT_CHANNELS_SUCCESS = 'INIT_CHANNELS_SUCCESS';\nexport const INIT_CHANNELS_FAILURE = 'INIT_CHANNELS_FAILURE';\n\nexport const INVITE_MEMBERS_SUCESS = 'INVITE_MEMBERS_SUCESS';\n\nexport const ON_USER_JOINED = 'ON_USER_JOINED';\nexport const ON_CHANNEL_DELETED = 'ON_CHANNEL_DELETED';\nexport const ON_LAST_MESSAGE_UPDATED = 'ON_LAST_MESSAGE_UPDATED';\nexport const ON_USER_LEFT = 'ON_USER_LEFT';\nexport const ON_CHANNEL_CHANGED = 'ON_CHANNEL_CHANGED';\nexport const ON_CHANNEL_ARCHIVED = 'ON_CHANNEL_ARCHIVED';\nexport const ON_CHANNEL_FROZEN = 'ON_CHANNEL_FROZEN';\nexport const ON_CHANNEL_UNFROZEN = 'ON_CHANNEL_UNFROZEN';\n\nexport const ON_READ_RECEIPT_UPDATED = 'ON_READ_RECEIPT_UPDATED';\nexport const ON_DELIVERY_RECEIPT_UPDATED = 'ON_DELIVERY_RECEIPT_UPDATED';\n\nexport const CHANNEL_REPLACED_TO_TOP = 'CHANNEL_REPLACED_TO_TOP';\nexport const CHANNEL_LIST_PARAMS_UPDATED = 'CHANNEL_LIST_PARAMS_UPDATED';\n","import { GroupChannelHandler } from '@sendbird/chat/groupChannel';\nimport * as channelActions from './dux/actionTypes';\nimport * as topics from '../../lib/pubSub/topics';\n\nconst DELIVERY_RECIPT = 'delivery_receipt';\n\nconst createEventHandler = ({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n logger,\n}) => {\n const ChannelHandler = new GroupChannelHandler({\n onChannelChanged: (channel) => {\n logger.info('ChannelList: onChannelChanged', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_CHANGED,\n payload: channel,\n });\n },\n onChannelDeleted: (channelUrl) => {\n logger.info('ChannelList: onChannelDeleted', channelUrl);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_DELETED,\n payload: channelUrl,\n });\n },\n onUserJoined: (channel) => {\n logger.info('ChannelList: onUserJoined', channel);\n if (channel?.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_USER_JOINED,\n payload: channel,\n });\n }\n },\n onUserReceivedInvitation: (channel, inviter, invitees) => {\n logger.info('ChannelList: onUserReceivedInvitation', { channel, inviter, invitees });\n const { currentUser } = sdk;\n const isInvited = invitees.find((user) => user?.userId === currentUser?.userId);\n if (isInvited) {\n channelListDispatcher({\n type: channelActions.USER_INVITED,\n payload: channel,\n });\n }\n },\n onUserBanned: (channel, user) => {\n const { currentUser } = sdk;\n logger.info('Channel: onUserBanned', channel);\n if (user.userId === currentUser.userId) {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: true,\n },\n });\n } else {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: false,\n },\n });\n }\n },\n onUserLeft: (channel, leftUser) => {\n const { currentUser } = sdk;\n const isMe = (currentUser.userId === leftUser.userId);\n logger.info('ChannelList: onUserLeft', channel);\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe,\n },\n });\n },\n\n onReadStatus: (channel) => {\n logger.info('ChannelList: onReadStatus', channel);\n channelListDispatcher({\n type: channelActions.ON_READ_RECEIPT_UPDATED,\n payload: channel,\n });\n },\n\n onDeliveryReceiptUpdated: (channel) => {\n logger.info('ChannelList: onDeliveryReceiptUpdated', channel);\n if (channel?.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_DELIVERY_RECEIPT_UPDATED,\n payload: channel,\n });\n }\n },\n\n onMessageUpdated: (channel, message) => {\n if (channel?.lastMessage.isEqual(message)) {\n logger.info('ChannelList: onMessageUpdated', channel);\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n }\n },\n\n onChannelHidden: (channel) => {\n logger.info('ChannelList: onChannelHidden', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_ARCHIVED,\n payload: channel,\n });\n },\n\n onChannelFrozen: (channel) => {\n logger.info('ChannelList: onChannelFrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_FROZEN,\n payload: channel,\n });\n },\n\n onChannelUnfrozen: (channel) => {\n logger.info('ChannelList: onChannelUnfrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_UNFROZEN,\n payload: channel,\n });\n },\n });\n\n logger.info('ChannelList: Added channelHandler');\n sdk.groupChannel.addGroupChannelHandler(sdkChannelHandlerId, ChannelHandler);\n};\n\nconst createChannelListQuery = ({ sdk, userFilledChannelListQuery = {} }) => {\n const param = {};\n param.includeEmpty = false;\n param.limit = 20; // The value of pagination limit could be set up to 100.\n param.order = 'latest_last_message'; // 'chronological', 'latest_last_message', 'channel_name_alphabetical', and 'metadata_value_alphabetical'\n\n if (userFilledChannelListQuery) {\n Object.keys(userFilledChannelListQuery).forEach((key) => {\n param[key] = userFilledChannelListQuery[key];\n });\n }\n\n const channelListQuery = sdk.groupChannel.createMyGroupChannelListQuery(param);\n\n return channelListQuery;\n};\n\n/**\n * Setup event listener\n * create channel source query\n * addloading screen\n */\nfunction setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n setChannelsToMarkAsRead,\n}) {\n if (sdk?.groupChannel) {\n createEventHandler({\n sdk,\n channelListDispatcher,\n sdkChannelHandlerId,\n logger,\n });\n } else {\n logger.warning('ChannelList - createEventHandler: sdk or sdk.ChannelHandler does not exist', sdk);\n }\n\n logger.info('ChannelList - creating query', { userFilledChannelListQuery });\n const channelListQuery = createChannelListQuery({ sdk, userFilledChannelListQuery });\n logger.info('ChannelList - created query', channelListQuery);\n setChannelSource(channelListQuery);\n\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_START,\n });\n\n if (userFilledChannelListQuery) {\n logger.info('ChannelList - setting up channelListQuery', channelListQuery);\n channelListDispatcher({\n type: channelActions.CHANNEL_LIST_PARAMS_UPDATED,\n payload: {\n channelListQuery,\n currentUserId: sdk && sdk.currentUser && sdk.currentUser.userId,\n },\n });\n }\n\n logger.info('ChannelList - fetching channels');\n if (channelListQuery.hasNext) {\n channelListQuery.next().then((channelList) => {\n logger.info('ChannelList - fetched channels', channelList);\n // select first channel\n logger.info('ChannelList - highlight channel', channelList[0]);\n let sortedChannelList = channelList;\n if (sortChannelList && typeof sortChannelList === 'function') {\n sortedChannelList = sortChannelList(channelList);\n logger.info('ChannelList - channel list sorted', sortedChannelList);\n }\n if (!disableAutoSelect) {\n onChannelSelect(sortedChannelList[0]);\n }\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_SUCCESS,\n payload: { channelList: sortedChannelList, disableAutoSelect },\n });\n const canSetMarkAsDelivered = sdk?.appInfo?.premiumFeatureList\n ?.find((feature) => (feature === DELIVERY_RECIPT));\n\n if (canSetMarkAsDelivered) {\n setChannelsToMarkAsRead(sortedChannelList);\n }\n }).catch((err) => {\n if (err) {\n logger.error('ChannelList - couldnt fetch channels', err);\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_FAILURE,\n });\n }\n });\n } else {\n logger.info('ChannelList - there are no more channels');\n }\n}\n\nexport const pubSubHandleRemover = (subscriber) => {\n subscriber.forEach((s) => {\n try {\n s.remove();\n } catch {\n //\n }\n });\n};\n\nexport const pubSubHandler = (pubSub, channelListDispatcher) => {\n const subscriber = new Map();\n if (!pubSub) return subscriber;\n subscriber.set(topics.CREATE_CHANNEL, pubSub.subscribe(topics.CREATE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: 'CREATE_CHANNEL',\n payload: channel,\n });\n }));\n\n subscriber.set(topics.UPDATE_USER_MESSAGE, pubSub.subscribe(topics.UPDATE_USER_MESSAGE, (msg) => {\n const { channel, message } = msg;\n const updatedChannel = channel;\n if (updatedChannel?.lastMessage?.messageId === message.messageId) {\n updatedChannel.lastMessage = message;\n }\n if (channel) {\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: updatedChannel,\n });\n }\n }));\n\n subscriber.set(topics.LEAVE_CHANNEL, pubSub.subscribe(topics.LEAVE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.LEAVE_CHANNEL_SUCCESS,\n payload: channel?.url,\n });\n }));\n\n subscriber.set(topics.SEND_MESSAGE_START, pubSub.subscribe(topics.SEND_MESSAGE_START, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.CHANNEL_REPLACED_TO_TOP,\n payload: channel,\n });\n }));\n\n return subscriber;\n};\n\nexport default setupChannelList;\n","export default {\n // we might not need this initialized state -> should remove\n initialized: false,\n loading: true,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: null,\n currentUserId: '',\n disableAutoSelect: false,\n};\n","import { filterChannelListParams, getChannelsWithUpsertedChannel } from '../../../utils';\nimport * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_CHANNELS_START:\n return {\n ...state,\n loading: true,\n };\n case actions.RESET_CHANNEL_LIST:\n return initialState;\n case actions.INIT_CHANNELS_SUCCESS: {\n const { channelList, disableAutoSelect } = action.payload;\n return {\n ...state,\n initialized: true,\n loading: false,\n allChannels: channelList,\n disableAutoSelect,\n currentChannel: (\n !disableAutoSelect\n && channelList\n && channelList.length\n && channelList.length > 0\n )\n ? channelList[0]\n : null,\n };\n }\n case actions.FETCH_CHANNELS_SUCCESS: {\n const currentChannels = state.allChannels.map((c) => c.url);\n const filteredChannels = action.payload.filter(\n ({ url }) => !(currentChannels.find((c) => c === url)),\n );\n return {\n ...state,\n allChannels: [\n ...state.allChannels,\n ...filteredChannels,\n ],\n };\n }\n case actions.USER_INVITED: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n return {\n ...state,\n currentChannel: channel,\n };\n }\n return {\n ...state,\n allChannels: [channel, ...state.allChannels.filter((ch) => ch.url !== channel?.url)],\n };\n }\n case actions.CREATE_CHANNEL: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n return {\n ...state,\n currentChannel: channel,\n };\n }\n return {\n ...state,\n allChannels: [channel, ...state.allChannels.filter((ch) => ch.url !== channel?.url)],\n currentChannel: channel,\n };\n }\n case actions.ON_CHANNEL_ARCHIVED: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n // TODO: Check if we have to set current channel\n }\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n case actions.LEAVE_CHANNEL_SUCCESS:\n case actions.ON_CHANNEL_DELETED: {\n const channelUrl = action.payload;\n return {\n ...state,\n currentChannel: (channelUrl === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channelUrl),\n };\n }\n case actions.ON_USER_LEFT: {\n const { channel, isMe } = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n const filteredChannels = getChannelsWithUpsertedChannel(state.allChannels, channel);\n const nextChannel = (isMe && (channel?.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n };\n }\n const filteredChannels = state.allChannels.filter((c) => !(c.url === channel?.url && isMe));\n const nextChannel = (isMe && (channel?.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n case actions.ON_USER_JOINED:\n case actions.ON_CHANNEL_CHANGED:\n case actions.ON_READ_RECEIPT_UPDATED:\n case actions.ON_DELIVERY_RECEIPT_UPDATED: {\n const { allChannels = [] } = state;\n const channel = action.payload;\n const { unreadMessageCount } = channel;\n if (!channel?.lastMessage) return state;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(allChannels, channel),\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n };\n }\n // if its only an unread message count change, dont push to top\n if (unreadMessageCount === 0) {\n const currentChannel = allChannels.find(({ url }) => url === channel?.url);\n const currentUnreadCount = currentChannel && currentChannel.unreadMessageCount;\n if (currentUnreadCount === 0) {\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => (ch.url === channel?.url ? channel : ch)),\n };\n }\n }\n return {\n ...state,\n allChannels: [\n channel,\n ...state.allChannels.filter(({ url }) => url !== action.payload.url),\n ],\n };\n }\n case actions.SET_CURRENT_CHANNEL:\n return {\n ...state,\n currentChannel: action.payload,\n };\n case actions.SHOW_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: true,\n };\n case actions.HIDE_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: false,\n };\n case actions.ON_LAST_MESSAGE_UPDATED: {\n return {\n ...state,\n allChannels: state.allChannels.map((channel) => (\n channel?.url === action.payload.url ? action.payload : channel)),\n };\n }\n case actions.ON_CHANNEL_FROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel?.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = true;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.ON_CHANNEL_UNFROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel?.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = false;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.CHANNEL_REPLACED_TO_TOP: {\n return {\n ...state,\n allChannels: [\n action.payload,\n ...state.allChannels.filter((channel) => channel?.url !== action.payload.url),\n ],\n };\n }\n case actions.CHANNEL_LIST_PARAMS_UPDATED:\n return {\n ...state,\n currentUserId: action.payload.currentUserId,\n channelListQuery: action.payload.channelListQuery,\n };\n default:\n return state;\n }\n}\n","import { useEffect } from 'react';\nimport * as messageActionTypes from '../../dux/actionTypes';\nimport { GroupChannel, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { Logger } from '../../../../lib/SendbirdState';\n\nexport type DynamicProps = {\n activeChannelUrl?: string;\n channels?: GroupChannel[];\n sdk?: SendbirdGroupChat;\n};\n\nexport type StaticProps = {\n logger: Logger;\n channelListDispatcher: React.Dispatch<any>;\n};\n\nfunction useActiveChannelUrl({\n activeChannelUrl,\n channels,\n sdk\n}: DynamicProps, {\n logger,\n channelListDispatcher\n}: StaticProps): void {\n return useEffect(() => {\n if (activeChannelUrl) {\n logger.info('ChannelListProvider: looking for active channel', { activeChannelUrl });\n const activeChannel = channels.find(channel => channel.url === activeChannelUrl);\n if (activeChannel) {\n channelListDispatcher({\n type: messageActionTypes.SET_CURRENT_CHANNEL,\n payload: activeChannel,\n });\n } else {\n logger.info('ChannelListProvider: searching backend for active channel', { activeChannelUrl });\n sdk?.groupChannel?.getChannel(activeChannelUrl)\n .then((channel) => {\n channelListDispatcher({\n type: messageActionTypes.FETCH_CHANNELS_SUCCESS,\n payload: [channel],\n });\n channelListDispatcher({\n type: messageActionTypes.SET_CURRENT_CHANNEL,\n payload: channel,\n });\n })\n .catch(() => {\n logger.warning('ChannelListProvider: Active channel not found');\n });\n }\n }\n }, [activeChannelUrl, channels, sdk]);\n}\n\nexport default useActiveChannelUrl;\n","import React, {\n useState,\n useEffect,\n useContext,\n useReducer,\n useMemo,\n} from 'react';\n\nimport type { User } from '@sendbird/chat';\nimport {\n GroupChannel,\n GroupChannelCreateParams,\n GroupChannelHandler,\n SendbirdGroupChat,\n GroupChannelListQuery as GroupChannelListQuerySb,\n GroupChannelUserIdsFilter,\n} from '@sendbird/chat/groupChannel';\n\nimport { RenderUserProfileProps } from '../../../types';\n\nimport setupChannelList, {\n pubSubHandler,\n pubSubHandleRemover,\n} from '../utils';\nimport { uuidv4 } from '../../../utils/uuid';\nimport { noop } from '../../../utils/utils';\n\nimport * as channelListActions from '../dux/actionTypes';\n\nimport { UserProfileProvider } from '../../../lib/UserProfileContext';\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { CustomUseReducerDispatcher } from '../../../lib/SendbirdState';\nimport channelListReducers from '../dux/reducers';\nimport channelListInitialState from '../dux/initialState';\nimport { CHANNEL_TYPE } from '../../CreateChannel/types';\nimport useActiveChannelUrl from './hooks/useActiveChannelUrl';\n\ninterface ApplicationUserListQuery {\n limit?: number;\n userIdsFilter?: Array<string>;\n metaDataKeyFilter?: string;\n metaDataValuesFilter?: Array<string>;\n}\n\ninterface GroupChannelListQuery {\n limit?: number;\n includeEmpty?: boolean;\n order?: 'latest_last_message' | 'chronological' | 'channel_name_alphabetical' | 'metadata_value_alphabetical';\n userIdsExactFilter?: Array<string>;\n userIdsIncludeFilter?: Array<string>;\n userIdsIncludeFilterQueryType?: 'AND' | 'OR';\n nicknameContainsFilter?: string;\n channelNameContainsFilter?: string;\n customTypesFilter?: Array<string>;\n customTypeStartsWithFilter?: string;\n channelUrlsFilter?: Array<string>;\n superChannelFilter?: 'all' | 'super' | 'nonsuper';\n publicChannelFilter?: 'all' | 'public' | 'private';\n metadataOrderKeyFilter?: string;\n memberStateFilter?: 'all' | 'joined_only' | 'invited_only' | 'invited_by_friend' | 'invited_by_non_friend';\n hiddenChannelFilter?: 'unhidden_only' | 'hidden_only' | 'hidden_allow_auto_unhide' | 'hidden_prevent_auto_unhide';\n unreadChannelFilter?: 'all' | 'unread_message';\n includeFrozen?: boolean;\n userIdsFilter?: GroupChannelUserIdsFilter;\n}\n\ninterface ChannelListQueries {\n applicationUserListQuery?: ApplicationUserListQuery;\n channelListQuery?: GroupChannelListQuery;\n}\n\ntype OverrideInviteUserType = {\n users: Array<string>;\n onClose: () => void;\n channelType: CHANNEL_TYPE;\n};\n\nexport interface ChannelListProviderProps {\n allowProfileEdit?: boolean;\n onBeforeCreateChannel?(users: Array<string>): GroupChannelCreateParams;\n overrideInviteUser?(params: OverrideInviteUserType): void;\n onThemeChange?(theme: string): void;\n onProfileEditSuccess?(user: User): void;\n onChannelSelect?(channel: GroupChannel): void;\n sortChannelList?: (channels: GroupChannel[]) => GroupChannel[];\n queries?: ChannelListQueries;\n children?: React.ReactElement;\n className?: string | string[];\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactElement;\n disableUserProfile?: boolean;\n disableAutoSelect?: boolean;\n activeChannelUrl?: string;\n typingChannels?: Array<GroupChannel>;\n isTypingIndicatorEnabled?: boolean;\n isMessageReceiptStatusEnabled?: boolean;\n}\n\nexport interface ChannelListProviderInterface extends ChannelListProviderProps {\n initialized: boolean;\n loading: boolean;\n allChannels: GroupChannel[];\n currentChannel: GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n channelListDispatcher: CustomUseReducerDispatcher;\n channelSource: GroupChannelListQuerySb;\n}\n\ninterface ChannelListStoreInterface {\n initialized: boolean;\n loading: boolean;\n allChannels: GroupChannel[];\n currentChannel: GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n disableAutoSelect: boolean;\n}\n\nconst ChannelListContext = React.createContext<ChannelListProviderInterface | null>({\n disableUserProfile: true,\n allowProfileEdit: true,\n onBeforeCreateChannel: null,\n onThemeChange: null,\n onProfileEditSuccess: null,\n onChannelSelect: null,\n queries: {},\n className: null,\n initialized: false,\n loading: false,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: {},\n currentUserId: null,\n channelListDispatcher: null,\n channelSource: null,\n typingChannels: [],\n});\n\nconst ChannelListProvider: React.FC<ChannelListProviderProps> = (props: ChannelListProviderProps) => {\n // destruct props\n const {\n children,\n className,\n disableUserProfile,\n allowProfileEdit,\n queries,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n sortChannelList,\n overrideInviteUser,\n activeChannelUrl,\n isTypingIndicatorEnabled = null,\n isMessageReceiptStatusEnabled = null,\n } = props;\n // disable autoselect, if activeChannelUrl is provided\n // useActiveChannelUrl should be executed when activeChannelUrl is present\n const disableAutoSelect = props?.disableAutoSelect || !!activeChannelUrl;\n const onChannelSelect = props?.onChannelSelect || noop;\n // fetch store from <SendbirdProvider />\n const globalStore = useSendbirdStateContext();\n const { config, stores } = globalStore;\n const { sdkStore } = stores;\n const { pubSub, logger, onUserProfileMessage } = config;\n const {\n disableMarkAsDelivered = false,\n isTypingIndicatorEnabledOnChannelList = false,\n isMessageReceiptStatusEnabledOnChannelList = false,\n } = config;\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n\n // derive some variables\n // enable if it is true atleast once(both are flase by default)\n const userDefinedDisableUserProfile = disableUserProfile || config?.disableUserProfile;\n const userDefinedRenderProfile = config?.renderUserProfile;\n const enableEditProfile = allowProfileEdit || config?.allowProfileEdit;\n\n const userFilledChannelListQuery = queries?.channelListQuery;\n const userFilledApplicationUserListQuery = queries?.applicationUserListQuery;\n\n const sdkIntialized = sdkStore?.initialized;\n\n const [channelListStore, channelListDispatcher] = useReducer(\n channelListReducers,\n channelListInitialState,\n ) as [ChannelListStoreInterface, CustomUseReducerDispatcher];\n const { loading, currentChannel } = channelListStore;\n\n const [channelSource, setChannelSource] = useState<GroupChannelListQuerySb>();\n const [typingChannels, setTypingChannels] = useState<Array<GroupChannel>>([]);\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 useEffect(() => {\n const subscriber = pubSubHandler(pubSub, channelListDispatcher);\n return () => {\n pubSubHandleRemover(subscriber);\n };\n }, [sdkIntialized]);\n\n useEffect(() => {\n const sdkChannelHandlerId = uuidv4();\n if (sdkIntialized) {\n logger.info('ChannelList: Setup channelHandlers');\n setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n setChannelsToMarkAsRead,\n });\n } else {\n logger.info('ChannelList: Removing channelHandlers');\n // remove previous channelHandlers\n if (sdk?.groupChannel?.removeGroupChannelHandler) {\n sdk.groupChannel.removeGroupChannelHandler(sdkChannelHandlerId);\n }\n // remove channelSource\n setChannelSource(null);\n // cleanup\n channelListDispatcher({\n type: channelListActions.RESET_CHANNEL_LIST,\n payload: null,\n });\n }\n return () => {\n logger.info('ChannelList: Removing channelHandlers');\n if (sdk?.groupChannel?.removeGroupChannelHandler) {\n sdk?.groupChannel?.removeGroupChannelHandler(sdkChannelHandlerId);\n }\n };\n }, [sdkIntialized, userFilledChannelListQuery, sortChannelList]);\n\n useEffect(() => {\n let typingHandlerId = null;\n if (sdk?.groupChannel?.addGroupChannelHandler) {\n typingHandlerId = uuidv4();\n const handler = new GroupChannelHandler({\n onTypingStatusUpdated: (channel) => {\n const typingMemberCount = channel?.getTypingUsers()?.length\n const channelList = typingChannels.filter(ch => ch.url !== channel.url)\n if (typingMemberCount > 0) {\n setTypingChannels([...channelList, channel])\n } else {\n setTypingChannels(channelList)\n }\n },\n onUnreadMemberStatusUpdated(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n },\n onUndeliveredMemberStatusUpdated(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n },\n onMessageUpdated(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n sdk.groupChannel.getChannelWithoutCache(channel.url)\n .then((ch) => {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: ch,\n });\n });\n },\n onMentionReceived(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n sdk.groupChannel.getChannelWithoutCache(channel.url)\n .then((ch) => {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: ch,\n });\n });\n },\n });\n sdk?.groupChannel?.addGroupChannelHandler(typingHandlerId, handler);\n }\n return () => {\n if (sdk?.groupChannel?.removeGroupChannelHandler && typingHandlerId) {\n sdk.groupChannel.removeGroupChannelHandler(typingHandlerId);\n }\n }\n }, [sdk?.currentUser?.userId]);\n\n const queries_ = useMemo(() => {\n return {\n applicationUserListQuery: userFilledApplicationUserListQuery,\n channelListQuery: userFilledChannelListQuery,\n };\n }, [\n userFilledApplicationUserListQuery,\n userFilledChannelListQuery,\n ])\n\n const { allChannels } = channelListStore;\n const sortedChannels = (sortChannelList && typeof sortChannelList === 'function')\n ? sortChannelList(allChannels)\n : allChannels;\n\n if (sortedChannels.length !== allChannels.length) {\n const warning = `ChannelList: You have removed/added extra channels on sortChannelList\n this could cause unexpected problems`;\n // eslint-disable-next-line no-console\n console.warn(warning, { before: allChannels, after: sortedChannels });\n logger.warning(warning, { before: allChannels, after: sortedChannels });\n }\n\n // Set current channel (by on_channel_selected event)\n useEffect(() => {\n if (!sdk || !sdk.groupChannel || !currentChannel || !currentChannel?.url) {\n return;\n }\n sdk.groupChannel.getChannel(currentChannel.url).then((groupChannel) => {\n if (groupChannel) {\n onChannelSelect(groupChannel);\n } else {\n onChannelSelect(null);\n }\n });\n }, [currentChannel?.url]);\n\n // Set active channel (by url)\n useActiveChannelUrl({\n activeChannelUrl,\n channels: sortedChannels,\n sdk,\n } , {\n logger,\n channelListDispatcher,\n });\n\n return (\n <ChannelListContext.Provider value={{\n className,\n disableUserProfile,\n queries: queries_,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n overrideInviteUser,\n onChannelSelect,\n sortChannelList,\n loading,\n allowProfileEdit: enableEditProfile,\n channelListDispatcher,\n channelSource,\n ...channelListStore,\n allChannels: sortedChannels,\n typingChannels,\n isTypingIndicatorEnabled: (isTypingIndicatorEnabled !== null) ? isTypingIndicatorEnabled : isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabled: (isMessageReceiptStatusEnabled !== null) ? isMessageReceiptStatusEnabled : isMessageReceiptStatusEnabledOnChannelList,\n }}>\n <UserProfileProvider\n disableUserProfile={userDefinedDisableUserProfile}\n renderUserProfile={userDefinedRenderProfile}\n onUserProfileMessage={onUserProfileMessage}\n >\n <div className={`sendbird-channel-list ${className}`}>\n {children}\n </div>\n </UserProfileProvider>\n </ChannelListContext.Provider>\n );\n};\n\nfunction useChannelListContext(): ChannelListProviderInterface {\n const context: ChannelListProviderInterface = useContext(ChannelListContext);\n return context;\n}\n\nexport {\n ChannelListProvider,\n useChannelListContext,\n};\n"],"names":["RESET_CHANNEL_LIST","CREATE_CHANNEL","USER_INVITED","LEAVE_CHANNEL_SUCCESS","SET_CURRENT_CHANNEL","SHOW_CHANNEL_SETTINGS","HIDE_CHANNEL_SETTINGS","FETCH_CHANNELS_START","FETCH_CHANNELS_SUCCESS","FETCH_CHANNELS_FAILURE","INIT_CHANNELS_START","INIT_CHANNELS_SUCCESS","INIT_CHANNELS_FAILURE","ON_USER_JOINED","ON_CHANNEL_DELETED","ON_LAST_MESSAGE_UPDATED","ON_USER_LEFT","ON_CHANNEL_CHANGED","ON_CHANNEL_ARCHIVED","ON_CHANNEL_FROZEN","ON_CHANNEL_UNFROZEN","ON_READ_RECEIPT_UPDATED","ON_DELIVERY_RECEIPT_UPDATED","CHANNEL_REPLACED_TO_TOP","CHANNEL_LIST_PARAMS_UPDATED","DELIVERY_RECIPT","createEventHandler","sdk","sdkChannelHandlerId","channelListDispatcher","logger","ChannelHandler","GroupChannelHandler","onChannelChanged","channel","info","type","channelActions","payload","onChannelDeleted","channelUrl","onUserJoined","lastMessage","onUserReceivedInvitation","inviter","invitees","currentUser","isInvited","find","user","userId","onUserBanned","isMe","onUserLeft","leftUser","onReadStatus","onDeliveryReceiptUpdated","onMessageUpdated","message","isEqual","onChannelHidden","onChannelFrozen","onChannelUnfrozen","groupChannel","addGroupChannelHandler","createChannelListQuery","userFilledChannelListQuery","param","includeEmpty","limit","order","Object","keys","forEach","key","channelListQuery","createMyGroupChannelListQuery","setupChannelList","setChannelSource","onChannelSelect","sortChannelList","disableAutoSelect","setChannelsToMarkAsRead","warning","currentUserId","hasNext","next","then","channelList","sortedChannelList","canSetMarkAsDelivered","appInfo","premiumFeatureList","feature","catch","err","error","pubSubHandleRemover","subscriber","s","remove","pubSubHandler","pubSub","Map","set","topics","subscribe","msg","updatedChannel","messageId","url","initialized","loading","allChannels","currentChannel","showSettings","reducer","state","action","actions","_objectSpread","initialState","length","currentChannels","map","c","filteredChannels","filter","filterChannelListParams","getChannelsWithUpsertedChannel","ch","nextChannel","unreadMessageCount","currentUnreadCount","isFrozen","useActiveChannelUrl","_a","_b","activeChannelUrl","channels","useEffect","activeChannel","messageActionTypes","getChannel","ChannelListContext","React","createContext","disableUserProfile","allowProfileEdit","onBeforeCreateChannel","onThemeChange","onProfileEditSuccess","queries","className","channelSource","typingChannels","ChannelListProvider","props","children","overrideInviteUser","isTypingIndicatorEnabled","_c","isMessageReceiptStatusEnabled","noop","globalStore","useSendbirdStateContext","config","stores","sdkStore","onUserProfileMessage","_d","disableMarkAsDelivered","_e","isTypingIndicatorEnabledOnChannelList","_f","isMessageReceiptStatusEnabledOnChannelList","userDefinedDisableUserProfile","userDefinedRenderProfile","renderUserProfile","enableEditProfile","userFilledApplicationUserListQuery","applicationUserListQuery","sdkIntialized","_g","useReducer","channelListReducers","channelListInitialState","channelListStore","_h","useState","_j","setTypingChannels","_k","channelsTomarkAsRead","isMounted","idx","setTimeout","markAsDelivered","uuidv4","removeGroupChannelHandler","channelListActions","typingHandlerId","handler","onTypingStatusUpdated","typingMemberCount","getTypingUsers","__spreadArray","onUnreadMemberStatusUpdated","onUndeliveredMemberStatusUpdated","getChannelWithoutCache","onMentionReceived","queries_","useMemo","sortedChannels","console","warn","before","after","__assign","concat","useChannelListContext","context","useContext"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelListProvider-3c78429f.js","sources":["../src/smart-components/ChannelList/dux/actionTypes.js","../src/smart-components/ChannelList/utils.js","../src/smart-components/ChannelList/dux/initialState.js","../src/smart-components/ChannelList/dux/reducers.js","../src/smart-components/ChannelList/context/hooks/useActiveChannelUrl.ts","../src/smart-components/ChannelList/context/ChannelListProvider.tsx"],"sourcesContent":["export const RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';\nexport const CREATE_CHANNEL = 'CREATE_CHANNEL';\nexport const USER_INVITED = 'USER_INVITED';\nexport const UNLOAD_CHANNELS = 'UNLOAD_CHANNELS';\nexport const SET_CHANNEL_LOADING = 'SET_CHANNEL_LOADING';\nexport const LEAVE_CHANNEL_SUCCESS = 'LEAVE_CHANNEL_SUCCESS';\n\nexport const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';\n\nexport const SHOW_CHANNEL_SETTINGS = 'SHOW_CHANNEL_SETTINGS';\nexport const HIDE_CHANNEL_SETTINGS = 'HIDE_CHANNEL_SETTINGS';\n\nexport const FETCH_CHANNELS_START = 'FETCH_CHANNELS_START';\nexport const FETCH_CHANNELS_SUCCESS = 'FETCH_CHANNELS_SUCCESS';\nexport const FETCH_CHANNELS_FAILURE = 'FETCH_CHANNELS_FAILURE';\n\nexport const INIT_CHANNELS_START = 'INIT_CHANNELS_START';\nexport const INIT_CHANNELS_SUCCESS = 'INIT_CHANNELS_SUCCESS';\nexport const INIT_CHANNELS_FAILURE = 'INIT_CHANNELS_FAILURE';\n\nexport const INVITE_MEMBERS_SUCESS = 'INVITE_MEMBERS_SUCESS';\n\nexport const ON_USER_JOINED = 'ON_USER_JOINED';\nexport const ON_CHANNEL_DELETED = 'ON_CHANNEL_DELETED';\nexport const ON_LAST_MESSAGE_UPDATED = 'ON_LAST_MESSAGE_UPDATED';\nexport const ON_USER_LEFT = 'ON_USER_LEFT';\nexport const ON_CHANNEL_CHANGED = 'ON_CHANNEL_CHANGED';\nexport const ON_CHANNEL_ARCHIVED = 'ON_CHANNEL_ARCHIVED';\nexport const ON_CHANNEL_FROZEN = 'ON_CHANNEL_FROZEN';\nexport const ON_CHANNEL_UNFROZEN = 'ON_CHANNEL_UNFROZEN';\n\nexport const ON_READ_RECEIPT_UPDATED = 'ON_READ_RECEIPT_UPDATED';\nexport const ON_DELIVERY_RECEIPT_UPDATED = 'ON_DELIVERY_RECEIPT_UPDATED';\n\nexport const CHANNEL_REPLACED_TO_TOP = 'CHANNEL_REPLACED_TO_TOP';\nexport const CHANNEL_LIST_PARAMS_UPDATED = 'CHANNEL_LIST_PARAMS_UPDATED';\n","import { GroupChannelHandler } from '@sendbird/chat/groupChannel';\nimport * as channelActions from './dux/actionTypes';\nimport * as topics from '../../lib/pubSub/topics';\n\nconst DELIVERY_RECIPT = 'delivery_receipt';\n\nconst createEventHandler = ({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n logger,\n}) => {\n const ChannelHandler = new GroupChannelHandler({\n onChannelChanged: (channel) => {\n logger.info('ChannelList: onChannelChanged', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_CHANGED,\n payload: channel,\n });\n },\n onChannelDeleted: (channelUrl) => {\n logger.info('ChannelList: onChannelDeleted', channelUrl);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_DELETED,\n payload: channelUrl,\n });\n },\n onUserJoined: (channel) => {\n logger.info('ChannelList: onUserJoined', channel);\n if (channel?.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_USER_JOINED,\n payload: channel,\n });\n }\n },\n onUserReceivedInvitation: (channel, inviter, invitees) => {\n logger.info('ChannelList: onUserReceivedInvitation', { channel, inviter, invitees });\n const { currentUser } = sdk;\n const isInvited = invitees.find((user) => user?.userId === currentUser?.userId);\n if (isInvited) {\n channelListDispatcher({\n type: channelActions.USER_INVITED,\n payload: channel,\n });\n }\n },\n onUserBanned: (channel, user) => {\n const { currentUser } = sdk;\n logger.info('Channel: onUserBanned', channel);\n if (user.userId === currentUser.userId) {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: true,\n },\n });\n } else {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: false,\n },\n });\n }\n },\n onUserLeft: (channel, leftUser) => {\n const { currentUser } = sdk;\n const isMe = (currentUser.userId === leftUser.userId);\n logger.info('ChannelList: onUserLeft', channel);\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe,\n },\n });\n },\n\n onReadStatus: (channel) => {\n logger.info('ChannelList: onReadStatus', channel);\n channelListDispatcher({\n type: channelActions.ON_READ_RECEIPT_UPDATED,\n payload: channel,\n });\n },\n\n onDeliveryReceiptUpdated: (channel) => {\n logger.info('ChannelList: onDeliveryReceiptUpdated', channel);\n if (channel?.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_DELIVERY_RECEIPT_UPDATED,\n payload: channel,\n });\n }\n },\n\n onMessageUpdated: (channel, message) => {\n if (channel?.lastMessage.isEqual(message)) {\n logger.info('ChannelList: onMessageUpdated', channel);\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n }\n },\n\n onChannelHidden: (channel) => {\n logger.info('ChannelList: onChannelHidden', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_ARCHIVED,\n payload: channel,\n });\n },\n\n onChannelFrozen: (channel) => {\n logger.info('ChannelList: onChannelFrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_FROZEN,\n payload: channel,\n });\n },\n\n onChannelUnfrozen: (channel) => {\n logger.info('ChannelList: onChannelUnfrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_UNFROZEN,\n payload: channel,\n });\n },\n });\n\n logger.info('ChannelList: Added channelHandler');\n sdk.groupChannel.addGroupChannelHandler(sdkChannelHandlerId, ChannelHandler);\n};\n\nconst createChannelListQuery = ({ sdk, userFilledChannelListQuery = {} }) => {\n const param = {};\n param.includeEmpty = false;\n param.limit = 20; // The value of pagination limit could be set up to 100.\n param.order = 'latest_last_message'; // 'chronological', 'latest_last_message', 'channel_name_alphabetical', and 'metadata_value_alphabetical'\n\n if (userFilledChannelListQuery) {\n Object.keys(userFilledChannelListQuery).forEach((key) => {\n param[key] = userFilledChannelListQuery[key];\n });\n }\n\n const channelListQuery = sdk.groupChannel.createMyGroupChannelListQuery(param);\n\n return channelListQuery;\n};\n\n/**\n * Setup event listener\n * create channel source query\n * addloading screen\n */\nfunction setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n setChannelsToMarkAsRead,\n}) {\n if (sdk?.groupChannel) {\n createEventHandler({\n sdk,\n channelListDispatcher,\n sdkChannelHandlerId,\n logger,\n });\n } else {\n logger.warning('ChannelList - createEventHandler: sdk or sdk.ChannelHandler does not exist', sdk);\n }\n\n logger.info('ChannelList - creating query', { userFilledChannelListQuery });\n const channelListQuery = createChannelListQuery({ sdk, userFilledChannelListQuery });\n logger.info('ChannelList - created query', channelListQuery);\n setChannelSource(channelListQuery);\n\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_START,\n });\n\n if (userFilledChannelListQuery) {\n logger.info('ChannelList - setting up channelListQuery', channelListQuery);\n channelListDispatcher({\n type: channelActions.CHANNEL_LIST_PARAMS_UPDATED,\n payload: {\n channelListQuery,\n currentUserId: sdk && sdk.currentUser && sdk.currentUser.userId,\n },\n });\n }\n\n logger.info('ChannelList - fetching channels');\n if (channelListQuery.hasNext) {\n channelListQuery.next().then((channelList) => {\n logger.info('ChannelList - fetched channels', channelList);\n // select first channel\n logger.info('ChannelList - highlight channel', channelList[0]);\n let sortedChannelList = channelList;\n if (sortChannelList && typeof sortChannelList === 'function') {\n sortedChannelList = sortChannelList(channelList);\n logger.info('ChannelList - channel list sorted', sortedChannelList);\n }\n if (!disableAutoSelect) {\n onChannelSelect(sortedChannelList[0]);\n }\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_SUCCESS,\n payload: { channelList: sortedChannelList, disableAutoSelect },\n });\n const canSetMarkAsDelivered = sdk?.appInfo?.premiumFeatureList\n ?.find((feature) => (feature === DELIVERY_RECIPT));\n\n if (canSetMarkAsDelivered) {\n setChannelsToMarkAsRead(sortedChannelList);\n }\n }).catch((err) => {\n if (err) {\n logger.error('ChannelList - couldnt fetch channels', err);\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_FAILURE,\n });\n }\n });\n } else {\n logger.info('ChannelList - there are no more channels');\n }\n}\n\nexport const pubSubHandleRemover = (subscriber) => {\n subscriber.forEach((s) => {\n try {\n s.remove();\n } catch {\n //\n }\n });\n};\n\nexport const pubSubHandler = (pubSub, channelListDispatcher) => {\n const subscriber = new Map();\n if (!pubSub) return subscriber;\n subscriber.set(topics.CREATE_CHANNEL, pubSub.subscribe(topics.CREATE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: 'CREATE_CHANNEL',\n payload: channel,\n });\n }));\n\n subscriber.set(topics.UPDATE_USER_MESSAGE, pubSub.subscribe(topics.UPDATE_USER_MESSAGE, (msg) => {\n const { channel, message } = msg;\n const updatedChannel = channel;\n if (updatedChannel?.lastMessage?.messageId === message.messageId) {\n updatedChannel.lastMessage = message;\n }\n if (channel) {\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: updatedChannel,\n });\n }\n }));\n\n subscriber.set(topics.LEAVE_CHANNEL, pubSub.subscribe(topics.LEAVE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.LEAVE_CHANNEL_SUCCESS,\n payload: channel?.url,\n });\n }));\n\n subscriber.set(topics.SEND_MESSAGE_START, pubSub.subscribe(topics.SEND_MESSAGE_START, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.CHANNEL_REPLACED_TO_TOP,\n payload: channel,\n });\n }));\n\n return subscriber;\n};\n\nexport default setupChannelList;\n","export default {\n // we might not need this initialized state -> should remove\n initialized: false,\n loading: true,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: null,\n currentUserId: '',\n disableAutoSelect: false,\n};\n","import { filterChannelListParams, getChannelsWithUpsertedChannel } from '../../../utils';\nimport * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_CHANNELS_START:\n return {\n ...state,\n loading: true,\n };\n case actions.RESET_CHANNEL_LIST:\n return initialState;\n case actions.INIT_CHANNELS_SUCCESS: {\n const { channelList, disableAutoSelect } = action.payload;\n return {\n ...state,\n initialized: true,\n loading: false,\n allChannels: channelList,\n disableAutoSelect,\n currentChannel: (\n !disableAutoSelect\n && channelList\n && channelList.length\n && channelList.length > 0\n )\n ? channelList[0]\n : null,\n };\n }\n case actions.FETCH_CHANNELS_SUCCESS: {\n const currentChannels = state.allChannels.map((c) => c.url);\n const filteredChannels = action.payload.filter(\n ({ url }) => !(currentChannels.find((c) => c === url)),\n );\n return {\n ...state,\n allChannels: [\n ...state.allChannels,\n ...filteredChannels,\n ],\n };\n }\n case actions.USER_INVITED: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n return {\n ...state,\n currentChannel: channel,\n };\n }\n return {\n ...state,\n allChannels: [channel, ...state.allChannels.filter((ch) => ch.url !== channel?.url)],\n };\n }\n case actions.CREATE_CHANNEL: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n return {\n ...state,\n currentChannel: channel,\n };\n }\n return {\n ...state,\n allChannels: [channel, ...state.allChannels.filter((ch) => ch.url !== channel?.url)],\n currentChannel: channel,\n };\n }\n case actions.ON_CHANNEL_ARCHIVED: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n // TODO: Check if we have to set current channel\n }\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n case actions.LEAVE_CHANNEL_SUCCESS:\n case actions.ON_CHANNEL_DELETED: {\n const channelUrl = action.payload;\n return {\n ...state,\n currentChannel: (channelUrl === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channelUrl),\n };\n }\n case actions.ON_USER_LEFT: {\n const { channel, isMe } = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n const filteredChannels = getChannelsWithUpsertedChannel(state.allChannels, channel);\n const nextChannel = (isMe && (channel?.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n };\n }\n const filteredChannels = state.allChannels.filter((c) => !(c.url === channel?.url && isMe));\n const nextChannel = (isMe && (channel?.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n case actions.ON_USER_JOINED:\n case actions.ON_CHANNEL_CHANGED:\n case actions.ON_READ_RECEIPT_UPDATED:\n case actions.ON_DELIVERY_RECEIPT_UPDATED: {\n const { allChannels = [] } = state;\n const channel = action.payload;\n const { unreadMessageCount } = channel;\n if (!channel?.lastMessage) return state;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(allChannels, channel),\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n };\n }\n // if its only an unread message count change, dont push to top\n if (unreadMessageCount === 0) {\n const currentChannel = allChannels.find(({ url }) => url === channel?.url);\n const currentUnreadCount = currentChannel && currentChannel.unreadMessageCount;\n if (currentUnreadCount === 0) {\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => (ch.url === channel?.url ? channel : ch)),\n };\n }\n }\n return {\n ...state,\n allChannels: [\n channel,\n ...state.allChannels.filter(({ url }) => url !== action.payload.url),\n ],\n };\n }\n case actions.SET_CURRENT_CHANNEL:\n return {\n ...state,\n currentChannel: action.payload,\n };\n case actions.SHOW_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: true,\n };\n case actions.HIDE_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: false,\n };\n case actions.ON_LAST_MESSAGE_UPDATED: {\n return {\n ...state,\n allChannels: state.allChannels.map((channel) => (\n channel?.url === action.payload.url ? action.payload : channel)),\n };\n }\n case actions.ON_CHANNEL_FROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel?.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = true;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.ON_CHANNEL_UNFROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel?.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = false;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.CHANNEL_REPLACED_TO_TOP: {\n return {\n ...state,\n allChannels: [\n action.payload,\n ...state.allChannels.filter((channel) => channel?.url !== action.payload.url),\n ],\n };\n }\n case actions.CHANNEL_LIST_PARAMS_UPDATED:\n return {\n ...state,\n currentUserId: action.payload.currentUserId,\n channelListQuery: action.payload.channelListQuery,\n };\n default:\n return state;\n }\n}\n","import { useEffect } from 'react';\nimport * as messageActionTypes from '../../dux/actionTypes';\nimport { GroupChannel, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { Logger } from '../../../../lib/SendbirdState';\n\nexport type DynamicProps = {\n activeChannelUrl?: string;\n channels?: GroupChannel[];\n sdk?: SendbirdGroupChat;\n};\n\nexport type StaticProps = {\n logger: Logger;\n channelListDispatcher: React.Dispatch<any>;\n};\n\nfunction useActiveChannelUrl({\n activeChannelUrl,\n channels,\n sdk\n}: DynamicProps, {\n logger,\n channelListDispatcher\n}: StaticProps): void {\n return useEffect(() => {\n if (activeChannelUrl) {\n logger.info('ChannelListProvider: looking for active channel', { activeChannelUrl });\n const activeChannel = channels.find(channel => channel.url === activeChannelUrl);\n if (activeChannel) {\n channelListDispatcher({\n type: messageActionTypes.SET_CURRENT_CHANNEL,\n payload: activeChannel,\n });\n } else {\n logger.info('ChannelListProvider: searching backend for active channel', { activeChannelUrl });\n sdk?.groupChannel?.getChannel(activeChannelUrl)\n .then((channel) => {\n channelListDispatcher({\n type: messageActionTypes.FETCH_CHANNELS_SUCCESS,\n payload: [channel],\n });\n channelListDispatcher({\n type: messageActionTypes.SET_CURRENT_CHANNEL,\n payload: channel,\n });\n })\n .catch(() => {\n logger.warning('ChannelListProvider: Active channel not found');\n });\n }\n }\n }, [activeChannelUrl, channels, sdk]);\n}\n\nexport default useActiveChannelUrl;\n","import React, {\n useState,\n useEffect,\n useContext,\n useReducer,\n useMemo,\n} from 'react';\n\nimport type { User } from '@sendbird/chat';\nimport {\n GroupChannel,\n GroupChannelCreateParams,\n GroupChannelHandler,\n SendbirdGroupChat,\n GroupChannelListQuery as GroupChannelListQuerySb,\n GroupChannelUserIdsFilter,\n} from '@sendbird/chat/groupChannel';\n\nimport { RenderUserProfileProps } from '../../../types';\n\nimport setupChannelList, {\n pubSubHandler,\n pubSubHandleRemover,\n} from '../utils';\nimport { uuidv4 } from '../../../utils/uuid';\nimport { noop } from '../../../utils/utils';\n\nimport * as channelListActions from '../dux/actionTypes';\n\nimport { UserProfileProvider } from '../../../lib/UserProfileContext';\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { CustomUseReducerDispatcher } from '../../../lib/SendbirdState';\nimport channelListReducers from '../dux/reducers';\nimport channelListInitialState from '../dux/initialState';\nimport { CHANNEL_TYPE } from '../../CreateChannel/types';\nimport useActiveChannelUrl from './hooks/useActiveChannelUrl';\n\ninterface ApplicationUserListQuery {\n limit?: number;\n userIdsFilter?: Array<string>;\n metaDataKeyFilter?: string;\n metaDataValuesFilter?: Array<string>;\n}\n\ninterface GroupChannelListQuery {\n limit?: number;\n includeEmpty?: boolean;\n order?: 'latest_last_message' | 'chronological' | 'channel_name_alphabetical' | 'metadata_value_alphabetical';\n userIdsExactFilter?: Array<string>;\n userIdsIncludeFilter?: Array<string>;\n userIdsIncludeFilterQueryType?: 'AND' | 'OR';\n nicknameContainsFilter?: string;\n channelNameContainsFilter?: string;\n customTypesFilter?: Array<string>;\n customTypeStartsWithFilter?: string;\n channelUrlsFilter?: Array<string>;\n superChannelFilter?: 'all' | 'super' | 'nonsuper';\n publicChannelFilter?: 'all' | 'public' | 'private';\n metadataOrderKeyFilter?: string;\n memberStateFilter?: 'all' | 'joined_only' | 'invited_only' | 'invited_by_friend' | 'invited_by_non_friend';\n hiddenChannelFilter?: 'unhidden_only' | 'hidden_only' | 'hidden_allow_auto_unhide' | 'hidden_prevent_auto_unhide';\n unreadChannelFilter?: 'all' | 'unread_message';\n includeFrozen?: boolean;\n userIdsFilter?: GroupChannelUserIdsFilter;\n}\n\ninterface ChannelListQueries {\n applicationUserListQuery?: ApplicationUserListQuery;\n channelListQuery?: GroupChannelListQuery;\n}\n\ntype OverrideInviteUserType = {\n users: Array<string>;\n onClose: () => void;\n channelType: CHANNEL_TYPE;\n};\n\nexport interface ChannelListProviderProps {\n allowProfileEdit?: boolean;\n onBeforeCreateChannel?(users: Array<string>): GroupChannelCreateParams;\n overrideInviteUser?(params: OverrideInviteUserType): void;\n onThemeChange?(theme: string): void;\n onProfileEditSuccess?(user: User): void;\n onChannelSelect?(channel: GroupChannel): void;\n sortChannelList?: (channels: GroupChannel[]) => GroupChannel[];\n queries?: ChannelListQueries;\n children?: React.ReactElement;\n className?: string | string[];\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactElement;\n disableUserProfile?: boolean;\n disableAutoSelect?: boolean;\n activeChannelUrl?: string;\n typingChannels?: Array<GroupChannel>;\n isTypingIndicatorEnabled?: boolean;\n isMessageReceiptStatusEnabled?: boolean;\n}\n\nexport interface ChannelListProviderInterface extends ChannelListProviderProps {\n initialized: boolean;\n loading: boolean;\n allChannels: GroupChannel[];\n currentChannel: GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n channelListDispatcher: CustomUseReducerDispatcher;\n channelSource: GroupChannelListQuerySb;\n}\n\ninterface ChannelListStoreInterface {\n initialized: boolean;\n loading: boolean;\n allChannels: GroupChannel[];\n currentChannel: GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n disableAutoSelect: boolean;\n}\n\nconst ChannelListContext = React.createContext<ChannelListProviderInterface | null>({\n disableUserProfile: true,\n allowProfileEdit: true,\n onBeforeCreateChannel: null,\n onThemeChange: null,\n onProfileEditSuccess: null,\n onChannelSelect: null,\n queries: {},\n className: null,\n initialized: false,\n loading: false,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: {},\n currentUserId: null,\n channelListDispatcher: null,\n channelSource: null,\n typingChannels: [],\n});\n\nconst ChannelListProvider: React.FC<ChannelListProviderProps> = (props: ChannelListProviderProps) => {\n // destruct props\n const {\n children,\n className,\n disableUserProfile,\n allowProfileEdit,\n queries,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n sortChannelList,\n overrideInviteUser,\n activeChannelUrl,\n isTypingIndicatorEnabled = null,\n isMessageReceiptStatusEnabled = null,\n } = props;\n // disable autoselect, if activeChannelUrl is provided\n // useActiveChannelUrl should be executed when activeChannelUrl is present\n const disableAutoSelect = props?.disableAutoSelect || !!activeChannelUrl;\n const onChannelSelect = props?.onChannelSelect || noop;\n // fetch store from <SendbirdProvider />\n const globalStore = useSendbirdStateContext();\n const { config, stores } = globalStore;\n const { sdkStore } = stores;\n const { pubSub, logger, onUserProfileMessage } = config;\n const {\n disableMarkAsDelivered = false,\n isTypingIndicatorEnabledOnChannelList = false,\n isMessageReceiptStatusEnabledOnChannelList = false,\n } = config;\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n\n // derive some variables\n // enable if it is true atleast once(both are flase by default)\n const userDefinedDisableUserProfile = disableUserProfile || config?.disableUserProfile;\n const userDefinedRenderProfile = config?.renderUserProfile;\n const enableEditProfile = allowProfileEdit || config?.allowProfileEdit;\n\n const userFilledChannelListQuery = queries?.channelListQuery;\n const userFilledApplicationUserListQuery = queries?.applicationUserListQuery;\n\n const sdkIntialized = sdkStore?.initialized;\n\n const [channelListStore, channelListDispatcher] = useReducer(\n channelListReducers,\n channelListInitialState,\n ) as [ChannelListStoreInterface, CustomUseReducerDispatcher];\n const { loading, currentChannel } = channelListStore;\n\n const [channelSource, setChannelSource] = useState<GroupChannelListQuerySb>();\n const [typingChannels, setTypingChannels] = useState<Array<GroupChannel>>([]);\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 useEffect(() => {\n const subscriber = pubSubHandler(pubSub, channelListDispatcher);\n return () => {\n pubSubHandleRemover(subscriber);\n };\n }, [sdkIntialized]);\n\n useEffect(() => {\n const sdkChannelHandlerId = uuidv4();\n if (sdkIntialized) {\n logger.info('ChannelList: Setup channelHandlers');\n setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n setChannelsToMarkAsRead,\n });\n } else {\n logger.info('ChannelList: Removing channelHandlers');\n // remove previous channelHandlers\n if (sdk?.groupChannel?.removeGroupChannelHandler) {\n sdk.groupChannel.removeGroupChannelHandler(sdkChannelHandlerId);\n }\n // remove channelSource\n setChannelSource(null);\n // cleanup\n channelListDispatcher({\n type: channelListActions.RESET_CHANNEL_LIST,\n payload: null,\n });\n }\n return () => {\n logger.info('ChannelList: Removing channelHandlers');\n if (sdk?.groupChannel?.removeGroupChannelHandler) {\n sdk?.groupChannel?.removeGroupChannelHandler(sdkChannelHandlerId);\n }\n };\n }, [sdkIntialized, userFilledChannelListQuery, sortChannelList]);\n\n useEffect(() => {\n let typingHandlerId = null;\n if (sdk?.groupChannel?.addGroupChannelHandler) {\n typingHandlerId = uuidv4();\n const handler = new GroupChannelHandler({\n onTypingStatusUpdated: (channel) => {\n const typingMemberCount = channel?.getTypingUsers()?.length\n const channelList = typingChannels.filter(ch => ch.url !== channel.url)\n if (typingMemberCount > 0) {\n setTypingChannels([...channelList, channel])\n } else {\n setTypingChannels(channelList)\n }\n },\n onUnreadMemberStatusUpdated(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n },\n onUndeliveredMemberStatusUpdated(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n },\n onMessageUpdated(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n sdk.groupChannel.getChannelWithoutCache(channel.url)\n .then((ch) => {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: ch,\n });\n });\n },\n onMentionReceived(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n sdk.groupChannel.getChannelWithoutCache(channel.url)\n .then((ch) => {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: ch,\n });\n });\n },\n });\n sdk?.groupChannel?.addGroupChannelHandler(typingHandlerId, handler);\n }\n return () => {\n if (sdk?.groupChannel?.removeGroupChannelHandler && typingHandlerId) {\n sdk.groupChannel.removeGroupChannelHandler(typingHandlerId);\n }\n }\n }, [sdk?.currentUser?.userId]);\n\n const queries_ = useMemo(() => {\n return {\n applicationUserListQuery: userFilledApplicationUserListQuery,\n channelListQuery: userFilledChannelListQuery,\n };\n }, [\n userFilledApplicationUserListQuery,\n userFilledChannelListQuery,\n ])\n\n const { allChannels } = channelListStore;\n const sortedChannels = (sortChannelList && typeof sortChannelList === 'function')\n ? sortChannelList(allChannels)\n : allChannels;\n\n if (sortedChannels.length !== allChannels.length) {\n const warning = `ChannelList: You have removed/added extra channels on sortChannelList\n this could cause unexpected problems`;\n // eslint-disable-next-line no-console\n console.warn(warning, { before: allChannels, after: sortedChannels });\n logger.warning(warning, { before: allChannels, after: sortedChannels });\n }\n\n // Set current channel (by on_channel_selected event)\n useEffect(() => {\n if (!sdk || !sdk.groupChannel || !currentChannel || !currentChannel?.url) {\n return;\n }\n sdk.groupChannel.getChannel(currentChannel.url).then((groupChannel) => {\n if (groupChannel) {\n onChannelSelect(groupChannel);\n } else {\n onChannelSelect(null);\n }\n });\n }, [currentChannel?.url]);\n\n // Set active channel (by url)\n useActiveChannelUrl({\n activeChannelUrl,\n channels: sortedChannels,\n sdk,\n } , {\n logger,\n channelListDispatcher,\n });\n\n return (\n <ChannelListContext.Provider value={{\n className,\n disableUserProfile,\n queries: queries_,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n overrideInviteUser,\n onChannelSelect,\n sortChannelList,\n loading,\n allowProfileEdit: enableEditProfile,\n channelListDispatcher,\n channelSource,\n ...channelListStore,\n allChannels: sortedChannels,\n typingChannels,\n isTypingIndicatorEnabled: (isTypingIndicatorEnabled !== null) ? isTypingIndicatorEnabled : isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabled: (isMessageReceiptStatusEnabled !== null) ? isMessageReceiptStatusEnabled : isMessageReceiptStatusEnabledOnChannelList,\n }}>\n <UserProfileProvider\n disableUserProfile={userDefinedDisableUserProfile}\n renderUserProfile={userDefinedRenderProfile}\n onUserProfileMessage={onUserProfileMessage}\n >\n <div className={`sendbird-channel-list ${className}`}>\n {children}\n </div>\n </UserProfileProvider>\n </ChannelListContext.Provider>\n );\n};\n\nfunction useChannelListContext(): ChannelListProviderInterface {\n const context: ChannelListProviderInterface = useContext(ChannelListContext);\n return context;\n}\n\nexport {\n ChannelListProvider,\n useChannelListContext,\n};\n"],"names":["RESET_CHANNEL_LIST","CREATE_CHANNEL","USER_INVITED","LEAVE_CHANNEL_SUCCESS","SET_CURRENT_CHANNEL","SHOW_CHANNEL_SETTINGS","HIDE_CHANNEL_SETTINGS","FETCH_CHANNELS_START","FETCH_CHANNELS_SUCCESS","FETCH_CHANNELS_FAILURE","INIT_CHANNELS_START","INIT_CHANNELS_SUCCESS","INIT_CHANNELS_FAILURE","ON_USER_JOINED","ON_CHANNEL_DELETED","ON_LAST_MESSAGE_UPDATED","ON_USER_LEFT","ON_CHANNEL_CHANGED","ON_CHANNEL_ARCHIVED","ON_CHANNEL_FROZEN","ON_CHANNEL_UNFROZEN","ON_READ_RECEIPT_UPDATED","ON_DELIVERY_RECEIPT_UPDATED","CHANNEL_REPLACED_TO_TOP","CHANNEL_LIST_PARAMS_UPDATED","DELIVERY_RECIPT","createEventHandler","sdk","sdkChannelHandlerId","channelListDispatcher","logger","ChannelHandler","GroupChannelHandler","onChannelChanged","channel","info","type","channelActions","payload","onChannelDeleted","channelUrl","onUserJoined","lastMessage","onUserReceivedInvitation","inviter","invitees","currentUser","isInvited","find","user","userId","onUserBanned","isMe","onUserLeft","leftUser","onReadStatus","onDeliveryReceiptUpdated","onMessageUpdated","message","isEqual","onChannelHidden","onChannelFrozen","onChannelUnfrozen","groupChannel","addGroupChannelHandler","createChannelListQuery","userFilledChannelListQuery","param","includeEmpty","limit","order","Object","keys","forEach","key","channelListQuery","createMyGroupChannelListQuery","setupChannelList","setChannelSource","onChannelSelect","sortChannelList","disableAutoSelect","setChannelsToMarkAsRead","warning","currentUserId","hasNext","next","then","channelList","sortedChannelList","canSetMarkAsDelivered","appInfo","premiumFeatureList","feature","catch","err","error","pubSubHandleRemover","subscriber","s","remove","pubSubHandler","pubSub","Map","set","topics","subscribe","msg","updatedChannel","messageId","url","initialized","loading","allChannels","currentChannel","showSettings","reducer","state","action","actions","_objectSpread","initialState","length","currentChannels","map","c","filteredChannels","filter","filterChannelListParams","getChannelsWithUpsertedChannel","ch","nextChannel","unreadMessageCount","currentUnreadCount","isFrozen","useActiveChannelUrl","_a","_b","activeChannelUrl","channels","useEffect","activeChannel","messageActionTypes","getChannel","ChannelListContext","React","createContext","disableUserProfile","allowProfileEdit","onBeforeCreateChannel","onThemeChange","onProfileEditSuccess","queries","className","channelSource","typingChannels","ChannelListProvider","props","children","overrideInviteUser","isTypingIndicatorEnabled","_c","isMessageReceiptStatusEnabled","noop","globalStore","useSendbirdStateContext","config","stores","sdkStore","onUserProfileMessage","_d","disableMarkAsDelivered","_e","isTypingIndicatorEnabledOnChannelList","_f","isMessageReceiptStatusEnabledOnChannelList","userDefinedDisableUserProfile","userDefinedRenderProfile","renderUserProfile","enableEditProfile","userFilledApplicationUserListQuery","applicationUserListQuery","sdkIntialized","_g","useReducer","channelListReducers","channelListInitialState","channelListStore","_h","useState","_j","setTypingChannels","_k","channelsTomarkAsRead","isMounted","idx","setTimeout","markAsDelivered","uuidv4","removeGroupChannelHandler","channelListActions","typingHandlerId","handler","onTypingStatusUpdated","typingMemberCount","getTypingUsers","__spreadArray","onUnreadMemberStatusUpdated","onUndeliveredMemberStatusUpdated","getChannelWithoutCache","onMentionReceived","queries_","useMemo","sortedChannels","console","warn","before","after","__assign","concat","useChannelListContext","context","useContext"],"mappings":"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"}