@sendbird/uikit-react 3.0.0-beta.4 → 3.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (625) hide show
  1. package/App.js +316 -0
  2. package/App.js.map +1 -0
  3. package/CHANGELOG.md +43 -1
  4. package/Channel/components/ChannelHeader.js +121 -0
  5. package/Channel/components/ChannelHeader.js.map +1 -0
  6. package/Channel/components/ChannelUI.js +182 -0
  7. package/Channel/components/ChannelUI.js.map +1 -0
  8. package/Channel/components/FileViewer.js +153 -0
  9. package/Channel/components/FileViewer.js.map +1 -0
  10. package/Channel/components/FrozenNotification.js +20 -0
  11. package/Channel/components/FrozenNotification.js.map +1 -0
  12. package/Channel/components/Message.js +364 -0
  13. package/Channel/components/Message.js.map +1 -0
  14. package/Channel/components/MessageInput.js +214 -0
  15. package/Channel/components/MessageInput.js.map +1 -0
  16. package/Channel/components/MessageList.js +242 -0
  17. package/Channel/components/MessageList.js.map +1 -0
  18. package/Channel/components/RemoveMessageModal.js +55 -0
  19. package/Channel/components/RemoveMessageModal.js.map +1 -0
  20. package/Channel/components/SuggestedMentionList.js +306 -0
  21. package/Channel/components/SuggestedMentionList.js.map +1 -0
  22. package/Channel/components/TypingIndicator.js +102 -0
  23. package/Channel/components/TypingIndicator.js.map +1 -0
  24. package/Channel/components/UnreadCount.js +41 -0
  25. package/Channel/components/UnreadCount.js.map +1 -0
  26. package/Channel/context.js +26 -0
  27. package/Channel/context.js.map +1 -0
  28. package/Channel.js +109 -0
  29. package/Channel.js.map +1 -0
  30. package/ChannelList/components/AddChannel.js +70 -0
  31. package/ChannelList/components/AddChannel.js.map +1 -0
  32. package/ChannelList/components/ChannelListHeader.js +62 -0
  33. package/ChannelList/components/ChannelListHeader.js.map +1 -0
  34. package/ChannelList/components/ChannelListUI.js +235 -0
  35. package/ChannelList/components/ChannelListUI.js.map +1 -0
  36. package/ChannelList/components/ChannelPreview.js +216 -0
  37. package/ChannelList/components/ChannelPreview.js.map +1 -0
  38. package/ChannelList/components/ChannelPreviewAction.js +133 -0
  39. package/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  40. package/ChannelList/context.js +15 -0
  41. package/ChannelList/context.js.map +1 -0
  42. package/ChannelList.js +91 -0
  43. package/ChannelList.js.map +1 -0
  44. package/ChannelListProvider-76b1ec23.js +944 -0
  45. package/ChannelListProvider-76b1ec23.js.map +1 -0
  46. package/ChannelProvider-c0ed5fae.js +2075 -0
  47. package/ChannelProvider-c0ed5fae.js.map +1 -0
  48. package/ChannelSettings/components/ChannelProfile.js +102 -0
  49. package/ChannelSettings/components/ChannelProfile.js.map +1 -0
  50. package/ChannelSettings/components/ChannelSettingsUI.js +152 -0
  51. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  52. package/ChannelSettings/components/EditDetailsModal.js +158 -0
  53. package/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  54. package/ChannelSettings/components/LeaveChannel.js +53 -0
  55. package/ChannelSettings/components/LeaveChannel.js.map +1 -0
  56. package/ChannelSettings/components/ModerationPanel.js +851 -0
  57. package/ChannelSettings/components/ModerationPanel.js.map +1 -0
  58. package/ChannelSettings/components/UserListItem.js +106 -0
  59. package/ChannelSettings/components/UserListItem.js.map +1 -0
  60. package/ChannelSettings/components/UserPanel.js +79 -0
  61. package/ChannelSettings/components/UserPanel.js.map +1 -0
  62. package/ChannelSettings/context.js +93 -0
  63. package/ChannelSettings/context.js.map +1 -0
  64. package/ChannelSettings.js +71 -0
  65. package/ChannelSettings.js.map +1 -0
  66. package/CreateChannel/components/CreateChannelUI.js +53 -0
  67. package/CreateChannel/components/CreateChannelUI.js.map +1 -0
  68. package/CreateChannel/components/InviteUsers.js +180 -0
  69. package/CreateChannel/components/InviteUsers.js.map +1 -0
  70. package/CreateChannel/components/SelectChannelType.js +131 -0
  71. package/CreateChannel/components/SelectChannelType.js.map +1 -0
  72. package/CreateChannel/context.js +9 -0
  73. package/CreateChannel/context.js.map +1 -0
  74. package/CreateChannel.js +53 -0
  75. package/CreateChannel.js.map +1 -0
  76. package/CreateChannelProvider-8c72aa06.js +53 -0
  77. package/CreateChannelProvider-8c72aa06.js.map +1 -0
  78. package/EditUserProfile/components/EditUserProfileUI.js +26 -0
  79. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  80. package/EditUserProfile/context.js +27 -0
  81. package/EditUserProfile/context.js.map +1 -0
  82. package/EditUserProfile.js +39 -0
  83. package/EditUserProfile.js.map +1 -0
  84. package/LocalizationContext-fb3dafcd.js +22 -0
  85. package/LocalizationContext-fb3dafcd.js.map +1 -0
  86. package/MemberList-01d3c8bf.js +404 -0
  87. package/MemberList-01d3c8bf.js.map +1 -0
  88. package/MessageSearch/components/MessageSearchUI.js +151 -0
  89. package/MessageSearch/components/MessageSearchUI.js.map +1 -0
  90. package/MessageSearch/context.js +387 -0
  91. package/MessageSearch/context.js.map +1 -0
  92. package/MessageSearch.js +146 -0
  93. package/MessageSearch.js.map +1 -0
  94. package/OpenChannel/components/FrozenChannelNotification.js +20 -0
  95. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  96. package/OpenChannel/components/OpenChannelHeader.js +80 -0
  97. package/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  98. package/OpenChannel/components/OpenChannelInput.js +58 -0
  99. package/OpenChannel/components/OpenChannelInput.js.map +1 -0
  100. package/OpenChannel/components/OpenChannelMessage.js +287 -0
  101. package/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  102. package/OpenChannel/components/OpenChannelMessageList.js +158 -0
  103. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  104. package/OpenChannel/components/OpenChannelUI.js +111 -0
  105. package/OpenChannel/components/OpenChannelUI.js.map +1 -0
  106. package/OpenChannel/context.js +16 -0
  107. package/OpenChannel/context.js.map +1 -0
  108. package/OpenChannel.js +82 -0
  109. package/OpenChannel.js.map +1 -0
  110. package/OpenChannelProvider-0fb27972.js +1946 -0
  111. package/OpenChannelProvider-0fb27972.js.map +1 -0
  112. package/OpenChannelSettings/components/EditDetailsModal.js +143 -0
  113. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  114. package/OpenChannelSettings/components/OpenChannelProfile.js +81 -0
  115. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  116. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +120 -0
  117. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  118. package/OpenChannelSettings/components/OperatorUI.js +199 -0
  119. package/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  120. package/OpenChannelSettings/components/ParticipantUI.js +145 -0
  121. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  122. package/OpenChannelSettings/context.js +64 -0
  123. package/OpenChannelSettings/context.js.map +1 -0
  124. package/OpenChannelSettings.js +64 -0
  125. package/OpenChannelSettings.js.map +1 -0
  126. package/README.md +0 -1
  127. package/SendbirdProvider.js +782 -0
  128. package/SendbirdProvider.js.map +1 -0
  129. package/UserProfileContext-6a387a08.js +38 -0
  130. package/UserProfileContext-6a387a08.js.map +1 -0
  131. package/__bundle-7dfccc8c-03df3ada.js +24 -0
  132. package/__bundle-7dfccc8c-03df3ada.js.map +1 -0
  133. package/_rollupPluginBabelHelpers-084fb589.js +233 -0
  134. package/_rollupPluginBabelHelpers-084fb589.js.map +1 -0
  135. package/actionTypes-302a2801.js +6 -0
  136. package/actionTypes-302a2801.js.map +1 -0
  137. package/cjs/App.js +323 -0
  138. package/cjs/App.js.map +1 -0
  139. package/cjs/Channel/components/ChannelHeader.js +127 -0
  140. package/cjs/Channel/components/ChannelHeader.js.map +1 -0
  141. package/cjs/Channel/components/ChannelUI.js +188 -0
  142. package/cjs/Channel/components/ChannelUI.js.map +1 -0
  143. package/cjs/Channel/components/FileViewer.js +162 -0
  144. package/cjs/Channel/components/FileViewer.js.map +1 -0
  145. package/cjs/Channel/components/FrozenNotification.js +26 -0
  146. package/cjs/Channel/components/FrozenNotification.js.map +1 -0
  147. package/cjs/Channel/components/Message.js +370 -0
  148. package/cjs/Channel/components/Message.js.map +1 -0
  149. package/cjs/Channel/components/MessageInput.js +220 -0
  150. package/cjs/Channel/components/MessageInput.js.map +1 -0
  151. package/cjs/Channel/components/MessageList.js +248 -0
  152. package/cjs/Channel/components/MessageList.js.map +1 -0
  153. package/cjs/Channel/components/RemoveMessageModal.js +61 -0
  154. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -0
  155. package/cjs/Channel/components/SuggestedMentionList.js +312 -0
  156. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -0
  157. package/cjs/Channel/components/TypingIndicator.js +111 -0
  158. package/cjs/Channel/components/TypingIndicator.js.map +1 -0
  159. package/cjs/Channel/components/UnreadCount.js +47 -0
  160. package/cjs/Channel/components/UnreadCount.js.map +1 -0
  161. package/cjs/Channel/context.js +35 -0
  162. package/cjs/Channel/context.js.map +1 -0
  163. package/cjs/Channel.js +115 -0
  164. package/cjs/Channel.js.map +1 -0
  165. package/cjs/ChannelList/components/AddChannel.js +79 -0
  166. package/cjs/ChannelList/components/AddChannel.js.map +1 -0
  167. package/cjs/ChannelList/components/ChannelListHeader.js +68 -0
  168. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -0
  169. package/cjs/ChannelList/components/ChannelListUI.js +241 -0
  170. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -0
  171. package/cjs/ChannelList/components/ChannelPreview.js +222 -0
  172. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -0
  173. package/cjs/ChannelList/components/ChannelPreviewAction.js +140 -0
  174. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  175. package/cjs/ChannelList/context.js +24 -0
  176. package/cjs/ChannelList/context.js.map +1 -0
  177. package/cjs/ChannelList.js +97 -0
  178. package/cjs/ChannelList.js.map +1 -0
  179. package/cjs/ChannelListProvider-7d1c0466.js +956 -0
  180. package/cjs/ChannelListProvider-7d1c0466.js.map +1 -0
  181. package/cjs/ChannelProvider-a3ec5a56.js +2088 -0
  182. package/cjs/ChannelProvider-a3ec5a56.js.map +1 -0
  183. package/cjs/ChannelSettings/components/ChannelProfile.js +108 -0
  184. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -0
  185. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +158 -0
  186. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  187. package/cjs/ChannelSettings/components/EditDetailsModal.js +164 -0
  188. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  189. package/cjs/ChannelSettings/components/LeaveChannel.js +59 -0
  190. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -0
  191. package/cjs/ChannelSettings/components/ModerationPanel.js +857 -0
  192. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -0
  193. package/cjs/ChannelSettings/components/UserListItem.js +112 -0
  194. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -0
  195. package/cjs/ChannelSettings/components/UserPanel.js +85 -0
  196. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -0
  197. package/cjs/ChannelSettings/context.js +102 -0
  198. package/cjs/ChannelSettings/context.js.map +1 -0
  199. package/cjs/ChannelSettings.js +77 -0
  200. package/cjs/ChannelSettings.js.map +1 -0
  201. package/cjs/CreateChannel/components/CreateChannelUI.js +59 -0
  202. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -0
  203. package/cjs/CreateChannel/components/InviteUsers.js +186 -0
  204. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -0
  205. package/cjs/CreateChannel/components/SelectChannelType.js +137 -0
  206. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -0
  207. package/cjs/CreateChannel/context.js +18 -0
  208. package/cjs/CreateChannel/context.js.map +1 -0
  209. package/cjs/CreateChannel.js +59 -0
  210. package/cjs/CreateChannel.js.map +1 -0
  211. package/cjs/CreateChannelProvider-95fbfb06.js +60 -0
  212. package/cjs/CreateChannelProvider-95fbfb06.js.map +1 -0
  213. package/cjs/EditUserProfile/components/EditUserProfileUI.js +32 -0
  214. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  215. package/cjs/EditUserProfile/context.js +36 -0
  216. package/cjs/EditUserProfile/context.js.map +1 -0
  217. package/cjs/EditUserProfile.js +45 -0
  218. package/cjs/EditUserProfile.js.map +1 -0
  219. package/cjs/LocalizationContext-5a6a0f67.js +30 -0
  220. package/cjs/LocalizationContext-5a6a0f67.js.map +1 -0
  221. package/cjs/MemberList-bfecdd64.js +410 -0
  222. package/cjs/MemberList-bfecdd64.js.map +1 -0
  223. package/cjs/MessageSearch/components/MessageSearchUI.js +160 -0
  224. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -0
  225. package/cjs/MessageSearch/context.js +396 -0
  226. package/cjs/MessageSearch/context.js.map +1 -0
  227. package/cjs/MessageSearch.js +152 -0
  228. package/cjs/MessageSearch.js.map +1 -0
  229. package/cjs/OpenChannel/components/FrozenChannelNotification.js +26 -0
  230. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  231. package/cjs/OpenChannel/components/OpenChannelHeader.js +86 -0
  232. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  233. package/cjs/OpenChannel/components/OpenChannelInput.js +64 -0
  234. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -0
  235. package/cjs/OpenChannel/components/OpenChannelMessage.js +293 -0
  236. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  237. package/cjs/OpenChannel/components/OpenChannelMessageList.js +164 -0
  238. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  239. package/cjs/OpenChannel/components/OpenChannelUI.js +117 -0
  240. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -0
  241. package/cjs/OpenChannel/context.js +25 -0
  242. package/cjs/OpenChannel/context.js.map +1 -0
  243. package/cjs/OpenChannel.js +88 -0
  244. package/cjs/OpenChannel.js.map +1 -0
  245. package/cjs/OpenChannelProvider-e8247193.js +1955 -0
  246. package/cjs/OpenChannelProvider-e8247193.js.map +1 -0
  247. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +149 -0
  248. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  249. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +87 -0
  250. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  251. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +126 -0
  252. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  253. package/cjs/OpenChannelSettings/components/OperatorUI.js +209 -0
  254. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  255. package/cjs/OpenChannelSettings/components/ParticipantUI.js +151 -0
  256. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  257. package/cjs/OpenChannelSettings/context.js +73 -0
  258. package/cjs/OpenChannelSettings/context.js.map +1 -0
  259. package/cjs/OpenChannelSettings.js +70 -0
  260. package/cjs/OpenChannelSettings.js.map +1 -0
  261. package/cjs/SendbirdProvider.js +790 -0
  262. package/cjs/SendbirdProvider.js.map +1 -0
  263. package/cjs/UserProfileContext-17c8f75c.js +46 -0
  264. package/cjs/UserProfileContext-17c8f75c.js.map +1 -0
  265. package/cjs/__bundle-7dfccc8c-c3c55861.js +151 -0
  266. package/cjs/__bundle-7dfccc8c-c3c55861.js.map +1 -0
  267. package/cjs/_rollupPluginBabelHelpers-d984e855.js +243 -0
  268. package/cjs/_rollupPluginBabelHelpers-d984e855.js.map +1 -0
  269. package/cjs/actionTypes-7a330bec.js +10 -0
  270. package/cjs/actionTypes-7a330bec.js.map +1 -0
  271. package/cjs/color-b30f84a2.js +42 -0
  272. package/cjs/color-b30f84a2.js.map +1 -0
  273. package/cjs/compareIds-d8053014.js +20 -0
  274. package/cjs/compareIds-d8053014.js.map +1 -0
  275. package/cjs/const-2623fae1.js +22 -0
  276. package/cjs/const-2623fae1.js.map +1 -0
  277. package/cjs/const-6aa26f9f.js +14 -0
  278. package/cjs/const-6aa26f9f.js.map +1 -0
  279. package/cjs/context-83ecdafd.js +19 -0
  280. package/cjs/context-83ecdafd.js.map +1 -0
  281. package/cjs/dist/index.css +4603 -0
  282. package/cjs/dist/index.css.map +1 -0
  283. package/cjs/groupChannel-e311e26a.js +9 -0
  284. package/cjs/groupChannel-e311e26a.js.map +1 -0
  285. package/cjs/index-1e14c5b9.js +130 -0
  286. package/cjs/index-1e14c5b9.js.map +1 -0
  287. package/cjs/index-2537cbc7.js +284 -0
  288. package/cjs/index-2537cbc7.js.map +1 -0
  289. package/cjs/index-40d245a3.js +729 -0
  290. package/cjs/index-40d245a3.js.map +1 -0
  291. package/cjs/index-5e7b82c2.js +178 -0
  292. package/cjs/index-5e7b82c2.js.map +1 -0
  293. package/cjs/index-72479c2a.js +514 -0
  294. package/cjs/index-72479c2a.js.map +1 -0
  295. package/cjs/index-ab5d906d.js +67 -0
  296. package/cjs/index-ab5d906d.js.map +1 -0
  297. package/cjs/index-cdcd27bc.js +1880 -0
  298. package/cjs/index-cdcd27bc.js.map +1 -0
  299. package/cjs/index-ce679d41.js +9 -0
  300. package/cjs/index-ce679d41.js.map +1 -0
  301. package/cjs/index-df05e765.js +142 -0
  302. package/cjs/index-df05e765.js.map +1 -0
  303. package/cjs/index-f9677913.js +97 -0
  304. package/cjs/index-f9677913.js.map +1 -0
  305. package/cjs/index.js +165 -0
  306. package/cjs/index.js.map +1 -0
  307. package/cjs/openChannel-e9f65946.js +13 -0
  308. package/cjs/openChannel-e9f65946.js.map +1 -0
  309. package/cjs/openChannelUtils-4b7d2697.js +97 -0
  310. package/cjs/openChannelUtils-4b7d2697.js.map +1 -0
  311. package/cjs/sendbirdSelectors.js +696 -0
  312. package/cjs/sendbirdSelectors.js.map +1 -0
  313. package/cjs/stringSet-2f3588b5.js +118 -0
  314. package/cjs/stringSet-2f3588b5.js.map +1 -0
  315. package/cjs/topics-582e38dc.js +18 -0
  316. package/cjs/topics-582e38dc.js.map +1 -0
  317. package/cjs/tslib.es6-d9c7aa8b.js +40 -0
  318. package/cjs/tslib.es6-d9c7aa8b.js.map +1 -0
  319. package/cjs/ui/Accordion.js +74 -0
  320. package/cjs/ui/Accordion.js.map +1 -0
  321. package/cjs/ui/AccordionGroup.js +32 -0
  322. package/cjs/ui/AccordionGroup.js.map +1 -0
  323. package/cjs/ui/AdminMessage.js +45 -0
  324. package/cjs/ui/AdminMessage.js.map +1 -0
  325. package/cjs/ui/Avatar.js +226 -0
  326. package/cjs/ui/Avatar.js.map +1 -0
  327. package/cjs/ui/Badge.js +45 -0
  328. package/cjs/ui/Badge.js.map +1 -0
  329. package/cjs/ui/Button.js +17 -0
  330. package/cjs/ui/Button.js.map +1 -0
  331. package/cjs/ui/ChannelAvatar.js +59 -0
  332. package/cjs/ui/ChannelAvatar.js.map +1 -0
  333. package/cjs/ui/ChannelPreview.js +208 -0
  334. package/cjs/ui/ChannelPreview.js.map +1 -0
  335. package/cjs/ui/ChatHeader.js +152 -0
  336. package/cjs/ui/ChatHeader.js.map +1 -0
  337. package/cjs/ui/Checkbox.js +49 -0
  338. package/cjs/ui/Checkbox.js.map +1 -0
  339. package/cjs/ui/ConnectionStatus.js +34 -0
  340. package/cjs/ui/ConnectionStatus.js.map +1 -0
  341. package/cjs/ui/ContextMenu.js +410 -0
  342. package/cjs/ui/ContextMenu.js.map +1 -0
  343. package/cjs/ui/DateSeparator.js +44 -0
  344. package/cjs/ui/DateSeparator.js.map +1 -0
  345. package/cjs/ui/Dropdown.js +107 -0
  346. package/cjs/ui/Dropdown.js.map +1 -0
  347. package/cjs/ui/EmojiReactions.js +127 -0
  348. package/cjs/ui/EmojiReactions.js.map +1 -0
  349. package/cjs/ui/FileMessageItemBody.js +57 -0
  350. package/cjs/ui/FileMessageItemBody.js.map +1 -0
  351. package/cjs/ui/FileViewer.js +174 -0
  352. package/cjs/ui/FileViewer.js.map +1 -0
  353. package/cjs/ui/Icon.js +1466 -0
  354. package/cjs/ui/Icon.js.map +1 -0
  355. package/cjs/ui/IconButton.js +83 -0
  356. package/cjs/ui/IconButton.js.map +1 -0
  357. package/cjs/ui/ImageRenderer.js +138 -0
  358. package/cjs/ui/ImageRenderer.js.map +1 -0
  359. package/cjs/ui/Input.js +74 -0
  360. package/cjs/ui/Input.js.map +1 -0
  361. package/cjs/ui/Label.js +17 -0
  362. package/cjs/ui/Label.js.map +1 -0
  363. package/cjs/ui/LinkLabel.js +51 -0
  364. package/cjs/ui/LinkLabel.js.map +1 -0
  365. package/cjs/ui/Loader.js +44 -0
  366. package/cjs/ui/Loader.js.map +1 -0
  367. package/cjs/ui/MentionLabel.js +100 -0
  368. package/cjs/ui/MentionLabel.js.map +1 -0
  369. package/cjs/ui/MentionUserLabel.js +25 -0
  370. package/cjs/ui/MentionUserLabel.js.map +1 -0
  371. package/cjs/ui/MessageContent.js +297 -0
  372. package/cjs/ui/MessageContent.js.map +1 -0
  373. package/cjs/ui/MessageInput.js +5052 -0
  374. package/cjs/ui/MessageInput.js.map +1 -0
  375. package/cjs/ui/MessageItemMenu.js +137 -0
  376. package/cjs/ui/MessageItemMenu.js.map +1 -0
  377. package/cjs/ui/MessageItemReactionMenu.js +112 -0
  378. package/cjs/ui/MessageItemReactionMenu.js.map +1 -0
  379. package/cjs/ui/MessageSearchFileItem.js +131 -0
  380. package/cjs/ui/MessageSearchFileItem.js.map +1 -0
  381. package/cjs/ui/MessageSearchItem.js +93 -0
  382. package/cjs/ui/MessageSearchItem.js.map +1 -0
  383. package/cjs/ui/MessageStatus.js +66 -0
  384. package/cjs/ui/MessageStatus.js.map +1 -0
  385. package/cjs/ui/Modal.js +140 -0
  386. package/cjs/ui/Modal.js.map +1 -0
  387. package/cjs/ui/MutedAvatarOverlay.js +40 -0
  388. package/cjs/ui/MutedAvatarOverlay.js.map +1 -0
  389. package/cjs/ui/OGMessageItemBody.js +119 -0
  390. package/cjs/ui/OGMessageItemBody.js.map +1 -0
  391. package/cjs/ui/OpenChannelAdminMessage.js +27 -0
  392. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -0
  393. package/cjs/ui/OpenChannelAvatar.js +41 -0
  394. package/cjs/ui/OpenChannelAvatar.js.map +1 -0
  395. package/cjs/ui/OpenchannelConversationHeader.js +73 -0
  396. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -0
  397. package/cjs/ui/OpenchannelFileMessage.js +231 -0
  398. package/cjs/ui/OpenchannelFileMessage.js.map +1 -0
  399. package/cjs/ui/OpenchannelOGMessage.js +346 -0
  400. package/cjs/ui/OpenchannelOGMessage.js.map +1 -0
  401. package/cjs/ui/OpenchannelThumbnailMessage.js +306 -0
  402. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -0
  403. package/cjs/ui/OpenchannelUserMessage.js +265 -0
  404. package/cjs/ui/OpenchannelUserMessage.js.map +1 -0
  405. package/cjs/ui/PlaceHolder.js +20 -0
  406. package/cjs/ui/PlaceHolder.js.map +1 -0
  407. package/cjs/ui/QuoteMessage.js +131 -0
  408. package/cjs/ui/QuoteMessage.js.map +1 -0
  409. package/cjs/ui/QuoteMessageInput.js +97 -0
  410. package/cjs/ui/QuoteMessageInput.js.map +1 -0
  411. package/cjs/ui/ReactionBadge.js +68 -0
  412. package/cjs/ui/ReactionBadge.js.map +1 -0
  413. package/cjs/ui/ReactionButton.js +55 -0
  414. package/cjs/ui/ReactionButton.js.map +1 -0
  415. package/cjs/ui/SortByRow.js +57 -0
  416. package/cjs/ui/SortByRow.js.map +1 -0
  417. package/cjs/ui/TextButton.js +45 -0
  418. package/cjs/ui/TextButton.js.map +1 -0
  419. package/cjs/ui/TextMessageItemBody.js +76 -0
  420. package/cjs/ui/TextMessageItemBody.js.map +1 -0
  421. package/cjs/ui/ThumbnailMessageItemBody.js +82 -0
  422. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -0
  423. package/cjs/ui/Tooltip.js +35 -0
  424. package/cjs/ui/Tooltip.js.map +1 -0
  425. package/cjs/ui/TooltipWrapper.js +65 -0
  426. package/cjs/ui/TooltipWrapper.js.map +1 -0
  427. package/cjs/ui/UnknownMessageItemBody.js +41 -0
  428. package/cjs/ui/UnknownMessageItemBody.js.map +1 -0
  429. package/cjs/ui/UserListItem.js +159 -0
  430. package/cjs/ui/UserListItem.js.map +1 -0
  431. package/cjs/ui/UserProfile.js +88 -0
  432. package/cjs/ui/UserProfile.js.map +1 -0
  433. package/cjs/ui/Word.js +76 -0
  434. package/cjs/ui/Word.js.map +1 -0
  435. package/cjs/useSendbirdStateContext.js +22 -0
  436. package/cjs/useSendbirdStateContext.js.map +1 -0
  437. package/cjs/utils-031aba48.js +6 -0
  438. package/cjs/utils-031aba48.js.map +1 -0
  439. package/cjs/utils-510b93ac.js +38 -0
  440. package/cjs/utils-510b93ac.js.map +1 -0
  441. package/cjs/utils-689065e6.js +32 -0
  442. package/cjs/utils-689065e6.js.map +1 -0
  443. package/cjs/uuid-099485ae.js +19 -0
  444. package/cjs/uuid-099485ae.js.map +1 -0
  445. package/cjs/withSendBird.js +35 -0
  446. package/cjs/withSendBird.js.map +1 -0
  447. package/color-9bf8c922.js +39 -0
  448. package/color-9bf8c922.js.map +1 -0
  449. package/compareIds-b78d7cd6.js +18 -0
  450. package/compareIds-b78d7cd6.js.map +1 -0
  451. package/const-40b58d8b.js +18 -0
  452. package/const-40b58d8b.js.map +1 -0
  453. package/const-99800b8d.js +8 -0
  454. package/const-99800b8d.js.map +1 -0
  455. package/context-bedea43b.js +12 -0
  456. package/context-bedea43b.js.map +1 -0
  457. package/dist/index.css +292 -152
  458. package/dist/index.css.map +1 -1
  459. package/groupChannel-96502de7.js +6 -0
  460. package/groupChannel-96502de7.js.map +1 -0
  461. package/index-13729368.js +512 -0
  462. package/index-13729368.js.map +1 -0
  463. package/index-16bed610.js +64 -0
  464. package/index-16bed610.js.map +1 -0
  465. package/index-1d112ad4.js +7 -0
  466. package/index-1d112ad4.js.map +1 -0
  467. package/index-71ad343b.js +171 -0
  468. package/index-71ad343b.js.map +1 -0
  469. package/index-71e2bf26.js +131 -0
  470. package/index-71e2bf26.js.map +1 -0
  471. package/index-8e6a607b.js +688 -0
  472. package/index-8e6a607b.js.map +1 -0
  473. package/index-a5e8849a.js +280 -0
  474. package/index-a5e8849a.js.map +1 -0
  475. package/index-b574cc8e.js +87 -0
  476. package/index-b574cc8e.js.map +1 -0
  477. package/index-c95d2aab.js +121 -0
  478. package/index-c95d2aab.js.map +1 -0
  479. package/index-ccd99cfe.js +1873 -0
  480. package/index-ccd99cfe.js.map +1 -0
  481. package/index.d.ts +1965 -0
  482. package/index.d.ts_bkup +1883 -0
  483. package/index.js +146 -0
  484. package/index.js.map +1 -0
  485. package/openChannel-dd5c9246.js +8 -0
  486. package/openChannel-dd5c9246.js.map +1 -0
  487. package/openChannelUtils-211a679a.js +86 -0
  488. package/openChannelUtils-211a679a.js.map +1 -0
  489. package/package.json +11 -33
  490. package/sendbirdSelectors.js +671 -0
  491. package/sendbirdSelectors.js.map +1 -0
  492. package/stringSet-d3a8a2a0.js +116 -0
  493. package/stringSet-d3a8a2a0.js.map +1 -0
  494. package/topics-f941ba80.js +10 -0
  495. package/topics-f941ba80.js.map +1 -0
  496. package/tslib.es6-a7db0cc5.js +38 -0
  497. package/tslib.es6-a7db0cc5.js.map +1 -0
  498. package/ui/Accordion.js +65 -0
  499. package/ui/Accordion.js.map +1 -0
  500. package/ui/AccordionGroup.js +26 -0
  501. package/ui/AccordionGroup.js.map +1 -0
  502. package/ui/AdminMessage.js +38 -0
  503. package/ui/AdminMessage.js.map +1 -0
  504. package/ui/Avatar.js +217 -0
  505. package/ui/Avatar.js.map +1 -0
  506. package/ui/Badge.js +38 -0
  507. package/ui/Badge.js.map +1 -0
  508. package/ui/Button.js +7 -0
  509. package/ui/Button.js.map +1 -0
  510. package/ui/ChannelAvatar.js +53 -0
  511. package/ui/ChannelAvatar.js.map +1 -0
  512. package/ui/ChannelPreview.js +201 -0
  513. package/ui/ChannelPreview.js.map +1 -0
  514. package/ui/ChatHeader.js +145 -0
  515. package/ui/ChatHeader.js.map +1 -0
  516. package/ui/Checkbox.js +42 -0
  517. package/ui/Checkbox.js.map +1 -0
  518. package/ui/ConnectionStatus.js +28 -0
  519. package/ui/ConnectionStatus.js.map +1 -0
  520. package/ui/ContextMenu.js +396 -0
  521. package/ui/ContextMenu.js.map +1 -0
  522. package/ui/DateSeparator.js +37 -0
  523. package/ui/DateSeparator.js.map +1 -0
  524. package/ui/Dropdown.js +97 -0
  525. package/ui/Dropdown.js.map +1 -0
  526. package/ui/EmojiReactions.js +121 -0
  527. package/ui/EmojiReactions.js.map +1 -0
  528. package/ui/FileMessageItemBody.js +51 -0
  529. package/ui/FileMessageItemBody.js.map +1 -0
  530. package/ui/FileViewer.js +164 -0
  531. package/ui/FileViewer.js.map +1 -0
  532. package/ui/Icon.js +1436 -0
  533. package/ui/Icon.js.map +1 -0
  534. package/ui/IconButton.js +76 -0
  535. package/ui/IconButton.js.map +1 -0
  536. package/ui/ImageRenderer.js +131 -0
  537. package/ui/ImageRenderer.js.map +1 -0
  538. package/ui/Input.js +64 -0
  539. package/ui/Input.js.map +1 -0
  540. package/ui/Label.js +6 -0
  541. package/ui/Label.js.map +1 -0
  542. package/ui/LinkLabel.js +40 -0
  543. package/ui/LinkLabel.js.map +1 -0
  544. package/ui/Loader.js +37 -0
  545. package/ui/Loader.js.map +1 -0
  546. package/ui/MentionLabel.js +94 -0
  547. package/ui/MentionLabel.js.map +1 -0
  548. package/ui/MentionUserLabel.js +19 -0
  549. package/ui/MentionUserLabel.js.map +1 -0
  550. package/ui/MessageContent.js +291 -0
  551. package/ui/MessageContent.js.map +1 -0
  552. package/ui/MessageInput.js +5044 -0
  553. package/ui/MessageInput.js.map +1 -0
  554. package/ui/MessageItemMenu.js +131 -0
  555. package/ui/MessageItemMenu.js.map +1 -0
  556. package/ui/MessageItemReactionMenu.js +106 -0
  557. package/ui/MessageItemReactionMenu.js.map +1 -0
  558. package/ui/MessageSearchFileItem.js +125 -0
  559. package/ui/MessageSearchFileItem.js.map +1 -0
  560. package/ui/MessageSearchItem.js +87 -0
  561. package/ui/MessageSearchItem.js.map +1 -0
  562. package/ui/MessageStatus.js +57 -0
  563. package/ui/MessageStatus.js.map +1 -0
  564. package/ui/Modal.js +128 -0
  565. package/ui/Modal.js.map +1 -0
  566. package/ui/MutedAvatarOverlay.js +34 -0
  567. package/ui/MutedAvatarOverlay.js.map +1 -0
  568. package/ui/OGMessageItemBody.js +113 -0
  569. package/ui/OGMessageItemBody.js.map +1 -0
  570. package/ui/OpenChannelAdminMessage.js +21 -0
  571. package/ui/OpenChannelAdminMessage.js.map +1 -0
  572. package/ui/OpenChannelAvatar.js +35 -0
  573. package/ui/OpenChannelAvatar.js.map +1 -0
  574. package/ui/OpenchannelConversationHeader.js +67 -0
  575. package/ui/OpenchannelConversationHeader.js.map +1 -0
  576. package/ui/OpenchannelFileMessage.js +225 -0
  577. package/ui/OpenchannelFileMessage.js.map +1 -0
  578. package/ui/OpenchannelOGMessage.js +340 -0
  579. package/ui/OpenchannelOGMessage.js.map +1 -0
  580. package/ui/OpenchannelThumbnailMessage.js +300 -0
  581. package/ui/OpenchannelThumbnailMessage.js.map +1 -0
  582. package/ui/OpenchannelUserMessage.js +259 -0
  583. package/ui/OpenchannelUserMessage.js.map +1 -0
  584. package/ui/PlaceHolder.js +11 -0
  585. package/ui/PlaceHolder.js.map +1 -0
  586. package/ui/QuoteMessage.js +125 -0
  587. package/ui/QuoteMessage.js.map +1 -0
  588. package/ui/QuoteMessageInput.js +91 -0
  589. package/ui/QuoteMessageInput.js.map +1 -0
  590. package/ui/ReactionBadge.js +61 -0
  591. package/ui/ReactionBadge.js.map +1 -0
  592. package/ui/ReactionButton.js +48 -0
  593. package/ui/ReactionButton.js.map +1 -0
  594. package/ui/SortByRow.js +50 -0
  595. package/ui/SortByRow.js.map +1 -0
  596. package/ui/TextButton.js +38 -0
  597. package/ui/TextButton.js.map +1 -0
  598. package/ui/TextMessageItemBody.js +70 -0
  599. package/ui/TextMessageItemBody.js.map +1 -0
  600. package/ui/ThumbnailMessageItemBody.js +76 -0
  601. package/ui/ThumbnailMessageItemBody.js.map +1 -0
  602. package/ui/Tooltip.js +28 -0
  603. package/ui/Tooltip.js.map +1 -0
  604. package/ui/TooltipWrapper.js +58 -0
  605. package/ui/TooltipWrapper.js.map +1 -0
  606. package/ui/UnknownMessageItemBody.js +35 -0
  607. package/ui/UnknownMessageItemBody.js.map +1 -0
  608. package/ui/UserListItem.js +152 -0
  609. package/ui/UserListItem.js.map +1 -0
  610. package/ui/UserProfile.js +82 -0
  611. package/ui/UserProfile.js.map +1 -0
  612. package/ui/Word.js +70 -0
  613. package/ui/Word.js.map +1 -0
  614. package/useSendbirdStateContext.js +20 -0
  615. package/useSendbirdStateContext.js.map +1 -0
  616. package/utils-2e3623c0.js +30 -0
  617. package/utils-2e3623c0.js.map +1 -0
  618. package/utils-cadde06a.js +4 -0
  619. package/utils-cadde06a.js.map +1 -0
  620. package/utils-d9325ddf.js +34 -0
  621. package/utils-d9325ddf.js.map +1 -0
  622. package/uuid-748dae7a.js +17 -0
  623. package/uuid-748dae7a.js.map +1 -0
  624. package/withSendBird.js +26 -0
  625. package/withSendBird.js.map +1 -0
@@ -0,0 +1,80 @@
1
+ import React__default, { useContext } from 'react';
2
+ import Avatar from '../../ui/Avatar.js';
3
+ import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
4
+ import IconButton from '../../ui/IconButton.js';
5
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-71e2bf26.js';
6
+ import { a as LocalizationContext } from '../../LocalizationContext-fb3dafcd.js';
7
+ import { u as useOpenChannelContext, k as kFormatter } from '../../OpenChannelProvider-0fb27972.js';
8
+ import '../../tslib.es6-a7db0cc5.js';
9
+ import '../../ui/ImageRenderer.js';
10
+ import '../../_rollupPluginBabelHelpers-084fb589.js';
11
+ import 'prop-types';
12
+ import '../../uuid-748dae7a.js';
13
+ import '../../stringSet-d3a8a2a0.js';
14
+ import '../../index-13729368.js';
15
+ import '../../index-ccd99cfe.js';
16
+ import '../../UserProfileContext-6a387a08.js';
17
+ import '../../compareIds-b78d7cd6.js';
18
+ import '../../topics-f941ba80.js';
19
+ import '../../openChannel-dd5c9246.js';
20
+ import '../../__bundle-7dfccc8c-03df3ada.js';
21
+ import '../../useSendbirdStateContext.js';
22
+ import '../../withSendBird.js';
23
+
24
+ function OpenchannelConversationHeader() {
25
+ var stringSet = useContext(LocalizationContext).stringSet;
26
+
27
+ var _a = useOpenChannelContext(),
28
+ currentOpenChannel = _a.currentOpenChannel,
29
+ onChatHeaderActionClick = _a.onChatHeaderActionClick,
30
+ amIOperator = _a.amIOperator;
31
+
32
+ var title = currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.name;
33
+ var subTitle = "".concat(kFormatter(currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.participantCount), " ").concat(stringSet.OPEN_CHANNEL_CONVERSATION__TITLE_PARTICIPANTS);
34
+ var coverImage = currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.coverUrl;
35
+ return /*#__PURE__*/React__default.createElement("div", {
36
+ className: "sendbird-openchannel-conversation-header"
37
+ }, /*#__PURE__*/React__default.createElement("div", {
38
+ className: "sendbird-openchannel-conversation-header__left"
39
+ }, coverImage ? /*#__PURE__*/React__default.createElement(Avatar, {
40
+ className: "sendbird-openchannel-conversation-header__left__cover-image",
41
+ src: coverImage,
42
+ alt: "channel cover image",
43
+ width: "32px",
44
+ height: "32px"
45
+ }) : /*#__PURE__*/React__default.createElement("div", {
46
+ className: "sendbird-openchannel-conversation-header__left__cover-image--icon",
47
+ style: {
48
+ width: 32,
49
+ height: 32
50
+ }
51
+ }, /*#__PURE__*/React__default.createElement(Icon, {
52
+ type: IconTypes.CHANNELS,
53
+ fillColor: IconColors.CONTENT,
54
+ width: "18px",
55
+ height: "18px"
56
+ })), /*#__PURE__*/React__default.createElement(Label, {
57
+ className: "sendbird-openchannel-conversation-header__left__title",
58
+ type: LabelTypography.H_2,
59
+ color: LabelColors.ONBACKGROUND_1
60
+ }, title || stringSet.NO_TITLE), /*#__PURE__*/React__default.createElement(Label, {
61
+ className: "sendbird-openchannel-conversation-header__left__sub-title",
62
+ type: LabelTypography.BODY_2,
63
+ color: LabelColors.ONBACKGROUND_2
64
+ }, subTitle || stringSet.NO_TITLE)), /*#__PURE__*/React__default.createElement("div", {
65
+ className: "sendbird-openchannel-conversation-header__right"
66
+ }, /*#__PURE__*/React__default.createElement(IconButton, {
67
+ className: "sendbird-openchannel-conversation-header__right__trigger",
68
+ width: "32px",
69
+ height: "32px",
70
+ onClick: onChatHeaderActionClick
71
+ }, /*#__PURE__*/React__default.createElement(Icon, {
72
+ type: amIOperator ? IconTypes.INFO : IconTypes.MEMBERS,
73
+ fillColor: IconColors.PRIMARY,
74
+ width: "24px",
75
+ height: "24px"
76
+ }))));
77
+ }
78
+
79
+ export { OpenchannelConversationHeader as default };
80
+ //# sourceMappingURL=OpenChannelHeader.js.map
@@ -0,0 +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;;;;"}
@@ -0,0 +1,58 @@
1
+ import React__default, { useContext } from 'react';
2
+ import { a as LocalizationContext } from '../../LocalizationContext-fb3dafcd.js';
3
+ import MessageInput from '../../ui/MessageInput.js';
4
+ import { u as useOpenChannelContext } from '../../OpenChannelProvider-0fb27972.js';
5
+ import '../../stringSet-d3a8a2a0.js';
6
+ import '../../index-13729368.js';
7
+ import '../../_rollupPluginBabelHelpers-084fb589.js';
8
+ import 'stream';
9
+ import 'prop-types';
10
+ import '../../const-40b58d8b.js';
11
+ import '../../const-99800b8d.js';
12
+ import '../../ui/IconButton.js';
13
+ import '../../index-b574cc8e.js';
14
+ import '../../index-71e2bf26.js';
15
+ import '../../ui/MentionUserLabel.js';
16
+ import '../../ui/Icon.js';
17
+ import '../../index-8e6a607b.js';
18
+ import '../../tslib.es6-a7db0cc5.js';
19
+ import '../../index-ccd99cfe.js';
20
+ import '../../UserProfileContext-6a387a08.js';
21
+ import '../../compareIds-b78d7cd6.js';
22
+ import '../../topics-f941ba80.js';
23
+ import '../../openChannel-dd5c9246.js';
24
+ import '../../__bundle-7dfccc8c-03df3ada.js';
25
+ import '../../uuid-748dae7a.js';
26
+ import '../../useSendbirdStateContext.js';
27
+ import '../../withSendBird.js';
28
+
29
+ var MessageInputWrapper = function MessageInputWrapper(props, ref) {
30
+ var _a = useOpenChannelContext(),
31
+ currentOpenChannel = _a.currentOpenChannel,
32
+ disabled = _a.disabled,
33
+ handleSendMessage = _a.handleSendMessage,
34
+ handleFileUpload = _a.handleFileUpload;
35
+
36
+ var channel = currentOpenChannel;
37
+
38
+ if (!channel) {
39
+ return;
40
+ }
41
+
42
+ var stringSet = useContext(LocalizationContext).stringSet;
43
+ return /*#__PURE__*/React__default.createElement("div", {
44
+ className: "sendbird-openchannel-footer"
45
+ }, /*#__PURE__*/React__default.createElement(MessageInput, {
46
+ ref: ref,
47
+ disabled: disabled,
48
+ onSendMessage: handleSendMessage,
49
+ onFileUpload: handleFileUpload,
50
+ placeholder: disabled && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED // add disabled because of muted state
51
+
52
+ }));
53
+ };
54
+
55
+ var OpenChannelInput = /*#__PURE__*/React__default.forwardRef(MessageInputWrapper);
56
+
57
+ export { OpenChannelInput as default };
58
+ //# sourceMappingURL=OpenChannelInput.js.map
@@ -0,0 +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;;;;"}
@@ -0,0 +1,287 @@
1
+ import React__default, { useContext, useMemo, useState, useRef } from 'react';
2
+ import { f as format } from '../../index-ccd99cfe.js';
3
+ import OpenchannelUserMessage from '../../ui/OpenchannelUserMessage.js';
4
+ import OpenChannelAdminMessage from '../../ui/OpenChannelAdminMessage.js';
5
+ import OpenchannelOGMessage from '../../ui/OpenchannelOGMessage.js';
6
+ import OpenchannelThumbnailMessage from '../../ui/OpenchannelThumbnailMessage.js';
7
+ import OpenchannelFileMessage from '../../ui/OpenchannelFileMessage.js';
8
+ import DateSeparator from '../../ui/DateSeparator.js';
9
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-71e2bf26.js';
10
+ import MessageInput from '../../ui/MessageInput.js';
11
+ import FileViewer from '../../ui/FileViewer.js';
12
+ import Modal from '../../ui/Modal.js';
13
+ import { a as LocalizationContext, u as useLocalization } from '../../LocalizationContext-fb3dafcd.js';
14
+ import { u as useOpenChannelContext } from '../../OpenChannelProvider-0fb27972.js';
15
+ import useSendbirdStateContext from '../../useSendbirdStateContext.js';
16
+ import '../../index-13729368.js';
17
+ import '../../tslib.es6-a7db0cc5.js';
18
+ import '../../ui/Avatar.js';
19
+ import '../../ui/ImageRenderer.js';
20
+ import '../../_rollupPluginBabelHelpers-084fb589.js';
21
+ import 'prop-types';
22
+ import '../../ui/Icon.js';
23
+ import '../../uuid-748dae7a.js';
24
+ import '../../ui/ContextMenu.js';
25
+ import '../../index-8e6a607b.js';
26
+ import 'react-dom';
27
+ import '../../ui/SortByRow.js';
28
+ import '../../stringSet-d3a8a2a0.js';
29
+ import '../../ui/IconButton.js';
30
+ import '../../ui/Loader.js';
31
+ import '../../ui/UserProfile.js';
32
+ import '../../withSendBird.js';
33
+ import '../../sendbirdSelectors.js';
34
+ import '../../topics-f941ba80.js';
35
+ import '../../utils-cadde06a.js';
36
+ import '../../index-b574cc8e.js';
37
+ import '../../UserProfileContext-6a387a08.js';
38
+ import '../../utils-2e3623c0.js';
39
+ import '../../openChannelUtils-211a679a.js';
40
+ import '../../ui/LinkLabel.js';
41
+ import '../../ui/TextButton.js';
42
+ import '../../color-9bf8c922.js';
43
+ import 'stream';
44
+ import '../../const-40b58d8b.js';
45
+ import '../../const-99800b8d.js';
46
+ import '../../ui/MentionUserLabel.js';
47
+ import '../../index-1d112ad4.js';
48
+ import '../../compareIds-b78d7cd6.js';
49
+ import '../../openChannel-dd5c9246.js';
50
+ import '../../__bundle-7dfccc8c-03df3ada.js';
51
+
52
+ function RemoveMessageModal(_a) {
53
+ var onCloseModal = _a.onCloseModal,
54
+ onDeleteMessage = _a.onDeleteMessage;
55
+ var stringSet = useContext(LocalizationContext).stringSet;
56
+ return /*#__PURE__*/React__default.createElement(Modal, {
57
+ onCancel: onCloseModal,
58
+ onSubmit: onDeleteMessage,
59
+ submitText: stringSet.MESSAGE_MENU__DELETE,
60
+ titleText: stringSet.MODAL__DELETE_MESSAGE__TITLE
61
+ });
62
+ }
63
+
64
+ // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types
65
+ var SUPPORTED_MIMES = {
66
+ IMAGE: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif', 'image/svg+xml', 'image/webp' // not supported in IE
67
+ ],
68
+ VIDEO: ['video/mpeg', 'video/ogg', 'video/webm', 'video/mp4']
69
+ };
70
+ var isImage = function isImage(type) {
71
+ return SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;
72
+ };
73
+ var isVideo = function isVideo(type) {
74
+ return SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;
75
+ };
76
+
77
+ var MessageTypes = {
78
+ ADMIN: 'ADMIN',
79
+ USER: 'USER',
80
+ FILE: 'FILE',
81
+ THUMBNAIL: 'THUMBNAIL',
82
+ OG: 'OG',
83
+ UNKNOWN: 'UNKNOWN'
84
+ };
85
+ var SendingMessageStatus = {
86
+ NONE: 'none',
87
+ SUCCEEDED: 'succeeded',
88
+ FAILED: 'failed',
89
+ PENDING: 'pending'
90
+ };
91
+ var getMessageType = function getMessageType(message) {
92
+ if (message.isUserMessage && message.isUserMessage() || message.messageType === 'user') {
93
+ return message.ogMetaData ? MessageTypes.OG : MessageTypes.USER;
94
+ }
95
+
96
+ if (message.isAdminMessage && message.isAdminMessage()) {
97
+ return MessageTypes.ADMIN;
98
+ }
99
+
100
+ if (message.messageType === 'file') {
101
+ return isImage(message.type) || isVideo(message.type) ? MessageTypes.THUMBNAIL : MessageTypes.FILE;
102
+ }
103
+
104
+ return MessageTypes.UNKNOWN;
105
+ };
106
+
107
+ function MessagOpenChannelMessageeHoc(props) {
108
+ var _a;
109
+
110
+ var _b;
111
+
112
+ var message = props.message,
113
+ chainTop = props.chainTop,
114
+ chainBottom = props.chainBottom,
115
+ hasSeparator = props.hasSeparator,
116
+ renderMessage = props.renderMessage;
117
+
118
+ var _c = useOpenChannelContext(),
119
+ currentOpenChannel = _c.currentOpenChannel,
120
+ deleteMessage = _c.deleteMessage,
121
+ updateMessage = _c.updateMessage,
122
+ resendMessage = _c.resendMessage;
123
+
124
+ var dateLocale = useLocalization().dateLocale;
125
+ var editDisabled = currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.isFrozen;
126
+ var globalState = useSendbirdStateContext();
127
+ var userId = (_b = globalState === null || globalState === void 0 ? void 0 : globalState.config) === null || _b === void 0 ? void 0 : _b.userId;
128
+ var sender = null;
129
+
130
+ if ((message === null || message === void 0 ? void 0 : message.messageType) !== 'admin') {
131
+ sender = message === null || message === void 0 ? void 0 : message.sender;
132
+ }
133
+
134
+ var RenderedMessage = useMemo(function () {
135
+ return function (props) {
136
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, renderMessage ? renderMessage(props) : null);
137
+ };
138
+ }, [message, renderMessage]);
139
+
140
+ var _d = useState(false),
141
+ showEdit = _d[0],
142
+ setShowEdit = _d[1];
143
+
144
+ var _e = useState(false),
145
+ showRemove = _e[0],
146
+ setShowRemove = _e[1];
147
+
148
+ var _f = useState(false),
149
+ showFileViewer = _f[0],
150
+ setShowFileViewer = _f[1];
151
+
152
+ var editMessageInputRef = useRef(null);
153
+ var isByMe = false;
154
+
155
+ if (sender && (message === null || message === void 0 ? void 0 : message.messageType) !== 'admin') {
156
+ // pending and failed messages are by me
157
+ isByMe = userId === sender.userId || (message === null || message === void 0 ? void 0 : message.sendingStatus) === SendingMessageStatus.PENDING || (message === null || message === void 0 ? void 0 : message.sendingStatus) === SendingMessageStatus.FAILED;
158
+ }
159
+
160
+ if (renderMessage && RenderedMessage) {
161
+ return /*#__PURE__*/React__default.createElement("div", {
162
+ className: "sendbird-msg-hoc sendbird-msg--scroll-ref"
163
+ }, /*#__PURE__*/React__default.createElement(RenderedMessage, {
164
+ message: message,
165
+ chainTop: chainTop,
166
+ chainBottom: chainBottom
167
+ }));
168
+ }
169
+
170
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'user' && showEdit) {
171
+ return /*#__PURE__*/React__default.createElement(MessageInput, {
172
+ isEdit: true,
173
+ disabled: editDisabled,
174
+ ref: editMessageInputRef,
175
+ message: message,
176
+ name: message === null || message === void 0 ? void 0 : message.messageId,
177
+ onUpdateMessage: function onUpdateMessage(_a) {
178
+ var messageId = _a.messageId,
179
+ message = _a.message;
180
+ updateMessage(messageId, message);
181
+ setShowEdit(false);
182
+ },
183
+ onCancelEdit: function onCancelEdit() {
184
+ setShowEdit(false);
185
+ }
186
+ });
187
+ }
188
+
189
+ return /*#__PURE__*/React__default.createElement("div", {
190
+ className: "sendbird-msg-hoc sendbird-msg--scroll-ref"
191
+ }, hasSeparator && /*#__PURE__*/React__default.createElement(DateSeparator, null, /*#__PURE__*/React__default.createElement(Label, {
192
+ type: LabelTypography.CAPTION_2,
193
+ color: LabelColors.ONBACKGROUND_2
194
+ }, format(message === null || message === void 0 ? void 0 : message.createdAt, 'MMMM dd, yyyy', {
195
+ locale: dateLocale
196
+ }))), (_a = {}, _a[MessageTypes.ADMIN] = function () {
197
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'admin') {
198
+ return /*#__PURE__*/React__default.createElement(OpenChannelAdminMessage, {
199
+ message: message
200
+ });
201
+ }
202
+ }(), _a[MessageTypes.FILE] = function () {
203
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'file') {
204
+ return /*#__PURE__*/React__default.createElement(OpenchannelFileMessage, {
205
+ message: message,
206
+ disabled: editDisabled,
207
+ userId: userId,
208
+ showRemove: setShowRemove,
209
+ resendMessage: resendMessage,
210
+ chainTop: chainTop,
211
+ chainBottom: chainBottom
212
+ });
213
+ }
214
+
215
+ return;
216
+ }(), _a[MessageTypes.OG] = function () {
217
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'user') {
218
+ return /*#__PURE__*/React__default.createElement(OpenchannelOGMessage, {
219
+ message: message,
220
+ userId: userId,
221
+ showEdit: setShowEdit,
222
+ disabled: editDisabled,
223
+ showRemove: setShowRemove,
224
+ resendMessage: resendMessage,
225
+ chainTop: chainTop,
226
+ chainBottom: chainBottom
227
+ });
228
+ }
229
+
230
+ return;
231
+ }(), _a[MessageTypes.THUMBNAIL] = function () {
232
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'file') {
233
+ return /*#__PURE__*/React__default.createElement(OpenchannelThumbnailMessage, {
234
+ message: message,
235
+ disabled: editDisabled,
236
+ userId: userId,
237
+ showRemove: setShowRemove,
238
+ resendMessage: resendMessage,
239
+ onClick: setShowFileViewer,
240
+ chainTop: chainTop,
241
+ chainBottom: chainBottom
242
+ });
243
+ }
244
+
245
+ return;
246
+ }(), _a[MessageTypes.USER] = function () {
247
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'user') {
248
+ return /*#__PURE__*/React__default.createElement(OpenchannelUserMessage, {
249
+ message: message,
250
+ userId: userId,
251
+ disabled: editDisabled,
252
+ showEdit: setShowEdit,
253
+ showRemove: setShowRemove,
254
+ resendMessage: resendMessage,
255
+ chainTop: chainTop,
256
+ chainBottom: chainBottom
257
+ });
258
+ }
259
+
260
+ return;
261
+ }(), _a[MessageTypes.UNKNOWN] = function () {
262
+ return; // return (
263
+ // <OpenChannelUnknownMessage message={message} />
264
+ // );
265
+ }(), _a)[getMessageType(message)], showRemove && /*#__PURE__*/React__default.createElement(RemoveMessageModal, {
266
+ onCloseModal: function onCloseModal() {
267
+ return setShowRemove(false);
268
+ },
269
+ onDeleteMessage: function onDeleteMessage() {
270
+ if ((message === null || message === void 0 ? void 0 : message.messageType) !== 'admin') {
271
+ deleteMessage(message);
272
+ }
273
+ }
274
+ }), showFileViewer && (message === null || message === void 0 ? void 0 : message.messageType) === 'file' && /*#__PURE__*/React__default.createElement(FileViewer, {
275
+ onClose: function onClose() {
276
+ return setShowFileViewer(false);
277
+ },
278
+ message: message,
279
+ onDelete: function onDelete() {
280
+ return deleteMessage(message);
281
+ },
282
+ isByMe: isByMe
283
+ }));
284
+ }
285
+
286
+ export { MessagOpenChannelMessageeHoc as default };
287
+ //# sourceMappingURL=OpenChannelMessage.js.map
@@ -0,0 +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.isUserMessage()) || message.messageType === 'user') {\n return (message.ogMetaData)\n ? MessageTypes.OG\n : MessageTypes.USER;\n }\n if (message.isAdminMessage && 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 && (\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 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 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 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 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","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","createdAt","locale","OpenChannelFileMessage","OpenChannelOGMessage","OpenChannelThumbnailMessage","OpenChannelUserMessage"],"mappings":"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"}
@@ -0,0 +1,158 @@
1
+ import React__default, { useRef, useState, useMemo } from 'react';
2
+ import { i as isSameDay } from '../../index-16bed610.js';
3
+ import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
4
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-c95d2aab.js';
5
+ import { u as useOpenChannelContext, c as compareMessagesForGrouping } from '../../OpenChannelProvider-0fb27972.js';
6
+ import MessagOpenChannelMessageeHoc from './OpenChannelMessage.js';
7
+ import '../../index-ccd99cfe.js';
8
+ import '../../index-13729368.js';
9
+ import '../../_rollupPluginBabelHelpers-084fb589.js';
10
+ import 'prop-types';
11
+ import '../../ui/Loader.js';
12
+ import '../../LocalizationContext-fb3dafcd.js';
13
+ import '../../stringSet-d3a8a2a0.js';
14
+ import '../../index-71e2bf26.js';
15
+ import '../../UserProfileContext-6a387a08.js';
16
+ import '../../tslib.es6-a7db0cc5.js';
17
+ import '../../compareIds-b78d7cd6.js';
18
+ import '../../topics-f941ba80.js';
19
+ import '../../openChannel-dd5c9246.js';
20
+ import '../../__bundle-7dfccc8c-03df3ada.js';
21
+ import '../../uuid-748dae7a.js';
22
+ import '../../useSendbirdStateContext.js';
23
+ import '../../withSendBird.js';
24
+ import '../../ui/OpenchannelUserMessage.js';
25
+ import '../../ui/Avatar.js';
26
+ import '../../ui/ImageRenderer.js';
27
+ import '../../ui/ContextMenu.js';
28
+ import '../../index-8e6a607b.js';
29
+ import 'react-dom';
30
+ import '../../ui/SortByRow.js';
31
+ import '../../ui/IconButton.js';
32
+ import '../../ui/UserProfile.js';
33
+ import '../../sendbirdSelectors.js';
34
+ import '../../utils-cadde06a.js';
35
+ import '../../index-b574cc8e.js';
36
+ import '../../utils-2e3623c0.js';
37
+ import '../../openChannelUtils-211a679a.js';
38
+ import '../../ui/OpenChannelAdminMessage.js';
39
+ import '../../ui/OpenchannelOGMessage.js';
40
+ import '../../ui/LinkLabel.js';
41
+ import '../../ui/OpenchannelThumbnailMessage.js';
42
+ import '../../ui/OpenchannelFileMessage.js';
43
+ import '../../ui/TextButton.js';
44
+ import '../../color-9bf8c922.js';
45
+ import '../../ui/DateSeparator.js';
46
+ import '../../ui/MessageInput.js';
47
+ import 'stream';
48
+ import '../../const-40b58d8b.js';
49
+ import '../../const-99800b8d.js';
50
+ import '../../ui/MentionUserLabel.js';
51
+ import '../../ui/FileViewer.js';
52
+ import '../../index-1d112ad4.js';
53
+ import '../../ui/Modal.js';
54
+
55
+ function OpenchannelMessageList(props, ref) {
56
+ var _a;
57
+
58
+ var _b = useOpenChannelContext(),
59
+ _c = _b.isMessageGroupingEnabled,
60
+ isMessageGroupingEnabled = _c === void 0 ? true : _c,
61
+ allMessages = _b.allMessages,
62
+ hasMore = _b.hasMore,
63
+ onScroll = _b.onScroll;
64
+
65
+ var scrollRef = ref || useRef(null);
66
+
67
+ var _d = useState(false),
68
+ showScrollDownButton = _d[0],
69
+ setShowScrollDownButton = _d[1];
70
+
71
+ var handleOnScroll = function handleOnScroll(e) {
72
+ var element = e.target;
73
+ var scrollTop = element.scrollTop,
74
+ scrollHeight = element.scrollHeight,
75
+ clientHeight = element.clientHeight;
76
+
77
+ if (scrollHeight > scrollTop + clientHeight + 1) {
78
+ setShowScrollDownButton(true);
79
+ } else {
80
+ setShowScrollDownButton(false);
81
+ }
82
+
83
+ if (!hasMore) {
84
+ return;
85
+ }
86
+
87
+ if (scrollTop === 0) {
88
+ var nodes = scrollRef.current.querySelectorAll('.sendbird-msg--scroll-ref');
89
+ var first_1 = nodes && nodes[0];
90
+ onScroll(function () {
91
+ try {
92
+ first_1.scrollIntoView();
93
+ } catch (error) {}
94
+ });
95
+ }
96
+ };
97
+
98
+ var scrollToBottom = function scrollToBottom() {
99
+ if (scrollRef && scrollRef.current) {
100
+ scrollRef.current.scrollTo(0, scrollRef.current.scrollHeight);
101
+ setShowScrollDownButton(false);
102
+ }
103
+ };
104
+
105
+ var hasMessage = useMemo(function () {
106
+ return allMessages.length > 0;
107
+ }, [allMessages.length]);
108
+ return /*#__PURE__*/React__default.createElement("div", {
109
+ className: "sendbird-openchannel-conversation-scroll"
110
+ }, /*#__PURE__*/React__default.createElement("div", {
111
+ className: "sendbird-openchannel-conversation-scroll__container"
112
+ }, /*#__PURE__*/React__default.createElement("div", {
113
+ className: "sendbird-openchannel-conversation-scroll__container__padding"
114
+ }), /*#__PURE__*/React__default.createElement("div", {
115
+ className: ['sendbird-openchannel-conversation-scroll__container__item-container', hasMessage ? '' : 'no-messages'].join(' '),
116
+ onScroll: handleOnScroll,
117
+ ref: scrollRef
118
+ }, hasMessage ? allMessages.map(function (message, index) {
119
+ var previousMessage = allMessages[index - 1];
120
+ var nextMessage = allMessages[index - 1];
121
+ var previousMessageCreatedAt = previousMessage && previousMessage.createdAt;
122
+ var currentCreatedAt = message.createdAt; // https://stackoverflow.com/a/41855608
123
+
124
+ var hasSeparator = !(previousMessageCreatedAt && isSameDay(currentCreatedAt, previousMessageCreatedAt));
125
+
126
+ var _a = isMessageGroupingEnabled ? compareMessagesForGrouping(previousMessage, message, nextMessage) : [false, false],
127
+ chainTop = _a[0],
128
+ chainBottom = _a[1];
129
+
130
+ return /*#__PURE__*/React__default.createElement(MessagOpenChannelMessageeHoc, {
131
+ key: (message === null || message === void 0 ? void 0 : message.messageId) || (message === null || message === void 0 ? void 0 : message.reqId),
132
+ message: message,
133
+ chainTop: chainTop,
134
+ chainBottom: chainBottom,
135
+ hasSeparator: hasSeparator,
136
+ renderMessage: props === null || props === void 0 ? void 0 : props.renderMessage
137
+ });
138
+ }) : ((_a = props === null || props === void 0 ? void 0 : props.renderPlaceHolderEmptyList) === null || _a === void 0 ? void 0 : _a.call(props)) || /*#__PURE__*/React__default.createElement(PlaceHolder, {
139
+ className: "sendbird-openchannel-conversation-scroll__container__place-holder",
140
+ type: PlaceHolderTypes.NO_MESSAGES
141
+ }))), showScrollDownButton && /*#__PURE__*/React__default.createElement("div", {
142
+ className: "sendbird-openchannel-conversation-scroll__container__scroll-bottom-button",
143
+ onClick: scrollToBottom,
144
+ onKeyDown: scrollToBottom,
145
+ tabIndex: 0,
146
+ role: "button"
147
+ }, /*#__PURE__*/React__default.createElement(Icon, {
148
+ width: "24px",
149
+ height: "24px",
150
+ type: IconTypes.CHEVRON_DOWN,
151
+ fillColor: IconColors.CONTENT
152
+ })));
153
+ }
154
+
155
+ var OpenChannelMessageList = /*#__PURE__*/React__default.forwardRef(OpenchannelMessageList);
156
+
157
+ export { OpenChannelMessageList as default };
158
+ //# sourceMappingURL=OpenChannelMessageList.js.map