@sendbird/uikit-react 3.11.1 → 3.12.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 (898) hide show
  1. package/App.js +139 -390
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +40 -0
  4. package/Channel/components/ChannelHeader.js +38 -30
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +85 -68
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +36 -29
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +6 -6
  11. package/Channel/components/Message.js +84 -54
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageFeedbackModal.js +9 -9
  14. package/Channel/components/MessageInput.js +56 -46
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageInputWrapper.js +67 -0
  17. package/Channel/components/MessageInputWrapper.js.map +1 -0
  18. package/Channel/components/MessageList.js +277 -66
  19. package/Channel/components/MessageList.js.map +1 -1
  20. package/Channel/components/RemoveMessageModal.js +35 -28
  21. package/Channel/components/RemoveMessageModal.js.map +1 -1
  22. package/Channel/components/SuggestedMentionList.js +26 -26
  23. package/Channel/components/TypingIndicator.js +7 -7
  24. package/Channel/components/UnreadCount.js +8 -8
  25. package/Channel/context.js +25 -34
  26. package/Channel/context.js.map +1 -1
  27. package/Channel/hooks/useHandleUploadFiles.js +13 -13
  28. package/Channel/hooks/useInitialMessagesFetch.js +6 -16
  29. package/Channel/hooks/useInitialMessagesFetch.js.map +1 -1
  30. package/Channel/utils/compareMessagesForGrouping.js +5 -5
  31. package/Channel/utils/getMessagePartsInfo.js +6 -6
  32. package/Channel.js +77 -69
  33. package/Channel.js.map +1 -1
  34. package/ChannelList/components/AddChannel.js +29 -21
  35. package/ChannelList/components/AddChannel.js.map +1 -1
  36. package/ChannelList/components/ChannelListHeader.js +9 -9
  37. package/ChannelList/components/ChannelListUI.js +114 -42
  38. package/ChannelList/components/ChannelListUI.js.map +1 -1
  39. package/ChannelList/components/ChannelPreview.js +45 -33
  40. package/ChannelList/components/ChannelPreview.js.map +1 -1
  41. package/ChannelList/components/ChannelPreviewAction.js +18 -14
  42. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  43. package/ChannelList/context.js +10 -10
  44. package/ChannelList.js +41 -40
  45. package/ChannelList.js.map +1 -1
  46. package/ChannelSettings/components/ChannelProfile.js +14 -14
  47. package/ChannelSettings/components/ChannelSettingsUI.js +23 -23
  48. package/ChannelSettings/components/EditDetailsModal.js +14 -14
  49. package/ChannelSettings/components/LeaveChannel.js +11 -11
  50. package/ChannelSettings/components/ModerationPanel.js +21 -21
  51. package/ChannelSettings/components/UserListItem.js +13 -13
  52. package/ChannelSettings/components/UserPanel.js +20 -20
  53. package/ChannelSettings/context.js +3 -3
  54. package/ChannelSettings.js +23 -23
  55. package/CreateChannel/components/CreateChannelUI.js +16 -16
  56. package/CreateChannel/components/InviteUsers.js +16 -16
  57. package/CreateChannel/components/SelectChannelType.js +10 -10
  58. package/CreateChannel/context.js +4 -4
  59. package/CreateChannel.js +16 -16
  60. package/CreateOpenChannel/components/CreateOpenChannelUI.js +11 -11
  61. package/CreateOpenChannel/context.js +1 -1
  62. package/CreateOpenChannel.js +11 -11
  63. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  64. package/EditUserProfile.js +12 -12
  65. package/GroupChannel/components/FileViewer.js +45 -0
  66. package/GroupChannel/components/FileViewer.js.map +1 -0
  67. package/{chunks/bundle-dMLt2ro9.js → GroupChannel/components/FrozenNotification.js} +7 -4
  68. package/GroupChannel/components/FrozenNotification.js.map +1 -0
  69. package/GroupChannel/components/GroupChannelHeader.js +42 -0
  70. package/GroupChannel/components/GroupChannelHeader.js.map +1 -0
  71. package/GroupChannel/components/GroupChannelUI.js +143 -0
  72. package/GroupChannel/components/GroupChannelUI.js.map +1 -0
  73. package/GroupChannel/components/Message.js +132 -0
  74. package/GroupChannel/components/Message.js.map +1 -0
  75. package/GroupChannel/components/MessageInputWrapper.js +88 -0
  76. package/GroupChannel/components/MessageInputWrapper.js.map +1 -0
  77. package/GroupChannel/components/MessageList.js +230 -0
  78. package/{cjs/chunks/bundle-hCR6GZHZ.js.map → GroupChannel/components/MessageList.js.map} +1 -1
  79. package/GroupChannel/components/RemoveMessageModal.js +42 -0
  80. package/GroupChannel/components/RemoveMessageModal.js.map +1 -0
  81. package/GroupChannel/components/SuggestedMentionList.js +23 -0
  82. package/GroupChannel/components/SuggestedMentionList.js.map +1 -0
  83. package/GroupChannel/components/SuggestedReplies.js +20 -0
  84. package/GroupChannel/components/SuggestedReplies.js.map +1 -0
  85. package/{chunks/bundle-4JVMIRVC.js → GroupChannel/components/TypingIndicator.js} +10 -6
  86. package/GroupChannel/components/TypingIndicator.js.map +1 -0
  87. package/{chunks/bundle-8OBG2Jrw.js → GroupChannel/components/UnreadCount.js} +10 -6
  88. package/GroupChannel/components/UnreadCount.js.map +1 -0
  89. package/{chunks/bundle-d31Dx4g9.js → GroupChannel/context.js} +36 -156
  90. package/{cjs/chunks/bundle-xbwLn6pV.js.map → GroupChannel/context.js.map} +1 -1
  91. package/GroupChannel.js +141 -0
  92. package/GroupChannel.js.map +1 -0
  93. package/GroupChannelList/components/AddGroupChannel.js +51 -0
  94. package/GroupChannelList/components/AddGroupChannel.js.map +1 -0
  95. package/{chunks/bundle-0Pl6hdf0.js → GroupChannelList/components/GroupChannelListHeader.js} +14 -6
  96. package/GroupChannelList/components/GroupChannelListHeader.js.map +1 -0
  97. package/GroupChannelList/components/GroupChannelListItem.js +59 -0
  98. package/GroupChannelList/components/GroupChannelListItem.js.map +1 -0
  99. package/GroupChannelList/components/GroupChannelListUI.js +123 -0
  100. package/GroupChannelList/components/GroupChannelListUI.js.map +1 -0
  101. package/{chunks/bundle-NFkyRDpH.js → GroupChannelList/components/GroupChannelPreviewAction.js} +26 -12
  102. package/GroupChannelList/components/GroupChannelPreviewAction.js.map +1 -0
  103. package/GroupChannelList/context.js +108 -0
  104. package/GroupChannelList/context.js.map +1 -0
  105. package/GroupChannelList.js +82 -0
  106. package/GroupChannelList.js.map +1 -0
  107. package/MessageSearch/components/MessageSearchUI.js +14 -14
  108. package/MessageSearch/context.js +1 -1
  109. package/MessageSearch.js +14 -14
  110. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  111. package/OpenChannel/components/OpenChannelHeader.js +18 -18
  112. package/OpenChannel/components/OpenChannelInput.js +25 -25
  113. package/OpenChannel/components/OpenChannelMessage.js +35 -35
  114. package/OpenChannel/components/OpenChannelMessageList.js +39 -39
  115. package/OpenChannel/components/OpenChannelUI.js +39 -39
  116. package/OpenChannel/context.js +17 -17
  117. package/OpenChannel.js +39 -39
  118. package/OpenChannelList/components/OpenChannelListUI.js +14 -14
  119. package/OpenChannelList/components/OpenChannelPreview.js +6 -6
  120. package/OpenChannelList/context.js +3 -3
  121. package/OpenChannelList.js +14 -14
  122. package/OpenChannelSettings/components/EditDetailsModal.js +15 -15
  123. package/OpenChannelSettings/components/OpenChannelProfile.js +15 -15
  124. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +19 -19
  125. package/OpenChannelSettings/components/OperatorUI.js +19 -19
  126. package/OpenChannelSettings/components/ParticipantUI.js +17 -17
  127. package/OpenChannelSettings/context.js +3 -3
  128. package/OpenChannelSettings.js +19 -19
  129. package/SendbirdProvider.js +22 -22
  130. package/Thread/components/ParentMessageInfo.js +42 -42
  131. package/Thread/components/ParentMessageInfoItem.js +28 -28
  132. package/Thread/components/ThreadHeader.js +7 -7
  133. package/Thread/components/ThreadList.js +46 -46
  134. package/Thread/components/ThreadListItem.js +46 -46
  135. package/Thread/components/ThreadMessageInput.js +175 -51
  136. package/Thread/components/ThreadMessageInput.js.map +1 -1
  137. package/Thread/components/ThreadUI.js +59 -57
  138. package/Thread/components/ThreadUI.js.map +1 -1
  139. package/Thread/context.js +11 -11
  140. package/Thread.js +59 -57
  141. package/Thread.js.map +1 -1
  142. package/VoicePlayer/context.js +3 -3
  143. package/VoicePlayer/useVoicePlayer.js +10 -10
  144. package/VoiceRecorder/context.js +10 -10
  145. package/VoiceRecorder/useVoiceRecorder.js +9 -9
  146. package/chunks/{bundle-7gnDs7-N.js → bundle--ORA9L0f.js} +10 -10
  147. package/chunks/{bundle-7gnDs7-N.js.map → bundle--ORA9L0f.js.map} +1 -1
  148. package/chunks/bundle--QWYYsI7.js +67 -0
  149. package/chunks/bundle--QWYYsI7.js.map +1 -0
  150. package/chunks/{bundle-laq4Cm2M.js → bundle--XsvJ3hU.js} +3 -3
  151. package/chunks/bundle--XsvJ3hU.js.map +1 -0
  152. package/chunks/{bundle-5x-SH0ln.js → bundle--rPLqx46.js} +1 -1
  153. package/chunks/bundle--rPLqx46.js.map +1 -0
  154. package/chunks/{bundle-72sPkBu4.js → bundle-2atU-KVo.js} +1 -1
  155. package/chunks/bundle-2atU-KVo.js.map +1 -0
  156. package/chunks/{bundle-A9vhM7uK.js → bundle-3DH6zZHH.js} +4 -4
  157. package/chunks/bundle-3DH6zZHH.js.map +1 -0
  158. package/chunks/{bundle-YetIEB9o.js → bundle-3f1my2Ir.js} +2 -2
  159. package/chunks/bundle-3f1my2Ir.js.map +1 -0
  160. package/chunks/{bundle-9wFvMqxF.js → bundle-46qOcsB3.js} +1 -1
  161. package/chunks/{bundle-9wFvMqxF.js.map → bundle-46qOcsB3.js.map} +1 -1
  162. package/chunks/{bundle-e5lT4U6_.js → bundle-5FiMKfdx.js} +4 -2
  163. package/chunks/bundle-5FiMKfdx.js.map +1 -0
  164. package/chunks/{bundle-YoiKtyRA.js → bundle-5rAtBp8F.js} +3 -3
  165. package/chunks/{bundle-YoiKtyRA.js.map → bundle-5rAtBp8F.js.map} +1 -1
  166. package/chunks/{bundle-YBExtK73.js → bundle-67KZd0Wh.js} +3 -10
  167. package/chunks/bundle-67KZd0Wh.js.map +1 -0
  168. package/chunks/{bundle-brky8TnE.js → bundle-7128atOc.js} +1 -1
  169. package/chunks/bundle-7128atOc.js.map +1 -0
  170. package/chunks/{bundle-BnMLjoeD.js → bundle-7RxHW-e9.js} +2 -2
  171. package/chunks/{bundle-BnMLjoeD.js.map → bundle-7RxHW-e9.js.map} +1 -1
  172. package/chunks/{bundle-WSNk7jGd.js → bundle-7cTKRmbK.js} +6 -6
  173. package/chunks/bundle-7cTKRmbK.js.map +1 -0
  174. package/chunks/{bundle-SI8TVXcF.js → bundle-7h36Ded4.js} +1 -1
  175. package/chunks/bundle-7h36Ded4.js.map +1 -0
  176. package/chunks/{bundle-KwnXXB-s.js → bundle-7nI0MJOs.js} +1 -1
  177. package/chunks/bundle-7nI0MJOs.js.map +1 -0
  178. package/chunks/{bundle-9M3o3hPA.js → bundle-8C68O5Qm.js} +8 -8
  179. package/chunks/{bundle-9M3o3hPA.js.map → bundle-8C68O5Qm.js.map} +1 -1
  180. package/chunks/{bundle-QWYghVSN.js → bundle-8M13Uq7P.js} +3 -3
  181. package/chunks/{bundle-QWYghVSN.js.map → bundle-8M13Uq7P.js.map} +1 -1
  182. package/chunks/{bundle--M9av9I5.js → bundle-8PbcZ5aj.js} +1 -1
  183. package/chunks/bundle-8PbcZ5aj.js.map +1 -0
  184. package/chunks/{bundle-fgZJ6wUh.js → bundle-94myZnyI.js} +2 -2
  185. package/chunks/bundle-94myZnyI.js.map +1 -0
  186. package/chunks/{bundle-1kYamWYQ.js → bundle-9nrFshYX.js} +4 -4
  187. package/chunks/{bundle-1kYamWYQ.js.map → bundle-9nrFshYX.js.map} +1 -1
  188. package/chunks/{bundle-zqJVlTpN.js → bundle-9vFMqSQw.js} +4 -4
  189. package/chunks/bundle-9vFMqSQw.js.map +1 -0
  190. package/chunks/{bundle-fNYexgBr.js → bundle-Br-kF2rc.js} +5 -5
  191. package/chunks/{bundle-fNYexgBr.js.map → bundle-Br-kF2rc.js.map} +1 -1
  192. package/chunks/{bundle-2xEG_fol.js → bundle-BvxbprFR.js} +6 -8
  193. package/chunks/bundle-BvxbprFR.js.map +1 -0
  194. package/chunks/{bundle--LjMBMp3.js → bundle-BxGOQnDI.js} +10 -10
  195. package/chunks/{bundle--LjMBMp3.js.map → bundle-BxGOQnDI.js.map} +1 -1
  196. package/chunks/{bundle-R5n5AVj8.js → bundle-DDOXEDJp.js} +1 -1
  197. package/chunks/bundle-DDOXEDJp.js.map +1 -0
  198. package/chunks/{bundle-5cvB_UbP.js → bundle-F-lMyjp-.js} +1 -1
  199. package/chunks/bundle-F-lMyjp-.js.map +1 -0
  200. package/chunks/bundle-FVeeTX_F.js +86 -0
  201. package/chunks/bundle-FVeeTX_F.js.map +1 -0
  202. package/chunks/{bundle-IKRolu9P.js → bundle-GM_JyB6p.js} +2 -2
  203. package/chunks/{bundle-IKRolu9P.js.map → bundle-GM_JyB6p.js.map} +1 -1
  204. package/chunks/{bundle-jiwqHI-2.js → bundle-J-eeHkE5.js} +6 -13
  205. package/chunks/bundle-J-eeHkE5.js.map +1 -0
  206. package/chunks/{bundle-8GIaD9eE.js → bundle-JkQoCKWv.js} +3 -3
  207. package/chunks/{bundle-8GIaD9eE.js.map → bundle-JkQoCKWv.js.map} +1 -1
  208. package/chunks/{bundle-buXsGWIu.js → bundle-JlL_734C.js} +7 -13
  209. package/chunks/bundle-JlL_734C.js.map +1 -0
  210. package/chunks/bundle-KUOX5P0q.js +8 -0
  211. package/chunks/bundle-KUOX5P0q.js.map +1 -0
  212. package/chunks/{bundle-Xy9OskjJ.js → bundle-LG1mMxPr.js} +7 -7
  213. package/chunks/{bundle-Xy9OskjJ.js.map → bundle-LG1mMxPr.js.map} +1 -1
  214. package/chunks/{bundle-kP3o9aRv.js → bundle-Lgn5J-2T.js} +1 -1
  215. package/chunks/bundle-Lgn5J-2T.js.map +1 -0
  216. package/chunks/{bundle-4ab6nIKe.js → bundle-MYBkZ28K.js} +1 -1
  217. package/chunks/bundle-MYBkZ28K.js.map +1 -0
  218. package/chunks/{bundle-scS3KeKI.js → bundle-NOqfYbat.js} +11 -11
  219. package/chunks/{bundle-scS3KeKI.js.map → bundle-NOqfYbat.js.map} +1 -1
  220. package/chunks/{bundle-KNG-9gh9.js → bundle-N_nx28TN.js} +4 -4
  221. package/chunks/{bundle-KNG-9gh9.js.map → bundle-N_nx28TN.js.map} +1 -1
  222. package/chunks/{bundle-ncF5Vx6b.js → bundle-OZuyNhMv.js} +3 -3
  223. package/chunks/bundle-OZuyNhMv.js.map +1 -0
  224. package/chunks/{bundle-T7ZknK5s.js → bundle-Omjc0GuQ.js} +1 -1
  225. package/chunks/bundle-Omjc0GuQ.js.map +1 -0
  226. package/chunks/{bundle-uGz5dAkT.js → bundle-R2oWoix8.js} +10 -10
  227. package/chunks/{bundle-uGz5dAkT.js.map → bundle-R2oWoix8.js.map} +1 -1
  228. package/chunks/{bundle-hrqkDKRD.js → bundle-RX3fBZMu.js} +4 -4
  229. package/chunks/{bundle-hrqkDKRD.js.map → bundle-RX3fBZMu.js.map} +1 -1
  230. package/chunks/{bundle-qI3fzrBt.js → bundle-Rik09YnB.js} +1 -1
  231. package/chunks/bundle-Rik09YnB.js.map +1 -0
  232. package/chunks/{bundle-1XQGq5tE.js → bundle-RjOfwRD9.js} +1 -1
  233. package/chunks/bundle-RjOfwRD9.js.map +1 -0
  234. package/chunks/{bundle--4gDKFyU.js → bundle-TPqzf5St.js} +1 -1
  235. package/chunks/bundle-TPqzf5St.js.map +1 -0
  236. package/chunks/{bundle-RVuTQS9f.js → bundle-UXAf5PuY.js} +8 -19
  237. package/chunks/bundle-UXAf5PuY.js.map +1 -0
  238. package/chunks/{bundle-eGLEfc7r.js → bundle-UxZ7Yk8Z.js} +1 -1
  239. package/chunks/{bundle-8OBG2Jrw.js.map → bundle-UxZ7Yk8Z.js.map} +1 -1
  240. package/chunks/{bundle-veNmMfAH.js → bundle-V1r4qRh7.js} +11 -55
  241. package/chunks/bundle-V1r4qRh7.js.map +1 -0
  242. package/chunks/{bundle-RzWTDZDo.js → bundle-VC1JO5-p.js} +3 -3
  243. package/chunks/bundle-VC1JO5-p.js.map +1 -0
  244. package/chunks/{bundle-TlXrstq8.js → bundle-VhCdB2-c.js} +1 -1
  245. package/chunks/bundle-VhCdB2-c.js.map +1 -0
  246. package/chunks/{bundle-Edp-TIC7.js → bundle-VwgVuCHi.js} +15 -19
  247. package/chunks/{bundle-Edp-TIC7.js.map → bundle-VwgVuCHi.js.map} +1 -1
  248. package/chunks/{bundle-wICBtdE1.js → bundle-XL-KBWqW.js} +1 -1
  249. package/chunks/bundle-XL-KBWqW.js.map +1 -0
  250. package/chunks/{bundle-TEGbbRiE.js → bundle-XekDAFCE.js} +1 -1
  251. package/chunks/bundle-XekDAFCE.js.map +1 -0
  252. package/chunks/{bundle-_NUeDv_m.js → bundle-Z1D61u4a.js} +2 -1
  253. package/chunks/{bundle-_NUeDv_m.js.map → bundle-Z1D61u4a.js.map} +1 -1
  254. package/chunks/{bundle-QUJKjMCy.js → bundle-ZfA8OpRJ.js} +1 -1
  255. package/chunks/bundle-ZfA8OpRJ.js.map +1 -0
  256. package/chunks/{bundle-l7rDKrwx.js → bundle-_IIBqN54.js} +1 -1
  257. package/chunks/bundle-_IIBqN54.js.map +1 -0
  258. package/chunks/{bundle-0vtSUcHY.js → bundle-bBs0-8AF.js} +2 -2
  259. package/chunks/{bundle-0vtSUcHY.js.map → bundle-bBs0-8AF.js.map} +1 -1
  260. package/chunks/{bundle-u_1-OZu0.js → bundle-cYprLCVV.js} +2 -2
  261. package/chunks/{bundle-u_1-OZu0.js.map → bundle-cYprLCVV.js.map} +1 -1
  262. package/chunks/{bundle-92kzAxsw.js → bundle-cqMRshaU.js} +6 -6
  263. package/chunks/bundle-cqMRshaU.js.map +1 -0
  264. package/chunks/{bundle-Y0R5tada.js → bundle-dlgSS-h4.js} +3 -3
  265. package/chunks/{bundle-Y0R5tada.js.map → bundle-dlgSS-h4.js.map} +1 -1
  266. package/chunks/{bundle-b9LCaMtu.js → bundle-etzT3I0G.js} +1 -1
  267. package/chunks/bundle-etzT3I0G.js.map +1 -0
  268. package/chunks/{bundle-YOec1wfw.js → bundle-jKjzU1MT.js} +1 -1
  269. package/chunks/{bundle-YOec1wfw.js.map → bundle-jKjzU1MT.js.map} +1 -1
  270. package/chunks/{bundle-FqjGVIIM.js → bundle-jOlYtsGu.js} +5 -5
  271. package/chunks/{bundle-2xEG_fol.js.map → bundle-jOlYtsGu.js.map} +1 -1
  272. package/chunks/{bundle-bAvA5Udb.js → bundle-mGum5Avu.js} +3 -3
  273. package/chunks/bundle-mGum5Avu.js.map +1 -0
  274. package/chunks/{bundle-3hGhEhNx.js → bundle-mN_8ZHp6.js} +1 -1
  275. package/chunks/bundle-mN_8ZHp6.js.map +1 -0
  276. package/chunks/{bundle-K3gy6I7U.js → bundle-mPXz1Hjl.js} +1 -1
  277. package/chunks/bundle-mPXz1Hjl.js.map +1 -0
  278. package/chunks/{bundle-Npg4qQQD.js → bundle-nrzV0hwh.js} +1 -1
  279. package/chunks/bundle-nrzV0hwh.js.map +1 -0
  280. package/chunks/{bundle-pffuo01q.js → bundle-oesAmMyD.js} +2 -2
  281. package/chunks/bundle-oesAmMyD.js.map +1 -0
  282. package/chunks/{bundle-rOhl9tWD.js → bundle-opleCLJP.js} +1 -1
  283. package/chunks/bundle-opleCLJP.js.map +1 -0
  284. package/chunks/{bundle-OYvgeZlT.js → bundle-pSagaLQn.js} +4 -4
  285. package/chunks/bundle-pSagaLQn.js.map +1 -0
  286. package/chunks/{bundle-2lbcW98e.js → bundle-qxRcOzlA.js} +3 -3
  287. package/chunks/{bundle-2lbcW98e.js.map → bundle-qxRcOzlA.js.map} +1 -1
  288. package/chunks/{bundle-AAE0evYg.js → bundle-r8uICiMq.js} +3 -3
  289. package/chunks/bundle-r8uICiMq.js.map +1 -0
  290. package/chunks/{bundle-X1ee5Xag.js → bundle-rTlMQK8Z.js} +5 -14
  291. package/chunks/{bundle-X1ee5Xag.js.map → bundle-rTlMQK8Z.js.map} +1 -1
  292. package/chunks/{bundle-Dpt_A2Sv.js → bundle-rwD6SAkU.js} +6 -14
  293. package/chunks/bundle-rwD6SAkU.js.map +1 -0
  294. package/chunks/{bundle-2FXQWzCx.js → bundle-samkISwY.js} +8 -8
  295. package/chunks/{bundle-2FXQWzCx.js.map → bundle-samkISwY.js.map} +1 -1
  296. package/chunks/{bundle-kNzGDcl1.js → bundle-tmygoDRK.js} +4 -4
  297. package/chunks/{bundle-kNzGDcl1.js.map → bundle-tmygoDRK.js.map} +1 -1
  298. package/chunks/{bundle-zOkaSZl3.js → bundle-wbu1BRph.js} +3 -3
  299. package/chunks/bundle-wbu1BRph.js.map +1 -0
  300. package/chunks/{bundle-U_0F9z8c.js → bundle-xHxKphkV.js} +1 -1
  301. package/chunks/bundle-xHxKphkV.js.map +1 -0
  302. package/chunks/{bundle-2aZMC1gn.js → bundle-yGuAYhYN.js} +2 -2
  303. package/chunks/bundle-yGuAYhYN.js.map +1 -0
  304. package/chunks/{bundle-7RyEqo9-.js → bundle-zdgdWVyn.js} +3 -3
  305. package/chunks/bundle-zdgdWVyn.js.map +1 -0
  306. package/cjs/App.js +142 -393
  307. package/cjs/App.js.map +1 -1
  308. package/cjs/Channel/components/ChannelHeader.js +37 -33
  309. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  310. package/cjs/Channel/components/ChannelUI.js +83 -70
  311. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  312. package/cjs/Channel/components/FileViewer.js +35 -32
  313. package/cjs/Channel/components/FileViewer.js.map +1 -1
  314. package/cjs/Channel/components/FrozenNotification.js +7 -7
  315. package/cjs/Channel/components/Message.js +82 -56
  316. package/cjs/Channel/components/Message.js.map +1 -1
  317. package/cjs/Channel/components/MessageFeedbackModal.js +9 -9
  318. package/cjs/Channel/components/MessageInput.js +56 -46
  319. package/cjs/Channel/components/MessageInput.js.map +1 -1
  320. package/cjs/Channel/components/MessageInputWrapper.js +76 -0
  321. package/cjs/Channel/components/MessageInputWrapper.js.map +1 -0
  322. package/cjs/Channel/components/MessageList.js +275 -68
  323. package/cjs/Channel/components/MessageList.js.map +1 -1
  324. package/cjs/Channel/components/RemoveMessageModal.js +33 -30
  325. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  326. package/cjs/Channel/components/SuggestedMentionList.js +26 -26
  327. package/cjs/Channel/components/TypingIndicator.js +8 -8
  328. package/cjs/Channel/components/UnreadCount.js +9 -9
  329. package/cjs/Channel/context.js +25 -34
  330. package/cjs/Channel/context.js.map +1 -1
  331. package/cjs/Channel/hooks/useHandleUploadFiles.js +13 -13
  332. package/cjs/Channel/hooks/useInitialMessagesFetch.js +6 -16
  333. package/cjs/Channel/hooks/useInitialMessagesFetch.js.map +1 -1
  334. package/cjs/Channel/utils/compareMessagesForGrouping.js +5 -5
  335. package/cjs/Channel/utils/getMessagePartsInfo.js +6 -6
  336. package/cjs/Channel.js +78 -70
  337. package/cjs/Channel.js.map +1 -1
  338. package/cjs/ChannelList/components/AddChannel.js +28 -24
  339. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  340. package/cjs/ChannelList/components/ChannelListHeader.js +10 -10
  341. package/cjs/ChannelList/components/ChannelListUI.js +112 -44
  342. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  343. package/cjs/ChannelList/components/ChannelPreview.js +43 -35
  344. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  345. package/cjs/ChannelList/components/ChannelPreviewAction.js +15 -15
  346. package/cjs/ChannelList/context.js +10 -10
  347. package/cjs/ChannelList.js +42 -41
  348. package/cjs/ChannelList.js.map +1 -1
  349. package/cjs/ChannelSettings/components/ChannelProfile.js +14 -14
  350. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +23 -23
  351. package/cjs/ChannelSettings/components/EditDetailsModal.js +14 -14
  352. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  353. package/cjs/ChannelSettings/components/ModerationPanel.js +21 -21
  354. package/cjs/ChannelSettings/components/UserListItem.js +13 -13
  355. package/cjs/ChannelSettings/components/UserPanel.js +20 -20
  356. package/cjs/ChannelSettings/context.js +3 -3
  357. package/cjs/ChannelSettings.js +23 -23
  358. package/cjs/CreateChannel/components/CreateChannelUI.js +16 -16
  359. package/cjs/CreateChannel/components/InviteUsers.js +16 -16
  360. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  361. package/cjs/CreateChannel/context.js +4 -4
  362. package/cjs/CreateChannel.js +16 -16
  363. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +11 -11
  364. package/cjs/CreateOpenChannel/context.js +1 -1
  365. package/cjs/CreateOpenChannel.js +11 -11
  366. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  367. package/cjs/EditUserProfile.js +12 -12
  368. package/cjs/GroupChannel/components/FileViewer.js +50 -0
  369. package/cjs/GroupChannel/components/FileViewer.js.map +1 -0
  370. package/cjs/{chunks/bundle-Y4f3TKLP.js → GroupChannel/components/FrozenNotification.js} +9 -3
  371. package/cjs/GroupChannel/components/FrozenNotification.js.map +1 -0
  372. package/cjs/GroupChannel/components/GroupChannelHeader.js +47 -0
  373. package/cjs/GroupChannel/components/GroupChannelHeader.js.map +1 -0
  374. package/cjs/GroupChannel/components/GroupChannelUI.js +148 -0
  375. package/cjs/GroupChannel/components/GroupChannelUI.js.map +1 -0
  376. package/cjs/GroupChannel/components/Message.js +137 -0
  377. package/cjs/GroupChannel/components/Message.js.map +1 -0
  378. package/cjs/GroupChannel/components/MessageInputWrapper.js +93 -0
  379. package/cjs/GroupChannel/components/MessageInputWrapper.js.map +1 -0
  380. package/cjs/GroupChannel/components/MessageList.js +235 -0
  381. package/cjs/{chunks/bundle-qLmNEs3L.js.map → GroupChannel/components/MessageList.js.map} +1 -1
  382. package/cjs/GroupChannel/components/RemoveMessageModal.js +47 -0
  383. package/cjs/GroupChannel/components/RemoveMessageModal.js.map +1 -0
  384. package/cjs/GroupChannel/components/SuggestedMentionList.js +28 -0
  385. package/cjs/GroupChannel/components/SuggestedMentionList.js.map +1 -0
  386. package/cjs/GroupChannel/components/SuggestedReplies.js +25 -0
  387. package/cjs/GroupChannel/components/SuggestedReplies.js.map +1 -0
  388. package/cjs/{chunks/bundle-jI1VVAdg.js → GroupChannel/components/TypingIndicator.js} +12 -5
  389. package/cjs/GroupChannel/components/TypingIndicator.js.map +1 -0
  390. package/cjs/{chunks/bundle-UmkcFSLj.js → GroupChannel/components/UnreadCount.js} +12 -5
  391. package/cjs/GroupChannel/components/UnreadCount.js.map +1 -0
  392. package/cjs/{chunks/bundle-xbwLn6pV.js → GroupChannel/context.js} +36 -156
  393. package/cjs/{chunks/bundle-eG-yFfLY.js.map → GroupChannel/context.js.map} +1 -1
  394. package/cjs/GroupChannel.js +146 -0
  395. package/cjs/GroupChannel.js.map +1 -0
  396. package/cjs/GroupChannelList/components/AddGroupChannel.js +56 -0
  397. package/cjs/GroupChannelList/components/AddGroupChannel.js.map +1 -0
  398. package/cjs/{chunks/bundle-W789Mnl2.js → GroupChannelList/components/GroupChannelListHeader.js} +16 -5
  399. package/cjs/GroupChannelList/components/GroupChannelListHeader.js.map +1 -0
  400. package/cjs/GroupChannelList/components/GroupChannelListItem.js +61 -0
  401. package/cjs/GroupChannelList/components/GroupChannelListItem.js.map +1 -0
  402. package/cjs/GroupChannelList/components/GroupChannelListUI.js +128 -0
  403. package/cjs/GroupChannelList/components/GroupChannelListUI.js.map +1 -0
  404. package/cjs/{chunks/bundle-dSLJZu7j.js → GroupChannelList/components/GroupChannelPreviewAction.js} +29 -13
  405. package/cjs/GroupChannelList/components/GroupChannelPreviewAction.js.map +1 -0
  406. package/cjs/GroupChannelList/context.js +112 -0
  407. package/cjs/GroupChannelList/context.js.map +1 -0
  408. package/cjs/GroupChannelList.js +87 -0
  409. package/cjs/GroupChannelList.js.map +1 -0
  410. package/cjs/MessageSearch/components/MessageSearchUI.js +14 -14
  411. package/cjs/MessageSearch/context.js +1 -1
  412. package/cjs/MessageSearch.js +14 -14
  413. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  414. package/cjs/OpenChannel/components/OpenChannelHeader.js +18 -18
  415. package/cjs/OpenChannel/components/OpenChannelInput.js +25 -25
  416. package/cjs/OpenChannel/components/OpenChannelMessage.js +35 -35
  417. package/cjs/OpenChannel/components/OpenChannelMessageList.js +39 -39
  418. package/cjs/OpenChannel/components/OpenChannelUI.js +39 -39
  419. package/cjs/OpenChannel/context.js +17 -17
  420. package/cjs/OpenChannel.js +39 -39
  421. package/cjs/OpenChannelList/components/OpenChannelListUI.js +14 -14
  422. package/cjs/OpenChannelList/components/OpenChannelPreview.js +6 -6
  423. package/cjs/OpenChannelList/context.js +3 -3
  424. package/cjs/OpenChannelList.js +14 -14
  425. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +15 -15
  426. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +15 -15
  427. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +19 -19
  428. package/cjs/OpenChannelSettings/components/OperatorUI.js +19 -19
  429. package/cjs/OpenChannelSettings/components/ParticipantUI.js +17 -17
  430. package/cjs/OpenChannelSettings/context.js +3 -3
  431. package/cjs/OpenChannelSettings.js +19 -19
  432. package/cjs/SendbirdProvider.js +22 -22
  433. package/cjs/Thread/components/ParentMessageInfo.js +42 -42
  434. package/cjs/Thread/components/ParentMessageInfoItem.js +28 -28
  435. package/cjs/Thread/components/ThreadHeader.js +7 -7
  436. package/cjs/Thread/components/ThreadList.js +46 -46
  437. package/cjs/Thread/components/ThreadListItem.js +46 -46
  438. package/cjs/Thread/components/ThreadMessageInput.js +173 -53
  439. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  440. package/cjs/Thread/components/ThreadUI.js +60 -58
  441. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  442. package/cjs/Thread/context.js +11 -11
  443. package/cjs/Thread.js +59 -57
  444. package/cjs/Thread.js.map +1 -1
  445. package/cjs/VoicePlayer/context.js +3 -3
  446. package/cjs/VoicePlayer/useVoicePlayer.js +10 -10
  447. package/cjs/VoiceRecorder/context.js +10 -10
  448. package/cjs/VoiceRecorder/useVoiceRecorder.js +9 -9
  449. package/cjs/chunks/{bundle-mNGciuzV.js → bundle--ygAOWyl.js} +3 -3
  450. package/cjs/chunks/bundle--ygAOWyl.js.map +1 -0
  451. package/cjs/chunks/{bundle-aetFglQl.js → bundle-0JDC4wle.js} +2 -2
  452. package/cjs/chunks/{bundle-aetFglQl.js.map → bundle-0JDC4wle.js.map} +1 -1
  453. package/cjs/chunks/{bundle-jP-1bn23.js → bundle-1Kqo8Utk.js} +1 -1
  454. package/cjs/chunks/bundle-1Kqo8Utk.js.map +1 -0
  455. package/cjs/chunks/{bundle-X6IgWOv5.js → bundle-1q18oFrr.js} +3 -3
  456. package/cjs/chunks/bundle-1q18oFrr.js.map +1 -0
  457. package/cjs/chunks/{bundle-aQOJcXCO.js → bundle-31Znhf75.js} +6 -6
  458. package/cjs/chunks/bundle-31Znhf75.js.map +1 -0
  459. package/cjs/chunks/{bundle-hlZ6VwkW.js → bundle-3my94NZb.js} +1 -1
  460. package/cjs/chunks/bundle-3my94NZb.js.map +1 -0
  461. package/cjs/chunks/{bundle-r9E_mzs-.js → bundle-40a4LzCe.js} +3 -3
  462. package/cjs/chunks/bundle-40a4LzCe.js.map +1 -0
  463. package/cjs/chunks/{bundle-A7TvCVbX.js → bundle-4_qnUKIC.js} +1 -1
  464. package/cjs/chunks/bundle-4_qnUKIC.js.map +1 -0
  465. package/cjs/chunks/{bundle-KloNxGOC.js → bundle-7S9yo7uc.js} +3 -3
  466. package/{chunks/bundle-szN3I4WN.js.map → cjs/chunks/bundle-7S9yo7uc.js.map} +1 -1
  467. package/cjs/chunks/{bundle-4QpLkquA.js → bundle-7hPt-3N9.js} +7 -7
  468. package/cjs/chunks/bundle-7hPt-3N9.js.map +1 -0
  469. package/cjs/chunks/{bundle-a3DGXthf.js → bundle-7qCJ1BsN.js} +5 -5
  470. package/cjs/chunks/bundle-7qCJ1BsN.js.map +1 -0
  471. package/cjs/chunks/{bundle-BrOubGHT.js → bundle-83aDMaJz.js} +5 -13
  472. package/cjs/chunks/bundle-83aDMaJz.js.map +1 -0
  473. package/cjs/chunks/{bundle-V4Gdewny.js → bundle-8jmUxywc.js} +1 -1
  474. package/cjs/chunks/bundle-8jmUxywc.js.map +1 -0
  475. package/cjs/chunks/{bundle-YvcRCGBd.js → bundle-98I9HrXW.js} +4 -4
  476. package/cjs/chunks/bundle-98I9HrXW.js.map +1 -0
  477. package/cjs/chunks/{bundle-qXInmu7W.js → bundle-9G4y8IUf.js} +3 -3
  478. package/cjs/chunks/bundle-9G4y8IUf.js.map +1 -0
  479. package/cjs/chunks/{bundle-8XvxyLQN.js → bundle-AN2XvUtp.js} +1 -1
  480. package/cjs/chunks/bundle-AN2XvUtp.js.map +1 -0
  481. package/cjs/chunks/{bundle-kYfqAttM.js → bundle-B3exQvX0.js} +1 -1
  482. package/cjs/chunks/bundle-B3exQvX0.js.map +1 -0
  483. package/cjs/chunks/{bundle-eG-yFfLY.js → bundle-BIo8a3gP.js} +3 -3
  484. package/{chunks/bundle-d31Dx4g9.js.map → cjs/chunks/bundle-BIo8a3gP.js.map} +1 -1
  485. package/cjs/chunks/{bundle-QU7zbepl.js → bundle-ECik2x9q.js} +4 -4
  486. package/cjs/chunks/bundle-ECik2x9q.js.map +1 -0
  487. package/cjs/chunks/{bundle-E1H3DQtB.js → bundle-G3wIPH8m.js} +3 -3
  488. package/cjs/chunks/bundle-G3wIPH8m.js.map +1 -0
  489. package/cjs/chunks/{bundle-_vyDAzUb.js → bundle-G8VoSPnT.js} +1 -1
  490. package/cjs/chunks/bundle-G8VoSPnT.js.map +1 -0
  491. package/cjs/chunks/{bundle-jUxjf8aL.js → bundle-GVX1pgQE.js} +7 -7
  492. package/cjs/chunks/{bundle-jUxjf8aL.js.map → bundle-GVX1pgQE.js.map} +1 -1
  493. package/cjs/chunks/{bundle-Eq5GnDnz.js → bundle-HxNp6IgG.js} +10 -10
  494. package/cjs/chunks/{bundle-Eq5GnDnz.js.map → bundle-HxNp6IgG.js.map} +1 -1
  495. package/cjs/chunks/{bundle-mk0LQISG.js → bundle-I85dteYT.js} +3 -3
  496. package/cjs/chunks/bundle-I85dteYT.js.map +1 -0
  497. package/cjs/chunks/{bundle-kLhcU0Bg.js → bundle-KLiWyyBv.js} +3 -3
  498. package/cjs/chunks/bundle-KLiWyyBv.js.map +1 -0
  499. package/cjs/chunks/{bundle-dwD6gaHJ.js → bundle-L-INlcEY.js} +1 -1
  500. package/cjs/chunks/bundle-L-INlcEY.js.map +1 -0
  501. package/cjs/chunks/{bundle-Pcl0nMWb.js → bundle-L6Jk8Ayi.js} +5 -5
  502. package/cjs/chunks/bundle-L6Jk8Ayi.js.map +1 -0
  503. package/cjs/chunks/{bundle-Ne8lK39C.js → bundle-MRTWQD0M.js} +2 -2
  504. package/cjs/chunks/bundle-MRTWQD0M.js.map +1 -0
  505. package/cjs/chunks/{bundle--t70CDfb.js → bundle-Mku2L7HX.js} +6 -6
  506. package/cjs/chunks/bundle-Mku2L7HX.js.map +1 -0
  507. package/cjs/chunks/{bundle--zfwoPVm.js → bundle-NO9KjD6-.js} +1 -1
  508. package/cjs/chunks/bundle-NO9KjD6-.js.map +1 -0
  509. package/cjs/chunks/{bundle-H3iUL9jU.js → bundle-Pp2hAi9g.js} +1 -1
  510. package/cjs/chunks/bundle-Pp2hAi9g.js.map +1 -0
  511. package/cjs/chunks/{bundle-0LtiaxJx.js → bundle-PzNWj1Ya.js} +1 -1
  512. package/cjs/chunks/bundle-PzNWj1Ya.js.map +1 -0
  513. package/cjs/chunks/bundle-RjWuJw-3.js +88 -0
  514. package/cjs/chunks/bundle-RjWuJw-3.js.map +1 -0
  515. package/cjs/chunks/{bundle-2wF6U5Rf.js → bundle-SNQZJo5u.js} +3 -3
  516. package/cjs/chunks/{bundle-2wF6U5Rf.js.map → bundle-SNQZJo5u.js.map} +1 -1
  517. package/cjs/chunks/{bundle-8oh3Iidd.js → bundle-SSVfUJDa.js} +2 -2
  518. package/cjs/chunks/{bundle-8oh3Iidd.js.map → bundle-SSVfUJDa.js.map} +1 -1
  519. package/cjs/chunks/{bundle-bNp99ZTk.js → bundle-SY2qr3yT.js} +1 -1
  520. package/cjs/chunks/bundle-SY2qr3yT.js.map +1 -0
  521. package/cjs/chunks/{bundle-y7MhfXfx.js → bundle-Sp0Vzjeq.js} +1 -1
  522. package/cjs/chunks/bundle-Sp0Vzjeq.js.map +1 -0
  523. package/cjs/chunks/bundle-TEAixAXm.js +8 -0
  524. package/cjs/chunks/bundle-TEAixAXm.js.map +1 -0
  525. package/cjs/chunks/{bundle-5E4_BBHS.js → bundle-U81js22j.js} +5 -14
  526. package/cjs/chunks/bundle-U81js22j.js.map +1 -0
  527. package/cjs/chunks/{bundle--yF0PJ6E.js → bundle-VSxKlJiY.js} +5 -1
  528. package/cjs/chunks/bundle-VSxKlJiY.js.map +1 -0
  529. package/cjs/chunks/{bundle-EsJltkVm.js → bundle-WnDkk4j0.js} +1 -1
  530. package/cjs/chunks/bundle-WnDkk4j0.js.map +1 -0
  531. package/cjs/chunks/{bundle-DgcTM2HW.js → bundle-Zjbgztcu.js} +1 -1
  532. package/cjs/chunks/bundle-Zjbgztcu.js.map +1 -0
  533. package/cjs/chunks/{bundle-1CojrMYd.js → bundle-_BACdERA.js} +1 -1
  534. package/cjs/chunks/bundle-_BACdERA.js.map +1 -0
  535. package/cjs/chunks/{bundle-p1TqI4uJ.js → bundle-_P-b1GDT.js} +4 -4
  536. package/cjs/chunks/{bundle-p1TqI4uJ.js.map → bundle-_P-b1GDT.js.map} +1 -1
  537. package/cjs/chunks/{bundle-ZpJLlgNE.js → bundle-aMzX7VhJ.js} +6 -8
  538. package/cjs/chunks/bundle-aMzX7VhJ.js.map +1 -0
  539. package/cjs/chunks/{bundle-uubJJzRW.js → bundle-ac8CNkHD.js} +1 -1
  540. package/cjs/chunks/bundle-ac8CNkHD.js.map +1 -0
  541. package/cjs/chunks/{bundle-3-zCFAsZ.js → bundle-cTA4XRQz.js} +3 -3
  542. package/cjs/chunks/{bundle-3-zCFAsZ.js.map → bundle-cTA4XRQz.js.map} +1 -1
  543. package/cjs/chunks/{bundle-YxnuYJcD.js → bundle-cjPeUrcf.js} +1 -1
  544. package/cjs/chunks/bundle-cjPeUrcf.js.map +1 -0
  545. package/cjs/chunks/{bundle-08DJamJs.js → bundle-cuXn941P.js} +2 -1
  546. package/cjs/chunks/bundle-cuXn941P.js.map +1 -0
  547. package/cjs/chunks/{bundle-hCR6GZHZ.js → bundle-dRMOPP7T.js} +4 -4
  548. package/{chunks/bundle-jamufWw7.js.map → cjs/chunks/bundle-dRMOPP7T.js.map} +1 -1
  549. package/cjs/chunks/{bundle-xv7LjcKq.js → bundle-gKfBWs5Z.js} +1 -1
  550. package/cjs/chunks/bundle-gKfBWs5Z.js.map +1 -0
  551. package/cjs/chunks/{bundle-LFW-mAQF.js → bundle-h40wCyHM.js} +1 -1
  552. package/cjs/chunks/bundle-h40wCyHM.js.map +1 -0
  553. package/cjs/chunks/{bundle-Dy4KUUCa.js → bundle-hlXVvUFU.js} +1 -9
  554. package/cjs/chunks/bundle-hlXVvUFU.js.map +1 -0
  555. package/cjs/chunks/{bundle-mvH436V0.js → bundle-jL6J2ZGE.js} +1 -1
  556. package/cjs/chunks/bundle-jL6J2ZGE.js.map +1 -0
  557. package/cjs/chunks/{bundle-WWYVAaVT.js → bundle-kp4rHxFj.js} +3 -3
  558. package/cjs/chunks/bundle-kp4rHxFj.js.map +1 -0
  559. package/cjs/chunks/{bundle-lHnGN-3L.js → bundle-l18lIHqV.js} +1 -1
  560. package/cjs/chunks/bundle-l18lIHqV.js.map +1 -0
  561. package/cjs/chunks/{bundle-uBPLEBjK.js → bundle-mCVRGUkl.js} +2 -2
  562. package/cjs/chunks/bundle-mCVRGUkl.js.map +1 -0
  563. package/cjs/chunks/{bundle-Kwa0c8dM.js → bundle-mPK9VGR0.js} +1 -1
  564. package/cjs/chunks/bundle-mPK9VGR0.js.map +1 -0
  565. package/cjs/chunks/{bundle-qjc3EF_B.js → bundle-mYCCMkSO.js} +1 -1
  566. package/cjs/chunks/bundle-mYCCMkSO.js.map +1 -0
  567. package/cjs/chunks/{bundle-zuVbTz4t.js → bundle-nFCXCRnQ.js} +2 -2
  568. package/cjs/chunks/bundle-nFCXCRnQ.js.map +1 -0
  569. package/cjs/chunks/bundle-naQEIYGP.js +69 -0
  570. package/cjs/chunks/bundle-naQEIYGP.js.map +1 -0
  571. package/cjs/chunks/{bundle-om7V4Kmd.js → bundle-oMHrTlRN.js} +3 -3
  572. package/cjs/chunks/bundle-oMHrTlRN.js.map +1 -0
  573. package/cjs/chunks/{bundle-gjgpE5zc.js → bundle-p2ei7o2m.js} +11 -11
  574. package/cjs/chunks/{bundle-gjgpE5zc.js.map → bundle-p2ei7o2m.js.map} +1 -1
  575. package/cjs/chunks/{bundle-FHJHaFw9.js → bundle-pnCKgq1p.js} +11 -56
  576. package/cjs/chunks/bundle-pnCKgq1p.js.map +1 -0
  577. package/cjs/chunks/{bundle-4ndIl1vM.js → bundle-pnXfU14e.js} +8 -8
  578. package/cjs/chunks/{bundle-4ndIl1vM.js.map → bundle-pnXfU14e.js.map} +1 -1
  579. package/cjs/chunks/{bundle-ubmIpm9y.js → bundle-qTpNvbyy.js} +1 -1
  580. package/cjs/chunks/{bundle-ubmIpm9y.js.map → bundle-qTpNvbyy.js.map} +1 -1
  581. package/cjs/chunks/{bundle-A_nlAok6.js → bundle-smspHY3g.js} +10 -10
  582. package/cjs/chunks/bundle-smspHY3g.js.map +1 -0
  583. package/cjs/chunks/{bundle-49TaYIAY.js → bundle-szNiJOoj.js} +3 -3
  584. package/cjs/chunks/bundle-szNiJOoj.js.map +1 -0
  585. package/cjs/chunks/{bundle-BMB3xh2i.js → bundle-tlScTb1q.js} +1 -1
  586. package/cjs/chunks/bundle-tlScTb1q.js.map +1 -0
  587. package/cjs/chunks/{bundle-eg9jnWPm.js → bundle-ttLl6tqv.js} +1 -1
  588. package/cjs/chunks/{bundle-eg9jnWPm.js.map → bundle-ttLl6tqv.js.map} +1 -1
  589. package/cjs/chunks/{bundle-hzGTyicd.js → bundle-v-iEVf7X.js} +5 -14
  590. package/cjs/chunks/{bundle-hzGTyicd.js.map → bundle-v-iEVf7X.js.map} +1 -1
  591. package/cjs/chunks/{bundle-Z6FnnPza.js → bundle-vN6Le9sy.js} +1 -1
  592. package/cjs/chunks/bundle-vN6Le9sy.js.map +1 -0
  593. package/cjs/chunks/{bundle-m_0K8NXX.js → bundle-vx2itBKI.js} +1 -1
  594. package/cjs/chunks/bundle-vx2itBKI.js.map +1 -0
  595. package/cjs/chunks/{bundle-o2O3PYyl.js → bundle-w450_AIz.js} +16 -20
  596. package/cjs/chunks/{bundle-o2O3PYyl.js.map → bundle-w450_AIz.js.map} +1 -1
  597. package/cjs/chunks/{bundle-0TRHdH1v.js → bundle-wKMTgv_N.js} +2 -2
  598. package/cjs/chunks/{bundle-0TRHdH1v.js.map → bundle-wKMTgv_N.js.map} +1 -1
  599. package/cjs/chunks/{bundle-Ok99sReN.js → bundle-wVlRBt78.js} +1 -1
  600. package/cjs/chunks/bundle-wVlRBt78.js.map +1 -0
  601. package/cjs/chunks/{bundle-3MlXHMIm.js → bundle-x15u4MXa.js} +8 -20
  602. package/cjs/chunks/bundle-x15u4MXa.js.map +1 -0
  603. package/cjs/chunks/{bundle-1WCZv5Jt.js → bundle-y9eM9Vz6.js} +4 -4
  604. package/cjs/chunks/bundle-y9eM9Vz6.js.map +1 -0
  605. package/cjs/chunks/{bundle-oLo1K2bf.js → bundle-zC9tSqim.js} +10 -10
  606. package/cjs/chunks/bundle-zC9tSqim.js.map +1 -0
  607. package/cjs/chunks/{bundle-OlL6NpZd.js → bundle-zKwOBTKD.js} +6 -13
  608. package/cjs/chunks/bundle-zKwOBTKD.js.map +1 -0
  609. package/cjs/hooks/useModal.js +9 -9
  610. package/cjs/index.js +128 -103
  611. package/cjs/index.js.map +1 -1
  612. package/cjs/pubSub/topics.js +1 -1
  613. package/cjs/sendbirdSelectors.js +2 -2
  614. package/cjs/ui/Accordion.js +3 -3
  615. package/cjs/ui/AccordionGroup.js +2 -2
  616. package/cjs/ui/AdminMessage.js +3 -3
  617. package/cjs/ui/Avatar.js +4 -4
  618. package/cjs/ui/Badge.js +5 -5
  619. package/cjs/ui/BottomSheet.js +9 -9
  620. package/cjs/ui/Button.js +3 -3
  621. package/cjs/ui/ChannelAvatar.js +5 -5
  622. package/cjs/ui/ConnectionStatus.js +6 -6
  623. package/cjs/ui/ContextMenu.js +6 -6
  624. package/cjs/ui/DateSeparator.js +4 -4
  625. package/cjs/ui/EmojiReactions.js +16 -16
  626. package/cjs/ui/FileMessageItemBody.js +8 -8
  627. package/cjs/ui/FileViewer.js +15 -15
  628. package/cjs/ui/Icon.js +2 -2
  629. package/cjs/ui/IconButton.js +1 -1
  630. package/cjs/ui/ImageRenderer.js +2 -2
  631. package/cjs/ui/Input.js +3 -3
  632. package/cjs/ui/Label.js +3 -3
  633. package/cjs/ui/LinkLabel.js +3 -3
  634. package/cjs/ui/Loader.js +2 -2
  635. package/cjs/ui/MentionLabel.js +13 -13
  636. package/cjs/ui/MentionUserLabel.js +1 -1
  637. package/cjs/ui/MessageContent.js +34 -34
  638. package/cjs/ui/MessageInput/hooks/usePaste.js +5 -5
  639. package/cjs/ui/MessageInput.js +15 -15
  640. package/cjs/ui/MessageItemMenu.js +10 -10
  641. package/cjs/ui/MessageItemReactionMenu.js +9 -9
  642. package/cjs/ui/MessageSearchFileItem.js +14 -14
  643. package/cjs/ui/MessageSearchItem.js +11 -11
  644. package/cjs/ui/MessageStatus.js +12 -12
  645. package/cjs/ui/MobileFeedbackMenu.js +9 -9
  646. package/cjs/ui/Modal.js +8 -8
  647. package/cjs/ui/MutedAvatarOverlay.js +2 -2
  648. package/cjs/ui/OGMessageItemBody.js +16 -16
  649. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  650. package/cjs/ui/OpenChannelAvatar.js +8 -8
  651. package/cjs/ui/OpenchannelConversationHeader.js +8 -8
  652. package/cjs/ui/OpenchannelFileMessage.js +18 -18
  653. package/cjs/ui/OpenchannelOGMessage.js +20 -20
  654. package/cjs/ui/OpenchannelThumbnailMessage.js +17 -17
  655. package/cjs/ui/OpenchannelUserMessage.js +18 -18
  656. package/cjs/ui/PlaceHolder.js +6 -6
  657. package/cjs/ui/PlaybackTime.js +3 -3
  658. package/cjs/ui/QuoteMessage.js +9 -9
  659. package/cjs/ui/QuoteMessageInput.js +9 -9
  660. package/cjs/ui/ReactionBadge.js +3 -3
  661. package/cjs/ui/ReactionButton.js +4 -4
  662. package/cjs/ui/SortByRow.js +2 -2
  663. package/cjs/ui/TextButton.js +2 -2
  664. package/cjs/ui/TextMessageItemBody.js +16 -16
  665. package/cjs/ui/ThreadReplies.js +8 -8
  666. package/cjs/ui/ThumbnailMessageItemBody.js +7 -7
  667. package/cjs/ui/Toggle.js +1 -1
  668. package/cjs/ui/Tooltip.js +3 -3
  669. package/cjs/ui/TooltipWrapper.js +1 -1
  670. package/cjs/ui/TypingIndicatorBubble.js +4 -4
  671. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  672. package/cjs/ui/UserListItem.js +14 -14
  673. package/cjs/ui/UserProfile.js +10 -10
  674. package/cjs/ui/VoiceMessageInput.js +9 -9
  675. package/cjs/ui/VoiceMessageItemBody.js +10 -10
  676. package/cjs/ui/Word.js +17 -37
  677. package/cjs/ui/Word.js.map +1 -1
  678. package/cjs/useSendbirdStateContext.js +1 -1
  679. package/cjs/utils/message/isVoiceMessage.js +3 -3
  680. package/cjs/withSendbird.js +1 -1
  681. package/dist/index.css +71 -85
  682. package/dist/index.css.map +1 -1
  683. package/hooks/useModal.js +10 -10
  684. package/index.js +127 -102
  685. package/index.js.map +1 -1
  686. package/package.json +202 -4
  687. package/pubSub/topics.js +1 -1
  688. package/sendbirdSelectors.js +2 -2
  689. package/types/lib/hooks/useConnect/connect.d.ts +1 -1
  690. package/types/modules/ChannelList/components/ChannelListUI/index.d.ts +4 -5
  691. package/types/modules/ChannelList/components/ChannelPreview/index.d.ts +4 -12
  692. package/types/modules/ChannelList/components/ChannelPreviewAction.d.ts +2 -9
  693. package/types/modules/GroupChannel/components/GroupChannelUI/GroupChannelUIView.d.ts +1 -1
  694. package/types/modules/GroupChannel/components/SuggestedReplies/index.d.ts +1 -1
  695. package/types/modules/GroupChannel/context/GroupChannelProvider.d.ts +2 -1
  696. package/types/modules/GroupChannelList/components/GroupChannelListItem/GroupChannelListItemView.d.ts +11 -9
  697. package/types/modules/GroupChannelList/components/GroupChannelListItem/index.d.ts +2 -13
  698. package/types/modules/GroupChannelList/components/GroupChannelListUI/GroupChannelListUIView.d.ts +1 -0
  699. package/types/modules/GroupChannelList/components/GroupChannelListUI/index.d.ts +3 -5
  700. package/types/modules/GroupChannelList/components/GroupChannelPreviewAction.d.ts +4 -4
  701. package/types/ui/Label/stringSet.d.ts +1 -0
  702. package/types/utils/consts.d.ts +2 -0
  703. package/ui/Accordion.js +3 -3
  704. package/ui/AccordionGroup.js +2 -2
  705. package/ui/AdminMessage.js +3 -3
  706. package/ui/Avatar.js +4 -4
  707. package/ui/Badge.js +5 -5
  708. package/ui/BottomSheet.js +9 -9
  709. package/ui/Button.js +3 -3
  710. package/ui/ChannelAvatar.js +5 -5
  711. package/ui/ConnectionStatus.js +6 -6
  712. package/ui/ContextMenu.js +6 -6
  713. package/ui/DateSeparator.js +4 -4
  714. package/ui/EmojiReactions.js +16 -16
  715. package/ui/FileMessageItemBody.js +8 -8
  716. package/ui/FileViewer.js +15 -15
  717. package/ui/Icon.js +2 -2
  718. package/ui/IconButton.js +1 -1
  719. package/ui/ImageRenderer.js +2 -2
  720. package/ui/Input.js +3 -3
  721. package/ui/Label.js +3 -3
  722. package/ui/LinkLabel.js +3 -3
  723. package/ui/Loader.js +2 -2
  724. package/ui/MentionLabel.js +13 -13
  725. package/ui/MentionUserLabel.js +1 -1
  726. package/ui/MessageContent.js +34 -34
  727. package/ui/MessageInput/hooks/usePaste.js +5 -5
  728. package/ui/MessageInput.js +15 -15
  729. package/ui/MessageItemMenu.js +10 -10
  730. package/ui/MessageItemReactionMenu.js +9 -9
  731. package/ui/MessageSearchFileItem.js +14 -14
  732. package/ui/MessageSearchItem.js +11 -11
  733. package/ui/MessageStatus.js +12 -12
  734. package/ui/MobileFeedbackMenu.js +9 -9
  735. package/ui/Modal.js +8 -8
  736. package/ui/MutedAvatarOverlay.js +2 -2
  737. package/ui/OGMessageItemBody.js +16 -16
  738. package/ui/OpenChannelAdminMessage.js +3 -3
  739. package/ui/OpenChannelAvatar.js +8 -8
  740. package/ui/OpenchannelConversationHeader.js +8 -8
  741. package/ui/OpenchannelFileMessage.js +18 -18
  742. package/ui/OpenchannelOGMessage.js +20 -20
  743. package/ui/OpenchannelThumbnailMessage.js +17 -17
  744. package/ui/OpenchannelUserMessage.js +18 -18
  745. package/ui/PlaceHolder.js +6 -6
  746. package/ui/PlaybackTime.js +3 -3
  747. package/ui/QuoteMessage.js +9 -9
  748. package/ui/QuoteMessageInput.js +9 -9
  749. package/ui/ReactionBadge.js +3 -3
  750. package/ui/ReactionButton.js +4 -4
  751. package/ui/SortByRow.js +2 -2
  752. package/ui/TextButton.js +2 -2
  753. package/ui/TextMessageItemBody.js +16 -16
  754. package/ui/ThreadReplies.js +8 -8
  755. package/ui/ThumbnailMessageItemBody.js +7 -7
  756. package/ui/Toggle.js +1 -1
  757. package/ui/Tooltip.js +3 -3
  758. package/ui/TooltipWrapper.js +1 -1
  759. package/ui/TypingIndicatorBubble.js +4 -4
  760. package/ui/UnknownMessageItemBody.js +7 -7
  761. package/ui/UserListItem.js +14 -14
  762. package/ui/UserProfile.js +10 -10
  763. package/ui/VoiceMessageInput.js +9 -9
  764. package/ui/VoiceMessageItemBody.js +10 -10
  765. package/ui/Word.js +17 -37
  766. package/ui/Word.js.map +1 -1
  767. package/useSendbirdStateContext.js +1 -1
  768. package/utils/message/isVoiceMessage.js +3 -3
  769. package/withSendbird.js +1 -1
  770. package/chunks/bundle--4gDKFyU.js.map +0 -1
  771. package/chunks/bundle--M9av9I5.js.map +0 -1
  772. package/chunks/bundle-0Pl6hdf0.js.map +0 -1
  773. package/chunks/bundle-1XQGq5tE.js.map +0 -1
  774. package/chunks/bundle-2aZMC1gn.js.map +0 -1
  775. package/chunks/bundle-3hGhEhNx.js.map +0 -1
  776. package/chunks/bundle-4JVMIRVC.js.map +0 -1
  777. package/chunks/bundle-4ab6nIKe.js.map +0 -1
  778. package/chunks/bundle-5cvB_UbP.js.map +0 -1
  779. package/chunks/bundle-5x-SH0ln.js.map +0 -1
  780. package/chunks/bundle-72sPkBu4.js.map +0 -1
  781. package/chunks/bundle-7RyEqo9-.js.map +0 -1
  782. package/chunks/bundle-92kzAxsw.js.map +0 -1
  783. package/chunks/bundle-A9vhM7uK.js.map +0 -1
  784. package/chunks/bundle-AAE0evYg.js.map +0 -1
  785. package/chunks/bundle-Dpt_A2Sv.js.map +0 -1
  786. package/chunks/bundle-FqjGVIIM.js.map +0 -1
  787. package/chunks/bundle-K3gy6I7U.js.map +0 -1
  788. package/chunks/bundle-KwnXXB-s.js.map +0 -1
  789. package/chunks/bundle-NFkyRDpH.js.map +0 -1
  790. package/chunks/bundle-Npg4qQQD.js.map +0 -1
  791. package/chunks/bundle-OYvgeZlT.js.map +0 -1
  792. package/chunks/bundle-QUJKjMCy.js.map +0 -1
  793. package/chunks/bundle-R5n5AVj8.js.map +0 -1
  794. package/chunks/bundle-RVuTQS9f.js.map +0 -1
  795. package/chunks/bundle-RzWTDZDo.js.map +0 -1
  796. package/chunks/bundle-SI8TVXcF.js.map +0 -1
  797. package/chunks/bundle-T7ZknK5s.js.map +0 -1
  798. package/chunks/bundle-TEGbbRiE.js.map +0 -1
  799. package/chunks/bundle-TlXrstq8.js.map +0 -1
  800. package/chunks/bundle-U_0F9z8c.js.map +0 -1
  801. package/chunks/bundle-WSNk7jGd.js.map +0 -1
  802. package/chunks/bundle-YBExtK73.js.map +0 -1
  803. package/chunks/bundle-YetIEB9o.js.map +0 -1
  804. package/chunks/bundle-b9LCaMtu.js.map +0 -1
  805. package/chunks/bundle-bAvA5Udb.js.map +0 -1
  806. package/chunks/bundle-brky8TnE.js.map +0 -1
  807. package/chunks/bundle-buXsGWIu.js.map +0 -1
  808. package/chunks/bundle-dMLt2ro9.js.map +0 -1
  809. package/chunks/bundle-e5lT4U6_.js.map +0 -1
  810. package/chunks/bundle-eGLEfc7r.js.map +0 -1
  811. package/chunks/bundle-fgZJ6wUh.js.map +0 -1
  812. package/chunks/bundle-iXzQekqM.js +0 -120
  813. package/chunks/bundle-iXzQekqM.js.map +0 -1
  814. package/chunks/bundle-jamufWw7.js +0 -230
  815. package/chunks/bundle-jiwqHI-2.js.map +0 -1
  816. package/chunks/bundle-kP3o9aRv.js.map +0 -1
  817. package/chunks/bundle-l7rDKrwx.js.map +0 -1
  818. package/chunks/bundle-laq4Cm2M.js.map +0 -1
  819. package/chunks/bundle-ncF5Vx6b.js.map +0 -1
  820. package/chunks/bundle-pffuo01q.js.map +0 -1
  821. package/chunks/bundle-qI3fzrBt.js.map +0 -1
  822. package/chunks/bundle-rOhl9tWD.js.map +0 -1
  823. package/chunks/bundle-szN3I4WN.js +0 -199
  824. package/chunks/bundle-veNmMfAH.js.map +0 -1
  825. package/chunks/bundle-wICBtdE1.js.map +0 -1
  826. package/chunks/bundle-zOkaSZl3.js.map +0 -1
  827. package/chunks/bundle-zqJVlTpN.js.map +0 -1
  828. package/cjs/chunks/bundle--t70CDfb.js.map +0 -1
  829. package/cjs/chunks/bundle--yF0PJ6E.js.map +0 -1
  830. package/cjs/chunks/bundle--zfwoPVm.js.map +0 -1
  831. package/cjs/chunks/bundle-08DJamJs.js.map +0 -1
  832. package/cjs/chunks/bundle-0LtiaxJx.js.map +0 -1
  833. package/cjs/chunks/bundle-1CojrMYd.js.map +0 -1
  834. package/cjs/chunks/bundle-1WCZv5Jt.js.map +0 -1
  835. package/cjs/chunks/bundle-3MlXHMIm.js.map +0 -1
  836. package/cjs/chunks/bundle-49TaYIAY.js.map +0 -1
  837. package/cjs/chunks/bundle-4QpLkquA.js.map +0 -1
  838. package/cjs/chunks/bundle-5E4_BBHS.js.map +0 -1
  839. package/cjs/chunks/bundle-8XvxyLQN.js.map +0 -1
  840. package/cjs/chunks/bundle-A7TvCVbX.js.map +0 -1
  841. package/cjs/chunks/bundle-A_nlAok6.js.map +0 -1
  842. package/cjs/chunks/bundle-BMB3xh2i.js.map +0 -1
  843. package/cjs/chunks/bundle-BrOubGHT.js.map +0 -1
  844. package/cjs/chunks/bundle-DgcTM2HW.js.map +0 -1
  845. package/cjs/chunks/bundle-Dy4KUUCa.js.map +0 -1
  846. package/cjs/chunks/bundle-E1H3DQtB.js.map +0 -1
  847. package/cjs/chunks/bundle-EsJltkVm.js.map +0 -1
  848. package/cjs/chunks/bundle-FHJHaFw9.js.map +0 -1
  849. package/cjs/chunks/bundle-H3iUL9jU.js.map +0 -1
  850. package/cjs/chunks/bundle-KloNxGOC.js.map +0 -1
  851. package/cjs/chunks/bundle-Kwa0c8dM.js.map +0 -1
  852. package/cjs/chunks/bundle-LFW-mAQF.js.map +0 -1
  853. package/cjs/chunks/bundle-MF7Mgc0Z.js +0 -204
  854. package/cjs/chunks/bundle-MF7Mgc0Z.js.map +0 -1
  855. package/cjs/chunks/bundle-Ne8lK39C.js.map +0 -1
  856. package/cjs/chunks/bundle-Ok99sReN.js.map +0 -1
  857. package/cjs/chunks/bundle-OlL6NpZd.js.map +0 -1
  858. package/cjs/chunks/bundle-Pcl0nMWb.js.map +0 -1
  859. package/cjs/chunks/bundle-QU7zbepl.js.map +0 -1
  860. package/cjs/chunks/bundle-Rs2C3Gv0.js +0 -123
  861. package/cjs/chunks/bundle-Rs2C3Gv0.js.map +0 -1
  862. package/cjs/chunks/bundle-UmkcFSLj.js.map +0 -1
  863. package/cjs/chunks/bundle-V4Gdewny.js.map +0 -1
  864. package/cjs/chunks/bundle-W789Mnl2.js.map +0 -1
  865. package/cjs/chunks/bundle-WWYVAaVT.js.map +0 -1
  866. package/cjs/chunks/bundle-X6IgWOv5.js.map +0 -1
  867. package/cjs/chunks/bundle-Y4f3TKLP.js.map +0 -1
  868. package/cjs/chunks/bundle-YvcRCGBd.js.map +0 -1
  869. package/cjs/chunks/bundle-YxnuYJcD.js.map +0 -1
  870. package/cjs/chunks/bundle-Z6FnnPza.js.map +0 -1
  871. package/cjs/chunks/bundle-ZpJLlgNE.js.map +0 -1
  872. package/cjs/chunks/bundle-_vyDAzUb.js.map +0 -1
  873. package/cjs/chunks/bundle-a3DGXthf.js.map +0 -1
  874. package/cjs/chunks/bundle-aQOJcXCO.js.map +0 -1
  875. package/cjs/chunks/bundle-bNp99ZTk.js.map +0 -1
  876. package/cjs/chunks/bundle-dSLJZu7j.js.map +0 -1
  877. package/cjs/chunks/bundle-dwD6gaHJ.js.map +0 -1
  878. package/cjs/chunks/bundle-hlZ6VwkW.js.map +0 -1
  879. package/cjs/chunks/bundle-jI1VVAdg.js.map +0 -1
  880. package/cjs/chunks/bundle-jP-1bn23.js.map +0 -1
  881. package/cjs/chunks/bundle-kLhcU0Bg.js.map +0 -1
  882. package/cjs/chunks/bundle-kYfqAttM.js.map +0 -1
  883. package/cjs/chunks/bundle-lHnGN-3L.js.map +0 -1
  884. package/cjs/chunks/bundle-mNGciuzV.js.map +0 -1
  885. package/cjs/chunks/bundle-m_0K8NXX.js.map +0 -1
  886. package/cjs/chunks/bundle-mk0LQISG.js.map +0 -1
  887. package/cjs/chunks/bundle-mvH436V0.js.map +0 -1
  888. package/cjs/chunks/bundle-oLo1K2bf.js.map +0 -1
  889. package/cjs/chunks/bundle-om7V4Kmd.js.map +0 -1
  890. package/cjs/chunks/bundle-qLmNEs3L.js +0 -232
  891. package/cjs/chunks/bundle-qXInmu7W.js.map +0 -1
  892. package/cjs/chunks/bundle-qjc3EF_B.js.map +0 -1
  893. package/cjs/chunks/bundle-r9E_mzs-.js.map +0 -1
  894. package/cjs/chunks/bundle-uBPLEBjK.js.map +0 -1
  895. package/cjs/chunks/bundle-uubJJzRW.js.map +0 -1
  896. package/cjs/chunks/bundle-xv7LjcKq.js.map +0 -1
  897. package/cjs/chunks/bundle-y7MhfXfx.js.map +0 -1
  898. package/cjs/chunks/bundle-zuVbTz4t.js.map +0 -1
package/App.js CHANGED
@@ -1,121 +1,95 @@
1
- import React__default, { useEffect, useState, useRef, useContext } from 'react';
1
+ import React__default, { useState, useEffect } from 'react';
2
2
  import { SendbirdProvider } from './SendbirdProvider.js';
3
- import { u as useMediaQueryContext } from './chunks/bundle-1XQGq5tE.js';
4
- import { _ as __assign, b as __awaiter, c as __generator } from './chunks/bundle-0vtSUcHY.js';
5
- import { u as useGroupChannelContext, G as GroupChannelProvider } from './chunks/bundle-d31Dx4g9.js';
6
- import { G as GroupChannelUIView } from './chunks/bundle-RVuTQS9f.js';
7
- import { G as GroupChannelHeaderView } from './chunks/bundle-Dpt_A2Sv.js';
8
- import { useIIFE, useGroupChannelHandler } from '@sendbird/uikit-tools';
9
- import { T as TypingIndicatorType } from './chunks/bundle-jamufWw7.js';
10
- import PlaceHolder, { PlaceHolderTypes } from './ui/PlaceHolder.js';
11
- import Icon, { IconTypes, IconColors } from './ui/Icon.js';
12
- import { useSendbirdStateContext } from './useSendbirdStateContext.js';
13
- import { g as getSuggestedReplies, Q as isSendableMessage } from './chunks/bundle-hrqkDKRD.js';
14
- import { i as isDisabledBecauseFrozen, a as isDisabledBecauseMuted, c as getComponentKeyFromMessage } from './chunks/bundle-pffuo01q.js';
15
- import { a as MessageView } from './chunks/bundle-veNmMfAH.js';
16
- import { a as FileViewerView } from './chunks/bundle-jiwqHI-2.js';
17
- import { a as RemoveMessageModalView } from './chunks/bundle-buXsGWIu.js';
18
- import { getMessagePartsInfo } from './Channel/utils/getMessagePartsInfo.js';
19
- import { U as UnreadCount } from './chunks/bundle-8OBG2Jrw.js';
20
- import { F as FrozenNotification } from './chunks/bundle-dMLt2ro9.js';
21
- import { S as SCROLL_BUFFER } from './chunks/bundle-e5lT4U6_.js';
22
- import { MessageProvider } from './Message/context.js';
23
- import TypingIndicatorBubble from './ui/TypingIndicatorBubble.js';
24
- import { M as MessageInputWrapperView } from './chunks/bundle-Edp-TIC7.js';
25
- import { L as LocalizationContext, u as useLocalization } from './chunks/bundle-zOkaSZl3.js';
26
- import { u as useVoicePlayerContext, b as ALL } from './chunks/bundle-KNG-9gh9.js';
27
- import './VoiceRecorder/context.js';
28
- import './chunks/bundle-RzWTDZDo.js';
29
- import './chunks/bundle-3hGhEhNx.js';
30
- import 'react-dom';
31
- import IconButton from './ui/IconButton.js';
32
- import './ui/Button.js';
33
- import { u as useGroupChannelListContext, G as GroupChannelListItemView, a as GroupChannelListProvider } from './chunks/bundle-szN3I4WN.js';
34
- import { G as GroupChannelListUIView } from './chunks/bundle-iXzQekqM.js';
35
- import ContextMenu, { MenuItems, MenuItem } from './ui/ContextMenu.js';
36
- import { L as LeaveGroupChannel } from './chunks/bundle-NFkyRDpH.js';
37
- import { d as getChannelTitle } from './chunks/bundle-9M3o3hPA.js';
38
- import { a as AddGroupChannelView } from './chunks/bundle-YBExtK73.js';
3
+ import { u as useMediaQueryContext } from './chunks/bundle-RjOfwRD9.js';
4
+ import { _ as __assign } from './chunks/bundle-bBs0-8AF.js';
5
+ import { GroupChannel } from './GroupChannel.js';
6
+ import { GroupChannelList } from './GroupChannelList.js';
39
7
  import Channel from './Channel.js';
40
8
  import ChannelList from './ChannelList.js';
41
9
  import ChannelSettings from './ChannelSettings.js';
42
10
  import MessageSearchPannel from './MessageSearch.js';
43
11
  import Thread from './Thread.js';
44
12
  import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
45
- import { u as uuidv4 } from './chunks/bundle-brky8TnE.js';
13
+ import { useSendbirdStateContext } from './useSendbirdStateContext.js';
14
+ import { u as uuidv4 } from './chunks/bundle-7128atOc.js';
15
+ import { u as useVoicePlayerContext, a as ALL } from './chunks/bundle-N_nx28TN.js';
16
+ import '@sendbird/uikit-tools';
46
17
  import './withSendbird.js';
47
18
  import 'css-vars-ponyfill';
48
- import './chunks/bundle-9wFvMqxF.js';
49
- import './chunks/bundle-wICBtdE1.js';
50
- import './chunks/bundle-YoiKtyRA.js';
19
+ import './chunks/bundle-46qOcsB3.js';
20
+ import './chunks/bundle-XL-KBWqW.js';
21
+ import './chunks/bundle-5rAtBp8F.js';
51
22
  import '@sendbird/chat';
52
23
  import '@sendbird/chat/openChannel';
53
- import './chunks/bundle-4ab6nIKe.js';
54
- import './chunks/bundle-qI3fzrBt.js';
55
- import './chunks/bundle-_NUeDv_m.js';
56
- import './chunks/bundle-eGLEfc7r.js';
57
- import './hooks/useModal.js';
58
- import './chunks/bundle-92kzAxsw.js';
59
- import './chunks/bundle-YOec1wfw.js';
24
+ import './chunks/bundle-RX3fBZMu.js';
60
25
  import './utils/message/getOutgoingMessageState.js';
61
- import './ui/MessageInput.js';
62
- import './chunks/bundle-K3gy6I7U.js';
63
- import './chunks/bundle-QUJKjMCy.js';
64
- import './chunks/bundle-fNYexgBr.js';
65
- import 'dompurify';
66
- import './chunks/bundle-72sPkBu4.js';
67
- import './chunks/bundle-5x-SH0ln.js';
68
- import './chunks/bundle--M9av9I5.js';
69
- import './chunks/bundle-2xEG_fol.js';
70
- import './chunks/bundle-laq4Cm2M.js';
71
- import './chunks/bundle-Xy9OskjJ.js';
72
- import './chunks/bundle-7RyEqo9-.js';
73
- import './ui/ImageRenderer.js';
74
- import './chunks/bundle-TEGbbRiE.js';
75
- import './Thread/context.js';
76
- import './chunks/bundle-X1ee5Xag.js';
77
- import './chunks/bundle-KwnXXB-s.js';
78
- import './chunks/bundle-QWYghVSN.js';
26
+ import './chunks/bundle-MYBkZ28K.js';
27
+ import './chunks/bundle-Rik09YnB.js';
28
+ import './VoiceRecorder/context.js';
29
+ import './chunks/bundle-wbu1BRph.js';
30
+ import './chunks/bundle-Z1D61u4a.js';
31
+ import './chunks/bundle-jKjzU1MT.js';
32
+ import './chunks/bundle-cqMRshaU.js';
33
+ import 'react-dom';
34
+ import './ui/IconButton.js';
35
+ import './ui/Button.js';
36
+ import './chunks/bundle-VC1JO5-p.js';
37
+ import './ui/Icon.js';
38
+ import './chunks/bundle-5FiMKfdx.js';
39
+ import './chunks/bundle-UxZ7Yk8Z.js';
40
+ import './hooks/useModal.js';
41
+ import './GroupChannel/context.js';
79
42
  import '@sendbird/chat/message';
80
- import './chunks/bundle-U_0F9z8c.js';
81
- import './Thread/context/types.js';
82
- import './chunks/bundle-SI8TVXcF.js';
83
- import './chunks/bundle-TlXrstq8.js';
84
- import './chunks/bundle-b9LCaMtu.js';
85
- import './chunks/bundle-OYvgeZlT.js';
86
- import './chunks/bundle-kP3o9aRv.js';
87
- import './chunks/bundle--4gDKFyU.js';
88
- import './Message/hooks/useDirtyGetMentions.js';
89
- import './Channel/hooks/useHandleUploadFiles.js';
90
- import './chunks/bundle-Y0R5tada.js';
91
- import './Channel/context.js';
92
- import './chunks/bundle-5cvB_UbP.js';
93
- import './chunks/bundle-IKRolu9P.js';
94
- import './Channel/hooks/useInitialMessagesFetch.js';
95
- import './chunks/bundle-T7ZknK5s.js';
96
- import './chunks/bundle-4JVMIRVC.js';
43
+ import './chunks/bundle-xHxKphkV.js';
44
+ import './chunks/bundle-etzT3I0G.js';
45
+ import './chunks/bundle-oesAmMyD.js';
46
+ import './chunks/bundle-pSagaLQn.js';
47
+ import './chunks/bundle-8M13Uq7P.js';
48
+ import './chunks/bundle-Lgn5J-2T.js';
49
+ import './chunks/bundle-7nI0MJOs.js';
50
+ import './GroupChannel/components/GroupChannelUI.js';
51
+ import './chunks/bundle-UXAf5PuY.js';
52
+ import './GroupChannel/components/TypingIndicator.js';
53
+ import './chunks/bundle-KUOX5P0q.js';
97
54
  import './ui/ConnectionStatus.js';
98
- import './Channel/components/MessageInput.js';
99
- import './ui/QuoteMessageInput.js';
100
- import './chunks/bundle-bAvA5Udb.js';
101
- import './VoicePlayer/useVoicePlayer.js';
102
- import './VoiceRecorder/useVoiceRecorder.js';
103
- import './chunks/bundle-1kYamWYQ.js';
104
- import './ui/PlaybackTime.js';
105
- import './ui/ProgressBar.js';
106
- import './ui/TextButton.js';
107
- import './ui/ChannelAvatar.js';
108
- import './chunks/bundle-R5n5AVj8.js';
109
- import './chunks/bundle-2aZMC1gn.js';
110
- import './chunks/bundle-A9vhM7uK.js';
55
+ import './ui/PlaceHolder.js';
111
56
  import './ui/Loader.js';
57
+ import './GroupChannel/components/GroupChannelHeader.js';
58
+ import './chunks/bundle-rwD6SAkU.js';
59
+ import './ui/ChannelAvatar.js';
60
+ import './chunks/bundle-zdgdWVyn.js';
61
+ import './ui/ImageRenderer.js';
62
+ import './chunks/bundle-XekDAFCE.js';
63
+ import './chunks/bundle-DDOXEDJp.js';
64
+ import './chunks/bundle-yGuAYhYN.js';
65
+ import './GroupChannel/components/MessageList.js';
66
+ import './GroupChannel/components/Message.js';
67
+ import './chunks/bundle-V1r4qRh7.js';
68
+ import './chunks/bundle-GM_JyB6p.js';
69
+ import './chunks/bundle-LG1mMxPr.js';
70
+ import './chunks/bundle-mPXz1Hjl.js';
71
+ import './Message/hooks/useDirtyGetMentions.js';
112
72
  import './ui/DateSeparator.js';
73
+ import './chunks/bundle-mN_8ZHp6.js';
74
+ import './ui/MessageInput.js';
75
+ import './chunks/bundle-ZfA8OpRJ.js';
76
+ import './chunks/bundle-Br-kF2rc.js';
77
+ import 'dompurify';
78
+ import './chunks/bundle-2atU-KVo.js';
79
+ import './chunks/bundle--rPLqx46.js';
80
+ import './chunks/bundle-8PbcZ5aj.js';
81
+ import './chunks/bundle-BvxbprFR.js';
113
82
  import './ui/MessageContent.js';
83
+ import './chunks/bundle-8C68O5Qm.js';
84
+ import './chunks/bundle-qxRcOzlA.js';
85
+ import './chunks/bundle-7RxHW-e9.js';
114
86
  import './ui/MessageItemMenu.js';
87
+ import './ui/ContextMenu.js';
115
88
  import './ui/SortByRow.js';
89
+ import './chunks/bundle-TPqzf5St.js';
116
90
  import './ui/MessageItemReactionMenu.js';
117
91
  import './ui/ReactionButton.js';
118
- import './chunks/bundle-AAE0evYg.js';
92
+ import './chunks/bundle-r8uICiMq.js';
119
93
  import './ui/EmojiReactions.js';
120
94
  import './ui/ReactionBadge.js';
121
95
  import './ui/BottomSheet.js';
@@ -126,42 +100,88 @@ import './ui/UserProfile.js';
126
100
  import './sendbirdSelectors.js';
127
101
  import './ui/Tooltip.js';
128
102
  import './ui/TooltipWrapper.js';
103
+ import './Message/context.js';
129
104
  import './ui/AdminMessage.js';
130
105
  import './ui/QuoteMessage.js';
131
- import './chunks/bundle-kNzGDcl1.js';
106
+ import './chunks/bundle-mGum5Avu.js';
107
+ import './chunks/bundle-tmygoDRK.js';
132
108
  import './ui/ThreadReplies.js';
133
109
  import './ui/OGMessageItemBody.js';
134
- import './chunks/bundle-zqJVlTpN.js';
110
+ import './chunks/bundle-9vFMqSQw.js';
135
111
  import './ui/MentionLabel.js';
136
112
  import './ui/LinkLabel.js';
137
113
  import './ui/TextMessageItemBody.js';
138
114
  import './ui/FileMessageItemBody.js';
139
- import './chunks/bundle-FqjGVIIM.js';
140
- import './chunks/bundle-7gnDs7-N.js';
141
- import './chunks/bundle-Npg4qQQD.js';
115
+ import './ui/TextButton.js';
116
+ import './chunks/bundle-jOlYtsGu.js';
117
+ import './chunks/bundle--ORA9L0f.js';
118
+ import './chunks/bundle-nrzV0hwh.js';
142
119
  import './ui/VoiceMessageItemBody.js';
120
+ import './ui/ProgressBar.js';
121
+ import './VoicePlayer/useVoicePlayer.js';
122
+ import './ui/PlaybackTime.js';
143
123
  import './ui/ThumbnailMessageItemBody.js';
144
124
  import './ui/UnknownMessageItemBody.js';
145
125
  import './ui/FeedbackIconButton.js';
146
126
  import './ui/MobileFeedbackMenu.js';
147
127
  import './Channel/components/MessageFeedbackModal.js';
148
128
  import './ui/Input.js';
149
- import './chunks/bundle-2lbcW98e.js';
150
- import './chunks/bundle-BnMLjoeD.js';
151
- import './chunks/bundle-ncF5Vx6b.js';
129
+ import './GroupChannel/components/SuggestedReplies.js';
130
+ import './GroupChannel/components/FileViewer.js';
131
+ import './chunks/bundle-J-eeHkE5.js';
132
+ import './GroupChannel/components/RemoveMessageModal.js';
133
+ import './chunks/bundle-JlL_734C.js';
134
+ import './chunks/bundle-OZuyNhMv.js';
135
+ import './Channel/utils/getMessagePartsInfo.js';
152
136
  import './Channel/utils/compareMessagesForGrouping.js';
153
- import './chunks/bundle--LjMBMp3.js';
154
- import './ui/Badge.js';
155
- import './ui/MentionUserLabel.js';
156
- import './chunks/bundle-0Pl6hdf0.js';
137
+ import './GroupChannel/components/UnreadCount.js';
138
+ import './GroupChannel/components/FrozenNotification.js';
139
+ import './ui/TypingIndicatorBubble.js';
140
+ import './GroupChannel/components/MessageInputWrapper.js';
141
+ import './chunks/bundle-VwgVuCHi.js';
142
+ import './GroupChannel/components/SuggestedMentionList.js';
143
+ import './ui/QuoteMessageInput.js';
144
+ import './VoiceRecorder/useVoiceRecorder.js';
145
+ import './chunks/bundle-9nrFshYX.js';
146
+ import './chunks/bundle-dlgSS-h4.js';
147
+ import './GroupChannelList/context.js';
148
+ import './GroupChannelList/components/GroupChannelListUI.js';
149
+ import './chunks/bundle--QWYYsI7.js';
150
+ import './GroupChannelList/components/GroupChannelListHeader.js';
157
151
  import './EditUserProfile.js';
158
152
  import './EditUserProfile/context.js';
159
153
  import './EditUserProfile/components/EditUserProfileUI.js';
154
+ import './GroupChannelList/components/GroupChannelPreviewAction.js';
155
+ import './GroupChannelList/components/GroupChannelListItem.js';
156
+ import './chunks/bundle-FVeeTX_F.js';
157
+ import './ui/Badge.js';
158
+ import './ui/MentionUserLabel.js';
159
+ import './GroupChannelList/components/AddGroupChannel.js';
160
+ import './chunks/bundle-67KZd0Wh.js';
160
161
  import './CreateChannel.js';
161
162
  import './CreateChannel/components/CreateChannelUI.js';
162
- import './chunks/bundle-rOhl9tWD.js';
163
+ import './chunks/bundle-opleCLJP.js';
163
164
  import './CreateChannel/components/InviteUsers.js';
164
165
  import './CreateChannel/components/SelectChannelType.js';
166
+ import './Channel/context.js';
167
+ import './chunks/bundle-F-lMyjp-.js';
168
+ import './chunks/bundle-7h36Ded4.js';
169
+ import './chunks/bundle-VhCdB2-c.js';
170
+ import './Channel/hooks/useInitialMessagesFetch.js';
171
+ import './chunks/bundle-Omjc0GuQ.js';
172
+ import './chunks/bundle-rTlMQK8Z.js';
173
+ import './Channel/components/ChannelUI.js';
174
+ import './Channel/components/ChannelHeader.js';
175
+ import './Channel/components/MessageList.js';
176
+ import './Channel/components/Message.js';
177
+ import './Channel/components/FileViewer.js';
178
+ import './Channel/components/RemoveMessageModal.js';
179
+ import './chunks/bundle-3DH6zZHH.js';
180
+ import './Channel/components/MessageInput.js';
181
+ import './chunks/bundle-BxGOQnDI.js';
182
+ import './ChannelList/components/ChannelListUI.js';
183
+ import './ChannelList/components/ChannelPreview.js';
184
+ import './ChannelList/components/AddChannel.js';
165
185
  import './ChannelSettings/components/ChannelSettingsUI.js';
166
186
  import './ChannelSettings/context.js';
167
187
  import './ChannelSettings/components/ChannelProfile.js';
@@ -169,296 +189,29 @@ import './ChannelSettings/components/EditDetailsModal.js';
169
189
  import './ChannelSettings/components/ModerationPanel.js';
170
190
  import './ui/Accordion.js';
171
191
  import './ui/AccordionGroup.js';
172
- import './chunks/bundle-YetIEB9o.js';
192
+ import './chunks/bundle-3f1my2Ir.js';
173
193
  import './ui/Toggle.js';
174
194
  import './ChannelSettings/components/UserListItem.js';
175
- import './chunks/bundle-2FXQWzCx.js';
195
+ import './chunks/bundle-samkISwY.js';
176
196
  import './ChannelSettings/components/LeaveChannel.js';
177
197
  import './ChannelSettings/components/UserPanel.js';
178
198
  import './MessageSearch/components/MessageSearchUI.js';
179
199
  import './MessageSearch/context.js';
180
200
  import './ui/MessageSearchItem.js';
181
201
  import './ui/MessageSearchFileItem.js';
202
+ import './Thread/context.js';
203
+ import './Thread/context/types.js';
182
204
  import './Thread/components/ThreadUI.js';
183
205
  import './Thread/components/ParentMessageInfo.js';
184
- import './chunks/bundle-WSNk7jGd.js';
206
+ import './chunks/bundle-7cTKRmbK.js';
185
207
  import './Thread/components/ParentMessageInfoItem.js';
208
+ import './chunks/bundle--XsvJ3hU.js';
186
209
  import './Thread/components/ThreadHeader.js';
187
210
  import './Thread/components/ThreadList.js';
188
211
  import './Thread/components/ThreadListItem.js';
189
212
  import 'date-fns';
190
-
191
- var GroupChannelHeader = function (_a) {
192
- var className = _a.className;
193
- var context = useGroupChannelContext();
194
- return (React__default.createElement(GroupChannelHeaderView, __assign({}, context, { className: className, currentChannel: context.currentChannel })));
195
- };
196
-
197
- var FileViewer = function (props) {
198
- var deleteMessage = useGroupChannelContext().deleteMessage;
199
- return React__default.createElement(FileViewerView, __assign({}, props, { deleteMessage: deleteMessage }));
200
- };
201
-
202
- var RemoveMessageModal = function (props) {
203
- var deleteMessage = useGroupChannelContext().deleteMessage;
204
- return React__default.createElement(RemoveMessageModalView, __assign({}, props, { deleteMessage: deleteMessage }));
205
- };
206
-
207
- var Message = function (props) {
208
- var _a = useSendbirdStateContext(), config = _a.config, emojiManager = _a.emojiManager;
209
- var _b = useGroupChannelContext(), loading = _b.loading, currentChannel = _b.currentChannel, animatedMessageId = _b.animatedMessageId, setAnimatedMessageId = _b.setAnimatedMessageId, scrollToMessage = _b.scrollToMessage, replyType = _b.replyType, threadReplySelectType = _b.threadReplySelectType, isReactionEnabled = _b.isReactionEnabled, toggleReaction = _b.toggleReaction, nicknamesMap = _b.nicknamesMap, setQuoteMessage = _b.setQuoteMessage, renderUserMentionItem = _b.renderUserMentionItem, onQuoteMessageClick = _b.onQuoteMessageClick, onReplyInThreadClick = _b.onReplyInThreadClick, onMessageAnimated = _b.onMessageAnimated, messages = _b.messages, updateUserMessage = _b.updateUserMessage, sendUserMessage = _b.sendUserMessage, resendMessage = _b.resendMessage, deleteMessage = _b.deleteMessage;
210
- var message = props.message;
211
- var initialized = !loading && Boolean(currentChannel);
212
- var shouldRenderSuggestedReplies = useIIFE(function () {
213
- var _a, _b;
214
- if (!((_a = config === null || config === void 0 ? void 0 : config.groupChannel) === null || _a === void 0 ? void 0 : _a.enableSuggestedReplies))
215
- return false;
216
- if (message.messageId !== ((_b = currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.lastMessage) === null || _b === void 0 ? void 0 : _b.messageId))
217
- return false;
218
- if (getSuggestedReplies(message).length === 0)
219
- return false;
220
- var lastMessage = messages[messages.length - 1];
221
- if (lastMessage && isSendableMessage(lastMessage) && lastMessage.sendingStatus !== 'succeeded')
222
- return false;
223
- return true;
224
- });
225
- return (React__default.createElement(MessageView, __assign({}, props, { channel: currentChannel, emojiContainer: emojiManager.emojiContainer, editInputDisabled: !initialized || isDisabledBecauseFrozen(currentChannel) || isDisabledBecauseMuted(currentChannel) || !config.isOnline, shouldRenderSuggestedReplies: shouldRenderSuggestedReplies, isReactionEnabled: isReactionEnabled, replyType: replyType, threadReplySelectType: threadReplySelectType, nicknamesMap: nicknamesMap, renderUserMentionItem: renderUserMentionItem, scrollToMessage: scrollToMessage, toggleReaction: toggleReaction, setQuoteMessage: setQuoteMessage, onQuoteMessageClick: onQuoteMessageClick, onReplyInThreadClick: onReplyInThreadClick, sendUserMessage: sendUserMessage, updateUserMessage: updateUserMessage, resendMessage: resendMessage, deleteMessage: deleteMessage, animatedMessageId: animatedMessageId, setAnimatedMessageId: setAnimatedMessageId, onMessageAnimated: onMessageAnimated, renderFileViewer: function (props) { return React__default.createElement(FileViewer, __assign({}, props)); }, renderRemoveMessageModal: function (props) { return React__default.createElement(RemoveMessageModal, __assign({}, props)); } })));
226
- };
227
-
228
- function useScrollBehavior() {
229
- var _a = useGroupChannelContext(), scrollRef = _a.scrollRef, _b = _a.scrollBehavior, scrollBehavior = _b === void 0 ? 'auto' : _b;
230
- useEffect(function () {
231
- if (scrollRef.current) {
232
- scrollRef.current.style.scrollBehavior = scrollBehavior;
233
- }
234
- }, [scrollRef.current]);
235
- return null;
236
- }
237
-
238
- var MessageList = function (_a) {
239
- var _b, _c, _d, _e, _f;
240
- var _g = _a.className, className = _g === void 0 ? '' : _g, renderMessage = _a.renderMessage, renderPlaceholderEmpty = _a.renderPlaceholderEmpty, renderCustomSeparator = _a.renderCustomSeparator, renderPlaceholderLoader = _a.renderPlaceholderLoader, renderFrozenNotification = _a.renderFrozenNotification;
241
- var _h = useGroupChannelContext(), channelUrl = _h.channelUrl, hasNext = _h.hasNext, loading = _h.loading, messages = _h.messages, newMessages = _h.newMessages, scrollToBottom = _h.scrollToBottom, isScrollBottomReached = _h.isScrollBottomReached, isMessageGroupingEnabled = _h.isMessageGroupingEnabled, scrollRef = _h.scrollRef, scrollDistanceFromBottomRef = _h.scrollDistanceFromBottomRef, currentChannel = _h.currentChannel, replyType = _h.replyType, scrollPubSub = _h.scrollPubSub;
242
- var store = useSendbirdStateContext();
243
- var _j = useState(), unreadSinceDate = _j[0], setUnreadSinceDate = _j[1];
244
- useScrollBehavior();
245
- useEffect(function () {
246
- if (isScrollBottomReached) {
247
- setUnreadSinceDate(undefined);
248
- }
249
- else {
250
- setUnreadSinceDate(new Date());
251
- }
252
- }, [isScrollBottomReached]);
253
- /**
254
- * 1. Move the message list scroll
255
- * when each message's height is changed by `reactions` OR `showEdit`
256
- * 2. Keep the scrollBottom value after fetching new message list
257
- */
258
- var onMessageContentSizeChanged = function (isBottomMessageAffected) {
259
- if (isBottomMessageAffected === void 0) { isBottomMessageAffected = false; }
260
- var elem = scrollRef.current;
261
- if (elem) {
262
- var latestDistance = scrollDistanceFromBottomRef.current;
263
- var currentDistance = elem.scrollHeight - elem.scrollTop - elem.offsetHeight;
264
- if (latestDistance < currentDistance && (!isBottomMessageAffected || latestDistance < SCROLL_BUFFER)) {
265
- var diff = currentDistance - latestDistance;
266
- // Move the scroll as much as the height of the message has changed
267
- scrollPubSub.publish('scroll', { top: elem.scrollTop + diff, lazy: false });
268
- }
269
- }
270
- };
271
- var renderer = {
272
- frozenNotification: function () {
273
- if (!currentChannel || !currentChannel.isFrozen)
274
- return null;
275
- if (renderFrozenNotification)
276
- return renderFrozenNotification();
277
- return React__default.createElement(FrozenNotification, { className: "sendbird-conversation__messages__notification" });
278
- },
279
- unreadMessagesNotification: function () {
280
- if (isScrollBottomReached || !unreadSinceDate)
281
- return null;
282
- return (React__default.createElement(UnreadCount, { className: "sendbird-conversation__messages__notification", count: newMessages.length, lastReadAt: unreadSinceDate, onClick: scrollToBottom }));
283
- },
284
- scrollToBottomButton: function () {
285
- if (!hasNext() && isScrollBottomReached)
286
- return null;
287
- return (React__default.createElement("div", { className: "sendbird-conversation__scroll-bottom-button", onClick: scrollToBottom, onKeyDown: scrollToBottom, tabIndex: 0, role: "button" },
288
- React__default.createElement(Icon, { width: "24px", height: "24px", type: IconTypes.CHEVRON_DOWN, fillColor: IconColors.PRIMARY })));
289
- },
290
- };
291
- if (loading) {
292
- if (renderPlaceholderLoader)
293
- return renderPlaceholderLoader();
294
- return React__default.createElement(PlaceHolder, { type: PlaceHolderTypes.LOADING });
295
- }
296
- if (messages.length === 0) {
297
- if (renderPlaceholderEmpty)
298
- return renderPlaceholderEmpty();
299
- return React__default.createElement(PlaceHolder, { className: "sendbird-conversation__no-messages", type: PlaceHolderTypes.NO_MESSAGES });
300
- }
301
- return (React__default.createElement(React__default.Fragment, null,
302
- React__default.createElement("div", { className: "sendbird-conversation__messages ".concat(className) },
303
- React__default.createElement("div", { className: "sendbird-conversation__scroll-container" },
304
- React__default.createElement("div", { className: "sendbird-conversation__padding" }),
305
- React__default.createElement("div", { className: "sendbird-conversation__messages-padding", ref: scrollRef },
306
- messages.map(function (message, idx) {
307
- var _a = getMessagePartsInfo({
308
- allMessages: messages,
309
- replyType: replyType,
310
- isMessageGroupingEnabled: isMessageGroupingEnabled,
311
- currentIndex: idx,
312
- currentMessage: message,
313
- currentChannel: currentChannel,
314
- }), chainTop = _a.chainTop, chainBottom = _a.chainBottom, hasSeparator = _a.hasSeparator;
315
- var isOutgoingMessage = message.isUserMessage() && message.sender.userId === store.config.userId;
316
- return (React__default.createElement(MessageProvider, { message: message, key: getComponentKeyFromMessage(message), isByMe: isOutgoingMessage },
317
- React__default.createElement(Message, { handleScroll: onMessageContentSizeChanged, renderMessage: renderMessage, message: message, hasSeparator: hasSeparator, chainTop: chainTop, chainBottom: chainBottom, renderCustomSeparator: renderCustomSeparator })));
318
- }),
319
- !hasNext()
320
- && ((_c = (_b = store === null || store === void 0 ? void 0 : store.config) === null || _b === void 0 ? void 0 : _b.groupChannel) === null || _c === void 0 ? void 0 : _c.enableTypingIndicator)
321
- && ((_f = (_e = (_d = store === null || store === void 0 ? void 0 : store.config) === null || _d === void 0 ? void 0 : _d.groupChannel) === null || _e === void 0 ? void 0 : _e.typingIndicatorTypes) === null || _f === void 0 ? void 0 : _f.has(TypingIndicatorType.Bubble)) && (React__default.createElement(TypingIndicatorBubbleWrapper, { channelUrl: channelUrl, handleScroll: onMessageContentSizeChanged })))),
322
- React__default.createElement(React__default.Fragment, null, renderer.frozenNotification()),
323
- React__default.createElement(React__default.Fragment, null, renderer.unreadMessagesNotification()),
324
- React__default.createElement(React__default.Fragment, null, renderer.scrollToBottomButton()))));
325
- };
326
- var TypingIndicatorBubbleWrapper = function (props) {
327
- var stores = useSendbirdStateContext().stores;
328
- var _a = useState([]), typingMembers = _a[0], setTypingMembers = _a[1];
329
- useGroupChannelHandler(stores.sdkStore.sdk, {
330
- onTypingStatusUpdated: function (channel) {
331
- if (channel.url === props.channelUrl) {
332
- setTypingMembers(channel.getTypingUsers());
333
- }
334
- },
335
- });
336
- return React__default.createElement(TypingIndicatorBubble, { typingMembers: typingMembers, handleScroll: props.handleScroll });
337
- };
338
-
339
- var MessageInputWrapper = function (props) {
340
- var _a;
341
- var config = useSendbirdStateContext().config;
342
- var context = useGroupChannelContext();
343
- var messages = context.messages, currentChannel = context.currentChannel;
344
- var lastMessage = currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.lastMessage;
345
- var isLastMessageSuggestedRepliesEnabled = useIIFE(function () {
346
- var _a;
347
- if (!((_a = config === null || config === void 0 ? void 0 : config.groupChannel) === null || _a === void 0 ? void 0 : _a.enableSuggestedReplies))
348
- return false;
349
- if (getSuggestedReplies(lastMessage).length === 0)
350
- return false;
351
- var lastMessageInContext = messages[messages.length - 1];
352
- if (isSendableMessage(lastMessageInContext) && lastMessageInContext.sendingStatus !== 'succeeded')
353
- return false;
354
- return true;
355
- });
356
- var disableMessageInput = props.disabled
357
- || isLastMessageSuggestedRepliesEnabled && !!((_a = lastMessage.extendedMessagePayload) === null || _a === void 0 ? void 0 : _a['disable_chat_input']);
358
- return (React__default.createElement(MessageInputWrapperView, __assign({}, props, { disabled: disableMessageInput }, context)));
359
- };
360
-
361
- var GroupChannelUI = function (props) {
362
- var context = useGroupChannelContext();
363
- var currentChannel = context.currentChannel, channelUrl = context.channelUrl, loading = context.loading;
364
- // Inject components to presentation layer
365
- var _a = props.renderChannelHeader, renderChannelHeader = _a === void 0 ? function (props) { return React__default.createElement(GroupChannelHeader, __assign({}, props)); } : _a, _b = props.renderMessageList, renderMessageList = _b === void 0 ? function (props) { return React__default.createElement(MessageList, __assign({}, props, { className: "sendbird-conversation__message-list" })); } : _b, _c = props.renderMessageInput, renderMessageInput = _c === void 0 ? function () { return React__default.createElement(MessageInputWrapper, __assign({}, props)); } : _c;
366
- return (React__default.createElement(GroupChannelUIView, __assign({}, props, context, { loading: loading, isInvalid: channelUrl && !currentChannel, channelUrl: channelUrl, renderChannelHeader: renderChannelHeader, renderMessageList: renderMessageList, renderMessageInput: renderMessageInput })));
367
- };
368
-
369
- var GroupChannel = function (props) {
370
- return (React__default.createElement(GroupChannelProvider, __assign({}, props),
371
- React__default.createElement(GroupChannelUI, __assign({}, props))));
372
- };
373
-
374
- function GroupChannelPreviewAction(_a) {
375
- var channel = _a.channel, _b = _a.disabled, disabled = _b === void 0 ? false : _b, onLeaveChannel = _a.onLeaveChannel;
376
- var parentRef = useRef(null);
377
- var parentContainerRef = useRef(null);
378
- var _c = useState(false), showModal = _c[0], setShowModal = _c[1];
379
- var stringSet = useContext(LocalizationContext).stringSet;
380
- return (React__default.createElement("div", { ref: parentContainerRef, tabIndex: 0, role: "button", style: { display: 'inline-block' }, onKeyDown: function (e) { return e.stopPropagation(); }, onClick: function (e) { return e.stopPropagation(); } },
381
- React__default.createElement(ContextMenu, { menuTrigger: function (toggleDropdown) { return (React__default.createElement(IconButton, { ref: parentRef, onClick: toggleDropdown, height: "32px", width: "32px" },
382
- React__default.createElement(Icon, { type: IconTypes.MORE, fillColor: IconColors.PRIMARY, width: "24px", height: "24px" }))); }, menuItems: function (closeDropdown) { return (React__default.createElement(MenuItems, { parentRef: parentRef, parentContainRef: parentContainerRef, closeDropdown: closeDropdown },
383
- React__default.createElement(MenuItem, { onClick: function () {
384
- if (disabled) {
385
- return;
386
- }
387
- setShowModal(true);
388
- closeDropdown();
389
- }, dataSbId: "channel_list_item_context_menu_leave_channel" }, stringSet.CHANNEL_SETTING__LEAVE_CHANNEL__TITLE))); } }),
390
- showModal && (React__default.createElement(LeaveGroupChannel, { channel: channel, onSubmit: function () {
391
- setShowModal(false);
392
- onLeaveChannel();
393
- }, onCancel: function () { return setShowModal(false); } }))));
394
- }
395
-
396
- var GroupChannelListItem = function (_a) {
397
- var _b, _c, _d;
398
- var channel = _a.channel, isSelected = _a.isSelected, isTyping = _a.isTyping, renderChannelAction = _a.renderChannelAction, onLeaveChannel = _a.onLeaveChannel, onClick = _a.onClick, tabIndex = _a.tabIndex;
399
- var config = useSendbirdStateContext().config;
400
- var userId = config.userId;
401
- var stringSet = useLocalization().stringSet;
402
- var _e = useGroupChannelListContext(), selectedChannelUrl = _e.selectedChannelUrl, typingChannelUrls = _e.typingChannelUrls, _f = _e.isTypingIndicatorEnabled, isTypingIndicatorEnabled = _f === void 0 ? false : _f, _g = _e.isMessageReceiptStatusEnabled, isMessageReceiptStatusEnabled = _g === void 0 ? false : _g;
403
- var isSelectedChannel = isSelected || (channel.url === selectedChannelUrl);
404
- var isTypingChannel = isTypingIndicatorEnabled && (isTyping || (typingChannelUrls.includes(channel.url)));
405
- var isMessageStatusEnabled = isMessageReceiptStatusEnabled
406
- && (!((_b = channel.lastMessage) === null || _b === void 0 ? void 0 : _b.isAdminMessage()))
407
- && ((_d = (_c = channel.lastMessage) === null || _c === void 0 ? void 0 : _c.sender) === null || _d === void 0 ? void 0 : _d.userId) === userId;
408
- var channelName = getChannelTitle(channel, userId, stringSet);
409
- return (React__default.createElement(GroupChannelListItemView, { channel: channel, tabIndex: tabIndex, channelName: channelName, isTyping: isTypingChannel, isSelected: isSelectedChannel, isMessageStatusEnabled: isMessageStatusEnabled, onClick: onClick, onLeaveChannel: onLeaveChannel, renderChannelAction: renderChannelAction }));
410
- };
411
-
412
- var AddGroupChannel = function () {
413
- var _a = useState(false), createChannelVisible = _a[0], setCreateChannelVisible = _a[1];
414
- var _b = useGroupChannelListContext(), onChannelCreated = _b.onChannelCreated, onBeforeCreateChannel = _b.onBeforeCreateChannel, onCreateChannelClick = _b.onCreateChannelClick;
415
- return (React__default.createElement(AddGroupChannelView, { createChannelVisible: createChannelVisible, onChangeCreateChannelVisible: setCreateChannelVisible, onCreateChannelClick: onCreateChannelClick, onBeforeCreateChannel: onBeforeCreateChannel, onChannelCreated: onChannelCreated }));
416
- };
417
-
418
- var GroupChannelListUI = function (props) {
419
- var renderHeader = props.renderHeader, renderChannelPreview = props.renderChannelPreview, renderPlaceHolderError = props.renderPlaceHolderError, renderPlaceHolderLoading = props.renderPlaceHolderLoading, renderPlaceHolderEmptyList = props.renderPlaceHolderEmptyList;
420
- var _a = useGroupChannelListContext(), onChannelSelect = _a.onChannelSelect, onThemeChange = _a.onThemeChange, allowProfileEdit = _a.allowProfileEdit, groupChannels = _a.groupChannels, initialized = _a.initialized, loadMore = _a.loadMore, onUserProfileUpdated = _a.onUserProfileUpdated;
421
- var _b = useSendbirdStateContext(), stores = _b.stores, config = _b.config;
422
- var logger = config.logger, isOnline = config.isOnline;
423
- var sdk = stores.sdkStore.sdk;
424
- var renderListItem = function (renderProps) {
425
- var channel = renderProps.item, index = renderProps.index;
426
- var onLeaveChannel = function (targetChannel, cb) { return __awaiter(void 0, void 0, void 0, function () {
427
- return __generator(this, function (_a) {
428
- switch (_a.label) {
429
- case 0:
430
- logger.info('ChannelList: Leaving channel', targetChannel);
431
- return [4 /*yield*/, targetChannel.leave()];
432
- case 1:
433
- _a.sent();
434
- logger.info('ChannelList: Leaving channel success');
435
- if (cb && typeof cb === 'function')
436
- cb(targetChannel);
437
- return [2 /*return*/];
438
- }
439
- });
440
- }); };
441
- var onClick = function () {
442
- if (isOnline || (sdk === null || sdk === void 0 ? void 0 : sdk.isCacheEnabled)) {
443
- logger.info('ChannelList: Clicked on channel:', channel);
444
- onChannelSelect(channel);
445
- }
446
- else {
447
- logger.warning('ChannelList: Inactivated clicking channel item during offline.');
448
- }
449
- };
450
- if (renderChannelPreview) {
451
- return (React__default.createElement("div", { key: channel.url, onClick: onClick }, renderChannelPreview({ channel: channel, onLeaveChannel: onLeaveChannel })));
452
- }
453
- return (React__default.createElement(GroupChannelListItem, { key: channel.url, tabIndex: index, onClick: onClick, channel: channel, onLeaveChannel: function () { return onLeaveChannel(channel, null); }, renderChannelAction: function () { return (React__default.createElement(GroupChannelPreviewAction, { channel: channel, disabled: !isOnline, onLeaveChannel: function () { return onLeaveChannel(channel, null); } })); } }));
454
- };
455
- return (React__default.createElement(GroupChannelListUIView, { renderHeader: renderHeader, renderChannel: renderListItem, renderPlaceHolderError: renderPlaceHolderError, renderPlaceHolderLoading: renderPlaceHolderLoading, renderPlaceHolderEmptyList: renderPlaceHolderEmptyList, onChangeTheme: onThemeChange, allowProfileEdit: allowProfileEdit, onUserProfileUpdated: onUserProfileUpdated, channels: groupChannels, onLoadMore: loadMore, initialized: initialized, renderAddChannel: function () { return React__default.createElement(AddGroupChannel, null); } }));
456
- };
457
-
458
- var GroupChannelList = function (props) {
459
- return (React__default.createElement(GroupChannelListProvider, __assign({}, props),
460
- React__default.createElement(GroupChannelListUI, __assign({}, props))));
461
- };
213
+ import './Thread/components/ThreadMessageInput.js';
214
+ import './Channel/hooks/useHandleUploadFiles.js';
462
215
 
463
216
  var DesktopLayout = function (props) {
464
217
  var isReactionEnabled = props.isReactionEnabled, replyType = props.replyType, isMessageGroupingEnabled = props.isMessageGroupingEnabled, isMultipleFilesMessageEnabled = props.isMultipleFilesMessageEnabled, allowProfileEdit = props.allowProfileEdit, showSearchIcon = props.showSearchIcon, onProfileEditSuccess = props.onProfileEditSuccess, disableAutoSelect = props.disableAutoSelect, currentChannel = props.currentChannel, setCurrentChannel = props.setCurrentChannel, showSettings = props.showSettings, setShowSettings = props.setShowSettings, showSearch = props.showSearch, setShowSearch = props.setShowSearch, highlightedMessage = props.highlightedMessage, setHighlightedMessage = props.setHighlightedMessage, startingPoint = props.startingPoint, setStartingPoint = props.setStartingPoint, showThread = props.showThread, setShowThread = props.setShowThread, threadTargetMessage = props.threadTargetMessage, setThreadTargetMessage = props.setThreadTargetMessage, enableLegacyChannelModules = props.enableLegacyChannelModules;
@@ -760,11 +513,7 @@ function App(props) {
760
513
  // The below configs are duplicates of the Dashboard UIKit Configs.
761
514
  // Since their default values will be set in the Sendbird component,
762
515
  // we don't need to set them here.
763
- showSearchIcon = props.showSearchIcon, isMentionEnabled = props.isMentionEnabled, isReactionEnabled = props.isReactionEnabled, replyType = props.replyType, disableUserProfile = props.disableUserProfile, isVoiceMessageEnabled = props.isVoiceMessageEnabled, isMultipleFilesMessageEnabled = props.isMultipleFilesMessageEnabled, isTypingIndicatorEnabledOnChannelList = props.isTypingIndicatorEnabledOnChannelList, isMessageReceiptStatusEnabledOnChannelList = props.isMessageReceiptStatusEnabledOnChannelList, _v = props.isUserIdUsedForNickname, isUserIdUsedForNickname = _v === void 0 ? true : _v,
764
- // FIXME: Flag change is required when deploying the collection module.
765
- _w = props.enableLegacyChannelModules,
766
- // FIXME: Flag change is required when deploying the collection module.
767
- enableLegacyChannelModules = _w === void 0 ? true : _w;
516
+ showSearchIcon = props.showSearchIcon, isMentionEnabled = props.isMentionEnabled, isReactionEnabled = props.isReactionEnabled, replyType = props.replyType, disableUserProfile = props.disableUserProfile, isVoiceMessageEnabled = props.isVoiceMessageEnabled, isMultipleFilesMessageEnabled = props.isMultipleFilesMessageEnabled, isTypingIndicatorEnabledOnChannelList = props.isTypingIndicatorEnabledOnChannelList, isMessageReceiptStatusEnabledOnChannelList = props.isMessageReceiptStatusEnabledOnChannelList, _v = props.isUserIdUsedForNickname, isUserIdUsedForNickname = _v === void 0 ? true : _v, _w = props.enableLegacyChannelModules, enableLegacyChannelModules = _w === void 0 ? false : _w;
768
517
  var _x = useState(null), currentChannel = _x[0], setCurrentChannel = _x[1];
769
518
  return (React__default.createElement(SendbirdProvider, { stringSet: stringSet, appId: appId, userId: userId, accessToken: accessToken, customApiHost: customApiHost, customWebSocketHost: customWebSocketHost, breakpoint: breakpoint, theme: theme, nickname: nickname, profileUrl: profileUrl, dateLocale: dateLocale, userListQuery: userListQuery, config: config, colorSet: colorSet, disableUserProfile: disableUserProfile, disableMarkAsDelivered: disableMarkAsDelivered, renderUserProfile: renderUserProfile, imageCompression: imageCompression, isReactionEnabled: isReactionEnabled, isMentionEnabled: isMentionEnabled, isVoiceMessageEnabled: isVoiceMessageEnabled, isMultipleFilesMessageEnabled: isMultipleFilesMessageEnabled, voiceRecord: voiceRecord, onUserProfileMessage: function (channel) {
770
519
  setCurrentChannel(channel);
package/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"App.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}