@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
package/App.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import React__default, { useState, useEffect } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Sendbird from './SendbirdProvider.js';
4
- import { u as useMediaQueryContext } from './MediaQueryContext-97a21b7e.js';
4
+ import { u as useMediaQueryContext } from './MediaQueryContext-79c8ad08.js';
5
5
  import ChannelList from './ChannelList.js';
6
6
  import Channel from './Channel.js';
7
7
  import ChannelSettings from './ChannelSettings.js';
@@ -9,26 +9,30 @@ import MessageSearchPannel from './MessageSearch.js';
9
9
  import Thread from './Thread.js';
10
10
  import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
11
11
  import useSendbirdStateContext from './useSendbirdStateContext.js';
12
- import { u as uuidv4 } from './uuid-7a5e68ed.js';
13
- import './_rollupPluginBabelHelpers-b45d3824.js';
12
+ import { u as uuidv4 } from './uuid-6ca64623.js';
13
+ import { V as VOICE_RECORDER_DEFAULT_MAX, a as VOICE_RECORDER_DEFAULT_MIN } from './consts-d2d25dac.js';
14
+ import './_rollupPluginBabelHelpers-09618dc3.js';
14
15
  import './withSendbird.js';
15
16
  import '@sendbird/chat';
16
17
  import '@sendbird/chat/openChannel';
17
- import './actionTypes-c69daac1.js';
18
- import './index-425e5f17.js';
19
- import './tslib.es6-13412863.js';
18
+ import './actionTypes-0dd0c34b.js';
19
+ import './index-bbab31f0.js';
20
+ import './tslib.es6-fc4a2658.js';
20
21
  import './utils/message/getOutgoingMessageState.js';
21
22
  import 'css-vars-ponyfill';
22
- import './LocalizationContext-4c2faa9a.js';
23
- import './stringSet-c2443946.js';
24
- import './index-a53d78b6.js';
25
- import './ChannelListProvider-eb4708a3.js';
26
- import './topics-0ba43ee8.js';
27
- import './utils-87dce5dd.js';
28
- import './UserProfileContext-e5d90f15.js';
23
+ import './VoiceRecorder/context.js';
24
+ import './lame.all.js';
25
+ import './index-60d3992b.js';
26
+ import './LocalizationContext-539093a9.js';
27
+ import './stringSet-f9763488.js';
28
+ import './index-999fdb64.js';
29
+ import './ChannelListProvider-3c78429f.js';
30
+ import './topics-1ec669f0.js';
31
+ import './utils-c1d219fa.js';
32
+ import './UserProfileContext-bd8525b7.js';
29
33
  import './ChannelList/components/ChannelListUI.js';
30
34
  import './ChannelList/components/ChannelListHeader.js';
31
- import './index-e2994193.js';
35
+ import './index-4a977e7d.js';
32
36
  import './ui/Avatar.js';
33
37
  import './ui/ImageRenderer.js';
34
38
  import './ui/Icon.js';
@@ -36,12 +40,12 @@ import './ChannelList/components/AddChannel.js';
36
40
  import './ui/IconButton.js';
37
41
  import './CreateChannel.js';
38
42
  import './CreateChannel/components/CreateChannelUI.js';
39
- import './CreateChannelProvider-ed2e3cb4.js';
43
+ import './CreateChannelProvider-946fb371.js';
40
44
  import './sendbirdSelectors.js';
41
45
  import './CreateChannel/components/InviteUsers.js';
42
46
  import './ui/Modal.js';
43
47
  import 'react-dom';
44
- import './index-fd5a03a3.js';
48
+ import './index-b8e990b4.js';
45
49
  import './ui/Button.js';
46
50
  import './ui/UserListItem.js';
47
51
  import './ui/MutedAvatarOverlay.js';
@@ -52,43 +56,44 @@ import './ui/SortByRow.js';
52
56
  import './CreateChannel/components/SelectChannelType.js';
53
57
  import './ChannelList/components/ChannelPreview.js';
54
58
  import './ui/ChannelAvatar.js';
55
- import './utils-87d19647.js';
59
+ import './utils-2570c397.js';
56
60
  import './ui/Badge.js';
57
- import './index-aa4edbe2.js';
58
- import './index-8c38f9d0.js';
61
+ import './index-daccde5e.js';
62
+ import './index-620331eb.js';
59
63
  import './ui/Loader.js';
60
- import './index-6d541758.js';
61
- import './index-30726ee1.js';
64
+ import './index-ed1f765b.js';
65
+ import './index-4c6a2064.js';
62
66
  import './ui/MentionUserLabel.js';
63
67
  import './ui/TextButton.js';
64
- import './color-1b42e49d.js';
68
+ import './color-f2370c85.js';
65
69
  import './Channel/components/TypingIndicator.js';
66
- import './ChannelProvider-1e540c0e.js';
67
- import './compareIds-df760ae2.js';
68
- import './const-c269fd32.js';
70
+ import './ChannelProvider-1d70b8a0.js';
71
+ import './compareIds-a4557492.js';
72
+ import './const-593595f5.js';
69
73
  import '@sendbird/chat/message';
70
74
  import './ui/ReactionButton.js';
71
- import './useLongPress-fbe83e54.js';
75
+ import './useLongPress-6fc8312a.js';
72
76
  import './ChannelList/components/ChannelPreviewAction.js';
73
77
  import './EditUserProfile.js';
74
- import './index-6491c190.js';
78
+ import './index-4b51e7af.js';
75
79
  import './ui/Input.js';
76
- import './index-aecdd02c.js';
80
+ import './index-eefaf935.js';
77
81
  import './Channel/components/ChannelUI.js';
78
82
  import './ui/ConnectionStatus.js';
79
83
  import './Channel/components/ChannelHeader.js';
80
- import './utils-9c95a786.js';
84
+ import './utils-8c242c8c.js';
81
85
  import './Channel/components/MessageList.js';
82
86
  import './Channel/components/Message.js';
83
87
  import './Channel/components/SuggestedMentionList.js';
84
- import './const-11ae0dd9.js';
85
- import './ThreadProvider-a1413f01.js';
88
+ import './const-ce447fcf.js';
89
+ import './ThreadProvider-9f8652df.js';
86
90
  import './Thread/context/types.js';
87
91
  import './ui/DateSeparator.js';
88
92
  import './ui/MessageInput.js';
89
93
  import 'react-dom/server';
90
94
  import './ui/MessageContent.js';
91
95
  import './ui/MessageItemMenu.js';
96
+ import './types-e86f9fca.js';
92
97
  import './ui/MessageItemReactionMenu.js';
93
98
  import './ui/EmojiReactions.js';
94
99
  import './ui/Tooltip.js';
@@ -106,12 +111,19 @@ import './ui/UnknownMessageItemBody.js';
106
111
  import './ui/QuoteMessage.js';
107
112
  import './ui/BottomSheet.js';
108
113
  import './ui/ThreadReplies.js';
114
+ import './ui/VoiceMessageItemBody.js';
115
+ import './ui/ProgressBar.js';
116
+ import './VoicePlayer/useVoicePlayer.js';
117
+ import './ui/PlaybackTime.js';
109
118
  import './Channel/components/FileViewer.js';
110
119
  import './Channel/components/RemoveMessageModal.js';
111
120
  import './Channel/components/FrozenNotification.js';
112
121
  import './Channel/components/UnreadCount.js';
113
122
  import './Channel/components/MessageInput.js';
114
123
  import './ui/QuoteMessageInput.js';
124
+ import './VoiceMessageInputWrapper-b149ff89.js';
125
+ import './VoiceRecorder/useVoiceRecorder.js';
126
+ import './index-7b5efb26.js';
115
127
  import './ChannelSettings/components/ChannelSettingsUI.js';
116
128
  import './ChannelSettings/context.js';
117
129
  import './ChannelSettings/components/ChannelProfile.js';
@@ -119,9 +131,9 @@ import './ChannelSettings/components/EditDetailsModal.js';
119
131
  import './ChannelSettings/components/ModerationPanel.js';
120
132
  import './ui/Accordion.js';
121
133
  import './ui/AccordionGroup.js';
122
- import './context-2c35a852.js';
134
+ import './context-95839b09.js';
123
135
  import './ChannelSettings/components/UserListItem.js';
124
- import './MemberList-6483a7db.js';
136
+ import './MemberList-1350e670.js';
125
137
  import './ChannelSettings/components/LeaveChannel.js';
126
138
  import './ChannelSettings/components/UserPanel.js';
127
139
  import './MessageSearch/components/MessageSearchUI.js';
@@ -130,7 +142,7 @@ import './ui/MessageSearchItem.js';
130
142
  import './ui/MessageSearchFileItem.js';
131
143
  import './Thread/components/ThreadUI.js';
132
144
  import './Thread/components/ParentMessageInfo.js';
133
- import './RemoveMessageModal-0baf3553.js';
145
+ import './RemoveMessageModal-cd536405.js';
134
146
  import './Thread/components/ParentMessageInfoItem.js';
135
147
  import './ui/FileViewer.js';
136
148
  import './Thread/components/ThreadHeader.js';
@@ -512,6 +524,8 @@ function App(props) {
512
524
  config = {},
513
525
  isReactionEnabled,
514
526
  isMentionEnabled,
527
+ isVoiceMessageEnabled,
528
+ voiceRecord,
515
529
  replyType,
516
530
  isMessageGroupingEnabled,
517
531
  colorSet,
@@ -549,6 +563,8 @@ function App(props) {
549
563
  imageCompression: imageCompression,
550
564
  isReactionEnabled: isReactionEnabled,
551
565
  isMentionEnabled: isMentionEnabled,
566
+ isVoiceMessageEnabled: isVoiceMessageEnabled,
567
+ voiceRecord: voiceRecord,
552
568
  onUserProfileMessage: channel => {
553
569
  setCurrentChannel(channel);
554
570
  },
@@ -602,6 +618,11 @@ App.propTypes = {
602
618
  }),
603
619
  disableAutoSelect: PropTypes.bool,
604
620
  isMentionEnabled: PropTypes.bool,
621
+ isVoiceMessageEnabled: PropTypes.bool,
622
+ voiceRecord: PropTypes.shape({
623
+ maxRecordingTime: PropTypes.number,
624
+ minRecordingTime: PropTypes.number
625
+ }),
605
626
  isTypingIndicatorEnabledOnChannelList: PropTypes.bool,
606
627
  isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool
607
628
  };
@@ -624,6 +645,11 @@ App.defaultProps = {
624
645
  config: {},
625
646
  isReactionEnabled: true,
626
647
  isMentionEnabled: false,
648
+ isVoiceMessageEnabled: true,
649
+ voiceRecord: {
650
+ maxRecordingTime: VOICE_RECORDER_DEFAULT_MAX,
651
+ minRecordingTime: VOICE_RECORDER_DEFAULT_MIN
652
+ },
627
653
  replyType: 'NONE',
628
654
  isMessageGroupingEnabled: true,
629
655
  stringSet: null,
package/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sources":["../src/smart-components/App/DesktopLayout.tsx","../src/smart-components/App/MobileLayout.tsx","../src/smart-components/App/AppLayout.tsx","../src/smart-components/App/index.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport type { DesktopLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\nimport Thread from '../Thread';\nimport { BaseMessage, UserMessage } from '@sendbird/chat/message';\n\nexport const DesktopLayout: React.FC<DesktopLayoutProps> = (\n props: DesktopLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n showSettings,\n setShowSettings,\n showSearch,\n setShowSearch,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n showThread,\n setShowThread,\n threadTargetMessage,\n setThreadTargetMessage,\n } = props;\n const [animatedMessageId, setAnimatedMessageId] = useState(null);\n return (\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel) {\n setCurrentChannel(channel);\n } else {\n setCurrentChannel(null);\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannel?.url || ''}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowThread(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowThread(false);\n setShowSearch(!showSearch);\n }}\n onReplyInThread={({ message }) => { // parent message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage({\n parentMessage: message as BaseMessage,\n parentMessageId: message?.messageId,\n } as UserMessage);\n setShowThread(true);\n }\n }}\n onQuoteMessageClick={({ message }) => { // thread message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage(message);\n setShowThread(true);\n }\n }}\n onMessageAnimated={() => {\n setAnimatedMessageId(null);\n }}\n onMessageHighlighted={() => {\n setHighlightedMessage(null);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n animatedMessage={animatedMessageId}\n highlightedMessage={highlightedMessage}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannel?.url || ''}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannel?.url || ''}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n {showThread && (\n <Thread\n className=\"sendbird-app__thread\"\n channelUrl={currentChannel?.url || ''}\n message={threadTargetMessage}\n onHeaderActionClick={() => {\n setShowThread(false);\n }}\n onMoveToParentMessage={({ message, channel }) => {\n if (channel?.url !== currentChannel?.url) {\n setCurrentChannel(channel);\n }\n if (message?.messageId !== animatedMessageId) {\n setStartingPoint(message?.createdAt);\n }\n setTimeout(() => {\n setAnimatedMessageId(message?.messageId);\n }, 500);\n }}\n />\n )}\n </div>\n )\n};\n","import './mobile.scss';\n\nimport React, { useState, useEffect } from 'react';\nimport type { BaseMessage } from '@sendbird/chat/message';\nimport type { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { GroupChannelHandler } from '@sendbird/chat/groupChannel';\n\nimport type { MobileLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearch from '../MessageSearch';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport uuidv4 from '../../utils/uuid';\n\nenum PANELS {\n CHANNEL_LIST = 'CHANNEL_LIST',\n CHANNEL = 'CHANNEL',\n CHANNEL_SETTINGS = 'CHANNEL_SETTINGS',\n MESSAGE_SEARCH = 'MESSAGE_SEARCH',\n}\n\nexport const MobileLayout: React.FC<MobileLayoutProps> = (\n props: MobileLayoutProps,\n) => {\n const {\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n isReactionEnabled,\n showSearchIcon,\n onProfileEditSuccess,\n currentChannel,\n setCurrentChannel,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n } = props;\n const [panel, setPanel] = useState(PANELS?.CHANNEL_LIST);\n\n const store = useSendbirdStateContext();\n const sdk = store?.stores?.sdkStore?.sdk as SendbirdGroupChat;\n const userId = store?.config?.userId;\n\n const goToMessage = (message?: BaseMessage | null) => {\n setStartingPoint(message?.createdAt);\n setTimeout(() => {\n setHighlightedMessage(message?.messageId);\n });\n };\n\n useEffect(() => {\n if (panel !== PANELS?.CHANNEL) {\n goToMessage();\n }\n }, [panel]);\n\n useEffect(() => {\n const handlerId = uuidv4();\n if (sdk?.groupChannel?.addGroupChannelHandler) {\n const handler = new GroupChannelHandler({\n onUserBanned: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onChannelDeleted: (channelUrl) => {\n if (channelUrl === currentChannel?.url) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onUserLeft: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n });\n sdk?.groupChannel?.addGroupChannelHandler(handlerId, handler)\n }\n return () => {\n sdk?.groupChannel?.removeGroupChannelHandler?.(handlerId);\n }\n }, [sdk]);\n\n return (\n <div>\n {\n panel === PANELS?.CHANNEL_LIST && (\n <div className='sb_mobile__panelwrap'>\n <ChannelList\n onProfileEditSuccess={onProfileEditSuccess}\n onChannelSelect={(channel) => {\n setCurrentChannel(channel);\n setPanel(PANELS.CHANNEL);\n }}\n allowProfileEdit={allowProfileEdit}\n // this condition must be true for mobile\n disableAutoSelect\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL && (\n <div className='sb_mobile__panelwrap'>\n <Channel\n replyType={replyType}\n channelUrl={currentChannel?.url}\n onSearchClick={() => {\n setPanel(PANELS.MESSAGE_SEARCH);\n }}\n onBackClick={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n onChatHeaderActionClick={() => {\n setPanel(PANELS.CHANNEL_SETTINGS);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL_SETTINGS && (\n <div className='sb_mobile__panelwrap'>\n <ChannelSettings\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onLeaveChannel={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.MESSAGE_SEARCH && (\n <div className='sb_mobile__panelwrap'>\n <MessageSearch\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onResultClick={(message) => {\n setPanel(PANELS.CHANNEL);\n goToMessage(message);\n }}\n />\n </div>\n )\n }\n </div>\n );\n};\n","import React, { useState } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport type { AppLayoutProps } from './types';\n\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\nimport { DesktopLayout } from './DesktopLayout';\nimport { MobileLayout } from './MobileLayout';\n\nexport const AppLayout: React.FC<AppLayoutProps> = (\n props: AppLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n } = props;\n const [showThread, setShowThread] = useState(false);\n const [threadTargetMessage, setThreadTargetMessage] = useState<UserMessage | FileMessage>(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState<number>(null);\n const [startingPoint, setStartingPoint] = useState<number>(null);\n const { isMobile } = useMediaQueryContext();\n return (\n <>\n {\n isMobile\n ? (\n <MobileLayout\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n : (\n <DesktopLayout\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n showThread={showThread}\n setShowThread={setShowThread}\n threadTargetMessage={threadTargetMessage}\n setThreadTargetMessage={setThreadTargetMessage}\n showSettings={showSettings}\n setShowSettings={setShowSettings}\n showSearch={showSearch}\n setShowSearch={setShowSearch}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n }\n </>\n )\n}\n","/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport { AppLayout } from './AppLayout';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n customApiHost,\n customWebSocketHost,\n mediaQueryBreakPoint,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n isReactionEnabled,\n isMentionEnabled,\n replyType,\n isMessageGroupingEnabled,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n } = props;\n const [currentChannel, setCurrentChannel] = useState(null);\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n customApiHost={customApiHost}\n customWebSocketHost={customWebSocketHost}\n mediaQueryBreakPoint={mediaQueryBreakPoint}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n disableMarkAsDelivered={disableMarkAsDelivered}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n isReactionEnabled={isReactionEnabled}\n isMentionEnabled={isMentionEnabled}\n onUserProfileMessage={(channel) => {\n setCurrentChannel(channel);\n }}\n isTypingIndicatorEnabledOnChannelList={isTypingIndicatorEnabledOnChannelList}\n isMessageReceiptStatusEnabledOnChannelList={isMessageReceiptStatusEnabledOnChannelList}\n replyType={replyType}\n >\n <AppLayout\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n />\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n customApiHost: PropTypes.string,\n customWebSocketHost: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n mediaQueryBreakPoint: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n disableMarkAsDelivered: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n isREMUnitEnabled: PropTypes.bool,\n }),\n isReactionEnabled: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n isMessageGroupingEnabled: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n isTypingIndicatorEnabledOnChannelList: PropTypes.bool,\n isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n customApiHost: '',\n customWebSocketHost: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n mediaQueryBreakPoint: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n disableMarkAsDelivered: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n isReactionEnabled: true,\n isMentionEnabled: false,\n replyType: 'NONE',\n isMessageGroupingEnabled: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n isTypingIndicatorEnabledOnChannelList: false,\n isMessageReceiptStatusEnabledOnChannelList: false,\n};\n"],"names":["DesktopLayout","props","isReactionEnabled","replyType","isMessageGroupingEnabled","allowProfileEdit","showSearchIcon","onProfileEditSuccess","disableAutoSelect","currentChannel","setCurrentChannel","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","showThread","setShowThread","threadTargetMessage","setThreadTargetMessage","_a","useState","animatedMessageId","setAnimatedMessageId","React","channel","concat","url","message","parentMessage","parentMessageId","messageId","setTimeout","createdAt","PANELS","MobileLayout","_d","CHANNEL_LIST","panel","setPanel","store","useSendbirdStateContext","sdk","_b","stores","sdkStore","userId","_c","config","goToMessage","useEffect","CHANNEL","handlerId","uuidv4","groupChannel","addGroupChannelHandler","handler","GroupChannelHandler","onUserBanned","user","onChannelDeleted","channelUrl","onUserLeft","removeGroupChannelHandler","call","MESSAGE_SEARCH","CHANNEL_SETTINGS","MessageSearch","AppLayout","_e","_f","isMobile","useMediaQueryContext","App","appId","accessToken","customApiHost","customWebSocketHost","mediaQueryBreakPoint","theme","userListQuery","nickname","profileUrl","dateLocale","isMentionEnabled","colorSet","stringSet","disableUserProfile","disableMarkAsDelivered","renderUserProfile","imageCompression","isTypingIndicatorEnabledOnChannelList","isMessageReceiptStatusEnabledOnChannelList","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","isREMUnitEnabled","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sources":["../src/smart-components/App/DesktopLayout.tsx","../src/smart-components/App/MobileLayout.tsx","../src/smart-components/App/AppLayout.tsx","../src/smart-components/App/index.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport type { DesktopLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\nimport Thread from '../Thread';\nimport { BaseMessage, UserMessage } from '@sendbird/chat/message';\n\nexport const DesktopLayout: React.FC<DesktopLayoutProps> = (\n props: DesktopLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n showSettings,\n setShowSettings,\n showSearch,\n setShowSearch,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n showThread,\n setShowThread,\n threadTargetMessage,\n setThreadTargetMessage,\n } = props;\n const [animatedMessageId, setAnimatedMessageId] = useState(null);\n return (\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel) {\n setCurrentChannel(channel);\n } else {\n setCurrentChannel(null);\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannel?.url || ''}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowThread(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowThread(false);\n setShowSearch(!showSearch);\n }}\n onReplyInThread={({ message }) => { // parent message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage({\n parentMessage: message as BaseMessage,\n parentMessageId: message?.messageId,\n } as UserMessage);\n setShowThread(true);\n }\n }}\n onQuoteMessageClick={({ message }) => { // thread message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage(message);\n setShowThread(true);\n }\n }}\n onMessageAnimated={() => {\n setAnimatedMessageId(null);\n }}\n onMessageHighlighted={() => {\n setHighlightedMessage(null);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n animatedMessage={animatedMessageId}\n highlightedMessage={highlightedMessage}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannel?.url || ''}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannel?.url || ''}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n {showThread && (\n <Thread\n className=\"sendbird-app__thread\"\n channelUrl={currentChannel?.url || ''}\n message={threadTargetMessage}\n onHeaderActionClick={() => {\n setShowThread(false);\n }}\n onMoveToParentMessage={({ message, channel }) => {\n if (channel?.url !== currentChannel?.url) {\n setCurrentChannel(channel);\n }\n if (message?.messageId !== animatedMessageId) {\n setStartingPoint(message?.createdAt);\n }\n setTimeout(() => {\n setAnimatedMessageId(message?.messageId);\n }, 500);\n }}\n />\n )}\n </div>\n )\n};\n","import './mobile.scss';\n\nimport React, { useState, useEffect } from 'react';\nimport type { BaseMessage } from '@sendbird/chat/message';\nimport type { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { GroupChannelHandler } from '@sendbird/chat/groupChannel';\n\nimport type { MobileLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearch from '../MessageSearch';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport uuidv4 from '../../utils/uuid';\n\nenum PANELS {\n CHANNEL_LIST = 'CHANNEL_LIST',\n CHANNEL = 'CHANNEL',\n CHANNEL_SETTINGS = 'CHANNEL_SETTINGS',\n MESSAGE_SEARCH = 'MESSAGE_SEARCH',\n}\n\nexport const MobileLayout: React.FC<MobileLayoutProps> = (\n props: MobileLayoutProps,\n) => {\n const {\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n isReactionEnabled,\n showSearchIcon,\n onProfileEditSuccess,\n currentChannel,\n setCurrentChannel,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n } = props;\n const [panel, setPanel] = useState(PANELS?.CHANNEL_LIST);\n\n const store = useSendbirdStateContext();\n const sdk = store?.stores?.sdkStore?.sdk as SendbirdGroupChat;\n const userId = store?.config?.userId;\n\n const goToMessage = (message?: BaseMessage | null) => {\n setStartingPoint(message?.createdAt);\n setTimeout(() => {\n setHighlightedMessage(message?.messageId);\n });\n };\n\n useEffect(() => {\n if (panel !== PANELS?.CHANNEL) {\n goToMessage();\n }\n }, [panel]);\n\n useEffect(() => {\n const handlerId = uuidv4();\n if (sdk?.groupChannel?.addGroupChannelHandler) {\n const handler = new GroupChannelHandler({\n onUserBanned: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onChannelDeleted: (channelUrl) => {\n if (channelUrl === currentChannel?.url) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onUserLeft: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n });\n sdk?.groupChannel?.addGroupChannelHandler(handlerId, handler)\n }\n return () => {\n sdk?.groupChannel?.removeGroupChannelHandler?.(handlerId);\n }\n }, [sdk]);\n\n return (\n <div>\n {\n panel === PANELS?.CHANNEL_LIST && (\n <div className='sb_mobile__panelwrap'>\n <ChannelList\n onProfileEditSuccess={onProfileEditSuccess}\n onChannelSelect={(channel) => {\n setCurrentChannel(channel);\n setPanel(PANELS.CHANNEL);\n }}\n allowProfileEdit={allowProfileEdit}\n // this condition must be true for mobile\n disableAutoSelect\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL && (\n <div className='sb_mobile__panelwrap'>\n <Channel\n replyType={replyType}\n channelUrl={currentChannel?.url}\n onSearchClick={() => {\n setPanel(PANELS.MESSAGE_SEARCH);\n }}\n onBackClick={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n onChatHeaderActionClick={() => {\n setPanel(PANELS.CHANNEL_SETTINGS);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL_SETTINGS && (\n <div className='sb_mobile__panelwrap'>\n <ChannelSettings\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onLeaveChannel={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.MESSAGE_SEARCH && (\n <div className='sb_mobile__panelwrap'>\n <MessageSearch\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onResultClick={(message) => {\n setPanel(PANELS.CHANNEL);\n goToMessage(message);\n }}\n />\n </div>\n )\n }\n </div>\n );\n};\n","import React, { useState } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport type { AppLayoutProps } from './types';\n\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\nimport { DesktopLayout } from './DesktopLayout';\nimport { MobileLayout } from './MobileLayout';\n\nexport const AppLayout: React.FC<AppLayoutProps> = (\n props: AppLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n } = props;\n const [showThread, setShowThread] = useState(false);\n const [threadTargetMessage, setThreadTargetMessage] = useState<UserMessage | FileMessage>(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState<number>(null);\n const [startingPoint, setStartingPoint] = useState<number>(null);\n const { isMobile } = useMediaQueryContext();\n return (\n <>\n {\n isMobile\n ? (\n <MobileLayout\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n : (\n <DesktopLayout\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n showThread={showThread}\n setShowThread={setShowThread}\n threadTargetMessage={threadTargetMessage}\n setThreadTargetMessage={setThreadTargetMessage}\n showSettings={showSettings}\n setShowSettings={setShowSettings}\n showSearch={showSearch}\n setShowSearch={setShowSearch}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n }\n </>\n )\n}\n","/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport { AppLayout } from './AppLayout';\n\nimport './index.scss';\nimport { VOICE_RECORDER_DEFAULT_MAX, VOICE_RECORDER_DEFAULT_MIN } from '../../utils/consts';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n customApiHost,\n customWebSocketHost,\n mediaQueryBreakPoint,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n isReactionEnabled,\n isMentionEnabled,\n isVoiceMessageEnabled,\n voiceRecord,\n replyType,\n isMessageGroupingEnabled,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n } = props;\n const [currentChannel, setCurrentChannel] = useState(null);\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n customApiHost={customApiHost}\n customWebSocketHost={customWebSocketHost}\n mediaQueryBreakPoint={mediaQueryBreakPoint}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n disableMarkAsDelivered={disableMarkAsDelivered}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n isReactionEnabled={isReactionEnabled}\n isMentionEnabled={isMentionEnabled}\n isVoiceMessageEnabled={isVoiceMessageEnabled}\n voiceRecord={voiceRecord}\n onUserProfileMessage={(channel) => {\n setCurrentChannel(channel);\n }}\n isTypingIndicatorEnabledOnChannelList={isTypingIndicatorEnabledOnChannelList}\n isMessageReceiptStatusEnabledOnChannelList={isMessageReceiptStatusEnabledOnChannelList}\n replyType={replyType}\n >\n <AppLayout\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n />\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n customApiHost: PropTypes.string,\n customWebSocketHost: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n mediaQueryBreakPoint: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n disableMarkAsDelivered: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n isREMUnitEnabled: PropTypes.bool,\n }),\n isReactionEnabled: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n isMessageGroupingEnabled: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n isVoiceMessageEnabled: PropTypes.bool,\n voiceRecord: PropTypes.shape({\n maxRecordingTime: PropTypes.number,\n minRecordingTime: PropTypes.number,\n }),\n isTypingIndicatorEnabledOnChannelList: PropTypes.bool,\n isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n customApiHost: '',\n customWebSocketHost: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n mediaQueryBreakPoint: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n disableMarkAsDelivered: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n isReactionEnabled: true,\n isMentionEnabled: false,\n isVoiceMessageEnabled: true,\n voiceRecord: {\n maxRecordingTime: VOICE_RECORDER_DEFAULT_MAX,\n minRecordingTime: VOICE_RECORDER_DEFAULT_MIN,\n },\n replyType: 'NONE',\n isMessageGroupingEnabled: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n isTypingIndicatorEnabledOnChannelList: false,\n isMessageReceiptStatusEnabledOnChannelList: false,\n};\n"],"names":["DesktopLayout","props","isReactionEnabled","replyType","isMessageGroupingEnabled","allowProfileEdit","showSearchIcon","onProfileEditSuccess","disableAutoSelect","currentChannel","setCurrentChannel","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","showThread","setShowThread","threadTargetMessage","setThreadTargetMessage","_a","useState","animatedMessageId","setAnimatedMessageId","React","channel","concat","url","message","parentMessage","parentMessageId","messageId","setTimeout","createdAt","PANELS","MobileLayout","_d","CHANNEL_LIST","panel","setPanel","store","useSendbirdStateContext","sdk","_b","stores","sdkStore","userId","_c","config","goToMessage","useEffect","CHANNEL","handlerId","uuidv4","groupChannel","addGroupChannelHandler","handler","GroupChannelHandler","onUserBanned","user","onChannelDeleted","channelUrl","onUserLeft","removeGroupChannelHandler","call","MESSAGE_SEARCH","CHANNEL_SETTINGS","MessageSearch","AppLayout","_e","_f","isMobile","useMediaQueryContext","App","appId","accessToken","customApiHost","customWebSocketHost","mediaQueryBreakPoint","theme","userListQuery","nickname","profileUrl","dateLocale","isMentionEnabled","isVoiceMessageEnabled","voiceRecord","colorSet","stringSet","disableUserProfile","disableMarkAsDelivered","renderUserProfile","imageCompression","isTypingIndicatorEnabledOnChannelList","isMessageReceiptStatusEnabledOnChannelList","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","isREMUnitEnabled","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","maxRecordingTime","minRecordingTime","defaultProps","VOICE_RECORDER_DEFAULT_MAX","VOICE_RECORDER_DEFAULT_MIN"],"mappings":"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"}
package/CHANGELOG.md CHANGED
@@ -1,5 +1,155 @@
1
1
  # Changelog - v3
2
2
 
3
+ ## [v3.4.0] (Mar 3 2023)
4
+
5
+ ### Voice Message
6
+ Voice message is a new type of message and feature that you can use in group channel. You can record your voice on the message input and send it to the channel. Also the messages will be displayed as a new design of the voice message. You are able to use this feature from this version.
7
+
8
+ #### How to turn on/off
9
+ * You can turn this feature on/off using the props `isVoiceMessageEnabled` on the <App /> and <SendbirdProvider /> components. Here is an example.
10
+ ```javascript
11
+ import App from '@sendbird/uikit-react/App'
12
+ import SendbirdProvider from '@sendbird/uikit-react/SendbirdProvider'
13
+ import { useEffect } from 'react'
14
+
15
+ const QuickStart = () => (<App isVoiceMessageEnabled />)
16
+ const CustomApp = () => {
17
+ const [useVoiceMessage, setUseVoiceMessage] = useEffect(true)
18
+ return (
19
+ <SendbirdProvider
20
+ isVoiceMessageEnabled={useVoiceMessage}
21
+ >
22
+ {/* Implement your custom app here */}
23
+ </SendbirdProvider>
24
+ )
25
+ }
26
+ ```
27
+
28
+ #### How to customize the voice message in Channel and Thread?
29
+ You can identify the voice message to check if `message.type` includes `sbu_type=voice`. But you can use `isVoiceMessage` util function to do that.
30
+ ```javascript
31
+ import Channel from '@sendbird/uikit-react/Channel'
32
+ import isVoiceMessage from '@sendbird/uikit-react/utils/message/isVoiceMessage'
33
+
34
+ const CustomChannel = () => {
35
+ return (
36
+ <Channel
37
+ renderMessage={({ message }) => {
38
+ if (isVoiceMessage(message)) {
39
+ // Return your custom voice message item component
40
+ }
41
+ return null
42
+ }}
43
+ />
44
+ )
45
+ }
46
+ ```
47
+
48
+ #### Limitation & Next step
49
+ * For now, it's not able to customize the inner components of VoiceMessageInput. We are going to provide an interface to customize it in the future. Until that time, you can replace the VoiceMessageInput component using the `renderVoiceMessageIcon` props of MessageInput component.
50
+
51
+ #### What has been changed?
52
+ * Add props `isVoiceMessageEnabled` and `voiceRecord` props to the App, `SendbirdProvider`, and `MessageInput` components, to turn on/off the voice message recording feature
53
+ ```javascript
54
+ import SendbirdProvider from '@sendbird/uikit-react/SendbirdProvider'
55
+ const CustomApp = () => {
56
+ return (
57
+ <SendbirdProvider
58
+ isVoiceMessageEnabled
59
+ voiceRecord={{
60
+ maxRecordingTime: 60000,
61
+ minRecordingTime: 1000,
62
+ }}
63
+ >
64
+ {/* implement custom application */}
65
+ </SendbirdProvider>
66
+ )
67
+ }
68
+ ```
69
+ * Add props `onVoiceMessageIconClick` to the `MessageInput` component
70
+ * Add props `onBeforeSendVoiceMessage` to the `Channel` component
71
+ * Fetch message list including `MetaArray` in the `Channel` and `Thread` modules
72
+ * Provide new IconType `AudioOnLined` & new IconColor `Primary2` and `OnBackground4`
73
+ * Provide new string sets
74
+ ```javascript
75
+ import SendbirdProvider from '@sendbird/uikit-react/SendbirdProvider'
76
+ const CustomApp = () => {
77
+ return (
78
+ <SendbirdProvider
79
+ stringSet={{
80
+ BUTTON__OK: 'OK',
81
+ VOICE_MESSAGE: 'Voice Message',
82
+ MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_MUTED: 'You\'re muted by the operator.',
83
+ MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_FROZEN: 'Channel is frozen.',
84
+ }}
85
+ >
86
+ {/* implement custom application */}
87
+ </SendbirdProvider>
88
+ )
89
+ }
90
+ ```
91
+ * `BUTTON__OK`: 'OK' → Used on the submit button of pop up modal
92
+ * `MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_MUTED`: 'You\'re muted by the operator.' → Used in an alert pop-up modal
93
+ * `MODAL__VOICE_MESSAGE_INPUT_DISABLED__TITLE_FROZEN`: 'Channel is frozen.' → Used in an alert pop-up modal
94
+ * `VOICE_MESSAGE`: 'Voice Message' → Used in ChannelPreviewItem, QuoteMessage, and MessageSearch to appear that the message type is the voice## External Contributions
95
+
96
+ #### What has been added?
97
+ * Install `lamejs` to convert the audio file to mp3 (iOS support)
98
+ * UI components
99
+ ```javascript
100
+ import PlaybackTime from "@sendbird/uikit-react/ui/PlaybackTime"
101
+ import ProgressBar from "@sendbird/uikit-react/ui/ProgressBar"
102
+ import VoiceMessageInput from "@sendbird/uikit-react/ui/VoiceMessageInput"
103
+ import VoiceMessageItemBody from "@sendbird/uikit-react/ui/VoiceMessageItemBody"
104
+ ```
105
+ * PlaybackTime: Display the current time in 00:00 format with the received millisecond value
106
+ * ProgressBar: Display the current progress status with the received maxSize and currentSize of millisecond unit value
107
+ * VoiceMessageInput: UI component for recording and playing a voice message
108
+ * VoiceMessageItemBody: UI component for rendering a voice message also able to play voice message
109
+ * VoiceRecorder
110
+ ```javascript
111
+ import { VoiceRecorderProvider, useVoiceRecorderContext } from '@sendbird/uikit-react/VoiceRecorder/context'
112
+ import useVoiceRecorder from '@sendbird/uikit-react/VoiceRecorder/useVoiceRecorder'
113
+ ```
114
+ * VoiceRecorderProvider: A react context provider component providing `start`, and `stop` functions
115
+ * useVoiceRecorderContext: A react useContext hook of VoiceRecorderProvider
116
+ * useVoiceRecorder: A react hook that provides advanced context, `recordingLimit`, `recordingTime`, `recordingFile`, and `recordingStatus`. Recommend using this hook in the customized components.
117
+ * VoicePlayer
118
+ ```javascript
119
+ import { VoicePlayerProvider, useVoicePlayerContext } from '@sendbird/uikit-react/VoicePlayer/context'
120
+ import useVoicePlayer from '@sendbird/uikit-react/VoicePlayer/useVoicePlayer'
121
+ ```
122
+ * VoicePlayerProvider: A react context provider component providing `play`, and `pause` functions
123
+ * useVoicePlayerContext: A react useContext hook of VoicePlayerProvider
124
+ * useVoicePlayer: A react hook that provides advanced context, `playbackTime`, `duration`, and `playingStatus`. Recommend using this hook in the customized components.
125
+ * utils/isVoiceMessage: A function that you can check if the given message is a voice message
126
+ ```javascript
127
+ import isVoiceMessage from '@sendbird/uikit-react/utils/message/isVoiceMessage'
128
+ const isVoiceMsg: boolean = isVoiceMessage(message);
129
+ ```
130
+
131
+ Features:
132
+ * Add props `renderFileUploadIcon`, `renderVoiceMessageIcon`, and `renderSendMessageIcon` into the `Channel`, `ChannelUI`, and `MessageInput` component
133
+ ```javascript
134
+ interface MessageInputProps {
135
+ renderFileUploadIcon?: () => React.ReactElement;
136
+ renderVoiceMessageIcon?: () => React.ReactElement;
137
+ renderSendMessageIcon?: () => React.ReactElement;
138
+ }
139
+ ```
140
+
141
+ Fixes:
142
+ * Use ApplicationUserListQuery on ChannelSettings component
143
+ * Fix some visual issues on the normal User Panel of ChannelSettings
144
+ * Indentify faulty images in OG message
145
+ * Add classname: sendbird-og-message-item-body__og-thumbnail__empty to identify faulty images in OG message
146
+ Clients can use CSS to target this class~
147
+ ```css
148
+ .sendbird-og-message-item-body__og-thumbnail__empty {
149
+ display: none;
150
+ }
151
+ ```
152
+
3
153
  ## [v3.3.7] (Feb 24 2023)
4
154
 
5
155
  Features:
@@ -1,37 +1,38 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { g as getChannelTitle } from '../../utils-9c95a786.js';
3
- import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-e2994193.js';
2
+ import { g as getChannelTitle } from '../../utils-8c242c8c.js';
3
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-4a977e7d.js';
4
4
  import Icon, { IconColors, IconTypes } from '../../ui/Icon.js';
5
5
  import IconButton from '../../ui/IconButton.js';
6
6
  import ChannelAvatar from '../../ui/ChannelAvatar.js';
7
- import { a as LocalizationContext } from '../../LocalizationContext-4c2faa9a.js';
7
+ import { a as LocalizationContext } from '../../LocalizationContext-539093a9.js';
8
8
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
9
- import { u as useChannelContext } from '../../ChannelProvider-1e540c0e.js';
10
- import { u as useMediaQueryContext } from '../../MediaQueryContext-97a21b7e.js';
11
- import { n as noop } from '../../utils-87dce5dd.js';
9
+ import { u as useChannelContext } from '../../ChannelProvider-1d70b8a0.js';
10
+ import { u as useMediaQueryContext } from '../../MediaQueryContext-79c8ad08.js';
11
+ import { n as noop } from '../../utils-c1d219fa.js';
12
12
  import 'prop-types';
13
- import '../../stringSet-c2443946.js';
14
- import '../../tslib.es6-13412863.js';
13
+ import '../../stringSet-f9763488.js';
14
+ import '../../tslib.es6-fc4a2658.js';
15
15
  import '../../ui/Avatar.js';
16
16
  import '../../ui/ImageRenderer.js';
17
- import '../../uuid-7a5e68ed.js';
18
- import '../../utils-87d19647.js';
19
- import '../../index-a53d78b6.js';
17
+ import '../../uuid-6ca64623.js';
18
+ import '../../utils-2570c397.js';
19
+ import '../../index-999fdb64.js';
20
20
  import '../../withSendbird.js';
21
- import '../../_rollupPluginBabelHelpers-b45d3824.js';
22
- import '../../UserProfileContext-e5d90f15.js';
23
- import '../../index-8c38f9d0.js';
24
- import '../../topics-0ba43ee8.js';
25
- import '../../index-425e5f17.js';
21
+ import '../../_rollupPluginBabelHelpers-09618dc3.js';
22
+ import '../../UserProfileContext-bd8525b7.js';
23
+ import '../../index-620331eb.js';
24
+ import '../../topics-1ec669f0.js';
25
+ import '../../index-bbab31f0.js';
26
26
  import '../../utils/message/getOutgoingMessageState.js';
27
- import '../../compareIds-df760ae2.js';
28
- import '../../const-c269fd32.js';
27
+ import '../../compareIds-a4557492.js';
28
+ import '../../const-593595f5.js';
29
29
  import '@sendbird/chat/groupChannel';
30
30
  import '@sendbird/chat/message';
31
31
  import '../../ui/ContextMenu.js';
32
32
  import 'react-dom';
33
33
  import '../../ui/SortByRow.js';
34
34
  import '../../ui/ReactionButton.js';
35
+ import '../../consts-d2d25dac.js';
35
36
 
36
37
  var ChannelHeader = function () {
37
38
  var _a, _b, _c;
@@ -80,6 +81,7 @@ var ChannelHeader = function () {
80
81
  }, (typeof isMuted === 'string' && isMuted === 'true' || typeof isMuted === 'boolean' && isMuted) && /*#__PURE__*/React__default.createElement(Icon, {
81
82
  className: "sendbird-chat-header__right__mute",
82
83
  type: IconTypes.NOTIFICATIONS_OFF_FILLED,
84
+ fillColor: IconColors.ON_BACKGROUND_2,
83
85
  width: "24px",
84
86
  height: "24px"
85
87
  }), showSearchIcon && /*#__PURE__*/React__default.createElement(IconButton, {