@sendbird/uikit-react 3.4.6-rc.1 → 3.4.6

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 (494) hide show
  1. package/App.js +46 -46
  2. package/Channel/components/ChannelHeader.js +19 -19
  3. package/Channel/components/ChannelUI.js +39 -39
  4. package/Channel/components/FileViewer.js +15 -15
  5. package/Channel/components/FrozenNotification.js +4 -4
  6. package/Channel/components/Message.js +34 -34
  7. package/Channel/components/MessageInput.js +27 -27
  8. package/Channel/components/MessageList.js +35 -35
  9. package/Channel/components/RemoveMessageModal.js +17 -17
  10. package/Channel/components/SuggestedMentionList.js +17 -17
  11. package/Channel/components/TypingIndicator.js +15 -15
  12. package/Channel/components/UnreadCount.js +4 -4
  13. package/Channel/context.js +14 -14
  14. package/Channel.js +39 -39
  15. package/ChannelList/components/AddChannel.js +15 -15
  16. package/ChannelList/components/ChannelListHeader.js +6 -6
  17. package/ChannelList/components/ChannelListUI.js +30 -30
  18. package/ChannelList/components/ChannelPreview.js +26 -26
  19. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  20. package/ChannelList/context.js +8 -8
  21. package/ChannelList.js +30 -30
  22. package/{ChannelListProvider-32bd4597.js → ChannelListProvider-a2f2ee4a.js} +8 -8
  23. package/{ChannelListProvider-32bd4597.js.map → ChannelListProvider-a2f2ee4a.js.map} +1 -1
  24. package/{ChannelProvider-4e33aa60.js → ChannelProvider-bb459e82.js} +10 -10
  25. package/{ChannelProvider-4e33aa60.js.map → ChannelProvider-bb459e82.js.map} +1 -1
  26. package/ChannelSettings/components/ChannelProfile.js +11 -11
  27. package/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  28. package/ChannelSettings/components/EditDetailsModal.js +11 -11
  29. package/ChannelSettings/components/LeaveChannel.js +11 -11
  30. package/ChannelSettings/components/ModerationPanel.js +14 -14
  31. package/ChannelSettings/components/UserListItem.js +10 -10
  32. package/ChannelSettings/components/UserPanel.js +13 -13
  33. package/ChannelSettings/context.js +3 -3
  34. package/ChannelSettings.js +17 -17
  35. package/CreateChannel/components/CreateChannelUI.js +13 -13
  36. package/CreateChannel/components/InviteUsers.js +13 -13
  37. package/CreateChannel/components/SelectChannelType.js +10 -10
  38. package/CreateChannel/context.js +4 -4
  39. package/CreateChannel.js +13 -13
  40. package/{CreateChannelProvider-96aa4ed0.js → CreateChannelProvider-a935d833.js} +1 -1
  41. package/{CreateChannelProvider-96aa4ed0.js.map → CreateChannelProvider-a935d833.js.map} +1 -1
  42. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  43. package/CreateOpenChannel/context.js +1 -1
  44. package/CreateOpenChannel.js +9 -9
  45. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  46. package/EditUserProfile.js +12 -12
  47. package/{LocalizationContext-62966630.js → LocalizationContext-3d8c0b24.js} +3 -3
  48. package/{LocalizationContext-62966630.js.map → LocalizationContext-3d8c0b24.js.map} +1 -1
  49. package/{MediaQueryContext-17146a37.js → MediaQueryContext-1348e37b.js} +1 -1
  50. package/{MediaQueryContext-17146a37.js.map → MediaQueryContext-1348e37b.js.map} +1 -1
  51. package/{MemberList-ef0a35ad.js → MemberList-d8124d7e.js} +5 -5
  52. package/{MemberList-ef0a35ad.js.map → MemberList-d8124d7e.js.map} +1 -1
  53. package/MessageSearch/components/MessageSearchUI.js +11 -11
  54. package/MessageSearch/context.js +1 -1
  55. package/MessageSearch.js +11 -11
  56. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  57. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  58. package/OpenChannel/components/OpenChannelInput.js +19 -19
  59. package/OpenChannel/components/OpenChannelMessage.js +28 -28
  60. package/OpenChannel/components/OpenChannelMessageList.js +32 -32
  61. package/OpenChannel/components/OpenChannelUI.js +32 -32
  62. package/OpenChannel/context.js +8 -8
  63. package/OpenChannel.js +32 -32
  64. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  65. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  66. package/OpenChannelList/context.js +3 -3
  67. package/OpenChannelList.js +13 -13
  68. package/{OpenChannelListProvider-8be6450e.js → OpenChannelListProvider-f9ec8658.js} +3 -3
  69. package/{OpenChannelListProvider-8be6450e.js.map → OpenChannelListProvider-f9ec8658.js.map} +1 -1
  70. package/{OpenChannelProvider-98df8b74.js → OpenChannelProvider-36d0dd05.js} +7 -7
  71. package/{OpenChannelProvider-98df8b74.js.map → OpenChannelProvider-36d0dd05.js.map} +1 -1
  72. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  73. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  74. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  75. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  76. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  77. package/OpenChannelSettings/context.js +3 -3
  78. package/OpenChannelSettings.js +17 -17
  79. package/{RemoveMessageModal-0efd9201.js → RemoveMessageModal-7852c71d.js} +3 -3
  80. package/{RemoveMessageModal-0efd9201.js.map → RemoveMessageModal-7852c71d.js.map} +1 -1
  81. package/SendbirdProvider.js +12 -12
  82. package/SendbirdProvider.js.map +1 -1
  83. package/Thread/components/ParentMessageInfo.js +30 -30
  84. package/Thread/components/ParentMessageInfoItem.js +18 -18
  85. package/Thread/components/ThreadHeader.js +6 -6
  86. package/Thread/components/ThreadList.js +33 -33
  87. package/Thread/components/ThreadListItem.js +33 -33
  88. package/Thread/components/ThreadMessageInput.js +28 -28
  89. package/Thread/components/ThreadUI.js +37 -37
  90. package/Thread/context.js +8 -8
  91. package/Thread.js +37 -37
  92. package/{ThreadProvider-1798360b.js → ThreadProvider-43c384e9.js} +7 -7
  93. package/{ThreadProvider-1798360b.js.map → ThreadProvider-43c384e9.js.map} +1 -1
  94. package/{UserProfileContext-7083bd82.js → UserProfileContext-41938ddc.js} +1 -1
  95. package/{UserProfileContext-7083bd82.js.map → UserProfileContext-41938ddc.js.map} +1 -1
  96. package/{VoiceMessageInputWrapper-4479a1bd.js → VoiceMessageInputWrapper-0cd90994.js} +7 -7
  97. package/{VoiceMessageInputWrapper-4479a1bd.js.map → VoiceMessageInputWrapper-0cd90994.js.map} +1 -1
  98. package/VoicePlayer/context.js +3 -3
  99. package/VoicePlayer/useVoicePlayer.js +3 -3
  100. package/VoiceRecorder/context.js +3 -3
  101. package/VoiceRecorder/useVoiceRecorder.js +2 -2
  102. package/{WebAudioUtils-f57301b1.js → WebAudioUtils-682aa6c0.js} +1 -1
  103. package/{WebAudioUtils-f57301b1.js.map → WebAudioUtils-682aa6c0.js.map} +1 -1
  104. package/{_rollupPluginBabelHelpers-48b56150.js → _rollupPluginBabelHelpers-79f64283.js} +1 -1
  105. package/_rollupPluginBabelHelpers-79f64283.js.map +1 -0
  106. package/{actionTypes-9badb1b4.js → actionTypes-52102db0.js} +1 -1
  107. package/{actionTypes-9badb1b4.js.map → actionTypes-52102db0.js.map} +1 -1
  108. package/cjs/App.js +46 -46
  109. package/cjs/Channel/components/ChannelHeader.js +19 -19
  110. package/cjs/Channel/components/ChannelUI.js +39 -39
  111. package/cjs/Channel/components/FileViewer.js +15 -15
  112. package/cjs/Channel/components/FrozenNotification.js +4 -4
  113. package/cjs/Channel/components/Message.js +34 -34
  114. package/cjs/Channel/components/MessageInput.js +27 -27
  115. package/cjs/Channel/components/MessageList.js +35 -35
  116. package/cjs/Channel/components/RemoveMessageModal.js +17 -17
  117. package/cjs/Channel/components/SuggestedMentionList.js +17 -17
  118. package/cjs/Channel/components/TypingIndicator.js +15 -15
  119. package/cjs/Channel/components/UnreadCount.js +4 -4
  120. package/cjs/Channel/context.js +14 -14
  121. package/cjs/Channel.js +39 -39
  122. package/cjs/ChannelList/components/AddChannel.js +15 -15
  123. package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
  124. package/cjs/ChannelList/components/ChannelListUI.js +30 -30
  125. package/cjs/ChannelList/components/ChannelPreview.js +26 -26
  126. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  127. package/cjs/ChannelList/context.js +8 -8
  128. package/cjs/ChannelList.js +30 -30
  129. package/cjs/{ChannelListProvider-c90e6d9b.js → ChannelListProvider-b0a363e0.js} +8 -8
  130. package/cjs/{ChannelListProvider-c90e6d9b.js.map → ChannelListProvider-b0a363e0.js.map} +1 -1
  131. package/cjs/{ChannelProvider-6da44044.js → ChannelProvider-cf5867c2.js} +10 -10
  132. package/cjs/{ChannelProvider-6da44044.js.map → ChannelProvider-cf5867c2.js.map} +1 -1
  133. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  134. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  135. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  136. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  137. package/cjs/ChannelSettings/components/ModerationPanel.js +14 -14
  138. package/cjs/ChannelSettings/components/UserListItem.js +10 -10
  139. package/cjs/ChannelSettings/components/UserPanel.js +13 -13
  140. package/cjs/ChannelSettings/context.js +3 -3
  141. package/cjs/ChannelSettings.js +17 -17
  142. package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
  143. package/cjs/CreateChannel/components/InviteUsers.js +13 -13
  144. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  145. package/cjs/CreateChannel/context.js +4 -4
  146. package/cjs/CreateChannel.js +13 -13
  147. package/cjs/{CreateChannelProvider-ff9bb9da.js → CreateChannelProvider-f82d812f.js} +1 -1
  148. package/cjs/{CreateChannelProvider-ff9bb9da.js.map → CreateChannelProvider-f82d812f.js.map} +1 -1
  149. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  150. package/cjs/CreateOpenChannel/context.js +1 -1
  151. package/cjs/CreateOpenChannel.js +9 -9
  152. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  153. package/cjs/EditUserProfile.js +12 -12
  154. package/cjs/{LocalizationContext-4c1a8e44.js → LocalizationContext-498cb747.js} +3 -3
  155. package/cjs/{LocalizationContext-4c1a8e44.js.map → LocalizationContext-498cb747.js.map} +1 -1
  156. package/cjs/{MediaQueryContext-9f3958fe.js → MediaQueryContext-b9c2ec1f.js} +1 -1
  157. package/cjs/{MediaQueryContext-9f3958fe.js.map → MediaQueryContext-b9c2ec1f.js.map} +1 -1
  158. package/cjs/{MemberList-1ad4eda5.js → MemberList-13ba769f.js} +5 -5
  159. package/cjs/{MemberList-1ad4eda5.js.map → MemberList-13ba769f.js.map} +1 -1
  160. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  161. package/cjs/MessageSearch/context.js +1 -1
  162. package/cjs/MessageSearch.js +11 -11
  163. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  164. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  165. package/cjs/OpenChannel/components/OpenChannelInput.js +19 -19
  166. package/cjs/OpenChannel/components/OpenChannelMessage.js +28 -28
  167. package/cjs/OpenChannel/components/OpenChannelMessageList.js +32 -32
  168. package/cjs/OpenChannel/components/OpenChannelUI.js +32 -32
  169. package/cjs/OpenChannel/context.js +8 -8
  170. package/cjs/OpenChannel.js +32 -32
  171. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  172. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  173. package/cjs/OpenChannelList/context.js +3 -3
  174. package/cjs/OpenChannelList.js +13 -13
  175. package/cjs/{OpenChannelListProvider-f7387ce4.js → OpenChannelListProvider-02d6d44b.js} +3 -3
  176. package/cjs/{OpenChannelListProvider-f7387ce4.js.map → OpenChannelListProvider-02d6d44b.js.map} +1 -1
  177. package/cjs/{OpenChannelProvider-0bbac562.js → OpenChannelProvider-850b9cd0.js} +7 -7
  178. package/cjs/{OpenChannelProvider-0bbac562.js.map → OpenChannelProvider-850b9cd0.js.map} +1 -1
  179. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  180. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  181. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  182. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  183. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  184. package/cjs/OpenChannelSettings/context.js +3 -3
  185. package/cjs/OpenChannelSettings.js +17 -17
  186. package/cjs/{RemoveMessageModal-63e870f4.js → RemoveMessageModal-457b1535.js} +3 -3
  187. package/cjs/{RemoveMessageModal-63e870f4.js.map → RemoveMessageModal-457b1535.js.map} +1 -1
  188. package/cjs/SendbirdProvider.js +12 -12
  189. package/cjs/SendbirdProvider.js.map +1 -1
  190. package/cjs/Thread/components/ParentMessageInfo.js +30 -30
  191. package/cjs/Thread/components/ParentMessageInfoItem.js +18 -18
  192. package/cjs/Thread/components/ThreadHeader.js +6 -6
  193. package/cjs/Thread/components/ThreadList.js +33 -33
  194. package/cjs/Thread/components/ThreadListItem.js +33 -33
  195. package/cjs/Thread/components/ThreadMessageInput.js +28 -28
  196. package/cjs/Thread/components/ThreadUI.js +37 -37
  197. package/cjs/Thread/context.js +8 -8
  198. package/cjs/Thread.js +37 -37
  199. package/cjs/{ThreadProvider-ca9e5e4f.js → ThreadProvider-37f2f0a3.js} +7 -7
  200. package/cjs/{ThreadProvider-ca9e5e4f.js.map → ThreadProvider-37f2f0a3.js.map} +1 -1
  201. package/cjs/{UserProfileContext-34f6be33.js → UserProfileContext-617420c9.js} +1 -1
  202. package/cjs/{UserProfileContext-34f6be33.js.map → UserProfileContext-617420c9.js.map} +1 -1
  203. package/cjs/{VoiceMessageInputWrapper-770a185c.js → VoiceMessageInputWrapper-43c29f38.js} +7 -7
  204. package/cjs/{VoiceMessageInputWrapper-770a185c.js.map → VoiceMessageInputWrapper-43c29f38.js.map} +1 -1
  205. package/cjs/VoicePlayer/context.js +3 -3
  206. package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
  207. package/cjs/VoiceRecorder/context.js +3 -3
  208. package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
  209. package/cjs/{WebAudioUtils-70bcccc3.js → WebAudioUtils-2b845cd2.js} +1 -1
  210. package/cjs/{WebAudioUtils-70bcccc3.js.map → WebAudioUtils-2b845cd2.js.map} +1 -1
  211. package/cjs/{_rollupPluginBabelHelpers-8164e35a.js → _rollupPluginBabelHelpers-c2313dcd.js} +1 -1
  212. package/cjs/_rollupPluginBabelHelpers-c2313dcd.js.map +1 -0
  213. package/cjs/{actionTypes-4a2939b3.js → actionTypes-0e0d2d59.js} +1 -1
  214. package/cjs/{actionTypes-4a2939b3.js.map → actionTypes-0e0d2d59.js.map} +1 -1
  215. package/cjs/{color-f43f059a.js → color-7f7508e6.js} +1 -1
  216. package/cjs/{color-f43f059a.js.map → color-7f7508e6.js.map} +1 -1
  217. package/cjs/{compareIds-e5f7db38.js → compareIds-27f7912f.js} +1 -1
  218. package/cjs/{compareIds-e5f7db38.js.map → compareIds-27f7912f.js.map} +1 -1
  219. package/cjs/{const-611ac2dd.js → const-61fc7be6.js} +1 -1
  220. package/cjs/{const-611ac2dd.js.map → const-61fc7be6.js.map} +1 -1
  221. package/cjs/{const-e7388711.js → const-e22c9d25.js} +1 -1
  222. package/cjs/{const-e7388711.js.map → const-e22c9d25.js.map} +1 -1
  223. package/cjs/{consts-f8bd3346.js → consts-3764bd68.js} +1 -1
  224. package/cjs/{consts-f8bd3346.js.map → consts-3764bd68.js.map} +1 -1
  225. package/cjs/{consts-e0f44b83.js → consts-46fa3a3a.js} +1 -1
  226. package/cjs/{consts-e0f44b83.js.map → consts-46fa3a3a.js.map} +1 -1
  227. package/cjs/{consts-82dce75d.js → consts-8605e767.js} +1 -1
  228. package/cjs/{consts-82dce75d.js.map → consts-8605e767.js.map} +1 -1
  229. package/cjs/{consts-d9ecf2d7.js → consts-ad849467.js} +1 -1
  230. package/cjs/{consts-d9ecf2d7.js.map → consts-ad849467.js.map} +1 -1
  231. package/cjs/{context-32080e3d.js → context-a4af6955.js} +2 -2
  232. package/cjs/{context-32080e3d.js.map → context-a4af6955.js.map} +1 -1
  233. package/cjs/dist/index.css +55 -55
  234. package/cjs/dist/index.css.map +1 -1
  235. package/cjs/{index-0f5a2c3b.js → index-0b9ad941.js} +7 -7
  236. package/cjs/{index-0f5a2c3b.js.map → index-0b9ad941.js.map} +1 -1
  237. package/cjs/{index-cc5b51fb.js → index-0dff9958.js} +7 -7
  238. package/cjs/{index-cc5b51fb.js.map → index-0dff9958.js.map} +1 -1
  239. package/cjs/{index-946fe9b8.js → index-2ac1f908.js} +2 -2
  240. package/cjs/{index-946fe9b8.js.map → index-2ac1f908.js.map} +1 -1
  241. package/cjs/{index-bddcf750.js → index-3626dfeb.js} +2 -2
  242. package/cjs/{index-bddcf750.js.map → index-3626dfeb.js.map} +1 -1
  243. package/cjs/{index-584a87f3.js → index-67f813a3.js} +1 -1
  244. package/cjs/{index-584a87f3.js.map → index-67f813a3.js.map} +1 -1
  245. package/cjs/{index-450c5c4a.js → index-71173fef.js} +2 -2
  246. package/cjs/{index-450c5c4a.js.map → index-71173fef.js.map} +1 -1
  247. package/cjs/{index-1837f392.js → index-8b5a13fe.js} +5 -5
  248. package/cjs/{index-1837f392.js.map → index-8b5a13fe.js.map} +1 -1
  249. package/cjs/{index-ecac7544.js → index-8b6bb1ee.js} +1 -1
  250. package/cjs/{index-ecac7544.js.map → index-8b6bb1ee.js.map} +1 -1
  251. package/cjs/{index-58bddb18.js → index-983f9d7a.js} +4 -4
  252. package/cjs/{index-58bddb18.js.map → index-983f9d7a.js.map} +1 -1
  253. package/cjs/{index-d217a491.js → index-a415176f.js} +2 -2
  254. package/cjs/{index-d217a491.js.map → index-a415176f.js.map} +1 -1
  255. package/cjs/{index-6253d289.js → index-a4887600.js} +3 -3
  256. package/cjs/{index-6253d289.js.map → index-a4887600.js.map} +1 -1
  257. package/cjs/{index-fc3f351f.js → index-ac1b0ab9.js} +2 -2
  258. package/cjs/{index-fc3f351f.js.map → index-ac1b0ab9.js.map} +1 -1
  259. package/cjs/{index-6295003c.js → index-b8a20afd.js} +2 -2
  260. package/cjs/{index-6295003c.js.map → index-b8a20afd.js.map} +1 -1
  261. package/cjs/{index-911b358f.js → index-cd680348.js} +3 -3
  262. package/cjs/{index-911b358f.js.map → index-cd680348.js.map} +1 -1
  263. package/cjs/{index-f2afea13.js → index-ddcf90b1.js} +4 -4
  264. package/cjs/{index-f2afea13.js.map → index-ddcf90b1.js.map} +1 -1
  265. package/cjs/{index-a9a828c4.js → index-ead97d9a.js} +4 -4
  266. package/cjs/{index-a9a828c4.js.map → index-ead97d9a.js.map} +1 -1
  267. package/cjs/index.js +50 -50
  268. package/cjs/{index.module-d62bc038.js → index.module-cf39e3b9.js} +1 -1
  269. package/cjs/{index.module-d62bc038.js.map → index.module-cf39e3b9.js.map} +1 -1
  270. package/cjs/sendbirdSelectors.js +2 -2
  271. package/cjs/{stringSet-9717efda.js → stringSet-061fe0c1.js} +1 -1
  272. package/cjs/{stringSet-9717efda.js.map → stringSet-061fe0c1.js.map} +1 -1
  273. package/cjs/{tokenize-b42df26a.js → tokenize-7e34a56e.js} +3 -3
  274. package/cjs/{tokenize-b42df26a.js.map → tokenize-7e34a56e.js.map} +1 -1
  275. package/cjs/{topics-11bf2ffa.js → topics-c8adbede.js} +1 -1
  276. package/cjs/{topics-11bf2ffa.js.map → topics-c8adbede.js.map} +1 -1
  277. package/cjs/{tslib.es6-b412d11d.js → tslib.es6-8f4b0cfe.js} +1 -1
  278. package/cjs/{tslib.es6-b412d11d.js.map → tslib.es6-8f4b0cfe.js.map} +1 -1
  279. package/cjs/{types-997d2578.js → types-beecfca4.js} +1 -1
  280. package/cjs/{types-997d2578.js.map → types-beecfca4.js.map} +1 -1
  281. package/cjs/ui/Accordion.js +3 -3
  282. package/cjs/ui/AccordionGroup.js +2 -2
  283. package/cjs/ui/AdminMessage.js +3 -3
  284. package/cjs/ui/Avatar.js +2 -2
  285. package/cjs/ui/Badge.js +5 -5
  286. package/cjs/ui/BottomSheet.js +1 -1
  287. package/cjs/ui/Button.js +3 -3
  288. package/cjs/ui/ChannelAvatar.js +3 -3
  289. package/cjs/ui/ConnectionStatus.js +4 -4
  290. package/cjs/ui/ContextMenu.js +5 -5
  291. package/cjs/ui/DateSeparator.js +4 -4
  292. package/cjs/ui/EmojiReactions.js +7 -7
  293. package/cjs/ui/FileMessageItemBody.js +6 -6
  294. package/cjs/ui/FileViewer.js +8 -8
  295. package/cjs/ui/IconButton.js +1 -1
  296. package/cjs/ui/ImageRenderer.js +1 -1
  297. package/cjs/ui/Input.js +2 -2
  298. package/cjs/ui/Label.js +2 -2
  299. package/cjs/ui/LinkLabel.js +2 -2
  300. package/cjs/ui/Loader.js +1 -1
  301. package/cjs/ui/MentionLabel.js +10 -10
  302. package/cjs/ui/MentionUserLabel.js +1 -1
  303. package/cjs/ui/MessageContent.js +28 -28
  304. package/cjs/ui/MessageInput.js +13 -13
  305. package/cjs/ui/MessageItemMenu.js +8 -8
  306. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  307. package/cjs/ui/MessageSearchFileItem.js +10 -10
  308. package/cjs/ui/MessageSearchItem.js +9 -9
  309. package/cjs/ui/MessageStatus.js +10 -10
  310. package/cjs/ui/Modal.js +7 -7
  311. package/cjs/ui/OGMessageItemBody.js +14 -14
  312. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  313. package/cjs/ui/OpenChannelAvatar.js +6 -6
  314. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  315. package/cjs/ui/OpenchannelFileMessage.js +16 -16
  316. package/cjs/ui/OpenchannelOGMessage.js +19 -19
  317. package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
  318. package/cjs/ui/OpenchannelUserMessage.js +16 -16
  319. package/cjs/ui/PlaceHolder.js +6 -6
  320. package/cjs/ui/PlaybackTime.js +2 -2
  321. package/cjs/ui/QuoteMessage.js +6 -6
  322. package/cjs/ui/QuoteMessageInput.js +6 -6
  323. package/cjs/ui/ReactionBadge.js +3 -3
  324. package/cjs/ui/ReactionButton.js +1 -1
  325. package/cjs/ui/SortByRow.js +2 -2
  326. package/cjs/ui/TextButton.js +2 -2
  327. package/cjs/ui/TextMessageItemBody.js +14 -14
  328. package/cjs/ui/ThreadReplies.js +6 -6
  329. package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
  330. package/cjs/ui/Tooltip.js +3 -3
  331. package/cjs/ui/TooltipWrapper.js +1 -1
  332. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  333. package/cjs/ui/UserListItem.js +10 -10
  334. package/cjs/ui/UserProfile.js +9 -9
  335. package/cjs/ui/VoiceMessageItemBody.js +5 -5
  336. package/cjs/ui/VoiceMessgeInput.js +8 -8
  337. package/cjs/ui/Word.js +10 -10
  338. package/cjs/{useLongPress-0b0040bb.js → useLongPress-f3ee01a0.js} +3 -3
  339. package/cjs/{useLongPress-0b0040bb.js.map → useLongPress-f3ee01a0.js.map} +1 -1
  340. package/cjs/useSendbirdStateContext.js +1 -1
  341. package/cjs/utils/message/isVoiceMessage.js +2 -2
  342. package/cjs/{utils-d40c9909.js → utils-1038446c.js} +1 -1
  343. package/cjs/{utils-d40c9909.js.map → utils-1038446c.js.map} +1 -1
  344. package/cjs/{utils-301360ec.js → utils-3f3c2287.js} +2 -2
  345. package/cjs/{utils-301360ec.js.map → utils-3f3c2287.js.map} +1 -1
  346. package/cjs/{utils-43d14023.js → utils-6a97ff3a.js} +1 -1
  347. package/cjs/{utils-43d14023.js.map → utils-6a97ff3a.js.map} +1 -1
  348. package/cjs/{utils-aeadc058.js → utils-98ac09d1.js} +1 -1
  349. package/cjs/{utils-aeadc058.js.map → utils-98ac09d1.js.map} +1 -1
  350. package/cjs/{uuid-d0a9c040.js → uuid-1ffa3b79.js} +1 -1
  351. package/cjs/{uuid-d0a9c040.js.map → uuid-1ffa3b79.js.map} +1 -1
  352. package/cjs/withSendbird.js +1 -1
  353. package/{color-4ecee870.js → color-73049158.js} +1 -1
  354. package/{color-4ecee870.js.map → color-73049158.js.map} +1 -1
  355. package/{compareIds-bc4cf9bf.js → compareIds-88bffa50.js} +1 -1
  356. package/{compareIds-bc4cf9bf.js.map → compareIds-88bffa50.js.map} +1 -1
  357. package/{const-8a7444d1.js → const-2919bc87.js} +1 -1
  358. package/{const-8a7444d1.js.map → const-2919bc87.js.map} +1 -1
  359. package/{const-34b3294d.js → const-df1daff9.js} +1 -1
  360. package/{const-34b3294d.js.map → const-df1daff9.js.map} +1 -1
  361. package/{consts-7a61df9f.js → consts-0ea80430.js} +1 -1
  362. package/{consts-7a61df9f.js.map → consts-0ea80430.js.map} +1 -1
  363. package/{consts-165100af.js → consts-1861f891.js} +1 -1
  364. package/{consts-165100af.js.map → consts-1861f891.js.map} +1 -1
  365. package/{consts-96859f90.js → consts-966c9540.js} +1 -1
  366. package/{consts-96859f90.js.map → consts-966c9540.js.map} +1 -1
  367. package/{consts-81c7d9ed.js → consts-f4362414.js} +1 -1
  368. package/{consts-81c7d9ed.js.map → consts-f4362414.js.map} +1 -1
  369. package/{context-c54bc9b4.js → context-9baa8d25.js} +2 -2
  370. package/{context-c54bc9b4.js.map → context-9baa8d25.js.map} +1 -1
  371. package/dist/index.css +55 -55
  372. package/dist/index.css.map +1 -1
  373. package/{index-df6b2fc4.js → index-179bed8d.js} +2 -2
  374. package/{index-df6b2fc4.js.map → index-179bed8d.js.map} +1 -1
  375. package/{index-77a24725.js → index-61a102d7.js} +7 -7
  376. package/{index-77a24725.js.map → index-61a102d7.js.map} +1 -1
  377. package/{index-af95f2b0.js → index-91355132.js} +4 -4
  378. package/{index-af95f2b0.js.map → index-91355132.js.map} +1 -1
  379. package/{index-5cfaecc9.js → index-95b46112.js} +2 -2
  380. package/{index-5cfaecc9.js.map → index-95b46112.js.map} +1 -1
  381. package/{index-2ea26b17.js → index-9cead71b.js} +2 -2
  382. package/{index-2ea26b17.js.map → index-9cead71b.js.map} +1 -1
  383. package/{index-3ac8a689.js → index-a9183365.js} +4 -4
  384. package/{index-3ac8a689.js.map → index-a9183365.js.map} +1 -1
  385. package/{index-6574e8fd.js → index-aaa9b9f8.js} +1 -1
  386. package/{index-6574e8fd.js.map → index-aaa9b9f8.js.map} +1 -1
  387. package/{index-c4ff34e4.js → index-ac5ad4f9.js} +3 -3
  388. package/{index-c4ff34e4.js.map → index-ac5ad4f9.js.map} +1 -1
  389. package/{index-6f66895e.js → index-ad125f51.js} +1 -1
  390. package/{index-6f66895e.js.map → index-ad125f51.js.map} +1 -1
  391. package/{index-f5d419ec.js → index-c70af435.js} +4 -4
  392. package/{index-f5d419ec.js.map → index-c70af435.js.map} +1 -1
  393. package/{index-538fa479.js → index-cce0e324.js} +2 -2
  394. package/{index-538fa479.js.map → index-cce0e324.js.map} +1 -1
  395. package/{index-adfdd634.js → index-d37f34a3.js} +2 -2
  396. package/{index-adfdd634.js.map → index-d37f34a3.js.map} +1 -1
  397. package/{index-1db30515.js → index-e378ca4e.js} +2 -2
  398. package/{index-1db30515.js.map → index-e378ca4e.js.map} +1 -1
  399. package/{index-e2834120.js → index-f0f9692b.js} +7 -7
  400. package/{index-e2834120.js.map → index-f0f9692b.js.map} +1 -1
  401. package/{index-e5062739.js → index-fa96d1c0.js} +5 -5
  402. package/{index-e5062739.js.map → index-fa96d1c0.js.map} +1 -1
  403. package/{index-47ba6604.js → index-fd4fc9f0.js} +3 -3
  404. package/{index-47ba6604.js.map → index-fd4fc9f0.js.map} +1 -1
  405. package/index.d.ts +1 -1
  406. package/index.js +50 -50
  407. package/{index.module-a2145ffe.js → index.module-e6530c0d.js} +1 -1
  408. package/{index.module-a2145ffe.js.map → index.module-e6530c0d.js.map} +1 -1
  409. package/package.json +1 -1
  410. package/sendbirdSelectors.js +2 -2
  411. package/{stringSet-e0fd81b2.js → stringSet-9d579825.js} +1 -1
  412. package/{stringSet-e0fd81b2.js.map → stringSet-9d579825.js.map} +1 -1
  413. package/{tokenize-22d48b61.js → tokenize-bd8e35b2.js} +3 -3
  414. package/{tokenize-22d48b61.js.map → tokenize-bd8e35b2.js.map} +1 -1
  415. package/{topics-bc5fee43.js → topics-f9301447.js} +1 -1
  416. package/{topics-bc5fee43.js.map → topics-f9301447.js.map} +1 -1
  417. package/{tslib.es6-85bcd95d.js → tslib.es6-d6e50ec3.js} +1 -1
  418. package/{tslib.es6-85bcd95d.js.map → tslib.es6-d6e50ec3.js.map} +1 -1
  419. package/{types-84207ac4.js → types-d0a9adf8.js} +1 -1
  420. package/{types-84207ac4.js.map → types-d0a9adf8.js.map} +1 -1
  421. package/ui/Accordion.js +3 -3
  422. package/ui/AccordionGroup.js +2 -2
  423. package/ui/AdminMessage.js +3 -3
  424. package/ui/Avatar.js +2 -2
  425. package/ui/Badge.js +5 -5
  426. package/ui/BottomSheet.js +1 -1
  427. package/ui/Button.js +3 -3
  428. package/ui/ChannelAvatar.js +3 -3
  429. package/ui/ConnectionStatus.js +4 -4
  430. package/ui/ContextMenu.js +5 -5
  431. package/ui/DateSeparator.js +4 -4
  432. package/ui/EmojiReactions.js +7 -7
  433. package/ui/FileMessageItemBody.js +6 -6
  434. package/ui/FileViewer.js +8 -8
  435. package/ui/IconButton.js +1 -1
  436. package/ui/ImageRenderer.js +1 -1
  437. package/ui/Input.js +2 -2
  438. package/ui/Label.js +2 -2
  439. package/ui/LinkLabel.js +2 -2
  440. package/ui/Loader.js +1 -1
  441. package/ui/MentionLabel.js +10 -10
  442. package/ui/MentionUserLabel.js +1 -1
  443. package/ui/MessageContent.js +28 -28
  444. package/ui/MessageInput.js +13 -13
  445. package/ui/MessageItemMenu.js +8 -8
  446. package/ui/MessageItemReactionMenu.js +5 -5
  447. package/ui/MessageSearchFileItem.js +10 -10
  448. package/ui/MessageSearchItem.js +9 -9
  449. package/ui/MessageStatus.js +10 -10
  450. package/ui/Modal.js +7 -7
  451. package/ui/OGMessageItemBody.js +14 -14
  452. package/ui/OpenChannelAdminMessage.js +3 -3
  453. package/ui/OpenChannelAvatar.js +6 -6
  454. package/ui/OpenchannelConversationHeader.js +6 -6
  455. package/ui/OpenchannelFileMessage.js +16 -16
  456. package/ui/OpenchannelOGMessage.js +19 -19
  457. package/ui/OpenchannelThumbnailMessage.js +15 -15
  458. package/ui/OpenchannelUserMessage.js +16 -16
  459. package/ui/PlaceHolder.js +6 -6
  460. package/ui/PlaybackTime.js +2 -2
  461. package/ui/QuoteMessage.js +6 -6
  462. package/ui/QuoteMessageInput.js +6 -6
  463. package/ui/ReactionBadge.js +3 -3
  464. package/ui/ReactionButton.js +1 -1
  465. package/ui/SortByRow.js +2 -2
  466. package/ui/TextButton.js +2 -2
  467. package/ui/TextMessageItemBody.js +14 -14
  468. package/ui/ThreadReplies.js +6 -6
  469. package/ui/ThumbnailMessageItemBody.js +2 -2
  470. package/ui/Tooltip.js +3 -3
  471. package/ui/TooltipWrapper.js +1 -1
  472. package/ui/UnknownMessageItemBody.js +6 -6
  473. package/ui/UserListItem.js +10 -10
  474. package/ui/UserProfile.js +9 -9
  475. package/ui/VoiceMessageItemBody.js +5 -5
  476. package/ui/VoiceMessgeInput.js +8 -8
  477. package/ui/Word.js +10 -10
  478. package/{useLongPress-08d9369b.js → useLongPress-f119ff35.js} +3 -3
  479. package/{useLongPress-08d9369b.js.map → useLongPress-f119ff35.js.map} +1 -1
  480. package/useSendbirdStateContext.js +1 -1
  481. package/utils/message/isVoiceMessage.js +2 -2
  482. package/{utils-13ac01f0.js → utils-0c8334fa.js} +2 -2
  483. package/{utils-13ac01f0.js.map → utils-0c8334fa.js.map} +1 -1
  484. package/{utils-7dc80efd.js → utils-86d65b96.js} +1 -1
  485. package/{utils-7dc80efd.js.map → utils-86d65b96.js.map} +1 -1
  486. package/{utils-3c97842b.js → utils-e53018f1.js} +1 -1
  487. package/{utils-3c97842b.js.map → utils-e53018f1.js.map} +1 -1
  488. package/{utils-4aea6ebc.js → utils-e659e765.js} +1 -1
  489. package/{utils-4aea6ebc.js.map → utils-e659e765.js.map} +1 -1
  490. package/{uuid-39d923b9.js → uuid-86cb48e0.js} +1 -1
  491. package/{uuid-39d923b9.js.map → uuid-86cb48e0.js.map} +1 -1
  492. package/withSendbird.js +1 -1
  493. package/_rollupPluginBabelHelpers-48b56150.js.map +0 -1
  494. package/cjs/_rollupPluginBabelHelpers-8164e35a.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index-1db30515.js","sources":["../src/utils/index.ts"],"sourcesContent":["import SendbirdChat, { Emoji, EmojiCategory, EmojiContainer, User } from '@sendbird/chat';\nimport { GroupChannel, Member, SendbirdGroupChat, GroupChannelListQuery } from '@sendbird/chat/groupChannel';\nimport { AdminMessage, FileMessage, MessageListParams, Reaction, UserMessage } from '@sendbird/chat/message';\nimport { OpenChannel, SendbirdOpenChat } from '@sendbird/chat/openChannel';\n\nimport { getOutgoingMessageState, OutgoingMessageStates } from './exports/getOutgoingMessageState';\nimport { EveryMessage } from '../types';\n\n// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp', // not supported in IE\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n AUDIO: [\n 'audio/aac',\n 'audio/midi',\n 'audio/x-midi',\n 'audio/mpeg',\n 'audio/ogg',\n 'audio/opus',\n 'audio/wav',\n 'audio/webm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/mp3',\n ],\n};\n\nexport interface UIKitMessageTypes {\n ADMIN: 'ADMIN',\n TEXT: 'TEXT',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n}\nexport const UIKitMessageTypes: UIKitMessageTypes = {\n ADMIN: 'ADMIN',\n TEXT: 'TEXT',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n};\nexport interface UIKitFileTypes {\n IMAGE: 'IMAGE',\n AUDIO: 'AUDIO',\n VIDEO: 'VIDEO',\n GIF: 'GIF',\n VOICE: 'VOICE',\n OTHERS: 'OTHERS',\n}\nexport const UIKitFileTypes: UIKitFileTypes = {\n IMAGE: 'IMAGE',\n AUDIO: 'AUDIO',\n VIDEO: 'VIDEO',\n GIF: 'GIF',\n VOICE: 'VOICE',\n OTHERS: 'OTHERS',\n};\n\nexport interface SendingMessageStatus {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n}\nconst SendingMessageStatus: SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport type CoreMessageType = EveryMessage;\n\nexport const isTextuallyNull = (text: string): boolean => {\n if (text === '' || text === null) {\n return true;\n }\n return false;\n};\n\nexport const isImage = (type: string): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: string): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: string): boolean => type === 'image/gif';\nexport const isSupportedFileView = (type: string): boolean => isImage(type) || isVideo(type);\nexport const isAudio = (type: string): boolean => SUPPORTED_MIMES.AUDIO.indexOf(type) >= 0;\n\nexport const getUIKitFileTypes = (): UIKitFileTypes => ({ ...UIKitFileTypes });\nexport const getUIKitFileType = (type: string): string => {\n if (isGif(type)) return UIKitFileTypes.GIF;\n if (isImage(type)) return UIKitFileTypes.IMAGE;\n if (isVideo(type)) return UIKitFileTypes.VIDEO;\n if (isAudio(type)) return UIKitFileTypes.AUDIO;\n return UIKitFileTypes.OTHERS;\n};\n\nexport const isSentMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'succeeded');\nexport const isDeliveredMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.DELIVERED\n || getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\nexport const isReadMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\n// TODO: Remove channel from the params, it seems unnecessary\nexport const isFailedMessage = (message: UserMessage | FileMessage): boolean => (message?.sendingStatus === 'failed');\nexport const isPendingMessage = (message: UserMessage | FileMessage): boolean => (message?.sendingStatus === 'pending');\nexport const isSentStatus = (state: string): boolean => (\n state === OutgoingMessageStates.SENT\n || state === OutgoingMessageStates.DELIVERED\n || state === OutgoingMessageStates.READ\n);\n\nexport const isAdminMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message?.isAdminMessage?.() || (message?.messageType === 'admin'))\n);\nexport const isUserMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message?.isUserMessage?.() || (message?.messageType === 'user'))\n);\nexport const isFileMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message?.isFileMessage?.() || (message?.messageType === 'file'))\n);\n\nexport const isOGMessage = (message: UserMessage | FileMessage): boolean => !!(\n message && isUserMessage(message) && message?.ogMetaData && (\n message.ogMetaData?.url\n || message.ogMetaData?.title\n || message.ogMetaData?.description\n || message.ogMetaData?.defaultImage\n )\n);\nexport const isTextMessage = (message: UserMessage | FileMessage): boolean => isUserMessage(message) && !isOGMessage(message);\nexport const isThumbnailMessage = (message: UserMessage | FileMessage): boolean => (\n message && isFileMessage(message) && isSupportedFileView((message as FileMessage).type)\n);\nexport const isImageMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isImage(message.type);\nexport const isVideoMessage = (message: UserMessage | FileMessage): boolean => (\n message && isThumbnailMessage(message) && isVideo((message as FileMessage).type)\n);\nexport const isGifMessage = (message: UserMessage | FileMessage): boolean => (\n message && isThumbnailMessage(message) && isGif((message as FileMessage).type)\n);\nexport const isAudioMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isAudio(message.type);\nexport const isAudioMessageMimeType = (type: string): boolean => (/^audio\\//.test(type));\nexport const isVoiceMessage = (message: FileMessage): boolean => {\n // ex) audio/m4a OR audio/m4a;sbu_type=voice\n if (!(message && isFileMessage(message))) {\n return false;\n }\n const [mimeType, typeParameter] = message.type?.split(';');\n if (!isAudioMessageMimeType(mimeType) || !typeParameter) {\n return false;\n }\n const [key, value] = typeParameter?.split('=');\n if (key === 'sbu_type' && value === 'voice') {\n return true;\n }\n // ex) message.metaArrays = [{ key: 'KEY_INTERNAL_MESSAGE_TYPE', value: ['voice/m4a'] }]\n return isVoiceMessageMimeType(message.metaArrays.find((metaArray) => metaArray.key === 'KEY_INTERNAL_MESSAGE_TYPE')?.value?.[0]);\n};\nexport const isVoiceMessageMimeType = (type: string): boolean => (/^voice\\//.test(type));\n\nexport const isEditedMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => isUserMessage(message) && (message?.updatedAt > 0);\nexport const isEnabledOGMessage = (message: UserMessage): boolean => (\n (!message || !message.ogMetaData || !message.ogMetaData.url) ? false : true\n);\n\nexport const getUIKitMessageTypes = (): UIKitMessageTypes => ({ ...UIKitMessageTypes });\nexport const getUIKitMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if (isAdminMessage(message as AdminMessage)) return UIKitMessageTypes.ADMIN;\n if (isUserMessage(message as UserMessage)) {\n return isOGMessage(message as UserMessage) ? UIKitMessageTypes.OG : UIKitMessageTypes.TEXT;\n }\n if (isFileMessage(message as FileMessage)) {\n if (isThumbnailMessage(message as FileMessage)) {\n return UIKitMessageTypes.THUMBNAIL;\n }\n if (isVoiceMessage(message as FileMessage)) {\n return UIKitFileTypes.VOICE\n }\n return UIKitMessageTypes.FILE;\n }\n return UIKitMessageTypes.UNKNOWN;\n};\nexport const getSendingMessageStatus = (): SendingMessageStatus => ({ ...SendingMessageStatus });\n\nconst reducer = (accumulator: Array<string>, currentValue: string | Array<string>): Array<any> => {\n if (Array.isArray(currentValue)) {\n return [...accumulator, ...currentValue];\n } else {\n accumulator.push(currentValue);\n return accumulator;\n }\n};\nexport const getClassName = (classNames: string | Array<string | Array<string>>): string => (\n Array.isArray(classNames)\n ? classNames.reduce(reducer, []).join(' ')\n : classNames\n);\nexport const isReactedBy = (userId: string, reaction: Reaction): boolean => (\n reaction.userIds.some((reactorUserId: string): boolean => reactorUserId === userId)\n);\ninterface StringSet {\n TOOLTIP__YOU: string;\n TOOLTIP__AND_YOU: string;\n TOOLTIP__UNKNOWN_USER: string;\n}\nexport const getEmojiTooltipString = (reaction: Reaction, userId: string, memberNicknamesMap: Map<string, string>, stringSet: StringSet): string => {\n let you = '';\n if (isReactedBy(userId, reaction)) {\n you = reaction.userIds.length === 1 ? stringSet.TOOLTIP__YOU : stringSet.TOOLTIP__AND_YOU;\n }\n return (`${reaction.userIds\n .filter((reactorUserId: string) => reactorUserId !== userId)\n .map((reactorUserId: string) => (memberNicknamesMap.get(reactorUserId) || stringSet.TOOLTIP__UNKNOWN_USER))\n .join(', ')}${you}`);\n};\n\n// TODO: Use the interface after language tranlsatation of Sendbird.js\ninterface UIKitStore {\n stores: {\n sdkStore: {\n sdk: SendbirdChat | SendbirdOpenChat | SendbirdGroupChat,\n },\n userStore: {\n user: User,\n },\n },\n config: {\n isReactionEnabled: boolean,\n }\n}\nexport const getCurrentUserId = (store: UIKitStore): string => (store?.stores?.userStore?.user?.userId);\nexport const getUseReaction = (store: UIKitStore, channel: GroupChannel | OpenChannel): boolean => {\n if (!store?.config?.isReactionEnabled)\n return false;\n if (!store?.stores?.sdkStore?.sdk?.appInfo?.useReaction)\n return false;\n if (channel?.isGroupChannel())\n return !((channel as GroupChannel).isBroadcast || (channel as GroupChannel).isSuper);\n return store?.config?.isReactionEnabled;\n};\n\nexport const isMessageSentByMe = (userId: string, message: UserMessage | FileMessage): boolean => (\n (userId && message?.sender?.userId) && userId === message.sender.userId\n);\n\nconst URL_REG = /[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)/;\nexport const isUrl = (text: string): boolean => URL_REG.test(text);\nconst MENTION_TAG_REG = /\\@\\{.*?\\}/i;\nexport const isMentionedText = (text: string): boolean => MENTION_TAG_REG.test(text);\n\nexport const truncateString = (fullStr: string, strLen?: number): string => {\n if (!strLen) strLen = 40;\n if (fullStr === null || fullStr === undefined) return '';\n if (fullStr.length <= strLen) return fullStr;\n const separator = '...';\n const sepLen = separator.length;\n const charsToShow = strLen - sepLen;\n const frontChars = Math.ceil(charsToShow / 2);\n const backChars = Math.floor(charsToShow / 2);\n return fullStr.substr(0, frontChars) + separator + fullStr.substr(fullStr.length - backChars);\n};\n\nexport const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport const getEmojiListAll = (emojiContainer: EmojiContainer): Array<Emoji> => (\n emojiContainer?.emojiCategories?.map((emojiCategory: EmojiCategory) => emojiCategory.emojis)\n .reduce((prevArr: Array<Emoji>, currArr: Array<Emoji>) => prevArr.concat(currArr), [])\n);\nexport const getEmojiMapAll = (emojiContainer: EmojiContainer): Map<string, Emoji> => {\n const emojiMap = new Map();\n emojiContainer?.emojiCategories?.forEach((category: EmojiCategory) => {\n category?.emojis?.forEach((emoji: Emoji): void => {\n if (emoji && emoji.key) {\n emojiMap.set(emoji.key, emoji);\n }\n });\n });\n return emojiMap;\n};\n\nexport const getUserName = (user: User): string => (user?.friendName || user?.nickname || user?.userId);\nexport const getSenderName = (message: UserMessage | FileMessage): string => (message?.sender && getUserName(message?.sender));\n\nexport const hasSameMembers = <T>(a: T[], b: T[]): boolean => {\n if (a === b) {\n return true;\n }\n if (a == null || b == null) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n\n const sortedA = [...a].sort();\n const sortedB = [...b].sort();\n\n for (let i = 0; i < sortedA.length; ++i) {\n if (sortedA[i] !== sortedB[i]) {\n return false;\n }\n }\n return true;\n}\nexport const isFriend = (user: User): boolean => !!(user.friendDiscoveryKey || user.friendName);\n\nexport const filterMessageListParams = (params: MessageListParams, message: UserMessage | FileMessage): boolean => {\n // @ts-ignore\n if (params?.messageTypeFilter && params.messageTypeFilter !== message.messageType) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0) {\n const customTypes = params.customTypesFilter.filter((item) => item !== '*');\n // Because Chat SDK inserts '*' when customTypes is empty\n if (customTypes.length > 0 && !customTypes.includes(message.customType)) {\n return false;\n }\n }\n if (params?.senderUserIdsFilter && params?.senderUserIdsFilter?.length > 0) {\n if (message?.isUserMessage?.() || message?.isFileMessage?.()) {\n const messageSender = (message as UserMessage | FileMessage).sender || message['_sender'];\n if (!params?.senderUserIdsFilter?.includes(messageSender?.userId)) {\n return false;\n }\n } else {\n return false;\n }\n }\n if (!params?.includeParentMessageInfo && (message?.parentMessageId || message?.parentMessage)) {\n return false;\n }\n return true;\n};\n\nexport const filterChannelListParams = (params: GroupChannelListQuery, channel: GroupChannel, currentUserId: string): boolean => {\n if (!params?.includeEmpty && channel?.lastMessage === null) {\n return false;\n }\n const searchFilter = params?.searchFilter;\n if (searchFilter?.query && searchFilter.fields?.length > 0) {\n const searchQuery = searchFilter.query;\n const searchFields = searchFilter.fields;\n if (searchQuery && searchFields && searchFields.length > 0) {\n if (!searchFields.some((searchField) => {\n switch (searchField) {\n case 'channel_name': {\n return channel?.name?.toLowerCase().includes(searchQuery.toLowerCase());\n }\n case 'member_nickname': {\n return channel?.members?.some((member: Member) => member.nickname.toLowerCase().includes(searchQuery.toLowerCase()));\n }\n default: {\n return true;\n }\n }\n })) {\n return false;\n }\n }\n }\n const userIdsFilter = params?.userIdsFilter;\n if (userIdsFilter?.userIds?.length > 0) {\n const { includeMode, queryType } = userIdsFilter;\n const userIds: string[] = userIdsFilter.userIds;\n const memberIds = channel?.members?.map((member: Member) => member.userId);\n if (!includeMode) { // exact match\n if (!userIds.includes(currentUserId)) {\n userIds.push(currentUserId); // add the caller's userId if not added already.\n }\n if (channel?.members?.length > userIds.length) {\n return false; // userIds may contain one or more non-member(s).\n }\n if (!hasSameMembers(userIds, memberIds)) {\n return false;\n }\n } else if (userIds.length > 0) { // inclusive\n switch (queryType) {\n case 'AND': {\n if (userIds.some((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n case 'OR': {\n if (userIds.every((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n default: {\n break;\n }\n }\n }\n }\n if (params?.includeEmpty === false && channel?.lastMessage === null) {\n return false;\n }\n if (params?.includeFrozen === false && channel?.isFrozen === true) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0 && !params.customTypesFilter.includes(channel?.customType)) {\n return false;\n }\n if (params?.customTypeStartsWithFilter && !new RegExp(`^${params.customTypeStartsWithFilter}`).test(channel?.customType)) {\n return false;\n }\n if (params?.channelNameContainsFilter && !channel?.name?.toLowerCase().includes(params.channelNameContainsFilter.toLowerCase())) {\n return false;\n }\n if (params?.nicknameContainsFilter) {\n const lowerCasedSubString = params.nicknameContainsFilter.toLowerCase();\n if (channel?.members?.every((member: Member) => !member.nickname.toLowerCase().includes(lowerCasedSubString))) {\n return false;\n }\n }\n if (params?.channelUrlsFilter?.length > 0 && !params.channelUrlsFilter.includes(channel?.url)) {\n return false;\n }\n if (params?.myMemberStateFilter) {\n switch (params.myMemberStateFilter) {\n case 'joined_only':\n if (channel?.myMemberState !== 'joined') {\n return false;\n }\n break;\n case 'invited_only':\n if (channel?.myMemberState !== 'invited') {\n return false;\n }\n break;\n case 'invited_by_friend':\n if (channel?.myMemberState !== 'invited' || !isFriend(channel?.inviter)) {\n return false;\n }\n break;\n case 'invited_by_non_friend':\n if (channel?.myMemberState !== 'invited' || isFriend(channel?.inviter)) {\n return false;\n }\n break;\n }\n }\n if (params?.hiddenChannelFilter) {\n switch (params.hiddenChannelFilter) {\n case 'unhidden_only':\n if (channel?.isHidden || channel?.hiddenState !== 'unhidden') {\n return false;\n }\n break;\n case 'hidden_only':\n if (!channel?.isHidden) {\n return false;\n }\n break;\n case 'hidden_allow_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_allow_auto_unhide') {\n return false;\n }\n break;\n case 'hidden_prevent_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_prevent_auto_unhide') {\n return false;\n }\n break;\n }\n }\n if (params?.unreadChannelFilter) {\n switch (params.unreadChannelFilter) {\n case 'unread_message':\n if (channel?.unreadMessageCount === 0) {\n return false;\n }\n break;\n }\n }\n if (params?.publicChannelFilter) {\n switch (params.publicChannelFilter) {\n case 'public':\n if (!channel?.isPublic) {\n return false;\n }\n break;\n case 'private':\n if (channel?.isPublic) {\n return false;\n }\n break;\n }\n }\n if (params?.superChannelFilter) {\n switch (params.superChannelFilter) {\n case 'super':\n if (!channel?.isSuper) {\n return false;\n }\n break;\n case 'nonsuper':\n if (channel?.isSuper) {\n return false;\n }\n break;\n }\n }\n return true;\n};\n\nexport const binarySearch = (list: Array<number>, number: number): number => { // [100, 99, 98, 97, ...]\n const pivot = Math.floor(list.length / 2);\n if (list[pivot] === number) {\n return pivot;\n }\n const leftList = list.slice(0, pivot);\n const rightList = list.slice(pivot + 1, list.length);\n if (list[pivot] > number) {\n return pivot + 1 + (rightList.length === 0 ? 0 : binarySearch(rightList, number));\n } else {\n return (leftList.length === 0) ? pivot : binarySearch(leftList, number);\n }\n};\n// This is required when channel is displayed on channel list by filter\nexport const getChannelsWithUpsertedChannel = (channels: Array<GroupChannel>, channel: GroupChannel): Array<GroupChannel> => {\n if (channels.some((ch: GroupChannel) => ch.url === channel?.url)) {\n return channels.map((ch: GroupChannel) => (ch.url === channel?.url ? channel : ch));\n }\n const targetIndex = binarySearch(\n channels.map((channel: GroupChannel) => channel?.lastMessage?.createdAt || channel?.createdAt),\n channel?.lastMessage?.createdAt || channel?.createdAt,\n );\n return [...channels.slice(0, targetIndex), channel, ...channels.slice(targetIndex, channels.length)];\n};\n\nexport const getMatchedUserIds = (word: string, users: Array<User>, _template?: string): boolean => {\n const template = _template || '@'; // Use global variable\n // const matchedUserIds = [];\n // users.map((user) => user?.userId).forEach((userId) => {\n // if (word.indexOf(`${template}{${userId}}`) > -1) {\n // matchedUserIds.push(userId);\n // }\n // });\n // return matchedUserIds;\n return users.map((user) => user?.userId).some((userId) => word.indexOf(`${template}{${userId}}`) > -1);\n};\n\nexport enum StringObjType {\n normal = 'normal',\n mention = 'mention',\n url = 'url',\n}\nexport interface StringObj {\n type: StringObjType;\n value: string;\n userId?: string;\n}\n\n/**\n * @deprecated\n * use smart-components/message/utils/tokenize instead\n */\nexport const convertWordToStringObj = (word: string, _users: Array<User>, _template?: string): Array<StringObj> => {\n const users = _users || [];\n const template = _template || '@'; // Use global variable\n const resultArray = [];\n const regex = RegExp(`${template}{(${users.map((user) => user?.userId).join('|')})}`, 'g');\n let excutionResult;\n let lastIndex = 0;\n while ((excutionResult = regex.exec(word)) !== null) {\n const [template, userId] = excutionResult;\n const endIndex = regex.lastIndex;\n const startIndex = endIndex - template.length;\n // Normal text\n const normalText = word.slice(lastIndex, startIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n // Mention template\n const mentionedUser = users.find((user) => user?.userId === userId);\n if (!mentionedUser) {\n resultArray.push({\n type: StringObjType.normal,\n value: template, // because template is the origin text\n });\n } else {\n resultArray.push({\n type: StringObjType.mention,\n value: mentionedUser?.nickname || '(No name)',\n userId: userId,\n });\n }\n lastIndex = endIndex;\n }\n if (lastIndex < word.length) {\n // Normal text\n const normalText = word.slice(lastIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n }\n return resultArray;\n};\n\nexport const arrayEqual = (array1: Array<unknown>, array2: Array<unknown>): boolean => {\n if (Array.isArray(array1) && Array.isArray(array2) && array1.length === array2.length) {\n for (let i = 0; i < array1.length; i++) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n }\n return false;\n};\n"],"names":["SUPPORTED_MIMES","IMAGE","VIDEO","AUDIO","UIKitMessageTypes","ADMIN","TEXT","FILE","THUMBNAIL","OG","UNKNOWN","UIKitFileTypes","GIF","VOICE","OTHERS","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","isTextuallyNull","text","isImage","type","indexOf","isVideo","isGif","isSupportedFileView","isAudio","getUIKitFileTypes","__assign","getUIKitFileType","isSentMessage","message","sendingStatus","isReadMessage","channel","getOutgoingMessageState","OutgoingMessageStates","READ","isFailedMessage","isPendingMessage","isSentStatus","state","SENT","DELIVERED","isAdminMessage","_a","call","messageType","isUserMessage","isFileMessage","isOGMessage","ogMetaData","url","_b","title","_c","description","_d","defaultImage","isTextMessage","isThumbnailMessage","isImageMessage","isVideoMessage","isGifMessage","isAudioMessage","isAudioMessageMimeType","test","isVoiceMessage","split","mimeType","typeParameter","_e","key","value","isVoiceMessageMimeType","metaArrays","find","metaArray","isEditedMessage","updatedAt","getUIKitMessageTypes","getUIKitMessageType","getSendingMessageStatus","reducer","accumulator","currentValue","Array","isArray","__spreadArray","push","getClassName","classNames","reduce","join","isReactedBy","userId","reaction","userIds","some","reactorUserId","getEmojiTooltipString","memberNicknamesMap","stringSet","you","length","TOOLTIP__YOU","TOOLTIP__AND_YOU","concat","filter","map","get","TOOLTIP__UNKNOWN_USER","URL_REG","isUrl","truncateString","fullStr","strLen","undefined","separator","sepLen","charsToShow","frontChars","Math","ceil","backChars","floor","substr","copyToClipboard","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild","getEmojiListAll","emojiContainer","emojiCategories","emojiCategory","emojis","prevArr","currArr","getEmojiMapAll","emojiMap","Map","forEach","category","emoji","set","getUserName","user","friendName","nickname","getSenderName","sender","hasSameMembers","a","b","sortedA","sort","sortedB","i","isFriend","friendDiscoveryKey","filterMessageListParams","params","messageTypeFilter","customTypesFilter","customTypes","item","includes","customType","senderUserIdsFilter","messageSender","includeParentMessageInfo","parentMessageId","parentMessage","filterChannelListParams","currentUserId","includeEmpty","lastMessage","searchFilter","query","fields","searchQuery_1","searchFields","searchField","name","toLowerCase","members","member","userIdsFilter","includeMode","queryType","memberIds_1","every","includeFrozen","isFrozen","customTypeStartsWithFilter","RegExp","channelNameContainsFilter","_f","nicknameContainsFilter","lowerCasedSubString_1","_g","_h","channelUrlsFilter","myMemberStateFilter","myMemberState","inviter","hiddenChannelFilter","isHidden","hiddenState","unreadChannelFilter","unreadMessageCount","publicChannelFilter","isPublic","superChannelFilter","isSuper","binarySearch","list","number","pivot","leftList","slice","rightList","getChannelsWithUpsertedChannel","channels","ch","targetIndex","createdAt","StringObjType","convertWordToStringObj","word","_users","_template","users","template","resultArray","regex","excutionResult","lastIndex","template_1","endIndex","startIndex","normalText","normal","mentionedUser","mention","exec","arrayEqual","array1","array2"],"mappings":"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"}
1
+ {"version":3,"file":"index-e378ca4e.js","sources":["../src/utils/index.ts"],"sourcesContent":["import SendbirdChat, { Emoji, EmojiCategory, EmojiContainer, User } from '@sendbird/chat';\nimport { GroupChannel, Member, SendbirdGroupChat, GroupChannelListQuery } from '@sendbird/chat/groupChannel';\nimport { AdminMessage, FileMessage, MessageListParams, Reaction, UserMessage } from '@sendbird/chat/message';\nimport { OpenChannel, SendbirdOpenChat } from '@sendbird/chat/openChannel';\n\nimport { getOutgoingMessageState, OutgoingMessageStates } from './exports/getOutgoingMessageState';\nimport { EveryMessage } from '../types';\n\n// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp', // not supported in IE\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n AUDIO: [\n 'audio/aac',\n 'audio/midi',\n 'audio/x-midi',\n 'audio/mpeg',\n 'audio/ogg',\n 'audio/opus',\n 'audio/wav',\n 'audio/webm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/mp3',\n ],\n};\n\nexport interface UIKitMessageTypes {\n ADMIN: 'ADMIN',\n TEXT: 'TEXT',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n}\nexport const UIKitMessageTypes: UIKitMessageTypes = {\n ADMIN: 'ADMIN',\n TEXT: 'TEXT',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n};\nexport interface UIKitFileTypes {\n IMAGE: 'IMAGE',\n AUDIO: 'AUDIO',\n VIDEO: 'VIDEO',\n GIF: 'GIF',\n VOICE: 'VOICE',\n OTHERS: 'OTHERS',\n}\nexport const UIKitFileTypes: UIKitFileTypes = {\n IMAGE: 'IMAGE',\n AUDIO: 'AUDIO',\n VIDEO: 'VIDEO',\n GIF: 'GIF',\n VOICE: 'VOICE',\n OTHERS: 'OTHERS',\n};\n\nexport interface SendingMessageStatus {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n}\nconst SendingMessageStatus: SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport type CoreMessageType = EveryMessage;\n\nexport const isTextuallyNull = (text: string): boolean => {\n if (text === '' || text === null) {\n return true;\n }\n return false;\n};\n\nexport const isImage = (type: string): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: string): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: string): boolean => type === 'image/gif';\nexport const isSupportedFileView = (type: string): boolean => isImage(type) || isVideo(type);\nexport const isAudio = (type: string): boolean => SUPPORTED_MIMES.AUDIO.indexOf(type) >= 0;\n\nexport const getUIKitFileTypes = (): UIKitFileTypes => ({ ...UIKitFileTypes });\nexport const getUIKitFileType = (type: string): string => {\n if (isGif(type)) return UIKitFileTypes.GIF;\n if (isImage(type)) return UIKitFileTypes.IMAGE;\n if (isVideo(type)) return UIKitFileTypes.VIDEO;\n if (isAudio(type)) return UIKitFileTypes.AUDIO;\n return UIKitFileTypes.OTHERS;\n};\n\nexport const isSentMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'succeeded');\nexport const isDeliveredMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.DELIVERED\n || getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\nexport const isReadMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\n// TODO: Remove channel from the params, it seems unnecessary\nexport const isFailedMessage = (message: UserMessage | FileMessage): boolean => (message?.sendingStatus === 'failed');\nexport const isPendingMessage = (message: UserMessage | FileMessage): boolean => (message?.sendingStatus === 'pending');\nexport const isSentStatus = (state: string): boolean => (\n state === OutgoingMessageStates.SENT\n || state === OutgoingMessageStates.DELIVERED\n || state === OutgoingMessageStates.READ\n);\n\nexport const isAdminMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message?.isAdminMessage?.() || (message?.messageType === 'admin'))\n);\nexport const isUserMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message?.isUserMessage?.() || (message?.messageType === 'user'))\n);\nexport const isFileMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message?.isFileMessage?.() || (message?.messageType === 'file'))\n);\n\nexport const isOGMessage = (message: UserMessage | FileMessage): boolean => !!(\n message && isUserMessage(message) && message?.ogMetaData && (\n message.ogMetaData?.url\n || message.ogMetaData?.title\n || message.ogMetaData?.description\n || message.ogMetaData?.defaultImage\n )\n);\nexport const isTextMessage = (message: UserMessage | FileMessage): boolean => isUserMessage(message) && !isOGMessage(message);\nexport const isThumbnailMessage = (message: UserMessage | FileMessage): boolean => (\n message && isFileMessage(message) && isSupportedFileView((message as FileMessage).type)\n);\nexport const isImageMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isImage(message.type);\nexport const isVideoMessage = (message: UserMessage | FileMessage): boolean => (\n message && isThumbnailMessage(message) && isVideo((message as FileMessage).type)\n);\nexport const isGifMessage = (message: UserMessage | FileMessage): boolean => (\n message && isThumbnailMessage(message) && isGif((message as FileMessage).type)\n);\nexport const isAudioMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isAudio(message.type);\nexport const isAudioMessageMimeType = (type: string): boolean => (/^audio\\//.test(type));\nexport const isVoiceMessage = (message: FileMessage): boolean => {\n // ex) audio/m4a OR audio/m4a;sbu_type=voice\n if (!(message && isFileMessage(message))) {\n return false;\n }\n const [mimeType, typeParameter] = message.type?.split(';');\n if (!isAudioMessageMimeType(mimeType) || !typeParameter) {\n return false;\n }\n const [key, value] = typeParameter?.split('=');\n if (key === 'sbu_type' && value === 'voice') {\n return true;\n }\n // ex) message.metaArrays = [{ key: 'KEY_INTERNAL_MESSAGE_TYPE', value: ['voice/m4a'] }]\n return isVoiceMessageMimeType(message.metaArrays.find((metaArray) => metaArray.key === 'KEY_INTERNAL_MESSAGE_TYPE')?.value?.[0]);\n};\nexport const isVoiceMessageMimeType = (type: string): boolean => (/^voice\\//.test(type));\n\nexport const isEditedMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => isUserMessage(message) && (message?.updatedAt > 0);\nexport const isEnabledOGMessage = (message: UserMessage): boolean => (\n (!message || !message.ogMetaData || !message.ogMetaData.url) ? false : true\n);\n\nexport const getUIKitMessageTypes = (): UIKitMessageTypes => ({ ...UIKitMessageTypes });\nexport const getUIKitMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if (isAdminMessage(message as AdminMessage)) return UIKitMessageTypes.ADMIN;\n if (isUserMessage(message as UserMessage)) {\n return isOGMessage(message as UserMessage) ? UIKitMessageTypes.OG : UIKitMessageTypes.TEXT;\n }\n if (isFileMessage(message as FileMessage)) {\n if (isThumbnailMessage(message as FileMessage)) {\n return UIKitMessageTypes.THUMBNAIL;\n }\n if (isVoiceMessage(message as FileMessage)) {\n return UIKitFileTypes.VOICE\n }\n return UIKitMessageTypes.FILE;\n }\n return UIKitMessageTypes.UNKNOWN;\n};\nexport const getSendingMessageStatus = (): SendingMessageStatus => ({ ...SendingMessageStatus });\n\nconst reducer = (accumulator: Array<string>, currentValue: string | Array<string>): Array<any> => {\n if (Array.isArray(currentValue)) {\n return [...accumulator, ...currentValue];\n } else {\n accumulator.push(currentValue);\n return accumulator;\n }\n};\nexport const getClassName = (classNames: string | Array<string | Array<string>>): string => (\n Array.isArray(classNames)\n ? classNames.reduce(reducer, []).join(' ')\n : classNames\n);\nexport const isReactedBy = (userId: string, reaction: Reaction): boolean => (\n reaction.userIds.some((reactorUserId: string): boolean => reactorUserId === userId)\n);\ninterface StringSet {\n TOOLTIP__YOU: string;\n TOOLTIP__AND_YOU: string;\n TOOLTIP__UNKNOWN_USER: string;\n}\nexport const getEmojiTooltipString = (reaction: Reaction, userId: string, memberNicknamesMap: Map<string, string>, stringSet: StringSet): string => {\n let you = '';\n if (isReactedBy(userId, reaction)) {\n you = reaction.userIds.length === 1 ? stringSet.TOOLTIP__YOU : stringSet.TOOLTIP__AND_YOU;\n }\n return (`${reaction.userIds\n .filter((reactorUserId: string) => reactorUserId !== userId)\n .map((reactorUserId: string) => (memberNicknamesMap.get(reactorUserId) || stringSet.TOOLTIP__UNKNOWN_USER))\n .join(', ')}${you}`);\n};\n\n// TODO: Use the interface after language tranlsatation of Sendbird.js\ninterface UIKitStore {\n stores: {\n sdkStore: {\n sdk: SendbirdChat | SendbirdOpenChat | SendbirdGroupChat,\n },\n userStore: {\n user: User,\n },\n },\n config: {\n isReactionEnabled: boolean,\n }\n}\nexport const getCurrentUserId = (store: UIKitStore): string => (store?.stores?.userStore?.user?.userId);\nexport const getUseReaction = (store: UIKitStore, channel: GroupChannel | OpenChannel): boolean => {\n if (!store?.config?.isReactionEnabled)\n return false;\n if (!store?.stores?.sdkStore?.sdk?.appInfo?.useReaction)\n return false;\n if (channel?.isGroupChannel())\n return !((channel as GroupChannel).isBroadcast || (channel as GroupChannel).isSuper);\n return store?.config?.isReactionEnabled;\n};\n\nexport const isMessageSentByMe = (userId: string, message: UserMessage | FileMessage): boolean => (\n (userId && message?.sender?.userId) && userId === message.sender.userId\n);\n\nconst URL_REG = /[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)/;\nexport const isUrl = (text: string): boolean => URL_REG.test(text);\nconst MENTION_TAG_REG = /\\@\\{.*?\\}/i;\nexport const isMentionedText = (text: string): boolean => MENTION_TAG_REG.test(text);\n\nexport const truncateString = (fullStr: string, strLen?: number): string => {\n if (!strLen) strLen = 40;\n if (fullStr === null || fullStr === undefined) return '';\n if (fullStr.length <= strLen) return fullStr;\n const separator = '...';\n const sepLen = separator.length;\n const charsToShow = strLen - sepLen;\n const frontChars = Math.ceil(charsToShow / 2);\n const backChars = Math.floor(charsToShow / 2);\n return fullStr.substr(0, frontChars) + separator + fullStr.substr(fullStr.length - backChars);\n};\n\nexport const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport const getEmojiListAll = (emojiContainer: EmojiContainer): Array<Emoji> => (\n emojiContainer?.emojiCategories?.map((emojiCategory: EmojiCategory) => emojiCategory.emojis)\n .reduce((prevArr: Array<Emoji>, currArr: Array<Emoji>) => prevArr.concat(currArr), [])\n);\nexport const getEmojiMapAll = (emojiContainer: EmojiContainer): Map<string, Emoji> => {\n const emojiMap = new Map();\n emojiContainer?.emojiCategories?.forEach((category: EmojiCategory) => {\n category?.emojis?.forEach((emoji: Emoji): void => {\n if (emoji && emoji.key) {\n emojiMap.set(emoji.key, emoji);\n }\n });\n });\n return emojiMap;\n};\n\nexport const getUserName = (user: User): string => (user?.friendName || user?.nickname || user?.userId);\nexport const getSenderName = (message: UserMessage | FileMessage): string => (message?.sender && getUserName(message?.sender));\n\nexport const hasSameMembers = <T>(a: T[], b: T[]): boolean => {\n if (a === b) {\n return true;\n }\n if (a == null || b == null) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n\n const sortedA = [...a].sort();\n const sortedB = [...b].sort();\n\n for (let i = 0; i < sortedA.length; ++i) {\n if (sortedA[i] !== sortedB[i]) {\n return false;\n }\n }\n return true;\n}\nexport const isFriend = (user: User): boolean => !!(user.friendDiscoveryKey || user.friendName);\n\nexport const filterMessageListParams = (params: MessageListParams, message: UserMessage | FileMessage): boolean => {\n // @ts-ignore\n if (params?.messageTypeFilter && params.messageTypeFilter !== message.messageType) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0) {\n const customTypes = params.customTypesFilter.filter((item) => item !== '*');\n // Because Chat SDK inserts '*' when customTypes is empty\n if (customTypes.length > 0 && !customTypes.includes(message.customType)) {\n return false;\n }\n }\n if (params?.senderUserIdsFilter && params?.senderUserIdsFilter?.length > 0) {\n if (message?.isUserMessage?.() || message?.isFileMessage?.()) {\n const messageSender = (message as UserMessage | FileMessage).sender || message['_sender'];\n if (!params?.senderUserIdsFilter?.includes(messageSender?.userId)) {\n return false;\n }\n } else {\n return false;\n }\n }\n if (!params?.includeParentMessageInfo && (message?.parentMessageId || message?.parentMessage)) {\n return false;\n }\n return true;\n};\n\nexport const filterChannelListParams = (params: GroupChannelListQuery, channel: GroupChannel, currentUserId: string): boolean => {\n if (!params?.includeEmpty && channel?.lastMessage === null) {\n return false;\n }\n const searchFilter = params?.searchFilter;\n if (searchFilter?.query && searchFilter.fields?.length > 0) {\n const searchQuery = searchFilter.query;\n const searchFields = searchFilter.fields;\n if (searchQuery && searchFields && searchFields.length > 0) {\n if (!searchFields.some((searchField) => {\n switch (searchField) {\n case 'channel_name': {\n return channel?.name?.toLowerCase().includes(searchQuery.toLowerCase());\n }\n case 'member_nickname': {\n return channel?.members?.some((member: Member) => member.nickname.toLowerCase().includes(searchQuery.toLowerCase()));\n }\n default: {\n return true;\n }\n }\n })) {\n return false;\n }\n }\n }\n const userIdsFilter = params?.userIdsFilter;\n if (userIdsFilter?.userIds?.length > 0) {\n const { includeMode, queryType } = userIdsFilter;\n const userIds: string[] = userIdsFilter.userIds;\n const memberIds = channel?.members?.map((member: Member) => member.userId);\n if (!includeMode) { // exact match\n if (!userIds.includes(currentUserId)) {\n userIds.push(currentUserId); // add the caller's userId if not added already.\n }\n if (channel?.members?.length > userIds.length) {\n return false; // userIds may contain one or more non-member(s).\n }\n if (!hasSameMembers(userIds, memberIds)) {\n return false;\n }\n } else if (userIds.length > 0) { // inclusive\n switch (queryType) {\n case 'AND': {\n if (userIds.some((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n case 'OR': {\n if (userIds.every((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n default: {\n break;\n }\n }\n }\n }\n if (params?.includeEmpty === false && channel?.lastMessage === null) {\n return false;\n }\n if (params?.includeFrozen === false && channel?.isFrozen === true) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0 && !params.customTypesFilter.includes(channel?.customType)) {\n return false;\n }\n if (params?.customTypeStartsWithFilter && !new RegExp(`^${params.customTypeStartsWithFilter}`).test(channel?.customType)) {\n return false;\n }\n if (params?.channelNameContainsFilter && !channel?.name?.toLowerCase().includes(params.channelNameContainsFilter.toLowerCase())) {\n return false;\n }\n if (params?.nicknameContainsFilter) {\n const lowerCasedSubString = params.nicknameContainsFilter.toLowerCase();\n if (channel?.members?.every((member: Member) => !member.nickname.toLowerCase().includes(lowerCasedSubString))) {\n return false;\n }\n }\n if (params?.channelUrlsFilter?.length > 0 && !params.channelUrlsFilter.includes(channel?.url)) {\n return false;\n }\n if (params?.myMemberStateFilter) {\n switch (params.myMemberStateFilter) {\n case 'joined_only':\n if (channel?.myMemberState !== 'joined') {\n return false;\n }\n break;\n case 'invited_only':\n if (channel?.myMemberState !== 'invited') {\n return false;\n }\n break;\n case 'invited_by_friend':\n if (channel?.myMemberState !== 'invited' || !isFriend(channel?.inviter)) {\n return false;\n }\n break;\n case 'invited_by_non_friend':\n if (channel?.myMemberState !== 'invited' || isFriend(channel?.inviter)) {\n return false;\n }\n break;\n }\n }\n if (params?.hiddenChannelFilter) {\n switch (params.hiddenChannelFilter) {\n case 'unhidden_only':\n if (channel?.isHidden || channel?.hiddenState !== 'unhidden') {\n return false;\n }\n break;\n case 'hidden_only':\n if (!channel?.isHidden) {\n return false;\n }\n break;\n case 'hidden_allow_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_allow_auto_unhide') {\n return false;\n }\n break;\n case 'hidden_prevent_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_prevent_auto_unhide') {\n return false;\n }\n break;\n }\n }\n if (params?.unreadChannelFilter) {\n switch (params.unreadChannelFilter) {\n case 'unread_message':\n if (channel?.unreadMessageCount === 0) {\n return false;\n }\n break;\n }\n }\n if (params?.publicChannelFilter) {\n switch (params.publicChannelFilter) {\n case 'public':\n if (!channel?.isPublic) {\n return false;\n }\n break;\n case 'private':\n if (channel?.isPublic) {\n return false;\n }\n break;\n }\n }\n if (params?.superChannelFilter) {\n switch (params.superChannelFilter) {\n case 'super':\n if (!channel?.isSuper) {\n return false;\n }\n break;\n case 'nonsuper':\n if (channel?.isSuper) {\n return false;\n }\n break;\n }\n }\n return true;\n};\n\nexport const binarySearch = (list: Array<number>, number: number): number => { // [100, 99, 98, 97, ...]\n const pivot = Math.floor(list.length / 2);\n if (list[pivot] === number) {\n return pivot;\n }\n const leftList = list.slice(0, pivot);\n const rightList = list.slice(pivot + 1, list.length);\n if (list[pivot] > number) {\n return pivot + 1 + (rightList.length === 0 ? 0 : binarySearch(rightList, number));\n } else {\n return (leftList.length === 0) ? pivot : binarySearch(leftList, number);\n }\n};\n// This is required when channel is displayed on channel list by filter\nexport const getChannelsWithUpsertedChannel = (channels: Array<GroupChannel>, channel: GroupChannel): Array<GroupChannel> => {\n if (channels.some((ch: GroupChannel) => ch.url === channel?.url)) {\n return channels.map((ch: GroupChannel) => (ch.url === channel?.url ? channel : ch));\n }\n const targetIndex = binarySearch(\n channels.map((channel: GroupChannel) => channel?.lastMessage?.createdAt || channel?.createdAt),\n channel?.lastMessage?.createdAt || channel?.createdAt,\n );\n return [...channels.slice(0, targetIndex), channel, ...channels.slice(targetIndex, channels.length)];\n};\n\nexport const getMatchedUserIds = (word: string, users: Array<User>, _template?: string): boolean => {\n const template = _template || '@'; // Use global variable\n // const matchedUserIds = [];\n // users.map((user) => user?.userId).forEach((userId) => {\n // if (word.indexOf(`${template}{${userId}}`) > -1) {\n // matchedUserIds.push(userId);\n // }\n // });\n // return matchedUserIds;\n return users.map((user) => user?.userId).some((userId) => word.indexOf(`${template}{${userId}}`) > -1);\n};\n\nexport enum StringObjType {\n normal = 'normal',\n mention = 'mention',\n url = 'url',\n}\nexport interface StringObj {\n type: StringObjType;\n value: string;\n userId?: string;\n}\n\n/**\n * @deprecated\n * use smart-components/message/utils/tokenize instead\n */\nexport const convertWordToStringObj = (word: string, _users: Array<User>, _template?: string): Array<StringObj> => {\n const users = _users || [];\n const template = _template || '@'; // Use global variable\n const resultArray = [];\n const regex = RegExp(`${template}{(${users.map((user) => user?.userId).join('|')})}`, 'g');\n let excutionResult;\n let lastIndex = 0;\n while ((excutionResult = regex.exec(word)) !== null) {\n const [template, userId] = excutionResult;\n const endIndex = regex.lastIndex;\n const startIndex = endIndex - template.length;\n // Normal text\n const normalText = word.slice(lastIndex, startIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n // Mention template\n const mentionedUser = users.find((user) => user?.userId === userId);\n if (!mentionedUser) {\n resultArray.push({\n type: StringObjType.normal,\n value: template, // because template is the origin text\n });\n } else {\n resultArray.push({\n type: StringObjType.mention,\n value: mentionedUser?.nickname || '(No name)',\n userId: userId,\n });\n }\n lastIndex = endIndex;\n }\n if (lastIndex < word.length) {\n // Normal text\n const normalText = word.slice(lastIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n }\n return resultArray;\n};\n\nexport const arrayEqual = (array1: Array<unknown>, array2: Array<unknown>): boolean => {\n if (Array.isArray(array1) && Array.isArray(array2) && array1.length === array2.length) {\n for (let i = 0; i < array1.length; i++) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n }\n return false;\n};\n"],"names":["SUPPORTED_MIMES","IMAGE","VIDEO","AUDIO","UIKitMessageTypes","ADMIN","TEXT","FILE","THUMBNAIL","OG","UNKNOWN","UIKitFileTypes","GIF","VOICE","OTHERS","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","isTextuallyNull","text","isImage","type","indexOf","isVideo","isGif","isSupportedFileView","isAudio","getUIKitFileTypes","__assign","getUIKitFileType","isSentMessage","message","sendingStatus","isReadMessage","channel","getOutgoingMessageState","OutgoingMessageStates","READ","isFailedMessage","isPendingMessage","isSentStatus","state","SENT","DELIVERED","isAdminMessage","_a","call","messageType","isUserMessage","isFileMessage","isOGMessage","ogMetaData","url","_b","title","_c","description","_d","defaultImage","isTextMessage","isThumbnailMessage","isImageMessage","isVideoMessage","isGifMessage","isAudioMessage","isAudioMessageMimeType","test","isVoiceMessage","split","mimeType","typeParameter","_e","key","value","isVoiceMessageMimeType","metaArrays","find","metaArray","isEditedMessage","updatedAt","getUIKitMessageTypes","getUIKitMessageType","getSendingMessageStatus","reducer","accumulator","currentValue","Array","isArray","__spreadArray","push","getClassName","classNames","reduce","join","isReactedBy","userId","reaction","userIds","some","reactorUserId","getEmojiTooltipString","memberNicknamesMap","stringSet","you","length","TOOLTIP__YOU","TOOLTIP__AND_YOU","concat","filter","map","get","TOOLTIP__UNKNOWN_USER","URL_REG","isUrl","truncateString","fullStr","strLen","undefined","separator","sepLen","charsToShow","frontChars","Math","ceil","backChars","floor","substr","copyToClipboard","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild","getEmojiListAll","emojiContainer","emojiCategories","emojiCategory","emojis","prevArr","currArr","getEmojiMapAll","emojiMap","Map","forEach","category","emoji","set","getUserName","user","friendName","nickname","getSenderName","sender","hasSameMembers","a","b","sortedA","sort","sortedB","i","isFriend","friendDiscoveryKey","filterMessageListParams","params","messageTypeFilter","customTypesFilter","customTypes","item","includes","customType","senderUserIdsFilter","messageSender","includeParentMessageInfo","parentMessageId","parentMessage","filterChannelListParams","currentUserId","includeEmpty","lastMessage","searchFilter","query","fields","searchQuery_1","searchFields","searchField","name","toLowerCase","members","member","userIdsFilter","includeMode","queryType","memberIds_1","every","includeFrozen","isFrozen","customTypeStartsWithFilter","RegExp","channelNameContainsFilter","_f","nicknameContainsFilter","lowerCasedSubString_1","_g","_h","channelUrlsFilter","myMemberStateFilter","myMemberState","inviter","hiddenChannelFilter","isHidden","hiddenState","unreadChannelFilter","unreadMessageCount","publicChannelFilter","isPublic","superChannelFilter","isSuper","binarySearch","list","number","pivot","leftList","slice","rightList","getChannelsWithUpsertedChannel","channels","ch","targetIndex","createdAt","StringObjType","convertWordToStringObj","word","_users","_template","users","template","resultArray","regex","excutionResult","lastIndex","template_1","endIndex","startIndex","normalText","normal","mentionedUser","mention","exec","arrayEqual","array1","array2"],"mappings":"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"}
@@ -1,20 +1,20 @@
1
- import { a as __spreadArray } from './tslib.es6-85bcd95d.js';
1
+ import { a as __spreadArray } from './tslib.es6-d6e50ec3.js';
2
2
  import React__default, { useContext, useState, useEffect, useRef, useCallback } from 'react';
3
3
  import Button, { ButtonTypes, ButtonSizes } from './ui/Button.js';
4
4
  import ContextMenu, { MenuItems, MenuItem } from './ui/ContextMenu.js';
5
5
  import Icon, { IconTypes, IconColors } from './ui/Icon.js';
6
6
  import IconButton from './ui/IconButton.js';
7
- import { L as Label, a as LabelTypography, b as LabelColors } from './index-538fa479.js';
8
- import { a as LocalizationContext } from './LocalizationContext-62966630.js';
9
- import { a as UserProfileContext } from './UserProfileContext-7083bd82.js';
10
- import './context-c54bc9b4.js';
7
+ import { L as Label, a as LabelTypography, b as LabelColors } from './index-cce0e324.js';
8
+ import { a as LocalizationContext } from './LocalizationContext-3d8c0b24.js';
9
+ import { a as UserProfileContext } from './UserProfileContext-41938ddc.js';
10
+ import './context-9baa8d25.js';
11
11
  import Avatar from './ui/Avatar.js';
12
12
  import 'react-dom';
13
13
  import UserProfile from './ui/UserProfile.js';
14
14
  import '@sendbird/chat/openChannel';
15
15
  import Modal from './ui/Modal.js';
16
16
  import UserListItem$1 from './ui/UserListItem.js';
17
- import { n as noop } from './utils-7dc80efd.js';
17
+ import { n as noop } from './utils-86d65b96.js';
18
18
  import { useOpenChannelSettingsContext } from './OpenChannelSettings/context.js';
19
19
  import useSendbirdStateContext from './useSendbirdStateContext.js';
20
20
 
@@ -336,4 +336,4 @@ function ParticipantList(_a) {
336
336
  }
337
337
 
338
338
  export { ParticipantList as P, UserListItem as U };
339
- //# sourceMappingURL=index-e2834120.js.map
339
+ //# sourceMappingURL=index-f0f9692b.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-e2834120.js","sources":["../src/smart-components/OpenChannelSettings/components/ParticipantUI/ParticipantsModal.tsx","../src/smart-components/OpenChannelSettings/components/ParticipantUI/ParticipantItem.tsx","../src/smart-components/OpenChannelSettings/components/ParticipantUI/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\nimport type { 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) => {\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 >\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 channel?.muteUser(p).then(() => {\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n closeDropdown();\n });\n }}\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 { User } 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';\n\nconst SHOWN_MEMBER_MAX = 10;\n\ninterface ActionProps {\n actionRef: React.RefObject<HTMLInputElement>;\n}\ninterface UserListItemProps {\n user: User;\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 <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 )}\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 {\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>\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 { 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: User) => {\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 refreshList();\n closeDropdown();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n refreshList();\n closeDropdown();\n })\n }\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 channel?.muteUser(p).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\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","_a","onCancel","state","useSendbirdStateContext","channel","useOpenChannelSettingsContext","stringSet","useContext","LocalizationContext","_e","useState","participants","setParticipants","_f","participantListQuery","setParticipantListQuery","userId","_b","config","sdk","_d","_c","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","__spreadArray","map","p","UserListItem","user","key","currentUser","action","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","OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR","muteUser","OPEN_CHANNEL_SETTING__MODERATION__MUTE","banUser","OPEN_CHANNEL_SETTING__MODERATION__BAN","avatarRef","useRef","UserProfileContext","disableUserProfile","renderUserProfile","Avatar","ref","src","profileUrl","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","concat","OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR","ParticipantList","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
+ {"version":3,"file":"index-f0f9692b.js","sources":["../src/smart-components/OpenChannelSettings/components/ParticipantUI/ParticipantsModal.tsx","../src/smart-components/OpenChannelSettings/components/ParticipantUI/ParticipantItem.tsx","../src/smart-components/OpenChannelSettings/components/ParticipantUI/index.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useEffect,\n useState,\n useContext,\n} from 'react';\nimport type { 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) => {\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 >\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 channel?.muteUser(p).then(() => {\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n closeDropdown();\n });\n }}\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 { User } 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';\n\nconst SHOWN_MEMBER_MAX = 10;\n\ninterface ActionProps {\n actionRef: React.RefObject<HTMLInputElement>;\n}\ninterface UserListItemProps {\n user: User;\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 <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 )}\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 {\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>\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 { 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: User) => {\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 refreshList();\n closeDropdown();\n });\n } else {\n channel?.addOperators([p.userId]).then(() => {\n refreshList();\n closeDropdown();\n })\n }\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 channel?.muteUser(p).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\n >\n {stringSet.OPEN_CHANNEL_SETTING__MODERATION__MUTE}\n </MenuItem>\n <MenuItem\n onClick={() => {\n channel?.banUser(p).then(() => {\n refreshList();\n closeDropdown();\n });\n }}\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","_a","onCancel","state","useSendbirdStateContext","channel","useOpenChannelSettingsContext","stringSet","useContext","LocalizationContext","_e","useState","participants","setParticipants","_f","participantListQuery","setParticipantListQuery","userId","_b","config","sdk","_d","_c","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","__spreadArray","map","p","UserListItem","user","key","currentUser","action","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","OPEN_CHANNEL_SETTING__MODERATION__UNREGISTER_OPERATOR","OPEN_CHANNEL_SETTING__MODERATION__REGISTER_AS_OPERATOR","muteUser","OPEN_CHANNEL_SETTING__MODERATION__MUTE","banUser","OPEN_CHANNEL_SETTING__MODERATION__BAN","avatarRef","useRef","UserProfileContext","disableUserProfile","renderUserProfile","Avatar","ref","src","profileUrl","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","concat","OPEN_CHANNEL_SETTINGS__MEMBERS__OPERATOR","ParticipantList","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,15 +1,15 @@
1
1
  import React__default, { useMemo, useRef, useContext, useState } from 'react';
2
2
  import Modal from './ui/Modal.js';
3
- import { a as LocalizationContext } from './LocalizationContext-62966630.js';
3
+ import { a as LocalizationContext } from './LocalizationContext-3d8c0b24.js';
4
4
  import useSendbirdStateContext from './useSendbirdStateContext.js';
5
5
  import Input, { InputLabel } from './ui/Input.js';
6
6
  import Avatar from './ui/Avatar.js';
7
7
  import Icon, { IconTypes } from './ui/Icon.js';
8
8
  import { ButtonTypes } from './ui/Button.js';
9
- import { L as Label, a as LabelTypography, b as LabelColors } from './index-538fa479.js';
9
+ import { L as Label, a as LabelTypography, b as LabelColors } from './index-cce0e324.js';
10
10
  import TextButton from './ui/TextButton.js';
11
- import { n as noop } from './utils-7dc80efd.js';
12
- import { U as USER_ACTIONS } from './actionTypes-9badb1b4.js';
11
+ import { n as noop } from './utils-86d65b96.js';
12
+ import { U as USER_ACTIONS } from './actionTypes-52102db0.js';
13
13
 
14
14
  var EditUserProfileProviderContext = /*#__PURE__*/React__default.createContext(undefined);
15
15
  var EditUserProfileProvider = function (props) {
@@ -161,4 +161,4 @@ function EditUserProfile() {
161
161
  }
162
162
 
163
163
  export { EditUserProfileProvider as E, EditUserProfile as a };
164
- //# sourceMappingURL=index-e5062739.js.map
164
+ //# sourceMappingURL=index-fa96d1c0.js.map