@sendbird/uikit-react 3.0.0-rc.0 → 3.0.0-rc.1

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 (384) hide show
  1. package/App.js +33 -33
  2. package/CHANGELOG.md +1 -1
  3. package/Channel/components/ChannelHeader.js +18 -18
  4. package/Channel/components/ChannelUI.js +25 -25
  5. package/Channel/components/FileViewer.js +17 -17
  6. package/Channel/components/FrozenNotification.js +5 -5
  7. package/Channel/components/Message.js +22 -22
  8. package/Channel/components/MessageInput.js +19 -19
  9. package/Channel/components/MessageList.js +24 -24
  10. package/Channel/components/RemoveMessageModal.js +20 -20
  11. package/Channel/components/SuggestedMentionList.js +18 -18
  12. package/Channel/components/TypingIndicator.js +17 -17
  13. package/Channel/components/UnreadCount.js +5 -5
  14. package/Channel/context.js +16 -16
  15. package/Channel.js +25 -25
  16. package/ChannelList/components/AddChannel.js +15 -15
  17. package/ChannelList/components/ChannelListHeader.js +8 -8
  18. package/ChannelList/components/ChannelListUI.js +29 -29
  19. package/ChannelList/components/ChannelPreview.js +22 -22
  20. package/ChannelList/components/ChannelPreviewAction.js +17 -17
  21. package/ChannelList/context.js +11 -11
  22. package/ChannelList.js +29 -29
  23. package/{ChannelListProvider-76b1ec23.js → ChannelListProvider-c3810392.js} +9 -9
  24. package/{ChannelListProvider-76b1ec23.js.map → ChannelListProvider-c3810392.js.map} +1 -1
  25. package/{ChannelProvider-c0ed5fae.js → ChannelProvider-03ec9238.js} +11 -11
  26. package/{ChannelProvider-c0ed5fae.js.map → ChannelProvider-03ec9238.js.map} +1 -1
  27. package/ChannelSettings/components/ChannelProfile.js +14 -14
  28. package/ChannelSettings/components/ChannelSettingsUI.js +19 -19
  29. package/ChannelSettings/components/EditDetailsModal.js +14 -14
  30. package/ChannelSettings/components/LeaveChannel.js +11 -11
  31. package/ChannelSettings/components/ModerationPanel.js +16 -16
  32. package/ChannelSettings/components/UserListItem.js +13 -13
  33. package/ChannelSettings/components/UserPanel.js +15 -15
  34. package/ChannelSettings/context.js +4 -4
  35. package/ChannelSettings.js +19 -19
  36. package/CreateChannel/components/CreateChannelUI.js +15 -15
  37. package/CreateChannel/components/InviteUsers.js +15 -15
  38. package/CreateChannel/components/SelectChannelType.js +11 -11
  39. package/CreateChannel/context.js +5 -5
  40. package/CreateChannel.js +15 -15
  41. package/{CreateChannelProvider-8c72aa06.js → CreateChannelProvider-adb7afa8.js} +1 -1
  42. package/{CreateChannelProvider-8c72aa06.js.map → CreateChannelProvider-adb7afa8.js.map} +1 -1
  43. package/EditUserProfile/components/EditUserProfileUI.js +14 -14
  44. package/EditUserProfile.js +14 -14
  45. package/{LocalizationContext-fb3dafcd.js → LocalizationContext-0293a3fd.js} +3 -3
  46. package/{LocalizationContext-fb3dafcd.js.map → LocalizationContext-0293a3fd.js.map} +1 -1
  47. package/{MemberList-01d3c8bf.js → MemberList-4e057ef8.js} +5 -5
  48. package/{MemberList-01d3c8bf.js.map → MemberList-4e057ef8.js.map} +1 -1
  49. package/MessageSearch/components/MessageSearchUI.js +12 -12
  50. package/MessageSearch/context.js +3 -3
  51. package/MessageSearch.js +12 -12
  52. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  53. package/OpenChannel/components/OpenChannelHeader.js +15 -15
  54. package/OpenChannel/components/OpenChannelInput.js +19 -19
  55. package/OpenChannel/components/OpenChannelMessage.js +24 -24
  56. package/OpenChannel/components/OpenChannelMessageList.js +26 -26
  57. package/OpenChannel/components/OpenChannelUI.js +26 -26
  58. package/OpenChannel/context.js +12 -12
  59. package/OpenChannel.js +26 -26
  60. package/{OpenChannelProvider-0fb27972.js → OpenChannelProvider-0572862e.js} +9 -9
  61. package/{OpenChannelProvider-0fb27972.js.map → OpenChannelProvider-0572862e.js.map} +1 -1
  62. package/OpenChannelSettings/components/EditDetailsModal.js +14 -14
  63. package/OpenChannelSettings/components/OpenChannelProfile.js +14 -14
  64. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  65. package/OpenChannelSettings/components/OperatorUI.js +17 -17
  66. package/OpenChannelSettings/components/ParticipantUI.js +15 -15
  67. package/OpenChannelSettings/context.js +3 -3
  68. package/OpenChannelSettings.js +18 -18
  69. package/README.md +1 -1
  70. package/SendbirdProvider.js +12 -12
  71. package/{UserProfileContext-6a387a08.js → UserProfileContext-bcfe2804.js} +1 -1
  72. package/{UserProfileContext-6a387a08.js.map → UserProfileContext-bcfe2804.js.map} +1 -1
  73. package/{__bundle-7dfccc8c-03df3ada.js → __bundle-7dfccc8c-a0cba188.js} +1 -1
  74. package/{__bundle-7dfccc8c-03df3ada.js.map → __bundle-7dfccc8c-a0cba188.js.map} +1 -1
  75. package/{_rollupPluginBabelHelpers-084fb589.js → _rollupPluginBabelHelpers-38569358.js} +1 -1
  76. package/{_rollupPluginBabelHelpers-084fb589.js.map → _rollupPluginBabelHelpers-38569358.js.map} +1 -1
  77. package/{actionTypes-302a2801.js → actionTypes-c12e9c30.js} +1 -1
  78. package/{actionTypes-302a2801.js.map → actionTypes-c12e9c30.js.map} +1 -1
  79. package/cjs/App.js +33 -33
  80. package/cjs/Channel/components/ChannelHeader.js +18 -18
  81. package/cjs/Channel/components/ChannelUI.js +25 -25
  82. package/cjs/Channel/components/FileViewer.js +17 -17
  83. package/cjs/Channel/components/FrozenNotification.js +5 -5
  84. package/cjs/Channel/components/Message.js +22 -22
  85. package/cjs/Channel/components/MessageInput.js +19 -19
  86. package/cjs/Channel/components/MessageList.js +24 -24
  87. package/cjs/Channel/components/RemoveMessageModal.js +20 -20
  88. package/cjs/Channel/components/SuggestedMentionList.js +18 -18
  89. package/cjs/Channel/components/TypingIndicator.js +17 -17
  90. package/cjs/Channel/components/UnreadCount.js +5 -5
  91. package/cjs/Channel/context.js +16 -16
  92. package/cjs/Channel.js +25 -25
  93. package/cjs/ChannelList/components/AddChannel.js +15 -15
  94. package/cjs/ChannelList/components/ChannelListHeader.js +8 -8
  95. package/cjs/ChannelList/components/ChannelListUI.js +29 -29
  96. package/cjs/ChannelList/components/ChannelPreview.js +22 -22
  97. package/cjs/ChannelList/components/ChannelPreviewAction.js +17 -17
  98. package/cjs/ChannelList/context.js +11 -11
  99. package/cjs/ChannelList.js +29 -29
  100. package/cjs/{ChannelListProvider-7d1c0466.js → ChannelListProvider-8f421c0d.js} +9 -9
  101. package/cjs/{ChannelListProvider-7d1c0466.js.map → ChannelListProvider-8f421c0d.js.map} +1 -1
  102. package/cjs/{ChannelProvider-a3ec5a56.js → ChannelProvider-397c5f03.js} +11 -11
  103. package/cjs/{ChannelProvider-a3ec5a56.js.map → ChannelProvider-397c5f03.js.map} +1 -1
  104. package/cjs/ChannelSettings/components/ChannelProfile.js +14 -14
  105. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +19 -19
  106. package/cjs/ChannelSettings/components/EditDetailsModal.js +14 -14
  107. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  108. package/cjs/ChannelSettings/components/ModerationPanel.js +16 -16
  109. package/cjs/ChannelSettings/components/UserListItem.js +13 -13
  110. package/cjs/ChannelSettings/components/UserPanel.js +15 -15
  111. package/cjs/ChannelSettings/context.js +4 -4
  112. package/cjs/ChannelSettings.js +19 -19
  113. package/cjs/CreateChannel/components/CreateChannelUI.js +15 -15
  114. package/cjs/CreateChannel/components/InviteUsers.js +15 -15
  115. package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
  116. package/cjs/CreateChannel/context.js +5 -5
  117. package/cjs/CreateChannel.js +15 -15
  118. package/cjs/{CreateChannelProvider-95fbfb06.js → CreateChannelProvider-adb49afd.js} +1 -1
  119. package/cjs/{CreateChannelProvider-95fbfb06.js.map → CreateChannelProvider-adb49afd.js.map} +1 -1
  120. package/cjs/EditUserProfile/components/EditUserProfileUI.js +14 -14
  121. package/cjs/EditUserProfile.js +14 -14
  122. package/cjs/{LocalizationContext-5a6a0f67.js → LocalizationContext-af3a239a.js} +3 -3
  123. package/cjs/{LocalizationContext-5a6a0f67.js.map → LocalizationContext-af3a239a.js.map} +1 -1
  124. package/cjs/{MemberList-bfecdd64.js → MemberList-a507429a.js} +5 -5
  125. package/cjs/{MemberList-bfecdd64.js.map → MemberList-a507429a.js.map} +1 -1
  126. package/cjs/MessageSearch/components/MessageSearchUI.js +12 -12
  127. package/cjs/MessageSearch/context.js +3 -3
  128. package/cjs/MessageSearch.js +12 -12
  129. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  130. package/cjs/OpenChannel/components/OpenChannelHeader.js +15 -15
  131. package/cjs/OpenChannel/components/OpenChannelInput.js +19 -19
  132. package/cjs/OpenChannel/components/OpenChannelMessage.js +24 -24
  133. package/cjs/OpenChannel/components/OpenChannelMessageList.js +26 -26
  134. package/cjs/OpenChannel/components/OpenChannelUI.js +26 -26
  135. package/cjs/OpenChannel/context.js +12 -12
  136. package/cjs/OpenChannel.js +26 -26
  137. package/cjs/{OpenChannelProvider-e8247193.js → OpenChannelProvider-e0ff3593.js} +9 -9
  138. package/cjs/{OpenChannelProvider-e8247193.js.map → OpenChannelProvider-e0ff3593.js.map} +1 -1
  139. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +14 -14
  140. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +14 -14
  141. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  142. package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -17
  143. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
  144. package/cjs/OpenChannelSettings/context.js +3 -3
  145. package/cjs/OpenChannelSettings.js +18 -18
  146. package/cjs/SendbirdProvider.js +13 -13
  147. package/cjs/{UserProfileContext-17c8f75c.js → UserProfileContext-1a32d7da.js} +1 -1
  148. package/cjs/{UserProfileContext-17c8f75c.js.map → UserProfileContext-1a32d7da.js.map} +1 -1
  149. package/cjs/{__bundle-7dfccc8c-c3c55861.js → __bundle-7dfccc8c-3aa3a536.js} +1 -1
  150. package/cjs/{__bundle-7dfccc8c-c3c55861.js.map → __bundle-7dfccc8c-3aa3a536.js.map} +1 -1
  151. package/cjs/{_rollupPluginBabelHelpers-d984e855.js → _rollupPluginBabelHelpers-1be0417a.js} +1 -1
  152. package/cjs/{_rollupPluginBabelHelpers-d984e855.js.map → _rollupPluginBabelHelpers-1be0417a.js.map} +1 -1
  153. package/cjs/{actionTypes-7a330bec.js → actionTypes-9635e2a1.js} +1 -1
  154. package/cjs/{actionTypes-7a330bec.js.map → actionTypes-9635e2a1.js.map} +1 -1
  155. package/cjs/{color-b30f84a2.js → color-79441155.js} +1 -1
  156. package/cjs/{color-b30f84a2.js.map → color-79441155.js.map} +1 -1
  157. package/cjs/{compareIds-d8053014.js → compareIds-9e929882.js} +1 -1
  158. package/cjs/{compareIds-d8053014.js.map → compareIds-9e929882.js.map} +1 -1
  159. package/cjs/{const-2623fae1.js → const-3ec42b99.js} +1 -1
  160. package/cjs/{const-2623fae1.js.map → const-3ec42b99.js.map} +1 -1
  161. package/cjs/{const-6aa26f9f.js → const-c45b3772.js} +1 -1
  162. package/cjs/{const-6aa26f9f.js.map → const-c45b3772.js.map} +1 -1
  163. package/cjs/{context-83ecdafd.js → context-7f20c4fc.js} +2 -2
  164. package/cjs/{context-83ecdafd.js.map → context-7f20c4fc.js.map} +1 -1
  165. package/cjs/dist/index.css +49 -49
  166. package/cjs/dist/index.css.map +1 -1
  167. package/cjs/{groupChannel-e311e26a.js → groupChannel-57828c97.js} +2 -2
  168. package/cjs/{groupChannel-e311e26a.js.map → groupChannel-57828c97.js.map} +1 -1
  169. package/cjs/{index-df05e765.js → index-101e25b6.js} +3 -3
  170. package/cjs/{index-df05e765.js.map → index-101e25b6.js.map} +1 -1
  171. package/cjs/{index-ce679d41.js → index-7b1f120b.js} +1 -1
  172. package/cjs/{index-ce679d41.js.map → index-7b1f120b.js.map} +1 -1
  173. package/cjs/{index-2537cbc7.js → index-82b738a4.js} +4 -4
  174. package/cjs/{index-2537cbc7.js.map → index-82b738a4.js.map} +1 -1
  175. package/cjs/{index-72479c2a.js → index-c3d974a8.js} +1 -1
  176. package/cjs/{index-72479c2a.js.map → index-c3d974a8.js.map} +1 -1
  177. package/cjs/{index-5e7b82c2.js → index-c42f8ea9.js} +6 -6
  178. package/cjs/{index-5e7b82c2.js.map → index-c42f8ea9.js.map} +1 -1
  179. package/cjs/{index-1e14c5b9.js → index-c4440bd2.js} +4 -4
  180. package/cjs/{index-1e14c5b9.js.map → index-c4440bd2.js.map} +1 -1
  181. package/cjs/{index-f9677913.js → index-ebb83a37.js} +3 -3
  182. package/cjs/{index-f9677913.js.map → index-ebb83a37.js.map} +1 -1
  183. package/cjs/{index-cdcd27bc.js → index-f21d728f.js} +2 -2
  184. package/cjs/{index-cdcd27bc.js.map → index-f21d728f.js.map} +1 -1
  185. package/cjs/{index-40d245a3.js → index-f3cc1992.js} +2 -2
  186. package/cjs/{index-40d245a3.js.map → index-f3cc1992.js.map} +1 -1
  187. package/cjs/{index-ab5d906d.js → index-fddacd70.js} +2 -2
  188. package/cjs/{index-ab5d906d.js.map → index-fddacd70.js.map} +1 -1
  189. package/cjs/index.js +37 -37
  190. package/cjs/{openChannel-e9f65946.js → openChannel-19ee9ebe.js} +2 -2
  191. package/cjs/{openChannel-e9f65946.js.map → openChannel-19ee9ebe.js.map} +1 -1
  192. package/cjs/{openChannelUtils-4b7d2697.js → openChannelUtils-d4258320.js} +1 -1
  193. package/cjs/{openChannelUtils-4b7d2697.js.map → openChannelUtils-d4258320.js.map} +1 -1
  194. package/cjs/sendbirdSelectors.js +2 -2
  195. package/cjs/{stringSet-2f3588b5.js → stringSet-ed353b6e.js} +1 -1
  196. package/cjs/{stringSet-2f3588b5.js.map → stringSet-ed353b6e.js.map} +1 -1
  197. package/cjs/{topics-582e38dc.js → topics-1e190fcd.js} +1 -1
  198. package/cjs/{topics-582e38dc.js.map → topics-1e190fcd.js.map} +1 -1
  199. package/cjs/{tslib.es6-d9c7aa8b.js → tslib.es6-4b07fef2.js} +1 -1
  200. package/cjs/{tslib.es6-d9c7aa8b.js.map → tslib.es6-4b07fef2.js.map} +1 -1
  201. package/cjs/ui/Accordion.js +4 -4
  202. package/cjs/ui/AccordionGroup.js +2 -2
  203. package/cjs/ui/AdminMessage.js +3 -3
  204. package/cjs/ui/Avatar.js +3 -3
  205. package/cjs/ui/Badge.js +5 -5
  206. package/cjs/ui/Button.js +4 -4
  207. package/cjs/ui/ChannelAvatar.js +4 -4
  208. package/cjs/ui/ChannelPreview.js +12 -12
  209. package/cjs/ui/ChatHeader.js +8 -8
  210. package/cjs/ui/Checkbox.js +1 -1
  211. package/cjs/ui/ConnectionStatus.js +5 -5
  212. package/cjs/ui/ContextMenu.js +5 -5
  213. package/cjs/ui/DateSeparator.js +4 -4
  214. package/cjs/ui/Dropdown.js +3 -3
  215. package/cjs/ui/EmojiReactions.js +7 -7
  216. package/cjs/ui/FileMessageItemBody.js +6 -6
  217. package/cjs/ui/FileViewer.js +7 -7
  218. package/cjs/ui/Icon.js +1 -1
  219. package/cjs/ui/IconButton.js +1 -1
  220. package/cjs/ui/ImageRenderer.js +1 -1
  221. package/cjs/ui/Input.js +3 -3
  222. package/cjs/ui/Label.js +3 -3
  223. package/cjs/ui/LinkLabel.js +3 -3
  224. package/cjs/ui/Loader.js +1 -1
  225. package/cjs/ui/MentionLabel.js +12 -12
  226. package/cjs/ui/MessageContent.js +15 -15
  227. package/cjs/ui/MessageInput.js +10 -10
  228. package/cjs/ui/MessageItemMenu.js +7 -7
  229. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  230. package/cjs/ui/MessageSearchFileItem.js +10 -10
  231. package/cjs/ui/MessageSearchItem.js +10 -10
  232. package/cjs/ui/MessageStatus.js +8 -8
  233. package/cjs/ui/Modal.js +8 -8
  234. package/cjs/ui/MutedAvatarOverlay.js +1 -1
  235. package/cjs/ui/OGMessageItemBody.js +12 -12
  236. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  237. package/cjs/ui/OpenChannelAvatar.js +7 -7
  238. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  239. package/cjs/ui/OpenchannelFileMessage.js +16 -16
  240. package/cjs/ui/OpenchannelOGMessage.js +16 -16
  241. package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
  242. package/cjs/ui/OpenchannelUserMessage.js +16 -16
  243. package/cjs/ui/PlaceHolder.js +6 -6
  244. package/cjs/ui/QuoteMessage.js +7 -7
  245. package/cjs/ui/QuoteMessageInput.js +7 -7
  246. package/cjs/ui/ReactionBadge.js +3 -3
  247. package/cjs/ui/ReactionButton.js +1 -1
  248. package/cjs/ui/SortByRow.js +1 -1
  249. package/cjs/ui/TextButton.js +2 -2
  250. package/cjs/ui/TextMessageItemBody.js +12 -12
  251. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  252. package/cjs/ui/Tooltip.js +3 -3
  253. package/cjs/ui/TooltipWrapper.js +1 -1
  254. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  255. package/cjs/ui/UserListItem.js +13 -13
  256. package/cjs/ui/UserProfile.js +12 -12
  257. package/cjs/ui/Word.js +12 -12
  258. package/cjs/useSendbirdStateContext.js +3 -3
  259. package/cjs/{utils-031aba48.js → utils-6ff87257.js} +1 -1
  260. package/cjs/{utils-031aba48.js.map → utils-6ff87257.js.map} +1 -1
  261. package/cjs/{utils-689065e6.js → utils-88672f3d.js} +1 -1
  262. package/cjs/{utils-689065e6.js.map → utils-88672f3d.js.map} +1 -1
  263. package/cjs/{utils-510b93ac.js → utils-c15722aa.js} +1 -1
  264. package/cjs/{utils-510b93ac.js.map → utils-c15722aa.js.map} +1 -1
  265. package/cjs/{uuid-099485ae.js → uuid-c63c6c5a.js} +1 -1
  266. package/cjs/{uuid-099485ae.js.map → uuid-c63c6c5a.js.map} +1 -1
  267. package/cjs/{withSendBird.js → withSendbird.js} +2 -2
  268. package/cjs/{withSendBird.js.map → withSendbird.js.map} +1 -1
  269. package/{color-9bf8c922.js → color-8ef428b9.js} +1 -1
  270. package/{color-9bf8c922.js.map → color-8ef428b9.js.map} +1 -1
  271. package/{compareIds-b78d7cd6.js → compareIds-d0f57b59.js} +1 -1
  272. package/{compareIds-b78d7cd6.js.map → compareIds-d0f57b59.js.map} +1 -1
  273. package/{const-40b58d8b.js → const-c751cfe7.js} +1 -1
  274. package/{const-40b58d8b.js.map → const-c751cfe7.js.map} +1 -1
  275. package/{const-99800b8d.js → const-da7e79d6.js} +1 -1
  276. package/{const-99800b8d.js.map → const-da7e79d6.js.map} +1 -1
  277. package/{context-bedea43b.js → context-64a89b1b.js} +2 -2
  278. package/{context-bedea43b.js.map → context-64a89b1b.js.map} +1 -1
  279. package/dist/index.css +49 -49
  280. package/dist/index.css.map +1 -1
  281. package/{groupChannel-96502de7.js → groupChannel-45ccdf2b.js} +2 -2
  282. package/{groupChannel-96502de7.js.map → groupChannel-45ccdf2b.js.map} +1 -1
  283. package/{index-c95d2aab.js → index-03332d0e.js} +4 -4
  284. package/{index-c95d2aab.js.map → index-03332d0e.js.map} +1 -1
  285. package/{index-a5e8849a.js → index-244760b9.js} +4 -4
  286. package/{index-a5e8849a.js.map → index-244760b9.js.map} +1 -1
  287. package/{index-71e2bf26.js → index-5729e2f0.js} +3 -3
  288. package/{index-71e2bf26.js.map → index-5729e2f0.js.map} +1 -1
  289. package/{index-13729368.js → index-6924378b.js} +1 -1
  290. package/{index-13729368.js.map → index-6924378b.js.map} +1 -1
  291. package/{index-71ad343b.js → index-87a997c3.js} +6 -6
  292. package/{index-71ad343b.js.map → index-87a997c3.js.map} +1 -1
  293. package/{index-b574cc8e.js → index-b9a1f38d.js} +3 -3
  294. package/{index-b574cc8e.js.map → index-b9a1f38d.js.map} +1 -1
  295. package/{index-ccd99cfe.js → index-c3d16dc1.js} +2 -2
  296. package/{index-ccd99cfe.js.map → index-c3d16dc1.js.map} +1 -1
  297. package/{index-16bed610.js → index-e0ff03bb.js} +2 -2
  298. package/{index-16bed610.js.map → index-e0ff03bb.js.map} +1 -1
  299. package/{index-8e6a607b.js → index-f1c7b834.js} +2 -2
  300. package/{index-8e6a607b.js.map → index-f1c7b834.js.map} +1 -1
  301. package/{index-1d112ad4.js → index-f6405407.js} +1 -1
  302. package/{index-1d112ad4.js.map → index-f6405407.js.map} +1 -1
  303. package/index.d.ts +7 -7
  304. package/index.js +36 -36
  305. package/{openChannel-dd5c9246.js → openChannel-a604a724.js} +2 -2
  306. package/{openChannel-dd5c9246.js.map → openChannel-a604a724.js.map} +1 -1
  307. package/{openChannelUtils-211a679a.js → openChannelUtils-d9f15020.js} +1 -1
  308. package/{openChannelUtils-211a679a.js.map → openChannelUtils-d9f15020.js.map} +1 -1
  309. package/package.json +1 -1
  310. package/sendbirdSelectors.js +2 -2
  311. package/{stringSet-d3a8a2a0.js → stringSet-6bcac8f5.js} +1 -1
  312. package/{stringSet-d3a8a2a0.js.map → stringSet-6bcac8f5.js.map} +1 -1
  313. package/{topics-f941ba80.js → topics-997dc2ef.js} +1 -1
  314. package/{topics-f941ba80.js.map → topics-997dc2ef.js.map} +1 -1
  315. package/{tslib.es6-a7db0cc5.js → tslib.es6-528d1472.js} +1 -1
  316. package/{tslib.es6-a7db0cc5.js.map → tslib.es6-528d1472.js.map} +1 -1
  317. package/ui/Accordion.js +4 -4
  318. package/ui/AccordionGroup.js +2 -2
  319. package/ui/AdminMessage.js +3 -3
  320. package/ui/Avatar.js +3 -3
  321. package/ui/Badge.js +5 -5
  322. package/ui/Button.js +4 -4
  323. package/ui/ChannelAvatar.js +4 -4
  324. package/ui/ChannelPreview.js +12 -12
  325. package/ui/ChatHeader.js +8 -8
  326. package/ui/Checkbox.js +1 -1
  327. package/ui/ConnectionStatus.js +5 -5
  328. package/ui/ContextMenu.js +5 -5
  329. package/ui/DateSeparator.js +4 -4
  330. package/ui/Dropdown.js +3 -3
  331. package/ui/EmojiReactions.js +7 -7
  332. package/ui/FileMessageItemBody.js +6 -6
  333. package/ui/FileViewer.js +7 -7
  334. package/ui/Icon.js +1 -1
  335. package/ui/IconButton.js +1 -1
  336. package/ui/ImageRenderer.js +1 -1
  337. package/ui/Input.js +3 -3
  338. package/ui/Label.js +3 -3
  339. package/ui/LinkLabel.js +3 -3
  340. package/ui/Loader.js +1 -1
  341. package/ui/MentionLabel.js +12 -12
  342. package/ui/MessageContent.js +15 -15
  343. package/ui/MessageInput.js +10 -10
  344. package/ui/MessageItemMenu.js +7 -7
  345. package/ui/MessageItemReactionMenu.js +5 -5
  346. package/ui/MessageSearchFileItem.js +10 -10
  347. package/ui/MessageSearchItem.js +10 -10
  348. package/ui/MessageStatus.js +8 -8
  349. package/ui/Modal.js +8 -8
  350. package/ui/MutedAvatarOverlay.js +1 -1
  351. package/ui/OGMessageItemBody.js +12 -12
  352. package/ui/OpenChannelAdminMessage.js +4 -4
  353. package/ui/OpenChannelAvatar.js +7 -7
  354. package/ui/OpenchannelConversationHeader.js +7 -7
  355. package/ui/OpenchannelFileMessage.js +16 -16
  356. package/ui/OpenchannelOGMessage.js +16 -16
  357. package/ui/OpenchannelThumbnailMessage.js +15 -15
  358. package/ui/OpenchannelUserMessage.js +16 -16
  359. package/ui/PlaceHolder.js +6 -6
  360. package/ui/QuoteMessage.js +7 -7
  361. package/ui/QuoteMessageInput.js +7 -7
  362. package/ui/ReactionBadge.js +3 -3
  363. package/ui/ReactionButton.js +1 -1
  364. package/ui/SortByRow.js +1 -1
  365. package/ui/TextButton.js +2 -2
  366. package/ui/TextMessageItemBody.js +12 -12
  367. package/ui/ThumbnailMessageItemBody.js +3 -3
  368. package/ui/Tooltip.js +3 -3
  369. package/ui/TooltipWrapper.js +1 -1
  370. package/ui/UnknownMessageItemBody.js +7 -7
  371. package/ui/UserListItem.js +13 -13
  372. package/ui/UserProfile.js +11 -11
  373. package/ui/Word.js +12 -12
  374. package/useSendbirdStateContext.js +2 -2
  375. package/{utils-2e3623c0.js → utils-77d4fd35.js} +1 -1
  376. package/{utils-2e3623c0.js.map → utils-77d4fd35.js.map} +1 -1
  377. package/{utils-d9325ddf.js → utils-91321bf8.js} +1 -1
  378. package/{utils-d9325ddf.js.map → utils-91321bf8.js.map} +1 -1
  379. package/{utils-cadde06a.js → utils-d0e53d6f.js} +1 -1
  380. package/{utils-cadde06a.js.map → utils-d0e53d6f.js.map} +1 -1
  381. package/{uuid-748dae7a.js → uuid-ae0ebd46.js} +1 -1
  382. package/{uuid-748dae7a.js.map → uuid-ae0ebd46.js.map} +1 -1
  383. package/{withSendBird.js → withSendbird.js} +2 -2
  384. package/{withSendBird.js.map → withSendbird.js.map} +1 -1
@@ -1,4 +1,4 @@
1
- import { r as requiredArgs, t as toDate } from './index-ccd99cfe.js';
1
+ import { r as requiredArgs, t as toDate } from './index-c3d16dc1.js';
2
2
 
3
3
  /**
4
4
  * @name startOfDay
@@ -61,4 +61,4 @@ function isSameDay(dirtyDateLeft, dirtyDateRight) {
61
61
  }
62
62
 
63
63
  export { isSameDay as i, startOfDay as s };
64
- //# sourceMappingURL=index-16bed610.js.map
64
+ //# sourceMappingURL=index-e0ff03bb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-16bed610.js","sources":["../node_modules/date-fns/esm/startOfDay/index.js","../node_modules/date-fns/esm/isSameDay/index.js"],"sourcesContent":["import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\n\nexport default function startOfDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import startOfDay from \"../startOfDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameDay\n * @category Day Helpers\n * @summary Are the given dates in the same day?\n *\n * @description\n * Are the given dates in the same day?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same day\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 4 September 06:00:00 and 4 September 18:00:00 in the same day?\n * var result = isSameDay(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 18, 0))\n * //=> true\n */\n\nexport default function isSameDay(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeftStartOfDay = startOfDay(dirtyDateLeft);\n var dateRightStartOfDay = startOfDay(dirtyDateRight);\n return dateLeftStartOfDay.getTime() === dateRightStartOfDay.getTime();\n}"],"names":[],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAAS,UAAU,CAAC,SAAS,EAAE;AAC9C,EAAE,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAC7B,EAAE,IAAI,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAC/B,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5B,EAAE,OAAO,IAAI,CAAC;AACd;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAAS,SAAS,CAAC,aAAa,EAAE,cAAc,EAAE;AACjE,EAAE,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAC7B,EAAE,IAAI,kBAAkB,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;AACrD,EAAE,IAAI,mBAAmB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AACvD,EAAE,OAAO,kBAAkB,CAAC,OAAO,EAAE,KAAK,mBAAmB,CAAC,OAAO,EAAE,CAAC;AACxE;;;;"}
1
+ {"version":3,"file":"index-e0ff03bb.js","sources":["../node_modules/date-fns/esm/startOfDay/index.js","../node_modules/date-fns/esm/isSameDay/index.js"],"sourcesContent":["import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\n\nexport default function startOfDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import startOfDay from \"../startOfDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameDay\n * @category Day Helpers\n * @summary Are the given dates in the same day?\n *\n * @description\n * Are the given dates in the same day?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same day\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 4 September 06:00:00 and 4 September 18:00:00 in the same day?\n * var result = isSameDay(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 18, 0))\n * //=> true\n */\n\nexport default function isSameDay(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeftStartOfDay = startOfDay(dirtyDateLeft);\n var dateRightStartOfDay = startOfDay(dirtyDateRight);\n return dateLeftStartOfDay.getTime() === dateRightStartOfDay.getTime();\n}"],"names":[],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAAS,UAAU,CAAC,SAAS,EAAE;AAC9C,EAAE,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAC7B,EAAE,IAAI,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAC/B,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5B,EAAE,OAAO,IAAI,CAAC;AACd;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAAS,SAAS,CAAC,aAAa,EAAE,cAAc,EAAE;AACjE,EAAE,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAC7B,EAAE,IAAI,kBAAkB,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;AACrD,EAAE,IAAI,mBAAmB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AACvD,EAAE,OAAO,kBAAkB,CAAC,OAAO,EAAE,KAAK,mBAAmB,CAAC,OAAO,EAAE,CAAC;AACxE;;;;"}
@@ -1,4 +1,4 @@
1
- import { _ as __assign, a as __spreadArray } from './tslib.es6-a7db0cc5.js';
1
+ import { _ as __assign, a as __spreadArray } from './tslib.es6-528d1472.js';
2
2
 
3
3
  var SUPPORTED_MIMES = {
4
4
  IMAGE: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif', 'image/svg+xml', 'image/webp' // not supported in IE
@@ -685,4 +685,4 @@ var arrayEqual = function arrayEqual(array1, array2) {
685
685
  };
686
686
 
687
687
  export { isSupportedFileView as A, isVideo as B, isImage as C, isSentMessage as D, isFailedMessage as E, isPendingMessage as F, copyToClipboard as G, getEmojiListAll as H, getEmojiMapAll as I, isReactedBy as J, getEmojiTooltipString as K, getUIKitFileType as L, getUIKitFileTypes as M, isGif as N, StringObjType as S, getOutgoingMessageStates as a, getSendingMessageStatus as b, isReadMessage as c, filterMessageListParams as d, isEditedMessage as e, filterChannelListParams as f, getChannelsWithUpsertedChannel as g, getOutgoingMessageState as h, isTextuallyNull as i, isSentStatus as j, getClassName as k, convertWordToStringObj as l, arrayEqual as m, isFileMessage as n, isImageMessage as o, isThumbnailMessage as p, isAudioMessage as q, isGifMessage as r, isVideoMessage as s, truncateString as t, isUserMessage as u, getUIKitMessageTypes as v, getSenderName as w, isTextMessage as x, isOGMessage as y, getUIKitMessageType as z };
688
- //# sourceMappingURL=index-8e6a607b.js.map
688
+ //# sourceMappingURL=index-f1c7b834.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-8e6a607b.js","sources":["../src/utils/index.ts"],"sourcesContent":["import SendbirdChat, { Emoji, EmojiCategory, EmojiContainer, User } from '@sendbird/chat';\nimport type { GroupChannel, Member, SendbirdGroupChat, GroupChannelListQuery } from '@sendbird/chat/groupChannel';\nimport type { AdminMessage, FileMessage, MessageListParams, Reaction, UserMessage } from '@sendbird/chat/message';\nimport type { OpenChannel, SendbirdOpenChat } from '@sendbird/chat/openChannel';\nimport { EveryMessage } from '../types';\n\n// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp', // not supported in IE\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n AUDIO: [\n 'audio/aac',\n 'audio/midi',\n 'audio/x-midi',\n 'audio/mpeg',\n 'audio/ogg',\n 'audio/opus',\n 'audio/wav',\n 'audio/webm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/mp3',\n ],\n};\n\nexport interface UIKitMessageTypes {\n ADMIN: \"ADMIN\",\n TEXT: \"TEXT\",\n FILE: \"FILE\",\n THUMBNAIL: \"THUMBNAIL\",\n OG: \"OG\",\n UNKNOWN: \"UNKNOWN\",\n}\nconst UIKitMessageTypes: UIKitMessageTypes = {\n ADMIN: \"ADMIN\",\n TEXT: \"TEXT\",\n FILE: \"FILE\",\n THUMBNAIL: \"THUMBNAIL\",\n OG: \"OG\",\n UNKNOWN: \"UNKNOWN\",\n};\nexport interface UIKitFileTypes {\n IMAGE: \"IMAGE\",\n AUDIO: \"AUDIO\",\n VIDEO: \"VIDEO\",\n GIF: \"GIF\",\n OTHERS: \"OTHERS\",\n}\nexport const UIKitFileTypes: UIKitFileTypes = {\n IMAGE: \"IMAGE\",\n AUDIO: \"AUDIO\",\n VIDEO: \"VIDEO\",\n GIF: \"GIF\",\n OTHERS: \"OTHERS\",\n};\n\nexport interface SendingMessageStatus {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n}\nconst SendingMessageStatus: SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport interface OutgoingMessageStates {\n NONE: 'NONE',\n PENDING: 'PENDING',\n SENT: 'SENT',\n FAILED: 'FAILED',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n // delivered and read are only in group channel\n}\nexport const OutgoingMessageStates: OutgoingMessageStates = {\n NONE: 'NONE',\n PENDING: 'PENDING',\n SENT: 'SENT',\n FAILED: 'FAILED',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n};\n\nexport type CoreMessageType = EveryMessage;\n\nexport const isTextuallyNull = (text: string): boolean => {\n if (text === '' || text === null) {\n return true;\n }\n return false;\n};\n\nexport const isImage = (type: string): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: string): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: string): boolean => type === 'image/gif';\nexport const isSupportedFileView = (type: string): boolean => isImage(type) || isVideo(type);\nexport const isAudio = (type: string): boolean => SUPPORTED_MIMES.AUDIO.indexOf(type) >= 0;\n\nexport const getUIKitFileTypes = (): UIKitFileTypes => ({ ...UIKitFileTypes });\nexport const getUIKitFileType = (type: string): string => {\n if (isGif(type)) return UIKitFileTypes.GIF;\n if (isImage(type)) return UIKitFileTypes.IMAGE;\n if (isVideo(type)) return UIKitFileTypes.VIDEO;\n if (isAudio(type)) return UIKitFileTypes.AUDIO;\n return UIKitFileTypes.OTHERS;\n};\nexport const getOutgoingMessageStates = (): OutgoingMessageStates => ({ ...OutgoingMessageStates });\nexport const getOutgoingMessageState = (channel: GroupChannel | OpenChannel, message: UserMessage | FileMessage): string => {\n if (message.sendingStatus === 'pending') return OutgoingMessageStates.PENDING;\n if (message.sendingStatus === 'failed') return OutgoingMessageStates.FAILED;\n if (channel?.isGroupChannel?.()) {\n /* GroupChannel only */\n if ((channel as GroupChannel).getUnreadMemberCount(message) === 0) {\n return OutgoingMessageStates.READ;\n } else if ((channel as GroupChannel).getUndeliveredMemberCount(message) === 0) {\n return OutgoingMessageStates.DELIVERED;\n }\n }\n if (message.sendingStatus === 'succeeded') return OutgoingMessageStates.SENT;\n return OutgoingMessageStates.NONE;\n};\nexport const isSentMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'succeeded');\nexport const isDeliveredMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.DELIVERED\n || getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\nexport const isReadMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\n// TODO: Remove channel from the params, it seems unnecessary\nexport const isFailedMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'failed');\nexport const isPendingMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'pending');\nexport const isSentStatus = (state: string): boolean => (\n state === OutgoingMessageStates.SENT\n || state === OutgoingMessageStates.DELIVERED\n || state === OutgoingMessageStates.READ\n);\n\nexport const isAdminMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message.isAdminMessage?.() || (message['messageType'] && message.messageType === 'admin'))\n);\nexport const isUserMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message.isUserMessage?.() || (message['messageType'] && message.messageType === 'user'))\n);\nexport const isFileMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message.isFileMessage?.() || (message['messageType'] && message.messageType === 'file'))\n);\n\nexport const isOGMessage = (message: UserMessage): boolean => !!(\n message && isUserMessage(message) && message?.ogMetaData && message?.ogMetaData?.url\n);\nexport const isTextMessage = (message: UserMessage): boolean => isUserMessage(message) && !isOGMessage(message);\nexport const isThumbnailMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isSupportedFileView(message.type);\nexport const isImageMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isImage(message.type);\nexport const isVideoMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isVideo(message.type);\nexport const isGifMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isGif(message.type);\nexport const isAudioMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isAudio(message.type);\n\nexport const isEditedMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => isUserMessage(message) && (message?.updatedAt > 0);\nexport const isEnabledOGMessage = (message: UserMessage): boolean => (\n (!message || !message.ogMetaData || !message.ogMetaData.url) ? false : true\n);\n\nexport const getUIKitMessageTypes = (): UIKitMessageTypes => ({ ...UIKitMessageTypes });\nexport const getUIKitMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if (isAdminMessage(message as AdminMessage)) return UIKitMessageTypes.ADMIN;\n if (isUserMessage(message as UserMessage)) {\n return isOGMessage(message as UserMessage) ? UIKitMessageTypes.OG : UIKitMessageTypes.TEXT;\n }\n if (isFileMessage(message as FileMessage)) {\n return isThumbnailMessage(message as FileMessage) ? UIKitMessageTypes.THUMBNAIL : UIKitMessageTypes.FILE;\n }\n return UIKitMessageTypes.UNKNOWN;\n};\nexport const getSendingMessageStatus = (): SendingMessageStatus => ({ ...SendingMessageStatus });\n\nconst reducer = (accumulator: Array<string>, currentValue: string | Array<string>): Array<any> => {\n if (Array.isArray(currentValue)) {\n return [...accumulator, ...currentValue];\n } else {\n accumulator.push(currentValue);\n return accumulator;\n }\n};\nexport const getClassName = (classNames: string | Array<string | Array<string>>): string => (\n Array.isArray(classNames)\n ? classNames.reduce(reducer, []).join(' ')\n : classNames\n);\nexport const isReactedBy = (userId: string, reaction: Reaction): boolean => (\n reaction.userIds.some((reactorUserId: string): boolean => reactorUserId === userId)\n);\ninterface StringSet {\n TOOLTIP__YOU: string;\n TOOLTIP__AND_YOU: string;\n TOOLTIP__UNKNOWN_USER: string;\n}\nexport const getEmojiTooltipString = (reaction: Reaction, userId: string, memberNicknamesMap: Map<string, string>, stringSet: StringSet): string => {\n let you = '';\n if (isReactedBy(userId, reaction)) {\n you = reaction.userIds.length === 1 ? stringSet.TOOLTIP__YOU : stringSet.TOOLTIP__AND_YOU;\n }\n return (`${reaction.userIds\n .filter((reactorUserId: string) => reactorUserId !== userId)\n .map((reactorUserId: string) => (memberNicknamesMap.get(reactorUserId) || stringSet.TOOLTIP__UNKNOWN_USER))\n .join(', ')}${you}`);\n};\n\n// TODO: Use the interface after language tranlsatation of Sendbird.js\ninterface UIKitStore {\n stores: {\n sdkStore: {\n sdk: SendbirdChat | SendbirdOpenChat | SendbirdGroupChat,\n },\n userStore: {\n user: User,\n },\n },\n config: {\n isReactionEnabled: boolean,\n }\n}\nexport const getCurrentUserId = (store: UIKitStore): string => (store?.stores?.userStore?.user?.userId);\nexport const getUseReaction = (store: UIKitStore, channel: GroupChannel | OpenChannel): boolean => {\n if (!store?.config?.isReactionEnabled)\n return false;\n if (!store?.stores?.sdkStore?.sdk?.appInfo?.useReaction)\n return false;\n if (channel?.isGroupChannel())\n return !((channel as GroupChannel).isBroadcast || (channel as GroupChannel).isSuper);\n return store?.config?.isReactionEnabled;\n};\n\nexport const isMessageSentByMe = (userId: string, message: UserMessage | FileMessage): boolean => (\n (userId && message?.sender?.userId) && userId === message.sender.userId\n);\n\nconst URL_REG = /[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)/;\nexport const isUrl = (text: string): boolean => URL_REG.test(text);\nconst MENTION_TAG_REG = /\\@\\{.*?\\}/i;\nexport const isMentionedText = (text: string): boolean => MENTION_TAG_REG.test(text);\n\nexport const truncateString = (fullStr: string, strLen?: number): string => {\n if (!strLen) strLen = 40;\n if (fullStr === null || fullStr === undefined) return '';\n if (fullStr.length <= strLen) return fullStr;\n const separator = '...';\n const sepLen = separator.length;\n const charsToShow = strLen - sepLen;\n const frontChars = Math.ceil(charsToShow / 2);\n const backChars = Math.floor(charsToShow / 2);\n return fullStr.substr(0, frontChars) + separator + fullStr.substr(fullStr.length - backChars);\n};\n\nexport const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport const getEmojiListAll = (emojiContainer: EmojiContainer): Array<Emoji> => (\n emojiContainer?.emojiCategories?.map((emojiCategory: EmojiCategory) => emojiCategory.emojis)\n .reduce((prevArr: Array<Emoji>, currArr: Array<Emoji>) => prevArr.concat(currArr), [])\n);\nexport const getEmojiMapAll = (emojiContainer: EmojiContainer): Map<string, Emoji> => {\n const emojiMap = new Map();\n emojiContainer?.emojiCategories?.forEach((category: EmojiCategory) => {\n category?.emojis?.forEach((emoji: Emoji): void => {\n if (emoji && emoji.key) {\n emojiMap.set(emoji.key, emoji);\n }\n });\n });\n return emojiMap;\n};\n\nexport const getUserName = (user: User): string => (user?.friendName || user?.nickname || user?.userId);\nexport const getSenderName = (message: UserMessage | FileMessage): string => (message.sender && getUserName(message.sender));\n\nexport const hasSameMembers = <T>(a: T[], b: T[]): boolean => {\n if (a === b) {\n return true;\n }\n if (a == null || b == null) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n\n const sortedA = [...a].sort();\n const sortedB = [...b].sort();\n\n for (let i = 0; i < sortedA.length; ++i) {\n if (sortedA[i] !== sortedB[i]) {\n return false;\n }\n }\n return true;\n}\nexport const isFriend = (user: User): boolean => !!(user.friendDiscoveryKey || user.friendName);\n\nexport const filterMessageListParams = (params: MessageListParams, message: UserMessage | FileMessage): boolean => {\n // @ts-ignore\n if (params?.messageTypeFilter && params.messageTypeFilter !== message.messageType) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0) {\n const customTypes = params.customTypesFilter.filter((item) => item !== '*');\n // Because Chat SDK inserts '*' when customTypes is empty\n if (customTypes.length > 0 && !customTypes.includes(message.customType)) {\n return false;\n }\n }\n if (params?.senderUserIdsFilter && params?.senderUserIdsFilter?.length > 0) {\n if (message?.isUserMessage() || message.isFileMessage()) {\n const messageSender = (message as UserMessage | FileMessage).sender || message['_sender'];\n if (!params?.senderUserIdsFilter?.includes(messageSender?.userId)) {\n return false;\n }\n } else {\n return false;\n }\n }\n if (!params?.includeParentMessageInfo && (message?.parentMessageId || message?.parentMessage)) {\n return false;\n }\n return true;\n};\n\ninterface SDKChannelListParamsPrivateProps extends GroupChannelListQuery {\n _searchFilter: {\n search_query: string,\n search_fields: Array<'member_nickname' | 'channel_name'>,\n };\n _userIdsFilter: {\n userIds: Array<string>,\n includeMode: boolean,\n queryType: 'AND' | 'OR',\n };\n}\nexport const filterChannelListParams = (params: SDKChannelListParamsPrivateProps, channel: GroupChannel, currentUserId: string): boolean => {\n if (!params?.includeEmpty && channel?.lastMessage === null) {\n return false;\n }\n if (params?._searchFilter?.search_query && params._searchFilter.search_fields?.length > 0) {\n const searchFilter = params._searchFilter;\n const searchQuery = searchFilter.search_query;\n const searchFields = searchFilter.search_fields;\n if (searchQuery && searchFields && searchFields.length > 0) {\n if (!searchFields.some((searchField) => {\n switch (searchField) {\n case 'channel_name': {\n return channel?.name?.toLowerCase().includes(searchQuery.toLowerCase());\n }\n case 'member_nickname': {\n return channel?.members?.some((member: Member) => member.nickname.toLowerCase().includes(searchQuery.toLowerCase()));\n }\n default: {\n return true;\n }\n }\n })) {\n return false;\n }\n }\n }\n if (params?._userIdsFilter?.userIds?.length > 0) {\n const userIdsFilter = params._userIdsFilter;\n const { includeMode, queryType } = userIdsFilter;\n const userIds: string[] = userIdsFilter.userIds;\n const memberIds = channel?.members?.map((member: Member) => member.userId);\n if (!includeMode) { // exact match\n if (!userIds.includes(currentUserId)) {\n userIds.push(currentUserId); // add the caller's userId if not added already.\n }\n if (channel?.members?.length > userIds.length) {\n return false; // userIds may contain one or more non-member(s).\n }\n if (!hasSameMembers(userIds, memberIds)) {\n return false;\n }\n } else if (userIds.length > 0) { // inclusive\n switch (queryType) {\n case 'AND': {\n if (userIds.some((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n case 'OR': {\n if (userIds.every((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n default: {\n break;\n }\n }\n }\n }\n if (params?.includeEmpty === false && channel?.lastMessage === null) {\n return false;\n }\n if (params?.includeFrozen === false && channel?.isFrozen === true) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0 && !params.customTypesFilter.includes(channel?.customType)) {\n return false;\n }\n if (params?.customTypeStartsWithFilter && !new RegExp(`^${params.customTypeStartsWithFilter}`).test(channel?.customType)) {\n return false;\n }\n if (params?.channelNameContainsFilter && !channel?.name?.toLowerCase().includes(params.channelNameContainsFilter.toLowerCase())) {\n return false;\n }\n if (params?.nicknameContainsFilter) {\n const lowerCasedSubString = params.nicknameContainsFilter.toLowerCase();\n if (channel?.members?.every((member: Member) => !member.nickname.toLowerCase().includes(lowerCasedSubString))) {\n return false;\n }\n }\n if (params?.channelUrlsFilter?.length > 0 && !params.channelUrlsFilter.includes(channel?.url)) {\n return false;\n }\n if (params?.myMemberStateFilter) {\n switch (params.myMemberStateFilter) {\n case 'joined_only':\n if (channel?.myMemberState !== 'joined') {\n return false;\n }\n break;\n case 'invited_only':\n if (channel?.myMemberState !== 'invited') {\n return false;\n }\n break;\n case 'invited_by_friend':\n if (channel?.myMemberState !== 'invited' || !isFriend(channel?.inviter)) {\n return false;\n }\n break;\n case 'invited_by_non_friend':\n if (channel?.myMemberState !== 'invited' || isFriend(channel?.inviter)) {\n return false;\n }\n break;\n }\n }\n if (params?.hiddenChannelFilter) {\n switch (params.hiddenChannelFilter) {\n case 'unhidden_only':\n if (channel?.isHidden || channel?.hiddenState !== 'unhidden') {\n return false;\n }\n break;\n case 'hidden_only':\n if (!channel?.isHidden) {\n return false;\n }\n break;\n case 'hidden_allow_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_allow_auto_unhide') {\n return false;\n }\n break;\n case 'hidden_prevent_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_prevent_auto_unhide') {\n return false;\n }\n break;\n }\n }\n if (params?.unreadChannelFilter) {\n switch (params.unreadChannelFilter) {\n case 'unread_message':\n if (channel?.unreadMessageCount === 0) {\n return false;\n }\n break;\n }\n }\n if (params?.publicChannelFilter) {\n switch (params.publicChannelFilter) {\n case 'public':\n if (!channel?.isPublic) {\n return false;\n }\n break;\n case 'private':\n if (channel?.isPublic) {\n return false;\n }\n break;\n }\n }\n if (params?.superChannelFilter) {\n switch (params.superChannelFilter) {\n case 'super':\n if (!channel?.isSuper) {\n return false;\n }\n break;\n case 'nonsuper':\n if (channel?.isSuper) {\n return false;\n }\n break;\n }\n }\n return true;\n};\n\nexport const binarySearch = (list: Array<number>, number: number): number => {// [100, 99, 98, 97, ...]\n const pivot = Math.floor(list.length / 2);\n if (list[pivot] === number) {\n return pivot;\n }\n const leftList = list.slice(0, pivot);\n const rightList = list.slice(pivot + 1, list.length);\n if (list[pivot] > number) {\n return pivot + 1 + (rightList.length === 0 ? 0 : binarySearch(rightList, number));\n } else {\n return (leftList.length === 0) ? pivot : binarySearch(leftList, number);\n }\n};\n// This is required when channel is displayed on channel list by filter\nexport const getChannelsWithUpsertedChannel = (channels: Array<GroupChannel>, channel: GroupChannel): Array<GroupChannel> => {\n if (channels.some((ch: GroupChannel) => ch.url === channel?.url)) {\n return channels.map((ch: GroupChannel) => (ch.url === channel?.url ? channel : ch));\n }\n const targetIndex = binarySearch(\n channels.map((channel: GroupChannel) => channel?.lastMessage?.createdAt || channel?.createdAt),\n channel?.lastMessage?.createdAt || channel?.createdAt\n );\n return [...channels.slice(0, targetIndex), channel, ...channels.slice(targetIndex, channels.length)];\n};\n\nexport const getMatchedUserIds = (word: string, users: Array<User>, _template?: string): boolean => {\n const template = _template || '@'; // Use global variable\n // const matchedUserIds = [];\n // users.map((user) => user?.userId).forEach((userId) => {\n // if (word.indexOf(`${template}{${userId}}`) > -1) {\n // matchedUserIds.push(userId);\n // }\n // });\n // return matchedUserIds;\n return users.map((user) => user?.userId).some((userId) => word.indexOf(`${template}{${userId}}`) > -1);\n};\n\nexport enum StringObjType { normal, mention, url }\nexport interface StringObj {\n type: StringObjType;\n value: string;\n userId?: string;\n}\n\nexport const convertWordToStringObj = (word: string, _users : Array<User>, _template?: string): Array<StringObj> => {\n const users = _users || [];\n const template = _template || '@'; // Use global variable\n const resultArray = [];\n const regex = RegExp(`${template}{(${users.map((user) => user?.userId).join('|')})}`, 'g');\n let excutionResult;\n let lastIndex = 0;\n while ((excutionResult = regex.exec(word)) !== null) {\n const [template, userId] = excutionResult;\n const endIndex = regex.lastIndex;\n const startIndex = endIndex - template.length;\n // Normal text\n const normalText = word.slice(lastIndex, startIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n // Mention template\n const mentionedUser = users.find((user) => user?.userId === userId);\n if (!mentionedUser) {\n resultArray.push({\n type: StringObjType.normal,\n value: template, // because template is the origin text\n });\n } else {\n resultArray.push({\n type: StringObjType.mention,\n value: mentionedUser?.nickname || '(No name)',\n userId: userId,\n });\n }\n lastIndex = endIndex;\n }\n if (lastIndex < word.length) {\n // Normal text\n const normalText = word.slice(lastIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n }\n return resultArray;\n};\n\nexport const arrayEqual = (array1: Array<unknown>, array2: Array<unknown>): boolean => {\n if (Array.isArray(array1) && Array.isArray(array2) && array1.length === array2.length) {\n for (let i = 0; i < array1.length; i++) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n }\n return false;\n};\n"],"names":["SUPPORTED_MIMES","IMAGE","VIDEO","AUDIO","UIKitMessageTypes","ADMIN","TEXT","FILE","THUMBNAIL","OG","UNKNOWN","UIKitFileTypes","GIF","OTHERS","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","OutgoingMessageStates","SENT","DELIVERED","READ","isTextuallyNull","text","isImage","type","indexOf","isVideo","isGif","isSupportedFileView","isAudio","getUIKitFileTypes","getUIKitFileType","getOutgoingMessageStates","getOutgoingMessageState","channel","message","sendingStatus","isGroupChannel","getUnreadMemberCount","getUndeliveredMemberCount","isSentMessage","isReadMessage","isFailedMessage","isPendingMessage","isSentStatus","state","isAdminMessage","messageType","isUserMessage","isFileMessage","isOGMessage","ogMetaData","url","isTextMessage","isThumbnailMessage","isImageMessage","isVideoMessage","isGifMessage","isAudioMessage","isEditedMessage","updatedAt","getUIKitMessageTypes","getUIKitMessageType","getSendingMessageStatus","reducer","accumulator","currentValue","Array","isArray","push","getClassName","classNames","reduce","join","isReactedBy","userId","reaction","userIds","some","reactorUserId","getEmojiTooltipString","memberNicknamesMap","stringSet","you","length","TOOLTIP__YOU","TOOLTIP__AND_YOU","filter","map","get","TOOLTIP__UNKNOWN_USER","URL_REG","isUrl","test","truncateString","fullStr","strLen","undefined","separator","sepLen","charsToShow","frontChars","Math","ceil","backChars","floor","substr","copyToClipboard","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild","getEmojiListAll","emojiContainer","emojiCategories","emojiCategory","emojis","prevArr","currArr","concat","getEmojiMapAll","emojiMap","Map","forEach","category","emoji","key","set","getUserName","user","friendName","nickname","getSenderName","sender","hasSameMembers","a","b","sortedA","__spreadArray","sort","sortedB","i","isFriend","friendDiscoveryKey","filterMessageListParams","params","messageTypeFilter","customTypesFilter","customTypes","item","includes","customType","senderUserIdsFilter","messageSender","includeParentMessageInfo","parentMessageId","parentMessage","filterChannelListParams","currentUserId","includeEmpty","lastMessage","_searchFilter","search_query","search_fields","searchFilter","searchQuery_1","searchFields","searchField","name","toLowerCase","members","member","_userIdsFilter","userIdsFilter","includeMode","queryType","memberIds_1","every","includeFrozen","isFrozen","customTypeStartsWithFilter","RegExp","channelNameContainsFilter","nicknameContainsFilter","lowerCasedSubString_1","channelUrlsFilter","myMemberStateFilter","myMemberState","inviter","hiddenChannelFilter","isHidden","hiddenState","unreadChannelFilter","unreadMessageCount","publicChannelFilter","isPublic","superChannelFilter","isSuper","binarySearch","list","number","pivot","leftList","slice","rightList","getChannelsWithUpsertedChannel","channels","ch","targetIndex","createdAt","StringObjType","convertWordToStringObj","word","_users","_template","users","template","resultArray","regex","excutionResult","lastIndex","template_1","endIndex","startIndex","normalText","normal","value","mentionedUser","find","mention","exec","arrayEqual","array1","array2"],"mappings":"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"}
1
+ {"version":3,"file":"index-f1c7b834.js","sources":["../src/utils/index.ts"],"sourcesContent":["import SendbirdChat, { Emoji, EmojiCategory, EmojiContainer, User } from '@sendbird/chat';\nimport type { GroupChannel, Member, SendbirdGroupChat, GroupChannelListQuery } from '@sendbird/chat/groupChannel';\nimport type { AdminMessage, FileMessage, MessageListParams, Reaction, UserMessage } from '@sendbird/chat/message';\nimport type { OpenChannel, SendbirdOpenChat } from '@sendbird/chat/openChannel';\nimport { EveryMessage } from '../types';\n\n// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp', // not supported in IE\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n AUDIO: [\n 'audio/aac',\n 'audio/midi',\n 'audio/x-midi',\n 'audio/mpeg',\n 'audio/ogg',\n 'audio/opus',\n 'audio/wav',\n 'audio/webm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/mp3',\n ],\n};\n\nexport interface UIKitMessageTypes {\n ADMIN: \"ADMIN\",\n TEXT: \"TEXT\",\n FILE: \"FILE\",\n THUMBNAIL: \"THUMBNAIL\",\n OG: \"OG\",\n UNKNOWN: \"UNKNOWN\",\n}\nconst UIKitMessageTypes: UIKitMessageTypes = {\n ADMIN: \"ADMIN\",\n TEXT: \"TEXT\",\n FILE: \"FILE\",\n THUMBNAIL: \"THUMBNAIL\",\n OG: \"OG\",\n UNKNOWN: \"UNKNOWN\",\n};\nexport interface UIKitFileTypes {\n IMAGE: \"IMAGE\",\n AUDIO: \"AUDIO\",\n VIDEO: \"VIDEO\",\n GIF: \"GIF\",\n OTHERS: \"OTHERS\",\n}\nexport const UIKitFileTypes: UIKitFileTypes = {\n IMAGE: \"IMAGE\",\n AUDIO: \"AUDIO\",\n VIDEO: \"VIDEO\",\n GIF: \"GIF\",\n OTHERS: \"OTHERS\",\n};\n\nexport interface SendingMessageStatus {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n}\nconst SendingMessageStatus: SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport interface OutgoingMessageStates {\n NONE: 'NONE',\n PENDING: 'PENDING',\n SENT: 'SENT',\n FAILED: 'FAILED',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n // delivered and read are only in group channel\n}\nexport const OutgoingMessageStates: OutgoingMessageStates = {\n NONE: 'NONE',\n PENDING: 'PENDING',\n SENT: 'SENT',\n FAILED: 'FAILED',\n DELIVERED: 'DELIVERED',\n READ: 'READ',\n};\n\nexport type CoreMessageType = EveryMessage;\n\nexport const isTextuallyNull = (text: string): boolean => {\n if (text === '' || text === null) {\n return true;\n }\n return false;\n};\n\nexport const isImage = (type: string): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: string): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: string): boolean => type === 'image/gif';\nexport const isSupportedFileView = (type: string): boolean => isImage(type) || isVideo(type);\nexport const isAudio = (type: string): boolean => SUPPORTED_MIMES.AUDIO.indexOf(type) >= 0;\n\nexport const getUIKitFileTypes = (): UIKitFileTypes => ({ ...UIKitFileTypes });\nexport const getUIKitFileType = (type: string): string => {\n if (isGif(type)) return UIKitFileTypes.GIF;\n if (isImage(type)) return UIKitFileTypes.IMAGE;\n if (isVideo(type)) return UIKitFileTypes.VIDEO;\n if (isAudio(type)) return UIKitFileTypes.AUDIO;\n return UIKitFileTypes.OTHERS;\n};\nexport const getOutgoingMessageStates = (): OutgoingMessageStates => ({ ...OutgoingMessageStates });\nexport const getOutgoingMessageState = (channel: GroupChannel | OpenChannel, message: UserMessage | FileMessage): string => {\n if (message.sendingStatus === 'pending') return OutgoingMessageStates.PENDING;\n if (message.sendingStatus === 'failed') return OutgoingMessageStates.FAILED;\n if (channel?.isGroupChannel?.()) {\n /* GroupChannel only */\n if ((channel as GroupChannel).getUnreadMemberCount(message) === 0) {\n return OutgoingMessageStates.READ;\n } else if ((channel as GroupChannel).getUndeliveredMemberCount(message) === 0) {\n return OutgoingMessageStates.DELIVERED;\n }\n }\n if (message.sendingStatus === 'succeeded') return OutgoingMessageStates.SENT;\n return OutgoingMessageStates.NONE;\n};\nexport const isSentMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'succeeded');\nexport const isDeliveredMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.DELIVERED\n || getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\nexport const isReadMessage = (channel: GroupChannel, message: UserMessage | FileMessage): boolean => (\n getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ\n);\n// TODO: Remove channel from the params, it seems unnecessary\nexport const isFailedMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'failed');\nexport const isPendingMessage = (message: UserMessage | FileMessage): boolean => (message.sendingStatus === 'pending');\nexport const isSentStatus = (state: string): boolean => (\n state === OutgoingMessageStates.SENT\n || state === OutgoingMessageStates.DELIVERED\n || state === OutgoingMessageStates.READ\n);\n\nexport const isAdminMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message.isAdminMessage?.() || (message['messageType'] && message.messageType === 'admin'))\n);\nexport const isUserMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message.isUserMessage?.() || (message['messageType'] && message.messageType === 'user'))\n);\nexport const isFileMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => (\n message && (message.isFileMessage?.() || (message['messageType'] && message.messageType === 'file'))\n);\n\nexport const isOGMessage = (message: UserMessage): boolean => !!(\n message && isUserMessage(message) && message?.ogMetaData && message?.ogMetaData?.url\n);\nexport const isTextMessage = (message: UserMessage): boolean => isUserMessage(message) && !isOGMessage(message);\nexport const isThumbnailMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isSupportedFileView(message.type);\nexport const isImageMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isImage(message.type);\nexport const isVideoMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isVideo(message.type);\nexport const isGifMessage = (message: FileMessage): boolean => message && isThumbnailMessage(message) && isGif(message.type);\nexport const isAudioMessage = (message: FileMessage): boolean => message && isFileMessage(message) && isAudio(message.type);\n\nexport const isEditedMessage = (message: AdminMessage | UserMessage | FileMessage): boolean => isUserMessage(message) && (message?.updatedAt > 0);\nexport const isEnabledOGMessage = (message: UserMessage): boolean => (\n (!message || !message.ogMetaData || !message.ogMetaData.url) ? false : true\n);\n\nexport const getUIKitMessageTypes = (): UIKitMessageTypes => ({ ...UIKitMessageTypes });\nexport const getUIKitMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if (isAdminMessage(message as AdminMessage)) return UIKitMessageTypes.ADMIN;\n if (isUserMessage(message as UserMessage)) {\n return isOGMessage(message as UserMessage) ? UIKitMessageTypes.OG : UIKitMessageTypes.TEXT;\n }\n if (isFileMessage(message as FileMessage)) {\n return isThumbnailMessage(message as FileMessage) ? UIKitMessageTypes.THUMBNAIL : UIKitMessageTypes.FILE;\n }\n return UIKitMessageTypes.UNKNOWN;\n};\nexport const getSendingMessageStatus = (): SendingMessageStatus => ({ ...SendingMessageStatus });\n\nconst reducer = (accumulator: Array<string>, currentValue: string | Array<string>): Array<any> => {\n if (Array.isArray(currentValue)) {\n return [...accumulator, ...currentValue];\n } else {\n accumulator.push(currentValue);\n return accumulator;\n }\n};\nexport const getClassName = (classNames: string | Array<string | Array<string>>): string => (\n Array.isArray(classNames)\n ? classNames.reduce(reducer, []).join(' ')\n : classNames\n);\nexport const isReactedBy = (userId: string, reaction: Reaction): boolean => (\n reaction.userIds.some((reactorUserId: string): boolean => reactorUserId === userId)\n);\ninterface StringSet {\n TOOLTIP__YOU: string;\n TOOLTIP__AND_YOU: string;\n TOOLTIP__UNKNOWN_USER: string;\n}\nexport const getEmojiTooltipString = (reaction: Reaction, userId: string, memberNicknamesMap: Map<string, string>, stringSet: StringSet): string => {\n let you = '';\n if (isReactedBy(userId, reaction)) {\n you = reaction.userIds.length === 1 ? stringSet.TOOLTIP__YOU : stringSet.TOOLTIP__AND_YOU;\n }\n return (`${reaction.userIds\n .filter((reactorUserId: string) => reactorUserId !== userId)\n .map((reactorUserId: string) => (memberNicknamesMap.get(reactorUserId) || stringSet.TOOLTIP__UNKNOWN_USER))\n .join(', ')}${you}`);\n};\n\n// TODO: Use the interface after language tranlsatation of Sendbird.js\ninterface UIKitStore {\n stores: {\n sdkStore: {\n sdk: SendbirdChat | SendbirdOpenChat | SendbirdGroupChat,\n },\n userStore: {\n user: User,\n },\n },\n config: {\n isReactionEnabled: boolean,\n }\n}\nexport const getCurrentUserId = (store: UIKitStore): string => (store?.stores?.userStore?.user?.userId);\nexport const getUseReaction = (store: UIKitStore, channel: GroupChannel | OpenChannel): boolean => {\n if (!store?.config?.isReactionEnabled)\n return false;\n if (!store?.stores?.sdkStore?.sdk?.appInfo?.useReaction)\n return false;\n if (channel?.isGroupChannel())\n return !((channel as GroupChannel).isBroadcast || (channel as GroupChannel).isSuper);\n return store?.config?.isReactionEnabled;\n};\n\nexport const isMessageSentByMe = (userId: string, message: UserMessage | FileMessage): boolean => (\n (userId && message?.sender?.userId) && userId === message.sender.userId\n);\n\nconst URL_REG = /[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)/;\nexport const isUrl = (text: string): boolean => URL_REG.test(text);\nconst MENTION_TAG_REG = /\\@\\{.*?\\}/i;\nexport const isMentionedText = (text: string): boolean => MENTION_TAG_REG.test(text);\n\nexport const truncateString = (fullStr: string, strLen?: number): string => {\n if (!strLen) strLen = 40;\n if (fullStr === null || fullStr === undefined) return '';\n if (fullStr.length <= strLen) return fullStr;\n const separator = '...';\n const sepLen = separator.length;\n const charsToShow = strLen - sepLen;\n const frontChars = Math.ceil(charsToShow / 2);\n const backChars = Math.floor(charsToShow / 2);\n return fullStr.substr(0, frontChars) + separator + fullStr.substr(fullStr.length - backChars);\n};\n\nexport const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport const getEmojiListAll = (emojiContainer: EmojiContainer): Array<Emoji> => (\n emojiContainer?.emojiCategories?.map((emojiCategory: EmojiCategory) => emojiCategory.emojis)\n .reduce((prevArr: Array<Emoji>, currArr: Array<Emoji>) => prevArr.concat(currArr), [])\n);\nexport const getEmojiMapAll = (emojiContainer: EmojiContainer): Map<string, Emoji> => {\n const emojiMap = new Map();\n emojiContainer?.emojiCategories?.forEach((category: EmojiCategory) => {\n category?.emojis?.forEach((emoji: Emoji): void => {\n if (emoji && emoji.key) {\n emojiMap.set(emoji.key, emoji);\n }\n });\n });\n return emojiMap;\n};\n\nexport const getUserName = (user: User): string => (user?.friendName || user?.nickname || user?.userId);\nexport const getSenderName = (message: UserMessage | FileMessage): string => (message.sender && getUserName(message.sender));\n\nexport const hasSameMembers = <T>(a: T[], b: T[]): boolean => {\n if (a === b) {\n return true;\n }\n if (a == null || b == null) {\n return false;\n }\n if (a.length !== b.length) {\n return false;\n }\n\n const sortedA = [...a].sort();\n const sortedB = [...b].sort();\n\n for (let i = 0; i < sortedA.length; ++i) {\n if (sortedA[i] !== sortedB[i]) {\n return false;\n }\n }\n return true;\n}\nexport const isFriend = (user: User): boolean => !!(user.friendDiscoveryKey || user.friendName);\n\nexport const filterMessageListParams = (params: MessageListParams, message: UserMessage | FileMessage): boolean => {\n // @ts-ignore\n if (params?.messageTypeFilter && params.messageTypeFilter !== message.messageType) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0) {\n const customTypes = params.customTypesFilter.filter((item) => item !== '*');\n // Because Chat SDK inserts '*' when customTypes is empty\n if (customTypes.length > 0 && !customTypes.includes(message.customType)) {\n return false;\n }\n }\n if (params?.senderUserIdsFilter && params?.senderUserIdsFilter?.length > 0) {\n if (message?.isUserMessage() || message.isFileMessage()) {\n const messageSender = (message as UserMessage | FileMessage).sender || message['_sender'];\n if (!params?.senderUserIdsFilter?.includes(messageSender?.userId)) {\n return false;\n }\n } else {\n return false;\n }\n }\n if (!params?.includeParentMessageInfo && (message?.parentMessageId || message?.parentMessage)) {\n return false;\n }\n return true;\n};\n\ninterface SDKChannelListParamsPrivateProps extends GroupChannelListQuery {\n _searchFilter: {\n search_query: string,\n search_fields: Array<'member_nickname' | 'channel_name'>,\n };\n _userIdsFilter: {\n userIds: Array<string>,\n includeMode: boolean,\n queryType: 'AND' | 'OR',\n };\n}\nexport const filterChannelListParams = (params: SDKChannelListParamsPrivateProps, channel: GroupChannel, currentUserId: string): boolean => {\n if (!params?.includeEmpty && channel?.lastMessage === null) {\n return false;\n }\n if (params?._searchFilter?.search_query && params._searchFilter.search_fields?.length > 0) {\n const searchFilter = params._searchFilter;\n const searchQuery = searchFilter.search_query;\n const searchFields = searchFilter.search_fields;\n if (searchQuery && searchFields && searchFields.length > 0) {\n if (!searchFields.some((searchField) => {\n switch (searchField) {\n case 'channel_name': {\n return channel?.name?.toLowerCase().includes(searchQuery.toLowerCase());\n }\n case 'member_nickname': {\n return channel?.members?.some((member: Member) => member.nickname.toLowerCase().includes(searchQuery.toLowerCase()));\n }\n default: {\n return true;\n }\n }\n })) {\n return false;\n }\n }\n }\n if (params?._userIdsFilter?.userIds?.length > 0) {\n const userIdsFilter = params._userIdsFilter;\n const { includeMode, queryType } = userIdsFilter;\n const userIds: string[] = userIdsFilter.userIds;\n const memberIds = channel?.members?.map((member: Member) => member.userId);\n if (!includeMode) { // exact match\n if (!userIds.includes(currentUserId)) {\n userIds.push(currentUserId); // add the caller's userId if not added already.\n }\n if (channel?.members?.length > userIds.length) {\n return false; // userIds may contain one or more non-member(s).\n }\n if (!hasSameMembers(userIds, memberIds)) {\n return false;\n }\n } else if (userIds.length > 0) { // inclusive\n switch (queryType) {\n case 'AND': {\n if (userIds.some((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n case 'OR': {\n if (userIds.every((userId: string) => !memberIds.includes(userId))) {\n return false;\n }\n break;\n }\n default: {\n break;\n }\n }\n }\n }\n if (params?.includeEmpty === false && channel?.lastMessage === null) {\n return false;\n }\n if (params?.includeFrozen === false && channel?.isFrozen === true) {\n return false;\n }\n if (params?.customTypesFilter?.length > 0 && !params.customTypesFilter.includes(channel?.customType)) {\n return false;\n }\n if (params?.customTypeStartsWithFilter && !new RegExp(`^${params.customTypeStartsWithFilter}`).test(channel?.customType)) {\n return false;\n }\n if (params?.channelNameContainsFilter && !channel?.name?.toLowerCase().includes(params.channelNameContainsFilter.toLowerCase())) {\n return false;\n }\n if (params?.nicknameContainsFilter) {\n const lowerCasedSubString = params.nicknameContainsFilter.toLowerCase();\n if (channel?.members?.every((member: Member) => !member.nickname.toLowerCase().includes(lowerCasedSubString))) {\n return false;\n }\n }\n if (params?.channelUrlsFilter?.length > 0 && !params.channelUrlsFilter.includes(channel?.url)) {\n return false;\n }\n if (params?.myMemberStateFilter) {\n switch (params.myMemberStateFilter) {\n case 'joined_only':\n if (channel?.myMemberState !== 'joined') {\n return false;\n }\n break;\n case 'invited_only':\n if (channel?.myMemberState !== 'invited') {\n return false;\n }\n break;\n case 'invited_by_friend':\n if (channel?.myMemberState !== 'invited' || !isFriend(channel?.inviter)) {\n return false;\n }\n break;\n case 'invited_by_non_friend':\n if (channel?.myMemberState !== 'invited' || isFriend(channel?.inviter)) {\n return false;\n }\n break;\n }\n }\n if (params?.hiddenChannelFilter) {\n switch (params.hiddenChannelFilter) {\n case 'unhidden_only':\n if (channel?.isHidden || channel?.hiddenState !== 'unhidden') {\n return false;\n }\n break;\n case 'hidden_only':\n if (!channel?.isHidden) {\n return false;\n }\n break;\n case 'hidden_allow_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_allow_auto_unhide') {\n return false;\n }\n break;\n case 'hidden_prevent_auto_unhide':\n if (!channel?.isHidden || channel?.hiddenState !== 'hidden_prevent_auto_unhide') {\n return false;\n }\n break;\n }\n }\n if (params?.unreadChannelFilter) {\n switch (params.unreadChannelFilter) {\n case 'unread_message':\n if (channel?.unreadMessageCount === 0) {\n return false;\n }\n break;\n }\n }\n if (params?.publicChannelFilter) {\n switch (params.publicChannelFilter) {\n case 'public':\n if (!channel?.isPublic) {\n return false;\n }\n break;\n case 'private':\n if (channel?.isPublic) {\n return false;\n }\n break;\n }\n }\n if (params?.superChannelFilter) {\n switch (params.superChannelFilter) {\n case 'super':\n if (!channel?.isSuper) {\n return false;\n }\n break;\n case 'nonsuper':\n if (channel?.isSuper) {\n return false;\n }\n break;\n }\n }\n return true;\n};\n\nexport const binarySearch = (list: Array<number>, number: number): number => {// [100, 99, 98, 97, ...]\n const pivot = Math.floor(list.length / 2);\n if (list[pivot] === number) {\n return pivot;\n }\n const leftList = list.slice(0, pivot);\n const rightList = list.slice(pivot + 1, list.length);\n if (list[pivot] > number) {\n return pivot + 1 + (rightList.length === 0 ? 0 : binarySearch(rightList, number));\n } else {\n return (leftList.length === 0) ? pivot : binarySearch(leftList, number);\n }\n};\n// This is required when channel is displayed on channel list by filter\nexport const getChannelsWithUpsertedChannel = (channels: Array<GroupChannel>, channel: GroupChannel): Array<GroupChannel> => {\n if (channels.some((ch: GroupChannel) => ch.url === channel?.url)) {\n return channels.map((ch: GroupChannel) => (ch.url === channel?.url ? channel : ch));\n }\n const targetIndex = binarySearch(\n channels.map((channel: GroupChannel) => channel?.lastMessage?.createdAt || channel?.createdAt),\n channel?.lastMessage?.createdAt || channel?.createdAt\n );\n return [...channels.slice(0, targetIndex), channel, ...channels.slice(targetIndex, channels.length)];\n};\n\nexport const getMatchedUserIds = (word: string, users: Array<User>, _template?: string): boolean => {\n const template = _template || '@'; // Use global variable\n // const matchedUserIds = [];\n // users.map((user) => user?.userId).forEach((userId) => {\n // if (word.indexOf(`${template}{${userId}}`) > -1) {\n // matchedUserIds.push(userId);\n // }\n // });\n // return matchedUserIds;\n return users.map((user) => user?.userId).some((userId) => word.indexOf(`${template}{${userId}}`) > -1);\n};\n\nexport enum StringObjType { normal, mention, url }\nexport interface StringObj {\n type: StringObjType;\n value: string;\n userId?: string;\n}\n\nexport const convertWordToStringObj = (word: string, _users : Array<User>, _template?: string): Array<StringObj> => {\n const users = _users || [];\n const template = _template || '@'; // Use global variable\n const resultArray = [];\n const regex = RegExp(`${template}{(${users.map((user) => user?.userId).join('|')})}`, 'g');\n let excutionResult;\n let lastIndex = 0;\n while ((excutionResult = regex.exec(word)) !== null) {\n const [template, userId] = excutionResult;\n const endIndex = regex.lastIndex;\n const startIndex = endIndex - template.length;\n // Normal text\n const normalText = word.slice(lastIndex, startIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n // Mention template\n const mentionedUser = users.find((user) => user?.userId === userId);\n if (!mentionedUser) {\n resultArray.push({\n type: StringObjType.normal,\n value: template, // because template is the origin text\n });\n } else {\n resultArray.push({\n type: StringObjType.mention,\n value: mentionedUser?.nickname || '(No name)',\n userId: userId,\n });\n }\n lastIndex = endIndex;\n }\n if (lastIndex < word.length) {\n // Normal text\n const normalText = word.slice(lastIndex);\n resultArray.push({\n type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,\n value: normalText,\n });\n }\n return resultArray;\n};\n\nexport const arrayEqual = (array1: Array<unknown>, array2: Array<unknown>): boolean => {\n if (Array.isArray(array1) && Array.isArray(array2) && array1.length === array2.length) {\n for (let i = 0; i < array1.length; i++) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n }\n return false;\n};\n"],"names":["SUPPORTED_MIMES","IMAGE","VIDEO","AUDIO","UIKitMessageTypes","ADMIN","TEXT","FILE","THUMBNAIL","OG","UNKNOWN","UIKitFileTypes","GIF","OTHERS","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","OutgoingMessageStates","SENT","DELIVERED","READ","isTextuallyNull","text","isImage","type","indexOf","isVideo","isGif","isSupportedFileView","isAudio","getUIKitFileTypes","getUIKitFileType","getOutgoingMessageStates","getOutgoingMessageState","channel","message","sendingStatus","isGroupChannel","getUnreadMemberCount","getUndeliveredMemberCount","isSentMessage","isReadMessage","isFailedMessage","isPendingMessage","isSentStatus","state","isAdminMessage","messageType","isUserMessage","isFileMessage","isOGMessage","ogMetaData","url","isTextMessage","isThumbnailMessage","isImageMessage","isVideoMessage","isGifMessage","isAudioMessage","isEditedMessage","updatedAt","getUIKitMessageTypes","getUIKitMessageType","getSendingMessageStatus","reducer","accumulator","currentValue","Array","isArray","push","getClassName","classNames","reduce","join","isReactedBy","userId","reaction","userIds","some","reactorUserId","getEmojiTooltipString","memberNicknamesMap","stringSet","you","length","TOOLTIP__YOU","TOOLTIP__AND_YOU","filter","map","get","TOOLTIP__UNKNOWN_USER","URL_REG","isUrl","test","truncateString","fullStr","strLen","undefined","separator","sepLen","charsToShow","frontChars","Math","ceil","backChars","floor","substr","copyToClipboard","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild","getEmojiListAll","emojiContainer","emojiCategories","emojiCategory","emojis","prevArr","currArr","concat","getEmojiMapAll","emojiMap","Map","forEach","category","emoji","key","set","getUserName","user","friendName","nickname","getSenderName","sender","hasSameMembers","a","b","sortedA","__spreadArray","sort","sortedB","i","isFriend","friendDiscoveryKey","filterMessageListParams","params","messageTypeFilter","customTypesFilter","customTypes","item","includes","customType","senderUserIdsFilter","messageSender","includeParentMessageInfo","parentMessageId","parentMessage","filterChannelListParams","currentUserId","includeEmpty","lastMessage","_searchFilter","search_query","search_fields","searchFilter","searchQuery_1","searchFields","searchField","name","toLowerCase","members","member","_userIdsFilter","userIdsFilter","includeMode","queryType","memberIds_1","every","includeFrozen","isFrozen","customTypeStartsWithFilter","RegExp","channelNameContainsFilter","nicknameContainsFilter","lowerCasedSubString_1","channelUrlsFilter","myMemberStateFilter","myMemberState","inviter","hiddenChannelFilter","isHidden","hiddenState","unreadChannelFilter","unreadMessageCount","publicChannelFilter","isPublic","superChannelFilter","isSuper","binarySearch","list","number","pivot","leftList","slice","rightList","getChannelsWithUpsertedChannel","channels","ch","targetIndex","createdAt","StringObjType","convertWordToStringObj","word","_users","_template","users","template","resultArray","regex","excutionResult","lastIndex","template_1","endIndex","startIndex","normalText","normal","value","mentionedUser","find","mention","exec","arrayEqual","array1","array2"],"mappings":"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"}
@@ -4,4 +4,4 @@ import 'react';
4
4
  var MODAL_ROOT = 'sendbird-modal-root';
5
5
 
6
6
  export { MODAL_ROOT as M };
7
- //# sourceMappingURL=index-1d112ad4.js.map
7
+ //# sourceMappingURL=index-f6405407.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-1d112ad4.js","sources":["../src/hooks/useModal/ModalRoot/index.jsx"],"sourcesContent":["// simple component to be used as modal root\nimport React from 'react';\n\nexport const MODAL_ROOT = 'sendbird-modal-root';\n\nexport default () => (\n <div id={MODAL_ROOT} />\n);\n"],"names":["MODAL_ROOT"],"mappings":";;AAAA;IAGaA,UAAU,GAAG;;;;"}
1
+ {"version":3,"file":"index-f6405407.js","sources":["../src/hooks/useModal/ModalRoot/index.jsx"],"sourcesContent":["// simple component to be used as modal root\nimport React from 'react';\n\nexport const MODAL_ROOT = 'sendbird-modal-root';\n\nexport default () => (\n <div id={MODAL_ROOT} />\n);\n"],"names":["MODAL_ROOT"],"mappings":";;AAAA;IAGaA,UAAU,GAAG;;;;"}
package/index.d.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  * homepage: https://sendbird.com/
4
4
  * git: https://github.com/sendbird/sendbird-uikit-react
5
5
  */
6
- declare module "SendbirdUIKitGlobal" {
6
+ declare module "SendbirdUIKitGlobal" {
7
7
  import type React from 'react';
8
8
  import type Locale from 'date-fns';
9
9
  import type SendbirdChat from '@sendbird/chat';
@@ -838,13 +838,13 @@ declare module '@sendbird/uikit-react/useSendbirdStateContext' {
838
838
  export default useSendbirdStateContext;
839
839
  }
840
840
 
841
- declare module '@sendbird/uikit-react/withSendBird' {
841
+ declare module '@sendbird/uikit-react/withSendbird' {
842
842
  import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
843
- function withSendBird(
843
+ function withSendbird(
844
844
  ChildComp: React.Component | React.ElementType,
845
845
  mapStoreToProps?: (store: SendbirdUIKitGlobal.SendBirdState) => unknown
846
846
  ): (props: unknown) => React.ReactNode;
847
- export default withSendBird;
847
+ export default withSendbird;
848
848
  }
849
849
 
850
850
  /** ChannelList */
@@ -902,9 +902,9 @@ declare module '@sendbird/uikit-react/ChannelSettings/context' {
902
902
  export const useChannelSettingsContext: () => SendbirdUIKitGlobal.ChannelSettingsProviderInterface;
903
903
  }
904
904
 
905
- declare module '@sendbird/uikit-react/ChannelSettings/components/AdminPanel' {
906
- const AdminPanel: React.FunctionComponent;
907
- export default AdminPanel;
905
+ declare module '@sendbird/uikit-react/ChannelSettings/components/ModerationPanel' {
906
+ const ModerationPanel: React.FunctionComponent;
907
+ export default ModerationPanel;
908
908
  }
909
909
 
910
910
  declare module '@sendbird/uikit-react/ChannelSettings/components/ChannelProfile' {
package/index.js CHANGED
@@ -3,52 +3,52 @@ export { default as App } from './App.js';
3
3
  export { default as ChannelSettings } from './ChannelSettings.js';
4
4
  export { default as ChannelList } from './ChannelList.js';
5
5
  export { default as Channel } from './Channel.js';
6
- export { g as getStringSet } from './stringSet-d3a8a2a0.js';
6
+ export { g as getStringSet } from './stringSet-6bcac8f5.js';
7
7
  export { default as OpenChannel } from './OpenChannel.js';
8
8
  export { default as OpenChannelSettings } from './OpenChannelSettings.js';
9
9
  export { default as MessageSearch } from './MessageSearch.js';
10
- export { default as withSendBird } from './withSendBird.js';
10
+ export { default as withSendBird } from './withSendbird.js';
11
11
  export { default as sendbirdSelectors } from './sendbirdSelectors.js';
12
12
  export { default as useSendbirdStateContext } from './useSendbirdStateContext.js';
13
- import './_rollupPluginBabelHelpers-084fb589.js';
13
+ import './_rollupPluginBabelHelpers-38569358.js';
14
14
  import 'react';
15
15
  import 'prop-types';
16
- import './openChannel-dd5c9246.js';
17
- import './__bundle-7dfccc8c-03df3ada.js';
18
- import './groupChannel-96502de7.js';
19
- import './actionTypes-302a2801.js';
20
- import './index-8e6a607b.js';
21
- import './tslib.es6-a7db0cc5.js';
16
+ import './openChannel-a604a724.js';
17
+ import './__bundle-7dfccc8c-a0cba188.js';
18
+ import './groupChannel-45ccdf2b.js';
19
+ import './actionTypes-c12e9c30.js';
20
+ import './index-f1c7b834.js';
21
+ import './tslib.es6-528d1472.js';
22
22
  import 'css-vars-ponyfill';
23
- import './uuid-748dae7a.js';
24
- import './LocalizationContext-fb3dafcd.js';
25
- import './index-13729368.js';
23
+ import './uuid-ae0ebd46.js';
24
+ import './LocalizationContext-0293a3fd.js';
25
+ import './index-6924378b.js';
26
26
  import './ChannelSettings/components/ChannelSettingsUI.js';
27
27
  import './ChannelSettings/context.js';
28
- import './UserProfileContext-6a387a08.js';
29
- import './index-c95d2aab.js';
28
+ import './UserProfileContext-bcfe2804.js';
29
+ import './index-03332d0e.js';
30
30
  import './ui/Icon.js';
31
31
  import './ui/Loader.js';
32
- import './index-71e2bf26.js';
32
+ import './index-5729e2f0.js';
33
33
  import './ui/IconButton.js';
34
34
  import './ChannelSettings/components/ChannelProfile.js';
35
35
  import './ui/ChannelAvatar.js';
36
36
  import './ui/Avatar.js';
37
37
  import './ui/ImageRenderer.js';
38
- import './utils-d9325ddf.js';
38
+ import './utils-91321bf8.js';
39
39
  import './ui/TextButton.js';
40
- import './color-9bf8c922.js';
40
+ import './color-8ef428b9.js';
41
41
  import './ChannelSettings/components/EditDetailsModal.js';
42
42
  import './ui/Modal.js';
43
43
  import 'react-dom';
44
- import './index-1d112ad4.js';
45
- import './index-b574cc8e.js';
46
- import './utils-cadde06a.js';
44
+ import './index-f6405407.js';
45
+ import './index-b9a1f38d.js';
46
+ import './utils-d0e53d6f.js';
47
47
  import './ui/Input.js';
48
48
  import './ChannelSettings/components/ModerationPanel.js';
49
49
  import './ui/Accordion.js';
50
50
  import './ui/AccordionGroup.js';
51
- import './context-bedea43b.js';
51
+ import './context-64a89b1b.js';
52
52
  import './ui/Badge.js';
53
53
  import './ui/ContextMenu.js';
54
54
  import './ui/SortByRow.js';
@@ -57,40 +57,40 @@ import './ui/MutedAvatarOverlay.js';
57
57
  import './ui/UserProfile.js';
58
58
  import './ui/UserListItem.js';
59
59
  import './ui/Checkbox.js';
60
- import './MemberList-01d3c8bf.js';
60
+ import './MemberList-4e057ef8.js';
61
61
  import './ChannelSettings/components/LeaveChannel.js';
62
62
  import './ChannelSettings/components/UserPanel.js';
63
- import './ChannelListProvider-76b1ec23.js';
64
- import './topics-f941ba80.js';
63
+ import './ChannelListProvider-c3810392.js';
64
+ import './topics-997dc2ef.js';
65
65
  import './ChannelList/components/ChannelListUI.js';
66
66
  import './ChannelList/components/ChannelListHeader.js';
67
67
  import './ChannelList/components/AddChannel.js';
68
68
  import './CreateChannel.js';
69
69
  import './CreateChannel/components/CreateChannelUI.js';
70
- import './CreateChannelProvider-8c72aa06.js';
70
+ import './CreateChannelProvider-adb7afa8.js';
71
71
  import './CreateChannel/components/InviteUsers.js';
72
72
  import './CreateChannel/components/SelectChannelType.js';
73
73
  import './ChannelList/components/ChannelPreview.js';
74
- import './index-a5e8849a.js';
75
- import './index-16bed610.js';
76
- import './index-ccd99cfe.js';
74
+ import './index-244760b9.js';
75
+ import './index-e0ff03bb.js';
76
+ import './index-c3d16dc1.js';
77
77
  import './ui/MentionUserLabel.js';
78
78
  import './Channel/components/TypingIndicator.js';
79
- import './ChannelProvider-c0ed5fae.js';
80
- import './compareIds-b78d7cd6.js';
81
- import './const-99800b8d.js';
79
+ import './ChannelProvider-03ec9238.js';
80
+ import './compareIds-d0f57b59.js';
81
+ import './const-da7e79d6.js';
82
82
  import './ui/ReactionButton.js';
83
83
  import './ui/MessageStatus.js';
84
84
  import './ChannelList/components/ChannelPreviewAction.js';
85
85
  import './EditUserProfile.js';
86
- import './index-71ad343b.js';
86
+ import './index-87a997c3.js';
87
87
  import './Channel/components/ChannelUI.js';
88
88
  import './ui/ConnectionStatus.js';
89
89
  import './Channel/components/ChannelHeader.js';
90
90
  import './Channel/components/MessageList.js';
91
91
  import './Channel/components/Message.js';
92
92
  import './Channel/components/SuggestedMentionList.js';
93
- import './const-40b58d8b.js';
93
+ import './const-c751cfe7.js';
94
94
  import './ui/DateSeparator.js';
95
95
  import './ui/MessageInput.js';
96
96
  import 'stream';
@@ -118,15 +118,15 @@ import './Channel/components/UnreadCount.js';
118
118
  import './Channel/components/MessageInput.js';
119
119
  import './ui/QuoteMessageInput.js';
120
120
  import './OpenChannel/components/OpenChannelUI.js';
121
- import './OpenChannelProvider-0fb27972.js';
121
+ import './OpenChannelProvider-0572862e.js';
122
122
  import './OpenChannel/components/OpenChannelInput.js';
123
123
  import './OpenChannel/components/FrozenChannelNotification.js';
124
124
  import './OpenChannel/components/OpenChannelHeader.js';
125
125
  import './OpenChannel/components/OpenChannelMessageList.js';
126
126
  import './OpenChannel/components/OpenChannelMessage.js';
127
127
  import './ui/OpenchannelUserMessage.js';
128
- import './utils-2e3623c0.js';
129
- import './openChannelUtils-211a679a.js';
128
+ import './utils-77d4fd35.js';
129
+ import './openChannelUtils-d9f15020.js';
130
130
  import './ui/OpenChannelAdminMessage.js';
131
131
  import './ui/OpenchannelOGMessage.js';
132
132
  import './ui/OpenchannelThumbnailMessage.js';