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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. package/App.js +37 -36
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +20 -0
  4. package/Channel/components/ChannelHeader.js +19 -19
  5. package/Channel/components/ChannelUI.js +26 -26
  6. package/Channel/components/ChannelUI.js.map +1 -1
  7. package/Channel/components/FileViewer.js +18 -18
  8. package/Channel/components/FrozenNotification.js +5 -5
  9. package/Channel/components/Message.js +26 -24
  10. package/Channel/components/Message.js.map +1 -1
  11. package/Channel/components/MessageInput.js +20 -20
  12. package/Channel/components/MessageList.js +25 -25
  13. package/Channel/components/MessageList.js.map +1 -1
  14. package/Channel/components/RemoveMessageModal.js +20 -20
  15. package/Channel/components/SuggestedMentionList.js +19 -19
  16. package/Channel/components/TypingIndicator.js +18 -18
  17. package/Channel/components/UnreadCount.js +5 -5
  18. package/Channel/context.js +17 -17
  19. package/Channel.js +26 -26
  20. package/ChannelList/components/AddChannel.js +14 -14
  21. package/ChannelList/components/ChannelListHeader.js +7 -7
  22. package/ChannelList/components/ChannelListUI.js +30 -30
  23. package/ChannelList/components/ChannelPreview.js +23 -23
  24. package/ChannelList/components/ChannelPreviewAction.js +22 -20
  25. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  26. package/ChannelList/context.js +12 -12
  27. package/ChannelList.js +30 -30
  28. package/{ChannelListProvider-9c82d370.js → ChannelListProvider-6bf1e9c7.js} +9 -9
  29. package/{ChannelListProvider-9c82d370.js.map → ChannelListProvider-6bf1e9c7.js.map} +1 -1
  30. package/{ChannelProvider-d891cf5f.js → ChannelProvider-b68db5fd.js} +12 -12
  31. package/{ChannelProvider-d891cf5f.js.map → ChannelProvider-b68db5fd.js.map} +1 -1
  32. package/ChannelSettings/components/ChannelProfile.js +12 -12
  33. package/ChannelSettings/components/ChannelSettingsUI.js +22 -22
  34. package/ChannelSettings/components/EditDetailsModal.js +12 -12
  35. package/ChannelSettings/components/LeaveChannel.js +11 -11
  36. package/ChannelSettings/components/ModerationPanel.js +19 -19
  37. package/ChannelSettings/components/UserListItem.js +12 -12
  38. package/ChannelSettings/components/UserPanel.js +14 -14
  39. package/ChannelSettings/context.js +3 -3
  40. package/ChannelSettings.js +22 -22
  41. package/CreateChannel/components/CreateChannelUI.js +14 -14
  42. package/CreateChannel/components/InviteUsers.js +14 -14
  43. package/CreateChannel/components/SelectChannelType.js +11 -11
  44. package/CreateChannel/context.js +4 -4
  45. package/CreateChannel.js +14 -14
  46. package/{CreateChannelProvider-0af2a424.js → CreateChannelProvider-9a497a91.js} +1 -1
  47. package/{CreateChannelProvider-0af2a424.js.map → CreateChannelProvider-9a497a91.js.map} +1 -1
  48. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  49. package/EditUserProfile.js +13 -13
  50. package/{LocalizationContext-2a073ef0.js → LocalizationContext-397e33d0.js} +3 -3
  51. package/{LocalizationContext-2a073ef0.js.map → LocalizationContext-397e33d0.js.map} +1 -1
  52. package/{MemberList-0acc36c3.js → MemberList-464926f8.js} +6 -6
  53. package/{MemberList-0acc36c3.js.map → MemberList-464926f8.js.map} +1 -1
  54. package/MessageSearch/components/MessageSearchUI.js +11 -11
  55. package/MessageSearch/context.js +2 -2
  56. package/MessageSearch.js +11 -11
  57. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  58. package/OpenChannel/components/OpenChannelHeader.js +17 -17
  59. package/OpenChannel/components/OpenChannelInput.js +21 -21
  60. package/OpenChannel/components/OpenChannelMessage.js +26 -26
  61. package/OpenChannel/components/OpenChannelMessageList.js +28 -28
  62. package/OpenChannel/components/OpenChannelUI.js +28 -28
  63. package/OpenChannel/context.js +14 -14
  64. package/OpenChannel.js +28 -28
  65. package/{OpenChannelProvider-2e3fa2dd.js → OpenChannelProvider-b936f710.js} +55 -39
  66. package/OpenChannelProvider-b936f710.js.map +1 -0
  67. package/OpenChannelSettings/components/EditDetailsModal.js +15 -15
  68. package/OpenChannelSettings/components/OpenChannelProfile.js +15 -15
  69. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -21
  70. package/OpenChannelSettings/components/OperatorUI.js +20 -20
  71. package/OpenChannelSettings/components/ParticipantUI.js +18 -18
  72. package/OpenChannelSettings/context.js +17 -16
  73. package/OpenChannelSettings/context.js.map +1 -1
  74. package/OpenChannelSettings.js +21 -21
  75. package/SendbirdProvider.js +30 -22
  76. package/SendbirdProvider.js.map +1 -1
  77. package/{UserProfileContext-143a6a42.js → UserProfileContext-70f3b69e.js} +1 -1
  78. package/{UserProfileContext-143a6a42.js.map → UserProfileContext-70f3b69e.js.map} +1 -1
  79. package/{__bundle-6316ce22-cd546820.js → __bundle-6316ce22-a7fd8d16.js} +1 -1
  80. package/{__bundle-6316ce22-cd546820.js.map → __bundle-6316ce22-a7fd8d16.js.map} +1 -1
  81. package/{__bundle-7dfccc8c-6c6e7ab4.js → __bundle-7dfccc8c-85123da0.js} +2 -2
  82. package/{__bundle-7dfccc8c-6c6e7ab4.js.map → __bundle-7dfccc8c-85123da0.js.map} +1 -1
  83. package/{__bundle-fbda47dd-9dbeee1d.js → __bundle-fbda47dd-0157c82e.js} +2 -2
  84. package/{__bundle-fbda47dd-9dbeee1d.js.map → __bundle-fbda47dd-0157c82e.js.map} +1 -1
  85. package/{_rollupPluginBabelHelpers-3043541a.js → _rollupPluginBabelHelpers-67f295c6.js} +1 -1
  86. package/{_rollupPluginBabelHelpers-3043541a.js.map → _rollupPluginBabelHelpers-67f295c6.js.map} +1 -1
  87. package/{actionTypes-2873dec9.js → actionTypes-6723ddd6.js} +1 -1
  88. package/{actionTypes-2873dec9.js.map → actionTypes-6723ddd6.js.map} +1 -1
  89. package/cjs/App.js +37 -36
  90. package/cjs/App.js.map +1 -1
  91. package/cjs/Channel/components/ChannelHeader.js +19 -19
  92. package/cjs/Channel/components/ChannelUI.js +26 -26
  93. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  94. package/cjs/Channel/components/FileViewer.js +18 -18
  95. package/cjs/Channel/components/FrozenNotification.js +5 -5
  96. package/cjs/Channel/components/Message.js +26 -24
  97. package/cjs/Channel/components/Message.js.map +1 -1
  98. package/cjs/Channel/components/MessageInput.js +20 -20
  99. package/cjs/Channel/components/MessageList.js +25 -25
  100. package/cjs/Channel/components/MessageList.js.map +1 -1
  101. package/cjs/Channel/components/RemoveMessageModal.js +20 -20
  102. package/cjs/Channel/components/SuggestedMentionList.js +19 -19
  103. package/cjs/Channel/components/TypingIndicator.js +18 -18
  104. package/cjs/Channel/components/UnreadCount.js +5 -5
  105. package/cjs/Channel/context.js +17 -17
  106. package/cjs/Channel.js +26 -26
  107. package/cjs/ChannelList/components/AddChannel.js +14 -14
  108. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  109. package/cjs/ChannelList/components/ChannelListUI.js +30 -30
  110. package/cjs/ChannelList/components/ChannelPreview.js +23 -23
  111. package/cjs/ChannelList/components/ChannelPreviewAction.js +22 -20
  112. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  113. package/cjs/ChannelList/context.js +12 -12
  114. package/cjs/ChannelList.js +30 -30
  115. package/cjs/{ChannelListProvider-b60fe6ed.js → ChannelListProvider-64262fd2.js} +9 -9
  116. package/cjs/{ChannelListProvider-b60fe6ed.js.map → ChannelListProvider-64262fd2.js.map} +1 -1
  117. package/cjs/{ChannelProvider-b21b3c2a.js → ChannelProvider-c20e9dc3.js} +12 -12
  118. package/cjs/{ChannelProvider-b21b3c2a.js.map → ChannelProvider-c20e9dc3.js.map} +1 -1
  119. package/cjs/ChannelSettings/components/ChannelProfile.js +12 -12
  120. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +22 -22
  121. package/cjs/ChannelSettings/components/EditDetailsModal.js +12 -12
  122. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  123. package/cjs/ChannelSettings/components/ModerationPanel.js +19 -19
  124. package/cjs/ChannelSettings/components/UserListItem.js +12 -12
  125. package/cjs/ChannelSettings/components/UserPanel.js +14 -14
  126. package/cjs/ChannelSettings/context.js +3 -3
  127. package/cjs/ChannelSettings.js +22 -22
  128. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  129. package/cjs/CreateChannel/components/InviteUsers.js +14 -14
  130. package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
  131. package/cjs/CreateChannel/context.js +4 -4
  132. package/cjs/CreateChannel.js +14 -14
  133. package/cjs/{CreateChannelProvider-71e1e6d6.js → CreateChannelProvider-49506a99.js} +1 -1
  134. package/cjs/{CreateChannelProvider-71e1e6d6.js.map → CreateChannelProvider-49506a99.js.map} +1 -1
  135. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  136. package/cjs/EditUserProfile.js +13 -13
  137. package/cjs/{LocalizationContext-da62a103.js → LocalizationContext-35942797.js} +3 -3
  138. package/cjs/{LocalizationContext-da62a103.js.map → LocalizationContext-35942797.js.map} +1 -1
  139. package/cjs/{MemberList-442ade8c.js → MemberList-c79c660f.js} +6 -6
  140. package/cjs/{MemberList-442ade8c.js.map → MemberList-c79c660f.js.map} +1 -1
  141. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  142. package/cjs/MessageSearch/context.js +2 -2
  143. package/cjs/MessageSearch.js +11 -11
  144. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  145. package/cjs/OpenChannel/components/OpenChannelHeader.js +17 -17
  146. package/cjs/OpenChannel/components/OpenChannelInput.js +21 -21
  147. package/cjs/OpenChannel/components/OpenChannelMessage.js +26 -26
  148. package/cjs/OpenChannel/components/OpenChannelMessageList.js +28 -28
  149. package/cjs/OpenChannel/components/OpenChannelUI.js +28 -28
  150. package/cjs/OpenChannel/context.js +14 -14
  151. package/cjs/OpenChannel.js +28 -28
  152. package/cjs/{OpenChannelProvider-bc8d7f0d.js → OpenChannelProvider-174daa25.js} +55 -39
  153. package/cjs/OpenChannelProvider-174daa25.js.map +1 -0
  154. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +15 -15
  155. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +15 -15
  156. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -21
  157. package/cjs/OpenChannelSettings/components/OperatorUI.js +20 -20
  158. package/cjs/OpenChannelSettings/components/ParticipantUI.js +18 -18
  159. package/cjs/OpenChannelSettings/context.js +17 -16
  160. package/cjs/OpenChannelSettings/context.js.map +1 -1
  161. package/cjs/OpenChannelSettings.js +21 -21
  162. package/cjs/SendbirdProvider.js +30 -22
  163. package/cjs/SendbirdProvider.js.map +1 -1
  164. package/cjs/{UserProfileContext-891590a7.js → UserProfileContext-7fab3049.js} +1 -1
  165. package/cjs/{UserProfileContext-891590a7.js.map → UserProfileContext-7fab3049.js.map} +1 -1
  166. package/cjs/{__bundle-6316ce22-c06e03fc.js → __bundle-6316ce22-bdf33468.js} +1 -1
  167. package/cjs/{__bundle-6316ce22-c06e03fc.js.map → __bundle-6316ce22-bdf33468.js.map} +1 -1
  168. package/cjs/{__bundle-7dfccc8c-dcc1c854.js → __bundle-7dfccc8c-8ada5946.js} +2 -2
  169. package/cjs/{__bundle-7dfccc8c-dcc1c854.js.map → __bundle-7dfccc8c-8ada5946.js.map} +1 -1
  170. package/cjs/{__bundle-fbda47dd-1a2c2d97.js → __bundle-fbda47dd-d736220d.js} +2 -2
  171. package/cjs/{__bundle-fbda47dd-1a2c2d97.js.map → __bundle-fbda47dd-d736220d.js.map} +1 -1
  172. package/cjs/{_rollupPluginBabelHelpers-4265e501.js → _rollupPluginBabelHelpers-082ff33d.js} +1 -1
  173. package/cjs/{_rollupPluginBabelHelpers-4265e501.js.map → _rollupPluginBabelHelpers-082ff33d.js.map} +1 -1
  174. package/cjs/{actionTypes-7c5a0f8b.js → actionTypes-54af9c52.js} +1 -1
  175. package/cjs/{actionTypes-7c5a0f8b.js.map → actionTypes-54af9c52.js.map} +1 -1
  176. package/cjs/{color-42e34a43.js → color-ec571f01.js} +1 -1
  177. package/cjs/{color-42e34a43.js.map → color-ec571f01.js.map} +1 -1
  178. package/cjs/{compareIds-26079db4.js → compareIds-1b11164b.js} +1 -1
  179. package/cjs/{compareIds-26079db4.js.map → compareIds-1b11164b.js.map} +1 -1
  180. package/cjs/{const-c1a4604d.js → const-baaf7275.js} +1 -1
  181. package/cjs/{const-c1a4604d.js.map → const-baaf7275.js.map} +1 -1
  182. package/cjs/{const-8a9ec74c.js → const-c6530407.js} +1 -1
  183. package/cjs/{const-8a9ec74c.js.map → const-c6530407.js.map} +1 -1
  184. package/cjs/{context-82ac7edc.js → context-360ca291.js} +2 -2
  185. package/cjs/{context-82ac7edc.js.map → context-360ca291.js.map} +1 -1
  186. package/cjs/dist/index.css +81 -17
  187. package/cjs/dist/index.css.map +1 -1
  188. package/cjs/{groupChannel-11ed3837.js → groupChannel-150632d7.js} +4 -4
  189. package/cjs/{groupChannel-11ed3837.js.map → groupChannel-150632d7.js.map} +1 -1
  190. package/cjs/handlers/ConnectionHandler.js +3 -3
  191. package/cjs/handlers/GroupChannelHandler.js +4 -4
  192. package/cjs/handlers/OpenChannelHandler.js +3 -3
  193. package/cjs/handlers/SessionHandler.js +12 -0
  194. package/cjs/handlers/SessionHandler.js.map +1 -0
  195. package/cjs/handlers/UserEventHandler.js +3 -3
  196. package/cjs/{index-05692021.js → index-2f57e1c8.js} +3 -3
  197. package/cjs/{index-05692021.js.map → index-2f57e1c8.js.map} +1 -1
  198. package/cjs/{index-fb127b1f.js → index-43c0e19f.js} +2 -2
  199. package/cjs/{index-fb127b1f.js.map → index-43c0e19f.js.map} +1 -1
  200. package/cjs/{index-82646d4d.js → index-6a2cc1bb.js} +6 -6
  201. package/cjs/{index-82646d4d.js.map → index-6a2cc1bb.js.map} +1 -1
  202. package/cjs/{index-25336220.js → index-6fc7a50a.js} +1 -1
  203. package/cjs/{index-25336220.js.map → index-6fc7a50a.js.map} +1 -1
  204. package/cjs/{index-f5cb5c7f.js → index-8a5ade0f.js} +2 -2
  205. package/cjs/{index-f5cb5c7f.js.map → index-8a5ade0f.js.map} +1 -1
  206. package/cjs/{index-06c3dca9.js → index-8bd2c4bb.js} +2 -2
  207. package/cjs/{index-06c3dca9.js.map → index-8bd2c4bb.js.map} +1 -1
  208. package/cjs/{index-b440f8c6.js → index-a4141b26.js} +4 -4
  209. package/cjs/{index-b440f8c6.js.map → index-a4141b26.js.map} +1 -1
  210. package/cjs/{index-c79f62fd.js → index-b099330e.js} +4 -4
  211. package/cjs/{index-c79f62fd.js.map → index-b099330e.js.map} +1 -1
  212. package/cjs/{index-089e0fba.js → index-d5a50567.js} +3 -3
  213. package/cjs/{index-089e0fba.js.map → index-d5a50567.js.map} +1 -1
  214. package/cjs/{index-32562627.js → index-df12b2be.js} +1 -1
  215. package/cjs/{index-32562627.js.map → index-df12b2be.js.map} +1 -1
  216. package/cjs/{index-81e2234a.js → index-ead714db.js} +9 -9
  217. package/cjs/{index-81e2234a.js.map → index-ead714db.js.map} +1 -1
  218. package/cjs/index.js +39 -39
  219. package/cjs/{openChannel-76345cfa.js → openChannel-e2adcd8a.js} +3 -3
  220. package/cjs/{openChannel-76345cfa.js.map → openChannel-e2adcd8a.js.map} +1 -1
  221. package/cjs/{openChannelUtils-56d57483.js → openChannelUtils-e9df94b8.js} +1 -1
  222. package/cjs/{openChannelUtils-56d57483.js.map → openChannelUtils-e9df94b8.js.map} +1 -1
  223. package/cjs/{sendbird-dfd051c8.js → sendbird-211e4dae.js} +4 -3
  224. package/cjs/{sendbird-dfd051c8.js.map → sendbird-211e4dae.js.map} +1 -1
  225. package/cjs/sendbirdSelectors.js +2 -2
  226. package/cjs/{stringSet-857a128c.js → stringSet-59d50a66.js} +1 -1
  227. package/cjs/{stringSet-857a128c.js.map → stringSet-59d50a66.js.map} +1 -1
  228. package/cjs/{topics-a755c9c6.js → topics-8094440d.js} +1 -1
  229. package/cjs/{topics-a755c9c6.js.map → topics-8094440d.js.map} +1 -1
  230. package/cjs/{tslib.es6-ba69891c.js → tslib.es6-f1d73fc3.js} +18 -1
  231. package/cjs/{tslib.es6-ba69891c.js.map → tslib.es6-f1d73fc3.js.map} +1 -1
  232. package/cjs/ui/Accordion.js +4 -4
  233. package/cjs/ui/AccordionGroup.js +2 -2
  234. package/cjs/ui/AdminMessage.js +4 -4
  235. package/cjs/ui/Avatar.js +3 -3
  236. package/cjs/ui/Badge.js +6 -6
  237. package/cjs/ui/Button.js +5 -5
  238. package/cjs/ui/ChannelAvatar.js +4 -4
  239. package/cjs/ui/ChannelPreview.js +12 -12
  240. package/cjs/ui/ChatHeader.js +8 -8
  241. package/cjs/ui/ConnectionStatus.js +5 -5
  242. package/cjs/ui/ContextMenu.js +99 -85
  243. package/cjs/ui/ContextMenu.js.map +1 -1
  244. package/cjs/ui/DateSeparator.js +5 -5
  245. package/cjs/ui/EmojiReactions.js +8 -8
  246. package/cjs/ui/FileMessageItemBody.js +6 -6
  247. package/cjs/ui/FileViewer.js +9 -9
  248. package/cjs/ui/Icon.js +1 -1
  249. package/cjs/ui/IconButton.js +1 -1
  250. package/cjs/ui/ImageRenderer.js +1 -1
  251. package/cjs/ui/Input.js +3 -3
  252. package/cjs/ui/Label.js +3 -3
  253. package/cjs/ui/LinkLabel.js +3 -3
  254. package/cjs/ui/Loader.js +2 -2
  255. package/cjs/ui/MentionLabel.js +11 -11
  256. package/cjs/ui/MessageContent.js +14 -14
  257. package/cjs/ui/MessageInput.js +10 -10
  258. package/cjs/ui/MessageInput.js.map +1 -1
  259. package/cjs/ui/MessageItemMenu.js +8 -8
  260. package/cjs/ui/MessageItemReactionMenu.js +6 -6
  261. package/cjs/ui/MessageSearchFileItem.js +10 -10
  262. package/cjs/ui/MessageSearchItem.js +10 -10
  263. package/cjs/ui/MessageStatus.js +8 -8
  264. package/cjs/ui/Modal.js +8 -8
  265. package/cjs/ui/MutedAvatarOverlay.js +1 -1
  266. package/cjs/ui/OGMessageItemBody.js +11 -11
  267. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  268. package/cjs/ui/OpenChannelAvatar.js +7 -7
  269. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  270. package/cjs/ui/OpenchannelFileMessage.js +15 -15
  271. package/cjs/ui/OpenchannelOGMessage.js +15 -15
  272. package/cjs/ui/OpenchannelThumbnailMessage.js +14 -14
  273. package/cjs/ui/OpenchannelUserMessage.js +15 -15
  274. package/cjs/ui/PlaceHolder.js +7 -7
  275. package/cjs/ui/QuoteMessage.js +7 -7
  276. package/cjs/ui/QuoteMessageInput.js +7 -7
  277. package/cjs/ui/ReactionBadge.js +4 -4
  278. package/cjs/ui/ReactionButton.js +1 -1
  279. package/cjs/ui/SortByRow.js +2 -2
  280. package/cjs/ui/TextButton.js +2 -2
  281. package/cjs/ui/TextMessageItemBody.js +11 -11
  282. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  283. package/cjs/ui/Tooltip.js +4 -4
  284. package/cjs/ui/TooltipWrapper.js +1 -1
  285. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  286. package/cjs/ui/UserListItem.js +12 -12
  287. package/cjs/ui/UserProfile.js +10 -10
  288. package/cjs/ui/Word.js +11 -11
  289. package/cjs/useSendbirdStateContext.js +1 -1
  290. package/cjs/{utils-c39eb349.js → utils-09755f32.js} +1 -1
  291. package/cjs/{utils-c39eb349.js.map → utils-09755f32.js.map} +1 -1
  292. package/cjs/{utils-bf57a41a.js → utils-c5ed90dc.js} +1 -1
  293. package/cjs/{utils-bf57a41a.js.map → utils-c5ed90dc.js.map} +1 -1
  294. package/cjs/{utils-bfbac88e.js → utils-ef8fd6ba.js} +1 -1
  295. package/cjs/{utils-bfbac88e.js.map → utils-ef8fd6ba.js.map} +1 -1
  296. package/cjs/{uuid-49679ac2.js → uuid-abe82759.js} +1 -1
  297. package/cjs/{uuid-49679ac2.js.map → uuid-abe82759.js.map} +1 -1
  298. package/cjs/withSendbird.js +1 -1
  299. package/{color-798488ed.js → color-c5e2ab33.js} +1 -1
  300. package/{color-798488ed.js.map → color-c5e2ab33.js.map} +1 -1
  301. package/{compareIds-2e073780.js → compareIds-7233a846.js} +1 -1
  302. package/{compareIds-2e073780.js.map → compareIds-7233a846.js.map} +1 -1
  303. package/{const-b88f8299.js → const-849d720a.js} +1 -1
  304. package/{const-b88f8299.js.map → const-849d720a.js.map} +1 -1
  305. package/{const-51fc1a68.js → const-87ede7b1.js} +1 -1
  306. package/{const-51fc1a68.js.map → const-87ede7b1.js.map} +1 -1
  307. package/{context-406bf9f1.js → context-57c4ac55.js} +2 -2
  308. package/{context-406bf9f1.js.map → context-57c4ac55.js.map} +1 -1
  309. package/dist/index.css +81 -17
  310. package/dist/index.css.map +1 -1
  311. package/{groupChannel-17ffbb7f.js → groupChannel-333bdda8.js} +4 -4
  312. package/{groupChannel-17ffbb7f.js.map → groupChannel-333bdda8.js.map} +1 -1
  313. package/handlers/ConnectionHandler.js +4 -4
  314. package/handlers/GroupChannelHandler.js +5 -5
  315. package/handlers/OpenChannelHandler.js +4 -4
  316. package/handlers/SessionHandler.js +9 -0
  317. package/handlers/SessionHandler.js.map +1 -0
  318. package/handlers/UserEventHandler.js +4 -4
  319. package/{index-4e56f382.js → index-30d6338a.js} +4 -4
  320. package/{index-4e56f382.js.map → index-30d6338a.js.map} +1 -1
  321. package/{index-7f2be3d7.js → index-33e14ef9.js} +2 -2
  322. package/{index-7f2be3d7.js.map → index-33e14ef9.js.map} +1 -1
  323. package/{index-ced613ea.js → index-55ffa40a.js} +4 -4
  324. package/{index-ced613ea.js.map → index-55ffa40a.js.map} +1 -1
  325. package/{index-c9cda9f6.js → index-6bf196c4.js} +1 -1
  326. package/{index-c9cda9f6.js.map → index-6bf196c4.js.map} +1 -1
  327. package/{index-03ccaf35.js → index-7e7eecb5.js} +2 -2
  328. package/{index-03ccaf35.js.map → index-7e7eecb5.js.map} +1 -1
  329. package/{index-b4944539.js → index-9564359d.js} +2 -2
  330. package/{index-b4944539.js.map → index-9564359d.js.map} +1 -1
  331. package/{index-702d2072.js → index-c6372f71.js} +9 -9
  332. package/{index-702d2072.js.map → index-c6372f71.js.map} +1 -1
  333. package/{index-ed39099a.js → index-cc420cce.js} +3 -3
  334. package/{index-ed39099a.js.map → index-cc420cce.js.map} +1 -1
  335. package/{index-5ec69689.js → index-cd8f3035.js} +1 -1
  336. package/{index-5ec69689.js.map → index-cd8f3035.js.map} +1 -1
  337. package/{index-fa8ac00a.js → index-ce26872b.js} +6 -6
  338. package/{index-fa8ac00a.js.map → index-ce26872b.js.map} +1 -1
  339. package/{index-6a47d16f.js → index-fcc0e6dc.js} +3 -3
  340. package/{index-6a47d16f.js.map → index-fcc0e6dc.js.map} +1 -1
  341. package/index.d.ts +16 -8
  342. package/index.js +39 -39
  343. package/{openChannel-1548376e.js → openChannel-ea516c45.js} +3 -3
  344. package/{openChannel-1548376e.js.map → openChannel-ea516c45.js.map} +1 -1
  345. package/{openChannelUtils-09e4bac8.js → openChannelUtils-5cc6b7cb.js} +1 -1
  346. package/{openChannelUtils-09e4bac8.js.map → openChannelUtils-5cc6b7cb.js.map} +1 -1
  347. package/package-lock.json +2 -2
  348. package/package.json +1 -1
  349. package/{sendbird-597583ed.js → sendbird-961b20e3.js} +4 -4
  350. package/{sendbird-597583ed.js.map → sendbird-961b20e3.js.map} +1 -1
  351. package/sendbirdSelectors.js +2 -2
  352. package/{stringSet-647493ce.js → stringSet-232e2ec0.js} +1 -1
  353. package/{stringSet-647493ce.js.map → stringSet-232e2ec0.js.map} +1 -1
  354. package/{topics-18836011.js → topics-84946297.js} +1 -1
  355. package/{topics-18836011.js.map → topics-84946297.js.map} +1 -1
  356. package/{tslib.es6-710c6267.js → tslib.es6-ea4b7876.js} +18 -2
  357. package/{tslib.es6-710c6267.js.map → tslib.es6-ea4b7876.js.map} +1 -1
  358. package/ui/Accordion.js +4 -4
  359. package/ui/AccordionGroup.js +2 -2
  360. package/ui/AdminMessage.js +4 -4
  361. package/ui/Avatar.js +3 -3
  362. package/ui/Badge.js +6 -6
  363. package/ui/Button.js +5 -5
  364. package/ui/ChannelAvatar.js +4 -4
  365. package/ui/ChannelPreview.js +12 -12
  366. package/ui/ChatHeader.js +8 -8
  367. package/ui/ConnectionStatus.js +5 -5
  368. package/ui/ContextMenu.js +100 -86
  369. package/ui/ContextMenu.js.map +1 -1
  370. package/ui/DateSeparator.js +5 -5
  371. package/ui/EmojiReactions.js +8 -8
  372. package/ui/FileMessageItemBody.js +6 -6
  373. package/ui/FileViewer.js +9 -9
  374. package/ui/Icon.js +1 -1
  375. package/ui/IconButton.js +1 -1
  376. package/ui/ImageRenderer.js +1 -1
  377. package/ui/Input.js +3 -3
  378. package/ui/Label.js +3 -3
  379. package/ui/LinkLabel.js +3 -3
  380. package/ui/Loader.js +2 -2
  381. package/ui/MentionLabel.js +11 -11
  382. package/ui/MessageContent.js +14 -14
  383. package/ui/MessageInput.js +10 -10
  384. package/ui/MessageInput.js.map +1 -1
  385. package/ui/MessageItemMenu.js +8 -8
  386. package/ui/MessageItemReactionMenu.js +6 -6
  387. package/ui/MessageSearchFileItem.js +10 -10
  388. package/ui/MessageSearchItem.js +10 -10
  389. package/ui/MessageStatus.js +8 -8
  390. package/ui/Modal.js +8 -8
  391. package/ui/MutedAvatarOverlay.js +1 -1
  392. package/ui/OGMessageItemBody.js +11 -11
  393. package/ui/OpenChannelAdminMessage.js +4 -4
  394. package/ui/OpenChannelAvatar.js +7 -7
  395. package/ui/OpenchannelConversationHeader.js +7 -7
  396. package/ui/OpenchannelFileMessage.js +15 -15
  397. package/ui/OpenchannelOGMessage.js +15 -15
  398. package/ui/OpenchannelThumbnailMessage.js +14 -14
  399. package/ui/OpenchannelUserMessage.js +15 -15
  400. package/ui/PlaceHolder.js +7 -7
  401. package/ui/QuoteMessage.js +7 -7
  402. package/ui/QuoteMessageInput.js +7 -7
  403. package/ui/ReactionBadge.js +4 -4
  404. package/ui/ReactionButton.js +1 -1
  405. package/ui/SortByRow.js +2 -2
  406. package/ui/TextButton.js +2 -2
  407. package/ui/TextMessageItemBody.js +11 -11
  408. package/ui/ThumbnailMessageItemBody.js +3 -3
  409. package/ui/Tooltip.js +4 -4
  410. package/ui/TooltipWrapper.js +1 -1
  411. package/ui/UnknownMessageItemBody.js +7 -7
  412. package/ui/UserListItem.js +12 -12
  413. package/ui/UserProfile.js +10 -10
  414. package/ui/Word.js +11 -11
  415. package/useSendbirdStateContext.js +1 -1
  416. package/{utils-301322ba.js → utils-0cadb616.js} +1 -1
  417. package/{utils-301322ba.js.map → utils-0cadb616.js.map} +1 -1
  418. package/{utils-2666bdfb.js → utils-6195b8b0.js} +1 -1
  419. package/{utils-2666bdfb.js.map → utils-6195b8b0.js.map} +1 -1
  420. package/{utils-19e84a08.js → utils-b6f36534.js} +1 -1
  421. package/{utils-19e84a08.js.map → utils-b6f36534.js.map} +1 -1
  422. package/{uuid-60ae25c1.js → uuid-e8af582d.js} +1 -1
  423. package/{uuid-60ae25c1.js.map → uuid-e8af582d.js.map} +1 -1
  424. package/withSendbird.js +1 -1
  425. package/OpenChannelProvider-2e3fa2dd.js.map +0 -1
  426. package/cjs/OpenChannelProvider-bc8d7f0d.js.map +0 -1
package/ui/ContextMenu.js CHANGED
@@ -1,96 +1,81 @@
1
- import React__default, { useRef, useState, useEffect } from 'react';
2
- import { _ as __assign } from '../tslib.es6-710c6267.js';
1
+ import React__default, { useState, useRef, useEffect } from 'react';
2
+ import { b as __extends, _ as __assign } from '../tslib.es6-ea4b7876.js';
3
3
  import { createPortal } from 'react-dom';
4
4
  import SortByRow from './SortByRow.js';
5
- import { k as getClassName } from '../index-03ccaf35.js';
6
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-ed39099a.js';
7
- import '../uuid-60ae25c1.js';
8
- import '../_rollupPluginBabelHelpers-3043541a.js';
5
+ import { k as getClassName } from '../index-7e7eecb5.js';
6
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-cc420cce.js';
7
+ import '../uuid-e8af582d.js';
8
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
9
9
  import 'prop-types';
10
- import '../stringSet-647493ce.js';
10
+ import '../stringSet-232e2ec0.js';
11
11
 
12
- var MenuItems$1 = function MenuItems(_a) {
13
- var className = _a.className,
14
- children = _a.children,
15
- _b = _a.style,
16
- style = _b === void 0 ? {} : _b,
17
- parentRef = _a.parentRef,
18
- parentContainRef = _a.parentContainRef,
19
- _c = _a.openLeft,
20
- openLeft = _c === void 0 ? false : _c,
21
- closeDropdown = _a.closeDropdown;
22
- var menuRef = useRef(null);
12
+ var MenuItems$1 =
13
+ /** @class */
14
+ function (_super) {
15
+ __extends(MenuItems, _super);
23
16
 
24
- var _d = useState({
25
- left: 0,
26
- top: 0
27
- }),
28
- menuStyle = _d[0],
29
- setMenuStyle = _d[1];
30
- /* showParent & hideParent */
17
+ function MenuItems(props) {
18
+ var _this = _super.call(this, props) || this;
31
19
 
20
+ _this.menuRef = /*#__PURE__*/React__default.createRef();
32
21
 
33
- useEffect(function () {
34
- if (parentContainRef && (parentContainRef === null || parentContainRef === void 0 ? void 0 : parentContainRef.current)) {
35
- parentContainRef.current.classList.add('sendbird-reactions--pressed');
36
- }
22
+ _this.setupEvents = function () {
23
+ var closeDropdown = _this.props.closeDropdown;
24
+ var menuRef = _this.menuRef;
37
25
 
38
- return function () {
39
- if (parentContainRef && (parentContainRef === null || parentContainRef === void 0 ? void 0 : parentContainRef.current)) {
40
- parentContainRef.current.classList.remove('sendbird-reactions--pressed');
41
- }
42
- };
43
- }, []);
44
- /* setupEvents & cleanupEvents */
26
+ var handleClickOutside = function handleClickOutside(event) {
27
+ var _a, _b;
45
28
 
46
- useEffect(function () {
47
- var handleClickOutside = function handleClickOutside(event) {
48
- var _a, _b;
29
+ if ((menuRef === null || menuRef === void 0 ? void 0 : menuRef.current) && !((_b = (_a = menuRef === null || menuRef === void 0 ? void 0 : menuRef.current) === null || _a === void 0 ? void 0 : _a.contains) === null || _b === void 0 ? void 0 : _b.call(_a, event.target))) {
30
+ closeDropdown === null || closeDropdown === void 0 ? void 0 : closeDropdown();
31
+ }
32
+ };
49
33
 
50
- if ((menuRef === null || menuRef === void 0 ? void 0 : menuRef.current) && !((_b = menuRef === null || menuRef === void 0 ? void 0 : (_a = menuRef.current).contains) === null || _b === void 0 ? void 0 : _b.call(_a, event.target))) {
51
- closeDropdown();
52
- }
53
- };
34
+ _this.setState({
35
+ handleClickOutside: handleClickOutside
36
+ });
54
37
 
55
- document.addEventListener('mousedown', handleClickOutside);
56
- return function () {
57
- document.removeEventListener('mousedown', handleClickOutside);
38
+ document.addEventListener('mousedown', handleClickOutside);
58
39
  };
59
- }, []);
60
- /* getMenuPosition */
61
-
62
- useEffect(function () {
63
- var _a;
64
40
 
65
- var parentRect = (_a = parentRef === null || parentRef === void 0 ? void 0 : parentRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
66
- var x = parentRect.x || parentRect.left;
67
- var y = parentRect.y || parentRect.top;
68
- var menuStyle = {
69
- top: y,
70
- left: x
41
+ _this.cleanUpEvents = function () {
42
+ var handleClickOutside = _this.state.handleClickOutside;
43
+ document.removeEventListener('mousedown', handleClickOutside);
71
44
  };
72
45
 
73
- if (!(menuRef === null || menuRef === void 0 ? void 0 : menuRef.current)) {
74
- setMenuStyle(menuStyle);
75
- } else {
76
- var innerWidth_1 = window.innerWidth,
77
- innerHeight_1 = window.innerHeight;
78
- var rect = menuRef.current.getBoundingClientRect();
46
+ _this.getMenuPosition = function () {
47
+ var _a, _b;
79
48
 
80
- if (y + rect.height > innerHeight_1) {
49
+ var _c = _this.props,
50
+ parentRef = _c.parentRef,
51
+ openLeft = _c.openLeft;
52
+ var parentRect = (_b = (_a = parentRef === null || parentRef === void 0 ? void 0 : parentRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect) === null || _b === void 0 ? void 0 : _b.call(_a);
53
+ var x = (parentRect === null || parentRect === void 0 ? void 0 : parentRect.x) || (parentRect === null || parentRect === void 0 ? void 0 : parentRect.left) || 0;
54
+ var y = (parentRect === null || parentRect === void 0 ? void 0 : parentRect.y) || (parentRect === null || parentRect === void 0 ? void 0 : parentRect.top) || 0;
55
+ var menuStyle = {
56
+ top: y,
57
+ left: x
58
+ };
59
+ if (!_this.menuRef.current) return menuStyle;
60
+ var innerWidth = window.innerWidth,
61
+ innerHeight = window.innerHeight;
62
+
63
+ var rect = _this.menuRef.current.getBoundingClientRect();
64
+
65
+ if (y + rect.height > innerHeight) {
81
66
  menuStyle.top -= rect.height;
82
67
  }
83
68
 
84
- if (x + rect.width > innerWidth_1 && !openLeft) {
69
+ if (x + rect.width > innerWidth && !openLeft) {
85
70
  menuStyle.left -= rect.width;
86
71
  }
87
72
 
88
73
  if (menuStyle.top < 0) {
89
- menuStyle.top = rect.height < innerHeight_1 ? (innerHeight_1 - rect.height) / 2 : 0;
74
+ menuStyle.top = rect.height < innerHeight ? (innerHeight - rect.height) / 2 : 0;
90
75
  }
91
76
 
92
77
  if (menuStyle.left < 0) {
93
- menuStyle.left = rect.width < innerWidth_1 ? (innerWidth_1 - rect.width) / 2 : 0;
78
+ menuStyle.left = rect.width < innerWidth ? (innerWidth - rect.width) / 2 : 0;
94
79
  }
95
80
 
96
81
  menuStyle.top += 32;
@@ -101,24 +86,50 @@ var MenuItems$1 = function MenuItems(_a) {
101
86
  menuStyle.left -= padding;
102
87
  }
103
88
 
104
- setMenuStyle(menuStyle);
105
- }
106
- }, []);
107
- return /*#__PURE__*/createPortal( /*#__PURE__*/React__default.createElement("div", {
108
- className: Array.isArray(className) ? className.join(' ') : className
109
- }, /*#__PURE__*/React__default.createElement("div", {
110
- className: "sendbird-dropdown__menu-backdrop"
111
- }), /*#__PURE__*/React__default.createElement("ul", {
112
- className: "sendbird-dropdown__menu",
113
- ref: menuRef,
114
- style: __assign({
115
- display: 'inline-block',
116
- position: 'fixed',
117
- left: "".concat(Math.round(menuStyle.left), "px"),
118
- top: "".concat(Math.round(menuStyle.top), "px")
119
- }, style)
120
- }, children)), document.getElementById('sendbird-dropdown-portal'));
121
- };
89
+ _this.setState({
90
+ menuStyle: menuStyle
91
+ });
92
+
93
+ return menuStyle;
94
+ };
95
+
96
+ _this.state = {
97
+ menuStyle: {},
98
+ handleClickOutside: function handleClickOutside() {}
99
+ };
100
+ return _this;
101
+ }
102
+
103
+ MenuItems.prototype.componentDidMount = function () {
104
+ this.setupEvents();
105
+ this.getMenuPosition();
106
+ };
107
+
108
+ MenuItems.prototype.componentWillUnmount = function () {
109
+ this.cleanUpEvents();
110
+ };
111
+
112
+ MenuItems.prototype.render = function () {
113
+ var menuStyle = this.state.menuStyle;
114
+ var _a = this.props,
115
+ children = _a.children,
116
+ style = _a.style;
117
+ return /*#__PURE__*/createPortal( /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
118
+ className: "sendbird-dropdown__menu-backdrop"
119
+ }), /*#__PURE__*/React__default.createElement("ul", {
120
+ className: "sendbird-dropdown__menu",
121
+ ref: this.menuRef,
122
+ style: __assign({
123
+ display: 'inline-block',
124
+ position: 'fixed',
125
+ left: "".concat(Math.round(menuStyle.left), "px"),
126
+ top: "".concat(Math.round(menuStyle.top), "px")
127
+ }, style)
128
+ }, children)), document.getElementById('sendbird-dropdown-portal'));
129
+ };
130
+
131
+ return MenuItems;
132
+ }(React__default.Component);
122
133
 
123
134
  var EmojiListItems$1 = function EmojiListItems(_a) {
124
135
  var children = _a.children,
@@ -281,7 +292,10 @@ function ContextMenu(_a) {
281
292
  setShowMenu = _b[1];
282
293
 
283
294
  return /*#__PURE__*/React__default.createElement("div", {
284
- className: "sendbird-context-menu"
295
+ className: "sendbird-context-menu",
296
+ style: {
297
+ display: 'inline'
298
+ }
285
299
  }, menuTrigger(function () {
286
300
  return setShowMenu(!showMenu);
287
301
  }), showMenu && menuItems(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"ContextMenu.js","sources":["../../src/ui/ContextMenu/MenuItems.tsx","../../src/ui/ContextMenu/EmojiListItems.tsx","../../src/ui/ContextMenu/index.tsx"],"sourcesContent":["import React, { ReactElement, RefObject, useEffect, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\ntype MenuStyle = { left: number, top: number };\nexport interface MenuItemsProps {\n className?: string | Array<string>;\n children?: ReactElement;\n style?: { [key: string]: string };\n parentRef: RefObject<HTMLDivElement>;\n parentContainRef?: RefObject<HTMLDivElement>;\n openLeft?: boolean;\n closeDropdown: () => void;\n}\n\nconst MenuItems = ({\n className,\n children,\n style = {},\n parentRef,\n parentContainRef,\n openLeft = false,\n closeDropdown,\n}: MenuItemsProps): ReactElement => {\n const menuRef = useRef(null);\n const [menuStyle, setMenuStyle] = useState<MenuStyle>({ left: 0, top: 0 });\n\n /* showParent & hideParent */\n useEffect(() => {\n if (parentContainRef && parentContainRef?.current) {\n parentContainRef.current.classList.add('sendbird-reactions--pressed');\n }\n return () => {\n if (parentContainRef && parentContainRef?.current) {\n parentContainRef.current.classList.remove('sendbird-reactions--pressed');\n }\n };\n }, []);\n\n /* setupEvents & cleanupEvents */\n useEffect(() => {\n const handleClickOutside = (event) => {\n if (menuRef?.current && !menuRef?.current.contains?.(event.target)) {\n closeDropdown();\n }\n };\n document.addEventListener('mousedown', handleClickOutside);\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, []);\n\n /* getMenuPosition */\n useEffect(() => {\n const parentRect = parentRef?.current?.getBoundingClientRect();\n const x = parentRect.x || parentRect.left;\n const y = parentRect.y || parentRect.top;\n const menuStyle = {\n top: y,\n left: x,\n };\n if (!menuRef?.current) {\n setMenuStyle(menuStyle);\n } else {\n const { innerWidth, innerHeight } = window;\n const rect = menuRef.current.getBoundingClientRect();\n if (y + rect.height > innerHeight) {\n menuStyle.top -= rect.height;\n }\n if (x + rect.width > innerWidth && !openLeft) {\n menuStyle.left -= rect.width;\n }\n if (menuStyle.top < 0) {\n menuStyle.top = rect.height < innerHeight ? (innerHeight - rect.height) / 2 : 0;\n }\n if (menuStyle.left < 0) {\n menuStyle.left = rect.width < innerWidth ? (innerWidth - rect.width) / 2 : 0;\n }\n menuStyle.top += 32;\n if (openLeft) {\n const padding = Number.isNaN(rect.width - 30)\n ? 108 // default\n : rect.width - 30;\n menuStyle.left -= padding;\n }\n setMenuStyle(menuStyle);\n }\n }, []);\n\n return createPortal(\n (\n <div className={Array.isArray(className) ? className.join(' ') : className}>\n <div className=\"sendbird-dropdown__menu-backdrop\" />\n <ul\n className=\"sendbird-dropdown__menu\"\n ref={menuRef}\n style={{\n display: 'inline-block',\n position: 'fixed',\n left: `${Math.round(menuStyle.left)}px`,\n top: `${Math.round(menuStyle.top)}px`,\n ...style,\n }}\n >\n {children}\n </ul>\n </div>\n ),\n document.getElementById('sendbird-dropdown-portal')\n );\n};\n\nexport default MenuItems;\n","import React, { ReactElement, RefObject, useEffect, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport SortByRow from '../SortByRow';\n\ntype SpaceFromTrigger = { x: number, y: number };\ntype ReactionStyle = { left: number, top: number };\nexport interface EmojiListItemsProps {\n closeDropdown: () => void;\n children: ReactElement;\n parentRef: RefObject<HTMLDivElement>;\n parentContainRef: RefObject<HTMLDivElement>;\n spaceFromTrigger?: SpaceFromTrigger;\n}\n\nconst EmojiListItems = ({\n children,\n parentRef,\n parentContainRef,\n spaceFromTrigger = { x: 0, y: 0 },\n closeDropdown,\n}: EmojiListItemsProps): ReactElement => {\n const [reactionStyle, setReactionStyle] = useState<ReactionStyle>({ left: 0, top: 0 });\n const reactionRef = useRef(null);\n\n /* showParent & hideParent */\n useEffect(() => {\n if (parentContainRef && parentContainRef?.current) {\n parentContainRef.current.classList.add('sendbird-reactions--pressed');\n }\n return () => {\n if (parentContainRef && parentContainRef?.current) {\n parentContainRef.current.classList.remove('sendbird-reactions--pressed');\n }\n };\n }, []);\n\n /* setupEvents & cleanupEvents */\n useEffect(() => {\n const handleClickOutSide = (event) => {\n if (reactionRef?.current && !reactionRef?.current?.contains?.(event.target)) {\n closeDropdown();\n }\n };\n document.addEventListener('mousedown', handleClickOutSide);\n return () => {\n document.removeEventListener('mousedown', handleClickOutSide);\n };\n }, []);\n\n /* getBarPosition */\n useEffect(() => {\n const spaceFromTriggerX = spaceFromTrigger?.x || 0;\n const spaceFromTriggerY = spaceFromTrigger?.y || 0;\n const parentRect = parentRef?.current?.getBoundingClientRect();\n const x = parentRect.x || parentRect.left;\n const y = parentRect.y || parentRect.top;\n const reactionStyle = {\n top: y,\n left: x,\n };\n if (!reactionRef?.current) {\n setReactionStyle(reactionStyle);\n } else {\n const rect = reactionRef?.current?.getBoundingClientRect();\n if (reactionStyle.top < rect.height) {\n reactionStyle.top += parentRect.height;\n reactionStyle.top += spaceFromTriggerY;\n } else {\n reactionStyle.top -= rect.height;\n reactionStyle.top -= spaceFromTriggerY;\n }\n reactionStyle.left -= rect.width / 2;\n reactionStyle.left += (parentRect.height / 2) - 2;\n reactionStyle.left += spaceFromTriggerX;\n const maximumLeft = window.innerWidth - rect.width;\n if (maximumLeft < reactionStyle.left) {\n reactionStyle.left = maximumLeft;\n }\n if (reactionStyle.left < 0) {\n reactionStyle.left = 0;\n }\n setReactionStyle(reactionStyle);\n }\n }, []);\n\n return (\n createPortal(\n <>\n <div className=\"sendbird-dropdown__menu-backdrop\" />\n <ul\n className=\"sendbird-dropdown__reaction-bar\"\n ref={reactionRef}\n style={{\n display: 'inline-block',\n position: 'fixed',\n left: `${Math.round(reactionStyle.left)}px`,\n top: `${Math.round(reactionStyle.top)}px`,\n }}\n >\n <SortByRow\n className=\"sendbird-dropdown__reaction-bar__row\"\n maxItemCount={8}\n itemWidth={44}\n itemHeight={40}\n >\n {children}\n </SortByRow>\n </ul>\n </>,\n document.getElementById('sendbird-emoji-list-portal'),\n )\n );\n};\n\nexport default EmojiListItems;\n","import React, { ReactElement, MouseEvent, useState } from 'react';\nimport './index.scss';\n\nimport _MenuItems from './MenuItems';\nimport _EmojiListItems from './EmojiListItems';\n\nimport { getClassName } from '../../utils';\nimport Label, { LabelTypography, LabelColors } from '../Label';\n\nconst ENTER_KEY = 13;\n\nexport const MenuItems = _MenuItems;\nexport const EmojiListItems = _EmojiListItems;\n\nexport interface MenuItemProps {\n className?: string | Array<string>;\n children: ReactElement;\n onClick?: (e: MouseEvent<HTMLLIElement>) => void;\n disable?: boolean;\n}\nexport const MenuItem = ({\n className = '',\n children,\n onClick,\n disable = false,\n}: MenuItemProps): ReactElement => {\n const handleClickEvent = (e) => {\n if (!disable && onClick) {\n onClick?.(e);\n }\n };\n return (\n <li\n className={getClassName([className, 'sendbird-dropdown__menu-item', disable ? 'disable' : ''])}\n role=\"menuitem\"\n onClick={handleClickEvent}\n onKeyPress={(e) => { if (e.keyCode === ENTER_KEY) handleClickEvent(e); }}\n tabIndex={0}\n >\n <Label\n className=\"sendbird-dropdown__menu-item__text\"\n type={LabelTypography.SUBTITLE_2}\n color={disable ? LabelColors.ONBACKGROUND_4 : LabelColors.ONBACKGROUND_1}\n >\n {children}\n </Label>\n </li>\n );\n};\n\nexport const MenuRoot = (): ReactElement => <div id=\"sendbird-dropdown-portal\" />;\nexport const EmojiReactionListRoot = (): ReactElement => <div id=\"sendbird-emoji-list-portal\" />;\n\ntype MenuDisplayingFunc = () => void;\nexport interface ContextMenuProps {\n menuTrigger: (MenuDisplayingFunc) => ReactElement;\n menuItems: (MenuDisplayingFunc) => ReactElement;\n}\nexport default function ContextMenu({\n menuTrigger,\n menuItems,\n}: ContextMenuProps): ReactElement {\n const [showMenu, setShowMenu] = useState(false);\n return (\n <div className=\"sendbird-context-menu\">\n {menuTrigger(() => setShowMenu(!showMenu))}\n {showMenu && menuItems(() => setShowMenu(false))}\n </div>\n );\n}\n"],"names":["MenuItems","_a","className","children","_b","style","parentRef","parentContainRef","_c","openLeft","closeDropdown","menuRef","useRef","_d","useState","left","top","menuStyle","setMenuStyle","useEffect","current","classList","add","remove","handleClickOutside","event","contains","target","document","addEventListener","removeEventListener","parentRect","getBoundingClientRect","x","y","innerWidth_1","window","innerHeight_1","rect","height","width","padding","Number","isNaN","createPortal","React","Array","isArray","join","display","position","Math","round","getElementById","EmojiListItems","spaceFromTrigger","reactionStyle","setReactionStyle","reactionRef","handleClickOutSide","spaceFromTriggerX","spaceFromTriggerY","maximumLeft","innerWidth","ENTER_KEY","_MenuItems","_EmojiListItems","MenuItem","onClick","disable","handleClickEvent","e","getClassName","keyCode","LabelTypography","SUBTITLE_2","LabelColors","ONBACKGROUND_4","ONBACKGROUND_1","MenuRoot","EmojiReactionListRoot","ContextMenu","menuTrigger","menuItems","showMenu","setShowMenu"],"mappings":"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"}
1
+ {"version":3,"file":"ContextMenu.js","sources":["../../src/ui/ContextMenu/MenuItems.tsx","../../src/ui/ContextMenu/EmojiListItems.tsx","../../src/ui/ContextMenu/index.tsx"],"sourcesContent":["import React, { ReactElement } from 'react';\nimport { createPortal } from 'react-dom';\n\ninterface MenuItemsProps {\n style?: Record<string, string>;\n openLeft?: boolean;\n children: React.ReactElement;\n parentRef: React.RefObject<HTMLDivElement>;\n parentContainRef: React.RefObject<HTMLDivElement>;\n closeDropdown: () => void;\n}\n\ntype MenuStyleType = { top?: number, left?: number };\ninterface MenuItemsState {\n menuStyle: MenuStyleType;\n handleClickOutside: (e: MouseEvent) => void;\n}\n\nexport default class MenuItems extends React.Component<MenuItemsProps, MenuItemsState> {\n constructor(props: MenuItemsProps) {\n super(props);\n this.state = {\n menuStyle: {},\n handleClickOutside: () => {/* noop */ },\n };\n }\n menuRef: React.RefObject<HTMLUListElement> = React.createRef();\n\n componentDidMount(): void {\n this.setupEvents();\n this.getMenuPosition();\n }\n\n componentWillUnmount(): void {\n this.cleanUpEvents();\n }\n\n setupEvents = (): void => {\n const { closeDropdown } = this.props;\n const { menuRef } = this;\n const handleClickOutside = (event) => {\n if (menuRef?.current && !menuRef?.current?.contains?.(event.target)) {\n closeDropdown?.();\n }\n };\n this.setState({\n handleClickOutside,\n });\n\n document.addEventListener('mousedown', handleClickOutside);\n }\n\n cleanUpEvents = (): void => {\n const {\n handleClickOutside,\n } = this.state;\n document.removeEventListener('mousedown', handleClickOutside);\n }\n\n getMenuPosition = (): MenuStyleType => {\n const { parentRef, openLeft } = this.props;\n const parentRect = parentRef?.current?.getBoundingClientRect?.();\n const x = parentRect?.x || parentRect?.left || 0;\n const y = parentRect?.y || parentRect?.top || 0;\n const menuStyle = {\n top: y,\n left: x,\n };\n if (!this.menuRef.current) return menuStyle;\n const { innerWidth, innerHeight } = window;\n const rect = this.menuRef.current.getBoundingClientRect();\n if (y + rect.height > innerHeight) {\n menuStyle.top -= rect.height;\n }\n if (x + rect.width > innerWidth && !openLeft) {\n menuStyle.left -= rect.width;\n }\n if (menuStyle.top < 0) {\n menuStyle.top = rect.height < innerHeight ? (innerHeight - rect.height) / 2 : 0;\n }\n if (menuStyle.left < 0) {\n menuStyle.left = rect.width < innerWidth ? (innerWidth - rect.width) / 2 : 0;\n }\n menuStyle.top += 32;\n if (openLeft) {\n const padding = Number.isNaN(rect.width - 30)\n ? 108 // default\n : rect.width - 30;\n menuStyle.left -= padding;\n }\n this.setState({ menuStyle })\n return menuStyle;\n }\n\n render(): ReactElement {\n const { menuStyle } = this.state;\n const { children, style } = this.props;\n return (\n createPortal(\n (\n <>\n <div className=\"sendbird-dropdown__menu-backdrop\" />\n <ul\n className=\"sendbird-dropdown__menu\"\n ref={this.menuRef}\n style={{\n display: 'inline-block',\n position: 'fixed',\n left: `${Math.round(menuStyle.left)}px`,\n top: `${Math.round(menuStyle.top)}px`,\n ...style,\n }}\n >\n {children}\n </ul>\n </>\n ),\n document.getElementById('sendbird-dropdown-portal'),\n )\n );\n }\n}\n","import React, { ReactElement, RefObject, useEffect, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport SortByRow from '../SortByRow';\n\ntype SpaceFromTrigger = { x: number, y: number };\ntype ReactionStyle = { left: number, top: number };\nexport interface EmojiListItemsProps {\n closeDropdown: () => void;\n children: ReactElement;\n parentRef: RefObject<HTMLDivElement>;\n parentContainRef: RefObject<HTMLDivElement>;\n spaceFromTrigger?: SpaceFromTrigger;\n}\n\nconst EmojiListItems = ({\n children,\n parentRef,\n parentContainRef,\n spaceFromTrigger = { x: 0, y: 0 },\n closeDropdown,\n}: EmojiListItemsProps): ReactElement => {\n const [reactionStyle, setReactionStyle] = useState<ReactionStyle>({ left: 0, top: 0 });\n const reactionRef = useRef(null);\n\n /* showParent & hideParent */\n useEffect(() => {\n if (parentContainRef && parentContainRef?.current) {\n parentContainRef.current.classList.add('sendbird-reactions--pressed');\n }\n return () => {\n if (parentContainRef && parentContainRef?.current) {\n parentContainRef.current.classList.remove('sendbird-reactions--pressed');\n }\n };\n }, []);\n\n /* setupEvents & cleanupEvents */\n useEffect(() => {\n const handleClickOutSide = (event) => {\n if (reactionRef?.current && !reactionRef?.current?.contains?.(event.target)) {\n closeDropdown();\n }\n };\n document.addEventListener('mousedown', handleClickOutSide);\n return () => {\n document.removeEventListener('mousedown', handleClickOutSide);\n };\n }, []);\n\n /* getBarPosition */\n useEffect(() => {\n const spaceFromTriggerX = spaceFromTrigger?.x || 0;\n const spaceFromTriggerY = spaceFromTrigger?.y || 0;\n const parentRect = parentRef?.current?.getBoundingClientRect();\n const x = parentRect.x || parentRect.left;\n const y = parentRect.y || parentRect.top;\n const reactionStyle = {\n top: y,\n left: x,\n };\n if (!reactionRef?.current) {\n setReactionStyle(reactionStyle);\n } else {\n const rect = reactionRef?.current?.getBoundingClientRect();\n if (reactionStyle.top < rect.height) {\n reactionStyle.top += parentRect.height;\n reactionStyle.top += spaceFromTriggerY;\n } else {\n reactionStyle.top -= rect.height;\n reactionStyle.top -= spaceFromTriggerY;\n }\n reactionStyle.left -= rect.width / 2;\n reactionStyle.left += (parentRect.height / 2) - 2;\n reactionStyle.left += spaceFromTriggerX;\n const maximumLeft = window.innerWidth - rect.width;\n if (maximumLeft < reactionStyle.left) {\n reactionStyle.left = maximumLeft;\n }\n if (reactionStyle.left < 0) {\n reactionStyle.left = 0;\n }\n setReactionStyle(reactionStyle);\n }\n }, []);\n\n return (\n createPortal(\n <>\n <div className=\"sendbird-dropdown__menu-backdrop\" />\n <ul\n className=\"sendbird-dropdown__reaction-bar\"\n ref={reactionRef}\n style={{\n display: 'inline-block',\n position: 'fixed',\n left: `${Math.round(reactionStyle.left)}px`,\n top: `${Math.round(reactionStyle.top)}px`,\n }}\n >\n <SortByRow\n className=\"sendbird-dropdown__reaction-bar__row\"\n maxItemCount={8}\n itemWidth={44}\n itemHeight={40}\n >\n {children}\n </SortByRow>\n </ul>\n </>,\n document.getElementById('sendbird-emoji-list-portal'),\n )\n );\n};\n\nexport default EmojiListItems;\n","import React, { ReactElement, MouseEvent, useState } from 'react';\nimport './index.scss';\n\nimport _MenuItems from './MenuItems';\nimport _EmojiListItems from './EmojiListItems';\n\nimport { getClassName } from '../../utils';\nimport Label, { LabelTypography, LabelColors } from '../Label';\n\nconst ENTER_KEY = 13;\n\nexport const MenuItems = _MenuItems;\nexport const EmojiListItems = _EmojiListItems;\n\nexport interface MenuItemProps {\n className?: string | Array<string>;\n children: ReactElement;\n onClick?: (e: MouseEvent<HTMLLIElement>) => void;\n disable?: boolean;\n}\nexport const MenuItem = ({\n className = '',\n children,\n onClick,\n disable = false,\n}: MenuItemProps): ReactElement => {\n const handleClickEvent = (e) => {\n if (!disable && onClick) {\n onClick?.(e);\n }\n };\n return (\n <li\n className={getClassName([className, 'sendbird-dropdown__menu-item', disable ? 'disable' : ''])}\n role=\"menuitem\"\n onClick={handleClickEvent}\n onKeyPress={(e) => { if (e.keyCode === ENTER_KEY) handleClickEvent(e); }}\n tabIndex={0}\n >\n <Label\n className=\"sendbird-dropdown__menu-item__text\"\n type={LabelTypography.SUBTITLE_2}\n color={disable ? LabelColors.ONBACKGROUND_4 : LabelColors.ONBACKGROUND_1}\n >\n {children}\n </Label>\n </li>\n );\n};\n\nexport const MenuRoot = (): ReactElement => <div id=\"sendbird-dropdown-portal\" />;\nexport const EmojiReactionListRoot = (): ReactElement => <div id=\"sendbird-emoji-list-portal\" />;\n\ntype MenuDisplayingFunc = () => void;\nexport interface ContextMenuProps {\n menuTrigger: (MenuDisplayingFunc) => ReactElement;\n menuItems: (MenuDisplayingFunc) => ReactElement;\n}\nexport default function ContextMenu({\n menuTrigger,\n menuItems,\n}: ContextMenuProps): ReactElement {\n const [showMenu, setShowMenu] = useState(false);\n return (\n <div\n className=\"sendbird-context-menu\"\n style={{ display: 'inline' }}\n >\n {menuTrigger(() => setShowMenu(!showMenu))}\n {showMenu && menuItems(() => setShowMenu(false))}\n </div>\n );\n}\n"],"names":["__extends","props","_super","_this","React","createRef","closeDropdown","menuRef","handleClickOutside","event","current","contains","target","setState","document","addEventListener","state","removeEventListener","_c","parentRef","openLeft","parentRect","getBoundingClientRect","x","left","y","top","menuStyle","innerWidth","window","innerHeight","rect","height","width","padding","Number","isNaN","MenuItems","setupEvents","getMenuPosition","cleanUpEvents","_a","children","style","createPortal","display","position","Math","round","getElementById","Component","EmojiListItems","parentContainRef","_b","spaceFromTrigger","useState","reactionStyle","setReactionStyle","reactionRef","useRef","useEffect","classList","add","remove","handleClickOutSide","spaceFromTriggerX","spaceFromTriggerY","maximumLeft","ENTER_KEY","_MenuItems","_EmojiListItems","MenuItem","className","onClick","disable","handleClickEvent","e","getClassName","keyCode","LabelTypography","SUBTITLE_2","LabelColors","ONBACKGROUND_4","ONBACKGROUND_1","MenuRoot","EmojiReactionListRoot","ContextMenu","menuTrigger","menuItems","showMenu","setShowMenu"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import { a as __spreadArray } from '../tslib.es6-710c6267.js';
1
+ import { a as __spreadArray } from '../tslib.es6-ea4b7876.js';
2
2
  import React__default from 'react';
3
- import { C as Colors, c as changeColorToClassName } from '../color-798488ed.js';
4
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-ed39099a.js';
5
- import '../_rollupPluginBabelHelpers-3043541a.js';
3
+ import { C as Colors, c as changeColorToClassName } from '../color-c5e2ab33.js';
4
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-cc420cce.js';
5
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
6
6
  import 'prop-types';
7
- import '../stringSet-647493ce.js';
7
+ import '../stringSet-232e2ec0.js';
8
8
 
9
9
  var DateSeparator = function DateSeparator(_a) {
10
10
  var _b = _a.children,
@@ -6,17 +6,17 @@ import ReactionButton from './ReactionButton.js';
6
6
  import ImageRenderer from './ImageRenderer.js';
7
7
  import Icon, { IconTypes, IconColors } from './Icon.js';
8
8
  import ContextMenu, { EmojiListItems } from './ContextMenu.js';
9
- import { I as getEmojiMapAll, k as getClassName, J as isReactedBy, K as getEmojiTooltipString, H as getEmojiListAll } from '../index-03ccaf35.js';
10
- import { a as LocalizationContext } from '../LocalizationContext-2a073ef0.js';
11
- import '../tslib.es6-710c6267.js';
12
- import '../index-ed39099a.js';
13
- import '../_rollupPluginBabelHelpers-3043541a.js';
9
+ import { I as getEmojiMapAll, k as getClassName, J as isReactedBy, K as getEmojiTooltipString, H as getEmojiListAll } from '../index-7e7eecb5.js';
10
+ import { a as LocalizationContext } from '../LocalizationContext-397e33d0.js';
11
+ import '../tslib.es6-ea4b7876.js';
12
+ import '../index-cc420cce.js';
13
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
14
14
  import 'prop-types';
15
- import '../stringSet-647493ce.js';
15
+ import '../stringSet-232e2ec0.js';
16
16
  import 'react-dom';
17
17
  import './SortByRow.js';
18
- import '../uuid-60ae25c1.js';
19
- import '../index-5ec69689.js';
18
+ import '../uuid-e8af582d.js';
19
+ import '../index-cd8f3035.js';
20
20
 
21
21
  var EmojiReactions = function EmojiReactions(_a) {
22
22
  var _b, _c;
@@ -1,13 +1,13 @@
1
1
  import React__default from 'react';
2
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-ed39099a.js';
2
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-cc420cce.js';
3
3
  import Icon, { IconTypes, IconColors } from './Icon.js';
4
4
  import TextButton from './TextButton.js';
5
- import { k as getClassName, L as getUIKitFileType, t as truncateString } from '../index-03ccaf35.js';
6
- import { C as Colors } from '../color-798488ed.js';
7
- import '../_rollupPluginBabelHelpers-3043541a.js';
5
+ import { k as getClassName, L as getUIKitFileType, t as truncateString } from '../index-7e7eecb5.js';
6
+ import { C as Colors } from '../color-c5e2ab33.js';
7
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
8
8
  import 'prop-types';
9
- import '../stringSet-647493ce.js';
10
- import '../tslib.es6-710c6267.js';
9
+ import '../stringSet-232e2ec0.js';
10
+ import '../tslib.es6-ea4b7876.js';
11
11
 
12
12
  function FileMessageItemBody(_a) {
13
13
  var _b;
package/ui/FileViewer.js CHANGED
@@ -1,17 +1,17 @@
1
1
  import React__default, { useContext } from 'react';
2
2
  import { createPortal } from 'react-dom';
3
- import { a as LocalizationContext } from '../LocalizationContext-2a073ef0.js';
4
- import { M as MODAL_ROOT } from '../index-c9cda9f6.js';
5
- import { A as isSupportedFileView, B as isVideo, C as isImage } from '../index-03ccaf35.js';
3
+ import { a as LocalizationContext } from '../LocalizationContext-397e33d0.js';
4
+ import { M as MODAL_ROOT } from '../index-6bf196c4.js';
5
+ import { A as isSupportedFileView, B as isVideo, C as isImage } from '../index-7e7eecb5.js';
6
6
  import Avatar from './Avatar.js';
7
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-ed39099a.js';
7
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-cc420cce.js';
8
8
  import Icon, { IconTypes, IconColors } from './Icon.js';
9
- import '../stringSet-647493ce.js';
10
- import '../index-5ec69689.js';
11
- import '../tslib.es6-710c6267.js';
9
+ import '../stringSet-232e2ec0.js';
10
+ import '../index-cd8f3035.js';
11
+ import '../tslib.es6-ea4b7876.js';
12
12
  import './ImageRenderer.js';
13
- import '../uuid-60ae25c1.js';
14
- import '../_rollupPluginBabelHelpers-3043541a.js';
13
+ import '../uuid-e8af582d.js';
14
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
15
15
  import 'prop-types';
16
16
 
17
17
  var FileViewerComponent = function FileViewerComponent(_a) {
package/ui/Icon.js CHANGED
@@ -1,4 +1,4 @@
1
- import { b as _toConsumableArray } from '../_rollupPluginBabelHelpers-3043541a.js';
1
+ import { b as _toConsumableArray } from '../_rollupPluginBabelHelpers-67f295c6.js';
2
2
  import * as React from 'react';
3
3
  import React__default from 'react';
4
4
  import PropTypes from 'prop-types';
package/ui/IconButton.js CHANGED
@@ -1,4 +1,4 @@
1
- import { a as __spreadArray, _ as __assign } from '../tslib.es6-710c6267.js';
1
+ import { a as __spreadArray, _ as __assign } from '../tslib.es6-ea4b7876.js';
2
2
  import React__default, { useState } from 'react';
3
3
 
4
4
  var IconButton = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
@@ -1,4 +1,4 @@
1
- import { a as __spreadArray } from '../tslib.es6-710c6267.js';
1
+ import { a as __spreadArray } from '../tslib.es6-ea4b7876.js';
2
2
  import React__default, { useState, useMemo } from 'react';
3
3
 
4
4
  var ImageRenderer = function ImageRenderer(_a) {
package/ui/Input.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import React__default, { useState } from 'react';
2
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-ed39099a.js';
3
- import '../_rollupPluginBabelHelpers-3043541a.js';
2
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-cc420cce.js';
3
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
4
4
  import 'prop-types';
5
- import '../stringSet-647493ce.js';
5
+ import '../stringSet-232e2ec0.js';
6
6
 
7
7
  var InputLabel = function InputLabel(_a) {
8
8
  var children = _a.children;
package/ui/Label.js CHANGED
@@ -1,6 +1,6 @@
1
- import '../_rollupPluginBabelHelpers-3043541a.js';
1
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
2
2
  import 'react';
3
3
  import 'prop-types';
4
- export { b as LabelColors, c as LabelStringSet, a as LabelTypography, L as default } from '../index-ed39099a.js';
5
- import '../stringSet-647493ce.js';
4
+ export { b as LabelColors, c as LabelStringSet, a as LabelTypography, L as default } from '../index-cc420cce.js';
5
+ import '../stringSet-232e2ec0.js';
6
6
  //# sourceMappingURL=Label.js.map
package/ui/LinkLabel.js CHANGED
@@ -1,8 +1,8 @@
1
- import { b as _toConsumableArray } from '../_rollupPluginBabelHelpers-3043541a.js';
1
+ import { b as _toConsumableArray } from '../_rollupPluginBabelHelpers-67f295c6.js';
2
2
  import React__default from 'react';
3
3
  import PropTypes from 'prop-types';
4
- import { a as LabelTypography, b as LabelColors, d as changeColorToClassName, L as Label } from '../index-ed39099a.js';
5
- import '../stringSet-647493ce.js';
4
+ import { a as LabelTypography, b as LabelColors, d as changeColorToClassName, L as Label } from '../index-cc420cce.js';
5
+ import '../stringSet-232e2ec0.js';
6
6
 
7
7
  var http = /https?:\/\//;
8
8
  function LinkLabel(_ref) {
package/ui/Loader.js CHANGED
@@ -1,7 +1,7 @@
1
- import { a as __spreadArray } from '../tslib.es6-710c6267.js';
1
+ import { a as __spreadArray } from '../tslib.es6-ea4b7876.js';
2
2
  import React__default from 'react';
3
3
  import Icon, { IconTypes } from './Icon.js';
4
- import '../_rollupPluginBabelHelpers-3043541a.js';
4
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
5
5
  import 'prop-types';
6
6
 
7
7
  function Loader(_a) {
@@ -1,26 +1,26 @@
1
1
  import React__default, { useRef, useState, useCallback } from 'react';
2
2
  import ContextMenu, { MenuItems } from './ContextMenu.js';
3
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-ed39099a.js';
3
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-cc420cce.js';
4
4
  import ConnectedUserProfile from './UserProfile.js';
5
5
  import useSendbirdStateContext from '../useSendbirdStateContext.js';
6
- import '../tslib.es6-710c6267.js';
6
+ import '../tslib.es6-ea4b7876.js';
7
7
  import 'react-dom';
8
8
  import './SortByRow.js';
9
- import '../uuid-60ae25c1.js';
10
- import '../index-03ccaf35.js';
11
- import '../_rollupPluginBabelHelpers-3043541a.js';
9
+ import '../uuid-e8af582d.js';
10
+ import '../index-7e7eecb5.js';
11
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
12
12
  import 'prop-types';
13
- import '../stringSet-647493ce.js';
14
- import '../LocalizationContext-2a073ef0.js';
15
- import '../index-5ec69689.js';
13
+ import '../stringSet-232e2ec0.js';
14
+ import '../LocalizationContext-397e33d0.js';
15
+ import '../index-cd8f3035.js';
16
16
  import '../withSendbird.js';
17
17
  import '../sendbirdSelectors.js';
18
- import '../topics-18836011.js';
19
- import '../utils-301322ba.js';
18
+ import '../topics-84946297.js';
19
+ import '../utils-0cadb616.js';
20
20
  import './Avatar.js';
21
21
  import './ImageRenderer.js';
22
22
  import './Icon.js';
23
- import '../index-6a47d16f.js';
23
+ import '../index-fcc0e6dc.js';
24
24
 
25
25
  function MentionLabel(props) {
26
26
  var _a, _b, _c;
@@ -1,12 +1,12 @@
1
1
  import React__default, { useContext, useRef, useState } from 'react';
2
- import { f as format } from '../index-7f2be3d7.js';
2
+ import { f as format } from '../index-33e14ef9.js';
3
3
  import Avatar from './Avatar.js';
4
4
  import ConnectedUserProfile from './UserProfile.js';
5
5
  import MessageStatus from './MessageStatus.js';
6
6
  import MessageItemMenu from './MessageItemMenu.js';
7
7
  import MessageItemReactionMenu from './MessageItemReactionMenu.js';
8
8
  import ContextMenu, { MenuItems } from './ContextMenu.js';
9
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-ed39099a.js';
9
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-cc420cce.js';
10
10
  import EmojiReactions from './EmojiReactions.js';
11
11
  import AdminMessage from './AdminMessage.js';
12
12
  import TextMessageItemBody from './TextMessageItemBody.js';
@@ -15,24 +15,24 @@ import ThumbnailMessageItemBody from './ThumbnailMessageItemBody.js';
15
15
  import OGMessageItemBody from './OGMessageItemBody.js';
16
16
  import UnknownMessageItemBody from './UnknownMessageItemBody.js';
17
17
  import QuoteMessage from './QuoteMessage.js';
18
- import { v as getUIKitMessageTypes, k as getClassName, w as getSenderName, x as isTextMessage, y as isOGMessage, z as getUIKitMessageType, p as isThumbnailMessage } from '../index-03ccaf35.js';
19
- import { a as UserProfileContext } from '../UserProfileContext-143a6a42.js';
20
- import { u as useLocalization } from '../LocalizationContext-2a073ef0.js';
18
+ import { v as getUIKitMessageTypes, k as getClassName, w as getSenderName, x as isTextMessage, y as isOGMessage, z as getUIKitMessageType, p as isThumbnailMessage } from '../index-7e7eecb5.js';
19
+ import { a as UserProfileContext } from '../UserProfileContext-70f3b69e.js';
20
+ import { u as useLocalization } from '../LocalizationContext-397e33d0.js';
21
21
  import useSendbirdStateContext from '../useSendbirdStateContext.js';
22
- import '../index-5ec69689.js';
23
- import '../tslib.es6-710c6267.js';
22
+ import '../index-cd8f3035.js';
23
+ import '../tslib.es6-ea4b7876.js';
24
24
  import './ImageRenderer.js';
25
25
  import './Icon.js';
26
- import '../_rollupPluginBabelHelpers-3043541a.js';
26
+ import '../_rollupPluginBabelHelpers-67f295c6.js';
27
27
  import 'prop-types';
28
- import '../uuid-60ae25c1.js';
28
+ import '../uuid-e8af582d.js';
29
29
  import '../withSendbird.js';
30
30
  import '../sendbirdSelectors.js';
31
- import '../topics-18836011.js';
32
- import '../utils-301322ba.js';
33
- import '../index-6a47d16f.js';
31
+ import '../topics-84946297.js';
32
+ import '../utils-0cadb616.js';
33
+ import '../index-fcc0e6dc.js';
34
34
  import './Loader.js';
35
- import '../stringSet-647493ce.js';
35
+ import '../stringSet-232e2ec0.js';
36
36
  import './IconButton.js';
37
37
  import './ReactionButton.js';
38
38
  import 'react-dom';
@@ -44,7 +44,7 @@ import './Word.js';
44
44
  import './LinkLabel.js';
45
45
  import './MentionLabel.js';
46
46
  import './TextButton.js';
47
- import '../color-798488ed.js';
47
+ import '../color-c5e2ab33.js';
48
48
 
49
49
  function MessageContent(_a) {
50
50
  var _b, _c, _d, _e, _f;
@@ -1,18 +1,18 @@
1
- import { a as _slicedToArray, _ as _objectSpread2, b as _toConsumableArray } from '../_rollupPluginBabelHelpers-3043541a.js';
1
+ import { a as _slicedToArray, _ as _objectSpread2, b as _toConsumableArray } from '../_rollupPluginBabelHelpers-67f295c6.js';
2
2
  import React__default, { useContext, useRef, useState, useMemo, useEffect, useCallback } from 'react';
3
3
  import PropTypes from 'prop-types';
4
- import { N as NodeTypes, M as MessageInputKeys, a as NodeNames } from '../const-51fc1a68.js';
5
- import { U as USER_MENTION_TEMP_CHAR } from '../const-b88f8299.js';
4
+ import { N as NodeTypes, M as MessageInputKeys, a as NodeNames } from '../const-87ede7b1.js';
5
+ import { U as USER_MENTION_TEMP_CHAR } from '../const-849d720a.js';
6
6
  import IconButton from './IconButton.js';
7
- import { B as Button, a as ButtonTypes, b as ButtonSizes } from '../index-6a47d16f.js';
7
+ import { B as Button, a as ButtonTypes, b as ButtonSizes } from '../index-fcc0e6dc.js';
8
8
  import MentionUserLabel from './MentionUserLabel.js';
9
9
  import Icon, { IconTypes, IconColors } from './Icon.js';
10
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-ed39099a.js';
11
- import { a as LocalizationContext } from '../LocalizationContext-2a073ef0.js';
12
- import { l as convertWordToStringObj, S as StringObjType, m as arrayEqual, k as getClassName } from '../index-03ccaf35.js';
13
- import '../tslib.es6-710c6267.js';
14
- import '../stringSet-647493ce.js';
15
- import '../index-5ec69689.js';
10
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-cc420cce.js';
11
+ import { a as LocalizationContext } from '../LocalizationContext-397e33d0.js';
12
+ import { l as convertWordToStringObj, S as StringObjType, m as arrayEqual, k as getClassName } from '../index-7e7eecb5.js';
13
+ import '../tslib.es6-ea4b7876.js';
14
+ import '../stringSet-232e2ec0.js';
15
+ import '../index-cd8f3035.js';
16
16
 
17
17
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
18
18