@sendbird/uikit-react 3.0.0-alpha.1 → 3.0.0-alpha.2

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 (585) hide show
  1. package/App.js +294 -0
  2. package/App.js.map +1 -0
  3. package/Channel/components/ChannelHeader.js +116 -0
  4. package/Channel/components/ChannelHeader.js.map +1 -0
  5. package/Channel/components/ChannelUI.js +172 -0
  6. package/Channel/components/ChannelUI.js.map +1 -0
  7. package/Channel/components/FileViewer.js +150 -0
  8. package/Channel/components/FileViewer.js.map +1 -0
  9. package/Channel/components/FrozenNotification.js +20 -0
  10. package/Channel/components/FrozenNotification.js.map +1 -0
  11. package/Channel/components/Message.js +232 -0
  12. package/Channel/components/Message.js.map +1 -0
  13. package/Channel/components/MessageInput.js +87 -0
  14. package/Channel/components/MessageInput.js.map +1 -0
  15. package/Channel/components/MessageList.js +227 -0
  16. package/Channel/components/MessageList.js.map +1 -0
  17. package/Channel/components/RemoveMessageModal.js +52 -0
  18. package/Channel/components/RemoveMessageModal.js.map +1 -0
  19. package/Channel/components/TypingIndicator.js +97 -0
  20. package/Channel/components/TypingIndicator.js.map +1 -0
  21. package/Channel/components/UnreadCount.js +41 -0
  22. package/Channel/components/UnreadCount.js.map +1 -0
  23. package/Channel/context.js +23 -0
  24. package/Channel/context.js.map +1 -0
  25. package/Channel.js +99 -0
  26. package/Channel.js.map +1 -0
  27. package/ChannelList/components/AddChannel.js +70 -0
  28. package/ChannelList/components/AddChannel.js.map +1 -0
  29. package/ChannelList/components/ChannelListHeader.js +62 -0
  30. package/ChannelList/components/ChannelListHeader.js.map +1 -0
  31. package/ChannelList/components/ChannelListUI.js +213 -0
  32. package/ChannelList/components/ChannelListUI.js.map +1 -0
  33. package/ChannelList/components/ChannelPreview.js +177 -0
  34. package/ChannelList/components/ChannelPreview.js.map +1 -0
  35. package/ChannelList/components/ChannelPreviewAction.js +131 -0
  36. package/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  37. package/ChannelList/context.js +13 -0
  38. package/ChannelList/context.js.map +1 -0
  39. package/ChannelList.js +80 -0
  40. package/ChannelList.js.map +1 -0
  41. package/ChannelListProvider-0b0c2c40.js +861 -0
  42. package/ChannelListProvider-0b0c2c40.js.map +1 -0
  43. package/ChannelProvider-459e463f.js +2083 -0
  44. package/ChannelProvider-459e463f.js.map +1 -0
  45. package/ChannelSettings/components/AdminPanel.js +905 -0
  46. package/ChannelSettings/components/AdminPanel.js.map +1 -0
  47. package/ChannelSettings/components/ChannelProfile.js +102 -0
  48. package/ChannelSettings/components/ChannelProfile.js.map +1 -0
  49. package/ChannelSettings/components/ChannelSettingsUI.js +152 -0
  50. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  51. package/ChannelSettings/components/EditDetailsModal.js +154 -0
  52. package/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  53. package/ChannelSettings/components/LeaveChannel.js +53 -0
  54. package/ChannelSettings/components/LeaveChannel.js.map +1 -0
  55. package/ChannelSettings/components/UserListItem.js +105 -0
  56. package/ChannelSettings/components/UserListItem.js.map +1 -0
  57. package/ChannelSettings/components/UserPanel.js +79 -0
  58. package/ChannelSettings/components/UserPanel.js.map +1 -0
  59. package/ChannelSettings/context.js +93 -0
  60. package/ChannelSettings/context.js.map +1 -0
  61. package/ChannelSettings.js +71 -0
  62. package/ChannelSettings.js.map +1 -0
  63. package/CreateChannel/components/CreateChannelUI.js +53 -0
  64. package/CreateChannel/components/CreateChannelUI.js.map +1 -0
  65. package/CreateChannel/components/InviteMembers.js +184 -0
  66. package/CreateChannel/components/InviteMembers.js.map +1 -0
  67. package/CreateChannel/components/SelectChannelType.js +131 -0
  68. package/CreateChannel/components/SelectChannelType.js.map +1 -0
  69. package/CreateChannel/context.js +8 -0
  70. package/CreateChannel/context.js.map +1 -0
  71. package/CreateChannel.js +53 -0
  72. package/CreateChannel.js.map +1 -0
  73. package/CreateChannelProvider-c617a1bb.js +53 -0
  74. package/CreateChannelProvider-c617a1bb.js.map +1 -0
  75. package/EditUserProfile/components/EditUserProfileUI.js +26 -0
  76. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  77. package/EditUserProfile/context.js +27 -0
  78. package/EditUserProfile/context.js.map +1 -0
  79. package/EditUserProfile.js +39 -0
  80. package/EditUserProfile.js.map +1 -0
  81. package/LocalizationContext-e4391013.js +22 -0
  82. package/LocalizationContext-e4391013.js.map +1 -0
  83. package/MemberList-6655cba0.js +425 -0
  84. package/MemberList-6655cba0.js.map +1 -0
  85. package/MessageSearch/components/MessageSearchUI.js +151 -0
  86. package/MessageSearch/components/MessageSearchUI.js.map +1 -0
  87. package/MessageSearch/context.js +392 -0
  88. package/MessageSearch/context.js.map +1 -0
  89. package/MessageSearch.js +146 -0
  90. package/MessageSearch.js.map +1 -0
  91. package/OpenChannel/components/FrozenChannelNotification.js +20 -0
  92. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  93. package/OpenChannel/components/OpenChannelHeader.js +78 -0
  94. package/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  95. package/OpenChannel/components/OpenChannelInput.js +52 -0
  96. package/OpenChannel/components/OpenChannelInput.js.map +1 -0
  97. package/OpenChannel/components/OpenChannelMessage.js +278 -0
  98. package/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  99. package/OpenChannel/components/OpenChannelMessageList.js +153 -0
  100. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  101. package/OpenChannel/components/OpenChannelUI.js +105 -0
  102. package/OpenChannel/components/OpenChannelUI.js.map +1 -0
  103. package/OpenChannel/context.js +14 -0
  104. package/OpenChannel/context.js.map +1 -0
  105. package/OpenChannel.js +76 -0
  106. package/OpenChannel.js.map +1 -0
  107. package/OpenChannelProvider-a7691eb4.js +2011 -0
  108. package/OpenChannelProvider-a7691eb4.js.map +1 -0
  109. package/OpenChannelSettings/components/EditDetailsModal.js +149 -0
  110. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  111. package/OpenChannelSettings/components/OpenChannelProfile.js +81 -0
  112. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  113. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +104 -0
  114. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  115. package/OpenChannelSettings/components/OperatorUI.js +184 -0
  116. package/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  117. package/OpenChannelSettings/components/ParticipantUI.js +172 -0
  118. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  119. package/OpenChannelSettings/context.js +64 -0
  120. package/OpenChannelSettings/context.js.map +1 -0
  121. package/OpenChannelSettings.js +64 -0
  122. package/OpenChannelSettings.js.map +1 -0
  123. package/SendbirdProvider.js +740 -0
  124. package/SendbirdProvider.js.map +1 -0
  125. package/UserProfileContext-865db5e6.js +38 -0
  126. package/UserProfileContext-865db5e6.js.map +1 -0
  127. package/_rollupPluginBabelHelpers-20904f21.js +233 -0
  128. package/_rollupPluginBabelHelpers-20904f21.js.map +1 -0
  129. package/actionTypes-1e3a4074.js +6 -0
  130. package/actionTypes-1e3a4074.js.map +1 -0
  131. package/cjs/App.js +301 -0
  132. package/cjs/App.js.map +1 -0
  133. package/cjs/Channel/components/ChannelHeader.js +122 -0
  134. package/cjs/Channel/components/ChannelHeader.js.map +1 -0
  135. package/cjs/Channel/components/ChannelUI.js +178 -0
  136. package/cjs/Channel/components/ChannelUI.js.map +1 -0
  137. package/cjs/Channel/components/FileViewer.js +159 -0
  138. package/cjs/Channel/components/FileViewer.js.map +1 -0
  139. package/cjs/Channel/components/FrozenNotification.js +26 -0
  140. package/cjs/Channel/components/FrozenNotification.js.map +1 -0
  141. package/cjs/Channel/components/Message.js +238 -0
  142. package/cjs/Channel/components/Message.js.map +1 -0
  143. package/cjs/Channel/components/MessageInput.js +93 -0
  144. package/cjs/Channel/components/MessageInput.js.map +1 -0
  145. package/cjs/Channel/components/MessageList.js +233 -0
  146. package/cjs/Channel/components/MessageList.js.map +1 -0
  147. package/cjs/Channel/components/RemoveMessageModal.js +58 -0
  148. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -0
  149. package/cjs/Channel/components/TypingIndicator.js +103 -0
  150. package/cjs/Channel/components/TypingIndicator.js.map +1 -0
  151. package/cjs/Channel/components/UnreadCount.js +47 -0
  152. package/cjs/Channel/components/UnreadCount.js.map +1 -0
  153. package/cjs/Channel/context.js +32 -0
  154. package/cjs/Channel/context.js.map +1 -0
  155. package/cjs/Channel.js +105 -0
  156. package/cjs/Channel.js.map +1 -0
  157. package/cjs/ChannelList/components/AddChannel.js +79 -0
  158. package/cjs/ChannelList/components/AddChannel.js.map +1 -0
  159. package/cjs/ChannelList/components/ChannelListHeader.js +68 -0
  160. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -0
  161. package/cjs/ChannelList/components/ChannelListUI.js +219 -0
  162. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -0
  163. package/cjs/ChannelList/components/ChannelPreview.js +183 -0
  164. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -0
  165. package/cjs/ChannelList/components/ChannelPreviewAction.js +138 -0
  166. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  167. package/cjs/ChannelList/context.js +22 -0
  168. package/cjs/ChannelList/context.js.map +1 -0
  169. package/cjs/ChannelList.js +86 -0
  170. package/cjs/ChannelList.js.map +1 -0
  171. package/cjs/ChannelListProvider-5a152618.js +873 -0
  172. package/cjs/ChannelListProvider-5a152618.js.map +1 -0
  173. package/cjs/ChannelProvider-f1fb0108.js +2096 -0
  174. package/cjs/ChannelProvider-f1fb0108.js.map +1 -0
  175. package/cjs/ChannelSettings/components/AdminPanel.js +911 -0
  176. package/cjs/ChannelSettings/components/AdminPanel.js.map +1 -0
  177. package/cjs/ChannelSettings/components/ChannelProfile.js +108 -0
  178. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -0
  179. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +158 -0
  180. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  181. package/cjs/ChannelSettings/components/EditDetailsModal.js +160 -0
  182. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  183. package/cjs/ChannelSettings/components/LeaveChannel.js +59 -0
  184. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -0
  185. package/cjs/ChannelSettings/components/UserListItem.js +111 -0
  186. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -0
  187. package/cjs/ChannelSettings/components/UserPanel.js +85 -0
  188. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -0
  189. package/cjs/ChannelSettings/context.js +102 -0
  190. package/cjs/ChannelSettings/context.js.map +1 -0
  191. package/cjs/ChannelSettings.js +77 -0
  192. package/cjs/ChannelSettings.js.map +1 -0
  193. package/cjs/CreateChannel/components/CreateChannelUI.js +59 -0
  194. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -0
  195. package/cjs/CreateChannel/components/InviteMembers.js +190 -0
  196. package/cjs/CreateChannel/components/InviteMembers.js.map +1 -0
  197. package/cjs/CreateChannel/components/SelectChannelType.js +137 -0
  198. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -0
  199. package/cjs/CreateChannel/context.js +17 -0
  200. package/cjs/CreateChannel/context.js.map +1 -0
  201. package/cjs/CreateChannel.js +59 -0
  202. package/cjs/CreateChannel.js.map +1 -0
  203. package/cjs/CreateChannelProvider-df42106f.js +60 -0
  204. package/cjs/CreateChannelProvider-df42106f.js.map +1 -0
  205. package/cjs/EditUserProfile/components/EditUserProfileUI.js +32 -0
  206. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  207. package/cjs/EditUserProfile/context.js +36 -0
  208. package/cjs/EditUserProfile/context.js.map +1 -0
  209. package/cjs/EditUserProfile.js +45 -0
  210. package/cjs/EditUserProfile.js.map +1 -0
  211. package/cjs/LocalizationContext-68e55e2a.js +30 -0
  212. package/cjs/LocalizationContext-68e55e2a.js.map +1 -0
  213. package/cjs/MemberList-dc84e303.js +431 -0
  214. package/cjs/MemberList-dc84e303.js.map +1 -0
  215. package/cjs/MessageSearch/components/MessageSearchUI.js +160 -0
  216. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -0
  217. package/cjs/MessageSearch/context.js +401 -0
  218. package/cjs/MessageSearch/context.js.map +1 -0
  219. package/cjs/MessageSearch.js +152 -0
  220. package/cjs/MessageSearch.js.map +1 -0
  221. package/cjs/OpenChannel/components/FrozenChannelNotification.js +26 -0
  222. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  223. package/cjs/OpenChannel/components/OpenChannelHeader.js +84 -0
  224. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  225. package/cjs/OpenChannel/components/OpenChannelInput.js +58 -0
  226. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -0
  227. package/cjs/OpenChannel/components/OpenChannelMessage.js +284 -0
  228. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  229. package/cjs/OpenChannel/components/OpenChannelMessageList.js +159 -0
  230. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  231. package/cjs/OpenChannel/components/OpenChannelUI.js +111 -0
  232. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -0
  233. package/cjs/OpenChannel/context.js +23 -0
  234. package/cjs/OpenChannel/context.js.map +1 -0
  235. package/cjs/OpenChannel.js +82 -0
  236. package/cjs/OpenChannel.js.map +1 -0
  237. package/cjs/OpenChannelProvider-7a1a996f.js +2020 -0
  238. package/cjs/OpenChannelProvider-7a1a996f.js.map +1 -0
  239. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +155 -0
  240. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  241. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +87 -0
  242. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  243. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +110 -0
  244. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  245. package/cjs/OpenChannelSettings/components/OperatorUI.js +194 -0
  246. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  247. package/cjs/OpenChannelSettings/components/ParticipantUI.js +178 -0
  248. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  249. package/cjs/OpenChannelSettings/context.js +73 -0
  250. package/cjs/OpenChannelSettings/context.js.map +1 -0
  251. package/cjs/OpenChannelSettings.js +70 -0
  252. package/cjs/OpenChannelSettings.js.map +1 -0
  253. package/cjs/SendbirdProvider.js +749 -0
  254. package/cjs/SendbirdProvider.js.map +1 -0
  255. package/cjs/UserProfileContext-3533547d.js +46 -0
  256. package/cjs/UserProfileContext-3533547d.js.map +1 -0
  257. package/cjs/_rollupPluginBabelHelpers-fc14118c.js +243 -0
  258. package/cjs/_rollupPluginBabelHelpers-fc14118c.js.map +1 -0
  259. package/cjs/actionTypes-bc47f97a.js +10 -0
  260. package/cjs/actionTypes-bc47f97a.js.map +1 -0
  261. package/cjs/color-4afb15fb.js +42 -0
  262. package/cjs/color-4afb15fb.js.map +1 -0
  263. package/cjs/compareIds-01306377.js +20 -0
  264. package/cjs/compareIds-01306377.js.map +1 -0
  265. package/cjs/context-c1f9d650.js +19 -0
  266. package/cjs/context-c1f9d650.js.map +1 -0
  267. package/cjs/index-1044f1ed.js +97 -0
  268. package/cjs/index-1044f1ed.js.map +1 -0
  269. package/cjs/index-1468d245.js +142 -0
  270. package/cjs/index-1468d245.js.map +1 -0
  271. package/cjs/index-4987c8b2.js +175 -0
  272. package/cjs/index-4987c8b2.js.map +1 -0
  273. package/cjs/index-659c9ca5.js +130 -0
  274. package/cjs/index-659c9ca5.js.map +1 -0
  275. package/cjs/index-8becccd8.js +284 -0
  276. package/cjs/index-8becccd8.js.map +1 -0
  277. package/cjs/index-905331fa.js +1880 -0
  278. package/cjs/index-905331fa.js.map +1 -0
  279. package/cjs/index-9dc3863f.js +67 -0
  280. package/cjs/index-9dc3863f.js.map +1 -0
  281. package/cjs/index-aecc8d24.js +9 -0
  282. package/cjs/index-aecc8d24.js.map +1 -0
  283. package/cjs/index-d4880236.js +641 -0
  284. package/cjs/index-d4880236.js.map +1 -0
  285. package/cjs/index-e2bb862c.js +514 -0
  286. package/cjs/index-e2bb862c.js.map +1 -0
  287. package/cjs/index.css +4355 -0
  288. package/cjs/index.css.map +1 -0
  289. package/cjs/index.js +155 -0
  290. package/cjs/index.js.map +1 -0
  291. package/cjs/openChannelUtils-37919a36.js +92 -0
  292. package/cjs/openChannelUtils-37919a36.js.map +1 -0
  293. package/cjs/sendBirdSelectors.js +741 -0
  294. package/cjs/sendBirdSelectors.js.map +1 -0
  295. package/cjs/stringSet-aa544ce5.js +116 -0
  296. package/cjs/stringSet-aa544ce5.js.map +1 -0
  297. package/cjs/topics-8314d425.js +18 -0
  298. package/cjs/topics-8314d425.js.map +1 -0
  299. package/cjs/tslib.es6-4a281a05.js +40 -0
  300. package/cjs/tslib.es6-4a281a05.js.map +1 -0
  301. package/cjs/ui/Accordion.js +74 -0
  302. package/cjs/ui/Accordion.js.map +1 -0
  303. package/cjs/ui/AccordionGroup.js +32 -0
  304. package/cjs/ui/AccordionGroup.js.map +1 -0
  305. package/cjs/ui/AdminMessage.js +44 -0
  306. package/cjs/ui/AdminMessage.js.map +1 -0
  307. package/cjs/ui/Avatar.js +226 -0
  308. package/cjs/ui/Avatar.js.map +1 -0
  309. package/cjs/ui/Badge.js +45 -0
  310. package/cjs/ui/Badge.js.map +1 -0
  311. package/cjs/ui/Button.js +17 -0
  312. package/cjs/ui/Button.js.map +1 -0
  313. package/cjs/ui/ChannelAvatar.js +59 -0
  314. package/cjs/ui/ChannelAvatar.js.map +1 -0
  315. package/cjs/ui/ChannelPreview.js +201 -0
  316. package/cjs/ui/ChannelPreview.js.map +1 -0
  317. package/cjs/ui/ChatHeader.js +145 -0
  318. package/cjs/ui/ChatHeader.js.map +1 -0
  319. package/cjs/ui/Checkbox.js +49 -0
  320. package/cjs/ui/Checkbox.js.map +1 -0
  321. package/cjs/ui/ConnectionStatus.js +34 -0
  322. package/cjs/ui/ConnectionStatus.js.map +1 -0
  323. package/cjs/ui/ContextMenu.js +431 -0
  324. package/cjs/ui/ContextMenu.js.map +1 -0
  325. package/cjs/ui/DateSeparator.js +44 -0
  326. package/cjs/ui/DateSeparator.js.map +1 -0
  327. package/cjs/ui/Dropdown.js +107 -0
  328. package/cjs/ui/Dropdown.js.map +1 -0
  329. package/cjs/ui/EmojiReactions.js +127 -0
  330. package/cjs/ui/EmojiReactions.js.map +1 -0
  331. package/cjs/ui/FileMessageItemBody.js +57 -0
  332. package/cjs/ui/FileMessageItemBody.js.map +1 -0
  333. package/cjs/ui/FileViewer.js +174 -0
  334. package/cjs/ui/FileViewer.js.map +1 -0
  335. package/cjs/ui/Icon.js +1462 -0
  336. package/cjs/ui/Icon.js.map +1 -0
  337. package/cjs/ui/IconButton.js +83 -0
  338. package/cjs/ui/IconButton.js.map +1 -0
  339. package/cjs/ui/ImageRenderer.js +138 -0
  340. package/cjs/ui/ImageRenderer.js.map +1 -0
  341. package/cjs/ui/Input.js +74 -0
  342. package/cjs/ui/Input.js.map +1 -0
  343. package/cjs/ui/Label.js +17 -0
  344. package/cjs/ui/Label.js.map +1 -0
  345. package/cjs/ui/LinkLabel.js +51 -0
  346. package/cjs/ui/LinkLabel.js.map +1 -0
  347. package/cjs/ui/Loader.js +44 -0
  348. package/cjs/ui/Loader.js.map +1 -0
  349. package/cjs/ui/MessageContent.js +328 -0
  350. package/cjs/ui/MessageContent.js.map +1 -0
  351. package/cjs/ui/MessageInput.js +232 -0
  352. package/cjs/ui/MessageInput.js.map +1 -0
  353. package/cjs/ui/MessageItemMenu.js +141 -0
  354. package/cjs/ui/MessageItemMenu.js.map +1 -0
  355. package/cjs/ui/MessageItemReactionMenu.js +112 -0
  356. package/cjs/ui/MessageItemReactionMenu.js.map +1 -0
  357. package/cjs/ui/MessageSearchFileItem.js +130 -0
  358. package/cjs/ui/MessageSearchFileItem.js.map +1 -0
  359. package/cjs/ui/MessageSearchItem.js +93 -0
  360. package/cjs/ui/MessageSearchItem.js.map +1 -0
  361. package/cjs/ui/Modal.js +140 -0
  362. package/cjs/ui/Modal.js.map +1 -0
  363. package/cjs/ui/MutedAvatarOverlay.js +40 -0
  364. package/cjs/ui/MutedAvatarOverlay.js.map +1 -0
  365. package/cjs/ui/OGMessageItemBody.js +97 -0
  366. package/cjs/ui/OGMessageItemBody.js.map +1 -0
  367. package/cjs/ui/OpenChannelAdminMessage.js +27 -0
  368. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -0
  369. package/cjs/ui/OpenChannelAvatar.js +41 -0
  370. package/cjs/ui/OpenChannelAvatar.js.map +1 -0
  371. package/cjs/ui/OpenChannelMessageContent.js +14 -0
  372. package/cjs/ui/OpenChannelMessageContent.js.map +1 -0
  373. package/cjs/ui/OpenchannelConversationHeader.js +73 -0
  374. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -0
  375. package/cjs/ui/OpenchannelFileMessage.js +230 -0
  376. package/cjs/ui/OpenchannelFileMessage.js.map +1 -0
  377. package/cjs/ui/OpenchannelOGMessage.js +345 -0
  378. package/cjs/ui/OpenchannelOGMessage.js.map +1 -0
  379. package/cjs/ui/OpenchannelThumbnailMessage.js +305 -0
  380. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -0
  381. package/cjs/ui/OpenchannelUserMessage.js +264 -0
  382. package/cjs/ui/OpenchannelUserMessage.js.map +1 -0
  383. package/cjs/ui/PlaceHolder.js +20 -0
  384. package/cjs/ui/PlaceHolder.js.map +1 -0
  385. package/cjs/ui/QuoteMessage.js +131 -0
  386. package/cjs/ui/QuoteMessage.js.map +1 -0
  387. package/cjs/ui/QuoteMessageInput.js +99 -0
  388. package/cjs/ui/QuoteMessageInput.js.map +1 -0
  389. package/cjs/ui/ReactionBadge.js +68 -0
  390. package/cjs/ui/ReactionBadge.js.map +1 -0
  391. package/cjs/ui/ReactionButton.js +55 -0
  392. package/cjs/ui/ReactionButton.js.map +1 -0
  393. package/cjs/ui/SortByRow.js +57 -0
  394. package/cjs/ui/SortByRow.js.map +1 -0
  395. package/cjs/ui/TextButton.js +45 -0
  396. package/cjs/ui/TextButton.js.map +1 -0
  397. package/cjs/ui/TextMessageItemBody.js +40 -0
  398. package/cjs/ui/TextMessageItemBody.js.map +1 -0
  399. package/cjs/ui/ThumbnailMessageItemBody.js +82 -0
  400. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -0
  401. package/cjs/ui/Tooltip.js +35 -0
  402. package/cjs/ui/Tooltip.js.map +1 -0
  403. package/cjs/ui/TooltipWrapper.js +65 -0
  404. package/cjs/ui/TooltipWrapper.js.map +1 -0
  405. package/cjs/ui/UnknownMessageItemBody.js +41 -0
  406. package/cjs/ui/UnknownMessageItemBody.js.map +1 -0
  407. package/cjs/ui/UserListItem.js +158 -0
  408. package/cjs/ui/UserListItem.js.map +1 -0
  409. package/cjs/ui/UserProfile.js +87 -0
  410. package/cjs/ui/UserProfile.js.map +1 -0
  411. package/cjs/useSendbirdStateContext.js +22 -0
  412. package/cjs/useSendbirdStateContext.js.map +1 -0
  413. package/cjs/utils-3b0815dc.js +6 -0
  414. package/cjs/utils-3b0815dc.js.map +1 -0
  415. package/cjs/utils-66b3f4ec.js +38 -0
  416. package/cjs/utils-66b3f4ec.js.map +1 -0
  417. package/cjs/utils-cbd3ed99.js +32 -0
  418. package/cjs/utils-cbd3ed99.js.map +1 -0
  419. package/cjs/uuid-1d5ec8b2.js +19 -0
  420. package/cjs/uuid-1d5ec8b2.js.map +1 -0
  421. package/cjs/withSendBird.js +35 -0
  422. package/cjs/withSendBird.js.map +1 -0
  423. package/color-ee3fc5ee.js +39 -0
  424. package/color-ee3fc5ee.js.map +1 -0
  425. package/compareIds-808956f2.js +18 -0
  426. package/compareIds-808956f2.js.map +1 -0
  427. package/context-98ce535c.js +12 -0
  428. package/context-98ce535c.js.map +1 -0
  429. package/index-1718324d.js +280 -0
  430. package/index-1718324d.js.map +1 -0
  431. package/index-5c2c81bc.js +168 -0
  432. package/index-5c2c81bc.js.map +1 -0
  433. package/index-6ebf7894.js +512 -0
  434. package/index-6ebf7894.js.map +1 -0
  435. package/index-770d7112.js +1873 -0
  436. package/index-770d7112.js.map +1 -0
  437. package/index-7a51bd16.js +131 -0
  438. package/index-7a51bd16.js.map +1 -0
  439. package/index-8c72a94a.js +602 -0
  440. package/index-8c72a94a.js.map +1 -0
  441. package/index-942c85a6.js +7 -0
  442. package/index-942c85a6.js.map +1 -0
  443. package/index-acebc2ff.js +87 -0
  444. package/index-acebc2ff.js.map +1 -0
  445. package/index-cd21929d.js +64 -0
  446. package/index-cd21929d.js.map +1 -0
  447. package/index-e818a8a3.js +121 -0
  448. package/index-e818a8a3.js.map +1 -0
  449. package/index.css +4355 -0
  450. package/index.css.map +1 -0
  451. package/index.d.ts +1801 -0
  452. package/index.js.map +1 -0
  453. package/openChannelUtils-56a372e7.js +81 -0
  454. package/openChannelUtils-56a372e7.js.map +1 -0
  455. package/package.json +1 -8
  456. package/sendBirdSelectors.js +713 -0
  457. package/sendBirdSelectors.js.map +1 -0
  458. package/stringSet-4f6eaa60.js +114 -0
  459. package/stringSet-4f6eaa60.js.map +1 -0
  460. package/topics-9442035c.js +10 -0
  461. package/topics-9442035c.js.map +1 -0
  462. package/tslib.es6-e3c44017.js +38 -0
  463. package/tslib.es6-e3c44017.js.map +1 -0
  464. package/ui/Accordion.js +65 -0
  465. package/ui/Accordion.js.map +1 -0
  466. package/ui/AccordionGroup.js +26 -0
  467. package/ui/AccordionGroup.js.map +1 -0
  468. package/ui/AdminMessage.js +37 -0
  469. package/ui/AdminMessage.js.map +1 -0
  470. package/ui/Avatar.js +217 -0
  471. package/ui/Avatar.js.map +1 -0
  472. package/ui/Badge.js +38 -0
  473. package/ui/Badge.js.map +1 -0
  474. package/ui/Button.js +7 -0
  475. package/ui/Button.js.map +1 -0
  476. package/ui/ChannelAvatar.js +53 -0
  477. package/ui/ChannelAvatar.js.map +1 -0
  478. package/ui/ChannelPreview.js +194 -0
  479. package/ui/ChannelPreview.js.map +1 -0
  480. package/ui/ChatHeader.js +138 -0
  481. package/ui/ChatHeader.js.map +1 -0
  482. package/ui/Checkbox.js +42 -0
  483. package/ui/Checkbox.js.map +1 -0
  484. package/ui/ConnectionStatus.js +28 -0
  485. package/ui/ConnectionStatus.js.map +1 -0
  486. package/ui/ContextMenu.js +417 -0
  487. package/ui/ContextMenu.js.map +1 -0
  488. package/ui/DateSeparator.js +37 -0
  489. package/ui/DateSeparator.js.map +1 -0
  490. package/ui/Dropdown.js +97 -0
  491. package/ui/Dropdown.js.map +1 -0
  492. package/ui/EmojiReactions.js +121 -0
  493. package/ui/EmojiReactions.js.map +1 -0
  494. package/ui/FileMessageItemBody.js +51 -0
  495. package/ui/FileMessageItemBody.js.map +1 -0
  496. package/ui/FileViewer.js +164 -0
  497. package/ui/FileViewer.js.map +1 -0
  498. package/ui/Icon.js +1432 -0
  499. package/ui/Icon.js.map +1 -0
  500. package/ui/IconButton.js +76 -0
  501. package/ui/IconButton.js.map +1 -0
  502. package/ui/ImageRenderer.js +131 -0
  503. package/ui/ImageRenderer.js.map +1 -0
  504. package/ui/Input.js +64 -0
  505. package/ui/Input.js.map +1 -0
  506. package/ui/Label.js +6 -0
  507. package/ui/Label.js.map +1 -0
  508. package/ui/LinkLabel.js +40 -0
  509. package/ui/LinkLabel.js.map +1 -0
  510. package/ui/Loader.js +37 -0
  511. package/ui/Loader.js.map +1 -0
  512. package/ui/MessageContent.js +322 -0
  513. package/ui/MessageContent.js.map +1 -0
  514. package/ui/MessageInput.js +225 -0
  515. package/ui/MessageInput.js.map +1 -0
  516. package/ui/MessageItemMenu.js +135 -0
  517. package/ui/MessageItemMenu.js.map +1 -0
  518. package/ui/MessageItemReactionMenu.js +106 -0
  519. package/ui/MessageItemReactionMenu.js.map +1 -0
  520. package/ui/MessageSearchFileItem.js +124 -0
  521. package/ui/MessageSearchFileItem.js.map +1 -0
  522. package/ui/MessageSearchItem.js +87 -0
  523. package/ui/MessageSearchItem.js.map +1 -0
  524. package/ui/Modal.js +128 -0
  525. package/ui/Modal.js.map +1 -0
  526. package/ui/MutedAvatarOverlay.js +34 -0
  527. package/ui/MutedAvatarOverlay.js.map +1 -0
  528. package/ui/OGMessageItemBody.js +91 -0
  529. package/ui/OGMessageItemBody.js.map +1 -0
  530. package/ui/OpenChannelAdminMessage.js +21 -0
  531. package/ui/OpenChannelAdminMessage.js.map +1 -0
  532. package/ui/OpenChannelAvatar.js +35 -0
  533. package/ui/OpenChannelAvatar.js.map +1 -0
  534. package/ui/OpenChannelMessageContent.js +8 -0
  535. package/ui/OpenChannelMessageContent.js.map +1 -0
  536. package/ui/OpenchannelConversationHeader.js +67 -0
  537. package/ui/OpenchannelConversationHeader.js.map +1 -0
  538. package/ui/OpenchannelFileMessage.js +224 -0
  539. package/ui/OpenchannelFileMessage.js.map +1 -0
  540. package/ui/OpenchannelOGMessage.js +339 -0
  541. package/ui/OpenchannelOGMessage.js.map +1 -0
  542. package/ui/OpenchannelThumbnailMessage.js +299 -0
  543. package/ui/OpenchannelThumbnailMessage.js.map +1 -0
  544. package/ui/OpenchannelUserMessage.js +258 -0
  545. package/ui/OpenchannelUserMessage.js.map +1 -0
  546. package/ui/PlaceHolder.js +11 -0
  547. package/ui/PlaceHolder.js.map +1 -0
  548. package/ui/QuoteMessage.js +125 -0
  549. package/ui/QuoteMessage.js.map +1 -0
  550. package/ui/QuoteMessageInput.js +93 -0
  551. package/ui/QuoteMessageInput.js.map +1 -0
  552. package/ui/ReactionBadge.js +61 -0
  553. package/ui/ReactionBadge.js.map +1 -0
  554. package/ui/ReactionButton.js +48 -0
  555. package/ui/ReactionButton.js.map +1 -0
  556. package/ui/SortByRow.js +50 -0
  557. package/ui/SortByRow.js.map +1 -0
  558. package/ui/TextButton.js +38 -0
  559. package/ui/TextButton.js.map +1 -0
  560. package/ui/TextMessageItemBody.js +34 -0
  561. package/ui/TextMessageItemBody.js.map +1 -0
  562. package/ui/ThumbnailMessageItemBody.js +76 -0
  563. package/ui/ThumbnailMessageItemBody.js.map +1 -0
  564. package/ui/Tooltip.js +28 -0
  565. package/ui/Tooltip.js.map +1 -0
  566. package/ui/TooltipWrapper.js +58 -0
  567. package/ui/TooltipWrapper.js.map +1 -0
  568. package/ui/UnknownMessageItemBody.js +35 -0
  569. package/ui/UnknownMessageItemBody.js.map +1 -0
  570. package/ui/UserListItem.js +151 -0
  571. package/ui/UserListItem.js.map +1 -0
  572. package/ui/UserProfile.js +81 -0
  573. package/ui/UserProfile.js.map +1 -0
  574. package/useSendbirdStateContext.js +20 -0
  575. package/useSendbirdStateContext.js.map +1 -0
  576. package/utils-08c4dbdc.js +34 -0
  577. package/utils-08c4dbdc.js.map +1 -0
  578. package/utils-af1b9829.js +30 -0
  579. package/utils-af1b9829.js.map +1 -0
  580. package/utils-c393e880.js +4 -0
  581. package/utils-c393e880.js.map +1 -0
  582. package/uuid-b0c93400.js +17 -0
  583. package/uuid-b0c93400.js.map +1 -0
  584. package/withSendBird.js +26 -0
  585. package/withSendBird.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChannelUI.js","sources":["../../../../src/smart-components/Channel/components/ChannelUI/index.tsx"],"sourcesContent":["import './channel-ui.scss';\n\nimport React, { useEffect, useState } from 'react';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport { useChannel } from '../../context/ChannelProvider';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport ConnectionStatus from '../../../../ui/ConnectionStatus';\nimport ChannelHeader from '../ChannelHeader';\nimport MessageList from '../MessageList';\nimport TypingIndicator from '../TypingIndicator';\nimport FrozenNotification from '../FrozenNotification';\nimport UnreadCount from '../UnreadCount';\nimport MessageInputWrapper from '../MessageInput';\nimport { RenderMessageProps } from '../../../../types';\nimport * as messageActionTypes from '../../context/dux/actionTypes';\n\nexport interface ChannelUIProps {\n renderPlaceholderLoader?: () => React.ReactNode;\n renderPlaceholderInvalid?: () => React.ReactNode;\n renderPlaceholderEmpty?: () => React.ReactNode;\n renderChannelHeader?: () => React.ReactNode;\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n renderMessageInput?: () => React.ReactNode;\n renderTypingIndicator?: () => React.ReactNode;\n renderCustomSeperator?: () => React.ReactNode;\n}\n\nconst ChannelUI: React.FC<ChannelUIProps> = ({\n renderPlaceholderLoader,\n renderPlaceholderInvalid,\n renderPlaceholderEmpty,\n renderChannelHeader,\n renderMessage,\n renderMessageInput,\n renderTypingIndicator,\n renderCustomSeperator,\n}: ChannelUIProps) => {\n const {\n currentGroupChannel,\n channelUrl,\n isInvalid,\n unreadSince,\n loading,\n setInitialTimeStamp,\n setAnimatedMessageId,\n setHighLightedMessageId,\n scrollRef,\n messagesDispatcher,\n } = useChannel();\n const [unreadCount, setUnreadCount] = useState(0);\n useEffect(() => {\n setUnreadCount(currentGroupChannel.unreadMessageCount);\n }, [currentGroupChannel?.unreadMessageCount]);\n\n const globalStore = useSendbirdStateContext();\n const sdkError = globalStore?.stores?.sdkStore?.error;\n const logger = globalStore?.config?.logger;\n const isOnline = globalStore?.config?.isOnline;\n\n if (!channelUrl) {\n return (<div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} />\n )\n }\n </div>);\n }\n if (isInvalid) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n );\n }\n if (sdkError) {\n return (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderInvalid?.() || (\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={() => {\n logger.info('Channel: reconnecting');\n // reconnect();\n }}\n />\n )\n }\n </div>\n );\n }\n return (\n <div className='sendbird-conversation'>\n {\n renderChannelHeader?.() || (\n <ChannelHeader />\n )\n }\n {\n currentGroupChannel?.isFrozen && (\n <FrozenNotification />\n )\n }\n {\n unreadCount > 0 && (\n <UnreadCount\n count={unreadCount}\n time={unreadSince}\n onClick={() => {\n setUnreadCount(0);\n if (scrollRef?.current?.scrollTop) {\n scrollRef.current.scrollTop = scrollRef?.current?.scrollHeight - scrollRef?.current?.offsetHeight;\n }\n currentGroupChannel?.markAsRead();\n messagesDispatcher({\n type: messageActionTypes.MARK_AS_READ,\n payload: { channel: currentGroupChannel },\n });\n setInitialTimeStamp(null);\n setAnimatedMessageId(null);\n setHighLightedMessageId(null);\n }}\n />\n )\n }\n {\n loading\n ? (\n <div className=\"sendbird-conversation\">\n {\n renderPlaceholderLoader?.() || (\n <PlaceHolder type={PlaceHolderTypes.LOADING} />\n )\n }\n </div>\n ) : (\n <MessageList\n renderMessage={renderMessage}\n renderPlaceholderEmpty={renderPlaceholderEmpty}\n renderCustomSeperator={renderCustomSeperator}\n />\n )\n }\n <div className=\"sendbird-conversation__footer\">\n {\n renderMessageInput?.() || (\n <MessageInputWrapper />\n )\n }\n <div className=\"sendbird-conversation__footer__typing-indicator\">\n {\n renderTypingIndicator?.() || (\n <TypingIndicator />\n )\n }\n {\n !isOnline && (\n <ConnectionStatus />\n )\n }\n </div>\n </div>\n </div>\n );\n}\n\nexport default ChannelUI;\n"],"names":["ChannelUI","_a","renderPlaceholderLoader","renderPlaceholderInvalid","renderPlaceholderEmpty","renderChannelHeader","renderMessage","renderMessageInput","renderTypingIndicator","renderCustomSeperator","_f","useChannel","currentGroupChannel","channelUrl","isInvalid","unreadSince","loading","setInitialTimeStamp","setAnimatedMessageId","setHighLightedMessageId","scrollRef","messagesDispatcher","_g","useState","unreadCount","setUnreadCount","useEffect","unreadMessageCount","globalStore","useSendbirdStateContext","sdkError","stores","sdkStore","error","logger","config","isOnline","React","PlaceHolder","PlaceHolderTypes","NO_CHANNELS","WRONG","info","ChannelHeader","isFrozen","FrozenNotification","UnreadCount","current","scrollTop","scrollHeight","offsetHeight","markAsRead","type","messageActionTypes","payload","channel","LOADING","MessageList","MessageInputWrapper","TypingIndicator","ConnectionStatus"],"mappings":"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"}
@@ -0,0 +1,159 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var reactDom = require('react-dom');
7
+ var ui_Avatar = require('../../ui/Avatar.js');
8
+ var ui_Label = require('../../index-1468d245.js');
9
+ var ui_Icon = require('../../ui/Icon.js');
10
+ var index$1 = require('../../index-aecc8d24.js');
11
+ var index = require('../../index-d4880236.js');
12
+ var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
13
+ var Channel_context = require('../../ChannelProvider-f1fb0108.js');
14
+ require('../../tslib.es6-4a281a05.js');
15
+ require('../../ui/ImageRenderer.js');
16
+ require('../../_rollupPluginBabelHelpers-fc14118c.js');
17
+ require('prop-types');
18
+ require('../../uuid-1d5ec8b2.js');
19
+ require('../../stringSet-aa544ce5.js');
20
+ require('../../withSendBird.js');
21
+ require('../../UserProfileContext-3533547d.js');
22
+ require('../../index-905331fa.js');
23
+ require('../../index-e2bb862c.js');
24
+ require('../../topics-8314d425.js');
25
+ require('../../compareIds-01306377.js');
26
+ require('../../ui/ContextMenu.js');
27
+ require('../../ui/SortByRow.js');
28
+ require('../../ui/ReactionButton.js');
29
+
30
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
31
+
32
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
33
+
34
+ var FileViewerComponent = function FileViewerComponent(_a) {
35
+ var // sender
36
+ profileUrl = _a.profileUrl,
37
+ nickname = _a.nickname,
38
+ // file
39
+ name = _a.name,
40
+ type = _a.type,
41
+ url = _a.url,
42
+ // others
43
+ isByMe = _a.isByMe,
44
+ onCancel = _a.onCancel,
45
+ onDelete = _a.onDelete,
46
+ disableDelete = _a.disableDelete;
47
+ return /*#__PURE__*/React__default["default"].createElement("div", {
48
+ className: "sendbird-fileviewer"
49
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
50
+ className: "sendbird-fileviewer__header"
51
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
52
+ className: "sendbird-fileviewer__header__left"
53
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
54
+ className: "sendbird-fileviewer__header__left__avatar"
55
+ }, /*#__PURE__*/React__default["default"].createElement(ui_Avatar["default"], {
56
+ height: "32px",
57
+ width: "32px",
58
+ src: profileUrl
59
+ })), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
60
+ className: "sendbird-fileviewer__header__left__filename",
61
+ type: ui_Label.LabelTypography.H_2,
62
+ color: ui_Label.LabelColors.ONBACKGROUND_1
63
+ }, name), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
64
+ className: "sendbird-fileviewer__header__left__sender-name",
65
+ type: ui_Label.LabelTypography.BODY_1,
66
+ color: ui_Label.LabelColors.ONBACKGROUND_2
67
+ }, nickname)), /*#__PURE__*/React__default["default"].createElement("div", {
68
+ className: "sendbird-fileviewer__header__right"
69
+ }, index.isSupportedFileView(type) && /*#__PURE__*/React__default["default"].createElement("div", {
70
+ className: "sendbird-fileviewer__header__right__actions"
71
+ }, /*#__PURE__*/React__default["default"].createElement("a", {
72
+ className: "sendbird-fileviewer__header__right__actions__download",
73
+ rel: "noopener noreferrer",
74
+ href: url,
75
+ target: "_blank"
76
+ }, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
77
+ type: ui_Icon.IconTypes.DOWNLOAD,
78
+ fillColor: ui_Icon.IconColors.ON_BACKGROUND_1,
79
+ height: "24px",
80
+ width: "24px"
81
+ })), onDelete && isByMe && /*#__PURE__*/React__default["default"].createElement("div", {
82
+ className: "sendbird-fileviewer__header__right__actions__delete"
83
+ }, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
84
+ className: disableDelete ? 'disabled' : '',
85
+ type: ui_Icon.IconTypes.DELETE,
86
+ fillColor: disableDelete ? ui_Icon.IconColors.GRAY : ui_Icon.IconColors.ON_BACKGROUND_1,
87
+ height: "24px",
88
+ width: "24px",
89
+ onClick: function onClick() {
90
+ if (!disableDelete) {
91
+ onDelete();
92
+ }
93
+ }
94
+ }))), /*#__PURE__*/React__default["default"].createElement("div", {
95
+ className: "sendbird-fileviewer__header__right__actions__close"
96
+ }, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
97
+ type: ui_Icon.IconTypes.CLOSE,
98
+ fillColor: ui_Icon.IconColors.ON_BACKGROUND_1,
99
+ height: "24px",
100
+ width: "24px",
101
+ onClick: onCancel
102
+ })))), /*#__PURE__*/React__default["default"].createElement("div", {
103
+ className: "sendbird-fileviewer__content"
104
+ }, index.isVideo(type) && /*#__PURE__*/React__default["default"].createElement("video", {
105
+ controls: true,
106
+ className: "sendbird-fileviewer__content__video"
107
+ }, /*#__PURE__*/React__default["default"].createElement("source", {
108
+ src: url,
109
+ type: type
110
+ })), index.isImage(type) && /*#__PURE__*/React__default["default"].createElement("img", {
111
+ src: url,
112
+ alt: name,
113
+ className: "sendbird-fileviewer__content__img"
114
+ }), !index.isSupportedFileView(type) && /*#__PURE__*/React__default["default"].createElement("div", {
115
+ className: "sendbird-fileviewer__content__unsupported"
116
+ }, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
117
+ type: ui_Label.LabelTypography.H_1,
118
+ color: ui_Label.LabelColors.ONBACKGROUND_1
119
+ }, "Unsupoprted message"))));
120
+ };
121
+
122
+ var FileViewer = function FileViewer(_a) {
123
+ var _b, _c, _d;
124
+
125
+ var onCancel = _a.onCancel,
126
+ message = _a.message;
127
+ var deleteMessage = Channel_context.useChannel().deleteMessage;
128
+ var sender = message.sender,
129
+ type = message.type,
130
+ url = message.url,
131
+ _e = message.name,
132
+ name = _e === void 0 ? '' : _e,
133
+ threadInfo = message.threadInfo;
134
+ var user = (_c = (_b = useSendbirdStateContext()) === null || _b === void 0 ? void 0 : _b.config) === null || _c === void 0 ? void 0 : _c.userId;
135
+ var isByMe = user === ((_d = message === null || message === void 0 ? void 0 : message.sender) === null || _d === void 0 ? void 0 : _d.userId);
136
+ var disableDelete = (threadInfo === null || threadInfo === void 0 ? void 0 : threadInfo.replyCount) > 0;
137
+ var profileUrl = sender.profileUrl,
138
+ _f = sender.nickname,
139
+ nickname = _f === void 0 ? '' : _f;
140
+ return /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/React__default["default"].createElement(FileViewerComponent, {
141
+ profileUrl: profileUrl,
142
+ nickname: nickname,
143
+ type: type,
144
+ url: url,
145
+ name: name,
146
+ onCancel: onCancel,
147
+ onDelete: function onDelete() {
148
+ deleteMessage(message).then(function () {
149
+ onCancel();
150
+ });
151
+ },
152
+ isByMe: isByMe,
153
+ disableDelete: disableDelete
154
+ }), document.getElementById(index$1.MODAL_ROOT));
155
+ };
156
+
157
+ exports.FileViewerComponent = FileViewerComponent;
158
+ exports["default"] = FileViewer;
159
+ //# sourceMappingURL=FileViewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileViewer.js","sources":["../../../../src/smart-components/Channel/components/FileViewer/index.tsx"],"sourcesContent":["import React from 'react';\nimport { createPortal } from 'react-dom';\n\nimport './file-viewer.scss';\nimport Avatar from '../../../../ui/Avatar';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconColors, IconTypes } from '../../../../ui/Icon';\nimport { MODAL_ROOT } from '../../../../hooks/useModal/ModalRoot';\n\nimport { isImage, isVideo, isSupportedFileView } from '../../../../utils';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\ntype FileViewerUIProps = {\n profileUrl: string;\n nickname: string;\n // file\n name: string;\n type: string;\n url: string;\n // others\n isByMe: boolean;\n onCancel: () => void;\n onDelete: () => void;\n disableDelete: boolean;\n};\n\nexport const FileViewerComponent: React.FC<FileViewerUIProps> = ({\n // sender\n profileUrl,\n nickname,\n // file\n name,\n type,\n url,\n // others\n isByMe,\n onCancel,\n onDelete,\n disableDelete,\n}: FileViewerUIProps) => (\n <div className=\"sendbird-fileviewer\">\n <div className=\"sendbird-fileviewer__header\">\n <div className=\"sendbird-fileviewer__header__left\">\n <div className=\"sendbird-fileviewer__header__left__avatar\">\n <Avatar height=\"32px\" width=\"32px\" src={profileUrl} />\n </div>\n <Label\n className=\"sendbird-fileviewer__header__left__filename\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {name}\n </Label>\n <Label\n className=\"sendbird-fileviewer__header__left__sender-name\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {nickname}\n </Label>\n </div>\n <div className=\"sendbird-fileviewer__header__right\">\n {\n isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__header__right__actions\">\n <a\n className=\"sendbird-fileviewer__header__right__actions__download\"\n rel=\"noopener noreferrer\"\n href={url}\n target=\"_blank\"\n >\n <Icon\n type={IconTypes.DOWNLOAD}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n />\n </a>\n {\n onDelete && isByMe && (\n <div className=\"sendbird-fileviewer__header__right__actions__delete\">\n <Icon\n className={disableDelete ? 'disabled' : ''}\n type={IconTypes.DELETE}\n fillColor={disableDelete ? IconColors.GRAY : IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={() => { if (!disableDelete) { onDelete(); } }}\n />\n </div>\n )\n }\n </div>\n )\n }\n <div className=\"sendbird-fileviewer__header__right__actions__close\">\n <Icon\n type={IconTypes.CLOSE}\n fillColor={IconColors.ON_BACKGROUND_1}\n height=\"24px\"\n width=\"24px\"\n onClick={onCancel}\n />\n </div>\n </div>\n </div>\n <div className=\"sendbird-fileviewer__content\">\n {isVideo(type) && (\n <video controls className=\"sendbird-fileviewer__content__video\">\n <source src={url} type={type} />\n </video>\n )}\n {\n isImage(type) && (\n <img\n src={url}\n alt={name}\n className=\"sendbird-fileviewer__content__img\"\n />\n )\n }\n {\n !isSupportedFileView(type) && (\n <div className=\"sendbird-fileviewer__content__unsupported\">\n <Label type={LabelTypography.H_1} color={LabelColors.ONBACKGROUND_1}>\n Unsupoprted message\n </Label>\n </div>\n )\n }\n </div>\n </div>\n);\n\ntype FileViewerProps = {\n onCancel:() => void;\n message: SendbirdUIKit.ClientFileMessage;\n};\n\nconst FileViewer: React.FC<FileViewerProps> = ({ onCancel, message }: FileViewerProps) => {\n const { deleteMessage } = useChannel();\n const {\n sender,\n type,\n url,\n name = '',\n threadInfo,\n } = message;\n const user = useSendbirdStateContext()?.config?.userId;\n const isByMe = user === message?.sender?.userId;\n const disableDelete = threadInfo?.replyCount > 0;\n const { profileUrl, nickname = '' } = sender;\n return createPortal(\n (\n <FileViewerComponent\n profileUrl={profileUrl}\n nickname={nickname}\n type={type}\n url={url}\n name={name}\n onCancel={onCancel}\n onDelete={() => {\n deleteMessage(message).then(() => {\n onCancel();\n });\n }}\n isByMe={isByMe}\n disableDelete={disableDelete}\n />\n ),\n document.getElementById(MODAL_ROOT),\n );\n}\n\nexport default FileViewer;\n"],"names":["FileViewerComponent","_a","profileUrl","nickname","name","type","url","isByMe","onCancel","onDelete","disableDelete","React","Avatar","Label","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","BODY_1","ONBACKGROUND_2","isSupportedFileView","Icon","IconTypes","DOWNLOAD","IconColors","ON_BACKGROUND_1","DELETE","GRAY","CLOSE","isVideo","isImage","H_1","FileViewer","message","deleteMessage","useChannel","sender","_e","threadInfo","user","useSendbirdStateContext","config","userId","replyCount","_f","createPortal","then","document","getElementById","MODAL_ROOT"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var LocalizationContext = require('../../LocalizationContext-68e55e2a.js');
5
+ var ui_Label = require('../../index-1468d245.js');
6
+ require('../../stringSet-aa544ce5.js');
7
+ require('../../index-e2bb862c.js');
8
+ require('../../_rollupPluginBabelHelpers-fc14118c.js');
9
+ require('prop-types');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
+
15
+ var FrozenNotification = function FrozenNotification() {
16
+ var stringSet = React.useContext(LocalizationContext.LocalizationContext).stringSet;
17
+ return /*#__PURE__*/React__default["default"].createElement("div", {
18
+ className: "sendbird-notification sendbird-notification--frozen"
19
+ }, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
20
+ className: "sendbird-notification__text",
21
+ type: ui_Label.LabelTypography.CAPTION_2
22
+ }, stringSet.CHANNEL_FROZEN));
23
+ };
24
+
25
+ module.exports = FrozenNotification;
26
+ //# sourceMappingURL=FrozenNotification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrozenNotification.js","sources":["../../../../src/smart-components/Channel/components/FrozenNotification/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\n\nimport './frozen-notification.scss';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport Label, { LabelTypography } from '../../../../ui/Label';\n\nconst FrozenNotification = (): JSX.Element => {\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-notification sendbird-notification--frozen\">\n <Label\n className=\"sendbird-notification__text\"\n type={LabelTypography.CAPTION_2}\n >\n {stringSet.CHANNEL_FROZEN}\n </Label>\n </div>\n );\n}\n\nexport default FrozenNotification;\n"],"names":["FrozenNotification","stringSet","useContext","LocalizationContext","React","Label","LabelTypography","CAPTION_2","CHANNEL_FROZEN"],"mappings":";;;;;;;;;;;;;;IAOMA,kBAAkB,GAAG,SAArBA,kBAAqB;AACjB,MAAAC,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd;AACR,sBACEC;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,wCAACC,cAAD;AACE,IAAA,SAAS,EAAC,6BADZ;AAEE,IAAA,IAAI,EAAEC,wBAAe,CAACC;AAFxB,KAIGN,SAAS,CAACO,cAJb,CADF,CADF;AAUD;;;;"}
@@ -0,0 +1,238 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var index$1 = require('../../index-905331fa.js');
5
+ var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
6
+ var Channel_context = require('../../ChannelProvider-f1fb0108.js');
7
+ var index = require('../../index-d4880236.js');
8
+ var ui_DateSeparator = require('../../ui/DateSeparator.js');
9
+ var ui_Label = require('../../index-1468d245.js');
10
+ var ui_MessageInput = require('../../ui/MessageInput.js');
11
+ var ui_MessageContent = require('../../ui/MessageContent.js');
12
+ var Channel_components_FileViewer = require('./FileViewer.js');
13
+ var Channel_components_RemoveMessageModal = require('./RemoveMessageModal.js');
14
+ var LocalizationContext = require('../../LocalizationContext-68e55e2a.js');
15
+ require('../../index-e2bb862c.js');
16
+ require('../../withSendBird.js');
17
+ require('../../_rollupPluginBabelHelpers-fc14118c.js');
18
+ require('../../UserProfileContext-3533547d.js');
19
+ require('prop-types');
20
+ require('../../topics-8314d425.js');
21
+ require('../../compareIds-01306377.js');
22
+ require('../../uuid-1d5ec8b2.js');
23
+ require('../../ui/ContextMenu.js');
24
+ require('react-dom');
25
+ require('../../ui/SortByRow.js');
26
+ require('../../stringSet-aa544ce5.js');
27
+ require('../../tslib.es6-4a281a05.js');
28
+ require('../../ui/ReactionButton.js');
29
+ require('../../ui/ImageRenderer.js');
30
+ require('../../ui/Icon.js');
31
+ require('../../color-4afb15fb.js');
32
+ require('../../ui/IconButton.js');
33
+ require('../../index-1044f1ed.js');
34
+ require('../../ui/Avatar.js');
35
+ require('../../ui/UserProfile.js');
36
+ require('../../sendBirdSelectors.js');
37
+ require('../../ui/Loader.js');
38
+ require('../../ui/MessageItemMenu.js');
39
+ require('../../ui/MessageItemReactionMenu.js');
40
+ require('../../ui/EmojiReactions.js');
41
+ require('../../ui/Tooltip.js');
42
+ require('../../ui/TooltipWrapper.js');
43
+ require('../../ui/ReactionBadge.js');
44
+ require('../../ui/AdminMessage.js');
45
+ require('../../ui/TextMessageItemBody.js');
46
+ require('../../ui/FileMessageItemBody.js');
47
+ require('../../ui/TextButton.js');
48
+ require('../../ui/ThumbnailMessageItemBody.js');
49
+ require('../../ui/OGMessageItemBody.js');
50
+ require('../../ui/LinkLabel.js');
51
+ require('../../ui/UnknownMessageItemBody.js');
52
+ require('../../ui/QuoteMessage.js');
53
+ require('../../index-aecc8d24.js');
54
+ require('../../ui/Modal.js');
55
+ require('../../utils-3b0815dc.js');
56
+
57
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
58
+
59
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
60
+
61
+ var Message = function Message(props) {
62
+ var _a, _b, _c, _d;
63
+
64
+ var message = props.message,
65
+ hasSeparator = props.hasSeparator,
66
+ chainTop = props.chainTop,
67
+ chainBottom = props.chainBottom,
68
+ handleScroll = props.handleScroll,
69
+ renderCustomSeperator = props.renderCustomSeperator,
70
+ renderEditInput = props.renderEditInput,
71
+ renderMessage = props.renderMessage,
72
+ renderMessageContent = props.renderMessageContent;
73
+ var dateLocale = LocalizationContext.useLocalization().dateLocale;
74
+ var globalStore = useSendbirdStateContext();
75
+ var userId = (_a = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config) === null || _a === void 0 ? void 0 : _a.userId;
76
+ var isOnline = (_b = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config) === null || _b === void 0 ? void 0 : _b.isOnline;
77
+
78
+ var _e = Channel_context.useChannel(),
79
+ currentGroupChannel = _e.currentGroupChannel,
80
+ highLightedMessageId = _e.highLightedMessageId,
81
+ setHighLightedMessageId = _e.setHighLightedMessageId,
82
+ animatedMessageId = _e.animatedMessageId,
83
+ setAnimatedMessageId = _e.setAnimatedMessageId,
84
+ updateMessage = _e.updateMessage,
85
+ scrollToMessage = _e.scrollToMessage,
86
+ replyType = _e.replyType,
87
+ useReaction = _e.useReaction,
88
+ toggleReaction = _e.toggleReaction,
89
+ emojiContainer = _e.emojiContainer,
90
+ nicknamesMap = _e.nicknamesMap,
91
+ quoteMessage = _e.quoteMessage,
92
+ setQuoteMessage = _e.setQuoteMessage,
93
+ resendMessage = _e.resendMessage;
94
+
95
+ var _f = React.useState(false),
96
+ showEdit = _f[0],
97
+ setShowEdit = _f[1];
98
+
99
+ var _g = React.useState(false),
100
+ showRemove = _g[0],
101
+ setShowRemove = _g[1];
102
+
103
+ var _h = React.useState(false),
104
+ showFileViewer = _h[0],
105
+ setShowFileViewer = _h[1];
106
+
107
+ var _j = React.useState(false),
108
+ isAnimated = _j[0],
109
+ setIsAnimated = _j[1];
110
+
111
+ var _k = React.useState(false),
112
+ isHighlighted = _k[0],
113
+ setIsHighlighted = _k[1];
114
+
115
+ var editMessageInputRef = React.useRef(null);
116
+ var useMessageScrollRef = React.useRef(null);
117
+ React.useLayoutEffect(function () {
118
+ handleScroll === null || handleScroll === void 0 ? void 0 : handleScroll();
119
+ }, [showEdit, (_c = message === null || message === void 0 ? void 0 : message.reactions) === null || _c === void 0 ? void 0 : _c.length]);
120
+ React.useLayoutEffect(function () {
121
+ if (highLightedMessageId === message.messageId) {
122
+ if (useMessageScrollRef && useMessageScrollRef.current) {
123
+ useMessageScrollRef.current.scrollIntoView({
124
+ block: 'center',
125
+ inline: 'center'
126
+ });
127
+ setIsAnimated(false);
128
+ setTimeout(function () {
129
+ setIsHighlighted(true);
130
+ }, 500);
131
+ setTimeout(function () {
132
+ setHighLightedMessageId(0);
133
+ }, 1600);
134
+ }
135
+ } else {
136
+ setIsHighlighted(false);
137
+ }
138
+ }, [highLightedMessageId, useMessageScrollRef.current, message.messageId]);
139
+ React.useLayoutEffect(function () {
140
+ if (animatedMessageId === message.messageId) {
141
+ if (useMessageScrollRef && useMessageScrollRef.current) {
142
+ useMessageScrollRef.current.scrollIntoView({
143
+ block: 'center',
144
+ inline: 'center'
145
+ });
146
+ setIsHighlighted(false);
147
+ setTimeout(function () {
148
+ setIsAnimated(true);
149
+ }, 500);
150
+ setTimeout(function () {
151
+ setAnimatedMessageId(0);
152
+ }, 1600);
153
+ }
154
+ } else {
155
+ setIsAnimated(false);
156
+ }
157
+ }, [animatedMessageId, useMessageScrollRef.current, message.messageId]);
158
+ var renderedMessage = React.useMemo(function () {
159
+ return renderMessage === null || renderMessage === void 0 ? void 0 : renderMessage({
160
+ message: message,
161
+ chainTop: chainTop,
162
+ chainBottom: chainBottom
163
+ });
164
+ }, [message, renderMessage]);
165
+
166
+ if (renderedMessage) {
167
+ return /*#__PURE__*/React__default["default"].createElement("div", {
168
+ ref: useMessageScrollRef,
169
+ className: index.getClassName(['sendbird-msg-hoc sendbird-msg--scroll-ref', isAnimated ? 'sendbird-msg-hoc__animated' : '', isHighlighted ? 'sendbird-msg-hoc__highlighted' : ''])
170
+ }, // TODO: Add message instance as a function parameter
171
+ hasSeparator && (renderCustomSeperator === null || renderCustomSeperator === void 0 ? void 0 : renderCustomSeperator()) || /*#__PURE__*/React__default["default"].createElement(ui_DateSeparator, null, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
172
+ type: ui_Label.LabelTypography.CAPTION_2,
173
+ color: ui_Label.LabelColors.ONBACKGROUND_2
174
+ }, index$1.format(message.createdAt, 'MMMM dd, yyyy', {
175
+ locale: dateLocale
176
+ }))), renderedMessage);
177
+ }
178
+
179
+ if (showEdit && message.isUserMessage()) {
180
+ return (renderEditInput === null || renderEditInput === void 0 ? void 0 : renderEditInput()) || /*#__PURE__*/React__default["default"].createElement(ui_MessageInput, {
181
+ isEdit: true,
182
+ disabled: Channel_context.isDisabledBecauseFrozen(currentGroupChannel),
183
+ ref: editMessageInputRef,
184
+ name: message.messageId,
185
+ onSendMessage: updateMessage,
186
+ onCancelEdit: function onCancelEdit() {
187
+ setShowEdit(false);
188
+ },
189
+ value: (_d = message) === null || _d === void 0 ? void 0 : _d.message
190
+ });
191
+ }
192
+
193
+ return /*#__PURE__*/React__default["default"].createElement("div", {
194
+ className: index.getClassName(['sendbird-msg-hoc sendbird-msg--scroll-ref', isAnimated ? 'sendbird-msg-hoc__animated' : '', isHighlighted ? 'sendbird-msg-hoc__highlighted' : '']),
195
+ style: {
196
+ marginBottom: '2px'
197
+ },
198
+ ref: useMessageScrollRef
199
+ }, hasSeparator && ((renderCustomSeperator === null || renderCustomSeperator === void 0 ? void 0 : renderCustomSeperator()) || /*#__PURE__*/React__default["default"].createElement(ui_DateSeparator, null, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
200
+ type: ui_Label.LabelTypography.CAPTION_2,
201
+ color: ui_Label.LabelColors.ONBACKGROUND_2
202
+ }, index$1.format(message.createdAt, 'MMMM dd, yyyy', {
203
+ locale: dateLocale
204
+ })))), (renderMessageContent === null || renderMessageContent === void 0 ? void 0 : renderMessageContent()) || /*#__PURE__*/React__default["default"].createElement(ui_MessageContent, {
205
+ className: "sendbird-message-hoc__message-content",
206
+ userId: userId,
207
+ scrollToMessage: scrollToMessage,
208
+ channel: currentGroupChannel,
209
+ message: message,
210
+ disabled: !isOnline,
211
+ chainTop: chainTop,
212
+ chainBottom: chainBottom,
213
+ useReaction: useReaction,
214
+ replyType: replyType,
215
+ nicknamesMap: nicknamesMap,
216
+ emojiContainer: emojiContainer,
217
+ showEdit: setShowEdit,
218
+ showRemove: setShowRemove,
219
+ showFileViewer: setShowFileViewer,
220
+ resendMessage: resendMessage,
221
+ toggleReaction: toggleReaction,
222
+ quoteMessage: quoteMessage,
223
+ setQuoteMessage: setQuoteMessage
224
+ }), showRemove && /*#__PURE__*/React__default["default"].createElement(Channel_components_RemoveMessageModal, {
225
+ message: message,
226
+ onCancel: function onCancel() {
227
+ return setShowRemove(false);
228
+ }
229
+ }), showFileViewer && /*#__PURE__*/React__default["default"].createElement(Channel_components_FileViewer["default"], {
230
+ message: message,
231
+ onCancel: function onCancel() {
232
+ return setShowFileViewer(false);
233
+ }
234
+ }));
235
+ };
236
+
237
+ module.exports = Message;
238
+ //# sourceMappingURL=Message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Message.js","sources":["../../../../src/smart-components/Channel/components/Message/index.tsx"],"sourcesContent":["import React, {\n useState,\n useRef,\n useLayoutEffect,\n useMemo,\n} from 'react';\nimport format from 'date-fns/format';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\nimport { getClassName } from '../../../../utils';\nimport { isDisabledBecauseFrozen } from '../../context/utils';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport MessageContent from '../../../../ui/MessageContent';\nimport FileViewer from '../FileViewer';\nimport RemoveMessageModal from '../RemoveMessageModal';\nimport { EveryMessage, RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\ntype MessageUIProps = {\n message: EveryMessage;\n hasSeparator?: boolean;\n chainTop?: boolean;\n chainBottom?: boolean;\n handleScroll: () => void;\n // for extending\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n renderCustomSeperator?: () => React.ReactNode;\n renderEditInput?: () => React.ReactNode;\n renderMessageContent?: () => React.ReactNode;\n};\n\nconst Message: React.FC<MessageUIProps> = (props: MessageUIProps) => {\n const {\n message,\n hasSeparator,\n chainTop,\n chainBottom,\n handleScroll,\n renderCustomSeperator,\n renderEditInput,\n renderMessage,\n renderMessageContent,\n } = props;\n\n const { dateLocale } = useLocalization();\n const globalStore = useSendbirdStateContext();\n const userId = globalStore?.config?.userId;\n const isOnline = globalStore?.config?.isOnline;\n\n const {\n currentGroupChannel,\n highLightedMessageId,\n setHighLightedMessageId,\n animatedMessageId,\n setAnimatedMessageId,\n updateMessage,\n scrollToMessage,\n replyType,\n useReaction,\n toggleReaction,\n emojiContainer,\n nicknamesMap,\n quoteMessage,\n setQuoteMessage,\n resendMessage,\n } = useChannel();\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const [isAnimated, setIsAnimated] = useState(false);\n const [isHighlighted, setIsHighlighted] = useState(false);\n const editMessageInputRef = useRef(null);\n const useMessageScrollRef = useRef(null);\n\n useLayoutEffect(() => {\n handleScroll?.();\n }, [showEdit, message?.reactions?.length]);\n\n useLayoutEffect(() => {\n if (highLightedMessageId === message.messageId) {\n if (useMessageScrollRef && useMessageScrollRef.current) {\n useMessageScrollRef.current.scrollIntoView({\n block: 'center',\n inline: 'center',\n });\n setIsAnimated(false);\n setTimeout(() => {\n setIsHighlighted(true);\n }, 500);\n setTimeout(() => {\n setHighLightedMessageId(0);\n }, 1600);\n }\n } else {\n setIsHighlighted(false);\n }\n }, [highLightedMessageId, useMessageScrollRef.current, message.messageId]);\n\n useLayoutEffect(() => {\n if (animatedMessageId === message.messageId) {\n if (useMessageScrollRef && useMessageScrollRef.current) {\n useMessageScrollRef.current.scrollIntoView({\n block: 'center',\n inline: 'center',\n });\n setIsHighlighted(false);\n setTimeout(() => {\n setIsAnimated(true);\n }, 500);\n setTimeout(() => {\n setAnimatedMessageId(0);\n }, 1600);\n }\n } else {\n setIsAnimated(false);\n }\n }, [animatedMessageId, useMessageScrollRef.current, message.messageId]);\n const renderedMessage = useMemo(() => {\n return renderMessage?.({\n message,\n chainTop,\n chainBottom,\n });\n }, [message, renderMessage]);\n\n if (renderedMessage) {\n return (\n <div\n ref={useMessageScrollRef}\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n >\n {/* date-separator */}\n {\n // TODO: Add message instance as a function parameter\n hasSeparator && renderCustomSeperator?.() || (\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 {renderedMessage}\n </div>\n );\n }\n\n if (showEdit && message.isUserMessage()) {\n return renderEditInput?.() || (\n <MessageInput\n isEdit\n disabled={isDisabledBecauseFrozen(currentGroupChannel)}\n ref={editMessageInputRef}\n name={message.messageId}\n onSendMessage={updateMessage}\n onCancelEdit={() => { setShowEdit(false); }}\n value={(message as SendbirdUIKit.ClientUserMessage)?.message}\n />\n );\n }\n\n return (\n <div\n className={getClassName([\n 'sendbird-msg-hoc sendbird-msg--scroll-ref',\n isAnimated ? 'sendbird-msg-hoc__animated' : '',\n isHighlighted ? 'sendbird-msg-hoc__highlighted' : '',\n ])}\n style={{ marginBottom: '2px' }}\n ref={useMessageScrollRef}\n >\n {/* date-separator */}\n {\n hasSeparator && (renderCustomSeperator?.() || (\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 renderMessageContent?.() || (\n <MessageContent\n className=\"sendbird-message-hoc__message-content\"\n userId={userId}\n scrollToMessage={scrollToMessage}\n channel={currentGroupChannel}\n message={message}\n disabled={!isOnline}\n chainTop={chainTop}\n chainBottom={chainBottom}\n useReaction={useReaction}\n replyType={replyType}\n nicknamesMap={nicknamesMap}\n emojiContainer={emojiContainer}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n showFileViewer={setShowFileViewer}\n resendMessage={resendMessage}\n toggleReaction={toggleReaction}\n quoteMessage={quoteMessage}\n setQuoteMessage={setQuoteMessage}\n />\n )\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n message={message}\n onCancel={() => setShowRemove(false)}\n />\n )\n }\n {\n showFileViewer && (\n <FileViewer\n message={message as SendbirdUIKit.ClientFileMessage}\n onCancel={() => setShowFileViewer(false)}\n />\n )\n }\n </div>\n );\n};\n\nexport default Message;\n"],"names":["Message","props","message","hasSeparator","chainTop","chainBottom","handleScroll","renderCustomSeperator","renderEditInput","renderMessage","renderMessageContent","dateLocale","useLocalization","globalStore","useSendbirdStateContext","userId","config","isOnline","_e","useChannel","currentGroupChannel","highLightedMessageId","setHighLightedMessageId","animatedMessageId","setAnimatedMessageId","updateMessage","scrollToMessage","replyType","useReaction","toggleReaction","emojiContainer","nicknamesMap","quoteMessage","setQuoteMessage","resendMessage","_f","useState","showEdit","setShowEdit","_g","showRemove","setShowRemove","_h","showFileViewer","setShowFileViewer","_j","isAnimated","setIsAnimated","_k","isHighlighted","setIsHighlighted","editMessageInputRef","useRef","useMessageScrollRef","useLayoutEffect","reactions","length","messageId","current","scrollIntoView","block","inline","setTimeout","renderedMessage","useMemo","React","getClassName","DateSeparator","Label","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","createdAt","locale","isUserMessage","MessageInput","isDisabledBecauseFrozen","marginBottom","MessageContent","RemoveMessageModal","FileViewer"],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var Channel_context = require('../../ChannelProvider-f1fb0108.js');
5
+ var ui_MessageInput = require('../../ui/MessageInput.js');
6
+ var ui_QuoteMessageInput = require('../../ui/QuoteMessageInput.js');
7
+ var LocalizationContext = require('../../LocalizationContext-68e55e2a.js');
8
+ var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
9
+ require('../../UserProfileContext-3533547d.js');
10
+ require('prop-types');
11
+ require('../../_rollupPluginBabelHelpers-fc14118c.js');
12
+ require('../../index-905331fa.js');
13
+ require('../../index-e2bb862c.js');
14
+ require('../../topics-8314d425.js');
15
+ require('../../index-d4880236.js');
16
+ require('../../tslib.es6-4a281a05.js');
17
+ require('../../compareIds-01306377.js');
18
+ require('../../uuid-1d5ec8b2.js');
19
+ require('../../ui/ContextMenu.js');
20
+ require('../../index-1468d245.js');
21
+ require('../../stringSet-aa544ce5.js');
22
+ require('react-dom');
23
+ require('../../ui/SortByRow.js');
24
+ require('../../ui/ReactionButton.js');
25
+ require('../../ui/ImageRenderer.js');
26
+ require('../../ui/Icon.js');
27
+ require('../../ui/IconButton.js');
28
+ require('../../index-1044f1ed.js');
29
+ require('../../withSendBird.js');
30
+
31
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
32
+
33
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
34
+
35
+ var MessageInputWrapper = function MessageInputWrapper() {
36
+ var _a;
37
+
38
+ var _b = Channel_context.useChannel(),
39
+ currentGroupChannel = _b.currentGroupChannel,
40
+ initialized = _b.initialized,
41
+ quoteMessage = _b.quoteMessage,
42
+ sendMessage = _b.sendMessage,
43
+ sendFileMessage = _b.sendFileMessage,
44
+ setQuoteMessage = _b.setQuoteMessage,
45
+ messageInputRef = _b.messageInputRef;
46
+
47
+ var globalStore = useSendbirdStateContext();
48
+ var channel = currentGroupChannel;
49
+ var isOnline = (_a = globalStore === null || globalStore === void 0 ? void 0 : globalStore.config) === null || _a === void 0 ? void 0 : _a.isOnline;
50
+ var stringSet = React.useContext(LocalizationContext.LocalizationContext).stringSet;
51
+ var disabled = !initialized || Channel_context.isDisabledBecauseFrozen(channel) || Channel_context.isDisabledBecauseMuted(channel) || !isOnline;
52
+ var isOperator = Channel_context.isOperator(channel);
53
+ var isBroadcast = channel.isBroadcast; // broadcast channel + not operator
54
+
55
+ if (isBroadcast && !isOperator) {
56
+ return null;
57
+ } // other conditions
58
+
59
+
60
+ return /*#__PURE__*/React__default["default"].createElement("div", {
61
+ className: "sendbird-message-input-wrapper"
62
+ }, quoteMessage && /*#__PURE__*/React__default["default"].createElement("div", {
63
+ className: "sendbird-message-input-wrapper__quote-message-input"
64
+ }, /*#__PURE__*/React__default["default"].createElement(ui_QuoteMessageInput, {
65
+ replyingMessage: quoteMessage,
66
+ onClose: function onClose() {
67
+ return setQuoteMessage(null);
68
+ }
69
+ })), /*#__PURE__*/React__default["default"].createElement(ui_MessageInput, {
70
+ className: "sendbird-message-input-wrapper__message-input",
71
+ channelUrl: channel === null || channel === void 0 ? void 0 : channel.url,
72
+ placeholder: quoteMessage && stringSet.MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER || Channel_context.isDisabledBecauseFrozen(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED || Channel_context.isDisabledBecauseMuted(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__MUTED,
73
+ ref: messageInputRef,
74
+ disabled: disabled,
75
+ onStartTyping: function onStartTyping() {
76
+ channel === null || channel === void 0 ? void 0 : channel.startTyping();
77
+ },
78
+ onSendMessage: function onSendMessage() {
79
+ sendMessage(quoteMessage);
80
+ setQuoteMessage(null);
81
+ channel === null || channel === void 0 ? void 0 : channel.endTyping();
82
+ },
83
+ onFileUpload: function onFileUpload(file) {
84
+ sendFileMessage(file, quoteMessage);
85
+ setQuoteMessage(null);
86
+ }
87
+ }));
88
+ };
89
+
90
+ var MessageInputWrapper$1 = /*#__PURE__*/React__default["default"].forwardRef(MessageInputWrapper);
91
+
92
+ module.exports = MessageInputWrapper$1;
93
+ //# sourceMappingURL=MessageInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageInput.js","sources":["../../../../src/smart-components/Channel/components/MessageInput/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\n\nimport './message-input.scss';\nimport * as utils from '../../context/utils';\n\nimport MessageInput from '../../../../ui/MessageInput';\nimport QuoteMessageInput from '../../../../ui/QuoteMessageInput';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useChannel } from '../../context/ChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nconst MessageInputWrapper = (): JSX.Element => {\n const {\n currentGroupChannel,\n initialized,\n quoteMessage,\n sendMessage,\n sendFileMessage,\n setQuoteMessage,\n messageInputRef,\n } = useChannel();\n const globalStore = useSendbirdStateContext();\n const channel = currentGroupChannel;\n\n const isOnline = globalStore?.config?.isOnline;\n\n const { stringSet } = useContext(LocalizationContext);\n const disabled = !initialized\n || utils.isDisabledBecauseFrozen(channel)\n || utils.isDisabledBecauseMuted(channel)\n || !isOnline;\n\n const isOperator = utils.isOperator(channel);\n const { isBroadcast } = channel;\n\n // broadcast channel + not operator\n if (isBroadcast && !isOperator) {\n return null;\n }\n\n // other conditions\n return (\n <div className=\"sendbird-message-input-wrapper\">\n {quoteMessage && (\n <div className=\"sendbird-message-input-wrapper__quote-message-input\">\n <QuoteMessageInput\n replyingMessage={quoteMessage}\n onClose={() => setQuoteMessage(null)}\n />\n </div>\n )}\n <MessageInput\n className=\"sendbird-message-input-wrapper__message-input\"\n channelUrl={channel?.url}\n placeholder={\n (quoteMessage && stringSet.MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER)\n || (utils.isDisabledBecauseFrozen(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED)\n || (utils.isDisabledBecauseMuted(channel) && stringSet.MESSAGE_INPUT__PLACE_HOLDER__MUTED)\n }\n ref={messageInputRef}\n disabled={disabled}\n onStartTyping={() => {\n channel?.startTyping();\n }}\n onSendMessage={() => {\n sendMessage(quoteMessage);\n setQuoteMessage(null);\n channel?.endTyping();\n }}\n onFileUpload={(file) => {\n sendFileMessage(file, quoteMessage);\n setQuoteMessage(null);\n }}\n />\n </div>\n );\n}\n\nexport default React.forwardRef(MessageInputWrapper);\n"],"names":["MessageInputWrapper","_b","useChannel","currentGroupChannel","initialized","quoteMessage","sendMessage","sendFileMessage","setQuoteMessage","messageInputRef","globalStore","useSendbirdStateContext","channel","isOnline","config","stringSet","useContext","LocalizationContext","disabled","utils","isOperator","isBroadcast","React","QuoteMessageInput","MessageInput","url","MESSAGE_INPUT__QUOTE_REPLY__PLACE_HOLDER","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","MESSAGE_INPUT__PLACE_HOLDER__MUTED","startTyping","endTyping","file","forwardRef"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB;;;AACpB,MAAAC,KAQFC,0BAAU,EARR;AAAA,MACJC,mBAAmB,yBADf;AAAA,MAEJC,WAAW,iBAFP;AAAA,MAGJC,YAAY,kBAHR;AAAA,MAIJC,WAAW,iBAJP;AAAA,MAKJC,eAAe,qBALX;AAAA,MAMJC,eAAe,qBANX;AAAA,MAOJC,eAAe,qBAPX;;AASN,MAAMC,WAAW,GAAGC,uBAAuB,EAA3C;AACA,MAAMC,OAAO,GAAGT,mBAAhB;AAEA,MAAMU,QAAQ,GAAG,MAAAH,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEI,MAAb,UAAA,iBAAA,SAAA,MAAqBD,QAAtC;AAEQ,MAAAE,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd;AACR,MAAMC,QAAQ,GAAG,CAACd,WAAD,IACZe,uCAAA,CAA8BP,OAA9B,CADY,IAEZO,sCAAA,CAA6BP,OAA7B,CAFY,IAGZ,CAACC,QAHN;AAKA,MAAMO,UAAU,GAAGD,0BAAA,CAAiBP,OAAjB,CAAnB;AACQ,MAAAS,WAAW,GAAKT,OAAO,YAAvB;;AAGR,MAAIS,WAAW,IAAI,CAACD,UAApB,EAAgC;AAC9B,WAAO,IAAP;AACD;;;AAGD,sBACEE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGjB,YAAY,iBACXiB;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,wCAACC,oBAAD;AACE,IAAA,eAAe,EAAElB,YADnB;AAEE,IAAA,OAAO,EAAE;AAAM,aAAAG,eAAe,CAAC,IAAD,CAAf;AAAqB;AAFtC,IADF,CAFJ,eASEc,wCAACE,eAAD;AACE,IAAA,SAAS,EAAC,+CADZ;AAEE,IAAA,UAAU,EAAEZ,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEa,GAFvB;AAGE,IAAA,WAAW,EACRpB,YAAY,IAAIU,SAAS,CAACW,wCAA3B,IACIP,uCAAA,CAA8BP,OAA9B,KAA0CG,SAAS,CAACY,qCADxD,IAEIR,sCAAA,CAA6BP,OAA7B,KAAyCG,SAAS,CAACa,kCAN3D;AAQE,IAAA,GAAG,EAAEnB,eARP;AASE,IAAA,QAAQ,EAAES,QATZ;AAUE,IAAA,aAAa,EAAE;AACbN,MAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEiB,WAAT,EAAA;AACD,KAZH;AAaE,IAAA,aAAa,EAAE;AACbvB,MAAAA,WAAW,CAACD,YAAD,CAAX;AACAG,MAAAA,eAAe,CAAC,IAAD,CAAf;AACAI,MAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEkB,SAAT,EAAA;AACD,KAjBH;AAkBE,IAAA,YAAY,EAAE,sBAACC,IAAD;AACZxB,MAAAA,eAAe,CAACwB,IAAD,EAAO1B,YAAP,CAAf;AACAG,MAAAA,eAAe,CAAC,IAAD,CAAf;AACD;AArBH,IATF,CADF;AAmCD,CAjED;;AAmEA,yCAAec,yBAAK,CAACU,UAAN,CAAiBhC,mBAAjB,CAAf;;;;"}