@sendbird/uikit-react 3.0.0-beta.6 → 3.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (594) hide show
  1. package/App.js +46 -44
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +107 -0
  4. package/Channel/components/ChannelHeader.js +24 -20
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +28 -26
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +17 -15
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +5 -5
  11. package/Channel/components/Message.js +30 -26
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +20 -18
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +30 -28
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +20 -18
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +42 -37
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +36 -32
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +6 -6
  24. package/Channel/components/UnreadCount.js.map +1 -1
  25. package/Channel/context.js +15 -13
  26. package/Channel/context.js.map +1 -1
  27. package/Channel.js +28 -26
  28. package/Channel.js.map +1 -1
  29. package/ChannelList/components/AddChannel.js +16 -16
  30. package/ChannelList/components/ChannelListHeader.js +7 -7
  31. package/ChannelList/components/ChannelListUI.js +43 -44
  32. package/ChannelList/components/ChannelListUI.js.map +1 -1
  33. package/ChannelList/components/ChannelPreview.js +35 -31
  34. package/ChannelList/components/ChannelPreview.js.map +1 -1
  35. package/ChannelList/components/ChannelPreviewAction.js +17 -15
  36. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  37. package/ChannelList/context.js +10 -8
  38. package/ChannelList/context.js.map +1 -1
  39. package/ChannelList.js +30 -28
  40. package/ChannelList.js.map +1 -1
  41. package/{ChannelListProvider-737ee36f.js → ChannelListProvider-76b1ec23.js} +219 -198
  42. package/ChannelListProvider-76b1ec23.js.map +1 -0
  43. package/{ChannelProvider-34834493.js → ChannelProvider-c0ed5fae.js} +380 -419
  44. package/ChannelProvider-c0ed5fae.js.map +1 -0
  45. package/ChannelSettings/components/ChannelProfile.js +16 -16
  46. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  47. package/ChannelSettings/components/ChannelSettingsUI.js +23 -23
  48. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  49. package/ChannelSettings/components/EditDetailsModal.js +22 -18
  50. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  51. package/ChannelSettings/components/LeaveChannel.js +13 -13
  52. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  53. package/ChannelSettings/components/{AdminPanel.js → ModerationPanel.js} +87 -141
  54. package/ChannelSettings/components/ModerationPanel.js.map +1 -0
  55. package/ChannelSettings/components/UserListItem.js +18 -17
  56. package/ChannelSettings/components/UserListItem.js.map +1 -1
  57. package/ChannelSettings/components/UserPanel.js +19 -19
  58. package/ChannelSettings/components/UserPanel.js.map +1 -1
  59. package/ChannelSettings/context.js +10 -10
  60. package/ChannelSettings/context.js.map +1 -1
  61. package/ChannelSettings.js +20 -20
  62. package/CreateChannel/components/CreateChannelUI.js +17 -17
  63. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  64. package/CreateChannel/components/{InviteMembers.js → InviteUsers.js} +23 -27
  65. package/CreateChannel/components/InviteUsers.js.map +1 -0
  66. package/CreateChannel/components/SelectChannelType.js +12 -12
  67. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  68. package/CreateChannel/context.js +5 -4
  69. package/CreateChannel/context.js.map +1 -1
  70. package/CreateChannel.js +16 -16
  71. package/{CreateChannelProvider-3d3e4a7c.js → CreateChannelProvider-8c72aa06.js} +3 -3
  72. package/CreateChannelProvider-8c72aa06.js.map +1 -0
  73. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  74. package/EditUserProfile/context.js +2 -2
  75. package/EditUserProfile/context.js.map +1 -1
  76. package/EditUserProfile.js +13 -13
  77. package/{LocalizationContext-5b0a9339.js → LocalizationContext-fb3dafcd.js} +3 -3
  78. package/{LocalizationContext-5b0a9339.js.map → LocalizationContext-fb3dafcd.js.map} +1 -1
  79. package/{MemberList-6e33a562.js → MemberList-01d3c8bf.js} +47 -68
  80. package/MemberList-01d3c8bf.js.map +1 -0
  81. package/MessageSearch/components/MessageSearchUI.js +15 -15
  82. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  83. package/MessageSearch/context.js +55 -60
  84. package/MessageSearch/context.js.map +1 -1
  85. package/MessageSearch.js +21 -21
  86. package/MessageSearch.js.map +1 -1
  87. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  88. package/OpenChannel/components/OpenChannelHeader.js +16 -14
  89. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  90. package/OpenChannel/components/OpenChannelInput.js +19 -17
  91. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  92. package/OpenChannel/components/OpenChannelMessage.js +43 -38
  93. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  94. package/OpenChannel/components/OpenChannelMessageList.js +37 -36
  95. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  96. package/OpenChannel/components/OpenChannelUI.js +27 -25
  97. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  98. package/OpenChannel/context.js +11 -9
  99. package/OpenChannel/context.js.map +1 -1
  100. package/OpenChannel.js +27 -25
  101. package/OpenChannel.js.map +1 -1
  102. package/{OpenChannelProvider-9ef0d52a.js → OpenChannelProvider-0fb27972.js} +629 -694
  103. package/OpenChannelProvider-0fb27972.js.map +1 -0
  104. package/OpenChannelSettings/components/EditDetailsModal.js +29 -35
  105. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  106. package/OpenChannelSettings/components/OpenChannelProfile.js +15 -15
  107. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  108. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +38 -22
  109. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  110. package/OpenChannelSettings/components/OperatorUI.js +45 -30
  111. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  112. package/OpenChannelSettings/components/ParticipantUI.js +29 -56
  113. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  114. package/OpenChannelSettings/context.js +15 -15
  115. package/OpenChannelSettings/context.js.map +1 -1
  116. package/OpenChannelSettings.js +18 -18
  117. package/README.md +128 -0
  118. package/SendbirdProvider.js +42 -37
  119. package/SendbirdProvider.js.map +1 -1
  120. package/{UserProfileContext-b6d89d0d.js → UserProfileContext-6a387a08.js} +1 -1
  121. package/{UserProfileContext-b6d89d0d.js.map → UserProfileContext-6a387a08.js.map} +1 -1
  122. package/__bundle-7dfccc8c-03df3ada.js +24 -0
  123. package/__bundle-7dfccc8c-03df3ada.js.map +1 -0
  124. package/{_rollupPluginBabelHelpers-d10f91b9.js → _rollupPluginBabelHelpers-084fb589.js} +1 -1
  125. package/{_rollupPluginBabelHelpers-d10f91b9.js.map → _rollupPluginBabelHelpers-084fb589.js.map} +1 -1
  126. package/{actionTypes-17920f59.js → actionTypes-302a2801.js} +1 -1
  127. package/{actionTypes-17920f59.js.map → actionTypes-302a2801.js.map} +1 -1
  128. package/cjs/App.js +46 -44
  129. package/cjs/App.js.map +1 -1
  130. package/cjs/Channel/components/ChannelHeader.js +24 -20
  131. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  132. package/cjs/Channel/components/ChannelUI.js +28 -26
  133. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  134. package/cjs/Channel/components/FileViewer.js +17 -15
  135. package/cjs/Channel/components/FileViewer.js.map +1 -1
  136. package/cjs/Channel/components/FrozenNotification.js +5 -5
  137. package/cjs/Channel/components/Message.js +30 -26
  138. package/cjs/Channel/components/Message.js.map +1 -1
  139. package/cjs/Channel/components/MessageInput.js +20 -18
  140. package/cjs/Channel/components/MessageInput.js.map +1 -1
  141. package/cjs/Channel/components/MessageList.js +30 -28
  142. package/cjs/Channel/components/MessageList.js.map +1 -1
  143. package/cjs/Channel/components/RemoveMessageModal.js +20 -18
  144. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  145. package/cjs/Channel/components/SuggestedMentionList.js +42 -37
  146. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  147. package/cjs/Channel/components/TypingIndicator.js +36 -32
  148. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  149. package/cjs/Channel/components/UnreadCount.js +6 -6
  150. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  151. package/cjs/Channel/context.js +16 -14
  152. package/cjs/Channel/context.js.map +1 -1
  153. package/cjs/Channel.js +28 -26
  154. package/cjs/Channel.js.map +1 -1
  155. package/cjs/ChannelList/components/AddChannel.js +16 -16
  156. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  157. package/cjs/ChannelList/components/ChannelListUI.js +43 -44
  158. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  159. package/cjs/ChannelList/components/ChannelPreview.js +35 -31
  160. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  161. package/cjs/ChannelList/components/ChannelPreviewAction.js +17 -15
  162. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  163. package/cjs/ChannelList/context.js +10 -9
  164. package/cjs/ChannelList/context.js.map +1 -1
  165. package/cjs/ChannelList.js +30 -28
  166. package/cjs/ChannelList.js.map +1 -1
  167. package/cjs/{ChannelListProvider-f910e236.js → ChannelListProvider-7d1c0466.js} +218 -198
  168. package/cjs/ChannelListProvider-7d1c0466.js.map +1 -0
  169. package/cjs/{ChannelProvider-86e2e68c.js → ChannelProvider-a3ec5a56.js} +380 -419
  170. package/cjs/ChannelProvider-a3ec5a56.js.map +1 -0
  171. package/cjs/ChannelSettings/components/ChannelProfile.js +15 -15
  172. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  173. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +22 -22
  174. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  175. package/cjs/ChannelSettings/components/EditDetailsModal.js +21 -17
  176. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  177. package/cjs/ChannelSettings/components/LeaveChannel.js +12 -12
  178. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  179. package/cjs/ChannelSettings/components/{AdminPanel.js → ModerationPanel.js} +86 -140
  180. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -0
  181. package/cjs/ChannelSettings/components/UserListItem.js +18 -17
  182. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  183. package/cjs/ChannelSettings/components/UserPanel.js +18 -18
  184. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  185. package/cjs/ChannelSettings/context.js +10 -10
  186. package/cjs/ChannelSettings/context.js.map +1 -1
  187. package/cjs/ChannelSettings.js +20 -20
  188. package/cjs/CreateChannel/components/CreateChannelUI.js +17 -17
  189. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  190. package/cjs/CreateChannel/components/{InviteMembers.js → InviteUsers.js} +23 -27
  191. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -0
  192. package/cjs/CreateChannel/components/SelectChannelType.js +12 -12
  193. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  194. package/cjs/CreateChannel/context.js +5 -4
  195. package/cjs/CreateChannel/context.js.map +1 -1
  196. package/cjs/CreateChannel.js +16 -16
  197. package/cjs/{CreateChannelProvider-07992a6d.js → CreateChannelProvider-95fbfb06.js} +3 -3
  198. package/cjs/CreateChannelProvider-95fbfb06.js.map +1 -0
  199. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  200. package/cjs/EditUserProfile/context.js +2 -2
  201. package/cjs/EditUserProfile/context.js.map +1 -1
  202. package/cjs/EditUserProfile.js +13 -13
  203. package/cjs/{LocalizationContext-79514649.js → LocalizationContext-5a6a0f67.js} +3 -3
  204. package/cjs/{LocalizationContext-79514649.js.map → LocalizationContext-5a6a0f67.js.map} +1 -1
  205. package/cjs/{MemberList-015c1075.js → MemberList-bfecdd64.js} +46 -67
  206. package/cjs/MemberList-bfecdd64.js.map +1 -0
  207. package/cjs/MessageSearch/components/MessageSearchUI.js +14 -14
  208. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  209. package/cjs/MessageSearch/context.js +55 -60
  210. package/cjs/MessageSearch/context.js.map +1 -1
  211. package/cjs/MessageSearch.js +21 -21
  212. package/cjs/MessageSearch.js.map +1 -1
  213. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  214. package/cjs/OpenChannel/components/OpenChannelHeader.js +16 -14
  215. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  216. package/cjs/OpenChannel/components/OpenChannelInput.js +19 -17
  217. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  218. package/cjs/OpenChannel/components/OpenChannelMessage.js +43 -38
  219. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  220. package/cjs/OpenChannel/components/OpenChannelMessageList.js +37 -36
  221. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  222. package/cjs/OpenChannel/components/OpenChannelUI.js +27 -25
  223. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  224. package/cjs/OpenChannel/context.js +12 -10
  225. package/cjs/OpenChannel/context.js.map +1 -1
  226. package/cjs/OpenChannel.js +27 -25
  227. package/cjs/OpenChannel.js.map +1 -1
  228. package/cjs/{OpenChannelProvider-445f214c.js → OpenChannelProvider-e8247193.js} +629 -694
  229. package/cjs/OpenChannelProvider-e8247193.js.map +1 -0
  230. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +28 -34
  231. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  232. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +14 -14
  233. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  234. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +37 -21
  235. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  236. package/cjs/OpenChannelSettings/components/OperatorUI.js +42 -27
  237. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  238. package/cjs/OpenChannelSettings/components/ParticipantUI.js +28 -55
  239. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  240. package/cjs/OpenChannelSettings/context.js +15 -15
  241. package/cjs/OpenChannelSettings/context.js.map +1 -1
  242. package/cjs/OpenChannelSettings.js +18 -18
  243. package/cjs/SendbirdProvider.js +42 -38
  244. package/cjs/SendbirdProvider.js.map +1 -1
  245. package/cjs/{UserProfileContext-12cfee31.js → UserProfileContext-17c8f75c.js} +1 -1
  246. package/cjs/{UserProfileContext-12cfee31.js.map → UserProfileContext-17c8f75c.js.map} +1 -1
  247. package/cjs/__bundle-7dfccc8c-c3c55861.js +151 -0
  248. package/cjs/__bundle-7dfccc8c-c3c55861.js.map +1 -0
  249. package/cjs/{_rollupPluginBabelHelpers-f802e0e8.js → _rollupPluginBabelHelpers-d984e855.js} +1 -1
  250. package/cjs/{_rollupPluginBabelHelpers-f802e0e8.js.map → _rollupPluginBabelHelpers-d984e855.js.map} +1 -1
  251. package/cjs/{actionTypes-93161807.js → actionTypes-7a330bec.js} +1 -1
  252. package/cjs/{actionTypes-93161807.js.map → actionTypes-7a330bec.js.map} +1 -1
  253. package/cjs/{color-c53ac792.js → color-b30f84a2.js} +1 -1
  254. package/cjs/{color-c53ac792.js.map → color-b30f84a2.js.map} +1 -1
  255. package/cjs/{compareIds-37e8380c.js → compareIds-d8053014.js} +1 -1
  256. package/cjs/{compareIds-37e8380c.js.map → compareIds-d8053014.js.map} +1 -1
  257. package/cjs/{const-3024c719.js → const-2623fae1.js} +1 -1
  258. package/cjs/{const-3024c719.js.map → const-2623fae1.js.map} +1 -1
  259. package/cjs/{const-489c46b6.js → const-6aa26f9f.js} +1 -1
  260. package/cjs/{const-489c46b6.js.map → const-6aa26f9f.js.map} +1 -1
  261. package/cjs/{context-961d5b11.js → context-83ecdafd.js} +2 -2
  262. package/cjs/{context-961d5b11.js.map → context-83ecdafd.js.map} +1 -1
  263. package/cjs/dist/index.css +218 -96
  264. package/cjs/dist/index.css.map +1 -1
  265. package/cjs/groupChannel-e311e26a.js +9 -0
  266. package/cjs/groupChannel-e311e26a.js.map +1 -0
  267. package/cjs/{index-d25a7cbf.js → index-1e14c5b9.js} +4 -4
  268. package/cjs/{index-d25a7cbf.js.map → index-1e14c5b9.js.map} +1 -1
  269. package/cjs/{index-5615eab4.js → index-2537cbc7.js} +4 -4
  270. package/cjs/{index-5615eab4.js.map → index-2537cbc7.js.map} +1 -1
  271. package/cjs/{index-bc563d47.js → index-40d245a3.js} +32 -29
  272. package/cjs/index-40d245a3.js.map +1 -0
  273. package/cjs/{index-5eaebc66.js → index-5e7b82c2.js} +12 -9
  274. package/cjs/index-5e7b82c2.js.map +1 -0
  275. package/cjs/{index-0b2e2c2a.js → index-72479c2a.js} +1 -1
  276. package/cjs/{index-0b2e2c2a.js.map → index-72479c2a.js.map} +1 -1
  277. package/cjs/{index-07623c8b.js → index-ab5d906d.js} +2 -2
  278. package/cjs/{index-07623c8b.js.map → index-ab5d906d.js.map} +1 -1
  279. package/cjs/{index-cb53adf5.js → index-cdcd27bc.js} +2 -2
  280. package/cjs/{index-cb53adf5.js.map → index-cdcd27bc.js.map} +1 -1
  281. package/cjs/{index-d70ac86e.js → index-ce679d41.js} +1 -1
  282. package/cjs/{index-d70ac86e.js.map → index-ce679d41.js.map} +1 -1
  283. package/cjs/{index-a20b40c4.js → index-df05e765.js} +5 -5
  284. package/cjs/index-df05e765.js.map +1 -0
  285. package/cjs/{index-2180f74f.js → index-f9677913.js} +5 -5
  286. package/cjs/index-f9677913.js.map +1 -0
  287. package/cjs/index.js +40 -38
  288. package/cjs/index.js.map +1 -1
  289. package/cjs/openChannel-e9f65946.js +13 -0
  290. package/cjs/openChannel-e9f65946.js.map +1 -0
  291. package/cjs/{openChannelUtils-7fb1abc6.js → openChannelUtils-4b7d2697.js} +10 -5
  292. package/cjs/openChannelUtils-4b7d2697.js.map +1 -0
  293. package/cjs/sendbirdSelectors.js +696 -0
  294. package/cjs/sendbirdSelectors.js.map +1 -0
  295. package/cjs/{stringSet-ae448472.js → stringSet-2f3588b5.js} +1 -1
  296. package/cjs/{stringSet-ae448472.js.map → stringSet-2f3588b5.js.map} +1 -1
  297. package/cjs/{topics-bdbff23e.js → topics-582e38dc.js} +1 -1
  298. package/cjs/{topics-bdbff23e.js.map → topics-582e38dc.js.map} +1 -1
  299. package/cjs/{tslib.es6-a7af7bb8.js → tslib.es6-d9c7aa8b.js} +1 -1
  300. package/cjs/{tslib.es6-a7af7bb8.js.map → tslib.es6-d9c7aa8b.js.map} +1 -1
  301. package/cjs/ui/Accordion.js +4 -4
  302. package/cjs/ui/AccordionGroup.js +2 -2
  303. package/cjs/ui/AccordionGroup.js.map +1 -1
  304. package/cjs/ui/AdminMessage.js +4 -3
  305. package/cjs/ui/AdminMessage.js.map +1 -1
  306. package/cjs/ui/Avatar.js +3 -3
  307. package/cjs/ui/Badge.js +5 -5
  308. package/cjs/ui/Button.js +4 -4
  309. package/cjs/ui/ChannelAvatar.js +8 -8
  310. package/cjs/ui/ChannelAvatar.js.map +1 -1
  311. package/cjs/ui/ChannelPreview.js +28 -21
  312. package/cjs/ui/ChannelPreview.js.map +1 -1
  313. package/cjs/ui/ChatHeader.js +19 -12
  314. package/cjs/ui/ChatHeader.js.map +1 -1
  315. package/cjs/ui/Checkbox.js +1 -1
  316. package/cjs/ui/ConnectionStatus.js +5 -5
  317. package/cjs/ui/ContextMenu.js +9 -30
  318. package/cjs/ui/ContextMenu.js.map +1 -1
  319. package/cjs/ui/DateSeparator.js +5 -5
  320. package/cjs/ui/DateSeparator.js.map +1 -1
  321. package/cjs/ui/Dropdown.js +3 -3
  322. package/cjs/ui/EmojiReactions.js +10 -10
  323. package/cjs/ui/EmojiReactions.js.map +1 -1
  324. package/cjs/ui/FileMessageItemBody.js +6 -6
  325. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  326. package/cjs/ui/FileViewer.js +7 -7
  327. package/cjs/ui/Icon.js +5 -1
  328. package/cjs/ui/Icon.js.map +1 -1
  329. package/cjs/ui/IconButton.js +1 -1
  330. package/cjs/ui/ImageRenderer.js +1 -1
  331. package/cjs/ui/Input.js +3 -3
  332. package/cjs/ui/Label.js +3 -3
  333. package/cjs/ui/LinkLabel.js +3 -3
  334. package/cjs/ui/Loader.js +1 -1
  335. package/cjs/ui/MentionLabel.js +19 -17
  336. package/cjs/ui/MentionLabel.js.map +1 -1
  337. package/cjs/ui/MentionUserLabel.js +1 -1
  338. package/cjs/ui/MentionUserLabel.js.map +1 -1
  339. package/cjs/ui/MessageContent.js +52 -47
  340. package/cjs/ui/MessageContent.js.map +1 -1
  341. package/cjs/ui/MessageInput.js +10 -10
  342. package/cjs/ui/MessageItemMenu.js +14 -18
  343. package/cjs/ui/MessageItemMenu.js.map +1 -1
  344. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  345. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  346. package/cjs/ui/MessageSearchFileItem.js +12 -11
  347. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  348. package/cjs/ui/MessageSearchItem.js +10 -10
  349. package/cjs/ui/MessageSearchItem.js.map +1 -1
  350. package/cjs/ui/MessageStatus.js +11 -11
  351. package/cjs/ui/MessageStatus.js.map +1 -1
  352. package/cjs/ui/Modal.js +8 -8
  353. package/cjs/ui/MutedAvatarOverlay.js +7 -7
  354. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  355. package/cjs/ui/OGMessageItemBody.js +17 -16
  356. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  357. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  358. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  359. package/cjs/ui/OpenChannelAvatar.js +11 -11
  360. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  361. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  362. package/cjs/ui/OpenchannelFileMessage.js +16 -15
  363. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  364. package/cjs/ui/OpenchannelOGMessage.js +16 -15
  365. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  366. package/cjs/ui/OpenchannelThumbnailMessage.js +17 -16
  367. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  368. package/cjs/ui/OpenchannelUserMessage.js +17 -16
  369. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  370. package/cjs/ui/PlaceHolder.js +6 -6
  371. package/cjs/ui/QuoteMessage.js +24 -24
  372. package/cjs/ui/QuoteMessage.js.map +1 -1
  373. package/cjs/ui/QuoteMessageInput.js +11 -13
  374. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  375. package/cjs/ui/ReactionBadge.js +3 -3
  376. package/cjs/ui/ReactionButton.js +1 -1
  377. package/cjs/ui/SortByRow.js +1 -1
  378. package/cjs/ui/TextButton.js +2 -2
  379. package/cjs/ui/TextMessageItemBody.js +16 -15
  380. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  381. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  382. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  383. package/cjs/ui/Tooltip.js +3 -3
  384. package/cjs/ui/TooltipWrapper.js +1 -1
  385. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  386. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  387. package/cjs/ui/UserListItem.js +13 -12
  388. package/cjs/ui/UserListItem.js.map +1 -1
  389. package/cjs/ui/UserProfile.js +17 -16
  390. package/cjs/ui/UserProfile.js.map +1 -1
  391. package/cjs/{index-4e8b61f7.js → ui/Word.js} +31 -10
  392. package/cjs/ui/Word.js.map +1 -0
  393. package/cjs/useSendbirdStateContext.js +1 -1
  394. package/cjs/useSendbirdStateContext.js.map +1 -1
  395. package/cjs/{utils-0d5ecf05.js → utils-031aba48.js} +1 -1
  396. package/cjs/{utils-0d5ecf05.js.map → utils-031aba48.js.map} +1 -1
  397. package/cjs/{utils-03155980.js → utils-510b93ac.js} +8 -8
  398. package/cjs/utils-510b93ac.js.map +1 -0
  399. package/cjs/{utils-139469a5.js → utils-689065e6.js} +1 -1
  400. package/cjs/{utils-139469a5.js.map → utils-689065e6.js.map} +1 -1
  401. package/cjs/{uuid-03009a31.js → uuid-099485ae.js} +1 -1
  402. package/cjs/{uuid-03009a31.js.map → uuid-099485ae.js.map} +1 -1
  403. package/cjs/withSendBird.js +1 -1
  404. package/{color-6b259e40.js → color-9bf8c922.js} +1 -1
  405. package/{color-6b259e40.js.map → color-9bf8c922.js.map} +1 -1
  406. package/{compareIds-982972e8.js → compareIds-b78d7cd6.js} +1 -1
  407. package/{compareIds-982972e8.js.map → compareIds-b78d7cd6.js.map} +1 -1
  408. package/{const-da3968a5.js → const-40b58d8b.js} +1 -1
  409. package/{const-da3968a5.js.map → const-40b58d8b.js.map} +1 -1
  410. package/{const-e3d1e0ec.js → const-99800b8d.js} +1 -1
  411. package/{const-e3d1e0ec.js.map → const-99800b8d.js.map} +1 -1
  412. package/{context-3d5505d0.js → context-bedea43b.js} +2 -2
  413. package/{context-3d5505d0.js.map → context-bedea43b.js.map} +1 -1
  414. package/dist/index.css +218 -96
  415. package/dist/index.css.map +1 -1
  416. package/groupChannel-96502de7.js +6 -0
  417. package/groupChannel-96502de7.js.map +1 -0
  418. package/{index-94489c17.js → index-13729368.js} +1 -1
  419. package/{index-94489c17.js.map → index-13729368.js.map} +1 -1
  420. package/{index-95677caf.js → index-16bed610.js} +2 -2
  421. package/{index-95677caf.js.map → index-16bed610.js.map} +1 -1
  422. package/{index-db6a4860.js → index-1d112ad4.js} +1 -1
  423. package/{index-db6a4860.js.map → index-1d112ad4.js.map} +1 -1
  424. package/{index-065ef420.js → index-71ad343b.js} +12 -9
  425. package/index-71ad343b.js.map +1 -0
  426. package/{index-17cf7808.js → index-71e2bf26.js} +5 -5
  427. package/index-71e2bf26.js.map +1 -0
  428. package/{index-902c2068.js → index-8e6a607b.js} +33 -30
  429. package/index-8e6a607b.js.map +1 -0
  430. package/{index-a755675d.js → index-a5e8849a.js} +4 -4
  431. package/{index-a755675d.js.map → index-a5e8849a.js.map} +1 -1
  432. package/{index-9deb1389.js → index-b574cc8e.js} +5 -5
  433. package/index-b574cc8e.js.map +1 -0
  434. package/{index-691dc8da.js → index-c95d2aab.js} +4 -4
  435. package/{index-691dc8da.js.map → index-c95d2aab.js.map} +1 -1
  436. package/{index-92160328.js → index-ccd99cfe.js} +2 -2
  437. package/{index-92160328.js.map → index-ccd99cfe.js.map} +1 -1
  438. package/index.d.ts +1021 -897
  439. package/index.d.ts_bkup +1883 -0
  440. package/index.js +39 -37
  441. package/index.js.map +1 -1
  442. package/openChannel-dd5c9246.js +8 -0
  443. package/openChannel-dd5c9246.js.map +1 -0
  444. package/{openChannelUtils-2cd370a7.js → openChannelUtils-211a679a.js} +10 -5
  445. package/openChannelUtils-211a679a.js.map +1 -0
  446. package/package.json +5 -5
  447. package/sendbirdSelectors.js +671 -0
  448. package/sendbirdSelectors.js.map +1 -0
  449. package/{stringSet-5a85ff4b.js → stringSet-d3a8a2a0.js} +1 -1
  450. package/{stringSet-5a85ff4b.js.map → stringSet-d3a8a2a0.js.map} +1 -1
  451. package/{topics-24a660ee.js → topics-f941ba80.js} +2 -2
  452. package/{topics-24a660ee.js.map → topics-f941ba80.js.map} +1 -1
  453. package/{tslib.es6-2c4d01e9.js → tslib.es6-a7db0cc5.js} +1 -1
  454. package/{tslib.es6-2c4d01e9.js.map → tslib.es6-a7db0cc5.js.map} +1 -1
  455. package/ui/Accordion.js +4 -4
  456. package/ui/AccordionGroup.js +2 -2
  457. package/ui/AccordionGroup.js.map +1 -1
  458. package/ui/AdminMessage.js +4 -3
  459. package/ui/AdminMessage.js.map +1 -1
  460. package/ui/Avatar.js +3 -3
  461. package/ui/Badge.js +5 -5
  462. package/ui/Button.js +4 -4
  463. package/ui/ChannelAvatar.js +8 -8
  464. package/ui/ChannelAvatar.js.map +1 -1
  465. package/ui/ChannelPreview.js +28 -21
  466. package/ui/ChannelPreview.js.map +1 -1
  467. package/ui/ChatHeader.js +19 -12
  468. package/ui/ChatHeader.js.map +1 -1
  469. package/ui/Checkbox.js +1 -1
  470. package/ui/ConnectionStatus.js +5 -5
  471. package/ui/ContextMenu.js +9 -30
  472. package/ui/ContextMenu.js.map +1 -1
  473. package/ui/DateSeparator.js +5 -5
  474. package/ui/DateSeparator.js.map +1 -1
  475. package/ui/Dropdown.js +3 -3
  476. package/ui/EmojiReactions.js +10 -10
  477. package/ui/EmojiReactions.js.map +1 -1
  478. package/ui/FileMessageItemBody.js +6 -6
  479. package/ui/FileMessageItemBody.js.map +1 -1
  480. package/ui/FileViewer.js +7 -7
  481. package/ui/Icon.js +5 -1
  482. package/ui/Icon.js.map +1 -1
  483. package/ui/IconButton.js +1 -1
  484. package/ui/ImageRenderer.js +1 -1
  485. package/ui/Input.js +3 -3
  486. package/ui/Label.js +3 -3
  487. package/ui/LinkLabel.js +3 -3
  488. package/ui/Loader.js +1 -1
  489. package/ui/MentionLabel.js +19 -17
  490. package/ui/MentionLabel.js.map +1 -1
  491. package/ui/MentionUserLabel.js +1 -1
  492. package/ui/MentionUserLabel.js.map +1 -1
  493. package/ui/MessageContent.js +54 -49
  494. package/ui/MessageContent.js.map +1 -1
  495. package/ui/MessageInput.js +10 -10
  496. package/ui/MessageItemMenu.js +14 -18
  497. package/ui/MessageItemMenu.js.map +1 -1
  498. package/ui/MessageItemReactionMenu.js +5 -5
  499. package/ui/MessageItemReactionMenu.js.map +1 -1
  500. package/ui/MessageSearchFileItem.js +12 -11
  501. package/ui/MessageSearchFileItem.js.map +1 -1
  502. package/ui/MessageSearchItem.js +10 -10
  503. package/ui/MessageSearchItem.js.map +1 -1
  504. package/ui/MessageStatus.js +11 -11
  505. package/ui/MessageStatus.js.map +1 -1
  506. package/ui/Modal.js +8 -8
  507. package/ui/MutedAvatarOverlay.js +7 -7
  508. package/ui/MutedAvatarOverlay.js.map +1 -1
  509. package/ui/OGMessageItemBody.js +15 -14
  510. package/ui/OGMessageItemBody.js.map +1 -1
  511. package/ui/OpenChannelAdminMessage.js +4 -4
  512. package/ui/OpenChannelAdminMessage.js.map +1 -1
  513. package/ui/OpenChannelAvatar.js +11 -11
  514. package/ui/OpenChannelAvatar.js.map +1 -1
  515. package/ui/OpenchannelConversationHeader.js +7 -7
  516. package/ui/OpenchannelFileMessage.js +16 -15
  517. package/ui/OpenchannelFileMessage.js.map +1 -1
  518. package/ui/OpenchannelOGMessage.js +16 -15
  519. package/ui/OpenchannelOGMessage.js.map +1 -1
  520. package/ui/OpenchannelThumbnailMessage.js +17 -16
  521. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  522. package/ui/OpenchannelUserMessage.js +17 -16
  523. package/ui/OpenchannelUserMessage.js.map +1 -1
  524. package/ui/PlaceHolder.js +6 -6
  525. package/ui/QuoteMessage.js +24 -24
  526. package/ui/QuoteMessage.js.map +1 -1
  527. package/ui/QuoteMessageInput.js +11 -13
  528. package/ui/QuoteMessageInput.js.map +1 -1
  529. package/ui/ReactionBadge.js +3 -3
  530. package/ui/ReactionButton.js +1 -1
  531. package/ui/SortByRow.js +1 -1
  532. package/ui/TextButton.js +2 -2
  533. package/ui/TextMessageItemBody.js +15 -14
  534. package/ui/TextMessageItemBody.js.map +1 -1
  535. package/ui/ThumbnailMessageItemBody.js +3 -3
  536. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  537. package/ui/Tooltip.js +3 -3
  538. package/ui/TooltipWrapper.js +1 -1
  539. package/ui/UnknownMessageItemBody.js +7 -7
  540. package/ui/UnknownMessageItemBody.js.map +1 -1
  541. package/ui/UserListItem.js +13 -12
  542. package/ui/UserListItem.js.map +1 -1
  543. package/ui/UserProfile.js +16 -15
  544. package/ui/UserProfile.js.map +1 -1
  545. package/ui/Word.js +70 -0
  546. package/ui/Word.js.map +1 -0
  547. package/useSendbirdStateContext.js +1 -1
  548. package/useSendbirdStateContext.js.map +1 -1
  549. package/{utils-57c79308.js → utils-2e3623c0.js} +1 -1
  550. package/{utils-57c79308.js.map → utils-2e3623c0.js.map} +1 -1
  551. package/{utils-85d3d94c.js → utils-cadde06a.js} +1 -1
  552. package/{utils-85d3d94c.js.map → utils-cadde06a.js.map} +1 -1
  553. package/{utils-b3b6f503.js → utils-d9325ddf.js} +8 -8
  554. package/utils-d9325ddf.js.map +1 -0
  555. package/{uuid-0ab81e67.js → uuid-748dae7a.js} +1 -1
  556. package/{uuid-0ab81e67.js.map → uuid-748dae7a.js.map} +1 -1
  557. package/withSendBird.js +1 -1
  558. package/ChannelListProvider-737ee36f.js.map +0 -1
  559. package/ChannelProvider-34834493.js.map +0 -1
  560. package/ChannelSettings/components/AdminPanel.js.map +0 -1
  561. package/CreateChannel/components/InviteMembers.js.map +0 -1
  562. package/CreateChannelProvider-3d3e4a7c.js.map +0 -1
  563. package/MemberList-6e33a562.js.map +0 -1
  564. package/OpenChannelProvider-9ef0d52a.js.map +0 -1
  565. package/cjs/ChannelListProvider-f910e236.js.map +0 -1
  566. package/cjs/ChannelProvider-86e2e68c.js.map +0 -1
  567. package/cjs/ChannelSettings/components/AdminPanel.js.map +0 -1
  568. package/cjs/CreateChannel/components/InviteMembers.js.map +0 -1
  569. package/cjs/CreateChannelProvider-07992a6d.js.map +0 -1
  570. package/cjs/MemberList-015c1075.js.map +0 -1
  571. package/cjs/OpenChannelProvider-445f214c.js.map +0 -1
  572. package/cjs/index-2180f74f.js.map +0 -1
  573. package/cjs/index-4e8b61f7.js.map +0 -1
  574. package/cjs/index-5eaebc66.js.map +0 -1
  575. package/cjs/index-a20b40c4.js.map +0 -1
  576. package/cjs/index-bc563d47.js.map +0 -1
  577. package/cjs/openChannelUtils-7fb1abc6.js.map +0 -1
  578. package/cjs/sendBirdSelectors.js +0 -741
  579. package/cjs/sendBirdSelectors.js.map +0 -1
  580. package/cjs/ui/OpenChannelMessageContent.js +0 -14
  581. package/cjs/ui/OpenChannelMessageContent.js.map +0 -1
  582. package/cjs/utils-03155980.js.map +0 -1
  583. package/index-065ef420.js.map +0 -1
  584. package/index-17cf7808.js.map +0 -1
  585. package/index-81a93b05.js +0 -49
  586. package/index-81a93b05.js.map +0 -1
  587. package/index-902c2068.js.map +0 -1
  588. package/index-9deb1389.js.map +0 -1
  589. package/openChannelUtils-2cd370a7.js.map +0 -1
  590. package/sendBirdSelectors.js +0 -713
  591. package/sendBirdSelectors.js.map +0 -1
  592. package/ui/OpenChannelMessageContent.js +0 -8
  593. package/ui/OpenChannelMessageContent.js.map +0 -1
  594. package/utils-b3b6f503.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemberList-01d3c8bf.js","sources":["../src/smart-components/ChannelSettings/components/ModerationPanel/MembersModal.tsx","../src/smart-components/ChannelSettings/components/ModerationPanel/InviteUsersModal.tsx","../src/smart-components/ChannelSettings/components/ModerationPanel/MemberList.tsx"],"sourcesContent":["import React, {\n ReactElement,\n useEffect,\n useState,\n} from 'react'\n\nimport Modal from '../../../../ui/Modal';\nimport UserListItem from '../../../../ui/UserListItem';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\nimport { noop } from '../../../../utils/utils';\n\nimport { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n}\n\nexport default function MembersModal({ onCancel }: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [memberQuery, setMemberQuery] = useState(null);\n\n const { channel } = useChannelSettingsContext();\n const state = useSendbirdStateContext();\n const currentUser = state?.config?.userId;\n\n useEffect(() => {\n const memberListQuery = channel?.createMemberListQuery({\n limit: 20,\n });\n memberListQuery.next().then((members) => {\n setMembers(members);\n });\n setMemberQuery(memberListQuery);\n }, [])\n return (\n <div>\n <Modal\n hideFooter\n onCancel={() => onCancel()}\n onSubmit={noop}\n titleText=\"All Members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = memberQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n\n if (hasNext && fetchMore) {\n memberQuery.next().then((o) => {\n setMembers([\n ...members,\n ...o,\n ])\n });\n }\n }}\n >\n { members.map((member) => (\n <UserListItem\n user={member}\n key={member.userId}\n currentUser={currentUser}\n action={({ parentRef, actionRef }) => (\n <>\n {channel?.myRole === 'operator' && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if ((member.role !== 'operator')) {\n channel?.addOperators([member.userId]).then(() => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n role: 'operator',\n };\n }\n return m;\n }));\n closeDropdown();\n });\n } else {\n channel?.removeOperators([member.userId]).then(() => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n role: '',\n };\n }\n return m;\n }));\n closeDropdown();\n });\n }\n }}\n >\n { member.role !== 'operator' ? 'Register as operator' : 'Unregister operator'}\n </MenuItem>\n {\n // No muted members in broadcast channel\n !channel?.isBroadcast && (\n <MenuItem\n onClick={() => {\n if (member.isMuted) {\n channel?.unmuteUser(member).then(() => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n isMuted: false,\n };\n }\n return m;\n }));\n closeDropdown();\n })\n } else {\n channel?.muteUser(member).then(() => {\n setMembers(members.map(m => {\n if(m.userId === member.userId) {\n return {\n ...member,\n isMuted: true,\n };\n }\n return m;\n }));\n closeDropdown();\n });\n }\n }}\n >\n { member.isMuted ? 'Unmute' : 'Mute' }\n </MenuItem>\n )\n }\n <MenuItem\n onClick={() => {\n channel?.banUser(member, -1, '').then(() => {\n setMembers(members.filter(({ userId }) => {\n return userId !== member.userId;\n }));\n });\n }}\n >\n Ban\n </MenuItem>\n </MenuItems>\n )}\n />\n )}\n </>\n )}\n />\n ))}\n </div>\n </Modal>\n </div>\n );\n}\n","import React, { ReactElement, useEffect, useState } from 'react'\n\nimport Modal from '../../../../ui/Modal';\nimport { Type as ButtonType } from '../../../../ui/Button/type';\nimport UserListItem from '../../../../ui/UserListItem';\nimport { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\ninterface Props {\n onCancel(): void;\n onSubmit(members: Array<string>): void;\n}\n\nexport default function InviteUsers({\n onCancel,\n onSubmit,\n}: Props): ReactElement {\n const [members, setMembers] = useState([]);\n const [selectedMembers, setSelectedMembers] = useState({});\n const [userQuery, setUserQuery] = useState(null);\n\n const state = useSendbirdStateContext();\n const sdk = state?.stores?.sdkStore?.sdk;\n\n const { channel } = useChannelSettingsContext();\n\n useEffect(() => {\n const userListQuery = sdk?.createApplicationUserListQuery();\n userListQuery.next().then((members) => {\n setMembers(members);\n });\n setUserQuery(userListQuery);\n }, [sdk])\n return (\n <div>\n <Modal\n disabled={Object.keys(selectedMembers).length === 0}\n submitText=\"Invite\"\n type={ButtonType.PRIMARY}\n onCancel={() => onCancel()}\n onSubmit={() => {\n const members = Object.keys(selectedMembers).filter((m) => selectedMembers[m]);\n channel?.inviteWithUserIds(members).then(() => {\n onSubmit(members);\n });\n }}\n titleText=\"Select members\"\n >\n <div\n className=\"sendbird-more-members__popup-scroll\"\n onScroll={(e) => {\n const { hasNext } = userQuery;\n const target = e.target as HTMLTextAreaElement;\n const fetchMore = (\n target.clientHeight + target.scrollTop === target.scrollHeight\n );\n if (hasNext && fetchMore) {\n userQuery.next().then((users) => {\n setMembers([\n ...members,\n ...users,\n ])\n });\n }\n }}\n >\n <div className=\"sendbird-more-members__popup-scroll__inner\">\n { members.map((member) => (\n <UserListItem\n checkBox\n checked={selectedMembers[member.userId]}\n onChange={\n (event) => {\n const modifiedSelectedMembers = {\n ...selectedMembers,\n [event.target.id]: event.target.checked,\n };\n if (!event.target.checked) {\n delete modifiedSelectedMembers[event.target.id];\n }\n setSelectedMembers(modifiedSelectedMembers);\n }\n }\n user={member}\n key={member.userId}\n />\n ))}\n </div>\n </div>\n </Modal>\n </div>\n );\n}\n","import React, {\n ReactElement,\n useEffect,\n useState,\n useCallback,\n} from 'react';\n\nimport Button, { ButtonTypes, ButtonSizes } from '../../../../ui/Button';\nimport IconButton from '../../../../ui/IconButton';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport ContextMenu, { MenuItem, MenuItems } from '../../../../ui/ContextMenu';\n\nimport UserListItem from '../UserListItem';\nimport MembersModal from './MembersModal';\nimport InviteUsers from './InviteUsersModal';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannelSettingsContext } from '../../context/ChannelSettingsProvider';\nimport uuidv4 from '../../../../utils/uuid';\n\nexport const MemberList = (): ReactElement => {\n const [members, setMembers] = useState([]);\n const [hasNext, setHasNext] = useState(false);\n const [showAllMembers, setShowAllMembers] = useState(false);\n const [showInviteUsers, setShowInviteUsers] = useState(false);\n\n const state = useSendbirdStateContext();\n const {\n channel,\n setChannelUpdateId,\n } = useChannelSettingsContext();\n\n const sdk = state?.stores?.sdkStore?.sdk;\n const userId = state?.config?.userId;\n\n useEffect(() => {\n if (!channel) {\n setMembers([]);\n return;\n }\n\n const memberUserListQuery = channel?.createMemberListQuery({\n limit: 10,\n });\n memberUserListQuery.next().then((members) => {\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n });\n }, [channel]);\n\n const refershList = useCallback(\n () => {\n if (!channel) {\n setMembers([]);\n return;\n }\n const memberUserListQuery = channel?.createMemberListQuery({\n limit: 10,\n });\n memberUserListQuery.next().then((members) => {\n setMembers(members);\n setHasNext(memberUserListQuery.hasNext);\n setChannelUpdateId(uuidv4());\n });\n },\n [channel],\n );\n\n return (\n <>\n {\n members.map((member) => (\n <UserListItem\n key={member.userId}\n user={member}\n currentUser={sdk.currentUser.userId}\n action={\n (userId !== member.userId)\n ? ({ actionRef, parentRef }) => (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <IconButton\n className=\"sendbird-user-message__more__menu\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n />\n </IconButton>\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentContainRef={parentRef}\n parentRef={actionRef} // for catching location(x, y) of MenuItems\n closeDropdown={closeDropdown}\n openLeft\n >\n <MenuItem\n onClick={() => {\n if ((member.role !== 'operator')) {\n channel?.addOperators([member.userId]).then(() => {\n refershList();\n closeDropdown();\n });\n } else {\n channel?.removeOperators([member.userId]).then(() => {\n refershList();\n closeDropdown();\n });\n }\n }}\n >\n {member.role !== 'operator' ? 'Register as operator' : 'Unregister operator'}\n </MenuItem>\n {\n // No muted members in broadcast channel\n !channel?.isBroadcast && (\n <MenuItem\n onClick={() => {\n if (member.isMuted) {\n channel?.unmuteUser(member).then(() => {\n refershList();\n closeDropdown();\n })\n } else {\n channel?.muteUser(member).then(() => {\n refershList();\n closeDropdown();\n });\n }\n }}\n >\n { member.isMuted ? 'Unmute' : 'Mute'}\n </MenuItem>\n )\n }\n <MenuItem\n onClick={() => {\n channel?.banUser(member, -1, '').then(() => {\n refershList();\n closeDropdown();\n });\n }}\n >\n Ban\n </MenuItem>\n </MenuItems>\n )}\n />\n )\n : null\n }\n />\n ))\n }\n <div\n className=\"sendbird-channel-settings-accordion__footer\"\n >\n {\n hasNext && (\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowAllMembers(true)}\n >\n All members\n </Button>\n )\n }\n <Button\n type={ButtonTypes.SECONDARY}\n size={ButtonSizes.SMALL}\n onClick={() => setShowInviteUsers(true)}\n >\n Invite members\n </Button>\n </div>\n {\n showAllMembers && (\n <MembersModal\n onCancel={() => {\n setShowAllMembers(false);\n refershList();\n }}\n />\n )\n }\n {\n showInviteUsers && (\n <InviteUsers\n onSubmit={() => {\n setShowInviteUsers(false);\n refershList();\n }}\n onCancel={() => setShowInviteUsers(false)}\n />\n )\n }\n </>\n );\n}\n\nexport default MemberList;\n"],"names":["MembersModal","_a","onCancel","_c","useState","members","setMembers","_d","memberQuery","setMemberQuery","channel","useChannelSettingsContext","state","useSendbirdStateContext","currentUser","config","userId","useEffect","memberListQuery","createMemberListQuery","limit","next","then","React","noop","e","hasNext","target","fetchMore","clientHeight","scrollTop","scrollHeight","o","map","member","parentRef","actionRef","myRole","toggleDropdown","IconTypes","MORE","IconColors","CONTENT_INVERSE","closeDropdown","role","addOperators","m","removeOperators","isBroadcast","isMuted","unmuteUser","muteUser","banUser","filter","InviteUsers","onSubmit","_e","selectedMembers","setSelectedMembers","_f","userQuery","setUserQuery","sdk","stores","sdkStore","userListQuery","createApplicationUserListQuery","Object","keys","length","ButtonType","PRIMARY","inviteWithUserIds","users","event","modifiedSelectedMembers","id","checked","MemberList","setHasNext","showAllMembers","setShowAllMembers","_g","showInviteUsers","setShowInviteUsers","_h","setChannelUpdateId","memberUserListQuery","refershList","useCallback","uuidv4","UserListItem","ButtonTypes","SECONDARY","ButtonSizes","SMALL"],"mappings":"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"}
@@ -1,24 +1,24 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { a as LocalizationContext } from '../../LocalizationContext-5b0a9339.js';
3
- import { useMessageSearch } from '../context.js';
2
+ import { a as LocalizationContext } from '../../LocalizationContext-fb3dafcd.js';
3
+ import { useMessageSearchContext } from '../context.js';
4
4
  import MessageSearchItem from '../../ui/MessageSearchItem.js';
5
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-691dc8da.js';
5
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-c95d2aab.js';
6
6
  import MessageSearchFileItem from '../../ui/MessageSearchFileItem.js';
7
- import '../../stringSet-5a85ff4b.js';
8
- import '../../index-94489c17.js';
7
+ import '../../stringSet-d3a8a2a0.js';
8
+ import '../../index-13729368.js';
9
9
  import '../../useSendbirdStateContext.js';
10
10
  import '../../withSendBird.js';
11
- import '../../_rollupPluginBabelHelpers-d10f91b9.js';
12
- import '../../tslib.es6-2c4d01e9.js';
13
- import '../../index-92160328.js';
14
- import '../../index-a755675d.js';
15
- import '../../index-95677caf.js';
11
+ import '../../_rollupPluginBabelHelpers-084fb589.js';
12
+ import '../../tslib.es6-a7db0cc5.js';
13
+ import '../../index-ccd99cfe.js';
14
+ import '../../index-a5e8849a.js';
15
+ import '../../index-16bed610.js';
16
16
  import '../../ui/Avatar.js';
17
17
  import '../../ui/ImageRenderer.js';
18
18
  import 'prop-types';
19
19
  import '../../ui/Icon.js';
20
- import '../../uuid-0ab81e67.js';
21
- import '../../index-17cf7808.js';
20
+ import '../../uuid-748dae7a.js';
21
+ import '../../index-71e2bf26.js';
22
22
  import '../../ui/Loader.js';
23
23
 
24
24
  var COMPONENT_CLASS_NAME = 'sendbird-message-search';
@@ -29,7 +29,7 @@ var MessageSearchUI = function MessageSearchUI(_a) {
29
29
  renderPlaceHolderEmptyList = _a.renderPlaceHolderEmptyList,
30
30
  renderSearchItem = _a.renderSearchItem;
31
31
 
32
- var _b = useMessageSearch(),
32
+ var _b = useMessageSearchContext(),
33
33
  isInvalid = _b.isInvalid,
34
34
  searchString = _b.searchString,
35
35
  requestString = _b.requestString,
@@ -121,7 +121,7 @@ var MessageSearchUI = function MessageSearchUI(_a) {
121
121
 
122
122
  if (message.messageType === 'file') {
123
123
  return /*#__PURE__*/React__default.createElement(MessageSearchFileItem, {
124
- className: COMPONENT_CLASS_NAME + "__message-search-item",
124
+ className: "".concat(COMPONENT_CLASS_NAME, "__message-search-item"),
125
125
  message: message,
126
126
  key: message.messageId,
127
127
  selected: selectedMessageId === message.messageId,
@@ -133,7 +133,7 @@ var MessageSearchUI = function MessageSearchUI(_a) {
133
133
  }
134
134
 
135
135
  return /*#__PURE__*/React__default.createElement(MessageSearchItem, {
136
- className: COMPONENT_CLASS_NAME + "__message-search-item",
136
+ className: "".concat(COMPONENT_CLASS_NAME, "__message-search-item"),
137
137
  message: message,
138
138
  key: message.messageId,
139
139
  selected: selectedMessageId === message.messageId,
@@ -1 +1 @@
1
- {"version":3,"file":"MessageSearchUI.js","sources":["../../../src/smart-components/MessageSearch/components/MessageSearchUI/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport './index.scss';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useMessageSearch } from '../../context/MessageSearchProvider';\n\nimport MessageSearchItem from '../../../../ui/MessageSearchItem';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport MessageSearchFileItem from '../../../../ui/MessageSearchFileItem';\nimport { ClientSentMessages } from '../../../../types';\n\n\nconst COMPONENT_CLASS_NAME = 'sendbird-message-search';\n\nexport interface MessageSearchUIProps {\n renderPlaceHolderError?: (props: void) => React.ReactNode;\n renderPlaceHolderLoading?: (props: void) => React.ReactNode;\n renderPlaceHolderNoString?: (props: void) => React.ReactNode;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;\n renderSearchItem?(\n {\n message,\n onResultClick,\n }: {\n message: ClientSentMessages,\n onResultClick?: (message: ClientSentMessages) => void,\n }\n ): JSX.Element;\n}\n\nexport const MessageSearchUI: React.FC<MessageSearchUIProps> = ({\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderNoString,\n renderPlaceHolderEmptyList,\n renderSearchItem,\n}: MessageSearchUIProps) => {\n const {\n isInvalid,\n searchString,\n requestString,\n currentChannel,\n retryCount,\n setRetryCount,\n loading,\n scrollRef,\n hasMoreResult,\n onScroll,\n allMessages,\n onResultClick,\n selectedMessageId,\n setSelectedMessageId,\n } = useMessageSearch();\n\n const { stringSet } = useContext(LocalizationContext);\n\n const handleRetryToConnect = () => {\n setRetryCount(retryCount + 1);\n };\n\n const handleOnScroll = (e) => {\n const scrollElement = e.target;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = scrollElement;\n\n if (!hasMoreResult) {\n return;\n }\n if (scrollTop + clientHeight >= scrollHeight - 1) {\n onScroll(() => {\n // after load more searched messages\n });\n }\n };\n\n const getChannelName = () => {\n if (currentChannel && currentChannel?.name && currentChannel?.name !== 'Group Channel') {\n return currentChannel?.name;\n }\n if (currentChannel && (currentChannel?.name === 'Group Channel' || !currentChannel?.name)) {\n return currentChannel.members.map((member) => member.nickname || stringSet.NO_NAME).join(', ');\n }\n return stringSet.NO_TITLE;\n };\n\n if (isInvalid && searchString && requestString) {\n return renderPlaceHolderError?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={handleRetryToConnect}\n />\n </div>\n );\n }\n\n if (loading && searchString && requestString) {\n return renderPlaceHolderLoading?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder type={PlaceHolderTypes.SEARCHING} />\n </div>\n );\n }\n\n if (!searchString) {\n return renderPlaceHolderNoString?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder\n type={PlaceHolderTypes.SEARCH_IN}\n searchInString={getChannelName()}\n />\n </div>\n );\n }\n\n return (\n <div\n className={COMPONENT_CLASS_NAME}\n onScroll={handleOnScroll}\n ref={scrollRef}\n >\n {\n (allMessages.length > 0)\n ? (\n allMessages.map((message) => {\n if (renderSearchItem) {\n return renderSearchItem({ message, onResultClick });\n }\n if (message.messageType === 'file') {\n return (\n <MessageSearchFileItem\n className={`${COMPONENT_CLASS_NAME}__message-search-item`}\n message={message}\n key={message.messageId}\n selected={(selectedMessageId === message.messageId)}\n onClick={() => {\n onResultClick(message);\n setSelectedMessageId(message.messageId);\n }}\n />\n );\n }\n return (\n <MessageSearchItem\n className={`${COMPONENT_CLASS_NAME}__message-search-item`}\n message={message}\n key={message.messageId}\n selected={(selectedMessageId === message.messageId)}\n onClick={() => {\n onResultClick(message);\n setSelectedMessageId(message.messageId);\n }}\n />\n );\n })\n )\n : renderPlaceHolderEmptyList?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_RESULTS} />\n )\n }\n </div>\n );\n};\n\nexport default MessageSearchUI;\n"],"names":["COMPONENT_CLASS_NAME","MessageSearchUI","_a","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderNoString","renderPlaceHolderEmptyList","renderSearchItem","_b","useMessageSearch","isInvalid","searchString","requestString","currentChannel","retryCount","setRetryCount","loading","scrollRef","hasMoreResult","onScroll","allMessages","onResultClick","selectedMessageId","setSelectedMessageId","stringSet","useContext","LocalizationContext","handleRetryToConnect","handleOnScroll","e","scrollElement","target","scrollTop","scrollHeight","clientHeight","getChannelName","name","members","map","member","nickname","NO_NAME","join","NO_TITLE","React","PlaceHolderTypes","WRONG","SEARCHING","SEARCH_IN","length","message","messageType","messageId","NO_RESULTS"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAMA,oBAAoB,GAAG,yBAA7B;IAkBaC,eAAe,GAAmC,SAAlDA,eAAkD,CAACC,EAAD;MAC7DC,sBAAsB;MACtBC,wBAAwB;MACxBC,yBAAyB;MACzBC,0BAA0B;MAC1BC,gBAAgB;;AAEV,MAAAC,KAeFC,gBAAgB,EAfd;AAAA,MACJC,SAAS,eADL;AAAA,MAEJC,YAAY,kBAFR;AAAA,MAGJC,aAAa,mBAHT;AAAA,MAIJC,cAAc,oBAJV;AAAA,MAKJC,UAAU,gBALN;AAAA,MAMJC,aAAa,mBANT;AAAA,MAOJC,OAAO,aAPH;AAAA,MAQJC,SAAS,eARL;AAAA,MASJC,aAAa,mBATT;AAAA,MAUJC,QAAQ,cAVJ;AAAA,MAWJC,WAAW,iBAXP;AAAA,MAYJC,aAAa,mBAZT;AAAA,MAaJC,iBAAiB,uBAbb;AAAA,MAcJC,oBAAoB,0BAdhB;;AAiBE,MAAAC,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd;;AAER,MAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB;AAC3BZ,IAAAA,aAAa,CAACD,UAAU,GAAG,CAAd,CAAb;AACD,GAFD;;AAIA,MAAMc,cAAc,GAAG,SAAjBA,cAAiB,CAACC,CAAD;AACrB,QAAMC,aAAa,GAAGD,CAAC,CAACE,MAAxB;AAEE,QAAAC,SAAS,GAGPF,aAAa,UAHf;AAAA,QACAG,YAAY,GAEVH,aAAa,aAHf;AAAA,QAEAI,YAAY,GACVJ,aAAa,aAHf;;AAKF,QAAI,CAACZ,aAAL,EAAoB;AAClB;AACD;;AACD,QAAIc,SAAS,GAAGE,YAAZ,IAA4BD,YAAY,GAAG,CAA/C,EAAkD;AAChDd,MAAAA,QAAQ,CAAC;AAER,OAFO,CAAR;AAGD;AACF,GAhBD;;AAkBA,MAAMgB,cAAc,GAAG,SAAjBA,cAAiB;AACrB,QAAItB,cAAc,KAAIA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAApB,CAAd,IAA0C,CAAAvB,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAAhB,MAAyB,eAAvE,EAAwF;AACtF,aAAOvB,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAAvB;AACD;;AACD,QAAIvB,cAAc,KAAK,CAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAAhB,MAAyB,eAAzB,IAA4C,EAACvB,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEuB,IAAjB,CAAjD,CAAlB,EAA2F;AACzF,aAAOvB,cAAc,CAACwB,OAAf,CAAuBC,GAAvB,CAA2B,UAACC,MAAD;AAAY,eAAAA,MAAM,CAACC,QAAP,IAAmBhB,SAAS,CAACiB,OAA7B;AAAoC,OAA3E,EAA6EC,IAA7E,CAAkF,IAAlF,CAAP;AACD;;AACD,WAAOlB,SAAS,CAACmB,QAAjB;AACD,GARD;;AAUA,MAAIjC,SAAS,IAAIC,YAAb,IAA6BC,aAAjC,EAAgD;AAC9C,WAAO,CAAAT,sBAAsB,SAAtB,IAAAA,sBAAsB,WAAtB,SAAA,GAAAA,sBAAsB,EAAtB,kBACLyC;AAAK,MAAA,SAAS,EAAE5C;AAAhB,oBACE4C,6BAAC,WAAD;AACE,MAAA,IAAI,EAAEC,gBAAgB,CAACC,KADzB;AAEE,MAAA,cAAc,EAAEnB;AAFlB,MADF,CADF;AAQD;;AAED,MAAIX,OAAO,IAAIL,YAAX,IAA2BC,aAA/B,EAA8C;AAC5C,WAAO,CAAAR,wBAAwB,SAAxB,IAAAA,wBAAwB,WAAxB,SAAA,GAAAA,wBAAwB,EAAxB,kBACLwC;AAAK,MAAA,SAAS,EAAE5C;AAAhB,oBACE4C,6BAAC,WAAD;AAAa,MAAA,IAAI,EAAEC,gBAAgB,CAACE;AAApC,MADF,CADF;AAKD;;AAED,MAAI,CAACpC,YAAL,EAAmB;AACjB,WAAO,CAAAN,yBAAyB,SAAzB,IAAAA,yBAAyB,WAAzB,SAAA,GAAAA,yBAAyB,EAAzB,kBACLuC;AAAK,MAAA,SAAS,EAAE5C;AAAhB,oBACE4C,6BAAC,WAAD;AACE,MAAA,IAAI,EAAEC,gBAAgB,CAACG,SADzB;AAEE,MAAA,cAAc,EAAEb,cAAc;AAFhC,MADF,CADF;AAQD;;AAED,sBACES;AACE,IAAA,SAAS,EAAE5C,oBADb;AAEE,IAAA,QAAQ,EAAE4B,cAFZ;AAGE,IAAA,GAAG,EAAEX;AAHP,KAMKG,WAAW,CAAC6B,MAAZ,GAAqB,CAAtB,GAEI7B,WAAW,CAACkB,GAAZ,CAAgB,UAACY,OAAD;AACd,QAAI3C,gBAAJ,EAAsB;AACpB,aAAOA,gBAAgB,CAAC;AAAE2C,QAAAA,OAAO,SAAT;AAAW7B,QAAAA,aAAa;AAAxB,OAAD,CAAvB;AACD;;AACD,QAAI6B,OAAO,CAACC,WAAR,KAAwB,MAA5B,EAAoC;AAClC,0BACEP,6BAAC,qBAAD;AACE,QAAA,SAAS,EAAK5C,oBAAoB,0BADpC;AAEE,QAAA,OAAO,EAAEkD,OAFX;AAGE,QAAA,GAAG,EAAEA,OAAO,CAACE,SAHf;AAIE,QAAA,QAAQ,EAAG9B,iBAAiB,KAAK4B,OAAO,CAACE,SAJ3C;AAKE,QAAA,OAAO,EAAE;AACP/B,UAAAA,aAAa,CAAC6B,OAAD,CAAb;AACA3B,UAAAA,oBAAoB,CAAC2B,OAAO,CAACE,SAAT,CAApB;AACD;AARH,QADF;AAYD;;AACD,wBACER,6BAAC,iBAAD;AACE,MAAA,SAAS,EAAK5C,oBAAoB,0BADpC;AAEE,MAAA,OAAO,EAAEkD,OAFX;AAGE,MAAA,GAAG,EAAEA,OAAO,CAACE,SAHf;AAIE,MAAA,QAAQ,EAAG9B,iBAAiB,KAAK4B,OAAO,CAACE,SAJ3C;AAKE,MAAA,OAAO,EAAE;AACP/B,QAAAA,aAAa,CAAC6B,OAAD,CAAb;AACA3B,QAAAA,oBAAoB,CAAC2B,OAAO,CAACE,SAAT,CAApB;AACD;AARH,MADF;AAYD,GA9BD,CAFJ,GAkCI,CAAA9C,0BAA0B,SAA1B,IAAAA,0BAA0B,WAA1B,SAAA,GAAAA,0BAA0B,EAA1B,kBACAsC,6BAAC,WAAD;AAAa,IAAA,IAAI,EAAEC,gBAAgB,CAACQ;AAApC,IAzCR,CADF;AA+CD;;;;"}
1
+ {"version":3,"file":"MessageSearchUI.js","sources":["../../../src/smart-components/MessageSearch/components/MessageSearchUI/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport './index.scss';\n\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport { useMessageSearchContext } from '../../context/MessageSearchProvider';\n\nimport MessageSearchItem from '../../../../ui/MessageSearchItem';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport MessageSearchFileItem from '../../../../ui/MessageSearchFileItem';\nimport { ClientSentMessages } from '../../../../types';\n\n\nconst COMPONENT_CLASS_NAME = 'sendbird-message-search';\n\nexport interface MessageSearchUIProps {\n renderPlaceHolderError?: (props: void) => React.ReactNode;\n renderPlaceHolderLoading?: (props: void) => React.ReactNode;\n renderPlaceHolderNoString?: (props: void) => React.ReactNode;\n renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;\n renderSearchItem?(\n {\n message,\n onResultClick,\n }: {\n message: ClientSentMessages,\n onResultClick?: (message: ClientSentMessages) => void,\n }\n ): JSX.Element;\n}\n\nexport const MessageSearchUI: React.FC<MessageSearchUIProps> = ({\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n renderPlaceHolderNoString,\n renderPlaceHolderEmptyList,\n renderSearchItem,\n}: MessageSearchUIProps) => {\n const {\n isInvalid,\n searchString,\n requestString,\n currentChannel,\n retryCount,\n setRetryCount,\n loading,\n scrollRef,\n hasMoreResult,\n onScroll,\n allMessages,\n onResultClick,\n selectedMessageId,\n setSelectedMessageId,\n } = useMessageSearchContext();\n\n const { stringSet } = useContext(LocalizationContext);\n\n const handleRetryToConnect = () => {\n setRetryCount(retryCount + 1);\n };\n\n const handleOnScroll = (e) => {\n const scrollElement = e.target;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = scrollElement;\n\n if (!hasMoreResult) {\n return;\n }\n if (scrollTop + clientHeight >= scrollHeight - 1) {\n onScroll(() => {\n // after load more searched messages\n });\n }\n };\n\n const getChannelName = () => {\n if (currentChannel && currentChannel?.name && currentChannel?.name !== 'Group Channel') {\n return currentChannel?.name;\n }\n if (currentChannel && (currentChannel?.name === 'Group Channel' || !currentChannel?.name)) {\n return currentChannel.members.map((member) => member.nickname || stringSet.NO_NAME).join(', ');\n }\n return stringSet.NO_TITLE;\n };\n\n if (isInvalid && searchString && requestString) {\n return renderPlaceHolderError?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder\n type={PlaceHolderTypes.WRONG}\n retryToConnect={handleRetryToConnect}\n />\n </div>\n );\n }\n\n if (loading && searchString && requestString) {\n return renderPlaceHolderLoading?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder type={PlaceHolderTypes.SEARCHING} />\n </div>\n );\n }\n\n if (!searchString) {\n return renderPlaceHolderNoString?.() || (\n <div className={COMPONENT_CLASS_NAME}>\n <PlaceHolder\n type={PlaceHolderTypes.SEARCH_IN}\n searchInString={getChannelName()}\n />\n </div>\n );\n }\n\n return (\n <div\n className={COMPONENT_CLASS_NAME}\n onScroll={handleOnScroll}\n ref={scrollRef}\n >\n {\n (allMessages.length > 0)\n ? (\n allMessages.map((message) => {\n if (renderSearchItem) {\n return renderSearchItem({ message, onResultClick });\n }\n if (message.messageType === 'file') {\n return (\n <MessageSearchFileItem\n className={`${COMPONENT_CLASS_NAME}__message-search-item`}\n message={message as FileMessage}\n key={message.messageId}\n selected={(selectedMessageId === message.messageId)}\n onClick={() => {\n onResultClick(message);\n setSelectedMessageId(message.messageId);\n }}\n />\n );\n }\n return (\n <MessageSearchItem\n className={`${COMPONENT_CLASS_NAME}__message-search-item`}\n message={message as UserMessage}\n key={message.messageId}\n selected={(selectedMessageId === message.messageId)}\n onClick={() => {\n onResultClick(message);\n setSelectedMessageId(message.messageId);\n }}\n />\n );\n })\n )\n : renderPlaceHolderEmptyList?.() || (\n <PlaceHolder type={PlaceHolderTypes.NO_RESULTS} />\n )\n }\n </div>\n );\n};\n\nexport default MessageSearchUI;\n"],"names":["COMPONENT_CLASS_NAME","MessageSearchUI","_a","renderPlaceHolderError","renderPlaceHolderLoading","renderPlaceHolderNoString","renderPlaceHolderEmptyList","renderSearchItem","_b","useMessageSearchContext","isInvalid","searchString","requestString","currentChannel","retryCount","setRetryCount","loading","scrollRef","hasMoreResult","onScroll","allMessages","onResultClick","selectedMessageId","setSelectedMessageId","stringSet","useContext","LocalizationContext","handleRetryToConnect","handleOnScroll","e","scrollElement","target","scrollTop","scrollHeight","clientHeight","getChannelName","name","members","map","member","nickname","NO_NAME","join","NO_TITLE","React","PlaceHolderTypes","WRONG","SEARCHING","SEARCH_IN","length","message","messageType","messageId","NO_RESULTS"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import React__default, { useEffect, useCallback, useState, useReducer, useRef } from 'react';
2
2
  import useSendbirdStateContext from '../useSendbirdStateContext.js';
3
- import { _ as __assign, a as __spreadArray } from '../tslib.es6-2c4d01e9.js';
3
+ import { _ as __assign, a as __spreadArray } from '../tslib.es6-a7db0cc5.js';
4
4
  import '../withSendBird.js';
5
- import '../_rollupPluginBabelHelpers-d10f91b9.js';
5
+ import '../_rollupPluginBabelHelpers-084fb589.js';
6
6
 
7
7
  var GET_SEARCHED_MESSAGES = 'GET_SEARCHED_MESSAGES';
8
8
  var GET_NEXT_SEARCHED_MESSAGES = 'GET_NEXT_SEARCHED_MESSAGES';
@@ -114,20 +114,18 @@ function useSetChannel(_a, _b) {
114
114
  logger = _b.logger,
115
115
  messageSearchDispatcher = _b.messageSearchDispatcher;
116
116
  useEffect(function () {
117
- if (channelUrl && sdkInit && sdk && (sdk.OpenChannel || sdk.GroupChannel)) {
118
- sdk.GroupChannel.getChannel(channelUrl, function (groupChannel, error) {
119
- if (!error) {
120
- logger.info('MessageSearch | useSetChannel group channel', groupChannel);
121
- messageSearchDispatcher({
122
- type: SET_CURRENT_CHANNEL,
123
- payload: groupChannel
124
- });
125
- } else {
126
- messageSearchDispatcher({
127
- type: CHANNEL_INVALID,
128
- payload: null
129
- });
130
- }
117
+ if (channelUrl && sdkInit && (sdk === null || sdk === void 0 ? void 0 : sdk.groupChannel)) {
118
+ sdk.groupChannel.getChannel(channelUrl).then(function (groupChannel) {
119
+ logger.info('MessageSearch | useSetChannel group channel', groupChannel);
120
+ messageSearchDispatcher({
121
+ type: SET_CURRENT_CHANNEL,
122
+ payload: groupChannel
123
+ });
124
+ }).catch(function () {
125
+ messageSearchDispatcher({
126
+ type: CHANNEL_INVALID,
127
+ payload: null
128
+ });
131
129
  });
132
130
  }
133
131
  }, [channelUrl, sdkInit]);
@@ -154,34 +152,33 @@ function useGetSearchedMessages(_a, _b) {
154
152
  var inputSearchMessageQueryObject = __assign(__assign({}, messageSearchQuery), {
155
153
  order: 'ts',
156
154
  channelUrl: channelUrl,
157
- messageTimestampFrom: currentChannel.invitedAt
155
+ messageTimestampFrom: currentChannel.invitedAt,
156
+ keyword: requestString
158
157
  });
159
158
 
160
- var createdQuery_1 = sdk.createMessageSearchQuery(requestString, inputSearchMessageQueryObject);
161
- createdQuery_1.next(function (messages, error) {
162
- if (!error) {
163
- logger.info('MessageSearch | useGetSearchedMessages: succeeded getting messages', messages);
164
- messageSearchDispatcher({
165
- type: GET_SEARCHED_MESSAGES,
166
- payload: {
167
- messages: messages,
168
- createdQuery: createdQuery_1
169
- }
170
- });
171
-
172
- if (onResultLoaded && typeof onResultLoaded === 'function') {
173
- onResultLoaded(messages, null);
174
- }
175
- } else {
176
- logger.warning('MessageSearch | useGetSearchedMessages: getting failed', error);
177
- messageSearchDispatcher({
178
- type: SET_QUERY_INVALID,
179
- payload: null
180
- });
181
-
182
- if (onResultLoaded && typeof onResultLoaded === 'function') {
183
- onResultLoaded(null, error);
159
+ var createdQuery_1 = sdk.createMessageSearchQuery(inputSearchMessageQueryObject);
160
+ createdQuery_1.next().then(function (messages) {
161
+ logger.info('MessageSearch | useGetSearchedMessages: succeeded getting messages', messages);
162
+ messageSearchDispatcher({
163
+ type: GET_SEARCHED_MESSAGES,
164
+ payload: {
165
+ messages: messages,
166
+ createdQuery: createdQuery_1
184
167
  }
168
+ });
169
+
170
+ if (onResultLoaded && typeof onResultLoaded === 'function') {
171
+ onResultLoaded(messages, null);
172
+ }
173
+ }).catch(function (error) {
174
+ logger.warning('MessageSearch | useGetSearchedMessages: getting failed', error);
175
+ messageSearchDispatcher({
176
+ type: SET_QUERY_INVALID,
177
+ payload: null
178
+ });
179
+
180
+ if (onResultLoaded && typeof onResultLoaded === 'function') {
181
+ onResultLoaded(null, error);
185
182
  }
186
183
  });
187
184
  messageSearchDispatcher({
@@ -207,25 +204,23 @@ function useScrollCallback(_a, _b) {
207
204
  }
208
205
 
209
206
  if (currentMessageSearchQuery && currentMessageSearchQuery.hasNext) {
210
- currentMessageSearchQuery.next(function (messages, error) {
211
- if (!error) {
212
- logger.info('MessageSearch | useScrollCallback: succeeded getting searched messages', messages);
213
- messageSearchDispatcher({
214
- type: GET_NEXT_SEARCHED_MESSAGES,
215
- payload: messages
216
- });
217
- cb(messages, null);
207
+ currentMessageSearchQuery.next().then(function (messages) {
208
+ logger.info('MessageSearch | useScrollCallback: succeeded getting searched messages', messages);
209
+ messageSearchDispatcher({
210
+ type: GET_NEXT_SEARCHED_MESSAGES,
211
+ payload: messages
212
+ });
213
+ cb(messages, null);
218
214
 
219
- if (onResultLoaded && typeof onResultLoaded === 'function') {
220
- onResultLoaded(messages, null);
221
- }
222
- } else {
223
- logger.warning('MessageSearch | useScrollCallback: failed getting searched messages', error);
224
- cb(null, error);
215
+ if (onResultLoaded && typeof onResultLoaded === 'function') {
216
+ onResultLoaded(messages, null);
217
+ }
218
+ }).catch(function (error) {
219
+ logger.warning('MessageSearch | useScrollCallback: failed getting searched messages', error);
220
+ cb(null, error);
225
221
 
226
- if (onResultLoaded && typeof onResultLoaded === 'function') {
227
- onResultLoaded(null, error);
228
- }
222
+ if (onResultLoaded && typeof onResultLoaded === 'function') {
223
+ onResultLoaded(null, error);
229
224
  }
230
225
  });
231
226
  } else {
@@ -384,9 +379,9 @@ var MessageSearchProvider = function MessageSearchProvider(props) {
384
379
  }, props === null || props === void 0 ? void 0 : props.children);
385
380
  };
386
381
 
387
- var useMessageSearch = function useMessageSearch() {
382
+ var useMessageSearchContext = function useMessageSearchContext() {
388
383
  return React__default.useContext(MessageSearchContext);
389
384
  };
390
385
 
391
- export { MessageSearchProvider, useMessageSearch };
386
+ export { MessageSearchProvider, useMessageSearchContext };
392
387
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sources":["../../src/smart-components/MessageSearch/context/dux/actionTypes.ts","../../src/smart-components/MessageSearch/context/dux/reducers.ts","../../src/smart-components/MessageSearch/context/dux/initialState.ts","../../src/smart-components/MessageSearch/context/hooks/useSetChannel.ts","../../src/smart-components/MessageSearch/context/hooks/useGetSearchedMessages.ts","../../src/smart-components/MessageSearch/context/hooks/useScrollCallback.ts","../../src/smart-components/MessageSearch/context/hooks/useSearchStringEffect.ts","../../src/smart-components/MessageSearch/context/MessageSearchProvider.tsx"],"sourcesContent":["export const GET_SEARCHED_MESSAGES = 'GET_SEARCHED_MESSAGES';\nexport const GET_NEXT_SEARCHED_MESSAGES = 'GET_NEXT_SEARCHED_MESSAGES';\nexport const START_MESSAGE_SEARCH = 'START_MESSAGE_SEARCH';\nexport const START_GETTING_SEARCHED_MESSAGES = 'START_GETTING_SEARCHED_MESSAGES';\nexport const SET_QUERY_INVALID = 'SET_QUERY_INVALID';\n\nexport const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';\nexport const CHANNEL_INVALID = 'CHANNEL_INVALID';\nexport const RESET_SEARCH_STRING = 'RESET_SEARCH_STRING';\n","import { State as initialStateInterface } from './initialState';\nimport * as actionTypes from './actionTypes';\n\ninterface ActionInterface {\n type: string;\n /* eslint-disable @typescript-eslint/no-explicit-any */\n payload?: any;\n}\n\nexport default function reducer(\n state: initialStateInterface,\n action: ActionInterface,\n): initialStateInterface {\n switch (action.type) {\n case actionTypes.SET_CURRENT_CHANNEL: {\n const currentChannel = action.payload;\n return {\n ...state,\n currentChannel,\n initialized: true,\n };\n }\n case actionTypes.CHANNEL_INVALID: {\n return {\n ...state,\n currentChannel: null,\n initialized: false,\n };\n }\n case actionTypes.GET_SEARCHED_MESSAGES: {\n const { messages, createdQuery } = action.payload;\n if (\n createdQuery\n && createdQuery.channelUrl === (state?.currentMessageSearchQuery as SendbirdUIKit.MessageSearchQueryType).channelUrl\n && createdQuery.key === (state?.currentMessageSearchQuery as SendbirdUIKit.MessageSearchQueryType).key\n ) {\n return {\n ...state,\n loading: false,\n isInvalid: false,\n allMessages: [...messages],\n hasMoreResult: (state?.currentMessageSearchQuery as SendbirdUIKit.MessageSearchQueryType).hasNext,\n };\n }\n return { ...state };\n }\n case actionTypes.SET_QUERY_INVALID: {\n return {\n ...state,\n isInvalid: true,\n }\n }\n case actionTypes.START_MESSAGE_SEARCH: {\n return {\n ...state,\n isInvalid: false,\n loading: false,\n }\n }\n case actionTypes.START_GETTING_SEARCHED_MESSAGES: {\n const currentMessageSearchQuery = action.payload;\n return {\n ...state,\n loading: true,\n currentMessageSearchQuery,\n };\n }\n case actionTypes.GET_NEXT_SEARCHED_MESSAGES: {\n const messages = action.payload;\n return {\n ...state,\n allMessages: [...state.allMessages, ...messages],\n hasMoreResult: (state?.currentMessageSearchQuery as SendbirdUIKit.MessageSearchQueryType).hasNext,\n };\n }\n case actionTypes.RESET_SEARCH_STRING: {\n return {\n ...state,\n allMessages: [],\n };\n }\n default: {\n return state;\n }\n }\n}\n","import SendBird from 'sendbird';\nimport {\n ClientFileMessage,\n ClientUserMessage,\n} from '../../../../types';\n\nexport interface State {\n allMessages: Array<ClientFileMessage | ClientUserMessage>;\n loading: boolean;\n isInvalid: boolean;\n initialized: boolean;\n currentChannel: SendBird.GroupChannel;\n currentMessageSearchQuery: SendBird.MessageSearchQuery | SendBird.MessageSearchQueryOptions;\n hasMoreResult: boolean;\n}\n\nconst initialState: State = {\n allMessages: [],\n loading: false,\n isInvalid: false,\n initialized: false,\n currentChannel: null,\n currentMessageSearchQuery: null,\n hasMoreResult: false,\n};\n\nexport default initialState;\n","import { useEffect } from 'react';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n channelUrl: string;\n sdkInit: boolean;\n}\ninterface ToolProps {\n sdk: SendbirdUIKit.Sdk;\n logger: SendbirdUIKit.Logger;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nfunction useSetChannel(\n { channelUrl, sdkInit }: MainProps,\n { sdk, logger, messageSearchDispatcher }: ToolProps,\n): void {\n useEffect(() => {\n if (channelUrl && sdkInit && sdk && (sdk.OpenChannel || sdk.GroupChannel)) {\n sdk.GroupChannel.getChannel(channelUrl, (groupChannel, error) => {\n if (!error) {\n logger.info('MessageSearch | useSetChannel group channel', groupChannel);\n messageSearchDispatcher({\n type: messageActionTypes.SET_CURRENT_CHANNEL,\n payload: groupChannel,\n });\n } else {\n messageSearchDispatcher({\n type: messageActionTypes.CHANNEL_INVALID,\n payload: null,\n });\n }\n });\n }\n }, [channelUrl, sdkInit]);\n}\n\nexport default useSetChannel;\n","import { useEffect } from 'react';\nimport * as messageActionTypes from '../dux/actionTypes';\nimport SendbirdUIKit from '../../../../index';\nimport SendBird from 'sendbird';\n\ninterface MainProps {\n currentChannel: SendbirdUIKit.GroupChannelType;\n channelUrl: string;\n requestString?: string;\n messageSearchQuery?: SendbirdUIKit.MessageSearchQueryType;\n onResultLoaded?: (\n messages?: Array<SendBird.UserMessage | SendBird.FileMessage | SendBird.AdminMessage>,\n error?: SendbirdUIKit.SendbirdError,\n ) => void;\n retryCount: number;\n}\ninterface ToolProps {\n sdk: SendbirdUIKit.Sdk;\n logger: SendbirdUIKit.Logger;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nfunction useGetSearchedMessages(\n { currentChannel, channelUrl, requestString, messageSearchQuery, onResultLoaded, retryCount }: MainProps,\n { sdk, logger, messageSearchDispatcher }: ToolProps,\n): void {\n useEffect(() => {\n messageSearchDispatcher({\n type: messageActionTypes.START_MESSAGE_SEARCH,\n payload: null,\n });\n if (sdk && channelUrl && sdk.createMessageSearchQuery && currentChannel) {\n if (requestString) {\n const inputSearchMessageQueryObject = {\n ...messageSearchQuery,\n order: 'ts' as const,\n channelUrl,\n messageTimestampFrom: currentChannel.invitedAt,\n };\n const createdQuery = sdk.createMessageSearchQuery(requestString, inputSearchMessageQueryObject);\n createdQuery.next((messages, error) => {\n if (!error) {\n logger.info('MessageSearch | useGetSearchedMessages: succeeded getting messages', messages);\n messageSearchDispatcher({\n type: messageActionTypes.GET_SEARCHED_MESSAGES,\n payload: {\n messages,\n createdQuery,\n },\n });\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(messages, null);\n }\n } else {\n logger.warning('MessageSearch | useGetSearchedMessages: getting failed', error);\n messageSearchDispatcher({\n type: messageActionTypes.SET_QUERY_INVALID,\n payload: null,\n });\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(null, error);\n }\n }\n });\n messageSearchDispatcher({\n type: messageActionTypes.START_GETTING_SEARCHED_MESSAGES,\n payload: createdQuery,\n });\n } else {\n logger.info('MessageSearch | useGetSeasrchedMessages: search string is empty');\n }\n }\n }, [channelUrl, messageSearchQuery, requestString, currentChannel, retryCount]);\n}\n\nexport default useGetSearchedMessages;\n","import { useCallback } from 'react';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n currentMessageSearchQuery: SendBird.MessageSearchQuery;\n hasMoreResult: boolean;\n onResultLoaded?: (\n messages?: Array<SendBird.UserMessage | SendBird.FileMessage | SendBird.AdminMessage>,\n error?: SendbirdUIKit.SendbirdError,\n ) => void;\n}\ninterface ToolProps {\n logger: SendbirdUIKit.Logger;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\nexport type CallbackReturn = (\n callback: (\n messages: Array<SendBird.UserMessage | SendBird.FileMessage | SendBird.AdminMessage>,\n /* eslint-disable @typescript-eslint/no-explicit-any*/\n error: any,\n ) => void\n) => void;\n\nfunction useScrollCallback(\n { currentMessageSearchQuery, hasMoreResult, onResultLoaded }: MainProps,\n { logger, messageSearchDispatcher }: ToolProps,\n): CallbackReturn {\n return useCallback((cb) => {\n if (!hasMoreResult) {\n logger.warning('MessageSearch | useScrollCallback: no more searched results', hasMoreResult);\n }\n if (currentMessageSearchQuery && currentMessageSearchQuery.hasNext) {\n currentMessageSearchQuery.next((messages, error) => {\n if (!error) {\n logger.info('MessageSearch | useScrollCallback: succeeded getting searched messages', messages);\n messageSearchDispatcher({\n type: messageActionTypes.GET_NEXT_SEARCHED_MESSAGES,\n payload: messages,\n });\n cb(messages, null);\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(messages, null);\n }\n } else {\n logger.warning('MessageSearch | useScrollCallback: failed getting searched messages', error);\n cb(null, error);\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(null, error);\n }\n }\n });\n } else {\n logger.warning('MessageSearch | useScrollCallback: no currentMessageSearchQuery');\n }\n }, [currentMessageSearchQuery, hasMoreResult]);\n}\n\nexport default useScrollCallback;\n","import { useState, useEffect } from 'react';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface DynamicParams {\n searchString: string;\n}\n\ninterface StaticParams {\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nconst DEBOUNCING_TIME = 500;\n\nfunction useSearchStringEffect(\n { searchString }: DynamicParams,\n { messageSearchDispatcher }: StaticParams,\n): string {\n const [requestString, setRequestString] = useState('');\n const [debouncingTimer, setDebouncingTimer] = useState(null);\n useEffect(() => {\n clearTimeout(debouncingTimer);\n if (searchString) {\n setDebouncingTimer(\n setTimeout(() => {\n setRequestString(searchString);\n }, DEBOUNCING_TIME)\n );\n } else {\n setRequestString('');\n messageSearchDispatcher({\n type: messageActionTypes.RESET_SEARCH_STRING,\n payload: '',\n });\n }\n }, [searchString]);\n return requestString;\n}\n\nexport default useSearchStringEffect;\n","import React, {\n useRef,\n useState,\n useReducer,\n} from 'react';\nimport SendBird from 'sendbird';\n\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { ClientSentMessages } from '../../../types';\n\nimport messageSearchReducer from './dux/reducers';\nimport messageSearchInitialState from './dux/initialState';\nimport { State as MessageSearchReducerState } from './dux/initialState';\n\nimport useSetChannel from './hooks/useSetChannel';\nimport useGetSearchMessages from './hooks/useGetSearchedMessages';\nimport useScrollCallback, {\n CallbackReturn as UseScrollCallbackType,\n} from './hooks/useScrollCallback';\nimport useSearchStringEffect from './hooks/useSearchStringEffect';\n\nexport interface MessageSearchProviderProps {\n channelUrl: string;\n children?: React.ReactNode;\n searchString?: string;\n requestString?: string;\n messageSearchQuery?: SendBird.MessageSearchQueryOptions;\n onResultLoaded?(messages?: Array<ClientSentMessages>, error?: SendBird.SendBirdError): void;\n onResultClick?(message: ClientSentMessages): void;\n}\n\ninterface MessageSearchProviderInterface extends MessageSearchProviderProps {\n retryCount: number;\n setRetryCount: React.Dispatch<React.SetStateAction<number>>;\n selectedMessageId: number;\n setSelectedMessageId: React.Dispatch<React.SetStateAction<number>>;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n scrollRef: React.MutableRefObject<HTMLDivElement>;\n allMessages: MessageSearchReducerState['allMessages'];\n loading: boolean;\n isInvalid: boolean;\n currentChannel: SendBird.GroupChannel;\n currentMessageSearchQuery: SendBird.MessageSearchQuery;\n hasMoreResult: boolean;\n onScroll: UseScrollCallbackType;\n handleRetryToConnect: () => void;\n handleOnScroll: (e: React.BaseSyntheticEvent) => void;\n}\n\nconst MessageSearchContext = React.createContext<MessageSearchProviderInterface|null>(undefined);\n\nconst MessageSearchProvider: React.FC<MessageSearchProviderProps> = (props: MessageSearchProviderProps) => {\n const {\n // message search props\n channelUrl,\n searchString,\n messageSearchQuery,\n onResultLoaded,\n onResultClick,\n } = props;\n\n const globalState = useSendbirdStateContext();\n\n // hook variables\n const [retryCount, setRetryCount] = useState(0); // this is a trigger flag for activating useGetSearchMessages\n const [selectedMessageId, setSelectedMessageId] = useState(0);\n const [messageSearchStore, messageSearchDispatcher] = useReducer(messageSearchReducer, messageSearchInitialState);\n const {\n allMessages,\n loading,\n isInvalid,\n currentChannel,\n currentMessageSearchQuery,\n hasMoreResult,\n } = messageSearchStore;\n\n const logger = globalState?.config?.logger;\n const sdk = globalState?.stores?.sdkStore?.sdk;\n const sdkInit = globalState?.stores?.sdkStore?.initialized;\n const scrollRef = useRef(null);\n const handleOnScroll = (e: React.BaseSyntheticEvent) => {\n const scrollElement = e.target as HTMLDivElement;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = scrollElement;\n\n if (!hasMoreResult) {\n return;\n }\n if (scrollTop + clientHeight >= scrollHeight) {\n onScroll(() => {\n // after load more searched messages\n });\n }\n };\n\n useSetChannel(\n { channelUrl, sdkInit },\n { sdk, logger, messageSearchDispatcher },\n );\n\n const requestString = useSearchStringEffect({ searchString }, { messageSearchDispatcher });\n\n useGetSearchMessages(\n { currentChannel, channelUrl, requestString, messageSearchQuery, onResultLoaded, retryCount },\n { sdk, logger, messageSearchDispatcher },\n );\n\n const onScroll = useScrollCallback(\n { currentMessageSearchQuery, hasMoreResult, onResultLoaded },\n { logger, messageSearchDispatcher },\n );\n\n const handleRetryToConnect = () => {\n setRetryCount(retryCount + 1);\n };\n return (\n <MessageSearchContext.Provider value={{\n channelUrl,\n searchString,\n requestString,\n messageSearchQuery,\n onResultLoaded,\n onResultClick,\n retryCount,\n setRetryCount,\n selectedMessageId,\n setSelectedMessageId,\n messageSearchDispatcher,\n allMessages,\n loading,\n isInvalid,\n currentChannel,\n currentMessageSearchQuery,\n hasMoreResult,\n onScroll,\n scrollRef,\n handleRetryToConnect,\n handleOnScroll,\n }}>\n {props?.children}\n </MessageSearchContext.Provider>\n );\n}\n\nexport type UseMessageSearchType = () => MessageSearchProviderInterface;\nconst useMessageSearch: UseMessageSearchType = () => React.useContext(MessageSearchContext);\n\nexport { MessageSearchProvider, useMessageSearch };\n"],"names":["GET_SEARCHED_MESSAGES","GET_NEXT_SEARCHED_MESSAGES","START_MESSAGE_SEARCH","START_GETTING_SEARCHED_MESSAGES","SET_QUERY_INVALID","SET_CURRENT_CHANNEL","CHANNEL_INVALID","RESET_SEARCH_STRING","reducer","state","action","type","actionTypes","currentChannel","payload","initialized","_a","messages","createdQuery","channelUrl","currentMessageSearchQuery","key","loading","isInvalid","allMessages","hasMoreResult","hasNext","initialState","useSetChannel","_b","sdkInit","sdk","logger","messageSearchDispatcher","useEffect","OpenChannel","GroupChannel","getChannel","groupChannel","error","info","messageActionTypes","useGetSearchedMessages","requestString","messageSearchQuery","onResultLoaded","retryCount","createMessageSearchQuery","inputSearchMessageQueryObject","order","messageTimestampFrom","invitedAt","createdQuery_1","next","warning","useScrollCallback","useCallback","cb","DEBOUNCING_TIME","useSearchStringEffect","searchString","_c","useState","setRequestString","_d","debouncingTimer","setDebouncingTimer","clearTimeout","setTimeout","MessageSearchContext","React","createContext","undefined","MessageSearchProvider","props","onResultClick","globalState","useSendbirdStateContext","_f","setRetryCount","_g","selectedMessageId","setSelectedMessageId","_h","useReducer","messageSearchReducer","messageSearchInitialState","messageSearchStore","config","stores","sdkStore","scrollRef","useRef","handleOnScroll","e","scrollElement","target","scrollTop","scrollHeight","clientHeight","onScroll","useGetSearchMessages","handleRetryToConnect","children","useMessageSearch","useContext"],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sources":["../../src/smart-components/MessageSearch/context/dux/actionTypes.ts","../../src/smart-components/MessageSearch/context/dux/reducers.ts","../../src/smart-components/MessageSearch/context/dux/initialState.ts","../../src/smart-components/MessageSearch/context/hooks/useSetChannel.ts","../../src/smart-components/MessageSearch/context/hooks/useGetSearchedMessages.ts","../../src/smart-components/MessageSearch/context/hooks/useScrollCallback.ts","../../src/smart-components/MessageSearch/context/hooks/useSearchStringEffect.ts","../../src/smart-components/MessageSearch/context/MessageSearchProvider.tsx"],"sourcesContent":["export const GET_SEARCHED_MESSAGES = 'GET_SEARCHED_MESSAGES';\nexport const GET_NEXT_SEARCHED_MESSAGES = 'GET_NEXT_SEARCHED_MESSAGES';\nexport const START_MESSAGE_SEARCH = 'START_MESSAGE_SEARCH';\nexport const START_GETTING_SEARCHED_MESSAGES = 'START_GETTING_SEARCHED_MESSAGES';\nexport const SET_QUERY_INVALID = 'SET_QUERY_INVALID';\n\nexport const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';\nexport const CHANNEL_INVALID = 'CHANNEL_INVALID';\nexport const RESET_SEARCH_STRING = 'RESET_SEARCH_STRING';\n","import { State as initialStateInterface } from './initialState';\nimport type { MessageSearchQuery } from '@sendbird/chat/message';\nimport * as actionTypes from './actionTypes';\n\ninterface MessageSearchQueryType extends MessageSearchQuery {\n key?: string;\n}\ninterface ActionInterface {\n type: string;\n /* eslint-disable @typescript-eslint/no-explicit-any */\n payload?: any;\n}\n\nexport default function reducer(\n state: initialStateInterface,\n action: ActionInterface,\n): initialStateInterface {\n switch (action.type) {\n case actionTypes.SET_CURRENT_CHANNEL: {\n const currentChannel = action.payload;\n return {\n ...state,\n currentChannel,\n initialized: true,\n };\n }\n case actionTypes.CHANNEL_INVALID: {\n return {\n ...state,\n currentChannel: null,\n initialized: false,\n };\n }\n case actionTypes.GET_SEARCHED_MESSAGES: {\n const { messages, createdQuery } = action.payload;\n if (\n createdQuery\n && createdQuery.channelUrl === (state?.currentMessageSearchQuery as MessageSearchQueryType).channelUrl\n && createdQuery.key === (state?.currentMessageSearchQuery as MessageSearchQueryType).key\n ) {\n return {\n ...state,\n loading: false,\n isInvalid: false,\n allMessages: [...messages],\n hasMoreResult: (state?.currentMessageSearchQuery as MessageSearchQueryType).hasNext,\n };\n }\n return { ...state };\n }\n case actionTypes.SET_QUERY_INVALID: {\n return {\n ...state,\n isInvalid: true,\n }\n }\n case actionTypes.START_MESSAGE_SEARCH: {\n return {\n ...state,\n isInvalid: false,\n loading: false,\n }\n }\n case actionTypes.START_GETTING_SEARCHED_MESSAGES: {\n const currentMessageSearchQuery = action.payload;\n return {\n ...state,\n loading: true,\n currentMessageSearchQuery,\n };\n }\n case actionTypes.GET_NEXT_SEARCHED_MESSAGES: {\n const messages = action.payload;\n return {\n ...state,\n allMessages: [...state.allMessages, ...messages],\n hasMoreResult: (state?.currentMessageSearchQuery as MessageSearchQuery).hasNext,\n };\n }\n case actionTypes.RESET_SEARCH_STRING: {\n return {\n ...state,\n allMessages: [],\n };\n }\n default: {\n return state;\n }\n }\n}\n","import type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { MessageSearchQuery } from '@sendbird/chat/message';\nimport {\n ClientFileMessage,\n ClientUserMessage,\n} from '../../../../types';\n\nexport interface State {\n allMessages: Array<ClientFileMessage | ClientUserMessage>;\n loading: boolean;\n isInvalid: boolean;\n initialized: boolean;\n currentChannel: GroupChannel;\n currentMessageSearchQuery: MessageSearchQuery;\n hasMoreResult: boolean;\n}\n\nconst initialState: State = {\n allMessages: [],\n loading: false,\n isInvalid: false,\n initialized: false,\n currentChannel: null,\n currentMessageSearchQuery: null,\n hasMoreResult: false,\n};\n\nexport default initialState;\n","import type { SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport { useEffect } from 'react';\nimport type { Logger } from '../../../../lib/SendbirdState';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n channelUrl: string;\n sdkInit: boolean;\n}\ninterface ToolProps {\n sdk: SendbirdGroupChat;\n logger: Logger;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nfunction useSetChannel(\n { channelUrl, sdkInit }: MainProps,\n { sdk, logger, messageSearchDispatcher }: ToolProps,\n): void {\n useEffect(() => {\n if (channelUrl && sdkInit && (sdk?.groupChannel)) {\n sdk.groupChannel.getChannel(channelUrl).then((groupChannel) => {\n logger.info('MessageSearch | useSetChannel group channel', groupChannel);\n messageSearchDispatcher({\n type: messageActionTypes.SET_CURRENT_CHANNEL,\n payload: groupChannel,\n });\n }).catch(() => {\n messageSearchDispatcher({\n type: messageActionTypes.CHANNEL_INVALID,\n payload: null,\n });\n });\n }\n }, [channelUrl, sdkInit]);\n}\n\nexport default useSetChannel;\n","import { useEffect } from 'react';\n\nimport type { GroupChannel, SendbirdGroupChat } from '@sendbird/chat/groupChannel';\nimport type { MessageSearchQueryParams } from '@sendbird/chat/lib/__definition';\nimport type {\n AdminMessage,\n BaseMessage,\n FileMessage,\n MessageSearchQuery,\n UserMessage,\n} from '@sendbird/chat/message';\nimport type { SendbirdError } from '@sendbird/chat';\n\nimport type { Logger } from '../../../../lib/SendbirdState';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n currentChannel: GroupChannel;\n channelUrl: string;\n requestString?: string;\n messageSearchQuery?: MessageSearchQuery;\n onResultLoaded?: (\n messages?: Array<BaseMessage | UserMessage | FileMessage | AdminMessage>,\n error?: SendbirdError,\n ) => void;\n retryCount: number;\n}\ninterface ToolProps {\n sdk: SendbirdGroupChat;\n logger: Logger;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nfunction useGetSearchedMessages(\n { currentChannel, channelUrl, requestString, messageSearchQuery, onResultLoaded, retryCount }: MainProps,\n { sdk, logger, messageSearchDispatcher }: ToolProps,\n): void {\n useEffect(() => {\n messageSearchDispatcher({\n type: messageActionTypes.START_MESSAGE_SEARCH,\n payload: null,\n });\n if (sdk && channelUrl && sdk.createMessageSearchQuery && currentChannel) {\n if (requestString) {\n const inputSearchMessageQueryObject: MessageSearchQueryParams = {\n ...messageSearchQuery,\n order: 'ts' as const,\n channelUrl,\n messageTimestampFrom: currentChannel.invitedAt,\n keyword: requestString,\n };\n const createdQuery = sdk.createMessageSearchQuery(inputSearchMessageQueryObject);\n createdQuery.next().then((messages) => {\n logger.info('MessageSearch | useGetSearchedMessages: succeeded getting messages', messages);\n messageSearchDispatcher({\n type: messageActionTypes.GET_SEARCHED_MESSAGES,\n payload: {\n messages,\n createdQuery,\n },\n });\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(messages, null);\n }\n }).catch((error) => {\n logger.warning('MessageSearch | useGetSearchedMessages: getting failed', error);\n messageSearchDispatcher({\n type: messageActionTypes.SET_QUERY_INVALID,\n payload: null,\n });\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(null, error);\n }\n });\n messageSearchDispatcher({\n type: messageActionTypes.START_GETTING_SEARCHED_MESSAGES,\n payload: createdQuery,\n });\n } else {\n logger.info('MessageSearch | useGetSeasrchedMessages: search string is empty');\n }\n }\n }, [channelUrl, messageSearchQuery, requestString, currentChannel, retryCount]);\n}\n\nexport default useGetSearchedMessages;\n","import type { SendbirdError } from '@sendbird/chat';\nimport type { AdminMessage, FileMessage, MessageSearchQuery, UserMessage } from '@sendbird/chat/message';\nimport { useCallback } from 'react';\nimport { Logger } from '../../../..';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface MainProps {\n currentMessageSearchQuery: MessageSearchQuery;\n hasMoreResult: boolean;\n onResultLoaded?: (\n messages?: Array<UserMessage | FileMessage | AdminMessage>,\n error?: SendbirdError,\n ) => void;\n}\n\ntype MessageSearchDispatcherType = { type: string, payload: any };\n\ninterface ToolProps {\n logger: Logger;\n messageSearchDispatcher: (payload: MessageSearchDispatcherType) => void;\n}\n\nexport type CallbackReturn = (\n callback: (\n messages: Array<UserMessage | FileMessage | AdminMessage>,\n /* eslint-disable @typescript-eslint/no-explicit-any*/\n error: any,\n ) => void\n) => void;\n\nfunction useScrollCallback(\n { currentMessageSearchQuery, hasMoreResult, onResultLoaded }: MainProps,\n { logger, messageSearchDispatcher }: ToolProps,\n): CallbackReturn {\n return useCallback((cb) => {\n if (!hasMoreResult) {\n logger.warning('MessageSearch | useScrollCallback: no more searched results', hasMoreResult);\n }\n if (currentMessageSearchQuery && currentMessageSearchQuery.hasNext) {\n currentMessageSearchQuery.next().then((messages) => {\n logger.info('MessageSearch | useScrollCallback: succeeded getting searched messages', messages);\n messageSearchDispatcher({\n type: messageActionTypes.GET_NEXT_SEARCHED_MESSAGES,\n payload: messages,\n });\n cb(messages, null);\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(messages, null);\n }\n }).catch((error) => {\n logger.warning('MessageSearch | useScrollCallback: failed getting searched messages', error);\n cb(null, error);\n if (onResultLoaded && typeof onResultLoaded === 'function') {\n onResultLoaded(null, error);\n }\n });\n } else {\n logger.warning('MessageSearch | useScrollCallback: no currentMessageSearchQuery');\n }\n }, [currentMessageSearchQuery, hasMoreResult]);\n}\n\nexport default useScrollCallback;\n","import { useState, useEffect } from 'react';\nimport * as messageActionTypes from '../dux/actionTypes';\n\ninterface DynamicParams {\n searchString: string;\n}\n\ninterface StaticParams {\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n}\n\nconst DEBOUNCING_TIME = 500;\n\nfunction useSearchStringEffect(\n { searchString }: DynamicParams,\n { messageSearchDispatcher }: StaticParams,\n): string {\n const [requestString, setRequestString] = useState('');\n const [debouncingTimer, setDebouncingTimer] = useState(null);\n useEffect(() => {\n clearTimeout(debouncingTimer);\n if (searchString) {\n setDebouncingTimer(\n setTimeout(() => {\n setRequestString(searchString);\n }, DEBOUNCING_TIME)\n );\n } else {\n setRequestString('');\n messageSearchDispatcher({\n type: messageActionTypes.RESET_SEARCH_STRING,\n payload: '',\n });\n }\n }, [searchString]);\n return requestString;\n}\n\nexport default useSearchStringEffect;\n","import React, {\n useRef,\n useState,\n useReducer,\n} from 'react';\nimport type { MessageSearchQuery } from '@sendbird/chat/message';\nimport type { GroupChannel } from '@sendbird/chat/groupChannel';\nimport type { MessageSearchQueryParams } from '@sendbird/chat/lib/__definition';\n\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { ClientSentMessages } from '../../../types';\n\nimport messageSearchReducer from './dux/reducers';\nimport messageSearchInitialState from './dux/initialState';\nimport { State as MessageSearchReducerState } from './dux/initialState';\n\nimport useSetChannel from './hooks/useSetChannel';\nimport useGetSearchMessages from './hooks/useGetSearchedMessages';\nimport useScrollCallback, {\n CallbackReturn as UseScrollCallbackType,\n} from './hooks/useScrollCallback';\nimport useSearchStringEffect from './hooks/useSearchStringEffect';\n\nexport interface MessageSearchProviderProps {\n channelUrl: string;\n children?: React.ReactNode;\n searchString?: string;\n requestString?: string;\n messageSearchQuery?: MessageSearchQueryParams;\n onResultLoaded?(messages?: Array<ClientSentMessages>, error?: SendBird.SendBirdError): void;\n onResultClick?(message: ClientSentMessages): void;\n}\n\ninterface MessageSearchProviderInterface extends MessageSearchProviderProps {\n retryCount: number;\n setRetryCount: React.Dispatch<React.SetStateAction<number>>;\n selectedMessageId: number;\n setSelectedMessageId: React.Dispatch<React.SetStateAction<number>>;\n messageSearchDispatcher: ({ type: string, payload: any }) => void;\n scrollRef: React.MutableRefObject<HTMLDivElement>;\n allMessages: MessageSearchReducerState['allMessages'];\n loading: boolean;\n isInvalid: boolean;\n currentChannel: GroupChannel;\n currentMessageSearchQuery: MessageSearchQuery;\n hasMoreResult: boolean;\n onScroll: UseScrollCallbackType;\n handleRetryToConnect: () => void;\n handleOnScroll: (e: React.BaseSyntheticEvent) => void;\n}\n\nconst MessageSearchContext = React.createContext<MessageSearchProviderInterface|null>(undefined);\n\nconst MessageSearchProvider: React.FC<MessageSearchProviderProps> = (props: MessageSearchProviderProps) => {\n const {\n // message search props\n channelUrl,\n searchString,\n messageSearchQuery,\n onResultLoaded,\n onResultClick,\n } = props;\n\n const globalState = useSendbirdStateContext();\n\n // hook variables\n const [retryCount, setRetryCount] = useState(0); // this is a trigger flag for activating useGetSearchMessages\n const [selectedMessageId, setSelectedMessageId] = useState(0);\n const [messageSearchStore, messageSearchDispatcher] = useReducer(messageSearchReducer, messageSearchInitialState);\n const {\n allMessages,\n loading,\n isInvalid,\n currentChannel,\n currentMessageSearchQuery,\n hasMoreResult,\n } = messageSearchStore;\n\n const logger = globalState?.config?.logger;\n const sdk = globalState?.stores?.sdkStore?.sdk;\n const sdkInit = globalState?.stores?.sdkStore?.initialized;\n const scrollRef = useRef(null);\n const handleOnScroll = (e: React.BaseSyntheticEvent) => {\n const scrollElement = e.target as HTMLDivElement;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = scrollElement;\n\n if (!hasMoreResult) {\n return;\n }\n if (scrollTop + clientHeight >= scrollHeight) {\n onScroll(() => {\n // after load more searched messages\n });\n }\n };\n\n useSetChannel(\n { channelUrl, sdkInit },\n { sdk, logger, messageSearchDispatcher },\n );\n\n const requestString = useSearchStringEffect({ searchString }, { messageSearchDispatcher });\n\n useGetSearchMessages(\n { currentChannel, channelUrl, requestString, messageSearchQuery, onResultLoaded, retryCount },\n { sdk, logger, messageSearchDispatcher },\n );\n\n const onScroll = useScrollCallback(\n { currentMessageSearchQuery, hasMoreResult, onResultLoaded },\n { logger, messageSearchDispatcher },\n );\n\n const handleRetryToConnect = () => {\n setRetryCount(retryCount + 1);\n };\n return (\n <MessageSearchContext.Provider value={{\n channelUrl,\n searchString,\n requestString,\n messageSearchQuery,\n onResultLoaded,\n onResultClick,\n retryCount,\n setRetryCount,\n selectedMessageId,\n setSelectedMessageId,\n messageSearchDispatcher,\n allMessages,\n loading,\n isInvalid,\n currentChannel,\n currentMessageSearchQuery,\n hasMoreResult,\n onScroll,\n scrollRef,\n handleRetryToConnect,\n handleOnScroll,\n }}>\n {props?.children}\n </MessageSearchContext.Provider>\n );\n}\n\nexport type UseMessageSearchType = () => MessageSearchProviderInterface;\nconst useMessageSearchContext: UseMessageSearchType = () => React.useContext(MessageSearchContext);\n\nexport {\n MessageSearchProvider,\n useMessageSearchContext,\n};\n"],"names":["GET_SEARCHED_MESSAGES","GET_NEXT_SEARCHED_MESSAGES","START_MESSAGE_SEARCH","START_GETTING_SEARCHED_MESSAGES","SET_QUERY_INVALID","SET_CURRENT_CHANNEL","CHANNEL_INVALID","RESET_SEARCH_STRING","reducer","state","action","type","actionTypes","currentChannel","payload","initialized","_a","messages","createdQuery","channelUrl","currentMessageSearchQuery","key","loading","isInvalid","allMessages","hasMoreResult","hasNext","initialState","useSetChannel","_b","sdkInit","sdk","logger","messageSearchDispatcher","useEffect","groupChannel","getChannel","then","info","messageActionTypes","catch","useGetSearchedMessages","requestString","messageSearchQuery","onResultLoaded","retryCount","createMessageSearchQuery","inputSearchMessageQueryObject","order","messageTimestampFrom","invitedAt","keyword","createdQuery_1","next","error","warning","useScrollCallback","useCallback","cb","DEBOUNCING_TIME","useSearchStringEffect","searchString","_c","useState","setRequestString","_d","debouncingTimer","setDebouncingTimer","clearTimeout","setTimeout","MessageSearchContext","React","createContext","undefined","MessageSearchProvider","props","onResultClick","globalState","useSendbirdStateContext","_f","setRetryCount","_g","selectedMessageId","setSelectedMessageId","_h","useReducer","messageSearchReducer","messageSearchInitialState","messageSearchStore","config","stores","sdkStore","scrollRef","useRef","handleOnScroll","e","scrollElement","target","scrollTop","scrollHeight","clientHeight","onScroll","useGetSearchMessages","handleRetryToConnect","children","useMessageSearchContext","useContext"],"mappings":";;;;;;AAAO,IAAMA,qBAAqB,GAAG,uBAA9B;AACA,IAAMC,0BAA0B,GAAG,4BAAnC;AACA,IAAMC,oBAAoB,GAAG,sBAA7B;AACA,IAAMC,+BAA+B,GAAG,iCAAxC;AACA,IAAMC,iBAAiB,GAAG,mBAA1B;AAEA,IAAMC,mBAAmB,GAAG,qBAA5B;AACA,IAAMC,eAAe,GAAG,iBAAxB;AACA,IAAMC,mBAAmB,GAAG,qBAA5B;;SCKiBC,QACtBC,OACAC;AAEA,UAAQA,MAAM,CAACC,IAAf;AACE,SAAKC,mBAAL;AAAsC;AACpC,YAAMC,cAAc,GAAGH,MAAM,CAACI,OAA9B;AACA,qCACKL;AACHI,UAAAA,cAAc;AACdE,UAAAA,WAAW,EAAE;UAHf;AAKD;;AACD,SAAKH,eAAL;AAAkC;AAChC,qCACKH;AACHI,UAAAA,cAAc,EAAE;AAChBE,UAAAA,WAAW,EAAE;UAHf;AAKD;;AACD,SAAKH,qBAAL;AAAwC;AAChC,YAAAI,KAA6BN,MAAM,CAACI,OAApC;AAAA,YAAEG,QAAQ,cAAV;AAAA,YAAYC,YAAY,kBAAxB;;AACN,YACEA,YAAY,IACTA,YAAY,CAACC,UAAb,KAA4B,CAACV,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEW,yBAAR,EAA6DD,UAD5F,IAEGD,YAAY,CAACG,GAAb,KAAqB,CAACZ,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEW,yBAAR,EAA6DC,GAHvF,EAIE;AACA,uCACKZ;AACHa,YAAAA,OAAO,EAAE;AACTC,YAAAA,SAAS,EAAE;AACXC,YAAAA,WAAW,oBAAMP;AACjBQ,YAAAA,aAAa,EAAE,CAAChB,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEW,yBAAR,EAA6DM;YAL9E;AAOD;;AACD,4BAAYjB,MAAZ;AACD;;AACD,SAAKG,iBAAL;AAAoC;AAClC,qCACKH;AACHc,UAAAA,SAAS,EAAE;UAFb;AAID;;AACD,SAAKX,oBAAL;AAAuC;AACrC,qCACKH;AACHc,UAAAA,SAAS,EAAE;AACXD,UAAAA,OAAO,EAAE;UAHX;AAKD;;AACD,SAAKV,+BAAL;AAAkD;AAChD,YAAMQ,yBAAyB,GAAGV,MAAM,CAACI,OAAzC;AACA,qCACKL;AACHa,UAAAA,OAAO,EAAE;AACTF,UAAAA,yBAAyB;UAH3B;AAKD;;AACD,SAAKR,0BAAL;AAA6C;AAC3C,YAAMK,QAAQ,GAAGP,MAAM,CAACI,OAAxB;AACA,qCACKL;AACHe,UAAAA,WAAW,kCAAMf,KAAK,CAACe,oBAAgBP;AACvCQ,UAAAA,aAAa,EAAE,CAAChB,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAEW,yBAAR,EAAyDM;UAH1E;AAKD;;AACD,SAAKd,mBAAL;AAAsC;AACpC,qCACKH;AACHe,UAAAA,WAAW,EAAE;UAFf;AAID;;AACD;AAAS;AACP,eAAOf,KAAP;AACD;AAtEH;AAwED;;ACxED,IAAMkB,YAAY,GAAU;AAC1BH,EAAAA,WAAW,EAAE,EADa;AAE1BF,EAAAA,OAAO,EAAE,KAFiB;AAG1BC,EAAAA,SAAS,EAAE,KAHe;AAI1BR,EAAAA,WAAW,EAAE,KAJa;AAK1BF,EAAAA,cAAc,EAAE,IALU;AAM1BO,EAAAA,yBAAyB,EAAE,IAND;AAO1BK,EAAAA,aAAa,EAAE;AAPW,CAA5B;;ACFA,SAASG,aAAT,CACEZ,EADF,EAEEa,EAFF;MACIV,UAAU;MAAEW,OAAO;MACnBC,GAAG;MAAEC,MAAM;MAAEC,uBAAuB;AAEtCC,EAAAA,SAAS,CAAC;AACR,QAAIf,UAAU,IAAIW,OAAd,KAA0BC,GAAG,SAAH,IAAAA,GAAG,WAAH,SAAA,GAAAA,GAAG,CAAEI,YAA/B,CAAJ,EAAkD;AAChDJ,MAAAA,GAAG,CAACI,YAAJ,CAAiBC,UAAjB,CAA4BjB,UAA5B,EAAwCkB,IAAxC,CAA6C,UAACF,YAAD;AAC3CH,QAAAA,MAAM,CAACM,IAAP,CAAY,6CAAZ,EAA2DH,YAA3D;AACAF,QAAAA,uBAAuB,CAAC;AACtBtB,UAAAA,IAAI,EAAE4B,mBADgB;AAEtBzB,UAAAA,OAAO,EAAEqB;AAFa,SAAD,CAAvB;AAID,OAND,EAMGK,KANH,CAMS;AACPP,QAAAA,uBAAuB,CAAC;AACtBtB,UAAAA,IAAI,EAAE4B,eADgB;AAEtBzB,UAAAA,OAAO,EAAE;AAFa,SAAD,CAAvB;AAID,OAXD;AAYD;AACF,GAfQ,EAeN,CAACK,UAAD,EAAaW,OAAb,CAfM,CAAT;AAgBD;;ACFD,SAASW,sBAAT,CACEzB,EADF,EAEEa,EAFF;MACIhB,cAAc;MAAEM,UAAU;MAAEuB,aAAa;MAAEC,kBAAkB;MAAEC,cAAc;MAAEC,UAAU;MACzFd,GAAG;MAAEC,MAAM;MAAEC,uBAAuB;AAEtCC,EAAAA,SAAS,CAAC;AACRD,IAAAA,uBAAuB,CAAC;AACtBtB,MAAAA,IAAI,EAAE4B,oBADgB;AAEtBzB,MAAAA,OAAO,EAAE;AAFa,KAAD,CAAvB;;AAIA,QAAIiB,GAAG,IAAIZ,UAAP,IAAqBY,GAAG,CAACe,wBAAzB,IAAqDjC,cAAzD,EAAyE;AACvE,UAAI6B,aAAJ,EAAmB;AACjB,YAAMK,6BAA6B,yBAC9BJ;AACHK,UAAAA,KAAK,EAAE;AACP7B,UAAAA,UAAU;AACV8B,UAAAA,oBAAoB,EAAEpC,cAAc,CAACqC;AACrCC,UAAAA,OAAO,EAAET;UALX;;AAOA,YAAMU,cAAY,GAAGrB,GAAG,CAACe,wBAAJ,CAA6BC,6BAA7B,CAArB;AACAK,QAAAA,cAAY,CAACC,IAAb,GAAoBhB,IAApB,CAAyB,UAACpB,QAAD;AACvBe,UAAAA,MAAM,CAACM,IAAP,CAAY,oEAAZ,EAAkFrB,QAAlF;AACAgB,UAAAA,uBAAuB,CAAC;AACtBtB,YAAAA,IAAI,EAAE4B,qBADgB;AAEtBzB,YAAAA,OAAO,EAAE;AACPG,cAAAA,QAAQ,UADD;AAEPC,cAAAA,YAAY;AAFL;AAFa,WAAD,CAAvB;;AAOA,cAAI0B,cAAc,IAAI,OAAOA,cAAP,KAA0B,UAAhD,EAA4D;AAC1DA,YAAAA,cAAc,CAAC3B,QAAD,EAAW,IAAX,CAAd;AACD;AACF,SAZD,EAYGuB,KAZH,CAYS,UAACc,KAAD;AACPtB,UAAAA,MAAM,CAACuB,OAAP,CAAe,wDAAf,EAAyED,KAAzE;AACArB,UAAAA,uBAAuB,CAAC;AACtBtB,YAAAA,IAAI,EAAE4B,iBADgB;AAEtBzB,YAAAA,OAAO,EAAE;AAFa,WAAD,CAAvB;;AAIA,cAAI8B,cAAc,IAAI,OAAOA,cAAP,KAA0B,UAAhD,EAA4D;AAC1DA,YAAAA,cAAc,CAAC,IAAD,EAAOU,KAAP,CAAd;AACD;AACF,SArBD;AAsBArB,QAAAA,uBAAuB,CAAC;AACtBtB,UAAAA,IAAI,EAAE4B,+BADgB;AAEtBzB,UAAAA,OAAO,EAAEsC;AAFa,SAAD,CAAvB;AAID,OAnCD,MAmCO;AACLpB,QAAAA,MAAM,CAACM,IAAP,CAAY,iEAAZ;AACD;AACF;AACF,GA7CQ,EA6CN,CAACnB,UAAD,EAAawB,kBAAb,EAAiCD,aAAjC,EAAgD7B,cAAhD,EAAgEgC,UAAhE,CA7CM,CAAT;AA8CD;;ACrDD,SAASW,iBAAT,CACExC,EADF,EAEEa,EAFF;MACIT,yBAAyB;MAAEK,aAAa;MAAEmB,cAAc;MACxDZ,MAAM;MAAEC,uBAAuB;AAEjC,SAAOwB,WAAW,CAAC,UAACC,EAAD;AACjB,QAAI,CAACjC,aAAL,EAAoB;AAClBO,MAAAA,MAAM,CAACuB,OAAP,CAAe,6DAAf,EAA8E9B,aAA9E;AACD;;AACD,QAAIL,yBAAyB,IAAIA,yBAAyB,CAACM,OAA3D,EAAoE;AAClEN,MAAAA,yBAAyB,CAACiC,IAA1B,GAAiChB,IAAjC,CAAsC,UAACpB,QAAD;AACpCe,QAAAA,MAAM,CAACM,IAAP,CAAY,wEAAZ,EAAsFrB,QAAtF;AACAgB,QAAAA,uBAAuB,CAAC;AACtBtB,UAAAA,IAAI,EAAE4B,0BADgB;AAEtBzB,UAAAA,OAAO,EAAEG;AAFa,SAAD,CAAvB;AAIAyC,QAAAA,EAAE,CAACzC,QAAD,EAAW,IAAX,CAAF;;AACA,YAAI2B,cAAc,IAAI,OAAOA,cAAP,KAA0B,UAAhD,EAA4D;AAC1DA,UAAAA,cAAc,CAAC3B,QAAD,EAAW,IAAX,CAAd;AACD;AACF,OAVD,EAUGuB,KAVH,CAUS,UAACc,KAAD;AACPtB,QAAAA,MAAM,CAACuB,OAAP,CAAe,qEAAf,EAAsFD,KAAtF;AACAI,QAAAA,EAAE,CAAC,IAAD,EAAOJ,KAAP,CAAF;;AACA,YAAIV,cAAc,IAAI,OAAOA,cAAP,KAA0B,UAAhD,EAA4D;AAC1DA,UAAAA,cAAc,CAAC,IAAD,EAAOU,KAAP,CAAd;AACD;AACF,OAhBD;AAiBD,KAlBD,MAkBO;AACLtB,MAAAA,MAAM,CAACuB,OAAP,CAAe,iEAAf;AACD;AACF,GAzBiB,EAyBf,CAACnC,yBAAD,EAA4BK,aAA5B,CAzBe,CAAlB;AA0BD;;ACjDD,IAAMkC,eAAe,GAAG,GAAxB;;AAEA,SAASC,qBAAT,CACE5C,EADF,EAEEa,EAFF;MACIgC,YAAY;MACZ5B,uBAAuB;;AAEnB,MAAA6B,KAAoCC,QAAQ,CAAC,EAAD,CAA5C;AAAA,MAACrB,aAAa,QAAd;AAAA,MAAgBsB,gBAAgB,QAAhC;;AACA,MAAAC,KAAwCF,QAAQ,CAAC,IAAD,CAAhD;AAAA,MAACG,eAAe,QAAhB;AAAA,MAAkBC,kBAAkB,QAApC;;AACNjC,EAAAA,SAAS,CAAC;AACRkC,IAAAA,YAAY,CAACF,eAAD,CAAZ;;AACA,QAAIL,YAAJ,EAAkB;AAChBM,MAAAA,kBAAkB,CAChBE,UAAU,CAAC;AACTL,QAAAA,gBAAgB,CAACH,YAAD,CAAhB;AACD,OAFS,EAEPF,eAFO,CADM,CAAlB;AAKD,KAND,MAMO;AACLK,MAAAA,gBAAgB,CAAC,EAAD,CAAhB;AACA/B,MAAAA,uBAAuB,CAAC;AACtBtB,QAAAA,IAAI,EAAE4B,mBADgB;AAEtBzB,QAAAA,OAAO,EAAE;AAFa,OAAD,CAAvB;AAID;AACF,GAfQ,EAeN,CAAC+C,YAAD,CAfM,CAAT;AAgBA,SAAOnB,aAAP;AACD;;ACeD,IAAM4B,oBAAoB,gBAAGC,cAAK,CAACC,aAAN,CAAyDC,SAAzD,CAA7B;;IAEMC,qBAAqB,GAAyC,SAA9DA,qBAA8D,CAACC,KAAD;;;AAGhE;AAAAxD,EAAAA,UAAU,GAKRwD,KAAK,WALP;AAAA,MACAd,YAAY,GAIVc,KAAK,aALP;AAAA,MAEAhC,kBAAkB,GAGhBgC,KAAK,mBALP;AAAA,MAGA/B,cAAc,GAEZ+B,KAAK,eALP;AAAA,MAIAC,aAAa,GACXD,KAAK,cALP;AAOF,MAAME,WAAW,GAAGC,uBAAuB,EAA3C;;AAGM,MAAAC,KAA8BhB,QAAQ,CAAC,CAAD,CAAtC;AAAA,MAAClB,UAAU,QAAX;AAAA,MAAamC,aAAa,QAA1B;;;AACA,MAAAC,KAA4ClB,QAAQ,CAAC,CAAD,CAApD;AAAA,MAACmB,iBAAiB,QAAlB;AAAA,MAAoBC,oBAAoB,QAAxC;;AACA,MAAAC,KAAgDC,UAAU,CAACC,OAAD,EAAuBC,YAAvB,CAA1D;AAAA,MAACC,kBAAkB,QAAnB;AAAA,MAAqBvD,uBAAuB,QAA5C;;AAEJ,MAAAT,WAAW,GAMTgE,kBAAkB,YANpB;AAAA,MACAlE,OAAO,GAKLkE,kBAAkB,QANpB;AAAA,MAEAjE,SAAS,GAIPiE,kBAAkB,UANpB;AAAA,MAGA3E,cAAc,GAGZ2E,kBAAkB,eANpB;AAAA,MAIApE,yBAAyB,GAEvBoE,kBAAkB,0BANpB;AAAA,MAKA/D,aAAa,GACX+D,kBAAkB,cANpB;AAQF,MAAMxD,MAAM,GAAG,MAAA6C,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEY,MAAb,UAAA,iBAAA,SAAA,MAAqBzD,MAApC;AACA,MAAMD,GAAG,GAAG,MAAA,MAAA8C,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEa,MAAb,UAAA,iBAAA,SAAA,MAAqBC,QAArB,UAAA,iBAAA,SAAA,MAA+B5D,GAA3C;AACA,MAAMD,OAAO,GAAG,MAAA,MAAA+C,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEa,MAAb,UAAA,iBAAA,SAAA,MAAqBC,QAArB,UAAA,iBAAA,SAAA,MAA+B5E,WAA/C;AACA,MAAM6E,SAAS,GAAGC,MAAM,CAAC,IAAD,CAAxB;;AACA,MAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACC,CAAD;AACrB,QAAMC,aAAa,GAAGD,CAAC,CAACE,MAAxB;AAEE,QAAAC,SAAS,GAGPF,aAAa,UAHf;AAAA,QACAG,YAAY,GAEVH,aAAa,aAHf;AAAA,QAEAI,YAAY,GACVJ,aAAa,aAHf;;AAKF,QAAI,CAACvE,aAAL,EAAoB;AAClB;AACD;;AACD,QAAIyE,SAAS,GAAGE,YAAZ,IAA4BD,YAAhC,EAA8C;AAC5CE,MAAAA,QAAQ,CAAC;AAER,OAFO,CAAR;AAGD;AACF,GAhBD;;AAkBAzE,EAAAA,aAAa,CACX;AAAET,IAAAA,UAAU,YAAZ;AAAcW,IAAAA,OAAO;AAArB,GADW,EAEX;AAAEC,IAAAA,GAAG,KAAL;AAAOC,IAAAA,MAAM,QAAb;AAAeC,IAAAA,uBAAuB;AAAtC,GAFW,CAAb;AAKA,MAAMS,aAAa,GAAGkB,qBAAqB,CAAC;AAAEC,IAAAA,YAAY;AAAd,GAAD,EAAmB;AAAE5B,IAAAA,uBAAuB;AAAzB,GAAnB,CAA3C;AAEAqE,EAAAA,sBAAoB,CAClB;AAAEzF,IAAAA,cAAc,gBAAhB;AAAkBM,IAAAA,UAAU,YAA5B;AAA8BuB,IAAAA,aAAa,eAA3C;AAA6CC,IAAAA,kBAAkB,oBAA/D;AAAiEC,IAAAA,cAAc,gBAA/E;AAAiFC,IAAAA,UAAU;AAA3F,GADkB,EAElB;AAAEd,IAAAA,GAAG,KAAL;AAAOC,IAAAA,MAAM,QAAb;AAAeC,IAAAA,uBAAuB;AAAtC,GAFkB,CAApB;AAKA,MAAMoE,QAAQ,GAAG7C,iBAAiB,CAChC;AAAEpC,IAAAA,yBAAyB,2BAA3B;AAA6BK,IAAAA,aAAa,eAA1C;AAA4CmB,IAAAA,cAAc;AAA1D,GADgC,EAEhC;AAAEZ,IAAAA,MAAM,QAAR;AAAUC,IAAAA,uBAAuB;AAAjC,GAFgC,CAAlC;;AAKA,MAAMsE,oBAAoB,GAAG,SAAvBA,oBAAuB;AAC3BvB,IAAAA,aAAa,CAACnC,UAAU,GAAG,CAAd,CAAb;AACD,GAFD;;AAGA,sBACE0B,6BAAC,oBAAD,CAAsB,QAAtB;AAA+B,IAAA,KAAK,EAAE;AACpCpD,MAAAA,UAAU,YAD0B;AAEpC0C,MAAAA,YAAY,cAFwB;AAGpCnB,MAAAA,aAAa,eAHuB;AAIpCC,MAAAA,kBAAkB,oBAJkB;AAKpCC,MAAAA,cAAc,gBALsB;AAMpCgC,MAAAA,aAAa,eANuB;AAOpC/B,MAAAA,UAAU,YAP0B;AAQpCmC,MAAAA,aAAa,eARuB;AASpCE,MAAAA,iBAAiB,mBATmB;AAUpCC,MAAAA,oBAAoB,sBAVgB;AAWpClD,MAAAA,uBAAuB,yBAXa;AAYpCT,MAAAA,WAAW,aAZyB;AAapCF,MAAAA,OAAO,SAb6B;AAcpCC,MAAAA,SAAS,WAd2B;AAepCV,MAAAA,cAAc,gBAfsB;AAgBpCO,MAAAA,yBAAyB,2BAhBW;AAiBpCK,MAAAA,aAAa,eAjBuB;AAkBpC4E,MAAAA,QAAQ,UAlB4B;AAmBpCT,MAAAA,SAAS,WAnB2B;AAoBpCW,MAAAA,oBAAoB,sBApBgB;AAqBpCT,MAAAA,cAAc;AArBsB;AAAtC,KAuBGnB,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAE6B,QAvBV,CADF;AA2BD;;IAGKC,uBAAuB,GAAyB,SAAhDA,uBAAgD;AAAM,SAAAlC,cAAK,CAACmC,UAAN,CAAiBpC,oBAAjB,CAAA;AAAsC;;;;"}
package/MessageSearch.js CHANGED
@@ -1,25 +1,25 @@
1
1
  import React__default, { useState, useContext, useEffect } from 'react';
2
2
  import { MessageSearchUI } from './MessageSearch/components/MessageSearchUI.js';
3
- import { a as LocalizationContext } from './LocalizationContext-5b0a9339.js';
3
+ import { a as LocalizationContext } from './LocalizationContext-fb3dafcd.js';
4
4
  import Icon, { IconTypes, IconColors } from './ui/Icon.js';
5
5
  import IconButton from './ui/IconButton.js';
6
- import { L as Label, a as LabelTypography, b as LabelColors } from './index-17cf7808.js';
6
+ import { L as Label, a as LabelTypography, b as LabelColors } from './index-71e2bf26.js';
7
7
  import Loader from './ui/Loader.js';
8
8
  import { MessageSearchProvider } from './MessageSearch/context.js';
9
9
  import './ui/MessageSearchItem.js';
10
- import './tslib.es6-2c4d01e9.js';
11
- import './index-92160328.js';
12
- import './index-94489c17.js';
13
- import './index-a755675d.js';
14
- import './index-95677caf.js';
10
+ import './tslib.es6-a7db0cc5.js';
11
+ import './index-ccd99cfe.js';
12
+ import './index-13729368.js';
13
+ import './index-a5e8849a.js';
14
+ import './index-16bed610.js';
15
15
  import './ui/Avatar.js';
16
16
  import './ui/ImageRenderer.js';
17
- import './_rollupPluginBabelHelpers-d10f91b9.js';
17
+ import './_rollupPluginBabelHelpers-084fb589.js';
18
18
  import 'prop-types';
19
- import './uuid-0ab81e67.js';
20
- import './index-691dc8da.js';
19
+ import './uuid-748dae7a.js';
20
+ import './index-c95d2aab.js';
21
21
  import './ui/MessageSearchFileItem.js';
22
- import './stringSet-5a85ff4b.js';
22
+ import './stringSet-d3a8a2a0.js';
23
23
  import './useSendbirdStateContext.js';
24
24
  import './withSendBird.js';
25
25
 
@@ -79,13 +79,13 @@ function MessageSearchPannel(props) {
79
79
  return /*#__PURE__*/React__default.createElement("div", {
80
80
  className: COMPONENT_CLASS_NAME
81
81
  }, /*#__PURE__*/React__default.createElement("div", {
82
- className: COMPONENT_CLASS_NAME + "__header"
82
+ className: "".concat(COMPONENT_CLASS_NAME, "__header")
83
83
  }, /*#__PURE__*/React__default.createElement(Label, {
84
- className: COMPONENT_CLASS_NAME + "__header__title",
84
+ className: "".concat(COMPONENT_CLASS_NAME, "__header__title"),
85
85
  type: LabelTypography.H_2,
86
86
  color: LabelColors.ONBACKGROUND_1
87
87
  }, stringSet.SEARCH_IN_CHANNEL), /*#__PURE__*/React__default.createElement(IconButton, {
88
- className: COMPONENT_CLASS_NAME + "__header__close-button",
88
+ className: "".concat(COMPONENT_CLASS_NAME, "__header__close-button"),
89
89
  width: "32px",
90
90
  height: "32px",
91
91
  onClick: onCloseClick
@@ -95,22 +95,22 @@ function MessageSearchPannel(props) {
95
95
  width: "22px",
96
96
  height: "22px"
97
97
  }))), /*#__PURE__*/React__default.createElement("div", {
98
- className: COMPONENT_CLASS_NAME + "__input"
98
+ className: "".concat(COMPONENT_CLASS_NAME, "__input")
99
99
  }, /*#__PURE__*/React__default.createElement("div", {
100
- className: COMPONENT_CLASS_NAME + "__input__container"
100
+ className: "".concat(COMPONENT_CLASS_NAME, "__input__container")
101
101
  }, /*#__PURE__*/React__default.createElement(Icon, {
102
- className: COMPONENT_CLASS_NAME + "__input__container__search-icon",
102
+ className: "".concat(COMPONENT_CLASS_NAME, "__input__container__search-icon"),
103
103
  type: IconTypes.SEARCH,
104
104
  fillColor: IconColors.ON_BACKGROUND_3,
105
105
  width: "24px",
106
106
  height: "24px"
107
107
  }), /*#__PURE__*/React__default.createElement("input", {
108
- className: COMPONENT_CLASS_NAME + "__input__container__input-area",
108
+ className: "".concat(COMPONENT_CLASS_NAME, "__input__container__input-area"),
109
109
  placeholder: stringSet.SEARCH,
110
110
  value: inputString,
111
111
  onChange: handleOnChangeInputString
112
112
  }), inputString && loading && /*#__PURE__*/React__default.createElement(Loader, {
113
- className: COMPONENT_CLASS_NAME + "__input__container__spinner",
113
+ className: "".concat(COMPONENT_CLASS_NAME, "__input__container__spinner"),
114
114
  width: "20px",
115
115
  height: "20px"
116
116
  }, /*#__PURE__*/React__default.createElement(Icon, {
@@ -119,14 +119,14 @@ function MessageSearchPannel(props) {
119
119
  width: "20px",
120
120
  height: "20px"
121
121
  })), !loading && inputString && /*#__PURE__*/React__default.createElement(Icon, {
122
- className: COMPONENT_CLASS_NAME + "__input__container__reset-input-button",
122
+ className: "".concat(COMPONENT_CLASS_NAME, "__input__container__reset-input-button"),
123
123
  type: IconTypes.REMOVE,
124
124
  fillColor: IconColors.ON_BACKGROUND_3,
125
125
  width: "20px",
126
126
  height: "20px",
127
127
  onClick: handleOnClickResetStringButton
128
128
  }))), /*#__PURE__*/React__default.createElement("div", {
129
- className: COMPONENT_CLASS_NAME + "__message-search"
129
+ className: "".concat(COMPONENT_CLASS_NAME, "__message-search")
130
130
  }, /*#__PURE__*/React__default.createElement(MessageSearchProvider, {
131
131
  channelUrl: channelUrl,
132
132
  searchString: searchString,