@sendbird/uikit-react 3.2.6 → 3.3.0-rc.1

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 +57 -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-6596e633.js → ChannelListProvider-82fa5abc.js} +8 -8
  35. package/{ChannelListProvider-6596e633.js.map → ChannelListProvider-82fa5abc.js.map} +1 -1
  36. package/{ChannelProvider-5e995fe8.js → ChannelProvider-0c8ccbbf.js} +96 -47
  37. package/ChannelProvider-0c8ccbbf.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-fc0268d6.js → CreateChannelProvider-5bd3ebea.js} +1 -1
  55. package/{CreateChannelProvider-fc0268d6.js.map → CreateChannelProvider-5bd3ebea.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-a90809c7.js → LocalizationContext-410574e8.js} +3 -3
  62. package/{LocalizationContext-a90809c7.js.map → LocalizationContext-410574e8.js.map} +1 -1
  63. package/{MediaQueryContext-280871f5.js → MediaQueryContext-53329809.js} +1 -1
  64. package/{MediaQueryContext-280871f5.js.map → MediaQueryContext-53329809.js.map} +1 -1
  65. package/{MemberList-25c34d5b.js → MemberList-35d3c304.js} +7 -6
  66. package/MemberList-35d3c304.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-9b77cf19.js → OpenChannelListProvider-f58761c4.js} +3 -3
  83. package/{OpenChannelListProvider-9b77cf19.js.map → OpenChannelListProvider-f58761c4.js.map} +1 -1
  84. package/{OpenChannelProvider-911f3536.js → OpenChannelProvider-a572410e.js} +7 -7
  85. package/OpenChannelProvider-a572410e.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-13018bc9.js +31 -0
  94. package/RemoveMessageModal-13018bc9.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-b7452f09.js +1644 -0
  118. package/ThreadProvider-b7452f09.js.map +1 -0
  119. package/{UserProfileContext-4e70ef73.js → UserProfileContext-2af91c5b.js} +1 -1
  120. package/{UserProfileContext-4e70ef73.js.map → UserProfileContext-2af91c5b.js.map} +1 -1
  121. package/{_rollupPluginBabelHelpers-51c9f5c3.js → _rollupPluginBabelHelpers-0df8ccf2.js} +1 -1
  122. package/_rollupPluginBabelHelpers-0df8ccf2.js.map +1 -0
  123. package/{actionTypes-3dc172c6.js → actionTypes-56bfddb6.js} +1 -1
  124. package/{actionTypes-3dc172c6.js.map → actionTypes-56bfddb6.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 +17 -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-a61b57d9.js → ChannelListProvider-2b605a05.js} +8 -8
  159. package/cjs/{ChannelListProvider-a61b57d9.js.map → ChannelListProvider-2b605a05.js.map} +1 -1
  160. package/cjs/{ChannelProvider-4dd6e426.js → ChannelProvider-0151b6ec.js} +95 -46
  161. package/cjs/ChannelProvider-0151b6ec.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-29af9e9c.js → CreateChannelProvider-67a24a4a.js} +1 -1
  179. package/cjs/{CreateChannelProvider-29af9e9c.js.map → CreateChannelProvider-67a24a4a.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-3c85c616.js → LocalizationContext-68ab5e81.js} +3 -3
  186. package/cjs/{LocalizationContext-3c85c616.js.map → LocalizationContext-68ab5e81.js.map} +1 -1
  187. package/cjs/{MediaQueryContext-c8f557d1.js → MediaQueryContext-7bd4247a.js} +1 -1
  188. package/cjs/{MediaQueryContext-c8f557d1.js.map → MediaQueryContext-7bd4247a.js.map} +1 -1
  189. package/cjs/{MemberList-0861d5f8.js → MemberList-61efd673.js} +7 -6
  190. package/cjs/MemberList-61efd673.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-934729b4.js → OpenChannelListProvider-03c75ad9.js} +3 -3
  207. package/cjs/{OpenChannelListProvider-934729b4.js.map → OpenChannelListProvider-03c75ad9.js.map} +1 -1
  208. package/cjs/{OpenChannelProvider-c05255cc.js → OpenChannelProvider-b3dacb85.js} +7 -7
  209. package/cjs/OpenChannelProvider-b3dacb85.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-22d7e167.js +37 -0
  218. package/cjs/RemoveMessageModal-22d7e167.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-06e039df.js +1653 -0
  242. package/cjs/ThreadProvider-06e039df.js.map +1 -0
  243. package/cjs/{UserProfileContext-c16bb529.js → UserProfileContext-a411f7b7.js} +1 -1
  244. package/cjs/{UserProfileContext-c16bb529.js.map → UserProfileContext-a411f7b7.js.map} +1 -1
  245. package/cjs/{_rollupPluginBabelHelpers-23c0e950.js → _rollupPluginBabelHelpers-3886e03a.js} +1 -1
  246. package/cjs/_rollupPluginBabelHelpers-3886e03a.js.map +1 -0
  247. package/cjs/{actionTypes-d80c4fb6.js → actionTypes-898f9ec5.js} +1 -1
  248. package/cjs/{actionTypes-d80c4fb6.js.map → actionTypes-898f9ec5.js.map} +1 -1
  249. package/cjs/{color-03c2ecf2.js → color-4ed3829e.js} +1 -1
  250. package/cjs/{color-03c2ecf2.js.map → color-4ed3829e.js.map} +1 -1
  251. package/cjs/{compareIds-c670ae57.js → compareIds-fc53942c.js} +1 -1
  252. package/cjs/{compareIds-c670ae57.js.map → compareIds-fc53942c.js.map} +1 -1
  253. package/cjs/{const-fe6f002d.js → const-8a65fe1e.js} +1 -1
  254. package/cjs/{const-fe6f002d.js.map → const-8a65fe1e.js.map} +1 -1
  255. package/cjs/{const-0095baf3.js → const-d025f0a2.js} +7 -1
  256. package/cjs/const-d025f0a2.js.map +1 -0
  257. package/cjs/{context-0fb617f1.js → context-48995334.js} +2 -2
  258. package/cjs/{context-0fb617f1.js.map → context-48995334.js.map} +1 -1
  259. package/cjs/dist/index.css +1049 -196
  260. package/cjs/dist/index.css.map +1 -1
  261. package/cjs/{index-607cb4ff.js → index-0cab061c.js} +1 -1
  262. package/cjs/{index-607cb4ff.js.map → index-0cab061c.js.map} +1 -1
  263. package/cjs/{index-97e2a887.js → index-2439032c.js} +9 -9
  264. package/cjs/index-2439032c.js.map +1 -0
  265. package/cjs/{index-b1a4b6f0.js → index-249ae5ae.js} +2 -2
  266. package/cjs/{index-b1a4b6f0.js.map → index-249ae5ae.js.map} +1 -1
  267. package/cjs/{index-fab17fef.js → index-311c564c.js} +4 -4
  268. package/cjs/{index-fab17fef.js.map → index-311c564c.js.map} +1 -1
  269. package/cjs/{index-0854d1ea.js → index-4a58b2e1.js} +2 -2
  270. package/cjs/{index-0854d1ea.js.map → index-4a58b2e1.js.map} +1 -1
  271. package/cjs/{index-039012c4.js → index-79006076.js} +4 -4
  272. package/cjs/{index-039012c4.js.map → index-79006076.js.map} +1 -1
  273. package/cjs/{index-1042f264.js → index-858d4ced.js} +2 -2
  274. package/cjs/{index-1042f264.js.map → index-858d4ced.js.map} +1 -1
  275. package/cjs/{index-27c6a6bc.js → index-9a71cc15.js} +2 -2
  276. package/cjs/{index-27c6a6bc.js.map → index-9a71cc15.js.map} +1 -1
  277. package/cjs/{index-475ae379.js → index-a8e6344b.js} +5 -5
  278. package/cjs/{index-475ae379.js.map → index-a8e6344b.js.map} +1 -1
  279. package/cjs/{index-1218eab2.js → index-c015580f.js} +7 -7
  280. package/cjs/index-c015580f.js.map +1 -0
  281. package/cjs/{index-1b69f7d2.js → index-f31610a5.js} +1 -1
  282. package/cjs/{index-1b69f7d2.js.map → index-f31610a5.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-da2fe019.js → stringSet-fd892563.js} +17 -3
  287. package/cjs/stringSet-fd892563.js.map +1 -0
  288. package/cjs/{topics-fd2124f5.js → topics-6a30e46d.js} +1 -1
  289. package/cjs/{topics-fd2124f5.js.map → topics-6a30e46d.js.map} +1 -1
  290. package/cjs/tslib.es6-029d13d0.js +97 -0
  291. package/cjs/{tslib.es6-bce345aa.js.map → tslib.es6-029d13d0.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-698416e4.js → useLongPress-40972b66.js} +3 -3
  366. package/cjs/{useLongPress-698416e4.js.map → useLongPress-40972b66.js.map} +1 -1
  367. package/cjs/useSendbirdStateContext.js +1 -1
  368. package/cjs/utils-d43cb0c1.js +32 -0
  369. package/cjs/utils-d43cb0c1.js.map +1 -0
  370. package/cjs/{utils-8a793976.js → utils-d8127210.js} +1 -1
  371. package/cjs/{utils-8a793976.js.map → utils-d8127210.js.map} +1 -1
  372. package/cjs/{utils-557bb5d2.js → utils-db6fb27a.js} +1 -1
  373. package/cjs/{utils-557bb5d2.js.map → utils-db6fb27a.js.map} +1 -1
  374. package/cjs/{utils-0d32641e.js → utils-f90f83c1.js} +1 -1
  375. package/cjs/{utils-0d32641e.js.map → utils-f90f83c1.js.map} +1 -1
  376. package/cjs/{uuid-2a459d4b.js → uuid-de38f276.js} +1 -1
  377. package/cjs/{uuid-2a459d4b.js.map → uuid-de38f276.js.map} +1 -1
  378. package/cjs/withSendbird.js +1 -1
  379. package/{color-e740c17f.js → color-1619c1b7.js} +1 -1
  380. package/{color-e740c17f.js.map → color-1619c1b7.js.map} +1 -1
  381. package/{compareIds-e84966df.js → compareIds-bbc4e959.js} +1 -1
  382. package/{compareIds-e84966df.js.map → compareIds-bbc4e959.js.map} +1 -1
  383. package/{const-3c9680d2.js → const-0751201c.js} +1 -1
  384. package/{const-3c9680d2.js.map → const-0751201c.js.map} +1 -1
  385. package/const-6e3eaa64.js +14 -0
  386. package/const-6e3eaa64.js.map +1 -0
  387. package/{context-3adaf9b3.js → context-0ecfbd98.js} +2 -2
  388. package/{context-3adaf9b3.js.map → context-0ecfbd98.js.map} +1 -1
  389. package/dist/index.css +1049 -196
  390. package/dist/index.css.map +1 -1
  391. package/{index-8ce0c4b6.js → index-2e0b072c.js} +5 -5
  392. package/{index-8ce0c4b6.js.map → index-2e0b072c.js.map} +1 -1
  393. package/{index-873ffa33.js → index-3ade03b5.js} +4 -4
  394. package/{index-873ffa33.js.map → index-3ade03b5.js.map} +1 -1
  395. package/{index-fb4777a9.js → index-43349e3a.js} +4 -4
  396. package/{index-fb4777a9.js.map → index-43349e3a.js.map} +1 -1
  397. package/{index-ca3ba8a0.js → index-468659e6.js} +7 -7
  398. package/index-468659e6.js.map +1 -0
  399. package/{index-8d74bd4b.js → index-4e38f6d5.js} +1 -1
  400. package/{index-8d74bd4b.js.map → index-4e38f6d5.js.map} +1 -1
  401. package/{index-0fa44537.js → index-51219968.js} +2 -2
  402. package/{index-0fa44537.js.map → index-51219968.js.map} +1 -1
  403. package/{index-8e0d1cc6.js → index-51ef2190.js} +1 -1
  404. package/{index-8e0d1cc6.js.map → index-51ef2190.js.map} +1 -1
  405. package/{index-64740116.js → index-59fddbdc.js} +2 -2
  406. package/{index-64740116.js.map → index-59fddbdc.js.map} +1 -1
  407. package/{index-cfdf3b6d.js → index-7ad981b0.js} +2 -2
  408. package/{index-cfdf3b6d.js.map → index-7ad981b0.js.map} +1 -1
  409. package/{index-041c94d3.js → index-dfbeafcd.js} +2 -2
  410. package/{index-041c94d3.js.map → index-dfbeafcd.js.map} +1 -1
  411. package/{index-05c36d6c.js → index-dfc090e4.js} +9 -9
  412. package/index-dfc090e4.js.map +1 -0
  413. package/index.d.ts +230 -14
  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-e413411d.js → stringSet-bd5e1130.js} +17 -3
  419. package/stringSet-bd5e1130.js.map +1 -0
  420. package/{topics-b81e5b9b.js → topics-d58e48df.js} +1 -1
  421. package/{topics-b81e5b9b.js.map → topics-d58e48df.js.map} +1 -1
  422. package/tslib.es6-0f615f78.js +92 -0
  423. package/{tslib.es6-e592f653.js.map → tslib.es6-0f615f78.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-8cda7590.js → useLongPress-3d0759b4.js} +3 -3
  498. package/{useLongPress-8cda7590.js.map → useLongPress-3d0759b4.js.map} +1 -1
  499. package/useSendbirdStateContext.js +1 -1
  500. package/{utils-c2438081.js → utils-9f07eb45.js} +1 -1
  501. package/{utils-c2438081.js.map → utils-9f07eb45.js.map} +1 -1
  502. package/{utils-f95bafde.js → utils-d76efebb.js} +1 -1
  503. package/{utils-f95bafde.js.map → utils-d76efebb.js.map} +1 -1
  504. package/{utils-90964f90.js → utils-db1bf7d1.js} +1 -1
  505. package/{utils-90964f90.js.map → utils-db1bf7d1.js.map} +1 -1
  506. package/utils-e2976a74.js +30 -0
  507. package/utils-e2976a74.js.map +1 -0
  508. package/{uuid-c41826f3.js → uuid-9f76bbf8.js} +1 -1
  509. package/{uuid-c41826f3.js.map → uuid-9f76bbf8.js.map} +1 -1
  510. package/withSendbird.js +1 -1
  511. package/ChannelProvider-5e995fe8.js.map +0 -1
  512. package/MemberList-25c34d5b.js.map +0 -1
  513. package/OpenChannelProvider-911f3536.js.map +0 -1
  514. package/_rollupPluginBabelHelpers-51c9f5c3.js.map +0 -1
  515. package/cjs/ChannelProvider-4dd6e426.js.map +0 -1
  516. package/cjs/MemberList-0861d5f8.js.map +0 -1
  517. package/cjs/OpenChannelProvider-c05255cc.js.map +0 -1
  518. package/cjs/_rollupPluginBabelHelpers-23c0e950.js.map +0 -1
  519. package/cjs/const-0095baf3.js.map +0 -1
  520. package/cjs/index-1218eab2.js.map +0 -1
  521. package/cjs/index-97e2a887.js.map +0 -1
  522. package/cjs/stringSet-da2fe019.js.map +0 -1
  523. package/cjs/tslib.es6-bce345aa.js +0 -57
  524. package/const-630a8129.js +0 -8
  525. package/const-630a8129.js.map +0 -1
  526. package/index-05c36d6c.js.map +0 -1
  527. package/index-ca3ba8a0.js.map +0 -1
  528. package/stringSet-e413411d.js.map +0 -1
  529. package/tslib.es6-e592f653.js +0 -54
package/CHANGELOG.md CHANGED
@@ -1,5 +1,62 @@
1
1
  # Changelog - v3
2
2
 
3
+ ## [v3.3.0] (Nov 23 2022)
4
+ Features:
5
+ * Provide new module `Thread`. See the specific informations of this module on the [Docs page](https://sendbird.com/docs/uikit)
6
+ * You can use a combined component `Thread`. Import it with
7
+ ```typescript
8
+ import Thread from "@sendbird/uikit-react/Thread"
9
+ ```
10
+ * Also you can use `ThreadProvider` and `useThreadContext` for customization. Import it with
11
+ ```typescript
12
+ import { ThreadProvider, useThreadContext } from "@sendbird/uikit-react/Thread/context"
13
+ ```
14
+ * And the other UI components are provided under the Thread. `ThreadUI`, `ThreadHeader`, `ParentMessageInfo`, `ParentMessageInfoItem`, `ThreadList`, `ThreadListItem`, and `ThreadMessageInput` are it
15
+ * Add channel props
16
+ * `threadReplySelectType`: Type of the value should be
17
+ ```typescript
18
+ enum ThreadReplySelectType { PARENT, THREAD }
19
+ ```
20
+ You can see how to use it below
21
+ ```typescript
22
+ import { ThreadReplySelectType } from "@sendbird/uikit-react/Channel/context";
23
+
24
+ <Channel
25
+ ...
26
+ threadReplySelectType={ThreadReplySelectType.PARENT}
27
+ />
28
+ ```
29
+ * `animatedMessage`: Type of the value should be number(messageId)
30
+ * `onReplyInThread`: This function is called when user click the button "Reply in thread" on the message context menu
31
+ ```typescript
32
+ type onReplyInThread = ({ message: UserMessage | FileMessage }) => void
33
+ ```
34
+ * `onQuoteMessageClick`: This function is called when user click the quote message on the message of Channel
35
+ ```typescript
36
+ type onQuoteMessageClick = ({ message: UserMessage | FileMessage }) => {}
37
+ ```
38
+ * `onMessageAnimated`: This function is called after that message item is animated
39
+ ```typescript
40
+ type onMessageAnimated = () => void
41
+ ```
42
+ * `onMessageHighlighted`: This function is called after that message item is highlighted
43
+ ```typescript
44
+ type onMessageHighlighted = () => void
45
+ ```
46
+ * Add `ui/ThreadReplies` component
47
+ ```typescript
48
+ interface ThreadRepliesProps {
49
+ className?: string;
50
+ threadInfo: ThreadInfo;
51
+ onClick?: (e: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>) => void;
52
+ }
53
+ ```
54
+
55
+ Fixes:
56
+ * Do not allow operator to unregister itself on the OperatorList of GroupChannel
57
+ * Create new group channel when user open 1:1 channel on the UserProfile
58
+ * Register the channel creator as an operator in 1:1 channel
59
+
3
60
  ## [v3.2.6] (Nov 14 2022)
4
61
  Fix:
5
62
  * Use ref instead of querySelector for DOM manipulation
@@ -1,30 +1,31 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../../index-64740116.js';
2
+ import { g as getChannelTitle } from '../../utils-e2976a74.js';
3
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-59fddbdc.js';
3
4
  import Icon, { IconColors, IconTypes } from '../../ui/Icon.js';
4
5
  import IconButton from '../../ui/IconButton.js';
5
6
  import ChannelAvatar from '../../ui/ChannelAvatar.js';
6
- import { a as LocalizationContext } from '../../LocalizationContext-a90809c7.js';
7
+ import { a as LocalizationContext } from '../../LocalizationContext-410574e8.js';
7
8
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
8
- import { u as useChannelContext } from '../../ChannelProvider-5e995fe8.js';
9
- import { u as useMediaQueryContext } from '../../MediaQueryContext-280871f5.js';
10
- import { n as noop } from '../../utils-c2438081.js';
9
+ import { u as useChannelContext } from '../../ChannelProvider-0c8ccbbf.js';
10
+ import { u as useMediaQueryContext } from '../../MediaQueryContext-53329809.js';
11
+ import { n as noop } from '../../utils-9f07eb45.js';
11
12
  import 'prop-types';
12
- import '../../stringSet-e413411d.js';
13
- import '../../tslib.es6-e592f653.js';
13
+ import '../../stringSet-bd5e1130.js';
14
+ import '../../tslib.es6-0f615f78.js';
14
15
  import '../../ui/Avatar.js';
15
16
  import '../../ui/ImageRenderer.js';
16
- import '../../uuid-c41826f3.js';
17
- import '../../utils-90964f90.js';
18
- import '../../index-8e0d1cc6.js';
17
+ import '../../uuid-9f76bbf8.js';
18
+ import '../../utils-db1bf7d1.js';
19
+ import '../../index-51ef2190.js';
19
20
  import '../../withSendbird.js';
20
- import '../../_rollupPluginBabelHelpers-51c9f5c3.js';
21
- import '../../UserProfileContext-4e70ef73.js';
22
- import '../../index-041c94d3.js';
23
- import '../../topics-b81e5b9b.js';
24
- import '../../index-ca3ba8a0.js';
21
+ import '../../_rollupPluginBabelHelpers-0df8ccf2.js';
22
+ import '../../UserProfileContext-2af91c5b.js';
23
+ import '../../index-dfbeafcd.js';
24
+ import '../../topics-d58e48df.js';
25
+ import '../../index-468659e6.js';
25
26
  import '../../utils/message/getOutgoingMessageState.js';
26
- import '../../compareIds-e84966df.js';
27
- import '../../const-630a8129.js';
27
+ import '../../compareIds-bbc4e959.js';
28
+ import '../../const-6e3eaa64.js';
28
29
  import '@sendbird/chat/groupChannel';
29
30
  import '@sendbird/chat/message';
30
31
  import '../../ui/ContextMenu.js';
@@ -32,32 +33,6 @@ import 'react-dom';
32
33
  import '../../ui/SortByRow.js';
33
34
  import '../../ui/ReactionButton.js';
34
35
 
35
- var getChannelTitle = function (channel, currentUserId, stringSet) {
36
- var _a;
37
-
38
- var LABEL_STRING_SET = stringSet || LabelStringSet;
39
-
40
- if (!(channel === null || channel === void 0 ? void 0 : channel.name) && !(channel === null || channel === void 0 ? void 0 : channel.members)) {
41
- return LABEL_STRING_SET.NO_TITLE;
42
- }
43
-
44
- if ((channel === null || channel === void 0 ? void 0 : channel.name) && channel.name !== 'Group Channel') {
45
- return channel.name;
46
- }
47
-
48
- if (((_a = channel === null || channel === void 0 ? void 0 : channel.members) === null || _a === void 0 ? void 0 : _a.length) === 1) {
49
- return LABEL_STRING_SET.NO_MEMBERS;
50
- }
51
-
52
- return channel === null || channel === void 0 ? void 0 : channel.members.filter(function (_a) {
53
- var userId = _a.userId;
54
- return userId !== currentUserId;
55
- }).map(function (_a) {
56
- var nickname = _a.nickname;
57
- return nickname || LABEL_STRING_SET.NO_NAME;
58
- }).join(', ');
59
- };
60
-
61
36
  var ChannelHeader = function () {
62
37
  var _a, _b, _c;
63
38
 
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelHeader.js","sources":["../../../src/smart-components/Channel/components/ChannelHeader/utils.ts","../../../src/smart-components/Channel/components/ChannelHeader/index.tsx"],"sourcesContent":["import type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (\n channel: GroupChannel,\n currentUserId: string,\n stringSet: { [label: string]: string }\n ): string => {\n const LABEL_STRING_SET: { [label: string]: string } = stringSet || LabelStringSet;\n if (!channel?.name && !channel?.members) {\n return LABEL_STRING_SET.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n\n if (channel?.members?.length === 1) {\n return LABEL_STRING_SET.NO_MEMBERS;\n }\n\n return channel?.members\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || LABEL_STRING_SET.NO_NAME))\n .join(', ');\n};\n","import './channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport * as utils from './utils';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport ChannelAvatar from '../../../../ui/ChannelAvatar/index';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { useMediaQueryContext } from '../../../../lib/MediaQueryContext';\nimport { noop } from '../../../../utils/utils'\n\nconst ChannelHeader: React.FC = () => {\n const globalStore = useSendbirdStateContext();\n const userId = globalStore?.config?.userId;\n const theme = globalStore?.config?.theme;\n\n const channelStore = useChannelContext();\n const { isMobile } = useMediaQueryContext();\n const {\n currentGroupChannel,\n showSearchIcon,\n onSearchClick,\n onChatHeaderActionClick,\n onBackClick = noop,\n } = channelStore;\n const subTitle = (currentGroupChannel?.members\n && currentGroupChannel?.members?.length !== 2);\n const isMuted = currentGroupChannel?.myMutedState === \"muted\";\n\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-chat-header\">\n <div className=\"sendbird-chat-header__left\">\n {\n isMobile && (\n <Icon\n className=\"sendbird-chat-header__icon_back\"\n onClick={onBackClick}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.ARROW_LEFT}\n />\n )\n }\n <ChannelAvatar\n theme={theme}\n channel={currentGroupChannel}\n userId={userId}\n height={32}\n width={32}\n />\n <Label\n className=\"sendbird-chat-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(currentGroupChannel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-chat-header__left__subtitle\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle}\n </Label>\n </div>\n <div className=\"sendbird-chat-header__right\">\n {\n ((typeof isMuted === 'string' && isMuted === 'true') || (typeof isMuted === 'boolean' && isMuted))\n && (\n <Icon\n className=\"sendbird-chat-header__right__mute\"\n type={IconTypes.NOTIFICATIONS_OFF_FILLED}\n width=\"24px\"\n height=\"24px\"\n />\n )\n }\n {\n showSearchIcon && (\n <IconButton\n className=\"sendbird-chat-header__right__search\"\n width=\"32px\"\n height=\"32px\"\n onClick={onSearchClick}\n >\n <Icon\n type={IconTypes.SEARCH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n }\n <IconButton\n className=\"sendbird-chat-header__right__info\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={IconTypes.INFO}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n\nexport default ChannelHeader;\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LABEL_STRING_SET","LabelStringSet","name","members","NO_TITLE","_a","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","ChannelHeader","globalStore","useSendbirdStateContext","config","theme","_b","channelStore","useChannelContext","isMobile","useMediaQueryContext","currentGroupChannel","showSearchIcon","onSearchClick","onChatHeaderActionClick","_d","onBackClick","noop","subTitle","_c","isMuted","myMutedState","useContext","LocalizationContext","React","IconColors","PRIMARY","IconTypes","ARROW_LEFT","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","utils","BODY_1","ONBACKGROUND_2","NOTIFICATIONS_OFF_FILLED","SEARCH","INFO"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelHeader.js","sources":["../../../src/smart-components/Channel/components/ChannelHeader/index.tsx"],"sourcesContent":["import './channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport * as utils from './utils';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport ChannelAvatar from '../../../../ui/ChannelAvatar/index';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport { useMediaQueryContext } from '../../../../lib/MediaQueryContext';\nimport { noop } from '../../../../utils/utils'\n\nconst ChannelHeader: React.FC = () => {\n const globalStore = useSendbirdStateContext();\n const userId = globalStore?.config?.userId;\n const theme = globalStore?.config?.theme;\n\n const channelStore = useChannelContext();\n const { isMobile } = useMediaQueryContext();\n const {\n currentGroupChannel,\n showSearchIcon,\n onSearchClick,\n onChatHeaderActionClick,\n onBackClick = noop,\n } = channelStore;\n const subTitle = (currentGroupChannel?.members\n && currentGroupChannel?.members?.length !== 2);\n const isMuted = currentGroupChannel?.myMutedState === \"muted\";\n\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-chat-header\">\n <div className=\"sendbird-chat-header__left\">\n {\n isMobile && (\n <Icon\n className=\"sendbird-chat-header__icon_back\"\n onClick={onBackClick}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.ARROW_LEFT}\n />\n )\n }\n <ChannelAvatar\n theme={theme}\n channel={currentGroupChannel}\n userId={userId}\n height={32}\n width={32}\n />\n <Label\n className=\"sendbird-chat-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(currentGroupChannel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-chat-header__left__subtitle\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle}\n </Label>\n </div>\n <div className=\"sendbird-chat-header__right\">\n {\n ((typeof isMuted === 'string' && isMuted === 'true') || (typeof isMuted === 'boolean' && isMuted))\n && (\n <Icon\n className=\"sendbird-chat-header__right__mute\"\n type={IconTypes.NOTIFICATIONS_OFF_FILLED}\n width=\"24px\"\n height=\"24px\"\n />\n )\n }\n {\n showSearchIcon && (\n <IconButton\n className=\"sendbird-chat-header__right__search\"\n width=\"32px\"\n height=\"32px\"\n onClick={onSearchClick}\n >\n <Icon\n type={IconTypes.SEARCH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n }\n <IconButton\n className=\"sendbird-chat-header__right__info\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={IconTypes.INFO}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n\nexport default ChannelHeader;\n"],"names":["ChannelHeader","globalStore","useSendbirdStateContext","userId","_a","config","theme","_b","channelStore","useChannelContext","isMobile","useMediaQueryContext","currentGroupChannel","showSearchIcon","onSearchClick","onChatHeaderActionClick","_d","onBackClick","noop","subTitle","members","_c","length","isMuted","myMutedState","stringSet","useContext","LocalizationContext","React","IconColors","PRIMARY","IconTypes","ARROW_LEFT","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","utils","BODY_1","ONBACKGROUND_2","NOTIFICATIONS_OFF_FILLED","SEARCH","INFO"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import React__default, { useState, useEffect } from 'react';
2
2
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
3
- import { u as useChannelContext, M as MARK_AS_READ } from '../../ChannelProvider-5e995fe8.js';
4
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-873ffa33.js';
3
+ import { u as useChannelContext, M as MARK_AS_READ } from '../../ChannelProvider-0c8ccbbf.js';
4
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-3ade03b5.js';
5
5
  import ConnectionStatus from '../../ui/ConnectionStatus.js';
6
6
  import ChannelHeader from './ChannelHeader.js';
7
7
  import MessageList from './MessageList.js';
@@ -10,42 +10,46 @@ import FrozenNotification from './FrozenNotification.js';
10
10
  import UnreadCount from './UnreadCount.js';
11
11
  import MessageInputWrapper from './MessageInput.js';
12
12
  import '../../withSendbird.js';
13
- import '../../_rollupPluginBabelHelpers-51c9f5c3.js';
14
- import '../../UserProfileContext-4e70ef73.js';
13
+ import '../../_rollupPluginBabelHelpers-0df8ccf2.js';
14
+ import '../../UserProfileContext-2af91c5b.js';
15
15
  import 'prop-types';
16
- import '../../index-041c94d3.js';
17
- import '../../index-8e0d1cc6.js';
18
- import '../../topics-b81e5b9b.js';
19
- import '../../index-ca3ba8a0.js';
20
- import '../../tslib.es6-e592f653.js';
16
+ import '../../index-dfbeafcd.js';
17
+ import '../../index-51ef2190.js';
18
+ import '../../topics-d58e48df.js';
19
+ import '../../index-468659e6.js';
20
+ import '../../tslib.es6-0f615f78.js';
21
21
  import '../../utils/message/getOutgoingMessageState.js';
22
- import '../../compareIds-e84966df.js';
23
- import '../../const-630a8129.js';
22
+ import '../../compareIds-bbc4e959.js';
23
+ import '../../const-6e3eaa64.js';
24
24
  import '@sendbird/chat/groupChannel';
25
- import '../../uuid-c41826f3.js';
25
+ import '../../uuid-9f76bbf8.js';
26
26
  import '@sendbird/chat/message';
27
27
  import '../../ui/ContextMenu.js';
28
28
  import 'react-dom';
29
29
  import '../../ui/SortByRow.js';
30
- import '../../index-64740116.js';
31
- import '../../stringSet-e413411d.js';
30
+ import '../../index-59fddbdc.js';
31
+ import '../../stringSet-bd5e1130.js';
32
32
  import '../../ui/ReactionButton.js';
33
33
  import '../../ui/ImageRenderer.js';
34
34
  import '../../ui/Icon.js';
35
- import '../../LocalizationContext-a90809c7.js';
35
+ import '../../LocalizationContext-410574e8.js';
36
36
  import '../../ui/Loader.js';
37
+ import '../../utils-e2976a74.js';
37
38
  import '../../ui/IconButton.js';
38
39
  import '../../ui/ChannelAvatar.js';
39
40
  import '../../ui/Avatar.js';
40
- import '../../utils-90964f90.js';
41
- import '../../MediaQueryContext-280871f5.js';
42
- import '../../utils-c2438081.js';
43
- import '../../index-0fa44537.js';
41
+ import '../../utils-db1bf7d1.js';
42
+ import '../../MediaQueryContext-53329809.js';
43
+ import '../../utils-9f07eb45.js';
44
+ import '../../index-51219968.js';
44
45
  import './Message.js';
45
46
  import './SuggestedMentionList.js';
46
- import '../../const-3c9680d2.js';
47
+ import '../../const-0751201c.js';
48
+ import '../../ThreadProvider-b7452f09.js';
49
+ import '../../Thread/context/types.js';
50
+ import '@sendbird/chat';
47
51
  import '../../ui/DateSeparator.js';
48
- import '../../color-e740c17f.js';
52
+ import '../../color-1619c1b7.js';
49
53
  import '../../ui/MessageInput.js';
50
54
  import 'react-dom/server';
51
55
  import '../../ui/Button.js';
@@ -71,9 +75,10 @@ import '../../ui/ThumbnailMessageItemBody.js';
71
75
  import '../../ui/OGMessageItemBody.js';
72
76
  import '../../ui/UnknownMessageItemBody.js';
73
77
  import '../../ui/QuoteMessage.js';
74
- import '../../useLongPress-8cda7590.js';
78
+ import '../../useLongPress-3d0759b4.js';
75
79
  import '../../ui/BottomSheet.js';
76
- import '../../index-8d74bd4b.js';
80
+ import '../../index-4e38f6d5.js';
81
+ import '../../ui/ThreadReplies.js';
77
82
  import './FileViewer.js';
78
83
  import './RemoveMessageModal.js';
79
84
  import '../../ui/Modal.js';
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelUI.js","sources":["../../../src/smart-components/Channel/components/ChannelUI/index.tsx"],"sourcesContent":["import './channel-ui.scss';\n\nimport React, { useEffect, useState } from 'react';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport ConnectionStatus from '../../../../ui/ConnectionStatus';\nimport ChannelHeader from '../ChannelHeader';\nimport MessageList from '../MessageList';\nimport TypingIndicator from '../TypingIndicator';\nimport FrozenNotification from '../FrozenNotification';\nimport UnreadCount from '../UnreadCount';\nimport MessageInputWrapper from '../MessageInput';\nimport { RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport * as messageActionTypes from '../../context/dux/actionTypes';\n\nexport interface ChannelUIProps {\n isLoading?: boolean;\n renderPlaceholderLoader?: () => React.ReactElement;\n renderPlaceholderInvalid?: () => React.ReactElement;\n renderPlaceholderEmpty?: () => React.ReactElement;\n renderChannelHeader?: () => React.ReactElement;\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderTypingIndicator?: () => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n}\n\nconst ChannelUI: React.FC<ChannelUIProps> = ({\n isLoading,\n renderPlaceholderLoader,\n renderPlaceholderInvalid,\n renderPlaceholderEmpty,\n renderChannelHeader,\n renderMessage,\n renderMessageInput,\n renderTypingIndicator,\n renderCustomSeparator,\n}: ChannelUIProps) => {\n const {\n currentGroupChannel,\n channelUrl,\n isInvalid,\n unreadSince,\n loading,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n scrollRef,\n messagesDispatcher,\n disableMarkAsRead,\n } = useChannelContext();\n const [unreadCount, setUnreadCount] = useState(0);\n useEffect(() => {\n // simple debounce to avoid flicker of UnreadCount badge\n const handler = setTimeout(() => {\n setUnreadCount(currentGroupChannel?.unreadMessageCount);\n }, 1000);\n return () => {\n clearTimeout(handler);\n }\n }, [currentGroupChannel?.unreadMessageCount]);\n const globalStore = useSendbirdStateContext();\n const sdkError = globalStore?.stores?.sdkStore?.error;\n const logger = globalStore?.config?.logger;\n const isOnline = globalStore?.config?.isOnline;\n\n if (isLoading) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>);\n }\n\n if (!channelUrl) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n }\n </div>);\n }\n if (isInvalid) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n );\n }\n if (sdkError) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={() => {\n logger.info('Channel: reconnecting');\n // reconnect();\n }}\n />\n )\n }\n </div>\n );\n }\n return (\n <div className='sendbird-conversation'>\n {\n renderChannelHeader?.() || (\n <ChannelHeader />\n )\n }\n {\n currentGroupChannel?.isFrozen && (\n <FrozenNotification />\n )\n }\n {\n unreadCount > 0 && (\n <UnreadCount\n count={unreadCount}\n time={unreadSince}\n onClick={() => {\n setUnreadCount(0);\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n if (!disableMarkAsRead) {\n try {\n currentGroupChannel?.markAsRead();\n } catch {\n //\n }\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n }\n setInitialTimeStamp(null);\n setAnimatedMessageId(null);\n setHighLightedMessageId(null);\n }}\n />\n )\n }\n {\n loading\n ? (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>\n ) : (\n <MessageList\n renderMessage={renderMessage}\n renderPlaceholderEmpty={renderPlaceholderEmpty}\n renderCustomSeparator={renderCustomSeparator}\n />\n )\n }\n <div className=\"sendbird-conversation__footer\">\n {\n renderMessageInput?.() || (\n <MessageInputWrapper />\n )\n }\n <div className=\"sendbird-conversation__footer__typing-indicator\">\n {\n renderTypingIndicator?.() || (\n <TypingIndicator />\n )\n }\n {\n !isOnline && (\n <ConnectionStatus />\n )\n }\n </div>\n </div>\n </div>\n );\n}\n\nexport default ChannelUI;\n"],"names":["ChannelUI","_a","isLoading","renderPlaceholderLoader","renderPlaceholderInvalid","renderPlaceholderEmpty","renderChannelHeader","renderMessage","renderMessageInput","renderTypingIndicator","renderCustomSeparator","_f","useChannelContext","currentGroupChannel","channelUrl","isInvalid","unreadSince","loading","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","scrollRef","messagesDispatcher","disableMarkAsRead","_g","useState","unreadCount","setUnreadCount","useEffect","handler","setTimeout","unreadMessageCount","clearTimeout","globalStore","useSendbirdStateContext","sdkError","_c","_b","stores","sdkStore","error","logger","_d","config","isOnline","_e","React","PlaceHolderTypes","LOADING","NO_CHANNELS","WRONG","info","isFrozen","current","scrollTop","scrollHeight","offsetHeight","markAsRead","type","messageActionTypes","payload","channel"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelUI.js","sources":["../../../src/smart-components/Channel/components/ChannelUI/index.tsx"],"sourcesContent":["import './channel-ui.scss';\n\nimport React, { useEffect, useState } from 'react';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport ConnectionStatus from '../../../../ui/ConnectionStatus';\nimport ChannelHeader from '../ChannelHeader';\nimport MessageList from '../MessageList';\nimport TypingIndicator from '../TypingIndicator';\nimport FrozenNotification from '../FrozenNotification';\nimport UnreadCount from '../UnreadCount';\nimport MessageInputWrapper from '../MessageInput';\nimport { RenderCustomSeparatorProps, RenderMessageProps } from '../../../../types';\nimport * as messageActionTypes from '../../context/dux/actionTypes';\n\nexport interface ChannelUIProps {\n isLoading?: boolean;\n renderPlaceholderLoader?: () => React.ReactElement;\n renderPlaceholderInvalid?: () => React.ReactElement;\n renderPlaceholderEmpty?: () => React.ReactElement;\n renderChannelHeader?: () => React.ReactElement;\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderTypingIndicator?: () => React.ReactElement;\n renderCustomSeparator?: (props: RenderCustomSeparatorProps) => React.ReactElement;\n}\n\nconst ChannelUI: React.FC<ChannelUIProps> = ({\n isLoading,\n renderPlaceholderLoader,\n renderPlaceholderInvalid,\n renderPlaceholderEmpty,\n renderChannelHeader,\n renderMessage,\n renderMessageInput,\n renderTypingIndicator,\n renderCustomSeparator,\n}: ChannelUIProps) => {\n const {\n currentGroupChannel,\n channelUrl,\n isInvalid,\n unreadSince,\n loading,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n scrollRef,\n messagesDispatcher,\n disableMarkAsRead,\n } = useChannelContext();\n const [unreadCount, setUnreadCount] = useState(0);\n useEffect(() => {\n // simple debounce to avoid flicker of UnreadCount badge\n const handler = setTimeout(() => {\n setUnreadCount(currentGroupChannel?.unreadMessageCount);\n }, 1000);\n return () => {\n clearTimeout(handler);\n }\n }, [currentGroupChannel?.unreadMessageCount]);\n const globalStore = useSendbirdStateContext();\n const sdkError = globalStore?.stores?.sdkStore?.error;\n const logger = globalStore?.config?.logger;\n const isOnline = globalStore?.config?.isOnline;\n\n if (isLoading) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>);\n }\n\n if (!channelUrl) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n }\n </div>);\n }\n if (isInvalid) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n );\n }\n if (sdkError) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={() => {\n logger.info('Channel: reconnecting');\n // reconnect();\n }}\n />\n )\n }\n </div>\n );\n }\n return (\n <div className='sendbird-conversation'>\n {\n renderChannelHeader?.() || (\n <ChannelHeader />\n )\n }\n {\n currentGroupChannel?.isFrozen && (\n <FrozenNotification />\n )\n }\n {\n unreadCount > 0 && (\n <UnreadCount\n count={unreadCount}\n time={unreadSince}\n onClick={() => {\n setUnreadCount(0);\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n if (!disableMarkAsRead) {\n try {\n currentGroupChannel?.markAsRead();\n } catch {\n //\n }\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n }\n setInitialTimeStamp(null);\n setAnimatedMessageId(null);\n setHighLightedMessageId(null);\n }}\n />\n )\n }\n {\n loading\n ? (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>\n ) : (\n <MessageList\n renderMessage={renderMessage}\n renderPlaceholderEmpty={renderPlaceholderEmpty}\n renderCustomSeparator={renderCustomSeparator}\n />\n )\n }\n <div className=\"sendbird-conversation__footer\">\n {\n renderMessageInput?.() || (\n <MessageInputWrapper />\n )\n }\n <div className=\"sendbird-conversation__footer__typing-indicator\">\n {\n renderTypingIndicator?.() || (\n <TypingIndicator />\n )\n }\n {\n !isOnline && (\n <ConnectionStatus />\n )\n }\n </div>\n </div>\n </div>\n );\n}\n\nexport default ChannelUI;\n"],"names":["ChannelUI","_a","isLoading","renderPlaceholderLoader","renderPlaceholderInvalid","renderPlaceholderEmpty","renderChannelHeader","renderMessage","renderMessageInput","renderTypingIndicator","renderCustomSeparator","_f","useChannelContext","currentGroupChannel","channelUrl","isInvalid","unreadSince","loading","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","scrollRef","messagesDispatcher","disableMarkAsRead","_g","useState","unreadCount","setUnreadCount","useEffect","handler","setTimeout","unreadMessageCount","clearTimeout","globalStore","useSendbirdStateContext","sdkError","_c","_b","stores","sdkStore","error","logger","_d","config","isOnline","_e","React","PlaceHolderTypes","LOADING","NO_CHANNELS","WRONG","info","isFrozen","current","scrollTop","scrollHeight","offsetHeight","markAsRead","type","messageActionTypes","payload","channel"],"mappings":"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"}
@@ -1,26 +1,26 @@
1
1
  import React__default from 'react';
2
2
  import { createPortal } from 'react-dom';
3
3
  import Avatar from '../../ui/Avatar.js';
4
- import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-64740116.js';
4
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-59fddbdc.js';
5
5
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
6
- import { M as MODAL_ROOT } from '../../index-8d74bd4b.js';
7
- import { D as isSupportedFileView, E as isVideo, F as isImage } from '../../index-ca3ba8a0.js';
6
+ import { M as MODAL_ROOT } from '../../index-4e38f6d5.js';
7
+ import { D as isSupportedFileView, E as isVideo, F as isImage } from '../../index-468659e6.js';
8
8
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
9
- import { u as useChannelContext } from '../../ChannelProvider-5e995fe8.js';
10
- import '../../tslib.es6-e592f653.js';
9
+ import { u as useChannelContext } from '../../ChannelProvider-0c8ccbbf.js';
10
+ import '../../tslib.es6-0f615f78.js';
11
11
  import '../../ui/ImageRenderer.js';
12
- import '../../uuid-c41826f3.js';
12
+ import '../../uuid-9f76bbf8.js';
13
13
  import 'prop-types';
14
- import '../../stringSet-e413411d.js';
14
+ import '../../stringSet-bd5e1130.js';
15
15
  import '../../utils/message/getOutgoingMessageState.js';
16
16
  import '../../withSendbird.js';
17
- import '../../_rollupPluginBabelHelpers-51c9f5c3.js';
18
- import '../../UserProfileContext-4e70ef73.js';
19
- import '../../index-041c94d3.js';
20
- import '../../index-8e0d1cc6.js';
21
- import '../../topics-b81e5b9b.js';
22
- import '../../compareIds-e84966df.js';
23
- import '../../const-630a8129.js';
17
+ import '../../_rollupPluginBabelHelpers-0df8ccf2.js';
18
+ import '../../UserProfileContext-2af91c5b.js';
19
+ import '../../index-dfbeafcd.js';
20
+ import '../../index-51ef2190.js';
21
+ import '../../topics-d58e48df.js';
22
+ import '../../compareIds-bbc4e959.js';
23
+ import '../../const-6e3eaa64.js';
24
24
  import '@sendbird/chat/groupChannel';
25
25
  import '@sendbird/chat/message';
26
26
  import '../../ui/ContextMenu.js';
@@ -1,8 +1,8 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { a as LocalizationContext } from '../../LocalizationContext-a90809c7.js';
3
- import { L as Label, a as LabelTypography } from '../../index-64740116.js';
4
- import '../../stringSet-e413411d.js';
5
- import '../../index-8e0d1cc6.js';
2
+ import { a as LocalizationContext } from '../../LocalizationContext-410574e8.js';
3
+ import { L as Label, a as LabelTypography } from '../../index-59fddbdc.js';
4
+ import '../../stringSet-bd5e1130.js';
5
+ import '../../index-51ef2190.js';
6
6
  import 'prop-types';
7
7
 
8
8
  var FrozenNotification = function () {
@@ -1,46 +1,49 @@
1
- import { a as __spreadArray } from '../../tslib.es6-e592f653.js';
1
+ import { a as __spreadArray } from '../../tslib.es6-0f615f78.js';
2
2
  import React__default, { useState, useRef, useEffect, useLayoutEffect, useMemo } from 'react';
3
- import { f as format } from '../../index-041c94d3.js';
3
+ import { f as format } from '../../index-dfbeafcd.js';
4
4
  import SuggestedMentionList from './SuggestedMentionList.js';
5
5
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
6
- import { u as useChannelContext, a as isDisabledBecauseFrozen, b as isDisabledBecauseMuted } from '../../ChannelProvider-5e995fe8.js';
7
- import { h as getClassName } from '../../index-ca3ba8a0.js';
8
- import { M as MAX_USER_MENTION_COUNT, a as MAX_USER_SUGGESTION_COUNT } from '../../const-630a8129.js';
6
+ import { u as useChannelContext, a as isDisabledBecauseFrozen, b as isDisabledBecauseMuted } from '../../ChannelProvider-0c8ccbbf.js';
7
+ import { h as getClassName } from '../../index-468659e6.js';
8
+ import { M as MAX_USER_MENTION_COUNT, a as MAX_USER_SUGGESTION_COUNT } from '../../const-6e3eaa64.js';
9
9
  import DateSeparator from '../../ui/DateSeparator.js';
10
- import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-64740116.js';
10
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-59fddbdc.js';
11
11
  import MessageInput from '../../ui/MessageInput.js';
12
12
  import MessageContent from '../../ui/MessageContent.js';
13
13
  import FileViewer from './FileViewer.js';
14
14
  import RemoveMessage from './RemoveMessageModal.js';
15
- import { M as MessageInputKeys } from '../../const-3c9680d2.js';
16
- import { u as useLocalization } from '../../LocalizationContext-a90809c7.js';
17
- import '../../index-8e0d1cc6.js';
15
+ import { M as MessageInputKeys } from '../../const-0751201c.js';
16
+ import { u as useLocalization } from '../../LocalizationContext-410574e8.js';
17
+ import '../../index-51ef2190.js';
18
18
  import '../../ui/Icon.js';
19
19
  import 'prop-types';
20
20
  import '../../ui/Avatar.js';
21
21
  import '../../ui/ImageRenderer.js';
22
- import '../../uuid-c41826f3.js';
23
- import '../../withSendbird.js';
24
- import '../../_rollupPluginBabelHelpers-51c9f5c3.js';
25
- import '../../UserProfileContext-4e70ef73.js';
26
- import '../../topics-b81e5b9b.js';
22
+ import '../../uuid-9f76bbf8.js';
23
+ import '../../ThreadProvider-b7452f09.js';
27
24
  import '../../utils/message/getOutgoingMessageState.js';
28
- import '../../compareIds-e84966df.js';
25
+ import '../../UserProfileContext-2af91c5b.js';
26
+ import '../../Thread/context/types.js';
27
+ import '@sendbird/chat';
28
+ import '../../topics-d58e48df.js';
29
29
  import '@sendbird/chat/groupChannel';
30
30
  import '@sendbird/chat/message';
31
+ import '../../withSendbird.js';
32
+ import '../../_rollupPluginBabelHelpers-0df8ccf2.js';
33
+ import '../../compareIds-bbc4e959.js';
31
34
  import '../../ui/ContextMenu.js';
32
35
  import 'react-dom';
33
36
  import '../../ui/SortByRow.js';
34
- import '../../stringSet-e413411d.js';
37
+ import '../../stringSet-bd5e1130.js';
35
38
  import '../../ui/ReactionButton.js';
36
- import '../../color-e740c17f.js';
39
+ import '../../color-1619c1b7.js';
37
40
  import 'react-dom/server';
38
41
  import '../../ui/IconButton.js';
39
42
  import '../../ui/Button.js';
40
43
  import '../../ui/MentionUserLabel.js';
41
44
  import '../../ui/UserProfile.js';
42
45
  import '../../sendbirdSelectors.js';
43
- import '../../utils-c2438081.js';
46
+ import '../../utils-9f07eb45.js';
44
47
  import '../../ui/MessageStatus.js';
45
48
  import '../../ui/Loader.js';
46
49
  import '../../ui/MessageItemMenu.js';
@@ -56,14 +59,15 @@ import '../../ui/LinkLabel.js';
56
59
  import '../../ui/MentionLabel.js';
57
60
  import '../../ui/FileMessageItemBody.js';
58
61
  import '../../ui/TextButton.js';
59
- import '../../MediaQueryContext-280871f5.js';
62
+ import '../../MediaQueryContext-53329809.js';
60
63
  import '../../ui/ThumbnailMessageItemBody.js';
61
64
  import '../../ui/OGMessageItemBody.js';
62
65
  import '../../ui/UnknownMessageItemBody.js';
63
66
  import '../../ui/QuoteMessage.js';
64
- import '../../useLongPress-8cda7590.js';
67
+ import '../../useLongPress-3d0759b4.js';
65
68
  import '../../ui/BottomSheet.js';
66
- import '../../index-8d74bd4b.js';
69
+ import '../../index-4e38f6d5.js';
70
+ import '../../ui/ThreadReplies.js';
67
71
  import '../../ui/Modal.js';
68
72
 
69
73
  var Message = function (props) {
@@ -100,13 +104,18 @@ var Message = function (props) {
100
104
  updateMessage = _d.updateMessage,
101
105
  scrollToMessage = _d.scrollToMessage,
102
106
  replyType = _d.replyType,
107
+ threadReplySelectType = _d.threadReplySelectType,
103
108
  isReactionEnabled = _d.isReactionEnabled,
104
109
  toggleReaction = _d.toggleReaction,
105
110
  emojiContainer = _d.emojiContainer,
106
111
  nicknamesMap = _d.nicknamesMap,
107
112
  setQuoteMessage = _d.setQuoteMessage,
108
113
  resendMessage = _d.resendMessage,
109
- renderUserMentionItem = _d.renderUserMentionItem;
114
+ renderUserMentionItem = _d.renderUserMentionItem,
115
+ onReplyInThread = _d.onReplyInThread,
116
+ onQuoteMessageClick = _d.onQuoteMessageClick,
117
+ onMessageAnimated = _d.onMessageAnimated,
118
+ onMessageHighlighted = _d.onMessageHighlighted;
110
119
 
111
120
  var _e = useState(false),
112
121
  showEdit = _e[0],
@@ -196,6 +205,7 @@ var Message = function (props) {
196
205
  }, 500);
197
206
  setTimeout(function () {
198
207
  setHighLightedMessageId(0);
208
+ onMessageHighlighted === null || onMessageHighlighted === void 0 ? void 0 : onMessageHighlighted();
199
209
  }, 1600);
200
210
  }
201
211
  } else {
@@ -215,12 +225,13 @@ var Message = function (props) {
215
225
  }, 500);
216
226
  setTimeout(function () {
217
227
  setAnimatedMessageId(0);
228
+ onMessageAnimated === null || onMessageAnimated === void 0 ? void 0 : onMessageAnimated();
218
229
  }, 1600);
219
230
  }
220
231
  } else {
221
232
  setIsAnimated(false);
222
233
  }
223
- }, [animatedMessageId, useMessageScrollRef.current, message.messageId]);
234
+ }, [animatedMessageId, useMessageScrollRef.current, message.messageId, onMessageAnimated]);
224
235
  var renderedMessage = useMemo(function () {
225
236
  return renderMessage === null || renderMessage === void 0 ? void 0 : renderMessage({
226
237
  message: message,
@@ -281,7 +292,14 @@ var Message = function (props) {
281
292
  mentionSelectedUser: selectedUser,
282
293
  isMentionEnabled: isMentionEnabled,
283
294
  message: message,
295
+ onStartTyping: function () {
296
+ var _a;
297
+
298
+ (_a = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.startTyping) === null || _a === void 0 ? void 0 : _a.call(currentGroupChannel);
299
+ },
284
300
  onUpdateMessage: function (_a) {
301
+ var _b;
302
+
285
303
  var messageId = _a.messageId,
286
304
  message = _a.message,
287
305
  mentionTemplate = _a.mentionTemplate;
@@ -292,13 +310,17 @@ var Message = function (props) {
292
310
  mentionTemplate: mentionTemplate
293
311
  });
294
312
  setShowEdit(false);
313
+ (_b = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.endTyping) === null || _b === void 0 ? void 0 : _b.call(currentGroupChannel);
295
314
  },
296
315
  onCancelEdit: function () {
316
+ var _a;
317
+
297
318
  setMentionNickname('');
298
319
  setMentionedUsers([]);
299
320
  setMentionedUserIds([]);
300
321
  setMentionSuggestedUsers([]);
301
322
  setShowEdit(false);
323
+ (_a = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.endTyping) === null || _a === void 0 ? void 0 : _a.call(currentGroupChannel);
302
324
  },
303
325
  onUserMentioned: function (user) {
304
326
  if ((selectedUser === null || selectedUser === void 0 ? void 0 : selectedUser.userId) === (user === null || user === void 0 ? void 0 : user.userId)) {
@@ -345,6 +367,7 @@ var Message = function (props) {
345
367
  chainBottom: chainBottom,
346
368
  isReactionEnabled: isReactionEnabled,
347
369
  replyType: replyType,
370
+ threadReplySelectType: threadReplySelectType,
348
371
  nicknamesMap: nicknamesMap,
349
372
  emojiContainer: emojiContainer,
350
373
  showEdit: setShowEdit,
@@ -352,7 +375,9 @@ var Message = function (props) {
352
375
  showFileViewer: setShowFileViewer,
353
376
  resendMessage: resendMessage,
354
377
  toggleReaction: toggleReaction,
355
- setQuoteMessage: setQuoteMessage
378
+ setQuoteMessage: setQuoteMessage,
379
+ onReplyInThread: onReplyInThread,
380
+ onQuoteMessageClick: onQuoteMessageClick
356
381
  }), showRemove && /*#__PURE__*/React__default.createElement(RemoveMessage, {
357
382
  message: message,
358
383
  onCancel: function () {