@sendbird/uikit-react 3.1.3 → 3.2.0-rc.0

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 (709) hide show
  1. package/App.js +33 -35
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +42 -0
  4. package/Channel/components/ChannelHeader.js +19 -21
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +26 -28
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +16 -18
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +5 -5
  11. package/Channel/components/FrozenNotification.js.map +1 -1
  12. package/Channel/components/Message.js +21 -23
  13. package/Channel/components/Message.js.map +1 -1
  14. package/Channel/components/MessageInput.js +22 -21
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageList.js +23 -25
  17. package/Channel/components/MessageList.js.map +1 -1
  18. package/Channel/components/RemoveMessageModal.js +18 -20
  19. package/Channel/components/RemoveMessageModal.js.map +1 -1
  20. package/Channel/components/SuggestedMentionList.js +17 -19
  21. package/Channel/components/SuggestedMentionList.js.map +1 -1
  22. package/Channel/components/TypingIndicator.js +16 -18
  23. package/Channel/components/TypingIndicator.js.map +1 -1
  24. package/Channel/components/UnreadCount.js +5 -5
  25. package/Channel/components/UnreadCount.js.map +1 -1
  26. package/Channel/context.js +15 -17
  27. package/Channel/context.js.map +1 -1
  28. package/Channel.js +24 -26
  29. package/Channel.js.map +1 -1
  30. package/ChannelList/components/AddChannel.js +14 -14
  31. package/ChannelList/components/AddChannel.js.map +1 -1
  32. package/ChannelList/components/ChannelListHeader.js +7 -7
  33. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  34. package/ChannelList/components/ChannelListUI.js +28 -30
  35. package/ChannelList/components/ChannelListUI.js.map +1 -1
  36. package/ChannelList/components/ChannelPreview.js +21 -23
  37. package/ChannelList/components/ChannelPreview.js.map +1 -1
  38. package/ChannelList/components/ChannelPreviewAction.js +19 -20
  39. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  40. package/ChannelList/context.js +10 -12
  41. package/ChannelList/context.js.map +1 -1
  42. package/ChannelList.js +28 -30
  43. package/ChannelList.js.map +1 -1
  44. package/{ChannelListProvider-0157b613.js → ChannelListProvider-6e3b8f43.js} +12 -11
  45. package/ChannelListProvider-6e3b8f43.js.map +1 -0
  46. package/{ChannelProvider-57689107.js → ChannelProvider-b8c6427f.js} +13 -13
  47. package/{ChannelProvider-57689107.js.map → ChannelProvider-b8c6427f.js.map} +1 -1
  48. package/ChannelSettings/components/ChannelProfile.js +12 -12
  49. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  50. package/ChannelSettings/components/ChannelSettingsUI.js +20 -22
  51. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  52. package/ChannelSettings/components/EditDetailsModal.js +13 -13
  53. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  54. package/ChannelSettings/components/LeaveChannel.js +14 -13
  55. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  56. package/ChannelSettings/components/ModerationPanel.js +30 -29
  57. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  58. package/ChannelSettings/components/UserListItem.js +12 -12
  59. package/ChannelSettings/components/UserListItem.js.map +1 -1
  60. package/ChannelSettings/components/UserPanel.js +14 -14
  61. package/ChannelSettings/components/UserPanel.js.map +1 -1
  62. package/ChannelSettings/context.js +3 -3
  63. package/ChannelSettings/context.js.map +1 -1
  64. package/ChannelSettings.js +20 -22
  65. package/ChannelSettings.js.map +1 -1
  66. package/CreateChannel/components/CreateChannelUI.js +14 -14
  67. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  68. package/CreateChannel/components/InviteUsers.js +15 -15
  69. package/CreateChannel/components/InviteUsers.js.map +1 -1
  70. package/CreateChannel/components/SelectChannelType.js +11 -11
  71. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  72. package/CreateChannel/context.js +4 -4
  73. package/CreateChannel.js +14 -14
  74. package/CreateChannel.js.map +1 -1
  75. package/{CreateChannelProvider-f84fd7e5.js → CreateChannelProvider-712526fd.js} +1 -1
  76. package/{CreateChannelProvider-f84fd7e5.js.map → CreateChannelProvider-712526fd.js.map} +1 -1
  77. package/CreateOpenChannel/components/CreateOpenChannelUI.js +128 -0
  78. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -0
  79. package/CreateOpenChannel/context.js +63 -0
  80. package/CreateOpenChannel/context.js.map +1 -0
  81. package/CreateOpenChannel.js +45 -0
  82. package/CreateOpenChannel.js.map +1 -0
  83. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  84. package/EditUserProfile/context.js.map +1 -1
  85. package/EditUserProfile.js +13 -13
  86. package/EditUserProfile.js.map +1 -1
  87. package/{LocalizationContext-5b475a64.js → LocalizationContext-4cefc770.js} +3 -3
  88. package/{LocalizationContext-5b475a64.js.map → LocalizationContext-4cefc770.js.map} +1 -1
  89. package/{MemberList-004dd3e6.js → MemberList-e4916e55.js} +13 -10
  90. package/MemberList-e4916e55.js.map +1 -0
  91. package/MessageSearch/components/MessageSearchUI.js +11 -11
  92. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  93. package/MessageSearch/context.js +2 -2
  94. package/MessageSearch/context.js.map +1 -1
  95. package/MessageSearch.js +11 -11
  96. package/MessageSearch.js.map +1 -1
  97. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  98. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  99. package/OpenChannel/components/OpenChannelHeader.js +15 -17
  100. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  101. package/OpenChannel/components/OpenChannelInput.js +21 -21
  102. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  103. package/OpenChannel/components/OpenChannelMessage.js +26 -26
  104. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  105. package/OpenChannel/components/OpenChannelMessageList.js +71 -67
  106. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  107. package/OpenChannel/components/OpenChannelUI.js +28 -28
  108. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  109. package/OpenChannel/context.js +12 -14
  110. package/OpenChannel/context.js.map +1 -1
  111. package/OpenChannel.js +29 -29
  112. package/OpenChannel.js.map +1 -1
  113. package/OpenChannelList/components/OpenChannelListUI.js +195 -0
  114. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -0
  115. package/OpenChannelList/components/OpenChannelPreview.js +68 -0
  116. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -0
  117. package/OpenChannelList/context.js +8 -0
  118. package/OpenChannelList/context.js.map +1 -0
  119. package/OpenChannelList.js +58 -0
  120. package/OpenChannelList.js.map +1 -0
  121. package/OpenChannelListProvider-845a2162.js +434 -0
  122. package/OpenChannelListProvider-845a2162.js.map +1 -0
  123. package/{OpenChannelProvider-f5d504ec.js → OpenChannelProvider-5f19d5d7.js} +10 -11
  124. package/OpenChannelProvider-5f19d5d7.js.map +1 -0
  125. package/OpenChannelSettings/components/EditDetailsModal.js +37 -35
  126. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  127. package/OpenChannelSettings/components/OpenChannelProfile.js +15 -15
  128. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  129. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +23 -23
  130. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  131. package/OpenChannelSettings/components/OperatorUI.js +25 -26
  132. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  133. package/OpenChannelSettings/components/ParticipantUI.js +18 -19
  134. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  135. package/OpenChannelSettings/context.js +11 -6
  136. package/OpenChannelSettings/context.js.map +1 -1
  137. package/OpenChannelSettings.js +20 -21
  138. package/OpenChannelSettings.js.map +1 -1
  139. package/README.md +1 -1
  140. package/SendbirdProvider.js +21 -22
  141. package/SendbirdProvider.js.map +1 -1
  142. package/{UserProfileContext-a2483e23.js → UserProfileContext-2e53d03a.js} +1 -1
  143. package/{UserProfileContext-a2483e23.js.map → UserProfileContext-2e53d03a.js.map} +1 -1
  144. package/__bundle-bd072f34-95f6bf17.js +8 -0
  145. package/__bundle-bd072f34-95f6bf17.js.map +1 -0
  146. package/{_rollupPluginBabelHelpers-b2b008c2.js → _rollupPluginBabelHelpers-4527872e.js} +1 -1
  147. package/{_rollupPluginBabelHelpers-b2b008c2.js.map → _rollupPluginBabelHelpers-4527872e.js.map} +1 -1
  148. package/{actionTypes-3a618022.js → actionTypes-517789b8.js} +1 -1
  149. package/{actionTypes-3a618022.js.map → actionTypes-517789b8.js.map} +1 -1
  150. package/cjs/App.js +33 -35
  151. package/cjs/App.js.map +1 -1
  152. package/cjs/Channel/components/ChannelHeader.js +19 -21
  153. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  154. package/cjs/Channel/components/ChannelUI.js +24 -26
  155. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  156. package/cjs/Channel/components/FileViewer.js +16 -18
  157. package/cjs/Channel/components/FileViewer.js.map +1 -1
  158. package/cjs/Channel/components/FrozenNotification.js +5 -5
  159. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  160. package/cjs/Channel/components/Message.js +21 -23
  161. package/cjs/Channel/components/Message.js.map +1 -1
  162. package/cjs/Channel/components/MessageInput.js +22 -21
  163. package/cjs/Channel/components/MessageInput.js.map +1 -1
  164. package/cjs/Channel/components/MessageList.js +23 -25
  165. package/cjs/Channel/components/MessageList.js.map +1 -1
  166. package/cjs/Channel/components/RemoveMessageModal.js +18 -20
  167. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  168. package/cjs/Channel/components/SuggestedMentionList.js +17 -19
  169. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  170. package/cjs/Channel/components/TypingIndicator.js +16 -18
  171. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  172. package/cjs/Channel/components/UnreadCount.js +5 -5
  173. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  174. package/cjs/Channel/context.js +15 -17
  175. package/cjs/Channel/context.js.map +1 -1
  176. package/cjs/Channel.js +24 -26
  177. package/cjs/Channel.js.map +1 -1
  178. package/cjs/ChannelList/components/AddChannel.js +14 -14
  179. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  180. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  181. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  182. package/cjs/ChannelList/components/ChannelListUI.js +28 -30
  183. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  184. package/cjs/ChannelList/components/ChannelPreview.js +21 -23
  185. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  186. package/cjs/ChannelList/components/ChannelPreviewAction.js +19 -20
  187. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  188. package/cjs/ChannelList/context.js +10 -12
  189. package/cjs/ChannelList/context.js.map +1 -1
  190. package/cjs/ChannelList.js +28 -30
  191. package/cjs/ChannelList.js.map +1 -1
  192. package/cjs/{ChannelListProvider-3e882076.js → ChannelListProvider-781aa186.js} +12 -11
  193. package/cjs/ChannelListProvider-781aa186.js.map +1 -0
  194. package/cjs/{ChannelProvider-b7e7f2ff.js → ChannelProvider-bbff4ae8.js} +17 -17
  195. package/cjs/{ChannelProvider-b7e7f2ff.js.map → ChannelProvider-bbff4ae8.js.map} +1 -1
  196. package/cjs/ChannelSettings/components/ChannelProfile.js +12 -12
  197. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  198. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +20 -22
  199. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  200. package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
  201. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  202. package/cjs/ChannelSettings/components/LeaveChannel.js +14 -13
  203. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  204. package/cjs/ChannelSettings/components/ModerationPanel.js +34 -33
  205. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  206. package/cjs/ChannelSettings/components/UserListItem.js +12 -12
  207. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  208. package/cjs/ChannelSettings/components/UserPanel.js +14 -14
  209. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  210. package/cjs/ChannelSettings/context.js +3 -3
  211. package/cjs/ChannelSettings/context.js.map +1 -1
  212. package/cjs/ChannelSettings.js +20 -22
  213. package/cjs/ChannelSettings.js.map +1 -1
  214. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  215. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  216. package/cjs/CreateChannel/components/InviteUsers.js +15 -15
  217. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  218. package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
  219. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  220. package/cjs/CreateChannel/context.js +4 -4
  221. package/cjs/CreateChannel.js +14 -14
  222. package/cjs/CreateChannel.js.map +1 -1
  223. package/cjs/{CreateChannelProvider-cea018b0.js → CreateChannelProvider-80c88bba.js} +1 -1
  224. package/cjs/{CreateChannelProvider-cea018b0.js.map → CreateChannelProvider-80c88bba.js.map} +1 -1
  225. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +134 -0
  226. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -0
  227. package/cjs/CreateOpenChannel/context.js +72 -0
  228. package/cjs/CreateOpenChannel/context.js.map +1 -0
  229. package/cjs/CreateOpenChannel.js +51 -0
  230. package/cjs/CreateOpenChannel.js.map +1 -0
  231. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  232. package/cjs/EditUserProfile/context.js.map +1 -1
  233. package/cjs/EditUserProfile.js +13 -13
  234. package/cjs/EditUserProfile.js.map +1 -1
  235. package/cjs/{LocalizationContext-c13ae9d5.js → LocalizationContext-b5fd4c38.js} +3 -3
  236. package/cjs/{LocalizationContext-c13ae9d5.js.map → LocalizationContext-b5fd4c38.js.map} +1 -1
  237. package/cjs/{MemberList-e062045b.js → MemberList-10def668.js} +15 -12
  238. package/cjs/MemberList-10def668.js.map +1 -0
  239. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  240. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  241. package/cjs/MessageSearch/context.js +2 -2
  242. package/cjs/MessageSearch/context.js.map +1 -1
  243. package/cjs/MessageSearch.js +11 -11
  244. package/cjs/MessageSearch.js.map +1 -1
  245. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  246. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  247. package/cjs/OpenChannel/components/OpenChannelHeader.js +15 -17
  248. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  249. package/cjs/OpenChannel/components/OpenChannelInput.js +21 -21
  250. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  251. package/cjs/OpenChannel/components/OpenChannelMessage.js +26 -26
  252. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  253. package/cjs/OpenChannel/components/OpenChannelMessageList.js +71 -67
  254. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  255. package/cjs/OpenChannel/components/OpenChannelUI.js +28 -28
  256. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  257. package/cjs/OpenChannel/context.js +12 -14
  258. package/cjs/OpenChannel/context.js.map +1 -1
  259. package/cjs/OpenChannel.js +29 -29
  260. package/cjs/OpenChannel.js.map +1 -1
  261. package/cjs/OpenChannelList/components/OpenChannelListUI.js +201 -0
  262. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -0
  263. package/cjs/OpenChannelList/components/OpenChannelPreview.js +74 -0
  264. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -0
  265. package/cjs/OpenChannelList/context.js +18 -0
  266. package/cjs/OpenChannelList/context.js.map +1 -0
  267. package/cjs/OpenChannelList.js +64 -0
  268. package/cjs/OpenChannelList.js.map +1 -0
  269. package/cjs/OpenChannelListProvider-8e425873.js +443 -0
  270. package/cjs/OpenChannelListProvider-8e425873.js.map +1 -0
  271. package/cjs/{OpenChannelProvider-341f9a01.js → OpenChannelProvider-39f9e794.js} +10 -11
  272. package/cjs/OpenChannelProvider-39f9e794.js.map +1 -0
  273. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +37 -35
  274. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  275. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +15 -15
  276. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  277. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +23 -23
  278. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  279. package/cjs/OpenChannelSettings/components/OperatorUI.js +29 -30
  280. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  281. package/cjs/OpenChannelSettings/components/ParticipantUI.js +18 -19
  282. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  283. package/cjs/OpenChannelSettings/context.js +11 -6
  284. package/cjs/OpenChannelSettings/context.js.map +1 -1
  285. package/cjs/OpenChannelSettings.js +20 -21
  286. package/cjs/OpenChannelSettings.js.map +1 -1
  287. package/cjs/SendbirdProvider.js +22 -22
  288. package/cjs/SendbirdProvider.js.map +1 -1
  289. package/cjs/{UserProfileContext-f7c125ca.js → UserProfileContext-69c9649a.js} +1 -1
  290. package/cjs/{UserProfileContext-f7c125ca.js.map → UserProfileContext-69c9649a.js.map} +1 -1
  291. package/cjs/__bundle-bd072f34-57bee5af.js +106 -0
  292. package/cjs/__bundle-bd072f34-57bee5af.js.map +1 -0
  293. package/cjs/{_rollupPluginBabelHelpers-09706ebf.js → _rollupPluginBabelHelpers-f9e4bb55.js} +1 -1
  294. package/cjs/{_rollupPluginBabelHelpers-09706ebf.js.map → _rollupPluginBabelHelpers-f9e4bb55.js.map} +1 -1
  295. package/cjs/{actionTypes-b3af2b15.js → actionTypes-17aa0989.js} +1 -1
  296. package/cjs/{actionTypes-b3af2b15.js.map → actionTypes-17aa0989.js.map} +1 -1
  297. package/cjs/{color-f0ffb253.js → color-9e293baf.js} +9 -9
  298. package/cjs/color-9e293baf.js.map +1 -0
  299. package/cjs/{compareIds-10371145.js → compareIds-cf626c9f.js} +1 -1
  300. package/cjs/{compareIds-10371145.js.map → compareIds-cf626c9f.js.map} +1 -1
  301. package/cjs/{const-84c58686.js → const-17108318.js} +1 -1
  302. package/cjs/{const-84c58686.js.map → const-17108318.js.map} +1 -1
  303. package/cjs/{const-459420a0.js → const-955190c4.js} +1 -1
  304. package/cjs/{const-459420a0.js.map → const-955190c4.js.map} +1 -1
  305. package/cjs/{context-01248097.js → context-e041c8e0.js} +2 -2
  306. package/cjs/{context-01248097.js.map → context-e041c8e0.js.map} +1 -1
  307. package/cjs/dist/index.css +237 -149
  308. package/cjs/dist/index.css.map +1 -1
  309. package/cjs/groupChannel-6d56c155.js +11 -0
  310. package/cjs/groupChannel-6d56c155.js.map +1 -0
  311. package/cjs/handlers/ConnectionHandler.js +2 -4
  312. package/cjs/handlers/ConnectionHandler.js.map +1 -1
  313. package/cjs/handlers/GroupChannelHandler.js +2 -4
  314. package/cjs/handlers/GroupChannelHandler.js.map +1 -1
  315. package/cjs/handlers/OpenChannelHandler.js +2 -3
  316. package/cjs/handlers/OpenChannelHandler.js.map +1 -1
  317. package/cjs/handlers/SessionHandler.js +2 -4
  318. package/cjs/handlers/SessionHandler.js.map +1 -1
  319. package/cjs/handlers/UserEventHandler.js +2 -4
  320. package/cjs/handlers/UserEventHandler.js.map +1 -1
  321. package/cjs/{index-0add0c83.js → index-025aa556.js} +7 -7
  322. package/cjs/index-025aa556.js.map +1 -0
  323. package/cjs/{index-243538a2.js → index-1512514f.js} +2 -2
  324. package/cjs/{index-243538a2.js.map → index-1512514f.js.map} +1 -1
  325. package/cjs/{index-c8f7702f.js → index-18b120dc.js} +5 -5
  326. package/cjs/index-18b120dc.js.map +1 -0
  327. package/cjs/{index-63b56a0e.js → index-5166a415.js} +1 -1
  328. package/cjs/{index-63b56a0e.js.map → index-5166a415.js.map} +1 -1
  329. package/cjs/{index-98e4f7b2.js → index-550f5039.js} +1 -1
  330. package/cjs/index-550f5039.js.map +1 -0
  331. package/cjs/{index-a00a0f18.js → index-5e2b8c03.js} +12 -12
  332. package/cjs/index-5e2b8c03.js.map +1 -0
  333. package/cjs/{index-2f58ecfc.js → index-9ce5e5a9.js} +4 -4
  334. package/cjs/{index-2f58ecfc.js.map → index-9ce5e5a9.js.map} +1 -1
  335. package/cjs/{index-dad73aff.js → index-b9b8972b.js} +3 -3
  336. package/cjs/{index-dad73aff.js.map → index-b9b8972b.js.map} +1 -1
  337. package/cjs/{index-701d44c1.js → index-c1697faa.js} +2 -2
  338. package/cjs/{index-701d44c1.js.map → index-c1697faa.js.map} +1 -1
  339. package/cjs/{index-2d53c0e6.js → index-e9d96b00.js} +15 -14
  340. package/cjs/index-e9d96b00.js.map +1 -0
  341. package/cjs/index.js +37 -39
  342. package/cjs/index.js.map +1 -1
  343. package/cjs/openChannel-8aabbf3c.js +9 -0
  344. package/cjs/openChannel-8aabbf3c.js.map +1 -0
  345. package/cjs/{openChannelUtils-7a336d09.js → openChannelUtils-cffba1c0.js} +1 -1
  346. package/cjs/{openChannelUtils-7a336d09.js.map → openChannelUtils-cffba1c0.js.map} +1 -1
  347. package/cjs/sendbirdSelectors.js +2 -2
  348. package/cjs/sendbirdSelectors.js.map +1 -1
  349. package/cjs/{stringSet-bd0c293d.js → stringSet-be457fd7.js} +18 -3
  350. package/cjs/stringSet-be457fd7.js.map +1 -0
  351. package/cjs/{topics-f3fe3bf3.js → topics-58ec1c61.js} +6 -2
  352. package/cjs/topics-58ec1c61.js.map +1 -0
  353. package/cjs/{tslib.es6-f57d0c81.js → tslib.es6-36205d81.js} +1 -1
  354. package/cjs/{tslib.es6-f57d0c81.js.map → tslib.es6-36205d81.js.map} +1 -1
  355. package/cjs/ui/Accordion.js +4 -4
  356. package/cjs/ui/Accordion.js.map +1 -1
  357. package/cjs/ui/AccordionGroup.js +2 -2
  358. package/cjs/ui/AccordionGroup.js.map +1 -1
  359. package/cjs/ui/AdminMessage.js +4 -4
  360. package/cjs/ui/AdminMessage.js.map +1 -1
  361. package/cjs/ui/Avatar.js +3 -3
  362. package/cjs/ui/Avatar.js.map +1 -1
  363. package/cjs/ui/Badge.js +6 -6
  364. package/cjs/ui/Badge.js.map +1 -1
  365. package/cjs/ui/Button.js +86 -9
  366. package/cjs/ui/Button.js.map +1 -1
  367. package/cjs/ui/ChannelAvatar.js +4 -4
  368. package/cjs/ui/ChannelAvatar.js.map +1 -1
  369. package/cjs/ui/Checkbox.js.map +1 -1
  370. package/cjs/ui/ConnectionStatus.js +5 -5
  371. package/cjs/ui/ConnectionStatus.js.map +1 -1
  372. package/cjs/ui/ContextMenu.js +8 -7
  373. package/cjs/ui/ContextMenu.js.map +1 -1
  374. package/cjs/ui/DateSeparator.js +5 -5
  375. package/cjs/ui/DateSeparator.js.map +1 -1
  376. package/cjs/ui/EmojiReactions.js +8 -8
  377. package/cjs/ui/EmojiReactions.js.map +1 -1
  378. package/cjs/ui/FileMessageItemBody.js +7 -7
  379. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  380. package/cjs/ui/FileViewer.js +9 -9
  381. package/cjs/ui/FileViewer.js.map +1 -1
  382. package/cjs/ui/Icon.js +2 -2
  383. package/cjs/ui/Icon.js.map +1 -1
  384. package/cjs/ui/IconButton.js +1 -1
  385. package/cjs/ui/IconButton.js.map +1 -1
  386. package/cjs/ui/ImageRenderer.js +1 -1
  387. package/cjs/ui/ImageRenderer.js.map +1 -1
  388. package/cjs/ui/Input.js +3 -3
  389. package/cjs/ui/Input.js.map +1 -1
  390. package/cjs/ui/Label.js +3 -3
  391. package/cjs/ui/LinkLabel.js +3 -3
  392. package/cjs/ui/LinkLabel.js.map +1 -1
  393. package/cjs/ui/Loader.js +2 -2
  394. package/cjs/ui/Loader.js.map +1 -1
  395. package/cjs/ui/MentionLabel.js +11 -11
  396. package/cjs/ui/MentionLabel.js.map +1 -1
  397. package/cjs/ui/MentionUserLabel.js.map +1 -1
  398. package/cjs/ui/MessageContent.js +14 -14
  399. package/cjs/ui/MessageContent.js.map +1 -1
  400. package/cjs/ui/MessageInput.js +12868 -2987
  401. package/cjs/ui/MessageInput.js.map +1 -1
  402. package/cjs/ui/MessageItemMenu.js +8 -8
  403. package/cjs/ui/MessageItemMenu.js.map +1 -1
  404. package/cjs/ui/MessageItemReactionMenu.js +6 -6
  405. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  406. package/cjs/ui/MessageSearchFileItem.js +10 -10
  407. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  408. package/cjs/ui/MessageSearchItem.js +10 -10
  409. package/cjs/ui/MessageSearchItem.js.map +1 -1
  410. package/cjs/ui/MessageStatus.js +8 -8
  411. package/cjs/ui/MessageStatus.js.map +1 -1
  412. package/cjs/ui/Modal.js +13 -12
  413. package/cjs/ui/Modal.js.map +1 -1
  414. package/cjs/ui/MutedAvatarOverlay.js +1 -1
  415. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  416. package/cjs/ui/OGMessageItemBody.js +11 -11
  417. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  418. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  419. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  420. package/cjs/ui/OpenChannelAvatar.js +7 -7
  421. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  422. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  423. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  424. package/cjs/ui/OpenchannelFileMessage.js +15 -15
  425. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  426. package/cjs/ui/OpenchannelOGMessage.js +37 -42
  427. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  428. package/cjs/ui/OpenchannelThumbnailMessage.js +14 -14
  429. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  430. package/cjs/ui/OpenchannelUserMessage.js +15 -15
  431. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  432. package/cjs/ui/PlaceHolder.js +7 -7
  433. package/cjs/ui/QuoteMessage.js +7 -7
  434. package/cjs/ui/QuoteMessage.js.map +1 -1
  435. package/cjs/ui/QuoteMessageInput.js +7 -7
  436. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  437. package/cjs/ui/ReactionBadge.js +4 -4
  438. package/cjs/ui/ReactionBadge.js.map +1 -1
  439. package/cjs/ui/ReactionButton.js +1 -1
  440. package/cjs/ui/ReactionButton.js.map +1 -1
  441. package/cjs/ui/SortByRow.js +2 -2
  442. package/cjs/ui/SortByRow.js.map +1 -1
  443. package/cjs/ui/TextButton.js +2 -2
  444. package/cjs/ui/TextButton.js.map +1 -1
  445. package/cjs/ui/TextMessageItemBody.js +11 -11
  446. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  447. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  448. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  449. package/cjs/ui/Tooltip.js +4 -4
  450. package/cjs/ui/Tooltip.js.map +1 -1
  451. package/cjs/ui/TooltipWrapper.js +1 -1
  452. package/cjs/ui/TooltipWrapper.js.map +1 -1
  453. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  454. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  455. package/cjs/ui/UserListItem.js +12 -12
  456. package/cjs/ui/UserListItem.js.map +1 -1
  457. package/cjs/ui/UserProfile.js +11 -11
  458. package/cjs/ui/UserProfile.js.map +1 -1
  459. package/cjs/ui/Word.js +13 -15
  460. package/cjs/ui/Word.js.map +1 -1
  461. package/cjs/useSendbirdStateContext.js +1 -1
  462. package/cjs/useSendbirdStateContext.js.map +1 -1
  463. package/cjs/{utils-760ac018.js → utils-09738454.js} +1 -1
  464. package/cjs/{utils-760ac018.js.map → utils-09738454.js.map} +1 -1
  465. package/cjs/{utils-959685f6.js → utils-40fab371.js} +1 -1
  466. package/cjs/{utils-959685f6.js.map → utils-40fab371.js.map} +1 -1
  467. package/cjs/{utils-438c14b6.js → utils-9419225c.js} +1 -1
  468. package/cjs/{utils-438c14b6.js.map → utils-9419225c.js.map} +1 -1
  469. package/cjs/{uuid-1942f440.js → uuid-edc908ea.js} +1 -1
  470. package/cjs/{uuid-1942f440.js.map → uuid-edc908ea.js.map} +1 -1
  471. package/cjs/withSendbird.js +1 -1
  472. package/cjs/withSendbird.js.map +1 -1
  473. package/{color-83cfc07a.js → color-402a36fd.js} +9 -9
  474. package/color-402a36fd.js.map +1 -0
  475. package/{compareIds-9455ecb0.js → compareIds-31e2f55c.js} +1 -1
  476. package/{compareIds-9455ecb0.js.map → compareIds-31e2f55c.js.map} +1 -1
  477. package/{const-7867ac6a.js → const-6b428cb8.js} +1 -1
  478. package/{const-7867ac6a.js.map → const-6b428cb8.js.map} +1 -1
  479. package/{const-71ceda85.js → const-768ef60e.js} +1 -1
  480. package/{const-71ceda85.js.map → const-768ef60e.js.map} +1 -1
  481. package/{context-2f6f1c17.js → context-bd92675f.js} +2 -2
  482. package/{context-2f6f1c17.js.map → context-bd92675f.js.map} +1 -1
  483. package/dist/index.css +237 -149
  484. package/dist/index.css.map +1 -1
  485. package/groupChannel-e2a071e1.js +8 -0
  486. package/groupChannel-e2a071e1.js.map +1 -0
  487. package/handlers/ConnectionHandler.js +2 -4
  488. package/handlers/ConnectionHandler.js.map +1 -1
  489. package/handlers/GroupChannelHandler.js +3 -5
  490. package/handlers/GroupChannelHandler.js.map +1 -1
  491. package/handlers/OpenChannelHandler.js +3 -4
  492. package/handlers/OpenChannelHandler.js.map +1 -1
  493. package/handlers/SessionHandler.js +2 -4
  494. package/handlers/SessionHandler.js.map +1 -1
  495. package/handlers/UserEventHandler.js +2 -4
  496. package/handlers/UserEventHandler.js.map +1 -1
  497. package/{index-25496c01.js → index-176e9ad4.js} +1 -1
  498. package/{index-25496c01.js.map → index-176e9ad4.js.map} +1 -1
  499. package/{index-1086dd43.js → index-3249f6b5.js} +1 -1
  500. package/index-3249f6b5.js.map +1 -0
  501. package/{index-952d5f9b.js → index-3699f160.js} +4 -4
  502. package/{index-952d5f9b.js.map → index-3699f160.js.map} +1 -1
  503. package/{index-2f85a795.js → index-598898d3.js} +2 -2
  504. package/{index-2f85a795.js.map → index-598898d3.js.map} +1 -1
  505. package/{index-e028fd23.js → index-6b896cd8.js} +3 -3
  506. package/{index-e028fd23.js.map → index-6b896cd8.js.map} +1 -1
  507. package/{index-d545f604.js → index-726a5475.js} +11 -11
  508. package/index-726a5475.js.map +1 -0
  509. package/{index-4400a360.js → index-7fa0a721.js} +2 -2
  510. package/{index-4400a360.js.map → index-7fa0a721.js.map} +1 -1
  511. package/{index-7a790c96.js → index-a98bd600.js} +15 -14
  512. package/index-a98bd600.js.map +1 -0
  513. package/{index-c3a36db0.js → index-b79c5b07.js} +7 -7
  514. package/index-b79c5b07.js.map +1 -0
  515. package/{index-24a5ab49.js → index-f59cf800.js} +5 -5
  516. package/index-f59cf800.js.map +1 -0
  517. package/index.d.ts +207 -97
  518. package/index.js +37 -39
  519. package/index.js.map +1 -1
  520. package/openChannel-8c75e1a4.js +6 -0
  521. package/openChannel-8c75e1a4.js.map +1 -0
  522. package/{openChannelUtils-f64223c9.js → openChannelUtils-ecaeb7d7.js} +1 -1
  523. package/{openChannelUtils-f64223c9.js.map → openChannelUtils-ecaeb7d7.js.map} +1 -1
  524. package/package-lock.json +25501 -0
  525. package/package.json +4 -3
  526. package/sendbirdSelectors.js +2 -2
  527. package/sendbirdSelectors.js.map +1 -1
  528. package/{stringSet-c4a61372.js → stringSet-dc330bcf.js} +18 -3
  529. package/stringSet-dc330bcf.js.map +1 -0
  530. package/{topics-851d221c.js → topics-c5198349.js} +6 -3
  531. package/topics-c5198349.js.map +1 -0
  532. package/{tslib.es6-72a2f141.js → tslib.es6-cb5d77bf.js} +1 -1
  533. package/{tslib.es6-72a2f141.js.map → tslib.es6-cb5d77bf.js.map} +1 -1
  534. package/ui/Accordion.js +4 -4
  535. package/ui/Accordion.js.map +1 -1
  536. package/ui/AccordionGroup.js +2 -2
  537. package/ui/AccordionGroup.js.map +1 -1
  538. package/ui/AdminMessage.js +4 -4
  539. package/ui/AdminMessage.js.map +1 -1
  540. package/ui/Avatar.js +3 -3
  541. package/ui/Avatar.js.map +1 -1
  542. package/ui/Badge.js +6 -6
  543. package/ui/Badge.js.map +1 -1
  544. package/ui/Button.js +83 -6
  545. package/ui/Button.js.map +1 -1
  546. package/ui/ChannelAvatar.js +4 -4
  547. package/ui/ChannelAvatar.js.map +1 -1
  548. package/ui/Checkbox.js.map +1 -1
  549. package/ui/ConnectionStatus.js +5 -5
  550. package/ui/ConnectionStatus.js.map +1 -1
  551. package/ui/ContextMenu.js +8 -7
  552. package/ui/ContextMenu.js.map +1 -1
  553. package/ui/DateSeparator.js +5 -5
  554. package/ui/DateSeparator.js.map +1 -1
  555. package/ui/EmojiReactions.js +8 -8
  556. package/ui/EmojiReactions.js.map +1 -1
  557. package/ui/FileMessageItemBody.js +7 -7
  558. package/ui/FileMessageItemBody.js.map +1 -1
  559. package/ui/FileViewer.js +9 -9
  560. package/ui/FileViewer.js.map +1 -1
  561. package/ui/Icon.js +2 -3
  562. package/ui/Icon.js.map +1 -1
  563. package/ui/IconButton.js +1 -1
  564. package/ui/IconButton.js.map +1 -1
  565. package/ui/ImageRenderer.js +1 -1
  566. package/ui/ImageRenderer.js.map +1 -1
  567. package/ui/Input.js +3 -3
  568. package/ui/Input.js.map +1 -1
  569. package/ui/Label.js +3 -3
  570. package/ui/LinkLabel.js +3 -3
  571. package/ui/LinkLabel.js.map +1 -1
  572. package/ui/Loader.js +2 -2
  573. package/ui/Loader.js.map +1 -1
  574. package/ui/MentionLabel.js +11 -11
  575. package/ui/MentionLabel.js.map +1 -1
  576. package/ui/MentionUserLabel.js.map +1 -1
  577. package/ui/MessageContent.js +14 -14
  578. package/ui/MessageContent.js.map +1 -1
  579. package/ui/MessageInput.js +12866 -2985
  580. package/ui/MessageInput.js.map +1 -1
  581. package/ui/MessageItemMenu.js +8 -8
  582. package/ui/MessageItemMenu.js.map +1 -1
  583. package/ui/MessageItemReactionMenu.js +6 -6
  584. package/ui/MessageItemReactionMenu.js.map +1 -1
  585. package/ui/MessageSearchFileItem.js +10 -10
  586. package/ui/MessageSearchFileItem.js.map +1 -1
  587. package/ui/MessageSearchItem.js +10 -10
  588. package/ui/MessageSearchItem.js.map +1 -1
  589. package/ui/MessageStatus.js +8 -8
  590. package/ui/MessageStatus.js.map +1 -1
  591. package/ui/Modal.js +11 -10
  592. package/ui/Modal.js.map +1 -1
  593. package/ui/MutedAvatarOverlay.js +1 -1
  594. package/ui/MutedAvatarOverlay.js.map +1 -1
  595. package/ui/OGMessageItemBody.js +11 -11
  596. package/ui/OGMessageItemBody.js.map +1 -1
  597. package/ui/OpenChannelAdminMessage.js +4 -4
  598. package/ui/OpenChannelAdminMessage.js.map +1 -1
  599. package/ui/OpenChannelAvatar.js +7 -7
  600. package/ui/OpenChannelAvatar.js.map +1 -1
  601. package/ui/OpenchannelConversationHeader.js +7 -7
  602. package/ui/OpenchannelConversationHeader.js.map +1 -1
  603. package/ui/OpenchannelFileMessage.js +15 -15
  604. package/ui/OpenchannelFileMessage.js.map +1 -1
  605. package/ui/OpenchannelOGMessage.js +37 -42
  606. package/ui/OpenchannelOGMessage.js.map +1 -1
  607. package/ui/OpenchannelThumbnailMessage.js +14 -14
  608. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  609. package/ui/OpenchannelUserMessage.js +15 -15
  610. package/ui/OpenchannelUserMessage.js.map +1 -1
  611. package/ui/PlaceHolder.js +7 -7
  612. package/ui/QuoteMessage.js +7 -7
  613. package/ui/QuoteMessage.js.map +1 -1
  614. package/ui/QuoteMessageInput.js +7 -7
  615. package/ui/QuoteMessageInput.js.map +1 -1
  616. package/ui/ReactionBadge.js +4 -4
  617. package/ui/ReactionBadge.js.map +1 -1
  618. package/ui/ReactionButton.js +1 -1
  619. package/ui/ReactionButton.js.map +1 -1
  620. package/ui/SortByRow.js +2 -2
  621. package/ui/SortByRow.js.map +1 -1
  622. package/ui/TextButton.js +2 -2
  623. package/ui/TextButton.js.map +1 -1
  624. package/ui/TextMessageItemBody.js +11 -11
  625. package/ui/TextMessageItemBody.js.map +1 -1
  626. package/ui/ThumbnailMessageItemBody.js +3 -3
  627. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  628. package/ui/Tooltip.js +4 -4
  629. package/ui/Tooltip.js.map +1 -1
  630. package/ui/TooltipWrapper.js +1 -1
  631. package/ui/TooltipWrapper.js.map +1 -1
  632. package/ui/UnknownMessageItemBody.js +7 -7
  633. package/ui/UnknownMessageItemBody.js.map +1 -1
  634. package/ui/UserListItem.js +12 -12
  635. package/ui/UserListItem.js.map +1 -1
  636. package/ui/UserProfile.js +10 -10
  637. package/ui/UserProfile.js.map +1 -1
  638. package/ui/Word.js +13 -15
  639. package/ui/Word.js.map +1 -1
  640. package/useSendbirdStateContext.js +1 -1
  641. package/useSendbirdStateContext.js.map +1 -1
  642. package/{utils-12da1022.js → utils-330ed0b1.js} +1 -1
  643. package/{utils-12da1022.js.map → utils-330ed0b1.js.map} +1 -1
  644. package/{utils-2c4d166e.js → utils-629876b9.js} +1 -1
  645. package/{utils-2c4d166e.js.map → utils-629876b9.js.map} +1 -1
  646. package/{utils-bc7d8f0c.js → utils-8fb72715.js} +1 -1
  647. package/{utils-bc7d8f0c.js.map → utils-8fb72715.js.map} +1 -1
  648. package/{uuid-8a4db02f.js → uuid-180d497e.js} +1 -1
  649. package/{uuid-8a4db02f.js.map → uuid-180d497e.js.map} +1 -1
  650. package/withSendbird.js +1 -1
  651. package/withSendbird.js.map +1 -1
  652. package/ChannelListProvider-0157b613.js.map +0 -1
  653. package/MemberList-004dd3e6.js.map +0 -1
  654. package/OpenChannelProvider-f5d504ec.js.map +0 -1
  655. package/__bundle-6316ce22-63d15802.js +0 -20
  656. package/__bundle-6316ce22-63d15802.js.map +0 -1
  657. package/__bundle-7dfccc8c-d5c3938c.js +0 -6
  658. package/__bundle-7dfccc8c-d5c3938c.js.map +0 -1
  659. package/__bundle-fbda47dd-b1c87af3.js +0 -6
  660. package/__bundle-fbda47dd-b1c87af3.js.map +0 -1
  661. package/cjs/ChannelListProvider-3e882076.js.map +0 -1
  662. package/cjs/MemberList-e062045b.js.map +0 -1
  663. package/cjs/OpenChannelProvider-341f9a01.js.map +0 -1
  664. package/cjs/__bundle-6316ce22-054c7ff6.js +0 -127
  665. package/cjs/__bundle-6316ce22-054c7ff6.js.map +0 -1
  666. package/cjs/__bundle-7dfccc8c-826eb0ef.js +0 -15
  667. package/cjs/__bundle-7dfccc8c-826eb0ef.js.map +0 -1
  668. package/cjs/__bundle-fbda47dd-4cb7267d.js +0 -33
  669. package/cjs/__bundle-fbda47dd-4cb7267d.js.map +0 -1
  670. package/cjs/color-f0ffb253.js.map +0 -1
  671. package/cjs/groupChannel-4934c435.js +0 -11
  672. package/cjs/groupChannel-4934c435.js.map +0 -1
  673. package/cjs/index-0add0c83.js.map +0 -1
  674. package/cjs/index-2d53c0e6.js.map +0 -1
  675. package/cjs/index-98e4f7b2.js.map +0 -1
  676. package/cjs/index-a00a0f18.js.map +0 -1
  677. package/cjs/index-c8f7702f.js.map +0 -1
  678. package/cjs/index-d889bc81.js +0 -90
  679. package/cjs/index-d889bc81.js.map +0 -1
  680. package/cjs/openChannel-e95532d8.js +0 -10
  681. package/cjs/openChannel-e95532d8.js.map +0 -1
  682. package/cjs/sendbird-e3e5c8ae.js +0 -12
  683. package/cjs/sendbird-e3e5c8ae.js.map +0 -1
  684. package/cjs/stringSet-bd0c293d.js.map +0 -1
  685. package/cjs/topics-f3fe3bf3.js.map +0 -1
  686. package/cjs/ui/ChannelPreview.js +0 -212
  687. package/cjs/ui/ChannelPreview.js.map +0 -1
  688. package/cjs/ui/ChatHeader.js +0 -120
  689. package/cjs/ui/ChatHeader.js.map +0 -1
  690. package/color-83cfc07a.js.map +0 -1
  691. package/groupChannel-de6b26ee.js +0 -8
  692. package/groupChannel-de6b26ee.js.map +0 -1
  693. package/index-1086dd43.js.map +0 -1
  694. package/index-16e14c17.js +0 -82
  695. package/index-16e14c17.js.map +0 -1
  696. package/index-24a5ab49.js.map +0 -1
  697. package/index-7a790c96.js.map +0 -1
  698. package/index-c3a36db0.js.map +0 -1
  699. package/index-d545f604.js.map +0 -1
  700. package/openChannel-825f8e93.js +0 -7
  701. package/openChannel-825f8e93.js.map +0 -1
  702. package/sendbird-21239b88.js +0 -7
  703. package/sendbird-21239b88.js.map +0 -1
  704. package/stringSet-c4a61372.js.map +0 -1
  705. package/topics-851d221c.js.map +0 -1
  706. package/ui/ChannelPreview.js +0 -205
  707. package/ui/ChannelPreview.js.map +0 -1
  708. package/ui/ChatHeader.js +0 -114
  709. package/ui/ChatHeader.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ModerationPanel.js","sources":["../../../../src/smart-components/ChannelSettings/components/ModerationPanel/OperatorsModal.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/AddOperatorsModal.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/OperatorList.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/BannedUsersModal.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/BannedUserList.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/MutedMembersModal.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/MutedMemberList.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useContext,\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 { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\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 } = useChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUser = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n const operatorListQuery = channel?.createOperatorListQuery({\n limit: 20,\n });\n operatorListQuery.next().then((operators) => {\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().then((o) => {\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]).then(() => {\n setOperators(operators.filter(({ userId }) => {\n return userId !== member.userId;\n }));\n });\n closeDropdown();\n }}\n >\n {stringSet.CHANNEL_SETTING__MODERATION__UNREGISTER_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 { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport { OperatorFilter } from '@sendbird/chat/groupChannel';\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 } = useChannelSettingsContext();\n\n useEffect(() => {\n const memberListQuery = channel?.createMemberListQuery({\n operatorFilter: OperatorFilter.NONOPERATOR,\n limit: 20,\n });\n memberListQuery.next().then((members) => {\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().then((o) => {\n setMembers([\n ...members,\n ...o,\n ])\n });\n }\n }}\n >\n {\n members.map((member) => (\n <UserListItem\n checkBox\n checked={selectedMembers[member.userId]}\n isOperator={member?.role === 'operator'}\n disabled={member?.role === 'operator'}\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 }\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 { useChannelSettingsContext } 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 } = useChannelSettingsContext();\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 limit: 10,\n });\n operatorListQuery.next().then((operators) => {\n setOperators(operators);\n setHasNext(operatorListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(\n () => {\n if (!channel) {\n setOperators([]);\n return;\n }\n const operatorListQuery = channel?.createOperatorListQuery({\n limit: 10,\n });\n operatorListQuery.next().then((operators) => {\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 }) => {\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 parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel?.removeOperators([operator.userId]).then(() => {\n setOperators(operators.filter(({ userId }) => (\n userId !== operator.userId\n )));\n });\n closeDropdown();\n }}\n >\n {stringSet.CHANNEL_SETTING__MODERATION__UNREGISTER_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 refreshList();\n }} />\n )\n }\n {\n showAdd && (\n <AddOperatorsModal\n onCancel={() => setShowAdd(false)}\n onSubmit={() => {\n refreshList();\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 { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function BannedUsersModal({\n onCancel,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [memberQuery, setMemberQuery] = useState(null);\n const { channel } = useChannelSettingsContext();\n\n useEffect(() => {\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\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().then((o) => {\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).then(() => {\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 BannedUsersModal from './BannedUsersModal';\nimport { useChannelSettingsContext } 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 } = useChannelSettingsContext();\n\n useEffect(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\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().then((users) => {\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).then(() => {\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 <BannedUsersModal\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 { useChannelSettingsContext } 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 } = useChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUser = state?.config?.userId;\n\n useEffect(() => {\n const memberUserListQuery = channel?.createMemberListQuery({\n limit: 10,\n // @ts-ignore\n mutedMemberFilter: 'muted',\n });\n memberUserListQuery.next().then((members) => {\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().then((o) => {\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).then(() => {\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 { useChannelSettingsContext } 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 } = useChannelSettingsContext();\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 limit: 10,\n // @ts-ignore\n mutedMemberFilter: 'muted',\n });\n memberUserListQuery.next().then((members) => {\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 limit: 10,\n // @ts-ignore\n mutedMemberFilter: 'muted',\n });\n memberUserListQuery.next().then((members) => {\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).then(() => {\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 BannedUserList from './BannedUserList';\nimport MutedMemberList from './MutedMemberList';\n\nimport { useChannelSettingsContext } 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 } = useChannelSettingsContext();\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=\"bannedUsers\"\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 <BannedUserList />\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().then(() => {\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().then(() => {\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","useChannelSettingsContext","state","useSendbirdStateContext","currentUser","config","userId","stringSet","useContext","LocalizationContext","useEffect","operatorListQuery","createOperatorListQuery","limit","next","then","React","Modal","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","o","map","member","UserListItem","parentRef","actionRef","ContextMenu","toggleDropdown","IconButton","Icon","IconTypes","MORE","IconColors","CONTENT_INVERSE","closeDropdown","MenuItems","MenuItem","removeOperators","filter","CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","AddOperatorsModal","onSubmit","_b","members","setMembers","selectedMembers","setSelectedMembers","memberQuery","setMemberQuery","memberListQuery","createMemberListQuery","operatorFilter","OperatorFilter","NONOPERATOR","selectedCount","Object","keys","m","length","ButtonType","PRIMARY","addOperators","Label","LabelColors","ONBACKGROUND_3","LabelTypography","CAPTION_1","MODAL__INVITE_MEMBER__SELECTEC","role","event","modifiedSelectedMembers","id","checked","OperatorList","showMore","setShowMore","showAdd","setShowAdd","_e","setHasNext","refreshList","useCallback","operator","Button","ButtonTypes","SECONDARY","ButtonSizes","SMALL","CHANNEL_SETTING__OPERATORS__TITLE_ADD","CHANNEL_SETTING__OPERATORS__TITLE_ALL","BannedUsersModal","bannedUserListQuery","createBannedUserListQuery","users","noop","unbanUser","BannedMemberList","showModal","setShowModal","SUBTITLE_2","MutedMembersModal","memberUserListQuery","mutedMemberFilter","unmuteUser","MutedMemberList","kFormatter","num","Math","abs","toFixed","AdminPannel","frozen","setFrozen","isFrozen","AccordionGroup","Accordion","OPERATOR","SUBTITLE_1","ONBACKGROUND_1","CHANNEL_SETTING__OPERATORS__TITLE","MEMBERS","CHANNEL_SETTING__MEMBERS__TITLE","Badge","memberCount","MemberList","isBroadcast","MUTE","CHANNEL_SETTING__MUTED_MEMBERS__TITLE","BAN","CHANNEL_SETTING__BANNED_MEMBERS__TITLE","BannedUserList","FREEZE","CHANNEL_SETTING__FREEZE_CHANNEL","unfreeze","TOGGLE_ON","freeze","TOGGLE_OFF"],"mappings":"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"}
1
+ {"version":3,"file":"ModerationPanel.js","sources":["../../../../src/smart-components/ChannelSettings/components/ModerationPanel/OperatorsModal.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/AddOperatorsModal.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/OperatorList.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/BannedUsersModal.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/BannedUserList.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/MutedMembersModal.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/MutedMemberList.tsx","../../../../src/smart-components/ChannelSettings/components/ModerationPanel/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useContext,\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 { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\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 } = useChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUser = state?.config?.userId;\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n const operatorListQuery = channel?.createOperatorListQuery({\n limit: 20,\n });\n operatorListQuery.next().then((operators) => {\n setOperators(operators);\n });\n setOperatorQuery(operatorListQuery);\n }, [])\n return (\n <div>\n <Modal\n hideFooter\n titleText={stringSet.CHANNEL_SETTING__OPERATORS__TITLE_ALL}\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().then((o) => {\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]).then(() => {\n setOperators(operators.filter(({ userId }) => {\n return userId !== member.userId;\n }));\n });\n closeDropdown();\n }}\n >\n {stringSet.CHANNEL_SETTING__MODERATION__UNREGISTER_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 { ButtonTypes } from '../../../../ui/Button';\nimport UserListItem from '../../../../ui/UserListItem';\nimport { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport { OperatorFilter } from '@sendbird/chat/groupChannel';\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 } = useChannelSettingsContext();\n\n useEffect(() => {\n const memberListQuery = channel?.createMemberListQuery({\n operatorFilter: OperatorFilter.NONOPERATOR,\n limit: 20,\n });\n memberListQuery.next().then((members) => {\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={ButtonTypes.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={stringSet.CHANNEL_SETTING__MEMBERS__SELECT_TITLE}\n >\n <Label\n color={(selectedCount > 0) ? LabelColors.PRIMARY : LabelColors.ONBACKGROUND_3}\n type={LabelTypography.CAPTION_1}\n >\n {`${selectedCount} ${stringSet.MODAL__INVITE_MEMBER__SELECTED}`}\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().then((o) => {\n setMembers([\n ...members,\n ...o,\n ])\n });\n }\n }}\n >\n {\n members.map((member) => (\n <UserListItem\n checkBox\n checked={selectedMembers[member.userId]}\n isOperator={member?.role === 'operator'}\n disabled={member?.role === 'operator'}\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 }\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 { useChannelSettingsContext } 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 } = useChannelSettingsContext();\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 limit: 10,\n });\n operatorListQuery.next().then((operators) => {\n setOperators(operators);\n setHasNext(operatorListQuery.hasNext);\n });\n }, [channel]);\n\n const refreshList = useCallback(\n () => {\n if (!channel) {\n setOperators([]);\n return;\n }\n const operatorListQuery = channel?.createOperatorListQuery({\n limit: 10,\n });\n operatorListQuery.next().then((operators) => {\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 }) => {\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 parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n channel?.removeOperators([operator.userId]).then(() => {\n setOperators(operators.filter(({ userId }) => (\n userId !== operator.userId\n )));\n });\n closeDropdown();\n }}\n >\n {stringSet.CHANNEL_SETTING__MODERATION__UNREGISTER_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 refreshList();\n }} />\n )\n }\n {\n showAdd && (\n <AddOperatorsModal\n onCancel={() => setShowAdd(false)}\n onSubmit={() => {\n refreshList();\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 { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function BannedUsersModal({\n onCancel,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [memberQuery, setMemberQuery] = useState(null);\n const { channel } = useChannelSettingsContext();\n const { stringSet } = useLocalization();\n\n useEffect(() => {\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\n setMembers(users);\n });\n setMemberQuery(bannedUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText={stringSet.CHANNEL_SETTING__MUTED_MEMBERS__TITLE}\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().then((o) => {\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).then(() => {\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 BannedUsersModal from './BannedUsersModal';\nimport { useChannelSettingsContext } 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 } = useChannelSettingsContext();\n\n useEffect(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const bannedUserListQuery = channel?.createBannedUserListQuery();\n bannedUserListQuery.next().then((users) => {\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().then((users) => {\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).then(() => {\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 <BannedUsersModal\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 { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\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 } = useChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUser = state?.config?.userId;\n const { stringSet } = useLocalization();\n\n useEffect(() => {\n const memberUserListQuery = channel?.createMemberListQuery({\n limit: 10,\n // @ts-ignore\n mutedMemberFilter: 'muted',\n });\n memberUserListQuery.next().then((members) => {\n setMembers(members);\n });\n setMemberQuery(memberUserListQuery);\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText={stringSet.CHANNEL_SETTING__MUTED_MEMBERS__TITLE}\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().then((o) => {\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).then(() => {\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 { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\n\nexport const MutedMemberList = (): ReactElement => {\n const [members, setMembers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showModal, setShowModal] = useState(false);\n const { stringSet } = useLocalization();\n\n const { channel } = useChannelSettingsContext();\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 limit: 10,\n // @ts-ignore\n mutedMemberFilter: 'muted',\n });\n memberUserListQuery.next().then((members) => {\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 limit: 10,\n // @ts-ignore\n mutedMemberFilter: 'muted',\n });\n memberUserListQuery.next().then((members) => {\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).then(() => {\n refreshList();\n closeDropdown();\n })\n }}\n >\n <>\n {stringSet.CHANNEL_SETTING__UNMUTE}\n </>\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 {stringSet.CHANNEL_SETTING__NO_UNMUTED}\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 {stringSet.CHANNEL_SETTING__MUTED_MEMBERS__TITLE_ALL}\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 BannedUserList from './BannedUserList';\nimport MutedMemberList from './MutedMemberList';\n\nimport { useChannelSettingsContext } 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 } = useChannelSettingsContext();\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=\"bannedUsers\"\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 <BannedUserList />\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().then(() => {\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().then(() => {\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","useChannelSettingsContext","state","useSendbirdStateContext","currentUser","config","userId","stringSet","useContext","LocalizationContext","useEffect","operatorListQuery","createOperatorListQuery","limit","next","then","React","Modal","CHANNEL_SETTING__OPERATORS__TITLE_ALL","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","o","map","member","UserListItem","parentRef","actionRef","ContextMenu","toggleDropdown","IconButton","Icon","IconTypes","MORE","IconColors","CONTENT_INVERSE","closeDropdown","MenuItems","MenuItem","removeOperators","filter","CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","AddOperatorsModal","onSubmit","_b","members","setMembers","selectedMembers","setSelectedMembers","memberQuery","setMemberQuery","memberListQuery","createMemberListQuery","operatorFilter","OperatorFilter","NONOPERATOR","selectedCount","Object","keys","m","length","ButtonTypes","PRIMARY","addOperators","CHANNEL_SETTING__MEMBERS__SELECT_TITLE","Label","LabelColors","ONBACKGROUND_3","LabelTypography","CAPTION_1","MODAL__INVITE_MEMBER__SELECTED","role","event","modifiedSelectedMembers","id","checked","OperatorList","showMore","setShowMore","showAdd","setShowAdd","_e","setHasNext","refreshList","useCallback","operator","Button","SECONDARY","ButtonSizes","SMALL","CHANNEL_SETTING__OPERATORS__TITLE_ADD","BannedUsersModal","useLocalization","bannedUserListQuery","createBannedUserListQuery","users","noop","CHANNEL_SETTING__MUTED_MEMBERS__TITLE","unbanUser","BannedMemberList","showModal","setShowModal","SUBTITLE_2","MutedMembersModal","memberUserListQuery","mutedMemberFilter","unmuteUser","MutedMemberList","CHANNEL_SETTING__UNMUTE","CHANNEL_SETTING__NO_UNMUTED","CHANNEL_SETTING__MUTED_MEMBERS__TITLE_ALL","kFormatter","num","Math","abs","toFixed","AdminPannel","frozen","setFrozen","isFrozen","AccordionGroup","Accordion","OPERATOR","SUBTITLE_1","ONBACKGROUND_1","CHANNEL_SETTING__OPERATORS__TITLE","MEMBERS","CHANNEL_SETTING__MEMBERS__TITLE","Badge","memberCount","MemberList","isBroadcast","MUTE","BAN","CHANNEL_SETTING__BANNED_MEMBERS__TITLE","BannedUserList","FREEZE","CHANNEL_SETTING__FREEZE_CHANNEL","unfreeze","TOGGLE_ON","freeze","TOGGLE_OFF"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAmBwBA,eAAeC;;;MAAEC,QAAQ;;EACzC,IAAAC,KAA4BC,cAAQ,CAAC,EAAD,CAApC;MAACC,SAAS,QAAV;MAAYC,YAAY,QAAxB;;EACA,IAAAC,KAAoCH,cAAQ,CAAC,IAAD,CAA5C;MAACI,aAAa,QAAd;MAAgBC,gBAAgB,QAAhC;;EAEE,IAAAC,OAAO,GAAKC,iDAAyB,UAArC;EACR,IAAMC,KAAK,GAAGC,uBAAuB,EAArC;EACA,IAAMC,WAAW,GAAG,MAAAF,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEG,MAAP,UAAA,iBAAA,SAAA,MAAeC,MAAnC;EACQ,IAAAC,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd;EAERC,eAAS,CAAC;IACR,IAAMC,iBAAiB,GAAGX,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEY,uBAAT,CAAiC;MACzDC,KAAK,EAAE;KADiB,CAA1B;IAGAF,iBAAiB,CAACG,IAAlB,GAAyBC,IAAzB,CAA8B,UAACpB,SAAD;MAC5BC,YAAY,CAACD,SAAD,CAAZ;KADF;IAGAI,gBAAgB,CAACY,iBAAD,CAAhB;GAPO,EAQN,EARM,CAAT;EASA,oBACEK,kEACEA,wCAACC,mBAAD;IACE,UAAU,MADZ;IAEE,SAAS,EAAEV,SAAS,CAACW,qCAFvB;IAGE,QAAQ,EAAE1B;kBAEVwB;IACE,SAAS,EAAC,qCADZ;IAEE,QAAQ,EAAE,kBAACG,CAAD;MACA,IAAAC,OAAO,GAAKtB,aAAa,QAAzB;MACR,IAAMuB,MAAM,GAAGF,CAAC,CAACE,MAAjB;MACA,IAAMC,SAAS,GACbD,MAAM,CAACE,YAAP,GAAsBF,MAAM,CAACG,SAA7B,KAA2CH,MAAM,CAACI,YADpD;;MAIA,IAAIL,OAAO,IAAIE,SAAf,EAA0B;QACxBxB,aAAa,CAACgB,IAAd,GAAqBC,IAArB,CAA0B,UAACW,CAAD;UACxB9B,YAAY,qDACPD,kBACA+B,QAFO,CAAZ;SADF;;;KASF/B,SAAS,CAACgC,GAAV,CAAc,UAACC,MAAD;IAAY,oBAC1BZ,wCAACa,eAAD;MACE,WAAW,EAAEzB,WADf;MAEE,IAAI,EAAEwB,MAFR;MAGE,GAAG,EAAEA,MAAM,CAACtB,MAHd;MAIE,MAAM,EAAE,gBAACf,EAAD;YAAGuC,SAAS;YAAEC,SAAS;QAAO,oBACpCf,wCAACgB,yBAAD;UACE,WAAW,EAAE,qBAACC,cAAD;YAAoB,oBAC/BjB,wCAACkB,aAAD;cACE,SAAS,EAAC,mCADZ;cAEE,KAAK,EAAC,MAFR;cAGE,MAAM,EAAC,MAHT;cAIE,OAAO,EAAED;4BAETjB,wCAACmB,kBAAD;cACE,KAAK,EAAC,MADR;cAEE,MAAM,EAAC,MAFT;cAGE,IAAI,EAAEC,iBAAS,CAACC,IAHlB;cAIE,SAAS,EAAEC,kBAAU,CAACC;cAV1B,CAD+B;WADnC;UAgBE,SAAS,EAAE,mBAACC,aAAD;YAAmB,oBAC5BxB,wCAACyB,wBAAD;cACE,gBAAgB,EAAEX,SADpB;cAEE,SAAS,EAAEC,SAFb;;cAGE,aAAa,EAAES,aAHjB;cAIE,QAAQ;4BAERxB,wCAAC0B,uBAAD;cACE,OAAO,EAAE;gBACP1C,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE2C,eAAT,CAAyB,CAACf,MAAM,CAACtB,MAAR,CAAzB,EAA0CS,IAA1C,CAA+C;kBAC7CnB,YAAY,CAACD,SAAS,CAACiD,MAAV,CAAiB,UAACrD,EAAD;wBAAGe,MAAM;oBACrC,OAAOA,MAAM,KAAKsB,MAAM,CAACtB,MAAzB;mBADW,CAAD,CAAZ;iBADF,CAAA;gBAKAkC,aAAa;;eAGdjC,SAAS,CAACsC,gDAVb,CANF,CAD4B;;UAjBI;;MALd;GAA1B,CAnBJ,CALF,CADF,CADF;AA6ED;;SC3FuBC,kBAAkBvD;MACxCC,QAAQ;MACRuD,SAAQ;;EAEF,IAAAC,KAAwBtD,cAAQ,CAAC,EAAD,CAAhC;MAACuD,OAAO,QAAR;MAAUC,UAAU,QAApB;;EACA,IAAAzD,KAAwCC,cAAQ,CAAC,EAAD,CAAhD;MAACyD,eAAe,QAAhB;MAAkBC,kBAAkB,QAApC;;EACA,IAAAvD,KAAgCH,cAAQ,CAAC,IAAD,CAAxC;MAAC2D,WAAW,QAAZ;MAAcC,cAAc,QAA5B;;EACE,IAAA/C,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd;EAEA,IAAAT,OAAO,GAAKC,iDAAyB,UAArC;EAERS,eAAS,CAAC;IACR,IAAM6C,eAAe,GAAGvD,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEwD,qBAAT,CAA+B;MACrDC,cAAc,EAAEC,eAAc,CAACC,WADsB;MAErD9C,KAAK,EAAE;KAFe,CAAxB;IAIA0C,eAAe,CAACzC,IAAhB,GAAuBC,IAAvB,CAA4B,UAACkC,OAAD;MAC1BC,UAAU,CAACD,OAAD,CAAV;KADF;IAGAK,cAAc,CAACC,eAAD,CAAd;GARO,EASN,EATM,CAAT;EAWA,IAAMK,aAAa,GAAGC,MAAM,CAACC,IAAP,CAAYX,eAAZ,EAA6BP,MAA7B,CAAoC,UAACmB,CAAD;IAAO,OAAAZ,eAAe,CAACY,CAAD,CAAf;GAA3C,EAA+DC,MAArF;EACA,oBACEhD,kEACEA,wCAACC,mBAAD;IACE,IAAI,EAAEgD,qBAAW,CAACC,OADpB;IAEE,UAAU,EAAC,KAFb;IAGE,QAAQ,EAAE1E,QAHZ;IAIE,QAAQ,EAAE;MACR,IAAMyD,OAAO,GAAGY,MAAM,CAACC,IAAP,CAAYX,eAAZ,EAA6BP,MAA7B,CAAoC,UAACmB,CAAD;QAAO,OAAAZ,eAAe,CAACY,CAAD,CAAf;OAA3C,CAAhB;MACA/D,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEmE,YAAT,CAAsBlB,OAAtB,EAA+BlC,IAA/B,CAAoC;QAClCgC,SAAQ,CAACE,OAAD,CAAR;OADF,CAAA;KANJ;IAUE,SAAS,EAAE1C,SAAS,CAAC6D;kBAErBpD,wCAACqD,cAAD;IACE,KAAK,EAAGT,aAAa,GAAG,CAAjB,GAAsBU,oBAAW,CAACJ,OAAlC,GAA4CI,oBAAW,CAACC,cADjE;IAEE,IAAI,EAAEC,wBAAe,CAACC;KAErB,SAAA,CAAGb,aAAH,KAAA,QAAA,CAAoBrD,SAAS,CAACmE,8BAA9B,CAJH,CAZF,eAkBE1D;IACE,SAAS,EAAC,qCADZ;IAEE,QAAQ,EAAE,kBAACG,CAAD;MACA,IAAAC,OAAO,GAAKiC,WAAW,QAAvB;MACR,IAAMhC,MAAM,GAAGF,CAAC,CAACE,MAAjB;MACA,IAAMC,SAAS,GACbD,MAAM,CAACE,YAAP,GAAsBF,MAAM,CAACG,SAA7B,KAA2CH,MAAM,CAACI,YADpD;;MAGA,IAAIL,OAAO,IAAIE,SAAf,EAA0B;QACxB+B,WAAW,CAACvC,IAAZ,GAAmBC,IAAnB,CAAwB,UAACW,CAAD;UACtBwB,UAAU,qDACLD,gBACAvB,QAFK,CAAV;SADF;;;KAUFuB,OAAO,CAACtB,GAAR,CAAY,UAACC,MAAD;IAAY,oBACtBZ,wCAACa,eAAD;MACE,QAAQ,MADV;MAEE,OAAO,EAAEsB,eAAe,CAACvB,MAAM,CAACtB,MAAR,CAF1B;MAGE,UAAU,EAAE,CAAAsB,MAAM,SAAN,IAAAA,MAAM,WAAN,SAAA,GAAAA,MAAM,CAAE+C,IAAR,MAAiB,UAH/B;MAIE,QAAQ,EAAE,CAAA/C,MAAM,SAAN,IAAAA,MAAM,WAAN,SAAA,GAAAA,MAAM,CAAE+C,IAAR,MAAiB,UAJ7B;MAKE,QAAQ,EACN,kBAACC,KAAD;;;QACE,IAAMC,uBAAuB,6CACxB1B,+BACFyB,KAAK,CAACvD,MAAN,CAAayD,MAAKF,KAAK,CAACvD,MAAN,CAAa0D,aAFlC;;QAIA,IAAI,CAACH,KAAK,CAACvD,MAAN,CAAa0D,OAAlB,EAA2B;UACzB,OAAOF,uBAAuB,CAACD,KAAK,CAACvD,MAAN,CAAayD,EAAd,CAA9B;;;QAEF1B,kBAAkB,CAACyB,uBAAD,CAAlB;OAdN;MAiBE,IAAI,EAAEjD,MAjBR;MAkBE,GAAG,EAAEA,MAAM,CAACtB;MAnBQ;GAAxB,CAnBJ,CAlBF,CADF,CADF;AAkED;;AC5FM,IAAM0E,YAAY,GAAG,SAAfA,YAAe;;;EACpB,IAAAhC,KAA4BtD,cAAQ,CAAC,EAAD,CAApC;MAACC,SAAS,QAAV;MAAYC,YAAY,QAAxB;;EACA,IAAAH,KAA0BC,cAAQ,CAAC,KAAD,CAAlC;MAACuF,QAAQ,QAAT;MAAWC,WAAW,QAAtB;;EACA,IAAArF,KAAwBH,cAAQ,CAAC,KAAD,CAAhC;MAACyF,OAAO,QAAR;MAAUC,UAAU,QAApB;;EACA,IAAAC,KAAwB3F,cAAQ,CAAC,KAAD,CAAhC;MAAC0B,OAAO,QAAR;MAAUkE,UAAU,QAApB;;EACE,IAAA/E,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd;EAER,IAAMP,KAAK,GAAGC,uBAAuB,EAArC;EACQ,IAAAH,OAAO,GAAKC,iDAAyB,UAArC;EAER,IAAMK,MAAM,GAAG,MAAAJ,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEG,MAAP,UAAA,iBAAA,SAAA,MAAeC,MAA9B;EAEAI,eAAS,CAAC;IACR,IAAI,CAACV,OAAL,EAAc;MACZJ,YAAY,CAAC,EAAD,CAAZ;MACA;;;IAGF,IAAMe,iBAAiB,GAAGX,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEY,uBAAT,CAAiC;MACzDC,KAAK,EAAE;KADiB,CAA1B;IAGAF,iBAAiB,CAACG,IAAlB,GAAyBC,IAAzB,CAA8B,UAACpB,SAAD;MAC5BC,YAAY,CAACD,SAAD,CAAZ;MACA2F,UAAU,CAAC3E,iBAAiB,CAACS,OAAnB,CAAV;KAFF;GATO,EAaN,CAACpB,OAAD,CAbM,CAAT;EAeA,IAAMuF,WAAW,GAAGC,iBAAW,CAC7B;IACE,IAAI,CAACxF,OAAL,EAAc;MACZJ,YAAY,CAAC,EAAD,CAAZ;MACA;;;IAEF,IAAMe,iBAAiB,GAAGX,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEY,uBAAT,CAAiC;MACzDC,KAAK,EAAE;KADiB,CAA1B;IAGAF,iBAAiB,CAACG,IAAlB,GAAyBC,IAAzB,CAA8B,UAACpB,SAAD;MAC5BC,YAAY,CAACD,SAAD,CAAZ;MACA2F,UAAU,CAAC3E,iBAAiB,CAACS,OAAnB,CAAV;KAFF;GAT2B,EAc7B,CAACpB,OAAD,CAd6B,CAA/B;EAiBA,oBACEgB,kFAEIrB,SAAS,CAACgC,GAAV,CAAc,UAAC8D,QAAD;IAAc,oBAC1BzE,wCAACa,uCAAD;MACE,GAAG,EAAE4D,QAAQ,CAACnF,MADhB;MAEE,IAAI,EAAEmF,QAFR;MAGE,WAAW,EAAEnF,MAHf;MAIE,MAAM,EAAE,gBAACf,EAAD;YAAGwC,SAAS;QAClB,oBACEf,wCAACgB,yBAAD;UACE,WAAW,EAAE,qBAACC,cAAD;YAAoB,oBAC/BjB,wCAACkB,aAAD;cACE,SAAS,EAAC,mCADZ;cAEE,KAAK,EAAC,MAFR;cAGE,MAAM,EAAC,MAHT;cAIE,OAAO,EAAED;4BAETjB,wCAACmB,kBAAD;cACE,KAAK,EAAC,MADR;cAEE,MAAM,EAAC,MAFT;cAGE,IAAI,EAAEC,iBAAS,CAACC,IAHlB;cAIE,SAAS,EAAEC,kBAAU,CAACC;cAV1B,CAD+B;WADnC;UAgBE,SAAS,EAAE,mBAACC,aAAD;YAAmB,oBAC5BxB,wCAACyB,wBAAD;cACE,SAAS,EAAEV,SADb;cAEE,aAAa,EAAES,aAFjB;cAGE,QAAQ;4BAERxB,wCAAC0B,uBAAD;cACE,OAAO,EAAE;gBACP1C,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE2C,eAAT,CAAyB,CAAC8C,QAAQ,CAACnF,MAAV,CAAzB,EAA4CS,IAA5C,CAAiD;kBAC/CnB,YAAY,CAACD,SAAS,CAACiD,MAAV,CAAiB,UAACrD,EAAD;wBAAGe,MAAM;oBAAO,OAC5CA,MAAM,KAAKmF,QAAQ,CAACnF,MADwB;mBAAjC,CAAD,CAAZ;iBADF,CAAA;gBAKAkC,aAAa;;eAGdjC,SAAS,CAACsC,gDAVb,CALF,CAD4B;;UAjBlC;;MANsB;GAA5B,CAFJ,eAmDE7B;IACE,SAAS,EAAC;kBAEVA,wCAAC0E,oBAAD;IACE,IAAI,EAAEzB,qBAAW,CAAC0B,SADpB;IAEE,IAAI,EAAEC,qBAAW,CAACC,KAFpB;IAGE,OAAO,EAAE;MACPT,UAAU,CAAC,IAAD,CAAV;;KAGD7E,SAAS,CAACuF,qCAPb,CAHF,EAaI1E,OAAO,iBACLJ,wCAAC0E,oBAAD;IACE,IAAI,EAAEzB,qBAAW,CAAC0B,SADpB;IAEE,IAAI,EAAEC,qBAAW,CAACC,KAFpB;IAGE,OAAO,EAAE;MACPX,WAAW,CAAC,IAAD,CAAX;;KAGD3E,SAAS,CAACW,qCAPb,CAdN,CAnDF,EA8EI+D,QAAQ,iBACNjE,wCAAC,cAAD;IAAgB,QAAQ,EAAE;MACxBkE,WAAW,CAAC,KAAD,CAAX;MACAK,WAAW;;IAjFnB,EAsFIJ,OAAO,iBACLnE,wCAAC,iBAAD;IACE,QAAQ,EAAE;MAAM,OAAAoE,UAAU,CAAC,KAAD,CAAV;KADlB;IAEE,QAAQ,EAAE;MACRG,WAAW;MACXH,UAAU,CAAC,KAAD,CAAV;;IA3FV,CADF;AAmGD,CA/IM;;SCAiBW,iBAAiBxG;MACvCC,SAAQ;;EAEF,IAAAwD,KAAwBtD,cAAQ,CAAC,EAAD,CAAhC;MAACuD,OAAO,QAAR;MAAUC,UAAU,QAApB;;EACA,IAAAzD,KAAgCC,cAAQ,CAAC,IAAD,CAAxC;MAAC2D,WAAW,QAAZ;MAAcC,cAAc,QAA5B;;EACE,IAAAtD,OAAO,GAAKC,iDAAyB,UAArC;EACA,IAAAM,SAAS,GAAKyF,mCAAe,YAA7B;EAERtF,eAAS,CAAC;IACR,IAAMuF,mBAAmB,GAAGjG,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEkG,yBAAT,EAA5B;IACAD,mBAAmB,CAACnF,IAApB,GAA2BC,IAA3B,CAAgC,UAACoF,KAAD;MAC9BjD,UAAU,CAACiD,KAAD,CAAV;KADF;IAGA7C,cAAc,CAAC2C,mBAAD,CAAd;GALO,EAMN,EANM,CAAT;EAOA,oBACEjF,kEACEA,wCAACC,mBAAD;IACE,UAAU,MADZ;IAEE,QAAQ,EAAE;MAAM,OAAAzB,SAAQ,EAAR;KAFlB;IAGE,QAAQ,EAAE4G,UAHZ;IAIE,SAAS,EAAE7F,SAAS,CAAC8F;kBAErBrF;IACE,SAAS,EAAC,qCADZ;IAEE,QAAQ,EAAE,kBAACG,CAAD;MACA,IAAAC,OAAO,GAAKiC,WAAW,QAAvB;MACR,IAAMhC,MAAM,GAAGF,CAAC,CAACE,MAAjB;MACA,IAAMC,SAAS,GACbD,MAAM,CAACE,YAAP,GAAsBF,MAAM,CAACG,SAA7B,KAA2CH,MAAM,CAACI,YADpD;;MAIA,IAAIL,OAAO,IAAIE,SAAf,EAA0B;QACxB+B,WAAW,CAACvC,IAAZ,GAAmBC,IAAnB,CAAwB,UAACW,CAAD;UACtBwB,UAAU,qDACLD,gBACAvB,QAFK,CAAV;SADF;;;KASFuB,OAAO,CAACtB,GAAR,CAAY,UAACC,MAAD;IAAY,oBACxBZ,wCAACa,eAAD;MACE,IAAI,EAAED,MADR;MAEE,GAAG,EAAEA,MAAM,CAACtB,MAFd;MAGE,MAAM,EAAE,gBAACf,EAAD;YAAGuC,SAAS;YAAEC,SAAS;QAAO,oBACpCf,wCAACgB,yBAAD;UACE,WAAW,EAAE,qBAACC,cAAD;YAAoB,oBAC/BjB,wCAACkB,aAAD;cACE,SAAS,EAAC,mCADZ;cAEE,KAAK,EAAC,MAFR;cAGE,MAAM,EAAC,MAHT;cAIE,OAAO,EAAED;4BAETjB,wCAACmB,kBAAD;cACE,KAAK,EAAC,MADR;cAEE,MAAM,EAAC,MAFT;cAGE,IAAI,EAAEC,iBAAS,CAACC,IAHlB;cAIE,SAAS,EAAEC,kBAAU,CAACC;cAV1B,CAD+B;WADnC;UAgBE,SAAS,EAAE,mBAACC,aAAD;YAAmB,oBAC5BxB,wCAACyB,wBAAD;cACE,gBAAgB,EAAEX,SADpB;cAEE,SAAS,EAAEC,SAFb;;cAGE,aAAa,EAAES,aAHjB;cAIE,QAAQ;4BAERxB,wCAAC0B,uBAAD;cACE,OAAO,EAAE;gBACP1C,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEsG,SAAT,CAAmB1E,MAAnB,EAA2Bb,IAA3B,CAAgC;kBAC9ByB,aAAa;kBACbU,UAAU,CAACD,OAAO,CAACL,MAAR,CAAe,UAAAmB,CAAA;oBACxB,OAAQA,CAAC,CAACzD,MAAF,KAAasB,MAAM,CAACtB,MAA5B;mBADS,CAAD,CAAV;iBAFF,CAAA;;uBARN,CAD4B;;UAjBI;;MAJhB;GAAxB,CAnBJ,CANF,CADF,CADF;AA8ED;;AC5FM,IAAMiG,gBAAgB,GAAG,SAAnBA,gBAAmB;EACxB,IAAAhH,KAAwBG,cAAQ,CAAC,EAAD,CAAhC;MAACuD,OAAO,QAAR;MAAUC,UAAU,QAApB;;EACA,IAAAF,KAAwBtD,cAAQ,CAAC,KAAD,CAAhC;MAAC0B,OAAO,QAAR;MAAUkE,UAAU,QAApB;;EACA,IAAA7F,KAA4BC,cAAQ,CAAC,KAAD,CAApC;MAAC8G,SAAS,QAAV;MAAYC,YAAY,QAAxB;;EAEE,IAAAzG,OAAO,GAAKC,iDAAyB,UAArC;EAERS,eAAS,CAAC;IACR,IAAI,CAACV,OAAL,EAAc;MACZkD,UAAU,CAAC,EAAD,CAAV;MACA;;;IAGF,IAAM+C,mBAAmB,GAAGjG,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEkG,yBAAT,EAA5B;IACAD,mBAAmB,CAACnF,IAApB,GAA2BC,IAA3B,CAAgC,UAACoF,KAAD;MAC9BjD,UAAU,CAACiD,KAAD,CAAV;MACAb,UAAU,CAACW,mBAAmB,CAAC7E,OAArB,CAAV;KAFF;GAPO,EAWN,CAACpB,OAAD,CAXM,CAAT;EAaA,IAAMuF,WAAW,GAAGC,iBAAW,CAAC;IAC9B,IAAI,CAACxF,OAAL,EAAc;MACZkD,UAAU,CAAC,EAAD,CAAV;MACA;;;IAGF,IAAM+C,mBAAmB,GAAGjG,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEkG,yBAAT,EAA5B;IACAD,mBAAmB,CAACnF,IAApB,GAA2BC,IAA3B,CAAgC,UAACoF,KAAD;MAC9BjD,UAAU,CAACiD,KAAD,CAAV;MACAb,UAAU,CAACW,mBAAmB,CAAC7E,OAArB,CAAV;KAFF;GAP6B,EAW5B,CAACpB,OAAD,CAX4B,CAA/B;EAYA,oBACEgB,kFAEIiC,OAAO,CAACtB,GAAR,CAAY,UAACC,MAAD;IAAY,oBACtBZ,wCAACa,uCAAD;MACE,GAAG,EAAED,MAAM,CAACtB,MADd;MAEE,IAAI,EAAEsB,MAFR;MAGE,MAAM,EAAE,gBAACrC,EAAD;YAAGwC,SAAS;YAAED,SAAS;QAC7B,oBACEd,wCAACgB,yBAAD;UACE,WAAW,EAAE,qBAACC,cAAD;YAAoB,oBAC/BjB,wCAACkB,aAAD;cACE,SAAS,EAAC,mCADZ;cAEE,KAAK,EAAC,MAFR;cAGE,MAAM,EAAC,MAHT;cAIE,OAAO,EAAED;4BAETjB,wCAACmB,kBAAD;cACE,KAAK,EAAC,MADR;cAEE,MAAM,EAAC,MAFT;cAGE,IAAI,EAAEC,iBAAS,CAACC,IAHlB;cAIE,SAAS,EAAEC,kBAAU,CAACC;cAV1B,CAD+B;WADnC;UAgBE,SAAS,EAAE,mBAACC,aAAD;YAAmB,oBAC5BxB,wCAACyB,wBAAD;cACE,gBAAgB,EAAEX,SADpB;cAEE,SAAS,EAAEC,SAFb;;cAGE,aAAa,EAAES,aAHjB;cAIE,QAAQ;4BAERxB,wCAAC0B,uBAAD;cACE,OAAO,EAAE;gBACP1C,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEsG,SAAT,CAAmB1E,MAAnB,EAA2Bb,IAA3B,CAAgC;kBAC9ByB,aAAa;kBACb+C,WAAW;iBAFb,CAAA;;uBARN,CAD4B;;UAjBlC;;MALkB;GAAxB,CAFJ,EAkDItC,OAAO,IAAIA,OAAO,CAACe,MAAR,KAAmB,CAA9B,iBACEhD,wCAACqD,cAAD;IACE,SAAS,EAAC,uCADZ;IAEE,IAAI,EAAEG,wBAAe,CAACkC,UAFxB;IAGE,KAAK,EAAEpC,oBAAW,CAACC;6BAtD3B,EA6DInD,OAAO,iBACLJ;IACE,SAAS,EAAC;kBAEVA,wCAAC0E,oBAAD;IACE,IAAI,EAAEzB,qBAAW,CAAC0B,SADpB;IAEE,IAAI,EAAEC,qBAAW,CAACC,KAFpB;IAGE,OAAO,EAAE;MACPY,YAAY,CAAC,IAAD,CAAZ;;0BAPN,CA9DN,EA8EID,SAAS,iBACPxF,wCAAC,gBAAD;IACE,QAAQ,EAAE;MACRyF,YAAY,CAAC,KAAD,CAAZ;MACAlB,WAAW;;IAlFrB,CADF;AA0FD,CA1HM;;SCDiBoB,kBAAkBpH;;;MACxCC,SAAQ;;EAEF,IAAAC,KAAwBC,cAAQ,CAAC,EAAD,CAAhC;MAACuD,OAAO,QAAR;MAAUC,UAAU,QAApB;;EACA,IAAArD,KAAgCH,cAAQ,CAAC,IAAD,CAAxC;MAAC2D,WAAW,QAAZ;MAAcC,cAAc,QAA5B;;EAEE,IAAAtD,OAAO,GAAKC,iDAAyB,UAArC;EACR,IAAMC,KAAK,GAAGC,uBAAuB,EAArC;EACA,IAAMC,WAAW,GAAG,MAAAF,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEG,MAAP,UAAA,iBAAA,SAAA,MAAeC,MAAnC;EACQ,IAAAC,SAAS,GAAKyF,mCAAe,YAA7B;EAERtF,eAAS,CAAC;IACR,IAAMkG,mBAAmB,GAAG5G,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEwD,qBAAT,CAA+B;MACzD3C,KAAK,EAAE,EADkD;;MAGzDgG,iBAAiB,EAAE;KAHO,CAA5B;IAKAD,mBAAmB,CAAC9F,IAApB,GAA2BC,IAA3B,CAAgC,UAACkC,OAAD;MAC9BC,UAAU,CAACD,OAAD,CAAV;KADF;IAGAK,cAAc,CAACsD,mBAAD,CAAd;GATO,EAUN,EAVM,CAAT;EAWA,oBACE5F,kEACEA,wCAACC,mBAAD;IACE,UAAU,MADZ;IAEE,QAAQ,EAAE;MAAM,OAAAzB,SAAQ,EAAR;KAFlB;IAGE,QAAQ,EAAE4G,UAHZ;IAIE,SAAS,EAAE7F,SAAS,CAAC8F;kBAErBrF;IACE,SAAS,EAAC,qCADZ;IAEE,QAAQ,EAAE,kBAACG,CAAD;MACA,IAAAC,OAAO,GAAKiC,WAAW,QAAvB;MACR,IAAMhC,MAAM,GAAGF,CAAC,CAACE,MAAjB;MACA,IAAMC,SAAS,GACbD,MAAM,CAACE,YAAP,GAAsBF,MAAM,CAACG,SAA7B,KAA2CH,MAAM,CAACI,YADpD;;MAIA,IAAIL,OAAO,IAAIE,SAAf,EAA0B;QACxB+B,WAAW,CAACvC,IAAZ,GAAmBC,IAAnB,CAAwB,UAACW,CAAD;UACtBwB,UAAU,qDACLD,gBACAvB,QAFK,CAAV;SADF;;;KASFuB,OAAO,CAACtB,GAAR,CAAY,UAACC,MAAD;IAAY,oBACxBZ,wCAACa,eAAD;MACE,WAAW,EAAEzB,WADf;MAEE,IAAI,EAAEwB,MAFR;MAGE,GAAG,EAAEA,MAAM,CAACtB,MAHd;MAIE,MAAM,EAAE,gBAACf,EAAD;YAAGwC,SAAS;YAAED,SAAS;QAAO,oBACpCd,wCAACgB,yBAAD;UACE,WAAW,EAAE,qBAACC,cAAD;YAAoB,oBAC/BjB,wCAACkB,aAAD;cACE,SAAS,EAAC,mCADZ;cAEE,KAAK,EAAC,MAFR;cAGE,MAAM,EAAC,MAHT;cAIE,OAAO,EAAED;4BAETjB,wCAACmB,kBAAD;cACE,KAAK,EAAC,MADR;cAEE,MAAM,EAAC,MAFT;cAGE,IAAI,EAAEC,iBAAS,CAACC,IAHlB;cAIE,SAAS,EAAEC,kBAAU,CAACC;cAV1B,CAD+B;WADnC;UAgBE,SAAS,EAAE,mBAACC,aAAD;YAAmB,oBAC5BxB,wCAACyB,wBAAD;cACE,gBAAgB,EAAEX,SADpB;cAEE,SAAS,EAAEC,SAFb;;cAGE,aAAa,EAAES,aAHjB;cAIE,QAAQ;4BAERxB,wCAAC0B,uBAAD;cACE,OAAO,EAAE;gBACP1C,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE8G,UAAT,CAAoBlF,MAApB,EAA4Bb,IAA5B,CAAiC;kBAC/ByB,aAAa;kBACbU,UAAU,CAACD,OAAO,CAACL,MAAR,CAAe,UAAAmB,CAAA;oBACxB,OAAQA,CAAC,CAACzD,MAAF,KAAasB,MAAM,CAACtB,MAA5B;mBADS,CAAD,CAAV;iBAFF,CAAA;;wBARN,CAD4B;;UAjBI;;MALhB;GAAxB,CAnBJ,CANF,CADF,CADF;AA8ED;;ACjGM,IAAMyG,eAAe,GAAG,SAAlBA,eAAkB;;;EACvB,IAAA/D,KAAwBtD,cAAQ,CAAC,EAAD,CAAhC;MAACuD,OAAO,QAAR;MAAUC,UAAU,QAApB;;EACA,IAAAzD,KAAwBC,cAAQ,CAAC,KAAD,CAAhC;MAAC0B,OAAO,QAAR;MAAUkE,UAAU,QAApB;;EACA,IAAAzF,KAA4BH,cAAQ,CAAC,KAAD,CAApC;MAAC8G,SAAS,QAAV;MAAYC,YAAY,QAAxB;;EACE,IAAAlG,SAAS,GAAKyF,mCAAe,YAA7B;EAEA,IAAAhG,OAAO,GAAKC,iDAAyB,UAArC;EACR,IAAMC,KAAK,GAAGC,uBAAuB,EAArC;EACA,IAAMC,WAAW,GAAG,MAAAF,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEG,MAAP,UAAA,iBAAA,SAAA,MAAeC,MAAnC;EAEAI,eAAS,CAAC;IACR,IAAI,CAACV,OAAL,EAAc;MACZkD,UAAU,CAAC,EAAD,CAAV;MACA;;;IAGF,IAAM0D,mBAAmB,GAAG5G,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEwD,qBAAT,CAA+B;MACzD3C,KAAK,EAAE,EADkD;;MAGzDgG,iBAAiB,EAAE;KAHO,CAA5B;IAKAD,mBAAmB,CAAC9F,IAApB,GAA2BC,IAA3B,CAAgC,UAACkC,OAAD;MAC9BC,UAAU,CAACD,OAAD,CAAV;MACAqC,UAAU,CAACsB,mBAAmB,CAACxF,OAArB,CAAV;KAFF;GAXO,EAeN,CAACpB,OAAD,CAfM,CAAT;EAiBA,IAAMuF,WAAW,GAAGC,iBAAW,CAAC;IAC9B,IAAI,CAACxF,OAAL,EAAc;MACZkD,UAAU,CAAC,EAAD,CAAV;MACA;;;IAGF,IAAM0D,mBAAmB,GAAG5G,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEwD,qBAAT,CAA+B;MACzD3C,KAAK,EAAE,EADkD;;MAGzDgG,iBAAiB,EAAE;KAHO,CAA5B;IAKAD,mBAAmB,CAAC9F,IAApB,GAA2BC,IAA3B,CAAgC,UAACkC,OAAD;MAC9BC,UAAU,CAACD,OAAD,CAAV;MACAqC,UAAU,CAACsB,mBAAmB,CAACxF,OAArB,CAAV;KAFF;GAX6B,EAe5B,CAACpB,OAAD,CAf4B,CAA/B;EAgBA,oBACEgB,kFAEIiC,OAAO,CAACtB,GAAR,CAAY,UAACC,MAAD;IAAY,oBACtBZ,wCAACa,uCAAD;MACE,GAAG,EAAED,MAAM,CAACtB,MADd;MAEE,IAAI,EAAEsB,MAFR;MAGE,WAAW,EAAExB,WAHf;MAIE,MAAM,EAAE,gBAACb,EAAD;YAAGwC,SAAS;YAAED,SAAS;QAC7B,oBACEd,wCAACgB,yBAAD;UACE,WAAW,EAAE,qBAACC,cAAD;YAAoB,oBAC/BjB,wCAACkB,aAAD;cACE,SAAS,EAAC,mCADZ;cAEE,KAAK,EAAC,MAFR;cAGE,MAAM,EAAC,MAHT;cAIE,OAAO,EAAED;4BAETjB,wCAACmB,kBAAD;cACE,KAAK,EAAC,MADR;cAEE,MAAM,EAAC,MAFT;cAGE,IAAI,EAAEC,iBAAS,CAACC,IAHlB;cAIE,SAAS,EAAEC,kBAAU,CAACC;cAV1B,CAD+B;WADnC;UAgBE,SAAS,EAAE,mBAACC,aAAD;YAAmB,oBAC5BxB,wCAACyB,wBAAD;cACE,aAAa,EAAED,aADjB;cAEE,QAAQ,MAFV;cAGE,gBAAgB,EAAEV,SAHpB;cAIE,SAAS,EAAEC,SAJb;;4BAMEf,wCAAC0B,uBAAD;cACE,OAAO,EAAE;gBACP1C,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE8G,UAAT,CAAoBlF,MAApB,EAA4Bb,IAA5B,CAAiC;kBAC/BwE,WAAW;kBACX/C,aAAa;iBAFf,CAAA;;4BAMFxB,kFACGT,SAAS,CAACyG,uBADb,CARF,CANF,CAD4B;;UAjBlC;;MANkB;GAAxB,CAFJ,EAsDI/D,OAAO,IAAIA,OAAO,CAACe,MAAR,KAAmB,CAA9B,iBACEhD,wCAACqD,cAAD;IACE,SAAS,EAAC,uCADZ;IAEE,IAAI,EAAEG,wBAAe,CAACkC,UAFxB;IAGE,KAAK,EAAEpC,oBAAW,CAACC;KAElBhE,SAAS,CAAC0G,2BALb,CAvDN,EAiEI7F,OAAO,iBACLJ;IACE,SAAS,EAAC;kBAEVA,wCAAC0E,oBAAD;IACE,IAAI,EAAEzB,qBAAW,CAAC0B,SADpB;IAEE,IAAI,EAAEC,qBAAW,CAACC,KAFpB;IAGE,OAAO,EAAE;MACPY,YAAY,CAAC,IAAD,CAAZ;;KAGDlG,SAAS,CAAC2G,yCAPb,CAHF,CAlEN,EAkFIV,SAAS,iBACPxF,wCAAC,iBAAD;IACE,QAAQ,EAAE;MACRyF,YAAY,CAAC,KAAD,CAAZ;MACAlB,WAAW;;IAtFrB,CADF;AA8FD,CAzIM;;ACEP,IAAM4B,UAAU,GAAG,SAAbA,UAAa,CAACC,GAAD;EACjB,OAAOC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAgB,GAAhB,GACH,SAAA,CAAG,CAACC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAc,IAAf,EAAqBG,OAArB,CAA6B,CAA7B,CAAH,KAAA,CADG,GAEHH,GAFJ;AAGD,CAJD;;SAMwBI;EAChB,IAAAjI,KAAsBG,cAAQ,CAAC,KAAD,CAA9B;MAAC+H,MAAM,QAAP;MAASC,SAAS,QAAlB;;EAEE,IAAAnH,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd;EACA,IAAAT,OAAO,GAAKC,iDAAyB,UAArC;;;;EAMRS,eAAS,CAAC;IACRgH,SAAS,CAAC1H,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE2H,QAAV,CAAT;GADO,EAEN,CAAC3H,OAAD,CAFM,CAAT;EAIA,oBACEgB,wCAAC4G,2BAAD;IAAgB,SAAS,EAAC;kBACxB5G,wCAAC6G,uBAAD;IACE,SAAS,EAAC,2CADZ;IAEE,EAAE,EAAC,WAFL;IAGE,WAAW,EAAE;MAAM,oBACjB7G,+FACEA,wCAACmB,kBAAD;QACE,IAAI,EAAEC,iBAAS,CAAC0F,QADlB;QAEE,SAAS,EAAExF,kBAAU,CAAC4B,OAFxB;QAGE,KAAK,EAAE,EAHT;QAIE,MAAM,EAAE,EAJV;QAKE,SAAS,EAAC;QANd,eAQElD,wCAACqD,cAAD;QACE,IAAI,EAAEG,wBAAe,CAACuD,UADxB;QAEE,KAAK,EAAEzD,oBAAW,CAAC0D;SAElBzH,SAAS,CAAC0H,iCAJb,CARF,CADiB;KAHrB;IAoBE,aAAa,EAAE;MAAM,oBACnBjH,+FACEA,wCAAC,YAAD,OADF,CADmB;;IArBzB,eA2BEA,wCAAC6G,uBAAD;IACE,SAAS,EAAC,yCADZ;IAEE,EAAE,EAAC,SAFL;IAGE,WAAW,EAAE;MAAM,oBACjB7G,+FACEA,wCAACmB,kBAAD;QACE,IAAI,EAAEC,iBAAS,CAAC8F,OADlB;QAEE,SAAS,EAAE5F,kBAAU,CAAC4B,OAFxB;QAGE,KAAK,EAAE,EAHT;QAIE,MAAM,EAAE,EAJV;QAKE,SAAS,EAAC;QANd,eAQElD,wCAACqD,cAAD;QACE,IAAI,EAAEG,wBAAe,CAACuD,UADxB;QAEE,KAAK,EAAEzD,oBAAW,CAAC0D;SAElBzH,SAAS,CAAC4H,+BAJb,CARF,eAcEnH,wCAACoH,QAAD;QAAO,KAAK,EAAEjB,UAAU,CAACnH,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEqI,WAAV;QAd1B,CADiB;KAHrB;IAqBE,aAAa,EAAE;MAAM,oBACnBrH,+FACEA,wCAACsH,qBAAD,OADF,CADmB;;IAhDzB;EAwDI,EAACtI,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEuI,WAAV,kBACEvH,wCAAC6G,uBAAD;IACE,EAAE,EAAC,cADL;IAEE,SAAS,EAAC,+CAFZ;IAGE,WAAW,EAAE;MAAM,oBACjB7G,+FACEA,wCAACmB,kBAAD;QACE,IAAI,EAAEC,iBAAS,CAACoG,IADlB;QAEE,SAAS,EAAElG,kBAAU,CAAC4B,OAFxB;QAGE,KAAK,EAAE,EAHT;QAIE,MAAM,EAAE,EAJV;QAKE,SAAS,EAAC;QANd,eAQElD,wCAACqD,cAAD;QACE,IAAI,EAAEG,wBAAe,CAACuD,UADxB;QAEE,KAAK,EAAEzD,oBAAW,CAAC0D;SAElBzH,SAAS,CAAC8F,qCAJb,CARF,CADiB;KAHrB;IAoBE,aAAa,EAAE;MAAM,oBACnBrF,+FACEA,wCAAC,eAAD,OADF,CADmB;;IA7E7B,eAqFEA,wCAAC6G,uBAAD;IACE,SAAS,EAAC,gDADZ;IAEE,EAAE,EAAC,aAFL;IAGE,WAAW,EAAE;MAAM,oBACjB7G,+FACEA,wCAACmB,kBAAD;QACE,IAAI,EAAEC,iBAAS,CAACqG,GADlB;QAEE,SAAS,EAAEnG,kBAAU,CAAC4B,OAFxB;QAGE,KAAK,EAAE,EAHT;QAIE,MAAM,EAAE,EAJV;QAKE,SAAS,EAAC;QANd,eAQElD,wCAACqD,cAAD;QACE,IAAI,EAAEG,wBAAe,CAACuD,UADxB;QAEE,KAAK,EAAEzD,oBAAW,CAAC0D;SAElBzH,SAAS,CAACmI,sCAJb,CARF,CADiB;KAHrB;IAoBE,aAAa,EAAE;MAAM,oBACnB1H,+FACEA,wCAAC2H,gBAAD,OADF,CADmB;;IAzGzB;EAiHI,EAAC3I,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEuI,WAAV,kBACEvH;IAAK,SAAS,EAAC;kBACbA,wCAACmB,kBAAD;IACE,IAAI,EAAEC,iBAAS,CAACwG,MADlB;IAEE,SAAS,EAAEtG,kBAAU,CAAC4B,OAFxB;IAGE,KAAK,EAAE,EAHT;IAIE,MAAM,EAAE,EAJV;IAKE,SAAS,EAAC;IANd,eAQElD,wCAACqD,cAAD;IACE,IAAI,EAAEG,wBAAe,CAACuD,UADxB;IAEE,KAAK,EAAEzD,oBAAW,CAAC0D;KAElBzH,SAAS,CAACsI,+BAJb,CARF,eAcE7H;IAAK,SAAS,EAAC;KAEXyG,MAAM,gBAEFzG,wCAACmB,kBAAD;IACE,OAAO,EAAE;MACPnC,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE8I,QAAT,GAAoB/H,IAApB,CAAyB;QACvB2G,SAAS,CAAC,KAAD,CAAT;OADF,CAAA;KAFJ;IAME,IAAI,EAAEtF,iBAAS,CAAC2G,SANlB;IAOE,SAAS,EAAEzG,kBAAU,CAAC4B,OAPxB;IAQE,KAAK,EAAE,EART;IASE,MAAM,EAAE;IAXR,gBAeFlD,wCAACmB,kBAAD;IACE,OAAO,EAAE;MACPnC,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEgJ,MAAT,GAAkBjI,IAAlB,CAAuB;QACrB2G,SAAS,CAAC,IAAD,CAAT;OADF,CAAA;KAFJ;IAME,IAAI,EAAEtF,iBAAS,CAAC6G,UANlB;IAOE,SAAS,EAAE3G,kBAAU,CAAC4B,OAPxB;IAQE,KAAK,EAAE,EART;IASE,MAAM,EAAE;IA1BlB,CAdF,CAlHN,CADF;AAqKD;;;;"}
@@ -1,29 +1,29 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../../tslib.es6-f57d0c81.js');
3
+ var tslib_es6 = require('../../tslib.es6-36205d81.js');
4
4
  var React = require('react');
5
- var LocalizationContext = require('../../LocalizationContext-c13ae9d5.js');
6
- var UserProfileContext = require('../../UserProfileContext-f7c125ca.js');
5
+ var LocalizationContext = require('../../LocalizationContext-b5fd4c38.js');
6
+ var UserProfileContext = require('../../UserProfileContext-69c9649a.js');
7
7
  var ui_Avatar = require('../../ui/Avatar.js');
8
8
  var ui_MutedAvatarOverlay = require('../../ui/MutedAvatarOverlay.js');
9
- var ui_Label = require('../../index-dad73aff.js');
9
+ var ui_Label = require('../../index-b9b8972b.js');
10
10
  var ui_UserProfile = require('../../ui/UserProfile.js');
11
11
  var ui_ContextMenu = require('../../ui/ContextMenu.js');
12
- require('../../stringSet-bd0c293d.js');
13
- require('../../index-63b56a0e.js');
12
+ require('../../stringSet-be457fd7.js');
13
+ require('../../index-5166a415.js');
14
14
  require('prop-types');
15
15
  require('../../ui/ImageRenderer.js');
16
16
  require('../../ui/Icon.js');
17
- require('../../_rollupPluginBabelHelpers-09706ebf.js');
18
- require('../../uuid-1942f440.js');
17
+ require('../../_rollupPluginBabelHelpers-f9e4bb55.js');
18
+ require('../../uuid-edc908ea.js');
19
19
  require('../../withSendbird.js');
20
20
  require('../../sendbirdSelectors.js');
21
- require('../../topics-f3fe3bf3.js');
22
- require('../../utils-760ac018.js');
23
- require('../../index-d889bc81.js');
21
+ require('../../topics-58ec1c61.js');
22
+ require('../../utils-09738454.js');
23
+ require('../../ui/Button.js');
24
24
  require('react-dom');
25
25
  require('../../ui/SortByRow.js');
26
- require('../../index-c8f7702f.js');
26
+ require('../../index-18b120dc.js');
27
27
 
28
28
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
29
29
 
@@ -1 +1 @@
1
- {"version":3,"file":"UserListItem.js","sources":["../../../../src/smart-components/ChannelSettings/components/UserListItem/index.tsx"],"sourcesContent":["import React, { ReactElement, useRef, useContext } from 'react';\nimport { User } from '@sendbird/chat';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport Avatar from '../../../../ui/Avatar/index';\nimport MutedAvatarOverlay from '../../../../ui/Avatar/MutedAvatarOverlay';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport UserProfile from '../../../../ui/UserProfile';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\n\nimport './user-list-item.scss';\n\nconst COMPONENT_NAME = 'sendbird-user-list-item--small';\n\ninterface ActionProps {\n actionRef: React.RefObject<HTMLInputElement>;\n parentRef: React.RefObject<HTMLInputElement>;\n}\n\ntype CustomUser = User & {\n isMuted: boolean;\n role: string;\n};\n\ninterface Props {\n user: CustomUser;\n currentUser?: string;\n className?: string;\n action?(props: ActionProps): ReactElement;\n}\n\nconst UserListItem = ({\n user,\n className,\n currentUser,\n action,\n}: Props): ReactElement => {\n const actionRef = useRef(null);\n const parentRef = useRef(null);\n const avatarRef = useRef(null);\n const { stringSet } = useContext(LocalizationContext);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext(UserProfileContext);\n const injectingClassNames = Array.isArray(className) ? className : [className];\n return (\n <div\n ref={parentRef}\n className={[\n COMPONENT_NAME, ...injectingClassNames,\n ].join(' ')}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n ref={avatarRef}\n className={`${COMPONENT_NAME}__avatar`}\n src={user.profileUrl}\n width={24}\n height={24}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: 0, paddingBottom: 0 }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n {\n user.isMuted && (\n <MutedAvatarOverlay />\n )\n }\n <Label\n className={`${COMPONENT_NAME}__title`}\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n stringSet.CHANNEL_SETTING__MEMBERS__YOU\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className={`${COMPONENT_NAME}__subtitle`}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n user.role === 'operator' && (\n <Label\n className={`${COMPONENT_NAME}__operator`}\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.CHANNEL_SETTING__MEMBERS__OPERATOR}\n </Label>\n )\n }\n {\n action && (\n <div ref={actionRef} className={`${COMPONENT_NAME}__action`}>\n {action({ actionRef, parentRef })}\n </div>\n )\n }\n </div>\n );\n}\n\nexport default UserListItem;\n"],"names":["COMPONENT_NAME","UserListItem","_a","user","className","currentUser","action","actionRef","useRef","parentRef","avatarRef","stringSet","useContext","LocalizationContext","_b","UserProfileContext","disableUserProfile","renderUserProfile","injectingClassNames","Array","isArray","React","__spreadArray","join","ContextMenu","toggleDropdown","Avatar","profileUrl","closeDropdown","MenuItems","paddingTop","paddingBottom","currentUserId","close","UserProfile","isMuted","MutedAvatarOverlay","Label","LabelTypography","SUBTITLE_1","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","userId","CHANNEL_SETTING__MEMBERS__YOU","CAPTION_3","ONBACKGROUND_2","role","SUBTITLE_2","CHANNEL_SETTING__MEMBERS__OPERATOR"],"mappings":"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"}
1
+ {"version":3,"file":"UserListItem.js","sources":["../../../../src/smart-components/ChannelSettings/components/UserListItem/index.tsx"],"sourcesContent":["import React, { ReactElement, useRef, useContext } from 'react';\nimport { User } from '@sendbird/chat';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport Avatar from '../../../../ui/Avatar/index';\nimport MutedAvatarOverlay from '../../../../ui/Avatar/MutedAvatarOverlay';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport UserProfile from '../../../../ui/UserProfile';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\n\nimport './user-list-item.scss';\n\nconst COMPONENT_NAME = 'sendbird-user-list-item--small';\n\ninterface ActionProps {\n actionRef: React.RefObject<HTMLInputElement>;\n parentRef: React.RefObject<HTMLInputElement>;\n}\n\ntype CustomUser = User & {\n isMuted: boolean;\n role: string;\n};\n\ninterface Props {\n user: CustomUser;\n currentUser?: string;\n className?: string;\n action?(props: ActionProps): ReactElement;\n}\n\nconst UserListItem = ({\n user,\n className,\n currentUser,\n action,\n}: Props): ReactElement => {\n const actionRef = useRef(null);\n const parentRef = useRef(null);\n const avatarRef = useRef(null);\n const { stringSet } = useContext(LocalizationContext);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext(UserProfileContext);\n const injectingClassNames = Array.isArray(className) ? className : [className];\n return (\n <div\n ref={parentRef}\n className={[\n COMPONENT_NAME, ...injectingClassNames,\n ].join(' ')}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n ref={avatarRef}\n className={`${COMPONENT_NAME}__avatar`}\n src={user.profileUrl}\n width={24}\n height={24}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: 0, paddingBottom: 0 }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n {\n user.isMuted && (\n <MutedAvatarOverlay />\n )\n }\n <Label\n className={`${COMPONENT_NAME}__title`}\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n stringSet.CHANNEL_SETTING__MEMBERS__YOU\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className={`${COMPONENT_NAME}__subtitle`}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n user.role === 'operator' && (\n <Label\n className={`${COMPONENT_NAME}__operator`}\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.CHANNEL_SETTING__MEMBERS__OPERATOR}\n </Label>\n )\n }\n {\n action && (\n <div ref={actionRef} className={`${COMPONENT_NAME}__action`}>\n {action({ actionRef, parentRef })}\n </div>\n )\n }\n </div>\n );\n}\n\nexport default UserListItem;\n"],"names":["COMPONENT_NAME","UserListItem","_a","user","className","currentUser","action","actionRef","useRef","parentRef","avatarRef","stringSet","useContext","LocalizationContext","_b","UserProfileContext","disableUserProfile","renderUserProfile","injectingClassNames","Array","isArray","React","__spreadArray","join","ContextMenu","toggleDropdown","Avatar","profileUrl","closeDropdown","MenuItems","paddingTop","paddingBottom","currentUserId","close","UserProfile","isMuted","MutedAvatarOverlay","Label","LabelTypography","SUBTITLE_1","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","userId","CHANNEL_SETTING__MEMBERS__YOU","CAPTION_3","ONBACKGROUND_2","role","SUBTITLE_2","CHANNEL_SETTING__MEMBERS__OPERATOR"],"mappings":"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"}
@@ -1,36 +1,36 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var LocalizationContext = require('../../LocalizationContext-c13ae9d5.js');
5
- var ui_Label = require('../../index-dad73aff.js');
4
+ var LocalizationContext = require('../../LocalizationContext-b5fd4c38.js');
5
+ var ui_Label = require('../../index-b9b8972b.js');
6
6
  var ui_Icon = require('../../ui/Icon.js');
7
7
  var ui_Badge = require('../../ui/Badge.js');
8
- var MemberList = require('../../MemberList-e062045b.js');
8
+ var MemberList = require('../../MemberList-10def668.js');
9
9
  var ChannelSettings_context = require('../context.js');
10
- require('../../stringSet-bd0c293d.js');
11
- require('../../index-63b56a0e.js');
12
- require('../../_rollupPluginBabelHelpers-09706ebf.js');
10
+ require('../../stringSet-be457fd7.js');
11
+ require('../../index-5166a415.js');
12
+ require('../../_rollupPluginBabelHelpers-f9e4bb55.js');
13
13
  require('prop-types');
14
- require('../../tslib.es6-f57d0c81.js');
15
- require('../../index-d889bc81.js');
14
+ require('../../tslib.es6-36205d81.js');
15
+ require('../../ui/Button.js');
16
16
  require('../../ui/IconButton.js');
17
17
  require('../../ui/ContextMenu.js');
18
18
  require('react-dom');
19
19
  require('../../ui/SortByRow.js');
20
- require('../../uuid-1942f440.js');
21
- require('../../index-c8f7702f.js');
20
+ require('../../uuid-edc908ea.js');
21
+ require('../../index-18b120dc.js');
22
22
  require('./UserListItem.js');
23
- require('../../UserProfileContext-f7c125ca.js');
23
+ require('../../UserProfileContext-69c9649a.js');
24
24
  require('../../ui/Avatar.js');
25
25
  require('../../ui/ImageRenderer.js');
26
26
  require('../../ui/MutedAvatarOverlay.js');
27
27
  require('../../ui/UserProfile.js');
28
28
  require('../../withSendbird.js');
29
29
  require('../../sendbirdSelectors.js');
30
- require('../../topics-f3fe3bf3.js');
31
- require('../../utils-760ac018.js');
30
+ require('../../topics-58ec1c61.js');
31
+ require('../../utils-09738454.js');
32
32
  require('../../ui/Modal.js');
33
- require('../../index-98e4f7b2.js');
33
+ require('../../index-550f5039.js');
34
34
  require('../../ui/UserListItem.js');
35
35
  require('../../ui/Checkbox.js');
36
36
  require('../../useSendbirdStateContext.js');
@@ -1 +1 @@
1
- {"version":3,"file":"UserPanel.js","sources":["../../../../src/smart-components/ChannelSettings/components/UserPanel/index.tsx"],"sourcesContent":["import React, { useContext, useState } from 'react';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\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 MemberList from '../ModerationPanel/MemberList';\nimport { useChannelSettingsContext } 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\nconst UserPanel: React.FC = () => {\n const { stringSet } = useContext(LocalizationContext);\n const [showAccordion, setShowAccordion] = useState(false);\n const { channel } = useChannelSettingsContext();\n return (\n <>\n <div\n className={[\n 'sendbird-channel-settings__panel-item',\n 'sendbird-channel-settings__members',\n ].join(' ')}\n role=\"switch\"\n aria-checked={showAccordion}\n onKeyDown={() => setShowAccordion(!showAccordion)}\n onClick={() => setShowAccordion(!showAccordion)}\n tabIndex={0}\n >\n <Icon\n className=\"sendbird-channel-settings__panel-icon-left\"\n type={IconTypes.MEMBERS}\n fillColor={IconColors.PRIMARY}\n height=\"24px\"\n width=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__MEMBERS__TITLE}\n <Badge count={kFormatter(channel?.memberCount)} />\n </Label>\n <Icon\n className={[\n 'sendbird-channel-settings__panel-icon-right',\n 'sendbird-channel-settings__panel-icon--chevron',\n (showAccordion ? 'sendbird-channel-settings__panel-icon--open' : ''),\n ].join(' ')}\n type={IconTypes.CHEVRON_RIGHT}\n height=\"24px\"\n width=\"24px\"\n />\n </div>\n {\n showAccordion && (\n <MemberList />\n )\n }\n </>\n );\n}\n\nexport default UserPanel;\n"],"names":["kFormatter","num","Math","abs","toFixed","UserPanel","stringSet","useContext","LocalizationContext","_a","useState","showAccordion","setShowAccordion","channel","useChannelSettingsContext","React","join","Icon","IconTypes","MEMBERS","IconColors","PRIMARY","Label","LabelTypography","SUBTITLE_1","LabelColors","ONBACKGROUND_1","CHANNEL_SETTING__MEMBERS__TITLE","Badge","memberCount","CHEVRON_RIGHT","MemberList"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,GAAD;AACjB,SAAOC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAgB,GAAhB,GACH,SAAA,CAAG,CAACC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAc,IAAf,EAAqBG,OAArB,CAA6B,CAA7B,CAAH,KAAA,CADG,GAEHH,GAFJ;AAGD,CAJD;;IAMMI,SAAS,GAAa,SAAtBA,SAAsB;AAClB,MAAAC,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd;;AACF,MAAAC,KAAoCC,cAAQ,CAAC,KAAD,CAA5C;AAAA,MAACC,aAAa,QAAd;AAAA,MAAgBC,gBAAgB,QAAhC;;AACE,MAAAC,OAAO,GAAKC,iDAAyB,UAArC;AACR,sBACEC,+FACEA;AACE,IAAA,SAAS,EAAE,CACT,uCADS,EAET,oCAFS,EAGTC,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,IAAI,EAAC,QALP;AAME,oBAAcL,aANhB;AAOE,IAAA,SAAS,EAAE;AAAM,aAAAC,gBAAgB,CAAC,CAACD,aAAF,CAAhB;AAAgC,KAPnD;AAQE,IAAA,OAAO,EAAE;AAAM,aAAAC,gBAAgB,CAAC,CAACD,aAAF,CAAhB;AAAgC,KARjD;AASE,IAAA,QAAQ,EAAE;AATZ,kBAWEI,wCAACE,kBAAD;AACE,IAAA,SAAS,EAAC,4CADZ;AAEE,IAAA,IAAI,EAAEC,iBAAS,CAACC,OAFlB;AAGE,IAAA,SAAS,EAAEC,kBAAU,CAACC,OAHxB;AAIE,IAAA,MAAM,EAAC,MAJT;AAKE,IAAA,KAAK,EAAC;AALR,IAXF,eAkBEN,wCAACO,cAAD;AACE,IAAA,IAAI,EAAEC,wBAAe,CAACC,UADxB;AAEE,IAAA,KAAK,EAAEC,oBAAW,CAACC;AAFrB,KAIGpB,SAAS,CAACqB,+BAJb,eAKEZ,wCAACa,QAAD;AAAO,IAAA,KAAK,EAAE5B,UAAU,CAACa,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEgB,WAAV;AAAxB,IALF,CAlBF,eAyBEd,wCAACE,kBAAD;AACE,IAAA,SAAS,EAAE,CACT,6CADS,EAET,gDAFS,EAGRN,aAAa,GAAG,6CAAH,GAAmD,EAHxD,EAITK,IAJS,CAIJ,GAJI,CADb;AAME,IAAA,IAAI,EAAEE,iBAAS,CAACY,aANlB;AAOE,IAAA,MAAM,EAAC,MAPT;AAQE,IAAA,KAAK,EAAC;AARR,IAzBF,CADF,EAsCInB,aAAa,iBACXI,wCAACgB,qBAAD,OAvCN,CADF;AA6CD;;;;"}
1
+ {"version":3,"file":"UserPanel.js","sources":["../../../../src/smart-components/ChannelSettings/components/UserPanel/index.tsx"],"sourcesContent":["import React, { useContext, useState } from 'react';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\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 MemberList from '../ModerationPanel/MemberList';\nimport { useChannelSettingsContext } 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\nconst UserPanel: React.FC = () => {\n const { stringSet } = useContext(LocalizationContext);\n const [showAccordion, setShowAccordion] = useState(false);\n const { channel } = useChannelSettingsContext();\n return (\n <>\n <div\n className={[\n 'sendbird-channel-settings__panel-item',\n 'sendbird-channel-settings__members',\n ].join(' ')}\n role=\"switch\"\n aria-checked={showAccordion}\n onKeyDown={() => setShowAccordion(!showAccordion)}\n onClick={() => setShowAccordion(!showAccordion)}\n tabIndex={0}\n >\n <Icon\n className=\"sendbird-channel-settings__panel-icon-left\"\n type={IconTypes.MEMBERS}\n fillColor={IconColors.PRIMARY}\n height=\"24px\"\n width=\"24px\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.CHANNEL_SETTING__MEMBERS__TITLE}\n <Badge count={kFormatter(channel?.memberCount)} />\n </Label>\n <Icon\n className={[\n 'sendbird-channel-settings__panel-icon-right',\n 'sendbird-channel-settings__panel-icon--chevron',\n (showAccordion ? 'sendbird-channel-settings__panel-icon--open' : ''),\n ].join(' ')}\n type={IconTypes.CHEVRON_RIGHT}\n height=\"24px\"\n width=\"24px\"\n />\n </div>\n {\n showAccordion && (\n <MemberList />\n )\n }\n </>\n );\n}\n\nexport default UserPanel;\n"],"names":["kFormatter","num","Math","abs","toFixed","UserPanel","stringSet","useContext","LocalizationContext","_a","useState","showAccordion","setShowAccordion","channel","useChannelSettingsContext","React","join","Icon","IconTypes","MEMBERS","IconColors","PRIMARY","Label","LabelTypography","SUBTITLE_1","LabelColors","ONBACKGROUND_1","CHANNEL_SETTING__MEMBERS__TITLE","Badge","memberCount","CHEVRON_RIGHT","MemberList"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,GAAD;EACjB,OAAOC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAgB,GAAhB,GACH,SAAA,CAAG,CAACC,IAAI,CAACC,GAAL,CAASF,GAAT,IAAc,IAAf,EAAqBG,OAArB,CAA6B,CAA7B,CAAH,KAAA,CADG,GAEHH,GAFJ;AAGD,CAJD;;IAMMI,SAAS,GAAa,SAAtBA,SAAsB;EAClB,IAAAC,SAAS,GAAKC,gBAAU,CAACC,uCAAD,CAAV,UAAd;;EACF,IAAAC,KAAoCC,cAAQ,CAAC,KAAD,CAA5C;MAACC,aAAa,QAAd;MAAgBC,gBAAgB,QAAhC;;EACE,IAAAC,OAAO,GAAKC,iDAAyB,UAArC;EACR,oBACEC,+FACEA;IACE,SAAS,EAAE,CACT,uCADS,EAET,oCAFS,EAGTC,IAHS,CAGJ,GAHI,CADb;IAKE,IAAI,EAAC,QALP;IAME,gBAAcL,aANhB;IAOE,SAAS,EAAE;MAAM,OAAAC,gBAAgB,CAAC,CAACD,aAAF,CAAhB;KAPnB;IAQE,OAAO,EAAE;MAAM,OAAAC,gBAAgB,CAAC,CAACD,aAAF,CAAhB;KARjB;IASE,QAAQ,EAAE;kBAEVI,wCAACE,kBAAD;IACE,SAAS,EAAC,4CADZ;IAEE,IAAI,EAAEC,iBAAS,CAACC,OAFlB;IAGE,SAAS,EAAEC,kBAAU,CAACC,OAHxB;IAIE,MAAM,EAAC,MAJT;IAKE,KAAK,EAAC;IAhBV,eAkBEN,wCAACO,cAAD;IACE,IAAI,EAAEC,wBAAe,CAACC,UADxB;IAEE,KAAK,EAAEC,oBAAW,CAACC;KAElBpB,SAAS,CAACqB,+BAJb,eAKEZ,wCAACa,QAAD;IAAO,KAAK,EAAE5B,UAAU,CAACa,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEgB,WAAV;IAL1B,CAlBF,eAyBEd,wCAACE,kBAAD;IACE,SAAS,EAAE,CACT,6CADS,EAET,gDAFS,EAGRN,aAAa,GAAG,6CAAH,GAAmD,EAHxD,EAITK,IAJS,CAIJ,GAJI,CADb;IAME,IAAI,EAAEE,iBAAS,CAACY,aANlB;IAOE,MAAM,EAAC,MAPT;IAQE,KAAK,EAAC;IAjCV,CADF,EAsCInB,aAAa,iBACXI,wCAACgB,qBAAD,OAvCN,CADF;AA6CD;;;;"}
@@ -4,10 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
6
  var useSendbirdStateContext = require('../useSendbirdStateContext.js');
7
- var UserProfileContext = require('../UserProfileContext-f7c125ca.js');
8
- var uuid = require('../uuid-1942f440.js');
7
+ var UserProfileContext = require('../UserProfileContext-69c9649a.js');
8
+ var uuid = require('../uuid-edc908ea.js');
9
9
  require('../withSendbird.js');
10
- require('../_rollupPluginBabelHelpers-09706ebf.js');
10
+ require('../_rollupPluginBabelHelpers-f9e4bb55.js');
11
11
  require('prop-types');
12
12
 
13
13
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sources":["../../../src/smart-components/ChannelSettings/context/ChannelSettingsProvider.tsx"],"sourcesContent":["\nimport React, {\n useEffect,\n useState,\n} from 'react';\nimport {\n GroupChannel,\n GroupChannelUpdateParams,\n SendbirdGroupChat,\n} from '@sendbird/chat/groupChannel';\n\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { RenderUserProfileProps } from '../../../types';\nimport { UserProfileProvider } from '../../../lib/UserProfileContext';\nimport uuidv4 from '../../../utils/uuid';\n\ninterface ApplicationUserListQuery {\n limit?: number;\n userIdsFilter?: Array<string>;\n metaDataKeyFilter?: string;\n metaDataValuesFilter?: Array<string>;\n}\n\ninterface ChannelSettingsQueries {\n applicationUserListQuery?: ApplicationUserListQuery;\n}\n\nexport type ChannelSettingsContextProps = {\n children?: React.ReactElement;\n channelUrl: string;\n className?: string;\n onCloseClick?(): void;\n onChannelModified?(channel: GroupChannel): void;\n onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): GroupChannelUpdateParams;\n queries?: ChannelSettingsQueries;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactElement;\n disableUserProfile?: boolean;\n}\n\ninterface ChannelSettingsProviderInterface {\n channelUrl: string;\n onCloseClick?(): void;\n onChannelModified?(channel: GroupChannel): void;\n onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): GroupChannelUpdateParams;\n queries?: ChannelSettingsQueries;\n setChannelUpdateId(uniqId: string): void;\n forceUpdateUI(): void;\n channel: GroupChannel;\n invalidChannel: boolean;\n}\n\nconst ChannelSettingsContext = React.createContext<ChannelSettingsProviderInterface|null>(undefined);\n\nconst ChannelSettingsProvider: React.FC<ChannelSettingsContextProps> = (props: ChannelSettingsContextProps) => {\n const {\n children,\n className,\n channelUrl,\n onCloseClick,\n onChannelModified,\n onBeforeUpdateChannel,\n queries,\n } = props;\n\n // fetch store from <SendbirdProvider />\n const globalStore = useSendbirdStateContext();\n const { config, stores } = globalStore;\n const { sdkStore } = stores;\n const { logger } = config;\n\n const { initialized } = sdkStore;\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n\n // hack to keep track of channel updates by triggering useEffect\n const [channelUpdateId, setChannelUpdateId] = useState(uuidv4());\n const [channel, setChannel] = useState(null);\n const [invalidChannel, setInvalidChannel] = useState(false);\n\n const forceUpdateUI = () => {\n setChannelUpdateId(uuidv4());\n }\n\n useEffect(() => {\n logger.info('ChannelSettings: Setting up');\n if (!channelUrl || !initialized || !sdk) {\n logger.warning('ChannelSettings: Setting up failed', 'No channelUrl or sdk uninitialized');\n setInvalidChannel(false);\n } else {\n if (!sdk || !sdk.groupChannel) {\n logger.warning('ChannelSettings: No GroupChannel');\n return;\n }\n sdk.groupChannel.getChannel(channelUrl).then((groupChannel) => {\n if (!groupChannel) {\n logger.warning('ChannelSettings: Channel not found');\n setInvalidChannel(true);\n } else {\n logger.info('ChannelSettings: Fetched group channel', groupChannel);\n setInvalidChannel(false);\n setChannel(groupChannel);\n }\n });\n }\n }, [channelUrl, initialized, channelUpdateId]);\n\n return (\n <ChannelSettingsContext.Provider value={{\n channelUrl,\n onCloseClick,\n onChannelModified,\n onBeforeUpdateChannel,\n queries,\n setChannelUpdateId,\n forceUpdateUI,\n channel,\n invalidChannel,\n }}>\n <UserProfileProvider\n renderUserProfile={props?.renderUserProfile}\n disableUserProfile={props?.disableUserProfile}\n >\n <div className={`sendbird-channel-settings ${className}`}>\n {children}\n </div>\n </UserProfileProvider>\n </ChannelSettingsContext.Provider>\n );\n}\n\nexport type UseChannelSettingsType = () => ChannelSettingsProviderInterface;\nconst useChannelSettingsContext: UseChannelSettingsType = () => React.useContext(ChannelSettingsContext);\n\nexport {\n ChannelSettingsProvider,\n useChannelSettingsContext,\n};\n"],"names":["ChannelSettingsContext","React","createContext","undefined","ChannelSettingsProvider","props","children","className","channelUrl","onCloseClick","onChannelModified","onBeforeUpdateChannel","queries","globalStore","useSendbirdStateContext","config","stores","sdkStore","logger","initialized","sdk","_a","useState","uuidv4","channelUpdateId","setChannelUpdateId","_b","channel","setChannel","_c","invalidChannel","setInvalidChannel","forceUpdateUI","useEffect","info","warning","groupChannel","getChannel","then","UserProfileProvider","renderUserProfile","disableUserProfile","useChannelSettingsContext","useContext"],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sources":["../../../src/smart-components/ChannelSettings/context/ChannelSettingsProvider.tsx"],"sourcesContent":["\nimport React, {\n useEffect,\n useState,\n} from 'react';\nimport {\n GroupChannel,\n GroupChannelUpdateParams,\n SendbirdGroupChat,\n} from '@sendbird/chat/groupChannel';\n\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { RenderUserProfileProps } from '../../../types';\nimport { UserProfileProvider } from '../../../lib/UserProfileContext';\nimport uuidv4 from '../../../utils/uuid';\n\ninterface ApplicationUserListQuery {\n limit?: number;\n userIdsFilter?: Array<string>;\n metaDataKeyFilter?: string;\n metaDataValuesFilter?: Array<string>;\n}\n\ninterface ChannelSettingsQueries {\n applicationUserListQuery?: ApplicationUserListQuery;\n}\n\nexport type ChannelSettingsContextProps = {\n children?: React.ReactElement;\n channelUrl: string;\n className?: string;\n onCloseClick?(): void;\n onChannelModified?(channel: GroupChannel): void;\n onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): GroupChannelUpdateParams;\n queries?: ChannelSettingsQueries;\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactElement;\n disableUserProfile?: boolean;\n}\n\ninterface ChannelSettingsProviderInterface {\n channelUrl: string;\n onCloseClick?(): void;\n onChannelModified?(channel: GroupChannel): void;\n onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): GroupChannelUpdateParams;\n queries?: ChannelSettingsQueries;\n setChannelUpdateId(uniqId: string): void;\n forceUpdateUI(): void;\n channel: GroupChannel;\n invalidChannel: boolean;\n}\n\nconst ChannelSettingsContext = React.createContext<ChannelSettingsProviderInterface|null>(undefined);\n\nconst ChannelSettingsProvider: React.FC<ChannelSettingsContextProps> = (props: ChannelSettingsContextProps) => {\n const {\n children,\n className,\n channelUrl,\n onCloseClick,\n onChannelModified,\n onBeforeUpdateChannel,\n queries,\n } = props;\n\n // fetch store from <SendbirdProvider />\n const globalStore = useSendbirdStateContext();\n const { config, stores } = globalStore;\n const { sdkStore } = stores;\n const { logger } = config;\n\n const { initialized } = sdkStore;\n const sdk = sdkStore?.sdk as SendbirdGroupChat;\n\n // hack to keep track of channel updates by triggering useEffect\n const [channelUpdateId, setChannelUpdateId] = useState(uuidv4());\n const [channel, setChannel] = useState(null);\n const [invalidChannel, setInvalidChannel] = useState(false);\n\n const forceUpdateUI = () => {\n setChannelUpdateId(uuidv4());\n }\n\n useEffect(() => {\n logger.info('ChannelSettings: Setting up');\n if (!channelUrl || !initialized || !sdk) {\n logger.warning('ChannelSettings: Setting up failed', 'No channelUrl or sdk uninitialized');\n setInvalidChannel(false);\n } else {\n if (!sdk || !sdk.groupChannel) {\n logger.warning('ChannelSettings: No GroupChannel');\n return;\n }\n sdk.groupChannel.getChannel(channelUrl).then((groupChannel) => {\n if (!groupChannel) {\n logger.warning('ChannelSettings: Channel not found');\n setInvalidChannel(true);\n } else {\n logger.info('ChannelSettings: Fetched group channel', groupChannel);\n setInvalidChannel(false);\n setChannel(groupChannel);\n }\n });\n }\n }, [channelUrl, initialized, channelUpdateId]);\n\n return (\n <ChannelSettingsContext.Provider value={{\n channelUrl,\n onCloseClick,\n onChannelModified,\n onBeforeUpdateChannel,\n queries,\n setChannelUpdateId,\n forceUpdateUI,\n channel,\n invalidChannel,\n }}>\n <UserProfileProvider\n renderUserProfile={props?.renderUserProfile}\n disableUserProfile={props?.disableUserProfile}\n >\n <div className={`sendbird-channel-settings ${className}`}>\n {children}\n </div>\n </UserProfileProvider>\n </ChannelSettingsContext.Provider>\n );\n}\n\nexport type UseChannelSettingsType = () => ChannelSettingsProviderInterface;\nconst useChannelSettingsContext: UseChannelSettingsType = () => React.useContext(ChannelSettingsContext);\n\nexport {\n ChannelSettingsProvider,\n useChannelSettingsContext,\n};\n"],"names":["ChannelSettingsContext","React","createContext","undefined","ChannelSettingsProvider","props","children","className","channelUrl","onCloseClick","onChannelModified","onBeforeUpdateChannel","queries","globalStore","useSendbirdStateContext","config","stores","sdkStore","logger","initialized","sdk","_a","useState","uuidv4","channelUpdateId","setChannelUpdateId","_b","channel","setChannel","_c","invalidChannel","setInvalidChannel","forceUpdateUI","useEffect","info","warning","groupChannel","getChannel","then","UserProfileProvider","renderUserProfile","disableUserProfile","useChannelSettingsContext","useContext"],"mappings":"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"}