@sendbird/uikit-react 3.0.0-alpha.1 → 3.0.0-beta.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 (614) hide show
  1. package/App.js +305 -0
  2. package/App.js.map +1 -0
  3. package/CHANGELOG.md +50 -0
  4. package/Channel/components/ChannelHeader.js +117 -0
  5. package/Channel/components/ChannelHeader.js.map +1 -0
  6. package/Channel/components/ChannelUI.js +179 -0
  7. package/Channel/components/ChannelUI.js.map +1 -0
  8. package/Channel/components/FileViewer.js +151 -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 +348 -0
  13. package/Channel/components/Message.js.map +1 -0
  14. package/Channel/components/MessageInput.js +202 -0
  15. package/Channel/components/MessageInput.js.map +1 -0
  16. package/Channel/components/MessageList.js +239 -0
  17. package/Channel/components/MessageList.js.map +1 -0
  18. package/Channel/components/RemoveMessageModal.js +53 -0
  19. package/Channel/components/RemoveMessageModal.js.map +1 -0
  20. package/Channel/components/SuggestedMentionList.js +250 -0
  21. package/Channel/components/SuggestedMentionList.js.map +1 -0
  22. package/Channel/components/TypingIndicator.js +98 -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 +24 -0
  27. package/Channel/context.js.map +1 -0
  28. package/Channel.js +106 -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 +214 -0
  35. package/ChannelList/components/ChannelListUI.js.map +1 -0
  36. package/ChannelList/components/ChannelPreview.js +181 -0
  37. package/ChannelList/components/ChannelPreview.js.map +1 -0
  38. package/ChannelList/components/ChannelPreviewAction.js +131 -0
  39. package/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  40. package/ChannelList/context.js +13 -0
  41. package/ChannelList/context.js.map +1 -0
  42. package/ChannelList.js +81 -0
  43. package/ChannelList.js.map +1 -0
  44. package/ChannelListProvider-7c351968.js +861 -0
  45. package/ChannelListProvider-7c351968.js.map +1 -0
  46. package/ChannelProvider-d5126903.js +2114 -0
  47. package/ChannelProvider-d5126903.js.map +1 -0
  48. package/ChannelSettings/components/AdminPanel.js +905 -0
  49. package/ChannelSettings/components/AdminPanel.js.map +1 -0
  50. package/ChannelSettings/components/ChannelProfile.js +102 -0
  51. package/ChannelSettings/components/ChannelProfile.js.map +1 -0
  52. package/ChannelSettings/components/ChannelSettingsUI.js +152 -0
  53. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  54. package/ChannelSettings/components/EditDetailsModal.js +154 -0
  55. package/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  56. package/ChannelSettings/components/LeaveChannel.js +53 -0
  57. package/ChannelSettings/components/LeaveChannel.js.map +1 -0
  58. package/ChannelSettings/components/UserListItem.js +105 -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/InviteMembers.js +184 -0
  69. package/CreateChannel/components/InviteMembers.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 +8 -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-ddfd92e6.js +53 -0
  77. package/CreateChannelProvider-ddfd92e6.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-b021af8f.js +22 -0
  85. package/LocalizationContext-b021af8f.js.map +1 -0
  86. package/MemberList-323e7517.js +425 -0
  87. package/MemberList-323e7517.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 +392 -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 +78 -0
  97. package/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  98. package/OpenChannel/components/OpenChannelInput.js +56 -0
  99. package/OpenChannel/components/OpenChannelInput.js.map +1 -0
  100. package/OpenChannel/components/OpenChannelMessage.js +282 -0
  101. package/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  102. package/OpenChannel/components/OpenChannelMessageList.js +157 -0
  103. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  104. package/OpenChannel/components/OpenChannelUI.js +109 -0
  105. package/OpenChannel/components/OpenChannelUI.js.map +1 -0
  106. package/OpenChannel/context.js +14 -0
  107. package/OpenChannel/context.js.map +1 -0
  108. package/OpenChannel.js +80 -0
  109. package/OpenChannel.js.map +1 -0
  110. package/OpenChannelProvider-abc4ab98.js +2011 -0
  111. package/OpenChannelProvider-abc4ab98.js.map +1 -0
  112. package/OpenChannelSettings/components/EditDetailsModal.js +149 -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 +104 -0
  117. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  118. package/OpenChannelSettings/components/OperatorUI.js +184 -0
  119. package/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  120. package/OpenChannelSettings/components/ParticipantUI.js +172 -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 +111 -0
  127. package/SendbirdProvider.js +754 -0
  128. package/SendbirdProvider.js.map +1 -0
  129. package/UserProfileContext-daa99f9b.js +38 -0
  130. package/UserProfileContext-daa99f9b.js.map +1 -0
  131. package/_rollupPluginBabelHelpers-8e4fae98.js +233 -0
  132. package/_rollupPluginBabelHelpers-8e4fae98.js.map +1 -0
  133. package/actionTypes-189daf51.js +6 -0
  134. package/actionTypes-189daf51.js.map +1 -0
  135. package/cjs/App.js +312 -0
  136. package/cjs/App.js.map +1 -0
  137. package/cjs/Channel/components/ChannelHeader.js +123 -0
  138. package/cjs/Channel/components/ChannelHeader.js.map +1 -0
  139. package/cjs/Channel/components/ChannelUI.js +185 -0
  140. package/cjs/Channel/components/ChannelUI.js.map +1 -0
  141. package/cjs/Channel/components/FileViewer.js +160 -0
  142. package/cjs/Channel/components/FileViewer.js.map +1 -0
  143. package/cjs/Channel/components/FrozenNotification.js +26 -0
  144. package/cjs/Channel/components/FrozenNotification.js.map +1 -0
  145. package/cjs/Channel/components/Message.js +354 -0
  146. package/cjs/Channel/components/Message.js.map +1 -0
  147. package/cjs/Channel/components/MessageInput.js +208 -0
  148. package/cjs/Channel/components/MessageInput.js.map +1 -0
  149. package/cjs/Channel/components/MessageList.js +245 -0
  150. package/cjs/Channel/components/MessageList.js.map +1 -0
  151. package/cjs/Channel/components/RemoveMessageModal.js +59 -0
  152. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -0
  153. package/cjs/Channel/components/SuggestedMentionList.js +256 -0
  154. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -0
  155. package/cjs/Channel/components/TypingIndicator.js +104 -0
  156. package/cjs/Channel/components/TypingIndicator.js.map +1 -0
  157. package/cjs/Channel/components/UnreadCount.js +47 -0
  158. package/cjs/Channel/components/UnreadCount.js.map +1 -0
  159. package/cjs/Channel/context.js +33 -0
  160. package/cjs/Channel/context.js.map +1 -0
  161. package/cjs/Channel.js +112 -0
  162. package/cjs/Channel.js.map +1 -0
  163. package/cjs/ChannelList/components/AddChannel.js +79 -0
  164. package/cjs/ChannelList/components/AddChannel.js.map +1 -0
  165. package/cjs/ChannelList/components/ChannelListHeader.js +68 -0
  166. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -0
  167. package/cjs/ChannelList/components/ChannelListUI.js +220 -0
  168. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -0
  169. package/cjs/ChannelList/components/ChannelPreview.js +187 -0
  170. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -0
  171. package/cjs/ChannelList/components/ChannelPreviewAction.js +138 -0
  172. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  173. package/cjs/ChannelList/context.js +22 -0
  174. package/cjs/ChannelList/context.js.map +1 -0
  175. package/cjs/ChannelList.js +87 -0
  176. package/cjs/ChannelList.js.map +1 -0
  177. package/cjs/ChannelListProvider-44dde549.js +873 -0
  178. package/cjs/ChannelListProvider-44dde549.js.map +1 -0
  179. package/cjs/ChannelProvider-e0aaab26.js +2127 -0
  180. package/cjs/ChannelProvider-e0aaab26.js.map +1 -0
  181. package/cjs/ChannelSettings/components/AdminPanel.js +911 -0
  182. package/cjs/ChannelSettings/components/AdminPanel.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 +160 -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/UserListItem.js +111 -0
  192. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -0
  193. package/cjs/ChannelSettings/components/UserPanel.js +85 -0
  194. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -0
  195. package/cjs/ChannelSettings/context.js +102 -0
  196. package/cjs/ChannelSettings/context.js.map +1 -0
  197. package/cjs/ChannelSettings.js +77 -0
  198. package/cjs/ChannelSettings.js.map +1 -0
  199. package/cjs/CreateChannel/components/CreateChannelUI.js +59 -0
  200. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -0
  201. package/cjs/CreateChannel/components/InviteMembers.js +190 -0
  202. package/cjs/CreateChannel/components/InviteMembers.js.map +1 -0
  203. package/cjs/CreateChannel/components/SelectChannelType.js +137 -0
  204. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -0
  205. package/cjs/CreateChannel/context.js +17 -0
  206. package/cjs/CreateChannel/context.js.map +1 -0
  207. package/cjs/CreateChannel.js +59 -0
  208. package/cjs/CreateChannel.js.map +1 -0
  209. package/cjs/CreateChannelProvider-bdf9c39b.js +60 -0
  210. package/cjs/CreateChannelProvider-bdf9c39b.js.map +1 -0
  211. package/cjs/EditUserProfile/components/EditUserProfileUI.js +32 -0
  212. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  213. package/cjs/EditUserProfile/context.js +36 -0
  214. package/cjs/EditUserProfile/context.js.map +1 -0
  215. package/cjs/EditUserProfile.js +45 -0
  216. package/cjs/EditUserProfile.js.map +1 -0
  217. package/cjs/LocalizationContext-3b5ce8ae.js +30 -0
  218. package/cjs/LocalizationContext-3b5ce8ae.js.map +1 -0
  219. package/cjs/MemberList-ef9e43c3.js +431 -0
  220. package/cjs/MemberList-ef9e43c3.js.map +1 -0
  221. package/cjs/MessageSearch/components/MessageSearchUI.js +160 -0
  222. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -0
  223. package/cjs/MessageSearch/context.js +401 -0
  224. package/cjs/MessageSearch/context.js.map +1 -0
  225. package/cjs/MessageSearch.js +152 -0
  226. package/cjs/MessageSearch.js.map +1 -0
  227. package/cjs/OpenChannel/components/FrozenChannelNotification.js +26 -0
  228. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  229. package/cjs/OpenChannel/components/OpenChannelHeader.js +84 -0
  230. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  231. package/cjs/OpenChannel/components/OpenChannelInput.js +62 -0
  232. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -0
  233. package/cjs/OpenChannel/components/OpenChannelMessage.js +288 -0
  234. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  235. package/cjs/OpenChannel/components/OpenChannelMessageList.js +163 -0
  236. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  237. package/cjs/OpenChannel/components/OpenChannelUI.js +115 -0
  238. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -0
  239. package/cjs/OpenChannel/context.js +23 -0
  240. package/cjs/OpenChannel/context.js.map +1 -0
  241. package/cjs/OpenChannel.js +86 -0
  242. package/cjs/OpenChannel.js.map +1 -0
  243. package/cjs/OpenChannelProvider-9ce7c998.js +2020 -0
  244. package/cjs/OpenChannelProvider-9ce7c998.js.map +1 -0
  245. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +155 -0
  246. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  247. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +87 -0
  248. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  249. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +110 -0
  250. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  251. package/cjs/OpenChannelSettings/components/OperatorUI.js +194 -0
  252. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  253. package/cjs/OpenChannelSettings/components/ParticipantUI.js +178 -0
  254. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  255. package/cjs/OpenChannelSettings/context.js +73 -0
  256. package/cjs/OpenChannelSettings/context.js.map +1 -0
  257. package/cjs/OpenChannelSettings.js +70 -0
  258. package/cjs/OpenChannelSettings.js.map +1 -0
  259. package/cjs/SendbirdProvider.js +763 -0
  260. package/cjs/SendbirdProvider.js.map +1 -0
  261. package/cjs/UserProfileContext-f0bdfbb8.js +46 -0
  262. package/cjs/UserProfileContext-f0bdfbb8.js.map +1 -0
  263. package/cjs/_rollupPluginBabelHelpers-e54d2387.js +243 -0
  264. package/cjs/_rollupPluginBabelHelpers-e54d2387.js.map +1 -0
  265. package/cjs/actionTypes-267d4c79.js +10 -0
  266. package/cjs/actionTypes-267d4c79.js.map +1 -0
  267. package/cjs/color-0f078673.js +42 -0
  268. package/cjs/color-0f078673.js.map +1 -0
  269. package/cjs/compareIds-176a582b.js +20 -0
  270. package/cjs/compareIds-176a582b.js.map +1 -0
  271. package/cjs/const-4bf0e8b4.js +22 -0
  272. package/cjs/const-4bf0e8b4.js.map +1 -0
  273. package/cjs/const-ccf192c5.js +14 -0
  274. package/cjs/const-ccf192c5.js.map +1 -0
  275. package/cjs/context-0cbe196d.js +19 -0
  276. package/cjs/context-0cbe196d.js.map +1 -0
  277. package/cjs/index-002a349d.js +722 -0
  278. package/cjs/index-002a349d.js.map +1 -0
  279. package/cjs/index-0159bc57.js +1880 -0
  280. package/cjs/index-0159bc57.js.map +1 -0
  281. package/cjs/index-081c9614.js +175 -0
  282. package/cjs/index-081c9614.js.map +1 -0
  283. package/cjs/index-21f31180.js +142 -0
  284. package/cjs/index-21f31180.js.map +1 -0
  285. package/cjs/index-22f07209.js +97 -0
  286. package/cjs/index-22f07209.js.map +1 -0
  287. package/cjs/index-46522cf0.js +284 -0
  288. package/cjs/index-46522cf0.js.map +1 -0
  289. package/cjs/index-723733db.js +54 -0
  290. package/cjs/index-723733db.js.map +1 -0
  291. package/cjs/index-c0693be4.js +67 -0
  292. package/cjs/index-c0693be4.js.map +1 -0
  293. package/cjs/index-d4f42e73.js +130 -0
  294. package/cjs/index-d4f42e73.js.map +1 -0
  295. package/cjs/index-d9439e95.js +514 -0
  296. package/cjs/index-d9439e95.js.map +1 -0
  297. package/cjs/index-ed053e45.js +9 -0
  298. package/cjs/index-ed053e45.js.map +1 -0
  299. package/cjs/index.css +4461 -0
  300. package/cjs/index.css.map +1 -0
  301. package/cjs/index.js +162 -0
  302. package/cjs/index.js.map +1 -0
  303. package/cjs/openChannelUtils-cecaf987.js +92 -0
  304. package/cjs/openChannelUtils-cecaf987.js.map +1 -0
  305. package/cjs/sendBirdSelectors.js +741 -0
  306. package/cjs/sendBirdSelectors.js.map +1 -0
  307. package/cjs/stringSet-f4da182b.js +118 -0
  308. package/cjs/stringSet-f4da182b.js.map +1 -0
  309. package/cjs/topics-c2c30f09.js +18 -0
  310. package/cjs/topics-c2c30f09.js.map +1 -0
  311. package/cjs/tslib.es6-d7d0a427.js +40 -0
  312. package/cjs/tslib.es6-d7d0a427.js.map +1 -0
  313. package/cjs/ui/Accordion.js +74 -0
  314. package/cjs/ui/Accordion.js.map +1 -0
  315. package/cjs/ui/AccordionGroup.js +32 -0
  316. package/cjs/ui/AccordionGroup.js.map +1 -0
  317. package/cjs/ui/AdminMessage.js +44 -0
  318. package/cjs/ui/AdminMessage.js.map +1 -0
  319. package/cjs/ui/Avatar.js +226 -0
  320. package/cjs/ui/Avatar.js.map +1 -0
  321. package/cjs/ui/Badge.js +45 -0
  322. package/cjs/ui/Badge.js.map +1 -0
  323. package/cjs/ui/Button.js +17 -0
  324. package/cjs/ui/Button.js.map +1 -0
  325. package/cjs/ui/ChannelAvatar.js +59 -0
  326. package/cjs/ui/ChannelAvatar.js.map +1 -0
  327. package/cjs/ui/ChannelPreview.js +201 -0
  328. package/cjs/ui/ChannelPreview.js.map +1 -0
  329. package/cjs/ui/ChatHeader.js +145 -0
  330. package/cjs/ui/ChatHeader.js.map +1 -0
  331. package/cjs/ui/Checkbox.js +49 -0
  332. package/cjs/ui/Checkbox.js.map +1 -0
  333. package/cjs/ui/ConnectionStatus.js +34 -0
  334. package/cjs/ui/ConnectionStatus.js.map +1 -0
  335. package/cjs/ui/ContextMenu.js +431 -0
  336. package/cjs/ui/ContextMenu.js.map +1 -0
  337. package/cjs/ui/DateSeparator.js +44 -0
  338. package/cjs/ui/DateSeparator.js.map +1 -0
  339. package/cjs/ui/Dropdown.js +107 -0
  340. package/cjs/ui/Dropdown.js.map +1 -0
  341. package/cjs/ui/EmojiReactions.js +127 -0
  342. package/cjs/ui/EmojiReactions.js.map +1 -0
  343. package/cjs/ui/FileMessageItemBody.js +57 -0
  344. package/cjs/ui/FileMessageItemBody.js.map +1 -0
  345. package/cjs/ui/FileViewer.js +174 -0
  346. package/cjs/ui/FileViewer.js.map +1 -0
  347. package/cjs/ui/Icon.js +1462 -0
  348. package/cjs/ui/Icon.js.map +1 -0
  349. package/cjs/ui/IconButton.js +83 -0
  350. package/cjs/ui/IconButton.js.map +1 -0
  351. package/cjs/ui/ImageRenderer.js +138 -0
  352. package/cjs/ui/ImageRenderer.js.map +1 -0
  353. package/cjs/ui/Input.js +74 -0
  354. package/cjs/ui/Input.js.map +1 -0
  355. package/cjs/ui/Label.js +17 -0
  356. package/cjs/ui/Label.js.map +1 -0
  357. package/cjs/ui/LinkLabel.js +51 -0
  358. package/cjs/ui/LinkLabel.js.map +1 -0
  359. package/cjs/ui/Loader.js +44 -0
  360. package/cjs/ui/Loader.js.map +1 -0
  361. package/cjs/ui/MentionUserLabel.js +25 -0
  362. package/cjs/ui/MentionUserLabel.js.map +1 -0
  363. package/cjs/ui/MessageContent.js +291 -0
  364. package/cjs/ui/MessageContent.js.map +1 -0
  365. package/cjs/ui/MessageInput.js +5048 -0
  366. package/cjs/ui/MessageInput.js.map +1 -0
  367. package/cjs/ui/MessageItemMenu.js +141 -0
  368. package/cjs/ui/MessageItemMenu.js.map +1 -0
  369. package/cjs/ui/MessageItemReactionMenu.js +112 -0
  370. package/cjs/ui/MessageItemReactionMenu.js.map +1 -0
  371. package/cjs/ui/MessageSearchFileItem.js +130 -0
  372. package/cjs/ui/MessageSearchFileItem.js.map +1 -0
  373. package/cjs/ui/MessageSearchItem.js +93 -0
  374. package/cjs/ui/MessageSearchItem.js.map +1 -0
  375. package/cjs/ui/MessageStatus.js +66 -0
  376. package/cjs/ui/MessageStatus.js.map +1 -0
  377. package/cjs/ui/Modal.js +140 -0
  378. package/cjs/ui/Modal.js.map +1 -0
  379. package/cjs/ui/MutedAvatarOverlay.js +40 -0
  380. package/cjs/ui/MutedAvatarOverlay.js.map +1 -0
  381. package/cjs/ui/OGMessageItemBody.js +107 -0
  382. package/cjs/ui/OGMessageItemBody.js.map +1 -0
  383. package/cjs/ui/OpenChannelAdminMessage.js +27 -0
  384. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -0
  385. package/cjs/ui/OpenChannelAvatar.js +41 -0
  386. package/cjs/ui/OpenChannelAvatar.js.map +1 -0
  387. package/cjs/ui/OpenChannelMessageContent.js +14 -0
  388. package/cjs/ui/OpenChannelMessageContent.js.map +1 -0
  389. package/cjs/ui/OpenchannelConversationHeader.js +73 -0
  390. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -0
  391. package/cjs/ui/OpenchannelFileMessage.js +230 -0
  392. package/cjs/ui/OpenchannelFileMessage.js.map +1 -0
  393. package/cjs/ui/OpenchannelOGMessage.js +345 -0
  394. package/cjs/ui/OpenchannelOGMessage.js.map +1 -0
  395. package/cjs/ui/OpenchannelThumbnailMessage.js +305 -0
  396. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -0
  397. package/cjs/ui/OpenchannelUserMessage.js +264 -0
  398. package/cjs/ui/OpenchannelUserMessage.js.map +1 -0
  399. package/cjs/ui/PlaceHolder.js +20 -0
  400. package/cjs/ui/PlaceHolder.js.map +1 -0
  401. package/cjs/ui/QuoteMessage.js +131 -0
  402. package/cjs/ui/QuoteMessage.js.map +1 -0
  403. package/cjs/ui/QuoteMessageInput.js +99 -0
  404. package/cjs/ui/QuoteMessageInput.js.map +1 -0
  405. package/cjs/ui/ReactionBadge.js +68 -0
  406. package/cjs/ui/ReactionBadge.js.map +1 -0
  407. package/cjs/ui/ReactionButton.js +55 -0
  408. package/cjs/ui/ReactionButton.js.map +1 -0
  409. package/cjs/ui/SortByRow.js +57 -0
  410. package/cjs/ui/SortByRow.js.map +1 -0
  411. package/cjs/ui/TextButton.js +45 -0
  412. package/cjs/ui/TextButton.js.map +1 -0
  413. package/cjs/ui/TextMessageItemBody.js +62 -0
  414. package/cjs/ui/TextMessageItemBody.js.map +1 -0
  415. package/cjs/ui/ThumbnailMessageItemBody.js +82 -0
  416. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -0
  417. package/cjs/ui/Tooltip.js +35 -0
  418. package/cjs/ui/Tooltip.js.map +1 -0
  419. package/cjs/ui/TooltipWrapper.js +65 -0
  420. package/cjs/ui/TooltipWrapper.js.map +1 -0
  421. package/cjs/ui/UnknownMessageItemBody.js +41 -0
  422. package/cjs/ui/UnknownMessageItemBody.js.map +1 -0
  423. package/cjs/ui/UserListItem.js +158 -0
  424. package/cjs/ui/UserListItem.js.map +1 -0
  425. package/cjs/ui/UserProfile.js +87 -0
  426. package/cjs/ui/UserProfile.js.map +1 -0
  427. package/cjs/useSendbirdStateContext.js +22 -0
  428. package/cjs/useSendbirdStateContext.js.map +1 -0
  429. package/cjs/utils-3e73a146.js +32 -0
  430. package/cjs/utils-3e73a146.js.map +1 -0
  431. package/cjs/utils-b95288a8.js +38 -0
  432. package/cjs/utils-b95288a8.js.map +1 -0
  433. package/cjs/utils-c55d20dc.js +6 -0
  434. package/cjs/utils-c55d20dc.js.map +1 -0
  435. package/cjs/uuid-ba6cc3c5.js +19 -0
  436. package/cjs/uuid-ba6cc3c5.js.map +1 -0
  437. package/cjs/withSendBird.js +35 -0
  438. package/cjs/withSendBird.js.map +1 -0
  439. package/color-2863fbbe.js +39 -0
  440. package/color-2863fbbe.js.map +1 -0
  441. package/compareIds-48d87cc5.js +18 -0
  442. package/compareIds-48d87cc5.js.map +1 -0
  443. package/const-09c22c50.js +18 -0
  444. package/const-09c22c50.js.map +1 -0
  445. package/const-3f63e129.js +8 -0
  446. package/const-3f63e129.js.map +1 -0
  447. package/context-7877e5bb.js +12 -0
  448. package/context-7877e5bb.js.map +1 -0
  449. package/dist/index.css +165 -59
  450. package/dist/index.css.map +1 -1
  451. package/index-1fd114b0.js +7 -0
  452. package/index-1fd114b0.js.map +1 -0
  453. package/index-303a3b6e.js +121 -0
  454. package/index-303a3b6e.js.map +1 -0
  455. package/index-353f13f3.js +512 -0
  456. package/index-353f13f3.js.map +1 -0
  457. package/index-358226c7.js +168 -0
  458. package/index-358226c7.js.map +1 -0
  459. package/index-41a6f4f2.js +87 -0
  460. package/index-41a6f4f2.js.map +1 -0
  461. package/index-4889e530.js +48 -0
  462. package/index-4889e530.js.map +1 -0
  463. package/index-4a59a866.js +1873 -0
  464. package/index-4a59a866.js.map +1 -0
  465. package/index-86b0a341.js +280 -0
  466. package/index-86b0a341.js.map +1 -0
  467. package/index-a611bd38.js +131 -0
  468. package/index-a611bd38.js.map +1 -0
  469. package/index-ad4c9e58.js +682 -0
  470. package/index-ad4c9e58.js.map +1 -0
  471. package/index-f119413c.js +64 -0
  472. package/index-f119413c.js.map +1 -0
  473. package/index.css +4461 -0
  474. package/index.css.map +1 -0
  475. package/index.d.ts +1829 -0
  476. package/index.js +38 -31
  477. package/index.js.map +1 -0
  478. package/openChannelUtils-024b797a.js +81 -0
  479. package/openChannelUtils-024b797a.js.map +1 -0
  480. package/package.json +5 -9
  481. package/sendBirdSelectors.js +713 -0
  482. package/sendBirdSelectors.js.map +1 -0
  483. package/stringSet-91746bf1.js +116 -0
  484. package/stringSet-91746bf1.js.map +1 -0
  485. package/topics-17d99dd6.js +10 -0
  486. package/topics-17d99dd6.js.map +1 -0
  487. package/tslib.es6-83aa13f5.js +38 -0
  488. package/tslib.es6-83aa13f5.js.map +1 -0
  489. package/ui/Accordion.js +65 -0
  490. package/ui/Accordion.js.map +1 -0
  491. package/ui/AccordionGroup.js +26 -0
  492. package/ui/AccordionGroup.js.map +1 -0
  493. package/ui/AdminMessage.js +37 -0
  494. package/ui/AdminMessage.js.map +1 -0
  495. package/ui/Avatar.js +217 -0
  496. package/ui/Avatar.js.map +1 -0
  497. package/ui/Badge.js +38 -0
  498. package/ui/Badge.js.map +1 -0
  499. package/ui/Button.js +7 -0
  500. package/ui/Button.js.map +1 -0
  501. package/ui/ChannelAvatar.js +53 -0
  502. package/ui/ChannelAvatar.js.map +1 -0
  503. package/ui/ChannelPreview.js +194 -0
  504. package/ui/ChannelPreview.js.map +1 -0
  505. package/ui/ChatHeader.js +138 -0
  506. package/ui/ChatHeader.js.map +1 -0
  507. package/ui/Checkbox.js +42 -0
  508. package/ui/Checkbox.js.map +1 -0
  509. package/ui/ConnectionStatus.js +28 -0
  510. package/ui/ConnectionStatus.js.map +1 -0
  511. package/ui/ContextMenu.js +417 -0
  512. package/ui/ContextMenu.js.map +1 -0
  513. package/ui/DateSeparator.js +37 -0
  514. package/ui/DateSeparator.js.map +1 -0
  515. package/ui/Dropdown.js +97 -0
  516. package/ui/Dropdown.js.map +1 -0
  517. package/ui/EmojiReactions.js +121 -0
  518. package/ui/EmojiReactions.js.map +1 -0
  519. package/ui/FileMessageItemBody.js +51 -0
  520. package/ui/FileMessageItemBody.js.map +1 -0
  521. package/ui/FileViewer.js +164 -0
  522. package/ui/FileViewer.js.map +1 -0
  523. package/ui/Icon.js +1432 -0
  524. package/ui/Icon.js.map +1 -0
  525. package/ui/IconButton.js +76 -0
  526. package/ui/IconButton.js.map +1 -0
  527. package/ui/ImageRenderer.js +131 -0
  528. package/ui/ImageRenderer.js.map +1 -0
  529. package/ui/Input.js +64 -0
  530. package/ui/Input.js.map +1 -0
  531. package/ui/Label.js +6 -0
  532. package/ui/Label.js.map +1 -0
  533. package/ui/LinkLabel.js +40 -0
  534. package/ui/LinkLabel.js.map +1 -0
  535. package/ui/Loader.js +37 -0
  536. package/ui/Loader.js.map +1 -0
  537. package/ui/MentionUserLabel.js +19 -0
  538. package/ui/MentionUserLabel.js.map +1 -0
  539. package/ui/MessageContent.js +285 -0
  540. package/ui/MessageContent.js.map +1 -0
  541. package/ui/MessageInput.js +5040 -0
  542. package/ui/MessageInput.js.map +1 -0
  543. package/ui/MessageItemMenu.js +135 -0
  544. package/ui/MessageItemMenu.js.map +1 -0
  545. package/ui/MessageItemReactionMenu.js +106 -0
  546. package/ui/MessageItemReactionMenu.js.map +1 -0
  547. package/ui/MessageSearchFileItem.js +124 -0
  548. package/ui/MessageSearchFileItem.js.map +1 -0
  549. package/ui/MessageSearchItem.js +87 -0
  550. package/ui/MessageSearchItem.js.map +1 -0
  551. package/ui/MessageStatus.js +57 -0
  552. package/ui/MessageStatus.js.map +1 -0
  553. package/ui/Modal.js +128 -0
  554. package/ui/Modal.js.map +1 -0
  555. package/ui/MutedAvatarOverlay.js +34 -0
  556. package/ui/MutedAvatarOverlay.js.map +1 -0
  557. package/ui/OGMessageItemBody.js +101 -0
  558. package/ui/OGMessageItemBody.js.map +1 -0
  559. package/ui/OpenChannelAdminMessage.js +21 -0
  560. package/ui/OpenChannelAdminMessage.js.map +1 -0
  561. package/ui/OpenChannelAvatar.js +35 -0
  562. package/ui/OpenChannelAvatar.js.map +1 -0
  563. package/ui/OpenChannelMessageContent.js +8 -0
  564. package/ui/OpenChannelMessageContent.js.map +1 -0
  565. package/ui/OpenchannelConversationHeader.js +67 -0
  566. package/ui/OpenchannelConversationHeader.js.map +1 -0
  567. package/ui/OpenchannelFileMessage.js +224 -0
  568. package/ui/OpenchannelFileMessage.js.map +1 -0
  569. package/ui/OpenchannelOGMessage.js +339 -0
  570. package/ui/OpenchannelOGMessage.js.map +1 -0
  571. package/ui/OpenchannelThumbnailMessage.js +299 -0
  572. package/ui/OpenchannelThumbnailMessage.js.map +1 -0
  573. package/ui/OpenchannelUserMessage.js +258 -0
  574. package/ui/OpenchannelUserMessage.js.map +1 -0
  575. package/ui/PlaceHolder.js +11 -0
  576. package/ui/PlaceHolder.js.map +1 -0
  577. package/ui/QuoteMessage.js +125 -0
  578. package/ui/QuoteMessage.js.map +1 -0
  579. package/ui/QuoteMessageInput.js +93 -0
  580. package/ui/QuoteMessageInput.js.map +1 -0
  581. package/ui/ReactionBadge.js +61 -0
  582. package/ui/ReactionBadge.js.map +1 -0
  583. package/ui/ReactionButton.js +48 -0
  584. package/ui/ReactionButton.js.map +1 -0
  585. package/ui/SortByRow.js +50 -0
  586. package/ui/SortByRow.js.map +1 -0
  587. package/ui/TextButton.js +38 -0
  588. package/ui/TextButton.js.map +1 -0
  589. package/ui/TextMessageItemBody.js +56 -0
  590. package/ui/TextMessageItemBody.js.map +1 -0
  591. package/ui/ThumbnailMessageItemBody.js +76 -0
  592. package/ui/ThumbnailMessageItemBody.js.map +1 -0
  593. package/ui/Tooltip.js +28 -0
  594. package/ui/Tooltip.js.map +1 -0
  595. package/ui/TooltipWrapper.js +58 -0
  596. package/ui/TooltipWrapper.js.map +1 -0
  597. package/ui/UnknownMessageItemBody.js +35 -0
  598. package/ui/UnknownMessageItemBody.js.map +1 -0
  599. package/ui/UserListItem.js +151 -0
  600. package/ui/UserListItem.js.map +1 -0
  601. package/ui/UserProfile.js +81 -0
  602. package/ui/UserProfile.js.map +1 -0
  603. package/useSendbirdStateContext.js +20 -0
  604. package/useSendbirdStateContext.js.map +1 -0
  605. package/utils-5395ff17.js +30 -0
  606. package/utils-5395ff17.js.map +1 -0
  607. package/utils-7d39b941.js +34 -0
  608. package/utils-7d39b941.js.map +1 -0
  609. package/utils-9ef11656.js +4 -0
  610. package/utils-9ef11656.js.map +1 -0
  611. package/uuid-6d14d007.js +17 -0
  612. package/uuid-6d14d007.js.map +1 -0
  613. package/withSendBird.js +26 -0
  614. package/withSendBird.js.map +1 -0
@@ -0,0 +1,288 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var index = require('../../index-0159bc57.js');
5
+ var ui_OpenchannelUserMessage = require('../../ui/OpenchannelUserMessage.js');
6
+ var ui_OpenChannelAdminMessage = require('../../ui/OpenChannelAdminMessage.js');
7
+ var ui_OpenchannelOGMessage = require('../../ui/OpenchannelOGMessage.js');
8
+ var ui_OpenchannelThumbnailMessage = require('../../ui/OpenchannelThumbnailMessage.js');
9
+ var ui_OpenchannelFileMessage = require('../../ui/OpenchannelFileMessage.js');
10
+ var ui_DateSeparator = require('../../ui/DateSeparator.js');
11
+ var ui_Label = require('../../index-21f31180.js');
12
+ var ui_MessageInput = require('../../ui/MessageInput.js');
13
+ var ui_FileViewer = require('../../ui/FileViewer.js');
14
+ var ui_Modal = require('../../ui/Modal.js');
15
+ var LocalizationContext = require('../../LocalizationContext-3b5ce8ae.js');
16
+ var OpenChannel_context = require('../../OpenChannelProvider-9ce7c998.js');
17
+ var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
18
+ require('../../index-d9439e95.js');
19
+ require('../../tslib.es6-d7d0a427.js');
20
+ require('../../ui/Avatar.js');
21
+ require('../../ui/ImageRenderer.js');
22
+ require('../../_rollupPluginBabelHelpers-e54d2387.js');
23
+ require('prop-types');
24
+ require('../../ui/Icon.js');
25
+ require('../../uuid-ba6cc3c5.js');
26
+ require('../../ui/ContextMenu.js');
27
+ require('../../index-002a349d.js');
28
+ require('react-dom');
29
+ require('../../ui/SortByRow.js');
30
+ require('../../stringSet-f4da182b.js');
31
+ require('../../ui/IconButton.js');
32
+ require('../../ui/Loader.js');
33
+ require('../../ui/UserProfile.js');
34
+ require('../../withSendBird.js');
35
+ require('../../sendBirdSelectors.js');
36
+ require('../../topics-c2c30f09.js');
37
+ require('../../index-22f07209.js');
38
+ require('../../UserProfileContext-f0bdfbb8.js');
39
+ require('../../utils-3e73a146.js');
40
+ require('../../openChannelUtils-cecaf987.js');
41
+ require('../../ui/LinkLabel.js');
42
+ require('../../ui/TextButton.js');
43
+ require('../../color-0f078673.js');
44
+ require('stream');
45
+ require('../../const-4bf0e8b4.js');
46
+ require('../../const-ccf192c5.js');
47
+ require('../../ui/MentionUserLabel.js');
48
+ require('../../index-ed053e45.js');
49
+ require('../../utils-c55d20dc.js');
50
+ require('../../compareIds-176a582b.js');
51
+
52
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
53
+
54
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
55
+
56
+ function RemoveMessageModal(_a) {
57
+ var onCloseModal = _a.onCloseModal,
58
+ onDeleteMessage = _a.onDeleteMessage;
59
+ var stringSet = React.useContext(LocalizationContext.LocalizationContext).stringSet;
60
+ return /*#__PURE__*/React__default["default"].createElement(ui_Modal["default"], {
61
+ onCancel: onCloseModal,
62
+ onSubmit: onDeleteMessage,
63
+ submitText: stringSet.MESSAGE_MENU__DELETE,
64
+ titleText: stringSet.MODAL__DELETE_MESSAGE__TITLE
65
+ });
66
+ }
67
+
68
+ // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types
69
+ var SUPPORTED_MIMES = {
70
+ IMAGE: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif', 'image/svg+xml', 'image/webp' // not supported in IE
71
+ ],
72
+ VIDEO: ['video/mpeg', 'video/ogg', 'video/webm', 'video/mp4']
73
+ };
74
+ var isImage = function isImage(type) {
75
+ return SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;
76
+ };
77
+ var isVideo = function isVideo(type) {
78
+ return SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;
79
+ };
80
+
81
+ var MessageTypes = {
82
+ ADMIN: 'ADMIN',
83
+ USER: 'USER',
84
+ FILE: 'FILE',
85
+ THUMBNAIL: 'THUMBNAIL',
86
+ OG: 'OG',
87
+ UNKNOWN: 'UNKNOWN'
88
+ };
89
+ var SendingMessageStatus = {
90
+ NONE: 'none',
91
+ SUCCEEDED: 'succeeded',
92
+ FAILED: 'failed',
93
+ PENDING: 'pending'
94
+ };
95
+ var getMessageType = function getMessageType(message) {
96
+ if (message.isUserMessage && message.isUserMessage() || message.messageType === 'user') {
97
+ return message.ogMetaData ? MessageTypes.OG : MessageTypes.USER;
98
+ }
99
+
100
+ if (message.isAdminMessage && message.isAdminMessage()) {
101
+ return MessageTypes.ADMIN;
102
+ }
103
+
104
+ if (message.messageType === 'file') {
105
+ return isImage(message.type) || isVideo(message.type) ? MessageTypes.THUMBNAIL : MessageTypes.FILE;
106
+ }
107
+
108
+ return MessageTypes.UNKNOWN;
109
+ };
110
+
111
+ function MessagOpenChannelMessageeHoc(props) {
112
+ var _a;
113
+
114
+ var _b;
115
+
116
+ var message = props.message,
117
+ chainTop = props.chainTop,
118
+ chainBottom = props.chainBottom,
119
+ hasSeparator = props.hasSeparator,
120
+ renderMessage = props.renderMessage;
121
+
122
+ var _c = OpenChannel_context.useOpenChannel(),
123
+ currentOpenChannel = _c.currentOpenChannel,
124
+ deleteMessage = _c.deleteMessage,
125
+ updateMessage = _c.updateMessage,
126
+ resendMessage = _c.resendMessage;
127
+
128
+ var dateLocale = LocalizationContext.useLocalization().dateLocale;
129
+ var editDisabled = currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.isFrozen;
130
+ var globalState = useSendbirdStateContext();
131
+ var userId = (_b = globalState === null || globalState === void 0 ? void 0 : globalState.config) === null || _b === void 0 ? void 0 : _b.userId;
132
+ var sender = null;
133
+
134
+ if ((message === null || message === void 0 ? void 0 : message.messageType) !== 'admin') {
135
+ sender = message === null || message === void 0 ? void 0 : message.sender;
136
+ }
137
+
138
+ var RenderedMessage = React.useMemo(function () {
139
+ if (renderMessage) {
140
+ return renderMessage({
141
+ message: message,
142
+ chainBottom: chainBottom,
143
+ chainTop: chainTop
144
+ });
145
+ }
146
+
147
+ return null;
148
+ }, [message, renderMessage]);
149
+
150
+ var _d = React.useState(false),
151
+ showEdit = _d[0],
152
+ setShowEdit = _d[1];
153
+
154
+ var _e = React.useState(false),
155
+ showRemove = _e[0],
156
+ setShowRemove = _e[1];
157
+
158
+ var _f = React.useState(false),
159
+ showFileViewer = _f[0],
160
+ setShowFileViewer = _f[1];
161
+
162
+ var editMessageInputRef = React.useRef(null);
163
+ var isByMe = false;
164
+
165
+ if (sender && (message === null || message === void 0 ? void 0 : message.messageType) !== 'admin') {
166
+ // pending and failed messages are by me
167
+ isByMe = userId === sender.userId || (message === null || message === void 0 ? void 0 : message.requestState) === SendingMessageStatus.PENDING || (message === null || message === void 0 ? void 0 : message.requestState) === SendingMessageStatus.FAILED;
168
+ }
169
+
170
+ if (RenderedMessage) {
171
+ return /*#__PURE__*/React__default["default"].createElement("div", {
172
+ className: "sendbird-msg-hoc sendbird-msg--scroll-ref"
173
+ }, /*#__PURE__*/React__default["default"].createElement(RenderedMessage, null));
174
+ }
175
+
176
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'user' && showEdit) {
177
+ return /*#__PURE__*/React__default["default"].createElement(ui_MessageInput, {
178
+ isEdit: true,
179
+ disabled: editDisabled,
180
+ ref: editMessageInputRef,
181
+ name: message === null || message === void 0 ? void 0 : message.messageId,
182
+ onSendMessage: updateMessage,
183
+ onCancelEdit: function onCancelEdit() {
184
+ setShowEdit(false);
185
+ },
186
+ value: message === null || message === void 0 ? void 0 : message.message
187
+ });
188
+ }
189
+
190
+ return /*#__PURE__*/React__default["default"].createElement("div", {
191
+ className: "sendbird-msg-hoc sendbird-msg--scroll-ref"
192
+ }, hasSeparator && /*#__PURE__*/React__default["default"].createElement(ui_DateSeparator, null, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
193
+ type: ui_Label.LabelTypography.CAPTION_2,
194
+ color: ui_Label.LabelColors.ONBACKGROUND_2
195
+ }, index.format(message === null || message === void 0 ? void 0 : message.createdAt, 'MMMM dd, yyyy', {
196
+ locale: dateLocale
197
+ }))), (_a = {}, _a[MessageTypes.ADMIN] = function () {
198
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'admin') {
199
+ return /*#__PURE__*/React__default["default"].createElement(ui_OpenChannelAdminMessage, {
200
+ message: message
201
+ });
202
+ }
203
+ }(), _a[MessageTypes.FILE] = function () {
204
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'file') {
205
+ return /*#__PURE__*/React__default["default"].createElement(ui_OpenchannelFileMessage, {
206
+ message: message,
207
+ disabled: editDisabled,
208
+ userId: userId,
209
+ showRemove: setShowRemove,
210
+ resendMessage: resendMessage,
211
+ chainTop: chainTop,
212
+ chainBottom: chainBottom
213
+ });
214
+ }
215
+
216
+ return;
217
+ }(), _a[MessageTypes.OG] = function () {
218
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'user') {
219
+ return /*#__PURE__*/React__default["default"].createElement(ui_OpenchannelOGMessage, {
220
+ message: message,
221
+ userId: userId,
222
+ showEdit: setShowEdit,
223
+ disabled: editDisabled,
224
+ showRemove: setShowRemove,
225
+ resendMessage: resendMessage,
226
+ chainTop: chainTop,
227
+ chainBottom: chainBottom
228
+ });
229
+ }
230
+
231
+ return;
232
+ }(), _a[MessageTypes.THUMBNAIL] = function () {
233
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'file') {
234
+ return /*#__PURE__*/React__default["default"].createElement(ui_OpenchannelThumbnailMessage, {
235
+ message: message,
236
+ disabled: editDisabled,
237
+ userId: userId,
238
+ showRemove: setShowRemove,
239
+ resendMessage: resendMessage,
240
+ onClick: setShowFileViewer,
241
+ chainTop: chainTop,
242
+ chainBottom: chainBottom
243
+ });
244
+ }
245
+
246
+ return;
247
+ }(), _a[MessageTypes.USER] = function () {
248
+ if ((message === null || message === void 0 ? void 0 : message.messageType) === 'user') {
249
+ return /*#__PURE__*/React__default["default"].createElement(ui_OpenchannelUserMessage, {
250
+ message: message,
251
+ userId: userId,
252
+ disabled: editDisabled,
253
+ showEdit: setShowEdit,
254
+ showRemove: setShowRemove,
255
+ resendMessage: resendMessage,
256
+ chainTop: chainTop,
257
+ chainBottom: chainBottom
258
+ });
259
+ }
260
+
261
+ return;
262
+ }(), _a[MessageTypes.UNKNOWN] = function () {
263
+ return; // return (
264
+ // <OpenChannelUnknownMessage message={message} />
265
+ // );
266
+ }(), _a)[getMessageType(message)], showRemove && /*#__PURE__*/React__default["default"].createElement(RemoveMessageModal, {
267
+ onCloseModal: function onCloseModal() {
268
+ return setShowRemove(false);
269
+ },
270
+ onDeleteMessage: function onDeleteMessage() {
271
+ if ((message === null || message === void 0 ? void 0 : message.messageType) !== 'admin') {
272
+ deleteMessage(message);
273
+ }
274
+ }
275
+ }), showFileViewer && (message === null || message === void 0 ? void 0 : message.messageType) === 'file' && /*#__PURE__*/React__default["default"].createElement(ui_FileViewer["default"], {
276
+ onClose: function onClose() {
277
+ return setShowFileViewer(false);
278
+ },
279
+ message: message,
280
+ onDelete: function onDelete() {
281
+ return deleteMessage(message);
282
+ },
283
+ isByMe: isByMe
284
+ }));
285
+ }
286
+
287
+ module.exports = MessagOpenChannelMessageeHoc;
288
+ //# 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 { EveryMessage } from '../../../../index';\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: EveryMessage): 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.type) || isVideo(message.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';\n\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 { useOpenChannel } from '../../context/OpenChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport type { EveryMessage, RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\nexport type OpenChannelMessageProps = {\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n message: EveryMessage;\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 } = useOpenChannel();\n const { dateLocale } = useLocalization();\n const editDisabled = currentOpenChannel?.isFrozen;\n\n const globalState = useSendbirdStateContext();\n const userId = globalState?.config?.userId;\n\n let sender: SendBird.User = null;\n if (message?.messageType !== 'admin') {\n sender = message?.sender;\n }\n\n const RenderedMessage = useMemo(() => {\n if (renderMessage) {\n return renderMessage({\n message,\n chainBottom,\n chainTop,\n });\n }\n return null;\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?.requestState === SendingMessageStatus.PENDING)\n || (message?.requestState === SendingMessageStatus.FAILED);\n }\n\n if(RenderedMessage) {\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n <RenderedMessage />\n </div>\n );\n }\n\n if (message?.messageType === 'user' && showEdit) {\n return (\n <MessageInput\n isEdit\n disabled={editDisabled}\n ref={editMessageInputRef}\n name={message?.messageId}\n onSendMessage={updateMessage}\n onCancelEdit={() => { setShowEdit(false); }}\n value={message?.message}\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} />\n )\n }\n })(),\n [MessageTypes.FILE]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelFileMessage\n message={message}\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}\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}\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}\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","Modal","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","useOpenChannel","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","requestState","MessageInput","messageId","DateSeparator","Label","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","createdAt","locale","OpenChannelAdminMessage","OpenChannelFileMessage","OpenChannelOGMessage","OpenChannelThumbnailMessage","OpenChannelUserMessage","FileViewer"],"mappings":"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"}
@@ -0,0 +1,163 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var index = require('../../index-c0693be4.js');
5
+ var ui_Icon = require('../../ui/Icon.js');
6
+ var ui_PlaceHolder = require('../../index-d4f42e73.js');
7
+ var OpenChannel_context = require('../../OpenChannelProvider-9ce7c998.js');
8
+ var OpenChannel_components_OpenChannelMessage = require('./OpenChannelMessage.js');
9
+ require('../../index-0159bc57.js');
10
+ require('../../index-d9439e95.js');
11
+ require('../../_rollupPluginBabelHelpers-e54d2387.js');
12
+ require('prop-types');
13
+ require('../../ui/Loader.js');
14
+ require('../../LocalizationContext-3b5ce8ae.js');
15
+ require('../../stringSet-f4da182b.js');
16
+ require('../../index-21f31180.js');
17
+ require('../../UserProfileContext-f0bdfbb8.js');
18
+ require('../../tslib.es6-d7d0a427.js');
19
+ require('../../compareIds-176a582b.js');
20
+ require('../../topics-c2c30f09.js');
21
+ require('../../uuid-ba6cc3c5.js');
22
+ require('../../useSendbirdStateContext.js');
23
+ require('../../withSendBird.js');
24
+ require('../../ui/OpenchannelUserMessage.js');
25
+ require('../../ui/Avatar.js');
26
+ require('../../ui/ImageRenderer.js');
27
+ require('../../ui/ContextMenu.js');
28
+ require('../../index-002a349d.js');
29
+ require('react-dom');
30
+ require('../../ui/SortByRow.js');
31
+ require('../../ui/IconButton.js');
32
+ require('../../ui/UserProfile.js');
33
+ require('../../sendBirdSelectors.js');
34
+ require('../../index-22f07209.js');
35
+ require('../../utils-3e73a146.js');
36
+ require('../../openChannelUtils-cecaf987.js');
37
+ require('../../ui/OpenChannelAdminMessage.js');
38
+ require('../../ui/OpenchannelOGMessage.js');
39
+ require('../../ui/LinkLabel.js');
40
+ require('../../ui/OpenchannelThumbnailMessage.js');
41
+ require('../../ui/OpenchannelFileMessage.js');
42
+ require('../../ui/TextButton.js');
43
+ require('../../color-0f078673.js');
44
+ require('../../ui/DateSeparator.js');
45
+ require('../../ui/MessageInput.js');
46
+ require('stream');
47
+ require('../../const-4bf0e8b4.js');
48
+ require('../../const-ccf192c5.js');
49
+ require('../../ui/MentionUserLabel.js');
50
+ require('../../ui/FileViewer.js');
51
+ require('../../index-ed053e45.js');
52
+ require('../../ui/Modal.js');
53
+ require('../../utils-c55d20dc.js');
54
+
55
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
56
+
57
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
58
+
59
+ function OpenchannelMessageList(props, ref) {
60
+ var _a;
61
+
62
+ var _b = OpenChannel_context.useOpenChannel(),
63
+ _c = _b.useMessageGrouping,
64
+ useMessageGrouping = _c === void 0 ? true : _c,
65
+ allMessages = _b.allMessages,
66
+ hasMore = _b.hasMore,
67
+ onScroll = _b.onScroll;
68
+
69
+ var scrollRef = ref || React.useRef(null);
70
+
71
+ var _d = React.useState(false),
72
+ showScrollDownButton = _d[0],
73
+ setShowScrollDownButton = _d[1];
74
+
75
+ var handleOnScroll = function handleOnScroll(e) {
76
+ var element = e.target;
77
+ var scrollTop = element.scrollTop,
78
+ scrollHeight = element.scrollHeight,
79
+ clientHeight = element.clientHeight;
80
+
81
+ if (scrollHeight > scrollTop + clientHeight && window.navigator.userAgent.indexOf('MSIE ') < 0 // don't show button in IE
82
+ ) {
83
+ setShowScrollDownButton(true);
84
+ } else {
85
+ setShowScrollDownButton(false);
86
+ }
87
+
88
+ if (!hasMore) {
89
+ return;
90
+ }
91
+
92
+ if (scrollTop === 0) {
93
+ var nodes = scrollRef.current.querySelectorAll('.sendbird-msg--scroll-ref');
94
+ var first_1 = nodes && nodes[0];
95
+ onScroll(function () {
96
+ try {
97
+ first_1.scrollIntoView();
98
+ } catch (error) {}
99
+ });
100
+ }
101
+ };
102
+
103
+ var scrollToBottom = function scrollToBottom() {
104
+ if (scrollRef && scrollRef.current) {
105
+ scrollRef.current.scrollTo(0, scrollRef.current.scrollHeight);
106
+ setShowScrollDownButton(false);
107
+ }
108
+ };
109
+
110
+ var hasMessage = React.useMemo(function () {
111
+ return allMessages.length > 0;
112
+ }, [allMessages.length]);
113
+ return /*#__PURE__*/React__default["default"].createElement("div", {
114
+ className: "sendbird-openchannel-conversation-scroll",
115
+ onScroll: handleOnScroll,
116
+ ref: scrollRef
117
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
118
+ className: "sendbird-openchannel-conversation-scroll__container"
119
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
120
+ className: "sendbird-openchannel-conversation-scroll__container__padding"
121
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
122
+ className: "sendbird-openchannel-conversation-scroll__container__item-container" + (hasMessage ? '' : '--no-messages')
123
+ }, hasMessage ? allMessages.map(function (message, index$1) {
124
+ var previousMessage = allMessages[index$1 - 1];
125
+ var nextMessage = allMessages[index$1 - 1];
126
+ var previousMessageCreatedAt = previousMessage && previousMessage.createdAt;
127
+ var currentCreatedAt = message.createdAt; // https://stackoverflow.com/a/41855608
128
+
129
+ var hasSeparator = !(previousMessageCreatedAt && index.isSameDay(currentCreatedAt, previousMessageCreatedAt));
130
+
131
+ var _a = useMessageGrouping ? OpenChannel_context.compareMessagesForGrouping(previousMessage, message, nextMessage) : [false, false],
132
+ chainTop = _a[0],
133
+ chainBottom = _a[1];
134
+
135
+ return /*#__PURE__*/React__default["default"].createElement(OpenChannel_components_OpenChannelMessage, {
136
+ key: (message === null || message === void 0 ? void 0 : message.messageId) || (message === null || message === void 0 ? void 0 : message.reqId),
137
+ message: message,
138
+ chainTop: chainTop,
139
+ chainBottom: chainBottom,
140
+ hasSeparator: hasSeparator,
141
+ renderMessage: props === null || props === void 0 ? void 0 : props.renderMessage
142
+ });
143
+ }) : ((_a = props === null || props === void 0 ? void 0 : props.renderPlaceHolderEmptyList) === null || _a === void 0 ? void 0 : _a.call(props)) || /*#__PURE__*/React__default["default"].createElement(ui_PlaceHolder.PlaceHolder, {
144
+ className: "sendbird-openchannel-conversation-scroll__container__place-holder",
145
+ type: ui_PlaceHolder.PlaceHolderTypes.NO_MESSAGES
146
+ })), showScrollDownButton && /*#__PURE__*/React__default["default"].createElement("div", {
147
+ className: "sendbird-openchannel-conversation-scroll__container__scroll-bottom-button",
148
+ onClick: scrollToBottom,
149
+ onKeyDown: scrollToBottom,
150
+ tabIndex: 0,
151
+ role: "button"
152
+ }, /*#__PURE__*/React__default["default"].createElement(ui_Icon["default"], {
153
+ width: "24px",
154
+ height: "24px",
155
+ type: ui_Icon.IconTypes.CHEVRON_DOWN,
156
+ fillColor: ui_Icon.IconColors.CONTENT
157
+ }))));
158
+ }
159
+
160
+ var OpenChannelMessageList = /*#__PURE__*/React__default["default"].forwardRef(OpenchannelMessageList);
161
+
162
+ module.exports = OpenChannelMessageList;
163
+ //# sourceMappingURL=OpenChannelMessageList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenChannelMessageList.js","sources":["../../../../src/smart-components/OpenChannel/components/OpenChannelMessageList/index.tsx"],"sourcesContent":["import './openchannel-message-list.scss';\n\nimport React, { ReactElement, useRef, useState, useMemo } from 'react';\nimport isSameDay from 'date-fns/isSameDay';\n\n// import MessageHoc from './MessageHOC';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\n\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { compareMessagesForGrouping } from '../../context/utils';\nimport { useOpenChannel } from '../../context/OpenChannelProvider';\nimport OpenChannelMessage from '../OpenChannelMessage';\nimport { RenderMessageProps } from '../../../../types';\n\nexport type OpenchannelMessageListProps = {\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n renderPlaceHolderEmptyList?: () => React.ReactNode;\n}\n\nfunction OpenchannelMessageList(\n props: OpenchannelMessageListProps,\n ref: React.RefObject<HTMLDivElement>,\n): ReactElement {\n const {\n useMessageGrouping = true,\n allMessages,\n hasMore,\n onScroll,\n } = useOpenChannel();\n const scrollRef = ref || useRef(null);\n const [showScrollDownButton, setShowScrollDownButton] = useState(false);\n\n const handleOnScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = element;\n if (\n (scrollHeight > scrollTop + clientHeight)\n && (window.navigator.userAgent.indexOf('MSIE ') < 0) // don't show button in IE\n ) {\n setShowScrollDownButton(true);\n } else {\n setShowScrollDownButton(false);\n }\n\n if (!hasMore) {\n return;\n }\n if (scrollTop === 0) {\n const nodes = scrollRef.current.querySelectorAll('.sendbird-msg--scroll-ref');\n const first = nodes && nodes[0];\n onScroll(() => {\n try {\n first.scrollIntoView();\n } catch (error) { }\n });\n }\n };\n\n const scrollToBottom = () => {\n if (scrollRef && scrollRef.current) {\n scrollRef.current.scrollTo(0, scrollRef.current.scrollHeight);\n setShowScrollDownButton(false);\n }\n };\n\n const hasMessage = useMemo(() => {\n return allMessages.length > 0;\n }, [allMessages.length]);\n\n return (\n <div\n className=\"sendbird-openchannel-conversation-scroll\"\n onScroll={handleOnScroll}\n ref={scrollRef}\n >\n <div className=\"sendbird-openchannel-conversation-scroll__container\">\n <div className=\"sendbird-openchannel-conversation-scroll__container__padding\" />\n <div className={`sendbird-openchannel-conversation-scroll__container__item-container${hasMessage ? '' : '--no-messages'}`}>\n {\n hasMessage\n ? (\n allMessages.map((message, index) => {\n const previousMessage = allMessages[index - 1];\n const nextMessage = allMessages[index - 1];\n\n const previousMessageCreatedAt = previousMessage && previousMessage.createdAt;\n const currentCreatedAt = message.createdAt;\n // https://stackoverflow.com/a/41855608\n const hasSeparator = !(previousMessageCreatedAt && (\n isSameDay(currentCreatedAt, previousMessageCreatedAt)\n ));\n\n const [chainTop, chainBottom] = useMessageGrouping\n ? compareMessagesForGrouping(previousMessage, message, nextMessage)\n : [false, false];\n return (\n <OpenChannelMessage\n key={message?.messageId || message?.reqId}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n hasSeparator={hasSeparator}\n renderMessage={props?.renderMessage}\n />\n )\n })\n )\n : props?.renderPlaceHolderEmptyList?.() || (\n <PlaceHolder\n className=\"sendbird-openchannel-conversation-scroll__container__place-holder\"\n type={PlaceHolderTypes.NO_MESSAGES}\n />\n )\n }\n </div>\n {\n showScrollDownButton && (\n <div\n className=\"sendbird-openchannel-conversation-scroll__container__scroll-bottom-button\"\n onClick={scrollToBottom}\n onKeyDown={scrollToBottom}\n tabIndex={0}\n role=\"button\"\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.CONTENT}\n />\n </div>\n )\n }\n </div>\n </div>\n );\n}\n\nexport default React.forwardRef(OpenchannelMessageList);\n"],"names":["OpenchannelMessageList","props","ref","_b","useOpenChannel","_c","useMessageGrouping","allMessages","hasMore","onScroll","scrollRef","useRef","_d","useState","showScrollDownButton","setShowScrollDownButton","handleOnScroll","e","element","target","scrollTop","scrollHeight","clientHeight","window","navigator","userAgent","indexOf","nodes","current","querySelectorAll","first_1","scrollIntoView","error","scrollToBottom","scrollTo","hasMessage","useMemo","length","React","map","message","index","previousMessage","nextMessage","previousMessageCreatedAt","createdAt","currentCreatedAt","hasSeparator","isSameDay","_a","compareMessagesForGrouping","chainTop","chainBottom","OpenChannelMessage","messageId","reqId","renderMessage","renderPlaceHolderEmptyList","PlaceHolder","PlaceHolderTypes","NO_MESSAGES","Icon","IconTypes","CHEVRON_DOWN","IconColors","CONTENT","forwardRef"],"mappings":"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"}
@@ -0,0 +1,115 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var OpenChannel_context = require('../../OpenChannelProvider-9ce7c998.js');
5
+ var OpenChannel_components_OpenChannelInput = require('./OpenChannelInput.js');
6
+ var OpenChannel_components_FrozenChannelNotification = require('./FrozenChannelNotification.js');
7
+ var OpenChannel_components_OpenChannelHeader = require('./OpenChannelHeader.js');
8
+ var ui_PlaceHolder = require('../../index-d4f42e73.js');
9
+ var OpenChannel_components_OpenChannelMessageList = require('./OpenChannelMessageList.js');
10
+ require('../../index-0159bc57.js');
11
+ require('../../index-d9439e95.js');
12
+ require('../../UserProfileContext-f0bdfbb8.js');
13
+ require('prop-types');
14
+ require('../../tslib.es6-d7d0a427.js');
15
+ require('../../compareIds-176a582b.js');
16
+ require('../../topics-c2c30f09.js');
17
+ require('../../uuid-ba6cc3c5.js');
18
+ require('../../useSendbirdStateContext.js');
19
+ require('../../withSendBird.js');
20
+ require('../../_rollupPluginBabelHelpers-e54d2387.js');
21
+ require('../../LocalizationContext-3b5ce8ae.js');
22
+ require('../../stringSet-f4da182b.js');
23
+ require('../../ui/MessageInput.js');
24
+ require('stream');
25
+ require('../../const-4bf0e8b4.js');
26
+ require('../../const-ccf192c5.js');
27
+ require('../../ui/IconButton.js');
28
+ require('../../index-22f07209.js');
29
+ require('../../index-21f31180.js');
30
+ require('../../ui/MentionUserLabel.js');
31
+ require('../../ui/Icon.js');
32
+ require('../../index-002a349d.js');
33
+ require('../../ui/Avatar.js');
34
+ require('../../ui/ImageRenderer.js');
35
+ require('../../ui/Loader.js');
36
+ require('../../index-c0693be4.js');
37
+ require('./OpenChannelMessage.js');
38
+ require('../../ui/OpenchannelUserMessage.js');
39
+ require('../../ui/ContextMenu.js');
40
+ require('react-dom');
41
+ require('../../ui/SortByRow.js');
42
+ require('../../ui/UserProfile.js');
43
+ require('../../sendBirdSelectors.js');
44
+ require('../../utils-3e73a146.js');
45
+ require('../../openChannelUtils-cecaf987.js');
46
+ require('../../ui/OpenChannelAdminMessage.js');
47
+ require('../../ui/OpenchannelOGMessage.js');
48
+ require('../../ui/LinkLabel.js');
49
+ require('../../ui/OpenchannelThumbnailMessage.js');
50
+ require('../../ui/OpenchannelFileMessage.js');
51
+ require('../../ui/TextButton.js');
52
+ require('../../color-0f078673.js');
53
+ require('../../ui/DateSeparator.js');
54
+ require('../../ui/FileViewer.js');
55
+ require('../../index-ed053e45.js');
56
+ require('../../ui/Modal.js');
57
+ require('../../utils-c55d20dc.js');
58
+
59
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
60
+
61
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
62
+
63
+ var COMPONENT_CLASS_NAME = 'sendbird-openchannel-conversation';
64
+
65
+ var OpenChannelUI = function OpenChannelUI(_a) {
66
+ var renderMessage = _a.renderMessage,
67
+ renderHeader = _a.renderHeader,
68
+ renderInput = _a.renderInput,
69
+ renderPlaceHolderEmptyList = _a.renderPlaceHolderEmptyList,
70
+ renderPlaceHolderError = _a.renderPlaceHolderError,
71
+ renderPlaceHolderLoading = _a.renderPlaceHolderLoading;
72
+
73
+ var _b = OpenChannel_context.useOpenChannel(),
74
+ currentOpenChannel = _b.currentOpenChannel,
75
+ amIBanned = _b.amIBanned,
76
+ loading = _b.loading,
77
+ isInvalid = _b.isInvalid,
78
+ messageInputRef = _b.messageInputRef;
79
+
80
+ if (!currentOpenChannel || !(currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.url) || amIBanned) {
81
+ return (renderPlaceHolderError === null || renderPlaceHolderError === void 0 ? void 0 : renderPlaceHolderError()) || /*#__PURE__*/React__default["default"].createElement("div", {
82
+ className: COMPONENT_CLASS_NAME
83
+ }, /*#__PURE__*/React__default["default"].createElement(ui_PlaceHolder.PlaceHolder, {
84
+ type: ui_PlaceHolder.PlaceHolderTypes.NO_CHANNELS
85
+ }));
86
+ }
87
+
88
+ if (loading) {
89
+ return (renderPlaceHolderLoading === null || renderPlaceHolderLoading === void 0 ? void 0 : renderPlaceHolderLoading()) || /*#__PURE__*/React__default["default"].createElement("div", {
90
+ className: COMPONENT_CLASS_NAME
91
+ }, /*#__PURE__*/React__default["default"].createElement(ui_PlaceHolder.PlaceHolder, {
92
+ type: ui_PlaceHolder.PlaceHolderTypes.LOADING
93
+ }));
94
+ }
95
+
96
+ if (isInvalid) {
97
+ return (renderPlaceHolderError === null || renderPlaceHolderError === void 0 ? void 0 : renderPlaceHolderError()) || /*#__PURE__*/React__default["default"].createElement("div", {
98
+ className: COMPONENT_CLASS_NAME
99
+ }, /*#__PURE__*/React__default["default"].createElement(ui_PlaceHolder.PlaceHolder, {
100
+ type: ui_PlaceHolder.PlaceHolderTypes.WRONG
101
+ }));
102
+ }
103
+
104
+ return /*#__PURE__*/React__default["default"].createElement("div", {
105
+ className: COMPONENT_CLASS_NAME
106
+ }, (renderHeader === null || renderHeader === void 0 ? void 0 : renderHeader()) || /*#__PURE__*/React__default["default"].createElement(OpenChannel_components_OpenChannelHeader, null), (currentOpenChannel === null || currentOpenChannel === void 0 ? void 0 : currentOpenChannel.isFrozen) && /*#__PURE__*/React__default["default"].createElement(OpenChannel_components_FrozenChannelNotification, null), /*#__PURE__*/React__default["default"].createElement(OpenChannel_components_OpenChannelMessageList, {
107
+ renderMessage: renderMessage,
108
+ renderPlaceHolderEmptyList: renderPlaceHolderEmptyList
109
+ }), (renderInput === null || renderInput === void 0 ? void 0 : renderInput()) || /*#__PURE__*/React__default["default"].createElement(OpenChannel_components_OpenChannelInput, {
110
+ ref: messageInputRef
111
+ }));
112
+ };
113
+
114
+ module.exports = OpenChannelUI;
115
+ //# sourceMappingURL=OpenChannelUI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenChannelUI.js","sources":["../../../../src/smart-components/OpenChannel/components/OpenChannelUI/index.tsx"],"sourcesContent":["import './open-channel-ui.scss';\n\nimport React from 'react';\nimport { useOpenChannel } from '../../context/OpenChannelProvider';\n\nimport OpenChannelInput from '../OpenChannelInput';\nimport FrozenChannelNotification from '../FrozenChannelNotification';\nimport OpenChannelHeader from '../OpenChannelHeader';\n// import OpenchannelConversationScroll from './components/OpenchannelConversationScroll';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport OpenChannelMessageList from '../OpenChannelMessageList';\nimport { RenderMessageProps } from '../../../../types';\n\nexport interface OpenChannelUIProps {\n renderMessage?: (props: RenderMessageProps) => React.ReactNode;\n renderHeader?: () => React.ReactNode;\n renderInput?: () => React.ReactNode;\n renderPlaceHolderEmptyList?: () => React.ReactNode;\n renderPlaceHolderError?: () => React.ReactNode;\n renderPlaceHolderLoading?: () => React.ReactNode;\n}\n\nconst COMPONENT_CLASS_NAME = 'sendbird-openchannel-conversation';\n\nconst OpenChannelUI: React.FC<OpenChannelUIProps> = ({\n renderMessage,\n renderHeader,\n renderInput,\n renderPlaceHolderEmptyList,\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n}: OpenChannelUIProps) => {\n const {\n currentOpenChannel,\n amIBanned,\n loading,\n isInvalid,\n messageInputRef,\n } = useOpenChannel();\n\n if (\n !currentOpenChannel\n || !currentOpenChannel?.url\n || amIBanned\n ) {\n return (renderPlaceHolderError?.() ||\n <div className={COMPONENT_CLASS_NAME}><PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} /></div>\n );\n }\n if (loading) {\n return (renderPlaceHolderLoading?.() ||\n <div className={COMPONENT_CLASS_NAME}><PlaceHolder type={PlaceHolderTypes.LOADING} /></div>\n );\n }\n if (isInvalid) {\n return (renderPlaceHolderError?.() ||\n <div className={COMPONENT_CLASS_NAME}><PlaceHolder type={PlaceHolderTypes.WRONG} /></div>\n );\n }\n\n return (\n <div className={COMPONENT_CLASS_NAME}>\n {\n renderHeader?.() || (\n <OpenChannelHeader />\n )\n }\n {\n currentOpenChannel?.isFrozen && (\n <FrozenChannelNotification />\n )\n }\n <OpenChannelMessageList\n renderMessage={renderMessage}\n renderPlaceHolderEmptyList={renderPlaceHolderEmptyList}\n />\n {\n renderInput?.() || (\n <OpenChannelInput ref={messageInputRef} />\n )\n }\n </div>\n );\n};\n\nexport default OpenChannelUI;\n"],"names":["COMPONENT_CLASS_NAME","OpenChannelUI","_a","renderMessage","renderHeader","renderInput","renderPlaceHolderEmptyList","renderPlaceHolderError","renderPlaceHolderLoading","_b","useOpenChannel","currentOpenChannel","amIBanned","loading","isInvalid","messageInputRef","url","React","PlaceHolder","PlaceHolderTypes","NO_CHANNELS","LOADING","WRONG","OpenChannelHeader","isFrozen","FrozenChannelNotification","OpenChannelMessageList","OpenChannelInput"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,IAAMA,oBAAoB,GAAG,mCAA7B;;IAEMC,aAAa,GAAiC,SAA9CA,aAA8C,CAACC,EAAD;MAClDC,aAAa;MACbC,YAAY;MACZC,WAAW;MACXC,0BAA0B;MAC1BC,sBAAsB;MACtBC,wBAAwB;;AAElB,MAAAC,KAMFC,kCAAc,EANZ;AAAA,MACJC,kBAAkB,wBADd;AAAA,MAEJC,SAAS,eAFL;AAAA,MAGJC,OAAO,aAHH;AAAA,MAIJC,SAAS,eAJL;AAAA,MAKJC,eAAe,qBALX;;AAQN,MACE,CAACJ,kBAAD,IACG,EAACA,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEK,GAArB,CADH,IAEGJ,SAHL,EAIE;AACA,WAAQ,CAAAL,sBAAsB,SAAtB,IAAAA,sBAAsB,WAAtB,SAAA,GAAAA,sBAAsB,EAAtB,kBACNU;AAAK,MAAA,SAAS,EAAEjB;AAAhB,oBAAsCiB,wCAACC,0BAAD;AAAa,MAAA,IAAI,EAAEC,+BAAgB,CAACC;AAApC,MAAtC,CADF;AAGD;;AACD,MAAIP,OAAJ,EAAa;AACX,WAAQ,CAAAL,wBAAwB,SAAxB,IAAAA,wBAAwB,WAAxB,SAAA,GAAAA,wBAAwB,EAAxB,kBACNS;AAAK,MAAA,SAAS,EAAEjB;AAAhB,oBAAsCiB,wCAACC,0BAAD;AAAa,MAAA,IAAI,EAAEC,+BAAgB,CAACE;AAApC,MAAtC,CADF;AAGD;;AACD,MAAIP,SAAJ,EAAe;AACb,WAAQ,CAAAP,sBAAsB,SAAtB,IAAAA,sBAAsB,WAAtB,SAAA,GAAAA,sBAAsB,EAAtB,kBACNU;AAAK,MAAA,SAAS,EAAEjB;AAAhB,oBAAsCiB,wCAACC,0BAAD;AAAa,MAAA,IAAI,EAAEC,+BAAgB,CAACG;AAApC,MAAtC,CADF;AAGD;;AAED,sBACEL;AAAK,IAAA,SAAS,EAAEjB;AAAhB,KAEI,CAAAI,YAAY,SAAZ,IAAAA,YAAY,WAAZ,SAAA,GAAAA,YAAY,EAAZ,kBACEa,wCAACM,wCAAD,OAHN,EAOI,CAAAZ,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,CAAEa,QAApB,kBACEP,wCAACQ,gDAAD,OARN,eAWER,wCAACS,6CAAD;AACE,IAAA,aAAa,EAAEvB,aADjB;AAEE,IAAA,0BAA0B,EAAEG;AAF9B,IAXF,EAgBI,CAAAD,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,EAAX,kBACEY,wCAACU,uCAAD;AAAkB,IAAA,GAAG,EAAEZ;AAAvB,IAjBN,CADF;AAuBD;;;;"}