@sendbird/uikit-react 3.2.6-rc.2 → 3.3.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 (529) hide show
  1. package/App.js +163 -71
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +40 -0
  4. package/Channel/components/ChannelHeader.js +18 -43
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +28 -23
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +14 -14
  9. package/Channel/components/FrozenNotification.js +4 -4
  10. package/Channel/components/Message.js +49 -24
  11. package/Channel/components/Message.js.map +1 -1
  12. package/Channel/components/MessageInput.js +21 -16
  13. package/Channel/components/MessageInput.js.map +1 -1
  14. package/Channel/components/MessageList.js +30 -32
  15. package/Channel/components/MessageList.js.map +1 -1
  16. package/Channel/components/RemoveMessageModal.js +16 -16
  17. package/Channel/components/SuggestedMentionList.js +54 -48
  18. package/Channel/components/SuggestedMentionList.js.map +1 -1
  19. package/Channel/components/TypingIndicator.js +14 -14
  20. package/Channel/components/UnreadCount.js +4 -4
  21. package/Channel/context.js +13 -13
  22. package/Channel.js +35 -24
  23. package/Channel.js.map +1 -1
  24. package/ChannelList/components/AddChannel.js +14 -14
  25. package/ChannelList/components/ChannelListHeader.js +7 -7
  26. package/ChannelList/components/ChannelListUI.js +28 -27
  27. package/ChannelList/components/ChannelListUI.js.map +1 -1
  28. package/ChannelList/components/ChannelPreview.js +26 -24
  29. package/ChannelList/components/ChannelPreview.js.map +1 -1
  30. package/ChannelList/components/ChannelPreviewAction.js +32 -25
  31. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  32. package/ChannelList/context.js +8 -8
  33. package/ChannelList.js +27 -27
  34. package/{ChannelListProvider-fa5ee3c6.js → ChannelListProvider-6916e880.js} +8 -8
  35. package/{ChannelListProvider-fa5ee3c6.js.map → ChannelListProvider-6916e880.js.map} +1 -1
  36. package/{ChannelProvider-c6154c45.js → ChannelProvider-8be62d5d.js} +90 -47
  37. package/ChannelProvider-8be62d5d.js.map +1 -0
  38. package/ChannelSettings/components/ChannelProfile.js +12 -12
  39. package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  40. package/ChannelSettings/components/EditDetailsModal.js +12 -12
  41. package/ChannelSettings/components/LeaveChannel.js +12 -12
  42. package/ChannelSettings/components/ModerationPanel.js +24 -19
  43. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  44. package/ChannelSettings/components/UserListItem.js +13 -13
  45. package/ChannelSettings/components/UserListItem.js.map +1 -1
  46. package/ChannelSettings/components/UserPanel.js +14 -14
  47. package/ChannelSettings/context.js +3 -3
  48. package/ChannelSettings.js +18 -18
  49. package/CreateChannel/components/CreateChannelUI.js +14 -14
  50. package/CreateChannel/components/InviteUsers.js +14 -14
  51. package/CreateChannel/components/SelectChannelType.js +11 -11
  52. package/CreateChannel/context.js +4 -4
  53. package/CreateChannel.js +14 -14
  54. package/{CreateChannelProvider-8058f838.js → CreateChannelProvider-4604e579.js} +1 -1
  55. package/{CreateChannelProvider-8058f838.js.map → CreateChannelProvider-4604e579.js.map} +1 -1
  56. package/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
  57. package/CreateOpenChannel/context.js +1 -1
  58. package/CreateOpenChannel.js +10 -10
  59. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  60. package/EditUserProfile.js +13 -13
  61. package/{LocalizationContext-8c300642.js → LocalizationContext-5920dafc.js} +3 -3
  62. package/{LocalizationContext-8c300642.js.map → LocalizationContext-5920dafc.js.map} +1 -1
  63. package/{MediaQueryContext-fbda8d54.js → MediaQueryContext-9c1bb79f.js} +1 -1
  64. package/{MediaQueryContext-fbda8d54.js.map → MediaQueryContext-9c1bb79f.js.map} +1 -1
  65. package/{MemberList-a1f955f3.js → MemberList-743b0708.js} +7 -6
  66. package/MemberList-743b0708.js.map +1 -0
  67. package/MessageSearch/components/MessageSearchUI.js +11 -11
  68. package/MessageSearch/context.js +2 -2
  69. package/MessageSearch.js +11 -11
  70. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  71. package/OpenChannel/components/OpenChannelHeader.js +13 -13
  72. package/OpenChannel/components/OpenChannelInput.js +15 -15
  73. package/OpenChannel/components/OpenChannelMessage.js +22 -22
  74. package/OpenChannel/components/OpenChannelMessageList.js +24 -24
  75. package/OpenChannel/components/OpenChannelUI.js +24 -24
  76. package/OpenChannel/context.js +9 -9
  77. package/OpenChannel.js +24 -24
  78. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  79. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  80. package/OpenChannelList/context.js +4 -4
  81. package/OpenChannelList.js +13 -13
  82. package/{OpenChannelListProvider-d39c8aac.js → OpenChannelListProvider-8f97ace6.js} +3 -3
  83. package/{OpenChannelListProvider-d39c8aac.js.map → OpenChannelListProvider-8f97ace6.js.map} +1 -1
  84. package/{OpenChannelProvider-2e9167b6.js → OpenChannelProvider-1438b899.js} +7 -7
  85. package/OpenChannelProvider-1438b899.js.map +1 -0
  86. package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  87. package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  88. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  89. package/OpenChannelSettings/components/OperatorUI.js +17 -17
  90. package/OpenChannelSettings/components/ParticipantUI.js +15 -15
  91. package/OpenChannelSettings/context.js +3 -3
  92. package/OpenChannelSettings.js +18 -18
  93. package/RemoveMessageModal-0ce1f978.js +31 -0
  94. package/RemoveMessageModal-0ce1f978.js.map +1 -0
  95. package/SendbirdProvider.js +18 -14
  96. package/SendbirdProvider.js.map +1 -1
  97. package/Thread/components/ParentMessageInfo.js +360 -0
  98. package/Thread/components/ParentMessageInfo.js.map +1 -0
  99. package/Thread/components/ParentMessageInfoItem.js +197 -0
  100. package/Thread/components/ParentMessageInfoItem.js.map +1 -0
  101. package/Thread/components/ThreadHeader.js +61 -0
  102. package/Thread/components/ThreadHeader.js.map +1 -0
  103. package/Thread/components/ThreadList.js +139 -0
  104. package/Thread/components/ThreadList.js.map +1 -0
  105. package/Thread/components/ThreadListItem.js +522 -0
  106. package/Thread/components/ThreadListItem.js.map +1 -0
  107. package/Thread/components/ThreadMessageInput.js +193 -0
  108. package/Thread/components/ThreadMessageInput.js.map +1 -0
  109. package/Thread/components/ThreadUI.js +314 -0
  110. package/Thread/components/ThreadUI.js.map +1 -0
  111. package/Thread/context/types.js +30 -0
  112. package/Thread/context/types.js.map +1 -0
  113. package/Thread/context.js +18 -0
  114. package/Thread/context.js.map +1 -0
  115. package/Thread.js +112 -0
  116. package/Thread.js.map +1 -0
  117. package/ThreadProvider-4640c6fb.js +1644 -0
  118. package/ThreadProvider-4640c6fb.js.map +1 -0
  119. package/{UserProfileContext-5678a04f.js → UserProfileContext-749db4f6.js} +1 -1
  120. package/{UserProfileContext-5678a04f.js.map → UserProfileContext-749db4f6.js.map} +1 -1
  121. package/{_rollupPluginBabelHelpers-cdd0b511.js → _rollupPluginBabelHelpers-636e674b.js} +1 -1
  122. package/_rollupPluginBabelHelpers-636e674b.js.map +1 -0
  123. package/{actionTypes-3724a60f.js → actionTypes-9bf40e56.js} +1 -1
  124. package/{actionTypes-3724a60f.js.map → actionTypes-9bf40e56.js.map} +1 -1
  125. package/cjs/App.js +163 -71
  126. package/cjs/App.js.map +1 -1
  127. package/cjs/Channel/components/ChannelHeader.js +20 -45
  128. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  129. package/cjs/Channel/components/ChannelUI.js +28 -23
  130. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  131. package/cjs/Channel/components/FileViewer.js +14 -14
  132. package/cjs/Channel/components/FrozenNotification.js +4 -4
  133. package/cjs/Channel/components/Message.js +49 -24
  134. package/cjs/Channel/components/Message.js.map +1 -1
  135. package/cjs/Channel/components/MessageInput.js +21 -16
  136. package/cjs/Channel/components/MessageInput.js.map +1 -1
  137. package/cjs/Channel/components/MessageList.js +30 -32
  138. package/cjs/Channel/components/MessageList.js.map +1 -1
  139. package/cjs/Channel/components/RemoveMessageModal.js +16 -16
  140. package/cjs/Channel/components/SuggestedMentionList.js +54 -48
  141. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  142. package/cjs/Channel/components/TypingIndicator.js +14 -14
  143. package/cjs/Channel/components/UnreadCount.js +4 -4
  144. package/cjs/Channel/context.js +14 -13
  145. package/cjs/Channel/context.js.map +1 -1
  146. package/cjs/Channel.js +35 -24
  147. package/cjs/Channel.js.map +1 -1
  148. package/cjs/ChannelList/components/AddChannel.js +14 -14
  149. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  150. package/cjs/ChannelList/components/ChannelListUI.js +28 -27
  151. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  152. package/cjs/ChannelList/components/ChannelPreview.js +26 -24
  153. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  154. package/cjs/ChannelList/components/ChannelPreviewAction.js +32 -25
  155. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  156. package/cjs/ChannelList/context.js +8 -8
  157. package/cjs/ChannelList.js +27 -27
  158. package/cjs/{ChannelListProvider-dc412a35.js → ChannelListProvider-d04a3815.js} +8 -8
  159. package/cjs/{ChannelListProvider-dc412a35.js.map → ChannelListProvider-d04a3815.js.map} +1 -1
  160. package/cjs/{ChannelProvider-423912b2.js → ChannelProvider-6fd99b0a.js} +90 -46
  161. package/cjs/ChannelProvider-6fd99b0a.js.map +1 -0
  162. package/cjs/ChannelSettings/components/ChannelProfile.js +12 -12
  163. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  164. package/cjs/ChannelSettings/components/EditDetailsModal.js +12 -12
  165. package/cjs/ChannelSettings/components/LeaveChannel.js +12 -12
  166. package/cjs/ChannelSettings/components/ModerationPanel.js +24 -19
  167. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  168. package/cjs/ChannelSettings/components/UserListItem.js +13 -13
  169. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  170. package/cjs/ChannelSettings/components/UserPanel.js +14 -14
  171. package/cjs/ChannelSettings/context.js +3 -3
  172. package/cjs/ChannelSettings.js +18 -18
  173. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  174. package/cjs/CreateChannel/components/InviteUsers.js +14 -14
  175. package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
  176. package/cjs/CreateChannel/context.js +4 -4
  177. package/cjs/CreateChannel.js +14 -14
  178. package/cjs/{CreateChannelProvider-3fd8586c.js → CreateChannelProvider-a096e766.js} +1 -1
  179. package/cjs/{CreateChannelProvider-3fd8586c.js.map → CreateChannelProvider-a096e766.js.map} +1 -1
  180. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
  181. package/cjs/CreateOpenChannel/context.js +1 -1
  182. package/cjs/CreateOpenChannel.js +10 -10
  183. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  184. package/cjs/EditUserProfile.js +13 -13
  185. package/cjs/{LocalizationContext-6874bb17.js → LocalizationContext-9c61d945.js} +3 -3
  186. package/cjs/{LocalizationContext-6874bb17.js.map → LocalizationContext-9c61d945.js.map} +1 -1
  187. package/cjs/{MediaQueryContext-feb3b07d.js → MediaQueryContext-19197e12.js} +1 -1
  188. package/cjs/{MediaQueryContext-feb3b07d.js.map → MediaQueryContext-19197e12.js.map} +1 -1
  189. package/cjs/{MemberList-00ad7f6d.js → MemberList-82cd8a28.js} +7 -6
  190. package/cjs/MemberList-82cd8a28.js.map +1 -0
  191. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  192. package/cjs/MessageSearch/context.js +2 -2
  193. package/cjs/MessageSearch.js +11 -11
  194. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  195. package/cjs/OpenChannel/components/OpenChannelHeader.js +13 -13
  196. package/cjs/OpenChannel/components/OpenChannelInput.js +15 -15
  197. package/cjs/OpenChannel/components/OpenChannelMessage.js +22 -22
  198. package/cjs/OpenChannel/components/OpenChannelMessageList.js +24 -24
  199. package/cjs/OpenChannel/components/OpenChannelUI.js +24 -24
  200. package/cjs/OpenChannel/context.js +9 -9
  201. package/cjs/OpenChannel.js +24 -24
  202. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  203. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  204. package/cjs/OpenChannelList/context.js +4 -4
  205. package/cjs/OpenChannelList.js +13 -13
  206. package/cjs/{OpenChannelListProvider-8273ddeb.js → OpenChannelListProvider-3998074a.js} +3 -3
  207. package/cjs/{OpenChannelListProvider-8273ddeb.js.map → OpenChannelListProvider-3998074a.js.map} +1 -1
  208. package/cjs/{OpenChannelProvider-37e885fb.js → OpenChannelProvider-7bd784c2.js} +7 -7
  209. package/cjs/OpenChannelProvider-7bd784c2.js.map +1 -0
  210. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  211. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  212. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  213. package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -17
  214. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
  215. package/cjs/OpenChannelSettings/context.js +3 -3
  216. package/cjs/OpenChannelSettings.js +18 -18
  217. package/cjs/RemoveMessageModal-81ca8cf7.js +37 -0
  218. package/cjs/RemoveMessageModal-81ca8cf7.js.map +1 -0
  219. package/cjs/SendbirdProvider.js +18 -14
  220. package/cjs/SendbirdProvider.js.map +1 -1
  221. package/cjs/Thread/components/ParentMessageInfo.js +366 -0
  222. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -0
  223. package/cjs/Thread/components/ParentMessageInfoItem.js +203 -0
  224. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -0
  225. package/cjs/Thread/components/ThreadHeader.js +67 -0
  226. package/cjs/Thread/components/ThreadHeader.js.map +1 -0
  227. package/cjs/Thread/components/ThreadList.js +145 -0
  228. package/cjs/Thread/components/ThreadList.js.map +1 -0
  229. package/cjs/Thread/components/ThreadListItem.js +528 -0
  230. package/cjs/Thread/components/ThreadListItem.js.map +1 -0
  231. package/cjs/Thread/components/ThreadMessageInput.js +199 -0
  232. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -0
  233. package/cjs/Thread/components/ThreadUI.js +320 -0
  234. package/cjs/Thread/components/ThreadUI.js.map +1 -0
  235. package/cjs/Thread/context/types.js +32 -0
  236. package/cjs/Thread/context/types.js.map +1 -0
  237. package/cjs/Thread/context.js +27 -0
  238. package/cjs/Thread/context.js.map +1 -0
  239. package/cjs/Thread.js +118 -0
  240. package/cjs/Thread.js.map +1 -0
  241. package/cjs/ThreadProvider-acb1ddb1.js +1653 -0
  242. package/cjs/ThreadProvider-acb1ddb1.js.map +1 -0
  243. package/cjs/{UserProfileContext-9d54afea.js → UserProfileContext-637e5f40.js} +1 -1
  244. package/cjs/{UserProfileContext-9d54afea.js.map → UserProfileContext-637e5f40.js.map} +1 -1
  245. package/cjs/{_rollupPluginBabelHelpers-63261191.js → _rollupPluginBabelHelpers-20ad87c1.js} +1 -1
  246. package/cjs/_rollupPluginBabelHelpers-20ad87c1.js.map +1 -0
  247. package/cjs/{actionTypes-c65dff0d.js → actionTypes-7ba29408.js} +1 -1
  248. package/cjs/{actionTypes-c65dff0d.js.map → actionTypes-7ba29408.js.map} +1 -1
  249. package/cjs/{color-fedc6b01.js → color-da1f2f09.js} +1 -1
  250. package/cjs/{color-fedc6b01.js.map → color-da1f2f09.js.map} +1 -1
  251. package/cjs/{compareIds-8c00aeb4.js → compareIds-a7a8f34b.js} +1 -1
  252. package/cjs/{compareIds-8c00aeb4.js.map → compareIds-a7a8f34b.js.map} +1 -1
  253. package/cjs/{const-692c8ec4.js → const-5f50d896.js} +1 -1
  254. package/cjs/{const-692c8ec4.js.map → const-5f50d896.js.map} +1 -1
  255. package/cjs/{const-e3a67a31.js → const-c5332da3.js} +7 -1
  256. package/cjs/const-c5332da3.js.map +1 -0
  257. package/cjs/{context-df3ea28e.js → context-3063790f.js} +2 -2
  258. package/cjs/{context-df3ea28e.js.map → context-3063790f.js.map} +1 -1
  259. package/cjs/dist/index.css +1190 -337
  260. package/cjs/dist/index.css.map +1 -1
  261. package/cjs/{index-8a4cee0d.js → index-0418c426.js} +7 -7
  262. package/cjs/index-0418c426.js.map +1 -0
  263. package/cjs/{index-7c35290e.js → index-566a2b96.js} +2 -2
  264. package/cjs/{index-7c35290e.js.map → index-566a2b96.js.map} +1 -1
  265. package/cjs/{index-832708e6.js → index-568f12d2.js} +4 -4
  266. package/cjs/{index-832708e6.js.map → index-568f12d2.js.map} +1 -1
  267. package/cjs/{index-d42411de.js → index-5d551bb1.js} +2 -2
  268. package/cjs/{index-d42411de.js.map → index-5d551bb1.js.map} +1 -1
  269. package/cjs/{index-6c53880c.js → index-6a32eea2.js} +1 -1
  270. package/cjs/{index-6c53880c.js.map → index-6a32eea2.js.map} +1 -1
  271. package/cjs/{index-d459624c.js → index-795706d2.js} +2 -2
  272. package/cjs/{index-d459624c.js.map → index-795706d2.js.map} +1 -1
  273. package/cjs/{index-aac53356.js → index-94a96213.js} +4 -4
  274. package/cjs/{index-aac53356.js.map → index-94a96213.js.map} +1 -1
  275. package/cjs/{index-dcba8ae0.js → index-99943583.js} +5 -5
  276. package/cjs/{index-dcba8ae0.js.map → index-99943583.js.map} +1 -1
  277. package/cjs/{index-5b759304.js → index-ac7ef6d8.js} +9 -9
  278. package/cjs/index-ac7ef6d8.js.map +1 -0
  279. package/cjs/{index-93c444a5.js → index-b82af371.js} +1 -1
  280. package/cjs/{index-93c444a5.js.map → index-b82af371.js.map} +1 -1
  281. package/cjs/{index-200fff97.js → index-d0d7cb2e.js} +2 -2
  282. package/cjs/{index-200fff97.js.map → index-d0d7cb2e.js.map} +1 -1
  283. package/cjs/index.js +82 -68
  284. package/cjs/index.js.map +1 -1
  285. package/cjs/sendbirdSelectors.js +2 -2
  286. package/cjs/{stringSet-c1f0eb5e.js → stringSet-520996cb.js} +17 -3
  287. package/cjs/stringSet-520996cb.js.map +1 -0
  288. package/cjs/{topics-1a805c8d.js → topics-e5734128.js} +1 -1
  289. package/cjs/{topics-1a805c8d.js.map → topics-e5734128.js.map} +1 -1
  290. package/cjs/tslib.es6-29ba80a6.js +97 -0
  291. package/cjs/{tslib.es6-7122e617.js.map → tslib.es6-29ba80a6.js.map} +1 -1
  292. package/cjs/ui/Accordion.js +3 -3
  293. package/cjs/ui/AccordionGroup.js +2 -2
  294. package/cjs/ui/AdminMessage.js +3 -3
  295. package/cjs/ui/AdminMessage.js.map +1 -1
  296. package/cjs/ui/Avatar.js +2 -2
  297. package/cjs/ui/Badge.js +5 -5
  298. package/cjs/ui/BottomSheet.js +1 -1
  299. package/cjs/ui/Button.js +3 -3
  300. package/cjs/ui/ChannelAvatar.js +3 -3
  301. package/cjs/ui/ConnectionStatus.js +4 -4
  302. package/cjs/ui/ContextMenu.js +15 -11
  303. package/cjs/ui/ContextMenu.js.map +1 -1
  304. package/cjs/ui/DateSeparator.js +4 -4
  305. package/cjs/ui/EmojiReactions.js +26 -14
  306. package/cjs/ui/EmojiReactions.js.map +1 -1
  307. package/cjs/ui/FileMessageItemBody.js +11 -8
  308. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  309. package/cjs/ui/FileViewer.js +8 -8
  310. package/cjs/ui/IconButton.js +1 -1
  311. package/cjs/ui/ImageRenderer.js +1 -1
  312. package/cjs/ui/Input.js +2 -2
  313. package/cjs/ui/Label.js +2 -2
  314. package/cjs/ui/LinkLabel.js +2 -2
  315. package/cjs/ui/Loader.js +1 -1
  316. package/cjs/ui/MentionLabel.js +15 -14
  317. package/cjs/ui/MentionLabel.js.map +1 -1
  318. package/cjs/ui/MessageContent.js +104 -56
  319. package/cjs/ui/MessageContent.js.map +1 -1
  320. package/cjs/ui/MessageInput.js +17 -13
  321. package/cjs/ui/MessageInput.js.map +1 -1
  322. package/cjs/ui/MessageItemMenu.js +40 -16
  323. package/cjs/ui/MessageItemMenu.js.map +1 -1
  324. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  325. package/cjs/ui/MessageSearchFileItem.js +9 -9
  326. package/cjs/ui/MessageSearchItem.js +9 -9
  327. package/cjs/ui/MessageStatus.js +11 -11
  328. package/cjs/ui/MessageStatus.js.map +1 -1
  329. package/cjs/ui/Modal.js +7 -7
  330. package/cjs/ui/Modal.js.map +1 -1
  331. package/cjs/ui/OGMessageItemBody.js +11 -13
  332. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  333. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  334. package/cjs/ui/OpenChannelAvatar.js +6 -6
  335. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  336. package/cjs/ui/OpenchannelFileMessage.js +21 -19
  337. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  338. package/cjs/ui/OpenchannelOGMessage.js +18 -18
  339. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  340. package/cjs/ui/OpenchannelThumbnailMessage.js +17 -17
  341. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  342. package/cjs/ui/OpenchannelUserMessage.js +16 -16
  343. package/cjs/ui/PlaceHolder.js +6 -6
  344. package/cjs/ui/QuoteMessage.js +34 -16
  345. package/cjs/ui/QuoteMessage.js.map +1 -1
  346. package/cjs/ui/QuoteMessageInput.js +6 -6
  347. package/cjs/ui/ReactionBadge.js +3 -3
  348. package/cjs/ui/ReactionButton.js +1 -1
  349. package/cjs/ui/SortByRow.js +2 -2
  350. package/cjs/ui/SortByRow.js.map +1 -1
  351. package/cjs/ui/TextButton.js +2 -2
  352. package/cjs/ui/TextMessageItemBody.js +11 -11
  353. package/cjs/ui/ThreadReplies.js +82 -0
  354. package/cjs/ui/ThreadReplies.js.map +1 -0
  355. package/cjs/ui/ThumbnailMessageItemBody.js +14 -12
  356. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  357. package/cjs/ui/Tooltip.js +3 -3
  358. package/cjs/ui/TooltipWrapper.js +1 -1
  359. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  360. package/cjs/ui/UserListItem.js +17 -17
  361. package/cjs/ui/UserListItem.js.map +1 -1
  362. package/cjs/ui/UserProfile.js +14 -12
  363. package/cjs/ui/UserProfile.js.map +1 -1
  364. package/cjs/ui/Word.js +11 -11
  365. package/cjs/{useLongPress-76811e64.js → useLongPress-9c1d0d7e.js} +3 -3
  366. package/cjs/{useLongPress-76811e64.js.map → useLongPress-9c1d0d7e.js.map} +1 -1
  367. package/cjs/useSendbirdStateContext.js +1 -1
  368. package/cjs/utils-88f4aff4.js +32 -0
  369. package/cjs/utils-88f4aff4.js.map +1 -0
  370. package/cjs/{utils-c98ac06d.js → utils-c137a361.js} +1 -1
  371. package/cjs/{utils-c98ac06d.js.map → utils-c137a361.js.map} +1 -1
  372. package/cjs/{utils-a757b63f.js → utils-ee8b0f03.js} +1 -1
  373. package/cjs/{utils-a757b63f.js.map → utils-ee8b0f03.js.map} +1 -1
  374. package/cjs/{utils-a9e5232a.js → utils-f215ace1.js} +1 -1
  375. package/cjs/{utils-a9e5232a.js.map → utils-f215ace1.js.map} +1 -1
  376. package/cjs/{uuid-0e4180d1.js → uuid-ed079835.js} +1 -1
  377. package/cjs/{uuid-0e4180d1.js.map → uuid-ed079835.js.map} +1 -1
  378. package/cjs/withSendbird.js +1 -1
  379. package/{color-baff39e6.js → color-253fcdc4.js} +1 -1
  380. package/{color-baff39e6.js.map → color-253fcdc4.js.map} +1 -1
  381. package/{compareIds-45cb6c7e.js → compareIds-5494c074.js} +1 -1
  382. package/{compareIds-45cb6c7e.js.map → compareIds-5494c074.js.map} +1 -1
  383. package/{const-97f4dcf4.js → const-2aae43f2.js} +1 -1
  384. package/{const-97f4dcf4.js.map → const-2aae43f2.js.map} +1 -1
  385. package/const-8bb8cc10.js +14 -0
  386. package/const-8bb8cc10.js.map +1 -0
  387. package/{context-3e416fe0.js → context-8c660706.js} +2 -2
  388. package/{context-3e416fe0.js.map → context-8c660706.js.map} +1 -1
  389. package/dist/index.css +1190 -337
  390. package/dist/index.css.map +1 -1
  391. package/{index-1f08f186.js → index-1a59aaa9.js} +7 -7
  392. package/index-1a59aaa9.js.map +1 -0
  393. package/{index-29c95f90.js → index-358a6180.js} +4 -4
  394. package/{index-29c95f90.js.map → index-358a6180.js.map} +1 -1
  395. package/{index-e80fbb97.js → index-4a23e6ff.js} +2 -2
  396. package/{index-e80fbb97.js.map → index-4a23e6ff.js.map} +1 -1
  397. package/{index-55e004b6.js → index-4f51d577.js} +2 -2
  398. package/{index-55e004b6.js.map → index-4f51d577.js.map} +1 -1
  399. package/{index-d993e454.js → index-8b94db1e.js} +2 -2
  400. package/{index-d993e454.js.map → index-8b94db1e.js.map} +1 -1
  401. package/{index-801ab41e.js → index-a6dbcbe1.js} +2 -2
  402. package/{index-801ab41e.js.map → index-a6dbcbe1.js.map} +1 -1
  403. package/{index-5ba44303.js → index-b5b56cb7.js} +1 -1
  404. package/{index-5ba44303.js.map → index-b5b56cb7.js.map} +1 -1
  405. package/{index-b1fd400d.js → index-b932b49d.js} +5 -5
  406. package/{index-b1fd400d.js.map → index-b932b49d.js.map} +1 -1
  407. package/{index-a7f2d8fd.js → index-cb6348b0.js} +4 -4
  408. package/{index-a7f2d8fd.js.map → index-cb6348b0.js.map} +1 -1
  409. package/{index-b0bfb86e.js → index-d2dd3ae2.js} +1 -1
  410. package/{index-b0bfb86e.js.map → index-d2dd3ae2.js.map} +1 -1
  411. package/{index-fde25086.js → index-d5896de7.js} +9 -9
  412. package/index-d5896de7.js.map +1 -0
  413. package/index.d.ts +224 -13
  414. package/index.js +82 -68
  415. package/index.js.map +1 -1
  416. package/package.json +1 -1
  417. package/sendbirdSelectors.js +2 -2
  418. package/{stringSet-b9e1e7dc.js → stringSet-f0e25f08.js} +17 -3
  419. package/stringSet-f0e25f08.js.map +1 -0
  420. package/{topics-9580e9ae.js → topics-d2e15fe6.js} +1 -1
  421. package/{topics-9580e9ae.js.map → topics-d2e15fe6.js.map} +1 -1
  422. package/tslib.es6-279bc71d.js +92 -0
  423. package/{tslib.es6-257c9dc0.js.map → tslib.es6-279bc71d.js.map} +1 -1
  424. package/ui/Accordion.js +3 -3
  425. package/ui/AccordionGroup.js +2 -2
  426. package/ui/AdminMessage.js +3 -3
  427. package/ui/AdminMessage.js.map +1 -1
  428. package/ui/Avatar.js +2 -2
  429. package/ui/Badge.js +5 -5
  430. package/ui/BottomSheet.js +1 -1
  431. package/ui/Button.js +3 -3
  432. package/ui/ChannelAvatar.js +3 -3
  433. package/ui/ConnectionStatus.js +4 -4
  434. package/ui/ContextMenu.js +15 -11
  435. package/ui/ContextMenu.js.map +1 -1
  436. package/ui/DateSeparator.js +4 -4
  437. package/ui/EmojiReactions.js +26 -14
  438. package/ui/EmojiReactions.js.map +1 -1
  439. package/ui/FileMessageItemBody.js +11 -8
  440. package/ui/FileMessageItemBody.js.map +1 -1
  441. package/ui/FileViewer.js +8 -8
  442. package/ui/IconButton.js +1 -1
  443. package/ui/ImageRenderer.js +1 -1
  444. package/ui/Input.js +2 -2
  445. package/ui/Label.js +2 -2
  446. package/ui/LinkLabel.js +2 -2
  447. package/ui/Loader.js +1 -1
  448. package/ui/MentionLabel.js +15 -14
  449. package/ui/MentionLabel.js.map +1 -1
  450. package/ui/MessageContent.js +104 -56
  451. package/ui/MessageContent.js.map +1 -1
  452. package/ui/MessageInput.js +17 -13
  453. package/ui/MessageInput.js.map +1 -1
  454. package/ui/MessageItemMenu.js +40 -16
  455. package/ui/MessageItemMenu.js.map +1 -1
  456. package/ui/MessageItemReactionMenu.js +5 -5
  457. package/ui/MessageSearchFileItem.js +9 -9
  458. package/ui/MessageSearchItem.js +9 -9
  459. package/ui/MessageStatus.js +11 -11
  460. package/ui/MessageStatus.js.map +1 -1
  461. package/ui/Modal.js +7 -7
  462. package/ui/Modal.js.map +1 -1
  463. package/ui/OGMessageItemBody.js +11 -13
  464. package/ui/OGMessageItemBody.js.map +1 -1
  465. package/ui/OpenChannelAdminMessage.js +3 -3
  466. package/ui/OpenChannelAvatar.js +6 -6
  467. package/ui/OpenchannelConversationHeader.js +6 -6
  468. package/ui/OpenchannelFileMessage.js +21 -19
  469. package/ui/OpenchannelFileMessage.js.map +1 -1
  470. package/ui/OpenchannelOGMessage.js +18 -18
  471. package/ui/OpenchannelOGMessage.js.map +1 -1
  472. package/ui/OpenchannelThumbnailMessage.js +17 -17
  473. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  474. package/ui/OpenchannelUserMessage.js +16 -16
  475. package/ui/PlaceHolder.js +6 -6
  476. package/ui/QuoteMessage.js +34 -16
  477. package/ui/QuoteMessage.js.map +1 -1
  478. package/ui/QuoteMessageInput.js +6 -6
  479. package/ui/ReactionBadge.js +3 -3
  480. package/ui/ReactionButton.js +1 -1
  481. package/ui/SortByRow.js +2 -2
  482. package/ui/SortByRow.js.map +1 -1
  483. package/ui/TextButton.js +2 -2
  484. package/ui/TextMessageItemBody.js +11 -11
  485. package/ui/ThreadReplies.js +76 -0
  486. package/ui/ThreadReplies.js.map +1 -0
  487. package/ui/ThumbnailMessageItemBody.js +14 -12
  488. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  489. package/ui/Tooltip.js +3 -3
  490. package/ui/TooltipWrapper.js +1 -1
  491. package/ui/UnknownMessageItemBody.js +6 -6
  492. package/ui/UserListItem.js +17 -17
  493. package/ui/UserListItem.js.map +1 -1
  494. package/ui/UserProfile.js +14 -12
  495. package/ui/UserProfile.js.map +1 -1
  496. package/ui/Word.js +11 -11
  497. package/{useLongPress-471668c2.js → useLongPress-53f7929a.js} +3 -3
  498. package/{useLongPress-471668c2.js.map → useLongPress-53f7929a.js.map} +1 -1
  499. package/useSendbirdStateContext.js +1 -1
  500. package/{utils-27c9d41f.js → utils-128b3636.js} +1 -1
  501. package/{utils-27c9d41f.js.map → utils-128b3636.js.map} +1 -1
  502. package/{utils-f9a93d9a.js → utils-5a4995e3.js} +1 -1
  503. package/{utils-f9a93d9a.js.map → utils-5a4995e3.js.map} +1 -1
  504. package/utils-ad636dfd.js +30 -0
  505. package/utils-ad636dfd.js.map +1 -0
  506. package/{utils-63ed383e.js → utils-afd23bb8.js} +1 -1
  507. package/{utils-63ed383e.js.map → utils-afd23bb8.js.map} +1 -1
  508. package/{uuid-d2ed5e50.js → uuid-636df95b.js} +1 -1
  509. package/{uuid-d2ed5e50.js.map → uuid-636df95b.js.map} +1 -1
  510. package/withSendbird.js +1 -1
  511. package/ChannelProvider-c6154c45.js.map +0 -1
  512. package/MemberList-a1f955f3.js.map +0 -1
  513. package/OpenChannelProvider-2e9167b6.js.map +0 -1
  514. package/_rollupPluginBabelHelpers-cdd0b511.js.map +0 -1
  515. package/cjs/ChannelProvider-423912b2.js.map +0 -1
  516. package/cjs/MemberList-00ad7f6d.js.map +0 -1
  517. package/cjs/OpenChannelProvider-37e885fb.js.map +0 -1
  518. package/cjs/_rollupPluginBabelHelpers-63261191.js.map +0 -1
  519. package/cjs/const-e3a67a31.js.map +0 -1
  520. package/cjs/index-5b759304.js.map +0 -1
  521. package/cjs/index-8a4cee0d.js.map +0 -1
  522. package/cjs/stringSet-c1f0eb5e.js.map +0 -1
  523. package/cjs/tslib.es6-7122e617.js +0 -57
  524. package/const-7f0a43cc.js +0 -8
  525. package/const-7f0a43cc.js.map +0 -1
  526. package/index-1f08f186.js.map +0 -1
  527. package/index-fde25086.js.map +0 -1
  528. package/stringSet-b9e1e7dc.js.map +0 -1
  529. package/tslib.es6-257c9dc0.js +0 -54
package/App.js CHANGED
@@ -1,33 +1,34 @@
1
1
  import React__default, { useState, useEffect } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Sendbird from './SendbirdProvider.js';
4
- import { u as useMediaQueryContext } from './MediaQueryContext-fbda8d54.js';
4
+ import { u as useMediaQueryContext } from './MediaQueryContext-9c1bb79f.js';
5
5
  import ChannelList from './ChannelList.js';
6
6
  import Channel from './Channel.js';
7
7
  import ChannelSettings from './ChannelSettings.js';
8
8
  import MessageSearchPannel from './MessageSearch.js';
9
+ import Thread from './Thread.js';
9
10
  import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
10
11
  import useSendbirdStateContext from './useSendbirdStateContext.js';
11
- import { u as uuidv4 } from './uuid-d2ed5e50.js';
12
- import './_rollupPluginBabelHelpers-cdd0b511.js';
12
+ import { u as uuidv4 } from './uuid-636df95b.js';
13
+ import './_rollupPluginBabelHelpers-636e674b.js';
13
14
  import './withSendbird.js';
14
15
  import '@sendbird/chat';
15
16
  import '@sendbird/chat/openChannel';
16
- import './actionTypes-3724a60f.js';
17
- import './index-1f08f186.js';
18
- import './tslib.es6-257c9dc0.js';
17
+ import './actionTypes-9bf40e56.js';
18
+ import './index-1a59aaa9.js';
19
+ import './tslib.es6-279bc71d.js';
19
20
  import './utils/message/getOutgoingMessageState.js';
20
21
  import 'css-vars-ponyfill';
21
- import './LocalizationContext-8c300642.js';
22
- import './stringSet-b9e1e7dc.js';
23
- import './index-5ba44303.js';
24
- import './ChannelListProvider-fa5ee3c6.js';
25
- import './topics-9580e9ae.js';
26
- import './utils-f9a93d9a.js';
27
- import './UserProfileContext-5678a04f.js';
22
+ import './LocalizationContext-5920dafc.js';
23
+ import './stringSet-f0e25f08.js';
24
+ import './index-b5b56cb7.js';
25
+ import './ChannelListProvider-6916e880.js';
26
+ import './topics-d2e15fe6.js';
27
+ import './utils-5a4995e3.js';
28
+ import './UserProfileContext-749db4f6.js';
28
29
  import './ChannelList/components/ChannelListUI.js';
29
30
  import './ChannelList/components/ChannelListHeader.js';
30
- import './index-e80fbb97.js';
31
+ import './index-4a23e6ff.js';
31
32
  import './ui/IconButton.js';
32
33
  import './ui/Avatar.js';
33
34
  import './ui/ImageRenderer.js';
@@ -35,12 +36,12 @@ import './ui/Icon.js';
35
36
  import './ChannelList/components/AddChannel.js';
36
37
  import './CreateChannel.js';
37
38
  import './CreateChannel/components/CreateChannelUI.js';
38
- import './CreateChannelProvider-8058f838.js';
39
+ import './CreateChannelProvider-4604e579.js';
39
40
  import './sendbirdSelectors.js';
40
41
  import './CreateChannel/components/InviteUsers.js';
41
42
  import './ui/Modal.js';
42
43
  import 'react-dom';
43
- import './index-b0bfb86e.js';
44
+ import './index-d2dd3ae2.js';
44
45
  import './ui/Button.js';
45
46
  import './ui/UserListItem.js';
46
47
  import './ui/MutedAvatarOverlay.js';
@@ -51,35 +52,38 @@ import './ui/SortByRow.js';
51
52
  import './CreateChannel/components/SelectChannelType.js';
52
53
  import './ChannelList/components/ChannelPreview.js';
53
54
  import './ui/ChannelAvatar.js';
54
- import './utils-63ed383e.js';
55
+ import './utils-afd23bb8.js';
55
56
  import './ui/Badge.js';
56
- import './index-29c95f90.js';
57
- import './index-d993e454.js';
58
- import './index-55e004b6.js';
57
+ import './index-358a6180.js';
58
+ import './index-8b94db1e.js';
59
+ import './index-4f51d577.js';
59
60
  import './ui/MentionUserLabel.js';
60
61
  import './ui/TextButton.js';
61
- import './color-baff39e6.js';
62
+ import './color-253fcdc4.js';
62
63
  import './Channel/components/TypingIndicator.js';
63
- import './ChannelProvider-c6154c45.js';
64
- import './compareIds-45cb6c7e.js';
65
- import './const-7f0a43cc.js';
64
+ import './ChannelProvider-8be62d5d.js';
65
+ import './compareIds-5494c074.js';
66
+ import './const-8bb8cc10.js';
66
67
  import '@sendbird/chat/message';
67
68
  import './ui/ReactionButton.js';
68
69
  import './ui/MessageStatus.js';
69
70
  import './ui/Loader.js';
70
- import './useLongPress-471668c2.js';
71
+ import './useLongPress-53f7929a.js';
71
72
  import './ChannelList/components/ChannelPreviewAction.js';
72
73
  import './EditUserProfile.js';
73
- import './index-b1fd400d.js';
74
+ import './index-b932b49d.js';
74
75
  import './ui/Input.js';
75
- import './index-a7f2d8fd.js';
76
+ import './index-cb6348b0.js';
76
77
  import './Channel/components/ChannelUI.js';
77
78
  import './ui/ConnectionStatus.js';
78
79
  import './Channel/components/ChannelHeader.js';
80
+ import './utils-ad636dfd.js';
79
81
  import './Channel/components/MessageList.js';
80
82
  import './Channel/components/Message.js';
81
83
  import './Channel/components/SuggestedMentionList.js';
82
- import './const-97f4dcf4.js';
84
+ import './const-2aae43f2.js';
85
+ import './ThreadProvider-4640c6fb.js';
86
+ import './Thread/context/types.js';
83
87
  import './ui/DateSeparator.js';
84
88
  import './ui/MessageInput.js';
85
89
  import 'react-dom/server';
@@ -101,6 +105,7 @@ import './ui/OGMessageItemBody.js';
101
105
  import './ui/UnknownMessageItemBody.js';
102
106
  import './ui/QuoteMessage.js';
103
107
  import './ui/BottomSheet.js';
108
+ import './ui/ThreadReplies.js';
104
109
  import './Channel/components/FileViewer.js';
105
110
  import './Channel/components/RemoveMessageModal.js';
106
111
  import './Channel/components/FrozenNotification.js';
@@ -114,15 +119,25 @@ import './ChannelSettings/components/EditDetailsModal.js';
114
119
  import './ChannelSettings/components/ModerationPanel.js';
115
120
  import './ui/Accordion.js';
116
121
  import './ui/AccordionGroup.js';
117
- import './context-3e416fe0.js';
122
+ import './context-8c660706.js';
118
123
  import './ChannelSettings/components/UserListItem.js';
119
- import './MemberList-a1f955f3.js';
124
+ import './MemberList-743b0708.js';
120
125
  import './ChannelSettings/components/LeaveChannel.js';
121
126
  import './ChannelSettings/components/UserPanel.js';
122
127
  import './MessageSearch/components/MessageSearchUI.js';
123
128
  import './MessageSearch/context.js';
124
129
  import './ui/MessageSearchItem.js';
125
130
  import './ui/MessageSearchFileItem.js';
131
+ import './Thread/components/ThreadUI.js';
132
+ import './Thread/components/ParentMessageInfo.js';
133
+ import './RemoveMessageModal-0ce1f978.js';
134
+ import './Thread/components/ParentMessageInfoItem.js';
135
+ import './ui/FileViewer.js';
136
+ import './Thread/components/ThreadHeader.js';
137
+ import './Thread/components/ThreadList.js';
138
+ import './Thread/components/ThreadListItem.js';
139
+ import 'date-fns';
140
+ import './Thread/components/ThreadMessageInput.js';
126
141
 
127
142
  var DesktopLayout = function (props) {
128
143
  var isReactionEnabled = props.isReactionEnabled,
@@ -132,8 +147,8 @@ var DesktopLayout = function (props) {
132
147
  showSearchIcon = props.showSearchIcon,
133
148
  onProfileEditSuccess = props.onProfileEditSuccess,
134
149
  disableAutoSelect = props.disableAutoSelect,
135
- currentChannelUrl = props.currentChannelUrl,
136
- setCurrentChannelUrl = props.setCurrentChannelUrl,
150
+ currentChannel = props.currentChannel,
151
+ setCurrentChannel = props.setCurrentChannel,
137
152
  showSettings = props.showSettings,
138
153
  setShowSettings = props.setShowSettings,
139
154
  showSearch = props.showSearch,
@@ -141,7 +156,16 @@ var DesktopLayout = function (props) {
141
156
  highlightedMessage = props.highlightedMessage,
142
157
  setHighlightedMessage = props.setHighlightedMessage,
143
158
  startingPoint = props.startingPoint,
144
- setStartingPoint = props.setStartingPoint;
159
+ setStartingPoint = props.setStartingPoint,
160
+ showThread = props.showThread,
161
+ setShowThread = props.setShowThread,
162
+ threadTargetMessage = props.threadTargetMessage,
163
+ setThreadTargetMessage = props.setThreadTargetMessage;
164
+
165
+ var _a = useState(null),
166
+ animatedMessageId = _a[0],
167
+ setAnimatedMessageId = _a[1];
168
+
145
169
  return /*#__PURE__*/React__default.createElement("div", {
146
170
  className: "sendbird-app__wrap"
147
171
  }, /*#__PURE__*/React__default.createElement("div", {
@@ -154,26 +178,58 @@ var DesktopLayout = function (props) {
154
178
  setStartingPoint(null);
155
179
  setHighlightedMessage(null);
156
180
 
157
- if (channel === null || channel === void 0 ? void 0 : channel.url) {
158
- setCurrentChannelUrl(channel.url);
181
+ if (channel) {
182
+ setCurrentChannel(channel);
159
183
  } else {
160
- setCurrentChannelUrl('');
184
+ setCurrentChannel(null);
161
185
  }
162
186
  }
163
187
  })), /*#__PURE__*/React__default.createElement("div", {
164
188
  className: "\n ".concat(showSettings ? 'sendbird-app__conversation--settings-open' : '', "\n ").concat(showSearch ? 'sendbird-app__conversation--search-open' : '', "\n sendbird-app__conversation-wrap\n ")
165
189
  }, /*#__PURE__*/React__default.createElement(Channel, {
166
- channelUrl: currentChannelUrl,
190
+ channelUrl: (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) || '',
167
191
  onChatHeaderActionClick: function () {
168
192
  setShowSearch(false);
193
+ setShowThread(false);
169
194
  setShowSettings(!showSettings);
170
195
  },
171
196
  onSearchClick: function () {
172
197
  setShowSettings(false);
198
+ setShowThread(false);
173
199
  setShowSearch(!showSearch);
174
200
  },
201
+ onReplyInThread: function (_a) {
202
+ var message = _a.message;
203
+ setShowSettings(false);
204
+ setShowSearch(false);
205
+
206
+ if (replyType === 'THREAD') {
207
+ setThreadTargetMessage({
208
+ parentMessage: message,
209
+ parentMessageId: message === null || message === void 0 ? void 0 : message.messageId
210
+ });
211
+ setShowThread(true);
212
+ }
213
+ },
214
+ onQuoteMessageClick: function (_a) {
215
+ var message = _a.message;
216
+ setShowSettings(false);
217
+ setShowSearch(false);
218
+
219
+ if (replyType === 'THREAD') {
220
+ setThreadTargetMessage(message);
221
+ setShowThread(true);
222
+ }
223
+ },
224
+ onMessageAnimated: function () {
225
+ setAnimatedMessageId(null);
226
+ },
227
+ onMessageHighlighted: function () {
228
+ setHighlightedMessage(null);
229
+ },
175
230
  showSearchIcon: showSearchIcon,
176
231
  startingPoint: startingPoint,
232
+ animatedMessage: animatedMessageId,
177
233
  highlightedMessage: highlightedMessage,
178
234
  isReactionEnabled: isReactionEnabled,
179
235
  replyType: replyType,
@@ -182,14 +238,14 @@ var DesktopLayout = function (props) {
182
238
  className: "sendbird-app__settingspanel-wrap"
183
239
  }, /*#__PURE__*/React__default.createElement(ChannelSettings, {
184
240
  className: "sendbird-channel-settings",
185
- channelUrl: currentChannelUrl,
241
+ channelUrl: (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) || '',
186
242
  onCloseClick: function () {
187
243
  setShowSettings(false);
188
244
  }
189
245
  })), showSearch && /*#__PURE__*/React__default.createElement("div", {
190
246
  className: "sendbird-app__searchpanel-wrap"
191
247
  }, /*#__PURE__*/React__default.createElement(MessageSearchPannel, {
192
- channelUrl: currentChannelUrl,
248
+ channelUrl: (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) || '',
193
249
  onResultClick: function (message) {
194
250
  if (message.messageId === highlightedMessage) {
195
251
  setHighlightedMessage(null);
@@ -204,7 +260,30 @@ var DesktopLayout = function (props) {
204
260
  onCloseClick: function () {
205
261
  setShowSearch(false);
206
262
  }
207
- })));
263
+ })), showThread && /*#__PURE__*/React__default.createElement(Thread, {
264
+ className: "sendbird-app__thread",
265
+ channelUrl: (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) || '',
266
+ message: threadTargetMessage,
267
+ onHeaderActionClick: function () {
268
+ setShowThread(false);
269
+ },
270
+ onMoveToParentMessage: function (_a) {
271
+ var message = _a.message,
272
+ channel = _a.channel;
273
+
274
+ if ((channel === null || channel === void 0 ? void 0 : channel.url) !== (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url)) {
275
+ setCurrentChannel(channel);
276
+ }
277
+
278
+ if ((message === null || message === void 0 ? void 0 : message.messageId) !== animatedMessageId) {
279
+ setStartingPoint(message === null || message === void 0 ? void 0 : message.createdAt);
280
+ }
281
+
282
+ setTimeout(function () {
283
+ setAnimatedMessageId(message === null || message === void 0 ? void 0 : message.messageId);
284
+ }, 500);
285
+ }
286
+ }));
208
287
  };
209
288
 
210
289
  var PANELS;
@@ -225,8 +304,8 @@ var MobileLayout = function (props) {
225
304
  isReactionEnabled = props.isReactionEnabled,
226
305
  showSearchIcon = props.showSearchIcon,
227
306
  onProfileEditSuccess = props.onProfileEditSuccess,
228
- currentChannelUrl = props.currentChannelUrl,
229
- setCurrentChannelUrl = props.setCurrentChannelUrl,
307
+ currentChannel = props.currentChannel,
308
+ setCurrentChannel = props.setCurrentChannel,
230
309
  highlightedMessage = props.highlightedMessage,
231
310
  setHighlightedMessage = props.setHighlightedMessage,
232
311
  startingPoint = props.startingPoint,
@@ -260,17 +339,17 @@ var MobileLayout = function (props) {
260
339
  if ((_a = sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel) === null || _a === void 0 ? void 0 : _a.addGroupChannelHandler) {
261
340
  var handler = new GroupChannelHandler({
262
341
  onUserBanned: function (groupChannel, user) {
263
- if (groupChannel.url === currentChannelUrl && (user === null || user === void 0 ? void 0 : user.userId) === userId) {
342
+ if (groupChannel.url === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) && (user === null || user === void 0 ? void 0 : user.userId) === userId) {
264
343
  setPanel(PANELS.CHANNEL_LIST);
265
344
  }
266
345
  },
267
346
  onChannelDeleted: function (channelUrl) {
268
- if (channelUrl === currentChannelUrl) {
347
+ if (channelUrl === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url)) {
269
348
  setPanel(PANELS.CHANNEL_LIST);
270
349
  }
271
350
  },
272
351
  onUserLeft: function (groupChannel, user) {
273
- if (groupChannel.url === currentChannelUrl && (user === null || user === void 0 ? void 0 : user.userId) === userId) {
352
+ if (groupChannel.url === (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url) && (user === null || user === void 0 ? void 0 : user.userId) === userId) {
274
353
  setPanel(PANELS.CHANNEL_LIST);
275
354
  }
276
355
  }
@@ -289,7 +368,7 @@ var MobileLayout = function (props) {
289
368
  }, /*#__PURE__*/React__default.createElement(ChannelList, {
290
369
  onProfileEditSuccess: onProfileEditSuccess,
291
370
  onChannelSelect: function (channel) {
292
- setCurrentChannelUrl(channel === null || channel === void 0 ? void 0 : channel.url);
371
+ setCurrentChannel(channel);
293
372
  setPanel(PANELS.CHANNEL);
294
373
  },
295
374
  allowProfileEdit: allowProfileEdit // this condition must be true for mobile
@@ -299,7 +378,7 @@ var MobileLayout = function (props) {
299
378
  className: "sb_mobile__panelwrap"
300
379
  }, /*#__PURE__*/React__default.createElement(Channel, {
301
380
  replyType: replyType,
302
- channelUrl: currentChannelUrl,
381
+ channelUrl: currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url,
303
382
  onSearchClick: function () {
304
383
  setPanel(PANELS.MESSAGE_SEARCH);
305
384
  },
@@ -317,7 +396,7 @@ var MobileLayout = function (props) {
317
396
  })), panel === (PANELS === null || PANELS === void 0 ? void 0 : PANELS.CHANNEL_SETTINGS) && /*#__PURE__*/React__default.createElement("div", {
318
397
  className: "sb_mobile__panelwrap"
319
398
  }, /*#__PURE__*/React__default.createElement(ChannelSettings, {
320
- channelUrl: currentChannelUrl,
399
+ channelUrl: currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url,
321
400
  onCloseClick: function () {
322
401
  setPanel(PANELS.CHANNEL);
323
402
  },
@@ -327,7 +406,7 @@ var MobileLayout = function (props) {
327
406
  })), panel === (PANELS === null || PANELS === void 0 ? void 0 : PANELS.MESSAGE_SEARCH) && /*#__PURE__*/React__default.createElement("div", {
328
407
  className: "sb_mobile__panelwrap"
329
408
  }, /*#__PURE__*/React__default.createElement(MessageSearchPannel, {
330
- channelUrl: currentChannelUrl,
409
+ channelUrl: currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.url,
331
410
  onCloseClick: function () {
332
411
  setPanel(PANELS.CHANNEL);
333
412
  },
@@ -346,24 +425,32 @@ var AppLayout = function (props) {
346
425
  showSearchIcon = props.showSearchIcon,
347
426
  onProfileEditSuccess = props.onProfileEditSuccess,
348
427
  disableAutoSelect = props.disableAutoSelect,
349
- currentChannelUrl = props.currentChannelUrl,
350
- setCurrentChannelUrl = props.setCurrentChannelUrl;
428
+ currentChannel = props.currentChannel,
429
+ setCurrentChannel = props.setCurrentChannel;
351
430
 
352
431
  var _a = useState(false),
353
- showSettings = _a[0],
354
- setShowSettings = _a[1];
432
+ showThread = _a[0],
433
+ setShowThread = _a[1];
434
+
435
+ var _b = useState(null),
436
+ threadTargetMessage = _b[0],
437
+ setThreadTargetMessage = _b[1];
438
+
439
+ var _c = useState(false),
440
+ showSettings = _c[0],
441
+ setShowSettings = _c[1];
355
442
 
356
- var _b = useState(false),
357
- showSearch = _b[0],
358
- setShowSearch = _b[1];
443
+ var _d = useState(false),
444
+ showSearch = _d[0],
445
+ setShowSearch = _d[1];
359
446
 
360
- var _c = useState(null),
361
- highlightedMessage = _c[0],
362
- setHighlightedMessage = _c[1];
447
+ var _e = useState(null),
448
+ highlightedMessage = _e[0],
449
+ setHighlightedMessage = _e[1];
363
450
 
364
- var _d = useState(null),
365
- startingPoint = _d[0],
366
- setStartingPoint = _d[1];
451
+ var _f = useState(null),
452
+ startingPoint = _f[0],
453
+ setStartingPoint = _f[1];
367
454
 
368
455
  var isMobile = useMediaQueryContext().isMobile;
369
456
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, isMobile ? /*#__PURE__*/React__default.createElement(MobileLayout, {
@@ -373,8 +460,8 @@ var AppLayout = function (props) {
373
460
  isReactionEnabled: isReactionEnabled,
374
461
  showSearchIcon: showSearchIcon,
375
462
  onProfileEditSuccess: onProfileEditSuccess,
376
- currentChannelUrl: currentChannelUrl,
377
- setCurrentChannelUrl: setCurrentChannelUrl,
463
+ currentChannel: currentChannel,
464
+ setCurrentChannel: setCurrentChannel,
378
465
  highlightedMessage: highlightedMessage,
379
466
  setHighlightedMessage: setHighlightedMessage,
380
467
  startingPoint: startingPoint,
@@ -387,8 +474,12 @@ var AppLayout = function (props) {
387
474
  showSearchIcon: showSearchIcon,
388
475
  onProfileEditSuccess: onProfileEditSuccess,
389
476
  disableAutoSelect: disableAutoSelect,
390
- currentChannelUrl: currentChannelUrl,
391
- setCurrentChannelUrl: setCurrentChannelUrl,
477
+ currentChannel: currentChannel,
478
+ setCurrentChannel: setCurrentChannel,
479
+ showThread: showThread,
480
+ setShowThread: setShowThread,
481
+ threadTargetMessage: threadTargetMessage,
482
+ setThreadTargetMessage: setThreadTargetMessage,
392
483
  showSettings: showSettings,
393
484
  setShowSettings: setShowSettings,
394
485
  showSearch: showSearch,
@@ -436,7 +527,7 @@ function App(props) {
436
527
  isTypingIndicatorEnabledOnChannelList,
437
528
  isMessageReceiptStatusEnabledOnChannelList
438
529
  } = props;
439
- const [currentChannelUrl, setCurrentChannelUrl] = useState(null);
530
+ const [currentChannel, setCurrentChannel] = useState(null);
440
531
  return /*#__PURE__*/React__default.createElement(Sendbird, {
441
532
  stringSet: stringSet,
442
533
  appId: appId,
@@ -459,13 +550,14 @@ function App(props) {
459
550
  isReactionEnabled: isReactionEnabled,
460
551
  isMentionEnabled: isMentionEnabled,
461
552
  onUserProfileMessage: channel => {
462
- setCurrentChannelUrl(channel === null || channel === void 0 ? void 0 : channel.url);
553
+ currentChannel(channel);
463
554
  },
464
555
  isTypingIndicatorEnabledOnChannelList: isTypingIndicatorEnabledOnChannelList,
465
- isMessageReceiptStatusEnabledOnChannelList: isMessageReceiptStatusEnabledOnChannelList
556
+ isMessageReceiptStatusEnabledOnChannelList: isMessageReceiptStatusEnabledOnChannelList,
557
+ replyType: replyType
466
558
  }, /*#__PURE__*/React__default.createElement(AppLayout, {
467
- currentChannelUrl: currentChannelUrl,
468
- setCurrentChannelUrl: setCurrentChannelUrl,
559
+ currentChannel: currentChannel,
560
+ setCurrentChannel: setCurrentChannel,
469
561
  isReactionEnabled: isReactionEnabled,
470
562
  replyType: replyType,
471
563
  isMessageGroupingEnabled: isMessageGroupingEnabled,
package/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sources":["../src/smart-components/App/DesktopLayout.tsx","../src/smart-components/App/MobileLayout.tsx","../src/smart-components/App/AppLayout.tsx","../src/smart-components/App/index.jsx"],"sourcesContent":["import React from 'react';\n\nimport type { DesktopLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\n\nexport const DesktopLayout: React.FC<DesktopLayoutProps> = (\n props: DesktopLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannelUrl,\n setCurrentChannelUrl,\n showSettings,\n setShowSettings,\n showSearch,\n setShowSearch,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n } = props;\n return (\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel?.url) {\n setCurrentChannelUrl(channel.url);\n } else {\n setCurrentChannelUrl('');\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannelUrl}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowSearch(!showSearch);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannelUrl}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannelUrl}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n </div>\n )\n};\n","import './mobile.scss';\n\nimport React, { useState, useEffect } from 'react';\nimport type { BaseMessage } from '@sendbird/chat/message';\nimport type { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { GroupChannelHandler } from '@sendbird/chat/groupChannel';\n\nimport type { MobileLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearch from '../MessageSearch';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport uuidv4 from '../../utils/uuid';\n\nenum PANELS {\n CHANNEL_LIST = 'CHANNEL_LIST',\n CHANNEL = 'CHANNEL',\n CHANNEL_SETTINGS = 'CHANNEL_SETTINGS',\n MESSAGE_SEARCH = 'MESSAGE_SEARCH',\n}\n\nexport const MobileLayout: React.FC<MobileLayoutProps> = (\n props: MobileLayoutProps,\n) => {\n const {\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n isReactionEnabled,\n showSearchIcon,\n onProfileEditSuccess,\n currentChannelUrl,\n setCurrentChannelUrl,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n } = props;\n const [panel, setPanel] = useState(PANELS?.CHANNEL_LIST);\n\n const store = useSendbirdStateContext();\n const sdk = store?.stores?.sdkStore?.sdk as SendbirdGroupChat;\n const userId = store?.config?.userId;\n\n const goToMessage = (message?: BaseMessage | null) => {\n setStartingPoint(message?.createdAt);\n setTimeout(() => {\n setHighlightedMessage(message?.messageId);\n });\n };\n\n useEffect(() => {\n if (panel !== PANELS?.CHANNEL) {\n goToMessage();\n }\n }, [panel]);\n\n useEffect(() => {\n const handlerId = uuidv4();\n if (sdk?.groupChannel?.addGroupChannelHandler) {\n const handler = new GroupChannelHandler({\n onUserBanned: (groupChannel, user) => {\n if (groupChannel.url === currentChannelUrl && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onChannelDeleted: (channelUrl) => {\n if (channelUrl === currentChannelUrl) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onUserLeft: (groupChannel, user) => {\n if (groupChannel.url === currentChannelUrl && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n });\n sdk?.groupChannel?.addGroupChannelHandler(handlerId, handler)\n }\n return () => {\n sdk?.groupChannel?.removeGroupChannelHandler?.(handlerId);\n }\n }, [sdk]);\n\n return (\n <div>\n {\n panel === PANELS?.CHANNEL_LIST && (\n <div className='sb_mobile__panelwrap'>\n <ChannelList\n onProfileEditSuccess={onProfileEditSuccess}\n onChannelSelect={(channel) => {\n setCurrentChannelUrl(channel?.url);\n setPanel(PANELS.CHANNEL);\n }}\n allowProfileEdit={allowProfileEdit}\n // this condition must be true for mobile\n disableAutoSelect\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL && (\n <div className='sb_mobile__panelwrap'>\n <Channel\n replyType={replyType}\n channelUrl={currentChannelUrl}\n onSearchClick={() => {\n setPanel(PANELS.MESSAGE_SEARCH);\n }}\n onBackClick={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n onChatHeaderActionClick={() => {\n setPanel(PANELS.CHANNEL_SETTINGS);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL_SETTINGS && (\n <div className='sb_mobile__panelwrap'>\n <ChannelSettings\n channelUrl={currentChannelUrl}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onLeaveChannel={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.MESSAGE_SEARCH && (\n <div className='sb_mobile__panelwrap'>\n <MessageSearch\n channelUrl={currentChannelUrl}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onResultClick={(message) => {\n setPanel(PANELS.CHANNEL);\n goToMessage(message);\n }}\n />\n </div>\n )\n }\n </div>\n );\n};\n","import React, { useState } from 'react';\n\nimport type { AppLayoutProps } from './types';\n\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\n\nimport { DesktopLayout } from './DesktopLayout';\nimport { MobileLayout } from './MobileLayout';\n\nexport const AppLayout: React.FC<AppLayoutProps> = (\n props: AppLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannelUrl,\n setCurrentChannelUrl,\n } = props;\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState<number>(null);\n const [startingPoint, setStartingPoint] = useState<number>(null);\n const { isMobile } = useMediaQueryContext();\n return (\n <>\n {\n isMobile\n ? (\n <MobileLayout\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n currentChannelUrl={currentChannelUrl}\n setCurrentChannelUrl={setCurrentChannelUrl}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n : (\n <DesktopLayout\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n currentChannelUrl={currentChannelUrl}\n setCurrentChannelUrl={setCurrentChannelUrl}\n showSettings={showSettings}\n setShowSettings={setShowSettings}\n showSearch={showSearch}\n setShowSearch={setShowSearch}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n }\n </>\n )\n}\n","/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport { AppLayout } from './AppLayout';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n customApiHost,\n customWebSocketHost,\n mediaQueryBreakPoint,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n isReactionEnabled,\n isMentionEnabled,\n replyType,\n isMessageGroupingEnabled,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n } = props;\n const [currentChannelUrl, setCurrentChannelUrl] = useState(null);\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n customApiHost={customApiHost}\n customWebSocketHost={customWebSocketHost}\n mediaQueryBreakPoint={mediaQueryBreakPoint}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n disableMarkAsDelivered={disableMarkAsDelivered}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n isReactionEnabled={isReactionEnabled}\n isMentionEnabled={isMentionEnabled}\n onUserProfileMessage={(channel) => {\n setCurrentChannelUrl(channel?.url);\n }}\n isTypingIndicatorEnabledOnChannelList={isTypingIndicatorEnabledOnChannelList}\n isMessageReceiptStatusEnabledOnChannelList={isMessageReceiptStatusEnabledOnChannelList}\n >\n <AppLayout\n currentChannelUrl={currentChannelUrl}\n setCurrentChannelUrl={setCurrentChannelUrl}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n />\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n customApiHost: PropTypes.string,\n customWebSocketHost: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n mediaQueryBreakPoint: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n disableMarkAsDelivered: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n isREMUnitEnabled: PropTypes.bool,\n }),\n isReactionEnabled: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n isMessageGroupingEnabled: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n isTypingIndicatorEnabledOnChannelList: PropTypes.bool,\n isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n customApiHost: '',\n customWebSocketHost: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n mediaQueryBreakPoint: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n disableMarkAsDelivered: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n isReactionEnabled: true,\n isMentionEnabled: false,\n replyType: 'NONE',\n isMessageGroupingEnabled: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n isTypingIndicatorEnabledOnChannelList: false,\n isMessageReceiptStatusEnabledOnChannelList: false,\n};\n"],"names":["DesktopLayout","props","isReactionEnabled","replyType","isMessageGroupingEnabled","allowProfileEdit","showSearchIcon","onProfileEditSuccess","disableAutoSelect","currentChannelUrl","setCurrentChannelUrl","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","React","channel","url","concat","message","messageId","setTimeout","createdAt","PANELS","MobileLayout","_d","useState","CHANNEL_LIST","panel","setPanel","store","useSendbirdStateContext","sdk","_b","_a","stores","sdkStore","userId","_c","config","goToMessage","useEffect","CHANNEL","handlerId","uuidv4","groupChannel","addGroupChannelHandler","handler","GroupChannelHandler","onUserBanned","user","onChannelDeleted","channelUrl","onUserLeft","removeGroupChannelHandler","call","MESSAGE_SEARCH","CHANNEL_SETTINGS","MessageSearch","AppLayout","isMobile","useMediaQueryContext","App","appId","accessToken","customApiHost","customWebSocketHost","mediaQueryBreakPoint","theme","userListQuery","nickname","profileUrl","dateLocale","isMentionEnabled","colorSet","stringSet","disableUserProfile","disableMarkAsDelivered","renderUserProfile","imageCompression","isTypingIndicatorEnabledOnChannelList","isMessageReceiptStatusEnabledOnChannelList","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","isREMUnitEnabled","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sources":["../src/smart-components/App/DesktopLayout.tsx","../src/smart-components/App/MobileLayout.tsx","../src/smart-components/App/AppLayout.tsx","../src/smart-components/App/index.jsx"],"sourcesContent":["import React, { useState } from 'react';\n\nimport type { DesktopLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\nimport Thread from '../Thread';\nimport { BaseMessage, UserMessage } from '@sendbird/chat/message';\n\nexport const DesktopLayout: React.FC<DesktopLayoutProps> = (\n props: DesktopLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n showSettings,\n setShowSettings,\n showSearch,\n setShowSearch,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n showThread,\n setShowThread,\n threadTargetMessage,\n setThreadTargetMessage,\n } = props;\n const [animatedMessageId, setAnimatedMessageId] = useState(null);\n return (\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel) {\n setCurrentChannel(channel);\n } else {\n setCurrentChannel(null);\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannel?.url || ''}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowThread(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowThread(false);\n setShowSearch(!showSearch);\n }}\n onReplyInThread={({ message }) => { // parent message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage({\n parentMessage: message as BaseMessage,\n parentMessageId: message?.messageId,\n } as UserMessage);\n setShowThread(true);\n }\n }}\n onQuoteMessageClick={({ message }) => { // thread message\n setShowSettings(false);\n setShowSearch(false);\n if (replyType === 'THREAD') {\n setThreadTargetMessage(message);\n setShowThread(true);\n }\n }}\n onMessageAnimated={() => {\n setAnimatedMessageId(null);\n }}\n onMessageHighlighted={() => {\n setHighlightedMessage(null);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n animatedMessage={animatedMessageId}\n highlightedMessage={highlightedMessage}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannel?.url || ''}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannel?.url || ''}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n {showThread && (\n <Thread\n className=\"sendbird-app__thread\"\n channelUrl={currentChannel?.url || ''}\n message={threadTargetMessage}\n onHeaderActionClick={() => {\n setShowThread(false);\n }}\n onMoveToParentMessage={({ message, channel }) => {\n if (channel?.url !== currentChannel?.url) {\n setCurrentChannel(channel);\n }\n if (message?.messageId !== animatedMessageId) {\n setStartingPoint(message?.createdAt);\n }\n setTimeout(() => {\n setAnimatedMessageId(message?.messageId);\n }, 500);\n }}\n />\n )}\n </div>\n )\n};\n","import './mobile.scss';\n\nimport React, { useState, useEffect } from 'react';\nimport type { BaseMessage } from '@sendbird/chat/message';\nimport type { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { GroupChannelHandler } from '@sendbird/chat/groupChannel';\n\nimport type { MobileLayoutProps } from './types';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearch from '../MessageSearch';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport uuidv4 from '../../utils/uuid';\n\nenum PANELS {\n CHANNEL_LIST = 'CHANNEL_LIST',\n CHANNEL = 'CHANNEL',\n CHANNEL_SETTINGS = 'CHANNEL_SETTINGS',\n MESSAGE_SEARCH = 'MESSAGE_SEARCH',\n}\n\nexport const MobileLayout: React.FC<MobileLayoutProps> = (\n props: MobileLayoutProps,\n) => {\n const {\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n isReactionEnabled,\n showSearchIcon,\n onProfileEditSuccess,\n currentChannel,\n setCurrentChannel,\n highlightedMessage,\n setHighlightedMessage,\n startingPoint,\n setStartingPoint,\n } = props;\n const [panel, setPanel] = useState(PANELS?.CHANNEL_LIST);\n\n const store = useSendbirdStateContext();\n const sdk = store?.stores?.sdkStore?.sdk as SendbirdGroupChat;\n const userId = store?.config?.userId;\n\n const goToMessage = (message?: BaseMessage | null) => {\n setStartingPoint(message?.createdAt);\n setTimeout(() => {\n setHighlightedMessage(message?.messageId);\n });\n };\n\n useEffect(() => {\n if (panel !== PANELS?.CHANNEL) {\n goToMessage();\n }\n }, [panel]);\n\n useEffect(() => {\n const handlerId = uuidv4();\n if (sdk?.groupChannel?.addGroupChannelHandler) {\n const handler = new GroupChannelHandler({\n onUserBanned: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onChannelDeleted: (channelUrl) => {\n if (channelUrl === currentChannel?.url) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n onUserLeft: (groupChannel, user) => {\n if (groupChannel.url === currentChannel?.url && user?.userId === userId) {\n setPanel(PANELS.CHANNEL_LIST);\n }\n },\n });\n sdk?.groupChannel?.addGroupChannelHandler(handlerId, handler)\n }\n return () => {\n sdk?.groupChannel?.removeGroupChannelHandler?.(handlerId);\n }\n }, [sdk]);\n\n return (\n <div>\n {\n panel === PANELS?.CHANNEL_LIST && (\n <div className='sb_mobile__panelwrap'>\n <ChannelList\n onProfileEditSuccess={onProfileEditSuccess}\n onChannelSelect={(channel) => {\n setCurrentChannel(channel);\n setPanel(PANELS.CHANNEL);\n }}\n allowProfileEdit={allowProfileEdit}\n // this condition must be true for mobile\n disableAutoSelect\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL && (\n <div className='sb_mobile__panelwrap'>\n <Channel\n replyType={replyType}\n channelUrl={currentChannel?.url}\n onSearchClick={() => {\n setPanel(PANELS.MESSAGE_SEARCH);\n }}\n onBackClick={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n onChatHeaderActionClick={() => {\n setPanel(PANELS.CHANNEL_SETTINGS);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.CHANNEL_SETTINGS && (\n <div className='sb_mobile__panelwrap'>\n <ChannelSettings\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onLeaveChannel={() => {\n setPanel(PANELS.CHANNEL_LIST);\n }}\n />\n </div>\n )\n }\n {\n panel === PANELS?.MESSAGE_SEARCH && (\n <div className='sb_mobile__panelwrap'>\n <MessageSearch\n channelUrl={currentChannel?.url}\n onCloseClick={() => {\n setPanel(PANELS.CHANNEL);\n }}\n onResultClick={(message) => {\n setPanel(PANELS.CHANNEL);\n goToMessage(message);\n }}\n />\n </div>\n )\n }\n </div>\n );\n};\n","import React, { useState } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport type { AppLayoutProps } from './types';\n\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\nimport { DesktopLayout } from './DesktopLayout';\nimport { MobileLayout } from './MobileLayout';\n\nexport const AppLayout: React.FC<AppLayoutProps> = (\n props: AppLayoutProps,\n) => {\n const {\n isReactionEnabled,\n replyType,\n isMessageGroupingEnabled,\n allowProfileEdit,\n showSearchIcon,\n onProfileEditSuccess,\n disableAutoSelect,\n currentChannel,\n setCurrentChannel,\n } = props;\n const [showThread, setShowThread] = useState(false);\n const [threadTargetMessage, setThreadTargetMessage] = useState<UserMessage | FileMessage>(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState<number>(null);\n const [startingPoint, setStartingPoint] = useState<number>(null);\n const { isMobile } = useMediaQueryContext();\n return (\n <>\n {\n isMobile\n ? (\n <MobileLayout\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n isReactionEnabled={isReactionEnabled}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n : (\n <DesktopLayout\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n showThread={showThread}\n setShowThread={setShowThread}\n threadTargetMessage={threadTargetMessage}\n setThreadTargetMessage={setThreadTargetMessage}\n showSettings={showSettings}\n setShowSettings={setShowSettings}\n showSearch={showSearch}\n setShowSearch={setShowSearch}\n highlightedMessage={highlightedMessage}\n setHighlightedMessage={setHighlightedMessage}\n startingPoint={startingPoint}\n setStartingPoint={setStartingPoint}\n />\n )\n }\n </>\n )\n}\n","/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport { AppLayout } from './AppLayout';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n customApiHost,\n customWebSocketHost,\n mediaQueryBreakPoint,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n isReactionEnabled,\n isMentionEnabled,\n replyType,\n isMessageGroupingEnabled,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n disableMarkAsDelivered,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n } = props;\n const [currentChannel, setCurrentChannel] = useState(null);\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n customApiHost={customApiHost}\n customWebSocketHost={customWebSocketHost}\n mediaQueryBreakPoint={mediaQueryBreakPoint}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n disableMarkAsDelivered={disableMarkAsDelivered}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n isReactionEnabled={isReactionEnabled}\n isMentionEnabled={isMentionEnabled}\n onUserProfileMessage={(channel) => {\n currentChannel(channel);\n }}\n isTypingIndicatorEnabledOnChannelList={isTypingIndicatorEnabledOnChannelList}\n isMessageReceiptStatusEnabledOnChannelList={isMessageReceiptStatusEnabledOnChannelList}\n replyType={replyType}\n >\n <AppLayout\n currentChannel={currentChannel}\n setCurrentChannel={setCurrentChannel}\n isReactionEnabled={isReactionEnabled}\n replyType={replyType}\n isMessageGroupingEnabled={isMessageGroupingEnabled}\n allowProfileEdit={allowProfileEdit}\n showSearchIcon={showSearchIcon}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n />\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n customApiHost: PropTypes.string,\n customWebSocketHost: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n mediaQueryBreakPoint: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n disableMarkAsDelivered: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n isREMUnitEnabled: PropTypes.bool,\n }),\n isReactionEnabled: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n isMessageGroupingEnabled: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n isTypingIndicatorEnabledOnChannelList: PropTypes.bool,\n isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n customApiHost: '',\n customWebSocketHost: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n mediaQueryBreakPoint: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n disableMarkAsDelivered: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n isReactionEnabled: true,\n isMentionEnabled: false,\n replyType: 'NONE',\n isMessageGroupingEnabled: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n isTypingIndicatorEnabledOnChannelList: false,\n isMessageReceiptStatusEnabledOnChannelList: false,\n};\n"],"names":["DesktopLayout","props","isReactionEnabled","replyType","isMessageGroupingEnabled","allowProfileEdit","showSearchIcon","onProfileEditSuccess","disableAutoSelect","currentChannel","setCurrentChannel","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","showThread","setShowThread","threadTargetMessage","setThreadTargetMessage","_a","useState","animatedMessageId","setAnimatedMessageId","React","channel","concat","url","message","parentMessage","parentMessageId","messageId","setTimeout","createdAt","PANELS","MobileLayout","_d","CHANNEL_LIST","panel","setPanel","store","useSendbirdStateContext","sdk","_b","stores","sdkStore","userId","_c","config","goToMessage","useEffect","CHANNEL","handlerId","uuidv4","groupChannel","addGroupChannelHandler","handler","GroupChannelHandler","onUserBanned","user","onChannelDeleted","channelUrl","onUserLeft","removeGroupChannelHandler","call","MESSAGE_SEARCH","CHANNEL_SETTINGS","MessageSearch","AppLayout","_e","_f","isMobile","useMediaQueryContext","App","appId","accessToken","customApiHost","customWebSocketHost","mediaQueryBreakPoint","theme","userListQuery","nickname","profileUrl","dateLocale","isMentionEnabled","colorSet","stringSet","disableUserProfile","disableMarkAsDelivered","renderUserProfile","imageCompression","isTypingIndicatorEnabledOnChannelList","isMessageReceiptStatusEnabledOnChannelList","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","isREMUnitEnabled","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}