@sendbird/uikit-react 3.1.0-rc.0 → 3.1.1-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/App.js +33 -32
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +16 -0
  4. package/Channel/components/ChannelHeader.js +17 -17
  5. package/Channel/components/ChannelUI.js +24 -24
  6. package/Channel/components/FileViewer.js +16 -16
  7. package/Channel/components/FrozenNotification.js +5 -5
  8. package/Channel/components/Message.js +21 -21
  9. package/Channel/components/MessageInput.js +18 -18
  10. package/Channel/components/MessageList.js +23 -23
  11. package/Channel/components/RemoveMessageModal.js +19 -19
  12. package/Channel/components/SuggestedMentionList.js +17 -17
  13. package/Channel/components/TypingIndicator.js +16 -16
  14. package/Channel/components/UnreadCount.js +5 -5
  15. package/Channel/context.js +15 -15
  16. package/Channel.js +24 -24
  17. package/ChannelList/components/AddChannel.js +14 -14
  18. package/ChannelList/components/ChannelListHeader.js +7 -7
  19. package/ChannelList/components/ChannelListUI.js +28 -28
  20. package/ChannelList/components/ChannelPreview.js +21 -21
  21. package/ChannelList/components/ChannelPreviewAction.js +16 -16
  22. package/ChannelList/context.js +10 -10
  23. package/ChannelList.js +28 -28
  24. package/{ChannelListProvider-98290ccf.js → ChannelListProvider-96b68c7d.js} +15 -19
  25. package/ChannelListProvider-96b68c7d.js.map +1 -0
  26. package/{ChannelProvider-38147c7b.js → ChannelProvider-c8c4f881.js} +11 -11
  27. package/{ChannelProvider-38147c7b.js.map → ChannelProvider-c8c4f881.js.map} +1 -1
  28. package/ChannelSettings/components/ChannelProfile.js +13 -13
  29. package/ChannelSettings/components/ChannelSettingsUI.js +20 -20
  30. package/ChannelSettings/components/EditDetailsModal.js +13 -13
  31. package/ChannelSettings/components/LeaveChannel.js +10 -10
  32. package/ChannelSettings/components/ModerationPanel.js +17 -17
  33. package/ChannelSettings/components/UserListItem.js +12 -12
  34. package/ChannelSettings/components/UserPanel.js +14 -14
  35. package/ChannelSettings/context.js +3 -3
  36. package/ChannelSettings/context.js.map +1 -1
  37. package/ChannelSettings.js +20 -20
  38. package/CreateChannel/components/CreateChannelUI.js +14 -14
  39. package/CreateChannel/components/InviteUsers.js +29 -30
  40. package/CreateChannel/components/InviteUsers.js.map +1 -1
  41. package/CreateChannel/components/SelectChannelType.js +10 -10
  42. package/CreateChannel/context.js +4 -4
  43. package/CreateChannel.js +14 -14
  44. package/{CreateChannelProvider-c929328e.js → CreateChannelProvider-047c6c5a.js} +1 -1
  45. package/{CreateChannelProvider-c929328e.js.map → CreateChannelProvider-047c6c5a.js.map} +1 -1
  46. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  47. package/EditUserProfile.js +13 -13
  48. package/{LocalizationContext-bed38f81.js → LocalizationContext-efdbcf74.js} +3 -3
  49. package/{LocalizationContext-bed38f81.js.map → LocalizationContext-efdbcf74.js.map} +1 -1
  50. package/{MemberList-db090735.js → MemberList-979bdcd5.js} +6 -6
  51. package/{MemberList-db090735.js.map → MemberList-979bdcd5.js.map} +1 -1
  52. package/MessageSearch/components/MessageSearchUI.js +11 -11
  53. package/MessageSearch/context.js +2 -2
  54. package/MessageSearch.js +11 -11
  55. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  56. package/OpenChannel/components/OpenChannelHeader.js +15 -14
  57. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  58. package/OpenChannel/components/OpenChannelInput.js +19 -18
  59. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  60. package/OpenChannel/components/OpenChannelMessage.js +28 -25
  61. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  62. package/OpenChannel/components/OpenChannelMessageList.js +26 -25
  63. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  64. package/OpenChannel/components/OpenChannelUI.js +26 -25
  65. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  66. package/OpenChannel/context.js +12 -11
  67. package/OpenChannel/context.js.map +1 -1
  68. package/OpenChannel.js +26 -25
  69. package/OpenChannel.js.map +1 -1
  70. package/{OpenChannelProvider-5b45f840.js → OpenChannelProvider-355668d0.js} +10 -10
  71. package/{OpenChannelProvider-5b45f840.js.map → OpenChannelProvider-355668d0.js.map} +1 -1
  72. package/OpenChannelSettings/components/EditDetailsModal.js +15 -13
  73. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  74. package/OpenChannelSettings/components/OpenChannelProfile.js +15 -13
  75. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  76. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +20 -18
  77. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  78. package/OpenChannelSettings/components/OperatorUI.js +23 -65
  79. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  80. package/OpenChannelSettings/components/ParticipantUI.js +17 -15
  81. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  82. package/OpenChannelSettings/context.js +50 -19
  83. package/OpenChannelSettings/context.js.map +1 -1
  84. package/OpenChannelSettings.js +20 -18
  85. package/OpenChannelSettings.js.map +1 -1
  86. package/SendbirdProvider.js +15 -14
  87. package/SendbirdProvider.js.map +1 -1
  88. package/{UserProfileContext-5bc5ff98.js → UserProfileContext-f5de1881.js} +1 -1
  89. package/{UserProfileContext-5bc5ff98.js.map → UserProfileContext-f5de1881.js.map} +1 -1
  90. package/__bundle-7dfccc8c-eefadf8c.js +22 -0
  91. package/__bundle-7dfccc8c-eefadf8c.js.map +1 -0
  92. package/{_rollupPluginBabelHelpers-51451000.js → _rollupPluginBabelHelpers-88b87e1d.js} +1 -1
  93. package/{_rollupPluginBabelHelpers-51451000.js.map → _rollupPluginBabelHelpers-88b87e1d.js.map} +1 -1
  94. package/{actionTypes-03571cf1.js → actionTypes-24312606.js} +1 -1
  95. package/{actionTypes-03571cf1.js.map → actionTypes-24312606.js.map} +1 -1
  96. package/cjs/App.js +33 -32
  97. package/cjs/App.js.map +1 -1
  98. package/cjs/Channel/components/ChannelHeader.js +17 -17
  99. package/cjs/Channel/components/ChannelUI.js +24 -24
  100. package/cjs/Channel/components/FileViewer.js +16 -16
  101. package/cjs/Channel/components/FrozenNotification.js +5 -5
  102. package/cjs/Channel/components/Message.js +21 -21
  103. package/cjs/Channel/components/MessageInput.js +18 -18
  104. package/cjs/Channel/components/MessageList.js +23 -23
  105. package/cjs/Channel/components/RemoveMessageModal.js +19 -19
  106. package/cjs/Channel/components/SuggestedMentionList.js +17 -17
  107. package/cjs/Channel/components/TypingIndicator.js +16 -16
  108. package/cjs/Channel/components/UnreadCount.js +5 -5
  109. package/cjs/Channel/context.js +15 -15
  110. package/cjs/Channel.js +24 -24
  111. package/cjs/ChannelList/components/AddChannel.js +14 -14
  112. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  113. package/cjs/ChannelList/components/ChannelListUI.js +28 -28
  114. package/cjs/ChannelList/components/ChannelPreview.js +21 -21
  115. package/cjs/ChannelList/components/ChannelPreviewAction.js +16 -16
  116. package/cjs/ChannelList/context.js +10 -10
  117. package/cjs/ChannelList.js +28 -28
  118. package/cjs/{ChannelListProvider-50cf9211.js → ChannelListProvider-ee4bcc73.js} +15 -19
  119. package/cjs/ChannelListProvider-ee4bcc73.js.map +1 -0
  120. package/cjs/{ChannelProvider-669b5e88.js → ChannelProvider-2912d7fb.js} +11 -11
  121. package/cjs/{ChannelProvider-669b5e88.js.map → ChannelProvider-2912d7fb.js.map} +1 -1
  122. package/cjs/ChannelSettings/components/ChannelProfile.js +13 -13
  123. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +20 -20
  124. package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
  125. package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
  126. package/cjs/ChannelSettings/components/ModerationPanel.js +17 -17
  127. package/cjs/ChannelSettings/components/UserListItem.js +12 -12
  128. package/cjs/ChannelSettings/components/UserPanel.js +14 -14
  129. package/cjs/ChannelSettings/context.js +3 -3
  130. package/cjs/ChannelSettings/context.js.map +1 -1
  131. package/cjs/ChannelSettings.js +20 -20
  132. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  133. package/cjs/CreateChannel/components/InviteUsers.js +29 -30
  134. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  135. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  136. package/cjs/CreateChannel/context.js +4 -4
  137. package/cjs/CreateChannel.js +14 -14
  138. package/cjs/{CreateChannelProvider-3ee8c3d8.js → CreateChannelProvider-17b32efe.js} +1 -1
  139. package/cjs/{CreateChannelProvider-3ee8c3d8.js.map → CreateChannelProvider-17b32efe.js.map} +1 -1
  140. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  141. package/cjs/EditUserProfile.js +13 -13
  142. package/cjs/{LocalizationContext-458c4425.js → LocalizationContext-845c1310.js} +3 -3
  143. package/cjs/{LocalizationContext-458c4425.js.map → LocalizationContext-845c1310.js.map} +1 -1
  144. package/cjs/{MemberList-3c0d7503.js → MemberList-013ef997.js} +6 -6
  145. package/cjs/{MemberList-3c0d7503.js.map → MemberList-013ef997.js.map} +1 -1
  146. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  147. package/cjs/MessageSearch/context.js +2 -2
  148. package/cjs/MessageSearch.js +11 -11
  149. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  150. package/cjs/OpenChannel/components/OpenChannelHeader.js +15 -14
  151. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  152. package/cjs/OpenChannel/components/OpenChannelInput.js +19 -18
  153. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  154. package/cjs/OpenChannel/components/OpenChannelMessage.js +28 -25
  155. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  156. package/cjs/OpenChannel/components/OpenChannelMessageList.js +26 -25
  157. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  158. package/cjs/OpenChannel/components/OpenChannelUI.js +26 -25
  159. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  160. package/cjs/OpenChannel/context.js +12 -11
  161. package/cjs/OpenChannel/context.js.map +1 -1
  162. package/cjs/OpenChannel.js +26 -25
  163. package/cjs/OpenChannel.js.map +1 -1
  164. package/cjs/{OpenChannelProvider-0f1ece78.js → OpenChannelProvider-25d233f6.js} +10 -10
  165. package/cjs/{OpenChannelProvider-0f1ece78.js.map → OpenChannelProvider-25d233f6.js.map} +1 -1
  166. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +15 -13
  167. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  168. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +15 -13
  169. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  170. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +20 -18
  171. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  172. package/cjs/OpenChannelSettings/components/OperatorUI.js +23 -65
  173. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  174. package/cjs/OpenChannelSettings/components/ParticipantUI.js +17 -15
  175. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  176. package/cjs/OpenChannelSettings/context.js +50 -19
  177. package/cjs/OpenChannelSettings/context.js.map +1 -1
  178. package/cjs/OpenChannelSettings.js +20 -18
  179. package/cjs/OpenChannelSettings.js.map +1 -1
  180. package/cjs/SendbirdProvider.js +16 -14
  181. package/cjs/SendbirdProvider.js.map +1 -1
  182. package/cjs/{UserProfileContext-f582734c.js → UserProfileContext-56aa3393.js} +1 -1
  183. package/cjs/{UserProfileContext-f582734c.js.map → UserProfileContext-56aa3393.js.map} +1 -1
  184. package/cjs/__bundle-7dfccc8c-0714b80e.js +120 -0
  185. package/cjs/__bundle-7dfccc8c-0714b80e.js.map +1 -0
  186. package/cjs/{_rollupPluginBabelHelpers-7a2f7ed5.js → _rollupPluginBabelHelpers-0402bf29.js} +1 -1
  187. package/cjs/{_rollupPluginBabelHelpers-7a2f7ed5.js.map → _rollupPluginBabelHelpers-0402bf29.js.map} +1 -1
  188. package/cjs/{actionTypes-344731c5.js → actionTypes-a176f646.js} +1 -1
  189. package/cjs/{actionTypes-344731c5.js.map → actionTypes-a176f646.js.map} +1 -1
  190. package/cjs/{color-7ac0d13b.js → color-6ea0756d.js} +1 -1
  191. package/cjs/{color-7ac0d13b.js.map → color-6ea0756d.js.map} +1 -1
  192. package/cjs/{compareIds-8bbbef9c.js → compareIds-62d87a57.js} +1 -1
  193. package/cjs/{compareIds-8bbbef9c.js.map → compareIds-62d87a57.js.map} +1 -1
  194. package/cjs/{const-496c4e96.js → const-08e0dd5f.js} +1 -1
  195. package/cjs/{const-496c4e96.js.map → const-08e0dd5f.js.map} +1 -1
  196. package/cjs/{const-290e012b.js → const-e7f77387.js} +1 -1
  197. package/cjs/{const-290e012b.js.map → const-e7f77387.js.map} +1 -1
  198. package/cjs/{context-16c8fda9.js → context-a473eed5.js} +2 -2
  199. package/cjs/{context-16c8fda9.js.map → context-a473eed5.js.map} +1 -1
  200. package/cjs/dist/index.css +27 -27
  201. package/cjs/dist/index.css.map +1 -1
  202. package/cjs/groupChannel-0d294771.js +11 -0
  203. package/cjs/groupChannel-0d294771.js.map +1 -0
  204. package/cjs/{index-c1aa0d36.js → index-112dfc9c.js} +4 -4
  205. package/cjs/{index-c1aa0d36.js.map → index-112dfc9c.js.map} +1 -1
  206. package/cjs/{index-0913b626.js → index-2dfff032.js} +3 -3
  207. package/cjs/{index-0913b626.js.map → index-2dfff032.js.map} +1 -1
  208. package/cjs/{index-dac29bc6.js → index-3a7b6c9e.js} +9 -8
  209. package/cjs/{index-dac29bc6.js.map → index-3a7b6c9e.js.map} +1 -1
  210. package/cjs/{index-1e767390.js → index-572a8d31.js} +5 -5
  211. package/cjs/index-572a8d31.js.map +1 -0
  212. package/cjs/{index-911094d4.js → index-65706652.js} +1 -1
  213. package/cjs/{index-911094d4.js.map → index-65706652.js.map} +1 -1
  214. package/cjs/{index-e61b5129.js → index-760364ac.js} +3 -3
  215. package/cjs/{index-e61b5129.js.map → index-760364ac.js.map} +1 -1
  216. package/cjs/{index-fcee945f.js → index-784eaee0.js} +4 -4
  217. package/cjs/{index-fcee945f.js.map → index-784eaee0.js.map} +1 -1
  218. package/cjs/{index-74826500.js → index-81850dab.js} +2 -2
  219. package/cjs/{index-74826500.js.map → index-81850dab.js.map} +1 -1
  220. package/cjs/{index-a29feec3.js → index-a0f0d97b.js} +6 -6
  221. package/cjs/{index-a29feec3.js.map → index-a0f0d97b.js.map} +1 -1
  222. package/cjs/{index-0d759d2f.js → index-c5cab313.js} +1 -1
  223. package/cjs/{index-0d759d2f.js.map → index-c5cab313.js.map} +1 -1
  224. package/cjs/{index-7efec35e.js → index-efb4ebec.js} +2 -2
  225. package/cjs/{index-7efec35e.js.map → index-efb4ebec.js.map} +1 -1
  226. package/cjs/index.js +38 -36
  227. package/cjs/index.js.map +1 -1
  228. package/cjs/openChannel-498582b9.js +9 -0
  229. package/cjs/openChannel-498582b9.js.map +1 -0
  230. package/cjs/{openChannelUtils-c190487b.js → openChannelUtils-1e231b5a.js} +1 -1
  231. package/cjs/{openChannelUtils-c190487b.js.map → openChannelUtils-1e231b5a.js.map} +1 -1
  232. package/cjs/sendbirdSelectors.js +4 -4
  233. package/cjs/sendbirdSelectors.js.map +1 -1
  234. package/cjs/{stringSet-1e20a383.js → stringSet-6ebeaa19.js} +1 -1
  235. package/cjs/{stringSet-1e20a383.js.map → stringSet-6ebeaa19.js.map} +1 -1
  236. package/cjs/{topics-fae1bf42.js → topics-995b8064.js} +1 -1
  237. package/cjs/{topics-fae1bf42.js.map → topics-995b8064.js.map} +1 -1
  238. package/cjs/{tslib.es6-94adc177.js → tslib.es6-f15a94d8.js} +1 -1
  239. package/cjs/{tslib.es6-94adc177.js.map → tslib.es6-f15a94d8.js.map} +1 -1
  240. package/cjs/ui/Accordion.js +4 -4
  241. package/cjs/ui/AccordionGroup.js +2 -2
  242. package/cjs/ui/AdminMessage.js +3 -3
  243. package/cjs/ui/Avatar.js +3 -3
  244. package/cjs/ui/Badge.js +5 -5
  245. package/cjs/ui/Button.js +4 -4
  246. package/cjs/ui/ChannelAvatar.js +4 -4
  247. package/cjs/ui/ChannelPreview.js +12 -12
  248. package/cjs/ui/ChatHeader.js +8 -8
  249. package/cjs/ui/ConnectionStatus.js +5 -5
  250. package/cjs/ui/ContextMenu.js +5 -5
  251. package/cjs/ui/DateSeparator.js +4 -4
  252. package/cjs/ui/Dropdown.js +3 -3
  253. package/cjs/ui/EmojiReactions.js +7 -7
  254. package/cjs/ui/FileMessageItemBody.js +6 -6
  255. package/cjs/ui/FileViewer.js +7 -7
  256. package/cjs/ui/Icon.js +1 -1
  257. package/cjs/ui/IconButton.js +1 -1
  258. package/cjs/ui/ImageRenderer.js +1 -1
  259. package/cjs/ui/Input.js +3 -3
  260. package/cjs/ui/Label.js +3 -3
  261. package/cjs/ui/LinkLabel.js +3 -3
  262. package/cjs/ui/Loader.js +1 -1
  263. package/cjs/ui/MentionLabel.js +11 -11
  264. package/cjs/ui/MessageContent.js +14 -14
  265. package/cjs/ui/MessageInput.js +10 -10
  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 +8 -8
  271. package/cjs/ui/Modal.js +8 -8
  272. package/cjs/ui/MutedAvatarOverlay.js +1 -1
  273. package/cjs/ui/OGMessageItemBody.js +11 -11
  274. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  275. package/cjs/ui/OpenChannelAvatar.js +7 -7
  276. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  277. package/cjs/ui/OpenchannelFileMessage.js +15 -15
  278. package/cjs/ui/OpenchannelOGMessage.js +15 -15
  279. package/cjs/ui/OpenchannelThumbnailMessage.js +14 -14
  280. package/cjs/ui/OpenchannelUserMessage.js +15 -15
  281. package/cjs/ui/PlaceHolder.js +6 -6
  282. package/cjs/ui/QuoteMessage.js +7 -7
  283. package/cjs/ui/QuoteMessageInput.js +7 -7
  284. package/cjs/ui/ReactionBadge.js +3 -3
  285. package/cjs/ui/ReactionButton.js +1 -1
  286. package/cjs/ui/SortByRow.js +1 -1
  287. package/cjs/ui/TextButton.js +2 -2
  288. package/cjs/ui/TextMessageItemBody.js +11 -11
  289. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  290. package/cjs/ui/Tooltip.js +3 -3
  291. package/cjs/ui/TooltipWrapper.js +1 -1
  292. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  293. package/cjs/ui/UserListItem.js +12 -12
  294. package/cjs/ui/UserProfile.js +10 -10
  295. package/cjs/ui/Word.js +11 -11
  296. package/cjs/useSendbirdStateContext.js +1 -1
  297. package/cjs/{utils-50f39987.js → utils-20218aaa.js} +1 -1
  298. package/cjs/{utils-50f39987.js.map → utils-20218aaa.js.map} +1 -1
  299. package/cjs/{utils-a765f200.js → utils-632b6d34.js} +1 -1
  300. package/cjs/{utils-a765f200.js.map → utils-632b6d34.js.map} +1 -1
  301. package/cjs/{utils-985f99f7.js → utils-e647125f.js} +1 -1
  302. package/cjs/{utils-985f99f7.js.map → utils-e647125f.js.map} +1 -1
  303. package/cjs/{uuid-54ad2cc3.js → uuid-86a50395.js} +1 -1
  304. package/cjs/{uuid-54ad2cc3.js.map → uuid-86a50395.js.map} +1 -1
  305. package/cjs/withSendbird.js +1 -1
  306. package/{color-04ed392d.js → color-fc3db298.js} +1 -1
  307. package/{color-04ed392d.js.map → color-fc3db298.js.map} +1 -1
  308. package/{compareIds-7eaf62a5.js → compareIds-3705ecf0.js} +1 -1
  309. package/{compareIds-7eaf62a5.js.map → compareIds-3705ecf0.js.map} +1 -1
  310. package/{const-db8ec16d.js → const-254817e2.js} +1 -1
  311. package/{const-db8ec16d.js.map → const-254817e2.js.map} +1 -1
  312. package/{const-5ab9bb9f.js → const-f1437524.js} +1 -1
  313. package/{const-5ab9bb9f.js.map → const-f1437524.js.map} +1 -1
  314. package/{context-4ca94848.js → context-fd21a0e0.js} +2 -2
  315. package/{context-4ca94848.js.map → context-fd21a0e0.js.map} +1 -1
  316. package/dist/index.css +27 -27
  317. package/dist/index.css.map +1 -1
  318. package/groupChannel-6cba9605.js +8 -0
  319. package/groupChannel-6cba9605.js.map +1 -0
  320. package/{index-525b68d4.js → index-14f18c86.js} +9 -8
  321. package/{index-525b68d4.js.map → index-14f18c86.js.map} +1 -1
  322. package/{index-7ed67f3f.js → index-4fb5d5cf.js} +1 -1
  323. package/{index-7ed67f3f.js.map → index-4fb5d5cf.js.map} +1 -1
  324. package/{index-33456100.js → index-883fb9bd.js} +3 -3
  325. package/{index-33456100.js.map → index-883fb9bd.js.map} +1 -1
  326. package/{index-a3d218da.js → index-9009fde4.js} +3 -3
  327. package/{index-a3d218da.js.map → index-9009fde4.js.map} +1 -1
  328. package/{index-1984c852.js → index-96fd1749.js} +2 -2
  329. package/{index-1984c852.js.map → index-96fd1749.js.map} +1 -1
  330. package/{index-2a999130.js → index-984e00d2.js} +4 -4
  331. package/{index-2a999130.js.map → index-984e00d2.js.map} +1 -1
  332. package/{index-6e02fc15.js → index-9c1f610a.js} +1 -1
  333. package/{index-6e02fc15.js.map → index-9c1f610a.js.map} +1 -1
  334. package/{index-edc23b4f.js → index-bc6877fd.js} +6 -6
  335. package/{index-edc23b4f.js.map → index-bc6877fd.js.map} +1 -1
  336. package/{index-dfc65ccf.js → index-bd1f3e68.js} +4 -4
  337. package/{index-dfc65ccf.js.map → index-bd1f3e68.js.map} +1 -1
  338. package/{index-c67f2f3b.js → index-de047ed5.js} +5 -5
  339. package/index-de047ed5.js.map +1 -0
  340. package/{index-49108fb4.js → index-e0042297.js} +2 -2
  341. package/{index-49108fb4.js.map → index-e0042297.js.map} +1 -1
  342. package/index.d.ts +27 -15
  343. package/index.js +38 -37
  344. package/index.js.map +1 -1
  345. package/openChannel-867b006c.js +6 -0
  346. package/openChannel-867b006c.js.map +1 -0
  347. package/{openChannelUtils-e69f8484.js → openChannelUtils-a0c45927.js} +1 -1
  348. package/{openChannelUtils-e69f8484.js.map → openChannelUtils-a0c45927.js.map} +1 -1
  349. package/package-lock.json +26318 -0
  350. package/package.json +1 -1
  351. package/sendbirdSelectors.js +4 -4
  352. package/sendbirdSelectors.js.map +1 -1
  353. package/{stringSet-07d51930.js → stringSet-7b4e4f43.js} +1 -1
  354. package/{stringSet-07d51930.js.map → stringSet-7b4e4f43.js.map} +1 -1
  355. package/{topics-a5f3f0e9.js → topics-b32d34f9.js} +1 -1
  356. package/{topics-a5f3f0e9.js.map → topics-b32d34f9.js.map} +1 -1
  357. package/{tslib.es6-7a52c497.js → tslib.es6-e9ef9b36.js} +1 -1
  358. package/{tslib.es6-7a52c497.js.map → tslib.es6-e9ef9b36.js.map} +1 -1
  359. package/ui/Accordion.js +4 -4
  360. package/ui/AccordionGroup.js +2 -2
  361. package/ui/AdminMessage.js +3 -3
  362. package/ui/Avatar.js +3 -3
  363. package/ui/Badge.js +5 -5
  364. package/ui/Button.js +4 -4
  365. package/ui/ChannelAvatar.js +4 -4
  366. package/ui/ChannelPreview.js +12 -12
  367. package/ui/ChatHeader.js +8 -8
  368. package/ui/ConnectionStatus.js +5 -5
  369. package/ui/ContextMenu.js +5 -5
  370. package/ui/DateSeparator.js +4 -4
  371. package/ui/Dropdown.js +3 -3
  372. package/ui/EmojiReactions.js +7 -7
  373. package/ui/FileMessageItemBody.js +6 -6
  374. package/ui/FileViewer.js +7 -7
  375. package/ui/Icon.js +1 -1
  376. package/ui/IconButton.js +1 -1
  377. package/ui/ImageRenderer.js +1 -1
  378. package/ui/Input.js +3 -3
  379. package/ui/Label.js +3 -3
  380. package/ui/LinkLabel.js +3 -3
  381. package/ui/Loader.js +1 -1
  382. package/ui/MentionLabel.js +11 -11
  383. package/ui/MessageContent.js +14 -14
  384. package/ui/MessageInput.js +10 -10
  385. package/ui/MessageItemMenu.js +7 -7
  386. package/ui/MessageItemReactionMenu.js +5 -5
  387. package/ui/MessageSearchFileItem.js +10 -10
  388. package/ui/MessageSearchItem.js +10 -10
  389. package/ui/MessageStatus.js +8 -8
  390. package/ui/Modal.js +8 -8
  391. package/ui/MutedAvatarOverlay.js +1 -1
  392. package/ui/OGMessageItemBody.js +11 -11
  393. package/ui/OpenChannelAdminMessage.js +4 -4
  394. package/ui/OpenChannelAvatar.js +7 -7
  395. package/ui/OpenchannelConversationHeader.js +7 -7
  396. package/ui/OpenchannelFileMessage.js +15 -15
  397. package/ui/OpenchannelOGMessage.js +15 -15
  398. package/ui/OpenchannelThumbnailMessage.js +14 -14
  399. package/ui/OpenchannelUserMessage.js +15 -15
  400. package/ui/PlaceHolder.js +6 -6
  401. package/ui/QuoteMessage.js +7 -7
  402. package/ui/QuoteMessageInput.js +7 -7
  403. package/ui/ReactionBadge.js +3 -3
  404. package/ui/ReactionButton.js +1 -1
  405. package/ui/SortByRow.js +1 -1
  406. package/ui/TextButton.js +2 -2
  407. package/ui/TextMessageItemBody.js +11 -11
  408. package/ui/ThumbnailMessageItemBody.js +3 -3
  409. package/ui/Tooltip.js +3 -3
  410. package/ui/TooltipWrapper.js +1 -1
  411. package/ui/UnknownMessageItemBody.js +7 -7
  412. package/ui/UserListItem.js +12 -12
  413. package/ui/UserProfile.js +10 -10
  414. package/ui/Word.js +11 -11
  415. package/useSendbirdStateContext.js +1 -1
  416. package/{utils-cf75b861.js → utils-1f8f9712.js} +1 -1
  417. package/{utils-cf75b861.js.map → utils-1f8f9712.js.map} +1 -1
  418. package/{utils-43a00393.js → utils-d893f1a4.js} +1 -1
  419. package/{utils-43a00393.js.map → utils-d893f1a4.js.map} +1 -1
  420. package/{utils-af217adb.js → utils-e2330639.js} +1 -1
  421. package/{utils-af217adb.js.map → utils-e2330639.js.map} +1 -1
  422. package/{uuid-b7da2ddf.js → uuid-17fb429f.js} +1 -1
  423. package/{uuid-b7da2ddf.js.map → uuid-17fb429f.js.map} +1 -1
  424. package/withSendbird.js +1 -1
  425. package/ChannelListProvider-98290ccf.js.map +0 -1
  426. package/__bundle-7dfccc8c-dc566919.js +0 -24
  427. package/__bundle-7dfccc8c-dc566919.js.map +0 -1
  428. package/cjs/ChannelListProvider-50cf9211.js.map +0 -1
  429. package/cjs/__bundle-7dfccc8c-1748a942.js +0 -151
  430. package/cjs/__bundle-7dfccc8c-1748a942.js.map +0 -1
  431. package/cjs/groupChannel-fab057aa.js +0 -9
  432. package/cjs/groupChannel-fab057aa.js.map +0 -1
  433. package/cjs/index-1e767390.js.map +0 -1
  434. package/cjs/openChannel-e4e021c5.js +0 -13
  435. package/cjs/openChannel-e4e021c5.js.map +0 -1
  436. package/groupChannel-5c43b7c1.js +0 -6
  437. package/groupChannel-5c43b7c1.js.map +0 -1
  438. package/index-c67f2f3b.js.map +0 -1
  439. package/openChannel-92ffb0b5.js +0 -8
  440. package/openChannel-92ffb0b5.js.map +0 -1
@@ -1,24 +1,24 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { a as LocalizationContext } from '../../LocalizationContext-bed38f81.js';
2
+ import { a as LocalizationContext } from '../../LocalizationContext-efdbcf74.js';
3
3
  import { useMessageSearchContext } from '../context.js';
4
4
  import MessageSearchItem from '../../ui/MessageSearchItem.js';
5
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-dfc65ccf.js';
5
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-bd1f3e68.js';
6
6
  import MessageSearchFileItem from '../../ui/MessageSearchFileItem.js';
7
- import '../../stringSet-07d51930.js';
8
- import '../../index-6e02fc15.js';
7
+ import '../../stringSet-7b4e4f43.js';
8
+ import '../../index-9c1f610a.js';
9
9
  import '../../useSendbirdStateContext.js';
10
10
  import '../../withSendbird.js';
11
- import '../../_rollupPluginBabelHelpers-51451000.js';
12
- import '../../tslib.es6-7a52c497.js';
13
- import '../../index-1984c852.js';
14
- import '../../index-2a999130.js';
15
- import '../../index-49108fb4.js';
11
+ import '../../_rollupPluginBabelHelpers-88b87e1d.js';
12
+ import '../../tslib.es6-e9ef9b36.js';
13
+ import '../../index-96fd1749.js';
14
+ import '../../index-984e00d2.js';
15
+ import '../../index-e0042297.js';
16
16
  import '../../ui/Avatar.js';
17
17
  import '../../ui/ImageRenderer.js';
18
18
  import 'prop-types';
19
19
  import '../../ui/Icon.js';
20
- import '../../uuid-b7da2ddf.js';
21
- import '../../index-33456100.js';
20
+ import '../../uuid-17fb429f.js';
21
+ import '../../index-883fb9bd.js';
22
22
  import '../../ui/Loader.js';
23
23
 
24
24
  var COMPONENT_CLASS_NAME = 'sendbird-message-search';
@@ -1,8 +1,8 @@
1
1
  import React__default, { useEffect, useCallback, useState, useReducer, useRef } from 'react';
2
2
  import useSendbirdStateContext from '../useSendbirdStateContext.js';
3
- import { _ as __assign, a as __spreadArray } from '../tslib.es6-7a52c497.js';
3
+ import { _ as __assign, a as __spreadArray } from '../tslib.es6-e9ef9b36.js';
4
4
  import '../withSendbird.js';
5
- import '../_rollupPluginBabelHelpers-51451000.js';
5
+ import '../_rollupPluginBabelHelpers-88b87e1d.js';
6
6
 
7
7
  var GET_SEARCHED_MESSAGES = 'GET_SEARCHED_MESSAGES';
8
8
  var GET_NEXT_SEARCHED_MESSAGES = 'GET_NEXT_SEARCHED_MESSAGES';
package/MessageSearch.js CHANGED
@@ -1,25 +1,25 @@
1
1
  import React__default, { useState, useContext, useEffect } from 'react';
2
2
  import { MessageSearchUI } from './MessageSearch/components/MessageSearchUI.js';
3
- import { a as LocalizationContext } from './LocalizationContext-bed38f81.js';
3
+ import { a as LocalizationContext } from './LocalizationContext-efdbcf74.js';
4
4
  import Icon, { IconTypes, IconColors } from './ui/Icon.js';
5
5
  import IconButton from './ui/IconButton.js';
6
- import { L as Label, a as LabelTypography, b as LabelColors } from './index-33456100.js';
6
+ import { L as Label, a as LabelTypography, b as LabelColors } from './index-883fb9bd.js';
7
7
  import Loader from './ui/Loader.js';
8
8
  import { MessageSearchProvider } from './MessageSearch/context.js';
9
9
  import './ui/MessageSearchItem.js';
10
- import './tslib.es6-7a52c497.js';
11
- import './index-1984c852.js';
12
- import './index-6e02fc15.js';
13
- import './index-2a999130.js';
14
- import './index-49108fb4.js';
10
+ import './tslib.es6-e9ef9b36.js';
11
+ import './index-96fd1749.js';
12
+ import './index-9c1f610a.js';
13
+ import './index-984e00d2.js';
14
+ import './index-e0042297.js';
15
15
  import './ui/Avatar.js';
16
16
  import './ui/ImageRenderer.js';
17
- import './_rollupPluginBabelHelpers-51451000.js';
17
+ import './_rollupPluginBabelHelpers-88b87e1d.js';
18
18
  import 'prop-types';
19
- import './uuid-b7da2ddf.js';
20
- import './index-dfc65ccf.js';
19
+ import './uuid-17fb429f.js';
20
+ import './index-bd1f3e68.js';
21
21
  import './ui/MessageSearchFileItem.js';
22
- import './stringSet-07d51930.js';
22
+ import './stringSet-7b4e4f43.js';
23
23
  import './useSendbirdStateContext.js';
24
24
  import './withSendbird.js';
25
25
 
@@ -1,9 +1,9 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { a as LocalizationContext } from '../../LocalizationContext-bed38f81.js';
3
- import { L as Label, a as LabelTypography } from '../../index-33456100.js';
4
- import '../../stringSet-07d51930.js';
5
- import '../../index-6e02fc15.js';
6
- import '../../_rollupPluginBabelHelpers-51451000.js';
2
+ import { a as LocalizationContext } from '../../LocalizationContext-efdbcf74.js';
3
+ import { L as Label, a as LabelTypography } from '../../index-883fb9bd.js';
4
+ import '../../stringSet-7b4e4f43.js';
5
+ import '../../index-9c1f610a.js';
6
+ import '../../_rollupPluginBabelHelpers-88b87e1d.js';
7
7
  import 'prop-types';
8
8
 
9
9
  var FrozenNotification = function FrozenNotification() {
@@ -2,22 +2,23 @@ import React__default, { useContext } from 'react';
2
2
  import Avatar from '../../ui/Avatar.js';
3
3
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
4
4
  import IconButton from '../../ui/IconButton.js';
5
- import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-33456100.js';
6
- import { a as LocalizationContext } from '../../LocalizationContext-bed38f81.js';
7
- import { u as useOpenChannelContext, k as kFormatter } from '../../OpenChannelProvider-5b45f840.js';
8
- import '../../tslib.es6-7a52c497.js';
5
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-883fb9bd.js';
6
+ import { a as LocalizationContext } from '../../LocalizationContext-efdbcf74.js';
7
+ import { u as useOpenChannelContext, k as kFormatter } from '../../OpenChannelProvider-355668d0.js';
8
+ import '../../tslib.es6-e9ef9b36.js';
9
9
  import '../../ui/ImageRenderer.js';
10
- import '../../_rollupPluginBabelHelpers-51451000.js';
10
+ import '../../_rollupPluginBabelHelpers-88b87e1d.js';
11
11
  import 'prop-types';
12
- import '../../uuid-b7da2ddf.js';
13
- import '../../stringSet-07d51930.js';
14
- import '../../index-6e02fc15.js';
15
- import '../../index-1984c852.js';
16
- import '../../UserProfileContext-5bc5ff98.js';
17
- import '../../compareIds-7eaf62a5.js';
18
- import '../../topics-a5f3f0e9.js';
19
- import '../../openChannel-92ffb0b5.js';
20
- import '../../__bundle-7dfccc8c-dc566919.js';
12
+ import '../../uuid-17fb429f.js';
13
+ import '../../stringSet-7b4e4f43.js';
14
+ import '../../index-9c1f610a.js';
15
+ import '../../index-96fd1749.js';
16
+ import '../../UserProfileContext-f5de1881.js';
17
+ import '../../compareIds-3705ecf0.js';
18
+ import '../../topics-b32d34f9.js';
19
+ import '@sendbird/chat';
20
+ import '../../openChannel-867b006c.js';
21
+ import '../../__bundle-7dfccc8c-eefadf8c.js';
21
22
  import '../../useSendbirdStateContext.js';
22
23
  import '../../withSendbird.js';
23
24
 
@@ -1 +1 @@
1
- {"version":3,"file":"OpenChannelHeader.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelHeader/index.tsx"],"sourcesContent":["import './open-channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport Avatar from '../../../../ui/Avatar';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\n\nimport { kFormatter } from '../../context/utils';\n\nexport default function OpenchannelConversationHeader(): JSX.Element {\n const { stringSet } = useContext(LocalizationContext);\n const {\n currentOpenChannel,\n onChatHeaderActionClick,\n amIOperator,\n } = useOpenChannelContext();\n const title = currentOpenChannel?.name;\n const subTitle = `${kFormatter(currentOpenChannel?.participantCount)} ${stringSet.OPEN_CHANNEL_CONVERSATION__TITLE_PARTICIPANTS}`;\n const coverImage = currentOpenChannel?.coverUrl;\n\n return (\n <div className=\"sendbird-openchannel-conversation-header\">\n <div className=\"sendbird-openchannel-conversation-header__left\">\n {\n coverImage ? (\n <Avatar\n className=\"sendbird-openchannel-conversation-header__left__cover-image\"\n src={coverImage}\n alt=\"channel cover image\"\n width=\"32px\"\n height=\"32px\"\n />\n ) : (\n <div\n className=\"sendbird-openchannel-conversation-header__left__cover-image--icon\"\n style={{ width: 32, height: 32 }}\n >\n <Icon\n type={IconTypes.CHANNELS}\n fillColor={IconColors.CONTENT}\n width=\"18px\"\n height=\"18px\"\n />\n </div>\n )\n }\n <Label\n className=\"sendbird-openchannel-conversation-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {title || stringSet.NO_TITLE}\n </Label>\n <Label\n className=\"sendbird-openchannel-conversation-header__left__sub-title\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle || stringSet.NO_TITLE}\n </Label>\n </div>\n <div className=\"sendbird-openchannel-conversation-header__right\">\n <IconButton\n className=\"sendbird-openchannel-conversation-header__right__trigger\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={(\n amIOperator\n ? IconTypes.INFO\n : IconTypes.MEMBERS\n )}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n"],"names":["OpenchannelConversationHeader","stringSet","useContext","LocalizationContext","_a","useOpenChannelContext","currentOpenChannel","onChatHeaderActionClick","amIOperator","title","name","subTitle","kFormatter","participantCount","OPEN_CHANNEL_CONVERSATION__TITLE_PARTICIPANTS","coverImage","coverUrl","React","width","height","IconTypes","CHANNELS","IconColors","CONTENT","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","NO_TITLE","BODY_2","ONBACKGROUND_2","INFO","MEMBERS","PRIMARY"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;SAYwBA;AACd,MAAAC,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd;;AACF,MAAAC,KAIFC,qBAAqB,EAJnB;AAAA,MACJC,kBAAkB,wBADd;AAAA,MAEJC,uBAAuB,6BAFnB;AAAA,MAGJC,WAAW,iBAHP;;AAKN,MAAMC,KAAK,GAAGH,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEI,IAAlC;AACA,MAAMC,QAAQ,GAAG,SAAA,CAAGC,UAAU,CAACN,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEO,gBAArB,CAAb,KAAA,QAAA,CAAuDZ,SAAS,CAACa,6CAAjE,CAAjB;AACA,MAAMC,UAAU,GAAGT,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEU,QAAvC;AAEA,sBACEC;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA;AAAK,IAAA,SAAS,EAAC;AAAf,KAEIF,UAAU,gBACRE,6BAAC,MAAD;AACE,IAAA,SAAS,EAAC,6DADZ;AAEE,IAAA,GAAG,EAAEF,UAFP;AAGE,IAAA,GAAG,EAAC,qBAHN;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC;AALT,IADQ,gBASRE;AACE,IAAA,SAAS,EAAC,mEADZ;AAEE,IAAA,KAAK,EAAE;AAAEC,MAAAA,KAAK,EAAE,EAAT;AAAaC,MAAAA,MAAM,EAAE;AAArB;AAFT,kBAIEF,6BAAC,IAAD;AACE,IAAA,IAAI,EAAEG,SAAS,CAACC,QADlB;AAEE,IAAA,SAAS,EAAEC,UAAU,CAACC,OAFxB;AAGE,IAAA,KAAK,EAAC,MAHR;AAIE,IAAA,MAAM,EAAC;AAJT,IAJF,CAXN,eAwBEN,6BAAC,KAAD;AACE,IAAA,SAAS,EAAC,uDADZ;AAEE,IAAA,IAAI,EAAEO,eAAe,CAACC,GAFxB;AAGE,IAAA,KAAK,EAAEC,WAAW,CAACC;AAHrB,KAKGlB,KAAK,IAAIR,SAAS,CAAC2B,QALtB,CAxBF,eA+BEX,6BAAC,KAAD;AACE,IAAA,SAAS,EAAC,2DADZ;AAEE,IAAA,IAAI,EAAEO,eAAe,CAACK,MAFxB;AAGE,IAAA,KAAK,EAAEH,WAAW,CAACI;AAHrB,KAKGnB,QAAQ,IAAIV,SAAS,CAAC2B,QALzB,CA/BF,CADF,eAwCEX;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,UAAD;AACE,IAAA,SAAS,EAAC,0DADZ;AAEE,IAAA,KAAK,EAAC,MAFR;AAGE,IAAA,MAAM,EAAC,MAHT;AAIE,IAAA,OAAO,EAAEV;AAJX,kBAMEU,6BAAC,IAAD;AACE,IAAA,IAAI,EACFT,WAAW,GACTY,SAAS,CAACW,IADD,GAETX,SAAS,CAACY,OAJhB;AAME,IAAA,SAAS,EAAEV,UAAU,CAACW,OANxB;AAOE,IAAA,KAAK,EAAC,MAPR;AAQE,IAAA,MAAM,EAAC;AART,IANF,CADF,CAxCF,CADF;AA8DD;;;;"}
1
+ {"version":3,"file":"OpenChannelHeader.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelHeader/index.tsx"],"sourcesContent":["import './open-channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport Avatar from '../../../../ui/Avatar';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\n\nimport { kFormatter } from '../../context/utils';\n\nexport default function OpenchannelConversationHeader(): JSX.Element {\n const { stringSet } = useContext(LocalizationContext);\n const {\n currentOpenChannel,\n onChatHeaderActionClick,\n amIOperator,\n } = useOpenChannelContext();\n const title = currentOpenChannel?.name;\n const subTitle = `${kFormatter(currentOpenChannel?.participantCount)} ${stringSet.OPEN_CHANNEL_CONVERSATION__TITLE_PARTICIPANTS}`;\n const coverImage = currentOpenChannel?.coverUrl;\n\n return (\n <div className=\"sendbird-openchannel-conversation-header\">\n <div className=\"sendbird-openchannel-conversation-header__left\">\n {\n coverImage ? (\n <Avatar\n className=\"sendbird-openchannel-conversation-header__left__cover-image\"\n src={coverImage}\n alt=\"channel cover image\"\n width=\"32px\"\n height=\"32px\"\n />\n ) : (\n <div\n className=\"sendbird-openchannel-conversation-header__left__cover-image--icon\"\n style={{ width: 32, height: 32 }}\n >\n <Icon\n type={IconTypes.CHANNELS}\n fillColor={IconColors.CONTENT}\n width=\"18px\"\n height=\"18px\"\n />\n </div>\n )\n }\n <Label\n className=\"sendbird-openchannel-conversation-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {title || stringSet.NO_TITLE}\n </Label>\n <Label\n className=\"sendbird-openchannel-conversation-header__left__sub-title\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle || stringSet.NO_TITLE}\n </Label>\n </div>\n <div className=\"sendbird-openchannel-conversation-header__right\">\n <IconButton\n className=\"sendbird-openchannel-conversation-header__right__trigger\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={(\n amIOperator\n ? IconTypes.INFO\n : IconTypes.MEMBERS\n )}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n"],"names":["OpenchannelConversationHeader","stringSet","useContext","LocalizationContext","_a","useOpenChannelContext","currentOpenChannel","onChatHeaderActionClick","amIOperator","title","name","subTitle","kFormatter","participantCount","OPEN_CHANNEL_CONVERSATION__TITLE_PARTICIPANTS","coverImage","coverUrl","React","width","height","IconTypes","CHANNELS","IconColors","CONTENT","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","NO_TITLE","BODY_2","ONBACKGROUND_2","INFO","MEMBERS","PRIMARY"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;SAYwBA;AACd,MAAAC,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd;;AACF,MAAAC,KAIFC,qBAAqB,EAJnB;AAAA,MACJC,kBAAkB,wBADd;AAAA,MAEJC,uBAAuB,6BAFnB;AAAA,MAGJC,WAAW,iBAHP;;AAKN,MAAMC,KAAK,GAAGH,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEI,IAAlC;AACA,MAAMC,QAAQ,GAAG,SAAA,CAAGC,UAAU,CAACN,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEO,gBAArB,CAAb,KAAA,QAAA,CAAuDZ,SAAS,CAACa,6CAAjE,CAAjB;AACA,MAAMC,UAAU,GAAGT,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEU,QAAvC;AAEA,sBACEC;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA;AAAK,IAAA,SAAS,EAAC;AAAf,KAEIF,UAAU,gBACRE,6BAAC,MAAD;AACE,IAAA,SAAS,EAAC,6DADZ;AAEE,IAAA,GAAG,EAAEF,UAFP;AAGE,IAAA,GAAG,EAAC,qBAHN;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC;AALT,IADQ,gBASRE;AACE,IAAA,SAAS,EAAC,mEADZ;AAEE,IAAA,KAAK,EAAE;AAAEC,MAAAA,KAAK,EAAE,EAAT;AAAaC,MAAAA,MAAM,EAAE;AAArB;AAFT,kBAIEF,6BAAC,IAAD;AACE,IAAA,IAAI,EAAEG,SAAS,CAACC,QADlB;AAEE,IAAA,SAAS,EAAEC,UAAU,CAACC,OAFxB;AAGE,IAAA,KAAK,EAAC,MAHR;AAIE,IAAA,MAAM,EAAC;AAJT,IAJF,CAXN,eAwBEN,6BAAC,KAAD;AACE,IAAA,SAAS,EAAC,uDADZ;AAEE,IAAA,IAAI,EAAEO,eAAe,CAACC,GAFxB;AAGE,IAAA,KAAK,EAAEC,WAAW,CAACC;AAHrB,KAKGlB,KAAK,IAAIR,SAAS,CAAC2B,QALtB,CAxBF,eA+BEX,6BAAC,KAAD;AACE,IAAA,SAAS,EAAC,2DADZ;AAEE,IAAA,IAAI,EAAEO,eAAe,CAACK,MAFxB;AAGE,IAAA,KAAK,EAAEH,WAAW,CAACI;AAHrB,KAKGnB,QAAQ,IAAIV,SAAS,CAAC2B,QALzB,CA/BF,CADF,eAwCEX;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,UAAD;AACE,IAAA,SAAS,EAAC,0DADZ;AAEE,IAAA,KAAK,EAAC,MAFR;AAGE,IAAA,MAAM,EAAC,MAHT;AAIE,IAAA,OAAO,EAAEV;AAJX,kBAMEU,6BAAC,IAAD;AACE,IAAA,IAAI,EACFT,WAAW,GACTY,SAAS,CAACW,IADD,GAETX,SAAS,CAACY,OAJhB;AAME,IAAA,SAAS,EAAEV,UAAU,CAACW,OANxB;AAOE,IAAA,KAAK,EAAC,MAPR;AAQE,IAAA,MAAM,EAAC;AART,IANF,CADF,CAxCF,CADF;AA8DD;;;;"}
@@ -1,27 +1,28 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { a as LocalizationContext } from '../../LocalizationContext-bed38f81.js';
2
+ import { a as LocalizationContext } from '../../LocalizationContext-efdbcf74.js';
3
3
  import MessageInput from '../../ui/MessageInput.js';
4
- import { u as useOpenChannelContext } from '../../OpenChannelProvider-5b45f840.js';
5
- import '../../stringSet-07d51930.js';
6
- import '../../index-6e02fc15.js';
7
- import '../../_rollupPluginBabelHelpers-51451000.js';
4
+ import { u as useOpenChannelContext } from '../../OpenChannelProvider-355668d0.js';
5
+ import '../../stringSet-7b4e4f43.js';
6
+ import '../../index-9c1f610a.js';
7
+ import '../../_rollupPluginBabelHelpers-88b87e1d.js';
8
8
  import 'prop-types';
9
- import '../../const-5ab9bb9f.js';
10
- import '../../const-db8ec16d.js';
9
+ import '../../const-f1437524.js';
10
+ import '../../const-254817e2.js';
11
11
  import '../../ui/IconButton.js';
12
- import '../../index-a3d218da.js';
13
- import '../../index-33456100.js';
12
+ import '../../index-9009fde4.js';
13
+ import '../../index-883fb9bd.js';
14
14
  import '../../ui/MentionUserLabel.js';
15
15
  import '../../ui/Icon.js';
16
- import '../../index-c67f2f3b.js';
17
- import '../../tslib.es6-7a52c497.js';
18
- import '../../index-1984c852.js';
19
- import '../../UserProfileContext-5bc5ff98.js';
20
- import '../../compareIds-7eaf62a5.js';
21
- import '../../topics-a5f3f0e9.js';
22
- import '../../openChannel-92ffb0b5.js';
23
- import '../../__bundle-7dfccc8c-dc566919.js';
24
- import '../../uuid-b7da2ddf.js';
16
+ import '../../index-de047ed5.js';
17
+ import '../../tslib.es6-e9ef9b36.js';
18
+ import '../../index-96fd1749.js';
19
+ import '../../UserProfileContext-f5de1881.js';
20
+ import '../../compareIds-3705ecf0.js';
21
+ import '../../topics-b32d34f9.js';
22
+ import '@sendbird/chat';
23
+ import '../../openChannel-867b006c.js';
24
+ import '../../__bundle-7dfccc8c-eefadf8c.js';
25
+ import '../../uuid-17fb429f.js';
25
26
  import '../../useSendbirdStateContext.js';
26
27
  import '../../withSendbird.js';
27
28
 
@@ -1 +1 @@
1
- {"version":3,"file":"OpenChannelInput.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelInput/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\n\nconst MessageInputWrapper = (props, ref: React.RefObject<HTMLInputElement>): JSX.Element => {\n const {\n currentOpenChannel,\n disabled,\n handleSendMessage,\n handleFileUpload,\n } = useOpenChannelContext();\n\n const channel = currentOpenChannel;\n if (!channel) {\n return;\n }\n\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <div className=\"sendbird-openchannel-footer\">\n <MessageInput\n ref={ref}\n disabled={disabled}\n onSendMessage={handleSendMessage}\n onFileUpload={handleFileUpload}\n placeholder={(\n disabled\n && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED\n // add disabled because of muted state\n )}\n />\n </div>\n );\n};\n\nexport default React.forwardRef(MessageInputWrapper);\n"],"names":["MessageInputWrapper","props","ref","_a","useOpenChannelContext","currentOpenChannel","disabled","handleSendMessage","handleFileUpload","channel","stringSet","useContext","LocalizationContext","React","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","forwardRef"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAAQC,GAAR;AACpB,MAAAC,KAKFC,qBAAqB,EALnB;AAAA,MACJC,kBAAkB,wBADd;AAAA,MAEJC,QAAQ,cAFJ;AAAA,MAGJC,iBAAiB,uBAHb;AAAA,MAIJC,gBAAgB,sBAJZ;;AAON,MAAMC,OAAO,GAAGJ,kBAAhB;;AACA,MAAI,CAACI,OAAL,EAAc;AACZ;AACD;;AAEO,MAAAC,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd;AAER,sBACEC;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,YAAD;AACE,IAAA,GAAG,EAAEX,GADP;AAEE,IAAA,QAAQ,EAAEI,QAFZ;AAGE,IAAA,aAAa,EAAEC,iBAHjB;AAIE,IAAA,YAAY,EAAEC,gBAJhB;AAKE,IAAA,WAAW,EACTF,QAAQ,IACLI,SAAS,CAACI,qCAFJ;;AALb,IADF,CADF;AAeD,CA9BD;;AAgCA,oCAAeD,cAAK,CAACE,UAAN,CAAiBf,mBAAjB,CAAf;;;;"}
1
+ {"version":3,"file":"OpenChannelInput.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelInput/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\n\nconst MessageInputWrapper = (props, ref: React.RefObject<HTMLInputElement>): JSX.Element => {\n const {\n currentOpenChannel,\n disabled,\n handleSendMessage,\n handleFileUpload,\n } = useOpenChannelContext();\n\n const channel = currentOpenChannel;\n if (!channel) {\n return;\n }\n\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <div className=\"sendbird-openchannel-footer\">\n <MessageInput\n ref={ref}\n disabled={disabled}\n onSendMessage={handleSendMessage}\n onFileUpload={handleFileUpload}\n placeholder={(\n disabled\n && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED\n // add disabled because of muted state\n )}\n />\n </div>\n );\n};\n\nexport default React.forwardRef(MessageInputWrapper);\n"],"names":["MessageInputWrapper","props","ref","_a","useOpenChannelContext","currentOpenChannel","disabled","handleSendMessage","handleFileUpload","channel","stringSet","useContext","LocalizationContext","React","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","forwardRef"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAAQC,GAAR;AACpB,MAAAC,KAKFC,qBAAqB,EALnB;AAAA,MACJC,kBAAkB,wBADd;AAAA,MAEJC,QAAQ,cAFJ;AAAA,MAGJC,iBAAiB,uBAHb;AAAA,MAIJC,gBAAgB,sBAJZ;;AAON,MAAMC,OAAO,GAAGJ,kBAAhB;;AACA,MAAI,CAACI,OAAL,EAAc;AACZ;AACD;;AAEO,MAAAC,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd;AAER,sBACEC;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,YAAD;AACE,IAAA,GAAG,EAAEX,GADP;AAEE,IAAA,QAAQ,EAAEI,QAFZ;AAGE,IAAA,aAAa,EAAEC,iBAHjB;AAIE,IAAA,YAAY,EAAEC,gBAJhB;AAKE,IAAA,WAAW,EACTF,QAAQ,IACLI,SAAS,CAACI,qCAFJ;;AALb,IADF,CADF;AAeD,CA9BD;;AAgCA,oCAAeD,cAAK,CAACE,UAAN,CAAiBf,mBAAjB,CAAf;;;;"}
@@ -1,52 +1,53 @@
1
1
  import React__default, { useContext, useMemo, useState, useRef } from 'react';
2
- import { f as format } from '../../index-1984c852.js';
2
+ import { f as format } from '../../index-96fd1749.js';
3
3
  import OpenchannelUserMessage from '../../ui/OpenchannelUserMessage.js';
4
4
  import OpenChannelAdminMessage from '../../ui/OpenChannelAdminMessage.js';
5
5
  import OpenchannelOGMessage from '../../ui/OpenchannelOGMessage.js';
6
6
  import OpenchannelThumbnailMessage from '../../ui/OpenchannelThumbnailMessage.js';
7
7
  import OpenchannelFileMessage from '../../ui/OpenchannelFileMessage.js';
8
8
  import DateSeparator from '../../ui/DateSeparator.js';
9
- import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-33456100.js';
9
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-883fb9bd.js';
10
10
  import MessageInput from '../../ui/MessageInput.js';
11
11
  import FileViewer from '../../ui/FileViewer.js';
12
12
  import Modal from '../../ui/Modal.js';
13
- import { a as LocalizationContext, u as useLocalization } from '../../LocalizationContext-bed38f81.js';
14
- import { u as useOpenChannelContext } from '../../OpenChannelProvider-5b45f840.js';
13
+ import { a as LocalizationContext, u as useLocalization } from '../../LocalizationContext-efdbcf74.js';
14
+ import { u as useOpenChannelContext } from '../../OpenChannelProvider-355668d0.js';
15
15
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
16
- import '../../index-6e02fc15.js';
17
- import '../../tslib.es6-7a52c497.js';
16
+ import '../../index-9c1f610a.js';
17
+ import '../../tslib.es6-e9ef9b36.js';
18
18
  import '../../ui/Avatar.js';
19
19
  import '../../ui/ImageRenderer.js';
20
- import '../../_rollupPluginBabelHelpers-51451000.js';
20
+ import '../../_rollupPluginBabelHelpers-88b87e1d.js';
21
21
  import 'prop-types';
22
22
  import '../../ui/Icon.js';
23
- import '../../uuid-b7da2ddf.js';
23
+ import '../../uuid-17fb429f.js';
24
24
  import '../../ui/ContextMenu.js';
25
- import '../../index-c67f2f3b.js';
25
+ import '../../index-de047ed5.js';
26
26
  import 'react-dom';
27
27
  import '../../ui/SortByRow.js';
28
- import '../../stringSet-07d51930.js';
28
+ import '../../stringSet-7b4e4f43.js';
29
29
  import '../../ui/IconButton.js';
30
30
  import '../../ui/Loader.js';
31
31
  import '../../ui/UserProfile.js';
32
32
  import '../../withSendbird.js';
33
33
  import '../../sendbirdSelectors.js';
34
- import '../../topics-a5f3f0e9.js';
35
- import '../../utils-af217adb.js';
36
- import '../../index-a3d218da.js';
37
- import '../../UserProfileContext-5bc5ff98.js';
38
- import '../../utils-43a00393.js';
39
- import '../../openChannelUtils-e69f8484.js';
34
+ import '../../topics-b32d34f9.js';
35
+ import '../../utils-e2330639.js';
36
+ import '../../index-9009fde4.js';
37
+ import '../../UserProfileContext-f5de1881.js';
38
+ import '../../utils-d893f1a4.js';
39
+ import '../../openChannelUtils-a0c45927.js';
40
40
  import '../../ui/LinkLabel.js';
41
41
  import '../../ui/TextButton.js';
42
- import '../../color-04ed392d.js';
43
- import '../../const-5ab9bb9f.js';
44
- import '../../const-db8ec16d.js';
42
+ import '../../color-fc3db298.js';
43
+ import '../../const-f1437524.js';
44
+ import '../../const-254817e2.js';
45
45
  import '../../ui/MentionUserLabel.js';
46
- import '../../index-7ed67f3f.js';
47
- import '../../compareIds-7eaf62a5.js';
48
- import '../../openChannel-92ffb0b5.js';
49
- import '../../__bundle-7dfccc8c-dc566919.js';
46
+ import '../../index-4fb5d5cf.js';
47
+ import '../../compareIds-3705ecf0.js';
48
+ import '@sendbird/chat';
49
+ import '../../openChannel-867b006c.js';
50
+ import '../../__bundle-7dfccc8c-eefadf8c.js';
50
51
 
51
52
  function RemoveMessageModal(_a) {
52
53
  var onCloseModal = _a.onCloseModal,
@@ -88,11 +89,13 @@ var SendingMessageStatus = {
88
89
  PENDING: 'pending'
89
90
  };
90
91
  var getMessageType = function getMessageType(message) {
91
- if ((message === null || message === void 0 ? void 0 : message.isUserMessage()) || (message === null || message === void 0 ? void 0 : message.messageType) === 'user') {
92
+ var _a, _b;
93
+
94
+ if (((_a = message === null || message === void 0 ? void 0 : message.isUserMessage) === null || _a === void 0 ? void 0 : _a.call(message)) || (message === null || message === void 0 ? void 0 : message.messageType) === 'user') {
92
95
  return (message === null || message === void 0 ? void 0 : message.ogMetaData) ? MessageTypes.OG : MessageTypes.USER;
93
96
  }
94
97
 
95
- if (message === null || message === void 0 ? void 0 : message.isAdminMessage()) {
98
+ if ((_b = message === null || message === void 0 ? void 0 : message.isAdminMessage) === null || _b === void 0 ? void 0 : _b.call(message)) {
96
99
  return MessageTypes.ADMIN;
97
100
  }
98
101
 
@@ -1 +1 @@
1
- {"version":3,"file":"OpenChannelMessage.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessage/RemoveMessageModal.tsx","../../../src/ui/FileViewer/types.js","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/utils.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/index.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { ClientFileMessage, ClientUserMessage } from '../../../../index';\nimport Modal from '../../../../ui/Modal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props {\n onCloseModal(): void;\n onDeleteMessage(message: ClientUserMessage | ClientFileMessage, callback?: () => void): void;\n}\n\nexport default function RemoveMessageModal({\n onCloseModal,\n onDeleteMessage,\n}: Props): JSX.Element {\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <Modal\n onCancel={onCloseModal}\n onSubmit={onDeleteMessage}\n submitText={stringSet.MESSAGE_MENU__DELETE}\n titleText={stringSet.MODAL__DELETE_MESSAGE__TITLE}\n />\n );\n}\n","// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp', // not supported in IE\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const isImage = (type) => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type) => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type) => type === 'image/gif';\nexport const unSupported = (type) => !(isImage(type) || isVideo(type));\n\nexport default SUPPORTED_MIMES;\n","import { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { isImage, isVideo } from '../../../../ui/FileViewer/types';\n\nexport const MessageTypes = {\n ADMIN: 'ADMIN',\n USER: 'USER',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n};\n\nexport const SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport const getMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if ((message?.isUserMessage()) || message?.messageType === 'user') {\n return (message?.ogMetaData)\n ? MessageTypes.OG\n : MessageTypes.USER;\n }\n if (message?.isAdminMessage()) {\n return MessageTypes.ADMIN;\n }\n if (message?.messageType === 'file') {\n return (isImage((message as FileMessage).type) || isVideo((message as FileMessage).type))\n ? MessageTypes.THUMBNAIL\n : MessageTypes.FILE;\n }\n return MessageTypes.UNKNOWN;\n};\n\nexport default {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n};\n","import React, {\n useState,\n useRef,\n ReactElement,\n useMemo,\n} from 'react';\nimport { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { User } from '@sendbird/chat';\nimport format from 'date-fns/format';\n\nimport OpenChannelUserMessage from '../../../../ui/OpenchannelUserMessage';\nimport OpenChannelAdminMessage from '../../../../ui/OpenChannelAdminMessage';\nimport OpenChannelOGMessage from '../../../../ui/OpenchannelOGMessage';\nimport OpenChannelThumbnailMessage from '../../../../ui/OpenchannelThumbnailMessage';\nimport OpenChannelFileMessage from '../../../../ui/OpenchannelFileMessage';\n// import UnknownMessage from '../../../../ui/UnknownMessage';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport FileViewer from '../../../../ui/FileViewer';\n\nimport RemoveMessageModal from './RemoveMessageModal';\nimport {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n} from './utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport type { RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\nexport type OpenChannelMessageProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n message: UserMessage | FileMessage | AdminMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n editDisabled?: boolean;\n};\n\nexport default function MessagOpenChannelMessageeHoc(props: OpenChannelMessageProps): ReactElement {\n const {\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderMessage,\n } = props;\n\n const {\n currentOpenChannel,\n deleteMessage,\n updateMessage,\n resendMessage,\n } = useOpenChannelContext();\n const { dateLocale } = useLocalization();\n const editDisabled = currentOpenChannel?.isFrozen;\n\n const globalState = useSendbirdStateContext();\n const userId = globalState?.config?.userId;\n\n let sender: User = null;\n if (message?.messageType !== 'admin') {\n sender = (message as UserMessage | FileMessage)?.sender;\n }\n\n const RenderedMessage = useMemo(() => (props: RenderMessageProps) => {\n return (\n <>\n {\n renderMessage\n ? (renderMessage(props))\n : null\n }\n </>\n );\n }, [message, renderMessage]);\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const editMessageInputRef = useRef(null);\n\n let isByMe = false;\n\n if (sender && message?.messageType !== 'admin') {\n // pending and failed messages are by me\n isByMe = (userId === sender.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.PENDING)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.FAILED);\n }\n\n if (renderMessage && RenderedMessage) {\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n <RenderedMessage message={message} chainTop={chainTop} chainBottom={chainBottom} />\n </div>\n );\n }\n\n if (message?.messageType === 'user' && showEdit) {\n return (\n <MessageInput\n isEdit\n disabled={editDisabled}\n ref={editMessageInputRef}\n message={message as UserMessage}\n name={message?.messageId}\n onUpdateMessage={({ messageId, message }) => {\n updateMessage(messageId, message);\n setShowEdit(false);\n }}\n onCancelEdit={() => { setShowEdit(false); }}\n />\n );\n }\n\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n {/* date-separator */}\n {\n (hasSeparator && message?.createdAt) && (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message?.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n )\n }\n {/* Message */}\n {\n {\n [MessageTypes.ADMIN]: (() => {\n if (message?.messageType === 'admin') {\n return (\n <OpenChannelAdminMessage message={message as AdminMessage} />\n )\n }\n })(),\n [MessageTypes.FILE]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelFileMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.OG]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelOGMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n userId={userId}\n showEdit={setShowEdit}\n disabled={editDisabled}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.THUMBNAIL]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelThumbnailMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n onClick={setShowFileViewer}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.USER]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelUserMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n userId={userId}\n disabled={editDisabled}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.UNKNOWN]: (() => {\n return;\n // return (\n // <OpenChannelUnknownMessage message={message} />\n // );\n })(),\n }[getMessageType(message)]\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n onCloseModal={() => setShowRemove(false)}\n onDeleteMessage={() => {\n if (message?.messageType !== 'admin') {\n deleteMessage(message);\n }\n }}\n />\n )\n }\n {\n (showFileViewer && message?.messageType === 'file') && (\n <FileViewer\n onClose={() => setShowFileViewer(false)}\n message={message}\n onDelete={() => deleteMessage(message)}\n isByMe={isByMe}\n />\n )\n }\n {/* {\n !((message?.isFileMessage && message?.isFileMessage()) || message?.messageType === 'file')\n && !(message?.isAdminMessage && message?.isAdminMessage())\n && !(((message?.isUserMessage && message?.isUserMessage()) || message?.messageType === 'user'))\n && !(showFileViewer)\n && (\n <UnknownMessage\n message={message}\n isByMe={isByMe}\n showRemove={setShowRemove}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n )\n } */}\n </div>\n );\n}\n"],"names":["RemoveMessageModal","_a","onCloseModal","onDeleteMessage","stringSet","useContext","LocalizationContext","React","MESSAGE_MENU__DELETE","MODAL__DELETE_MESSAGE__TITLE","SUPPORTED_MIMES","IMAGE","VIDEO","isImage","type","indexOf","isVideo","MessageTypes","ADMIN","USER","FILE","THUMBNAIL","OG","UNKNOWN","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","getMessageType","message","isUserMessage","messageType","ogMetaData","isAdminMessage","MessagOpenChannelMessageeHoc","props","chainTop","chainBottom","hasSeparator","renderMessage","_c","useOpenChannelContext","currentOpenChannel","deleteMessage","updateMessage","resendMessage","dateLocale","useLocalization","editDisabled","isFrozen","globalState","useSendbirdStateContext","userId","config","sender","RenderedMessage","useMemo","_d","useState","showEdit","setShowEdit","_e","showRemove","setShowRemove","_f","showFileViewer","setShowFileViewer","editMessageInputRef","useRef","isByMe","sendingStatus","messageId","createdAt","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","locale","OpenChannelFileMessage","isOperator","OpenChannelOGMessage","OpenChannelThumbnailMessage","OpenChannelUserMessage"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAUwBA,mBAAmBC;MACzCC,YAAY;MACZC,eAAe;AAEP,MAAAC,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd;AAER,sBACEC,6BAAC,KAAD;AACE,IAAA,QAAQ,EAAEL,YADZ;AAEE,IAAA,QAAQ,EAAEC,eAFZ;AAGE,IAAA,UAAU,EAAEC,SAAS,CAACI,oBAHxB;AAIE,IAAA,SAAS,EAAEJ,SAAS,CAACK;AAJvB,IADF;AAQD;;ACxBD;AACA,IAAMC,eAAe,GAAG;AACtBC,EAAAA,KAAK,EAAE,CACL,YADK,EAEL,WAFK,EAGL,WAHK,EAIL,WAJK,EAKL,eALK,EAML,YANK;AAAA,GADe;AAStBC,EAAAA,KAAK,EAAE,CACL,YADK,EAEL,WAFK,EAGL,YAHK,EAIL,WAJK;AATe,CAAxB;AAiBO,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAACC,IAAD;AAAA,SAAUJ,eAAe,CAACC,KAAhB,CAAsBI,OAAtB,CAA8BD,IAA9B,KAAuC,CAAjD;AAAA,CAAhB;AACA,IAAME,OAAO,GAAG,SAAVA,OAAU,CAACF,IAAD;AAAA,SAAUJ,eAAe,CAACE,KAAhB,CAAsBG,OAAtB,CAA8BD,IAA9B,KAAuC,CAAjD;AAAA,CAAhB;;AChBA,IAAMG,YAAY,GAAG;AAC1BC,EAAAA,KAAK,EAAE,OADmB;AAE1BC,EAAAA,IAAI,EAAE,MAFoB;AAG1BC,EAAAA,IAAI,EAAE,MAHoB;AAI1BC,EAAAA,SAAS,EAAE,WAJe;AAK1BC,EAAAA,EAAE,EAAE,IALsB;AAM1BC,EAAAA,OAAO,EAAE;AANiB,CAArB;AASA,IAAMC,oBAAoB,GAAG;AAClCC,EAAAA,IAAI,EAAE,MAD4B;AAElCC,EAAAA,SAAS,EAAE,WAFuB;AAGlCC,EAAAA,MAAM,EAAE,QAH0B;AAIlCC,EAAAA,OAAO,EAAE;AAJyB,CAA7B;AAOA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACC,OAAD;AAC5B,MAAI,CAACA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEC,aAAT,EAAD,KAA8B,CAAAD,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,MAA3D,EAAmE;AACjE,WAAO,CAACF,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEG,UAAV,IACHhB,YAAY,CAACK,EADV,GAEHL,YAAY,CAACE,IAFjB;AAGD;;AACD,MAAIW,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEI,cAAT,EAAJ,EAA+B;AAC7B,WAAOjB,YAAY,CAACC,KAApB;AACD;;AACD,MAAI,CAAAY,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,MAA7B,EAAqC;AACnC,WAAQnB,OAAO,CAAEiB,OAAuB,CAAChB,IAA1B,CAAP,IAA0CE,OAAO,CAAEc,OAAuB,CAAChB,IAA1B,CAAlD,GACHG,YAAY,CAACI,SADV,GAEHJ,YAAY,CAACG,IAFjB;AAGD;;AACD,SAAOH,YAAY,CAACM,OAApB;AACD,CAfM;;SCuBiBY,6BAA6BC;;;;;AAEjD,MAAAN,OAAO,GAKLM,KAAK,QALP;AAAA,MACAC,QAAQ,GAIND,KAAK,SALP;AAAA,MAEAE,WAAW,GAGTF,KAAK,YALP;AAAA,MAGAG,YAAY,GAEVH,KAAK,aALP;AAAA,MAIAI,aAAa,GACXJ,KAAK,cALP;;AAOI,MAAAK,KAKFC,qBAAqB,EALnB;AAAA,MACJC,kBAAkB,wBADd;AAAA,MAEJC,aAAa,mBAFT;AAAA,MAGJC,aAAa,mBAHT;AAAA,MAIJC,aAAa,mBAJT;;AAME,MAAAC,UAAU,GAAKC,eAAe,aAA9B;AACR,MAAMC,YAAY,GAAGN,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEO,QAAzC;AAEA,MAAMC,WAAW,GAAGC,uBAAuB,EAA3C;AACA,MAAMC,MAAM,GAAG,MAAAF,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEG,MAAb,UAAA,iBAAA,SAAA,MAAqBD,MAApC;AAEA,MAAIE,MAAM,GAAS,IAAnB;;AACA,MAAI,CAAAzB,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,OAA7B,EAAsC;AACpCuB,IAAAA,MAAM,GAAIzB,OAAqC,SAArC,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAgCyB,MAAjD;AACD;;AAED,MAAMC,eAAe,GAAGC,OAAO,CAAC;AAAM,WAAA,UAACrB,KAAD;AACpC,0BACE7B,4DAEIiC,aAAa,GACRA,aAAa,CAACJ,KAAD,CADL,GAET,IAJR,CADF;AASD,KAVqC;AAUrC,GAV8B,EAU5B,CAACN,OAAD,EAAUU,aAAV,CAV4B,CAA/B;;AAYM,MAAAkB,KAA0BC,QAAQ,CAAC,KAAD,CAAlC;AAAA,MAACC,QAAQ,QAAT;AAAA,MAAWC,WAAW,QAAtB;;AACA,MAAAC,KAA8BH,QAAQ,CAAC,KAAD,CAAtC;AAAA,MAACI,UAAU,QAAX;AAAA,MAAaC,aAAa,QAA1B;;AACA,MAAAC,KAAsCN,QAAQ,CAAC,KAAD,CAA9C;AAAA,MAACO,cAAc,QAAf;AAAA,MAAiBC,iBAAiB,QAAlC;;AACN,MAAMC,mBAAmB,GAAGC,MAAM,CAAC,IAAD,CAAlC;AAEA,MAAIC,MAAM,GAAG,KAAb;;AAEA,MAAIf,MAAM,IAAI,CAAAzB,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,OAAvC,EAAgD;AAC9C;AACAsC,IAAAA,MAAM,GAAIjB,MAAM,KAAKE,MAAM,CAACF,MAAnB,IACH,CAACvB,OAAqC,SAArC,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAgCyC,aAAxC,MAA0D/C,oBAAoB,CAACI,OAD5E,IAEH,CAACE,OAAqC,SAArC,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAgCyC,aAAxC,MAA0D/C,oBAAoB,CAACG,MAFrF;AAGD;;AAED,MAAIa,aAAa,IAAIgB,eAArB,EAAsC;AACpC,wBACEjD;AAAK,MAAA,SAAS,EAAC;AAAf,oBACEA,6BAAC,eAAD;AAAiB,MAAA,OAAO,EAAEuB,OAA1B;AAAmC,MAAA,QAAQ,EAAEO,QAA7C;AAAuD,MAAA,WAAW,EAAEC;AAApE,MADF,CADF;AAKD;;AAED,MAAI,CAAAR,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,MAAzB,IAAmC4B,QAAvC,EAAiD;AAC/C,wBACErD,6BAAC,YAAD;AACE,MAAA,MAAM,MADR;AAEE,MAAA,QAAQ,EAAE0C,YAFZ;AAGE,MAAA,GAAG,EAAEmB,mBAHP;AAIE,MAAA,OAAO,EAAEtC,OAJX;AAKE,MAAA,IAAI,EAAEA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE0C,SALjB;AAME,MAAA,eAAe,EAAE,yBAACvE,EAAD;YAAGuE,SAAS;YAAE1C,OAAO;AACpCe,QAAAA,aAAa,CAAC2B,SAAD,EAAY1C,OAAZ,CAAb;AACA+B,QAAAA,WAAW,CAAC,KAAD,CAAX;AACD,OATH;AAUE,MAAA,YAAY,EAAE;AAAQA,QAAAA,WAAW,CAAC,KAAD,CAAX;AAAqB;AAV7C,MADF;AAcD;;AAED,sBACEtD;AAAK,IAAA,SAAS,EAAC;AAAf,KAGKgC,YAAY,KAAIT,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE2C,SAAb,CAAb,iBACElE,6BAAC,aAAD,qBACEA,6BAAC,KAAD;AAAO,IAAA,IAAI,EAAEmE,eAAe,CAACC,SAA7B;AAAwC,IAAA,KAAK,EAAEC,WAAW,CAACC;AAA3D,KACGC,MAAM,CAAChD,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE2C,SAAV,EAAqB,eAArB,EAAsC;AAC3CM,IAAAA,MAAM,EAAEhC;AADmC,GAAtC,CADT,CADF,CAJN,EAeI,UACE9C,GAACgB,YAAY,CAACC,MAAd,GAAuB;AACrB,QAAI,CAAAY,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,OAA7B,EAAsC;AACpC,0BACEzB,6BAAC,uBAAD;AAAyB,QAAA,OAAO,EAAEuB;AAAlC,QADF;AAGD;AACF,GANqB,IAOtB7B,GAACgB,YAAY,CAACG,KAAd,GAAsB;;;AACpB,QAAI,CAAAU,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,MAA7B,EAAqC;AACnC,0BACEzB,6BAACyE,sBAAD;AACE,QAAA,OAAO,EAAElD,OADX;AAEE,QAAA,UAAU,EAAEa,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEsC,UAApB,CAA+B,MAACnD,OAAuB,SAAvB,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAkByB,MAA1B,UAAA,iBAAA,SAAA,MAAkCF,MAAjE,CAFd;AAGE,QAAA,QAAQ,EAAEJ,YAHZ;AAIE,QAAA,MAAM,EAAEI,MAJV;AAKE,QAAA,UAAU,EAAEW,aALd;AAME,QAAA,aAAa,EAAElB,aANjB;AAOE,QAAA,QAAQ,EAAET,QAPZ;AAQE,QAAA,WAAW,EAAEC;AARf,QADF;AAYD;;AACD;AACD,GAhBoB,IAiBrBrC,GAACgB,YAAY,CAACK,GAAd,GAAoB;;;AAClB,QAAI,CAAAQ,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,MAA7B,EAAqC;AACnC,0BACEzB,6BAAC2E,oBAAD;AACE,QAAA,OAAO,EAAEpD,OADX;AAEE,QAAA,UAAU,EAAEa,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEsC,UAApB,CAA+B,MAACnD,OAAuB,SAAvB,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAkByB,MAA1B,UAAA,iBAAA,SAAA,MAAkCF,MAAjE,CAFd;AAGE,QAAA,MAAM,EAAEA,MAHV;AAIE,QAAA,QAAQ,EAAEQ,WAJZ;AAKE,QAAA,QAAQ,EAAEZ,YALZ;AAME,QAAA,UAAU,EAAEe,aANd;AAOE,QAAA,aAAa,EAAElB,aAPjB;AAQE,QAAA,QAAQ,EAAET,QARZ;AASE,QAAA,WAAW,EAAEC;AATf,QADF;AAaD;;AACD;AACD,GAjBkB,IAkBnBrC,GAACgB,YAAY,CAACI,UAAd,GAA2B;;;AACzB,QAAI,CAAAS,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,MAA7B,EAAqC;AACnC,0BACEzB,6BAAC4E,2BAAD;AACE,QAAA,OAAO,EAAErD,OADX;AAEE,QAAA,UAAU,EAAEa,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEsC,UAApB,CAA+B,MAACnD,OAAuB,SAAvB,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAkByB,MAA1B,UAAA,iBAAA,SAAA,MAAkCF,MAAjE,CAFd;AAGE,QAAA,QAAQ,EAAEJ,YAHZ;AAIE,QAAA,MAAM,EAAEI,MAJV;AAKE,QAAA,UAAU,EAAEW,aALd;AAME,QAAA,aAAa,EAAElB,aANjB;AAOE,QAAA,OAAO,EAAEqB,iBAPX;AAQE,QAAA,QAAQ,EAAE9B,QARZ;AASE,QAAA,WAAW,EAAEC;AATf,QADF;AAaD;;AACD;AACD,GAjByB,IAkB1BrC,GAACgB,YAAY,CAACE,KAAd,GAAsB;;;AACpB,QAAI,CAAAW,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,MAA7B,EAAqC;AACnC,0BACEzB,6BAAC6E,sBAAD;AACE,QAAA,OAAO,EAAEtD,OADX;AAEE,QAAA,UAAU,EAAEa,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEsC,UAApB,CAA+B,MAACnD,OAAuB,SAAvB,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAkByB,MAA1B,UAAA,iBAAA,SAAA,MAAkCF,MAAjE,CAFd;AAGE,QAAA,MAAM,EAAEA,MAHV;AAIE,QAAA,QAAQ,EAAEJ,YAJZ;AAKE,QAAA,QAAQ,EAAEY,WALZ;AAME,QAAA,UAAU,EAAEG,aANd;AAOE,QAAA,aAAa,EAAElB,aAPjB;AAQE,QAAA,QAAQ,EAAET,QARZ;AASE,QAAA,WAAW,EAAEC;AATf,QADF;AAaD;;AACD;AACD,GAjBoB,IAkBrBrC,GAACgB,YAAY,CAACM,QAAd,GAAyB;AACvB;AAEA;AACA;AACD,GALuB,MA/E1B,EAqFEM,cAAc,CAACC,OAAD,CArFhB,CAfJ,EAwGIiC,UAAU,iBACRxD,6BAAC,kBAAD;AACE,IAAA,YAAY,EAAE;AAAM,aAAAyD,aAAa,CAAC,KAAD,CAAb;AAAoB,KAD1C;AAEE,IAAA,eAAe,EAAE;AACf,UAAI,CAAAlC,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,OAA7B,EAAsC;AACpCY,QAAAA,aAAa,CAACd,OAAD,CAAb;AACD;AACF;AANH,IAzGN,EAoHKoC,cAAc,IAAI,CAAApC,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEE,WAAT,MAAyB,MAA5C,iBACEzB,6BAAC,UAAD;AACE,IAAA,OAAO,EAAE;AAAM,aAAA4D,iBAAiB,CAAC,KAAD,CAAjB;AAAwB,KADzC;AAEE,IAAA,OAAO,EAAErC,OAFX;AAGE,IAAA,QAAQ,EAAE;AAAM,aAAAc,aAAa,CAACd,OAAD,CAAb;AAAsB,KAHxC;AAIE,IAAA,MAAM,EAAEwC;AAJV,IArHN,CADF;AA+ID;;;;"}
1
+ {"version":3,"file":"OpenChannelMessage.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessage/RemoveMessageModal.tsx","../../../src/ui/FileViewer/types.js","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/utils.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/index.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { ClientFileMessage, ClientUserMessage } from '../../../../index';\nimport Modal from '../../../../ui/Modal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props {\n onCloseModal(): void;\n onDeleteMessage(message: ClientUserMessage | ClientFileMessage, callback?: () => void): void;\n}\n\nexport default function RemoveMessageModal({\n onCloseModal,\n onDeleteMessage,\n}: Props): JSX.Element {\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <Modal\n onCancel={onCloseModal}\n onSubmit={onDeleteMessage}\n submitText={stringSet.MESSAGE_MENU__DELETE}\n titleText={stringSet.MODAL__DELETE_MESSAGE__TITLE}\n />\n );\n}\n","// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp', // not supported in IE\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const isImage = (type) => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type) => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type) => type === 'image/gif';\nexport const unSupported = (type) => !(isImage(type) || isVideo(type));\n\nexport default SUPPORTED_MIMES;\n","import { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { isImage, isVideo } from '../../../../ui/FileViewer/types';\n\nexport const MessageTypes = {\n ADMIN: 'ADMIN',\n USER: 'USER',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n};\n\nexport const SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport const getMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if ((message?.isUserMessage?.()) || message?.messageType === 'user') {\n return (message?.ogMetaData)\n ? MessageTypes.OG\n : MessageTypes.USER;\n }\n if (message?.isAdminMessage?.()) {\n return MessageTypes.ADMIN;\n }\n if (message?.messageType === 'file') {\n return (isImage((message as FileMessage).type) || isVideo((message as FileMessage).type))\n ? MessageTypes.THUMBNAIL\n : MessageTypes.FILE;\n }\n return MessageTypes.UNKNOWN;\n};\n\nexport default {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n};\n","import React, {\n useState,\n useRef,\n ReactElement,\n useMemo,\n} from 'react';\nimport { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { User } from '@sendbird/chat';\nimport format from 'date-fns/format';\n\nimport OpenChannelUserMessage from '../../../../ui/OpenchannelUserMessage';\nimport OpenChannelAdminMessage from '../../../../ui/OpenChannelAdminMessage';\nimport OpenChannelOGMessage from '../../../../ui/OpenchannelOGMessage';\nimport OpenChannelThumbnailMessage from '../../../../ui/OpenchannelThumbnailMessage';\nimport OpenChannelFileMessage from '../../../../ui/OpenchannelFileMessage';\n// import UnknownMessage from '../../../../ui/UnknownMessage';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport FileViewer from '../../../../ui/FileViewer';\n\nimport RemoveMessageModal from './RemoveMessageModal';\nimport {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n} from './utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport type { RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\nexport type OpenChannelMessageProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n message: UserMessage | FileMessage | AdminMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n editDisabled?: boolean;\n};\n\nexport default function MessagOpenChannelMessageeHoc(props: OpenChannelMessageProps): ReactElement {\n const {\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderMessage,\n } = props;\n\n const {\n currentOpenChannel,\n deleteMessage,\n updateMessage,\n resendMessage,\n } = useOpenChannelContext();\n const { dateLocale } = useLocalization();\n const editDisabled = currentOpenChannel?.isFrozen;\n\n const globalState = useSendbirdStateContext();\n const userId = globalState?.config?.userId;\n\n let sender: User = null;\n if (message?.messageType !== 'admin') {\n sender = (message as UserMessage | FileMessage)?.sender;\n }\n\n const RenderedMessage = useMemo(() => (props: RenderMessageProps) => {\n return (\n <>\n {\n renderMessage\n ? (renderMessage(props))\n : null\n }\n </>\n );\n }, [message, renderMessage]);\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const editMessageInputRef = useRef(null);\n\n let isByMe = false;\n\n if (sender && message?.messageType !== 'admin') {\n // pending and failed messages are by me\n isByMe = (userId === sender.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.PENDING)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.FAILED);\n }\n\n if (renderMessage && RenderedMessage) {\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n <RenderedMessage message={message} chainTop={chainTop} chainBottom={chainBottom} />\n </div>\n );\n }\n\n if (message?.messageType === 'user' && showEdit) {\n return (\n <MessageInput\n isEdit\n disabled={editDisabled}\n ref={editMessageInputRef}\n message={message as UserMessage}\n name={message?.messageId}\n onUpdateMessage={({ messageId, message }) => {\n updateMessage(messageId, message);\n setShowEdit(false);\n }}\n onCancelEdit={() => { setShowEdit(false); }}\n />\n );\n }\n\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n {/* date-separator */}\n {\n (hasSeparator && message?.createdAt) && (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message?.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n )\n }\n {/* Message */}\n {\n {\n [MessageTypes.ADMIN]: (() => {\n if (message?.messageType === 'admin') {\n return (\n <OpenChannelAdminMessage message={message as AdminMessage} />\n )\n }\n })(),\n [MessageTypes.FILE]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelFileMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.OG]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelOGMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n userId={userId}\n showEdit={setShowEdit}\n disabled={editDisabled}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.THUMBNAIL]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelThumbnailMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n onClick={setShowFileViewer}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.USER]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelUserMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n userId={userId}\n disabled={editDisabled}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.UNKNOWN]: (() => {\n return;\n // return (\n // <OpenChannelUnknownMessage message={message} />\n // );\n })(),\n }[getMessageType(message)]\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n onCloseModal={() => setShowRemove(false)}\n onDeleteMessage={() => {\n if (message?.messageType !== 'admin') {\n deleteMessage(message);\n }\n }}\n />\n )\n }\n {\n (showFileViewer && message?.messageType === 'file') && (\n <FileViewer\n onClose={() => setShowFileViewer(false)}\n message={message}\n onDelete={() => deleteMessage(message)}\n isByMe={isByMe}\n />\n )\n }\n {/* {\n !((message?.isFileMessage && message?.isFileMessage()) || message?.messageType === 'file')\n && !(message?.isAdminMessage && message?.isAdminMessage())\n && !(((message?.isUserMessage && message?.isUserMessage()) || message?.messageType === 'user'))\n && !(showFileViewer)\n && (\n <UnknownMessage\n message={message}\n isByMe={isByMe}\n showRemove={setShowRemove}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n )\n } */}\n </div>\n );\n}\n"],"names":["RemoveMessageModal","_a","onCloseModal","onDeleteMessage","stringSet","useContext","LocalizationContext","React","MESSAGE_MENU__DELETE","MODAL__DELETE_MESSAGE__TITLE","SUPPORTED_MIMES","IMAGE","VIDEO","isImage","type","indexOf","isVideo","MessageTypes","ADMIN","USER","FILE","THUMBNAIL","OG","UNKNOWN","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","getMessageType","message","isUserMessage","messageType","ogMetaData","isAdminMessage","MessagOpenChannelMessageeHoc","props","chainTop","chainBottom","hasSeparator","renderMessage","_c","useOpenChannelContext","currentOpenChannel","deleteMessage","updateMessage","resendMessage","dateLocale","useLocalization","editDisabled","isFrozen","globalState","useSendbirdStateContext","userId","config","sender","RenderedMessage","useMemo","_d","useState","showEdit","setShowEdit","_e","showRemove","setShowRemove","_f","showFileViewer","setShowFileViewer","editMessageInputRef","useRef","isByMe","sendingStatus","messageId","createdAt","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","locale","OpenChannelFileMessage","isOperator","OpenChannelOGMessage","OpenChannelThumbnailMessage","OpenChannelUserMessage"],"mappings":"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"}
@@ -1,54 +1,55 @@
1
1
  import React__default, { useRef, useState, useMemo } from 'react';
2
- import { i as isSameDay } from '../../index-49108fb4.js';
2
+ import { i as isSameDay } from '../../index-e0042297.js';
3
3
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
4
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-dfc65ccf.js';
5
- import { u as useOpenChannelContext, c as compareMessagesForGrouping } from '../../OpenChannelProvider-5b45f840.js';
4
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-bd1f3e68.js';
5
+ import { u as useOpenChannelContext, c as compareMessagesForGrouping } from '../../OpenChannelProvider-355668d0.js';
6
6
  import MessagOpenChannelMessageeHoc from './OpenChannelMessage.js';
7
- import '../../index-1984c852.js';
8
- import '../../index-6e02fc15.js';
9
- import '../../_rollupPluginBabelHelpers-51451000.js';
7
+ import '../../index-96fd1749.js';
8
+ import '../../index-9c1f610a.js';
9
+ import '../../_rollupPluginBabelHelpers-88b87e1d.js';
10
10
  import 'prop-types';
11
11
  import '../../ui/Loader.js';
12
- import '../../LocalizationContext-bed38f81.js';
13
- import '../../stringSet-07d51930.js';
14
- import '../../index-33456100.js';
15
- import '../../UserProfileContext-5bc5ff98.js';
16
- import '../../tslib.es6-7a52c497.js';
17
- import '../../compareIds-7eaf62a5.js';
18
- import '../../topics-a5f3f0e9.js';
19
- import '../../openChannel-92ffb0b5.js';
20
- import '../../__bundle-7dfccc8c-dc566919.js';
21
- import '../../uuid-b7da2ddf.js';
12
+ import '../../LocalizationContext-efdbcf74.js';
13
+ import '../../stringSet-7b4e4f43.js';
14
+ import '../../index-883fb9bd.js';
15
+ import '../../UserProfileContext-f5de1881.js';
16
+ import '../../tslib.es6-e9ef9b36.js';
17
+ import '../../compareIds-3705ecf0.js';
18
+ import '../../topics-b32d34f9.js';
19
+ import '@sendbird/chat';
20
+ import '../../openChannel-867b006c.js';
21
+ import '../../__bundle-7dfccc8c-eefadf8c.js';
22
+ import '../../uuid-17fb429f.js';
22
23
  import '../../useSendbirdStateContext.js';
23
24
  import '../../withSendbird.js';
24
25
  import '../../ui/OpenchannelUserMessage.js';
25
26
  import '../../ui/Avatar.js';
26
27
  import '../../ui/ImageRenderer.js';
27
28
  import '../../ui/ContextMenu.js';
28
- import '../../index-c67f2f3b.js';
29
+ import '../../index-de047ed5.js';
29
30
  import 'react-dom';
30
31
  import '../../ui/SortByRow.js';
31
32
  import '../../ui/IconButton.js';
32
33
  import '../../ui/UserProfile.js';
33
34
  import '../../sendbirdSelectors.js';
34
- import '../../utils-af217adb.js';
35
- import '../../index-a3d218da.js';
36
- import '../../utils-43a00393.js';
37
- import '../../openChannelUtils-e69f8484.js';
35
+ import '../../utils-e2330639.js';
36
+ import '../../index-9009fde4.js';
37
+ import '../../utils-d893f1a4.js';
38
+ import '../../openChannelUtils-a0c45927.js';
38
39
  import '../../ui/OpenChannelAdminMessage.js';
39
40
  import '../../ui/OpenchannelOGMessage.js';
40
41
  import '../../ui/LinkLabel.js';
41
42
  import '../../ui/OpenchannelThumbnailMessage.js';
42
43
  import '../../ui/OpenchannelFileMessage.js';
43
44
  import '../../ui/TextButton.js';
44
- import '../../color-04ed392d.js';
45
+ import '../../color-fc3db298.js';
45
46
  import '../../ui/DateSeparator.js';
46
47
  import '../../ui/MessageInput.js';
47
- import '../../const-5ab9bb9f.js';
48
- import '../../const-db8ec16d.js';
48
+ import '../../const-f1437524.js';
49
+ import '../../const-254817e2.js';
49
50
  import '../../ui/MentionUserLabel.js';
50
51
  import '../../ui/FileViewer.js';
51
- import '../../index-7ed67f3f.js';
52
+ import '../../index-4fb5d5cf.js';
52
53
  import '../../ui/Modal.js';
53
54
 
54
55
  function OpenchannelMessageList(props, ref) {
@@ -1 +1 @@
1
- {"version":3,"file":"OpenChannelMessageList.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessageList/index.tsx"],"sourcesContent":["import './openchannel-message-list.scss';\n\nimport React, { ReactElement, useRef, useState, useMemo } from 'react';\nimport isSameDay from 'date-fns/isSameDay';\n\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\n\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { compareMessagesForGrouping } from '../../context/utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport OpenChannelMessage from '../OpenChannelMessage';\nimport { RenderMessageProps } from '../../../../types';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nexport type OpenchannelMessageListProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n renderPlaceHolderEmptyList?: () => React.ReactElement;\n}\n\nfunction OpenchannelMessageList(\n props: OpenchannelMessageListProps,\n ref: React.RefObject<HTMLDivElement>,\n): ReactElement {\n const {\n isMessageGroupingEnabled = true,\n allMessages,\n hasMore,\n onScroll,\n } = useOpenChannelContext();\n const scrollRef = ref || useRef(null);\n const [showScrollDownButton, setShowScrollDownButton] = useState(false);\n\n const handleOnScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = element;\n if (scrollHeight > scrollTop + clientHeight + 1) {\n setShowScrollDownButton(true);\n } else {\n setShowScrollDownButton(false);\n }\n\n if (!hasMore) {\n return;\n }\n if (scrollTop === 0) {\n const nodes = scrollRef.current.querySelectorAll('.sendbird-msg--scroll-ref');\n const first = nodes && nodes[0];\n onScroll(() => {\n try {\n first.scrollIntoView();\n } catch (error) { }\n });\n }\n };\n\n const scrollToBottom = () => {\n if (scrollRef && scrollRef.current) {\n scrollRef.current.scrollTo(0, scrollRef.current.scrollHeight);\n setShowScrollDownButton(false);\n }\n };\n\n const hasMessage = useMemo(() => {\n return allMessages.length > 0;\n }, [allMessages.length]);\n\n return (\n <div className=\"sendbird-openchannel-conversation-scroll\">\n <div className=\"sendbird-openchannel-conversation-scroll__container\">\n <div className=\"sendbird-openchannel-conversation-scroll__container__padding\" />\n <div\n className={[\n 'sendbird-openchannel-conversation-scroll__container__item-container',\n hasMessage ? '' : 'no-messages',\n ].join(' ')}\n onScroll={handleOnScroll}\n ref={scrollRef}\n >\n {\n hasMessage\n ? (\n allMessages.map((message, index) => {\n const previousMessage = allMessages[index - 1];\n const nextMessage = allMessages[index - 1];\n\n const previousMessageCreatedAt = previousMessage && previousMessage.createdAt;\n const currentCreatedAt = message?.createdAt;\n // https://stackoverflow.com/a/41855608\n const hasSeparator = !(previousMessageCreatedAt && (\n isSameDay(currentCreatedAt, previousMessageCreatedAt)\n ));\n\n const [chainTop, chainBottom] = isMessageGroupingEnabled\n ? compareMessagesForGrouping(previousMessage, message, nextMessage)\n : [false, false];\n return (\n <OpenChannelMessage\n key={message?.messageId || (message as UserMessage | FileMessage)?.reqId}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n hasSeparator={hasSeparator}\n renderMessage={props?.renderMessage}\n />\n )\n })\n )\n : props?.renderPlaceHolderEmptyList?.() || (\n <PlaceHolder\n className=\"sendbird-openchannel-conversation-scroll__container__place-holder\"\n type={PlaceHolderTypes.NO_MESSAGES}\n />\n )\n }\n </div>\n </div>\n {\n showScrollDownButton && (\n <div\n className=\"sendbird-openchannel-conversation-scroll__container__scroll-bottom-button\"\n onClick={scrollToBottom}\n onKeyDown={scrollToBottom}\n tabIndex={0}\n role=\"button\"\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.CONTENT}\n />\n </div>\n )\n }\n </div>\n );\n}\n\nexport default React.forwardRef(OpenchannelMessageList);\n"],"names":["OpenchannelMessageList","props","ref","_b","useOpenChannelContext","_c","isMessageGroupingEnabled","allMessages","hasMore","onScroll","scrollRef","useRef","_d","useState","showScrollDownButton","setShowScrollDownButton","handleOnScroll","e","element","target","scrollTop","scrollHeight","clientHeight","nodes","current","querySelectorAll","first_1","scrollIntoView","error","scrollToBottom","scrollTo","hasMessage","useMemo","length","React","join","map","message","index","previousMessage","nextMessage","previousMessageCreatedAt","createdAt","currentCreatedAt","hasSeparator","isSameDay","_a","compareMessagesForGrouping","chainTop","chainBottom","OpenChannelMessage","messageId","reqId","renderMessage","renderPlaceHolderEmptyList","PlaceHolderTypes","NO_MESSAGES","IconTypes","CHEVRON_DOWN","IconColors","CONTENT","forwardRef"],"mappings":"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"}
1
+ {"version":3,"file":"OpenChannelMessageList.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessageList/index.tsx"],"sourcesContent":["import './openchannel-message-list.scss';\n\nimport React, { ReactElement, useRef, useState, useMemo } from 'react';\nimport isSameDay from 'date-fns/isSameDay';\n\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\n\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { compareMessagesForGrouping } from '../../context/utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport OpenChannelMessage from '../OpenChannelMessage';\nimport { RenderMessageProps } from '../../../../types';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nexport type OpenchannelMessageListProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n renderPlaceHolderEmptyList?: () => React.ReactElement;\n}\n\nfunction OpenchannelMessageList(\n props: OpenchannelMessageListProps,\n ref: React.RefObject<HTMLDivElement>,\n): ReactElement {\n const {\n isMessageGroupingEnabled = true,\n allMessages,\n hasMore,\n onScroll,\n } = useOpenChannelContext();\n const scrollRef = ref || useRef(null);\n const [showScrollDownButton, setShowScrollDownButton] = useState(false);\n\n const handleOnScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = element;\n if (scrollHeight > scrollTop + clientHeight + 1) {\n setShowScrollDownButton(true);\n } else {\n setShowScrollDownButton(false);\n }\n\n if (!hasMore) {\n return;\n }\n if (scrollTop === 0) {\n const nodes = scrollRef.current.querySelectorAll('.sendbird-msg--scroll-ref');\n const first = nodes && nodes[0];\n onScroll(() => {\n try {\n first.scrollIntoView();\n } catch (error) { }\n });\n }\n };\n\n const scrollToBottom = () => {\n if (scrollRef && scrollRef.current) {\n scrollRef.current.scrollTo(0, scrollRef.current.scrollHeight);\n setShowScrollDownButton(false);\n }\n };\n\n const hasMessage = useMemo(() => {\n return allMessages.length > 0;\n }, [allMessages.length]);\n\n return (\n <div className=\"sendbird-openchannel-conversation-scroll\">\n <div className=\"sendbird-openchannel-conversation-scroll__container\">\n <div className=\"sendbird-openchannel-conversation-scroll__container__padding\" />\n <div\n className={[\n 'sendbird-openchannel-conversation-scroll__container__item-container',\n hasMessage ? '' : 'no-messages',\n ].join(' ')}\n onScroll={handleOnScroll}\n ref={scrollRef}\n >\n {\n hasMessage\n ? (\n allMessages.map((message, index) => {\n const previousMessage = allMessages[index - 1];\n const nextMessage = allMessages[index - 1];\n\n const previousMessageCreatedAt = previousMessage && previousMessage.createdAt;\n const currentCreatedAt = message?.createdAt;\n // https://stackoverflow.com/a/41855608\n const hasSeparator = !(previousMessageCreatedAt && (\n isSameDay(currentCreatedAt, previousMessageCreatedAt)\n ));\n\n const [chainTop, chainBottom] = isMessageGroupingEnabled\n ? compareMessagesForGrouping(previousMessage, message, nextMessage)\n : [false, false];\n return (\n <OpenChannelMessage\n key={message?.messageId || (message as UserMessage | FileMessage)?.reqId}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n hasSeparator={hasSeparator}\n renderMessage={props?.renderMessage}\n />\n )\n })\n )\n : props?.renderPlaceHolderEmptyList?.() || (\n <PlaceHolder\n className=\"sendbird-openchannel-conversation-scroll__container__place-holder\"\n type={PlaceHolderTypes.NO_MESSAGES}\n />\n )\n }\n </div>\n </div>\n {\n showScrollDownButton && (\n <div\n className=\"sendbird-openchannel-conversation-scroll__container__scroll-bottom-button\"\n onClick={scrollToBottom}\n onKeyDown={scrollToBottom}\n tabIndex={0}\n role=\"button\"\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.CONTENT}\n />\n </div>\n )\n }\n </div>\n );\n}\n\nexport default React.forwardRef(OpenchannelMessageList);\n"],"names":["OpenchannelMessageList","props","ref","_b","useOpenChannelContext","_c","isMessageGroupingEnabled","allMessages","hasMore","onScroll","scrollRef","useRef","_d","useState","showScrollDownButton","setShowScrollDownButton","handleOnScroll","e","element","target","scrollTop","scrollHeight","clientHeight","nodes","current","querySelectorAll","first_1","scrollIntoView","error","scrollToBottom","scrollTo","hasMessage","useMemo","length","React","join","map","message","index","previousMessage","nextMessage","previousMessageCreatedAt","createdAt","currentCreatedAt","hasSeparator","isSameDay","_a","compareMessagesForGrouping","chainTop","chainBottom","OpenChannelMessage","messageId","reqId","renderMessage","renderPlaceHolderEmptyList","PlaceHolderTypes","NO_MESSAGES","IconTypes","CHEVRON_DOWN","IconColors","CONTENT","forwardRef"],"mappings":"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"}