@sendbird/uikit-react 3.6.7 → 3.6.8-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 (626) hide show
  1. package/App.js +57 -49
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +63 -0
  4. package/Channel/components/ChannelHeader.js +20 -19
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +45 -41
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +16 -15
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +4 -4
  11. package/Channel/components/Message.js +38 -36
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +34 -32
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +41 -60
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +18 -17
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +18 -17
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +16 -15
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +4 -4
  24. package/Channel/context.js +13 -12
  25. package/Channel/context.js.map +1 -1
  26. package/Channel/utils/compareMessagesForGrouping.js +22 -0
  27. package/Channel/utils/compareMessagesForGrouping.js.map +1 -0
  28. package/Channel/utils/getMessagePartsInfo.js +38 -0
  29. package/Channel/utils/getMessagePartsInfo.js.map +1 -0
  30. package/Channel.js +45 -41
  31. package/Channel.js.map +1 -1
  32. package/ChannelList/components/AddChannel.js +15 -15
  33. package/ChannelList/components/ChannelListHeader.js +6 -6
  34. package/ChannelList/components/ChannelListUI.js +31 -30
  35. package/ChannelList/components/ChannelListUI.js.map +1 -1
  36. package/ChannelList/components/ChannelPreview.js +27 -26
  37. package/ChannelList/components/ChannelPreview.js.map +1 -1
  38. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  39. package/ChannelList/context.js +8 -8
  40. package/ChannelList.js +31 -30
  41. package/ChannelList.js.map +1 -1
  42. package/{ChannelListProvider-fc14f42d.js → ChannelListProvider-532ebe92.js} +11 -14
  43. package/ChannelListProvider-532ebe92.js.map +1 -0
  44. package/{ChannelProvider-78e85f32.js → ChannelProvider-903eb3bf.js} +31 -331
  45. package/ChannelProvider-903eb3bf.js.map +1 -0
  46. package/ChannelSettings/components/ChannelProfile.js +11 -11
  47. package/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  48. package/ChannelSettings/components/EditDetailsModal.js +11 -11
  49. package/ChannelSettings/components/LeaveChannel.js +11 -11
  50. package/ChannelSettings/components/ModerationPanel.js +14 -14
  51. package/ChannelSettings/components/UserListItem.js +10 -10
  52. package/ChannelSettings/components/UserPanel.js +13 -13
  53. package/ChannelSettings/context.js +3 -3
  54. package/ChannelSettings.js +17 -17
  55. package/CreateChannel/components/CreateChannelUI.js +13 -13
  56. package/CreateChannel/components/InviteUsers.js +13 -13
  57. package/CreateChannel/components/SelectChannelType.js +10 -10
  58. package/CreateChannel/context.js +4 -4
  59. package/CreateChannel.js +13 -13
  60. package/{CreateChannelProvider-fe23c38f.js → CreateChannelProvider-d02f3cf9.js} +1 -1
  61. package/{CreateChannelProvider-fe23c38f.js.map → CreateChannelProvider-d02f3cf9.js.map} +1 -1
  62. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  63. package/CreateOpenChannel/context.js +1 -1
  64. package/CreateOpenChannel.js +9 -9
  65. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  66. package/EditUserProfile.js +12 -12
  67. package/{LocalizationContext-5fe9b59d.js → LocalizationContext-3baf0e99.js} +3 -3
  68. package/{LocalizationContext-5fe9b59d.js.map → LocalizationContext-3baf0e99.js.map} +1 -1
  69. package/{MediaQueryContext-66b59195.js → MediaQueryContext-65dd6475.js} +1 -1
  70. package/{MediaQueryContext-66b59195.js.map → MediaQueryContext-65dd6475.js.map} +1 -1
  71. package/{MemberList-c03817ad.js → MemberList-fc5be7a2.js} +5 -5
  72. package/{MemberList-c03817ad.js.map → MemberList-fc5be7a2.js.map} +1 -1
  73. package/{useDirtyGetMentions-3f7692ab.js → Message/hooks/useDirtyGetMentions.js} +3 -2
  74. package/Message/hooks/useDirtyGetMentions.js.map +1 -0
  75. package/MessageSearch/components/MessageSearchUI.js +11 -11
  76. package/MessageSearch/context.js +1 -1
  77. package/MessageSearch/context.js.map +1 -1
  78. package/MessageSearch.js +11 -11
  79. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  80. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  81. package/OpenChannel/components/OpenChannelInput.js +20 -19
  82. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  83. package/OpenChannel/components/OpenChannelMessage.js +30 -38
  84. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  85. package/OpenChannel/components/OpenChannelMessageList.js +33 -32
  86. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  87. package/OpenChannel/components/OpenChannelUI.js +33 -32
  88. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  89. package/OpenChannel/context.js +8 -8
  90. package/OpenChannel.js +33 -32
  91. package/OpenChannel.js.map +1 -1
  92. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  93. package/OpenChannelList/components/OpenChannelPreview.js +3 -3
  94. package/OpenChannelList/context.js +3 -3
  95. package/OpenChannelList.js +13 -13
  96. package/{OpenChannelListProvider-5d21932a.js → OpenChannelListProvider-9dff6221.js} +3 -3
  97. package/{OpenChannelListProvider-5d21932a.js.map → OpenChannelListProvider-9dff6221.js.map} +1 -1
  98. package/{OpenChannelProvider-a6f4f92a.js → OpenChannelProvider-e3940c50.js} +7 -7
  99. package/OpenChannelProvider-e3940c50.js.map +1 -0
  100. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  101. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  102. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  103. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  104. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  105. package/OpenChannelSettings/context.js +3 -3
  106. package/OpenChannelSettings.js +17 -17
  107. package/{RemoveMessageModal-0d438e31.js → RemoveMessageModal-5c8b1e53.js} +3 -3
  108. package/RemoveMessageModal-5c8b1e53.js.map +1 -0
  109. package/SendbirdProvider.js +24 -21
  110. package/SendbirdProvider.js.map +1 -1
  111. package/Thread/components/ParentMessageInfo.js +36 -34
  112. package/Thread/components/ParentMessageInfo.js.map +1 -1
  113. package/Thread/components/ParentMessageInfoItem.js +21 -21
  114. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  115. package/Thread/components/ThreadHeader.js +6 -6
  116. package/Thread/components/ThreadList.js +39 -37
  117. package/Thread/components/ThreadList.js.map +1 -1
  118. package/Thread/components/ThreadListItem.js +40 -38
  119. package/Thread/components/ThreadListItem.js.map +1 -1
  120. package/Thread/components/ThreadMessageInput.js +32 -30
  121. package/Thread/components/ThreadMessageInput.js.map +1 -1
  122. package/Thread/components/ThreadUI.js +43 -41
  123. package/Thread/components/ThreadUI.js.map +1 -1
  124. package/Thread/context.js +8 -8
  125. package/Thread.js +43 -41
  126. package/Thread.js.map +1 -1
  127. package/{ThreadProvider-2a4356a2.js → ThreadProvider-0cfe2336.js} +12 -11
  128. package/ThreadProvider-0cfe2336.js.map +1 -0
  129. package/{UserProfileContext-8b8f3e3a.js → UserProfileContext-3dd7aade.js} +1 -1
  130. package/{UserProfileContext-8b8f3e3a.js.map → UserProfileContext-3dd7aade.js.map} +1 -1
  131. package/{VoiceMessageInputWrapper-b8742ea1.js → VoiceMessageInputWrapper-a3904e40.js} +7 -7
  132. package/{VoiceMessageInputWrapper-b8742ea1.js.map → VoiceMessageInputWrapper-a3904e40.js.map} +1 -1
  133. package/VoicePlayer/context.js +3 -3
  134. package/VoicePlayer/useVoicePlayer.js +9 -9
  135. package/VoiceRecorder/context.js +9 -9
  136. package/VoiceRecorder/useVoiceRecorder.js +8 -8
  137. package/{WebAudioUtils-63418113.js → WebAudioUtils-44e85117.js} +2 -2
  138. package/{WebAudioUtils-63418113.js.map → WebAudioUtils-44e85117.js.map} +1 -1
  139. package/{_rollupPluginBabelHelpers-90ff7fc4.js → _rollupPluginBabelHelpers-89176539.js} +1 -1
  140. package/_rollupPluginBabelHelpers-89176539.js.map +1 -0
  141. package/{actionTypes-66bf934b.js → actionTypes-f95f30b4.js} +1 -1
  142. package/{actionTypes-66bf934b.js.map → actionTypes-f95f30b4.js.map} +1 -1
  143. package/cjs/App.js +57 -49
  144. package/cjs/App.js.map +1 -1
  145. package/cjs/Channel/components/ChannelHeader.js +20 -19
  146. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  147. package/cjs/Channel/components/ChannelUI.js +45 -41
  148. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  149. package/cjs/Channel/components/FileViewer.js +16 -15
  150. package/cjs/Channel/components/FileViewer.js.map +1 -1
  151. package/cjs/Channel/components/FrozenNotification.js +4 -4
  152. package/cjs/Channel/components/Message.js +41 -39
  153. package/cjs/Channel/components/Message.js.map +1 -1
  154. package/cjs/Channel/components/MessageInput.js +39 -37
  155. package/cjs/Channel/components/MessageInput.js.map +1 -1
  156. package/cjs/Channel/components/MessageList.js +47 -66
  157. package/cjs/Channel/components/MessageList.js.map +1 -1
  158. package/cjs/Channel/components/RemoveMessageModal.js +18 -17
  159. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  160. package/cjs/Channel/components/SuggestedMentionList.js +18 -17
  161. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  162. package/cjs/Channel/components/TypingIndicator.js +16 -15
  163. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  164. package/cjs/Channel/components/UnreadCount.js +4 -4
  165. package/cjs/Channel/context.js +13 -12
  166. package/cjs/Channel/context.js.map +1 -1
  167. package/cjs/Channel/utils/compareMessagesForGrouping.js +26 -0
  168. package/cjs/Channel/utils/compareMessagesForGrouping.js.map +1 -0
  169. package/cjs/Channel/utils/getMessagePartsInfo.js +42 -0
  170. package/cjs/Channel/utils/getMessagePartsInfo.js.map +1 -0
  171. package/cjs/Channel.js +45 -41
  172. package/cjs/Channel.js.map +1 -1
  173. package/cjs/ChannelList/components/AddChannel.js +15 -15
  174. package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
  175. package/cjs/ChannelList/components/ChannelListUI.js +31 -30
  176. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  177. package/cjs/ChannelList/components/ChannelPreview.js +27 -26
  178. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  179. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  180. package/cjs/ChannelList/context.js +8 -8
  181. package/cjs/ChannelList.js +31 -30
  182. package/cjs/ChannelList.js.map +1 -1
  183. package/cjs/{ChannelListProvider-c1f3cf4a.js → ChannelListProvider-80903b5c.js} +11 -14
  184. package/cjs/ChannelListProvider-80903b5c.js.map +1 -0
  185. package/cjs/{ChannelProvider-633edf61.js → ChannelProvider-c75c8c0d.js} +109 -414
  186. package/cjs/ChannelProvider-c75c8c0d.js.map +1 -0
  187. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  188. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  189. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  190. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  191. package/cjs/ChannelSettings/components/ModerationPanel.js +14 -14
  192. package/cjs/ChannelSettings/components/UserListItem.js +10 -10
  193. package/cjs/ChannelSettings/components/UserPanel.js +13 -13
  194. package/cjs/ChannelSettings/context.js +3 -3
  195. package/cjs/ChannelSettings.js +17 -17
  196. package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
  197. package/cjs/CreateChannel/components/InviteUsers.js +13 -13
  198. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  199. package/cjs/CreateChannel/context.js +4 -4
  200. package/cjs/CreateChannel.js +13 -13
  201. package/cjs/{CreateChannelProvider-32102712.js → CreateChannelProvider-0e78ab7b.js} +1 -1
  202. package/cjs/{CreateChannelProvider-32102712.js.map → CreateChannelProvider-0e78ab7b.js.map} +1 -1
  203. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  204. package/cjs/CreateOpenChannel/context.js +1 -1
  205. package/cjs/CreateOpenChannel.js +9 -9
  206. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  207. package/cjs/EditUserProfile.js +12 -12
  208. package/cjs/{LocalizationContext-a15ec4eb.js → LocalizationContext-fd85331f.js} +3 -3
  209. package/cjs/{LocalizationContext-a15ec4eb.js.map → LocalizationContext-fd85331f.js.map} +1 -1
  210. package/cjs/{MediaQueryContext-80d10d7b.js → MediaQueryContext-fde456fd.js} +1 -1
  211. package/cjs/{MediaQueryContext-80d10d7b.js.map → MediaQueryContext-fde456fd.js.map} +1 -1
  212. package/cjs/{MemberList-5303bbbb.js → MemberList-16ebc116.js} +5 -5
  213. package/cjs/{MemberList-5303bbbb.js.map → MemberList-16ebc116.js.map} +1 -1
  214. package/cjs/{useDirtyGetMentions-a37639f1.js → Message/hooks/useDirtyGetMentions.js} +4 -1
  215. package/cjs/Message/hooks/useDirtyGetMentions.js.map +1 -0
  216. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  217. package/cjs/MessageSearch/context.js +1 -1
  218. package/cjs/MessageSearch/context.js.map +1 -1
  219. package/cjs/MessageSearch.js +11 -11
  220. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  221. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  222. package/cjs/OpenChannel/components/OpenChannelInput.js +20 -19
  223. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  224. package/cjs/OpenChannel/components/OpenChannelMessage.js +32 -40
  225. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  226. package/cjs/OpenChannel/components/OpenChannelMessageList.js +33 -32
  227. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  228. package/cjs/OpenChannel/components/OpenChannelUI.js +33 -32
  229. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  230. package/cjs/OpenChannel/context.js +8 -8
  231. package/cjs/OpenChannel.js +33 -32
  232. package/cjs/OpenChannel.js.map +1 -1
  233. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  234. package/cjs/OpenChannelList/components/OpenChannelPreview.js +3 -3
  235. package/cjs/OpenChannelList/context.js +3 -3
  236. package/cjs/OpenChannelList.js +13 -13
  237. package/cjs/{OpenChannelListProvider-49874b88.js → OpenChannelListProvider-8665615a.js} +3 -3
  238. package/cjs/{OpenChannelListProvider-49874b88.js.map → OpenChannelListProvider-8665615a.js.map} +1 -1
  239. package/cjs/{OpenChannelProvider-c2b3dc2c.js → OpenChannelProvider-5e558c1a.js} +7 -7
  240. package/cjs/OpenChannelProvider-5e558c1a.js.map +1 -0
  241. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  242. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  243. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  244. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  245. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  246. package/cjs/OpenChannelSettings/context.js +3 -3
  247. package/cjs/OpenChannelSettings.js +17 -17
  248. package/cjs/{RemoveMessageModal-271f1251.js → RemoveMessageModal-6307711c.js} +3 -3
  249. package/cjs/RemoveMessageModal-6307711c.js.map +1 -0
  250. package/cjs/SendbirdProvider.js +24 -21
  251. package/cjs/SendbirdProvider.js.map +1 -1
  252. package/cjs/Thread/components/ParentMessageInfo.js +38 -36
  253. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  254. package/cjs/Thread/components/ParentMessageInfoItem.js +21 -21
  255. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  256. package/cjs/Thread/components/ThreadHeader.js +6 -6
  257. package/cjs/Thread/components/ThreadList.js +39 -37
  258. package/cjs/Thread/components/ThreadList.js.map +1 -1
  259. package/cjs/Thread/components/ThreadListItem.js +42 -40
  260. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  261. package/cjs/Thread/components/ThreadMessageInput.js +34 -32
  262. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  263. package/cjs/Thread/components/ThreadUI.js +43 -41
  264. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  265. package/cjs/Thread/context.js +8 -8
  266. package/cjs/Thread.js +43 -41
  267. package/cjs/Thread.js.map +1 -1
  268. package/cjs/{ThreadProvider-8d2ce923.js → ThreadProvider-aeb062df.js} +12 -11
  269. package/cjs/ThreadProvider-aeb062df.js.map +1 -0
  270. package/cjs/{UserProfileContext-f8f1cee7.js → UserProfileContext-e658337c.js} +1 -1
  271. package/cjs/{UserProfileContext-f8f1cee7.js.map → UserProfileContext-e658337c.js.map} +1 -1
  272. package/cjs/{VoiceMessageInputWrapper-e8d7b9ba.js → VoiceMessageInputWrapper-ee24a942.js} +9 -9
  273. package/cjs/{VoiceMessageInputWrapper-e8d7b9ba.js.map → VoiceMessageInputWrapper-ee24a942.js.map} +1 -1
  274. package/cjs/VoicePlayer/context.js +3 -3
  275. package/cjs/VoicePlayer/useVoicePlayer.js +9 -9
  276. package/cjs/VoiceRecorder/context.js +9 -9
  277. package/cjs/VoiceRecorder/useVoiceRecorder.js +8 -8
  278. package/cjs/{WebAudioUtils-88dbfaed.js → WebAudioUtils-238bd8c4.js} +2 -2
  279. package/cjs/{WebAudioUtils-88dbfaed.js.map → WebAudioUtils-238bd8c4.js.map} +1 -1
  280. package/cjs/{_rollupPluginBabelHelpers-0d9d52a5.js → _rollupPluginBabelHelpers-6da3edf9.js} +1 -1
  281. package/cjs/_rollupPluginBabelHelpers-6da3edf9.js.map +1 -0
  282. package/cjs/{actionTypes-974dfe33.js → actionTypes-b0cfb8a7.js} +1 -1
  283. package/cjs/{actionTypes-974dfe33.js.map → actionTypes-b0cfb8a7.js.map} +1 -1
  284. package/cjs/{color-1e9cc481.js → color-7e8f0ca5.js} +1 -1
  285. package/cjs/{color-1e9cc481.js.map → color-7e8f0ca5.js.map} +1 -1
  286. package/cjs/{compareIds-0344920c.js → compareIds-a5214ac1.js} +1 -1
  287. package/cjs/{compareIds-0344920c.js.map → compareIds-a5214ac1.js.map} +1 -1
  288. package/cjs/{const-0d4d91cd.js → const-703dd567.js} +1 -1
  289. package/cjs/{const-0d4d91cd.js.map → const-703dd567.js.map} +1 -1
  290. package/cjs/{const-182fe978.js → const-7ab4dbea.js} +1 -1
  291. package/cjs/{const-182fe978.js.map → const-7ab4dbea.js.map} +1 -1
  292. package/cjs/{consts-0c9a38ef.js → consts-0337201b.js} +5 -1
  293. package/cjs/{consts-0c9a38ef.js.map → consts-0337201b.js.map} +1 -1
  294. package/cjs/{consts-10e5b075.js → consts-39e2e498.js} +1 -1
  295. package/cjs/{consts-10e5b075.js.map → consts-39e2e498.js.map} +1 -1
  296. package/cjs/{consts-5bdc2c7f.js → consts-74f92105.js} +1 -1
  297. package/cjs/{consts-5bdc2c7f.js.map → consts-74f92105.js.map} +1 -1
  298. package/cjs/{consts-c336bb61.js → consts-acdad2b4.js} +1 -1
  299. package/cjs/{consts-c336bb61.js.map → consts-acdad2b4.js.map} +1 -1
  300. package/cjs/{context-0276d21e.js → context-90576ca6.js} +2 -2
  301. package/cjs/{context-0276d21e.js.map → context-90576ca6.js.map} +1 -1
  302. package/cjs/dist/index.css +121 -94
  303. package/cjs/dist/index.css.map +1 -1
  304. package/cjs/{index-17a6519d.js → index-011a6124.js} +1 -1
  305. package/cjs/{index-17a6519d.js.map → index-011a6124.js.map} +1 -1
  306. package/cjs/index-05ea6eac.js +230 -0
  307. package/cjs/index-05ea6eac.js.map +1 -0
  308. package/cjs/{index-49fe0efb.js → index-0aec5632.js} +4 -4
  309. package/cjs/{index-49fe0efb.js.map → index-0aec5632.js.map} +1 -1
  310. package/cjs/{index-e46cc828.js → index-5699329f.js} +6 -6
  311. package/cjs/{index-e46cc828.js.map → index-5699329f.js.map} +1 -1
  312. package/cjs/{index-1325e266.js → index-66369e8b.js} +3 -3
  313. package/cjs/{index-1325e266.js.map → index-66369e8b.js.map} +1 -1
  314. package/cjs/{index-092b22dd.js → index-76acbd2d.js} +2 -2
  315. package/cjs/{index-092b22dd.js.map → index-76acbd2d.js.map} +1 -1
  316. package/cjs/{index-b428366f.js → index-7d3c8e0c.js} +2 -2
  317. package/cjs/index-7d3c8e0c.js.map +1 -0
  318. package/cjs/{index-6cb3365f.js → index-8522d0c2.js} +2 -2
  319. package/cjs/{index-6cb3365f.js.map → index-8522d0c2.js.map} +1 -1
  320. package/cjs/{index-cebd1362.js → index-9470d71b.js} +4 -4
  321. package/cjs/{index-cebd1362.js.map → index-9470d71b.js.map} +1 -1
  322. package/cjs/{index-08c5777e.js → index-9c4b8f39.js} +15 -8
  323. package/cjs/index-9c4b8f39.js.map +1 -0
  324. package/cjs/{index-dbccd7fb.js → index-ad47c0e4.js} +3 -3
  325. package/cjs/{index-dbccd7fb.js.map → index-ad47c0e4.js.map} +1 -1
  326. package/cjs/{index-87e11d7e.js → index-b04632ba.js} +5 -5
  327. package/cjs/{index-87e11d7e.js.map → index-b04632ba.js.map} +1 -1
  328. package/cjs/{index-2cb13008.js → index-bf35893c.js} +2 -2
  329. package/cjs/{index-2cb13008.js.map → index-bf35893c.js.map} +1 -1
  330. package/cjs/{index-5a651f3c.js → index-c63d7e90.js} +2 -2
  331. package/cjs/{index-5a651f3c.js.map → index-c63d7e90.js.map} +1 -1
  332. package/cjs/{index-54228aa8.js → index-dbfce4b2.js} +4 -4
  333. package/cjs/{index-54228aa8.js.map → index-dbfce4b2.js.map} +1 -1
  334. package/cjs/index-e18eb9ba.js +298 -0
  335. package/cjs/index-e18eb9ba.js.map +1 -0
  336. package/cjs/{index-9c8e297d.js → index-e99f0986.js} +3 -3
  337. package/cjs/{index-9c8e297d.js.map → index-e99f0986.js.map} +1 -1
  338. package/cjs/{index-c2454b7e.js → index-eac4199a.js} +1 -1
  339. package/cjs/{index-c2454b7e.js.map → index-eac4199a.js.map} +1 -1
  340. package/cjs/{index-ed1ee70b.js → index-f9665a27.js} +21 -14
  341. package/cjs/index-f9665a27.js.map +1 -0
  342. package/cjs/index.js +57 -53
  343. package/cjs/index.js.map +1 -1
  344. package/cjs/{index.module-8026e7d3.js → index.module-0ba29e4f.js} +1 -1
  345. package/cjs/{index.module-8026e7d3.js.map → index.module-0ba29e4f.js.map} +1 -1
  346. package/cjs/package.json +2 -2
  347. package/cjs/{resolvedReplyType-8137e072.js → resolvedReplyType-9f17b17a.js} +1 -1
  348. package/cjs/{resolvedReplyType-8137e072.js.map → resolvedReplyType-9f17b17a.js.map} +1 -1
  349. package/cjs/sendbirdSelectors.js +3 -4
  350. package/cjs/sendbirdSelectors.js.map +1 -1
  351. package/cjs/{stringSet-769f181d.js → stringSet-dfe78bcf.js} +1 -1
  352. package/cjs/{stringSet-769f181d.js.map → stringSet-dfe78bcf.js.map} +1 -1
  353. package/cjs/{tokenize-586ed01a.js → tokenize-8279c435.js} +2 -2
  354. package/cjs/{tokenize-586ed01a.js.map → tokenize-8279c435.js.map} +1 -1
  355. package/cjs/{topics-99121946.js → topics-ba2551c1.js} +1 -1
  356. package/cjs/{topics-99121946.js.map → topics-ba2551c1.js.map} +1 -1
  357. package/cjs/{types-812b3bfd.js → types-c4bc01b7.js} +1 -1
  358. package/cjs/types-c4bc01b7.js.map +1 -0
  359. package/cjs/ui/Accordion.js +2 -2
  360. package/cjs/ui/AccordionGroup.js +2 -2
  361. package/cjs/ui/AdminMessage.js +2 -2
  362. package/cjs/ui/Avatar.js +1 -1
  363. package/cjs/ui/Badge.js +4 -4
  364. package/cjs/ui/BottomSheet.js +1 -1
  365. package/cjs/ui/Button.js +2 -2
  366. package/cjs/ui/ChannelAvatar.js +2 -2
  367. package/cjs/ui/ConnectionStatus.js +4 -4
  368. package/cjs/ui/ContextMenu.js +5 -5
  369. package/cjs/ui/DateSeparator.js +3 -3
  370. package/cjs/ui/EmojiReactions.js +13 -13
  371. package/cjs/ui/EmojiReactions.js.map +1 -1
  372. package/cjs/ui/FileMessageItemBody.js +6 -6
  373. package/cjs/ui/FileViewer.js +17 -126
  374. package/cjs/ui/FileViewer.js.map +1 -1
  375. package/cjs/ui/Icon.js +178 -159
  376. package/cjs/ui/Icon.js.map +1 -1
  377. package/cjs/ui/IconButton.js +1 -1
  378. package/cjs/ui/Input.js +2 -2
  379. package/cjs/ui/Label.js +2 -2
  380. package/cjs/ui/LinkLabel.js +2 -2
  381. package/cjs/ui/MentionLabel.js +10 -10
  382. package/cjs/ui/MentionUserLabel.js +1 -1
  383. package/cjs/ui/MessageContent.js +28 -28
  384. package/cjs/ui/MessageContent.js.map +1 -1
  385. package/cjs/ui/MessageInput/hooks/usePaste.js +16 -0
  386. package/cjs/ui/MessageInput/hooks/usePaste.js.map +1 -0
  387. package/cjs/ui/MessageInput.js +21 -233
  388. package/cjs/ui/MessageInput.js.map +1 -1
  389. package/cjs/ui/MessageItemMenu.js +8 -8
  390. package/cjs/ui/MessageItemMenu.js.map +1 -1
  391. package/cjs/ui/MessageItemReactionMenu.js +8 -8
  392. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  393. package/cjs/ui/MessageSearchFileItem.js +10 -10
  394. package/cjs/ui/MessageSearchItem.js +8 -8
  395. package/cjs/ui/MessageStatus.js +10 -10
  396. package/cjs/ui/Modal.js +7 -7
  397. package/cjs/ui/OGMessageItemBody.js +14 -14
  398. package/cjs/ui/OpenChannelAdminMessage.js +2 -2
  399. package/cjs/ui/OpenChannelAvatar.js +5 -5
  400. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  401. package/cjs/ui/OpenchannelFileMessage.js +15 -15
  402. package/cjs/ui/OpenchannelOGMessage.js +18 -18
  403. package/cjs/ui/OpenchannelThumbnailMessage.js +14 -14
  404. package/cjs/ui/OpenchannelUserMessage.js +15 -15
  405. package/cjs/ui/PlaceHolder.js +5 -5
  406. package/cjs/ui/PlaybackTime.js +2 -2
  407. package/cjs/ui/QuoteMessage.js +6 -6
  408. package/cjs/ui/QuoteMessage.js.map +1 -1
  409. package/cjs/ui/QuoteMessageInput.js +6 -6
  410. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  411. package/cjs/ui/ReactionBadge.js +2 -2
  412. package/cjs/ui/ReactionButton.js +4 -4
  413. package/cjs/ui/SortByRow.js +1 -1
  414. package/cjs/ui/TextButton.js +1 -1
  415. package/cjs/ui/TextMessageItemBody.js +14 -14
  416. package/cjs/ui/ThreadReplies.js +5 -5
  417. package/cjs/ui/ThumbnailMessageItemBody.js +5 -5
  418. package/cjs/ui/Toggle.js +1 -1
  419. package/cjs/ui/Tooltip.js +2 -2
  420. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  421. package/cjs/ui/UserListItem.js +10 -10
  422. package/cjs/ui/UserProfile.js +9 -9
  423. package/cjs/ui/VoiceMessageItemBody.js +9 -9
  424. package/cjs/ui/VoiceMessgeInput.js +7 -7
  425. package/cjs/ui/Word.js +10 -10
  426. package/cjs/{useLongPress-a77054d5.js → useLongPress-092f3b5a.js} +3 -3
  427. package/cjs/{useLongPress-a77054d5.js.map → useLongPress-092f3b5a.js.map} +1 -1
  428. package/cjs/useSendbirdStateContext.js +1 -1
  429. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  430. package/cjs/utils/message/isVoiceMessage.js +2 -2
  431. package/cjs/utils-415ffe78.js +340 -0
  432. package/cjs/utils-415ffe78.js.map +1 -0
  433. package/cjs/{utils-c8ca7346.js → utils-6a3fe892.js} +1 -1
  434. package/cjs/{utils-c8ca7346.js.map → utils-6a3fe892.js.map} +1 -1
  435. package/cjs/{utils-3fda8de7.js → utils-a0fbcca3.js} +1 -1
  436. package/cjs/{utils-3fda8de7.js.map → utils-a0fbcca3.js.map} +1 -1
  437. package/cjs/{utils-d6b081f0.js → utils-b5edf0d4.js} +1 -1
  438. package/cjs/{utils-d6b081f0.js.map → utils-b5edf0d4.js.map} +1 -1
  439. package/cjs/{utils-18517a45.js → utils-f6fe7b35.js} +2 -2
  440. package/cjs/{utils-18517a45.js.map → utils-f6fe7b35.js.map} +1 -1
  441. package/cjs/{uuid-6c019e89.js → uuid-5f519bff.js} +1 -1
  442. package/cjs/{uuid-6c019e89.js.map → uuid-5f519bff.js.map} +1 -1
  443. package/cjs/withSendbird.js +1 -1
  444. package/{color-2315a258.js → color-577bf8be.js} +1 -1
  445. package/{color-2315a258.js.map → color-577bf8be.js.map} +1 -1
  446. package/{compareIds-2464aab2.js → compareIds-c0200d9c.js} +1 -1
  447. package/{compareIds-2464aab2.js.map → compareIds-c0200d9c.js.map} +1 -1
  448. package/{const-0cca8d38.js → const-83226e6e.js} +1 -1
  449. package/{const-0cca8d38.js.map → const-83226e6e.js.map} +1 -1
  450. package/{const-c6a266f4.js → const-bc3d72f7.js} +1 -1
  451. package/{const-c6a266f4.js.map → const-bc3d72f7.js.map} +1 -1
  452. package/{consts-b6f24cc7.js → consts-1be4a5f0.js} +5 -2
  453. package/{consts-b6f24cc7.js.map → consts-1be4a5f0.js.map} +1 -1
  454. package/{consts-32a2c4a7.js → consts-72edcc10.js} +1 -1
  455. package/{consts-32a2c4a7.js.map → consts-72edcc10.js.map} +1 -1
  456. package/{consts-991d3823.js → consts-b6ee09b8.js} +1 -1
  457. package/{consts-991d3823.js.map → consts-b6ee09b8.js.map} +1 -1
  458. package/{consts-3d956927.js → consts-f43406e2.js} +1 -1
  459. package/{consts-3d956927.js.map → consts-f43406e2.js.map} +1 -1
  460. package/{context-e46fff7b.js → context-79b7df74.js} +2 -2
  461. package/{context-e46fff7b.js.map → context-79b7df74.js.map} +1 -1
  462. package/dist/index.css +121 -94
  463. package/dist/index.css.map +1 -1
  464. package/{index-b9b184a4.js → index-0560155e.js} +1 -1
  465. package/{index-b9b184a4.js.map → index-0560155e.js.map} +1 -1
  466. package/{index-a39b9075.js → index-093de5d9.js} +3 -3
  467. package/{index-a39b9075.js.map → index-093de5d9.js.map} +1 -1
  468. package/{index-ebb8a7df.js → index-1d964676.js} +2 -2
  469. package/index-1d964676.js.map +1 -0
  470. package/{index-17b78bb0.js → index-1fca4ff9.js} +21 -14
  471. package/index-1fca4ff9.js.map +1 -0
  472. package/{index-07345a6e.js → index-20782e24.js} +5 -5
  473. package/{index-07345a6e.js.map → index-20782e24.js.map} +1 -1
  474. package/{index-56249831.js → index-2f85608a.js} +16 -9
  475. package/index-2f85608a.js.map +1 -0
  476. package/{index-f2e30f98.js → index-43c63728.js} +2 -2
  477. package/{index-f2e30f98.js.map → index-43c63728.js.map} +1 -1
  478. package/index-4681e8c0.js +221 -0
  479. package/index-4681e8c0.js.map +1 -0
  480. package/index-56541b27.js +289 -0
  481. package/index-56541b27.js.map +1 -0
  482. package/{index-c4273470.js → index-6685707d.js} +4 -4
  483. package/{index-c4273470.js.map → index-6685707d.js.map} +1 -1
  484. package/{index-879bcfab.js → index-801994fd.js} +3 -3
  485. package/{index-879bcfab.js.map → index-801994fd.js.map} +1 -1
  486. package/{index-63c995b8.js → index-8c47fd78.js} +3 -3
  487. package/{index-63c995b8.js.map → index-8c47fd78.js.map} +1 -1
  488. package/{index-bafedab0.js → index-a6c40339.js} +1 -1
  489. package/{index-bafedab0.js.map → index-a6c40339.js.map} +1 -1
  490. package/{index-499d9ef9.js → index-b5ac166c.js} +2 -2
  491. package/{index-499d9ef9.js.map → index-b5ac166c.js.map} +1 -1
  492. package/{index-7b3790d3.js → index-cf32585b.js} +4 -4
  493. package/{index-7b3790d3.js.map → index-cf32585b.js.map} +1 -1
  494. package/{index-13d9d766.js → index-d4eb3c4f.js} +2 -2
  495. package/{index-13d9d766.js.map → index-d4eb3c4f.js.map} +1 -1
  496. package/{index-2544bb0a.js → index-da667cf0.js} +4 -4
  497. package/{index-2544bb0a.js.map → index-da667cf0.js.map} +1 -1
  498. package/{index-fe2c7493.js → index-e7c6e440.js} +6 -6
  499. package/{index-fe2c7493.js.map → index-e7c6e440.js.map} +1 -1
  500. package/{index-335e7557.js → index-facad2c8.js} +2 -2
  501. package/{index-335e7557.js.map → index-facad2c8.js.map} +1 -1
  502. package/index.d.ts +278 -134
  503. package/index.js +57 -53
  504. package/index.js.map +1 -1
  505. package/{index.module-41885c5b.js → index.module-afd26a55.js} +1 -1
  506. package/{index.module-41885c5b.js.map → index.module-afd26a55.js.map} +1 -1
  507. package/package.json +3 -2
  508. package/{resolvedReplyType-d6e22593.js → resolvedReplyType-56c58fa0.js} +1 -1
  509. package/{resolvedReplyType-d6e22593.js.map → resolvedReplyType-56c58fa0.js.map} +1 -1
  510. package/sendbirdSelectors.js +3 -4
  511. package/sendbirdSelectors.js.map +1 -1
  512. package/{stringSet-47601d79.js → stringSet-3373f05f.js} +1 -1
  513. package/{stringSet-47601d79.js.map → stringSet-3373f05f.js.map} +1 -1
  514. package/{tokenize-c0cf9574.js → tokenize-18e18d41.js} +2 -2
  515. package/{tokenize-c0cf9574.js.map → tokenize-18e18d41.js.map} +1 -1
  516. package/{topics-e985567d.js → topics-b4f2a542.js} +1 -1
  517. package/{topics-e985567d.js.map → topics-b4f2a542.js.map} +1 -1
  518. package/{types-02054e6e.js → types-956382cc.js} +1 -1
  519. package/types-956382cc.js.map +1 -0
  520. package/ui/Accordion.js +2 -2
  521. package/ui/AccordionGroup.js +2 -2
  522. package/ui/AdminMessage.js +2 -2
  523. package/ui/Avatar.js +1 -1
  524. package/ui/Badge.js +4 -4
  525. package/ui/BottomSheet.js +1 -1
  526. package/ui/Button.js +2 -2
  527. package/ui/ChannelAvatar.js +2 -2
  528. package/ui/ConnectionStatus.js +4 -4
  529. package/ui/ContextMenu.js +5 -5
  530. package/ui/DateSeparator.js +3 -3
  531. package/ui/EmojiReactions.js +13 -13
  532. package/ui/EmojiReactions.js.map +1 -1
  533. package/ui/FileMessageItemBody.js +6 -6
  534. package/ui/FileViewer.js +15 -124
  535. package/ui/FileViewer.js.map +1 -1
  536. package/ui/Icon.js +178 -159
  537. package/ui/Icon.js.map +1 -1
  538. package/ui/IconButton.js +1 -1
  539. package/ui/Input.js +2 -2
  540. package/ui/Label.js +2 -2
  541. package/ui/LinkLabel.js +2 -2
  542. package/ui/MentionLabel.js +10 -10
  543. package/ui/MentionUserLabel.js +1 -1
  544. package/ui/MessageContent.js +28 -28
  545. package/ui/MessageContent.js.map +1 -1
  546. package/ui/MessageInput/hooks/usePaste.js +7 -0
  547. package/ui/MessageInput/hooks/usePaste.js.map +1 -0
  548. package/ui/MessageInput.js +16 -227
  549. package/ui/MessageInput.js.map +1 -1
  550. package/ui/MessageItemMenu.js +8 -8
  551. package/ui/MessageItemMenu.js.map +1 -1
  552. package/ui/MessageItemReactionMenu.js +8 -8
  553. package/ui/MessageItemReactionMenu.js.map +1 -1
  554. package/ui/MessageSearchFileItem.js +10 -10
  555. package/ui/MessageSearchItem.js +8 -8
  556. package/ui/MessageStatus.js +10 -10
  557. package/ui/Modal.js +7 -7
  558. package/ui/OGMessageItemBody.js +14 -14
  559. package/ui/OpenChannelAdminMessage.js +2 -2
  560. package/ui/OpenChannelAvatar.js +5 -5
  561. package/ui/OpenchannelConversationHeader.js +6 -6
  562. package/ui/OpenchannelFileMessage.js +15 -15
  563. package/ui/OpenchannelOGMessage.js +18 -18
  564. package/ui/OpenchannelThumbnailMessage.js +14 -14
  565. package/ui/OpenchannelUserMessage.js +15 -15
  566. package/ui/PlaceHolder.js +5 -5
  567. package/ui/PlaybackTime.js +2 -2
  568. package/ui/QuoteMessage.js +6 -6
  569. package/ui/QuoteMessage.js.map +1 -1
  570. package/ui/QuoteMessageInput.js +6 -6
  571. package/ui/QuoteMessageInput.js.map +1 -1
  572. package/ui/ReactionBadge.js +2 -2
  573. package/ui/ReactionButton.js +4 -4
  574. package/ui/SortByRow.js +1 -1
  575. package/ui/TextButton.js +1 -1
  576. package/ui/TextMessageItemBody.js +14 -14
  577. package/ui/ThreadReplies.js +5 -5
  578. package/ui/ThumbnailMessageItemBody.js +5 -5
  579. package/ui/Toggle.js +1 -1
  580. package/ui/Tooltip.js +2 -2
  581. package/ui/UnknownMessageItemBody.js +6 -6
  582. package/ui/UserListItem.js +10 -10
  583. package/ui/UserProfile.js +9 -9
  584. package/ui/VoiceMessageItemBody.js +9 -9
  585. package/ui/VoiceMessgeInput.js +7 -7
  586. package/ui/Word.js +10 -10
  587. package/{useLongPress-0a2a8916.js → useLongPress-5d7ec65f.js} +3 -3
  588. package/{useLongPress-0a2a8916.js.map → useLongPress-5d7ec65f.js.map} +1 -1
  589. package/useSendbirdStateContext.js +1 -1
  590. package/utils/message/getOutgoingMessageState.js.map +1 -1
  591. package/utils/message/isVoiceMessage.js +2 -2
  592. package/utils-07212ce9.js +301 -0
  593. package/utils-07212ce9.js.map +1 -0
  594. package/{utils-2f26afa0.js → utils-46e2f239.js} +1 -1
  595. package/{utils-2f26afa0.js.map → utils-46e2f239.js.map} +1 -1
  596. package/{utils-70ea4cc9.js → utils-8039d87d.js} +2 -2
  597. package/{utils-70ea4cc9.js.map → utils-8039d87d.js.map} +1 -1
  598. package/{utils-93924431.js → utils-93dbc8a2.js} +1 -1
  599. package/{utils-93924431.js.map → utils-93dbc8a2.js.map} +1 -1
  600. package/{utils-d15f13cf.js → utils-f0a55682.js} +1 -1
  601. package/{utils-d15f13cf.js.map → utils-f0a55682.js.map} +1 -1
  602. package/{uuid-ec51ac4d.js → uuid-bdadfb51.js} +1 -1
  603. package/{uuid-ec51ac4d.js.map → uuid-bdadfb51.js.map} +1 -1
  604. package/withSendbird.js +1 -1
  605. package/ChannelListProvider-fc14f42d.js.map +0 -1
  606. package/ChannelProvider-78e85f32.js.map +0 -1
  607. package/OpenChannelProvider-a6f4f92a.js.map +0 -1
  608. package/RemoveMessageModal-0d438e31.js.map +0 -1
  609. package/ThreadProvider-2a4356a2.js.map +0 -1
  610. package/_rollupPluginBabelHelpers-90ff7fc4.js.map +0 -1
  611. package/cjs/ChannelListProvider-c1f3cf4a.js.map +0 -1
  612. package/cjs/ChannelProvider-633edf61.js.map +0 -1
  613. package/cjs/OpenChannelProvider-c2b3dc2c.js.map +0 -1
  614. package/cjs/RemoveMessageModal-271f1251.js.map +0 -1
  615. package/cjs/ThreadProvider-8d2ce923.js.map +0 -1
  616. package/cjs/_rollupPluginBabelHelpers-0d9d52a5.js.map +0 -1
  617. package/cjs/index-08c5777e.js.map +0 -1
  618. package/cjs/index-b428366f.js.map +0 -1
  619. package/cjs/index-ed1ee70b.js.map +0 -1
  620. package/cjs/types-812b3bfd.js.map +0 -1
  621. package/cjs/useDirtyGetMentions-a37639f1.js.map +0 -1
  622. package/index-17b78bb0.js.map +0 -1
  623. package/index-56249831.js.map +0 -1
  624. package/index-ebb8a7df.js.map +0 -1
  625. package/types-02054e6e.js.map +0 -1
  626. package/useDirtyGetMentions-3f7692ab.js.map +0 -1
@@ -6,4 +6,4 @@ require('react');
6
6
  const MODAL_ROOT = 'sendbird-modal-root';
7
7
 
8
8
  exports.MODAL_ROOT = MODAL_ROOT;
9
- //# sourceMappingURL=index-17a6519d.js.map
9
+ //# sourceMappingURL=index-011a6124.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-17a6519d.js","sources":["../../src/hooks/useModal/ModalRoot/index.jsx"],"sourcesContent":["// simple component to be used as modal root\nimport React from 'react';\n\nexport const MODAL_ROOT = 'sendbird-modal-root';\n\nconst ModalRoot = () => (\n <div id={MODAL_ROOT} className={MODAL_ROOT} />\n);\nexport default ModalRoot;\n"],"names":["MODAL_ROOT"],"mappings":";;;;AAAA;AAGO,MAAMA,UAAU,GAAG;;;;"}
1
+ {"version":3,"file":"index-011a6124.js","sources":["../../src/hooks/useModal/ModalRoot/index.jsx"],"sourcesContent":["// simple component to be used as modal root\nimport React from 'react';\n\nexport const MODAL_ROOT = 'sendbird-modal-root';\n\nconst ModalRoot = () => (\n <div id={MODAL_ROOT} className={MODAL_ROOT} />\n);\nexport default ModalRoot;\n"],"names":["MODAL_ROOT"],"mappings":";;;;AAAA;AAGO,MAAMA,UAAU,GAAG;;;;"}
@@ -0,0 +1,230 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var DOMPurify = require('dompurify');
5
+ var consts = require('./consts-74f92105.js');
6
+ var consts$2 = require('./consts-acdad2b4.js');
7
+ var consts$1 = require('./consts-39e2e498.js');
8
+
9
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
+
11
+ var DOMPurify__default = /*#__PURE__*/_interopDefaultLegacy(DOMPurify);
12
+
13
+ // cretes a sanitized string from a mention user label
14
+ function renderToString(_ref) {
15
+ let {
16
+ userId,
17
+ nickname
18
+ } = _ref;
19
+ // donot change this template, it wont work
20
+ const el = `<span data-userid="${userId}" data-sb-mention="true" class="${consts.MENTION_USER_LABEL_CLASSNAME}">${nickname}</span>`;
21
+ const purifier = DOMPurify__default["default"](window);
22
+ const sanitized_ = purifier.sanitize(el);
23
+ const token = sanitized_.split(' ');
24
+ const [spanTag, ...rest] = token;
25
+ // we do this because DOMPurify removes the contenteditable attribute
26
+ const sanitized = [spanTag, 'contenteditable="false"', ...rest].join(' ');
27
+ return sanitized;
28
+ }
29
+
30
+ // https://davidwalsh.name/javascript-debounce-function
31
+
32
+ // Sanitize that special characters of HTML tags cause XSS issue
33
+ const sanitizeString = str => str === null || str === void 0 ? void 0 : str.replace(/[\u00A0-\u9999<>]/gim, i => ''.concat('&#', i.charCodeAt(0), ';'));
34
+
35
+ /**
36
+ * NodeList cannot be used with Array methods
37
+ * @param {childNodes} NodeList
38
+ * @returns Array of child nodes
39
+ */
40
+ const nodeListToArray = childNodes => {
41
+ try {
42
+ return Array.from(childNodes);
43
+ } catch (error) {
44
+ return [];
45
+ }
46
+ };
47
+
48
+ function inserTemplateToDOM(templateList) {
49
+ const nodes = templateList.map(template => {
50
+ const {
51
+ text,
52
+ userId
53
+ } = template;
54
+ if (userId) {
55
+ return renderToString({
56
+ userId,
57
+ nickname: text
58
+ });
59
+ }
60
+ return sanitizeString(text);
61
+ }).join(' ')
62
+ // add a space at the end of the mention, else cursor/caret wont work
63
+ .concat(' ');
64
+ document.execCommand('insertHTML', false, nodes);
65
+ }
66
+
67
+ const PASTE_NODE = 'sendbird-uikit__paste-node';
68
+ const TEXT_MESSAGE_CLASS = 'sendbird-word';
69
+ const MENTION_CLASS = 'sendbird-word__mention';
70
+ const MENTION_CLASS_IN_INPUT = 'sendbird-mention-user-label';
71
+ const MENTION_CLASS_COMBINED_QUERY = `.${MENTION_CLASS}, .${MENTION_CLASS_IN_INPUT}`;
72
+
73
+ function querySelectorIncludingSelf(master, selector) {
74
+ const result = [master, ...Array.from(master.querySelectorAll(selector))].find(el => el.matches(selector));
75
+ return result;
76
+ }
77
+
78
+ // Pasted dom node can be OG_MESSAGE or partial message or full message
79
+ // full messsage would have TEXT_MESSAGE_BODY_CLASSNAME and have childNodes
80
+ // partial message would not have TEXT_MESSAGE_BODY_CLASSNAME
81
+ function getLeafNodes(master) {
82
+ // og message
83
+ const ogMessage = querySelectorIncludingSelf(master, `.${consts$1.OG_MESSAGE_BODY_CLASSNAME}`);
84
+ if (ogMessage) {
85
+ return nodeListToArray(ogMessage.childNodes);
86
+ }
87
+ const textMessageBody = querySelectorIncludingSelf(master, `.${consts$2.TEXT_MESSAGE_BODY_CLASSNAME}`);
88
+ if (textMessageBody) {
89
+ return nodeListToArray(textMessageBody.childNodes);
90
+ }
91
+ return nodeListToArray(master.childNodes);
92
+ }
93
+ function createPasteNode() {
94
+ const pasteNode = document.body.querySelector(`#${PASTE_NODE}`);
95
+ // remove existing paste node
96
+ if (pasteNode) {
97
+ pasteNode === null || pasteNode === void 0 ? void 0 : pasteNode.remove();
98
+ }
99
+
100
+ // create new paste node and return
101
+ const node = document.createElement('div');
102
+ node.id = PASTE_NODE;
103
+ node.style.display = 'none';
104
+ return node;
105
+ }
106
+ function hasMention(parent) {
107
+ return parent !== null && parent !== void 0 && parent.querySelector(MENTION_CLASS_COMBINED_QUERY) ? true : false;
108
+ }
109
+ const extractTextFromNodes = nodes => {
110
+ let text = '';
111
+ nodes.forEach(node => {
112
+ // to preserve space between words
113
+ const textNodes = node.querySelectorAll(`.${TEXT_MESSAGE_CLASS}`);
114
+ if (textNodes.length > 0) {
115
+ text += extractTextFromNodes(Array.from(textNodes)) + ' ';
116
+ }
117
+ text += node.innerText + ' ';
118
+ });
119
+ return text;
120
+ };
121
+ function domToMessageTemplate(nodeArray) {
122
+ const templates = nodeArray === null || nodeArray === void 0 ? void 0 : nodeArray.reduce((accumulator, currentValue) => {
123
+ // currentValue can be node(from messageBody or messageInput) or text
124
+ let mentionNode;
125
+ // this looks awkward, but it is a fallback to set default text
126
+ let text = currentValue === null || currentValue === void 0 ? void 0 : currentValue.innerText;
127
+
128
+ // if text node, set text
129
+ if (currentValue instanceof Text) {
130
+ mentionNode = false;
131
+ text = currentValue.textContent;
132
+ }
133
+ if (currentValue instanceof HTMLElement) {
134
+ mentionNode = currentValue.classList.contains(MENTION_CLASS) || currentValue.classList.contains(MENTION_CLASS_IN_INPUT) ? currentValue : currentValue.querySelector(MENTION_CLASS_COMBINED_QUERY);
135
+ }
136
+
137
+ // if mentionNode is not null, it is a mention
138
+ if (mentionNode) {
139
+ var _mentionNode$dataset;
140
+ const text = currentValue === null || currentValue === void 0 ? void 0 : currentValue.innerText;
141
+ const userId = (_mentionNode$dataset = mentionNode.dataset) === null || _mentionNode$dataset === void 0 ? void 0 : _mentionNode$dataset.userid;
142
+ return [...accumulator, {
143
+ text,
144
+ userId
145
+ }];
146
+ }
147
+ return [...accumulator, {
148
+ text
149
+ }];
150
+ }, []);
151
+ return templates;
152
+ }
153
+ function getUsersFromWords(templates, channel) {
154
+ const userMap = {};
155
+ const users = channel.members;
156
+ templates.forEach(template => {
157
+ if (template.userId) {
158
+ const mentionedMember = users.find(user => user.userId === template.userId);
159
+ // Object.values would return array-> [undefined] if the user is not in the channel
160
+ if (mentionedMember) {
161
+ userMap[template.userId] = mentionedMember;
162
+ }
163
+ }
164
+ });
165
+ return Object.values(userMap);
166
+ }
167
+
168
+ // exported, should be backward compatible
169
+ // conditions to test:
170
+ // 1. paste simple text
171
+ // 2. paste text with mention
172
+ // 3. paste text with mention and text
173
+ // 4. paste text with mention and text and paste again before and after
174
+ // 5. copy message with mention(only one mention, no other text) and paste
175
+ // 6. copy message with mention from input and paste(before and after)
176
+ function usePaste(_ref) {
177
+ let {
178
+ ref,
179
+ setIsInput,
180
+ setHeight,
181
+ channel,
182
+ setMentionedUsers
183
+ } = _ref;
184
+ return React.useCallback(e => {
185
+ e.preventDefault();
186
+ const html = e === null || e === void 0 ? void 0 : e.clipboardData.getData('text/html');
187
+ // simple text, continue as normal
188
+ if (!html) {
189
+ const text = e === null || e === void 0 ? void 0 : e.clipboardData.getData('text');
190
+ document.execCommand('insertHTML', false, sanitizeString(text));
191
+ setIsInput(true);
192
+ setHeight();
193
+ return;
194
+ }
195
+
196
+ // has html, check if there are mentions, sanitize and insert
197
+ const purifier = DOMPurify__default["default"](window);
198
+ const clean = purifier.sanitize(html);
199
+ const pasteNode = createPasteNode();
200
+ pasteNode.innerHTML = clean;
201
+ // does not have mention, continue as normal
202
+ if (!hasMention(pasteNode)) {
203
+ // to preserve space between words
204
+ const text = extractTextFromNodes(Array.from(pasteNode.children));
205
+ document.execCommand('insertHTML', false, sanitizeString(text));
206
+ pasteNode.remove();
207
+ setIsInput(true);
208
+ setHeight();
209
+ return;
210
+ }
211
+
212
+ // has mention, collect leaf nodes and parse words
213
+ const leafNodes = getLeafNodes(pasteNode);
214
+ const words = domToMessageTemplate(leafNodes);
215
+ const mentionedUsers = getUsersFromWords(words, channel);
216
+
217
+ // side effects
218
+ setMentionedUsers(mentionedUsers);
219
+ inserTemplateToDOM(words);
220
+ pasteNode.remove();
221
+ setIsInput(true);
222
+ setHeight();
223
+ }, [ref, setIsInput, setHeight, channel, setMentionedUsers]);
224
+ }
225
+
226
+ exports.nodeListToArray = nodeListToArray;
227
+ exports.renderToString = renderToString;
228
+ exports.sanitizeString = sanitizeString;
229
+ exports.usePaste = usePaste;
230
+ //# sourceMappingURL=index-05ea6eac.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-05ea6eac.js","sources":["../../src/ui/MentionUserLabel/renderToString.ts","../../src/ui/MessageInput/utils.js","../../src/ui/MessageInput/hooks/usePaste/insertTemplate.ts","../../src/ui/MessageInput/hooks/usePaste/consts.ts","../../src/ui/MessageInput/hooks/usePaste/utils.ts","../../src/ui/MessageInput/hooks/usePaste/index.ts"],"sourcesContent":["// cretes a sanitized string from a mention user label\nimport DOMPurify from 'dompurify';\nimport { MENTION_USER_LABEL_CLASSNAME } from './consts';\n\ntype renderToStringParams = {\n userId: string;\n nickname: string;\n};\n\nexport default function renderToString({ userId, nickname }: renderToStringParams): string {\n // donot change this template, it wont work\n const el = `<span data-userid=\"${userId}\" data-sb-mention=\"true\" class=\"${MENTION_USER_LABEL_CLASSNAME}\">${nickname}</span>`;\n const purifier = DOMPurify(window);\n const sanitized_ = purifier.sanitize(el);\n const token = sanitized_.split(' ');\n const [spanTag, ...rest] = token;\n // we do this because DOMPurify removes the contenteditable attribute\n const sanitized = [spanTag, 'contenteditable=\"false\"', ...rest].join(' ');\n return sanitized;\n}\n","// https://davidwalsh.name/javascript-debounce-function\n// Returns a function, that, as long as it continues to be invoked, will not\n// be triggered. The function will be called after it stops being called for\n// N milliseconds. If `immediate` is passed, trigger the function on the\n// leading edge, instead of the trailing.\nexport function debounce(func, wait, immediate) {\n let timeout;\n return function _debounce() {\n const context = this;\n // eslint-disable-next-line prefer-rest-params\n const args = arguments;\n const later = () => {\n timeout = null;\n if (!immediate) func.apply(context, args);\n };\n const callNow = immediate && !timeout;\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n if (callNow) func.apply(context, args);\n };\n}\n\n// Sanitize that special characters of HTML tags cause XSS issue\nexport const sanitizeString = (str) => (\n str?.replace(/[\\u00A0-\\u9999<>]/gim, (i) => ''.concat('&#', i.charCodeAt(0), ';'))\n);\n\n/**\n * NodeList cannot be used with Array methods\n * @param {childNodes} NodeList\n * @returns Array of child nodes\n */\nexport const nodeListToArray = (childNodes) => {\n try {\n return Array.from(childNodes);\n } catch (error) {\n return [];\n }\n};\n\nexport default debounce;\n","import { Word } from './types';\nimport { sanitizeString } from '../../utils';\nimport renderMentionLabelToString from '../../../MentionUserLabel/renderToString';\n\nexport function inserTemplateToDOM(templateList: Word[]): void {\n const nodes = templateList.map((template) => {\n const { text, userId } = template;\n if (userId) {\n return renderMentionLabelToString({ userId, nickname: text });\n }\n return sanitizeString(text);\n })\n .join(' ')\n // add a space at the end of the mention, else cursor/caret wont work\n .concat(' ');\n document.execCommand('insertHTML', false, nodes);\n}\n","export const PASTE_NODE = 'sendbird-uikit__paste-node';\nexport const TEXT_MESSAGE_CLASS = 'sendbird-word';\nexport const MENTION_CLASS = 'sendbird-word__mention';\nexport const MENTION_CLASS_IN_INPUT = 'sendbird-mention-user-label';\nexport const MENTION_CLASS_COMBINED_QUERY = `.${MENTION_CLASS}, .${MENTION_CLASS_IN_INPUT}`;\n","import { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { User } from '@sendbird/chat';\n\nimport {\n PASTE_NODE,\n MENTION_CLASS,\n TEXT_MESSAGE_CLASS,\n MENTION_CLASS_COMBINED_QUERY,\n MENTION_CLASS_IN_INPUT,\n} from './consts';\nimport { Word } from './types';\nimport { TEXT_MESSAGE_BODY_CLASSNAME } from '../../../TextMessageItemBody/consts';\nimport { OG_MESSAGE_BODY_CLASSNAME } from '../../../OGMessageItemBody/consts';\nimport { nodeListToArray } from '../../utils';\n\nexport function querySelectorIncludingSelf(\n master: HTMLElement,\n selector: string,\n): HTMLElement | null {\n const result = [\n master,\n ...Array.from(master.querySelectorAll(selector)),\n ].find((el) => el.matches(selector)) as HTMLElement | null;\n return result;\n}\n\n// Pasted dom node can be OG_MESSAGE or partial message or full message\n// full messsage would have TEXT_MESSAGE_BODY_CLASSNAME and have childNodes\n// partial message would not have TEXT_MESSAGE_BODY_CLASSNAME\nexport function getLeafNodes(master: HTMLElement): ChildNode[] {\n // og message\n const ogMessage = querySelectorIncludingSelf(master, `.${OG_MESSAGE_BODY_CLASSNAME}`);\n if (ogMessage) {\n return nodeListToArray(ogMessage.childNodes);\n }\n\n const textMessageBody = querySelectorIncludingSelf(master, `.${TEXT_MESSAGE_BODY_CLASSNAME}`);\n if (textMessageBody) {\n return nodeListToArray(textMessageBody.childNodes);\n }\n\n return nodeListToArray(master.childNodes);\n}\n\nexport function createPasteNode(): HTMLDivElement | null {\n const pasteNode = document.body.querySelector(`#${PASTE_NODE}`);\n // remove existing paste node\n if (pasteNode) {\n pasteNode?.remove();\n }\n\n // create new paste node and return\n const node = document.createElement('div');\n node.id = PASTE_NODE;\n node.style.display = 'none';\n return node;\n}\n\nexport function hasMention(parent: HTMLDivElement): boolean {\n return parent?.querySelector(MENTION_CLASS_COMBINED_QUERY) ? true : false;\n}\n\nexport const extractTextFromNodes = (nodes: HTMLSpanElement[]): string => {\n let text = '';\n nodes.forEach((node) => {\n // to preserve space between words\n const textNodes = node.querySelectorAll(`.${TEXT_MESSAGE_CLASS}`);\n if (textNodes.length > 0) {\n text += ((extractTextFromNodes(Array.from(textNodes) as HTMLSpanElement[])) + ' ');\n }\n text += (node.innerText + ' ');\n });\n return text;\n};\n\nexport function domToMessageTemplate(nodeArray: ChildNode[]): Word[] {\n const templates: Word[] = nodeArray?.reduce((accumulator, currentValue) => {\n // currentValue can be node(from messageBody or messageInput) or text\n let mentionNode;\n // this looks awkward, but it is a fallback to set default text\n let text = (currentValue as HTMLSpanElement)?.innerText;\n\n // if text node, set text\n if (currentValue instanceof Text) {\n mentionNode = false;\n text = currentValue.textContent;\n }\n\n if (currentValue instanceof HTMLElement) {\n mentionNode = (currentValue.classList.contains(MENTION_CLASS) || currentValue.classList.contains(MENTION_CLASS_IN_INPUT))\n ? currentValue\n : currentValue.querySelector(MENTION_CLASS_COMBINED_QUERY);\n }\n\n // if mentionNode is not null, it is a mention\n if (mentionNode) {\n const text = (currentValue as HTMLSpanElement)?.innerText;\n const userId = mentionNode.dataset?.userid;\n return [\n ...accumulator,\n {\n text,\n userId,\n },\n ];\n }\n\n return [\n ...accumulator,\n {\n text,\n },\n ];\n }, [] as Word[]);\n return templates;\n}\n\nexport function getUsersFromWords(templates: Word[], channel: GroupChannel): User[] {\n const userMap = {};\n const users = channel.members;\n templates.forEach((template) => {\n if (template.userId) {\n const mentionedMember = users.find((user) => user.userId === template.userId);\n // Object.values would return array-> [undefined] if the user is not in the channel\n if (mentionedMember) {\n userMap[template.userId] = mentionedMember;\n }\n }\n });\n return Object.values(userMap);\n}\n","import { useCallback } from 'react';\nimport DOMPurify from 'dompurify';\n\nimport { inserTemplateToDOM } from './insertTemplate';\nimport { sanitizeString } from '../../utils';\nimport { DynamicProps } from './types';\nimport {\n createPasteNode,\n hasMention,\n domToMessageTemplate,\n getUsersFromWords,\n extractTextFromNodes,\n getLeafNodes,\n} from './utils';\n\n// exported, should be backward compatible\n// conditions to test:\n// 1. paste simple text\n// 2. paste text with mention\n// 3. paste text with mention and text\n// 4. paste text with mention and text and paste again before and after\n// 5. copy message with mention(only one mention, no other text) and paste\n// 6. copy message with mention from input and paste(before and after)\nexport function usePaste({\n ref,\n setIsInput,\n setHeight,\n channel,\n setMentionedUsers,\n}: DynamicProps): (e: React.ClipboardEvent<HTMLDivElement>) => void {\n return useCallback((e) => {\n e.preventDefault();\n const html = e?.clipboardData.getData('text/html');\n // simple text, continue as normal\n if (!html) {\n const text = e?.clipboardData.getData('text');\n document.execCommand('insertHTML', false, sanitizeString(text));\n setIsInput(true);\n setHeight();\n return;\n }\n\n // has html, check if there are mentions, sanitize and insert\n const purifier = DOMPurify(window);\n const clean = purifier.sanitize(html);\n const pasteNode = createPasteNode();\n pasteNode.innerHTML = clean;\n // does not have mention, continue as normal\n if (!hasMention(pasteNode)) {\n // to preserve space between words\n const text = extractTextFromNodes(Array.from(pasteNode.children) as HTMLSpanElement[]);\n document.execCommand('insertHTML', false, sanitizeString(text));\n pasteNode.remove();\n setIsInput(true);\n setHeight();\n return;\n }\n\n // has mention, collect leaf nodes and parse words\n const leafNodes = getLeafNodes(pasteNode);\n const words = domToMessageTemplate(leafNodes);\n const mentionedUsers = getUsersFromWords(words, channel);\n\n // side effects\n setMentionedUsers(mentionedUsers);\n inserTemplateToDOM(words);\n pasteNode.remove();\n setIsInput(true);\n setHeight();\n }, [ref, setIsInput, setHeight, channel, setMentionedUsers]);\n}\n\n// to do -> In the future donot export default\nexport default usePaste;\n"],"names":["renderToString","_ref","userId","nickname","el","MENTION_USER_LABEL_CLASSNAME","purifier","DOMPurify","window","sanitized_","sanitize","token","split","spanTag","rest","sanitized","join","sanitizeString","str","replace","i","concat","charCodeAt","nodeListToArray","childNodes","Array","from","error","inserTemplateToDOM","templateList","nodes","map","template","text","renderMentionLabelToString","document","execCommand","PASTE_NODE","TEXT_MESSAGE_CLASS","MENTION_CLASS","MENTION_CLASS_IN_INPUT","MENTION_CLASS_COMBINED_QUERY","querySelectorIncludingSelf","master","selector","result","querySelectorAll","find","matches","getLeafNodes","ogMessage","OG_MESSAGE_BODY_CLASSNAME","textMessageBody","TEXT_MESSAGE_BODY_CLASSNAME","createPasteNode","pasteNode","body","querySelector","remove","node","createElement","id","style","display","hasMention","parent","extractTextFromNodes","forEach","textNodes","length","innerText","domToMessageTemplate","nodeArray","templates","reduce","accumulator","currentValue","mentionNode","Text","textContent","HTMLElement","classList","contains","_mentionNode$dataset","dataset","userid","getUsersFromWords","channel","userMap","users","members","mentionedMember","user","Object","values","usePaste","ref","setIsInput","setHeight","setMentionedUsers","useCallback","e","preventDefault","html","clipboardData","getData","clean","innerHTML","children","leafNodes","words","mentionedUsers"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var index_module = require('./index.module-8026e7d3.js');
5
- var tokenize = require('./tokenize-586ed01a.js');
4
+ var index_module = require('./index.module-0ba29e4f.js');
5
+ var tokenize = require('./tokenize-8279c435.js');
6
6
  var Message_context = require('./Message/context.js');
7
7
  var ui_MentionLabel = require('./ui/MentionLabel.js');
8
8
  var ui_LinkLabel = require('./ui/LinkLabel.js');
9
- var ui_Label = require('./index-2cb13008.js');
9
+ var ui_Label = require('./index-bf35893c.js');
10
10
 
11
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
12
 
@@ -54,4 +54,4 @@ function TextFragment(_ref) {
54
54
  }
55
55
 
56
56
  exports.TextFragment = TextFragment;
57
- //# sourceMappingURL=index-49fe0efb.js.map
57
+ //# sourceMappingURL=index-0aec5632.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-49fe0efb.js","sources":["../../src/modules/Message/utils/tokens/keyGenerator.ts","../../src/modules/Message/components/TextFragment/index.tsx"],"sourcesContent":["// this function is used to generate a unique key for token in message\n// it changes with updated time and index\n// messageUpdatedAt is the key part of this key generator\nexport function keyGenerator(\n createdAt: number,\n messageUpdatedAt: number,\n index: number,\n): string {\n return `sb-msg_${createdAt}_${messageUpdatedAt}_${index}`;\n}\n","import React from 'react';\nimport { UserMessage } from '@sendbird/chat/message';\nimport { match } from 'ts-pattern';\n\nimport { TOKEN_TYPES, Token } from '../../utils/tokens/types';\nimport { useMessageContext } from '../../context/MessageProvider';\nimport { keyGenerator } from '../../utils/tokens/keyGenerator';\nimport MentionLabel from '../../../../ui/MentionLabel';\nimport { USER_MENTION_PREFIX } from '../../consts';\nimport LinkLabel from '../../../../ui/LinkLabel';\nimport { LabelTypography } from '../../../../ui/Label';\nimport { getWhiteSpacePreservedText } from '../../utils/tokens/tokenize';\n\nexport type TextFragmentProps = {\n tokens: Token[];\n};\n\nexport default function TextFragment({\n tokens,\n}: TextFragmentProps): React.ReactElement {\n const messageStore = useMessageContext();\n\n const message = messageStore?.message as UserMessage;\n const isByMe = messageStore?.isByMe;\n const { updatedAt, createdAt } = message;\n\n return (\n <>\n {tokens?.map((token, idx) => {\n const key = keyGenerator(createdAt, updatedAt, idx);\n return match(token.type)\n .with(TOKEN_TYPES.mention, () => (\n <span className=\"sendbird-word\" key={key}>\n <MentionLabel\n mentionTemplate={USER_MENTION_PREFIX}\n mentionedUserId={token.userId}\n mentionedUserNickname={token.value}\n isByMe={isByMe}\n />\n </span>\n ))\n .with(TOKEN_TYPES.url, () => (\n <span className=\"sendbird-word\" key={key}>\n <LinkLabel\n className=\"sendbird-word__url\"\n src={token.value}\n type={LabelTypography.BODY_1}\n >\n {token.value}\n </LinkLabel>\n </span>\n ))\n .otherwise(() => <React.Fragment key={key}>{getWhiteSpacePreservedText(token.value)}</React.Fragment>);\n })}\n </>\n );\n}\n"],"names":["keyGenerator","createdAt","messageUpdatedAt","index","TextFragment","_ref","tokens","messageStore","useMessageContext","message","isByMe","updatedAt","React","createElement","Fragment","map","token","idx","key","match","type","with","TOKEN_TYPES","mention","className","MentionLabel","mentionTemplate","USER_MENTION_PREFIX","mentionedUserId","userId","mentionedUserNickname","value","url","LinkLabel","src","LabelTypography","BODY_1","otherwise","getWhiteSpacePreservedText"],"mappings":";;;;;;;;;;;;;;AAAA;AACA;AACA;AACO,SAASA,YAAYA,CAC1BC,SAAiB,EACjBC,gBAAwB,EACxBC,KAAa,EACL;AACR,EAAA,OAAQ,UAASF,SAAU,CAAA,CAAA,EAAGC,gBAAiB,CAAA,CAAA,EAAGC,KAAM,CAAC,CAAA,CAAA;AAC3D;;ACQe,SAASC,YAAYA,CAAAC,IAAA,EAEM;EAAA,IAFL;AACnCC,IAAAA,MAAAA;AACiB,GAAC,GAAAD,IAAA,CAAA;EAClB,MAAME,YAAY,GAAGC,iCAAiB,EAAE,CAAA;EAExC,MAAMC,OAAO,GAAGF,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAEE,OAAsB,CAAA;EACpD,MAAMC,MAAM,GAAGH,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAEG,MAAM,CAAA;EACnC,MAAM;IAAEC,SAAS;AAAEV,IAAAA,SAAAA;AAAU,GAAC,GAAGQ,OAAO,CAAA;EAExC,oBACEG,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAE,QAAA,QACGR,MAAM,KAAA,IAAA,IAANA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAES,GAAG,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;IAC3B,MAAMC,GAAG,GAAGlB,YAAY,CAACC,SAAS,EAAEU,SAAS,EAAEM,GAAG,CAAC,CAAA;AACnD,IAAA,OAAOE,cAAK,CAACH,KAAK,CAACI,IAAI,CAAC,CACrBC,IAAI,CAACC,oBAAW,CAACC,OAAO,EAAE,mBACzBX,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMW,MAAAA,SAAS,EAAC,eAAe;AAACN,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,eACvCN,yBAAA,CAAAC,aAAA,CAACY,eAAY,EAAA;AACXC,MAAAA,eAAe,EAAEC,4BAAoB;MACrCC,eAAe,EAAEZ,KAAK,CAACa,MAAO;MAC9BC,qBAAqB,EAAEd,KAAK,CAACe,KAAM;AACnCrB,MAAAA,MAAM,EAAEA,MAAAA;AAAO,KAAA,CACf,CAEL,CAAC,CACDW,IAAI,CAACC,oBAAW,CAACU,GAAG,EAAE,mBACrBpB,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMW,MAAAA,SAAS,EAAC,eAAe;AAACN,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,eACvCN,yBAAA,CAAAC,aAAA,CAACoB,uBAAS,EAAA;AACRT,MAAAA,SAAS,EAAC,oBAAoB;MAC9BU,GAAG,EAAElB,KAAK,CAACe,KAAM;MACjBX,IAAI,EAAEe,wBAAe,CAACC,MAAAA;AAAO,KAAA,EAE5BpB,KAAK,CAACe,KAAK,CACF,CAEf,CAAC,CACDM,SAAS,CAAC,mBAAMzB,yBAAA,CAAAC,aAAA,CAACD,yBAAK,CAACE,QAAQ,EAAA;AAACI,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,EAAEoB,mCAA0B,CAACtB,KAAK,CAACe,KAAK,CAAC,CAAkB,CAAC,CAAA;AAC1G,GAAC,CAAC,CACD,CAAA;AAEP;;;;"}
1
+ {"version":3,"file":"index-0aec5632.js","sources":["../../src/modules/Message/utils/tokens/keyGenerator.ts","../../src/modules/Message/components/TextFragment/index.tsx"],"sourcesContent":["// this function is used to generate a unique key for token in message\n// it changes with updated time and index\n// messageUpdatedAt is the key part of this key generator\nexport function keyGenerator(\n createdAt: number,\n messageUpdatedAt: number,\n index: number,\n): string {\n return `sb-msg_${createdAt}_${messageUpdatedAt}_${index}`;\n}\n","import React from 'react';\nimport { UserMessage } from '@sendbird/chat/message';\nimport { match } from 'ts-pattern';\n\nimport { TOKEN_TYPES, Token } from '../../utils/tokens/types';\nimport { useMessageContext } from '../../context/MessageProvider';\nimport { keyGenerator } from '../../utils/tokens/keyGenerator';\nimport MentionLabel from '../../../../ui/MentionLabel';\nimport { USER_MENTION_PREFIX } from '../../consts';\nimport LinkLabel from '../../../../ui/LinkLabel';\nimport { LabelTypography } from '../../../../ui/Label';\nimport { getWhiteSpacePreservedText } from '../../utils/tokens/tokenize';\n\nexport type TextFragmentProps = {\n tokens: Token[];\n};\n\nexport default function TextFragment({\n tokens,\n}: TextFragmentProps): React.ReactElement {\n const messageStore = useMessageContext();\n\n const message = messageStore?.message as UserMessage;\n const isByMe = messageStore?.isByMe;\n const { updatedAt, createdAt } = message;\n\n return (\n <>\n {tokens?.map((token, idx) => {\n const key = keyGenerator(createdAt, updatedAt, idx);\n return match(token.type)\n .with(TOKEN_TYPES.mention, () => (\n <span className=\"sendbird-word\" key={key}>\n <MentionLabel\n mentionTemplate={USER_MENTION_PREFIX}\n mentionedUserId={token.userId}\n mentionedUserNickname={token.value}\n isByMe={isByMe}\n />\n </span>\n ))\n .with(TOKEN_TYPES.url, () => (\n <span className=\"sendbird-word\" key={key}>\n <LinkLabel\n className=\"sendbird-word__url\"\n src={token.value}\n type={LabelTypography.BODY_1}\n >\n {token.value}\n </LinkLabel>\n </span>\n ))\n .otherwise(() => <React.Fragment key={key}>{getWhiteSpacePreservedText(token.value)}</React.Fragment>);\n })}\n </>\n );\n}\n"],"names":["keyGenerator","createdAt","messageUpdatedAt","index","TextFragment","_ref","tokens","messageStore","useMessageContext","message","isByMe","updatedAt","React","createElement","Fragment","map","token","idx","key","match","type","with","TOKEN_TYPES","mention","className","MentionLabel","mentionTemplate","USER_MENTION_PREFIX","mentionedUserId","userId","mentionedUserNickname","value","url","LinkLabel","src","LabelTypography","BODY_1","otherwise","getWhiteSpacePreservedText"],"mappings":";;;;;;;;;;;;;;AAAA;AACA;AACA;AACO,SAASA,YAAYA,CAC1BC,SAAiB,EACjBC,gBAAwB,EACxBC,KAAa,EACL;AACR,EAAA,OAAQ,UAASF,SAAU,CAAA,CAAA,EAAGC,gBAAiB,CAAA,CAAA,EAAGC,KAAM,CAAC,CAAA,CAAA;AAC3D;;ACQe,SAASC,YAAYA,CAAAC,IAAA,EAEM;EAAA,IAFL;AACnCC,IAAAA,MAAAA;AACiB,GAAC,GAAAD,IAAA,CAAA;EAClB,MAAME,YAAY,GAAGC,iCAAiB,EAAE,CAAA;EAExC,MAAMC,OAAO,GAAGF,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAEE,OAAsB,CAAA;EACpD,MAAMC,MAAM,GAAGH,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAEG,MAAM,CAAA;EACnC,MAAM;IAAEC,SAAS;AAAEV,IAAAA,SAAAA;AAAU,GAAC,GAAGQ,OAAO,CAAA;EAExC,oBACEG,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAE,QAAA,QACGR,MAAM,KAAA,IAAA,IAANA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAES,GAAG,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;IAC3B,MAAMC,GAAG,GAAGlB,YAAY,CAACC,SAAS,EAAEU,SAAS,EAAEM,GAAG,CAAC,CAAA;AACnD,IAAA,OAAOE,cAAK,CAACH,KAAK,CAACI,IAAI,CAAC,CACrBC,IAAI,CAACC,oBAAW,CAACC,OAAO,EAAE,mBACzBX,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMW,MAAAA,SAAS,EAAC,eAAe;AAACN,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,eACvCN,yBAAA,CAAAC,aAAA,CAACY,eAAY,EAAA;AACXC,MAAAA,eAAe,EAAEC,4BAAoB;MACrCC,eAAe,EAAEZ,KAAK,CAACa,MAAO;MAC9BC,qBAAqB,EAAEd,KAAK,CAACe,KAAM;AACnCrB,MAAAA,MAAM,EAAEA,MAAAA;AAAO,KAAA,CACf,CAEL,CAAC,CACDW,IAAI,CAACC,oBAAW,CAACU,GAAG,EAAE,mBACrBpB,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMW,MAAAA,SAAS,EAAC,eAAe;AAACN,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,eACvCN,yBAAA,CAAAC,aAAA,CAACoB,uBAAS,EAAA;AACRT,MAAAA,SAAS,EAAC,oBAAoB;MAC9BU,GAAG,EAAElB,KAAK,CAACe,KAAM;MACjBX,IAAI,EAAEe,wBAAe,CAACC,MAAAA;AAAO,KAAA,EAE5BpB,KAAK,CAACe,KAAK,CACF,CAEf,CAAC,CACDM,SAAS,CAAC,mBAAMzB,yBAAA,CAAAC,aAAA,CAACD,yBAAK,CAACE,QAAQ,EAAA;AAACI,MAAAA,GAAG,EAAEA,GAAAA;AAAI,KAAA,EAAEoB,mCAA0B,CAACtB,KAAK,CAACe,KAAK,CAAC,CAAkB,CAAC,CAAA;AAC1G,GAAC,CAAC,CACD,CAAA;AAEP;;;;"}
@@ -5,10 +5,10 @@ var ui_Button = require('./ui/Button.js');
5
5
  var ui_ContextMenu = require('./ui/ContextMenu.js');
6
6
  var ui_Icon = require('./ui/Icon.js');
7
7
  var ui_IconButton = require('./ui/IconButton.js');
8
- var ui_Label = require('./index-2cb13008.js');
9
- var LocalizationContext = require('./LocalizationContext-a15ec4eb.js');
10
- var UserProfileContext = require('./UserProfileContext-f8f1cee7.js');
11
- require('./context-0276d21e.js');
8
+ var ui_Label = require('./index-bf35893c.js');
9
+ var LocalizationContext = require('./LocalizationContext-fd85331f.js');
10
+ var UserProfileContext = require('./UserProfileContext-e658337c.js');
11
+ require('./context-90576ca6.js');
12
12
  var ui_Avatar = require('./ui/Avatar.js');
13
13
  require('react-dom');
14
14
  var ui_MutedAvatarOverlay = require('./ui/MutedAvatarOverlay.js');
@@ -16,7 +16,7 @@ var ui_UserProfile = require('./ui/UserProfile.js');
16
16
  require('@sendbird/chat/openChannel');
17
17
  var ui_Modal = require('./ui/Modal.js');
18
18
  var ui_UserListItem = require('./ui/UserListItem.js');
19
- var utils = require('./utils-c8ca7346.js');
19
+ var utils = require('./utils-6a3fe892.js');
20
20
  var OpenChannelSettings_context = require('./OpenChannelSettings/context.js');
21
21
  var useSendbirdStateContext = require('./useSendbirdStateContext.js');
22
22
 
@@ -364,4 +364,4 @@ function ParticipantList(_ref) {
364
364
 
365
365
  exports.ParticipantList = ParticipantList;
366
366
  exports.UserListItem = UserListItem;
367
- //# sourceMappingURL=index-e46cc828.js.map
367
+ //# sourceMappingURL=index-5699329f.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-e46cc828.js","sources":["../../src/modules/OpenChannelSettings/components/ParticipantUI/ParticipantsModal.tsx","../../src/modules/OpenChannelSettings/components/ParticipantUI/ParticipantItem.tsx","../../src/modules/OpenChannelSettings/components/ParticipantUI/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\nimport type { Participant, User } from '@sendbird/chat';\nimport type { ParticipantListQuery } from '@sendbird/chat/openChannel';\n\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { noop } from '../../../../utils/utils';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function ParticipantsModal({\n onCancel,\n}: Props): ReactElement {\n const state = useSendbirdStateContext();\n const { channel } = useOpenChannelSettingsContext();\n const { stringSet } = useContext(LocalizationContext);\n const [participants, setParticipants] = useState<Array<User> | null>([]);\n const [participantListQuery, setParticipantListQuery] = useState<ParticipantListQuery | null>(null);\n const userId = state?.config?.userId;\n const sdk = state?.stores?.sdkStore?.sdk;\n const isOperatorView = channel?.isOperator(userId);\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({});\n setParticipantListQuery(participantListQuery);\n participantListQuery.next().then((participantList) => {\n setParticipants(participantList);\n });\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n isFullScreenOnMobile\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText={stringSet.OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE}\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = participantListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n participantListQuery.next().then((fetchedParticipants) => {\n setParticipants([\n ...participants,\n ...fetchedParticipants,\n ]);\n });\n }\n }}\n >\n {\n participants.map((p: Participant) => {\n const isOperator = channel?.isOperator(p.userId);\n return (\n <UserListItem\n user={p}\n key={p.userId}\n currentUser={sdk?.currentUser?.userId}\n action={\n (userId !== p.userId && isOperatorView)\n ? ({ actionRef, parentRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if (isOperator) {\n channel?.removeOperators([p.userId]).then(() => {\n closeDropdown();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n closeDropdown();\n });\n }\n }}\n dataSbId={`open_channel_setting_participant_context_menu_${(\n isOperator) ? 'unregister_operator' : 'register_as_operator'}`\n }\n >\n {\n isOperator\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n if (p.isMuted) {\n channel?.unmuteUser(p).then(() => {\n closeDropdown();\n });\n } else {\n channel?.muteUser(p).then(() => {\n closeDropdown();\n });\n }\n }}\n dataSbId={`open_channel_setting_participant_context_menu_${p.isMuted ? 'unmute' : 'mute'}`\n }\n >\n {\n p.isMuted\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNMUTE\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n closeDropdown();\n });\n }}\n dataSbId=\"open_channel_setting_participant_context_menu_ban\"\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n }\n />\n );\n })\n }\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport type { Participant } from '@sendbird/chat';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport Accordion from '../../../../ui/Accordion';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport Avatar from '../../../../ui/Avatar/index';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport ParticipantsModal from './ParticipantsModal';\nimport UserProfile from '../../../../ui/UserProfile';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport MutedAvatarOverlay from '../../../../ui/Avatar/MutedAvatarOverlay';\n\nconst SHOWN_MEMBER_MAX = 10;\n\ninterface ActionProps {\n actionRef: React.RefObject<HTMLInputElement>;\n}\ninterface UserListItemProps {\n user: Participant;\n currentUser?: string;\n isOperator?: boolean;\n action?(props: ActionProps): ReactElement;\n}\n\nexport const UserListItem: React.FC<UserListItemProps> = ({\n user,\n currentUser,\n isOperator,\n action,\n}: UserListItemProps) => {\n const avatarRef = useRef(null);\n const actionRef = useRef(null);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext(UserProfileContext);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-participants-accordion__member\">\n <div className=\"sendbird-participants-accordion__member-avatar\">\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <>\n <Avatar\n className=\"sendbird-participants-accordion__member-avatar__avatar\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n ref={avatarRef}\n src={user.profileUrl}\n width={24}\n height={24}\n />\n {user?.isMuted ? (<MutedAvatarOverlay />) : ''}\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: '0px', paddingBottom: '0px' }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user: user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n disableMessaging\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n </div>\n <Label\n className=\"sendbird-participants-accordion__member__title\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n stringSet.OPEN_CHANNEL_SETTINGS__MEMBERS__YOU\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className=\"sendbird-participants-accordion__member__title user-id\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n isOperator && (\n <Label\n className={\n `sendbird-participants-accordion__member__title\n ${user?.userId !== currentUser ? 'operator' : ''}\n ${user?.userId === currentUser ? 'self-operator' : ''}\n `\n }\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR}\n </Label>\n )\n }\n {\n action && (\n <div\n className=\"sendbird-participants-accordion__member__action\"\n ref={actionRef}\n >\n {action({ actionRef })}\n </div>\n )\n }\n </div>\n );\n};\n\nexport interface ParticipantsAccordionProps {\n maxMembers?: number;\n}\n\nexport default function ParticipantsAccordion(props: ParticipantsAccordionProps): ReactElement {\n const maxMembers = props?.maxMembers || SHOWN_MEMBER_MAX;\n const { channel } = useOpenChannelSettingsContext();\n const globalState = useSendbirdStateContext();\n const currentUser = globalState?.config?.userId;\n const [participants, setParticipants] = useState([]);\n const [showMoreModal, setShowMoreModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({});\n participantListQuery.next().then((participantList) => {\n setParticipants(participantList);\n });\n }, [channel]);\n\n return (\n <Accordion\n className=\"sendbird-participants-accordion\"\n id=\"participants\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.MEMBERS}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-openchannel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__PARTICIPANTS_ACCORDION_TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <div className=\"\">\n <div className=\"sendbird-participants-accordion__list\">\n {\n participants.slice(0, maxMembers).map((p) => (\n <UserListItem\n user={p}\n currentUser={currentUser}\n key={p.userId}\n />\n ))\n }\n {(participants && participants.length === 0)\n ? (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__EMPTY_LIST}\n </Label>\n ) : ''\n }\n </div>\n {\n participants.length >= maxMembers && (\n <div className=\"sendbird-participants-accordion__footer\">\n <Button\n className=\"sendbird-participants-accordion__footer__all-participants\"\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowMoreModal(true)}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__SEE_ALL}\n </Button>\n {\n showMoreModal && (\n <ParticipantsModal\n onCancel={() => {\n setShowMoreModal(false);\n }}\n />\n )\n }\n </div>\n )\n }\n </div>\n )}\n />\n );\n}\n","import React, {\n ReactElement,\n useContext,\n useState,\n useEffect,\n useCallback,\n} from 'react';\nimport type { Participant, User } from '@sendbird/chat';\nimport type { ParticipantListQuery } from '@sendbird/chat/openChannel';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\n\nimport { UserListItem } from './ParticipantItem';\nimport ParticipantsModal from './ParticipantsModal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface ParticipantListProps {\n isOperatorView?: boolean;\n}\n\nexport default function ParticipantList({\n isOperatorView = false,\n}: ParticipantListProps): ReactElement {\n const globalState = useSendbirdStateContext();\n const currentUserId = globalState?.config?.userId;\n const { channel } = useOpenChannelSettingsContext();\n const { stringSet } = useContext(LocalizationContext);\n const [participants, setParticipants] = useState<Array<User> | null>(null);\n const [participantListQuery, setParticipantListQuery] = useState<ParticipantListQuery | null>(null);\n const [showParticipantsModal, setShowParticipantsModal] = useState<boolean>(false);\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({ limit: 10 });\n setParticipantListQuery(participantListQuery);\n participantListQuery.next().then((participants) => {\n setParticipants(participants);\n });\n }, [channel]);\n const refreshList = useCallback(() => {\n if (!channel) {\n setParticipants([]);\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({ limit: 10 });\n participantListQuery.next().then((participants) => {\n setParticipants(participants);\n });\n }, [channel]);\n return (\n <div\n className=\"sendbird-openchannel-settings__participant-list\"\n onScroll={(e) => {\n const { hasNext } = participantListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n participantListQuery.next().then((fetchedParticipants) => {\n setParticipants([\n ...participants,\n ...fetchedParticipants,\n ]);\n });\n }\n }}\n >\n <div>\n {\n participants?.map((p: Participant) => {\n const isOperator = channel?.isOperator(p.userId);\n return (\n <UserListItem\n user={p}\n currentUser={currentUserId}\n key={p.userId}\n isOperator={isOperator}\n action={({ actionRef }) => (\n (isOperatorView && currentUserId !== p?.userId)\n ? (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-openchannel-participant-list__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 if (isOperator) {\n channel?.removeOperators([p.userId]).then(() => {\n closeDropdown();\n refreshList();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n closeDropdown();\n refreshList();\n });\n }\n }}\n dataSbId={`open_channel_setting_partitipant_conext_menu_${(\n isOperator) ? 'unregister_operator' : 'register_as_operator'}`\n }\n >\n {\n isOperator\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n if (p.isMuted) {\n channel?.unmuteUser(p).then(() => {\n closeDropdown();\n refreshList();\n });\n } else {\n channel?.muteUser(p).then(() => {\n closeDropdown();\n refreshList();\n });\n }\n }}\n dataSbId={`open_channel_setting_partitipant_conext_menu_${p.isMuted ? 'unmute' : 'mute'}`}\n >\n {\n p.isMuted\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNMUTE\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n closeDropdown();\n refreshList();\n });\n }}\n dataSbId=\"open_channel_setting_partitipant_conext_menu_ban\"\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n )}\n />\n );\n })\n }\n {\n (participants && participants.length === 0)\n ? (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__EMPTY_LIST}\n </Label>\n ) : null\n }\n <div className=\"sendbird-openchannel-participant-list__footer\">\n {\n participantListQuery?.hasNext && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowParticipantsModal(true)}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE}\n </Button>\n )\n }\n </div>\n {\n showParticipantsModal && (\n <ParticipantsModal\n onCancel={() => {\n setShowParticipantsModal(false);\n refreshList();\n }}\n />\n )\n }\n </div>\n </div>\n );\n}\n"],"names":["ParticipantsModal","_ref","_state$config","_state$stores","_state$stores$sdkStor","onCancel","state","useSendbirdStateContext","channel","useOpenChannelSettingsContext","stringSet","useContext","LocalizationContext","participants","setParticipants","useState","participantListQuery","setParticipantListQuery","userId","config","sdk","stores","sdkStore","isOperatorView","isOperator","useEffect","createParticipantListQuery","next","then","participantList","React","createElement","Modal","hideFooter","isFullScreenOnMobile","onSubmit","noop","titleText","OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE","className","onScroll","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","fetchedParticipants","map","p","_sdk$currentUser","UserListItem","user","key","currentUser","action","_ref2","actionRef","parentRef","ContextMenu","menuTrigger","toggleDropdown","IconButton","width","height","onClick","Icon","type","IconTypes","MORE","fillColor","IconColors","CONTENT_INVERSE","menuItems","closeDropdown","MenuItems","parentContainRef","openLeft","MenuItem","removeOperators","addOperators","dataSbId","OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR","isMuted","unmuteUser","muteUser","OPEN_CHANNEL_SETTING__MODERATION__UNMUTE","OPEN_CHANNEL_SETTING__MODERATION__MUTE","banUser","OPEN_CHANNEL_SETTING__MODERATION__BAN","avatarRef","useRef","disableUserProfile","renderUserProfile","UserProfileContext","Fragment","Avatar","ref","src","profileUrl","MutedAvatarOverlay","style","paddingTop","paddingBottom","currentUserId","close","UserProfile","disableMessaging","onSuccess","Label","LabelTypography","SUBTITLE_2","color","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","OPEN_CHANNEL_SETTINGS__MEMBERS__YOU","CAPTION_3","ONBACKGROUND_2","OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR","ParticipantList","_globalState$config","globalState","showParticipantsModal","setShowParticipantsModal","limit","refreshList","useCallback","length","ONBACKGROUND_3","OPEN_CHANNEL_SETTINGS__EMPTY_LIST","Button","ButtonTypes","SECONDARY","size","ButtonSizes","SMALL"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAuBe,SAASA,iBAAiBA,CAAAC,IAAA,EAEjB;AAAA,EAAA,IAAAC,aAAA,EAAAC,aAAA,EAAAC,qBAAA,CAAA;EAAA,IAFkB;AACxCC,IAAAA,QAAAA;AACK,GAAC,GAAAJ,IAAA,CAAA;EACN,MAAMK,KAAK,GAAGC,uBAAuB,EAAE,CAAA;EACvC,MAAM;AAAEC,IAAAA,OAAAA;GAAS,GAAGC,yDAA6B,EAAE,CAAA;EACnD,MAAM;AAAEC,IAAAA,SAAAA;AAAU,GAAC,GAAGC,gBAAU,CAACC,uCAAmB,CAAC,CAAA;EACrD,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGC,cAAQ,CAAqB,EAAE,CAAC,CAAA;EACxE,MAAM,CAACC,oBAAoB,EAAEC,uBAAuB,CAAC,GAAGF,cAAQ,CAA8B,IAAI,CAAC,CAAA;AACnG,EAAA,MAAMG,MAAM,GAAGZ,KAAK,KAALA,IAAAA,IAAAA,KAAK,wBAAAJ,aAAA,GAALI,KAAK,CAAEa,MAAM,MAAAjB,IAAAA,IAAAA,aAAA,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAA,CAAegB,MAAM,CAAA;EACpC,MAAME,GAAG,GAAGd,KAAK,KAALA,IAAAA,IAAAA,KAAK,wBAAAH,aAAA,GAALG,KAAK,CAAEe,MAAM,MAAA,IAAA,IAAAlB,aAAA,KAAAC,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,qBAAA,GAAbD,aAAA,CAAemB,QAAQ,cAAAlB,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAvBA,qBAAA,CAAyBgB,GAAG,CAAA;EACxC,MAAMG,cAAc,GAAGf,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEgB,UAAU,CAACN,MAAM,CAAC,CAAA;AAClDO,EAAAA,eAAS,CAAC,MAAM;IACd,IAAI,CAACjB,OAAO,IAAI,EAACA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,IAAAA,OAAO,CAAEkB,0BAA0B,CAAE,EAAA;AACpD,MAAA,OAAA;AACF,KAAA;AACA,IAAA,MAAMV,oBAAoB,GAAGR,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEkB,0BAA0B,CAAC,EAAE,CAAC,CAAA;IACpET,uBAAuB,CAACD,oBAAoB,CAAC,CAAA;AAC7CA,IAAAA,oBAAoB,CAACW,IAAI,EAAE,CAACC,IAAI,CAAEC,eAAe,IAAK;MACpDf,eAAe,CAACe,eAAe,CAAC,CAAA;AAClC,KAAC,CAAC,CAAA;GACH,EAAE,EAAE,CAAC,CAAA;EACN,oBACEC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA,IAAA,eACED,yBAAA,CAAAC,aAAA,CAACC,mBAAK,EAAA;IACJC,UAAU,EAAA,IAAA;IACVC,oBAAoB,EAAA,IAAA;AACpB7B,IAAAA,QAAQ,EAAEA,MAAMA,QAAQ,EAAG;AAC3B8B,IAAAA,QAAQ,EAAEC,UAAK;IACfC,SAAS,EAAE3B,SAAS,CAAC4B,6CAAAA;GAErBR,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEQ,IAAAA,SAAS,EAAC,qCAAqC;IAC/CC,QAAQ,EAAGC,CAAC,IAAK;MACf,MAAM;AAAEC,QAAAA,OAAAA;AAAQ,OAAC,GAAG1B,oBAAoB,CAAA;AACxC,MAAA,MAAM2B,MAAM,GAAGF,CAAC,CAACE,MAA6B,CAAA;AAC9C,MAAA,MAAMC,SAAS,GACbD,MAAM,CAACE,YAAY,GAAGF,MAAM,CAACG,SAAS,KAAKH,MAAM,CAACI,YACnD,CAAA;MAED,IAAIL,OAAO,IAAIE,SAAS,EAAE;AACxB5B,QAAAA,oBAAoB,CAACW,IAAI,EAAE,CAACC,IAAI,CAAEoB,mBAAmB,IAAK;UACxDlC,eAAe,CAAC,CACd,GAAGD,YAAY,EACf,GAAGmC,mBAAmB,CACvB,CAAC,CAAA;AACJ,SAAC,CAAC,CAAA;AACJ,OAAA;AACF,KAAA;AAAE,GAAA,EAGAnC,YAAY,CAACoC,GAAG,CAAEC,CAAc,IAAK;AAAA,IAAA,IAAAC,gBAAA,CAAA;AACnC,IAAA,MAAM3B,UAAU,GAAGhB,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEgB,UAAU,CAAC0B,CAAC,CAAChC,MAAM,CAAC,CAAA;AAChD,IAAA,oBACEY,yBAAA,CAAAC,aAAA,CAACqB,eAAY,EAAA;AACXC,MAAAA,IAAI,EAAEH,CAAE;MACRI,GAAG,EAAEJ,CAAC,CAAChC,MAAO;AACdqC,MAAAA,WAAW,EAAEnC,GAAG,KAAHA,IAAAA,IAAAA,GAAG,wBAAA+B,gBAAA,GAAH/B,GAAG,CAAEmC,WAAW,MAAAJ,IAAAA,IAAAA,gBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAA,CAAkBjC,MAAO;MACtCsC,MAAM,EACHtC,MAAM,KAAKgC,CAAC,CAAChC,MAAM,IAAIK,cAAc,GAClCkC,KAAA,IAAA;QAAA,IAAC;UAAEC,SAAS;AAAEC,UAAAA,SAAAA;AAAU,SAAC,GAAAF,KAAA,CAAA;AAAA,QAAA,oBACzB3B,yBAAA,CAAAC,aAAA,CAAC6B,yBAAW,EAAA;AACVC,UAAAA,WAAW,EAAGC,cAAc,iBAC1BhC,yBAAA,CAAAC,aAAA,CAACgC,aAAU,EAAA;AACTxB,YAAAA,SAAS,EAAC,mCAAmC;AAC7CyB,YAAAA,KAAK,EAAC,MAAM;AACZC,YAAAA,MAAM,EAAC,MAAM;AACbC,YAAAA,OAAO,EAAEJ,cAAAA;AAAe,WAAA,eAExBhC,yBAAA,CAAAC,aAAA,CAACoC,kBAAI,EAAA;AACHH,YAAAA,KAAK,EAAC,MAAM;AACZC,YAAAA,MAAM,EAAC,MAAM;YACbG,IAAI,EAAEC,iBAAS,CAACC,IAAK;YACrBC,SAAS,EAAEC,kBAAU,CAACC,eAAAA;AAAgB,WAAA,CACtC,CAEJ;AACFC,UAAAA,SAAS,EAAGC,aAAa,iBACvB7C,yBAAA,CAAAC,aAAA,CAAC6C,wBAAS,EAAA;AACRC,YAAAA,gBAAgB,EAAElB,SAAU;AAC5BA,YAAAA,SAAS,EAAED,SAAU;AACrBiB,YAAAA,aAAa,EAAEA,aAAc;YAC7BG,QAAQ,EAAA,IAAA;AAAA,WAAA,eAERhD,yBAAA,CAAAC,aAAA,CAACgD,uBAAQ,EAAA;YACPb,OAAO,EAAEA,MAAM;AACb,cAAA,IAAI1C,UAAU,EAAE;AACdhB,gBAAAA,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEwE,eAAe,CAAC,CAAC9B,CAAC,CAAChC,MAAM,CAAC,CAAC,CAACU,IAAI,CAAC,MAAM;AAC9C+C,kBAAAA,aAAa,EAAE,CAAA;AACjB,iBAAC,CAAC,CAAA;AACJ,eAAC,MAAM;AACLnE,gBAAAA,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEyE,YAAY,CAAC,CAAC/B,CAAC,CAAChC,MAAM,CAAC,CAAC,CAACU,IAAI,CAAC,MAAM;AAC3C+C,kBAAAA,aAAa,EAAE,CAAA;AACjB,iBAAC,CAAC,CAAA;AACJ,eAAA;aACA;AACFO,YAAAA,QAAQ,EAAG,CACT1D,8CAAAA,EAAAA,UAAU,GAAI,qBAAqB,GAAG,sBAAuB,CAAA,CAAA;AAC9D,WAAA,EAGCA,UAAU,GACNd,SAAS,CAACyE,qDAAqD,GAC/DzE,SAAS,CAAC0E,sDAAsD,CAE7D,eACXtD,yBAAA,CAAAC,aAAA,CAACgD,uBAAQ,EAAA;YACPb,OAAO,EAAEA,MAAM;cACb,IAAIhB,CAAC,CAACmC,OAAO,EAAE;AACb7E,gBAAAA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAE8E,UAAU,CAACpC,CAAC,CAAC,CAACtB,IAAI,CAAC,MAAM;AAChC+C,kBAAAA,aAAa,EAAE,CAAA;AACjB,iBAAC,CAAC,CAAA;AACJ,eAAC,MAAM;AACLnE,gBAAAA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAE+E,QAAQ,CAACrC,CAAC,CAAC,CAACtB,IAAI,CAAC,MAAM;AAC9B+C,kBAAAA,aAAa,EAAE,CAAA;AACjB,iBAAC,CAAC,CAAA;AACJ,eAAA;aACA;YACFO,QAAQ,EAAG,iDAAgDhC,CAAC,CAACmC,OAAO,GAAG,QAAQ,GAAG,MAAO,CAAA,CAAA;AACxF,WAAA,EAGCnC,CAAC,CAACmC,OAAO,GACL3E,SAAS,CAAC8E,wCAAwC,GAClD9E,SAAS,CAAC+E,sCAAsC,CAE7C,eACX3D,yBAAA,CAAAC,aAAA,CAACgD,uBAAQ,EAAA;YACPb,OAAO,EAAEA,MAAM;AACb1D,cAAAA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEkF,OAAO,CAACxC,CAAC,CAAC,CAACtB,IAAI,CAAC,MAAM;AAC7B+C,gBAAAA,aAAa,EAAE,CAAA;AACjB,eAAC,CAAC,CAAA;aACF;AACFO,YAAAA,QAAQ,EAAC,mDAAA;WAERxE,EAAAA,SAAS,CAACiF,qCAAqC,CACvC,CAAA;SAGf,CAAA,CAAA;AAAA,OACH,GACC,IAAA;KAEN,CAAA,CAAA;GAEL,CAAC,CAEA,CACA,CACJ,CAAA;AAEV;;AC1IavC,MAAAA,YAAyC,GAAGnD,IAAA,IAKhC;EAAA,IALiC;IACxDoD,IAAI;IACJE,WAAW;IACX/B,UAAU;AACVgC,IAAAA,MAAAA;AACiB,GAAC,GAAAvD,IAAA,CAAA;AAClB,EAAA,MAAM2F,SAAS,GAAGC,YAAM,CAAC,IAAI,CAAC,CAAA;AAC9B,EAAA,MAAMnC,SAAS,GAAGmC,YAAM,CAAC,IAAI,CAAC,CAAA;EAC9B,MAAM;IACJC,kBAAkB;AAClBC,IAAAA,iBAAAA;AACF,GAAC,GAAGpF,gBAAU,CAACqF,qCAAkB,CAAC,CAAA;EAClC,MAAM;AAAEtF,IAAAA,SAAAA;AAAU,GAAC,GAAGC,gBAAU,CAACC,uCAAmB,CAAC,CAAA;EACrD,oBACEkB,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKQ,IAAAA,SAAS,EAAC,yCAAA;GACbT,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKQ,IAAAA,SAAS,EAAC,gDAAA;AAAgD,GAAA,eAC7DT,yBAAA,CAAAC,aAAA,CAAC6B,yBAAW,EAAA;AACVC,IAAAA,WAAW,EAAGC,cAAc,iBAC1BhC,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAmE,QAAA,EACEnE,IAAAA,eAAAA,yBAAA,CAAAC,aAAA,CAACmE,oBAAM,EAAA;AACL3D,MAAAA,SAAS,EAAC,wDAAwD;MAClE2B,OAAO,EAAEA,MAAM;QACb,IAAI,CAAC4B,kBAAkB,EAAE;AACvBhC,UAAAA,cAAc,EAAE,CAAA;AAClB,SAAA;OACA;AACFqC,MAAAA,GAAG,EAAEP,SAAU;MACfQ,GAAG,EAAE/C,IAAI,CAACgD,UAAW;AACrBrC,MAAAA,KAAK,EAAE,EAAG;AACVC,MAAAA,MAAM,EAAE,EAAA;AAAG,KAAA,CACX,EACDZ,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,KAAA,CAAA,IAAJA,IAAI,CAAEgC,OAAO,gBAAIvD,yBAAA,CAAAC,aAAA,CAACuE,qBAAkB,EAAG,IAAA,CAAA,GAAI,EAAE,CAEhD;AACF5B,IAAAA,SAAS,EAAGC,aAAa,iBACvB7C,yBAAA,CAAAC,aAAA,CAAC6C,wBAAS,EAAA;MACRE,QAAQ,EAAA,IAAA;AACRnB,MAAAA,SAAS,EAAEiC,SAAAA;AACX;AAAA;AACAf,MAAAA,gBAAgB,EAAEe,SAAAA;AAClB;AAAA;AACAjB,MAAAA,aAAa,EAAEA,aAAc;AAC7B4B,MAAAA,KAAK,EAAE;AAAEC,QAAAA,UAAU,EAAE,KAAK;AAAEC,QAAAA,aAAa,EAAE,KAAA;AAAM,OAAA;KAG/CV,EAAAA,iBAAiB,GACbA,iBAAiB,CAAC;AAClB1C,MAAAA,IAAI,EAAEA,IAAI;AACVqD,MAAAA,aAAa,EAAEnD,WAAW;AAC1BoD,MAAAA,KAAK,EAAEhC,aAAAA;AACT,KAAC,CAAC,gBAEA7C,yBAAA,CAAAC,aAAA,CAAC6E,cAAW,EAAA;MACVC,gBAAgB,EAAA,IAAA;AAChBxD,MAAAA,IAAI,EAAEA,IAAK;AACXqD,MAAAA,aAAa,EAAEnD,WAAY;AAC3BuD,MAAAA,SAAS,EAAEnC,aAAAA;KAEd,CAAA,CAAA;AAGP,GAAA,CACF,CACE,eACN7C,yBAAA,CAAAC,aAAA,CAACgF,cAAK,EAAA;AACJxE,IAAAA,SAAS,EAAC,gDAAgD;IAC1D6B,IAAI,EAAE4C,wBAAe,CAACC,UAAW;IACjCC,KAAK,EAAEC,oBAAW,CAACC,cAAAA;AAAe,GAAA,EAEjC/D,IAAI,CAACgE,QAAQ,IAAI3G,SAAS,CAAC4G,OAAO,EAEhC/D,WAAW,KAAKF,IAAI,CAACnC,MAAM,IAC1BR,SAAS,CAAC6G,mCACX,CAEG;AACN;EACA,CAAClE,IAAI,CAACgE,QAAQ,iBACZvF,yBAAA,CAAAC,aAAA,CAACgF,cAAK,EAAA;AACJxE,IAAAA,SAAS,EAAC,wDAAwD;IAClE6B,IAAI,EAAE4C,wBAAe,CAACQ,SAAU;IAChCN,KAAK,EAAEC,oBAAW,CAACM,cAAAA;GAElBpE,EAAAA,IAAI,CAACnC,MAAM,CAEf,EAGDM,UAAU,iBACRM,yBAAA,CAAAC,aAAA,CAACgF,cAAK,EAAA;AACJxE,IAAAA,SAAS,EACN,CAAA;AACf,gBAAA,EAAkB,CAAAc,IAAI,KAAJA,IAAAA,IAAAA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAEnC,MAAM,MAAKqC,WAAW,GAAG,UAAU,GAAG,EAAG,CAAA;AACjE,gBAAA,EAAkB,CAAAF,IAAI,KAAJA,IAAAA,IAAAA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAEnC,MAAM,MAAKqC,WAAW,GAAG,eAAe,GAAG,EAAG,CAAA;AACtE,cACa,CAAA;IACDa,IAAI,EAAE4C,wBAAe,CAACC,UAAW;IACjCC,KAAK,EAAEC,oBAAW,CAACM,cAAAA;GAElB/G,EAAAA,SAAS,CAACgH,wCAAwC,CAEtD,EAGDlE,MAAM,iBACJ1B,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEQ,IAAAA,SAAS,EAAC,iDAAiD;AAC3D4D,IAAAA,GAAG,EAAEzC,SAAAA;AAAU,GAAA,EAEdF,MAAM,CAAC;AAAEE,IAAAA,SAAAA;GAAW,CAAC,CAEzB,CAEC,CAAA;AAEV;;AC5He,SAASiE,eAAeA,CAAA1H,IAAA,EAEA;AAAA,EAAA,IAAA2H,mBAAA,CAAA;EAAA,IAFC;AACtCrG,IAAAA,cAAc,GAAG,KAAA;AACG,GAAC,GAAAtB,IAAA,CAAA;EACrB,MAAM4H,WAAW,GAAGtH,uBAAuB,EAAE,CAAA;AAC7C,EAAA,MAAMmG,aAAa,GAAGmB,WAAW,KAAXA,IAAAA,IAAAA,WAAW,wBAAAD,mBAAA,GAAXC,WAAW,CAAE1G,MAAM,MAAAyG,IAAAA,IAAAA,mBAAA,KAAnBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,mBAAA,CAAqB1G,MAAM,CAAA;EACjD,MAAM;AAAEV,IAAAA,OAAAA;GAAS,GAAGC,yDAA6B,EAAE,CAAA;EACnD,MAAM;AAAEC,IAAAA,SAAAA;AAAU,GAAC,GAAGC,gBAAU,CAACC,uCAAmB,CAAC,CAAA;EACrD,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGC,cAAQ,CAAqB,IAAI,CAAC,CAAA;EAC1E,MAAM,CAACC,oBAAoB,EAAEC,uBAAuB,CAAC,GAAGF,cAAQ,CAA8B,IAAI,CAAC,CAAA;EACnG,MAAM,CAAC+G,qBAAqB,EAAEC,wBAAwB,CAAC,GAAGhH,cAAQ,CAAU,KAAK,CAAC,CAAA;AAClFU,EAAAA,eAAS,CAAC,MAAM;IACd,IAAI,CAACjB,OAAO,IAAI,EAACA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,IAAAA,OAAO,CAAEkB,0BAA0B,CAAE,EAAA;AACpD,MAAA,OAAA;AACF,KAAA;IACA,MAAMV,oBAAoB,GAAGR,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEkB,0BAA0B,CAAC;AAAEsG,MAAAA,KAAK,EAAE,EAAA;AAAG,KAAC,CAAC,CAAA;IAC/E/G,uBAAuB,CAACD,oBAAoB,CAAC,CAAA;AAC7CA,IAAAA,oBAAoB,CAACW,IAAI,EAAE,CAACC,IAAI,CAAEf,YAAY,IAAK;MACjDC,eAAe,CAACD,YAAY,CAAC,CAAA;AAC/B,KAAC,CAAC,CAAA;AACJ,GAAC,EAAE,CAACL,OAAO,CAAC,CAAC,CAAA;AACb,EAAA,MAAMyH,WAAW,GAAGC,iBAAW,CAAC,MAAM;IACpC,IAAI,CAAC1H,OAAO,EAAE;MACZM,eAAe,CAAC,EAAE,CAAC,CAAA;AACnB,MAAA,OAAA;AACF,KAAA;IACA,MAAME,oBAAoB,GAAGR,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEkB,0BAA0B,CAAC;AAAEsG,MAAAA,KAAK,EAAE,EAAA;AAAG,KAAC,CAAC,CAAA;AAC/EhH,IAAAA,oBAAoB,CAACW,IAAI,EAAE,CAACC,IAAI,CAAEf,YAAY,IAAK;MACjDC,eAAe,CAACD,YAAY,CAAC,CAAA;AAC/B,KAAC,CAAC,CAAA;AACJ,GAAC,EAAE,CAACL,OAAO,CAAC,CAAC,CAAA;EACb,oBACEsB,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEQ,IAAAA,SAAS,EAAC,iDAAiD;IAC3DC,QAAQ,EAAGC,CAAC,IAAK;MACf,MAAM;AAAEC,QAAAA,OAAAA;AAAQ,OAAC,GAAG1B,oBAAoB,CAAA;AACxC,MAAA,MAAM2B,MAAM,GAAGF,CAAC,CAACE,MAA6B,CAAA;AAC9C,MAAA,MAAMC,SAAS,GACbD,MAAM,CAACE,YAAY,GAAGF,MAAM,CAACG,SAAS,KAAKH,MAAM,CAACI,YACnD,CAAA;MAED,IAAIL,OAAO,IAAIE,SAAS,EAAE;AACxB5B,QAAAA,oBAAoB,CAACW,IAAI,EAAE,CAACC,IAAI,CAAEoB,mBAAmB,IAAK;UACxDlC,eAAe,CAAC,CACd,GAAGD,YAAY,EACf,GAAGmC,mBAAmB,CACvB,CAAC,CAAA;AACJ,SAAC,CAAC,CAAA;AACJ,OAAA;AACF,KAAA;AAAE,GAAA,eAEFlB,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA,IAAA,EAEIlB,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZA,YAAY,CAAEoC,GAAG,CAAEC,CAAc,IAAK;AACpC,IAAA,MAAM1B,UAAU,GAAGhB,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEgB,UAAU,CAAC0B,CAAC,CAAChC,MAAM,CAAC,CAAA;AAChD,IAAA,oBACEY,yBAAA,CAAAC,aAAA,CAACqB,YAAY,EAAA;AACXC,MAAAA,IAAI,EAAEH,CAAE;AACRK,MAAAA,WAAW,EAAEmD,aAAc;MAC3BpD,GAAG,EAAEJ,CAAC,CAAChC,MAAO;AACdM,MAAAA,UAAU,EAAEA,UAAW;AACvBgC,MAAAA,MAAM,EAAEC,KAAA,IAAA;QAAA,IAAC;AAAEC,UAAAA,SAAAA;AAAU,SAAC,GAAAD,KAAA,CAAA;AAAA,QAAA,OACnBlC,cAAc,IAAImF,aAAa,MAAKxD,CAAC,aAADA,CAAC,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAADA,CAAC,CAAEhC,MAAM,CAE1CY,gBAAAA,yBAAA,CAAAC,aAAA,CAAC6B,yBAAW,EAAA;AACVC,UAAAA,WAAW,EAAGC,cAAc,iBAC1BhC,yBAAA,CAAAC,aAAA,CAACgC,aAAU,EAAA;AACTxB,YAAAA,SAAS,EAAC,6CAA6C;AACvDyB,YAAAA,KAAK,EAAC,MAAM;AACZC,YAAAA,MAAM,EAAC,MAAM;AACbC,YAAAA,OAAO,EAAEJ,cAAAA;AAAe,WAAA,eAExBhC,yBAAA,CAAAC,aAAA,CAACoC,kBAAI,EAAA;AACHH,YAAAA,KAAK,EAAC,MAAM;AACZC,YAAAA,MAAM,EAAC,MAAM;YACbG,IAAI,EAAEC,iBAAS,CAACC,IAAK;YACrBC,SAAS,EAAEC,kBAAU,CAACC,eAAAA;AAAgB,WAAA,CACtC,CAEJ;AACFC,UAAAA,SAAS,EAAGC,aAAa,iBACvB7C,yBAAA,CAAAC,aAAA,CAAC6C,wBAAS,EAAA;AACRjB,YAAAA,SAAS,EAAED,SAAU;AACrBiB,YAAAA,aAAa,EAAEA,aAAc;YAC7BG,QAAQ,EAAA,IAAA;AAAA,WAAA,eAERhD,yBAAA,CAAAC,aAAA,CAACgD,uBAAQ,EAAA;YACPb,OAAO,EAAEA,MAAM;AACb,cAAA,IAAI1C,UAAU,EAAE;AACdhB,gBAAAA,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEwE,eAAe,CAAC,CAAC9B,CAAC,CAAChC,MAAM,CAAC,CAAC,CAACU,IAAI,CAAC,MAAM;AAC9C+C,kBAAAA,aAAa,EAAE,CAAA;AACfsD,kBAAAA,WAAW,EAAE,CAAA;AACf,iBAAC,CAAC,CAAA;AACJ,eAAC,MAAM;AACLzH,gBAAAA,OAAO,aAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEyE,YAAY,CAAC,CAAC/B,CAAC,CAAChC,MAAM,CAAC,CAAC,CAACU,IAAI,CAAC,MAAM;AAC3C+C,kBAAAA,aAAa,EAAE,CAAA;AACfsD,kBAAAA,WAAW,EAAE,CAAA;AACf,iBAAC,CAAC,CAAA;AACJ,eAAA;aACA;AACF/C,YAAAA,QAAQ,EAAG,CACT1D,6CAAAA,EAAAA,UAAU,GAAI,qBAAqB,GAAG,sBAAuB,CAAA,CAAA;AAC9D,WAAA,EAGCA,UAAU,GACNd,SAAS,CAACyE,qDAAqD,GAC/DzE,SAAS,CAAC0E,sDAAsD,CAE7D,eACXtD,yBAAA,CAAAC,aAAA,CAACgD,uBAAQ,EAAA;YACPb,OAAO,EAAEA,MAAM;cACb,IAAIhB,CAAC,CAACmC,OAAO,EAAE;AACb7E,gBAAAA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAE8E,UAAU,CAACpC,CAAC,CAAC,CAACtB,IAAI,CAAC,MAAM;AAChC+C,kBAAAA,aAAa,EAAE,CAAA;AACfsD,kBAAAA,WAAW,EAAE,CAAA;AACf,iBAAC,CAAC,CAAA;AACJ,eAAC,MAAM;AACLzH,gBAAAA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAE+E,QAAQ,CAACrC,CAAC,CAAC,CAACtB,IAAI,CAAC,MAAM;AAC9B+C,kBAAAA,aAAa,EAAE,CAAA;AACfsD,kBAAAA,WAAW,EAAE,CAAA;AACf,iBAAC,CAAC,CAAA;AACJ,eAAA;aACA;YACF/C,QAAQ,EAAG,gDAA+ChC,CAAC,CAACmC,OAAO,GAAG,QAAQ,GAAG,MAAO,CAAA,CAAA;AAAE,WAAA,EAGxFnC,CAAC,CAACmC,OAAO,GACL3E,SAAS,CAAC8E,wCAAwC,GAClD9E,SAAS,CAAC+E,sCAAsC,CAE7C,eACX3D,yBAAA,CAAAC,aAAA,CAACgD,uBAAQ,EAAA;YACPb,OAAO,EAAEA,MAAM;AACb1D,cAAAA,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEkF,OAAO,CAACxC,CAAC,CAAC,CAACtB,IAAI,CAAC,MAAM;AAC7B+C,gBAAAA,aAAa,EAAE,CAAA;AACfsD,gBAAAA,WAAW,EAAE,CAAA;AACf,eAAC,CAAC,CAAA;aACF;AACF/C,YAAAA,QAAQ,EAAC,kDAAA;WAERxE,EAAAA,SAAS,CAACiF,qCAAqC,CACvC,CAAA;AAEb,SAAA,CACF,GAEF,IAAI,CAAA;AAAA,OAAA;KAEV,CAAA,CAAA;AAEN,GAAC,CAAC,EAGD9E,YAAY,IAAIA,YAAY,CAACsH,MAAM,KAAK,CAAC,gBAEtCrG,yBAAA,CAAAC,aAAA,CAACgF,cAAK,EAAA;AACJxE,IAAAA,SAAS,EAAC,uCAAuC;IACjD6B,IAAI,EAAE4C,wBAAe,CAACC,UAAW;IACjCC,KAAK,EAAEC,oBAAW,CAACiB,cAAAA;GAElB1H,EAAAA,SAAS,CAAC2H,iCAAiC,CACtC,GACN,IAAI,eAEZvG,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKQ,IAAAA,SAAS,EAAC,+CAAA;AAA+C,GAAA,EAE1D,CAAAvB,oBAAoB,KAApBA,IAAAA,IAAAA,oBAAoB,KAApBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,oBAAoB,CAAE0B,OAAO,kBAC3BZ,yBAAA,CAAAC,aAAA,CAACuG,oBAAM,EAAA;IACLlE,IAAI,EAAEmE,qBAAW,CAACC,SAAU;IAC5BC,IAAI,EAAEC,qBAAW,CAACC,KAAM;AACxBzE,IAAAA,OAAO,EAAEA,MAAM6D,wBAAwB,CAAC,IAAI,CAAA;AAAE,GAAA,EAE7CrH,SAAS,CAAC4B,6CAA6C,CAE3D,CAEC,EAEJwF,qBAAqB,iBACnBhG,yBAAA,CAAAC,aAAA,CAAC/B,iBAAiB,EAAA;IAChBK,QAAQ,EAAEA,MAAM;MACd0H,wBAAwB,CAAC,KAAK,CAAC,CAAA;AAC/BE,MAAAA,WAAW,EAAE,CAAA;AACf,KAAA;AAAE,GAAA,CAEL,CAEC,CACF,CAAA;AAEV;;;;;"}
1
+ {"version":3,"file":"index-5699329f.js","sources":["../../src/modules/OpenChannelSettings/components/ParticipantUI/ParticipantsModal.tsx","../../src/modules/OpenChannelSettings/components/ParticipantUI/ParticipantItem.tsx","../../src/modules/OpenChannelSettings/components/ParticipantUI/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\nimport type { Participant, User } from '@sendbird/chat';\nimport type { ParticipantListQuery } from '@sendbird/chat/openChannel';\n\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { noop } from '../../../../utils/utils';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function ParticipantsModal({\n onCancel,\n}: Props): ReactElement {\n const state = useSendbirdStateContext();\n const { channel } = useOpenChannelSettingsContext();\n const { stringSet } = useContext(LocalizationContext);\n const [participants, setParticipants] = useState<Array<User> | null>([]);\n const [participantListQuery, setParticipantListQuery] = useState<ParticipantListQuery | null>(null);\n const userId = state?.config?.userId;\n const sdk = state?.stores?.sdkStore?.sdk;\n const isOperatorView = channel?.isOperator(userId);\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({});\n setParticipantListQuery(participantListQuery);\n participantListQuery.next().then((participantList) => {\n setParticipants(participantList);\n });\n }, []);\n return (\n <div>\n <Modal\n hideFooter\n isFullScreenOnMobile\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText={stringSet.OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE}\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = participantListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n participantListQuery.next().then((fetchedParticipants) => {\n setParticipants([\n ...participants,\n ...fetchedParticipants,\n ]);\n });\n }\n }}\n >\n {\n participants.map((p: Participant) => {\n const isOperator = channel?.isOperator(p.userId);\n return (\n <UserListItem\n user={p}\n key={p.userId}\n currentUser={sdk?.currentUser?.userId}\n action={\n (userId !== p.userId && isOperatorView)\n ? ({ actionRef, parentRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if (isOperator) {\n channel?.removeOperators([p.userId]).then(() => {\n closeDropdown();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n closeDropdown();\n });\n }\n }}\n dataSbId={`open_channel_setting_participant_context_menu_${(\n isOperator) ? 'unregister_operator' : 'register_as_operator'}`\n }\n >\n {\n isOperator\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n if (p.isMuted) {\n channel?.unmuteUser(p).then(() => {\n closeDropdown();\n });\n } else {\n channel?.muteUser(p).then(() => {\n closeDropdown();\n });\n }\n }}\n dataSbId={`open_channel_setting_participant_context_menu_${p.isMuted ? 'unmute' : 'mute'}`\n }\n >\n {\n p.isMuted\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNMUTE\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n closeDropdown();\n });\n }}\n dataSbId=\"open_channel_setting_participant_context_menu_ban\"\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n }\n />\n );\n })\n }\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport type { Participant } from '@sendbird/chat';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\nimport { UserProfileContext } from '../../../../lib/UserProfileContext';\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport Accordion from '../../../../ui/Accordion';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport Avatar from '../../../../ui/Avatar/index';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport ParticipantsModal from './ParticipantsModal';\nimport UserProfile from '../../../../ui/UserProfile';\nimport ContextMenu, { MenuItems } from '../../../../ui/ContextMenu';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport MutedAvatarOverlay from '../../../../ui/Avatar/MutedAvatarOverlay';\n\nconst SHOWN_MEMBER_MAX = 10;\n\ninterface ActionProps {\n actionRef: React.RefObject<HTMLInputElement>;\n}\ninterface UserListItemProps {\n user: Participant;\n currentUser?: string;\n isOperator?: boolean;\n action?(props: ActionProps): ReactElement;\n}\n\nexport const UserListItem: React.FC<UserListItemProps> = ({\n user,\n currentUser,\n isOperator,\n action,\n}: UserListItemProps) => {\n const avatarRef = useRef(null);\n const actionRef = useRef(null);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext(UserProfileContext);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-participants-accordion__member\">\n <div className=\"sendbird-participants-accordion__member-avatar\">\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <>\n <Avatar\n className=\"sendbird-participants-accordion__member-avatar__avatar\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n ref={avatarRef}\n src={user.profileUrl}\n width={24}\n height={24}\n />\n {user?.isMuted ? (<MutedAvatarOverlay />) : ''}\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: '0px', paddingBottom: '0px' }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user: user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n disableMessaging\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n </div>\n <Label\n className=\"sendbird-participants-accordion__member__title\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n stringSet.OPEN_CHANNEL_SETTINGS__MEMBERS__YOU\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className=\"sendbird-participants-accordion__member__title user-id\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n isOperator && (\n <Label\n className={\n `sendbird-participants-accordion__member__title\n ${user?.userId !== currentUser ? 'operator' : ''}\n ${user?.userId === currentUser ? 'self-operator' : ''}\n `\n }\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR}\n </Label>\n )\n }\n {\n action && (\n <div\n className=\"sendbird-participants-accordion__member__action\"\n ref={actionRef}\n >\n {action({ actionRef })}\n </div>\n )\n }\n </div>\n );\n};\n\nexport interface ParticipantsAccordionProps {\n maxMembers?: number;\n}\n\nexport default function ParticipantsAccordion(props: ParticipantsAccordionProps): ReactElement {\n const maxMembers = props?.maxMembers || SHOWN_MEMBER_MAX;\n const { channel } = useOpenChannelSettingsContext();\n const globalState = useSendbirdStateContext();\n const currentUser = globalState?.config?.userId;\n const [participants, setParticipants] = useState([]);\n const [showMoreModal, setShowMoreModal] = useState(false);\n const { stringSet } = useContext(LocalizationContext);\n\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({});\n participantListQuery.next().then((participantList) => {\n setParticipants(participantList);\n });\n }, [channel]);\n\n return (\n <Accordion\n className=\"sendbird-participants-accordion\"\n id=\"participants\"\n renderTitle={() => (\n <>\n <Icon\n type={IconTypes.MEMBERS}\n fillColor={IconColors.PRIMARY}\n width={24}\n height={24}\n className=\"sendbird-openchannel-settings__accordion-icon\"\n />\n <Label\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__PARTICIPANTS_ACCORDION_TITLE}\n </Label>\n </>\n )}\n renderContent={() => (\n <div className=\"\">\n <div className=\"sendbird-participants-accordion__list\">\n {\n participants.slice(0, maxMembers).map((p) => (\n <UserListItem\n user={p}\n currentUser={currentUser}\n key={p.userId}\n />\n ))\n }\n {(participants && participants.length === 0)\n ? (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__EMPTY_LIST}\n </Label>\n ) : ''\n }\n </div>\n {\n participants.length >= maxMembers && (\n <div className=\"sendbird-participants-accordion__footer\">\n <Button\n className=\"sendbird-participants-accordion__footer__all-participants\"\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowMoreModal(true)}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__SEE_ALL}\n </Button>\n {\n showMoreModal && (\n <ParticipantsModal\n onCancel={() => {\n setShowMoreModal(false);\n }}\n />\n )\n }\n </div>\n )\n }\n </div>\n )}\n />\n );\n}\n","import React, {\n ReactElement,\n useContext,\n useState,\n useEffect,\n useCallback,\n} from 'react';\nimport type { Participant, User } from '@sendbird/chat';\nimport type { ParticipantListQuery } from '@sendbird/chat/openChannel';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\n\nimport { UserListItem } from './ParticipantItem';\nimport ParticipantsModal from './ParticipantsModal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useOpenChannelSettingsContext } from '../../context/OpenChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface ParticipantListProps {\n isOperatorView?: boolean;\n}\n\nexport default function ParticipantList({\n isOperatorView = false,\n}: ParticipantListProps): ReactElement {\n const globalState = useSendbirdStateContext();\n const currentUserId = globalState?.config?.userId;\n const { channel } = useOpenChannelSettingsContext();\n const { stringSet } = useContext(LocalizationContext);\n const [participants, setParticipants] = useState<Array<User> | null>(null);\n const [participantListQuery, setParticipantListQuery] = useState<ParticipantListQuery | null>(null);\n const [showParticipantsModal, setShowParticipantsModal] = useState<boolean>(false);\n useEffect(() => {\n if (!channel || !channel?.createParticipantListQuery) {\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({ limit: 10 });\n setParticipantListQuery(participantListQuery);\n participantListQuery.next().then((participants) => {\n setParticipants(participants);\n });\n }, [channel]);\n const refreshList = useCallback(() => {\n if (!channel) {\n setParticipants([]);\n return;\n }\n const participantListQuery = channel?.createParticipantListQuery({ limit: 10 });\n participantListQuery.next().then((participants) => {\n setParticipants(participants);\n });\n }, [channel]);\n return (\n <div\n className=\"sendbird-openchannel-settings__participant-list\"\n onScroll={(e) => {\n const { hasNext } = participantListQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n participantListQuery.next().then((fetchedParticipants) => {\n setParticipants([\n ...participants,\n ...fetchedParticipants,\n ]);\n });\n }\n }}\n >\n <div>\n {\n participants?.map((p: Participant) => {\n const isOperator = channel?.isOperator(p.userId);\n return (\n <UserListItem\n user={p}\n currentUser={currentUserId}\n key={p.userId}\n isOperator={isOperator}\n action={({ actionRef }) => (\n (isOperatorView && currentUserId !== p?.userId)\n ? (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-openchannel-participant-list__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 if (isOperator) {\n channel?.removeOperators([p.userId]).then(() => {\n closeDropdown();\n refreshList();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n closeDropdown();\n refreshList();\n });\n }\n }}\n dataSbId={`open_channel_setting_partitipant_conext_menu_${(\n isOperator) ? 'unregister_operator' : 'register_as_operator'}`\n }\n >\n {\n isOperator\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n if (p.isMuted) {\n channel?.unmuteUser(p).then(() => {\n closeDropdown();\n refreshList();\n });\n } else {\n channel?.muteUser(p).then(() => {\n closeDropdown();\n refreshList();\n });\n }\n }}\n dataSbId={`open_channel_setting_partitipant_conext_menu_${p.isMuted ? 'unmute' : 'mute'}`}\n >\n {\n p.isMuted\n ? stringSet.OPEN_CHANNEL_SETTING__MODERATION__UNMUTE\n : stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE\n }\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n closeDropdown();\n refreshList();\n });\n }}\n dataSbId=\"open_channel_setting_partitipant_conext_menu_ban\"\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__BAN}\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n )}\n />\n );\n })\n }\n {\n (participants && participants.length === 0)\n ? (\n <Label\n className=\"sendbird-channel-settings__empty-list\"\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__EMPTY_LIST}\n </Label>\n ) : null\n }\n <div className=\"sendbird-openchannel-participant-list__footer\">\n {\n participantListQuery?.hasNext && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowParticipantsModal(true)}\n >\n {stringSet.OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE}\n </Button>\n )\n }\n </div>\n {\n showParticipantsModal && (\n <ParticipantsModal\n onCancel={() => {\n setShowParticipantsModal(false);\n refreshList();\n }}\n />\n )\n }\n </div>\n </div>\n );\n}\n"],"names":["ParticipantsModal","_ref","_state$config","_state$stores","_state$stores$sdkStor","onCancel","state","useSendbirdStateContext","channel","useOpenChannelSettingsContext","stringSet","useContext","LocalizationContext","participants","setParticipants","useState","participantListQuery","setParticipantListQuery","userId","config","sdk","stores","sdkStore","isOperatorView","isOperator","useEffect","createParticipantListQuery","next","then","participantList","React","createElement","Modal","hideFooter","isFullScreenOnMobile","onSubmit","noop","titleText","OPEN_CHANNEL_SETTINGS__ALL_PARTICIPANTS_TITLE","className","onScroll","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","fetchedParticipants","map","p","_sdk$currentUser","UserListItem","user","key","currentUser","action","_ref2","actionRef","parentRef","ContextMenu","menuTrigger","toggleDropdown","IconButton","width","height","onClick","Icon","type","IconTypes","MORE","fillColor","IconColors","CONTENT_INVERSE","menuItems","closeDropdown","MenuItems","parentContainRef","openLeft","MenuItem","removeOperators","addOperators","dataSbId","OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR","isMuted","unmuteUser","muteUser","OPEN_CHANNEL_SETTING__MODERATION__UNMUTE","OPEN_CHANNEL_SETTING__MODERATION__MUTE","banUser","OPEN_CHANNEL_SETTING__MODERATION__BAN","avatarRef","useRef","disableUserProfile","renderUserProfile","UserProfileContext","Fragment","Avatar","ref","src","profileUrl","MutedAvatarOverlay","style","paddingTop","paddingBottom","currentUserId","close","UserProfile","disableMessaging","onSuccess","Label","LabelTypography","SUBTITLE_2","color","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","OPEN_CHANNEL_SETTINGS__MEMBERS__YOU","CAPTION_3","ONBACKGROUND_2","OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR","ParticipantList","_globalState$config","globalState","showParticipantsModal","setShowParticipantsModal","limit","refreshList","useCallback","length","ONBACKGROUND_3","OPEN_CHANNEL_SETTINGS__EMPTY_LIST","Button","ButtonTypes","SECONDARY","size","ButtonSizes","SMALL"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var index$1 = require('./index-092b22dd.js');
4
- var index = require('./index-6cb3365f.js');
3
+ var index$1 = require('./index-76acbd2d.js');
4
+ var index = require('./index-8522d0c2.js');
5
5
 
6
6
  /**
7
7
  * @name isToday
@@ -175,4 +175,4 @@ function isYesterday(dirtyDate) {
175
175
  exports.isThisYear = isThisYear;
176
176
  exports.isToday = isToday;
177
177
  exports.isYesterday = isYesterday;
178
- //# sourceMappingURL=index-1325e266.js.map
178
+ //# sourceMappingURL=index-66369e8b.js.map