@sendbird/uikit-react 3.0.0-alpha.2 → 3.0.0-beta.3

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 (438) hide show
  1. package/App.js +54 -35
  2. package/App.js.map +1 -1
  3. package/Channel/components/ChannelHeader.js +15 -14
  4. package/Channel/components/ChannelHeader.js.map +1 -1
  5. package/Channel/components/ChannelUI.js +30 -23
  6. package/Channel/components/ChannelUI.js.map +1 -1
  7. package/Channel/components/FileViewer.js +14 -13
  8. package/Channel/components/FileViewer.js.map +1 -1
  9. package/Channel/components/FrozenNotification.js +5 -5
  10. package/Channel/components/Message.js +189 -66
  11. package/Channel/components/Message.js.map +1 -1
  12. package/Channel/components/MessageInput.js +145 -30
  13. package/Channel/components/MessageInput.js.map +1 -1
  14. package/Channel/components/MessageList.js +72 -60
  15. package/Channel/components/MessageList.js.map +1 -1
  16. package/Channel/components/RemoveMessageModal.js +17 -16
  17. package/Channel/components/RemoveMessageModal.js.map +1 -1
  18. package/Channel/components/SuggestedMentionList.js +250 -0
  19. package/Channel/components/SuggestedMentionList.js.map +1 -0
  20. package/Channel/components/TypingIndicator.js +16 -15
  21. package/Channel/components/TypingIndicator.js.map +1 -1
  22. package/Channel/components/UnreadCount.js +5 -5
  23. package/Channel/context.js +13 -12
  24. package/Channel/context.js.map +1 -1
  25. package/Channel.js +29 -22
  26. package/Channel.js.map +1 -1
  27. package/ChannelList/components/AddChannel.js +14 -14
  28. package/ChannelList/components/ChannelListHeader.js +7 -7
  29. package/ChannelList/components/ChannelListUI.js +52 -29
  30. package/ChannelList/components/ChannelListUI.js.map +1 -1
  31. package/ChannelList/components/ChannelPreview.js +55 -21
  32. package/ChannelList/components/ChannelPreview.js.map +1 -1
  33. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  34. package/ChannelList/context.js +8 -8
  35. package/ChannelList.js +34 -25
  36. package/ChannelList.js.map +1 -1
  37. package/{ChannelListProvider-0b0c2c40.js → ChannelListProvider-d602a166.js} +92 -27
  38. package/ChannelListProvider-d602a166.js.map +1 -0
  39. package/{ChannelProvider-459e463f.js → ChannelProvider-cf8fc05a.js} +72 -41
  40. package/ChannelProvider-cf8fc05a.js.map +1 -0
  41. package/ChannelSettings/components/AdminPanel.js +15 -15
  42. package/ChannelSettings/components/ChannelProfile.js +13 -13
  43. package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  44. package/ChannelSettings/components/EditDetailsModal.js +13 -13
  45. package/ChannelSettings/components/LeaveChannel.js +10 -10
  46. package/ChannelSettings/components/UserListItem.js +11 -11
  47. package/ChannelSettings/components/UserPanel.js +14 -14
  48. package/ChannelSettings/context.js +3 -3
  49. package/ChannelSettings.js +18 -18
  50. package/CreateChannel/components/CreateChannelUI.js +14 -14
  51. package/CreateChannel/components/InviteMembers.js +14 -14
  52. package/CreateChannel/components/SelectChannelType.js +10 -10
  53. package/CreateChannel/context.js +3 -3
  54. package/CreateChannel.js +14 -14
  55. package/{CreateChannelProvider-c617a1bb.js → CreateChannelProvider-3f3dafed.js} +1 -1
  56. package/{CreateChannelProvider-c617a1bb.js.map → CreateChannelProvider-3f3dafed.js.map} +1 -1
  57. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  58. package/EditUserProfile.js +13 -13
  59. package/{LocalizationContext-e4391013.js → LocalizationContext-b970a73c.js} +3 -3
  60. package/{LocalizationContext-e4391013.js.map → LocalizationContext-b970a73c.js.map} +1 -1
  61. package/{MemberList-6655cba0.js → MemberList-9d29bee4.js} +5 -5
  62. package/{MemberList-6655cba0.js.map → MemberList-9d29bee4.js.map} +1 -1
  63. package/MessageSearch/components/MessageSearchUI.js +11 -11
  64. package/MessageSearch/context.js +2 -2
  65. package/MessageSearch.js +11 -11
  66. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  67. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  68. package/OpenChannel/components/OpenChannelInput.js +18 -14
  69. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  70. package/OpenChannel/components/OpenChannelMessage.js +23 -19
  71. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  72. package/OpenChannel/components/OpenChannelMessageList.js +25 -21
  73. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  74. package/OpenChannel/components/OpenChannelUI.js +25 -21
  75. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  76. package/OpenChannel/context.js +9 -9
  77. package/OpenChannel.js +25 -21
  78. package/OpenChannel.js.map +1 -1
  79. package/{OpenChannelProvider-a7691eb4.js → OpenChannelProvider-821fb008.js} +7 -7
  80. package/{OpenChannelProvider-a7691eb4.js.map → OpenChannelProvider-821fb008.js.map} +1 -1
  81. package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  82. package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  83. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  84. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  85. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  86. package/OpenChannelSettings/context.js +2 -2
  87. package/OpenChannelSettings.js +17 -17
  88. package/SendbirdProvider.js +36 -14
  89. package/SendbirdProvider.js.map +1 -1
  90. package/{UserProfileContext-865db5e6.js → UserProfileContext-f4ff4291.js} +1 -1
  91. package/{UserProfileContext-865db5e6.js.map → UserProfileContext-f4ff4291.js.map} +1 -1
  92. package/{_rollupPluginBabelHelpers-20904f21.js → _rollupPluginBabelHelpers-6bf18550.js} +1 -1
  93. package/{_rollupPluginBabelHelpers-20904f21.js.map → _rollupPluginBabelHelpers-6bf18550.js.map} +1 -1
  94. package/{actionTypes-1e3a4074.js → actionTypes-8e320ded.js} +1 -1
  95. package/{actionTypes-1e3a4074.js.map → actionTypes-8e320ded.js.map} +1 -1
  96. package/cjs/App.js +54 -35
  97. package/cjs/App.js.map +1 -1
  98. package/cjs/Channel/components/ChannelHeader.js +15 -14
  99. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  100. package/cjs/Channel/components/ChannelUI.js +31 -24
  101. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  102. package/cjs/Channel/components/FileViewer.js +14 -13
  103. package/cjs/Channel/components/FileViewer.js.map +1 -1
  104. package/cjs/Channel/components/FrozenNotification.js +5 -5
  105. package/cjs/Channel/components/Message.js +188 -65
  106. package/cjs/Channel/components/Message.js.map +1 -1
  107. package/cjs/Channel/components/MessageInput.js +144 -29
  108. package/cjs/Channel/components/MessageInput.js.map +1 -1
  109. package/cjs/Channel/components/MessageList.js +71 -59
  110. package/cjs/Channel/components/MessageList.js.map +1 -1
  111. package/cjs/Channel/components/RemoveMessageModal.js +17 -16
  112. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  113. package/cjs/Channel/components/SuggestedMentionList.js +256 -0
  114. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -0
  115. package/cjs/Channel/components/TypingIndicator.js +18 -14
  116. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  117. package/cjs/Channel/components/UnreadCount.js +5 -5
  118. package/cjs/Channel/context.js +13 -12
  119. package/cjs/Channel/context.js.map +1 -1
  120. package/cjs/Channel.js +29 -22
  121. package/cjs/Channel.js.map +1 -1
  122. package/cjs/ChannelList/components/AddChannel.js +14 -14
  123. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  124. package/cjs/ChannelList/components/ChannelListUI.js +52 -29
  125. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  126. package/cjs/ChannelList/components/ChannelPreview.js +55 -21
  127. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  128. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  129. package/cjs/ChannelList/context.js +8 -8
  130. package/cjs/ChannelList.js +34 -25
  131. package/cjs/ChannelList.js.map +1 -1
  132. package/cjs/{ChannelListProvider-5a152618.js → ChannelListProvider-64db9f70.js} +92 -27
  133. package/cjs/ChannelListProvider-64db9f70.js.map +1 -0
  134. package/cjs/{ChannelProvider-f1fb0108.js → ChannelProvider-5e8e33b1.js} +79 -48
  135. package/cjs/ChannelProvider-5e8e33b1.js.map +1 -0
  136. package/cjs/ChannelSettings/components/AdminPanel.js +15 -15
  137. package/cjs/ChannelSettings/components/ChannelProfile.js +13 -13
  138. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  139. package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
  140. package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
  141. package/cjs/ChannelSettings/components/UserListItem.js +11 -11
  142. package/cjs/ChannelSettings/components/UserPanel.js +14 -14
  143. package/cjs/ChannelSettings/context.js +3 -3
  144. package/cjs/ChannelSettings.js +18 -18
  145. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  146. package/cjs/CreateChannel/components/InviteMembers.js +14 -14
  147. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  148. package/cjs/CreateChannel/context.js +3 -3
  149. package/cjs/CreateChannel.js +14 -14
  150. package/cjs/{CreateChannelProvider-df42106f.js → CreateChannelProvider-dcf7f906.js} +1 -1
  151. package/cjs/{CreateChannelProvider-df42106f.js.map → CreateChannelProvider-dcf7f906.js.map} +1 -1
  152. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  153. package/cjs/EditUserProfile.js +13 -13
  154. package/cjs/{LocalizationContext-68e55e2a.js → LocalizationContext-382a9ef1.js} +3 -3
  155. package/cjs/{LocalizationContext-68e55e2a.js.map → LocalizationContext-382a9ef1.js.map} +1 -1
  156. package/cjs/{MemberList-dc84e303.js → MemberList-03a241cd.js} +5 -5
  157. package/cjs/{MemberList-dc84e303.js.map → MemberList-03a241cd.js.map} +1 -1
  158. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  159. package/cjs/MessageSearch/context.js +2 -2
  160. package/cjs/MessageSearch.js +11 -11
  161. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  162. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  163. package/cjs/OpenChannel/components/OpenChannelInput.js +18 -14
  164. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  165. package/cjs/OpenChannel/components/OpenChannelMessage.js +23 -19
  166. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  167. package/cjs/OpenChannel/components/OpenChannelMessageList.js +25 -21
  168. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  169. package/cjs/OpenChannel/components/OpenChannelUI.js +25 -21
  170. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  171. package/cjs/OpenChannel/context.js +9 -9
  172. package/cjs/OpenChannel.js +25 -21
  173. package/cjs/OpenChannel.js.map +1 -1
  174. package/cjs/{OpenChannelProvider-7a1a996f.js → OpenChannelProvider-9000ccb9.js} +7 -7
  175. package/cjs/{OpenChannelProvider-7a1a996f.js.map → OpenChannelProvider-9000ccb9.js.map} +1 -1
  176. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  177. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  178. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  179. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  180. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  181. package/cjs/OpenChannelSettings/context.js +2 -2
  182. package/cjs/OpenChannelSettings.js +17 -17
  183. package/cjs/SendbirdProvider.js +36 -14
  184. package/cjs/SendbirdProvider.js.map +1 -1
  185. package/cjs/{UserProfileContext-3533547d.js → UserProfileContext-0b7ef11a.js} +1 -1
  186. package/cjs/{UserProfileContext-3533547d.js.map → UserProfileContext-0b7ef11a.js.map} +1 -1
  187. package/cjs/{_rollupPluginBabelHelpers-fc14118c.js → _rollupPluginBabelHelpers-6193d45d.js} +1 -1
  188. package/cjs/{_rollupPluginBabelHelpers-fc14118c.js.map → _rollupPluginBabelHelpers-6193d45d.js.map} +1 -1
  189. package/cjs/{actionTypes-bc47f97a.js → actionTypes-092bc172.js} +1 -1
  190. package/cjs/{actionTypes-bc47f97a.js.map → actionTypes-092bc172.js.map} +1 -1
  191. package/cjs/{color-4afb15fb.js → color-1816dacf.js} +1 -1
  192. package/cjs/{color-4afb15fb.js.map → color-1816dacf.js.map} +1 -1
  193. package/cjs/{compareIds-01306377.js → compareIds-e9bca8c4.js} +1 -1
  194. package/cjs/{compareIds-01306377.js.map → compareIds-e9bca8c4.js.map} +1 -1
  195. package/cjs/const-c65837c1.js +22 -0
  196. package/cjs/const-c65837c1.js.map +1 -0
  197. package/cjs/const-d9f4d880.js +14 -0
  198. package/cjs/const-d9f4d880.js.map +1 -0
  199. package/cjs/{context-c1f9d650.js → context-6ebf3379.js} +2 -2
  200. package/cjs/{context-c1f9d650.js.map → context-6ebf3379.js.map} +1 -1
  201. package/cjs/{index-1044f1ed.js → index-01072ac9.js} +3 -3
  202. package/cjs/{index-1044f1ed.js.map → index-01072ac9.js.map} +1 -1
  203. package/cjs/{index-e2bb862c.js → index-20a06ed6.js} +1 -1
  204. package/cjs/{index-e2bb862c.js.map → index-20a06ed6.js.map} +1 -1
  205. package/cjs/{index-d4880236.js → index-212a11f2.js} +84 -3
  206. package/cjs/index-212a11f2.js.map +1 -0
  207. package/cjs/{index-aecc8d24.js → index-2faa2f93.js} +1 -1
  208. package/cjs/{index-aecc8d24.js.map → index-2faa2f93.js.map} +1 -1
  209. package/cjs/{index-9dc3863f.js → index-4f40f311.js} +2 -2
  210. package/cjs/{index-9dc3863f.js.map → index-4f40f311.js.map} +1 -1
  211. package/cjs/index-75453415.js +54 -0
  212. package/cjs/index-75453415.js.map +1 -0
  213. package/cjs/{index-8becccd8.js → index-948426a8.js} +4 -4
  214. package/cjs/{index-8becccd8.js.map → index-948426a8.js.map} +1 -1
  215. package/cjs/{index-905331fa.js → index-a2ce047a.js} +2 -2
  216. package/cjs/{index-905331fa.js.map → index-a2ce047a.js.map} +1 -1
  217. package/cjs/{index-4987c8b2.js → index-d57081d1.js} +6 -6
  218. package/cjs/{index-4987c8b2.js.map → index-d57081d1.js.map} +1 -1
  219. package/cjs/{index-659c9ca5.js → index-e63da805.js} +4 -4
  220. package/cjs/{index-659c9ca5.js.map → index-e63da805.js.map} +1 -1
  221. package/cjs/{index-1468d245.js → index-f1971e28.js} +3 -3
  222. package/cjs/{index-1468d245.js.map → index-f1971e28.js.map} +1 -1
  223. package/cjs/index.css +243 -133
  224. package/cjs/index.css.map +1 -1
  225. package/cjs/index.js +40 -33
  226. package/cjs/index.js.map +1 -1
  227. package/cjs/{openChannelUtils-37919a36.js → openChannelUtils-16f29ba2.js} +1 -1
  228. package/cjs/{openChannelUtils-37919a36.js.map → openChannelUtils-16f29ba2.js.map} +1 -1
  229. package/cjs/sendBirdSelectors.js +1 -1
  230. package/cjs/{stringSet-aa544ce5.js → stringSet-b9ea6eef.js} +4 -2
  231. package/cjs/stringSet-b9ea6eef.js.map +1 -0
  232. package/cjs/{topics-8314d425.js → topics-11048db8.js} +1 -1
  233. package/cjs/{topics-8314d425.js.map → topics-11048db8.js.map} +1 -1
  234. package/cjs/{tslib.es6-4a281a05.js → tslib.es6-07dd6257.js} +1 -1
  235. package/cjs/{tslib.es6-4a281a05.js.map → tslib.es6-07dd6257.js.map} +1 -1
  236. package/cjs/ui/Accordion.js +4 -4
  237. package/cjs/ui/AccordionGroup.js +2 -2
  238. package/cjs/ui/AdminMessage.js +3 -3
  239. package/cjs/ui/Avatar.js +3 -3
  240. package/cjs/ui/Badge.js +5 -5
  241. package/cjs/ui/Button.js +4 -4
  242. package/cjs/ui/ChannelAvatar.js +4 -4
  243. package/cjs/ui/ChannelPreview.js +12 -12
  244. package/cjs/ui/ChatHeader.js +8 -8
  245. package/cjs/ui/Checkbox.js +1 -1
  246. package/cjs/ui/ConnectionStatus.js +5 -5
  247. package/cjs/ui/ContextMenu.js +5 -5
  248. package/cjs/ui/DateSeparator.js +4 -4
  249. package/cjs/ui/Dropdown.js +3 -3
  250. package/cjs/ui/EmojiReactions.js +7 -7
  251. package/cjs/ui/FileMessageItemBody.js +6 -6
  252. package/cjs/ui/FileViewer.js +7 -7
  253. package/cjs/ui/Icon.js +1 -1
  254. package/cjs/ui/IconButton.js +1 -1
  255. package/cjs/ui/ImageRenderer.js +1 -1
  256. package/cjs/ui/Input.js +3 -3
  257. package/cjs/ui/Label.js +3 -3
  258. package/cjs/ui/LinkLabel.js +3 -3
  259. package/cjs/ui/Loader.js +1 -1
  260. package/cjs/ui/MentionUserLabel.js +25 -0
  261. package/cjs/ui/MentionUserLabel.js.map +1 -0
  262. package/cjs/ui/MessageContent.js +25 -62
  263. package/cjs/ui/MessageContent.js.map +1 -1
  264. package/cjs/ui/MessageInput.js +4900 -84
  265. package/cjs/ui/MessageInput.js.map +1 -1
  266. package/cjs/ui/MessageItemMenu.js +7 -7
  267. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  268. package/cjs/ui/MessageSearchFileItem.js +10 -10
  269. package/cjs/ui/MessageSearchItem.js +10 -10
  270. package/cjs/ui/MessageStatus.js +66 -0
  271. package/cjs/ui/MessageStatus.js.map +1 -0
  272. package/cjs/ui/Modal.js +8 -8
  273. package/cjs/ui/MutedAvatarOverlay.js +1 -1
  274. package/cjs/ui/OGMessageItemBody.js +38 -28
  275. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  276. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  277. package/cjs/ui/OpenChannelAvatar.js +7 -7
  278. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  279. package/cjs/ui/OpenchannelFileMessage.js +14 -14
  280. package/cjs/ui/OpenchannelOGMessage.js +14 -14
  281. package/cjs/ui/OpenchannelThumbnailMessage.js +13 -13
  282. package/cjs/ui/OpenchannelUserMessage.js +14 -14
  283. package/cjs/ui/PlaceHolder.js +6 -6
  284. package/cjs/ui/QuoteMessage.js +7 -7
  285. package/cjs/ui/QuoteMessageInput.js +7 -7
  286. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  287. package/cjs/ui/ReactionBadge.js +3 -3
  288. package/cjs/ui/ReactionButton.js +1 -1
  289. package/cjs/ui/SortByRow.js +1 -1
  290. package/cjs/ui/TextButton.js +2 -2
  291. package/cjs/ui/TextMessageItemBody.js +36 -14
  292. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  293. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  294. package/cjs/ui/Tooltip.js +3 -3
  295. package/cjs/ui/TooltipWrapper.js +1 -1
  296. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  297. package/cjs/ui/UserListItem.js +11 -11
  298. package/cjs/ui/UserProfile.js +9 -9
  299. package/cjs/useSendbirdStateContext.js +1 -1
  300. package/cjs/{utils-cbd3ed99.js → utils-3240365f.js} +1 -1
  301. package/cjs/{utils-cbd3ed99.js.map → utils-3240365f.js.map} +1 -1
  302. package/cjs/{utils-66b3f4ec.js → utils-53d332a6.js} +1 -1
  303. package/cjs/{utils-66b3f4ec.js.map → utils-53d332a6.js.map} +1 -1
  304. package/cjs/{utils-3b0815dc.js → utils-94ae6cec.js} +1 -1
  305. package/cjs/{utils-3b0815dc.js.map → utils-94ae6cec.js.map} +1 -1
  306. package/cjs/{uuid-1d5ec8b2.js → uuid-172844fb.js} +1 -1
  307. package/cjs/{uuid-1d5ec8b2.js.map → uuid-172844fb.js.map} +1 -1
  308. package/cjs/withSendBird.js +1 -1
  309. package/{color-ee3fc5ee.js → color-38dc84d3.js} +1 -1
  310. package/{color-ee3fc5ee.js.map → color-38dc84d3.js.map} +1 -1
  311. package/{compareIds-808956f2.js → compareIds-f01e0c3c.js} +1 -1
  312. package/{compareIds-808956f2.js.map → compareIds-f01e0c3c.js.map} +1 -1
  313. package/const-b6685801.js +8 -0
  314. package/const-b6685801.js.map +1 -0
  315. package/const-d46f09a1.js +18 -0
  316. package/const-d46f09a1.js.map +1 -0
  317. package/{context-98ce535c.js → context-b5168bd0.js} +2 -2
  318. package/{context-98ce535c.js.map → context-b5168bd0.js.map} +1 -1
  319. package/dist/index.css +243 -133
  320. package/dist/index.css.map +1 -1
  321. package/{index-770d7112.js → index-1c2588aa.js} +2 -2
  322. package/{index-770d7112.js.map → index-1c2588aa.js.map} +1 -1
  323. package/{index-acebc2ff.js → index-2dce3a04.js} +3 -3
  324. package/{index-acebc2ff.js.map → index-2dce3a04.js.map} +1 -1
  325. package/{index-5c2c81bc.js → index-3bd4a058.js} +6 -6
  326. package/{index-5c2c81bc.js.map → index-3bd4a058.js.map} +1 -1
  327. package/index-62fd2db7.js +48 -0
  328. package/index-62fd2db7.js.map +1 -0
  329. package/{index-6ebf7894.js → index-6381b534.js} +1 -1
  330. package/{index-6ebf7894.js.map → index-6381b534.js.map} +1 -1
  331. package/{index-cd21929d.js → index-9afb4d01.js} +2 -2
  332. package/{index-cd21929d.js.map → index-9afb4d01.js.map} +1 -1
  333. package/{index-1718324d.js → index-a6675155.js} +4 -4
  334. package/{index-1718324d.js.map → index-a6675155.js.map} +1 -1
  335. package/{index-e818a8a3.js → index-b12b270e.js} +4 -4
  336. package/{index-e818a8a3.js.map → index-b12b270e.js.map} +1 -1
  337. package/{index-7a51bd16.js → index-d0b30cd5.js} +3 -3
  338. package/{index-7a51bd16.js.map → index-d0b30cd5.js.map} +1 -1
  339. package/{index-942c85a6.js → index-d0fe8fe1.js} +1 -1
  340. package/{index-942c85a6.js.map → index-d0fe8fe1.js.map} +1 -1
  341. package/{index-8c72a94a.js → index-e6d0889d.js} +83 -3
  342. package/index-e6d0889d.js.map +1 -0
  343. package/index.d.ts +238 -210
  344. package/index.js +40 -33
  345. package/index.js.map +1 -1
  346. package/{openChannelUtils-56a372e7.js → openChannelUtils-22ed0258.js} +1 -1
  347. package/{openChannelUtils-56a372e7.js.map → openChannelUtils-22ed0258.js.map} +1 -1
  348. package/package.json +5 -2
  349. package/sendBirdSelectors.js +1 -1
  350. package/{stringSet-4f6eaa60.js → stringSet-2e6c1d2c.js} +4 -2
  351. package/stringSet-2e6c1d2c.js.map +1 -0
  352. package/{topics-9442035c.js → topics-67738aac.js} +1 -1
  353. package/{topics-9442035c.js.map → topics-67738aac.js.map} +1 -1
  354. package/{tslib.es6-e3c44017.js → tslib.es6-b6e567bd.js} +1 -1
  355. package/{tslib.es6-e3c44017.js.map → tslib.es6-b6e567bd.js.map} +1 -1
  356. package/ui/Accordion.js +4 -4
  357. package/ui/AccordionGroup.js +2 -2
  358. package/ui/AdminMessage.js +3 -3
  359. package/ui/Avatar.js +3 -3
  360. package/ui/Badge.js +5 -5
  361. package/ui/Button.js +4 -4
  362. package/ui/ChannelAvatar.js +4 -4
  363. package/ui/ChannelPreview.js +12 -12
  364. package/ui/ChatHeader.js +8 -8
  365. package/ui/Checkbox.js +1 -1
  366. package/ui/ConnectionStatus.js +5 -5
  367. package/ui/ContextMenu.js +5 -5
  368. package/ui/DateSeparator.js +4 -4
  369. package/ui/Dropdown.js +3 -3
  370. package/ui/EmojiReactions.js +7 -7
  371. package/ui/FileMessageItemBody.js +6 -6
  372. package/ui/FileViewer.js +7 -7
  373. package/ui/Icon.js +1 -1
  374. package/ui/IconButton.js +1 -1
  375. package/ui/ImageRenderer.js +1 -1
  376. package/ui/Input.js +3 -3
  377. package/ui/Label.js +3 -3
  378. package/ui/LinkLabel.js +3 -3
  379. package/ui/Loader.js +1 -1
  380. package/ui/MentionUserLabel.js +19 -0
  381. package/ui/MentionUserLabel.js.map +1 -0
  382. package/ui/MessageContent.js +25 -62
  383. package/ui/MessageContent.js.map +1 -1
  384. package/ui/MessageInput.js +4900 -85
  385. package/ui/MessageInput.js.map +1 -1
  386. package/ui/MessageItemMenu.js +7 -7
  387. package/ui/MessageItemReactionMenu.js +5 -5
  388. package/ui/MessageSearchFileItem.js +10 -10
  389. package/ui/MessageSearchItem.js +10 -10
  390. package/ui/MessageStatus.js +57 -0
  391. package/ui/MessageStatus.js.map +1 -0
  392. package/ui/Modal.js +8 -8
  393. package/ui/MutedAvatarOverlay.js +1 -1
  394. package/ui/OGMessageItemBody.js +38 -28
  395. package/ui/OGMessageItemBody.js.map +1 -1
  396. package/ui/OpenChannelAdminMessage.js +4 -4
  397. package/ui/OpenChannelAvatar.js +7 -7
  398. package/ui/OpenchannelConversationHeader.js +7 -7
  399. package/ui/OpenchannelFileMessage.js +14 -14
  400. package/ui/OpenchannelOGMessage.js +14 -14
  401. package/ui/OpenchannelThumbnailMessage.js +13 -13
  402. package/ui/OpenchannelUserMessage.js +14 -14
  403. package/ui/PlaceHolder.js +6 -6
  404. package/ui/QuoteMessage.js +7 -7
  405. package/ui/QuoteMessageInput.js +7 -7
  406. package/ui/QuoteMessageInput.js.map +1 -1
  407. package/ui/ReactionBadge.js +3 -3
  408. package/ui/ReactionButton.js +1 -1
  409. package/ui/SortByRow.js +1 -1
  410. package/ui/TextButton.js +2 -2
  411. package/ui/TextMessageItemBody.js +37 -15
  412. package/ui/TextMessageItemBody.js.map +1 -1
  413. package/ui/ThumbnailMessageItemBody.js +3 -3
  414. package/ui/Tooltip.js +3 -3
  415. package/ui/TooltipWrapper.js +1 -1
  416. package/ui/UnknownMessageItemBody.js +7 -7
  417. package/ui/UserListItem.js +11 -11
  418. package/ui/UserProfile.js +9 -9
  419. package/useSendbirdStateContext.js +1 -1
  420. package/{utils-08c4dbdc.js → utils-04c291d8.js} +1 -1
  421. package/{utils-08c4dbdc.js.map → utils-04c291d8.js.map} +1 -1
  422. package/{utils-af1b9829.js → utils-28de36e9.js} +1 -1
  423. package/{utils-af1b9829.js.map → utils-28de36e9.js.map} +1 -1
  424. package/{utils-c393e880.js → utils-f5c9ef64.js} +1 -1
  425. package/{utils-c393e880.js.map → utils-f5c9ef64.js.map} +1 -1
  426. package/{uuid-b0c93400.js → uuid-0139dc21.js} +1 -1
  427. package/{uuid-b0c93400.js.map → uuid-0139dc21.js.map} +1 -1
  428. package/withSendBird.js +1 -1
  429. package/ChannelListProvider-0b0c2c40.js.map +0 -1
  430. package/ChannelProvider-459e463f.js.map +0 -1
  431. package/cjs/ChannelListProvider-5a152618.js.map +0 -1
  432. package/cjs/ChannelProvider-f1fb0108.js.map +0 -1
  433. package/cjs/index-d4880236.js.map +0 -1
  434. package/cjs/stringSet-aa544ce5.js.map +0 -1
  435. package/index-8c72a94a.js.map +0 -1
  436. package/index.css +0 -4355
  437. package/index.css.map +0 -1
  438. package/stringSet-4f6eaa60.js.map +0 -1
package/App.js CHANGED
@@ -1,4 +1,4 @@
1
- import { a as _slicedToArray } from './_rollupPluginBabelHelpers-20904f21.js';
1
+ import { a as _slicedToArray } from './_rollupPluginBabelHelpers-6bf18550.js';
2
2
  import React__default, { useState } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import Sendbird from './SendbirdProvider.js';
@@ -8,22 +8,22 @@ import ChannelSettings from './ChannelSettings.js';
8
8
  import MessageSearchPannel from './MessageSearch.js';
9
9
  import './withSendBird.js';
10
10
  import 'sendbird';
11
- import './actionTypes-1e3a4074.js';
12
- import './index-8c72a94a.js';
13
- import './tslib.es6-e3c44017.js';
11
+ import './actionTypes-8e320ded.js';
12
+ import './index-e6d0889d.js';
13
+ import './tslib.es6-b6e567bd.js';
14
14
  import 'css-vars-ponyfill';
15
- import './uuid-b0c93400.js';
16
- import './LocalizationContext-e4391013.js';
17
- import './stringSet-4f6eaa60.js';
18
- import './index-6ebf7894.js';
19
- import './ChannelListProvider-0b0c2c40.js';
20
- import './topics-9442035c.js';
21
- import './utils-c393e880.js';
22
- import './UserProfileContext-865db5e6.js';
15
+ import './uuid-0139dc21.js';
16
+ import './LocalizationContext-b970a73c.js';
17
+ import './stringSet-2e6c1d2c.js';
18
+ import './index-6381b534.js';
19
+ import './ChannelListProvider-d602a166.js';
20
+ import './topics-67738aac.js';
21
+ import './utils-f5c9ef64.js';
22
+ import './UserProfileContext-f4ff4291.js';
23
23
  import './useSendbirdStateContext.js';
24
24
  import './ChannelList/components/ChannelListUI.js';
25
25
  import './ChannelList/components/ChannelListHeader.js';
26
- import './index-7a51bd16.js';
26
+ import './index-d0b30cd5.js';
27
27
  import './ui/IconButton.js';
28
28
  import './ui/Avatar.js';
29
29
  import './ui/ImageRenderer.js';
@@ -31,13 +31,13 @@ import './ui/Icon.js';
31
31
  import './ChannelList/components/AddChannel.js';
32
32
  import './CreateChannel.js';
33
33
  import './CreateChannel/components/CreateChannelUI.js';
34
- import './CreateChannelProvider-c617a1bb.js';
34
+ import './CreateChannelProvider-3f3dafed.js';
35
35
  import './sendBirdSelectors.js';
36
36
  import './CreateChannel/components/InviteMembers.js';
37
37
  import './ui/Modal.js';
38
38
  import 'react-dom';
39
- import './index-942c85a6.js';
40
- import './index-acebc2ff.js';
39
+ import './index-d0fe8fe1.js';
40
+ import './index-2dce3a04.js';
41
41
  import './ui/UserListItem.js';
42
42
  import './ui/MutedAvatarOverlay.js';
43
43
  import './ui/Checkbox.js';
@@ -47,29 +47,36 @@ import './ui/SortByRow.js';
47
47
  import './CreateChannel/components/SelectChannelType.js';
48
48
  import './ChannelList/components/ChannelPreview.js';
49
49
  import './ui/ChannelAvatar.js';
50
- import './utils-08c4dbdc.js';
50
+ import './utils-04c291d8.js';
51
51
  import './ui/Badge.js';
52
- import './index-1718324d.js';
53
- import './index-cd21929d.js';
54
- import './index-770d7112.js';
52
+ import './index-a6675155.js';
53
+ import './index-9afb4d01.js';
54
+ import './index-1c2588aa.js';
55
+ import './ui/MentionUserLabel.js';
56
+ import './Channel/components/TypingIndicator.js';
57
+ import './ChannelProvider-cf8fc05a.js';
58
+ import './compareIds-f01e0c3c.js';
59
+ import './const-b6685801.js';
60
+ import './ui/ReactionButton.js';
61
+ import './ui/MessageStatus.js';
62
+ import './ui/Loader.js';
55
63
  import './ChannelList/components/ChannelPreviewAction.js';
56
64
  import './EditUserProfile.js';
57
- import './index-5c2c81bc.js';
65
+ import './index-3bd4a058.js';
58
66
  import './ui/Input.js';
59
67
  import './ui/TextButton.js';
60
- import './color-ee3fc5ee.js';
61
- import './index-e818a8a3.js';
62
- import './ui/Loader.js';
63
- import './ChannelProvider-459e463f.js';
64
- import './compareIds-808956f2.js';
65
- import './ui/ReactionButton.js';
68
+ import './color-38dc84d3.js';
69
+ import './index-b12b270e.js';
66
70
  import './Channel/components/ChannelUI.js';
67
71
  import './ui/ConnectionStatus.js';
68
72
  import './Channel/components/ChannelHeader.js';
69
73
  import './Channel/components/MessageList.js';
70
74
  import './Channel/components/Message.js';
75
+ import './Channel/components/SuggestedMentionList.js';
76
+ import './const-d46f09a1.js';
71
77
  import './ui/DateSeparator.js';
72
78
  import './ui/MessageInput.js';
79
+ import 'stream';
73
80
  import './ui/MessageContent.js';
74
81
  import './ui/MessageItemMenu.js';
75
82
  import './ui/MessageItemReactionMenu.js';
@@ -79,15 +86,15 @@ import './ui/TooltipWrapper.js';
79
86
  import './ui/ReactionBadge.js';
80
87
  import './ui/AdminMessage.js';
81
88
  import './ui/TextMessageItemBody.js';
89
+ import './index-62fd2db7.js';
90
+ import './ui/LinkLabel.js';
82
91
  import './ui/FileMessageItemBody.js';
83
92
  import './ui/ThumbnailMessageItemBody.js';
84
93
  import './ui/OGMessageItemBody.js';
85
- import './ui/LinkLabel.js';
86
94
  import './ui/UnknownMessageItemBody.js';
87
95
  import './ui/QuoteMessage.js';
88
96
  import './Channel/components/FileViewer.js';
89
97
  import './Channel/components/RemoveMessageModal.js';
90
- import './Channel/components/TypingIndicator.js';
91
98
  import './Channel/components/FrozenNotification.js';
92
99
  import './Channel/components/UnreadCount.js';
93
100
  import './Channel/components/MessageInput.js';
@@ -99,9 +106,9 @@ import './ChannelSettings/components/EditDetailsModal.js';
99
106
  import './ChannelSettings/components/AdminPanel.js';
100
107
  import './ui/Accordion.js';
101
108
  import './ui/AccordionGroup.js';
102
- import './context-98ce535c.js';
109
+ import './context-b5168bd0.js';
103
110
  import './ChannelSettings/components/UserListItem.js';
104
- import './MemberList-6655cba0.js';
111
+ import './MemberList-9d29bee4.js';
105
112
  import './ChannelSettings/components/LeaveChannel.js';
106
113
  import './ChannelSettings/components/UserPanel.js';
107
114
  import './MessageSearch/components/MessageSearchUI.js';
@@ -121,6 +128,7 @@ function App(props) {
121
128
  _props$config = props.config,
122
129
  config = _props$config === void 0 ? {} : _props$config,
123
130
  useReaction = props.useReaction,
131
+ isMentionEnabled = props.isMentionEnabled,
124
132
  replyType = props.replyType,
125
133
  useMessageGrouping = props.useMessageGrouping,
126
134
  colorSet = props.colorSet,
@@ -131,7 +139,9 @@ function App(props) {
131
139
  showSearchIcon = props.showSearchIcon,
132
140
  onProfileEditSuccess = props.onProfileEditSuccess,
133
141
  imageCompression = props.imageCompression,
134
- disableAutoSelect = props.disableAutoSelect;
142
+ disableAutoSelect = props.disableAutoSelect,
143
+ isTypingIndicatorEnabledOnChannelList = props.isTypingIndicatorEnabledOnChannelList,
144
+ isMessageReceiptStatusEnabledOnChannelList = props.isMessageReceiptStatusEnabledOnChannelList;
135
145
 
136
146
  var _useState = useState(null),
137
147
  _useState2 = _slicedToArray(_useState, 2),
@@ -173,7 +183,10 @@ function App(props) {
173
183
  disableUserProfile: disableUserProfile,
174
184
  renderUserProfile: renderUserProfile,
175
185
  imageCompression: imageCompression,
176
- useReaction: useReaction
186
+ useReaction: useReaction,
187
+ isMentionEnabled: isMentionEnabled,
188
+ isTypingIndicatorEnabledOnChannelList: isTypingIndicatorEnabledOnChannelList,
189
+ isMessageReceiptStatusEnabledOnChannelList: isMessageReceiptStatusEnabledOnChannelList
177
190
  }, /*#__PURE__*/React__default.createElement("div", {
178
191
  className: "sendbird-app__wrap"
179
192
  }, /*#__PURE__*/React__default.createElement("div", {
@@ -266,7 +279,10 @@ App.propTypes = {
266
279
  resizingWidth: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
267
280
  resizingHeight: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
268
281
  }),
269
- disableAutoSelect: PropTypes.bool
282
+ disableAutoSelect: PropTypes.bool,
283
+ isMentionEnabled: PropTypes.bool,
284
+ isTypingIndicatorEnabledOnChannelList: PropTypes.bool,
285
+ isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool
270
286
  };
271
287
  App.defaultProps = {
272
288
  accessToken: '',
@@ -282,12 +298,15 @@ App.defaultProps = {
282
298
  renderUserProfile: null,
283
299
  config: {},
284
300
  useReaction: true,
301
+ isMentionEnabled: false,
285
302
  replyType: 'NONE',
286
303
  useMessageGrouping: true,
287
304
  stringSet: null,
288
305
  colorSet: null,
289
306
  imageCompression: {},
290
- disableAutoSelect: false
307
+ disableAutoSelect: false,
308
+ isTypingIndicatorEnabledOnChannelList: false,
309
+ isMessageReceiptStatusEnabledOnChannelList: false
291
310
  };
292
311
 
293
312
  export { App as default };
package/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sources":["../src/smart-components/App/index.jsx"],"sourcesContent":["/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n useReaction,\n replyType,\n useMessageGrouping,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n } = props;\n const [currentChannelUrl, setCurrentChannelUrl] = useState(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState(null);\n const [startingPoint, setStartingPoint] = useState(null);\n\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n useReaction={useReaction}\n >\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel && channel.url) {\n setCurrentChannelUrl(channel.url);\n } else {\n setCurrentChannelUrl('');\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannelUrl}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowSearch(!showSearch);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n useReaction={useReaction}\n replyType={replyType}\n useMessageGrouping={useMessageGrouping}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannelUrl}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannelUrl}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n </div>\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n useReaction: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n useMessageGrouping: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n useReaction: true,\n replyType: 'NONE',\n useMessageGrouping: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n};\n"],"names":["App","props","appId","userId","accessToken","theme","userListQuery","nickname","profileUrl","dateLocale","config","useReaction","replyType","useMessageGrouping","colorSet","stringSet","allowProfileEdit","disableUserProfile","renderUserProfile","showSearchIcon","onProfileEditSuccess","imageCompression","disableAutoSelect","useState","currentChannelUrl","setCurrentChannelUrl","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","React","channel","url","message","messageId","setTimeout","createdAt","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sources":["../src/smart-components/App/index.jsx"],"sourcesContent":["/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n useReaction,\n isMentionEnabled,\n replyType,\n useMessageGrouping,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n isTypingIndicatorEnabledOnChannelList,\n isMessageReceiptStatusEnabledOnChannelList,\n } = props;\n const [currentChannelUrl, setCurrentChannelUrl] = useState(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState(null);\n const [startingPoint, setStartingPoint] = useState(null);\n\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n useReaction={useReaction}\n isMentionEnabled={isMentionEnabled}\n isTypingIndicatorEnabledOnChannelList={isTypingIndicatorEnabledOnChannelList}\n isMessageReceiptStatusEnabledOnChannelList={isMessageReceiptStatusEnabledOnChannelList}\n >\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel && channel.url) {\n setCurrentChannelUrl(channel.url);\n } else {\n setCurrentChannelUrl('');\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannelUrl}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowSearch(!showSearch);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n useReaction={useReaction}\n replyType={replyType}\n useMessageGrouping={useMessageGrouping}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannelUrl}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannelUrl}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n </div>\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n useReaction: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n useMessageGrouping: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n isTypingIndicatorEnabledOnChannelList: PropTypes.bool,\n isMessageReceiptStatusEnabledOnChannelList: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n useReaction: true,\n isMentionEnabled: false,\n replyType: 'NONE',\n useMessageGrouping: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n isTypingIndicatorEnabledOnChannelList: false,\n isMessageReceiptStatusEnabledOnChannelList: false,\n};\n"],"names":["App","props","appId","userId","accessToken","theme","userListQuery","nickname","profileUrl","dateLocale","config","useReaction","isMentionEnabled","replyType","useMessageGrouping","colorSet","stringSet","allowProfileEdit","disableUserProfile","renderUserProfile","showSearchIcon","onProfileEditSuccess","imageCompression","disableAutoSelect","isTypingIndicatorEnabledOnChannelList","isMessageReceiptStatusEnabledOnChannelList","useState","currentChannelUrl","setCurrentChannelUrl","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","React","channel","url","message","messageId","setTimeout","createdAt","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
@@ -1,26 +1,27 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../../index-7a51bd16.js';
2
+ import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../../index-d0b30cd5.js';
3
3
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
4
4
  import IconButton from '../../ui/IconButton.js';
5
5
  import ChannelAvatar from '../../ui/ChannelAvatar.js';
6
- import { a as LocalizationContext } from '../../LocalizationContext-e4391013.js';
6
+ import { a as LocalizationContext } from '../../LocalizationContext-b970a73c.js';
7
7
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
8
- import { u as useChannel } from '../../ChannelProvider-459e463f.js';
9
- import '../../_rollupPluginBabelHelpers-20904f21.js';
8
+ import { u as useChannel } from '../../ChannelProvider-cf8fc05a.js';
9
+ import '../../_rollupPluginBabelHelpers-6bf18550.js';
10
10
  import 'prop-types';
11
- import '../../stringSet-4f6eaa60.js';
11
+ import '../../stringSet-2e6c1d2c.js';
12
12
  import '../../ui/Avatar.js';
13
- import '../../tslib.es6-e3c44017.js';
13
+ import '../../tslib.es6-b6e567bd.js';
14
14
  import '../../ui/ImageRenderer.js';
15
- import '../../uuid-b0c93400.js';
16
- import '../../utils-08c4dbdc.js';
17
- import '../../index-6ebf7894.js';
15
+ import '../../uuid-0139dc21.js';
16
+ import '../../utils-04c291d8.js';
17
+ import '../../index-6381b534.js';
18
18
  import '../../withSendBird.js';
19
- import '../../UserProfileContext-865db5e6.js';
20
- import '../../index-770d7112.js';
21
- import '../../topics-9442035c.js';
22
- import '../../index-8c72a94a.js';
23
- import '../../compareIds-808956f2.js';
19
+ import '../../UserProfileContext-f4ff4291.js';
20
+ import '../../index-1c2588aa.js';
21
+ import '../../topics-67738aac.js';
22
+ import '../../index-e6d0889d.js';
23
+ import '../../compareIds-f01e0c3c.js';
24
+ import '../../const-b6685801.js';
24
25
  import '../../ui/ContextMenu.js';
25
26
  import 'react-dom';
26
27
  import '../../ui/SortByRow.js';
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelHeader.js","sources":["../../../src/smart-components/Channel/components/ChannelHeader/utils.ts","../../../src/smart-components/Channel/components/ChannelHeader/index.tsx"],"sourcesContent":["import SendBird from 'sendbird';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (\n channel: SendBird.GroupChannel,\n currentUserId: string,\n stringSet: { [label: string]: string }\n ): string => {\n const LABEL_STRING_SET: { [label: string]: string } = stringSet || LabelStringSet;\n if (!channel || (!channel.name && !channel.members)) {\n return LABEL_STRING_SET.NO_TITLE;\n }\n if (channel.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n\n if (channel.members.length === 1) {\n return LABEL_STRING_SET.NO_MEMBERS;\n }\n\n return channel.members\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || LABEL_STRING_SET.NO_NAME))\n .join(', ');\n};\n","import './channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport * as utils from './utils';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport ChannelAvatar from '../../../../ui/ChannelAvatar/index';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\nconst ChatHeader: React.FC = () => {\n const globalStore = useSendbirdStateContext();\n const userId = globalStore?.config?.userId;\n const theme = globalStore?.config?.theme;\n\n const channelStore = useChannel();\n const {\n currentGroupChannel,\n showSearchIcon,\n onSearchClick,\n onChatHeaderActionClick,\n } = channelStore;\n const subTitle = (currentGroupChannel?.members\n && currentGroupChannel?.members?.length !== 2);\n const isMuted = currentGroupChannel?.myMutedState === \"muted\";\n\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-chat-header\">\n <div className=\"sendbird-chat-header__left\">\n <ChannelAvatar\n theme={theme}\n channel={currentGroupChannel}\n userId={userId}\n height={32}\n width={32}\n />\n <Label\n className=\"sendbird-chat-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(currentGroupChannel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-chat-header__left__subtitle\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle}\n </Label>\n </div>\n <div className=\"sendbird-chat-header__right\">\n {\n ((typeof isMuted === 'string' && isMuted === 'true') || (typeof isMuted === 'boolean' && isMuted))\n && (\n <Icon\n className=\"sendbird-chat-header__right__mute\"\n type={IconTypes.NOTIFICATIONS_OFF_FILLED}\n width=\"24px\"\n height=\"24px\"\n />\n )\n }\n {\n showSearchIcon && (\n <IconButton\n className=\"sendbird-chat-header__right__search\"\n width=\"32px\"\n height=\"32px\"\n onClick={onSearchClick}\n >\n <Icon\n type={IconTypes.SEARCH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n }\n <IconButton\n className=\"sendbird-chat-header__right__info\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={IconTypes.INFO}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n\nexport default ChatHeader;\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LABEL_STRING_SET","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","_a","userId","map","nickname","NO_NAME","join","ChatHeader","globalStore","useSendbirdStateContext","config","theme","channelStore","useChannel","currentGroupChannel","showSearchIcon","onSearchClick","onChatHeaderActionClick","subTitle","isMuted","myMutedState","useContext","LocalizationContext","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","utils","BODY_1","ONBACKGROUND_2","IconTypes","NOTIFICATIONS_OFF_FILLED","SEARCH","IconColors","PRIMARY","INFO"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelHeader.js","sources":["../../../src/smart-components/Channel/components/ChannelHeader/utils.ts","../../../src/smart-components/Channel/components/ChannelHeader/index.tsx"],"sourcesContent":["import SendBird from 'sendbird';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (\n channel: SendBird.GroupChannel,\n currentUserId: string,\n stringSet: { [label: string]: string }\n ): string => {\n const LABEL_STRING_SET: { [label: string]: string } = stringSet || LabelStringSet;\n if (!channel || (!channel.name && !channel.members)) {\n return LABEL_STRING_SET.NO_TITLE;\n }\n if (channel.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n\n if (channel.members.length === 1) {\n return LABEL_STRING_SET.NO_MEMBERS;\n }\n\n return channel.members\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || LABEL_STRING_SET.NO_NAME))\n .join(', ');\n};\n","import './channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport * as utils from './utils';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport ChannelAvatar from '../../../../ui/ChannelAvatar/index';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\nconst ChatHeader: React.FC = () => {\n const globalStore = useSendbirdStateContext();\n const userId = globalStore?.config?.userId;\n const theme = globalStore?.config?.theme;\n\n const channelStore = useChannel();\n const {\n currentGroupChannel,\n showSearchIcon,\n onSearchClick,\n onChatHeaderActionClick,\n } = channelStore;\n const subTitle = (currentGroupChannel?.members\n && currentGroupChannel?.members?.length !== 2);\n const isMuted = currentGroupChannel?.myMutedState === \"muted\";\n\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-chat-header\">\n <div className=\"sendbird-chat-header__left\">\n <ChannelAvatar\n theme={theme}\n channel={currentGroupChannel}\n userId={userId}\n height={32}\n width={32}\n />\n <Label\n className=\"sendbird-chat-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(currentGroupChannel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-chat-header__left__subtitle\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle}\n </Label>\n </div>\n <div className=\"sendbird-chat-header__right\">\n {\n ((typeof isMuted === 'string' && isMuted === 'true') || (typeof isMuted === 'boolean' && isMuted))\n && (\n <Icon\n className=\"sendbird-chat-header__right__mute\"\n type={IconTypes.NOTIFICATIONS_OFF_FILLED}\n width=\"24px\"\n height=\"24px\"\n />\n )\n }\n {\n showSearchIcon && (\n <IconButton\n className=\"sendbird-chat-header__right__search\"\n width=\"32px\"\n height=\"32px\"\n onClick={onSearchClick}\n >\n <Icon\n type={IconTypes.SEARCH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n }\n <IconButton\n className=\"sendbird-chat-header__right__info\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={IconTypes.INFO}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n\nexport default ChatHeader;\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LABEL_STRING_SET","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","_a","userId","map","nickname","NO_NAME","join","ChatHeader","globalStore","useSendbirdStateContext","config","theme","channelStore","useChannel","currentGroupChannel","showSearchIcon","onSearchClick","onChatHeaderActionClick","subTitle","isMuted","myMutedState","useContext","LocalizationContext","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","utils","BODY_1","ONBACKGROUND_2","IconTypes","NOTIFICATIONS_OFF_FILLED","SEARCH","IconColors","PRIMARY","INFO"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import React__default, { useState, useEffect } from 'react';
2
2
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
3
- import { u as useChannel, M as MARK_AS_READ } from '../../ChannelProvider-459e463f.js';
4
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-e818a8a3.js';
3
+ import { u as useChannel, M as MARK_AS_READ } from '../../ChannelProvider-cf8fc05a.js';
4
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-b12b270e.js';
5
5
  import ConnectionStatus from '../../ui/ConnectionStatus.js';
6
6
  import ChatHeader from './ChannelHeader.js';
7
7
  import MessageList from './MessageList.js';
@@ -10,39 +10,45 @@ import FrozenNotification from './FrozenNotification.js';
10
10
  import UnreadCount from './UnreadCount.js';
11
11
  import MessageInputWrapper from './MessageInput.js';
12
12
  import '../../withSendBird.js';
13
- import '../../_rollupPluginBabelHelpers-20904f21.js';
14
- import '../../UserProfileContext-865db5e6.js';
13
+ import '../../_rollupPluginBabelHelpers-6bf18550.js';
14
+ import '../../UserProfileContext-f4ff4291.js';
15
15
  import 'prop-types';
16
- import '../../index-770d7112.js';
17
- import '../../index-6ebf7894.js';
18
- import '../../topics-9442035c.js';
19
- import '../../index-8c72a94a.js';
20
- import '../../tslib.es6-e3c44017.js';
21
- import '../../compareIds-808956f2.js';
22
- import '../../uuid-b0c93400.js';
16
+ import '../../index-1c2588aa.js';
17
+ import '../../index-6381b534.js';
18
+ import '../../topics-67738aac.js';
19
+ import '../../index-e6d0889d.js';
20
+ import '../../tslib.es6-b6e567bd.js';
21
+ import '../../compareIds-f01e0c3c.js';
22
+ import '../../const-b6685801.js';
23
+ import '../../uuid-0139dc21.js';
23
24
  import '../../ui/ContextMenu.js';
24
- import '../../index-7a51bd16.js';
25
- import '../../stringSet-4f6eaa60.js';
25
+ import '../../index-d0b30cd5.js';
26
+ import '../../stringSet-2e6c1d2c.js';
26
27
  import 'react-dom';
27
28
  import '../../ui/SortByRow.js';
28
29
  import '../../ui/ReactionButton.js';
29
30
  import '../../ui/ImageRenderer.js';
30
31
  import '../../ui/Icon.js';
31
32
  import '../../ui/Loader.js';
32
- import '../../LocalizationContext-e4391013.js';
33
+ import '../../LocalizationContext-b970a73c.js';
33
34
  import '../../ui/IconButton.js';
34
35
  import '../../ui/ChannelAvatar.js';
35
36
  import '../../ui/Avatar.js';
36
- import '../../utils-08c4dbdc.js';
37
- import '../../index-cd21929d.js';
37
+ import '../../utils-04c291d8.js';
38
+ import '../../index-9afb4d01.js';
38
39
  import './Message.js';
40
+ import './SuggestedMentionList.js';
41
+ import '../../const-d46f09a1.js';
39
42
  import '../../ui/DateSeparator.js';
40
- import '../../color-ee3fc5ee.js';
43
+ import '../../color-38dc84d3.js';
41
44
  import '../../ui/MessageInput.js';
42
- import '../../index-acebc2ff.js';
45
+ import 'stream';
46
+ import '../../index-2dce3a04.js';
47
+ import '../../ui/MentionUserLabel.js';
43
48
  import '../../ui/MessageContent.js';
44
49
  import '../../ui/UserProfile.js';
45
50
  import '../../sendBirdSelectors.js';
51
+ import '../../ui/MessageStatus.js';
46
52
  import '../../ui/MessageItemMenu.js';
47
53
  import '../../ui/MessageItemReactionMenu.js';
48
54
  import '../../ui/EmojiReactions.js';
@@ -51,18 +57,19 @@ import '../../ui/TooltipWrapper.js';
51
57
  import '../../ui/ReactionBadge.js';
52
58
  import '../../ui/AdminMessage.js';
53
59
  import '../../ui/TextMessageItemBody.js';
60
+ import '../../index-62fd2db7.js';
61
+ import '../../ui/LinkLabel.js';
54
62
  import '../../ui/FileMessageItemBody.js';
55
63
  import '../../ui/TextButton.js';
56
64
  import '../../ui/ThumbnailMessageItemBody.js';
57
65
  import '../../ui/OGMessageItemBody.js';
58
- import '../../ui/LinkLabel.js';
59
66
  import '../../ui/UnknownMessageItemBody.js';
60
67
  import '../../ui/QuoteMessage.js';
61
68
  import './FileViewer.js';
62
- import '../../index-942c85a6.js';
69
+ import '../../index-d0fe8fe1.js';
63
70
  import './RemoveMessageModal.js';
64
71
  import '../../ui/Modal.js';
65
- import '../../utils-c393e880.js';
72
+ import '../../utils-f5c9ef64.js';
66
73
  import '../../ui/QuoteMessageInput.js';
67
74
 
68
75
  var ChannelUI = function ChannelUI(_a) {
@@ -75,7 +82,7 @@ var ChannelUI = function ChannelUI(_a) {
75
82
  renderMessage = _a.renderMessage,
76
83
  renderMessageInput = _a.renderMessageInput,
77
84
  renderTypingIndicator = _a.renderTypingIndicator,
78
- renderCustomSeperator = _a.renderCustomSeperator;
85
+ renderCustomSeparator = _a.renderCustomSeparator;
79
86
 
80
87
  var _f = useChannel(),
81
88
  currentGroupChannel = _f.currentGroupChannel,
@@ -160,7 +167,7 @@ var ChannelUI = function ChannelUI(_a) {
160
167
  })) : /*#__PURE__*/React__default.createElement(MessageList, {
161
168
  renderMessage: renderMessage,
162
169
  renderPlaceholderEmpty: renderPlaceholderEmpty,
163
- renderCustomSeperator: renderCustomSeperator
170
+ renderCustomSeparator: renderCustomSeparator
164
171
  }), /*#__PURE__*/React__default.createElement("div", {
165
172
  className: "sendbird-conversation__footer"
166
173
  }, (renderMessageInput === null || renderMessageInput === void 0 ? void 0 : renderMessageInput()) || /*#__PURE__*/React__default.createElement(MessageInputWrapper, null), /*#__PURE__*/React__default.createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelUI.js","sources":["../../../src/smart-components/Channel/components/ChannelUI/index.tsx"],"sourcesContent":["import './channel-ui.scss';\n\nimport React, { useEffect, useState } from 'react';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport { useChannel } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport ConnectionStatus from '../../../../ui/ConnectionStatus';\nimport ChannelHeader from '../ChannelHeader';\nimport MessageList from '../MessageList';\nimport TypingIndicator from '../TypingIndicator';\nimport FrozenNotification from '../FrozenNotification';\nimport UnreadCount from '../UnreadCount';\nimport MessageInputWrapper from '../MessageInput';\nimport { RenderMessageProps } from '../../../../types';\nimport * as messageActionTypes from '../../context/dux/actionTypes';\n\nexport interface ChannelUIProps {\n renderPlaceholderLoader?: () => React.ReactNode;\n renderPlaceholderInvalid?: () => React.ReactNode;\n renderPlaceholderEmpty?: () => React.ReactNode;\n renderChannelHeader?: () => React.ReactNode;\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n renderMessageInput?: () => React.ReactNode;\n renderTypingIndicator?: () => React.ReactNode;\n renderCustomSeperator?: () => React.ReactNode;\n}\n\nconst ChannelUI: React.FC<ChannelUIProps> = ({\n renderPlaceholderLoader,\n renderPlaceholderInvalid,\n renderPlaceholderEmpty,\n renderChannelHeader,\n renderMessage,\n renderMessageInput,\n renderTypingIndicator,\n renderCustomSeperator,\n}: ChannelUIProps) => {\n const {\n currentGroupChannel,\n channelUrl,\n isInvalid,\n unreadSince,\n loading,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n scrollRef,\n messagesDispatcher,\n } = useChannel();\n const [unreadCount, setUnreadCount] = useState(0);\n useEffect(() => {\n setUnreadCount(currentGroupChannel.unreadMessageCount);\n }, [currentGroupChannel?.unreadMessageCount]);\n\n const globalStore = useSendbirdStateContext();\n const sdkError = globalStore?.stores?.sdkStore?.error;\n const logger = globalStore?.config?.logger;\n const isOnline = globalStore?.config?.isOnline;\n\n if (!channelUrl) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n }\n </div>);\n }\n if (isInvalid) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n );\n }\n if (sdkError) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={() => {\n logger.info('Channel: reconnecting');\n // reconnect();\n }}\n />\n )\n }\n </div>\n );\n }\n return (\n <div className='sendbird-conversation'>\n {\n renderChannelHeader?.() || (\n <ChannelHeader />\n )\n }\n {\n currentGroupChannel?.isFrozen && (\n <FrozenNotification />\n )\n }\n {\n unreadCount > 0 && (\n <UnreadCount\n count={unreadCount}\n time={unreadSince}\n onClick={() => {\n setUnreadCount(0);\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n currentGroupChannel?.markAsRead();\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n setInitialTimeStamp(null);\n setAnimatedMessageId(null);\n setHighLightedMessageId(null);\n }}\n />\n )\n }\n {\n loading\n ? (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>\n ) : (\n <MessageList\n renderMessage={renderMessage}\n renderPlaceholderEmpty={renderPlaceholderEmpty}\n renderCustomSeperator={renderCustomSeperator}\n />\n )\n }\n <div className=\"sendbird-conversation__footer\">\n {\n renderMessageInput?.() || (\n <MessageInputWrapper />\n )\n }\n <div className=\"sendbird-conversation__footer__typing-indicator\">\n {\n renderTypingIndicator?.() || (\n <TypingIndicator />\n )\n }\n {\n !isOnline && (\n <ConnectionStatus />\n )\n }\n </div>\n </div>\n </div>\n );\n}\n\nexport default ChannelUI;\n"],"names":["ChannelUI","_a","renderPlaceholderLoader","renderPlaceholderInvalid","renderPlaceholderEmpty","renderChannelHeader","renderMessage","renderMessageInput","renderTypingIndicator","renderCustomSeperator","_f","useChannel","currentGroupChannel","channelUrl","isInvalid","unreadSince","loading","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","scrollRef","messagesDispatcher","_g","useState","unreadCount","setUnreadCount","useEffect","unreadMessageCount","globalStore","useSendbirdStateContext","sdkError","stores","sdkStore","error","logger","config","isOnline","React","PlaceHolderTypes","NO_CHANNELS","WRONG","info","ChannelHeader","isFrozen","current","scrollTop","scrollHeight","offsetHeight","markAsRead","type","messageActionTypes","payload","channel","LOADING"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelUI.js","sources":["../../../src/smart-components/Channel/components/ChannelUI/index.tsx"],"sourcesContent":["import './channel-ui.scss';\n\nimport React, { useEffect, useState } from 'react';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport { useChannel } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport ConnectionStatus from '../../../../ui/ConnectionStatus';\nimport ChannelHeader from '../ChannelHeader';\nimport MessageList from '../MessageList';\nimport TypingIndicator from '../TypingIndicator';\nimport FrozenNotification from '../FrozenNotification';\nimport UnreadCount from '../UnreadCount';\nimport MessageInputWrapper from '../MessageInput';\nimport { RenderMessageProps } from '../../../../types';\nimport * as messageActionTypes from '../../context/dux/actionTypes';\n\nexport interface ChannelUIProps {\n renderPlaceholderLoader?: () => React.ReactNode;\n renderPlaceholderInvalid?: () => React.ReactNode;\n renderPlaceholderEmpty?: () => React.ReactNode;\n renderChannelHeader?: () => React.ReactNode;\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n renderMessageInput?: () => React.ReactNode;\n renderTypingIndicator?: () => React.ReactNode;\n renderCustomSeparator?: () => React.ReactNode;\n}\n\nconst ChannelUI: React.FC<ChannelUIProps> = ({\n renderPlaceholderLoader,\n renderPlaceholderInvalid,\n renderPlaceholderEmpty,\n renderChannelHeader,\n renderMessage,\n renderMessageInput,\n renderTypingIndicator,\n renderCustomSeparator,\n}: ChannelUIProps) => {\n const {\n currentGroupChannel,\n channelUrl,\n isInvalid,\n unreadSince,\n loading,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n scrollRef,\n messagesDispatcher,\n } = useChannel();\n const [unreadCount, setUnreadCount] = useState(0);\n useEffect(() => {\n setUnreadCount(currentGroupChannel.unreadMessageCount);\n }, [currentGroupChannel?.unreadMessageCount]);\n\n const globalStore = useSendbirdStateContext();\n const sdkError = globalStore?.stores?.sdkStore?.error;\n const logger = globalStore?.config?.logger;\n const isOnline = globalStore?.config?.isOnline;\n\n if (!channelUrl) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n }\n </div>);\n }\n if (isInvalid) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n );\n }\n if (sdkError) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={() => {\n logger.info('Channel: reconnecting');\n // reconnect();\n }}\n />\n )\n }\n </div>\n );\n }\n return (\n <div className='sendbird-conversation'>\n {\n renderChannelHeader?.() || (\n <ChannelHeader />\n )\n }\n {\n currentGroupChannel?.isFrozen && (\n <FrozenNotification />\n )\n }\n {\n unreadCount > 0 && (\n <UnreadCount\n count={unreadCount}\n time={unreadSince}\n onClick={() => {\n setUnreadCount(0);\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n currentGroupChannel?.markAsRead();\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n setInitialTimeStamp(null);\n setAnimatedMessageId(null);\n setHighLightedMessageId(null);\n }}\n />\n )\n }\n {\n loading\n ? (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>\n ) : (\n <MessageList\n renderMessage={renderMessage}\n renderPlaceholderEmpty={renderPlaceholderEmpty}\n renderCustomSeparator={renderCustomSeparator}\n />\n )\n }\n <div className=\"sendbird-conversation__footer\">\n {\n renderMessageInput?.() || (\n <MessageInputWrapper />\n )\n }\n <div className=\"sendbird-conversation__footer__typing-indicator\">\n {\n renderTypingIndicator?.() || (\n <TypingIndicator />\n )\n }\n {\n !isOnline && (\n <ConnectionStatus />\n )\n }\n </div>\n </div>\n </div>\n );\n}\n\nexport default ChannelUI;\n"],"names":["ChannelUI","_a","renderPlaceholderLoader","renderPlaceholderInvalid","renderPlaceholderEmpty","renderChannelHeader","renderMessage","renderMessageInput","renderTypingIndicator","renderCustomSeparator","_f","useChannel","currentGroupChannel","channelUrl","isInvalid","unreadSince","loading","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","scrollRef","messagesDispatcher","_g","useState","unreadCount","setUnreadCount","useEffect","unreadMessageCount","globalStore","useSendbirdStateContext","sdkError","stores","sdkStore","error","logger","config","isOnline","React","PlaceHolderTypes","NO_CHANNELS","WRONG","info","ChannelHeader","isFrozen","current","scrollTop","scrollHeight","offsetHeight","markAsRead","type","messageActionTypes","payload","channel","LOADING"],"mappings":"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"}
@@ -1,24 +1,25 @@
1
1
  import React__default from 'react';
2
2
  import { createPortal } from 'react-dom';
3
3
  import Avatar from '../../ui/Avatar.js';
4
- import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-7a51bd16.js';
4
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-d0b30cd5.js';
5
5
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
6
- import { M as MODAL_ROOT } from '../../index-942c85a6.js';
7
- import { w as isSupportedFileView, x as isVideo, y as isImage } from '../../index-8c72a94a.js';
6
+ import { M as MODAL_ROOT } from '../../index-d0fe8fe1.js';
7
+ import { y as isSupportedFileView, z as isVideo, A as isImage } from '../../index-e6d0889d.js';
8
8
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
9
- import { u as useChannel } from '../../ChannelProvider-459e463f.js';
10
- import '../../tslib.es6-e3c44017.js';
9
+ import { u as useChannel } from '../../ChannelProvider-cf8fc05a.js';
10
+ import '../../tslib.es6-b6e567bd.js';
11
11
  import '../../ui/ImageRenderer.js';
12
- import '../../_rollupPluginBabelHelpers-20904f21.js';
12
+ import '../../_rollupPluginBabelHelpers-6bf18550.js';
13
13
  import 'prop-types';
14
- import '../../uuid-b0c93400.js';
15
- import '../../stringSet-4f6eaa60.js';
14
+ import '../../uuid-0139dc21.js';
15
+ import '../../stringSet-2e6c1d2c.js';
16
16
  import '../../withSendBird.js';
17
- import '../../UserProfileContext-865db5e6.js';
18
- import '../../index-770d7112.js';
19
- import '../../index-6ebf7894.js';
20
- import '../../topics-9442035c.js';
21
- import '../../compareIds-808956f2.js';
17
+ import '../../UserProfileContext-f4ff4291.js';
18
+ import '../../index-1c2588aa.js';
19
+ import '../../index-6381b534.js';
20
+ import '../../topics-67738aac.js';
21
+ import '../../compareIds-f01e0c3c.js';
22
+ import '../../const-b6685801.js';
22
23
  import '../../ui/ContextMenu.js';
23
24
  import '../../ui/SortByRow.js';
24
25
  import '../../ui/ReactionButton.js';
@@ -1 +1 @@
1
- {"version":3,"file":"FileViewer.js","sources":["../../../src/smart-components/Channel/components/FileViewer/index.tsx"],"sourcesContent":["import React from 'react';\nimport { createPortal } from 'react-dom';\n\nimport './file-viewer.scss';\nimport Avatar from '../../../../ui/Avatar';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport { MODAL_ROOT } from '../../../../hooks/useModal/ModalRoot';\n\nimport { isImage, isVideo, isSupportedFileView } from '../../../../utils';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\ntype FileViewerUIProps = {\n profileUrl: string;\n nickname: string;\n // file\n name: string;\n type: string;\n url: string;\n // others\n isByMe: boolean;\n onCancel: () => void;\n onDelete: () => void;\n disableDelete: boolean;\n};\n\nexport const FileViewerComponent: React.FC<FileViewerUIProps> = ({\n // sender\n profileUrl,\n nickname,\n // file\n name,\n type,\n url,\n // others\n isByMe,\n onCancel,\n onDelete,\n disableDelete,\n}: FileViewerUIProps) => (\n <div className=\"sendbird-fileviewer\">\n <div className=\"sendbird-fileviewer__header\">\n <div className=\"sendbird-fileviewer__header__left\">\n <div className=\"sendbird-fileviewer__header__left__avatar\">\n <Avatar height=\"32px\" width=\"32px\" src={profileUrl} />\n </div>\n <Label\n className=\"sendbird-fileviewer__header__left__filename\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {name}\n </Label>\n <Label\n className=\"sendbird-fileviewer__header__left__sender-name\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {nickname}\n </Label>\n </div>\n <div className=\"sendbird-fileviewer__header__right\">\n {\n isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__header__right__actions\">\n <a\n className=\"sendbird-fileviewer__header__right__actions__download\"\n rel=\"noopener noreferrer\"\n href={url}\n target=\"_blank\"\n >\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n />\n </a>\n {\n onDelete && isByMe && (\n <div className=\"sendbird-fileviewer__header__right__actions__delete\">\n <Icon\n className={disableDelete ? 'disabled' : ''}\n type={IconTypes.DELETE}\n fillColor={disableDelete ? IconColors.GRAY : IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={() => { if (!disableDelete) { onDelete(); } }}\n />\n </div>\n )\n }\n </div>\n )\n }\n <div className=\"sendbird-fileviewer__header__right__actions__close\">\n <Icon\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={onCancel}\n />\n </div>\n </div>\n </div>\n <div className=\"sendbird-fileviewer__content\">\n {isVideo(type) && (\n <video controls className=\"sendbird-fileviewer__content__video\">\n <source src={url} type={type} />\n </video>\n )}\n {\n isImage(type) && (\n <img\n src={url}\n alt={name}\n className=\"sendbird-fileviewer__content__img\"\n />\n )\n }\n {\n !isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__content__unsupported\">\n <Label type={LabelTypography.H_1} color={LabelColors.ONBACKGROUND_1}>\n Unsupoprted message\n </Label>\n </div>\n )\n }\n </div>\n </div>\n);\n\ntype FileViewerProps = {\n onCancel:() => void;\n message: SendbirdUIKit.ClientFileMessage;\n};\n\nconst FileViewer: React.FC<FileViewerProps> = ({ onCancel, message }: FileViewerProps) => {\n const { deleteMessage } = useChannel();\n const {\n sender,\n type,\n url,\n name = '',\n threadInfo,\n } = message;\n const user = useSendbirdStateContext()?.config?.userId;\n const isByMe = user === message?.sender?.userId;\n const disableDelete = threadInfo?.replyCount > 0;\n const { profileUrl, nickname = '' } = sender;\n return createPortal(\n (\n <FileViewerComponent\n profileUrl={profileUrl}\n nickname={nickname}\n type={type}\n url={url}\n name={name}\n onCancel={onCancel}\n onDelete={() => {\n deleteMessage(message).then(() => {\n onCancel();\n });\n }}\n isByMe={isByMe}\n disableDelete={disableDelete}\n />\n ),\n document.getElementById(MODAL_ROOT),\n );\n}\n\nexport default FileViewer;\n"],"names":["FileViewerComponent","_a","profileUrl","nickname","name","type","url","isByMe","onCancel","onDelete","disableDelete","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","BODY_1","ONBACKGROUND_2","isSupportedFileView","IconTypes","DOWNLOAD","IconColors","ON_BACKGROUND_1","DELETE","GRAY","CLOSE","isVideo","isImage","H_1","FileViewer","message","deleteMessage","useChannel","sender","_e","threadInfo","user","useSendbirdStateContext","config","userId","replyCount","_f","createPortal","then","document","getElementById","MODAL_ROOT"],"mappings":"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"}
1
+ {"version":3,"file":"FileViewer.js","sources":["../../../src/smart-components/Channel/components/FileViewer/index.tsx"],"sourcesContent":["import React from 'react';\nimport { createPortal } from 'react-dom';\n\nimport './file-viewer.scss';\nimport Avatar from '../../../../ui/Avatar';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport { MODAL_ROOT } from '../../../../hooks/useModal/ModalRoot';\n\nimport { isImage, isVideo, isSupportedFileView } from '../../../../utils';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\ntype FileViewerUIProps = {\n profileUrl: string;\n nickname: string;\n // file\n name: string;\n type: string;\n url: string;\n // others\n isByMe: boolean;\n onCancel: () => void;\n onDelete: () => void;\n disableDelete: boolean;\n};\n\nexport const FileViewerComponent: React.FC<FileViewerUIProps> = ({\n // sender\n profileUrl,\n nickname,\n // file\n name,\n type,\n url,\n // others\n isByMe,\n onCancel,\n onDelete,\n disableDelete,\n}: FileViewerUIProps) => (\n <div className=\"sendbird-fileviewer\">\n <div className=\"sendbird-fileviewer__header\">\n <div className=\"sendbird-fileviewer__header__left\">\n <div className=\"sendbird-fileviewer__header__left__avatar\">\n <Avatar height=\"32px\" width=\"32px\" src={profileUrl} />\n </div>\n <Label\n className=\"sendbird-fileviewer__header__left__filename\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {name}\n </Label>\n <Label\n className=\"sendbird-fileviewer__header__left__sender-name\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {nickname}\n </Label>\n </div>\n <div className=\"sendbird-fileviewer__header__right\">\n {\n isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__header__right__actions\">\n <a\n className=\"sendbird-fileviewer__header__right__actions__download\"\n rel=\"noopener noreferrer\"\n href={url}\n target=\"_blank\"\n >\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n />\n </a>\n {\n onDelete && isByMe && (\n <div className=\"sendbird-fileviewer__header__right__actions__delete\">\n <Icon\n className={disableDelete ? 'disabled' : ''}\n type={IconTypes.DELETE}\n fillColor={disableDelete ? IconColors.GRAY : IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={() => { if (!disableDelete) { onDelete(); } }}\n />\n </div>\n )\n }\n </div>\n )\n }\n <div className=\"sendbird-fileviewer__header__right__actions__close\">\n <Icon\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={onCancel}\n />\n </div>\n </div>\n </div>\n <div className=\"sendbird-fileviewer__content\">\n {isVideo(type) && (\n <video controls className=\"sendbird-fileviewer__content__video\">\n <source src={url} type={type} />\n </video>\n )}\n {\n isImage(type) && (\n <img\n src={url}\n alt={name}\n className=\"sendbird-fileviewer__content__img\"\n />\n )\n }\n {\n !isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__content__unsupported\">\n <Label type={LabelTypography.H_1} color={LabelColors.ONBACKGROUND_1}>\n Unsupoprted message\n </Label>\n </div>\n )\n }\n </div>\n </div>\n);\n\ntype FileViewerProps = {\n onCancel:() => void;\n message: SendbirdUIKit.ClientFileMessage;\n};\n\nconst FileViewer: React.FC<FileViewerProps> = ({ onCancel, message }: FileViewerProps) => {\n const { deleteMessage } = useChannel();\n const {\n sender,\n type,\n url,\n name = '',\n threadInfo,\n } = message;\n const user = useSendbirdStateContext()?.config?.userId;\n const isByMe = user === message?.sender?.userId;\n const disableDelete = threadInfo?.replyCount > 0;\n const { profileUrl, nickname = '' } = sender;\n return createPortal(\n (\n <FileViewerComponent\n profileUrl={profileUrl}\n nickname={nickname}\n type={type}\n url={url}\n name={name}\n onCancel={onCancel}\n onDelete={() => {\n deleteMessage(message).then(() => {\n onCancel();\n });\n }}\n isByMe={isByMe}\n disableDelete={disableDelete}\n />\n ),\n document.getElementById(MODAL_ROOT),\n );\n}\n\nexport default FileViewer;\n"],"names":["FileViewerComponent","_a","profileUrl","nickname","name","type","url","isByMe","onCancel","onDelete","disableDelete","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","BODY_1","ONBACKGROUND_2","isSupportedFileView","IconTypes","DOWNLOAD","IconColors","ON_BACKGROUND_1","DELETE","GRAY","CLOSE","isVideo","isImage","H_1","FileViewer","message","deleteMessage","useChannel","sender","_e","threadInfo","user","useSendbirdStateContext","config","userId","replyCount","_f","createPortal","then","document","getElementById","MODAL_ROOT"],"mappings":"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"}