@sendbird/uikit-react 3.0.0-alpha

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 (589) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/LICENSE +21 -0
  3. package/README.md +103 -0
  4. package/dist/App.js +294 -0
  5. package/dist/App.js.map +1 -0
  6. package/dist/Channel/components/ChannelHeader.js +116 -0
  7. package/dist/Channel/components/ChannelHeader.js.map +1 -0
  8. package/dist/Channel/components/ChannelUI.js +172 -0
  9. package/dist/Channel/components/ChannelUI.js.map +1 -0
  10. package/dist/Channel/components/FileViewer.js +150 -0
  11. package/dist/Channel/components/FileViewer.js.map +1 -0
  12. package/dist/Channel/components/FrozenNotification.js +20 -0
  13. package/dist/Channel/components/FrozenNotification.js.map +1 -0
  14. package/dist/Channel/components/Message.js +232 -0
  15. package/dist/Channel/components/Message.js.map +1 -0
  16. package/dist/Channel/components/MessageInput.js +87 -0
  17. package/dist/Channel/components/MessageInput.js.map +1 -0
  18. package/dist/Channel/components/MessageList.js +227 -0
  19. package/dist/Channel/components/MessageList.js.map +1 -0
  20. package/dist/Channel/components/RemoveMessageModal.js +52 -0
  21. package/dist/Channel/components/RemoveMessageModal.js.map +1 -0
  22. package/dist/Channel/components/TypingIndicator.js +97 -0
  23. package/dist/Channel/components/TypingIndicator.js.map +1 -0
  24. package/dist/Channel/components/UnreadCount.js +41 -0
  25. package/dist/Channel/components/UnreadCount.js.map +1 -0
  26. package/dist/Channel/context.js +23 -0
  27. package/dist/Channel/context.js.map +1 -0
  28. package/dist/Channel.js +99 -0
  29. package/dist/Channel.js.map +1 -0
  30. package/dist/ChannelList/components/AddChannel.js +70 -0
  31. package/dist/ChannelList/components/AddChannel.js.map +1 -0
  32. package/dist/ChannelList/components/ChannelListHeader.js +62 -0
  33. package/dist/ChannelList/components/ChannelListHeader.js.map +1 -0
  34. package/dist/ChannelList/components/ChannelListUI.js +213 -0
  35. package/dist/ChannelList/components/ChannelListUI.js.map +1 -0
  36. package/dist/ChannelList/components/ChannelPreview.js +177 -0
  37. package/dist/ChannelList/components/ChannelPreview.js.map +1 -0
  38. package/dist/ChannelList/components/ChannelPreviewAction.js +131 -0
  39. package/dist/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  40. package/dist/ChannelList/context.js +13 -0
  41. package/dist/ChannelList/context.js.map +1 -0
  42. package/dist/ChannelList.js +80 -0
  43. package/dist/ChannelList.js.map +1 -0
  44. package/dist/ChannelListProvider-0b0c2c40.js +861 -0
  45. package/dist/ChannelListProvider-0b0c2c40.js.map +1 -0
  46. package/dist/ChannelProvider-459e463f.js +2083 -0
  47. package/dist/ChannelProvider-459e463f.js.map +1 -0
  48. package/dist/ChannelSettings/components/AdminPanel.js +905 -0
  49. package/dist/ChannelSettings/components/AdminPanel.js.map +1 -0
  50. package/dist/ChannelSettings/components/ChannelProfile.js +102 -0
  51. package/dist/ChannelSettings/components/ChannelProfile.js.map +1 -0
  52. package/dist/ChannelSettings/components/ChannelSettingsUI.js +152 -0
  53. package/dist/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  54. package/dist/ChannelSettings/components/EditDetailsModal.js +154 -0
  55. package/dist/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  56. package/dist/ChannelSettings/components/LeaveChannel.js +53 -0
  57. package/dist/ChannelSettings/components/LeaveChannel.js.map +1 -0
  58. package/dist/ChannelSettings/components/UserListItem.js +105 -0
  59. package/dist/ChannelSettings/components/UserListItem.js.map +1 -0
  60. package/dist/ChannelSettings/components/UserPanel.js +79 -0
  61. package/dist/ChannelSettings/components/UserPanel.js.map +1 -0
  62. package/dist/ChannelSettings/context.js +93 -0
  63. package/dist/ChannelSettings/context.js.map +1 -0
  64. package/dist/ChannelSettings.js +71 -0
  65. package/dist/ChannelSettings.js.map +1 -0
  66. package/dist/CreateChannel/components/CreateChannelUI.js +53 -0
  67. package/dist/CreateChannel/components/CreateChannelUI.js.map +1 -0
  68. package/dist/CreateChannel/components/InviteMembers.js +184 -0
  69. package/dist/CreateChannel/components/InviteMembers.js.map +1 -0
  70. package/dist/CreateChannel/components/SelectChannelType.js +131 -0
  71. package/dist/CreateChannel/components/SelectChannelType.js.map +1 -0
  72. package/dist/CreateChannel/context.js +8 -0
  73. package/dist/CreateChannel/context.js.map +1 -0
  74. package/dist/CreateChannel.js +53 -0
  75. package/dist/CreateChannel.js.map +1 -0
  76. package/dist/CreateChannelProvider-c617a1bb.js +53 -0
  77. package/dist/CreateChannelProvider-c617a1bb.js.map +1 -0
  78. package/dist/EditUserProfile/components/EditUserProfileUI.js +26 -0
  79. package/dist/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  80. package/dist/EditUserProfile/context.js +27 -0
  81. package/dist/EditUserProfile/context.js.map +1 -0
  82. package/dist/EditUserProfile.js +39 -0
  83. package/dist/EditUserProfile.js.map +1 -0
  84. package/dist/LocalizationContext-e4391013.js +22 -0
  85. package/dist/LocalizationContext-e4391013.js.map +1 -0
  86. package/dist/MemberList-6655cba0.js +425 -0
  87. package/dist/MemberList-6655cba0.js.map +1 -0
  88. package/dist/MessageSearch/components/MessageSearchUI.js +151 -0
  89. package/dist/MessageSearch/components/MessageSearchUI.js.map +1 -0
  90. package/dist/MessageSearch/context.js +392 -0
  91. package/dist/MessageSearch/context.js.map +1 -0
  92. package/dist/MessageSearch.js +146 -0
  93. package/dist/MessageSearch.js.map +1 -0
  94. package/dist/OpenChannel/components/FrozenChannelNotification.js +20 -0
  95. package/dist/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  96. package/dist/OpenChannel/components/OpenChannelHeader.js +78 -0
  97. package/dist/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  98. package/dist/OpenChannel/components/OpenChannelInput.js +52 -0
  99. package/dist/OpenChannel/components/OpenChannelInput.js.map +1 -0
  100. package/dist/OpenChannel/components/OpenChannelMessage.js +278 -0
  101. package/dist/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  102. package/dist/OpenChannel/components/OpenChannelMessageList.js +153 -0
  103. package/dist/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  104. package/dist/OpenChannel/components/OpenChannelUI.js +105 -0
  105. package/dist/OpenChannel/components/OpenChannelUI.js.map +1 -0
  106. package/dist/OpenChannel/context.js +14 -0
  107. package/dist/OpenChannel/context.js.map +1 -0
  108. package/dist/OpenChannel.js +76 -0
  109. package/dist/OpenChannel.js.map +1 -0
  110. package/dist/OpenChannelProvider-a7691eb4.js +2011 -0
  111. package/dist/OpenChannelProvider-a7691eb4.js.map +1 -0
  112. package/dist/OpenChannelSettings/components/EditDetailsModal.js +149 -0
  113. package/dist/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  114. package/dist/OpenChannelSettings/components/OpenChannelProfile.js +81 -0
  115. package/dist/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  116. package/dist/OpenChannelSettings/components/OpenChannelSettingsUI.js +104 -0
  117. package/dist/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  118. package/dist/OpenChannelSettings/components/OperatorUI.js +184 -0
  119. package/dist/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  120. package/dist/OpenChannelSettings/components/ParticipantUI.js +172 -0
  121. package/dist/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  122. package/dist/OpenChannelSettings/context.js +64 -0
  123. package/dist/OpenChannelSettings/context.js.map +1 -0
  124. package/dist/OpenChannelSettings.js +64 -0
  125. package/dist/OpenChannelSettings.js.map +1 -0
  126. package/dist/SendbirdProvider.js +740 -0
  127. package/dist/SendbirdProvider.js.map +1 -0
  128. package/dist/UserProfileContext-865db5e6.js +38 -0
  129. package/dist/UserProfileContext-865db5e6.js.map +1 -0
  130. package/dist/_rollupPluginBabelHelpers-20904f21.js +233 -0
  131. package/dist/_rollupPluginBabelHelpers-20904f21.js.map +1 -0
  132. package/dist/actionTypes-1e3a4074.js +6 -0
  133. package/dist/actionTypes-1e3a4074.js.map +1 -0
  134. package/dist/cjs/App.js +301 -0
  135. package/dist/cjs/App.js.map +1 -0
  136. package/dist/cjs/Channel/components/ChannelHeader.js +122 -0
  137. package/dist/cjs/Channel/components/ChannelHeader.js.map +1 -0
  138. package/dist/cjs/Channel/components/ChannelUI.js +178 -0
  139. package/dist/cjs/Channel/components/ChannelUI.js.map +1 -0
  140. package/dist/cjs/Channel/components/FileViewer.js +159 -0
  141. package/dist/cjs/Channel/components/FileViewer.js.map +1 -0
  142. package/dist/cjs/Channel/components/FrozenNotification.js +26 -0
  143. package/dist/cjs/Channel/components/FrozenNotification.js.map +1 -0
  144. package/dist/cjs/Channel/components/Message.js +238 -0
  145. package/dist/cjs/Channel/components/Message.js.map +1 -0
  146. package/dist/cjs/Channel/components/MessageInput.js +93 -0
  147. package/dist/cjs/Channel/components/MessageInput.js.map +1 -0
  148. package/dist/cjs/Channel/components/MessageList.js +233 -0
  149. package/dist/cjs/Channel/components/MessageList.js.map +1 -0
  150. package/dist/cjs/Channel/components/RemoveMessageModal.js +58 -0
  151. package/dist/cjs/Channel/components/RemoveMessageModal.js.map +1 -0
  152. package/dist/cjs/Channel/components/TypingIndicator.js +103 -0
  153. package/dist/cjs/Channel/components/TypingIndicator.js.map +1 -0
  154. package/dist/cjs/Channel/components/UnreadCount.js +47 -0
  155. package/dist/cjs/Channel/components/UnreadCount.js.map +1 -0
  156. package/dist/cjs/Channel/context.js +32 -0
  157. package/dist/cjs/Channel/context.js.map +1 -0
  158. package/dist/cjs/Channel.js +105 -0
  159. package/dist/cjs/Channel.js.map +1 -0
  160. package/dist/cjs/ChannelList/components/AddChannel.js +79 -0
  161. package/dist/cjs/ChannelList/components/AddChannel.js.map +1 -0
  162. package/dist/cjs/ChannelList/components/ChannelListHeader.js +68 -0
  163. package/dist/cjs/ChannelList/components/ChannelListHeader.js.map +1 -0
  164. package/dist/cjs/ChannelList/components/ChannelListUI.js +219 -0
  165. package/dist/cjs/ChannelList/components/ChannelListUI.js.map +1 -0
  166. package/dist/cjs/ChannelList/components/ChannelPreview.js +183 -0
  167. package/dist/cjs/ChannelList/components/ChannelPreview.js.map +1 -0
  168. package/dist/cjs/ChannelList/components/ChannelPreviewAction.js +138 -0
  169. package/dist/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  170. package/dist/cjs/ChannelList/context.js +22 -0
  171. package/dist/cjs/ChannelList/context.js.map +1 -0
  172. package/dist/cjs/ChannelList.js +86 -0
  173. package/dist/cjs/ChannelList.js.map +1 -0
  174. package/dist/cjs/ChannelListProvider-5a152618.js +873 -0
  175. package/dist/cjs/ChannelListProvider-5a152618.js.map +1 -0
  176. package/dist/cjs/ChannelProvider-f1fb0108.js +2096 -0
  177. package/dist/cjs/ChannelProvider-f1fb0108.js.map +1 -0
  178. package/dist/cjs/ChannelSettings/components/AdminPanel.js +911 -0
  179. package/dist/cjs/ChannelSettings/components/AdminPanel.js.map +1 -0
  180. package/dist/cjs/ChannelSettings/components/ChannelProfile.js +108 -0
  181. package/dist/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -0
  182. package/dist/cjs/ChannelSettings/components/ChannelSettingsUI.js +158 -0
  183. package/dist/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  184. package/dist/cjs/ChannelSettings/components/EditDetailsModal.js +160 -0
  185. package/dist/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  186. package/dist/cjs/ChannelSettings/components/LeaveChannel.js +59 -0
  187. package/dist/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -0
  188. package/dist/cjs/ChannelSettings/components/UserListItem.js +111 -0
  189. package/dist/cjs/ChannelSettings/components/UserListItem.js.map +1 -0
  190. package/dist/cjs/ChannelSettings/components/UserPanel.js +85 -0
  191. package/dist/cjs/ChannelSettings/components/UserPanel.js.map +1 -0
  192. package/dist/cjs/ChannelSettings/context.js +102 -0
  193. package/dist/cjs/ChannelSettings/context.js.map +1 -0
  194. package/dist/cjs/ChannelSettings.js +77 -0
  195. package/dist/cjs/ChannelSettings.js.map +1 -0
  196. package/dist/cjs/CreateChannel/components/CreateChannelUI.js +59 -0
  197. package/dist/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -0
  198. package/dist/cjs/CreateChannel/components/InviteMembers.js +190 -0
  199. package/dist/cjs/CreateChannel/components/InviteMembers.js.map +1 -0
  200. package/dist/cjs/CreateChannel/components/SelectChannelType.js +137 -0
  201. package/dist/cjs/CreateChannel/components/SelectChannelType.js.map +1 -0
  202. package/dist/cjs/CreateChannel/context.js +17 -0
  203. package/dist/cjs/CreateChannel/context.js.map +1 -0
  204. package/dist/cjs/CreateChannel.js +59 -0
  205. package/dist/cjs/CreateChannel.js.map +1 -0
  206. package/dist/cjs/CreateChannelProvider-df42106f.js +60 -0
  207. package/dist/cjs/CreateChannelProvider-df42106f.js.map +1 -0
  208. package/dist/cjs/EditUserProfile/components/EditUserProfileUI.js +32 -0
  209. package/dist/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  210. package/dist/cjs/EditUserProfile/context.js +36 -0
  211. package/dist/cjs/EditUserProfile/context.js.map +1 -0
  212. package/dist/cjs/EditUserProfile.js +45 -0
  213. package/dist/cjs/EditUserProfile.js.map +1 -0
  214. package/dist/cjs/LocalizationContext-68e55e2a.js +30 -0
  215. package/dist/cjs/LocalizationContext-68e55e2a.js.map +1 -0
  216. package/dist/cjs/MemberList-dc84e303.js +431 -0
  217. package/dist/cjs/MemberList-dc84e303.js.map +1 -0
  218. package/dist/cjs/MessageSearch/components/MessageSearchUI.js +160 -0
  219. package/dist/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -0
  220. package/dist/cjs/MessageSearch/context.js +401 -0
  221. package/dist/cjs/MessageSearch/context.js.map +1 -0
  222. package/dist/cjs/MessageSearch.js +152 -0
  223. package/dist/cjs/MessageSearch.js.map +1 -0
  224. package/dist/cjs/OpenChannel/components/FrozenChannelNotification.js +26 -0
  225. package/dist/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  226. package/dist/cjs/OpenChannel/components/OpenChannelHeader.js +84 -0
  227. package/dist/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  228. package/dist/cjs/OpenChannel/components/OpenChannelInput.js +58 -0
  229. package/dist/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -0
  230. package/dist/cjs/OpenChannel/components/OpenChannelMessage.js +284 -0
  231. package/dist/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  232. package/dist/cjs/OpenChannel/components/OpenChannelMessageList.js +159 -0
  233. package/dist/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  234. package/dist/cjs/OpenChannel/components/OpenChannelUI.js +111 -0
  235. package/dist/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -0
  236. package/dist/cjs/OpenChannel/context.js +23 -0
  237. package/dist/cjs/OpenChannel/context.js.map +1 -0
  238. package/dist/cjs/OpenChannel.js +82 -0
  239. package/dist/cjs/OpenChannel.js.map +1 -0
  240. package/dist/cjs/OpenChannelProvider-7a1a996f.js +2020 -0
  241. package/dist/cjs/OpenChannelProvider-7a1a996f.js.map +1 -0
  242. package/dist/cjs/OpenChannelSettings/components/EditDetailsModal.js +155 -0
  243. package/dist/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  244. package/dist/cjs/OpenChannelSettings/components/OpenChannelProfile.js +87 -0
  245. package/dist/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  246. package/dist/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +110 -0
  247. package/dist/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  248. package/dist/cjs/OpenChannelSettings/components/OperatorUI.js +194 -0
  249. package/dist/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  250. package/dist/cjs/OpenChannelSettings/components/ParticipantUI.js +178 -0
  251. package/dist/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  252. package/dist/cjs/OpenChannelSettings/context.js +73 -0
  253. package/dist/cjs/OpenChannelSettings/context.js.map +1 -0
  254. package/dist/cjs/OpenChannelSettings.js +70 -0
  255. package/dist/cjs/OpenChannelSettings.js.map +1 -0
  256. package/dist/cjs/SendbirdProvider.js +749 -0
  257. package/dist/cjs/SendbirdProvider.js.map +1 -0
  258. package/dist/cjs/UserProfileContext-3533547d.js +46 -0
  259. package/dist/cjs/UserProfileContext-3533547d.js.map +1 -0
  260. package/dist/cjs/_rollupPluginBabelHelpers-fc14118c.js +243 -0
  261. package/dist/cjs/_rollupPluginBabelHelpers-fc14118c.js.map +1 -0
  262. package/dist/cjs/actionTypes-bc47f97a.js +10 -0
  263. package/dist/cjs/actionTypes-bc47f97a.js.map +1 -0
  264. package/dist/cjs/color-4afb15fb.js +42 -0
  265. package/dist/cjs/color-4afb15fb.js.map +1 -0
  266. package/dist/cjs/compareIds-01306377.js +20 -0
  267. package/dist/cjs/compareIds-01306377.js.map +1 -0
  268. package/dist/cjs/context-c1f9d650.js +19 -0
  269. package/dist/cjs/context-c1f9d650.js.map +1 -0
  270. package/dist/cjs/index-1044f1ed.js +97 -0
  271. package/dist/cjs/index-1044f1ed.js.map +1 -0
  272. package/dist/cjs/index-1468d245.js +142 -0
  273. package/dist/cjs/index-1468d245.js.map +1 -0
  274. package/dist/cjs/index-4987c8b2.js +175 -0
  275. package/dist/cjs/index-4987c8b2.js.map +1 -0
  276. package/dist/cjs/index-659c9ca5.js +130 -0
  277. package/dist/cjs/index-659c9ca5.js.map +1 -0
  278. package/dist/cjs/index-8becccd8.js +284 -0
  279. package/dist/cjs/index-8becccd8.js.map +1 -0
  280. package/dist/cjs/index-905331fa.js +1880 -0
  281. package/dist/cjs/index-905331fa.js.map +1 -0
  282. package/dist/cjs/index-9dc3863f.js +67 -0
  283. package/dist/cjs/index-9dc3863f.js.map +1 -0
  284. package/dist/cjs/index-aecc8d24.js +9 -0
  285. package/dist/cjs/index-aecc8d24.js.map +1 -0
  286. package/dist/cjs/index-d4880236.js +641 -0
  287. package/dist/cjs/index-d4880236.js.map +1 -0
  288. package/dist/cjs/index-e2bb862c.js +514 -0
  289. package/dist/cjs/index-e2bb862c.js.map +1 -0
  290. package/dist/cjs/index.css +4355 -0
  291. package/dist/cjs/index.css.map +1 -0
  292. package/dist/cjs/index.js +155 -0
  293. package/dist/cjs/index.js.map +1 -0
  294. package/dist/cjs/openChannelUtils-37919a36.js +92 -0
  295. package/dist/cjs/openChannelUtils-37919a36.js.map +1 -0
  296. package/dist/cjs/sendBirdSelectors.js +741 -0
  297. package/dist/cjs/sendBirdSelectors.js.map +1 -0
  298. package/dist/cjs/stringSet-aa544ce5.js +116 -0
  299. package/dist/cjs/stringSet-aa544ce5.js.map +1 -0
  300. package/dist/cjs/topics-8314d425.js +18 -0
  301. package/dist/cjs/topics-8314d425.js.map +1 -0
  302. package/dist/cjs/tslib.es6-4a281a05.js +40 -0
  303. package/dist/cjs/tslib.es6-4a281a05.js.map +1 -0
  304. package/dist/cjs/ui/Accordion.js +74 -0
  305. package/dist/cjs/ui/Accordion.js.map +1 -0
  306. package/dist/cjs/ui/AccordionGroup.js +32 -0
  307. package/dist/cjs/ui/AccordionGroup.js.map +1 -0
  308. package/dist/cjs/ui/AdminMessage.js +44 -0
  309. package/dist/cjs/ui/AdminMessage.js.map +1 -0
  310. package/dist/cjs/ui/Avatar.js +226 -0
  311. package/dist/cjs/ui/Avatar.js.map +1 -0
  312. package/dist/cjs/ui/Badge.js +45 -0
  313. package/dist/cjs/ui/Badge.js.map +1 -0
  314. package/dist/cjs/ui/Button.js +17 -0
  315. package/dist/cjs/ui/Button.js.map +1 -0
  316. package/dist/cjs/ui/ChannelAvatar.js +59 -0
  317. package/dist/cjs/ui/ChannelAvatar.js.map +1 -0
  318. package/dist/cjs/ui/ChannelPreview.js +201 -0
  319. package/dist/cjs/ui/ChannelPreview.js.map +1 -0
  320. package/dist/cjs/ui/ChatHeader.js +145 -0
  321. package/dist/cjs/ui/ChatHeader.js.map +1 -0
  322. package/dist/cjs/ui/Checkbox.js +49 -0
  323. package/dist/cjs/ui/Checkbox.js.map +1 -0
  324. package/dist/cjs/ui/ConnectionStatus.js +34 -0
  325. package/dist/cjs/ui/ConnectionStatus.js.map +1 -0
  326. package/dist/cjs/ui/ContextMenu.js +431 -0
  327. package/dist/cjs/ui/ContextMenu.js.map +1 -0
  328. package/dist/cjs/ui/DateSeparator.js +44 -0
  329. package/dist/cjs/ui/DateSeparator.js.map +1 -0
  330. package/dist/cjs/ui/Dropdown.js +107 -0
  331. package/dist/cjs/ui/Dropdown.js.map +1 -0
  332. package/dist/cjs/ui/EmojiReactions.js +127 -0
  333. package/dist/cjs/ui/EmojiReactions.js.map +1 -0
  334. package/dist/cjs/ui/FileMessageItemBody.js +57 -0
  335. package/dist/cjs/ui/FileMessageItemBody.js.map +1 -0
  336. package/dist/cjs/ui/FileViewer.js +174 -0
  337. package/dist/cjs/ui/FileViewer.js.map +1 -0
  338. package/dist/cjs/ui/Icon.js +1462 -0
  339. package/dist/cjs/ui/Icon.js.map +1 -0
  340. package/dist/cjs/ui/IconButton.js +83 -0
  341. package/dist/cjs/ui/IconButton.js.map +1 -0
  342. package/dist/cjs/ui/ImageRenderer.js +138 -0
  343. package/dist/cjs/ui/ImageRenderer.js.map +1 -0
  344. package/dist/cjs/ui/Input.js +74 -0
  345. package/dist/cjs/ui/Input.js.map +1 -0
  346. package/dist/cjs/ui/Label.js +17 -0
  347. package/dist/cjs/ui/Label.js.map +1 -0
  348. package/dist/cjs/ui/LinkLabel.js +51 -0
  349. package/dist/cjs/ui/LinkLabel.js.map +1 -0
  350. package/dist/cjs/ui/Loader.js +44 -0
  351. package/dist/cjs/ui/Loader.js.map +1 -0
  352. package/dist/cjs/ui/MessageContent.js +328 -0
  353. package/dist/cjs/ui/MessageContent.js.map +1 -0
  354. package/dist/cjs/ui/MessageInput.js +232 -0
  355. package/dist/cjs/ui/MessageInput.js.map +1 -0
  356. package/dist/cjs/ui/MessageItemMenu.js +141 -0
  357. package/dist/cjs/ui/MessageItemMenu.js.map +1 -0
  358. package/dist/cjs/ui/MessageItemReactionMenu.js +112 -0
  359. package/dist/cjs/ui/MessageItemReactionMenu.js.map +1 -0
  360. package/dist/cjs/ui/MessageSearchFileItem.js +130 -0
  361. package/dist/cjs/ui/MessageSearchFileItem.js.map +1 -0
  362. package/dist/cjs/ui/MessageSearchItem.js +93 -0
  363. package/dist/cjs/ui/MessageSearchItem.js.map +1 -0
  364. package/dist/cjs/ui/Modal.js +140 -0
  365. package/dist/cjs/ui/Modal.js.map +1 -0
  366. package/dist/cjs/ui/MutedAvatarOverlay.js +40 -0
  367. package/dist/cjs/ui/MutedAvatarOverlay.js.map +1 -0
  368. package/dist/cjs/ui/OGMessageItemBody.js +97 -0
  369. package/dist/cjs/ui/OGMessageItemBody.js.map +1 -0
  370. package/dist/cjs/ui/OpenChannelAdminMessage.js +27 -0
  371. package/dist/cjs/ui/OpenChannelAdminMessage.js.map +1 -0
  372. package/dist/cjs/ui/OpenChannelAvatar.js +41 -0
  373. package/dist/cjs/ui/OpenChannelAvatar.js.map +1 -0
  374. package/dist/cjs/ui/OpenChannelMessageContent.js +14 -0
  375. package/dist/cjs/ui/OpenChannelMessageContent.js.map +1 -0
  376. package/dist/cjs/ui/OpenchannelConversationHeader.js +73 -0
  377. package/dist/cjs/ui/OpenchannelConversationHeader.js.map +1 -0
  378. package/dist/cjs/ui/OpenchannelFileMessage.js +230 -0
  379. package/dist/cjs/ui/OpenchannelFileMessage.js.map +1 -0
  380. package/dist/cjs/ui/OpenchannelOGMessage.js +345 -0
  381. package/dist/cjs/ui/OpenchannelOGMessage.js.map +1 -0
  382. package/dist/cjs/ui/OpenchannelThumbnailMessage.js +305 -0
  383. package/dist/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -0
  384. package/dist/cjs/ui/OpenchannelUserMessage.js +264 -0
  385. package/dist/cjs/ui/OpenchannelUserMessage.js.map +1 -0
  386. package/dist/cjs/ui/PlaceHolder.js +20 -0
  387. package/dist/cjs/ui/PlaceHolder.js.map +1 -0
  388. package/dist/cjs/ui/QuoteMessage.js +131 -0
  389. package/dist/cjs/ui/QuoteMessage.js.map +1 -0
  390. package/dist/cjs/ui/QuoteMessageInput.js +99 -0
  391. package/dist/cjs/ui/QuoteMessageInput.js.map +1 -0
  392. package/dist/cjs/ui/ReactionBadge.js +68 -0
  393. package/dist/cjs/ui/ReactionBadge.js.map +1 -0
  394. package/dist/cjs/ui/ReactionButton.js +55 -0
  395. package/dist/cjs/ui/ReactionButton.js.map +1 -0
  396. package/dist/cjs/ui/SortByRow.js +57 -0
  397. package/dist/cjs/ui/SortByRow.js.map +1 -0
  398. package/dist/cjs/ui/TextButton.js +45 -0
  399. package/dist/cjs/ui/TextButton.js.map +1 -0
  400. package/dist/cjs/ui/TextMessageItemBody.js +40 -0
  401. package/dist/cjs/ui/TextMessageItemBody.js.map +1 -0
  402. package/dist/cjs/ui/ThumbnailMessageItemBody.js +82 -0
  403. package/dist/cjs/ui/ThumbnailMessageItemBody.js.map +1 -0
  404. package/dist/cjs/ui/Tooltip.js +35 -0
  405. package/dist/cjs/ui/Tooltip.js.map +1 -0
  406. package/dist/cjs/ui/TooltipWrapper.js +65 -0
  407. package/dist/cjs/ui/TooltipWrapper.js.map +1 -0
  408. package/dist/cjs/ui/UnknownMessageItemBody.js +41 -0
  409. package/dist/cjs/ui/UnknownMessageItemBody.js.map +1 -0
  410. package/dist/cjs/ui/UserListItem.js +158 -0
  411. package/dist/cjs/ui/UserListItem.js.map +1 -0
  412. package/dist/cjs/ui/UserProfile.js +87 -0
  413. package/dist/cjs/ui/UserProfile.js.map +1 -0
  414. package/dist/cjs/useSendbirdStateContext.js +22 -0
  415. package/dist/cjs/useSendbirdStateContext.js.map +1 -0
  416. package/dist/cjs/utils-3b0815dc.js +6 -0
  417. package/dist/cjs/utils-3b0815dc.js.map +1 -0
  418. package/dist/cjs/utils-66b3f4ec.js +38 -0
  419. package/dist/cjs/utils-66b3f4ec.js.map +1 -0
  420. package/dist/cjs/utils-cbd3ed99.js +32 -0
  421. package/dist/cjs/utils-cbd3ed99.js.map +1 -0
  422. package/dist/cjs/uuid-1d5ec8b2.js +19 -0
  423. package/dist/cjs/uuid-1d5ec8b2.js.map +1 -0
  424. package/dist/cjs/withSendBird.js +35 -0
  425. package/dist/cjs/withSendBird.js.map +1 -0
  426. package/dist/color-ee3fc5ee.js +39 -0
  427. package/dist/color-ee3fc5ee.js.map +1 -0
  428. package/dist/compareIds-808956f2.js +18 -0
  429. package/dist/compareIds-808956f2.js.map +1 -0
  430. package/dist/context-98ce535c.js +12 -0
  431. package/dist/context-98ce535c.js.map +1 -0
  432. package/dist/index-1718324d.js +280 -0
  433. package/dist/index-1718324d.js.map +1 -0
  434. package/dist/index-5c2c81bc.js +168 -0
  435. package/dist/index-5c2c81bc.js.map +1 -0
  436. package/dist/index-6ebf7894.js +512 -0
  437. package/dist/index-6ebf7894.js.map +1 -0
  438. package/dist/index-770d7112.js +1873 -0
  439. package/dist/index-770d7112.js.map +1 -0
  440. package/dist/index-7a51bd16.js +131 -0
  441. package/dist/index-7a51bd16.js.map +1 -0
  442. package/dist/index-8c72a94a.js +602 -0
  443. package/dist/index-8c72a94a.js.map +1 -0
  444. package/dist/index-942c85a6.js +7 -0
  445. package/dist/index-942c85a6.js.map +1 -0
  446. package/dist/index-acebc2ff.js +87 -0
  447. package/dist/index-acebc2ff.js.map +1 -0
  448. package/dist/index-cd21929d.js +64 -0
  449. package/dist/index-cd21929d.js.map +1 -0
  450. package/dist/index-e818a8a3.js +121 -0
  451. package/dist/index-e818a8a3.js.map +1 -0
  452. package/dist/index.css +4355 -0
  453. package/dist/index.css.map +1 -0
  454. package/dist/index.d.ts +1801 -0
  455. package/dist/index.js +136 -0
  456. package/dist/index.js.map +1 -0
  457. package/dist/openChannelUtils-56a372e7.js +81 -0
  458. package/dist/openChannelUtils-56a372e7.js.map +1 -0
  459. package/dist/sendBirdSelectors.js +713 -0
  460. package/dist/sendBirdSelectors.js.map +1 -0
  461. package/dist/stringSet-4f6eaa60.js +114 -0
  462. package/dist/stringSet-4f6eaa60.js.map +1 -0
  463. package/dist/topics-9442035c.js +10 -0
  464. package/dist/topics-9442035c.js.map +1 -0
  465. package/dist/tslib.es6-e3c44017.js +38 -0
  466. package/dist/tslib.es6-e3c44017.js.map +1 -0
  467. package/dist/ui/Accordion.js +65 -0
  468. package/dist/ui/Accordion.js.map +1 -0
  469. package/dist/ui/AccordionGroup.js +26 -0
  470. package/dist/ui/AccordionGroup.js.map +1 -0
  471. package/dist/ui/AdminMessage.js +37 -0
  472. package/dist/ui/AdminMessage.js.map +1 -0
  473. package/dist/ui/Avatar.js +217 -0
  474. package/dist/ui/Avatar.js.map +1 -0
  475. package/dist/ui/Badge.js +38 -0
  476. package/dist/ui/Badge.js.map +1 -0
  477. package/dist/ui/Button.js +7 -0
  478. package/dist/ui/Button.js.map +1 -0
  479. package/dist/ui/ChannelAvatar.js +53 -0
  480. package/dist/ui/ChannelAvatar.js.map +1 -0
  481. package/dist/ui/ChannelPreview.js +194 -0
  482. package/dist/ui/ChannelPreview.js.map +1 -0
  483. package/dist/ui/ChatHeader.js +138 -0
  484. package/dist/ui/ChatHeader.js.map +1 -0
  485. package/dist/ui/Checkbox.js +42 -0
  486. package/dist/ui/Checkbox.js.map +1 -0
  487. package/dist/ui/ConnectionStatus.js +28 -0
  488. package/dist/ui/ConnectionStatus.js.map +1 -0
  489. package/dist/ui/ContextMenu.js +417 -0
  490. package/dist/ui/ContextMenu.js.map +1 -0
  491. package/dist/ui/DateSeparator.js +37 -0
  492. package/dist/ui/DateSeparator.js.map +1 -0
  493. package/dist/ui/Dropdown.js +97 -0
  494. package/dist/ui/Dropdown.js.map +1 -0
  495. package/dist/ui/EmojiReactions.js +121 -0
  496. package/dist/ui/EmojiReactions.js.map +1 -0
  497. package/dist/ui/FileMessageItemBody.js +51 -0
  498. package/dist/ui/FileMessageItemBody.js.map +1 -0
  499. package/dist/ui/FileViewer.js +164 -0
  500. package/dist/ui/FileViewer.js.map +1 -0
  501. package/dist/ui/Icon.js +1432 -0
  502. package/dist/ui/Icon.js.map +1 -0
  503. package/dist/ui/IconButton.js +76 -0
  504. package/dist/ui/IconButton.js.map +1 -0
  505. package/dist/ui/ImageRenderer.js +131 -0
  506. package/dist/ui/ImageRenderer.js.map +1 -0
  507. package/dist/ui/Input.js +64 -0
  508. package/dist/ui/Input.js.map +1 -0
  509. package/dist/ui/Label.js +6 -0
  510. package/dist/ui/Label.js.map +1 -0
  511. package/dist/ui/LinkLabel.js +40 -0
  512. package/dist/ui/LinkLabel.js.map +1 -0
  513. package/dist/ui/Loader.js +37 -0
  514. package/dist/ui/Loader.js.map +1 -0
  515. package/dist/ui/MessageContent.js +322 -0
  516. package/dist/ui/MessageContent.js.map +1 -0
  517. package/dist/ui/MessageInput.js +225 -0
  518. package/dist/ui/MessageInput.js.map +1 -0
  519. package/dist/ui/MessageItemMenu.js +135 -0
  520. package/dist/ui/MessageItemMenu.js.map +1 -0
  521. package/dist/ui/MessageItemReactionMenu.js +106 -0
  522. package/dist/ui/MessageItemReactionMenu.js.map +1 -0
  523. package/dist/ui/MessageSearchFileItem.js +124 -0
  524. package/dist/ui/MessageSearchFileItem.js.map +1 -0
  525. package/dist/ui/MessageSearchItem.js +87 -0
  526. package/dist/ui/MessageSearchItem.js.map +1 -0
  527. package/dist/ui/Modal.js +128 -0
  528. package/dist/ui/Modal.js.map +1 -0
  529. package/dist/ui/MutedAvatarOverlay.js +34 -0
  530. package/dist/ui/MutedAvatarOverlay.js.map +1 -0
  531. package/dist/ui/OGMessageItemBody.js +91 -0
  532. package/dist/ui/OGMessageItemBody.js.map +1 -0
  533. package/dist/ui/OpenChannelAdminMessage.js +21 -0
  534. package/dist/ui/OpenChannelAdminMessage.js.map +1 -0
  535. package/dist/ui/OpenChannelAvatar.js +35 -0
  536. package/dist/ui/OpenChannelAvatar.js.map +1 -0
  537. package/dist/ui/OpenChannelMessageContent.js +8 -0
  538. package/dist/ui/OpenChannelMessageContent.js.map +1 -0
  539. package/dist/ui/OpenchannelConversationHeader.js +67 -0
  540. package/dist/ui/OpenchannelConversationHeader.js.map +1 -0
  541. package/dist/ui/OpenchannelFileMessage.js +224 -0
  542. package/dist/ui/OpenchannelFileMessage.js.map +1 -0
  543. package/dist/ui/OpenchannelOGMessage.js +339 -0
  544. package/dist/ui/OpenchannelOGMessage.js.map +1 -0
  545. package/dist/ui/OpenchannelThumbnailMessage.js +299 -0
  546. package/dist/ui/OpenchannelThumbnailMessage.js.map +1 -0
  547. package/dist/ui/OpenchannelUserMessage.js +258 -0
  548. package/dist/ui/OpenchannelUserMessage.js.map +1 -0
  549. package/dist/ui/PlaceHolder.js +11 -0
  550. package/dist/ui/PlaceHolder.js.map +1 -0
  551. package/dist/ui/QuoteMessage.js +125 -0
  552. package/dist/ui/QuoteMessage.js.map +1 -0
  553. package/dist/ui/QuoteMessageInput.js +93 -0
  554. package/dist/ui/QuoteMessageInput.js.map +1 -0
  555. package/dist/ui/ReactionBadge.js +61 -0
  556. package/dist/ui/ReactionBadge.js.map +1 -0
  557. package/dist/ui/ReactionButton.js +48 -0
  558. package/dist/ui/ReactionButton.js.map +1 -0
  559. package/dist/ui/SortByRow.js +50 -0
  560. package/dist/ui/SortByRow.js.map +1 -0
  561. package/dist/ui/TextButton.js +38 -0
  562. package/dist/ui/TextButton.js.map +1 -0
  563. package/dist/ui/TextMessageItemBody.js +34 -0
  564. package/dist/ui/TextMessageItemBody.js.map +1 -0
  565. package/dist/ui/ThumbnailMessageItemBody.js +76 -0
  566. package/dist/ui/ThumbnailMessageItemBody.js.map +1 -0
  567. package/dist/ui/Tooltip.js +28 -0
  568. package/dist/ui/Tooltip.js.map +1 -0
  569. package/dist/ui/TooltipWrapper.js +58 -0
  570. package/dist/ui/TooltipWrapper.js.map +1 -0
  571. package/dist/ui/UnknownMessageItemBody.js +35 -0
  572. package/dist/ui/UnknownMessageItemBody.js.map +1 -0
  573. package/dist/ui/UserListItem.js +151 -0
  574. package/dist/ui/UserListItem.js.map +1 -0
  575. package/dist/ui/UserProfile.js +81 -0
  576. package/dist/ui/UserProfile.js.map +1 -0
  577. package/dist/useSendbirdStateContext.js +20 -0
  578. package/dist/useSendbirdStateContext.js.map +1 -0
  579. package/dist/utils-08c4dbdc.js +34 -0
  580. package/dist/utils-08c4dbdc.js.map +1 -0
  581. package/dist/utils-af1b9829.js +30 -0
  582. package/dist/utils-af1b9829.js.map +1 -0
  583. package/dist/utils-c393e880.js +4 -0
  584. package/dist/utils-c393e880.js.map +1 -0
  585. package/dist/uuid-b0c93400.js +17 -0
  586. package/dist/uuid-b0c93400.js.map +1 -0
  587. package/dist/withSendBird.js +26 -0
  588. package/dist/withSendBird.js.map +1 -0
  589. package/package.json +129 -0
@@ -0,0 +1,861 @@
1
+ import { _ as __assign } from './tslib.es6-e3c44017.js';
2
+ import React__default, { useReducer, useState, useEffect, useMemo, useContext } from 'react';
3
+ import { C as CREATE_CHANNEL$1, U as UPDATE_USER_MESSAGE, L as LEAVE_CHANNEL, b as SEND_MESSAGE_START } from './topics-9442035c.js';
4
+ import { u as uuidv4 } from './uuid-b0c93400.js';
5
+ import { n as noop } from './utils-c393e880.js';
6
+ import { U as UserProfileProvider } from './UserProfileContext-865db5e6.js';
7
+ import useSendbirdStateContext from './useSendbirdStateContext.js';
8
+ import { _ as _objectSpread2, b as _toConsumableArray } from './_rollupPluginBabelHelpers-20904f21.js';
9
+ import { f as filterChannelListParams, g as getChannelsWithUpsertedChannel } from './index-8c72a94a.js';
10
+
11
+ var RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';
12
+ var CREATE_CHANNEL = 'CREATE_CHANNEL';
13
+ var SET_AUTO_SELECT_CHANNEL_ITEM = 'SET_AUTO_SELECT_CHANNEL_ITEM';
14
+ var LEAVE_CHANNEL_SUCCESS = 'LEAVE_CHANNEL_SUCCESS';
15
+ var SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';
16
+ var SHOW_CHANNEL_SETTINGS = 'SHOW_CHANNEL_SETTINGS';
17
+ var HIDE_CHANNEL_SETTINGS = 'HIDE_CHANNEL_SETTINGS';
18
+ var FETCH_CHANNELS_START = 'FETCH_CHANNELS_START';
19
+ var FETCH_CHANNELS_SUCCESS = 'FETCH_CHANNELS_SUCCESS';
20
+ var FETCH_CHANNELS_FAILURE = 'FETCH_CHANNELS_FAILURE';
21
+ var INIT_CHANNELS_START = 'INIT_CHANNELS_START';
22
+ var INIT_CHANNELS_SUCCESS = 'INIT_CHANNELS_SUCCESS';
23
+ var INIT_CHANNELS_FAILURE = 'INIT_CHANNELS_FAILURE';
24
+ var ON_USER_JOINED = 'ON_USER_JOINED';
25
+ var ON_CHANNEL_DELETED = 'ON_CHANNEL_DELETED';
26
+ var ON_LAST_MESSAGE_UPDATED = 'ON_LAST_MESSAGE_UPDATED';
27
+ var ON_USER_LEFT = 'ON_USER_LEFT';
28
+ var ON_CHANNEL_CHANGED = 'ON_CHANNEL_CHANGED';
29
+ var ON_CHANNEL_ARCHIVED = 'ON_CHANNEL_ARCHIVED';
30
+ var ON_CHANNEL_FROZEN = 'ON_CHANNEL_FROZEN';
31
+ var ON_CHANNEL_UNFROZEN = 'ON_CHANNEL_UNFROZEN';
32
+ var ON_READ_RECEIPT_UPDATED = 'ON_READ_RECEIPT_UPDATED';
33
+ var ON_DELIVERY_RECEIPT_UPDATED = 'ON_DELIVERY_RECEIPT_UPDATED';
34
+ var CHANNEL_REPLACED_TO_TOP = 'CHANNEL_REPLACED_TO_TOP';
35
+ var CHANNEL_LIST_PARAMS_UPDATED = 'CHANNEL_LIST_PARAMS_UPDATED';
36
+
37
+ var createEventHandler = function createEventHandler(_ref) {
38
+ var sdk = _ref.sdk,
39
+ sdkChannelHandlerId = _ref.sdkChannelHandlerId,
40
+ channelListDispatcher = _ref.channelListDispatcher,
41
+ logger = _ref.logger;
42
+ var ChannelHandler = new sdk.ChannelHandler();
43
+
44
+ ChannelHandler.onChannelChanged = function (channel) {
45
+ logger.info('ChannelList: onChannelChanged', channel);
46
+ channelListDispatcher({
47
+ type: ON_CHANNEL_CHANGED,
48
+ payload: channel
49
+ });
50
+ };
51
+
52
+ ChannelHandler.onChannelDeleted = function (channelUrl) {
53
+ logger.info('ChannelList: onChannelDeleted', channelUrl);
54
+ channelListDispatcher({
55
+ type: ON_CHANNEL_DELETED,
56
+ payload: channelUrl
57
+ });
58
+ };
59
+
60
+ ChannelHandler.onUserJoined = function (channel) {
61
+ logger.info('ChannelList: onUserJoined', channel);
62
+
63
+ if (channel.lastMessage) {
64
+ channelListDispatcher({
65
+ type: ON_USER_JOINED,
66
+ payload: channel
67
+ });
68
+ }
69
+ };
70
+
71
+ ChannelHandler.onUserBanned = function (channel, user) {
72
+ var currentUser = sdk.currentUser;
73
+ logger.info('Channel | useHandleChannelEvents: onUserBanned', channel);
74
+
75
+ if (user.userId === currentUser.userId) {
76
+ channelListDispatcher({
77
+ type: ON_USER_LEFT,
78
+ payload: {
79
+ channel: channel,
80
+ isMe: true
81
+ }
82
+ });
83
+ } else {
84
+ channelListDispatcher({
85
+ type: ON_USER_LEFT,
86
+ payload: {
87
+ channel: channel,
88
+ isMe: false
89
+ }
90
+ });
91
+ }
92
+ };
93
+
94
+ ChannelHandler.onUserLeft = function (channel, leftUser) {
95
+ var currentUser = sdk.currentUser;
96
+ var isMe = currentUser.userId === leftUser.userId;
97
+ logger.info('ChannelList: onUserLeft', channel);
98
+ channelListDispatcher({
99
+ type: ON_USER_LEFT,
100
+ payload: {
101
+ channel: channel,
102
+ isMe: isMe
103
+ }
104
+ });
105
+ };
106
+
107
+ ChannelHandler.onReadStatus = function (channel) {
108
+ logger.info('ChannelList: onReadStatus', channel);
109
+ channelListDispatcher({
110
+ type: ON_READ_RECEIPT_UPDATED,
111
+ payload: channel
112
+ });
113
+ };
114
+
115
+ ChannelHandler.onDeliveryReceiptUpdated = function (channel) {
116
+ logger.info('ChannelList: onDeliveryReceiptUpdated', channel);
117
+
118
+ if (channel.lastMessage) {
119
+ channelListDispatcher({
120
+ type: ON_DELIVERY_RECEIPT_UPDATED,
121
+ payload: channel
122
+ });
123
+ }
124
+ };
125
+
126
+ ChannelHandler.onMessageUpdated = function (channel, message) {
127
+ if (channel.lastMessage.isEqual(message)) {
128
+ logger.info('ChannelList: onMessageUpdated', channel);
129
+ channelListDispatcher({
130
+ type: ON_LAST_MESSAGE_UPDATED,
131
+ payload: channel
132
+ });
133
+ }
134
+ };
135
+
136
+ ChannelHandler.onChannelHidden = function (channel) {
137
+ logger.info('ChannelList: onChannelHidden', channel);
138
+ channelListDispatcher({
139
+ type: ON_CHANNEL_ARCHIVED,
140
+ payload: channel
141
+ });
142
+ };
143
+
144
+ ChannelHandler.onChannelFrozen = function (channel) {
145
+ logger.info('ChannelList: onChannelFrozen', channel);
146
+ channelListDispatcher({
147
+ type: ON_CHANNEL_FROZEN,
148
+ payload: channel
149
+ });
150
+ };
151
+
152
+ ChannelHandler.onChannelUnfrozen = function (channel) {
153
+ logger.info('ChannelList: onChannelUnfrozen', channel);
154
+ channelListDispatcher({
155
+ type: ON_CHANNEL_UNFROZEN,
156
+ payload: channel
157
+ });
158
+ };
159
+
160
+ logger.info('ChannelList: Added channelHandler');
161
+ sdk.addChannelHandler(sdkChannelHandlerId, ChannelHandler);
162
+ };
163
+
164
+ var createChannelListQuery = function createChannelListQuery(_ref2) {
165
+ var sdk = _ref2.sdk,
166
+ _ref2$userFilledChann = _ref2.userFilledChannelListQuery,
167
+ userFilledChannelListQuery = _ref2$userFilledChann === void 0 ? {} : _ref2$userFilledChann;
168
+ var channelListQuery = sdk.GroupChannel.createMyGroupChannelListQuery();
169
+ channelListQuery.includeEmpty = false;
170
+ channelListQuery.order = 'latest_last_message'; // 'chronological', 'latest_last_message', 'channel_name_alphabetical', and 'metadata_value_alphabetical'
171
+
172
+ channelListQuery.limit = 20; // The value of pagination limit could be set up to 100.
173
+
174
+ if (userFilledChannelListQuery) {
175
+ Object.keys(userFilledChannelListQuery).forEach(function (key) {
176
+ channelListQuery[key] = userFilledChannelListQuery[key];
177
+ });
178
+ }
179
+
180
+ return channelListQuery;
181
+ };
182
+ /**
183
+ * Setup event listener
184
+ * create channel source query
185
+ * addloading screen
186
+ */
187
+
188
+
189
+ function setupChannelList(_ref3) {
190
+ var sdk = _ref3.sdk,
191
+ sdkChannelHandlerId = _ref3.sdkChannelHandlerId,
192
+ channelListDispatcher = _ref3.channelListDispatcher,
193
+ setChannelSource = _ref3.setChannelSource,
194
+ onChannelSelect = _ref3.onChannelSelect,
195
+ userFilledChannelListQuery = _ref3.userFilledChannelListQuery,
196
+ logger = _ref3.logger,
197
+ sortChannelList = _ref3.sortChannelList,
198
+ disableAutoSelect = _ref3.disableAutoSelect;
199
+
200
+ if (sdk && sdk.ChannelHandler) {
201
+ createEventHandler({
202
+ sdk: sdk,
203
+ channelListDispatcher: channelListDispatcher,
204
+ sdkChannelHandlerId: sdkChannelHandlerId,
205
+ logger: logger
206
+ });
207
+ } else {
208
+ logger.console.warning('ChannelList - createEventHandler: sdk or sdk.ChannelHandler does not exist', sdk);
209
+ }
210
+
211
+ logger.info('ChannelList - creating query', {
212
+ userFilledChannelListQuery: userFilledChannelListQuery
213
+ });
214
+ var channelListQuery = createChannelListQuery({
215
+ sdk: sdk,
216
+ userFilledChannelListQuery: userFilledChannelListQuery
217
+ });
218
+ logger.info('ChannelList - created query', channelListQuery);
219
+ setChannelSource(channelListQuery);
220
+ channelListDispatcher({
221
+ type: INIT_CHANNELS_START
222
+ });
223
+
224
+ if (userFilledChannelListQuery) {
225
+ logger.info('ChannelList - setting up channelListQuery', channelListQuery);
226
+ channelListDispatcher({
227
+ type: CHANNEL_LIST_PARAMS_UPDATED,
228
+ payload: {
229
+ channelListQuery: channelListQuery,
230
+ currentUserId: sdk && sdk.currentUser && sdk.currentUser.userId
231
+ }
232
+ });
233
+ }
234
+
235
+ logger.info('ChannelList - fetching channels');
236
+
237
+ if (channelListQuery.hasNext) {
238
+ channelListQuery.next(function (response, error) {
239
+ var swapParams = sdk.getErrorFirstCallback();
240
+ var channelList = response;
241
+ var err = error;
242
+
243
+ if (swapParams) {
244
+ channelList = error;
245
+ err = response;
246
+ }
247
+
248
+ logger.info('ChannelList - fetched channels', channelList);
249
+
250
+ if (err) {
251
+ logger.error('ChannelList - couldnt fetch channels', err);
252
+ channelListDispatcher({
253
+ type: INIT_CHANNELS_FAILURE
254
+ });
255
+ return;
256
+ } // select first channel
257
+
258
+
259
+ logger.info('ChannelList - highlight channel', channelList[0]);
260
+ var sortedChannelList = channelList;
261
+
262
+ if (sortChannelList && typeof sortChannelList === 'function') {
263
+ sortedChannelList = sortChannelList(channelList);
264
+ logger.info('ChannelList - channel list sorted', sortedChannelList);
265
+ }
266
+
267
+ if (!disableAutoSelect) {
268
+ onChannelSelect(sortedChannelList[0]);
269
+ }
270
+
271
+ channelListDispatcher({
272
+ type: INIT_CHANNELS_SUCCESS,
273
+ payload: sortedChannelList
274
+ });
275
+
276
+ if (channelList && typeof channelList.forEach === 'function') {
277
+ logger.info('ChannelList - mark all channels as delivered');
278
+ channelList.forEach(function (c) {
279
+ return c.markAsDelivered();
280
+ });
281
+ }
282
+ });
283
+ } else {
284
+ logger.warning('ChannelList - there are no more channels');
285
+ }
286
+ }
287
+
288
+ var pubSubHandleRemover = function pubSubHandleRemover(subscriber) {
289
+ subscriber.forEach(function (s) {
290
+ try {
291
+ s.remove();
292
+ } catch (_unused) {//
293
+ }
294
+ });
295
+ };
296
+ var pubSubHandler = function pubSubHandler(pubSub, channelListDispatcher) {
297
+ var subScriber = new Map();
298
+ if (!pubSub) return subScriber;
299
+ subScriber.set(CREATE_CHANNEL$1, pubSub.subscribe(CREATE_CHANNEL$1, function (msg) {
300
+ var channel = msg.channel;
301
+ channelListDispatcher({
302
+ type: 'CREATE_CHANNEL',
303
+ payload: channel
304
+ });
305
+ }));
306
+ subScriber.set(UPDATE_USER_MESSAGE, pubSub.subscribe(UPDATE_USER_MESSAGE, function (msg) {
307
+ var _updatedChannel$lastM;
308
+
309
+ var channel = msg.channel,
310
+ message = msg.message;
311
+ var updatedChannel = channel;
312
+
313
+ if ((updatedChannel === null || updatedChannel === void 0 ? void 0 : (_updatedChannel$lastM = updatedChannel.lastMessage) === null || _updatedChannel$lastM === void 0 ? void 0 : _updatedChannel$lastM.messageId) === message.messageId) {
314
+ updatedChannel.lastMessage = message;
315
+ }
316
+
317
+ if (channel) {
318
+ channelListDispatcher({
319
+ type: ON_LAST_MESSAGE_UPDATED,
320
+ payload: updatedChannel
321
+ });
322
+ }
323
+ }));
324
+ subScriber.set(LEAVE_CHANNEL, pubSub.subscribe(LEAVE_CHANNEL, function (msg) {
325
+ var channel = msg.channel;
326
+ channelListDispatcher({
327
+ type: LEAVE_CHANNEL_SUCCESS,
328
+ payload: channel.url
329
+ });
330
+ }));
331
+ subScriber.set(SEND_MESSAGE_START, pubSub.subscribe(SEND_MESSAGE_START, function (msg) {
332
+ var channel = msg.channel;
333
+ channelListDispatcher({
334
+ type: CHANNEL_REPLACED_TO_TOP,
335
+ payload: channel
336
+ });
337
+ }));
338
+ return subScriber;
339
+ };
340
+
341
+ var channelListInitialState = {
342
+ // we might not need this initialized state -> should remove
343
+ initialized: false,
344
+ loading: false,
345
+ allChannels: [],
346
+ currentChannel: null,
347
+ showSettings: false,
348
+ channelListQuery: null,
349
+ currentUserId: '',
350
+ disableAutoSelect: false
351
+ };
352
+
353
+ function reducer(state, action) {
354
+ switch (action.type) {
355
+ case INIT_CHANNELS_START:
356
+ return _objectSpread2(_objectSpread2({}, state), {}, {
357
+ loading: true
358
+ });
359
+
360
+ case RESET_CHANNEL_LIST:
361
+ return channelListInitialState;
362
+
363
+ case INIT_CHANNELS_SUCCESS:
364
+ return _objectSpread2(_objectSpread2({}, state), {}, {
365
+ initialized: true,
366
+ loading: false,
367
+ allChannels: action.payload,
368
+ currentChannel: !state.disableAutoSelect && action.payload && action.payload.length && action.payload.length > 0 ? action.payload[0] : null
369
+ });
370
+
371
+ case FETCH_CHANNELS_SUCCESS:
372
+ {
373
+ var currentChannels = state.allChannels.map(function (c) {
374
+ return c.url;
375
+ });
376
+ var filteredChannels = action.payload.filter(function (_ref) {
377
+ var url = _ref.url;
378
+ return !currentChannels.find(function (c) {
379
+ return c === url;
380
+ });
381
+ });
382
+ return _objectSpread2(_objectSpread2({}, state), {}, {
383
+ allChannels: [].concat(_toConsumableArray(state.allChannels), _toConsumableArray(filteredChannels))
384
+ });
385
+ }
386
+
387
+ case CREATE_CHANNEL:
388
+ {
389
+ var channel = action.payload;
390
+
391
+ if (state.channelListQuery) {
392
+ if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {
393
+ return _objectSpread2(_objectSpread2({}, state), {}, {
394
+ allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel)
395
+ });
396
+ }
397
+
398
+ return _objectSpread2(_objectSpread2({}, state), {}, {
399
+ currentChannel: channel
400
+ });
401
+ }
402
+
403
+ return _objectSpread2(_objectSpread2({}, state), {}, {
404
+ allChannels: [channel].concat(_toConsumableArray(state.allChannels.filter(function (ch) {
405
+ return ch.url !== channel.url;
406
+ }))),
407
+ currentChannel: channel
408
+ });
409
+ }
410
+
411
+ case ON_CHANNEL_ARCHIVED:
412
+ {
413
+ var _state$currentChannel;
414
+
415
+ var _channel = action.payload;
416
+
417
+ if (state.channelListQuery) {
418
+ if (filterChannelListParams(state.channelListQuery, _channel, state.currentUserId)) {
419
+ return _objectSpread2(_objectSpread2({}, state), {}, {
420
+ allChannels: getChannelsWithUpsertedChannel(state.allChannels, _channel)
421
+ }); // TODO: Check if we have to set current channel
422
+ }
423
+ }
424
+
425
+ var nextChannel = _channel.url === ((_state$currentChannel = state.currentChannel) === null || _state$currentChannel === void 0 ? void 0 : _state$currentChannel.url) ? state.allChannels[state.allChannels[0].url === _channel.url ? 1 : 0] : state.currentChannel;
426
+ return _objectSpread2(_objectSpread2({}, state), {}, {
427
+ allChannels: state.allChannels.filter(function (_ref2) {
428
+ var url = _ref2.url;
429
+ return url !== _channel.url;
430
+ }),
431
+ currentChannel: state.disableAutoSelect ? null : nextChannel
432
+ });
433
+ }
434
+
435
+ case LEAVE_CHANNEL_SUCCESS:
436
+ case ON_CHANNEL_DELETED:
437
+ {
438
+ var _state$currentChannel2;
439
+
440
+ var channelUrl = action.payload;
441
+ return _objectSpread2(_objectSpread2({}, state), {}, {
442
+ currentChannel: channelUrl === ((_state$currentChannel2 = state.currentChannel) === null || _state$currentChannel2 === void 0 ? void 0 : _state$currentChannel2.url) ? state.allChannels[0] : state.currentChannel,
443
+ allChannels: state.allChannels.filter(function (_ref3) {
444
+ var url = _ref3.url;
445
+ return url !== channelUrl;
446
+ })
447
+ });
448
+ }
449
+
450
+ case ON_USER_LEFT:
451
+ {
452
+ var _state$currentChannel5;
453
+
454
+ var _action$payload = action.payload,
455
+ _channel2 = _action$payload.channel,
456
+ isMe = _action$payload.isMe;
457
+
458
+ if (state.channelListQuery) {
459
+ var _state$currentChannel4;
460
+
461
+ if (filterChannelListParams(state.channelListQuery, _channel2, state.currentUserId)) {
462
+ var _state$currentChannel3;
463
+
464
+ var _filteredChannels2 = getChannelsWithUpsertedChannel(state.allChannels, _channel2);
465
+
466
+ var _nextChannel3 = isMe && _channel2.url === ((_state$currentChannel3 = state.currentChannel) === null || _state$currentChannel3 === void 0 ? void 0 : _state$currentChannel3.url) ? _filteredChannels2[0] : state.currentChannel;
467
+
468
+ return _objectSpread2(_objectSpread2({}, state), {}, {
469
+ currentChannel: state.disableAutoSelect ? null : _nextChannel3,
470
+ allChannels: _filteredChannels2
471
+ });
472
+ }
473
+
474
+ var _nextChannel2 = _channel2.url === ((_state$currentChannel4 = state.currentChannel) === null || _state$currentChannel4 === void 0 ? void 0 : _state$currentChannel4.url) ? state.allChannels[0] : state.currentChannel;
475
+
476
+ return _objectSpread2(_objectSpread2({}, state), {}, {
477
+ currentChannel: state.disableAutoSelect ? null : _nextChannel2,
478
+ allChannels: state.allChannels.filter(function (_ref4) {
479
+ var url = _ref4.url;
480
+ return url !== _channel2.url;
481
+ })
482
+ });
483
+ }
484
+
485
+ var _filteredChannels = state.allChannels.filter(function (c) {
486
+ return !(c.url === _channel2.url && isMe);
487
+ });
488
+
489
+ var _nextChannel = isMe && _channel2.url === ((_state$currentChannel5 = state.currentChannel) === null || _state$currentChannel5 === void 0 ? void 0 : _state$currentChannel5.url) ? _filteredChannels[0] : state.currentChannel;
490
+
491
+ return _objectSpread2(_objectSpread2({}, state), {}, {
492
+ currentChannel: state.disableAutoSelect ? null : _nextChannel,
493
+ allChannels: _filteredChannels
494
+ });
495
+ }
496
+
497
+ case ON_USER_JOINED:
498
+ case ON_CHANNEL_CHANGED:
499
+ case ON_READ_RECEIPT_UPDATED:
500
+ case ON_DELIVERY_RECEIPT_UPDATED:
501
+ {
502
+ var _state$allChannels = state.allChannels,
503
+ allChannels = _state$allChannels === void 0 ? [] : _state$allChannels;
504
+ var _channel3 = action.payload;
505
+ var unreadMessageCount = _channel3.unreadMessageCount;
506
+ if (!_channel3.lastMessage) return state;
507
+
508
+ if (state.channelListQuery) {
509
+ var _state$currentChannel6;
510
+
511
+ if (filterChannelListParams(state.channelListQuery, _channel3, state.currentUserId)) {
512
+ return _objectSpread2(_objectSpread2({}, state), {}, {
513
+ allChannels: getChannelsWithUpsertedChannel(allChannels, _channel3)
514
+ });
515
+ }
516
+
517
+ var _nextChannel4 = _channel3.url === ((_state$currentChannel6 = state.currentChannel) === null || _state$currentChannel6 === void 0 ? void 0 : _state$currentChannel6.url) ? state.allChannels[state.allChannels[0].url === _channel3.url ? 1 : 0] // if coming channel is first of channel list, current channel will be the next one
518
+ : state.currentChannel;
519
+
520
+ return _objectSpread2(_objectSpread2({}, state), {}, {
521
+ currentChannel: state.disableAutoSelect ? null : _nextChannel4,
522
+ allChannels: state.allChannels.filter(function (_ref5) {
523
+ var url = _ref5.url;
524
+ return url !== _channel3.url;
525
+ })
526
+ });
527
+ } // if its only an unread message count change, dont push to top
528
+
529
+
530
+ if (unreadMessageCount === 0) {
531
+ var currentChannel = allChannels.find(function (_ref6) {
532
+ var url = _ref6.url;
533
+ return url === _channel3.url;
534
+ });
535
+ var currentUnreadCount = currentChannel && currentChannel.unreadMessageCount;
536
+
537
+ if (currentUnreadCount === 0) {
538
+ return _objectSpread2(_objectSpread2({}, state), {}, {
539
+ allChannels: state.allChannels.map(function (ch) {
540
+ return ch.url === _channel3.url ? _channel3 : ch;
541
+ })
542
+ });
543
+ }
544
+ }
545
+
546
+ return _objectSpread2(_objectSpread2({}, state), {}, {
547
+ allChannels: [_channel3].concat(_toConsumableArray(state.allChannels.filter(function (_ref7) {
548
+ var url = _ref7.url;
549
+ return url !== action.payload.url;
550
+ })))
551
+ });
552
+ }
553
+
554
+ case SET_CURRENT_CHANNEL:
555
+ return _objectSpread2(_objectSpread2({}, state), {}, {
556
+ currentChannel: action.payload
557
+ });
558
+
559
+ case SHOW_CHANNEL_SETTINGS:
560
+ return _objectSpread2(_objectSpread2({}, state), {}, {
561
+ showSettings: true
562
+ });
563
+
564
+ case HIDE_CHANNEL_SETTINGS:
565
+ return _objectSpread2(_objectSpread2({}, state), {}, {
566
+ showSettings: false
567
+ });
568
+
569
+ case ON_LAST_MESSAGE_UPDATED:
570
+ return _objectSpread2(_objectSpread2({}, state), {}, {
571
+ allChannels: state.allChannels.map(function (channel) {
572
+ return channel.url === action.payload.url ? action.payload : channel;
573
+ })
574
+ });
575
+
576
+ case ON_CHANNEL_FROZEN:
577
+ {
578
+ var _channel4 = action.payload;
579
+
580
+ if (state.channelListQuery) {
581
+ var _state$currentChannel7;
582
+
583
+ if (filterChannelListParams(state.channelListQuery, _channel4, state.currentUserId)) {
584
+ return _objectSpread2(_objectSpread2({}, state), {}, {
585
+ allChannels: getChannelsWithUpsertedChannel(state.allChannels, _channel4)
586
+ });
587
+ }
588
+
589
+ var _nextChannel5 = _channel4.url === ((_state$currentChannel7 = state.currentChannel) === null || _state$currentChannel7 === void 0 ? void 0 : _state$currentChannel7.url) ? state.allChannels[state.allChannels[0].url === _channel4.url ? 1 : 0] // if coming channel is first of channel list, current channel will be the next one
590
+ : state.currentChannel;
591
+
592
+ return _objectSpread2(_objectSpread2({}, state), {}, {
593
+ allChannels: state.allChannels.filter(function (_ref8) {
594
+ var url = _ref8.url;
595
+ return url !== _channel4.url;
596
+ }),
597
+ currentChannel: state.disableAutoSelect ? null : _nextChannel5
598
+ });
599
+ }
600
+
601
+ return _objectSpread2(_objectSpread2({}, state), {}, {
602
+ allChannels: state.allChannels.map(function (ch) {
603
+ if (ch.url === _channel4.url) {
604
+ // eslint-disable-next-line no-param-reassign
605
+ ch.isFrozen = true;
606
+ return ch;
607
+ }
608
+
609
+ return ch;
610
+ })
611
+ });
612
+ }
613
+
614
+ case ON_CHANNEL_UNFROZEN:
615
+ {
616
+ var _channel5 = action.payload;
617
+
618
+ if (state.channelListQuery) {
619
+ var _state$currentChannel8;
620
+
621
+ if (filterChannelListParams(state.channelListQuery, _channel5, state.currentUserId)) {
622
+ return _objectSpread2(_objectSpread2({}, state), {}, {
623
+ allChannels: getChannelsWithUpsertedChannel(state.allChannels, _channel5)
624
+ });
625
+ }
626
+
627
+ var _nextChannel6 = _channel5.url === ((_state$currentChannel8 = state.currentChannel) === null || _state$currentChannel8 === void 0 ? void 0 : _state$currentChannel8.url) ? state.allChannels[state.allChannels[0].url === _channel5.url ? 1 : 0] // if coming channel is first of channel list, current channel will be the next one
628
+ : state.currentChannel;
629
+
630
+ return _objectSpread2(_objectSpread2({}, state), {}, {
631
+ allChannels: state.allChannels.filter(function (_ref9) {
632
+ var url = _ref9.url;
633
+ return url !== _channel5.url;
634
+ }),
635
+ currentChannel: state.disableAutoSelect ? null : _nextChannel6
636
+ });
637
+ }
638
+
639
+ return _objectSpread2(_objectSpread2({}, state), {}, {
640
+ allChannels: state.allChannels.map(function (ch) {
641
+ if (ch.url === _channel5.url) {
642
+ // eslint-disable-next-line no-param-reassign
643
+ ch.isFrozen = false;
644
+ return ch;
645
+ }
646
+
647
+ return ch;
648
+ })
649
+ });
650
+ }
651
+
652
+ case CHANNEL_REPLACED_TO_TOP:
653
+ {
654
+ return _objectSpread2(_objectSpread2({}, state), {}, {
655
+ allChannels: [action.payload].concat(_toConsumableArray(state.allChannels.filter(function (channel) {
656
+ return channel.url !== action.payload.url;
657
+ })))
658
+ });
659
+ }
660
+
661
+ case CHANNEL_LIST_PARAMS_UPDATED:
662
+ return _objectSpread2(_objectSpread2({}, state), {}, {
663
+ currentUserId: action.payload.currentUserId,
664
+ channelListQuery: action.payload.channelListQuery
665
+ });
666
+
667
+ case SET_AUTO_SELECT_CHANNEL_ITEM:
668
+ {
669
+ return _objectSpread2(_objectSpread2({}, state), {}, {
670
+ ableAutoSelect: action.payload
671
+ });
672
+ }
673
+
674
+ default:
675
+ return state;
676
+ }
677
+ }
678
+
679
+ var ChannelListContext = /*#__PURE__*/React__default.createContext({
680
+ disableUserProfile: true,
681
+ allowProfileEdit: true,
682
+ onBeforeCreateChannel: null,
683
+ onThemeChange: null,
684
+ onProfileEditSuccess: null,
685
+ onChannelSelect: null,
686
+ queries: {},
687
+ className: null,
688
+ initialized: false,
689
+ loading: false,
690
+ allChannels: [],
691
+ currentChannel: null,
692
+ showSettings: false,
693
+ channelListQuery: {},
694
+ currentUserId: null,
695
+ channelListDispatcher: null,
696
+ channelSource: null
697
+ });
698
+
699
+ var ChannelListProvider = function ChannelListProvider(props) {
700
+ // destruct props
701
+ var children = props.children,
702
+ className = props.className,
703
+ disableUserProfile = props.disableUserProfile,
704
+ allowProfileEdit = props.allowProfileEdit,
705
+ queries = props.queries,
706
+ onProfileEditSuccess = props.onProfileEditSuccess,
707
+ onThemeChange = props.onThemeChange,
708
+ onBeforeCreateChannel = props.onBeforeCreateChannel,
709
+ sortChannelList = props.sortChannelList,
710
+ disableAutoSelect = props.disableAutoSelect;
711
+ var onChannelSelect = (props === null || props === void 0 ? void 0 : props.onChannelSelect) || noop; // fetch store from <SendbirdProvider />
712
+
713
+ var globalStore = useSendbirdStateContext();
714
+ var config = globalStore.config,
715
+ stores = globalStore.stores;
716
+ var sdkStore = stores.sdkStore;
717
+ var pubSub = config.pubSub,
718
+ logger = config.logger;
719
+ var sdk = sdkStore.sdk; // derive some variables
720
+ // enable if it is true atleast once(both are flase by default)
721
+
722
+ var userDefinedDisableUserProfile = disableUserProfile || (config === null || config === void 0 ? void 0 : config.disableUserProfile);
723
+ var userDefinedRenderProfile = config === null || config === void 0 ? void 0 : config.renderUserProfile;
724
+ var enableEditProfile = allowProfileEdit || (config === null || config === void 0 ? void 0 : config.allowProfileEdit);
725
+ var userFilledChannelListQuery = queries === null || queries === void 0 ? void 0 : queries.channelListQuery;
726
+ var userFilledApplicationUserListQuery = queries === null || queries === void 0 ? void 0 : queries.applicationUserListQuery;
727
+ var sdkIntialized = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.initialized;
728
+
729
+ var _a = useReducer(reducer, channelListInitialState),
730
+ channelListStore = _a[0],
731
+ channelListDispatcher = _a[1];
732
+
733
+ var _b = useState(),
734
+ channelSource = _b[0],
735
+ setChannelSource = _b[1];
736
+
737
+ var _c = useState(null),
738
+ sdkChannelHandlerId = _c[0],
739
+ setSdkChannelHandlerId = _c[1];
740
+
741
+ var loading = channelListStore.loading,
742
+ currentChannel = channelListStore.currentChannel;
743
+ useEffect(function () {
744
+ var subscriber = pubSubHandler(pubSub, channelListDispatcher);
745
+ return function () {
746
+ pubSubHandleRemover(subscriber);
747
+ };
748
+ }, [sdkIntialized]);
749
+ useEffect(function () {
750
+ channelListDispatcher({
751
+ type: SET_AUTO_SELECT_CHANNEL_ITEM,
752
+ payload: disableAutoSelect
753
+ });
754
+ }, [disableAutoSelect]);
755
+ useEffect(function () {
756
+ setSdkChannelHandlerId(uuidv4);
757
+
758
+ if (sdkIntialized) {
759
+ logger.info('ChannelList: Setup channelHandlers');
760
+ setupChannelList({
761
+ sdk: sdk,
762
+ sdkChannelHandlerId: sdkChannelHandlerId,
763
+ channelListDispatcher: channelListDispatcher,
764
+ setChannelSource: setChannelSource,
765
+ onChannelSelect: onChannelSelect,
766
+ userFilledChannelListQuery: userFilledChannelListQuery,
767
+ logger: logger,
768
+ sortChannelList: sortChannelList,
769
+ disableAutoSelect: disableAutoSelect
770
+ });
771
+ } else {
772
+ logger.info('ChannelList: Removing channelHandlers'); // remove previous channelHandlers
773
+
774
+ if (sdk && (sdk === null || sdk === void 0 ? void 0 : sdk.removeChannelHandler)) {
775
+ sdk.removeChannelHandler(sdkChannelHandlerId);
776
+ } // remove channelSource
777
+
778
+
779
+ setChannelSource(null); // cleanup
780
+
781
+ channelListDispatcher({
782
+ type: RESET_CHANNEL_LIST,
783
+ payload: null
784
+ });
785
+ }
786
+
787
+ return function () {
788
+ logger.info('ChannelList: Removing channelHandlers');
789
+
790
+ if (sdk && sdk.removeChannelHandler) {
791
+ sdk.removeChannelHandler(sdkChannelHandlerId);
792
+ }
793
+ };
794
+ }, [sdkIntialized, userFilledChannelListQuery, sortChannelList]);
795
+ var queries_ = useMemo(function () {
796
+ return {
797
+ applicationUserListQuery: userFilledApplicationUserListQuery,
798
+ channelListQuery: userFilledChannelListQuery
799
+ };
800
+ }, [userFilledApplicationUserListQuery, userFilledChannelListQuery]);
801
+ var allChannels = channelListStore.allChannels;
802
+ var sortedChannels = sortChannelList && typeof sortChannelList === 'function' ? sortChannelList(allChannels) : allChannels;
803
+
804
+ if (sortedChannels.length !== allChannels.length) {
805
+ var warning = "ChannelList: You have removed/added extra channels on sortChannelList\n this could cause unexpected problems"; // eslint-disable-next-line no-console
806
+
807
+ console.warn(warning, {
808
+ before: allChannels,
809
+ after: sortedChannels
810
+ });
811
+ logger.warning(warning, {
812
+ before: allChannels,
813
+ after: sortedChannels
814
+ });
815
+ }
816
+
817
+ useEffect(function () {
818
+ if (!sdk || !sdk.GroupChannel || !currentChannel || !(currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url)) {
819
+ return;
820
+ }
821
+
822
+ sdk.GroupChannel.getChannel(currentChannel.url, function (groupChannel) {
823
+ if (groupChannel) {
824
+ onChannelSelect(groupChannel);
825
+ } else {
826
+ onChannelSelect(null);
827
+ }
828
+ });
829
+ }, [currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url]);
830
+ return /*#__PURE__*/React__default.createElement(ChannelListContext.Provider, {
831
+ value: __assign(__assign({
832
+ className: className,
833
+ disableUserProfile: disableUserProfile,
834
+ queries: queries_,
835
+ onProfileEditSuccess: onProfileEditSuccess,
836
+ onThemeChange: onThemeChange,
837
+ onBeforeCreateChannel: onBeforeCreateChannel,
838
+ onChannelSelect: onChannelSelect,
839
+ sortChannelList: sortChannelList,
840
+ loading: loading,
841
+ allowProfileEdit: enableEditProfile,
842
+ channelListDispatcher: channelListDispatcher,
843
+ channelSource: channelSource
844
+ }, channelListStore), {
845
+ allChannels: sortedChannels
846
+ })
847
+ }, /*#__PURE__*/React__default.createElement(UserProfileProvider, {
848
+ disableUserProfile: userDefinedDisableUserProfile,
849
+ renderUserProfile: userDefinedRenderProfile
850
+ }, /*#__PURE__*/React__default.createElement("div", {
851
+ className: "sendbird-channel-list " + className
852
+ }, children)));
853
+ };
854
+
855
+ function useChannelListContext() {
856
+ var context = useContext(ChannelListContext);
857
+ return context;
858
+ }
859
+
860
+ export { ChannelListProvider as C, FETCH_CHANNELS_START as F, LEAVE_CHANNEL_SUCCESS as L, SET_CURRENT_CHANNEL as S, FETCH_CHANNELS_FAILURE as a, FETCH_CHANNELS_SUCCESS as b, useChannelListContext as u };
861
+ //# sourceMappingURL=ChannelListProvider-0b0c2c40.js.map