@sendbird/uikit-react 3.2.1 → 3.2.2-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 (505) hide show
  1. package/App.js +33 -28
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +13 -1
  4. package/Channel/components/ChannelHeader.js +16 -15
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +22 -21
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +15 -14
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +4 -4
  11. package/Channel/components/Message.js +19 -18
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +16 -15
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +21 -20
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +16 -15
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +16 -15
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +15 -14
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +4 -4
  24. package/Channel/context.js +14 -13
  25. package/Channel/context.js.map +1 -1
  26. package/Channel.js +22 -21
  27. package/Channel.js.map +1 -1
  28. package/ChannelList/components/AddChannel.js +14 -13
  29. package/ChannelList/components/AddChannel.js.map +1 -1
  30. package/ChannelList/components/ChannelListHeader.js +7 -7
  31. package/ChannelList/components/ChannelListUI.js +49 -44
  32. package/ChannelList/components/ChannelListUI.js.map +1 -1
  33. package/ChannelList/components/ChannelPreview.js +20 -19
  34. package/ChannelList/components/ChannelPreview.js.map +1 -1
  35. package/ChannelList/components/ChannelPreviewAction.js +14 -13
  36. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  37. package/ChannelList/context.js +9 -8
  38. package/ChannelList/context.js.map +1 -1
  39. package/ChannelList.js +26 -25
  40. package/ChannelList.js.map +1 -1
  41. package/{ChannelListProvider-5d6be9a8.js → ChannelListProvider-0f680566.js} +27 -23
  42. package/ChannelListProvider-0f680566.js.map +1 -0
  43. package/{ChannelProvider-106bb518.js → ChannelProvider-39a2dc01.js} +10 -10
  44. package/ChannelProvider-39a2dc01.js.map +1 -0
  45. package/ChannelSettings/components/ChannelProfile.js +11 -11
  46. package/ChannelSettings/components/ChannelSettingsUI.js +18 -17
  47. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  48. package/ChannelSettings/components/EditDetailsModal.js +11 -11
  49. package/ChannelSettings/components/LeaveChannel.js +10 -10
  50. package/ChannelSettings/components/ModerationPanel.js +15 -14
  51. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  52. package/ChannelSettings/components/UserListItem.js +12 -11
  53. package/ChannelSettings/components/UserListItem.js.map +1 -1
  54. package/ChannelSettings/components/UserPanel.js +14 -13
  55. package/ChannelSettings/components/UserPanel.js.map +1 -1
  56. package/ChannelSettings/context.js +3 -3
  57. package/ChannelSettings.js +18 -17
  58. package/ChannelSettings.js.map +1 -1
  59. package/CreateChannel/components/CreateChannelUI.js +14 -13
  60. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  61. package/CreateChannel/components/InviteUsers.js +14 -13
  62. package/CreateChannel/components/InviteUsers.js.map +1 -1
  63. package/CreateChannel/components/SelectChannelType.js +10 -10
  64. package/CreateChannel/context.js +4 -4
  65. package/CreateChannel.js +14 -13
  66. package/CreateChannel.js.map +1 -1
  67. package/{CreateChannelProvider-879ea78c.js → CreateChannelProvider-6ca875f0.js} +1 -1
  68. package/{CreateChannelProvider-879ea78c.js.map → CreateChannelProvider-6ca875f0.js.map} +1 -1
  69. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  70. package/CreateOpenChannel/context.js +1 -1
  71. package/CreateOpenChannel.js +9 -9
  72. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  73. package/EditUserProfile.js +12 -12
  74. package/{LocalizationContext-a6f8fb25.js → LocalizationContext-6a3c0561.js} +3 -3
  75. package/{LocalizationContext-a6f8fb25.js.map → LocalizationContext-6a3c0561.js.map} +1 -1
  76. package/{MemberList-bf1787c0.js → MemberList-8e0f0595.js} +5 -5
  77. package/{MemberList-bf1787c0.js.map → MemberList-8e0f0595.js.map} +1 -1
  78. package/MessageSearch/components/MessageSearchUI.js +11 -11
  79. package/MessageSearch/context.js +2 -2
  80. package/MessageSearch.js +11 -11
  81. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  82. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  83. package/OpenChannel/components/OpenChannelInput.js +16 -15
  84. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  85. package/OpenChannel/components/OpenChannelMessage.js +21 -20
  86. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  87. package/OpenChannel/components/OpenChannelMessageList.js +23 -22
  88. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  89. package/OpenChannel/components/OpenChannelUI.js +23 -22
  90. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  91. package/OpenChannel/context.js +9 -9
  92. package/OpenChannel.js +23 -22
  93. package/OpenChannel.js.map +1 -1
  94. package/OpenChannelList/components/OpenChannelListUI.js +12 -12
  95. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  96. package/OpenChannelList/context.js +4 -4
  97. package/OpenChannelList.js +12 -12
  98. package/{OpenChannelListProvider-cdd801da.js → OpenChannelListProvider-6b400787.js} +3 -3
  99. package/{OpenChannelListProvider-cdd801da.js.map → OpenChannelListProvider-6b400787.js.map} +1 -1
  100. package/{OpenChannelProvider-10dd5869.js → OpenChannelProvider-65570af9.js} +7 -7
  101. package/{OpenChannelProvider-10dd5869.js.map → OpenChannelProvider-65570af9.js.map} +1 -1
  102. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  103. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  104. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -17
  105. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  106. package/OpenChannelSettings/components/OperatorUI.js +17 -16
  107. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  108. package/OpenChannelSettings/components/ParticipantUI.js +15 -14
  109. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  110. package/OpenChannelSettings/context.js +3 -3
  111. package/OpenChannelSettings.js +18 -17
  112. package/OpenChannelSettings.js.map +1 -1
  113. package/SendbirdProvider.js +13 -8
  114. package/SendbirdProvider.js.map +1 -1
  115. package/{UserProfileContext-58463608.js → UserProfileContext-efa87f83.js} +1 -1
  116. package/{UserProfileContext-58463608.js.map → UserProfileContext-efa87f83.js.map} +1 -1
  117. package/{_rollupPluginBabelHelpers-b9099c54.js → _rollupPluginBabelHelpers-0bee2425.js} +1 -1
  118. package/_rollupPluginBabelHelpers-0bee2425.js.map +1 -0
  119. package/{actionTypes-2e2a14dc.js → actionTypes-81d0e341.js} +1 -1
  120. package/{actionTypes-2e2a14dc.js.map → actionTypes-81d0e341.js.map} +1 -1
  121. package/cjs/App.js +33 -28
  122. package/cjs/App.js.map +1 -1
  123. package/cjs/Channel/components/ChannelHeader.js +16 -15
  124. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  125. package/cjs/Channel/components/ChannelUI.js +22 -21
  126. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  127. package/cjs/Channel/components/FileViewer.js +15 -14
  128. package/cjs/Channel/components/FileViewer.js.map +1 -1
  129. package/cjs/Channel/components/FrozenNotification.js +4 -4
  130. package/cjs/Channel/components/Message.js +19 -18
  131. package/cjs/Channel/components/Message.js.map +1 -1
  132. package/cjs/Channel/components/MessageInput.js +16 -15
  133. package/cjs/Channel/components/MessageInput.js.map +1 -1
  134. package/cjs/Channel/components/MessageList.js +21 -20
  135. package/cjs/Channel/components/MessageList.js.map +1 -1
  136. package/cjs/Channel/components/RemoveMessageModal.js +16 -15
  137. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  138. package/cjs/Channel/components/SuggestedMentionList.js +16 -15
  139. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  140. package/cjs/Channel/components/TypingIndicator.js +15 -14
  141. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  142. package/cjs/Channel/components/UnreadCount.js +4 -4
  143. package/cjs/Channel/context.js +14 -13
  144. package/cjs/Channel/context.js.map +1 -1
  145. package/cjs/Channel.js +22 -21
  146. package/cjs/Channel.js.map +1 -1
  147. package/cjs/ChannelList/components/AddChannel.js +14 -13
  148. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  149. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  150. package/cjs/ChannelList/components/ChannelListUI.js +49 -44
  151. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  152. package/cjs/ChannelList/components/ChannelPreview.js +20 -19
  153. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  154. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -13
  155. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  156. package/cjs/ChannelList/context.js +9 -8
  157. package/cjs/ChannelList/context.js.map +1 -1
  158. package/cjs/ChannelList.js +26 -25
  159. package/cjs/ChannelList.js.map +1 -1
  160. package/cjs/{ChannelListProvider-0ad296e7.js → ChannelListProvider-88cd9b2a.js} +27 -23
  161. package/cjs/ChannelListProvider-88cd9b2a.js.map +1 -0
  162. package/cjs/{ChannelProvider-7ef2ebd3.js → ChannelProvider-61aa7b2a.js} +10 -10
  163. package/cjs/ChannelProvider-61aa7b2a.js.map +1 -0
  164. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  165. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -17
  166. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  167. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  168. package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
  169. package/cjs/ChannelSettings/components/ModerationPanel.js +15 -14
  170. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  171. package/cjs/ChannelSettings/components/UserListItem.js +12 -11
  172. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  173. package/cjs/ChannelSettings/components/UserPanel.js +14 -13
  174. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  175. package/cjs/ChannelSettings/context.js +3 -3
  176. package/cjs/ChannelSettings.js +18 -17
  177. package/cjs/ChannelSettings.js.map +1 -1
  178. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -13
  179. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  180. package/cjs/CreateChannel/components/InviteUsers.js +14 -13
  181. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  182. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  183. package/cjs/CreateChannel/context.js +4 -4
  184. package/cjs/CreateChannel.js +14 -13
  185. package/cjs/CreateChannel.js.map +1 -1
  186. package/cjs/{CreateChannelProvider-9d17677a.js → CreateChannelProvider-5a058abb.js} +1 -1
  187. package/cjs/{CreateChannelProvider-9d17677a.js.map → CreateChannelProvider-5a058abb.js.map} +1 -1
  188. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  189. package/cjs/CreateOpenChannel/context.js +1 -1
  190. package/cjs/CreateOpenChannel.js +9 -9
  191. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  192. package/cjs/EditUserProfile.js +12 -12
  193. package/cjs/{LocalizationContext-64800ba8.js → LocalizationContext-4d823138.js} +3 -3
  194. package/cjs/{LocalizationContext-64800ba8.js.map → LocalizationContext-4d823138.js.map} +1 -1
  195. package/cjs/{MemberList-b623b698.js → MemberList-0aef4d76.js} +5 -5
  196. package/cjs/{MemberList-b623b698.js.map → MemberList-0aef4d76.js.map} +1 -1
  197. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  198. package/cjs/MessageSearch/context.js +2 -2
  199. package/cjs/MessageSearch.js +11 -11
  200. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  201. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  202. package/cjs/OpenChannel/components/OpenChannelInput.js +16 -15
  203. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  204. package/cjs/OpenChannel/components/OpenChannelMessage.js +21 -20
  205. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  206. package/cjs/OpenChannel/components/OpenChannelMessageList.js +23 -22
  207. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  208. package/cjs/OpenChannel/components/OpenChannelUI.js +23 -22
  209. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  210. package/cjs/OpenChannel/context.js +9 -9
  211. package/cjs/OpenChannel.js +23 -22
  212. package/cjs/OpenChannel.js.map +1 -1
  213. package/cjs/OpenChannelList/components/OpenChannelListUI.js +12 -12
  214. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  215. package/cjs/OpenChannelList/context.js +4 -4
  216. package/cjs/OpenChannelList.js +12 -12
  217. package/cjs/{OpenChannelListProvider-c2ffa643.js → OpenChannelListProvider-5b8998de.js} +3 -3
  218. package/cjs/{OpenChannelListProvider-c2ffa643.js.map → OpenChannelListProvider-5b8998de.js.map} +1 -1
  219. package/cjs/{OpenChannelProvider-c6e69c3d.js → OpenChannelProvider-2cddfe89.js} +7 -7
  220. package/cjs/{OpenChannelProvider-c6e69c3d.js.map → OpenChannelProvider-2cddfe89.js.map} +1 -1
  221. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  222. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  223. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -17
  224. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  225. package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -16
  226. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  227. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -14
  228. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  229. package/cjs/OpenChannelSettings/context.js +3 -3
  230. package/cjs/OpenChannelSettings.js +18 -17
  231. package/cjs/OpenChannelSettings.js.map +1 -1
  232. package/cjs/SendbirdProvider.js +13 -8
  233. package/cjs/SendbirdProvider.js.map +1 -1
  234. package/cjs/{UserProfileContext-adcaa087.js → UserProfileContext-7d7dbfa8.js} +1 -1
  235. package/cjs/{UserProfileContext-adcaa087.js.map → UserProfileContext-7d7dbfa8.js.map} +1 -1
  236. package/cjs/{_rollupPluginBabelHelpers-db7a8168.js → _rollupPluginBabelHelpers-3da02f29.js} +1 -1
  237. package/cjs/_rollupPluginBabelHelpers-3da02f29.js.map +1 -0
  238. package/cjs/{actionTypes-3a12308e.js → actionTypes-b57b348f.js} +1 -1
  239. package/cjs/{actionTypes-3a12308e.js.map → actionTypes-b57b348f.js.map} +1 -1
  240. package/cjs/{color-b4fd88cc.js → color-fde2f017.js} +1 -1
  241. package/cjs/{color-b4fd88cc.js.map → color-fde2f017.js.map} +1 -1
  242. package/cjs/{compareIds-0877d215.js → compareIds-0dc10948.js} +1 -1
  243. package/cjs/{compareIds-0877d215.js.map → compareIds-0dc10948.js.map} +1 -1
  244. package/cjs/{const-d4eca33b.js → const-4746207f.js} +1 -1
  245. package/cjs/{const-d4eca33b.js.map → const-4746207f.js.map} +1 -1
  246. package/cjs/{const-1844f708.js → const-4dec56be.js} +1 -1
  247. package/cjs/{const-1844f708.js.map → const-4dec56be.js.map} +1 -1
  248. package/cjs/{context-0ee48eec.js → context-6fb2d493.js} +2 -2
  249. package/cjs/{context-0ee48eec.js.map → context-6fb2d493.js.map} +1 -1
  250. package/cjs/dist/index.css +55 -55
  251. package/cjs/dist/index.css.map +1 -1
  252. package/cjs/{index-dda2ca7b.js → index-41f1d19c.js} +7 -7
  253. package/cjs/{index-dda2ca7b.js.map → index-41f1d19c.js.map} +1 -1
  254. package/cjs/{index-6e1b95d9.js → index-43ccaf72.js} +1 -1
  255. package/cjs/{index-6e1b95d9.js.map → index-43ccaf72.js.map} +1 -1
  256. package/cjs/{index-6ed6c13c.js → index-5a52365c.js} +5 -35
  257. package/cjs/index-5a52365c.js.map +1 -0
  258. package/cjs/{index-1b2c1946.js → index-81965519.js} +2 -2
  259. package/cjs/{index-1b2c1946.js.map → index-81965519.js.map} +1 -1
  260. package/cjs/{index-a7fef0ee.js → index-9f30019d.js} +2 -2
  261. package/cjs/{index-a7fef0ee.js.map → index-9f30019d.js.map} +1 -1
  262. package/cjs/{index-5592e65b.js → index-ab052326.js} +4 -4
  263. package/cjs/{index-5592e65b.js.map → index-ab052326.js.map} +1 -1
  264. package/cjs/{index-8b034127.js → index-cfa8d471.js} +1 -1
  265. package/cjs/{index-8b034127.js.map → index-cfa8d471.js.map} +1 -1
  266. package/cjs/{index-d704345f.js → index-dbc6713d.js} +4 -4
  267. package/cjs/{index-d704345f.js.map → index-dbc6713d.js.map} +1 -1
  268. package/cjs/{index-ef0a59fd.js → index-e69fe951.js} +2 -2
  269. package/cjs/{index-ef0a59fd.js.map → index-e69fe951.js.map} +1 -1
  270. package/cjs/{index-495608df.js → index-e7fbdda3.js} +5 -5
  271. package/cjs/{index-495608df.js.map → index-e7fbdda3.js.map} +1 -1
  272. package/cjs/index.js +33 -32
  273. package/cjs/index.js.map +1 -1
  274. package/cjs/{openChannelUtils-afd47b38.js → openChannelUtils-344a9306.js} +1 -1
  275. package/cjs/{openChannelUtils-afd47b38.js.map → openChannelUtils-344a9306.js.map} +1 -1
  276. package/cjs/sendbirdSelectors.js +2 -2
  277. package/cjs/{stringSet-c306c59c.js → stringSet-86981e3d.js} +1 -1
  278. package/cjs/{stringSet-c306c59c.js.map → stringSet-86981e3d.js.map} +1 -1
  279. package/cjs/{topics-c42771ac.js → topics-dd40ff32.js} +1 -1
  280. package/cjs/{topics-c42771ac.js.map → topics-dd40ff32.js.map} +1 -1
  281. package/cjs/{tslib.es6-b4fa8f1d.js → tslib.es6-7f4f6730.js} +1 -1
  282. package/cjs/{tslib.es6-b4fa8f1d.js.map → tslib.es6-7f4f6730.js.map} +1 -1
  283. package/cjs/ui/Accordion.js +3 -3
  284. package/cjs/ui/AccordionGroup.js +2 -2
  285. package/cjs/ui/AdminMessage.js +3 -3
  286. package/cjs/ui/Avatar.js +2 -2
  287. package/cjs/ui/Badge.js +5 -5
  288. package/cjs/ui/Button.js +3 -3
  289. package/cjs/ui/ChannelAvatar.js +3 -3
  290. package/cjs/ui/ConnectionStatus.js +4 -4
  291. package/cjs/ui/ContextMenu.js +6 -5
  292. package/cjs/ui/ContextMenu.js.map +1 -1
  293. package/cjs/ui/DateSeparator.js +4 -4
  294. package/cjs/ui/EmojiReactions.js +8 -7
  295. package/cjs/ui/EmojiReactions.js.map +1 -1
  296. package/cjs/ui/FileMessageItemBody.js +6 -5
  297. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  298. package/cjs/ui/FileViewer.js +9 -8
  299. package/cjs/ui/FileViewer.js.map +1 -1
  300. package/cjs/ui/IconButton.js +1 -1
  301. package/cjs/ui/ImageRenderer.js +1 -1
  302. package/cjs/ui/Input.js +2 -2
  303. package/cjs/ui/Label.js +2 -2
  304. package/cjs/ui/LinkLabel.js +2 -2
  305. package/cjs/ui/Loader.js +1 -1
  306. package/cjs/ui/MentionLabel.js +11 -10
  307. package/cjs/ui/MentionLabel.js.map +1 -1
  308. package/cjs/ui/MessageContent.js +14 -13
  309. package/cjs/ui/MessageContent.js.map +1 -1
  310. package/cjs/ui/MessageInput.js +10 -9
  311. package/cjs/ui/MessageInput.js.map +1 -1
  312. package/cjs/ui/MessageItemMenu.js +8 -7
  313. package/cjs/ui/MessageItemMenu.js.map +1 -1
  314. package/cjs/ui/MessageItemReactionMenu.js +6 -5
  315. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  316. package/cjs/ui/MessageSearchFileItem.js +9 -9
  317. package/cjs/ui/MessageSearchItem.js +9 -9
  318. package/cjs/ui/MessageStatus.js +14 -13
  319. package/cjs/ui/MessageStatus.js.map +1 -1
  320. package/cjs/ui/Modal.js +6 -6
  321. package/cjs/ui/OGMessageItemBody.js +11 -10
  322. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  323. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  324. package/cjs/ui/OpenChannelAvatar.js +6 -6
  325. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  326. package/cjs/ui/OpenchannelFileMessage.js +15 -14
  327. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  328. package/cjs/ui/OpenchannelOGMessage.js +15 -14
  329. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  330. package/cjs/ui/OpenchannelThumbnailMessage.js +14 -13
  331. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  332. package/cjs/ui/OpenchannelUserMessage.js +15 -14
  333. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  334. package/cjs/ui/PlaceHolder.js +6 -6
  335. package/cjs/ui/QuoteMessage.js +7 -6
  336. package/cjs/ui/QuoteMessage.js.map +1 -1
  337. package/cjs/ui/QuoteMessageInput.js +7 -6
  338. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  339. package/cjs/ui/ReactionBadge.js +3 -3
  340. package/cjs/ui/ReactionButton.js +1 -1
  341. package/cjs/ui/SortByRow.js +2 -2
  342. package/cjs/ui/TextButton.js +2 -2
  343. package/cjs/ui/TextMessageItemBody.js +11 -10
  344. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  345. package/cjs/ui/ThumbnailMessageItemBody.js +3 -2
  346. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  347. package/cjs/ui/Tooltip.js +3 -3
  348. package/cjs/ui/TooltipWrapper.js +1 -1
  349. package/cjs/ui/UnknownMessageItemBody.js +7 -6
  350. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  351. package/cjs/ui/UserListItem.js +12 -11
  352. package/cjs/ui/UserListItem.js.map +1 -1
  353. package/cjs/ui/UserProfile.js +9 -9
  354. package/cjs/ui/Word.js +11 -10
  355. package/cjs/ui/Word.js.map +1 -1
  356. package/cjs/useSendbirdStateContext.js +1 -1
  357. package/cjs/utils/message/getOutgoingMessageState.js +44 -0
  358. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -0
  359. package/cjs/{utils-d6565953.js → utils-06ddc7ca.js} +1 -1
  360. package/cjs/{utils-d6565953.js.map → utils-06ddc7ca.js.map} +1 -1
  361. package/cjs/{utils-5d8323fa.js → utils-11bdf7b6.js} +1 -1
  362. package/cjs/{utils-5d8323fa.js.map → utils-11bdf7b6.js.map} +1 -1
  363. package/cjs/{utils-538678ec.js → utils-80108228.js} +1 -1
  364. package/cjs/{utils-538678ec.js.map → utils-80108228.js.map} +1 -1
  365. package/cjs/{uuid-61941a28.js → uuid-01d4b7ef.js} +1 -1
  366. package/cjs/{uuid-61941a28.js.map → uuid-01d4b7ef.js.map} +1 -1
  367. package/cjs/withSendbird.js +1 -1
  368. package/{color-a2810858.js → color-b14eebd4.js} +1 -1
  369. package/{color-a2810858.js.map → color-b14eebd4.js.map} +1 -1
  370. package/{compareIds-4839d86c.js → compareIds-8cb3ae2b.js} +1 -1
  371. package/{compareIds-4839d86c.js.map → compareIds-8cb3ae2b.js.map} +1 -1
  372. package/{const-07519343.js → const-7dd290ce.js} +1 -1
  373. package/{const-07519343.js.map → const-7dd290ce.js.map} +1 -1
  374. package/{const-16fc416a.js → const-8c71e95a.js} +1 -1
  375. package/{const-16fc416a.js.map → const-8c71e95a.js.map} +1 -1
  376. package/{context-20498268.js → context-f2f41992.js} +2 -2
  377. package/{context-20498268.js.map → context-f2f41992.js.map} +1 -1
  378. package/dist/index.css +55 -55
  379. package/dist/index.css.map +1 -1
  380. package/{index-14e5c46a.js → index-198f15c3.js} +5 -5
  381. package/{index-14e5c46a.js.map → index-198f15c3.js.map} +1 -1
  382. package/{index-ccf6db26.js → index-267e85d5.js} +2 -2
  383. package/{index-ccf6db26.js.map → index-267e85d5.js.map} +1 -1
  384. package/{index-4ac20b5a.js → index-3427b39f.js} +4 -4
  385. package/{index-4ac20b5a.js.map → index-3427b39f.js.map} +1 -1
  386. package/{index-cc905e95.js → index-594499d8.js} +4 -32
  387. package/index-594499d8.js.map +1 -0
  388. package/{index-2db9735a.js → index-5bebcb3a.js} +2 -2
  389. package/{index-2db9735a.js.map → index-5bebcb3a.js.map} +1 -1
  390. package/{index-e7ab483d.js → index-78e92d76.js} +4 -4
  391. package/{index-e7ab483d.js.map → index-78e92d76.js.map} +1 -1
  392. package/{index-fb7fd76d.js → index-8287486d.js} +1 -1
  393. package/{index-fb7fd76d.js.map → index-8287486d.js.map} +1 -1
  394. package/{index-84497a86.js → index-94c418af.js} +7 -7
  395. package/{index-84497a86.js.map → index-94c418af.js.map} +1 -1
  396. package/{index-ecc6d4a9.js → index-bd437d0f.js} +1 -1
  397. package/{index-ecc6d4a9.js.map → index-bd437d0f.js.map} +1 -1
  398. package/{index-c2f20322.js → index-e7e5efcf.js} +2 -2
  399. package/{index-c2f20322.js.map → index-e7e5efcf.js.map} +1 -1
  400. package/index.d.ts +24 -2
  401. package/index.js +33 -32
  402. package/index.js.map +1 -1
  403. package/{openChannelUtils-c694c77d.js → openChannelUtils-72e02367.js} +1 -1
  404. package/{openChannelUtils-c694c77d.js.map → openChannelUtils-72e02367.js.map} +1 -1
  405. package/package.json +1 -1
  406. package/sendbirdSelectors.js +2 -2
  407. package/{stringSet-ed906148.js → stringSet-dc01885c.js} +1 -1
  408. package/{stringSet-ed906148.js.map → stringSet-dc01885c.js.map} +1 -1
  409. package/{topics-398017ae.js → topics-57d99208.js} +1 -1
  410. package/{topics-398017ae.js.map → topics-57d99208.js.map} +1 -1
  411. package/{tslib.es6-84f8edfa.js → tslib.es6-9643c112.js} +1 -1
  412. package/{tslib.es6-84f8edfa.js.map → tslib.es6-9643c112.js.map} +1 -1
  413. package/ui/Accordion.js +3 -3
  414. package/ui/AccordionGroup.js +2 -2
  415. package/ui/AdminMessage.js +3 -3
  416. package/ui/Avatar.js +2 -2
  417. package/ui/Badge.js +5 -5
  418. package/ui/Button.js +3 -3
  419. package/ui/ChannelAvatar.js +3 -3
  420. package/ui/ConnectionStatus.js +4 -4
  421. package/ui/ContextMenu.js +6 -5
  422. package/ui/ContextMenu.js.map +1 -1
  423. package/ui/DateSeparator.js +4 -4
  424. package/ui/EmojiReactions.js +8 -7
  425. package/ui/EmojiReactions.js.map +1 -1
  426. package/ui/FileMessageItemBody.js +6 -5
  427. package/ui/FileMessageItemBody.js.map +1 -1
  428. package/ui/FileViewer.js +9 -8
  429. package/ui/FileViewer.js.map +1 -1
  430. package/ui/IconButton.js +1 -1
  431. package/ui/ImageRenderer.js +1 -1
  432. package/ui/Input.js +2 -2
  433. package/ui/Label.js +2 -2
  434. package/ui/LinkLabel.js +2 -2
  435. package/ui/Loader.js +1 -1
  436. package/ui/MentionLabel.js +11 -10
  437. package/ui/MentionLabel.js.map +1 -1
  438. package/ui/MessageContent.js +14 -13
  439. package/ui/MessageContent.js.map +1 -1
  440. package/ui/MessageInput.js +10 -9
  441. package/ui/MessageInput.js.map +1 -1
  442. package/ui/MessageItemMenu.js +8 -7
  443. package/ui/MessageItemMenu.js.map +1 -1
  444. package/ui/MessageItemReactionMenu.js +6 -5
  445. package/ui/MessageItemReactionMenu.js.map +1 -1
  446. package/ui/MessageSearchFileItem.js +9 -9
  447. package/ui/MessageSearchItem.js +9 -9
  448. package/ui/MessageStatus.js +13 -12
  449. package/ui/MessageStatus.js.map +1 -1
  450. package/ui/Modal.js +6 -6
  451. package/ui/OGMessageItemBody.js +11 -10
  452. package/ui/OGMessageItemBody.js.map +1 -1
  453. package/ui/OpenChannelAdminMessage.js +3 -3
  454. package/ui/OpenChannelAvatar.js +6 -6
  455. package/ui/OpenchannelConversationHeader.js +6 -6
  456. package/ui/OpenchannelFileMessage.js +15 -14
  457. package/ui/OpenchannelFileMessage.js.map +1 -1
  458. package/ui/OpenchannelOGMessage.js +15 -14
  459. package/ui/OpenchannelOGMessage.js.map +1 -1
  460. package/ui/OpenchannelThumbnailMessage.js +14 -13
  461. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  462. package/ui/OpenchannelUserMessage.js +15 -14
  463. package/ui/OpenchannelUserMessage.js.map +1 -1
  464. package/ui/PlaceHolder.js +6 -6
  465. package/ui/QuoteMessage.js +7 -6
  466. package/ui/QuoteMessage.js.map +1 -1
  467. package/ui/QuoteMessageInput.js +7 -6
  468. package/ui/QuoteMessageInput.js.map +1 -1
  469. package/ui/ReactionBadge.js +3 -3
  470. package/ui/ReactionButton.js +1 -1
  471. package/ui/SortByRow.js +2 -2
  472. package/ui/TextButton.js +2 -2
  473. package/ui/TextMessageItemBody.js +11 -10
  474. package/ui/TextMessageItemBody.js.map +1 -1
  475. package/ui/ThumbnailMessageItemBody.js +3 -2
  476. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  477. package/ui/Tooltip.js +3 -3
  478. package/ui/TooltipWrapper.js +1 -1
  479. package/ui/UnknownMessageItemBody.js +7 -6
  480. package/ui/UnknownMessageItemBody.js.map +1 -1
  481. package/ui/UserListItem.js +12 -11
  482. package/ui/UserListItem.js.map +1 -1
  483. package/ui/UserProfile.js +9 -9
  484. package/ui/Word.js +11 -10
  485. package/ui/Word.js.map +1 -1
  486. package/useSendbirdStateContext.js +1 -1
  487. package/utils/message/getOutgoingMessageState.js +40 -0
  488. package/utils/message/getOutgoingMessageState.js.map +1 -0
  489. package/{utils-f96e8b5b.js → utils-2b1c0262.js} +1 -1
  490. package/{utils-f96e8b5b.js.map → utils-2b1c0262.js.map} +1 -1
  491. package/{utils-84904138.js → utils-7bc7f35b.js} +1 -1
  492. package/{utils-84904138.js.map → utils-7bc7f35b.js.map} +1 -1
  493. package/{utils-dc344408.js → utils-8ff877ec.js} +1 -1
  494. package/{utils-dc344408.js.map → utils-8ff877ec.js.map} +1 -1
  495. package/{uuid-bd74c65a.js → uuid-dacf1460.js} +1 -1
  496. package/{uuid-bd74c65a.js.map → uuid-dacf1460.js.map} +1 -1
  497. package/withSendbird.js +1 -1
  498. package/ChannelListProvider-5d6be9a8.js.map +0 -1
  499. package/ChannelProvider-106bb518.js.map +0 -1
  500. package/_rollupPluginBabelHelpers-b9099c54.js.map +0 -1
  501. package/cjs/ChannelListProvider-0ad296e7.js.map +0 -1
  502. package/cjs/ChannelProvider-7ef2ebd3.js.map +0 -1
  503. package/cjs/_rollupPluginBabelHelpers-db7a8168.js.map +0 -1
  504. package/cjs/index-6ed6c13c.js.map +0 -1
  505. package/index-cc905e95.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"OpenchannelOGMessage.js","sources":["../../src/ui/OpenchannelOGMessage/utils.ts","../../src/ui/OpenchannelOGMessage/index.tsx"],"sourcesContent":["import type { UserMessage } from \"@sendbird/chat/message\";\n\nexport const URL_REG = /[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)/;\nexport const createUrlTester = (regexp: RegExp) => (text: string): boolean => regexp.test(text);\nexport const checkOGIsEnalbed = (message: UserMessage): boolean => {\n const { ogMetaData } = message;\n if (!ogMetaData) {\n return false;\n }\n const { url } = ogMetaData;\n if (!url) {\n return false;\n }\n return true;\n};\n","import React, { useState, useContext, useMemo, useRef, useEffect } 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 ImageRenderer from '../ImageRenderer';\nimport LinkLabel from '../LinkLabel';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport Word from '../Word';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\n\nimport uuidv4 from '../../utils/uuid';\nimport { copyToClipboard } from '../OpenchannelUserMessage/utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport { checkOGIsEnalbed } from './utils';\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 useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\n\ninterface Props {\n message: UserMessage;\n isOperator?: boolean;\n className?: string | Array<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 userId: string;\n}\n\nexport default function OpenchannelOGMessage({\n message,\n isOperator,\n className,\n disabled,\n showEdit,\n showRemove,\n resendMessage,\n chainTop,\n userId,\n}: Props): JSX.Element {\n if (!message || message.messageType !== 'user') {\n return null;\n }\n\n const status = message?.sendingStatus;\n const { ogMetaData } = message;\n const { defaultImage } = ogMetaData;\n const sdk = useSendbirdStateContext?.()?.stores?.sdkStore?.sdk;\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext(UserProfileContext);\n const [contextStyle, setContextStyle] = useState({});\n const messageComponentRef = useRef(null);\n const contextMenuRef = useRef(null);\n const avatarRef = useRef(null);\n\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n const MemoizedMessageText = useMemo(() => () => {\n const wordClassName = 'sendbird-openchannel-og-message--word';\n const splitMessage = message.message.split(' ');\n const matchedMessage = splitMessage\n .map((word) => (\n <Word\n key={uuidv4()}\n word={word}\n message={message}\n isByMe={message?.sender?.userId === sdk?.currentUser?.userId}\n />\n ));\n\n if (message.updatedAt > 0) {\n matchedMessage.push(\n <Label\n key={uuidv4()}\n className={wordClassName}\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.MESSAGE_EDITED}\n </Label>,\n );\n }\n\n return matchedMessage;\n }, [message, message.updatedAt]);\n\n const openLink = () => {\n if (checkOGIsEnalbed(message)) {\n const { url } = ogMetaData;\n window.open(url);\n }\n };\n\n // place conxt menu top depending clientHeight of message component\n useEffect(() => {\n if (messageComponentRef?.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-og-message',\n ].join(' ')}\n ref={messageComponentRef}\n >\n <div\n className=\"sendbird-openchannel-og-message__top\"\n >\n <div className=\"sendbird-openchannel-og-message__top__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-og-message__top__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-og-message__top__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-og-message__top__right__title\">\n <Label\n className=\"sendbird-openchannel-og-message__top__right__title__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-og-message__top__right__title__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-og-message__top__right__description\">\n <Label\n className=\"sendbird-openchannel-og-message__top__right__description__message\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {MemoizedMessageText()}\n </Label>\n </div>\n </div>\n {\n <div\n className=\"sendbird-openchannel-og-message__top__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-og-message__top__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, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__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, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__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, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__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, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__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 <div className=\"sendbird-openchannel-og-message__bottom\">\n <div className=\"sendbird-openchannel-og-message__bottom__og-tag\">\n {\n ogMetaData.url && (\n <Label\n className=\"sendbird-openchannel-og-message__bottom__og-tag__url\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {ogMetaData.url}\n </Label>\n )\n }\n {\n ogMetaData.title && (\n <LinkLabel\n className=\"sendbird-openchannel-og-message__bottom__og-tag__title\"\n src={ogMetaData.url}\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.PRIMARY}\n >\n {\n ogMetaData.title\n }\n </LinkLabel>\n )\n }\n {\n ogMetaData.description && (\n <Label\n className=\"sendbird-openchannel-og-message__bottom__og-tag__description\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {ogMetaData.description}\n </Label>\n )\n }\n {\n ogMetaData.url && (\n <div\n className=\"sendbird-openchannel-og-message__bottom__og-tag__thumbnail\"\n role=\"button\"\n onClick={openLink}\n onKeyDown={openLink}\n tabIndex={0}\n >\n {\n defaultImage && (\n <ImageRenderer\n className=\"sendbird-openchannel-og-message__bottom__og-tag__thumbnail__image\"\n url={defaultImage.url || ''}\n alt={defaultImage.alt || ''}\n height=\"189px\"\n defaultComponent={(\n <div className=\"sendbird-openchannel-og-message__bottom__og-tag__thumbnail__image--placeholder\">\n <Icon\n type={IconTypes.THUMBNAIL_NONE}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n )}\n />\n )\n }\n </div>\n )\n }\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-og-message__top__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-og-message__top__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-og-message__top__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 </div>\n );\n}\n"],"names":["checkOGIsEnalbed","message","ogMetaData","url","OpenchannelOGMessage","_a","isOperator","className","disabled","showEdit","showRemove","resendMessage","chainTop","userId","messageType","status","sendingStatus","defaultImage","sdk","_d","_c","_b","useSendbirdStateContext","stores","sdkStore","_e","useLocalization","stringSet","dateLocale","_f","useContext","UserProfileContext","disableUserProfile","renderUserProfile","_g","useState","contextStyle","setContextStyle","messageComponentRef","useRef","contextMenuRef","avatarRef","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","MemoizedMessageText","useMemo","wordClassName","splitMessage","split","matchedMessage","map","word","React","uuidv4","currentUser","updatedAt","push","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_2","MESSAGE_EDITED","openLink","window","open","useEffect","current","clientHeight","top","innerWidth","__spreadArray","Array","isArray","join","toggleDropdown","profileUrl","closeDropdown","paddingTop","paddingBottom","user","close","UserProfile","CAPTION_2","SECONDARY_3","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","ONBACKGROUND_1","showMenuTrigger","IconTypes","MORE","IconColors","CONTENT_INVERSE","isFineCopy","copyToClipboard","CONTEXT_MENU_DROPDOWN__COPY","isFineEdit","CONTEXT_MENU_DROPDOWN__EDIT","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE","title","SUBTITLE_2","PRIMARY","description","BODY_2","alt","THUMBNAIL_NONE","SPINNER","ERROR"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,IAAMA,gBAAgB,GAAG,UAACC,OAAD,EAAqB;AAC3C,EAAA,IAAAC,UAAU,GAAKD,OAAO,CAAAC,UAAtB,CAAA;;EACR,IAAI,CAACA,UAAL,EAAiB;AACf,IAAA,OAAO,KAAP,CAAA;AACD,GAAA;;AACO,EAAA,IAAAC,GAAG,GAAKD,UAAU,CAAAC,GAAlB,CAAA;;EACR,IAAI,CAACA,GAAL,EAAU;AACR,IAAA,OAAO,KAAP,CAAA;AACD,GAAA;;AACD,EAAA,OAAO,IAAP,CAAA;AACD,CAVM;;AC0CiB,SAAAC,oBAAA,CAAqBC,EAArB,EAUhB;;;MATNJ,OAAO,GAAAI,EAAA,CAAAJ;MACPK,UAAU,GAAAD,EAAA,CAAAC;MACVC,SAAS,GAAAF,EAAA,CAAAE;MACTC,QAAQ,GAAAH,EAAA,CAAAG;MACRC,QAAQ;MACRC,UAAU,GAAAL,EAAA,CAAAK;MACVC,aAAa,GAAAN,EAAA,CAAAM;MACbC,QAAQ,GAAAP,EAAA,CAAAO;MACRC,MAAM,GAAAR,EAAA,CAAAQ;;EAEN,IAAI,CAACZ,OAAD,IAAYA,OAAO,CAACa,WAAR,KAAwB,MAAxC,EAAgD;AAC9C,IAAA,OAAO,IAAP,CAAA;AACD,GAAA;;AAED,EAAA,IAAMC,MAAM,GAAGd,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEe,aAAxB,CAAA;AACQ,EAAA,IAAAd,UAAU,GAAKD,OAAO,CAAAC,UAAtB,CAAA;AACA,EAAA,IAAAe,YAAY,GAAKf,UAAU,CAAAe,YAA3B,CAAA;AACR,EAAA,IAAMC,GAAG,GAAG,CAAAC,EAAA,GAAA,CAAAC,EAAA,GAAA,CAAAC,EAAA,GAAAC,uBAAuB,KAAvB,IAAA,IAAAA,uBAAuB,KAAvB,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,uBAAuB,EAAvB,MAA6B,IAA7B,IAA6BD,EAAA,KAAA,KAAA,CAA7B,GAA6B,KAAA,CAA7B,GAA6BA,EAAA,CAAAE,MAA7B,UAAA,iBAAA,SAAA,MAAqCC,QAArC,MAA6C,IAA7C,IAA6CL,EAAA,KAAA,KAAA,CAA7C,GAA6C,KAAA,CAA7C,GAA6CA,EAAA,CAAED,GAA3D,CAAA;;EACM,IAAAO,EAAA,GAA4BC,eAAe,EAA3C;AAAA,MAAEC,SAAS,GAAAF,EAAA,CAAAE,SAAX;AAAA,MAAaC,UAAU,GAAAH,EAAA,CAAAG,UAAvB,CAAA;;AACA,EAAA,IAAAC,EAAA,GAA4CC,UAAU,CAACC,kBAAD,CAAtD;AAAA,MAAEC,kBAAkB,GAAAH,EAAA,CAAAG,kBAApB;AAAA,MAAsBC,iBAAiB,GAAAJ,EAAA,CAAAI,iBAAvC,CAAA;;AACA,EAAA,IAAAC,EAAA,GAAkCC,QAAQ,CAAC,EAAD,CAA1C;AAAA,MAACC,YAAY,GAAAF,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeG,eAAe,GAAAH,EAAA,CAAA,CAAA,CAA9B,CAAA;;AACN,EAAA,IAAMI,mBAAmB,GAAGC,MAAM,CAAC,IAAD,CAAlC,CAAA;AACA,EAAA,IAAMC,cAAc,GAAGD,MAAM,CAAC,IAAD,CAA7B,CAAA;AACA,EAAA,IAAME,SAAS,GAAGF,MAAM,CAAC,IAAD,CAAxB,CAAA;AAEA,EAAA,IAAMG,SAAS,GAAGC,cAAc,CAAC5B,MAAD,CAAhC,CAAA;AACA,EAAA,IAAM6B,QAAQ,GAAGC,aAAa,CAAC9B,MAAD,CAA9B,CAAA;AACA,EAAA,IAAM+B,MAAM,GAAGC,oBAAoB,CAAC9C,OAAD,CAAnC,CAAA;AAEA,EAAA,IAAM+C,mBAAmB,GAAGC,OAAO,CAAC;AAAM,IAAA,OAAA,YAAA;MACxC,IAAMC,aAAa,GAAG,uCAAtB,CAAA;MACA,IAAMC,YAAY,GAAGlD,OAAO,CAACA,OAAR,CAAgBmD,KAAhB,CAAsB,GAAtB,CAArB,CAAA;MACA,IAAMC,cAAc,GAAGF,YAAY,CAChCG,GADoB,CAChB,UAACC,IAAD,EAAK;;;AAAK,QAAA,oBACbC,6BAAC,IAAD,EAAA;UACE,GAAG,EAAEC,MAAM,EADb;AAEE,UAAA,IAAI,EAAEF,IAFR;AAGE,UAAA,OAAO,EAAEtD,OAHX;AAIE,UAAA,MAAM,EAAE,CAAA,CAAAI,EAAA,GAAAJ,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAE6C,MAAT,MAAe,IAAf,IAAezC,EAAA,KAAA,KAAA,CAAf,GAAe,KAAA,CAAf,GAAeA,EAAA,CAAEQ,MAAjB,OAA4B,CAAAQ,EAAA,GAAAH,GAAG,SAAH,IAAAA,GAAG,KAAA,KAAA,CAAH,GAAG,KAAA,CAAH,GAAAA,GAAG,CAAEwC,WAAL,MAAgB,IAAhB,IAAgBrC,EAAA,KAAA,KAAA,CAAhB,GAAgB,KAAA,CAAhB,GAAgBA,EAAA,CAAER,MAA9C,CAAA;SALG,CAAA,CAAA;AAOd,OARoB,CAAvB,CAAA;;AAUA,MAAA,IAAIZ,OAAO,CAAC0D,SAAR,GAAoB,CAAxB,EAA2B;AACzBN,QAAAA,cAAc,CAACO,IAAf,eACEJ,cAAA,CAAA,aAAA,CAAC,KAAD,EAAA;UACE,GAAG,EAAEC,MAAM,EADb;AAEE,UAAA,SAAS,EAAEP,aAFb;UAGE,IAAI,EAAEW,eAAe,CAACC,MAHxB;UAIE,KAAK,EAAEC,WAAW,CAACC,cAAAA;SAElBrC,EAAAA,SAAS,CAACsC,cANb,CADF,CAAA,CAAA;AAUD,OAAA;;AAED,MAAA,OAAOZ,cAAP,CAAA;KA1BwC,CAAA;GAAP,EA2BhC,CAACpD,OAAD,EAAUA,OAAO,CAAC0D,SAAlB,CA3BgC,CAAnC,CAAA;;EA6BA,IAAMO,QAAQ,GAAG,YAAA;AACf,IAAA,IAAIlE,gBAAgB,CAACC,OAAD,CAApB,EAA+B;AACrB,MAAA,IAAAE,GAAG,GAAKD,UAAU,CAAAC,GAAlB,CAAA;MACRgE,MAAM,CAACC,IAAP,CAAYjE,GAAZ,CAAA,CAAA;AACD,KAAA;AACF,GALD,CAjDM;;;AAyDNkE,EAAAA,SAAS,CAAC,YAAA;;;AACR,IAAA,IAAI,CAAA,CAAAhE,EAAA,GAAAiC,mBAAmB,KAAA,IAAnB,IAAAA,mBAAmB,KAAA,KAAA,CAAnB,GAAmB,KAAA,CAAnB,GAAAA,mBAAmB,CAAEgC,OAArB,MAA4B,IAA5B,IAA4BjE,EAAA,KAAA,KAAA,CAA5B,GAA4B,KAAA,CAA5B,GAA4BA,EAAA,CAAEkE,YAA9B,IAA6C,EAAjD,EAAqD;AACnDlC,MAAAA,eAAe,CAAC;AAAEmC,QAAAA,GAAG,EAAE,MAAA;AAAP,OAAD,CAAf,CAAA;AACD,KAFD,MAEO;AACLnC,MAAAA,eAAe,CAAC;AAAEmC,QAAAA,GAAG,EAAE,KAAA;AAAP,OAAD,CAAf,CAAA;AACD,KAAA;AACF,GANQ,EAMN,CAACL,MAAM,CAACM,UAAR,CANM,CAAT,CAAA;EAQA,oBACEjB,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEkB,aAAA,CAAAA,aAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAcrE,SAAd,CAAA,GAA2BA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,iCADuD,CAD9C,OAAA,CAAA,CAGTsE,IAHS,CAGJ,GAHI,CADb;AAKE,IAAA,GAAG,EAAEvC,mBAAAA;GAEL,eAAAkB,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,sCAAA;GAEV,eAAAA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,4CAAA;AAAf,GAAA,EAEI,CAAC5C,QAAD,iBACE4C,cAAA,CAAA,aAAA,CAAC,WAAD,EAAA;IACE,WAAW,EAAE,UAACsB,cAAD,EAAoB;AAAA,MAAA,oBAC/BtB,6BAAC,MAAD,EAAA;AACE,QAAA,SAAS,EAAC,oDADZ;AAEE,QAAA,GAAG,EAAEV,MAAM,CAACiC,UAAP,IAAqB,EAF5B;AAGE,QAAA,GAAG,EAAEtC,SAHP;AAIE,QAAA,KAAK,EAAC,MAJR;AAKE,QAAA,MAAM,EAAC,MALT;AAME,QAAA,OAAO,EAAE,YAAA;UACP,IAAI,CAACT,kBAAL,EAAyB;YACvB8C,cAAc,EAAA,CAAA;AACf,WAAA;AACF,SAAA;OAX4B,CAAA,CAAA;KADnC;IAeE,SAAS,EAAE,UAACE,aAAD,EAAmB;AAAA,MAAA,oBAC5BxB,6BAAC,SAAD,EAAA;AACE,QAAA,SAAS,EAAEf,SADb;AAEE,QAAA,gBAAgB,EAAEA,SAFpB;AAGE,QAAA,aAAa,EAAEuC,aAHjB;AAIE,QAAA,KAAK,EAAE;AAAEC,UAAAA,UAAU,EAAE,CAAd;AAAiBC,UAAAA,aAAa,EAAE,CAAA;AAAhC,SAAA;OAGLjD,EAAAA,iBAAiB,GAEbA,iBAAiB,CAAC;AAChBkD,QAAAA,IAAI,EAAErC,MADU;AAEhBsC,QAAAA,KAAK,EAAEJ,aAAAA;OAFQ,CAFJ,gBAQbxB,cAAA,CAAA,aAAA,CAAC6B,oBAAD,EAAA;AACE,QAAA,IAAI,EAAEvC,MADR;AAEE,QAAA,SAAS,EAAEkC,aAFb;QAGE,gBAAgB,EAAA,IAAA;AAHlB,OAAA,CAfR,CAD4B,CAAA;AAwB7B,KAAA;AAvCH,GAAA,CAHN,CAHF,eAkDExB,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,6CAAA;GAEX,EAAA,CAAC5C,QAAD,iBACE4C,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,oDAAA;AAAf,GAAA,eACEA,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,iEADZ;IAEE,IAAI,EAAEK,eAAe,CAACyB,SAFxB;IAGE,KAAK,EAAEhF,UAAU,GAAGyD,WAAW,CAACwB,WAAf,GAA6BxB,WAAW,CAACC,cAAAA;AAH5D,GAAA,EAMIlB,MAAM,KACJA,MAAM,CAAC0C,UAAP,IACG1C,MAAM,CAAC2C,QADV,IAEG3C,MAAM,CAACjC,MAHN,CANV,CADF,eAcE2C,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,6DADZ;IAEE,IAAI,EAAEK,eAAe,CAAC6B,SAFxB;IAGE,KAAK,EAAE3B,WAAW,CAAC4B,cAAAA;AAHrB,GAAA,EAMI,CAAA1F,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE2F,SAAT,KACEC,MAAM,CAAC5F,OAAO,SAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAO,KAAA,CAAP,GAAAA,OAAO,CAAE2F,SAAV,EAAqB,GAArB,EAA0B;AAC9BE,IAAAA,MAAM,EAAElE,UAAAA;GADJ,CAPZ,CAdF,CAHN,eAiCE4B,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,0DAAA;AAAf,GAAA,eACEA,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,mEADZ;IAEE,IAAI,EAAEK,eAAe,CAACC,MAFxB;IAGE,KAAK,EAAEC,WAAW,CAACgC,cAAAA;AAHrB,GAAA,EAKG/C,mBAAmB,EALtB,CADF,CAjCF,CAlDF,eA8FIQ,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,oDADZ;AAEE,IAAA,GAAG,EAAEhB,cAFP;AAGE,IAAA,KAAK,EAAEJ,YAAAA;AAHT,GAAA,eAKEoB,6BAAC,WAAD,EAAA;IACE,WAAW,EAAE,UAACsB,cAAD;AAAoB,MAAA,OAC/BkB,eAAe,CAAC;AAAE/F,QAAAA,OAAO,EAAEA,OAAX;AAAoBY,QAAAA,MAAM,EAAEA,MAA5B;AAAoCE,QAAAA,MAAM,EAAEA,MAAAA;OAA7C,CAAf,iBACEyC,cAAA,CAAA,aAAA,CAAC,UAAD,EAAA;AACE,QAAA,SAAS,EAAC,0DADZ;AAEE,QAAA,KAAK,EAAC,MAFR;AAGE,QAAA,MAAM,EAAC,MAHT;AAIE,QAAA,OAAO,EAAE,YAAA;UACPsB,cAAc,EAAA,CAAA;AACf,SAAA;AANH,OAAA,eAQEtB,6BAAC,IAAD,EAAA;QACE,IAAI,EAAEyC,SAAS,CAACC,IADlB;QAEE,SAAS,EAAEC,UAAU,CAACC,eAFxB;AAGE,QAAA,KAAK,EAAC,MAHR;AAIE,QAAA,MAAM,EAAC,MAAA;AAJT,OAAA,CARF,CAF6B,CAAA;KADnC;IAoBE,SAAS,EAAE,UAACpB,aAAD;AAAmB,MAAA,oBAC5BxB,6BAAC,SAAD,EAAA;AACE,QAAA,SAAS,EAAEhB,cADb;AAEE,QAAA,gBAAgB,EAAEA,cAFpB;AAGE,QAAA,aAAa,EAAEwC,aAHjB;QAIE,QAAQ,EAAA,IAAA;AAJV,OAAA,EAOIqB,UAAU,CAAC;AAAEpG,QAAAA,OAAO,EAAAA,OAAT;AAAWY,QAAAA,MAAM,EAAAA,MAAjB;AAAmBE,QAAAA,MAAM,EAAAA,MAAAA;OAA1B,CAAV,iBACEyC,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,0DADZ;AAEE,QAAA,OAAO,EAAE,YAAA;AACP8C,UAAAA,eAAe,CAACrG,OAAO,CAACA,OAAT,CAAf,CAAA;UACA+E,aAAa,EAAA,CAAA;AACd,SAAA;AALH,OAAA,EAOGrD,SAAS,CAAC4E,2BAPb,CARN,EAoBIC,UAAU,CAAC;AAAEvG,QAAAA,OAAO,EAAAA,OAAT;AAAWY,QAAAA,MAAM,EAAAA,MAAjB;AAAmBE,QAAAA,MAAM,EAAAA,MAAAA;OAA1B,CAAV,iBACEyC,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,0DADZ;AAEE,QAAA,OAAO,EAAE,YAAA;AACP,UAAA,IAAIhD,QAAJ,EAAc;AACZ,YAAA,OAAA;AACD,WAAA;;UACDC,QAAQ,CAAC,IAAD,CAAR,CAAA;UACAuE,aAAa,EAAA,CAAA;AACd,SAAA;AARH,OAAA,EAUGrD,SAAS,CAAC8E,2BAVb,CArBN,EAoCIC,YAAY,CAAC;AAAEzG,QAAAA,OAAO,EAAAA,OAAT;AAAWY,QAAAA,MAAM,EAAAA,MAAjB;AAAmBE,QAAAA,MAAM,EAAAA,MAAAA;OAA1B,CAAZ,iBACEyC,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,4DADZ;AAEE,QAAA,OAAO,EAAE,YAAA;UACP7C,aAAa,CAACV,OAAD,CAAb,CAAA;UACA+E,aAAa,EAAA,CAAA;AACd,SAAA;AALH,OAAA,EAOGrD,SAAS,CAACgF,6BAPb,CArCN,EAiDIC,YAAY,CAAC;AAAE3G,QAAAA,OAAO,EAAAA,OAAT;AAAWY,QAAAA,MAAM,EAAAA,MAAjB;AAAmBE,QAAAA,MAAM,EAAAA,MAAAA;OAA1B,CAAZ,iBACEyC,cAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,SAAS,EAAC,4DADZ;AAEE,QAAA,OAAO,EAAE,YAAA;AACP,UAAA,IAAIhD,QAAJ,EAAc;AACZ,YAAA,OAAA;AACD,WAAA;;UACDE,UAAU,CAAC,IAAD,CAAV,CAAA;UACAsE,aAAa,EAAA,CAAA;AACd,SAAA;AARH,OAAA,EAUGrD,SAAS,CAACkF,6BAVb,CAlDN,CAD4B,CAAA;AAkE7B,KAAA;GA3FL,CAAA,CA9FJ,CAPF,eAqMErD,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,yCAAA;GACb,eAAAA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,iDAAA;AAAf,GAAA,EAEItD,UAAU,CAACC,GAAX,iBACEqD,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,sDADZ;IAEE,IAAI,EAAEK,eAAe,CAAC6B,SAFxB;IAGE,KAAK,EAAE3B,WAAW,CAACC,cAAAA;GAElB9D,EAAAA,UAAU,CAACC,GALd,CAHN,EAaID,UAAU,CAAC4G,KAAX,iBACEtD,cAAA,CAAA,aAAA,CAAC,SAAD,EAAA;AACE,IAAA,SAAS,EAAC,wDADZ;IAEE,GAAG,EAAEtD,UAAU,CAACC,GAFlB;IAGE,IAAI,EAAE0D,eAAe,CAACkD,UAHxB;IAIE,KAAK,EAAEhD,WAAW,CAACiD,OAAAA;GAGjB9G,EAAAA,UAAU,CAAC4G,KAPf,CAdN,EA2BI5G,UAAU,CAAC+G,WAAX,iBACEzD,cAAA,CAAA,aAAA,CAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,8DADZ;IAEE,IAAI,EAAEK,eAAe,CAACqD,MAFxB;IAGE,KAAK,EAAEnD,WAAW,CAACgC,cAAAA;GAElB7F,EAAAA,UAAU,CAAC+G,WALd,CA5BN,EAsCI/G,UAAU,CAACC,GAAX,iBACEqD,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,4DADZ;AAEE,IAAA,IAAI,EAAC,QAFP;AAGE,IAAA,OAAO,EAAEU,QAHX;AAIE,IAAA,SAAS,EAAEA,QAJb;AAKE,IAAA,QAAQ,EAAE,CAAA;GAGRjD,EAAAA,YAAY,iBACVuC,cAAA,CAAA,aAAA,CAAC,aAAD,EAAA;AACE,IAAA,SAAS,EAAC,mEADZ;AAEE,IAAA,GAAG,EAAEvC,YAAY,CAACd,GAAb,IAAoB,EAF3B;AAGE,IAAA,GAAG,EAAEc,YAAY,CAACkG,GAAb,IAAoB,EAH3B;AAIE,IAAA,MAAM,EAAC,OAJT;AAKE,IAAA,gBAAgB,eACd3D,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAC,gFAAA;AAAf,KAAA,eACEA,6BAAC,IAAD,EAAA;MACE,IAAI,EAAEyC,SAAS,CAACmB,cADlB;AAEE,MAAA,KAAK,EAAC,MAFR;AAGE,MAAA,MAAM,EAAC,MAAA;KAJX,CAAA,CAAA;AANJ,GAAA,CATN,CAvCN,CADF,EAuEI,CAAC1E,SAAS,IAAIE,QAAd,kBACEY,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,mDAAA;GAEXd,EAAAA,SAAS,iBACPc,cAAA,CAAA,aAAA,CAAC,MAAD,EAAA;AACE,IAAA,KAAK,EAAC,MADR;AAEE,IAAA,MAAM,EAAC,MAAA;AAFT,GAAA,eAIEA,6BAAC,IAAD,EAAA;AACE,IAAA,SAAS,EAAC,4DADZ;IAEE,IAAI,EAAEyC,SAAS,CAACoB,OAFlB;IAGE,SAAS,EAAElB,UAAU,CAACa,OAHxB;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC,MAAA;AALT,GAAA,CAJF,CAHN,EAkBIpE,QAAQ,iBACNY,6BAAC,IAAD,EAAA;AACE,IAAA,SAAS,EAAC,2DADZ;IAEE,IAAI,EAAEyC,SAAS,CAACqB,KAFlB;IAGE,SAAS,EAAEnB,UAAU,CAACmB,KAHxB;AAIE,IAAA,KAAK,EAAC,MAJR;AAKE,IAAA,MAAM,EAAC,MAAA;GAxBf,CAAA,CAxEN,CArMF,CADF,CAAA;AAgTD;;;;"}
1
+ {"version":3,"file":"OpenchannelOGMessage.js","sources":["../../src/ui/OpenchannelOGMessage/utils.ts","../../src/ui/OpenchannelOGMessage/index.tsx"],"sourcesContent":["import type { UserMessage } from \"@sendbird/chat/message\";\n\nexport const URL_REG = /[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_+.~#?&//=]*)/;\nexport const createUrlTester = (regexp: RegExp) => (text: string): boolean => regexp.test(text);\nexport const checkOGIsEnalbed = (message: UserMessage): boolean => {\n const { ogMetaData } = message;\n if (!ogMetaData) {\n return false;\n }\n const { url } = ogMetaData;\n if (!url) {\n return false;\n }\n return true;\n};\n","import React, { useState, useContext, useMemo, useRef, useEffect } 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 ImageRenderer from '../ImageRenderer';\nimport LinkLabel from '../LinkLabel';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport Word from '../Word';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\n\nimport uuidv4 from '../../utils/uuid';\nimport { copyToClipboard } from '../OpenchannelUserMessage/utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\nimport { checkOGIsEnalbed } from './utils';\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 useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\n\ninterface Props {\n message: UserMessage;\n isOperator?: boolean;\n className?: string | Array<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 userId: string;\n}\n\nexport default function OpenchannelOGMessage({\n message,\n isOperator,\n className,\n disabled,\n showEdit,\n showRemove,\n resendMessage,\n chainTop,\n userId,\n}: Props): JSX.Element {\n if (!message || message.messageType !== 'user') {\n return null;\n }\n\n const status = message?.sendingStatus;\n const { ogMetaData } = message;\n const { defaultImage } = ogMetaData;\n const sdk = useSendbirdStateContext?.()?.stores?.sdkStore?.sdk;\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext(UserProfileContext);\n const [contextStyle, setContextStyle] = useState({});\n const messageComponentRef = useRef(null);\n const contextMenuRef = useRef(null);\n const avatarRef = useRef(null);\n\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n const MemoizedMessageText = useMemo(() => () => {\n const wordClassName = 'sendbird-openchannel-og-message--word';\n const splitMessage = message.message.split(' ');\n const matchedMessage = splitMessage\n .map((word) => (\n <Word\n key={uuidv4()}\n word={word}\n message={message}\n isByMe={message?.sender?.userId === sdk?.currentUser?.userId}\n />\n ));\n\n if (message.updatedAt > 0) {\n matchedMessage.push(\n <Label\n key={uuidv4()}\n className={wordClassName}\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {stringSet.MESSAGE_EDITED}\n </Label>,\n );\n }\n\n return matchedMessage;\n }, [message, message.updatedAt]);\n\n const openLink = () => {\n if (checkOGIsEnalbed(message)) {\n const { url } = ogMetaData;\n window.open(url);\n }\n };\n\n // place conxt menu top depending clientHeight of message component\n useEffect(() => {\n if (messageComponentRef?.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-og-message',\n ].join(' ')}\n ref={messageComponentRef}\n >\n <div\n className=\"sendbird-openchannel-og-message__top\"\n >\n <div className=\"sendbird-openchannel-og-message__top__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-og-message__top__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-og-message__top__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-og-message__top__right__title\">\n <Label\n className=\"sendbird-openchannel-og-message__top__right__title__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-og-message__top__right__title__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-og-message__top__right__description\">\n <Label\n className=\"sendbird-openchannel-og-message__top__right__description__message\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {MemoizedMessageText()}\n </Label>\n </div>\n </div>\n {\n <div\n className=\"sendbird-openchannel-og-message__top__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-og-message__top__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, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__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, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__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, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__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, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__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 <div className=\"sendbird-openchannel-og-message__bottom\">\n <div className=\"sendbird-openchannel-og-message__bottom__og-tag\">\n {\n ogMetaData.url && (\n <Label\n className=\"sendbird-openchannel-og-message__bottom__og-tag__url\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {ogMetaData.url}\n </Label>\n )\n }\n {\n ogMetaData.title && (\n <LinkLabel\n className=\"sendbird-openchannel-og-message__bottom__og-tag__title\"\n src={ogMetaData.url}\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.PRIMARY}\n >\n {\n ogMetaData.title\n }\n </LinkLabel>\n )\n }\n {\n ogMetaData.description && (\n <Label\n className=\"sendbird-openchannel-og-message__bottom__og-tag__description\"\n type={LabelTypography.BODY_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {ogMetaData.description}\n </Label>\n )\n }\n {\n ogMetaData.url && (\n <div\n className=\"sendbird-openchannel-og-message__bottom__og-tag__thumbnail\"\n role=\"button\"\n onClick={openLink}\n onKeyDown={openLink}\n tabIndex={0}\n >\n {\n defaultImage && (\n <ImageRenderer\n className=\"sendbird-openchannel-og-message__bottom__og-tag__thumbnail__image\"\n url={defaultImage.url || ''}\n alt={defaultImage.alt || ''}\n height=\"189px\"\n defaultComponent={(\n <div className=\"sendbird-openchannel-og-message__bottom__og-tag__thumbnail__image--placeholder\">\n <Icon\n type={IconTypes.THUMBNAIL_NONE}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n )}\n />\n )\n }\n </div>\n )\n }\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-og-message__top__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-og-message__top__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-og-message__top__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 </div>\n );\n}\n"],"names":["checkOGIsEnalbed","message","ogMetaData","url","OpenchannelOGMessage","_a","isOperator","className","disabled","showEdit","showRemove","resendMessage","chainTop","userId","messageType","status","sendingStatus","defaultImage","sdk","_d","_c","_b","useSendbirdStateContext","stores","sdkStore","_e","useLocalization","stringSet","dateLocale","_f","useContext","UserProfileContext","disableUserProfile","renderUserProfile","_g","useState","contextStyle","setContextStyle","messageComponentRef","useRef","contextMenuRef","avatarRef","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","MemoizedMessageText","useMemo","wordClassName","splitMessage","split","matchedMessage","map","word","React","uuidv4","currentUser","updatedAt","push","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_2","MESSAGE_EDITED","openLink","window","open","useEffect","current","clientHeight","top","innerWidth","__spreadArray","Array","isArray","join","toggleDropdown","profileUrl","closeDropdown","paddingTop","paddingBottom","user","close","UserProfile","CAPTION_2","SECONDARY_3","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","ONBACKGROUND_1","showMenuTrigger","IconTypes","MORE","IconColors","CONTENT_INVERSE","isFineCopy","copyToClipboard","CONTEXT_MENU_DROPDOWN__COPY","isFineEdit","CONTEXT_MENU_DROPDOWN__EDIT","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE","title","SUBTITLE_2","PRIMARY","description","BODY_2","alt","THUMBNAIL_NONE","SPINNER","ERROR"],"mappings":"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"}
@@ -1,29 +1,30 @@
1
- import { a as __spreadArray } from '../tslib.es6-84f8edfa.js';
1
+ import { a as __spreadArray } from '../tslib.es6-9643c112.js';
2
2
  import React__default, { useContext, useState, useRef, useMemo, useEffect } from 'react';
3
- import { f as format } from '../index-2db9735a.js';
4
- import { u as useLocalization } from '../LocalizationContext-a6f8fb25.js';
3
+ import { f as format } from '../index-5bebcb3a.js';
4
+ import { u as useLocalization } from '../LocalizationContext-6a3c0561.js';
5
5
  import Avatar from './Avatar.js';
6
6
  import ContextMenu, { MenuItems, MenuItem } from './ContextMenu.js';
7
7
  import Icon, { IconColors, IconTypes } from './Icon.js';
8
8
  import IconButton from './IconButton.js';
9
9
  import ImageRenderer from './ImageRenderer.js';
10
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-c2f20322.js';
10
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-e7e5efcf.js';
11
11
  import Loader from './Loader.js';
12
12
  import ConnectedUserProfile from './UserProfile.js';
13
- import { a as UserProfileContext } from '../UserProfileContext-58463608.js';
14
- import { g as getSenderFromMessage, s as showMenuTrigger, b as isFineResend, c as isFineDelete, f as checkIsSent, d as checkIsPending, e as checkIsFailed } from '../openChannelUtils-c694c77d.js';
15
- import '../index-fb7fd76d.js';
16
- import '../stringSet-ed906148.js';
17
- import '../uuid-bd74c65a.js';
13
+ import { a as UserProfileContext } from '../UserProfileContext-efa87f83.js';
14
+ import { g as getSenderFromMessage, s as showMenuTrigger, b as isFineResend, c as isFineDelete, f as checkIsSent, d as checkIsPending, e as checkIsFailed } from '../openChannelUtils-72e02367.js';
15
+ import '../index-8287486d.js';
16
+ import '../stringSet-dc01885c.js';
17
+ import '../uuid-dacf1460.js';
18
18
  import 'prop-types';
19
19
  import 'react-dom';
20
20
  import './SortByRow.js';
21
- import '../index-cc905e95.js';
21
+ import '../index-594499d8.js';
22
+ import '../utils/message/getOutgoingMessageState.js';
22
23
  import '../withSendbird.js';
23
- import '../_rollupPluginBabelHelpers-b9099c54.js';
24
+ import '../_rollupPluginBabelHelpers-0bee2425.js';
24
25
  import '../sendbirdSelectors.js';
25
- import '../topics-398017ae.js';
26
- import '../utils-dc344408.js';
26
+ import '../topics-57d99208.js';
27
+ import '../utils-8ff877ec.js';
27
28
  import './Button.js';
28
29
 
29
30
  var SUPPORTING_TYPES = {
@@ -1 +1 @@
1
- {"version":3,"file":"OpenchannelThumbnailMessage.js","sources":["../../src/ui/OpenchannelThumbnailMessage/utils.ts","../../src/ui/OpenchannelThumbnailMessage/index.tsx"],"sourcesContent":["export const SUPPORTING_TYPES = {\n IMAGE: 'IMAGE',\n VIDEO: 'VIDEO',\n UNSUPPORTED: 'UNSUPPORTED',\n};\n\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/webp',\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const getSupportingFileType = (type: string): string => {\n if (SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0) {\n return SUPPORTING_TYPES.IMAGE;\n }\n if (SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0) {\n return SUPPORTING_TYPES.VIDEO;\n }\n return SUPPORTING_TYPES.UNSUPPORTED;\n}\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useContext,\n} from 'react';\nimport { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\nimport './index.scss';\nimport { SUPPORTING_TYPES, getSupportingFileType } from './utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nimport Avatar from '../Avatar';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport IconButton from '../IconButton';\nimport ImageRenderer from '../ImageRenderer';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport {\n checkIsSent,\n checkIsPending,\n checkIsFailed,\n isFineResend,\n isFineDelete,\n showMenuTrigger,\n} from '../../utils/openChannelUtils';\nimport { getSenderFromMessage } from '../../utils/openChannelUtils';\n\ninterface LocalUrl {\n localUrl?: string;\n}\ninterface Props {\n className?: string | Array<string>;\n message: FileMessage;\n isOperator?: boolean;\n disabled: boolean;\n userId: string;\n chainTop: boolean;\n chainBottom: boolean;\n onClick(bool: boolean): void,\n showRemove(bool: boolean): void,\n resendMessage(message: FileMessage): void;\n}\n\nexport default function OpenchannelThumbnailMessage({\n className,\n message,\n isOperator,\n disabled,\n userId,\n chainTop,\n onClick,\n showRemove,\n resendMessage,\n}: Props): JSX.Element {\n const {\n type,\n url,\n thumbnails,\n localUrl,\n }: FileMessage & LocalUrl = message;\n const status = message?.sendingStatus;\n const thumbnailUrl = (thumbnails && thumbnails.length > 0 && thumbnails[0].url) || null;\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext(UserProfileContext);\n const [messageWidth, setMessageWidth] = useState(360);\n const messageRef = useRef(null);\n const contextMenuRef = useRef(null);\n const avatarRef = useRef(null);\n\n const memorizedThumbnailPlaceHolder = useMemo(() => (type) => ({ style }) => ( // eslint-disable-line\n <div style={style}>\n <Icon\n type={type}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n ), []);\n\n const isMessageSent = checkIsSent(status);\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n useEffect(() => {\n const thumbnailWidth = messageRef?.current?.clientWidth - 80;\n setMessageWidth(thumbnailWidth > 360 ? 360 : thumbnailWidth);\n }, []);\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-openchannel-thumbnail-message',\n ].join(' ')}\n ref={messageRef}\n >\n <div className=\"sendbird-openchannel-thumbnail-message__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-thumbnail-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-thumbnail-message__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-thumbnail-message__right__title\">\n <Label\n className=\"sendbird-openchannel-thumbnail-message__right__title__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-thumbnail-message__right__title__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-thumbnail-message__right__body\">\n <div\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap\"\n role=\"button\"\n onClick={() => {\n if (isMessageSent) {\n onClick(true);\n }\n }}\n onKeyDown={() => {\n if (isMessageSent) {\n onClick(true);\n }\n }}\n tabIndex={0}\n >\n <div className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__overlay\" />\n {\n {\n [SUPPORTING_TYPES.VIDEO]: (\n (url || localUrl)\n ? (\n <div className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video\" >\n {\n (thumbnailUrl)\n ? (\n <ImageRenderer\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video\"\n url={thumbnailUrl}\n width={messageWidth}\n height=\"270px\"\n alt=\"image\"\n placeHolder={memorizedThumbnailPlaceHolder(IconTypes.PLAY)}\n />\n )\n : (\n <video className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video__video\">\n <source src={url || localUrl} type={type} />\n </video>\n )\n }\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video__icon\"\n type={IconTypes.PLAY}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n )\n : (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video--icon\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n )\n ),\n [SUPPORTING_TYPES.IMAGE]: (\n (url || localUrl)\n ? (\n <ImageRenderer\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__image\"\n url={thumbnailUrl || url || localUrl}\n alt=\"image\"\n width={messageWidth}\n height=\"270px\"\n placeHolder={memorizedThumbnailPlaceHolder(IconTypes.PHOTO)}\n />\n )\n : (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__image--icon\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n )\n ),\n [SUPPORTING_TYPES.UNSUPPORTED]: (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__unknown\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n ),\n }[getSupportingFileType(type)]\n }\n </div>\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-thumbnail-message__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-thumbnail-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-thumbnail-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 <div\n className=\"sendbird-openchannel-thumbnail-message__context-menu\"\n ref={contextMenuRef}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n showMenuTrigger({ message, userId, status }) && (\n <IconButton\n className=\"sendbird-openchannel-thumbnail-message__context-menu--icon\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\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 isFineResend({ message, userId, status }) && (\n <MenuItem\n onClick={() => {\n resendMessage(message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__RESEND}\n </MenuItem>\n )\n }\n {\n isFineDelete({ message, userId, status }) && (\n <MenuItem\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 </div>\n );\n}\n"],"names":["SUPPORTING_TYPES","IMAGE","VIDEO","UNSUPPORTED","SUPPORTED_MIMES","getSupportingFileType","type","indexOf","OpenchannelThumbnailMessage","_a","className","message","isOperator","disabled","userId","chainTop","onClick","showRemove","resendMessage","url","thumbnails","localUrl","status","sendingStatus","thumbnailUrl","length","_c","useLocalization","stringSet","dateLocale","_d","useContext","UserProfileContext","disableUserProfile","renderUserProfile","_e","useState","messageWidth","setMessageWidth","messageRef","useRef","contextMenuRef","avatarRef","memorizedThumbnailPlaceHolder","useMemo","style","React","IconColors","ON_BACKGROUND_2","isMessageSent","checkIsSent","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","useEffect","thumbnailWidth","current","clientWidth","__spreadArray","Array","isArray","join","toggleDropdown","profileUrl","closeDropdown","paddingTop","paddingBottom","user","close","UserProfile","LabelTypography","CAPTION_2","LabelColors","SECONDARY_3","ONBACKGROUND_2","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","_b","IconTypes","PLAY","PHOTO","SPINNER","PRIMARY","ERROR","showMenuTrigger","MORE","CONTENT_INVERSE","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":"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"}
1
+ {"version":3,"file":"OpenchannelThumbnailMessage.js","sources":["../../src/ui/OpenchannelThumbnailMessage/utils.ts","../../src/ui/OpenchannelThumbnailMessage/index.tsx"],"sourcesContent":["export const SUPPORTING_TYPES = {\n IMAGE: 'IMAGE',\n VIDEO: 'VIDEO',\n UNSUPPORTED: 'UNSUPPORTED',\n};\n\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/webp',\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const getSupportingFileType = (type: string): string => {\n if (SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0) {\n return SUPPORTING_TYPES.IMAGE;\n }\n if (SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0) {\n return SUPPORTING_TYPES.VIDEO;\n }\n return SUPPORTING_TYPES.UNSUPPORTED;\n}\n","import React, {\n useRef,\n useMemo,\n useState,\n useEffect,\n useContext,\n} from 'react';\nimport { FileMessage } from '@sendbird/chat/message';\nimport format from 'date-fns/format';\nimport './index.scss';\nimport { SUPPORTING_TYPES, getSupportingFileType } from './utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nimport Avatar from '../Avatar';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport IconButton from '../IconButton';\nimport ImageRenderer from '../ImageRenderer';\nimport Label, { LabelTypography, LabelColors } from '../Label';\nimport Loader from '../Loader';\nimport UserProfile from '../UserProfile';\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport {\n checkIsSent,\n checkIsPending,\n checkIsFailed,\n isFineResend,\n isFineDelete,\n showMenuTrigger,\n} from '../../utils/openChannelUtils';\nimport { getSenderFromMessage } from '../../utils/openChannelUtils';\n\ninterface LocalUrl {\n localUrl?: string;\n}\ninterface Props {\n className?: string | Array<string>;\n message: FileMessage;\n isOperator?: boolean;\n disabled: boolean;\n userId: string;\n chainTop: boolean;\n chainBottom: boolean;\n onClick(bool: boolean): void,\n showRemove(bool: boolean): void,\n resendMessage(message: FileMessage): void;\n}\n\nexport default function OpenchannelThumbnailMessage({\n className,\n message,\n isOperator,\n disabled,\n userId,\n chainTop,\n onClick,\n showRemove,\n resendMessage,\n}: Props): JSX.Element {\n const {\n type,\n url,\n thumbnails,\n localUrl,\n }: FileMessage & LocalUrl = message;\n const status = message?.sendingStatus;\n const thumbnailUrl = (thumbnails && thumbnails.length > 0 && thumbnails[0].url) || null;\n const { stringSet, dateLocale } = useLocalization();\n const { disableUserProfile, renderUserProfile } = useContext(UserProfileContext);\n const [messageWidth, setMessageWidth] = useState(360);\n const messageRef = useRef(null);\n const contextMenuRef = useRef(null);\n const avatarRef = useRef(null);\n\n const memorizedThumbnailPlaceHolder = useMemo(() => (type) => ({ style }) => ( // eslint-disable-line\n <div style={style}>\n <Icon\n type={type}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n ), []);\n\n const isMessageSent = checkIsSent(status);\n const isPending = checkIsPending(status);\n const isFailed = checkIsFailed(status);\n const sender = getSenderFromMessage(message);\n\n useEffect(() => {\n const thumbnailWidth = messageRef?.current?.clientWidth - 80;\n setMessageWidth(thumbnailWidth > 360 ? 360 : thumbnailWidth);\n }, []);\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-openchannel-thumbnail-message',\n ].join(' ')}\n ref={messageRef}\n >\n <div className=\"sendbird-openchannel-thumbnail-message__left\">\n {\n !chainTop && (\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-openchannel-thumbnail-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-thumbnail-message__right\">\n {\n !chainTop && (\n <div className=\"sendbird-openchannel-thumbnail-message__right__title\">\n <Label\n className=\"sendbird-openchannel-thumbnail-message__right__title__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-thumbnail-message__right__title__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-thumbnail-message__right__body\">\n <div\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap\"\n role=\"button\"\n onClick={() => {\n if (isMessageSent) {\n onClick(true);\n }\n }}\n onKeyDown={() => {\n if (isMessageSent) {\n onClick(true);\n }\n }}\n tabIndex={0}\n >\n <div className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__overlay\" />\n {\n {\n [SUPPORTING_TYPES.VIDEO]: (\n (url || localUrl)\n ? (\n <div className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video\" >\n {\n (thumbnailUrl)\n ? (\n <ImageRenderer\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video\"\n url={thumbnailUrl}\n width={messageWidth}\n height=\"270px\"\n alt=\"image\"\n placeHolder={memorizedThumbnailPlaceHolder(IconTypes.PLAY)}\n />\n )\n : (\n <video className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video__video\">\n <source src={url || localUrl} type={type} />\n </video>\n )\n }\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video__icon\"\n type={IconTypes.PLAY}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n </div>\n )\n : (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__video--icon\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n )\n ),\n [SUPPORTING_TYPES.IMAGE]: (\n (url || localUrl)\n ? (\n <ImageRenderer\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__image\"\n url={thumbnailUrl || url || localUrl}\n alt=\"image\"\n width={messageWidth}\n height=\"270px\"\n placeHolder={memorizedThumbnailPlaceHolder(IconTypes.PHOTO)}\n />\n )\n : (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__image--icon\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n )\n ),\n [SUPPORTING_TYPES.UNSUPPORTED]: (\n <Icon\n className=\"sendbird-openchannel-thumbnail-message__right__body__wrap__unknown\"\n type={IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"56px\"\n height=\"56px\"\n />\n ),\n }[getSupportingFileType(type)]\n }\n </div>\n </div>\n {\n (isPending || isFailed) && (\n <div className=\"sendbird-openchannel-thumbnail-message__right__tail\">\n {\n isPending && (\n <Loader\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n className=\"sendbird-openchannel-thumbnail-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-thumbnail-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 <div\n className=\"sendbird-openchannel-thumbnail-message__context-menu\"\n ref={contextMenuRef}\n >\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n showMenuTrigger({ message, userId, status }) && (\n <IconButton\n className=\"sendbird-openchannel-thumbnail-message__context-menu--icon\"\n width=\"32px\"\n height=\"32px\"\n onClick={toggleDropdown}\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 isFineResend({ message, userId, status }) && (\n <MenuItem\n onClick={() => {\n resendMessage(message);\n closeDropdown();\n }}\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__RESEND}\n </MenuItem>\n )\n }\n {\n isFineDelete({ message, userId, status }) && (\n <MenuItem\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 </div>\n );\n}\n"],"names":["SUPPORTING_TYPES","IMAGE","VIDEO","UNSUPPORTED","SUPPORTED_MIMES","getSupportingFileType","type","indexOf","OpenchannelThumbnailMessage","_a","className","message","isOperator","disabled","userId","chainTop","onClick","showRemove","resendMessage","url","thumbnails","localUrl","status","sendingStatus","thumbnailUrl","length","_c","useLocalization","stringSet","dateLocale","_d","useContext","UserProfileContext","disableUserProfile","renderUserProfile","_e","useState","messageWidth","setMessageWidth","messageRef","useRef","contextMenuRef","avatarRef","memorizedThumbnailPlaceHolder","useMemo","style","React","IconColors","ON_BACKGROUND_2","isMessageSent","checkIsSent","isPending","checkIsPending","isFailed","checkIsFailed","sender","getSenderFromMessage","useEffect","thumbnailWidth","current","clientWidth","__spreadArray","Array","isArray","join","toggleDropdown","profileUrl","closeDropdown","paddingTop","paddingBottom","user","close","UserProfile","LabelTypography","CAPTION_2","LabelColors","SECONDARY_3","ONBACKGROUND_2","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","_b","IconTypes","PLAY","PHOTO","SPINNER","PRIMARY","ERROR","showMenuTrigger","MORE","CONTENT_INVERSE","isFineResend","CONTEXT_MENU_DROPDOWN__RESEND","isFineDelete","CONTEXT_MENU_DROPDOWN__DELETE"],"mappings":"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"}
@@ -1,30 +1,31 @@
1
- import { a as __spreadArray } from '../tslib.es6-84f8edfa.js';
1
+ import { a as __spreadArray } from '../tslib.es6-9643c112.js';
2
2
  import React__default, { useContext, useRef, useState, useMemo, useEffect } from 'react';
3
- import { f as format } from '../index-2db9735a.js';
3
+ import { f as format } from '../index-5bebcb3a.js';
4
4
  import Avatar from './Avatar.js';
5
5
  import ContextMenu, { MenuItems, MenuItem } from './ContextMenu.js';
6
6
  import Icon, { IconTypes, IconColors } from './Icon.js';
7
7
  import IconButton from './IconButton.js';
8
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-c2f20322.js';
8
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-e7e5efcf.js';
9
9
  import Loader from './Loader.js';
10
10
  import ConnectedUserProfile from './UserProfile.js';
11
- import { a as UserProfileContext } from '../UserProfileContext-58463608.js';
12
- import { u as useLocalization } from '../LocalizationContext-a6f8fb25.js';
13
- import { c as copyToClipboard } from '../utils-84904138.js';
14
- import { u as uuidv4 } from '../uuid-bd74c65a.js';
15
- import { g as getSenderFromMessage, s as showMenuTrigger, i as isFineCopy, a as isFineEdit, b as isFineResend, c as isFineDelete, d as checkIsPending, e as checkIsFailed } from '../openChannelUtils-c694c77d.js';
16
- import '../index-fb7fd76d.js';
11
+ import { a as UserProfileContext } from '../UserProfileContext-efa87f83.js';
12
+ import { u as useLocalization } from '../LocalizationContext-6a3c0561.js';
13
+ import { c as copyToClipboard } from '../utils-7bc7f35b.js';
14
+ import { u as uuidv4 } from '../uuid-dacf1460.js';
15
+ import { g as getSenderFromMessage, s as showMenuTrigger, i as isFineCopy, a as isFineEdit, b as isFineResend, c as isFineDelete, d as checkIsPending, e as checkIsFailed } from '../openChannelUtils-72e02367.js';
16
+ import '../index-8287486d.js';
17
17
  import './ImageRenderer.js';
18
18
  import 'prop-types';
19
19
  import 'react-dom';
20
20
  import './SortByRow.js';
21
- import '../index-cc905e95.js';
22
- import '../stringSet-ed906148.js';
21
+ import '../index-594499d8.js';
22
+ import '../utils/message/getOutgoingMessageState.js';
23
+ import '../stringSet-dc01885c.js';
23
24
  import '../withSendbird.js';
24
- import '../_rollupPluginBabelHelpers-b9099c54.js';
25
+ import '../_rollupPluginBabelHelpers-0bee2425.js';
25
26
  import '../sendbirdSelectors.js';
26
- import '../topics-398017ae.js';
27
- import '../utils-dc344408.js';
27
+ import '../topics-57d99208.js';
28
+ import '../utils-8ff877ec.js';
28
29
  import './Button.js';
29
30
 
30
31
  function OpenchannelUserMessage(_a) {
@@ -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","uuidv4","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_2","concat","MESSAGE_EDITED","useEffect","current","clientHeight","top","window","innerWidth","__spreadArray","Array","isArray","join","toggleDropdown","profileUrl","closeDropdown","paddingTop","paddingBottom","user","close","UserProfile","CAPTION_2","SECONDARY_3","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","ONBACKGROUND_1","IconTypes","SPINNER","IconColors","PRIMARY","ERROR","showMenuTrigger","MORE","CONTENT_INVERSE","isFineCopy","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 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","uuidv4","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_2","concat","MESSAGE_EDITED","useEffect","current","clientHeight","top","window","innerWidth","__spreadArray","Array","isArray","join","toggleDropdown","profileUrl","closeDropdown","paddingTop","paddingBottom","user","close","UserProfile","CAPTION_2","SECONDARY_3","friendName","nickname","CAPTION_3","ONBACKGROUND_3","createdAt","format","locale","ONBACKGROUND_1","IconTypes","SPINNER","IconColors","PRIMARY","ERROR","showMenuTrigger","MORE","CONTENT_INVERSE","isFineCopy","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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"}
package/ui/PlaceHolder.js CHANGED
@@ -1,11 +1,11 @@
1
- import '../tslib.es6-84f8edfa.js';
1
+ import '../tslib.es6-9643c112.js';
2
2
  import 'react';
3
- export { a as PlaceHolderTypes, P as default } from '../index-4ac20b5a.js';
4
- import '../LocalizationContext-a6f8fb25.js';
3
+ export { a as PlaceHolderTypes, P as default } from '../index-3427b39f.js';
4
+ import '../LocalizationContext-6a3c0561.js';
5
5
  import './Icon.js';
6
- import '../index-c2f20322.js';
6
+ import '../index-e7e5efcf.js';
7
7
  import './Loader.js';
8
- import '../stringSet-ed906148.js';
9
- import '../index-fb7fd76d.js';
8
+ import '../stringSet-dc01885c.js';
9
+ import '../index-8287486d.js';
10
10
  import 'prop-types';
11
11
  //# sourceMappingURL=PlaceHolder.js.map
@@ -1,13 +1,14 @@
1
1
  import React__default, { useContext, useState } from 'react';
2
2
  import Icon, { IconTypes, IconColors } from './Icon.js';
3
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-c2f20322.js';
3
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-e7e5efcf.js';
4
4
  import ImageRenderer from './ImageRenderer.js';
5
- import { a as LocalizationContext } from '../LocalizationContext-a6f8fb25.js';
6
- import { M as getUIKitFileTypes, k as getClassName, u as isUserMessage, p as isThumbnailMessage, B as isVideo, N as isGif, n as isFileMessage, A as isSupportedFileView, L as getUIKitFileType, t as truncateString } from '../index-cc905e95.js';
5
+ import { a as LocalizationContext } from '../LocalizationContext-6a3c0561.js';
6
+ import { K as getUIKitFileTypes, h as getClassName, r as isUserMessage, n as isThumbnailMessage, z as isVideo, L as isGif, l as isFileMessage, y as isSupportedFileView, J as getUIKitFileType, t as truncateString } from '../index-594499d8.js';
7
7
  import 'prop-types';
8
- import '../stringSet-ed906148.js';
9
- import '../tslib.es6-84f8edfa.js';
10
- import '../index-fb7fd76d.js';
8
+ import '../stringSet-dc01885c.js';
9
+ import '../tslib.es6-9643c112.js';
10
+ import '../index-8287486d.js';
11
+ import '../utils/message/getOutgoingMessageState.js';
11
12
 
12
13
  function QuoteMessage(_a) {
13
14
  var _b;
@@ -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","IconTypes","REPLY","IconColors","ON_BACKGROUND_3","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_3","concat","QUOTED_MESSAGE__REPLIED_TO","isUserMessage","_e","length","BODY_2","ONBACKGROUND_1","isThumbnailMessage","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 >\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","IconTypes","REPLY","IconColors","ON_BACKGROUND_3","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_3","concat","QUOTED_MESSAGE__REPLIED_TO","isUserMessage","_e","length","BODY_2","ONBACKGROUND_1","isThumbnailMessage","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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"}