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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (585) hide show
  1. package/App.js +294 -0
  2. package/App.js.map +1 -0
  3. package/Channel/components/ChannelHeader.js +116 -0
  4. package/Channel/components/ChannelHeader.js.map +1 -0
  5. package/Channel/components/ChannelUI.js +172 -0
  6. package/Channel/components/ChannelUI.js.map +1 -0
  7. package/Channel/components/FileViewer.js +150 -0
  8. package/Channel/components/FileViewer.js.map +1 -0
  9. package/Channel/components/FrozenNotification.js +20 -0
  10. package/Channel/components/FrozenNotification.js.map +1 -0
  11. package/Channel/components/Message.js +232 -0
  12. package/Channel/components/Message.js.map +1 -0
  13. package/Channel/components/MessageInput.js +87 -0
  14. package/Channel/components/MessageInput.js.map +1 -0
  15. package/Channel/components/MessageList.js +227 -0
  16. package/Channel/components/MessageList.js.map +1 -0
  17. package/Channel/components/RemoveMessageModal.js +52 -0
  18. package/Channel/components/RemoveMessageModal.js.map +1 -0
  19. package/Channel/components/TypingIndicator.js +97 -0
  20. package/Channel/components/TypingIndicator.js.map +1 -0
  21. package/Channel/components/UnreadCount.js +41 -0
  22. package/Channel/components/UnreadCount.js.map +1 -0
  23. package/Channel/context.js +23 -0
  24. package/Channel/context.js.map +1 -0
  25. package/Channel.js +99 -0
  26. package/Channel.js.map +1 -0
  27. package/ChannelList/components/AddChannel.js +70 -0
  28. package/ChannelList/components/AddChannel.js.map +1 -0
  29. package/ChannelList/components/ChannelListHeader.js +62 -0
  30. package/ChannelList/components/ChannelListHeader.js.map +1 -0
  31. package/ChannelList/components/ChannelListUI.js +213 -0
  32. package/ChannelList/components/ChannelListUI.js.map +1 -0
  33. package/ChannelList/components/ChannelPreview.js +177 -0
  34. package/ChannelList/components/ChannelPreview.js.map +1 -0
  35. package/ChannelList/components/ChannelPreviewAction.js +131 -0
  36. package/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  37. package/ChannelList/context.js +13 -0
  38. package/ChannelList/context.js.map +1 -0
  39. package/ChannelList.js +80 -0
  40. package/ChannelList.js.map +1 -0
  41. package/ChannelListProvider-0b0c2c40.js +861 -0
  42. package/ChannelListProvider-0b0c2c40.js.map +1 -0
  43. package/ChannelProvider-459e463f.js +2083 -0
  44. package/ChannelProvider-459e463f.js.map +1 -0
  45. package/ChannelSettings/components/AdminPanel.js +905 -0
  46. package/ChannelSettings/components/AdminPanel.js.map +1 -0
  47. package/ChannelSettings/components/ChannelProfile.js +102 -0
  48. package/ChannelSettings/components/ChannelProfile.js.map +1 -0
  49. package/ChannelSettings/components/ChannelSettingsUI.js +152 -0
  50. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  51. package/ChannelSettings/components/EditDetailsModal.js +154 -0
  52. package/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  53. package/ChannelSettings/components/LeaveChannel.js +53 -0
  54. package/ChannelSettings/components/LeaveChannel.js.map +1 -0
  55. package/ChannelSettings/components/UserListItem.js +105 -0
  56. package/ChannelSettings/components/UserListItem.js.map +1 -0
  57. package/ChannelSettings/components/UserPanel.js +79 -0
  58. package/ChannelSettings/components/UserPanel.js.map +1 -0
  59. package/ChannelSettings/context.js +93 -0
  60. package/ChannelSettings/context.js.map +1 -0
  61. package/ChannelSettings.js +71 -0
  62. package/ChannelSettings.js.map +1 -0
  63. package/CreateChannel/components/CreateChannelUI.js +53 -0
  64. package/CreateChannel/components/CreateChannelUI.js.map +1 -0
  65. package/CreateChannel/components/InviteMembers.js +184 -0
  66. package/CreateChannel/components/InviteMembers.js.map +1 -0
  67. package/CreateChannel/components/SelectChannelType.js +131 -0
  68. package/CreateChannel/components/SelectChannelType.js.map +1 -0
  69. package/CreateChannel/context.js +8 -0
  70. package/CreateChannel/context.js.map +1 -0
  71. package/CreateChannel.js +53 -0
  72. package/CreateChannel.js.map +1 -0
  73. package/CreateChannelProvider-c617a1bb.js +53 -0
  74. package/CreateChannelProvider-c617a1bb.js.map +1 -0
  75. package/EditUserProfile/components/EditUserProfileUI.js +26 -0
  76. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  77. package/EditUserProfile/context.js +27 -0
  78. package/EditUserProfile/context.js.map +1 -0
  79. package/EditUserProfile.js +39 -0
  80. package/EditUserProfile.js.map +1 -0
  81. package/LocalizationContext-e4391013.js +22 -0
  82. package/LocalizationContext-e4391013.js.map +1 -0
  83. package/MemberList-6655cba0.js +425 -0
  84. package/MemberList-6655cba0.js.map +1 -0
  85. package/MessageSearch/components/MessageSearchUI.js +151 -0
  86. package/MessageSearch/components/MessageSearchUI.js.map +1 -0
  87. package/MessageSearch/context.js +392 -0
  88. package/MessageSearch/context.js.map +1 -0
  89. package/MessageSearch.js +146 -0
  90. package/MessageSearch.js.map +1 -0
  91. package/OpenChannel/components/FrozenChannelNotification.js +20 -0
  92. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  93. package/OpenChannel/components/OpenChannelHeader.js +78 -0
  94. package/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  95. package/OpenChannel/components/OpenChannelInput.js +52 -0
  96. package/OpenChannel/components/OpenChannelInput.js.map +1 -0
  97. package/OpenChannel/components/OpenChannelMessage.js +278 -0
  98. package/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  99. package/OpenChannel/components/OpenChannelMessageList.js +153 -0
  100. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  101. package/OpenChannel/components/OpenChannelUI.js +105 -0
  102. package/OpenChannel/components/OpenChannelUI.js.map +1 -0
  103. package/OpenChannel/context.js +14 -0
  104. package/OpenChannel/context.js.map +1 -0
  105. package/OpenChannel.js +76 -0
  106. package/OpenChannel.js.map +1 -0
  107. package/OpenChannelProvider-a7691eb4.js +2011 -0
  108. package/OpenChannelProvider-a7691eb4.js.map +1 -0
  109. package/OpenChannelSettings/components/EditDetailsModal.js +149 -0
  110. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  111. package/OpenChannelSettings/components/OpenChannelProfile.js +81 -0
  112. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  113. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +104 -0
  114. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  115. package/OpenChannelSettings/components/OperatorUI.js +184 -0
  116. package/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  117. package/OpenChannelSettings/components/ParticipantUI.js +172 -0
  118. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  119. package/OpenChannelSettings/context.js +64 -0
  120. package/OpenChannelSettings/context.js.map +1 -0
  121. package/OpenChannelSettings.js +64 -0
  122. package/OpenChannelSettings.js.map +1 -0
  123. package/SendbirdProvider.js +740 -0
  124. package/SendbirdProvider.js.map +1 -0
  125. package/UserProfileContext-865db5e6.js +38 -0
  126. package/UserProfileContext-865db5e6.js.map +1 -0
  127. package/_rollupPluginBabelHelpers-20904f21.js +233 -0
  128. package/_rollupPluginBabelHelpers-20904f21.js.map +1 -0
  129. package/actionTypes-1e3a4074.js +6 -0
  130. package/actionTypes-1e3a4074.js.map +1 -0
  131. package/cjs/App.js +301 -0
  132. package/cjs/App.js.map +1 -0
  133. package/cjs/Channel/components/ChannelHeader.js +122 -0
  134. package/cjs/Channel/components/ChannelHeader.js.map +1 -0
  135. package/cjs/Channel/components/ChannelUI.js +178 -0
  136. package/cjs/Channel/components/ChannelUI.js.map +1 -0
  137. package/cjs/Channel/components/FileViewer.js +159 -0
  138. package/cjs/Channel/components/FileViewer.js.map +1 -0
  139. package/cjs/Channel/components/FrozenNotification.js +26 -0
  140. package/cjs/Channel/components/FrozenNotification.js.map +1 -0
  141. package/cjs/Channel/components/Message.js +238 -0
  142. package/cjs/Channel/components/Message.js.map +1 -0
  143. package/cjs/Channel/components/MessageInput.js +93 -0
  144. package/cjs/Channel/components/MessageInput.js.map +1 -0
  145. package/cjs/Channel/components/MessageList.js +233 -0
  146. package/cjs/Channel/components/MessageList.js.map +1 -0
  147. package/cjs/Channel/components/RemoveMessageModal.js +58 -0
  148. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -0
  149. package/cjs/Channel/components/TypingIndicator.js +103 -0
  150. package/cjs/Channel/components/TypingIndicator.js.map +1 -0
  151. package/cjs/Channel/components/UnreadCount.js +47 -0
  152. package/cjs/Channel/components/UnreadCount.js.map +1 -0
  153. package/cjs/Channel/context.js +32 -0
  154. package/cjs/Channel/context.js.map +1 -0
  155. package/cjs/Channel.js +105 -0
  156. package/cjs/Channel.js.map +1 -0
  157. package/cjs/ChannelList/components/AddChannel.js +79 -0
  158. package/cjs/ChannelList/components/AddChannel.js.map +1 -0
  159. package/cjs/ChannelList/components/ChannelListHeader.js +68 -0
  160. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -0
  161. package/cjs/ChannelList/components/ChannelListUI.js +219 -0
  162. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -0
  163. package/cjs/ChannelList/components/ChannelPreview.js +183 -0
  164. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -0
  165. package/cjs/ChannelList/components/ChannelPreviewAction.js +138 -0
  166. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  167. package/cjs/ChannelList/context.js +22 -0
  168. package/cjs/ChannelList/context.js.map +1 -0
  169. package/cjs/ChannelList.js +86 -0
  170. package/cjs/ChannelList.js.map +1 -0
  171. package/cjs/ChannelListProvider-5a152618.js +873 -0
  172. package/cjs/ChannelListProvider-5a152618.js.map +1 -0
  173. package/cjs/ChannelProvider-f1fb0108.js +2096 -0
  174. package/cjs/ChannelProvider-f1fb0108.js.map +1 -0
  175. package/cjs/ChannelSettings/components/AdminPanel.js +911 -0
  176. package/cjs/ChannelSettings/components/AdminPanel.js.map +1 -0
  177. package/cjs/ChannelSettings/components/ChannelProfile.js +108 -0
  178. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -0
  179. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +158 -0
  180. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  181. package/cjs/ChannelSettings/components/EditDetailsModal.js +160 -0
  182. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  183. package/cjs/ChannelSettings/components/LeaveChannel.js +59 -0
  184. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -0
  185. package/cjs/ChannelSettings/components/UserListItem.js +111 -0
  186. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -0
  187. package/cjs/ChannelSettings/components/UserPanel.js +85 -0
  188. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -0
  189. package/cjs/ChannelSettings/context.js +102 -0
  190. package/cjs/ChannelSettings/context.js.map +1 -0
  191. package/cjs/ChannelSettings.js +77 -0
  192. package/cjs/ChannelSettings.js.map +1 -0
  193. package/cjs/CreateChannel/components/CreateChannelUI.js +59 -0
  194. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -0
  195. package/cjs/CreateChannel/components/InviteMembers.js +190 -0
  196. package/cjs/CreateChannel/components/InviteMembers.js.map +1 -0
  197. package/cjs/CreateChannel/components/SelectChannelType.js +137 -0
  198. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -0
  199. package/cjs/CreateChannel/context.js +17 -0
  200. package/cjs/CreateChannel/context.js.map +1 -0
  201. package/cjs/CreateChannel.js +59 -0
  202. package/cjs/CreateChannel.js.map +1 -0
  203. package/cjs/CreateChannelProvider-df42106f.js +60 -0
  204. package/cjs/CreateChannelProvider-df42106f.js.map +1 -0
  205. package/cjs/EditUserProfile/components/EditUserProfileUI.js +32 -0
  206. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  207. package/cjs/EditUserProfile/context.js +36 -0
  208. package/cjs/EditUserProfile/context.js.map +1 -0
  209. package/cjs/EditUserProfile.js +45 -0
  210. package/cjs/EditUserProfile.js.map +1 -0
  211. package/cjs/LocalizationContext-68e55e2a.js +30 -0
  212. package/cjs/LocalizationContext-68e55e2a.js.map +1 -0
  213. package/cjs/MemberList-dc84e303.js +431 -0
  214. package/cjs/MemberList-dc84e303.js.map +1 -0
  215. package/cjs/MessageSearch/components/MessageSearchUI.js +160 -0
  216. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -0
  217. package/cjs/MessageSearch/context.js +401 -0
  218. package/cjs/MessageSearch/context.js.map +1 -0
  219. package/cjs/MessageSearch.js +152 -0
  220. package/cjs/MessageSearch.js.map +1 -0
  221. package/cjs/OpenChannel/components/FrozenChannelNotification.js +26 -0
  222. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  223. package/cjs/OpenChannel/components/OpenChannelHeader.js +84 -0
  224. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  225. package/cjs/OpenChannel/components/OpenChannelInput.js +58 -0
  226. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -0
  227. package/cjs/OpenChannel/components/OpenChannelMessage.js +284 -0
  228. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  229. package/cjs/OpenChannel/components/OpenChannelMessageList.js +159 -0
  230. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  231. package/cjs/OpenChannel/components/OpenChannelUI.js +111 -0
  232. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -0
  233. package/cjs/OpenChannel/context.js +23 -0
  234. package/cjs/OpenChannel/context.js.map +1 -0
  235. package/cjs/OpenChannel.js +82 -0
  236. package/cjs/OpenChannel.js.map +1 -0
  237. package/cjs/OpenChannelProvider-7a1a996f.js +2020 -0
  238. package/cjs/OpenChannelProvider-7a1a996f.js.map +1 -0
  239. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +155 -0
  240. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  241. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +87 -0
  242. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  243. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +110 -0
  244. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  245. package/cjs/OpenChannelSettings/components/OperatorUI.js +194 -0
  246. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  247. package/cjs/OpenChannelSettings/components/ParticipantUI.js +178 -0
  248. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  249. package/cjs/OpenChannelSettings/context.js +73 -0
  250. package/cjs/OpenChannelSettings/context.js.map +1 -0
  251. package/cjs/OpenChannelSettings.js +70 -0
  252. package/cjs/OpenChannelSettings.js.map +1 -0
  253. package/cjs/SendbirdProvider.js +749 -0
  254. package/cjs/SendbirdProvider.js.map +1 -0
  255. package/cjs/UserProfileContext-3533547d.js +46 -0
  256. package/cjs/UserProfileContext-3533547d.js.map +1 -0
  257. package/cjs/_rollupPluginBabelHelpers-fc14118c.js +243 -0
  258. package/cjs/_rollupPluginBabelHelpers-fc14118c.js.map +1 -0
  259. package/cjs/actionTypes-bc47f97a.js +10 -0
  260. package/cjs/actionTypes-bc47f97a.js.map +1 -0
  261. package/cjs/color-4afb15fb.js +42 -0
  262. package/cjs/color-4afb15fb.js.map +1 -0
  263. package/cjs/compareIds-01306377.js +20 -0
  264. package/cjs/compareIds-01306377.js.map +1 -0
  265. package/cjs/context-c1f9d650.js +19 -0
  266. package/cjs/context-c1f9d650.js.map +1 -0
  267. package/cjs/index-1044f1ed.js +97 -0
  268. package/cjs/index-1044f1ed.js.map +1 -0
  269. package/cjs/index-1468d245.js +142 -0
  270. package/cjs/index-1468d245.js.map +1 -0
  271. package/cjs/index-4987c8b2.js +175 -0
  272. package/cjs/index-4987c8b2.js.map +1 -0
  273. package/cjs/index-659c9ca5.js +130 -0
  274. package/cjs/index-659c9ca5.js.map +1 -0
  275. package/cjs/index-8becccd8.js +284 -0
  276. package/cjs/index-8becccd8.js.map +1 -0
  277. package/cjs/index-905331fa.js +1880 -0
  278. package/cjs/index-905331fa.js.map +1 -0
  279. package/cjs/index-9dc3863f.js +67 -0
  280. package/cjs/index-9dc3863f.js.map +1 -0
  281. package/cjs/index-aecc8d24.js +9 -0
  282. package/cjs/index-aecc8d24.js.map +1 -0
  283. package/cjs/index-d4880236.js +641 -0
  284. package/cjs/index-d4880236.js.map +1 -0
  285. package/cjs/index-e2bb862c.js +514 -0
  286. package/cjs/index-e2bb862c.js.map +1 -0
  287. package/cjs/index.css +4355 -0
  288. package/cjs/index.css.map +1 -0
  289. package/cjs/index.js +155 -0
  290. package/cjs/index.js.map +1 -0
  291. package/cjs/openChannelUtils-37919a36.js +92 -0
  292. package/cjs/openChannelUtils-37919a36.js.map +1 -0
  293. package/cjs/sendBirdSelectors.js +741 -0
  294. package/cjs/sendBirdSelectors.js.map +1 -0
  295. package/cjs/stringSet-aa544ce5.js +116 -0
  296. package/cjs/stringSet-aa544ce5.js.map +1 -0
  297. package/cjs/topics-8314d425.js +18 -0
  298. package/cjs/topics-8314d425.js.map +1 -0
  299. package/cjs/tslib.es6-4a281a05.js +40 -0
  300. package/cjs/tslib.es6-4a281a05.js.map +1 -0
  301. package/cjs/ui/Accordion.js +74 -0
  302. package/cjs/ui/Accordion.js.map +1 -0
  303. package/cjs/ui/AccordionGroup.js +32 -0
  304. package/cjs/ui/AccordionGroup.js.map +1 -0
  305. package/cjs/ui/AdminMessage.js +44 -0
  306. package/cjs/ui/AdminMessage.js.map +1 -0
  307. package/cjs/ui/Avatar.js +226 -0
  308. package/cjs/ui/Avatar.js.map +1 -0
  309. package/cjs/ui/Badge.js +45 -0
  310. package/cjs/ui/Badge.js.map +1 -0
  311. package/cjs/ui/Button.js +17 -0
  312. package/cjs/ui/Button.js.map +1 -0
  313. package/cjs/ui/ChannelAvatar.js +59 -0
  314. package/cjs/ui/ChannelAvatar.js.map +1 -0
  315. package/cjs/ui/ChannelPreview.js +201 -0
  316. package/cjs/ui/ChannelPreview.js.map +1 -0
  317. package/cjs/ui/ChatHeader.js +145 -0
  318. package/cjs/ui/ChatHeader.js.map +1 -0
  319. package/cjs/ui/Checkbox.js +49 -0
  320. package/cjs/ui/Checkbox.js.map +1 -0
  321. package/cjs/ui/ConnectionStatus.js +34 -0
  322. package/cjs/ui/ConnectionStatus.js.map +1 -0
  323. package/cjs/ui/ContextMenu.js +431 -0
  324. package/cjs/ui/ContextMenu.js.map +1 -0
  325. package/cjs/ui/DateSeparator.js +44 -0
  326. package/cjs/ui/DateSeparator.js.map +1 -0
  327. package/cjs/ui/Dropdown.js +107 -0
  328. package/cjs/ui/Dropdown.js.map +1 -0
  329. package/cjs/ui/EmojiReactions.js +127 -0
  330. package/cjs/ui/EmojiReactions.js.map +1 -0
  331. package/cjs/ui/FileMessageItemBody.js +57 -0
  332. package/cjs/ui/FileMessageItemBody.js.map +1 -0
  333. package/cjs/ui/FileViewer.js +174 -0
  334. package/cjs/ui/FileViewer.js.map +1 -0
  335. package/cjs/ui/Icon.js +1462 -0
  336. package/cjs/ui/Icon.js.map +1 -0
  337. package/cjs/ui/IconButton.js +83 -0
  338. package/cjs/ui/IconButton.js.map +1 -0
  339. package/cjs/ui/ImageRenderer.js +138 -0
  340. package/cjs/ui/ImageRenderer.js.map +1 -0
  341. package/cjs/ui/Input.js +74 -0
  342. package/cjs/ui/Input.js.map +1 -0
  343. package/cjs/ui/Label.js +17 -0
  344. package/cjs/ui/Label.js.map +1 -0
  345. package/cjs/ui/LinkLabel.js +51 -0
  346. package/cjs/ui/LinkLabel.js.map +1 -0
  347. package/cjs/ui/Loader.js +44 -0
  348. package/cjs/ui/Loader.js.map +1 -0
  349. package/cjs/ui/MessageContent.js +328 -0
  350. package/cjs/ui/MessageContent.js.map +1 -0
  351. package/cjs/ui/MessageInput.js +232 -0
  352. package/cjs/ui/MessageInput.js.map +1 -0
  353. package/cjs/ui/MessageItemMenu.js +141 -0
  354. package/cjs/ui/MessageItemMenu.js.map +1 -0
  355. package/cjs/ui/MessageItemReactionMenu.js +112 -0
  356. package/cjs/ui/MessageItemReactionMenu.js.map +1 -0
  357. package/cjs/ui/MessageSearchFileItem.js +130 -0
  358. package/cjs/ui/MessageSearchFileItem.js.map +1 -0
  359. package/cjs/ui/MessageSearchItem.js +93 -0
  360. package/cjs/ui/MessageSearchItem.js.map +1 -0
  361. package/cjs/ui/Modal.js +140 -0
  362. package/cjs/ui/Modal.js.map +1 -0
  363. package/cjs/ui/MutedAvatarOverlay.js +40 -0
  364. package/cjs/ui/MutedAvatarOverlay.js.map +1 -0
  365. package/cjs/ui/OGMessageItemBody.js +97 -0
  366. package/cjs/ui/OGMessageItemBody.js.map +1 -0
  367. package/cjs/ui/OpenChannelAdminMessage.js +27 -0
  368. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -0
  369. package/cjs/ui/OpenChannelAvatar.js +41 -0
  370. package/cjs/ui/OpenChannelAvatar.js.map +1 -0
  371. package/cjs/ui/OpenChannelMessageContent.js +14 -0
  372. package/cjs/ui/OpenChannelMessageContent.js.map +1 -0
  373. package/cjs/ui/OpenchannelConversationHeader.js +73 -0
  374. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -0
  375. package/cjs/ui/OpenchannelFileMessage.js +230 -0
  376. package/cjs/ui/OpenchannelFileMessage.js.map +1 -0
  377. package/cjs/ui/OpenchannelOGMessage.js +345 -0
  378. package/cjs/ui/OpenchannelOGMessage.js.map +1 -0
  379. package/cjs/ui/OpenchannelThumbnailMessage.js +305 -0
  380. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -0
  381. package/cjs/ui/OpenchannelUserMessage.js +264 -0
  382. package/cjs/ui/OpenchannelUserMessage.js.map +1 -0
  383. package/cjs/ui/PlaceHolder.js +20 -0
  384. package/cjs/ui/PlaceHolder.js.map +1 -0
  385. package/cjs/ui/QuoteMessage.js +131 -0
  386. package/cjs/ui/QuoteMessage.js.map +1 -0
  387. package/cjs/ui/QuoteMessageInput.js +99 -0
  388. package/cjs/ui/QuoteMessageInput.js.map +1 -0
  389. package/cjs/ui/ReactionBadge.js +68 -0
  390. package/cjs/ui/ReactionBadge.js.map +1 -0
  391. package/cjs/ui/ReactionButton.js +55 -0
  392. package/cjs/ui/ReactionButton.js.map +1 -0
  393. package/cjs/ui/SortByRow.js +57 -0
  394. package/cjs/ui/SortByRow.js.map +1 -0
  395. package/cjs/ui/TextButton.js +45 -0
  396. package/cjs/ui/TextButton.js.map +1 -0
  397. package/cjs/ui/TextMessageItemBody.js +40 -0
  398. package/cjs/ui/TextMessageItemBody.js.map +1 -0
  399. package/cjs/ui/ThumbnailMessageItemBody.js +82 -0
  400. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -0
  401. package/cjs/ui/Tooltip.js +35 -0
  402. package/cjs/ui/Tooltip.js.map +1 -0
  403. package/cjs/ui/TooltipWrapper.js +65 -0
  404. package/cjs/ui/TooltipWrapper.js.map +1 -0
  405. package/cjs/ui/UnknownMessageItemBody.js +41 -0
  406. package/cjs/ui/UnknownMessageItemBody.js.map +1 -0
  407. package/cjs/ui/UserListItem.js +158 -0
  408. package/cjs/ui/UserListItem.js.map +1 -0
  409. package/cjs/ui/UserProfile.js +87 -0
  410. package/cjs/ui/UserProfile.js.map +1 -0
  411. package/cjs/useSendbirdStateContext.js +22 -0
  412. package/cjs/useSendbirdStateContext.js.map +1 -0
  413. package/cjs/utils-3b0815dc.js +6 -0
  414. package/cjs/utils-3b0815dc.js.map +1 -0
  415. package/cjs/utils-66b3f4ec.js +38 -0
  416. package/cjs/utils-66b3f4ec.js.map +1 -0
  417. package/cjs/utils-cbd3ed99.js +32 -0
  418. package/cjs/utils-cbd3ed99.js.map +1 -0
  419. package/cjs/uuid-1d5ec8b2.js +19 -0
  420. package/cjs/uuid-1d5ec8b2.js.map +1 -0
  421. package/cjs/withSendBird.js +35 -0
  422. package/cjs/withSendBird.js.map +1 -0
  423. package/color-ee3fc5ee.js +39 -0
  424. package/color-ee3fc5ee.js.map +1 -0
  425. package/compareIds-808956f2.js +18 -0
  426. package/compareIds-808956f2.js.map +1 -0
  427. package/context-98ce535c.js +12 -0
  428. package/context-98ce535c.js.map +1 -0
  429. package/index-1718324d.js +280 -0
  430. package/index-1718324d.js.map +1 -0
  431. package/index-5c2c81bc.js +168 -0
  432. package/index-5c2c81bc.js.map +1 -0
  433. package/index-6ebf7894.js +512 -0
  434. package/index-6ebf7894.js.map +1 -0
  435. package/index-770d7112.js +1873 -0
  436. package/index-770d7112.js.map +1 -0
  437. package/index-7a51bd16.js +131 -0
  438. package/index-7a51bd16.js.map +1 -0
  439. package/index-8c72a94a.js +602 -0
  440. package/index-8c72a94a.js.map +1 -0
  441. package/index-942c85a6.js +7 -0
  442. package/index-942c85a6.js.map +1 -0
  443. package/index-acebc2ff.js +87 -0
  444. package/index-acebc2ff.js.map +1 -0
  445. package/index-cd21929d.js +64 -0
  446. package/index-cd21929d.js.map +1 -0
  447. package/index-e818a8a3.js +121 -0
  448. package/index-e818a8a3.js.map +1 -0
  449. package/index.css +4355 -0
  450. package/index.css.map +1 -0
  451. package/index.d.ts +1801 -0
  452. package/index.js.map +1 -0
  453. package/openChannelUtils-56a372e7.js +81 -0
  454. package/openChannelUtils-56a372e7.js.map +1 -0
  455. package/package.json +1 -8
  456. package/sendBirdSelectors.js +713 -0
  457. package/sendBirdSelectors.js.map +1 -0
  458. package/stringSet-4f6eaa60.js +114 -0
  459. package/stringSet-4f6eaa60.js.map +1 -0
  460. package/topics-9442035c.js +10 -0
  461. package/topics-9442035c.js.map +1 -0
  462. package/tslib.es6-e3c44017.js +38 -0
  463. package/tslib.es6-e3c44017.js.map +1 -0
  464. package/ui/Accordion.js +65 -0
  465. package/ui/Accordion.js.map +1 -0
  466. package/ui/AccordionGroup.js +26 -0
  467. package/ui/AccordionGroup.js.map +1 -0
  468. package/ui/AdminMessage.js +37 -0
  469. package/ui/AdminMessage.js.map +1 -0
  470. package/ui/Avatar.js +217 -0
  471. package/ui/Avatar.js.map +1 -0
  472. package/ui/Badge.js +38 -0
  473. package/ui/Badge.js.map +1 -0
  474. package/ui/Button.js +7 -0
  475. package/ui/Button.js.map +1 -0
  476. package/ui/ChannelAvatar.js +53 -0
  477. package/ui/ChannelAvatar.js.map +1 -0
  478. package/ui/ChannelPreview.js +194 -0
  479. package/ui/ChannelPreview.js.map +1 -0
  480. package/ui/ChatHeader.js +138 -0
  481. package/ui/ChatHeader.js.map +1 -0
  482. package/ui/Checkbox.js +42 -0
  483. package/ui/Checkbox.js.map +1 -0
  484. package/ui/ConnectionStatus.js +28 -0
  485. package/ui/ConnectionStatus.js.map +1 -0
  486. package/ui/ContextMenu.js +417 -0
  487. package/ui/ContextMenu.js.map +1 -0
  488. package/ui/DateSeparator.js +37 -0
  489. package/ui/DateSeparator.js.map +1 -0
  490. package/ui/Dropdown.js +97 -0
  491. package/ui/Dropdown.js.map +1 -0
  492. package/ui/EmojiReactions.js +121 -0
  493. package/ui/EmojiReactions.js.map +1 -0
  494. package/ui/FileMessageItemBody.js +51 -0
  495. package/ui/FileMessageItemBody.js.map +1 -0
  496. package/ui/FileViewer.js +164 -0
  497. package/ui/FileViewer.js.map +1 -0
  498. package/ui/Icon.js +1432 -0
  499. package/ui/Icon.js.map +1 -0
  500. package/ui/IconButton.js +76 -0
  501. package/ui/IconButton.js.map +1 -0
  502. package/ui/ImageRenderer.js +131 -0
  503. package/ui/ImageRenderer.js.map +1 -0
  504. package/ui/Input.js +64 -0
  505. package/ui/Input.js.map +1 -0
  506. package/ui/Label.js +6 -0
  507. package/ui/Label.js.map +1 -0
  508. package/ui/LinkLabel.js +40 -0
  509. package/ui/LinkLabel.js.map +1 -0
  510. package/ui/Loader.js +37 -0
  511. package/ui/Loader.js.map +1 -0
  512. package/ui/MessageContent.js +322 -0
  513. package/ui/MessageContent.js.map +1 -0
  514. package/ui/MessageInput.js +225 -0
  515. package/ui/MessageInput.js.map +1 -0
  516. package/ui/MessageItemMenu.js +135 -0
  517. package/ui/MessageItemMenu.js.map +1 -0
  518. package/ui/MessageItemReactionMenu.js +106 -0
  519. package/ui/MessageItemReactionMenu.js.map +1 -0
  520. package/ui/MessageSearchFileItem.js +124 -0
  521. package/ui/MessageSearchFileItem.js.map +1 -0
  522. package/ui/MessageSearchItem.js +87 -0
  523. package/ui/MessageSearchItem.js.map +1 -0
  524. package/ui/Modal.js +128 -0
  525. package/ui/Modal.js.map +1 -0
  526. package/ui/MutedAvatarOverlay.js +34 -0
  527. package/ui/MutedAvatarOverlay.js.map +1 -0
  528. package/ui/OGMessageItemBody.js +91 -0
  529. package/ui/OGMessageItemBody.js.map +1 -0
  530. package/ui/OpenChannelAdminMessage.js +21 -0
  531. package/ui/OpenChannelAdminMessage.js.map +1 -0
  532. package/ui/OpenChannelAvatar.js +35 -0
  533. package/ui/OpenChannelAvatar.js.map +1 -0
  534. package/ui/OpenChannelMessageContent.js +8 -0
  535. package/ui/OpenChannelMessageContent.js.map +1 -0
  536. package/ui/OpenchannelConversationHeader.js +67 -0
  537. package/ui/OpenchannelConversationHeader.js.map +1 -0
  538. package/ui/OpenchannelFileMessage.js +224 -0
  539. package/ui/OpenchannelFileMessage.js.map +1 -0
  540. package/ui/OpenchannelOGMessage.js +339 -0
  541. package/ui/OpenchannelOGMessage.js.map +1 -0
  542. package/ui/OpenchannelThumbnailMessage.js +299 -0
  543. package/ui/OpenchannelThumbnailMessage.js.map +1 -0
  544. package/ui/OpenchannelUserMessage.js +258 -0
  545. package/ui/OpenchannelUserMessage.js.map +1 -0
  546. package/ui/PlaceHolder.js +11 -0
  547. package/ui/PlaceHolder.js.map +1 -0
  548. package/ui/QuoteMessage.js +125 -0
  549. package/ui/QuoteMessage.js.map +1 -0
  550. package/ui/QuoteMessageInput.js +93 -0
  551. package/ui/QuoteMessageInput.js.map +1 -0
  552. package/ui/ReactionBadge.js +61 -0
  553. package/ui/ReactionBadge.js.map +1 -0
  554. package/ui/ReactionButton.js +48 -0
  555. package/ui/ReactionButton.js.map +1 -0
  556. package/ui/SortByRow.js +50 -0
  557. package/ui/SortByRow.js.map +1 -0
  558. package/ui/TextButton.js +38 -0
  559. package/ui/TextButton.js.map +1 -0
  560. package/ui/TextMessageItemBody.js +34 -0
  561. package/ui/TextMessageItemBody.js.map +1 -0
  562. package/ui/ThumbnailMessageItemBody.js +76 -0
  563. package/ui/ThumbnailMessageItemBody.js.map +1 -0
  564. package/ui/Tooltip.js +28 -0
  565. package/ui/Tooltip.js.map +1 -0
  566. package/ui/TooltipWrapper.js +58 -0
  567. package/ui/TooltipWrapper.js.map +1 -0
  568. package/ui/UnknownMessageItemBody.js +35 -0
  569. package/ui/UnknownMessageItemBody.js.map +1 -0
  570. package/ui/UserListItem.js +151 -0
  571. package/ui/UserListItem.js.map +1 -0
  572. package/ui/UserProfile.js +81 -0
  573. package/ui/UserProfile.js.map +1 -0
  574. package/useSendbirdStateContext.js +20 -0
  575. package/useSendbirdStateContext.js.map +1 -0
  576. package/utils-08c4dbdc.js +34 -0
  577. package/utils-08c4dbdc.js.map +1 -0
  578. package/utils-af1b9829.js +30 -0
  579. package/utils-af1b9829.js.map +1 -0
  580. package/utils-c393e880.js +4 -0
  581. package/utils-c393e880.js.map +1 -0
  582. package/uuid-b0c93400.js +17 -0
  583. package/uuid-b0c93400.js.map +1 -0
  584. package/withSendBird.js +26 -0
  585. package/withSendBird.js.map +1 -0
@@ -0,0 +1,425 @@
1
+ import React__default, { useState, useEffect, useCallback } from 'react';
2
+ import { T as Type, B as Button, a as ButtonTypes, b as ButtonSizes } from './index-acebc2ff.js';
3
+ import IconButton from './ui/IconButton.js';
4
+ import Icon, { IconTypes, IconColors } from './ui/Icon.js';
5
+ import ContextMenu, { MenuItems, MenuItem } from './ui/ContextMenu.js';
6
+ import UserListItem$1 from './ChannelSettings/components/UserListItem.js';
7
+ import { a as __spreadArray, _ as __assign } from './tslib.es6-e3c44017.js';
8
+ import Modal from './ui/Modal.js';
9
+ import UserListItem from './ui/UserListItem.js';
10
+ import { n as noop } from './utils-c393e880.js';
11
+ import { useChannelSettings } from './ChannelSettings/context.js';
12
+ import useSendbirdStateContext from './useSendbirdStateContext.js';
13
+ import { u as uuidv4 } from './uuid-b0c93400.js';
14
+
15
+ function MembersModal(_a) {
16
+ var _b;
17
+
18
+ var _onCancel = _a.onCancel;
19
+
20
+ var _c = useState([]),
21
+ members = _c[0],
22
+ setMembers = _c[1];
23
+
24
+ var _d = useState(null),
25
+ memberQuery = _d[0],
26
+ setMemberQuery = _d[1];
27
+
28
+ var channel = useChannelSettings().channel;
29
+ var state = useSendbirdStateContext();
30
+ var currentUser = (_b = state === null || state === void 0 ? void 0 : state.config) === null || _b === void 0 ? void 0 : _b.userId;
31
+ useEffect(function () {
32
+ var memberListQuery = channel.createMemberListQuery();
33
+ memberListQuery.limit = 20;
34
+ memberListQuery.next(function (members, error) {
35
+ if (error) {
36
+ return;
37
+ }
38
+
39
+ setMembers(members);
40
+ });
41
+ setMemberQuery(memberListQuery);
42
+ }, []);
43
+ return /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement(Modal, {
44
+ hideFooter: true,
45
+ onCancel: function onCancel() {
46
+ return _onCancel();
47
+ },
48
+ onSubmit: noop,
49
+ titleText: "All Members"
50
+ }, /*#__PURE__*/React__default.createElement("div", {
51
+ className: "sendbird-more-members__popup-scroll",
52
+ onScroll: function onScroll(e) {
53
+ var hasNext = memberQuery.hasNext;
54
+ var target = e.target;
55
+ var fetchMore = target.clientHeight + target.scrollTop === target.scrollHeight;
56
+
57
+ if (hasNext && fetchMore) {
58
+ memberQuery.next(function (o, error) {
59
+ if (error) {
60
+ return;
61
+ }
62
+
63
+ setMembers(__spreadArray(__spreadArray([], members, true), o, true));
64
+ });
65
+ }
66
+ }
67
+ }, members.map(function (member) {
68
+ return /*#__PURE__*/React__default.createElement(UserListItem, {
69
+ user: member,
70
+ key: member.userId,
71
+ currentUser: currentUser,
72
+ action: function action(_a) {
73
+ var parentRef = _a.parentRef,
74
+ actionRef = _a.actionRef;
75
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, channel.myRole === 'operator' && /*#__PURE__*/React__default.createElement(ContextMenu, {
76
+ menuTrigger: function menuTrigger(toggleDropdown) {
77
+ return /*#__PURE__*/React__default.createElement(IconButton, {
78
+ className: "sendbird-user-message__more__menu",
79
+ width: "32px",
80
+ height: "32px",
81
+ onClick: toggleDropdown
82
+ }, /*#__PURE__*/React__default.createElement(Icon, {
83
+ width: "24px",
84
+ height: "24px",
85
+ type: IconTypes.MORE,
86
+ fillColor: IconColors.CONTENT_INVERSE
87
+ }));
88
+ },
89
+ menuItems: function menuItems(closeDropdown) {
90
+ return /*#__PURE__*/React__default.createElement(MenuItems, {
91
+ parentContainRef: parentRef,
92
+ parentRef: actionRef // for catching location(x, y) of MenuItems
93
+ ,
94
+ closeDropdown: closeDropdown,
95
+ openLeft: true
96
+ }, /*#__PURE__*/React__default.createElement(MenuItem, {
97
+ onClick: function onClick() {
98
+ if (member.role !== 'operator') {
99
+ channel.addOperators([member.userId], function () {
100
+ setMembers(members.map(function (m) {
101
+ if (m.userId === member.userId) {
102
+ return __assign(__assign({}, member), {
103
+ role: 'operator'
104
+ });
105
+ }
106
+
107
+ return m;
108
+ }));
109
+ closeDropdown();
110
+ });
111
+ } else {
112
+ channel.removeOperators([member.userId], function () {
113
+ setMembers(members.map(function (m) {
114
+ if (m.userId === member.userId) {
115
+ return __assign(__assign({}, member), {
116
+ role: ''
117
+ });
118
+ }
119
+
120
+ return m;
121
+ }));
122
+ closeDropdown();
123
+ });
124
+ }
125
+ }
126
+ }, member.role !== 'operator' ? 'Promote to operator' : 'Demote operator'), // No muted members in broadcast channel
127
+ !channel.isBroadcast && /*#__PURE__*/React__default.createElement(MenuItem, {
128
+ onClick: function onClick() {
129
+ if (member.isMuted) {
130
+ channel.unmuteUser(member, function () {
131
+ setMembers(members.map(function (m) {
132
+ if (m.userId === member.userId) {
133
+ return __assign(__assign({}, member), {
134
+ isMuted: false
135
+ });
136
+ }
137
+
138
+ return m;
139
+ }));
140
+ closeDropdown();
141
+ });
142
+ } else {
143
+ channel.muteUser(member, function () {
144
+ setMembers(members.map(function (m) {
145
+ if (m.userId === member.userId) {
146
+ return __assign(__assign({}, member), {
147
+ isMuted: true
148
+ });
149
+ }
150
+
151
+ return m;
152
+ }));
153
+ closeDropdown();
154
+ });
155
+ }
156
+ }
157
+ }, member.isMuted ? 'Unmute' : 'Mute'), /*#__PURE__*/React__default.createElement(MenuItem, {
158
+ onClick: function onClick() {
159
+ channel.banUser(member, -1, '', function () {
160
+ setMembers(members.filter(function (_a) {
161
+ var userId = _a.userId;
162
+ return userId !== member.userId;
163
+ }));
164
+ });
165
+ }
166
+ }, "Ban"));
167
+ }
168
+ }));
169
+ }
170
+ });
171
+ }))));
172
+ }
173
+
174
+ function InviteMembers(_a) {
175
+ var _b, _c;
176
+
177
+ var _onCancel = _a.onCancel,
178
+ _onSubmit = _a.onSubmit;
179
+
180
+ var _d = useState([]),
181
+ members = _d[0],
182
+ setMembers = _d[1];
183
+
184
+ var _e = useState({}),
185
+ selectedMembers = _e[0],
186
+ setSelectedMembers = _e[1];
187
+
188
+ var _f = useState(null),
189
+ userQuery = _f[0],
190
+ setUserQuery = _f[1];
191
+
192
+ var state = useSendbirdStateContext();
193
+ var sdk = (_c = (_b = state === null || state === void 0 ? void 0 : state.stores) === null || _b === void 0 ? void 0 : _b.sdkStore) === null || _c === void 0 ? void 0 : _c.sdk;
194
+ var channel = useChannelSettings().channel;
195
+ useEffect(function () {
196
+ var userListQuery = sdk === null || sdk === void 0 ? void 0 : sdk.createApplicationUserListQuery();
197
+ userListQuery.next(function (members, error) {
198
+ if (error) {
199
+ return;
200
+ }
201
+
202
+ setMembers(members);
203
+ });
204
+ setUserQuery(userListQuery);
205
+ }, [sdk]);
206
+ return /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement(Modal, {
207
+ disabled: Object.keys(selectedMembers).length === 0,
208
+ submitText: "Invite",
209
+ type: Type.PRIMARY,
210
+ onCancel: function onCancel() {
211
+ return _onCancel();
212
+ },
213
+ onSubmit: function onSubmit() {
214
+ var members = Object.keys(selectedMembers).filter(function (m) {
215
+ return selectedMembers[m];
216
+ });
217
+ channel.inviteWithUserIds(members).then(function () {
218
+ _onSubmit(members);
219
+ });
220
+ },
221
+ titleText: "Select members"
222
+ }, /*#__PURE__*/React__default.createElement("div", {
223
+ className: "sendbird-more-members__popup-scroll",
224
+ onScroll: function onScroll(e) {
225
+ var hasNext = userQuery.hasNext;
226
+ var target = e.target;
227
+ var fetchMore = target.clientHeight + target.scrollTop === target.scrollHeight;
228
+
229
+ if (hasNext && fetchMore) {
230
+ userQuery.next(function (users, error) {
231
+ if (error) {
232
+ return;
233
+ }
234
+
235
+ setMembers(__spreadArray(__spreadArray([], members, true), users, true));
236
+ });
237
+ }
238
+ }
239
+ }, /*#__PURE__*/React__default.createElement("div", {
240
+ className: "sendbird-more-members__popup-scroll__inner"
241
+ }, members.map(function (member) {
242
+ return /*#__PURE__*/React__default.createElement(UserListItem, {
243
+ checkBox: true,
244
+ checked: selectedMembers[member.userId],
245
+ onChange: function onChange(event) {
246
+ var _a;
247
+
248
+ var modifiedSelectedMembers = __assign(__assign({}, selectedMembers), (_a = {}, _a[event.target.id] = event.target.checked, _a));
249
+
250
+ if (!event.target.checked) {
251
+ delete modifiedSelectedMembers[event.target.id];
252
+ }
253
+
254
+ setSelectedMembers(modifiedSelectedMembers);
255
+ },
256
+ user: member,
257
+ key: member.userId
258
+ });
259
+ })))));
260
+ }
261
+
262
+ var MemberList = function MemberList() {
263
+ var _a, _b, _c;
264
+
265
+ var _d = useState([]),
266
+ members = _d[0],
267
+ setMembers = _d[1];
268
+
269
+ var _e = useState(false),
270
+ hasNext = _e[0],
271
+ setHasNext = _e[1];
272
+
273
+ var _f = useState(false),
274
+ showAllMembers = _f[0],
275
+ setShowAllMembers = _f[1];
276
+
277
+ var _g = useState(false),
278
+ showInviteMembers = _g[0],
279
+ setShowInviteMembers = _g[1];
280
+
281
+ var state = useSendbirdStateContext();
282
+
283
+ var _h = useChannelSettings(),
284
+ channel = _h.channel,
285
+ setChannelUpdateId = _h.setChannelUpdateId;
286
+
287
+ var sdk = (_b = (_a = state === null || state === void 0 ? void 0 : state.stores) === null || _a === void 0 ? void 0 : _a.sdkStore) === null || _b === void 0 ? void 0 : _b.sdk;
288
+ var userId = (_c = state === null || state === void 0 ? void 0 : state.config) === null || _c === void 0 ? void 0 : _c.userId;
289
+ useEffect(function () {
290
+ if (!channel) {
291
+ setMembers([]);
292
+ return;
293
+ }
294
+
295
+ var memberUserListQuery = channel.createMemberListQuery();
296
+ memberUserListQuery.limit = 10;
297
+ memberUserListQuery.next(function (members, error) {
298
+ if (error) {
299
+ return;
300
+ }
301
+
302
+ setMembers(members);
303
+ setHasNext(memberUserListQuery.hasNext);
304
+ });
305
+ }, [channel]);
306
+ var refershList = useCallback(function () {
307
+ if (!channel) {
308
+ setMembers([]);
309
+ return;
310
+ }
311
+
312
+ var memberUserListQuery = channel.createMemberListQuery();
313
+ memberUserListQuery.limit = 10;
314
+ memberUserListQuery.next(function (members, error) {
315
+ if (error) {
316
+ return;
317
+ }
318
+
319
+ setMembers(members);
320
+ setHasNext(memberUserListQuery.hasNext);
321
+ setChannelUpdateId(uuidv4());
322
+ });
323
+ }, [channel]);
324
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, members.map(function (member) {
325
+ return /*#__PURE__*/React__default.createElement(UserListItem$1, {
326
+ key: member.userId,
327
+ user: member,
328
+ currentUser: sdk.currentUser.userId,
329
+ action: userId !== member.userId ? function (_a) {
330
+ var actionRef = _a.actionRef,
331
+ parentRef = _a.parentRef;
332
+ return /*#__PURE__*/React__default.createElement(ContextMenu, {
333
+ menuTrigger: function menuTrigger(toggleDropdown) {
334
+ return /*#__PURE__*/React__default.createElement(IconButton, {
335
+ className: "sendbird-user-message__more__menu",
336
+ width: "32px",
337
+ height: "32px",
338
+ onClick: toggleDropdown
339
+ }, /*#__PURE__*/React__default.createElement(Icon, {
340
+ width: "24px",
341
+ height: "24px",
342
+ type: IconTypes.MORE,
343
+ fillColor: IconColors.CONTENT_INVERSE
344
+ }));
345
+ },
346
+ menuItems: function menuItems(closeDropdown) {
347
+ return /*#__PURE__*/React__default.createElement(MenuItems, {
348
+ parentContainRef: parentRef,
349
+ parentRef: actionRef // for catching location(x, y) of MenuItems
350
+ ,
351
+ closeDropdown: closeDropdown,
352
+ openLeft: true
353
+ }, /*#__PURE__*/React__default.createElement(MenuItem, {
354
+ onClick: function onClick() {
355
+ if (member.role !== 'operator') {
356
+ channel.addOperators([member.userId], function () {
357
+ refershList();
358
+ closeDropdown();
359
+ });
360
+ } else {
361
+ channel.removeOperators([member.userId], function () {
362
+ refershList();
363
+ closeDropdown();
364
+ });
365
+ }
366
+ }
367
+ }, member.role !== 'operator' ? 'Promote to operator' : 'Demote operator'), // No muted members in broadcast channel
368
+ !channel.isBroadcast && /*#__PURE__*/React__default.createElement(MenuItem, {
369
+ onClick: function onClick() {
370
+ if (member.isMuted) {
371
+ channel.unmuteUser(member, function () {
372
+ refershList();
373
+ closeDropdown();
374
+ });
375
+ } else {
376
+ channel.muteUser(member, function () {
377
+ refershList();
378
+ closeDropdown();
379
+ });
380
+ }
381
+ }
382
+ }, member.isMuted ? 'Unmute' : 'Mute'), /*#__PURE__*/React__default.createElement(MenuItem, {
383
+ onClick: function onClick() {
384
+ channel.banUser(member, -1, '', function () {
385
+ refershList();
386
+ closeDropdown();
387
+ });
388
+ }
389
+ }, "Ban"));
390
+ }
391
+ });
392
+ } : null
393
+ });
394
+ }), /*#__PURE__*/React__default.createElement("div", {
395
+ className: "sendbird-channel-settings-accordion__footer"
396
+ }, hasNext && /*#__PURE__*/React__default.createElement(Button, {
397
+ type: ButtonTypes.SECONDARY,
398
+ size: ButtonSizes.SMALL,
399
+ onClick: function onClick() {
400
+ return setShowAllMembers(true);
401
+ }
402
+ }, "All members"), /*#__PURE__*/React__default.createElement(Button, {
403
+ type: ButtonTypes.SECONDARY,
404
+ size: ButtonSizes.SMALL,
405
+ onClick: function onClick() {
406
+ return setShowInviteMembers(true);
407
+ }
408
+ }, "Invite members")), showAllMembers && /*#__PURE__*/React__default.createElement(MembersModal, {
409
+ onCancel: function onCancel() {
410
+ setShowAllMembers(false);
411
+ refershList();
412
+ }
413
+ }), showInviteMembers && /*#__PURE__*/React__default.createElement(InviteMembers, {
414
+ onSubmit: function onSubmit() {
415
+ setShowInviteMembers(false);
416
+ refershList();
417
+ },
418
+ onCancel: function onCancel() {
419
+ return setShowInviteMembers(false);
420
+ }
421
+ }));
422
+ };
423
+
424
+ export { MemberList as M };
425
+ //# sourceMappingURL=MemberList-6655cba0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemberList-6655cba0.js","sources":["../src/smart-components/ChannelSettings/components/AdminPanel/MembersModal.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/InviteMembersModal.tsx","../src/smart-components/ChannelSettings/components/AdminPanel/MemberList.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useEffect,\n useState,\n} from 'react'\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport { noop } from '../../../../utils/utils';\n\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function MembersModal({ onCancel }: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [memberQuery, setMemberQuery] = useState(null);\n\n const { channel } = useChannelSettings();\n const state = useSendbirdStateContext();\n const currentUser = state?.config?.userId;\n\n useEffect(() => {\n const memberListQuery = channel.createMemberListQuery();\n memberListQuery.limit = 20;\n memberListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n });\n setMemberQuery(memberListQuery);\n }, [])\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText=\"All Members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = memberQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n memberQuery.next((o, error) => {\n if (error) {\n return;\n }\n setMembers([\n ...members,\n ...o,\n ])\n });\n }\n }}\n >\n { members.map((member) => (\n <UserListItem\n user={member}\n key={member.userId}\n currentUser={currentUser}\n action={({ parentRef, actionRef }) => (\n <>\n {channel.myRole === 'operator' && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if ((member.role !== 'operator')) {\n channel.addOperators([member.userId], () => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n role: 'operator',\n };\n }\n return m;\n }));\n closeDropdown();\n });\n } else {\n channel.removeOperators([member.userId], () => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n role: '',\n };\n }\n return m;\n }));\n closeDropdown();\n });\n }\n }}\n >\n { member.role !== 'operator' ? 'Promote to operator' : 'Demote operator'}\n </MenuItem>\n {\n // No muted members in broadcast channel\n !channel.isBroadcast && (\n <MenuItem\n onClick={() => {\n if (member.isMuted) {\n channel.unmuteUser(member, () => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n isMuted: false,\n };\n }\n return m;\n }));\n closeDropdown();\n })\n } else {\n channel.muteUser(member, () => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n isMuted: true,\n };\n }\n return m;\n }));\n closeDropdown();\n });\n }\n }}\n >\n { member.isMuted ? 'Unmute' : 'Mute' }\n </MenuItem>\n )\n }\n <MenuItem\n onClick={() => {\n channel.banUser(member, -1, '', () => {\n setMembers(members.filter(({ userId }) => {\n return userId !== member.userId;\n }));\n });\n }}\n >\n Ban\n </MenuItem>\n </MenuItems>\n )}\n />\n )}\n </>\n )}\n />\n ))}\n </div>\n </Modal>\n </div>\n );\n}\n","import React, { ReactElement, useEffect, useState } from 'react'\n\nimport Modal from '../../../../ui/Modal';\nimport { Type as ButtonType } from '../../../../ui/Button/type';\nimport UserListItem from '../../../../ui/UserListItem';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n onSubmit(members: Array<string>): void;\n}\n\nexport default function InviteMembers({\n onCancel,\n onSubmit,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [selectedMembers, setSelectedMembers] = useState({});\n const [userQuery, setUserQuery] = useState(null);\n\n const state = useSendbirdStateContext();\n const sdk = state?.stores?.sdkStore?.sdk;\n\n const { channel } = useChannelSettings();\n\n useEffect(() => {\n const userListQuery = sdk?.createApplicationUserListQuery();\n userListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n });\n setUserQuery(userListQuery);\n }, [sdk])\n return (\n <div>\n <Modal\n disabled={Object.keys(selectedMembers).length === 0}\n submitText=\"Invite\"\n type={ButtonType.PRIMARY}\n onCancel={() => onCancel()}\n onSubmit={() => {\n const members = Object.keys(selectedMembers).filter((m) => selectedMembers[m]);\n channel.inviteWithUserIds(members).then(() => {\n onSubmit(members);\n });\n }}\n titleText=\"Select members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = userQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n if (hasNext && fetchMore) {\n userQuery.next((users, error) => {\n if (error) {\n return;\n }\n setMembers([\n ...members,\n ...users,\n ])\n });\n }\n }}\n >\n <div className=\"sendbird-more-members__popup-scroll__inner\">\n { members.map((member) => (\n <UserListItem\n checkBox\n checked={selectedMembers[member.userId]}\n onChange={\n (event) => {\n const modifiedSelectedMembers = {\n ...selectedMembers,\n [event.target.id]: event.target.checked,\n };\n if (!event.target.checked) {\n delete modifiedSelectedMembers[event.target.id];\n }\n setSelectedMembers(modifiedSelectedMembers);\n }\n }\n user={member}\n key={member.userId}\n />\n ))}\n </div>\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n} from 'react';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport UserListItem from '../UserListItem';\nimport MembersModal from './MembersModal';\nimport InviteMembers from './InviteMembersModal';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\nimport uuidv4 from '../../../../utils/uuid';\n\nexport const MemberList = (): ReactElement => {\n const [members, setMembers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showAllMembers, setShowAllMembers] = useState(false);\n const [showInviteMembers, setShowInviteMembers] = useState(false);\n\n const state = useSendbirdStateContext();\n const {\n channel,\n setChannelUpdateId,\n } = useChannelSettings();\n\n const sdk = state?.stores?.sdkStore?.sdk;\n const userId = state?.config?.userId;\n\n useEffect(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const memberUserListQuery = channel.createMemberListQuery();\n memberUserListQuery.limit = 10;\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refershList = useCallback(\n () => {\n if (!channel) {\n setMembers([]);\n return;\n }\n const memberUserListQuery = channel.createMemberListQuery();\n memberUserListQuery.limit = 10;\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n setChannelUpdateId(uuidv4());\n });\n },\n [channel],\n );\n\n return (\n <>\n {\n members.map((member) => (\n <UserListItem\n key={member.userId}\n user={member}\n currentUser={sdk.currentUser.userId}\n action={\n (userId !== member.userId)\n ? ({ actionRef, parentRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if ((member.role !== 'operator')) {\n channel.addOperators([member.userId], () => {\n refershList();\n closeDropdown();\n });\n } else {\n channel.removeOperators([member.userId], () => {\n refershList();\n closeDropdown();\n });\n }\n }}\n >\n {member.role !== 'operator' ? 'Promote to operator' : 'Demote operator'}\n </MenuItem>\n {\n // No muted members in broadcast channel\n !channel.isBroadcast && (\n <MenuItem\n onClick={() => {\n if (member.isMuted) {\n channel.unmuteUser(member, () => {\n refershList();\n closeDropdown();\n })\n } else {\n channel.muteUser(member, () => {\n refershList();\n closeDropdown();\n });\n }\n }}\n >\n { member.isMuted ? 'Unmute' : 'Mute'}\n </MenuItem>\n )\n }\n <MenuItem\n onClick={() => {\n channel.banUser(member, -1, '', () => {\n refershList();\n closeDropdown();\n });\n }}\n >\n Ban\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n }\n />\n ))\n }\n <div\n className=\"sendbird-channel-settings-accordion__footer\"\n >\n {\n hasNext && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowAllMembers(true)}\n >\n All members\n </Button>\n )\n }\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowInviteMembers(true)}\n >\n Invite members\n </Button>\n </div>\n {\n showAllMembers && (\n <MembersModal\n onCancel={() => {\n setShowAllMembers(false);\n refershList();\n }}\n />\n )\n }\n {\n showInviteMembers && (\n <InviteMembers\n onSubmit={() => {\n setShowInviteMembers(false);\n refershList();\n }}\n onCancel={() => setShowInviteMembers(false)}\n />\n )\n }\n </>\n );\n}\n\nexport default MemberList;\n"],"names":["MembersModal","_a","onCancel","_c","useState","members","setMembers","_d","memberQuery","setMemberQuery","channel","useChannelSettings","state","useSendbirdStateContext","currentUser","config","userId","useEffect","memberListQuery","createMemberListQuery","limit","next","error","React","noop","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","o","map","member","parentRef","actionRef","myRole","toggleDropdown","IconTypes","MORE","IconColors","CONTENT_INVERSE","closeDropdown","role","addOperators","m","removeOperators","isBroadcast","isMuted","unmuteUser","muteUser","banUser","filter","InviteMembers","onSubmit","_e","selectedMembers","setSelectedMembers","_f","userQuery","setUserQuery","sdk","stores","sdkStore","userListQuery","createApplicationUserListQuery","Object","keys","length","ButtonType","PRIMARY","inviteWithUserIds","then","users","event","modifiedSelectedMembers","id","checked","MemberList","setHasNext","showAllMembers","setShowAllMembers","_g","showInviteMembers","setShowInviteMembers","_h","setChannelUpdateId","memberUserListQuery","refershList","useCallback","uuidv4","UserListItem","ButtonTypes","SECONDARY","ButtonSizes","SMALL"],"mappings":"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"}
@@ -0,0 +1,151 @@
1
+ import React__default, { useContext } from 'react';
2
+ import { a as LocalizationContext } from '../../LocalizationContext-e4391013.js';
3
+ import { useMessageSearch } from '../context.js';
4
+ import MessageSearchItem from '../../ui/MessageSearchItem.js';
5
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-e818a8a3.js';
6
+ import MessageSearchFileItem from '../../ui/MessageSearchFileItem.js';
7
+ import '../../stringSet-4f6eaa60.js';
8
+ import '../../index-6ebf7894.js';
9
+ import '../../useSendbirdStateContext.js';
10
+ import '../../withSendBird.js';
11
+ import '../../_rollupPluginBabelHelpers-20904f21.js';
12
+ import '../../tslib.es6-e3c44017.js';
13
+ import '../../index-770d7112.js';
14
+ import '../../index-1718324d.js';
15
+ import '../../index-cd21929d.js';
16
+ import '../../ui/Avatar.js';
17
+ import '../../ui/ImageRenderer.js';
18
+ import 'prop-types';
19
+ import '../../ui/Icon.js';
20
+ import '../../uuid-b0c93400.js';
21
+ import '../../index-7a51bd16.js';
22
+ import '../../ui/Loader.js';
23
+
24
+ var COMPONENT_CLASS_NAME = 'sendbird-message-search';
25
+ var MessageSearchUI = function MessageSearchUI(_a) {
26
+ var renderPlaceHolderError = _a.renderPlaceHolderError,
27
+ renderPlaceHolderLoading = _a.renderPlaceHolderLoading,
28
+ renderPlaceHolderNoString = _a.renderPlaceHolderNoString,
29
+ renderPlaceHolderEmptyList = _a.renderPlaceHolderEmptyList,
30
+ renderSearchItem = _a.renderSearchItem;
31
+
32
+ var _b = useMessageSearch(),
33
+ isInvalid = _b.isInvalid,
34
+ searchString = _b.searchString,
35
+ requestString = _b.requestString,
36
+ currentChannel = _b.currentChannel,
37
+ retryCount = _b.retryCount,
38
+ setRetryCount = _b.setRetryCount,
39
+ loading = _b.loading,
40
+ scrollRef = _b.scrollRef,
41
+ hasMoreResult = _b.hasMoreResult,
42
+ onScroll = _b.onScroll,
43
+ allMessages = _b.allMessages,
44
+ onResultClick = _b.onResultClick,
45
+ selectedMessageId = _b.selectedMessageId,
46
+ setSelectedMessageId = _b.setSelectedMessageId;
47
+
48
+ var stringSet = useContext(LocalizationContext).stringSet;
49
+
50
+ var handleRetryToConnect = function handleRetryToConnect() {
51
+ setRetryCount(retryCount + 1);
52
+ };
53
+
54
+ var handleOnScroll = function handleOnScroll(e) {
55
+ var scrollElement = e.target;
56
+ var scrollTop = scrollElement.scrollTop,
57
+ scrollHeight = scrollElement.scrollHeight,
58
+ clientHeight = scrollElement.clientHeight;
59
+
60
+ if (!hasMoreResult) {
61
+ return;
62
+ }
63
+
64
+ if (scrollTop + clientHeight >= scrollHeight - 1) {
65
+ onScroll(function () {// after load more searched messages
66
+ });
67
+ }
68
+ };
69
+
70
+ var getChannelName = function getChannelName() {
71
+ if (currentChannel && (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name) && (currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name) !== 'Group Channel') {
72
+ return currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name;
73
+ }
74
+
75
+ if (currentChannel && ((currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name) === 'Group Channel' || !(currentChannel === null || currentChannel === void 0 ? void 0 : currentChannel.name))) {
76
+ return currentChannel.members.map(function (member) {
77
+ return member.nickname || stringSet.NO_NAME;
78
+ }).join(', ');
79
+ }
80
+
81
+ return stringSet.NO_TITLE;
82
+ };
83
+
84
+ if (isInvalid && searchString && requestString) {
85
+ return (renderPlaceHolderError === null || renderPlaceHolderError === void 0 ? void 0 : renderPlaceHolderError()) || /*#__PURE__*/React__default.createElement("div", {
86
+ className: COMPONENT_CLASS_NAME
87
+ }, /*#__PURE__*/React__default.createElement(PlaceHolder, {
88
+ type: PlaceHolderTypes.WRONG,
89
+ retryToConnect: handleRetryToConnect
90
+ }));
91
+ }
92
+
93
+ if (loading && searchString && requestString) {
94
+ return (renderPlaceHolderLoading === null || renderPlaceHolderLoading === void 0 ? void 0 : renderPlaceHolderLoading()) || /*#__PURE__*/React__default.createElement("div", {
95
+ className: COMPONENT_CLASS_NAME
96
+ }, /*#__PURE__*/React__default.createElement(PlaceHolder, {
97
+ type: PlaceHolderTypes.SEARCHING
98
+ }));
99
+ }
100
+
101
+ if (!searchString) {
102
+ return (renderPlaceHolderNoString === null || renderPlaceHolderNoString === void 0 ? void 0 : renderPlaceHolderNoString()) || /*#__PURE__*/React__default.createElement("div", {
103
+ className: COMPONENT_CLASS_NAME
104
+ }, /*#__PURE__*/React__default.createElement(PlaceHolder, {
105
+ type: PlaceHolderTypes.SEARCH_IN,
106
+ searchInString: getChannelName()
107
+ }));
108
+ }
109
+
110
+ return /*#__PURE__*/React__default.createElement("div", {
111
+ className: COMPONENT_CLASS_NAME,
112
+ onScroll: handleOnScroll,
113
+ ref: scrollRef
114
+ }, allMessages.length > 0 ? allMessages.map(function (message) {
115
+ if (renderSearchItem) {
116
+ return renderSearchItem({
117
+ message: message,
118
+ onResultClick: onResultClick
119
+ });
120
+ }
121
+
122
+ if (message.messageType === 'file') {
123
+ return /*#__PURE__*/React__default.createElement(MessageSearchFileItem, {
124
+ className: COMPONENT_CLASS_NAME + "__message-search-item",
125
+ message: message,
126
+ key: message.messageId,
127
+ selected: selectedMessageId === message.messageId,
128
+ onClick: function onClick() {
129
+ onResultClick(message);
130
+ setSelectedMessageId(message.messageId);
131
+ }
132
+ });
133
+ }
134
+
135
+ return /*#__PURE__*/React__default.createElement(MessageSearchItem, {
136
+ className: COMPONENT_CLASS_NAME + "__message-search-item",
137
+ message: message,
138
+ key: message.messageId,
139
+ selected: selectedMessageId === message.messageId,
140
+ onClick: function onClick() {
141
+ onResultClick(message);
142
+ setSelectedMessageId(message.messageId);
143
+ }
144
+ });
145
+ }) : (renderPlaceHolderEmptyList === null || renderPlaceHolderEmptyList === void 0 ? void 0 : renderPlaceHolderEmptyList()) || /*#__PURE__*/React__default.createElement(PlaceHolder, {
146
+ type: PlaceHolderTypes.NO_RESULTS
147
+ }));
148
+ };
149
+
150
+ export { MessageSearchUI, MessageSearchUI as default };
151
+ //# sourceMappingURL=MessageSearchUI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageSearchUI.js","sources":["../../../src/smart-components/MessageSearch/components/MessageSearchUI/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport './index.scss';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useMessageSearch } from '../../context/MessageSearchProvider';\n\nimport MessageSearchItem from '../../../../ui/MessageSearchItem';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport MessageSearchFileItem from '../../../../ui/MessageSearchFileItem';\nimport { ClientSentMessages } from '../../../../types';\n\n\nconst COMPONENT_CLASS_NAME = 'sendbird-message-search';\n\nexport interface MessageSearchUIProps {\n renderPlaceHolderError?: (props: void) => React.ReactNode;\n renderPlaceHolderLoading?: (props: void) => React.ReactNode;\n renderPlaceHolderNoString?: (props: void) => React.ReactNode;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;\n renderSearchItem?(\n {\n message,\n onResultClick,\n }: {\n message: ClientSentMessages,\n onResultClick?: (message: ClientSentMessages) => void,\n }\n ): JSX.Element;\n}\n\nexport const MessageSearchUI: React.FC<MessageSearchUIProps> = ({\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderNoString,\n renderPlaceHolderEmptyList,\n renderSearchItem,\n}: MessageSearchUIProps) => {\n const {\n isInvalid,\n searchString,\n requestString,\n currentChannel,\n retryCount,\n setRetryCount,\n loading,\n scrollRef,\n hasMoreResult,\n onScroll,\n allMessages,\n onResultClick,\n selectedMessageId,\n setSelectedMessageId,\n } = useMessageSearch();\n\n const { stringSet } = useContext(LocalizationContext);\n\n const handleRetryToConnect = () => {\n setRetryCount(retryCount + 1);\n };\n\n const handleOnScroll = (e) => {\n const scrollElement = e.target;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = scrollElement;\n\n if (!hasMoreResult) {\n return;\n }\n if (scrollTop + clientHeight >= scrollHeight - 1) {\n onScroll(() => {\n // after load more searched messages\n });\n }\n };\n\n const getChannelName = () => {\n if (currentChannel && currentChannel?.name && currentChannel?.name !== 'Group Channel') {\n return currentChannel?.name;\n }\n if (currentChannel && (currentChannel?.name === 'Group Channel' || !currentChannel?.name)) {\n return currentChannel.members.map((member) => member.nickname || stringSet.NO_NAME).join(', ');\n }\n return stringSet.NO_TITLE;\n };\n\n if (isInvalid && searchString && requestString) {\n return renderPlaceHolderError?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={handleRetryToConnect}\n />\n </div>\n );\n }\n\n if (loading && searchString && requestString) {\n return renderPlaceHolderLoading?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder type={PlaceHolderTypes.SEARCHING} />\n </div>\n );\n }\n\n if (!searchString) {\n return renderPlaceHolderNoString?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder\n type={PlaceHolderTypes.SEARCH_IN}\n searchInString={getChannelName()}\n />\n </div>\n );\n }\n\n return (\n <div\n className={COMPONENT_CLASS_NAME}\n onScroll={handleOnScroll}\n ref={scrollRef}\n >\n {\n (allMessages.length > 0)\n ? (\n allMessages.map((message) => {\n if (renderSearchItem) {\n return renderSearchItem({ message, onResultClick });\n }\n if (message.messageType === 'file') {\n return (\n <MessageSearchFileItem\n className={`${COMPONENT_CLASS_NAME}__message-search-item`}\n message={message}\n key={message.messageId}\n selected={(selectedMessageId === message.messageId)}\n onClick={() => {\n onResultClick(message);\n setSelectedMessageId(message.messageId);\n }}\n />\n );\n }\n return (\n <MessageSearchItem\n className={`${COMPONENT_CLASS_NAME}__message-search-item`}\n message={message}\n key={message.messageId}\n selected={(selectedMessageId === message.messageId)}\n onClick={() => {\n onResultClick(message);\n setSelectedMessageId(message.messageId);\n }}\n />\n );\n })\n )\n : renderPlaceHolderEmptyList?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_RESULTS} />\n )\n }\n </div>\n );\n};\n\nexport default MessageSearchUI;\n"],"names":["COMPONENT_CLASS_NAME","MessageSearchUI","_a","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderNoString","renderPlaceHolderEmptyList","renderSearchItem","_b","useMessageSearch","isInvalid","searchString","requestString","currentChannel","retryCount","setRetryCount","loading","scrollRef","hasMoreResult","onScroll","allMessages","onResultClick","selectedMessageId","setSelectedMessageId","stringSet","useContext","LocalizationContext","handleRetryToConnect","handleOnScroll","e","scrollElement","target","scrollTop","scrollHeight","clientHeight","getChannelName","name","members","map","member","nickname","NO_NAME","join","NO_TITLE","React","PlaceHolderTypes","WRONG","SEARCHING","SEARCH_IN","length","message","messageType","messageId","NO_RESULTS"],"mappings":"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"}