@sendbird/uikit-react 3.4.6-rc.1 → 3.4.7-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (888) hide show
  1. package/App.js +177 -172
  2. package/App.js.map +1 -1
  3. package/Channel/components/ChannelHeader.js +44 -39
  4. package/Channel/components/ChannelHeader.js.map +1 -1
  5. package/Channel/components/ChannelUI.js +63 -61
  6. package/Channel/components/ChannelUI.js.map +1 -1
  7. package/Channel/components/FileViewer.js +52 -46
  8. package/Channel/components/FileViewer.js.map +1 -1
  9. package/Channel/components/FrozenNotification.js +12 -9
  10. package/Channel/components/FrozenNotification.js.map +1 -1
  11. package/Channel/components/Message.js +165 -183
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +106 -113
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +128 -130
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +32 -28
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +134 -153
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +43 -42
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +18 -16
  24. package/Channel/components/UnreadCount.js.map +1 -1
  25. package/Channel/context.js +13 -14
  26. package/Channel/context.js.map +1 -1
  27. package/Channel.js +39 -40
  28. package/Channel.js.map +1 -1
  29. package/ChannelList/components/AddChannel.js +27 -29
  30. package/ChannelList/components/AddChannel.js.map +1 -1
  31. package/ChannelList/components/ChannelListHeader.js +30 -21
  32. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  33. package/ChannelList/components/ChannelListUI.js +91 -98
  34. package/ChannelList/components/ChannelListUI.js.map +1 -1
  35. package/ChannelList/components/ChannelPreview.js +70 -73
  36. package/ChannelList/components/ChannelPreview.js.map +1 -1
  37. package/ChannelList/components/ChannelPreviewAction.js +30 -30
  38. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  39. package/ChannelList/context.js +7 -8
  40. package/ChannelList/context.js.map +1 -1
  41. package/ChannelList.js +30 -31
  42. package/ChannelList.js.map +1 -1
  43. package/{ChannelListProvider-32bd4597.js → ChannelListProvider-c1d2f942.js} +160 -156
  44. package/ChannelListProvider-c1d2f942.js.map +1 -0
  45. package/{ChannelProvider-4e33aa60.js → ChannelProvider-4ab3a851.js} +429 -412
  46. package/ChannelProvider-4ab3a851.js.map +1 -0
  47. package/ChannelSettings/components/ChannelProfile.js +33 -37
  48. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  49. package/ChannelSettings/components/ChannelSettingsUI.js +45 -40
  50. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  51. package/ChannelSettings/components/EditDetailsModal.js +47 -48
  52. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  53. package/ChannelSettings/components/LeaveChannel.js +38 -35
  54. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  55. package/ChannelSettings/components/ModerationPanel.js +511 -556
  56. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  57. package/ChannelSettings/components/UserListItem.js +69 -69
  58. package/ChannelSettings/components/UserListItem.js.map +1 -1
  59. package/ChannelSettings/components/UserPanel.js +25 -27
  60. package/ChannelSettings/components/UserPanel.js.map +1 -1
  61. package/ChannelSettings/context.js +53 -49
  62. package/ChannelSettings/context.js.map +1 -1
  63. package/ChannelSettings.js +19 -18
  64. package/ChannelSettings.js.map +1 -1
  65. package/CreateChannel/components/CreateChannelUI.js +24 -21
  66. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  67. package/CreateChannel/components/InviteUsers.js +92 -93
  68. package/CreateChannel/components/InviteUsers.js.map +1 -1
  69. package/CreateChannel/components/SelectChannelType.js +41 -35
  70. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  71. package/CreateChannel/context.js +4 -4
  72. package/CreateChannel.js +22 -20
  73. package/CreateChannel.js.map +1 -1
  74. package/CreateChannelProvider-d2188082.js +44 -0
  75. package/CreateChannelProvider-d2188082.js.map +1 -0
  76. package/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -34
  77. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  78. package/CreateOpenChannel/context.js +33 -28
  79. package/CreateOpenChannel/context.js.map +1 -1
  80. package/CreateOpenChannel.js +18 -16
  81. package/CreateOpenChannel.js.map +1 -1
  82. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  83. package/EditUserProfile/context.js.map +1 -1
  84. package/EditUserProfile.js +18 -16
  85. package/EditUserProfile.js.map +1 -1
  86. package/LocalizationContext-9c54e783.js +20 -0
  87. package/{LocalizationContext-62966630.js.map → LocalizationContext-9c54e783.js.map} +1 -1
  88. package/MediaQueryContext-1988a4bc.js +82 -0
  89. package/MediaQueryContext-1988a4bc.js.map +1 -0
  90. package/MemberList-80ea8604.js +395 -0
  91. package/MemberList-80ea8604.js.map +1 -0
  92. package/Message/context.js +11 -10
  93. package/Message/context.js.map +1 -1
  94. package/MessageSearch/components/MessageSearchUI.js +59 -54
  95. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  96. package/MessageSearch/context.js +176 -165
  97. package/MessageSearch/context.js.map +1 -1
  98. package/MessageSearch.js +45 -47
  99. package/MessageSearch.js.map +1 -1
  100. package/OpenChannel/components/FrozenChannelNotification.js +8 -6
  101. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  102. package/OpenChannel/components/OpenChannelHeader.js +27 -22
  103. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  104. package/OpenChannel/components/OpenChannelInput.js +32 -28
  105. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  106. package/OpenChannel/components/OpenChannelMessage.js +171 -172
  107. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  108. package/OpenChannel/components/OpenChannelMessageList.js +60 -65
  109. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  110. package/OpenChannel/components/OpenChannelUI.js +50 -48
  111. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  112. package/OpenChannel/context.js +8 -8
  113. package/OpenChannel.js +32 -33
  114. package/OpenChannel.js.map +1 -1
  115. package/OpenChannelList/components/OpenChannelListUI.js +58 -59
  116. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  117. package/OpenChannelList/components/OpenChannelPreview.js +21 -22
  118. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  119. package/OpenChannelList/context.js +3 -3
  120. package/OpenChannelList.js +24 -23
  121. package/OpenChannelList.js.map +1 -1
  122. package/{OpenChannelListProvider-8be6450e.js → OpenChannelListProvider-c76663eb.js} +177 -155
  123. package/OpenChannelListProvider-c76663eb.js.map +1 -0
  124. package/OpenChannelProvider-fe3326aa.js +1883 -0
  125. package/{cjs/OpenChannelProvider-0bbac562.js.map → OpenChannelProvider-fe3326aa.js.map} +1 -1
  126. package/OpenChannelSettings/components/EditDetailsModal.js +46 -46
  127. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  128. package/OpenChannelSettings/components/OpenChannelProfile.js +26 -26
  129. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  130. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -36
  131. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  132. package/OpenChannelSettings/components/OperatorUI.js +508 -533
  133. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  134. package/OpenChannelSettings/components/ParticipantUI.js +15 -15
  135. package/OpenChannelSettings/context.js +54 -56
  136. package/OpenChannelSettings/context.js.map +1 -1
  137. package/OpenChannelSettings.js +19 -19
  138. package/OpenChannelSettings.js.map +1 -1
  139. package/RemoveMessageModal-99b5bab4.js +36 -0
  140. package/RemoveMessageModal-99b5bab4.js.map +1 -0
  141. package/SendbirdProvider.js +546 -405
  142. package/SendbirdProvider.js.map +1 -1
  143. package/Thread/components/ParentMessageInfo.js +157 -170
  144. package/Thread/components/ParentMessageInfo.js.map +1 -1
  145. package/Thread/components/ParentMessageInfoItem.js +68 -62
  146. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  147. package/Thread/components/ThreadHeader.js +22 -22
  148. package/Thread/components/ThreadHeader.js.map +1 -1
  149. package/Thread/components/ThreadList.js +82 -77
  150. package/Thread/components/ThreadList.js.map +1 -1
  151. package/Thread/components/ThreadListItem.js +208 -219
  152. package/Thread/components/ThreadListItem.js.map +1 -1
  153. package/Thread/components/ThreadMessageInput.js +103 -105
  154. package/Thread/components/ThreadMessageInput.js.map +1 -1
  155. package/Thread/components/ThreadUI.js +130 -116
  156. package/Thread/components/ThreadUI.js.map +1 -1
  157. package/Thread/context/types.js +9 -9
  158. package/Thread/context/types.js.map +1 -1
  159. package/Thread/context.js +8 -8
  160. package/Thread.js +55 -55
  161. package/Thread.js.map +1 -1
  162. package/ThreadProvider-0a3c5f37.js +1692 -0
  163. package/ThreadProvider-0a3c5f37.js.map +1 -0
  164. package/{UserProfileContext-7083bd82.js → UserProfileContext-a8aa4c0f.js} +1 -1
  165. package/{UserProfileContext-7083bd82.js.map → UserProfileContext-a8aa4c0f.js.map} +1 -1
  166. package/{VoiceMessageInputWrapper-4479a1bd.js → VoiceMessageInputWrapper-ff160b51.js} +60 -59
  167. package/VoiceMessageInputWrapper-ff160b51.js.map +1 -0
  168. package/VoicePlayer/context.js +3 -3
  169. package/VoicePlayer/useVoicePlayer.js +38 -43
  170. package/VoicePlayer/useVoicePlayer.js.map +1 -1
  171. package/VoiceRecorder/context.js +46 -45
  172. package/VoiceRecorder/context.js.map +1 -1
  173. package/VoiceRecorder/useVoiceRecorder.js +43 -40
  174. package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  175. package/{WebAudioUtils-f57301b1.js → WebAudioUtils-5f08f354.js} +37 -37
  176. package/{WebAudioUtils-f57301b1.js.map → WebAudioUtils-5f08f354.js.map} +1 -1
  177. package/{_rollupPluginBabelHelpers-48b56150.js → _rollupPluginBabelHelpers-b2d9bfc5.js} +2 -2
  178. package/_rollupPluginBabelHelpers-b2d9bfc5.js.map +1 -0
  179. package/{actionTypes-9badb1b4.js → actionTypes-e436fe6c.js} +2 -2
  180. package/{actionTypes-9badb1b4.js.map → actionTypes-e436fe6c.js.map} +1 -1
  181. package/cjs/App.js +177 -172
  182. package/cjs/App.js.map +1 -1
  183. package/cjs/Channel/components/ChannelHeader.js +44 -39
  184. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  185. package/cjs/Channel/components/ChannelUI.js +63 -61
  186. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  187. package/cjs/Channel/components/FileViewer.js +52 -46
  188. package/cjs/Channel/components/FileViewer.js.map +1 -1
  189. package/cjs/Channel/components/FrozenNotification.js +12 -9
  190. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  191. package/cjs/Channel/components/Message.js +165 -183
  192. package/cjs/Channel/components/Message.js.map +1 -1
  193. package/cjs/Channel/components/MessageInput.js +106 -113
  194. package/cjs/Channel/components/MessageInput.js.map +1 -1
  195. package/cjs/Channel/components/MessageList.js +128 -130
  196. package/cjs/Channel/components/MessageList.js.map +1 -1
  197. package/cjs/Channel/components/RemoveMessageModal.js +32 -28
  198. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  199. package/cjs/Channel/components/SuggestedMentionList.js +134 -153
  200. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  201. package/cjs/Channel/components/TypingIndicator.js +43 -42
  202. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  203. package/cjs/Channel/components/UnreadCount.js +18 -16
  204. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  205. package/cjs/Channel/context.js +14 -18
  206. package/cjs/Channel/context.js.map +1 -1
  207. package/cjs/Channel.js +39 -40
  208. package/cjs/Channel.js.map +1 -1
  209. package/cjs/ChannelList/components/AddChannel.js +27 -29
  210. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  211. package/cjs/ChannelList/components/ChannelListHeader.js +30 -21
  212. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  213. package/cjs/ChannelList/components/ChannelListUI.js +91 -98
  214. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  215. package/cjs/ChannelList/components/ChannelPreview.js +70 -73
  216. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  217. package/cjs/ChannelList/components/ChannelPreviewAction.js +30 -30
  218. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  219. package/cjs/ChannelList/context.js +7 -8
  220. package/cjs/ChannelList/context.js.map +1 -1
  221. package/cjs/ChannelList.js +30 -31
  222. package/cjs/ChannelList.js.map +1 -1
  223. package/cjs/{ChannelListProvider-c90e6d9b.js → ChannelListProvider-61d644da.js} +160 -156
  224. package/cjs/ChannelListProvider-61d644da.js.map +1 -0
  225. package/cjs/{ChannelProvider-6da44044.js → ChannelProvider-620bb354.js} +430 -412
  226. package/cjs/ChannelProvider-620bb354.js.map +1 -0
  227. package/cjs/ChannelSettings/components/ChannelProfile.js +33 -37
  228. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  229. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +45 -40
  230. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  231. package/cjs/ChannelSettings/components/EditDetailsModal.js +47 -48
  232. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  233. package/cjs/ChannelSettings/components/LeaveChannel.js +38 -35
  234. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  235. package/cjs/ChannelSettings/components/ModerationPanel.js +511 -556
  236. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  237. package/cjs/ChannelSettings/components/UserListItem.js +69 -69
  238. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  239. package/cjs/ChannelSettings/components/UserPanel.js +25 -27
  240. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  241. package/cjs/ChannelSettings/context.js +53 -49
  242. package/cjs/ChannelSettings/context.js.map +1 -1
  243. package/cjs/ChannelSettings.js +19 -18
  244. package/cjs/ChannelSettings.js.map +1 -1
  245. package/cjs/CreateChannel/components/CreateChannelUI.js +24 -21
  246. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  247. package/cjs/CreateChannel/components/InviteUsers.js +92 -93
  248. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  249. package/cjs/CreateChannel/components/SelectChannelType.js +41 -35
  250. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  251. package/cjs/CreateChannel/context.js +4 -4
  252. package/cjs/CreateChannel.js +22 -20
  253. package/cjs/CreateChannel.js.map +1 -1
  254. package/cjs/CreateChannelProvider-88b316a6.js +52 -0
  255. package/cjs/CreateChannelProvider-88b316a6.js.map +1 -0
  256. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -34
  257. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  258. package/cjs/CreateOpenChannel/context.js +33 -28
  259. package/cjs/CreateOpenChannel/context.js.map +1 -1
  260. package/cjs/CreateOpenChannel.js +18 -16
  261. package/cjs/CreateOpenChannel.js.map +1 -1
  262. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  263. package/cjs/EditUserProfile/context.js.map +1 -1
  264. package/cjs/EditUserProfile.js +18 -16
  265. package/cjs/EditUserProfile.js.map +1 -1
  266. package/cjs/{LocalizationContext-4c1a8e44.js → LocalizationContext-af96cf5f.js} +9 -9
  267. package/cjs/{LocalizationContext-4c1a8e44.js.map → LocalizationContext-af96cf5f.js.map} +1 -1
  268. package/cjs/MediaQueryContext-8ec3f647.js +89 -0
  269. package/cjs/MediaQueryContext-8ec3f647.js.map +1 -0
  270. package/cjs/MemberList-7513f386.js +401 -0
  271. package/cjs/MemberList-7513f386.js.map +1 -0
  272. package/cjs/Message/context.js +11 -10
  273. package/cjs/Message/context.js.map +1 -1
  274. package/cjs/MessageSearch/components/MessageSearchUI.js +59 -54
  275. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  276. package/cjs/MessageSearch/context.js +176 -165
  277. package/cjs/MessageSearch/context.js.map +1 -1
  278. package/cjs/MessageSearch.js +45 -47
  279. package/cjs/MessageSearch.js.map +1 -1
  280. package/cjs/OpenChannel/components/FrozenChannelNotification.js +8 -6
  281. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  282. package/cjs/OpenChannel/components/OpenChannelHeader.js +27 -22
  283. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  284. package/cjs/OpenChannel/components/OpenChannelInput.js +32 -28
  285. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  286. package/cjs/OpenChannel/components/OpenChannelMessage.js +171 -172
  287. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  288. package/cjs/OpenChannel/components/OpenChannelMessageList.js +60 -65
  289. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  290. package/cjs/OpenChannel/components/OpenChannelUI.js +50 -48
  291. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  292. package/cjs/OpenChannel/context.js +8 -8
  293. package/cjs/OpenChannel.js +32 -33
  294. package/cjs/OpenChannel.js.map +1 -1
  295. package/cjs/OpenChannelList/components/OpenChannelListUI.js +58 -59
  296. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  297. package/cjs/OpenChannelList/components/OpenChannelPreview.js +21 -22
  298. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  299. package/cjs/OpenChannelList/context.js +3 -3
  300. package/cjs/OpenChannelList.js +24 -23
  301. package/cjs/OpenChannelList.js.map +1 -1
  302. package/cjs/OpenChannelListProvider-e78bf867.js +439 -0
  303. package/cjs/OpenChannelListProvider-e78bf867.js.map +1 -0
  304. package/cjs/OpenChannelProvider-ea1d7b37.js +1892 -0
  305. package/cjs/OpenChannelProvider-ea1d7b37.js.map +1 -0
  306. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +46 -46
  307. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  308. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +26 -26
  309. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  310. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -36
  311. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  312. package/cjs/OpenChannelSettings/components/OperatorUI.js +508 -533
  313. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  314. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
  315. package/cjs/OpenChannelSettings/context.js +54 -56
  316. package/cjs/OpenChannelSettings/context.js.map +1 -1
  317. package/cjs/OpenChannelSettings.js +19 -19
  318. package/cjs/OpenChannelSettings.js.map +1 -1
  319. package/cjs/{RemoveMessageModal-63e870f4.js → RemoveMessageModal-15d1dcbd.js} +19 -13
  320. package/cjs/RemoveMessageModal-15d1dcbd.js.map +1 -0
  321. package/cjs/SendbirdProvider.js +546 -405
  322. package/cjs/SendbirdProvider.js.map +1 -1
  323. package/cjs/Thread/components/ParentMessageInfo.js +157 -170
  324. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  325. package/cjs/Thread/components/ParentMessageInfoItem.js +68 -62
  326. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  327. package/cjs/Thread/components/ThreadHeader.js +22 -22
  328. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  329. package/cjs/Thread/components/ThreadList.js +82 -77
  330. package/cjs/Thread/components/ThreadList.js.map +1 -1
  331. package/cjs/Thread/components/ThreadListItem.js +208 -219
  332. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  333. package/cjs/Thread/components/ThreadMessageInput.js +103 -105
  334. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  335. package/cjs/Thread/components/ThreadUI.js +130 -116
  336. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  337. package/cjs/Thread/context/types.js +13 -9
  338. package/cjs/Thread/context/types.js.map +1 -1
  339. package/cjs/Thread/context.js +8 -8
  340. package/cjs/Thread.js +55 -55
  341. package/cjs/Thread.js.map +1 -1
  342. package/cjs/ThreadProvider-572574d7.js +1701 -0
  343. package/cjs/ThreadProvider-572574d7.js.map +1 -0
  344. package/cjs/{UserProfileContext-34f6be33.js → UserProfileContext-f068b0ba.js} +1 -1
  345. package/cjs/{UserProfileContext-34f6be33.js.map → UserProfileContext-f068b0ba.js.map} +1 -1
  346. package/cjs/{VoiceMessageInputWrapper-770a185c.js → VoiceMessageInputWrapper-db7f2b72.js} +60 -59
  347. package/cjs/VoiceMessageInputWrapper-db7f2b72.js.map +1 -0
  348. package/cjs/VoicePlayer/context.js +3 -3
  349. package/cjs/VoicePlayer/useVoicePlayer.js +38 -43
  350. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
  351. package/cjs/VoiceRecorder/context.js +46 -45
  352. package/cjs/VoiceRecorder/context.js.map +1 -1
  353. package/cjs/VoiceRecorder/useVoiceRecorder.js +43 -40
  354. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  355. package/cjs/{WebAudioUtils-70bcccc3.js → WebAudioUtils-043bdeca.js} +37 -37
  356. package/cjs/{WebAudioUtils-70bcccc3.js.map → WebAudioUtils-043bdeca.js.map} +1 -1
  357. package/cjs/{_rollupPluginBabelHelpers-8164e35a.js → _rollupPluginBabelHelpers-c5955c81.js} +2 -1
  358. package/cjs/_rollupPluginBabelHelpers-c5955c81.js.map +1 -0
  359. package/cjs/{actionTypes-4a2939b3.js → actionTypes-f2efbb7c.js} +2 -2
  360. package/cjs/{actionTypes-4a2939b3.js.map → actionTypes-f2efbb7c.js.map} +1 -1
  361. package/cjs/{color-f43f059a.js → color-afeb8dc2.js} +13 -12
  362. package/cjs/color-afeb8dc2.js.map +1 -0
  363. package/cjs/{compareIds-e5f7db38.js → compareIds-18b3b1d6.js} +1 -1
  364. package/cjs/{compareIds-e5f7db38.js.map → compareIds-18b3b1d6.js.map} +1 -1
  365. package/cjs/const-6691e574.js +20 -0
  366. package/cjs/const-6691e574.js.map +1 -0
  367. package/cjs/{const-611ac2dd.js → const-ab0f6056.js} +4 -4
  368. package/cjs/{const-611ac2dd.js.map → const-ab0f6056.js.map} +1 -1
  369. package/cjs/consts-6ec77e9a.js +6 -0
  370. package/cjs/consts-6ec77e9a.js.map +1 -0
  371. package/cjs/consts-a422c2f9.js +6 -0
  372. package/cjs/{consts-e0f44b83.js.map → consts-a422c2f9.js.map} +1 -1
  373. package/cjs/{consts-82dce75d.js → consts-a5382bc1.js} +18 -14
  374. package/cjs/{consts-82dce75d.js.map → consts-a5382bc1.js.map} +1 -1
  375. package/cjs/consts-bc27beff.js +6 -0
  376. package/cjs/{consts-d9ecf2d7.js.map → consts-bc27beff.js.map} +1 -1
  377. package/cjs/{context-32080e3d.js → context-60c4d3b7.js} +6 -5
  378. package/cjs/{context-32080e3d.js.map → context-60c4d3b7.js.map} +1 -1
  379. package/cjs/dist/index.css +246 -142
  380. package/cjs/dist/index.css.map +1 -1
  381. package/cjs/handlers/OpenChannelHandler.js.map +1 -1
  382. package/cjs/handlers/SessionHandler.js.map +1 -1
  383. package/cjs/index-0b344bd7.js +57 -0
  384. package/cjs/index-0b344bd7.js.map +1 -0
  385. package/cjs/{index-fc3f351f.js → index-4ee95667.js} +2 -4
  386. package/cjs/index-4ee95667.js.map +1 -0
  387. package/cjs/{index-584a87f3.js → index-68c57136.js} +1 -1
  388. package/cjs/{index-584a87f3.js.map → index-68c57136.js.map} +1 -1
  389. package/cjs/{index-6253d289.js → index-6cb4a530.js} +3 -12
  390. package/cjs/index-6cb4a530.js.map +1 -0
  391. package/cjs/{index-6295003c.js → index-73643285.js} +2 -2
  392. package/cjs/{index-6295003c.js.map → index-73643285.js.map} +1 -1
  393. package/cjs/index-76afc309.js +197 -0
  394. package/cjs/index-76afc309.js.map +1 -0
  395. package/cjs/{index-bddcf750.js → index-8049c2a3.js} +22 -15
  396. package/cjs/index-8049c2a3.js.map +1 -0
  397. package/cjs/{index-ecac7544.js → index-83d1d15e.js} +10 -30
  398. package/cjs/index-83d1d15e.js.map +1 -0
  399. package/cjs/{index-cc5b51fb.js → index-900dd19f.js} +37 -27
  400. package/cjs/index-900dd19f.js.map +1 -0
  401. package/cjs/index-9d518988.js +292 -0
  402. package/cjs/{index-911b358f.js.map → index-9d518988.js.map} +1 -1
  403. package/cjs/{index-1837f392.js → index-a50b2339.js} +50 -50
  404. package/cjs/index-a50b2339.js.map +1 -0
  405. package/cjs/{index-a9a828c4.js → index-c1de8d8f.js} +37 -39
  406. package/cjs/{index-a9a828c4.js.map → index-c1de8d8f.js.map} +1 -1
  407. package/cjs/index-ec8b6978.js +361 -0
  408. package/cjs/index-ec8b6978.js.map +1 -0
  409. package/cjs/index-f2146bae.js +563 -0
  410. package/cjs/index-f2146bae.js.map +1 -0
  411. package/cjs/{index-450c5c4a.js → index-f65677b1.js} +56 -193
  412. package/cjs/index-f65677b1.js.map +1 -0
  413. package/cjs/{index-58bddb18.js → index-ff8ea47f.js} +17 -17
  414. package/cjs/{index-58bddb18.js.map → index-ff8ea47f.js.map} +1 -1
  415. package/cjs/index.js +51 -51
  416. package/cjs/{index.module-d62bc038.js → index.module-9f5edc7b.js} +1 -1
  417. package/cjs/{index.module-d62bc038.js.map → index.module-9f5edc7b.js.map} +1 -1
  418. package/cjs/lame.all.js.map +1 -1
  419. package/cjs/sendbirdSelectors.js +319 -371
  420. package/cjs/sendbirdSelectors.js.map +1 -1
  421. package/cjs/{stringSet-9717efda.js → stringSet-68748705.js} +2 -2
  422. package/cjs/stringSet-68748705.js.map +1 -0
  423. package/cjs/tokenize-d86ab0c7.js +140 -0
  424. package/cjs/tokenize-d86ab0c7.js.map +1 -0
  425. package/cjs/{topics-11bf2ffa.js → topics-825e5d42.js} +2 -2
  426. package/cjs/{topics-11bf2ffa.js.map → topics-825e5d42.js.map} +1 -1
  427. package/cjs/types-24accb8d.js +17 -0
  428. package/cjs/{types-997d2578.js.map → types-24accb8d.js.map} +1 -1
  429. package/cjs/ui/Accordion.js +19 -18
  430. package/cjs/ui/Accordion.js.map +1 -1
  431. package/cjs/ui/AccordionGroup.js +10 -11
  432. package/cjs/ui/AccordionGroup.js.map +1 -1
  433. package/cjs/ui/AdminMessage.js +10 -10
  434. package/cjs/ui/AdminMessage.js.map +1 -1
  435. package/cjs/ui/Avatar.js +55 -59
  436. package/cjs/ui/Avatar.js.map +1 -1
  437. package/cjs/ui/Badge.js +16 -15
  438. package/cjs/ui/Badge.js.map +1 -1
  439. package/cjs/ui/BottomSheet.js +14 -10
  440. package/cjs/ui/BottomSheet.js.map +1 -1
  441. package/cjs/ui/Button.js +20 -24
  442. package/cjs/ui/Button.js.map +1 -1
  443. package/cjs/ui/ChannelAvatar.js +38 -41
  444. package/cjs/ui/ChannelAvatar.js.map +1 -1
  445. package/cjs/ui/Checkbox.js +9 -10
  446. package/cjs/ui/Checkbox.js.map +1 -1
  447. package/cjs/ui/ConnectionStatus.js +7 -5
  448. package/cjs/ui/ConnectionStatus.js.map +1 -1
  449. package/cjs/ui/ContextMenu.js +139 -135
  450. package/cjs/ui/ContextMenu.js.map +1 -1
  451. package/cjs/ui/DateSeparator.js +12 -14
  452. package/cjs/ui/DateSeparator.js.map +1 -1
  453. package/cjs/ui/EmojiReactions.js +78 -86
  454. package/cjs/ui/EmojiReactions.js.map +1 -1
  455. package/cjs/ui/FileMessageItemBody.js +22 -22
  456. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  457. package/cjs/ui/FileViewer.js +36 -35
  458. package/cjs/ui/FileViewer.js.map +1 -1
  459. package/cjs/ui/Icon.js +16 -16
  460. package/cjs/ui/Icon.js.map +1 -1
  461. package/cjs/ui/IconButton.js +20 -28
  462. package/cjs/ui/IconButton.js.map +1 -1
  463. package/cjs/ui/ImageRenderer.js +33 -39
  464. package/cjs/ui/ImageRenderer.js.map +1 -1
  465. package/cjs/ui/Input.js +16 -14
  466. package/cjs/ui/Input.js.map +1 -1
  467. package/cjs/ui/Label.js +2 -2
  468. package/cjs/ui/LinkLabel.js +2 -2
  469. package/cjs/ui/LinkLabel.js.map +1 -1
  470. package/cjs/ui/Loader.js +10 -12
  471. package/cjs/ui/Loader.js.map +1 -1
  472. package/cjs/ui/MentionLabel.js +58 -61
  473. package/cjs/ui/MentionLabel.js.map +1 -1
  474. package/cjs/ui/MentionUserLabel.js +10 -10
  475. package/cjs/ui/MentionUserLabel.js.map +1 -1
  476. package/cjs/ui/MessageContent.js +273 -270
  477. package/cjs/ui/MessageContent.js.map +1 -1
  478. package/cjs/ui/MessageInput.js +87 -79
  479. package/cjs/ui/MessageInput.js.map +1 -1
  480. package/cjs/ui/MessageItemMenu.js +70 -72
  481. package/cjs/ui/MessageItemMenu.js.map +1 -1
  482. package/cjs/ui/MessageItemReactionMenu.js +50 -57
  483. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  484. package/cjs/ui/MessageSearchFileItem.js +49 -38
  485. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  486. package/cjs/ui/MessageSearchItem.js +40 -32
  487. package/cjs/ui/MessageSearchItem.js.map +1 -1
  488. package/cjs/ui/MessageStatus.js +10 -10
  489. package/cjs/ui/Modal.js +52 -45
  490. package/cjs/ui/Modal.js.map +1 -1
  491. package/cjs/ui/MutedAvatarOverlay.js +10 -10
  492. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  493. package/cjs/ui/OGMessageItemBody.js +48 -44
  494. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  495. package/cjs/ui/OpenChannelAdminMessage.js +8 -7
  496. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  497. package/cjs/ui/OpenChannelAvatar.js +18 -17
  498. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  499. package/cjs/ui/OpenchannelConversationHeader.js +17 -13
  500. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  501. package/cjs/ui/OpenchannelFileMessage.js +134 -140
  502. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  503. package/cjs/ui/OpenchannelOGMessage.js +177 -176
  504. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  505. package/cjs/ui/OpenchannelThumbnailMessage.js +209 -214
  506. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  507. package/cjs/ui/OpenchannelUserMessage.js +159 -164
  508. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  509. package/cjs/ui/PlaceHolder.js +5 -6
  510. package/cjs/ui/PlaceHolder.js.map +1 -1
  511. package/cjs/ui/PlaybackTime.js +15 -16
  512. package/cjs/ui/PlaybackTime.js.map +1 -1
  513. package/cjs/ui/ProgressBar.js +13 -15
  514. package/cjs/ui/ProgressBar.js.map +1 -1
  515. package/cjs/ui/QuoteMessage.js +42 -38
  516. package/cjs/ui/QuoteMessage.js.map +1 -1
  517. package/cjs/ui/QuoteMessageInput.js +27 -23
  518. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  519. package/cjs/ui/ReactionBadge.js +13 -17
  520. package/cjs/ui/ReactionBadge.js.map +1 -1
  521. package/cjs/ui/ReactionButton.js +15 -18
  522. package/cjs/ui/ReactionButton.js.map +1 -1
  523. package/cjs/ui/SortByRow.js +14 -14
  524. package/cjs/ui/SortByRow.js.map +1 -1
  525. package/cjs/ui/TextButton.js +13 -21
  526. package/cjs/ui/TextButton.js.map +1 -1
  527. package/cjs/ui/TextMessageItemBody.js +31 -31
  528. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  529. package/cjs/ui/ThreadReplies.js +25 -21
  530. package/cjs/ui/ThreadReplies.js.map +1 -1
  531. package/cjs/ui/ThumbnailMessageItemBody.js +32 -37
  532. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  533. package/cjs/ui/Toggle.js +202 -0
  534. package/cjs/ui/Toggle.js.map +1 -0
  535. package/cjs/ui/Tooltip.js +8 -9
  536. package/cjs/ui/Tooltip.js.map +1 -1
  537. package/cjs/ui/TooltipWrapper.js +17 -18
  538. package/cjs/ui/TooltipWrapper.js.map +1 -1
  539. package/cjs/ui/UnknownMessageItemBody.js +19 -18
  540. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  541. package/cjs/ui/UserListItem.js +72 -73
  542. package/cjs/ui/UserListItem.js.map +1 -1
  543. package/cjs/ui/UserProfile.js +30 -25
  544. package/cjs/ui/UserProfile.js.map +1 -1
  545. package/cjs/ui/VoiceMessageItemBody.js +37 -42
  546. package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
  547. package/cjs/ui/VoiceMessgeInput.js +7 -8
  548. package/cjs/ui/VoiceMessgeInput.js.map +1 -1
  549. package/cjs/ui/Word.js +26 -27
  550. package/cjs/ui/Word.js.map +1 -1
  551. package/cjs/useLongPress-d9deb354.js +83 -0
  552. package/cjs/{useLongPress-0b0040bb.js.map → useLongPress-d9deb354.js.map} +1 -1
  553. package/cjs/useSendbirdStateContext.js +2 -2
  554. package/cjs/useSendbirdStateContext.js.map +1 -1
  555. package/cjs/utils/message/getOutgoingMessageState.js +16 -14
  556. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  557. package/cjs/utils/message/isVoiceMessage.js +3 -3
  558. package/cjs/utils/message/isVoiceMessage.js.map +1 -1
  559. package/cjs/{utils-aeadc058.js → utils-21326993.js} +3 -3
  560. package/cjs/{utils-aeadc058.js.map → utils-21326993.js.map} +1 -1
  561. package/cjs/utils-4b74ea64.js +31 -0
  562. package/cjs/utils-4b74ea64.js.map +1 -0
  563. package/cjs/utils-7f75ad97.js +35 -0
  564. package/cjs/utils-7f75ad97.js.map +1 -0
  565. package/cjs/{utils-d40c9909.js → utils-d5176360.js} +1 -1
  566. package/cjs/{utils-d40c9909.js.map → utils-d5176360.js.map} +1 -1
  567. package/cjs/uuid-0b4ed44c.js +15 -0
  568. package/cjs/{uuid-d0a9c040.js.map → uuid-0b4ed44c.js.map} +1 -1
  569. package/cjs/withSendbird.js +15 -16
  570. package/cjs/withSendbird.js.map +1 -1
  571. package/{color-4ecee870.js → color-3bac434a.js} +5 -5
  572. package/{color-4ecee870.js.map → color-3bac434a.js.map} +1 -1
  573. package/{compareIds-bc4cf9bf.js → compareIds-1e0e668f.js} +1 -1
  574. package/{compareIds-bc4cf9bf.js.map → compareIds-1e0e668f.js.map} +1 -1
  575. package/const-5f722b91.js +13 -0
  576. package/const-5f722b91.js.map +1 -0
  577. package/{const-8a7444d1.js → const-6a07b718.js} +4 -4
  578. package/{const-8a7444d1.js.map → const-6a07b718.js.map} +1 -1
  579. package/consts-790ae3a9.js +4 -0
  580. package/{consts-7a61df9f.js.map → consts-790ae3a9.js.map} +1 -1
  581. package/consts-aadaccca.js +4 -0
  582. package/consts-aadaccca.js.map +1 -0
  583. package/consts-c9746f2b.js +27 -0
  584. package/{consts-96859f90.js.map → consts-c9746f2b.js.map} +1 -1
  585. package/consts-d4c78cc0.js +4 -0
  586. package/consts-d4c78cc0.js.map +1 -0
  587. package/context-fcbabe23.js +13 -0
  588. package/{context-c54bc9b4.js.map → context-fcbabe23.js.map} +1 -1
  589. package/dist/index.css +246 -142
  590. package/dist/index.css.map +1 -1
  591. package/handlers/OpenChannelHandler.js.map +1 -1
  592. package/handlers/SessionHandler.js.map +1 -1
  593. package/{index-adfdd634.js → index-1a3c0d72.js} +2 -4
  594. package/index-1a3c0d72.js.map +1 -0
  595. package/{index-6f66895e.js → index-2a938266.js} +1 -1
  596. package/{index-6f66895e.js.map → index-2a938266.js.map} +1 -1
  597. package/{index-c4ff34e4.js → index-3062a861.js} +3 -12
  598. package/index-3062a861.js.map +1 -0
  599. package/index-38a78d99.js +283 -0
  600. package/{index-47ba6604.js.map → index-38a78d99.js.map} +1 -1
  601. package/{index-538fa479.js → index-4111594a.js} +2 -2
  602. package/{index-538fa479.js.map → index-4111594a.js.map} +1 -1
  603. package/{index-77a24725.js → index-51bd074f.js} +37 -27
  604. package/index-51bd074f.js.map +1 -0
  605. package/{index-e5062739.js → index-59bd3da1.js} +50 -50
  606. package/index-59bd3da1.js.map +1 -0
  607. package/{index-af95f2b0.js → index-77f3d9b0.js} +17 -17
  608. package/{index-af95f2b0.js.map → index-77f3d9b0.js.map} +1 -1
  609. package/{index-3ac8a689.js → index-83600696.js} +37 -39
  610. package/{index-3ac8a689.js.map → index-83600696.js.map} +1 -1
  611. package/index-8df6bff0.js +51 -0
  612. package/index-8df6bff0.js.map +1 -0
  613. package/{index-6574e8fd.js → index-a9ddd0f5.js} +10 -30
  614. package/index-a9ddd0f5.js.map +1 -0
  615. package/index-c7cc73db.js +182 -0
  616. package/index-c7cc73db.js.map +1 -0
  617. package/{index-2ea26b17.js → index-cfd0e4c4.js} +22 -15
  618. package/index-cfd0e4c4.js.map +1 -0
  619. package/index-dbe0e004.js +520 -0
  620. package/index-dbe0e004.js.map +1 -0
  621. package/index-ef0bd198.js +354 -0
  622. package/index-ef0bd198.js.map +1 -0
  623. package/{index-5cfaecc9.js → index-f48cfdf7.js} +56 -193
  624. package/index-f48cfdf7.js.map +1 -0
  625. package/index.d.ts +38 -8
  626. package/index.js +51 -51
  627. package/{index.module-a2145ffe.js → index.module-ab8289c1.js} +1 -1
  628. package/{index.module-a2145ffe.js.map → index.module-ab8289c1.js.map} +1 -1
  629. package/lame.all.js.map +1 -1
  630. package/package.json +21 -3
  631. package/sendbirdSelectors.js +319 -371
  632. package/sendbirdSelectors.js.map +1 -1
  633. package/{stringSet-e0fd81b2.js → stringSet-1f18348a.js} +2 -2
  634. package/stringSet-1f18348a.js.map +1 -0
  635. package/tokenize-63d895d3.js +135 -0
  636. package/tokenize-63d895d3.js.map +1 -0
  637. package/{topics-bc5fee43.js → topics-d8d10f83.js} +2 -2
  638. package/{topics-bc5fee43.js.map → topics-d8d10f83.js.map} +1 -1
  639. package/types-a85de720.js +15 -0
  640. package/{types-84207ac4.js.map → types-a85de720.js.map} +1 -1
  641. package/ui/Accordion.js +19 -18
  642. package/ui/Accordion.js.map +1 -1
  643. package/ui/AccordionGroup.js +10 -11
  644. package/ui/AccordionGroup.js.map +1 -1
  645. package/ui/AdminMessage.js +10 -10
  646. package/ui/AdminMessage.js.map +1 -1
  647. package/ui/Avatar.js +55 -59
  648. package/ui/Avatar.js.map +1 -1
  649. package/ui/Badge.js +16 -15
  650. package/ui/Badge.js.map +1 -1
  651. package/ui/BottomSheet.js +14 -10
  652. package/ui/BottomSheet.js.map +1 -1
  653. package/ui/Button.js +20 -24
  654. package/ui/Button.js.map +1 -1
  655. package/ui/ChannelAvatar.js +38 -41
  656. package/ui/ChannelAvatar.js.map +1 -1
  657. package/ui/Checkbox.js +9 -10
  658. package/ui/Checkbox.js.map +1 -1
  659. package/ui/ConnectionStatus.js +7 -5
  660. package/ui/ConnectionStatus.js.map +1 -1
  661. package/ui/ContextMenu.js +139 -135
  662. package/ui/ContextMenu.js.map +1 -1
  663. package/ui/DateSeparator.js +12 -14
  664. package/ui/DateSeparator.js.map +1 -1
  665. package/ui/EmojiReactions.js +78 -86
  666. package/ui/EmojiReactions.js.map +1 -1
  667. package/ui/FileMessageItemBody.js +22 -22
  668. package/ui/FileMessageItemBody.js.map +1 -1
  669. package/ui/FileViewer.js +36 -35
  670. package/ui/FileViewer.js.map +1 -1
  671. package/ui/Icon.js +2 -2
  672. package/ui/Icon.js.map +1 -1
  673. package/ui/IconButton.js +20 -28
  674. package/ui/IconButton.js.map +1 -1
  675. package/ui/ImageRenderer.js +33 -39
  676. package/ui/ImageRenderer.js.map +1 -1
  677. package/ui/Input.js +16 -14
  678. package/ui/Input.js.map +1 -1
  679. package/ui/Label.js +2 -2
  680. package/ui/LinkLabel.js +2 -2
  681. package/ui/LinkLabel.js.map +1 -1
  682. package/ui/Loader.js +10 -12
  683. package/ui/Loader.js.map +1 -1
  684. package/ui/MentionLabel.js +58 -61
  685. package/ui/MentionLabel.js.map +1 -1
  686. package/ui/MentionUserLabel.js +10 -10
  687. package/ui/MentionUserLabel.js.map +1 -1
  688. package/ui/MessageContent.js +273 -270
  689. package/ui/MessageContent.js.map +1 -1
  690. package/ui/MessageInput.js +87 -79
  691. package/ui/MessageInput.js.map +1 -1
  692. package/ui/MessageItemMenu.js +70 -72
  693. package/ui/MessageItemMenu.js.map +1 -1
  694. package/ui/MessageItemReactionMenu.js +50 -57
  695. package/ui/MessageItemReactionMenu.js.map +1 -1
  696. package/ui/MessageSearchFileItem.js +49 -38
  697. package/ui/MessageSearchFileItem.js.map +1 -1
  698. package/ui/MessageSearchItem.js +40 -32
  699. package/ui/MessageSearchItem.js.map +1 -1
  700. package/ui/MessageStatus.js +10 -10
  701. package/ui/Modal.js +52 -45
  702. package/ui/Modal.js.map +1 -1
  703. package/ui/MutedAvatarOverlay.js +10 -10
  704. package/ui/MutedAvatarOverlay.js.map +1 -1
  705. package/ui/OGMessageItemBody.js +48 -44
  706. package/ui/OGMessageItemBody.js.map +1 -1
  707. package/ui/OpenChannelAdminMessage.js +8 -7
  708. package/ui/OpenChannelAdminMessage.js.map +1 -1
  709. package/ui/OpenChannelAvatar.js +18 -17
  710. package/ui/OpenChannelAvatar.js.map +1 -1
  711. package/ui/OpenchannelConversationHeader.js +17 -13
  712. package/ui/OpenchannelConversationHeader.js.map +1 -1
  713. package/ui/OpenchannelFileMessage.js +134 -140
  714. package/ui/OpenchannelFileMessage.js.map +1 -1
  715. package/ui/OpenchannelOGMessage.js +177 -176
  716. package/ui/OpenchannelOGMessage.js.map +1 -1
  717. package/ui/OpenchannelThumbnailMessage.js +209 -214
  718. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  719. package/ui/OpenchannelUserMessage.js +159 -164
  720. package/ui/OpenchannelUserMessage.js.map +1 -1
  721. package/ui/PlaceHolder.js +5 -6
  722. package/ui/PlaceHolder.js.map +1 -1
  723. package/ui/PlaybackTime.js +15 -16
  724. package/ui/PlaybackTime.js.map +1 -1
  725. package/ui/ProgressBar.js +13 -15
  726. package/ui/ProgressBar.js.map +1 -1
  727. package/ui/QuoteMessage.js +42 -38
  728. package/ui/QuoteMessage.js.map +1 -1
  729. package/ui/QuoteMessageInput.js +27 -23
  730. package/ui/QuoteMessageInput.js.map +1 -1
  731. package/ui/ReactionBadge.js +13 -17
  732. package/ui/ReactionBadge.js.map +1 -1
  733. package/ui/ReactionButton.js +15 -18
  734. package/ui/ReactionButton.js.map +1 -1
  735. package/ui/SortByRow.js +14 -14
  736. package/ui/SortByRow.js.map +1 -1
  737. package/ui/TextButton.js +13 -21
  738. package/ui/TextButton.js.map +1 -1
  739. package/ui/TextMessageItemBody.js +31 -31
  740. package/ui/TextMessageItemBody.js.map +1 -1
  741. package/ui/ThreadReplies.js +25 -21
  742. package/ui/ThreadReplies.js.map +1 -1
  743. package/ui/ThumbnailMessageItemBody.js +32 -37
  744. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  745. package/ui/Toggle.js +191 -0
  746. package/ui/Toggle.js.map +1 -0
  747. package/ui/Tooltip.js +8 -9
  748. package/ui/Tooltip.js.map +1 -1
  749. package/ui/TooltipWrapper.js +17 -18
  750. package/ui/TooltipWrapper.js.map +1 -1
  751. package/ui/UnknownMessageItemBody.js +19 -18
  752. package/ui/UnknownMessageItemBody.js.map +1 -1
  753. package/ui/UserListItem.js +72 -73
  754. package/ui/UserListItem.js.map +1 -1
  755. package/ui/UserProfile.js +30 -25
  756. package/ui/UserProfile.js.map +1 -1
  757. package/ui/VoiceMessageItemBody.js +37 -42
  758. package/ui/VoiceMessageItemBody.js.map +1 -1
  759. package/ui/VoiceMessgeInput.js +7 -8
  760. package/ui/VoiceMessgeInput.js.map +1 -1
  761. package/ui/Word.js +26 -27
  762. package/ui/Word.js.map +1 -1
  763. package/useLongPress-8acf717c.js +81 -0
  764. package/{useLongPress-08d9369b.js.map → useLongPress-8acf717c.js.map} +1 -1
  765. package/useSendbirdStateContext.js +2 -2
  766. package/useSendbirdStateContext.js.map +1 -1
  767. package/utils/message/getOutgoingMessageState.js +9 -8
  768. package/utils/message/getOutgoingMessageState.js.map +1 -1
  769. package/utils/message/isVoiceMessage.js +3 -3
  770. package/utils/message/isVoiceMessage.js.map +1 -1
  771. package/{utils-7dc80efd.js → utils-0c09801e.js} +1 -1
  772. package/{utils-7dc80efd.js.map → utils-0c09801e.js.map} +1 -1
  773. package/utils-447a922e.js +31 -0
  774. package/utils-447a922e.js.map +1 -0
  775. package/{utils-3c97842b.js → utils-83bbfb63.js} +3 -3
  776. package/{utils-3c97842b.js.map → utils-83bbfb63.js.map} +1 -1
  777. package/utils-b57bff14.js +29 -0
  778. package/utils-b57bff14.js.map +1 -0
  779. package/uuid-48baadaf.js +13 -0
  780. package/{uuid-39d923b9.js.map → uuid-48baadaf.js.map} +1 -1
  781. package/withSendbird.js +15 -16
  782. package/withSendbird.js.map +1 -1
  783. package/ChannelListProvider-32bd4597.js.map +0 -1
  784. package/ChannelProvider-4e33aa60.js.map +0 -1
  785. package/CreateChannelProvider-96aa4ed0.js +0 -48
  786. package/CreateChannelProvider-96aa4ed0.js.map +0 -1
  787. package/LocalizationContext-62966630.js +0 -20
  788. package/MediaQueryContext-17146a37.js +0 -80
  789. package/MediaQueryContext-17146a37.js.map +0 -1
  790. package/MemberList-ef0a35ad.js +0 -412
  791. package/MemberList-ef0a35ad.js.map +0 -1
  792. package/OpenChannelListProvider-8be6450e.js.map +0 -1
  793. package/OpenChannelProvider-98df8b74.js +0 -1844
  794. package/OpenChannelProvider-98df8b74.js.map +0 -1
  795. package/RemoveMessageModal-0efd9201.js +0 -30
  796. package/RemoveMessageModal-0efd9201.js.map +0 -1
  797. package/ThreadProvider-1798360b.js +0 -1623
  798. package/ThreadProvider-1798360b.js.map +0 -1
  799. package/VoiceMessageInputWrapper-4479a1bd.js.map +0 -1
  800. package/_rollupPluginBabelHelpers-48b56150.js.map +0 -1
  801. package/cjs/ChannelListProvider-c90e6d9b.js.map +0 -1
  802. package/cjs/ChannelProvider-6da44044.js.map +0 -1
  803. package/cjs/CreateChannelProvider-ff9bb9da.js +0 -55
  804. package/cjs/CreateChannelProvider-ff9bb9da.js.map +0 -1
  805. package/cjs/MediaQueryContext-9f3958fe.js +0 -87
  806. package/cjs/MediaQueryContext-9f3958fe.js.map +0 -1
  807. package/cjs/MemberList-1ad4eda5.js +0 -418
  808. package/cjs/MemberList-1ad4eda5.js.map +0 -1
  809. package/cjs/OpenChannelListProvider-f7387ce4.js +0 -416
  810. package/cjs/OpenChannelListProvider-f7387ce4.js.map +0 -1
  811. package/cjs/OpenChannelProvider-0bbac562.js +0 -1853
  812. package/cjs/RemoveMessageModal-63e870f4.js.map +0 -1
  813. package/cjs/ThreadProvider-ca9e5e4f.js +0 -1632
  814. package/cjs/ThreadProvider-ca9e5e4f.js.map +0 -1
  815. package/cjs/VoiceMessageInputWrapper-770a185c.js.map +0 -1
  816. package/cjs/_rollupPluginBabelHelpers-8164e35a.js.map +0 -1
  817. package/cjs/color-f43f059a.js.map +0 -1
  818. package/cjs/const-e7388711.js +0 -19
  819. package/cjs/const-e7388711.js.map +0 -1
  820. package/cjs/consts-d9ecf2d7.js +0 -6
  821. package/cjs/consts-e0f44b83.js +0 -6
  822. package/cjs/consts-f8bd3346.js +0 -6
  823. package/cjs/consts-f8bd3346.js.map +0 -1
  824. package/cjs/index-0f5a2c3b.js +0 -346
  825. package/cjs/index-0f5a2c3b.js.map +0 -1
  826. package/cjs/index-1837f392.js.map +0 -1
  827. package/cjs/index-450c5c4a.js.map +0 -1
  828. package/cjs/index-6253d289.js.map +0 -1
  829. package/cjs/index-911b358f.js +0 -271
  830. package/cjs/index-946fe9b8.js +0 -649
  831. package/cjs/index-946fe9b8.js.map +0 -1
  832. package/cjs/index-bddcf750.js.map +0 -1
  833. package/cjs/index-cc5b51fb.js.map +0 -1
  834. package/cjs/index-d217a491.js +0 -192
  835. package/cjs/index-d217a491.js.map +0 -1
  836. package/cjs/index-ecac7544.js.map +0 -1
  837. package/cjs/index-f2afea13.js +0 -59
  838. package/cjs/index-f2afea13.js.map +0 -1
  839. package/cjs/index-fc3f351f.js.map +0 -1
  840. package/cjs/stringSet-9717efda.js.map +0 -1
  841. package/cjs/tokenize-b42df26a.js +0 -141
  842. package/cjs/tokenize-b42df26a.js.map +0 -1
  843. package/cjs/tslib.es6-b412d11d.js +0 -97
  844. package/cjs/tslib.es6-b412d11d.js.map +0 -1
  845. package/cjs/types-997d2578.js +0 -11
  846. package/cjs/useLongPress-0b0040bb.js +0 -100
  847. package/cjs/utils-301360ec.js +0 -27
  848. package/cjs/utils-301360ec.js.map +0 -1
  849. package/cjs/utils-43d14023.js +0 -35
  850. package/cjs/utils-43d14023.js.map +0 -1
  851. package/cjs/uuid-d0a9c040.js +0 -17
  852. package/const-34b3294d.js +0 -13
  853. package/const-34b3294d.js.map +0 -1
  854. package/consts-165100af.js +0 -4
  855. package/consts-165100af.js.map +0 -1
  856. package/consts-7a61df9f.js +0 -4
  857. package/consts-81c7d9ed.js +0 -4
  858. package/consts-81c7d9ed.js.map +0 -1
  859. package/consts-96859f90.js +0 -23
  860. package/context-c54bc9b4.js +0 -12
  861. package/index-1db30515.js +0 -607
  862. package/index-1db30515.js.map +0 -1
  863. package/index-2ea26b17.js.map +0 -1
  864. package/index-47ba6604.js +0 -262
  865. package/index-5cfaecc9.js.map +0 -1
  866. package/index-6574e8fd.js.map +0 -1
  867. package/index-77a24725.js.map +0 -1
  868. package/index-adfdd634.js.map +0 -1
  869. package/index-c4ff34e4.js.map +0 -1
  870. package/index-df6b2fc4.js +0 -177
  871. package/index-df6b2fc4.js.map +0 -1
  872. package/index-e2834120.js +0 -339
  873. package/index-e2834120.js.map +0 -1
  874. package/index-e5062739.js.map +0 -1
  875. package/index-f5d419ec.js +0 -53
  876. package/index-f5d419ec.js.map +0 -1
  877. package/stringSet-e0fd81b2.js.map +0 -1
  878. package/tokenize-22d48b61.js +0 -136
  879. package/tokenize-22d48b61.js.map +0 -1
  880. package/tslib.es6-85bcd95d.js +0 -92
  881. package/tslib.es6-85bcd95d.js.map +0 -1
  882. package/types-84207ac4.js +0 -9
  883. package/useLongPress-08d9369b.js +0 -98
  884. package/utils-13ac01f0.js +0 -25
  885. package/utils-13ac01f0.js.map +0 -1
  886. package/utils-4aea6ebc.js +0 -31
  887. package/utils-4aea6ebc.js.map +0 -1
  888. package/uuid-39d923b9.js +0 -15
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadListItem.js","sources":["../../../src/smart-components/Thread/components/ThreadList/ThreadListItemContent.tsx","../../../src/smart-components/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';\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 { dateLocale } = useLocalization();\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\n return (\n <div className={`sendbird-thread-list-item-content ${className} ${isByMe ? 'outgoing' : 'incoming'}`}>\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 && (\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 className=\"sendbird-thread-list-item-content__middle\">\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 {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 {(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 )}\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: '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) || isOGMessage(message as UserMessage)) ? '' : 'primary',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as UserMessage | FileMessage}\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 && (\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 </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';\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 } = 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 = isReactionEnabled && !currentChannel?.isSuper && !currentChannel?.isBroadcast;\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 [ableMention, setAbleMention] = useState(true);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isMuted\n && !(isChannelFrozen && !(currentChannel.myRole === Role.OPERATOR));\n useEffect(() => {\n if (mentionedUsers?.length >= userMention?.maxMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\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 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","_a","className","userId","channel","message","_f","disabled","_g","chainTop","_h","chainBottom","_j","isMentionEnabled","_k","isReactionEnabled","_l","disableQuoteMessage","replyType","nicknamesMap","emojiContainer","showEdit","showRemove","showFileViewer","resendMessage","toggleReaction","onReplyInThread","messageTypes","getUIKitMessageTypes","dateLocale","useLocalization","_m","useState","supposedHover","setSupposedHover","_o","useContext","UserProfileContext","disableUserProfile","renderUserProfile","avatarRef","useRef","isByMe","sender","_b","sendingStatus","useReplying","parentMessageId","parentMessage","supposedHoverClassName","isReactionEnabledInChannel","isEphemeral","React","createElement","concat","ContextMenu","menuTrigger","toggleDropdown","Avatar","src","members","find","member","profileUrl","_c","ref","width","height","onClick","menuItems","closeDropdown","MenuItems","parentRef","parentContainRef","style","paddingTop","paddingBottom","user","close","UserProfile","onSuccess","MessageItemMenu","MessageItemReactionMenu","spaceFromTrigger","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","_d","nickname","getSenderName","getClassName","MessageStatus","isTextMessage","TextMessageItemBody","isOGMessage","OGMessageItemBody","isVoiceMessage","VoiceMessageItemBody","channelUrl","url","getUIKitMessageType","FILE","FileMessageItemBody","truncateLimit","isThumbnailMessage","ThumbnailMessageItemBody","UNKNOWN","UnknownMessageItemBody","_e","reactions","length","EmojiReactions","memberNicknamesMap","CAPTION_3","format","createdAt","locale","ThreadListItem","hasSeparator","renderCustomSeparator","handleScroll","useSendbirdStateContext","stores","config","isOnline","userMention","userStore","threadContext","useThreadContext","currentChannel","threadListState","updateMessage","deleteMessage","isMuted","isChannelFrozen","openingMessage","setShowEdit","setShowRemove","setShowFileViewer","usingReaction","isSuper","isBroadcast","messageScrollRef","useLayoutEffect","messageId","current","scrollIntoView","block","inline","editMessageInputRef","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","_p","selectedUser","setSelectedUser","_q","mentionSuggestedUsers","setMentionSuggestedUsers","_r","ableMention","setAbleMention","displaySuggestedMentionList","myRole","Role","OPERATOR","useEffect","maxMentionCount","filter","i","indexOf","splice","ThreadListStateTypes","INITIALIZED","MemorizedSeparator","useMemo","isUserMessage","Fragment","SuggestedMentionList","targetNickname","inputEvent","onUserItemClick","__spreadArray","onFocusItemChange","onFetchUsers","users","ableAddMention","maxSuggestionCount","MessageInput","isEdit","mentionSelectedUser","onStartTyping","startTyping","onUpdateMessage","mentionTemplate","endTyping","onCancelEdit","onUserMentioned","onMentionStringChange","mentionText","onMentionedUserIdsUpdated","userIds","onKeyDown","e","key","MessageInputKeys","Enter","ArrowUp","ArrowDown","DateSeparator","RemoveMessage","onCancel","FileViewer","onClose","onDelete"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDwB,SAAAA,qBAAqBA,CAACC,EAoBjB,EAAA;;AAnB3B,EAAA,IAAAC,SAAS,eAAA;IACTC,MAAM,GAAAF,EAAA,CAAAE,MAAA;IACNC,OAAO,GAAAH,EAAA,CAAAG,OAAA;IACPC,OAAO,GAAAJ,EAAA,CAAAI,OAAA;IACPC,EAAgB,GAAAL,EAAA,CAAAM,QAAA;IAAhBA,QAAQ,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IAChBE,EAAgB,GAAAP,EAAA,CAAAQ,QAAA;IAAhBA,QAAQ,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,GAAAA,EAAA;IAChBE,mBAAmB;IAAnBC,WAAW,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,KAAA;IACnBE,EAAA,GAAAX,EAAA,CAAAY,gBAAwB;IAAxBA,gBAAgB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IACxBE,EAAyB,GAAAb,EAAA,CAAAc,iBAAA;IAAzBA,iBAAiB,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,GAAAA,EAAA;IACzBE,2BAA2B;IAA3BC,mBAAmB,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,KAAA;IAC3BE,SAAS,GAAAjB,EAAA,CAAAiB,SAAA;IACTC,YAAY,GAAAlB,EAAA,CAAAkB,YAAA;IACZC,cAAc,GAAAnB,EAAA,CAAAmB,cAAA;IACdC,QAAQ,GAAApB,EAAA,CAAAoB,QAAA;IACRC,UAAU,gBAAA;IACVC,cAAc,GAAAtB,EAAA,CAAAsB,cAAA;IACdC,aAAa,GAAAvB,EAAA,CAAAuB,aAAA;IACbC,cAAc,GAAAxB,EAAA,CAAAwB,cAAA;IACdC,eAAe,GAAAzB,EAAA,CAAAyB,eAAA,CAAA;EAEf,IAAMC,YAAY,GAAGC,oBAAoB,EAAE,CAAA;AACnC,EAAA,IAAAC,UAAU,GAAKC,eAAe,EAAE,WAAtB,CAAA;AACZ,EAAA,IAAAC,EAAA,GAAoCC,QAAQ,CAAC,KAAK,CAAC;AAAlDC,IAAAA,aAAa,GAAAF,EAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,gBAAgB,GAAAH,EAAA,CAAA,CAAA,CAAmB,CAAA;AACnD,EAAA,IAAAI,EAAA,GAGFC,UAAU,CAA8BC,kBAAkB,CAAC;IAF7DC,kBAAkB,GAAAH,EAAA,CAAAG,kBAAA;IAClBC,iBAAiB,GAAAJ,EAAA,CAAAI,iBAC4C,CAAA;AAC/D,EAAA,IAAMC,SAAS,GAAGC,MAAM,CAAC,IAAI,CAAC,CAAA;AAE9B,EAAA,IAAMC,MAAM,GAAIvC,MAAM,MAAK,MAACE,OAAqC,KAAA,IAAA,IAArCA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAgCsC,MAAM,MAAE,IAAA,IAAAC,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAAzC,MAAM,CAAA,IAC3E,CAACE,OAAqC,KAAA,IAAA,IAArCA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAgCwC,aAAa,MAAK,SAAU,IACpE,CAACxC,OAAqC,KAAA,IAAA,IAArCA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAgCwC,aAAa,MAAK,QAAS,CAAA;EACzE,IAAMC,WAAW,GAAG,CAAC,EAAE,CAAC5B,SAAS,KAAK,aAAa,IAAIA,SAAS,KAAK,QAAQ,MACxEb,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAE0C,eAAe,CAAA,KAAI1C,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAE2C,aAAa,CAAA,IAClD,CAAC/B,mBAAmB,CACxB,CAAA;AACD,EAAA,IAAMgC,sBAAsB,GAAGhB,aAAa,GAAG,sBAAsB,GAAG,EAAE,CAAA;EAC1E,IAAMiB,0BAA0B,GAAGnC,iBAAiB,IAAI,EAACX,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAE+C,WAAW,CAAA,CAAA;EAE7E,oBACEC,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKnD,IAAAA,SAAS,EAAE,4CAAqCA,SAAS,EAAA,GAAA,CAAA,CAAAoD,MAAA,CAAIZ,MAAM,GAAG,UAAU,GAAG,UAAU,CAAA;GAChGU,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKnD,SAAS,EAAE,0CAA2C,CAAAoD,MAAA,CAAAJ,0BAA0B,GAAG,cAAc,GAAG,EAAE,EAAI,GAAA,CAAA,CAAAI,MAAA,CAAAZ,MAAM,GAAG,UAAU,GAAG,UAAU,CAAA;GAC3I,EAAA,CAACA,MAAM,IAAI,CAAC/B,WAAW,iBACvByC,cAAA,CAAAC,aAAA,CAACE,WAAW,EAAA;AACVC,IAAAA,WAAW,EAAE,UAACC,cAAc,EAAA;;AAAK,MAAA,oBAC/BL,cAAA,CAAAC,aAAA,CAACK,MAAM,EAAA;AACLxD,QAAAA,SAAS,EAAC,iDAAiD;AAC3DyD,QAAAA,GAAG,EAAE,CAAA,CAAAf,EAAA,GAAA,CAAA3C,EAAA,GAAAG,OAAO,KAAP,IAAA,IAAAA,OAAO,uBAAPA,OAAO,CAAEwD,OAAO,MAAA,IAAA,IAAA3D,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAE4D,IAAI,CAAC,UAACC,MAAM,EAAK;AAAA,UAAA,IAAA7D,EAAA,CAAA;UAAA,OAAA,CAAA6D,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAE3D,MAAM,OAAK,CAAAF,EAAA,GAAAI,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEsC,MAAM,MAAE,IAAA,IAAA1C,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAAE,MAAM,CAAA,CAAA;SAAA,CAAC,MAAE,IAAA,IAAAyC,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAAmB,UAAU,MAAI,CAAAC,EAAA,GAAA3D,OAAO,KAAP,IAAA,IAAAA,OAAO,uBAAPA,OAAO,CAAEsC,MAAM,MAAE,IAAA,IAAAqB,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAAD,UAAU,CAAA,IAAI,EAAG;AACrIE,QAAAA,GAAG,EAAEzB,SAAU;AACf0B,QAAAA,KAAK,EAAC,MAAM;AACZC,QAAAA,MAAM,EAAC,MAAM;QACbC,OAAO,EAAE,YAAA;UACP,IAAI,CAAC9B,kBAAkB,EAAE;AACvBmB,YAAAA,cAAc,KAAd,IAAA,IAAAA,cAAc,KAAd,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,cAAc,EAAI,CAAA;AACnB,WAAA;AACH,SAAA;OACA,CAAA,CAAA;KACF;AACFY,IAAAA,SAAS,EAAE,UAACC,aAAa;AAAK,MAAA,oBAC5BlB,cAAA,CAAAC,aAAA,CAACkB,SAAS,EAAA;AACRC,QAAAA,SAAS,EAAEhC,SAAU;AACrBiC,QAAAA,gBAAgB,EAAEjC,SAAU;AAC5B8B,QAAAA,aAAa,EAAEA,aAAc;AAC7BI,QAAAA,KAAK,EAAE;AAAEC,UAAAA,UAAU,EAAE,KAAK;AAAEC,UAAAA,aAAa,EAAE,KAAA;AAAK,SAAA;OAE/CrC,EAAAA,iBAAiB,GACdA,iBAAiB,CAAC;AAAEsC,QAAAA,IAAI,EAAExE,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEsC,MAAM;AAAEmC,QAAAA,KAAK,EAAER,aAAAA;OAAe,CAAC,gBAClElB,cAAA,CAAAC,aAAA,CAAC0B,WAAW,EAAA;AAACF,QAAAA,IAAI,EAAExE,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEsC,MAAO;AAACqC,QAAAA,SAAS,EAAEV,aAAAA;AAAc,OAAA,CAAG,CAE1D,CAAA;AAXgB,KAAA;AAY5B,GAAA,CAEL,EACA5B,MAAM,iBACLU,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACEnD,SAAS,EAAE,yCAA0C,CAAAoD,MAAA,CAAAJ,0BAA0B,GAAG,cAAc,GAAG,EAAE,EAAA,GAAA,CAAA,CAAAI,MAAA,CACjGZ,MAAM,GAAG,UAAU,GAAG,UAAU,EAAA,GAAA,CAAA,CAAAY,MAAA,CAChCL,sBAAsB,CAAA;AAAG,GAAA,eAE7BG,cAAA,CAAAC,aAAA,CAAC4B,eAAe,EAAA;AACd/E,IAAAA,SAAS,EAAC,qDAAqD;AAC/DE,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,OAAO,EAAEA,OAAqC;AAC9CqC,IAAAA,MAAM,EAAEA,MAAO;AACfxB,IAAAA,SAAS,EAAEA,SAAU;AACrBX,IAAAA,QAAQ,EAAEA,QAAS;AACnBc,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,UAAU,EAAEA,UAAW;AACvBE,IAAAA,aAAa,EAAEA,aAAc;AAC7BU,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCR,IAAAA,eAAe,EAAEA,eAAAA;AAAgB,GAAA,CAEnC,EAACwB,0BAA0B,iBACzBE,cAAA,CAAAC,aAAA,CAAC6B,uBAAuB,EAAA;AACtBhF,IAAAA,SAAS,EAAC,uDAAuD;AACjEG,IAAAA,OAAO,EAAEA,OAAqC;AAC9CF,IAAAA,MAAM,EAAEA,MAAO;IACfgF,gBAAgB,EAAE,EAAG;AACrB/D,IAAAA,cAAc,EAAEA,cAAe;AAC/BK,IAAAA,cAAc,EAAEA,cAAe;AAC/BS,IAAAA,gBAAgB,EAAEA,gBAAAA;AAAiB,GAAA,CAEtC,CAEJ,CAEH,eAAAkB,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKnD,IAAAA,SAAS,EAAC,2CAAA;AAA2C,GAAA,EACtD,CAACwC,MAAM,IAAI,CAACjC,QAAQ,IAAI,CAACqC,WAAW,iBACpCM,cAAA,CAAAC,aAAA,CAAC+B,KAAK,EAAA;AACJlF,IAAAA,SAAS,EAAC,wDAAwD;IAClEmF,IAAI,EAAEC,eAAe,CAACC,SAAU;IAChCC,KAAK,EAAEC,WAAW,CAACC,cAAAA;AAAe,GAAA,EAGhC,CAAA,CAAAC,EAAA,GAAA,CAAA3B,EAAA,GAAA5D,OAAO,KAAP,IAAA,IAAAA,OAAO,uBAAPA,OAAO,CAAEwD,OAAO,MAAA,IAAA,IAAAI,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAEH,IAAI,CAAC,UAACC,MAAM,EAAK;AAAA,IAAA,IAAA7D,EAAA,CAAA;IAAA,OAAA,CAAA6D,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAE3D,MAAM,OAAK,CAAAF,EAAA,GAAAI,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEsC,MAAM,0CAAExC,MAAM,CAAA,CAAA;AAAA,GAAA,CAAC,0CAAEyF,QAAQ,KACrFC,aAAa,CAACxF,OAAoC,CAAA;AACrD;GAGL,eACD+C,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKnD,IAAAA,SAAS,EAAE4F,YAAY,CAAC,CAAC,2DAA2D,CAAC,CAAA;AAAE,GAAA,EAExFpD,MAAM,IAAI,CAAC/B,WAAW,iBACtByC,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKnD,SAAS,EAAE4F,YAAY,CAAC,CAAC,uEAAuE,EAAE,MAAM,EAAE7C,sBAAsB,CAAC,CAAA;GACpIG,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKnD,IAAAA,SAAS,EAAC,4FAAA;AAA4F,GAAA,eACzGkD,cAAA,CAAAC,aAAA,CAAC0C,aAAa,EAAA;AACZ1F,IAAAA,OAAO,EAAEA,OAAqC;AAC9CD,IAAAA,OAAO,EAAEA,OAAAA;AAAQ,GAAA,CAErB,CACF,CACD,EAEA4F,aAAa,CAAC3F,OAAsB,CAAC,iBACpC+C,cAAA,CAAAC,aAAA,CAAC4C,mBAAmB,EAAA;AAClB/F,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChCqC,IAAAA,MAAM,EAAEA,MAAO;AACf7B,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCE,IAAAA,iBAAiB,EAAEmC,0BAAAA;GAEtB,CAAA,EACCgD,WAAW,CAAC7F,OAAsB,CAAC,iBACnC+C,cAAA,CAAAC,aAAA,CAAC8C,iBAAiB,EAAA;AAChBjG,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChCqC,IAAAA,MAAM,EAAEA,MAAO;AACf7B,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCE,IAAAA,iBAAiB,EAAEmC,0BAAAA;GAEtB,CAAA,EACAkD,cAAc,CAAC/F,OAAsB,CAAC,iBACrC+C,cAAA,CAAAC,aAAA,CAACgD,oBAAoB,EAAA;AACnBnG,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChCiG,IAAAA,UAAU,EAAElG,OAAO,KAAP,IAAA,IAAAA,OAAO,uBAAPA,OAAO,CAAEmG,GAAI;AACzB7D,IAAAA,MAAM,EAAEA,MAAO;AACf3B,IAAAA,iBAAiB,EAAEmC,0BAAAA;AAA2B,GAAA,CAEjD,EACCsD,mBAAmB,CAAEnG,OAAuB,CAAC,KAAKsB,YAAY,CAAC8E,IAAI,iBACnErD,cAAA,CAAAC,aAAA,CAACqD,mBAAmB,EAAA;AAClBxG,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChCqC,IAAAA,MAAM,EAAEA,MAAO;AACf3B,IAAAA,iBAAiB,EAAEmC,0BAA2B;AAC9CyD,IAAAA,aAAa,EAAEjE,MAAM,GAAG,EAAE,GAAG,EAAA;GAEhC,CAAA,EACCkE,kBAAkB,CAACvG,OAAsB,CAAC,iBAC1C+C,cAAA,CAAAC,aAAA,CAACwD,wBAAwB,EAAA;AACvB3G,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAuB;AAChCqC,IAAAA,MAAM,EAAEA,MAAO;AACf3B,IAAAA,iBAAiB,EAAEmC,0BAA2B;AAC9C3B,IAAAA,cAAc,EAAEA,cAAe;AAC/BmD,IAAAA,KAAK,EAAE;AACLR,MAAAA,KAAK,EAAE,OAAO;AACdC,MAAAA,MAAM,EAAE,OAAA;;AACR,GAAA,CAEL,EACCqC,mBAAmB,CAAEnG,OAAuB,CAAC,KAAKsB,YAAY,CAACmF,OAAO,iBACtE1D,cAAA,CAAAC,aAAA,CAAC0D,sBAAsB,EAAA;AACrB7G,IAAAA,SAAS,EAAC,8DAA8D;AACxEG,IAAAA,OAAO,EAAEA,OAAQ;AACjBqC,IAAAA,MAAM,EAAEA,MAAO;AACf3B,IAAAA,iBAAiB,EAAEmC,0BAAAA;AAA2B,GAAA,CAEjD,EAECA,0BAA0B,IAAI,CAAA,CAAA8D,EAAA,GAAA3G,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAE4G,SAAS,MAAA,IAAA,IAAAD,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAEE,MAAM,IAAG,CAAC,iBAC5D9D,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKnD,SAAS,EAAE4F,YAAY,CAAC,CAC3B,6CAA6C,EAC5C,CAACpD,MAAM,IAAIkE,kBAAkB,CAACvG,OAAsB,CAAC,IAAI6F,WAAW,CAAC7F,OAAsB,CAAC,GAAI,EAAE,GAAG,SAAS,CAChH,CAAA;AAAE,GAAA,eACD+C,cAAA,CAAAC,aAAA,CAAC8D,cAAc,EAAA;AACbhH,IAAAA,MAAM,EAAEA,MAAO;AACfE,IAAAA,OAAO,EAAEA,OAAqC;AAC9CqC,IAAAA,MAAM,EAAEA,MAAO;AACftB,IAAAA,cAAc,EAAEA,cAAe;AAC/BgG,IAAAA,kBAAkB,EAAEjG,YAAa;AACjCM,IAAAA,cAAc,EAAEA,cAAAA;AAAe,GAAA,CAEnC,CACD,EACC,CAACiB,MAAM,IAAI,CAAC/B,WAAW,iBACvByC,cAAA,CAAAC,aAAA,CAAC+B,KAAK,EAAA;IACJlF,SAAS,EAAE4F,YAAY,CAAC,CAAC,uEAAuE,EAAE,OAAO,EAAE7C,sBAAsB,CAAC,CAAE;IACpIoC,IAAI,EAAEC,eAAe,CAAC+B,SAAU;IAChC7B,KAAK,EAAEC,WAAW,CAACC,cAAAA;GAElB4B,EAAAA,MAAM,CAAC,CAAAjH,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEkH,SAAS,KAAI,CAAC,EAAE,GAAG,EAAE;AACpCC,IAAAA,MAAM,EAAE3F,UAAAA;AACT,GAAA,CAAC,CAEL,CAEL,CACA,eAAAuB,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACEnD,SAAS,EAAE,2CAA4C,CAAAoD,MAAA,CAAA7C,QAAQ,GAAG,WAAW,GAAG,EAAE,EAC9E,GAAA,CAAA,CAAA6C,MAAA,CAAAZ,MAAM,GAAG,UAAU,GAAG,UAAU,CAAA;AAAG,GAAA,EAEtC,CAACA,MAAM,iBACNU,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKnD,IAAAA,SAAS,EAAE,yCAAA,CAAAoD,MAAA,CAA0CL,sBAAsB,CAAA;AAAG,GAAA,EAChFC,0BAA0B,iBACzBE,cAAA,CAAAC,aAAA,CAAC6B,uBAAuB,EAAA;AACtBhF,IAAAA,SAAS,EAAC,uDAAuD;AACjEG,IAAAA,OAAO,EAAEA,OAAqC;AAC9CF,IAAAA,MAAM,EAAEA,MAAO;IACfgF,gBAAgB,EAAE,EAAG;AACrB/D,IAAAA,cAAc,EAAEA,cAAe;AAC/BK,IAAAA,cAAc,EAAEA,cAAe;AAC/BS,IAAAA,gBAAgB,EAAEA,gBAAAA;AAAiB,GAAA,CAEtC,eACDkB,cAAA,CAAAC,aAAA,CAAC4B,eAAe,EAAA;AACd/E,IAAAA,SAAS,EAAC,qDAAqD;AAC/DE,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,OAAO,EAAEA,OAAqC;AAC9CqC,IAAAA,MAAM,EAAEA,MAAO;AACfxB,IAAAA,SAAS,EAAEA,SAAU;AACrBX,IAAAA,QAAQ,EAAEA,QAAS;AACnBe,IAAAA,UAAU,EAAEA,UAAW;AACvBE,IAAAA,aAAa,EAAEA,aAAc;AAC7BU,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCR,IAAAA,eAAe,EAAEA,eAAAA;GAErB,CAAA,CACD,CAEL,CAAM,CAAA;AAEV;;ACpRwB,SAAA+F,cAAcA,CAACxH,EAQjB,EAAA;;AAPpB,EAAA,IAAAC,SAAS,eAAA;IACTG,OAAO,aAAA;IACPI,QAAQ,cAAA;IACRE,WAAW,GAAAV,EAAA,CAAAU,WAAA;IACX+G,YAAY,GAAAzH,EAAA,CAAAyH,YAAA;IACZC,qBAAqB,GAAA1H,EAAA,CAAA0H,qBAAA;IACrBC,YAAY,GAAA3H,EAAA,CAAA2H,YAAA,CAAA;EAEN,IAAAtH,EAAA,GAAqBuH,uBAAuB,EAAE;IAA5CC,MAAM,GAAAxH,EAAA,CAAAwH,MAAA;IAAEC,MAAM,GAAAzH,EAAA,CAAAyH,MAA8B,CAAA;AAElD,EAAA,IAAAhH,iBAAiB,GAKfgH,MAAM,CALShH,iBAAA;IACjBF,gBAAgB,GAIdkH,MAAM,CAJQlH,gBAAA;IAChBmH,QAAQ,GAGND,MAAM,CAHAC,QAAA;IACR9G,SAAS,GAEP6G,MAAM,CAAA7G,SAFC;IACT+G,WAAW,GACTF,MAAM,CAAAE,WADG,CAAA;EAEb,IAAM9H,MAAM,GAAG,CAAA6D,EAAA,GAAA,CAAApB,EAAA,GAAAkF,MAAM,KAAN,IAAA,IAAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,MAAM,CAAEI,SAAS,MAAA,IAAA,IAAAtF,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAEiC,IAAI,MAAA,IAAA,IAAAb,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAE7D,MAAM,CAAA;AACtC,EAAA,IAAA0B,UAAU,GAAKC,eAAe,EAAE,WAAtB,CAAA;AAClB,EAAA,IAAMqG,aAAa,GAAGC,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAhB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,gBAAgB,EAAI,CAAA;AAExC,EAAA,IAAAC,cAAc,GAUZF,aAAa,CAAAE,cAVD;IACdlH,YAAY,GASVgH,aAAa,CAAAhH,YATH;IACZC,cAAc,GAQZ+G,aAAa,CAAA/G,cARD;IACdK,cAAc,GAOZ0G,aAAa,CAPD1G,cAAA;IACd6G,eAAe,GAMbH,aAAa,CAAAG,eANA;IACfC,aAAa,GAKXJ,aAAa,CALFI,aAAA;IACb/G,aAAa,GAIX2G,aAAa,CAJF3G,aAAA;IACbgH,aAAa,GAGXL,aAAa,CAHFK,aAAA;IACbC,OAAO,GAELN,aAAa,CAAAM,OAFR;IACPC,eAAe,GACbP,aAAa,CAAAO,eADA,CAAA;AAEjB,EAAA,IAAMC,cAAc,GAAGR,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAb,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,aAAa,CAAE9H,OAAO,CAAA;AAEvC,EAAA,IAAAG,EAAA,GAA0BwB,QAAQ,CAAC,KAAK,CAAC;AAAxCX,IAAAA,QAAQ,GAAAb,EAAA,CAAA,CAAA,CAAA;AAAEoI,IAAAA,WAAW,GAAApI,EAAA,CAAA,CAAA,CAAmB,CAAA;AACzC,EAAA,IAAAE,EAAA,GAA8BsB,QAAQ,CAAC,KAAK,CAAC;AAA5CV,IAAAA,UAAU,GAAAZ,EAAA,CAAA,CAAA,CAAA;AAAEmI,IAAAA,aAAa,GAAAnI,EAAA,CAAA,CAAA,CAAmB,CAAA;AAC7C,EAAA,IAAAE,EAAA,GAAsCoB,QAAQ,CAAC,KAAK,CAAC;AAApDT,IAAAA,cAAc,GAAAX,EAAA,CAAA,CAAA,CAAA;AAAEkI,IAAAA,iBAAiB,GAAAlI,EAAA,CAAA,CAAA,CAAmB,CAAA;AAC3D,EAAA,IAAMmI,aAAa,GAAGhI,iBAAiB,IAAI,EAACsH,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAEW,OAAO,CAAA,IAAI,EAACX,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAEY,WAAW,CAAA,CAAA;AAEnG;AACA,EAAA,IAAMC,gBAAgB,GAAGzG,MAAM,CAAC,IAAI,CAAC,CAAA;AACrC0G,EAAAA,eAAe,CAAC,YAAA;;IACd,IAAI,CAAAR,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAES,SAAS,OAAK/I,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAE+I,SAAS,CAAA,KAAIF,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,gBAAgB,CAAEG,OAAO,CAAA,EAAE;AACjF,MAAA,CAAApJ,EAAA,GAAAiJ,gBAAgB,CAACG,OAAO,MAAE,IAAA,IAAApJ,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAAqJ,cAAc,CAAC;AAAEC,QAAAA,KAAK,EAAE,QAAQ;AAAEC,QAAAA,MAAM,EAAE,QAAA;AAAQ,OAAE,CAAC,CAAA;AAChF,KAAA;GACF,EAAE,CAACb,cAAc,EAAEO,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,gBAAgB,CAAEG,OAAO,CAAC,CAAC,CAAA;AAE/C;AACAF,EAAAA,eAAe,CAAC,YAAA;AACdvB,IAAAA,YAAY,KAAZ,IAAA,IAAAA,YAAY,KAAZ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,YAAY,EAAI,CAAA;AAClB,GAAC,EAAE,CAACvG,QAAQ,EAAE,CAAAsE,EAAA,GAAAtF,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAE4G,SAAS,MAAA,IAAA,IAAAtB,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAEuB,MAAM,CAAC,CAAC,CAAA;AAE1C;AACA,EAAA,IAAMuC,mBAAmB,GAAGhH,MAAM,CAAC,IAAI,CAAC,CAAA;AAClC,EAAA,IAAA3B,EAAA,GAAwCkB,QAAQ,CAAC,EAAE,CAAC;AAAnD0H,IAAAA,eAAe,GAAA5I,EAAA,CAAA,CAAA,CAAA;AAAE6I,IAAAA,kBAAkB,GAAA7I,EAAA,CAAA,CAAA,CAAgB,CAAA;AACpD,EAAA,IAAAE,EAAA,GAAsCgB,QAAQ,CAAC,EAAE,CAAC;AAAjD4H,IAAAA,cAAc,GAAA5I,EAAA,CAAA,CAAA,CAAA;AAAE6I,IAAAA,iBAAiB,GAAA7I,EAAA,CAAA,CAAA,CAAgB,CAAA;AAClD,EAAA,IAAAe,EAAA,GAA0CC,QAAQ,CAAC,EAAE,CAAC;AAArD8H,IAAAA,gBAAgB,GAAA/H,EAAA,CAAA,CAAA,CAAA;AAAEgI,IAAAA,mBAAmB,GAAAhI,EAAA,CAAA,CAAA,CAAgB,CAAA;AACtD,EAAA,IAAAI,EAAA,GAA4CH,QAAQ,CAAC,IAAI,CAAC;AAAzDgI,IAAAA,iBAAiB,GAAA7H,EAAA,CAAA,CAAA,CAAA;AAAE8H,IAAAA,oBAAoB,GAAA9H,EAAA,CAAA,CAAA,CAAkB,CAAA;AAC1D,EAAA,IAAA+H,EAAA,GAAkClI,QAAQ,CAAC,IAAI,CAAC;AAA/CmI,IAAAA,YAAY,GAAAD,EAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,EAAA,CAAA,CAAA,CAAkB,CAAA;AAChD,EAAA,IAAAG,EAAA,GAAoDrI,QAAQ,CAAC,EAAE,CAAC;AAA/DsI,IAAAA,qBAAqB,GAAAD,EAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,wBAAwB,GAAAF,EAAA,CAAA,CAAA,CAAgB,CAAA;AAChE,EAAA,IAAAG,EAAA,GAAgCxI,QAAQ,CAAC,IAAI,CAAC;AAA7CyI,IAAAA,WAAW,GAAAD,EAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,cAAc,GAAAF,EAAA,CAAA,CAAA,CAAkB,CAAA;EACpD,IAAMG,2BAA2B,GAAG3C,QAAQ,IACvCnH,gBAAgB,IAChB6I,eAAe,CAACxC,MAAM,GAAG,CAAC,IAC1B,CAACuB,OAAO,IACR,EAAEC,eAAe,IAAI,EAAEL,cAAc,CAACuC,MAAM,KAAKC,IAAI,CAACC,QAAQ,CAAC,CAAC,CAAA;AACrEC,EAAAA,SAAS,CAAC,YAAA;AACR,IAAA,IAAI,CAAAnB,cAAc,KAAA,IAAA,IAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAE1C,MAAM,MAAIe,WAAW,aAAXA,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAXA,WAAW,CAAE+C,eAAe,CAAA,EAAE;MAC1DN,cAAc,CAAC,KAAK,CAAC,CAAA;AACtB,KAAA,MAAM;MACLA,cAAc,CAAC,IAAI,CAAC,CAAA;AACrB,KAAA;AACH,GAAC,EAAE,CAACd,cAAc,CAAC,CAAC,CAAA;AACpBmB,EAAAA,SAAS,CAAC,YAAA;AACRlB,IAAAA,iBAAiB,CAACD,cAAc,CAACqB,MAAM,CAAC,UAAChL,EAAU,EAAA;AAAR,MAAA,IAAAE,MAAM,GAAAF,EAAA,CAAAE,MAAA,CAAA;AAC/C,MAAA,IAAM+K,CAAC,GAAGpB,gBAAgB,CAACqB,OAAO,CAAChL,MAAM,CAAC,CAAA;MAC1C,IAAI+K,CAAC,GAAG,CAAC,EAAE;AACT,QAAA,OAAO,KAAK,CAAA;AACb,OAAA,MAAM;AACLpB,QAAAA,gBAAgB,CAACsB,MAAM,CAACF,CAAC,EAAE,CAAC,CAAC,CAAA;AAC7B,QAAA,OAAO,IAAI,CAAA;AACZ,OAAA;AACH,KAAC,CAAC,CAAC,CAAA;AACL,GAAC,EAAE,CAACpB,gBAAgB,CAAC,CAAC,CAAA;AAEtB;AACA,EAAA,IAAMvJ,QAAQ,GAAG,EAAE+H,eAAe,KAAK+C,oBAAoB,CAACC,WAAW,CAAC,IACnE,CAACtD,QAAQ,IACTS,OAAO,IACPC,eAAe,CAAA;AAEpB;AACA,EAAA,IAAM6C,kBAAkB,GAAGC,OAAO,CAAC,YAAA;AACjC,IAAA,IAAI,OAAO7D,qBAAqB,KAAK,UAAU,EAAE;AAC/C,MAAA,OAAOA,qBAAqB,KAArB,IAAA,IAAAA,qBAAqB,KAArB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,qBAAqB,CAAG;AAAEtH,QAAAA,OAAO,EAAAA,OAAAA;AAAE,OAAA,CAAC,CAAA;AAC5C,KAAA;AACH,GAAC,EAAE,CAACA,OAAO,EAAEsH,qBAAqB,CAAC,CAAC,CAAA;AAEpC;AACA,EAAA,IAAItG,QAAQ,IAAIhB,OAAO,CAACoL,aAAa,EAAE,EAAE;AACvC,IAAA,oBACErI,cAAA,CAAAC,aAAA,CAAAD,cAAA,CAAAsI,QAAA,EAEIf,IAAAA,EAAAA,2BAA2B,iBACzBvH,cAAA,CAAAC,aAAA,CAACsI,oBAAoB,EAAA;AACnBC,MAAAA,cAAc,EAAElC,eAAgB;AAChCmC,MAAAA,UAAU,EAAE7B,iBAAAA;AACZ;AAAA;AACA8B,MAAAA,eAAe,EAAE,UAACjH,IAAI,EAAA;AACpB,QAAA,IAAIA,IAAI,EAAE;AACRgF,UAAAA,iBAAiB,CAAKkC,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAAnC,cAAc,EAAE,IAAA,CAAA,EAAA,CAAA/E,IAAI,UAAE,CAAA;AAC7C,SAAA;QACD8E,kBAAkB,CAAC,EAAE,CAAC,CAAA;QACtBS,eAAe,CAACvF,IAAI,CAAC,CAAA;QACrBoF,oBAAoB,CAAC,IAAI,CAAC,CAAA;OAC1B;MACF+B,iBAAiB,EAAE,YAAA;QACjB/B,oBAAoB,CAAC,IAAI,CAAC,CAAA;OAC1B;AACFgC,MAAAA,YAAY,EAAE,UAACC,KAAK,EAAA;QAClB3B,wBAAwB,CAAC2B,KAAK,CAAC,CAAA;OAC/B;AACFC,MAAAA,cAAc,EAAE1B,WAAY;AAC5BO,MAAAA,eAAe,EAAE/C,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,WAAW,CAAE+C,eAAgB;AAC9CoB,MAAAA,kBAAkB,EAAEnE,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAXA,WAAW,CAAEmE,kBAAAA;AAAmB,KAAA,CAEvD,eAEHhJ,cAAA,CAAAC,aAAA,CAACgJ,YAAY,EAAA;MACXC,MAAM,EAAA,IAAA;AACN/L,MAAAA,QAAQ,EAAEA,QAAS;AACnB0D,MAAAA,GAAG,EAAEwF,mBAAoB;AACzB8C,MAAAA,mBAAmB,EAAEpC,YAAa;AAClCtJ,MAAAA,gBAAgB,EAAEA,gBAAiB;AACnCR,MAAAA,OAAO,EAAEA,OAAQ;MACjBmM,aAAa,EAAE,YAAA;;AACb,QAAA,CAAAvM,EAAA,GAAAoI,cAAc,aAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAEoE,WAAW,8DAAI,CAAA;OAC/B;AACFC,MAAAA,eAAe,EAAE,UAACzM,EAAuC,EAAA;;AAArC,QAAA,IAAAmJ,SAAS,eAAA;UAAE/I,OAAO,GAAAJ,EAAA,CAAAI,OAAA;UAAEsM,eAAe,GAAA1M,EAAA,CAAA0M,eAAA,CAAA;AACrDpE,QAAAA,aAAa,CAAC;AACZa,UAAAA,SAAS,EAAAA,SAAA;AACT/I,UAAAA,OAAO,EAAAA,OAAA;AACPuJ,UAAAA,cAAc,EAAAA,cAAA;AACd+C,UAAAA,eAAe,EAAAA,eAAAA;AAChB,SAAA,CAAC,CAAA;QACF/D,WAAW,CAAC,KAAK,CAAC,CAAA;AAClB,QAAA,CAAAhG,EAAA,GAAAyF,cAAc,aAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAEuE,SAAS,8DAAI,CAAA;OAC7B;MACFC,YAAY,EAAE,YAAA;;QACZlD,kBAAkB,CAAC,EAAE,CAAC,CAAA;QACtBE,iBAAiB,CAAC,EAAE,CAAC,CAAA;QACrBE,mBAAmB,CAAC,EAAE,CAAC,CAAA;QACvBQ,wBAAwB,CAAC,EAAE,CAAC,CAAA;QAC5B3B,WAAW,CAAC,KAAK,CAAC,CAAA;AAClB,QAAA,CAAA3I,EAAA,GAAAoI,cAAc,aAAdA,cAAc,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAc,CAAEuE,SAAS,8DAAI,CAAA;OAC7B;AACFE,MAAAA,eAAe,EAAE,UAACjI,IAAI,EAAA;AACpB,QAAA,IAAI,CAAAsF,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAEhK,MAAM,OAAK0E,IAAI,aAAJA,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJA,IAAI,CAAE1E,MAAM,CAAA,EAAE;UACzCiK,eAAe,CAAC,IAAI,CAAC,CAAA;UACrBT,kBAAkB,CAAC,EAAE,CAAC,CAAA;AACvB,SAAA;OACD;AACFoD,MAAAA,qBAAqB,EAAE,UAACC,WAAW,EAAA;QACjCrD,kBAAkB,CAACqD,WAAW,CAAC,CAAA;OAC/B;AACFC,MAAAA,yBAAyB,EAAE,UAACC,OAAO,EAAA;QACjCnD,mBAAmB,CAACmD,OAAO,CAAC,CAAA;OAC5B;AACFC,MAAAA,SAAS,EAAE,UAACC,CAAC,EAAA;QACX,IAAIzC,2BAA2B,IAAI,CAAAL,qBAAqB,KAAA,IAAA,IAArBA,qBAAqB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAArBA,qBAAqB,CAAEpD,MAAM,IAAG,CAAC,KAC7DkG,CAAC,CAACC,GAAG,KAAKC,gBAAgB,CAACC,KAAK,IAAI9C,WAAW,IAAK2C,CAAC,CAACC,GAAG,KAAKC,gBAAgB,CAACE,OAAO,IAAIJ,CAAC,CAACC,GAAG,KAAKC,gBAAgB,CAACG,SAAS,CAAC,EACpI;UACAxD,oBAAoB,CAACmD,CAAC,CAAC,CAAA;AACvB,UAAA,OAAO,IAAI,CAAA;AACZ,SAAA;AACD,QAAA,OAAO,KAAK,CAAA;AACd,OAAA;AAAE,KAAA,CAEN,CAAG,CAAA;AAEN,GAAA;EAED,oBACEhK,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEY,IAAAA,GAAG,EAAEiF,gBAAiB;AACtBhJ,IAAAA,SAAS,EAAE,oCAA6BA,SAAS,CAAA;AAAG,GAAA,EAIlDwH,YAAY,KAAIrH,OAAO,KAAP,IAAA,IAAAA,OAAO,uBAAPA,OAAO,CAAEkH,SAAS,CAAA,KAAKgE,kBAAkB,iBACvDnI,cAAA,CAAAC,aAAA,CAACqK,aAAa,EACZtK,IAAAA,eAAAA,cAAA,CAAAC,aAAA,CAAC+B,KAAK,EAAA;IACJC,IAAI,EAAEC,eAAe,CAACC,SAAU;IAChCC,KAAK,EAAEC,WAAW,CAACC,cAAAA;AAAe,GAAA,EAEjC4B,MAAM,CAACjH,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEkH,SAAS,EAAE,cAAc,EAAE;AAAEC,IAAAA,MAAM,EAAE3F,UAAAA;GAAY,CAAC,CAEvE,CACD,CAAC,eAEJuB,cAAA,CAAAC,aAAA,CAACrD,qBAAqB,EAAA;AACpBG,IAAAA,MAAM,EAAEA,MAAO;AACfC,IAAAA,OAAO,EAAEiI,cAAe;AACxBhI,IAAAA,OAAO,EAAEA,OAAQ;AACjBI,IAAAA,QAAQ,EAAEA,QAAS;AACnBE,IAAAA,WAAW,EAAEA,WAAY;AACzBI,IAAAA,iBAAiB,EAAEgI,aAAc;AACjClI,IAAAA,gBAAgB,EAAEA,gBAAiB;IACnCI,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,EAAEuH,aAAc;AAC1BtH,IAAAA,cAAc,EAAEuH,iBAAkB;AAClCrH,IAAAA,cAAc,EAAEA,cAAe;AAC/BJ,IAAAA,QAAQ,EAAEuH,WAAAA;AAAY,GAAA,CAExB,EACCtH,UAAU,iBACT8B,cAAA,CAAAC,aAAA,CAACsK,aAAa,EAAA;AACZtN,IAAAA,OAAO,EAAEA,OAAQ;IACjBuN,QAAQ,EAAE,YAAA;MAAM,OAAA/E,aAAa,CAAC,KAAK,CAAC,CAAA;AAApB,KAAA;AAAqB,GAAA,CAExC,EACAtH,cAAc,iBACb6B,cAAA,CAAAC,aAAA,CAACwK,UAAU,EAAA;AACTxN,IAAAA,OAAO,EAAEA,OAAuB;AAChCqC,IAAAA,MAAM,EAAE,CAAA,MAAArC,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEsC,MAAM,MAAA,IAAA,IAAAqE,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,EAAA,CAAE7G,MAAM,MAAKA,MAAO;IAC3C2N,OAAO,EAAE,YAAA;MAAM,OAAAhF,iBAAiB,CAAC,KAAK,CAAC,CAAA;KAAC;IACxCiF,QAAQ,EAAE,YAAA;MACRvF,aAAa,CAACnI,OAAO,CAAC,CAAA;MACtByI,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 { 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';\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 { dateLocale } = useLocalization();\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\n return (\n <div className={`sendbird-thread-list-item-content ${className} ${isByMe ? 'outgoing' : 'incoming'}`}>\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 && (\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 className=\"sendbird-thread-list-item-content__middle\">\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 {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 {(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 )}\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: '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) || isOGMessage(message as UserMessage)) ? '' : 'primary',\n ])}>\n <EmojiReactions\n userId={userId}\n message={message as UserMessage | FileMessage}\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 && (\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 </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';\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 } = 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 = isReactionEnabled && !currentChannel?.isSuper && !currentChannel?.isBroadcast;\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 [ableMention, setAbleMention] = useState(true);\n const displaySuggestedMentionList = isOnline\n && isMentionEnabled\n && mentionNickname.length > 0\n && !isMuted\n && !(isChannelFrozen && !(currentChannel.myRole === Role.OPERATOR));\n useEffect(() => {\n if (mentionedUsers?.length >= userMention?.maxMentionCount) {\n setAbleMention(false);\n } else {\n setAbleMention(true);\n }\n }, [mentionedUsers]);\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 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","dateLocale","useLocalization","supposedHover","setSupposedHover","useState","disableUserProfile","renderUserProfile","useContext","UserProfileContext","avatarRef","useRef","isByMe","sender","sendingStatus","useReplying","parentMessageId","parentMessage","supposedHoverClassName","isReactionEnabledInChannel","isEphemeral","React","createElement","ContextMenu","menuTrigger","toggleDropdown","_channel$members","_channel$members$find","_message$sender2","Avatar","src","members","find","member","_message$sender","profileUrl","ref","width","height","onClick","menuItems","closeDropdown","MenuItems","parentRef","parentContainRef","style","paddingTop","paddingBottom","user","close","UserProfile","onSuccess","MessageItemMenu","MessageItemReactionMenu","spaceFromTrigger","Label","type","LabelTypography","CAPTION_2","color","LabelColors","ONBACKGROUND_2","_message$sender3","nickname","getSenderName","getClassName","MessageStatus","isTextMessage","TextMessageItemBody","isOGMessage","OGMessageItemBody","isVoiceMessage","VoiceMessageItemBody","channelUrl","url","getUIKitMessageType","FILE","FileMessageItemBody","truncateLimit","isThumbnailMessage","ThumbnailMessageItemBody","UNKNOWN","UnknownMessageItemBody","reactions","length","EmojiReactions","memberNicknamesMap","CAPTION_3","format","createdAt","locale","ThreadListItem","_stores$userStore","_stores$userStore$use","hasSeparator","renderCustomSeparator","handleScroll","stores","config","useSendbirdStateContext","isOnline","userMention","userStore","threadContext","useThreadContext","currentChannel","threadListState","updateMessage","deleteMessage","isMuted","isChannelFrozen","openingMessage","setShowEdit","setShowRemove","setShowFileViewer","usingReaction","isSuper","isBroadcast","messageScrollRef","useLayoutEffect","messageId","current","_messageScrollRef$cur","scrollIntoView","block","inline","editMessageInputRef","mentionNickname","setMentionNickname","mentionedUsers","setMentionedUsers","mentionedUserIds","setMentionedUserIds","messageInputEvent","setMessageInputEvent","selectedUser","setSelectedUser","mentionSuggestedUsers","setMentionSuggestedUsers","ableMention","setAbleMention","displaySuggestedMentionList","myRole","Role","OPERATOR","useEffect","maxMentionCount","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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"}
@@ -1,126 +1,122 @@
1
- import { a as __spreadArray } from '../../tslib.es6-85bcd95d.js';
2
1
  import React__default, { useRef, useState, useEffect } from 'react';
3
2
  import { MutedState } from '@sendbird/chat/groupChannel';
4
3
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
5
4
  import MessageInput from '../../ui/MessageInput.js';
6
- import { M as MessageInputKeys } from '../../const-8a7444d1.js';
5
+ import { M as MessageInputKeys } from '../../const-6a07b718.js';
7
6
  import SuggestedMentionList from '../../Channel/components/SuggestedMentionList.js';
8
- import { u as useThreadContext } from '../../ThreadProvider-1798360b.js';
9
- import { u as useLocalization } from '../../LocalizationContext-62966630.js';
10
- import { V as VoiceMessageInputWrapper } from '../../VoiceMessageInputWrapper-4479a1bd.js';
11
- import { R as Role } from '../../types-84207ac4.js';
7
+ import { u as useThreadContext } from '../../ThreadProvider-0a3c5f37.js';
8
+ import { u as useLocalization } from '../../LocalizationContext-9c54e783.js';
9
+ import { V as VoiceMessageInputWrapper } from '../../VoiceMessageInputWrapper-ff160b51.js';
10
+ import { R as Role } from '../../types-a85de720.js';
12
11
  import '../../withSendbird.js';
13
- import '../../_rollupPluginBabelHelpers-48b56150.js';
12
+ import '../../_rollupPluginBabelHelpers-b2d9bfc5.js';
14
13
  import 'prop-types';
15
- import '../../const-34b3294d.js';
14
+ import '../../const-5f722b91.js';
16
15
  import '../../ui/IconButton.js';
17
16
  import '../../ui/Button.js';
18
- import '../../index-538fa479.js';
19
- import '../../stringSet-e0fd81b2.js';
17
+ import '../../index-4111594a.js';
18
+ import '../../stringSet-1f18348a.js';
20
19
  import 'dompurify';
21
- import '../../consts-81c7d9ed.js';
20
+ import '../../consts-d4c78cc0.js';
22
21
  import '../../ui/Icon.js';
23
- import '../../index-1db30515.js';
22
+ import '../../index-dbe0e004.js';
24
23
  import '../../utils/message/getOutgoingMessageState.js';
25
- import '../../consts-165100af.js';
26
- import '../../consts-7a61df9f.js';
27
- import '../../tokenize-22d48b61.js';
28
- import '../../index-6574e8fd.js';
24
+ import '../../consts-aadaccca.js';
25
+ import '../../consts-790ae3a9.js';
26
+ import '../../tokenize-63d895d3.js';
27
+ import '../../index-a9ddd0f5.js';
29
28
  import '../../ui/Avatar.js';
30
29
  import '../../ui/ImageRenderer.js';
31
- import '../../uuid-39d923b9.js';
32
- import '../../ChannelProvider-4e33aa60.js';
33
- import '../../UserProfileContext-7083bd82.js';
34
- import '../../index-5cfaecc9.js';
35
- import '../../topics-bc5fee43.js';
36
- import '../../compareIds-bc4cf9bf.js';
30
+ import '../../uuid-48baadaf.js';
31
+ import '../../ChannelProvider-4ab3a851.js';
32
+ import '../../UserProfileContext-a8aa4c0f.js';
33
+ import '../../index-f48cfdf7.js';
34
+ import '../../topics-d8d10f83.js';
35
+ import '../../compareIds-1e0e668f.js';
37
36
  import '@sendbird/chat/message';
38
37
  import '../../ui/ContextMenu.js';
39
38
  import 'react-dom';
40
39
  import '../../ui/SortByRow.js';
41
40
  import '../../ui/ReactionButton.js';
42
- import '../../consts-96859f90.js';
41
+ import '../../consts-c9746f2b.js';
43
42
  import '../context/types.js';
44
43
  import '@sendbird/chat';
45
44
  import '../../VoicePlayer/useVoicePlayer.js';
46
- import '../../index-47ba6604.js';
45
+ import '../../index-38a78d99.js';
47
46
  import '../../VoiceRecorder/context.js';
48
47
  import '../../VoiceRecorder/useVoiceRecorder.js';
49
- import '../../index-3ac8a689.js';
48
+ import '../../index-83600696.js';
50
49
  import '../../ui/PlaybackTime.js';
51
50
  import '../../ui/ProgressBar.js';
52
51
  import '../../ui/TextButton.js';
53
- import '../../color-4ecee870.js';
52
+ import '../../color-3bac434a.js';
54
53
  import '../../ui/Modal.js';
55
- import '../../index-6f66895e.js';
56
- import '../../MediaQueryContext-17146a37.js';
54
+ import '../../index-2a938266.js';
55
+ import '../../MediaQueryContext-1988a4bc.js';
56
+
57
+ const ThreadMessageInput = (props, ref) => {
58
+ const {
59
+ className,
60
+ renderFileUploadIcon,
61
+ renderVoiceMessageIcon,
62
+ renderSendMessageIcon
63
+ } = props;
64
+ const propsDisabled = props.disabled;
65
+ const {
66
+ config
67
+ } = useSendbirdStateContext();
68
+ const {
69
+ stringSet
70
+ } = useLocalization();
71
+ const {
72
+ isMentionEnabled,
73
+ isOnline,
74
+ userMention,
75
+ isVoiceMessageEnabled
76
+ } = config;
77
+ const {
78
+ currentChannel,
79
+ parentMessage,
80
+ sendMessage,
81
+ sendFileMessage,
82
+ sendVoiceMessage,
83
+ isMuted,
84
+ isChannelFrozen,
85
+ allThreadMessages
86
+ } = useThreadContext();
87
+ const messageInputRef = useRef();
88
+ const disabled = propsDisabled || isMuted || !((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.myRole) === Role.OPERATOR) && isChannelFrozen || parentMessage === null;
57
89
 
58
- var ThreadMessageInput = function (props, ref) {
59
- var className = props.className,
60
- renderFileUploadIcon = props.renderFileUploadIcon,
61
- renderVoiceMessageIcon = props.renderVoiceMessageIcon,
62
- renderSendMessageIcon = props.renderSendMessageIcon;
63
- var propsDisabled = props.disabled;
64
- var config = useSendbirdStateContext().config;
65
- var stringSet = useLocalization().stringSet;
66
- var isMentionEnabled = config.isMentionEnabled,
67
- isOnline = config.isOnline,
68
- userMention = config.userMention,
69
- isVoiceMessageEnabled = config.isVoiceMessageEnabled;
70
- var _a = useThreadContext(),
71
- currentChannel = _a.currentChannel,
72
- parentMessage = _a.parentMessage,
73
- sendMessage = _a.sendMessage,
74
- sendFileMessage = _a.sendFileMessage,
75
- sendVoiceMessage = _a.sendVoiceMessage,
76
- isMuted = _a.isMuted,
77
- isChannelFrozen = _a.isChannelFrozen,
78
- allThreadMessages = _a.allThreadMessages;
79
- var messageInputRef = useRef();
80
- var disabled = propsDisabled || isMuted || !((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.myRole) === Role.OPERATOR) && isChannelFrozen || parentMessage === null;
81
90
  // mention
82
- var _b = useState(''),
83
- mentionNickname = _b[0],
84
- setMentionNickname = _b[1];
85
- var _c = useState([]),
86
- mentionedUsers = _c[0],
87
- setMentionedUsers = _c[1];
88
- var _d = useState([]),
89
- mentionedUserIds = _d[0],
90
- setMentionedUserIds = _d[1];
91
- var _e = useState(null),
92
- selectedUser = _e[0],
93
- setSelectedUser = _e[1];
94
- var _f = useState([]),
95
- mentionSuggestedUsers = _f[0],
96
- setMentionSuggestedUsers = _f[1];
97
- var _g = useState(true),
98
- ableMention = _g[0],
99
- setAbleMention = _g[1];
100
- var _h = useState(null),
101
- messageInputEvent = _h[0],
102
- setMessageInputEvent = _h[1];
103
- var _j = useState(false),
104
- showVoiceMessageInput = _j[0],
105
- setShowVoiceMessageInput = _j[1];
106
- var displaySuggestedMentionList = isOnline && isMentionEnabled && mentionNickname.length > 0;
91
+ const [mentionNickname, setMentionNickname] = useState('');
92
+ const [mentionedUsers, setMentionedUsers] = useState([]);
93
+ const [mentionedUserIds, setMentionedUserIds] = useState([]);
94
+ const [selectedUser, setSelectedUser] = useState(null);
95
+ const [mentionSuggestedUsers, setMentionSuggestedUsers] = useState([]);
96
+ const [ableMention, setAbleMention] = useState(true);
97
+ const [messageInputEvent, setMessageInputEvent] = useState(null);
98
+ const [showVoiceMessageInput, setShowVoiceMessageInput] = useState(false);
99
+ const displaySuggestedMentionList = isOnline && isMentionEnabled && mentionNickname.length > 0;
107
100
  // && !utils.isDisabledBecauseFrozen(channel)
108
101
  // && !utils.isDisabledBecauseMuted(channel);
102
+
109
103
  // Reset when changing channel
110
- useEffect(function () {
104
+ useEffect(() => {
111
105
  setShowVoiceMessageInput(false);
112
106
  }, [currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url]);
113
- useEffect(function () {
107
+ useEffect(() => {
114
108
  if ((mentionedUsers === null || mentionedUsers === void 0 ? void 0 : mentionedUsers.length) >= (userMention === null || userMention === void 0 ? void 0 : userMention.maxMentionCount)) {
115
109
  setAbleMention(false);
116
110
  } else {
117
111
  setAbleMention(true);
118
112
  }
119
113
  }, [mentionedUsers]);
120
- useEffect(function () {
121
- setMentionedUsers(mentionedUsers.filter(function (_a) {
122
- var userId = _a.userId;
123
- var i = mentionedUserIds.indexOf(userId);
114
+ useEffect(() => {
115
+ setMentionedUsers(mentionedUsers.filter(_ref => {
116
+ let {
117
+ userId
118
+ } = _ref;
119
+ const i = mentionedUserIds.indexOf(userId);
124
120
  if (i < 0) {
125
121
  return false;
126
122
  } else {
@@ -129,28 +125,28 @@ var ThreadMessageInput = function (props, ref) {
129
125
  }
130
126
  }));
131
127
  }, [mentionedUserIds]);
132
- if ((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.isBroadcast) && (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.myRole) !== Role.OPERATOR) {
128
+ if (currentChannel !== null && currentChannel !== void 0 && currentChannel.isBroadcast && (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.myRole) !== Role.OPERATOR) {
133
129
  return null;
134
130
  }
135
131
  return /*#__PURE__*/React__default.createElement("div", {
136
- className: "sendbird-thread-message-input".concat(showVoiceMessageInput ? '--voice-message' : '', " ").concat(className)
132
+ className: `sendbird-thread-message-input${showVoiceMessageInput ? '--voice-message' : ''} ${className}`
137
133
  }, displaySuggestedMentionList && /*#__PURE__*/React__default.createElement(SuggestedMentionList, {
138
134
  targetNickname: mentionNickname,
139
135
  inputEvent: messageInputEvent
140
136
  // renderUserMentionItem={renderUserMentionItem}
141
137
  ,
142
- onUserItemClick: function (user) {
138
+ onUserItemClick: user => {
143
139
  if (user) {
144
- setMentionedUsers(__spreadArray(__spreadArray([], mentionedUsers, true), [user], false));
140
+ setMentionedUsers([...mentionedUsers, user]);
145
141
  }
146
142
  setMentionNickname('');
147
143
  setSelectedUser(user);
148
144
  setMessageInputEvent(null);
149
145
  },
150
- onFocusItemChange: function () {
146
+ onFocusItemChange: () => {
151
147
  setMessageInputEvent(null);
152
148
  },
153
- onFetchUsers: function (users) {
149
+ onFetchUsers: users => {
154
150
  setMentionSuggestedUsers(users);
155
151
  },
156
152
  ableAddMention: ableMention,
@@ -158,11 +154,11 @@ var ThreadMessageInput = function (props, ref) {
158
154
  maxSuggestionCount: userMention === null || userMention === void 0 ? void 0 : userMention.maxSuggestionCount
159
155
  }), showVoiceMessageInput ? /*#__PURE__*/React__default.createElement(VoiceMessageInputWrapper, {
160
156
  channel: currentChannel,
161
- onSubmitClick: function (recordedFile, duration) {
157
+ onSubmitClick: (recordedFile, duration) => {
162
158
  sendVoiceMessage(recordedFile, duration, parentMessage);
163
159
  setShowVoiceMessageInput(false);
164
160
  },
165
- onCancelClick: function () {
161
+ onCancelClick: () => {
166
162
  setShowVoiceMessageInput(false);
167
163
  }
168
164
  }) : /*#__PURE__*/React__default.createElement(MessageInput, {
@@ -175,7 +171,7 @@ var ThreadMessageInput = function (props, ref) {
175
171
  mentionSelectedUser: selectedUser,
176
172
  isMentionEnabled: isMentionEnabled,
177
173
  isVoiceMessageEnabled: isVoiceMessageEnabled,
178
- onVoiceMessageIconClick: function () {
174
+ onVoiceMessageIconClick: () => {
179
175
  setShowVoiceMessageInput(true);
180
176
  },
181
177
  renderFileUploadIcon: renderFileUploadIcon,
@@ -183,40 +179,42 @@ var ThreadMessageInput = function (props, ref) {
183
179
  renderSendMessageIcon: renderSendMessageIcon,
184
180
  ref: ref || messageInputRef,
185
181
  placeholder: (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.isFrozen) && !((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.myRole) === Role.OPERATOR) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED || (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.myMutedState) === MutedState.MUTED && stringSet.MESSAGE_INPUT__PLACE_HOLDER__MUTED_SHORT || (allThreadMessages.length > 0 ? stringSet.THREAD__INPUT__REPLY_TO_THREAD : stringSet.THREAD__INPUT__REPLY_IN_THREAD),
186
- onStartTyping: function () {
187
- var _a;
188
- (_a = currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.startTyping) === null || _a === void 0 ? void 0 : _a.call(currentChannel);
182
+ onStartTyping: () => {
183
+ var _currentChannel$start;
184
+ currentChannel === null || currentChannel === void 0 ? void 0 : (_currentChannel$start = currentChannel.startTyping) === null || _currentChannel$start === void 0 ? void 0 : _currentChannel$start.call(currentChannel);
189
185
  },
190
- onSendMessage: function (_a) {
191
- var _b;
192
- var message = _a.message,
193
- mentionTemplate = _a.mentionTemplate;
186
+ onSendMessage: _ref2 => {
187
+ var _currentChannel$endTy;
188
+ let {
189
+ message,
190
+ mentionTemplate
191
+ } = _ref2;
194
192
  sendMessage({
195
193
  message: message,
196
- mentionedUsers: mentionedUsers,
194
+ mentionedUsers,
197
195
  mentionTemplate: mentionTemplate,
198
196
  quoteMessage: parentMessage
199
197
  });
200
198
  setMentionNickname('');
201
199
  setMentionedUsers([]);
202
- (_b = currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.endTyping) === null || _b === void 0 ? void 0 : _b.call(currentChannel);
200
+ currentChannel === null || currentChannel === void 0 ? void 0 : (_currentChannel$endTy = currentChannel.endTyping) === null || _currentChannel$endTy === void 0 ? void 0 : _currentChannel$endTy.call(currentChannel);
203
201
  },
204
- onFileUpload: function (file) {
202
+ onFileUpload: file => {
205
203
  sendFileMessage(file, parentMessage);
206
204
  },
207
- onUserMentioned: function (user) {
205
+ onUserMentioned: user => {
208
206
  if ((selectedUser === null || selectedUser === void 0 ? void 0 : selectedUser.userId) === (user === null || user === void 0 ? void 0 : user.userId)) {
209
207
  setSelectedUser(null);
210
208
  setMentionNickname('');
211
209
  }
212
210
  },
213
- onMentionStringChange: function (mentionText) {
211
+ onMentionStringChange: mentionText => {
214
212
  setMentionNickname(mentionText);
215
213
  },
216
- onMentionedUserIdsUpdated: function (userIds) {
214
+ onMentionedUserIdsUpdated: userIds => {
217
215
  setMentionedUserIds(userIds);
218
216
  },
219
- onKeyDown: function (e) {
217
+ onKeyDown: e => {
220
218
  if (displaySuggestedMentionList && (mentionSuggestedUsers === null || mentionSuggestedUsers === void 0 ? void 0 : mentionSuggestedUsers.length) > 0 && (e.key === MessageInputKeys.Enter && ableMention || e.key === MessageInputKeys.ArrowUp || e.key === MessageInputKeys.ArrowDown)) {
221
219
  setMessageInputEvent(e);
222
220
  return true;