@sendbird/uikit-react 3.4.8 → 3.4.9-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 (601) hide show
  1. package/App.js +123 -74
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +43 -1
  4. package/Channel/components/ChannelHeader.js +18 -18
  5. package/Channel/components/ChannelUI.js +46 -41
  6. package/Channel/components/ChannelUI.js.map +1 -1
  7. package/Channel/components/FileViewer.js +14 -14
  8. package/Channel/components/FrozenNotification.js +4 -4
  9. package/Channel/components/Message.js +59 -45
  10. package/Channel/components/Message.js.map +1 -1
  11. package/Channel/components/MessageInput.js +40 -38
  12. package/Channel/components/MessageInput.js.map +1 -1
  13. package/Channel/components/MessageList.js +85 -46
  14. package/Channel/components/MessageList.js.map +1 -1
  15. package/Channel/components/RemoveMessageModal.js +16 -16
  16. package/Channel/components/SuggestedMentionList.js +16 -16
  17. package/Channel/components/TypingIndicator.js +14 -14
  18. package/Channel/components/UnreadCount.js +5 -5
  19. package/Channel/components/UnreadCount.js.map +1 -1
  20. package/Channel/context.js +11 -11
  21. package/Channel.js +46 -41
  22. package/Channel.js.map +1 -1
  23. package/ChannelList/components/AddChannel.js +14 -14
  24. package/ChannelList/components/ChannelListHeader.js +6 -6
  25. package/ChannelList/components/ChannelListUI.js +33 -32
  26. package/ChannelList/components/ChannelListUI.js.map +1 -1
  27. package/ChannelList/components/ChannelPreview.js +26 -26
  28. package/ChannelList/components/ChannelPreview.js.map +1 -1
  29. package/ChannelList/components/ChannelPreviewAction.js +15 -14
  30. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  31. package/ChannelList/context.js +7 -7
  32. package/ChannelList.js +29 -29
  33. package/{ChannelListProvider-1d8f4d94.js → ChannelListProvider-b42f8a70.js} +19 -37
  34. package/ChannelListProvider-b42f8a70.js.map +1 -0
  35. package/{ChannelProvider-bba4a095.js → ChannelProvider-6c5b02f1.js} +81 -29
  36. package/ChannelProvider-6c5b02f1.js.map +1 -0
  37. package/ChannelSettings/components/ChannelProfile.js +11 -11
  38. package/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  39. package/ChannelSettings/components/EditDetailsModal.js +11 -11
  40. package/ChannelSettings/components/LeaveChannel.js +11 -11
  41. package/ChannelSettings/components/ModerationPanel.js +27 -21
  42. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  43. package/ChannelSettings/components/UserListItem.js +10 -10
  44. package/ChannelSettings/components/UserPanel.js +13 -13
  45. package/ChannelSettings/context.js +3 -3
  46. package/ChannelSettings.js +17 -17
  47. package/CreateChannel/components/CreateChannelUI.js +13 -13
  48. package/CreateChannel/components/InviteUsers.js +15 -14
  49. package/CreateChannel/components/InviteUsers.js.map +1 -1
  50. package/CreateChannel/components/SelectChannelType.js +10 -10
  51. package/CreateChannel/context.js +4 -4
  52. package/CreateChannel.js +13 -13
  53. package/{CreateChannelProvider-1ba7a571.js → CreateChannelProvider-4a0190ed.js} +1 -1
  54. package/{CreateChannelProvider-1ba7a571.js.map → CreateChannelProvider-4a0190ed.js.map} +1 -1
  55. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  56. package/CreateOpenChannel/context.js +1 -1
  57. package/CreateOpenChannel.js +9 -9
  58. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  59. package/EditUserProfile.js +12 -12
  60. package/{LocalizationContext-ae38446a.js → LocalizationContext-8b7b48ec.js} +3 -3
  61. package/{LocalizationContext-ae38446a.js.map → LocalizationContext-8b7b48ec.js.map} +1 -1
  62. package/{MediaQueryContext-8d283dc2.js → MediaQueryContext-744e0eb4.js} +20 -15
  63. package/MediaQueryContext-744e0eb4.js.map +1 -0
  64. package/{MemberList-38971d43.js → MemberList-6e52b1b1.js} +17 -11
  65. package/MemberList-6e52b1b1.js.map +1 -0
  66. package/Message/context.js +5 -1
  67. package/Message/context.js.map +1 -1
  68. package/MessageSearch/components/MessageSearchUI.js +11 -11
  69. package/MessageSearch/context.js +1 -1
  70. package/MessageSearch.js +11 -11
  71. package/MessageSearch.js.map +1 -1
  72. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  73. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  74. package/OpenChannel/components/OpenChannelInput.js +33 -25
  75. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  76. package/OpenChannel/components/OpenChannelMessage.js +27 -27
  77. package/OpenChannel/components/OpenChannelMessageList.js +31 -31
  78. package/OpenChannel/components/OpenChannelUI.js +31 -31
  79. package/OpenChannel/context.js +8 -8
  80. package/OpenChannel.js +31 -31
  81. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  82. package/OpenChannelList/components/OpenChannelPreview.js +3 -3
  83. package/OpenChannelList/context.js +3 -3
  84. package/OpenChannelList.js +13 -13
  85. package/{OpenChannelListProvider-e0add710.js → OpenChannelListProvider-d99e3cd2.js} +3 -3
  86. package/{OpenChannelListProvider-e0add710.js.map → OpenChannelListProvider-d99e3cd2.js.map} +1 -1
  87. package/{OpenChannelProvider-49db4c6c.js → OpenChannelProvider-4857158c.js} +7 -7
  88. package/{OpenChannelProvider-49db4c6c.js.map → OpenChannelProvider-4857158c.js.map} +1 -1
  89. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  90. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  91. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  92. package/OpenChannelSettings/components/OperatorUI.js +32 -24
  93. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  94. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  95. package/OpenChannelSettings/context.js +3 -3
  96. package/OpenChannelSettings.js +17 -17
  97. package/{RemoveMessageModal-10f50eae.js → RemoveMessageModal-38fef9c4.js} +3 -3
  98. package/{RemoveMessageModal-10f50eae.js.map → RemoveMessageModal-38fef9c4.js.map} +1 -1
  99. package/SendbirdProvider.js +378 -76
  100. package/SendbirdProvider.js.map +1 -1
  101. package/Thread/components/ParentMessageInfo.js +97 -52
  102. package/Thread/components/ParentMessageInfo.js.map +1 -1
  103. package/Thread/components/ParentMessageInfoItem.js +33 -25
  104. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  105. package/Thread/components/ThreadHeader.js +7 -7
  106. package/Thread/components/ThreadHeader.js.map +1 -1
  107. package/Thread/components/ThreadList.js +40 -33
  108. package/Thread/components/ThreadList.js.map +1 -1
  109. package/Thread/components/ThreadListItem.js +94 -50
  110. package/Thread/components/ThreadListItem.js.map +1 -1
  111. package/Thread/components/ThreadMessageInput.js +37 -39
  112. package/Thread/components/ThreadMessageInput.js.map +1 -1
  113. package/Thread/components/ThreadUI.js +56 -46
  114. package/Thread/components/ThreadUI.js.map +1 -1
  115. package/Thread/context.js +8 -8
  116. package/Thread.js +49 -42
  117. package/Thread.js.map +1 -1
  118. package/{ThreadProvider-128d5041.js → ThreadProvider-637aa7f0.js} +11 -8
  119. package/ThreadProvider-637aa7f0.js.map +1 -0
  120. package/{UserProfileContext-91e3b3f2.js → UserProfileContext-9040499b.js} +1 -1
  121. package/{UserProfileContext-91e3b3f2.js.map → UserProfileContext-9040499b.js.map} +1 -1
  122. package/{VoiceMessageInputWrapper-cbfa4f2b.js → VoiceMessageInputWrapper-f593346c.js} +7 -7
  123. package/{VoiceMessageInputWrapper-cbfa4f2b.js.map → VoiceMessageInputWrapper-f593346c.js.map} +1 -1
  124. package/VoicePlayer/context.js +3 -3
  125. package/VoicePlayer/useVoicePlayer.js +3 -3
  126. package/VoiceRecorder/context.js +11 -4
  127. package/VoiceRecorder/context.js.map +1 -1
  128. package/VoiceRecorder/useVoiceRecorder.js +2 -2
  129. package/{WebAudioUtils-5f47139c.js → WebAudioUtils-904afd00.js} +1 -1
  130. package/{WebAudioUtils-5f47139c.js.map → WebAudioUtils-904afd00.js.map} +1 -1
  131. package/{_rollupPluginBabelHelpers-eaf55eff.js → _rollupPluginBabelHelpers-8c286a7c.js} +1 -1
  132. package/_rollupPluginBabelHelpers-8c286a7c.js.map +1 -0
  133. package/{actionTypes-98eee9f4.js → actionTypes-bd8af98d.js} +1 -1
  134. package/{actionTypes-98eee9f4.js.map → actionTypes-bd8af98d.js.map} +1 -1
  135. package/cjs/App.js +123 -74
  136. package/cjs/App.js.map +1 -1
  137. package/cjs/Channel/components/ChannelHeader.js +18 -18
  138. package/cjs/Channel/components/ChannelUI.js +46 -41
  139. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  140. package/cjs/Channel/components/FileViewer.js +14 -14
  141. package/cjs/Channel/components/FrozenNotification.js +4 -4
  142. package/cjs/Channel/components/Message.js +59 -45
  143. package/cjs/Channel/components/Message.js.map +1 -1
  144. package/cjs/Channel/components/MessageInput.js +40 -38
  145. package/cjs/Channel/components/MessageInput.js.map +1 -1
  146. package/cjs/Channel/components/MessageList.js +85 -46
  147. package/cjs/Channel/components/MessageList.js.map +1 -1
  148. package/cjs/Channel/components/RemoveMessageModal.js +16 -16
  149. package/cjs/Channel/components/SuggestedMentionList.js +16 -16
  150. package/cjs/Channel/components/TypingIndicator.js +14 -14
  151. package/cjs/Channel/components/UnreadCount.js +5 -5
  152. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  153. package/cjs/Channel/context.js +11 -11
  154. package/cjs/Channel.js +46 -41
  155. package/cjs/Channel.js.map +1 -1
  156. package/cjs/ChannelList/components/AddChannel.js +14 -14
  157. package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
  158. package/cjs/ChannelList/components/ChannelListUI.js +33 -32
  159. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  160. package/cjs/ChannelList/components/ChannelPreview.js +26 -26
  161. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  162. package/cjs/ChannelList/components/ChannelPreviewAction.js +15 -14
  163. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  164. package/cjs/ChannelList/context.js +7 -7
  165. package/cjs/ChannelList.js +29 -29
  166. package/cjs/{ChannelListProvider-634b78f3.js → ChannelListProvider-2ea52e8f.js} +19 -37
  167. package/cjs/ChannelListProvider-2ea52e8f.js.map +1 -0
  168. package/cjs/{ChannelProvider-5366f030.js → ChannelProvider-4057a4e6.js} +81 -28
  169. package/cjs/ChannelProvider-4057a4e6.js.map +1 -0
  170. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  171. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  172. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  173. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  174. package/cjs/ChannelSettings/components/ModerationPanel.js +27 -21
  175. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  176. package/cjs/ChannelSettings/components/UserListItem.js +10 -10
  177. package/cjs/ChannelSettings/components/UserPanel.js +13 -13
  178. package/cjs/ChannelSettings/context.js +3 -3
  179. package/cjs/ChannelSettings.js +17 -17
  180. package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
  181. package/cjs/CreateChannel/components/InviteUsers.js +15 -14
  182. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  183. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  184. package/cjs/CreateChannel/context.js +4 -4
  185. package/cjs/CreateChannel.js +13 -13
  186. package/cjs/{CreateChannelProvider-65dcc450.js → CreateChannelProvider-83cd1b9a.js} +1 -1
  187. package/cjs/{CreateChannelProvider-65dcc450.js.map → CreateChannelProvider-83cd1b9a.js.map} +1 -1
  188. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  189. package/cjs/CreateOpenChannel/context.js +1 -1
  190. package/cjs/CreateOpenChannel.js +9 -9
  191. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  192. package/cjs/EditUserProfile.js +12 -12
  193. package/cjs/{LocalizationContext-4fa55e6b.js → LocalizationContext-a7ac3575.js} +3 -3
  194. package/cjs/{LocalizationContext-4fa55e6b.js.map → LocalizationContext-a7ac3575.js.map} +1 -1
  195. package/cjs/{MediaQueryContext-e443379e.js → MediaQueryContext-f0b22fae.js} +20 -15
  196. package/cjs/MediaQueryContext-f0b22fae.js.map +1 -0
  197. package/cjs/{MemberList-3736f22c.js → MemberList-d02103a5.js} +17 -11
  198. package/cjs/MemberList-d02103a5.js.map +1 -0
  199. package/cjs/Message/context.js +5 -1
  200. package/cjs/Message/context.js.map +1 -1
  201. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  202. package/cjs/MessageSearch/context.js +1 -1
  203. package/cjs/MessageSearch.js +11 -11
  204. package/cjs/MessageSearch.js.map +1 -1
  205. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  206. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  207. package/cjs/OpenChannel/components/OpenChannelInput.js +33 -25
  208. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  209. package/cjs/OpenChannel/components/OpenChannelMessage.js +27 -27
  210. package/cjs/OpenChannel/components/OpenChannelMessageList.js +31 -31
  211. package/cjs/OpenChannel/components/OpenChannelUI.js +31 -31
  212. package/cjs/OpenChannel/context.js +8 -8
  213. package/cjs/OpenChannel.js +31 -31
  214. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  215. package/cjs/OpenChannelList/components/OpenChannelPreview.js +3 -3
  216. package/cjs/OpenChannelList/context.js +3 -3
  217. package/cjs/OpenChannelList.js +13 -13
  218. package/cjs/{OpenChannelListProvider-458abc0e.js → OpenChannelListProvider-8c304b22.js} +3 -3
  219. package/cjs/{OpenChannelListProvider-458abc0e.js.map → OpenChannelListProvider-8c304b22.js.map} +1 -1
  220. package/cjs/{OpenChannelProvider-84f42ba8.js → OpenChannelProvider-ea1d6825.js} +7 -7
  221. package/cjs/{OpenChannelProvider-84f42ba8.js.map → OpenChannelProvider-ea1d6825.js.map} +1 -1
  222. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  223. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  224. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  225. package/cjs/OpenChannelSettings/components/OperatorUI.js +32 -24
  226. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  227. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  228. package/cjs/OpenChannelSettings/context.js +3 -3
  229. package/cjs/OpenChannelSettings.js +17 -17
  230. package/cjs/{RemoveMessageModal-3535563a.js → RemoveMessageModal-95aeddfe.js} +3 -3
  231. package/cjs/{RemoveMessageModal-3535563a.js.map → RemoveMessageModal-95aeddfe.js.map} +1 -1
  232. package/cjs/SendbirdProvider.js +377 -75
  233. package/cjs/SendbirdProvider.js.map +1 -1
  234. package/cjs/Thread/components/ParentMessageInfo.js +97 -52
  235. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  236. package/cjs/Thread/components/ParentMessageInfoItem.js +33 -25
  237. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  238. package/cjs/Thread/components/ThreadHeader.js +7 -7
  239. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  240. package/cjs/Thread/components/ThreadList.js +40 -33
  241. package/cjs/Thread/components/ThreadList.js.map +1 -1
  242. package/cjs/Thread/components/ThreadListItem.js +94 -50
  243. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  244. package/cjs/Thread/components/ThreadMessageInput.js +37 -39
  245. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  246. package/cjs/Thread/components/ThreadUI.js +56 -46
  247. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  248. package/cjs/Thread/context.js +8 -8
  249. package/cjs/Thread.js +49 -42
  250. package/cjs/Thread.js.map +1 -1
  251. package/cjs/{ThreadProvider-d38505b4.js → ThreadProvider-6a39fc92.js} +11 -8
  252. package/cjs/ThreadProvider-6a39fc92.js.map +1 -0
  253. package/cjs/{UserProfileContext-83eaf6e8.js → UserProfileContext-a026a307.js} +1 -1
  254. package/cjs/{UserProfileContext-83eaf6e8.js.map → UserProfileContext-a026a307.js.map} +1 -1
  255. package/cjs/{VoiceMessageInputWrapper-68c8b8cb.js → VoiceMessageInputWrapper-ab392692.js} +7 -7
  256. package/cjs/{VoiceMessageInputWrapper-68c8b8cb.js.map → VoiceMessageInputWrapper-ab392692.js.map} +1 -1
  257. package/cjs/VoicePlayer/context.js +3 -3
  258. package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
  259. package/cjs/VoiceRecorder/context.js +11 -4
  260. package/cjs/VoiceRecorder/context.js.map +1 -1
  261. package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
  262. package/cjs/{WebAudioUtils-00b9890d.js → WebAudioUtils-2196360d.js} +1 -1
  263. package/cjs/{WebAudioUtils-00b9890d.js.map → WebAudioUtils-2196360d.js.map} +1 -1
  264. package/cjs/{_rollupPluginBabelHelpers-2c0fc9c3.js → _rollupPluginBabelHelpers-af66a654.js} +1 -1
  265. package/cjs/_rollupPluginBabelHelpers-af66a654.js.map +1 -0
  266. package/cjs/{actionTypes-fb3f6a66.js → actionTypes-8348f508.js} +1 -1
  267. package/cjs/{actionTypes-fb3f6a66.js.map → actionTypes-8348f508.js.map} +1 -1
  268. package/cjs/{color-83cbca20.js → color-2ebe48ee.js} +1 -1
  269. package/cjs/{color-83cbca20.js.map → color-2ebe48ee.js.map} +1 -1
  270. package/cjs/{compareIds-c2907ec8.js → compareIds-d863dd50.js} +1 -1
  271. package/cjs/{compareIds-c2907ec8.js.map → compareIds-d863dd50.js.map} +1 -1
  272. package/cjs/{const-75153738.js → const-08ab2fdd.js} +1 -1
  273. package/cjs/{const-75153738.js.map → const-08ab2fdd.js.map} +1 -1
  274. package/cjs/{const-17970c49.js → const-6414a39e.js} +1 -1
  275. package/cjs/{const-17970c49.js.map → const-6414a39e.js.map} +1 -1
  276. package/cjs/{consts-5ead6f3b.js → consts-083ada31.js} +1 -1
  277. package/cjs/{consts-5ead6f3b.js.map → consts-083ada31.js.map} +1 -1
  278. package/cjs/{consts-d2103ed5.js → consts-3cb3a988.js} +1 -1
  279. package/cjs/{consts-d2103ed5.js.map → consts-3cb3a988.js.map} +1 -1
  280. package/cjs/{consts-0db2bedc.js → consts-78795eea.js} +3 -3
  281. package/cjs/consts-78795eea.js.map +1 -0
  282. package/cjs/{consts-aaf1208c.js → consts-eadce101.js} +1 -1
  283. package/cjs/{consts-aaf1208c.js.map → consts-eadce101.js.map} +1 -1
  284. package/cjs/{context-d9a84cb9.js → context-717f3cfa.js} +2 -2
  285. package/cjs/{context-d9a84cb9.js.map → context-717f3cfa.js.map} +1 -1
  286. package/cjs/dist/index.css +253 -181
  287. package/cjs/dist/index.css.map +1 -1
  288. package/cjs/{index-56735815.js → index-00cb06de.js} +5 -5
  289. package/cjs/{index-56735815.js.map → index-00cb06de.js.map} +1 -1
  290. package/cjs/{index-265937df.js → index-05291303.js} +18 -2
  291. package/cjs/index-05291303.js.map +1 -0
  292. package/cjs/{index-47e4bdbc.js → index-0dad3b72.js} +1 -1
  293. package/cjs/{index-47e4bdbc.js.map → index-0dad3b72.js.map} +1 -1
  294. package/cjs/{index-41ce4c44.js → index-148f38a8.js} +2 -2
  295. package/cjs/{index-41ce4c44.js.map → index-148f38a8.js.map} +1 -1
  296. package/cjs/{index-1737cbae.js → index-33b26fc7.js} +4 -4
  297. package/cjs/{index-1737cbae.js.map → index-33b26fc7.js.map} +1 -1
  298. package/cjs/{index-01768a5e.js → index-4bfecbd3.js} +6 -6
  299. package/cjs/{index-01768a5e.js.map → index-4bfecbd3.js.map} +1 -1
  300. package/cjs/index-564380b1.js +441 -0
  301. package/cjs/index-564380b1.js.map +1 -0
  302. package/cjs/{index-61c3208b.js → index-5d3946d1.js} +4 -4
  303. package/cjs/{index-61c3208b.js.map → index-5d3946d1.js.map} +1 -1
  304. package/cjs/{index-fcd2f4ff.js → index-73f2b1ce.js} +3 -2
  305. package/cjs/{index-fcd2f4ff.js.map → index-73f2b1ce.js.map} +1 -1
  306. package/cjs/{index-6ac703ea.js → index-77d2b6d3.js} +18 -12
  307. package/cjs/index-77d2b6d3.js.map +1 -0
  308. package/cjs/{index-c8c25288.js → index-793e52a7.js} +3 -3
  309. package/cjs/{index-c8c25288.js.map → index-793e52a7.js.map} +1 -1
  310. package/cjs/{index-552eb819.js → index-8fb98e2d.js} +3 -3
  311. package/cjs/{index-552eb819.js.map → index-8fb98e2d.js.map} +1 -1
  312. package/cjs/{index-5307f6c1.js → index-9b389aa4.js} +12 -7
  313. package/cjs/index-9b389aa4.js.map +1 -0
  314. package/cjs/{index-22bdf04e.js → index-b6443976.js} +2 -2
  315. package/cjs/{index-22bdf04e.js.map → index-b6443976.js.map} +1 -1
  316. package/cjs/{index-09f8f2a4.js → index-b8d7e1e9.js} +3 -3
  317. package/cjs/{index-09f8f2a4.js.map → index-b8d7e1e9.js.map} +1 -1
  318. package/cjs/{index-be9c5a7d.js → index-c2afb27d.js} +2 -2
  319. package/cjs/{index-be9c5a7d.js.map → index-c2afb27d.js.map} +1 -1
  320. package/cjs/{index-10d8f30f.js → index-f70fcb3a.js} +1 -1
  321. package/cjs/{index-10d8f30f.js.map → index-f70fcb3a.js.map} +1 -1
  322. package/cjs/index.js +60 -58
  323. package/cjs/index.js.map +1 -1
  324. package/cjs/{index.module-3e7701ca.js → index.module-045566c2.js} +1 -1
  325. package/cjs/{index.module-3e7701ca.js.map → index.module-045566c2.js.map} +1 -1
  326. package/cjs/sendbirdSelectors.js +3 -3
  327. package/cjs/{stringSet-c24927d9.js → stringSet-12caaa90.js} +1 -1
  328. package/cjs/{stringSet-c24927d9.js.map → stringSet-12caaa90.js.map} +1 -1
  329. package/cjs/{tokenize-1441f448.js → tokenize-6d05ba0a.js} +7 -3
  330. package/cjs/tokenize-6d05ba0a.js.map +1 -0
  331. package/cjs/{topics-0df2f6f9.js → topics-d00505e4.js} +1 -1
  332. package/cjs/{topics-0df2f6f9.js.map → topics-d00505e4.js.map} +1 -1
  333. package/cjs/{types-df20b895.js → types-0d699a7d.js} +1 -1
  334. package/cjs/types-0d699a7d.js.map +1 -0
  335. package/cjs/ui/Accordion.js +2 -2
  336. package/cjs/ui/AccordionGroup.js +2 -2
  337. package/cjs/ui/AdminMessage.js +2 -2
  338. package/cjs/ui/Avatar.js +1 -1
  339. package/cjs/ui/Badge.js +4 -4
  340. package/cjs/ui/BottomSheet.js +1 -1
  341. package/cjs/ui/Button.js +2 -2
  342. package/cjs/ui/ChannelAvatar.js +2 -2
  343. package/cjs/ui/ConnectionStatus.js +4 -4
  344. package/cjs/ui/ContextMenu.js +39 -26
  345. package/cjs/ui/ContextMenu.js.map +1 -1
  346. package/cjs/ui/DateSeparator.js +3 -3
  347. package/cjs/ui/EmojiReactions.js +252 -47
  348. package/cjs/ui/EmojiReactions.js.map +1 -1
  349. package/cjs/ui/FileMessageItemBody.js +6 -6
  350. package/cjs/ui/FileViewer.js +8 -8
  351. package/cjs/ui/Icon.js +190 -167
  352. package/cjs/ui/Icon.js.map +1 -1
  353. package/cjs/ui/IconButton.js +1 -1
  354. package/cjs/ui/Input.js +2 -2
  355. package/cjs/ui/Label.js +2 -2
  356. package/cjs/ui/LinkLabel.js +2 -2
  357. package/cjs/ui/MentionLabel.js +10 -10
  358. package/cjs/ui/MentionUserLabel.js +1 -1
  359. package/cjs/ui/MessageContent.js +60 -401
  360. package/cjs/ui/MessageContent.js.map +1 -1
  361. package/cjs/ui/MessageInput.js +12 -12
  362. package/cjs/ui/MessageItemMenu.js +22 -15
  363. package/cjs/ui/MessageItemMenu.js.map +1 -1
  364. package/cjs/ui/MessageItemReactionMenu.js +14 -7
  365. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  366. package/cjs/ui/MessageSearchFileItem.js +10 -10
  367. package/cjs/ui/MessageSearchItem.js +8 -8
  368. package/cjs/ui/MessageStatus.js +10 -10
  369. package/cjs/ui/Modal.js +7 -7
  370. package/cjs/ui/OGMessageItemBody.js +14 -14
  371. package/cjs/ui/OpenChannelAdminMessage.js +2 -2
  372. package/cjs/ui/OpenChannelAvatar.js +5 -5
  373. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  374. package/cjs/ui/OpenchannelFileMessage.js +19 -17
  375. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  376. package/cjs/ui/OpenchannelOGMessage.js +53 -55
  377. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  378. package/cjs/ui/OpenchannelThumbnailMessage.js +18 -16
  379. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  380. package/cjs/ui/OpenchannelUserMessage.js +23 -19
  381. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  382. package/cjs/ui/PlaceHolder.js +5 -5
  383. package/cjs/ui/PlaybackTime.js +2 -2
  384. package/cjs/ui/QuoteMessage.js +6 -6
  385. package/cjs/ui/QuoteMessageInput.js +6 -6
  386. package/cjs/ui/ReactionBadge.js +2 -2
  387. package/cjs/ui/ReactionButton.js +18 -12
  388. package/cjs/ui/ReactionButton.js.map +1 -1
  389. package/cjs/ui/SortByRow.js +1 -1
  390. package/cjs/ui/TextButton.js +1 -1
  391. package/cjs/ui/TextMessageItemBody.js +14 -14
  392. package/cjs/ui/ThreadReplies.js +5 -5
  393. package/cjs/ui/ThumbnailMessageItemBody.js +15 -9
  394. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  395. package/cjs/ui/Toggle.js +1 -1
  396. package/cjs/ui/Tooltip.js +2 -2
  397. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  398. package/cjs/ui/UserListItem.js +14 -13
  399. package/cjs/ui/UserListItem.js.map +1 -1
  400. package/cjs/ui/UserProfile.js +9 -9
  401. package/cjs/ui/VoiceMessageItemBody.js +5 -5
  402. package/cjs/ui/VoiceMessgeInput.js +7 -7
  403. package/cjs/ui/Word.js +10 -10
  404. package/cjs/useDirtyGetMentions-ccb235e4.js +77 -0
  405. package/cjs/useDirtyGetMentions-ccb235e4.js.map +1 -0
  406. package/cjs/{useLongPress-8aa00a28.js → useLongPress-5df6f108.js} +9 -5
  407. package/cjs/useLongPress-5df6f108.js.map +1 -0
  408. package/cjs/useSendbirdStateContext.js +1 -1
  409. package/cjs/utils/message/isVoiceMessage.js +2 -2
  410. package/cjs/{utils-4717b83e.js → utils-6436fe9d.js} +2 -2
  411. package/cjs/{utils-4717b83e.js.map → utils-6436fe9d.js.map} +1 -1
  412. package/cjs/{utils-111f523c.js → utils-abf8a0cd.js} +1 -1
  413. package/cjs/{utils-111f523c.js.map → utils-abf8a0cd.js.map} +1 -1
  414. package/cjs/{utils-93abfb7c.js → utils-b812f859.js} +1 -1
  415. package/cjs/{utils-93abfb7c.js.map → utils-b812f859.js.map} +1 -1
  416. package/cjs/{utils-a1fead2f.js → utils-ddd1b029.js} +1 -1
  417. package/cjs/{utils-a1fead2f.js.map → utils-ddd1b029.js.map} +1 -1
  418. package/cjs/{uuid-c854e2a9.js → uuid-cd931d55.js} +1 -1
  419. package/cjs/{uuid-c854e2a9.js.map → uuid-cd931d55.js.map} +1 -1
  420. package/cjs/withSendbird.js +1 -1
  421. package/{color-c1b95a91.js → color-be032457.js} +1 -1
  422. package/{color-c1b95a91.js.map → color-be032457.js.map} +1 -1
  423. package/{compareIds-74cf4016.js → compareIds-fa21456c.js} +1 -1
  424. package/{compareIds-74cf4016.js.map → compareIds-fa21456c.js.map} +1 -1
  425. package/{const-3af04f0a.js → const-48b39769.js} +1 -1
  426. package/{const-3af04f0a.js.map → const-48b39769.js.map} +1 -1
  427. package/{const-befef81d.js → const-71be96fe.js} +1 -1
  428. package/{const-befef81d.js.map → const-71be96fe.js.map} +1 -1
  429. package/{consts-a8bc28bd.js → consts-5cbd0257.js} +1 -1
  430. package/{consts-a8bc28bd.js.map → consts-5cbd0257.js.map} +1 -1
  431. package/{consts-9ece4263.js → consts-63e52cd8.js} +3 -3
  432. package/consts-63e52cd8.js.map +1 -0
  433. package/{consts-354db0d9.js → consts-967162b2.js} +1 -1
  434. package/{consts-354db0d9.js.map → consts-967162b2.js.map} +1 -1
  435. package/{consts-bb6cbaee.js → consts-c4702413.js} +1 -1
  436. package/{consts-bb6cbaee.js.map → consts-c4702413.js.map} +1 -1
  437. package/{context-38bde7ff.js → context-70804470.js} +2 -2
  438. package/{context-38bde7ff.js.map → context-70804470.js.map} +1 -1
  439. package/dist/index.css +253 -181
  440. package/dist/index.css.map +1 -1
  441. package/{index-ecf3a793.js → index-01c17da3.js} +12 -7
  442. package/index-01c17da3.js.map +1 -0
  443. package/{index-db801708.js → index-02d5e1f7.js} +5 -5
  444. package/{index-db801708.js.map → index-02d5e1f7.js.map} +1 -1
  445. package/{index-8a4d2b6e.js → index-0872eca4.js} +2 -2
  446. package/{index-8a4d2b6e.js.map → index-0872eca4.js.map} +1 -1
  447. package/{index-4554e20e.js → index-29ec12d6.js} +4 -4
  448. package/{index-4554e20e.js.map → index-29ec12d6.js.map} +1 -1
  449. package/{index-d8fdbe6f.js → index-2d3d2283.js} +16 -3
  450. package/index-2d3d2283.js.map +1 -0
  451. package/{index-1556dc4a.js → index-2eaeb4c8.js} +3 -3
  452. package/{index-1556dc4a.js.map → index-2eaeb4c8.js.map} +1 -1
  453. package/{index-321e838f.js → index-617179bd.js} +1 -1
  454. package/{index-321e838f.js.map → index-617179bd.js.map} +1 -1
  455. package/{index-88ab67cc.js → index-6ba87b2d.js} +4 -4
  456. package/{index-88ab67cc.js.map → index-6ba87b2d.js.map} +1 -1
  457. package/{index-ae8e6fc3.js → index-8d2735b6.js} +3 -3
  458. package/{index-ae8e6fc3.js.map → index-8d2735b6.js.map} +1 -1
  459. package/{index-14bb6832.js → index-a62f231a.js} +1 -1
  460. package/{index-14bb6832.js.map → index-a62f231a.js.map} +1 -1
  461. package/{index-1be3f6d7.js → index-c281a87e.js} +3 -3
  462. package/{index-1be3f6d7.js.map → index-c281a87e.js.map} +1 -1
  463. package/{index-96f6e11b.js → index-c3176145.js} +6 -6
  464. package/{index-96f6e11b.js.map → index-c3176145.js.map} +1 -1
  465. package/{index-a900bd78.js → index-c4af409f.js} +2 -2
  466. package/{index-a900bd78.js.map → index-c4af409f.js.map} +1 -1
  467. package/index-de27e990.js +435 -0
  468. package/index-de27e990.js.map +1 -0
  469. package/{index-aa215b1c.js → index-e307d0c3.js} +3 -3
  470. package/{index-aa215b1c.js.map → index-e307d0c3.js.map} +1 -1
  471. package/{index-8bf82e3b.js → index-efb59270.js} +18 -12
  472. package/index-efb59270.js.map +1 -0
  473. package/{index-67dd0c26.js → index-f22b46c2.js} +2 -2
  474. package/{index-67dd0c26.js.map → index-f22b46c2.js.map} +1 -1
  475. package/index.d.ts +5 -2
  476. package/index.js +60 -58
  477. package/index.js.map +1 -1
  478. package/{index.module-1c75b4f5.js → index.module-3529d572.js} +1 -1
  479. package/{index.module-1c75b4f5.js.map → index.module-3529d572.js.map} +1 -1
  480. package/package.json +2 -2
  481. package/sendbirdSelectors.js +3 -3
  482. package/{stringSet-6d89212b.js → stringSet-387833a3.js} +1 -1
  483. package/{stringSet-6d89212b.js.map → stringSet-387833a3.js.map} +1 -1
  484. package/{tokenize-2e969273.js → tokenize-c2f4569f.js} +7 -3
  485. package/tokenize-c2f4569f.js.map +1 -0
  486. package/{topics-8f4016e9.js → topics-019712e5.js} +1 -1
  487. package/{topics-8f4016e9.js.map → topics-019712e5.js.map} +1 -1
  488. package/{types-ebbbec62.js → types-34b09dae.js} +1 -1
  489. package/types-34b09dae.js.map +1 -0
  490. package/ui/Accordion.js +2 -2
  491. package/ui/AccordionGroup.js +2 -2
  492. package/ui/AdminMessage.js +2 -2
  493. package/ui/Avatar.js +1 -1
  494. package/ui/Badge.js +4 -4
  495. package/ui/BottomSheet.js +1 -1
  496. package/ui/Button.js +2 -2
  497. package/ui/ChannelAvatar.js +2 -2
  498. package/ui/ConnectionStatus.js +4 -4
  499. package/ui/ContextMenu.js +39 -26
  500. package/ui/ContextMenu.js.map +1 -1
  501. package/ui/DateSeparator.js +3 -3
  502. package/ui/EmojiReactions.js +253 -48
  503. package/ui/EmojiReactions.js.map +1 -1
  504. package/ui/FileMessageItemBody.js +6 -6
  505. package/ui/FileViewer.js +8 -8
  506. package/ui/Icon.js +190 -167
  507. package/ui/Icon.js.map +1 -1
  508. package/ui/IconButton.js +1 -1
  509. package/ui/Input.js +2 -2
  510. package/ui/Label.js +2 -2
  511. package/ui/LinkLabel.js +2 -2
  512. package/ui/MentionLabel.js +10 -10
  513. package/ui/MentionUserLabel.js +1 -1
  514. package/ui/MessageContent.js +61 -402
  515. package/ui/MessageContent.js.map +1 -1
  516. package/ui/MessageInput.js +12 -12
  517. package/ui/MessageItemMenu.js +22 -15
  518. package/ui/MessageItemMenu.js.map +1 -1
  519. package/ui/MessageItemReactionMenu.js +14 -7
  520. package/ui/MessageItemReactionMenu.js.map +1 -1
  521. package/ui/MessageSearchFileItem.js +10 -10
  522. package/ui/MessageSearchItem.js +8 -8
  523. package/ui/MessageStatus.js +10 -10
  524. package/ui/Modal.js +7 -7
  525. package/ui/OGMessageItemBody.js +14 -14
  526. package/ui/OpenChannelAdminMessage.js +2 -2
  527. package/ui/OpenChannelAvatar.js +5 -5
  528. package/ui/OpenchannelConversationHeader.js +6 -6
  529. package/ui/OpenchannelFileMessage.js +19 -17
  530. package/ui/OpenchannelFileMessage.js.map +1 -1
  531. package/ui/OpenchannelOGMessage.js +53 -55
  532. package/ui/OpenchannelOGMessage.js.map +1 -1
  533. package/ui/OpenchannelThumbnailMessage.js +18 -16
  534. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  535. package/ui/OpenchannelUserMessage.js +23 -19
  536. package/ui/OpenchannelUserMessage.js.map +1 -1
  537. package/ui/PlaceHolder.js +5 -5
  538. package/ui/PlaybackTime.js +2 -2
  539. package/ui/QuoteMessage.js +6 -6
  540. package/ui/QuoteMessageInput.js +6 -6
  541. package/ui/ReactionBadge.js +2 -2
  542. package/ui/ReactionButton.js +18 -12
  543. package/ui/ReactionButton.js.map +1 -1
  544. package/ui/SortByRow.js +1 -1
  545. package/ui/TextButton.js +1 -1
  546. package/ui/TextMessageItemBody.js +14 -14
  547. package/ui/ThreadReplies.js +5 -5
  548. package/ui/ThumbnailMessageItemBody.js +15 -9
  549. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  550. package/ui/Toggle.js +1 -1
  551. package/ui/Tooltip.js +2 -2
  552. package/ui/UnknownMessageItemBody.js +6 -6
  553. package/ui/UserListItem.js +14 -13
  554. package/ui/UserListItem.js.map +1 -1
  555. package/ui/UserProfile.js +9 -9
  556. package/ui/VoiceMessageItemBody.js +5 -5
  557. package/ui/VoiceMessgeInput.js +7 -7
  558. package/ui/Word.js +10 -10
  559. package/useDirtyGetMentions-a032c723.js +75 -0
  560. package/useDirtyGetMentions-a032c723.js.map +1 -0
  561. package/{useLongPress-8d44d259.js → useLongPress-b803e920.js} +9 -5
  562. package/useLongPress-b803e920.js.map +1 -0
  563. package/useSendbirdStateContext.js +1 -1
  564. package/utils/message/isVoiceMessage.js +2 -2
  565. package/{utils-b42f4fab.js → utils-1d8ffd91.js} +2 -2
  566. package/{utils-b42f4fab.js.map → utils-1d8ffd91.js.map} +1 -1
  567. package/{utils-c8b489c4.js → utils-28a3bfad.js} +1 -1
  568. package/{utils-c8b489c4.js.map → utils-28a3bfad.js.map} +1 -1
  569. package/{utils-7d781542.js → utils-43d93f46.js} +1 -1
  570. package/{utils-7d781542.js.map → utils-43d93f46.js.map} +1 -1
  571. package/{utils-8e039c1b.js → utils-cb06f177.js} +1 -1
  572. package/{utils-8e039c1b.js.map → utils-cb06f177.js.map} +1 -1
  573. package/{uuid-c94bd88b.js → uuid-295e6b8b.js} +1 -1
  574. package/{uuid-c94bd88b.js.map → uuid-295e6b8b.js.map} +1 -1
  575. package/withSendbird.js +1 -1
  576. package/ChannelListProvider-1d8f4d94.js.map +0 -1
  577. package/ChannelProvider-bba4a095.js.map +0 -1
  578. package/MediaQueryContext-8d283dc2.js.map +0 -1
  579. package/MemberList-38971d43.js.map +0 -1
  580. package/ThreadProvider-128d5041.js.map +0 -1
  581. package/_rollupPluginBabelHelpers-eaf55eff.js.map +0 -1
  582. package/cjs/ChannelListProvider-634b78f3.js.map +0 -1
  583. package/cjs/ChannelProvider-5366f030.js.map +0 -1
  584. package/cjs/MediaQueryContext-e443379e.js.map +0 -1
  585. package/cjs/MemberList-3736f22c.js.map +0 -1
  586. package/cjs/ThreadProvider-d38505b4.js.map +0 -1
  587. package/cjs/_rollupPluginBabelHelpers-2c0fc9c3.js.map +0 -1
  588. package/cjs/consts-0db2bedc.js.map +0 -1
  589. package/cjs/index-265937df.js.map +0 -1
  590. package/cjs/index-5307f6c1.js.map +0 -1
  591. package/cjs/index-6ac703ea.js.map +0 -1
  592. package/cjs/tokenize-1441f448.js.map +0 -1
  593. package/cjs/types-df20b895.js.map +0 -1
  594. package/cjs/useLongPress-8aa00a28.js.map +0 -1
  595. package/consts-9ece4263.js.map +0 -1
  596. package/index-8bf82e3b.js.map +0 -1
  597. package/index-d8fdbe6f.js.map +0 -1
  598. package/index-ecf3a793.js.map +0 -1
  599. package/tokenize-2e969273.js.map +0 -1
  600. package/types-ebbbec62.js.map +0 -1
  601. package/useLongPress-8d44d259.js.map +0 -1
@@ -120,4 +120,4 @@ function bufferToWav(abuffer, len) {
120
120
  }
121
121
 
122
122
  export { downsampleToWav, encodeMp3 };
123
- //# sourceMappingURL=WebAudioUtils-5f47139c.js.map
123
+ //# sourceMappingURL=WebAudioUtils-904afd00.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebAudioUtils-5f47139c.js","sources":["../src/hooks/VoiceRecorder/WebAudioUtils.ts"],"sourcesContent":["// Thanks to https://codesandbox.io/s/media-recorder-api-downsampling-16k-mp3-encode-using-lame-js-forked-n1pblw\nimport { WavHeader, Mp3Encoder } from '../../_externals/lamejs/lame.all';\n\nfunction encodeMp3(arrayBuffer: ArrayBuffer): WavHeader {\n const wav = WavHeader.readHeader(new DataView(arrayBuffer));\n const dataView = new Int16Array(arrayBuffer, wav.dataOffset, wav.dataLen / 2);\n const mp3Encoder = new Mp3Encoder(wav.channels, wav.sampleRate, 128);\n const maxSamples = 1152;\n\n const samplesLeft = (wav.channels === 1) ? dataView : new Int16Array(wav.dataLen / (2 * wav.channels));\n const samplesRight = (wav.channels === 2) ? new Int16Array(wav.dataLen / (2 * wav.channels)) : undefined;\n\n if (wav.channels > 1) {\n for (let j = 0; j < samplesLeft.length; j++) {\n samplesLeft[j] = dataView[j * 2];\n samplesRight[j] = dataView[j * 2 + 1];\n }\n }\n\n const dataBuffer = [];\n let remaining = samplesLeft.length;\n for (let i = 0; remaining >= maxSamples; i += maxSamples) {\n const left = samplesLeft.subarray(i, i + maxSamples);\n let right;\n if (samplesRight) {\n right = samplesRight.subarray(i, i + maxSamples);\n }\n const mp3buf = mp3Encoder.encodeBuffer(left, right);\n dataBuffer.push(new Int8Array(mp3buf));\n remaining -= maxSamples;\n }\n\n const mp3Lastbuf = mp3Encoder.flush();\n dataBuffer.push(new Int8Array(mp3Lastbuf));\n return dataBuffer;\n}\n\n// Convert audioFile to arrayBuffer, because Mp3Encoder requires a parameter of ArrayBuffer type\nfunction downsampleToWav(file: File, callback: (buffer: ArrayBuffer) => void): void {\n // Browser compatibility\n // https://caniuse.com/?search=AudioContext\n const audioCtx = new AudioContext();\n const fileReader = new FileReader();\n fileReader.onload = function (ev) {\n // Decode audio\n audioCtx.decodeAudioData(ev.target.result as ArrayBuffer, (buffer) => {\n // this is where you down sample the audio, usually is 44100 samples per second\n const usingWebkit = !window.OfflineAudioContext;\n const offlineAudioCtx = new OfflineAudioContext(1, 16000 * buffer.duration, 16000);\n\n const soundSource = offlineAudioCtx.createBufferSource();\n soundSource.buffer = buffer;\n soundSource.connect(offlineAudioCtx.destination);\n\n const reader = new FileReader();\n reader.onload = function () {\n const renderCompleteHandler = (evt): void => {\n const renderedBuffer = usingWebkit ? evt.renderedBuffer : evt;\n const buffer = bufferToWav(renderedBuffer, renderedBuffer.length);\n if (callback) {\n callback(buffer);\n }\n };\n if (usingWebkit) {\n offlineAudioCtx.oncomplete = renderCompleteHandler;\n offlineAudioCtx.startRendering();\n } else {\n offlineAudioCtx\n .startRendering()\n .then(renderCompleteHandler)\n // eslint-disable-next-line no-console\n .catch((err) => console.warn(err));\n }\n };\n reader.readAsArrayBuffer(file);\n soundSource.start(0);\n });\n };\n fileReader.readAsArrayBuffer(file);\n}\n\nfunction bufferToWav(abuffer, len) {\n const numOfChan = abuffer.numberOfChannels;\n const length = len * numOfChan * 2 + 44;\n const buffer = new ArrayBuffer(length);\n const view = new DataView(buffer);\n const channels = [];\n let i = 0;\n let sample;\n let offset = 0;\n let pos = 0;\n\n // write WAVE header\n setUint32(0x46464952); // \"RIFF\"\n setUint32(length - 8); // file length - 8\n setUint32(0x45564157); // \"WAVE\"\n setUint32(0x20746d66); // \"fmt \" chunk\n setUint32(16); // length = 16\n setUint16(1); // PCM (uncompressed)\n setUint16(numOfChan);\n setUint32(abuffer.sampleRate);\n setUint32(abuffer.sampleRate * 2 * numOfChan); // avg. bytes/sec\n setUint16(numOfChan * 2); // block-align\n setUint16(16); // 16-bit (hardcoded in this demo)\n setUint32(0x61746164); // \"data\" - chunk\n setUint32(length - pos - 4); // chunk length\n // write interleaved data\n for (i = 0; i < abuffer.numberOfChannels; i++)\n channels.push(abuffer.getChannelData(i));\n\n while (pos < length) {\n for (i = 0; i < numOfChan; i++) {\n // interleave channels\n sample = Math.max(-1, Math.min(1, channels[i][offset])); // clamp\n sample = (0.5 + sample < 0 ? sample * 32768 : sample * 32767) | 0; // scale to 16-bit signed int\n view.setInt16(pos, sample, true); // write 16-bit sample\n pos += 2;\n }\n offset++; // next source sample\n }\n\n return buffer;\n\n function setUint16(data) {\n view.setUint16(pos, data, true);\n pos += 2;\n }\n\n function setUint32(data) {\n view.setUint32(pos, data, true);\n pos += 4;\n }\n}\n\nexport { downsampleToWav, encodeMp3 };\n"],"names":["encodeMp3","arrayBuffer","wav","WavHeader","readHeader","DataView","dataView","Int16Array","dataOffset","dataLen","mp3Encoder","Mp3Encoder","channels","sampleRate","maxSamples","samplesLeft","samplesRight","undefined","j","length","dataBuffer","remaining","i","left","subarray","right","mp3buf","encodeBuffer","push","Int8Array","mp3Lastbuf","flush","downsampleToWav","file","callback","audioCtx","AudioContext","fileReader","FileReader","onload","ev","decodeAudioData","target","result","buffer","usingWebkit","window","OfflineAudioContext","offlineAudioCtx","duration","soundSource","createBufferSource","connect","destination","reader","renderCompleteHandler","evt","renderedBuffer","bufferToWav","oncomplete","startRendering","then","catch","err","console","warn","readAsArrayBuffer","start","abuffer","len","numOfChan","numberOfChannels","ArrayBuffer","view","sample","offset","pos","setUint32","setUint16","getChannelData","Math","max","min","setInt16","data"],"mappings":"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"}
1
+ {"version":3,"file":"WebAudioUtils-904afd00.js","sources":["../src/hooks/VoiceRecorder/WebAudioUtils.ts"],"sourcesContent":["// Thanks to https://codesandbox.io/s/media-recorder-api-downsampling-16k-mp3-encode-using-lame-js-forked-n1pblw\nimport { WavHeader, Mp3Encoder } from '../../_externals/lamejs/lame.all';\n\nfunction encodeMp3(arrayBuffer: ArrayBuffer): WavHeader {\n const wav = WavHeader.readHeader(new DataView(arrayBuffer));\n const dataView = new Int16Array(arrayBuffer, wav.dataOffset, wav.dataLen / 2);\n const mp3Encoder = new Mp3Encoder(wav.channels, wav.sampleRate, 128);\n const maxSamples = 1152;\n\n const samplesLeft = (wav.channels === 1) ? dataView : new Int16Array(wav.dataLen / (2 * wav.channels));\n const samplesRight = (wav.channels === 2) ? new Int16Array(wav.dataLen / (2 * wav.channels)) : undefined;\n\n if (wav.channels > 1) {\n for (let j = 0; j < samplesLeft.length; j++) {\n samplesLeft[j] = dataView[j * 2];\n samplesRight[j] = dataView[j * 2 + 1];\n }\n }\n\n const dataBuffer = [];\n let remaining = samplesLeft.length;\n for (let i = 0; remaining >= maxSamples; i += maxSamples) {\n const left = samplesLeft.subarray(i, i + maxSamples);\n let right;\n if (samplesRight) {\n right = samplesRight.subarray(i, i + maxSamples);\n }\n const mp3buf = mp3Encoder.encodeBuffer(left, right);\n dataBuffer.push(new Int8Array(mp3buf));\n remaining -= maxSamples;\n }\n\n const mp3Lastbuf = mp3Encoder.flush();\n dataBuffer.push(new Int8Array(mp3Lastbuf));\n return dataBuffer;\n}\n\n// Convert audioFile to arrayBuffer, because Mp3Encoder requires a parameter of ArrayBuffer type\nfunction downsampleToWav(file: File, callback: (buffer: ArrayBuffer) => void): void {\n // Browser compatibility\n // https://caniuse.com/?search=AudioContext\n const audioCtx = new AudioContext();\n const fileReader = new FileReader();\n fileReader.onload = function (ev) {\n // Decode audio\n audioCtx.decodeAudioData(ev.target.result as ArrayBuffer, (buffer) => {\n // this is where you down sample the audio, usually is 44100 samples per second\n const usingWebkit = !window.OfflineAudioContext;\n const offlineAudioCtx = new OfflineAudioContext(1, 16000 * buffer.duration, 16000);\n\n const soundSource = offlineAudioCtx.createBufferSource();\n soundSource.buffer = buffer;\n soundSource.connect(offlineAudioCtx.destination);\n\n const reader = new FileReader();\n reader.onload = function () {\n const renderCompleteHandler = (evt): void => {\n const renderedBuffer = usingWebkit ? evt.renderedBuffer : evt;\n const buffer = bufferToWav(renderedBuffer, renderedBuffer.length);\n if (callback) {\n callback(buffer);\n }\n };\n if (usingWebkit) {\n offlineAudioCtx.oncomplete = renderCompleteHandler;\n offlineAudioCtx.startRendering();\n } else {\n offlineAudioCtx\n .startRendering()\n .then(renderCompleteHandler)\n // eslint-disable-next-line no-console\n .catch((err) => console.warn(err));\n }\n };\n reader.readAsArrayBuffer(file);\n soundSource.start(0);\n });\n };\n fileReader.readAsArrayBuffer(file);\n}\n\nfunction bufferToWav(abuffer, len) {\n const numOfChan = abuffer.numberOfChannels;\n const length = len * numOfChan * 2 + 44;\n const buffer = new ArrayBuffer(length);\n const view = new DataView(buffer);\n const channels = [];\n let i = 0;\n let sample;\n let offset = 0;\n let pos = 0;\n\n // write WAVE header\n setUint32(0x46464952); // \"RIFF\"\n setUint32(length - 8); // file length - 8\n setUint32(0x45564157); // \"WAVE\"\n setUint32(0x20746d66); // \"fmt \" chunk\n setUint32(16); // length = 16\n setUint16(1); // PCM (uncompressed)\n setUint16(numOfChan);\n setUint32(abuffer.sampleRate);\n setUint32(abuffer.sampleRate * 2 * numOfChan); // avg. bytes/sec\n setUint16(numOfChan * 2); // block-align\n setUint16(16); // 16-bit (hardcoded in this demo)\n setUint32(0x61746164); // \"data\" - chunk\n setUint32(length - pos - 4); // chunk length\n // write interleaved data\n for (i = 0; i < abuffer.numberOfChannels; i++)\n channels.push(abuffer.getChannelData(i));\n\n while (pos < length) {\n for (i = 0; i < numOfChan; i++) {\n // interleave channels\n sample = Math.max(-1, Math.min(1, channels[i][offset])); // clamp\n sample = (0.5 + sample < 0 ? sample * 32768 : sample * 32767) | 0; // scale to 16-bit signed int\n view.setInt16(pos, sample, true); // write 16-bit sample\n pos += 2;\n }\n offset++; // next source sample\n }\n\n return buffer;\n\n function setUint16(data) {\n view.setUint16(pos, data, true);\n pos += 2;\n }\n\n function setUint32(data) {\n view.setUint32(pos, data, true);\n pos += 4;\n }\n}\n\nexport { downsampleToWav, encodeMp3 };\n"],"names":["encodeMp3","arrayBuffer","wav","WavHeader","readHeader","DataView","dataView","Int16Array","dataOffset","dataLen","mp3Encoder","Mp3Encoder","channels","sampleRate","maxSamples","samplesLeft","samplesRight","undefined","j","length","dataBuffer","remaining","i","left","subarray","right","mp3buf","encodeBuffer","push","Int8Array","mp3Lastbuf","flush","downsampleToWav","file","callback","audioCtx","AudioContext","fileReader","FileReader","onload","ev","decodeAudioData","target","result","buffer","usingWebkit","window","OfflineAudioContext","offlineAudioCtx","duration","soundSource","createBufferSource","connect","destination","reader","renderCompleteHandler","evt","renderedBuffer","bufferToWav","oncomplete","startRendering","then","catch","err","console","warn","readAsArrayBuffer","start","abuffer","len","numOfChan","numberOfChannels","ArrayBuffer","view","sample","offset","pos","setUint32","setUint16","getChannelData","Math","max","min","setInt16","data"],"mappings":"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"}
@@ -63,4 +63,4 @@ function _toPropertyKey(arg) {
63
63
  }
64
64
 
65
65
  export { _objectSpread2 as _, _defineProperty as a, _extends as b };
66
- //# sourceMappingURL=_rollupPluginBabelHelpers-eaf55eff.js.map
66
+ //# sourceMappingURL=_rollupPluginBabelHelpers-8c286a7c.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_rollupPluginBabelHelpers-8c286a7c.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -5,4 +5,4 @@ const USER_ACTIONS = {
5
5
  };
6
6
 
7
7
  export { USER_ACTIONS as U };
8
- //# sourceMappingURL=actionTypes-98eee9f4.js.map
8
+ //# sourceMappingURL=actionTypes-bd8af98d.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"actionTypes-98eee9f4.js","sources":["../src/lib/dux/user/actionTypes.ts"],"sourcesContent":["import { User } from '@sendbird/chat';\nimport { CreateAction } from '../../../utils/typeHelpers/reducers/CreateAction';\n\nexport const USER_ACTIONS = {\n INIT_USER: 'INIT_USER',\n RESET_USER: 'RESET_USER',\n UPDATE_USER_INFO: 'UPDATE_USER_INFO',\n} as const;\n\ntype USER_PAYLOAD_TYPES = {\n [USER_ACTIONS.INIT_USER]: User,\n [USER_ACTIONS.RESET_USER]: null,\n [USER_ACTIONS.UPDATE_USER_INFO]: User,\n};\n\nexport type UserActionTypes = CreateAction<USER_PAYLOAD_TYPES>;\n"],"names":["USER_ACTIONS","INIT_USER","RESET_USER","UPDATE_USER_INFO"],"mappings":"AAGO,MAAMA,YAAY,GAAG;AAC1BC,EAAAA,SAAS,EAAE,WAAW;AACtBC,EAAAA,UAAU,EAAE,YAAY;AACxBC,EAAAA,gBAAgB,EAAE,kBAAA;AACpB;;;;"}
1
+ {"version":3,"file":"actionTypes-bd8af98d.js","sources":["../src/lib/dux/user/actionTypes.ts"],"sourcesContent":["import { User } from '@sendbird/chat';\nimport { CreateAction } from '../../../utils/typeHelpers/reducers/createAction';\n\nexport const USER_ACTIONS = {\n INIT_USER: 'INIT_USER',\n RESET_USER: 'RESET_USER',\n UPDATE_USER_INFO: 'UPDATE_USER_INFO',\n} as const;\n\ntype USER_PAYLOAD_TYPES = {\n [USER_ACTIONS.INIT_USER]: User,\n [USER_ACTIONS.RESET_USER]: null,\n [USER_ACTIONS.UPDATE_USER_INFO]: User,\n};\n\nexport type UserActionTypes = CreateAction<USER_PAYLOAD_TYPES>;\n"],"names":["USER_ACTIONS","INIT_USER","RESET_USER","UPDATE_USER_INFO"],"mappings":"AAGO,MAAMA,YAAY,GAAG;AAC1BC,EAAAA,SAAS,EAAE,WAAW;AACtBC,EAAAA,UAAU,EAAE,YAAY;AACxBC,EAAAA,gBAAgB,EAAE,kBAAA;AACpB;;;;"}
package/cjs/App.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var React = require('react');
4
4
  var PropTypes = require('prop-types');
5
5
  var SendbirdProvider = require('./SendbirdProvider.js');
6
- var MediaQueryContext = require('./MediaQueryContext-e443379e.js');
6
+ var MediaQueryContext = require('./MediaQueryContext-f0b22fae.js');
7
7
  var ChannelList = require('./ChannelList.js');
8
8
  var Channel = require('./Channel.js');
9
9
  var ChannelSettings = require('./ChannelSettings.js');
@@ -11,29 +11,29 @@ var MessageSearch = require('./MessageSearch.js');
11
11
  var Thread = require('./Thread.js');
12
12
  var groupChannel = require('@sendbird/chat/groupChannel');
13
13
  var useSendbirdStateContext = require('./useSendbirdStateContext.js');
14
- var uuid = require('./uuid-c854e2a9.js');
15
- var consts = require('./consts-0db2bedc.js');
16
- require('./_rollupPluginBabelHelpers-2c0fc9c3.js');
14
+ var uuid = require('./uuid-cd931d55.js');
15
+ var consts = require('./consts-78795eea.js');
16
+ require('./_rollupPluginBabelHelpers-af66a654.js');
17
17
  require('./withSendbird.js');
18
18
  require('css-vars-ponyfill');
19
- require('./index.module-3e7701ca.js');
20
- require('./actionTypes-fb3f6a66.js');
19
+ require('./index.module-045566c2.js');
20
+ require('./actionTypes-8348f508.js');
21
21
  require('@sendbird/chat');
22
22
  require('@sendbird/chat/openChannel');
23
- require('./index-265937df.js');
23
+ require('./index-05291303.js');
24
24
  require('./utils/message/getOutgoingMessageState.js');
25
- require('./index-09f8f2a4.js');
25
+ require('./index-b8d7e1e9.js');
26
26
  require('./VoiceRecorder/context.js');
27
- require('./LocalizationContext-4fa55e6b.js');
28
- require('./stringSet-c24927d9.js');
29
- require('./index-47e4bdbc.js');
30
- require('./ChannelListProvider-634b78f3.js');
31
- require('./topics-0df2f6f9.js');
32
- require('./utils-a1fead2f.js');
33
- require('./UserProfileContext-83eaf6e8.js');
27
+ require('./LocalizationContext-a7ac3575.js');
28
+ require('./stringSet-12caaa90.js');
29
+ require('./index-0dad3b72.js');
30
+ require('./ChannelListProvider-2ea52e8f.js');
31
+ require('./topics-d00505e4.js');
32
+ require('./utils-ddd1b029.js');
33
+ require('./UserProfileContext-a026a307.js');
34
34
  require('./ChannelList/components/ChannelListUI.js');
35
35
  require('./ChannelList/components/ChannelListHeader.js');
36
- require('./index-22bdf04e.js');
36
+ require('./index-b6443976.js');
37
37
  require('./ui/Avatar.js');
38
38
  require('./ui/ImageRenderer.js');
39
39
  require('./ui/Icon.js');
@@ -41,12 +41,12 @@ require('./ChannelList/components/AddChannel.js');
41
41
  require('./ui/IconButton.js');
42
42
  require('./CreateChannel.js');
43
43
  require('./CreateChannel/components/CreateChannelUI.js');
44
- require('./CreateChannelProvider-65dcc450.js');
44
+ require('./CreateChannelProvider-83cd1b9a.js');
45
45
  require('./sendbirdSelectors.js');
46
46
  require('./CreateChannel/components/InviteUsers.js');
47
47
  require('./ui/Modal.js');
48
48
  require('react-dom');
49
- require('./index-10d8f30f.js');
49
+ require('./index-f70fcb3a.js');
50
50
  require('./ui/Button.js');
51
51
  require('./ui/UserListItem.js');
52
52
  require('./ui/MutedAvatarOverlay.js');
@@ -57,57 +57,58 @@ require('./ui/SortByRow.js');
57
57
  require('./CreateChannel/components/SelectChannelType.js');
58
58
  require('./ChannelList/components/ChannelPreview.js');
59
59
  require('./ui/ChannelAvatar.js');
60
- require('./utils-93abfb7c.js');
60
+ require('./utils-b812f859.js');
61
61
  require('./ui/Badge.js');
62
- require('./index-01768a5e.js');
63
- require('./index-be9c5a7d.js');
62
+ require('./index-4bfecbd3.js');
63
+ require('./index-c2afb27d.js');
64
64
  require('./ui/Loader.js');
65
- require('./index-c8c25288.js');
66
- require('./index-41ce4c44.js');
65
+ require('./index-793e52a7.js');
66
+ require('./index-148f38a8.js');
67
67
  require('./ui/MentionUserLabel.js');
68
- require('./consts-d2103ed5.js');
68
+ require('./consts-3cb3a988.js');
69
69
  require('./ui/TextButton.js');
70
- require('./color-83cbca20.js');
70
+ require('./color-2ebe48ee.js');
71
71
  require('./Channel/components/TypingIndicator.js');
72
- require('./ChannelProvider-5366f030.js');
73
- require('./compareIds-c2907ec8.js');
74
- require('./const-17970c49.js');
72
+ require('./ChannelProvider-4057a4e6.js');
73
+ require('./compareIds-d863dd50.js');
74
+ require('./const-6414a39e.js');
75
75
  require('@sendbird/chat/message');
76
- require('./useLongPress-8aa00a28.js');
76
+ require('./useLongPress-5df6f108.js');
77
77
  require('./ChannelList/components/ChannelPreviewAction.js');
78
78
  require('./EditUserProfile.js');
79
- require('./index-56735815.js');
79
+ require('./index-00cb06de.js');
80
80
  require('./ui/Input.js');
81
- require('./index-552eb819.js');
81
+ require('./index-8fb98e2d.js');
82
82
  require('./Channel/components/ChannelUI.js');
83
83
  require('./ui/ConnectionStatus.js');
84
84
  require('./Channel/components/ChannelHeader.js');
85
- require('./utils-4717b83e.js');
85
+ require('./utils-6436fe9d.js');
86
86
  require('./Channel/components/MessageList.js');
87
87
  require('./Channel/components/Message.js');
88
88
  require('./Channel/components/SuggestedMentionList.js');
89
- require('./const-75153738.js');
90
- require('./ThreadProvider-d38505b4.js');
89
+ require('./const-08ab2fdd.js');
90
+ require('./ThreadProvider-6a39fc92.js');
91
91
  require('./Thread/context/types.js');
92
92
  require('./ui/DateSeparator.js');
93
93
  require('./ui/MessageInput.js');
94
94
  require('dompurify');
95
- require('./consts-aaf1208c.js');
96
- require('./consts-5ead6f3b.js');
97
- require('./tokenize-1441f448.js');
95
+ require('./consts-eadce101.js');
96
+ require('./consts-083ada31.js');
97
+ require('./tokenize-6d05ba0a.js');
98
98
  require('./ui/MessageContent.js');
99
99
  require('./ui/MessageItemMenu.js');
100
- require('./types-df20b895.js');
100
+ require('./types-0d699a7d.js');
101
101
  require('./ui/MessageItemReactionMenu.js');
102
102
  require('./ui/ReactionButton.js');
103
103
  require('./ui/EmojiReactions.js');
104
+ require('./ui/ReactionBadge.js');
105
+ require('./ui/BottomSheet.js');
104
106
  require('./ui/Tooltip.js');
105
107
  require('./ui/TooltipWrapper.js');
106
- require('./ui/ReactionBadge.js');
108
+ require('./Message/context.js');
107
109
  require('./ui/AdminMessage.js');
108
110
  require('./ui/TextMessageItemBody.js');
109
- require('./index-61c3208b.js');
110
- require('./Message/context.js');
111
+ require('./index-5d3946d1.js');
111
112
  require('./ui/MentionLabel.js');
112
113
  require('./ui/LinkLabel.js');
113
114
  require('./ui/FileMessageItemBody.js');
@@ -115,7 +116,7 @@ require('./ui/ThumbnailMessageItemBody.js');
115
116
  require('./ui/OGMessageItemBody.js');
116
117
  require('./ui/UnknownMessageItemBody.js');
117
118
  require('./ui/QuoteMessage.js');
118
- require('./ui/BottomSheet.js');
119
+ require('./index-564380b1.js');
119
120
  require('./ui/ThreadReplies.js');
120
121
  require('./ui/VoiceMessageItemBody.js');
121
122
  require('./ui/ProgressBar.js');
@@ -123,14 +124,15 @@ require('./VoicePlayer/useVoicePlayer.js');
123
124
  require('./ui/PlaybackTime.js');
124
125
  require('./Channel/components/FileViewer.js');
125
126
  require('./Channel/components/RemoveMessageModal.js');
126
- require('./index-fcd2f4ff.js');
127
+ require('./index-73f2b1ce.js');
128
+ require('./useDirtyGetMentions-ccb235e4.js');
127
129
  require('./Channel/components/UnreadCount.js');
128
130
  require('./Channel/components/FrozenNotification.js');
129
131
  require('./Channel/components/MessageInput.js');
130
132
  require('./ui/QuoteMessageInput.js');
131
- require('./VoiceMessageInputWrapper-68c8b8cb.js');
133
+ require('./VoiceMessageInputWrapper-ab392692.js');
132
134
  require('./VoiceRecorder/useVoiceRecorder.js');
133
- require('./index-1737cbae.js');
135
+ require('./index-33b26fc7.js');
134
136
  require('./ChannelSettings/components/ChannelSettingsUI.js');
135
137
  require('./ChannelSettings/context.js');
136
138
  require('./ChannelSettings/components/ChannelProfile.js');
@@ -138,10 +140,10 @@ require('./ChannelSettings/components/EditDetailsModal.js');
138
140
  require('./ChannelSettings/components/ModerationPanel.js');
139
141
  require('./ui/Accordion.js');
140
142
  require('./ui/AccordionGroup.js');
141
- require('./context-d9a84cb9.js');
143
+ require('./context-717f3cfa.js');
142
144
  require('./ui/Toggle.js');
143
145
  require('./ChannelSettings/components/UserListItem.js');
144
- require('./MemberList-3736f22c.js');
146
+ require('./MemberList-d02103a5.js');
145
147
  require('./ChannelSettings/components/LeaveChannel.js');
146
148
  require('./ChannelSettings/components/UserPanel.js');
147
149
  require('./MessageSearch/components/MessageSearchUI.js');
@@ -150,7 +152,7 @@ require('./ui/MessageSearchItem.js');
150
152
  require('./ui/MessageSearchFileItem.js');
151
153
  require('./Thread/components/ThreadUI.js');
152
154
  require('./Thread/components/ParentMessageInfo.js');
153
- require('./RemoveMessageModal-3535563a.js');
155
+ require('./RemoveMessageModal-95aeddfe.js');
154
156
  require('./Thread/components/ParentMessageInfoItem.js');
155
157
  require('./ui/FileViewer.js');
156
158
  require('./Thread/components/ThreadHeader.js');
@@ -199,8 +201,8 @@ const DesktopLayout = props => {
199
201
  onProfileEditSuccess: onProfileEditSuccess,
200
202
  disableAutoSelect: disableAutoSelect,
201
203
  onChannelSelect: channel => {
202
- setStartingPoint(null);
203
- setHighlightedMessage(null);
204
+ setStartingPoint === null || setStartingPoint === void 0 ? void 0 : setStartingPoint(null);
205
+ setHighlightedMessage === null || setHighlightedMessage === void 0 ? void 0 : setHighlightedMessage(null);
204
206
  if (channel) {
205
207
  setCurrentChannel(channel);
206
208
  } else {
@@ -253,7 +255,7 @@ const DesktopLayout = props => {
253
255
  setAnimatedMessageId(null);
254
256
  },
255
257
  onMessageHighlighted: () => {
256
- setHighlightedMessage(null);
258
+ setHighlightedMessage === null || setHighlightedMessage === void 0 ? void 0 : setHighlightedMessage(null);
257
259
  },
258
260
  showSearchIcon: showSearchIcon,
259
261
  startingPoint: startingPoint,
@@ -276,13 +278,13 @@ const DesktopLayout = props => {
276
278
  channelUrl: (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) || '',
277
279
  onResultClick: message => {
278
280
  if (message.messageId === highlightedMessage) {
279
- setHighlightedMessage(null);
281
+ setHighlightedMessage === null || setHighlightedMessage === void 0 ? void 0 : setHighlightedMessage(null);
280
282
  setTimeout(() => {
281
- setHighlightedMessage(message.messageId);
283
+ setHighlightedMessage === null || setHighlightedMessage === void 0 ? void 0 : setHighlightedMessage(message.messageId);
282
284
  });
283
285
  } else {
284
- setStartingPoint(message.createdAt);
285
- setHighlightedMessage(message.messageId);
286
+ setStartingPoint === null || setStartingPoint === void 0 ? void 0 : setStartingPoint(message.createdAt);
287
+ setHighlightedMessage === null || setHighlightedMessage === void 0 ? void 0 : setHighlightedMessage(message.messageId);
286
288
  }
287
289
  },
288
290
  onCloseClick: () => {
@@ -304,7 +306,7 @@ const DesktopLayout = props => {
304
306
  setCurrentChannel(channel);
305
307
  }
306
308
  if ((message === null || message === void 0 ? void 0 : message.messageId) !== animatedMessageId) {
307
- setStartingPoint(message === null || message === void 0 ? void 0 : message.createdAt);
309
+ setStartingPoint === null || setStartingPoint === void 0 ? void 0 : setStartingPoint(message === null || message === void 0 ? void 0 : message.createdAt);
308
310
  }
309
311
  setTimeout(() => {
310
312
  setAnimatedMessageId(message === null || message === void 0 ? void 0 : message.messageId);
@@ -318,6 +320,7 @@ var PANELS = /*#__PURE__*/function (PANELS) {
318
320
  PANELS["CHANNEL"] = "CHANNEL";
319
321
  PANELS["CHANNEL_SETTINGS"] = "CHANNEL_SETTINGS";
320
322
  PANELS["MESSAGE_SEARCH"] = "MESSAGE_SEARCH";
323
+ PANELS["THREAD"] = "THREAD";
321
324
  return PANELS;
322
325
  }(PANELS || {});
323
326
  const MobileLayout = props => {
@@ -334,21 +337,24 @@ const MobileLayout = props => {
334
337
  highlightedMessage,
335
338
  setHighlightedMessage,
336
339
  startingPoint,
337
- setStartingPoint
340
+ setStartingPoint,
341
+ threadTargetMessage,
342
+ setThreadTargetMessage
338
343
  } = props;
339
- const [panel, setPanel] = React.useState(PANELS === null || PANELS === void 0 ? void 0 : PANELS.CHANNEL_LIST);
344
+ const [panel, setPanel] = React.useState(PANELS.CHANNEL_LIST);
345
+ const [animatedMessageId, setAnimatedMessageId] = React.useState(null);
340
346
  const store = useSendbirdStateContext();
341
347
  const sdk = store === null || store === void 0 ? void 0 : (_store$stores = store.stores) === null || _store$stores === void 0 ? void 0 : (_store$stores$sdkStor = _store$stores.sdkStore) === null || _store$stores$sdkStor === void 0 ? void 0 : _store$stores$sdkStor.sdk;
342
348
  const userId = store === null || store === void 0 ? void 0 : (_store$config = store.config) === null || _store$config === void 0 ? void 0 : _store$config.userId;
343
- const goToMessage = message => {
344
- setStartingPoint(message === null || message === void 0 ? void 0 : message.createdAt);
349
+ const goToMessage = (message, timeoutCb) => {
350
+ setStartingPoint === null || setStartingPoint === void 0 ? void 0 : setStartingPoint((message === null || message === void 0 ? void 0 : message.createdAt) || null);
345
351
  setTimeout(() => {
346
- setHighlightedMessage(message === null || message === void 0 ? void 0 : message.messageId);
347
- });
352
+ timeoutCb === null || timeoutCb === void 0 ? void 0 : timeoutCb((message === null || message === void 0 ? void 0 : message.messageId) || null);
353
+ }, 500);
348
354
  };
349
355
  React.useEffect(() => {
350
- if (panel !== (PANELS === null || PANELS === void 0 ? void 0 : PANELS.CHANNEL)) {
351
- goToMessage();
356
+ if (panel !== PANELS.CHANNEL) {
357
+ goToMessage(null, () => setAnimatedMessageId(null));
352
358
  }
353
359
  }, [panel]);
354
360
  React.useEffect(() => {
@@ -380,7 +386,7 @@ const MobileLayout = props => {
380
386
  sdk === null || sdk === void 0 ? void 0 : (_sdk$groupChannel3 = sdk.groupChannel) === null || _sdk$groupChannel3 === void 0 ? void 0 : (_sdk$groupChannel3$re = _sdk$groupChannel3.removeGroupChannelHandler) === null || _sdk$groupChannel3$re === void 0 ? void 0 : _sdk$groupChannel3$re.call(_sdk$groupChannel3, handlerId);
381
387
  };
382
388
  }, [sdk]);
383
- return /*#__PURE__*/React__default["default"].createElement("div", null, panel === (PANELS === null || PANELS === void 0 ? void 0 : PANELS.CHANNEL_LIST) && /*#__PURE__*/React__default["default"].createElement("div", {
389
+ return /*#__PURE__*/React__default["default"].createElement("div", null, panel === PANELS.CHANNEL_LIST && /*#__PURE__*/React__default["default"].createElement("div", {
384
390
  className: "sb_mobile__panelwrap"
385
391
  }, /*#__PURE__*/React__default["default"].createElement(ChannelList, {
386
392
  onProfileEditSuccess: onProfileEditSuccess,
@@ -392,7 +398,7 @@ const MobileLayout = props => {
392
398
  // this condition must be true for mobile
393
399
  ,
394
400
  disableAutoSelect: true
395
- })), panel === (PANELS === null || PANELS === void 0 ? void 0 : PANELS.CHANNEL) && /*#__PURE__*/React__default["default"].createElement("div", {
401
+ })), panel === PANELS.CHANNEL && /*#__PURE__*/React__default["default"].createElement("div", {
396
402
  className: "sb_mobile__panelwrap"
397
403
  }, /*#__PURE__*/React__default["default"].createElement(Channel, {
398
404
  replyType: replyType,
@@ -407,11 +413,31 @@ const MobileLayout = props => {
407
413
  showSearchIcon: showSearchIcon,
408
414
  isMessageGroupingEnabled: isMessageGroupingEnabled,
409
415
  startingPoint: startingPoint,
416
+ animatedMessage: animatedMessageId,
410
417
  highlightedMessage: highlightedMessage,
411
418
  onChatHeaderActionClick: () => {
412
419
  setPanel(PANELS.CHANNEL_SETTINGS);
420
+ },
421
+ onReplyInThread: _ref => {
422
+ let {
423
+ message
424
+ } = _ref;
425
+ if (replyType === 'THREAD') {
426
+ setPanel(PANELS.THREAD);
427
+ setThreadTargetMessage(message);
428
+ }
429
+ },
430
+ onQuoteMessageClick: _ref2 => {
431
+ let {
432
+ message
433
+ } = _ref2;
434
+ // thread message
435
+ if (replyType === 'THREAD') {
436
+ setThreadTargetMessage(message);
437
+ setPanel(PANELS.THREAD);
438
+ }
413
439
  }
414
- })), panel === (PANELS === null || PANELS === void 0 ? void 0 : PANELS.CHANNEL_SETTINGS) && /*#__PURE__*/React__default["default"].createElement("div", {
440
+ })), panel === PANELS.CHANNEL_SETTINGS && /*#__PURE__*/React__default["default"].createElement("div", {
415
441
  className: "sb_mobile__panelwrap"
416
442
  }, /*#__PURE__*/React__default["default"].createElement(ChannelSettings, {
417
443
  channelUrl: (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) || '',
@@ -421,7 +447,7 @@ const MobileLayout = props => {
421
447
  onLeaveChannel: () => {
422
448
  setPanel(PANELS.CHANNEL_LIST);
423
449
  }
424
- })), panel === (PANELS === null || PANELS === void 0 ? void 0 : PANELS.MESSAGE_SEARCH) && /*#__PURE__*/React__default["default"].createElement("div", {
450
+ })), panel === PANELS.MESSAGE_SEARCH && /*#__PURE__*/React__default["default"].createElement("div", {
425
451
  className: "sb_mobile__panelwrap"
426
452
  }, /*#__PURE__*/React__default["default"].createElement(MessageSearch, {
427
453
  channelUrl: (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) || '',
@@ -430,7 +456,28 @@ const MobileLayout = props => {
430
456
  },
431
457
  onResultClick: message => {
432
458
  setPanel(PANELS.CHANNEL);
433
- goToMessage(message);
459
+ goToMessage(message, messageId => {
460
+ setHighlightedMessage === null || setHighlightedMessage === void 0 ? void 0 : setHighlightedMessage(messageId);
461
+ });
462
+ }
463
+ })), panel === PANELS.THREAD && /*#__PURE__*/React__default["default"].createElement("div", {
464
+ className: "sb_mobile__panelwrap"
465
+ }, /*#__PURE__*/React__default["default"].createElement(Thread, {
466
+ channelUrl: (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) || '',
467
+ message: threadTargetMessage,
468
+ onHeaderActionClick: () => {
469
+ setPanel(PANELS.CHANNEL);
470
+ },
471
+ onMoveToParentMessage: _ref3 => {
472
+ let {
473
+ message,
474
+ channel
475
+ } = _ref3;
476
+ setCurrentChannel(channel);
477
+ goToMessage(message, messageId => {
478
+ setPanel(PANELS.CHANNEL);
479
+ setAnimatedMessageId(messageId);
480
+ });
434
481
  }
435
482
  })));
436
483
  };
@@ -468,7 +515,9 @@ const AppLayout = props => {
468
515
  highlightedMessage: highlightedMessage,
469
516
  setHighlightedMessage: setHighlightedMessage,
470
517
  startingPoint: startingPoint,
471
- setStartingPoint: setStartingPoint
518
+ setStartingPoint: setStartingPoint,
519
+ threadTargetMessage: threadTargetMessage,
520
+ setThreadTargetMessage: setThreadTargetMessage
472
521
  }) : /*#__PURE__*/React__default["default"].createElement(DesktopLayout, {
473
522
  isReactionEnabled: isReactionEnabled,
474
523
  replyType: replyType,
@@ -506,7 +555,7 @@ function App(props) {
506
555
  accessToken,
507
556
  customApiHost,
508
557
  customWebSocketHost,
509
- mediaQueryBreakPoint,
558
+ breakpoint,
510
559
  theme,
511
560
  userListQuery,
512
561
  nickname,
@@ -540,7 +589,7 @@ function App(props) {
540
589
  accessToken: accessToken,
541
590
  customApiHost: customApiHost,
542
591
  customWebSocketHost: customWebSocketHost,
543
- mediaQueryBreakPoint: mediaQueryBreakPoint,
592
+ breakpoint: breakpoint,
544
593
  theme: theme,
545
594
  nickname: nickname,
546
595
  profileUrl: profileUrl,
@@ -584,7 +633,7 @@ App.propTypes = {
584
633
  userListQuery: PropTypes__default["default"].func,
585
634
  nickname: PropTypes__default["default"].string,
586
635
  profileUrl: PropTypes__default["default"].string,
587
- mediaQueryBreakPoint: PropTypes__default["default"].string,
636
+ breakpoint: PropTypes__default["default"].string,
588
637
  allowProfileEdit: PropTypes__default["default"].bool,
589
638
  disableUserProfile: PropTypes__default["default"].bool,
590
639
  disableMarkAsDelivered: PropTypes__default["default"].bool,
@@ -625,7 +674,7 @@ App.defaultProps = {
625
674
  nickname: '',
626
675
  profileUrl: '',
627
676
  userListQuery: null,
628
- mediaQueryBreakPoint: null,
677
+ breakpoint: null,
629
678
  dateLocale: null,
630
679
  allowProfileEdit: false,
631
680
  onProfileEditSuccess: null,