@sendbird/uikit-react 3.4.6 → 3.4.7-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (888) hide show
  1. package/App.js +177 -172
  2. package/App.js.map +1 -1
  3. package/Channel/components/ChannelHeader.js +44 -39
  4. package/Channel/components/ChannelHeader.js.map +1 -1
  5. package/Channel/components/ChannelUI.js +63 -61
  6. package/Channel/components/ChannelUI.js.map +1 -1
  7. package/Channel/components/FileViewer.js +52 -46
  8. package/Channel/components/FileViewer.js.map +1 -1
  9. package/Channel/components/FrozenNotification.js +12 -9
  10. package/Channel/components/FrozenNotification.js.map +1 -1
  11. package/Channel/components/Message.js +165 -183
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +106 -113
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +128 -130
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +32 -28
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +134 -153
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +43 -42
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +18 -16
  24. package/Channel/components/UnreadCount.js.map +1 -1
  25. package/Channel/context.js +13 -14
  26. package/Channel/context.js.map +1 -1
  27. package/Channel.js +39 -40
  28. package/Channel.js.map +1 -1
  29. package/ChannelList/components/AddChannel.js +27 -29
  30. package/ChannelList/components/AddChannel.js.map +1 -1
  31. package/ChannelList/components/ChannelListHeader.js +30 -21
  32. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  33. package/ChannelList/components/ChannelListUI.js +91 -98
  34. package/ChannelList/components/ChannelListUI.js.map +1 -1
  35. package/ChannelList/components/ChannelPreview.js +70 -73
  36. package/ChannelList/components/ChannelPreview.js.map +1 -1
  37. package/ChannelList/components/ChannelPreviewAction.js +30 -30
  38. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  39. package/ChannelList/context.js +7 -8
  40. package/ChannelList/context.js.map +1 -1
  41. package/ChannelList.js +30 -31
  42. package/ChannelList.js.map +1 -1
  43. package/{ChannelListProvider-a2f2ee4a.js → ChannelListProvider-c1d2f942.js} +160 -156
  44. package/ChannelListProvider-c1d2f942.js.map +1 -0
  45. package/{ChannelProvider-bb459e82.js → ChannelProvider-4ab3a851.js} +429 -412
  46. package/ChannelProvider-4ab3a851.js.map +1 -0
  47. package/ChannelSettings/components/ChannelProfile.js +33 -37
  48. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  49. package/ChannelSettings/components/ChannelSettingsUI.js +45 -40
  50. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  51. package/ChannelSettings/components/EditDetailsModal.js +47 -48
  52. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  53. package/ChannelSettings/components/LeaveChannel.js +38 -35
  54. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  55. package/ChannelSettings/components/ModerationPanel.js +511 -556
  56. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  57. package/ChannelSettings/components/UserListItem.js +69 -69
  58. package/ChannelSettings/components/UserListItem.js.map +1 -1
  59. package/ChannelSettings/components/UserPanel.js +25 -27
  60. package/ChannelSettings/components/UserPanel.js.map +1 -1
  61. package/ChannelSettings/context.js +53 -49
  62. package/ChannelSettings/context.js.map +1 -1
  63. package/ChannelSettings.js +19 -18
  64. package/ChannelSettings.js.map +1 -1
  65. package/CreateChannel/components/CreateChannelUI.js +24 -21
  66. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  67. package/CreateChannel/components/InviteUsers.js +92 -93
  68. package/CreateChannel/components/InviteUsers.js.map +1 -1
  69. package/CreateChannel/components/SelectChannelType.js +41 -35
  70. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  71. package/CreateChannel/context.js +4 -4
  72. package/CreateChannel.js +22 -20
  73. package/CreateChannel.js.map +1 -1
  74. package/CreateChannelProvider-d2188082.js +44 -0
  75. package/CreateChannelProvider-d2188082.js.map +1 -0
  76. package/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -34
  77. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  78. package/CreateOpenChannel/context.js +33 -28
  79. package/CreateOpenChannel/context.js.map +1 -1
  80. package/CreateOpenChannel.js +18 -16
  81. package/CreateOpenChannel.js.map +1 -1
  82. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  83. package/EditUserProfile/context.js.map +1 -1
  84. package/EditUserProfile.js +18 -16
  85. package/EditUserProfile.js.map +1 -1
  86. package/LocalizationContext-9c54e783.js +20 -0
  87. package/{LocalizationContext-3d8c0b24.js.map → LocalizationContext-9c54e783.js.map} +1 -1
  88. package/MediaQueryContext-1988a4bc.js +82 -0
  89. package/MediaQueryContext-1988a4bc.js.map +1 -0
  90. package/MemberList-80ea8604.js +395 -0
  91. package/MemberList-80ea8604.js.map +1 -0
  92. package/Message/context.js +11 -10
  93. package/Message/context.js.map +1 -1
  94. package/MessageSearch/components/MessageSearchUI.js +59 -54
  95. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  96. package/MessageSearch/context.js +176 -165
  97. package/MessageSearch/context.js.map +1 -1
  98. package/MessageSearch.js +45 -47
  99. package/MessageSearch.js.map +1 -1
  100. package/OpenChannel/components/FrozenChannelNotification.js +8 -6
  101. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  102. package/OpenChannel/components/OpenChannelHeader.js +27 -22
  103. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  104. package/OpenChannel/components/OpenChannelInput.js +32 -28
  105. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  106. package/OpenChannel/components/OpenChannelMessage.js +171 -172
  107. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  108. package/OpenChannel/components/OpenChannelMessageList.js +60 -65
  109. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  110. package/OpenChannel/components/OpenChannelUI.js +50 -48
  111. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  112. package/OpenChannel/context.js +8 -8
  113. package/OpenChannel.js +32 -33
  114. package/OpenChannel.js.map +1 -1
  115. package/OpenChannelList/components/OpenChannelListUI.js +58 -59
  116. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  117. package/OpenChannelList/components/OpenChannelPreview.js +21 -22
  118. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  119. package/OpenChannelList/context.js +3 -3
  120. package/OpenChannelList.js +24 -23
  121. package/OpenChannelList.js.map +1 -1
  122. package/{OpenChannelListProvider-f9ec8658.js → OpenChannelListProvider-c76663eb.js} +177 -155
  123. package/OpenChannelListProvider-c76663eb.js.map +1 -0
  124. package/OpenChannelProvider-fe3326aa.js +1883 -0
  125. package/{cjs/OpenChannelProvider-850b9cd0.js.map → OpenChannelProvider-fe3326aa.js.map} +1 -1
  126. package/OpenChannelSettings/components/EditDetailsModal.js +46 -46
  127. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  128. package/OpenChannelSettings/components/OpenChannelProfile.js +26 -26
  129. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  130. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -36
  131. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  132. package/OpenChannelSettings/components/OperatorUI.js +508 -533
  133. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  134. package/OpenChannelSettings/components/ParticipantUI.js +15 -15
  135. package/OpenChannelSettings/context.js +54 -56
  136. package/OpenChannelSettings/context.js.map +1 -1
  137. package/OpenChannelSettings.js +19 -19
  138. package/OpenChannelSettings.js.map +1 -1
  139. package/RemoveMessageModal-99b5bab4.js +36 -0
  140. package/RemoveMessageModal-99b5bab4.js.map +1 -0
  141. package/SendbirdProvider.js +546 -405
  142. package/SendbirdProvider.js.map +1 -1
  143. package/Thread/components/ParentMessageInfo.js +157 -170
  144. package/Thread/components/ParentMessageInfo.js.map +1 -1
  145. package/Thread/components/ParentMessageInfoItem.js +68 -62
  146. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  147. package/Thread/components/ThreadHeader.js +22 -22
  148. package/Thread/components/ThreadHeader.js.map +1 -1
  149. package/Thread/components/ThreadList.js +82 -77
  150. package/Thread/components/ThreadList.js.map +1 -1
  151. package/Thread/components/ThreadListItem.js +208 -219
  152. package/Thread/components/ThreadListItem.js.map +1 -1
  153. package/Thread/components/ThreadMessageInput.js +103 -105
  154. package/Thread/components/ThreadMessageInput.js.map +1 -1
  155. package/Thread/components/ThreadUI.js +130 -116
  156. package/Thread/components/ThreadUI.js.map +1 -1
  157. package/Thread/context/types.js +9 -9
  158. package/Thread/context/types.js.map +1 -1
  159. package/Thread/context.js +8 -8
  160. package/Thread.js +55 -55
  161. package/Thread.js.map +1 -1
  162. package/ThreadProvider-0a3c5f37.js +1692 -0
  163. package/ThreadProvider-0a3c5f37.js.map +1 -0
  164. package/{UserProfileContext-41938ddc.js → UserProfileContext-a8aa4c0f.js} +1 -1
  165. package/{UserProfileContext-41938ddc.js.map → UserProfileContext-a8aa4c0f.js.map} +1 -1
  166. package/{VoiceMessageInputWrapper-0cd90994.js → VoiceMessageInputWrapper-ff160b51.js} +60 -59
  167. package/VoiceMessageInputWrapper-ff160b51.js.map +1 -0
  168. package/VoicePlayer/context.js +3 -3
  169. package/VoicePlayer/useVoicePlayer.js +38 -43
  170. package/VoicePlayer/useVoicePlayer.js.map +1 -1
  171. package/VoiceRecorder/context.js +46 -45
  172. package/VoiceRecorder/context.js.map +1 -1
  173. package/VoiceRecorder/useVoiceRecorder.js +43 -40
  174. package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  175. package/{WebAudioUtils-682aa6c0.js → WebAudioUtils-5f08f354.js} +37 -37
  176. package/{WebAudioUtils-682aa6c0.js.map → WebAudioUtils-5f08f354.js.map} +1 -1
  177. package/{_rollupPluginBabelHelpers-79f64283.js → _rollupPluginBabelHelpers-b2d9bfc5.js} +2 -2
  178. package/_rollupPluginBabelHelpers-b2d9bfc5.js.map +1 -0
  179. package/{actionTypes-52102db0.js → actionTypes-e436fe6c.js} +2 -2
  180. package/{actionTypes-52102db0.js.map → actionTypes-e436fe6c.js.map} +1 -1
  181. package/cjs/App.js +177 -172
  182. package/cjs/App.js.map +1 -1
  183. package/cjs/Channel/components/ChannelHeader.js +44 -39
  184. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  185. package/cjs/Channel/components/ChannelUI.js +63 -61
  186. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  187. package/cjs/Channel/components/FileViewer.js +52 -46
  188. package/cjs/Channel/components/FileViewer.js.map +1 -1
  189. package/cjs/Channel/components/FrozenNotification.js +12 -9
  190. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  191. package/cjs/Channel/components/Message.js +165 -183
  192. package/cjs/Channel/components/Message.js.map +1 -1
  193. package/cjs/Channel/components/MessageInput.js +106 -113
  194. package/cjs/Channel/components/MessageInput.js.map +1 -1
  195. package/cjs/Channel/components/MessageList.js +128 -130
  196. package/cjs/Channel/components/MessageList.js.map +1 -1
  197. package/cjs/Channel/components/RemoveMessageModal.js +32 -28
  198. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  199. package/cjs/Channel/components/SuggestedMentionList.js +134 -153
  200. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  201. package/cjs/Channel/components/TypingIndicator.js +43 -42
  202. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  203. package/cjs/Channel/components/UnreadCount.js +18 -16
  204. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  205. package/cjs/Channel/context.js +14 -18
  206. package/cjs/Channel/context.js.map +1 -1
  207. package/cjs/Channel.js +39 -40
  208. package/cjs/Channel.js.map +1 -1
  209. package/cjs/ChannelList/components/AddChannel.js +27 -29
  210. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  211. package/cjs/ChannelList/components/ChannelListHeader.js +30 -21
  212. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  213. package/cjs/ChannelList/components/ChannelListUI.js +91 -98
  214. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  215. package/cjs/ChannelList/components/ChannelPreview.js +70 -73
  216. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  217. package/cjs/ChannelList/components/ChannelPreviewAction.js +30 -30
  218. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  219. package/cjs/ChannelList/context.js +7 -8
  220. package/cjs/ChannelList/context.js.map +1 -1
  221. package/cjs/ChannelList.js +30 -31
  222. package/cjs/ChannelList.js.map +1 -1
  223. package/cjs/{ChannelListProvider-b0a363e0.js → ChannelListProvider-61d644da.js} +160 -156
  224. package/cjs/ChannelListProvider-61d644da.js.map +1 -0
  225. package/cjs/{ChannelProvider-cf5867c2.js → ChannelProvider-620bb354.js} +430 -412
  226. package/cjs/ChannelProvider-620bb354.js.map +1 -0
  227. package/cjs/ChannelSettings/components/ChannelProfile.js +33 -37
  228. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  229. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +45 -40
  230. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  231. package/cjs/ChannelSettings/components/EditDetailsModal.js +47 -48
  232. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  233. package/cjs/ChannelSettings/components/LeaveChannel.js +38 -35
  234. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  235. package/cjs/ChannelSettings/components/ModerationPanel.js +511 -556
  236. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  237. package/cjs/ChannelSettings/components/UserListItem.js +69 -69
  238. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  239. package/cjs/ChannelSettings/components/UserPanel.js +25 -27
  240. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  241. package/cjs/ChannelSettings/context.js +53 -49
  242. package/cjs/ChannelSettings/context.js.map +1 -1
  243. package/cjs/ChannelSettings.js +19 -18
  244. package/cjs/ChannelSettings.js.map +1 -1
  245. package/cjs/CreateChannel/components/CreateChannelUI.js +24 -21
  246. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  247. package/cjs/CreateChannel/components/InviteUsers.js +92 -93
  248. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  249. package/cjs/CreateChannel/components/SelectChannelType.js +41 -35
  250. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  251. package/cjs/CreateChannel/context.js +4 -4
  252. package/cjs/CreateChannel.js +22 -20
  253. package/cjs/CreateChannel.js.map +1 -1
  254. package/cjs/CreateChannelProvider-88b316a6.js +52 -0
  255. package/cjs/CreateChannelProvider-88b316a6.js.map +1 -0
  256. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -34
  257. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  258. package/cjs/CreateOpenChannel/context.js +33 -28
  259. package/cjs/CreateOpenChannel/context.js.map +1 -1
  260. package/cjs/CreateOpenChannel.js +18 -16
  261. package/cjs/CreateOpenChannel.js.map +1 -1
  262. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  263. package/cjs/EditUserProfile/context.js.map +1 -1
  264. package/cjs/EditUserProfile.js +18 -16
  265. package/cjs/EditUserProfile.js.map +1 -1
  266. package/cjs/{LocalizationContext-498cb747.js → LocalizationContext-af96cf5f.js} +9 -9
  267. package/cjs/{LocalizationContext-498cb747.js.map → LocalizationContext-af96cf5f.js.map} +1 -1
  268. package/cjs/MediaQueryContext-8ec3f647.js +89 -0
  269. package/cjs/MediaQueryContext-8ec3f647.js.map +1 -0
  270. package/cjs/MemberList-7513f386.js +401 -0
  271. package/cjs/MemberList-7513f386.js.map +1 -0
  272. package/cjs/Message/context.js +11 -10
  273. package/cjs/Message/context.js.map +1 -1
  274. package/cjs/MessageSearch/components/MessageSearchUI.js +59 -54
  275. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  276. package/cjs/MessageSearch/context.js +176 -165
  277. package/cjs/MessageSearch/context.js.map +1 -1
  278. package/cjs/MessageSearch.js +45 -47
  279. package/cjs/MessageSearch.js.map +1 -1
  280. package/cjs/OpenChannel/components/FrozenChannelNotification.js +8 -6
  281. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  282. package/cjs/OpenChannel/components/OpenChannelHeader.js +27 -22
  283. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  284. package/cjs/OpenChannel/components/OpenChannelInput.js +32 -28
  285. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  286. package/cjs/OpenChannel/components/OpenChannelMessage.js +171 -172
  287. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  288. package/cjs/OpenChannel/components/OpenChannelMessageList.js +60 -65
  289. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  290. package/cjs/OpenChannel/components/OpenChannelUI.js +50 -48
  291. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  292. package/cjs/OpenChannel/context.js +8 -8
  293. package/cjs/OpenChannel.js +32 -33
  294. package/cjs/OpenChannel.js.map +1 -1
  295. package/cjs/OpenChannelList/components/OpenChannelListUI.js +58 -59
  296. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  297. package/cjs/OpenChannelList/components/OpenChannelPreview.js +21 -22
  298. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  299. package/cjs/OpenChannelList/context.js +3 -3
  300. package/cjs/OpenChannelList.js +24 -23
  301. package/cjs/OpenChannelList.js.map +1 -1
  302. package/cjs/OpenChannelListProvider-e78bf867.js +439 -0
  303. package/cjs/OpenChannelListProvider-e78bf867.js.map +1 -0
  304. package/cjs/OpenChannelProvider-ea1d7b37.js +1892 -0
  305. package/cjs/OpenChannelProvider-ea1d7b37.js.map +1 -0
  306. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +46 -46
  307. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  308. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +26 -26
  309. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  310. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -36
  311. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  312. package/cjs/OpenChannelSettings/components/OperatorUI.js +508 -533
  313. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  314. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
  315. package/cjs/OpenChannelSettings/context.js +54 -56
  316. package/cjs/OpenChannelSettings/context.js.map +1 -1
  317. package/cjs/OpenChannelSettings.js +19 -19
  318. package/cjs/OpenChannelSettings.js.map +1 -1
  319. package/cjs/{RemoveMessageModal-457b1535.js → RemoveMessageModal-15d1dcbd.js} +19 -13
  320. package/cjs/RemoveMessageModal-15d1dcbd.js.map +1 -0
  321. package/cjs/SendbirdProvider.js +546 -405
  322. package/cjs/SendbirdProvider.js.map +1 -1
  323. package/cjs/Thread/components/ParentMessageInfo.js +157 -170
  324. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  325. package/cjs/Thread/components/ParentMessageInfoItem.js +68 -62
  326. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  327. package/cjs/Thread/components/ThreadHeader.js +22 -22
  328. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  329. package/cjs/Thread/components/ThreadList.js +82 -77
  330. package/cjs/Thread/components/ThreadList.js.map +1 -1
  331. package/cjs/Thread/components/ThreadListItem.js +208 -219
  332. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  333. package/cjs/Thread/components/ThreadMessageInput.js +103 -105
  334. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  335. package/cjs/Thread/components/ThreadUI.js +130 -116
  336. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  337. package/cjs/Thread/context/types.js +13 -9
  338. package/cjs/Thread/context/types.js.map +1 -1
  339. package/cjs/Thread/context.js +8 -8
  340. package/cjs/Thread.js +55 -55
  341. package/cjs/Thread.js.map +1 -1
  342. package/cjs/ThreadProvider-572574d7.js +1701 -0
  343. package/cjs/ThreadProvider-572574d7.js.map +1 -0
  344. package/cjs/{UserProfileContext-617420c9.js → UserProfileContext-f068b0ba.js} +1 -1
  345. package/cjs/{UserProfileContext-617420c9.js.map → UserProfileContext-f068b0ba.js.map} +1 -1
  346. package/cjs/{VoiceMessageInputWrapper-43c29f38.js → VoiceMessageInputWrapper-db7f2b72.js} +60 -59
  347. package/cjs/VoiceMessageInputWrapper-db7f2b72.js.map +1 -0
  348. package/cjs/VoicePlayer/context.js +3 -3
  349. package/cjs/VoicePlayer/useVoicePlayer.js +38 -43
  350. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
  351. package/cjs/VoiceRecorder/context.js +46 -45
  352. package/cjs/VoiceRecorder/context.js.map +1 -1
  353. package/cjs/VoiceRecorder/useVoiceRecorder.js +43 -40
  354. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  355. package/cjs/{WebAudioUtils-2b845cd2.js → WebAudioUtils-043bdeca.js} +37 -37
  356. package/cjs/{WebAudioUtils-2b845cd2.js.map → WebAudioUtils-043bdeca.js.map} +1 -1
  357. package/cjs/{_rollupPluginBabelHelpers-c2313dcd.js → _rollupPluginBabelHelpers-c5955c81.js} +2 -1
  358. package/cjs/_rollupPluginBabelHelpers-c5955c81.js.map +1 -0
  359. package/cjs/{actionTypes-0e0d2d59.js → actionTypes-f2efbb7c.js} +2 -2
  360. package/cjs/{actionTypes-0e0d2d59.js.map → actionTypes-f2efbb7c.js.map} +1 -1
  361. package/cjs/{color-7f7508e6.js → color-afeb8dc2.js} +13 -12
  362. package/cjs/color-afeb8dc2.js.map +1 -0
  363. package/cjs/{compareIds-27f7912f.js → compareIds-18b3b1d6.js} +1 -1
  364. package/cjs/{compareIds-27f7912f.js.map → compareIds-18b3b1d6.js.map} +1 -1
  365. package/cjs/const-6691e574.js +20 -0
  366. package/cjs/const-6691e574.js.map +1 -0
  367. package/cjs/{const-61fc7be6.js → const-ab0f6056.js} +4 -4
  368. package/cjs/{const-61fc7be6.js.map → const-ab0f6056.js.map} +1 -1
  369. package/cjs/consts-6ec77e9a.js +6 -0
  370. package/cjs/consts-6ec77e9a.js.map +1 -0
  371. package/cjs/consts-a422c2f9.js +6 -0
  372. package/cjs/{consts-46fa3a3a.js.map → consts-a422c2f9.js.map} +1 -1
  373. package/cjs/{consts-8605e767.js → consts-a5382bc1.js} +18 -14
  374. package/cjs/{consts-8605e767.js.map → consts-a5382bc1.js.map} +1 -1
  375. package/cjs/consts-bc27beff.js +6 -0
  376. package/cjs/{consts-ad849467.js.map → consts-bc27beff.js.map} +1 -1
  377. package/cjs/{context-a4af6955.js → context-60c4d3b7.js} +6 -5
  378. package/cjs/{context-a4af6955.js.map → context-60c4d3b7.js.map} +1 -1
  379. package/cjs/dist/index.css +197 -93
  380. package/cjs/dist/index.css.map +1 -1
  381. package/cjs/handlers/OpenChannelHandler.js.map +1 -1
  382. package/cjs/handlers/SessionHandler.js.map +1 -1
  383. package/cjs/index-0b344bd7.js +57 -0
  384. package/cjs/index-0b344bd7.js.map +1 -0
  385. package/cjs/{index-ac1b0ab9.js → index-4ee95667.js} +2 -4
  386. package/cjs/index-4ee95667.js.map +1 -0
  387. package/cjs/{index-67f813a3.js → index-68c57136.js} +1 -1
  388. package/cjs/{index-67f813a3.js.map → index-68c57136.js.map} +1 -1
  389. package/cjs/{index-a4887600.js → index-6cb4a530.js} +3 -12
  390. package/cjs/index-6cb4a530.js.map +1 -0
  391. package/cjs/{index-b8a20afd.js → index-73643285.js} +2 -2
  392. package/cjs/{index-b8a20afd.js.map → index-73643285.js.map} +1 -1
  393. package/cjs/index-76afc309.js +197 -0
  394. package/cjs/index-76afc309.js.map +1 -0
  395. package/cjs/{index-3626dfeb.js → index-8049c2a3.js} +22 -15
  396. package/cjs/index-8049c2a3.js.map +1 -0
  397. package/cjs/{index-8b6bb1ee.js → index-83d1d15e.js} +10 -30
  398. package/cjs/index-83d1d15e.js.map +1 -0
  399. package/cjs/{index-0dff9958.js → index-900dd19f.js} +37 -27
  400. package/cjs/index-900dd19f.js.map +1 -0
  401. package/cjs/index-9d518988.js +292 -0
  402. package/cjs/{index-cd680348.js.map → index-9d518988.js.map} +1 -1
  403. package/cjs/{index-8b5a13fe.js → index-a50b2339.js} +50 -50
  404. package/cjs/index-a50b2339.js.map +1 -0
  405. package/cjs/{index-ead97d9a.js → index-c1de8d8f.js} +37 -39
  406. package/cjs/{index-ead97d9a.js.map → index-c1de8d8f.js.map} +1 -1
  407. package/cjs/index-ec8b6978.js +361 -0
  408. package/cjs/index-ec8b6978.js.map +1 -0
  409. package/cjs/index-f2146bae.js +563 -0
  410. package/cjs/index-f2146bae.js.map +1 -0
  411. package/cjs/{index-71173fef.js → index-f65677b1.js} +56 -193
  412. package/cjs/index-f65677b1.js.map +1 -0
  413. package/cjs/{index-983f9d7a.js → index-ff8ea47f.js} +17 -17
  414. package/cjs/{index-983f9d7a.js.map → index-ff8ea47f.js.map} +1 -1
  415. package/cjs/index.js +51 -51
  416. package/cjs/{index.module-cf39e3b9.js → index.module-9f5edc7b.js} +1 -1
  417. package/cjs/{index.module-cf39e3b9.js.map → index.module-9f5edc7b.js.map} +1 -1
  418. package/cjs/lame.all.js.map +1 -1
  419. package/cjs/sendbirdSelectors.js +319 -371
  420. package/cjs/sendbirdSelectors.js.map +1 -1
  421. package/cjs/{stringSet-061fe0c1.js → stringSet-68748705.js} +2 -2
  422. package/cjs/stringSet-68748705.js.map +1 -0
  423. package/cjs/tokenize-d86ab0c7.js +140 -0
  424. package/cjs/tokenize-d86ab0c7.js.map +1 -0
  425. package/cjs/{topics-c8adbede.js → topics-825e5d42.js} +2 -2
  426. package/cjs/{topics-c8adbede.js.map → topics-825e5d42.js.map} +1 -1
  427. package/cjs/types-24accb8d.js +17 -0
  428. package/cjs/{types-beecfca4.js.map → types-24accb8d.js.map} +1 -1
  429. package/cjs/ui/Accordion.js +19 -18
  430. package/cjs/ui/Accordion.js.map +1 -1
  431. package/cjs/ui/AccordionGroup.js +10 -11
  432. package/cjs/ui/AccordionGroup.js.map +1 -1
  433. package/cjs/ui/AdminMessage.js +10 -10
  434. package/cjs/ui/AdminMessage.js.map +1 -1
  435. package/cjs/ui/Avatar.js +55 -59
  436. package/cjs/ui/Avatar.js.map +1 -1
  437. package/cjs/ui/Badge.js +16 -15
  438. package/cjs/ui/Badge.js.map +1 -1
  439. package/cjs/ui/BottomSheet.js +14 -10
  440. package/cjs/ui/BottomSheet.js.map +1 -1
  441. package/cjs/ui/Button.js +20 -24
  442. package/cjs/ui/Button.js.map +1 -1
  443. package/cjs/ui/ChannelAvatar.js +38 -41
  444. package/cjs/ui/ChannelAvatar.js.map +1 -1
  445. package/cjs/ui/Checkbox.js +9 -10
  446. package/cjs/ui/Checkbox.js.map +1 -1
  447. package/cjs/ui/ConnectionStatus.js +7 -5
  448. package/cjs/ui/ConnectionStatus.js.map +1 -1
  449. package/cjs/ui/ContextMenu.js +139 -135
  450. package/cjs/ui/ContextMenu.js.map +1 -1
  451. package/cjs/ui/DateSeparator.js +12 -14
  452. package/cjs/ui/DateSeparator.js.map +1 -1
  453. package/cjs/ui/EmojiReactions.js +78 -86
  454. package/cjs/ui/EmojiReactions.js.map +1 -1
  455. package/cjs/ui/FileMessageItemBody.js +22 -22
  456. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  457. package/cjs/ui/FileViewer.js +36 -35
  458. package/cjs/ui/FileViewer.js.map +1 -1
  459. package/cjs/ui/Icon.js +16 -16
  460. package/cjs/ui/Icon.js.map +1 -1
  461. package/cjs/ui/IconButton.js +20 -28
  462. package/cjs/ui/IconButton.js.map +1 -1
  463. package/cjs/ui/ImageRenderer.js +33 -39
  464. package/cjs/ui/ImageRenderer.js.map +1 -1
  465. package/cjs/ui/Input.js +16 -14
  466. package/cjs/ui/Input.js.map +1 -1
  467. package/cjs/ui/Label.js +2 -2
  468. package/cjs/ui/LinkLabel.js +2 -2
  469. package/cjs/ui/LinkLabel.js.map +1 -1
  470. package/cjs/ui/Loader.js +10 -12
  471. package/cjs/ui/Loader.js.map +1 -1
  472. package/cjs/ui/MentionLabel.js +58 -61
  473. package/cjs/ui/MentionLabel.js.map +1 -1
  474. package/cjs/ui/MentionUserLabel.js +10 -10
  475. package/cjs/ui/MentionUserLabel.js.map +1 -1
  476. package/cjs/ui/MessageContent.js +273 -270
  477. package/cjs/ui/MessageContent.js.map +1 -1
  478. package/cjs/ui/MessageInput.js +87 -79
  479. package/cjs/ui/MessageInput.js.map +1 -1
  480. package/cjs/ui/MessageItemMenu.js +70 -72
  481. package/cjs/ui/MessageItemMenu.js.map +1 -1
  482. package/cjs/ui/MessageItemReactionMenu.js +50 -57
  483. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  484. package/cjs/ui/MessageSearchFileItem.js +49 -38
  485. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  486. package/cjs/ui/MessageSearchItem.js +40 -32
  487. package/cjs/ui/MessageSearchItem.js.map +1 -1
  488. package/cjs/ui/MessageStatus.js +10 -10
  489. package/cjs/ui/Modal.js +52 -45
  490. package/cjs/ui/Modal.js.map +1 -1
  491. package/cjs/ui/MutedAvatarOverlay.js +10 -10
  492. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  493. package/cjs/ui/OGMessageItemBody.js +48 -44
  494. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  495. package/cjs/ui/OpenChannelAdminMessage.js +8 -7
  496. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  497. package/cjs/ui/OpenChannelAvatar.js +18 -17
  498. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  499. package/cjs/ui/OpenchannelConversationHeader.js +17 -13
  500. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  501. package/cjs/ui/OpenchannelFileMessage.js +134 -140
  502. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  503. package/cjs/ui/OpenchannelOGMessage.js +177 -176
  504. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  505. package/cjs/ui/OpenchannelThumbnailMessage.js +209 -214
  506. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  507. package/cjs/ui/OpenchannelUserMessage.js +159 -164
  508. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  509. package/cjs/ui/PlaceHolder.js +5 -6
  510. package/cjs/ui/PlaceHolder.js.map +1 -1
  511. package/cjs/ui/PlaybackTime.js +15 -16
  512. package/cjs/ui/PlaybackTime.js.map +1 -1
  513. package/cjs/ui/ProgressBar.js +13 -15
  514. package/cjs/ui/ProgressBar.js.map +1 -1
  515. package/cjs/ui/QuoteMessage.js +42 -38
  516. package/cjs/ui/QuoteMessage.js.map +1 -1
  517. package/cjs/ui/QuoteMessageInput.js +27 -23
  518. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  519. package/cjs/ui/ReactionBadge.js +13 -17
  520. package/cjs/ui/ReactionBadge.js.map +1 -1
  521. package/cjs/ui/ReactionButton.js +15 -18
  522. package/cjs/ui/ReactionButton.js.map +1 -1
  523. package/cjs/ui/SortByRow.js +14 -14
  524. package/cjs/ui/SortByRow.js.map +1 -1
  525. package/cjs/ui/TextButton.js +13 -21
  526. package/cjs/ui/TextButton.js.map +1 -1
  527. package/cjs/ui/TextMessageItemBody.js +31 -31
  528. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  529. package/cjs/ui/ThreadReplies.js +25 -21
  530. package/cjs/ui/ThreadReplies.js.map +1 -1
  531. package/cjs/ui/ThumbnailMessageItemBody.js +32 -37
  532. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  533. package/cjs/ui/Toggle.js +202 -0
  534. package/cjs/ui/Toggle.js.map +1 -0
  535. package/cjs/ui/Tooltip.js +8 -9
  536. package/cjs/ui/Tooltip.js.map +1 -1
  537. package/cjs/ui/TooltipWrapper.js +17 -18
  538. package/cjs/ui/TooltipWrapper.js.map +1 -1
  539. package/cjs/ui/UnknownMessageItemBody.js +19 -18
  540. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  541. package/cjs/ui/UserListItem.js +72 -73
  542. package/cjs/ui/UserListItem.js.map +1 -1
  543. package/cjs/ui/UserProfile.js +30 -25
  544. package/cjs/ui/UserProfile.js.map +1 -1
  545. package/cjs/ui/VoiceMessageItemBody.js +37 -42
  546. package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
  547. package/cjs/ui/VoiceMessgeInput.js +7 -8
  548. package/cjs/ui/VoiceMessgeInput.js.map +1 -1
  549. package/cjs/ui/Word.js +26 -27
  550. package/cjs/ui/Word.js.map +1 -1
  551. package/cjs/useLongPress-d9deb354.js +83 -0
  552. package/cjs/{useLongPress-f3ee01a0.js.map → useLongPress-d9deb354.js.map} +1 -1
  553. package/cjs/useSendbirdStateContext.js +2 -2
  554. package/cjs/useSendbirdStateContext.js.map +1 -1
  555. package/cjs/utils/message/getOutgoingMessageState.js +16 -14
  556. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  557. package/cjs/utils/message/isVoiceMessage.js +3 -3
  558. package/cjs/utils/message/isVoiceMessage.js.map +1 -1
  559. package/cjs/{utils-98ac09d1.js → utils-21326993.js} +3 -3
  560. package/cjs/{utils-98ac09d1.js.map → utils-21326993.js.map} +1 -1
  561. package/cjs/utils-4b74ea64.js +31 -0
  562. package/cjs/utils-4b74ea64.js.map +1 -0
  563. package/cjs/utils-7f75ad97.js +35 -0
  564. package/cjs/utils-7f75ad97.js.map +1 -0
  565. package/cjs/{utils-1038446c.js → utils-d5176360.js} +1 -1
  566. package/cjs/{utils-1038446c.js.map → utils-d5176360.js.map} +1 -1
  567. package/cjs/uuid-0b4ed44c.js +15 -0
  568. package/cjs/{uuid-1ffa3b79.js.map → uuid-0b4ed44c.js.map} +1 -1
  569. package/cjs/withSendbird.js +15 -16
  570. package/cjs/withSendbird.js.map +1 -1
  571. package/{color-73049158.js → color-3bac434a.js} +5 -5
  572. package/{color-73049158.js.map → color-3bac434a.js.map} +1 -1
  573. package/{compareIds-88bffa50.js → compareIds-1e0e668f.js} +1 -1
  574. package/{compareIds-88bffa50.js.map → compareIds-1e0e668f.js.map} +1 -1
  575. package/const-5f722b91.js +13 -0
  576. package/const-5f722b91.js.map +1 -0
  577. package/{const-2919bc87.js → const-6a07b718.js} +4 -4
  578. package/{const-2919bc87.js.map → const-6a07b718.js.map} +1 -1
  579. package/consts-790ae3a9.js +4 -0
  580. package/{consts-0ea80430.js.map → consts-790ae3a9.js.map} +1 -1
  581. package/consts-aadaccca.js +4 -0
  582. package/consts-aadaccca.js.map +1 -0
  583. package/consts-c9746f2b.js +27 -0
  584. package/{consts-966c9540.js.map → consts-c9746f2b.js.map} +1 -1
  585. package/consts-d4c78cc0.js +4 -0
  586. package/consts-d4c78cc0.js.map +1 -0
  587. package/context-fcbabe23.js +13 -0
  588. package/{context-9baa8d25.js.map → context-fcbabe23.js.map} +1 -1
  589. package/dist/index.css +197 -93
  590. package/dist/index.css.map +1 -1
  591. package/handlers/OpenChannelHandler.js.map +1 -1
  592. package/handlers/SessionHandler.js.map +1 -1
  593. package/{index-d37f34a3.js → index-1a3c0d72.js} +2 -4
  594. package/index-1a3c0d72.js.map +1 -0
  595. package/{index-ad125f51.js → index-2a938266.js} +1 -1
  596. package/{index-ad125f51.js.map → index-2a938266.js.map} +1 -1
  597. package/{index-ac5ad4f9.js → index-3062a861.js} +3 -12
  598. package/index-3062a861.js.map +1 -0
  599. package/index-38a78d99.js +283 -0
  600. package/{index-fd4fc9f0.js.map → index-38a78d99.js.map} +1 -1
  601. package/{index-cce0e324.js → index-4111594a.js} +2 -2
  602. package/{index-cce0e324.js.map → index-4111594a.js.map} +1 -1
  603. package/{index-61a102d7.js → index-51bd074f.js} +37 -27
  604. package/index-51bd074f.js.map +1 -0
  605. package/{index-fa96d1c0.js → index-59bd3da1.js} +50 -50
  606. package/index-59bd3da1.js.map +1 -0
  607. package/{index-91355132.js → index-77f3d9b0.js} +17 -17
  608. package/{index-91355132.js.map → index-77f3d9b0.js.map} +1 -1
  609. package/{index-a9183365.js → index-83600696.js} +37 -39
  610. package/{index-a9183365.js.map → index-83600696.js.map} +1 -1
  611. package/index-8df6bff0.js +51 -0
  612. package/index-8df6bff0.js.map +1 -0
  613. package/{index-aaa9b9f8.js → index-a9ddd0f5.js} +10 -30
  614. package/index-a9ddd0f5.js.map +1 -0
  615. package/index-c7cc73db.js +182 -0
  616. package/index-c7cc73db.js.map +1 -0
  617. package/{index-9cead71b.js → index-cfd0e4c4.js} +22 -15
  618. package/index-cfd0e4c4.js.map +1 -0
  619. package/index-dbe0e004.js +520 -0
  620. package/index-dbe0e004.js.map +1 -0
  621. package/index-ef0bd198.js +354 -0
  622. package/index-ef0bd198.js.map +1 -0
  623. package/{index-95b46112.js → index-f48cfdf7.js} +56 -193
  624. package/index-f48cfdf7.js.map +1 -0
  625. package/index.d.ts +38 -8
  626. package/index.js +51 -51
  627. package/{index.module-e6530c0d.js → index.module-ab8289c1.js} +1 -1
  628. package/{index.module-e6530c0d.js.map → index.module-ab8289c1.js.map} +1 -1
  629. package/lame.all.js.map +1 -1
  630. package/package.json +21 -3
  631. package/sendbirdSelectors.js +319 -371
  632. package/sendbirdSelectors.js.map +1 -1
  633. package/{stringSet-9d579825.js → stringSet-1f18348a.js} +2 -2
  634. package/stringSet-1f18348a.js.map +1 -0
  635. package/tokenize-63d895d3.js +135 -0
  636. package/tokenize-63d895d3.js.map +1 -0
  637. package/{topics-f9301447.js → topics-d8d10f83.js} +2 -2
  638. package/{topics-f9301447.js.map → topics-d8d10f83.js.map} +1 -1
  639. package/types-a85de720.js +15 -0
  640. package/{types-d0a9adf8.js.map → types-a85de720.js.map} +1 -1
  641. package/ui/Accordion.js +19 -18
  642. package/ui/Accordion.js.map +1 -1
  643. package/ui/AccordionGroup.js +10 -11
  644. package/ui/AccordionGroup.js.map +1 -1
  645. package/ui/AdminMessage.js +10 -10
  646. package/ui/AdminMessage.js.map +1 -1
  647. package/ui/Avatar.js +55 -59
  648. package/ui/Avatar.js.map +1 -1
  649. package/ui/Badge.js +16 -15
  650. package/ui/Badge.js.map +1 -1
  651. package/ui/BottomSheet.js +14 -10
  652. package/ui/BottomSheet.js.map +1 -1
  653. package/ui/Button.js +20 -24
  654. package/ui/Button.js.map +1 -1
  655. package/ui/ChannelAvatar.js +38 -41
  656. package/ui/ChannelAvatar.js.map +1 -1
  657. package/ui/Checkbox.js +9 -10
  658. package/ui/Checkbox.js.map +1 -1
  659. package/ui/ConnectionStatus.js +7 -5
  660. package/ui/ConnectionStatus.js.map +1 -1
  661. package/ui/ContextMenu.js +139 -135
  662. package/ui/ContextMenu.js.map +1 -1
  663. package/ui/DateSeparator.js +12 -14
  664. package/ui/DateSeparator.js.map +1 -1
  665. package/ui/EmojiReactions.js +78 -86
  666. package/ui/EmojiReactions.js.map +1 -1
  667. package/ui/FileMessageItemBody.js +22 -22
  668. package/ui/FileMessageItemBody.js.map +1 -1
  669. package/ui/FileViewer.js +36 -35
  670. package/ui/FileViewer.js.map +1 -1
  671. package/ui/Icon.js +2 -2
  672. package/ui/Icon.js.map +1 -1
  673. package/ui/IconButton.js +20 -28
  674. package/ui/IconButton.js.map +1 -1
  675. package/ui/ImageRenderer.js +33 -39
  676. package/ui/ImageRenderer.js.map +1 -1
  677. package/ui/Input.js +16 -14
  678. package/ui/Input.js.map +1 -1
  679. package/ui/Label.js +2 -2
  680. package/ui/LinkLabel.js +2 -2
  681. package/ui/LinkLabel.js.map +1 -1
  682. package/ui/Loader.js +10 -12
  683. package/ui/Loader.js.map +1 -1
  684. package/ui/MentionLabel.js +58 -61
  685. package/ui/MentionLabel.js.map +1 -1
  686. package/ui/MentionUserLabel.js +10 -10
  687. package/ui/MentionUserLabel.js.map +1 -1
  688. package/ui/MessageContent.js +273 -270
  689. package/ui/MessageContent.js.map +1 -1
  690. package/ui/MessageInput.js +87 -79
  691. package/ui/MessageInput.js.map +1 -1
  692. package/ui/MessageItemMenu.js +70 -72
  693. package/ui/MessageItemMenu.js.map +1 -1
  694. package/ui/MessageItemReactionMenu.js +50 -57
  695. package/ui/MessageItemReactionMenu.js.map +1 -1
  696. package/ui/MessageSearchFileItem.js +49 -38
  697. package/ui/MessageSearchFileItem.js.map +1 -1
  698. package/ui/MessageSearchItem.js +40 -32
  699. package/ui/MessageSearchItem.js.map +1 -1
  700. package/ui/MessageStatus.js +10 -10
  701. package/ui/Modal.js +52 -45
  702. package/ui/Modal.js.map +1 -1
  703. package/ui/MutedAvatarOverlay.js +10 -10
  704. package/ui/MutedAvatarOverlay.js.map +1 -1
  705. package/ui/OGMessageItemBody.js +48 -44
  706. package/ui/OGMessageItemBody.js.map +1 -1
  707. package/ui/OpenChannelAdminMessage.js +8 -7
  708. package/ui/OpenChannelAdminMessage.js.map +1 -1
  709. package/ui/OpenChannelAvatar.js +18 -17
  710. package/ui/OpenChannelAvatar.js.map +1 -1
  711. package/ui/OpenchannelConversationHeader.js +17 -13
  712. package/ui/OpenchannelConversationHeader.js.map +1 -1
  713. package/ui/OpenchannelFileMessage.js +134 -140
  714. package/ui/OpenchannelFileMessage.js.map +1 -1
  715. package/ui/OpenchannelOGMessage.js +177 -176
  716. package/ui/OpenchannelOGMessage.js.map +1 -1
  717. package/ui/OpenchannelThumbnailMessage.js +209 -214
  718. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  719. package/ui/OpenchannelUserMessage.js +159 -164
  720. package/ui/OpenchannelUserMessage.js.map +1 -1
  721. package/ui/PlaceHolder.js +5 -6
  722. package/ui/PlaceHolder.js.map +1 -1
  723. package/ui/PlaybackTime.js +15 -16
  724. package/ui/PlaybackTime.js.map +1 -1
  725. package/ui/ProgressBar.js +13 -15
  726. package/ui/ProgressBar.js.map +1 -1
  727. package/ui/QuoteMessage.js +42 -38
  728. package/ui/QuoteMessage.js.map +1 -1
  729. package/ui/QuoteMessageInput.js +27 -23
  730. package/ui/QuoteMessageInput.js.map +1 -1
  731. package/ui/ReactionBadge.js +13 -17
  732. package/ui/ReactionBadge.js.map +1 -1
  733. package/ui/ReactionButton.js +15 -18
  734. package/ui/ReactionButton.js.map +1 -1
  735. package/ui/SortByRow.js +14 -14
  736. package/ui/SortByRow.js.map +1 -1
  737. package/ui/TextButton.js +13 -21
  738. package/ui/TextButton.js.map +1 -1
  739. package/ui/TextMessageItemBody.js +31 -31
  740. package/ui/TextMessageItemBody.js.map +1 -1
  741. package/ui/ThreadReplies.js +25 -21
  742. package/ui/ThreadReplies.js.map +1 -1
  743. package/ui/ThumbnailMessageItemBody.js +32 -37
  744. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  745. package/ui/Toggle.js +191 -0
  746. package/ui/Toggle.js.map +1 -0
  747. package/ui/Tooltip.js +8 -9
  748. package/ui/Tooltip.js.map +1 -1
  749. package/ui/TooltipWrapper.js +17 -18
  750. package/ui/TooltipWrapper.js.map +1 -1
  751. package/ui/UnknownMessageItemBody.js +19 -18
  752. package/ui/UnknownMessageItemBody.js.map +1 -1
  753. package/ui/UserListItem.js +72 -73
  754. package/ui/UserListItem.js.map +1 -1
  755. package/ui/UserProfile.js +30 -25
  756. package/ui/UserProfile.js.map +1 -1
  757. package/ui/VoiceMessageItemBody.js +37 -42
  758. package/ui/VoiceMessageItemBody.js.map +1 -1
  759. package/ui/VoiceMessgeInput.js +7 -8
  760. package/ui/VoiceMessgeInput.js.map +1 -1
  761. package/ui/Word.js +26 -27
  762. package/ui/Word.js.map +1 -1
  763. package/useLongPress-8acf717c.js +81 -0
  764. package/{useLongPress-f119ff35.js.map → useLongPress-8acf717c.js.map} +1 -1
  765. package/useSendbirdStateContext.js +2 -2
  766. package/useSendbirdStateContext.js.map +1 -1
  767. package/utils/message/getOutgoingMessageState.js +9 -8
  768. package/utils/message/getOutgoingMessageState.js.map +1 -1
  769. package/utils/message/isVoiceMessage.js +3 -3
  770. package/utils/message/isVoiceMessage.js.map +1 -1
  771. package/{utils-86d65b96.js → utils-0c09801e.js} +1 -1
  772. package/{utils-86d65b96.js.map → utils-0c09801e.js.map} +1 -1
  773. package/utils-447a922e.js +31 -0
  774. package/utils-447a922e.js.map +1 -0
  775. package/{utils-e53018f1.js → utils-83bbfb63.js} +3 -3
  776. package/{utils-e53018f1.js.map → utils-83bbfb63.js.map} +1 -1
  777. package/utils-b57bff14.js +29 -0
  778. package/utils-b57bff14.js.map +1 -0
  779. package/uuid-48baadaf.js +13 -0
  780. package/{uuid-86cb48e0.js.map → uuid-48baadaf.js.map} +1 -1
  781. package/withSendbird.js +15 -16
  782. package/withSendbird.js.map +1 -1
  783. package/ChannelListProvider-a2f2ee4a.js.map +0 -1
  784. package/ChannelProvider-bb459e82.js.map +0 -1
  785. package/CreateChannelProvider-a935d833.js +0 -48
  786. package/CreateChannelProvider-a935d833.js.map +0 -1
  787. package/LocalizationContext-3d8c0b24.js +0 -20
  788. package/MediaQueryContext-1348e37b.js +0 -80
  789. package/MediaQueryContext-1348e37b.js.map +0 -1
  790. package/MemberList-d8124d7e.js +0 -412
  791. package/MemberList-d8124d7e.js.map +0 -1
  792. package/OpenChannelListProvider-f9ec8658.js.map +0 -1
  793. package/OpenChannelProvider-36d0dd05.js +0 -1844
  794. package/OpenChannelProvider-36d0dd05.js.map +0 -1
  795. package/RemoveMessageModal-7852c71d.js +0 -30
  796. package/RemoveMessageModal-7852c71d.js.map +0 -1
  797. package/ThreadProvider-43c384e9.js +0 -1623
  798. package/ThreadProvider-43c384e9.js.map +0 -1
  799. package/VoiceMessageInputWrapper-0cd90994.js.map +0 -1
  800. package/_rollupPluginBabelHelpers-79f64283.js.map +0 -1
  801. package/cjs/ChannelListProvider-b0a363e0.js.map +0 -1
  802. package/cjs/ChannelProvider-cf5867c2.js.map +0 -1
  803. package/cjs/CreateChannelProvider-f82d812f.js +0 -55
  804. package/cjs/CreateChannelProvider-f82d812f.js.map +0 -1
  805. package/cjs/MediaQueryContext-b9c2ec1f.js +0 -87
  806. package/cjs/MediaQueryContext-b9c2ec1f.js.map +0 -1
  807. package/cjs/MemberList-13ba769f.js +0 -418
  808. package/cjs/MemberList-13ba769f.js.map +0 -1
  809. package/cjs/OpenChannelListProvider-02d6d44b.js +0 -416
  810. package/cjs/OpenChannelListProvider-02d6d44b.js.map +0 -1
  811. package/cjs/OpenChannelProvider-850b9cd0.js +0 -1853
  812. package/cjs/RemoveMessageModal-457b1535.js.map +0 -1
  813. package/cjs/ThreadProvider-37f2f0a3.js +0 -1632
  814. package/cjs/ThreadProvider-37f2f0a3.js.map +0 -1
  815. package/cjs/VoiceMessageInputWrapper-43c29f38.js.map +0 -1
  816. package/cjs/_rollupPluginBabelHelpers-c2313dcd.js.map +0 -1
  817. package/cjs/color-7f7508e6.js.map +0 -1
  818. package/cjs/const-e22c9d25.js +0 -19
  819. package/cjs/const-e22c9d25.js.map +0 -1
  820. package/cjs/consts-3764bd68.js +0 -6
  821. package/cjs/consts-3764bd68.js.map +0 -1
  822. package/cjs/consts-46fa3a3a.js +0 -6
  823. package/cjs/consts-ad849467.js +0 -6
  824. package/cjs/index-0b9ad941.js +0 -346
  825. package/cjs/index-0b9ad941.js.map +0 -1
  826. package/cjs/index-0dff9958.js.map +0 -1
  827. package/cjs/index-2ac1f908.js +0 -649
  828. package/cjs/index-2ac1f908.js.map +0 -1
  829. package/cjs/index-3626dfeb.js.map +0 -1
  830. package/cjs/index-71173fef.js.map +0 -1
  831. package/cjs/index-8b5a13fe.js.map +0 -1
  832. package/cjs/index-8b6bb1ee.js.map +0 -1
  833. package/cjs/index-a415176f.js +0 -192
  834. package/cjs/index-a415176f.js.map +0 -1
  835. package/cjs/index-a4887600.js.map +0 -1
  836. package/cjs/index-ac1b0ab9.js.map +0 -1
  837. package/cjs/index-cd680348.js +0 -271
  838. package/cjs/index-ddcf90b1.js +0 -59
  839. package/cjs/index-ddcf90b1.js.map +0 -1
  840. package/cjs/stringSet-061fe0c1.js.map +0 -1
  841. package/cjs/tokenize-7e34a56e.js +0 -141
  842. package/cjs/tokenize-7e34a56e.js.map +0 -1
  843. package/cjs/tslib.es6-8f4b0cfe.js +0 -97
  844. package/cjs/tslib.es6-8f4b0cfe.js.map +0 -1
  845. package/cjs/types-beecfca4.js +0 -11
  846. package/cjs/useLongPress-f3ee01a0.js +0 -100
  847. package/cjs/utils-3f3c2287.js +0 -27
  848. package/cjs/utils-3f3c2287.js.map +0 -1
  849. package/cjs/utils-6a97ff3a.js +0 -35
  850. package/cjs/utils-6a97ff3a.js.map +0 -1
  851. package/cjs/uuid-1ffa3b79.js +0 -17
  852. package/const-df1daff9.js +0 -13
  853. package/const-df1daff9.js.map +0 -1
  854. package/consts-0ea80430.js +0 -4
  855. package/consts-1861f891.js +0 -4
  856. package/consts-1861f891.js.map +0 -1
  857. package/consts-966c9540.js +0 -23
  858. package/consts-f4362414.js +0 -4
  859. package/consts-f4362414.js.map +0 -1
  860. package/context-9baa8d25.js +0 -12
  861. package/index-179bed8d.js +0 -177
  862. package/index-179bed8d.js.map +0 -1
  863. package/index-61a102d7.js.map +0 -1
  864. package/index-95b46112.js.map +0 -1
  865. package/index-9cead71b.js.map +0 -1
  866. package/index-aaa9b9f8.js.map +0 -1
  867. package/index-ac5ad4f9.js.map +0 -1
  868. package/index-c70af435.js +0 -53
  869. package/index-c70af435.js.map +0 -1
  870. package/index-d37f34a3.js.map +0 -1
  871. package/index-e378ca4e.js +0 -607
  872. package/index-e378ca4e.js.map +0 -1
  873. package/index-f0f9692b.js +0 -339
  874. package/index-f0f9692b.js.map +0 -1
  875. package/index-fa96d1c0.js.map +0 -1
  876. package/index-fd4fc9f0.js +0 -262
  877. package/stringSet-9d579825.js.map +0 -1
  878. package/tokenize-bd8e35b2.js +0 -136
  879. package/tokenize-bd8e35b2.js.map +0 -1
  880. package/tslib.es6-d6e50ec3.js +0 -92
  881. package/tslib.es6-d6e50ec3.js.map +0 -1
  882. package/types-d0a9adf8.js +0 -9
  883. package/useLongPress-f119ff35.js +0 -98
  884. package/utils-0c8334fa.js +0 -25
  885. package/utils-0c8334fa.js.map +0 -1
  886. package/utils-e659e765.js +0 -31
  887. package/utils-e659e765.js.map +0 -1
  888. package/uuid-86cb48e0.js +0 -15
@@ -1 +1 @@
1
- {"version":3,"file":"Message.js","sources":["../../../../src/utils/useDidMountEffect.ts","../../../../src/smart-components/Channel/components/Message/index.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst useDidMountEffect = (func: () => void, deps: Array<unknown>): void => {\n const [didMount, setDidmount] = useState(false);\n useEffect(() => {\n if (didMount) {\n func();\n } else {\n setDidmount(true);\n }\n }, deps);\n};\n\nexport default useDidMountEffect;\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useLayoutEffect,\n} from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\n\nimport useDidMountEffect from '../../../../utils/useDidMountEffect';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { getClassName } from '../../../../utils';\nimport { isDisabledBecauseFrozen, isDisabledBecauseMuted } from '../../context/utils';\nimport { MAX_USER_MENTION_COUNT, MAX_USER_SUGGESTION_COUNT } from '../../context/const';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport MessageContent from '../../../../ui/MessageContent';\nimport FileViewer from '../FileViewer';\nimport RemoveMessageModal from '../RemoveMessageModal';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport { EveryMessage, RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { useHandleOnScrollCallback } from '../../../../hooks/useHandleOnScrollCallback'\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll: () => void;\n // for extending\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderEditInput?: () => React.ReactElement;\n renderMessageContent?: () => React.ReactElement;\n};\n\n// todo: Refactor this component, is too complex now\nconst Message = ({\n message,\n hasSeparator,\n chainTop,\n chainBottom,\n handleScroll,\n renderCustomSeparator,\n renderEditInput,\n renderMessage,\n renderMessageContent,\n}: MessageUIProps): React.ReactElement => {\n const { dateLocale } = useLocalization();\n const globalStore = useSendbirdStateContext();\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || MAX_USER_MENTION_COUNT;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || MAX_USER_SUGGESTION_COUNT;\n\n const {\n initialized,\n currentGroupChannel,\n highLightedMessageId,\n setHighLightedMessageId,\n animatedMessageId,\n setAnimatedMessageId,\n updateMessage,\n scrollToMessage,\n replyType,\n threadReplySelectType,\n isReactionEnabled,\n toggleReaction,\n emojiContainer,\n nicknamesMap,\n setQuoteMessage,\n resendMessage,\n renderUserMentionItem,\n onReplyInThread,\n onQuoteMessageClick,\n onMessageAnimated,\n onMessageHighlighted,\n onScrollCallback,\n } = useChannelContext();\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const [isAnimated, setIsAnimated] = useState(false);\n const [isHighlighted, setIsHighlighted] = useState(false);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const editMessageInputRef = useRef(null);\n const messageScrollRef = useRef(null);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentGroupChannel)\n && !isDisabledBecauseMuted(currentGroupChannel);\n const disabled = !initialized\n || isDisabledBecauseFrozen(currentGroupChannel)\n || isDisabledBecauseMuted(currentGroupChannel)\n || !isOnline;\n\n const handleOnScroll = useHandleOnScrollCallback({\n hasMore: false,\n onScroll: onScrollCallback,\n scrollRef: messageScrollRef,\n });\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n useDidMountEffect(() => {\n if (currentGroupChannel?.lastMessage?.messageId === message?.messageId) {\n handleScroll?.();\n }\n }, [showEdit, message?.reactions?.length]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageHighlightedTimeout = null;\n if (highLightedMessageId === message.messageId && messageScrollRef?.current) {\n handleOnScroll();\n setIsAnimated(false);\n animationTimeout = setTimeout(() => {\n setIsHighlighted(true);\n }, 500);\n messageHighlightedTimeout = setTimeout(() => {\n setHighLightedMessageId(0);\n onMessageHighlighted?.();\n }, 1600);\n } else {\n setIsHighlighted(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageHighlightedTimeout);\n }\n }, [highLightedMessageId, messageScrollRef.current, message.messageId]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageAnimatedTimeout = null;\n if (animatedMessageId === message.messageId && messageScrollRef?.current) {\n handleOnScroll();\n setIsHighlighted(false);\n animationTimeout = setTimeout(() => {\n setIsAnimated(true);\n }, 500);\n messageAnimatedTimeout = setTimeout(() => {\n setAnimatedMessageId(0);\n onMessageAnimated?.();\n }, 1600);\n } else {\n setIsAnimated(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageAnimatedTimeout);\n }\n }, [animatedMessageId, messageScrollRef.current, message.messageId, onMessageAnimated]);\n const renderedMessage = useMemo(() => {\n return renderMessage?.({\n message,\n chainTop,\n chainBottom,\n });\n }, [message, renderMessage]);\n const renderedCustomSeparator = useMemo(() => {\n if (renderCustomSeparator) {\n return renderCustomSeparator?.({ message: message });\n }\n return null;\n }, [message, renderCustomSeparator]);\n\n if (renderedMessage) {\n return (\n <div\n ref={messageScrollRef}\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n >\n {/* date-separator */}\n {\n // TODO: Add message instance as a function parameter\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {renderedMessage}\n </div>\n );\n }\n\n if (showEdit && message?.isUserMessage?.()) {\n return renderEditInput?.() || (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentGroupChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n style={{ marginBottom: '2px' }}\n ref={messageScrollRef}\n >\n {/* date-separator */}\n {\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {/* Message */}\n {\n renderMessageContent?.() || (\n <MessageContent\n className=\"sendbird-message-hoc__message-content\"\n userId={userId}\n scrollToMessage={scrollToMessage}\n channel={currentGroupChannel}\n message={message}\n disabled={!isOnline}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n threadReplySelectType={threadReplySelectType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n resendMessage={resendMessage}\n toggleReaction={toggleReaction}\n setQuoteMessage={setQuoteMessage}\n onReplyInThread={onReplyInThread}\n onQuoteMessageClick={onQuoteMessageClick}\n />\n )\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )\n }\n {\n showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n onCancel={() => setShowFileViewer(false)}\n />\n )\n }\n </div>\n );\n};\n\nexport default Message;\n"],"names":["useDidMountEffect","func","deps","_a","useState","didMount","setDidmount","useEffect","Message","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeparator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","_d","config","userId","isOnline","isMentionEnabled","userMention","maxUserMentionCount","maxMentionCount","MAX_USER_MENTION_COUNT","maxUserSuggestionCount","maxSuggestionCount","MAX_USER_SUGGESTION_COUNT","_e","useChannelContext","initialized","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","threadReplySelectType","isReactionEnabled","toggleReaction","emojiContainer","nicknamesMap","setQuoteMessage","resendMessage","renderUserMentionItem","onReplyInThread","onQuoteMessageClick","onMessageAnimated","onMessageHighlighted","onScrollCallback","_f","showEdit","setShowEdit","_g","showRemove","setShowRemove","_h","showFileViewer","setShowFileViewer","_j","isAnimated","setIsAnimated","_k","isHighlighted","setIsHighlighted","_l","mentionNickname","setMentionNickname","_m","mentionedUsers","setMentionedUsers","_o","mentionedUserIds","setMentionedUserIds","_p","messageInputEvent","setMessageInputEvent","_q","selectedUser","setSelectedUser","_r","mentionSuggestedUsers","setMentionSuggestedUsers","_s","ableMention","setAbleMention","editMessageInputRef","useRef","messageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","handleOnScroll","useHandleOnScrollCallback","hasMore","onScroll","scrollRef","filter","i","indexOf","splice","lastMessage","messageId","_b","reactions","useLayoutEffect","animationTimeout","messageHighlightedTimeout","current","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","createElement","ref","className","getClassName","DateSeparator","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","format","createdAt","locale","_c","isUserMessage","call","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","user","__spreadArray","onFocusItemChange","onFetchUsers","users","ableAddMention","MessageInput","isEdit","mentionSelectedUser","onStartTyping","startTyping","onUpdateMessage","mentionTemplate","endTyping","onCancelEdit","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","style","marginBottom","MessageContent","channel","RemoveMessageModal","onCancel","FileViewer"],"mappings":"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"}
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'\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll?: () => void;\n // for extending\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n renderEditInput?: () => React.ReactElement;\n renderMessageContent?: () => React.ReactElement;\n};\n\n// todo: Refactor this component, is too complex now\nconst Message = ({\n message,\n hasSeparator,\n chainTop,\n chainBottom,\n handleScroll,\n renderCustomSeparator,\n renderEditInput,\n renderMessage,\n renderMessageContent,\n}: MessageUIProps): React.ReactElement => {\n const { dateLocale } = useLocalization();\n const globalStore = useSendbirdStateContext();\n const {\n userId,\n isOnline,\n isMentionEnabled,\n userMention,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || MAX_USER_MENTION_COUNT;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || MAX_USER_SUGGESTION_COUNT;\n\n const {\n initialized,\n currentGroupChannel,\n highLightedMessageId,\n setHighLightedMessageId,\n animatedMessageId,\n setAnimatedMessageId,\n updateMessage,\n scrollToMessage,\n replyType,\n threadReplySelectType,\n isReactionEnabled,\n toggleReaction,\n emojiContainer,\n nicknamesMap,\n setQuoteMessage,\n resendMessage,\n renderUserMentionItem,\n onReplyInThread,\n onQuoteMessageClick,\n onMessageAnimated,\n onMessageHighlighted,\n onScrollCallback,\n } = useChannelContext();\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const [isAnimated, setIsAnimated] = useState(false);\n const [isHighlighted, setIsHighlighted] = useState(false);\n const [mentionNickname, setMentionNickname] = useState('');\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const editMessageInputRef = useRef(null);\n const messageScrollRef = useRef(null);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isDisabledBecauseFrozen(currentGroupChannel)\n && !isDisabledBecauseMuted(currentGroupChannel);\n const disabled = !initialized\n || isDisabledBecauseFrozen(currentGroupChannel)\n || isDisabledBecauseMuted(currentGroupChannel)\n || !isOnline;\n\n const handleOnScroll = useHandleOnScrollCallback({\n hasMore: false,\n onScroll: onScrollCallback,\n scrollRef: messageScrollRef,\n });\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n // Move the messsage list scroll when the last message's height is changed by reactions\n useDidMountEffect(() => {\n if (currentGroupChannel?.lastMessage?.messageId === message?.messageId) {\n handleScroll?.();\n }\n }, [showEdit, message?.reactions?.length]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageHighlightedTimeout = null;\n if (highLightedMessageId === message.messageId && messageScrollRef?.current) {\n handleOnScroll();\n setIsAnimated(false);\n animationTimeout = setTimeout(() => {\n setIsHighlighted(true);\n }, 500);\n messageHighlightedTimeout = setTimeout(() => {\n setHighLightedMessageId(0);\n onMessageHighlighted?.();\n }, 1600);\n } else {\n setIsHighlighted(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageHighlightedTimeout);\n }\n }, [highLightedMessageId, messageScrollRef.current, message.messageId]);\n\n useLayoutEffect(() => {\n let animationTimeout = null;\n let messageAnimatedTimeout = null;\n if (animatedMessageId === message.messageId && messageScrollRef?.current) {\n handleOnScroll();\n setIsHighlighted(false);\n animationTimeout = setTimeout(() => {\n setIsAnimated(true);\n }, 500);\n messageAnimatedTimeout = setTimeout(() => {\n setAnimatedMessageId(0);\n onMessageAnimated?.();\n }, 1600);\n } else {\n setIsAnimated(false);\n }\n return () => {\n clearTimeout(animationTimeout);\n clearTimeout(messageAnimatedTimeout);\n }\n }, [animatedMessageId, messageScrollRef.current, message.messageId, onMessageAnimated]);\n const renderedMessage = useMemo(() => {\n return renderMessage?.({\n message,\n chainTop,\n chainBottom,\n });\n }, [message, renderMessage]);\n const renderedCustomSeparator = useMemo(() => {\n if (renderCustomSeparator) {\n return renderCustomSeparator?.({ message: message });\n }\n return null;\n }, [message, renderCustomSeparator]);\n\n if (renderedMessage) {\n return (\n <div\n ref={messageScrollRef}\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n >\n {/* date-separator */}\n {\n // TODO: Add message instance as a function parameter\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {renderedMessage}\n </div>\n );\n }\n\n if (showEdit && message?.isUserMessage?.()) {\n return renderEditInput?.() || (\n <>\n {\n displaySuggestedMentionList && (\n <SuggestedMentionList\n targetNickname={mentionNickname}\n inputEvent={messageInputEvent}\n renderUserMentionItem={renderUserMentionItem}\n onUserItemClick={(user) => {\n if (user) {\n setMentionedUsers([...mentionedUsers, user]);\n }\n setMentionNickname('');\n setSelectedUser(user);\n setMessageInputEvent(null);\n }}\n onFocusItemChange={() => {\n setMessageInputEvent(null);\n }}\n onFetchUsers={(users) => {\n setMentionSuggestedUsers(users);\n }}\n ableAddMention={ableMention}\n maxMentionCount={maxUserMentionCount}\n maxSuggestionCount={maxUserSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentGroupChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([])\n setShowEdit(false);\n currentGroupChannel?.endTyping?.();\n }}\n onUserMentioned={(user) => {\n if (selectedUser?.userId === user?.userId) {\n setSelectedUser(null);\n setMentionNickname('');\n }\n }}\n onMentionStringChange={(mentionText) => {\n setMentionNickname(mentionText);\n }}\n onMentionedUserIdsUpdated={(userIds) => {\n setMentionedUserIds(userIds);\n }}\n onKeyDown={(e) => {\n if (displaySuggestedMentionList && mentionSuggestedUsers?.length > 0\n && ((e.key === MessageInputKeys.Enter && ableMention) || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)\n ) {\n setMessageInputEvent(e);\n return true;\n }\n return false;\n }}\n />\n </>\n );\n }\n\n return (\n <div\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n style={{ marginBottom: '2px' }}\n ref={messageScrollRef}\n >\n {/* date-separator */}\n {\n hasSeparator && (renderedCustomSeparator || (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n ))\n }\n {/* Message */}\n {\n renderMessageContent?.() || (\n <MessageContent\n className=\"sendbird-message-hoc__message-content\"\n userId={userId}\n scrollToMessage={scrollToMessage}\n channel={currentGroupChannel}\n message={message}\n disabled={!isOnline}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n threadReplySelectType={threadReplySelectType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n resendMessage={resendMessage}\n toggleReaction={toggleReaction}\n setQuoteMessage={setQuoteMessage}\n onReplyInThread={onReplyInThread}\n onQuoteMessageClick={onQuoteMessageClick}\n 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","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","ableMention","setAbleMention","editMessageInputRef","useRef","messageScrollRef","displaySuggestedMentionList","length","isDisabledBecauseFrozen","isDisabledBecauseMuted","disabled","handleOnScroll","useHandleOnScrollCallback","hasMore","onScroll","scrollRef","filter","_ref2","i","indexOf","splice","_currentGroupChannel$","lastMessage","messageId","reactions","useLayoutEffect","animationTimeout","messageHighlightedTimeout","current","setTimeout","clearTimeout","messageAnimatedTimeout","renderedMessage","useMemo","renderedCustomSeparator","React","createElement","ref","className","getClassName","DateSeparator","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","format","createdAt","locale","isUserMessage","call","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","user","onFocusItemChange","onFetchUsers","users","ableAddMention","MessageInput","isEdit","mentionSelectedUser","onStartTyping","_currentGroupChannel$2","startTyping","onUpdateMessage","_ref3","_currentGroupChannel$3","mentionTemplate","endTyping","onCancelEdit","_currentGroupChannel$4","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","style","marginBottom","MessageContent","channel","onMessageHeightChange","RemoveMessageModal","onCancel","FileViewer"],"mappings":"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"}
@@ -1,123 +1,113 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../../tslib.es6-8f4b0cfe.js');
4
3
  var React = require('react');
5
- var Channel_context = require('../../ChannelProvider-cf5867c2.js');
4
+ var Channel_context = require('../../ChannelProvider-620bb354.js');
6
5
  var ui_MessageInput = require('../../ui/MessageInput.js');
7
6
  var ui_QuoteMessageInput = require('../../ui/QuoteMessageInput.js');
8
- var LocalizationContext = require('../../LocalizationContext-498cb747.js');
7
+ var LocalizationContext = require('../../LocalizationContext-af96cf5f.js');
9
8
  var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
10
9
  var Channel_components_SuggestedMentionList = require('./SuggestedMentionList.js');
11
- var _const = require('../../const-61fc7be6.js');
12
- var VoiceMessageInputWrapper = require('../../VoiceMessageInputWrapper-43c29f38.js');
13
- require('../../UserProfileContext-617420c9.js');
10
+ var _const = require('../../const-ab0f6056.js');
11
+ var VoiceMessageInputWrapper = require('../../VoiceMessageInputWrapper-db7f2b72.js');
12
+ require('../../UserProfileContext-f068b0ba.js');
14
13
  require('prop-types');
15
- require('../../index-71173fef.js');
16
- require('../../index-8b6bb1ee.js');
17
- require('../../topics-c8adbede.js');
18
- require('../../index-2ac1f908.js');
14
+ require('../../index-f65677b1.js');
15
+ require('../../index-83d1d15e.js');
16
+ require('../../topics-825e5d42.js');
17
+ require('../../index-f2146bae.js');
18
+ require('../../_rollupPluginBabelHelpers-c5955c81.js');
19
19
  require('../../utils/message/getOutgoingMessageState.js');
20
- require('../../_rollupPluginBabelHelpers-c2313dcd.js');
21
- require('../../compareIds-27f7912f.js');
22
- require('../../const-e22c9d25.js');
20
+ require('../../compareIds-18b3b1d6.js');
21
+ require('../../const-6691e574.js');
23
22
  require('@sendbird/chat/groupChannel');
24
- require('../../uuid-1ffa3b79.js');
23
+ require('../../uuid-0b4ed44c.js');
25
24
  require('@sendbird/chat/message');
26
25
  require('../../ui/ContextMenu.js');
27
26
  require('react-dom');
28
27
  require('../../ui/SortByRow.js');
29
- require('../../index-b8a20afd.js');
30
- require('../../stringSet-061fe0c1.js');
28
+ require('../../index-73643285.js');
29
+ require('../../stringSet-68748705.js');
31
30
  require('../../ui/ReactionButton.js');
32
31
  require('../../ui/ImageRenderer.js');
33
32
  require('../../ui/Icon.js');
34
- require('../../consts-8605e767.js');
33
+ require('../../consts-a5382bc1.js');
35
34
  require('../../ui/IconButton.js');
36
35
  require('../../ui/Button.js');
37
36
  require('dompurify');
38
- require('../../consts-3764bd68.js');
39
- require('../../consts-ad849467.js');
40
- require('../../consts-46fa3a3a.js');
41
- require('../../tokenize-7e34a56e.js');
37
+ require('../../consts-6ec77e9a.js');
38
+ require('../../consts-bc27beff.js');
39
+ require('../../consts-a422c2f9.js');
40
+ require('../../tokenize-d86ab0c7.js');
42
41
  require('../../withSendbird.js');
43
42
  require('../../ui/Avatar.js');
44
- require('../../ThreadProvider-37f2f0a3.js');
43
+ require('../../ThreadProvider-572574d7.js');
45
44
  require('../../Thread/context/types.js');
46
45
  require('@sendbird/chat');
47
46
  require('../../VoicePlayer/useVoicePlayer.js');
48
- require('../../index-cd680348.js');
47
+ require('../../index-9d518988.js');
49
48
  require('../../VoiceRecorder/context.js');
50
49
  require('../../VoiceRecorder/useVoiceRecorder.js');
51
- require('../../index-ead97d9a.js');
50
+ require('../../index-c1de8d8f.js');
52
51
  require('../../ui/PlaybackTime.js');
53
52
  require('../../ui/ProgressBar.js');
54
53
  require('../../ui/TextButton.js');
55
- require('../../color-7f7508e6.js');
54
+ require('../../color-afeb8dc2.js');
56
55
  require('../../ui/Modal.js');
57
- require('../../index-67f813a3.js');
58
- require('../../MediaQueryContext-b9c2ec1f.js');
56
+ require('../../index-68c57136.js');
57
+ require('../../MediaQueryContext-8ec3f647.js');
59
58
 
60
59
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
61
60
 
62
61
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
63
62
 
64
- var MessageInputWrapper = function (props, ref) {
65
- var value = props.value,
66
- renderFileUploadIcon = props.renderFileUploadIcon,
67
- renderVoiceMessageIcon = props.renderVoiceMessageIcon,
68
- renderSendMessageIcon = props.renderSendMessageIcon;
69
- var propDisabled = props.disabled;
70
- var _a = Channel_context.useChannelContext(),
71
- currentGroupChannel = _a.currentGroupChannel,
72
- initialized = _a.initialized,
73
- quoteMessage = _a.quoteMessage,
74
- sendMessage = _a.sendMessage,
75
- sendFileMessage = _a.sendFileMessage,
76
- sendVoiceMessage = _a.sendVoiceMessage,
77
- setQuoteMessage = _a.setQuoteMessage,
78
- messageInputRef = _a.messageInputRef,
79
- renderUserMentionItem = _a.renderUserMentionItem;
80
- var globalStore = useSendbirdStateContext();
81
- var channel = currentGroupChannel;
82
- var _b = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config,
83
- isOnline = _b.isOnline,
84
- isMentionEnabled = _b.isMentionEnabled,
85
- userMention = _b.userMention,
86
- isVoiceMessageEnabled = _b.isVoiceMessageEnabled;
87
- var maxUserMentionCount = (userMention === null || userMention === void 0 ? void 0 : userMention.maxMentionCount) || 10;
88
- var maxUserSuggestionCount = (userMention === null || userMention === void 0 ? void 0 : userMention.maxSuggestionCount) || 15;
89
- var stringSet = React.useContext(LocalizationContext.LocalizationContext).stringSet;
90
- var _c = React.useState(''),
91
- mentionNickname = _c[0],
92
- setMentionNickname = _c[1];
63
+ const MessageInputWrapper = (props, ref) => {
64
+ const {
65
+ value,
66
+ renderFileUploadIcon,
67
+ renderVoiceMessageIcon,
68
+ renderSendMessageIcon
69
+ } = props;
70
+ const propDisabled = props.disabled;
71
+ const {
72
+ currentGroupChannel,
73
+ initialized,
74
+ quoteMessage,
75
+ sendMessage,
76
+ sendFileMessage,
77
+ sendVoiceMessage,
78
+ setQuoteMessage,
79
+ messageInputRef,
80
+ renderUserMentionItem
81
+ } = Channel_context.useChannelContext();
82
+ const globalStore = useSendbirdStateContext();
83
+ const channel = currentGroupChannel;
84
+ const {
85
+ isOnline,
86
+ isMentionEnabled,
87
+ userMention,
88
+ isVoiceMessageEnabled
89
+ } = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config;
90
+ const maxUserMentionCount = (userMention === null || userMention === void 0 ? void 0 : userMention.maxMentionCount) || 10;
91
+ const maxUserSuggestionCount = (userMention === null || userMention === void 0 ? void 0 : userMention.maxSuggestionCount) || 15;
92
+ const {
93
+ stringSet
94
+ } = React.useContext(LocalizationContext.LocalizationContext);
95
+ const [mentionNickname, setMentionNickname] = React.useState('');
93
96
  // todo: set type
94
- var _d = React.useState([]),
95
- mentionedUsers = _d[0],
96
- setMentionedUsers = _d[1];
97
- var _e = React.useState([]),
98
- mentionedUserIds = _e[0],
99
- setMentionedUserIds = _e[1];
100
- var _f = React.useState(null),
101
- selectedUser = _f[0],
102
- setSelectedUser = _f[1];
103
- var _g = React.useState([]),
104
- mentionSuggestedUsers = _g[0],
105
- setMentionSuggestedUsers = _g[1];
106
- var _h = React.useState(true),
107
- ableMention = _h[0],
108
- setAbleMention = _h[1];
109
- var _j = React.useState(null),
110
- messageInputEvent = _j[0],
111
- setMessageInputEvent = _j[1];
112
- var _k = React.useState(false),
113
- showVoiceMessageInput = _k[0],
114
- setShowVoiceMessageInput = _k[1];
115
- var disabled = propDisabled || !initialized || Channel_context.isDisabledBecauseFrozen(channel) || Channel_context.isDisabledBecauseMuted(channel) || !isOnline;
116
- var isOperator = Channel_context.isOperator(channel);
117
- var isBroadcast = channel === null || channel === void 0 ? void 0 : channel.isBroadcast;
118
- var displaySuggestedMentionList = isOnline && isMentionEnabled && mentionNickname.length > 0 && !Channel_context.isDisabledBecauseFrozen(channel) && !Channel_context.isDisabledBecauseMuted(channel);
97
+ const [mentionedUsers, setMentionedUsers] = React.useState([]);
98
+ const [mentionedUserIds, setMentionedUserIds] = React.useState([]);
99
+ const [selectedUser, setSelectedUser] = React.useState(null);
100
+ const [mentionSuggestedUsers, setMentionSuggestedUsers] = React.useState([]);
101
+ const [ableMention, setAbleMention] = React.useState(true);
102
+ const [messageInputEvent, setMessageInputEvent] = React.useState(null);
103
+ const [showVoiceMessageInput, setShowVoiceMessageInput] = React.useState(false);
104
+ const disabled = propDisabled || !initialized || Channel_context.isDisabledBecauseFrozen(channel) || Channel_context.isDisabledBecauseMuted(channel) || !isOnline;
105
+ const isOperator = Channel_context.isOperator(channel);
106
+ const isBroadcast = channel === null || channel === void 0 ? void 0 : channel.isBroadcast;
107
+ const displaySuggestedMentionList = isOnline && isMentionEnabled && mentionNickname.length > 0 && !Channel_context.isDisabledBecauseFrozen(channel) && !Channel_context.isDisabledBecauseMuted(channel);
108
+
119
109
  // Reset when channel changes
120
- React.useEffect(function () {
110
+ React.useEffect(() => {
121
111
  setMentionNickname('');
122
112
  setMentionedUsers([]);
123
113
  setMentionedUserIds([]);
@@ -127,17 +117,19 @@ var MessageInputWrapper = function (props, ref) {
127
117
  setMessageInputEvent(null);
128
118
  setShowVoiceMessageInput(false);
129
119
  }, [channel === null || channel === void 0 ? void 0 : channel.url]);
130
- React.useEffect(function () {
120
+ React.useEffect(() => {
131
121
  if ((mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) >= maxUserMentionCount) {
132
122
  setAbleMention(false);
133
123
  } else {
134
124
  setAbleMention(true);
135
125
  }
136
126
  }, [mentionedUsers]);
137
- React.useEffect(function () {
138
- setMentionedUsers(mentionedUsers.filter(function (_a) {
139
- var userId = _a.userId;
140
- var i = mentionedUserIds.indexOf(userId);
127
+ React.useEffect(() => {
128
+ setMentionedUsers(mentionedUsers.filter(_ref => {
129
+ let {
130
+ userId
131
+ } = _ref;
132
+ const i = mentionedUserIds.indexOf(userId);
141
133
  if (i < 0) {
142
134
  return false;
143
135
  } else {
@@ -146,29 +138,30 @@ var MessageInputWrapper = function (props, ref) {
146
138
  }
147
139
  }));
148
140
  }, [mentionedUserIds]);
141
+
149
142
  // broadcast channel + not operator
150
143
  if (isBroadcast && !isOperator) {
151
144
  return null;
152
145
  }
153
146
  // other conditions
154
147
  return /*#__PURE__*/React__default["default"].createElement("div", {
155
- className: "sendbird-message-input-wrapper".concat(showVoiceMessageInput ? '--voice-message' : '')
148
+ className: `sendbird-message-input-wrapper${showVoiceMessageInput ? '--voice-message' : ''}`
156
149
  }, displaySuggestedMentionList && /*#__PURE__*/React__default["default"].createElement(Channel_components_SuggestedMentionList, {
157
150
  targetNickname: mentionNickname,
158
151
  inputEvent: messageInputEvent,
159
152
  renderUserMentionItem: renderUserMentionItem,
160
- onUserItemClick: function (user) {
153
+ onUserItemClick: user => {
161
154
  if (user) {
162
- setMentionedUsers(tslib_es6.__spreadArray(tslib_es6.__spreadArray([], mentionedUsers, true), [user], false));
155
+ setMentionedUsers([...mentionedUsers, user]);
163
156
  }
164
157
  setMentionNickname('');
165
158
  setSelectedUser(user);
166
159
  setMessageInputEvent(null);
167
160
  },
168
- onFocusItemChange: function () {
161
+ onFocusItemChange: () => {
169
162
  setMessageInputEvent(null);
170
163
  },
171
- onFetchUsers: function (users) {
164
+ onFetchUsers: users => {
172
165
  setMentionSuggestedUsers(users);
173
166
  },
174
167
  ableAddMention: ableMention,
@@ -178,17 +171,15 @@ var MessageInputWrapper = function (props, ref) {
178
171
  className: "sendbird-message-input-wrapper__quote-message-input"
179
172
  }, /*#__PURE__*/React__default["default"].createElement(ui_QuoteMessageInput, {
180
173
  replyingMessage: quoteMessage,
181
- onClose: function () {
182
- return setQuoteMessage(null);
183
- }
174
+ onClose: () => setQuoteMessage(null)
184
175
  })), showVoiceMessageInput ? /*#__PURE__*/React__default["default"].createElement(VoiceMessageInputWrapper.VoiceMessageInputWrapper, {
185
176
  channel: channel,
186
- onSubmitClick: function (recordedFile, duration) {
177
+ onSubmitClick: (recordedFile, duration) => {
187
178
  sendVoiceMessage(recordedFile, duration, quoteMessage);
188
179
  setQuoteMessage(null);
189
180
  setShowVoiceMessageInput(false);
190
181
  },
191
- onCancelClick: function () {
182
+ onCancelClick: () => {
192
183
  setShowVoiceMessageInput(false);
193
184
  }
194
185
  }) : /*#__PURE__*/React__default["default"].createElement(ui_MessageInput, {
@@ -198,7 +189,7 @@ var MessageInputWrapper = function (props, ref) {
198
189
  mentionSelectedUser: selectedUser,
199
190
  isMentionEnabled: isMentionEnabled,
200
191
  isVoiceMessageEnabled: isVoiceMessageEnabled,
201
- onVoiceMessageIconClick: function () {
192
+ onVoiceMessageIconClick: () => {
202
193
  setShowVoiceMessageInput(true);
203
194
  },
204
195
  setMentionedUsers: setMentionedUsers,
@@ -209,41 +200,43 @@ var MessageInputWrapper = function (props, ref) {
209
200
  renderFileUploadIcon: renderFileUploadIcon,
210
201
  renderSendMessageIcon: renderSendMessageIcon,
211
202
  renderVoiceMessageIcon: renderVoiceMessageIcon,
212
- onStartTyping: function () {
203
+ onStartTyping: () => {
213
204
  channel === null || channel === void 0 ? void 0 : channel.startTyping();
214
205
  },
215
- onSendMessage: function (_a) {
216
- var _b;
217
- var message = _a.message,
218
- mentionTemplate = _a.mentionTemplate;
206
+ onSendMessage: _ref2 => {
207
+ var _channel$endTyping;
208
+ let {
209
+ message,
210
+ mentionTemplate
211
+ } = _ref2;
219
212
  sendMessage({
220
- message: message,
221
- quoteMessage: quoteMessage,
222
- mentionedUsers: mentionedUsers,
223
- mentionTemplate: mentionTemplate
213
+ message,
214
+ quoteMessage,
215
+ mentionedUsers,
216
+ mentionTemplate
224
217
  });
225
218
  setMentionNickname('');
226
219
  setMentionedUsers([]);
227
220
  setQuoteMessage(null);
228
- (_b = channel === null || channel === void 0 ? void 0 : channel.endTyping) === null || _b === void 0 ? void 0 : _b.call(channel);
221
+ channel === null || channel === void 0 ? void 0 : (_channel$endTyping = channel.endTyping) === null || _channel$endTyping === void 0 ? void 0 : _channel$endTyping.call(channel);
229
222
  },
230
- onFileUpload: function (file) {
223
+ onFileUpload: file => {
231
224
  sendFileMessage(file, quoteMessage);
232
225
  setQuoteMessage(null);
233
226
  },
234
- onUserMentioned: function (user) {
227
+ onUserMentioned: user => {
235
228
  if ((selectedUser === null || selectedUser === void 0 ? void 0 : selectedUser.userId) === (user === null || user === void 0 ? void 0 : user.userId)) {
236
229
  setSelectedUser(null);
237
230
  setMentionNickname('');
238
231
  }
239
232
  },
240
- onMentionStringChange: function (mentionText) {
233
+ onMentionStringChange: mentionText => {
241
234
  setMentionNickname(mentionText);
242
235
  },
243
- onMentionedUserIdsUpdated: function (userIds) {
236
+ onMentionedUserIdsUpdated: userIds => {
244
237
  setMentionedUserIds(userIds);
245
238
  },
246
- onKeyDown: function (e) {
239
+ onKeyDown: e => {
247
240
  if (displaySuggestedMentionList && (mentionSuggestedUsers === null || mentionSuggestedUsers === void 0 ? void 0 : mentionSuggestedUsers.length) > 0 && (e.key === _const.MessageInputKeys.Enter && ableMention || e.key === _const.MessageInputKeys.ArrowUp || e.key === _const.MessageInputKeys.ArrowDown)) {
248
241
  setMessageInputEvent(e);
249
242
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"MessageInput.js","sources":["../../../../src/smart-components/Channel/components/MessageInput/index.tsx"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\n\nimport './message-input.scss';\nimport * as utils from '../../context/utils';\n\nimport MessageInput from '../../../../ui/MessageInput';\nimport QuoteMessageInput from '../../../../ui/QuoteMessageInput';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport VoiceMessageInputWrapper from './VoiceMessageInputWrapper';\n\nexport type MessageInputWrapperProps = {\n value?: string;\n disabled?: boolean;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n};\n\nconst MessageInputWrapper = (\n props: MessageInputWrapperProps,\n ref: React.MutableRefObject<any>,\n): JSX.Element => {\n const {\n value,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n } = props;\n const propDisabled = props.disabled;\n const {\n currentGroupChannel,\n initialized,\n quoteMessage,\n sendMessage,\n sendFileMessage,\n sendVoiceMessage,\n setQuoteMessage,\n messageInputRef,\n renderUserMentionItem,\n } = useChannelContext();\n const globalStore = useSendbirdStateContext();\n const channel = currentGroupChannel;\n\n const {\n isOnline,\n isMentionEnabled,\n userMention,\n isVoiceMessageEnabled,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || 10;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || 15;\n\n const { stringSet } = useContext(LocalizationContext);\n const [mentionNickname, setMentionNickname] = useState('');\n // todo: set type\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [showVoiceMessageInput, setShowVoiceMessageInput] = useState(false);\n const disabled = propDisabled\n || !initialized\n || utils.isDisabledBecauseFrozen(channel)\n || utils.isDisabledBecauseMuted(channel)\n || !isOnline;\n const isOperator = utils.isOperator(channel);\n const isBroadcast = channel?.isBroadcast;\n\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !utils.isDisabledBecauseFrozen(channel)\n && !utils.isDisabledBecauseMuted(channel);\n\n // Reset when channel changes\n useEffect(() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setSelectedUser(null);\n setMentionSuggestedUsers([]);\n setAbleMention(true);\n setMessageInputEvent(null);\n setShowVoiceMessageInput(false);\n }, [channel?.url]);\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n // broadcast channel + not operator\n if (isBroadcast && !isOperator) {\n return null;\n }\n // other conditions\n return (\n <div className={`sendbird-message-input-wrapper${showVoiceMessageInput ? '--voice-message' : ''}`}>\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 {quoteMessage && (\n <div className=\"sendbird-message-input-wrapper__quote-message-input\">\n <QuoteMessageInput\n replyingMessage={quoteMessage}\n onClose={() => setQuoteMessage(null)}\n />\n </div>\n )}\n {\n showVoiceMessageInput\n ? (\n <VoiceMessageInputWrapper\n channel={channel}\n onSubmitClick={(recordedFile, duration) => {\n sendVoiceMessage(recordedFile, duration, quoteMessage);\n setQuoteMessage(null);\n setShowVoiceMessageInput(false);\n }}\n onCancelClick={() => {\n setShowVoiceMessageInput(false);\n }}\n />\n )\n : (\n <MessageInput\n className=\"sendbird-message-input-wrapper__message-input\"\n value={value}\n channelUrl={channel?.url}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n isVoiceMessageEnabled={isVoiceMessageEnabled}\n onVoiceMessageIconClick={() => {\n setShowVoiceMessageInput(true);\n }}\n setMentionedUsers={setMentionedUsers}\n channel={channel}\n placeholder={\n (quoteMessage && stringSet.MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER)\n || (utils.isDisabledBecauseFrozen(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED)\n || (utils.isDisabledBecauseMuted(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__MUTED)\n }\n ref={ref || messageInputRef}\n disabled={disabled}\n renderFileUploadIcon={renderFileUploadIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n onStartTyping={() => {\n channel?.startTyping();\n }}\n onSendMessage={({ message, mentionTemplate }) => {\n sendMessage({\n message,\n quoteMessage,\n mentionedUsers,\n mentionTemplate,\n });\n setMentionNickname('');\n setMentionedUsers([]);\n setQuoteMessage(null);\n channel?.endTyping?.();\n }}\n onFileUpload={(file) => {\n sendFileMessage(file, quoteMessage);\n setQuoteMessage(null);\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 </div>\n );\n};\n\nexport default React.forwardRef(MessageInputWrapper);\n"],"names":["MessageInputWrapper","props","ref","value","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","propDisabled","disabled","_a","useChannelContext","currentGroupChannel","initialized","quoteMessage","sendMessage","sendFileMessage","sendVoiceMessage","setQuoteMessage","messageInputRef","renderUserMentionItem","globalStore","useSendbirdStateContext","channel","_b","config","isOnline","isMentionEnabled","userMention","isVoiceMessageEnabled","maxUserMentionCount","maxMentionCount","maxUserSuggestionCount","maxSuggestionCount","stringSet","useContext","LocalizationContext","_c","useState","mentionNickname","setMentionNickname","_d","mentionedUsers","setMentionedUsers","_e","mentionedUserIds","setMentionedUserIds","_f","selectedUser","setSelectedUser","_g","mentionSuggestedUsers","setMentionSuggestedUsers","_h","ableMention","setAbleMention","_j","messageInputEvent","setMessageInputEvent","_k","showVoiceMessageInput","setShowVoiceMessageInput","utils","isOperator","isBroadcast","displaySuggestedMentionList","length","useEffect","url","filter","userId","i","indexOf","splice","React","createElement","className","concat","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","user","__spreadArray","onFocusItemChange","onFetchUsers","users","ableAddMention","QuoteMessageInput","replyingMessage","onClose","VoiceMessageInputWrapper","onSubmitClick","recordedFile","duration","onCancelClick","MessageInput","channelUrl","mentionSelectedUser","onVoiceMessageIconClick","placeholder","MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","MESSAGE_INPUT__PLACE_HOLDER__MUTED","onStartTyping","startTyping","onSendMessage","message","mentionTemplate","endTyping","onFileUpload","file","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","forwardRef"],"mappings":"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"}
1
+ {"version":3,"file":"MessageInput.js","sources":["../../../../src/modules/Channel/components/MessageInput/index.tsx"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\n\nimport './message-input.scss';\nimport * as utils from '../../context/utils';\n\nimport MessageInput from '../../../../ui/MessageInput';\nimport QuoteMessageInput from '../../../../ui/QuoteMessageInput';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../SuggestedMentionList';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport VoiceMessageInputWrapper from './VoiceMessageInputWrapper';\n\nexport type MessageInputWrapperProps = {\n value?: string;\n disabled?: boolean;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n};\n\nconst MessageInputWrapper = (\n props: MessageInputWrapperProps,\n ref: React.MutableRefObject<any>,\n): JSX.Element => {\n const {\n value,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n } = props;\n const propDisabled = props.disabled;\n const {\n currentGroupChannel,\n initialized,\n quoteMessage,\n sendMessage,\n sendFileMessage,\n sendVoiceMessage,\n setQuoteMessage,\n messageInputRef,\n renderUserMentionItem,\n } = useChannelContext();\n const globalStore = useSendbirdStateContext();\n const channel = currentGroupChannel;\n\n const {\n isOnline,\n isMentionEnabled,\n userMention,\n isVoiceMessageEnabled,\n } = globalStore?.config;\n const maxUserMentionCount = userMention?.maxMentionCount || 10;\n const maxUserSuggestionCount = userMention?.maxSuggestionCount || 15;\n\n const { stringSet } = useContext(LocalizationContext);\n const [mentionNickname, setMentionNickname] = useState('');\n // todo: set type\n const [mentionedUsers, setMentionedUsers] = useState([]);\n const [mentionedUserIds, setMentionedUserIds] = useState([]);\n const [selectedUser, setSelectedUser] = useState(null);\n const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);\n const [ableMention, setAbleMention] = useState(true);\n const [messageInputEvent, setMessageInputEvent] = useState(null);\n const [showVoiceMessageInput, setShowVoiceMessageInput] = useState(false);\n const disabled = propDisabled\n || !initialized\n || utils.isDisabledBecauseFrozen(channel)\n || utils.isDisabledBecauseMuted(channel)\n || !isOnline;\n const isOperator = utils.isOperator(channel);\n const isBroadcast = channel?.isBroadcast;\n\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !utils.isDisabledBecauseFrozen(channel)\n && !utils.isDisabledBecauseMuted(channel);\n\n // Reset when channel changes\n useEffect(() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setSelectedUser(null);\n setMentionSuggestedUsers([]);\n setAbleMention(true);\n setMessageInputEvent(null);\n setShowVoiceMessageInput(false);\n }, [channel?.url]);\n\n useEffect(() => {\n if (mentionedUsers?.length >= maxUserMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\n\n useEffect(() => {\n setMentionedUsers(mentionedUsers.filter(({ userId }) => {\n const i = mentionedUserIds.indexOf(userId);\n if (i < 0) {\n return false;\n } else {\n mentionedUserIds.splice(i, 1);\n return true;\n }\n }));\n }, [mentionedUserIds]);\n\n // broadcast channel + not operator\n if (isBroadcast && !isOperator) {\n return null;\n }\n // other conditions\n return (\n <div className={`sendbird-message-input-wrapper${showVoiceMessageInput ? '--voice-message' : ''}`}>\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 {quoteMessage && (\n <div className=\"sendbird-message-input-wrapper__quote-message-input\">\n <QuoteMessageInput\n replyingMessage={quoteMessage}\n onClose={() => setQuoteMessage(null)}\n />\n </div>\n )}\n {\n showVoiceMessageInput\n ? (\n <VoiceMessageInputWrapper\n channel={channel}\n onSubmitClick={(recordedFile, duration) => {\n sendVoiceMessage(recordedFile, duration, quoteMessage);\n setQuoteMessage(null);\n setShowVoiceMessageInput(false);\n }}\n onCancelClick={() => {\n setShowVoiceMessageInput(false);\n }}\n />\n )\n : (\n <MessageInput\n className=\"sendbird-message-input-wrapper__message-input\"\n value={value}\n channelUrl={channel?.url}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n isVoiceMessageEnabled={isVoiceMessageEnabled}\n onVoiceMessageIconClick={() => {\n setShowVoiceMessageInput(true);\n }}\n setMentionedUsers={setMentionedUsers}\n channel={channel}\n placeholder={\n (quoteMessage && stringSet.MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER)\n || (utils.isDisabledBecauseFrozen(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED)\n || (utils.isDisabledBecauseMuted(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__MUTED)\n }\n ref={ref || messageInputRef}\n disabled={disabled}\n renderFileUploadIcon={renderFileUploadIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n onStartTyping={() => {\n channel?.startTyping();\n }}\n onSendMessage={({ message, mentionTemplate }) => {\n sendMessage({\n message,\n quoteMessage,\n mentionedUsers,\n mentionTemplate,\n });\n setMentionNickname('');\n setMentionedUsers([]);\n setQuoteMessage(null);\n channel?.endTyping?.();\n }}\n onFileUpload={(file) => {\n sendFileMessage(file, quoteMessage);\n setQuoteMessage(null);\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 </div>\n );\n};\n\nexport default React.forwardRef(MessageInputWrapper);\n"],"names":["MessageInputWrapper","props","ref","value","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","propDisabled","disabled","currentGroupChannel","initialized","quoteMessage","sendMessage","sendFileMessage","sendVoiceMessage","setQuoteMessage","messageInputRef","renderUserMentionItem","useChannelContext","globalStore","useSendbirdStateContext","channel","isOnline","isMentionEnabled","userMention","isVoiceMessageEnabled","config","maxUserMentionCount","maxMentionCount","maxUserSuggestionCount","maxSuggestionCount","stringSet","useContext","LocalizationContext","mentionNickname","setMentionNickname","useState","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","ableMention","setAbleMention","messageInputEvent","setMessageInputEvent","showVoiceMessageInput","setShowVoiceMessageInput","utils","isOperator","isBroadcast","displaySuggestedMentionList","length","useEffect","url","filter","_ref","userId","i","indexOf","splice","React","createElement","className","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","user","onFocusItemChange","onFetchUsers","users","ableAddMention","QuoteMessageInput","replyingMessage","onClose","VoiceMessageInputWrapper","onSubmitClick","recordedFile","duration","onCancelClick","MessageInput","channelUrl","mentionSelectedUser","onVoiceMessageIconClick","placeholder","MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","MESSAGE_INPUT__PLACE_HOLDER__MUTED","onStartTyping","startTyping","onSendMessage","_ref2","_channel$endTyping","message","mentionTemplate","endTyping","call","onFileUpload","file","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","forwardRef"],"mappings":"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"}