@sendbird/uikit-react 3.4.5 → 3.4.6-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (832) hide show
  1. package/App.js +103 -128
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +14 -0
  4. package/Channel/components/ChannelHeader.js +26 -27
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +54 -59
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +36 -37
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +5 -5
  11. package/Channel/components/FrozenNotification.js.map +1 -1
  12. package/Channel/components/Message.js +106 -136
  13. package/Channel/components/Message.js.map +1 -1
  14. package/Channel/components/MessageInput.js +67 -87
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageList.js +95 -140
  17. package/Channel/components/MessageList.js.map +1 -1
  18. package/Channel/components/RemoveMessageModal.js +20 -21
  19. package/Channel/components/RemoveMessageModal.js.map +1 -1
  20. package/Channel/components/SuggestedMentionList.js +59 -90
  21. package/Channel/components/SuggestedMentionList.js.map +1 -1
  22. package/Channel/components/TypingIndicator.js +19 -33
  23. package/Channel/components/TypingIndicator.js.map +1 -1
  24. package/Channel/components/UnreadCount.js +9 -10
  25. package/Channel/components/UnreadCount.js.map +1 -1
  26. package/Channel/context.js +14 -14
  27. package/Channel.js +39 -38
  28. package/Channel.js.map +1 -1
  29. package/ChannelList/components/AddChannel.js +19 -23
  30. package/ChannelList/components/AddChannel.js.map +1 -1
  31. package/ChannelList/components/ChannelListHeader.js +14 -18
  32. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  33. package/ChannelList/components/ChannelListUI.js +49 -64
  34. package/ChannelList/components/ChannelListUI.js.map +1 -1
  35. package/ChannelList/components/ChannelPreview.js +43 -49
  36. package/ChannelList/components/ChannelPreview.js.map +1 -1
  37. package/ChannelList/components/ChannelPreviewAction.js +19 -22
  38. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  39. package/ChannelList/context.js +8 -8
  40. package/ChannelList.js +29 -30
  41. package/ChannelList.js.map +1 -1
  42. package/{ChannelListProvider-10fe7340.js → ChannelListProvider-45cf488b.js} +77 -172
  43. package/ChannelListProvider-45cf488b.js.map +1 -0
  44. package/{ChannelProvider-4ac82784.js → ChannelProvider-9a52ed96.js} +185 -340
  45. package/ChannelProvider-9a52ed96.js.map +1 -0
  46. package/ChannelSettings/components/ChannelProfile.js +13 -21
  47. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  48. package/ChannelSettings/components/ChannelSettingsUI.js +24 -31
  49. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  50. package/ChannelSettings/components/EditDetailsModal.js +20 -29
  51. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  52. package/ChannelSettings/components/LeaveChannel.js +18 -26
  53. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  54. package/ChannelSettings/components/ModerationPanel.js +66 -109
  55. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  56. package/ChannelSettings/components/UserListItem.js +21 -21
  57. package/ChannelSettings/components/UserListItem.js.map +1 -1
  58. package/ChannelSettings/components/UserPanel.js +16 -19
  59. package/ChannelSettings/components/UserPanel.js.map +1 -1
  60. package/ChannelSettings/context.js +22 -30
  61. package/ChannelSettings/context.js.map +1 -1
  62. package/ChannelSettings.js +17 -17
  63. package/ChannelSettings.js.map +1 -1
  64. package/CreateChannel/components/CreateChannelUI.js +17 -19
  65. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  66. package/CreateChannel/components/InviteUsers.js +35 -56
  67. package/CreateChannel/components/InviteUsers.js.map +1 -1
  68. package/CreateChannel/components/SelectChannelType.js +11 -17
  69. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  70. package/CreateChannel/context.js +4 -4
  71. package/CreateChannel.js +18 -18
  72. package/CreateChannel.js.map +1 -1
  73. package/{CreateChannelProvider-11045f46.js → CreateChannelProvider-8c395571.js} +9 -16
  74. package/{CreateChannelProvider-11045f46.js.map → CreateChannelProvider-8c395571.js.map} +1 -1
  75. package/CreateOpenChannel/components/CreateOpenChannelUI.js +17 -25
  76. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  77. package/CreateOpenChannel/context.js +7 -12
  78. package/CreateOpenChannel/context.js.map +1 -1
  79. package/CreateOpenChannel.js +14 -14
  80. package/CreateOpenChannel.js.map +1 -1
  81. package/EditUserProfile/components/EditUserProfileUI.js +11 -12
  82. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  83. package/EditUserProfile/context.js +0 -2
  84. package/EditUserProfile/context.js.map +1 -1
  85. package/EditUserProfile.js +13 -14
  86. package/EditUserProfile.js.map +1 -1
  87. package/{LocalizationContext-654ae04f.js → LocalizationContext-428ea690.js} +3 -5
  88. package/{LocalizationContext-654ae04f.js.map → LocalizationContext-428ea690.js.map} +1 -1
  89. package/{MediaQueryContext-e791a4d1.js → MediaQueryContext-e4d4fb2a.js} +14 -24
  90. package/MediaQueryContext-e4d4fb2a.js.map +1 -0
  91. package/{MemberList-6f3c8288.js → MemberList-f0614320.js} +35 -68
  92. package/MemberList-f0614320.js.map +1 -0
  93. package/Message/context.js +3 -7
  94. package/Message/context.js.map +1 -1
  95. package/MessageSearch/components/MessageSearchUI.js +33 -47
  96. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  97. package/MessageSearch/context.js +44 -79
  98. package/MessageSearch/context.js.map +1 -1
  99. package/MessageSearch.js +25 -35
  100. package/MessageSearch.js.map +1 -1
  101. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  102. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  103. package/OpenChannel/components/OpenChannelHeader.js +16 -18
  104. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  105. package/OpenChannel/components/OpenChannelInput.js +25 -28
  106. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  107. package/OpenChannel/components/OpenChannelMessage.js +46 -70
  108. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  109. package/OpenChannel/components/OpenChannelMessageList.js +44 -90
  110. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  111. package/OpenChannel/components/OpenChannelUI.js +43 -47
  112. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  113. package/OpenChannel/context.js +8 -8
  114. package/OpenChannel.js +32 -30
  115. package/OpenChannel.js.map +1 -1
  116. package/OpenChannelList/components/OpenChannelListUI.js +31 -45
  117. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  118. package/OpenChannelList/components/OpenChannelPreview.js +7 -7
  119. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  120. package/OpenChannelList/context.js +3 -3
  121. package/OpenChannelList.js +24 -23
  122. package/OpenChannelList.js.map +1 -1
  123. package/{OpenChannelListProvider-eb189b41.js → OpenChannelListProvider-1657d7da.js} +39 -66
  124. package/OpenChannelListProvider-1657d7da.js.map +1 -0
  125. package/{OpenChannelProvider-e418b369.js → OpenChannelProvider-de3ddd2b.js} +137 -293
  126. package/OpenChannelProvider-de3ddd2b.js.map +1 -0
  127. package/OpenChannelSettings/components/EditDetailsModal.js +23 -31
  128. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  129. package/OpenChannelSettings/components/OpenChannelProfile.js +14 -18
  130. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  131. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -27
  132. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  133. package/OpenChannelSettings/components/OperatorUI.js +58 -110
  134. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  135. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  136. package/OpenChannelSettings/context.js +15 -26
  137. package/OpenChannelSettings/context.js.map +1 -1
  138. package/OpenChannelSettings.js +17 -17
  139. package/OpenChannelSettings.js.map +1 -1
  140. package/README.md +25 -5
  141. package/{RemoveMessageModal-938b400d.js → RemoveMessageModal-cced59b5.js} +5 -6
  142. package/{RemoveMessageModal-938b400d.js.map → RemoveMessageModal-cced59b5.js.map} +1 -1
  143. package/SendbirdProvider.js +260 -285
  144. package/SendbirdProvider.js.map +1 -1
  145. package/Thread/components/ParentMessageInfo.js +81 -109
  146. package/Thread/components/ParentMessageInfo.js.map +1 -1
  147. package/Thread/components/ParentMessageInfoItem.js +34 -41
  148. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  149. package/Thread/components/ThreadHeader.js +10 -11
  150. package/Thread/components/ThreadHeader.js.map +1 -1
  151. package/Thread/components/ThreadList.js +45 -53
  152. package/Thread/components/ThreadList.js.map +1 -1
  153. package/Thread/components/ThreadListItem.js +120 -148
  154. package/Thread/components/ThreadListItem.js.map +1 -1
  155. package/Thread/components/ThreadMessageInput.js +65 -83
  156. package/Thread/components/ThreadMessageInput.js.map +1 -1
  157. package/Thread/components/ThreadUI.js +75 -94
  158. package/Thread/components/ThreadUI.js.map +1 -1
  159. package/Thread/context/types.js +0 -5
  160. package/Thread/context/types.js.map +1 -1
  161. package/Thread/context.js +8 -8
  162. package/Thread.js +56 -55
  163. package/Thread.js.map +1 -1
  164. package/{ThreadProvider-faf3df5d.js → ThreadProvider-c33f66a4.js} +164 -282
  165. package/ThreadProvider-c33f66a4.js.map +1 -0
  166. package/{UserProfileContext-1996d4d2.js → UserProfileContext-576f1ef9.js} +1 -4
  167. package/{UserProfileContext-1996d4d2.js.map → UserProfileContext-576f1ef9.js.map} +1 -1
  168. package/{VoiceMessageInputWrapper-59373f20.js → VoiceMessageInputWrapper-8f6bfd36.js} +48 -57
  169. package/VoiceMessageInputWrapper-8f6bfd36.js.map +1 -0
  170. package/VoicePlayer/context.js +3 -3
  171. package/VoicePlayer/useVoicePlayer.js +14 -26
  172. package/VoicePlayer/useVoicePlayer.js.map +1 -1
  173. package/VoiceRecorder/context.js +26 -172
  174. package/VoiceRecorder/context.js.map +1 -1
  175. package/VoiceRecorder/useVoiceRecorder.js +14 -26
  176. package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  177. package/WebAudioUtils-f9237c94.js +123 -0
  178. package/WebAudioUtils-f9237c94.js.map +1 -0
  179. package/{_rollupPluginBabelHelpers-e908c50d.js → _rollupPluginBabelHelpers-6e60e429.js} +16 -10
  180. package/_rollupPluginBabelHelpers-6e60e429.js.map +1 -0
  181. package/cjs/App.js +103 -128
  182. package/cjs/App.js.map +1 -1
  183. package/cjs/Channel/components/ChannelHeader.js +26 -27
  184. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  185. package/cjs/Channel/components/ChannelUI.js +54 -59
  186. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  187. package/cjs/Channel/components/FileViewer.js +36 -37
  188. package/cjs/Channel/components/FileViewer.js.map +1 -1
  189. package/cjs/Channel/components/FrozenNotification.js +5 -5
  190. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  191. package/cjs/Channel/components/Message.js +110 -140
  192. package/cjs/Channel/components/Message.js.map +1 -1
  193. package/cjs/Channel/components/MessageInput.js +67 -87
  194. package/cjs/Channel/components/MessageInput.js.map +1 -1
  195. package/cjs/Channel/components/MessageList.js +95 -140
  196. package/cjs/Channel/components/MessageList.js.map +1 -1
  197. package/cjs/Channel/components/RemoveMessageModal.js +20 -21
  198. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  199. package/cjs/Channel/components/SuggestedMentionList.js +59 -90
  200. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  201. package/cjs/Channel/components/TypingIndicator.js +19 -33
  202. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  203. package/cjs/Channel/components/UnreadCount.js +9 -10
  204. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  205. package/cjs/Channel/context.js +14 -14
  206. package/cjs/Channel.js +39 -38
  207. package/cjs/Channel.js.map +1 -1
  208. package/cjs/ChannelList/components/AddChannel.js +19 -23
  209. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  210. package/cjs/ChannelList/components/ChannelListHeader.js +14 -18
  211. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  212. package/cjs/ChannelList/components/ChannelListUI.js +49 -64
  213. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  214. package/cjs/ChannelList/components/ChannelPreview.js +43 -49
  215. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  216. package/cjs/ChannelList/components/ChannelPreviewAction.js +19 -22
  217. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  218. package/cjs/ChannelList/context.js +8 -8
  219. package/cjs/ChannelList.js +29 -30
  220. package/cjs/ChannelList.js.map +1 -1
  221. package/cjs/{ChannelListProvider-d4f91fc4.js → ChannelListProvider-f74d4451.js} +77 -172
  222. package/cjs/ChannelListProvider-f74d4451.js.map +1 -0
  223. package/cjs/{ChannelProvider-af0b997c.js → ChannelProvider-fcb80591.js} +185 -340
  224. package/cjs/ChannelProvider-fcb80591.js.map +1 -0
  225. package/cjs/ChannelSettings/components/ChannelProfile.js +13 -21
  226. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  227. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +24 -31
  228. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  229. package/cjs/ChannelSettings/components/EditDetailsModal.js +20 -29
  230. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  231. package/cjs/ChannelSettings/components/LeaveChannel.js +18 -26
  232. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  233. package/cjs/ChannelSettings/components/ModerationPanel.js +66 -109
  234. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  235. package/cjs/ChannelSettings/components/UserListItem.js +21 -21
  236. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  237. package/cjs/ChannelSettings/components/UserPanel.js +16 -19
  238. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  239. package/cjs/ChannelSettings/context.js +22 -30
  240. package/cjs/ChannelSettings/context.js.map +1 -1
  241. package/cjs/ChannelSettings.js +17 -17
  242. package/cjs/ChannelSettings.js.map +1 -1
  243. package/cjs/CreateChannel/components/CreateChannelUI.js +17 -19
  244. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  245. package/cjs/CreateChannel/components/InviteUsers.js +35 -56
  246. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  247. package/cjs/CreateChannel/components/SelectChannelType.js +11 -17
  248. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  249. package/cjs/CreateChannel/context.js +4 -4
  250. package/cjs/CreateChannel.js +18 -18
  251. package/cjs/CreateChannel.js.map +1 -1
  252. package/cjs/{CreateChannelProvider-c4ad28a8.js → CreateChannelProvider-1be5d0c0.js} +9 -16
  253. package/cjs/{CreateChannelProvider-c4ad28a8.js.map → CreateChannelProvider-1be5d0c0.js.map} +1 -1
  254. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +17 -25
  255. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  256. package/cjs/CreateOpenChannel/context.js +7 -12
  257. package/cjs/CreateOpenChannel/context.js.map +1 -1
  258. package/cjs/CreateOpenChannel.js +14 -14
  259. package/cjs/CreateOpenChannel.js.map +1 -1
  260. package/cjs/EditUserProfile/components/EditUserProfileUI.js +11 -12
  261. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  262. package/cjs/EditUserProfile/context.js +0 -2
  263. package/cjs/EditUserProfile/context.js.map +1 -1
  264. package/cjs/EditUserProfile.js +13 -14
  265. package/cjs/EditUserProfile.js.map +1 -1
  266. package/cjs/{LocalizationContext-01fceac0.js → LocalizationContext-9b216d02.js} +3 -5
  267. package/cjs/{LocalizationContext-01fceac0.js.map → LocalizationContext-9b216d02.js.map} +1 -1
  268. package/cjs/{MediaQueryContext-4978c777.js → MediaQueryContext-ea137add.js} +14 -24
  269. package/cjs/MediaQueryContext-ea137add.js.map +1 -0
  270. package/cjs/{MemberList-5c05b62f.js → MemberList-4f805690.js} +35 -68
  271. package/cjs/MemberList-4f805690.js.map +1 -0
  272. package/cjs/Message/context.js +3 -7
  273. package/cjs/Message/context.js.map +1 -1
  274. package/cjs/MessageSearch/components/MessageSearchUI.js +33 -47
  275. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  276. package/cjs/MessageSearch/context.js +44 -79
  277. package/cjs/MessageSearch/context.js.map +1 -1
  278. package/cjs/MessageSearch.js +25 -35
  279. package/cjs/MessageSearch.js.map +1 -1
  280. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  281. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  282. package/cjs/OpenChannel/components/OpenChannelHeader.js +16 -18
  283. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  284. package/cjs/OpenChannel/components/OpenChannelInput.js +25 -28
  285. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  286. package/cjs/OpenChannel/components/OpenChannelMessage.js +46 -70
  287. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  288. package/cjs/OpenChannel/components/OpenChannelMessageList.js +48 -94
  289. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  290. package/cjs/OpenChannel/components/OpenChannelUI.js +43 -47
  291. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  292. package/cjs/OpenChannel/context.js +8 -8
  293. package/cjs/OpenChannel.js +32 -30
  294. package/cjs/OpenChannel.js.map +1 -1
  295. package/cjs/OpenChannelList/components/OpenChannelListUI.js +31 -45
  296. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  297. package/cjs/OpenChannelList/components/OpenChannelPreview.js +7 -7
  298. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  299. package/cjs/OpenChannelList/context.js +3 -3
  300. package/cjs/OpenChannelList.js +24 -23
  301. package/cjs/OpenChannelList.js.map +1 -1
  302. package/cjs/{OpenChannelListProvider-3be4b8a5.js → OpenChannelListProvider-6883fa4a.js} +39 -66
  303. package/cjs/OpenChannelListProvider-6883fa4a.js.map +1 -0
  304. package/cjs/{OpenChannelProvider-56af9a0e.js → OpenChannelProvider-cb41bba9.js} +137 -293
  305. package/cjs/OpenChannelProvider-cb41bba9.js.map +1 -0
  306. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +23 -31
  307. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  308. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +14 -18
  309. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  310. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -27
  311. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  312. package/cjs/OpenChannelSettings/components/OperatorUI.js +58 -110
  313. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  314. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  315. package/cjs/OpenChannelSettings/context.js +15 -26
  316. package/cjs/OpenChannelSettings/context.js.map +1 -1
  317. package/cjs/OpenChannelSettings.js +17 -17
  318. package/cjs/OpenChannelSettings.js.map +1 -1
  319. package/cjs/{RemoveMessageModal-31ff9edc.js → RemoveMessageModal-193a514d.js} +5 -6
  320. package/cjs/{RemoveMessageModal-31ff9edc.js.map → RemoveMessageModal-193a514d.js.map} +1 -1
  321. package/cjs/SendbirdProvider.js +264 -289
  322. package/cjs/SendbirdProvider.js.map +1 -1
  323. package/cjs/Thread/components/ParentMessageInfo.js +81 -109
  324. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  325. package/cjs/Thread/components/ParentMessageInfoItem.js +34 -41
  326. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  327. package/cjs/Thread/components/ThreadHeader.js +10 -11
  328. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  329. package/cjs/Thread/components/ThreadList.js +45 -53
  330. package/cjs/Thread/components/ThreadList.js.map +1 -1
  331. package/cjs/Thread/components/ThreadListItem.js +120 -148
  332. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  333. package/cjs/Thread/components/ThreadMessageInput.js +65 -83
  334. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  335. package/cjs/Thread/components/ThreadUI.js +75 -94
  336. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  337. package/cjs/Thread/context/types.js +0 -5
  338. package/cjs/Thread/context/types.js.map +1 -1
  339. package/cjs/Thread/context.js +8 -8
  340. package/cjs/Thread.js +56 -55
  341. package/cjs/Thread.js.map +1 -1
  342. package/cjs/{ThreadProvider-12784adf.js → ThreadProvider-c3623e5f.js} +164 -282
  343. package/cjs/ThreadProvider-c3623e5f.js.map +1 -0
  344. package/cjs/{UserProfileContext-c4642438.js → UserProfileContext-ad079e6d.js} +1 -4
  345. package/cjs/{UserProfileContext-c4642438.js.map → UserProfileContext-ad079e6d.js.map} +1 -1
  346. package/cjs/{VoiceMessageInputWrapper-3b5db880.js → VoiceMessageInputWrapper-1c4004d1.js} +47 -56
  347. package/cjs/VoiceMessageInputWrapper-1c4004d1.js.map +1 -0
  348. package/cjs/VoicePlayer/context.js +3 -3
  349. package/cjs/VoicePlayer/useVoicePlayer.js +14 -26
  350. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
  351. package/cjs/VoiceRecorder/context.js +25 -171
  352. package/cjs/VoiceRecorder/context.js.map +1 -1
  353. package/cjs/VoiceRecorder/useVoiceRecorder.js +14 -26
  354. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  355. package/cjs/WebAudioUtils-33ee4d42.js +126 -0
  356. package/cjs/WebAudioUtils-33ee4d42.js.map +1 -0
  357. package/cjs/{_rollupPluginBabelHelpers-994cd1da.js → _rollupPluginBabelHelpers-440ec6e2.js} +16 -10
  358. package/cjs/_rollupPluginBabelHelpers-440ec6e2.js.map +1 -0
  359. package/cjs/{color-8f9fe57f.js → color-8b30623d.js} +1 -10
  360. package/cjs/color-8b30623d.js.map +1 -0
  361. package/cjs/{compareIds-b77b66f3.js → compareIds-3dbb4f79.js} +4 -5
  362. package/cjs/compareIds-3dbb4f79.js.map +1 -0
  363. package/cjs/{const-e03cb4c1.js → const-1e096998.js} +1 -2
  364. package/cjs/{const-e03cb4c1.js.map → const-1e096998.js.map} +1 -1
  365. package/cjs/{const-35f8be84.js → const-7bb85121.js} +1 -1
  366. package/cjs/{const-35f8be84.js.map → const-7bb85121.js.map} +1 -1
  367. package/cjs/{consts-69fc20be.js → consts-02c09d93.js} +8 -11
  368. package/cjs/{consts-69fc20be.js.map → consts-02c09d93.js.map} +1 -1
  369. package/cjs/{consts-aabb33e0.js → consts-3ebe6f94.js} +1 -1
  370. package/cjs/{consts-aabb33e0.js.map → consts-3ebe6f94.js.map} +1 -1
  371. package/cjs/{consts-b29bd4d5.js → consts-54b7b2b1.js} +1 -1
  372. package/cjs/{consts-b29bd4d5.js.map → consts-54b7b2b1.js.map} +1 -1
  373. package/cjs/{consts-956b1221.js → consts-d1f579c4.js} +1 -1
  374. package/cjs/{consts-956b1221.js.map → consts-d1f579c4.js.map} +1 -1
  375. package/cjs/{context-d9e248df.js → context-855dcb8e.js} +2 -2
  376. package/cjs/{context-d9e248df.js.map → context-855dcb8e.js.map} +1 -1
  377. package/cjs/dist/index.css +2 -1
  378. package/cjs/dist/index.css.map +1 -1
  379. package/cjs/handlers/OpenChannelHandler.js.map +1 -1
  380. package/cjs/handlers/SessionHandler.js.map +1 -1
  381. package/cjs/{index-7c5d21c4.js → index-02729806.js} +1 -1
  382. package/cjs/{index-7c5d21c4.js.map → index-02729806.js.map} +1 -1
  383. package/cjs/{index-b9fbe704.js → index-15a62d58.js} +18 -27
  384. package/cjs/index-15a62d58.js.map +1 -0
  385. package/cjs/{index-26a1e861.js → index-3d6159df.js} +2 -22
  386. package/cjs/{index-26a1e861.js.map → index-3d6159df.js.map} +1 -1
  387. package/cjs/index-5bba1fd5.js +41 -0
  388. package/cjs/index-5bba1fd5.js.map +1 -0
  389. package/cjs/{index-d41db9c1.js → index-6d24cef9.js} +30 -44
  390. package/cjs/index-6d24cef9.js.map +1 -0
  391. package/cjs/{index-aa908fcf.js → index-7f214e91.js} +13 -32
  392. package/cjs/index-7f214e91.js.map +1 -0
  393. package/cjs/{index-e3f00fd1.js → index-8a187344.js} +3 -3
  394. package/cjs/{index-e3f00fd1.js.map → index-8a187344.js.map} +1 -1
  395. package/cjs/{index-1e57cbdb.js → index-8a64de0e.js} +17 -33
  396. package/cjs/index-8a64de0e.js.map +1 -0
  397. package/cjs/{index-a7fa406f.js → index-8d42b734.js} +23 -27
  398. package/cjs/index-8d42b734.js.map +1 -0
  399. package/cjs/{index-603c2a7c.js → index-9e320445.js} +29 -33
  400. package/cjs/index-9e320445.js.map +1 -0
  401. package/cjs/{index-aeba3b06.js → index-a1141d68.js} +21 -22
  402. package/cjs/index-a1141d68.js.map +1 -0
  403. package/cjs/{index-1f02e60f.js → index-b95c8165.js} +2 -2
  404. package/cjs/{index-1f02e60f.js.map → index-b95c8165.js.map} +1 -1
  405. package/cjs/{index-72fd0294.js → index-d6f14382.js} +38 -142
  406. package/cjs/index-d6f14382.js.map +1 -0
  407. package/cjs/{index-36aaf992.js → index-d85616b2.js} +1 -1
  408. package/cjs/{index-36aaf992.js.map → index-d85616b2.js.map} +1 -1
  409. package/cjs/{index-959a4ab1.js → index-ecfe08c9.js} +2 -2
  410. package/cjs/{index-959a4ab1.js.map → index-ecfe08c9.js.map} +1 -1
  411. package/cjs/{index-c825cf5b.js → index-f8237241.js} +25 -52
  412. package/cjs/index-f8237241.js.map +1 -0
  413. package/cjs/index.js +49 -49
  414. package/cjs/lame.all.js.map +1 -1
  415. package/cjs/sendbirdSelectors.js +36 -94
  416. package/cjs/sendbirdSelectors.js.map +1 -1
  417. package/cjs/{stringSet-7330b627.js → stringSet-e52248ab.js} +2 -1
  418. package/cjs/stringSet-e52248ab.js.map +1 -0
  419. package/cjs/{tokenize-a5a20ef3.js → tokenize-c5dd544b.js} +30 -23
  420. package/cjs/tokenize-c5dd544b.js.map +1 -0
  421. package/cjs/{topics-7547922a.js → topics-09d72ec0.js} +1 -1
  422. package/cjs/topics-09d72ec0.js.map +1 -0
  423. package/cjs/{tslib.es6-ee1122c5.js → tslib.es6-957ba986.js} +2 -2
  424. package/cjs/tslib.es6-957ba986.js.map +1 -0
  425. package/cjs/{types-7daeb4a1.js → types-68cc0fcf.js} +1 -1
  426. package/cjs/types-68cc0fcf.js.map +1 -0
  427. package/cjs/ui/Accordion.js +12 -16
  428. package/cjs/ui/Accordion.js.map +1 -1
  429. package/cjs/ui/AccordionGroup.js +6 -8
  430. package/cjs/ui/AccordionGroup.js.map +1 -1
  431. package/cjs/ui/AdminMessage.js +5 -8
  432. package/cjs/ui/AdminMessage.js.map +1 -1
  433. package/cjs/ui/Avatar.js +23 -41
  434. package/cjs/ui/Avatar.js.map +1 -1
  435. package/cjs/ui/Badge.js +9 -9
  436. package/cjs/ui/Badge.js.map +1 -1
  437. package/cjs/ui/BottomSheet.js +5 -7
  438. package/cjs/ui/BottomSheet.js.map +1 -1
  439. package/cjs/ui/Button.js +13 -24
  440. package/cjs/ui/Button.js.map +1 -1
  441. package/cjs/ui/ChannelAvatar.js +9 -9
  442. package/cjs/ui/ChannelAvatar.js.map +1 -1
  443. package/cjs/ui/Checkbox.js +8 -10
  444. package/cjs/ui/Checkbox.js.map +1 -1
  445. package/cjs/ui/ConnectionStatus.js +4 -4
  446. package/cjs/ui/ConnectionStatus.js.map +1 -1
  447. package/cjs/ui/ContextMenu.js +40 -86
  448. package/cjs/ui/ContextMenu.js.map +1 -1
  449. package/cjs/ui/DateSeparator.js +9 -9
  450. package/cjs/ui/DateSeparator.js.map +1 -1
  451. package/cjs/ui/EmojiReactions.js +19 -24
  452. package/cjs/ui/EmojiReactions.js.map +1 -1
  453. package/cjs/ui/FileMessageItemBody.js +15 -16
  454. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  455. package/cjs/ui/FileViewer.js +22 -23
  456. package/cjs/ui/FileViewer.js.map +1 -1
  457. package/cjs/ui/Icon.js +0 -241
  458. package/cjs/ui/Icon.js.map +1 -1
  459. package/cjs/ui/IconButton.js +19 -22
  460. package/cjs/ui/IconButton.js.map +1 -1
  461. package/cjs/ui/ImageRenderer.js +27 -30
  462. package/cjs/ui/ImageRenderer.js.map +1 -1
  463. package/cjs/ui/Input.js +8 -10
  464. package/cjs/ui/Input.js.map +1 -1
  465. package/cjs/ui/Label.js +2 -2
  466. package/cjs/ui/LinkLabel.js +4 -3
  467. package/cjs/ui/LinkLabel.js.map +1 -1
  468. package/cjs/ui/Loader.js +7 -7
  469. package/cjs/ui/Loader.js.map +1 -1
  470. package/cjs/ui/MentionLabel.js +16 -22
  471. package/cjs/ui/MentionLabel.js.map +1 -1
  472. package/cjs/ui/MentionUserLabel.js +7 -7
  473. package/cjs/ui/MentionUserLabel.js.map +1 -1
  474. package/cjs/ui/MessageContent.js +118 -137
  475. package/cjs/ui/MessageContent.js.map +1 -1
  476. package/cjs/ui/MessageInput.js +82 -134
  477. package/cjs/ui/MessageInput.js.map +1 -1
  478. package/cjs/ui/MessageItemMenu.js +25 -31
  479. package/cjs/ui/MessageItemMenu.js.map +1 -1
  480. package/cjs/ui/MessageItemReactionMenu.js +12 -16
  481. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  482. package/cjs/ui/MessageSearchFileItem.js +22 -30
  483. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  484. package/cjs/ui/MessageSearchItem.js +18 -24
  485. package/cjs/ui/MessageSearchItem.js.map +1 -1
  486. package/cjs/ui/MessageStatus.js +10 -10
  487. package/cjs/ui/Modal.js +33 -34
  488. package/cjs/ui/Modal.js.map +1 -1
  489. package/cjs/ui/MutedAvatarOverlay.js +3 -3
  490. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  491. package/cjs/ui/OGMessageItemBody.js +27 -30
  492. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  493. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  494. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  495. package/cjs/ui/OpenChannelAvatar.js +11 -11
  496. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  497. package/cjs/ui/OpenchannelConversationHeader.js +10 -10
  498. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  499. package/cjs/ui/OpenchannelFileMessage.js +31 -44
  500. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  501. package/cjs/ui/OpenchannelOGMessage.js +39 -53
  502. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  503. package/cjs/ui/OpenchannelThumbnailMessage.js +36 -46
  504. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  505. package/cjs/ui/OpenchannelUserMessage.js +39 -49
  506. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  507. package/cjs/ui/PlaceHolder.js +6 -6
  508. package/cjs/ui/PlaybackTime.js +8 -8
  509. package/cjs/ui/PlaybackTime.js.map +1 -1
  510. package/cjs/ui/ProgressBar.js +8 -8
  511. package/cjs/ui/ProgressBar.js.map +1 -1
  512. package/cjs/ui/QuoteMessage.js +16 -20
  513. package/cjs/ui/QuoteMessage.js.map +1 -1
  514. package/cjs/ui/QuoteMessageInput.js +8 -11
  515. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  516. package/cjs/ui/ReactionBadge.js +13 -17
  517. package/cjs/ui/ReactionBadge.js.map +1 -1
  518. package/cjs/ui/ReactionButton.js +8 -8
  519. package/cjs/ui/ReactionButton.js.map +1 -1
  520. package/cjs/ui/SortByRow.js +7 -11
  521. package/cjs/ui/SortByRow.js.map +1 -1
  522. package/cjs/ui/TextButton.js +12 -12
  523. package/cjs/ui/TextButton.js.map +1 -1
  524. package/cjs/ui/TextMessageItemBody.js +23 -24
  525. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  526. package/cjs/ui/ThreadReplies.js +10 -11
  527. package/cjs/ui/ThreadReplies.js.map +1 -1
  528. package/cjs/ui/ThumbnailMessageItemBody.js +17 -20
  529. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  530. package/cjs/ui/Tooltip.js +6 -6
  531. package/cjs/ui/Tooltip.js.map +1 -1
  532. package/cjs/ui/TooltipWrapper.js +6 -8
  533. package/cjs/ui/TooltipWrapper.js.map +1 -1
  534. package/cjs/ui/UnknownMessageItemBody.js +13 -14
  535. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  536. package/cjs/ui/UserListItem.js +28 -27
  537. package/cjs/ui/UserListItem.js.map +1 -1
  538. package/cjs/ui/UserProfile.js +15 -17
  539. package/cjs/ui/UserProfile.js.map +1 -1
  540. package/cjs/ui/VoiceMessageItemBody.js +24 -32
  541. package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
  542. package/cjs/ui/VoiceMessgeInput.js +8 -8
  543. package/cjs/ui/Word.js +19 -30
  544. package/cjs/ui/Word.js.map +1 -1
  545. package/cjs/{useLongPress-3e3b1188.js → useLongPress-640ea281.js} +13 -31
  546. package/cjs/useLongPress-640ea281.js.map +1 -0
  547. package/cjs/useSendbirdStateContext.js +1 -2
  548. package/cjs/useSendbirdStateContext.js.map +1 -1
  549. package/cjs/utils/message/getOutgoingMessageState.js +0 -7
  550. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  551. package/cjs/utils/message/isVoiceMessage.js +2 -2
  552. package/cjs/utils/message/isVoiceMessage.js.map +1 -1
  553. package/cjs/{utils-e4cd6a0c.js → utils-7346a672.js} +1 -5
  554. package/cjs/{utils-e4cd6a0c.js.map → utils-7346a672.js.map} +1 -1
  555. package/cjs/{utils-de779857.js → utils-93739833.js} +2 -7
  556. package/cjs/utils-93739833.js.map +1 -0
  557. package/cjs/{utils-5ca88bb6.js → utils-a82eaed9.js} +1 -1
  558. package/cjs/{utils-5ca88bb6.js.map → utils-a82eaed9.js.map} +1 -1
  559. package/cjs/{utils-5905fc1a.js → utils-dd55b959.js} +1 -4
  560. package/cjs/utils-dd55b959.js.map +1 -0
  561. package/cjs/{uuid-26b61f16.js → uuid-a8af0c03.js} +1 -3
  562. package/cjs/{uuid-26b61f16.js.map → uuid-a8af0c03.js.map} +1 -1
  563. package/cjs/withSendbird.js +5 -7
  564. package/cjs/withSendbird.js.map +1 -1
  565. package/{color-f6e2214f.js → color-2037c3b8.js} +1 -10
  566. package/{color-f6e2214f.js.map → color-2037c3b8.js.map} +1 -1
  567. package/{compareIds-d958887d.js → compareIds-b858e41a.js} +4 -5
  568. package/compareIds-b858e41a.js.map +1 -0
  569. package/{const-735bcf5b.js → const-10a01327.js} +1 -2
  570. package/{const-735bcf5b.js.map → const-10a01327.js.map} +1 -1
  571. package/{const-c7334190.js → const-85ec8faf.js} +1 -1
  572. package/{const-c7334190.js.map → const-85ec8faf.js.map} +1 -1
  573. package/{consts-ddb92249.js → consts-3fe926ac.js} +1 -1
  574. package/{consts-ddb92249.js.map → consts-3fe926ac.js.map} +1 -1
  575. package/{consts-8f50899e.js → consts-89b1e965.js} +1 -1
  576. package/{consts-8f50899e.js.map → consts-89b1e965.js.map} +1 -1
  577. package/{consts-12512664.js → consts-ef58410d.js} +1 -1
  578. package/{consts-12512664.js.map → consts-ef58410d.js.map} +1 -1
  579. package/{consts-9422accf.js → consts-f3b2a046.js} +8 -11
  580. package/{consts-9422accf.js.map → consts-f3b2a046.js.map} +1 -1
  581. package/{context-7465b898.js → context-8436b333.js} +2 -2
  582. package/{context-7465b898.js.map → context-8436b333.js.map} +1 -1
  583. package/dist/index.css +2 -1
  584. package/dist/index.css.map +1 -1
  585. package/handlers/OpenChannelHandler.js.map +1 -1
  586. package/handlers/SessionHandler.js.map +1 -1
  587. package/{index-0ecbda20.js → index-10da4b99.js} +21 -22
  588. package/index-10da4b99.js.map +1 -0
  589. package/index-23251a75.js +39 -0
  590. package/index-23251a75.js.map +1 -0
  591. package/{index-4c3eaeb7.js → index-2f83ba2a.js} +2 -2
  592. package/{index-4c3eaeb7.js.map → index-2f83ba2a.js.map} +1 -1
  593. package/index-390c0bba.js +53 -0
  594. package/index-390c0bba.js.map +1 -0
  595. package/{index-a52a0b76.js → index-4a1325ab.js} +13 -32
  596. package/index-4a1325ab.js.map +1 -0
  597. package/{index-437c0f3c.js → index-5cbdbcf9.js} +30 -44
  598. package/index-5cbdbcf9.js.map +1 -0
  599. package/{index-63e7b57b.js → index-84b28e71.js} +18 -27
  600. package/index-84b28e71.js.map +1 -0
  601. package/{index-cf141ad7.js → index-8b3cd0b6.js} +1 -1
  602. package/{index-cf141ad7.js.map → index-8b3cd0b6.js.map} +1 -1
  603. package/{index-aced8439.js → index-8d6fa44a.js} +2 -2
  604. package/{index-aced8439.js.map → index-8d6fa44a.js.map} +1 -1
  605. package/{index-8e901b57.js → index-8efe881f.js} +2 -22
  606. package/{index-8e901b57.js.map → index-8efe881f.js.map} +1 -1
  607. package/{index-6e33b2e0.js → index-b41d07df.js} +3 -3
  608. package/{index-6e33b2e0.js.map → index-b41d07df.js.map} +1 -1
  609. package/{index-12c44496.js → index-d5a761b9.js} +1 -1
  610. package/{index-12c44496.js.map → index-d5a761b9.js.map} +1 -1
  611. package/{index-9626a87e.js → index-e01f2743.js} +25 -52
  612. package/index-e01f2743.js.map +1 -0
  613. package/{index-47d179f2.js → index-e0325c33.js} +23 -27
  614. package/index-e0325c33.js.map +1 -0
  615. package/{index-7b8ea67e.js → index-f0fa0260.js} +17 -33
  616. package/index-f0fa0260.js.map +1 -0
  617. package/{index-83ae3ffe.js → index-f87c5aab.js} +38 -142
  618. package/index-f87c5aab.js.map +1 -0
  619. package/index.d.ts +1 -1
  620. package/index.js +49 -49
  621. package/lame.all.js.map +1 -1
  622. package/package.json +4 -2
  623. package/sendbirdSelectors.js +36 -94
  624. package/sendbirdSelectors.js.map +1 -1
  625. package/{stringSet-7c7d84fc.js → stringSet-fa7e0d83.js} +2 -1
  626. package/stringSet-fa7e0d83.js.map +1 -0
  627. package/{tokenize-8f238f49.js → tokenize-7bcc2072.js} +30 -24
  628. package/tokenize-7bcc2072.js.map +1 -0
  629. package/{topics-4697c2b3.js → topics-2647294d.js} +1 -1
  630. package/topics-2647294d.js.map +1 -0
  631. package/{tslib.es6-209c9f08.js → tslib.es6-debac48c.js} +2 -2
  632. package/tslib.es6-debac48c.js.map +1 -0
  633. package/{types-41ea68c8.js → types-abb04b7a.js} +1 -1
  634. package/types-abb04b7a.js.map +1 -0
  635. package/ui/Accordion.js +12 -16
  636. package/ui/Accordion.js.map +1 -1
  637. package/ui/AccordionGroup.js +6 -8
  638. package/ui/AccordionGroup.js.map +1 -1
  639. package/ui/AdminMessage.js +5 -8
  640. package/ui/AdminMessage.js.map +1 -1
  641. package/ui/Avatar.js +23 -41
  642. package/ui/Avatar.js.map +1 -1
  643. package/ui/Badge.js +9 -9
  644. package/ui/Badge.js.map +1 -1
  645. package/ui/BottomSheet.js +5 -7
  646. package/ui/BottomSheet.js.map +1 -1
  647. package/ui/Button.js +13 -24
  648. package/ui/Button.js.map +1 -1
  649. package/ui/ChannelAvatar.js +9 -9
  650. package/ui/ChannelAvatar.js.map +1 -1
  651. package/ui/Checkbox.js +8 -10
  652. package/ui/Checkbox.js.map +1 -1
  653. package/ui/ConnectionStatus.js +4 -4
  654. package/ui/ConnectionStatus.js.map +1 -1
  655. package/ui/ContextMenu.js +40 -86
  656. package/ui/ContextMenu.js.map +1 -1
  657. package/ui/DateSeparator.js +9 -9
  658. package/ui/DateSeparator.js.map +1 -1
  659. package/ui/EmojiReactions.js +19 -24
  660. package/ui/EmojiReactions.js.map +1 -1
  661. package/ui/FileMessageItemBody.js +15 -16
  662. package/ui/FileMessageItemBody.js.map +1 -1
  663. package/ui/FileViewer.js +22 -23
  664. package/ui/FileViewer.js.map +1 -1
  665. package/ui/Icon.js +0 -241
  666. package/ui/Icon.js.map +1 -1
  667. package/ui/IconButton.js +19 -22
  668. package/ui/IconButton.js.map +1 -1
  669. package/ui/ImageRenderer.js +27 -30
  670. package/ui/ImageRenderer.js.map +1 -1
  671. package/ui/Input.js +8 -10
  672. package/ui/Input.js.map +1 -1
  673. package/ui/Label.js +2 -2
  674. package/ui/LinkLabel.js +4 -3
  675. package/ui/LinkLabel.js.map +1 -1
  676. package/ui/Loader.js +7 -7
  677. package/ui/Loader.js.map +1 -1
  678. package/ui/MentionLabel.js +16 -22
  679. package/ui/MentionLabel.js.map +1 -1
  680. package/ui/MentionUserLabel.js +7 -7
  681. package/ui/MentionUserLabel.js.map +1 -1
  682. package/ui/MessageContent.js +118 -137
  683. package/ui/MessageContent.js.map +1 -1
  684. package/ui/MessageInput.js +82 -134
  685. package/ui/MessageInput.js.map +1 -1
  686. package/ui/MessageItemMenu.js +25 -31
  687. package/ui/MessageItemMenu.js.map +1 -1
  688. package/ui/MessageItemReactionMenu.js +12 -16
  689. package/ui/MessageItemReactionMenu.js.map +1 -1
  690. package/ui/MessageSearchFileItem.js +22 -30
  691. package/ui/MessageSearchFileItem.js.map +1 -1
  692. package/ui/MessageSearchItem.js +18 -24
  693. package/ui/MessageSearchItem.js.map +1 -1
  694. package/ui/MessageStatus.js +10 -10
  695. package/ui/Modal.js +33 -34
  696. package/ui/Modal.js.map +1 -1
  697. package/ui/MutedAvatarOverlay.js +3 -3
  698. package/ui/MutedAvatarOverlay.js.map +1 -1
  699. package/ui/OGMessageItemBody.js +27 -30
  700. package/ui/OGMessageItemBody.js.map +1 -1
  701. package/ui/OpenChannelAdminMessage.js +4 -4
  702. package/ui/OpenChannelAdminMessage.js.map +1 -1
  703. package/ui/OpenChannelAvatar.js +11 -11
  704. package/ui/OpenChannelAvatar.js.map +1 -1
  705. package/ui/OpenchannelConversationHeader.js +10 -10
  706. package/ui/OpenchannelConversationHeader.js.map +1 -1
  707. package/ui/OpenchannelFileMessage.js +31 -44
  708. package/ui/OpenchannelFileMessage.js.map +1 -1
  709. package/ui/OpenchannelOGMessage.js +39 -53
  710. package/ui/OpenchannelOGMessage.js.map +1 -1
  711. package/ui/OpenchannelThumbnailMessage.js +36 -46
  712. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  713. package/ui/OpenchannelUserMessage.js +39 -49
  714. package/ui/OpenchannelUserMessage.js.map +1 -1
  715. package/ui/PlaceHolder.js +6 -6
  716. package/ui/PlaybackTime.js +8 -8
  717. package/ui/PlaybackTime.js.map +1 -1
  718. package/ui/ProgressBar.js +8 -8
  719. package/ui/ProgressBar.js.map +1 -1
  720. package/ui/QuoteMessage.js +16 -20
  721. package/ui/QuoteMessage.js.map +1 -1
  722. package/ui/QuoteMessageInput.js +8 -11
  723. package/ui/QuoteMessageInput.js.map +1 -1
  724. package/ui/ReactionBadge.js +13 -17
  725. package/ui/ReactionBadge.js.map +1 -1
  726. package/ui/ReactionButton.js +8 -8
  727. package/ui/ReactionButton.js.map +1 -1
  728. package/ui/SortByRow.js +7 -11
  729. package/ui/SortByRow.js.map +1 -1
  730. package/ui/TextButton.js +12 -12
  731. package/ui/TextButton.js.map +1 -1
  732. package/ui/TextMessageItemBody.js +23 -24
  733. package/ui/TextMessageItemBody.js.map +1 -1
  734. package/ui/ThreadReplies.js +10 -11
  735. package/ui/ThreadReplies.js.map +1 -1
  736. package/ui/ThumbnailMessageItemBody.js +17 -20
  737. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  738. package/ui/Tooltip.js +6 -6
  739. package/ui/Tooltip.js.map +1 -1
  740. package/ui/TooltipWrapper.js +6 -8
  741. package/ui/TooltipWrapper.js.map +1 -1
  742. package/ui/UnknownMessageItemBody.js +13 -14
  743. package/ui/UnknownMessageItemBody.js.map +1 -1
  744. package/ui/UserListItem.js +28 -27
  745. package/ui/UserListItem.js.map +1 -1
  746. package/ui/UserProfile.js +15 -17
  747. package/ui/UserProfile.js.map +1 -1
  748. package/ui/VoiceMessageItemBody.js +24 -32
  749. package/ui/VoiceMessageItemBody.js.map +1 -1
  750. package/ui/VoiceMessgeInput.js +8 -8
  751. package/ui/Word.js +19 -30
  752. package/ui/Word.js.map +1 -1
  753. package/{useLongPress-e2570976.js → useLongPress-42dc7c5d.js} +13 -31
  754. package/useLongPress-42dc7c5d.js.map +1 -0
  755. package/useSendbirdStateContext.js +1 -2
  756. package/useSendbirdStateContext.js.map +1 -1
  757. package/utils/message/getOutgoingMessageState.js +0 -7
  758. package/utils/message/getOutgoingMessageState.js.map +1 -1
  759. package/utils/message/isVoiceMessage.js +2 -2
  760. package/utils/message/isVoiceMessage.js.map +1 -1
  761. package/{utils-4942106c.js → utils-1905e84d.js} +2 -7
  762. package/utils-1905e84d.js.map +1 -0
  763. package/{utils-3d03001e.js → utils-19ce54ee.js} +1 -5
  764. package/{utils-3d03001e.js.map → utils-19ce54ee.js.map} +1 -1
  765. package/{utils-04bd857d.js → utils-87be98af.js} +1 -1
  766. package/{utils-04bd857d.js.map → utils-87be98af.js.map} +1 -1
  767. package/{utils-12a3467f.js → utils-b568cd44.js} +1 -4
  768. package/utils-b568cd44.js.map +1 -0
  769. package/{uuid-31c6ecb2.js → uuid-e979d613.js} +1 -3
  770. package/{uuid-31c6ecb2.js.map → uuid-e979d613.js.map} +1 -1
  771. package/withSendbird.js +5 -7
  772. package/withSendbird.js.map +1 -1
  773. package/ChannelListProvider-10fe7340.js.map +0 -1
  774. package/ChannelProvider-4ac82784.js.map +0 -1
  775. package/MediaQueryContext-e791a4d1.js.map +0 -1
  776. package/MemberList-6f3c8288.js.map +0 -1
  777. package/OpenChannelListProvider-eb189b41.js.map +0 -1
  778. package/OpenChannelProvider-e418b369.js.map +0 -1
  779. package/ThreadProvider-faf3df5d.js.map +0 -1
  780. package/VoiceMessageInputWrapper-59373f20.js.map +0 -1
  781. package/_rollupPluginBabelHelpers-e908c50d.js.map +0 -1
  782. package/actionTypes-ee7f96a9.js +0 -6
  783. package/actionTypes-ee7f96a9.js.map +0 -1
  784. package/cjs/ChannelListProvider-d4f91fc4.js.map +0 -1
  785. package/cjs/ChannelProvider-af0b997c.js.map +0 -1
  786. package/cjs/MediaQueryContext-4978c777.js.map +0 -1
  787. package/cjs/MemberList-5c05b62f.js.map +0 -1
  788. package/cjs/OpenChannelListProvider-3be4b8a5.js.map +0 -1
  789. package/cjs/OpenChannelProvider-56af9a0e.js.map +0 -1
  790. package/cjs/ThreadProvider-12784adf.js.map +0 -1
  791. package/cjs/VoiceMessageInputWrapper-3b5db880.js.map +0 -1
  792. package/cjs/_rollupPluginBabelHelpers-994cd1da.js.map +0 -1
  793. package/cjs/actionTypes-38d53eaf.js +0 -10
  794. package/cjs/actionTypes-38d53eaf.js.map +0 -1
  795. package/cjs/color-8f9fe57f.js.map +0 -1
  796. package/cjs/compareIds-b77b66f3.js.map +0 -1
  797. package/cjs/index-1e57cbdb.js.map +0 -1
  798. package/cjs/index-603c2a7c.js.map +0 -1
  799. package/cjs/index-72fd0294.js.map +0 -1
  800. package/cjs/index-a7fa406f.js.map +0 -1
  801. package/cjs/index-aa908fcf.js.map +0 -1
  802. package/cjs/index-aeba3b06.js.map +0 -1
  803. package/cjs/index-b9fbe704.js.map +0 -1
  804. package/cjs/index-c825cf5b.js.map +0 -1
  805. package/cjs/index-d41db9c1.js.map +0 -1
  806. package/cjs/stringSet-7330b627.js.map +0 -1
  807. package/cjs/tokenize-a5a20ef3.js.map +0 -1
  808. package/cjs/topics-7547922a.js.map +0 -1
  809. package/cjs/tslib.es6-ee1122c5.js.map +0 -1
  810. package/cjs/types-7daeb4a1.js.map +0 -1
  811. package/cjs/useLongPress-3e3b1188.js.map +0 -1
  812. package/cjs/utils-5905fc1a.js.map +0 -1
  813. package/cjs/utils-de779857.js.map +0 -1
  814. package/compareIds-d958887d.js.map +0 -1
  815. package/index-0ecbda20.js.map +0 -1
  816. package/index-437c0f3c.js.map +0 -1
  817. package/index-47d179f2.js.map +0 -1
  818. package/index-63e7b57b.js.map +0 -1
  819. package/index-7b8ea67e.js.map +0 -1
  820. package/index-83ae3ffe.js.map +0 -1
  821. package/index-9626a87e.js.map +0 -1
  822. package/index-a52a0b76.js.map +0 -1
  823. package/index-ace292c2.js +0 -57
  824. package/index-ace292c2.js.map +0 -1
  825. package/stringSet-7c7d84fc.js.map +0 -1
  826. package/tokenize-8f238f49.js.map +0 -1
  827. package/topics-4697c2b3.js.map +0 -1
  828. package/tslib.es6-209c9f08.js.map +0 -1
  829. package/types-41ea68c8.js.map +0 -1
  830. package/useLongPress-e2570976.js.map +0 -1
  831. package/utils-12a3467f.js.map +0 -1
  832. package/utils-4942106c.js.map +0 -1
@@ -1,61 +1,62 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../../tslib.es6-ee1122c5.js');
3
+ var tslib_es6 = require('../../tslib.es6-957ba986.js');
4
4
  var React = require('react');
5
- var index$1 = require('../../index-959a4ab1.js');
5
+ var index$2 = require('../../index-ecfe08c9.js');
6
6
  var Channel_components_SuggestedMentionList = require('./SuggestedMentionList.js');
7
7
  var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
8
- var Channel_context = require('../../ChannelProvider-af0b997c.js');
9
- var index = require('../../index-72fd0294.js');
10
- var _const = require('../../const-e03cb4c1.js');
8
+ var Channel_context = require('../../ChannelProvider-fcb80591.js');
9
+ var index$1 = require('../../index-d6f14382.js');
10
+ var _const = require('../../const-1e096998.js');
11
11
  var ui_DateSeparator = require('../../ui/DateSeparator.js');
12
- var ui_Label = require('../../index-26a1e861.js');
12
+ var ui_Label = require('../../index-3d6159df.js');
13
13
  var ui_MessageInput = require('../../ui/MessageInput.js');
14
14
  var ui_MessageContent = require('../../ui/MessageContent.js');
15
15
  var Channel_components_FileViewer = require('./FileViewer.js');
16
16
  var Channel_components_RemoveMessageModal = require('./RemoveMessageModal.js');
17
- var _const$1 = require('../../const-35f8be84.js');
18
- var LocalizationContext = require('../../LocalizationContext-01fceac0.js');
19
- require('../../index-7c5d21c4.js');
17
+ var _const$1 = require('../../const-7bb85121.js');
18
+ var LocalizationContext = require('../../LocalizationContext-9b216d02.js');
19
+ var index = require('../../index-5bba1fd5.js');
20
+ require('../../index-02729806.js');
20
21
  require('../../ui/Icon.js');
21
22
  require('prop-types');
22
23
  require('../../ui/Avatar.js');
23
24
  require('../../ui/ImageRenderer.js');
24
- require('../../uuid-26b61f16.js');
25
- require('../../ThreadProvider-12784adf.js');
25
+ require('../../uuid-a8af0c03.js');
26
+ require('../../ThreadProvider-c3623e5f.js');
26
27
  require('../../utils/message/getOutgoingMessageState.js');
27
- require('../../UserProfileContext-c4642438.js');
28
+ require('../../UserProfileContext-ad079e6d.js');
28
29
  require('../../Thread/context/types.js');
29
30
  require('@sendbird/chat');
30
- require('../../topics-7547922a.js');
31
+ require('../../topics-09d72ec0.js');
31
32
  require('@sendbird/chat/groupChannel');
32
33
  require('@sendbird/chat/message');
33
- require('../../consts-69fc20be.js');
34
+ require('../../consts-02c09d93.js');
34
35
  require('../../withSendbird.js');
35
- require('../../_rollupPluginBabelHelpers-994cd1da.js');
36
- require('../../compareIds-b77b66f3.js');
36
+ require('../../_rollupPluginBabelHelpers-440ec6e2.js');
37
+ require('../../compareIds-3dbb4f79.js');
37
38
  require('../../ui/ContextMenu.js');
38
39
  require('react-dom');
39
40
  require('../../ui/SortByRow.js');
40
- require('../../stringSet-7330b627.js');
41
+ require('../../stringSet-e52248ab.js');
41
42
  require('../../ui/ReactionButton.js');
42
- require('../../color-8f9fe57f.js');
43
+ require('../../color-8b30623d.js');
43
44
  require('../../ui/IconButton.js');
44
45
  require('../../ui/Button.js');
45
46
  require('dompurify');
46
- require('../../consts-b29bd4d5.js');
47
- require('../../consts-aabb33e0.js');
48
- require('../../consts-956b1221.js');
49
- require('../../tokenize-a5a20ef3.js');
47
+ require('../../consts-54b7b2b1.js');
48
+ require('../../consts-3ebe6f94.js');
49
+ require('../../consts-d1f579c4.js');
50
+ require('../../tokenize-c5dd544b.js');
50
51
  require('../../ui/UserProfile.js');
51
52
  require('../../sendbirdSelectors.js');
52
- require('../../utils-5ca88bb6.js');
53
- require('../../index-aa908fcf.js');
53
+ require('../../utils-a82eaed9.js');
54
+ require('../../index-7f214e91.js');
54
55
  require('../../ui/Loader.js');
55
- require('../../index-e3f00fd1.js');
56
- require('../../index-1f02e60f.js');
56
+ require('../../index-8a187344.js');
57
+ require('../../index-b95c8165.js');
57
58
  require('../../ui/MessageItemMenu.js');
58
- require('../../types-7daeb4a1.js');
59
+ require('../../types-68cc0fcf.js');
59
60
  require('../../ui/MessageItemReactionMenu.js');
60
61
  require('../../ui/EmojiReactions.js');
61
62
  require('../../ui/Tooltip.js');
@@ -63,27 +64,27 @@ require('../../ui/TooltipWrapper.js');
63
64
  require('../../ui/ReactionBadge.js');
64
65
  require('../../ui/AdminMessage.js');
65
66
  require('../../ui/TextMessageItemBody.js');
66
- require('../../index-603c2a7c.js');
67
+ require('../../index-9e320445.js');
68
+ require('ts-pattern');
67
69
  require('../../Message/context.js');
68
70
  require('../../ui/MentionLabel.js');
69
71
  require('../../ui/LinkLabel.js');
70
72
  require('../../ui/FileMessageItemBody.js');
71
73
  require('../../ui/TextButton.js');
72
- require('../../MediaQueryContext-4978c777.js');
74
+ require('../../MediaQueryContext-ea137add.js');
73
75
  require('../../ui/ThumbnailMessageItemBody.js');
74
76
  require('../../ui/OGMessageItemBody.js');
75
77
  require('../../ui/UnknownMessageItemBody.js');
76
78
  require('../../ui/QuoteMessage.js');
77
- require('../../useLongPress-3e3b1188.js');
79
+ require('../../useLongPress-640ea281.js');
78
80
  require('../../ui/BottomSheet.js');
79
- require('../../index-36aaf992.js');
81
+ require('../../index-d85616b2.js');
80
82
  require('../../ui/ThreadReplies.js');
81
83
  require('../../ui/VoiceMessageItemBody.js');
82
84
  require('../../ui/ProgressBar.js');
83
85
  require('../../VoicePlayer/useVoicePlayer.js');
84
- require('../../index-c825cf5b.js');
86
+ require('../../index-f8237241.js');
85
87
  require('../../VoiceRecorder/context.js');
86
- require('../../lame.all.js');
87
88
  require('../../ui/PlaybackTime.js');
88
89
  require('../../ui/Modal.js');
89
90
 
@@ -93,9 +94,8 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
93
94
 
94
95
  var useDidMountEffect = function (func, deps) {
95
96
  var _a = React.useState(false),
96
- didMount = _a[0],
97
- setDidmount = _a[1];
98
-
97
+ didMount = _a[0],
98
+ setDidmount = _a[1];
99
99
  React.useEffect(function () {
100
100
  if (didMount) {
101
101
  func();
@@ -105,105 +105,95 @@ var useDidMountEffect = function (func, deps) {
105
105
  }, deps);
106
106
  };
107
107
 
108
+ // todo: Refactor this component, is too complex now
108
109
  var Message = function (_a) {
109
110
  var _b, _c;
110
-
111
111
  var message = _a.message,
112
- hasSeparator = _a.hasSeparator,
113
- chainTop = _a.chainTop,
114
- chainBottom = _a.chainBottom,
115
- handleScroll = _a.handleScroll,
116
- renderCustomSeparator = _a.renderCustomSeparator,
117
- renderEditInput = _a.renderEditInput,
118
- renderMessage = _a.renderMessage,
119
- renderMessageContent = _a.renderMessageContent;
112
+ hasSeparator = _a.hasSeparator,
113
+ chainTop = _a.chainTop,
114
+ chainBottom = _a.chainBottom,
115
+ handleScroll = _a.handleScroll,
116
+ renderCustomSeparator = _a.renderCustomSeparator,
117
+ renderEditInput = _a.renderEditInput,
118
+ renderMessage = _a.renderMessage,
119
+ renderMessageContent = _a.renderMessageContent;
120
120
  var dateLocale = LocalizationContext.useLocalization().dateLocale;
121
121
  var globalStore = useSendbirdStateContext();
122
-
123
122
  var _d = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config,
124
- userId = _d.userId,
125
- isOnline = _d.isOnline,
126
- isMentionEnabled = _d.isMentionEnabled,
127
- userMention = _d.userMention;
128
-
123
+ userId = _d.userId,
124
+ isOnline = _d.isOnline,
125
+ isMentionEnabled = _d.isMentionEnabled,
126
+ userMention = _d.userMention;
129
127
  var maxUserMentionCount = (userMention === null || userMention === void 0 ? void 0 : userMention.maxMentionCount) || _const.MAX_USER_MENTION_COUNT;
130
128
  var maxUserSuggestionCount = (userMention === null || userMention === void 0 ? void 0 : userMention.maxSuggestionCount) || _const.MAX_USER_SUGGESTION_COUNT;
131
-
132
129
  var _e = Channel_context.useChannelContext(),
133
- initialized = _e.initialized,
134
- currentGroupChannel = _e.currentGroupChannel,
135
- highLightedMessageId = _e.highLightedMessageId,
136
- setHighLightedMessageId = _e.setHighLightedMessageId,
137
- animatedMessageId = _e.animatedMessageId,
138
- setAnimatedMessageId = _e.setAnimatedMessageId,
139
- updateMessage = _e.updateMessage,
140
- scrollToMessage = _e.scrollToMessage,
141
- replyType = _e.replyType,
142
- threadReplySelectType = _e.threadReplySelectType,
143
- isReactionEnabled = _e.isReactionEnabled,
144
- toggleReaction = _e.toggleReaction,
145
- emojiContainer = _e.emojiContainer,
146
- nicknamesMap = _e.nicknamesMap,
147
- setQuoteMessage = _e.setQuoteMessage,
148
- resendMessage = _e.resendMessage,
149
- renderUserMentionItem = _e.renderUserMentionItem,
150
- onReplyInThread = _e.onReplyInThread,
151
- onQuoteMessageClick = _e.onQuoteMessageClick,
152
- onMessageAnimated = _e.onMessageAnimated,
153
- onMessageHighlighted = _e.onMessageHighlighted;
154
-
130
+ initialized = _e.initialized,
131
+ currentGroupChannel = _e.currentGroupChannel,
132
+ highLightedMessageId = _e.highLightedMessageId,
133
+ setHighLightedMessageId = _e.setHighLightedMessageId,
134
+ animatedMessageId = _e.animatedMessageId,
135
+ setAnimatedMessageId = _e.setAnimatedMessageId,
136
+ updateMessage = _e.updateMessage,
137
+ scrollToMessage = _e.scrollToMessage,
138
+ replyType = _e.replyType,
139
+ threadReplySelectType = _e.threadReplySelectType,
140
+ isReactionEnabled = _e.isReactionEnabled,
141
+ toggleReaction = _e.toggleReaction,
142
+ emojiContainer = _e.emojiContainer,
143
+ nicknamesMap = _e.nicknamesMap,
144
+ setQuoteMessage = _e.setQuoteMessage,
145
+ resendMessage = _e.resendMessage,
146
+ renderUserMentionItem = _e.renderUserMentionItem,
147
+ onReplyInThread = _e.onReplyInThread,
148
+ onQuoteMessageClick = _e.onQuoteMessageClick,
149
+ onMessageAnimated = _e.onMessageAnimated,
150
+ onMessageHighlighted = _e.onMessageHighlighted,
151
+ onScrollCallback = _e.onScrollCallback;
155
152
  var _f = React.useState(false),
156
- showEdit = _f[0],
157
- setShowEdit = _f[1];
158
-
153
+ showEdit = _f[0],
154
+ setShowEdit = _f[1];
159
155
  var _g = React.useState(false),
160
- showRemove = _g[0],
161
- setShowRemove = _g[1];
162
-
156
+ showRemove = _g[0],
157
+ setShowRemove = _g[1];
163
158
  var _h = React.useState(false),
164
- showFileViewer = _h[0],
165
- setShowFileViewer = _h[1];
166
-
159
+ showFileViewer = _h[0],
160
+ setShowFileViewer = _h[1];
167
161
  var _j = React.useState(false),
168
- isAnimated = _j[0],
169
- setIsAnimated = _j[1];
170
-
162
+ isAnimated = _j[0],
163
+ setIsAnimated = _j[1];
171
164
  var _k = React.useState(false),
172
- isHighlighted = _k[0],
173
- setIsHighlighted = _k[1];
174
-
165
+ isHighlighted = _k[0],
166
+ setIsHighlighted = _k[1];
175
167
  var _l = React.useState(''),
176
- mentionNickname = _l[0],
177
- setMentionNickname = _l[1];
178
-
168
+ mentionNickname = _l[0],
169
+ setMentionNickname = _l[1];
179
170
  var _m = React.useState([]),
180
- mentionedUsers = _m[0],
181
- setMentionedUsers = _m[1];
182
-
171
+ mentionedUsers = _m[0],
172
+ setMentionedUsers = _m[1];
183
173
  var _o = React.useState([]),
184
- mentionedUserIds = _o[0],
185
- setMentionedUserIds = _o[1];
186
-
174
+ mentionedUserIds = _o[0],
175
+ setMentionedUserIds = _o[1];
187
176
  var _p = React.useState(null),
188
- messageInputEvent = _p[0],
189
- setMessageInputEvent = _p[1];
190
-
177
+ messageInputEvent = _p[0],
178
+ setMessageInputEvent = _p[1];
191
179
  var _q = React.useState(null),
192
- selectedUser = _q[0],
193
- setSelectedUser = _q[1];
194
-
180
+ selectedUser = _q[0],
181
+ setSelectedUser = _q[1];
195
182
  var _r = React.useState([]),
196
- mentionSuggestedUsers = _r[0],
197
- setMentionSuggestedUsers = _r[1];
198
-
183
+ mentionSuggestedUsers = _r[0],
184
+ setMentionSuggestedUsers = _r[1];
199
185
  var _s = React.useState(true),
200
- ableMention = _s[0],
201
- setAbleMention = _s[1];
202
-
186
+ ableMention = _s[0],
187
+ setAbleMention = _s[1];
203
188
  var editMessageInputRef = React.useRef(null);
204
189
  var messageScrollRef = React.useRef(null);
205
190
  var displaySuggestedMentionList = isOnline && isMentionEnabled && mentionNickname.length > 0 && !Channel_context.isDisabledBecauseFrozen(currentGroupChannel) && !Channel_context.isDisabledBecauseMuted(currentGroupChannel);
206
191
  var disabled = !initialized || Channel_context.isDisabledBecauseFrozen(currentGroupChannel) || Channel_context.isDisabledBecauseMuted(currentGroupChannel) || !isOnline;
192
+ var handleOnScroll = index.useHandleOnScrollCallback({
193
+ hasMore: false,
194
+ onScroll: onScrollCallback,
195
+ scrollRef: messageScrollRef
196
+ });
207
197
  React.useEffect(function () {
208
198
  if ((mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) >= maxUserMentionCount) {
209
199
  setAbleMention(false);
@@ -215,7 +205,6 @@ var Message = function (_a) {
215
205
  setMentionedUsers(mentionedUsers.filter(function (_a) {
216
206
  var userId = _a.userId;
217
207
  var i = mentionedUserIds.indexOf(userId);
218
-
219
208
  if (i < 0) {
220
209
  return false;
221
210
  } else {
@@ -226,7 +215,6 @@ var Message = function (_a) {
226
215
  }, [mentionedUserIds]);
227
216
  useDidMountEffect(function () {
228
217
  var _a;
229
-
230
218
  if (((_a = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.lastMessage) === null || _a === void 0 ? void 0 : _a.messageId) === (message === null || message === void 0 ? void 0 : message.messageId)) {
231
219
  handleScroll === null || handleScroll === void 0 ? void 0 : handleScroll();
232
220
  }
@@ -234,12 +222,8 @@ var Message = function (_a) {
234
222
  React.useLayoutEffect(function () {
235
223
  var animationTimeout = null;
236
224
  var messageHighlightedTimeout = null;
237
-
238
225
  if (highLightedMessageId === message.messageId && (messageScrollRef === null || messageScrollRef === void 0 ? void 0 : messageScrollRef.current)) {
239
- messageScrollRef.current.scrollIntoView({
240
- block: 'center',
241
- inline: 'center'
242
- });
226
+ handleOnScroll();
243
227
  setIsAnimated(false);
244
228
  animationTimeout = setTimeout(function () {
245
229
  setIsHighlighted(true);
@@ -251,7 +235,6 @@ var Message = function (_a) {
251
235
  } else {
252
236
  setIsHighlighted(false);
253
237
  }
254
-
255
238
  return function () {
256
239
  clearTimeout(animationTimeout);
257
240
  clearTimeout(messageHighlightedTimeout);
@@ -260,12 +243,8 @@ var Message = function (_a) {
260
243
  React.useLayoutEffect(function () {
261
244
  var animationTimeout = null;
262
245
  var messageAnimatedTimeout = null;
263
-
264
246
  if (animatedMessageId === message.messageId && (messageScrollRef === null || messageScrollRef === void 0 ? void 0 : messageScrollRef.current)) {
265
- messageScrollRef.current.scrollIntoView({
266
- block: 'center',
267
- inline: 'center'
268
- });
247
+ handleOnScroll();
269
248
  setIsHighlighted(false);
270
249
  animationTimeout = setTimeout(function () {
271
250
  setIsAnimated(true);
@@ -277,7 +256,6 @@ var Message = function (_a) {
277
256
  } else {
278
257
  setIsAnimated(false);
279
258
  }
280
-
281
259
  return function () {
282
260
  clearTimeout(animationTimeout);
283
261
  clearTimeout(messageAnimatedTimeout);
@@ -296,23 +274,21 @@ var Message = function (_a) {
296
274
  message: message
297
275
  });
298
276
  }
299
-
300
277
  return null;
301
278
  }, [message, renderCustomSeparator]);
302
-
303
279
  if (renderedMessage) {
304
280
  return /*#__PURE__*/React__default["default"].createElement("div", {
305
281
  ref: messageScrollRef,
306
- className: index.getClassName(['sendbird-msg-hoc sendbird-msg--scroll-ref', isAnimated ? 'sendbird-msg-hoc__animated' : '', isHighlighted ? 'sendbird-msg-hoc__highlighted' : ''])
307
- }, // TODO: Add message instance as a function parameter
282
+ className: index$1.getClassName(['sendbird-msg-hoc sendbird-msg--scroll-ref', isAnimated ? 'sendbird-msg-hoc__animated' : '', isHighlighted ? 'sendbird-msg-hoc__highlighted' : ''])
283
+ },
284
+ // TODO: Add message instance as a function parameter
308
285
  hasSeparator && (renderedCustomSeparator || /*#__PURE__*/React__default["default"].createElement(ui_DateSeparator, null, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
309
286
  type: ui_Label.LabelTypography.CAPTION_2,
310
287
  color: ui_Label.LabelColors.ONBACKGROUND_2
311
- }, index$1.format(message.createdAt, 'MMMM dd, yyyy', {
288
+ }, index$2.format(message.createdAt, 'MMMM dd, yyyy', {
312
289
  locale: dateLocale
313
290
  })))), renderedMessage);
314
291
  }
315
-
316
292
  if (showEdit && ((_c = message === null || message === void 0 ? void 0 : message.isUserMessage) === null || _c === void 0 ? void 0 : _c.call(message))) {
317
293
  return (renderEditInput === null || renderEditInput === void 0 ? void 0 : renderEditInput()) || /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, displaySuggestedMentionList && /*#__PURE__*/React__default["default"].createElement(Channel_components_SuggestedMentionList, {
318
294
  targetNickname: mentionNickname,
@@ -322,7 +298,6 @@ var Message = function (_a) {
322
298
  if (user) {
323
299
  setMentionedUsers(tslib_es6.__spreadArray(tslib_es6.__spreadArray([], mentionedUsers, true), [user], false));
324
300
  }
325
-
326
301
  setMentionNickname('');
327
302
  setSelectedUser(user);
328
303
  setMessageInputEvent(null);
@@ -345,15 +320,13 @@ var Message = function (_a) {
345
320
  message: message,
346
321
  onStartTyping: function () {
347
322
  var _a;
348
-
349
323
  (_a = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.startTyping) === null || _a === void 0 ? void 0 : _a.call(currentGroupChannel);
350
324
  },
351
325
  onUpdateMessage: function (_a) {
352
326
  var _b;
353
-
354
327
  var messageId = _a.messageId,
355
- message = _a.message,
356
- mentionTemplate = _a.mentionTemplate;
328
+ message = _a.message,
329
+ mentionTemplate = _a.mentionTemplate;
357
330
  updateMessage({
358
331
  messageId: messageId,
359
332
  message: message,
@@ -365,7 +338,6 @@ var Message = function (_a) {
365
338
  },
366
339
  onCancelEdit: function () {
367
340
  var _a;
368
-
369
341
  setMentionNickname('');
370
342
  setMentionedUsers([]);
371
343
  setMentionedUserIds([]);
@@ -390,14 +362,12 @@ var Message = function (_a) {
390
362
  setMessageInputEvent(e);
391
363
  return true;
392
364
  }
393
-
394
365
  return false;
395
366
  }
396
367
  }));
397
368
  }
398
-
399
369
  return /*#__PURE__*/React__default["default"].createElement("div", {
400
- className: index.getClassName(['sendbird-msg-hoc sendbird-msg--scroll-ref', isAnimated ? 'sendbird-msg-hoc__animated' : '', isHighlighted ? 'sendbird-msg-hoc__highlighted' : '']),
370
+ className: index$1.getClassName(['sendbird-msg-hoc sendbird-msg--scroll-ref', isAnimated ? 'sendbird-msg-hoc__animated' : '', isHighlighted ? 'sendbird-msg-hoc__highlighted' : '']),
401
371
  style: {
402
372
  marginBottom: '2px'
403
373
  },
@@ -405,7 +375,7 @@ var Message = function (_a) {
405
375
  }, hasSeparator && (renderedCustomSeparator || /*#__PURE__*/React__default["default"].createElement(ui_DateSeparator, null, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
406
376
  type: ui_Label.LabelTypography.CAPTION_2,
407
377
  color: ui_Label.LabelColors.ONBACKGROUND_2
408
- }, index$1.format(message.createdAt, 'MMMM dd, yyyy', {
378
+ }, index$2.format(message.createdAt, 'MMMM dd, yyyy', {
409
379
  locale: dateLocale
410
380
  })))), (renderMessageContent === null || renderMessageContent === void 0 ? void 0 : renderMessageContent()) || /*#__PURE__*/React__default["default"].createElement(ui_MessageContent, {
411
381
  className: "sendbird-message-hoc__message-content",
@@ -1 +1 @@
1
- {"version":3,"file":"Message.js","sources":["../../../../src/utils/useDidMountEffect.ts","../../../../src/smart-components/Channel/components/Message/index.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst useDidMountEffect = (func: () => void, deps: Array<unknown>): void => {\n const [didMount, setDidmount] = useState(false);\n useEffect(() => {\n if (didMount) {\n func();\n } else {\n setDidmount(true);\n }\n }, deps);\n};\n\nexport default useDidMountEffect;\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useLayoutEffect,\n} from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\n\nimport useDidMountEffect from '../../../../utils/useDidMountEffect';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { getClassName } from '../../../../utils';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../context/utils';\nimport { MAX_USER_MENTION_COUNT, MAX_USER_SUGGESTION_COUNT } from '../../context/const';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport MessageContent from '../../../../ui/MessageContent';\nimport FileViewer from '../FileViewer';\nimport RemoveMessageModal from '../RemoveMessageModal';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport { EveryMessage, RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll: () => void;\n // for extending\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderEditInput?: () => React.ReactElement;\n renderMessageContent?: () => React.ReactElement;\n};\n\n// todo: Refactor this component, is too complex now\nconst Message = ({\n message,\n hasSeparator,\n chainTop,\n chainBottom,\n handleScroll,\n renderCustomSeparator,\n renderEditInput,\n renderMessage,\n renderMessageContent,\n}: MessageUIProps): React.ReactElement => {\n const { dateLocale } = useLocalization();\n const globalStore = useSendbirdStateContext();\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || MAX_USER_MENTION_COUNT;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || MAX_USER_SUGGESTION_COUNT;\n\n const {\n initialized,\n currentGroupChannel,\n highLightedMessageId,\n setHighLightedMessageId,\n animatedMessageId,\n setAnimatedMessageId,\n updateMessage,\n scrollToMessage,\n replyType,\n threadReplySelectType,\n isReactionEnabled,\n toggleReaction,\n emojiContainer,\n nicknamesMap,\n setQuoteMessage,\n resendMessage,\n renderUserMentionItem,\n onReplyInThread,\n onQuoteMessageClick,\n onMessageAnimated,\n onMessageHighlighted,\n } = useChannelContext();\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const [isAnimated, setIsAnimated] = useState(false);\n const [isHighlighted, setIsHighlighted] = useState(false);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const editMessageInputRef = useRef(null);\n const messageScrollRef = useRef(null);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentGroupChannel)\n && !isDisabledBecauseMuted(currentGroupChannel);\n const disabled = !initialized\n || isDisabledBecauseFrozen(currentGroupChannel)\n || isDisabledBecauseMuted(currentGroupChannel)\n || !isOnline;\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n useDidMountEffect(() => {\n if (currentGroupChannel?.lastMessage?.messageId === message?.messageId) {\n handleScroll?.();\n }\n }, [showEdit, message?.reactions?.length]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageHighlightedTimeout = null;\n if (highLightedMessageId === message.messageId && messageScrollRef?.current) {\n messageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsAnimated(false);\n animationTimeout = setTimeout(() => {\n setIsHighlighted(true);\n }, 500);\n messageHighlightedTimeout = setTimeout(() => {\n setHighLightedMessageId(0);\n onMessageHighlighted?.();\n }, 1600);\n } else {\n setIsHighlighted(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageHighlightedTimeout);\n }\n }, [highLightedMessageId, messageScrollRef.current, message.messageId]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageAnimatedTimeout = null;\n if (animatedMessageId === message.messageId && messageScrollRef?.current) {\n messageScrollRef.current.scrollIntoView({ block: 'center', inline: 'center' });\n setIsHighlighted(false);\n animationTimeout = setTimeout(() => {\n setIsAnimated(true);\n }, 500);\n messageAnimatedTimeout = setTimeout(() => {\n setAnimatedMessageId(0);\n onMessageAnimated?.();\n }, 1600);\n } else {\n setIsAnimated(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageAnimatedTimeout);\n }\n }, [animatedMessageId, messageScrollRef.current, message.messageId, onMessageAnimated]);\n const renderedMessage = useMemo(() => {\n return renderMessage?.({\n message,\n chainTop,\n chainBottom,\n });\n }, [message, renderMessage]);\n const renderedCustomSeparator = useMemo(() => {\n if (renderCustomSeparator) {\n return renderCustomSeparator?.({ message: message });\n }\n return null;\n }, [message, renderCustomSeparator]);\n\n if (renderedMessage) {\n return (\n <div\n ref={messageScrollRef}\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n >\n {/* date-separator */}\n {\n // TODO: Add message instance as a function parameter\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {renderedMessage}\n </div>\n );\n }\n\n if (showEdit && message?.isUserMessage?.()) {\n return renderEditInput?.() || (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentGroupChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n style={{ marginBottom: '2px' }}\n ref={messageScrollRef}\n >\n {/* date-separator */}\n {\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {/* Message */}\n {\n renderMessageContent?.() || (\n <MessageContent\n className=\"sendbird-message-hoc__message-content\"\n userId={userId}\n scrollToMessage={scrollToMessage}\n channel={currentGroupChannel}\n message={message}\n disabled={!isOnline}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n threadReplySelectType={threadReplySelectType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n resendMessage={resendMessage}\n toggleReaction={toggleReaction}\n setQuoteMessage={setQuoteMessage}\n onReplyInThread={onReplyInThread}\n onQuoteMessageClick={onQuoteMessageClick}\n />\n )\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )\n }\n {\n showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n onCancel={() => setShowFileViewer(false)}\n />\n )\n }\n </div>\n );\n};\n\nexport default Message;\n"],"names":["useDidMountEffect","func","deps","_a","useState","didMount","setDidmount","useEffect","Message","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeparator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","_d","config","userId","isOnline","isMentionEnabled","userMention","maxUserMentionCount","maxMentionCount","MAX_USER_MENTION_COUNT","maxUserSuggestionCount","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","_e","useChannelContext","initialized","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","threadReplySelectType","isReactionEnabled","toggleReaction","emojiContainer","nicknamesMap","setQuoteMessage","resendMessage","renderUserMentionItem","onReplyInThread","onQuoteMessageClick","onMessageAnimated","onMessageHighlighted","_f","showEdit","setShowEdit","_g","showRemove","setShowRemove","_h","showFileViewer","setShowFileViewer","_j","isAnimated","setIsAnimated","_k","isHighlighted","setIsHighlighted","_l","mentionNickname","setMentionNickname","_m","mentionedUsers","setMentionedUsers","_o","mentionedUserIds","setMentionedUserIds","_p","messageInputEvent","setMessageInputEvent","_q","selectedUser","setSelectedUser","_r","mentionSuggestedUsers","setMentionSuggestedUsers","_s","ableMention","setAbleMention","editMessageInputRef","useRef","messageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","filter","i","indexOf","splice","lastMessage","messageId","_b","reactions","useLayoutEffect","animationTimeout","messageHighlightedTimeout","current","scrollIntoView","block","inline","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","getClassName","DateSeparator","Label","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","createdAt","locale","_c","isUserMessage","call","SuggestedMentionList","user","__spreadArray","users","MessageInput","startTyping","mentionTemplate","endTyping","mentionText","userIds","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","marginBottom","MessageContent","RemoveMessageModal","FileViewer"],"mappings":"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"}
1
+ {"version":3,"file":"Message.js","sources":["../../../../src/utils/useDidMountEffect.ts","../../../../src/smart-components/Channel/components/Message/index.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst useDidMountEffect = (func: () => void, deps: Array<unknown>): void => {\n const [didMount, setDidmount] = useState(false);\n useEffect(() => {\n if (didMount) {\n func();\n } else {\n setDidmount(true);\n }\n }, deps);\n};\n\nexport default useDidMountEffect;\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useLayoutEffect,\n} from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\n\nimport useDidMountEffect from '../../../../utils/useDidMountEffect';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { getClassName } from '../../../../utils';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../context/utils';\nimport { MAX_USER_MENTION_COUNT, MAX_USER_SUGGESTION_COUNT } from '../../context/const';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport MessageContent from '../../../../ui/MessageContent';\nimport FileViewer from '../FileViewer';\nimport RemoveMessageModal from '../RemoveMessageModal';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport { EveryMessage, RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { useHandleOnScrollCallback } from '../../../../hooks/useHandleOnScrollCallback'\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll: () => void;\n // for extending\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderEditInput?: () => React.ReactElement;\n renderMessageContent?: () => React.ReactElement;\n};\n\n// todo: Refactor this component, is too complex now\nconst Message = ({\n message,\n hasSeparator,\n chainTop,\n chainBottom,\n handleScroll,\n renderCustomSeparator,\n renderEditInput,\n renderMessage,\n renderMessageContent,\n}: MessageUIProps): React.ReactElement => {\n const { dateLocale } = useLocalization();\n const globalStore = useSendbirdStateContext();\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || MAX_USER_MENTION_COUNT;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || MAX_USER_SUGGESTION_COUNT;\n\n const {\n initialized,\n currentGroupChannel,\n highLightedMessageId,\n setHighLightedMessageId,\n animatedMessageId,\n setAnimatedMessageId,\n updateMessage,\n scrollToMessage,\n replyType,\n threadReplySelectType,\n isReactionEnabled,\n toggleReaction,\n emojiContainer,\n nicknamesMap,\n setQuoteMessage,\n resendMessage,\n renderUserMentionItem,\n onReplyInThread,\n onQuoteMessageClick,\n onMessageAnimated,\n onMessageHighlighted,\n onScrollCallback,\n } = useChannelContext();\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const [isAnimated, setIsAnimated] = useState(false);\n const [isHighlighted, setIsHighlighted] = useState(false);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const editMessageInputRef = useRef(null);\n const messageScrollRef = useRef(null);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentGroupChannel)\n && !isDisabledBecauseMuted(currentGroupChannel);\n const disabled = !initialized\n || isDisabledBecauseFrozen(currentGroupChannel)\n || isDisabledBecauseMuted(currentGroupChannel)\n || !isOnline;\n\n const handleOnScroll = useHandleOnScrollCallback({\n hasMore: false,\n onScroll: onScrollCallback,\n scrollRef: messageScrollRef,\n });\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n useDidMountEffect(() => {\n if (currentGroupChannel?.lastMessage?.messageId === message?.messageId) {\n handleScroll?.();\n }\n }, [showEdit, message?.reactions?.length]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageHighlightedTimeout = null;\n if (highLightedMessageId === message.messageId && messageScrollRef?.current) {\n handleOnScroll();\n setIsAnimated(false);\n animationTimeout = setTimeout(() => {\n setIsHighlighted(true);\n }, 500);\n messageHighlightedTimeout = setTimeout(() => {\n setHighLightedMessageId(0);\n onMessageHighlighted?.();\n }, 1600);\n } else {\n setIsHighlighted(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageHighlightedTimeout);\n }\n }, [highLightedMessageId, messageScrollRef.current, message.messageId]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageAnimatedTimeout = null;\n if (animatedMessageId === message.messageId && messageScrollRef?.current) {\n handleOnScroll();\n setIsHighlighted(false);\n animationTimeout = setTimeout(() => {\n setIsAnimated(true);\n }, 500);\n messageAnimatedTimeout = setTimeout(() => {\n setAnimatedMessageId(0);\n onMessageAnimated?.();\n }, 1600);\n } else {\n setIsAnimated(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageAnimatedTimeout);\n }\n }, [animatedMessageId, messageScrollRef.current, message.messageId, onMessageAnimated]);\n const renderedMessage = useMemo(() => {\n return renderMessage?.({\n message,\n chainTop,\n chainBottom,\n });\n }, [message, renderMessage]);\n const renderedCustomSeparator = useMemo(() => {\n if (renderCustomSeparator) {\n return renderCustomSeparator?.({ message: message });\n }\n return null;\n }, [message, renderCustomSeparator]);\n\n if (renderedMessage) {\n return (\n <div\n ref={messageScrollRef}\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n >\n {/* date-separator */}\n {\n // TODO: Add message instance as a function parameter\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {renderedMessage}\n </div>\n );\n }\n\n if (showEdit && message?.isUserMessage?.()) {\n return renderEditInput?.() || (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentGroupChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n style={{ marginBottom: '2px' }}\n ref={messageScrollRef}\n >\n {/* date-separator */}\n {\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {/* Message */}\n {\n renderMessageContent?.() || (\n <MessageContent\n className=\"sendbird-message-hoc__message-content\"\n userId={userId}\n scrollToMessage={scrollToMessage}\n channel={currentGroupChannel}\n message={message}\n disabled={!isOnline}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n threadReplySelectType={threadReplySelectType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n resendMessage={resendMessage}\n toggleReaction={toggleReaction}\n setQuoteMessage={setQuoteMessage}\n onReplyInThread={onReplyInThread}\n onQuoteMessageClick={onQuoteMessageClick}\n />\n )\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )\n }\n {\n showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n onCancel={() => setShowFileViewer(false)}\n />\n )\n }\n </div>\n );\n};\n\nexport default Message;\n"],"names":["useDidMountEffect","func","deps","_a","useState","didMount","setDidmount","useEffect","Message","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeparator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","_d","config","userId","isOnline","isMentionEnabled","userMention","maxUserMentionCount","maxMentionCount","MAX_USER_MENTION_COUNT","maxUserSuggestionCount","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","_e","useChannelContext","initialized","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","threadReplySelectType","isReactionEnabled","toggleReaction","emojiContainer","nicknamesMap","setQuoteMessage","resendMessage","renderUserMentionItem","onReplyInThread","onQuoteMessageClick","onMessageAnimated","onMessageHighlighted","onScrollCallback","_f","showEdit","setShowEdit","_g","showRemove","setShowRemove","_h","showFileViewer","setShowFileViewer","_j","isAnimated","setIsAnimated","_k","isHighlighted","setIsHighlighted","_l","mentionNickname","setMentionNickname","_m","mentionedUsers","setMentionedUsers","_o","mentionedUserIds","setMentionedUserIds","_p","messageInputEvent","setMessageInputEvent","_q","selectedUser","setSelectedUser","_r","mentionSuggestedUsers","setMentionSuggestedUsers","_s","ableMention","setAbleMention","editMessageInputRef","useRef","messageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","handleOnScroll","useHandleOnScrollCallback","hasMore","onScroll","scrollRef","filter","i","indexOf","splice","lastMessage","messageId","_b","reactions","useLayoutEffect","animationTimeout","messageHighlightedTimeout","current","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","createElement","ref","className","getClassName","DateSeparator","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","format","createdAt","locale","_c","isUserMessage","call","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","user","__spreadArray","onFocusItemChange","onFetchUsers","users","ableAddMention","MessageInput","isEdit","mentionSelectedUser","onStartTyping","startTyping","onUpdateMessage","mentionTemplate","endTyping","onCancelEdit","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","style","marginBottom","MessageContent","channel","RemoveMessageModal","onCancel","FileViewer"],"mappings":"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"}