@sendbird/uikit-react 3.2.4 → 3.2.6-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 (533) hide show
  1. package/App.js +327 -101
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +16 -0
  4. package/Channel/components/ChannelHeader.js +30 -18
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +31 -22
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +14 -14
  9. package/Channel/components/FrozenNotification.js +4 -4
  10. package/Channel/components/Message.js +76 -73
  11. package/Channel/components/Message.js.map +1 -1
  12. package/Channel/components/MessageInput.js +15 -15
  13. package/Channel/components/MessageList.js +23 -20
  14. package/Channel/components/MessageList.js.map +1 -1
  15. package/Channel/components/RemoveMessageModal.js +16 -15
  16. package/Channel/components/RemoveMessageModal.js.map +1 -1
  17. package/Channel/components/SuggestedMentionList.js +15 -15
  18. package/Channel/components/TypingIndicator.js +14 -14
  19. package/Channel/components/UnreadCount.js +4 -4
  20. package/Channel/context.js +13 -13
  21. package/Channel.js +25 -21
  22. package/Channel.js.map +1 -1
  23. package/ChannelList/components/AddChannel.js +14 -13
  24. package/ChannelList/components/AddChannel.js.map +1 -1
  25. package/ChannelList/components/ChannelListHeader.js +7 -7
  26. package/ChannelList/components/ChannelListUI.js +32 -26
  27. package/ChannelList/components/ChannelListUI.js.map +1 -1
  28. package/ChannelList/components/ChannelPreview.js +69 -28
  29. package/ChannelList/components/ChannelPreview.js.map +1 -1
  30. package/ChannelList/components/ChannelPreviewAction.js +14 -13
  31. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  32. package/ChannelList/context.js +8 -8
  33. package/ChannelList.js +28 -26
  34. package/ChannelList.js.map +1 -1
  35. package/{ChannelListProvider-c6fbc45c.js → ChannelListProvider-cef1f985.js} +33 -11
  36. package/ChannelListProvider-cef1f985.js.map +1 -0
  37. package/{ChannelProvider-00f1bb31.js → ChannelProvider-924d5a93.js} +15 -11
  38. package/ChannelProvider-924d5a93.js.map +1 -0
  39. package/ChannelSettings/components/ChannelProfile.js +12 -11
  40. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  41. package/ChannelSettings/components/ChannelSettingsUI.js +18 -17
  42. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  43. package/ChannelSettings/components/EditDetailsModal.js +13 -11
  44. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  45. package/ChannelSettings/components/LeaveChannel.js +74 -26
  46. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  47. package/ChannelSettings/components/ModerationPanel.js +19 -14
  48. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  49. package/ChannelSettings/components/UserListItem.js +11 -11
  50. package/ChannelSettings/components/UserPanel.js +14 -13
  51. package/ChannelSettings/components/UserPanel.js.map +1 -1
  52. package/ChannelSettings/context.js +9 -5
  53. package/ChannelSettings/context.js.map +1 -1
  54. package/ChannelSettings.js +19 -17
  55. package/ChannelSettings.js.map +1 -1
  56. package/CreateChannel/components/CreateChannelUI.js +14 -13
  57. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  58. package/CreateChannel/components/InviteUsers.js +32 -13
  59. package/CreateChannel/components/InviteUsers.js.map +1 -1
  60. package/CreateChannel/components/SelectChannelType.js +13 -11
  61. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  62. package/CreateChannel/context.js +4 -4
  63. package/CreateChannel.js +14 -13
  64. package/CreateChannel.js.map +1 -1
  65. package/{CreateChannelProvider-c0d11b0b.js → CreateChannelProvider-2b5b2952.js} +1 -1
  66. package/{CreateChannelProvider-c0d11b0b.js.map → CreateChannelProvider-2b5b2952.js.map} +1 -1
  67. package/CreateOpenChannel/components/CreateOpenChannelUI.js +11 -9
  68. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  69. package/CreateOpenChannel/context.js +1 -1
  70. package/CreateOpenChannel.js +10 -9
  71. package/CreateOpenChannel.js.map +1 -1
  72. package/EditUserProfile/components/EditUserProfileUI.js +13 -12
  73. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  74. package/EditUserProfile.js +13 -12
  75. package/EditUserProfile.js.map +1 -1
  76. package/{LocalizationContext-b6ff0c3d.js → LocalizationContext-2bd4bbe8.js} +3 -3
  77. package/{LocalizationContext-b6ff0c3d.js.map → LocalizationContext-2bd4bbe8.js.map} +1 -1
  78. package/MediaQueryContext-7be72ab4.js +90 -0
  79. package/MediaQueryContext-7be72ab4.js.map +1 -0
  80. package/{MemberList-07e7c82a.js → MemberList-405c20b6.js} +12 -6
  81. package/MemberList-405c20b6.js.map +1 -0
  82. package/MessageSearch/components/MessageSearchUI.js +11 -11
  83. package/MessageSearch/context.js +2 -2
  84. package/MessageSearch.js +11 -11
  85. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  86. package/OpenChannel/components/OpenChannelHeader.js +25 -15
  87. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  88. package/OpenChannel/components/OpenChannelInput.js +15 -15
  89. package/OpenChannel/components/OpenChannelMessage.js +22 -20
  90. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  91. package/OpenChannel/components/OpenChannelMessageList.js +24 -22
  92. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  93. package/OpenChannel/components/OpenChannelUI.js +24 -22
  94. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  95. package/OpenChannel/context.js +9 -9
  96. package/OpenChannel.js +27 -24
  97. package/OpenChannel.js.map +1 -1
  98. package/OpenChannelList/components/OpenChannelListUI.js +15 -13
  99. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  100. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  101. package/OpenChannelList/context.js +4 -4
  102. package/OpenChannelList.js +13 -12
  103. package/OpenChannelList.js.map +1 -1
  104. package/{OpenChannelListProvider-956b2f42.js → OpenChannelListProvider-13648dc9.js} +3 -3
  105. package/{OpenChannelListProvider-956b2f42.js.map → OpenChannelListProvider-13648dc9.js.map} +1 -1
  106. package/{OpenChannelProvider-e7b44f68.js → OpenChannelProvider-7a6eea29.js} +11 -9
  107. package/OpenChannelProvider-7a6eea29.js.map +1 -0
  108. package/OpenChannelSettings/components/EditDetailsModal.js +14 -12
  109. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  110. package/OpenChannelSettings/components/OpenChannelProfile.js +13 -12
  111. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  112. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -18
  113. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  114. package/OpenChannelSettings/components/OperatorUI.js +22 -16
  115. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  116. package/OpenChannelSettings/components/ParticipantUI.js +15 -14
  117. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  118. package/OpenChannelSettings/context.js +3 -3
  119. package/OpenChannelSettings.js +18 -17
  120. package/OpenChannelSettings.js.map +1 -1
  121. package/SendbirdProvider.js +22 -10
  122. package/SendbirdProvider.js.map +1 -1
  123. package/{UserProfileContext-9f99563d.js → UserProfileContext-0d8287d0.js} +8 -4
  124. package/UserProfileContext-0d8287d0.js.map +1 -0
  125. package/{_rollupPluginBabelHelpers-dea8a6c9.js → _rollupPluginBabelHelpers-fa4874e9.js} +19 -2
  126. package/_rollupPluginBabelHelpers-fa4874e9.js.map +1 -0
  127. package/{actionTypes-7203a821.js → actionTypes-36657780.js} +1 -1
  128. package/{actionTypes-7203a821.js.map → actionTypes-36657780.js.map} +1 -1
  129. package/cjs/App.js +326 -100
  130. package/cjs/App.js.map +1 -1
  131. package/cjs/Channel/components/ChannelHeader.js +29 -17
  132. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  133. package/cjs/Channel/components/ChannelUI.js +31 -22
  134. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  135. package/cjs/Channel/components/FileViewer.js +14 -14
  136. package/cjs/Channel/components/FrozenNotification.js +4 -4
  137. package/cjs/Channel/components/Message.js +76 -73
  138. package/cjs/Channel/components/Message.js.map +1 -1
  139. package/cjs/Channel/components/MessageInput.js +15 -15
  140. package/cjs/Channel/components/MessageList.js +23 -20
  141. package/cjs/Channel/components/MessageList.js.map +1 -1
  142. package/cjs/Channel/components/RemoveMessageModal.js +16 -15
  143. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  144. package/cjs/Channel/components/SuggestedMentionList.js +15 -15
  145. package/cjs/Channel/components/TypingIndicator.js +14 -14
  146. package/cjs/Channel/components/UnreadCount.js +4 -4
  147. package/cjs/Channel/context.js +13 -13
  148. package/cjs/Channel.js +25 -21
  149. package/cjs/Channel.js.map +1 -1
  150. package/cjs/ChannelList/components/AddChannel.js +14 -13
  151. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  152. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  153. package/cjs/ChannelList/components/ChannelListUI.js +32 -26
  154. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  155. package/cjs/ChannelList/components/ChannelPreview.js +68 -27
  156. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  157. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -13
  158. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  159. package/cjs/ChannelList/context.js +8 -8
  160. package/cjs/ChannelList.js +28 -26
  161. package/cjs/ChannelList.js.map +1 -1
  162. package/cjs/{ChannelListProvider-1d42a73f.js → ChannelListProvider-7ee975c5.js} +33 -11
  163. package/cjs/ChannelListProvider-7ee975c5.js.map +1 -0
  164. package/cjs/{ChannelProvider-7b5ac56e.js → ChannelProvider-b28cd92d.js} +15 -11
  165. package/cjs/ChannelProvider-b28cd92d.js.map +1 -0
  166. package/cjs/ChannelSettings/components/ChannelProfile.js +12 -11
  167. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  168. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -17
  169. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  170. package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -11
  171. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  172. package/cjs/ChannelSettings/components/LeaveChannel.js +74 -26
  173. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  174. package/cjs/ChannelSettings/components/ModerationPanel.js +19 -14
  175. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  176. package/cjs/ChannelSettings/components/UserListItem.js +11 -11
  177. package/cjs/ChannelSettings/components/UserPanel.js +14 -13
  178. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  179. package/cjs/ChannelSettings/context.js +9 -5
  180. package/cjs/ChannelSettings/context.js.map +1 -1
  181. package/cjs/ChannelSettings.js +19 -17
  182. package/cjs/ChannelSettings.js.map +1 -1
  183. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -13
  184. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  185. package/cjs/CreateChannel/components/InviteUsers.js +32 -13
  186. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  187. package/cjs/CreateChannel/components/SelectChannelType.js +13 -11
  188. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  189. package/cjs/CreateChannel/context.js +4 -4
  190. package/cjs/CreateChannel.js +14 -13
  191. package/cjs/CreateChannel.js.map +1 -1
  192. package/cjs/{CreateChannelProvider-a23a11b3.js → CreateChannelProvider-e368f771.js} +1 -1
  193. package/cjs/{CreateChannelProvider-a23a11b3.js.map → CreateChannelProvider-e368f771.js.map} +1 -1
  194. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +11 -9
  195. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  196. package/cjs/CreateOpenChannel/context.js +1 -1
  197. package/cjs/CreateOpenChannel.js +10 -9
  198. package/cjs/CreateOpenChannel.js.map +1 -1
  199. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -12
  200. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  201. package/cjs/EditUserProfile.js +13 -12
  202. package/cjs/EditUserProfile.js.map +1 -1
  203. package/cjs/{LocalizationContext-5447c898.js → LocalizationContext-2a1cb44b.js} +3 -3
  204. package/cjs/{LocalizationContext-5447c898.js.map → LocalizationContext-2a1cb44b.js.map} +1 -1
  205. package/cjs/MediaQueryContext-623586af.js +97 -0
  206. package/cjs/MediaQueryContext-623586af.js.map +1 -0
  207. package/cjs/{MemberList-745e3d9e.js → MemberList-ab7f22b9.js} +12 -6
  208. package/cjs/MemberList-ab7f22b9.js.map +1 -0
  209. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  210. package/cjs/MessageSearch/context.js +2 -2
  211. package/cjs/MessageSearch.js +11 -11
  212. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  213. package/cjs/OpenChannel/components/OpenChannelHeader.js +24 -14
  214. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  215. package/cjs/OpenChannel/components/OpenChannelInput.js +15 -15
  216. package/cjs/OpenChannel/components/OpenChannelMessage.js +22 -20
  217. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  218. package/cjs/OpenChannel/components/OpenChannelMessageList.js +24 -22
  219. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  220. package/cjs/OpenChannel/components/OpenChannelUI.js +24 -22
  221. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  222. package/cjs/OpenChannel/context.js +9 -9
  223. package/cjs/OpenChannel.js +27 -24
  224. package/cjs/OpenChannel.js.map +1 -1
  225. package/cjs/OpenChannelList/components/OpenChannelListUI.js +15 -13
  226. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  227. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  228. package/cjs/OpenChannelList/context.js +4 -4
  229. package/cjs/OpenChannelList.js +13 -12
  230. package/cjs/OpenChannelList.js.map +1 -1
  231. package/cjs/{OpenChannelListProvider-8f2a88c2.js → OpenChannelListProvider-ee1df405.js} +3 -3
  232. package/cjs/{OpenChannelListProvider-8f2a88c2.js.map → OpenChannelListProvider-ee1df405.js.map} +1 -1
  233. package/cjs/{OpenChannelProvider-447d5b53.js → OpenChannelProvider-8b0e26a5.js} +11 -9
  234. package/cjs/OpenChannelProvider-8b0e26a5.js.map +1 -0
  235. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +14 -12
  236. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  237. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -12
  238. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  239. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -18
  240. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  241. package/cjs/OpenChannelSettings/components/OperatorUI.js +22 -16
  242. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  243. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -14
  244. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  245. package/cjs/OpenChannelSettings/context.js +3 -3
  246. package/cjs/OpenChannelSettings.js +18 -17
  247. package/cjs/OpenChannelSettings.js.map +1 -1
  248. package/cjs/SendbirdProvider.js +22 -10
  249. package/cjs/SendbirdProvider.js.map +1 -1
  250. package/cjs/{UserProfileContext-2201df8d.js → UserProfileContext-157c5174.js} +8 -4
  251. package/cjs/UserProfileContext-157c5174.js.map +1 -0
  252. package/cjs/{_rollupPluginBabelHelpers-cb661818.js → _rollupPluginBabelHelpers-c8ddc77e.js} +19 -1
  253. package/cjs/_rollupPluginBabelHelpers-c8ddc77e.js.map +1 -0
  254. package/cjs/{actionTypes-0521e719.js → actionTypes-8d79679a.js} +1 -1
  255. package/cjs/{actionTypes-0521e719.js.map → actionTypes-8d79679a.js.map} +1 -1
  256. package/cjs/{color-50f674f3.js → color-fcbb3426.js} +1 -1
  257. package/cjs/{color-50f674f3.js.map → color-fcbb3426.js.map} +1 -1
  258. package/cjs/{compareIds-d0e5da82.js → compareIds-eb7c82dc.js} +1 -1
  259. package/cjs/{compareIds-d0e5da82.js.map → compareIds-eb7c82dc.js.map} +1 -1
  260. package/cjs/{const-12075c2d.js → const-3ceaca5c.js} +1 -1
  261. package/cjs/{const-12075c2d.js.map → const-3ceaca5c.js.map} +1 -1
  262. package/cjs/{const-093eff13.js → const-8b0c6ef1.js} +1 -1
  263. package/cjs/{const-093eff13.js.map → const-8b0c6ef1.js.map} +1 -1
  264. package/cjs/{context-a452ae97.js → context-ca0ce6fa.js} +2 -2
  265. package/cjs/{context-a452ae97.js.map → context-ca0ce6fa.js.map} +1 -1
  266. package/cjs/dist/index.css +627 -300
  267. package/cjs/dist/index.css.map +1 -1
  268. package/cjs/{index-bdac4741.js → index-02154394.js} +4 -4
  269. package/cjs/{index-bdac4741.js.map → index-02154394.js.map} +1 -1
  270. package/cjs/{index-d3706b9e.js → index-06c0cb5d.js} +9 -8
  271. package/cjs/index-06c0cb5d.js.map +1 -0
  272. package/cjs/{index-61180888.js → index-223b8a15.js} +6 -5
  273. package/cjs/index-223b8a15.js.map +1 -0
  274. package/cjs/{index-a9f8c4d4.js → index-5513787c.js} +2 -2
  275. package/cjs/{index-a9f8c4d4.js.map → index-5513787c.js.map} +1 -1
  276. package/cjs/{index-63513959.js → index-5ce5b5ef.js} +1 -1
  277. package/cjs/{index-63513959.js.map → index-5ce5b5ef.js.map} +1 -1
  278. package/cjs/{index-ec6e34c8.js → index-6c759d44.js} +2 -2
  279. package/cjs/{index-ec6e34c8.js.map → index-6c759d44.js.map} +1 -1
  280. package/cjs/index-6f03baa8.js +194 -0
  281. package/cjs/index-6f03baa8.js.map +1 -0
  282. package/cjs/{index-f7729b70.js → index-7f18a16f.js} +2 -2
  283. package/cjs/{index-f7729b70.js.map → index-7f18a16f.js.map} +1 -1
  284. package/cjs/{index-259776b5.js → index-8d7bc2cf.js} +4 -4
  285. package/cjs/{index-259776b5.js.map → index-8d7bc2cf.js.map} +1 -1
  286. package/cjs/{index-8320b791.js → index-f1ad3c0d.js} +1 -1
  287. package/cjs/{index-8320b791.js.map → index-f1ad3c0d.js.map} +1 -1
  288. package/cjs/{index-1e4f968c.js → index-f42aafcc.js} +5 -5
  289. package/cjs/index-f42aafcc.js.map +1 -0
  290. package/cjs/index.js +35 -32
  291. package/cjs/index.js.map +1 -1
  292. package/cjs/sendbirdSelectors.js +2 -2
  293. package/cjs/{stringSet-7509e1fb.js → stringSet-b531455a.js} +4 -1
  294. package/cjs/stringSet-b531455a.js.map +1 -0
  295. package/cjs/{topics-ae5e326d.js → topics-14e5ee9f.js} +1 -1
  296. package/cjs/{topics-ae5e326d.js.map → topics-14e5ee9f.js.map} +1 -1
  297. package/cjs/{tslib.es6-062eb722.js → tslib.es6-ce6b9cf9.js} +1 -1
  298. package/cjs/{tslib.es6-062eb722.js.map → tslib.es6-ce6b9cf9.js.map} +1 -1
  299. package/cjs/ui/Accordion.js +3 -3
  300. package/cjs/ui/AccordionGroup.js +2 -2
  301. package/cjs/ui/AdminMessage.js +3 -3
  302. package/cjs/ui/Avatar.js +2 -2
  303. package/cjs/ui/Badge.js +5 -5
  304. package/cjs/ui/BottomSheet.js +43 -0
  305. package/cjs/ui/BottomSheet.js.map +1 -0
  306. package/cjs/ui/Button.js +3 -3
  307. package/cjs/ui/ChannelAvatar.js +3 -3
  308. package/cjs/ui/ConnectionStatus.js +4 -4
  309. package/cjs/ui/ContextMenu.js +14 -10
  310. package/cjs/ui/ContextMenu.js.map +1 -1
  311. package/cjs/ui/DateSeparator.js +4 -4
  312. package/cjs/ui/EmojiReactions.js +7 -7
  313. package/cjs/ui/FileMessageItemBody.js +8 -6
  314. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  315. package/cjs/ui/FileViewer.js +8 -8
  316. package/cjs/ui/IconButton.js +1 -1
  317. package/cjs/ui/ImageRenderer.js +1 -1
  318. package/cjs/ui/Input.js +2 -2
  319. package/cjs/ui/Label.js +2 -2
  320. package/cjs/ui/LinkLabel.js +9 -3
  321. package/cjs/ui/LinkLabel.js.map +1 -1
  322. package/cjs/ui/Loader.js +1 -1
  323. package/cjs/ui/MentionLabel.js +11 -10
  324. package/cjs/ui/MentionLabel.js.map +1 -1
  325. package/cjs/ui/MessageContent.js +450 -40
  326. package/cjs/ui/MessageContent.js.map +1 -1
  327. package/cjs/ui/MessageInput.js +9 -9
  328. package/cjs/ui/MessageItemMenu.js +7 -7
  329. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  330. package/cjs/ui/MessageSearchFileItem.js +9 -9
  331. package/cjs/ui/MessageSearchItem.js +9 -9
  332. package/cjs/ui/MessageStatus.js +7 -7
  333. package/cjs/ui/Modal.js +33 -18
  334. package/cjs/ui/Modal.js.map +1 -1
  335. package/cjs/ui/OGMessageItemBody.js +11 -10
  336. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  337. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  338. package/cjs/ui/OpenChannelAvatar.js +6 -6
  339. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  340. package/cjs/ui/OpenchannelFileMessage.js +56 -26
  341. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  342. package/cjs/ui/OpenchannelOGMessage.js +75 -37
  343. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  344. package/cjs/ui/OpenchannelThumbnailMessage.js +58 -26
  345. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  346. package/cjs/ui/OpenchannelUserMessage.js +74 -51
  347. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  348. package/cjs/ui/PlaceHolder.js +6 -6
  349. package/cjs/ui/QuoteMessage.js +9 -6
  350. package/cjs/ui/QuoteMessage.js.map +1 -1
  351. package/cjs/ui/QuoteMessageInput.js +6 -6
  352. package/cjs/ui/ReactionBadge.js +4 -3
  353. package/cjs/ui/ReactionBadge.js.map +1 -1
  354. package/cjs/ui/ReactionButton.js +7 -1
  355. package/cjs/ui/ReactionButton.js.map +1 -1
  356. package/cjs/ui/SortByRow.js +2 -2
  357. package/cjs/ui/TextButton.js +2 -2
  358. package/cjs/ui/TextMessageItemBody.js +11 -10
  359. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  360. package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
  361. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  362. package/cjs/ui/Tooltip.js +3 -3
  363. package/cjs/ui/TooltipWrapper.js +1 -1
  364. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  365. package/cjs/ui/UserListItem.js +11 -11
  366. package/cjs/ui/UserProfile.js +18 -11
  367. package/cjs/ui/UserProfile.js.map +1 -1
  368. package/cjs/ui/Word.js +11 -10
  369. package/cjs/ui/Word.js.map +1 -1
  370. package/cjs/useLongPress-ca8f8cd9.js +118 -0
  371. package/cjs/useLongPress-ca8f8cd9.js.map +1 -0
  372. package/cjs/useSendbirdStateContext.js +1 -1
  373. package/cjs/{utils-079403ab.js → utils-54962329.js} +1 -1
  374. package/cjs/{utils-079403ab.js.map → utils-54962329.js.map} +1 -1
  375. package/cjs/{utils-7e01ad5d.js → utils-b076caa2.js} +1 -1
  376. package/cjs/{utils-7e01ad5d.js.map → utils-b076caa2.js.map} +1 -1
  377. package/cjs/{utils-d512a340.js → utils-d8b4def1.js} +1 -1
  378. package/cjs/{utils-d512a340.js.map → utils-d8b4def1.js.map} +1 -1
  379. package/cjs/{uuid-5f2be0dc.js → uuid-e0efb18c.js} +1 -1
  380. package/cjs/{uuid-5f2be0dc.js.map → uuid-e0efb18c.js.map} +1 -1
  381. package/cjs/withSendbird.js +1 -1
  382. package/{color-d6871add.js → color-468f177a.js} +1 -1
  383. package/{color-d6871add.js.map → color-468f177a.js.map} +1 -1
  384. package/{compareIds-f300a3d3.js → compareIds-7e80cfd0.js} +1 -1
  385. package/{compareIds-f300a3d3.js.map → compareIds-7e80cfd0.js.map} +1 -1
  386. package/{const-460c0f68.js → const-5feae56e.js} +1 -1
  387. package/{const-460c0f68.js.map → const-5feae56e.js.map} +1 -1
  388. package/{const-cea7932a.js → const-7a18ac0a.js} +1 -1
  389. package/{const-cea7932a.js.map → const-7a18ac0a.js.map} +1 -1
  390. package/{context-1aee2fcc.js → context-0e023b05.js} +2 -2
  391. package/{context-1aee2fcc.js.map → context-0e023b05.js.map} +1 -1
  392. package/dist/index.css +627 -300
  393. package/dist/index.css.map +1 -1
  394. package/{index-eee9204a.js → index-1c02ac0d.js} +2 -2
  395. package/{index-eee9204a.js.map → index-1c02ac0d.js.map} +1 -1
  396. package/{index-b71aed3b.js → index-36f812a7.js} +4 -4
  397. package/{index-b71aed3b.js.map → index-36f812a7.js.map} +1 -1
  398. package/{index-b1bcebc7.js → index-670435a8.js} +1 -1
  399. package/{index-b1bcebc7.js.map → index-670435a8.js.map} +1 -1
  400. package/{index-52b2b816.js → index-867e0d39.js} +6 -6
  401. package/index-867e0d39.js.map +1 -0
  402. package/{index-45615e6e.js → index-8b890de6.js} +9 -8
  403. package/index-8b890de6.js.map +1 -0
  404. package/{index-f936a084.js → index-b4ee3569.js} +1 -1
  405. package/{index-f936a084.js.map → index-b4ee3569.js.map} +1 -1
  406. package/{index-a5ba7985.js → index-b8a1932a.js} +2 -2
  407. package/{index-a5ba7985.js.map → index-b8a1932a.js.map} +1 -1
  408. package/index-c4739f89.js +179 -0
  409. package/index-c4739f89.js.map +1 -0
  410. package/{index-8c54bbb8.js → index-c4eefc9d.js} +2 -2
  411. package/{index-8c54bbb8.js.map → index-c4eefc9d.js.map} +1 -1
  412. package/{index-f532aec7.js → index-dcae1e38.js} +6 -5
  413. package/index-dcae1e38.js.map +1 -0
  414. package/{index-c003c91c.js → index-ec923bf5.js} +4 -4
  415. package/{index-c003c91c.js.map → index-ec923bf5.js.map} +1 -1
  416. package/index.d.ts +17 -6
  417. package/index.js +35 -32
  418. package/index.js.map +1 -1
  419. package/package.json +1 -1
  420. package/sendbirdSelectors.js +2 -2
  421. package/{stringSet-38fffb6a.js → stringSet-65cf83b4.js} +4 -1
  422. package/stringSet-65cf83b4.js.map +1 -0
  423. package/{topics-d594b804.js → topics-2ff5f12a.js} +1 -1
  424. package/{topics-d594b804.js.map → topics-2ff5f12a.js.map} +1 -1
  425. package/{tslib.es6-8a087055.js → tslib.es6-7fef98cd.js} +1 -1
  426. package/{tslib.es6-8a087055.js.map → tslib.es6-7fef98cd.js.map} +1 -1
  427. package/ui/Accordion.js +3 -3
  428. package/ui/AccordionGroup.js +2 -2
  429. package/ui/AdminMessage.js +3 -3
  430. package/ui/Avatar.js +2 -2
  431. package/ui/Badge.js +5 -5
  432. package/ui/BottomSheet.js +37 -0
  433. package/ui/BottomSheet.js.map +1 -0
  434. package/ui/Button.js +3 -3
  435. package/ui/ChannelAvatar.js +3 -3
  436. package/ui/ConnectionStatus.js +4 -4
  437. package/ui/ContextMenu.js +14 -10
  438. package/ui/ContextMenu.js.map +1 -1
  439. package/ui/DateSeparator.js +4 -4
  440. package/ui/EmojiReactions.js +7 -7
  441. package/ui/FileMessageItemBody.js +8 -6
  442. package/ui/FileMessageItemBody.js.map +1 -1
  443. package/ui/FileViewer.js +8 -8
  444. package/ui/IconButton.js +1 -1
  445. package/ui/ImageRenderer.js +1 -1
  446. package/ui/Input.js +2 -2
  447. package/ui/Label.js +2 -2
  448. package/ui/LinkLabel.js +9 -3
  449. package/ui/LinkLabel.js.map +1 -1
  450. package/ui/Loader.js +1 -1
  451. package/ui/MentionLabel.js +11 -10
  452. package/ui/MentionLabel.js.map +1 -1
  453. package/ui/MessageContent.js +452 -42
  454. package/ui/MessageContent.js.map +1 -1
  455. package/ui/MessageInput.js +9 -9
  456. package/ui/MessageItemMenu.js +7 -7
  457. package/ui/MessageItemReactionMenu.js +5 -5
  458. package/ui/MessageSearchFileItem.js +9 -9
  459. package/ui/MessageSearchItem.js +9 -9
  460. package/ui/MessageStatus.js +7 -7
  461. package/ui/Modal.js +33 -18
  462. package/ui/Modal.js.map +1 -1
  463. package/ui/OGMessageItemBody.js +11 -10
  464. package/ui/OGMessageItemBody.js.map +1 -1
  465. package/ui/OpenChannelAdminMessage.js +3 -3
  466. package/ui/OpenChannelAvatar.js +6 -6
  467. package/ui/OpenchannelConversationHeader.js +6 -6
  468. package/ui/OpenchannelFileMessage.js +50 -20
  469. package/ui/OpenchannelFileMessage.js.map +1 -1
  470. package/ui/OpenchannelOGMessage.js +66 -28
  471. package/ui/OpenchannelOGMessage.js.map +1 -1
  472. package/ui/OpenchannelThumbnailMessage.js +50 -18
  473. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  474. package/ui/OpenchannelUserMessage.js +67 -44
  475. package/ui/OpenchannelUserMessage.js.map +1 -1
  476. package/ui/PlaceHolder.js +6 -6
  477. package/ui/QuoteMessage.js +9 -6
  478. package/ui/QuoteMessage.js.map +1 -1
  479. package/ui/QuoteMessageInput.js +6 -6
  480. package/ui/ReactionBadge.js +4 -3
  481. package/ui/ReactionBadge.js.map +1 -1
  482. package/ui/ReactionButton.js +7 -1
  483. package/ui/ReactionButton.js.map +1 -1
  484. package/ui/SortByRow.js +2 -2
  485. package/ui/TextButton.js +2 -2
  486. package/ui/TextMessageItemBody.js +11 -10
  487. package/ui/TextMessageItemBody.js.map +1 -1
  488. package/ui/ThumbnailMessageItemBody.js +2 -2
  489. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  490. package/ui/Tooltip.js +3 -3
  491. package/ui/TooltipWrapper.js +1 -1
  492. package/ui/UnknownMessageItemBody.js +6 -6
  493. package/ui/UserListItem.js +11 -11
  494. package/ui/UserProfile.js +18 -11
  495. package/ui/UserProfile.js.map +1 -1
  496. package/ui/Word.js +11 -10
  497. package/ui/Word.js.map +1 -1
  498. package/useLongPress-2c79297b.js +116 -0
  499. package/useLongPress-2c79297b.js.map +1 -0
  500. package/useSendbirdStateContext.js +1 -1
  501. package/{utils-daa9779c.js → utils-a3afc9f0.js} +1 -1
  502. package/{utils-daa9779c.js.map → utils-a3afc9f0.js.map} +1 -1
  503. package/{utils-e55000b0.js → utils-ac92824a.js} +1 -1
  504. package/{utils-e55000b0.js.map → utils-ac92824a.js.map} +1 -1
  505. package/{utils-4edea23e.js → utils-db039320.js} +1 -1
  506. package/{utils-4edea23e.js.map → utils-db039320.js.map} +1 -1
  507. package/{uuid-c6ede0a0.js → uuid-68db8245.js} +1 -1
  508. package/{uuid-c6ede0a0.js.map → uuid-68db8245.js.map} +1 -1
  509. package/withSendbird.js +1 -1
  510. package/ChannelListProvider-c6fbc45c.js.map +0 -1
  511. package/ChannelProvider-00f1bb31.js.map +0 -1
  512. package/MemberList-07e7c82a.js.map +0 -1
  513. package/OpenChannelProvider-e7b44f68.js.map +0 -1
  514. package/UserProfileContext-9f99563d.js.map +0 -1
  515. package/_rollupPluginBabelHelpers-dea8a6c9.js.map +0 -1
  516. package/cjs/ChannelListProvider-1d42a73f.js.map +0 -1
  517. package/cjs/ChannelProvider-7b5ac56e.js.map +0 -1
  518. package/cjs/MemberList-745e3d9e.js.map +0 -1
  519. package/cjs/OpenChannelProvider-447d5b53.js.map +0 -1
  520. package/cjs/UserProfileContext-2201df8d.js.map +0 -1
  521. package/cjs/_rollupPluginBabelHelpers-cb661818.js.map +0 -1
  522. package/cjs/index-1e4f968c.js.map +0 -1
  523. package/cjs/index-61180888.js.map +0 -1
  524. package/cjs/index-d3706b9e.js.map +0 -1
  525. package/cjs/openChannelUtils-3cc2cf97.js +0 -96
  526. package/cjs/openChannelUtils-3cc2cf97.js.map +0 -1
  527. package/cjs/stringSet-7509e1fb.js.map +0 -1
  528. package/index-45615e6e.js.map +0 -1
  529. package/index-52b2b816.js.map +0 -1
  530. package/index-f532aec7.js.map +0 -1
  531. package/openChannelUtils-a5650554.js +0 -86
  532. package/openChannelUtils-a5650554.js.map +0 -1
  533. package/stringSet-38fffb6a.js.map +0 -1
@@ -1,34 +1,37 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../tslib.es6-062eb722.js');
3
+ var _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-c8ddc77e.js');
4
+ var tslib_es6 = require('../tslib.es6-ce6b9cf9.js');
4
5
  var React = require('react');
5
- var index = require('../index-f7729b70.js');
6
+ var index$1 = require('../index-7f18a16f.js');
6
7
  var ui_Avatar = require('./Avatar.js');
7
8
  var ui_ContextMenu = require('./ContextMenu.js');
8
9
  var ui_Icon = require('./Icon.js');
9
10
  var ui_IconButton = require('./IconButton.js');
10
- var ui_Label = require('../index-ec6e34c8.js');
11
+ var ui_Label = require('../index-6c759d44.js');
11
12
  var ui_Loader = require('./Loader.js');
12
13
  var ui_UserProfile = require('./UserProfile.js');
13
- var UserProfileContext = require('../UserProfileContext-2201df8d.js');
14
- var LocalizationContext = require('../LocalizationContext-5447c898.js');
15
- var utils = require('../utils-7e01ad5d.js');
16
- var uuid = require('../uuid-5f2be0dc.js');
17
- var openChannelUtils = require('../openChannelUtils-3cc2cf97.js');
18
- require('../index-63513959.js');
14
+ var UserProfileContext = require('../UserProfileContext-157c5174.js');
15
+ var LocalizationContext = require('../LocalizationContext-2a1cb44b.js');
16
+ var utils = require('../utils-b076caa2.js');
17
+ var uuid = require('../uuid-e0efb18c.js');
18
+ var index = require('../index-6f03baa8.js');
19
+ var MediaQueryContext = require('../MediaQueryContext-623586af.js');
20
+ var useLongPress = require('../useLongPress-ca8f8cd9.js');
21
+ var index$2 = require('../index-f42aafcc.js');
22
+ require('../index-5ce5b5ef.js');
19
23
  require('./ImageRenderer.js');
20
24
  require('prop-types');
21
25
  require('react-dom');
22
26
  require('./SortByRow.js');
23
- require('../index-1e4f968c.js');
24
27
  require('../utils/message/getOutgoingMessageState.js');
25
- require('../stringSet-7509e1fb.js');
28
+ require('../stringSet-b531455a.js');
26
29
  require('../withSendbird.js');
27
- require('../_rollupPluginBabelHelpers-cb661818.js');
28
30
  require('../sendbirdSelectors.js');
29
- require('../topics-ae5e326d.js');
30
- require('../utils-079403ab.js');
31
+ require('../topics-14e5ee9f.js');
32
+ require('../utils-54962329.js');
31
33
  require('./Button.js');
34
+ require('../useSendbirdStateContext.js');
32
35
 
33
36
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
34
37
 
@@ -61,35 +64,21 @@ function OpenchannelUserMessage(_a) {
61
64
  var messageRef = React.useRef(null);
62
65
  var avatarRef = React.useRef(null);
63
66
  var contextMenuRef = React.useRef(null);
67
+ var mobileMenuRef = React.useRef(null);
64
68
 
65
69
  var _d = React.useState({}),
66
70
  contextStyle = _d[0],
67
- setContextStyle = _d[1]; // consts
71
+ setContextStyle = _d[1];
68
72
 
73
+ var _e = React.useState(false),
74
+ contextMenu = _e[0],
75
+ setContextMenu = _e[1]; // consts
69
76
 
70
- var status = message === null || message === void 0 ? void 0 : message.sendingStatus;
71
- var isPending = openChannelUtils.checkIsPending(status);
72
- var isFailed = openChannelUtils.checkIsFailed(status);
73
- var sender = openChannelUtils.getSenderFromMessage(message);
74
- var MemoizedMessageText = React.useMemo(function () {
75
- return function () {
76
- var splitMessage = message.message.split(/\r/);
77
- var matchedMessage = splitMessage.map(function (word) {
78
- return word !== '' ? word : /*#__PURE__*/React__default["default"].createElement("br", null);
79
- });
80
-
81
- if (message.updatedAt > 0) {
82
- matchedMessage.push( /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
83
- key: uuid.uuidv4(),
84
- type: ui_Label.LabelTypography.BODY_1,
85
- color: ui_Label.LabelColors.ONBACKGROUND_2,
86
- calssName: "sendbird-openchannel-user-message-word"
87
- }, " ".concat(stringSet.MESSAGE_EDITED, " ")));
88
- }
89
77
 
90
- return matchedMessage;
91
- };
92
- }, [message, message.updatedAt]); // place context menu top depending clientHeight of message component
78
+ var status = message === null || message === void 0 ? void 0 : message.sendingStatus;
79
+ var isPending = index.checkIsPending(status);
80
+ var isFailed = index.checkIsFailed(status);
81
+ var sender = index.getSenderFromMessage(message); // place context menu top depending clientHeight of message component
93
82
 
94
83
  React.useEffect(function () {
95
84
  var _a;
@@ -104,6 +93,12 @@ function OpenchannelUserMessage(_a) {
104
93
  });
105
94
  }
106
95
  }, [window.innerWidth]);
96
+ var onLongPress = useLongPress.useLongPress({
97
+ onLongPress: function () {
98
+ setContextMenu(true);
99
+ }
100
+ });
101
+ var isMobile = MediaQueryContext.useMediaQueryContext().isMobile;
107
102
  return /*#__PURE__*/React__default["default"].createElement("div", {
108
103
  className: tslib_es6.__spreadArray(tslib_es6.__spreadArray([], Array.isArray(className) ? className : [className], true), ['sendbird-openchannel-user-message'], false).join(' '),
109
104
  ref: messageRef
@@ -130,8 +125,8 @@ function OpenchannelUserMessage(_a) {
130
125
  parentContainRef: avatarRef,
131
126
  closeDropdown: closeDropdown,
132
127
  style: {
133
- paddingTop: 0,
134
- paddingBottom: 0
128
+ paddingTop: '0px',
129
+ paddingBottom: '0px'
135
130
  }
136
131
  }, renderUserProfile ? renderUserProfile({
137
132
  user: sender,
@@ -154,15 +149,21 @@ function OpenchannelUserMessage(_a) {
154
149
  className: "sendbird-openchannel-user-message__right__top__sent-at",
155
150
  type: ui_Label.LabelTypography.CAPTION_3,
156
151
  color: ui_Label.LabelColors.ONBACKGROUND_3
157
- }, (message === null || message === void 0 ? void 0 : message.createdAt) && index.format(message === null || message === void 0 ? void 0 : message.createdAt, 'p', {
152
+ }, (message === null || message === void 0 ? void 0 : message.createdAt) && index$1.format(message === null || message === void 0 ? void 0 : message.createdAt, 'p', {
158
153
  locale: dateLocale
159
- }))), /*#__PURE__*/React__default["default"].createElement("div", {
160
- className: "sendbird-openchannel-user-message__right__bottom"
161
- }, /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
154
+ }))), /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers._extends({}, isMobile ? tslib_es6.__assign({}, onLongPress) : {}, {
155
+ className: "sendbird-openchannel-user-message__right__bottom",
156
+ ref: mobileMenuRef
157
+ }), /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
162
158
  className: "sendbird-openchannel-user-message__right__bottom__message",
163
159
  type: ui_Label.LabelTypography.BODY_1,
164
160
  color: ui_Label.LabelColors.ONBACKGROUND_1
165
- }, MemoizedMessageText())), (isPending || isFailed) && /*#__PURE__*/React__default["default"].createElement("div", {
161
+ }, message === null || message === void 0 ? void 0 : message.message, index$2.isEditedMessage(message) && /*#__PURE__*/React__default["default"].createElement(ui_Label.Label, {
162
+ key: uuid.uuidv4(),
163
+ type: ui_Label.LabelTypography.BODY_1,
164
+ color: ui_Label.LabelColors.ONBACKGROUND_2,
165
+ calssName: "sendbird-openchannel-user-message-word"
166
+ }, " ".concat(stringSet.MESSAGE_EDITED, " ")))), (isPending || isFailed) && /*#__PURE__*/React__default["default"].createElement("div", {
166
167
  className: "sendbird-openchannel-user-message__right__tail"
167
168
  }, isPending && /*#__PURE__*/React__default["default"].createElement(ui_Loader, {
168
169
  width: "16px",
@@ -179,13 +180,13 @@ function OpenchannelUserMessage(_a) {
179
180
  fillColor: ui_Icon.IconColors.ERROR,
180
181
  width: "16px",
181
182
  height: "16px"
182
- }))), /*#__PURE__*/React__default["default"].createElement("div", {
183
+ }))), !isMobile && /*#__PURE__*/React__default["default"].createElement("div", {
183
184
  className: "sendbird-openchannel-user-message__context-menu",
184
185
  ref: contextMenuRef,
185
186
  style: contextStyle
186
187
  }, /*#__PURE__*/React__default["default"].createElement(ui_ContextMenu["default"], {
187
188
  menuTrigger: function (toggleDropdown) {
188
- return openChannelUtils.showMenuTrigger({
189
+ return index.showMenuTrigger({
189
190
  message: message,
190
191
  userId: userId,
191
192
  status: status
@@ -209,7 +210,7 @@ function OpenchannelUserMessage(_a) {
209
210
  parentContainRef: contextMenuRef,
210
211
  closeDropdown: closeDropdown,
211
212
  openLeft: true
212
- }, openChannelUtils.isFineCopy({
213
+ }, index.isFineCopy({
213
214
  message: message,
214
215
  userId: userId,
215
216
  status: status
@@ -219,7 +220,7 @@ function OpenchannelUserMessage(_a) {
219
220
  utils.copyToClipboard(message.message);
220
221
  closeDropdown();
221
222
  }
222
- }, stringSet.CONTEXT_MENU_DROPDOWN__COPY), openChannelUtils.isFineEdit({
223
+ }, stringSet.CONTEXT_MENU_DROPDOWN__COPY), index.isFineEdit({
223
224
  message: message,
224
225
  userId: userId,
225
226
  status: status
@@ -233,7 +234,7 @@ function OpenchannelUserMessage(_a) {
233
234
  showEdit(true);
234
235
  closeDropdown();
235
236
  }
236
- }, stringSet.CONTEXT_MENU_DROPDOWN__EDIT), openChannelUtils.isFineResend({
237
+ }, stringSet.CONTEXT_MENU_DROPDOWN__EDIT), index.isFineResend({
237
238
  message: message,
238
239
  userId: userId,
239
240
  status: status
@@ -243,7 +244,7 @@ function OpenchannelUserMessage(_a) {
243
244
  resendMessage(message);
244
245
  closeDropdown();
245
246
  }
246
- }, stringSet.CONTEXT_MENU_DROPDOWN__RESEND), openChannelUtils.isFineDelete({
247
+ }, stringSet.CONTEXT_MENU_DROPDOWN__RESEND), index.isFineDelete({
247
248
  message: message,
248
249
  userId: userId,
249
250
  status: status
@@ -259,7 +260,29 @@ function OpenchannelUserMessage(_a) {
259
260
  }
260
261
  }, stringSet.CONTEXT_MENU_DROPDOWN__DELETE));
261
262
  }
262
- })));
263
+ })), contextMenu && /*#__PURE__*/React__default["default"].createElement(index.OpenChannelMobileMenu, {
264
+ message: message,
265
+ parentRef: mobileMenuRef,
266
+ hideMenu: function () {
267
+ setContextMenu(false);
268
+ },
269
+ showRemove: function () {
270
+ setContextMenu(false);
271
+ showRemove(true);
272
+ },
273
+ showEdit: function () {
274
+ setContextMenu(false);
275
+ showEdit(true);
276
+ },
277
+ copyToClipboard: function () {
278
+ setContextMenu(false);
279
+ utils.copyToClipboard(message === null || message === void 0 ? void 0 : message.message);
280
+ },
281
+ resendMessage: function () {
282
+ setContextMenu(false);
283
+ resendMessage(message);
284
+ }
285
+ }));
263
286
  }
264
287
 
265
288
  module.exports = OpenchannelUserMessage;
@@ -1 +1 @@
1
- {"version":3,"file":"OpenchannelUserMessage.js","sources":["../../../src/ui/OpenchannelUserMessage/index.tsx"],"sourcesContent":["import React, {\n useMemo,\n useContext,\n useRef,\n useState,\n ReactElement,\n useEffect,\n} from 'react';\nimport { UserMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\nimport './index.scss';\n\nimport Avatar from '../Avatar';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport IconButton from '../IconButton';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\n\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport { copyToClipboard } from './utils';\nimport uuidv4 from '../../utils/uuid';\nimport {\n checkIsPending,\n checkIsFailed,\n isFineCopy,\n isFineEdit,\n isFineResend,\n isFineDelete,\n showMenuTrigger,\n} from '../../utils/openChannelUtils';\nimport { getSenderFromMessage } from '../../utils/openChannelUtils';\n\ninterface Props {\n className?: string | Array<string>;\n message: UserMessage;\n isOperator?: boolean;\n userId: string;\n disabled?: boolean;\n showEdit(bool: boolean): void;\n showRemove(bool: boolean): void;\n resendMessage(message: UserMessage): void;\n chainTop?: boolean;\n chainBottom?: boolean;\n}\n\nexport default function OpenchannelUserMessage({\n className,\n message,\n isOperator,\n userId,\n resendMessage,\n disabled,\n showEdit,\n showRemove,\n chainTop,\n}: Props): ReactElement {\n if (!message || message.messageType !== 'user') {\n return null;\n }\n\n // hooks\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext(UserProfileContext);\n const messageRef = useRef(null);\n const avatarRef = useRef(null);\n const contextMenuRef = useRef(null);\n const [contextStyle, setContextStyle] = useState({});\n\n // consts\n const status = message?.sendingStatus;\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n const MemoizedMessageText = useMemo(() => () => {\n const splitMessage = message.message.split(/\\r/);\n const matchedMessage = splitMessage.map((word) => (word !== '' ? word : <br />));\n if (message.updatedAt > 0) {\n matchedMessage.push(\n <Label\n key={uuidv4()}\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n calssName=\"sendbird-openchannel-user-message-word\"\n >\n {` ${stringSet.MESSAGE_EDITED} `}\n </Label>,\n );\n }\n return matchedMessage;\n }, [message, message.updatedAt]);\n\n // place context menu top depending clientHeight of message component\n useEffect(() => {\n if (messageRef?.current?.clientHeight > 36) {\n setContextStyle({ top: '8px ' });\n } else {\n setContextStyle({ top: '2px' });\n }\n }, [window.innerWidth]);\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-openchannel-user-message',\n ].join(' ')}\n ref={messageRef}\n >\n <div className=\"sendbird-openchannel-user-message__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-user-message__left__avatar\"\n src={sender.profileUrl || ''}\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: 0, paddingBottom: 0 }}\n >\n {\n renderUserProfile\n ? (\n renderUserProfile({\n user: sender,\n close: closeDropdown,\n })\n )\n : (\n <UserProfile\n user={sender}\n onSuccess={closeDropdown}\n disableMessaging\n />\n )\n }\n </MenuItems>\n )}\n />\n )\n }\n </div>\n <div className=\"sendbird-openchannel-user-message__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-user-message__right__top\">\n <Label\n className=\"sendbird-openchannel-user-message__right__top__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={isOperator ? LabelColors.SECONDARY_3 : LabelColors.ONBACKGROUND_2}\n >\n {\n sender && (\n sender.friendName\n || sender.nickname\n || sender.userId\n )\n }\n </Label>\n <Label\n className=\"sendbird-openchannel-user-message__right__top__sent-at\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_3}\n >\n {\n message?.createdAt && (\n format(message?.createdAt, 'p', {\n locale: dateLocale,\n })\n )\n }\n </Label>\n </div>\n )\n }\n <div className=\"sendbird-openchannel-user-message__right__bottom\">\n <Label\n className=\"sendbird-openchannel-user-message__right__bottom__message\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {MemoizedMessageText()}\n </Label>\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-user-message__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-user-message__right__tail__pending\"\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n )\n }\n {\n isFailed && (\n <Icon\n className=\"sendbird-openchannel-user-message__right__tail__failed\"\n type={IconTypes.ERROR}\n fillColor={IconColors.ERROR}\n width=\"16px\"\n height=\"16px\"\n />\n )\n }\n </div>\n )\n }\n </div>\n {\n <div\n className=\"sendbird-openchannel-user-message__context-menu\"\n ref={contextMenuRef}\n style={contextStyle}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n showMenuTrigger({ message: message, userId: userId, status: status}) && (\n <IconButton\n className=\"sendbird-openchannel-user-message__context-menu--icon\"\n width=\"32px\"\n height=\"32px\"\n onClick={() => {\n toggleDropdown();\n }}\n >\n <Icon\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={contextMenuRef}\n parentContainRef={contextMenuRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n {\n isFineCopy({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__copy\"\n onClick={() => {\n copyToClipboard(message.message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__COPY}\n </MenuItem>\n )\n }\n {\n isFineEdit({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__edit\"\n onClick={() => {\n if (disabled) {\n return;\n }\n showEdit(true);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__EDIT}\n </MenuItem>\n )\n }\n {\n isFineResend({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__resend\"\n onClick={() => {\n resendMessage(message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__RESEND}\n </MenuItem>\n )\n }\n {\n isFineDelete({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__delete\"\n onClick={() => {\n if (disabled) {\n return;\n }\n showRemove(true);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__DELETE}\n </MenuItem>\n )\n }\n </MenuItems>\n )}\n />\n </div>\n }\n </div>\n );\n}\n"],"names":["OpenchannelUserMessage","_a","className","message","isOperator","userId","resendMessage","disabled","showEdit","showRemove","chainTop","messageType","_b","useLocalization","stringSet","dateLocale","_c","useContext","UserProfileContext","disableUserProfile","renderUserProfile","messageRef","useRef","avatarRef","contextMenuRef","_d","useState","contextStyle","setContextStyle","status","sendingStatus","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","MemoizedMessageText","useMemo","splitMessage","split","matchedMessage","map","word","React","updatedAt","push","Label","uuidv4","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_2","concat","MESSAGE_EDITED","useEffect","current","clientHeight","top","window","innerWidth","__spreadArray","Array","isArray","join","ContextMenu","toggleDropdown","Avatar","profileUrl","closeDropdown","MenuItems","paddingTop","paddingBottom","user","close","UserProfile","CAPTION_2","SECONDARY_3","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","ONBACKGROUND_1","Loader","Icon","IconTypes","SPINNER","IconColors","PRIMARY","ERROR","showMenuTrigger","IconButton","MORE","CONTENT_INVERSE","isFineCopy","MenuItem","copyToClipboard","CONTEXT_MENU_DROPDOWN__COPY","isFineEdit","CONTEXT_MENU_DROPDOWN__EDIT","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":"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"}
1
+ {"version":3,"file":"OpenchannelUserMessage.js","sources":["../../../src/ui/OpenchannelUserMessage/index.tsx"],"sourcesContent":["import React, {\n useContext,\n useRef,\n useState,\n ReactElement,\n useEffect,\n} from 'react';\nimport { UserMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\nimport './index.scss';\n\nimport Avatar from '../Avatar';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport IconButton from '../IconButton';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\n\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport { copyToClipboard } from './utils';\nimport uuidv4 from '../../utils/uuid';\nimport {\n checkIsPending,\n checkIsFailed,\n isFineCopy,\n isFineEdit,\n isFineResend,\n isFineDelete,\n showMenuTrigger,\n} from '../../utils/openChannelUtils';\nimport { getSenderFromMessage } from '../../utils/openChannelUtils';\nimport { useMediaQueryContext } from '../../lib/MediaQueryContext';\nimport OpenChannelMobileMenu from '../OpenChannelMobileMenu';\nimport useLongPress from '../../hooks/useLongPress';\nimport { isEditedMessage } from '../../utils';\n\ninterface Props {\n className?: string | Array<string>;\n message: UserMessage;\n isOperator?: boolean;\n userId: string;\n disabled?: boolean;\n showEdit(bool: boolean): void;\n showRemove(bool: boolean): void;\n resendMessage(message: UserMessage): void;\n chainTop?: boolean;\n chainBottom?: boolean;\n}\n\nexport default function OpenchannelUserMessage({\n className,\n message,\n isOperator,\n userId,\n resendMessage,\n disabled,\n showEdit,\n showRemove,\n chainTop,\n}: Props): ReactElement {\n if (!message || message.messageType !== 'user') {\n return null;\n }\n\n // hooks\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext<UserProfileContext>(UserProfileContext);\n const messageRef = useRef(null);\n const avatarRef = useRef(null);\n const contextMenuRef = useRef(null);\n const mobileMenuRef = useRef(null);\n const [contextStyle, setContextStyle] = useState({});\n const [contextMenu, setContextMenu] = useState(false);\n\n // consts\n const status = message?.sendingStatus;\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n // place context menu top depending clientHeight of message component\n useEffect(() => {\n if (messageRef?.current?.clientHeight > 36) {\n setContextStyle({ top: '8px ' });\n } else {\n setContextStyle({ top: '2px' });\n }\n }, [window.innerWidth]);\n\n const onLongPress = useLongPress({\n onLongPress: () => {\n setContextMenu(true);\n }\n });\n\n const { isMobile } = useMediaQueryContext();\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-openchannel-user-message',\n ].join(' ')}\n ref={messageRef}\n >\n <div className=\"sendbird-openchannel-user-message__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-user-message__left__avatar\"\n src={sender.profileUrl || ''}\n ref={avatarRef}\n width=\"28px\"\n height=\"28px\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={avatarRef}\n parentContainRef={avatarRef}\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {\n renderUserProfile\n ? (\n renderUserProfile({\n user: sender,\n close: closeDropdown,\n })\n )\n : (\n <UserProfile\n user={sender}\n onSuccess={closeDropdown}\n disableMessaging\n />\n )\n }\n </MenuItems>\n )}\n />\n )\n }\n </div>\n <div className=\"sendbird-openchannel-user-message__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-user-message__right__top\">\n <Label\n className=\"sendbird-openchannel-user-message__right__top__sender-name\"\n type={LabelTypography.CAPTION_2}\n color={isOperator ? LabelColors.SECONDARY_3 : LabelColors.ONBACKGROUND_2}\n >\n {\n sender && (\n sender.friendName\n || sender.nickname\n || sender.userId\n )\n }\n </Label>\n <Label\n className=\"sendbird-openchannel-user-message__right__top__sent-at\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_3}\n >\n {\n message?.createdAt && (\n format(message?.createdAt, 'p', {\n locale: dateLocale,\n })\n )\n }\n </Label>\n </div>\n )\n }\n <div\n {...(isMobile ? { ...onLongPress } : {})}\n className=\"sendbird-openchannel-user-message__right__bottom\" ref={mobileMenuRef}>\n <Label\n className=\"sendbird-openchannel-user-message__right__bottom__message\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {message?.message}\n {isEditedMessage(message) && (\n <Label\n key={uuidv4()}\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n calssName=\"sendbird-openchannel-user-message-word\"\n >\n {` ${stringSet.MESSAGE_EDITED} `}\n </Label>\n )}\n </Label>\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-user-message__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-user-message__right__tail__pending\"\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n )\n }\n {\n isFailed && (\n <Icon\n className=\"sendbird-openchannel-user-message__right__tail__failed\"\n type={IconTypes.ERROR}\n fillColor={IconColors.ERROR}\n width=\"16px\"\n height=\"16px\"\n />\n )\n }\n </div>\n )\n }\n </div>\n {\n !isMobile && (\n <div\n className=\"sendbird-openchannel-user-message__context-menu\"\n ref={contextMenuRef}\n style={contextStyle}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n showMenuTrigger({ message: message, userId: userId, status: status }) && (\n <IconButton\n className=\"sendbird-openchannel-user-message__context-menu--icon\"\n width=\"32px\"\n height=\"32px\"\n onClick={() => {\n toggleDropdown();\n }}\n >\n <Icon\n type={IconTypes.MORE}\n fillColor={IconColors.CONTENT_INVERSE}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n parentRef={contextMenuRef}\n parentContainRef={contextMenuRef}\n closeDropdown={closeDropdown}\n openLeft\n >\n {\n isFineCopy({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__copy\"\n onClick={() => {\n copyToClipboard(message.message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__COPY}\n </MenuItem>\n )\n }\n {\n isFineEdit({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__edit\"\n onClick={() => {\n if (disabled) {\n return;\n }\n showEdit(true);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__EDIT}\n </MenuItem>\n )\n }\n {\n isFineResend({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__resend\"\n onClick={() => {\n resendMessage(message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__RESEND}\n </MenuItem>\n )\n }\n {\n isFineDelete({ message: message, userId: userId, status: status }) && (\n <MenuItem\n className=\"sendbird-openchannel-user-message__context-menu__delete\"\n onClick={() => {\n if (disabled) {\n return;\n }\n showRemove(true);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__DELETE}\n </MenuItem>\n )\n }\n </MenuItems>\n )}\n />\n </div>\n\n )\n }\n {\n contextMenu && (\n <OpenChannelMobileMenu\n message={message}\n parentRef={mobileMenuRef}\n hideMenu={() => {\n setContextMenu(false);\n }}\n showRemove={() => {\n setContextMenu(false);\n showRemove(true);\n }}\n showEdit={() => {\n setContextMenu(false);\n showEdit(true);\n }}\n copyToClipboard={() => {\n setContextMenu(false);\n copyToClipboard(message?.message);\n }}\n resendMessage={() => {\n setContextMenu(false);\n resendMessage(message);\n }}\n />\n )\n }\n </div>\n );\n}\n"],"names":["OpenchannelUserMessage","_a","className","message","isOperator","userId","resendMessage","disabled","showEdit","showRemove","chainTop","messageType","_b","useLocalization","stringSet","dateLocale","_c","useContext","UserProfileContext","disableUserProfile","renderUserProfile","messageRef","useRef","avatarRef","contextMenuRef","mobileMenuRef","_d","useState","contextStyle","setContextStyle","_e","contextMenu","setContextMenu","status","sendingStatus","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","useEffect","current","clientHeight","top","window","innerWidth","onLongPress","useLongPress","isMobile","useMediaQueryContext","React","__spreadArray","Array","isArray","join","ContextMenu","toggleDropdown","Avatar","profileUrl","closeDropdown","MenuItems","paddingTop","paddingBottom","user","close","UserProfile","Label","LabelTypography","CAPTION_2","LabelColors","SECONDARY_3","ONBACKGROUND_2","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","__assign","BODY_1","ONBACKGROUND_1","isEditedMessage","uuidv4","concat","MESSAGE_EDITED","Loader","Icon","IconTypes","SPINNER","IconColors","PRIMARY","ERROR","showMenuTrigger","IconButton","MORE","CONTENT_INVERSE","isFineCopy","MenuItem","copyToClipboard","CONTEXT_MENU_DROPDOWN__COPY","isFineEdit","CONTEXT_MENU_DROPDOWN__EDIT","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE","OpenChannelMobileMenu"],"mappings":"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"}
@@ -2,15 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../tslib.es6-062eb722.js');
5
+ require('../tslib.es6-ce6b9cf9.js');
6
6
  require('react');
7
- var ui_PlaceHolder = require('../index-259776b5.js');
8
- require('../LocalizationContext-5447c898.js');
7
+ var ui_PlaceHolder = require('../index-8d7bc2cf.js');
8
+ require('../LocalizationContext-2a1cb44b.js');
9
9
  require('./Icon.js');
10
- require('../index-ec6e34c8.js');
10
+ require('../index-6c759d44.js');
11
11
  require('./Loader.js');
12
- require('../stringSet-7509e1fb.js');
13
- require('../index-63513959.js');
12
+ require('../stringSet-b531455a.js');
13
+ require('../index-5ce5b5ef.js');
14
14
  require('prop-types');
15
15
 
16
16
 
@@ -2,14 +2,14 @@
2
2
 
3
3
  var React = require('react');
4
4
  var ui_Icon = require('./Icon.js');
5
- var ui_Label = require('../index-ec6e34c8.js');
5
+ var ui_Label = require('../index-6c759d44.js');
6
6
  var ui_ImageRenderer = require('./ImageRenderer.js');
7
- var LocalizationContext = require('../LocalizationContext-5447c898.js');
8
- var index = require('../index-1e4f968c.js');
7
+ var LocalizationContext = require('../LocalizationContext-2a1cb44b.js');
8
+ var index = require('../index-f42aafcc.js');
9
9
  require('prop-types');
10
- require('../stringSet-7509e1fb.js');
11
- require('../tslib.es6-062eb722.js');
12
- require('../index-63513959.js');
10
+ require('../stringSet-b531455a.js');
11
+ require('../tslib.es6-ce6b9cf9.js');
12
+ require('../index-5ce5b5ef.js');
13
13
  require('../utils/message/getOutgoingMessageState.js');
14
14
 
15
15
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -47,6 +47,9 @@ function QuoteMessage(_a) {
47
47
  key: parentMessage === null || parentMessage === void 0 ? void 0 : parentMessage.messageId,
48
48
  onClick: function () {
49
49
  if (onClick) onClick();
50
+ },
51
+ onTouchEnd: function () {
52
+ if (onClick) onClick();
50
53
  }
51
54
  }, /*#__PURE__*/React__default["default"].createElement("div", {
52
55
  className: "sendbird-quote-message__replied-to"
@@ -1 +1 @@
1
- {"version":3,"file":"QuoteMessage.js","sources":["../../../src/ui/QuoteMessage/index.tsx"],"sourcesContent":["import './index.scss';\nimport React, { ReactElement, useContext, useState } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport ImageRenderer from '../ImageRenderer';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport {\n getClassName,\n getUIKitFileType,\n getUIKitFileTypes,\n isFileMessage,\n isGif,\n isSupportedFileView,\n isThumbnailMessage,\n isUserMessage,\n isVideo,\n truncateString,\n} from '../../utils';\ninterface Props {\n message?: UserMessage | FileMessage;\n userId?: string;\n isByMe?: boolean;\n className?: string | Array<string>;\n onClick?: () => void;\n}\n\nexport default function QuoteMessage({\n message,\n userId = '',\n isByMe = false,\n className,\n onClick,\n}: Props): ReactElement {\n const { stringSet } = useContext(LocalizationContext);\n\n const { parentMessage } = message;\n const parentMessageSender = (parentMessage as UserMessage | FileMessage)?.sender;\n const parentMessageSenderNickname = (userId === parentMessageSender?.userId) ? stringSet.QUOTED_MESSAGE__CURRENT_USER : parentMessageSender?.nickname;\n const parentMessageUrl = (parentMessage as FileMessage)?.url || '';\n const parentMessageType = (parentMessage as FileMessage)?.type;\n const currentMessageSenderNickname = (userId === message?.sender?.userId) ? stringSet.QUOTED_MESSAGE__CURRENT_USER : message?.sender?.nickname;\n\n const [isThumbnailLoaded, setThumbnailLoaded] = useState(false);\n const uikitFileTypes = getUIKitFileTypes();\n const splitFileName = (parentMessage as FileMessage)?.name ? (parentMessage as FileMessage).name.split('/') : parentMessageUrl.split('/');\n\n return (\n <div\n className={getClassName([className, 'sendbird-quote-message', isByMe ? 'outgoing' : 'incoming'])}\n key={parentMessage?.messageId}\n onClick={() => { if (onClick) onClick() }}\n >\n <div className=\"sendbird-quote-message__replied-to\">\n <Icon\n className=\"sendbird-quote-message__replied-to__icon\"\n type={IconTypes.REPLY}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"12px\"\n height=\"12px\"\n />\n <Label\n className=\"sendbird-quote-message__replied-to__text\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${currentMessageSenderNickname} ${stringSet.QUOTED_MESSAGE__REPLIED_TO} ${parentMessageSenderNickname}`}\n </Label>\n </div>\n <div className=\"sendbird-quote-message__replied-message\">\n {/* text message */}\n {(isUserMessage(parentMessage as UserMessage) && (parentMessage as UserMessage)?.message?.length > 0) && (\n <div className=\"sendbird-quote-message__replied-message__text-message\">\n <Label\n className=\"sendbird-quote-message__replied-message__text-message__word\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {(parentMessage as UserMessage)?.message}\n </Label>\n </div>\n )}\n {/* thumbnail message */}\n {(isThumbnailMessage(parentMessage as FileMessage) && parentMessageUrl) && (\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message\">\n <ImageRenderer\n className=\"sendbird-quote-message__replied-message__thumbnail-message__image\"\n url={parentMessageUrl}\n alt={parentMessageType}\n width=\"144px\"\n height=\"108px\"\n onLoad={() => setThumbnailLoaded(true)}\n defaultComponent={(\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__placeholder\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__placeholder__icon\">\n <Icon\n type={isVideo(parentMessageType) ? IconTypes.PLAY : IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"22px\"\n height=\"22px\"\n />\n </div>\n </div>\n )}\n />\n {(isVideo(parentMessageType) && !((parentMessage as FileMessage)?.thumbnails?.length > 0)) && (\n <>\n <video className=\"sendbird-quote-message__replied-message__thumbnail-message__video\">\n <source src={parentMessageUrl} type={parentMessageType} />\n </video>\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover__icon\">\n <Icon\n type={IconTypes.PLAY}\n fillColor={IconColors.GRAY}\n width=\"14px\"\n height=\"14px\"\n />\n </div>\n </div>\n </>\n )}\n {(isThumbnailLoaded && isGif(parentMessageType)) && (\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover__icon\">\n <Icon\n type={IconTypes.GIF}\n fillColor={IconColors.GRAY}\n width=\"14px\"\n height=\"14px\"\n />\n </div>\n </div>\n )}\n </div>\n )}\n {/* file message */}\n {(isFileMessage(parentMessage as FileMessage) && !isSupportedFileView((parentMessage as FileMessage).type) && parentMessageUrl) && (\n <div className=\"sendbird-quote-message__replied-message__file-message\">\n <Icon\n className=\"sendbird-quote-message__replied-message__file-message__type-icon\"\n type={{\n [uikitFileTypes.IMAGE]: IconTypes.PHOTO,\n [uikitFileTypes.VIDEO]: IconTypes.PLAY,\n [uikitFileTypes.AUDIO]: IconTypes.FILE_AUDIO,\n [uikitFileTypes.GIF]: IconTypes.GIF,\n [uikitFileTypes.OTHERS]: IconTypes.FILE_DOCUMENT,\n }[getUIKitFileType(parentMessageType)]}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"16px\"\n height=\"16px\"\n />\n <Label\n className=\"sendbird-quote-message__replied-message__file-message__file-name\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {truncateString(splitFileName[splitFileName.length - 1])}\n </Label>\n </div>\n )}\n </div>\n </div>\n );\n}\n"],"names":["QuoteMessage","_a","message","_g","userId","_h","isByMe","className","onClick","stringSet","useContext","LocalizationContext","parentMessage","parentMessageSender","sender","parentMessageSenderNickname","QUOTED_MESSAGE__CURRENT_USER","nickname","parentMessageUrl","url","parentMessageType","type","currentMessageSenderNickname","_c","_d","_j","useState","isThumbnailLoaded","setThumbnailLoaded","uikitFileTypes","getUIKitFileTypes","splitFileName","name","split","React","getClassName","messageId","Icon","IconTypes","REPLY","IconColors","ON_BACKGROUND_3","Label","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_3","concat","QUOTED_MESSAGE__REPLIED_TO","isUserMessage","_e","length","BODY_2","ONBACKGROUND_1","isThumbnailMessage","ImageRenderer","isVideo","PLAY","PHOTO","ON_BACKGROUND_2","_f","thumbnails","GRAY","isGif","GIF","isFileMessage","isSupportedFileView","_b","IMAGE","VIDEO","AUDIO","FILE_AUDIO","OTHERS","FILE_DOCUMENT","getUIKitFileType","truncateString"],"mappings":"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"}
1
+ {"version":3,"file":"QuoteMessage.js","sources":["../../../src/ui/QuoteMessage/index.tsx"],"sourcesContent":["import './index.scss';\nimport React, { ReactElement, useContext, useState } from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport ImageRenderer from '../ImageRenderer';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport {\n getClassName,\n getUIKitFileType,\n getUIKitFileTypes,\n isFileMessage,\n isGif,\n isSupportedFileView,\n isThumbnailMessage,\n isUserMessage,\n isVideo,\n truncateString,\n} from '../../utils';\ninterface Props {\n message?: UserMessage | FileMessage;\n userId?: string;\n isByMe?: boolean;\n className?: string | Array<string>;\n onClick?: () => void;\n}\n\nexport default function QuoteMessage({\n message,\n userId = '',\n isByMe = false,\n className,\n onClick,\n}: Props): ReactElement {\n const { stringSet } = useContext(LocalizationContext);\n\n const { parentMessage } = message;\n const parentMessageSender = (parentMessage as UserMessage | FileMessage)?.sender;\n const parentMessageSenderNickname = (userId === parentMessageSender?.userId) ? stringSet.QUOTED_MESSAGE__CURRENT_USER : parentMessageSender?.nickname;\n const parentMessageUrl = (parentMessage as FileMessage)?.url || '';\n const parentMessageType = (parentMessage as FileMessage)?.type;\n const currentMessageSenderNickname = (userId === message?.sender?.userId) ? stringSet.QUOTED_MESSAGE__CURRENT_USER : message?.sender?.nickname;\n\n const [isThumbnailLoaded, setThumbnailLoaded] = useState(false);\n const uikitFileTypes = getUIKitFileTypes();\n const splitFileName = (parentMessage as FileMessage)?.name ? (parentMessage as FileMessage).name.split('/') : parentMessageUrl.split('/');\n\n return (\n <div\n className={getClassName([className, 'sendbird-quote-message', isByMe ? 'outgoing' : 'incoming'])}\n key={parentMessage?.messageId}\n onClick={() => { if (onClick) onClick() }}\n onTouchEnd={() => { if (onClick) onClick() }}\n >\n <div className=\"sendbird-quote-message__replied-to\">\n <Icon\n className=\"sendbird-quote-message__replied-to__icon\"\n type={IconTypes.REPLY}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"12px\"\n height=\"12px\"\n />\n <Label\n className=\"sendbird-quote-message__replied-to__text\"\n type={LabelTypography.CAPTION_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${currentMessageSenderNickname} ${stringSet.QUOTED_MESSAGE__REPLIED_TO} ${parentMessageSenderNickname}`}\n </Label>\n </div>\n <div className=\"sendbird-quote-message__replied-message\">\n {/* text message */}\n {(isUserMessage(parentMessage as UserMessage) && (parentMessage as UserMessage)?.message?.length > 0) && (\n <div className=\"sendbird-quote-message__replied-message__text-message\">\n <Label\n className=\"sendbird-quote-message__replied-message__text-message__word\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {(parentMessage as UserMessage)?.message}\n </Label>\n </div>\n )}\n {/* thumbnail message */}\n {(isThumbnailMessage(parentMessage as FileMessage) && parentMessageUrl) && (\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message\">\n <ImageRenderer\n className=\"sendbird-quote-message__replied-message__thumbnail-message__image\"\n url={parentMessageUrl}\n alt={parentMessageType}\n width=\"144px\"\n height=\"108px\"\n onLoad={() => setThumbnailLoaded(true)}\n defaultComponent={(\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__placeholder\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__placeholder__icon\">\n <Icon\n type={isVideo(parentMessageType) ? IconTypes.PLAY : IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"22px\"\n height=\"22px\"\n />\n </div>\n </div>\n )}\n />\n {(isVideo(parentMessageType) && !((parentMessage as FileMessage)?.thumbnails?.length > 0)) && (\n <>\n <video className=\"sendbird-quote-message__replied-message__thumbnail-message__video\">\n <source src={parentMessageUrl} type={parentMessageType} />\n </video>\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover__icon\">\n <Icon\n type={IconTypes.PLAY}\n fillColor={IconColors.GRAY}\n width=\"14px\"\n height=\"14px\"\n />\n </div>\n </div>\n </>\n )}\n {(isThumbnailLoaded && isGif(parentMessageType)) && (\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover\">\n <div className=\"sendbird-quote-message__replied-message__thumbnail-message__cover__icon\">\n <Icon\n type={IconTypes.GIF}\n fillColor={IconColors.GRAY}\n width=\"14px\"\n height=\"14px\"\n />\n </div>\n </div>\n )}\n </div>\n )}\n {/* file message */}\n {(isFileMessage(parentMessage as FileMessage) && !isSupportedFileView((parentMessage as FileMessage).type) && parentMessageUrl) && (\n <div className=\"sendbird-quote-message__replied-message__file-message\">\n <Icon\n className=\"sendbird-quote-message__replied-message__file-message__type-icon\"\n type={{\n [uikitFileTypes.IMAGE]: IconTypes.PHOTO,\n [uikitFileTypes.VIDEO]: IconTypes.PLAY,\n [uikitFileTypes.AUDIO]: IconTypes.FILE_AUDIO,\n [uikitFileTypes.GIF]: IconTypes.GIF,\n [uikitFileTypes.OTHERS]: IconTypes.FILE_DOCUMENT,\n }[getUIKitFileType(parentMessageType)]}\n fillColor={IconColors.ON_BACKGROUND_3}\n width=\"16px\"\n height=\"16px\"\n />\n <Label\n className=\"sendbird-quote-message__replied-message__file-message__file-name\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_3}\n >\n {truncateString(splitFileName[splitFileName.length - 1])}\n </Label>\n </div>\n )}\n </div>\n </div>\n );\n}\n"],"names":["QuoteMessage","_a","message","_g","userId","_h","isByMe","className","onClick","stringSet","useContext","LocalizationContext","parentMessage","parentMessageSender","sender","parentMessageSenderNickname","QUOTED_MESSAGE__CURRENT_USER","nickname","parentMessageUrl","url","parentMessageType","type","currentMessageSenderNickname","_c","_d","_j","useState","isThumbnailLoaded","setThumbnailLoaded","uikitFileTypes","getUIKitFileTypes","splitFileName","name","split","React","getClassName","messageId","Icon","IconTypes","REPLY","IconColors","ON_BACKGROUND_3","Label","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_3","concat","QUOTED_MESSAGE__REPLIED_TO","isUserMessage","_e","length","BODY_2","ONBACKGROUND_1","isThumbnailMessage","ImageRenderer","isVideo","PLAY","PHOTO","ON_BACKGROUND_2","_f","thumbnails","GRAY","isGif","GIF","isFileMessage","isSupportedFileView","_b","IMAGE","VIDEO","AUDIO","FILE_AUDIO","OTHERS","FILE_DOCUMENT","getUIKitFileType","truncateString"],"mappings":"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"}
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var index = require('../index-1e4f968c.js');
4
+ var index = require('../index-f42aafcc.js');
5
5
  var ui_Icon = require('./Icon.js');
6
- var ui_Label = require('../index-ec6e34c8.js');
7
- var LocalizationContext = require('../LocalizationContext-5447c898.js');
6
+ var ui_Label = require('../index-6c759d44.js');
7
+ var LocalizationContext = require('../LocalizationContext-2a1cb44b.js');
8
8
  var ui_ImageRenderer = require('./ImageRenderer.js');
9
- require('../tslib.es6-062eb722.js');
9
+ require('../tslib.es6-ce6b9cf9.js');
10
10
  require('../utils/message/getOutgoingMessageState.js');
11
11
  require('prop-types');
12
- require('../stringSet-7509e1fb.js');
13
- require('../index-63513959.js');
12
+ require('../stringSet-b531455a.js');
13
+ require('../index-5ce5b5ef.js');
14
14
 
15
15
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
16
 
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../tslib.es6-062eb722.js');
3
+ var tslib_es6 = require('../tslib.es6-ce6b9cf9.js');
4
4
  var React = require('react');
5
- var ui_Label = require('../index-ec6e34c8.js');
5
+ var ui_Label = require('../index-6c759d44.js');
6
6
  require('prop-types');
7
- require('../stringSet-7509e1fb.js');
7
+ require('../stringSet-b531455a.js');
8
8
 
9
9
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
10
 
@@ -41,6 +41,7 @@ var ReactionBadge = /*#__PURE__*/React__default["default"].forwardRef(function (
41
41
  ref: ref,
42
42
  onClick: onClick,
43
43
  onKeyDown: onClick,
44
+ onTouchEnd: onClick,
44
45
  tabIndex: 0
45
46
  }, /*#__PURE__*/React__default["default"].createElement("div", {
46
47
  className: "sendbird-reaction-badge__inner"
@@ -1 +1 @@
1
- {"version":3,"file":"ReactionBadge.js","sources":["../../../src/ui/ReactionBadge/index.tsx"],"sourcesContent":["import React, { KeyboardEvent, MouseEvent, ReactElement, RefObject } from 'react';\n\nimport './index.scss';\n\nimport Label, { LabelTypography, LabelColors } from '../Label';\n\nexport interface ReactionBadgeProps {\n className?: string | Array<string>;\n children: ReactElement;\n count?: number | string;\n isAdd?: boolean;\n selected?: boolean;\n onClick?: (e: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement>) => void;\n}\nconst ReactionBadge = React.forwardRef((props: ReactionBadgeProps, ref: RefObject<HTMLDivElement>): ReactElement => {\n const {\n className = '',\n children,\n count = '',\n isAdd = false,\n selected = false,\n onClick = () => {/* noop */},\n } = props;\n\n const getClassNameTail = (): string => {\n if (selected && !isAdd) {\n return '--selected';\n }\n if (isAdd) {\n return '--is-add';\n }\n return '';\n };\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n `sendbird-reaction-badge${getClassNameTail()}`,\n ].join(' ')}\n role=\"button\"\n ref={ref}\n onClick={onClick}\n onKeyDown={onClick}\n tabIndex={0}\n >\n <div className=\"sendbird-reaction-badge__inner\">\n <div className=\"sendbird-reaction-badge__inner__icon\">\n {children}\n </div>\n <Label\n className={(children && count) && 'sendbird-reaction-badge__inner__count'}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_1}\n >\n {count}\n </Label>\n </div>\n </div>\n );\n});\n\nexport default ReactionBadge;\n"],"names":["ReactionBadge","React","forwardRef","props","ref","_a","className","children","_b","count","_c","isAdd","_d","selected","_e","onClick","getClassNameTail","__spreadArray","Array","isArray","concat","join","Label","LabelTypography","CAPTION_3","LabelColors","ONBACKGROUND_1"],"mappings":";;;;;;;;;;;;AAcMA,IAAAA,aAAa,gBAAGC,yBAAK,CAACC,UAAN,CAAiB,UAACC,KAAD,EAA4BC,GAA5B,EAA0D;AAE7F,EAAA,IAAAC,EAAA,GAMEF,KAAK,CANOG,SAAd;MAAAA,SAAS,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAEA,EAAd;AAAA,MACAE,QAAQ,GAKNJ,KAAK,CALCI,QADR;AAAA,MAEAC,EAIE,GAAAL,KAAK,CAJGM,KAFV;MAEAA,KAAK,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAEA,EAFV;AAAA,MAGAE,EAGE,GAAAP,KAAK,MANP;MAGAQ,KAAK,mBAAG,QAAKD,EAHb;AAAA,MAIAE,EAEE,GAAAT,KAAK,CAFSU,QAJhB;MAIAA,QAAQ,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQA,EAJhB;AAAA,MAKAE,EACE,GAAAX,KAAK,CADqBY,OAL5B;MAKAA,OAAO,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,YAAA,EAAA,GAAkBA,EAL5B,CAAA;;EAQF,IAAME,gBAAgB,GAAG,YAAA;AACvB,IAAA,IAAIH,QAAQ,IAAI,CAACF,KAAjB,EAAwB;AACtB,MAAA,OAAO,YAAP,CAAA;AACD,KAAA;;AACD,IAAA,IAAIA,KAAJ,EAAW;AACT,MAAA,OAAO,UAAP,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,EAAP,CAAA;GAPF,CAAA;;EAUA,oBACEV,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEgB,uBAAA,CAAAA,uBAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAcb,SAAd,CAAA,GAA2BA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,yBAA0Bc,CAAAA,MAA1B,CAA0BJ,gBAAgB,EAA1C,CADuD,CAD9C,EAGT,KAHS,CAAA,CAGTK,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,IAAI,EAAC,QALP;AAME,IAAA,GAAG,EAAEjB,GANP;AAOE,IAAA,OAAO,EAAEW,OAPX;AAQE,IAAA,SAAS,EAAEA,OARb;AASE,IAAA,QAAQ,EAAE,CAAA;GAEV,eAAAd,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,gCAAA;GACb,eAAAA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,sCAAA;AAAf,GAAA,EACGM,QADH,CADF,eAIEN,yBAAA,CAAA,aAAA,CAACqB,cAAD,EAAA;AACE,IAAA,SAAS,EAAGf,QAAQ,IAAIE,KAAb,IAAuB,uCADpC;IAEE,IAAI,EAAEc,wBAAe,CAACC,SAFxB;IAGE,KAAK,EAAEC,oBAAW,CAACC,cAAAA;GAElBjB,EAAAA,KALH,CAJF,CAXF,CADF,CAAA;AA0BD,CA9CqB;;;;"}
1
+ {"version":3,"file":"ReactionBadge.js","sources":["../../../src/ui/ReactionBadge/index.tsx"],"sourcesContent":["import React, {\n KeyboardEvent,\n MouseEvent,\n ReactElement,\n RefObject,\n TouchEvent,\n} from 'react';\n\nimport './index.scss';\n\nimport Label, { LabelTypography, LabelColors } from '../Label';\n\nexport interface ReactionBadgeProps {\n className?: string | Array<string>;\n children: ReactElement;\n count?: number | string;\n isAdd?: boolean;\n selected?: boolean;\n onClick?: (\n e: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement> | TouchEvent<HTMLDivElement>\n ) => void;\n}\nconst ReactionBadge = React.forwardRef((props: ReactionBadgeProps, ref: RefObject<HTMLDivElement>): ReactElement => {\n const {\n className = '',\n children,\n count = '',\n isAdd = false,\n selected = false,\n onClick = () => {/* noop */},\n } = props;\n\n const getClassNameTail = (): string => {\n if (selected && !isAdd) {\n return '--selected';\n }\n if (isAdd) {\n return '--is-add';\n }\n return '';\n };\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n `sendbird-reaction-badge${getClassNameTail()}`,\n ].join(' ')}\n role=\"button\"\n ref={ref}\n onClick={onClick}\n onKeyDown={onClick}\n onTouchEnd={onClick}\n tabIndex={0}\n >\n <div className=\"sendbird-reaction-badge__inner\">\n <div className=\"sendbird-reaction-badge__inner__icon\">\n {children}\n </div>\n <Label\n className={(children && count) && 'sendbird-reaction-badge__inner__count'}\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_1}\n >\n {count}\n </Label>\n </div>\n </div>\n );\n});\n\nexport default ReactionBadge;\n"],"names":["ReactionBadge","React","forwardRef","props","ref","_a","className","children","_b","count","_c","isAdd","_d","selected","_e","onClick","getClassNameTail","__spreadArray","Array","isArray","concat","join","Label","LabelTypography","CAPTION_3","LabelColors","ONBACKGROUND_1"],"mappings":";;;;;;;;;;;;AAsBMA,IAAAA,aAAa,gBAAGC,yBAAK,CAACC,UAAN,CAAiB,UAACC,KAAD,EAA4BC,GAA5B,EAA0D;AAE7F,EAAA,IAAAC,EAAA,GAMEF,KAAK,CANOG,SAAd;MAAAA,SAAS,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAEA,EAAd;AAAA,MACAE,QAAQ,GAKNJ,KAAK,CALCI,QADR;AAAA,MAEAC,EAIE,GAAAL,KAAK,CAJGM,KAFV;MAEAA,KAAK,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAEA,EAFV;AAAA,MAGAE,EAGE,GAAAP,KAAK,MANP;MAGAQ,KAAK,mBAAG,QAAKD,EAHb;AAAA,MAIAE,EAEE,GAAAT,KAAK,CAFSU,QAJhB;MAIAA,QAAQ,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQA,EAJhB;AAAA,MAKAE,EACE,GAAAX,KAAK,CADqBY,OAL5B;MAKAA,OAAO,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,YAAA,EAAA,GAAkBA,EAL5B,CAAA;;EAQF,IAAME,gBAAgB,GAAG,YAAA;AACvB,IAAA,IAAIH,QAAQ,IAAI,CAACF,KAAjB,EAAwB;AACtB,MAAA,OAAO,YAAP,CAAA;AACD,KAAA;;AACD,IAAA,IAAIA,KAAJ,EAAW;AACT,MAAA,OAAO,UAAP,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,EAAP,CAAA;GAPF,CAAA;;EAUA,oBACEV,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEgB,uBAAA,CAAAA,uBAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAcb,SAAd,CAAA,GAA2BA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,yBAA0Bc,CAAAA,MAA1B,CAA0BJ,gBAAgB,EAA1C,CADuD,CAD9C,EAGT,KAHS,CAAA,CAGTK,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,IAAI,EAAC,QALP;AAME,IAAA,GAAG,EAAEjB,GANP;AAOE,IAAA,OAAO,EAAEW,OAPX;AAQE,IAAA,SAAS,EAAEA,OARb;AASE,IAAA,UAAU,EAAEA,OATd;AAUE,IAAA,QAAQ,EAAE,CAAA;GAEV,eAAAd,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,gCAAA;GACb,eAAAA,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,sCAAA;AAAf,GAAA,EACGM,QADH,CADF,eAIEN,yBAAA,CAAA,aAAA,CAACqB,cAAD,EAAA;AACE,IAAA,SAAS,EAAGf,QAAQ,IAAIE,KAAb,IAAuB,uCADpC;IAEE,IAAI,EAAEc,wBAAe,CAACC,SAFxB;IAGE,KAAK,EAAEC,oBAAW,CAACC,cAAAA;GAElBjB,EAAAA,KALH,CAJF,CAZF,CADF,CAAA;AA2BD,CA/CqB;;;;"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../tslib.es6-062eb722.js');
3
+ var tslib_es6 = require('../tslib.es6-ce6b9cf9.js');
4
4
  var React = require('react');
5
5
 
6
6
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -28,6 +28,12 @@ var ReactionButton = /*#__PURE__*/React__default["default"].forwardRef(function
28
28
  onKeyDown: function (e) {
29
29
  return onClick(e);
30
30
  },
31
+ onTouchEnd: function (e) {
32
+ onClick(e); // to stop longpress
33
+
34
+ e.stopPropagation();
35
+ e.nativeEvent.stopImmediatePropagation();
36
+ },
31
37
  tabIndex: 0
32
38
  }, /*#__PURE__*/React__default["default"].createElement("div", {
33
39
  className: "sendbird-reaction-button__inner"
@@ -1 +1 @@
1
- {"version":3,"file":"ReactionButton.js","sources":["../../../src/ui/ReactionButton/index.tsx"],"sourcesContent":["import React, { KeyboardEvent, MouseEvent, ReactElement, RefObject } from 'react';\n\nimport './index.scss';\n\nexport interface ReactionButtonProps {\n children: ReactElement;\n className?: string | Array<string>;\n width?: string | number;\n height?: string | number;\n selected?: boolean;\n onClick?: (e: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement>) => void;\n}\nconst ReactionButton = React.forwardRef((props: ReactionButtonProps, ref: RefObject<HTMLDivElement>): ReactElement => {\n const {\n className,\n width,\n height,\n selected,\n onClick,\n children,\n } = props;\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n `sendbird-reaction-button${selected ? '--selected' : ''}`,\n ].join(' ')}\n ref={ref}\n role=\"button\"\n style={{ width, height }}\n onClick={(e) => onClick(e)}\n onKeyDown={(e) => onClick(e)}\n tabIndex={0}\n >\n <div className=\"sendbird-reaction-button__inner\">\n {children}\n </div>\n </div>\n );\n});\n\nexport default ReactionButton;\n"],"names":["ReactionButton","React","forwardRef","props","ref","className","width","height","selected","onClick","children","__spreadArray","Array","isArray","concat","join","e"],"mappings":";;;;;;;;;AAYMA,IAAAA,cAAc,gBAAGC,yBAAK,CAACC,UAAN,CAAiB,UAACC,KAAD,EAA6BC,GAA7B,EAA2D;AAE/F,EAAA,IAAAC,SAAS,GAMPF,KAAK,CAAAE,SANP;AAAA,MACAC,KAAK,GAKHH,KAAK,CALFG,KADL;AAAA,MAEAC,MAAM,GAIJJ,KAAK,CAAAI,MANP;AAAA,MAGAC,QAAQ,GAGNL,KAAK,CAHCK,QAHR;AAAA,MAIAC,OAAO,GAELN,KAAK,CAAAM,OANP;AAAA,MAKAC,QAAQ,GACNP,KAAK,SANP,CAAA;EAQF,oBACEF,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEU,uBAAA,CAAAA,uBAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAcR,SAAd,CAA2BA,GAAAA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,0BAA2BS,CAAAA,MAA3B,CAA2BN,QAAQ,GAAG,YAAH,GAAkB,EAArD,CADuD,CAD9C,EAGT,KAHS,CAAA,CAGTO,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,GAAG,EAAEX,GALP;AAME,IAAA,IAAI,EAAC,QANP;AAOE,IAAA,KAAK,EAAE;AAAEE,MAAAA,KAAK,EAAAA,KAAP;AAASC,MAAAA,MAAM,EAAAA,MAAAA;KAPxB;IAQE,OAAO,EAAE,UAACS,CAAD,EAAE;MAAK,OAAAP,OAAO,CAACO,CAAD,CAAP,CAAA;KARlB;IASE,SAAS,EAAE,UAACA,CAAD,EAAO;MAAA,OAAAP,OAAO,CAACO,CAAD,CAAP,CAAA;KATpB;AAUE,IAAA,QAAQ,EAAE,CAAA;GAEV,eAAAf,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,iCAAA;GACZS,EAAAA,QADH,CAZF,CADF,CAAA;AAkBD,CA5BsB;;;;"}
1
+ {"version":3,"file":"ReactionButton.js","sources":["../../../src/ui/ReactionButton/index.tsx"],"sourcesContent":["import React, {\n KeyboardEvent,\n MouseEvent,\n ReactElement,\n RefObject,\n TouchEvent,\n} from 'react';\n\nimport './index.scss';\n\nexport interface ReactionButtonProps {\n children: ReactElement;\n className?: string | Array<string>;\n width?: string | number;\n height?: string | number;\n selected?: boolean;\n onClick?: (\n e: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement> | TouchEvent<HTMLDivElement>\n ) => void;\n}\nconst ReactionButton = React.forwardRef((props: ReactionButtonProps, ref: RefObject<HTMLDivElement>): ReactElement => {\n const {\n className,\n width,\n height,\n selected,\n onClick,\n children,\n } = props;\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n `sendbird-reaction-button${selected ? '--selected' : ''}`,\n ].join(' ')}\n ref={ref}\n role=\"button\"\n style={{ width, height }}\n onClick={(e) => onClick(e)}\n onKeyDown={(e) => onClick(e)}\n onTouchEnd={(e) => {\n onClick(e);\n // to stop longpress\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n }}\n tabIndex={0}\n >\n <div className=\"sendbird-reaction-button__inner\">\n {children}\n </div>\n </div>\n );\n});\n\nexport default ReactionButton;\n"],"names":["ReactionButton","React","forwardRef","props","ref","className","width","height","selected","onClick","children","__spreadArray","Array","isArray","concat","join","e","stopPropagation","nativeEvent","stopImmediatePropagation"],"mappings":";;;;;;;;;AAoBMA,IAAAA,cAAc,gBAAGC,yBAAK,CAACC,UAAN,CAAiB,UAACC,KAAD,EAA6BC,GAA7B,EAA2D;AAE/F,EAAA,IAAAC,SAAS,GAMPF,KAAK,CAAAE,SANP;AAAA,MACAC,KAAK,GAKHH,KAAK,CALFG,KADL;AAAA,MAEAC,MAAM,GAIJJ,KAAK,CAAAI,MANP;AAAA,MAGAC,QAAQ,GAGNL,KAAK,CAHCK,QAHR;AAAA,MAIAC,OAAO,GAELN,KAAK,CAAAM,OANP;AAAA,MAKAC,QAAQ,GACNP,KAAK,SANP,CAAA;EAQF,oBACEF,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEU,uBAAA,CAAAA,uBAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAcR,SAAd,CAA2BA,GAAAA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,0BAA2BS,CAAAA,MAA3B,CAA2BN,QAAQ,GAAG,YAAH,GAAkB,EAArD,CADuD,CAD9C,EAGT,KAHS,CAAA,CAGTO,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,GAAG,EAAEX,GALP;AAME,IAAA,IAAI,EAAC,QANP;AAOE,IAAA,KAAK,EAAE;AAAEE,MAAAA,KAAK,EAAAA,KAAP;AAASC,MAAAA,MAAM,EAAAA,MAAAA;KAPxB;IAQE,OAAO,EAAE,UAACS,CAAD,EAAO;MAAA,OAAAP,OAAO,CAACO,CAAD,CAAP,CAAA;KARlB;IASE,SAAS,EAAE,UAACA,CAAD,EAAE;MAAK,OAAAP,OAAO,CAACO,CAAD,CAAP,CAAA;KATpB;IAUE,UAAU,EAAE,UAACA,CAAD,EAAE;AACZP,MAAAA,OAAO,CAACO,CAAD,CAAP,CADY;;AAGZA,MAAAA,CAAC,CAACC,eAAF,EAAA,CAAA;MACAD,CAAC,CAACE,WAAF,CAAcC,wBAAd,EAAA,CAAA;KAdJ;AAgBE,IAAA,QAAQ,EAAE,CAAA;GAEV,eAAAlB,yBAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,iCAAA;GACZS,EAAAA,QADH,CAlBF,CADF,CAAA;AAwBD,CAlCsB;;;;"}
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../tslib.es6-062eb722.js');
3
+ var tslib_es6 = require('../tslib.es6-ce6b9cf9.js');
4
4
  var React = require('react');
5
- var uuid = require('../uuid-5f2be0dc.js');
5
+ var uuid = require('../uuid-e0efb18c.js');
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../tslib.es6-062eb722.js');
3
+ var tslib_es6 = require('../tslib.es6-ce6b9cf9.js');
4
4
  var React = require('react');
5
- var color = require('../color-50f674f3.js');
5
+ var color = require('../color-fcbb3426.js');
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8