@sendbird/uikit-react 3.6.8 → 3.6.9

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 (745) hide show
  1. package/App.js +66 -57
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +167 -0
  4. package/Channel/components/ChannelHeader.js +22 -20
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +48 -42
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +18 -16
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +4 -4
  11. package/Channel/components/Message.js +42 -37
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +48 -35
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +44 -38
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +25 -21
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +20 -18
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +18 -16
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +4 -4
  24. package/Channel/context.js +15 -13
  25. package/Channel/context.js.map +1 -1
  26. package/Channel/utils/compareMessagesForGrouping.js +7 -6
  27. package/Channel/utils/compareMessagesForGrouping.js.map +1 -1
  28. package/Channel/utils/getMessagePartsInfo.js +8 -7
  29. package/Channel/utils/getMessagePartsInfo.js.map +1 -1
  30. package/Channel.js +50 -42
  31. package/Channel.js.map +1 -1
  32. package/ChannelList/components/AddChannel.js +16 -15
  33. package/ChannelList/components/AddChannel.js.map +1 -1
  34. package/ChannelList/components/ChannelListHeader.js +6 -6
  35. package/ChannelList/components/ChannelListUI.js +33 -31
  36. package/ChannelList/components/ChannelListUI.js.map +1 -1
  37. package/ChannelList/components/ChannelPreview.js +31 -29
  38. package/ChannelList/components/ChannelPreview.js.map +1 -1
  39. package/ChannelList/components/ChannelPreviewAction.js +16 -15
  40. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  41. package/ChannelList/context.js +9 -8
  42. package/ChannelList/context.js.map +1 -1
  43. package/ChannelList.js +33 -31
  44. package/ChannelList.js.map +1 -1
  45. package/{ChannelListProvider-63f3007c.js → ChannelListProvider-ba11ee5f.js} +8 -8
  46. package/{ChannelListProvider-63f3007c.js.map → ChannelListProvider-ba11ee5f.js.map} +1 -1
  47. package/{ChannelProvider-d6dedff9.js → ChannelProvider-7400e8f6.js} +67 -24
  48. package/ChannelProvider-7400e8f6.js.map +1 -0
  49. package/ChannelSettings/components/ChannelProfile.js +14 -12
  50. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  51. package/ChannelSettings/components/ChannelSettingsUI.js +18 -17
  52. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  53. package/ChannelSettings/components/EditDetailsModal.js +15 -13
  54. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  55. package/ChannelSettings/components/LeaveChannel.js +14 -13
  56. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  57. package/ChannelSettings/components/ModerationPanel.js +16 -15
  58. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  59. package/ChannelSettings/components/UserListItem.js +11 -10
  60. package/ChannelSettings/components/UserListItem.js.map +1 -1
  61. package/ChannelSettings/components/UserPanel.js +14 -13
  62. package/ChannelSettings/components/UserPanel.js.map +1 -1
  63. package/ChannelSettings/context.js +3 -3
  64. package/ChannelSettings.js +18 -17
  65. package/ChannelSettings.js.map +1 -1
  66. package/CreateChannel/components/CreateChannelUI.js +15 -14
  67. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  68. package/CreateChannel/components/InviteUsers.js +16 -15
  69. package/CreateChannel/components/InviteUsers.js.map +1 -1
  70. package/CreateChannel/components/SelectChannelType.js +13 -12
  71. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  72. package/CreateChannel/context.js +4 -4
  73. package/CreateChannel.js +15 -14
  74. package/CreateChannel.js.map +1 -1
  75. package/{CreateChannelProvider-32ceb13a.js → CreateChannelProvider-b2487387.js} +1 -1
  76. package/{CreateChannelProvider-32ceb13a.js.map → CreateChannelProvider-b2487387.js.map} +1 -1
  77. package/CreateOpenChannel/components/CreateOpenChannelUI.js +12 -10
  78. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  79. package/CreateOpenChannel/context.js +1 -1
  80. package/CreateOpenChannel.js +11 -9
  81. package/CreateOpenChannel.js.map +1 -1
  82. package/EditUserProfile/components/EditUserProfileUI.js +13 -12
  83. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  84. package/EditUserProfile.js +14 -13
  85. package/EditUserProfile.js.map +1 -1
  86. package/{LocalizationContext-9a9a0064.js → LocalizationContext-c9b218d4.js} +3 -3
  87. package/{LocalizationContext-9a9a0064.js.map → LocalizationContext-c9b218d4.js.map} +1 -1
  88. package/{MediaQueryContext-aebb709a.js → MediaQueryContext-532b0a77.js} +1 -1
  89. package/{MediaQueryContext-aebb709a.js.map → MediaQueryContext-532b0a77.js.map} +1 -1
  90. package/{MemberList-54496842.js → MemberList-15511dd2.js} +7 -6
  91. package/{MemberList-54496842.js.map → MemberList-15511dd2.js.map} +1 -1
  92. package/Message/hooks/useDirtyGetMentions.js +1 -1
  93. package/Message/hooks/useDirtyGetMentions.js.map +1 -1
  94. package/MessageSearch/components/MessageSearchUI.js +13 -11
  95. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  96. package/MessageSearch/context.js +1 -1
  97. package/MessageSearch.js +13 -11
  98. package/MessageSearch.js.map +1 -1
  99. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  100. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  101. package/OpenChannel/components/OpenChannelInput.js +20 -20
  102. package/OpenChannel/components/OpenChannelMessage.js +35 -32
  103. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  104. package/OpenChannel/components/OpenChannelMessageList.js +34 -33
  105. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  106. package/OpenChannel/components/OpenChannelUI.js +34 -33
  107. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  108. package/OpenChannel/context.js +8 -8
  109. package/OpenChannel.js +34 -33
  110. package/OpenChannel.js.map +1 -1
  111. package/OpenChannelList/components/OpenChannelListUI.js +15 -13
  112. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  113. package/OpenChannelList/components/OpenChannelPreview.js +3 -3
  114. package/OpenChannelList/context.js +3 -3
  115. package/OpenChannelList.js +15 -13
  116. package/OpenChannelList.js.map +1 -1
  117. package/{OpenChannelListProvider-6f1599b7.js → OpenChannelListProvider-a79c47d4.js} +3 -3
  118. package/{OpenChannelListProvider-6f1599b7.js.map → OpenChannelListProvider-a79c47d4.js.map} +1 -1
  119. package/{OpenChannelProvider-8fdab056.js → OpenChannelProvider-4f21a22d.js} +13 -8
  120. package/OpenChannelProvider-4f21a22d.js.map +1 -0
  121. package/OpenChannelSettings/components/EditDetailsModal.js +16 -14
  122. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  123. package/OpenChannelSettings/components/OpenChannelProfile.js +15 -13
  124. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  125. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +19 -18
  126. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  127. package/OpenChannelSettings/components/OperatorUI.js +18 -17
  128. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  129. package/OpenChannelSettings/components/ParticipantUI.js +15 -14
  130. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  131. package/OpenChannelSettings/context.js +3 -3
  132. package/OpenChannelSettings.js +19 -18
  133. package/OpenChannelSettings.js.map +1 -1
  134. package/README.md +7 -0
  135. package/{RemoveMessageModal-715f4bd6.js → RemoveMessageModal-62276928.js} +7 -5
  136. package/RemoveMessageModal-62276928.js.map +1 -0
  137. package/SendbirdProvider.js +43 -24
  138. package/SendbirdProvider.js.map +1 -1
  139. package/Thread/components/ParentMessageInfo.js +39 -36
  140. package/Thread/components/ParentMessageInfo.js.map +1 -1
  141. package/Thread/components/ParentMessageInfoItem.js +33 -23
  142. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  143. package/Thread/components/ThreadHeader.js +6 -6
  144. package/Thread/components/ThreadList.js +43 -39
  145. package/Thread/components/ThreadList.js.map +1 -1
  146. package/Thread/components/ThreadListItem.js +50 -40
  147. package/Thread/components/ThreadListItem.js.map +1 -1
  148. package/Thread/components/ThreadMessageInput.js +48 -35
  149. package/Thread/components/ThreadMessageInput.js.map +1 -1
  150. package/Thread/components/ThreadUI.js +48 -43
  151. package/Thread/components/ThreadUI.js.map +1 -1
  152. package/Thread/context.js +12 -8
  153. package/Thread/context.js.map +1 -1
  154. package/Thread.js +58 -44
  155. package/Thread.js.map +1 -1
  156. package/{ThreadProvider-696e3a32.js → ThreadProvider-593b6c29.js} +61 -15
  157. package/ThreadProvider-593b6c29.js.map +1 -0
  158. package/{UserProfileContext-9fba7a03.js → UserProfileContext-36e341fd.js} +1 -1
  159. package/{UserProfileContext-9fba7a03.js.map → UserProfileContext-36e341fd.js.map} +1 -1
  160. package/VoicePlayer/context.js +3 -3
  161. package/VoicePlayer/useVoicePlayer.js +12 -10
  162. package/VoicePlayer/useVoicePlayer.js.map +1 -1
  163. package/VoiceRecorder/context.js +13 -11
  164. package/VoiceRecorder/context.js.map +1 -1
  165. package/VoiceRecorder/useVoiceRecorder.js +11 -9
  166. package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  167. package/{WebAudioUtils-ba28e2b0.js → WebAudioUtils-ca6a01e4.js} +2 -2
  168. package/{WebAudioUtils-ba28e2b0.js.map → WebAudioUtils-ca6a01e4.js.map} +1 -1
  169. package/{_rollupPluginBabelHelpers-0f2ee8c1.js → _rollupPluginBabelHelpers-ea73a031.js} +1 -1
  170. package/_rollupPluginBabelHelpers-ea73a031.js.map +1 -0
  171. package/{actionTypes-670a9a48.js → actionTypes-bd59e881.js} +1 -1
  172. package/{actionTypes-670a9a48.js.map → actionTypes-bd59e881.js.map} +1 -1
  173. package/cjs/App.js +66 -57
  174. package/cjs/App.js.map +1 -1
  175. package/cjs/Channel/components/ChannelHeader.js +22 -20
  176. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  177. package/cjs/Channel/components/ChannelUI.js +48 -42
  178. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  179. package/cjs/Channel/components/FileViewer.js +18 -16
  180. package/cjs/Channel/components/FileViewer.js.map +1 -1
  181. package/cjs/Channel/components/FrozenNotification.js +4 -4
  182. package/cjs/Channel/components/Message.js +42 -37
  183. package/cjs/Channel/components/Message.js.map +1 -1
  184. package/cjs/Channel/components/MessageInput.js +49 -36
  185. package/cjs/Channel/components/MessageInput.js.map +1 -1
  186. package/cjs/Channel/components/MessageList.js +44 -38
  187. package/cjs/Channel/components/MessageList.js.map +1 -1
  188. package/cjs/Channel/components/RemoveMessageModal.js +25 -21
  189. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  190. package/cjs/Channel/components/SuggestedMentionList.js +20 -18
  191. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  192. package/cjs/Channel/components/TypingIndicator.js +18 -16
  193. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  194. package/cjs/Channel/components/UnreadCount.js +4 -4
  195. package/cjs/Channel/context.js +15 -13
  196. package/cjs/Channel/context.js.map +1 -1
  197. package/cjs/Channel/utils/compareMessagesForGrouping.js +7 -6
  198. package/cjs/Channel/utils/compareMessagesForGrouping.js.map +1 -1
  199. package/cjs/Channel/utils/getMessagePartsInfo.js +8 -7
  200. package/cjs/Channel/utils/getMessagePartsInfo.js.map +1 -1
  201. package/cjs/Channel.js +50 -42
  202. package/cjs/Channel.js.map +1 -1
  203. package/cjs/ChannelList/components/AddChannel.js +16 -15
  204. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  205. package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
  206. package/cjs/ChannelList/components/ChannelListUI.js +33 -31
  207. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  208. package/cjs/ChannelList/components/ChannelPreview.js +31 -29
  209. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  210. package/cjs/ChannelList/components/ChannelPreviewAction.js +16 -15
  211. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  212. package/cjs/ChannelList/context.js +9 -8
  213. package/cjs/ChannelList/context.js.map +1 -1
  214. package/cjs/ChannelList.js +33 -31
  215. package/cjs/ChannelList.js.map +1 -1
  216. package/cjs/{ChannelListProvider-1506b1fa.js → ChannelListProvider-69db317f.js} +8 -8
  217. package/cjs/{ChannelListProvider-1506b1fa.js.map → ChannelListProvider-69db317f.js.map} +1 -1
  218. package/cjs/{ChannelProvider-c8bc29d3.js → ChannelProvider-2ee005bc.js} +67 -24
  219. package/cjs/ChannelProvider-2ee005bc.js.map +1 -0
  220. package/cjs/ChannelSettings/components/ChannelProfile.js +14 -12
  221. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  222. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -17
  223. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  224. package/cjs/ChannelSettings/components/EditDetailsModal.js +15 -13
  225. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  226. package/cjs/ChannelSettings/components/LeaveChannel.js +15 -14
  227. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  228. package/cjs/ChannelSettings/components/ModerationPanel.js +19 -18
  229. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  230. package/cjs/ChannelSettings/components/UserListItem.js +11 -10
  231. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  232. package/cjs/ChannelSettings/components/UserPanel.js +14 -13
  233. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  234. package/cjs/ChannelSettings/context.js +3 -3
  235. package/cjs/ChannelSettings.js +18 -17
  236. package/cjs/ChannelSettings.js.map +1 -1
  237. package/cjs/CreateChannel/components/CreateChannelUI.js +15 -14
  238. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  239. package/cjs/CreateChannel/components/InviteUsers.js +16 -15
  240. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  241. package/cjs/CreateChannel/components/SelectChannelType.js +13 -12
  242. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  243. package/cjs/CreateChannel/context.js +4 -4
  244. package/cjs/CreateChannel.js +15 -14
  245. package/cjs/CreateChannel.js.map +1 -1
  246. package/cjs/{CreateChannelProvider-f30302a5.js → CreateChannelProvider-1c4d626c.js} +1 -1
  247. package/cjs/{CreateChannelProvider-f30302a5.js.map → CreateChannelProvider-1c4d626c.js.map} +1 -1
  248. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +12 -10
  249. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  250. package/cjs/CreateOpenChannel/context.js +1 -1
  251. package/cjs/CreateOpenChannel.js +11 -9
  252. package/cjs/CreateOpenChannel.js.map +1 -1
  253. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -12
  254. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  255. package/cjs/EditUserProfile.js +14 -13
  256. package/cjs/EditUserProfile.js.map +1 -1
  257. package/cjs/{LocalizationContext-9c99457f.js → LocalizationContext-eb7a59da.js} +3 -3
  258. package/cjs/{LocalizationContext-9c99457f.js.map → LocalizationContext-eb7a59da.js.map} +1 -1
  259. package/cjs/{MediaQueryContext-a5c77095.js → MediaQueryContext-ca045060.js} +1 -1
  260. package/cjs/{MediaQueryContext-a5c77095.js.map → MediaQueryContext-ca045060.js.map} +1 -1
  261. package/cjs/{MemberList-166dd7de.js → MemberList-eea5c64b.js} +8 -7
  262. package/cjs/{MemberList-166dd7de.js.map → MemberList-eea5c64b.js.map} +1 -1
  263. package/cjs/Message/hooks/useDirtyGetMentions.js +1 -1
  264. package/cjs/Message/hooks/useDirtyGetMentions.js.map +1 -1
  265. package/cjs/MessageSearch/components/MessageSearchUI.js +13 -11
  266. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  267. package/cjs/MessageSearch/context.js +1 -1
  268. package/cjs/MessageSearch.js +13 -11
  269. package/cjs/MessageSearch.js.map +1 -1
  270. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  271. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  272. package/cjs/OpenChannel/components/OpenChannelInput.js +20 -20
  273. package/cjs/OpenChannel/components/OpenChannelMessage.js +35 -32
  274. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  275. package/cjs/OpenChannel/components/OpenChannelMessageList.js +34 -33
  276. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  277. package/cjs/OpenChannel/components/OpenChannelUI.js +34 -33
  278. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  279. package/cjs/OpenChannel/context.js +8 -8
  280. package/cjs/OpenChannel.js +34 -33
  281. package/cjs/OpenChannel.js.map +1 -1
  282. package/cjs/OpenChannelList/components/OpenChannelListUI.js +15 -13
  283. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  284. package/cjs/OpenChannelList/components/OpenChannelPreview.js +3 -3
  285. package/cjs/OpenChannelList/context.js +3 -3
  286. package/cjs/OpenChannelList.js +15 -13
  287. package/cjs/OpenChannelList.js.map +1 -1
  288. package/cjs/{OpenChannelListProvider-74ae7138.js → OpenChannelListProvider-25a0f74d.js} +3 -3
  289. package/cjs/{OpenChannelListProvider-74ae7138.js.map → OpenChannelListProvider-25a0f74d.js.map} +1 -1
  290. package/cjs/{OpenChannelProvider-57c10c09.js → OpenChannelProvider-036e515e.js} +13 -8
  291. package/cjs/OpenChannelProvider-036e515e.js.map +1 -0
  292. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +16 -14
  293. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  294. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +15 -13
  295. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  296. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +19 -18
  297. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  298. package/cjs/OpenChannelSettings/components/OperatorUI.js +22 -21
  299. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  300. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -14
  301. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  302. package/cjs/OpenChannelSettings/context.js +3 -3
  303. package/cjs/OpenChannelSettings.js +19 -18
  304. package/cjs/OpenChannelSettings.js.map +1 -1
  305. package/cjs/{RemoveMessageModal-029b1c86.js → RemoveMessageModal-7ed24af4.js} +7 -5
  306. package/cjs/RemoveMessageModal-7ed24af4.js.map +1 -0
  307. package/cjs/SendbirdProvider.js +43 -24
  308. package/cjs/SendbirdProvider.js.map +1 -1
  309. package/cjs/Thread/components/ParentMessageInfo.js +39 -36
  310. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  311. package/cjs/Thread/components/ParentMessageInfoItem.js +33 -23
  312. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  313. package/cjs/Thread/components/ThreadHeader.js +6 -6
  314. package/cjs/Thread/components/ThreadList.js +43 -39
  315. package/cjs/Thread/components/ThreadList.js.map +1 -1
  316. package/cjs/Thread/components/ThreadListItem.js +53 -43
  317. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  318. package/cjs/Thread/components/ThreadMessageInput.js +49 -36
  319. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  320. package/cjs/Thread/components/ThreadUI.js +48 -43
  321. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  322. package/cjs/Thread/context.js +12 -8
  323. package/cjs/Thread/context.js.map +1 -1
  324. package/cjs/Thread.js +58 -44
  325. package/cjs/Thread.js.map +1 -1
  326. package/cjs/{ThreadProvider-9dfc3ad5.js → ThreadProvider-4c93de8a.js} +61 -15
  327. package/cjs/ThreadProvider-4c93de8a.js.map +1 -0
  328. package/cjs/{UserProfileContext-1f226141.js → UserProfileContext-abe57718.js} +1 -1
  329. package/cjs/{UserProfileContext-1f226141.js.map → UserProfileContext-abe57718.js.map} +1 -1
  330. package/cjs/VoicePlayer/context.js +3 -3
  331. package/cjs/VoicePlayer/useVoicePlayer.js +12 -10
  332. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
  333. package/cjs/VoiceRecorder/context.js +13 -11
  334. package/cjs/VoiceRecorder/context.js.map +1 -1
  335. package/cjs/VoiceRecorder/useVoiceRecorder.js +11 -9
  336. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  337. package/cjs/{WebAudioUtils-250f7398.js → WebAudioUtils-348c38b8.js} +2 -2
  338. package/cjs/{WebAudioUtils-250f7398.js.map → WebAudioUtils-348c38b8.js.map} +1 -1
  339. package/cjs/{_rollupPluginBabelHelpers-117c3ffb.js → _rollupPluginBabelHelpers-a85bd364.js} +1 -1
  340. package/cjs/_rollupPluginBabelHelpers-a85bd364.js.map +1 -0
  341. package/cjs/{actionTypes-01de4d11.js → actionTypes-412ca236.js} +1 -1
  342. package/cjs/{actionTypes-01de4d11.js.map → actionTypes-412ca236.js.map} +1 -1
  343. package/cjs/{color-a057a4c2.js → color-2f1198fc.js} +1 -1
  344. package/cjs/{color-a057a4c2.js.map → color-2f1198fc.js.map} +1 -1
  345. package/cjs/{compareIds-49d9aea6.js → compareIds-89c258a0.js} +1 -1
  346. package/cjs/{compareIds-49d9aea6.js.map → compareIds-89c258a0.js.map} +1 -1
  347. package/cjs/{const-cd9b71c8.js → const-24d498a6.js} +1 -1
  348. package/cjs/{const-cd9b71c8.js.map → const-24d498a6.js.map} +1 -1
  349. package/cjs/{const-8e4d382d.js → const-95881697.js} +1 -1
  350. package/cjs/{const-8e4d382d.js.map → const-95881697.js.map} +1 -1
  351. package/cjs/{consts-4a51c64b.js → consts-2957b793.js} +1 -1
  352. package/cjs/{consts-4a51c64b.js.map → consts-2957b793.js.map} +1 -1
  353. package/cjs/{consts-fb9dd3a0.js → consts-7b830cc5.js} +5 -1
  354. package/cjs/{consts-fb9dd3a0.js.map → consts-7b830cc5.js.map} +1 -1
  355. package/cjs/{consts-3afe4fa8.js → consts-c5d38c32.js} +1 -1
  356. package/cjs/{consts-3afe4fa8.js.map → consts-c5d38c32.js.map} +1 -1
  357. package/cjs/{consts-d866b64a.js → consts-dde4f05d.js} +1 -1
  358. package/cjs/{consts-d866b64a.js.map → consts-dde4f05d.js.map} +1 -1
  359. package/cjs/{context-d7bb15b5.js → context-b53bf38e.js} +2 -2
  360. package/cjs/{context-d7bb15b5.js.map → context-b53bf38e.js.map} +1 -1
  361. package/cjs/dist/index.css +371 -280
  362. package/cjs/dist/index.css.map +1 -1
  363. package/cjs/{index-df172622.js → index-03655429.js} +2 -2
  364. package/cjs/{index-df172622.js.map → index-03655429.js.map} +1 -1
  365. package/cjs/{index-dc15cf44.js → index-0f229ac7.js} +4 -4
  366. package/cjs/{index-dc15cf44.js.map → index-0f229ac7.js.map} +1 -1
  367. package/cjs/{index-a5aa0a9b.js → index-0f7049fb.js} +8 -7
  368. package/cjs/{index-a5aa0a9b.js.map → index-0f7049fb.js.map} +1 -1
  369. package/cjs/{index-5b3bc2e9.js → index-1f796e5a.js} +4 -4
  370. package/cjs/{index-5b3bc2e9.js.map → index-1f796e5a.js.map} +1 -1
  371. package/cjs/index-28c0a443.js +58 -0
  372. package/cjs/index-28c0a443.js.map +1 -0
  373. package/cjs/{index-15e4fb71.js → index-2fbc5922.js} +4 -4
  374. package/cjs/{index-15e4fb71.js.map → index-2fbc5922.js.map} +1 -1
  375. package/cjs/{index-5359bc78.js → index-2fd388b9.js} +6 -6
  376. package/cjs/{index-5359bc78.js.map → index-2fd388b9.js.map} +1 -1
  377. package/cjs/{index-9cffff55.js → index-494b5c25.js} +3 -3
  378. package/cjs/{index-9cffff55.js.map → index-494b5c25.js.map} +1 -1
  379. package/cjs/{index-b64ce51a.js → index-4d39de27.js} +10 -9
  380. package/cjs/index-4d39de27.js.map +1 -0
  381. package/cjs/{index-2413bae4.js → index-5628e0c0.js} +1 -1
  382. package/cjs/index-5628e0c0.js.map +1 -0
  383. package/cjs/{index-0599b6f2.js → index-613acaa0.js} +36 -4
  384. package/cjs/index-613acaa0.js.map +1 -0
  385. package/cjs/{index-fe1b738f.js → index-6e0a495a.js} +3 -3
  386. package/cjs/{index-fe1b738f.js.map → index-6e0a495a.js.map} +1 -1
  387. package/cjs/{index-2d4ea9ad.js → index-7e10ab98.js} +4 -4
  388. package/cjs/index-7e10ab98.js.map +1 -0
  389. package/cjs/{index-464461c9.js → index-910f48df.js} +20 -12
  390. package/cjs/index-910f48df.js.map +1 -0
  391. package/cjs/{index-d5522aef.js → index-967cbc91.js} +2 -2
  392. package/cjs/{index-d5522aef.js.map → index-967cbc91.js.map} +1 -1
  393. package/cjs/{index-0d4c4adf.js → index-9813a2f9.js} +3 -3
  394. package/cjs/{index-0d4c4adf.js.map → index-9813a2f9.js.map} +1 -1
  395. package/cjs/{index-913491a1.js → index-ae51b0df.js} +2 -2
  396. package/cjs/{index-913491a1.js.map → index-ae51b0df.js.map} +1 -1
  397. package/cjs/{index-ba4dea0c.js → index-c9a4a555.js} +1 -1
  398. package/cjs/{index-ba4dea0c.js.map → index-c9a4a555.js.map} +1 -1
  399. package/cjs/{index-c59af641.js → index-de4da1f2.js} +2 -2
  400. package/cjs/{index-c59af641.js.map → index-de4da1f2.js.map} +1 -1
  401. package/cjs/index-f0b55959.js +139 -0
  402. package/cjs/index-f0b55959.js.map +1 -0
  403. package/cjs/{index-4eb2a000.js → index-f40c4cf0.js} +2 -2
  404. package/cjs/{index-4eb2a000.js.map → index-f40c4cf0.js.map} +1 -1
  405. package/cjs/index.js +60 -55
  406. package/cjs/index.js.map +1 -1
  407. package/cjs/{index.module-2c2cf337.js → index.module-5c951066.js} +1 -1
  408. package/cjs/{index.module-2c2cf337.js.map → index.module-5c951066.js.map} +1 -1
  409. package/cjs/package.json +1 -1
  410. package/cjs/{resolvedReplyType-053d2dbc.js → resolvedReplyType-314fee09.js} +1 -1
  411. package/cjs/{resolvedReplyType-053d2dbc.js.map → resolvedReplyType-314fee09.js.map} +1 -1
  412. package/cjs/sendbirdSelectors.js +3 -3
  413. package/cjs/stringFormatterUtils-3e53394c.js +16 -0
  414. package/cjs/stringFormatterUtils-3e53394c.js.map +1 -0
  415. package/cjs/{stringSet-dbdeec9c.js → stringSet-b75b75ae.js} +1 -1
  416. package/cjs/{stringSet-dbdeec9c.js.map → stringSet-b75b75ae.js.map} +1 -1
  417. package/cjs/{tokenize-7204c391.js → tokenize-42536b7a.js} +2 -2
  418. package/cjs/{tokenize-7204c391.js.map → tokenize-42536b7a.js.map} +1 -1
  419. package/cjs/{topics-c495cb3a.js → topics-2c35cfd7.js} +1 -1
  420. package/cjs/{topics-c495cb3a.js.map → topics-2c35cfd7.js.map} +1 -1
  421. package/cjs/{types-79ca7893.js → types-382588b3.js} +1 -1
  422. package/cjs/types-382588b3.js.map +1 -0
  423. package/cjs/ui/Accordion.js +2 -2
  424. package/cjs/ui/AccordionGroup.js +2 -2
  425. package/cjs/ui/AdminMessage.js +2 -2
  426. package/cjs/ui/Avatar.js +1 -1
  427. package/cjs/ui/Badge.js +4 -4
  428. package/cjs/ui/BottomSheet.js +6 -1
  429. package/cjs/ui/BottomSheet.js.map +1 -1
  430. package/cjs/ui/Button.js +10 -12
  431. package/cjs/ui/Button.js.map +1 -1
  432. package/cjs/ui/ChannelAvatar.js +2 -2
  433. package/cjs/ui/ConnectionStatus.js +4 -4
  434. package/cjs/ui/ContextMenu.js +6 -5
  435. package/cjs/ui/ContextMenu.js.map +1 -1
  436. package/cjs/ui/DateSeparator.js +3 -3
  437. package/cjs/ui/EmojiReactions.js +14 -13
  438. package/cjs/ui/EmojiReactions.js.map +1 -1
  439. package/cjs/ui/FileMessageItemBody.js +7 -6
  440. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  441. package/cjs/ui/FileViewer.js +14 -13
  442. package/cjs/ui/FileViewer.js.map +1 -1
  443. package/cjs/ui/Icon.js +3 -0
  444. package/cjs/ui/Icon.js.map +1 -1
  445. package/cjs/ui/IconButton.js +1 -1
  446. package/cjs/ui/ImageRenderer.js +58 -14
  447. package/cjs/ui/ImageRenderer.js.map +1 -1
  448. package/cjs/ui/Input.js +2 -2
  449. package/cjs/ui/Label.js +2 -2
  450. package/cjs/ui/LinkLabel.js +2 -2
  451. package/cjs/ui/MentionLabel.js +11 -10
  452. package/cjs/ui/MentionLabel.js.map +1 -1
  453. package/cjs/ui/MentionUserLabel.js +1 -1
  454. package/cjs/ui/MessageContent.js +43 -34
  455. package/cjs/ui/MessageContent.js.map +1 -1
  456. package/cjs/ui/MessageInput/hooks/usePaste.js +4 -4
  457. package/cjs/ui/MessageInput.js +54 -40
  458. package/cjs/ui/MessageInput.js.map +1 -1
  459. package/cjs/ui/MessageItemMenu.js +9 -8
  460. package/cjs/ui/MessageItemMenu.js.map +1 -1
  461. package/cjs/ui/MessageItemReactionMenu.js +9 -8
  462. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  463. package/cjs/ui/MessageSearchFileItem.js +18 -18
  464. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  465. package/cjs/ui/MessageSearchItem.js +8 -8
  466. package/cjs/ui/MessageStatus.js +11 -10
  467. package/cjs/ui/MessageStatus.js.map +1 -1
  468. package/cjs/ui/Modal.js +26 -17
  469. package/cjs/ui/Modal.js.map +1 -1
  470. package/cjs/ui/OGMessageItemBody.js +14 -14
  471. package/cjs/ui/OpenChannelAdminMessage.js +2 -2
  472. package/cjs/ui/OpenChannelAvatar.js +5 -5
  473. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  474. package/cjs/ui/OpenchannelFileMessage.js +16 -15
  475. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  476. package/cjs/ui/OpenchannelOGMessage.js +18 -18
  477. package/cjs/ui/OpenchannelThumbnailMessage.js +15 -14
  478. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  479. package/cjs/ui/OpenchannelUserMessage.js +16 -15
  480. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  481. package/cjs/ui/PlaceHolder.js +5 -5
  482. package/cjs/ui/PlaybackTime.js +2 -2
  483. package/cjs/ui/QuoteMessage.js +15 -13
  484. package/cjs/ui/QuoteMessage.js.map +1 -1
  485. package/cjs/ui/QuoteMessageInput.js +14 -12
  486. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  487. package/cjs/ui/ReactionBadge.js +2 -2
  488. package/cjs/ui/ReactionButton.js +4 -4
  489. package/cjs/ui/SortByRow.js +1 -1
  490. package/cjs/ui/TextButton.js +1 -1
  491. package/cjs/ui/TextMessageItemBody.js +14 -14
  492. package/cjs/ui/ThreadReplies.js +5 -5
  493. package/cjs/ui/ThumbnailMessageItemBody.js +16 -17
  494. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  495. package/cjs/ui/Toggle.js +1 -1
  496. package/cjs/ui/Tooltip.js +2 -2
  497. package/cjs/ui/UnknownMessageItemBody.js +7 -6
  498. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  499. package/cjs/ui/UserListItem.js +11 -10
  500. package/cjs/ui/UserListItem.js.map +1 -1
  501. package/cjs/ui/UserProfile.js +9 -9
  502. package/cjs/ui/VoiceMessageItemBody.js +12 -10
  503. package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
  504. package/cjs/ui/VoiceMessgeInput.js +7 -7
  505. package/cjs/ui/Word.js +11 -10
  506. package/cjs/ui/Word.js.map +1 -1
  507. package/cjs/{VoiceMessageInputWrapper-953affee.js → useHandleUploadFiles-84bd5a9a.js} +129 -8
  508. package/cjs/useHandleUploadFiles-84bd5a9a.js.map +1 -0
  509. package/cjs/{useLongPress-e7c92bb0.js → useLongPress-49aa9a49.js} +3 -3
  510. package/cjs/{useLongPress-e7c92bb0.js.map → useLongPress-49aa9a49.js.map} +1 -1
  511. package/cjs/useSendMultipleFilesMessage-c5266ca8.js +109 -0
  512. package/cjs/useSendMultipleFilesMessage-c5266ca8.js.map +1 -0
  513. package/cjs/useSendbirdStateContext.js +1 -1
  514. package/cjs/utils/message/isVoiceMessage.js +3 -2
  515. package/cjs/utils/message/isVoiceMessage.js.map +1 -1
  516. package/cjs/{utils-b6cca626.js → utils-1e9e97b5.js} +4 -4
  517. package/cjs/{utils-b6cca626.js.map → utils-1e9e97b5.js.map} +1 -1
  518. package/cjs/{utils-657ea6e9.js → utils-4e18a724.js} +1 -1
  519. package/cjs/{utils-657ea6e9.js.map → utils-4e18a724.js.map} +1 -1
  520. package/cjs/{utils-c2f38151.js → utils-8958cb75.js} +1 -1
  521. package/cjs/{utils-c2f38151.js.map → utils-8958cb75.js.map} +1 -1
  522. package/cjs/{utils-90a7cd20.js → utils-b3e9e1b8.js} +2 -2
  523. package/cjs/{utils-90a7cd20.js.map → utils-b3e9e1b8.js.map} +1 -1
  524. package/cjs/{utils-cc9de39b.js → utils-d5a929c9.js} +1 -1
  525. package/cjs/{utils-cc9de39b.js.map → utils-d5a929c9.js.map} +1 -1
  526. package/cjs/utils-d6285655.js +62 -0
  527. package/cjs/utils-d6285655.js.map +1 -0
  528. package/cjs/{uuid-b2882230.js → uuid-34728ced.js} +1 -1
  529. package/cjs/{uuid-b2882230.js.map → uuid-34728ced.js.map} +1 -1
  530. package/cjs/withSendbird.js +8 -1
  531. package/cjs/withSendbird.js.map +1 -1
  532. package/{color-65ef45d7.js → color-4cef414f.js} +1 -1
  533. package/{color-65ef45d7.js.map → color-4cef414f.js.map} +1 -1
  534. package/{compareIds-c0aa8024.js → compareIds-7e93f2e7.js} +1 -1
  535. package/{compareIds-c0aa8024.js.map → compareIds-7e93f2e7.js.map} +1 -1
  536. package/{const-2c36fe72.js → const-48ffde74.js} +1 -1
  537. package/{const-2c36fe72.js.map → const-48ffde74.js.map} +1 -1
  538. package/{const-537b3aa9.js → const-6c10846e.js} +1 -1
  539. package/{const-537b3aa9.js.map → const-6c10846e.js.map} +1 -1
  540. package/{consts-397a92f1.js → consts-439d56b4.js} +5 -2
  541. package/{consts-397a92f1.js.map → consts-439d56b4.js.map} +1 -1
  542. package/{consts-ee08d763.js → consts-a979689d.js} +1 -1
  543. package/{consts-ee08d763.js.map → consts-a979689d.js.map} +1 -1
  544. package/{consts-066d732d.js → consts-aad4bf65.js} +1 -1
  545. package/{consts-066d732d.js.map → consts-aad4bf65.js.map} +1 -1
  546. package/{consts-c105f2e8.js → consts-bd684c8d.js} +1 -1
  547. package/{consts-c105f2e8.js.map → consts-bd684c8d.js.map} +1 -1
  548. package/{context-524b02ab.js → context-9946197c.js} +2 -2
  549. package/{context-524b02ab.js.map → context-9946197c.js.map} +1 -1
  550. package/dist/index.css +371 -280
  551. package/dist/index.css.map +1 -1
  552. package/{index-2969a2df.js → index-0a50eba0.js} +20 -12
  553. package/index-0a50eba0.js.map +1 -0
  554. package/{index-72d247f7.js → index-1833cc50.js} +2 -2
  555. package/{index-72d247f7.js.map → index-1833cc50.js.map} +1 -1
  556. package/{index-3f6516a2.js → index-2d23ff73.js} +4 -4
  557. package/index-2d23ff73.js.map +1 -0
  558. package/{index-4236c5c8.js → index-320a1756.js} +2 -2
  559. package/{index-4236c5c8.js.map → index-320a1756.js.map} +1 -1
  560. package/{index-d6ceb67a.js → index-3370a58d.js} +2 -2
  561. package/{index-d6ceb67a.js.map → index-3370a58d.js.map} +1 -1
  562. package/{index-f1d37762.js → index-373d3069.js} +4 -4
  563. package/{index-f1d37762.js.map → index-373d3069.js.map} +1 -1
  564. package/index-44d3dac3.js +132 -0
  565. package/index-44d3dac3.js.map +1 -0
  566. package/{index-91634369.js → index-516ad99d.js} +1 -1
  567. package/{index-91634369.js.map → index-516ad99d.js.map} +1 -1
  568. package/{index-40e8e312.js → index-526cbeea.js} +2 -2
  569. package/{index-40e8e312.js.map → index-526cbeea.js.map} +1 -1
  570. package/{index-4c58b734.js → index-6bca558b.js} +8 -7
  571. package/{index-4c58b734.js.map → index-6bca558b.js.map} +1 -1
  572. package/{index-4c4b34c9.js → index-6d0ae6a0.js} +3 -3
  573. package/{index-4c4b34c9.js.map → index-6d0ae6a0.js.map} +1 -1
  574. package/{index-da7bc750.js → index-825c96d3.js} +3 -3
  575. package/{index-da7bc750.js.map → index-825c96d3.js.map} +1 -1
  576. package/{index-d972c8e3.js → index-9083293d.js} +4 -4
  577. package/{index-d972c8e3.js.map → index-9083293d.js.map} +1 -1
  578. package/{index-aa87ac03.js → index-a0bd5ef9.js} +3 -3
  579. package/{index-aa87ac03.js.map → index-a0bd5ef9.js.map} +1 -1
  580. package/{index-8017e2b5.js → index-b346dc02.js} +10 -9
  581. package/index-b346dc02.js.map +1 -0
  582. package/index-bae83553.js +51 -0
  583. package/index-bae83553.js.map +1 -0
  584. package/{index-39eeabbb.js → index-c323f04b.js} +33 -5
  585. package/index-c323f04b.js.map +1 -0
  586. package/{index-5ebb83a2.js → index-c5cb0bb2.js} +4 -4
  587. package/{index-5ebb83a2.js.map → index-c5cb0bb2.js.map} +1 -1
  588. package/{index-3e2f101e.js → index-d9b66555.js} +6 -6
  589. package/{index-3e2f101e.js.map → index-d9b66555.js.map} +1 -1
  590. package/{index-d16a8084.js → index-e2afa53f.js} +1 -1
  591. package/index-e2afa53f.js.map +1 -0
  592. package/{index-7c1266b5.js → index-fa19fef7.js} +2 -2
  593. package/{index-7c1266b5.js.map → index-fa19fef7.js.map} +1 -1
  594. package/index.d.ts +155 -31
  595. package/index.js +60 -55
  596. package/index.js.map +1 -1
  597. package/{index.module-b694546f.js → index.module-efef0194.js} +1 -1
  598. package/{index.module-b694546f.js.map → index.module-efef0194.js.map} +1 -1
  599. package/package.json +1 -1
  600. package/{resolvedReplyType-97610f1a.js → resolvedReplyType-84f1270f.js} +1 -1
  601. package/{resolvedReplyType-97610f1a.js.map → resolvedReplyType-84f1270f.js.map} +1 -1
  602. package/sendbirdSelectors.js +3 -3
  603. package/stringFormatterUtils-beea8d82.js +14 -0
  604. package/stringFormatterUtils-beea8d82.js.map +1 -0
  605. package/{stringSet-ed242956.js → stringSet-9fe06e0d.js} +1 -1
  606. package/{stringSet-ed242956.js.map → stringSet-9fe06e0d.js.map} +1 -1
  607. package/{tokenize-3c45100f.js → tokenize-d34eb5c6.js} +2 -2
  608. package/{tokenize-3c45100f.js.map → tokenize-d34eb5c6.js.map} +1 -1
  609. package/{topics-da8f3f42.js → topics-edd6182d.js} +1 -1
  610. package/{topics-da8f3f42.js.map → topics-edd6182d.js.map} +1 -1
  611. package/{types-3826bbff.js → types-269fec15.js} +1 -1
  612. package/types-269fec15.js.map +1 -0
  613. package/ui/Accordion.js +2 -2
  614. package/ui/AccordionGroup.js +2 -2
  615. package/ui/AdminMessage.js +2 -2
  616. package/ui/Avatar.js +1 -1
  617. package/ui/Badge.js +4 -4
  618. package/ui/BottomSheet.js +6 -1
  619. package/ui/BottomSheet.js.map +1 -1
  620. package/ui/Button.js +10 -12
  621. package/ui/Button.js.map +1 -1
  622. package/ui/ChannelAvatar.js +2 -2
  623. package/ui/ConnectionStatus.js +4 -4
  624. package/ui/ContextMenu.js +6 -5
  625. package/ui/ContextMenu.js.map +1 -1
  626. package/ui/DateSeparator.js +3 -3
  627. package/ui/EmojiReactions.js +14 -13
  628. package/ui/EmojiReactions.js.map +1 -1
  629. package/ui/FileMessageItemBody.js +7 -6
  630. package/ui/FileMessageItemBody.js.map +1 -1
  631. package/ui/FileViewer.js +14 -13
  632. package/ui/FileViewer.js.map +1 -1
  633. package/ui/Icon.js +3 -0
  634. package/ui/Icon.js.map +1 -1
  635. package/ui/IconButton.js +1 -1
  636. package/ui/ImageRenderer.js +59 -15
  637. package/ui/ImageRenderer.js.map +1 -1
  638. package/ui/Input.js +2 -2
  639. package/ui/Label.js +2 -2
  640. package/ui/LinkLabel.js +2 -2
  641. package/ui/MentionLabel.js +11 -10
  642. package/ui/MentionLabel.js.map +1 -1
  643. package/ui/MentionUserLabel.js +1 -1
  644. package/ui/MessageContent.js +42 -33
  645. package/ui/MessageContent.js.map +1 -1
  646. package/ui/MessageInput/hooks/usePaste.js +4 -4
  647. package/ui/MessageInput.js +54 -40
  648. package/ui/MessageInput.js.map +1 -1
  649. package/ui/MessageItemMenu.js +9 -8
  650. package/ui/MessageItemMenu.js.map +1 -1
  651. package/ui/MessageItemReactionMenu.js +9 -8
  652. package/ui/MessageItemReactionMenu.js.map +1 -1
  653. package/ui/MessageSearchFileItem.js +18 -18
  654. package/ui/MessageSearchFileItem.js.map +1 -1
  655. package/ui/MessageSearchItem.js +8 -8
  656. package/ui/MessageStatus.js +11 -10
  657. package/ui/MessageStatus.js.map +1 -1
  658. package/ui/Modal.js +26 -18
  659. package/ui/Modal.js.map +1 -1
  660. package/ui/OGMessageItemBody.js +14 -14
  661. package/ui/OpenChannelAdminMessage.js +2 -2
  662. package/ui/OpenChannelAvatar.js +5 -5
  663. package/ui/OpenchannelConversationHeader.js +6 -6
  664. package/ui/OpenchannelFileMessage.js +16 -15
  665. package/ui/OpenchannelFileMessage.js.map +1 -1
  666. package/ui/OpenchannelOGMessage.js +18 -18
  667. package/ui/OpenchannelThumbnailMessage.js +15 -14
  668. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  669. package/ui/OpenchannelUserMessage.js +16 -15
  670. package/ui/OpenchannelUserMessage.js.map +1 -1
  671. package/ui/PlaceHolder.js +5 -5
  672. package/ui/PlaybackTime.js +2 -2
  673. package/ui/QuoteMessage.js +15 -13
  674. package/ui/QuoteMessage.js.map +1 -1
  675. package/ui/QuoteMessageInput.js +14 -12
  676. package/ui/QuoteMessageInput.js.map +1 -1
  677. package/ui/ReactionBadge.js +2 -2
  678. package/ui/ReactionButton.js +4 -4
  679. package/ui/SortByRow.js +1 -1
  680. package/ui/TextButton.js +1 -1
  681. package/ui/TextMessageItemBody.js +14 -14
  682. package/ui/ThreadReplies.js +5 -5
  683. package/ui/ThumbnailMessageItemBody.js +14 -15
  684. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  685. package/ui/Toggle.js +1 -1
  686. package/ui/Tooltip.js +2 -2
  687. package/ui/UnknownMessageItemBody.js +7 -6
  688. package/ui/UnknownMessageItemBody.js.map +1 -1
  689. package/ui/UserListItem.js +11 -10
  690. package/ui/UserListItem.js.map +1 -1
  691. package/ui/UserProfile.js +9 -9
  692. package/ui/VoiceMessageItemBody.js +12 -10
  693. package/ui/VoiceMessageItemBody.js.map +1 -1
  694. package/ui/VoiceMessgeInput.js +7 -7
  695. package/ui/Word.js +11 -10
  696. package/ui/Word.js.map +1 -1
  697. package/{VoiceMessageInputWrapper-b074aec5.js → useHandleUploadFiles-210750cc.js} +130 -10
  698. package/useHandleUploadFiles-210750cc.js.map +1 -0
  699. package/{useLongPress-0189f9c3.js → useLongPress-4b698dbb.js} +3 -3
  700. package/{useLongPress-0189f9c3.js.map → useLongPress-4b698dbb.js.map} +1 -1
  701. package/useSendMultipleFilesMessage-4a45ffbe.js +107 -0
  702. package/useSendMultipleFilesMessage-4a45ffbe.js.map +1 -0
  703. package/useSendbirdStateContext.js +1 -1
  704. package/utils/message/isVoiceMessage.js +3 -2
  705. package/utils/message/isVoiceMessage.js.map +1 -1
  706. package/{utils-40781609.js → utils-1bfac67e.js} +1 -1
  707. package/{utils-40781609.js.map → utils-1bfac67e.js.map} +1 -1
  708. package/{utils-cae5adba.js → utils-4d948dec.js} +2 -2
  709. package/{utils-cae5adba.js.map → utils-4d948dec.js.map} +1 -1
  710. package/{utils-3bd17cc2.js → utils-55c9df93.js} +1 -1
  711. package/{utils-3bd17cc2.js.map → utils-55c9df93.js.map} +1 -1
  712. package/utils-73dd35ca.js +57 -0
  713. package/utils-73dd35ca.js.map +1 -0
  714. package/{utils-373b8143.js → utils-a184f6ea.js} +1 -1
  715. package/{utils-373b8143.js.map → utils-a184f6ea.js.map} +1 -1
  716. package/{utils-b7161189.js → utils-ec15538c.js} +4 -4
  717. package/{utils-b7161189.js.map → utils-ec15538c.js.map} +1 -1
  718. package/{uuid-6d982751.js → uuid-9094f15c.js} +1 -1
  719. package/{uuid-6d982751.js.map → uuid-9094f15c.js.map} +1 -1
  720. package/withSendbird.js +8 -1
  721. package/withSendbird.js.map +1 -1
  722. package/ChannelProvider-d6dedff9.js.map +0 -1
  723. package/OpenChannelProvider-8fdab056.js.map +0 -1
  724. package/RemoveMessageModal-715f4bd6.js.map +0 -1
  725. package/ThreadProvider-696e3a32.js.map +0 -1
  726. package/VoiceMessageInputWrapper-b074aec5.js.map +0 -1
  727. package/_rollupPluginBabelHelpers-0f2ee8c1.js.map +0 -1
  728. package/cjs/ChannelProvider-c8bc29d3.js.map +0 -1
  729. package/cjs/OpenChannelProvider-57c10c09.js.map +0 -1
  730. package/cjs/RemoveMessageModal-029b1c86.js.map +0 -1
  731. package/cjs/ThreadProvider-9dfc3ad5.js.map +0 -1
  732. package/cjs/VoiceMessageInputWrapper-953affee.js.map +0 -1
  733. package/cjs/_rollupPluginBabelHelpers-117c3ffb.js.map +0 -1
  734. package/cjs/index-0599b6f2.js.map +0 -1
  735. package/cjs/index-2413bae4.js.map +0 -1
  736. package/cjs/index-2d4ea9ad.js.map +0 -1
  737. package/cjs/index-464461c9.js.map +0 -1
  738. package/cjs/index-b64ce51a.js.map +0 -1
  739. package/cjs/types-79ca7893.js.map +0 -1
  740. package/index-2969a2df.js.map +0 -1
  741. package/index-39eeabbb.js.map +0 -1
  742. package/index-3f6516a2.js.map +0 -1
  743. package/index-8017e2b5.js.map +0 -1
  744. package/index-d16a8084.js.map +0 -1
  745. package/types-3826bbff.js.map +0 -1
@@ -5,30 +5,32 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
  var reactDom = require('react-dom');
7
7
  var ui_Avatar = require('../../ui/Avatar.js');
8
- var ui_Label = require('../../index-4eb2a000.js');
8
+ var ui_Label = require('../../index-f40c4cf0.js');
9
9
  var ui_Icon = require('../../ui/Icon.js');
10
- var index$1 = require('../../index-2413bae4.js');
11
- var index = require('../../index-0599b6f2.js');
10
+ require('../../index.module-5c951066.js');
11
+ var index$1 = require('../../index-5628e0c0.js');
12
+ var index = require('../../index-613acaa0.js');
12
13
  var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
13
- var Channel_context = require('../../ChannelProvider-c8bc29d3.js');
14
+ var Channel_context = require('../../ChannelProvider-2ee005bc.js');
14
15
  require('../../ui/ImageRenderer.js');
15
- require('../../uuid-b2882230.js');
16
16
  require('prop-types');
17
- require('../../stringSet-dbdeec9c.js');
18
- require('../../_rollupPluginBabelHelpers-117c3ffb.js');
17
+ require('../../uuid-34728ced.js');
18
+ require('../../stringSet-b75b75ae.js');
19
+ require('../../_rollupPluginBabelHelpers-a85bd364.js');
19
20
  require('../../utils/message/getOutgoingMessageState.js');
20
21
  require('../../withSendbird.js');
21
- require('../../UserProfileContext-1f226141.js');
22
- require('../../const-8e4d382d.js');
23
- require('../../utils-b6cca626.js');
24
- require('../../index-c59af641.js');
25
- require('../../index-ba4dea0c.js');
26
- require('../../topics-c495cb3a.js');
27
- require('../../compareIds-49d9aea6.js');
22
+ require('../../UserProfileContext-abe57718.js');
23
+ require('../../const-95881697.js');
24
+ require('../../utils-1e9e97b5.js');
25
+ require('../../index-de4da1f2.js');
26
+ require('../../index-c9a4a555.js');
27
+ require('../../topics-2c35cfd7.js');
28
+ require('../../compareIds-89c258a0.js');
28
29
  require('@sendbird/chat/groupChannel');
29
30
  require('@sendbird/chat/message');
30
- require('../../consts-fb9dd3a0.js');
31
- require('../../resolvedReplyType-053d2dbc.js');
31
+ require('../../consts-7b830cc5.js');
32
+ require('../../resolvedReplyType-314fee09.js');
33
+ require('../../useSendMultipleFilesMessage-c5266ca8.js');
32
34
 
33
35
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
34
36
 
@@ -1 +1 @@
1
- {"version":3,"file":"FileViewer.js","sources":["../../../../src/modules/Channel/components/FileViewer/index.tsx"],"sourcesContent":["import React from 'react';\nimport { createPortal } from 'react-dom';\nimport type { FileMessage } from '@sendbird/chat/message';\n\nimport './file-viewer.scss';\nimport Avatar from '../../../../ui/Avatar';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport { MODAL_ROOT } from '../../../../hooks/useModal/ModalRoot';\n\nimport { isImage, isVideo, isSupportedFileView } from '../../../../utils';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { EveryMessage } from '../../../../types';\n\ntype FileViewerUIProps = {\n profileUrl: string;\n nickname: string;\n // file\n name: string;\n type: string;\n url: string;\n // others\n isByMe: boolean;\n onCancel: () => void;\n onDelete: () => void;\n disableDelete: boolean;\n};\n\nexport const FileViewerComponent: React.FC<FileViewerUIProps> = ({\n // sender\n profileUrl,\n nickname,\n // file\n name,\n type,\n url,\n // others\n isByMe,\n onCancel,\n onDelete,\n disableDelete,\n}: FileViewerUIProps) => (\n <div className=\"sendbird-fileviewer\">\n <div className=\"sendbird-fileviewer__header\">\n <div className=\"sendbird-fileviewer__header__left\">\n <div className=\"sendbird-fileviewer__header__left__avatar\">\n <Avatar height=\"32px\" width=\"32px\" src={profileUrl} />\n </div>\n <Label\n className=\"sendbird-fileviewer__header__left__filename\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {name}\n </Label>\n <Label\n className=\"sendbird-fileviewer__header__left__sender-name\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {nickname}\n </Label>\n </div>\n <div className=\"sendbird-fileviewer__header__right\">\n {\n isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__header__right__actions\">\n <a\n className=\"sendbird-fileviewer__header__right__actions__download\"\n rel=\"noopener noreferrer\"\n href={url}\n target=\"_blank\"\n >\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n />\n </a>\n {\n onDelete && isByMe && (\n <div className=\"sendbird-fileviewer__header__right__actions__delete\">\n <Icon\n className={disableDelete ? 'disabled' : ''}\n type={IconTypes.DELETE}\n fillColor={disableDelete ? IconColors.GRAY : IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={() => { if (!disableDelete) { onDelete(); } }}\n />\n </div>\n )\n }\n </div>\n )\n }\n <div className=\"sendbird-fileviewer__header__right__actions__close\">\n <Icon\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={onCancel}\n />\n </div>\n </div>\n </div>\n <div className=\"sendbird-fileviewer__content\">\n {isVideo(type) && (\n <video controls className=\"sendbird-fileviewer__content__video\">\n <source src={url} type={type} />\n </video>\n )}\n {\n isImage(type) && (\n <img\n src={url}\n alt={name}\n className=\"sendbird-fileviewer__content__img\"\n />\n )\n }\n {\n !isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__content__unsupported\">\n <Label type={LabelTypography.H_1} color={LabelColors.ONBACKGROUND_1}>\n Unsupoprted message\n </Label>\n </div>\n )\n }\n </div>\n </div>\n);\n\ntype FileViewerProps = {\n onCancel:() => void;\n message: FileMessage;\n};\n\nconst FileViewer: React.FC<FileViewerProps> = ({ onCancel, message }: FileViewerProps) => {\n const { deleteMessage } = useChannelContext();\n const {\n sender,\n type,\n url,\n name = '',\n threadInfo,\n } = message;\n const user = useSendbirdStateContext()?.config?.userId;\n const isByMe = user === message?.sender?.userId;\n const disableDelete = threadInfo?.replyCount > 0;\n const { profileUrl, nickname = '' } = sender;\n return createPortal(\n (\n <FileViewerComponent\n profileUrl={profileUrl}\n nickname={nickname}\n type={type}\n url={url}\n name={name}\n onCancel={onCancel}\n onDelete={() => {\n deleteMessage(message as EveryMessage).then(() => {\n onCancel();\n });\n }}\n isByMe={isByMe}\n disableDelete={disableDelete}\n />\n ),\n document.getElementById(MODAL_ROOT),\n );\n};\n\nexport default FileViewer;\n"],"names":["FileViewerComponent","_ref","profileUrl","nickname","name","type","url","isByMe","onCancel","onDelete","disableDelete","React","createElement","className","Avatar","height","width","src","Label","LabelTypography","H_2","color","LabelColors","ONBACKGROUND_1","BODY_1","ONBACKGROUND_2","isSupportedFileView","rel","href","target","Icon","IconTypes","DOWNLOAD","fillColor","IconColors","ON_BACKGROUND_1","DELETE","GRAY","onClick","CLOSE","isVideo","controls","isImage","alt","H_1","FileViewer","_ref2","_useSendbirdStateCont","_useSendbirdStateCont2","_message$sender","message","deleteMessage","useChannelContext","sender","threadInfo","user","useSendbirdStateContext","config","userId","replyCount","createPortal","then","document","getElementById","MODAL_ROOT"],"mappings":"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"}
1
+ {"version":3,"file":"FileViewer.js","sources":["../../../../src/modules/Channel/components/FileViewer/index.tsx"],"sourcesContent":["import React from 'react';\nimport { createPortal } from 'react-dom';\nimport type { FileMessage } from '@sendbird/chat/message';\n\nimport './file-viewer.scss';\nimport Avatar from '../../../../ui/Avatar';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport { MODAL_ROOT } from '../../../../hooks/useModal';\n\nimport { isImage, isVideo, isSupportedFileView } from '../../../../utils';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { EveryMessage } from '../../../../types';\n\ntype FileViewerUIProps = {\n profileUrl: string;\n nickname: string;\n // file\n name: string;\n type: string;\n url: string;\n // others\n isByMe: boolean;\n onCancel: () => void;\n onDelete: () => void;\n disableDelete: boolean;\n};\n\nexport const FileViewerComponent: React.FC<FileViewerUIProps> = ({\n // sender\n profileUrl,\n nickname,\n // file\n name,\n type,\n url,\n // others\n isByMe,\n onCancel,\n onDelete,\n disableDelete,\n}: FileViewerUIProps) => (\n <div className=\"sendbird-fileviewer\">\n <div className=\"sendbird-fileviewer__header\">\n <div className=\"sendbird-fileviewer__header__left\">\n <div className=\"sendbird-fileviewer__header__left__avatar\">\n <Avatar height=\"32px\" width=\"32px\" src={profileUrl} />\n </div>\n <Label\n className=\"sendbird-fileviewer__header__left__filename\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {name}\n </Label>\n <Label\n className=\"sendbird-fileviewer__header__left__sender-name\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {nickname}\n </Label>\n </div>\n <div className=\"sendbird-fileviewer__header__right\">\n {\n isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__header__right__actions\">\n <a\n className=\"sendbird-fileviewer__header__right__actions__download\"\n rel=\"noopener noreferrer\"\n href={url}\n target=\"_blank\"\n >\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n />\n </a>\n {\n onDelete && isByMe && (\n <div className=\"sendbird-fileviewer__header__right__actions__delete\">\n <Icon\n className={disableDelete ? 'disabled' : ''}\n type={IconTypes.DELETE}\n fillColor={disableDelete ? IconColors.GRAY : IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={() => { if (!disableDelete) { onDelete(); } }}\n />\n </div>\n )\n }\n </div>\n )\n }\n <div className=\"sendbird-fileviewer__header__right__actions__close\">\n <Icon\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={onCancel}\n />\n </div>\n </div>\n </div>\n <div className=\"sendbird-fileviewer__content\">\n {isVideo(type) && (\n <video controls className=\"sendbird-fileviewer__content__video\">\n <source src={url} type={type} />\n </video>\n )}\n {\n isImage(type) && (\n <img\n src={url}\n alt={name}\n className=\"sendbird-fileviewer__content__img\"\n />\n )\n }\n {\n !isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__content__unsupported\">\n <Label type={LabelTypography.H_1} color={LabelColors.ONBACKGROUND_1}>\n Unsupoprted message\n </Label>\n </div>\n )\n }\n </div>\n </div>\n);\n\ntype FileViewerProps = {\n onCancel:() => void;\n message: FileMessage;\n};\n\nconst FileViewer: React.FC<FileViewerProps> = ({ onCancel, message }: FileViewerProps) => {\n const { deleteMessage } = useChannelContext();\n const {\n sender,\n type,\n url,\n name = '',\n threadInfo,\n } = message;\n const user = useSendbirdStateContext()?.config?.userId;\n const isByMe = user === message?.sender?.userId;\n const disableDelete = threadInfo?.replyCount > 0;\n const { profileUrl, nickname = '' } = sender;\n return createPortal(\n (\n <FileViewerComponent\n profileUrl={profileUrl}\n nickname={nickname}\n type={type}\n url={url}\n name={name}\n onCancel={onCancel}\n onDelete={() => {\n deleteMessage(message as EveryMessage).then(() => {\n onCancel();\n });\n }}\n isByMe={isByMe}\n disableDelete={disableDelete}\n />\n ),\n document.getElementById(MODAL_ROOT),\n );\n};\n\nexport default FileViewer;\n"],"names":["FileViewerComponent","_ref","profileUrl","nickname","name","type","url","isByMe","onCancel","onDelete","disableDelete","React","createElement","className","Avatar","height","width","src","Label","LabelTypography","H_2","color","LabelColors","ONBACKGROUND_1","BODY_1","ONBACKGROUND_2","isSupportedFileView","rel","href","target","Icon","IconTypes","DOWNLOAD","fillColor","IconColors","ON_BACKGROUND_1","DELETE","GRAY","onClick","CLOSE","isVideo","controls","isImage","alt","H_1","FileViewer","_ref2","_useSendbirdStateCont","_useSendbirdStateCont2","_message$sender","message","deleteMessage","useChannelContext","sender","threadInfo","user","useSendbirdStateContext","config","userId","replyCount","createPortal","then","document","getElementById","MODAL_ROOT"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var LocalizationContext = require('../../LocalizationContext-9c99457f.js');
5
- var ui_Label = require('../../index-4eb2a000.js');
6
- require('../../stringSet-dbdeec9c.js');
7
- require('../../index-ba4dea0c.js');
4
+ var LocalizationContext = require('../../LocalizationContext-eb7a59da.js');
5
+ var ui_Label = require('../../index-f40c4cf0.js');
6
+ require('../../stringSet-b75b75ae.js');
7
+ require('../../index-c9a4a555.js');
8
8
  require('prop-types');
9
9
 
10
10
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -1,73 +1,74 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var index$2 = require('../../index-c59af641.js');
4
+ var index$2 = require('../../index-de4da1f2.js');
5
5
  var Channel_components_SuggestedMentionList = require('./SuggestedMentionList.js');
6
6
  var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
7
- var Channel_context = require('../../ChannelProvider-c8bc29d3.js');
8
- var index$1 = require('../../index-0599b6f2.js');
9
- var utils = require('../../utils-b6cca626.js');
10
- var _const = require('../../const-8e4d382d.js');
7
+ var Channel_context = require('../../ChannelProvider-2ee005bc.js');
8
+ var index$1 = require('../../index-613acaa0.js');
9
+ var utils = require('../../utils-1e9e97b5.js');
10
+ var _const = require('../../const-95881697.js');
11
11
  var ui_DateSeparator = require('../../ui/DateSeparator.js');
12
- var ui_Label = require('../../index-4eb2a000.js');
12
+ var ui_Label = require('../../index-f40c4cf0.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-cd9b71c8.js');
18
- var LocalizationContext = require('../../LocalizationContext-9c99457f.js');
19
- var index = require('../../index-d5522aef.js');
17
+ var _const$1 = require('../../const-24d498a6.js');
18
+ var LocalizationContext = require('../../LocalizationContext-eb7a59da.js');
19
+ var index = require('../../index-967cbc91.js');
20
20
  var Message_hooks_useDirtyGetMentions = require('../../Message/hooks/useDirtyGetMentions.js');
21
- require('../../index-ba4dea0c.js');
21
+ require('../../index-c9a4a555.js');
22
22
  require('../../ui/Icon.js');
23
23
  require('prop-types');
24
24
  require('../../ui/Avatar.js');
25
25
  require('../../ui/ImageRenderer.js');
26
- require('../../uuid-b2882230.js');
27
- require('../../ThreadProvider-9dfc3ad5.js');
26
+ require('../../uuid-34728ced.js');
27
+ require('../../ThreadProvider-4c93de8a.js');
28
28
  require('../../utils/message/getOutgoingMessageState.js');
29
- require('../../UserProfileContext-1f226141.js');
30
- require('../../_rollupPluginBabelHelpers-117c3ffb.js');
29
+ require('../../UserProfileContext-abe57718.js');
30
+ require('../../_rollupPluginBabelHelpers-a85bd364.js');
31
31
  require('../../Thread/context/types.js');
32
32
  require('@sendbird/chat');
33
- require('../../topics-c495cb3a.js');
33
+ require('../../topics-2c35cfd7.js');
34
34
  require('@sendbird/chat/groupChannel');
35
35
  require('@sendbird/chat/message');
36
- require('../../consts-fb9dd3a0.js');
36
+ require('../../consts-7b830cc5.js');
37
+ require('../../useSendMultipleFilesMessage-c5266ca8.js');
37
38
  require('../../withSendbird.js');
38
- require('../../compareIds-49d9aea6.js');
39
- require('../../resolvedReplyType-053d2dbc.js');
40
- require('../../color-a057a4c2.js');
41
- require('../../stringSet-dbdeec9c.js');
39
+ require('../../compareIds-89c258a0.js');
40
+ require('../../resolvedReplyType-314fee09.js');
41
+ require('../../index.module-5c951066.js');
42
+ require('../../color-2f1198fc.js');
43
+ require('../../stringSet-b75b75ae.js');
42
44
  require('../../ui/IconButton.js');
43
45
  require('../../ui/Button.js');
44
- require('../../index-2d4ea9ad.js');
46
+ require('../../index-7e10ab98.js');
45
47
  require('dompurify');
46
- require('../../consts-4a51c64b.js');
47
- require('../../consts-3afe4fa8.js');
48
- require('../../consts-d866b64a.js');
49
- require('../../tokenize-7204c391.js');
50
- require('../../index.module-2c2cf337.js');
48
+ require('../../consts-2957b793.js');
49
+ require('../../consts-c5d38c32.js');
50
+ require('../../consts-dde4f05d.js');
51
+ require('../../tokenize-42536b7a.js');
51
52
  require('../../ui/UserProfile.js');
52
53
  require('../../sendbirdSelectors.js');
53
- require('../../utils-c2f38151.js');
54
- require('../../index-464461c9.js');
54
+ require('../../utils-8958cb75.js');
55
+ require('../../index-910f48df.js');
55
56
  require('../../ui/Loader.js');
56
- require('../../index-0d4c4adf.js');
57
- require('../../index-df172622.js');
57
+ require('../../index-9813a2f9.js');
58
+ require('../../index-03655429.js');
58
59
  require('../../ui/MessageItemMenu.js');
59
60
  require('../../ui/ContextMenu.js');
60
61
  require('react-dom');
61
62
  require('../../ui/SortByRow.js');
62
- require('../../types-79ca7893.js');
63
+ require('../../types-382588b3.js');
63
64
  require('../../ui/MessageItemReactionMenu.js');
64
65
  require('../../ui/ReactionButton.js');
65
- require('../../useLongPress-e7c92bb0.js');
66
- require('../../MediaQueryContext-a5c77095.js');
66
+ require('../../useLongPress-49aa9a49.js');
67
+ require('../../MediaQueryContext-ca045060.js');
67
68
  require('../../ui/EmojiReactions.js');
68
69
  require('../../ui/ReactionBadge.js');
69
70
  require('../../ui/BottomSheet.js');
70
- require('../../index-2413bae4.js');
71
+ require('../../index-5628e0c0.js');
71
72
  require('../../ui/UserListItem.js');
72
73
  require('../../ui/MutedAvatarOverlay.js');
73
74
  require('../../ui/Checkbox.js');
@@ -76,24 +77,28 @@ require('../../ui/TooltipWrapper.js');
76
77
  require('../../Message/context.js');
77
78
  require('../../ui/AdminMessage.js');
78
79
  require('../../ui/TextMessageItemBody.js');
79
- require('../../index-dc15cf44.js');
80
+ require('../../index-0f229ac7.js');
80
81
  require('../../ui/MentionLabel.js');
81
82
  require('../../ui/LinkLabel.js');
82
83
  require('../../ui/FileMessageItemBody.js');
83
84
  require('../../ui/TextButton.js');
84
85
  require('../../ui/ThumbnailMessageItemBody.js');
86
+ require('../../utils-d6285655.js');
85
87
  require('../../ui/OGMessageItemBody.js');
86
88
  require('../../ui/UnknownMessageItemBody.js');
87
89
  require('../../ui/QuoteMessage.js');
88
- require('../../index-5b3bc2e9.js');
90
+ require('../../index-1f796e5a.js');
89
91
  require('../../ui/ThreadReplies.js');
90
92
  require('../../ui/VoiceMessageItemBody.js');
91
93
  require('../../ui/ProgressBar.js');
92
94
  require('../../VoicePlayer/useVoicePlayer.js');
93
- require('../../index-fe1b738f.js');
95
+ require('../../index-6e0a495a.js');
94
96
  require('../../VoiceRecorder/context.js');
95
97
  require('../../ui/Modal.js');
96
98
  require('../../ui/PlaybackTime.js');
99
+ require('../../index-f0b55959.js');
100
+ require('../../index-4d39de27.js');
101
+ require('../../stringFormatterUtils-3e53394c.js');
97
102
 
98
103
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
99
104
 
@@ -1 +1 @@
1
- {"version":3,"file":"Message.js","sources":["../../../../src/utils/useDidMountEffect.ts","../../../../src/modules/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';\nimport { useDirtyGetMentions } from '../../../Message/hooks/useDirtyGetMentions';\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll?: (isBottomMessageAffected?: boolean) => 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\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n logger,\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 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 const mentionNodes = useDirtyGetMentions({ ref: editMessageInputRef }, { logger });\n const ableMention = mentionNodes?.length < maxUserMentionCount;\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 useLayoutEffect(() => {\n // Keep the scrollBottom value after fetching new message list\n handleScroll?.();\n }, []);\n /**\n * Move the messsage list scroll\n * when the message's height is changed by `showEdit` OR `message.reactions`\n */\n useDidMountEffect(() => {\n handleScroll?.();\n }, [showEdit, message?.reactions?.length]);\n useDidMountEffect(() => {\n handleScroll?.(true);\n }, [message?.updatedAt]);\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 // do not delete this data attribute, used for scroll to given message\n // and also for testing\n data-sb-message-id={message.messageId}\n data-sb-created-at={message.createdAt}\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 channel={currentGroupChannel}\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 data-sb-message-id={message.messageId}\n data-sb-created-at={message.createdAt}\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 onMessageHeightChange={handleScroll}\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","didMount","setDidmount","useState","useEffect","Message","_ref","_message$reactions","_message$isUserMessag","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeparator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","userId","isOnline","isMentionEnabled","userMention","logger","config","maxUserMentionCount","maxMentionCount","MAX_USER_MENTION_COUNT","maxUserSuggestionCount","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","initialized","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","threadReplySelectType","isReactionEnabled","toggleReaction","emojiContainer","nicknamesMap","setQuoteMessage","resendMessage","renderUserMentionItem","onReplyInThread","onQuoteMessageClick","onMessageAnimated","onMessageHighlighted","onScrollCallback","useChannelContext","showEdit","setShowEdit","showRemove","setShowRemove","showFileViewer","setShowFileViewer","isAnimated","setIsAnimated","isHighlighted","setIsHighlighted","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","editMessageInputRef","useRef","messageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","handleOnScroll","useHandleOnScrollCallback","hasMore","onScroll","scrollRef","mentionNodes","useDirtyGetMentions","ref","ableMention","filter","_ref2","i","indexOf","splice","useLayoutEffect","reactions","updatedAt","animationTimeout","messageHighlightedTimeout","messageId","current","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","createElement","createdAt","className","getClassName","DateSeparator","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","format","locale","isUserMessage","call","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","user","onFocusItemChange","onFetchUsers","users","ableAddMention","MessageInput","isEdit","channel","mentionSelectedUser","onStartTyping","_currentGroupChannel$","startTyping","onUpdateMessage","_ref3","_currentGroupChannel$2","mentionTemplate","endTyping","onCancelEdit","_currentGroupChannel$3","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","style","marginBottom","MessageContent","onMessageHeightChange","RemoveMessageModal","onCancel","FileViewer"],"mappings":"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"}
1
+ {"version":3,"file":"Message.js","sources":["../../../../src/utils/useDidMountEffect.ts","../../../../src/modules/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';\nimport { useDirtyGetMentions } from '../../../Message/hooks/useDirtyGetMentions';\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll?: (isBottomMessageAffected?: boolean) => 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\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n logger,\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 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 const mentionNodes = useDirtyGetMentions({ ref: editMessageInputRef }, { logger });\n const ableMention = mentionNodes?.length < maxUserMentionCount;\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 useLayoutEffect(() => {\n // Keep the scrollBottom value after fetching new message list\n handleScroll?.();\n }, []);\n /**\n * Move the messsage list scroll\n * when the message's height is changed by `showEdit` OR `message.reactions`\n */\n useDidMountEffect(() => {\n handleScroll?.();\n }, [showEdit, message?.reactions?.length]);\n useDidMountEffect(() => {\n handleScroll?.(true);\n }, [message?.updatedAt]);\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 // do not delete this data attribute, used for scroll to given message\n // and also for testing\n data-sb-message-id={message.messageId}\n data-sb-created-at={message.createdAt}\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 channel={currentGroupChannel}\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 data-sb-message-id={message.messageId}\n data-sb-created-at={message.createdAt}\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 onMessageHeightChange={handleScroll}\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","didMount","setDidmount","useState","useEffect","Message","_ref","_message$reactions","_message$isUserMessag","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeparator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","userId","isOnline","isMentionEnabled","userMention","logger","config","maxUserMentionCount","maxMentionCount","MAX_USER_MENTION_COUNT","maxUserSuggestionCount","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","initialized","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","threadReplySelectType","isReactionEnabled","toggleReaction","emojiContainer","nicknamesMap","setQuoteMessage","resendMessage","renderUserMentionItem","onReplyInThread","onQuoteMessageClick","onMessageAnimated","onMessageHighlighted","onScrollCallback","useChannelContext","showEdit","setShowEdit","showRemove","setShowRemove","showFileViewer","setShowFileViewer","isAnimated","setIsAnimated","isHighlighted","setIsHighlighted","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","editMessageInputRef","useRef","messageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","handleOnScroll","useHandleOnScrollCallback","hasMore","onScroll","scrollRef","mentionNodes","useDirtyGetMentions","ref","ableMention","filter","_ref2","i","indexOf","splice","useLayoutEffect","reactions","updatedAt","animationTimeout","messageHighlightedTimeout","messageId","current","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","createElement","createdAt","className","getClassName","DateSeparator","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","format","locale","isUserMessage","call","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","user","onFocusItemChange","onFetchUsers","users","ableAddMention","MessageInput","isEdit","channel","mentionSelectedUser","onStartTyping","_currentGroupChannel$","startTyping","onUpdateMessage","_ref3","_currentGroupChannel$2","mentionTemplate","endTyping","onCancelEdit","_currentGroupChannel$3","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","style","marginBottom","MessageContent","onMessageHeightChange","RemoveMessageModal","onCancel","FileViewer"],"mappings":"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"}
@@ -1,62 +1,66 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var utils = require('../../utils-b6cca626.js');
4
+ var utils = require('../../utils-1e9e97b5.js');
5
5
  var ui_MessageInput = require('../../ui/MessageInput.js');
6
6
  var ui_QuoteMessageInput = require('../../ui/QuoteMessageInput.js');
7
- var LocalizationContext = require('../../LocalizationContext-9c99457f.js');
8
- var Channel_context = require('../../ChannelProvider-c8bc29d3.js');
7
+ var LocalizationContext = require('../../LocalizationContext-eb7a59da.js');
8
+ var Channel_context = require('../../ChannelProvider-2ee005bc.js');
9
9
  var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
10
10
  var Channel_components_SuggestedMentionList = require('./SuggestedMentionList.js');
11
- var _const = require('../../const-cd9b71c8.js');
12
- var VoiceMessageInputWrapper = require('../../VoiceMessageInputWrapper-953affee.js');
11
+ var _const = require('../../const-24d498a6.js');
12
+ var useHandleUploadFiles = require('../../useHandleUploadFiles-84bd5a9a.js');
13
13
  var Message_hooks_useDirtyGetMentions = require('../../Message/hooks/useDirtyGetMentions.js');
14
- var MediaQueryContext = require('../../MediaQueryContext-a5c77095.js');
15
- require('../../index-c59af641.js');
16
- require('../../index-ba4dea0c.js');
17
- require('../../topics-c495cb3a.js');
18
- require('../../index-0599b6f2.js');
19
- require('../../_rollupPluginBabelHelpers-117c3ffb.js');
14
+ var MediaQueryContext = require('../../MediaQueryContext-ca045060.js');
15
+ require('../../index-de4da1f2.js');
16
+ require('../../index-c9a4a555.js');
17
+ require('../../topics-2c35cfd7.js');
18
+ require('../../index-613acaa0.js');
19
+ require('../../_rollupPluginBabelHelpers-a85bd364.js');
20
20
  require('../../utils/message/getOutgoingMessageState.js');
21
+ require('../../index.module-5c951066.js');
21
22
  require('prop-types');
22
- require('../../const-8e4d382d.js');
23
+ require('../../const-95881697.js');
23
24
  require('../../ui/IconButton.js');
24
25
  require('../../ui/Button.js');
25
- require('../../index-4eb2a000.js');
26
- require('../../stringSet-dbdeec9c.js');
27
- require('../../index-2d4ea9ad.js');
26
+ require('../../index-f40c4cf0.js');
27
+ require('../../stringSet-b75b75ae.js');
28
+ require('../../index-7e10ab98.js');
28
29
  require('dompurify');
29
- require('../../consts-4a51c64b.js');
30
- require('../../consts-3afe4fa8.js');
31
- require('../../consts-d866b64a.js');
30
+ require('../../consts-2957b793.js');
31
+ require('../../consts-c5d38c32.js');
32
+ require('../../consts-dde4f05d.js');
32
33
  require('../../ui/Icon.js');
33
- require('../../tokenize-7204c391.js');
34
- require('../../index.module-2c2cf337.js');
34
+ require('../../tokenize-42536b7a.js');
35
35
  require('../../ui/ImageRenderer.js');
36
- require('../../UserProfileContext-1f226141.js');
37
- require('../../compareIds-49d9aea6.js');
36
+ require('../../utils-d6285655.js');
37
+ require('../../UserProfileContext-abe57718.js');
38
+ require('../../compareIds-89c258a0.js');
38
39
  require('@sendbird/chat/groupChannel');
39
- require('../../uuid-b2882230.js');
40
+ require('../../uuid-34728ced.js');
40
41
  require('@sendbird/chat/message');
41
- require('../../consts-fb9dd3a0.js');
42
- require('../../resolvedReplyType-053d2dbc.js');
42
+ require('../../consts-7b830cc5.js');
43
+ require('../../resolvedReplyType-314fee09.js');
44
+ require('../../useSendMultipleFilesMessage-c5266ca8.js');
43
45
  require('../../withSendbird.js');
44
46
  require('../../ui/Avatar.js');
45
- require('../../ThreadProvider-9dfc3ad5.js');
47
+ require('../../ThreadProvider-4c93de8a.js');
46
48
  require('../../Thread/context/types.js');
47
49
  require('@sendbird/chat');
48
50
  require('../../VoicePlayer/useVoicePlayer.js');
49
- require('../../index-fe1b738f.js');
51
+ require('../../index-6e0a495a.js');
50
52
  require('../../VoiceRecorder/context.js');
51
53
  require('../../ui/Modal.js');
52
54
  require('react-dom');
53
- require('../../index-2413bae4.js');
55
+ require('../../utils-8958cb75.js');
56
+ require('../../index-5628e0c0.js');
54
57
  require('../../VoiceRecorder/useVoiceRecorder.js');
55
- require('../../index-15e4fb71.js');
58
+ require('../../index-2fbc5922.js');
56
59
  require('../../ui/PlaybackTime.js');
57
60
  require('../../ui/ProgressBar.js');
58
61
  require('../../ui/TextButton.js');
59
- require('../../color-a057a4c2.js');
62
+ require('../../color-2f1198fc.js');
63
+ require('../../index-28c0a443.js');
60
64
 
61
65
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
62
66
 
@@ -77,6 +81,7 @@ const MessageInputWrapper = (props, ref) => {
77
81
  sendMessage,
78
82
  sendFileMessage,
79
83
  sendVoiceMessage,
84
+ sendMultipleFilesMessage,
80
85
  setQuoteMessage,
81
86
  messageInputRef,
82
87
  renderUserMentionItem
@@ -91,7 +96,8 @@ const MessageInputWrapper = (props, ref) => {
91
96
  isMentionEnabled,
92
97
  userMention,
93
98
  isVoiceMessageEnabled,
94
- logger
99
+ logger,
100
+ isMultipleFilesMessageEnabled
95
101
  } = globalStore.config;
96
102
  const maxUserMentionCount = (userMention === null || userMention === void 0 ? void 0 : userMention.maxMentionCount) || 10;
97
103
  const maxUserSuggestionCount = (userMention === null || userMention === void 0 ? void 0 : userMention.maxSuggestionCount) || 15;
@@ -142,6 +148,15 @@ const MessageInputWrapper = (props, ref) => {
142
148
  }));
143
149
  }, [mentionedUserIds]);
144
150
 
151
+ // MFM
152
+ const [handleUploadFiles] = useHandleUploadFiles.useHandleUploadFiles({
153
+ sendFileMessage,
154
+ sendMultipleFilesMessage,
155
+ quoteMessage
156
+ }, {
157
+ logger
158
+ });
159
+
145
160
  // broadcast channel + not operator
146
161
  if (isBroadcast && !isOperator) {
147
162
  return null;
@@ -175,7 +190,7 @@ const MessageInputWrapper = (props, ref) => {
175
190
  }, /*#__PURE__*/React__default["default"].createElement(ui_QuoteMessageInput, {
176
191
  replyingMessage: quoteMessage,
177
192
  onClose: () => setQuoteMessage(null)
178
- })), showVoiceMessageInput ? /*#__PURE__*/React__default["default"].createElement(VoiceMessageInputWrapper.VoiceMessageInputWrapper, {
193
+ })), showVoiceMessageInput ? /*#__PURE__*/React__default["default"].createElement(useHandleUploadFiles.VoiceMessageInputWrapper, {
179
194
  channel: channel,
180
195
  onSubmitClick: (recordedFile, duration) => {
181
196
  sendVoiceMessage(recordedFile, duration, quoteMessage);
@@ -192,6 +207,7 @@ const MessageInputWrapper = (props, ref) => {
192
207
  mentionSelectedUser: selectedUser,
193
208
  isMentionEnabled: isMentionEnabled,
194
209
  isVoiceMessageEnabled: isVoiceMessageEnabled,
210
+ isSelectingMultipleFilesEnabled: isMultipleFilesMessageEnabled,
195
211
  onVoiceMessageIconClick: () => {
196
212
  setShowVoiceMessageInput(true);
197
213
  },
@@ -223,10 +239,7 @@ const MessageInputWrapper = (props, ref) => {
223
239
  setQuoteMessage(null);
224
240
  channel === null || channel === void 0 ? void 0 : (_channel$endTyping = channel.endTyping) === null || _channel$endTyping === void 0 ? void 0 : _channel$endTyping.call(channel);
225
241
  },
226
- onFileUpload: file => {
227
- sendFileMessage(file, quoteMessage);
228
- setQuoteMessage(null);
229
- },
242
+ onFileUpload: handleUploadFiles,
230
243
  onUserMentioned: user => {
231
244
  if ((selectedUser === null || selectedUser === void 0 ? void 0 : selectedUser.userId) === (user === null || user === void 0 ? void 0 : user.userId)) {
232
245
  setSelectedUser(null);