@sendbird/uikit-react 3.6.7 → 3.6.8-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (626) hide show
  1. package/App.js +57 -49
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +63 -0
  4. package/Channel/components/ChannelHeader.js +20 -19
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +45 -41
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +16 -15
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +4 -4
  11. package/Channel/components/Message.js +38 -36
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +34 -32
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +41 -60
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +18 -17
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +18 -17
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +16 -15
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +4 -4
  24. package/Channel/context.js +13 -12
  25. package/Channel/context.js.map +1 -1
  26. package/Channel/utils/compareMessagesForGrouping.js +22 -0
  27. package/Channel/utils/compareMessagesForGrouping.js.map +1 -0
  28. package/Channel/utils/getMessagePartsInfo.js +38 -0
  29. package/Channel/utils/getMessagePartsInfo.js.map +1 -0
  30. package/Channel.js +45 -41
  31. package/Channel.js.map +1 -1
  32. package/ChannelList/components/AddChannel.js +15 -15
  33. package/ChannelList/components/ChannelListHeader.js +6 -6
  34. package/ChannelList/components/ChannelListUI.js +31 -30
  35. package/ChannelList/components/ChannelListUI.js.map +1 -1
  36. package/ChannelList/components/ChannelPreview.js +27 -26
  37. package/ChannelList/components/ChannelPreview.js.map +1 -1
  38. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  39. package/ChannelList/context.js +8 -8
  40. package/ChannelList.js +31 -30
  41. package/ChannelList.js.map +1 -1
  42. package/{ChannelListProvider-fc14f42d.js → ChannelListProvider-532ebe92.js} +11 -14
  43. package/ChannelListProvider-532ebe92.js.map +1 -0
  44. package/{ChannelProvider-78e85f32.js → ChannelProvider-903eb3bf.js} +31 -331
  45. package/ChannelProvider-903eb3bf.js.map +1 -0
  46. package/ChannelSettings/components/ChannelProfile.js +11 -11
  47. package/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  48. package/ChannelSettings/components/EditDetailsModal.js +11 -11
  49. package/ChannelSettings/components/LeaveChannel.js +11 -11
  50. package/ChannelSettings/components/ModerationPanel.js +14 -14
  51. package/ChannelSettings/components/UserListItem.js +10 -10
  52. package/ChannelSettings/components/UserPanel.js +13 -13
  53. package/ChannelSettings/context.js +3 -3
  54. package/ChannelSettings.js +17 -17
  55. package/CreateChannel/components/CreateChannelUI.js +13 -13
  56. package/CreateChannel/components/InviteUsers.js +13 -13
  57. package/CreateChannel/components/SelectChannelType.js +10 -10
  58. package/CreateChannel/context.js +4 -4
  59. package/CreateChannel.js +13 -13
  60. package/{CreateChannelProvider-fe23c38f.js → CreateChannelProvider-d02f3cf9.js} +1 -1
  61. package/{CreateChannelProvider-fe23c38f.js.map → CreateChannelProvider-d02f3cf9.js.map} +1 -1
  62. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  63. package/CreateOpenChannel/context.js +1 -1
  64. package/CreateOpenChannel.js +9 -9
  65. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  66. package/EditUserProfile.js +12 -12
  67. package/{LocalizationContext-5fe9b59d.js → LocalizationContext-3baf0e99.js} +3 -3
  68. package/{LocalizationContext-5fe9b59d.js.map → LocalizationContext-3baf0e99.js.map} +1 -1
  69. package/{MediaQueryContext-66b59195.js → MediaQueryContext-65dd6475.js} +1 -1
  70. package/{MediaQueryContext-66b59195.js.map → MediaQueryContext-65dd6475.js.map} +1 -1
  71. package/{MemberList-c03817ad.js → MemberList-fc5be7a2.js} +5 -5
  72. package/{MemberList-c03817ad.js.map → MemberList-fc5be7a2.js.map} +1 -1
  73. package/{useDirtyGetMentions-3f7692ab.js → Message/hooks/useDirtyGetMentions.js} +3 -2
  74. package/Message/hooks/useDirtyGetMentions.js.map +1 -0
  75. package/MessageSearch/components/MessageSearchUI.js +11 -11
  76. package/MessageSearch/context.js +1 -1
  77. package/MessageSearch/context.js.map +1 -1
  78. package/MessageSearch.js +11 -11
  79. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  80. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  81. package/OpenChannel/components/OpenChannelInput.js +20 -19
  82. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  83. package/OpenChannel/components/OpenChannelMessage.js +30 -38
  84. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  85. package/OpenChannel/components/OpenChannelMessageList.js +33 -32
  86. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  87. package/OpenChannel/components/OpenChannelUI.js +33 -32
  88. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  89. package/OpenChannel/context.js +8 -8
  90. package/OpenChannel.js +33 -32
  91. package/OpenChannel.js.map +1 -1
  92. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  93. package/OpenChannelList/components/OpenChannelPreview.js +3 -3
  94. package/OpenChannelList/context.js +3 -3
  95. package/OpenChannelList.js +13 -13
  96. package/{OpenChannelListProvider-5d21932a.js → OpenChannelListProvider-9dff6221.js} +3 -3
  97. package/{OpenChannelListProvider-5d21932a.js.map → OpenChannelListProvider-9dff6221.js.map} +1 -1
  98. package/{OpenChannelProvider-a6f4f92a.js → OpenChannelProvider-e3940c50.js} +7 -7
  99. package/OpenChannelProvider-e3940c50.js.map +1 -0
  100. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  101. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  102. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  103. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  104. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  105. package/OpenChannelSettings/context.js +3 -3
  106. package/OpenChannelSettings.js +17 -17
  107. package/{RemoveMessageModal-0d438e31.js → RemoveMessageModal-5c8b1e53.js} +3 -3
  108. package/RemoveMessageModal-5c8b1e53.js.map +1 -0
  109. package/SendbirdProvider.js +24 -21
  110. package/SendbirdProvider.js.map +1 -1
  111. package/Thread/components/ParentMessageInfo.js +36 -34
  112. package/Thread/components/ParentMessageInfo.js.map +1 -1
  113. package/Thread/components/ParentMessageInfoItem.js +21 -21
  114. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  115. package/Thread/components/ThreadHeader.js +6 -6
  116. package/Thread/components/ThreadList.js +39 -37
  117. package/Thread/components/ThreadList.js.map +1 -1
  118. package/Thread/components/ThreadListItem.js +40 -38
  119. package/Thread/components/ThreadListItem.js.map +1 -1
  120. package/Thread/components/ThreadMessageInput.js +32 -30
  121. package/Thread/components/ThreadMessageInput.js.map +1 -1
  122. package/Thread/components/ThreadUI.js +43 -41
  123. package/Thread/components/ThreadUI.js.map +1 -1
  124. package/Thread/context.js +8 -8
  125. package/Thread.js +43 -41
  126. package/Thread.js.map +1 -1
  127. package/{ThreadProvider-2a4356a2.js → ThreadProvider-0cfe2336.js} +12 -11
  128. package/ThreadProvider-0cfe2336.js.map +1 -0
  129. package/{UserProfileContext-8b8f3e3a.js → UserProfileContext-3dd7aade.js} +1 -1
  130. package/{UserProfileContext-8b8f3e3a.js.map → UserProfileContext-3dd7aade.js.map} +1 -1
  131. package/{VoiceMessageInputWrapper-b8742ea1.js → VoiceMessageInputWrapper-a3904e40.js} +7 -7
  132. package/{VoiceMessageInputWrapper-b8742ea1.js.map → VoiceMessageInputWrapper-a3904e40.js.map} +1 -1
  133. package/VoicePlayer/context.js +3 -3
  134. package/VoicePlayer/useVoicePlayer.js +9 -9
  135. package/VoiceRecorder/context.js +9 -9
  136. package/VoiceRecorder/useVoiceRecorder.js +8 -8
  137. package/{WebAudioUtils-63418113.js → WebAudioUtils-44e85117.js} +2 -2
  138. package/{WebAudioUtils-63418113.js.map → WebAudioUtils-44e85117.js.map} +1 -1
  139. package/{_rollupPluginBabelHelpers-90ff7fc4.js → _rollupPluginBabelHelpers-89176539.js} +1 -1
  140. package/_rollupPluginBabelHelpers-89176539.js.map +1 -0
  141. package/{actionTypes-66bf934b.js → actionTypes-f95f30b4.js} +1 -1
  142. package/{actionTypes-66bf934b.js.map → actionTypes-f95f30b4.js.map} +1 -1
  143. package/cjs/App.js +57 -49
  144. package/cjs/App.js.map +1 -1
  145. package/cjs/Channel/components/ChannelHeader.js +20 -19
  146. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  147. package/cjs/Channel/components/ChannelUI.js +45 -41
  148. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  149. package/cjs/Channel/components/FileViewer.js +16 -15
  150. package/cjs/Channel/components/FileViewer.js.map +1 -1
  151. package/cjs/Channel/components/FrozenNotification.js +4 -4
  152. package/cjs/Channel/components/Message.js +41 -39
  153. package/cjs/Channel/components/Message.js.map +1 -1
  154. package/cjs/Channel/components/MessageInput.js +39 -37
  155. package/cjs/Channel/components/MessageInput.js.map +1 -1
  156. package/cjs/Channel/components/MessageList.js +47 -66
  157. package/cjs/Channel/components/MessageList.js.map +1 -1
  158. package/cjs/Channel/components/RemoveMessageModal.js +18 -17
  159. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  160. package/cjs/Channel/components/SuggestedMentionList.js +18 -17
  161. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  162. package/cjs/Channel/components/TypingIndicator.js +16 -15
  163. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  164. package/cjs/Channel/components/UnreadCount.js +4 -4
  165. package/cjs/Channel/context.js +13 -12
  166. package/cjs/Channel/context.js.map +1 -1
  167. package/cjs/Channel/utils/compareMessagesForGrouping.js +26 -0
  168. package/cjs/Channel/utils/compareMessagesForGrouping.js.map +1 -0
  169. package/cjs/Channel/utils/getMessagePartsInfo.js +42 -0
  170. package/cjs/Channel/utils/getMessagePartsInfo.js.map +1 -0
  171. package/cjs/Channel.js +45 -41
  172. package/cjs/Channel.js.map +1 -1
  173. package/cjs/ChannelList/components/AddChannel.js +15 -15
  174. package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
  175. package/cjs/ChannelList/components/ChannelListUI.js +31 -30
  176. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  177. package/cjs/ChannelList/components/ChannelPreview.js +27 -26
  178. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  179. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  180. package/cjs/ChannelList/context.js +8 -8
  181. package/cjs/ChannelList.js +31 -30
  182. package/cjs/ChannelList.js.map +1 -1
  183. package/cjs/{ChannelListProvider-c1f3cf4a.js → ChannelListProvider-80903b5c.js} +11 -14
  184. package/cjs/ChannelListProvider-80903b5c.js.map +1 -0
  185. package/cjs/{ChannelProvider-633edf61.js → ChannelProvider-c75c8c0d.js} +109 -414
  186. package/cjs/ChannelProvider-c75c8c0d.js.map +1 -0
  187. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  188. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  189. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  190. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  191. package/cjs/ChannelSettings/components/ModerationPanel.js +14 -14
  192. package/cjs/ChannelSettings/components/UserListItem.js +10 -10
  193. package/cjs/ChannelSettings/components/UserPanel.js +13 -13
  194. package/cjs/ChannelSettings/context.js +3 -3
  195. package/cjs/ChannelSettings.js +17 -17
  196. package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
  197. package/cjs/CreateChannel/components/InviteUsers.js +13 -13
  198. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  199. package/cjs/CreateChannel/context.js +4 -4
  200. package/cjs/CreateChannel.js +13 -13
  201. package/cjs/{CreateChannelProvider-32102712.js → CreateChannelProvider-0e78ab7b.js} +1 -1
  202. package/cjs/{CreateChannelProvider-32102712.js.map → CreateChannelProvider-0e78ab7b.js.map} +1 -1
  203. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  204. package/cjs/CreateOpenChannel/context.js +1 -1
  205. package/cjs/CreateOpenChannel.js +9 -9
  206. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  207. package/cjs/EditUserProfile.js +12 -12
  208. package/cjs/{LocalizationContext-a15ec4eb.js → LocalizationContext-fd85331f.js} +3 -3
  209. package/cjs/{LocalizationContext-a15ec4eb.js.map → LocalizationContext-fd85331f.js.map} +1 -1
  210. package/cjs/{MediaQueryContext-80d10d7b.js → MediaQueryContext-fde456fd.js} +1 -1
  211. package/cjs/{MediaQueryContext-80d10d7b.js.map → MediaQueryContext-fde456fd.js.map} +1 -1
  212. package/cjs/{MemberList-5303bbbb.js → MemberList-16ebc116.js} +5 -5
  213. package/cjs/{MemberList-5303bbbb.js.map → MemberList-16ebc116.js.map} +1 -1
  214. package/cjs/{useDirtyGetMentions-a37639f1.js → Message/hooks/useDirtyGetMentions.js} +4 -1
  215. package/cjs/Message/hooks/useDirtyGetMentions.js.map +1 -0
  216. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  217. package/cjs/MessageSearch/context.js +1 -1
  218. package/cjs/MessageSearch/context.js.map +1 -1
  219. package/cjs/MessageSearch.js +11 -11
  220. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  221. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  222. package/cjs/OpenChannel/components/OpenChannelInput.js +20 -19
  223. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  224. package/cjs/OpenChannel/components/OpenChannelMessage.js +32 -40
  225. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  226. package/cjs/OpenChannel/components/OpenChannelMessageList.js +33 -32
  227. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  228. package/cjs/OpenChannel/components/OpenChannelUI.js +33 -32
  229. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  230. package/cjs/OpenChannel/context.js +8 -8
  231. package/cjs/OpenChannel.js +33 -32
  232. package/cjs/OpenChannel.js.map +1 -1
  233. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  234. package/cjs/OpenChannelList/components/OpenChannelPreview.js +3 -3
  235. package/cjs/OpenChannelList/context.js +3 -3
  236. package/cjs/OpenChannelList.js +13 -13
  237. package/cjs/{OpenChannelListProvider-49874b88.js → OpenChannelListProvider-8665615a.js} +3 -3
  238. package/cjs/{OpenChannelListProvider-49874b88.js.map → OpenChannelListProvider-8665615a.js.map} +1 -1
  239. package/cjs/{OpenChannelProvider-c2b3dc2c.js → OpenChannelProvider-5e558c1a.js} +7 -7
  240. package/cjs/OpenChannelProvider-5e558c1a.js.map +1 -0
  241. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  242. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  243. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  244. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  245. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  246. package/cjs/OpenChannelSettings/context.js +3 -3
  247. package/cjs/OpenChannelSettings.js +17 -17
  248. package/cjs/{RemoveMessageModal-271f1251.js → RemoveMessageModal-6307711c.js} +3 -3
  249. package/cjs/RemoveMessageModal-6307711c.js.map +1 -0
  250. package/cjs/SendbirdProvider.js +24 -21
  251. package/cjs/SendbirdProvider.js.map +1 -1
  252. package/cjs/Thread/components/ParentMessageInfo.js +38 -36
  253. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  254. package/cjs/Thread/components/ParentMessageInfoItem.js +21 -21
  255. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  256. package/cjs/Thread/components/ThreadHeader.js +6 -6
  257. package/cjs/Thread/components/ThreadList.js +39 -37
  258. package/cjs/Thread/components/ThreadList.js.map +1 -1
  259. package/cjs/Thread/components/ThreadListItem.js +42 -40
  260. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  261. package/cjs/Thread/components/ThreadMessageInput.js +34 -32
  262. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  263. package/cjs/Thread/components/ThreadUI.js +43 -41
  264. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  265. package/cjs/Thread/context.js +8 -8
  266. package/cjs/Thread.js +43 -41
  267. package/cjs/Thread.js.map +1 -1
  268. package/cjs/{ThreadProvider-8d2ce923.js → ThreadProvider-aeb062df.js} +12 -11
  269. package/cjs/ThreadProvider-aeb062df.js.map +1 -0
  270. package/cjs/{UserProfileContext-f8f1cee7.js → UserProfileContext-e658337c.js} +1 -1
  271. package/cjs/{UserProfileContext-f8f1cee7.js.map → UserProfileContext-e658337c.js.map} +1 -1
  272. package/cjs/{VoiceMessageInputWrapper-e8d7b9ba.js → VoiceMessageInputWrapper-ee24a942.js} +9 -9
  273. package/cjs/{VoiceMessageInputWrapper-e8d7b9ba.js.map → VoiceMessageInputWrapper-ee24a942.js.map} +1 -1
  274. package/cjs/VoicePlayer/context.js +3 -3
  275. package/cjs/VoicePlayer/useVoicePlayer.js +9 -9
  276. package/cjs/VoiceRecorder/context.js +9 -9
  277. package/cjs/VoiceRecorder/useVoiceRecorder.js +8 -8
  278. package/cjs/{WebAudioUtils-88dbfaed.js → WebAudioUtils-238bd8c4.js} +2 -2
  279. package/cjs/{WebAudioUtils-88dbfaed.js.map → WebAudioUtils-238bd8c4.js.map} +1 -1
  280. package/cjs/{_rollupPluginBabelHelpers-0d9d52a5.js → _rollupPluginBabelHelpers-6da3edf9.js} +1 -1
  281. package/cjs/_rollupPluginBabelHelpers-6da3edf9.js.map +1 -0
  282. package/cjs/{actionTypes-974dfe33.js → actionTypes-b0cfb8a7.js} +1 -1
  283. package/cjs/{actionTypes-974dfe33.js.map → actionTypes-b0cfb8a7.js.map} +1 -1
  284. package/cjs/{color-1e9cc481.js → color-7e8f0ca5.js} +1 -1
  285. package/cjs/{color-1e9cc481.js.map → color-7e8f0ca5.js.map} +1 -1
  286. package/cjs/{compareIds-0344920c.js → compareIds-a5214ac1.js} +1 -1
  287. package/cjs/{compareIds-0344920c.js.map → compareIds-a5214ac1.js.map} +1 -1
  288. package/cjs/{const-0d4d91cd.js → const-703dd567.js} +1 -1
  289. package/cjs/{const-0d4d91cd.js.map → const-703dd567.js.map} +1 -1
  290. package/cjs/{const-182fe978.js → const-7ab4dbea.js} +1 -1
  291. package/cjs/{const-182fe978.js.map → const-7ab4dbea.js.map} +1 -1
  292. package/cjs/{consts-0c9a38ef.js → consts-0337201b.js} +5 -1
  293. package/cjs/{consts-0c9a38ef.js.map → consts-0337201b.js.map} +1 -1
  294. package/cjs/{consts-10e5b075.js → consts-39e2e498.js} +1 -1
  295. package/cjs/{consts-10e5b075.js.map → consts-39e2e498.js.map} +1 -1
  296. package/cjs/{consts-5bdc2c7f.js → consts-74f92105.js} +1 -1
  297. package/cjs/{consts-5bdc2c7f.js.map → consts-74f92105.js.map} +1 -1
  298. package/cjs/{consts-c336bb61.js → consts-acdad2b4.js} +1 -1
  299. package/cjs/{consts-c336bb61.js.map → consts-acdad2b4.js.map} +1 -1
  300. package/cjs/{context-0276d21e.js → context-90576ca6.js} +2 -2
  301. package/cjs/{context-0276d21e.js.map → context-90576ca6.js.map} +1 -1
  302. package/cjs/dist/index.css +121 -94
  303. package/cjs/dist/index.css.map +1 -1
  304. package/cjs/{index-17a6519d.js → index-011a6124.js} +1 -1
  305. package/cjs/{index-17a6519d.js.map → index-011a6124.js.map} +1 -1
  306. package/cjs/index-05ea6eac.js +230 -0
  307. package/cjs/index-05ea6eac.js.map +1 -0
  308. package/cjs/{index-49fe0efb.js → index-0aec5632.js} +4 -4
  309. package/cjs/{index-49fe0efb.js.map → index-0aec5632.js.map} +1 -1
  310. package/cjs/{index-e46cc828.js → index-5699329f.js} +6 -6
  311. package/cjs/{index-e46cc828.js.map → index-5699329f.js.map} +1 -1
  312. package/cjs/{index-1325e266.js → index-66369e8b.js} +3 -3
  313. package/cjs/{index-1325e266.js.map → index-66369e8b.js.map} +1 -1
  314. package/cjs/{index-092b22dd.js → index-76acbd2d.js} +2 -2
  315. package/cjs/{index-092b22dd.js.map → index-76acbd2d.js.map} +1 -1
  316. package/cjs/{index-b428366f.js → index-7d3c8e0c.js} +2 -2
  317. package/cjs/index-7d3c8e0c.js.map +1 -0
  318. package/cjs/{index-6cb3365f.js → index-8522d0c2.js} +2 -2
  319. package/cjs/{index-6cb3365f.js.map → index-8522d0c2.js.map} +1 -1
  320. package/cjs/{index-cebd1362.js → index-9470d71b.js} +4 -4
  321. package/cjs/{index-cebd1362.js.map → index-9470d71b.js.map} +1 -1
  322. package/cjs/{index-08c5777e.js → index-9c4b8f39.js} +15 -8
  323. package/cjs/index-9c4b8f39.js.map +1 -0
  324. package/cjs/{index-dbccd7fb.js → index-ad47c0e4.js} +3 -3
  325. package/cjs/{index-dbccd7fb.js.map → index-ad47c0e4.js.map} +1 -1
  326. package/cjs/{index-87e11d7e.js → index-b04632ba.js} +5 -5
  327. package/cjs/{index-87e11d7e.js.map → index-b04632ba.js.map} +1 -1
  328. package/cjs/{index-2cb13008.js → index-bf35893c.js} +2 -2
  329. package/cjs/{index-2cb13008.js.map → index-bf35893c.js.map} +1 -1
  330. package/cjs/{index-5a651f3c.js → index-c63d7e90.js} +2 -2
  331. package/cjs/{index-5a651f3c.js.map → index-c63d7e90.js.map} +1 -1
  332. package/cjs/{index-54228aa8.js → index-dbfce4b2.js} +4 -4
  333. package/cjs/{index-54228aa8.js.map → index-dbfce4b2.js.map} +1 -1
  334. package/cjs/index-e18eb9ba.js +298 -0
  335. package/cjs/index-e18eb9ba.js.map +1 -0
  336. package/cjs/{index-9c8e297d.js → index-e99f0986.js} +3 -3
  337. package/cjs/{index-9c8e297d.js.map → index-e99f0986.js.map} +1 -1
  338. package/cjs/{index-c2454b7e.js → index-eac4199a.js} +1 -1
  339. package/cjs/{index-c2454b7e.js.map → index-eac4199a.js.map} +1 -1
  340. package/cjs/{index-ed1ee70b.js → index-f9665a27.js} +21 -14
  341. package/cjs/index-f9665a27.js.map +1 -0
  342. package/cjs/index.js +57 -53
  343. package/cjs/index.js.map +1 -1
  344. package/cjs/{index.module-8026e7d3.js → index.module-0ba29e4f.js} +1 -1
  345. package/cjs/{index.module-8026e7d3.js.map → index.module-0ba29e4f.js.map} +1 -1
  346. package/cjs/package.json +2 -2
  347. package/cjs/{resolvedReplyType-8137e072.js → resolvedReplyType-9f17b17a.js} +1 -1
  348. package/cjs/{resolvedReplyType-8137e072.js.map → resolvedReplyType-9f17b17a.js.map} +1 -1
  349. package/cjs/sendbirdSelectors.js +3 -4
  350. package/cjs/sendbirdSelectors.js.map +1 -1
  351. package/cjs/{stringSet-769f181d.js → stringSet-dfe78bcf.js} +1 -1
  352. package/cjs/{stringSet-769f181d.js.map → stringSet-dfe78bcf.js.map} +1 -1
  353. package/cjs/{tokenize-586ed01a.js → tokenize-8279c435.js} +2 -2
  354. package/cjs/{tokenize-586ed01a.js.map → tokenize-8279c435.js.map} +1 -1
  355. package/cjs/{topics-99121946.js → topics-ba2551c1.js} +1 -1
  356. package/cjs/{topics-99121946.js.map → topics-ba2551c1.js.map} +1 -1
  357. package/cjs/{types-812b3bfd.js → types-c4bc01b7.js} +1 -1
  358. package/cjs/types-c4bc01b7.js.map +1 -0
  359. package/cjs/ui/Accordion.js +2 -2
  360. package/cjs/ui/AccordionGroup.js +2 -2
  361. package/cjs/ui/AdminMessage.js +2 -2
  362. package/cjs/ui/Avatar.js +1 -1
  363. package/cjs/ui/Badge.js +4 -4
  364. package/cjs/ui/BottomSheet.js +1 -1
  365. package/cjs/ui/Button.js +2 -2
  366. package/cjs/ui/ChannelAvatar.js +2 -2
  367. package/cjs/ui/ConnectionStatus.js +4 -4
  368. package/cjs/ui/ContextMenu.js +5 -5
  369. package/cjs/ui/DateSeparator.js +3 -3
  370. package/cjs/ui/EmojiReactions.js +13 -13
  371. package/cjs/ui/EmojiReactions.js.map +1 -1
  372. package/cjs/ui/FileMessageItemBody.js +6 -6
  373. package/cjs/ui/FileViewer.js +17 -126
  374. package/cjs/ui/FileViewer.js.map +1 -1
  375. package/cjs/ui/Icon.js +178 -159
  376. package/cjs/ui/Icon.js.map +1 -1
  377. package/cjs/ui/IconButton.js +1 -1
  378. package/cjs/ui/Input.js +2 -2
  379. package/cjs/ui/Label.js +2 -2
  380. package/cjs/ui/LinkLabel.js +2 -2
  381. package/cjs/ui/MentionLabel.js +10 -10
  382. package/cjs/ui/MentionUserLabel.js +1 -1
  383. package/cjs/ui/MessageContent.js +28 -28
  384. package/cjs/ui/MessageContent.js.map +1 -1
  385. package/cjs/ui/MessageInput/hooks/usePaste.js +16 -0
  386. package/cjs/ui/MessageInput/hooks/usePaste.js.map +1 -0
  387. package/cjs/ui/MessageInput.js +21 -233
  388. package/cjs/ui/MessageInput.js.map +1 -1
  389. package/cjs/ui/MessageItemMenu.js +8 -8
  390. package/cjs/ui/MessageItemMenu.js.map +1 -1
  391. package/cjs/ui/MessageItemReactionMenu.js +8 -8
  392. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  393. package/cjs/ui/MessageSearchFileItem.js +10 -10
  394. package/cjs/ui/MessageSearchItem.js +8 -8
  395. package/cjs/ui/MessageStatus.js +10 -10
  396. package/cjs/ui/Modal.js +7 -7
  397. package/cjs/ui/OGMessageItemBody.js +14 -14
  398. package/cjs/ui/OpenChannelAdminMessage.js +2 -2
  399. package/cjs/ui/OpenChannelAvatar.js +5 -5
  400. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  401. package/cjs/ui/OpenchannelFileMessage.js +15 -15
  402. package/cjs/ui/OpenchannelOGMessage.js +18 -18
  403. package/cjs/ui/OpenchannelThumbnailMessage.js +14 -14
  404. package/cjs/ui/OpenchannelUserMessage.js +15 -15
  405. package/cjs/ui/PlaceHolder.js +5 -5
  406. package/cjs/ui/PlaybackTime.js +2 -2
  407. package/cjs/ui/QuoteMessage.js +6 -6
  408. package/cjs/ui/QuoteMessage.js.map +1 -1
  409. package/cjs/ui/QuoteMessageInput.js +6 -6
  410. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  411. package/cjs/ui/ReactionBadge.js +2 -2
  412. package/cjs/ui/ReactionButton.js +4 -4
  413. package/cjs/ui/SortByRow.js +1 -1
  414. package/cjs/ui/TextButton.js +1 -1
  415. package/cjs/ui/TextMessageItemBody.js +14 -14
  416. package/cjs/ui/ThreadReplies.js +5 -5
  417. package/cjs/ui/ThumbnailMessageItemBody.js +5 -5
  418. package/cjs/ui/Toggle.js +1 -1
  419. package/cjs/ui/Tooltip.js +2 -2
  420. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  421. package/cjs/ui/UserListItem.js +10 -10
  422. package/cjs/ui/UserProfile.js +9 -9
  423. package/cjs/ui/VoiceMessageItemBody.js +9 -9
  424. package/cjs/ui/VoiceMessgeInput.js +7 -7
  425. package/cjs/ui/Word.js +10 -10
  426. package/cjs/{useLongPress-a77054d5.js → useLongPress-092f3b5a.js} +3 -3
  427. package/cjs/{useLongPress-a77054d5.js.map → useLongPress-092f3b5a.js.map} +1 -1
  428. package/cjs/useSendbirdStateContext.js +1 -1
  429. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  430. package/cjs/utils/message/isVoiceMessage.js +2 -2
  431. package/cjs/utils-415ffe78.js +340 -0
  432. package/cjs/utils-415ffe78.js.map +1 -0
  433. package/cjs/{utils-c8ca7346.js → utils-6a3fe892.js} +1 -1
  434. package/cjs/{utils-c8ca7346.js.map → utils-6a3fe892.js.map} +1 -1
  435. package/cjs/{utils-3fda8de7.js → utils-a0fbcca3.js} +1 -1
  436. package/cjs/{utils-3fda8de7.js.map → utils-a0fbcca3.js.map} +1 -1
  437. package/cjs/{utils-d6b081f0.js → utils-b5edf0d4.js} +1 -1
  438. package/cjs/{utils-d6b081f0.js.map → utils-b5edf0d4.js.map} +1 -1
  439. package/cjs/{utils-18517a45.js → utils-f6fe7b35.js} +2 -2
  440. package/cjs/{utils-18517a45.js.map → utils-f6fe7b35.js.map} +1 -1
  441. package/cjs/{uuid-6c019e89.js → uuid-5f519bff.js} +1 -1
  442. package/cjs/{uuid-6c019e89.js.map → uuid-5f519bff.js.map} +1 -1
  443. package/cjs/withSendbird.js +1 -1
  444. package/{color-2315a258.js → color-577bf8be.js} +1 -1
  445. package/{color-2315a258.js.map → color-577bf8be.js.map} +1 -1
  446. package/{compareIds-2464aab2.js → compareIds-c0200d9c.js} +1 -1
  447. package/{compareIds-2464aab2.js.map → compareIds-c0200d9c.js.map} +1 -1
  448. package/{const-0cca8d38.js → const-83226e6e.js} +1 -1
  449. package/{const-0cca8d38.js.map → const-83226e6e.js.map} +1 -1
  450. package/{const-c6a266f4.js → const-bc3d72f7.js} +1 -1
  451. package/{const-c6a266f4.js.map → const-bc3d72f7.js.map} +1 -1
  452. package/{consts-b6f24cc7.js → consts-1be4a5f0.js} +5 -2
  453. package/{consts-b6f24cc7.js.map → consts-1be4a5f0.js.map} +1 -1
  454. package/{consts-32a2c4a7.js → consts-72edcc10.js} +1 -1
  455. package/{consts-32a2c4a7.js.map → consts-72edcc10.js.map} +1 -1
  456. package/{consts-991d3823.js → consts-b6ee09b8.js} +1 -1
  457. package/{consts-991d3823.js.map → consts-b6ee09b8.js.map} +1 -1
  458. package/{consts-3d956927.js → consts-f43406e2.js} +1 -1
  459. package/{consts-3d956927.js.map → consts-f43406e2.js.map} +1 -1
  460. package/{context-e46fff7b.js → context-79b7df74.js} +2 -2
  461. package/{context-e46fff7b.js.map → context-79b7df74.js.map} +1 -1
  462. package/dist/index.css +121 -94
  463. package/dist/index.css.map +1 -1
  464. package/{index-b9b184a4.js → index-0560155e.js} +1 -1
  465. package/{index-b9b184a4.js.map → index-0560155e.js.map} +1 -1
  466. package/{index-a39b9075.js → index-093de5d9.js} +3 -3
  467. package/{index-a39b9075.js.map → index-093de5d9.js.map} +1 -1
  468. package/{index-ebb8a7df.js → index-1d964676.js} +2 -2
  469. package/index-1d964676.js.map +1 -0
  470. package/{index-17b78bb0.js → index-1fca4ff9.js} +21 -14
  471. package/index-1fca4ff9.js.map +1 -0
  472. package/{index-07345a6e.js → index-20782e24.js} +5 -5
  473. package/{index-07345a6e.js.map → index-20782e24.js.map} +1 -1
  474. package/{index-56249831.js → index-2f85608a.js} +16 -9
  475. package/index-2f85608a.js.map +1 -0
  476. package/{index-f2e30f98.js → index-43c63728.js} +2 -2
  477. package/{index-f2e30f98.js.map → index-43c63728.js.map} +1 -1
  478. package/index-4681e8c0.js +221 -0
  479. package/index-4681e8c0.js.map +1 -0
  480. package/index-56541b27.js +289 -0
  481. package/index-56541b27.js.map +1 -0
  482. package/{index-c4273470.js → index-6685707d.js} +4 -4
  483. package/{index-c4273470.js.map → index-6685707d.js.map} +1 -1
  484. package/{index-879bcfab.js → index-801994fd.js} +3 -3
  485. package/{index-879bcfab.js.map → index-801994fd.js.map} +1 -1
  486. package/{index-63c995b8.js → index-8c47fd78.js} +3 -3
  487. package/{index-63c995b8.js.map → index-8c47fd78.js.map} +1 -1
  488. package/{index-bafedab0.js → index-a6c40339.js} +1 -1
  489. package/{index-bafedab0.js.map → index-a6c40339.js.map} +1 -1
  490. package/{index-499d9ef9.js → index-b5ac166c.js} +2 -2
  491. package/{index-499d9ef9.js.map → index-b5ac166c.js.map} +1 -1
  492. package/{index-7b3790d3.js → index-cf32585b.js} +4 -4
  493. package/{index-7b3790d3.js.map → index-cf32585b.js.map} +1 -1
  494. package/{index-13d9d766.js → index-d4eb3c4f.js} +2 -2
  495. package/{index-13d9d766.js.map → index-d4eb3c4f.js.map} +1 -1
  496. package/{index-2544bb0a.js → index-da667cf0.js} +4 -4
  497. package/{index-2544bb0a.js.map → index-da667cf0.js.map} +1 -1
  498. package/{index-fe2c7493.js → index-e7c6e440.js} +6 -6
  499. package/{index-fe2c7493.js.map → index-e7c6e440.js.map} +1 -1
  500. package/{index-335e7557.js → index-facad2c8.js} +2 -2
  501. package/{index-335e7557.js.map → index-facad2c8.js.map} +1 -1
  502. package/index.d.ts +278 -134
  503. package/index.js +57 -53
  504. package/index.js.map +1 -1
  505. package/{index.module-41885c5b.js → index.module-afd26a55.js} +1 -1
  506. package/{index.module-41885c5b.js.map → index.module-afd26a55.js.map} +1 -1
  507. package/package.json +3 -2
  508. package/{resolvedReplyType-d6e22593.js → resolvedReplyType-56c58fa0.js} +1 -1
  509. package/{resolvedReplyType-d6e22593.js.map → resolvedReplyType-56c58fa0.js.map} +1 -1
  510. package/sendbirdSelectors.js +3 -4
  511. package/sendbirdSelectors.js.map +1 -1
  512. package/{stringSet-47601d79.js → stringSet-3373f05f.js} +1 -1
  513. package/{stringSet-47601d79.js.map → stringSet-3373f05f.js.map} +1 -1
  514. package/{tokenize-c0cf9574.js → tokenize-18e18d41.js} +2 -2
  515. package/{tokenize-c0cf9574.js.map → tokenize-18e18d41.js.map} +1 -1
  516. package/{topics-e985567d.js → topics-b4f2a542.js} +1 -1
  517. package/{topics-e985567d.js.map → topics-b4f2a542.js.map} +1 -1
  518. package/{types-02054e6e.js → types-956382cc.js} +1 -1
  519. package/types-956382cc.js.map +1 -0
  520. package/ui/Accordion.js +2 -2
  521. package/ui/AccordionGroup.js +2 -2
  522. package/ui/AdminMessage.js +2 -2
  523. package/ui/Avatar.js +1 -1
  524. package/ui/Badge.js +4 -4
  525. package/ui/BottomSheet.js +1 -1
  526. package/ui/Button.js +2 -2
  527. package/ui/ChannelAvatar.js +2 -2
  528. package/ui/ConnectionStatus.js +4 -4
  529. package/ui/ContextMenu.js +5 -5
  530. package/ui/DateSeparator.js +3 -3
  531. package/ui/EmojiReactions.js +13 -13
  532. package/ui/EmojiReactions.js.map +1 -1
  533. package/ui/FileMessageItemBody.js +6 -6
  534. package/ui/FileViewer.js +15 -124
  535. package/ui/FileViewer.js.map +1 -1
  536. package/ui/Icon.js +178 -159
  537. package/ui/Icon.js.map +1 -1
  538. package/ui/IconButton.js +1 -1
  539. package/ui/Input.js +2 -2
  540. package/ui/Label.js +2 -2
  541. package/ui/LinkLabel.js +2 -2
  542. package/ui/MentionLabel.js +10 -10
  543. package/ui/MentionUserLabel.js +1 -1
  544. package/ui/MessageContent.js +28 -28
  545. package/ui/MessageContent.js.map +1 -1
  546. package/ui/MessageInput/hooks/usePaste.js +7 -0
  547. package/ui/MessageInput/hooks/usePaste.js.map +1 -0
  548. package/ui/MessageInput.js +16 -227
  549. package/ui/MessageInput.js.map +1 -1
  550. package/ui/MessageItemMenu.js +8 -8
  551. package/ui/MessageItemMenu.js.map +1 -1
  552. package/ui/MessageItemReactionMenu.js +8 -8
  553. package/ui/MessageItemReactionMenu.js.map +1 -1
  554. package/ui/MessageSearchFileItem.js +10 -10
  555. package/ui/MessageSearchItem.js +8 -8
  556. package/ui/MessageStatus.js +10 -10
  557. package/ui/Modal.js +7 -7
  558. package/ui/OGMessageItemBody.js +14 -14
  559. package/ui/OpenChannelAdminMessage.js +2 -2
  560. package/ui/OpenChannelAvatar.js +5 -5
  561. package/ui/OpenchannelConversationHeader.js +6 -6
  562. package/ui/OpenchannelFileMessage.js +15 -15
  563. package/ui/OpenchannelOGMessage.js +18 -18
  564. package/ui/OpenchannelThumbnailMessage.js +14 -14
  565. package/ui/OpenchannelUserMessage.js +15 -15
  566. package/ui/PlaceHolder.js +5 -5
  567. package/ui/PlaybackTime.js +2 -2
  568. package/ui/QuoteMessage.js +6 -6
  569. package/ui/QuoteMessage.js.map +1 -1
  570. package/ui/QuoteMessageInput.js +6 -6
  571. package/ui/QuoteMessageInput.js.map +1 -1
  572. package/ui/ReactionBadge.js +2 -2
  573. package/ui/ReactionButton.js +4 -4
  574. package/ui/SortByRow.js +1 -1
  575. package/ui/TextButton.js +1 -1
  576. package/ui/TextMessageItemBody.js +14 -14
  577. package/ui/ThreadReplies.js +5 -5
  578. package/ui/ThumbnailMessageItemBody.js +5 -5
  579. package/ui/Toggle.js +1 -1
  580. package/ui/Tooltip.js +2 -2
  581. package/ui/UnknownMessageItemBody.js +6 -6
  582. package/ui/UserListItem.js +10 -10
  583. package/ui/UserProfile.js +9 -9
  584. package/ui/VoiceMessageItemBody.js +9 -9
  585. package/ui/VoiceMessgeInput.js +7 -7
  586. package/ui/Word.js +10 -10
  587. package/{useLongPress-0a2a8916.js → useLongPress-5d7ec65f.js} +3 -3
  588. package/{useLongPress-0a2a8916.js.map → useLongPress-5d7ec65f.js.map} +1 -1
  589. package/useSendbirdStateContext.js +1 -1
  590. package/utils/message/getOutgoingMessageState.js.map +1 -1
  591. package/utils/message/isVoiceMessage.js +2 -2
  592. package/utils-07212ce9.js +301 -0
  593. package/utils-07212ce9.js.map +1 -0
  594. package/{utils-2f26afa0.js → utils-46e2f239.js} +1 -1
  595. package/{utils-2f26afa0.js.map → utils-46e2f239.js.map} +1 -1
  596. package/{utils-70ea4cc9.js → utils-8039d87d.js} +2 -2
  597. package/{utils-70ea4cc9.js.map → utils-8039d87d.js.map} +1 -1
  598. package/{utils-93924431.js → utils-93dbc8a2.js} +1 -1
  599. package/{utils-93924431.js.map → utils-93dbc8a2.js.map} +1 -1
  600. package/{utils-d15f13cf.js → utils-f0a55682.js} +1 -1
  601. package/{utils-d15f13cf.js.map → utils-f0a55682.js.map} +1 -1
  602. package/{uuid-ec51ac4d.js → uuid-bdadfb51.js} +1 -1
  603. package/{uuid-ec51ac4d.js.map → uuid-bdadfb51.js.map} +1 -1
  604. package/withSendbird.js +1 -1
  605. package/ChannelListProvider-fc14f42d.js.map +0 -1
  606. package/ChannelProvider-78e85f32.js.map +0 -1
  607. package/OpenChannelProvider-a6f4f92a.js.map +0 -1
  608. package/RemoveMessageModal-0d438e31.js.map +0 -1
  609. package/ThreadProvider-2a4356a2.js.map +0 -1
  610. package/_rollupPluginBabelHelpers-90ff7fc4.js.map +0 -1
  611. package/cjs/ChannelListProvider-c1f3cf4a.js.map +0 -1
  612. package/cjs/ChannelProvider-633edf61.js.map +0 -1
  613. package/cjs/OpenChannelProvider-c2b3dc2c.js.map +0 -1
  614. package/cjs/RemoveMessageModal-271f1251.js.map +0 -1
  615. package/cjs/ThreadProvider-8d2ce923.js.map +0 -1
  616. package/cjs/_rollupPluginBabelHelpers-0d9d52a5.js.map +0 -1
  617. package/cjs/index-08c5777e.js.map +0 -1
  618. package/cjs/index-b428366f.js.map +0 -1
  619. package/cjs/index-ed1ee70b.js.map +0 -1
  620. package/cjs/types-812b3bfd.js.map +0 -1
  621. package/cjs/useDirtyGetMentions-a37639f1.js.map +0 -1
  622. package/index-17b78bb0.js.map +0 -1
  623. package/index-56249831.js.map +0 -1
  624. package/index-ebb8a7df.js.map +0 -1
  625. package/types-02054e6e.js.map +0 -1
  626. package/useDirtyGetMentions-3f7692ab.js.map +0 -1
@@ -2,68 +2,70 @@
2
2
 
3
3
  var React = require('react');
4
4
  var Thread_components_ThreadListItem = require('./ThreadListItem.js');
5
- var Thread_context = require('../../ThreadProvider-8d2ce923.js');
5
+ var Thread_context = require('../../ThreadProvider-aeb062df.js');
6
6
  var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
7
7
  var dateFns = require('date-fns');
8
8
  var Message_context = require('../../Message/context.js');
9
- require('../../index-6cb3365f.js');
10
- require('../../index-c2454b7e.js');
11
- require('../../LocalizationContext-a15ec4eb.js');
12
- require('../../stringSet-769f181d.js');
9
+ require('../../index-8522d0c2.js');
10
+ require('../../index-eac4199a.js');
11
+ require('../../LocalizationContext-fd85331f.js');
12
+ require('../../stringSet-dfe78bcf.js');
13
13
  require('../../ui/DateSeparator.js');
14
- require('../../color-1e9cc481.js');
15
- require('../../index-2cb13008.js');
14
+ require('../../color-7e8f0ca5.js');
15
+ require('../../index-bf35893c.js');
16
16
  require('prop-types');
17
- require('../../RemoveMessageModal-271f1251.js');
17
+ require('../../RemoveMessageModal-6307711c.js');
18
18
  require('../../ui/Modal.js');
19
19
  require('react-dom');
20
- require('../../index-17a6519d.js');
20
+ require('../../index-011a6124.js');
21
21
  require('../../ui/Button.js');
22
22
  require('../../ui/Icon.js');
23
23
  require('../../ui/IconButton.js');
24
- require('../../_rollupPluginBabelHelpers-0d9d52a5.js');
25
- require('../../MediaQueryContext-80d10d7b.js');
26
- require('../../ui/FileViewer.js');
27
- require('../../index-08c5777e.js');
24
+ require('../../_rollupPluginBabelHelpers-6da3edf9.js');
25
+ require('../../MediaQueryContext-fde456fd.js');
26
+ require('../../index-e18eb9ba.js');
27
+ require('../../index-9c4b8f39.js');
28
28
  require('../../utils/message/getOutgoingMessageState.js');
29
+ require('../../utils-6a3fe892.js');
29
30
  require('../../ui/Avatar.js');
30
31
  require('../../ui/ImageRenderer.js');
31
- require('../../uuid-6c019e89.js');
32
+ require('../../uuid-5f519bff.js');
33
+ require('../../consts-0337201b.js');
32
34
  require('../../Channel/components/SuggestedMentionList.js');
33
- require('../../ChannelProvider-633edf61.js');
34
- require('../../UserProfileContext-f8f1cee7.js');
35
- require('../../const-0d4d91cd.js');
36
- require('../../topics-99121946.js');
37
- require('../../compareIds-0344920c.js');
35
+ require('../../ChannelProvider-c75c8c0d.js');
36
+ require('../../UserProfileContext-e658337c.js');
37
+ require('../../const-703dd567.js');
38
+ require('../../utils-415ffe78.js');
39
+ require('../../topics-ba2551c1.js');
40
+ require('../../compareIds-a5214ac1.js');
38
41
  require('@sendbird/chat/groupChannel');
39
42
  require('@sendbird/chat/message');
40
- require('../../consts-0c9a38ef.js');
41
- require('../../resolvedReplyType-8137e072.js');
42
- require('../../const-182fe978.js');
43
+ require('../../resolvedReplyType-9f17b17a.js');
44
+ require('../../const-7ab4dbea.js');
43
45
  require('../../withSendbird.js');
44
46
  require('../context/types.js');
45
47
  require('@sendbird/chat');
46
48
  require('../../ui/MessageInput.js');
49
+ require('../../index-05ea6eac.js');
47
50
  require('dompurify');
48
- require('../../consts-5bdc2c7f.js');
49
- require('../../consts-c336bb61.js');
50
- require('../../consts-10e5b075.js');
51
- require('../../tokenize-586ed01a.js');
52
- require('../../index.module-8026e7d3.js');
51
+ require('../../consts-74f92105.js');
52
+ require('../../consts-acdad2b4.js');
53
+ require('../../consts-39e2e498.js');
54
+ require('../../tokenize-8279c435.js');
55
+ require('../../index.module-0ba29e4f.js');
53
56
  require('../../ui/ContextMenu.js');
54
57
  require('../../ui/SortByRow.js');
55
58
  require('../../ui/UserProfile.js');
56
59
  require('../../sendbirdSelectors.js');
57
- require('../../utils-c8ca7346.js');
58
60
  require('../../ui/MessageItemMenu.js');
59
- require('../../types-812b3bfd.js');
61
+ require('../../types-c4bc01b7.js');
60
62
  require('../../ui/MessageItemReactionMenu.js');
61
63
  require('../../ui/ReactionButton.js');
62
- require('../../useLongPress-a77054d5.js');
63
- require('../../index-ed1ee70b.js');
64
+ require('../../useLongPress-092f3b5a.js');
65
+ require('../../index-f9665a27.js');
64
66
  require('../../ui/Loader.js');
65
- require('../../index-1325e266.js');
66
- require('../../index-092b22dd.js');
67
+ require('../../index-66369e8b.js');
68
+ require('../../index-76acbd2d.js');
67
69
  require('../../ui/EmojiReactions.js');
68
70
  require('../../ui/ReactionBadge.js');
69
71
  require('../../ui/BottomSheet.js');
@@ -73,7 +75,7 @@ require('../../ui/Checkbox.js');
73
75
  require('../../ui/Tooltip.js');
74
76
  require('../../ui/TooltipWrapper.js');
75
77
  require('../../ui/TextMessageItemBody.js');
76
- require('../../index-49fe0efb.js');
78
+ require('../../index-0aec5632.js');
77
79
  require('../../ui/MentionLabel.js');
78
80
  require('../../ui/LinkLabel.js');
79
81
  require('../../ui/OGMessageItemBody.js');
@@ -84,11 +86,11 @@ require('../../ui/UnknownMessageItemBody.js');
84
86
  require('../../ui/VoiceMessageItemBody.js');
85
87
  require('../../ui/ProgressBar.js');
86
88
  require('../../VoicePlayer/useVoicePlayer.js');
87
- require('../../index-dbccd7fb.js');
89
+ require('../../index-ad47c0e4.js');
88
90
  require('../../VoiceRecorder/context.js');
89
91
  require('../../ui/PlaybackTime.js');
90
- require('../../index-54228aa8.js');
91
- require('../../useDirtyGetMentions-a37639f1.js');
92
+ require('../../index-dbfce4b2.js');
93
+ require('../../Message/hooks/useDirtyGetMentions.js');
92
94
 
93
95
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
94
96
 
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadList.js","sources":["../../../../src/modules/Thread/components/ThreadList/index.tsx"],"sourcesContent":["import React, { RefObject, useMemo } from 'react';\nimport { BaseMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\nimport ThreadListItem from './ThreadListItem';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { compareMessagesForGrouping } from '../../context/utils';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { isSameDay } from 'date-fns';\nimport { MessageProvider } from '../../../Message/context/MessageProvider';\n\nexport interface ThreadListProps {\n className?: string;\n allThreadMessages: Array<UserMessage | FileMessage | BaseMessage>;\n renderMessage?: (props: {\n message: UserMessage | FileMessage,\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n }) => React.ReactElement;\n renderCustomSeparator?: (props: { message: UserMessage | FileMessage }) => React.ReactElement;\n scrollRef?: RefObject<HTMLDivElement>;\n scrollBottom?: number;\n}\n\nexport default function ThreadList({\n className,\n allThreadMessages,\n renderMessage,\n renderCustomSeparator,\n scrollRef,\n scrollBottom,\n}: ThreadListProps): React.ReactElement {\n const { config } = useSendbirdStateContext();\n const { replyType, userId } = config;\n const {\n currentChannel,\n } = useThreadContext();\n\n const MemorizedMessage = useMemo(() => ({\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n }) => {\n\n if (typeof renderMessage === 'function') {\n return renderMessage({\n message: message as UserMessage | FileMessage,\n chainTop,\n chainBottom,\n hasSeparator,\n });\n }\n return null;\n }, [renderMessage]);\n\n return (\n <div className={`sendbird-thread-list ${className}`}>\n {allThreadMessages.map((message, idx) => {\n const isByMe = (message as UserMessage)?.sender?.userId === userId;\n const prevMessage = allThreadMessages[idx - 1];\n const nextMessage = allThreadMessages[idx + 1];\n // eslint-disable-next-line no-constant-condition\n const [chainTop, chainBottom] = true// isMessageGroupingEnabled\n ? compareMessagesForGrouping(\n prevMessage as UserMessage | FileMessage,\n message as UserMessage | FileMessage,\n nextMessage as UserMessage | FileMessage,\n currentChannel,\n replyType,\n )\n : [false, false];\n const hasSeparator = !(prevMessage?.createdAt > 0 && (\n isSameDay(message?.createdAt, prevMessage?.createdAt)\n ));\n\n const handleScroll = () => {\n const current = scrollRef?.current;\n if (current) {\n const bottom = current.scrollHeight - current.scrollTop - current.offsetHeight;\n if (scrollBottom < bottom) {\n current.scrollTop += bottom - scrollBottom;\n }\n }\n };\n\n return (\n <MessageProvider message={message} isByMe={isByMe} key={message?.messageId}>\n {\n MemorizedMessage({\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n }) || (\n <ThreadListItem\n message={message as UserMessage | FileMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n hasSeparator={hasSeparator}\n renderCustomSeparator={renderCustomSeparator}\n handleScroll={handleScroll}\n />\n )\n }\n </MessageProvider>\n );\n })}\n </div>\n );\n}\n"],"names":["ThreadList","_ref","className","allThreadMessages","renderMessage","renderCustomSeparator","scrollRef","scrollBottom","config","useSendbirdStateContext","replyType","userId","currentChannel","useThreadContext","MemorizedMessage","useMemo","_ref2","message","chainTop","chainBottom","hasSeparator","React","createElement","map","idx","_sender","isByMe","sender","prevMessage","nextMessage","compareMessagesForGrouping","createdAt","isSameDay","handleScroll","current","bottom","scrollHeight","scrollTop","offsetHeight","MessageProvider","key","messageId","ThreadListItem"],"mappings":"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"}
1
+ {"version":3,"file":"ThreadList.js","sources":["../../../../src/modules/Thread/components/ThreadList/index.tsx"],"sourcesContent":["import React, { RefObject, useMemo } from 'react';\nimport { UserMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\nimport ThreadListItem from './ThreadListItem';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { compareMessagesForGrouping } from '../../context/utils';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { isSameDay } from 'date-fns';\nimport { MessageProvider } from '../../../Message/context/MessageProvider';\nimport { SendableMessageType } from '../../../../utils';\n\nexport interface ThreadListProps {\n className?: string;\n allThreadMessages: Array<SendableMessageType>;\n renderMessage?: (props: {\n message: SendableMessageType,\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n }) => React.ReactElement;\n renderCustomSeparator?: (props: { message: SendableMessageType }) => React.ReactElement;\n scrollRef?: RefObject<HTMLDivElement>;\n scrollBottom?: number;\n}\n\nexport default function ThreadList({\n className,\n allThreadMessages,\n renderMessage,\n renderCustomSeparator,\n scrollRef,\n scrollBottom,\n}: ThreadListProps): React.ReactElement {\n const { config } = useSendbirdStateContext();\n const { replyType, userId } = config;\n const {\n currentChannel,\n } = useThreadContext();\n\n const MemorizedMessage = useMemo(() => ({\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n }) => {\n\n if (typeof renderMessage === 'function') {\n return renderMessage({\n message: message as SendableMessageType,\n chainTop,\n chainBottom,\n hasSeparator,\n });\n }\n return null;\n }, [renderMessage]);\n\n return (\n <div className={`sendbird-thread-list ${className}`}>\n {allThreadMessages.map((message, idx) => {\n const isByMe = (message as UserMessage)?.sender?.userId === userId;\n const prevMessage = allThreadMessages[idx - 1];\n const nextMessage = allThreadMessages[idx + 1];\n // eslint-disable-next-line no-constant-condition\n const [chainTop, chainBottom] = true// isMessageGroupingEnabled\n ? compareMessagesForGrouping(\n prevMessage as SendableMessageType,\n message as SendableMessageType,\n nextMessage as SendableMessageType,\n currentChannel,\n replyType,\n )\n : [false, false];\n const hasSeparator = !(prevMessage?.createdAt > 0 && (\n isSameDay(message?.createdAt, prevMessage?.createdAt)\n ));\n\n const handleScroll = () => {\n const current = scrollRef?.current;\n if (current) {\n const bottom = current.scrollHeight - current.scrollTop - current.offsetHeight;\n if (scrollBottom < bottom) {\n current.scrollTop += bottom - scrollBottom;\n }\n }\n };\n\n return (\n <MessageProvider message={message} isByMe={isByMe} key={message?.messageId}>\n {\n MemorizedMessage({\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n }) || (\n <ThreadListItem\n message={message as SendableMessageType}\n chainTop={chainTop}\n chainBottom={chainBottom}\n hasSeparator={hasSeparator}\n renderCustomSeparator={renderCustomSeparator}\n handleScroll={handleScroll}\n />\n )\n }\n </MessageProvider>\n );\n })}\n </div>\n );\n}\n"],"names":["ThreadList","_ref","className","allThreadMessages","renderMessage","renderCustomSeparator","scrollRef","scrollBottom","config","useSendbirdStateContext","replyType","userId","currentChannel","useThreadContext","MemorizedMessage","useMemo","_ref2","message","chainTop","chainBottom","hasSeparator","React","createElement","map","idx","_sender","isByMe","sender","prevMessage","nextMessage","compareMessagesForGrouping","createdAt","isSameDay","handleScroll","current","bottom","scrollHeight","scrollTop","offsetHeight","MessageProvider","key","messageId","ThreadListItem"],"mappings":"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"}
@@ -1,27 +1,27 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var index$1 = require('../../index-6cb3365f.js');
5
- var LocalizationContext = require('../../LocalizationContext-a15ec4eb.js');
4
+ var index$1 = require('../../index-8522d0c2.js');
5
+ var LocalizationContext = require('../../LocalizationContext-fd85331f.js');
6
6
  var ui_DateSeparator = require('../../ui/DateSeparator.js');
7
- var ui_Label = require('../../index-2cb13008.js');
8
- var RemoveMessageModal = require('../../RemoveMessageModal-271f1251.js');
9
- var ui_FileViewer = require('../../ui/FileViewer.js');
10
- var Thread_context = require('../../ThreadProvider-8d2ce923.js');
7
+ var ui_Label = require('../../index-bf35893c.js');
8
+ var RemoveMessageModal = require('../../RemoveMessageModal-6307711c.js');
9
+ var ui_FileViewer = require('../../index-e18eb9ba.js');
10
+ var Thread_context = require('../../ThreadProvider-aeb062df.js');
11
11
  var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
12
12
  var Channel_components_SuggestedMentionList = require('../../Channel/components/SuggestedMentionList.js');
13
13
  var ui_MessageInput = require('../../ui/MessageInput.js');
14
14
  var Thread_context_types = require('../context/types.js');
15
- var _const = require('../../const-182fe978.js');
16
- var _rollupPluginBabelHelpers = require('../../_rollupPluginBabelHelpers-0d9d52a5.js');
15
+ var _const = require('../../const-7ab4dbea.js');
16
+ var _rollupPluginBabelHelpers = require('../../_rollupPluginBabelHelpers-6da3edf9.js');
17
17
  var ui_ContextMenu = require('../../ui/ContextMenu.js');
18
18
  var ui_Avatar = require('../../ui/Avatar.js');
19
- var UserProfileContext = require('../../UserProfileContext-f8f1cee7.js');
19
+ var UserProfileContext = require('../../UserProfileContext-e658337c.js');
20
20
  var ui_UserProfile = require('../../ui/UserProfile.js');
21
21
  var ui_MessageItemMenu = require('../../ui/MessageItemMenu.js');
22
22
  var ui_MessageItemReactionMenu = require('../../ui/MessageItemReactionMenu.js');
23
- var index = require('../../index-08c5777e.js');
24
- var ui_MessageStatus = require('../../index-ed1ee70b.js');
23
+ var index = require('../../index-9c4b8f39.js');
24
+ var ui_MessageStatus = require('../../index-f9665a27.js');
25
25
  var ui_EmojiReactions = require('../../ui/EmojiReactions.js');
26
26
  var ui_TextMessageItemBody = require('../../ui/TextMessageItemBody.js');
27
27
  var ui_OGMessageItemBody = require('../../ui/OGMessageItemBody.js');
@@ -29,47 +29,49 @@ var ui_FileMessageItemBody = require('../../ui/FileMessageItemBody.js');
29
29
  var ui_ThumbnailMessageItemBody = require('../../ui/ThumbnailMessageItemBody.js');
30
30
  var ui_UnknownMessageItemBody = require('../../ui/UnknownMessageItemBody.js');
31
31
  var ui_VoiceMessageItemBody = require('../../ui/VoiceMessageItemBody.js');
32
- var MediaQueryContext = require('../../MediaQueryContext-80d10d7b.js');
33
- var useLongPress = require('../../useLongPress-a77054d5.js');
34
- var index$2 = require('../../index-54228aa8.js');
35
- var types = require('../../types-812b3bfd.js');
36
- var useDirtyGetMentions = require('../../useDirtyGetMentions-a37639f1.js');
37
- var Channel_context = require('../../ChannelProvider-633edf61.js');
38
- require('../../index-c2454b7e.js');
39
- require('../../stringSet-769f181d.js');
40
- require('../../color-1e9cc481.js');
32
+ var MediaQueryContext = require('../../MediaQueryContext-fde456fd.js');
33
+ var useLongPress = require('../../useLongPress-092f3b5a.js');
34
+ var index$2 = require('../../index-dbfce4b2.js');
35
+ var types = require('../../types-c4bc01b7.js');
36
+ var Message_hooks_useDirtyGetMentions = require('../../Message/hooks/useDirtyGetMentions.js');
37
+ var Channel_context = require('../../ChannelProvider-c75c8c0d.js');
38
+ require('../../index-eac4199a.js');
39
+ require('../../stringSet-dfe78bcf.js');
40
+ require('../../color-7e8f0ca5.js');
41
41
  require('prop-types');
42
42
  require('../../ui/Modal.js');
43
43
  require('react-dom');
44
- require('../../index-17a6519d.js');
44
+ require('../../index-011a6124.js');
45
45
  require('../../ui/Button.js');
46
46
  require('../../ui/Icon.js');
47
47
  require('../../ui/IconButton.js');
48
+ require('../../utils-6a3fe892.js');
49
+ require('../../consts-0337201b.js');
48
50
  require('../../utils/message/getOutgoingMessageState.js');
49
- require('../../ui/ImageRenderer.js');
50
- require('../../uuid-6c019e89.js');
51
51
  require('@sendbird/chat');
52
- require('../../topics-99121946.js');
52
+ require('../../topics-ba2551c1.js');
53
53
  require('@sendbird/chat/groupChannel');
54
+ require('../../uuid-5f519bff.js');
54
55
  require('@sendbird/chat/message');
55
- require('../../consts-0c9a38ef.js');
56
56
  require('../../withSendbird.js');
57
- require('../../const-0d4d91cd.js');
58
- require('../../compareIds-0344920c.js');
59
- require('../../resolvedReplyType-8137e072.js');
57
+ require('../../const-703dd567.js');
58
+ require('../../ui/ImageRenderer.js');
59
+ require('../../utils-415ffe78.js');
60
+ require('../../compareIds-a5214ac1.js');
61
+ require('../../resolvedReplyType-9f17b17a.js');
62
+ require('../../index-05ea6eac.js');
60
63
  require('dompurify');
61
- require('../../consts-5bdc2c7f.js');
62
- require('../../consts-c336bb61.js');
63
- require('../../consts-10e5b075.js');
64
- require('../../tokenize-586ed01a.js');
65
- require('../../index.module-8026e7d3.js');
64
+ require('../../consts-74f92105.js');
65
+ require('../../consts-acdad2b4.js');
66
+ require('../../consts-39e2e498.js');
67
+ require('../../tokenize-8279c435.js');
68
+ require('../../index.module-0ba29e4f.js');
66
69
  require('../../ui/SortByRow.js');
67
70
  require('../../sendbirdSelectors.js');
68
- require('../../utils-c8ca7346.js');
69
71
  require('../../ui/ReactionButton.js');
70
72
  require('../../ui/Loader.js');
71
- require('../../index-1325e266.js');
72
- require('../../index-092b22dd.js');
73
+ require('../../index-66369e8b.js');
74
+ require('../../index-76acbd2d.js');
73
75
  require('../../ui/ReactionBadge.js');
74
76
  require('../../ui/BottomSheet.js');
75
77
  require('../../ui/UserListItem.js');
@@ -78,13 +80,13 @@ require('../../ui/Checkbox.js');
78
80
  require('../../ui/Tooltip.js');
79
81
  require('../../ui/TooltipWrapper.js');
80
82
  require('../../Message/context.js');
81
- require('../../index-49fe0efb.js');
83
+ require('../../index-0aec5632.js');
82
84
  require('../../ui/MentionLabel.js');
83
85
  require('../../ui/LinkLabel.js');
84
86
  require('../../ui/TextButton.js');
85
87
  require('../../ui/ProgressBar.js');
86
88
  require('../../VoicePlayer/useVoicePlayer.js');
87
- require('../../index-dbccd7fb.js');
89
+ require('../../index-ad47c0e4.js');
88
90
  require('../../VoiceRecorder/context.js');
89
91
  require('../../ui/PlaybackTime.js');
90
92
 
@@ -403,7 +405,7 @@ function ThreadListItem(_ref) {
403
405
  const [selectedUser, setSelectedUser] = React.useState(null);
404
406
  const [mentionSuggestedUsers, setMentionSuggestedUsers] = React.useState([]);
405
407
  const displaySuggestedMentionList = isOnline && isMentionEnabled && mentionNickname.length > 0 && !isMuted && !(isChannelFrozen && !(currentChannel.myRole === types.Role.OPERATOR));
406
- const mentionNodes = useDirtyGetMentions.useDirtyGetMentions({
408
+ const mentionNodes = Message_hooks_useDirtyGetMentions.useDirtyGetMentions({
407
409
  ref: editMessageInputRef
408
410
  }, {
409
411
  logger
@@ -546,7 +548,7 @@ function ThreadListItem(_ref) {
546
548
  }), showRemove && /*#__PURE__*/React__default["default"].createElement(RemoveMessageModal.RemoveMessage, {
547
549
  message: message,
548
550
  onCancel: () => setShowRemove(false)
549
- }), showFileViewer && /*#__PURE__*/React__default["default"].createElement(ui_FileViewer["default"], {
551
+ }), showFileViewer && /*#__PURE__*/React__default["default"].createElement(ui_FileViewer.FileViewer, {
550
552
  message: message,
551
553
  isByMe: (message === null || message === void 0 ? void 0 : (_message$sender = message.sender) === null || _message$sender === void 0 ? void 0 : _message$sender.userId) === userId,
552
554
  onClose: () => setShowFileViewer(false),
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadListItem.js","sources":["../../../../src/modules/Thread/components/ThreadList/ThreadListItemContent.tsx","../../../../src/modules/Thread/components/ThreadList/ThreadListItem.tsx"],"sourcesContent":["import React, { useContext, useRef, useState } from 'react';\nimport { EmojiContainer } from '@sendbird/chat';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport './ThreadListItemContent.scss';\n\nimport { ReplyType } from '../../../../types';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport Avatar from '../../../../ui/Avatar';\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport { UserProfileContextInterface } from '../../../../ui/MessageContent';\nimport UserProfile from '../../../../ui/UserProfile';\nimport MessageItemMenu from '../../../../ui/MessageItemMenu';\nimport MessageItemReactionMenu from '../../../../ui/MessageItemReactionMenu';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { getClassName, getSenderName, getUIKitMessageType, getUIKitMessageTypes, isOGMessage, isTextMessage, isThumbnailMessage, isVoiceMessage } from '../../../../utils';\nimport MessageStatus from '../../../../ui/MessageStatus';\nimport EmojiReactions from '../../../../ui/EmojiReactions';\nimport format from 'date-fns/format';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport TextMessageItemBody from '../../../../ui/TextMessageItemBody';\nimport OGMessageItemBody from '../../../../ui/OGMessageItemBody';\nimport FileMessageItemBody from '../../../../ui/FileMessageItemBody';\nimport ThumbnailMessageItemBody from '../../../../ui/ThumbnailMessageItemBody';\nimport UnknownMessageItemBody from '../../../../ui/UnknownMessageItemBody';\nimport VoiceMessageItemBody from '../../../../ui/VoiceMessageItemBody';\nimport { useMediaQueryContext } from '../../../../lib/MediaQueryContext';\nimport useLongPress from '../../../../hooks/useLongPress';\nimport MobileMenu from '../../../../ui/MobileMenu';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nexport interface ThreadListItemContentProps {\n className?: string;\n userId: string;\n channel: GroupChannel;\n message: UserMessage | FileMessage;\n disabled?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableQuoteMessage?: boolean;\n replyType?: ReplyType;\n nicknamesMap?: Map<string, string>;\n emojiContainer?: EmojiContainer;\n showEdit?: (bool: boolean) => void;\n showRemove?: (bool: boolean) => void;\n showFileViewer?: (bool: boolean) => void;\n resendMessage?: (message: UserMessage | FileMessage) => void;\n toggleReaction?: (message: UserMessage | FileMessage, reactionKey: string, isReacted: boolean) => void;\n onReplyInThread?: (props: { message: UserMessage | FileMessage }) => void;\n}\n\nexport default function ThreadListItemContent({\n className,\n userId,\n channel,\n message,\n disabled = false,\n chainTop = false,\n chainBottom = false,\n isMentionEnabled = false,\n isReactionEnabled = false,\n disableQuoteMessage = false,\n replyType,\n nicknamesMap,\n emojiContainer,\n showEdit,\n showRemove,\n showFileViewer,\n resendMessage,\n toggleReaction,\n onReplyInThread,\n}: ThreadListItemContentProps): React.ReactElement {\n const messageTypes = getUIKitMessageTypes();\n const { isMobile } = useMediaQueryContext();\n const { dateLocale } = useLocalization();\n const { config } = useSendbirdStateContext();\n const [supposedHover, setSupposedHover] = useState(false);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContextInterface>(UserProfileContext);\n const avatarRef = useRef(null);\n\n const isByMe = (userId === (message as UserMessage | FileMessage)?.sender?.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'pending')\n || ((message as UserMessage | FileMessage)?.sendingStatus === 'failed');\n const useReplying = !!((replyType === 'QUOTE_REPLY' || replyType === 'THREAD')\n && message?.parentMessageId && message?.parentMessage\n && !disableQuoteMessage\n );\n const supposedHoverClassName = supposedHover ? 'sendbird-mouse-hover' : '';\n const isReactionEnabledInChannel = isReactionEnabled && !channel?.isEphemeral;\n const isOgMessageEnabledInGroupChannel = channel.isGroupChannel() && config.groupChannel.enableOgtag;\n\n // Mobile\n const mobileMenuRef = useRef(null);\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n const longPress = useLongPress({\n onLongPress: () => {\n if (isMobile) {\n setShowMobileMenu(true);\n }\n },\n }, {\n shouldPreventDefault: false,\n });\n\n return (\n <div\n className={`sendbird-thread-list-item-content ${className} ${isByMe ? 'outgoing' : 'incoming'}`}\n ref={mobileMenuRef}\n >\n <div className={`sendbird-thread-list-item-content__left ${isReactionEnabledInChannel ? 'use-reaction' : ''} ${isByMe ? 'outgoing' : 'incoming'}`}>\n {(!isByMe && !chainBottom) && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-thread-list-item-content__left__avatar\"\n src={channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.profileUrl || message?.sender?.profileUrl || ''}\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown?.();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {renderUserProfile\n ? renderUserProfile({ user: message?.sender, close: closeDropdown })\n : <UserProfile user={message?.sender} onSuccess={closeDropdown} />\n }\n </MenuItems>\n )}\n />\n )}\n {(isByMe && !isMobile) && (\n <div\n className={`sendbird-thread-list-item-content-menu ${isReactionEnabledInChannel ? 'use-reaction' : ''\n } ${isByMe ? 'outgoing' : 'incoming'\n } ${supposedHoverClassName}`}\n >\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showEdit={showEdit}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n </div>\n )}\n </div>\n <div\n className=\"sendbird-thread-list-item-content__middle\"\n {...(isMobile) ? { ...longPress } : {}}\n >\n {(!isByMe && !chainTop && !useReplying) && (\n <Label\n className=\"sendbird-thread-list-item-content__middle__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.nickname\n || getSenderName(message as UserMessage | FileMessage)\n // TODO: Divide getting profileUrl logic to utils\n }\n </Label>\n )}\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container'])} >\n {/* message status component */}\n {(isByMe && !chainBottom) && (\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'left', supposedHoverClassName])}>\n <div className=\"sendbird-thread-list-item-content__middle__body-container__created-at__component-container\">\n <MessageStatus\n message={message as UserMessage | FileMessage}\n channel={channel}\n />\n </div>\n </div>\n )}\n {/* message item body components */}\n {isOgMessageEnabledInGroupChannel && isOGMessage(message as UserMessage)\n ? (<OGMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n ) : isTextMessage(message as UserMessage) && (\n <TextMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {isVoiceMessage(message as FileMessage) && (\n <VoiceMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n channelUrl={channel?.url}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.FILE) && (\n <FileMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n truncateLimit={isByMe ? 18 : 14}\n />\n )}\n {(isThumbnailMessage(message as FileMessage)) && (\n <ThumbnailMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n showFileViewer={showFileViewer}\n style={{\n width: isMobile ? '100%' : '200px',\n height: '148px',\n }}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.UNKNOWN) && (\n <UnknownMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {/* reactions */}\n {(isReactionEnabledInChannel && message?.reactions?.length > 0) && (\n <div className={getClassName([\n 'sendbird-thread-list-item-content-reactions',\n (!isByMe || isThumbnailMessage(message as FileMessage) || (isOgMessageEnabledInGroupChannel && isOGMessage(message as UserMessage))) ? '' : 'primary',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as UserMessage | FileMessage}\n channel={channel}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n memberNicknamesMap={nicknamesMap}\n toggleReaction={toggleReaction}\n />\n </div>\n )}\n {(!isByMe && !chainBottom) && (\n <Label\n className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'right', supposedHoverClassName])}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt || 0, 'p', {\n locale: dateLocale,\n })}\n </Label>\n )}\n </div>\n </div>\n <div\n className={`sendbird-thread-list-item-content__right ${chainTop ? 'chain-top' : ''\n } ${isByMe ? 'outgoing' : 'incoming'}`}\n >\n {(!isByMe && !isMobile) && (\n <div className={`sendbird-thread-list-item-content-menu ${supposedHoverClassName}`}>\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as UserMessage | FileMessage}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as UserMessage | FileMessage}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n </div>\n )}\n </div>\n {showMobileMenu && (\n <MobileMenu\n parentRef={mobileMenuRef}\n channel={channel}\n message={message}\n userId={userId}\n replyType={replyType}\n hideMenu={() => {\n setShowMobileMenu(false);\n }}\n isReactionEnabled={isReactionEnabled}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n showEdit={showEdit}\n showRemove={showRemove}\n toggleReaction={toggleReaction}\n isOpenedFromThread\n />\n )}\n </div>\n );\n}\n","import React, { useMemo, useState, useRef, useEffect, useLayoutEffect } from 'react';\nimport format from 'date-fns/format';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport RemoveMessage from '../RemoveMessageModal';\nimport FileViewer from '../../../../ui/FileViewer';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../../../Channel/components/SuggestedMentionList';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { ThreadListStateTypes } from '../../types';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport ThreadListItemContent from './ThreadListItemContent';\nimport { Role } from '../../../../lib/types';\nimport { useDirtyGetMentions } from '../../../Message/hooks/useDirtyGetMentions';\nimport { getIsReactionEnabled } from '../../../../utils/getIsReactionEnabled';\n\nexport interface ThreadListItemProps {\n className?: string;\n message: UserMessage | FileMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n renderCustomSeparator?: (props: { message: UserMessage | FileMessage }) => React.ReactElement;\n handleScroll?: () => void;\n}\n\nexport default function ThreadListItem({\n className,\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderCustomSeparator,\n handleScroll,\n}: ThreadListItemProps): React.ReactElement {\n const { stores, config } = useSendbirdStateContext();\n const {\n isReactionEnabled,\n isMentionEnabled,\n isOnline,\n replyType,\n userMention,\n logger,\n } = config;\n const userId = stores?.userStore?.user?.userId;\n const { dateLocale } = useLocalization();\n const threadContext = useThreadContext?.();\n const {\n currentChannel,\n nicknamesMap,\n emojiContainer,\n toggleReaction,\n threadListState,\n updateMessage,\n resendMessage,\n deleteMessage,\n isMuted,\n isChannelFrozen,\n } = threadContext;\n const openingMessage = threadContext?.message;\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const usingReaction = getIsReactionEnabled({\n globalLevel: isReactionEnabled,\n isSuper: currentChannel.isSuper,\n isBroadcast: currentChannel.isBroadcast,\n });\n\n // Move to message\n const messageScrollRef = useRef(null);\n useLayoutEffect(() => {\n if (openingMessage?.messageId === message?.messageId && messageScrollRef?.current) {\n messageScrollRef.current?.scrollIntoView({ block: 'center', inline: 'center' });\n }\n }, [openingMessage, messageScrollRef?.current]);\n\n // reactions\n useLayoutEffect(() => {\n handleScroll?.();\n }, [showEdit, message?.reactions?.length]);\n\n // mention\n const editMessageInputRef = useRef(null);\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 displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isMuted\n && !(isChannelFrozen && !(currentChannel.myRole === Role.OPERATOR));\n\n const mentionNodes = useDirtyGetMentions({ ref: editMessageInputRef }, { logger });\n const ableMention = mentionNodes?.length < userMention?.maxMentionCount;\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 // edit input\n const disabled = !(threadListState === ThreadListStateTypes.INITIALIZED)\n || !isOnline\n || isMuted\n || isChannelFrozen;\n\n // memorize\n const MemorizedSeparator = useMemo(() => {\n if (typeof renderCustomSeparator === 'function') {\n return renderCustomSeparator?.({ message });\n }\n }, [message, renderCustomSeparator]);\n\n // Edit message\n if (showEdit && message.isUserMessage()) {\n return (\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={userMention?.maxMentionCount}\n maxSuggestionCount={userMention?.maxSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n channel={currentChannel}\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([]);\n setShowEdit(false);\n currentChannel?.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 ref={messageScrollRef}\n className={`sendbird-thread-list-item ${className}`}\n >\n {/* date separator */}\n {\n hasSeparator && message?.createdAt && (MemorizedSeparator || (\n <DateSeparator>\n <Label\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt, 'MMM dd, yyyy', { locale: dateLocale })}\n </Label>\n </DateSeparator>\n ))\n }\n <ThreadListItemContent\n userId={userId}\n channel={currentChannel}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={usingReaction}\n isMentionEnabled={isMentionEnabled}\n disableQuoteMessage\n replyType={replyType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n resendMessage={resendMessage}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n toggleReaction={toggleReaction}\n showEdit={setShowEdit}\n />\n {/* modal */}\n {showRemove && (\n <RemoveMessage\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )}\n {showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n isByMe={message?.sender?.userId === userId}\n onClose={() => setShowFileViewer(false)}\n onDelete={() => {\n deleteMessage(message);\n setShowFileViewer(false);\n }}\n />\n )}\n </div>\n );\n}\n"],"names":["ThreadListItemContent","_ref","_sender","_channel$members2","_channel$members2$fin","_message$reactions","className","userId","channel","message","disabled","chainTop","chainBottom","isMentionEnabled","isReactionEnabled","disableQuoteMessage","replyType","nicknamesMap","emojiContainer","showEdit","showRemove","showFileViewer","resendMessage","toggleReaction","onReplyInThread","messageTypes","getUIKitMessageTypes","isMobile","useMediaQueryContext","dateLocale","useLocalization","config","useSendbirdStateContext","supposedHover","setSupposedHover","useState","disableUserProfile","renderUserProfile","useContext","UserProfileContext","avatarRef","useRef","isByMe","sender","sendingStatus","useReplying","parentMessageId","parentMessage","supposedHoverClassName","isReactionEnabledInChannel","isEphemeral","isOgMessageEnabledInGroupChannel","isGroupChannel","groupChannel","enableOgtag","mobileMenuRef","showMobileMenu","setShowMobileMenu","longPress","useLongPress","onLongPress","shouldPreventDefault","React","createElement","ref","ContextMenu","menuTrigger","toggleDropdown","_channel$members","_channel$members$find","_message$sender2","Avatar","src","members","find","member","_message$sender","profileUrl","width","height","onClick","menuItems","closeDropdown","MenuItems","parentRef","parentContainRef","style","paddingTop","paddingBottom","user","close","UserProfile","onSuccess","MessageItemMenu","MessageItemReactionMenu","spaceFromTrigger","_extends","_objectSpread","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","_message$sender3","nickname","getSenderName","getClassName","MessageStatus","isOGMessage","OGMessageItemBody","isTextMessage","TextMessageItemBody","isVoiceMessage","VoiceMessageItemBody","channelUrl","url","getUIKitMessageType","FILE","FileMessageItemBody","truncateLimit","isThumbnailMessage","ThumbnailMessageItemBody","UNKNOWN","UnknownMessageItemBody","reactions","length","EmojiReactions","memberNicknamesMap","CAPTION_3","format","createdAt","locale","MobileMenu","hideMenu","isOpenedFromThread","ThreadListItem","_stores$userStore","_stores$userStore$use","hasSeparator","renderCustomSeparator","handleScroll","stores","isOnline","userMention","logger","userStore","threadContext","useThreadContext","currentChannel","threadListState","updateMessage","deleteMessage","isMuted","isChannelFrozen","openingMessage","setShowEdit","setShowRemove","setShowFileViewer","usingReaction","getIsReactionEnabled","globalLevel","isSuper","isBroadcast","messageScrollRef","useLayoutEffect","messageId","current","_messageScrollRef$cur","scrollIntoView","block","inline","editMessageInputRef","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","displaySuggestedMentionList","myRole","Role","OPERATOR","mentionNodes","useDirtyGetMentions","ableMention","maxMentionCount","useEffect","filter","_ref2","i","indexOf","splice","ThreadListStateTypes","INITIALIZED","MemorizedSeparator","useMemo","isUserMessage","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","onFocusItemChange","onFetchUsers","users","ableAddMention","maxSuggestionCount","MessageInput","isEdit","mentionSelectedUser","onStartTyping","_currentChannel$start","startTyping","call","onUpdateMessage","_ref3","_currentChannel$endTy","mentionTemplate","endTyping","onCancelEdit","_currentChannel$endTy2","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","DateSeparator","RemoveMessage","onCancel","FileViewer","onClose","onDelete"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsDe,SAASA,qBAAqBA,CAAAC,IAAA,EAoBM;AAAA,EAAA,IAAAC,OAAA,EAAAC,iBAAA,EAAAC,qBAAA,EAAAC,kBAAA,CAAA;EAAA,IApBL;IAC5CC,SAAS;IACTC,MAAM;IACNC,OAAO;IACPC,OAAO;AACPC,IAAAA,QAAQ,GAAG,KAAK;AAChBC,IAAAA,QAAQ,GAAG,KAAK;AAChBC,IAAAA,WAAW,GAAG,KAAK;AACnBC,IAAAA,gBAAgB,GAAG,KAAK;AACxBC,IAAAA,iBAAiB,GAAG,KAAK;AACzBC,IAAAA,mBAAmB,GAAG,KAAK;IAC3BC,SAAS;IACTC,YAAY;IACZC,cAAc;IACdC,QAAQ;IACRC,UAAU;IACVC,cAAc;IACdC,aAAa;IACbC,cAAc;AACdC,IAAAA,eAAAA;AAC0B,GAAC,GAAAvB,IAAA,CAAA;EAC3B,MAAMwB,YAAY,GAAGC,0BAAoB,EAAE,CAAA;EAC3C,MAAM;AAAEC,IAAAA,QAAAA;GAAU,GAAGC,sCAAoB,EAAE,CAAA;EAC3C,MAAM;AAAEC,IAAAA,UAAAA;GAAY,GAAGC,mCAAe,EAAE,CAAA;EACxC,MAAM;AAAEC,IAAAA,MAAAA;GAAQ,GAAGC,uBAAuB,EAAE,CAAA;EAC5C,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAGC,cAAQ,CAAC,KAAK,CAAC,CAAA;EACzD,MAAM;IACJC,kBAAkB;AAClBC,IAAAA,iBAAAA;AACF,GAAC,GAAGC,gBAAU,CAA8BC,qCAAkB,CAAC,CAAA;AAC/D,EAAA,MAAMC,SAAS,GAAGC,YAAM,CAAC,IAAI,CAAC,CAAA;AAE9B,EAAA,MAAMC,MAAM,GAAInC,MAAM,MAAME,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAAP,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,OAAA,GAAPO,OAAO,CAAgCkC,MAAM,MAAA,IAAA,IAAAzC,OAAA,KAA9CA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAA,CAAgDK,MAAM,CAAA,IAC3E,CAACE,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAgCmC,aAAa,MAAK,SAAU,IACpE,CAACnC,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAgCmC,aAAa,MAAK,QAAS,CAAA;AACzE,EAAA,MAAMC,WAAW,GAAG,CAAC,EAAE,CAAC7B,SAAS,KAAK,aAAa,IAAIA,SAAS,KAAK,QAAQ,KACxEP,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,IAAPA,OAAO,CAAEqC,eAAe,IAAIrC,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,IAAAA,OAAO,CAAEsC,aAAa,IAClD,CAAChC,mBAAmB,CACxB,CAAA;AACD,EAAA,MAAMiC,sBAAsB,GAAGf,aAAa,GAAG,sBAAsB,GAAG,EAAE,CAAA;EAC1E,MAAMgB,0BAA0B,GAAGnC,iBAAiB,IAAI,EAACN,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,IAAPA,OAAO,CAAE0C,WAAW,CAAA,CAAA;EAC7E,MAAMC,gCAAgC,GAAG3C,OAAO,CAAC4C,cAAc,EAAE,IAAIrB,MAAM,CAACsB,YAAY,CAACC,WAAW,CAAA;;AAEpG;AACA,EAAA,MAAMC,aAAa,GAAGd,YAAM,CAAC,IAAI,CAAC,CAAA;EAClC,MAAM,CAACe,cAAc,EAAEC,iBAAiB,CAAC,GAAGtB,cAAQ,CAAC,KAAK,CAAC,CAAA;EAC3D,MAAMuB,SAAS,GAAGC,yBAAY,CAAC;IAC7BC,WAAW,EAAEA,MAAM;AACjB,MAAA,IAAIjC,QAAQ,EAAE;QACZ8B,iBAAiB,CAAC,IAAI,CAAC,CAAA;AACzB,OAAA;AACF,KAAA;AACF,GAAC,EAAE;AACDI,IAAAA,oBAAoB,EAAE,KAAA;AACxB,GAAC,CAAC,CAAA;EAEF,oBACEC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACEzD,SAAS,EAAG,qCAAoCA,SAAU,CAAA,CAAA,EAAGoC,MAAM,GAAG,UAAU,GAAG,UAAW,CAAE,CAAA;AAChGsB,IAAAA,GAAG,EAAET,aAAAA;GAELO,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKzD,IAAAA,SAAS,EAAG,CAAA,wCAAA,EAA0C2C,0BAA0B,GAAG,cAAc,GAAG,EAAG,CAAA,CAAA,EAAGP,MAAM,GAAG,UAAU,GAAG,UAAW,CAAA,CAAA;GAC5I,EAAA,CAACA,MAAM,IAAI,CAAC9B,WAAW,iBACvBkD,yBAAA,CAAAC,aAAA,CAACE,yBAAW,EAAA;AACVC,IAAAA,WAAW,EAAGC,cAAc,IAAA;AAAA,MAAA,IAAAC,gBAAA,EAAAC,qBAAA,EAAAC,gBAAA,CAAA;AAAA,MAAA,oBAC1BR,yBAAA,CAAAC,aAAA,CAACQ,oBAAM,EAAA;AACLjE,QAAAA,SAAS,EAAC,iDAAiD;QAC3DkE,GAAG,EAAE,CAAAhE,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA4D,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,gBAAA,GAAP5D,OAAO,CAAEiE,OAAO,MAAAL,IAAAA,IAAAA,gBAAA,wBAAAC,qBAAA,GAAhBD,gBAAA,CAAkBM,IAAI,CAAEC,MAAM,IAAA;AAAA,UAAA,IAAAC,eAAA,CAAA;UAAA,OAAK,CAAAD,MAAM,KAANA,IAAAA,IAAAA,MAAM,uBAANA,MAAM,CAAEpE,MAAM,OAAKE,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAAmE,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,eAAA,GAAPnE,OAAO,CAAEkC,MAAM,cAAAiC,eAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,eAAA,CAAiBrE,MAAM,CAAA,CAAA;SAAC,CAAA,MAAA,IAAA,IAAA8D,qBAAA,KAA9EA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAAgFQ,UAAU,MAAIpE,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA6D,gBAAA,GAAP7D,OAAO,CAAEkC,MAAM,MAAA2B,IAAAA,IAAAA,gBAAA,uBAAfA,gBAAA,CAAiBO,UAAU,CAAA,IAAI,EAAG;AACrIb,QAAAA,GAAG,EAAExB,SAAU;AACfsC,QAAAA,KAAK,EAAC,MAAM;AACZC,QAAAA,MAAM,EAAC,MAAM;QACbC,OAAO,EAAEA,MAAM;UACb,IAAI,CAAC5C,kBAAkB,EAAE;AACvB+B,YAAAA,cAAc,KAAdA,IAAAA,IAAAA,cAAc,KAAdA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,cAAc,EAAI,CAAA;AACpB,WAAA;AACF,SAAA;OACA,CAAA,CAAA;KACF;AACFc,IAAAA,SAAS,EAAGC,aAAa,iBACvBpB,yBAAA,CAAAC,aAAA,CAACoB,wBAAS,EAAA;AACRC,MAAAA,SAAS,EAAE5C,SAAU;AACrB6C,MAAAA,gBAAgB,EAAE7C,SAAU;AAC5B0C,MAAAA,aAAa,EAAEA,aAAc;AAC7BI,MAAAA,KAAK,EAAE;AAAEC,QAAAA,UAAU,EAAE,KAAK;AAAEC,QAAAA,aAAa,EAAE,KAAA;AAAM,OAAA;KAEhDnD,EAAAA,iBAAiB,GACdA,iBAAiB,CAAC;AAAEoD,MAAAA,IAAI,EAAEhF,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEkC,MAAM;AAAE+C,MAAAA,KAAK,EAAER,aAAAA;AAAc,KAAC,CAAC,gBAClEpB,yBAAA,CAAAC,aAAA,CAAC4B,cAAW,EAAA;AAACF,MAAAA,IAAI,EAAEhF,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEkC,MAAO;AAACiD,MAAAA,SAAS,EAAEV,aAAAA;KAAiB,CAAA,CAAA;GAK3E,CAAA,EACCxC,MAAM,IAAI,CAACf,QAAQ,iBACnBmC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEzD,IAAAA,SAAS,EAAG,CAAA,uCAAA,EAAyC2C,0BAA0B,GAAG,cAAc,GAAG,EAClG,CAAGP,CAAAA,EAAAA,MAAM,GAAG,UAAU,GAAG,UACzB,IAAGM,sBAAuB,CAAA,CAAA;AAAE,GAAA,eAE7Bc,yBAAA,CAAAC,aAAA,CAAC8B,kBAAe,EAAA;AACdvF,IAAAA,SAAS,EAAC,qDAAqD;AAC/DE,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,OAAO,EAAEA,OAAqC;AAC9CiC,IAAAA,MAAM,EAAEA,MAAO;AACf1B,IAAAA,SAAS,EAAEA,SAAU;AACrBN,IAAAA,QAAQ,EAAEA,QAAS;AACnBS,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,UAAU,EAAEA,UAAW;AACvBE,IAAAA,aAAa,EAAEA,aAAc;AAC7BY,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCV,IAAAA,eAAe,EAAEA,eAAAA;AAAgB,GAAA,CACjC,EACDyB,0BAA0B,iBACzBa,yBAAA,CAAAC,aAAA,CAAC+B,0BAAuB,EAAA;AACtBxF,IAAAA,SAAS,EAAC,uDAAuD;AACjEG,IAAAA,OAAO,EAAEA,OAAqC;AAC9CF,IAAAA,MAAM,EAAEA,MAAO;IACfwF,gBAAgB,EAAE,EAAG;AACrB7E,IAAAA,cAAc,EAAEA,cAAe;AAC/BK,IAAAA,cAAc,EAAEA,cAAe;AAC/BW,IAAAA,gBAAgB,EAAEA,gBAAAA;AAAiB,GAAA,CAEtC,CAEJ,CACG,eACN4B,yBAAA,CAAAC,aAAA,QAAAiC,kCAAA,CAAA;AACE1F,IAAAA,SAAS,EAAC,2CAAA;GACLqB,EAAAA,QAAQ,GAAAsE,wCAAA,CAAA,EAAA,EAASvC,SAAS,CAAK,GAAA,EAAE,CAAA,EAEpC,CAAChB,MAAM,IAAI,CAAC/B,QAAQ,IAAI,CAACkC,WAAW,iBACpCiB,yBAAA,CAAAC,aAAA,CAACmC,cAAK,EAAA;AACJ5F,IAAAA,SAAS,EAAC,wDAAwD;IAClE6F,IAAI,EAAEC,wBAAe,CAACC,SAAU;IAChCC,KAAK,EAAEC,oBAAW,CAACC,cAAAA;AAAe,GAAA,EAGhC,CAAAhG,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAAL,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,iBAAA,GAAPK,OAAO,CAAEiE,OAAO,MAAAtE,IAAAA,IAAAA,iBAAA,wBAAAC,qBAAA,GAAhBD,iBAAA,CAAkBuE,IAAI,CAAEC,MAAM,IAAA;AAAA,IAAA,IAAA8B,gBAAA,CAAA;IAAA,OAAK,CAAA9B,MAAM,KAANA,IAAAA,IAAAA,MAAM,uBAANA,MAAM,CAAEpE,MAAM,OAAKE,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAAgG,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,gBAAA,GAAPhG,OAAO,CAAEkC,MAAM,cAAA8D,gBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,gBAAA,CAAiBlG,MAAM,CAAA,CAAA;GAAC,CAAA,MAAA,IAAA,IAAAH,qBAAA,KAA9EA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAAgFsG,QAAQ,KACrFC,mBAAa,CAAClG,OAAO,CAAA;AACxB;GAGL,eACDqD,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKzD,IAAAA,SAAS,EAAEsG,kBAAY,CAAC,CAAC,2DAA2D,CAAC,CAAA;AAAE,GAAA,EAExFlE,MAAM,IAAI,CAAC9B,WAAW,iBACtBkD,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKzD,SAAS,EAAEsG,kBAAY,CAAC,CAAC,uEAAuE,EAAE,MAAM,EAAE5D,sBAAsB,CAAC,CAAA;GACpIc,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKzD,IAAAA,SAAS,EAAC,4FAAA;AAA4F,GAAA,eACzGwD,yBAAA,CAAAC,aAAA,CAAC8C,8BAAa,EAAA;AACZpG,IAAAA,OAAO,EAAEA,OAAqC;AAC9CD,IAAAA,OAAO,EAAEA,OAAAA;AAAQ,GAAA,CACjB,CACE,CAET,EAEA2C,gCAAgC,IAAI2D,iBAAW,CAACrG,OAAO,CAAgB,gBACnEqD,yBAAA,CAAAC,aAAA,CAACgD,oBAAiB,EAAA;AACnBzG,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChCiC,IAAAA,MAAM,EAAEA,MAAO;AACf7B,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCC,IAAAA,iBAAiB,EAAEmC,0BAAAA;GACnB,CAAA,GACE+D,mBAAa,CAACvG,OAAO,CAAgB,iBACzCqD,yBAAA,CAAAC,aAAA,CAACkD,sBAAmB,EAAA;AAClB3G,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChCiC,IAAAA,MAAM,EAAEA,MAAO;AACf7B,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCC,IAAAA,iBAAiB,EAAEmC,0BAAAA;GAEpB,CAAA,EACFiE,oBAAc,CAACzG,OAAO,CAAgB,iBACrCqD,yBAAA,CAAAC,aAAA,CAACoD,4CAAoB,EAAA;AACnB7G,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChC2G,IAAAA,UAAU,EAAE5G,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAE6G,GAAI;AACzB3E,IAAAA,MAAM,EAAEA,MAAO;AACf5B,IAAAA,iBAAiB,EAAEmC,0BAAAA;AAA2B,GAAA,CAEjD,EACCqE,yBAAmB,CAAE7G,OAAO,CAAiB,KAAKgB,YAAY,CAAC8F,IAAI,iBACnEzD,yBAAA,CAAAC,aAAA,CAACyD,sBAAmB,EAAA;AAClBlH,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChCiC,IAAAA,MAAM,EAAEA,MAAO;AACf5B,IAAAA,iBAAiB,EAAEmC,0BAA2B;AAC9CwE,IAAAA,aAAa,EAAE/E,MAAM,GAAG,EAAE,GAAG,EAAA;GAEhC,CAAA,EACCgF,wBAAkB,CAACjH,OAAO,CAAgB,iBAC1CqD,yBAAA,CAAAC,aAAA,CAAC4D,2BAAwB,EAAA;AACvBrH,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChCiC,IAAAA,MAAM,EAAEA,MAAO;AACf5B,IAAAA,iBAAiB,EAAEmC,0BAA2B;AAC9C5B,IAAAA,cAAc,EAAEA,cAAe;AAC/BiE,IAAAA,KAAK,EAAE;AACLR,MAAAA,KAAK,EAAEnD,QAAQ,GAAG,MAAM,GAAG,OAAO;AAClCoD,MAAAA,MAAM,EAAE,OAAA;AACV,KAAA;AAAE,GAAA,CAEL,EACCuC,yBAAmB,CAAE7G,OAAO,CAAiB,KAAKgB,YAAY,CAACmG,OAAO,iBACtE9D,yBAAA,CAAAC,aAAA,CAAC8D,yBAAsB,EAAA;AACrBvH,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAQ;AACjBiC,IAAAA,MAAM,EAAEA,MAAO;AACf5B,IAAAA,iBAAiB,EAAEmC,0BAAAA;GAEtB,CAAA,EAECA,0BAA0B,IAAI,CAAAxC,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAAJ,kBAAA,GAAPI,OAAO,CAAEqH,SAAS,MAAAzH,IAAAA,IAAAA,kBAAA,KAAlBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,kBAAA,CAAoB0H,MAAM,IAAG,CAAC,iBAC5DjE,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKzD,SAAS,EAAEsG,kBAAY,CAAC,CAC3B,6CAA6C,EAC5C,CAAClE,MAAM,IAAIgF,wBAAkB,CAACjH,OAAO,CAAgB,IAAK0C,gCAAgC,IAAI2D,iBAAW,CAACrG,OAAO,CAAiB,GAAI,EAAE,GAAG,SAAS,CACtJ,CAAA;AAAE,GAAA,eACDqD,yBAAA,CAAAC,aAAA,CAACiE,iBAAc,EAAA;AACbzH,IAAAA,MAAM,EAAEA,MAAO;AACfE,IAAAA,OAAO,EAAEA,OAAqC;AAC9CD,IAAAA,OAAO,EAAEA,OAAQ;AACjBkC,IAAAA,MAAM,EAAEA,MAAO;AACfxB,IAAAA,cAAc,EAAEA,cAAe;AAC/B+G,IAAAA,kBAAkB,EAAEhH,YAAa;AACjCM,IAAAA,cAAc,EAAEA,cAAAA;AAAe,GAAA,CAC/B,CAEL,EACC,CAACmB,MAAM,IAAI,CAAC9B,WAAW,iBACvBkD,yBAAA,CAAAC,aAAA,CAACmC,cAAK,EAAA;IACJ5F,SAAS,EAAEsG,kBAAY,CAAC,CAAC,uEAAuE,EAAE,OAAO,EAAE5D,sBAAsB,CAAC,CAAE;IACpImD,IAAI,EAAEC,wBAAe,CAAC8B,SAAU;IAChC5B,KAAK,EAAEC,oBAAW,CAACC,cAAAA;AAAe,GAAA,EAEjC2B,cAAM,CAAC,CAAA1H,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAE2H,SAAS,KAAI,CAAC,EAAE,GAAG,EAAE;AACpCC,IAAAA,MAAM,EAAExG,UAAAA;AACV,GAAC,CAAC,CAEL,CACG,CACF,eACNiC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEzD,IAAAA,SAAS,EAAG,CAAA,yCAAA,EAA2CK,QAAQ,GAAG,WAAW,GAAG,EAC/E,CAAA,CAAA,EAAG+B,MAAM,GAAG,UAAU,GAAG,UAAW,CAAA,CAAA;GAEnC,EAAA,CAACA,MAAM,IAAI,CAACf,QAAQ,iBACpBmC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKzD,SAAS,EAAG,0CAAyC0C,sBAAuB,CAAA,CAAA;AAAE,GAAA,EAChFC,0BAA0B,iBACzBa,yBAAA,CAAAC,aAAA,CAAC+B,0BAAuB,EAAA;AACtBxF,IAAAA,SAAS,EAAC,uDAAuD;AACjEG,IAAAA,OAAO,EAAEA,OAAqC;AAC9CF,IAAAA,MAAM,EAAEA,MAAO;IACfwF,gBAAgB,EAAE,EAAG;AACrB7E,IAAAA,cAAc,EAAEA,cAAe;AAC/BK,IAAAA,cAAc,EAAEA,cAAe;AAC/BW,IAAAA,gBAAgB,EAAEA,gBAAAA;AAAiB,GAAA,CAEtC,eACD4B,yBAAA,CAAAC,aAAA,CAAC8B,kBAAe,EAAA;AACdvF,IAAAA,SAAS,EAAC,qDAAqD;AAC/DE,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,OAAO,EAAEA,OAAqC;AAC9CiC,IAAAA,MAAM,EAAEA,MAAO;AACf1B,IAAAA,SAAS,EAAEA,SAAU;AACrBN,IAAAA,QAAQ,EAAEA,QAAS;AACnBU,IAAAA,UAAU,EAAEA,UAAW;AACvBE,IAAAA,aAAa,EAAEA,aAAc;AAC7BY,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCV,IAAAA,eAAe,EAAEA,eAAAA;GACjB,CAAA,CAEL,CACG,EACLgC,cAAc,iBACbM,yBAAA,CAAAC,aAAA,CAACuE,kBAAU,EAAA;AACTlD,IAAAA,SAAS,EAAE7B,aAAc;AACzB/C,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,OAAO,EAAEA,OAAQ;AACjBF,IAAAA,MAAM,EAAEA,MAAO;AACfS,IAAAA,SAAS,EAAEA,SAAU;IACrBuH,QAAQ,EAAEA,MAAM;MACd9E,iBAAiB,CAAC,KAAK,CAAC,CAAA;KACxB;AACF3C,IAAAA,iBAAiB,EAAEA,iBAAkB;AACrC4B,IAAAA,MAAM,EAAEA,MAAO;AACfxB,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,UAAU,EAAEA,UAAW;AACvBG,IAAAA,cAAc,EAAEA,cAAe;IAC/BiH,kBAAkB,EAAA,IAAA;AAAA,GAAA,CAErB,CACG,CAAA;AAEV;;AC/Te,SAASC,cAAcA,CAAAxI,IAAA,EAQM;AAAA,EAAA,IAAAyI,iBAAA,EAAAC,qBAAA,EAAAtI,kBAAA,EAAAuE,eAAA,CAAA;EAAA,IARL;IACrCtE,SAAS;IACTG,OAAO;IACPE,QAAQ;IACRC,WAAW;IACXgI,YAAY;IACZC,qBAAqB;AACrBC,IAAAA,YAAAA;AACmB,GAAC,GAAA7I,IAAA,CAAA;EACpB,MAAM;IAAE8I,MAAM;AAAEhH,IAAAA,MAAAA;GAAQ,GAAGC,uBAAuB,EAAE,CAAA;EACpD,MAAM;IACJlB,iBAAiB;IACjBD,gBAAgB;IAChBmI,QAAQ;IACRhI,SAAS;IACTiI,WAAW;AACXC,IAAAA,MAAAA;AACF,GAAC,GAAGnH,MAAM,CAAA;EACV,MAAMxB,MAAM,GAAGwI,MAAM,KAANA,IAAAA,IAAAA,MAAM,wBAAAL,iBAAA,GAANK,MAAM,CAAEI,SAAS,MAAA,IAAA,IAAAT,iBAAA,KAAAC,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,qBAAA,GAAjBD,iBAAA,CAAmBjD,IAAI,cAAAkD,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAvBA,qBAAA,CAAyBpI,MAAM,CAAA;EAC9C,MAAM;AAAEsB,IAAAA,UAAAA;GAAY,GAAGC,mCAAe,EAAE,CAAA;AACxC,EAAA,MAAMsH,aAAa,GAAGC,+BAAgB,aAAhBA,+BAAgB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,+BAAgB,EAAI,CAAA;EAC1C,MAAM;IACJC,cAAc;IACdrI,YAAY;IACZC,cAAc;IACdK,cAAc;IACdgI,eAAe;IACfC,aAAa;IACblI,aAAa;IACbmI,aAAa;IACbC,OAAO;AACPC,IAAAA,eAAAA;AACF,GAAC,GAAGP,aAAa,CAAA;EACjB,MAAMQ,cAAc,GAAGR,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAa,CAAE3I,OAAO,CAAA;EAE7C,MAAM,CAACU,QAAQ,EAAE0I,WAAW,CAAC,GAAG1H,cAAQ,CAAC,KAAK,CAAC,CAAA;EAC/C,MAAM,CAACf,UAAU,EAAE0I,aAAa,CAAC,GAAG3H,cAAQ,CAAC,KAAK,CAAC,CAAA;EACnD,MAAM,CAACd,cAAc,EAAE0I,iBAAiB,CAAC,GAAG5H,cAAQ,CAAC,KAAK,CAAC,CAAA;EAC3D,MAAM6H,aAAa,GAAGC,oCAAoB,CAAC;AACzCC,IAAAA,WAAW,EAAEpJ,iBAAiB;IAC9BqJ,OAAO,EAAEb,cAAc,CAACa,OAAO;IAC/BC,WAAW,EAAEd,cAAc,CAACc,WAAAA;AAC9B,GAAC,CAAC,CAAA;;AAEF;AACA,EAAA,MAAMC,gBAAgB,GAAG5H,YAAM,CAAC,IAAI,CAAC,CAAA;AACrC6H,EAAAA,qBAAe,CAAC,MAAM;IACpB,IAAI,CAAAV,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAEW,SAAS,OAAK9J,OAAO,KAAPA,IAAAA,IAAAA,OAAO,uBAAPA,OAAO,CAAE8J,SAAS,CAAA,IAAIF,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAhBA,KAAAA,CAAAA,IAAAA,gBAAgB,CAAEG,OAAO,EAAE;AAAA,MAAA,IAAAC,qBAAA,CAAA;MACjF,CAAAA,qBAAA,GAAAJ,gBAAgB,CAACG,OAAO,MAAAC,IAAAA,IAAAA,qBAAA,KAAxBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAA0BC,cAAc,CAAC;AAAEC,QAAAA,KAAK,EAAE,QAAQ;AAAEC,QAAAA,MAAM,EAAE,QAAA;AAAS,OAAC,CAAC,CAAA;AACjF,KAAA;AACF,GAAC,EAAE,CAAChB,cAAc,EAAES,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,gBAAgB,CAAEG,OAAO,CAAC,CAAC,CAAA;;AAE/C;AACAF,EAAAA,qBAAe,CAAC,MAAM;AACpBxB,IAAAA,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,EAAI,CAAA;GACjB,EAAE,CAAC3H,QAAQ,EAAEV,OAAO,KAAPA,IAAAA,IAAAA,OAAO,wBAAAJ,kBAAA,GAAPI,OAAO,CAAEqH,SAAS,cAAAzH,kBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAlBA,kBAAA,CAAoB0H,MAAM,CAAC,CAAC,CAAA;;AAE1C;AACA,EAAA,MAAM8C,mBAAmB,GAAGpI,YAAM,CAAC,IAAI,CAAC,CAAA;EACxC,MAAM,CAACqI,eAAe,EAAEC,kBAAkB,CAAC,GAAG5I,cAAQ,CAAC,EAAE,CAAC,CAAA;EAC1D,MAAM,CAAC6I,cAAc,EAAEC,iBAAiB,CAAC,GAAG9I,cAAQ,CAAC,EAAE,CAAC,CAAA;EACxD,MAAM,CAAC+I,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGhJ,cAAQ,CAAC,EAAE,CAAC,CAAA;EAC5D,MAAM,CAACiJ,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGlJ,cAAQ,CAAC,IAAI,CAAC,CAAA;EAChE,MAAM,CAACmJ,YAAY,EAAEC,eAAe,CAAC,GAAGpJ,cAAQ,CAAC,IAAI,CAAC,CAAA;EACtD,MAAM,CAACqJ,qBAAqB,EAAEC,wBAAwB,CAAC,GAAGtJ,cAAQ,CAAC,EAAE,CAAC,CAAA;EACtE,MAAMuJ,2BAA2B,GAAG1C,QAAQ,IACvCnI,gBAAgB,IAChBiK,eAAe,CAAC/C,MAAM,GAAG,CAAC,IAC1B,CAAC2B,OAAO,IACR,EAAEC,eAAe,IAAI,EAAEL,cAAc,CAACqC,MAAM,KAAKC,UAAI,CAACC,QAAQ,CAAC,CAAC,CAAA;EAErE,MAAMC,YAAY,GAAGC,uCAAmB,CAAC;AAAE/H,IAAAA,GAAG,EAAE6G,mBAAAA;AAAoB,GAAC,EAAE;AAAE3B,IAAAA,MAAAA;AAAO,GAAC,CAAC,CAAA;AAClF,EAAA,MAAM8C,WAAW,GAAG,CAAAF,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAE/D,MAAM,KAAGkB,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAXA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAW,CAAEgD,eAAe,CAAA,CAAA;AAEvEC,EAAAA,eAAS,CAAC,MAAM;AACdjB,IAAAA,iBAAiB,CAACD,cAAc,CAACmB,MAAM,CAACC,KAAA,IAAgB;MAAA,IAAf;AAAE7L,QAAAA,MAAAA;AAAO,OAAC,GAAA6L,KAAA,CAAA;AACjD,MAAA,MAAMC,CAAC,GAAGnB,gBAAgB,CAACoB,OAAO,CAAC/L,MAAM,CAAC,CAAA;MAC1C,IAAI8L,CAAC,GAAG,CAAC,EAAE;AACT,QAAA,OAAO,KAAK,CAAA;AACd,OAAC,MAAM;AACLnB,QAAAA,gBAAgB,CAACqB,MAAM,CAACF,CAAC,EAAE,CAAC,CAAC,CAAA;AAC7B,QAAA,OAAO,IAAI,CAAA;AACb,OAAA;AACF,KAAC,CAAC,CAAC,CAAA;AACL,GAAC,EAAE,CAACnB,gBAAgB,CAAC,CAAC,CAAA;;AAEtB;AACA,EAAA,MAAMxK,QAAQ,GAAG,EAAE6I,eAAe,KAAKiD,yCAAoB,CAACC,WAAW,CAAC,IACnE,CAACzD,QAAQ,IACTU,OAAO,IACPC,eAAe,CAAA;;AAEpB;AACA,EAAA,MAAM+C,kBAAkB,GAAGC,aAAO,CAAC,MAAM;AACvC,IAAA,IAAI,OAAO9D,qBAAqB,KAAK,UAAU,EAAE;AAC/C,MAAA,OAAOA,qBAAqB,KAAA,IAAA,IAArBA,qBAAqB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAArBA,qBAAqB,CAAG;AAAEpI,QAAAA,OAAAA;AAAQ,OAAC,CAAC,CAAA;AAC7C,KAAA;AACF,GAAC,EAAE,CAACA,OAAO,EAAEoI,qBAAqB,CAAC,CAAC,CAAA;;AAEpC;AACA,EAAA,IAAI1H,QAAQ,IAAIV,OAAO,CAACmM,aAAa,EAAE,EAAE;AACvC,IAAA,oBACE9I,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAA+I,QAAA,EAEInB,IAAAA,EAAAA,2BAA2B,iBACzB5H,yBAAA,CAAAC,aAAA,CAAC+I,uCAAoB,EAAA;AACnBC,MAAAA,cAAc,EAAEjC,eAAgB;AAChCkC,MAAAA,UAAU,EAAE5B,iBAAAA;AACZ;AAAA;MACA6B,eAAe,EAAGxH,IAAI,IAAK;AACzB,QAAA,IAAIA,IAAI,EAAE;AACRwF,UAAAA,iBAAiB,CAAC,CAAC,GAAGD,cAAc,EAAEvF,IAAI,CAAC,CAAC,CAAA;AAC9C,SAAA;QACAsF,kBAAkB,CAAC,EAAE,CAAC,CAAA;QACtBQ,eAAe,CAAC9F,IAAI,CAAC,CAAA;QACrB4F,oBAAoB,CAAC,IAAI,CAAC,CAAA;OAC1B;MACF6B,iBAAiB,EAAEA,MAAM;QACvB7B,oBAAoB,CAAC,IAAI,CAAC,CAAA;OAC1B;MACF8B,YAAY,EAAGC,KAAK,IAAK;QACvB3B,wBAAwB,CAAC2B,KAAK,CAAC,CAAA;OAC/B;AACFC,MAAAA,cAAc,EAAErB,WAAY;AAC5BC,MAAAA,eAAe,EAAEhD,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAXA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAW,CAAEgD,eAAgB;AAC9CqB,MAAAA,kBAAkB,EAAErE,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAXA,WAAW,CAAEqE,kBAAAA;AAAmB,KAAA,CAEvD,eAEHxJ,yBAAA,CAAAC,aAAA,CAACwJ,eAAY,EAAA;MACXC,MAAM,EAAA,IAAA;AACNhN,MAAAA,OAAO,EAAE8I,cAAe;AACxB5I,MAAAA,QAAQ,EAAEA,QAAS;AACnBsD,MAAAA,GAAG,EAAE6G,mBAAoB;AACzB4C,MAAAA,mBAAmB,EAAEnC,YAAa;AAClCzK,MAAAA,gBAAgB,EAAEA,gBAAiB;AACnCJ,MAAAA,OAAO,EAAEA,OAAQ;MACjBiN,aAAa,EAAEA,MAAM;AAAA,QAAA,IAAAC,qBAAA,CAAA;AACnBrE,QAAAA,cAAc,aAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAAqE,qBAAA,GAAdrE,cAAc,CAAEsE,WAAW,MAAAD,IAAAA,IAAAA,qBAAA,uBAA3BA,qBAAA,CAAAE,IAAA,CAAAvE,cAAc,CAAiB,CAAA;OAC/B;MACFwE,eAAe,EAAEC,KAAA,IAA6C;AAAA,QAAA,IAAAC,qBAAA,CAAA;QAAA,IAA5C;UAAEzD,SAAS;UAAE9J,OAAO;AAAEwN,UAAAA,eAAAA;AAAgB,SAAC,GAAAF,KAAA,CAAA;AACvDvE,QAAAA,aAAa,CAAC;UACZe,SAAS;UACT9J,OAAO;UACPuK,cAAc;AACdiD,UAAAA,eAAAA;AACF,SAAC,CAAC,CAAA;QACFpE,WAAW,CAAC,KAAK,CAAC,CAAA;AAClBP,QAAAA,cAAc,aAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA0E,qBAAA,GAAd1E,cAAc,CAAE4E,SAAS,MAAAF,IAAAA,IAAAA,qBAAA,uBAAzBA,qBAAA,CAAAH,IAAA,CAAAvE,cAAc,CAAe,CAAA;OAC7B;MACF6E,YAAY,EAAEA,MAAM;AAAA,QAAA,IAAAC,sBAAA,CAAA;QAClBrD,kBAAkB,CAAC,EAAE,CAAC,CAAA;QACtBE,iBAAiB,CAAC,EAAE,CAAC,CAAA;QACrBE,mBAAmB,CAAC,EAAE,CAAC,CAAA;QACvBM,wBAAwB,CAAC,EAAE,CAAC,CAAA;QAC5B5B,WAAW,CAAC,KAAK,CAAC,CAAA;AAClBP,QAAAA,cAAc,aAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA8E,sBAAA,GAAd9E,cAAc,CAAE4E,SAAS,MAAAE,IAAAA,IAAAA,sBAAA,uBAAzBA,sBAAA,CAAAP,IAAA,CAAAvE,cAAc,CAAe,CAAA;OAC7B;MACF+E,eAAe,EAAG5I,IAAI,IAAK;AACzB,QAAA,IAAI,CAAA6F,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAE/K,MAAM,OAAKkF,IAAI,aAAJA,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJA,IAAI,CAAElF,MAAM,CAAE,EAAA;UACzCgL,eAAe,CAAC,IAAI,CAAC,CAAA;UACrBR,kBAAkB,CAAC,EAAE,CAAC,CAAA;AACxB,SAAA;OACA;MACFuD,qBAAqB,EAAGC,WAAW,IAAK;QACtCxD,kBAAkB,CAACwD,WAAW,CAAC,CAAA;OAC/B;MACFC,yBAAyB,EAAGC,OAAO,IAAK;QACtCtD,mBAAmB,CAACsD,OAAO,CAAC,CAAA;OAC5B;MACFC,SAAS,EAAGC,CAAC,IAAK;AAChB,QAAA,IAAIjD,2BAA2B,IAAI,CAAAF,qBAAqB,KAAA,IAAA,IAArBA,qBAAqB,KAArBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAqB,CAAEzD,MAAM,IAAG,CAAC,KAC7D4G,CAAC,CAACC,GAAG,KAAKC,uBAAgB,CAACC,KAAK,IAAI9C,WAAW,IAAK2C,CAAC,CAACC,GAAG,KAAKC,uBAAgB,CAACE,OAAO,IAAIJ,CAAC,CAACC,GAAG,KAAKC,uBAAgB,CAACG,SAAS,CAAC,EACpI;UACA3D,oBAAoB,CAACsD,CAAC,CAAC,CAAA;AACvB,UAAA,OAAO,IAAI,CAAA;AACb,SAAA;AACA,QAAA,OAAO,KAAK,CAAA;AACd,OAAA;AAAE,KAAA,CACF,CACD,CAAA;AAEP,GAAA;EAEA,oBACE7K,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,GAAG,EAAEqG,gBAAiB;IACtB/J,SAAS,EAAG,6BAA4BA,SAAU,CAAA,CAAA;GAIhDsI,EAAAA,YAAY,KAAInI,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAE2H,SAAS,CAAKsE,KAAAA,kBAAkB,iBACvD5I,yBAAA,CAAAC,aAAA,CAACkL,gBAAa,qBACZnL,yBAAA,CAAAC,aAAA,CAACmC,cAAK,EAAA;IACJC,IAAI,EAAEC,wBAAe,CAACC,SAAU;IAChCC,KAAK,EAAEC,oBAAW,CAACC,cAAAA;GAElB2B,EAAAA,cAAM,CAAC1H,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAE2H,SAAS,EAAE,cAAc,EAAE;AAAEC,IAAAA,MAAM,EAAExG,UAAAA;GAAY,CAAC,CAC7D,CAEX,CAAC,eAEJiC,yBAAA,CAAAC,aAAA,CAAC/D,qBAAqB,EAAA;AACpBO,IAAAA,MAAM,EAAEA,MAAO;AACfC,IAAAA,OAAO,EAAE8I,cAAe;AACxB7I,IAAAA,OAAO,EAAEA,OAAQ;AACjBE,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,WAAW,EAAEA,WAAY;AACzBE,IAAAA,iBAAiB,EAAEkJ,aAAc;AACjCnJ,IAAAA,gBAAgB,EAAEA,gBAAiB;IACnCE,mBAAmB,EAAA,IAAA;AACnBC,IAAAA,SAAS,EAAEA,SAAU;AACrBC,IAAAA,YAAY,EAAEA,YAAa;AAC3BC,IAAAA,cAAc,EAAEA,cAAe;AAC/BI,IAAAA,aAAa,EAAEA,aAAc;AAC7BF,IAAAA,UAAU,EAAE0I,aAAc;AAC1BzI,IAAAA,cAAc,EAAE0I,iBAAkB;AAClCxI,IAAAA,cAAc,EAAEA,cAAe;AAC/BJ,IAAAA,QAAQ,EAAE0I,WAAAA;AAAY,GAAA,CACtB,EAEDzI,UAAU,iBACT0C,yBAAA,CAAAC,aAAA,CAACmL,gCAAa,EAAA;AACZzO,IAAAA,OAAO,EAAEA,OAAQ;AACjB0O,IAAAA,QAAQ,EAAEA,MAAMrF,aAAa,CAAC,KAAK,CAAA;AAAE,GAAA,CAExC,EACAzI,cAAc,iBACbyC,yBAAA,CAAAC,aAAA,CAACqL,wBAAU,EAAA;AACT3O,IAAAA,OAAO,EAAEA,OAAuB;AAChCiC,IAAAA,MAAM,EAAE,CAAAjC,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAAmE,eAAA,GAAPnE,OAAO,CAAEkC,MAAM,cAAAiC,eAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,eAAA,CAAiBrE,MAAM,MAAKA,MAAO;AAC3C8O,IAAAA,OAAO,EAAEA,MAAMtF,iBAAiB,CAAC,KAAK,CAAE;IACxCuF,QAAQ,EAAEA,MAAM;MACd7F,aAAa,CAAChJ,OAAO,CAAC,CAAA;MACtBsJ,iBAAiB,CAAC,KAAK,CAAC,CAAA;AAC1B,KAAA;AAAE,GAAA,CAEL,CACG,CAAA;AAEV;;;;"}
1
+ {"version":3,"file":"ThreadListItem.js","sources":["../../../../src/modules/Thread/components/ThreadList/ThreadListItemContent.tsx","../../../../src/modules/Thread/components/ThreadList/ThreadListItem.tsx"],"sourcesContent":["import React, { useContext, useRef, useState } from 'react';\nimport { EmojiContainer } from '@sendbird/chat';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\n\nimport './ThreadListItemContent.scss';\n\nimport { ReplyType } from '../../../../types';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport Avatar from '../../../../ui/Avatar';\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport { UserProfileContextInterface } from '../../../../ui/MessageContent';\nimport UserProfile from '../../../../ui/UserProfile';\nimport MessageItemMenu from '../../../../ui/MessageItemMenu';\nimport MessageItemReactionMenu from '../../../../ui/MessageItemReactionMenu';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport {\n getClassName,\n getSenderName,\n getUIKitMessageType,\n getUIKitMessageTypes,\n isOGMessage,\n isTextMessage,\n isThumbnailMessage,\n isVoiceMessage,\n SendableMessageType,\n} from '../../../../utils';\nimport MessageStatus from '../../../../ui/MessageStatus';\nimport EmojiReactions from '../../../../ui/EmojiReactions';\nimport format from 'date-fns/format';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport TextMessageItemBody from '../../../../ui/TextMessageItemBody';\nimport OGMessageItemBody from '../../../../ui/OGMessageItemBody';\nimport FileMessageItemBody from '../../../../ui/FileMessageItemBody';\nimport ThumbnailMessageItemBody from '../../../../ui/ThumbnailMessageItemBody';\nimport UnknownMessageItemBody from '../../../../ui/UnknownMessageItemBody';\nimport VoiceMessageItemBody from '../../../../ui/VoiceMessageItemBody';\nimport { useMediaQueryContext } from '../../../../lib/MediaQueryContext';\nimport useLongPress from '../../../../hooks/useLongPress';\nimport MobileMenu from '../../../../ui/MobileMenu';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nexport interface ThreadListItemContentProps {\n className?: string;\n userId: string;\n channel: GroupChannel;\n message: SendableMessageType;\n disabled?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n isMentionEnabled?: boolean;\n isReactionEnabled?: boolean;\n disableQuoteMessage?: boolean;\n replyType?: ReplyType;\n nicknamesMap?: Map<string, string>;\n emojiContainer?: EmojiContainer;\n showEdit?: (bool: boolean) => void;\n showRemove?: (bool: boolean) => void;\n showFileViewer?: (bool: boolean) => void;\n resendMessage?: (message: SendableMessageType) => void;\n toggleReaction?: (message: SendableMessageType, reactionKey: string, isReacted: boolean) => void;\n onReplyInThread?: (props: { message: SendableMessageType }) => void;\n}\n\nexport default function ThreadListItemContent({\n className,\n userId,\n channel,\n message,\n disabled = false,\n chainTop = false,\n chainBottom = false,\n isMentionEnabled = false,\n isReactionEnabled = false,\n disableQuoteMessage = false,\n replyType,\n nicknamesMap,\n emojiContainer,\n showEdit,\n showRemove,\n showFileViewer,\n resendMessage,\n toggleReaction,\n onReplyInThread,\n}: ThreadListItemContentProps): React.ReactElement {\n const messageTypes = getUIKitMessageTypes();\n const { isMobile } = useMediaQueryContext();\n const { dateLocale } = useLocalization();\n const { config } = useSendbirdStateContext();\n const [supposedHover, setSupposedHover] = useState(false);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContextInterface>(UserProfileContext);\n const avatarRef = useRef(null);\n\n const isByMe = (userId === (message as SendableMessageType)?.sender?.userId)\n || ((message as SendableMessageType)?.sendingStatus === 'pending')\n || ((message as SendableMessageType)?.sendingStatus === 'failed');\n const useReplying = !!((replyType === 'QUOTE_REPLY' || replyType === 'THREAD')\n && message?.parentMessageId && message?.parentMessage\n && !disableQuoteMessage\n );\n const supposedHoverClassName = supposedHover ? 'sendbird-mouse-hover' : '';\n const isReactionEnabledInChannel = isReactionEnabled && !channel?.isEphemeral;\n const isOgMessageEnabledInGroupChannel = channel.isGroupChannel() && config.groupChannel.enableOgtag;\n\n // Mobile\n const mobileMenuRef = useRef(null);\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n const longPress = useLongPress({\n onLongPress: () => {\n if (isMobile) {\n setShowMobileMenu(true);\n }\n },\n }, {\n shouldPreventDefault: false,\n });\n\n return (\n <div\n className={`sendbird-thread-list-item-content ${className} ${isByMe ? 'outgoing' : 'incoming'}`}\n ref={mobileMenuRef}\n >\n <div className={`sendbird-thread-list-item-content__left ${isReactionEnabledInChannel ? 'use-reaction' : ''} ${isByMe ? 'outgoing' : 'incoming'}`}>\n {(!isByMe && !chainBottom) && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-thread-list-item-content__left__avatar\"\n src={channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.profileUrl || message?.sender?.profileUrl || ''}\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown?.();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {renderUserProfile\n ? renderUserProfile({ user: message?.sender, close: closeDropdown })\n : <UserProfile user={message?.sender} onSuccess={closeDropdown} />\n }\n </MenuItems>\n )}\n />\n )}\n {(isByMe && !isMobile) && (\n <div\n className={`sendbird-thread-list-item-content-menu ${isReactionEnabledInChannel ? 'use-reaction' : ''\n } ${isByMe ? 'outgoing' : 'incoming'\n } ${supposedHoverClassName}`}\n >\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as SendableMessageType}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showEdit={showEdit}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as SendableMessageType}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n </div>\n )}\n </div>\n <div\n className=\"sendbird-thread-list-item-content__middle\"\n {...(isMobile) ? { ...longPress } : {}}\n >\n {(!isByMe && !chainTop && !useReplying) && (\n <Label\n className=\"sendbird-thread-list-item-content__middle__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n channel?.members?.find((member) => member?.userId === message?.sender?.userId)?.nickname\n || getSenderName(message as SendableMessageType)\n // TODO: Divide getting profileUrl logic to utils\n }\n </Label>\n )}\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container'])} >\n {/* message status component */}\n {(isByMe && !chainBottom) && (\n <div className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'left', supposedHoverClassName])}>\n <div className=\"sendbird-thread-list-item-content__middle__body-container__created-at__component-container\">\n <MessageStatus\n message={message as SendableMessageType}\n channel={channel}\n />\n </div>\n </div>\n )}\n {/* message item body components */}\n {isOgMessageEnabledInGroupChannel && isOGMessage(message as UserMessage)\n ? (<OGMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n ) : isTextMessage(message as UserMessage) && (\n <TextMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as UserMessage}\n isByMe={isByMe}\n isMentionEnabled={isMentionEnabled}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {isVoiceMessage(message as FileMessage) && (\n <VoiceMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n channelUrl={channel?.url}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.FILE) && (\n <FileMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n truncateLimit={isByMe ? 18 : 14}\n />\n )}\n {(isThumbnailMessage(message as FileMessage)) && (\n <ThumbnailMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message as FileMessage}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n showFileViewer={showFileViewer}\n style={{\n width: isMobile ? '100%' : '200px',\n height: '148px',\n }}\n />\n )}\n {(getUIKitMessageType((message as FileMessage)) === messageTypes.UNKNOWN) && (\n <UnknownMessageItemBody\n className=\"sendbird-thread-list-item-content__middle__message-item-body\"\n message={message}\n isByMe={isByMe}\n isReactionEnabled={isReactionEnabledInChannel}\n />\n )}\n {/* reactions */}\n {(isReactionEnabledInChannel && message?.reactions?.length > 0) && (\n <div className={getClassName([\n 'sendbird-thread-list-item-content-reactions',\n (!isByMe || isThumbnailMessage(message as FileMessage) || (isOgMessageEnabledInGroupChannel && isOGMessage(message as UserMessage))) ? '' : 'primary',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as SendableMessageType}\n channel={channel}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n memberNicknamesMap={nicknamesMap}\n toggleReaction={toggleReaction}\n />\n </div>\n )}\n {(!isByMe && !chainBottom) && (\n <Label\n className={getClassName(['sendbird-thread-list-item-content__middle__body-container__created-at', 'right', supposedHoverClassName])}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt || 0, 'p', {\n locale: dateLocale,\n })}\n </Label>\n )}\n </div>\n </div>\n <div\n className={`sendbird-thread-list-item-content__right ${chainTop ? 'chain-top' : ''\n } ${isByMe ? 'outgoing' : 'incoming'}`}\n >\n {(!isByMe && !isMobile) && (\n <div className={`sendbird-thread-list-item-content-menu ${supposedHoverClassName}`}>\n {isReactionEnabledInChannel && (\n <MessageItemReactionMenu\n className=\"sendbird-thread-list-item-content-menu__reaction-menu\"\n message={message as SendableMessageType}\n userId={userId}\n spaceFromTrigger={{}}\n emojiContainer={emojiContainer}\n toggleReaction={toggleReaction}\n setSupposedHover={setSupposedHover}\n />\n )}\n <MessageItemMenu\n className=\"sendbird-thread-list-item-content-menu__normal-menu\"\n channel={channel}\n message={message as SendableMessageType}\n isByMe={isByMe}\n replyType={replyType}\n disabled={disabled}\n showRemove={showRemove}\n resendMessage={resendMessage}\n setSupposedHover={setSupposedHover}\n onReplyInThread={onReplyInThread}\n />\n </div>\n )}\n </div>\n {showMobileMenu && (\n <MobileMenu\n parentRef={mobileMenuRef}\n channel={channel}\n message={message}\n userId={userId}\n replyType={replyType}\n hideMenu={() => {\n setShowMobileMenu(false);\n }}\n isReactionEnabled={isReactionEnabled}\n isByMe={isByMe}\n emojiContainer={emojiContainer}\n showEdit={showEdit}\n showRemove={showRemove}\n toggleReaction={toggleReaction}\n isOpenedFromThread\n />\n )}\n </div>\n );\n}\n","import React, { useMemo, useState, useRef, useEffect, useLayoutEffect } from 'react';\nimport format from 'date-fns/format';\nimport { FileMessage } from '@sendbird/chat/message';\n\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport RemoveMessage from '../RemoveMessageModal';\nimport FileViewer from '../../../../ui/FileViewer';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport SuggestedMentionList from '../../../Channel/components/SuggestedMentionList';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { ThreadListStateTypes } from '../../types';\nimport { MessageInputKeys } from '../../../../ui/MessageInput/const';\nimport ThreadListItemContent from './ThreadListItemContent';\nimport { Role } from '../../../../lib/types';\nimport { useDirtyGetMentions } from '../../../Message/hooks/useDirtyGetMentions';\nimport { getIsReactionEnabled } from '../../../../utils/getIsReactionEnabled';\nimport { SendableMessageType } from '../../../../utils';\n\nexport interface ThreadListItemProps {\n className?: string;\n message: SendableMessageType;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n renderCustomSeparator?: (props: { message: SendableMessageType }) => React.ReactElement;\n handleScroll?: () => void;\n}\n\nexport default function ThreadListItem({\n className,\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderCustomSeparator,\n handleScroll,\n}: ThreadListItemProps): React.ReactElement {\n const { stores, config } = useSendbirdStateContext();\n const {\n isReactionEnabled,\n isMentionEnabled,\n isOnline,\n replyType,\n userMention,\n logger,\n } = config;\n const userId = stores?.userStore?.user?.userId;\n const { dateLocale } = useLocalization();\n const threadContext = useThreadContext?.();\n const {\n currentChannel,\n nicknamesMap,\n emojiContainer,\n toggleReaction,\n threadListState,\n updateMessage,\n resendMessage,\n deleteMessage,\n isMuted,\n isChannelFrozen,\n } = threadContext;\n const openingMessage = threadContext?.message;\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const usingReaction = getIsReactionEnabled({\n globalLevel: isReactionEnabled,\n isSuper: currentChannel.isSuper,\n isBroadcast: currentChannel.isBroadcast,\n });\n\n // Move to message\n const messageScrollRef = useRef(null);\n useLayoutEffect(() => {\n if (openingMessage?.messageId === message?.messageId && messageScrollRef?.current) {\n messageScrollRef.current?.scrollIntoView({ block: 'center', inline: 'center' });\n }\n }, [openingMessage, messageScrollRef?.current]);\n\n // reactions\n useLayoutEffect(() => {\n handleScroll?.();\n }, [showEdit, message?.reactions?.length]);\n\n // mention\n const editMessageInputRef = useRef(null);\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 displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isMuted\n && !(isChannelFrozen && !(currentChannel.myRole === Role.OPERATOR));\n\n const mentionNodes = useDirtyGetMentions({ ref: editMessageInputRef }, { logger });\n const ableMention = mentionNodes?.length < userMention?.maxMentionCount;\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 // edit input\n const disabled = !(threadListState === ThreadListStateTypes.INITIALIZED)\n || !isOnline\n || isMuted\n || isChannelFrozen;\n\n // memorize\n const MemorizedSeparator = useMemo(() => {\n if (typeof renderCustomSeparator === 'function') {\n return renderCustomSeparator?.({ message });\n }\n }, [message, renderCustomSeparator]);\n\n // Edit message\n if (showEdit && message.isUserMessage()) {\n return (\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={userMention?.maxMentionCount}\n maxSuggestionCount={userMention?.maxSuggestionCount}\n />\n )\n }\n <MessageInput\n isEdit\n channel={currentChannel}\n disabled={disabled}\n ref={editMessageInputRef}\n mentionSelectedUser={selectedUser}\n isMentionEnabled={isMentionEnabled}\n message={message}\n onStartTyping={() => {\n currentChannel?.startTyping?.();\n }}\n onUpdateMessage={({ messageId, message, mentionTemplate }) => {\n updateMessage({\n messageId,\n message,\n mentionedUsers,\n mentionTemplate,\n });\n setShowEdit(false);\n currentChannel?.endTyping?.();\n }}\n onCancelEdit={() => {\n setMentionNickname('');\n setMentionedUsers([]);\n setMentionedUserIds([]);\n setMentionSuggestedUsers([]);\n setShowEdit(false);\n currentChannel?.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 ref={messageScrollRef}\n className={`sendbird-thread-list-item ${className}`}\n >\n {/* date separator */}\n {\n hasSeparator && message?.createdAt && (MemorizedSeparator || (\n <DateSeparator>\n <Label\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {format(message?.createdAt, 'MMM dd, yyyy', { locale: dateLocale })}\n </Label>\n </DateSeparator>\n ))\n }\n <ThreadListItemContent\n userId={userId}\n channel={currentChannel}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n isReactionEnabled={usingReaction}\n isMentionEnabled={isMentionEnabled}\n disableQuoteMessage\n replyType={replyType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n resendMessage={resendMessage}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n toggleReaction={toggleReaction}\n showEdit={setShowEdit}\n />\n {/* modal */}\n {showRemove && (\n <RemoveMessage\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )}\n {showFileViewer && (\n <FileViewer\n message={message as FileMessage}\n isByMe={message?.sender?.userId === userId}\n onClose={() => setShowFileViewer(false)}\n onDelete={() => {\n deleteMessage(message);\n setShowFileViewer(false);\n }}\n />\n )}\n </div>\n );\n}\n"],"names":["ThreadListItemContent","_ref","_sender","_channel$members2","_channel$members2$fin","_message$reactions","className","userId","channel","message","disabled","chainTop","chainBottom","isMentionEnabled","isReactionEnabled","disableQuoteMessage","replyType","nicknamesMap","emojiContainer","showEdit","showRemove","showFileViewer","resendMessage","toggleReaction","onReplyInThread","messageTypes","getUIKitMessageTypes","isMobile","useMediaQueryContext","dateLocale","useLocalization","config","useSendbirdStateContext","supposedHover","setSupposedHover","useState","disableUserProfile","renderUserProfile","useContext","UserProfileContext","avatarRef","useRef","isByMe","sender","sendingStatus","useReplying","parentMessageId","parentMessage","supposedHoverClassName","isReactionEnabledInChannel","isEphemeral","isOgMessageEnabledInGroupChannel","isGroupChannel","groupChannel","enableOgtag","mobileMenuRef","showMobileMenu","setShowMobileMenu","longPress","useLongPress","onLongPress","shouldPreventDefault","React","createElement","ref","ContextMenu","menuTrigger","toggleDropdown","_channel$members","_channel$members$find","_message$sender2","Avatar","src","members","find","member","_message$sender","profileUrl","width","height","onClick","menuItems","closeDropdown","MenuItems","parentRef","parentContainRef","style","paddingTop","paddingBottom","user","close","UserProfile","onSuccess","MessageItemMenu","MessageItemReactionMenu","spaceFromTrigger","_extends","_objectSpread","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","_message$sender3","nickname","getSenderName","getClassName","MessageStatus","isOGMessage","OGMessageItemBody","isTextMessage","TextMessageItemBody","isVoiceMessage","VoiceMessageItemBody","channelUrl","url","getUIKitMessageType","FILE","FileMessageItemBody","truncateLimit","isThumbnailMessage","ThumbnailMessageItemBody","UNKNOWN","UnknownMessageItemBody","reactions","length","EmojiReactions","memberNicknamesMap","CAPTION_3","format","createdAt","locale","MobileMenu","hideMenu","isOpenedFromThread","ThreadListItem","_stores$userStore","_stores$userStore$use","hasSeparator","renderCustomSeparator","handleScroll","stores","isOnline","userMention","logger","userStore","threadContext","useThreadContext","currentChannel","threadListState","updateMessage","deleteMessage","isMuted","isChannelFrozen","openingMessage","setShowEdit","setShowRemove","setShowFileViewer","usingReaction","getIsReactionEnabled","globalLevel","isSuper","isBroadcast","messageScrollRef","useLayoutEffect","messageId","current","_messageScrollRef$cur","scrollIntoView","block","inline","editMessageInputRef","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","displaySuggestedMentionList","myRole","Role","OPERATOR","mentionNodes","useDirtyGetMentions","ableMention","maxMentionCount","useEffect","filter","_ref2","i","indexOf","splice","ThreadListStateTypes","INITIALIZED","MemorizedSeparator","useMemo","isUserMessage","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","onFocusItemChange","onFetchUsers","users","ableAddMention","maxSuggestionCount","MessageInput","isEdit","mentionSelectedUser","onStartTyping","_currentChannel$start","startTyping","call","onUpdateMessage","_ref3","_currentChannel$endTy","mentionTemplate","endTyping","onCancelEdit","_currentChannel$endTy2","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","DateSeparator","RemoveMessage","onCancel","FileViewer","onClose","onDelete"],"mappings":"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"}