@sendbird/uikit-react 3.6.11-beta.2 → 3.7.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 (994) hide show
  1. package/App.js +272 -345
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +134 -0
  4. package/Channel/components/ChannelHeader.js +45 -50
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +76 -77
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +53 -58
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +9 -12
  11. package/Channel/components/FrozenNotification.js.map +1 -1
  12. package/Channel/components/Message.js +198 -176
  13. package/Channel/components/Message.js.map +1 -1
  14. package/Channel/components/MessageInput.js +137 -130
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageList.js +171 -161
  17. package/Channel/components/MessageList.js.map +1 -1
  18. package/Channel/components/RemoveMessageModal.js +40 -41
  19. package/Channel/components/RemoveMessageModal.js.map +1 -1
  20. package/Channel/components/SuggestedMentionList.js +156 -136
  21. package/Channel/components/SuggestedMentionList.js.map +1 -1
  22. package/Channel/components/TypingIndicator.js +47 -48
  23. package/Channel/components/TypingIndicator.js.map +1 -1
  24. package/Channel/components/UnreadCount.js +17 -18
  25. package/Channel/components/UnreadCount.js.map +1 -1
  26. package/Channel/context.js +17 -17
  27. package/Channel/utils/compareMessagesForGrouping.js +11 -11
  28. package/Channel/utils/compareMessagesForGrouping.js.map +1 -1
  29. package/Channel/utils/getMessagePartsInfo.js +32 -26
  30. package/Channel/utils/getMessagePartsInfo.js.map +1 -1
  31. package/Channel.js +54 -51
  32. package/Channel.js.map +1 -1
  33. package/ChannelList/components/AddChannel.js +32 -30
  34. package/ChannelList/components/AddChannel.js.map +1 -1
  35. package/ChannelList/components/ChannelListHeader.js +22 -31
  36. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  37. package/ChannelList/components/ChannelListUI.js +93 -88
  38. package/ChannelList/components/ChannelListUI.js.map +1 -1
  39. package/ChannelList/components/ChannelPreview.js +79 -75
  40. package/ChannelList/components/ChannelPreview.js.map +1 -1
  41. package/ChannelList/components/ChannelPreviewAction.js +85 -91
  42. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  43. package/ChannelList/context.js +9 -10
  44. package/ChannelList/context.js.map +1 -1
  45. package/ChannelList.js +38 -35
  46. package/ChannelList.js.map +1 -1
  47. package/ChannelListProvider-f520f5b3.js +1051 -0
  48. package/ChannelListProvider-f520f5b3.js.map +1 -0
  49. package/ChannelProvider-7f6fd1f8.js +2080 -0
  50. package/ChannelProvider-7f6fd1f8.js.map +1 -0
  51. package/ChannelSettings/components/ChannelProfile.js +42 -37
  52. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  53. package/ChannelSettings/components/ChannelSettingsUI.js +44 -47
  54. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  55. package/ChannelSettings/components/EditDetailsModal.js +54 -52
  56. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  57. package/ChannelSettings/components/LeaveChannel.js +39 -41
  58. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  59. package/ChannelSettings/components/ModerationPanel.js +552 -509
  60. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  61. package/ChannelSettings/components/UserListItem.js +66 -66
  62. package/ChannelSettings/components/UserListItem.js.map +1 -1
  63. package/ChannelSettings/components/UserPanel.js +29 -26
  64. package/ChannelSettings/components/UserPanel.js.map +1 -1
  65. package/ChannelSettings/context.js +52 -57
  66. package/ChannelSettings/context.js.map +1 -1
  67. package/ChannelSettings.js +20 -19
  68. package/ChannelSettings.js.map +1 -1
  69. package/CreateChannel/components/CreateChannelUI.js +23 -25
  70. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  71. package/CreateChannel/components/InviteUsers.js +106 -102
  72. package/CreateChannel/components/InviteUsers.js.map +1 -1
  73. package/CreateChannel/components/SelectChannelType.js +38 -43
  74. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  75. package/CreateChannel/context.js +4 -4
  76. package/CreateChannel.js +22 -23
  77. package/CreateChannel.js.map +1 -1
  78. package/CreateChannelProvider-c25dd81b.js +48 -0
  79. package/{CreateChannelProvider-a2fad282.js.map → CreateChannelProvider-c25dd81b.js.map} +1 -1
  80. package/CreateOpenChannel/components/CreateOpenChannelUI.js +38 -36
  81. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  82. package/CreateOpenChannel/context.js +29 -34
  83. package/CreateOpenChannel/context.js.map +1 -1
  84. package/CreateOpenChannel.js +20 -21
  85. package/CreateOpenChannel.js.map +1 -1
  86. package/EditUserProfile/components/EditUserProfileUI.js +152 -21
  87. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  88. package/EditUserProfile/context.js +13 -13
  89. package/EditUserProfile/context.js.map +1 -1
  90. package/EditUserProfile.js +19 -19
  91. package/EditUserProfile.js.map +1 -1
  92. package/LocalizationContext-d18a86d8.js +20 -0
  93. package/{LocalizationContext-2463058b.js.map → LocalizationContext-d18a86d8.js.map} +1 -1
  94. package/MediaQueryContext-3eeeec4f.js +85 -0
  95. package/MediaQueryContext-3eeeec4f.js.map +1 -0
  96. package/MemberList-469dae9b.js +422 -0
  97. package/{MemberList-593867cb.js.map → MemberList-469dae9b.js.map} +1 -1
  98. package/Message/context.js +11 -12
  99. package/Message/context.js.map +1 -1
  100. package/Message/hooks/useDirtyGetMentions.js +21 -26
  101. package/Message/hooks/useDirtyGetMentions.js.map +1 -1
  102. package/MessageSearch/components/MessageSearchUI.js +56 -61
  103. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  104. package/MessageSearch/context.js +166 -177
  105. package/MessageSearch/context.js.map +1 -1
  106. package/MessageSearch.js +49 -47
  107. package/MessageSearch.js.map +1 -1
  108. package/OpenChannel/components/FrozenChannelNotification.js +6 -8
  109. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  110. package/OpenChannel/components/OpenChannelHeader.js +22 -27
  111. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  112. package/OpenChannel/components/OpenChannelInput.js +32 -35
  113. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  114. package/OpenChannel/components/OpenChannelMessage.js +170 -171
  115. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  116. package/OpenChannel/components/OpenChannelMessageList.js +70 -64
  117. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  118. package/OpenChannel/components/OpenChannelUI.js +53 -54
  119. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  120. package/OpenChannel/context.js +8 -9
  121. package/OpenChannel/context.js.map +1 -1
  122. package/OpenChannel.js +37 -35
  123. package/OpenChannel.js.map +1 -1
  124. package/OpenChannelList/components/OpenChannelListUI.js +63 -61
  125. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  126. package/OpenChannelList/components/OpenChannelPreview.js +22 -21
  127. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  128. package/OpenChannelList/context.js +3 -3
  129. package/OpenChannelList.js +27 -27
  130. package/OpenChannelList.js.map +1 -1
  131. package/{OpenChannelListProvider-a0a09f0b.js → OpenChannelListProvider-24e735a1.js} +156 -178
  132. package/{OpenChannelListProvider-a0a09f0b.js.map → OpenChannelListProvider-24e735a1.js.map} +1 -1
  133. package/OpenChannelProvider-e9cb0f98.js +1850 -0
  134. package/{OpenChannelProvider-3e4b8c8e.js.map → OpenChannelProvider-e9cb0f98.js.map} +1 -1
  135. package/OpenChannelSettings/components/EditDetailsModal.js +52 -51
  136. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  137. package/OpenChannelSettings/components/OpenChannelProfile.js +30 -29
  138. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  139. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +39 -47
  140. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  141. package/OpenChannelSettings/components/OperatorUI.js +550 -518
  142. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  143. package/OpenChannelSettings/components/ParticipantUI.js +16 -15
  144. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  145. package/OpenChannelSettings/context.js +58 -57
  146. package/OpenChannelSettings/context.js.map +1 -1
  147. package/OpenChannelSettings.js +20 -19
  148. package/OpenChannelSettings.js.map +1 -1
  149. package/README.md +4 -4
  150. package/RemoveMessageModal-f0cd37a5.js +33 -0
  151. package/RemoveMessageModal-f0cd37a5.js.map +1 -0
  152. package/SendbirdProvider.js +726 -690
  153. package/SendbirdProvider.js.map +1 -1
  154. package/Thread/components/ParentMessageInfo.js +194 -181
  155. package/Thread/components/ParentMessageInfo.js.map +1 -1
  156. package/Thread/components/ParentMessageInfoItem.js +86 -79
  157. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  158. package/Thread/components/ThreadHeader.js +22 -22
  159. package/Thread/components/ThreadHeader.js.map +1 -1
  160. package/Thread/components/ThreadList.js +126 -94
  161. package/Thread/components/ThreadList.js.map +1 -1
  162. package/Thread/components/ThreadListItem.js +260 -241
  163. package/Thread/components/ThreadListItem.js.map +1 -1
  164. package/Thread/components/ThreadMessageInput.js +121 -120
  165. package/Thread/components/ThreadMessageInput.js.map +1 -1
  166. package/Thread/components/ThreadUI.js +128 -144
  167. package/Thread/components/ThreadUI.js.map +1 -1
  168. package/Thread/context/types.js +9 -9
  169. package/Thread/context/types.js.map +1 -1
  170. package/Thread/context.js +1678 -19
  171. package/Thread/context.js.map +1 -1
  172. package/Thread.js +76 -73
  173. package/Thread.js.map +1 -1
  174. package/UserProfileContext-26e71f9a.js +34 -0
  175. package/UserProfileContext-26e71f9a.js.map +1 -0
  176. package/VoicePlayer/context.js +3 -3
  177. package/VoicePlayer/useVoicePlayer.js +52 -46
  178. package/VoicePlayer/useVoicePlayer.js.map +1 -1
  179. package/VoiceRecorder/context.js +68 -64
  180. package/VoiceRecorder/context.js.map +1 -1
  181. package/VoiceRecorder/useVoiceRecorder.js +50 -52
  182. package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  183. package/{WebAudioUtils-f9386235.js → WebAudioUtils-dbb010a5.js} +38 -38
  184. package/{WebAudioUtils-f9386235.js.map → WebAudioUtils-dbb010a5.js.map} +1 -1
  185. package/{_rollupPluginBabelHelpers-50c9576f.js → _rollupPluginBabelHelpers-07dcbc2b.js} +17 -17
  186. package/_rollupPluginBabelHelpers-07dcbc2b.js.map +1 -0
  187. package/{actionTypes-501b8c11.js → actionTypes-3cd49b5c.js} +2 -2
  188. package/{actionTypes-501b8c11.js.map → actionTypes-3cd49b5c.js.map} +1 -1
  189. package/cjs/App.js +270 -344
  190. package/cjs/App.js.map +1 -1
  191. package/cjs/Channel/components/ChannelHeader.js +44 -49
  192. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  193. package/cjs/Channel/components/ChannelUI.js +79 -80
  194. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  195. package/cjs/Channel/components/FileViewer.js +52 -57
  196. package/cjs/Channel/components/FileViewer.js.map +1 -1
  197. package/cjs/Channel/components/FrozenNotification.js +9 -12
  198. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  199. package/cjs/Channel/components/Message.js +197 -175
  200. package/cjs/Channel/components/Message.js.map +1 -1
  201. package/cjs/Channel/components/MessageInput.js +136 -129
  202. package/cjs/Channel/components/MessageInput.js.map +1 -1
  203. package/cjs/Channel/components/MessageList.js +173 -163
  204. package/cjs/Channel/components/MessageList.js.map +1 -1
  205. package/cjs/Channel/components/RemoveMessageModal.js +41 -42
  206. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  207. package/cjs/Channel/components/SuggestedMentionList.js +155 -135
  208. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  209. package/cjs/Channel/components/TypingIndicator.js +46 -47
  210. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  211. package/cjs/Channel/components/UnreadCount.js +17 -18
  212. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  213. package/cjs/Channel/context.js +17 -17
  214. package/cjs/Channel/utils/compareMessagesForGrouping.js +11 -11
  215. package/cjs/Channel/utils/compareMessagesForGrouping.js.map +1 -1
  216. package/cjs/Channel/utils/getMessagePartsInfo.js +32 -26
  217. package/cjs/Channel/utils/getMessagePartsInfo.js.map +1 -1
  218. package/cjs/Channel.js +54 -51
  219. package/cjs/Channel.js.map +1 -1
  220. package/cjs/ChannelList/components/AddChannel.js +31 -29
  221. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  222. package/cjs/ChannelList/components/ChannelListHeader.js +21 -30
  223. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  224. package/cjs/ChannelList/components/ChannelListUI.js +96 -91
  225. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  226. package/cjs/ChannelList/components/ChannelPreview.js +78 -74
  227. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  228. package/cjs/ChannelList/components/ChannelPreviewAction.js +84 -91
  229. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  230. package/cjs/ChannelList/context.js +9 -10
  231. package/cjs/ChannelList/context.js.map +1 -1
  232. package/cjs/ChannelList.js +38 -35
  233. package/cjs/ChannelList.js.map +1 -1
  234. package/cjs/ChannelListProvider-a418de2e.js +1060 -0
  235. package/cjs/ChannelListProvider-a418de2e.js.map +1 -0
  236. package/cjs/ChannelProvider-7fa98120.js +2088 -0
  237. package/cjs/ChannelProvider-7fa98120.js.map +1 -0
  238. package/cjs/ChannelSettings/components/ChannelProfile.js +41 -36
  239. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  240. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +44 -47
  241. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  242. package/cjs/ChannelSettings/components/EditDetailsModal.js +54 -52
  243. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  244. package/cjs/ChannelSettings/components/LeaveChannel.js +38 -40
  245. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  246. package/cjs/ChannelSettings/components/ModerationPanel.js +559 -516
  247. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  248. package/cjs/ChannelSettings/components/UserListItem.js +66 -66
  249. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  250. package/cjs/ChannelSettings/components/UserPanel.js +29 -26
  251. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  252. package/cjs/ChannelSettings/context.js +51 -56
  253. package/cjs/ChannelSettings/context.js.map +1 -1
  254. package/cjs/ChannelSettings.js +20 -19
  255. package/cjs/ChannelSettings.js.map +1 -1
  256. package/cjs/CreateChannel/components/CreateChannelUI.js +23 -25
  257. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  258. package/cjs/CreateChannel/components/InviteUsers.js +106 -102
  259. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  260. package/cjs/CreateChannel/components/SelectChannelType.js +37 -42
  261. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  262. package/cjs/CreateChannel/context.js +4 -4
  263. package/cjs/CreateChannel.js +22 -23
  264. package/cjs/CreateChannel.js.map +1 -1
  265. package/cjs/CreateChannelProvider-70c9cb7c.js +55 -0
  266. package/cjs/{CreateChannelProvider-8b8a557c.js.map → CreateChannelProvider-70c9cb7c.js.map} +1 -1
  267. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +39 -37
  268. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  269. package/cjs/CreateOpenChannel/context.js +28 -33
  270. package/cjs/CreateOpenChannel/context.js.map +1 -1
  271. package/cjs/CreateOpenChannel.js +20 -21
  272. package/cjs/CreateOpenChannel.js.map +1 -1
  273. package/cjs/EditUserProfile/components/EditUserProfileUI.js +153 -22
  274. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  275. package/cjs/EditUserProfile/context.js +13 -13
  276. package/cjs/EditUserProfile/context.js.map +1 -1
  277. package/cjs/EditUserProfile.js +21 -21
  278. package/cjs/EditUserProfile.js.map +1 -1
  279. package/cjs/{LocalizationContext-482c1343.js → LocalizationContext-5009012e.js} +9 -9
  280. package/cjs/{LocalizationContext-482c1343.js.map → LocalizationContext-5009012e.js.map} +1 -1
  281. package/cjs/MediaQueryContext-d6fdbe43.js +92 -0
  282. package/cjs/MediaQueryContext-d6fdbe43.js.map +1 -0
  283. package/cjs/MemberList-529a0086.js +428 -0
  284. package/cjs/{MemberList-26b8de48.js.map → MemberList-529a0086.js.map} +1 -1
  285. package/cjs/Message/context.js +11 -12
  286. package/cjs/Message/context.js.map +1 -1
  287. package/cjs/Message/hooks/useDirtyGetMentions.js +21 -26
  288. package/cjs/Message/hooks/useDirtyGetMentions.js.map +1 -1
  289. package/cjs/MessageSearch/components/MessageSearchUI.js +60 -65
  290. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  291. package/cjs/MessageSearch/context.js +165 -176
  292. package/cjs/MessageSearch/context.js.map +1 -1
  293. package/cjs/MessageSearch.js +49 -47
  294. package/cjs/MessageSearch.js.map +1 -1
  295. package/cjs/OpenChannel/components/FrozenChannelNotification.js +6 -8
  296. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  297. package/cjs/OpenChannel/components/OpenChannelHeader.js +22 -27
  298. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  299. package/cjs/OpenChannel/components/OpenChannelInput.js +32 -35
  300. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  301. package/cjs/OpenChannel/components/OpenChannelMessage.js +169 -170
  302. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  303. package/cjs/OpenChannel/components/OpenChannelMessageList.js +69 -63
  304. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  305. package/cjs/OpenChannel/components/OpenChannelUI.js +56 -57
  306. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  307. package/cjs/OpenChannel/context.js +8 -9
  308. package/cjs/OpenChannel/context.js.map +1 -1
  309. package/cjs/OpenChannel.js +37 -35
  310. package/cjs/OpenChannel.js.map +1 -1
  311. package/cjs/OpenChannelList/components/OpenChannelListUI.js +66 -64
  312. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  313. package/cjs/OpenChannelList/components/OpenChannelPreview.js +22 -21
  314. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  315. package/cjs/OpenChannelList/context.js +3 -3
  316. package/cjs/OpenChannelList.js +27 -27
  317. package/cjs/OpenChannelList.js.map +1 -1
  318. package/cjs/OpenChannelListProvider-0b8cd3bf.js +416 -0
  319. package/cjs/{OpenChannelListProvider-2e3ee48d.js.map → OpenChannelListProvider-0b8cd3bf.js.map} +1 -1
  320. package/cjs/OpenChannelProvider-d8cc11fe.js +1859 -0
  321. package/cjs/{OpenChannelProvider-8577ea58.js.map → OpenChannelProvider-d8cc11fe.js.map} +1 -1
  322. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +53 -52
  323. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  324. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +29 -28
  325. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  326. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +40 -48
  327. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  328. package/cjs/OpenChannelSettings/components/OperatorUI.js +557 -525
  329. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  330. package/cjs/OpenChannelSettings/components/ParticipantUI.js +16 -15
  331. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  332. package/cjs/OpenChannelSettings/context.js +57 -56
  333. package/cjs/OpenChannelSettings/context.js.map +1 -1
  334. package/cjs/OpenChannelSettings.js +20 -19
  335. package/cjs/OpenChannelSettings.js.map +1 -1
  336. package/cjs/RemoveMessageModal-f029d40e.js +39 -0
  337. package/cjs/RemoveMessageModal-f029d40e.js.map +1 -0
  338. package/cjs/SendbirdProvider.js +733 -693
  339. package/cjs/SendbirdProvider.js.map +1 -1
  340. package/cjs/Thread/components/ParentMessageInfo.js +193 -180
  341. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  342. package/cjs/Thread/components/ParentMessageInfoItem.js +86 -79
  343. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  344. package/cjs/Thread/components/ThreadHeader.js +22 -22
  345. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  346. package/cjs/Thread/components/ThreadList.js +125 -93
  347. package/cjs/Thread/components/ThreadList.js.map +1 -1
  348. package/cjs/Thread/components/ThreadListItem.js +263 -244
  349. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  350. package/cjs/Thread/components/ThreadMessageInput.js +120 -119
  351. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  352. package/cjs/Thread/components/ThreadUI.js +134 -150
  353. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  354. package/cjs/Thread/context/types.js +9 -13
  355. package/cjs/Thread/context/types.js.map +1 -1
  356. package/cjs/Thread/context.js +1680 -21
  357. package/cjs/Thread/context.js.map +1 -1
  358. package/cjs/Thread.js +76 -73
  359. package/cjs/Thread.js.map +1 -1
  360. package/cjs/UserProfileContext-922a43ec.js +41 -0
  361. package/cjs/UserProfileContext-922a43ec.js.map +1 -0
  362. package/cjs/VoicePlayer/context.js +3 -3
  363. package/cjs/VoicePlayer/useVoicePlayer.js +52 -46
  364. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
  365. package/cjs/VoiceRecorder/context.js +67 -63
  366. package/cjs/VoiceRecorder/context.js.map +1 -1
  367. package/cjs/VoiceRecorder/useVoiceRecorder.js +49 -51
  368. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  369. package/cjs/{WebAudioUtils-142344fd.js → WebAudioUtils-29717597.js} +38 -38
  370. package/cjs/{WebAudioUtils-142344fd.js.map → WebAudioUtils-29717597.js.map} +1 -1
  371. package/cjs/{_rollupPluginBabelHelpers-83d7e84b.js → _rollupPluginBabelHelpers-94c18dc1.js} +16 -17
  372. package/cjs/_rollupPluginBabelHelpers-94c18dc1.js.map +1 -0
  373. package/cjs/{actionTypes-1d118952.js → actionTypes-7fa02f94.js} +2 -2
  374. package/cjs/{actionTypes-1d118952.js.map → actionTypes-7fa02f94.js.map} +1 -1
  375. package/cjs/{color-d83b77ac.js → color-477ddbd4.js} +12 -13
  376. package/cjs/color-477ddbd4.js.map +1 -0
  377. package/cjs/{compareIds-bef997cb.js → compareIds-de541666.js} +7 -6
  378. package/cjs/compareIds-de541666.js.map +1 -0
  379. package/cjs/{const-1726bde0.js → const-640252c1.js} +4 -4
  380. package/cjs/{const-1726bde0.js.map → const-640252c1.js.map} +1 -1
  381. package/cjs/const-9def5c09.js +19 -0
  382. package/cjs/{const-67ff9e34.js.map → const-9def5c09.js.map} +1 -1
  383. package/cjs/consts-54f5c12d.js +6 -0
  384. package/cjs/consts-54f5c12d.js.map +1 -0
  385. package/cjs/consts-85cd42fa.js +6 -0
  386. package/cjs/{consts-bf228385.js.map → consts-85cd42fa.js.map} +1 -1
  387. package/cjs/{consts-fb07c671.js → consts-95462b21.js} +18 -25
  388. package/cjs/{consts-fb07c671.js.map → consts-95462b21.js.map} +1 -1
  389. package/cjs/consts-a3b7ae99.js +6 -0
  390. package/cjs/{consts-d3b53f23.js.map → consts-a3b7ae99.js.map} +1 -1
  391. package/cjs/{context-bd2878ff.js → context-9814fafe.js} +5 -6
  392. package/cjs/{context-bd2878ff.js.map → context-9814fafe.js.map} +1 -1
  393. package/cjs/dist/index.css +110 -95
  394. package/cjs/dist/index.css.map +1 -1
  395. package/cjs/handlers/OpenChannelHandler.js.map +1 -1
  396. package/cjs/handlers/SessionHandler.js.map +1 -1
  397. package/cjs/hooks/useModal.js +84 -0
  398. package/cjs/hooks/useModal.js.map +1 -0
  399. package/cjs/{index-81baccd0.js → index-0a25b9b2.js} +166 -154
  400. package/cjs/index-0a25b9b2.js.map +1 -0
  401. package/cjs/index-0ec5a831.js +308 -0
  402. package/cjs/{index-1f6b30ea.js.map → index-0ec5a831.js.map} +1 -1
  403. package/cjs/{index-18720f0d.js → index-35820a94.js} +2 -2
  404. package/cjs/{index-18720f0d.js.map → index-35820a94.js.map} +1 -1
  405. package/cjs/index-609b07a2.js +7 -0
  406. package/cjs/index-609b07a2.js.map +1 -0
  407. package/cjs/index-6b0644d7.js +369 -0
  408. package/cjs/index-6b0644d7.js.map +1 -0
  409. package/cjs/{index-857630c5.js → index-7b0c6630.js} +104 -114
  410. package/cjs/index-7b0c6630.js.map +1 -0
  411. package/cjs/index-80a11b6a.js +197 -0
  412. package/cjs/{index-6ab9a40d.js.map → index-80a11b6a.js.map} +1 -1
  413. package/cjs/{index-4eb7e2b5.js → index-826b76d5.js} +2 -4
  414. package/cjs/index-826b76d5.js.map +1 -0
  415. package/cjs/{index-11f9cc0f.js → index-83d2aed9.js} +3 -12
  416. package/cjs/index-83d2aed9.js.map +1 -0
  417. package/cjs/index-aeb36f01.js +173 -0
  418. package/cjs/index-aeb36f01.js.map +1 -0
  419. package/cjs/{index-c9b003b3.js → index-b6d51e74.js} +56 -193
  420. package/cjs/index-b6d51e74.js.map +1 -0
  421. package/cjs/index-b995f638.js +741 -0
  422. package/cjs/index-b995f638.js.map +1 -0
  423. package/cjs/{index-759f2a26.js → index-bdf7089c.js} +72 -80
  424. package/cjs/{index-759f2a26.js.map → index-bdf7089c.js.map} +1 -1
  425. package/cjs/{index-7c374c20.js → index-c22e0cbf.js} +25 -28
  426. package/cjs/{index-7c374c20.js.map → index-c22e0cbf.js.map} +1 -1
  427. package/cjs/index-daf80c58.js +20 -0
  428. package/cjs/index-daf80c58.js.map +1 -0
  429. package/cjs/index-e81e2882.js +59 -0
  430. package/cjs/{index-2ab19f9b.js.map → index-e81e2882.js.map} +1 -1
  431. package/cjs/{index-91b4af96.js → index-ee3bf381.js} +39 -37
  432. package/cjs/{index-91b4af96.js.map → index-ee3bf381.js.map} +1 -1
  433. package/cjs/{index-d04f312e.js → index-fd8a0abb.js} +10 -30
  434. package/cjs/index-fd8a0abb.js.map +1 -0
  435. package/cjs/index.js +66 -63
  436. package/cjs/index.js.map +1 -1
  437. package/cjs/lame.all.js.map +1 -1
  438. package/cjs/package.json +2 -49
  439. package/cjs/{topics-adde627b.js → pubSub/topics.js} +6 -2
  440. package/cjs/pubSub/topics.js.map +1 -0
  441. package/cjs/{resolvedReplyType-85b4bd7c.js → resolvedReplyType-c20ef661.js} +1 -1
  442. package/cjs/{resolvedReplyType-85b4bd7c.js.map → resolvedReplyType-c20ef661.js.map} +1 -1
  443. package/cjs/sendbirdSelectors.js +381 -332
  444. package/cjs/sendbirdSelectors.js.map +1 -1
  445. package/cjs/stringFormatterUtils-e324636c.js +16 -0
  446. package/cjs/{stringFormatterUtils-8d6592ca.js.map → stringFormatterUtils-e324636c.js.map} +1 -1
  447. package/cjs/{stringSet-d00535a5.js → stringSet-98b52c49.js} +9 -2
  448. package/cjs/stringSet-98b52c49.js.map +1 -0
  449. package/cjs/{tokenize-9296fc47.js → tokenize-91bdbeb0.js} +56 -61
  450. package/cjs/{tokenize-9296fc47.js.map → tokenize-91bdbeb0.js.map} +1 -1
  451. package/cjs/tslib.es6-2f2b0bca.js +102 -0
  452. package/cjs/tslib.es6-2f2b0bca.js.map +1 -0
  453. package/cjs/types-31ed2276.js +11 -0
  454. package/cjs/types-31ed2276.js.map +1 -0
  455. package/cjs/types-66554668.js +15 -0
  456. package/cjs/types-66554668.js.map +1 -0
  457. package/cjs/ui/Accordion.js +18 -19
  458. package/cjs/ui/Accordion.js.map +1 -1
  459. package/cjs/ui/AccordionGroup.js +11 -10
  460. package/cjs/ui/AccordionGroup.js.map +1 -1
  461. package/cjs/ui/AdminMessage.js +10 -10
  462. package/cjs/ui/AdminMessage.js.map +1 -1
  463. package/cjs/ui/Avatar.js +59 -55
  464. package/cjs/ui/Avatar.js.map +1 -1
  465. package/cjs/ui/Badge.js +15 -16
  466. package/cjs/ui/Badge.js.map +1 -1
  467. package/cjs/ui/BottomSheet.js +15 -17
  468. package/cjs/ui/BottomSheet.js.map +1 -1
  469. package/cjs/ui/Button.js +31 -33
  470. package/cjs/ui/Button.js.map +1 -1
  471. package/cjs/ui/ChannelAvatar.js +41 -38
  472. package/cjs/ui/ChannelAvatar.js.map +1 -1
  473. package/cjs/ui/Checkbox.js +10 -9
  474. package/cjs/ui/Checkbox.js.map +1 -1
  475. package/cjs/ui/ConnectionStatus.js +5 -7
  476. package/cjs/ui/ConnectionStatus.js.map +1 -1
  477. package/cjs/ui/ContextMenu.js +143 -144
  478. package/cjs/ui/ContextMenu.js.map +1 -1
  479. package/cjs/ui/DateSeparator.js +14 -12
  480. package/cjs/ui/DateSeparator.js.map +1 -1
  481. package/cjs/ui/EmojiReactions.js +206 -176
  482. package/cjs/ui/EmojiReactions.js.map +1 -1
  483. package/cjs/ui/FileMessageItemBody.js +23 -23
  484. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  485. package/cjs/ui/FileViewer.js +14 -12
  486. package/cjs/ui/FileViewer.js.map +1 -1
  487. package/cjs/ui/Icon.js +16 -16
  488. package/cjs/ui/Icon.js.map +1 -1
  489. package/cjs/ui/IconButton.js +28 -20
  490. package/cjs/ui/IconButton.js.map +1 -1
  491. package/cjs/ui/ImageRenderer.js +84 -64
  492. package/cjs/ui/ImageRenderer.js.map +1 -1
  493. package/cjs/ui/Input.js +14 -16
  494. package/cjs/ui/Input.js.map +1 -1
  495. package/cjs/ui/Label.js +2 -2
  496. package/cjs/ui/LinkLabel.js +2 -2
  497. package/cjs/ui/LinkLabel.js.map +1 -1
  498. package/cjs/ui/Loader.js +12 -10
  499. package/cjs/ui/Loader.js.map +1 -1
  500. package/cjs/ui/MentionLabel.js +63 -59
  501. package/cjs/ui/MentionLabel.js.map +1 -1
  502. package/cjs/ui/MentionUserLabel.js +10 -10
  503. package/cjs/ui/MentionUserLabel.js.map +1 -1
  504. package/cjs/ui/MessageContent.js +187 -171
  505. package/cjs/ui/MessageContent.js.map +1 -1
  506. package/cjs/ui/MessageInput/hooks/usePaste.js +5 -4
  507. package/cjs/ui/MessageInput/hooks/usePaste.js.map +1 -1
  508. package/cjs/ui/MessageInput.js +55 -57
  509. package/cjs/ui/MessageInput.js.map +1 -1
  510. package/cjs/ui/MessageItemMenu.js +93 -72
  511. package/cjs/ui/MessageItemMenu.js.map +1 -1
  512. package/cjs/ui/MessageItemReactionMenu.js +64 -56
  513. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  514. package/cjs/ui/MessageSearchFileItem.js +40 -49
  515. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  516. package/cjs/ui/MessageSearchItem.js +32 -40
  517. package/cjs/ui/MessageSearchItem.js.map +1 -1
  518. package/cjs/ui/MessageStatus.js +11 -11
  519. package/cjs/ui/Modal.js +57 -59
  520. package/cjs/ui/Modal.js.map +1 -1
  521. package/cjs/ui/MutedAvatarOverlay.js +10 -10
  522. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  523. package/cjs/ui/OGMessageItemBody.js +47 -47
  524. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  525. package/cjs/ui/OpenChannelAdminMessage.js +7 -8
  526. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  527. package/cjs/ui/OpenChannelAvatar.js +17 -18
  528. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  529. package/cjs/ui/OpenchannelConversationHeader.js +13 -17
  530. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  531. package/cjs/ui/OpenchannelFileMessage.js +147 -139
  532. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  533. package/cjs/ui/OpenchannelOGMessage.js +185 -178
  534. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  535. package/cjs/ui/OpenchannelThumbnailMessage.js +220 -213
  536. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  537. package/cjs/ui/OpenchannelUserMessage.js +172 -164
  538. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  539. package/cjs/ui/PlaceHolder.js +108 -10
  540. package/cjs/ui/PlaceHolder.js.map +1 -1
  541. package/cjs/ui/PlaybackTime.js +16 -15
  542. package/cjs/ui/PlaybackTime.js.map +1 -1
  543. package/cjs/ui/ProgressBar.js +15 -13
  544. package/cjs/ui/ProgressBar.js.map +1 -1
  545. package/cjs/ui/QuoteMessage.js +41 -44
  546. package/cjs/ui/QuoteMessage.js.map +1 -1
  547. package/cjs/ui/QuoteMessageInput.js +45 -31
  548. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  549. package/cjs/ui/ReactionBadge.js +17 -13
  550. package/cjs/ui/ReactionBadge.js.map +1 -1
  551. package/cjs/ui/ReactionButton.js +19 -19
  552. package/cjs/ui/ReactionButton.js.map +1 -1
  553. package/cjs/ui/SortByRow.js +14 -14
  554. package/cjs/ui/SortByRow.js.map +1 -1
  555. package/cjs/ui/TextButton.js +21 -13
  556. package/cjs/ui/TextButton.js.map +1 -1
  557. package/cjs/ui/TextMessageItemBody.js +33 -31
  558. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  559. package/cjs/ui/ThreadReplies.js +21 -25
  560. package/cjs/ui/ThreadReplies.js.map +1 -1
  561. package/cjs/ui/ThumbnailMessageItemBody.js +37 -28
  562. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  563. package/cjs/ui/Toggle.js +85 -77
  564. package/cjs/ui/Toggle.js.map +1 -1
  565. package/cjs/ui/Tooltip.js +9 -8
  566. package/cjs/ui/Tooltip.js.map +1 -1
  567. package/cjs/ui/TooltipWrapper.js +18 -17
  568. package/cjs/ui/TooltipWrapper.js.map +1 -1
  569. package/cjs/ui/UnknownMessageItemBody.js +19 -20
  570. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  571. package/cjs/ui/UserListItem.js +80 -75
  572. package/cjs/ui/UserListItem.js.map +1 -1
  573. package/cjs/ui/UserProfile.js +28 -33
  574. package/cjs/ui/UserProfile.js.map +1 -1
  575. package/cjs/ui/VoiceMessageItemBody.js +49 -43
  576. package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
  577. package/cjs/ui/VoiceMessgeInput.js +8 -7
  578. package/cjs/ui/VoiceMessgeInput.js.map +1 -1
  579. package/cjs/ui/Word.js +29 -27
  580. package/cjs/ui/Word.js.map +1 -1
  581. package/cjs/{useHandleUploadFiles-b2fc56e5.js → useHandleUploadFiles-fbe6ad64.js} +114 -127
  582. package/cjs/useHandleUploadFiles-fbe6ad64.js.map +1 -0
  583. package/cjs/useLongPress-c1da8ba7.js +105 -0
  584. package/cjs/useLongPress-c1da8ba7.js.map +1 -0
  585. package/cjs/useSendMultipleFilesMessage-87e0ffa3.js +316 -0
  586. package/cjs/useSendMultipleFilesMessage-87e0ffa3.js.map +1 -0
  587. package/cjs/useSendbirdStateContext.js +8 -3
  588. package/cjs/useSendbirdStateContext.js.map +1 -1
  589. package/cjs/useStatefulFileInfoList-aa70b6b9.js +228 -0
  590. package/cjs/useStatefulFileInfoList-aa70b6b9.js.map +1 -0
  591. package/cjs/utils/message/getOutgoingMessageState.js +14 -16
  592. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  593. package/cjs/utils/message/isVoiceMessage.js +4 -4
  594. package/cjs/utils/message/isVoiceMessage.js.map +1 -1
  595. package/cjs/utils-0fac6ad1.js +27 -0
  596. package/cjs/utils-0fac6ad1.js.map +1 -0
  597. package/cjs/utils-180c6bc8.js +10 -0
  598. package/cjs/utils-180c6bc8.js.map +1 -0
  599. package/cjs/{utils-991911af.js → utils-46483130.js} +3 -3
  600. package/cjs/{utils-991911af.js.map → utils-46483130.js.map} +1 -1
  601. package/cjs/utils-55fc6797.js +170 -0
  602. package/cjs/utils-55fc6797.js.map +1 -0
  603. package/cjs/utils-851724e0.js +62 -0
  604. package/cjs/utils-851724e0.js.map +1 -0
  605. package/cjs/utils-e313131f.js +35 -0
  606. package/cjs/utils-e313131f.js.map +1 -0
  607. package/cjs/uuid-c74bbbb6.js +17 -0
  608. package/cjs/{uuid-b2806cf5.js.map → uuid-c74bbbb6.js.map} +1 -1
  609. package/cjs/withSendbird.js +16 -22
  610. package/cjs/withSendbird.js.map +1 -1
  611. package/{color-b7f211a8.js → color-1383d4ab.js} +5 -5
  612. package/{color-b7f211a8.js.map → color-1383d4ab.js.map} +1 -1
  613. package/compareIds-b56b02f1.js +16 -0
  614. package/compareIds-b56b02f1.js.map +1 -0
  615. package/{const-74ec9eb4.js → const-4bc3721f.js} +4 -4
  616. package/{const-74ec9eb4.js.map → const-4bc3721f.js.map} +1 -1
  617. package/const-e3326913.js +13 -0
  618. package/{const-711048c3.js.map → const-e3326913.js.map} +1 -1
  619. package/consts-7f4d53a3.js +4 -0
  620. package/consts-7f4d53a3.js.map +1 -0
  621. package/consts-833420ed.js +4 -0
  622. package/{consts-6ee24012.js.map → consts-833420ed.js.map} +1 -1
  623. package/consts-aa64aca8.js +30 -0
  624. package/{consts-691a3935.js.map → consts-aa64aca8.js.map} +1 -1
  625. package/consts-f0ba9b80.js +4 -0
  626. package/consts-f0ba9b80.js.map +1 -0
  627. package/context-ae47ac54.js +12 -0
  628. package/{context-b4c70964.js.map → context-ae47ac54.js.map} +1 -1
  629. package/dist/index.css +110 -95
  630. package/dist/index.css.map +1 -1
  631. package/handlers/OpenChannelHandler.js.map +1 -1
  632. package/handlers/SessionHandler.js.map +1 -1
  633. package/hooks/useModal.js +73 -0
  634. package/hooks/useModal.js.map +1 -0
  635. package/{index-aa520474.js → index-12103973.js} +2 -2
  636. package/{index-aa520474.js.map → index-12103973.js.map} +1 -1
  637. package/index-124a5766.js +298 -0
  638. package/{index-e15f6b6a.js.map → index-124a5766.js.map} +1 -1
  639. package/{index-13401b87.js → index-1432c287.js} +2 -4
  640. package/index-1432c287.js.map +1 -0
  641. package/{index-b22c4150.js → index-1969ccd8.js} +25 -28
  642. package/{index-b22c4150.js.map → index-1969ccd8.js.map} +1 -1
  643. package/index-3d508585.js +53 -0
  644. package/{index-ae7ef8cf.js.map → index-3d508585.js.map} +1 -1
  645. package/{index-8a01c364.js → index-40447645.js} +73 -81
  646. package/{index-8a01c364.js.map → index-40447645.js.map} +1 -1
  647. package/{index-c421b228.js → index-7a1085b6.js} +99 -109
  648. package/index-7a1085b6.js.map +1 -0
  649. package/index-89b3b8ba.js +362 -0
  650. package/index-89b3b8ba.js.map +1 -0
  651. package/index-8c72f0bd.js +182 -0
  652. package/{index-98138798.js.map → index-8c72f0bd.js.map} +1 -1
  653. package/index-942c5fa2.js +161 -0
  654. package/index-942c5fa2.js.map +1 -0
  655. package/index-c6095960.js +4 -0
  656. package/index-c6095960.js.map +1 -0
  657. package/index-c7ed4aef.js +13 -0
  658. package/index-c7ed4aef.js.map +1 -0
  659. package/{index-daa3ae67.js → index-c81fd6ec.js} +56 -193
  660. package/index-c81fd6ec.js.map +1 -0
  661. package/{index-7700a436.js → index-d3f61405.js} +10 -30
  662. package/index-d3f61405.js.map +1 -0
  663. package/{index-5cb32ab5.js → index-dc1827ea.js} +3 -12
  664. package/index-dc1827ea.js.map +1 -0
  665. package/{index-3530f4f6.js → index-ec0c048b.js} +39 -37
  666. package/{index-3530f4f6.js.map → index-ec0c048b.js.map} +1 -1
  667. package/{index-b25ffa7e.js → index-eec0ce47.js} +166 -154
  668. package/index-eec0ce47.js.map +1 -0
  669. package/index-fc1642cb.js +692 -0
  670. package/index-fc1642cb.js.map +1 -0
  671. package/index.d.ts +143 -79
  672. package/index.js +66 -63
  673. package/index.js.map +1 -1
  674. package/lame.all.js.map +1 -1
  675. package/package.json +3 -3
  676. package/{topics-5659403d.js → pubSub/topics.js} +4 -3
  677. package/pubSub/topics.js.map +1 -0
  678. package/{resolvedReplyType-1a128514.js → resolvedReplyType-0532593c.js} +1 -1
  679. package/{resolvedReplyType-1a128514.js.map → resolvedReplyType-0532593c.js.map} +1 -1
  680. package/sendbirdSelectors.js +381 -332
  681. package/sendbirdSelectors.js.map +1 -1
  682. package/stringFormatterUtils-444f6f4c.js +14 -0
  683. package/{stringFormatterUtils-dbad592d.js.map → stringFormatterUtils-444f6f4c.js.map} +1 -1
  684. package/{stringSet-2814bf17.js → stringSet-1106c8ec.js} +9 -2
  685. package/stringSet-1106c8ec.js.map +1 -0
  686. package/{tokenize-4b153552.js → tokenize-d17bf862.js} +56 -61
  687. package/{tokenize-4b153552.js.map → tokenize-d17bf862.js.map} +1 -1
  688. package/tslib.es6-0c779aab.js +97 -0
  689. package/tslib.es6-0c779aab.js.map +1 -0
  690. package/types-4ffc52f6.js +15 -0
  691. package/types-4ffc52f6.js.map +1 -0
  692. package/types-50e412d8.js +9 -0
  693. package/types-50e412d8.js.map +1 -0
  694. package/ui/Accordion.js +18 -19
  695. package/ui/Accordion.js.map +1 -1
  696. package/ui/AccordionGroup.js +11 -10
  697. package/ui/AccordionGroup.js.map +1 -1
  698. package/ui/AdminMessage.js +10 -10
  699. package/ui/AdminMessage.js.map +1 -1
  700. package/ui/Avatar.js +59 -55
  701. package/ui/Avatar.js.map +1 -1
  702. package/ui/Badge.js +15 -16
  703. package/ui/Badge.js.map +1 -1
  704. package/ui/BottomSheet.js +15 -17
  705. package/ui/BottomSheet.js.map +1 -1
  706. package/ui/Button.js +19 -26
  707. package/ui/Button.js.map +1 -1
  708. package/ui/ChannelAvatar.js +41 -38
  709. package/ui/ChannelAvatar.js.map +1 -1
  710. package/ui/Checkbox.js +10 -9
  711. package/ui/Checkbox.js.map +1 -1
  712. package/ui/ConnectionStatus.js +5 -7
  713. package/ui/ConnectionStatus.js.map +1 -1
  714. package/ui/ContextMenu.js +143 -144
  715. package/ui/ContextMenu.js.map +1 -1
  716. package/ui/DateSeparator.js +14 -12
  717. package/ui/DateSeparator.js.map +1 -1
  718. package/ui/EmojiReactions.js +207 -177
  719. package/ui/EmojiReactions.js.map +1 -1
  720. package/ui/FileMessageItemBody.js +23 -23
  721. package/ui/FileMessageItemBody.js.map +1 -1
  722. package/ui/FileViewer.js +14 -12
  723. package/ui/FileViewer.js.map +1 -1
  724. package/ui/Icon.js +2 -2
  725. package/ui/Icon.js.map +1 -1
  726. package/ui/IconButton.js +28 -20
  727. package/ui/IconButton.js.map +1 -1
  728. package/ui/ImageRenderer.js +84 -65
  729. package/ui/ImageRenderer.js.map +1 -1
  730. package/ui/Input.js +14 -16
  731. package/ui/Input.js.map +1 -1
  732. package/ui/Label.js +2 -2
  733. package/ui/LinkLabel.js +2 -2
  734. package/ui/LinkLabel.js.map +1 -1
  735. package/ui/Loader.js +12 -10
  736. package/ui/Loader.js.map +1 -1
  737. package/ui/MentionLabel.js +64 -60
  738. package/ui/MentionLabel.js.map +1 -1
  739. package/ui/MentionUserLabel.js +10 -10
  740. package/ui/MentionUserLabel.js.map +1 -1
  741. package/ui/MessageContent.js +186 -170
  742. package/ui/MessageContent.js.map +1 -1
  743. package/ui/MessageInput/hooks/usePaste.js +5 -4
  744. package/ui/MessageInput/hooks/usePaste.js.map +1 -1
  745. package/ui/MessageInput.js +48 -50
  746. package/ui/MessageInput.js.map +1 -1
  747. package/ui/MessageItemMenu.js +93 -72
  748. package/ui/MessageItemMenu.js.map +1 -1
  749. package/ui/MessageItemReactionMenu.js +64 -56
  750. package/ui/MessageItemReactionMenu.js.map +1 -1
  751. package/ui/MessageSearchFileItem.js +40 -49
  752. package/ui/MessageSearchFileItem.js.map +1 -1
  753. package/ui/MessageSearchItem.js +32 -40
  754. package/ui/MessageSearchItem.js.map +1 -1
  755. package/ui/MessageStatus.js +11 -11
  756. package/ui/Modal.js +57 -59
  757. package/ui/Modal.js.map +1 -1
  758. package/ui/MutedAvatarOverlay.js +10 -10
  759. package/ui/MutedAvatarOverlay.js.map +1 -1
  760. package/ui/OGMessageItemBody.js +47 -47
  761. package/ui/OGMessageItemBody.js.map +1 -1
  762. package/ui/OpenChannelAdminMessage.js +7 -8
  763. package/ui/OpenChannelAdminMessage.js.map +1 -1
  764. package/ui/OpenChannelAvatar.js +17 -18
  765. package/ui/OpenChannelAvatar.js.map +1 -1
  766. package/ui/OpenchannelConversationHeader.js +13 -17
  767. package/ui/OpenchannelConversationHeader.js.map +1 -1
  768. package/ui/OpenchannelFileMessage.js +147 -139
  769. package/ui/OpenchannelFileMessage.js.map +1 -1
  770. package/ui/OpenchannelOGMessage.js +185 -178
  771. package/ui/OpenchannelOGMessage.js.map +1 -1
  772. package/ui/OpenchannelThumbnailMessage.js +220 -213
  773. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  774. package/ui/OpenchannelUserMessage.js +172 -164
  775. package/ui/OpenchannelUserMessage.js.map +1 -1
  776. package/ui/PlaceHolder.js +106 -8
  777. package/ui/PlaceHolder.js.map +1 -1
  778. package/ui/PlaybackTime.js +16 -15
  779. package/ui/PlaybackTime.js.map +1 -1
  780. package/ui/ProgressBar.js +15 -13
  781. package/ui/ProgressBar.js.map +1 -1
  782. package/ui/QuoteMessage.js +41 -44
  783. package/ui/QuoteMessage.js.map +1 -1
  784. package/ui/QuoteMessageInput.js +45 -31
  785. package/ui/QuoteMessageInput.js.map +1 -1
  786. package/ui/ReactionBadge.js +17 -13
  787. package/ui/ReactionBadge.js.map +1 -1
  788. package/ui/ReactionButton.js +19 -19
  789. package/ui/ReactionButton.js.map +1 -1
  790. package/ui/SortByRow.js +14 -14
  791. package/ui/SortByRow.js.map +1 -1
  792. package/ui/TextButton.js +21 -13
  793. package/ui/TextButton.js.map +1 -1
  794. package/ui/TextMessageItemBody.js +33 -31
  795. package/ui/TextMessageItemBody.js.map +1 -1
  796. package/ui/ThreadReplies.js +21 -25
  797. package/ui/ThreadReplies.js.map +1 -1
  798. package/ui/ThumbnailMessageItemBody.js +37 -28
  799. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  800. package/ui/Toggle.js +86 -78
  801. package/ui/Toggle.js.map +1 -1
  802. package/ui/Tooltip.js +9 -8
  803. package/ui/Tooltip.js.map +1 -1
  804. package/ui/TooltipWrapper.js +18 -17
  805. package/ui/TooltipWrapper.js.map +1 -1
  806. package/ui/UnknownMessageItemBody.js +19 -20
  807. package/ui/UnknownMessageItemBody.js.map +1 -1
  808. package/ui/UserListItem.js +80 -75
  809. package/ui/UserListItem.js.map +1 -1
  810. package/ui/UserProfile.js +29 -34
  811. package/ui/UserProfile.js.map +1 -1
  812. package/ui/VoiceMessageItemBody.js +49 -43
  813. package/ui/VoiceMessageItemBody.js.map +1 -1
  814. package/ui/VoiceMessgeInput.js +8 -7
  815. package/ui/VoiceMessgeInput.js.map +1 -1
  816. package/ui/Word.js +29 -27
  817. package/ui/Word.js.map +1 -1
  818. package/{useHandleUploadFiles-406a6c9c.js → useHandleUploadFiles-33aff88e.js} +111 -124
  819. package/useHandleUploadFiles-33aff88e.js.map +1 -0
  820. package/useLongPress-322bb6a3.js +103 -0
  821. package/useLongPress-322bb6a3.js.map +1 -0
  822. package/useSendMultipleFilesMessage-4489a0f6.js +283 -0
  823. package/useSendMultipleFilesMessage-4489a0f6.js.map +1 -0
  824. package/useSendbirdStateContext.js +5 -3
  825. package/useSendbirdStateContext.js.map +1 -1
  826. package/useStatefulFileInfoList-dd95f949.js +219 -0
  827. package/useStatefulFileInfoList-dd95f949.js.map +1 -0
  828. package/utils/message/getOutgoingMessageState.js +8 -9
  829. package/utils/message/getOutgoingMessageState.js.map +1 -1
  830. package/utils/message/isVoiceMessage.js +4 -4
  831. package/utils/message/isVoiceMessage.js.map +1 -1
  832. package/{utils-7cc92ac2.js → utils-158c1683.js} +3 -3
  833. package/{utils-7cc92ac2.js.map → utils-158c1683.js.map} +1 -1
  834. package/utils-3660243c.js +25 -0
  835. package/utils-3660243c.js.map +1 -0
  836. package/utils-40040f8e.js +157 -0
  837. package/utils-40040f8e.js.map +1 -0
  838. package/utils-48a3ef27.js +31 -0
  839. package/utils-48a3ef27.js.map +1 -0
  840. package/utils-74c161a0.js +7 -0
  841. package/utils-74c161a0.js.map +1 -0
  842. package/utils-e98a7f8c.js +57 -0
  843. package/utils-e98a7f8c.js.map +1 -0
  844. package/uuid-3c77ef7b.js +15 -0
  845. package/{uuid-16373bba.js.map → uuid-3c77ef7b.js.map} +1 -1
  846. package/withSendbird.js +16 -22
  847. package/withSendbird.js.map +1 -1
  848. package/ChannelListProvider-1188e373.js +0 -1028
  849. package/ChannelListProvider-1188e373.js.map +0 -1
  850. package/ChannelProvider-9de00431.js +0 -1933
  851. package/ChannelProvider-9de00431.js.map +0 -1
  852. package/CreateChannelProvider-a2fad282.js +0 -44
  853. package/LocalizationContext-2463058b.js +0 -20
  854. package/MediaQueryContext-e3429d12.js +0 -87
  855. package/MediaQueryContext-e3429d12.js.map +0 -1
  856. package/MemberList-593867cb.js +0 -404
  857. package/OpenChannelProvider-3e4b8c8e.js +0 -1890
  858. package/RemoveMessageModal-9162aebe.js +0 -38
  859. package/RemoveMessageModal-9162aebe.js.map +0 -1
  860. package/ThreadProvider-9a3b145f.js +0 -1778
  861. package/ThreadProvider-9a3b145f.js.map +0 -1
  862. package/UserProfileContext-4ae968eb.js +0 -41
  863. package/UserProfileContext-4ae968eb.js.map +0 -1
  864. package/_rollupPluginBabelHelpers-50c9576f.js.map +0 -1
  865. package/cjs/ChannelListProvider-e55e6242.js +0 -1037
  866. package/cjs/ChannelListProvider-e55e6242.js.map +0 -1
  867. package/cjs/ChannelProvider-6fa73019.js +0 -1941
  868. package/cjs/ChannelProvider-6fa73019.js.map +0 -1
  869. package/cjs/CreateChannelProvider-8b8a557c.js +0 -52
  870. package/cjs/MediaQueryContext-73aac8cf.js +0 -94
  871. package/cjs/MediaQueryContext-73aac8cf.js.map +0 -1
  872. package/cjs/MemberList-26b8de48.js +0 -410
  873. package/cjs/OpenChannelListProvider-2e3ee48d.js +0 -439
  874. package/cjs/OpenChannelProvider-8577ea58.js +0 -1899
  875. package/cjs/RemoveMessageModal-dfeeb36a.js +0 -44
  876. package/cjs/RemoveMessageModal-dfeeb36a.js.map +0 -1
  877. package/cjs/ThreadProvider-8b0cf491.js +0 -1787
  878. package/cjs/ThreadProvider-8b0cf491.js.map +0 -1
  879. package/cjs/UserProfileContext-fa8d0383.js +0 -49
  880. package/cjs/UserProfileContext-fa8d0383.js.map +0 -1
  881. package/cjs/_rollupPluginBabelHelpers-83d7e84b.js.map +0 -1
  882. package/cjs/color-d83b77ac.js.map +0 -1
  883. package/cjs/compareIds-bef997cb.js.map +0 -1
  884. package/cjs/const-67ff9e34.js +0 -20
  885. package/cjs/consts-b018b1ed.js +0 -6
  886. package/cjs/consts-b018b1ed.js.map +0 -1
  887. package/cjs/consts-bf228385.js +0 -6
  888. package/cjs/consts-d3b53f23.js +0 -6
  889. package/cjs/index-11f9cc0f.js.map +0 -1
  890. package/cjs/index-1a9fdbb4.js +0 -368
  891. package/cjs/index-1a9fdbb4.js.map +0 -1
  892. package/cjs/index-1f6b30ea.js +0 -330
  893. package/cjs/index-2ab19f9b.js +0 -57
  894. package/cjs/index-4b5a006d.js +0 -139
  895. package/cjs/index-4b5a006d.js.map +0 -1
  896. package/cjs/index-4eb7e2b5.js.map +0 -1
  897. package/cjs/index-56a25735.js +0 -171
  898. package/cjs/index-56a25735.js.map +0 -1
  899. package/cjs/index-6ab9a40d.js +0 -202
  900. package/cjs/index-7f41c4b6.js +0 -118
  901. package/cjs/index-7f41c4b6.js.map +0 -1
  902. package/cjs/index-81baccd0.js.map +0 -1
  903. package/cjs/index-857630c5.js.map +0 -1
  904. package/cjs/index-8ec12d1d.js +0 -164
  905. package/cjs/index-8ec12d1d.js.map +0 -1
  906. package/cjs/index-c9b003b3.js.map +0 -1
  907. package/cjs/index-cbcacbee.js +0 -9
  908. package/cjs/index-cbcacbee.js.map +0 -1
  909. package/cjs/index-d04f312e.js.map +0 -1
  910. package/cjs/index-e9ac5ae1.js +0 -58
  911. package/cjs/index-e9ac5ae1.js.map +0 -1
  912. package/cjs/index-fbe9cc73.js +0 -647
  913. package/cjs/index-fbe9cc73.js.map +0 -1
  914. package/cjs/index.module-a24e9cd7.js +0 -6
  915. package/cjs/index.module-a24e9cd7.js.map +0 -1
  916. package/cjs/stringFormatterUtils-8d6592ca.js +0 -16
  917. package/cjs/stringSet-d00535a5.js.map +0 -1
  918. package/cjs/topics-adde627b.js.map +0 -1
  919. package/cjs/types-0b5148cb.js +0 -17
  920. package/cjs/types-0b5148cb.js.map +0 -1
  921. package/cjs/useHandleUploadFiles-b2fc56e5.js.map +0 -1
  922. package/cjs/useLongPress-1c0f4696.js +0 -87
  923. package/cjs/useLongPress-1c0f4696.js.map +0 -1
  924. package/cjs/useSendMultipleFilesMessage-81cdc9d0.js +0 -109
  925. package/cjs/useSendMultipleFilesMessage-81cdc9d0.js.map +0 -1
  926. package/cjs/utils-418b4438.js +0 -62
  927. package/cjs/utils-418b4438.js.map +0 -1
  928. package/cjs/utils-5bfb4516.js +0 -35
  929. package/cjs/utils-5bfb4516.js.map +0 -1
  930. package/cjs/utils-68aa6bf6.js +0 -345
  931. package/cjs/utils-68aa6bf6.js.map +0 -1
  932. package/cjs/utils-b34d4e2c.js +0 -31
  933. package/cjs/utils-b34d4e2c.js.map +0 -1
  934. package/cjs/utils-c47c68b1.js +0 -6
  935. package/cjs/utils-c47c68b1.js.map +0 -1
  936. package/cjs/uuid-b2806cf5.js +0 -15
  937. package/compareIds-8ed6e36a.js +0 -15
  938. package/compareIds-8ed6e36a.js.map +0 -1
  939. package/const-711048c3.js +0 -13
  940. package/consts-675764c9.js +0 -4
  941. package/consts-675764c9.js.map +0 -1
  942. package/consts-691a3935.js +0 -37
  943. package/consts-6ee24012.js +0 -4
  944. package/consts-eb77e905.js +0 -4
  945. package/consts-eb77e905.js.map +0 -1
  946. package/context-b4c70964.js +0 -13
  947. package/index-128523eb.js +0 -110
  948. package/index-128523eb.js.map +0 -1
  949. package/index-13401b87.js.map +0 -1
  950. package/index-5cb32ab5.js.map +0 -1
  951. package/index-5d6a0f12.js +0 -598
  952. package/index-5d6a0f12.js.map +0 -1
  953. package/index-60a7bf91.js +0 -164
  954. package/index-60a7bf91.js.map +0 -1
  955. package/index-7700a436.js.map +0 -1
  956. package/index-7946293f.js +0 -152
  957. package/index-7946293f.js.map +0 -1
  958. package/index-7b7478f5.js +0 -132
  959. package/index-7b7478f5.js.map +0 -1
  960. package/index-82178c6a.js +0 -361
  961. package/index-82178c6a.js.map +0 -1
  962. package/index-98138798.js +0 -187
  963. package/index-98887e8d.js +0 -7
  964. package/index-98887e8d.js.map +0 -1
  965. package/index-ae7ef8cf.js +0 -51
  966. package/index-b25ffa7e.js.map +0 -1
  967. package/index-c421b228.js.map +0 -1
  968. package/index-d99155f7.js +0 -51
  969. package/index-d99155f7.js.map +0 -1
  970. package/index-daa3ae67.js.map +0 -1
  971. package/index-e15f6b6a.js +0 -320
  972. package/index.module-60af77d3.js +0 -4
  973. package/index.module-60af77d3.js.map +0 -1
  974. package/stringFormatterUtils-dbad592d.js +0 -14
  975. package/stringSet-2814bf17.js.map +0 -1
  976. package/topics-5659403d.js.map +0 -1
  977. package/types-89092633.js +0 -15
  978. package/types-89092633.js.map +0 -1
  979. package/useHandleUploadFiles-406a6c9c.js.map +0 -1
  980. package/useLongPress-5e1ad951.js +0 -85
  981. package/useLongPress-5e1ad951.js.map +0 -1
  982. package/useSendMultipleFilesMessage-a3a2c84b.js +0 -107
  983. package/useSendMultipleFilesMessage-a3a2c84b.js.map +0 -1
  984. package/utils-0c22998a.js +0 -306
  985. package/utils-0c22998a.js.map +0 -1
  986. package/utils-407da489.js +0 -4
  987. package/utils-407da489.js.map +0 -1
  988. package/utils-b97d5113.js +0 -57
  989. package/utils-b97d5113.js.map +0 -1
  990. package/utils-cae84d8a.js +0 -29
  991. package/utils-cae84d8a.js.map +0 -1
  992. package/utils-ebf008e2.js +0 -31
  993. package/utils-ebf008e2.js.map +0 -1
  994. package/uuid-16373bba.js +0 -13
@@ -0,0 +1,1060 @@
1
+ 'use strict';
2
+
3
+ var tslib_es6 = require('./tslib.es6-2f2b0bca.js');
4
+ var React = require('react');
5
+ var groupChannel = require('@sendbird/chat/groupChannel');
6
+ var pubSub_topics = require('./pubSub/topics.js');
7
+ var uuid = require('./uuid-c74bbbb6.js');
8
+ var utils = require('./utils-180c6bc8.js');
9
+ var consts = require('./consts-95462b21.js');
10
+ var UserProfileContext = require('./UserProfileContext-922a43ec.js');
11
+ var useSendbirdStateContext = require('./useSendbirdStateContext.js');
12
+ var index = require('./index-609b07a2.js');
13
+ var index$1 = require('./index-b995f638.js');
14
+
15
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
+
17
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
18
+
19
+ var RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';
20
+ var CREATE_CHANNEL = 'CREATE_CHANNEL';
21
+ var LEAVE_CHANNEL_SUCCESS = 'LEAVE_CHANNEL_SUCCESS';
22
+ var SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';
23
+ var FETCH_CHANNELS_START = 'FETCH_CHANNELS_START';
24
+ var FETCH_CHANNELS_SUCCESS = 'FETCH_CHANNELS_SUCCESS';
25
+ var FETCH_CHANNELS_FAILURE = 'FETCH_CHANNELS_FAILURE';
26
+ var INIT_CHANNELS_START = 'INIT_CHANNELS_START';
27
+ var INIT_CHANNELS_SUCCESS = 'INIT_CHANNELS_SUCCESS';
28
+ var INIT_CHANNELS_FAILURE = 'INIT_CHANNELS_FAILURE';
29
+ var ON_USER_JOINED = 'ON_USER_JOINED';
30
+ var ON_CHANNEL_DELETED = 'ON_CHANNEL_DELETED';
31
+ var ON_LAST_MESSAGE_UPDATED = 'ON_LAST_MESSAGE_UPDATED';
32
+ var ON_USER_LEFT = 'ON_USER_LEFT';
33
+ var ON_CHANNEL_CHANGED = 'ON_CHANNEL_CHANGED';
34
+ var ON_CHANNEL_ARCHIVED = 'ON_CHANNEL_ARCHIVED';
35
+ var ON_CHANNEL_FROZEN = 'ON_CHANNEL_FROZEN';
36
+ var ON_CHANNEL_UNFROZEN = 'ON_CHANNEL_UNFROZEN';
37
+ var ON_READ_RECEIPT_UPDATED = 'ON_READ_RECEIPT_UPDATED';
38
+ var ON_DELIVERY_RECEIPT_UPDATED = 'ON_DELIVERY_RECEIPT_UPDATED';
39
+ var CHANNEL_REPLACED_TO_TOP = 'CHANNEL_REPLACED_TO_TOP';
40
+ var CHANNEL_LIST_PARAMS_UPDATED = 'CHANNEL_LIST_PARAMS_UPDATED';
41
+
42
+ var DELIVERY_RECEIPT = 'delivery_receipt';
43
+ var createEventHandler = function (_a) {
44
+ var sdk = _a.sdk,
45
+ sdkChannelHandlerId = _a.sdkChannelHandlerId,
46
+ channelListDispatcher = _a.channelListDispatcher,
47
+ logger = _a.logger;
48
+ var ChannelHandler = new groupChannel.GroupChannelHandler({
49
+ onChannelChanged: function (channel) {
50
+ if (channel.isGroupChannel()) {
51
+ logger.info('ChannelList: onChannelChanged', channel);
52
+ channelListDispatcher({
53
+ type: ON_CHANNEL_CHANGED,
54
+ payload: channel
55
+ });
56
+ }
57
+ },
58
+ onChannelDeleted: function (channelUrl) {
59
+ logger.info('ChannelList: onChannelDeleted', channelUrl);
60
+ channelListDispatcher({
61
+ type: ON_CHANNEL_DELETED,
62
+ payload: channelUrl
63
+ });
64
+ },
65
+ onUserJoined: function (channel) {
66
+ logger.info('ChannelList: onUserJoined', channel);
67
+ channelListDispatcher({
68
+ type: ON_USER_JOINED,
69
+ payload: channel
70
+ });
71
+ },
72
+ onUserBanned: function (channel, user) {
73
+ var _a;
74
+ if (channel.isGroupChannel()) {
75
+ logger.info('Channel: onUserBanned', channel);
76
+ var isMe = user.userId === ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.currentUser) === null || _a === void 0 ? void 0 : _a.userId);
77
+ channelListDispatcher({
78
+ type: ON_USER_LEFT,
79
+ payload: {
80
+ channel: channel,
81
+ isMe: isMe
82
+ }
83
+ });
84
+ }
85
+ },
86
+ onUserLeft: function (channel, user) {
87
+ var _a;
88
+ logger.info('ChannelList: onUserLeft', channel);
89
+ var isMe = user.userId === ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.currentUser) === null || _a === void 0 ? void 0 : _a.userId);
90
+ channelListDispatcher({
91
+ type: ON_USER_LEFT,
92
+ payload: {
93
+ channel: channel,
94
+ isMe: isMe
95
+ }
96
+ });
97
+ },
98
+ onUnreadMemberStatusUpdated: function (channel) {
99
+ logger.info('ChannelList: onUnreadMemberStatusUpdated', channel);
100
+ channelListDispatcher({
101
+ type: ON_READ_RECEIPT_UPDATED,
102
+ payload: channel
103
+ });
104
+ },
105
+ onUndeliveredMemberStatusUpdated: function (channel) {
106
+ logger.info('ChannelList: onUndeliveredMemberStatusUpdated', channel);
107
+ if (channel.lastMessage) {
108
+ channelListDispatcher({
109
+ type: ON_DELIVERY_RECEIPT_UPDATED,
110
+ payload: channel
111
+ });
112
+ }
113
+ },
114
+ onMessageUpdated: function (channel, message) {
115
+ if (channel.isGroupChannel() && channel.lastMessage.isEqual(message)) {
116
+ logger.info('ChannelList: onMessageUpdated', channel);
117
+ channelListDispatcher({
118
+ type: ON_LAST_MESSAGE_UPDATED,
119
+ payload: channel
120
+ });
121
+ }
122
+ },
123
+ onChannelHidden: function (channel) {
124
+ logger.info('ChannelList: onChannelHidden', channel);
125
+ channelListDispatcher({
126
+ type: ON_CHANNEL_ARCHIVED,
127
+ payload: channel
128
+ });
129
+ },
130
+ onChannelFrozen: function (channel) {
131
+ if (channel.isGroupChannel()) {
132
+ logger.info('ChannelList: onChannelFrozen', channel);
133
+ channelListDispatcher({
134
+ type: ON_CHANNEL_FROZEN,
135
+ payload: channel
136
+ });
137
+ }
138
+ },
139
+ onChannelUnfrozen: function (channel) {
140
+ if (channel.isGroupChannel()) {
141
+ logger.info('ChannelList: onChannelUnfrozen', channel);
142
+ channelListDispatcher({
143
+ type: ON_CHANNEL_UNFROZEN,
144
+ payload: channel
145
+ });
146
+ }
147
+ }
148
+ });
149
+ logger.info('ChannelList: Added channelHandler');
150
+ sdk.groupChannel.addGroupChannelHandler(sdkChannelHandlerId, ChannelHandler);
151
+ };
152
+ var createChannelListQuery = function (_a) {
153
+ var sdk = _a.sdk,
154
+ _b = _a.userFilledChannelListQuery,
155
+ userFilledChannelListQuery = _b === void 0 ? {} : _b;
156
+ var params = {
157
+ includeEmpty: false,
158
+ limit: 20,
159
+ order: 'latest_last_message' // 'chronological', 'latest_last_message', 'channel_name_alphabetical', and 'metadata_value_alphabetical'
160
+ };
161
+
162
+ if (userFilledChannelListQuery) {
163
+ Object.keys(userFilledChannelListQuery).forEach(function (key) {
164
+ params[key] = userFilledChannelListQuery[key];
165
+ });
166
+ }
167
+ return sdk.groupChannel.createMyGroupChannelListQuery(params);
168
+ };
169
+ function setupChannelList(_a) {
170
+ var sdk = _a.sdk,
171
+ sdkChannelHandlerId = _a.sdkChannelHandlerId,
172
+ channelListDispatcher = _a.channelListDispatcher,
173
+ setChannelSource = _a.setChannelSource,
174
+ onChannelSelect = _a.onChannelSelect,
175
+ userFilledChannelListQuery = _a.userFilledChannelListQuery,
176
+ logger = _a.logger,
177
+ sortChannelList = _a.sortChannelList,
178
+ disableAutoSelect = _a.disableAutoSelect,
179
+ markAsDeliveredScheduler = _a.markAsDeliveredScheduler,
180
+ disableMarkAsDelivered = _a.disableMarkAsDelivered;
181
+ if (sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) {
182
+ createEventHandler({
183
+ sdk: sdk,
184
+ channelListDispatcher: channelListDispatcher,
185
+ sdkChannelHandlerId: sdkChannelHandlerId,
186
+ logger: logger
187
+ });
188
+ } else {
189
+ logger.warning('ChannelList - createEventHandler: sdk or sdk.ChannelHandler does not exist', sdk);
190
+ }
191
+ logger.info('ChannelList - creating query', {
192
+ userFilledChannelListQuery: userFilledChannelListQuery
193
+ });
194
+ var channelListQuery = createChannelListQuery({
195
+ sdk: sdk,
196
+ userFilledChannelListQuery: userFilledChannelListQuery
197
+ });
198
+ logger.info('ChannelList - created query', channelListQuery);
199
+ setChannelSource(channelListQuery);
200
+ channelListDispatcher({
201
+ type: INIT_CHANNELS_START
202
+ });
203
+ if (userFilledChannelListQuery) {
204
+ logger.info('ChannelList - setting up channelListQuery', channelListQuery);
205
+ channelListDispatcher({
206
+ type: CHANNEL_LIST_PARAMS_UPDATED,
207
+ payload: {
208
+ channelListQuery: channelListQuery,
209
+ currentUserId: sdk && sdk.currentUser && sdk.currentUser.userId
210
+ }
211
+ });
212
+ }
213
+ logger.info('ChannelList - fetching channels');
214
+ if (channelListQuery.hasNext) {
215
+ channelListQuery.next().then(function (channelList) {
216
+ var _a, _b;
217
+ logger.info('ChannelList - fetched channels', channelList);
218
+ // select first channel
219
+ logger.info('ChannelList - highlight channel', channelList[0]);
220
+ var sortedChannelList = channelList;
221
+ if (sortChannelList && typeof sortChannelList === 'function') {
222
+ sortedChannelList = sortChannelList(channelList);
223
+ logger.info('ChannelList - channel list sorted', sortedChannelList);
224
+ }
225
+ if (!disableAutoSelect) {
226
+ onChannelSelect === null || onChannelSelect === void 0 ? void 0 : onChannelSelect(sortedChannelList[0]);
227
+ }
228
+ channelListDispatcher({
229
+ type: INIT_CHANNELS_SUCCESS,
230
+ payload: {
231
+ channelList: sortedChannelList,
232
+ disableAutoSelect: disableAutoSelect
233
+ }
234
+ });
235
+ var canSetMarkAsDelivered = (_b = (_a = sdk === null || sdk === void 0 ? void 0 : sdk.appInfo) === null || _a === void 0 ? void 0 : _a.premiumFeatureList) === null || _b === void 0 ? void 0 : _b.find(function (feature) {
236
+ return feature === DELIVERY_RECEIPT;
237
+ });
238
+ if (canSetMarkAsDelivered && !disableMarkAsDelivered) {
239
+ sortedChannelList.forEach(function (channel) {
240
+ markAsDeliveredScheduler.push(channel);
241
+ });
242
+ }
243
+ }).catch(function (err) {
244
+ if (err) {
245
+ logger.error('ChannelList - couldnt fetch channels', err);
246
+ channelListDispatcher({
247
+ type: INIT_CHANNELS_FAILURE
248
+ });
249
+ }
250
+ });
251
+ } else {
252
+ logger.info('ChannelList - there are no more channels');
253
+ }
254
+ }
255
+ var pubSubHandleRemover = function (subscriber) {
256
+ subscriber.forEach(function (s) {
257
+ try {
258
+ s.remove();
259
+ } catch (_a) {
260
+ //
261
+ }
262
+ });
263
+ };
264
+ var pubSubHandler = function (pubSub, channelListDispatcher) {
265
+ var subscriber = new Map();
266
+ if (!pubSub) return subscriber;
267
+ subscriber.set(pubSub_topics.PUBSUB_TOPICS.CREATE_CHANNEL, pubSub.subscribe(pubSub_topics.PUBSUB_TOPICS.CREATE_CHANNEL, function (msg) {
268
+ var channel = msg.channel;
269
+ channelListDispatcher({
270
+ type: 'CREATE_CHANNEL',
271
+ payload: channel
272
+ });
273
+ }));
274
+ subscriber.set(pubSub_topics.PUBSUB_TOPICS.UPDATE_USER_MESSAGE, pubSub.subscribe(pubSub_topics.PUBSUB_TOPICS.UPDATE_USER_MESSAGE, function (msg) {
275
+ var _a;
276
+ var channel = msg.channel,
277
+ message = msg.message;
278
+ var updatedChannel = channel;
279
+ if (((_a = updatedChannel === null || updatedChannel === void 0 ? void 0 : updatedChannel.lastMessage) === null || _a === void 0 ? void 0 : _a.messageId) === message.messageId) {
280
+ updatedChannel.lastMessage = message;
281
+ }
282
+ if (channel) {
283
+ channelListDispatcher({
284
+ type: ON_LAST_MESSAGE_UPDATED,
285
+ payload: updatedChannel
286
+ });
287
+ }
288
+ }));
289
+ subscriber.set(pubSub_topics.PUBSUB_TOPICS.LEAVE_CHANNEL, pubSub.subscribe(pubSub_topics.PUBSUB_TOPICS.LEAVE_CHANNEL, function (msg) {
290
+ var channel = msg.channel;
291
+ channelListDispatcher({
292
+ type: LEAVE_CHANNEL_SUCCESS,
293
+ payload: channel === null || channel === void 0 ? void 0 : channel.url
294
+ });
295
+ }));
296
+ subscriber.set(pubSub_topics.PUBSUB_TOPICS.SEND_MESSAGE_START, pubSub.subscribe(pubSub_topics.PUBSUB_TOPICS.SEND_MESSAGE_START, function (msg) {
297
+ var channel = msg.channel;
298
+ channelListDispatcher({
299
+ type: CHANNEL_REPLACED_TO_TOP,
300
+ payload: channel
301
+ });
302
+ }));
303
+ return subscriber;
304
+ };
305
+
306
+ /**
307
+ * NOTICE: Use this function IF the current channel is removed from allChannels.
308
+ * This function will give you the next currentChannel value.
309
+ */
310
+ var getNextChannel = function (_a) {
311
+ var channel = _a.channel,
312
+ currentChannel = _a.currentChannel,
313
+ allChannels = _a.allChannels,
314
+ disableAutoSelect = _a.disableAutoSelect;
315
+ var nextChannel = null;
316
+ if ((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) === channel.url) {
317
+ if (!disableAutoSelect && allChannels.length > 0) {
318
+ var firstChannel = allChannels[0],
319
+ _b = allChannels[1],
320
+ secondChannel = _b === void 0 ? null : _b;
321
+ nextChannel = firstChannel.url === channel.url ? secondChannel : firstChannel;
322
+ }
323
+ } else {
324
+ nextChannel = currentChannel;
325
+ }
326
+ return nextChannel;
327
+ };
328
+
329
+ var initialState = {
330
+ // we might not need this initialized state -> should remove
331
+ initialized: false,
332
+ loading: true,
333
+ allChannels: [],
334
+ currentChannel: null,
335
+ channelListQuery: null,
336
+ currentUserId: '',
337
+ disableAutoSelect: false
338
+ };
339
+
340
+ function channelListReducer(state, action) {
341
+ return index.K(action).with({
342
+ type: INIT_CHANNELS_START
343
+ }, function () {
344
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
345
+ loading: true
346
+ });
347
+ }).with({
348
+ type: RESET_CHANNEL_LIST
349
+ }, function () {
350
+ return initialState;
351
+ }).with({
352
+ type: INIT_CHANNELS_SUCCESS
353
+ }, function (action) {
354
+ var _a = action.payload,
355
+ channelList = _a.channelList,
356
+ disableAutoSelect = _a.disableAutoSelect;
357
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
358
+ initialized: true,
359
+ loading: false,
360
+ allChannels: channelList,
361
+ disableAutoSelect: disableAutoSelect,
362
+ currentChannel: !disableAutoSelect && channelList && channelList.length && channelList.length > 0 ? channelList[0] : null
363
+ });
364
+ }).with({
365
+ type: FETCH_CHANNELS_SUCCESS
366
+ }, function (action) {
367
+ var currentChannels = state.allChannels.map(function (c) {
368
+ return c.url;
369
+ });
370
+ var filteredChannels = action.payload.filter(function (_a) {
371
+ var url = _a.url;
372
+ return !currentChannels.find(function (c) {
373
+ return c === url;
374
+ });
375
+ });
376
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
377
+ allChannels: tslib_es6.__spreadArray(tslib_es6.__spreadArray([], state.allChannels, true), filteredChannels, true)
378
+ });
379
+ }).with({
380
+ type: CREATE_CHANNEL
381
+ }, function (action) {
382
+ var channel = action.payload;
383
+ var allChannels = state.allChannels,
384
+ currentUserId = state.currentUserId,
385
+ channelListQuery = state.channelListQuery;
386
+ if (channelListQuery) {
387
+ if (index$1.filterChannelListParams(channelListQuery, channel, currentUserId)) {
388
+ // Good to add to the ChannelList
389
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
390
+ currentChannel: channel,
391
+ allChannels: index$1.getChannelsWithUpsertedChannel(allChannels, channel)
392
+ });
393
+ }
394
+ // Do not add to the ChannelList
395
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
396
+ currentChannel: channel
397
+ });
398
+ }
399
+ // No channelListQuery
400
+ // Add to the top of the ChannelList
401
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
402
+ currentChannel: channel,
403
+ allChannels: tslib_es6.__spreadArray([channel], allChannels.filter(function (ch) {
404
+ return ch.url !== (channel === null || channel === void 0 ? void 0 : channel.url);
405
+ }), true)
406
+ });
407
+ })
408
+ // A hidden channel will be unhidden when getting new message
409
+ .with({
410
+ type: ON_CHANNEL_ARCHIVED
411
+ }, function (action) {
412
+ var channel = action.payload;
413
+ var allChannels = state.allChannels,
414
+ currentUserId = state.currentUserId,
415
+ currentChannel = state.currentChannel,
416
+ channelListQuery = state.channelListQuery,
417
+ disableAutoSelect = state.disableAutoSelect;
418
+ if (channelListQuery) {
419
+ if (index$1.filterChannelListParams(channelListQuery, channel, currentUserId)) {
420
+ // Good to [add to/keep in] the ChannelList
421
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
422
+ allChannels: index$1.getChannelsWithUpsertedChannel(allChannels, channel)
423
+ });
424
+ }
425
+ // * Remove the channel from the ChannelList: because the channel is filtered
426
+ }
427
+ // No channelListQuery
428
+ // * Remove the channel from the ChannelList: because the channel is hidden
429
+ // Replace the currentChannel if it's filtered or hidden
430
+ var nextChannel = getNextChannel({
431
+ channel: channel,
432
+ currentChannel: currentChannel,
433
+ allChannels: allChannels,
434
+ disableAutoSelect: disableAutoSelect
435
+ });
436
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
437
+ currentChannel: nextChannel,
438
+ allChannels: allChannels.filter(function (_a) {
439
+ var url = _a.url;
440
+ return url !== (channel === null || channel === void 0 ? void 0 : channel.url);
441
+ })
442
+ });
443
+ }).with({
444
+ type: index.S.union(LEAVE_CHANNEL_SUCCESS, ON_CHANNEL_DELETED)
445
+ }, function (action) {
446
+ var _a;
447
+ var channelUrl = action.payload;
448
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
449
+ currentChannel: channelUrl === ((_a = state.currentChannel) === null || _a === void 0 ? void 0 : _a.url) ? state.allChannels[0] : state.currentChannel,
450
+ allChannels: state.allChannels.filter(function (_a) {
451
+ var url = _a.url;
452
+ return url !== channelUrl;
453
+ })
454
+ });
455
+ }).with({
456
+ type: ON_USER_LEFT
457
+ }, function (action) {
458
+ var _a = action.payload,
459
+ channel = _a.channel,
460
+ isMe = _a.isMe;
461
+ var allChannels = state.allChannels,
462
+ currentUserId = state.currentUserId,
463
+ currentChannel = state.currentChannel,
464
+ channelListQuery = state.channelListQuery,
465
+ disableAutoSelect = state.disableAutoSelect;
466
+ var nextChannels = allChannels.filter(function (ch) {
467
+ return ch.url !== channel.url;
468
+ });
469
+ var nextChannel = null;
470
+ if (channelListQuery) {
471
+ if (index$1.filterChannelListParams(channelListQuery, channel, currentUserId)) {
472
+ // Good to [add to/keep in] the ChannelList
473
+ nextChannels = index$1.getChannelsWithUpsertedChannel(allChannels, channel);
474
+ }
475
+ }
476
+ // Replace the currentChannel if I left the currentChannel
477
+ if (isMe) {
478
+ nextChannel = getNextChannel({
479
+ channel: channel,
480
+ currentChannel: currentChannel,
481
+ allChannels: allChannels,
482
+ disableAutoSelect: disableAutoSelect
483
+ });
484
+ }
485
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
486
+ currentChannel: nextChannel,
487
+ allChannels: nextChannels
488
+ });
489
+ }).with({
490
+ type: index.S.union(ON_USER_JOINED, ON_CHANNEL_CHANGED, ON_READ_RECEIPT_UPDATED, ON_DELIVERY_RECEIPT_UPDATED)
491
+ }, function (action) {
492
+ var _a, _b;
493
+ var channel = action.payload;
494
+ var _c = state.allChannels,
495
+ allChannels = _c === void 0 ? [] : _c,
496
+ currentUserId = state.currentUserId,
497
+ currentChannel = state.currentChannel,
498
+ channelListQuery = state.channelListQuery,
499
+ disableAutoSelect = state.disableAutoSelect;
500
+ var unreadMessageCount = channel.unreadMessageCount;
501
+ // Do not display the channel when it's created (and not sent a message yet)
502
+ if (action.type === ON_USER_JOINED && !(channel === null || channel === void 0 ? void 0 : channel.lastMessage)) return state;
503
+ if (channelListQuery) {
504
+ if (index$1.filterChannelListParams(channelListQuery, channel, currentUserId)) {
505
+ // Good to [add to/keep in] the ChannelList
506
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
507
+ allChannels: index$1.getChannelsWithUpsertedChannel(allChannels, channel)
508
+ });
509
+ }
510
+ // Filter the channel from the ChannelList
511
+ // Replace the currentChannel if it's filtered channel
512
+ var nextChannel = getNextChannel({
513
+ channel: channel,
514
+ currentChannel: currentChannel,
515
+ allChannels: allChannels,
516
+ disableAutoSelect: disableAutoSelect
517
+ });
518
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
519
+ currentChannel: nextChannel,
520
+ allChannels: allChannels.filter(function (_a) {
521
+ var url = _a.url;
522
+ return url !== (channel === null || channel === void 0 ? void 0 : channel.url);
523
+ })
524
+ });
525
+ }
526
+ if (
527
+ // When marking as read the channel
528
+ unreadMessageCount === 0
529
+ // @ts-ignore - When sending a message by the current peer
530
+ && ((_b = (_a = channel === null || channel === void 0 ? void 0 : channel.lastMessage) === null || _a === void 0 ? void 0 : _a.sender) === null || _b === void 0 ? void 0 : _b.userId) !== currentUserId) {
531
+ // Don't move to the top
532
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
533
+ allChannels: allChannels.map(function (ch) {
534
+ return ch.url === (channel === null || channel === void 0 ? void 0 : channel.url) ? channel : ch;
535
+ })
536
+ });
537
+ }
538
+ // Move to the top
539
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
540
+ allChannels: tslib_es6.__spreadArray([channel], allChannels.filter(function (_a) {
541
+ var url = _a.url;
542
+ return url !== channel.url;
543
+ }), true)
544
+ });
545
+ }).with({
546
+ type: SET_CURRENT_CHANNEL
547
+ }, function (action) {
548
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
549
+ currentChannel: action.payload
550
+ });
551
+ }).with({
552
+ type: ON_LAST_MESSAGE_UPDATED
553
+ }, function (action) {
554
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
555
+ allChannels: state.allChannels.map(function (channel) {
556
+ return (channel === null || channel === void 0 ? void 0 : channel.url) === action.payload.url ? action.payload : channel;
557
+ })
558
+ });
559
+ }).with({
560
+ type: ON_CHANNEL_FROZEN
561
+ }, function (action) {
562
+ var channel = action.payload;
563
+ var allChannels = state.allChannels,
564
+ currentUserId = state.currentUserId,
565
+ currentChannel = state.currentChannel,
566
+ channelListQuery = state.channelListQuery,
567
+ disableAutoSelect = state.disableAutoSelect;
568
+ if (channelListQuery) {
569
+ if (index$1.filterChannelListParams(channelListQuery, channel, currentUserId)) {
570
+ // Good to [add to/keep in] the ChannelList
571
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
572
+ allChannels: index$1.getChannelsWithUpsertedChannel(allChannels, channel)
573
+ });
574
+ }
575
+ // Filter the channel from the ChannelList
576
+ // Replace the currentChannel if it's filtered channel
577
+ var nextChannel = getNextChannel({
578
+ channel: channel,
579
+ currentChannel: currentChannel,
580
+ allChannels: allChannels,
581
+ disableAutoSelect: disableAutoSelect
582
+ });
583
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
584
+ currentChannel: nextChannel,
585
+ allChannels: allChannels.filter(function (_a) {
586
+ var url = _a.url;
587
+ return url !== (channel === null || channel === void 0 ? void 0 : channel.url);
588
+ })
589
+ });
590
+ }
591
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
592
+ allChannels: allChannels.map(function (ch) {
593
+ if (ch.url === (channel === null || channel === void 0 ? void 0 : channel.url)) {
594
+ // eslint-disable-next-line no-param-reassign
595
+ ch.isFrozen = true;
596
+ return ch;
597
+ }
598
+ return ch;
599
+ })
600
+ });
601
+ }).with({
602
+ type: ON_CHANNEL_UNFROZEN
603
+ }, function (action) {
604
+ var channel = action.payload;
605
+ var allChannels = state.allChannels,
606
+ currentUserId = state.currentUserId,
607
+ currentChannel = state.currentChannel,
608
+ channelListQuery = state.channelListQuery,
609
+ disableAutoSelect = state.disableAutoSelect;
610
+ if (channelListQuery) {
611
+ if (index$1.filterChannelListParams(channelListQuery, channel, currentUserId)) {
612
+ // Good to [add to/keep in] the ChannelList
613
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
614
+ allChannels: index$1.getChannelsWithUpsertedChannel(allChannels, channel)
615
+ });
616
+ }
617
+ // Filter the channel from the ChannelList
618
+ // Replace the currentChannel if it's filtered channel
619
+ var nextChannel = getNextChannel({
620
+ channel: channel,
621
+ currentChannel: currentChannel,
622
+ allChannels: allChannels,
623
+ disableAutoSelect: disableAutoSelect
624
+ });
625
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
626
+ currentChannel: nextChannel,
627
+ allChannels: allChannels.filter(function (_a) {
628
+ var url = _a.url;
629
+ return url !== (channel === null || channel === void 0 ? void 0 : channel.url);
630
+ })
631
+ });
632
+ }
633
+ // No channelListQuery
634
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
635
+ allChannels: allChannels.map(function (ch) {
636
+ if (ch.url === (channel === null || channel === void 0 ? void 0 : channel.url)) {
637
+ // eslint-disable-next-line no-param-reassign
638
+ ch.isFrozen = false;
639
+ return ch;
640
+ }
641
+ return ch;
642
+ })
643
+ });
644
+ }).with({
645
+ type: CHANNEL_REPLACED_TO_TOP
646
+ }, function (action) {
647
+ if (state.channelListQuery) {
648
+ if (index$1.filterChannelListParams(state.channelListQuery, action.payload, state.currentUserId)) {
649
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
650
+ allChannels: tslib_es6.__spreadArray([action.payload], state.allChannels.filter(function (channel) {
651
+ return (channel === null || channel === void 0 ? void 0 : channel.url) !== action.payload.url;
652
+ }), true)
653
+ });
654
+ }
655
+ return state;
656
+ }
657
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
658
+ allChannels: tslib_es6.__spreadArray([action.payload], state.allChannels.filter(function (channel) {
659
+ return (channel === null || channel === void 0 ? void 0 : channel.url) !== action.payload.url;
660
+ }), true)
661
+ });
662
+ }).with({
663
+ type: CHANNEL_LIST_PARAMS_UPDATED
664
+ }, function (action) {
665
+ return tslib_es6.__assign(tslib_es6.__assign({}, state), {
666
+ currentUserId: action.payload.currentUserId,
667
+ channelListQuery: action.payload.channelListQuery
668
+ });
669
+ }).otherwise(function () {
670
+ return state;
671
+ });
672
+ }
673
+
674
+ function useActiveChannelUrl(_a, _b) {
675
+ var activeChannelUrl = _a.activeChannelUrl,
676
+ channels = _a.channels,
677
+ sdk = _a.sdk;
678
+ var logger = _b.logger,
679
+ channelListDispatcher = _b.channelListDispatcher;
680
+ return React.useEffect(function () {
681
+ var _a;
682
+ if (activeChannelUrl) {
683
+ logger.info('ChannelListProvider: looking for active channel', {
684
+ activeChannelUrl: activeChannelUrl
685
+ });
686
+ var activeChannel = channels === null || channels === void 0 ? void 0 : channels.find(function (channel) {
687
+ return channel.url === activeChannelUrl;
688
+ });
689
+ if (activeChannel) {
690
+ channelListDispatcher({
691
+ type: SET_CURRENT_CHANNEL,
692
+ payload: activeChannel
693
+ });
694
+ } else {
695
+ logger.info('ChannelListProvider: searching backend for active channel', {
696
+ activeChannelUrl: activeChannelUrl
697
+ });
698
+ (_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.getChannel(activeChannelUrl).then(function (channel) {
699
+ channelListDispatcher({
700
+ type: FETCH_CHANNELS_SUCCESS,
701
+ payload: [channel]
702
+ });
703
+ channelListDispatcher({
704
+ type: SET_CURRENT_CHANNEL,
705
+ payload: channel
706
+ });
707
+ }).catch(function () {
708
+ logger.warning('ChannelListProvider: Active channel not found');
709
+ });
710
+ }
711
+ }
712
+ }, [activeChannelUrl]);
713
+ }
714
+
715
+ var useFetchChannelList = function (_a, _b) {
716
+ var channelSource = _a.channelSource,
717
+ disableMarkAsDelivered = _a.disableMarkAsDelivered;
718
+ var channelListDispatcher = _b.channelListDispatcher,
719
+ logger = _b.logger,
720
+ markAsDeliveredScheduler = _b.markAsDeliveredScheduler;
721
+ return React.useCallback(function () {
722
+ return tslib_es6.__awaiter(void 0, void 0, void 0, function () {
723
+ var channelList, error_1;
724
+ return tslib_es6.__generator(this, function (_a) {
725
+ switch (_a.label) {
726
+ case 0:
727
+ if (!(channelSource === null || channelSource === void 0 ? void 0 : channelSource.hasNext)) {
728
+ logger.info('ChannelList: not able to fetch');
729
+ return [2 /*return*/];
730
+ }
731
+
732
+ logger.info('ChannelList: starting fetch');
733
+ channelListDispatcher({
734
+ type: FETCH_CHANNELS_START,
735
+ payload: null
736
+ });
737
+ _a.label = 1;
738
+ case 1:
739
+ _a.trys.push([1, 3,, 4]);
740
+ return [4 /*yield*/, channelSource.next()];
741
+ case 2:
742
+ channelList = _a.sent();
743
+ logger.info('ChannelList: succeeded fetch', {
744
+ channelList: channelList
745
+ });
746
+ channelListDispatcher({
747
+ type: FETCH_CHANNELS_SUCCESS,
748
+ payload: channelList
749
+ });
750
+ if (!disableMarkAsDelivered) {
751
+ logger.info('ChannelList: mark as delivered to fetched channels');
752
+ // eslint-disable-next-line no-unused-expressions
753
+ channelList === null || channelList === void 0 ? void 0 : channelList.forEach(function (channel) {
754
+ if ((channel === null || channel === void 0 ? void 0 : channel.unreadMessageCount) > 0) {
755
+ markAsDeliveredScheduler.push(channel);
756
+ }
757
+ });
758
+ }
759
+ return [3 /*break*/, 4];
760
+ case 3:
761
+ error_1 = _a.sent();
762
+ logger.error('ChannelList: failed fetch', {
763
+ error: error_1
764
+ });
765
+ channelListDispatcher({
766
+ type: FETCH_CHANNELS_FAILURE,
767
+ payload: error_1
768
+ });
769
+ return [3 /*break*/, 4];
770
+ case 4:
771
+ return [2 /*return*/];
772
+ }
773
+ });
774
+ });
775
+ }, [channelSource, disableMarkAsDelivered]);
776
+ };
777
+
778
+ var ChannelListContext = /*#__PURE__*/React__default["default"].createContext({
779
+ disableUserProfile: true,
780
+ allowProfileEdit: true,
781
+ onBeforeCreateChannel: null,
782
+ onThemeChange: null,
783
+ onProfileEditSuccess: null,
784
+ onChannelSelect: null,
785
+ queries: {},
786
+ className: null,
787
+ initialized: false,
788
+ loading: false,
789
+ allChannels: [],
790
+ currentChannel: null,
791
+ channelListQuery: {},
792
+ currentUserId: null,
793
+ channelListDispatcher: null,
794
+ channelSource: null,
795
+ typingChannels: [],
796
+ fetchChannelList: utils.noop
797
+ });
798
+ var ChannelListProvider = function (props) {
799
+ var _a, _b;
800
+ // destruct props
801
+ var children = props.children,
802
+ className = props.className,
803
+ disableUserProfile = props.disableUserProfile,
804
+ allowProfileEdit = props.allowProfileEdit,
805
+ queries = props.queries,
806
+ onProfileEditSuccess = props.onProfileEditSuccess,
807
+ onThemeChange = props.onThemeChange,
808
+ onBeforeCreateChannel = props.onBeforeCreateChannel,
809
+ sortChannelList = props.sortChannelList,
810
+ overrideInviteUser = props.overrideInviteUser,
811
+ activeChannelUrl = props.activeChannelUrl,
812
+ _c = props.isTypingIndicatorEnabled,
813
+ isTypingIndicatorEnabled = _c === void 0 ? null : _c,
814
+ _d = props.isMessageReceiptStatusEnabled,
815
+ isMessageReceiptStatusEnabled = _d === void 0 ? null : _d;
816
+ // disable autoselect, if activeChannelUrl is provided
817
+ // useActiveChannelUrl should be executed when activeChannelUrl is present
818
+ var disableAutoSelect = (props === null || props === void 0 ? void 0 : props.disableAutoSelect) || !!activeChannelUrl;
819
+ var onChannelSelect = (props === null || props === void 0 ? void 0 : props.onChannelSelect) || utils.noop;
820
+ // fetch store from <SendbirdProvider />
821
+ var globalStore = useSendbirdStateContext.useSendbirdStateContext();
822
+ var config = globalStore.config,
823
+ stores = globalStore.stores;
824
+ var sdkStore = stores.sdkStore;
825
+ var pubSub = config.pubSub,
826
+ logger = config.logger,
827
+ onUserProfileMessage = config.onUserProfileMessage;
828
+ var markAsDeliveredScheduler = config.markAsDeliveredScheduler,
829
+ _e = config.disableMarkAsDelivered,
830
+ disableMarkAsDelivered = _e === void 0 ? false : _e,
831
+ _f = config.isTypingIndicatorEnabledOnChannelList,
832
+ isTypingIndicatorEnabledOnChannelList = _f === void 0 ? false : _f,
833
+ _g = config.isMessageReceiptStatusEnabledOnChannelList,
834
+ isMessageReceiptStatusEnabledOnChannelList = _g === void 0 ? false : _g;
835
+ var sdk = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.sdk;
836
+ var _h = ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.appInfo) !== null && _a !== void 0 ? _a : {}).premiumFeatureList,
837
+ premiumFeatureList = _h === void 0 ? [] : _h;
838
+ // derive some variables
839
+ // enable if it is true atleast once(both are flase by default)
840
+ var userDefinedDisableUserProfile = disableUserProfile || (config === null || config === void 0 ? void 0 : config.disableUserProfile);
841
+ var userDefinedRenderProfile = config === null || config === void 0 ? void 0 : config.renderUserProfile;
842
+ var enableEditProfile = allowProfileEdit || (config === null || config === void 0 ? void 0 : config.allowProfileEdit);
843
+ var userFilledChannelListQuery = queries === null || queries === void 0 ? void 0 : queries.channelListQuery;
844
+ var userFilledApplicationUserListQuery = queries === null || queries === void 0 ? void 0 : queries.applicationUserListQuery;
845
+ var sdkIntialized = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.initialized;
846
+ var _j = React.useReducer(channelListReducer, initialState),
847
+ channelListStore = _j[0],
848
+ channelListDispatcher = _j[1];
849
+ var currentChannel = channelListStore.currentChannel;
850
+ var _k = React.useState(null),
851
+ channelSource = _k[0],
852
+ setChannelSource = _k[1];
853
+ var _l = React.useState([]),
854
+ typingChannels = _l[0],
855
+ setTypingChannels = _l[1];
856
+ React.useEffect(function () {
857
+ var subscriber = pubSubHandler(pubSub, channelListDispatcher);
858
+ return function () {
859
+ pubSubHandleRemover(subscriber);
860
+ };
861
+ }, [sdkIntialized]);
862
+ React.useEffect(function () {
863
+ var _a;
864
+ var sdkChannelHandlerId = uuid.uuidv4();
865
+ if (sdkIntialized) {
866
+ logger.info('ChannelList: Setup channelHandlers');
867
+ setupChannelList({
868
+ sdk: sdk,
869
+ sdkChannelHandlerId: sdkChannelHandlerId,
870
+ channelListDispatcher: channelListDispatcher,
871
+ setChannelSource: setChannelSource,
872
+ onChannelSelect: onChannelSelect,
873
+ userFilledChannelListQuery: userFilledChannelListQuery,
874
+ logger: logger,
875
+ sortChannelList: sortChannelList,
876
+ disableAutoSelect: disableAutoSelect,
877
+ markAsDeliveredScheduler: markAsDeliveredScheduler,
878
+ disableMarkAsDelivered: disableMarkAsDelivered
879
+ });
880
+ } else {
881
+ logger.info('ChannelList: Removing channelHandlers');
882
+ // remove previous channelHandlers
883
+ if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.removeGroupChannelHandler) {
884
+ sdk.groupChannel.removeGroupChannelHandler(sdkChannelHandlerId);
885
+ }
886
+ // remove channelSource
887
+ setChannelSource(null);
888
+ // cleanup
889
+ channelListDispatcher({
890
+ type: RESET_CHANNEL_LIST,
891
+ payload: null
892
+ });
893
+ }
894
+ return function () {
895
+ var _a, _b;
896
+ logger.info('ChannelList: Removing channelHandlers');
897
+ if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.removeGroupChannelHandler) {
898
+ (_b = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _b === void 0 ? void 0 : _b.removeGroupChannelHandler(sdkChannelHandlerId);
899
+ }
900
+ };
901
+ }, [sdkIntialized, userFilledChannelListQuery, sortChannelList]);
902
+ React.useEffect(function () {
903
+ var _a, _b;
904
+ var typingHandlerId = '';
905
+ if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.addGroupChannelHandler) {
906
+ typingHandlerId = uuid.uuidv4();
907
+ var handler = new groupChannel.GroupChannelHandler({
908
+ onTypingStatusUpdated: function (channel) {
909
+ var _a;
910
+ var typingMemberCount = (_a = channel === null || channel === void 0 ? void 0 : channel.getTypingUsers()) === null || _a === void 0 ? void 0 : _a.length;
911
+ var channelList = typingChannels.filter(function (ch) {
912
+ return ch.url !== channel.url;
913
+ });
914
+ if (typingMemberCount > 0) {
915
+ setTypingChannels(tslib_es6.__spreadArray(tslib_es6.__spreadArray([], channelList, true), [channel], false));
916
+ } else {
917
+ setTypingChannels(channelList);
918
+ }
919
+ },
920
+ onUnreadMemberStatusUpdated: function (channel) {
921
+ channelListDispatcher({
922
+ type: ON_LAST_MESSAGE_UPDATED,
923
+ payload: channel
924
+ });
925
+ },
926
+ onUndeliveredMemberStatusUpdated: function (channel) {
927
+ channelListDispatcher({
928
+ type: ON_LAST_MESSAGE_UPDATED,
929
+ payload: channel
930
+ });
931
+ },
932
+ onMessageUpdated: function (channel) {
933
+ if (channel.isGroupChannel()) {
934
+ channelListDispatcher({
935
+ type: ON_LAST_MESSAGE_UPDATED,
936
+ payload: channel
937
+ });
938
+ sdk.groupChannel.getChannelWithoutCache(channel.url).then(function (ch) {
939
+ channelListDispatcher({
940
+ type: ON_LAST_MESSAGE_UPDATED,
941
+ payload: ch
942
+ });
943
+ });
944
+ }
945
+ },
946
+ onMentionReceived: function (channel) {
947
+ if (channel.isGroupChannel()) {
948
+ channelListDispatcher({
949
+ type: ON_LAST_MESSAGE_UPDATED,
950
+ payload: channel
951
+ });
952
+ sdk.groupChannel.getChannelWithoutCache(channel.url).then(function (ch) {
953
+ channelListDispatcher({
954
+ type: ON_LAST_MESSAGE_UPDATED,
955
+ payload: ch
956
+ });
957
+ });
958
+ }
959
+ }
960
+ });
961
+ (_b = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _b === void 0 ? void 0 : _b.addGroupChannelHandler(typingHandlerId, handler);
962
+ }
963
+ return function () {
964
+ var _a;
965
+ if (((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.removeGroupChannelHandler) && typingHandlerId !== '') {
966
+ sdk.groupChannel.removeGroupChannelHandler(typingHandlerId);
967
+ }
968
+ };
969
+ }, [(_b = sdk === null || sdk === void 0 ? void 0 : sdk.currentUser) === null || _b === void 0 ? void 0 : _b.userId]);
970
+ var queries_ = React.useMemo(function () {
971
+ return {
972
+ applicationUserListQuery: userFilledApplicationUserListQuery,
973
+ channelListQuery: userFilledChannelListQuery
974
+ };
975
+ }, [userFilledApplicationUserListQuery, userFilledChannelListQuery]);
976
+ var allChannels = channelListStore.allChannels;
977
+ var sortedChannels = sortChannelList && typeof sortChannelList === 'function' ? sortChannelList(allChannels) : allChannels;
978
+ if (sortedChannels.length !== allChannels.length) {
979
+ var warning = "ChannelList: You have removed/added extra channels on sortChannelList\n this could cause unexpected problems";
980
+ // eslint-disable-next-line no-console
981
+ console.warn(warning, {
982
+ before: allChannels,
983
+ after: sortedChannels
984
+ });
985
+ logger.warning(warning, {
986
+ before: allChannels,
987
+ after: sortedChannels
988
+ });
989
+ }
990
+ // Set current channel (by on_channel_selected event)
991
+ React.useEffect(function () {
992
+ if (!sdk || !sdk.groupChannel || !currentChannel || !(currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url)) {
993
+ return;
994
+ }
995
+ sdk.groupChannel.getChannel(currentChannel.url).then(function (groupChannel) {
996
+ if (groupChannel) {
997
+ onChannelSelect(groupChannel);
998
+ } else {
999
+ onChannelSelect(null);
1000
+ }
1001
+ });
1002
+ }, [currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url]);
1003
+ // Set active channel (by url)
1004
+ useActiveChannelUrl({
1005
+ activeChannelUrl: activeChannelUrl,
1006
+ channels: sortedChannels,
1007
+ sdk: sdk
1008
+ }, {
1009
+ logger: logger,
1010
+ channelListDispatcher: channelListDispatcher
1011
+ });
1012
+ var fetchChannelList = useFetchChannelList({
1013
+ channelSource: channelSource,
1014
+ disableMarkAsDelivered: disableMarkAsDelivered || !premiumFeatureList.some(function (feature) {
1015
+ return feature === consts.DELIVERY_RECEIPT;
1016
+ })
1017
+ }, {
1018
+ channelListDispatcher: channelListDispatcher,
1019
+ logger: logger,
1020
+ markAsDeliveredScheduler: markAsDeliveredScheduler
1021
+ });
1022
+ return /*#__PURE__*/React__default["default"].createElement(ChannelListContext.Provider, {
1023
+ value: tslib_es6.__assign(tslib_es6.__assign({
1024
+ className: className,
1025
+ disableUserProfile: disableUserProfile,
1026
+ queries: queries_,
1027
+ onProfileEditSuccess: onProfileEditSuccess,
1028
+ onThemeChange: onThemeChange,
1029
+ onBeforeCreateChannel: onBeforeCreateChannel,
1030
+ overrideInviteUser: overrideInviteUser,
1031
+ onChannelSelect: onChannelSelect,
1032
+ sortChannelList: sortChannelList,
1033
+ allowProfileEdit: enableEditProfile,
1034
+ channelListDispatcher: channelListDispatcher,
1035
+ channelSource: channelSource
1036
+ }, channelListStore), {
1037
+ allChannels: sortedChannels,
1038
+ typingChannels: typingChannels,
1039
+ isTypingIndicatorEnabled: isTypingIndicatorEnabled !== null ? isTypingIndicatorEnabled : isTypingIndicatorEnabledOnChannelList,
1040
+ isMessageReceiptStatusEnabled: isMessageReceiptStatusEnabled !== null ? isMessageReceiptStatusEnabled : isMessageReceiptStatusEnabledOnChannelList,
1041
+ fetchChannelList: fetchChannelList
1042
+ })
1043
+ }, /*#__PURE__*/React__default["default"].createElement(UserProfileContext.UserProfileProvider, {
1044
+ disableUserProfile: userDefinedDisableUserProfile !== null && userDefinedDisableUserProfile !== void 0 ? userDefinedDisableUserProfile : config === null || config === void 0 ? void 0 : config.disableUserProfile,
1045
+ renderUserProfile: userDefinedRenderProfile,
1046
+ onUserProfileMessage: onUserProfileMessage
1047
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
1048
+ className: "sendbird-channel-list ".concat(className)
1049
+ }, children)));
1050
+ };
1051
+ function useChannelListContext() {
1052
+ var context = React.useContext(ChannelListContext);
1053
+ return context;
1054
+ }
1055
+
1056
+ exports.ChannelListProvider = ChannelListProvider;
1057
+ exports.LEAVE_CHANNEL_SUCCESS = LEAVE_CHANNEL_SUCCESS;
1058
+ exports.SET_CURRENT_CHANNEL = SET_CURRENT_CHANNEL;
1059
+ exports.useChannelListContext = useChannelListContext;
1060
+ //# sourceMappingURL=ChannelListProvider-a418de2e.js.map