@sendbird/uikit-react 3.0.0-beta.5 → 3.0.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 (601) hide show
  1. package/App.js +48 -45
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +43 -1
  4. package/Channel/components/ChannelHeader.js +25 -21
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +30 -27
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +18 -16
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +5 -5
  11. package/Channel/components/Message.js +36 -27
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +32 -20
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +32 -29
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +21 -19
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +119 -63
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +37 -33
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +6 -6
  24. package/Channel/components/UnreadCount.js.map +1 -1
  25. package/Channel/context.js +16 -14
  26. package/Channel/context.js.map +1 -1
  27. package/Channel.js +30 -27
  28. package/Channel.js.map +1 -1
  29. package/ChannelList/components/AddChannel.js +17 -17
  30. package/ChannelList/components/ChannelListHeader.js +8 -8
  31. package/ChannelList/components/ChannelListUI.js +44 -45
  32. package/ChannelList/components/ChannelListUI.js.map +1 -1
  33. package/ChannelList/components/ChannelPreview.js +38 -33
  34. package/ChannelList/components/ChannelPreview.js.map +1 -1
  35. package/ChannelList/components/ChannelPreviewAction.js +18 -16
  36. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  37. package/ChannelList/context.js +11 -9
  38. package/ChannelList/context.js.map +1 -1
  39. package/ChannelList.js +31 -29
  40. package/ChannelList.js.map +1 -1
  41. package/{ChannelListProvider-a7bdd63a.js → ChannelListProvider-c3810392.js} +219 -198
  42. package/ChannelListProvider-c3810392.js.map +1 -0
  43. package/{ChannelProvider-923b58df.js → ChannelProvider-03ec9238.js} +384 -423
  44. package/ChannelProvider-03ec9238.js.map +1 -0
  45. package/ChannelSettings/components/ChannelProfile.js +17 -17
  46. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  47. package/ChannelSettings/components/ChannelSettingsUI.js +24 -24
  48. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  49. package/ChannelSettings/components/EditDetailsModal.js +23 -19
  50. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  51. package/ChannelSettings/components/LeaveChannel.js +14 -14
  52. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  53. package/ChannelSettings/components/{AdminPanel.js → ModerationPanel.js} +88 -142
  54. package/ChannelSettings/components/ModerationPanel.js.map +1 -0
  55. package/ChannelSettings/components/UserListItem.js +19 -18
  56. package/ChannelSettings/components/UserListItem.js.map +1 -1
  57. package/ChannelSettings/components/UserPanel.js +20 -20
  58. package/ChannelSettings/components/UserPanel.js.map +1 -1
  59. package/ChannelSettings/context.js +11 -11
  60. package/ChannelSettings/context.js.map +1 -1
  61. package/ChannelSettings.js +21 -21
  62. package/CreateChannel/components/CreateChannelUI.js +18 -18
  63. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  64. package/CreateChannel/components/{InviteMembers.js → InviteUsers.js} +24 -28
  65. package/CreateChannel/components/InviteUsers.js.map +1 -0
  66. package/CreateChannel/components/SelectChannelType.js +13 -13
  67. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  68. package/CreateChannel/context.js +6 -5
  69. package/CreateChannel/context.js.map +1 -1
  70. package/CreateChannel.js +17 -17
  71. package/{CreateChannelProvider-e491613f.js → CreateChannelProvider-adb7afa8.js} +3 -3
  72. package/CreateChannelProvider-adb7afa8.js.map +1 -0
  73. package/EditUserProfile/components/EditUserProfileUI.js +14 -14
  74. package/EditUserProfile/context.js +2 -2
  75. package/EditUserProfile/context.js.map +1 -1
  76. package/EditUserProfile.js +14 -14
  77. package/{LocalizationContext-0e05ddca.js → LocalizationContext-0293a3fd.js} +3 -3
  78. package/{LocalizationContext-0e05ddca.js.map → LocalizationContext-0293a3fd.js.map} +1 -1
  79. package/{MemberList-ed7da941.js → MemberList-4e057ef8.js} +47 -68
  80. package/MemberList-4e057ef8.js.map +1 -0
  81. package/MessageSearch/components/MessageSearchUI.js +16 -16
  82. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  83. package/MessageSearch/context.js +56 -61
  84. package/MessageSearch/context.js.map +1 -1
  85. package/MessageSearch.js +22 -22
  86. package/MessageSearch.js.map +1 -1
  87. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  88. package/OpenChannel/components/OpenChannelHeader.js +17 -15
  89. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  90. package/OpenChannel/components/OpenChannelInput.js +20 -18
  91. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  92. package/OpenChannel/components/OpenChannelMessage.js +44 -39
  93. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  94. package/OpenChannel/components/OpenChannelMessageList.js +38 -37
  95. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  96. package/OpenChannel/components/OpenChannelUI.js +28 -26
  97. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  98. package/OpenChannel/context.js +12 -10
  99. package/OpenChannel/context.js.map +1 -1
  100. package/OpenChannel.js +28 -26
  101. package/OpenChannel.js.map +1 -1
  102. package/{OpenChannelProvider-45a848a3.js → OpenChannelProvider-0572862e.js} +629 -694
  103. package/OpenChannelProvider-0572862e.js.map +1 -0
  104. package/OpenChannelSettings/components/EditDetailsModal.js +30 -36
  105. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  106. package/OpenChannelSettings/components/OpenChannelProfile.js +16 -16
  107. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  108. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +39 -23
  109. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  110. package/OpenChannelSettings/components/OperatorUI.js +46 -31
  111. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  112. package/OpenChannelSettings/components/ParticipantUI.js +30 -57
  113. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  114. package/OpenChannelSettings/context.js +16 -16
  115. package/OpenChannelSettings/context.js.map +1 -1
  116. package/OpenChannelSettings.js +19 -19
  117. package/README.md +1 -2
  118. package/SendbirdProvider.js +60 -40
  119. package/SendbirdProvider.js.map +1 -1
  120. package/{UserProfileContext-90704c73.js → UserProfileContext-bcfe2804.js} +1 -1
  121. package/{UserProfileContext-90704c73.js.map → UserProfileContext-bcfe2804.js.map} +1 -1
  122. package/__bundle-7dfccc8c-a0cba188.js +24 -0
  123. package/__bundle-7dfccc8c-a0cba188.js.map +1 -0
  124. package/{_rollupPluginBabelHelpers-c7eeba03.js → _rollupPluginBabelHelpers-38569358.js} +1 -1
  125. package/{_rollupPluginBabelHelpers-c7eeba03.js.map → _rollupPluginBabelHelpers-38569358.js.map} +1 -1
  126. package/{actionTypes-e0f4e19c.js → actionTypes-c12e9c30.js} +1 -1
  127. package/{actionTypes-e0f4e19c.js.map → actionTypes-c12e9c30.js.map} +1 -1
  128. package/cjs/App.js +48 -45
  129. package/cjs/App.js.map +1 -1
  130. package/cjs/Channel/components/ChannelHeader.js +25 -21
  131. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  132. package/cjs/Channel/components/ChannelUI.js +30 -27
  133. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  134. package/cjs/Channel/components/FileViewer.js +18 -16
  135. package/cjs/Channel/components/FileViewer.js.map +1 -1
  136. package/cjs/Channel/components/FrozenNotification.js +5 -5
  137. package/cjs/Channel/components/Message.js +36 -27
  138. package/cjs/Channel/components/Message.js.map +1 -1
  139. package/cjs/Channel/components/MessageInput.js +32 -20
  140. package/cjs/Channel/components/MessageInput.js.map +1 -1
  141. package/cjs/Channel/components/MessageList.js +32 -29
  142. package/cjs/Channel/components/MessageList.js.map +1 -1
  143. package/cjs/Channel/components/RemoveMessageModal.js +21 -19
  144. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  145. package/cjs/Channel/components/SuggestedMentionList.js +119 -63
  146. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  147. package/cjs/Channel/components/TypingIndicator.js +37 -33
  148. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  149. package/cjs/Channel/components/UnreadCount.js +6 -6
  150. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  151. package/cjs/Channel/context.js +17 -15
  152. package/cjs/Channel/context.js.map +1 -1
  153. package/cjs/Channel.js +30 -27
  154. package/cjs/Channel.js.map +1 -1
  155. package/cjs/ChannelList/components/AddChannel.js +17 -17
  156. package/cjs/ChannelList/components/ChannelListHeader.js +8 -8
  157. package/cjs/ChannelList/components/ChannelListUI.js +44 -45
  158. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  159. package/cjs/ChannelList/components/ChannelPreview.js +38 -33
  160. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  161. package/cjs/ChannelList/components/ChannelPreviewAction.js +18 -16
  162. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  163. package/cjs/ChannelList/context.js +11 -10
  164. package/cjs/ChannelList/context.js.map +1 -1
  165. package/cjs/ChannelList.js +31 -29
  166. package/cjs/ChannelList.js.map +1 -1
  167. package/cjs/{ChannelListProvider-01864e22.js → ChannelListProvider-8f421c0d.js} +218 -198
  168. package/cjs/ChannelListProvider-8f421c0d.js.map +1 -0
  169. package/cjs/{ChannelProvider-3ef2a755.js → ChannelProvider-397c5f03.js} +384 -423
  170. package/cjs/ChannelProvider-397c5f03.js.map +1 -0
  171. package/cjs/ChannelSettings/components/ChannelProfile.js +16 -16
  172. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  173. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +23 -23
  174. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  175. package/cjs/ChannelSettings/components/EditDetailsModal.js +22 -18
  176. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  177. package/cjs/ChannelSettings/components/LeaveChannel.js +13 -13
  178. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  179. package/cjs/ChannelSettings/components/{AdminPanel.js → ModerationPanel.js} +87 -141
  180. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -0
  181. package/cjs/ChannelSettings/components/UserListItem.js +19 -18
  182. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  183. package/cjs/ChannelSettings/components/UserPanel.js +19 -19
  184. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  185. package/cjs/ChannelSettings/context.js +11 -11
  186. package/cjs/ChannelSettings/context.js.map +1 -1
  187. package/cjs/ChannelSettings.js +21 -21
  188. package/cjs/CreateChannel/components/CreateChannelUI.js +18 -18
  189. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  190. package/cjs/CreateChannel/components/{InviteMembers.js → InviteUsers.js} +24 -28
  191. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -0
  192. package/cjs/CreateChannel/components/SelectChannelType.js +13 -13
  193. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  194. package/cjs/CreateChannel/context.js +6 -5
  195. package/cjs/CreateChannel/context.js.map +1 -1
  196. package/cjs/CreateChannel.js +17 -17
  197. package/cjs/{CreateChannelProvider-0d01dcbf.js → CreateChannelProvider-adb49afd.js} +3 -3
  198. package/cjs/CreateChannelProvider-adb49afd.js.map +1 -0
  199. package/cjs/EditUserProfile/components/EditUserProfileUI.js +14 -14
  200. package/cjs/EditUserProfile/context.js +2 -2
  201. package/cjs/EditUserProfile/context.js.map +1 -1
  202. package/cjs/EditUserProfile.js +14 -14
  203. package/cjs/{LocalizationContext-4c0a4a70.js → LocalizationContext-af3a239a.js} +3 -3
  204. package/cjs/{LocalizationContext-4c0a4a70.js.map → LocalizationContext-af3a239a.js.map} +1 -1
  205. package/cjs/{MemberList-b917d2b8.js → MemberList-a507429a.js} +46 -67
  206. package/cjs/MemberList-a507429a.js.map +1 -0
  207. package/cjs/MessageSearch/components/MessageSearchUI.js +15 -15
  208. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  209. package/cjs/MessageSearch/context.js +56 -61
  210. package/cjs/MessageSearch/context.js.map +1 -1
  211. package/cjs/MessageSearch.js +22 -22
  212. package/cjs/MessageSearch.js.map +1 -1
  213. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  214. package/cjs/OpenChannel/components/OpenChannelHeader.js +17 -15
  215. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  216. package/cjs/OpenChannel/components/OpenChannelInput.js +20 -18
  217. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  218. package/cjs/OpenChannel/components/OpenChannelMessage.js +44 -39
  219. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  220. package/cjs/OpenChannel/components/OpenChannelMessageList.js +38 -37
  221. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  222. package/cjs/OpenChannel/components/OpenChannelUI.js +28 -26
  223. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  224. package/cjs/OpenChannel/context.js +13 -11
  225. package/cjs/OpenChannel/context.js.map +1 -1
  226. package/cjs/OpenChannel.js +28 -26
  227. package/cjs/OpenChannel.js.map +1 -1
  228. package/cjs/{OpenChannelProvider-862a55ec.js → OpenChannelProvider-e0ff3593.js} +629 -694
  229. package/cjs/OpenChannelProvider-e0ff3593.js.map +1 -0
  230. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +29 -35
  231. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  232. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +15 -15
  233. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  234. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +38 -22
  235. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  236. package/cjs/OpenChannelSettings/components/OperatorUI.js +43 -28
  237. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  238. package/cjs/OpenChannelSettings/components/ParticipantUI.js +29 -56
  239. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  240. package/cjs/OpenChannelSettings/context.js +16 -16
  241. package/cjs/OpenChannelSettings/context.js.map +1 -1
  242. package/cjs/OpenChannelSettings.js +19 -19
  243. package/cjs/SendbirdProvider.js +61 -42
  244. package/cjs/SendbirdProvider.js.map +1 -1
  245. package/cjs/{UserProfileContext-0081d7b2.js → UserProfileContext-1a32d7da.js} +1 -1
  246. package/cjs/{UserProfileContext-0081d7b2.js.map → UserProfileContext-1a32d7da.js.map} +1 -1
  247. package/cjs/__bundle-7dfccc8c-3aa3a536.js +151 -0
  248. package/cjs/__bundle-7dfccc8c-3aa3a536.js.map +1 -0
  249. package/cjs/{_rollupPluginBabelHelpers-08d1d0ec.js → _rollupPluginBabelHelpers-1be0417a.js} +1 -1
  250. package/cjs/{_rollupPluginBabelHelpers-08d1d0ec.js.map → _rollupPluginBabelHelpers-1be0417a.js.map} +1 -1
  251. package/cjs/{actionTypes-03bdd863.js → actionTypes-9635e2a1.js} +1 -1
  252. package/cjs/{actionTypes-03bdd863.js.map → actionTypes-9635e2a1.js.map} +1 -1
  253. package/cjs/{color-37edcf95.js → color-79441155.js} +1 -1
  254. package/cjs/{color-37edcf95.js.map → color-79441155.js.map} +1 -1
  255. package/cjs/{compareIds-1cb14940.js → compareIds-9e929882.js} +1 -1
  256. package/cjs/{compareIds-1cb14940.js.map → compareIds-9e929882.js.map} +1 -1
  257. package/cjs/{const-21636adb.js → const-3ec42b99.js} +1 -1
  258. package/cjs/{const-21636adb.js.map → const-3ec42b99.js.map} +1 -1
  259. package/cjs/{const-64185108.js → const-c45b3772.js} +1 -1
  260. package/cjs/{const-64185108.js.map → const-c45b3772.js.map} +1 -1
  261. package/cjs/{context-8f183eb3.js → context-7f20c4fc.js} +2 -2
  262. package/cjs/{context-8f183eb3.js.map → context-7f20c4fc.js.map} +1 -1
  263. package/{index.css → cjs/dist/index.css} +243 -103
  264. package/cjs/dist/index.css.map +1 -0
  265. package/cjs/groupChannel-57828c97.js +9 -0
  266. package/cjs/groupChannel-57828c97.js.map +1 -0
  267. package/cjs/{index-30e8e785.js → index-101e25b6.js} +5 -5
  268. package/cjs/index-101e25b6.js.map +1 -0
  269. package/cjs/{index-1a6c1893.js → index-7b1f120b.js} +1 -1
  270. package/cjs/{index-1a6c1893.js.map → index-7b1f120b.js.map} +1 -1
  271. package/cjs/{index-7532e1ca.js → index-82b738a4.js} +4 -4
  272. package/cjs/{index-7532e1ca.js.map → index-82b738a4.js.map} +1 -1
  273. package/cjs/{index-4e4d7494.js → index-c3d974a8.js} +1 -1
  274. package/cjs/{index-4e4d7494.js.map → index-c3d974a8.js.map} +1 -1
  275. package/cjs/{index-8479199c.js → index-c42f8ea9.js} +12 -9
  276. package/cjs/index-c42f8ea9.js.map +1 -0
  277. package/cjs/{index-6d82098c.js → index-c4440bd2.js} +4 -4
  278. package/cjs/{index-6d82098c.js.map → index-c4440bd2.js.map} +1 -1
  279. package/cjs/{index-630f8d1b.js → index-ebb83a37.js} +5 -5
  280. package/cjs/index-ebb83a37.js.map +1 -0
  281. package/cjs/{index-dcd38046.js → index-f21d728f.js} +2 -2
  282. package/cjs/{index-dcd38046.js.map → index-f21d728f.js.map} +1 -1
  283. package/cjs/{index-a40d57a5.js → index-f3cc1992.js} +36 -29
  284. package/cjs/index-f3cc1992.js.map +1 -0
  285. package/cjs/{index-23c51d89.js → index-fddacd70.js} +2 -2
  286. package/cjs/{index-23c51d89.js.map → index-fddacd70.js.map} +1 -1
  287. package/cjs/index.js +43 -40
  288. package/cjs/index.js.map +1 -1
  289. package/cjs/openChannel-19ee9ebe.js +13 -0
  290. package/cjs/openChannel-19ee9ebe.js.map +1 -0
  291. package/cjs/{openChannelUtils-46a3a403.js → openChannelUtils-d4258320.js} +10 -5
  292. package/cjs/openChannelUtils-d4258320.js.map +1 -0
  293. package/cjs/sendbirdSelectors.js +696 -0
  294. package/cjs/sendbirdSelectors.js.map +1 -0
  295. package/cjs/{stringSet-d9121aa6.js → stringSet-ed353b6e.js} +1 -1
  296. package/cjs/{stringSet-d9121aa6.js.map → stringSet-ed353b6e.js.map} +1 -1
  297. package/cjs/{topics-4fc933cb.js → topics-1e190fcd.js} +1 -1
  298. package/cjs/{topics-4fc933cb.js.map → topics-1e190fcd.js.map} +1 -1
  299. package/cjs/{tslib.es6-571bbfc9.js → tslib.es6-4b07fef2.js} +1 -1
  300. package/cjs/{tslib.es6-571bbfc9.js.map → tslib.es6-4b07fef2.js.map} +1 -1
  301. package/cjs/ui/Accordion.js +4 -4
  302. package/cjs/ui/AccordionGroup.js +2 -2
  303. package/cjs/ui/AccordionGroup.js.map +1 -1
  304. package/cjs/ui/AdminMessage.js +4 -3
  305. package/cjs/ui/AdminMessage.js.map +1 -1
  306. package/cjs/ui/Avatar.js +3 -3
  307. package/cjs/ui/Badge.js +5 -5
  308. package/cjs/ui/Button.js +4 -4
  309. package/cjs/ui/ChannelAvatar.js +8 -8
  310. package/cjs/ui/ChannelAvatar.js.map +1 -1
  311. package/cjs/ui/ChannelPreview.js +28 -21
  312. package/cjs/ui/ChannelPreview.js.map +1 -1
  313. package/cjs/ui/ChatHeader.js +19 -12
  314. package/cjs/ui/ChatHeader.js.map +1 -1
  315. package/cjs/ui/Checkbox.js +1 -1
  316. package/cjs/ui/ConnectionStatus.js +5 -5
  317. package/cjs/ui/ContextMenu.js +9 -30
  318. package/cjs/ui/ContextMenu.js.map +1 -1
  319. package/cjs/ui/DateSeparator.js +5 -5
  320. package/cjs/ui/DateSeparator.js.map +1 -1
  321. package/cjs/ui/Dropdown.js +3 -3
  322. package/cjs/ui/EmojiReactions.js +10 -10
  323. package/cjs/ui/EmojiReactions.js.map +1 -1
  324. package/cjs/ui/FileMessageItemBody.js +6 -6
  325. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  326. package/cjs/ui/FileViewer.js +7 -7
  327. package/cjs/ui/Icon.js +5 -1
  328. package/cjs/ui/Icon.js.map +1 -1
  329. package/cjs/ui/IconButton.js +1 -1
  330. package/cjs/ui/ImageRenderer.js +1 -1
  331. package/cjs/ui/Input.js +3 -3
  332. package/cjs/ui/Label.js +3 -3
  333. package/cjs/ui/LinkLabel.js +3 -3
  334. package/cjs/ui/Loader.js +1 -1
  335. package/cjs/ui/MentionLabel.js +100 -0
  336. package/cjs/ui/MentionLabel.js.map +1 -0
  337. package/cjs/ui/MentionUserLabel.js +1 -1
  338. package/cjs/ui/MentionUserLabel.js.map +1 -1
  339. package/cjs/ui/MessageContent.js +54 -48
  340. package/cjs/ui/MessageContent.js.map +1 -1
  341. package/cjs/ui/MessageInput.js +18 -14
  342. package/cjs/ui/MessageInput.js.map +1 -1
  343. package/cjs/ui/MessageItemMenu.js +14 -18
  344. package/cjs/ui/MessageItemMenu.js.map +1 -1
  345. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  346. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  347. package/cjs/ui/MessageSearchFileItem.js +12 -11
  348. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  349. package/cjs/ui/MessageSearchItem.js +10 -10
  350. package/cjs/ui/MessageSearchItem.js.map +1 -1
  351. package/cjs/ui/MessageStatus.js +11 -11
  352. package/cjs/ui/MessageStatus.js.map +1 -1
  353. package/cjs/ui/Modal.js +8 -8
  354. package/cjs/ui/MutedAvatarOverlay.js +7 -7
  355. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  356. package/cjs/ui/OGMessageItemBody.js +25 -13
  357. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  358. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  359. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  360. package/cjs/ui/OpenChannelAvatar.js +11 -11
  361. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  362. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  363. package/cjs/ui/OpenchannelFileMessage.js +17 -16
  364. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  365. package/cjs/ui/OpenchannelOGMessage.js +17 -16
  366. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  367. package/cjs/ui/OpenchannelThumbnailMessage.js +18 -17
  368. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  369. package/cjs/ui/OpenchannelUserMessage.js +18 -17
  370. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  371. package/cjs/ui/PlaceHolder.js +6 -6
  372. package/cjs/ui/QuoteMessage.js +24 -24
  373. package/cjs/ui/QuoteMessage.js.map +1 -1
  374. package/cjs/ui/QuoteMessageInput.js +11 -13
  375. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  376. package/cjs/ui/ReactionBadge.js +3 -3
  377. package/cjs/ui/ReactionButton.js +1 -1
  378. package/cjs/ui/SortByRow.js +1 -1
  379. package/cjs/ui/TextButton.js +2 -2
  380. package/cjs/ui/TextMessageItemBody.js +26 -12
  381. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  382. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  383. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  384. package/cjs/ui/Tooltip.js +3 -3
  385. package/cjs/ui/TooltipWrapper.js +1 -1
  386. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  387. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  388. package/cjs/ui/UserListItem.js +14 -13
  389. package/cjs/ui/UserListItem.js.map +1 -1
  390. package/cjs/ui/UserProfile.js +22 -21
  391. package/cjs/ui/UserProfile.js.map +1 -1
  392. package/cjs/{index-94e8cf13.js → ui/Word.js} +35 -13
  393. package/cjs/ui/Word.js.map +1 -0
  394. package/cjs/useSendbirdStateContext.js +3 -3
  395. package/cjs/useSendbirdStateContext.js.map +1 -1
  396. package/cjs/{utils-b88eb3e0.js → utils-6ff87257.js} +1 -1
  397. package/cjs/{utils-b88eb3e0.js.map → utils-6ff87257.js.map} +1 -1
  398. package/cjs/{utils-63225dc9.js → utils-88672f3d.js} +1 -1
  399. package/cjs/{utils-63225dc9.js.map → utils-88672f3d.js.map} +1 -1
  400. package/cjs/{utils-f734965d.js → utils-c15722aa.js} +8 -8
  401. package/cjs/utils-c15722aa.js.map +1 -0
  402. package/cjs/{uuid-086f0c34.js → uuid-c63c6c5a.js} +1 -1
  403. package/cjs/{uuid-086f0c34.js.map → uuid-c63c6c5a.js.map} +1 -1
  404. package/cjs/{withSendBird.js → withSendbird.js} +2 -2
  405. package/cjs/{withSendBird.js.map → withSendbird.js.map} +1 -1
  406. package/{color-a3d3742c.js → color-8ef428b9.js} +1 -1
  407. package/{color-a3d3742c.js.map → color-8ef428b9.js.map} +1 -1
  408. package/{compareIds-2bfd667a.js → compareIds-d0f57b59.js} +1 -1
  409. package/{compareIds-2bfd667a.js.map → compareIds-d0f57b59.js.map} +1 -1
  410. package/{const-9f83647a.js → const-c751cfe7.js} +1 -1
  411. package/{const-9f83647a.js.map → const-c751cfe7.js.map} +1 -1
  412. package/{const-a8df15de.js → const-da7e79d6.js} +1 -1
  413. package/{const-a8df15de.js.map → const-da7e79d6.js.map} +1 -1
  414. package/{context-ae164d45.js → context-64a89b1b.js} +2 -2
  415. package/{context-ae164d45.js.map → context-64a89b1b.js.map} +1 -1
  416. package/dist/index.css +243 -103
  417. package/dist/index.css.map +1 -1
  418. package/groupChannel-45ccdf2b.js +6 -0
  419. package/groupChannel-45ccdf2b.js.map +1 -0
  420. package/{index-df459121.js → index-03332d0e.js} +4 -4
  421. package/{index-df459121.js.map → index-03332d0e.js.map} +1 -1
  422. package/{index-d7840fad.js → index-244760b9.js} +4 -4
  423. package/{index-d7840fad.js.map → index-244760b9.js.map} +1 -1
  424. package/{index-e1b93b3a.js → index-5729e2f0.js} +5 -5
  425. package/index-5729e2f0.js.map +1 -0
  426. package/{index-e7c0bc26.js → index-6924378b.js} +1 -1
  427. package/{index-e7c0bc26.js.map → index-6924378b.js.map} +1 -1
  428. package/{index-89f5a4ba.js → index-87a997c3.js} +12 -9
  429. package/index-87a997c3.js.map +1 -0
  430. package/{index-f78ebc31.js → index-b9a1f38d.js} +5 -5
  431. package/index-b9a1f38d.js.map +1 -0
  432. package/{index-2c56786f.js → index-c3d16dc1.js} +2 -2
  433. package/{index-2c56786f.js.map → index-c3d16dc1.js.map} +1 -1
  434. package/{index-29563598.js → index-e0ff03bb.js} +2 -2
  435. package/{index-29563598.js.map → index-e0ff03bb.js.map} +1 -1
  436. package/{index-03baba6a.js → index-f1c7b834.js} +36 -30
  437. package/index-f1c7b834.js.map +1 -0
  438. package/{index-80e330a9.js → index-f6405407.js} +1 -1
  439. package/{index-80e330a9.js.map → index-f6405407.js.map} +1 -1
  440. package/index.d.ts +1035 -900
  441. package/index.d.ts_bkup +1883 -0
  442. package/index.js +41 -38
  443. package/index.js.map +1 -1
  444. package/openChannel-a604a724.js +8 -0
  445. package/openChannel-a604a724.js.map +1 -0
  446. package/{openChannelUtils-ae1d6038.js → openChannelUtils-d9f15020.js} +10 -5
  447. package/openChannelUtils-d9f15020.js.map +1 -0
  448. package/package.json +5 -5
  449. package/sendbirdSelectors.js +671 -0
  450. package/sendbirdSelectors.js.map +1 -0
  451. package/{stringSet-6c9c68ae.js → stringSet-6bcac8f5.js} +1 -1
  452. package/{stringSet-6c9c68ae.js.map → stringSet-6bcac8f5.js.map} +1 -1
  453. package/{topics-d347c996.js → topics-997dc2ef.js} +2 -2
  454. package/{topics-d347c996.js.map → topics-997dc2ef.js.map} +1 -1
  455. package/{tslib.es6-61821688.js → tslib.es6-528d1472.js} +1 -1
  456. package/{tslib.es6-61821688.js.map → tslib.es6-528d1472.js.map} +1 -1
  457. package/ui/Accordion.js +4 -4
  458. package/ui/AccordionGroup.js +2 -2
  459. package/ui/AccordionGroup.js.map +1 -1
  460. package/ui/AdminMessage.js +4 -3
  461. package/ui/AdminMessage.js.map +1 -1
  462. package/ui/Avatar.js +3 -3
  463. package/ui/Badge.js +5 -5
  464. package/ui/Button.js +4 -4
  465. package/ui/ChannelAvatar.js +8 -8
  466. package/ui/ChannelAvatar.js.map +1 -1
  467. package/ui/ChannelPreview.js +28 -21
  468. package/ui/ChannelPreview.js.map +1 -1
  469. package/ui/ChatHeader.js +19 -12
  470. package/ui/ChatHeader.js.map +1 -1
  471. package/ui/Checkbox.js +1 -1
  472. package/ui/ConnectionStatus.js +5 -5
  473. package/ui/ContextMenu.js +9 -30
  474. package/ui/ContextMenu.js.map +1 -1
  475. package/ui/DateSeparator.js +5 -5
  476. package/ui/DateSeparator.js.map +1 -1
  477. package/ui/Dropdown.js +3 -3
  478. package/ui/EmojiReactions.js +10 -10
  479. package/ui/EmojiReactions.js.map +1 -1
  480. package/ui/FileMessageItemBody.js +6 -6
  481. package/ui/FileMessageItemBody.js.map +1 -1
  482. package/ui/FileViewer.js +7 -7
  483. package/ui/Icon.js +5 -1
  484. package/ui/Icon.js.map +1 -1
  485. package/ui/IconButton.js +1 -1
  486. package/ui/ImageRenderer.js +1 -1
  487. package/ui/Input.js +3 -3
  488. package/ui/Label.js +3 -3
  489. package/ui/LinkLabel.js +3 -3
  490. package/ui/Loader.js +1 -1
  491. package/ui/MentionLabel.js +94 -0
  492. package/ui/MentionLabel.js.map +1 -0
  493. package/ui/MentionUserLabel.js +1 -1
  494. package/ui/MentionUserLabel.js.map +1 -1
  495. package/ui/MessageContent.js +56 -50
  496. package/ui/MessageContent.js.map +1 -1
  497. package/ui/MessageInput.js +18 -14
  498. package/ui/MessageInput.js.map +1 -1
  499. package/ui/MessageItemMenu.js +14 -18
  500. package/ui/MessageItemMenu.js.map +1 -1
  501. package/ui/MessageItemReactionMenu.js +5 -5
  502. package/ui/MessageItemReactionMenu.js.map +1 -1
  503. package/ui/MessageSearchFileItem.js +12 -11
  504. package/ui/MessageSearchFileItem.js.map +1 -1
  505. package/ui/MessageSearchItem.js +10 -10
  506. package/ui/MessageSearchItem.js.map +1 -1
  507. package/ui/MessageStatus.js +11 -11
  508. package/ui/MessageStatus.js.map +1 -1
  509. package/ui/Modal.js +8 -8
  510. package/ui/MutedAvatarOverlay.js +7 -7
  511. package/ui/MutedAvatarOverlay.js.map +1 -1
  512. package/ui/OGMessageItemBody.js +23 -11
  513. package/ui/OGMessageItemBody.js.map +1 -1
  514. package/ui/OpenChannelAdminMessage.js +4 -4
  515. package/ui/OpenChannelAdminMessage.js.map +1 -1
  516. package/ui/OpenChannelAvatar.js +11 -11
  517. package/ui/OpenChannelAvatar.js.map +1 -1
  518. package/ui/OpenchannelConversationHeader.js +7 -7
  519. package/ui/OpenchannelFileMessage.js +17 -16
  520. package/ui/OpenchannelFileMessage.js.map +1 -1
  521. package/ui/OpenchannelOGMessage.js +17 -16
  522. package/ui/OpenchannelOGMessage.js.map +1 -1
  523. package/ui/OpenchannelThumbnailMessage.js +18 -17
  524. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  525. package/ui/OpenchannelUserMessage.js +18 -17
  526. package/ui/OpenchannelUserMessage.js.map +1 -1
  527. package/ui/PlaceHolder.js +6 -6
  528. package/ui/QuoteMessage.js +24 -24
  529. package/ui/QuoteMessage.js.map +1 -1
  530. package/ui/QuoteMessageInput.js +11 -13
  531. package/ui/QuoteMessageInput.js.map +1 -1
  532. package/ui/ReactionBadge.js +3 -3
  533. package/ui/ReactionButton.js +1 -1
  534. package/ui/SortByRow.js +1 -1
  535. package/ui/TextButton.js +2 -2
  536. package/ui/TextMessageItemBody.js +25 -11
  537. package/ui/TextMessageItemBody.js.map +1 -1
  538. package/ui/ThumbnailMessageItemBody.js +3 -3
  539. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  540. package/ui/Tooltip.js +3 -3
  541. package/ui/TooltipWrapper.js +1 -1
  542. package/ui/UnknownMessageItemBody.js +7 -7
  543. package/ui/UnknownMessageItemBody.js.map +1 -1
  544. package/ui/UserListItem.js +14 -13
  545. package/ui/UserListItem.js.map +1 -1
  546. package/ui/UserProfile.js +20 -19
  547. package/ui/UserProfile.js.map +1 -1
  548. package/ui/Word.js +70 -0
  549. package/ui/Word.js.map +1 -0
  550. package/useSendbirdStateContext.js +2 -2
  551. package/useSendbirdStateContext.js.map +1 -1
  552. package/{utils-aed86fb8.js → utils-77d4fd35.js} +1 -1
  553. package/{utils-aed86fb8.js.map → utils-77d4fd35.js.map} +1 -1
  554. package/{utils-5e25aca3.js → utils-91321bf8.js} +8 -8
  555. package/utils-91321bf8.js.map +1 -0
  556. package/{utils-4e85584a.js → utils-d0e53d6f.js} +1 -1
  557. package/{utils-4e85584a.js.map → utils-d0e53d6f.js.map} +1 -1
  558. package/{uuid-6e6389e2.js → uuid-ae0ebd46.js} +1 -1
  559. package/{uuid-6e6389e2.js.map → uuid-ae0ebd46.js.map} +1 -1
  560. package/{withSendBird.js → withSendbird.js} +2 -2
  561. package/{withSendBird.js.map → withSendbird.js.map} +1 -1
  562. package/ChannelListProvider-a7bdd63a.js.map +0 -1
  563. package/ChannelProvider-923b58df.js.map +0 -1
  564. package/ChannelSettings/components/AdminPanel.js.map +0 -1
  565. package/CreateChannel/components/InviteMembers.js.map +0 -1
  566. package/CreateChannelProvider-e491613f.js.map +0 -1
  567. package/MemberList-ed7da941.js.map +0 -1
  568. package/OpenChannelProvider-45a848a3.js.map +0 -1
  569. package/cjs/ChannelListProvider-01864e22.js.map +0 -1
  570. package/cjs/ChannelProvider-3ef2a755.js.map +0 -1
  571. package/cjs/ChannelSettings/components/AdminPanel.js.map +0 -1
  572. package/cjs/CreateChannel/components/InviteMembers.js.map +0 -1
  573. package/cjs/CreateChannelProvider-0d01dcbf.js.map +0 -1
  574. package/cjs/MemberList-b917d2b8.js.map +0 -1
  575. package/cjs/OpenChannelProvider-862a55ec.js.map +0 -1
  576. package/cjs/index-30e8e785.js.map +0 -1
  577. package/cjs/index-630f8d1b.js.map +0 -1
  578. package/cjs/index-8479199c.js.map +0 -1
  579. package/cjs/index-94e8cf13.js.map +0 -1
  580. package/cjs/index-a40d57a5.js.map +0 -1
  581. package/cjs/index.css +0 -4463
  582. package/cjs/index.css.map +0 -1
  583. package/cjs/openChannelUtils-46a3a403.js.map +0 -1
  584. package/cjs/sendBirdSelectors.js +0 -741
  585. package/cjs/sendBirdSelectors.js.map +0 -1
  586. package/cjs/ui/OpenChannelMessageContent.js +0 -14
  587. package/cjs/ui/OpenChannelMessageContent.js.map +0 -1
  588. package/cjs/utils-f734965d.js.map +0 -1
  589. package/index-03baba6a.js.map +0 -1
  590. package/index-13eb0f5e.js +0 -48
  591. package/index-13eb0f5e.js.map +0 -1
  592. package/index-89f5a4ba.js.map +0 -1
  593. package/index-e1b93b3a.js.map +0 -1
  594. package/index-f78ebc31.js.map +0 -1
  595. package/index.css.map +0 -1
  596. package/openChannelUtils-ae1d6038.js.map +0 -1
  597. package/sendBirdSelectors.js +0 -713
  598. package/sendBirdSelectors.js.map +0 -1
  599. package/ui/OpenChannelMessageContent.js +0 -8
  600. package/ui/OpenChannelMessageContent.js.map +0 -1
  601. package/utils-5e25aca3.js.map +0 -1
@@ -1,44 +1,47 @@
1
1
  import React__default, { useState, useMemo } from 'react';
2
- import { i as isSameDay } from '../../index-29563598.js';
3
- import { u as useChannel, c as compareMessagesForGrouping, i as isAboutSame } from '../../ChannelProvider-923b58df.js';
4
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-df459121.js';
2
+ import { i as isSameDay } from '../../index-e0ff03bb.js';
3
+ import { u as useChannelContext, c as compareMessagesForGrouping, i as isAboutSame } from '../../ChannelProvider-03ec9238.js';
4
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-03332d0e.js';
5
5
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
6
6
  import Message from './Message.js';
7
- import { u as uuidv4 } from '../../uuid-6e6389e2.js';
8
- import '../../index-2c56786f.js';
9
- import '../../index-e7c0bc26.js';
10
- import '../../UserProfileContext-90704c73.js';
7
+ import { u as uuidv4 } from '../../uuid-ae0ebd46.js';
8
+ import '../../index-c3d16dc1.js';
9
+ import '../../index-6924378b.js';
10
+ import '../../UserProfileContext-bcfe2804.js';
11
11
  import 'prop-types';
12
12
  import '../../useSendbirdStateContext.js';
13
- import '../../withSendBird.js';
14
- import '../../_rollupPluginBabelHelpers-c7eeba03.js';
15
- import '../../topics-d347c996.js';
16
- import '../../index-03baba6a.js';
17
- import '../../tslib.es6-61821688.js';
18
- import '../../compareIds-2bfd667a.js';
19
- import '../../const-a8df15de.js';
13
+ import '../../withSendbird.js';
14
+ import '../../_rollupPluginBabelHelpers-38569358.js';
15
+ import '../../topics-997dc2ef.js';
16
+ import '../../index-f1c7b834.js';
17
+ import '../../tslib.es6-528d1472.js';
18
+ import '../../compareIds-d0f57b59.js';
19
+ import '../../const-da7e79d6.js';
20
+ import '../../groupChannel-45ccdf2b.js';
21
+ import '../../__bundle-7dfccc8c-a0cba188.js';
20
22
  import '../../ui/ContextMenu.js';
21
- import '../../index-e1b93b3a.js';
22
- import '../../stringSet-6c9c68ae.js';
23
+ import '../../index-5729e2f0.js';
24
+ import '../../stringSet-6bcac8f5.js';
23
25
  import 'react-dom';
24
26
  import '../../ui/SortByRow.js';
25
27
  import '../../ui/ReactionButton.js';
26
28
  import '../../ui/ImageRenderer.js';
27
29
  import '../../ui/Loader.js';
28
- import '../../LocalizationContext-0e05ddca.js';
30
+ import '../../LocalizationContext-0293a3fd.js';
29
31
  import './SuggestedMentionList.js';
30
32
  import '../../ui/Avatar.js';
31
- import '../../const-9f83647a.js';
33
+ import '../../const-c751cfe7.js';
32
34
  import '../../ui/DateSeparator.js';
33
- import '../../color-a3d3742c.js';
35
+ import '../../color-8ef428b9.js';
34
36
  import '../../ui/MessageInput.js';
35
37
  import 'stream';
36
38
  import '../../ui/IconButton.js';
37
- import '../../index-f78ebc31.js';
39
+ import '../../index-b9a1f38d.js';
38
40
  import '../../ui/MentionUserLabel.js';
39
41
  import '../../ui/MessageContent.js';
40
42
  import '../../ui/UserProfile.js';
41
- import '../../sendBirdSelectors.js';
43
+ import '../../sendbirdSelectors.js';
44
+ import '../../utils-d0e53d6f.js';
42
45
  import '../../ui/MessageStatus.js';
43
46
  import '../../ui/MessageItemMenu.js';
44
47
  import '../../ui/MessageItemReactionMenu.js';
@@ -48,8 +51,9 @@ import '../../ui/TooltipWrapper.js';
48
51
  import '../../ui/ReactionBadge.js';
49
52
  import '../../ui/AdminMessage.js';
50
53
  import '../../ui/TextMessageItemBody.js';
51
- import '../../index-13eb0f5e.js';
54
+ import '../../ui/Word.js';
52
55
  import '../../ui/LinkLabel.js';
56
+ import '../../ui/MentionLabel.js';
53
57
  import '../../ui/FileMessageItemBody.js';
54
58
  import '../../ui/TextButton.js';
55
59
  import '../../ui/ThumbnailMessageItemBody.js';
@@ -57,10 +61,9 @@ import '../../ui/OGMessageItemBody.js';
57
61
  import '../../ui/UnknownMessageItemBody.js';
58
62
  import '../../ui/QuoteMessage.js';
59
63
  import './FileViewer.js';
60
- import '../../index-80e330a9.js';
64
+ import '../../index-f6405407.js';
61
65
  import './RemoveMessageModal.js';
62
66
  import '../../ui/Modal.js';
63
- import '../../utils-4e85584a.js';
64
67
 
65
68
  var SCROLL_REF_CLASS_NAME = '.sendbird-msg--scroll-ref';
66
69
 
@@ -69,13 +72,13 @@ var MessageList = function MessageList(props) {
69
72
  renderPlaceholderEmpty = props.renderPlaceholderEmpty,
70
73
  renderCustomSeparator = props.renderCustomSeparator;
71
74
 
72
- var _a = useChannel(),
75
+ var _a = useChannelContext(),
73
76
  allMessages = _a.allMessages,
74
77
  hasMorePrev = _a.hasMorePrev,
75
78
  setInitialTimeStamp = _a.setInitialTimeStamp,
76
79
  setAnimatedMessageId = _a.setAnimatedMessageId,
77
80
  setHighLightedMessageId = _a.setHighLightedMessageId,
78
- useMessageGrouping = _a.useMessageGrouping,
81
+ isMessageGroupingEnabled = _a.isMessageGroupingEnabled,
79
82
  scrollRef = _a.scrollRef,
80
83
  onScrollCallback = _a.onScrollCallback,
81
84
  onScrollDownCallback = _a.onScrollDownCallback,
@@ -146,7 +149,7 @@ var MessageList = function MessageList(props) {
146
149
  channel: currentGroupChannel
147
150
  }
148
151
  });
149
- currentGroupChannel.markAsRead();
152
+ currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.markAsRead();
150
153
  }
151
154
  }, 500);
152
155
  };
@@ -158,7 +161,7 @@ var MessageList = function MessageList(props) {
158
161
  setAnimatedMessageId === null || setAnimatedMessageId === void 0 ? void 0 : setAnimatedMessageId(null);
159
162
  setHighLightedMessageId === null || setHighLightedMessageId === void 0 ? void 0 : setHighLightedMessageId(null);
160
163
 
161
- if ((_a = scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) === null || _a === void 0 ? void 0 : _a.scrollTop) {
164
+ if (((_a = scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) === null || _a === void 0 ? void 0 : _a.scrollTop) > -1) {
162
165
  scrollRef.current.scrollTop = ((_b = scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) === null || _b === void 0 ? void 0 : _b.scrollHeight) - ((_c = scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) === null || _c === void 0 ? void 0 : _c.offsetHeight);
163
166
  }
164
167
  }; // Because every message components are re-rendered everytime by every scroll events
@@ -169,7 +172,7 @@ var MessageList = function MessageList(props) {
169
172
  var previousMessage = allMessages[idx - 1];
170
173
  var nextMessage = allMessages[idx + 1];
171
174
 
172
- var _a = useMessageGrouping ? compareMessagesForGrouping(previousMessage, m, nextMessage) : [false, false],
175
+ var _a = isMessageGroupingEnabled ? compareMessagesForGrouping(previousMessage, m, nextMessage) : [false, false],
173
176
  chainTop = _a[0],
174
177
  chainBottom = _a[1];
175
178
 
@@ -1 +1 @@
1
- {"version":3,"file":"MessageList.js","sources":["../../../src/smart-components/Channel/components/MessageList/index.tsx"],"sourcesContent":["import './message-list.scss';\n\nimport React, { useState, useMemo } from 'react';\nimport isSameDay from 'date-fns/isSameDay';\n\nimport { useChannel } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport { compareMessagesForGrouping } from '../../context/utils';\nimport Message from '../Message';\nimport { RenderMessageProps } from '../../../../types';\nimport { isAboutSame } from '../../context/utils';\nimport uuidv4 from '../../../../utils/uuid';\n\nexport type MessageListProps = {\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n renderPlaceholderEmpty?: () => React.ReactNode;\n renderCustomSeparator?: () => React.ReactNode;\n};\n\nconst SCROLL_REF_CLASS_NAME = '.sendbird-msg--scroll-ref';\n\nconst MessageList: React.FC<MessageListProps> = (props: MessageListProps) => {\n const {\n renderMessage,\n renderPlaceholderEmpty,\n renderCustomSeparator,\n } = props;\n const {\n allMessages,\n hasMorePrev,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n useMessageGrouping,\n scrollRef,\n onScrollCallback,\n onScrollDownCallback,\n messagesDispatcher,\n messageActionTypes,\n currentGroupChannel,\n } = useChannel();\n const [scrollBottom, setScrollBottom] = useState(0);\n\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n if (scrollTop === 0) {\n if (!hasMorePrev) {\n return;\n }\n const nodes = scrollRef.current.querySelectorAll(SCROLL_REF_CLASS_NAME);\n const first = nodes && nodes[0];\n onScrollCallback(([messages]) => {\n if (messages) {\n // https://github.com/scabbiaza/react-scroll-position-on-updating-dom\n // Set block to nearest to prevent unexpected scrolling from outer components\n try {\n first.scrollIntoView({ block: \"start\", inline: \"nearest\" });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, 10)) {\n onScrollDownCallback(([messages]) => {\n if (messages) {\n try {\n element.scrollTop = scrollHeight - clientHeight;\n } catch (error) {\n //\n }\n }\n });\n }\n\n // save the lastest scroll bottom value\n if (scrollRef?.current) {\n const current = scrollRef?.current;\n setScrollBottom(current.scrollHeight - current.scrollTop - current.offsetHeight)\n }\n\n // do this later\n setTimeout(() => {\n // mark as read if scroll is at end\n if (clientHeight + scrollTop === scrollHeight) {\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n currentGroupChannel.markAsRead();\n }\n }, 500);\n };\n\n const onClickScrollBot = () => {\n setInitialTimeStamp?.(null);\n setAnimatedMessageId?.(null);\n setHighLightedMessageId?.(null);\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n };\n\n // Because every message components are re-rendered everytime by every scroll events\n const memoizedAllMessages = useMemo(() => {\n return (\n allMessages.map((m, idx) => {\n const previousMessage = allMessages[idx - 1];\n const nextMessage = allMessages[idx + 1];\n const [chainTop, chainBottom] = useMessageGrouping\n ? compareMessagesForGrouping(previousMessage, m, nextMessage)\n : [false, false];\n const previousMessageCreatedAt = previousMessage?.createdAt;\n const currentCreatedAt = m.createdAt;\n // https://stackoverflow.com/a/41855608\n const hasSeparator = !(previousMessageCreatedAt && (\n isSameDay(currentCreatedAt, previousMessageCreatedAt)\n ));\n\n const handleScroll = () => {\n const current = scrollRef?.current;\n if (current) {\n const bottom = current.scrollHeight - current.scrollTop - current.offsetHeight;\n if (scrollBottom < bottom) {\n current.scrollTop += bottom - scrollBottom;\n }\n }\n }\n\n return (\n <Message\n handleScroll={handleScroll}\n renderMessage={renderMessage}\n message={m}\n hasSeparator={hasSeparator}\n chainTop={chainTop}\n chainBottom={chainBottom}\n renderCustomSeparator={renderCustomSeparator}\n key={m.messageId + uuidv4()}\n />\n );\n })\n );\n }, [allMessages]);\n\n if (allMessages.length < 1) {\n return (\n <>\n {\n renderPlaceholderEmpty?.() || (\n <PlaceHolder\n className=\"sendbird-conversation__no-messages\"\n type={PlaceHolderTypes.NO_MESSAGES}\n />)\n }\n </>\n );\n }\n return (\n <div className=\"sendbird-conversation__messages\">\n <div className=\"sendbird-conversation__scroll-container\">\n <div className=\"sendbird-conversation__padding\" />\n <div\n className=\"sendbird-conversation__messages-padding\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {memoizedAllMessages}\n </div>\n </div>\n {\n // This flag is an unmatched variable\n (scrollBottom > 1) && (\n <div\n className=\"sendbird-conversation__scroll-bottom-button\"\n onClick={onClickScrollBot}\n onKeyDown={onClickScrollBot}\n tabIndex={0}\n role=\"button\"\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.PRIMARY}\n />\n </div>\n )\n }\n </div>\n );\n};\n\nexport default MessageList;\n"],"names":["SCROLL_REF_CLASS_NAME","MessageList","props","renderMessage","renderPlaceholderEmpty","renderCustomSeparator","_a","useChannel","allMessages","hasMorePrev","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","useMessageGrouping","scrollRef","onScrollCallback","onScrollDownCallback","messagesDispatcher","messageActionTypes","currentGroupChannel","_b","useState","scrollBottom","setScrollBottom","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","nodes","current","querySelectorAll","first_1","messages","scrollIntoView","block","inline","error","isAboutSame","offsetHeight","setTimeout","type","MARK_AS_READ","payload","channel","markAsRead","onClickScrollBot","memoizedAllMessages","useMemo","map","m","idx","previousMessage","nextMessage","compareMessagesForGrouping","chainTop","chainBottom","previousMessageCreatedAt","createdAt","currentCreatedAt","hasSeparator","isSameDay","handleScroll","bottom","React","messageId","uuidv4","length","PlaceHolderTypes","NO_MESSAGES","IconTypes","CHEVRON_DOWN","IconColors","PRIMARY"],"mappings":"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"}
1
+ {"version":3,"file":"MessageList.js","sources":["../../../src/smart-components/Channel/components/MessageList/index.tsx"],"sourcesContent":["import './message-list.scss';\n\nimport React, { useState, useMemo } from 'react';\nimport isSameDay from 'date-fns/isSameDay';\n\nimport { useChannelContext } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport { compareMessagesForGrouping } from '../../context/utils';\nimport Message from '../Message';\nimport { RenderMessageProps } from '../../../../types';\nimport { isAboutSame } from '../../context/utils';\nimport uuidv4 from '../../../../utils/uuid';\n\nexport type MessageListProps = {\n renderMessage?: (props: RenderMessageProps) => React.ReactElement;\n renderPlaceholderEmpty?: () => React.ReactElement;\n renderCustomSeparator?: () => React.ReactElement;\n};\n\nconst SCROLL_REF_CLASS_NAME = '.sendbird-msg--scroll-ref';\n\nconst MessageList: React.FC<MessageListProps> = (props: MessageListProps) => {\n const {\n renderMessage,\n renderPlaceholderEmpty,\n renderCustomSeparator,\n } = props;\n const {\n allMessages,\n hasMorePrev,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n isMessageGroupingEnabled,\n scrollRef,\n onScrollCallback,\n onScrollDownCallback,\n messagesDispatcher,\n messageActionTypes,\n currentGroupChannel,\n } = useChannelContext();\n const [scrollBottom, setScrollBottom] = useState(0);\n\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n if (scrollTop === 0) {\n if (!hasMorePrev) {\n return;\n }\n const nodes = scrollRef.current.querySelectorAll(SCROLL_REF_CLASS_NAME);\n const first = nodes && nodes[0];\n onScrollCallback(([messages]) => {\n if (messages) {\n // https://github.com/scabbiaza/react-scroll-position-on-updating-dom\n // Set block to nearest to prevent unexpected scrolling from outer components\n try {\n first.scrollIntoView({ block: \"start\", inline: \"nearest\" });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, 10)) {\n onScrollDownCallback(([messages]) => {\n if (messages) {\n try {\n element.scrollTop = scrollHeight - clientHeight;\n } catch (error) {\n //\n }\n }\n });\n }\n\n // save the lastest scroll bottom value\n if (scrollRef?.current) {\n const current = scrollRef?.current;\n setScrollBottom(current.scrollHeight - current.scrollTop - current.offsetHeight)\n }\n\n // do this later\n setTimeout(() => {\n // mark as read if scroll is at end\n if (clientHeight + scrollTop === scrollHeight) {\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n currentGroupChannel?.markAsRead();\n }\n }, 500);\n };\n\n const onClickScrollBot = () => {\n setInitialTimeStamp?.(null);\n setAnimatedMessageId?.(null);\n setHighLightedMessageId?.(null);\n if (scrollRef?.current?.scrollTop > -1) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n };\n\n // Because every message components are re-rendered everytime by every scroll events\n const memoizedAllMessages = useMemo(() => {\n return (\n allMessages.map((m, idx) => {\n const previousMessage = allMessages[idx - 1];\n const nextMessage = allMessages[idx + 1];\n const [chainTop, chainBottom] = isMessageGroupingEnabled\n ? compareMessagesForGrouping(previousMessage, m, nextMessage)\n : [false, false];\n const previousMessageCreatedAt = previousMessage?.createdAt;\n const currentCreatedAt = m.createdAt;\n // https://stackoverflow.com/a/41855608\n const hasSeparator = !(previousMessageCreatedAt && (\n isSameDay(currentCreatedAt, previousMessageCreatedAt)\n ));\n\n const handleScroll = () => {\n const current = scrollRef?.current;\n if (current) {\n const bottom = current.scrollHeight - current.scrollTop - current.offsetHeight;\n if (scrollBottom < bottom) {\n current.scrollTop += bottom - scrollBottom;\n }\n }\n }\n\n return (\n <Message\n handleScroll={handleScroll}\n renderMessage={renderMessage}\n message={m}\n hasSeparator={hasSeparator}\n chainTop={chainTop}\n chainBottom={chainBottom}\n renderCustomSeparator={renderCustomSeparator}\n key={m.messageId + uuidv4()}\n />\n );\n })\n );\n }, [allMessages]);\n\n if (allMessages.length < 1) {\n return (\n <>\n {\n renderPlaceholderEmpty?.() || (\n <PlaceHolder\n className=\"sendbird-conversation__no-messages\"\n type={PlaceHolderTypes.NO_MESSAGES}\n />)\n }\n </>\n );\n }\n return (\n <div className=\"sendbird-conversation__messages\">\n <div className=\"sendbird-conversation__scroll-container\">\n <div className=\"sendbird-conversation__padding\" />\n <div\n className=\"sendbird-conversation__messages-padding\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {memoizedAllMessages}\n </div>\n </div>\n {\n // This flag is an unmatched variable\n (scrollBottom > 1) && (\n <div\n className=\"sendbird-conversation__scroll-bottom-button\"\n onClick={onClickScrollBot}\n onKeyDown={onClickScrollBot}\n tabIndex={0}\n role=\"button\"\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.PRIMARY}\n />\n </div>\n )\n }\n </div>\n );\n};\n\nexport default MessageList;\n"],"names":["SCROLL_REF_CLASS_NAME","MessageList","props","renderMessage","renderPlaceholderEmpty","renderCustomSeparator","_a","useChannelContext","allMessages","hasMorePrev","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","isMessageGroupingEnabled","scrollRef","onScrollCallback","onScrollDownCallback","messagesDispatcher","messageActionTypes","currentGroupChannel","_b","useState","scrollBottom","setScrollBottom","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","nodes","current","querySelectorAll","first_1","messages","scrollIntoView","block","inline","error","isAboutSame","offsetHeight","setTimeout","type","MARK_AS_READ","payload","channel","markAsRead","onClickScrollBot","memoizedAllMessages","useMemo","map","m","idx","previousMessage","nextMessage","compareMessagesForGrouping","chainTop","chainBottom","previousMessageCreatedAt","createdAt","currentCreatedAt","hasSeparator","isSameDay","handleScroll","bottom","React","messageId","uuidv4","length","PlaceHolderTypes","NO_MESSAGES","IconTypes","CHEVRON_DOWN","IconColors","PRIMARY"],"mappings":"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"}
@@ -1,28 +1,30 @@
1
1
  import React__default, { useContext } from 'react';
2
2
  import Modal from '../../ui/Modal.js';
3
- import { a as ButtonTypes } from '../../index-f78ebc31.js';
4
- import { a as LocalizationContext } from '../../LocalizationContext-0e05ddca.js';
5
- import { u as useChannel } from '../../ChannelProvider-923b58df.js';
3
+ import { a as ButtonTypes } from '../../index-b9a1f38d.js';
4
+ import { a as LocalizationContext } from '../../LocalizationContext-0293a3fd.js';
5
+ import { u as useChannelContext } from '../../ChannelProvider-03ec9238.js';
6
6
  import 'prop-types';
7
7
  import 'react-dom';
8
- import '../../index-80e330a9.js';
8
+ import '../../index-f6405407.js';
9
9
  import '../../ui/IconButton.js';
10
- import '../../_rollupPluginBabelHelpers-c7eeba03.js';
10
+ import '../../_rollupPluginBabelHelpers-38569358.js';
11
11
  import '../../ui/Icon.js';
12
- import '../../index-e1b93b3a.js';
13
- import '../../stringSet-6c9c68ae.js';
14
- import '../../utils-4e85584a.js';
15
- import '../../index-e7c0bc26.js';
16
- import '../../UserProfileContext-90704c73.js';
12
+ import '../../index-5729e2f0.js';
13
+ import '../../stringSet-6bcac8f5.js';
14
+ import '../../utils-d0e53d6f.js';
15
+ import '../../index-6924378b.js';
16
+ import '../../UserProfileContext-bcfe2804.js';
17
17
  import '../../useSendbirdStateContext.js';
18
- import '../../withSendBird.js';
19
- import '../../index-2c56786f.js';
20
- import '../../topics-d347c996.js';
21
- import '../../index-03baba6a.js';
22
- import '../../tslib.es6-61821688.js';
23
- import '../../compareIds-2bfd667a.js';
24
- import '../../const-a8df15de.js';
25
- import '../../uuid-6e6389e2.js';
18
+ import '../../withSendbird.js';
19
+ import '../../index-c3d16dc1.js';
20
+ import '../../topics-997dc2ef.js';
21
+ import '../../index-f1c7b834.js';
22
+ import '../../tslib.es6-528d1472.js';
23
+ import '../../compareIds-d0f57b59.js';
24
+ import '../../const-da7e79d6.js';
25
+ import '../../groupChannel-45ccdf2b.js';
26
+ import '../../__bundle-7dfccc8c-a0cba188.js';
27
+ import '../../uuid-ae0ebd46.js';
26
28
  import '../../ui/ContextMenu.js';
27
29
  import '../../ui/SortByRow.js';
28
30
  import '../../ui/ReactionButton.js';
@@ -34,7 +36,7 @@ var RemoveMessage = function RemoveMessage(props) {
34
36
  var onCancel = props.onCancel,
35
37
  message = props.message;
36
38
  var stringSet = useContext(LocalizationContext).stringSet;
37
- var deleteMessage = useChannel().deleteMessage;
39
+ var deleteMessage = useChannelContext().deleteMessage;
38
40
  return /*#__PURE__*/React__default.createElement(Modal, {
39
41
  type: ButtonTypes.DANGER,
40
42
  disabled: ((_a = message === null || message === void 0 ? void 0 : message.threadInfo) === null || _a === void 0 ? void 0 : _a.replyCount) > 0,
@@ -1 +1 @@
1
- {"version":3,"file":"RemoveMessageModal.js","sources":["../../../src/smart-components/Channel/components/RemoveMessageModal.tsx"],"sourcesContent":["import React, { useContext } from 'react';\n\nimport Modal from '../../../ui/Modal';\nimport { ButtonTypes } from '../../../ui/Button';\nimport { LocalizationContext } from '../../../lib/LocalizationContext';\nimport { useChannel } from '../context/ChannelProvider';\nimport { EveryMessage } from '../../../types';\n\nexport interface RemoveMessageProps {\n onCancel: () => void;\n message: EveryMessage;\n}\n\nconst RemoveMessage: React.FC<RemoveMessageProps> = (props: RemoveMessageProps) => {\n const {\n onCancel,\n message,\n } = props;\n const { stringSet } = useContext(LocalizationContext);\n const {\n deleteMessage,\n } = useChannel();\n return (\n <Modal\n type={ButtonTypes.DANGER}\n disabled={message?.threadInfo?.replyCount > 0}\n onCancel={onCancel}\n onSubmit={() => { deleteMessage(message).then(() => {\n onCancel();\n }) }}\n submitText={stringSet.MESSAGE_MENU__DELETE}\n titleText={stringSet.MODAL__DELETE_MESSAGE__TITLE}\n />\n );\n};\n\nexport default RemoveMessage;\n"],"names":["RemoveMessage","props","onCancel","message","stringSet","useContext","LocalizationContext","deleteMessage","useChannel","React","ButtonTypes","DANGER","threadInfo","replyCount","then","MESSAGE_MENU__DELETE","MODAL__DELETE_MESSAGE__TITLE"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAaMA,aAAa,GAAiC,SAA9CA,aAA8C,CAACC,KAAD;;;AAEhD,MAAAC,QAAQ,GAEND,KAAK,SAFP;AAAA,MACAE,OAAO,GACLF,KAAK,QAFP;AAGM,MAAAG,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd;AAEN,MAAAC,aAAa,GACXC,UAAU,gBADZ;AAEF,sBACEC,6BAAC,KAAD;AACE,IAAA,IAAI,EAAEC,WAAW,CAACC,MADpB;AAEE,IAAA,QAAQ,EAAE,CAAA,MAAAR,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAES,UAAT,UAAA,iBAAA,SAAA,MAAqBC,UAArB,IAAkC,CAF9C;AAGE,IAAA,QAAQ,EAAEX,QAHZ;AAIE,IAAA,QAAQ,EAAE;AAAQK,MAAAA,aAAa,CAACJ,OAAD,CAAb,CAAuBW,IAAvB,CAA4B;AAC5CZ,QAAAA,QAAQ;AACT,OAFiB;AAEd,KANN;AAOE,IAAA,UAAU,EAAEE,SAAS,CAACW,oBAPxB;AAQE,IAAA,SAAS,EAAEX,SAAS,CAACY;AARvB,IADF;AAYD;;;;"}
1
+ {"version":3,"file":"RemoveMessageModal.js","sources":["../../../src/smart-components/Channel/components/RemoveMessageModal.tsx"],"sourcesContent":["import React, { useContext } from 'react';\n\nimport Modal from '../../../ui/Modal';\nimport { ButtonTypes } from '../../../ui/Button';\nimport { LocalizationContext } from '../../../lib/LocalizationContext';\nimport { useChannelContext } from '../context/ChannelProvider';\nimport { EveryMessage } from '../../../types';\n\nexport interface RemoveMessageProps {\n onCancel: () => void;\n message: EveryMessage;\n}\n\nconst RemoveMessage: React.FC<RemoveMessageProps> = (props: RemoveMessageProps) => {\n const {\n onCancel,\n message,\n } = props;\n const { stringSet } = useContext(LocalizationContext);\n const {\n deleteMessage,\n } = useChannelContext();\n return (\n <Modal\n type={ButtonTypes.DANGER}\n disabled={message?.threadInfo?.replyCount > 0}\n onCancel={onCancel}\n onSubmit={() => { deleteMessage(message).then(() => {\n onCancel();\n }) }}\n submitText={stringSet.MESSAGE_MENU__DELETE}\n titleText={stringSet.MODAL__DELETE_MESSAGE__TITLE}\n />\n );\n};\n\nexport default RemoveMessage;\n"],"names":["RemoveMessage","props","onCancel","message","stringSet","useContext","LocalizationContext","deleteMessage","useChannelContext","React","ButtonTypes","DANGER","threadInfo","replyCount","then","MESSAGE_MENU__DELETE","MODAL__DELETE_MESSAGE__TITLE"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAaMA,aAAa,GAAiC,SAA9CA,aAA8C,CAACC,KAAD;;;AAEhD,MAAAC,QAAQ,GAEND,KAAK,SAFP;AAAA,MACAE,OAAO,GACLF,KAAK,QAFP;AAGM,MAAAG,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd;AAEN,MAAAC,aAAa,GACXC,iBAAiB,gBADnB;AAEF,sBACEC,6BAAC,KAAD;AACE,IAAA,IAAI,EAAEC,WAAW,CAACC,MADpB;AAEE,IAAA,QAAQ,EAAE,CAAA,MAAAR,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAES,UAAT,UAAA,iBAAA,SAAA,MAAqBC,UAArB,IAAkC,CAF9C;AAGE,IAAA,QAAQ,EAAEX,QAHZ;AAIE,IAAA,QAAQ,EAAE;AAAQK,MAAAA,aAAa,CAACJ,OAAD,CAAb,CAAuBW,IAAvB,CAA4B;AAC5CZ,QAAAA,QAAQ;AACT,OAFiB;AAEd,KANN;AAOE,IAAA,UAAU,EAAEE,SAAS,CAACW,oBAPxB;AAQE,IAAA,SAAS,EAAEX,SAAS,CAACY;AARvB,IADF;AAYD;;;;"}
@@ -1,57 +1,87 @@
1
1
  import React__default, { useRef, useContext, useEffect, useMemo, useState } from 'react';
2
- import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-e1b93b3a.js';
2
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-5729e2f0.js';
3
3
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
4
4
  import Avatar from '../../ui/Avatar.js';
5
- import { a as LocalizationContext } from '../../LocalizationContext-0e05ddca.js';
6
- import { u as useChannel } from '../../ChannelProvider-923b58df.js';
5
+ import { a as LocalizationContext } from '../../LocalizationContext-0293a3fd.js';
6
+ import { u as uuidv4 } from '../../uuid-ae0ebd46.js';
7
+ import { u as useChannelContext } from '../../ChannelProvider-03ec9238.js';
7
8
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
8
- import { U as USER_MENTION_TEMP_CHAR, M as MAX_USER_MENTION_COUNT, a as MAX_USER_SUGGESTION_COUNT } from '../../const-a8df15de.js';
9
- import { M as MessageInputKeys } from '../../const-9f83647a.js';
10
- import '../../_rollupPluginBabelHelpers-c7eeba03.js';
9
+ import { U as USER_MENTION_TEMP_CHAR, M as MAX_USER_MENTION_COUNT, a as MAX_USER_SUGGESTION_COUNT } from '../../const-da7e79d6.js';
10
+ import { M as MessageInputKeys } from '../../const-c751cfe7.js';
11
+ import '../../_rollupPluginBabelHelpers-38569358.js';
11
12
  import 'prop-types';
12
- import '../../stringSet-6c9c68ae.js';
13
- import '../../tslib.es6-61821688.js';
13
+ import '../../stringSet-6bcac8f5.js';
14
+ import '../../tslib.es6-528d1472.js';
14
15
  import '../../ui/ImageRenderer.js';
15
- import '../../uuid-6e6389e2.js';
16
- import '../../index-e7c0bc26.js';
17
- import '../../UserProfileContext-90704c73.js';
18
- import '../../index-2c56786f.js';
19
- import '../../topics-d347c996.js';
20
- import '../../index-03baba6a.js';
21
- import '../../compareIds-2bfd667a.js';
16
+ import '../../index-6924378b.js';
17
+ import '../../UserProfileContext-bcfe2804.js';
18
+ import '../../index-c3d16dc1.js';
19
+ import '../../topics-997dc2ef.js';
20
+ import '../../index-f1c7b834.js';
21
+ import '../../compareIds-d0f57b59.js';
22
+ import '../../groupChannel-45ccdf2b.js';
23
+ import '../../__bundle-7dfccc8c-a0cba188.js';
22
24
  import '../../ui/ContextMenu.js';
23
25
  import 'react-dom';
24
26
  import '../../ui/SortByRow.js';
25
27
  import '../../ui/ReactionButton.js';
26
- import '../../withSendBird.js';
28
+ import '../../withSendbird.js';
27
29
 
28
30
  function SuggestedUserMentionItem(props) {
29
31
  var member = props.member,
30
32
  _a = props.isFocused,
31
33
  isFocused = _a === void 0 ? false : _a,
32
- onClick = props.onClick,
33
- onMouseOver = props.onMouseOver,
34
+ parentScrollRef = props.parentScrollRef,
35
+ _onClick = props.onClick,
36
+ _onMouseOver = props.onMouseOver,
37
+ _onMouseMove = props.onMouseMove,
34
38
  renderUserMentionItem = props.renderUserMentionItem;
35
39
  var scrollRef = useRef(null);
36
40
  var _b = useContext(LocalizationContext).stringSet,
37
41
  stringSet = _b === void 0 ? {} : _b;
38
42
  useEffect(function () {
39
- var _a;
43
+ var _a, _b, _c, _d, _e, _f, _g;
40
44
 
41
45
  if (isFocused) {
42
- (_a = scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView({
43
- block: 'center',
44
- inline: 'center'
45
- });
46
+ if (((_a = parentScrollRef === null || parentScrollRef === void 0 ? void 0 : parentScrollRef.current) === null || _a === void 0 ? void 0 : _a.scrollTop) >= ((_b = scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) === null || _b === void 0 ? void 0 : _b.offsetTop)) {
47
+ (_c = scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) === null || _c === void 0 ? void 0 : _c.scrollIntoView({
48
+ block: "nearest",
49
+ inline: "nearest"
50
+ });
51
+ } else if (((_d = parentScrollRef === null || parentScrollRef === void 0 ? void 0 : parentScrollRef.current) === null || _d === void 0 ? void 0 : _d.scrollTop) + ((_e = parentScrollRef === null || parentScrollRef === void 0 ? void 0 : parentScrollRef.current) === null || _e === void 0 ? void 0 : _e.clientHeight) <= ((_f = scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) === null || _f === void 0 ? void 0 : _f.offsetTop)) {
52
+ (_g = scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current) === null || _g === void 0 ? void 0 : _g.scrollIntoView({
53
+ block: "nearest",
54
+ inline: "nearest"
55
+ });
56
+ }
46
57
  }
47
58
  }, [isFocused]);
48
59
  var customMentionItem = useMemo(function () {
49
60
  if (renderUserMentionItem) {
50
61
  return /*#__PURE__*/React__default.createElement("div", {
51
62
  className: "sendbird-mention-suggest-list__user-item",
52
- onClick: onClick,
53
- onMouseOver: onMouseOver,
54
- key: member.nickname,
63
+ onClick: function onClick(event) {
64
+ return _onClick === null || _onClick === void 0 ? void 0 : _onClick({
65
+ event: event,
66
+ member: member,
67
+ itemRef: scrollRef
68
+ });
69
+ },
70
+ onMouseOver: function onMouseOver(event) {
71
+ return _onMouseOver === null || _onMouseOver === void 0 ? void 0 : _onMouseOver({
72
+ event: event,
73
+ member: member,
74
+ itemRef: scrollRef
75
+ });
76
+ },
77
+ onMouseMove: function onMouseMove(event) {
78
+ return _onMouseMove === null || _onMouseMove === void 0 ? void 0 : _onMouseMove({
79
+ event: event,
80
+ member: member,
81
+ itemRef: scrollRef
82
+ });
83
+ },
84
+ key: (member === null || member === void 0 ? void 0 : member.userId) || uuidv4(),
55
85
  ref: scrollRef
56
86
  }, renderUserMentionItem({
57
87
  user: member
@@ -64,10 +94,29 @@ function SuggestedUserMentionItem(props) {
64
94
  }
65
95
 
66
96
  return /*#__PURE__*/React__default.createElement("div", {
67
- className: "sendbird-mention-suggest-list__user-item " + (isFocused ? 'focused' : ''),
68
- onClick: onClick,
69
- onMouseOver: onMouseOver,
70
- key: member.nickname,
97
+ className: "sendbird-mention-suggest-list__user-item ".concat(isFocused ? 'focused' : ''),
98
+ onClick: function onClick(event) {
99
+ return _onClick === null || _onClick === void 0 ? void 0 : _onClick({
100
+ event: event,
101
+ member: member,
102
+ itemRef: scrollRef
103
+ });
104
+ },
105
+ onMouseOver: function onMouseOver(event) {
106
+ return _onMouseOver === null || _onMouseOver === void 0 ? void 0 : _onMouseOver({
107
+ event: event,
108
+ member: member,
109
+ itemRef: scrollRef
110
+ });
111
+ },
112
+ onMouseMove: function onMouseMove(event) {
113
+ return _onMouseMove === null || _onMouseMove === void 0 ? void 0 : _onMouseMove({
114
+ event: event,
115
+ member: member,
116
+ itemRef: scrollRef
117
+ });
118
+ },
119
+ key: (member === null || member === void 0 ? void 0 : member.userId) || uuidv4(),
71
120
  ref: scrollRef
72
121
  }, /*#__PURE__*/React__default.createElement(Avatar, {
73
122
  className: "sendbird-mention-suggest-list__user-item__avatar",
@@ -112,7 +161,8 @@ function SuggestedMentionList(props) {
112
161
 
113
162
  var logger = config.logger;
114
163
  var currentUserId = ((_c = (_b = (_a = stores === null || stores === void 0 ? void 0 : stores.sdkStore) === null || _a === void 0 ? void 0 : _a.sdk) === null || _b === void 0 ? void 0 : _b.currentUser) === null || _c === void 0 ? void 0 : _c.userId) || '';
115
- var currentGroupChannel = useChannel().currentGroupChannel;
164
+ var currentGroupChannel = useChannelContext().currentGroupChannel;
165
+ var scrollRef = useRef(null);
116
166
  var stringSet = useContext(LocalizationContext).stringSet;
117
167
 
118
168
  var _j = useState(null),
@@ -131,13 +181,9 @@ function SuggestedMentionList(props) {
131
181
  currentUser = _m[0],
132
182
  setCurrentUser = _m[1];
133
183
 
134
- var _o = useState(null),
135
- mouseOverUser = _o[0],
136
- setMouseOverUser = _o[1];
137
-
138
- var _p = useState([]),
139
- currentMemberList = _p[0],
140
- setCurrentMemberList = _p[1];
184
+ var _o = useState([]),
185
+ currentMemberList = _o[0],
186
+ setCurrentMemberList = _o[1];
141
187
 
142
188
  useEffect(function () {
143
189
  clearTimeout(timer);
@@ -177,7 +223,7 @@ function SuggestedMentionList(props) {
177
223
  /* Fetch member list */
178
224
 
179
225
  useEffect(function () {
180
- if (!currentGroupChannel || !currentGroupChannel.createMemberListQuery || !ableAddMention) {
226
+ if (!(currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.createMemberListQuery)) {
181
227
  logger.warning('SuggestedMentionList: Creating member list query failed');
182
228
  return;
183
229
  }
@@ -187,49 +233,57 @@ function SuggestedMentionList(props) {
187
233
  return;
188
234
  }
189
235
 
190
- var query = currentGroupChannel.createMemberListQuery();
191
- query.limit = maxSuggestionCount;
192
- query.nicknameStartsWithFilter = searchString.slice(USER_MENTION_TEMP_CHAR.length); // Add member list query for customization
236
+ var query = currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.createMemberListQuery({
237
+ limit: maxSuggestionCount + 1,
238
+ nicknameStartsWithFilter: searchString.slice(USER_MENTION_TEMP_CHAR.length)
239
+ }); // Add member list query for customization
193
240
 
194
- query.next(function (memberList, error) {
195
- if (error) {
196
- logger.error('SuggestedMentionList: Fetching member list failed', error);
197
- }
241
+ query.next().then(function (memberList) {
242
+ var suggestingMembers = memberList.filter(function (member) {
243
+ return currentUserId !== (member === null || member === void 0 ? void 0 : member.userId);
244
+ }).slice(0, maxSuggestionCount);
198
245
 
199
- if (memberList.length < 1) {
246
+ if (suggestingMembers.length < 1) {
200
247
  logger.info('SuggestedMentionList: Fetched member list is empty');
201
248
  } else {
202
249
  logger.info('SuggestedMentionList: Fetching member list succeeded', {
203
250
  memberListQuery: query,
204
- memberList: memberList
251
+ memberList: suggestingMembers
205
252
  });
206
- setCurrentUser(memberList[0]);
253
+ setCurrentUser(suggestingMembers[0]);
207
254
  }
208
255
 
209
256
  setLastSearchString(searchString);
210
- onFetchUsers(memberList);
211
- setCurrentMemberList(memberList.filter(function (member) {
212
- return currentUserId !== (member === null || member === void 0 ? void 0 : member.userId);
213
- }));
257
+ onFetchUsers(suggestingMembers);
258
+ setCurrentMemberList(suggestingMembers);
259
+ }).catch(function (error) {
260
+ if (error) {
261
+ logger.error('SuggestedMentionList: Fetching member list failed', error);
262
+ }
214
263
  });
215
264
  }, [currentGroupChannel === null || currentGroupChannel === void 0 ? void 0 : currentGroupChannel.url, searchString]);
265
+
266
+ if (!ableAddMention && currentMemberList.length === 0) {
267
+ return null;
268
+ }
269
+
216
270
  return /*#__PURE__*/React__default.createElement("div", {
217
271
  className: "sendbird-mention-suggest-list",
218
- onMouseLeave: function onMouseLeave() {
219
- if (mouseOverUser) {
220
- setCurrentUser(mouseOverUser);
221
- }
222
- }
272
+ key: "sendbird-mention-suggest-list",
273
+ ref: scrollRef
223
274
  }, ableAddMention && (currentMemberList === null || currentMemberList === void 0 ? void 0 : currentMemberList.map(function (member) {
224
275
  return /*#__PURE__*/React__default.createElement(SuggestedUserMentionItem, {
225
- key: member === null || member === void 0 ? void 0 : member.nickname,
276
+ key: (member === null || member === void 0 ? void 0 : member.userId) || uuidv4(),
226
277
  member: member,
227
278
  isFocused: (member === null || member === void 0 ? void 0 : member.userId) === (currentUser === null || currentUser === void 0 ? void 0 : currentUser.userId),
228
- onClick: function onClick() {
279
+ parentScrollRef: scrollRef,
280
+ onClick: function onClick(_a) {
281
+ var member = _a.member;
229
282
  onUserItemClick(member);
230
283
  },
231
- onMouseOver: function onMouseOver() {
232
- setMouseOverUser(member);
284
+ onMouseOver: function onMouseOver(_a) {
285
+ var member = _a.member;
286
+ setCurrentUser(member);
233
287
  },
234
288
  renderUserMentionItem: renderUserMentionItem
235
289
  });
@@ -238,7 +292,9 @@ function SuggestedMentionList(props) {
238
292
  }, /*#__PURE__*/React__default.createElement(Icon, {
239
293
  className: "sendbird-mention-suggest-list__notice-item__icon",
240
294
  type: IconTypes.INFO,
241
- fillColor: IconColors.ON_BACKGROUND_2
295
+ fillColor: IconColors.ON_BACKGROUND_2,
296
+ width: "20px",
297
+ height: "20px"
242
298
  }), /*#__PURE__*/React__default.createElement(Label, {
243
299
  className: "sendbird-mention-suggest-list__notice-item__text",
244
300
  type: LabelTypography.SUBTITLE_2,