@sendbird/uikit-react 3.0.0-alpha

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 (589) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/LICENSE +21 -0
  3. package/README.md +103 -0
  4. package/dist/App.js +294 -0
  5. package/dist/App.js.map +1 -0
  6. package/dist/Channel/components/ChannelHeader.js +116 -0
  7. package/dist/Channel/components/ChannelHeader.js.map +1 -0
  8. package/dist/Channel/components/ChannelUI.js +172 -0
  9. package/dist/Channel/components/ChannelUI.js.map +1 -0
  10. package/dist/Channel/components/FileViewer.js +150 -0
  11. package/dist/Channel/components/FileViewer.js.map +1 -0
  12. package/dist/Channel/components/FrozenNotification.js +20 -0
  13. package/dist/Channel/components/FrozenNotification.js.map +1 -0
  14. package/dist/Channel/components/Message.js +232 -0
  15. package/dist/Channel/components/Message.js.map +1 -0
  16. package/dist/Channel/components/MessageInput.js +87 -0
  17. package/dist/Channel/components/MessageInput.js.map +1 -0
  18. package/dist/Channel/components/MessageList.js +227 -0
  19. package/dist/Channel/components/MessageList.js.map +1 -0
  20. package/dist/Channel/components/RemoveMessageModal.js +52 -0
  21. package/dist/Channel/components/RemoveMessageModal.js.map +1 -0
  22. package/dist/Channel/components/TypingIndicator.js +97 -0
  23. package/dist/Channel/components/TypingIndicator.js.map +1 -0
  24. package/dist/Channel/components/UnreadCount.js +41 -0
  25. package/dist/Channel/components/UnreadCount.js.map +1 -0
  26. package/dist/Channel/context.js +23 -0
  27. package/dist/Channel/context.js.map +1 -0
  28. package/dist/Channel.js +99 -0
  29. package/dist/Channel.js.map +1 -0
  30. package/dist/ChannelList/components/AddChannel.js +70 -0
  31. package/dist/ChannelList/components/AddChannel.js.map +1 -0
  32. package/dist/ChannelList/components/ChannelListHeader.js +62 -0
  33. package/dist/ChannelList/components/ChannelListHeader.js.map +1 -0
  34. package/dist/ChannelList/components/ChannelListUI.js +213 -0
  35. package/dist/ChannelList/components/ChannelListUI.js.map +1 -0
  36. package/dist/ChannelList/components/ChannelPreview.js +177 -0
  37. package/dist/ChannelList/components/ChannelPreview.js.map +1 -0
  38. package/dist/ChannelList/components/ChannelPreviewAction.js +131 -0
  39. package/dist/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  40. package/dist/ChannelList/context.js +13 -0
  41. package/dist/ChannelList/context.js.map +1 -0
  42. package/dist/ChannelList.js +80 -0
  43. package/dist/ChannelList.js.map +1 -0
  44. package/dist/ChannelListProvider-0b0c2c40.js +861 -0
  45. package/dist/ChannelListProvider-0b0c2c40.js.map +1 -0
  46. package/dist/ChannelProvider-459e463f.js +2083 -0
  47. package/dist/ChannelProvider-459e463f.js.map +1 -0
  48. package/dist/ChannelSettings/components/AdminPanel.js +905 -0
  49. package/dist/ChannelSettings/components/AdminPanel.js.map +1 -0
  50. package/dist/ChannelSettings/components/ChannelProfile.js +102 -0
  51. package/dist/ChannelSettings/components/ChannelProfile.js.map +1 -0
  52. package/dist/ChannelSettings/components/ChannelSettingsUI.js +152 -0
  53. package/dist/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  54. package/dist/ChannelSettings/components/EditDetailsModal.js +154 -0
  55. package/dist/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  56. package/dist/ChannelSettings/components/LeaveChannel.js +53 -0
  57. package/dist/ChannelSettings/components/LeaveChannel.js.map +1 -0
  58. package/dist/ChannelSettings/components/UserListItem.js +105 -0
  59. package/dist/ChannelSettings/components/UserListItem.js.map +1 -0
  60. package/dist/ChannelSettings/components/UserPanel.js +79 -0
  61. package/dist/ChannelSettings/components/UserPanel.js.map +1 -0
  62. package/dist/ChannelSettings/context.js +93 -0
  63. package/dist/ChannelSettings/context.js.map +1 -0
  64. package/dist/ChannelSettings.js +71 -0
  65. package/dist/ChannelSettings.js.map +1 -0
  66. package/dist/CreateChannel/components/CreateChannelUI.js +53 -0
  67. package/dist/CreateChannel/components/CreateChannelUI.js.map +1 -0
  68. package/dist/CreateChannel/components/InviteMembers.js +184 -0
  69. package/dist/CreateChannel/components/InviteMembers.js.map +1 -0
  70. package/dist/CreateChannel/components/SelectChannelType.js +131 -0
  71. package/dist/CreateChannel/components/SelectChannelType.js.map +1 -0
  72. package/dist/CreateChannel/context.js +8 -0
  73. package/dist/CreateChannel/context.js.map +1 -0
  74. package/dist/CreateChannel.js +53 -0
  75. package/dist/CreateChannel.js.map +1 -0
  76. package/dist/CreateChannelProvider-c617a1bb.js +53 -0
  77. package/dist/CreateChannelProvider-c617a1bb.js.map +1 -0
  78. package/dist/EditUserProfile/components/EditUserProfileUI.js +26 -0
  79. package/dist/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  80. package/dist/EditUserProfile/context.js +27 -0
  81. package/dist/EditUserProfile/context.js.map +1 -0
  82. package/dist/EditUserProfile.js +39 -0
  83. package/dist/EditUserProfile.js.map +1 -0
  84. package/dist/LocalizationContext-e4391013.js +22 -0
  85. package/dist/LocalizationContext-e4391013.js.map +1 -0
  86. package/dist/MemberList-6655cba0.js +425 -0
  87. package/dist/MemberList-6655cba0.js.map +1 -0
  88. package/dist/MessageSearch/components/MessageSearchUI.js +151 -0
  89. package/dist/MessageSearch/components/MessageSearchUI.js.map +1 -0
  90. package/dist/MessageSearch/context.js +392 -0
  91. package/dist/MessageSearch/context.js.map +1 -0
  92. package/dist/MessageSearch.js +146 -0
  93. package/dist/MessageSearch.js.map +1 -0
  94. package/dist/OpenChannel/components/FrozenChannelNotification.js +20 -0
  95. package/dist/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  96. package/dist/OpenChannel/components/OpenChannelHeader.js +78 -0
  97. package/dist/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  98. package/dist/OpenChannel/components/OpenChannelInput.js +52 -0
  99. package/dist/OpenChannel/components/OpenChannelInput.js.map +1 -0
  100. package/dist/OpenChannel/components/OpenChannelMessage.js +278 -0
  101. package/dist/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  102. package/dist/OpenChannel/components/OpenChannelMessageList.js +153 -0
  103. package/dist/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  104. package/dist/OpenChannel/components/OpenChannelUI.js +105 -0
  105. package/dist/OpenChannel/components/OpenChannelUI.js.map +1 -0
  106. package/dist/OpenChannel/context.js +14 -0
  107. package/dist/OpenChannel/context.js.map +1 -0
  108. package/dist/OpenChannel.js +76 -0
  109. package/dist/OpenChannel.js.map +1 -0
  110. package/dist/OpenChannelProvider-a7691eb4.js +2011 -0
  111. package/dist/OpenChannelProvider-a7691eb4.js.map +1 -0
  112. package/dist/OpenChannelSettings/components/EditDetailsModal.js +149 -0
  113. package/dist/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  114. package/dist/OpenChannelSettings/components/OpenChannelProfile.js +81 -0
  115. package/dist/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  116. package/dist/OpenChannelSettings/components/OpenChannelSettingsUI.js +104 -0
  117. package/dist/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  118. package/dist/OpenChannelSettings/components/OperatorUI.js +184 -0
  119. package/dist/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  120. package/dist/OpenChannelSettings/components/ParticipantUI.js +172 -0
  121. package/dist/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  122. package/dist/OpenChannelSettings/context.js +64 -0
  123. package/dist/OpenChannelSettings/context.js.map +1 -0
  124. package/dist/OpenChannelSettings.js +64 -0
  125. package/dist/OpenChannelSettings.js.map +1 -0
  126. package/dist/SendbirdProvider.js +740 -0
  127. package/dist/SendbirdProvider.js.map +1 -0
  128. package/dist/UserProfileContext-865db5e6.js +38 -0
  129. package/dist/UserProfileContext-865db5e6.js.map +1 -0
  130. package/dist/_rollupPluginBabelHelpers-20904f21.js +233 -0
  131. package/dist/_rollupPluginBabelHelpers-20904f21.js.map +1 -0
  132. package/dist/actionTypes-1e3a4074.js +6 -0
  133. package/dist/actionTypes-1e3a4074.js.map +1 -0
  134. package/dist/cjs/App.js +301 -0
  135. package/dist/cjs/App.js.map +1 -0
  136. package/dist/cjs/Channel/components/ChannelHeader.js +122 -0
  137. package/dist/cjs/Channel/components/ChannelHeader.js.map +1 -0
  138. package/dist/cjs/Channel/components/ChannelUI.js +178 -0
  139. package/dist/cjs/Channel/components/ChannelUI.js.map +1 -0
  140. package/dist/cjs/Channel/components/FileViewer.js +159 -0
  141. package/dist/cjs/Channel/components/FileViewer.js.map +1 -0
  142. package/dist/cjs/Channel/components/FrozenNotification.js +26 -0
  143. package/dist/cjs/Channel/components/FrozenNotification.js.map +1 -0
  144. package/dist/cjs/Channel/components/Message.js +238 -0
  145. package/dist/cjs/Channel/components/Message.js.map +1 -0
  146. package/dist/cjs/Channel/components/MessageInput.js +93 -0
  147. package/dist/cjs/Channel/components/MessageInput.js.map +1 -0
  148. package/dist/cjs/Channel/components/MessageList.js +233 -0
  149. package/dist/cjs/Channel/components/MessageList.js.map +1 -0
  150. package/dist/cjs/Channel/components/RemoveMessageModal.js +58 -0
  151. package/dist/cjs/Channel/components/RemoveMessageModal.js.map +1 -0
  152. package/dist/cjs/Channel/components/TypingIndicator.js +103 -0
  153. package/dist/cjs/Channel/components/TypingIndicator.js.map +1 -0
  154. package/dist/cjs/Channel/components/UnreadCount.js +47 -0
  155. package/dist/cjs/Channel/components/UnreadCount.js.map +1 -0
  156. package/dist/cjs/Channel/context.js +32 -0
  157. package/dist/cjs/Channel/context.js.map +1 -0
  158. package/dist/cjs/Channel.js +105 -0
  159. package/dist/cjs/Channel.js.map +1 -0
  160. package/dist/cjs/ChannelList/components/AddChannel.js +79 -0
  161. package/dist/cjs/ChannelList/components/AddChannel.js.map +1 -0
  162. package/dist/cjs/ChannelList/components/ChannelListHeader.js +68 -0
  163. package/dist/cjs/ChannelList/components/ChannelListHeader.js.map +1 -0
  164. package/dist/cjs/ChannelList/components/ChannelListUI.js +219 -0
  165. package/dist/cjs/ChannelList/components/ChannelListUI.js.map +1 -0
  166. package/dist/cjs/ChannelList/components/ChannelPreview.js +183 -0
  167. package/dist/cjs/ChannelList/components/ChannelPreview.js.map +1 -0
  168. package/dist/cjs/ChannelList/components/ChannelPreviewAction.js +138 -0
  169. package/dist/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  170. package/dist/cjs/ChannelList/context.js +22 -0
  171. package/dist/cjs/ChannelList/context.js.map +1 -0
  172. package/dist/cjs/ChannelList.js +86 -0
  173. package/dist/cjs/ChannelList.js.map +1 -0
  174. package/dist/cjs/ChannelListProvider-5a152618.js +873 -0
  175. package/dist/cjs/ChannelListProvider-5a152618.js.map +1 -0
  176. package/dist/cjs/ChannelProvider-f1fb0108.js +2096 -0
  177. package/dist/cjs/ChannelProvider-f1fb0108.js.map +1 -0
  178. package/dist/cjs/ChannelSettings/components/AdminPanel.js +911 -0
  179. package/dist/cjs/ChannelSettings/components/AdminPanel.js.map +1 -0
  180. package/dist/cjs/ChannelSettings/components/ChannelProfile.js +108 -0
  181. package/dist/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -0
  182. package/dist/cjs/ChannelSettings/components/ChannelSettingsUI.js +158 -0
  183. package/dist/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  184. package/dist/cjs/ChannelSettings/components/EditDetailsModal.js +160 -0
  185. package/dist/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  186. package/dist/cjs/ChannelSettings/components/LeaveChannel.js +59 -0
  187. package/dist/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -0
  188. package/dist/cjs/ChannelSettings/components/UserListItem.js +111 -0
  189. package/dist/cjs/ChannelSettings/components/UserListItem.js.map +1 -0
  190. package/dist/cjs/ChannelSettings/components/UserPanel.js +85 -0
  191. package/dist/cjs/ChannelSettings/components/UserPanel.js.map +1 -0
  192. package/dist/cjs/ChannelSettings/context.js +102 -0
  193. package/dist/cjs/ChannelSettings/context.js.map +1 -0
  194. package/dist/cjs/ChannelSettings.js +77 -0
  195. package/dist/cjs/ChannelSettings.js.map +1 -0
  196. package/dist/cjs/CreateChannel/components/CreateChannelUI.js +59 -0
  197. package/dist/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -0
  198. package/dist/cjs/CreateChannel/components/InviteMembers.js +190 -0
  199. package/dist/cjs/CreateChannel/components/InviteMembers.js.map +1 -0
  200. package/dist/cjs/CreateChannel/components/SelectChannelType.js +137 -0
  201. package/dist/cjs/CreateChannel/components/SelectChannelType.js.map +1 -0
  202. package/dist/cjs/CreateChannel/context.js +17 -0
  203. package/dist/cjs/CreateChannel/context.js.map +1 -0
  204. package/dist/cjs/CreateChannel.js +59 -0
  205. package/dist/cjs/CreateChannel.js.map +1 -0
  206. package/dist/cjs/CreateChannelProvider-df42106f.js +60 -0
  207. package/dist/cjs/CreateChannelProvider-df42106f.js.map +1 -0
  208. package/dist/cjs/EditUserProfile/components/EditUserProfileUI.js +32 -0
  209. package/dist/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  210. package/dist/cjs/EditUserProfile/context.js +36 -0
  211. package/dist/cjs/EditUserProfile/context.js.map +1 -0
  212. package/dist/cjs/EditUserProfile.js +45 -0
  213. package/dist/cjs/EditUserProfile.js.map +1 -0
  214. package/dist/cjs/LocalizationContext-68e55e2a.js +30 -0
  215. package/dist/cjs/LocalizationContext-68e55e2a.js.map +1 -0
  216. package/dist/cjs/MemberList-dc84e303.js +431 -0
  217. package/dist/cjs/MemberList-dc84e303.js.map +1 -0
  218. package/dist/cjs/MessageSearch/components/MessageSearchUI.js +160 -0
  219. package/dist/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -0
  220. package/dist/cjs/MessageSearch/context.js +401 -0
  221. package/dist/cjs/MessageSearch/context.js.map +1 -0
  222. package/dist/cjs/MessageSearch.js +152 -0
  223. package/dist/cjs/MessageSearch.js.map +1 -0
  224. package/dist/cjs/OpenChannel/components/FrozenChannelNotification.js +26 -0
  225. package/dist/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  226. package/dist/cjs/OpenChannel/components/OpenChannelHeader.js +84 -0
  227. package/dist/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  228. package/dist/cjs/OpenChannel/components/OpenChannelInput.js +58 -0
  229. package/dist/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -0
  230. package/dist/cjs/OpenChannel/components/OpenChannelMessage.js +284 -0
  231. package/dist/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  232. package/dist/cjs/OpenChannel/components/OpenChannelMessageList.js +159 -0
  233. package/dist/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  234. package/dist/cjs/OpenChannel/components/OpenChannelUI.js +111 -0
  235. package/dist/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -0
  236. package/dist/cjs/OpenChannel/context.js +23 -0
  237. package/dist/cjs/OpenChannel/context.js.map +1 -0
  238. package/dist/cjs/OpenChannel.js +82 -0
  239. package/dist/cjs/OpenChannel.js.map +1 -0
  240. package/dist/cjs/OpenChannelProvider-7a1a996f.js +2020 -0
  241. package/dist/cjs/OpenChannelProvider-7a1a996f.js.map +1 -0
  242. package/dist/cjs/OpenChannelSettings/components/EditDetailsModal.js +155 -0
  243. package/dist/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  244. package/dist/cjs/OpenChannelSettings/components/OpenChannelProfile.js +87 -0
  245. package/dist/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  246. package/dist/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +110 -0
  247. package/dist/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  248. package/dist/cjs/OpenChannelSettings/components/OperatorUI.js +194 -0
  249. package/dist/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  250. package/dist/cjs/OpenChannelSettings/components/ParticipantUI.js +178 -0
  251. package/dist/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  252. package/dist/cjs/OpenChannelSettings/context.js +73 -0
  253. package/dist/cjs/OpenChannelSettings/context.js.map +1 -0
  254. package/dist/cjs/OpenChannelSettings.js +70 -0
  255. package/dist/cjs/OpenChannelSettings.js.map +1 -0
  256. package/dist/cjs/SendbirdProvider.js +749 -0
  257. package/dist/cjs/SendbirdProvider.js.map +1 -0
  258. package/dist/cjs/UserProfileContext-3533547d.js +46 -0
  259. package/dist/cjs/UserProfileContext-3533547d.js.map +1 -0
  260. package/dist/cjs/_rollupPluginBabelHelpers-fc14118c.js +243 -0
  261. package/dist/cjs/_rollupPluginBabelHelpers-fc14118c.js.map +1 -0
  262. package/dist/cjs/actionTypes-bc47f97a.js +10 -0
  263. package/dist/cjs/actionTypes-bc47f97a.js.map +1 -0
  264. package/dist/cjs/color-4afb15fb.js +42 -0
  265. package/dist/cjs/color-4afb15fb.js.map +1 -0
  266. package/dist/cjs/compareIds-01306377.js +20 -0
  267. package/dist/cjs/compareIds-01306377.js.map +1 -0
  268. package/dist/cjs/context-c1f9d650.js +19 -0
  269. package/dist/cjs/context-c1f9d650.js.map +1 -0
  270. package/dist/cjs/index-1044f1ed.js +97 -0
  271. package/dist/cjs/index-1044f1ed.js.map +1 -0
  272. package/dist/cjs/index-1468d245.js +142 -0
  273. package/dist/cjs/index-1468d245.js.map +1 -0
  274. package/dist/cjs/index-4987c8b2.js +175 -0
  275. package/dist/cjs/index-4987c8b2.js.map +1 -0
  276. package/dist/cjs/index-659c9ca5.js +130 -0
  277. package/dist/cjs/index-659c9ca5.js.map +1 -0
  278. package/dist/cjs/index-8becccd8.js +284 -0
  279. package/dist/cjs/index-8becccd8.js.map +1 -0
  280. package/dist/cjs/index-905331fa.js +1880 -0
  281. package/dist/cjs/index-905331fa.js.map +1 -0
  282. package/dist/cjs/index-9dc3863f.js +67 -0
  283. package/dist/cjs/index-9dc3863f.js.map +1 -0
  284. package/dist/cjs/index-aecc8d24.js +9 -0
  285. package/dist/cjs/index-aecc8d24.js.map +1 -0
  286. package/dist/cjs/index-d4880236.js +641 -0
  287. package/dist/cjs/index-d4880236.js.map +1 -0
  288. package/dist/cjs/index-e2bb862c.js +514 -0
  289. package/dist/cjs/index-e2bb862c.js.map +1 -0
  290. package/dist/cjs/index.css +4355 -0
  291. package/dist/cjs/index.css.map +1 -0
  292. package/dist/cjs/index.js +155 -0
  293. package/dist/cjs/index.js.map +1 -0
  294. package/dist/cjs/openChannelUtils-37919a36.js +92 -0
  295. package/dist/cjs/openChannelUtils-37919a36.js.map +1 -0
  296. package/dist/cjs/sendBirdSelectors.js +741 -0
  297. package/dist/cjs/sendBirdSelectors.js.map +1 -0
  298. package/dist/cjs/stringSet-aa544ce5.js +116 -0
  299. package/dist/cjs/stringSet-aa544ce5.js.map +1 -0
  300. package/dist/cjs/topics-8314d425.js +18 -0
  301. package/dist/cjs/topics-8314d425.js.map +1 -0
  302. package/dist/cjs/tslib.es6-4a281a05.js +40 -0
  303. package/dist/cjs/tslib.es6-4a281a05.js.map +1 -0
  304. package/dist/cjs/ui/Accordion.js +74 -0
  305. package/dist/cjs/ui/Accordion.js.map +1 -0
  306. package/dist/cjs/ui/AccordionGroup.js +32 -0
  307. package/dist/cjs/ui/AccordionGroup.js.map +1 -0
  308. package/dist/cjs/ui/AdminMessage.js +44 -0
  309. package/dist/cjs/ui/AdminMessage.js.map +1 -0
  310. package/dist/cjs/ui/Avatar.js +226 -0
  311. package/dist/cjs/ui/Avatar.js.map +1 -0
  312. package/dist/cjs/ui/Badge.js +45 -0
  313. package/dist/cjs/ui/Badge.js.map +1 -0
  314. package/dist/cjs/ui/Button.js +17 -0
  315. package/dist/cjs/ui/Button.js.map +1 -0
  316. package/dist/cjs/ui/ChannelAvatar.js +59 -0
  317. package/dist/cjs/ui/ChannelAvatar.js.map +1 -0
  318. package/dist/cjs/ui/ChannelPreview.js +201 -0
  319. package/dist/cjs/ui/ChannelPreview.js.map +1 -0
  320. package/dist/cjs/ui/ChatHeader.js +145 -0
  321. package/dist/cjs/ui/ChatHeader.js.map +1 -0
  322. package/dist/cjs/ui/Checkbox.js +49 -0
  323. package/dist/cjs/ui/Checkbox.js.map +1 -0
  324. package/dist/cjs/ui/ConnectionStatus.js +34 -0
  325. package/dist/cjs/ui/ConnectionStatus.js.map +1 -0
  326. package/dist/cjs/ui/ContextMenu.js +431 -0
  327. package/dist/cjs/ui/ContextMenu.js.map +1 -0
  328. package/dist/cjs/ui/DateSeparator.js +44 -0
  329. package/dist/cjs/ui/DateSeparator.js.map +1 -0
  330. package/dist/cjs/ui/Dropdown.js +107 -0
  331. package/dist/cjs/ui/Dropdown.js.map +1 -0
  332. package/dist/cjs/ui/EmojiReactions.js +127 -0
  333. package/dist/cjs/ui/EmojiReactions.js.map +1 -0
  334. package/dist/cjs/ui/FileMessageItemBody.js +57 -0
  335. package/dist/cjs/ui/FileMessageItemBody.js.map +1 -0
  336. package/dist/cjs/ui/FileViewer.js +174 -0
  337. package/dist/cjs/ui/FileViewer.js.map +1 -0
  338. package/dist/cjs/ui/Icon.js +1462 -0
  339. package/dist/cjs/ui/Icon.js.map +1 -0
  340. package/dist/cjs/ui/IconButton.js +83 -0
  341. package/dist/cjs/ui/IconButton.js.map +1 -0
  342. package/dist/cjs/ui/ImageRenderer.js +138 -0
  343. package/dist/cjs/ui/ImageRenderer.js.map +1 -0
  344. package/dist/cjs/ui/Input.js +74 -0
  345. package/dist/cjs/ui/Input.js.map +1 -0
  346. package/dist/cjs/ui/Label.js +17 -0
  347. package/dist/cjs/ui/Label.js.map +1 -0
  348. package/dist/cjs/ui/LinkLabel.js +51 -0
  349. package/dist/cjs/ui/LinkLabel.js.map +1 -0
  350. package/dist/cjs/ui/Loader.js +44 -0
  351. package/dist/cjs/ui/Loader.js.map +1 -0
  352. package/dist/cjs/ui/MessageContent.js +328 -0
  353. package/dist/cjs/ui/MessageContent.js.map +1 -0
  354. package/dist/cjs/ui/MessageInput.js +232 -0
  355. package/dist/cjs/ui/MessageInput.js.map +1 -0
  356. package/dist/cjs/ui/MessageItemMenu.js +141 -0
  357. package/dist/cjs/ui/MessageItemMenu.js.map +1 -0
  358. package/dist/cjs/ui/MessageItemReactionMenu.js +112 -0
  359. package/dist/cjs/ui/MessageItemReactionMenu.js.map +1 -0
  360. package/dist/cjs/ui/MessageSearchFileItem.js +130 -0
  361. package/dist/cjs/ui/MessageSearchFileItem.js.map +1 -0
  362. package/dist/cjs/ui/MessageSearchItem.js +93 -0
  363. package/dist/cjs/ui/MessageSearchItem.js.map +1 -0
  364. package/dist/cjs/ui/Modal.js +140 -0
  365. package/dist/cjs/ui/Modal.js.map +1 -0
  366. package/dist/cjs/ui/MutedAvatarOverlay.js +40 -0
  367. package/dist/cjs/ui/MutedAvatarOverlay.js.map +1 -0
  368. package/dist/cjs/ui/OGMessageItemBody.js +97 -0
  369. package/dist/cjs/ui/OGMessageItemBody.js.map +1 -0
  370. package/dist/cjs/ui/OpenChannelAdminMessage.js +27 -0
  371. package/dist/cjs/ui/OpenChannelAdminMessage.js.map +1 -0
  372. package/dist/cjs/ui/OpenChannelAvatar.js +41 -0
  373. package/dist/cjs/ui/OpenChannelAvatar.js.map +1 -0
  374. package/dist/cjs/ui/OpenChannelMessageContent.js +14 -0
  375. package/dist/cjs/ui/OpenChannelMessageContent.js.map +1 -0
  376. package/dist/cjs/ui/OpenchannelConversationHeader.js +73 -0
  377. package/dist/cjs/ui/OpenchannelConversationHeader.js.map +1 -0
  378. package/dist/cjs/ui/OpenchannelFileMessage.js +230 -0
  379. package/dist/cjs/ui/OpenchannelFileMessage.js.map +1 -0
  380. package/dist/cjs/ui/OpenchannelOGMessage.js +345 -0
  381. package/dist/cjs/ui/OpenchannelOGMessage.js.map +1 -0
  382. package/dist/cjs/ui/OpenchannelThumbnailMessage.js +305 -0
  383. package/dist/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -0
  384. package/dist/cjs/ui/OpenchannelUserMessage.js +264 -0
  385. package/dist/cjs/ui/OpenchannelUserMessage.js.map +1 -0
  386. package/dist/cjs/ui/PlaceHolder.js +20 -0
  387. package/dist/cjs/ui/PlaceHolder.js.map +1 -0
  388. package/dist/cjs/ui/QuoteMessage.js +131 -0
  389. package/dist/cjs/ui/QuoteMessage.js.map +1 -0
  390. package/dist/cjs/ui/QuoteMessageInput.js +99 -0
  391. package/dist/cjs/ui/QuoteMessageInput.js.map +1 -0
  392. package/dist/cjs/ui/ReactionBadge.js +68 -0
  393. package/dist/cjs/ui/ReactionBadge.js.map +1 -0
  394. package/dist/cjs/ui/ReactionButton.js +55 -0
  395. package/dist/cjs/ui/ReactionButton.js.map +1 -0
  396. package/dist/cjs/ui/SortByRow.js +57 -0
  397. package/dist/cjs/ui/SortByRow.js.map +1 -0
  398. package/dist/cjs/ui/TextButton.js +45 -0
  399. package/dist/cjs/ui/TextButton.js.map +1 -0
  400. package/dist/cjs/ui/TextMessageItemBody.js +40 -0
  401. package/dist/cjs/ui/TextMessageItemBody.js.map +1 -0
  402. package/dist/cjs/ui/ThumbnailMessageItemBody.js +82 -0
  403. package/dist/cjs/ui/ThumbnailMessageItemBody.js.map +1 -0
  404. package/dist/cjs/ui/Tooltip.js +35 -0
  405. package/dist/cjs/ui/Tooltip.js.map +1 -0
  406. package/dist/cjs/ui/TooltipWrapper.js +65 -0
  407. package/dist/cjs/ui/TooltipWrapper.js.map +1 -0
  408. package/dist/cjs/ui/UnknownMessageItemBody.js +41 -0
  409. package/dist/cjs/ui/UnknownMessageItemBody.js.map +1 -0
  410. package/dist/cjs/ui/UserListItem.js +158 -0
  411. package/dist/cjs/ui/UserListItem.js.map +1 -0
  412. package/dist/cjs/ui/UserProfile.js +87 -0
  413. package/dist/cjs/ui/UserProfile.js.map +1 -0
  414. package/dist/cjs/useSendbirdStateContext.js +22 -0
  415. package/dist/cjs/useSendbirdStateContext.js.map +1 -0
  416. package/dist/cjs/utils-3b0815dc.js +6 -0
  417. package/dist/cjs/utils-3b0815dc.js.map +1 -0
  418. package/dist/cjs/utils-66b3f4ec.js +38 -0
  419. package/dist/cjs/utils-66b3f4ec.js.map +1 -0
  420. package/dist/cjs/utils-cbd3ed99.js +32 -0
  421. package/dist/cjs/utils-cbd3ed99.js.map +1 -0
  422. package/dist/cjs/uuid-1d5ec8b2.js +19 -0
  423. package/dist/cjs/uuid-1d5ec8b2.js.map +1 -0
  424. package/dist/cjs/withSendBird.js +35 -0
  425. package/dist/cjs/withSendBird.js.map +1 -0
  426. package/dist/color-ee3fc5ee.js +39 -0
  427. package/dist/color-ee3fc5ee.js.map +1 -0
  428. package/dist/compareIds-808956f2.js +18 -0
  429. package/dist/compareIds-808956f2.js.map +1 -0
  430. package/dist/context-98ce535c.js +12 -0
  431. package/dist/context-98ce535c.js.map +1 -0
  432. package/dist/index-1718324d.js +280 -0
  433. package/dist/index-1718324d.js.map +1 -0
  434. package/dist/index-5c2c81bc.js +168 -0
  435. package/dist/index-5c2c81bc.js.map +1 -0
  436. package/dist/index-6ebf7894.js +512 -0
  437. package/dist/index-6ebf7894.js.map +1 -0
  438. package/dist/index-770d7112.js +1873 -0
  439. package/dist/index-770d7112.js.map +1 -0
  440. package/dist/index-7a51bd16.js +131 -0
  441. package/dist/index-7a51bd16.js.map +1 -0
  442. package/dist/index-8c72a94a.js +602 -0
  443. package/dist/index-8c72a94a.js.map +1 -0
  444. package/dist/index-942c85a6.js +7 -0
  445. package/dist/index-942c85a6.js.map +1 -0
  446. package/dist/index-acebc2ff.js +87 -0
  447. package/dist/index-acebc2ff.js.map +1 -0
  448. package/dist/index-cd21929d.js +64 -0
  449. package/dist/index-cd21929d.js.map +1 -0
  450. package/dist/index-e818a8a3.js +121 -0
  451. package/dist/index-e818a8a3.js.map +1 -0
  452. package/dist/index.css +4355 -0
  453. package/dist/index.css.map +1 -0
  454. package/dist/index.d.ts +1801 -0
  455. package/dist/index.js +136 -0
  456. package/dist/index.js.map +1 -0
  457. package/dist/openChannelUtils-56a372e7.js +81 -0
  458. package/dist/openChannelUtils-56a372e7.js.map +1 -0
  459. package/dist/sendBirdSelectors.js +713 -0
  460. package/dist/sendBirdSelectors.js.map +1 -0
  461. package/dist/stringSet-4f6eaa60.js +114 -0
  462. package/dist/stringSet-4f6eaa60.js.map +1 -0
  463. package/dist/topics-9442035c.js +10 -0
  464. package/dist/topics-9442035c.js.map +1 -0
  465. package/dist/tslib.es6-e3c44017.js +38 -0
  466. package/dist/tslib.es6-e3c44017.js.map +1 -0
  467. package/dist/ui/Accordion.js +65 -0
  468. package/dist/ui/Accordion.js.map +1 -0
  469. package/dist/ui/AccordionGroup.js +26 -0
  470. package/dist/ui/AccordionGroup.js.map +1 -0
  471. package/dist/ui/AdminMessage.js +37 -0
  472. package/dist/ui/AdminMessage.js.map +1 -0
  473. package/dist/ui/Avatar.js +217 -0
  474. package/dist/ui/Avatar.js.map +1 -0
  475. package/dist/ui/Badge.js +38 -0
  476. package/dist/ui/Badge.js.map +1 -0
  477. package/dist/ui/Button.js +7 -0
  478. package/dist/ui/Button.js.map +1 -0
  479. package/dist/ui/ChannelAvatar.js +53 -0
  480. package/dist/ui/ChannelAvatar.js.map +1 -0
  481. package/dist/ui/ChannelPreview.js +194 -0
  482. package/dist/ui/ChannelPreview.js.map +1 -0
  483. package/dist/ui/ChatHeader.js +138 -0
  484. package/dist/ui/ChatHeader.js.map +1 -0
  485. package/dist/ui/Checkbox.js +42 -0
  486. package/dist/ui/Checkbox.js.map +1 -0
  487. package/dist/ui/ConnectionStatus.js +28 -0
  488. package/dist/ui/ConnectionStatus.js.map +1 -0
  489. package/dist/ui/ContextMenu.js +417 -0
  490. package/dist/ui/ContextMenu.js.map +1 -0
  491. package/dist/ui/DateSeparator.js +37 -0
  492. package/dist/ui/DateSeparator.js.map +1 -0
  493. package/dist/ui/Dropdown.js +97 -0
  494. package/dist/ui/Dropdown.js.map +1 -0
  495. package/dist/ui/EmojiReactions.js +121 -0
  496. package/dist/ui/EmojiReactions.js.map +1 -0
  497. package/dist/ui/FileMessageItemBody.js +51 -0
  498. package/dist/ui/FileMessageItemBody.js.map +1 -0
  499. package/dist/ui/FileViewer.js +164 -0
  500. package/dist/ui/FileViewer.js.map +1 -0
  501. package/dist/ui/Icon.js +1432 -0
  502. package/dist/ui/Icon.js.map +1 -0
  503. package/dist/ui/IconButton.js +76 -0
  504. package/dist/ui/IconButton.js.map +1 -0
  505. package/dist/ui/ImageRenderer.js +131 -0
  506. package/dist/ui/ImageRenderer.js.map +1 -0
  507. package/dist/ui/Input.js +64 -0
  508. package/dist/ui/Input.js.map +1 -0
  509. package/dist/ui/Label.js +6 -0
  510. package/dist/ui/Label.js.map +1 -0
  511. package/dist/ui/LinkLabel.js +40 -0
  512. package/dist/ui/LinkLabel.js.map +1 -0
  513. package/dist/ui/Loader.js +37 -0
  514. package/dist/ui/Loader.js.map +1 -0
  515. package/dist/ui/MessageContent.js +322 -0
  516. package/dist/ui/MessageContent.js.map +1 -0
  517. package/dist/ui/MessageInput.js +225 -0
  518. package/dist/ui/MessageInput.js.map +1 -0
  519. package/dist/ui/MessageItemMenu.js +135 -0
  520. package/dist/ui/MessageItemMenu.js.map +1 -0
  521. package/dist/ui/MessageItemReactionMenu.js +106 -0
  522. package/dist/ui/MessageItemReactionMenu.js.map +1 -0
  523. package/dist/ui/MessageSearchFileItem.js +124 -0
  524. package/dist/ui/MessageSearchFileItem.js.map +1 -0
  525. package/dist/ui/MessageSearchItem.js +87 -0
  526. package/dist/ui/MessageSearchItem.js.map +1 -0
  527. package/dist/ui/Modal.js +128 -0
  528. package/dist/ui/Modal.js.map +1 -0
  529. package/dist/ui/MutedAvatarOverlay.js +34 -0
  530. package/dist/ui/MutedAvatarOverlay.js.map +1 -0
  531. package/dist/ui/OGMessageItemBody.js +91 -0
  532. package/dist/ui/OGMessageItemBody.js.map +1 -0
  533. package/dist/ui/OpenChannelAdminMessage.js +21 -0
  534. package/dist/ui/OpenChannelAdminMessage.js.map +1 -0
  535. package/dist/ui/OpenChannelAvatar.js +35 -0
  536. package/dist/ui/OpenChannelAvatar.js.map +1 -0
  537. package/dist/ui/OpenChannelMessageContent.js +8 -0
  538. package/dist/ui/OpenChannelMessageContent.js.map +1 -0
  539. package/dist/ui/OpenchannelConversationHeader.js +67 -0
  540. package/dist/ui/OpenchannelConversationHeader.js.map +1 -0
  541. package/dist/ui/OpenchannelFileMessage.js +224 -0
  542. package/dist/ui/OpenchannelFileMessage.js.map +1 -0
  543. package/dist/ui/OpenchannelOGMessage.js +339 -0
  544. package/dist/ui/OpenchannelOGMessage.js.map +1 -0
  545. package/dist/ui/OpenchannelThumbnailMessage.js +299 -0
  546. package/dist/ui/OpenchannelThumbnailMessage.js.map +1 -0
  547. package/dist/ui/OpenchannelUserMessage.js +258 -0
  548. package/dist/ui/OpenchannelUserMessage.js.map +1 -0
  549. package/dist/ui/PlaceHolder.js +11 -0
  550. package/dist/ui/PlaceHolder.js.map +1 -0
  551. package/dist/ui/QuoteMessage.js +125 -0
  552. package/dist/ui/QuoteMessage.js.map +1 -0
  553. package/dist/ui/QuoteMessageInput.js +93 -0
  554. package/dist/ui/QuoteMessageInput.js.map +1 -0
  555. package/dist/ui/ReactionBadge.js +61 -0
  556. package/dist/ui/ReactionBadge.js.map +1 -0
  557. package/dist/ui/ReactionButton.js +48 -0
  558. package/dist/ui/ReactionButton.js.map +1 -0
  559. package/dist/ui/SortByRow.js +50 -0
  560. package/dist/ui/SortByRow.js.map +1 -0
  561. package/dist/ui/TextButton.js +38 -0
  562. package/dist/ui/TextButton.js.map +1 -0
  563. package/dist/ui/TextMessageItemBody.js +34 -0
  564. package/dist/ui/TextMessageItemBody.js.map +1 -0
  565. package/dist/ui/ThumbnailMessageItemBody.js +76 -0
  566. package/dist/ui/ThumbnailMessageItemBody.js.map +1 -0
  567. package/dist/ui/Tooltip.js +28 -0
  568. package/dist/ui/Tooltip.js.map +1 -0
  569. package/dist/ui/TooltipWrapper.js +58 -0
  570. package/dist/ui/TooltipWrapper.js.map +1 -0
  571. package/dist/ui/UnknownMessageItemBody.js +35 -0
  572. package/dist/ui/UnknownMessageItemBody.js.map +1 -0
  573. package/dist/ui/UserListItem.js +151 -0
  574. package/dist/ui/UserListItem.js.map +1 -0
  575. package/dist/ui/UserProfile.js +81 -0
  576. package/dist/ui/UserProfile.js.map +1 -0
  577. package/dist/useSendbirdStateContext.js +20 -0
  578. package/dist/useSendbirdStateContext.js.map +1 -0
  579. package/dist/utils-08c4dbdc.js +34 -0
  580. package/dist/utils-08c4dbdc.js.map +1 -0
  581. package/dist/utils-af1b9829.js +30 -0
  582. package/dist/utils-af1b9829.js.map +1 -0
  583. package/dist/utils-c393e880.js +4 -0
  584. package/dist/utils-c393e880.js.map +1 -0
  585. package/dist/uuid-b0c93400.js +17 -0
  586. package/dist/uuid-b0c93400.js.map +1 -0
  587. package/dist/withSendBird.js +26 -0
  588. package/dist/withSendBird.js.map +1 -0
  589. package/package.json +129 -0
@@ -0,0 +1,138 @@
1
+ import React__default, { useContext } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from '../index-7a51bd16.js';
4
+ import { a as LocalizationContext } from '../LocalizationContext-e4391013.js';
5
+ import Icon, { IconTypes, IconColors } from './Icon.js';
6
+ import IconButton from './IconButton.js';
7
+ import ChannelAvatar from './ChannelAvatar.js';
8
+ import '../_rollupPluginBabelHelpers-20904f21.js';
9
+ import '../stringSet-4f6eaa60.js';
10
+ import '../index-6ebf7894.js';
11
+ import './Avatar.js';
12
+ import '../tslib.es6-e3c44017.js';
13
+ import './ImageRenderer.js';
14
+ import '../uuid-b0c93400.js';
15
+ import '../utils-08c4dbdc.js';
16
+
17
+ var getChannelTitle = function getChannelTitle() {
18
+ var channel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
19
+ var currentUserId = arguments.length > 1 ? arguments[1] : undefined;
20
+ var stringSet = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : LabelStringSet;
21
+
22
+ if (!channel || !channel.name && !channel.members) {
23
+ return stringSet.NO_TITLE;
24
+ }
25
+
26
+ if (channel.name && channel.name !== 'Group Channel') {
27
+ return channel.name;
28
+ }
29
+
30
+ if (channel.members.length === 1) {
31
+ return stringSet.NO_MEMBERS;
32
+ }
33
+
34
+ return channel.members.filter(function (_ref) {
35
+ var userId = _ref.userId;
36
+ return userId !== currentUserId;
37
+ }).map(function (_ref2) {
38
+ var nickname = _ref2.nickname;
39
+ return nickname || stringSet.NO_NAME;
40
+ }).join(', ');
41
+ };
42
+
43
+ // delete
44
+
45
+ var noop = function noop() {};
46
+
47
+ function ChatHeader(props) {
48
+ var currentGroupChannel = props.currentGroupChannel,
49
+ currentUser = props.currentUser,
50
+ title = props.title,
51
+ subTitle = props.subTitle,
52
+ isMuted = props.isMuted,
53
+ theme = props.theme,
54
+ showSearchIcon = props.showSearchIcon,
55
+ onSearchClick = props.onSearchClick,
56
+ onActionClick = props.onActionClick;
57
+ var userId = currentUser.userId;
58
+
59
+ var _useContext = useContext(LocalizationContext),
60
+ stringSet = _useContext.stringSet;
61
+
62
+ return /*#__PURE__*/React__default.createElement("div", {
63
+ className: "sendbird-chat-header"
64
+ }, /*#__PURE__*/React__default.createElement("div", {
65
+ className: "sendbird-chat-header__left"
66
+ }, /*#__PURE__*/React__default.createElement(ChannelAvatar, {
67
+ theme: theme,
68
+ channel: currentGroupChannel,
69
+ userId: userId,
70
+ height: 32,
71
+ width: 32
72
+ }), /*#__PURE__*/React__default.createElement(Label, {
73
+ className: "sendbird-chat-header__left__title",
74
+ type: LabelTypography.H_2,
75
+ color: LabelColors.ONBACKGROUND_1
76
+ }, title || getChannelTitle(currentGroupChannel, userId, stringSet)), /*#__PURE__*/React__default.createElement(Label, {
77
+ className: "sendbird-chat-header__left__subtitle",
78
+ type: LabelTypography.BODY_1,
79
+ color: LabelColors.ONBACKGROUND_2
80
+ }, subTitle)), /*#__PURE__*/React__default.createElement("div", {
81
+ className: "sendbird-chat-header__right"
82
+ }, (typeof isMuted === 'string' && isMuted === 'true' || typeof isMuted === 'boolean' && isMuted) && /*#__PURE__*/React__default.createElement(Icon, {
83
+ className: "sendbird-chat-header__right__mute",
84
+ type: IconTypes.NOTIFICATIONS_OFF_FILLED,
85
+ width: "24px",
86
+ height: "24px"
87
+ }), showSearchIcon && /*#__PURE__*/React__default.createElement(IconButton, {
88
+ className: "sendbird-chat-header__right__search",
89
+ width: "32px",
90
+ height: "32px",
91
+ onClick: onSearchClick
92
+ }, /*#__PURE__*/React__default.createElement(Icon, {
93
+ type: IconTypes.SEARCH,
94
+ fillColor: IconColors.PRIMARY,
95
+ width: "24px",
96
+ height: "24px"
97
+ })), /*#__PURE__*/React__default.createElement(IconButton, {
98
+ className: "sendbird-chat-header__right__info",
99
+ width: "32px",
100
+ height: "32px",
101
+ onClick: onActionClick
102
+ }, /*#__PURE__*/React__default.createElement(Icon, {
103
+ type: IconTypes.INFO,
104
+ fillColor: IconColors.PRIMARY,
105
+ width: "24px",
106
+ height: "24px"
107
+ }))));
108
+ }
109
+ ChatHeader.propTypes = {
110
+ currentGroupChannel: PropTypes.shape({
111
+ members: PropTypes.arrayOf(PropTypes.shape({})),
112
+ coverUrl: PropTypes.string
113
+ }),
114
+ currentUser: PropTypes.shape({
115
+ userId: PropTypes.string
116
+ }),
117
+ title: PropTypes.string,
118
+ subTitle: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
119
+ isMuted: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),
120
+ theme: PropTypes.string,
121
+ showSearchIcon: PropTypes.bool,
122
+ onSearchClick: PropTypes.func,
123
+ onActionClick: PropTypes.func
124
+ };
125
+ ChatHeader.defaultProps = {
126
+ currentGroupChannel: {},
127
+ currentUser: {},
128
+ title: '',
129
+ subTitle: '',
130
+ isMuted: false,
131
+ theme: 'light',
132
+ showSearchIcon: false,
133
+ onSearchClick: noop,
134
+ onActionClick: noop
135
+ };
136
+
137
+ export { ChatHeader as default };
138
+ //# sourceMappingURL=ChatHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatHeader.js","sources":["../../src/ui/ChatHeader/utils.js","../../src/ui/ChatHeader/index.jsx"],"sourcesContent":["import formatDistanceToNowStrict from 'date-fns/formatDistanceToNowStrict';\nimport { LabelStringSet } from '../Label';\n\nexport const prettyDate = (date) => formatDistanceToNowStrict(date, { addSuffix: true });\n\nexport const getChannelTitle = (channel = {}, currentUserId, stringSet = LabelStringSet) => {\n if (!channel || (!channel.name && !channel.members)) {\n return stringSet.NO_TITLE;\n }\n if (channel.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n\n if (channel.members.length === 1) {\n return stringSet.NO_MEMBERS;\n }\n\n return channel.members\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || stringSet.NO_NAME))\n .join(', ');\n};\n","// delete\nimport React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\n\nimport './index.scss';\nimport * as utils from './utils';\n\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport IconButton from '../IconButton';\nimport ChannelAvatar from '../ChannelAvatar/index';\n\nconst noop = () => { };\nexport default function ChatHeader(props) {\n const {\n currentGroupChannel,\n currentUser,\n title,\n subTitle,\n isMuted,\n theme,\n showSearchIcon,\n onSearchClick,\n onActionClick,\n } = props;\n const { userId } = currentUser;\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-chat-header\">\n <div className=\"sendbird-chat-header__left\">\n <ChannelAvatar\n theme={theme}\n channel={currentGroupChannel}\n userId={userId}\n height={32}\n width={32}\n />\n <Label\n className=\"sendbird-chat-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {title || utils.getChannelTitle(currentGroupChannel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-chat-header__left__subtitle\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle}\n </Label>\n </div>\n <div className=\"sendbird-chat-header__right\">\n {\n ((typeof isMuted === 'string' && isMuted === 'true') || (typeof isMuted === 'boolean' && isMuted))\n && (\n <Icon\n className=\"sendbird-chat-header__right__mute\"\n type={IconTypes.NOTIFICATIONS_OFF_FILLED}\n width=\"24px\"\n height=\"24px\"\n />\n )\n }\n {\n showSearchIcon && (\n <IconButton\n className=\"sendbird-chat-header__right__search\"\n width=\"32px\"\n height=\"32px\"\n onClick={onSearchClick}\n >\n <Icon\n type={IconTypes.SEARCH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n }\n <IconButton\n className=\"sendbird-chat-header__right__info\"\n width=\"32px\"\n height=\"32px\"\n onClick={onActionClick}\n >\n <Icon\n type={IconTypes.INFO}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n\nChatHeader.propTypes = {\n currentGroupChannel: PropTypes.shape({\n members: PropTypes.arrayOf(PropTypes.shape({})),\n coverUrl: PropTypes.string,\n }),\n currentUser: PropTypes.shape({\n userId: PropTypes.string,\n }),\n title: PropTypes.string,\n subTitle: PropTypes.oneOfType([\n PropTypes.bool,\n PropTypes.string,\n ]),\n isMuted: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n theme: PropTypes.string,\n showSearchIcon: PropTypes.bool,\n onSearchClick: PropTypes.func,\n onActionClick: PropTypes.func,\n};\n\nChatHeader.defaultProps = {\n currentGroupChannel: {},\n currentUser: {},\n title: '',\n subTitle: '',\n isMuted: false,\n theme: 'light',\n showSearchIcon: false,\n onSearchClick: noop,\n onActionClick: noop,\n};\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","noop","ChatHeader","props","currentGroupChannel","currentUser","title","subTitle","isMuted","theme","showSearchIcon","onSearchClick","onActionClick","useContext","LocalizationContext","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","utils","BODY_1","ONBACKGROUND_2","IconTypes","NOTIFICATIONS_OFF_FILLED","SEARCH","IconColors","PRIMARY","INFO","propTypes","PropTypes","shape","arrayOf","coverUrl","string","oneOfType","bool","func","defaultProps"],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { a as _slicedToArray } from '../_rollupPluginBabelHelpers-20904f21.js';
2
+ import React__default, { useState } from 'react';
3
+ import PropTypes from 'prop-types';
4
+
5
+ function Checkbox(_ref) {
6
+ var id = _ref.id,
7
+ checked = _ref.checked,
8
+ onChange = _ref.onChange;
9
+
10
+ var _useState = useState(checked),
11
+ _useState2 = _slicedToArray(_useState, 2),
12
+ isChecked = _useState2[0],
13
+ setCheck = _useState2[1];
14
+
15
+ return /*#__PURE__*/React__default.createElement("label", {
16
+ className: "sendbird-checkbox",
17
+ htmlFor: id
18
+ }, /*#__PURE__*/React__default.createElement("input", {
19
+ id: id,
20
+ type: "checkbox",
21
+ checked: isChecked,
22
+ onClick: function onClick() {
23
+ return setCheck(!isChecked);
24
+ },
25
+ onChange: onChange
26
+ }), /*#__PURE__*/React__default.createElement("span", {
27
+ className: "sendbird-checkbox--checkmark"
28
+ }));
29
+ }
30
+ Checkbox.propTypes = {
31
+ id: PropTypes.string,
32
+ checked: PropTypes.bool,
33
+ onChange: PropTypes.func
34
+ };
35
+ Checkbox.defaultProps = {
36
+ id: 'sendbird-checkbox-input',
37
+ checked: false,
38
+ onChange: function onChange() {}
39
+ };
40
+
41
+ export { Checkbox as default };
42
+ //# sourceMappingURL=Checkbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.js","sources":["../../src/ui/Checkbox/index.jsx"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport './index.scss';\n\nexport default function Checkbox({\n id,\n checked,\n onChange,\n}) {\n const [isChecked, setCheck] = useState(checked);\n return (\n <label className=\"sendbird-checkbox\" htmlFor={id}>\n <input\n id={id}\n type=\"checkbox\"\n checked={isChecked}\n onClick={() => setCheck(!isChecked)}\n onChange={onChange}\n />\n <span className=\"sendbird-checkbox--checkmark\" />\n </label>\n );\n}\n\nCheckbox.propTypes = {\n id: PropTypes.string,\n checked: PropTypes.bool,\n onChange: PropTypes.func,\n};\n\nCheckbox.defaultProps = {\n id: 'sendbird-checkbox-input',\n checked: false,\n onChange: () => { },\n};\n"],"names":["Checkbox","id","checked","onChange","useState","isChecked","setCheck","React","propTypes","PropTypes","string","bool","func","defaultProps"],"mappings":";;;;AAKe,SAASA,QAAT,OAIZ;AAAA,MAHDC,EAGC,QAHDA,EAGC;AAAA,MAFDC,OAEC,QAFDA,OAEC;AAAA,MADDC,QACC,QADDA,QACC;;AACD,kBAA8BC,QAAQ,CAACF,OAAD,CAAtC;AAAA;AAAA,MAAOG,SAAP;AAAA,MAAkBC,QAAlB;;AACA,sBACEC;AAAO,IAAA,SAAS,EAAC,mBAAjB;AAAqC,IAAA,OAAO,EAAEN;AAA9C,kBACEM;AACE,IAAA,EAAE,EAAEN,EADN;AAEE,IAAA,IAAI,EAAC,UAFP;AAGE,IAAA,OAAO,EAAEI,SAHX;AAIE,IAAA,OAAO,EAAE;AAAA,aAAMC,QAAQ,CAAC,CAACD,SAAF,CAAd;AAAA,KAJX;AAKE,IAAA,QAAQ,EAAEF;AALZ,IADF,eAQEI;AAAM,IAAA,SAAS,EAAC;AAAhB,IARF,CADF;AAYD;AAEDP,QAAQ,CAACQ,SAAT,GAAqB;AACnBP,EAAAA,EAAE,EAAEQ,SAAS,CAACC,MADK;AAEnBR,EAAAA,OAAO,EAAEO,SAAS,CAACE,IAFA;AAGnBR,EAAAA,QAAQ,EAAEM,SAAS,CAACG;AAHD,CAArB;AAMAZ,QAAQ,CAACa,YAAT,GAAwB;AACtBZ,EAAAA,EAAE,EAAE,yBADkB;AAEtBC,EAAAA,OAAO,EAAE,KAFa;AAGtBC,EAAAA,QAAQ,EAAE,oBAAM;AAHM,CAAxB;;;;"}
@@ -0,0 +1,28 @@
1
+ import React__default, { useContext } from 'react';
2
+ import Icon, { IconTypes, IconColors } from './Icon.js';
3
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-7a51bd16.js';
4
+ import { a as LocalizationContext } from '../LocalizationContext-e4391013.js';
5
+ import '../_rollupPluginBabelHelpers-20904f21.js';
6
+ import 'prop-types';
7
+ import '../stringSet-4f6eaa60.js';
8
+ import '../index-6ebf7894.js';
9
+
10
+ function ConnectionStatus() {
11
+ var _useContext = useContext(LocalizationContext),
12
+ stringSet = _useContext.stringSet;
13
+
14
+ return /*#__PURE__*/React__default.createElement("div", {
15
+ className: "sendbird-connection-status"
16
+ }, /*#__PURE__*/React__default.createElement(Label, {
17
+ type: LabelTypography.BODY_2,
18
+ color: LabelColors.ONBACKGROUND_2
19
+ }, stringSet.TRYING_TO_CONNECT), /*#__PURE__*/React__default.createElement(Icon, {
20
+ type: IconTypes.DISCONNECTED,
21
+ fillColor: IconColors.SENT,
22
+ width: "14px",
23
+ height: "14px"
24
+ }));
25
+ }
26
+
27
+ export { ConnectionStatus as default };
28
+ //# sourceMappingURL=ConnectionStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConnectionStatus.js","sources":["../../src/ui/ConnectionStatus/index.jsx"],"sourcesContent":["import React, { useContext } from 'react';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\n\nimport './index.scss';\n\nfunction ConnectionStatus() {\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-connection-status\">\n <Label\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.TRYING_TO_CONNECT}\n </Label>\n <Icon\n type={IconTypes.DISCONNECTED}\n fillColor={IconColors.SENT}\n width=\"14px\"\n height=\"14px\"\n />\n </div>\n );\n}\n\nexport default ConnectionStatus;\n"],"names":["ConnectionStatus","useContext","LocalizationContext","stringSet","React","LabelTypography","BODY_2","LabelColors","ONBACKGROUND_2","TRYING_TO_CONNECT","IconTypes","DISCONNECTED","IconColors","SENT"],"mappings":";;;;;;;;;AAQA,SAASA,gBAAT,GAA4B;AAC1B,oBAAsBC,UAAU,CAACC,mBAAD,CAAhC;AAAA,MAAQC,SAAR,eAAQA,SAAR;;AACA,sBACEC;AAAK,IAAA,SAAS,EAAC;AAAf,kBACEA,6BAAC,KAAD;AACE,IAAA,IAAI,EAAEC,eAAe,CAACC,MADxB;AAEE,IAAA,KAAK,EAAEC,WAAW,CAACC;AAFrB,KAIGL,SAAS,CAACM,iBAJb,CADF,eAOEL,6BAAC,IAAD;AACE,IAAA,IAAI,EAAEM,SAAS,CAACC,YADlB;AAEE,IAAA,SAAS,EAAEC,UAAU,CAACC,IAFxB;AAGE,IAAA,KAAK,EAAC,MAHR;AAIE,IAAA,MAAM,EAAC;AAJT,IAPF,CADF;AAgBD;;;;"}
@@ -0,0 +1,417 @@
1
+ import { c as _inherits, d as _createSuper, e as _createClass, f as _classCallCheck, g as _defineProperty, h as _assertThisInitialized, _ as _objectSpread2, a as _slicedToArray } from '../_rollupPluginBabelHelpers-20904f21.js';
2
+ import React__default, { Component, useState } from 'react';
3
+ import PropTypes from 'prop-types';
4
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-7a51bd16.js';
5
+ import { d as getClassName } from '../index-8c72a94a.js';
6
+ import { createPortal } from 'react-dom';
7
+ import SortByRow from './SortByRow.js';
8
+ import '../stringSet-4f6eaa60.js';
9
+ import '../tslib.es6-e3c44017.js';
10
+
11
+ var MenuItems$1 = /*#__PURE__*/function (_Component) {
12
+ _inherits(MenuItems, _Component);
13
+
14
+ var _super = _createSuper(MenuItems);
15
+
16
+ function MenuItems(props) {
17
+ var _this;
18
+
19
+ _classCallCheck(this, MenuItems);
20
+
21
+ _this = _super.call(this, props);
22
+
23
+ _defineProperty(_assertThisInitialized(_this), "showParent", function () {
24
+ var _this$props$parentCon = _this.props.parentContainRef,
25
+ parentContainRef = _this$props$parentCon === void 0 ? {} : _this$props$parentCon;
26
+ var current = parentContainRef.current;
27
+
28
+ if (parentContainRef && current) {
29
+ current.classList.add('sendbird-icon--pressed');
30
+ }
31
+ });
32
+
33
+ _defineProperty(_assertThisInitialized(_this), "hideParent", function () {
34
+ var _this$props$parentCon2 = _this.props.parentContainRef,
35
+ parentContainRef = _this$props$parentCon2 === void 0 ? {} : _this$props$parentCon2;
36
+ var current = parentContainRef.current;
37
+
38
+ if (parentContainRef && current) {
39
+ current.classList.remove('sendbird-icon--pressed');
40
+ }
41
+ });
42
+
43
+ _defineProperty(_assertThisInitialized(_this), "setupEvents", function () {
44
+ var closeDropdown = _this.props.closeDropdown;
45
+
46
+ var _assertThisInitialize = _assertThisInitialized(_this),
47
+ menuRef = _assertThisInitialize.menuRef;
48
+
49
+ var handleClickOutside = function handleClickOutside(event) {
50
+ if (menuRef.current && !menuRef.current.contains(event.target)) {
51
+ closeDropdown();
52
+ }
53
+ };
54
+
55
+ _this.setState({
56
+ handleClickOutside: handleClickOutside
57
+ });
58
+
59
+ document.addEventListener('mousedown', handleClickOutside);
60
+ });
61
+
62
+ _defineProperty(_assertThisInitialized(_this), "cleanUpEvents", function () {
63
+ var handleClickOutside = _this.state.handleClickOutside;
64
+ document.removeEventListener('mousedown', handleClickOutside);
65
+ });
66
+
67
+ _defineProperty(_assertThisInitialized(_this), "getMenuPosition", function () {
68
+ var _this$props = _this.props,
69
+ parentRef = _this$props.parentRef,
70
+ openLeft = _this$props.openLeft;
71
+ var parentRect = parentRef.current.getBoundingClientRect();
72
+ var x = parentRect.x || parentRect.left;
73
+ var y = parentRect.y || parentRect.top;
74
+ var menuStyle = {
75
+ top: y,
76
+ left: x
77
+ };
78
+ if (!_this.menuRef.current) return menuStyle;
79
+ var _window = window,
80
+ innerWidth = _window.innerWidth,
81
+ innerHeight = _window.innerHeight;
82
+
83
+ var rect = _this.menuRef.current.getBoundingClientRect();
84
+
85
+ if (y + rect.height > innerHeight) {
86
+ menuStyle.top -= rect.height;
87
+ }
88
+
89
+ if (x + rect.width > innerWidth && !openLeft) {
90
+ menuStyle.left -= rect.width;
91
+ }
92
+
93
+ if (menuStyle.top < 0) {
94
+ menuStyle.top = rect.height < innerHeight ? (innerHeight - rect.height) / 2 : 0;
95
+ }
96
+
97
+ if (menuStyle.left < 0) {
98
+ menuStyle.left = rect.width < innerWidth ? (innerWidth - rect.width) / 2 : 0;
99
+ }
100
+
101
+ menuStyle.top += 32;
102
+
103
+ if (openLeft) {
104
+ var padding = Number.isNaN(rect.width - 30) ? 108 // default
105
+ : rect.width - 30;
106
+ menuStyle.left -= padding;
107
+ }
108
+
109
+ return _this.setState({
110
+ menuStyle: menuStyle
111
+ });
112
+ });
113
+
114
+ _this.menuRef = /*#__PURE__*/React__default.createRef();
115
+ _this.state = {
116
+ menuStyle: {},
117
+ handleClickOutside: function handleClickOutside() {}
118
+ };
119
+ return _this;
120
+ }
121
+
122
+ _createClass(MenuItems, [{
123
+ key: "componentDidMount",
124
+ value: function componentDidMount() {
125
+ this.setupEvents();
126
+ this.getMenuPosition();
127
+ this.showParent();
128
+ }
129
+ }, {
130
+ key: "componentWillUnmount",
131
+ value: function componentWillUnmount() {
132
+ this.cleanUpEvents();
133
+ this.hideParent();
134
+ }
135
+ }, {
136
+ key: "render",
137
+ value: function render() {
138
+ var menuStyle = this.state.menuStyle;
139
+ var _this$props2 = this.props,
140
+ children = _this$props2.children,
141
+ style = _this$props2.style;
142
+ return /*#__PURE__*/createPortal( /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
143
+ className: "sendbird-dropdown__menu-backdrop"
144
+ }), /*#__PURE__*/React__default.createElement("ul", {
145
+ className: "sendbird-dropdown__menu",
146
+ ref: this.menuRef,
147
+ style: _objectSpread2({
148
+ display: 'inline-block',
149
+ position: 'fixed',
150
+ left: "".concat(Math.round(menuStyle.left), "px"),
151
+ top: "".concat(Math.round(menuStyle.top), "px")
152
+ }, style)
153
+ }, children)), document.getElementById('sendbird-dropdown-portal'));
154
+ }
155
+ }]);
156
+
157
+ return MenuItems;
158
+ }(Component);
159
+ MenuItems$1.propTypes = {
160
+ closeDropdown: PropTypes.func.isRequired,
161
+ children: PropTypes.oneOfType([PropTypes.element, PropTypes.arrayOf(PropTypes.element)]).isRequired,
162
+ style: PropTypes.shape({}),
163
+ // https://stackoverflow.com/a/51127130
164
+ parentRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
165
+ current: PropTypes.instanceOf(Element)
166
+ })]).isRequired,
167
+ parentContainRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
168
+ current: PropTypes.instanceOf(Element)
169
+ })]).isRequired,
170
+ openLeft: PropTypes.bool
171
+ };
172
+ MenuItems$1.defaultProps = {
173
+ style: {},
174
+ openLeft: false
175
+ };
176
+
177
+ var EmojiListItems$1 = /*#__PURE__*/function (_Component) {
178
+ _inherits(EmojiListItems, _Component);
179
+
180
+ var _super = _createSuper(EmojiListItems);
181
+
182
+ function EmojiListItems(props) {
183
+ var _this;
184
+
185
+ _classCallCheck(this, EmojiListItems);
186
+
187
+ _this = _super.call(this, props);
188
+
189
+ _defineProperty(_assertThisInitialized(_this), "showParent", function () {
190
+ var _this$props$parentCon = _this.props.parentContainRef,
191
+ parentContainRef = _this$props$parentCon === void 0 ? {} : _this$props$parentCon;
192
+ var current = parentContainRef.current;
193
+
194
+ if (parentContainRef && current) {
195
+ current.classList.add('sendbird-reactions--pressed');
196
+ }
197
+ });
198
+
199
+ _defineProperty(_assertThisInitialized(_this), "hideParent", function () {
200
+ var _this$props$parentCon2 = _this.props.parentContainRef,
201
+ parentContainRef = _this$props$parentCon2 === void 0 ? {} : _this$props$parentCon2;
202
+ var current = parentContainRef.current;
203
+
204
+ if (parentContainRef && current) {
205
+ current.classList.remove('sendbird-reactions--pressed');
206
+ }
207
+ });
208
+
209
+ _defineProperty(_assertThisInitialized(_this), "setupEvents", function () {
210
+ var closeDropdown = _this.props.closeDropdown;
211
+
212
+ var _assertThisInitialize = _assertThisInitialized(_this),
213
+ reactionRef = _assertThisInitialize.reactionRef;
214
+
215
+ var handleClickOutside = function handleClickOutside(event) {
216
+ if (reactionRef.current && !reactionRef.current.contains(event.target)) {
217
+ closeDropdown();
218
+ }
219
+ };
220
+
221
+ _this.setState({
222
+ handleClickOutside: handleClickOutside
223
+ });
224
+
225
+ document.addEventListener('mousedown', handleClickOutside);
226
+ });
227
+
228
+ _defineProperty(_assertThisInitialized(_this), "cleanUpEvents", function () {
229
+ var handleClickOutside = _this.state.handleClickOutside;
230
+ document.removeEventListener('mousedown', handleClickOutside);
231
+ });
232
+
233
+ _defineProperty(_assertThisInitialized(_this), "getBarPosition", function () {
234
+ // calculate the location that the context menu should be
235
+ var _this$props = _this.props,
236
+ parentRef = _this$props.parentRef,
237
+ spaceFromTrigger = _this$props.spaceFromTrigger;
238
+ var spaceFromTriggerX = spaceFromTrigger.x || 0;
239
+ var spaceFromTriggerY = spaceFromTrigger.y || 0;
240
+ var parentRect = parentRef.current.getBoundingClientRect();
241
+ var x = parentRect.x || parentRect.left;
242
+ var y = parentRect.y || parentRect.top;
243
+ var reactionStyle = {
244
+ top: y,
245
+ left: x
246
+ };
247
+ if (!_this.reactionRef.current) return reactionStyle;
248
+
249
+ var rect = _this.reactionRef.current.getBoundingClientRect();
250
+
251
+ if (reactionStyle.top < rect.height) {
252
+ reactionStyle.top += parentRect.height;
253
+ reactionStyle.top += spaceFromTriggerY;
254
+ } else {
255
+ reactionStyle.top -= rect.height;
256
+ reactionStyle.top -= spaceFromTriggerY;
257
+ }
258
+
259
+ reactionStyle.left -= rect.width / 2;
260
+ reactionStyle.left += parentRect.height / 2 - 2;
261
+ reactionStyle.left += spaceFromTriggerX;
262
+ var maximumLeft = window.innerWidth - rect.width;
263
+
264
+ if (maximumLeft < reactionStyle.left) {
265
+ reactionStyle.left = maximumLeft;
266
+ }
267
+
268
+ if (reactionStyle.left < 0) {
269
+ reactionStyle.left = 0;
270
+ }
271
+
272
+ return _this.setState({
273
+ reactionStyle: reactionStyle
274
+ });
275
+ });
276
+
277
+ _this.reactionRef = /*#__PURE__*/React__default.createRef();
278
+ _this.state = {
279
+ reactionStyle: {},
280
+ handleClickOutside: function handleClickOutside() {}
281
+ };
282
+ return _this;
283
+ }
284
+
285
+ _createClass(EmojiListItems, [{
286
+ key: "componentDidMount",
287
+ value: function componentDidMount() {
288
+ this.setupEvents();
289
+ this.getBarPosition();
290
+ this.showParent();
291
+ }
292
+ }, {
293
+ key: "componentWillUnmount",
294
+ value: function componentWillUnmount() {
295
+ this.cleanUpEvents();
296
+ this.hideParent();
297
+ }
298
+ }, {
299
+ key: "render",
300
+ value: function render() {
301
+ var reactionStyle = this.state.reactionStyle;
302
+ var children = this.props.children;
303
+ return /*#__PURE__*/createPortal( /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
304
+ className: "sendbird-dropdown__menu-backdrop"
305
+ }), /*#__PURE__*/React__default.createElement("ul", {
306
+ className: "sendbird-dropdown__reaction-bar",
307
+ ref: this.reactionRef,
308
+ style: {
309
+ display: 'inline-block',
310
+ position: 'fixed',
311
+ left: "".concat(Math.round(reactionStyle.left), "px"),
312
+ top: "".concat(Math.round(reactionStyle.top), "px")
313
+ }
314
+ }, /*#__PURE__*/React__default.createElement(SortByRow, {
315
+ className: "sendbird-dropdown__reaction-bar__row",
316
+ maxItemCount: 8,
317
+ itemWidth: 44,
318
+ itemHeight: 40
319
+ }, children))), document.getElementById('sendbird-emoji-list-portal'));
320
+ }
321
+ }]);
322
+
323
+ return EmojiListItems;
324
+ }(Component);
325
+ EmojiListItems$1.propTypes = {
326
+ closeDropdown: PropTypes.func.isRequired,
327
+ children: PropTypes.oneOfType([PropTypes.element, PropTypes.arrayOf(PropTypes.element)]).isRequired,
328
+ parentRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
329
+ current: PropTypes.instanceOf(Element)
330
+ })]).isRequired,
331
+ parentContainRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
332
+ current: PropTypes.instanceOf(Element)
333
+ })]).isRequired,
334
+ spaceFromTrigger: PropTypes.shape({
335
+ x: PropTypes.number,
336
+ y: PropTypes.number
337
+ })
338
+ };
339
+ EmojiListItems$1.defaultProps = {
340
+ spaceFromTrigger: {}
341
+ };
342
+
343
+ var ENTER = 13;
344
+ var MenuItems = MenuItems$1;
345
+ var EmojiListItems = EmojiListItems$1;
346
+ var MenuItem = function MenuItem(_ref) {
347
+ var className = _ref.className,
348
+ children = _ref.children,
349
+ onClick = _ref.onClick,
350
+ disable = _ref.disable;
351
+
352
+ var handleClickEvent = function handleClickEvent(e) {
353
+ if (!disable) onClick(e);
354
+ };
355
+
356
+ return /*#__PURE__*/React__default.createElement("li", {
357
+ className: getClassName([className, 'sendbird-dropdown__menu-item', disable ? 'disable' : '']),
358
+ role: "menuitem",
359
+ onClick: handleClickEvent,
360
+ onKeyPress: function onKeyPress(e) {
361
+ if (e.keyCode === ENTER) handleClickEvent(e);
362
+ },
363
+ tabIndex: 0
364
+ }, /*#__PURE__*/React__default.createElement(Label, {
365
+ className: "sendbird-dropdown__menu-item__text",
366
+ type: LabelTypography.SUBTITLE_2,
367
+ color: disable ? LabelColors.ONBACKGROUND_4 : LabelColors.ONBACKGROUND_1
368
+ }, children));
369
+ };
370
+ MenuItem.propTypes = {
371
+ className: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),
372
+ children: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).isRequired,
373
+ onClick: PropTypes.func.isRequired,
374
+ disable: PropTypes.bool
375
+ };
376
+ MenuItem.defaultProps = {
377
+ className: '',
378
+ disable: false
379
+ }; // Root components should be appended before ContextMenu is rendered
380
+
381
+ var MenuRoot = function MenuRoot() {
382
+ return /*#__PURE__*/React__default.createElement("div", {
383
+ id: "sendbird-dropdown-portal"
384
+ });
385
+ };
386
+ var EmojiReactionListRoot = function EmojiReactionListRoot() {
387
+ return /*#__PURE__*/React__default.createElement("div", {
388
+ id: "sendbird-emoji-list-portal"
389
+ });
390
+ };
391
+ function ContextMenu(_ref2) {
392
+ var menuTrigger = _ref2.menuTrigger,
393
+ menuItems = _ref2.menuItems;
394
+
395
+ var _useState = useState(false),
396
+ _useState2 = _slicedToArray(_useState, 2),
397
+ showMenu = _useState2[0],
398
+ setShowMenu = _useState2[1];
399
+
400
+ return /*#__PURE__*/React__default.createElement("div", {
401
+ className: "sendbird-context-menu",
402
+ style: {
403
+ display: 'inline'
404
+ }
405
+ }, menuTrigger(function () {
406
+ return setShowMenu(!showMenu);
407
+ }), showMenu && menuItems(function () {
408
+ return setShowMenu(false);
409
+ }));
410
+ }
411
+ ContextMenu.propTypes = {
412
+ menuTrigger: PropTypes.func.isRequired,
413
+ menuItems: PropTypes.func.isRequired
414
+ };
415
+
416
+ export { EmojiListItems, EmojiReactionListRoot, MenuItem, MenuItems, MenuRoot, ContextMenu as default };
417
+ //# sourceMappingURL=ContextMenu.js.map