@sendbird/uikit-react 3.5.0-rc.0 → 3.5.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 (936) hide show
  1. package/App.js +312 -235
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +544 -0
  4. package/Channel/components/ChannelHeader.js +46 -41
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +104 -131
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +56 -52
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +12 -7
  11. package/Channel/components/FrozenNotification.js.map +1 -1
  12. package/Channel/components/Message.js +240 -230
  13. package/Channel/components/Message.js.map +1 -1
  14. package/Channel/components/MessageInput.js +152 -129
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageList.js +260 -175
  17. package/Channel/components/MessageList.js.map +1 -1
  18. package/Channel/components/RemoveMessageModal.js +34 -30
  19. package/Channel/components/RemoveMessageModal.js.map +1 -1
  20. package/Channel/components/SuggestedMentionList.js +139 -193
  21. package/Channel/components/SuggestedMentionList.js.map +1 -1
  22. package/Channel/components/TypingIndicator.js +44 -61
  23. package/Channel/components/TypingIndicator.js.map +1 -1
  24. package/Channel/components/UnreadCount.js +18 -20
  25. package/Channel/components/UnreadCount.js.map +1 -1
  26. package/Channel/context.js +12 -19
  27. package/Channel/context.js.map +1 -1
  28. package/Channel.js +69 -44
  29. package/Channel.js.map +1 -1
  30. package/ChannelList/components/AddChannel.js +29 -30
  31. package/ChannelList/components/AddChannel.js.map +1 -1
  32. package/ChannelList/components/ChannelListHeader.js +32 -28
  33. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  34. package/ChannelList/components/ChannelListUI.js +101 -142
  35. package/ChannelList/components/ChannelListUI.js.map +1 -1
  36. package/ChannelList/components/ChannelPreview.js +72 -82
  37. package/ChannelList/components/ChannelPreview.js.map +1 -1
  38. package/ChannelList/components/ChannelPreviewAction.js +36 -36
  39. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  40. package/ChannelList/context.js +7 -8
  41. package/ChannelList/context.js.map +1 -1
  42. package/ChannelList.js +32 -31
  43. package/ChannelList.js.map +1 -1
  44. package/{ChannelListProvider-ade145a7.js → ChannelListProvider-4cf5c0f5.js} +233 -285
  45. package/ChannelListProvider-4cf5c0f5.js.map +1 -0
  46. package/{ChannelProvider-c9db10c0.js → ChannelProvider-6e8e99df.js} +659 -726
  47. package/ChannelProvider-6e8e99df.js.map +1 -0
  48. package/ChannelSettings/components/ChannelProfile.js +33 -46
  49. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  50. package/ChannelSettings/components/ChannelSettingsUI.js +45 -48
  51. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  52. package/ChannelSettings/components/EditDetailsModal.js +47 -58
  53. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  54. package/ChannelSettings/components/LeaveChannel.js +40 -46
  55. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  56. package/ChannelSettings/components/ModerationPanel.js +522 -605
  57. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  58. package/ChannelSettings/components/UserListItem.js +71 -72
  59. package/ChannelSettings/components/UserListItem.js.map +1 -1
  60. package/ChannelSettings/components/UserPanel.js +29 -32
  61. package/ChannelSettings/components/UserPanel.js.map +1 -1
  62. package/ChannelSettings/context.js +53 -57
  63. package/ChannelSettings/context.js.map +1 -1
  64. package/ChannelSettings.js +20 -20
  65. package/ChannelSettings.js.map +1 -1
  66. package/CreateChannel/components/CreateChannelUI.js +24 -24
  67. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  68. package/CreateChannel/components/InviteUsers.js +102 -124
  69. package/CreateChannel/components/InviteUsers.js.map +1 -1
  70. package/CreateChannel/components/SelectChannelType.js +41 -42
  71. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  72. package/CreateChannel/context.js +4 -4
  73. package/CreateChannel.js +22 -21
  74. package/CreateChannel.js.map +1 -1
  75. package/CreateChannelProvider-34603fa5.js +44 -0
  76. package/CreateChannelProvider-34603fa5.js.map +1 -0
  77. package/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
  78. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  79. package/CreateOpenChannel/context.js +33 -33
  80. package/CreateOpenChannel/context.js.map +1 -1
  81. package/CreateOpenChannel.js +18 -17
  82. package/CreateOpenChannel.js.map +1 -1
  83. package/EditUserProfile/components/EditUserProfileUI.js +12 -13
  84. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  85. package/EditUserProfile/context.js +0 -2
  86. package/EditUserProfile/context.js.map +1 -1
  87. package/EditUserProfile.js +18 -17
  88. package/EditUserProfile.js.map +1 -1
  89. package/LocalizationContext-04c0c9dc.js +20 -0
  90. package/{LocalizationContext-60894e38.js.map → LocalizationContext-04c0c9dc.js.map} +1 -1
  91. package/MediaQueryContext-ff9dca2b.js +87 -0
  92. package/MediaQueryContext-ff9dca2b.js.map +1 -0
  93. package/MemberList-9bf26111.js +403 -0
  94. package/MemberList-9bf26111.js.map +1 -0
  95. package/Message/context.js +31 -0
  96. package/Message/context.js.map +1 -0
  97. package/MessageSearch/components/MessageSearchUI.js +62 -71
  98. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  99. package/MessageSearch/context.js +201 -224
  100. package/MessageSearch/context.js.map +1 -1
  101. package/MessageSearch.js +46 -58
  102. package/MessageSearch.js.map +1 -1
  103. package/OpenChannel/components/FrozenChannelNotification.js +8 -6
  104. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  105. package/OpenChannel/components/OpenChannelHeader.js +27 -25
  106. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  107. package/OpenChannel/components/OpenChannelInput.js +50 -35
  108. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  109. package/OpenChannel/components/OpenChannelMessage.js +174 -191
  110. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  111. package/OpenChannel/components/OpenChannelMessageList.js +72 -92
  112. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  113. package/OpenChannel/components/OpenChannelUI.js +52 -49
  114. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  115. package/OpenChannel/context.js +8 -9
  116. package/OpenChannel/context.js.map +1 -1
  117. package/OpenChannel.js +36 -30
  118. package/OpenChannel.js.map +1 -1
  119. package/OpenChannelList/components/OpenChannelListUI.js +61 -76
  120. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  121. package/OpenChannelList/components/OpenChannelPreview.js +21 -22
  122. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  123. package/OpenChannelList/context.js +3 -4
  124. package/OpenChannelList/context.js.map +1 -1
  125. package/OpenChannelList.js +26 -24
  126. package/OpenChannelList.js.map +1 -1
  127. package/OpenChannelListProvider-d7372692.js +429 -0
  128. package/OpenChannelListProvider-d7372692.js.map +1 -0
  129. package/OpenChannelProvider-24cd68b9.js +1885 -0
  130. package/OpenChannelProvider-24cd68b9.js.map +1 -0
  131. package/OpenChannelSettings/components/EditDetailsModal.js +47 -56
  132. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  133. package/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
  134. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  135. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
  136. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  137. package/OpenChannelSettings/components/OperatorUI.js +516 -586
  138. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  139. package/OpenChannelSettings/components/ParticipantUI.js +15 -16
  140. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  141. package/OpenChannelSettings/context.js +56 -69
  142. package/OpenChannelSettings/context.js.map +1 -1
  143. package/OpenChannelSettings.js +19 -20
  144. package/OpenChannelSettings.js.map +1 -1
  145. package/README.md +62 -13
  146. package/RemoveMessageModal-94e2bf9e.js +36 -0
  147. package/RemoveMessageModal-94e2bf9e.js.map +1 -0
  148. package/SendbirdProvider.js +749 -408
  149. package/SendbirdProvider.js.map +1 -1
  150. package/Thread/components/ParentMessageInfo.js +238 -217
  151. package/Thread/components/ParentMessageInfo.js.map +1 -1
  152. package/Thread/components/ParentMessageInfoItem.js +112 -89
  153. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  154. package/Thread/components/ThreadHeader.js +22 -23
  155. package/Thread/components/ThreadHeader.js.map +1 -1
  156. package/Thread/components/ThreadList.js +108 -83
  157. package/Thread/components/ThreadList.js.map +1 -1
  158. package/Thread/components/ThreadListItem.js +306 -276
  159. package/Thread/components/ThreadListItem.js.map +1 -1
  160. package/Thread/components/ThreadMessageInput.js +146 -113
  161. package/Thread/components/ThreadMessageInput.js.map +1 -1
  162. package/Thread/components/ThreadUI.js +169 -138
  163. package/Thread/components/ThreadUI.js.map +1 -1
  164. package/Thread/context/types.js +9 -14
  165. package/Thread/context/types.js.map +1 -1
  166. package/Thread/context.js +8 -8
  167. package/Thread.js +87 -57
  168. package/Thread.js.map +1 -1
  169. package/ThreadProvider-203b94f3.js +1695 -0
  170. package/ThreadProvider-203b94f3.js.map +1 -0
  171. package/{UserProfileContext-33a26cc4.js → UserProfileContext-c776d522.js} +1 -4
  172. package/{UserProfileContext-33a26cc4.js.map → UserProfileContext-c776d522.js.map} +1 -1
  173. package/VoiceMessageInputWrapper-77d8f487.js +170 -0
  174. package/VoiceMessageInputWrapper-77d8f487.js.map +1 -0
  175. package/VoicePlayer/context.js +7 -0
  176. package/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
  177. package/VoicePlayer/useVoicePlayer.js +84 -0
  178. package/VoicePlayer/useVoicePlayer.js.map +1 -0
  179. package/VoiceRecorder/context.js +156 -0
  180. package/VoiceRecorder/context.js.map +1 -0
  181. package/VoiceRecorder/useVoiceRecorder.js +121 -0
  182. package/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  183. package/WebAudioUtils-62e6d3a7.js +123 -0
  184. package/WebAudioUtils-62e6d3a7.js.map +1 -0
  185. package/{_rollupPluginBabelHelpers-ed44209e.js → _rollupPluginBabelHelpers-fb0e05a4.js} +17 -11
  186. package/_rollupPluginBabelHelpers-fb0e05a4.js.map +1 -0
  187. package/actionTypes-1db5749d.js +8 -0
  188. package/actionTypes-1db5749d.js.map +1 -0
  189. package/cjs/App.js +312 -235
  190. package/cjs/App.js.map +1 -1
  191. package/cjs/Channel/components/ChannelHeader.js +46 -41
  192. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  193. package/cjs/Channel/components/ChannelUI.js +102 -129
  194. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  195. package/cjs/Channel/components/FileViewer.js +56 -52
  196. package/cjs/Channel/components/FileViewer.js.map +1 -1
  197. package/cjs/Channel/components/FrozenNotification.js +12 -7
  198. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  199. package/cjs/Channel/components/Message.js +243 -233
  200. package/cjs/Channel/components/Message.js.map +1 -1
  201. package/cjs/Channel/components/MessageInput.js +151 -128
  202. package/cjs/Channel/components/MessageInput.js.map +1 -1
  203. package/cjs/Channel/components/MessageList.js +260 -175
  204. package/cjs/Channel/components/MessageList.js.map +1 -1
  205. package/cjs/Channel/components/RemoveMessageModal.js +34 -30
  206. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  207. package/cjs/Channel/components/SuggestedMentionList.js +139 -193
  208. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  209. package/cjs/Channel/components/TypingIndicator.js +44 -61
  210. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  211. package/cjs/Channel/components/UnreadCount.js +18 -20
  212. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  213. package/cjs/Channel/context.js +12 -23
  214. package/cjs/Channel/context.js.map +1 -1
  215. package/cjs/Channel.js +69 -44
  216. package/cjs/Channel.js.map +1 -1
  217. package/cjs/ChannelList/components/AddChannel.js +29 -30
  218. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  219. package/cjs/ChannelList/components/ChannelListHeader.js +32 -28
  220. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  221. package/cjs/ChannelList/components/ChannelListUI.js +100 -141
  222. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  223. package/cjs/ChannelList/components/ChannelPreview.js +72 -82
  224. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  225. package/cjs/ChannelList/components/ChannelPreviewAction.js +36 -36
  226. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  227. package/cjs/ChannelList/context.js +7 -8
  228. package/cjs/ChannelList/context.js.map +1 -1
  229. package/cjs/ChannelList.js +32 -31
  230. package/cjs/ChannelList.js.map +1 -1
  231. package/cjs/{ChannelListProvider-65473831.js → ChannelListProvider-e0ce316a.js} +232 -284
  232. package/cjs/ChannelListProvider-e0ce316a.js.map +1 -0
  233. package/cjs/{ChannelProvider-1e08a7a9.js → ChannelProvider-0df75472.js} +657 -724
  234. package/cjs/ChannelProvider-0df75472.js.map +1 -0
  235. package/cjs/ChannelSettings/components/ChannelProfile.js +33 -46
  236. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  237. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +45 -48
  238. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  239. package/cjs/ChannelSettings/components/EditDetailsModal.js +47 -58
  240. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  241. package/cjs/ChannelSettings/components/LeaveChannel.js +40 -46
  242. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  243. package/cjs/ChannelSettings/components/ModerationPanel.js +522 -605
  244. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  245. package/cjs/ChannelSettings/components/UserListItem.js +71 -72
  246. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  247. package/cjs/ChannelSettings/components/UserPanel.js +29 -32
  248. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  249. package/cjs/ChannelSettings/context.js +55 -59
  250. package/cjs/ChannelSettings/context.js.map +1 -1
  251. package/cjs/ChannelSettings.js +20 -20
  252. package/cjs/ChannelSettings.js.map +1 -1
  253. package/cjs/CreateChannel/components/CreateChannelUI.js +24 -24
  254. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  255. package/cjs/CreateChannel/components/InviteUsers.js +102 -124
  256. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  257. package/cjs/CreateChannel/components/SelectChannelType.js +41 -42
  258. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  259. package/cjs/CreateChannel/context.js +4 -4
  260. package/cjs/CreateChannel.js +22 -21
  261. package/cjs/CreateChannel.js.map +1 -1
  262. package/cjs/CreateChannelProvider-c0fca0a5.js +52 -0
  263. package/cjs/CreateChannelProvider-c0fca0a5.js.map +1 -0
  264. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
  265. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  266. package/cjs/CreateOpenChannel/context.js +33 -33
  267. package/cjs/CreateOpenChannel/context.js.map +1 -1
  268. package/cjs/CreateOpenChannel.js +18 -17
  269. package/cjs/CreateOpenChannel.js.map +1 -1
  270. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -13
  271. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  272. package/cjs/EditUserProfile/context.js +0 -2
  273. package/cjs/EditUserProfile/context.js.map +1 -1
  274. package/cjs/EditUserProfile.js +18 -17
  275. package/cjs/EditUserProfile.js.map +1 -1
  276. package/cjs/{LocalizationContext-8780a64e.js → LocalizationContext-0e429c3d.js} +9 -11
  277. package/cjs/{LocalizationContext-8780a64e.js.map → LocalizationContext-0e429c3d.js.map} +1 -1
  278. package/cjs/MediaQueryContext-33fc3b17.js +94 -0
  279. package/cjs/MediaQueryContext-33fc3b17.js.map +1 -0
  280. package/cjs/MemberList-a45a51c4.js +409 -0
  281. package/cjs/MemberList-a45a51c4.js.map +1 -0
  282. package/cjs/Message/context.js +40 -0
  283. package/cjs/Message/context.js.map +1 -0
  284. package/cjs/MessageSearch/components/MessageSearchUI.js +61 -70
  285. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  286. package/cjs/MessageSearch/context.js +201 -224
  287. package/cjs/MessageSearch/context.js.map +1 -1
  288. package/cjs/MessageSearch.js +46 -58
  289. package/cjs/MessageSearch.js.map +1 -1
  290. package/cjs/OpenChannel/components/FrozenChannelNotification.js +8 -6
  291. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  292. package/cjs/OpenChannel/components/OpenChannelHeader.js +27 -25
  293. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  294. package/cjs/OpenChannel/components/OpenChannelInput.js +50 -35
  295. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  296. package/cjs/OpenChannel/components/OpenChannelMessage.js +174 -191
  297. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  298. package/cjs/OpenChannel/components/OpenChannelMessageList.js +72 -92
  299. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  300. package/cjs/OpenChannel/components/OpenChannelUI.js +52 -49
  301. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  302. package/cjs/OpenChannel/context.js +8 -9
  303. package/cjs/OpenChannel/context.js.map +1 -1
  304. package/cjs/OpenChannel.js +36 -30
  305. package/cjs/OpenChannel.js.map +1 -1
  306. package/cjs/OpenChannelList/components/OpenChannelListUI.js +61 -76
  307. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  308. package/cjs/OpenChannelList/components/OpenChannelPreview.js +21 -22
  309. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  310. package/cjs/OpenChannelList/context.js +3 -4
  311. package/cjs/OpenChannelList/context.js.map +1 -1
  312. package/cjs/OpenChannelList.js +26 -24
  313. package/cjs/OpenChannelList.js.map +1 -1
  314. package/cjs/OpenChannelListProvider-fc8b53ee.js +439 -0
  315. package/cjs/OpenChannelListProvider-fc8b53ee.js.map +1 -0
  316. package/cjs/OpenChannelProvider-217a8ac2.js +1894 -0
  317. package/cjs/OpenChannelProvider-217a8ac2.js.map +1 -0
  318. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +47 -56
  319. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  320. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
  321. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  322. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
  323. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  324. package/cjs/OpenChannelSettings/components/OperatorUI.js +516 -586
  325. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  326. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -16
  327. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  328. package/cjs/OpenChannelSettings/context.js +57 -70
  329. package/cjs/OpenChannelSettings/context.js.map +1 -1
  330. package/cjs/OpenChannelSettings.js +19 -20
  331. package/cjs/OpenChannelSettings.js.map +1 -1
  332. package/cjs/{RemoveMessageModal-0da4f94b.js → RemoveMessageModal-5903f232.js} +19 -14
  333. package/cjs/RemoveMessageModal-5903f232.js.map +1 -0
  334. package/cjs/SendbirdProvider.js +748 -408
  335. package/cjs/SendbirdProvider.js.map +1 -1
  336. package/cjs/Thread/components/ParentMessageInfo.js +237 -216
  337. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  338. package/cjs/Thread/components/ParentMessageInfoItem.js +111 -88
  339. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  340. package/cjs/Thread/components/ThreadHeader.js +22 -23
  341. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  342. package/cjs/Thread/components/ThreadList.js +108 -83
  343. package/cjs/Thread/components/ThreadList.js.map +1 -1
  344. package/cjs/Thread/components/ThreadListItem.js +305 -275
  345. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  346. package/cjs/Thread/components/ThreadMessageInput.js +146 -113
  347. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  348. package/cjs/Thread/components/ThreadUI.js +170 -139
  349. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  350. package/cjs/Thread/context/types.js +13 -14
  351. package/cjs/Thread/context/types.js.map +1 -1
  352. package/cjs/Thread/context.js +8 -8
  353. package/cjs/Thread.js +87 -57
  354. package/cjs/Thread.js.map +1 -1
  355. package/cjs/ThreadProvider-8ee179c2.js +1704 -0
  356. package/cjs/ThreadProvider-8ee179c2.js.map +1 -0
  357. package/cjs/{UserProfileContext-0808e413.js → UserProfileContext-87580795.js} +1 -4
  358. package/cjs/{UserProfileContext-0808e413.js.map → UserProfileContext-87580795.js.map} +1 -1
  359. package/cjs/VoiceMessageInputWrapper-4fdc8ef1.js +176 -0
  360. package/cjs/VoiceMessageInputWrapper-4fdc8ef1.js.map +1 -0
  361. package/cjs/VoicePlayer/context.js +17 -0
  362. package/cjs/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
  363. package/cjs/VoicePlayer/useVoicePlayer.js +88 -0
  364. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -0
  365. package/cjs/VoiceRecorder/context.js +166 -0
  366. package/cjs/VoiceRecorder/context.js.map +1 -0
  367. package/cjs/VoiceRecorder/useVoiceRecorder.js +126 -0
  368. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  369. package/cjs/WebAudioUtils-e226789c.js +126 -0
  370. package/cjs/WebAudioUtils-e226789c.js.map +1 -0
  371. package/cjs/{_rollupPluginBabelHelpers-bd6baf0a.js → _rollupPluginBabelHelpers-c89f311a.js} +17 -10
  372. package/cjs/_rollupPluginBabelHelpers-c89f311a.js.map +1 -0
  373. package/cjs/actionTypes-0fa2943d.js +10 -0
  374. package/cjs/actionTypes-0fa2943d.js.map +1 -0
  375. package/cjs/{color-fdbe394d.js → color-bada0fc7.js} +13 -21
  376. package/cjs/color-bada0fc7.js.map +1 -0
  377. package/cjs/{compareIds-d0c02eca.js → compareIds-ccccfe86.js} +5 -6
  378. package/cjs/compareIds-ccccfe86.js.map +1 -0
  379. package/cjs/const-a85f3364.js +20 -0
  380. package/cjs/const-a85f3364.js.map +1 -0
  381. package/cjs/{const-8785e4ad.js → const-d8cece19.js} +4 -4
  382. package/cjs/const-d8cece19.js.map +1 -0
  383. package/cjs/consts-1c3020ad.js +6 -0
  384. package/cjs/consts-1c3020ad.js.map +1 -0
  385. package/cjs/consts-1d94dc61.js +6 -0
  386. package/cjs/consts-1d94dc61.js.map +1 -0
  387. package/cjs/consts-5e0f96b3.js +41 -0
  388. package/cjs/consts-5e0f96b3.js.map +1 -0
  389. package/cjs/consts-740f60b8.js +6 -0
  390. package/cjs/consts-740f60b8.js.map +1 -0
  391. package/cjs/{context-012aecd1.js → context-8e7e8457.js} +6 -5
  392. package/cjs/{context-012aecd1.js.map → context-8e7e8457.js.map} +1 -1
  393. package/cjs/dist/index.css +1682 -1229
  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/{index-48d85d8f.js → index-016f7106.js} +1 -1
  398. package/cjs/{index-48d85d8f.js.map → index-016f7106.js.map} +1 -1
  399. package/cjs/{index-e8544e24.js → index-1613ae03.js} +29 -37
  400. package/cjs/index-1613ae03.js.map +1 -0
  401. package/cjs/index-2be14d85.js +57 -0
  402. package/cjs/index-2be14d85.js.map +1 -0
  403. package/cjs/index-3b30939e.js +79 -0
  404. package/cjs/index-3b30939e.js.map +1 -0
  405. package/cjs/index-5231fde8.js +585 -0
  406. package/cjs/index-5231fde8.js.map +1 -0
  407. package/cjs/index-648c06ed.js +330 -0
  408. package/cjs/index-648c06ed.js.map +1 -0
  409. package/cjs/{index-bdd889a2.js → index-6cb0d040.js} +11 -25
  410. package/cjs/index-6cb0d040.js.map +1 -0
  411. package/cjs/{index-ebb542c3.js → index-71fdaa1b.js} +55 -63
  412. package/cjs/index-71fdaa1b.js.map +1 -0
  413. package/cjs/{index-abe135e6.js → index-7d125728.js} +2 -2
  414. package/cjs/{index-abe135e6.js.map → index-7d125728.js.map} +1 -1
  415. package/cjs/{index-e191d245.js → index-7f6bbe0c.js} +42 -51
  416. package/cjs/index-7f6bbe0c.js.map +1 -0
  417. package/cjs/{index-5ea12b7a.js → index-869e9a94.js} +2 -2
  418. package/cjs/{index-5ea12b7a.js.map → index-869e9a94.js.map} +1 -1
  419. package/cjs/index-89d81dad.js +456 -0
  420. package/cjs/index-89d81dad.js.map +1 -0
  421. package/cjs/{index-c13771a7.js → index-8affdde5.js} +57 -3
  422. package/cjs/index-8affdde5.js.map +1 -0
  423. package/cjs/index-99f16473.js +202 -0
  424. package/cjs/index-99f16473.js.map +1 -0
  425. package/cjs/index-c9d348b6.js +367 -0
  426. package/cjs/index-c9d348b6.js.map +1 -0
  427. package/cjs/index-e8c0080f.js +161 -0
  428. package/cjs/index-e8c0080f.js.map +1 -0
  429. package/cjs/{index-08d232f8.js → index-f570d25c.js} +1 -1
  430. package/cjs/index-f570d25c.js.map +1 -0
  431. package/cjs/index.js +84 -63
  432. package/cjs/index.js.map +1 -1
  433. package/cjs/index.module-0585715f.js +6 -0
  434. package/cjs/index.module-0585715f.js.map +1 -0
  435. package/cjs/lame.all.js +2541 -0
  436. package/cjs/lame.all.js.map +1 -0
  437. package/cjs/resolvedReplyType-67e78c63.js +32 -0
  438. package/cjs/resolvedReplyType-67e78c63.js.map +1 -0
  439. package/cjs/sendbirdSelectors.js +307 -417
  440. package/cjs/sendbirdSelectors.js.map +1 -1
  441. package/cjs/{stringSet-60660a99.js → stringSet-106da549.js} +112 -90
  442. package/cjs/stringSet-106da549.js.map +1 -0
  443. package/cjs/tokenize-2aa0f876.js +164 -0
  444. package/cjs/tokenize-2aa0f876.js.map +1 -0
  445. package/cjs/topics-b384e6b3.js +18 -0
  446. package/cjs/topics-b384e6b3.js.map +1 -0
  447. package/cjs/types-e0b77c8c.js +17 -0
  448. package/cjs/types-e0b77c8c.js.map +1 -0
  449. package/cjs/ui/Accordion.js +21 -24
  450. package/cjs/ui/Accordion.js.map +1 -1
  451. package/cjs/ui/AccordionGroup.js +10 -13
  452. package/cjs/ui/AccordionGroup.js.map +1 -1
  453. package/cjs/ui/AdminMessage.js +10 -13
  454. package/cjs/ui/AdminMessage.js.map +1 -1
  455. package/cjs/ui/Avatar.js +57 -79
  456. package/cjs/ui/Avatar.js.map +1 -1
  457. package/cjs/ui/Badge.js +16 -15
  458. package/cjs/ui/Badge.js.map +1 -1
  459. package/cjs/ui/BottomSheet.js +14 -12
  460. package/cjs/ui/BottomSheet.js.map +1 -1
  461. package/cjs/ui/Button.js +20 -35
  462. package/cjs/ui/Button.js.map +1 -1
  463. package/cjs/ui/ChannelAvatar.js +38 -41
  464. package/cjs/ui/ChannelAvatar.js.map +1 -1
  465. package/cjs/ui/Checkbox.js +11 -13
  466. package/cjs/ui/Checkbox.js.map +1 -1
  467. package/cjs/ui/ConnectionStatus.js +7 -5
  468. package/cjs/ui/ConnectionStatus.js.map +1 -1
  469. package/cjs/ui/ContextMenu.js +175 -199
  470. package/cjs/ui/ContextMenu.js.map +1 -1
  471. package/cjs/ui/DateSeparator.js +12 -14
  472. package/cjs/ui/DateSeparator.js.map +1 -1
  473. package/cjs/ui/EmojiReactions.js +299 -107
  474. package/cjs/ui/EmojiReactions.js.map +1 -1
  475. package/cjs/ui/FileMessageItemBody.js +22 -23
  476. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  477. package/cjs/ui/FileViewer.js +36 -36
  478. package/cjs/ui/FileViewer.js.map +1 -1
  479. package/cjs/ui/Icon.js +447 -623
  480. package/cjs/ui/Icon.js.map +1 -1
  481. package/cjs/ui/IconButton.js +20 -31
  482. package/cjs/ui/IconButton.js.map +1 -1
  483. package/cjs/ui/ImageRenderer.js +34 -43
  484. package/cjs/ui/ImageRenderer.js.map +1 -1
  485. package/cjs/ui/Input.js +16 -16
  486. package/cjs/ui/Input.js.map +1 -1
  487. package/cjs/ui/Label.js +2 -2
  488. package/cjs/ui/LinkLabel.js +4 -3
  489. package/cjs/ui/LinkLabel.js.map +1 -1
  490. package/cjs/ui/Loader.js +10 -12
  491. package/cjs/ui/Loader.js.map +1 -1
  492. package/cjs/ui/MentionLabel.js +58 -65
  493. package/cjs/ui/MentionLabel.js.map +1 -1
  494. package/cjs/ui/MentionUserLabel.js +12 -10
  495. package/cjs/ui/MentionUserLabel.js.map +1 -1
  496. package/cjs/ui/MessageContent.js +212 -548
  497. package/cjs/ui/MessageContent.js.map +1 -1
  498. package/cjs/ui/MessageInput.js +392 -119
  499. package/cjs/ui/MessageInput.js.map +1 -1
  500. package/cjs/ui/MessageItemMenu.js +83 -83
  501. package/cjs/ui/MessageItemMenu.js.map +1 -1
  502. package/cjs/ui/MessageItemReactionMenu.js +58 -62
  503. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  504. package/cjs/ui/MessageSearchFileItem.js +56 -51
  505. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  506. package/cjs/ui/MessageSearchItem.js +42 -41
  507. package/cjs/ui/MessageSearchItem.js.map +1 -1
  508. package/cjs/ui/MessageStatus.js +10 -11
  509. package/cjs/ui/MessageStatus.js.map +1 -1
  510. package/cjs/ui/Modal.js +52 -46
  511. package/cjs/ui/Modal.js.map +1 -1
  512. package/cjs/ui/MutedAvatarOverlay.js +10 -10
  513. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  514. package/cjs/ui/OGMessageItemBody.js +67 -63
  515. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  516. package/cjs/ui/OpenChannelAdminMessage.js +8 -7
  517. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  518. package/cjs/ui/OpenChannelAvatar.js +18 -17
  519. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  520. package/cjs/ui/OpenchannelConversationHeader.js +17 -13
  521. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  522. package/cjs/ui/OpenchannelFileMessage.js +140 -151
  523. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  524. package/cjs/ui/OpenchannelOGMessage.js +204 -233
  525. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  526. package/cjs/ui/OpenchannelThumbnailMessage.js +215 -222
  527. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  528. package/cjs/ui/OpenchannelUserMessage.js +168 -178
  529. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  530. package/cjs/ui/PlaceHolder.js +5 -6
  531. package/cjs/ui/PlaceHolder.js.map +1 -1
  532. package/cjs/ui/PlaybackTime.js +35 -0
  533. package/cjs/ui/PlaybackTime.js.map +1 -0
  534. package/cjs/ui/ProgressBar.js +40 -0
  535. package/cjs/ui/ProgressBar.js.map +1 -0
  536. package/cjs/ui/QuoteMessage.js +50 -44
  537. package/cjs/ui/QuoteMessage.js.map +1 -1
  538. package/cjs/ui/QuoteMessageInput.js +31 -29
  539. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  540. package/cjs/ui/ReactionBadge.js +13 -21
  541. package/cjs/ui/ReactionBadge.js.map +1 -1
  542. package/cjs/ui/ReactionButton.js +30 -27
  543. package/cjs/ui/ReactionButton.js.map +1 -1
  544. package/cjs/ui/SortByRow.js +14 -18
  545. package/cjs/ui/SortByRow.js.map +1 -1
  546. package/cjs/ui/TextButton.js +13 -21
  547. package/cjs/ui/TextButton.js.map +1 -1
  548. package/cjs/ui/TextMessageItemBody.js +41 -48
  549. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  550. package/cjs/ui/ThreadReplies.js +25 -22
  551. package/cjs/ui/ThreadReplies.js.map +1 -1
  552. package/cjs/ui/ThumbnailMessageItemBody.js +36 -45
  553. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  554. package/cjs/ui/Toggle.js +202 -0
  555. package/cjs/ui/Toggle.js.map +1 -0
  556. package/cjs/ui/Tooltip.js +8 -9
  557. package/cjs/ui/Tooltip.js.map +1 -1
  558. package/cjs/ui/TooltipWrapper.js +17 -20
  559. package/cjs/ui/TooltipWrapper.js.map +1 -1
  560. package/cjs/ui/UnknownMessageItemBody.js +21 -22
  561. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  562. package/cjs/ui/UserListItem.js +76 -76
  563. package/cjs/ui/UserListItem.js.map +1 -1
  564. package/cjs/ui/UserProfile.js +31 -29
  565. package/cjs/ui/UserProfile.js.map +1 -1
  566. package/cjs/ui/VoiceMessageItemBody.js +119 -0
  567. package/cjs/ui/VoiceMessageItemBody.js.map +1 -0
  568. package/cjs/ui/VoiceMessgeInput.js +22 -0
  569. package/cjs/ui/VoiceMessgeInput.js.map +1 -0
  570. package/cjs/ui/Word.js +31 -39
  571. package/cjs/ui/Word.js.map +1 -1
  572. package/cjs/useDirtyGetMentions-b8ca5675.js +77 -0
  573. package/cjs/useDirtyGetMentions-b8ca5675.js.map +1 -0
  574. package/cjs/useLongPress-8037894e.js +87 -0
  575. package/cjs/useLongPress-8037894e.js.map +1 -0
  576. package/cjs/useSendbirdStateContext.js +2 -3
  577. package/cjs/useSendbirdStateContext.js.map +1 -1
  578. package/cjs/utils/message/getOutgoingMessageState.js +16 -21
  579. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  580. package/cjs/utils/message/isVoiceMessage.js +12 -0
  581. package/cjs/utils/message/isVoiceMessage.js.map +1 -0
  582. package/cjs/{utils-ba58eacf.js → utils-01ff5332.js} +3 -7
  583. package/cjs/{utils-ba58eacf.js.map → utils-01ff5332.js.map} +1 -1
  584. package/cjs/utils-2edcddc8.js +35 -0
  585. package/cjs/utils-2edcddc8.js.map +1 -0
  586. package/cjs/utils-5ac3db44.js +31 -0
  587. package/cjs/utils-5ac3db44.js.map +1 -0
  588. package/cjs/{utils-708aa730.js → utils-ad7b5b82.js} +1 -1
  589. package/cjs/{utils-708aa730.js.map → utils-ad7b5b82.js.map} +1 -1
  590. package/cjs/uuid-12b01f73.js +15 -0
  591. package/cjs/{uuid-a9006ea2.js.map → uuid-12b01f73.js.map} +1 -1
  592. package/cjs/withSendbird.js +5 -6
  593. package/cjs/withSendbird.js.map +1 -1
  594. package/{color-c39702d1.js → color-347926b6.js} +5 -14
  595. package/{color-c39702d1.js.map → color-347926b6.js.map} +1 -1
  596. package/{compareIds-063e5503.js → compareIds-3a43c11b.js} +5 -6
  597. package/compareIds-3a43c11b.js.map +1 -0
  598. package/const-18dba7a4.js +13 -0
  599. package/const-18dba7a4.js.map +1 -0
  600. package/{const-1510a671.js → const-c608f749.js} +4 -4
  601. package/const-c608f749.js.map +1 -0
  602. package/consts-6bca01c7.js +4 -0
  603. package/consts-6bca01c7.js.map +1 -0
  604. package/consts-7a169a0f.js +4 -0
  605. package/consts-7a169a0f.js.map +1 -0
  606. package/consts-c1baf70a.js +27 -0
  607. package/consts-c1baf70a.js.map +1 -0
  608. package/consts-fb4d475a.js +4 -0
  609. package/consts-fb4d475a.js.map +1 -0
  610. package/context-786ef1a2.js +13 -0
  611. package/{context-d5dc28c9.js.map → context-786ef1a2.js.map} +1 -1
  612. package/dist/index.css +1682 -1229
  613. package/dist/index.css.map +1 -1
  614. package/handlers/OpenChannelHandler.js.map +1 -1
  615. package/handlers/SessionHandler.js.map +1 -1
  616. package/{index-7c1f570b.js → index-06b854f7.js} +55 -63
  617. package/index-06b854f7.js.map +1 -0
  618. package/index-2673effb.js +360 -0
  619. package/index-2673effb.js.map +1 -0
  620. package/{index-5e776774.js → index-319984d0.js} +1 -1
  621. package/{index-5e776774.js.map → index-319984d0.js.map} +1 -1
  622. package/{index-eadca08d.js → index-4455855e.js} +2 -2
  623. package/{index-eadca08d.js.map → index-4455855e.js.map} +1 -1
  624. package/index-6663ce18.js +450 -0
  625. package/index-6663ce18.js.map +1 -0
  626. package/{index-b19486f5.js → index-6c252d25.js} +2 -2
  627. package/{index-b19486f5.js.map → index-6c252d25.js.map} +1 -1
  628. package/index-71a20863.js +320 -0
  629. package/index-71a20863.js.map +1 -0
  630. package/index-7d71b26c.js +154 -0
  631. package/index-7d71b26c.js.map +1 -0
  632. package/{index-d81c515b.js → index-9a4e0846.js} +1 -1
  633. package/index-9a4e0846.js.map +1 -0
  634. package/{index-fd15e3b0.js → index-9cd77b08.js} +29 -37
  635. package/index-9cd77b08.js.map +1 -0
  636. package/index-c149ea48.js +187 -0
  637. package/index-c149ea48.js.map +1 -0
  638. package/index-cf3939c6.js +76 -0
  639. package/index-cf3939c6.js.map +1 -0
  640. package/index-cf859f03.js +540 -0
  641. package/index-cf859f03.js.map +1 -0
  642. package/{index-95ac9232.js → index-e33f7f55.js} +11 -25
  643. package/index-e33f7f55.js.map +1 -0
  644. package/{index-b8de16d6.js → index-eabd1e7e.js} +39 -48
  645. package/index-eabd1e7e.js.map +1 -0
  646. package/index-ebb62af1.js +51 -0
  647. package/index-ebb62af1.js.map +1 -0
  648. package/{index-0fd24497.js → index-edf844f0.js} +57 -4
  649. package/index-edf844f0.js.map +1 -0
  650. package/index.d.ts +176 -124
  651. package/index.js +84 -63
  652. package/index.js.map +1 -1
  653. package/index.module-6b7ed635.js +4 -0
  654. package/index.module-6b7ed635.js.map +1 -0
  655. package/lame.all.js +2537 -0
  656. package/lame.all.js.map +1 -0
  657. package/package.json +62 -41
  658. package/resolvedReplyType-8776d777.js +29 -0
  659. package/resolvedReplyType-8776d777.js.map +1 -0
  660. package/sendbirdSelectors.js +307 -417
  661. package/sendbirdSelectors.js.map +1 -1
  662. package/{stringSet-7ace5726.js → stringSet-e0ee1265.js} +112 -90
  663. package/stringSet-e0ee1265.js.map +1 -0
  664. package/tokenize-1b053c86.js +159 -0
  665. package/tokenize-1b053c86.js.map +1 -0
  666. package/topics-70f569e9.js +16 -0
  667. package/topics-70f569e9.js.map +1 -0
  668. package/types-77bbdda6.js +15 -0
  669. package/types-77bbdda6.js.map +1 -0
  670. package/ui/Accordion.js +21 -24
  671. package/ui/Accordion.js.map +1 -1
  672. package/ui/AccordionGroup.js +10 -13
  673. package/ui/AccordionGroup.js.map +1 -1
  674. package/ui/AdminMessage.js +10 -13
  675. package/ui/AdminMessage.js.map +1 -1
  676. package/ui/Avatar.js +57 -79
  677. package/ui/Avatar.js.map +1 -1
  678. package/ui/Badge.js +16 -15
  679. package/ui/Badge.js.map +1 -1
  680. package/ui/BottomSheet.js +14 -12
  681. package/ui/BottomSheet.js.map +1 -1
  682. package/ui/Button.js +20 -35
  683. package/ui/Button.js.map +1 -1
  684. package/ui/ChannelAvatar.js +38 -41
  685. package/ui/ChannelAvatar.js.map +1 -1
  686. package/ui/Checkbox.js +11 -13
  687. package/ui/Checkbox.js.map +1 -1
  688. package/ui/ConnectionStatus.js +7 -5
  689. package/ui/ConnectionStatus.js.map +1 -1
  690. package/ui/ContextMenu.js +176 -200
  691. package/ui/ContextMenu.js.map +1 -1
  692. package/ui/DateSeparator.js +12 -14
  693. package/ui/DateSeparator.js.map +1 -1
  694. package/ui/EmojiReactions.js +300 -108
  695. package/ui/EmojiReactions.js.map +1 -1
  696. package/ui/FileMessageItemBody.js +22 -23
  697. package/ui/FileMessageItemBody.js.map +1 -1
  698. package/ui/FileViewer.js +36 -36
  699. package/ui/FileViewer.js.map +1 -1
  700. package/ui/Icon.js +448 -622
  701. package/ui/Icon.js.map +1 -1
  702. package/ui/IconButton.js +20 -31
  703. package/ui/IconButton.js.map +1 -1
  704. package/ui/ImageRenderer.js +34 -43
  705. package/ui/ImageRenderer.js.map +1 -1
  706. package/ui/Input.js +16 -16
  707. package/ui/Input.js.map +1 -1
  708. package/ui/Label.js +2 -2
  709. package/ui/LinkLabel.js +4 -3
  710. package/ui/LinkLabel.js.map +1 -1
  711. package/ui/Loader.js +10 -12
  712. package/ui/Loader.js.map +1 -1
  713. package/ui/MentionLabel.js +58 -65
  714. package/ui/MentionLabel.js.map +1 -1
  715. package/ui/MentionUserLabel.js +12 -10
  716. package/ui/MentionUserLabel.js.map +1 -1
  717. package/ui/MessageContent.js +215 -551
  718. package/ui/MessageContent.js.map +1 -1
  719. package/ui/MessageInput.js +392 -120
  720. package/ui/MessageInput.js.map +1 -1
  721. package/ui/MessageItemMenu.js +83 -83
  722. package/ui/MessageItemMenu.js.map +1 -1
  723. package/ui/MessageItemReactionMenu.js +58 -62
  724. package/ui/MessageItemReactionMenu.js.map +1 -1
  725. package/ui/MessageSearchFileItem.js +55 -50
  726. package/ui/MessageSearchFileItem.js.map +1 -1
  727. package/ui/MessageSearchItem.js +41 -40
  728. package/ui/MessageSearchItem.js.map +1 -1
  729. package/ui/MessageStatus.js +10 -11
  730. package/ui/MessageStatus.js.map +1 -1
  731. package/ui/Modal.js +52 -46
  732. package/ui/Modal.js.map +1 -1
  733. package/ui/MutedAvatarOverlay.js +10 -10
  734. package/ui/MutedAvatarOverlay.js.map +1 -1
  735. package/ui/OGMessageItemBody.js +68 -64
  736. package/ui/OGMessageItemBody.js.map +1 -1
  737. package/ui/OpenChannelAdminMessage.js +8 -7
  738. package/ui/OpenChannelAdminMessage.js.map +1 -1
  739. package/ui/OpenChannelAvatar.js +18 -17
  740. package/ui/OpenChannelAvatar.js.map +1 -1
  741. package/ui/OpenchannelConversationHeader.js +17 -13
  742. package/ui/OpenchannelConversationHeader.js.map +1 -1
  743. package/ui/OpenchannelFileMessage.js +140 -151
  744. package/ui/OpenchannelFileMessage.js.map +1 -1
  745. package/ui/OpenchannelOGMessage.js +204 -233
  746. package/ui/OpenchannelOGMessage.js.map +1 -1
  747. package/ui/OpenchannelThumbnailMessage.js +215 -222
  748. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  749. package/ui/OpenchannelUserMessage.js +168 -178
  750. package/ui/OpenchannelUserMessage.js.map +1 -1
  751. package/ui/PlaceHolder.js +5 -6
  752. package/ui/PlaceHolder.js.map +1 -1
  753. package/ui/PlaybackTime.js +26 -0
  754. package/ui/PlaybackTime.js.map +1 -0
  755. package/ui/ProgressBar.js +30 -0
  756. package/ui/ProgressBar.js.map +1 -0
  757. package/ui/QuoteMessage.js +50 -44
  758. package/ui/QuoteMessage.js.map +1 -1
  759. package/ui/QuoteMessageInput.js +31 -29
  760. package/ui/QuoteMessageInput.js.map +1 -1
  761. package/ui/ReactionBadge.js +13 -21
  762. package/ui/ReactionBadge.js.map +1 -1
  763. package/ui/ReactionButton.js +30 -27
  764. package/ui/ReactionButton.js.map +1 -1
  765. package/ui/SortByRow.js +14 -18
  766. package/ui/SortByRow.js.map +1 -1
  767. package/ui/TextButton.js +13 -21
  768. package/ui/TextButton.js.map +1 -1
  769. package/ui/TextMessageItemBody.js +41 -48
  770. package/ui/TextMessageItemBody.js.map +1 -1
  771. package/ui/ThreadReplies.js +25 -22
  772. package/ui/ThreadReplies.js.map +1 -1
  773. package/ui/ThumbnailMessageItemBody.js +36 -45
  774. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  775. package/ui/Toggle.js +191 -0
  776. package/ui/Toggle.js.map +1 -0
  777. package/ui/Tooltip.js +8 -9
  778. package/ui/Tooltip.js.map +1 -1
  779. package/ui/TooltipWrapper.js +17 -20
  780. package/ui/TooltipWrapper.js.map +1 -1
  781. package/ui/UnknownMessageItemBody.js +21 -22
  782. package/ui/UnknownMessageItemBody.js.map +1 -1
  783. package/ui/UserListItem.js +76 -76
  784. package/ui/UserListItem.js.map +1 -1
  785. package/ui/UserProfile.js +31 -29
  786. package/ui/UserProfile.js.map +1 -1
  787. package/ui/VoiceMessageItemBody.js +110 -0
  788. package/ui/VoiceMessageItemBody.js.map +1 -0
  789. package/ui/VoiceMessgeInput.js +14 -0
  790. package/ui/VoiceMessgeInput.js.map +1 -0
  791. package/ui/Word.js +31 -39
  792. package/ui/Word.js.map +1 -1
  793. package/useDirtyGetMentions-f00f1f94.js +75 -0
  794. package/useDirtyGetMentions-f00f1f94.js.map +1 -0
  795. package/useLongPress-1ab49410.js +85 -0
  796. package/useLongPress-1ab49410.js.map +1 -0
  797. package/useSendbirdStateContext.js +2 -3
  798. package/useSendbirdStateContext.js.map +1 -1
  799. package/utils/message/getOutgoingMessageState.js +9 -15
  800. package/utils/message/getOutgoingMessageState.js.map +1 -1
  801. package/utils/message/isVoiceMessage.js +8 -0
  802. package/utils/message/isVoiceMessage.js.map +1 -0
  803. package/{utils-30c326f7.js → utils-56cb7de5.js} +1 -1
  804. package/{utils-30c326f7.js.map → utils-56cb7de5.js.map} +1 -1
  805. package/utils-77f7e8b2.js +29 -0
  806. package/utils-77f7e8b2.js.map +1 -0
  807. package/{utils-ded73fa5.js → utils-7f3d0d8c.js} +3 -7
  808. package/{utils-ded73fa5.js.map → utils-7f3d0d8c.js.map} +1 -1
  809. package/utils-af9b1c06.js +31 -0
  810. package/utils-af9b1c06.js.map +1 -0
  811. package/uuid-92d22300.js +13 -0
  812. package/{uuid-968941a0.js.map → uuid-92d22300.js.map} +1 -1
  813. package/withSendbird.js +5 -6
  814. package/withSendbird.js.map +1 -1
  815. package/ChannelListProvider-ade145a7.js.map +0 -1
  816. package/ChannelProvider-c9db10c0.js.map +0 -1
  817. package/CreateChannelProvider-be2dfe96.js +0 -55
  818. package/CreateChannelProvider-be2dfe96.js.map +0 -1
  819. package/LocalizationContext-60894e38.js +0 -22
  820. package/MediaQueryContext-bcf72e28.js +0 -90
  821. package/MediaQueryContext-bcf72e28.js.map +0 -1
  822. package/MemberList-ce1fd162.js +0 -435
  823. package/MemberList-ce1fd162.js.map +0 -1
  824. package/NotificationChannel/components/NotificationChannelUI.js +0 -119
  825. package/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
  826. package/NotificationChannel/components/NotificationList.js +0 -111
  827. package/NotificationChannel/components/NotificationList.js.map +0 -1
  828. package/NotificationChannel/components/NotificationMessageWrap.js +0 -136
  829. package/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
  830. package/NotificationChannel/context.js +0 -12
  831. package/NotificationChannel.js +0 -58
  832. package/NotificationChannel.js.map +0 -1
  833. package/NotificationChannelProvider-2cb7ca21.js +0 -535
  834. package/NotificationChannelProvider-2cb7ca21.js.map +0 -1
  835. package/OpenChannelListProvider-0bdafda1.js +0 -434
  836. package/OpenChannelListProvider-0bdafda1.js.map +0 -1
  837. package/OpenChannelProvider-a72c6fb7.js +0 -2000
  838. package/OpenChannelProvider-a72c6fb7.js.map +0 -1
  839. package/RemoveMessageModal-b025d4a7.js +0 -31
  840. package/RemoveMessageModal-b025d4a7.js.map +0 -1
  841. package/ThreadProvider-de5a7889.js +0 -1644
  842. package/ThreadProvider-de5a7889.js.map +0 -1
  843. package/_rollupPluginBabelHelpers-ed44209e.js.map +0 -1
  844. package/actionTypes-aa58fd27.js +0 -6
  845. package/actionTypes-aa58fd27.js.map +0 -1
  846. package/cjs/ChannelListProvider-65473831.js.map +0 -1
  847. package/cjs/ChannelProvider-1e08a7a9.js.map +0 -1
  848. package/cjs/CreateChannelProvider-cbf490c6.js +0 -62
  849. package/cjs/CreateChannelProvider-cbf490c6.js.map +0 -1
  850. package/cjs/MediaQueryContext-e455934a.js +0 -97
  851. package/cjs/MediaQueryContext-e455934a.js.map +0 -1
  852. package/cjs/MemberList-aee91fce.js +0 -441
  853. package/cjs/MemberList-aee91fce.js.map +0 -1
  854. package/cjs/NotificationChannel/components/NotificationChannelUI.js +0 -125
  855. package/cjs/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
  856. package/cjs/NotificationChannel/components/NotificationList.js +0 -117
  857. package/cjs/NotificationChannel/components/NotificationList.js.map +0 -1
  858. package/cjs/NotificationChannel/components/NotificationMessageWrap.js +0 -142
  859. package/cjs/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
  860. package/cjs/NotificationChannel/context.js +0 -21
  861. package/cjs/NotificationChannel.js +0 -64
  862. package/cjs/NotificationChannel.js.map +0 -1
  863. package/cjs/NotificationChannelProvider-4cc9575f.js +0 -543
  864. package/cjs/NotificationChannelProvider-4cc9575f.js.map +0 -1
  865. package/cjs/OpenChannelListProvider-4aab4391.js +0 -443
  866. package/cjs/OpenChannelListProvider-4aab4391.js.map +0 -1
  867. package/cjs/OpenChannelProvider-a763b71c.js +0 -2009
  868. package/cjs/OpenChannelProvider-a763b71c.js.map +0 -1
  869. package/cjs/RemoveMessageModal-0da4f94b.js.map +0 -1
  870. package/cjs/ThreadProvider-51be09a5.js +0 -1653
  871. package/cjs/ThreadProvider-51be09a5.js.map +0 -1
  872. package/cjs/_rollupPluginBabelHelpers-bd6baf0a.js.map +0 -1
  873. package/cjs/actionTypes-561bdde9.js +0 -10
  874. package/cjs/actionTypes-561bdde9.js.map +0 -1
  875. package/cjs/color-fdbe394d.js.map +0 -1
  876. package/cjs/compareIds-d0c02eca.js.map +0 -1
  877. package/cjs/const-8785e4ad.js.map +0 -1
  878. package/cjs/const-beb25e10.js +0 -20
  879. package/cjs/const-beb25e10.js.map +0 -1
  880. package/cjs/index-08d232f8.js.map +0 -1
  881. package/cjs/index-8a4b2f10.js +0 -59
  882. package/cjs/index-8a4b2f10.js.map +0 -1
  883. package/cjs/index-8c350889.js +0 -194
  884. package/cjs/index-8c350889.js.map +0 -1
  885. package/cjs/index-b3371ef2.js +0 -701
  886. package/cjs/index-b3371ef2.js.map +0 -1
  887. package/cjs/index-bdd889a2.js.map +0 -1
  888. package/cjs/index-c13771a7.js.map +0 -1
  889. package/cjs/index-e191d245.js.map +0 -1
  890. package/cjs/index-e8544e24.js.map +0 -1
  891. package/cjs/index-ebb542c3.js.map +0 -1
  892. package/cjs/index-f032bd2c.js +0 -360
  893. package/cjs/index-f032bd2c.js.map +0 -1
  894. package/cjs/stringSet-60660a99.js.map +0 -1
  895. package/cjs/topics-f3f74edc.js +0 -22
  896. package/cjs/topics-f3f74edc.js.map +0 -1
  897. package/cjs/tslib.es6-5a7eb30d.js +0 -110
  898. package/cjs/tslib.es6-5a7eb30d.js.map +0 -1
  899. package/cjs/useLongPress-e7140087.js +0 -118
  900. package/cjs/useLongPress-e7140087.js.map +0 -1
  901. package/cjs/utils-693dd952.js +0 -38
  902. package/cjs/utils-693dd952.js.map +0 -1
  903. package/cjs/utils-b6001dd4.js +0 -32
  904. package/cjs/utils-b6001dd4.js.map +0 -1
  905. package/cjs/uuid-a9006ea2.js +0 -19
  906. package/compareIds-063e5503.js.map +0 -1
  907. package/const-14919575.js +0 -14
  908. package/const-14919575.js.map +0 -1
  909. package/const-1510a671.js.map +0 -1
  910. package/context-d5dc28c9.js +0 -12
  911. package/index-0fd24497.js.map +0 -1
  912. package/index-2561104e.js +0 -179
  913. package/index-2561104e.js.map +0 -1
  914. package/index-54843058.js +0 -57
  915. package/index-54843058.js.map +0 -1
  916. package/index-58e5d82d.js +0 -662
  917. package/index-58e5d82d.js.map +0 -1
  918. package/index-7c1f570b.js.map +0 -1
  919. package/index-95ac9232.js.map +0 -1
  920. package/index-b8de16d6.js.map +0 -1
  921. package/index-d07faed8.js +0 -353
  922. package/index-d07faed8.js.map +0 -1
  923. package/index-d81c515b.js.map +0 -1
  924. package/index-fd15e3b0.js.map +0 -1
  925. package/stringSet-7ace5726.js.map +0 -1
  926. package/topics-d390daf6.js +0 -13
  927. package/topics-d390daf6.js.map +0 -1
  928. package/tslib.es6-d9fa3716.js +0 -104
  929. package/tslib.es6-d9fa3716.js.map +0 -1
  930. package/useLongPress-7d9a5f67.js +0 -116
  931. package/useLongPress-7d9a5f67.js.map +0 -1
  932. package/utils-40ce4da5.js +0 -34
  933. package/utils-40ce4da5.js.map +0 -1
  934. package/utils-d485030c.js +0 -30
  935. package/utils-d485030c.js.map +0 -1
  936. package/uuid-968941a0.js +0 -17
@@ -0,0 +1,8 @@
1
+ import { d as isVoiceMessage$1 } from '../../index-cf859f03.js';
2
+ import '../../_rollupPluginBabelHelpers-fb0e05a4.js';
3
+ import './getOutgoingMessageState.js';
4
+
5
+ const isVoiceMessage = isVoiceMessage$1;
6
+
7
+ export { isVoiceMessage };
8
+ //# sourceMappingURL=isVoiceMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isVoiceMessage.js","sources":["../../../src/utils/isVoiceMessage.ts"],"sourcesContent":["import { isVoiceMessage as _isVoiceMessage } from '.';\n\nexport const isVoiceMessage = _isVoiceMessage;\n"],"names":["isVoiceMessage","_isVoiceMessage"],"mappings":";;;;AAEO,MAAMA,cAAc,GAAGC;;;;"}
@@ -1,4 +1,4 @@
1
1
  const noop = () => {};
2
2
 
3
3
  export { noop as n };
4
- //# sourceMappingURL=utils-30c326f7.js.map
4
+ //# sourceMappingURL=utils-56cb7de5.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils-30c326f7.js","sources":["../src/utils/utils.js"],"sourcesContent":["export const noop = () => {};\n\nexport const getSenderName = (message) => (\n message.sender && (\n message.sender.friendName\n || message.sender.nickname\n || message.sender.userId\n )\n);\n\nexport const getSenderProfileUrl = (message) => message.sender && message.sender.profileUrl;\n\nexport default {\n getSenderName,\n getSenderProfileUrl,\n};\n"],"names":["noop"],"mappings":"AAAaA,MAAAA,IAAI,GAAG,MAAM;;;;"}
1
+ {"version":3,"file":"utils-56cb7de5.js","sources":["../src/utils/utils.js"],"sourcesContent":["export const noop = () => {};\n\nexport const getSenderName = (message) => (\n message.sender && (\n message.sender.friendName\n || message.sender.nickname\n || message.sender.userId\n )\n);\n\nexport const getSenderProfileUrl = (message) => message.sender && message.sender.profileUrl;\n\nexport default {\n getSenderName,\n getSenderProfileUrl,\n};\n"],"names":["noop"],"mappings":"MAAaA,IAAI,GAAGA,MAAM;;;;"}
@@ -0,0 +1,29 @@
1
+ import { c as LabelStringSet } from './index-e33f7f55.js';
2
+
3
+ const getChannelTitle = (channel, currentUserId, stringSet) => {
4
+ var _channel$members;
5
+ const LABEL_STRING_SET = stringSet || LabelStringSet;
6
+ if (!(channel !== null && channel !== void 0 && channel.name) && !(channel !== null && channel !== void 0 && channel.members)) {
7
+ return LABEL_STRING_SET.NO_TITLE;
8
+ }
9
+ if (channel !== null && channel !== void 0 && channel.name && channel.name !== 'Group Channel') {
10
+ return channel.name;
11
+ }
12
+ if ((channel === null || channel === void 0 ? void 0 : (_channel$members = channel.members) === null || _channel$members === void 0 ? void 0 : _channel$members.length) === 1) {
13
+ return LABEL_STRING_SET.NO_MEMBERS;
14
+ }
15
+ return channel === null || channel === void 0 ? void 0 : channel.members.filter(_ref => {
16
+ let {
17
+ userId
18
+ } = _ref;
19
+ return userId !== currentUserId;
20
+ }).map(_ref2 => {
21
+ let {
22
+ nickname
23
+ } = _ref2;
24
+ return nickname || LABEL_STRING_SET.NO_NAME;
25
+ }).join(', ');
26
+ };
27
+
28
+ export { getChannelTitle as g };
29
+ //# sourceMappingURL=utils-77f7e8b2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-77f7e8b2.js","sources":["../src/modules/Channel/components/ChannelHeader/utils.ts"],"sourcesContent":["import type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (\n channel: GroupChannel,\n currentUserId: string,\n stringSet: { [label: string]: string },\n): string => {\n const LABEL_STRING_SET: { [label: string]: string } = stringSet || LabelStringSet;\n if (!channel?.name && !channel?.members) {\n return LABEL_STRING_SET.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n\n if (channel?.members?.length === 1) {\n return LABEL_STRING_SET.NO_MEMBERS;\n }\n\n return channel?.members\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || LABEL_STRING_SET.NO_NAME))\n .join(', ');\n};\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","_channel$members","LABEL_STRING_SET","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","_ref","userId","map","_ref2","nickname","NO_NAME","join"],"mappings":";;AAGO,MAAMA,eAAe,GAAGA,CAC7BC,OAAqB,EACrBC,aAAqB,EACrBC,SAAsC,KAC3B;AAAA,EAAA,IAAAC,gBAAA,CAAA;AACX,EAAA,MAAMC,gBAA6C,GAAGF,SAAS,IAAIG,cAAc,CAAA;AACjF,EAAA,IAAI,EAACL,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,IAAPA,OAAO,CAAEM,IAAI,CAAI,IAAA,EAACN,OAAO,KAAPA,IAAAA,IAAAA,OAAO,eAAPA,OAAO,CAAEO,OAAO,CAAE,EAAA;IACvC,OAAOH,gBAAgB,CAACI,QAAQ,CAAA;AAClC,GAAA;AACA,EAAA,IAAIR,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,IAAPA,OAAO,CAAEM,IAAI,IAAIN,OAAO,CAACM,IAAI,KAAK,eAAe,EAAE;IACrD,OAAON,OAAO,CAACM,IAAI,CAAA;AACrB,GAAA;AAEA,EAAA,IAAI,CAAAN,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAAG,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,gBAAA,GAAPH,OAAO,CAAEO,OAAO,MAAA,IAAA,IAAAJ,gBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAA,CAAkBM,MAAM,MAAK,CAAC,EAAE;IAClC,OAAOL,gBAAgB,CAACM,UAAU,CAAA;AACpC,GAAA;EAEA,OAAOV,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEO,OAAO,CACpBI,MAAM,CAACC,IAAA,IAAA;IAAA,IAAC;AAAEC,MAAAA,MAAAA;AAAO,KAAC,GAAAD,IAAA,CAAA;IAAA,OAAKC,MAAM,KAAKZ,aAAa,CAAA;GAAC,CAAA,CAChDa,GAAG,CAACC,KAAA,IAAA;IAAA,IAAC;AAAEC,MAAAA,QAAAA;AAAS,KAAC,GAAAD,KAAA,CAAA;AAAA,IAAA,OAAMC,QAAQ,IAAIZ,gBAAgB,CAACa,OAAO,CAAA;AAAA,GAAC,CAAC,CAC7DC,IAAI,CAAC,IAAI,CAAC,CAAA;AACf;;;;"}
@@ -1,19 +1,16 @@
1
- var copyToClipboard = function (text) {
1
+ const copyToClipboard = text => {
2
2
  // @ts-ignore: Unreachable code error
3
3
  if (window.clipboardData && window.clipboardData.setData) {
4
4
  // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.
5
5
  // @ts-ignore: Unreachable code error
6
6
  return window.clipboardData.setData('Text', text);
7
7
  }
8
-
9
8
  if (document.queryCommandSupported && document.queryCommandSupported('copy')) {
10
- var textarea = document.createElement('textarea');
9
+ const textarea = document.createElement('textarea');
11
10
  textarea.textContent = text;
12
11
  textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.
13
-
14
12
  document.body.appendChild(textarea);
15
13
  textarea.select();
16
-
17
14
  try {
18
15
  return document.execCommand('copy'); // Security exception may be thrown by some browsers.
19
16
  } catch (ex) {
@@ -22,9 +19,8 @@ var copyToClipboard = function (text) {
22
19
  document.body.removeChild(textarea);
23
20
  }
24
21
  }
25
-
26
22
  return false;
27
23
  };
28
24
 
29
25
  export { copyToClipboard as c };
30
- //# sourceMappingURL=utils-ded73fa5.js.map
26
+ //# sourceMappingURL=utils-7f3d0d8c.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils-ded73fa5.js","sources":["../src/ui/OpenchannelUserMessage/utils.ts"],"sourcesContent":["export const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport default { copyToClipboard };\n"],"names":["copyToClipboard","text","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild"],"mappings":"AAAaA,IAAAA,eAAe,GAAG,UAACC,IAAD,EAAa;AAC1C;EACA,IAAIC,MAAM,CAACC,aAAP,IAAwBD,MAAM,CAACC,aAAP,CAAqBC,OAAjD,EAA0D;AACxD;AACA;IACA,OAAOF,MAAM,CAACC,aAAP,CAAqBC,OAArB,CAA6B,MAA7B,EAAqCH,IAArC,CAAP,CAAA;AACD,GAAA;;EACD,IAAII,QAAQ,CAACC,qBAAT,IAAkCD,QAAQ,CAACC,qBAAT,CAA+B,MAA/B,CAAtC,EAA8E;AAC5E,IAAA,IAAMC,QAAQ,GAAGF,QAAQ,CAACG,aAAT,CAAuB,UAAvB,CAAjB,CAAA;IACAD,QAAQ,CAACE,WAAT,GAAuBR,IAAvB,CAAA;AACAM,IAAAA,QAAQ,CAACG,KAAT,CAAeC,QAAf,GAA0B,OAA1B,CAH4E;;AAI5EN,IAAAA,QAAQ,CAACO,IAAT,CAAcC,WAAd,CAA0BN,QAA1B,CAAA,CAAA;AACAA,IAAAA,QAAQ,CAACO,MAAT,EAAA,CAAA;;IACA,IAAI;AACF,MAAA,OAAOT,QAAQ,CAACU,WAAT,CAAqB,MAArB,CAAP,CADE;KAAJ,CAEE,OAAOC,EAAP,EAAW;AACX,MAAA,OAAO,KAAP,CAAA;AACD,KAJD,SAIU;AACRX,MAAAA,QAAQ,CAACO,IAAT,CAAcK,WAAd,CAA0BV,QAA1B,CAAA,CAAA;AACD,KAAA;AACF,GAAA;;AACD,EAAA,OAAO,KAAP,CAAA;AACD;;;;"}
1
+ {"version":3,"file":"utils-7f3d0d8c.js","sources":["../src/ui/OpenchannelUserMessage/utils.ts"],"sourcesContent":["export const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport default { copyToClipboard };\n"],"names":["copyToClipboard","text","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild"],"mappings":"AAAaA,MAAAA,eAAe,GAAIC,IAAY,IAAc;AACxD;EACA,IAAIC,MAAM,CAACC,aAAa,IAAID,MAAM,CAACC,aAAa,CAACC,OAAO,EAAE;AACxD;AACA;IACA,OAAOF,MAAM,CAACC,aAAa,CAACC,OAAO,CAAC,MAAM,EAAEH,IAAI,CAAC,CAAA;AACnD,GAAA;EACA,IAAII,QAAQ,CAACC,qBAAqB,IAAID,QAAQ,CAACC,qBAAqB,CAAC,MAAM,CAAC,EAAE;AAC5E,IAAA,MAAMC,QAAQ,GAAGF,QAAQ,CAACG,aAAa,CAAC,UAAU,CAAC,CAAA;IACnDD,QAAQ,CAACE,WAAW,GAAGR,IAAI,CAAA;AAC3BM,IAAAA,QAAQ,CAACG,KAAK,CAACC,QAAQ,GAAG,OAAO,CAAC;AAClCN,IAAAA,QAAQ,CAACO,IAAI,CAACC,WAAW,CAACN,QAAQ,CAAC,CAAA;IACnCA,QAAQ,CAACO,MAAM,EAAE,CAAA;IACjB,IAAI;AACF,MAAA,OAAOT,QAAQ,CAACU,WAAW,CAAC,MAAM,CAAC,CAAC;KACrC,CAAC,OAAOC,EAAE,EAAE;AACX,MAAA,OAAO,KAAK,CAAA;AACd,KAAC,SAAS;AACRX,MAAAA,QAAQ,CAACO,IAAI,CAACK,WAAW,CAACV,QAAQ,CAAC,CAAA;AACrC,KAAA;AACF,GAAA;AACA,EAAA,OAAO,KAAK,CAAA;AACd;;;;"}
@@ -0,0 +1,31 @@
1
+ const DEFAULT_URL_PREFIX = 'https://static.sendbird.com/sample/cover/cover_';
2
+ const getOpenChannelAvatar = channel => {
3
+ if (channel !== null && channel !== void 0 && channel.coverUrl) {
4
+ return channel.coverUrl;
5
+ }
6
+ };
7
+ const getChannelAvatarSource = (channel, currentUserId) => {
8
+ if (channel !== null && channel !== void 0 && channel.coverUrl) {
9
+ if (!new RegExp(`^${DEFAULT_URL_PREFIX}`).test(channel.coverUrl)) {
10
+ return channel.coverUrl;
11
+ }
12
+ }
13
+ return ((channel === null || channel === void 0 ? void 0 : channel.members) || []).filter(member => member.userId !== currentUserId).map(_ref => {
14
+ let {
15
+ profileUrl
16
+ } = _ref;
17
+ return profileUrl;
18
+ });
19
+ };
20
+ const generateDefaultAvatar = channel => {
21
+ if (channel !== null && channel !== void 0 && channel.coverUrl) {
22
+ if (new RegExp(`^${DEFAULT_URL_PREFIX}`).test(channel.coverUrl)) {
23
+ return true;
24
+ }
25
+ return false;
26
+ }
27
+ return true;
28
+ };
29
+
30
+ export { getChannelAvatarSource as a, getOpenChannelAvatar as b, generateDefaultAvatar as g };
31
+ //# sourceMappingURL=utils-af9b1c06.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-af9b1c06.js","sources":["../src/ui/ChannelAvatar/utils.ts"],"sourcesContent":["import type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport type { OpenChannel } from '@sendbird/chat/openChannel';\n\nexport const DEFAULT_URL_PREFIX = 'https://static.sendbird.com/sample/cover/cover_';\n\nexport const getOpenChannelAvatar = (channel: OpenChannel): string => {\n if (channel?.coverUrl) {\n return channel.coverUrl;\n }\n};\n\nexport const getChannelAvatarSource = (channel: GroupChannel, currentUserId: string): string | Array<string> => {\n if (channel?.coverUrl) {\n if (!(new RegExp(`^${DEFAULT_URL_PREFIX}`).test(channel.coverUrl))) {\n return channel.coverUrl;\n }\n }\n return (channel?.members || [])\n .filter((member) => member.userId !== currentUserId)\n .map(({ profileUrl }) => profileUrl);\n};\n\nexport const generateDefaultAvatar = (channel: GroupChannel): boolean => {\n if (channel?.coverUrl) {\n if (new RegExp(`^${DEFAULT_URL_PREFIX}`).test(channel.coverUrl)) {\n return true;\n }\n return false;\n }\n return true;\n};\n"],"names":["DEFAULT_URL_PREFIX","getOpenChannelAvatar","channel","coverUrl","getChannelAvatarSource","currentUserId","RegExp","test","members","filter","member","userId","map","_ref","profileUrl","generateDefaultAvatar"],"mappings":"AAGO,MAAMA,kBAAkB,GAAG,iDAAiD,CAAA;AAEtEC,MAAAA,oBAAoB,GAAIC,OAAoB,IAAa;AACpE,EAAA,IAAIA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,eAAPA,OAAO,CAAEC,QAAQ,EAAE;IACrB,OAAOD,OAAO,CAACC,QAAQ,CAAA;AACzB,GAAA;AACF,EAAC;MAEYC,sBAAsB,GAAGA,CAACF,OAAqB,EAAEG,aAAqB,KAA6B;AAC9G,EAAA,IAAIH,OAAO,KAAPA,IAAAA,IAAAA,OAAO,eAAPA,OAAO,CAAEC,QAAQ,EAAE;AACrB,IAAA,IAAI,CAAE,IAAIG,MAAM,CAAE,IAAGN,kBAAmB,CAAA,CAAC,CAAC,CAACO,IAAI,CAACL,OAAO,CAACC,QAAQ,CAAE,EAAE;MAClE,OAAOD,OAAO,CAACC,QAAQ,CAAA;AACzB,KAAA;AACF,GAAA;EACA,OAAO,CAAC,CAAAD,OAAO,KAAPA,IAAAA,IAAAA,OAAO,uBAAPA,OAAO,CAAEM,OAAO,KAAI,EAAE,EAC3BC,MAAM,CAAEC,MAAM,IAAKA,MAAM,CAACC,MAAM,KAAKN,aAAa,CAAC,CACnDO,GAAG,CAACC,IAAA,IAAA;IAAA,IAAC;AAAEC,MAAAA,UAAAA;AAAW,KAAC,GAAAD,IAAA,CAAA;AAAA,IAAA,OAAKC,UAAU,CAAA;GAAC,CAAA,CAAA;AACxC,EAAC;AAEYC,MAAAA,qBAAqB,GAAIb,OAAqB,IAAc;AACvE,EAAA,IAAIA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,eAAPA,OAAO,CAAEC,QAAQ,EAAE;AACrB,IAAA,IAAI,IAAIG,MAAM,CAAE,CAAA,CAAA,EAAGN,kBAAmB,CAAC,CAAA,CAAC,CAACO,IAAI,CAACL,OAAO,CAACC,QAAQ,CAAC,EAAE;AAC/D,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AACA,IAAA,OAAO,KAAK,CAAA;AACd,GAAA;AACA,EAAA,OAAO,IAAI,CAAA;AACb;;;;"}
@@ -0,0 +1,13 @@
1
+ /* eslint-disable no-bitwise */
2
+ /* eslint-disable eqeqeq */
3
+ /* eslint-disable no-mixed-operators */
4
+ // https://stackoverflow.com/a/2117523
5
+ // used mainly for dom key generation
6
+ const uuidv4 = () => 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {
7
+ const r = Math.random() * 16 | 0;
8
+ const v = c === 'x' ? r : r & 0x3 | 0x8;
9
+ return v.toString(16);
10
+ });
11
+
12
+ export { uuidv4 as u };
13
+ //# sourceMappingURL=uuid-92d22300.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"uuid-968941a0.js","sources":["../src/utils/uuid.ts"],"sourcesContent":["/* eslint-disable no-bitwise */\n/* eslint-disable eqeqeq */\n/* eslint-disable no-mixed-operators */\n// https://stackoverflow.com/a/2117523\n// used mainly for dom key generation\nexport const uuidv4 = (): string => 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\n const r = Math.random() * 16 | 0;\n const v = c === 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n});\n\nexport default uuidv4;\n"],"names":["uuidv4","replace","c","r","Math","random","v","toString"],"mappings":"AAAA;;AACA;;AACA;AACA;AACA;AACO,IAAMA,MAAM,GAAG,YAAc;AAAA,EAAA,OAAA,uCAAuCC,OAAvC,CAA+C,OAA/C,EAAwD,UAACC,CAAD,EAAE;IAC5F,IAAMC,CAAC,GAAGC,IAAI,CAACC,MAAL,EAAgB,GAAA,EAAhB,GAAqB,CAA/B,CAAA;AACA,IAAA,IAAMC,CAAC,GAAGJ,CAAC,KAAK,GAAN,GAAYC,CAAZ,GAAiBA,CAAC,GAAG,GAAJ,GAAU,GAArC,CAAA;AACA,IAAA,OAAOG,CAAC,CAACC,QAAF,CAAW,EAAX,CAAP,CAAA;AACD,GAJmC,CAAA,CAAA;AAIlC;;;;"}
1
+ {"version":3,"file":"uuid-92d22300.js","sources":["../src/utils/uuid.ts"],"sourcesContent":["/* eslint-disable no-bitwise */\n/* eslint-disable eqeqeq */\n/* eslint-disable no-mixed-operators */\n// https://stackoverflow.com/a/2117523\n// used mainly for dom key generation\nexport const uuidv4 = (): string => 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\n const r = Math.random() * 16 | 0;\n const v = c === 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n});\n\nexport default uuidv4;\n"],"names":["uuidv4","replace","c","r","Math","random","v","toString"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACaA,MAAAA,MAAM,GAAGA,MAAc,sCAAsC,CAACC,OAAO,CAAC,OAAO,EAAGC,CAAC,IAAK;EACjG,MAAMC,CAAC,GAAGC,IAAI,CAACC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AAChC,EAAA,MAAMC,CAAC,GAAGJ,CAAC,KAAK,GAAG,GAAGC,CAAC,GAAIA,CAAC,GAAG,GAAG,GAAG,GAAI,CAAA;AACzC,EAAA,OAAOG,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,CAAA;AACvB,CAAC;;;;"}
package/withSendbird.js CHANGED
@@ -1,20 +1,19 @@
1
- import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-ed44209e.js';
1
+ import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-fb0e05a4.js';
2
2
  import React__default from 'react';
3
3
 
4
- const SendbirdSdkContext = /*#__PURE__*/React__default.createContext();
4
+ const SendbirdSdkContext = /*#__PURE__*/React__default.createContext({});
5
5
 
6
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
6
7
  const withSendbirdContext = (OriginalComponent, mapStoreToProps) => {
7
8
  const ContextAwareComponent = props => /*#__PURE__*/React__default.createElement(SendbirdSdkContext.Consumer, null, context => {
8
9
  if (mapStoreToProps && typeof mapStoreToProps !== 'function') {
9
10
  // eslint-disable-next-line no-console
10
11
  console.warn('Second parameter to withSendbirdContext must be a pure function');
11
12
  }
12
-
13
- const mergedProps = mapStoreToProps && typeof mapStoreToProps === 'function' ? _objectSpread2(_objectSpread2({}, mapStoreToProps(context)), props) : _objectSpread2(_objectSpread2({}, context), props); // eslint-disable-next-line react/jsx-props-no-spreading
14
-
13
+ const mergedProps = mapStoreToProps && typeof mapStoreToProps === 'function' ? _objectSpread2(_objectSpread2({}, mapStoreToProps(context)), props) : _objectSpread2(_objectSpread2({}, context), props);
14
+ // eslint-disable-next-line react/jsx-props-no-spreading
15
15
  return /*#__PURE__*/React__default.createElement(OriginalComponent, mergedProps);
16
16
  });
17
-
18
17
  const componentName = OriginalComponent.displayName || OriginalComponent.name || 'Component';
19
18
  ContextAwareComponent.displayName = `SendbirdAware${componentName}`;
20
19
  return ContextAwareComponent;
@@ -1 +1 @@
1
- {"version":3,"file":"withSendbird.js","sources":["../src/lib/SendbirdSdkContext.jsx"],"sourcesContent":["import React from 'react';\n\nexport const SendbirdSdkContext = React.createContext();\n\nconst withSendbirdContext = (OriginalComponent, mapStoreToProps) => {\n const ContextAwareComponent = (props) => (\n <SendbirdSdkContext.Consumer>\n {(context) => {\n if (mapStoreToProps && typeof mapStoreToProps !== 'function') {\n // eslint-disable-next-line no-console\n console.warn('Second parameter to withSendbirdContext must be a pure function');\n }\n const mergedProps = (mapStoreToProps && typeof mapStoreToProps === 'function')\n ? { ...mapStoreToProps(context), ...props }\n : { ...context, ...props };\n // eslint-disable-next-line react/jsx-props-no-spreading\n return <OriginalComponent {...mergedProps} />;\n }}\n </SendbirdSdkContext.Consumer>\n );\n\n const componentName = OriginalComponent.displayName || OriginalComponent.name || 'Component';\n ContextAwareComponent.displayName = `SendbirdAware${componentName}`;\n\n return ContextAwareComponent;\n};\n\nexport default withSendbirdContext;\n"],"names":["SendbirdSdkContext","React","createContext","withSendbirdContext","OriginalComponent","mapStoreToProps","ContextAwareComponent","props","context","console","warn","mergedProps","_objectSpread","componentName","displayName","name"],"mappings":";;;MAEaA,kBAAkB,gBAAGC,cAAK,CAACC,aAAN,GAA3B;;AAEP,MAAMC,mBAAmB,GAAG,CAACC,iBAAD,EAAoBC,eAApB,KAAwC;EAClE,MAAMC,qBAAqB,GAAIC,KAAD,iBAC5BN,cAAA,CAAA,aAAA,CAAC,kBAAD,CAAoB,QAApB,EACIO,IAAAA,EAAAA,OAAD,IAAa;AACZ,IAAA,IAAIH,eAAe,IAAI,OAAOA,eAAP,KAA2B,UAAlD,EAA8D;AAC5D;MACAI,OAAO,CAACC,IAAR,CAAa,iEAAb,CAAA,CAAA;AACD,KAAA;;IACD,MAAMC,WAAW,GAAIN,eAAe,IAAI,OAAOA,eAAP,KAA2B,UAA/C,GACXA,cAAAA,CAAAA,cAAAA,CAAAA,EAAAA,EAAAA,eAAe,CAACG,OAAD,CADJ,GACkBD,KADlB,CAAA,GAAAK,cAAA,CAAAA,cAAA,CAAA,EAAA,EAEXJ,OAFW,CAECD,EAAAA,KAFD,CAApB,CALY;;AASZ,IAAA,oBAAON,cAAC,CAAA,aAAA,CAAA,iBAAD,EAAuBU,WAAvB,CAAP,CAAA;AACD,GAXH,CADF,CAAA;;EAgBA,MAAME,aAAa,GAAGT,iBAAiB,CAACU,WAAlB,IAAiCV,iBAAiB,CAACW,IAAnD,IAA2D,WAAjF,CAAA;AACAT,EAAAA,qBAAqB,CAACQ,WAAtB,GAAqC,CAAA,aAAA,EAAeD,aAAc,CAAlE,CAAA,CAAA;AAEA,EAAA,OAAOP,qBAAP,CAAA;AACD;;;;"}
1
+ {"version":3,"file":"withSendbird.js","sources":["../src/lib/SendbirdSdkContext.tsx"],"sourcesContent":["import React from 'react';\n\ntype ContextAwareComponentType = {\n (props: any): JSX.Element;\n displayName: string;\n};\n\nexport const SendbirdSdkContext = React.createContext({});\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nconst withSendbirdContext = (OriginalComponent: any, mapStoreToProps: Record<string, any>): ContextAwareComponentType => {\n const ContextAwareComponent = (props) => (\n <SendbirdSdkContext.Consumer>\n {(context) => {\n if (mapStoreToProps && typeof mapStoreToProps !== 'function') {\n // eslint-disable-next-line no-console\n console.warn('Second parameter to withSendbirdContext must be a pure function');\n }\n const mergedProps = (mapStoreToProps && typeof mapStoreToProps === 'function')\n ? { ...mapStoreToProps(context), ...props }\n : { ...context, ...props };\n // eslint-disable-next-line react/jsx-props-no-spreading\n return <OriginalComponent {...mergedProps} />;\n }}\n </SendbirdSdkContext.Consumer>\n );\n\n const componentName = OriginalComponent.displayName || OriginalComponent.name || 'Component';\n ContextAwareComponent.displayName = `SendbirdAware${componentName}`;\n\n return ContextAwareComponent;\n};\n\nexport default withSendbirdContext;\n"],"names":["SendbirdSdkContext","React","createContext","withSendbirdContext","OriginalComponent","mapStoreToProps","ContextAwareComponent","props","createElement","Consumer","context","console","warn","mergedProps","_objectSpread","componentName","displayName","name"],"mappings":";;;AAOO,MAAMA,kBAAkB,gBAAGC,cAAK,CAACC,aAAa,CAAC,EAAE,EAAC;;AAEzD;AACA,MAAMC,mBAAmB,GAAGA,CAACC,iBAAsB,EAAEC,eAAoC,KAAgC;AACvH,EAAA,MAAMC,qBAAqB,GAAIC,KAAK,iBAClCN,cAAA,CAAAO,aAAA,CAACR,kBAAkB,CAACS,QAAQ,EAAA,IAAA,EACxBC,OAAO,IAAK;AACZ,IAAA,IAAIL,eAAe,IAAI,OAAOA,eAAe,KAAK,UAAU,EAAE;AAC5D;AACAM,MAAAA,OAAO,CAACC,IAAI,CAAC,iEAAiE,CAAC,CAAA;AACjF,KAAA;IACA,MAAMC,WAAW,GAAIR,eAAe,IAAI,OAAOA,eAAe,KAAK,UAAU,GAAAS,cAAA,CAAAA,cAAA,CAAA,EAAA,EACpET,eAAe,CAACK,OAAO,CAAC,CAAKH,EAAAA,KAAK,CAAAO,GAAAA,cAAA,CAAAA,cAAA,CAClCJ,EAAAA,EAAAA,OAAO,CAAKH,EAAAA,KAAK,CAAE,CAAA;AAC5B;AACA,IAAA,oBAAON,cAAA,CAAAO,aAAA,CAACJ,iBAAiB,EAAKS,WAAW,CAAI,CAAA;AAC/C,GAAC,CAEJ,CAAA;EAED,MAAME,aAAa,GAAGX,iBAAiB,CAACY,WAAW,IAAIZ,iBAAiB,CAACa,IAAI,IAAI,WAAW,CAAA;AAC5FX,EAAAA,qBAAqB,CAACU,WAAW,GAAI,CAAA,aAAA,EAAeD,aAAc,CAAC,CAAA,CAAA;AAEnE,EAAA,OAAOT,qBAAqB,CAAA;AAC9B;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChannelListProvider-ade145a7.js","sources":["../src/smart-components/ChannelList/dux/actionTypes.js","../src/smart-components/ChannelList/utils.js","../src/smart-components/ChannelList/dux/initialState.js","../src/smart-components/ChannelList/dux/reducers.js","../src/smart-components/ChannelList/context/ChannelListProvider.tsx"],"sourcesContent":["export const RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';\nexport const CREATE_CHANNEL = 'CREATE_CHANNEL';\nexport const USER_INVITED = 'USER_INVITED';\nexport const UNLOAD_CHANNELS = 'UNLOAD_CHANNELS';\nexport const SET_CHANNEL_LOADING = 'SET_CHANNEL_LOADING';\nexport const LEAVE_CHANNEL_SUCCESS = 'LEAVE_CHANNEL_SUCCESS';\n\nexport const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';\n\nexport const SHOW_CHANNEL_SETTINGS = 'SHOW_CHANNEL_SETTINGS';\nexport const HIDE_CHANNEL_SETTINGS = 'HIDE_CHANNEL_SETTINGS';\n\nexport const FETCH_CHANNELS_START = 'FETCH_CHANNELS_START';\nexport const FETCH_CHANNELS_SUCCESS = 'FETCH_CHANNELS_SUCCESS';\nexport const FETCH_CHANNELS_FAILURE = 'FETCH_CHANNELS_FAILURE';\n\nexport const INIT_CHANNELS_START = 'INIT_CHANNELS_START';\nexport const INIT_CHANNELS_SUCCESS = 'INIT_CHANNELS_SUCCESS';\nexport const INIT_CHANNELS_FAILURE = 'INIT_CHANNELS_FAILURE';\n\nexport const INVITE_MEMBERS_SUCESS = 'INVITE_MEMBERS_SUCESS';\n\nexport const ON_USER_JOINED = 'ON_USER_JOINED';\nexport const ON_CHANNEL_DELETED = 'ON_CHANNEL_DELETED';\nexport const ON_LAST_MESSAGE_UPDATED = 'ON_LAST_MESSAGE_UPDATED';\nexport const ON_USER_LEFT = 'ON_USER_LEFT';\nexport const ON_CHANNEL_CHANGED = 'ON_CHANNEL_CHANGED';\nexport const ON_CHANNEL_ARCHIVED = 'ON_CHANNEL_ARCHIVED';\nexport const ON_CHANNEL_FROZEN = 'ON_CHANNEL_FROZEN';\nexport const ON_CHANNEL_UNFROZEN = 'ON_CHANNEL_UNFROZEN';\n\nexport const ON_READ_RECEIPT_UPDATED = 'ON_READ_RECEIPT_UPDATED';\nexport const ON_DELIVERY_RECEIPT_UPDATED = 'ON_DELIVERY_RECEIPT_UPDATED';\n\nexport const CHANNEL_REPLACED_TO_TOP = 'CHANNEL_REPLACED_TO_TOP';\nexport const CHANNEL_LIST_PARAMS_UPDATED = 'CHANNEL_LIST_PARAMS_UPDATED';\n","import { GroupChannelHandler } from '@sendbird/chat/groupChannel';\nimport * as channelActions from './dux/actionTypes';\nimport * as topics from '../../lib/pubSub/topics';\n\nconst DELIVERY_RECIPT = 'delivery_receipt';\n\nconst createEventHandler = ({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n logger,\n}) => {\n const ChannelHandler = new GroupChannelHandler({\n onChannelChanged: (channel) => {\n logger.info('ChannelList: onChannelChanged', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_CHANGED,\n payload: channel,\n });\n },\n onChannelDeleted: (channelUrl) => {\n logger.info('ChannelList: onChannelDeleted', channelUrl);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_DELETED,\n payload: channelUrl,\n });\n },\n onUserJoined: (channel) => {\n logger.info('ChannelList: onUserJoined', channel);\n if (channel?.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_USER_JOINED,\n payload: channel,\n });\n }\n },\n onUserReceivedInvitation: (channel, inviter, invitees) => {\n logger.info('ChannelList: onUserReceivedInvitation', { channel, inviter, invitees });\n const { currentUser } = sdk;\n const isInvited = invitees.find((user) => user?.userId === currentUser?.userId);\n if (isInvited) {\n channelListDispatcher({\n type: channelActions.USER_INVITED,\n payload: channel,\n });\n }\n },\n onUserBanned: (channel, user) => {\n const { currentUser } = sdk;\n logger.info('Channel: onUserBanned', channel);\n if (user.userId === currentUser.userId) {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: true,\n },\n });\n } else {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: false,\n },\n });\n }\n },\n onUserLeft: (channel, leftUser) => {\n const { currentUser } = sdk;\n const isMe = (currentUser.userId === leftUser.userId);\n logger.info('ChannelList: onUserLeft', channel);\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe,\n },\n });\n },\n\n onReadStatus: (channel) => {\n logger.info('ChannelList: onReadStatus', channel);\n channelListDispatcher({\n type: channelActions.ON_READ_RECEIPT_UPDATED,\n payload: channel,\n });\n },\n\n onDeliveryReceiptUpdated: (channel) => {\n logger.info('ChannelList: onDeliveryReceiptUpdated', channel);\n if (channel?.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_DELIVERY_RECEIPT_UPDATED,\n payload: channel,\n });\n }\n },\n\n onMessageUpdated: (channel, message) => {\n if (channel?.lastMessage.isEqual(message)) {\n logger.info('ChannelList: onMessageUpdated', channel);\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n }\n },\n\n onChannelHidden: (channel) => {\n logger.info('ChannelList: onChannelHidden', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_ARCHIVED,\n payload: channel,\n });\n },\n\n onChannelFrozen: (channel) => {\n logger.info('ChannelList: onChannelFrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_FROZEN,\n payload: channel,\n });\n },\n\n onChannelUnfrozen: (channel) => {\n logger.info('ChannelList: onChannelUnfrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_UNFROZEN,\n payload: channel,\n });\n },\n });\n\n logger.info('ChannelList: Added channelHandler');\n sdk.groupChannel.addGroupChannelHandler(sdkChannelHandlerId, ChannelHandler);\n};\n\nconst createChannelListQuery = ({ sdk, userFilledChannelListQuery = {} }) => {\n const param = {};\n param.includeEmpty = false;\n param.limit = 20; // The value of pagination limit could be set up to 100.\n param.order = 'latest_last_message'; // 'chronological', 'latest_last_message', 'channel_name_alphabetical', and 'metadata_value_alphabetical'\n\n if (userFilledChannelListQuery) {\n Object.keys(userFilledChannelListQuery).forEach((key) => {\n param[key] = userFilledChannelListQuery[key];\n });\n }\n\n const channelListQuery = sdk.groupChannel.createMyGroupChannelListQuery(param);\n\n return channelListQuery;\n};\n\n/**\n * Setup event listener\n * create channel source query\n * addloading screen\n */\nfunction setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n setChannelsToMarkAsRead,\n}) {\n if (sdk?.groupChannel) {\n createEventHandler({\n sdk,\n channelListDispatcher,\n sdkChannelHandlerId,\n logger,\n });\n } else {\n logger.warning('ChannelList - createEventHandler: sdk or sdk.ChannelHandler does not exist', sdk);\n }\n\n logger.info('ChannelList - creating query', { userFilledChannelListQuery });\n const channelListQuery = createChannelListQuery({ sdk, userFilledChannelListQuery });\n logger.info('ChannelList - created query', channelListQuery);\n setChannelSource(channelListQuery);\n\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_START,\n });\n\n if (userFilledChannelListQuery) {\n logger.info('ChannelList - setting up channelListQuery', channelListQuery);\n channelListDispatcher({\n type: channelActions.CHANNEL_LIST_PARAMS_UPDATED,\n payload: {\n channelListQuery,\n currentUserId: sdk && sdk.currentUser && sdk.currentUser.userId,\n },\n });\n }\n\n logger.info('ChannelList - fetching channels');\n if (channelListQuery.hasNext) {\n channelListQuery.next().then((channelList) => {\n logger.info('ChannelList - fetched channels', channelList);\n // select first channel\n logger.info('ChannelList - highlight channel', channelList[0]);\n let sortedChannelList = channelList;\n if (sortChannelList && typeof sortChannelList === 'function') {\n sortedChannelList = sortChannelList(channelList);\n logger.info('ChannelList - channel list sorted', sortedChannelList);\n }\n if (!disableAutoSelect) {\n onChannelSelect(sortedChannelList[0]);\n }\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_SUCCESS,\n payload: { channelList: sortedChannelList, disableAutoSelect },\n });\n const canSetMarkAsDelivered = sdk?.appInfo?.premiumFeatureList\n ?.find((feature) => (feature === DELIVERY_RECIPT));\n\n if (canSetMarkAsDelivered) {\n setChannelsToMarkAsRead(sortedChannelList);\n }\n }).catch((err) => {\n if (err) {\n logger.error('ChannelList - couldnt fetch channels', err);\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_FAILURE,\n });\n }\n });\n } else {\n logger.info('ChannelList - there are no more channels');\n }\n}\n\nexport const pubSubHandleRemover = (subscriber) => {\n subscriber.forEach((s) => {\n try {\n s.remove();\n } catch {\n //\n }\n });\n};\n\nexport const pubSubHandler = (pubSub, channelListDispatcher) => {\n const subscriber = new Map();\n if (!pubSub) return subscriber;\n subscriber.set(topics.CREATE_CHANNEL, pubSub.subscribe(topics.CREATE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: 'CREATE_CHANNEL',\n payload: channel,\n });\n }));\n\n subscriber.set(topics.UPDATE_USER_MESSAGE, pubSub.subscribe(topics.UPDATE_USER_MESSAGE, (msg) => {\n const { channel, message } = msg;\n const updatedChannel = channel;\n if (updatedChannel?.lastMessage?.messageId === message.messageId) {\n updatedChannel.lastMessage = message;\n }\n if (channel) {\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: updatedChannel,\n });\n }\n }));\n\n subscriber.set(topics.LEAVE_CHANNEL, pubSub.subscribe(topics.LEAVE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.LEAVE_CHANNEL_SUCCESS,\n payload: channel?.url,\n });\n }));\n\n subscriber.set(topics.SEND_MESSAGE_START, pubSub.subscribe(topics.SEND_MESSAGE_START, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.CHANNEL_REPLACED_TO_TOP,\n payload: channel,\n });\n }));\n\n return subscriber;\n};\n\nexport default setupChannelList;\n","export default {\n // we might not need this initialized state -> should remove\n initialized: false,\n loading: true,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: null,\n currentUserId: '',\n disableAutoSelect: false,\n};\n","import { filterChannelListParams, getChannelsWithUpsertedChannel } from '../../../utils';\nimport * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_CHANNELS_START:\n return {\n ...state,\n loading: true,\n };\n case actions.RESET_CHANNEL_LIST:\n return initialState;\n case actions.INIT_CHANNELS_SUCCESS: {\n const { channelList, disableAutoSelect } = action.payload;\n return {\n ...state,\n initialized: true,\n loading: false,\n allChannels: channelList,\n disableAutoSelect,\n currentChannel: (\n !disableAutoSelect\n && channelList\n && channelList.length\n && channelList.length > 0\n )\n ? channelList[0]\n : null,\n };\n }\n case actions.FETCH_CHANNELS_SUCCESS: {\n const currentChannels = state.allChannels.map((c) => c.url);\n const filteredChannels = action.payload.filter(\n ({ url }) => !(currentChannels.find((c) => c === url)),\n );\n return {\n ...state,\n allChannels: [\n ...state.allChannels,\n ...filteredChannels,\n ],\n };\n }\n case actions.USER_INVITED: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n return {\n ...state,\n currentChannel: channel,\n };\n }\n return {\n ...state,\n allChannels: [channel, ...state.allChannels.filter((ch) => ch.url !== channel?.url)],\n };\n }\n case actions.CREATE_CHANNEL: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n return {\n ...state,\n currentChannel: channel,\n };\n }\n return {\n ...state,\n allChannels: [channel, ...state.allChannels.filter((ch) => ch.url !== channel?.url)],\n currentChannel: channel,\n };\n }\n case actions.ON_CHANNEL_ARCHIVED: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n // TODO: Check if we have to set current channel\n }\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n case actions.LEAVE_CHANNEL_SUCCESS:\n case actions.ON_CHANNEL_DELETED: {\n const channelUrl = action.payload;\n return {\n ...state,\n currentChannel: (channelUrl === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channelUrl),\n };\n }\n case actions.ON_USER_LEFT: {\n const { channel, isMe } = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n const filteredChannels = getChannelsWithUpsertedChannel(state.allChannels, channel);\n const nextChannel = (isMe && (channel?.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n };\n }\n const filteredChannels = state.allChannels.filter((c) => !(c.url === channel?.url && isMe));\n const nextChannel = (isMe && (channel?.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n case actions.ON_USER_JOINED:\n case actions.ON_CHANNEL_CHANGED:\n case actions.ON_READ_RECEIPT_UPDATED:\n case actions.ON_DELIVERY_RECEIPT_UPDATED: {\n const { allChannels = [] } = state;\n const channel = action.payload;\n const { unreadMessageCount } = channel;\n if (!channel?.lastMessage) return state;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(allChannels, channel),\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n };\n }\n // if its only an unread message count change, dont push to top\n if (unreadMessageCount === 0) {\n const currentChannel = allChannels.find(({ url }) => url === channel?.url);\n const currentUnreadCount = currentChannel && currentChannel.unreadMessageCount;\n if (currentUnreadCount === 0) {\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => (ch.url === channel?.url ? channel : ch)),\n };\n }\n }\n return {\n ...state,\n allChannels: [\n channel,\n ...state.allChannels.filter(({ url }) => url !== action.payload.url),\n ],\n };\n }\n case actions.SET_CURRENT_CHANNEL:\n return {\n ...state,\n currentChannel: action.payload,\n };\n case actions.SHOW_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: true,\n };\n case actions.HIDE_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: false,\n };\n case actions.ON_LAST_MESSAGE_UPDATED: {\n return {\n ...state,\n allChannels: state.allChannels.map((channel) => (\n channel?.url === action.payload.url ? action.payload : channel)),\n };\n }\n case actions.ON_CHANNEL_FROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel?.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = true;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.ON_CHANNEL_UNFROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel?.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel?.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel?.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel?.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = false;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.CHANNEL_REPLACED_TO_TOP: {\n return {\n ...state,\n allChannels: [\n action.payload,\n ...state.allChannels.filter((channel) => channel?.url !== action.payload.url),\n ],\n };\n }\n case actions.CHANNEL_LIST_PARAMS_UPDATED:\n return {\n ...state,\n currentUserId: action.payload.currentUserId,\n channelListQuery: action.payload.channelListQuery,\n };\n default:\n return state;\n }\n}\n","import React, {\n useState,\n useEffect,\n useContext,\n useReducer,\n useMemo,\n} from 'react';\n\nimport type { User } from '@sendbird/chat';\nimport {\n GroupChannel,\n GroupChannelCreateParams,\n GroupChannelHandler,\n SendbirdGroupChat,\n GroupChannelListQuery as GroupChannelListQuerySb,\n GroupChannelUserIdsFilter,\n} from '@sendbird/chat/groupChannel';\n\nimport { RenderUserProfileProps } from '../../../types';\n\nimport setupChannelList, {\n pubSubHandler,\n pubSubHandleRemover,\n} from '../utils';\nimport { uuidv4 } from '../../../utils/uuid';\nimport { noop } from '../../../utils/utils';\n\nimport * as channelListActions from '../dux/actionTypes';\n\nimport { UserProfileProvider } from '../../../lib/UserProfileContext';\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { CustomUseReducerDispatcher } from '../../../lib/SendbirdState';\nimport channelListReducers from '../dux/reducers';\nimport channelListInitialState from '../dux/initialState';\nimport { CHANNEL_TYPE } from '../../CreateChannel/types';\n\ninterface ApplicationUserListQuery {\n limit?: number;\n userIdsFilter?: Array<string>;\n metaDataKeyFilter?: string;\n metaDataValuesFilter?: Array<string>;\n}\n\ninterface GroupChannelListQuery {\n limit?: number;\n includeEmpty?: boolean;\n order?: 'latest_last_message' | 'chronological' | 'channel_name_alphabetical' | 'metadata_value_alphabetical';\n userIdsExactFilter?: Array<string>;\n userIdsIncludeFilter?: Array<string>;\n userIdsIncludeFilterQueryType?: 'AND' | 'OR';\n nicknameContainsFilter?: string;\n channelNameContainsFilter?: string;\n customTypesFilter?: Array<string>;\n customTypeStartsWithFilter?: string;\n channelUrlsFilter?: Array<string>;\n superChannelFilter?: 'all' | 'super' | 'nonsuper';\n publicChannelFilter?: 'all' | 'public' | 'private';\n metadataOrderKeyFilter?: string;\n memberStateFilter?: 'all' | 'joined_only' | 'invited_only' | 'invited_by_friend' | 'invited_by_non_friend';\n hiddenChannelFilter?: 'unhidden_only' | 'hidden_only' | 'hidden_allow_auto_unhide' | 'hidden_prevent_auto_unhide';\n unreadChannelFilter?: 'all' | 'unread_message';\n includeFrozen?: boolean;\n userIdsFilter?: GroupChannelUserIdsFilter;\n}\n\ninterface ChannelListQueries {\n applicationUserListQuery?: ApplicationUserListQuery;\n channelListQuery?: GroupChannelListQuery;\n}\n\ntype OverrideInviteUserType = {\n users: Array<string>;\n onClose: () => void;\n channelType: CHANNEL_TYPE;\n};\n\nexport interface ChannelListProviderProps {\n allowProfileEdit?: boolean;\n onBeforeCreateChannel?(users: Array<string>): GroupChannelCreateParams;\n overrideInviteUser?(params: OverrideInviteUserType): void;\n onThemeChange?(theme: string): void;\n onProfileEditSuccess?(user: User): void;\n onChannelSelect?(channel: GroupChannel): void;\n sortChannelList?: (channels: GroupChannel[]) => GroupChannel[];\n queries?: ChannelListQueries;\n children?: React.ReactElement;\n className?: string | string[];\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactElement;\n disableUserProfile?: boolean;\n disableAutoSelect?: boolean;\n typingChannels?: Array<GroupChannel>;\n isTypingIndicatorEnabled?: boolean;\n isMessageReceiptStatusEnabled?: boolean;\n}\n\nexport interface ChannelListProviderInterface extends ChannelListProviderProps {\n initialized: boolean;\n loading: boolean;\n allChannels: GroupChannel[];\n currentChannel: GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n channelListDispatcher: CustomUseReducerDispatcher;\n channelSource: GroupChannelListQuerySb;\n}\n\ninterface ChannelListStoreInterface {\n initialized: boolean;\n loading: boolean;\n allChannels: GroupChannel[];\n currentChannel: GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n disableAutoSelect: boolean;\n}\n\nconst ChannelListContext = React.createContext<ChannelListProviderInterface | null>({\n disableUserProfile: true,\n allowProfileEdit: true,\n onBeforeCreateChannel: null,\n onThemeChange: null,\n onProfileEditSuccess: null,\n onChannelSelect: null,\n queries: {},\n className: null,\n initialized: false,\n loading: false,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: {},\n currentUserId: null,\n channelListDispatcher: null,\n channelSource: null,\n typingChannels: [],\n});\n\nconst ChannelListProvider: React.FC<ChannelListProviderProps> = (props: ChannelListProviderProps) => {\n // destruct props\n const {\n children,\n className,\n disableUserProfile,\n allowProfileEdit,\n queries,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n sortChannelList,\n overrideInviteUser,\n disableAutoSelect,\n isTypingIndicatorEnabled = null,\n isMessageReceiptStatusEnabled = null,\n } = props;\n const onChannelSelect = props?.onChannelSelect || noop;\n // fetch store from <SendbirdProvider />\n const globalStore = useSendbirdStateContext();\n const { config, stores } = globalStore;\n const { sdkStore } = stores;\n const { pubSub, logger, onUserProfileMessage } = config;\n const {\n disableMarkAsDelivered = false,\n isTypingIndicatorEnabledOnChannelList = false,\n isMessageReceiptStatusEnabledOnChannelList = false,\n } = config;\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n\n // derive some variables\n // enable if it is true atleast once(both are flase by default)\n const userDefinedDisableUserProfile = disableUserProfile || config?.disableUserProfile;\n const userDefinedRenderProfile = config?.renderUserProfile;\n const enableEditProfile = allowProfileEdit || config?.allowProfileEdit;\n\n const userFilledChannelListQuery = queries?.channelListQuery;\n const userFilledApplicationUserListQuery = queries?.applicationUserListQuery;\n\n const sdkIntialized = sdkStore?.initialized;\n\n const [channelListStore, channelListDispatcher] = useReducer(\n channelListReducers,\n channelListInitialState,\n ) as [ChannelListStoreInterface, CustomUseReducerDispatcher];\n const { loading, currentChannel } = channelListStore;\n\n const [channelSource, setChannelSource] = useState<GroupChannelListQuerySb>();\n const [typingChannels, setTypingChannels] = useState<Array<GroupChannel>>([]);\n\n const [channelsTomarkAsRead, setChannelsToMarkAsRead] = useState([]);\n useEffect(() => {\n // https://stackoverflow.com/a/60907638\n let isMounted = true;\n if (channelsTomarkAsRead?.length > 0 && !disableMarkAsDelivered) {\n channelsTomarkAsRead?.forEach((c, idx) => {\n // Plan-based rate limits - minimum limit is 5 requests per second\n setTimeout(() => {\n if (isMounted) {\n c?.markAsDelivered();\n }\n }, 2000 * idx);\n });\n }\n return () => {\n isMounted = false;\n }\n }, [channelsTomarkAsRead]);\n\n useEffect(() => {\n const subscriber = pubSubHandler(pubSub, channelListDispatcher);\n return () => {\n pubSubHandleRemover(subscriber);\n };\n }, [sdkIntialized]);\n\n useEffect(() => {\n const sdkChannelHandlerId = uuidv4();\n if (sdkIntialized) {\n logger.info('ChannelList: Setup channelHandlers');\n setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n setChannelsToMarkAsRead,\n });\n } else {\n logger.info('ChannelList: Removing channelHandlers');\n // remove previous channelHandlers\n if (sdk?.groupChannel?.removeGroupChannelHandler) {\n sdk.groupChannel.removeGroupChannelHandler(sdkChannelHandlerId);\n }\n // remove channelSource\n setChannelSource(null);\n // cleanup\n channelListDispatcher({\n type: channelListActions.RESET_CHANNEL_LIST,\n payload: null,\n });\n }\n return () => {\n logger.info('ChannelList: Removing channelHandlers');\n if (sdk?.groupChannel?.removeGroupChannelHandler) {\n sdk?.groupChannel?.removeGroupChannelHandler(sdkChannelHandlerId);\n }\n };\n }, [sdkIntialized, userFilledChannelListQuery, sortChannelList]);\n\n useEffect(() => {\n let typingHandlerId = null;\n if (sdk?.groupChannel?.addGroupChannelHandler) {\n typingHandlerId = uuidv4();\n const handler = new GroupChannelHandler({\n onTypingStatusUpdated: (channel) => {\n const typingMemberCount = channel?.getTypingUsers()?.length\n const channelList = typingChannels.filter(ch => ch.url !== channel.url)\n if (typingMemberCount > 0) {\n setTypingChannels([...channelList, channel])\n } else {\n setTypingChannels(channelList)\n }\n },\n onUnreadMemberStatusUpdated(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n },\n onUndeliveredMemberStatusUpdated(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n },\n onMessageUpdated(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n sdk.groupChannel.getChannelWithoutCache(channel.url)\n .then((ch) => {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: ch,\n });\n });\n },\n onMentionReceived(channel) {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n sdk.groupChannel.getChannelWithoutCache(channel.url)\n .then((ch) => {\n channelListDispatcher({\n type: channelListActions.ON_LAST_MESSAGE_UPDATED,\n payload: ch,\n });\n });\n },\n });\n sdk?.groupChannel?.addGroupChannelHandler(typingHandlerId, handler);\n }\n return () => {\n if (sdk?.groupChannel?.removeGroupChannelHandler && typingHandlerId) {\n sdk.groupChannel.removeGroupChannelHandler(typingHandlerId);\n }\n }\n }, [sdk?.currentUser?.userId]);\n\n const queries_ = useMemo(() => {\n return {\n applicationUserListQuery: userFilledApplicationUserListQuery,\n channelListQuery: userFilledChannelListQuery,\n };\n }, [\n userFilledApplicationUserListQuery,\n userFilledChannelListQuery,\n ])\n\n const { allChannels } = channelListStore;\n const sortedChannels = (sortChannelList && typeof sortChannelList === 'function')\n ? sortChannelList(allChannels)\n : allChannels;\n\n if (sortedChannels.length !== allChannels.length) {\n const warning = `ChannelList: You have removed/added extra channels on sortChannelList\n this could cause unexpected problems`;\n // eslint-disable-next-line no-console\n console.warn(warning, { before: allChannels, after: sortedChannels });\n logger.warning(warning, { before: allChannels, after: sortedChannels });\n }\n\n // Set current channel (by on_channel_selected event)\n useEffect(() => {\n if (!sdk || !sdk.groupChannel || !currentChannel || !currentChannel?.url) {\n return;\n }\n sdk.groupChannel.getChannel(currentChannel.url).then((groupChannel) => {\n if (groupChannel) {\n onChannelSelect(groupChannel);\n } else {\n onChannelSelect(null);\n }\n });\n }, [currentChannel?.url]);\n\n return (\n <ChannelListContext.Provider value={{\n className,\n disableUserProfile,\n queries: queries_,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n overrideInviteUser,\n onChannelSelect,\n sortChannelList,\n loading,\n allowProfileEdit: enableEditProfile,\n channelListDispatcher,\n channelSource,\n ...channelListStore,\n allChannels: sortedChannels,\n typingChannels,\n isTypingIndicatorEnabled: (isTypingIndicatorEnabled !== null) ? isTypingIndicatorEnabled : isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabled: (isMessageReceiptStatusEnabled !== null) ? isMessageReceiptStatusEnabled : isMessageReceiptStatusEnabledOnChannelList,\n }}>\n <UserProfileProvider\n disableUserProfile={userDefinedDisableUserProfile}\n renderUserProfile={userDefinedRenderProfile}\n onUserProfileMessage={onUserProfileMessage}\n >\n <div className={`sendbird-channel-list ${className}`}>\n {children}\n </div>\n </UserProfileProvider>\n </ChannelListContext.Provider>\n );\n};\n\nfunction useChannelListContext(): ChannelListProviderInterface {\n const context: ChannelListProviderInterface = useContext(ChannelListContext);\n return context;\n}\n\nexport {\n ChannelListProvider,\n useChannelListContext,\n};\n"],"names":["RESET_CHANNEL_LIST","CREATE_CHANNEL","USER_INVITED","LEAVE_CHANNEL_SUCCESS","SET_CURRENT_CHANNEL","SHOW_CHANNEL_SETTINGS","HIDE_CHANNEL_SETTINGS","FETCH_CHANNELS_START","FETCH_CHANNELS_SUCCESS","FETCH_CHANNELS_FAILURE","INIT_CHANNELS_START","INIT_CHANNELS_SUCCESS","INIT_CHANNELS_FAILURE","ON_USER_JOINED","ON_CHANNEL_DELETED","ON_LAST_MESSAGE_UPDATED","ON_USER_LEFT","ON_CHANNEL_CHANGED","ON_CHANNEL_ARCHIVED","ON_CHANNEL_FROZEN","ON_CHANNEL_UNFROZEN","ON_READ_RECEIPT_UPDATED","ON_DELIVERY_RECEIPT_UPDATED","CHANNEL_REPLACED_TO_TOP","CHANNEL_LIST_PARAMS_UPDATED","DELIVERY_RECIPT","createEventHandler","sdk","sdkChannelHandlerId","channelListDispatcher","logger","ChannelHandler","GroupChannelHandler","onChannelChanged","channel","info","type","channelActions","payload","onChannelDeleted","channelUrl","onUserJoined","lastMessage","onUserReceivedInvitation","inviter","invitees","currentUser","isInvited","find","user","userId","onUserBanned","isMe","onUserLeft","leftUser","onReadStatus","onDeliveryReceiptUpdated","onMessageUpdated","message","isEqual","onChannelHidden","onChannelFrozen","onChannelUnfrozen","groupChannel","addGroupChannelHandler","createChannelListQuery","userFilledChannelListQuery","param","includeEmpty","limit","order","Object","keys","forEach","key","channelListQuery","createMyGroupChannelListQuery","setupChannelList","setChannelSource","onChannelSelect","sortChannelList","disableAutoSelect","setChannelsToMarkAsRead","warning","currentUserId","hasNext","next","then","channelList","sortedChannelList","canSetMarkAsDelivered","appInfo","premiumFeatureList","feature","catch","err","error","pubSubHandleRemover","subscriber","s","remove","pubSubHandler","pubSub","Map","set","topics","subscribe","msg","updatedChannel","messageId","url","initialized","loading","allChannels","currentChannel","showSettings","reducer","state","action","actions","_objectSpread","initialState","length","currentChannels","map","c","filteredChannels","filter","filterChannelListParams","getChannelsWithUpsertedChannel","ch","nextChannel","unreadMessageCount","currentUnreadCount","isFrozen","ChannelListContext","React","createContext","disableUserProfile","allowProfileEdit","onBeforeCreateChannel","onThemeChange","onProfileEditSuccess","queries","className","channelSource","typingChannels","ChannelListProvider","props","children","overrideInviteUser","_b","isTypingIndicatorEnabled","_c","isMessageReceiptStatusEnabled","noop","globalStore","useSendbirdStateContext","config","stores","sdkStore","onUserProfileMessage","_d","disableMarkAsDelivered","_e","isTypingIndicatorEnabledOnChannelList","_f","isMessageReceiptStatusEnabledOnChannelList","userDefinedDisableUserProfile","userDefinedRenderProfile","renderUserProfile","enableEditProfile","userFilledApplicationUserListQuery","applicationUserListQuery","sdkIntialized","_g","useReducer","channelListReducers","channelListInitialState","channelListStore","_h","useState","_j","setTypingChannels","_k","channelsTomarkAsRead","useEffect","isMounted","idx","setTimeout","markAsDelivered","uuidv4","_a","removeGroupChannelHandler","channelListActions","typingHandlerId","handler","onTypingStatusUpdated","typingMemberCount","getTypingUsers","__spreadArray","onUnreadMemberStatusUpdated","onUndeliveredMemberStatusUpdated","getChannelWithoutCache","onMentionReceived","queries_","useMemo","sortedChannels","console","warn","before","after","getChannel","__assign","concat","useChannelListContext","context","useContext"],"mappings":"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"}