@sendbird/uikit-react 3.3.7 → 3.4.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (572) hide show
  1. package/App.js +60 -34
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +150 -0
  4. package/Channel/components/ChannelHeader.js +20 -18
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +48 -29
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +15 -14
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +4 -4
  11. package/Channel/components/Message.js +33 -24
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +62 -20
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +36 -27
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +21 -17
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +17 -16
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +15 -14
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +4 -4
  24. package/Channel/context.js +14 -13
  25. package/Channel/context.js.map +1 -1
  26. package/Channel.js +43 -28
  27. package/Channel.js.map +1 -1
  28. package/ChannelList/components/AddChannel.js +15 -15
  29. package/ChannelList/components/ChannelListHeader.js +7 -7
  30. package/ChannelList/components/ChannelListUI.js +29 -28
  31. package/ChannelList/components/ChannelListUI.js.map +1 -1
  32. package/ChannelList/components/ChannelPreview.js +26 -25
  33. package/ChannelList/components/ChannelPreview.js.map +1 -1
  34. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  35. package/ChannelList/context.js +8 -8
  36. package/ChannelList.js +29 -28
  37. package/ChannelList.js.map +1 -1
  38. package/{ChannelListProvider-eb4708a3.js → ChannelListProvider-3c78429f.js} +8 -8
  39. package/{ChannelListProvider-eb4708a3.js.map → ChannelListProvider-3c78429f.js.map} +1 -1
  40. package/{ChannelProvider-1e540c0e.js → ChannelProvider-1d70b8a0.js} +88 -13
  41. package/ChannelProvider-1d70b8a0.js.map +1 -0
  42. package/ChannelSettings/components/ChannelProfile.js +12 -12
  43. package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  44. package/ChannelSettings/components/EditDetailsModal.js +12 -12
  45. package/ChannelSettings/components/LeaveChannel.js +12 -12
  46. package/ChannelSettings/components/ModerationPanel.js +15 -15
  47. package/ChannelSettings/components/UserListItem.js +11 -11
  48. package/ChannelSettings/components/UserPanel.js +18 -15
  49. package/ChannelSettings/components/UserPanel.js.map +1 -1
  50. package/ChannelSettings/context.js +3 -3
  51. package/ChannelSettings.js +18 -18
  52. package/CreateChannel/components/CreateChannelUI.js +14 -14
  53. package/CreateChannel/components/InviteUsers.js +14 -14
  54. package/CreateChannel/components/SelectChannelType.js +11 -11
  55. package/CreateChannel/context.js +4 -4
  56. package/CreateChannel.js +14 -14
  57. package/{CreateChannelProvider-ed2e3cb4.js → CreateChannelProvider-946fb371.js} +1 -1
  58. package/{CreateChannelProvider-ed2e3cb4.js.map → CreateChannelProvider-946fb371.js.map} +1 -1
  59. package/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
  60. package/CreateOpenChannel/context.js +1 -1
  61. package/CreateOpenChannel.js +10 -10
  62. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  63. package/EditUserProfile.js +13 -13
  64. package/{LocalizationContext-4c2faa9a.js → LocalizationContext-539093a9.js} +3 -3
  65. package/{LocalizationContext-4c2faa9a.js.map → LocalizationContext-539093a9.js.map} +1 -1
  66. package/{MediaQueryContext-97a21b7e.js → MediaQueryContext-79c8ad08.js} +1 -1
  67. package/{MediaQueryContext-97a21b7e.js.map → MediaQueryContext-79c8ad08.js.map} +1 -1
  68. package/{MemberList-6483a7db.js → MemberList-1350e670.js} +10 -7
  69. package/MemberList-1350e670.js.map +1 -0
  70. package/MessageSearch/components/MessageSearchUI.js +13 -11
  71. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  72. package/MessageSearch/context.js +2 -2
  73. package/MessageSearch.js +13 -11
  74. package/MessageSearch.js.map +1 -1
  75. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  76. package/OpenChannel/components/OpenChannelHeader.js +13 -13
  77. package/OpenChannel/components/OpenChannelInput.js +16 -15
  78. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  79. package/OpenChannel/components/OpenChannelMessage.js +22 -22
  80. package/OpenChannel/components/OpenChannelMessageList.js +24 -24
  81. package/OpenChannel/components/OpenChannelUI.js +24 -24
  82. package/OpenChannel/context.js +9 -9
  83. package/OpenChannel.js +24 -24
  84. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  85. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  86. package/OpenChannelList/context.js +4 -4
  87. package/OpenChannelList.js +13 -13
  88. package/{OpenChannelListProvider-95808e48.js → OpenChannelListProvider-64e2ca27.js} +3 -3
  89. package/{OpenChannelListProvider-95808e48.js.map → OpenChannelListProvider-64e2ca27.js.map} +1 -1
  90. package/{OpenChannelProvider-e3137432.js → OpenChannelProvider-5a54a791.js} +7 -7
  91. package/{OpenChannelProvider-e3137432.js.map → OpenChannelProvider-5a54a791.js.map} +1 -1
  92. package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  93. package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  94. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  95. package/OpenChannelSettings/components/OperatorUI.js +17 -17
  96. package/OpenChannelSettings/components/ParticipantUI.js +15 -15
  97. package/OpenChannelSettings/context.js +3 -3
  98. package/OpenChannelSettings.js +18 -18
  99. package/README.md +8 -0
  100. package/{RemoveMessageModal-0baf3553.js → RemoveMessageModal-cd536405.js} +3 -3
  101. package/{RemoveMessageModal-0baf3553.js.map → RemoveMessageModal-cd536405.js.map} +1 -1
  102. package/SendbirdProvider.js +29 -11
  103. package/SendbirdProvider.js.map +1 -1
  104. package/Thread/components/ParentMessageInfo.js +32 -22
  105. package/Thread/components/ParentMessageInfo.js.map +1 -1
  106. package/Thread/components/ParentMessageInfoItem.js +33 -16
  107. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  108. package/Thread/components/ThreadHeader.js +6 -6
  109. package/Thread/components/ThreadList.js +33 -24
  110. package/Thread/components/ThreadList.js.map +1 -1
  111. package/Thread/components/ThreadListItem.js +40 -25
  112. package/Thread/components/ThreadListItem.js.map +1 -1
  113. package/Thread/components/ThreadMessageInput.js +71 -21
  114. package/Thread/components/ThreadMessageInput.js.map +1 -1
  115. package/Thread/components/ThreadUI.js +49 -31
  116. package/Thread/components/ThreadUI.js.map +1 -1
  117. package/Thread/context.js +9 -8
  118. package/Thread/context.js.map +1 -1
  119. package/Thread.js +47 -29
  120. package/Thread.js.map +1 -1
  121. package/{ThreadProvider-a1413f01.js → ThreadProvider-9f8652df.js} +91 -11
  122. package/ThreadProvider-9f8652df.js.map +1 -0
  123. package/{UserProfileContext-e5d90f15.js → UserProfileContext-bd8525b7.js} +1 -1
  124. package/{UserProfileContext-e5d90f15.js.map → UserProfileContext-bd8525b7.js.map} +1 -1
  125. package/VoiceMessageInputWrapper-b149ff89.js +173 -0
  126. package/VoiceMessageInputWrapper-b149ff89.js.map +1 -0
  127. package/VoicePlayer/context.js +5 -0
  128. package/VoicePlayer/context.js.map +1 -0
  129. package/VoicePlayer/useVoicePlayer.js +87 -0
  130. package/VoicePlayer/useVoicePlayer.js.map +1 -0
  131. package/VoiceRecorder/context.js +243 -0
  132. package/VoiceRecorder/context.js.map +1 -0
  133. package/VoiceRecorder/useVoiceRecorder.js +117 -0
  134. package/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  135. package/{_rollupPluginBabelHelpers-b45d3824.js → _rollupPluginBabelHelpers-09618dc3.js} +1 -1
  136. package/_rollupPluginBabelHelpers-09618dc3.js.map +1 -0
  137. package/{actionTypes-c69daac1.js → actionTypes-0dd0c34b.js} +1 -1
  138. package/{actionTypes-c69daac1.js.map → actionTypes-0dd0c34b.js.map} +1 -1
  139. package/cjs/App.js +60 -34
  140. package/cjs/App.js.map +1 -1
  141. package/cjs/Channel/components/ChannelHeader.js +20 -18
  142. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  143. package/cjs/Channel/components/ChannelUI.js +48 -29
  144. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  145. package/cjs/Channel/components/FileViewer.js +15 -14
  146. package/cjs/Channel/components/FileViewer.js.map +1 -1
  147. package/cjs/Channel/components/FrozenNotification.js +4 -4
  148. package/cjs/Channel/components/Message.js +33 -24
  149. package/cjs/Channel/components/Message.js.map +1 -1
  150. package/cjs/Channel/components/MessageInput.js +62 -20
  151. package/cjs/Channel/components/MessageInput.js.map +1 -1
  152. package/cjs/Channel/components/MessageList.js +36 -27
  153. package/cjs/Channel/components/MessageList.js.map +1 -1
  154. package/cjs/Channel/components/RemoveMessageModal.js +21 -17
  155. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  156. package/cjs/Channel/components/SuggestedMentionList.js +17 -16
  157. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  158. package/cjs/Channel/components/TypingIndicator.js +15 -14
  159. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  160. package/cjs/Channel/components/UnreadCount.js +4 -4
  161. package/cjs/Channel/context.js +14 -13
  162. package/cjs/Channel/context.js.map +1 -1
  163. package/cjs/Channel.js +43 -28
  164. package/cjs/Channel.js.map +1 -1
  165. package/cjs/ChannelList/components/AddChannel.js +15 -15
  166. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  167. package/cjs/ChannelList/components/ChannelListUI.js +29 -28
  168. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  169. package/cjs/ChannelList/components/ChannelPreview.js +26 -25
  170. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  171. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  172. package/cjs/ChannelList/context.js +8 -8
  173. package/cjs/ChannelList.js +29 -28
  174. package/cjs/ChannelList.js.map +1 -1
  175. package/cjs/{ChannelListProvider-94df9f01.js → ChannelListProvider-7df03e2a.js} +8 -8
  176. package/cjs/{ChannelListProvider-94df9f01.js.map → ChannelListProvider-7df03e2a.js.map} +1 -1
  177. package/cjs/{ChannelProvider-3fbf7c5e.js → ChannelProvider-56b10dd6.js} +87 -12
  178. package/cjs/ChannelProvider-56b10dd6.js.map +1 -0
  179. package/cjs/ChannelSettings/components/ChannelProfile.js +12 -12
  180. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  181. package/cjs/ChannelSettings/components/EditDetailsModal.js +12 -12
  182. package/cjs/ChannelSettings/components/LeaveChannel.js +12 -12
  183. package/cjs/ChannelSettings/components/ModerationPanel.js +15 -15
  184. package/cjs/ChannelSettings/components/UserListItem.js +11 -11
  185. package/cjs/ChannelSettings/components/UserPanel.js +18 -15
  186. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  187. package/cjs/ChannelSettings/context.js +3 -3
  188. package/cjs/ChannelSettings.js +18 -18
  189. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  190. package/cjs/CreateChannel/components/InviteUsers.js +14 -14
  191. package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
  192. package/cjs/CreateChannel/context.js +4 -4
  193. package/cjs/CreateChannel.js +14 -14
  194. package/cjs/{CreateChannelProvider-70422add.js → CreateChannelProvider-359f35d1.js} +1 -1
  195. package/cjs/{CreateChannelProvider-70422add.js.map → CreateChannelProvider-359f35d1.js.map} +1 -1
  196. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
  197. package/cjs/CreateOpenChannel/context.js +1 -1
  198. package/cjs/CreateOpenChannel.js +10 -10
  199. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  200. package/cjs/EditUserProfile.js +13 -13
  201. package/cjs/{LocalizationContext-a0f833e9.js → LocalizationContext-7d2c13ee.js} +3 -3
  202. package/cjs/{LocalizationContext-a0f833e9.js.map → LocalizationContext-7d2c13ee.js.map} +1 -1
  203. package/cjs/{MediaQueryContext-770ae8bc.js → MediaQueryContext-36855cf6.js} +1 -1
  204. package/cjs/{MediaQueryContext-770ae8bc.js.map → MediaQueryContext-36855cf6.js.map} +1 -1
  205. package/cjs/{MemberList-4a0910dd.js → MemberList-cf4488bc.js} +10 -7
  206. package/cjs/MemberList-cf4488bc.js.map +1 -0
  207. package/cjs/MessageSearch/components/MessageSearchUI.js +13 -11
  208. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  209. package/cjs/MessageSearch/context.js +2 -2
  210. package/cjs/MessageSearch.js +13 -11
  211. package/cjs/MessageSearch.js.map +1 -1
  212. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  213. package/cjs/OpenChannel/components/OpenChannelHeader.js +13 -13
  214. package/cjs/OpenChannel/components/OpenChannelInput.js +16 -15
  215. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  216. package/cjs/OpenChannel/components/OpenChannelMessage.js +22 -22
  217. package/cjs/OpenChannel/components/OpenChannelMessageList.js +24 -24
  218. package/cjs/OpenChannel/components/OpenChannelUI.js +24 -24
  219. package/cjs/OpenChannel/context.js +9 -9
  220. package/cjs/OpenChannel.js +24 -24
  221. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  222. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  223. package/cjs/OpenChannelList/context.js +4 -4
  224. package/cjs/OpenChannelList.js +13 -13
  225. package/cjs/{OpenChannelListProvider-e97c8ed9.js → OpenChannelListProvider-d0e494e8.js} +3 -3
  226. package/cjs/{OpenChannelListProvider-e97c8ed9.js.map → OpenChannelListProvider-d0e494e8.js.map} +1 -1
  227. package/cjs/{OpenChannelProvider-9b453ac0.js → OpenChannelProvider-84d45a52.js} +7 -7
  228. package/cjs/{OpenChannelProvider-9b453ac0.js.map → OpenChannelProvider-84d45a52.js.map} +1 -1
  229. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  230. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  231. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  232. package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -17
  233. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
  234. package/cjs/OpenChannelSettings/context.js +3 -3
  235. package/cjs/OpenChannelSettings.js +18 -18
  236. package/cjs/{RemoveMessageModal-7bde69be.js → RemoveMessageModal-44018509.js} +3 -3
  237. package/cjs/{RemoveMessageModal-7bde69be.js.map → RemoveMessageModal-44018509.js.map} +1 -1
  238. package/cjs/SendbirdProvider.js +29 -11
  239. package/cjs/SendbirdProvider.js.map +1 -1
  240. package/cjs/Thread/components/ParentMessageInfo.js +34 -24
  241. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  242. package/cjs/Thread/components/ParentMessageInfoItem.js +33 -16
  243. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  244. package/cjs/Thread/components/ThreadHeader.js +6 -6
  245. package/cjs/Thread/components/ThreadList.js +33 -24
  246. package/cjs/Thread/components/ThreadList.js.map +1 -1
  247. package/cjs/Thread/components/ThreadListItem.js +41 -26
  248. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  249. package/cjs/Thread/components/ThreadMessageInput.js +73 -23
  250. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  251. package/cjs/Thread/components/ThreadUI.js +49 -31
  252. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  253. package/cjs/Thread/context.js +9 -8
  254. package/cjs/Thread/context.js.map +1 -1
  255. package/cjs/Thread.js +47 -29
  256. package/cjs/Thread.js.map +1 -1
  257. package/cjs/{ThreadProvider-71441c16.js → ThreadProvider-e8591a61.js} +90 -10
  258. package/cjs/ThreadProvider-e8591a61.js.map +1 -0
  259. package/cjs/{UserProfileContext-74e6409b.js → UserProfileContext-89b8a98d.js} +1 -1
  260. package/cjs/{UserProfileContext-74e6409b.js.map → UserProfileContext-89b8a98d.js.map} +1 -1
  261. package/cjs/VoiceMessageInputWrapper-6d309e8c.js +179 -0
  262. package/cjs/VoiceMessageInputWrapper-6d309e8c.js.map +1 -0
  263. package/cjs/VoicePlayer/context.js +14 -0
  264. package/cjs/VoicePlayer/context.js.map +1 -0
  265. package/cjs/VoicePlayer/useVoicePlayer.js +91 -0
  266. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -0
  267. package/cjs/VoiceRecorder/context.js +253 -0
  268. package/cjs/VoiceRecorder/context.js.map +1 -0
  269. package/cjs/VoiceRecorder/useVoiceRecorder.js +122 -0
  270. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  271. package/cjs/{_rollupPluginBabelHelpers-25763ef8.js → _rollupPluginBabelHelpers-9807f0cb.js} +1 -1
  272. package/cjs/_rollupPluginBabelHelpers-9807f0cb.js.map +1 -0
  273. package/cjs/{actionTypes-85a652e4.js → actionTypes-64f969d0.js} +1 -1
  274. package/cjs/{actionTypes-85a652e4.js.map → actionTypes-64f969d0.js.map} +1 -1
  275. package/cjs/{color-51fd9a0c.js → color-ae15b40e.js} +1 -1
  276. package/cjs/{color-51fd9a0c.js.map → color-ae15b40e.js.map} +1 -1
  277. package/cjs/{compareIds-44844f10.js → compareIds-88a3abee.js} +1 -1
  278. package/cjs/{compareIds-44844f10.js.map → compareIds-88a3abee.js.map} +1 -1
  279. package/cjs/{const-4761421a.js → const-6d993a66.js} +1 -1
  280. package/cjs/{const-4761421a.js.map → const-6d993a66.js.map} +1 -1
  281. package/cjs/{const-618dd4f4.js → const-98ae036e.js} +1 -1
  282. package/cjs/{const-618dd4f4.js.map → const-98ae036e.js.map} +1 -1
  283. package/cjs/consts-7142bdfe.js +36 -0
  284. package/cjs/consts-7142bdfe.js.map +1 -0
  285. package/cjs/{context-4b1de73e.js → context-9f945182.js} +2 -2
  286. package/cjs/{context-4b1de73e.js.map → context-9f945182.js.map} +1 -1
  287. package/cjs/dist/index.css +413 -16
  288. package/cjs/dist/index.css.map +1 -1
  289. package/cjs/{index-32b39be6.js → index-1f2ac00b.js} +5 -5
  290. package/cjs/{index-32b39be6.js.map → index-1f2ac00b.js.map} +1 -1
  291. package/cjs/{index-4dc29990.js → index-31135e46.js} +1 -1
  292. package/cjs/{index-4dc29990.js.map → index-31135e46.js.map} +1 -1
  293. package/cjs/{index-9f6a474c.js → index-318ca5bb.js} +2 -2
  294. package/cjs/{index-9f6a474c.js.map → index-318ca5bb.js.map} +1 -1
  295. package/cjs/{index-0e76934f.js → index-45c199d5.js} +8 -8
  296. package/cjs/index-45c199d5.js.map +1 -0
  297. package/cjs/{index-bfe8bdde.js → index-6691da2c.js} +49 -3
  298. package/cjs/index-6691da2c.js.map +1 -0
  299. package/cjs/{index-97532335.js → index-80ec94b9.js} +2 -2
  300. package/cjs/{index-97532335.js.map → index-80ec94b9.js.map} +1 -1
  301. package/cjs/{index-2c095d94.js → index-86b55059.js} +2 -2
  302. package/cjs/{index-2c095d94.js.map → index-86b55059.js.map} +1 -1
  303. package/cjs/{index-c4738d8b.js → index-9d2d5d23.js} +3 -3
  304. package/cjs/{index-c4738d8b.js.map → index-9d2d5d23.js.map} +1 -1
  305. package/cjs/{index-756baf20.js → index-9f074bb0.js} +7 -7
  306. package/cjs/{index-756baf20.js.map → index-9f074bb0.js.map} +1 -1
  307. package/cjs/{index-4d6f2a4e.js → index-a34a53d3.js} +4 -4
  308. package/cjs/{index-4d6f2a4e.js.map → index-a34a53d3.js.map} +1 -1
  309. package/cjs/{index-67134275.js → index-c34f34a2.js} +2 -2
  310. package/cjs/{index-67134275.js.map → index-c34f34a2.js.map} +1 -1
  311. package/cjs/index-e0971532.js +280 -0
  312. package/cjs/index-e0971532.js.map +1 -0
  313. package/cjs/index-fa531baa.js +175 -0
  314. package/cjs/index-fa531baa.js.map +1 -0
  315. package/cjs/{index-7d4e7ad9.js → index-fb42d34c.js} +1 -1
  316. package/cjs/{index-7d4e7ad9.js.map → index-fb42d34c.js.map} +1 -1
  317. package/cjs/index.js +51 -39
  318. package/cjs/index.js.map +1 -1
  319. package/cjs/lame.all.js +14498 -0
  320. package/cjs/lame.all.js.map +1 -0
  321. package/cjs/sendbirdSelectors.js +2 -2
  322. package/cjs/{stringSet-87e51d08.js → stringSet-d4071e23.js} +5 -1
  323. package/cjs/stringSet-d4071e23.js.map +1 -0
  324. package/cjs/{topics-d9091126.js → topics-7108f68f.js} +1 -1
  325. package/cjs/{topics-d9091126.js.map → topics-7108f68f.js.map} +1 -1
  326. package/cjs/{tslib.es6-0b4c49f8.js → tslib.es6-23b4ef32.js} +1 -1
  327. package/cjs/{tslib.es6-0b4c49f8.js.map → tslib.es6-23b4ef32.js.map} +1 -1
  328. package/cjs/types-8f7bbb00.js +11 -0
  329. package/cjs/types-8f7bbb00.js.map +1 -0
  330. package/cjs/ui/Accordion.js +3 -3
  331. package/cjs/ui/AccordionGroup.js +2 -2
  332. package/cjs/ui/AdminMessage.js +3 -3
  333. package/cjs/ui/Avatar.js +2 -2
  334. package/cjs/ui/Badge.js +5 -5
  335. package/cjs/ui/BottomSheet.js +1 -1
  336. package/cjs/ui/Button.js +3 -3
  337. package/cjs/ui/ChannelAvatar.js +3 -3
  338. package/cjs/ui/ConnectionStatus.js +4 -4
  339. package/cjs/ui/ContextMenu.js +5 -5
  340. package/cjs/ui/DateSeparator.js +4 -4
  341. package/cjs/ui/EmojiReactions.js +7 -7
  342. package/cjs/ui/FileMessageItemBody.js +6 -6
  343. package/cjs/ui/FileViewer.js +8 -8
  344. package/cjs/ui/Icon.js +354 -314
  345. package/cjs/ui/Icon.js.map +1 -1
  346. package/cjs/ui/IconButton.js +1 -1
  347. package/cjs/ui/ImageRenderer.js +1 -1
  348. package/cjs/ui/Input.js +2 -2
  349. package/cjs/ui/Label.js +2 -2
  350. package/cjs/ui/LinkLabel.js +2 -2
  351. package/cjs/ui/Loader.js +1 -1
  352. package/cjs/ui/MentionLabel.js +11 -11
  353. package/cjs/ui/MessageContent.js +35 -20
  354. package/cjs/ui/MessageContent.js.map +1 -1
  355. package/cjs/ui/MessageInput.js +35 -16
  356. package/cjs/ui/MessageInput.js.map +1 -1
  357. package/cjs/ui/MessageItemMenu.js +9 -8
  358. package/cjs/ui/MessageItemMenu.js.map +1 -1
  359. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  360. package/cjs/ui/MessageSearchFileItem.js +17 -14
  361. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  362. package/cjs/ui/MessageSearchItem.js +9 -9
  363. package/cjs/ui/MessageStatus.js +10 -10
  364. package/cjs/ui/Modal.js +7 -7
  365. package/cjs/ui/OGMessageItemBody.js +36 -26
  366. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  367. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  368. package/cjs/ui/OpenChannelAvatar.js +6 -6
  369. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  370. package/cjs/ui/OpenchannelFileMessage.js +16 -16
  371. package/cjs/ui/OpenchannelOGMessage.js +16 -16
  372. package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
  373. package/cjs/ui/OpenchannelUserMessage.js +16 -16
  374. package/cjs/ui/PlaceHolder.js +6 -6
  375. package/cjs/ui/PlaybackTime.js +36 -0
  376. package/cjs/ui/PlaybackTime.js.map +1 -0
  377. package/cjs/ui/ProgressBar.js +41 -0
  378. package/cjs/ui/ProgressBar.js.map +1 -0
  379. package/cjs/ui/QuoteMessage.js +14 -8
  380. package/cjs/ui/QuoteMessage.js.map +1 -1
  381. package/cjs/ui/QuoteMessageInput.js +12 -11
  382. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  383. package/cjs/ui/ReactionBadge.js +3 -3
  384. package/cjs/ui/ReactionButton.js +1 -1
  385. package/cjs/ui/SortByRow.js +2 -2
  386. package/cjs/ui/TextButton.js +2 -2
  387. package/cjs/ui/TextMessageItemBody.js +11 -11
  388. package/cjs/ui/ThreadReplies.js +6 -6
  389. package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
  390. package/cjs/ui/Tooltip.js +3 -3
  391. package/cjs/ui/TooltipWrapper.js +1 -1
  392. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  393. package/cjs/ui/UserListItem.js +11 -11
  394. package/cjs/ui/UserProfile.js +10 -10
  395. package/cjs/ui/VoiceMessageItemBody.js +119 -0
  396. package/cjs/ui/VoiceMessageItemBody.js.map +1 -0
  397. package/cjs/ui/VoiceMessgeInput.js +23 -0
  398. package/cjs/ui/VoiceMessgeInput.js.map +1 -0
  399. package/cjs/ui/Word.js +11 -11
  400. package/cjs/{useLongPress-ff6353a1.js → useLongPress-62a89444.js} +3 -3
  401. package/cjs/{useLongPress-ff6353a1.js.map → useLongPress-62a89444.js.map} +1 -1
  402. package/cjs/useSendbirdStateContext.js +1 -1
  403. package/cjs/utils/message/isVoiceMessage.js +10 -0
  404. package/cjs/utils/message/isVoiceMessage.js.map +1 -0
  405. package/cjs/{utils-aa1597cc.js → utils-178ccede.js} +1 -1
  406. package/cjs/{utils-aa1597cc.js.map → utils-178ccede.js.map} +1 -1
  407. package/cjs/{utils-edb40a10.js → utils-41fef560.js} +2 -2
  408. package/cjs/{utils-edb40a10.js.map → utils-41fef560.js.map} +1 -1
  409. package/cjs/{utils-c948ddfe.js → utils-7bec6eaa.js} +1 -1
  410. package/cjs/{utils-c948ddfe.js.map → utils-7bec6eaa.js.map} +1 -1
  411. package/cjs/{utils-72ab488f.js → utils-b691a058.js} +1 -1
  412. package/cjs/{utils-72ab488f.js.map → utils-b691a058.js.map} +1 -1
  413. package/cjs/{uuid-0b5f4e5e.js → uuid-42040a5c.js} +1 -1
  414. package/cjs/{uuid-0b5f4e5e.js.map → uuid-42040a5c.js.map} +1 -1
  415. package/cjs/withSendbird.js +1 -1
  416. package/{color-1b42e49d.js → color-f2370c85.js} +1 -1
  417. package/{color-1b42e49d.js.map → color-f2370c85.js.map} +1 -1
  418. package/{compareIds-df760ae2.js → compareIds-a4557492.js} +1 -1
  419. package/{compareIds-df760ae2.js.map → compareIds-a4557492.js.map} +1 -1
  420. package/{const-c269fd32.js → const-593595f5.js} +1 -1
  421. package/{const-c269fd32.js.map → const-593595f5.js.map} +1 -1
  422. package/{const-11ae0dd9.js → const-ce447fcf.js} +1 -1
  423. package/{const-11ae0dd9.js.map → const-ce447fcf.js.map} +1 -1
  424. package/consts-d2d25dac.js +23 -0
  425. package/consts-d2d25dac.js.map +1 -0
  426. package/{context-2c35a852.js → context-95839b09.js} +2 -2
  427. package/{context-2c35a852.js.map → context-95839b09.js.map} +1 -1
  428. package/dist/index.css +413 -16
  429. package/dist/index.css.map +1 -1
  430. package/{index-6a8be188.js → index-2aaa784a.js} +7 -7
  431. package/{index-6a8be188.js.map → index-2aaa784a.js.map} +1 -1
  432. package/{index-e2994193.js → index-4a977e7d.js} +2 -2
  433. package/{index-e2994193.js.map → index-4a977e7d.js.map} +1 -1
  434. package/{index-6491c190.js → index-4b51e7af.js} +5 -5
  435. package/{index-6491c190.js.map → index-4b51e7af.js.map} +1 -1
  436. package/{index-30726ee1.js → index-4c6a2064.js} +2 -2
  437. package/{index-30726ee1.js.map → index-4c6a2064.js.map} +1 -1
  438. package/index-60d3992b.js +271 -0
  439. package/index-60d3992b.js.map +1 -0
  440. package/{index-8c38f9d0.js → index-620331eb.js} +2 -2
  441. package/{index-8c38f9d0.js.map → index-620331eb.js.map} +1 -1
  442. package/index-7b5efb26.js +168 -0
  443. package/index-7b5efb26.js.map +1 -0
  444. package/{index-a53d78b6.js → index-999fdb64.js} +1 -1
  445. package/{index-a53d78b6.js.map → index-999fdb64.js.map} +1 -1
  446. package/{index-1f0b91f3.js → index-9c2d0ccd.js} +2 -2
  447. package/{index-1f0b91f3.js.map → index-9c2d0ccd.js.map} +1 -1
  448. package/{index-fd5a03a3.js → index-b8e990b4.js} +1 -1
  449. package/{index-fd5a03a3.js.map → index-b8e990b4.js.map} +1 -1
  450. package/{index-425e5f17.js → index-bbab31f0.js} +48 -4
  451. package/index-bbab31f0.js.map +1 -0
  452. package/{index-aa4edbe2.js → index-daccde5e.js} +8 -8
  453. package/index-daccde5e.js.map +1 -0
  454. package/{index-6d541758.js → index-ed1f765b.js} +3 -3
  455. package/{index-6d541758.js.map → index-ed1f765b.js.map} +1 -1
  456. package/{index-aecdd02c.js → index-eefaf935.js} +4 -4
  457. package/{index-aecdd02c.js.map → index-eefaf935.js.map} +1 -1
  458. package/index.d.ts +16 -1
  459. package/index.js +51 -39
  460. package/index.js.map +1 -1
  461. package/lame.all.js +14492 -0
  462. package/lame.all.js.map +1 -0
  463. package/package.json +1 -1
  464. package/sendbirdSelectors.js +2 -2
  465. package/{stringSet-c2443946.js → stringSet-f9763488.js} +5 -1
  466. package/stringSet-f9763488.js.map +1 -0
  467. package/{topics-0ba43ee8.js → topics-1ec669f0.js} +1 -1
  468. package/{topics-0ba43ee8.js.map → topics-1ec669f0.js.map} +1 -1
  469. package/{tslib.es6-13412863.js → tslib.es6-fc4a2658.js} +1 -1
  470. package/{tslib.es6-13412863.js.map → tslib.es6-fc4a2658.js.map} +1 -1
  471. package/types-e86f9fca.js +9 -0
  472. package/types-e86f9fca.js.map +1 -0
  473. package/ui/Accordion.js +3 -3
  474. package/ui/AccordionGroup.js +2 -2
  475. package/ui/AdminMessage.js +3 -3
  476. package/ui/Avatar.js +2 -2
  477. package/ui/Badge.js +5 -5
  478. package/ui/BottomSheet.js +1 -1
  479. package/ui/Button.js +3 -3
  480. package/ui/ChannelAvatar.js +3 -3
  481. package/ui/ConnectionStatus.js +4 -4
  482. package/ui/ContextMenu.js +5 -5
  483. package/ui/DateSeparator.js +4 -4
  484. package/ui/EmojiReactions.js +7 -7
  485. package/ui/FileMessageItemBody.js +6 -6
  486. package/ui/FileViewer.js +8 -8
  487. package/ui/Icon.js +341 -299
  488. package/ui/Icon.js.map +1 -1
  489. package/ui/IconButton.js +1 -1
  490. package/ui/ImageRenderer.js +1 -1
  491. package/ui/Input.js +2 -2
  492. package/ui/Label.js +2 -2
  493. package/ui/LinkLabel.js +2 -2
  494. package/ui/Loader.js +1 -1
  495. package/ui/MentionLabel.js +11 -11
  496. package/ui/MessageContent.js +35 -20
  497. package/ui/MessageContent.js.map +1 -1
  498. package/ui/MessageInput.js +35 -16
  499. package/ui/MessageInput.js.map +1 -1
  500. package/ui/MessageItemMenu.js +9 -8
  501. package/ui/MessageItemMenu.js.map +1 -1
  502. package/ui/MessageItemReactionMenu.js +5 -5
  503. package/ui/MessageSearchFileItem.js +17 -14
  504. package/ui/MessageSearchFileItem.js.map +1 -1
  505. package/ui/MessageSearchItem.js +9 -9
  506. package/ui/MessageStatus.js +10 -10
  507. package/ui/Modal.js +7 -7
  508. package/ui/OGMessageItemBody.js +37 -27
  509. package/ui/OGMessageItemBody.js.map +1 -1
  510. package/ui/OpenChannelAdminMessage.js +3 -3
  511. package/ui/OpenChannelAvatar.js +6 -6
  512. package/ui/OpenchannelConversationHeader.js +6 -6
  513. package/ui/OpenchannelFileMessage.js +16 -16
  514. package/ui/OpenchannelOGMessage.js +16 -16
  515. package/ui/OpenchannelThumbnailMessage.js +15 -15
  516. package/ui/OpenchannelUserMessage.js +16 -16
  517. package/ui/PlaceHolder.js +6 -6
  518. package/ui/PlaybackTime.js +27 -0
  519. package/ui/PlaybackTime.js.map +1 -0
  520. package/ui/ProgressBar.js +31 -0
  521. package/ui/ProgressBar.js.map +1 -0
  522. package/ui/QuoteMessage.js +14 -8
  523. package/ui/QuoteMessage.js.map +1 -1
  524. package/ui/QuoteMessageInput.js +12 -11
  525. package/ui/QuoteMessageInput.js.map +1 -1
  526. package/ui/ReactionBadge.js +3 -3
  527. package/ui/ReactionButton.js +1 -1
  528. package/ui/SortByRow.js +2 -2
  529. package/ui/TextButton.js +2 -2
  530. package/ui/TextMessageItemBody.js +11 -11
  531. package/ui/ThreadReplies.js +6 -6
  532. package/ui/ThumbnailMessageItemBody.js +2 -2
  533. package/ui/Tooltip.js +3 -3
  534. package/ui/TooltipWrapper.js +1 -1
  535. package/ui/UnknownMessageItemBody.js +6 -6
  536. package/ui/UserListItem.js +11 -11
  537. package/ui/UserProfile.js +10 -10
  538. package/ui/VoiceMessageItemBody.js +110 -0
  539. package/ui/VoiceMessageItemBody.js.map +1 -0
  540. package/ui/VoiceMessgeInput.js +15 -0
  541. package/ui/VoiceMessgeInput.js.map +1 -0
  542. package/ui/Word.js +11 -11
  543. package/{useLongPress-fbe83e54.js → useLongPress-6fc8312a.js} +3 -3
  544. package/{useLongPress-fbe83e54.js.map → useLongPress-6fc8312a.js.map} +1 -1
  545. package/useSendbirdStateContext.js +1 -1
  546. package/utils/message/isVoiceMessage.js +7 -0
  547. package/utils/message/isVoiceMessage.js.map +1 -0
  548. package/{utils-87d19647.js → utils-2570c397.js} +1 -1
  549. package/{utils-87d19647.js.map → utils-2570c397.js.map} +1 -1
  550. package/{utils-dd13f89e.js → utils-6c7dd397.js} +1 -1
  551. package/{utils-dd13f89e.js.map → utils-6c7dd397.js.map} +1 -1
  552. package/{utils-9c95a786.js → utils-8c242c8c.js} +2 -2
  553. package/{utils-9c95a786.js.map → utils-8c242c8c.js.map} +1 -1
  554. package/{utils-87dce5dd.js → utils-c1d219fa.js} +1 -1
  555. package/{utils-87dce5dd.js.map → utils-c1d219fa.js.map} +1 -1
  556. package/{uuid-7a5e68ed.js → uuid-6ca64623.js} +1 -1
  557. package/{uuid-7a5e68ed.js.map → uuid-6ca64623.js.map} +1 -1
  558. package/withSendbird.js +1 -1
  559. package/ChannelProvider-1e540c0e.js.map +0 -1
  560. package/MemberList-6483a7db.js.map +0 -1
  561. package/ThreadProvider-a1413f01.js.map +0 -1
  562. package/_rollupPluginBabelHelpers-b45d3824.js.map +0 -1
  563. package/cjs/ChannelProvider-3fbf7c5e.js.map +0 -1
  564. package/cjs/MemberList-4a0910dd.js.map +0 -1
  565. package/cjs/ThreadProvider-71441c16.js.map +0 -1
  566. package/cjs/_rollupPluginBabelHelpers-25763ef8.js.map +0 -1
  567. package/cjs/index-0e76934f.js.map +0 -1
  568. package/cjs/index-bfe8bdde.js.map +0 -1
  569. package/cjs/stringSet-87e51d08.js.map +0 -1
  570. package/index-425e5f17.js.map +0 -1
  571. package/index-aa4edbe2.js.map +0 -1
  572. package/stringSet-c2443946.js.map +0 -1
@@ -2,40 +2,41 @@
2
2
 
3
3
  var React = require('react');
4
4
  var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
5
- var LocalizationContext = require('../../LocalizationContext-a0f833e9.js');
6
- var utils = require('../../utils-edb40a10.js');
7
- var Thread_context = require('../../ThreadProvider-71441c16.js');
5
+ var LocalizationContext = require('../../LocalizationContext-7d2c13ee.js');
6
+ var utils = require('../../utils-41fef560.js');
7
+ var Thread_context = require('../../ThreadProvider-e8591a61.js');
8
8
  var Thread_components_ParentMessageInfo = require('./ParentMessageInfo.js');
9
9
  var Thread_components_ThreadHeader = require('./ThreadHeader.js');
10
10
  var Thread_components_ThreadList = require('./ThreadList.js');
11
11
  var Thread_components_ThreadMessageInput = require('./ThreadMessageInput.js');
12
12
  var Thread_context_types = require('../context/types.js');
13
- var ui_PlaceHolder = require('../../index-4d6f2a4e.js');
14
- var ui_Label = require('../../index-2c095d94.js');
13
+ var ui_PlaceHolder = require('../../index-a34a53d3.js');
14
+ var ui_Label = require('../../index-86b55059.js');
15
15
  require('../../withSendbird.js');
16
- require('../../_rollupPluginBabelHelpers-25763ef8.js');
17
- require('../../stringSet-87e51d08.js');
18
- require('../../index-4dc29990.js');
19
- require('../../index-67134275.js');
16
+ require('../../_rollupPluginBabelHelpers-9807f0cb.js');
17
+ require('../../stringSet-d4071e23.js');
18
+ require('../../index-31135e46.js');
19
+ require('../../index-c34f34a2.js');
20
20
  require('../../utils/message/getOutgoingMessageState.js');
21
- require('../../UserProfileContext-74e6409b.js');
21
+ require('../../UserProfileContext-89b8a98d.js');
22
22
  require('prop-types');
23
- require('../../tslib.es6-0b4c49f8.js');
23
+ require('../../tslib.es6-23b4ef32.js');
24
24
  require('@sendbird/chat');
25
- require('../../topics-d9091126.js');
25
+ require('../../topics-7108f68f.js');
26
26
  require('@sendbird/chat/groupChannel');
27
- require('../../uuid-0b5f4e5e.js');
27
+ require('../../uuid-42040a5c.js');
28
28
  require('@sendbird/chat/message');
29
- require('../../RemoveMessageModal-7bde69be.js');
29
+ require('../../consts-7142bdfe.js');
30
+ require('../../RemoveMessageModal-44018509.js');
30
31
  require('../../ui/Modal.js');
31
32
  require('react-dom');
32
- require('../../index-7d4e7ad9.js');
33
+ require('../../index-fb42d34c.js');
33
34
  require('../../ui/Button.js');
34
35
  require('../../ui/Icon.js');
35
36
  require('../../ui/IconButton.js');
36
- require('../../MediaQueryContext-770ae8bc.js');
37
+ require('../../MediaQueryContext-36855cf6.js');
37
38
  require('./ParentMessageInfoItem.js');
38
- require('../../index-bfe8bdde.js');
39
+ require('../../index-6691da2c.js');
39
40
  require('../../ui/Word.js');
40
41
  require('../../ui/LinkLabel.js');
41
42
  require('../../ui/MentionLabel.js');
@@ -43,39 +44,50 @@ require('../../ui/ContextMenu.js');
43
44
  require('../../ui/SortByRow.js');
44
45
  require('../../ui/UserProfile.js');
45
46
  require('../../sendbirdSelectors.js');
46
- require('../../utils-aa1597cc.js');
47
+ require('../../utils-178ccede.js');
47
48
  require('../../ui/Avatar.js');
48
49
  require('../../ui/ImageRenderer.js');
49
50
  require('../../ui/TextButton.js');
50
- require('../../color-51fd9a0c.js');
51
+ require('../../color-ae15b40e.js');
51
52
  require('../../ui/EmojiReactions.js');
52
53
  require('../../ui/Tooltip.js');
53
54
  require('../../ui/TooltipWrapper.js');
54
55
  require('../../ui/ReactionBadge.js');
55
56
  require('../../ui/ReactionButton.js');
57
+ require('../../ui/VoiceMessageItemBody.js');
58
+ require('../../ui/ProgressBar.js');
59
+ require('../../VoicePlayer/useVoicePlayer.js');
60
+ require('../../index-e0971532.js');
61
+ require('../../VoiceRecorder/context.js');
62
+ require('../../lame.all.js');
63
+ require('../../ui/PlaybackTime.js');
64
+ require('../../ui/Loader.js');
56
65
  require('../../Channel/components/SuggestedMentionList.js');
57
- require('../../ChannelProvider-3fbf7c5e.js');
58
- require('../../compareIds-44844f10.js');
59
- require('../../const-618dd4f4.js');
60
- require('../../const-4761421a.js');
66
+ require('../../ChannelProvider-56b10dd6.js');
67
+ require('../../compareIds-88a3abee.js');
68
+ require('../../const-98ae036e.js');
69
+ require('../../const-6d993a66.js');
61
70
  require('../../ui/FileViewer.js');
62
71
  require('../../ui/MessageItemMenu.js');
72
+ require('../../types-8f7bbb00.js');
63
73
  require('../../ui/MessageItemReactionMenu.js');
64
74
  require('../../ui/MessageInput.js');
65
75
  require('react-dom/server');
66
76
  require('../../ui/MentionUserLabel.js');
67
77
  require('./ThreadListItem.js');
68
78
  require('../../ui/DateSeparator.js');
69
- require('../../index-0e76934f.js');
70
- require('../../ui/Loader.js');
71
- require('../../index-c4738d8b.js');
72
- require('../../index-97532335.js');
79
+ require('../../index-45c199d5.js');
80
+ require('../../index-9d2d5d23.js');
81
+ require('../../index-80ec94b9.js');
73
82
  require('../../ui/TextMessageItemBody.js');
74
83
  require('../../ui/OGMessageItemBody.js');
75
84
  require('../../ui/FileMessageItemBody.js');
76
85
  require('../../ui/ThumbnailMessageItemBody.js');
77
86
  require('../../ui/UnknownMessageItemBody.js');
78
87
  require('date-fns');
88
+ require('../../VoiceMessageInputWrapper-6d309e8c.js');
89
+ require('../../VoiceRecorder/useVoiceRecorder.js');
90
+ require('../../index-fa531baa.js');
79
91
 
80
92
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
81
93
 
@@ -199,7 +211,10 @@ var ThreadUI = function (_a) {
199
211
  renderMessageInput = _a.renderMessageInput,
200
212
  renderCustomSeparator = _a.renderCustomSeparator,
201
213
  renderParentMessageInfoPlaceholder = _a.renderParentMessageInfoPlaceholder,
202
- renderThreadListPlaceHolder = _a.renderThreadListPlaceHolder;
214
+ renderThreadListPlaceHolder = _a.renderThreadListPlaceHolder,
215
+ renderFileUploadIcon = _a.renderFileUploadIcon,
216
+ renderVoiceMessageIcon = _a.renderVoiceMessageIcon,
217
+ renderSendMessageIcon = _a.renderSendMessageIcon;
203
218
  var stores = useSendbirdStateContext().stores;
204
219
  var currentUserId = (_d = (_c = (_b = stores === null || stores === void 0 ? void 0 : stores.sdkStore) === null || _b === void 0 ? void 0 : _b.sdk) === null || _c === void 0 ? void 0 : _c.currentUser) === null || _d === void 0 ? void 0 : _d.userId;
205
220
  var stringSet = LocalizationContext.useLocalization().stringSet;
@@ -313,9 +328,12 @@ var ThreadUI = function (_a) {
313
328
  renderCustomSeparator: renderCustomSeparator,
314
329
  scrollRef: scrollRef,
315
330
  scrollBottom: scrollBottom
316
- }), (renderMessageInput === null || renderMessageInput === void 0 ? void 0 : renderMessageInput()) || /*#__PURE__*/React__default["default"].createElement(Thread_components_ThreadMessageInput, {
317
- className: "sendbird-thread-ui__message-input"
318
- })));
331
+ })), (renderMessageInput === null || renderMessageInput === void 0 ? void 0 : renderMessageInput()) || /*#__PURE__*/React__default["default"].createElement(Thread_components_ThreadMessageInput, {
332
+ className: "sendbird-thread-ui__message-input",
333
+ renderFileUploadIcon: renderFileUploadIcon,
334
+ renderVoiceMessageIcon: renderVoiceMessageIcon,
335
+ renderSendMessageIcon: renderSendMessageIcon
336
+ }));
319
337
  };
320
338
 
321
339
  module.exports = ThreadUI;
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadUI.js","sources":["../../../../src/smart-components/Thread/components/ThreadUI/useMemorizedHeader.tsx","../../../../src/smart-components/Thread/components/ThreadUI/useMemorizedParentMessageInfo.tsx","../../../../src/smart-components/Thread/components/ThreadUI/useMemorizedThreadList.tsx","../../../../src/smart-components/Thread/components/ThreadUI/index.tsx"],"sourcesContent":["import React, { ReactElement, useMemo } from 'react';\n\nexport interface UseMemorizedHeaderProps {\n renderHeader?: () => React.ReactElement;\n}\n\nconst useMemorizedHeader = ({ renderHeader }: UseMemorizedHeaderProps): ReactElement => useMemo(() => {\n if (typeof renderHeader === 'function') {\n return renderHeader();\n }\n return null;\n}, [renderHeader]);\n\nexport default useMemorizedHeader;\n","import React, { ReactElement, useMemo } from 'react';\n\nimport { ParentMessageStateTypes } from '../../types';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nexport interface UseMemorizedParentMessageInfoProps {\n parentMessage: UserMessage | FileMessage;\n parentMessageState: ParentMessageStateTypes;\n renderParentMessageInfo?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedParentMessageInfo = ({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n}: UseMemorizedParentMessageInfoProps): ReactElement => useMemo(() => {\n if (parentMessageState === ParentMessageStateTypes.NIL\n || parentMessageState === ParentMessageStateTypes.LOADING\n || parentMessageState === ParentMessageStateTypes.INVALID\n ) {\n if (typeof renderParentMessageInfoPlaceholder === 'function') {\n return renderParentMessageInfoPlaceholder(parentMessageState);\n }\n switch (parentMessageState) {\n case ParentMessageStateTypes.NIL: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-nil\"\n type={PlaceHolderTypes.NO_RESULTS}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n default: {\n return null;\n }\n }\n } else if (parentMessageState === ParentMessageStateTypes.INITIALIZED) {\n if (typeof renderParentMessageInfo === 'function') {\n return renderParentMessageInfo();\n }\n }\n return null;\n}, [\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n]);\n\nexport default useMemorizedParentMessageInfo;\n","import React, { ReactElement, useMemo } from 'react';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\n\nimport { ThreadListStateTypes } from '../../types';\n\nexport interface UseMemorizedThreadListProps {\n threadListState: ThreadListStateTypes;\n renderThreadListPlaceHolder?: (tyep: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedThreadList = ({\n threadListState,\n renderThreadListPlaceHolder,\n}: UseMemorizedThreadListProps): ReactElement => useMemo(() => {\n if (threadListState === ThreadListStateTypes.NIL\n || threadListState === ThreadListStateTypes.LOADING\n || threadListState === ThreadListStateTypes.INVALID\n ) {\n if (typeof renderThreadListPlaceHolder === 'function') {\n return renderThreadListPlaceHolder(threadListState);\n }\n switch (threadListState) {\n case ThreadListStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.NIL: {\n return <></>;\n }\n default: {\n return null;\n }\n }\n }\n return null;\n}, [\n threadListState,\n renderThreadListPlaceHolder,\n]);\n\nexport default useMemorizedThreadList;\n","import React, { useRef, useState } from 'react';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { getChannelTitle } from '../../../Channel/components/ChannelHeader/utils';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { ParentMessageStateTypes, ThreadListStateTypes } from '../../types';\nimport ParentMessageInfo from '../ParentMessageInfo';\nimport ThreadHeader from '../ThreadHeader';\nimport ThreadList from '../ThreadList';\nimport ThreadMessageInput from '../ThreadMessageInput';\nimport useMemorizedHeader from './useMemorizedHeader';\nimport useMemorizedParentMessageInfo from './useMemorizedParentMessageInfo';\nimport useMemorizedThreadList from './useMemorizedThreadList';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { isAboutSame } from '../../context/utils';\n\nexport interface ThreadUIProps {\n renderHeader?: () => React.ReactElement;\n renderParentMessageInfo?: () => React.ReactElement;\n renderMessage?: (props: {\n message: UserMessage | FileMessage,\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n }) => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderCustomSeparator?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n renderThreadListPlaceHolder?: (type: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst ThreadUI: React.FC<ThreadUIProps> = ({\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n}: ThreadUIProps): React.ReactElement => {\n const {\n stores,\n } = useSendbirdStateContext();\n const currentUserId = stores?.sdkStore?.sdk?.currentUser?.userId;\n const {\n stringSet,\n } = useLocalization();\n const {\n currentChannel,\n allThreadMessages,\n parentMessage,\n parentMessageState,\n threadListState,\n hasMorePrev,\n hasMoreNext,\n fetchPrevThreads,\n fetchNextThreads,\n onHeaderActionClick,\n onMoveToParentMessage,\n } = useThreadContext();\n const replyCount = allThreadMessages.length;\n\n // Memoized custom components\n const MemorizedHeader = useMemorizedHeader({ renderHeader });\n const MemorizedParentMessageInfo = useMemorizedParentMessageInfo({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder, // nil, loading, invalid\n });\n const MemorizedThreadList = useMemorizedThreadList({\n threadListState,\n renderThreadListPlaceHolder,\n });\n\n // scroll\n const [scrollBottom, setScrollBottom] = useState(0);\n const scrollRef = useRef(null);\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n const threadItemNodes = scrollRef.current.querySelectorAll('.sendbird-thread-list-item');\n const firstNode = threadItemNodes?.[0];\n if (isAboutSame(scrollTop, 0, 10) && hasMorePrev) {\n fetchPrevThreads((messages) => {\n if (messages) {\n try {\n firstNode?.scrollIntoView?.({ block: 'start', inline: 'nearest' });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, 10) && hasMoreNext) {\n const scrollTop_ = scrollTop;\n fetchNextThreads((messages) => {\n if (messages) {\n try {\n element.scrollTop = scrollTop_;\n scrollRef.current.scrollTop = scrollTop_;\n } catch (error) {\n //\n }\n }\n });\n }\n\n // save the lastest scroll bottom value\n if (scrollRef?.current) {\n const current = scrollRef?.current;\n setScrollBottom(current.scrollHeight - current.scrollTop - current.offsetHeight)\n }\n };\n\n return (\n <div className='sendbird-thread-ui'>\n {\n MemorizedHeader || (\n <ThreadHeader\n className=\"sendbird-thread-ui__header\"\n channelName={getChannelTitle(currentChannel, currentUserId, stringSet)}\n onActionIconClick={onHeaderActionClick}\n onChannelNameClick={() => onMoveToParentMessage({ message: parentMessage, channel: currentChannel })}\n />\n )\n }\n <div\n className=\"sendbird-thread-ui--scroll\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {\n MemorizedParentMessageInfo || (\n <ParentMessageInfo\n className=\"sendbird-thread-ui__parent-message-info\"\n />\n )\n }\n {\n replyCount > 0 && (\n <div className=\"sendbird-thread-ui__reply-counts\">\n <Label\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${replyCount} ${replyCount > 1 ? stringSet.THREAD__THREAD_REPLIES : stringSet.THREAD__THREAD_REPLY}`}\n </Label>\n </div>\n )\n }\n {\n MemorizedThreadList || (\n <ThreadList\n className=\"sendbird-thread-ui__thread-list\"\n allThreadMessages={allThreadMessages}\n renderMessage={renderMessage}\n renderCustomSeparator={renderCustomSeparator}\n scrollRef={scrollRef}\n scrollBottom={scrollBottom}\n />\n )\n }\n {/* MessageInput */}\n {\n renderMessageInput?.() || (\n <ThreadMessageInput\n className=\"sendbird-thread-ui__message-input\"\n />\n )\n }\n </div>\n </div>\n );\n};\n\nexport default ThreadUI;\n"],"names":["useMemorizedHeader","_a","renderHeader","useMemo","useMemorizedParentMessageInfo","parentMessage","parentMessageState","renderParentMessageInfo","renderParentMessageInfoPlaceholder","ParentMessageStateTypes","NIL","LOADING","INVALID","React","PlaceHolder","PlaceHolderTypes","NO_RESULTS","WRONG","INITIALIZED","useMemorizedThreadList","threadListState","renderThreadListPlaceHolder","ThreadListStateTypes","ThreadUI","renderMessage","renderMessageInput","renderCustomSeparator","stores","useSendbirdStateContext","currentUserId","_d","_b","sdkStore","sdk","currentUser","userId","stringSet","useLocalization","_e","useThreadContext","currentChannel","allThreadMessages","hasMorePrev","hasMoreNext","fetchPrevThreads","fetchNextThreads","onHeaderActionClick","onMoveToParentMessage","replyCount","length","MemorizedHeader","MemorizedParentMessageInfo","MemorizedThreadList","_f","useState","scrollBottom","setScrollBottom","scrollRef","useRef","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","threadItemNodes","current","querySelectorAll","firstNode","isAboutSame","messages","scrollIntoView","call","block","inline","error","scrollTop_1","offsetHeight","ThreadHeader","getChannelTitle","message","channel","ParentMessageInfo","Label","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_3","concat","THREAD__THREAD_REPLIES","THREAD__THREAD_REPLY","ThreadList","ThreadMessageInput"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAMA,kBAAkB,GAAG,UAACC,EAAD,EAA0C;AAAvC,EAAA,IAAAC,YAAY,GAAAD,EAAA,CAAAC,YAAZ,CAAA;EAA0D,OAAAC,aAAO,CAAC,YAAA;AAC9F,IAAA,IAAI,OAAOD,YAAP,KAAwB,UAA5B,EAAwC;AACtC,MAAA,OAAOA,YAAY,EAAnB,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;AACD,GAL8F,EAK5F,CAACA,YAAD,CAL4F,CAAP,CAAA;AAKtE,CALlB;;ACOA,IAAME,6BAA6B,GAAG,UAACH,EAAD,EAKD;MAJnCI,aAAa,GAAAJ,EAAA,CAAAI;MACbC,kBAAkB,GAAAL,EAAA,CAAAK;MAClBC,uBAAuB,GAAAN,EAAA,CAAAM;MACvBC,kCAAkC,GAAAP,EAAA,CAAAO;EACoB,OAAAL,aAAO,CAAC,YAAA;AAC9D,IAAA,IAAIG,kBAAkB,KAAKG,4CAAuB,CAACC,GAA/C,IACCJ,kBAAkB,KAAKG,4CAAuB,CAACE,OADhD,IAECL,kBAAkB,KAAKG,4CAAuB,CAACG,OAFpD,EAGE;AACA,MAAA,IAAI,OAAOJ,kCAAP,KAA8C,UAAlD,EAA8D;QAC5D,OAAOA,kCAAkC,CAACF,kBAAD,CAAzC,CAAA;AACD,OAAA;;AACD,MAAA,QAAQA,kBAAR;QACE,KAAKG,4CAAuB,CAACC,GAA7B;AAAkC,UAAA;AAChC,YAAA,oBACEG,wCAACC,0BAAD,EAAA;AACE,cAAA,SAAS,EAAC,yDADZ;cAEE,IAAI,EAAEC,+BAAgB,CAACC,UAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKP,4CAAuB,CAACE,OAA7B;AAAsC,UAAA;AACpC,YAAA,oBACEE,wCAACC,0BAAD,EAAA;AACE,cAAA,SAAS,EAAC,6DADZ;cAEE,IAAI,EAAEC,+BAAgB,CAACJ,OAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKF,4CAAuB,CAACG,OAA7B;AAAsC,UAAA;AACpC,YAAA,oBACEC,wCAACC,0BAAD,EAAA;AACE,cAAA,SAAS,EAAC,6DADZ;cAEE,IAAI,EAAEC,+BAAgB,CAACE,KAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;AACD,QAAA;AAAS,UAAA;AACP,YAAA,OAAO,IAAP,CAAA;AACD,WAAA;AA9BH,OAAA;AAgCD,KAvCD,MAuCO,IAAIX,kBAAkB,KAAKG,4CAAuB,CAACS,WAAnD,EAAgE;AACrE,MAAA,IAAI,OAAOX,uBAAP,KAAmC,UAAvC,EAAmD;AACjD,QAAA,OAAOA,uBAAuB,EAA9B,CAAA;AACD,OAAA;AACF,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;GA7C6D,EA8C5D,CACDF,aADC,EAEDC,kBAFC,EAGDC,uBAHC,EAIDC,kCAJC,CA9C4D,CAAP,CAAA;AAmDtD,CAxDF;;ACHA,IAAMW,sBAAsB,GAAG,UAAClB,EAAD,EAGD;MAF5BmB,eAAe,GAAAnB,EAAA,CAAAmB;MACfC,2BAA2B,GAAApB,EAAA,CAAAoB;EACoB,OAAAlB,aAAO,CAAC,YAAA;AACvD,IAAA,IAAIiB,eAAe,KAAKE,yCAAoB,CAACZ,GAAzC,IACCU,eAAe,KAAKE,yCAAoB,CAACX,OAD1C,IAECS,eAAe,KAAKE,yCAAoB,CAACV,OAF9C,EAGE;AACA,MAAA,IAAI,OAAOS,2BAAP,KAAuC,UAA3C,EAAuD;QACrD,OAAOA,2BAA2B,CAACD,eAAD,CAAlC,CAAA;AACD,OAAA;;AACD,MAAA,QAAQA,eAAR;QACE,KAAKE,yCAAoB,CAACX,OAA1B;AAAmC,UAAA;AACjC,YAAA,oBACEE,wCAACC,0BAAD,EAAA;AACE,cAAA,SAAS,EAAC,qDADZ;cAEE,IAAI,EAAEC,+BAAgB,CAACJ,OAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKW,yCAAoB,CAACV,OAA1B;AAAmC,UAAA;AACjC,YAAA,oBACEC,wCAACC,0BAAD,EAAA;AACE,cAAA,SAAS,EAAC,qDADZ;cAEE,IAAI,EAAEC,+BAAgB,CAACE,KAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKK,yCAAoB,CAACZ,GAA1B;AAA+B,UAAA;AAC7B,YAAA,oBAAOG,yBAAP,CAAA,aAAA,CAAAA,yBAAA,CAAA,QAAA,EAAA,IAAA,CAAA,CAAA;AACD,WAAA;;AACD,QAAA;AAAS,UAAA;AACP,YAAA,OAAO,IAAP,CAAA;AACD,WAAA;AAxBH,OAAA;AA0BD,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;AACD,GApCuD,EAoCrD,CACDO,eADC,EAEDC,2BAFC,CApCqD,CAAP,CAAA;AAuC/C,CA1CF;;ACyBA,IAAME,QAAQ,GAA4B,UAACtB,EAAD,EAQ1B;;;AAPd,EAAA,IAAAC,YAAY,kBAAZ;AAAA,MACAK,uBAAuB,6BADvB;AAAA,MAEAiB,aAAa,mBAFb;AAAA,MAGAC,kBAAkB,GAAAxB,EAAA,CAAAwB,kBAHlB;AAAA,MAIAC,qBAAqB,GAAAzB,EAAA,CAAAyB,qBAJrB;AAAA,MAKAlB,kCAAkC,GAAAP,EAAA,CAAAO,kCALlC;AAAA,MAMAa,2BAA2B,GAAApB,EAAA,CAAAoB,2BAN3B,CAAA;AASE,EAAA,IAAAM,MAAM,GACJC,uBAAuB,EAAA,OADzB,CAAA;AAEF,EAAA,IAAMC,aAAa,GAAG,CAAAC,EAAA,GAAA,MAAA,CAAAC,EAAA,GAAAJ,MAAM,SAAN,IAAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAAA,MAAM,CAAEK,QAAR,MAAkB,IAAlB,IAAkBD,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkBA,EAAA,CAAAE,GAAlB,UAAA,iBAAA,SAAA,MAAuBC,WAAvB,MAAkC,IAAlC,IAAkCJ,EAAA,KAAA,KAAA,CAAlC,GAAkC,KAAA,CAAlC,GAAkCA,EAAA,CAAEK,MAA1D,CAAA;AAEE,EAAA,IAAAC,SAAS,GACPC,mCAAe,EAAA,UADjB,CAAA;;EAEI,IAAAC,KAYFC,+BAAgB,EAZd;AAAA,MACJC,cAAc,oBADV;AAAA,MAEJC,iBAAiB,GAAAH,EAAA,CAAAG,iBAFb;AAAA,MAGJpC,aAAa,GAAAiC,EAAA,CAAAjC,aAHT;AAAA,MAIJC,kBAAkB,GAAAgC,EAAA,CAAAhC,kBAJd;AAAA,MAKJc,eAAe,GAAAkB,EAAA,CAAAlB,eALX;AAAA,MAMJsB,WAAW,iBANP;AAAA,MAOJC,WAAW,GAAAL,EAAA,CAAAK,WAPP;AAAA,MAQJC,gBAAgB,GAAAN,EAAA,CAAAM,gBARZ;AAAA,MASJC,gBAAgB,GAAAP,EAAA,CAAAO,gBATZ;AAAA,MAUJC,mBAAmB,GAAAR,EAAA,CAAAQ,mBAVf;AAAA,MAWJC,qBAAqB,2BAXjB,CAAA;;AAaN,EAAA,IAAMC,UAAU,GAAGP,iBAAiB,CAACQ,MAArC,CArBc;;EAwBd,IAAMC,eAAe,GAAGlD,kBAAkB,CAAC;AAAEE,IAAAA,YAAY,EAAAA,YAAAA;AAAd,GAAD,CAA1C,CAAA;EACA,IAAMiD,0BAA0B,GAAG/C,6BAA6B,CAAC;AAC/DC,IAAAA,aAAa,EAAAA,aADkD;AAE/DC,IAAAA,kBAAkB,EAAAA,kBAF6C;AAG/DC,IAAAA,uBAAuB,EAAAA,uBAHwC;AAI/DC,IAAAA,kCAAkC,EAAAA,kCAAAA;AAJ6B,GAAD,CAAhE,CAAA;EAMA,IAAM4C,mBAAmB,GAAGjC,sBAAsB,CAAC;AACjDC,IAAAA,eAAe,EAAAA,eADkC;AAEjDC,IAAAA,2BAA2B,EAAAA,2BAAAA;GAFqB,CAAlD,CA/Bc;;AAqCR,EAAA,IAAAgC,EAAA,GAAkCC,cAAQ,CAAC,CAAD,CAA1C;AAAA,MAACC,YAAY,GAAAF,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeG,eAAe,GAAAH,EAAA,CAAA,CAAA,CAA9B,CAAA;;AACN,EAAA,IAAMI,SAAS,GAAGC,YAAM,CAAC,IAAD,CAAxB,CAAA;;AACA,EAAA,IAAMC,QAAQ,GAAG,UAACC,CAAD,EAAE;AACjB,IAAA,IAAMC,OAAO,GAAGD,CAAC,CAACE,MAAlB,CAAA;AAEE,IAAA,IAAAC,SAAS,GAGPF,OAAO,CAAAE,SAHT;AAAA,QACAC,YAAY,GAEVH,OAAO,CAAAG,YAHT;AAAA,QAEAC,YAAY,GACVJ,OAAO,aAHT,CAAA;IAKF,IAAMK,eAAe,GAAGT,SAAS,CAACU,OAAV,CAAkBC,gBAAlB,CAAmC,4BAAnC,CAAxB,CAAA;AACA,IAAA,IAAMC,SAAS,GAAGH,eAAe,KAAf,IAAA,IAAAA,eAAe,WAAf,SAAA,GAAAA,eAAe,CAAG,CAAH,CAAjC,CAAA;;IACA,IAAII,0BAAW,CAACP,SAAD,EAAY,CAAZ,EAAe,EAAf,CAAX,IAAiCrB,WAArC,EAAkD;MAChDE,gBAAgB,CAAC,UAAC2B,QAAD,EAAS;;;AACxB,QAAA,IAAIA,QAAJ,EAAc;UACZ,IAAI;AACF,YAAA,CAAAtE,EAAA,GAAAoE,SAAS,KAAT,IAAA,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAEG,cAAX,MAA4B,IAA5B,IAA4BvE,EAAA,KAAA,KAAA,CAA5B,GAA4B,KAAA,CAA5B,GAA4BA,EAAA,CAAAwE,IAAA,CAAAJ,SAAA,EAAA;AAAEK,cAAAA,KAAK,EAAE,OAAT;AAAkBC,cAAAA,MAAM,EAAE,SAAA;AAA1B,aAAA,CAA5B,CAAA;AACD,WAFD,CAEE,OAAOC,KAAP,EAAc;AAEf,WAAA;AACF,SAAA;AACF,OARe,CAAhB,CAAA;AASD,KAAA;;AAED,IAAA,IAAIN,0BAAW,CAACN,YAAY,GAAGD,SAAhB,EAA2BE,YAA3B,EAAyC,EAAzC,CAAX,IAA2DtB,WAA/D,EAA4E;MAC1E,IAAMkC,WAAU,GAAGd,SAAnB,CAAA;MACAlB,gBAAgB,CAAC,UAAC0B,QAAD,EAAS;AACxB,QAAA,IAAIA,QAAJ,EAAc;UACZ,IAAI;YACFV,OAAO,CAACE,SAAR,GAAoBc,WAApB,CAAA;AACApB,YAAAA,SAAS,CAACU,OAAV,CAAkBJ,SAAlB,GAA8Bc,WAA9B,CAAA;AACD,WAHD,CAGE,OAAOD,KAAP,EAAc;AAEf,WAAA;AACF,SAAA;AACF,OATe,CAAhB,CAAA;AAUD,KAlCgB;;;AAqCjB,IAAA,IAAInB,SAAS,KAAT,IAAA,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAEU,OAAf,EAAwB;AACtB,MAAA,IAAMA,OAAO,GAAGV,SAAS,KAAA,IAAT,IAAAA,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,SAAS,CAAEU,OAA3B,CAAA;AACAX,MAAAA,eAAe,CAACW,OAAO,CAACF,YAAR,GAAuBE,OAAO,CAACJ,SAA/B,GAA2CI,OAAO,CAACW,YAApD,CAAf,CAAA;AACD,KAAA;GAxCH,CAAA;;EA2CA,oBACEjE,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,oBAAA;GAEXqC,EAAAA,eAAe,iBACbrC,yBAAA,CAAA,aAAA,CAACkE,8BAAD,EAAA;AACE,IAAA,SAAS,EAAC,4BADZ;IAEE,WAAW,EAAEC,qBAAe,CAACxC,cAAD,EAAiBX,aAAjB,EAAgCO,SAAhC,CAF9B;AAGE,IAAA,iBAAiB,EAAEU,mBAHrB;AAIE,IAAA,kBAAkB,EAAE;AAAM,MAAA,OAAAC,qBAAqB,CAAC;AAAEkC,QAAAA,OAAO,EAAE5E,aAAX;AAA0B6E,QAAAA,OAAO,EAAE1C,cAAAA;AAAnC,OAAD,CAArB,CAAA;AAA0E,KAAA;AAJtG,GAAA,CAHN,eAWE3B,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,4BADZ;AAEE,IAAA,GAAG,EAAE4C,SAFP;AAGE,IAAA,QAAQ,EAAEE,QAAAA;GAGRR,EAAAA,0BAA0B,iBACxBtC,yBAAA,CAAA,aAAA,CAACsE,mCAAD,EAAA;AACE,IAAA,SAAS,EAAC,yCAAA;AADZ,GAAA,CAPN,EAaInC,UAAU,GAAG,CAAb,iBACEnC,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,kCAAA;AAAf,GAAA,eACEA,wCAACuE,cAAD,EAAA;IACE,IAAI,EAAEC,wBAAe,CAACC,MADxB;IAEE,KAAK,EAAEC,oBAAW,CAACC,cAAAA;GAElB,EAAA,EAAA,OAAA,CAAGxC,UAAH,EAAa,GAAb,CAAA,CAAayC,MAAb,CAAiBzC,UAAU,GAAG,CAAb,GAAiBZ,SAAS,CAACsD,sBAA3B,GAAoDtD,SAAS,CAACuD,oBAA/E,CAJH,CADF,CAdN,EAyBIvC,mBAAmB,iBACjBvC,yBAAA,CAAA,aAAA,CAAC+E,4BAAD,EAAA;AACE,IAAA,SAAS,EAAC,iCADZ;AAEE,IAAA,iBAAiB,EAAEnD,iBAFrB;AAGE,IAAA,aAAa,EAAEjB,aAHjB;AAIE,IAAA,qBAAqB,EAAEE,qBAJzB;AAKE,IAAA,SAAS,EAAE+B,SALb;AAME,IAAA,YAAY,EAAEF,YAAAA;AANhB,GAAA,CA1BN,EAsCI,CAAA9B,kBAAkB,KAAA,IAAlB,IAAAA,kBAAkB,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAAA,kBAAkB,EAAlB,kBACEZ,wCAACgF,oCAAD,EAAA;AACE,IAAA,SAAS,EAAC,mCAAA;AADZ,GAAA,CAvCN,CAXF,CADF,CAAA;AA2DD;;;;"}
1
+ {"version":3,"file":"ThreadUI.js","sources":["../../../../src/smart-components/Thread/components/ThreadUI/useMemorizedHeader.tsx","../../../../src/smart-components/Thread/components/ThreadUI/useMemorizedParentMessageInfo.tsx","../../../../src/smart-components/Thread/components/ThreadUI/useMemorizedThreadList.tsx","../../../../src/smart-components/Thread/components/ThreadUI/index.tsx"],"sourcesContent":["import React, { ReactElement, useMemo } from 'react';\n\nexport interface UseMemorizedHeaderProps {\n renderHeader?: () => React.ReactElement;\n}\n\nconst useMemorizedHeader = ({ renderHeader }: UseMemorizedHeaderProps): ReactElement => useMemo(() => {\n if (typeof renderHeader === 'function') {\n return renderHeader();\n }\n return null;\n}, [renderHeader]);\n\nexport default useMemorizedHeader;\n","import React, { ReactElement, useMemo } from 'react';\n\nimport { ParentMessageStateTypes } from '../../types';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nexport interface UseMemorizedParentMessageInfoProps {\n parentMessage: UserMessage | FileMessage;\n parentMessageState: ParentMessageStateTypes;\n renderParentMessageInfo?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedParentMessageInfo = ({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n}: UseMemorizedParentMessageInfoProps): ReactElement => useMemo(() => {\n if (parentMessageState === ParentMessageStateTypes.NIL\n || parentMessageState === ParentMessageStateTypes.LOADING\n || parentMessageState === ParentMessageStateTypes.INVALID\n ) {\n if (typeof renderParentMessageInfoPlaceholder === 'function') {\n return renderParentMessageInfoPlaceholder(parentMessageState);\n }\n switch (parentMessageState) {\n case ParentMessageStateTypes.NIL: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-nil\"\n type={PlaceHolderTypes.NO_RESULTS}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n default: {\n return null;\n }\n }\n } else if (parentMessageState === ParentMessageStateTypes.INITIALIZED) {\n if (typeof renderParentMessageInfo === 'function') {\n return renderParentMessageInfo();\n }\n }\n return null;\n}, [\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n]);\n\nexport default useMemorizedParentMessageInfo;\n","import React, { ReactElement, useMemo } from 'react';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\n\nimport { ThreadListStateTypes } from '../../types';\n\nexport interface UseMemorizedThreadListProps {\n threadListState: ThreadListStateTypes;\n renderThreadListPlaceHolder?: (tyep: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedThreadList = ({\n threadListState,\n renderThreadListPlaceHolder,\n}: UseMemorizedThreadListProps): ReactElement => useMemo(() => {\n if (threadListState === ThreadListStateTypes.NIL\n || threadListState === ThreadListStateTypes.LOADING\n || threadListState === ThreadListStateTypes.INVALID\n ) {\n if (typeof renderThreadListPlaceHolder === 'function') {\n return renderThreadListPlaceHolder(threadListState);\n }\n switch (threadListState) {\n case ThreadListStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.NIL: {\n return <></>;\n }\n default: {\n return null;\n }\n }\n }\n return null;\n}, [\n threadListState,\n renderThreadListPlaceHolder,\n]);\n\nexport default useMemorizedThreadList;\n","import React, { useRef, useState } from 'react';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { getChannelTitle } from '../../../Channel/components/ChannelHeader/utils';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { ParentMessageStateTypes, ThreadListStateTypes } from '../../types';\nimport ParentMessageInfo from '../ParentMessageInfo';\nimport ThreadHeader from '../ThreadHeader';\nimport ThreadList from '../ThreadList';\nimport ThreadMessageInput from '../ThreadMessageInput';\nimport useMemorizedHeader from './useMemorizedHeader';\nimport useMemorizedParentMessageInfo from './useMemorizedParentMessageInfo';\nimport useMemorizedThreadList from './useMemorizedThreadList';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { isAboutSame } from '../../context/utils';\n\nexport interface ThreadUIProps {\n renderHeader?: () => React.ReactElement;\n renderParentMessageInfo?: () => React.ReactElement;\n renderMessage?: (props: {\n message: UserMessage | FileMessage,\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n }) => React.ReactElement;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderCustomSeparator?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n renderThreadListPlaceHolder?: (type: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst ThreadUI: React.FC<ThreadUIProps> = ({\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n}: ThreadUIProps): React.ReactElement => {\n const {\n stores,\n } = useSendbirdStateContext();\n const currentUserId = stores?.sdkStore?.sdk?.currentUser?.userId;\n const {\n stringSet,\n } = useLocalization();\n const {\n currentChannel,\n allThreadMessages,\n parentMessage,\n parentMessageState,\n threadListState,\n hasMorePrev,\n hasMoreNext,\n fetchPrevThreads,\n fetchNextThreads,\n onHeaderActionClick,\n onMoveToParentMessage,\n } = useThreadContext();\n const replyCount = allThreadMessages.length;\n\n // Memoized custom components\n const MemorizedHeader = useMemorizedHeader({ renderHeader });\n const MemorizedParentMessageInfo = useMemorizedParentMessageInfo({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder, // nil, loading, invalid\n });\n const MemorizedThreadList = useMemorizedThreadList({\n threadListState,\n renderThreadListPlaceHolder,\n });\n\n // scroll\n const [scrollBottom, setScrollBottom] = useState(0);\n const scrollRef = useRef(null);\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n const threadItemNodes = scrollRef.current.querySelectorAll('.sendbird-thread-list-item');\n const firstNode = threadItemNodes?.[0];\n if (isAboutSame(scrollTop, 0, 10) && hasMorePrev) {\n fetchPrevThreads((messages) => {\n if (messages) {\n try {\n firstNode?.scrollIntoView?.({ block: 'start', inline: 'nearest' });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, 10) && hasMoreNext) {\n const scrollTop_ = scrollTop;\n fetchNextThreads((messages) => {\n if (messages) {\n try {\n element.scrollTop = scrollTop_;\n scrollRef.current.scrollTop = scrollTop_;\n } catch (error) {\n //\n }\n }\n });\n }\n\n // save the lastest scroll bottom value\n if (scrollRef?.current) {\n const current = scrollRef?.current;\n setScrollBottom(current.scrollHeight - current.scrollTop - current.offsetHeight)\n }\n };\n\n return (\n <div className='sendbird-thread-ui'>\n {\n MemorizedHeader || (\n <ThreadHeader\n className=\"sendbird-thread-ui__header\"\n channelName={getChannelTitle(currentChannel, currentUserId, stringSet)}\n onActionIconClick={onHeaderActionClick}\n onChannelNameClick={() => onMoveToParentMessage({ message: parentMessage, channel: currentChannel })}\n />\n )\n }\n <div\n className=\"sendbird-thread-ui--scroll\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {\n MemorizedParentMessageInfo || (\n <ParentMessageInfo\n className=\"sendbird-thread-ui__parent-message-info\"\n />\n )\n }\n {\n replyCount > 0 && (\n <div className=\"sendbird-thread-ui__reply-counts\">\n <Label\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${replyCount} ${replyCount > 1 ? stringSet.THREAD__THREAD_REPLIES : stringSet.THREAD__THREAD_REPLY}`}\n </Label>\n </div>\n )\n }\n {\n MemorizedThreadList || (\n <ThreadList\n className=\"sendbird-thread-ui__thread-list\"\n allThreadMessages={allThreadMessages}\n renderMessage={renderMessage}\n renderCustomSeparator={renderCustomSeparator}\n scrollRef={scrollRef}\n scrollBottom={scrollBottom}\n />\n )\n }\n </div>\n {/* MessageInput */}\n {\n renderMessageInput?.() || (\n <ThreadMessageInput\n className=\"sendbird-thread-ui__message-input\"\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n />\n )\n }\n </div>\n );\n};\n\nexport default ThreadUI;\n"],"names":["useMemorizedHeader","_a","renderHeader","useMemo","useMemorizedParentMessageInfo","parentMessage","parentMessageState","renderParentMessageInfo","renderParentMessageInfoPlaceholder","ParentMessageStateTypes","NIL","LOADING","INVALID","React","PlaceHolder","PlaceHolderTypes","NO_RESULTS","WRONG","INITIALIZED","useMemorizedThreadList","threadListState","renderThreadListPlaceHolder","ThreadListStateTypes","ThreadUI","renderMessage","renderMessageInput","renderCustomSeparator","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","stores","useSendbirdStateContext","currentUserId","_d","_b","sdkStore","sdk","currentUser","userId","stringSet","useLocalization","_e","useThreadContext","currentChannel","allThreadMessages","hasMorePrev","hasMoreNext","fetchPrevThreads","fetchNextThreads","onHeaderActionClick","onMoveToParentMessage","replyCount","length","MemorizedHeader","MemorizedParentMessageInfo","MemorizedThreadList","_f","useState","scrollBottom","setScrollBottom","scrollRef","useRef","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","threadItemNodes","current","querySelectorAll","firstNode","isAboutSame","messages","scrollIntoView","call","block","inline","error","scrollTop_1","offsetHeight","ThreadHeader","getChannelTitle","message","channel","ParentMessageInfo","Label","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_3","concat","THREAD__THREAD_REPLIES","THREAD__THREAD_REPLY","ThreadList","ThreadMessageInput"],"mappings":"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"}
@@ -3,22 +3,23 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('react');
6
- var Thread_context = require('../ThreadProvider-71441c16.js');
7
- require('../UserProfileContext-74e6409b.js');
6
+ var Thread_context = require('../ThreadProvider-e8591a61.js');
7
+ require('../UserProfileContext-89b8a98d.js');
8
8
  require('../useSendbirdStateContext.js');
9
- require('../index-67134275.js');
10
- require('../index-4dc29990.js');
9
+ require('../index-c34f34a2.js');
10
+ require('../index-31135e46.js');
11
11
  require('../utils/message/getOutgoingMessageState.js');
12
- require('../tslib.es6-0b4c49f8.js');
12
+ require('../tslib.es6-23b4ef32.js');
13
13
  require('./context/types.js');
14
14
  require('@sendbird/chat');
15
- require('../topics-d9091126.js');
15
+ require('../topics-7108f68f.js');
16
16
  require('@sendbird/chat/groupChannel');
17
- require('../uuid-0b5f4e5e.js');
17
+ require('../uuid-42040a5c.js');
18
18
  require('@sendbird/chat/message');
19
+ require('../consts-7142bdfe.js');
19
20
  require('prop-types');
20
21
  require('../withSendbird.js');
21
- require('../_rollupPluginBabelHelpers-25763ef8.js');
22
+ require('../_rollupPluginBabelHelpers-9807f0cb.js');
22
23
 
23
24
 
24
25
 
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"context.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/cjs/Thread.js CHANGED
@@ -1,38 +1,39 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var Thread_context = require('./ThreadProvider-71441c16.js');
4
+ var Thread_context = require('./ThreadProvider-e8591a61.js');
5
5
  var Thread_components_ThreadUI = require('./Thread/components/ThreadUI.js');
6
- require('./index-67134275.js');
7
- require('./index-4dc29990.js');
6
+ require('./index-c34f34a2.js');
7
+ require('./index-31135e46.js');
8
8
  require('./utils/message/getOutgoingMessageState.js');
9
- require('./UserProfileContext-74e6409b.js');
9
+ require('./UserProfileContext-89b8a98d.js');
10
10
  require('prop-types');
11
11
  require('./useSendbirdStateContext.js');
12
12
  require('./withSendbird.js');
13
- require('./_rollupPluginBabelHelpers-25763ef8.js');
14
- require('./tslib.es6-0b4c49f8.js');
13
+ require('./_rollupPluginBabelHelpers-9807f0cb.js');
14
+ require('./tslib.es6-23b4ef32.js');
15
15
  require('./Thread/context/types.js');
16
16
  require('@sendbird/chat');
17
- require('./topics-d9091126.js');
17
+ require('./topics-7108f68f.js');
18
18
  require('@sendbird/chat/groupChannel');
19
- require('./uuid-0b5f4e5e.js');
19
+ require('./uuid-42040a5c.js');
20
20
  require('@sendbird/chat/message');
21
- require('./LocalizationContext-a0f833e9.js');
22
- require('./stringSet-87e51d08.js');
23
- require('./utils-edb40a10.js');
24
- require('./index-2c095d94.js');
21
+ require('./consts-7142bdfe.js');
22
+ require('./LocalizationContext-7d2c13ee.js');
23
+ require('./stringSet-d4071e23.js');
24
+ require('./utils-41fef560.js');
25
+ require('./index-86b55059.js');
25
26
  require('./Thread/components/ParentMessageInfo.js');
26
- require('./RemoveMessageModal-7bde69be.js');
27
+ require('./RemoveMessageModal-44018509.js');
27
28
  require('./ui/Modal.js');
28
29
  require('react-dom');
29
- require('./index-7d4e7ad9.js');
30
+ require('./index-fb42d34c.js');
30
31
  require('./ui/Button.js');
31
32
  require('./ui/Icon.js');
32
33
  require('./ui/IconButton.js');
33
- require('./MediaQueryContext-770ae8bc.js');
34
+ require('./MediaQueryContext-36855cf6.js');
34
35
  require('./Thread/components/ParentMessageInfoItem.js');
35
- require('./index-bfe8bdde.js');
36
+ require('./index-6691da2c.js');
36
37
  require('./ui/Word.js');
37
38
  require('./ui/LinkLabel.js');
38
39
  require('./ui/MentionLabel.js');
@@ -40,23 +41,32 @@ require('./ui/ContextMenu.js');
40
41
  require('./ui/SortByRow.js');
41
42
  require('./ui/UserProfile.js');
42
43
  require('./sendbirdSelectors.js');
43
- require('./utils-aa1597cc.js');
44
+ require('./utils-178ccede.js');
44
45
  require('./ui/Avatar.js');
45
46
  require('./ui/ImageRenderer.js');
46
47
  require('./ui/TextButton.js');
47
- require('./color-51fd9a0c.js');
48
+ require('./color-ae15b40e.js');
48
49
  require('./ui/EmojiReactions.js');
49
50
  require('./ui/Tooltip.js');
50
51
  require('./ui/TooltipWrapper.js');
51
52
  require('./ui/ReactionBadge.js');
52
53
  require('./ui/ReactionButton.js');
54
+ require('./ui/VoiceMessageItemBody.js');
55
+ require('./ui/ProgressBar.js');
56
+ require('./VoicePlayer/useVoicePlayer.js');
57
+ require('./index-e0971532.js');
58
+ require('./VoiceRecorder/context.js');
59
+ require('./lame.all.js');
60
+ require('./ui/PlaybackTime.js');
61
+ require('./ui/Loader.js');
53
62
  require('./Channel/components/SuggestedMentionList.js');
54
- require('./ChannelProvider-3fbf7c5e.js');
55
- require('./compareIds-44844f10.js');
56
- require('./const-618dd4f4.js');
57
- require('./const-4761421a.js');
63
+ require('./ChannelProvider-56b10dd6.js');
64
+ require('./compareIds-88a3abee.js');
65
+ require('./const-98ae036e.js');
66
+ require('./const-6d993a66.js');
58
67
  require('./ui/FileViewer.js');
59
68
  require('./ui/MessageItemMenu.js');
69
+ require('./types-8f7bbb00.js');
60
70
  require('./ui/MessageItemReactionMenu.js');
61
71
  require('./ui/MessageInput.js');
62
72
  require('react-dom/server');
@@ -65,10 +75,9 @@ require('./Thread/components/ThreadHeader.js');
65
75
  require('./Thread/components/ThreadList.js');
66
76
  require('./Thread/components/ThreadListItem.js');
67
77
  require('./ui/DateSeparator.js');
68
- require('./index-0e76934f.js');
69
- require('./ui/Loader.js');
70
- require('./index-c4738d8b.js');
71
- require('./index-97532335.js');
78
+ require('./index-45c199d5.js');
79
+ require('./index-9d2d5d23.js');
80
+ require('./index-80ec94b9.js');
72
81
  require('./ui/TextMessageItemBody.js');
73
82
  require('./ui/OGMessageItemBody.js');
74
83
  require('./ui/FileMessageItemBody.js');
@@ -76,7 +85,10 @@ require('./ui/ThumbnailMessageItemBody.js');
76
85
  require('./ui/UnknownMessageItemBody.js');
77
86
  require('date-fns');
78
87
  require('./Thread/components/ThreadMessageInput.js');
79
- require('./index-4d6f2a4e.js');
88
+ require('./VoiceMessageInputWrapper-6d309e8c.js');
89
+ require('./VoiceRecorder/useVoiceRecorder.js');
90
+ require('./index-fa531baa.js');
91
+ require('./index-a34a53d3.js');
80
92
 
81
93
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
82
94
 
@@ -97,7 +109,10 @@ var Thread = function (props) {
97
109
  renderMessageInput = props.renderMessageInput,
98
110
  renderCustomSeparator = props.renderCustomSeparator,
99
111
  renderParentMessageInfoPlaceholder = props.renderParentMessageInfoPlaceholder,
100
- renderThreadListPlaceHolder = props.renderThreadListPlaceHolder;
112
+ renderThreadListPlaceHolder = props.renderThreadListPlaceHolder,
113
+ renderFileUploadIcon = props.renderFileUploadIcon,
114
+ renderVoiceMessageIcon = props.renderVoiceMessageIcon,
115
+ renderSendMessageIcon = props.renderSendMessageIcon;
101
116
  return /*#__PURE__*/React__default["default"].createElement("div", {
102
117
  className: "sendbird-thread ".concat(className)
103
118
  }, /*#__PURE__*/React__default["default"].createElement(Thread_context.ThreadProvider, {
@@ -112,7 +127,10 @@ var Thread = function (props) {
112
127
  renderMessageInput: renderMessageInput,
113
128
  renderCustomSeparator: renderCustomSeparator,
114
129
  renderParentMessageInfoPlaceholder: renderParentMessageInfoPlaceholder,
115
- renderThreadListPlaceHolder: renderThreadListPlaceHolder
130
+ renderThreadListPlaceHolder: renderThreadListPlaceHolder,
131
+ renderFileUploadIcon: renderFileUploadIcon,
132
+ renderVoiceMessageIcon: renderVoiceMessageIcon,
133
+ renderSendMessageIcon: renderSendMessageIcon
116
134
  })));
117
135
  };
118
136
 
package/cjs/Thread.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Thread.js","sources":["../../src/smart-components/Thread/index.tsx"],"sourcesContent":["import React from 'react';\n\nimport {\n ThreadProvider,\n ThreadProviderProps,\n} from './context/ThreadProvider';\nimport ThreadUI, { ThreadUIProps } from './components/ThreadUI';\n\nexport interface ThreadProps extends ThreadProviderProps, ThreadUIProps {\n className?: string;\n}\n\nconst Thread: React.FC<ThreadProps> = (props: ThreadProps) => {\n const {\n // props\n className,\n // ThreadProviderProps\n channelUrl,\n message,\n onHeaderActionClick,\n onMoveToParentMessage,\n // ThreadUIProps\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n } = props;\n return (\n <div className={`sendbird-thread ${className}`}>\n <ThreadProvider\n channelUrl={channelUrl}\n message={message}\n onHeaderActionClick={onHeaderActionClick}\n onMoveToParentMessage={onMoveToParentMessage}\n >\n <ThreadUI\n renderHeader={renderHeader}\n renderParentMessageInfo={renderParentMessageInfo}\n renderMessage={renderMessage}\n renderMessageInput={renderMessageInput}\n renderCustomSeparator={renderCustomSeparator}\n renderParentMessageInfoPlaceholder={renderParentMessageInfoPlaceholder}\n renderThreadListPlaceHolder={renderThreadListPlaceHolder}\n />\n </ThreadProvider>\n </div>\n );\n};\n\nexport default Thread;\n"],"names":["Thread","props","className","channelUrl","message","onHeaderActionClick","onMoveToParentMessage","renderHeader","renderParentMessageInfo","renderMessage","renderMessageInput","renderCustomSeparator","renderParentMessageInfoPlaceholder","renderThreadListPlaceHolder","React","concat","ThreadProvider","ThreadUI"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAMA,MAAM,GAA0B,UAACC,KAAD,EAAmB;EAGrD;EAAAC,SAAS,GAcPD,KAAK,CAdEC,SAAT;;EAEAC,UAAU,GAYRF,KAAK,CAAAE,UAdP;AAAA,MAGAC,OAAO,GAWLH,KAAK,CAAAG,OAdP;AAAA,MAIAC,mBAAmB,GAUjBJ,KAAK,CAAAI,mBAdP;AAAA,MAKAC,qBAAqB,GASnBL,KAAK,CATcK,qBALrB;;EAOAC,YAAY,GAOVN,KAAK,CAPKM,YAPZ;AAAA,MAQAC,uBAAuB,GAMrBP,KAAK,CANgBO,uBARvB;AAAA,MASAC,aAAa,GAKXR,KAAK,CAAAQ,aAdP;AAAA,MAUAC,kBAAkB,GAIhBT,KAAK,CAAAS,kBAdP;AAAA,MAWAC,qBAAqB,GAGnBV,KAAK,sBAdP;AAAA,MAYAW,kCAAkC,GAEhCX,KAAK,mCAdP;AAAA,MAaAY,2BAA2B,GACzBZ,KAAK,4BAdP,CAAA;EAeF,oBACEa,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAE,kBAAA,CAAmBC,MAAnB,CAAmBb,SAAnB,CAAA;AAAhB,GAAA,eACEY,wCAACE,6BAAD,EAAA;AACE,IAAA,UAAU,EAAEb,UADd;AAEE,IAAA,OAAO,EAAEC,OAFX;AAGE,IAAA,mBAAmB,EAAEC,mBAHvB;AAIE,IAAA,qBAAqB,EAAEC,qBAAAA;AAJzB,GAAA,eAMEQ,wCAACG,0BAAD,EAAA;AACE,IAAA,YAAY,EAAEV,YADhB;AAEE,IAAA,uBAAuB,EAAEC,uBAF3B;AAGE,IAAA,aAAa,EAAEC,aAHjB;AAIE,IAAA,kBAAkB,EAAEC,kBAJtB;AAKE,IAAA,qBAAqB,EAAEC,qBALzB;AAME,IAAA,kCAAkC,EAAEC,kCANtC;AAOE,IAAA,2BAA2B,EAAEC,2BAAAA;AAP/B,GAAA,CANF,CADF,CADF,CAAA;AAoBD;;;;"}
1
+ {"version":3,"file":"Thread.js","sources":["../../src/smart-components/Thread/index.tsx"],"sourcesContent":["import React from 'react';\n\nimport {\n ThreadProvider,\n ThreadProviderProps,\n} from './context/ThreadProvider';\nimport ThreadUI, { ThreadUIProps } from './components/ThreadUI';\n\nexport interface ThreadProps extends ThreadProviderProps, ThreadUIProps {\n className?: string;\n}\n\nconst Thread: React.FC<ThreadProps> = (props: ThreadProps) => {\n const {\n // props\n className,\n // ThreadProviderProps\n channelUrl,\n message,\n onHeaderActionClick,\n onMoveToParentMessage,\n // ThreadUIProps\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n } = props;\n return (\n <div className={`sendbird-thread ${className}`}>\n <ThreadProvider\n channelUrl={channelUrl}\n message={message}\n onHeaderActionClick={onHeaderActionClick}\n onMoveToParentMessage={onMoveToParentMessage}\n >\n <ThreadUI\n renderHeader={renderHeader}\n renderParentMessageInfo={renderParentMessageInfo}\n renderMessage={renderMessage}\n renderMessageInput={renderMessageInput}\n renderCustomSeparator={renderCustomSeparator}\n renderParentMessageInfoPlaceholder={renderParentMessageInfoPlaceholder}\n renderThreadListPlaceHolder={renderThreadListPlaceHolder}\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n />\n </ThreadProvider>\n </div>\n );\n};\n\nexport default Thread;\n"],"names":["Thread","props","className","channelUrl","message","onHeaderActionClick","onMoveToParentMessage","renderHeader","renderParentMessageInfo","renderMessage","renderMessageInput","renderCustomSeparator","renderParentMessageInfoPlaceholder","renderThreadListPlaceHolder","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","React","concat","ThreadProvider","ThreadUI"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAMA,MAAM,GAA0B,UAACC,KAAD,EAAmB;EAGrD;EAAAC,SAAS,GAiBPD,KAAK,CAjBEC,SAAT;;EAEAC,UAAU,GAeRF,KAAK,CAAAE,UAjBP;AAAA,MAGAC,OAAO,GAcLH,KAAK,CAAAG,OAjBP;AAAA,MAIAC,mBAAmB,GAajBJ,KAAK,CAAAI,mBAjBP;AAAA,MAKAC,qBAAqB,GAYnBL,KAAK,CAZcK,qBALrB;;EAOAC,YAAY,GAUVN,KAAK,CAVKM,YAPZ;AAAA,MAQAC,uBAAuB,GASrBP,KAAK,CATgBO,uBARvB;AAAA,MASAC,aAAa,GAQXR,KAAK,CARMQ,aATb;AAAA,MAUAC,kBAAkB,GAOhBT,KAAK,mBAjBP;AAAA,MAWAU,qBAAqB,GAMnBV,KAAK,CANcU,qBAXrB;AAAA,MAYAC,kCAAkC,GAKhCX,KAAK,mCAjBP;AAAA,MAaAY,2BAA2B,GAIzBZ,KAAK,CAAAY,2BAjBP;AAAA,MAcAC,oBAAoB,GAGlBb,KAAK,qBAjBP;AAAA,MAeAc,sBAAsB,GAEpBd,KAAK,CAAAc,sBAjBP;AAAA,MAgBAC,qBAAqB,GACnBf,KAAK,CAAAe,qBAjBP,CAAA;EAkBF,oBACEC,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAE,kBAAA,CAAmBC,MAAnB,CAAmBhB,SAAnB,CAAA;AAAhB,GAAA,eACEe,wCAACE,6BAAD,EAAA;AACE,IAAA,UAAU,EAAEhB,UADd;AAEE,IAAA,OAAO,EAAEC,OAFX;AAGE,IAAA,mBAAmB,EAAEC,mBAHvB;AAIE,IAAA,qBAAqB,EAAEC,qBAAAA;AAJzB,GAAA,eAMEW,wCAACG,0BAAD,EAAA;AACE,IAAA,YAAY,EAAEb,YADhB;AAEE,IAAA,uBAAuB,EAAEC,uBAF3B;AAGE,IAAA,aAAa,EAAEC,aAHjB;AAIE,IAAA,kBAAkB,EAAEC,kBAJtB;AAKE,IAAA,qBAAqB,EAAEC,qBALzB;AAME,IAAA,kCAAkC,EAAEC,kCANtC;AAOE,IAAA,2BAA2B,EAAEC,2BAP/B;AAQE,IAAA,oBAAoB,EAAEC,oBARxB;AASE,IAAA,sBAAsB,EAAEC,sBAT1B;AAUE,IAAA,qBAAqB,EAAEC,qBAAAA;AAVzB,GAAA,CANF,CADF,CADF,CAAA;AAuBD;;;;"}
@@ -1,17 +1,18 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var index = require('./index-67134275.js');
4
+ var index = require('./index-c34f34a2.js');
5
5
  var utils_message_getOutgoingMessageState = require('./utils/message/getOutgoingMessageState.js');
6
- var UserProfileContext = require('./UserProfileContext-74e6409b.js');
6
+ var UserProfileContext = require('./UserProfileContext-89b8a98d.js');
7
7
  var useSendbirdStateContext = require('./useSendbirdStateContext.js');
8
- var tslib_es6 = require('./tslib.es6-0b4c49f8.js');
8
+ var tslib_es6 = require('./tslib.es6-23b4ef32.js');
9
9
  var Thread_context_types = require('./Thread/context/types.js');
10
10
  var SendbirdChat = require('@sendbird/chat');
11
- var topics = require('./topics-d9091126.js');
11
+ var topics = require('./topics-7108f68f.js');
12
12
  var groupChannel = require('@sendbird/chat/groupChannel');
13
- var uuid = require('./uuid-0b5f4e5e.js');
13
+ var uuid = require('./uuid-42040a5c.js');
14
14
  var message = require('@sendbird/chat/message');
15
+ var consts = require('./consts-7142bdfe.js');
15
16
 
16
17
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
18
 
@@ -630,7 +631,8 @@ function useGetThreadList(_a, _b) {
630
631
  var params = {
631
632
  prevResultSize: PREV_THREADS_FETCH_SIZE,
632
633
  nextResultSize: NEXT_THREADS_FETCH_SIZE,
633
- includeReactions: isReactionEnabled
634
+ includeReactions: isReactionEnabled,
635
+ includeMetaArray: true
634
636
  };
635
637
  logger.info('Thread | useGetThreadList: Initialize thread list start.', {
636
638
  timeStamp: timeStamp,
@@ -659,7 +661,7 @@ function useGetThreadList(_a, _b) {
659
661
  });
660
662
  });
661
663
  }
662
- }, [sdkInit, parentMessage, anchorMessage]);
664
+ }, [sdkInit, parentMessage === null || parentMessage === void 0 ? void 0 : parentMessage.messageId, anchorMessage]);
663
665
  }
664
666
 
665
667
  function useGetParentMessage(_a, _b) {
@@ -1186,7 +1188,8 @@ function useGetPrevThreadsCallback(_a, _b) {
1186
1188
  (_a = parentMessage.getThreadedMessagesByTimestamp) === null || _a === void 0 ? void 0 : _a.call(parentMessage, oldestMessageTimeStamp, {
1187
1189
  prevResultSize: PREV_THREADS_FETCH_SIZE,
1188
1190
  nextResultSize: 0,
1189
- includeReactions: isReactionEnabled
1191
+ includeReactions: isReactionEnabled,
1192
+ includeMetaArray: true
1190
1193
  }).then(function (_a) {
1191
1194
  var parentMessage = _a.parentMessage,
1192
1195
  threadedMessages = _a.threadedMessages;
@@ -1233,7 +1236,8 @@ function useGetNextThreadsCallback(_a, _b) {
1233
1236
  (_a = parentMessage.getThreadedMessagesByTimestamp) === null || _a === void 0 ? void 0 : _a.call(parentMessage, latestMessageTimeStamp, {
1234
1237
  prevResultSize: 0,
1235
1238
  nextResultSize: NEXT_THREADS_FETCH_SIZE,
1236
- includeReactions: isReactionEnabled
1239
+ includeReactions: isReactionEnabled,
1240
+ includeMetaArray: true
1237
1241
  }).then(function (_a) {
1238
1242
  var parentMessage = _a.parentMessage,
1239
1243
  threadedMessages = _a.threadedMessages;
@@ -1434,6 +1438,72 @@ function useResendMessageCallback(_a, _b) {
1434
1438
  }, [currentChannel]);
1435
1439
  }
1436
1440
 
1441
+ var useSendVoiceMessageCallback = function (_a, _b) {
1442
+ var currentChannel = _a.currentChannel,
1443
+ onBeforeSendVoiceMessage = _a.onBeforeSendVoiceMessage;
1444
+ var logger = _b.logger,
1445
+ pubSub = _b.pubSub,
1446
+ threadDispatcher = _b.threadDispatcher;
1447
+ var sendMessage = React.useCallback(function (file, duration, quoteMessage) {
1448
+ var messageParams = onBeforeSendVoiceMessage && typeof onBeforeSendVoiceMessage === 'function' ? onBeforeSendVoiceMessage(file, quoteMessage) : {
1449
+ file: file,
1450
+ fileName: consts.VOICE_MESSAGE_FILE_NAME,
1451
+ mimeType: consts.VOICE_MESSAGE_MIME_TYPE,
1452
+ metaArrays: [new message.MessageMetaArray({
1453
+ key: consts.META_ARRAY_VOICE_DURATION_KEY,
1454
+ value: ["".concat(duration)]
1455
+ }), new message.MessageMetaArray({
1456
+ key: consts.META_ARRAY_MESSAGE_TYPE_KEY,
1457
+ value: [consts.META_ARRAY_MESSAGE_TYPE_VALUE__VOICE]
1458
+ })]
1459
+ };
1460
+
1461
+ if (quoteMessage) {
1462
+ messageParams.isReplyToChannel = true;
1463
+ messageParams.parentMessageId = quoteMessage.messageId;
1464
+ }
1465
+
1466
+ currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.sendFileMessage(messageParams).onPending(function (pendingMessage) {
1467
+ threadDispatcher({
1468
+ type: ThreadContextActionTypes.SEND_MESSAGE_START,
1469
+ payload: {
1470
+ /* pubSub is used instead of messagesDispatcher
1471
+ to avoid redundantly calling `messageActionTypes.SEND_MESSAGEGE_START` */
1472
+ message: tslib_es6.__assign(tslib_es6.__assign({}, pendingMessage), {
1473
+ url: URL.createObjectURL(file),
1474
+ // pending thumbnail message seems to be failed
1475
+ requestState: 'pending'
1476
+ })
1477
+ }
1478
+ });
1479
+ setTimeout(function () {
1480
+ return scrollIntoLast();
1481
+ }, 1000);
1482
+ }).onFailed(function (error, message) {
1483
+ message.localUrl = URL.createObjectURL(file);
1484
+ message.file = file;
1485
+ logger.info('Thread | useSendVoiceMessageCallback: Sending voice message failed.', {
1486
+ message: message,
1487
+ error: error
1488
+ });
1489
+ threadDispatcher({
1490
+ type: ThreadContextActionTypes.SEND_MESSAGE_FAILURE,
1491
+ payload: {
1492
+ message: message,
1493
+ error: error
1494
+ }
1495
+ });
1496
+ }).onSucceeded(function (message) {
1497
+ logger.info('Thread | useSendVoiceMessageCallback: Sending voice message succeeded.', message);
1498
+ pubSub.publish(topics.SEND_FILE_MESSAGE, {
1499
+ channel: currentChannel,
1500
+ message: message
1501
+ });
1502
+ });
1503
+ }, [currentChannel, onBeforeSendVoiceMessage]);
1504
+ return sendMessage;
1505
+ };
1506
+
1437
1507
  var ThreadContext = /*#__PURE__*/React__default["default"].createContext(null);
1438
1508
  var ThreadProvider = function (props) {
1439
1509
  var _a, _b;
@@ -1443,6 +1513,7 @@ var ThreadProvider = function (props) {
1443
1513
  message = props.message,
1444
1514
  onHeaderActionClick = props.onHeaderActionClick,
1445
1515
  onMoveToParentMessage = props.onMoveToParentMessage,
1516
+ onBeforeSendVoiceMessage = props.onBeforeSendVoiceMessage,
1446
1517
  // User Profile
1447
1518
  disableUserProfile = props.disableUserProfile,
1448
1519
  renderUserProfile = props.renderUserProfile,
@@ -1579,6 +1650,14 @@ var ThreadProvider = function (props) {
1579
1650
  pubSub: pubSub,
1580
1651
  threadDispatcher: threadDispatcher
1581
1652
  });
1653
+ var sendVoiceMessage = useSendVoiceMessageCallback({
1654
+ currentChannel: currentChannel,
1655
+ onBeforeSendVoiceMessage: onBeforeSendVoiceMessage
1656
+ }, {
1657
+ logger: logger,
1658
+ pubSub: pubSub,
1659
+ threadDispatcher: threadDispatcher
1660
+ });
1582
1661
  var resendMessage = useResendMessageCallback({
1583
1662
  currentChannel: currentChannel
1584
1663
  }, {
@@ -1627,6 +1706,7 @@ var ThreadProvider = function (props) {
1627
1706
  toggleReaction: toggleReaction,
1628
1707
  sendMessage: sendMessage,
1629
1708
  sendFileMessage: sendFileMessage,
1709
+ sendVoiceMessage: sendVoiceMessage,
1630
1710
  resendMessage: resendMessage,
1631
1711
  updateMessage: updateMessage,
1632
1712
  deleteMessage: deleteMessage,
@@ -1650,4 +1730,4 @@ exports.ThreadProvider = ThreadProvider;
1650
1730
  exports.compareMessagesForGrouping = compareMessagesForGrouping;
1651
1731
  exports.isAboutSame = isAboutSame;
1652
1732
  exports.useThreadContext = useThreadContext;
1653
- //# sourceMappingURL=ThreadProvider-71441c16.js.map
1733
+ //# sourceMappingURL=ThreadProvider-e8591a61.js.map