@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
@@ -1,543 +0,0 @@
1
- 'use strict';
2
-
3
- var React = require('react');
4
- var useSendbirdStateContext = require('./useSendbirdStateContext.js');
5
- var tslib_es6 = require('./tslib.es6-5a7eb30d.js');
6
- var compareIds = require('./compareIds-d0c02eca.js');
7
- var index = require('./index-b3371ef2.js');
8
- var groupChannel = require('@sendbird/chat/groupChannel');
9
- var uuid = require('./uuid-a9006ea2.js');
10
-
11
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
-
13
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
-
15
- var initialState = {
16
- uiState: 'loading',
17
- allMessages: [],
18
- currentNotificationChannel: null,
19
- hasMore: false,
20
- messageListParams: null,
21
- lastSeen: 0,
22
- showDeleteModal: false,
23
- messageToDelete: null
24
- };
25
-
26
- var actionTypes = {
27
- FETCH_CHANNEL_START: 'FETCH_CHANNEL_START',
28
- FETCH_CHANNEL_SUCCESS: 'FETCH_CHANNEL_SUCCESS',
29
- FETCH_CHANNEL_FAILURE: 'FETCH_CHANNEL_FAILURE',
30
- RESET_MESSAGES: 'RESET_MESSAGES',
31
- FETCH_INITIAL_MESSAGES_START: 'FETCH_INITIAL_MESSAGES_START',
32
- FETCH_INITIAL_MESSAGES_SUCCESS: 'FETCH_INITIAL_MESSAGES_SUCCESS',
33
- FETCH_INITIAL_MESSAGES_FAILURE: 'FETCH_INITIAL_MESSAGES_FAILURE',
34
- FETCH_PREV_MESSAGES_SUCCESS: 'FETCH_PREV_MESSAGES_SUCCESS',
35
- FETCH_PREV_MESSAGES_FAILURE: 'FETCH_PREV_MESSAGES_FAILURE',
36
-
37
- /**
38
- * Being able to notice which notification messages are newly arrived by the (unread) badge UI
39
- * last seen at == groupChannel.myLastRead; should not updated when the channel is on entered(use it only once) and receives a new notification.
40
- * Needs to call markAsRead internally (but not provide as public interfaces) when:
41
- * Enters the channel
42
- * Receives a new message (when the channel is visible due to the channel unread message count will be reset)
43
- * Whenever the channel is visible.
44
- * (iOS, AOS) tab bar case, because the notification channel view keeps alive, should update last seen value manually → updateLastSeen(timestamp: LONG)
45
- */
46
- SET_LAST_SEEN: 'SET_LAST_SEEN',
47
- SHOW_DELETE_MODAL: 'SHOW_DELETE_MODAL',
48
- ON_MESSAGE_RECEIVED: 'ON_MESSAGE_RECEIVED',
49
- ON_MESSAGE_UPDATED: 'ON_MESSAGE_UPDATED',
50
- ON_MESSAGE_DELETED: 'ON_MESSAGE_DELETED',
51
- ON_CHANNEL_DELETED: 'ON_CHANNEL_DELETED'
52
- };
53
-
54
- var MAX_MESSAGE_COUNT = 15;
55
-
56
- function useInitialize(_a, _b) {
57
- var channelUrl = _a.channelUrl,
58
- sdkInit = _a.sdkInit,
59
- messageListParams = _a.messageListParams;
60
- var notificationsDispatcher = _b.notificationsDispatcher,
61
- sdk = _b.sdk,
62
- logger = _b.logger;
63
- React.useEffect(function () {
64
- if (sdkInit) {
65
- var messageListParams_1 = tslib_es6.__assign({
66
- nextResultSize: 0,
67
- prevResultSize: MAX_MESSAGE_COUNT,
68
- reverse: true,
69
- isInclusive: false,
70
- includeReactions: false
71
- }, messageListParams);
72
-
73
- logger.info('NotificationChannel: Fetching channel start', {
74
- channelUrl: channelUrl,
75
- messageListParams_: messageListParams_1
76
- });
77
- notificationsDispatcher({
78
- type: actionTypes.FETCH_CHANNEL_START,
79
- payload: {
80
- channelUrl: channelUrl,
81
- messageListParams: messageListParams_1
82
- }
83
- });
84
- sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel.getChannel(channelUrl).then(function (channel) {
85
- logger.info('NotificationChannel: Fetching channel success', {
86
- channel: channel
87
- });
88
- notificationsDispatcher({
89
- type: actionTypes.FETCH_CHANNEL_SUCCESS,
90
- payload: {
91
- channel: channel
92
- }
93
- });
94
- notificationsDispatcher({
95
- type: actionTypes.SET_LAST_SEEN,
96
- payload: {
97
- lastSeen: channel === null || channel === void 0 ? void 0 : channel.myLastRead
98
- }
99
- }); // start fetching messages
100
-
101
- logger.info('NotificationChannel: Fetching messages start', {
102
- channel: channel
103
- });
104
- notificationsDispatcher({
105
- type: actionTypes.FETCH_INITIAL_MESSAGES_START
106
- });
107
- logger.info('NotificationChannel: Fetching messages', {
108
- channel: channel
109
- });
110
- channel.getMessagesByTimestamp(new Date().getTime(), messageListParams_1).then(function (messages) {
111
- notificationsDispatcher({
112
- type: actionTypes.FETCH_INITIAL_MESSAGES_SUCCESS,
113
- payload: {
114
- channel: channel,
115
- messages: messages
116
- }
117
- });
118
- channel === null || channel === void 0 ? void 0 : channel.markAsRead();
119
- }).catch(function (error) {
120
- logger.error('NotificationChannel: Fetching messages failed', error);
121
- notificationsDispatcher({
122
- type: actionTypes.FETCH_INITIAL_MESSAGES_FAILURE,
123
- payload: {
124
- error: error,
125
- channel: channel
126
- }
127
- });
128
- });
129
- }).catch(function (error) {
130
- logger.error('NotificationChannel: Fetching channel fail', {
131
- error: error
132
- });
133
- notificationsDispatcher({
134
- type: actionTypes.FETCH_CHANNEL_FAILURE
135
- });
136
- });
137
- }
138
- }, [channelUrl, sdkInit, messageListParams]);
139
- }
140
-
141
- function reducer(state, action) {
142
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
143
-
144
- switch (action === null || action === void 0 ? void 0 : action.type) {
145
- case actionTypes.SET_LAST_SEEN:
146
- {
147
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
148
- lastSeen: (_a = action === null || action === void 0 ? void 0 : action.payload) === null || _a === void 0 ? void 0 : _a.lastSeen
149
- });
150
- }
151
-
152
- case actionTypes.SHOW_DELETE_MODAL:
153
- {
154
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
155
- showDeleteModal: (_b = action === null || action === void 0 ? void 0 : action.payload) === null || _b === void 0 ? void 0 : _b.showDeleteModal,
156
- messageToDelete: (_c = action === null || action === void 0 ? void 0 : action.payload) === null || _c === void 0 ? void 0 : _c.message
157
- });
158
- }
159
-
160
- case actionTypes.FETCH_CHANNEL_START:
161
- {
162
- return tslib_es6.__assign(tslib_es6.__assign({}, initialState), {
163
- messageListParams: (_d = action === null || action === void 0 ? void 0 : action.payload) === null || _d === void 0 ? void 0 : _d.messageListParams
164
- });
165
- }
166
-
167
- case actionTypes.FETCH_CHANNEL_SUCCESS:
168
- {
169
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
170
- currentNotificationChannel: (_e = action === null || action === void 0 ? void 0 : action.payload) === null || _e === void 0 ? void 0 : _e.channel
171
- });
172
- }
173
-
174
- case actionTypes.FETCH_CHANNEL_FAILURE:
175
- {
176
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
177
- uiState: 'invalid'
178
- });
179
- }
180
-
181
- case actionTypes.RESET_MESSAGES:
182
- {
183
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
184
- allMessages: []
185
- });
186
- }
187
-
188
- case actionTypes.FETCH_INITIAL_MESSAGES_START:
189
- {
190
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
191
- uiState: 'loading'
192
- });
193
- }
194
-
195
- case actionTypes.FETCH_INITIAL_MESSAGES_SUCCESS:
196
- {
197
- var messages = action.payload.messages || [];
198
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
199
- allMessages: messages,
200
- uiState: 'initialized',
201
- hasMore: (messages === null || messages === void 0 ? void 0 : messages.length) === MAX_MESSAGE_COUNT
202
- });
203
- }
204
-
205
- case actionTypes.FETCH_INITIAL_MESSAGES_FAILURE:
206
- {
207
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
208
- uiState: 'invalid'
209
- });
210
- }
211
-
212
- case actionTypes.FETCH_PREV_MESSAGES_SUCCESS:
213
- {
214
- var channel = action.payload.channel;
215
- var messages_1 = action.payload.messages || [];
216
-
217
- if ((channel === null || channel === void 0 ? void 0 : channel.url) !== ((_f = state === null || state === void 0 ? void 0 : state.currentNotificationChannel) === null || _f === void 0 ? void 0 : _f.url)) {
218
- return state;
219
- }
220
-
221
- var deDuplucateAllMessages = state.allMessages.filter(function (m) {
222
- return !messages_1.find(function (m2) {
223
- return compareIds.compareIds(m.messageId, m2.messageId);
224
- });
225
- });
226
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
227
- hasMore: (messages_1 === null || messages_1 === void 0 ? void 0 : messages_1.length) === MAX_MESSAGE_COUNT,
228
- allMessages: tslib_es6.__spreadArray(tslib_es6.__spreadArray([], deDuplucateAllMessages, true), messages_1, true)
229
- });
230
- }
231
-
232
- case actionTypes.FETCH_PREV_MESSAGES_FAILURE:
233
- {
234
- return state;
235
- }
236
-
237
- case actionTypes.ON_MESSAGE_RECEIVED:
238
- {
239
- var channel = action.payload.channel;
240
- var message = action.payload.message;
241
-
242
- if ((channel === null || channel === void 0 ? void 0 : channel.url) !== ((_g = state === null || state === void 0 ? void 0 : state.currentNotificationChannel) === null || _g === void 0 ? void 0 : _g.url)) {
243
- return state;
244
- } // filter out messaegs using MessageListQuery
245
-
246
-
247
- if ((state === null || state === void 0 ? void 0 : state.messageListParams) && !index.filterMessageListParams(state === null || state === void 0 ? void 0 : state.messageListParams, message)) {
248
- return state;
249
- }
250
-
251
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
252
- allMessages: tslib_es6.__spreadArray([message], state === null || state === void 0 ? void 0 : state.allMessages, true)
253
- });
254
- }
255
-
256
- case actionTypes.ON_MESSAGE_UPDATED:
257
- {
258
- var channel = action.payload.channel;
259
- var message_1 = action.payload.message;
260
-
261
- if ((channel === null || channel === void 0 ? void 0 : channel.url) !== ((_h = state === null || state === void 0 ? void 0 : state.currentNotificationChannel) === null || _h === void 0 ? void 0 : _h.url)) {
262
- return state;
263
- }
264
-
265
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
266
- allMessages: (_j = state === null || state === void 0 ? void 0 : state.allMessages) === null || _j === void 0 ? void 0 : _j.map(function (m) {
267
- if ((m === null || m === void 0 ? void 0 : m.messageId) === (message_1 === null || message_1 === void 0 ? void 0 : message_1.messageId)) {
268
- return message_1;
269
- }
270
-
271
- return m;
272
- })
273
- });
274
- }
275
-
276
- case actionTypes.ON_MESSAGE_DELETED:
277
- {
278
- var channel = action.payload.channel;
279
- var message_2 = action.payload.message;
280
-
281
- if ((channel === null || channel === void 0 ? void 0 : channel.url) !== ((_k = state === null || state === void 0 ? void 0 : state.currentNotificationChannel) === null || _k === void 0 ? void 0 : _k.url)) {
282
- return state;
283
- }
284
-
285
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
286
- allMessages: state.allMessages.filter(function (m) {
287
- return !compareIds.compareIds(m.messageId, message_2 === null || message_2 === void 0 ? void 0 : message_2.messageId);
288
- })
289
- });
290
- }
291
-
292
- case actionTypes.ON_CHANNEL_DELETED:
293
- {
294
- var channelUrl = action.payload.channelUrl;
295
-
296
- if (channelUrl !== ((_l = state === null || state === void 0 ? void 0 : state.currentNotificationChannel) === null || _l === void 0 ? void 0 : _l.url)) {
297
- return state;
298
- }
299
-
300
- return tslib_es6.__assign(tslib_es6.__assign({}, state), {
301
- currentNotificationChannel: null,
302
- uiState: 'invalid'
303
- });
304
- }
305
-
306
- default:
307
- {
308
- return state;
309
- }
310
- }
311
- }
312
-
313
- function useEventListener(_a, _b) {
314
- var currentChannel = _a.currentChannel,
315
- sdkInit = _a.sdkInit;
316
- var notificationsDispatcher = _b.notificationsDispatcher,
317
- sdk = _b.sdk,
318
- logger = _b.logger;
319
- React.useEffect(function () {
320
- var _a;
321
-
322
- var channelUrl = currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url;
323
- var channelHandlerId = uuid.uuidv4();
324
-
325
- if (channelUrl && sdkInit) {
326
- var channelHandler = {
327
- onMessageReceived: function (channel, message) {
328
- if (compareIds.compareIds(channel === null || channel === void 0 ? void 0 : channel.url, channelUrl)) {
329
- logger.info('NotificationChannel | useHandleChannelEvents: onMessageReceived', message);
330
- notificationsDispatcher({
331
- type: actionTypes.ON_MESSAGE_RECEIVED,
332
- payload: {
333
- channel: channel,
334
- message: message
335
- }
336
- });
337
- var _channel = channel;
338
- _channel === null || _channel === void 0 ? void 0 : _channel.markAsRead();
339
- }
340
- },
341
- onMessageUpdated: function (channel, message) {
342
- logger.info('NotificationChannel | useHandleChannelEvents: onMessageUpdated', message);
343
- notificationsDispatcher({
344
- type: actionTypes.ON_MESSAGE_UPDATED,
345
- payload: {
346
- channel: channel,
347
- message: message
348
- }
349
- });
350
- },
351
- onMessageDeleted: function (channel, messageId) {
352
- logger.info('NotificationChannel | useHandleChannelEvents: onMessageDeleted', {
353
- channel: channel,
354
- messageId: messageId
355
- });
356
- notificationsDispatcher({
357
- type: actionTypes.ON_MESSAGE_DELETED,
358
- payload: {
359
- channel: channel,
360
- messageId: messageId
361
- }
362
- });
363
- },
364
- onChannelDeleted: function (channelUrl) {
365
- logger.info('NotificationChannel | useHandleChannelEvents: onChannelDeleted', {
366
- channelUrl: channelUrl
367
- });
368
- }
369
- };
370
- logger.info('NotificationChannel | useHandleChannelEvents: Setup event handler', {
371
- channelHandlerId: channelHandlerId,
372
- channelHandler: channelHandler
373
- }); // Add this group channel handler to the Sendbird chat instance
374
-
375
- (_a = sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.addGroupChannelHandler(channelHandlerId, new groupChannel.GroupChannelHandler(channelHandler));
376
- }
377
-
378
- return function () {
379
- var _a;
380
-
381
- if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.removeGroupChannelHandler) {
382
- logger.info('NotificationChannel | useHandleChannelEvents: Removing message reciver handler', channelHandlerId);
383
- sdk.groupChannel.removeGroupChannelHandler(channelHandlerId);
384
- } else if (sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) {
385
- logger.error('Channel | useHandleChannelEvents: Not found the removeGroupChannelHandler');
386
- }
387
- };
388
- }, [currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url, sdkInit]);
389
- }
390
-
391
- function useFetchMore(_a, _b) {
392
- var channel = _a.channel,
393
- sdkInit = _a.sdkInit,
394
- oldestMessageTimeStamp = _a.oldestMessageTimeStamp;
395
- var logger = _b.logger,
396
- notificationsDispatcher = _b.notificationsDispatcher,
397
- messageListParams = _b.messageListParams;
398
- return React.useCallback(function (cb) {
399
- logger.info('NotificationChannel: Fetching messages', {
400
- channel: channel,
401
- messageListParams: messageListParams
402
- });
403
- channel.getMessagesByTimestamp(oldestMessageTimeStamp || new Date().getTime(), messageListParams).then(function (messages) {
404
- logger.info('NotificationChannel: Fetching messages success', messages);
405
- notificationsDispatcher({
406
- type: actionTypes.FETCH_PREV_MESSAGES_SUCCESS,
407
- payload: {
408
- channel: channel,
409
- messages: messages
410
- }
411
- });
412
- cb([messages, null]);
413
- }).catch(function (error) {
414
- logger.error('NotificationChannel: Fetching messages failed', error);
415
- notificationsDispatcher({
416
- type: actionTypes.FETCH_PREV_MESSAGES_FAILURE,
417
- payload: {
418
- channel: channel
419
- }
420
- });
421
- cb([null, error]);
422
- });
423
- }, [channel, oldestMessageTimeStamp, sdkInit]);
424
- }
425
-
426
- var NotficationChannelContext = /*#__PURE__*/React__default["default"].createContext(undefined);
427
-
428
- var NotficationChannelProvider = function (props) {
429
- var _a, _b, _c, _d, _e, _f;
430
-
431
- var channelUrl = props.channelUrl,
432
- children = props.children,
433
- messageListParams = props.messageListParams,
434
- lastSeen = props.lastSeen,
435
- handleWebAction = props.handleWebAction,
436
- handleCustomAction = props.handleCustomAction,
437
- handlePredefinedAction = props.handlePredefinedAction;
438
- var globalStore = useSendbirdStateContext();
439
- var sdk = (_b = (_a = globalStore === null || globalStore === void 0 ? void 0 : globalStore.stores) === null || _a === void 0 ? void 0 : _a.sdkStore) === null || _b === void 0 ? void 0 : _b.sdk;
440
- var logger = (_c = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config) === null || _c === void 0 ? void 0 : _c.logger;
441
- var sdkInit = (_e = (_d = globalStore === null || globalStore === void 0 ? void 0 : globalStore.stores) === null || _d === void 0 ? void 0 : _d.sdkStore) === null || _e === void 0 ? void 0 : _e.initialized;
442
-
443
- var _g = React.useReducer(reducer, initialState),
444
- notificationsStore = _g[0],
445
- notificationsDispatcher = _g[1];
446
-
447
- var uiState = notificationsStore.uiState,
448
- allMessages = notificationsStore.allMessages,
449
- currentNotificationChannel = notificationsStore.currentNotificationChannel,
450
- hasMore = notificationsStore.hasMore,
451
- showDeleteModal = notificationsStore.showDeleteModal,
452
- messageToDelete = notificationsStore.messageToDelete;
453
- var oldestMessageTimeStamp = ((_f = allMessages === null || allMessages === void 0 ? void 0 : allMessages[(allMessages === null || allMessages === void 0 ? void 0 : allMessages.length) - 1]) === null || _f === void 0 ? void 0 : _f.createdAt) || 0; // intialize
454
-
455
- useInitialize({
456
- channelUrl: channelUrl,
457
- sdkInit: sdkInit,
458
- messageListParams: messageListParams
459
- }, {
460
- notificationsDispatcher: notificationsDispatcher,
461
- sdk: sdk,
462
- logger: logger
463
- }); // event listener
464
-
465
- useEventListener({
466
- currentChannel: currentNotificationChannel,
467
- sdkInit: sdkInit
468
- }, {
469
- notificationsDispatcher: notificationsDispatcher,
470
- sdk: sdk,
471
- logger: logger
472
- });
473
- var onFetchMore = useFetchMore({
474
- channel: currentNotificationChannel,
475
- sdkInit: sdkInit,
476
- oldestMessageTimeStamp: oldestMessageTimeStamp
477
- }, {
478
- notificationsDispatcher: notificationsDispatcher,
479
- messageListParams: notificationsStore.messageListParams,
480
- logger: logger
481
- });
482
- React.useEffect(function () {
483
- notificationsDispatcher({
484
- type: actionTypes.SET_LAST_SEEN,
485
- payload: {
486
- lastSeen: lastSeen
487
- }
488
- });
489
- }, [lastSeen]);
490
- var scrollRef = React.useRef(null);
491
-
492
- var defaulthandlePredefinedAction = function (event, action, message) {
493
- logger.info('NotficationChannel: handlePredefinedAction', {
494
- event: event,
495
- action: action,
496
- message: message
497
- });
498
-
499
- if ((action === null || action === void 0 ? void 0 : action.type) === 'uikit' && (action === null || action === void 0 ? void 0 : action.data) === 'sendbirduikit://delete') {
500
- notificationsDispatcher({
501
- type: actionTypes.SHOW_DELETE_MODAL,
502
- payload: {
503
- message: message,
504
- showDeleteModal: true
505
- }
506
- });
507
- }
508
- };
509
-
510
- return /*#__PURE__*/React__default["default"].createElement(NotficationChannelContext.Provider, {
511
- value: {
512
- // props
513
- channelUrl: channelUrl,
514
- handleWebAction: handleWebAction,
515
- handleCustomAction: handleCustomAction,
516
- handlePredefinedAction: handlePredefinedAction || defaulthandlePredefinedAction,
517
- // store
518
- uiState: uiState,
519
- messageListParams: notificationsStore.messageListParams,
520
- lastSeen: notificationsStore === null || notificationsStore === void 0 ? void 0 : notificationsStore.lastSeen,
521
- allMessages: allMessages,
522
- showDeleteModal: showDeleteModal,
523
- currentNotificationChannel: currentNotificationChannel,
524
- hasMore: hasMore,
525
- messageToDelete: messageToDelete,
526
- // dispatcher
527
- notificationsDispatcher: notificationsDispatcher,
528
- // derived info
529
- oldestMessageTimeStamp: oldestMessageTimeStamp,
530
- scrollRef: scrollRef,
531
- onFetchMore: onFetchMore
532
- }
533
- }, children);
534
- };
535
-
536
- var useNotficationChannelContext = function () {
537
- return React__default["default"].useContext(NotficationChannelContext);
538
- };
539
-
540
- exports.NotficationChannelProvider = NotficationChannelProvider;
541
- exports.actionTypes = actionTypes;
542
- exports.useNotficationChannelContext = useNotficationChannelContext;
543
- //# sourceMappingURL=NotificationChannelProvider-4cc9575f.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NotificationChannelProvider-4cc9575f.js","sources":["../../src/smart-components/NotificationChannel/context/dux/initialState.ts","../../src/smart-components/NotificationChannel/context/dux/actionTypes.ts","../../src/smart-components/NotificationChannel/context/consts.ts","../../src/smart-components/NotificationChannel/context/hooks/useInitialize.ts","../../src/smart-components/NotificationChannel/context/dux/reducers.ts","../../src/smart-components/NotificationChannel/context/hooks/useEventListener.ts","../../src/smart-components/NotificationChannel/context/hooks/useFetchMore.ts","../../src/smart-components/NotificationChannel/context/NotificationChannelProvider.tsx"],"sourcesContent":["import type { GroupChannel } from \"@sendbird/chat/groupChannel\";\nimport type { BaseMessage, MessageListParams } from \"@sendbird/chat/message\";\n\nexport declare type NotficationChannelStateInterface = {\n uiState: 'loading' | 'initialized' | 'invalid';\n allMessages: BaseMessage[];\n currentNotificationChannel: GroupChannel;\n hasMore: boolean;\n messageListParams?: MessageListParams;\n lastSeen?: number;\n showDeleteModal: boolean;\n messageToDelete?: BaseMessage;\n}\n\nexport const initialState: NotficationChannelStateInterface = {\n uiState: 'loading',\n allMessages: [],\n currentNotificationChannel: null,\n hasMore: false,\n messageListParams: null,\n lastSeen: 0,\n showDeleteModal: false,\n messageToDelete: null,\n};\n","export const actionTypes = {\n FETCH_CHANNEL_START: 'FETCH_CHANNEL_START',\n FETCH_CHANNEL_SUCCESS: 'FETCH_CHANNEL_SUCCESS',\n FETCH_CHANNEL_FAILURE: 'FETCH_CHANNEL_FAILURE',\n RESET_MESSAGES: 'RESET_MESSAGES',\n FETCH_INITIAL_MESSAGES_START: 'FETCH_INITIAL_MESSAGES_START',\n FETCH_INITIAL_MESSAGES_SUCCESS: 'FETCH_INITIAL_MESSAGES_SUCCESS',\n FETCH_INITIAL_MESSAGES_FAILURE: 'FETCH_INITIAL_MESSAGES_FAILURE',\n FETCH_PREV_MESSAGES_SUCCESS: 'FETCH_PREV_MESSAGES_SUCCESS',\n FETCH_PREV_MESSAGES_FAILURE: 'FETCH_PREV_MESSAGES_FAILURE',\n\n /**\n * Being able to notice which notification messages are newly arrived by the (unread) badge UI\n * last seen at == groupChannel.myLastRead; should not updated when the channel is on entered(use it only once) and receives a new notification.\n * Needs to call markAsRead internally (but not provide as public interfaces) when:\n * Enters the channel\n * Receives a new message (when the channel is visible due to the channel unread message count will be reset)\n * Whenever the channel is visible.\n * (iOS, AOS) tab bar case, because the notification channel view keeps alive, should update last seen value manually → updateLastSeen(timestamp: LONG)\n */\n SET_LAST_SEEN: 'SET_LAST_SEEN',\n\n SHOW_DELETE_MODAL: 'SHOW_DELETE_MODAL',\n\n ON_MESSAGE_RECEIVED: 'ON_MESSAGE_RECEIVED',\n ON_MESSAGE_UPDATED: 'ON_MESSAGE_UPDATED',\n ON_MESSAGE_DELETED: 'ON_MESSAGE_DELETED',\n ON_CHANNEL_DELETED: 'ON_CHANNEL_DELETED',\n} as const;\n\n// todo: Move to somewhere generic\n// using pattern from this video:\n// https://youtu.be/jjMbPt_H3RQ?t=316\ntype ObjectValues<T> = T[keyof T];\n\nexport type ActionType = ObjectValues<typeof actionTypes>;\n","export const MAX_MESSAGE_COUNT = 15 as const;\n","import React, { useEffect } from 'react';\nimport { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\n\nimport { actionTypes } from '../dux/actionTypes';\nimport { Logger } from '../../../../lib/SendbirdState';\nimport { Action } from '../dux/reducers';\nimport { MessageListParams } from '@sendbird/chat/message';\nimport { MAX_MESSAGE_COUNT } from '../consts';\n\ntype DynamicParams = {\n channelUrl: string;\n sdkInit: boolean;\n messageListParams?: MessageListParams;\n};\n\ntype StaticParams = {\n notificationsDispatcher: React.Dispatch<Action>;\n sdk: SendbirdGroupChat;\n logger: Logger;\n};\n\nfunction useInitialize({\n channelUrl,\n sdkInit,\n messageListParams,\n}: DynamicParams, {\n notificationsDispatcher,\n sdk,\n logger,\n}: StaticParams): void {\n useEffect(() => {\n if (sdkInit) {\n const messageListParams_: MessageListParams = {\n nextResultSize: 0,\n prevResultSize: MAX_MESSAGE_COUNT,\n reverse: true,\n isInclusive: false,\n includeReactions: false,\n ...messageListParams,\n };\n\n logger.info('NotificationChannel: Fetching channel start', { channelUrl, messageListParams_ });\n notificationsDispatcher({\n type: actionTypes.FETCH_CHANNEL_START,\n payload: {\n channelUrl,\n messageListParams: messageListParams_,\n },\n });\n sdk?.groupChannel.getChannel(channelUrl).then((channel) => {\n logger.info('NotificationChannel: Fetching channel success', { channel });\n notificationsDispatcher({\n type: actionTypes.FETCH_CHANNEL_SUCCESS,\n payload: {\n channel,\n },\n });\n notificationsDispatcher({\n type: actionTypes.SET_LAST_SEEN,\n payload: {\n lastSeen: channel?.myLastRead,\n },\n });\n // start fetching messages\n logger.info('NotificationChannel: Fetching messages start', { channel });\n notificationsDispatcher({\n type: actionTypes.FETCH_INITIAL_MESSAGES_START,\n });\n\n logger.info('NotificationChannel: Fetching messages', { channel });\n\n channel.getMessagesByTimestamp(\n new Date().getTime(),\n messageListParams_,\n ).then((messages) => {\n notificationsDispatcher({\n type: actionTypes.FETCH_INITIAL_MESSAGES_SUCCESS,\n payload: {\n channel,\n messages,\n },\n });\n channel?.markAsRead();\n })\n .catch((error) => {\n logger.error('NotificationChannel: Fetching messages failed', error);\n notificationsDispatcher({\n type: actionTypes.FETCH_INITIAL_MESSAGES_FAILURE,\n payload: { error, channel },\n });\n });\n }).catch((error) => {\n logger.error('NotificationChannel: Fetching channel fail', { error });\n notificationsDispatcher({\n type: actionTypes.FETCH_CHANNEL_FAILURE,\n });\n })\n }\n }, [channelUrl, sdkInit, messageListParams]);\n}\n\nexport default useInitialize;\n","import { GroupChannel } from \"@sendbird/chat/groupChannel\";\nimport { AdminMessage, BaseMessage, MessageListParams } from \"@sendbird/chat/message\";\n\nimport { NotficationChannelStateInterface, initialState } from \"./initialState\";\nimport { actionTypes, ActionType } from \"./actionTypes\";\nimport compareIds from '../../../../utils/compareIds';\nimport { filterMessageListParams } from '../../../../utils';\nimport { MAX_MESSAGE_COUNT } from \"../consts\";\n\nexport declare type Action = {\n type: ActionType;\n payload?: any;\n}\n\nexport function reducer(\n state: NotficationChannelStateInterface,\n action: Action,\n): NotficationChannelStateInterface {\n switch (action?.type) {\n case actionTypes.SET_LAST_SEEN: {\n return {\n ...state,\n lastSeen: action?.payload?.lastSeen as number,\n };\n }\n case actionTypes.SHOW_DELETE_MODAL: {\n return {\n ...state,\n showDeleteModal: action?.payload?.showDeleteModal as boolean,\n messageToDelete: action?.payload?.message as BaseMessage,\n };\n }\n case actionTypes.FETCH_CHANNEL_START: {\n return {\n ...initialState,\n messageListParams: action?.payload?.messageListParams as MessageListParams,\n };\n }\n case actionTypes.FETCH_CHANNEL_SUCCESS: {\n return {\n ...state,\n currentNotificationChannel: action?.payload?.channel as GroupChannel,\n };\n }\n case actionTypes.FETCH_CHANNEL_FAILURE: {\n return {\n ...state,\n uiState: 'invalid',\n };\n }\n case actionTypes.RESET_MESSAGES: {\n return {\n ...state,\n allMessages: [],\n };\n }\n case actionTypes.FETCH_INITIAL_MESSAGES_START: {\n return {\n ...state,\n uiState: 'loading',\n };\n }\n case actionTypes.FETCH_INITIAL_MESSAGES_SUCCESS: {\n const messages = action.payload.messages as BaseMessage[] || [];\n return {\n ...state,\n allMessages: messages,\n uiState: 'initialized',\n hasMore: messages?.length === MAX_MESSAGE_COUNT,\n };\n }\n case actionTypes.FETCH_INITIAL_MESSAGES_FAILURE: {\n return {\n ...state,\n uiState: 'invalid',\n };\n }\n case actionTypes.FETCH_PREV_MESSAGES_SUCCESS: {\n const channel = action.payload.channel as GroupChannel;\n const messages = action.payload.messages as BaseMessage[] || [];\n if (channel?.url !== state?.currentNotificationChannel?.url) {\n return state;\n }\n\n const deDuplucateAllMessages = state.allMessages.filter((m) => {\n return !messages.find((m2) => compareIds(m.messageId, m2.messageId));\n });\n return {\n ...state,\n hasMore: messages?.length === MAX_MESSAGE_COUNT,\n allMessages: [\n ...deDuplucateAllMessages,\n ...messages,\n ],\n };\n }\n case actionTypes.FETCH_PREV_MESSAGES_FAILURE: {\n return state;\n }\n case actionTypes.ON_MESSAGE_RECEIVED: {\n const channel = action.payload.channel as GroupChannel;\n const message = action.payload.message as AdminMessage;\n if (channel?.url !== state?.currentNotificationChannel?.url) {\n return state;\n }\n // filter out messaegs using MessageListQuery\n if (state?.messageListParams && !filterMessageListParams(state?.messageListParams, message)) {\n return state;\n }\n return {\n ...state,\n allMessages: [\n message,\n ...state?.allMessages,\n ]\n };\n }\n case actionTypes.ON_MESSAGE_UPDATED: {\n const channel = action.payload.channel as GroupChannel;\n const message = action.payload.message as BaseMessage;\n if (channel?.url !== state?.currentNotificationChannel?.url) {\n return state;\n }\n return {\n ...state,\n allMessages: state?.allMessages?.map((m) => {\n if (m?.messageId === message?.messageId) {\n return message;\n }\n return m;\n }),\n };\n }\n case actionTypes.ON_MESSAGE_DELETED: {\n const channel = action.payload.channel as GroupChannel;\n const message = action.payload.message as BaseMessage;\n if (channel?.url !== state?.currentNotificationChannel?.url) {\n return state;\n }\n return {\n ...state,\n allMessages: state.allMessages.filter((m) => (\n !compareIds(m.messageId, message?.messageId)\n )),\n };\n }\n case actionTypes.ON_CHANNEL_DELETED: {\n const channelUrl = action.payload.channelUrl as string;\n if (channelUrl !== state?.currentNotificationChannel?.url) {\n return state;\n }\n return {\n ...state,\n currentNotificationChannel: null,\n uiState: 'invalid',\n };\n }\n default: {\n return state;\n }\n }\n}\n","import React, { useEffect } from 'react';\nimport { GroupChannel, GroupChannelHandler, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\n\nimport { actionTypes } from '../dux/actionTypes';\nimport { Logger } from '../../../../lib/SendbirdState';\nimport { Action } from '../dux/reducers';\nimport uuidv4 from '../../../../utils/uuid';\nimport compareIds from '../../../../utils/compareIds';\n\ntype DynamicParams = {\n currentChannel: GroupChannel;\n sdkInit: boolean;\n};\n\ntype StaticParams = {\n notificationsDispatcher: React.Dispatch<Action>;\n sdk: SendbirdGroupChat;\n logger: Logger;\n};\n\nfunction useEventListener({ currentChannel, sdkInit }: DynamicParams, {\n notificationsDispatcher,\n sdk,\n logger,\n}: StaticParams): void {\n useEffect(() => {\n const channelUrl = currentChannel?.url;\n const channelHandlerId = uuidv4();\n if (channelUrl && sdkInit) {\n const channelHandler: GroupChannelHandler = {\n onMessageReceived: (channel, message) => {\n if (compareIds(channel?.url, channelUrl)) {\n logger.info('NotificationChannel | useHandleChannelEvents: onMessageReceived', message);\n notificationsDispatcher({\n type: actionTypes.ON_MESSAGE_RECEIVED,\n payload: { channel, message },\n });\n const _channel = channel as GroupChannel;\n _channel?.markAsRead();\n }\n },\n onMessageUpdated: (channel, message) => {\n logger.info('NotificationChannel | useHandleChannelEvents: onMessageUpdated', message);\n notificationsDispatcher({\n type: actionTypes.ON_MESSAGE_UPDATED,\n payload: { channel, message },\n });\n },\n onMessageDeleted: (channel, messageId) => {\n logger.info('NotificationChannel | useHandleChannelEvents: onMessageDeleted', { channel, messageId });\n notificationsDispatcher({\n type: actionTypes.ON_MESSAGE_DELETED,\n payload: { channel, messageId },\n });\n },\n onChannelDeleted: (channelUrl) => {\n logger.info('NotificationChannel | useHandleChannelEvents: onChannelDeleted', { channelUrl });\n\n },\n };\n logger.info('NotificationChannel | useHandleChannelEvents: Setup event handler', { channelHandlerId, channelHandler });\n // Add this group channel handler to the Sendbird chat instance\n sdk.groupChannel?.addGroupChannelHandler(channelHandlerId, new GroupChannelHandler(channelHandler));\n }\n return () => {\n if (sdk?.groupChannel?.removeGroupChannelHandler) {\n logger.info('NotificationChannel | useHandleChannelEvents: Removing message reciver handler', channelHandlerId);\n sdk.groupChannel.removeGroupChannelHandler(channelHandlerId);\n } else if (sdk?.groupChannel) {\n logger.error('Channel | useHandleChannelEvents: Not found the removeGroupChannelHandler');\n }\n }\n }, [currentChannel?.url, sdkInit]);\n}\n\nexport default useEventListener;\n","import React, { useCallback } from 'react';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport { actionTypes } from '../dux/actionTypes';\nimport { Logger } from '../../../../lib/SendbirdState';\nimport { Action } from '../dux/reducers';\nimport { BaseMessage, MessageListParams } from '@sendbird/chat/message';\n\ntype DynamicParams = {\n channel: GroupChannel;\n sdkInit: boolean;\n oldestMessageTimeStamp: number;\n};\n\ntype StaticParams = {\n messageListParams: MessageListParams;\n notificationsDispatcher: React.Dispatch<Action>;\n logger: Logger;\n};\n\nexport type NotificationFetchMoreCb = (value: [BaseMessage[] | null, Error | null]) => void;\n\nfunction useFetchMore({ channel, sdkInit, oldestMessageTimeStamp }: DynamicParams, {\n logger,\n notificationsDispatcher,\n messageListParams,\n}: StaticParams): (cb: NotificationFetchMoreCb) => void {\n return useCallback((cb) => {\n logger.info('NotificationChannel: Fetching messages', { channel, messageListParams });\n\n channel.getMessagesByTimestamp(\n oldestMessageTimeStamp || new Date().getTime(),\n messageListParams,\n )\n .then((messages) => {\n logger.info('NotificationChannel: Fetching messages success', messages);\n notificationsDispatcher({\n type: actionTypes.FETCH_PREV_MESSAGES_SUCCESS,\n payload: { channel, messages },\n });\n cb([messages, null]);\n })\n .catch((error) => {\n logger.error('NotificationChannel: Fetching messages failed', error);\n notificationsDispatcher({\n type: actionTypes.FETCH_PREV_MESSAGES_FAILURE,\n payload: { channel },\n });\n cb([null, error]);\n });\n }, [channel, oldestMessageTimeStamp, sdkInit]);\n}\n\nexport default useFetchMore;\n","import React, {\n useReducer,\n useRef,\n useEffect,\n} from 'react';\nimport { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\n\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { NotficationChannelStateInterface, initialState } from './dux/initialState';\nimport useInitialize from './hooks/useInitialize';\nimport { reducer } from './dux/reducers';\nimport { BaseMessage, MessageListParams } from '@sendbird/chat/message';\nimport useEventListener from './hooks/useEventListener';\nimport useFetchMore, { NotificationFetchMoreCb } from './hooks/useFetchMore';\nimport { actionTypes } from './dux/actionTypes';\nimport { Action } from '@sendbird/uikit-message-template';\n\nexport type NotficationChannelContextProps = {\n channelUrl: string;\n children?: React.ReactElement;\n messageListParams?: MessageListParams;\n lastSeen?: number;\n handleWebAction?(event: React.SyntheticEvent, action: Action, message: BaseMessage);\n handleCustomAction?(event: React.SyntheticEvent, action: Action, message: BaseMessage);\n handlePredefinedAction?(event: React.SyntheticEvent, action: Action, message: BaseMessage);\n};\n\nexport interface NotficationChannelProviderInterface extends NotficationChannelStateInterface,\n NotficationChannelContextProps {\n notificationsDispatcher: React.Dispatch<any>;\n oldestMessageTimeStamp: number;\n scrollRef: React.RefObject<HTMLDivElement>;\n onFetchMore: (cb: NotificationFetchMoreCb) => void;\n }\n\nconst NotficationChannelContext = React.createContext<NotficationChannelProviderInterface | null>(undefined);\nconst NotficationChannelProvider: React.FC<NotficationChannelContextProps> = (\n props: NotficationChannelContextProps,\n) => {\n const {\n channelUrl,\n children,\n messageListParams,\n lastSeen,\n handleWebAction,\n handleCustomAction,\n handlePredefinedAction,\n } = props;\n\n const globalStore = useSendbirdStateContext();\n const sdk = globalStore?.stores?.sdkStore?.sdk as SendbirdGroupChat;\n const logger = globalStore?.config?.logger;\n const sdkInit = globalStore?.stores?.sdkStore?.initialized;\n const [ notificationsStore, notificationsDispatcher ] = useReducer(reducer, initialState);\n const {\n uiState,\n allMessages,\n currentNotificationChannel,\n hasMore,\n showDeleteModal,\n messageToDelete,\n } = notificationsStore;\n const oldestMessageTimeStamp = allMessages?.[allMessages?.length - 1]?.createdAt || 0;\n\n // intialize\n useInitialize({ channelUrl, sdkInit, messageListParams }, {\n notificationsDispatcher,\n sdk,\n logger,\n });\n\n // event listener\n useEventListener({ currentChannel: currentNotificationChannel, sdkInit }, {\n notificationsDispatcher,\n sdk,\n logger,\n });\n\n const onFetchMore = useFetchMore({\n channel: currentNotificationChannel,\n sdkInit,\n oldestMessageTimeStamp,\n }, {\n notificationsDispatcher,\n messageListParams: notificationsStore.messageListParams,\n logger,\n });\n\n useEffect(() => {\n notificationsDispatcher({\n type: actionTypes.SET_LAST_SEEN,\n payload: { lastSeen },\n })\n }, [lastSeen]);\n\n const scrollRef = useRef<HTMLDivElement>(null);\n\n const defaulthandlePredefinedAction = (event: React.SyntheticEvent, action: Action, message: BaseMessage) => {\n logger.info('NotficationChannel: handlePredefinedAction', { event, action, message });\n if (action?.type === 'uikit' && action?.data === 'sendbirduikit://delete') {\n notificationsDispatcher({\n type: actionTypes.SHOW_DELETE_MODAL,\n payload: { message, showDeleteModal: true },\n });\n }\n }\n return (\n <NotficationChannelContext.Provider value={{\n // props\n channelUrl,\n handleWebAction,\n handleCustomAction,\n handlePredefinedAction: handlePredefinedAction || defaulthandlePredefinedAction,\n // store\n uiState,\n messageListParams: notificationsStore.messageListParams,\n lastSeen: notificationsStore?.lastSeen,\n allMessages,\n showDeleteModal,\n currentNotificationChannel,\n hasMore,\n messageToDelete,\n // dispatcher\n notificationsDispatcher,\n // derived info\n oldestMessageTimeStamp,\n scrollRef,\n onFetchMore,\n }}>\n {children}\n </NotficationChannelContext.Provider>\n );\n}\n\nexport type UseNotficationChannelType = () => NotficationChannelProviderInterface;\nconst useNotficationChannelContext: UseNotficationChannelType = () => React.useContext(NotficationChannelContext);\n\nexport {\n NotficationChannelProvider,\n useNotficationChannelContext,\n};\n"],"names":["initialState","uiState","allMessages","currentNotificationChannel","hasMore","messageListParams","lastSeen","showDeleteModal","messageToDelete","actionTypes","FETCH_CHANNEL_START","FETCH_CHANNEL_SUCCESS","FETCH_CHANNEL_FAILURE","RESET_MESSAGES","FETCH_INITIAL_MESSAGES_START","FETCH_INITIAL_MESSAGES_SUCCESS","FETCH_INITIAL_MESSAGES_FAILURE","FETCH_PREV_MESSAGES_SUCCESS","FETCH_PREV_MESSAGES_FAILURE","SET_LAST_SEEN","SHOW_DELETE_MODAL","ON_MESSAGE_RECEIVED","ON_MESSAGE_UPDATED","ON_MESSAGE_DELETED","ON_CHANNEL_DELETED","MAX_MESSAGE_COUNT","useInitialize","_a","_b","channelUrl","sdkInit","notificationsDispatcher","sdk","logger","useEffect","messageListParams_1","__assign","nextResultSize","prevResultSize","reverse","isInclusive","includeReactions","info","messageListParams_","type","payload","groupChannel","getChannel","then","channel","myLastRead","getMessagesByTimestamp","Date","getTime","messages","markAsRead","catch","error","reducer","state","action","_c","message","_d","_e","length","messages_1","url","_f","deDuplucateAllMessages","filter","m","find","m2","compareIds","messageId","_g","filterMessageListParams","__spreadArray","message_1","_h","_j","map","message_2","_k","_l","useEventListener","currentChannel","channelHandlerId","uuidv4","channelHandler","onMessageReceived","_channel","onMessageUpdated","onMessageDeleted","onChannelDeleted","addGroupChannelHandler","GroupChannelHandler","removeGroupChannelHandler","useFetchMore","oldestMessageTimeStamp","useCallback","cb","NotficationChannelContext","React","createContext","undefined","NotficationChannelProvider","props","children","handleWebAction","handleCustomAction","handlePredefinedAction","globalStore","useSendbirdStateContext","stores","sdkStore","config","initialized","useReducer","notificationsStore","createdAt","onFetchMore","scrollRef","useRef","defaulthandlePredefinedAction","event","data","useNotficationChannelContext","useContext"],"mappings":"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"}