@sendbird/uikit-react 3.2.1 → 3.2.2-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (505) hide show
  1. package/App.js +33 -28
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +13 -1
  4. package/Channel/components/ChannelHeader.js +16 -15
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +22 -21
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +15 -14
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +4 -4
  11. package/Channel/components/Message.js +19 -18
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +16 -15
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +21 -20
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +16 -15
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +16 -15
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +15 -14
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +4 -4
  24. package/Channel/context.js +14 -13
  25. package/Channel/context.js.map +1 -1
  26. package/Channel.js +22 -21
  27. package/Channel.js.map +1 -1
  28. package/ChannelList/components/AddChannel.js +14 -13
  29. package/ChannelList/components/AddChannel.js.map +1 -1
  30. package/ChannelList/components/ChannelListHeader.js +7 -7
  31. package/ChannelList/components/ChannelListUI.js +49 -44
  32. package/ChannelList/components/ChannelListUI.js.map +1 -1
  33. package/ChannelList/components/ChannelPreview.js +20 -19
  34. package/ChannelList/components/ChannelPreview.js.map +1 -1
  35. package/ChannelList/components/ChannelPreviewAction.js +14 -13
  36. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  37. package/ChannelList/context.js +9 -8
  38. package/ChannelList/context.js.map +1 -1
  39. package/ChannelList.js +26 -25
  40. package/ChannelList.js.map +1 -1
  41. package/{ChannelListProvider-5d6be9a8.js → ChannelListProvider-0f680566.js} +27 -23
  42. package/ChannelListProvider-0f680566.js.map +1 -0
  43. package/{ChannelProvider-106bb518.js → ChannelProvider-39a2dc01.js} +10 -10
  44. package/ChannelProvider-39a2dc01.js.map +1 -0
  45. package/ChannelSettings/components/ChannelProfile.js +11 -11
  46. package/ChannelSettings/components/ChannelSettingsUI.js +18 -17
  47. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  48. package/ChannelSettings/components/EditDetailsModal.js +11 -11
  49. package/ChannelSettings/components/LeaveChannel.js +10 -10
  50. package/ChannelSettings/components/ModerationPanel.js +15 -14
  51. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  52. package/ChannelSettings/components/UserListItem.js +12 -11
  53. package/ChannelSettings/components/UserListItem.js.map +1 -1
  54. package/ChannelSettings/components/UserPanel.js +14 -13
  55. package/ChannelSettings/components/UserPanel.js.map +1 -1
  56. package/ChannelSettings/context.js +3 -3
  57. package/ChannelSettings.js +18 -17
  58. package/ChannelSettings.js.map +1 -1
  59. package/CreateChannel/components/CreateChannelUI.js +14 -13
  60. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  61. package/CreateChannel/components/InviteUsers.js +14 -13
  62. package/CreateChannel/components/InviteUsers.js.map +1 -1
  63. package/CreateChannel/components/SelectChannelType.js +10 -10
  64. package/CreateChannel/context.js +4 -4
  65. package/CreateChannel.js +14 -13
  66. package/CreateChannel.js.map +1 -1
  67. package/{CreateChannelProvider-879ea78c.js → CreateChannelProvider-6ca875f0.js} +1 -1
  68. package/{CreateChannelProvider-879ea78c.js.map → CreateChannelProvider-6ca875f0.js.map} +1 -1
  69. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  70. package/CreateOpenChannel/context.js +1 -1
  71. package/CreateOpenChannel.js +9 -9
  72. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  73. package/EditUserProfile.js +12 -12
  74. package/{LocalizationContext-a6f8fb25.js → LocalizationContext-6a3c0561.js} +3 -3
  75. package/{LocalizationContext-a6f8fb25.js.map → LocalizationContext-6a3c0561.js.map} +1 -1
  76. package/{MemberList-bf1787c0.js → MemberList-8e0f0595.js} +5 -5
  77. package/{MemberList-bf1787c0.js.map → MemberList-8e0f0595.js.map} +1 -1
  78. package/MessageSearch/components/MessageSearchUI.js +11 -11
  79. package/MessageSearch/context.js +2 -2
  80. package/MessageSearch.js +11 -11
  81. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  82. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  83. package/OpenChannel/components/OpenChannelInput.js +16 -15
  84. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  85. package/OpenChannel/components/OpenChannelMessage.js +21 -20
  86. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  87. package/OpenChannel/components/OpenChannelMessageList.js +23 -22
  88. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  89. package/OpenChannel/components/OpenChannelUI.js +23 -22
  90. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  91. package/OpenChannel/context.js +9 -9
  92. package/OpenChannel.js +23 -22
  93. package/OpenChannel.js.map +1 -1
  94. package/OpenChannelList/components/OpenChannelListUI.js +12 -12
  95. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  96. package/OpenChannelList/context.js +4 -4
  97. package/OpenChannelList.js +12 -12
  98. package/{OpenChannelListProvider-cdd801da.js → OpenChannelListProvider-6b400787.js} +3 -3
  99. package/{OpenChannelListProvider-cdd801da.js.map → OpenChannelListProvider-6b400787.js.map} +1 -1
  100. package/{OpenChannelProvider-10dd5869.js → OpenChannelProvider-65570af9.js} +7 -7
  101. package/{OpenChannelProvider-10dd5869.js.map → OpenChannelProvider-65570af9.js.map} +1 -1
  102. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  103. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  104. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -17
  105. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  106. package/OpenChannelSettings/components/OperatorUI.js +17 -16
  107. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  108. package/OpenChannelSettings/components/ParticipantUI.js +15 -14
  109. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  110. package/OpenChannelSettings/context.js +3 -3
  111. package/OpenChannelSettings.js +18 -17
  112. package/OpenChannelSettings.js.map +1 -1
  113. package/SendbirdProvider.js +13 -8
  114. package/SendbirdProvider.js.map +1 -1
  115. package/{UserProfileContext-58463608.js → UserProfileContext-efa87f83.js} +1 -1
  116. package/{UserProfileContext-58463608.js.map → UserProfileContext-efa87f83.js.map} +1 -1
  117. package/{_rollupPluginBabelHelpers-b9099c54.js → _rollupPluginBabelHelpers-0bee2425.js} +1 -1
  118. package/_rollupPluginBabelHelpers-0bee2425.js.map +1 -0
  119. package/{actionTypes-2e2a14dc.js → actionTypes-81d0e341.js} +1 -1
  120. package/{actionTypes-2e2a14dc.js.map → actionTypes-81d0e341.js.map} +1 -1
  121. package/cjs/App.js +33 -28
  122. package/cjs/App.js.map +1 -1
  123. package/cjs/Channel/components/ChannelHeader.js +16 -15
  124. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  125. package/cjs/Channel/components/ChannelUI.js +22 -21
  126. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  127. package/cjs/Channel/components/FileViewer.js +15 -14
  128. package/cjs/Channel/components/FileViewer.js.map +1 -1
  129. package/cjs/Channel/components/FrozenNotification.js +4 -4
  130. package/cjs/Channel/components/Message.js +19 -18
  131. package/cjs/Channel/components/Message.js.map +1 -1
  132. package/cjs/Channel/components/MessageInput.js +16 -15
  133. package/cjs/Channel/components/MessageInput.js.map +1 -1
  134. package/cjs/Channel/components/MessageList.js +21 -20
  135. package/cjs/Channel/components/MessageList.js.map +1 -1
  136. package/cjs/Channel/components/RemoveMessageModal.js +16 -15
  137. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  138. package/cjs/Channel/components/SuggestedMentionList.js +16 -15
  139. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  140. package/cjs/Channel/components/TypingIndicator.js +15 -14
  141. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  142. package/cjs/Channel/components/UnreadCount.js +4 -4
  143. package/cjs/Channel/context.js +14 -13
  144. package/cjs/Channel/context.js.map +1 -1
  145. package/cjs/Channel.js +22 -21
  146. package/cjs/Channel.js.map +1 -1
  147. package/cjs/ChannelList/components/AddChannel.js +14 -13
  148. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  149. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  150. package/cjs/ChannelList/components/ChannelListUI.js +49 -44
  151. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  152. package/cjs/ChannelList/components/ChannelPreview.js +20 -19
  153. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  154. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -13
  155. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  156. package/cjs/ChannelList/context.js +9 -8
  157. package/cjs/ChannelList/context.js.map +1 -1
  158. package/cjs/ChannelList.js +26 -25
  159. package/cjs/ChannelList.js.map +1 -1
  160. package/cjs/{ChannelListProvider-0ad296e7.js → ChannelListProvider-88cd9b2a.js} +27 -23
  161. package/cjs/ChannelListProvider-88cd9b2a.js.map +1 -0
  162. package/cjs/{ChannelProvider-7ef2ebd3.js → ChannelProvider-61aa7b2a.js} +10 -10
  163. package/cjs/ChannelProvider-61aa7b2a.js.map +1 -0
  164. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  165. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -17
  166. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  167. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  168. package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
  169. package/cjs/ChannelSettings/components/ModerationPanel.js +15 -14
  170. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  171. package/cjs/ChannelSettings/components/UserListItem.js +12 -11
  172. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  173. package/cjs/ChannelSettings/components/UserPanel.js +14 -13
  174. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  175. package/cjs/ChannelSettings/context.js +3 -3
  176. package/cjs/ChannelSettings.js +18 -17
  177. package/cjs/ChannelSettings.js.map +1 -1
  178. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -13
  179. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  180. package/cjs/CreateChannel/components/InviteUsers.js +14 -13
  181. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  182. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  183. package/cjs/CreateChannel/context.js +4 -4
  184. package/cjs/CreateChannel.js +14 -13
  185. package/cjs/CreateChannel.js.map +1 -1
  186. package/cjs/{CreateChannelProvider-9d17677a.js → CreateChannelProvider-5a058abb.js} +1 -1
  187. package/cjs/{CreateChannelProvider-9d17677a.js.map → CreateChannelProvider-5a058abb.js.map} +1 -1
  188. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  189. package/cjs/CreateOpenChannel/context.js +1 -1
  190. package/cjs/CreateOpenChannel.js +9 -9
  191. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  192. package/cjs/EditUserProfile.js +12 -12
  193. package/cjs/{LocalizationContext-64800ba8.js → LocalizationContext-4d823138.js} +3 -3
  194. package/cjs/{LocalizationContext-64800ba8.js.map → LocalizationContext-4d823138.js.map} +1 -1
  195. package/cjs/{MemberList-b623b698.js → MemberList-0aef4d76.js} +5 -5
  196. package/cjs/{MemberList-b623b698.js.map → MemberList-0aef4d76.js.map} +1 -1
  197. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  198. package/cjs/MessageSearch/context.js +2 -2
  199. package/cjs/MessageSearch.js +11 -11
  200. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  201. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  202. package/cjs/OpenChannel/components/OpenChannelInput.js +16 -15
  203. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  204. package/cjs/OpenChannel/components/OpenChannelMessage.js +21 -20
  205. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  206. package/cjs/OpenChannel/components/OpenChannelMessageList.js +23 -22
  207. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  208. package/cjs/OpenChannel/components/OpenChannelUI.js +23 -22
  209. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  210. package/cjs/OpenChannel/context.js +9 -9
  211. package/cjs/OpenChannel.js +23 -22
  212. package/cjs/OpenChannel.js.map +1 -1
  213. package/cjs/OpenChannelList/components/OpenChannelListUI.js +12 -12
  214. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  215. package/cjs/OpenChannelList/context.js +4 -4
  216. package/cjs/OpenChannelList.js +12 -12
  217. package/cjs/{OpenChannelListProvider-c2ffa643.js → OpenChannelListProvider-5b8998de.js} +3 -3
  218. package/cjs/{OpenChannelListProvider-c2ffa643.js.map → OpenChannelListProvider-5b8998de.js.map} +1 -1
  219. package/cjs/{OpenChannelProvider-c6e69c3d.js → OpenChannelProvider-2cddfe89.js} +7 -7
  220. package/cjs/{OpenChannelProvider-c6e69c3d.js.map → OpenChannelProvider-2cddfe89.js.map} +1 -1
  221. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  222. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  223. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -17
  224. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  225. package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -16
  226. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  227. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -14
  228. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  229. package/cjs/OpenChannelSettings/context.js +3 -3
  230. package/cjs/OpenChannelSettings.js +18 -17
  231. package/cjs/OpenChannelSettings.js.map +1 -1
  232. package/cjs/SendbirdProvider.js +13 -8
  233. package/cjs/SendbirdProvider.js.map +1 -1
  234. package/cjs/{UserProfileContext-adcaa087.js → UserProfileContext-7d7dbfa8.js} +1 -1
  235. package/cjs/{UserProfileContext-adcaa087.js.map → UserProfileContext-7d7dbfa8.js.map} +1 -1
  236. package/cjs/{_rollupPluginBabelHelpers-db7a8168.js → _rollupPluginBabelHelpers-3da02f29.js} +1 -1
  237. package/cjs/_rollupPluginBabelHelpers-3da02f29.js.map +1 -0
  238. package/cjs/{actionTypes-3a12308e.js → actionTypes-b57b348f.js} +1 -1
  239. package/cjs/{actionTypes-3a12308e.js.map → actionTypes-b57b348f.js.map} +1 -1
  240. package/cjs/{color-b4fd88cc.js → color-fde2f017.js} +1 -1
  241. package/cjs/{color-b4fd88cc.js.map → color-fde2f017.js.map} +1 -1
  242. package/cjs/{compareIds-0877d215.js → compareIds-0dc10948.js} +1 -1
  243. package/cjs/{compareIds-0877d215.js.map → compareIds-0dc10948.js.map} +1 -1
  244. package/cjs/{const-d4eca33b.js → const-4746207f.js} +1 -1
  245. package/cjs/{const-d4eca33b.js.map → const-4746207f.js.map} +1 -1
  246. package/cjs/{const-1844f708.js → const-4dec56be.js} +1 -1
  247. package/cjs/{const-1844f708.js.map → const-4dec56be.js.map} +1 -1
  248. package/cjs/{context-0ee48eec.js → context-6fb2d493.js} +2 -2
  249. package/cjs/{context-0ee48eec.js.map → context-6fb2d493.js.map} +1 -1
  250. package/cjs/dist/index.css +55 -55
  251. package/cjs/dist/index.css.map +1 -1
  252. package/cjs/{index-dda2ca7b.js → index-41f1d19c.js} +7 -7
  253. package/cjs/{index-dda2ca7b.js.map → index-41f1d19c.js.map} +1 -1
  254. package/cjs/{index-6e1b95d9.js → index-43ccaf72.js} +1 -1
  255. package/cjs/{index-6e1b95d9.js.map → index-43ccaf72.js.map} +1 -1
  256. package/cjs/{index-6ed6c13c.js → index-5a52365c.js} +5 -35
  257. package/cjs/index-5a52365c.js.map +1 -0
  258. package/cjs/{index-1b2c1946.js → index-81965519.js} +2 -2
  259. package/cjs/{index-1b2c1946.js.map → index-81965519.js.map} +1 -1
  260. package/cjs/{index-a7fef0ee.js → index-9f30019d.js} +2 -2
  261. package/cjs/{index-a7fef0ee.js.map → index-9f30019d.js.map} +1 -1
  262. package/cjs/{index-5592e65b.js → index-ab052326.js} +4 -4
  263. package/cjs/{index-5592e65b.js.map → index-ab052326.js.map} +1 -1
  264. package/cjs/{index-8b034127.js → index-cfa8d471.js} +1 -1
  265. package/cjs/{index-8b034127.js.map → index-cfa8d471.js.map} +1 -1
  266. package/cjs/{index-d704345f.js → index-dbc6713d.js} +4 -4
  267. package/cjs/{index-d704345f.js.map → index-dbc6713d.js.map} +1 -1
  268. package/cjs/{index-ef0a59fd.js → index-e69fe951.js} +2 -2
  269. package/cjs/{index-ef0a59fd.js.map → index-e69fe951.js.map} +1 -1
  270. package/cjs/{index-495608df.js → index-e7fbdda3.js} +5 -5
  271. package/cjs/{index-495608df.js.map → index-e7fbdda3.js.map} +1 -1
  272. package/cjs/index.js +33 -32
  273. package/cjs/index.js.map +1 -1
  274. package/cjs/{openChannelUtils-afd47b38.js → openChannelUtils-344a9306.js} +1 -1
  275. package/cjs/{openChannelUtils-afd47b38.js.map → openChannelUtils-344a9306.js.map} +1 -1
  276. package/cjs/sendbirdSelectors.js +2 -2
  277. package/cjs/{stringSet-c306c59c.js → stringSet-86981e3d.js} +1 -1
  278. package/cjs/{stringSet-c306c59c.js.map → stringSet-86981e3d.js.map} +1 -1
  279. package/cjs/{topics-c42771ac.js → topics-dd40ff32.js} +1 -1
  280. package/cjs/{topics-c42771ac.js.map → topics-dd40ff32.js.map} +1 -1
  281. package/cjs/{tslib.es6-b4fa8f1d.js → tslib.es6-7f4f6730.js} +1 -1
  282. package/cjs/{tslib.es6-b4fa8f1d.js.map → tslib.es6-7f4f6730.js.map} +1 -1
  283. package/cjs/ui/Accordion.js +3 -3
  284. package/cjs/ui/AccordionGroup.js +2 -2
  285. package/cjs/ui/AdminMessage.js +3 -3
  286. package/cjs/ui/Avatar.js +2 -2
  287. package/cjs/ui/Badge.js +5 -5
  288. package/cjs/ui/Button.js +3 -3
  289. package/cjs/ui/ChannelAvatar.js +3 -3
  290. package/cjs/ui/ConnectionStatus.js +4 -4
  291. package/cjs/ui/ContextMenu.js +6 -5
  292. package/cjs/ui/ContextMenu.js.map +1 -1
  293. package/cjs/ui/DateSeparator.js +4 -4
  294. package/cjs/ui/EmojiReactions.js +8 -7
  295. package/cjs/ui/EmojiReactions.js.map +1 -1
  296. package/cjs/ui/FileMessageItemBody.js +6 -5
  297. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  298. package/cjs/ui/FileViewer.js +9 -8
  299. package/cjs/ui/FileViewer.js.map +1 -1
  300. package/cjs/ui/IconButton.js +1 -1
  301. package/cjs/ui/ImageRenderer.js +1 -1
  302. package/cjs/ui/Input.js +2 -2
  303. package/cjs/ui/Label.js +2 -2
  304. package/cjs/ui/LinkLabel.js +2 -2
  305. package/cjs/ui/Loader.js +1 -1
  306. package/cjs/ui/MentionLabel.js +11 -10
  307. package/cjs/ui/MentionLabel.js.map +1 -1
  308. package/cjs/ui/MessageContent.js +14 -13
  309. package/cjs/ui/MessageContent.js.map +1 -1
  310. package/cjs/ui/MessageInput.js +10 -9
  311. package/cjs/ui/MessageInput.js.map +1 -1
  312. package/cjs/ui/MessageItemMenu.js +8 -7
  313. package/cjs/ui/MessageItemMenu.js.map +1 -1
  314. package/cjs/ui/MessageItemReactionMenu.js +6 -5
  315. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  316. package/cjs/ui/MessageSearchFileItem.js +9 -9
  317. package/cjs/ui/MessageSearchItem.js +9 -9
  318. package/cjs/ui/MessageStatus.js +14 -13
  319. package/cjs/ui/MessageStatus.js.map +1 -1
  320. package/cjs/ui/Modal.js +6 -6
  321. package/cjs/ui/OGMessageItemBody.js +11 -10
  322. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  323. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  324. package/cjs/ui/OpenChannelAvatar.js +6 -6
  325. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  326. package/cjs/ui/OpenchannelFileMessage.js +15 -14
  327. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  328. package/cjs/ui/OpenchannelOGMessage.js +15 -14
  329. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  330. package/cjs/ui/OpenchannelThumbnailMessage.js +14 -13
  331. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  332. package/cjs/ui/OpenchannelUserMessage.js +15 -14
  333. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  334. package/cjs/ui/PlaceHolder.js +6 -6
  335. package/cjs/ui/QuoteMessage.js +7 -6
  336. package/cjs/ui/QuoteMessage.js.map +1 -1
  337. package/cjs/ui/QuoteMessageInput.js +7 -6
  338. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  339. package/cjs/ui/ReactionBadge.js +3 -3
  340. package/cjs/ui/ReactionButton.js +1 -1
  341. package/cjs/ui/SortByRow.js +2 -2
  342. package/cjs/ui/TextButton.js +2 -2
  343. package/cjs/ui/TextMessageItemBody.js +11 -10
  344. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  345. package/cjs/ui/ThumbnailMessageItemBody.js +3 -2
  346. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  347. package/cjs/ui/Tooltip.js +3 -3
  348. package/cjs/ui/TooltipWrapper.js +1 -1
  349. package/cjs/ui/UnknownMessageItemBody.js +7 -6
  350. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  351. package/cjs/ui/UserListItem.js +12 -11
  352. package/cjs/ui/UserListItem.js.map +1 -1
  353. package/cjs/ui/UserProfile.js +9 -9
  354. package/cjs/ui/Word.js +11 -10
  355. package/cjs/ui/Word.js.map +1 -1
  356. package/cjs/useSendbirdStateContext.js +1 -1
  357. package/cjs/utils/message/getOutgoingMessageState.js +44 -0
  358. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -0
  359. package/cjs/{utils-d6565953.js → utils-06ddc7ca.js} +1 -1
  360. package/cjs/{utils-d6565953.js.map → utils-06ddc7ca.js.map} +1 -1
  361. package/cjs/{utils-5d8323fa.js → utils-11bdf7b6.js} +1 -1
  362. package/cjs/{utils-5d8323fa.js.map → utils-11bdf7b6.js.map} +1 -1
  363. package/cjs/{utils-538678ec.js → utils-80108228.js} +1 -1
  364. package/cjs/{utils-538678ec.js.map → utils-80108228.js.map} +1 -1
  365. package/cjs/{uuid-61941a28.js → uuid-01d4b7ef.js} +1 -1
  366. package/cjs/{uuid-61941a28.js.map → uuid-01d4b7ef.js.map} +1 -1
  367. package/cjs/withSendbird.js +1 -1
  368. package/{color-a2810858.js → color-b14eebd4.js} +1 -1
  369. package/{color-a2810858.js.map → color-b14eebd4.js.map} +1 -1
  370. package/{compareIds-4839d86c.js → compareIds-8cb3ae2b.js} +1 -1
  371. package/{compareIds-4839d86c.js.map → compareIds-8cb3ae2b.js.map} +1 -1
  372. package/{const-07519343.js → const-7dd290ce.js} +1 -1
  373. package/{const-07519343.js.map → const-7dd290ce.js.map} +1 -1
  374. package/{const-16fc416a.js → const-8c71e95a.js} +1 -1
  375. package/{const-16fc416a.js.map → const-8c71e95a.js.map} +1 -1
  376. package/{context-20498268.js → context-f2f41992.js} +2 -2
  377. package/{context-20498268.js.map → context-f2f41992.js.map} +1 -1
  378. package/dist/index.css +55 -55
  379. package/dist/index.css.map +1 -1
  380. package/{index-14e5c46a.js → index-198f15c3.js} +5 -5
  381. package/{index-14e5c46a.js.map → index-198f15c3.js.map} +1 -1
  382. package/{index-ccf6db26.js → index-267e85d5.js} +2 -2
  383. package/{index-ccf6db26.js.map → index-267e85d5.js.map} +1 -1
  384. package/{index-4ac20b5a.js → index-3427b39f.js} +4 -4
  385. package/{index-4ac20b5a.js.map → index-3427b39f.js.map} +1 -1
  386. package/{index-cc905e95.js → index-594499d8.js} +4 -32
  387. package/index-594499d8.js.map +1 -0
  388. package/{index-2db9735a.js → index-5bebcb3a.js} +2 -2
  389. package/{index-2db9735a.js.map → index-5bebcb3a.js.map} +1 -1
  390. package/{index-e7ab483d.js → index-78e92d76.js} +4 -4
  391. package/{index-e7ab483d.js.map → index-78e92d76.js.map} +1 -1
  392. package/{index-fb7fd76d.js → index-8287486d.js} +1 -1
  393. package/{index-fb7fd76d.js.map → index-8287486d.js.map} +1 -1
  394. package/{index-84497a86.js → index-94c418af.js} +7 -7
  395. package/{index-84497a86.js.map → index-94c418af.js.map} +1 -1
  396. package/{index-ecc6d4a9.js → index-bd437d0f.js} +1 -1
  397. package/{index-ecc6d4a9.js.map → index-bd437d0f.js.map} +1 -1
  398. package/{index-c2f20322.js → index-e7e5efcf.js} +2 -2
  399. package/{index-c2f20322.js.map → index-e7e5efcf.js.map} +1 -1
  400. package/index.d.ts +24 -2
  401. package/index.js +33 -32
  402. package/index.js.map +1 -1
  403. package/{openChannelUtils-c694c77d.js → openChannelUtils-72e02367.js} +1 -1
  404. package/{openChannelUtils-c694c77d.js.map → openChannelUtils-72e02367.js.map} +1 -1
  405. package/package.json +1 -1
  406. package/sendbirdSelectors.js +2 -2
  407. package/{stringSet-ed906148.js → stringSet-dc01885c.js} +1 -1
  408. package/{stringSet-ed906148.js.map → stringSet-dc01885c.js.map} +1 -1
  409. package/{topics-398017ae.js → topics-57d99208.js} +1 -1
  410. package/{topics-398017ae.js.map → topics-57d99208.js.map} +1 -1
  411. package/{tslib.es6-84f8edfa.js → tslib.es6-9643c112.js} +1 -1
  412. package/{tslib.es6-84f8edfa.js.map → tslib.es6-9643c112.js.map} +1 -1
  413. package/ui/Accordion.js +3 -3
  414. package/ui/AccordionGroup.js +2 -2
  415. package/ui/AdminMessage.js +3 -3
  416. package/ui/Avatar.js +2 -2
  417. package/ui/Badge.js +5 -5
  418. package/ui/Button.js +3 -3
  419. package/ui/ChannelAvatar.js +3 -3
  420. package/ui/ConnectionStatus.js +4 -4
  421. package/ui/ContextMenu.js +6 -5
  422. package/ui/ContextMenu.js.map +1 -1
  423. package/ui/DateSeparator.js +4 -4
  424. package/ui/EmojiReactions.js +8 -7
  425. package/ui/EmojiReactions.js.map +1 -1
  426. package/ui/FileMessageItemBody.js +6 -5
  427. package/ui/FileMessageItemBody.js.map +1 -1
  428. package/ui/FileViewer.js +9 -8
  429. package/ui/FileViewer.js.map +1 -1
  430. package/ui/IconButton.js +1 -1
  431. package/ui/ImageRenderer.js +1 -1
  432. package/ui/Input.js +2 -2
  433. package/ui/Label.js +2 -2
  434. package/ui/LinkLabel.js +2 -2
  435. package/ui/Loader.js +1 -1
  436. package/ui/MentionLabel.js +11 -10
  437. package/ui/MentionLabel.js.map +1 -1
  438. package/ui/MessageContent.js +14 -13
  439. package/ui/MessageContent.js.map +1 -1
  440. package/ui/MessageInput.js +10 -9
  441. package/ui/MessageInput.js.map +1 -1
  442. package/ui/MessageItemMenu.js +8 -7
  443. package/ui/MessageItemMenu.js.map +1 -1
  444. package/ui/MessageItemReactionMenu.js +6 -5
  445. package/ui/MessageItemReactionMenu.js.map +1 -1
  446. package/ui/MessageSearchFileItem.js +9 -9
  447. package/ui/MessageSearchItem.js +9 -9
  448. package/ui/MessageStatus.js +13 -12
  449. package/ui/MessageStatus.js.map +1 -1
  450. package/ui/Modal.js +6 -6
  451. package/ui/OGMessageItemBody.js +11 -10
  452. package/ui/OGMessageItemBody.js.map +1 -1
  453. package/ui/OpenChannelAdminMessage.js +3 -3
  454. package/ui/OpenChannelAvatar.js +6 -6
  455. package/ui/OpenchannelConversationHeader.js +6 -6
  456. package/ui/OpenchannelFileMessage.js +15 -14
  457. package/ui/OpenchannelFileMessage.js.map +1 -1
  458. package/ui/OpenchannelOGMessage.js +15 -14
  459. package/ui/OpenchannelOGMessage.js.map +1 -1
  460. package/ui/OpenchannelThumbnailMessage.js +14 -13
  461. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  462. package/ui/OpenchannelUserMessage.js +15 -14
  463. package/ui/OpenchannelUserMessage.js.map +1 -1
  464. package/ui/PlaceHolder.js +6 -6
  465. package/ui/QuoteMessage.js +7 -6
  466. package/ui/QuoteMessage.js.map +1 -1
  467. package/ui/QuoteMessageInput.js +7 -6
  468. package/ui/QuoteMessageInput.js.map +1 -1
  469. package/ui/ReactionBadge.js +3 -3
  470. package/ui/ReactionButton.js +1 -1
  471. package/ui/SortByRow.js +2 -2
  472. package/ui/TextButton.js +2 -2
  473. package/ui/TextMessageItemBody.js +11 -10
  474. package/ui/TextMessageItemBody.js.map +1 -1
  475. package/ui/ThumbnailMessageItemBody.js +3 -2
  476. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  477. package/ui/Tooltip.js +3 -3
  478. package/ui/TooltipWrapper.js +1 -1
  479. package/ui/UnknownMessageItemBody.js +7 -6
  480. package/ui/UnknownMessageItemBody.js.map +1 -1
  481. package/ui/UserListItem.js +12 -11
  482. package/ui/UserListItem.js.map +1 -1
  483. package/ui/UserProfile.js +9 -9
  484. package/ui/Word.js +11 -10
  485. package/ui/Word.js.map +1 -1
  486. package/useSendbirdStateContext.js +1 -1
  487. package/utils/message/getOutgoingMessageState.js +40 -0
  488. package/utils/message/getOutgoingMessageState.js.map +1 -0
  489. package/{utils-f96e8b5b.js → utils-2b1c0262.js} +1 -1
  490. package/{utils-f96e8b5b.js.map → utils-2b1c0262.js.map} +1 -1
  491. package/{utils-84904138.js → utils-7bc7f35b.js} +1 -1
  492. package/{utils-84904138.js.map → utils-7bc7f35b.js.map} +1 -1
  493. package/{utils-dc344408.js → utils-8ff877ec.js} +1 -1
  494. package/{utils-dc344408.js.map → utils-8ff877ec.js.map} +1 -1
  495. package/{uuid-bd74c65a.js → uuid-dacf1460.js} +1 -1
  496. package/{uuid-bd74c65a.js.map → uuid-dacf1460.js.map} +1 -1
  497. package/withSendbird.js +1 -1
  498. package/ChannelListProvider-5d6be9a8.js.map +0 -1
  499. package/ChannelProvider-106bb518.js.map +0 -1
  500. package/_rollupPluginBabelHelpers-b9099c54.js.map +0 -1
  501. package/cjs/ChannelListProvider-0ad296e7.js.map +0 -1
  502. package/cjs/ChannelProvider-7ef2ebd3.js.map +0 -1
  503. package/cjs/_rollupPluginBabelHelpers-db7a8168.js.map +0 -1
  504. package/cjs/index-6ed6c13c.js.map +0 -1
  505. package/index-cc905e95.js.map +0 -1
@@ -3,69 +3,70 @@ import ChannelListHeader from './ChannelListHeader.js';
3
3
  import { AddChannel } from './AddChannel.js';
4
4
  import ChannelPreview from './ChannelPreview.js';
5
5
  import ChannelPreviewAction from './ChannelPreviewAction.js';
6
- import { u as useChannelListContext, F as FETCH_CHANNELS_START, a as FETCH_CHANNELS_SUCCESS, b as FETCH_CHANNELS_FAILURE, L as LEAVE_CHANNEL_SUCCESS, S as SET_CURRENT_CHANNEL } from '../../ChannelListProvider-5d6be9a8.js';
6
+ import { u as useChannelListContext, F as FETCH_CHANNELS_START, a as FETCH_CHANNELS_SUCCESS, b as FETCH_CHANNELS_FAILURE, L as LEAVE_CHANNEL_SUCCESS, S as SET_CURRENT_CHANNEL } from '../../ChannelListProvider-0f680566.js';
7
7
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
8
8
  import EditProfile from '../../EditUserProfile.js';
9
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-4ac20b5a.js';
10
- import '../../LocalizationContext-a6f8fb25.js';
11
- import '../../stringSet-ed906148.js';
12
- import '../../index-fb7fd76d.js';
13
- import '../../index-c2f20322.js';
9
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-3427b39f.js';
10
+ import '../../LocalizationContext-6a3c0561.js';
11
+ import '../../stringSet-dc01885c.js';
12
+ import '../../index-8287486d.js';
13
+ import '../../index-e7e5efcf.js';
14
14
  import 'prop-types';
15
15
  import '../../ui/IconButton.js';
16
- import '../../tslib.es6-84f8edfa.js';
16
+ import '../../tslib.es6-9643c112.js';
17
17
  import '../../ui/Avatar.js';
18
18
  import '../../ui/ImageRenderer.js';
19
19
  import '../../ui/Icon.js';
20
- import '../../uuid-bd74c65a.js';
20
+ import '../../uuid-dacf1460.js';
21
21
  import '../../CreateChannel.js';
22
22
  import '../../CreateChannel/components/CreateChannelUI.js';
23
- import '../../CreateChannelProvider-879ea78c.js';
23
+ import '../../CreateChannelProvider-6ca875f0.js';
24
24
  import '../../sendbirdSelectors.js';
25
- import '../../topics-398017ae.js';
26
- import '../../utils-dc344408.js';
25
+ import '../../topics-57d99208.js';
26
+ import '../../utils-8ff877ec.js';
27
27
  import '../../CreateChannel/components/InviteUsers.js';
28
28
  import '../../ui/Modal.js';
29
29
  import 'react-dom';
30
- import '../../index-ecc6d4a9.js';
30
+ import '../../index-bd437d0f.js';
31
31
  import '../../ui/Button.js';
32
32
  import '../../ui/UserListItem.js';
33
- import '../../UserProfileContext-58463608.js';
33
+ import '../../UserProfileContext-efa87f83.js';
34
34
  import '../../ui/MutedAvatarOverlay.js';
35
35
  import '../../ui/Checkbox.js';
36
36
  import '../../ui/UserProfile.js';
37
37
  import '../../withSendbird.js';
38
- import '../../_rollupPluginBabelHelpers-b9099c54.js';
38
+ import '../../_rollupPluginBabelHelpers-0bee2425.js';
39
39
  import '../../ui/ContextMenu.js';
40
40
  import '../../ui/SortByRow.js';
41
- import '../../index-cc905e95.js';
41
+ import '../../index-594499d8.js';
42
+ import '../../utils/message/getOutgoingMessageState.js';
42
43
  import '../../CreateChannel/components/SelectChannelType.js';
43
44
  import '../../ui/ChannelAvatar.js';
44
- import '../../utils-f96e8b5b.js';
45
+ import '../../utils-2b1c0262.js';
45
46
  import '../../ui/Badge.js';
46
- import '../../index-e7ab483d.js';
47
- import '../../index-ccf6db26.js';
48
- import '../../index-2db9735a.js';
47
+ import '../../index-78e92d76.js';
48
+ import '../../index-267e85d5.js';
49
+ import '../../index-5bebcb3a.js';
49
50
  import '../../ui/MentionUserLabel.js';
50
51
  import '../../Channel/components/TypingIndicator.js';
51
52
  import '@sendbird/chat/groupChannel';
52
- import '../../ChannelProvider-106bb518.js';
53
- import '../../compareIds-4839d86c.js';
54
- import '../../const-07519343.js';
53
+ import '../../ChannelProvider-39a2dc01.js';
54
+ import '../../compareIds-8cb3ae2b.js';
55
+ import '../../const-7dd290ce.js';
55
56
  import '@sendbird/chat/message';
56
57
  import '../../ui/ReactionButton.js';
57
58
  import '../../ui/MessageStatus.js';
58
59
  import '../../ui/Loader.js';
59
- import '../../index-14e5c46a.js';
60
+ import '../../index-198f15c3.js';
60
61
  import '../../ui/Input.js';
61
62
  import '../../ui/TextButton.js';
62
- import '../../color-a2810858.js';
63
- import '../../actionTypes-2e2a14dc.js';
63
+ import '../../color-b14eebd4.js';
64
+ import '../../actionTypes-81d0e341.js';
64
65
 
65
66
  var DELIVERY_RECIPT = 'delivery_receipt';
66
67
 
67
68
  var ChannelListUI = function (props) {
68
- var _a, _b;
69
+ var _a;
69
70
 
70
71
  var renderHeader = props.renderHeader,
71
72
  renderChannelPreview = props.renderChannelPreview,
@@ -73,38 +74,42 @@ var ChannelListUI = function (props) {
73
74
  renderPlaceHolderLoading = props.renderPlaceHolderLoading,
74
75
  renderPlaceHolderEmptyList = props.renderPlaceHolderEmptyList;
75
76
 
76
- var _c = useState(false),
77
- showProfileEdit = _c[0],
78
- setShowProfileEdit = _c[1];
77
+ var _b = useState(false),
78
+ showProfileEdit = _b[0],
79
+ setShowProfileEdit = _b[1];
79
80
 
80
- var _d = useChannelListContext(),
81
- onThemeChange = _d.onThemeChange,
82
- allowProfileEdit = _d.allowProfileEdit,
83
- allChannels = _d.allChannels,
84
- loading = _d.loading,
85
- currentChannel = _d.currentChannel,
86
- channelListDispatcher = _d.channelListDispatcher,
87
- channelSource = _d.channelSource,
88
- typingChannels = _d.typingChannels;
81
+ var _c = useChannelListContext(),
82
+ onThemeChange = _c.onThemeChange,
83
+ allowProfileEdit = _c.allowProfileEdit,
84
+ allChannels = _c.allChannels,
85
+ loading = _c.loading,
86
+ currentChannel = _c.currentChannel,
87
+ channelListDispatcher = _c.channelListDispatcher,
88
+ channelSource = _c.channelSource,
89
+ typingChannels = _c.typingChannels;
89
90
 
90
91
  var state = useSendbirdStateContext();
91
92
  var sdkStore = (_a = state === null || state === void 0 ? void 0 : state.stores) === null || _a === void 0 ? void 0 : _a.sdkStore;
92
93
  var config = state === null || state === void 0 ? void 0 : state.config;
93
- var isOnline = (_b = state === null || state === void 0 ? void 0 : state.config) === null || _b === void 0 ? void 0 : _b.isOnline;
94
- var logger = config === null || config === void 0 ? void 0 : config.logger;
94
+ var _d = config.logger,
95
+ logger = _d === void 0 ? null : _d,
96
+ _e = config.isOnline,
97
+ isOnline = _e === void 0 ? false : _e,
98
+ _f = config.disableMarkAsDelivered,
99
+ disableMarkAsDelivered = _f === void 0 ? false : _f;
95
100
  var sdk = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.sdk;
96
101
  var sdkError = sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.error;
97
102
  var sdkIntialized = (sdkStore === null || sdkStore === void 0 ? void 0 : sdkStore.initialized) || false;
98
103
 
99
- var _e = useState([]),
100
- channelsTomarkAsRead = _e[0],
101
- setChannelsToMarkAsRead = _e[1];
104
+ var _g = useState([]),
105
+ channelsTomarkAsRead = _g[0],
106
+ setChannelsToMarkAsRead = _g[1];
102
107
 
103
108
  useEffect(function () {
104
109
  // https://stackoverflow.com/a/60907638
105
110
  var isMounted = true;
106
111
 
107
- if ((channelsTomarkAsRead === null || channelsTomarkAsRead === void 0 ? void 0 : channelsTomarkAsRead.length) > 0) {
112
+ if ((channelsTomarkAsRead === null || channelsTomarkAsRead === void 0 ? void 0 : channelsTomarkAsRead.length) > 0 && !disableMarkAsDelivered) {
108
113
  channelsTomarkAsRead === null || channelsTomarkAsRead === void 0 ? void 0 : channelsTomarkAsRead.forEach(function (c, idx) {
109
114
  // Plan-based rate limits - minimum limit is 5 requests per second
110
115
  setTimeout(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelListUI.js","sources":["../../../src/smart-components/ChannelList/components/ChannelListUI/index.tsx"],"sourcesContent":["import './channel-list-ui.scss';\n\nimport React, { useState, useEffect } from 'react';\nimport type { GroupChannel, Member, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport type { User } from '@sendbird/chat';\n\nimport ChannelListHeader from '../ChannelListHeader';\nimport AddChannel from '../AddChannel';\nimport ChannelPreview from '../ChannelPreview';\nimport ChannelPreviewAction from '../ChannelPreviewAction';\nimport { useChannelListContext } from '../../context/ChannelListProvider';\nimport * as channelListActions from '../../dux/actionTypes';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport EditUserProfile from '../../../EditUserProfile';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\n\nconst DELIVERY_RECIPT = 'delivery_receipt';\n\ninterface RenderChannelPreviewProps {\n channel: GroupChannel;\n onLeaveChannel(\n channel: GroupChannel,\n onLeaveChannelCb?: (c: GroupChannel) => void,\n );\n}\n\ninterface RenderUserProfileProps {\n user: Member | User;\n currentUserId: string;\n close(): void;\n}\n\nexport interface ChannelListUIProps {\n renderChannelPreview?: (props: RenderChannelPreviewProps) => React.ReactElement;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactElement;\n renderHeader?: (props: void) => React.ReactElement;\n renderPlaceHolderError?: (props: void) => React.ReactElement;\n renderPlaceHolderLoading?: (props: void) => React.ReactElement;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactElement;\n}\n\nconst ChannelListUI: React.FC<ChannelListUIProps> = (props: ChannelListUIProps) => {\n const {\n renderHeader,\n renderChannelPreview,\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderEmptyList,\n } = props;\n\n const [showProfileEdit, setShowProfileEdit] = useState(false);\n\n const {\n onThemeChange,\n allowProfileEdit,\n allChannels,\n loading,\n currentChannel,\n channelListDispatcher,\n channelSource,\n typingChannels,\n } = useChannelListContext();\n\n const state = useSendbirdStateContext();\n\n const sdkStore = state?.stores?.sdkStore;\n const config = state?.config;\n\n const isOnline = state?.config?.isOnline;\n const logger = config?.logger;\n\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n const sdkError = sdkStore?.error;\n const sdkIntialized = sdkStore?.initialized || false;\n\n const [channelsTomarkAsRead, setChannelsToMarkAsRead] = useState([]);\n useEffect(() => {\n // https://stackoverflow.com/a/60907638\n let isMounted = true;\n if (channelsTomarkAsRead?.length > 0) {\n channelsTomarkAsRead?.forEach((c, idx) => {\n // Plan-based rate limits - minimum limit is 5 requests per second\n setTimeout(() => {\n if (isMounted) {\n c?.markAsDelivered();\n }\n }, 2000 * idx);\n });\n }\n return () => {\n isMounted = false;\n }\n }, [channelsTomarkAsRead]);\n\n return (\n <>\n <div className=\"sendbird-channel-list__header\">\n <ChannelListHeader\n renderHeader={renderHeader}\n onEdit={() => {\n if (allowProfileEdit) {\n setShowProfileEdit(true);\n }\n }}\n allowProfileEdit={allowProfileEdit}\n renderIconButton={() => (\n <AddChannel />\n )}\n />\n </div>\n {\n showProfileEdit && (\n <EditUserProfile\n onThemeChange={onThemeChange}\n onCancel={() => { setShowProfileEdit(false); }}\n onEditProfile={() => {\n setShowProfileEdit(false);\n }}\n />\n )\n }\n <div\n className=\"sendbird-channel-list__body\"\n onScroll={(e) => {\n const target = e?.target as HTMLDivElement;\n const fetchMore = target.clientHeight + target.scrollTop === target.scrollHeight;\n if (fetchMore && channelSource?.hasNext) {\n logger.info('ChannelList: Fetching more channels');\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_START,\n payload: null,\n });\n channelSource.next().then((channelList) => {\n logger.info('ChannelList: Fetching channels successful', channelList);\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_SUCCESS,\n payload: channelList,\n });\n const canSetMarkAsDelivered = sdk?.appInfo?.premiumFeatureList\n ?.find((feature) => (feature === DELIVERY_RECIPT));\n\n if (canSetMarkAsDelivered) {\n logger.info('ChannelList: Marking all channels as read');\n // eslint-disable-next-line no-unused-expressions\n setChannelsToMarkAsRead(channelList);\n }\n }).catch((err) => {\n logger.info('ChannelList: Fetching channels failed', err);\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_FAILURE,\n payload: err,\n });\n });\n }\n }}\n >\n {\n (sdkError) && (\n (renderPlaceHolderError && typeof renderPlaceHolderError === 'function') ? (\n renderPlaceHolderError?.()\n ): (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n )\n }\n {/*\n To do: Implement windowing\n Implement windowing if you are dealing with large number of messages/channels\n https://github.com/bvaughn/react-window -> recommendation\n We hesitate to bring one more dependency to our library,\n we are planning to implement it inside the library\n */}\n <div>\n {\n allChannels && allChannels.map((channel, idx) => {\n const onLeaveChannel = (c, cb) => {\n logger.info('ChannelList: Leaving channel', c);\n c.leave()\n .then((res) => {\n logger.info('ChannelList: Leaving channel success', res);\n if (cb && typeof cb === 'function') {\n cb(res, null);\n }\n channelListDispatcher({\n type: channelListActions.LEAVE_CHANNEL_SUCCESS,\n payload: channel?.url,\n });\n })\n .catch((err) => {\n logger.error('ChannelList: Leaving channel failed', err);\n if (cb && typeof cb === 'function') {\n cb(null, err);\n }\n });\n };\n\n const onClick = () => {\n if (!isOnline) { return; }\n logger.info('ChannelList: Clicked on channel:', channel);\n channelListDispatcher({\n type: channelListActions.SET_CURRENT_CHANNEL,\n payload: channel,\n });\n };\n\n return (\n (renderChannelPreview)\n ? (\n // eslint-disable-next-line\n <div key={channel?.url} onClick={onClick}>\n {renderChannelPreview({ channel, onLeaveChannel })}\n </div>\n )\n : (\n <ChannelPreview\n key={channel?.url}\n tabIndex={idx}\n onClick={onClick}\n channel={channel}\n isActive={channel?.url === currentChannel?.url}\n isTyping={typingChannels?.some(({ url }) => url === channel?.url)}\n renderChannelAction={(() => (\n <ChannelPreviewAction\n disabled={!isOnline}\n onLeaveChannel={() => onLeaveChannel(channel, null)}\n />\n ))}\n />\n )\n );\n })\n }\n </div>\n {\n (!sdkIntialized || loading) && (\n (renderPlaceHolderLoading && typeof renderPlaceHolderLoading === 'function') ? (\n renderPlaceHolderLoading?.()\n ): (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n )\n }\n {\n (!allChannels || allChannels.length === 0) && (\n (renderPlaceHolderEmptyList && typeof renderPlaceHolderEmptyList === 'function') ? (\n renderPlaceHolderEmptyList?.()\n ): (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n )\n }\n </div>\n </>\n );\n}\n\nexport default ChannelListUI;\n"],"names":["DELIVERY_RECIPT","ChannelListUI","props","renderHeader","renderChannelPreview","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderEmptyList","_c","useState","showProfileEdit","setShowProfileEdit","_d","useChannelListContext","onThemeChange","allowProfileEdit","allChannels","loading","currentChannel","channelListDispatcher","channelSource","typingChannels","state","useSendbirdStateContext","sdkStore","_a","stores","config","isOnline","_b","logger","sdk","sdkError","error","sdkIntialized","initialized","_e","channelsTomarkAsRead","setChannelsToMarkAsRead","useEffect","isMounted","length","forEach","c","idx","setTimeout","markAsDelivered","React","EditUserProfile","e","target","fetchMore","clientHeight","scrollTop","scrollHeight","hasNext","info","type","channelListActions","payload","next","then","channelList","canSetMarkAsDelivered","appInfo","premiumFeatureList","find","feature","catch","err","PlaceHolderTypes","WRONG","map","channel","onLeaveChannel","cb","leave","res","url","onClick","some","LOADING","NO_CHANNELS"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelListUI.js","sources":["../../../src/smart-components/ChannelList/components/ChannelListUI/index.tsx"],"sourcesContent":["import './channel-list-ui.scss';\n\nimport React, { useState, useEffect } from 'react';\nimport type { GroupChannel, Member, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport type { User } from '@sendbird/chat';\n\nimport ChannelListHeader from '../ChannelListHeader';\nimport AddChannel from '../AddChannel';\nimport ChannelPreview from '../ChannelPreview';\nimport ChannelPreviewAction from '../ChannelPreviewAction';\nimport { useChannelListContext } from '../../context/ChannelListProvider';\nimport * as channelListActions from '../../dux/actionTypes';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport EditUserProfile from '../../../EditUserProfile';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\n\nconst DELIVERY_RECIPT = 'delivery_receipt';\n\ninterface RenderChannelPreviewProps {\n channel: GroupChannel;\n onLeaveChannel(\n channel: GroupChannel,\n onLeaveChannelCb?: (c: GroupChannel) => void,\n );\n}\n\ninterface RenderUserProfileProps {\n user: Member | User;\n currentUserId: string;\n close(): void;\n}\n\nexport interface ChannelListUIProps {\n renderChannelPreview?: (props: RenderChannelPreviewProps) => React.ReactElement;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactElement;\n renderHeader?: (props: void) => React.ReactElement;\n renderPlaceHolderError?: (props: void) => React.ReactElement;\n renderPlaceHolderLoading?: (props: void) => React.ReactElement;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactElement;\n}\n\nconst ChannelListUI: React.FC<ChannelListUIProps> = (props: ChannelListUIProps) => {\n const {\n renderHeader,\n renderChannelPreview,\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderEmptyList,\n } = props;\n\n const [showProfileEdit, setShowProfileEdit] = useState(false);\n\n const {\n onThemeChange,\n allowProfileEdit,\n allChannels,\n loading,\n currentChannel,\n channelListDispatcher,\n channelSource,\n typingChannels,\n } = useChannelListContext();\n\n const state = useSendbirdStateContext();\n\n const sdkStore = state?.stores?.sdkStore;\n const config = state?.config;\n const {\n logger = null,\n isOnline = false,\n disableMarkAsDelivered = false,\n } = config;\n\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n const sdkError = sdkStore?.error;\n const sdkIntialized = sdkStore?.initialized || false;\n\n const [channelsTomarkAsRead, setChannelsToMarkAsRead] = useState([]);\n useEffect(() => {\n // https://stackoverflow.com/a/60907638\n let isMounted = true;\n if (channelsTomarkAsRead?.length > 0 && !disableMarkAsDelivered) {\n channelsTomarkAsRead?.forEach((c, idx) => {\n // Plan-based rate limits - minimum limit is 5 requests per second\n setTimeout(() => {\n if (isMounted) {\n c?.markAsDelivered();\n }\n }, 2000 * idx);\n });\n }\n return () => {\n isMounted = false;\n }\n }, [channelsTomarkAsRead]);\n\n return (\n <>\n <div className=\"sendbird-channel-list__header\">\n <ChannelListHeader\n renderHeader={renderHeader}\n onEdit={() => {\n if (allowProfileEdit) {\n setShowProfileEdit(true);\n }\n }}\n allowProfileEdit={allowProfileEdit}\n renderIconButton={() => (\n <AddChannel />\n )}\n />\n </div>\n {\n showProfileEdit && (\n <EditUserProfile\n onThemeChange={onThemeChange}\n onCancel={() => { setShowProfileEdit(false); }}\n onEditProfile={() => {\n setShowProfileEdit(false);\n }}\n />\n )\n }\n <div\n className=\"sendbird-channel-list__body\"\n onScroll={(e) => {\n const target = e?.target as HTMLDivElement;\n const fetchMore = target.clientHeight + target.scrollTop === target.scrollHeight;\n if (fetchMore && channelSource?.hasNext) {\n logger.info('ChannelList: Fetching more channels');\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_START,\n payload: null,\n });\n channelSource.next().then((channelList) => {\n logger.info('ChannelList: Fetching channels successful', channelList);\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_SUCCESS,\n payload: channelList,\n });\n const canSetMarkAsDelivered = sdk?.appInfo?.premiumFeatureList\n ?.find((feature) => (feature === DELIVERY_RECIPT));\n\n if (canSetMarkAsDelivered) {\n logger.info('ChannelList: Marking all channels as read');\n // eslint-disable-next-line no-unused-expressions\n setChannelsToMarkAsRead(channelList);\n }\n }).catch((err) => {\n logger.info('ChannelList: Fetching channels failed', err);\n channelListDispatcher({\n type: channelListActions.FETCH_CHANNELS_FAILURE,\n payload: err,\n });\n });\n }\n }}\n >\n {\n (sdkError) && (\n (renderPlaceHolderError && typeof renderPlaceHolderError === 'function') ? (\n renderPlaceHolderError?.()\n ): (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n )\n }\n {/*\n To do: Implement windowing\n Implement windowing if you are dealing with large number of messages/channels\n https://github.com/bvaughn/react-window -> recommendation\n We hesitate to bring one more dependency to our library,\n we are planning to implement it inside the library\n */}\n <div>\n {\n allChannels && allChannels.map((channel, idx) => {\n const onLeaveChannel = (c, cb) => {\n logger.info('ChannelList: Leaving channel', c);\n c.leave()\n .then((res) => {\n logger.info('ChannelList: Leaving channel success', res);\n if (cb && typeof cb === 'function') {\n cb(res, null);\n }\n channelListDispatcher({\n type: channelListActions.LEAVE_CHANNEL_SUCCESS,\n payload: channel?.url,\n });\n })\n .catch((err) => {\n logger.error('ChannelList: Leaving channel failed', err);\n if (cb && typeof cb === 'function') {\n cb(null, err);\n }\n });\n };\n\n const onClick = () => {\n if (!isOnline) { return; }\n logger.info('ChannelList: Clicked on channel:', channel);\n channelListDispatcher({\n type: channelListActions.SET_CURRENT_CHANNEL,\n payload: channel,\n });\n };\n\n return (\n (renderChannelPreview)\n ? (\n // eslint-disable-next-line\n <div key={channel?.url} onClick={onClick}>\n {renderChannelPreview({ channel, onLeaveChannel })}\n </div>\n )\n : (\n <ChannelPreview\n key={channel?.url}\n tabIndex={idx}\n onClick={onClick}\n channel={channel}\n isActive={channel?.url === currentChannel?.url}\n isTyping={typingChannels?.some(({ url }) => url === channel?.url)}\n renderChannelAction={(() => (\n <ChannelPreviewAction\n disabled={!isOnline}\n onLeaveChannel={() => onLeaveChannel(channel, null)}\n />\n ))}\n />\n )\n );\n })\n }\n </div>\n {\n (!sdkIntialized || loading) && (\n (renderPlaceHolderLoading && typeof renderPlaceHolderLoading === 'function') ? (\n renderPlaceHolderLoading?.()\n ): (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n )\n }\n {\n (!allChannels || allChannels.length === 0) && (\n (renderPlaceHolderEmptyList && typeof renderPlaceHolderEmptyList === 'function') ? (\n renderPlaceHolderEmptyList?.()\n ): (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n )\n }\n </div>\n </>\n );\n}\n\nexport default ChannelListUI;\n"],"names":["DELIVERY_RECIPT","ChannelListUI","props","renderHeader","renderChannelPreview","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderEmptyList","_b","useState","showProfileEdit","setShowProfileEdit","_c","useChannelListContext","onThemeChange","allowProfileEdit","allChannels","loading","currentChannel","channelListDispatcher","channelSource","typingChannels","state","useSendbirdStateContext","sdkStore","_a","stores","config","_d","logger","_e","isOnline","_f","disableMarkAsDelivered","sdk","sdkError","error","sdkIntialized","initialized","_g","channelsTomarkAsRead","setChannelsToMarkAsRead","useEffect","isMounted","length","forEach","c","idx","setTimeout","markAsDelivered","React","EditUserProfile","e","target","fetchMore","clientHeight","scrollTop","scrollHeight","hasNext","info","type","channelListActions","payload","next","then","channelList","canSetMarkAsDelivered","appInfo","premiumFeatureList","find","feature","catch","err","PlaceHolderTypes","WRONG","map","channel","onLeaveChannel","cb","leave","res","url","onClick","some","LOADING","NO_CHANNELS"],"mappings":"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"}
@@ -2,34 +2,35 @@ import React__default from 'react';
2
2
  import ChannelAvatar from '../../ui/ChannelAvatar.js';
3
3
  import Badge from '../../ui/Badge.js';
4
4
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
5
- import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../../index-c2f20322.js';
6
- import { i as isToday, a as isYesterday, f as formatRelative } from '../../index-e7ab483d.js';
7
- import { f as format } from '../../index-2db9735a.js';
8
- import { t as truncateString, e as isEditedMessage } from '../../index-cc905e95.js';
5
+ import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../../index-e7e5efcf.js';
6
+ import { i as isToday, a as isYesterday, f as formatRelative } from '../../index-78e92d76.js';
7
+ import { f as format } from '../../index-5bebcb3a.js';
8
+ import { t as truncateString, d as isEditedMessage } from '../../index-594499d8.js';
9
9
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
10
- import { u as useLocalization } from '../../LocalizationContext-a6f8fb25.js';
10
+ import { u as useLocalization } from '../../LocalizationContext-6a3c0561.js';
11
11
  import MentionUserLabel from '../../ui/MentionUserLabel.js';
12
- import { u as useChannelListContext } from '../../ChannelListProvider-5d6be9a8.js';
12
+ import { u as useChannelListContext } from '../../ChannelListProvider-0f680566.js';
13
13
  import { TypingIndicatorText } from '../../Channel/components/TypingIndicator.js';
14
14
  import MessageStatus from '../../ui/MessageStatus.js';
15
15
  import '../../ui/Avatar.js';
16
- import '../../tslib.es6-84f8edfa.js';
16
+ import '../../tslib.es6-9643c112.js';
17
17
  import '../../ui/ImageRenderer.js';
18
- import '../../uuid-bd74c65a.js';
19
- import '../../utils-f96e8b5b.js';
18
+ import '../../uuid-dacf1460.js';
19
+ import '../../utils-2b1c0262.js';
20
20
  import 'prop-types';
21
- import '../../stringSet-ed906148.js';
22
- import '../../index-ccf6db26.js';
23
- import '../../index-fb7fd76d.js';
21
+ import '../../stringSet-dc01885c.js';
22
+ import '../../index-267e85d5.js';
23
+ import '../../index-8287486d.js';
24
+ import '../../utils/message/getOutgoingMessageState.js';
24
25
  import '../../withSendbird.js';
25
- import '../../_rollupPluginBabelHelpers-b9099c54.js';
26
+ import '../../_rollupPluginBabelHelpers-0bee2425.js';
26
27
  import '@sendbird/chat/groupChannel';
27
- import '../../topics-398017ae.js';
28
- import '../../utils-dc344408.js';
29
- import '../../UserProfileContext-58463608.js';
30
- import '../../ChannelProvider-106bb518.js';
31
- import '../../compareIds-4839d86c.js';
32
- import '../../const-07519343.js';
28
+ import '../../topics-57d99208.js';
29
+ import '../../utils-8ff877ec.js';
30
+ import '../../UserProfileContext-efa87f83.js';
31
+ import '../../ChannelProvider-39a2dc01.js';
32
+ import '../../compareIds-8cb3ae2b.js';
33
+ import '../../const-7dd290ce.js';
33
34
  import '@sendbird/chat/message';
34
35
  import '../../ui/ContextMenu.js';
35
36
  import 'react-dom';
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelPreview.js","sources":["../../../src/smart-components/ChannelList/components/ChannelPreview/utils.js","../../../src/smart-components/ChannelList/components/ChannelPreview/index.tsx"],"sourcesContent":["import isToday from 'date-fns/isToday';\nimport format from 'date-fns/format';\nimport formatRelative from 'date-fns/formatRelative';\nimport isYesterday from 'date-fns/isYesterday';\n\nimport { truncateString } from '../../../../utils';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (channel = {}, currentUserId, stringSet = LabelStringSet) => {\n if (!channel?.name && !channel?.members) {\n return stringSet.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel?.members?.length === 1) {\n return stringSet.NO_MEMBERS;\n }\n return (channel?.members || [])\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || stringSet.NO_NAME))\n .join(', ');\n};\n\nexport const getLastMessageCreatedAt = (channel, locale) => {\n const createdAt = channel?.lastMessage?.createdAt;\n const optionalParam = locale ? { locale } : null;\n if (!createdAt) {\n return '';\n }\n if (isToday(createdAt)) {\n return format(createdAt, 'p', optionalParam);\n }\n if (isYesterday(createdAt)) {\n return formatRelative(createdAt, new Date(), optionalParam);\n }\n return format(createdAt, 'MMM dd', optionalParam);\n};\n\nexport const getTotalMembers = (channel) => (\n channel?.memberCount\n ? channel.memberCount\n : 0\n);\n\nconst getPrettyLastMessage = (message = {}) => {\n const MAXLEN = 30;\n const { messageType, name } = message;\n if (messageType === 'file') {\n return truncateString(name, MAXLEN);\n }\n return message.message;\n};\n\nexport const getLastMessage = (channel) => (\n channel?.lastMessage\n ? getPrettyLastMessage(channel.lastMessage)\n : ''\n);\n\nexport const getChannelUnreadMessageCount = (channel) => (\n channel?.unreadMessageCount\n ? channel.unreadMessageCount\n : 0\n);\n","import './channel-preview.scss';\n\nimport React from 'react';\nimport type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport ChannelAvatar from '../../../../ui/ChannelAvatar';\nimport Badge from '../../../../ui/Badge';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\n\nimport * as utils from './utils';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport MentionUserLabel from '../../../../ui/MentionUserLabel';\nimport { useChannelListContext } from '../../context/ChannelListProvider';\nimport { TypingIndicatorText } from '../../../Channel/components/TypingIndicator';\nimport MessageStatus from '../../../../ui/MessageStatus';\nimport { isEditedMessage } from '../../../../utils';\n\ninterface ChannelPreviewInterface {\n channel: GroupChannel;\n isActive?: boolean;\n isTyping?: boolean;\n onClick: () => void;\n renderChannelAction: (props: { channel: GroupChannel }) => React.ReactElement;\n tabIndex: number;\n}\n\nconst ChannelPreview: React.FC<ChannelPreviewInterface> = ({\n channel,\n isActive = false,\n isTyping = false,\n renderChannelAction,\n onClick,\n tabIndex,\n}: ChannelPreviewInterface) => {\n const sbState = useSendbirdStateContext();\n const {\n isTypingIndicatorEnabled = false,\n isMessageReceiptStatusEnabled = false,\n } = useChannelListContext();\n const { dateLocale, stringSet } = useLocalization();\n const userId = sbState?.stores?.userStore?.user?.userId;\n const theme = sbState?.config?.theme;\n const isMentionEnabled = sbState?.config?.isMentionEnabled;\n const isFrozen = channel?.isFrozen || false;\n const isBroadcast = channel?.isBroadcast || false;\n const isChannelTyping = isTypingIndicatorEnabled && isTyping;\n const isMessageStatusEnabled = isMessageReceiptStatusEnabled\n && (channel?.lastMessage?.messageType === 'user' || channel?.lastMessage?.messageType === 'file')\n && (channel?.lastMessage as UserMessage | FileMessage)?.sender?.userId === userId;\n return (\n <div\n className={[\n 'sendbird-channel-preview',\n isActive ? 'sendbird-channel-preview--active' : '',\n ].join(' ')}\n role=\"link\"\n onClick={onClick}\n onKeyPress={onClick}\n tabIndex={tabIndex}\n >\n <div\n className=\"sendbird-channel-preview__avatar\"\n >\n <ChannelAvatar\n channel={channel}\n userId={userId}\n theme={theme}\n />\n </div>\n <div className=\"sendbird-channel-preview__content\">\n <div className=\"sendbird-channel-preview__content__upper\">\n <div className=\"sendbird-channel-preview__content__upper__header\">\n {\n isBroadcast\n && (\n <div className=\"sendbird-channel-preview__content__upper__header__broadcast-icon\">\n <Icon\n type={IconTypes.BROADCAST}\n fillColor={IconColors.SECONDARY}\n height=\"16px\"\n width=\"16px\"\n />\n </div>\n )\n }\n <Label\n className=\"sendbird-channel-preview__content__upper__header__channel-name\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(channel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-channel-preview__content__upper__header__total-members\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {utils.getTotalMembers(channel)}\n </Label>\n {\n isFrozen\n && (\n <div title=\"Frozen\" className=\"sendbird-channel-preview__content__upper__header__frozen-icon\">\n <Icon\n type={IconTypes.FREEZE}\n fillColor={IconColors.PRIMARY}\n height={12}\n width={12}\n />\n </div>\n )\n }\n </div>\n {\n isMessageStatusEnabled\n ? (\n <MessageStatus\n className=\"sendbird-channel-preview__content__upper__last-message-at\"\n channel={channel}\n message={channel?.lastMessage as UserMessage | FileMessage}\n />\n )\n : (\n <Label\n className=\"sendbird-channel-preview__content__upper__last-message-at\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {utils.getLastMessageCreatedAt(channel, dateLocale)}\n </Label>\n )\n }\n </div>\n <div className=\"sendbird-channel-preview__content__lower\">\n <Label\n className=\"sendbird-channel-preview__content__lower__last-message\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {\n isChannelTyping && (\n <TypingIndicatorText members={channel?.getTypingUsers()} />\n )\n }\n {\n !isChannelTyping && (\n utils.getLastMessage(channel) + (isEditedMessage(channel?.lastMessage as UserMessage | FileMessage) ? ` ${stringSet.MESSAGE_EDITED}` : '')\n )\n }\n </Label>\n <div className=\"sendbird-channel-preview__content__lower__unread-message-count\">\n {\n (isMentionEnabled && channel?.unreadMentionCount > 0)\n ? (\n <MentionUserLabel\n className=\"sendbird-channel-preview__content__lower__unread-message-count__mention\"\n color=\"purple\"\n >\n {'@'}\n </MentionUserLabel>\n )\n : null\n }\n {\n utils.getChannelUnreadMessageCount(channel) // return number\n ? <Badge count={utils.getChannelUnreadMessageCount(channel)} />\n : null\n }\n </div>\n </div>\n </div>\n <div\n className=\"sendbird-channel-preview__action\"\n >\n {renderChannelAction({ channel })}\n </div>\n </div>\n );\n}\n\nexport default ChannelPreview;\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","getLastMessageCreatedAt","locale","createdAt","lastMessage","optionalParam","isToday","format","isYesterday","formatRelative","Date","getTotalMembers","memberCount","getPrettyLastMessage","message","MAXLEN","messageType","truncateString","getLastMessage","getChannelUnreadMessageCount","unreadMessageCount","ChannelPreview","_a","_l","isActive","_m","isTyping","renderChannelAction","onClick","tabIndex","sbState","useSendbirdStateContext","_o","useChannelListContext","_p","isTypingIndicatorEnabled","_q","isMessageReceiptStatusEnabled","_r","useLocalization","dateLocale","_d","_b","stores","userStore","user","theme","_e","config","isMentionEnabled","_f","isFrozen","isBroadcast","isChannelTyping","isMessageStatusEnabled","_g","_h","_k","_j","sender","React","IconTypes","BROADCAST","IconColors","SECONDARY","LabelTypography","SUBTITLE_2","LabelColors","ONBACKGROUND_1","utils","CAPTION_2","ONBACKGROUND_2","FREEZE","PRIMARY","CAPTION_3","BODY_2","ONBACKGROUND_3","getTypingUsers","isEditedMessage","MESSAGE_EDITED","unreadMentionCount"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelPreview.js","sources":["../../../src/smart-components/ChannelList/components/ChannelPreview/utils.js","../../../src/smart-components/ChannelList/components/ChannelPreview/index.tsx"],"sourcesContent":["import isToday from 'date-fns/isToday';\nimport format from 'date-fns/format';\nimport formatRelative from 'date-fns/formatRelative';\nimport isYesterday from 'date-fns/isYesterday';\n\nimport { truncateString } from '../../../../utils';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (channel = {}, currentUserId, stringSet = LabelStringSet) => {\n if (!channel?.name && !channel?.members) {\n return stringSet.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel?.members?.length === 1) {\n return stringSet.NO_MEMBERS;\n }\n return (channel?.members || [])\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || stringSet.NO_NAME))\n .join(', ');\n};\n\nexport const getLastMessageCreatedAt = (channel, locale) => {\n const createdAt = channel?.lastMessage?.createdAt;\n const optionalParam = locale ? { locale } : null;\n if (!createdAt) {\n return '';\n }\n if (isToday(createdAt)) {\n return format(createdAt, 'p', optionalParam);\n }\n if (isYesterday(createdAt)) {\n return formatRelative(createdAt, new Date(), optionalParam);\n }\n return format(createdAt, 'MMM dd', optionalParam);\n};\n\nexport const getTotalMembers = (channel) => (\n channel?.memberCount\n ? channel.memberCount\n : 0\n);\n\nconst getPrettyLastMessage = (message = {}) => {\n const MAXLEN = 30;\n const { messageType, name } = message;\n if (messageType === 'file') {\n return truncateString(name, MAXLEN);\n }\n return message.message;\n};\n\nexport const getLastMessage = (channel) => (\n channel?.lastMessage\n ? getPrettyLastMessage(channel.lastMessage)\n : ''\n);\n\nexport const getChannelUnreadMessageCount = (channel) => (\n channel?.unreadMessageCount\n ? channel.unreadMessageCount\n : 0\n);\n","import './channel-preview.scss';\n\nimport React from 'react';\nimport type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport ChannelAvatar from '../../../../ui/ChannelAvatar';\nimport Badge from '../../../../ui/Badge';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\n\nimport * as utils from './utils';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport MentionUserLabel from '../../../../ui/MentionUserLabel';\nimport { useChannelListContext } from '../../context/ChannelListProvider';\nimport { TypingIndicatorText } from '../../../Channel/components/TypingIndicator';\nimport MessageStatus from '../../../../ui/MessageStatus';\nimport { isEditedMessage } from '../../../../utils';\n\ninterface ChannelPreviewInterface {\n channel: GroupChannel;\n isActive?: boolean;\n isTyping?: boolean;\n onClick: () => void;\n renderChannelAction: (props: { channel: GroupChannel }) => React.ReactElement;\n tabIndex: number;\n}\n\nconst ChannelPreview: React.FC<ChannelPreviewInterface> = ({\n channel,\n isActive = false,\n isTyping = false,\n renderChannelAction,\n onClick,\n tabIndex,\n}: ChannelPreviewInterface) => {\n const sbState = useSendbirdStateContext();\n const {\n isTypingIndicatorEnabled = false,\n isMessageReceiptStatusEnabled = false,\n } = useChannelListContext();\n const { dateLocale, stringSet } = useLocalization();\n const userId = sbState?.stores?.userStore?.user?.userId;\n const theme = sbState?.config?.theme;\n const isMentionEnabled = sbState?.config?.isMentionEnabled;\n const isFrozen = channel?.isFrozen || false;\n const isBroadcast = channel?.isBroadcast || false;\n const isChannelTyping = isTypingIndicatorEnabled && isTyping;\n const isMessageStatusEnabled = isMessageReceiptStatusEnabled\n && (channel?.lastMessage?.messageType === 'user' || channel?.lastMessage?.messageType === 'file')\n && (channel?.lastMessage as UserMessage | FileMessage)?.sender?.userId === userId;\n return (\n <div\n className={[\n 'sendbird-channel-preview',\n isActive ? 'sendbird-channel-preview--active' : '',\n ].join(' ')}\n role=\"link\"\n onClick={onClick}\n onKeyPress={onClick}\n tabIndex={tabIndex}\n >\n <div\n className=\"sendbird-channel-preview__avatar\"\n >\n <ChannelAvatar\n channel={channel}\n userId={userId}\n theme={theme}\n />\n </div>\n <div className=\"sendbird-channel-preview__content\">\n <div className=\"sendbird-channel-preview__content__upper\">\n <div className=\"sendbird-channel-preview__content__upper__header\">\n {\n isBroadcast\n && (\n <div className=\"sendbird-channel-preview__content__upper__header__broadcast-icon\">\n <Icon\n type={IconTypes.BROADCAST}\n fillColor={IconColors.SECONDARY}\n height=\"16px\"\n width=\"16px\"\n />\n </div>\n )\n }\n <Label\n className=\"sendbird-channel-preview__content__upper__header__channel-name\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(channel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-channel-preview__content__upper__header__total-members\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {utils.getTotalMembers(channel)}\n </Label>\n {\n isFrozen\n && (\n <div title=\"Frozen\" className=\"sendbird-channel-preview__content__upper__header__frozen-icon\">\n <Icon\n type={IconTypes.FREEZE}\n fillColor={IconColors.PRIMARY}\n height={12}\n width={12}\n />\n </div>\n )\n }\n </div>\n {\n isMessageStatusEnabled\n ? (\n <MessageStatus\n className=\"sendbird-channel-preview__content__upper__last-message-at\"\n channel={channel}\n message={channel?.lastMessage as UserMessage | FileMessage}\n />\n )\n : (\n <Label\n className=\"sendbird-channel-preview__content__upper__last-message-at\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {utils.getLastMessageCreatedAt(channel, dateLocale)}\n </Label>\n )\n }\n </div>\n <div className=\"sendbird-channel-preview__content__lower\">\n <Label\n className=\"sendbird-channel-preview__content__lower__last-message\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {\n isChannelTyping && (\n <TypingIndicatorText members={channel?.getTypingUsers()} />\n )\n }\n {\n !isChannelTyping && (\n utils.getLastMessage(channel) + (isEditedMessage(channel?.lastMessage as UserMessage | FileMessage) ? ` ${stringSet.MESSAGE_EDITED}` : '')\n )\n }\n </Label>\n <div className=\"sendbird-channel-preview__content__lower__unread-message-count\">\n {\n (isMentionEnabled && channel?.unreadMentionCount > 0)\n ? (\n <MentionUserLabel\n className=\"sendbird-channel-preview__content__lower__unread-message-count__mention\"\n color=\"purple\"\n >\n {'@'}\n </MentionUserLabel>\n )\n : null\n }\n {\n utils.getChannelUnreadMessageCount(channel) // return number\n ? <Badge count={utils.getChannelUnreadMessageCount(channel)} />\n : null\n }\n </div>\n </div>\n </div>\n <div\n className=\"sendbird-channel-preview__action\"\n >\n {renderChannelAction({ channel })}\n </div>\n </div>\n );\n}\n\nexport default ChannelPreview;\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","getLastMessageCreatedAt","locale","createdAt","lastMessage","optionalParam","isToday","format","isYesterday","formatRelative","Date","getTotalMembers","memberCount","getPrettyLastMessage","message","MAXLEN","messageType","truncateString","getLastMessage","getChannelUnreadMessageCount","unreadMessageCount","ChannelPreview","_a","_l","isActive","_m","isTyping","renderChannelAction","onClick","tabIndex","sbState","useSendbirdStateContext","_o","useChannelListContext","_p","isTypingIndicatorEnabled","_q","isMessageReceiptStatusEnabled","_r","useLocalization","dateLocale","_d","_b","stores","userStore","user","theme","_e","config","isMentionEnabled","_f","isFrozen","isBroadcast","isChannelTyping","isMessageStatusEnabled","_g","_h","_k","_j","sender","React","IconTypes","BROADCAST","IconColors","SECONDARY","LabelTypography","SUBTITLE_2","LabelColors","ONBACKGROUND_1","utils","CAPTION_2","ONBACKGROUND_2","FREEZE","PRIMARY","CAPTION_3","BODY_2","ONBACKGROUND_3","getTypingUsers","isEditedMessage","MESSAGE_EDITED","unreadMentionCount"],"mappings":"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"}
@@ -1,28 +1,29 @@
1
1
  import React__default, { useRef, useState, useContext } from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import { u as useLocalization, a as LocalizationContext } from '../../LocalizationContext-a6f8fb25.js';
3
+ import { u as useLocalization, a as LocalizationContext } from '../../LocalizationContext-6a3c0561.js';
4
4
  import ContextMenu, { MenuItems, MenuItem } from '../../ui/ContextMenu.js';
5
5
  import IconButton from '../../ui/IconButton.js';
6
6
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
7
7
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
8
- import { n as noop } from '../../utils-dc344408.js';
8
+ import { n as noop } from '../../utils-8ff877ec.js';
9
9
  import Modal from '../../ui/Modal.js';
10
- import { u as useChannelListContext } from '../../ChannelListProvider-5d6be9a8.js';
11
- import '../../stringSet-ed906148.js';
12
- import '../../index-fb7fd76d.js';
13
- import '../../tslib.es6-84f8edfa.js';
10
+ import { u as useChannelListContext } from '../../ChannelListProvider-0f680566.js';
11
+ import '../../stringSet-dc01885c.js';
12
+ import '../../index-8287486d.js';
13
+ import '../../tslib.es6-9643c112.js';
14
14
  import 'react-dom';
15
15
  import '../../ui/SortByRow.js';
16
- import '../../uuid-bd74c65a.js';
17
- import '../../index-cc905e95.js';
18
- import '../../index-c2f20322.js';
16
+ import '../../uuid-dacf1460.js';
17
+ import '../../index-594499d8.js';
18
+ import '../../utils/message/getOutgoingMessageState.js';
19
+ import '../../index-e7e5efcf.js';
19
20
  import '../../withSendbird.js';
20
- import '../../_rollupPluginBabelHelpers-b9099c54.js';
21
- import '../../index-ecc6d4a9.js';
21
+ import '../../_rollupPluginBabelHelpers-0bee2425.js';
22
+ import '../../index-bd437d0f.js';
22
23
  import '../../ui/Button.js';
23
24
  import '@sendbird/chat/groupChannel';
24
- import '../../topics-398017ae.js';
25
- import '../../UserProfileContext-58463608.js';
25
+ import '../../topics-57d99208.js';
26
+ import '../../UserProfileContext-efa87f83.js';
26
27
 
27
28
  var LeaveChannel = function (props) {
28
29
  var _a, _b, _c;
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelPreviewAction.js","sources":["../../../src/smart-components/ChannelList/components/LeaveChannel/index.tsx","../../../src/smart-components/ChannelList/components/ChannelPreviewAction.jsx"],"sourcesContent":["import React from 'react';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { noop } from '../../../../utils/utils';\n\nimport Modal from '../../../../ui/Modal';\nimport { useChannelListContext } from '../../context/ChannelListProvider';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\nexport type LeaveChannelProps = {\n onSubmit: () => void;\n onCancel: () => void;\n}\n\nconst LeaveChannel: React.FC<LeaveChannelProps> = (props: LeaveChannelProps) => {\n const {\n onSubmit = noop,\n onCancel = noop,\n } = props;\n\n const channel = useChannelListContext()?.currentChannel;\n const state = useSendbirdStateContext();\n const { stringSet } = useLocalization();\n\n const logger = state?.config?.logger;\n const isOnline = state?.config?.isOnline;\n if (channel) {\n return (\n <Modal\n disabled={!isOnline}\n onCancel={onCancel}\n onSubmit={() => {\n logger.info('ChannelSettings: Leaving channel', channel);\n channel?.leave()\n .then(() => {\n logger.info('ChannelSettings: Leaving channel successful!', channel);\n onSubmit();\n });\n }}\n submitText={stringSet.MODAL__LEAVE_CHANNEL__FOOTER}\n titleText={stringSet.MODAL__LEAVE_CHANNEL__TITLE}\n />\n );\n }\n};\n\nexport default LeaveChannel;\n","import React, {\n useState,\n useRef,\n useContext,\n} from 'react';\nimport PropTypes from 'prop-types';\n\nimport { LocalizationContext } from '../../../lib/LocalizationContext';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../ui/ContextMenu';\nimport IconButton from '../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../ui/Icon';\nimport LeaveChannelModal from './LeaveChannel';\n\nexport default function ChannelPreviewAction({ disabled, onLeaveChannel }) {\n const parentRef = useRef(null);\n const parentContainerRef = useRef(null);\n const [showModal, setShowModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <div\n role=\"button\"\n style={{ display: 'inline-block' }}\n onKeyDown={(e) => { e.stopPropagation(); }}\n tabIndex={0}\n onClick={(e) => { e.stopPropagation(); }}\n ref={parentContainerRef}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n ref={parentRef}\n onClick={toggleDropdown}\n height=\"32px\"\n width=\"32px\"\n >\n <Icon\n type={IconTypes.MORE}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={parentRef}\n parentContainRef={parentContainerRef}\n closeDropdown={closeDropdown}\n >\n <MenuItem\n onClick={() => {\n if (disabled) { return; }\n setShowModal(true);\n closeDropdown();\n }}\n >\n {stringSet.CHANNEL_SETTING__LEAVE_CHANNEL__TITLE}\n </MenuItem>\n </MenuItems>\n )}\n />\n {\n showModal && (\n <LeaveChannelModal\n onSubmit={() => {\n setShowModal(false);\n onLeaveChannel();\n }}\n onCancel={() => setShowModal(false)}\n />\n )\n }\n </div>\n );\n}\n\nChannelPreviewAction.propTypes = {\n disabled: PropTypes.bool,\n onLeaveChannel: PropTypes.func.isRequired,\n};\n\nChannelPreviewAction.defaultProps = {\n disabled: false,\n};\n"],"names":["LeaveChannel","props","_d","onSubmit","noop","_e","onCancel","channel","_a","useChannelListContext","currentChannel","state","useSendbirdStateContext","stringSet","useLocalization","logger","_b","config","isOnline","_c","React","info","leave","then","MODAL__LEAVE_CHANNEL__FOOTER","MODAL__LEAVE_CHANNEL__TITLE","ChannelPreviewAction","disabled","onLeaveChannel","parentRef","useRef","parentContainerRef","showModal","setShowModal","useState","useContext","LocalizationContext","display","e","stopPropagation","toggleDropdown","IconTypes","MORE","IconColors","PRIMARY","closeDropdown","CHANNEL_SETTING__LEAVE_CHANNEL__TITLE","LeaveChannelModal","propTypes","PropTypes","bool","func","isRequired","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelPreviewAction.js","sources":["../../../src/smart-components/ChannelList/components/LeaveChannel/index.tsx","../../../src/smart-components/ChannelList/components/ChannelPreviewAction.jsx"],"sourcesContent":["import React from 'react';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { noop } from '../../../../utils/utils';\n\nimport Modal from '../../../../ui/Modal';\nimport { useChannelListContext } from '../../context/ChannelListProvider';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\nexport type LeaveChannelProps = {\n onSubmit: () => void;\n onCancel: () => void;\n}\n\nconst LeaveChannel: React.FC<LeaveChannelProps> = (props: LeaveChannelProps) => {\n const {\n onSubmit = noop,\n onCancel = noop,\n } = props;\n\n const channel = useChannelListContext()?.currentChannel;\n const state = useSendbirdStateContext();\n const { stringSet } = useLocalization();\n\n const logger = state?.config?.logger;\n const isOnline = state?.config?.isOnline;\n if (channel) {\n return (\n <Modal\n disabled={!isOnline}\n onCancel={onCancel}\n onSubmit={() => {\n logger.info('ChannelSettings: Leaving channel', channel);\n channel?.leave()\n .then(() => {\n logger.info('ChannelSettings: Leaving channel successful!', channel);\n onSubmit();\n });\n }}\n submitText={stringSet.MODAL__LEAVE_CHANNEL__FOOTER}\n titleText={stringSet.MODAL__LEAVE_CHANNEL__TITLE}\n />\n );\n }\n};\n\nexport default LeaveChannel;\n","import React, {\n useState,\n useRef,\n useContext,\n} from 'react';\nimport PropTypes from 'prop-types';\n\nimport { LocalizationContext } from '../../../lib/LocalizationContext';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../ui/ContextMenu';\nimport IconButton from '../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../ui/Icon';\nimport LeaveChannelModal from './LeaveChannel';\n\nexport default function ChannelPreviewAction({ disabled, onLeaveChannel }) {\n const parentRef = useRef(null);\n const parentContainerRef = useRef(null);\n const [showModal, setShowModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <div\n role=\"button\"\n style={{ display: 'inline-block' }}\n onKeyDown={(e) => { e.stopPropagation(); }}\n tabIndex={0}\n onClick={(e) => { e.stopPropagation(); }}\n ref={parentContainerRef}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n ref={parentRef}\n onClick={toggleDropdown}\n height=\"32px\"\n width=\"32px\"\n >\n <Icon\n type={IconTypes.MORE}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={parentRef}\n parentContainRef={parentContainerRef}\n closeDropdown={closeDropdown}\n >\n <MenuItem\n onClick={() => {\n if (disabled) { return; }\n setShowModal(true);\n closeDropdown();\n }}\n >\n {stringSet.CHANNEL_SETTING__LEAVE_CHANNEL__TITLE}\n </MenuItem>\n </MenuItems>\n )}\n />\n {\n showModal && (\n <LeaveChannelModal\n onSubmit={() => {\n setShowModal(false);\n onLeaveChannel();\n }}\n onCancel={() => setShowModal(false)}\n />\n )\n }\n </div>\n );\n}\n\nChannelPreviewAction.propTypes = {\n disabled: PropTypes.bool,\n onLeaveChannel: PropTypes.func.isRequired,\n};\n\nChannelPreviewAction.defaultProps = {\n disabled: false,\n};\n"],"names":["LeaveChannel","props","_d","onSubmit","noop","_e","onCancel","channel","_a","useChannelListContext","currentChannel","state","useSendbirdStateContext","stringSet","useLocalization","logger","_b","config","isOnline","_c","React","info","leave","then","MODAL__LEAVE_CHANNEL__FOOTER","MODAL__LEAVE_CHANNEL__TITLE","ChannelPreviewAction","disabled","onLeaveChannel","parentRef","useRef","parentContainerRef","showModal","setShowModal","useState","useContext","LocalizationContext","display","e","stopPropagation","toggleDropdown","IconTypes","MORE","IconColors","PRIMARY","closeDropdown","CHANNEL_SETTING__LEAVE_CHANNEL__TITLE","LeaveChannelModal","propTypes","PropTypes","bool","func","isRequired","defaultProps"],"mappings":"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"}
@@ -1,14 +1,15 @@
1
- import '../tslib.es6-84f8edfa.js';
1
+ import '../tslib.es6-9643c112.js';
2
2
  import 'react';
3
3
  import '@sendbird/chat/groupChannel';
4
- export { C as ChannelListProvider, u as useChannelListContext } from '../ChannelListProvider-5d6be9a8.js';
5
- import '../uuid-bd74c65a.js';
6
- import '../utils-dc344408.js';
7
- import '../UserProfileContext-58463608.js';
4
+ export { C as ChannelListProvider, u as useChannelListContext } from '../ChannelListProvider-0f680566.js';
5
+ import '../uuid-dacf1460.js';
6
+ import '../utils-8ff877ec.js';
7
+ import '../UserProfileContext-efa87f83.js';
8
8
  import '../useSendbirdStateContext.js';
9
- import '../topics-398017ae.js';
10
- import '../_rollupPluginBabelHelpers-b9099c54.js';
11
- import '../index-cc905e95.js';
9
+ import '../topics-57d99208.js';
10
+ import '../_rollupPluginBabelHelpers-0bee2425.js';
11
+ import '../index-594499d8.js';
12
+ import '../utils/message/getOutgoingMessageState.js';
12
13
  import 'prop-types';
13
14
  import '../withSendbird.js';
14
15
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
1
+ {"version":3,"file":"context.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}