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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (585) hide show
  1. package/App.js +294 -0
  2. package/App.js.map +1 -0
  3. package/Channel/components/ChannelHeader.js +116 -0
  4. package/Channel/components/ChannelHeader.js.map +1 -0
  5. package/Channel/components/ChannelUI.js +172 -0
  6. package/Channel/components/ChannelUI.js.map +1 -0
  7. package/Channel/components/FileViewer.js +150 -0
  8. package/Channel/components/FileViewer.js.map +1 -0
  9. package/Channel/components/FrozenNotification.js +20 -0
  10. package/Channel/components/FrozenNotification.js.map +1 -0
  11. package/Channel/components/Message.js +232 -0
  12. package/Channel/components/Message.js.map +1 -0
  13. package/Channel/components/MessageInput.js +87 -0
  14. package/Channel/components/MessageInput.js.map +1 -0
  15. package/Channel/components/MessageList.js +227 -0
  16. package/Channel/components/MessageList.js.map +1 -0
  17. package/Channel/components/RemoveMessageModal.js +52 -0
  18. package/Channel/components/RemoveMessageModal.js.map +1 -0
  19. package/Channel/components/TypingIndicator.js +97 -0
  20. package/Channel/components/TypingIndicator.js.map +1 -0
  21. package/Channel/components/UnreadCount.js +41 -0
  22. package/Channel/components/UnreadCount.js.map +1 -0
  23. package/Channel/context.js +23 -0
  24. package/Channel/context.js.map +1 -0
  25. package/Channel.js +99 -0
  26. package/Channel.js.map +1 -0
  27. package/ChannelList/components/AddChannel.js +70 -0
  28. package/ChannelList/components/AddChannel.js.map +1 -0
  29. package/ChannelList/components/ChannelListHeader.js +62 -0
  30. package/ChannelList/components/ChannelListHeader.js.map +1 -0
  31. package/ChannelList/components/ChannelListUI.js +213 -0
  32. package/ChannelList/components/ChannelListUI.js.map +1 -0
  33. package/ChannelList/components/ChannelPreview.js +177 -0
  34. package/ChannelList/components/ChannelPreview.js.map +1 -0
  35. package/ChannelList/components/ChannelPreviewAction.js +131 -0
  36. package/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  37. package/ChannelList/context.js +13 -0
  38. package/ChannelList/context.js.map +1 -0
  39. package/ChannelList.js +80 -0
  40. package/ChannelList.js.map +1 -0
  41. package/ChannelListProvider-0b0c2c40.js +861 -0
  42. package/ChannelListProvider-0b0c2c40.js.map +1 -0
  43. package/ChannelProvider-459e463f.js +2083 -0
  44. package/ChannelProvider-459e463f.js.map +1 -0
  45. package/ChannelSettings/components/AdminPanel.js +905 -0
  46. package/ChannelSettings/components/AdminPanel.js.map +1 -0
  47. package/ChannelSettings/components/ChannelProfile.js +102 -0
  48. package/ChannelSettings/components/ChannelProfile.js.map +1 -0
  49. package/ChannelSettings/components/ChannelSettingsUI.js +152 -0
  50. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  51. package/ChannelSettings/components/EditDetailsModal.js +154 -0
  52. package/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  53. package/ChannelSettings/components/LeaveChannel.js +53 -0
  54. package/ChannelSettings/components/LeaveChannel.js.map +1 -0
  55. package/ChannelSettings/components/UserListItem.js +105 -0
  56. package/ChannelSettings/components/UserListItem.js.map +1 -0
  57. package/ChannelSettings/components/UserPanel.js +79 -0
  58. package/ChannelSettings/components/UserPanel.js.map +1 -0
  59. package/ChannelSettings/context.js +93 -0
  60. package/ChannelSettings/context.js.map +1 -0
  61. package/ChannelSettings.js +71 -0
  62. package/ChannelSettings.js.map +1 -0
  63. package/CreateChannel/components/CreateChannelUI.js +53 -0
  64. package/CreateChannel/components/CreateChannelUI.js.map +1 -0
  65. package/CreateChannel/components/InviteMembers.js +184 -0
  66. package/CreateChannel/components/InviteMembers.js.map +1 -0
  67. package/CreateChannel/components/SelectChannelType.js +131 -0
  68. package/CreateChannel/components/SelectChannelType.js.map +1 -0
  69. package/CreateChannel/context.js +8 -0
  70. package/CreateChannel/context.js.map +1 -0
  71. package/CreateChannel.js +53 -0
  72. package/CreateChannel.js.map +1 -0
  73. package/CreateChannelProvider-c617a1bb.js +53 -0
  74. package/CreateChannelProvider-c617a1bb.js.map +1 -0
  75. package/EditUserProfile/components/EditUserProfileUI.js +26 -0
  76. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  77. package/EditUserProfile/context.js +27 -0
  78. package/EditUserProfile/context.js.map +1 -0
  79. package/EditUserProfile.js +39 -0
  80. package/EditUserProfile.js.map +1 -0
  81. package/LocalizationContext-e4391013.js +22 -0
  82. package/LocalizationContext-e4391013.js.map +1 -0
  83. package/MemberList-6655cba0.js +425 -0
  84. package/MemberList-6655cba0.js.map +1 -0
  85. package/MessageSearch/components/MessageSearchUI.js +151 -0
  86. package/MessageSearch/components/MessageSearchUI.js.map +1 -0
  87. package/MessageSearch/context.js +392 -0
  88. package/MessageSearch/context.js.map +1 -0
  89. package/MessageSearch.js +146 -0
  90. package/MessageSearch.js.map +1 -0
  91. package/OpenChannel/components/FrozenChannelNotification.js +20 -0
  92. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  93. package/OpenChannel/components/OpenChannelHeader.js +78 -0
  94. package/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  95. package/OpenChannel/components/OpenChannelInput.js +52 -0
  96. package/OpenChannel/components/OpenChannelInput.js.map +1 -0
  97. package/OpenChannel/components/OpenChannelMessage.js +278 -0
  98. package/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  99. package/OpenChannel/components/OpenChannelMessageList.js +153 -0
  100. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  101. package/OpenChannel/components/OpenChannelUI.js +105 -0
  102. package/OpenChannel/components/OpenChannelUI.js.map +1 -0
  103. package/OpenChannel/context.js +14 -0
  104. package/OpenChannel/context.js.map +1 -0
  105. package/OpenChannel.js +76 -0
  106. package/OpenChannel.js.map +1 -0
  107. package/OpenChannelProvider-a7691eb4.js +2011 -0
  108. package/OpenChannelProvider-a7691eb4.js.map +1 -0
  109. package/OpenChannelSettings/components/EditDetailsModal.js +149 -0
  110. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  111. package/OpenChannelSettings/components/OpenChannelProfile.js +81 -0
  112. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  113. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +104 -0
  114. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  115. package/OpenChannelSettings/components/OperatorUI.js +184 -0
  116. package/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  117. package/OpenChannelSettings/components/ParticipantUI.js +172 -0
  118. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  119. package/OpenChannelSettings/context.js +64 -0
  120. package/OpenChannelSettings/context.js.map +1 -0
  121. package/OpenChannelSettings.js +64 -0
  122. package/OpenChannelSettings.js.map +1 -0
  123. package/SendbirdProvider.js +740 -0
  124. package/SendbirdProvider.js.map +1 -0
  125. package/UserProfileContext-865db5e6.js +38 -0
  126. package/UserProfileContext-865db5e6.js.map +1 -0
  127. package/_rollupPluginBabelHelpers-20904f21.js +233 -0
  128. package/_rollupPluginBabelHelpers-20904f21.js.map +1 -0
  129. package/actionTypes-1e3a4074.js +6 -0
  130. package/actionTypes-1e3a4074.js.map +1 -0
  131. package/cjs/App.js +301 -0
  132. package/cjs/App.js.map +1 -0
  133. package/cjs/Channel/components/ChannelHeader.js +122 -0
  134. package/cjs/Channel/components/ChannelHeader.js.map +1 -0
  135. package/cjs/Channel/components/ChannelUI.js +178 -0
  136. package/cjs/Channel/components/ChannelUI.js.map +1 -0
  137. package/cjs/Channel/components/FileViewer.js +159 -0
  138. package/cjs/Channel/components/FileViewer.js.map +1 -0
  139. package/cjs/Channel/components/FrozenNotification.js +26 -0
  140. package/cjs/Channel/components/FrozenNotification.js.map +1 -0
  141. package/cjs/Channel/components/Message.js +238 -0
  142. package/cjs/Channel/components/Message.js.map +1 -0
  143. package/cjs/Channel/components/MessageInput.js +93 -0
  144. package/cjs/Channel/components/MessageInput.js.map +1 -0
  145. package/cjs/Channel/components/MessageList.js +233 -0
  146. package/cjs/Channel/components/MessageList.js.map +1 -0
  147. package/cjs/Channel/components/RemoveMessageModal.js +58 -0
  148. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -0
  149. package/cjs/Channel/components/TypingIndicator.js +103 -0
  150. package/cjs/Channel/components/TypingIndicator.js.map +1 -0
  151. package/cjs/Channel/components/UnreadCount.js +47 -0
  152. package/cjs/Channel/components/UnreadCount.js.map +1 -0
  153. package/cjs/Channel/context.js +32 -0
  154. package/cjs/Channel/context.js.map +1 -0
  155. package/cjs/Channel.js +105 -0
  156. package/cjs/Channel.js.map +1 -0
  157. package/cjs/ChannelList/components/AddChannel.js +79 -0
  158. package/cjs/ChannelList/components/AddChannel.js.map +1 -0
  159. package/cjs/ChannelList/components/ChannelListHeader.js +68 -0
  160. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -0
  161. package/cjs/ChannelList/components/ChannelListUI.js +219 -0
  162. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -0
  163. package/cjs/ChannelList/components/ChannelPreview.js +183 -0
  164. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -0
  165. package/cjs/ChannelList/components/ChannelPreviewAction.js +138 -0
  166. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -0
  167. package/cjs/ChannelList/context.js +22 -0
  168. package/cjs/ChannelList/context.js.map +1 -0
  169. package/cjs/ChannelList.js +86 -0
  170. package/cjs/ChannelList.js.map +1 -0
  171. package/cjs/ChannelListProvider-5a152618.js +873 -0
  172. package/cjs/ChannelListProvider-5a152618.js.map +1 -0
  173. package/cjs/ChannelProvider-f1fb0108.js +2096 -0
  174. package/cjs/ChannelProvider-f1fb0108.js.map +1 -0
  175. package/cjs/ChannelSettings/components/AdminPanel.js +911 -0
  176. package/cjs/ChannelSettings/components/AdminPanel.js.map +1 -0
  177. package/cjs/ChannelSettings/components/ChannelProfile.js +108 -0
  178. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -0
  179. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +158 -0
  180. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -0
  181. package/cjs/ChannelSettings/components/EditDetailsModal.js +160 -0
  182. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -0
  183. package/cjs/ChannelSettings/components/LeaveChannel.js +59 -0
  184. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -0
  185. package/cjs/ChannelSettings/components/UserListItem.js +111 -0
  186. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -0
  187. package/cjs/ChannelSettings/components/UserPanel.js +85 -0
  188. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -0
  189. package/cjs/ChannelSettings/context.js +102 -0
  190. package/cjs/ChannelSettings/context.js.map +1 -0
  191. package/cjs/ChannelSettings.js +77 -0
  192. package/cjs/ChannelSettings.js.map +1 -0
  193. package/cjs/CreateChannel/components/CreateChannelUI.js +59 -0
  194. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -0
  195. package/cjs/CreateChannel/components/InviteMembers.js +190 -0
  196. package/cjs/CreateChannel/components/InviteMembers.js.map +1 -0
  197. package/cjs/CreateChannel/components/SelectChannelType.js +137 -0
  198. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -0
  199. package/cjs/CreateChannel/context.js +17 -0
  200. package/cjs/CreateChannel/context.js.map +1 -0
  201. package/cjs/CreateChannel.js +59 -0
  202. package/cjs/CreateChannel.js.map +1 -0
  203. package/cjs/CreateChannelProvider-df42106f.js +60 -0
  204. package/cjs/CreateChannelProvider-df42106f.js.map +1 -0
  205. package/cjs/EditUserProfile/components/EditUserProfileUI.js +32 -0
  206. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -0
  207. package/cjs/EditUserProfile/context.js +36 -0
  208. package/cjs/EditUserProfile/context.js.map +1 -0
  209. package/cjs/EditUserProfile.js +45 -0
  210. package/cjs/EditUserProfile.js.map +1 -0
  211. package/cjs/LocalizationContext-68e55e2a.js +30 -0
  212. package/cjs/LocalizationContext-68e55e2a.js.map +1 -0
  213. package/cjs/MemberList-dc84e303.js +431 -0
  214. package/cjs/MemberList-dc84e303.js.map +1 -0
  215. package/cjs/MessageSearch/components/MessageSearchUI.js +160 -0
  216. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -0
  217. package/cjs/MessageSearch/context.js +401 -0
  218. package/cjs/MessageSearch/context.js.map +1 -0
  219. package/cjs/MessageSearch.js +152 -0
  220. package/cjs/MessageSearch.js.map +1 -0
  221. package/cjs/OpenChannel/components/FrozenChannelNotification.js +26 -0
  222. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -0
  223. package/cjs/OpenChannel/components/OpenChannelHeader.js +84 -0
  224. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -0
  225. package/cjs/OpenChannel/components/OpenChannelInput.js +58 -0
  226. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -0
  227. package/cjs/OpenChannel/components/OpenChannelMessage.js +284 -0
  228. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -0
  229. package/cjs/OpenChannel/components/OpenChannelMessageList.js +159 -0
  230. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -0
  231. package/cjs/OpenChannel/components/OpenChannelUI.js +111 -0
  232. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -0
  233. package/cjs/OpenChannel/context.js +23 -0
  234. package/cjs/OpenChannel/context.js.map +1 -0
  235. package/cjs/OpenChannel.js +82 -0
  236. package/cjs/OpenChannel.js.map +1 -0
  237. package/cjs/OpenChannelProvider-7a1a996f.js +2020 -0
  238. package/cjs/OpenChannelProvider-7a1a996f.js.map +1 -0
  239. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +155 -0
  240. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -0
  241. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +87 -0
  242. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -0
  243. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +110 -0
  244. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -0
  245. package/cjs/OpenChannelSettings/components/OperatorUI.js +194 -0
  246. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -0
  247. package/cjs/OpenChannelSettings/components/ParticipantUI.js +178 -0
  248. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -0
  249. package/cjs/OpenChannelSettings/context.js +73 -0
  250. package/cjs/OpenChannelSettings/context.js.map +1 -0
  251. package/cjs/OpenChannelSettings.js +70 -0
  252. package/cjs/OpenChannelSettings.js.map +1 -0
  253. package/cjs/SendbirdProvider.js +749 -0
  254. package/cjs/SendbirdProvider.js.map +1 -0
  255. package/cjs/UserProfileContext-3533547d.js +46 -0
  256. package/cjs/UserProfileContext-3533547d.js.map +1 -0
  257. package/cjs/_rollupPluginBabelHelpers-fc14118c.js +243 -0
  258. package/cjs/_rollupPluginBabelHelpers-fc14118c.js.map +1 -0
  259. package/cjs/actionTypes-bc47f97a.js +10 -0
  260. package/cjs/actionTypes-bc47f97a.js.map +1 -0
  261. package/cjs/color-4afb15fb.js +42 -0
  262. package/cjs/color-4afb15fb.js.map +1 -0
  263. package/cjs/compareIds-01306377.js +20 -0
  264. package/cjs/compareIds-01306377.js.map +1 -0
  265. package/cjs/context-c1f9d650.js +19 -0
  266. package/cjs/context-c1f9d650.js.map +1 -0
  267. package/cjs/index-1044f1ed.js +97 -0
  268. package/cjs/index-1044f1ed.js.map +1 -0
  269. package/cjs/index-1468d245.js +142 -0
  270. package/cjs/index-1468d245.js.map +1 -0
  271. package/cjs/index-4987c8b2.js +175 -0
  272. package/cjs/index-4987c8b2.js.map +1 -0
  273. package/cjs/index-659c9ca5.js +130 -0
  274. package/cjs/index-659c9ca5.js.map +1 -0
  275. package/cjs/index-8becccd8.js +284 -0
  276. package/cjs/index-8becccd8.js.map +1 -0
  277. package/cjs/index-905331fa.js +1880 -0
  278. package/cjs/index-905331fa.js.map +1 -0
  279. package/cjs/index-9dc3863f.js +67 -0
  280. package/cjs/index-9dc3863f.js.map +1 -0
  281. package/cjs/index-aecc8d24.js +9 -0
  282. package/cjs/index-aecc8d24.js.map +1 -0
  283. package/cjs/index-d4880236.js +641 -0
  284. package/cjs/index-d4880236.js.map +1 -0
  285. package/cjs/index-e2bb862c.js +514 -0
  286. package/cjs/index-e2bb862c.js.map +1 -0
  287. package/cjs/index.css +4355 -0
  288. package/cjs/index.css.map +1 -0
  289. package/cjs/index.js +155 -0
  290. package/cjs/index.js.map +1 -0
  291. package/cjs/openChannelUtils-37919a36.js +92 -0
  292. package/cjs/openChannelUtils-37919a36.js.map +1 -0
  293. package/cjs/sendBirdSelectors.js +741 -0
  294. package/cjs/sendBirdSelectors.js.map +1 -0
  295. package/cjs/stringSet-aa544ce5.js +116 -0
  296. package/cjs/stringSet-aa544ce5.js.map +1 -0
  297. package/cjs/topics-8314d425.js +18 -0
  298. package/cjs/topics-8314d425.js.map +1 -0
  299. package/cjs/tslib.es6-4a281a05.js +40 -0
  300. package/cjs/tslib.es6-4a281a05.js.map +1 -0
  301. package/cjs/ui/Accordion.js +74 -0
  302. package/cjs/ui/Accordion.js.map +1 -0
  303. package/cjs/ui/AccordionGroup.js +32 -0
  304. package/cjs/ui/AccordionGroup.js.map +1 -0
  305. package/cjs/ui/AdminMessage.js +44 -0
  306. package/cjs/ui/AdminMessage.js.map +1 -0
  307. package/cjs/ui/Avatar.js +226 -0
  308. package/cjs/ui/Avatar.js.map +1 -0
  309. package/cjs/ui/Badge.js +45 -0
  310. package/cjs/ui/Badge.js.map +1 -0
  311. package/cjs/ui/Button.js +17 -0
  312. package/cjs/ui/Button.js.map +1 -0
  313. package/cjs/ui/ChannelAvatar.js +59 -0
  314. package/cjs/ui/ChannelAvatar.js.map +1 -0
  315. package/cjs/ui/ChannelPreview.js +201 -0
  316. package/cjs/ui/ChannelPreview.js.map +1 -0
  317. package/cjs/ui/ChatHeader.js +145 -0
  318. package/cjs/ui/ChatHeader.js.map +1 -0
  319. package/cjs/ui/Checkbox.js +49 -0
  320. package/cjs/ui/Checkbox.js.map +1 -0
  321. package/cjs/ui/ConnectionStatus.js +34 -0
  322. package/cjs/ui/ConnectionStatus.js.map +1 -0
  323. package/cjs/ui/ContextMenu.js +431 -0
  324. package/cjs/ui/ContextMenu.js.map +1 -0
  325. package/cjs/ui/DateSeparator.js +44 -0
  326. package/cjs/ui/DateSeparator.js.map +1 -0
  327. package/cjs/ui/Dropdown.js +107 -0
  328. package/cjs/ui/Dropdown.js.map +1 -0
  329. package/cjs/ui/EmojiReactions.js +127 -0
  330. package/cjs/ui/EmojiReactions.js.map +1 -0
  331. package/cjs/ui/FileMessageItemBody.js +57 -0
  332. package/cjs/ui/FileMessageItemBody.js.map +1 -0
  333. package/cjs/ui/FileViewer.js +174 -0
  334. package/cjs/ui/FileViewer.js.map +1 -0
  335. package/cjs/ui/Icon.js +1462 -0
  336. package/cjs/ui/Icon.js.map +1 -0
  337. package/cjs/ui/IconButton.js +83 -0
  338. package/cjs/ui/IconButton.js.map +1 -0
  339. package/cjs/ui/ImageRenderer.js +138 -0
  340. package/cjs/ui/ImageRenderer.js.map +1 -0
  341. package/cjs/ui/Input.js +74 -0
  342. package/cjs/ui/Input.js.map +1 -0
  343. package/cjs/ui/Label.js +17 -0
  344. package/cjs/ui/Label.js.map +1 -0
  345. package/cjs/ui/LinkLabel.js +51 -0
  346. package/cjs/ui/LinkLabel.js.map +1 -0
  347. package/cjs/ui/Loader.js +44 -0
  348. package/cjs/ui/Loader.js.map +1 -0
  349. package/cjs/ui/MessageContent.js +328 -0
  350. package/cjs/ui/MessageContent.js.map +1 -0
  351. package/cjs/ui/MessageInput.js +232 -0
  352. package/cjs/ui/MessageInput.js.map +1 -0
  353. package/cjs/ui/MessageItemMenu.js +141 -0
  354. package/cjs/ui/MessageItemMenu.js.map +1 -0
  355. package/cjs/ui/MessageItemReactionMenu.js +112 -0
  356. package/cjs/ui/MessageItemReactionMenu.js.map +1 -0
  357. package/cjs/ui/MessageSearchFileItem.js +130 -0
  358. package/cjs/ui/MessageSearchFileItem.js.map +1 -0
  359. package/cjs/ui/MessageSearchItem.js +93 -0
  360. package/cjs/ui/MessageSearchItem.js.map +1 -0
  361. package/cjs/ui/Modal.js +140 -0
  362. package/cjs/ui/Modal.js.map +1 -0
  363. package/cjs/ui/MutedAvatarOverlay.js +40 -0
  364. package/cjs/ui/MutedAvatarOverlay.js.map +1 -0
  365. package/cjs/ui/OGMessageItemBody.js +97 -0
  366. package/cjs/ui/OGMessageItemBody.js.map +1 -0
  367. package/cjs/ui/OpenChannelAdminMessage.js +27 -0
  368. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -0
  369. package/cjs/ui/OpenChannelAvatar.js +41 -0
  370. package/cjs/ui/OpenChannelAvatar.js.map +1 -0
  371. package/cjs/ui/OpenChannelMessageContent.js +14 -0
  372. package/cjs/ui/OpenChannelMessageContent.js.map +1 -0
  373. package/cjs/ui/OpenchannelConversationHeader.js +73 -0
  374. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -0
  375. package/cjs/ui/OpenchannelFileMessage.js +230 -0
  376. package/cjs/ui/OpenchannelFileMessage.js.map +1 -0
  377. package/cjs/ui/OpenchannelOGMessage.js +345 -0
  378. package/cjs/ui/OpenchannelOGMessage.js.map +1 -0
  379. package/cjs/ui/OpenchannelThumbnailMessage.js +305 -0
  380. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -0
  381. package/cjs/ui/OpenchannelUserMessage.js +264 -0
  382. package/cjs/ui/OpenchannelUserMessage.js.map +1 -0
  383. package/cjs/ui/PlaceHolder.js +20 -0
  384. package/cjs/ui/PlaceHolder.js.map +1 -0
  385. package/cjs/ui/QuoteMessage.js +131 -0
  386. package/cjs/ui/QuoteMessage.js.map +1 -0
  387. package/cjs/ui/QuoteMessageInput.js +99 -0
  388. package/cjs/ui/QuoteMessageInput.js.map +1 -0
  389. package/cjs/ui/ReactionBadge.js +68 -0
  390. package/cjs/ui/ReactionBadge.js.map +1 -0
  391. package/cjs/ui/ReactionButton.js +55 -0
  392. package/cjs/ui/ReactionButton.js.map +1 -0
  393. package/cjs/ui/SortByRow.js +57 -0
  394. package/cjs/ui/SortByRow.js.map +1 -0
  395. package/cjs/ui/TextButton.js +45 -0
  396. package/cjs/ui/TextButton.js.map +1 -0
  397. package/cjs/ui/TextMessageItemBody.js +40 -0
  398. package/cjs/ui/TextMessageItemBody.js.map +1 -0
  399. package/cjs/ui/ThumbnailMessageItemBody.js +82 -0
  400. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -0
  401. package/cjs/ui/Tooltip.js +35 -0
  402. package/cjs/ui/Tooltip.js.map +1 -0
  403. package/cjs/ui/TooltipWrapper.js +65 -0
  404. package/cjs/ui/TooltipWrapper.js.map +1 -0
  405. package/cjs/ui/UnknownMessageItemBody.js +41 -0
  406. package/cjs/ui/UnknownMessageItemBody.js.map +1 -0
  407. package/cjs/ui/UserListItem.js +158 -0
  408. package/cjs/ui/UserListItem.js.map +1 -0
  409. package/cjs/ui/UserProfile.js +87 -0
  410. package/cjs/ui/UserProfile.js.map +1 -0
  411. package/cjs/useSendbirdStateContext.js +22 -0
  412. package/cjs/useSendbirdStateContext.js.map +1 -0
  413. package/cjs/utils-3b0815dc.js +6 -0
  414. package/cjs/utils-3b0815dc.js.map +1 -0
  415. package/cjs/utils-66b3f4ec.js +38 -0
  416. package/cjs/utils-66b3f4ec.js.map +1 -0
  417. package/cjs/utils-cbd3ed99.js +32 -0
  418. package/cjs/utils-cbd3ed99.js.map +1 -0
  419. package/cjs/uuid-1d5ec8b2.js +19 -0
  420. package/cjs/uuid-1d5ec8b2.js.map +1 -0
  421. package/cjs/withSendBird.js +35 -0
  422. package/cjs/withSendBird.js.map +1 -0
  423. package/color-ee3fc5ee.js +39 -0
  424. package/color-ee3fc5ee.js.map +1 -0
  425. package/compareIds-808956f2.js +18 -0
  426. package/compareIds-808956f2.js.map +1 -0
  427. package/context-98ce535c.js +12 -0
  428. package/context-98ce535c.js.map +1 -0
  429. package/index-1718324d.js +280 -0
  430. package/index-1718324d.js.map +1 -0
  431. package/index-5c2c81bc.js +168 -0
  432. package/index-5c2c81bc.js.map +1 -0
  433. package/index-6ebf7894.js +512 -0
  434. package/index-6ebf7894.js.map +1 -0
  435. package/index-770d7112.js +1873 -0
  436. package/index-770d7112.js.map +1 -0
  437. package/index-7a51bd16.js +131 -0
  438. package/index-7a51bd16.js.map +1 -0
  439. package/index-8c72a94a.js +602 -0
  440. package/index-8c72a94a.js.map +1 -0
  441. package/index-942c85a6.js +7 -0
  442. package/index-942c85a6.js.map +1 -0
  443. package/index-acebc2ff.js +87 -0
  444. package/index-acebc2ff.js.map +1 -0
  445. package/index-cd21929d.js +64 -0
  446. package/index-cd21929d.js.map +1 -0
  447. package/index-e818a8a3.js +121 -0
  448. package/index-e818a8a3.js.map +1 -0
  449. package/index.css +4355 -0
  450. package/index.css.map +1 -0
  451. package/index.d.ts +1801 -0
  452. package/index.js.map +1 -0
  453. package/openChannelUtils-56a372e7.js +81 -0
  454. package/openChannelUtils-56a372e7.js.map +1 -0
  455. package/package.json +1 -8
  456. package/sendBirdSelectors.js +713 -0
  457. package/sendBirdSelectors.js.map +1 -0
  458. package/stringSet-4f6eaa60.js +114 -0
  459. package/stringSet-4f6eaa60.js.map +1 -0
  460. package/topics-9442035c.js +10 -0
  461. package/topics-9442035c.js.map +1 -0
  462. package/tslib.es6-e3c44017.js +38 -0
  463. package/tslib.es6-e3c44017.js.map +1 -0
  464. package/ui/Accordion.js +65 -0
  465. package/ui/Accordion.js.map +1 -0
  466. package/ui/AccordionGroup.js +26 -0
  467. package/ui/AccordionGroup.js.map +1 -0
  468. package/ui/AdminMessage.js +37 -0
  469. package/ui/AdminMessage.js.map +1 -0
  470. package/ui/Avatar.js +217 -0
  471. package/ui/Avatar.js.map +1 -0
  472. package/ui/Badge.js +38 -0
  473. package/ui/Badge.js.map +1 -0
  474. package/ui/Button.js +7 -0
  475. package/ui/Button.js.map +1 -0
  476. package/ui/ChannelAvatar.js +53 -0
  477. package/ui/ChannelAvatar.js.map +1 -0
  478. package/ui/ChannelPreview.js +194 -0
  479. package/ui/ChannelPreview.js.map +1 -0
  480. package/ui/ChatHeader.js +138 -0
  481. package/ui/ChatHeader.js.map +1 -0
  482. package/ui/Checkbox.js +42 -0
  483. package/ui/Checkbox.js.map +1 -0
  484. package/ui/ConnectionStatus.js +28 -0
  485. package/ui/ConnectionStatus.js.map +1 -0
  486. package/ui/ContextMenu.js +417 -0
  487. package/ui/ContextMenu.js.map +1 -0
  488. package/ui/DateSeparator.js +37 -0
  489. package/ui/DateSeparator.js.map +1 -0
  490. package/ui/Dropdown.js +97 -0
  491. package/ui/Dropdown.js.map +1 -0
  492. package/ui/EmojiReactions.js +121 -0
  493. package/ui/EmojiReactions.js.map +1 -0
  494. package/ui/FileMessageItemBody.js +51 -0
  495. package/ui/FileMessageItemBody.js.map +1 -0
  496. package/ui/FileViewer.js +164 -0
  497. package/ui/FileViewer.js.map +1 -0
  498. package/ui/Icon.js +1432 -0
  499. package/ui/Icon.js.map +1 -0
  500. package/ui/IconButton.js +76 -0
  501. package/ui/IconButton.js.map +1 -0
  502. package/ui/ImageRenderer.js +131 -0
  503. package/ui/ImageRenderer.js.map +1 -0
  504. package/ui/Input.js +64 -0
  505. package/ui/Input.js.map +1 -0
  506. package/ui/Label.js +6 -0
  507. package/ui/Label.js.map +1 -0
  508. package/ui/LinkLabel.js +40 -0
  509. package/ui/LinkLabel.js.map +1 -0
  510. package/ui/Loader.js +37 -0
  511. package/ui/Loader.js.map +1 -0
  512. package/ui/MessageContent.js +322 -0
  513. package/ui/MessageContent.js.map +1 -0
  514. package/ui/MessageInput.js +225 -0
  515. package/ui/MessageInput.js.map +1 -0
  516. package/ui/MessageItemMenu.js +135 -0
  517. package/ui/MessageItemMenu.js.map +1 -0
  518. package/ui/MessageItemReactionMenu.js +106 -0
  519. package/ui/MessageItemReactionMenu.js.map +1 -0
  520. package/ui/MessageSearchFileItem.js +124 -0
  521. package/ui/MessageSearchFileItem.js.map +1 -0
  522. package/ui/MessageSearchItem.js +87 -0
  523. package/ui/MessageSearchItem.js.map +1 -0
  524. package/ui/Modal.js +128 -0
  525. package/ui/Modal.js.map +1 -0
  526. package/ui/MutedAvatarOverlay.js +34 -0
  527. package/ui/MutedAvatarOverlay.js.map +1 -0
  528. package/ui/OGMessageItemBody.js +91 -0
  529. package/ui/OGMessageItemBody.js.map +1 -0
  530. package/ui/OpenChannelAdminMessage.js +21 -0
  531. package/ui/OpenChannelAdminMessage.js.map +1 -0
  532. package/ui/OpenChannelAvatar.js +35 -0
  533. package/ui/OpenChannelAvatar.js.map +1 -0
  534. package/ui/OpenChannelMessageContent.js +8 -0
  535. package/ui/OpenChannelMessageContent.js.map +1 -0
  536. package/ui/OpenchannelConversationHeader.js +67 -0
  537. package/ui/OpenchannelConversationHeader.js.map +1 -0
  538. package/ui/OpenchannelFileMessage.js +224 -0
  539. package/ui/OpenchannelFileMessage.js.map +1 -0
  540. package/ui/OpenchannelOGMessage.js +339 -0
  541. package/ui/OpenchannelOGMessage.js.map +1 -0
  542. package/ui/OpenchannelThumbnailMessage.js +299 -0
  543. package/ui/OpenchannelThumbnailMessage.js.map +1 -0
  544. package/ui/OpenchannelUserMessage.js +258 -0
  545. package/ui/OpenchannelUserMessage.js.map +1 -0
  546. package/ui/PlaceHolder.js +11 -0
  547. package/ui/PlaceHolder.js.map +1 -0
  548. package/ui/QuoteMessage.js +125 -0
  549. package/ui/QuoteMessage.js.map +1 -0
  550. package/ui/QuoteMessageInput.js +93 -0
  551. package/ui/QuoteMessageInput.js.map +1 -0
  552. package/ui/ReactionBadge.js +61 -0
  553. package/ui/ReactionBadge.js.map +1 -0
  554. package/ui/ReactionButton.js +48 -0
  555. package/ui/ReactionButton.js.map +1 -0
  556. package/ui/SortByRow.js +50 -0
  557. package/ui/SortByRow.js.map +1 -0
  558. package/ui/TextButton.js +38 -0
  559. package/ui/TextButton.js.map +1 -0
  560. package/ui/TextMessageItemBody.js +34 -0
  561. package/ui/TextMessageItemBody.js.map +1 -0
  562. package/ui/ThumbnailMessageItemBody.js +76 -0
  563. package/ui/ThumbnailMessageItemBody.js.map +1 -0
  564. package/ui/Tooltip.js +28 -0
  565. package/ui/Tooltip.js.map +1 -0
  566. package/ui/TooltipWrapper.js +58 -0
  567. package/ui/TooltipWrapper.js.map +1 -0
  568. package/ui/UnknownMessageItemBody.js +35 -0
  569. package/ui/UnknownMessageItemBody.js.map +1 -0
  570. package/ui/UserListItem.js +151 -0
  571. package/ui/UserListItem.js.map +1 -0
  572. package/ui/UserProfile.js +81 -0
  573. package/ui/UserProfile.js.map +1 -0
  574. package/useSendbirdStateContext.js +20 -0
  575. package/useSendbirdStateContext.js.map +1 -0
  576. package/utils-08c4dbdc.js +34 -0
  577. package/utils-08c4dbdc.js.map +1 -0
  578. package/utils-af1b9829.js +30 -0
  579. package/utils-af1b9829.js.map +1 -0
  580. package/utils-c393e880.js +4 -0
  581. package/utils-c393e880.js.map +1 -0
  582. package/uuid-b0c93400.js +17 -0
  583. package/uuid-b0c93400.js.map +1 -0
  584. package/withSendBird.js +26 -0
  585. package/withSendBird.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdminPanel.js","sources":["../../../src/smart-components/ChannelSettings/components/AdminPanel/OperatorsModal.tsx","../../../src/smart-components/ChannelSettings/components/AdminPanel/AddOperatorsModal.tsx","../../../src/smart-components/ChannelSettings/components/AdminPanel/OperatorList.tsx","../../../src/smart-components/ChannelSettings/components/AdminPanel/BannedMembersModal.tsx","../../../src/smart-components/ChannelSettings/components/AdminPanel/BannedMemberList.tsx","../../../src/smart-components/ChannelSettings/components/AdminPanel/MutedMembersModal.tsx","../../../src/smart-components/ChannelSettings/components/AdminPanel/MutedMemberList.tsx","../../../src/smart-components/ChannelSettings/components/AdminPanel/index.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';\n\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props { onCancel?(): void }\n\nexport default function OperatorsModal({ onCancel }: Props): ReactElement {\n const [operators, setOperators] = useState([]);\n const [operatorQuery, setOperatorQuery] = useState(null);\n\n const { channel } = useChannelSettings();\n const state = useSendbirdStateContext();\n const currentUser = state?.config?.userId;\n\n useEffect(() => {\n const operatorListQuery = channel.createOperatorListQuery();\n operatorListQuery.limit = 20;\n operatorListQuery.next((operators, error) => {\n if (error) {\n return;\n }\n setOperators(operators);\n });\n setOperatorQuery(operatorListQuery);\n }, [])\n return (\n <div>\n <Modal\n hideFooter\n titleText=\"All operators\"\n onCancel={onCancel}\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = operatorQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n operatorQuery.next((o, error) => {\n if (error) {\n return;\n }\n setOperators([\n ...operators,\n ...o,\n ])\n });\n }\n }}\n >\n { operators.map((member) => (\n <UserListItem\n currentUser={currentUser}\n user={member}\n key={member.userId}\n action={({ parentRef, actionRef }) => (\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 channel.removeOperators([member.userId], (response, error) => {\n if (error) {\n return;\n }\n setOperators(operators.filter(({ userId }) => {\n return userId !== member.userId;\n }));\n });\n closeDropdown();\n }}\n >\n Dismiss operator\n </MenuItem>\n </MenuItems>\n )}\n />\n )}\n />\n ))}\n </div>\n </Modal>\n </div>\n )\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport Modal from '../../../../ui/Modal';\nimport Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport { Type as ButtonType } from '../../../../ui/Button/type';\nimport UserListItem from '../../../../ui/UserListItem';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\n\ninterface Props {\n onCancel(): void;\n onSubmit(members: Array<string>): void;\n}\n\nexport default function AddOperatorsModal({\n onCancel,\n onSubmit,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [selectedMembers, setSelectedMembers] = useState({});\n const [memberQuery, setMemberQuery] = useState(null);\n const { stringSet } = useContext(LocalizationContext);\n\n const { channel } = useChannelSettings();\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\n const selectedCount = Object.keys(selectedMembers).filter((m) => selectedMembers[m]).length;\n return (\n <div>\n <Modal\n type={ButtonType.PRIMARY}\n submitText=\"Add\"\n onCancel={onCancel}\n onSubmit={() => {\n const members = Object.keys(selectedMembers).filter((m) => selectedMembers[m]);\n channel?.addOperators(members).then(() => {\n onSubmit(members);\n })\n }}\n titleText=\"Select members\"\n >\n <Label\n color={(selectedCount > 0) ? LabelColors.PRIMARY : LabelColors.ONBACKGROUND_3}\n type={LabelTypography.CAPTION_1}\n >\n {`${selectedCount} ${stringSet.MODAL__INVITE_MEMBER__SELECTEC}`}\n </Label>\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 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 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 </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n useContext,\n} from 'react';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\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 OperatorsModal from './OperatorsModal';\nimport AddOperatorsModal from './AddOperatorsModal';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\n\nexport const OperatorList = (): ReactElement => {\n const [operators, setOperators] = useState([]);\n const [showMore, setShowMore] = useState(false);\n const [showAdd, setShowAdd] = useState(false);\n const [hasNext, setHasNext] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n const state = useSendbirdStateContext();\n const { channel } = useChannelSettings();\n\n const userId = state?.config?.userId;\n\n useEffect(() => {\n if (!channel) {\n setOperators([]);\n return;\n }\n\n const operatorListQuery = channel.createOperatorListQuery();\n operatorListQuery.limit = 10;\n operatorListQuery.next((operators, error) => {\n if (error) {\n return;\n }\n setOperators(operators);\n setHasNext(operatorListQuery.hasNext);\n });\n }, [channel]);\n\n const refershList = useCallback(\n () => {\n if (!channel) {\n setOperators([]);\n return;\n }\n const operatorListQuery = channel.createOperatorListQuery();\n operatorListQuery.limit = 10;\n operatorListQuery.next((operators, error) => {\n if (error) {\n return;\n }\n setOperators(operators);\n setHasNext(operatorListQuery.hasNext);\n });\n },\n [channel],\n );\n\n return (\n <>\n {\n operators.map((operator) => (\n <UserListItem\n key={operator.userId}\n user={operator}\n currentUser={userId}\n action={({ actionRef, parentRef }) => {\n return (\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 channel.removeOperators([operator.userId], (response, error) => {\n if (error) {\n return;\n }\n setOperators(operators.filter(({ userId }) => {\n return userId !== operator.userId;\n }))\n });\n closeDropdown();\n }}\n >\n Dismiss operator\n </MenuItem>\n </MenuItems>\n )}\n />\n );\n }}\n />\n ))\n }\n <div\n className=\"sendbird-channel-settings-accordion__footer\"\n >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowAdd(true);\n }}\n >\n {stringSet.CHANNEL_SETTING__OPERATORS__TITLE_ADD}\n </Button>\n {\n hasNext && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowMore(true);\n }}\n >\n {stringSet.CHANNEL_SETTING__OPERATORS__TITLE_ALL}\n </Button>\n )\n }\n </div>\n {\n showMore && (\n <OperatorsModal onCancel={() => {\n setShowMore(false);\n refershList();\n }} />\n )\n }\n {\n showAdd && (\n <AddOperatorsModal\n onCancel={() => setShowAdd(false)}\n onSubmit={() => {\n refershList();\n setShowAdd(false);\n }}\n />\n )\n }\n </>\n );\n}\n\nexport default OperatorList;\n","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';\n\nimport { noop } from '../../../../utils/utils';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function BannedMembersModal({\n onCancel,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [memberQuery, setMemberQuery] = useState(null);\n const { channel } = useChannelSettings();\n\n useEffect(() => {\n const bannedUserListQuery = channel.createBannedUserListQuery();\n bannedUserListQuery.next((users, error) => {\n if (error) {\n return;\n }\n setMembers(users);\n });\n setMemberQuery(bannedUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText=\"Muted 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 action={({ parentRef, actionRef }) => (\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 channel.unbanUser(member, () => {\n closeDropdown();\n setMembers(members.filter(m => {\n return (m.userId !== member.userId);\n }));\n })\n }}\n >\n Unban\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n }\n />\n ))}\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\n Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\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 BannedMembersModal from './BannedMembersModal';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\n\nexport const BannedMemberList = (): ReactElement => {\n const [members, setMembers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showModal, setShowModal] = useState(false);\n\n const { channel } = useChannelSettings();\n\n useEffect(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const bannedUserListQuery = channel.createBannedUserListQuery();\n bannedUserListQuery.next((users, error) => {\n if (error) {\n return;\n }\n setMembers(users);\n setHasNext(bannedUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const bannedUserListQuery = channel.createBannedUserListQuery();\n bannedUserListQuery.next(function(users, error) {\n if (error) {\n return;\n }\n setMembers(users);\n setHasNext(bannedUserListQuery.hasNext);\n });\n }, [channel]);\n return (\n <>\n {\n members.map((member) => (\n <UserListItem\n key={member.userId}\n user={member}\n action={({ actionRef, parentRef }) => {\n return (\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 channel.unbanUser(member, () => {\n closeDropdown();\n refreshList();\n })\n }}\n >\n Unban\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n }}\n />\n ))\n }\n {\n members && members.length === 0 && (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n No banned members yet\n </Label>\n )\n }\n {\n hasNext && (\n <div\n className=\"sendbird-channel-settings-accordion__footer\"\n >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowModal(true);\n }}\n >\n All banned members\n </Button>\n </div>\n )\n }\n {\n showModal && (\n <BannedMembersModal\n onCancel={() => {\n setShowModal(false);\n refreshList();\n }}\n />\n )\n }\n </>\n );\n}\n\n\nexport default BannedMemberList;\n","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';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function MutedMembersModal({\n onCancel,\n}: 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 memberUserListQuery = channel.createMemberListQuery();\n memberUserListQuery.limit = 10;\n memberUserListQuery.mutedMemberFilter = 'muted';\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n });\n setMemberQuery(memberUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText=\"Muted 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 currentUser={currentUser}\n user={member}\n key={member.userId}\n action={({ 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 channel.unmuteUser(member, () => {\n closeDropdown();\n setMembers(members.filter(m => {\n return (m.userId !== member.userId);\n }));\n })\n }}\n >\n Unmute\n </MenuItem>\n </MenuItems>\n )}\n />\n )}\n />\n ))}\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';\nimport\n Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport UserListItem from '../UserListItem';\nimport MutedMembersModal from './MutedMembersModal';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\n\nexport const MutedMemberList = (): ReactElement => {\n const [members, setMembers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showModal, setShowModal] = useState(false);\n\n const { channel } = useChannelSettings();\n const state = useSendbirdStateContext();\n const currentUser = 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.mutedMemberFilter = 'muted';\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const memberUserListQuery = channel.createMemberListQuery();\n memberUserListQuery.limit = 10;\n memberUserListQuery.mutedMemberFilter = 'muted';\n memberUserListQuery.next((members, error) => {\n if (error) {\n return;\n }\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n });\n }, [channel]);\n return (\n <>\n {\n members.map((member) => (\n <UserListItem\n key={member.userId}\n user={member}\n currentUser={currentUser}\n action={({ actionRef, parentRef }) => {\n return (\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 closeDropdown={closeDropdown}\n openLeft\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n >\n <MenuItem\n onClick={() => {\n channel.unmuteUser(member, () => {\n refreshList();\n closeDropdown();\n })\n }}\n >\n Unmute\n </MenuItem>\n </MenuItems>\n )}\n />\n );\n }\n }\n />\n ))\n }\n {\n members && members.length === 0 && (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n No muted members yet\n </Label>\n )\n }\n {\n hasNext && (\n <div\n className=\"sendbird-channel-settings-accordion__footer\"\n >\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => {\n setShowModal(true);\n }}\n >\n All muted members\n </Button>\n </div>\n )\n }\n {\n showModal && (\n <MutedMembersModal\n onCancel={() => {\n setShowModal(false);\n refreshList();\n }}\n />\n )\n }\n </>\n );\n}\n\nexport default MutedMemberList;\n","import './admin-panel.scss';\nimport React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport Accordion, { AccordionGroup } from '../../../../ui/Accordion';\nimport\n Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport Badge from '../../../../ui/Badge';\n\nimport OperatorList from './OperatorList';\nimport MemberList from './MemberList';\nimport BannedMemberList from './BannedMemberList';\nimport MutedMemberList from './MutedMemberList';\n\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\n\nconst kFormatter = (num: number): string|number => {\n return Math.abs(num) > 999\n ? `${(Math.abs(num)/1000).toFixed(1)}K`\n : num;\n}\n\nexport default function AdminPannel(): ReactElement {\n const [frozen, setFrozen] = useState(false);\n\n const { stringSet } = useContext(LocalizationContext);\n const { channel } = useChannelSettings();\n\n\n // work around for\n // https://sendbird.slack.com/archives/G01290GCDCN/p1595922832000900\n // SDK bug - after frozen/unfrozen myRole becomes \"none\"\n useEffect(() => {\n setFrozen(channel.isFrozen);\n }, [channel]);\n\n return (\n <AccordionGroup className=\"sendbird-channel-settings__operator\">\n <Accordion\n className=\"sendbird-channel-settings__operators-list\"\n id=\"operators\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.OPERATOR}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__OPERATORS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <OperatorList />\n </>\n )}\n />\n <Accordion\n className=\"sendbird-channel-settings__members-list\"\n id=\"members\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.MEMBERS}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__MEMBERS__TITLE}\n </Label>\n <Badge count={kFormatter(channel.memberCount)} />\n </>\n )}\n renderContent={() => (\n <>\n <MemberList />\n </>\n )}\n />\n {\n // No muted members in broadcast channel\n !channel.isBroadcast && (\n <Accordion\n id=\"mutedMembers\"\n className=\"sendbird-channel-settings__muted-members-list\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.MUTE}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__MUTED_MEMBERS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <MutedMemberList />\n </>\n )}\n />\n )\n }\n <Accordion\n className=\"sendbird-channel-settings__banned-members-list\"\n id=\"bannedMembers\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.BAN}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__BANNED_MEMBERS__TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <>\n <BannedMemberList />\n </>\n )}\n />\n {\n // cannot freeze broadcast channel\n !channel.isBroadcast && (\n <div className=\"sendbird-channel-settings__freeze\">\n <Icon\n type={IconTypes.FREEZE}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-channel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__FREEZE_CHANNEL}\n </Label>\n <div className=\"sendbird-channel-settings__frozen-icon\">\n {\n frozen\n ? (\n <Icon\n onClick={() => {\n channel.unfreeze(() => {\n setFrozen(false);\n });\n }}\n type={IconTypes.TOGGLE_ON}\n fillColor={IconColors.PRIMARY}\n width={44}\n height={24}\n />\n )\n : (\n <Icon\n onClick={() => {\n channel.freeze(() => {\n setFrozen(true);\n });\n }}\n type={IconTypes.TOGGLE_OFF}\n fillColor={IconColors.PRIMARY}\n width={44}\n height={24}\n />\n )\n }\n </div>\n </div>\n )\n }\n </AccordionGroup>\n );\n}\n"],"names":["OperatorsModal","_a","onCancel","_c","useState","operators","setOperators","_d","operatorQuery","setOperatorQuery","channel","useChannelSettings","state","useSendbirdStateContext","currentUser","config","userId","useEffect","operatorListQuery","createOperatorListQuery","limit","next","error","React","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","o","map","member","parentRef","actionRef","toggleDropdown","IconTypes","MORE","IconColors","CONTENT_INVERSE","closeDropdown","removeOperators","response","filter","AddOperatorsModal","onSubmit","_b","members","setMembers","selectedMembers","setSelectedMembers","memberQuery","setMemberQuery","stringSet","useContext","LocalizationContext","memberListQuery","createMemberListQuery","selectedCount","Object","keys","m","length","ButtonType","PRIMARY","addOperators","then","LabelColors","ONBACKGROUND_3","LabelTypography","CAPTION_1","MODAL__INVITE_MEMBER__SELECTEC","event","modifiedSelectedMembers","id","checked","OperatorList","showMore","setShowMore","showAdd","setShowAdd","_e","setHasNext","refershList","useCallback","operator","UserListItem","ButtonTypes","SECONDARY","ButtonSizes","SMALL","CHANNEL_SETTING__OPERATORS__TITLE_ADD","CHANNEL_SETTING__OPERATORS__TITLE_ALL","BannedMembersModal","bannedUserListQuery","createBannedUserListQuery","users","noop","unbanUser","BannedMemberList","showModal","setShowModal","refreshList","SUBTITLE_2","MutedMembersModal","memberUserListQuery","mutedMemberFilter","unmuteUser","MutedMemberList","kFormatter","num","Math","abs","toFixed","AdminPannel","frozen","setFrozen","isFrozen","OPERATOR","SUBTITLE_1","ONBACKGROUND_1","CHANNEL_SETTING__OPERATORS__TITLE","MEMBERS","CHANNEL_SETTING__MEMBERS__TITLE","memberCount","isBroadcast","MUTE","CHANNEL_SETTING__MUTED_MEMBERS__TITLE","BAN","CHANNEL_SETTING__BANNED_MEMBERS__TITLE","FREEZE","CHANNEL_SETTING__FREEZE_CHANNEL","unfreeze","TOGGLE_ON","freeze","TOGGLE_OFF"],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ import React__default, { useContext, useState } from 'react';
2
+ import { a as LocalizationContext } from '../../LocalizationContext-e4391013.js';
3
+ import useSendbirdStateContext from '../../useSendbirdStateContext.js';
4
+ import { useChannelSettings } from '../context.js';
5
+ import ChannelAvatar from '../../ui/ChannelAvatar.js';
6
+ import TextButton from '../../ui/TextButton.js';
7
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-7a51bd16.js';
8
+ import EditDetails from './EditDetailsModal.js';
9
+ import '../../stringSet-4f6eaa60.js';
10
+ import '../../index-6ebf7894.js';
11
+ import '../../withSendBird.js';
12
+ import '../../_rollupPluginBabelHelpers-20904f21.js';
13
+ import '../../UserProfileContext-865db5e6.js';
14
+ import 'prop-types';
15
+ import '../../uuid-b0c93400.js';
16
+ import '../../ui/Avatar.js';
17
+ import '../../tslib.es6-e3c44017.js';
18
+ import '../../ui/ImageRenderer.js';
19
+ import '../../ui/Icon.js';
20
+ import '../../utils-08c4dbdc.js';
21
+ import '../../color-ee3fc5ee.js';
22
+ import '../../ui/Modal.js';
23
+ import 'react-dom';
24
+ import '../../index-942c85a6.js';
25
+ import '../../ui/IconButton.js';
26
+ import '../../index-acebc2ff.js';
27
+ import '../../utils-c393e880.js';
28
+ import '../../ui/Input.js';
29
+
30
+ var ChannelProfile = function ChannelProfile() {
31
+ var _a, _b, _c;
32
+
33
+ var state = useSendbirdStateContext();
34
+ var channelSettingStore = useChannelSettings();
35
+ var stringSet = useContext(LocalizationContext).stringSet;
36
+
37
+ var _d = useState(false),
38
+ showModal = _d[0],
39
+ setShowModal = _d[1];
40
+
41
+ var userId = (_a = state === null || state === void 0 ? void 0 : state.config) === null || _a === void 0 ? void 0 : _a.userId;
42
+ var theme = ((_b = state === null || state === void 0 ? void 0 : state.config) === null || _b === void 0 ? void 0 : _b.theme) || 'light';
43
+ var isOnline = (_c = state === null || state === void 0 ? void 0 : state.config) === null || _c === void 0 ? void 0 : _c.isOnline;
44
+ var disabled = !isOnline;
45
+ var channel = channelSettingStore.channel;
46
+
47
+ var getChannelName = function getChannelName() {
48
+ if ((channel === null || channel === void 0 ? void 0 : channel.name) && (channel === null || channel === void 0 ? void 0 : channel.name) !== 'Group Channel') {
49
+ return channel.name;
50
+ }
51
+
52
+ if ((channel === null || channel === void 0 ? void 0 : channel.name) === 'Group Channel' || !(channel === null || channel === void 0 ? void 0 : channel.name)) {
53
+ return channel.members.map(function (member) {
54
+ return member.nickname || stringSet.NO_NAME;
55
+ }).join(', ');
56
+ }
57
+
58
+ return stringSet.NO_TITLE;
59
+ };
60
+
61
+ return /*#__PURE__*/React__default.createElement("div", {
62
+ className: "sendbird-channel-profile"
63
+ }, /*#__PURE__*/React__default.createElement("div", {
64
+ className: "sendbird-channel-profile--inner"
65
+ }, /*#__PURE__*/React__default.createElement("div", {
66
+ className: "sendbird-channel-profile__avatar"
67
+ }, /*#__PURE__*/React__default.createElement(ChannelAvatar, {
68
+ channel: channel,
69
+ userId: userId,
70
+ theme: theme,
71
+ width: 80,
72
+ height: 80
73
+ })), /*#__PURE__*/React__default.createElement(Label, {
74
+ className: "sendbird-channel-profile__title",
75
+ type: LabelTypography.SUBTITLE_2,
76
+ color: LabelColors.ONBACKGROUND_1
77
+ }, getChannelName()), /*#__PURE__*/React__default.createElement(TextButton, {
78
+ disabled: disabled,
79
+ className: "sendbird-channel-profile__edit",
80
+ onClick: function onClick() {
81
+ if (disabled) {
82
+ return;
83
+ }
84
+
85
+ setShowModal(true);
86
+ },
87
+ notUnderline: true
88
+ }, /*#__PURE__*/React__default.createElement(Label, {
89
+ type: LabelTypography.BUTTON_1,
90
+ color: disabled ? LabelColors.ONBACKGROUND_2 : LabelColors.PRIMARY
91
+ }, stringSet.CHANNEL_SETTING__PROFILE__EDIT)), showModal && /*#__PURE__*/React__default.createElement(EditDetails, {
92
+ onCancel: function onCancel() {
93
+ return setShowModal(false);
94
+ },
95
+ onSubmit: function onSubmit() {
96
+ return setShowModal(false);
97
+ }
98
+ })));
99
+ };
100
+
101
+ export { ChannelProfile as default };
102
+ //# sourceMappingURL=ChannelProfile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChannelProfile.js","sources":["../../../src/smart-components/ChannelSettings/components/ChannelProfile/index.tsx"],"sourcesContent":["import './channel-profile.scss';\nimport React, { useState, useContext } from 'react';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\n\nimport ChannelAvatar from '../../../../ui/ChannelAvatar';\nimport TextButton from '../../../../ui/TextButton';\nimport Label, {\n LabelTypography,\n LabelColors,\n} from '../../../../ui/Label';\n\nimport EditDetailsModal from '../EditDetailsModal';\n\nconst ChannelProfile: React.FC = () => {\n const state = useSendbirdStateContext();\n const channelSettingStore = useChannelSettings();\n const { stringSet } = useContext(LocalizationContext);\n const [showModal, setShowModal] = useState(false);\n\n const userId = state?.config?.userId;\n const theme = state?.config?.theme || 'light';\n const isOnline = state?.config?.isOnline;\n const disabled = !isOnline;\n\n const { channel } = channelSettingStore;\n\n const getChannelName = () => {\n if (channel?.name && channel?.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel?.name === 'Group Channel' || !channel?.name) {\n return channel.members.map((member) => member.nickname || stringSet.NO_NAME).join(', ');\n }\n\n return stringSet.NO_TITLE;\n };\n\n return (\n <div className=\"sendbird-channel-profile\">\n <div className=\"sendbird-channel-profile--inner\">\n <div className=\"sendbird-channel-profile__avatar\">\n <ChannelAvatar\n channel={channel}\n userId={userId}\n theme={theme}\n width={80}\n height={80}\n />\n </div>\n <Label\n className=\"sendbird-channel-profile__title\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {getChannelName()}\n </Label>\n <TextButton\n disabled={disabled}\n className=\"sendbird-channel-profile__edit\"\n onClick={() => {\n if (disabled) { return; }\n setShowModal(true);\n }}\n notUnderline\n >\n <Label\n type={LabelTypography.BUTTON_1}\n color={disabled ? LabelColors.ONBACKGROUND_2 : LabelColors.PRIMARY}\n >\n {stringSet.CHANNEL_SETTING__PROFILE__EDIT}\n </Label>\n </TextButton>\n {\n showModal && (\n <EditDetailsModal\n onCancel={() => setShowModal(false)}\n onSubmit={() => setShowModal(false)}\n />\n )\n }\n </div>\n </div>\n );\n}\n\nexport default ChannelProfile;\n"],"names":["ChannelProfile","state","useSendbirdStateContext","channelSettingStore","useChannelSettings","stringSet","useContext","LocalizationContext","_d","useState","showModal","setShowModal","userId","config","theme","isOnline","disabled","channel","getChannelName","name","members","map","member","nickname","NO_NAME","join","NO_TITLE","React","LabelTypography","SUBTITLE_2","LabelColors","ONBACKGROUND_1","BUTTON_1","ONBACKGROUND_2","PRIMARY","CHANNEL_SETTING__PROFILE__EDIT","EditDetailsModal"],"mappings":"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"}
@@ -0,0 +1,152 @@
1
+ import React__default, { useContext, useState } from 'react';
2
+ import useSendbirdStateContext from '../../useSendbirdStateContext.js';
3
+ import { useChannelSettings } from '../context.js';
4
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-e818a8a3.js';
5
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-7a51bd16.js';
6
+ import { a as LocalizationContext } from '../../LocalizationContext-e4391013.js';
7
+ import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
8
+ import IconButton from '../../ui/IconButton.js';
9
+ import ChannelProfile from './ChannelProfile.js';
10
+ import AdminPannel from './AdminPanel.js';
11
+ import LeaveChannel from './LeaveChannel.js';
12
+ import UserPanel from './UserPanel.js';
13
+ import '../../withSendBird.js';
14
+ import '../../_rollupPluginBabelHelpers-20904f21.js';
15
+ import '../../UserProfileContext-865db5e6.js';
16
+ import 'prop-types';
17
+ import '../../uuid-b0c93400.js';
18
+ import '../../ui/Loader.js';
19
+ import '../../stringSet-4f6eaa60.js';
20
+ import '../../index-6ebf7894.js';
21
+ import '../../ui/ChannelAvatar.js';
22
+ import '../../ui/Avatar.js';
23
+ import '../../tslib.es6-e3c44017.js';
24
+ import '../../ui/ImageRenderer.js';
25
+ import '../../utils-08c4dbdc.js';
26
+ import '../../ui/TextButton.js';
27
+ import '../../color-ee3fc5ee.js';
28
+ import './EditDetailsModal.js';
29
+ import '../../ui/Modal.js';
30
+ import 'react-dom';
31
+ import '../../index-942c85a6.js';
32
+ import '../../index-acebc2ff.js';
33
+ import '../../utils-c393e880.js';
34
+ import '../../ui/Input.js';
35
+ import '../../ui/Accordion.js';
36
+ import '../../ui/AccordionGroup.js';
37
+ import '../../context-98ce535c.js';
38
+ import '../../ui/Badge.js';
39
+ import '../../ui/ContextMenu.js';
40
+ import '../../index-8c72a94a.js';
41
+ import '../../ui/SortByRow.js';
42
+ import './UserListItem.js';
43
+ import '../../ui/MutedAvatarOverlay.js';
44
+ import '../../ui/UserProfile.js';
45
+ import '../../sendBirdSelectors.js';
46
+ import '../../topics-9442035c.js';
47
+ import '../../ui/UserListItem.js';
48
+ import '../../ui/Checkbox.js';
49
+ import '../../MemberList-6655cba0.js';
50
+
51
+ var ChannelSettingsUI = function ChannelSettingsUI(props) {
52
+ var _a, _b;
53
+
54
+ var stringSet = useContext(LocalizationContext).stringSet;
55
+ var state = useSendbirdStateContext();
56
+ var channelSettingStore = useChannelSettings();
57
+
58
+ var _c = useState(false),
59
+ showLeaveChannelModal = _c[0],
60
+ setShowLeaveChannelModal = _c[1];
61
+
62
+ var isOnline = (_a = state === null || state === void 0 ? void 0 : state.config) === null || _a === void 0 ? void 0 : _a.isOnline;
63
+ var logger = (_b = state === null || state === void 0 ? void 0 : state.config) === null || _b === void 0 ? void 0 : _b.logger;
64
+ var channel = channelSettingStore.channel,
65
+ invalidChannel = channelSettingStore.invalidChannel,
66
+ onCloseClick = channelSettingStore.onCloseClick;
67
+ var renderPlaceholderError = props.renderPlaceholderError,
68
+ renderChannelProfile = props.renderChannelProfile,
69
+ renderModerationPanel = props.renderModerationPanel,
70
+ renderLeaveChannel = props.renderLeaveChannel;
71
+
72
+ if (!channel || invalidChannel) {
73
+ return /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement("div", {
74
+ className: "sendbird-channel-settings__header"
75
+ }, /*#__PURE__*/React__default.createElement(Label, {
76
+ type: LabelTypography.H_2,
77
+ color: LabelColors.ONBACKGROUND_1
78
+ }, stringSet.CHANNEL_SETTING__HEADER__TITLE), /*#__PURE__*/React__default.createElement(Icon, {
79
+ className: "sendbird-channel-settings__close-icon",
80
+ type: IconTypes.CLOSE,
81
+ height: "24px",
82
+ width: "24px",
83
+ onClick: function onClick() {
84
+ logger.info('ChannelSettings: Click close');
85
+ onCloseClick === null || onCloseClick === void 0 ? void 0 : onCloseClick();
86
+ }
87
+ })), /*#__PURE__*/React__default.createElement("div", null, renderPlaceholderError ? renderPlaceholderError() : /*#__PURE__*/React__default.createElement(PlaceHolder, {
88
+ type: PlaceHolderTypes.WRONG
89
+ })));
90
+ }
91
+
92
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
93
+ className: "sendbird-channel-settings__header"
94
+ }, /*#__PURE__*/React__default.createElement(Label, {
95
+ type: LabelTypography.H_2,
96
+ color: LabelColors.ONBACKGROUND_1
97
+ }, stringSet.CHANNEL_SETTING__HEADER__TITLE), /*#__PURE__*/React__default.createElement("div", {
98
+ className: "sendbird-channel-settings__header-icon"
99
+ }, /*#__PURE__*/React__default.createElement(IconButton, {
100
+ width: "32px",
101
+ height: "32px",
102
+ onClick: function onClick() {
103
+ logger.info('ChannelSettings: Click close');
104
+ onCloseClick === null || onCloseClick === void 0 ? void 0 : onCloseClick();
105
+ }
106
+ }, /*#__PURE__*/React__default.createElement(Icon, {
107
+ className: "sendbird-channel-settings__close-icon",
108
+ type: IconTypes.CLOSE,
109
+ height: "22px",
110
+ width: "22px"
111
+ })))), /*#__PURE__*/React__default.createElement("div", {
112
+ className: "sendbird-channel-settings__scroll-area"
113
+ }, (renderChannelProfile === null || renderChannelProfile === void 0 ? void 0 : renderChannelProfile()) || /*#__PURE__*/React__default.createElement(ChannelProfile, null), (renderModerationPanel === null || renderModerationPanel === void 0 ? void 0 : renderModerationPanel()) || (channel.myRole === 'operator' ? /*#__PURE__*/React__default.createElement(AdminPannel, null) : /*#__PURE__*/React__default.createElement(UserPanel, null)), (renderLeaveChannel === null || renderLeaveChannel === void 0 ? void 0 : renderLeaveChannel()) || /*#__PURE__*/React__default.createElement("div", {
114
+ className: ['sendbird-channel-settings__panel-item', 'sendbird-channel-settings__leave-channel', !isOnline ? 'sendbird-channel-settings__panel-item__disabled' : ''].join(' '),
115
+ role: "button",
116
+ onKeyDown: function onKeyDown() {
117
+ if (!isOnline) {
118
+ return;
119
+ }
120
+
121
+ setShowLeaveChannelModal(true);
122
+ },
123
+ onClick: function onClick() {
124
+ if (!isOnline) {
125
+ return;
126
+ }
127
+
128
+ setShowLeaveChannelModal(true);
129
+ },
130
+ tabIndex: 0
131
+ }, /*#__PURE__*/React__default.createElement(Icon, {
132
+ className: ['sendbird-channel-settings__panel-icon-left', 'sendbird-channel-settings__panel-icon__leave'].join(' '),
133
+ type: IconTypes.LEAVE,
134
+ fillColor: IconColors.ERROR,
135
+ height: "24px",
136
+ width: "24px"
137
+ }), /*#__PURE__*/React__default.createElement(Label, {
138
+ type: LabelTypography.SUBTITLE_1,
139
+ color: LabelColors.ONBACKGROUND_1
140
+ }, stringSet.CHANNEL_SETTING__LEAVE_CHANNEL__TITLE)), showLeaveChannelModal && /*#__PURE__*/React__default.createElement(LeaveChannel, {
141
+ onCancel: function onCancel() {
142
+ setShowLeaveChannelModal(false);
143
+ },
144
+ onSubmit: function onSubmit() {
145
+ setShowLeaveChannelModal(false);
146
+ onCloseClick === null || onCloseClick === void 0 ? void 0 : onCloseClick();
147
+ }
148
+ })));
149
+ };
150
+
151
+ export { ChannelSettingsUI as default };
152
+ //# sourceMappingURL=ChannelSettingsUI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChannelSettingsUI.js","sources":["../../../src/smart-components/ChannelSettings/components/ChannelSettingsUI/index.tsx"],"sourcesContent":["import './channel-settings-ui.scss';\n\nimport React, { useContext, useState } from 'react';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\n\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport ChannelProfile from '../ChannelProfile';\nimport AdminPanel from '../AdminPanel';\nimport LeaveChannelModal from '../LeaveChannel';\nimport UserPanel from '../UserPanel';\n\nexport interface ChannelSettingsUIProps {\n renderPlaceholderError?: () => React.ReactNode;\n renderChannelProfile?: () => React.ReactNode;\n renderModerationPanel?: () => React.ReactNode;\n renderLeaveChannel?: () => React.ReactNode;\n}\n\nconst ChannelSettingsUI: React.FC<ChannelSettingsUIProps> = (props: ChannelSettingsUIProps) => {\n const { stringSet } = useContext(LocalizationContext);\n\n const state = useSendbirdStateContext();\n const channelSettingStore = useChannelSettings();\n\n const [showLeaveChannelModal, setShowLeaveChannelModal] = useState(false);\n\n const isOnline = state?.config?.isOnline;\n const logger = state?.config?.logger;\n\n const {\n channel,\n invalidChannel,\n onCloseClick,\n } = channelSettingStore;\n\n const {\n renderPlaceholderError,\n renderChannelProfile,\n renderModerationPanel,\n renderLeaveChannel,\n } = props;\n\n if (!channel || invalidChannel) {\n return (\n <div>\n <div className=\"sendbird-channel-settings__header\">\n <Label type={LabelTypography.H_2} color={LabelColors.ONBACKGROUND_1}>\n {stringSet.CHANNEL_SETTING__HEADER__TITLE}\n </Label>\n <Icon\n className=\"sendbird-channel-settings__close-icon\"\n type={IconTypes.CLOSE}\n height=\"24px\"\n width=\"24px\"\n onClick={() => {\n logger.info('ChannelSettings: Click close');\n onCloseClick?.();\n }}\n />\n </div>\n <div>\n {\n renderPlaceholderError\n ? renderPlaceholderError()\n : (\n <PlaceHolder type={PlaceHolderTypes.WRONG} />\n )\n }\n </div>\n </div>\n );\n }\n\n return (\n <>\n <div className=\"sendbird-channel-settings__header\">\n <Label type={LabelTypography.H_2} color={LabelColors.ONBACKGROUND_1}>\n {stringSet.CHANNEL_SETTING__HEADER__TITLE}\n </Label>\n <div className=\"sendbird-channel-settings__header-icon\">\n <IconButton\n width=\"32px\"\n height=\"32px\"\n onClick={() => {\n logger.info('ChannelSettings: Click close');\n onCloseClick?.();\n }}\n >\n <Icon\n className=\"sendbird-channel-settings__close-icon\"\n type={IconTypes.CLOSE}\n height=\"22px\"\n width=\"22px\"\n />\n </IconButton>\n </div>\n </div>\n <div className=\"sendbird-channel-settings__scroll-area\">\n {\n renderChannelProfile?.() || (\n <ChannelProfile />\n )\n }\n {\n renderModerationPanel?.() || (\n channel.myRole === 'operator'\n ? (<AdminPanel />)\n : (<UserPanel />)\n )\n }\n {\n renderLeaveChannel?.() || (\n <div\n className={[\n 'sendbird-channel-settings__panel-item',\n 'sendbird-channel-settings__leave-channel',\n !isOnline ? 'sendbird-channel-settings__panel-item__disabled' : '',\n ].join(' ')}\n role=\"button\"\n onKeyDown={() => {\n if (!isOnline) { return; }\n setShowLeaveChannelModal(true);\n }}\n onClick={() => {\n if (!isOnline) { return; }\n setShowLeaveChannelModal(true);\n }}\n tabIndex={0}\n >\n <Icon\n className={[\n 'sendbird-channel-settings__panel-icon-left',\n 'sendbird-channel-settings__panel-icon__leave',\n ].join(' ')}\n type={IconTypes.LEAVE}\n fillColor={IconColors.ERROR}\n height=\"24px\"\n width=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__LEAVE_CHANNEL__TITLE}\n </Label>\n </div>\n )\n }\n {\n showLeaveChannelModal && (\n <LeaveChannelModal\n onCancel={() => {\n setShowLeaveChannelModal(false);\n }}\n onSubmit={() => {\n setShowLeaveChannelModal(false);\n onCloseClick?.();\n }}\n />\n )\n }\n </div>\n </>\n );\n}\n\nexport default ChannelSettingsUI;\n"],"names":["ChannelSettingsUI","props","stringSet","useContext","LocalizationContext","state","useSendbirdStateContext","channelSettingStore","useChannelSettings","_c","useState","showLeaveChannelModal","setShowLeaveChannelModal","isOnline","config","logger","channel","invalidChannel","onCloseClick","renderPlaceholderError","renderChannelProfile","renderModerationPanel","renderLeaveChannel","React","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","CHANNEL_SETTING__HEADER__TITLE","IconTypes","CLOSE","info","PlaceHolderTypes","WRONG","myRole","AdminPanel","join","LEAVE","IconColors","ERROR","SUBTITLE_1","CHANNEL_SETTING__LEAVE_CHANNEL__TITLE","LeaveChannelModal"],"mappings":"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"}
@@ -0,0 +1,154 @@
1
+ import React__default, { useRef, useState, useContext } from 'react';
2
+ import { useChannelSettings } from '../context.js';
3
+ import { a as LocalizationContext } from '../../LocalizationContext-e4391013.js';
4
+ import useSendbirdStateContext from '../../useSendbirdStateContext.js';
5
+ import Modal from '../../ui/Modal.js';
6
+ import Input, { InputLabel } from '../../ui/Input.js';
7
+ import Avatar from '../../ui/Avatar.js';
8
+ import { T as Type } from '../../index-acebc2ff.js';
9
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-7a51bd16.js';
10
+ import TextButton from '../../ui/TextButton.js';
11
+ import ChannelAvatar from '../../ui/ChannelAvatar.js';
12
+ import { u as uuidv4 } from '../../uuid-b0c93400.js';
13
+ import '../../UserProfileContext-865db5e6.js';
14
+ import 'prop-types';
15
+ import '../../withSendBird.js';
16
+ import '../../_rollupPluginBabelHelpers-20904f21.js';
17
+ import '../../stringSet-4f6eaa60.js';
18
+ import '../../index-6ebf7894.js';
19
+ import 'react-dom';
20
+ import '../../index-942c85a6.js';
21
+ import '../../ui/IconButton.js';
22
+ import '../../ui/Icon.js';
23
+ import '../../utils-c393e880.js';
24
+ import '../../tslib.es6-e3c44017.js';
25
+ import '../../ui/ImageRenderer.js';
26
+ import '../../color-ee3fc5ee.js';
27
+ import '../../utils-08c4dbdc.js';
28
+
29
+ var EditDetails = function EditDetails(props) {
30
+ var _a, _b, _c;
31
+
32
+ var _onSubmit = props.onSubmit,
33
+ onCancel = props.onCancel;
34
+
35
+ var _d = useChannelSettings(),
36
+ channel = _d.channel,
37
+ onChannelModified = _d.onChannelModified,
38
+ onBeforeUpdateChannel = _d.onBeforeUpdateChannel,
39
+ setChannelUpdateId = _d.setChannelUpdateId;
40
+
41
+ var title = channel === null || channel === void 0 ? void 0 : channel.name;
42
+ var state = useSendbirdStateContext();
43
+ var userId = (_a = state === null || state === void 0 ? void 0 : state.config) === null || _a === void 0 ? void 0 : _a.userId;
44
+ var theme = (_b = state === null || state === void 0 ? void 0 : state.config) === null || _b === void 0 ? void 0 : _b.theme;
45
+ var logger = (_c = state === null || state === void 0 ? void 0 : state.config) === null || _c === void 0 ? void 0 : _c.logger;
46
+ var inputRef = useRef(null);
47
+ var formRef = useRef(null);
48
+ var hiddenInputRef = useRef(null);
49
+
50
+ var _e = useState(null),
51
+ currentImg = _e[0],
52
+ setCurrentImg = _e[1];
53
+
54
+ var _f = useState(null),
55
+ newFile = _f[0],
56
+ setNewFile = _f[1];
57
+
58
+ var stringSet = useContext(LocalizationContext).stringSet;
59
+ return /*#__PURE__*/React__default.createElement(Modal, {
60
+ titleText: stringSet.MODAL__CHANNEL_INFORMATION__TITLE,
61
+ submitText: stringSet.BUTTON__SAVE,
62
+ onCancel: onCancel,
63
+ onSubmit: function onSubmit() {
64
+ if (title !== '' && !inputRef.current.value) {
65
+ if (formRef.current.reportValidity) {
66
+ // might not work in explorer
67
+ formRef.current.reportValidity();
68
+ }
69
+
70
+ return;
71
+ }
72
+
73
+ var currentTitle = inputRef.current.value;
74
+ var currentImg = newFile;
75
+ logger.info('ChannelSettings: Channel information being updated', {
76
+ currentTitle: currentTitle,
77
+ currentImg: currentImg
78
+ });
79
+
80
+ if (onBeforeUpdateChannel) {
81
+ logger.info('ChannelSettings: onBeforeUpdateChannel');
82
+ var params = onBeforeUpdateChannel(currentTitle, currentImg, channel.data);
83
+ channel.updateChannel(params, function (groupChannel) {
84
+ onChannelModified === null || onChannelModified === void 0 ? void 0 : onChannelModified(groupChannel);
85
+ setChannelUpdateId(uuidv4());
86
+
87
+ _onSubmit();
88
+ });
89
+ } else {
90
+ logger.info('ChannelSettings: normal');
91
+ channel.updateChannel(currentTitle, currentImg, channel.data, function (groupChannel) {
92
+ logger.info('ChannelSettings: Channel information updated', groupChannel);
93
+ onChannelModified === null || onChannelModified === void 0 ? void 0 : onChannelModified(groupChannel);
94
+ setChannelUpdateId(uuidv4());
95
+
96
+ _onSubmit();
97
+ });
98
+ }
99
+ },
100
+ type: Type.PRIMARY
101
+ }, /*#__PURE__*/React__default.createElement("form", {
102
+ className: "channel-profile-form",
103
+ ref: formRef,
104
+ onSubmit: function onSubmit(e) {
105
+ e.preventDefault();
106
+ }
107
+ }, /*#__PURE__*/React__default.createElement("div", {
108
+ className: "channel-profile-form__img-section"
109
+ }, /*#__PURE__*/React__default.createElement(InputLabel, null, stringSet.MODAL__CHANNEL_INFORMATION__CHANNEL_IMAGE), /*#__PURE__*/React__default.createElement("div", {
110
+ className: "channel-profile-form__avatar"
111
+ }, currentImg ? /*#__PURE__*/React__default.createElement(Avatar, {
112
+ height: "80px",
113
+ width: "80px",
114
+ src: currentImg
115
+ }) : /*#__PURE__*/React__default.createElement(ChannelAvatar, {
116
+ height: 80,
117
+ width: 80,
118
+ channel: channel,
119
+ userId: userId,
120
+ theme: theme
121
+ })), /*#__PURE__*/React__default.createElement("input", {
122
+ ref: hiddenInputRef,
123
+ type: "file",
124
+ accept: "image/gif, image/jpeg, image/png",
125
+ style: {
126
+ display: 'none'
127
+ },
128
+ onChange: function onChange(e) {
129
+ setCurrentImg(URL.createObjectURL(e.target.files[0]));
130
+ setNewFile(e.target.files[0]);
131
+ hiddenInputRef.current.value = '';
132
+ }
133
+ }), /*#__PURE__*/React__default.createElement(TextButton, {
134
+ className: "channel-profile-form__avatar-button",
135
+ onClick: function onClick() {
136
+ return hiddenInputRef.current.click();
137
+ },
138
+ notUnderline: true
139
+ }, /*#__PURE__*/React__default.createElement(Label, {
140
+ type: LabelTypography.BUTTON_1,
141
+ color: LabelColors.PRIMARY
142
+ }, stringSet.MODAL__CHANNEL_INFORMATION__UPLOAD))), /*#__PURE__*/React__default.createElement("div", {
143
+ className: "channel-profile-form__name-section"
144
+ }, /*#__PURE__*/React__default.createElement(InputLabel, null, stringSet.MODAL__CHANNEL_INFORMATION__CHANNEL_NAME), /*#__PURE__*/React__default.createElement(Input, {
145
+ required: title !== '',
146
+ name: "channel-profile-form__name",
147
+ ref: inputRef,
148
+ value: title,
149
+ placeHolder: stringSet.MODAL__CHANNEL_INFORMATION__INPUT__PLACE_HOLDER
150
+ }))));
151
+ };
152
+
153
+ export { EditDetails as default };
154
+ //# sourceMappingURL=EditDetailsModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditDetailsModal.js","sources":["../../../src/smart-components/ChannelSettings/components/EditDetailsModal/index.tsx"],"sourcesContent":["import React, { useState, useRef, useContext } from 'react';\n\nimport { useChannelSettings } from '../../context/ChannelSettingsProvider';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nimport Modal from '../../../../ui/Modal';\nimport Input, { InputLabel } from '../../../../ui/Input';\nimport Avatar from '../../../../ui/Avatar/index';\nimport { Type as ButtonType } from '../../../../ui/Button/type';\nimport Label, { LabelColors, LabelTypography } from '../../../../ui/Label';\nimport TextButton from '../../../../ui/TextButton';\nimport ChannelAvatar from '../../../../ui/ChannelAvatar/index';\nimport uuidv4 from '../../../../utils/uuid';\n\nexport type EditDetailsProps = {\n onSubmit: () => void;\n onCancel: () => void;\n}\n\nconst EditDetails: React.FC<EditDetailsProps> = (props: EditDetailsProps) => {\n const {\n onSubmit,\n onCancel,\n } = props;\n\n const {\n channel,\n onChannelModified,\n onBeforeUpdateChannel,\n setChannelUpdateId,\n } = useChannelSettings();\n const title = channel?.name;\n\n const state = useSendbirdStateContext();\n const userId = state?.config?.userId;\n const theme = state?.config?.theme;\n const logger = state?.config?.logger;\n\n const inputRef = useRef(null);\n const formRef = useRef(null);\n const hiddenInputRef = useRef(null);\n const [currentImg, setCurrentImg] = useState(null);\n const [newFile, setNewFile] = useState(null);\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <Modal\n titleText={stringSet.MODAL__CHANNEL_INFORMATION__TITLE}\n submitText={stringSet.BUTTON__SAVE}\n onCancel={onCancel}\n onSubmit={() => {\n if (title !== '' && !inputRef.current.value) {\n if (formRef.current.reportValidity) { // might not work in explorer\n formRef.current.reportValidity();\n }\n return;\n }\n\n const currentTitle = inputRef.current.value;\n const currentImg = newFile;\n logger.info('ChannelSettings: Channel information being updated', {\n currentTitle,\n currentImg,\n });\n if (onBeforeUpdateChannel) {\n logger.info('ChannelSettings: onBeforeUpdateChannel');\n const params = onBeforeUpdateChannel(currentTitle, currentImg, channel.data);\n channel.updateChannel(params, (groupChannel) => {\n onChannelModified?.(groupChannel);\n setChannelUpdateId(uuidv4());\n onSubmit();\n });\n } else {\n logger.info('ChannelSettings: normal');\n channel.updateChannel(\n currentTitle,\n currentImg,\n channel.data,\n (groupChannel) => {\n logger.info('ChannelSettings: Channel information updated', groupChannel);\n onChannelModified?.(groupChannel);\n setChannelUpdateId(uuidv4());\n onSubmit();\n },\n );\n }\n }}\n type={ButtonType.PRIMARY}\n >\n <form\n className=\"channel-profile-form\"\n ref={formRef}\n onSubmit={(e) => { e.preventDefault(); }}\n >\n <div className=\"channel-profile-form__img-section\">\n <InputLabel>\n {stringSet.MODAL__CHANNEL_INFORMATION__CHANNEL_IMAGE}\n </InputLabel>\n <div className=\"channel-profile-form__avatar\">\n {\n currentImg\n ? (\n <Avatar\n height=\"80px\"\n width=\"80px\"\n src={currentImg}\n />\n ) : (\n <ChannelAvatar\n height={80}\n width={80}\n channel={channel}\n userId={userId}\n theme={theme}\n />\n )\n }\n </div>\n <input\n ref={hiddenInputRef}\n type=\"file\"\n accept=\"image/gif, image/jpeg, image/png\"\n style={{ display: 'none' }}\n onChange={(e) => {\n setCurrentImg(URL.createObjectURL(e.target.files[0]));\n setNewFile(e.target.files[0]);\n hiddenInputRef.current.value = '';\n }}\n />\n <TextButton\n className=\"channel-profile-form__avatar-button\"\n onClick={() => hiddenInputRef.current.click()}\n notUnderline\n >\n <Label type={LabelTypography.BUTTON_1} color={LabelColors.PRIMARY}>\n {stringSet.MODAL__CHANNEL_INFORMATION__UPLOAD}\n </Label>\n </TextButton>\n </div>\n <div className=\"channel-profile-form__name-section\">\n <InputLabel>\n {stringSet.MODAL__CHANNEL_INFORMATION__CHANNEL_NAME}\n </InputLabel>\n <Input\n required={title !== ''}\n name=\"channel-profile-form__name\"\n ref={inputRef}\n value={title}\n placeHolder={stringSet.MODAL__CHANNEL_INFORMATION__INPUT__PLACE_HOLDER}\n />\n </div>\n </form>\n </Modal>\n );\n};\n\nexport default EditDetails;\n"],"names":["EditDetails","props","onSubmit","onCancel","_d","useChannelSettings","channel","onChannelModified","onBeforeUpdateChannel","setChannelUpdateId","title","name","state","useSendbirdStateContext","userId","config","theme","logger","inputRef","useRef","formRef","hiddenInputRef","_e","useState","currentImg","setCurrentImg","_f","newFile","setNewFile","stringSet","useContext","LocalizationContext","React","MODAL__CHANNEL_INFORMATION__TITLE","BUTTON__SAVE","current","value","reportValidity","currentTitle","info","params","data","updateChannel","groupChannel","uuidv4","ButtonType","PRIMARY","e","preventDefault","MODAL__CHANNEL_INFORMATION__CHANNEL_IMAGE","display","URL","createObjectURL","target","files","click","LabelTypography","BUTTON_1","LabelColors","MODAL__CHANNEL_INFORMATION__UPLOAD","MODAL__CHANNEL_INFORMATION__CHANNEL_NAME","MODAL__CHANNEL_INFORMATION__INPUT__PLACE_HOLDER"],"mappings":"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"}