@sendbird/uikit-react 3.4.4 → 3.4.5

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 (552) hide show
  1. package/App.js +47 -42
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +80 -0
  4. package/Channel/components/ChannelHeader.js +19 -19
  5. package/Channel/components/ChannelUI.js +39 -35
  6. package/Channel/components/ChannelUI.js.map +1 -1
  7. package/Channel/components/FileViewer.js +15 -15
  8. package/Channel/components/FrozenNotification.js +4 -4
  9. package/Channel/components/Message.js +43 -39
  10. package/Channel/components/Message.js.map +1 -1
  11. package/Channel/components/MessageInput.js +27 -24
  12. package/Channel/components/MessageInput.js.map +1 -1
  13. package/Channel/components/MessageList.js +65 -62
  14. package/Channel/components/MessageList.js.map +1 -1
  15. package/Channel/components/RemoveMessageModal.js +17 -17
  16. package/Channel/components/SuggestedMentionList.js +17 -17
  17. package/Channel/components/TypingIndicator.js +15 -15
  18. package/Channel/components/UnreadCount.js +4 -4
  19. package/Channel/context.js +14 -14
  20. package/Channel.js +40 -35
  21. package/Channel.js.map +1 -1
  22. package/ChannelList/components/AddChannel.js +15 -15
  23. package/ChannelList/components/ChannelListHeader.js +6 -6
  24. package/ChannelList/components/ChannelListUI.js +40 -62
  25. package/ChannelList/components/ChannelListUI.js.map +1 -1
  26. package/ChannelList/components/ChannelPreview.js +26 -26
  27. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  28. package/ChannelList/context.js +8 -8
  29. package/ChannelList.js +30 -30
  30. package/{ChannelListProvider-3c107fc7.js → ChannelListProvider-10fe7340.js} +18 -12
  31. package/ChannelListProvider-10fe7340.js.map +1 -0
  32. package/{ChannelProvider-28639e83.js → ChannelProvider-4ac82784.js} +32 -32
  33. package/ChannelProvider-4ac82784.js.map +1 -0
  34. package/ChannelSettings/components/ChannelProfile.js +11 -11
  35. package/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  36. package/ChannelSettings/components/EditDetailsModal.js +11 -11
  37. package/ChannelSettings/components/LeaveChannel.js +11 -11
  38. package/ChannelSettings/components/ModerationPanel.js +14 -14
  39. package/ChannelSettings/components/UserListItem.js +10 -10
  40. package/ChannelSettings/components/UserPanel.js +13 -13
  41. package/ChannelSettings/context.js +3 -3
  42. package/ChannelSettings.js +17 -17
  43. package/CreateChannel/components/CreateChannelUI.js +13 -13
  44. package/CreateChannel/components/InviteUsers.js +13 -13
  45. package/CreateChannel/components/SelectChannelType.js +10 -10
  46. package/CreateChannel/context.js +4 -4
  47. package/CreateChannel.js +13 -13
  48. package/{CreateChannelProvider-09772304.js → CreateChannelProvider-11045f46.js} +1 -1
  49. package/{CreateChannelProvider-09772304.js.map → CreateChannelProvider-11045f46.js.map} +1 -1
  50. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  51. package/CreateOpenChannel/context.js +1 -1
  52. package/CreateOpenChannel.js +9 -9
  53. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  54. package/EditUserProfile.js +12 -12
  55. package/{LocalizationContext-ef72d4b1.js → LocalizationContext-654ae04f.js} +3 -3
  56. package/{LocalizationContext-ef72d4b1.js.map → LocalizationContext-654ae04f.js.map} +1 -1
  57. package/{MediaQueryContext-683c7242.js → MediaQueryContext-e791a4d1.js} +1 -1
  58. package/{MediaQueryContext-683c7242.js.map → MediaQueryContext-e791a4d1.js.map} +1 -1
  59. package/{MemberList-0bc3ff4a.js → MemberList-6f3c8288.js} +5 -5
  60. package/{MemberList-0bc3ff4a.js.map → MemberList-6f3c8288.js.map} +1 -1
  61. package/Message/context.js +30 -0
  62. package/Message/context.js.map +1 -0
  63. package/MessageSearch/components/MessageSearchUI.js +11 -11
  64. package/MessageSearch/context.js +1 -1
  65. package/MessageSearch.js +11 -11
  66. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  67. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  68. package/OpenChannel/components/OpenChannelInput.js +19 -16
  69. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  70. package/OpenChannel/components/OpenChannelMessage.js +28 -24
  71. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  72. package/OpenChannel/components/OpenChannelMessageList.js +58 -38
  73. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  74. package/OpenChannel/components/OpenChannelUI.js +31 -27
  75. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  76. package/OpenChannel/context.js +8 -8
  77. package/OpenChannel.js +31 -27
  78. package/OpenChannel.js.map +1 -1
  79. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  80. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  81. package/OpenChannelList/context.js +3 -3
  82. package/OpenChannelList.js +13 -13
  83. package/{OpenChannelListProvider-e5246224.js → OpenChannelListProvider-eb189b41.js} +3 -3
  84. package/{OpenChannelListProvider-e5246224.js.map → OpenChannelListProvider-eb189b41.js.map} +1 -1
  85. package/{OpenChannelProvider-c5952f33.js → OpenChannelProvider-e418b369.js} +7 -7
  86. package/{OpenChannelProvider-c5952f33.js.map → OpenChannelProvider-e418b369.js.map} +1 -1
  87. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  88. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  89. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  90. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  91. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  92. package/OpenChannelSettings/context.js +3 -3
  93. package/OpenChannelSettings.js +17 -17
  94. package/README.md +3 -2
  95. package/{RemoveMessageModal-63a8b079.js → RemoveMessageModal-938b400d.js} +3 -3
  96. package/{RemoveMessageModal-63a8b079.js.map → RemoveMessageModal-938b400d.js.map} +1 -1
  97. package/SendbirdProvider.js +93 -14
  98. package/SendbirdProvider.js.map +1 -1
  99. package/Thread/components/ParentMessageInfo.js +32 -28
  100. package/Thread/components/ParentMessageInfo.js.map +1 -1
  101. package/Thread/components/ParentMessageInfoItem.js +43 -45
  102. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  103. package/Thread/components/ThreadHeader.js +6 -6
  104. package/Thread/components/ThreadList.js +48 -36
  105. package/Thread/components/ThreadList.js.map +1 -1
  106. package/Thread/components/ThreadListItem.js +34 -30
  107. package/Thread/components/ThreadListItem.js.map +1 -1
  108. package/Thread/components/ThreadMessageInput.js +28 -25
  109. package/Thread/components/ThreadMessageInput.js.map +1 -1
  110. package/Thread/components/ThreadUI.js +66 -58
  111. package/Thread/components/ThreadUI.js.map +1 -1
  112. package/Thread/context.js +8 -8
  113. package/Thread.js +44 -40
  114. package/Thread.js.map +1 -1
  115. package/{ThreadProvider-435a6f11.js → ThreadProvider-faf3df5d.js} +7 -7
  116. package/{ThreadProvider-435a6f11.js.map → ThreadProvider-faf3df5d.js.map} +1 -1
  117. package/{UserProfileContext-5d7c5f9f.js → UserProfileContext-1996d4d2.js} +1 -1
  118. package/{UserProfileContext-5d7c5f9f.js.map → UserProfileContext-1996d4d2.js.map} +1 -1
  119. package/{VoiceMessageInputWrapper-8a9dda68.js → VoiceMessageInputWrapper-59373f20.js} +7 -7
  120. package/{VoiceMessageInputWrapper-8a9dda68.js.map → VoiceMessageInputWrapper-59373f20.js.map} +1 -1
  121. package/VoicePlayer/context.js +3 -3
  122. package/VoicePlayer/useVoicePlayer.js +3 -3
  123. package/VoiceRecorder/context.js +2 -2
  124. package/VoiceRecorder/useVoiceRecorder.js +2 -2
  125. package/{_rollupPluginBabelHelpers-37cba0d6.js → _rollupPluginBabelHelpers-e908c50d.js} +1 -1
  126. package/_rollupPluginBabelHelpers-e908c50d.js.map +1 -0
  127. package/{actionTypes-80e9dbe4.js → actionTypes-ee7f96a9.js} +1 -1
  128. package/{actionTypes-80e9dbe4.js.map → actionTypes-ee7f96a9.js.map} +1 -1
  129. package/cjs/App.js +47 -42
  130. package/cjs/App.js.map +1 -1
  131. package/cjs/Channel/components/ChannelHeader.js +19 -19
  132. package/cjs/Channel/components/ChannelUI.js +39 -35
  133. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  134. package/cjs/Channel/components/FileViewer.js +15 -15
  135. package/cjs/Channel/components/FrozenNotification.js +4 -4
  136. package/cjs/Channel/components/Message.js +43 -39
  137. package/cjs/Channel/components/Message.js.map +1 -1
  138. package/cjs/Channel/components/MessageInput.js +27 -24
  139. package/cjs/Channel/components/MessageInput.js.map +1 -1
  140. package/cjs/Channel/components/MessageList.js +65 -62
  141. package/cjs/Channel/components/MessageList.js.map +1 -1
  142. package/cjs/Channel/components/RemoveMessageModal.js +17 -17
  143. package/cjs/Channel/components/SuggestedMentionList.js +17 -17
  144. package/cjs/Channel/components/TypingIndicator.js +15 -15
  145. package/cjs/Channel/components/UnreadCount.js +4 -4
  146. package/cjs/Channel/context.js +14 -14
  147. package/cjs/Channel.js +40 -35
  148. package/cjs/Channel.js.map +1 -1
  149. package/cjs/ChannelList/components/AddChannel.js +15 -15
  150. package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
  151. package/cjs/ChannelList/components/ChannelListUI.js +39 -61
  152. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  153. package/cjs/ChannelList/components/ChannelPreview.js +26 -26
  154. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  155. package/cjs/ChannelList/context.js +8 -8
  156. package/cjs/ChannelList.js +30 -30
  157. package/cjs/{ChannelListProvider-b7ffadf7.js → ChannelListProvider-d4f91fc4.js} +18 -12
  158. package/cjs/ChannelListProvider-d4f91fc4.js.map +1 -0
  159. package/cjs/{ChannelProvider-b963c72c.js → ChannelProvider-af0b997c.js} +32 -32
  160. package/cjs/ChannelProvider-af0b997c.js.map +1 -0
  161. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  162. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  163. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  164. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  165. package/cjs/ChannelSettings/components/ModerationPanel.js +14 -14
  166. package/cjs/ChannelSettings/components/UserListItem.js +10 -10
  167. package/cjs/ChannelSettings/components/UserPanel.js +13 -13
  168. package/cjs/ChannelSettings/context.js +3 -3
  169. package/cjs/ChannelSettings.js +17 -17
  170. package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
  171. package/cjs/CreateChannel/components/InviteUsers.js +13 -13
  172. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  173. package/cjs/CreateChannel/context.js +4 -4
  174. package/cjs/CreateChannel.js +13 -13
  175. package/cjs/{CreateChannelProvider-ea54c83b.js → CreateChannelProvider-c4ad28a8.js} +1 -1
  176. package/cjs/{CreateChannelProvider-ea54c83b.js.map → CreateChannelProvider-c4ad28a8.js.map} +1 -1
  177. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  178. package/cjs/CreateOpenChannel/context.js +1 -1
  179. package/cjs/CreateOpenChannel.js +9 -9
  180. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  181. package/cjs/EditUserProfile.js +12 -12
  182. package/cjs/{LocalizationContext-4822793b.js → LocalizationContext-01fceac0.js} +3 -3
  183. package/cjs/{LocalizationContext-4822793b.js.map → LocalizationContext-01fceac0.js.map} +1 -1
  184. package/cjs/{MediaQueryContext-b83880cc.js → MediaQueryContext-4978c777.js} +1 -1
  185. package/cjs/{MediaQueryContext-b83880cc.js.map → MediaQueryContext-4978c777.js.map} +1 -1
  186. package/cjs/{MemberList-4cfc05a3.js → MemberList-5c05b62f.js} +5 -5
  187. package/cjs/{MemberList-4cfc05a3.js.map → MemberList-5c05b62f.js.map} +1 -1
  188. package/cjs/Message/context.js +39 -0
  189. package/cjs/Message/context.js.map +1 -0
  190. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  191. package/cjs/MessageSearch/context.js +1 -1
  192. package/cjs/MessageSearch.js +11 -11
  193. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  194. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  195. package/cjs/OpenChannel/components/OpenChannelInput.js +19 -16
  196. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  197. package/cjs/OpenChannel/components/OpenChannelMessage.js +28 -24
  198. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  199. package/cjs/OpenChannel/components/OpenChannelMessageList.js +58 -38
  200. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  201. package/cjs/OpenChannel/components/OpenChannelUI.js +31 -27
  202. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  203. package/cjs/OpenChannel/context.js +8 -8
  204. package/cjs/OpenChannel.js +31 -27
  205. package/cjs/OpenChannel.js.map +1 -1
  206. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  207. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  208. package/cjs/OpenChannelList/context.js +3 -3
  209. package/cjs/OpenChannelList.js +13 -13
  210. package/cjs/{OpenChannelListProvider-9fc6f344.js → OpenChannelListProvider-3be4b8a5.js} +3 -3
  211. package/cjs/{OpenChannelListProvider-9fc6f344.js.map → OpenChannelListProvider-3be4b8a5.js.map} +1 -1
  212. package/cjs/{OpenChannelProvider-64fb7652.js → OpenChannelProvider-56af9a0e.js} +7 -7
  213. package/cjs/{OpenChannelProvider-64fb7652.js.map → OpenChannelProvider-56af9a0e.js.map} +1 -1
  214. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  215. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  216. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  217. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  218. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  219. package/cjs/OpenChannelSettings/context.js +3 -3
  220. package/cjs/OpenChannelSettings.js +17 -17
  221. package/cjs/{RemoveMessageModal-00de23ec.js → RemoveMessageModal-31ff9edc.js} +3 -3
  222. package/cjs/{RemoveMessageModal-00de23ec.js.map → RemoveMessageModal-31ff9edc.js.map} +1 -1
  223. package/cjs/SendbirdProvider.js +92 -13
  224. package/cjs/SendbirdProvider.js.map +1 -1
  225. package/cjs/Thread/components/ParentMessageInfo.js +32 -28
  226. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  227. package/cjs/Thread/components/ParentMessageInfoItem.js +42 -44
  228. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  229. package/cjs/Thread/components/ThreadHeader.js +6 -6
  230. package/cjs/Thread/components/ThreadList.js +48 -36
  231. package/cjs/Thread/components/ThreadList.js.map +1 -1
  232. package/cjs/Thread/components/ThreadListItem.js +34 -30
  233. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  234. package/cjs/Thread/components/ThreadMessageInput.js +28 -25
  235. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  236. package/cjs/Thread/components/ThreadUI.js +67 -59
  237. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  238. package/cjs/Thread/context.js +8 -8
  239. package/cjs/Thread.js +44 -40
  240. package/cjs/Thread.js.map +1 -1
  241. package/cjs/{ThreadProvider-93f2b7e5.js → ThreadProvider-12784adf.js} +7 -7
  242. package/cjs/{ThreadProvider-93f2b7e5.js.map → ThreadProvider-12784adf.js.map} +1 -1
  243. package/cjs/{UserProfileContext-7bc4eec4.js → UserProfileContext-c4642438.js} +1 -1
  244. package/cjs/{UserProfileContext-7bc4eec4.js.map → UserProfileContext-c4642438.js.map} +1 -1
  245. package/cjs/{VoiceMessageInputWrapper-82c8ef13.js → VoiceMessageInputWrapper-3b5db880.js} +7 -7
  246. package/cjs/{VoiceMessageInputWrapper-82c8ef13.js.map → VoiceMessageInputWrapper-3b5db880.js.map} +1 -1
  247. package/cjs/VoicePlayer/context.js +3 -3
  248. package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
  249. package/cjs/VoiceRecorder/context.js +2 -2
  250. package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
  251. package/cjs/{_rollupPluginBabelHelpers-1218aafb.js → _rollupPluginBabelHelpers-994cd1da.js} +1 -1
  252. package/cjs/_rollupPluginBabelHelpers-994cd1da.js.map +1 -0
  253. package/cjs/{actionTypes-f186c4dd.js → actionTypes-38d53eaf.js} +1 -1
  254. package/cjs/{actionTypes-f186c4dd.js.map → actionTypes-38d53eaf.js.map} +1 -1
  255. package/cjs/{color-937f65ad.js → color-8f9fe57f.js} +1 -1
  256. package/cjs/{color-937f65ad.js.map → color-8f9fe57f.js.map} +1 -1
  257. package/cjs/{compareIds-3d732a01.js → compareIds-b77b66f3.js} +1 -1
  258. package/cjs/{compareIds-3d732a01.js.map → compareIds-b77b66f3.js.map} +1 -1
  259. package/cjs/{const-44ac2c14.js → const-35f8be84.js} +1 -1
  260. package/cjs/{const-44ac2c14.js.map → const-35f8be84.js.map} +1 -1
  261. package/cjs/{const-73aa22ac.js → const-e03cb4c1.js} +1 -1
  262. package/cjs/{const-73aa22ac.js.map → const-e03cb4c1.js.map} +1 -1
  263. package/cjs/{consts-2b0eaee0.js → consts-69fc20be.js} +1 -1
  264. package/cjs/{consts-2b0eaee0.js.map → consts-69fc20be.js.map} +1 -1
  265. package/cjs/consts-956b1221.js +6 -0
  266. package/cjs/consts-956b1221.js.map +1 -0
  267. package/cjs/consts-aabb33e0.js +6 -0
  268. package/cjs/consts-aabb33e0.js.map +1 -0
  269. package/cjs/{consts-11872691.js → consts-b29bd4d5.js} +1 -1
  270. package/cjs/{consts-11872691.js.map → consts-b29bd4d5.js.map} +1 -1
  271. package/cjs/{context-7e270322.js → context-d9e248df.js} +2 -2
  272. package/cjs/{context-7e270322.js.map → context-d9e248df.js.map} +1 -1
  273. package/cjs/dist/index.css +89 -81
  274. package/cjs/dist/index.css.map +1 -1
  275. package/cjs/{index-a867516a.js → index-1e57cbdb.js} +4 -4
  276. package/cjs/{index-a867516a.js.map → index-1e57cbdb.js.map} +1 -1
  277. package/cjs/{index-f78cff63.js → index-1f02e60f.js} +2 -2
  278. package/cjs/{index-f78cff63.js.map → index-1f02e60f.js.map} +1 -1
  279. package/cjs/{index-7207d339.js → index-26a1e861.js} +11 -5
  280. package/cjs/index-26a1e861.js.map +1 -0
  281. package/cjs/{index-57989185.js → index-36aaf992.js} +1 -1
  282. package/cjs/{index-57989185.js.map → index-36aaf992.js.map} +1 -1
  283. package/cjs/index-603c2a7c.js +63 -0
  284. package/cjs/index-603c2a7c.js.map +1 -0
  285. package/cjs/{index-2f2f3e43.js → index-72fd0294.js} +8 -2
  286. package/cjs/index-72fd0294.js.map +1 -0
  287. package/cjs/{index-1151a507.js → index-7c5d21c4.js} +1 -1
  288. package/cjs/{index-1151a507.js.map → index-7c5d21c4.js.map} +1 -1
  289. package/cjs/{index-cfff5dbb.js → index-959a4ab1.js} +2 -2
  290. package/cjs/{index-cfff5dbb.js.map → index-959a4ab1.js.map} +1 -1
  291. package/cjs/{index-f52caf82.js → index-a7fa406f.js} +2 -2
  292. package/cjs/{index-f52caf82.js.map → index-a7fa406f.js.map} +1 -1
  293. package/cjs/{index-aaa65319.js → index-aa908fcf.js} +7 -7
  294. package/cjs/{index-aaa65319.js.map → index-aa908fcf.js.map} +1 -1
  295. package/cjs/{index-a5fad93c.js → index-aeba3b06.js} +4 -4
  296. package/cjs/{index-a5fad93c.js.map → index-aeba3b06.js.map} +1 -1
  297. package/cjs/{index-c7ff34af.js → index-b9fbe704.js} +5 -5
  298. package/cjs/{index-c7ff34af.js.map → index-b9fbe704.js.map} +1 -1
  299. package/cjs/{index-e9d3a5d6.js → index-c825cf5b.js} +3 -3
  300. package/cjs/{index-e9d3a5d6.js.map → index-c825cf5b.js.map} +1 -1
  301. package/cjs/{index-3f30ab14.js → index-d41db9c1.js} +7 -7
  302. package/cjs/{index-3f30ab14.js.map → index-d41db9c1.js.map} +1 -1
  303. package/cjs/{index-20fc629b.js → index-e3f00fd1.js} +3 -3
  304. package/cjs/{index-20fc629b.js.map → index-e3f00fd1.js.map} +1 -1
  305. package/cjs/index.js +55 -51
  306. package/cjs/index.js.map +1 -1
  307. package/cjs/sendbirdSelectors.js +2 -2
  308. package/cjs/{stringSet-7f49973c.js → stringSet-7330b627.js} +1 -1
  309. package/cjs/{stringSet-7f49973c.js.map → stringSet-7330b627.js.map} +1 -1
  310. package/cjs/tokenize-a5a20ef3.js +134 -0
  311. package/cjs/tokenize-a5a20ef3.js.map +1 -0
  312. package/cjs/{topics-9d6a6d36.js → topics-7547922a.js} +1 -1
  313. package/cjs/{topics-9d6a6d36.js.map → topics-7547922a.js.map} +1 -1
  314. package/cjs/{tslib.es6-46c08a06.js → tslib.es6-ee1122c5.js} +1 -1
  315. package/cjs/{tslib.es6-46c08a06.js.map → tslib.es6-ee1122c5.js.map} +1 -1
  316. package/cjs/{types-31b11c88.js → types-7daeb4a1.js} +1 -1
  317. package/cjs/types-7daeb4a1.js.map +1 -0
  318. package/cjs/ui/Accordion.js +3 -3
  319. package/cjs/ui/AccordionGroup.js +2 -2
  320. package/cjs/ui/AdminMessage.js +3 -3
  321. package/cjs/ui/Avatar.js +2 -2
  322. package/cjs/ui/Badge.js +5 -5
  323. package/cjs/ui/BottomSheet.js +1 -1
  324. package/cjs/ui/Button.js +3 -3
  325. package/cjs/ui/ChannelAvatar.js +3 -3
  326. package/cjs/ui/ConnectionStatus.js +4 -4
  327. package/cjs/ui/ContextMenu.js +5 -5
  328. package/cjs/ui/DateSeparator.js +4 -4
  329. package/cjs/ui/EmojiReactions.js +7 -7
  330. package/cjs/ui/FileMessageItemBody.js +6 -6
  331. package/cjs/ui/FileViewer.js +8 -8
  332. package/cjs/ui/IconButton.js +1 -1
  333. package/cjs/ui/ImageRenderer.js +1 -1
  334. package/cjs/ui/Input.js +2 -2
  335. package/cjs/ui/Label.js +2 -2
  336. package/cjs/ui/LinkLabel.js +2 -2
  337. package/cjs/ui/Loader.js +1 -1
  338. package/cjs/ui/MentionLabel.js +12 -11
  339. package/cjs/ui/MentionLabel.js.map +1 -1
  340. package/cjs/ui/MentionUserLabel.js +1 -1
  341. package/cjs/ui/MessageContent.js +29 -25
  342. package/cjs/ui/MessageContent.js.map +1 -1
  343. package/cjs/ui/MessageInput.js +81 -52
  344. package/cjs/ui/MessageInput.js.map +1 -1
  345. package/cjs/ui/MessageItemMenu.js +8 -8
  346. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  347. package/cjs/ui/MessageSearchFileItem.js +10 -10
  348. package/cjs/ui/MessageSearchItem.js +9 -9
  349. package/cjs/ui/MessageStatus.js +10 -10
  350. package/cjs/ui/Modal.js +7 -7
  351. package/cjs/ui/OGMessageItemBody.js +26 -32
  352. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  353. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  354. package/cjs/ui/OpenChannelAvatar.js +6 -6
  355. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  356. package/cjs/ui/OpenchannelFileMessage.js +16 -16
  357. package/cjs/ui/OpenchannelOGMessage.js +48 -64
  358. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  359. package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
  360. package/cjs/ui/OpenchannelUserMessage.js +16 -16
  361. package/cjs/ui/PlaceHolder.js +6 -6
  362. package/cjs/ui/PlaybackTime.js +2 -2
  363. package/cjs/ui/QuoteMessage.js +6 -6
  364. package/cjs/ui/QuoteMessageInput.js +6 -6
  365. package/cjs/ui/ReactionBadge.js +3 -3
  366. package/cjs/ui/ReactionButton.js +1 -1
  367. package/cjs/ui/SortByRow.js +2 -2
  368. package/cjs/ui/TextButton.js +2 -2
  369. package/cjs/ui/TextMessageItemBody.js +25 -30
  370. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  371. package/cjs/ui/ThreadReplies.js +6 -6
  372. package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
  373. package/cjs/ui/Tooltip.js +3 -3
  374. package/cjs/ui/TooltipWrapper.js +1 -1
  375. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  376. package/cjs/ui/UserListItem.js +10 -10
  377. package/cjs/ui/UserProfile.js +9 -9
  378. package/cjs/ui/VoiceMessageItemBody.js +5 -5
  379. package/cjs/ui/VoiceMessgeInput.js +8 -8
  380. package/cjs/ui/Word.js +15 -10
  381. package/cjs/ui/Word.js.map +1 -1
  382. package/cjs/{useLongPress-839c53cb.js → useLongPress-3e3b1188.js} +3 -3
  383. package/cjs/{useLongPress-839c53cb.js.map → useLongPress-3e3b1188.js.map} +1 -1
  384. package/cjs/useSendbirdStateContext.js +1 -1
  385. package/cjs/utils/message/isVoiceMessage.js +2 -2
  386. package/cjs/{utils-dae078f4.js → utils-5905fc1a.js} +1 -1
  387. package/cjs/{utils-dae078f4.js.map → utils-5905fc1a.js.map} +1 -1
  388. package/cjs/{utils-7d2c966a.js → utils-5ca88bb6.js} +1 -1
  389. package/cjs/{utils-7d2c966a.js.map → utils-5ca88bb6.js.map} +1 -1
  390. package/cjs/{utils-9fc9438c.js → utils-de779857.js} +2 -2
  391. package/cjs/{utils-9fc9438c.js.map → utils-de779857.js.map} +1 -1
  392. package/cjs/{utils-41bb82dc.js → utils-e4cd6a0c.js} +1 -1
  393. package/cjs/{utils-41bb82dc.js.map → utils-e4cd6a0c.js.map} +1 -1
  394. package/cjs/{uuid-8454abf3.js → uuid-26b61f16.js} +1 -1
  395. package/cjs/{uuid-8454abf3.js.map → uuid-26b61f16.js.map} +1 -1
  396. package/cjs/withSendbird.js +1 -1
  397. package/{color-e5d40073.js → color-f6e2214f.js} +1 -1
  398. package/{color-e5d40073.js.map → color-f6e2214f.js.map} +1 -1
  399. package/{compareIds-148644b4.js → compareIds-d958887d.js} +1 -1
  400. package/{compareIds-148644b4.js.map → compareIds-d958887d.js.map} +1 -1
  401. package/{const-bf594206.js → const-735bcf5b.js} +1 -1
  402. package/{const-bf594206.js.map → const-735bcf5b.js.map} +1 -1
  403. package/{const-bba4efc9.js → const-c7334190.js} +1 -1
  404. package/{const-bba4efc9.js.map → const-c7334190.js.map} +1 -1
  405. package/consts-12512664.js +4 -0
  406. package/consts-12512664.js.map +1 -0
  407. package/consts-8f50899e.js +4 -0
  408. package/consts-8f50899e.js.map +1 -0
  409. package/{consts-b3042213.js → consts-9422accf.js} +1 -1
  410. package/{consts-b3042213.js.map → consts-9422accf.js.map} +1 -1
  411. package/{consts-f9543b99.js → consts-ddb92249.js} +1 -1
  412. package/{consts-f9543b99.js.map → consts-ddb92249.js.map} +1 -1
  413. package/{context-e82cf2c4.js → context-7465b898.js} +2 -2
  414. package/{context-e82cf2c4.js.map → context-7465b898.js.map} +1 -1
  415. package/dist/index.css +89 -81
  416. package/dist/index.css.map +1 -1
  417. package/{index-86cb1c98.js → index-0ecbda20.js} +4 -4
  418. package/{index-86cb1c98.js.map → index-0ecbda20.js.map} +1 -1
  419. package/{index-e3d008b9.js → index-12c44496.js} +1 -1
  420. package/{index-e3d008b9.js.map → index-12c44496.js.map} +1 -1
  421. package/{index-253052c7.js → index-437c0f3c.js} +7 -7
  422. package/{index-253052c7.js.map → index-437c0f3c.js.map} +1 -1
  423. package/{index-90365474.js → index-47d179f2.js} +2 -2
  424. package/{index-90365474.js.map → index-47d179f2.js.map} +1 -1
  425. package/{index-1dfb77d4.js → index-4c3eaeb7.js} +2 -2
  426. package/{index-1dfb77d4.js.map → index-4c3eaeb7.js.map} +1 -1
  427. package/{index-113d122f.js → index-63e7b57b.js} +5 -5
  428. package/{index-113d122f.js.map → index-63e7b57b.js.map} +1 -1
  429. package/{index-9a413f89.js → index-6e33b2e0.js} +3 -3
  430. package/{index-9a413f89.js.map → index-6e33b2e0.js.map} +1 -1
  431. package/{index-e571f56c.js → index-7b8ea67e.js} +4 -4
  432. package/{index-e571f56c.js.map → index-7b8ea67e.js.map} +1 -1
  433. package/{index-556999ef.js → index-83ae3ffe.js} +8 -3
  434. package/index-83ae3ffe.js.map +1 -0
  435. package/{index-2c0ab386.js → index-8e901b57.js} +11 -5
  436. package/index-8e901b57.js.map +1 -0
  437. package/{index-e1cff2ff.js → index-9626a87e.js} +3 -3
  438. package/{index-e1cff2ff.js.map → index-9626a87e.js.map} +1 -1
  439. package/{index-5be5af6d.js → index-a52a0b76.js} +7 -7
  440. package/{index-5be5af6d.js.map → index-a52a0b76.js.map} +1 -1
  441. package/index-ace292c2.js +57 -0
  442. package/index-ace292c2.js.map +1 -0
  443. package/{index-97a2ff37.js → index-aced8439.js} +2 -2
  444. package/{index-97a2ff37.js.map → index-aced8439.js.map} +1 -1
  445. package/{index-18c2f8d4.js → index-cf141ad7.js} +1 -1
  446. package/{index-18c2f8d4.js.map → index-cf141ad7.js.map} +1 -1
  447. package/index.d.ts +28 -1
  448. package/index.js +55 -51
  449. package/index.js.map +1 -1
  450. package/package.json +1 -1
  451. package/sendbirdSelectors.js +2 -2
  452. package/{stringSet-273bec27.js → stringSet-7c7d84fc.js} +1 -1
  453. package/{stringSet-273bec27.js.map → stringSet-7c7d84fc.js.map} +1 -1
  454. package/tokenize-8f238f49.js +130 -0
  455. package/tokenize-8f238f49.js.map +1 -0
  456. package/{topics-df7f51d4.js → topics-4697c2b3.js} +1 -1
  457. package/{topics-df7f51d4.js.map → topics-4697c2b3.js.map} +1 -1
  458. package/{tslib.es6-1aaf3795.js → tslib.es6-209c9f08.js} +1 -1
  459. package/{tslib.es6-1aaf3795.js.map → tslib.es6-209c9f08.js.map} +1 -1
  460. package/{types-ed183627.js → types-41ea68c8.js} +1 -1
  461. package/types-41ea68c8.js.map +1 -0
  462. package/ui/Accordion.js +3 -3
  463. package/ui/AccordionGroup.js +2 -2
  464. package/ui/AdminMessage.js +3 -3
  465. package/ui/Avatar.js +2 -2
  466. package/ui/Badge.js +5 -5
  467. package/ui/BottomSheet.js +1 -1
  468. package/ui/Button.js +3 -3
  469. package/ui/ChannelAvatar.js +3 -3
  470. package/ui/ConnectionStatus.js +4 -4
  471. package/ui/ContextMenu.js +5 -5
  472. package/ui/DateSeparator.js +4 -4
  473. package/ui/EmojiReactions.js +7 -7
  474. package/ui/FileMessageItemBody.js +6 -6
  475. package/ui/FileViewer.js +8 -8
  476. package/ui/IconButton.js +1 -1
  477. package/ui/ImageRenderer.js +1 -1
  478. package/ui/Input.js +2 -2
  479. package/ui/Label.js +2 -2
  480. package/ui/LinkLabel.js +2 -2
  481. package/ui/Loader.js +1 -1
  482. package/ui/MentionLabel.js +12 -11
  483. package/ui/MentionLabel.js.map +1 -1
  484. package/ui/MentionUserLabel.js +1 -1
  485. package/ui/MessageContent.js +29 -25
  486. package/ui/MessageContent.js.map +1 -1
  487. package/ui/MessageInput.js +81 -52
  488. package/ui/MessageInput.js.map +1 -1
  489. package/ui/MessageItemMenu.js +8 -8
  490. package/ui/MessageItemReactionMenu.js +5 -5
  491. package/ui/MessageSearchFileItem.js +10 -10
  492. package/ui/MessageSearchItem.js +9 -9
  493. package/ui/MessageStatus.js +10 -10
  494. package/ui/Modal.js +7 -7
  495. package/ui/OGMessageItemBody.js +26 -32
  496. package/ui/OGMessageItemBody.js.map +1 -1
  497. package/ui/OpenChannelAdminMessage.js +3 -3
  498. package/ui/OpenChannelAvatar.js +6 -6
  499. package/ui/OpenchannelConversationHeader.js +6 -6
  500. package/ui/OpenchannelFileMessage.js +16 -16
  501. package/ui/OpenchannelOGMessage.js +48 -64
  502. package/ui/OpenchannelOGMessage.js.map +1 -1
  503. package/ui/OpenchannelThumbnailMessage.js +15 -15
  504. package/ui/OpenchannelUserMessage.js +16 -16
  505. package/ui/PlaceHolder.js +6 -6
  506. package/ui/PlaybackTime.js +2 -2
  507. package/ui/QuoteMessage.js +6 -6
  508. package/ui/QuoteMessageInput.js +6 -6
  509. package/ui/ReactionBadge.js +3 -3
  510. package/ui/ReactionButton.js +1 -1
  511. package/ui/SortByRow.js +2 -2
  512. package/ui/TextButton.js +2 -2
  513. package/ui/TextMessageItemBody.js +25 -30
  514. package/ui/TextMessageItemBody.js.map +1 -1
  515. package/ui/ThreadReplies.js +6 -6
  516. package/ui/ThumbnailMessageItemBody.js +2 -2
  517. package/ui/Tooltip.js +3 -3
  518. package/ui/TooltipWrapper.js +1 -1
  519. package/ui/UnknownMessageItemBody.js +6 -6
  520. package/ui/UserListItem.js +10 -10
  521. package/ui/UserProfile.js +9 -9
  522. package/ui/VoiceMessageItemBody.js +5 -5
  523. package/ui/VoiceMessgeInput.js +8 -8
  524. package/ui/Word.js +15 -10
  525. package/ui/Word.js.map +1 -1
  526. package/{useLongPress-1ae5a380.js → useLongPress-e2570976.js} +3 -3
  527. package/{useLongPress-1ae5a380.js.map → useLongPress-e2570976.js.map} +1 -1
  528. package/useSendbirdStateContext.js +1 -1
  529. package/utils/message/isVoiceMessage.js +2 -2
  530. package/{utils-99c30ef6.js → utils-04bd857d.js} +1 -1
  531. package/{utils-99c30ef6.js.map → utils-04bd857d.js.map} +1 -1
  532. package/{utils-25614c42.js → utils-12a3467f.js} +1 -1
  533. package/{utils-25614c42.js.map → utils-12a3467f.js.map} +1 -1
  534. package/{utils-09901477.js → utils-3d03001e.js} +1 -1
  535. package/{utils-09901477.js.map → utils-3d03001e.js.map} +1 -1
  536. package/{utils-1b97d8ea.js → utils-4942106c.js} +2 -2
  537. package/{utils-1b97d8ea.js.map → utils-4942106c.js.map} +1 -1
  538. package/{uuid-29207f65.js → uuid-31c6ecb2.js} +1 -1
  539. package/{uuid-29207f65.js.map → uuid-31c6ecb2.js.map} +1 -1
  540. package/withSendbird.js +1 -1
  541. package/ChannelListProvider-3c107fc7.js.map +0 -1
  542. package/ChannelProvider-28639e83.js.map +0 -1
  543. package/_rollupPluginBabelHelpers-37cba0d6.js.map +0 -1
  544. package/cjs/ChannelListProvider-b7ffadf7.js.map +0 -1
  545. package/cjs/ChannelProvider-b963c72c.js.map +0 -1
  546. package/cjs/_rollupPluginBabelHelpers-1218aafb.js.map +0 -1
  547. package/cjs/index-2f2f3e43.js.map +0 -1
  548. package/cjs/index-7207d339.js.map +0 -1
  549. package/cjs/types-31b11c88.js.map +0 -1
  550. package/index-2c0ab386.js.map +0 -1
  551. package/index-556999ef.js.map +0 -1
  552. package/types-ed183627.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"OpenChannelInput.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelInput/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\n\nexport type MessageInputWrapperProps = {\n value?: string;\n};\n\nconst MessageInputWrapper = (props: MessageInputWrapperProps, ref: React.RefObject<HTMLInputElement>): JSX.Element => {\n const {\n currentOpenChannel,\n disabled,\n handleSendMessage,\n handleFileUpload,\n } = useOpenChannelContext();\n\n const channel = currentOpenChannel;\n if (!channel) {\n return;\n }\n\n const { stringSet } = useContext(LocalizationContext);\n const { value } = props;\n\n return (\n <div className=\"sendbird-openchannel-footer\">\n <MessageInput\n ref={ref}\n value={value}\n disabled={disabled}\n isVoiceMessageEnabled={false}\n onSendMessage={handleSendMessage}\n onFileUpload={handleFileUpload}\n placeholder={(\n disabled\n && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED\n // add disabled because of muted state\n )}\n />\n </div>\n );\n};\n\nexport default React.forwardRef(MessageInputWrapper);\n"],"names":["MessageInputWrapper","props","ref","_a","useOpenChannelContext","currentOpenChannel","disabled","handleSendMessage","handleFileUpload","channel","stringSet","useContext","LocalizationContext","value","React","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","forwardRef"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,IAAMA,mBAAmB,GAAG,UAACC,KAAD,EAAkCC,GAAlC,EAAwE;EAC5F,IAAAC,EAKF,GAAAC,qBAAqB,EALnB;AAAA,MACJC,kBAAkB,GAAAF,EAAA,CAAAE,kBADd;AAAA,MAEJC,QAAQ,GAAAH,EAAA,CAAAG,QAFJ;AAAA,MAGJC,iBAAiB,GAAAJ,EAAA,CAAAI,iBAHb;AAAA,MAIJC,gBAAgB,sBAJZ,CAAA;;EAON,IAAMC,OAAO,GAAGJ,kBAAhB,CAAA;;EACA,IAAI,CAACI,OAAL,EAAc;AACZ,IAAA,OAAA;AACD,GAAA;;AAEO,EAAA,IAAAC,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd,CAAA;AACA,EAAA,IAAAC,KAAK,GAAKZ,KAAK,CAAAY,KAAf,CAAA;EAER,oBACEC,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,6BAAA;AAAf,GAAA,eACEA,6BAAC,YAAD,EAAA;AACE,IAAA,GAAG,EAAEZ,GADP;AAEE,IAAA,KAAK,EAAEW,KAFT;AAGE,IAAA,QAAQ,EAAEP,QAHZ;AAIE,IAAA,qBAAqB,EAAE,KAJzB;AAKE,IAAA,aAAa,EAAEC,iBALjB;AAME,IAAA,YAAY,EAAEC,gBANhB;AAOE,IAAA,WAAW,EACTF,QAAQ,IACLI,SAAS,CAACK,qCAFJ;;AAPb,GAAA,CADF,CADF,CAAA;AAiBD,CAjCD,CAAA;;AAmCA,uBAAA,aAAeD,cAAK,CAACE,UAAN,CAAiBhB,mBAAjB,CAAf;;;;"}
1
+ {"version":3,"file":"OpenChannelInput.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelInput/index.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport MessageInput from '../../../../ui/MessageInput';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\n\nexport type MessageInputWrapperProps = {\n value?: string;\n};\n\nconst MessageInputWrapper = (props: MessageInputWrapperProps, ref: React.RefObject<HTMLInputElement>): JSX.Element => {\n const {\n currentOpenChannel,\n disabled,\n handleSendMessage,\n handleFileUpload,\n } = useOpenChannelContext();\n\n const channel = currentOpenChannel;\n if (!channel) {\n return;\n }\n\n const { stringSet } = useContext(LocalizationContext);\n const { value } = props;\n\n return (\n <div className=\"sendbird-openchannel-footer\">\n <MessageInput\n ref={ref}\n value={value}\n disabled={disabled}\n isVoiceMessageEnabled={false}\n onSendMessage={handleSendMessage}\n onFileUpload={handleFileUpload}\n placeholder={(\n disabled\n && stringSet.MESSAGE_INPUT__PLACE_HOLDER__DISABLED\n // add disabled because of muted state\n )}\n />\n </div>\n );\n};\n\nexport default React.forwardRef(MessageInputWrapper);\n"],"names":["MessageInputWrapper","props","ref","_a","useOpenChannelContext","currentOpenChannel","disabled","handleSendMessage","handleFileUpload","channel","stringSet","useContext","LocalizationContext","value","React","MESSAGE_INPUT__PLACE_HOLDER__DISABLED","forwardRef"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,IAAMA,mBAAmB,GAAG,UAACC,KAAD,EAAkCC,GAAlC,EAAwE;EAC5F,IAAAC,EAKF,GAAAC,qBAAqB,EALnB;AAAA,MACJC,kBAAkB,GAAAF,EAAA,CAAAE,kBADd;AAAA,MAEJC,QAAQ,GAAAH,EAAA,CAAAG,QAFJ;AAAA,MAGJC,iBAAiB,GAAAJ,EAAA,CAAAI,iBAHb;AAAA,MAIJC,gBAAgB,sBAJZ,CAAA;;EAON,IAAMC,OAAO,GAAGJ,kBAAhB,CAAA;;EACA,IAAI,CAACI,OAAL,EAAc;AACZ,IAAA,OAAA;AACD,GAAA;;AAEO,EAAA,IAAAC,SAAS,GAAKC,UAAU,CAACC,mBAAD,CAAV,UAAd,CAAA;AACA,EAAA,IAAAC,KAAK,GAAKZ,KAAK,CAAAY,KAAf,CAAA;EAER,oBACEC,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,6BAAA;AAAf,GAAA,eACEA,6BAAC,YAAD,EAAA;AACE,IAAA,GAAG,EAAEZ,GADP;AAEE,IAAA,KAAK,EAAEW,KAFT;AAGE,IAAA,QAAQ,EAAEP,QAHZ;AAIE,IAAA,qBAAqB,EAAE,KAJzB;AAKE,IAAA,aAAa,EAAEC,iBALjB;AAME,IAAA,YAAY,EAAEC,gBANhB;AAOE,IAAA,WAAW,EACTF,QAAQ,IACLI,SAAS,CAACK,qCAFJ;;AAPb,GAAA,CADF,CADF,CAAA;AAiBD,CAjCD,CAAA;;AAmCA,uBAAA,aAAeD,cAAK,CAACE,UAAN,CAAiBhB,mBAAjB,CAAf;;;;"}
@@ -1,55 +1,59 @@
1
1
  import React__default, { useContext, useMemo, useState, useRef } from 'react';
2
- import { f as format } from '../../index-97a2ff37.js';
2
+ import { f as format } from '../../index-aced8439.js';
3
3
  import OpenchannelUserMessage from '../../ui/OpenchannelUserMessage.js';
4
4
  import OpenChannelAdminMessage from '../../ui/OpenChannelAdminMessage.js';
5
5
  import OpenchannelOGMessage from '../../ui/OpenchannelOGMessage.js';
6
6
  import OpenchannelThumbnailMessage from '../../ui/OpenchannelThumbnailMessage.js';
7
7
  import OpenchannelFileMessage from '../../ui/OpenchannelFileMessage.js';
8
8
  import DateSeparator from '../../ui/DateSeparator.js';
9
- import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-2c0ab386.js';
9
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../../index-8e901b57.js';
10
10
  import MessageInput from '../../ui/MessageInput.js';
11
11
  import FileViewer from '../../ui/FileViewer.js';
12
12
  import Modal from '../../ui/Modal.js';
13
- import { a as LocalizationContext, u as useLocalization } from '../../LocalizationContext-ef72d4b1.js';
14
- import { _ as __assign } from '../../tslib.es6-1aaf3795.js';
15
- import { u as useOpenChannelContext } from '../../OpenChannelProvider-c5952f33.js';
13
+ import { a as LocalizationContext, u as useLocalization } from '../../LocalizationContext-654ae04f.js';
14
+ import { _ as __assign } from '../../tslib.es6-209c9f08.js';
15
+ import { u as useOpenChannelContext } from '../../OpenChannelProvider-e418b369.js';
16
16
  import useSendbirdStateContext from '../../useSendbirdStateContext.js';
17
- import '../../index-18c2f8d4.js';
18
- import '../../_rollupPluginBabelHelpers-37cba0d6.js';
17
+ import '../../index-cf141ad7.js';
18
+ import '../../_rollupPluginBabelHelpers-e908c50d.js';
19
19
  import '../../ui/Avatar.js';
20
20
  import '../../ui/ImageRenderer.js';
21
21
  import '../../ui/Icon.js';
22
22
  import 'prop-types';
23
- import '../../uuid-29207f65.js';
23
+ import '../../uuid-31c6ecb2.js';
24
24
  import '../../ui/ContextMenu.js';
25
25
  import 'react-dom';
26
26
  import '../../ui/SortByRow.js';
27
- import '../../index-556999ef.js';
27
+ import '../../index-83ae3ffe.js';
28
28
  import '../../utils/message/getOutgoingMessageState.js';
29
- import '../../stringSet-273bec27.js';
29
+ import '../../stringSet-7c7d84fc.js';
30
30
  import '../../ui/IconButton.js';
31
31
  import '../../ui/Loader.js';
32
32
  import '../../ui/UserProfile.js';
33
- import '../../UserProfileContext-5d7c5f9f.js';
33
+ import '../../UserProfileContext-1996d4d2.js';
34
34
  import '../../sendbirdSelectors.js';
35
- import '../../topics-df7f51d4.js';
36
- import '../../utils-99c30ef6.js';
35
+ import '../../topics-4697c2b3.js';
36
+ import '../../utils-04bd857d.js';
37
37
  import '../../ui/Button.js';
38
- import '../../utils-09901477.js';
39
- import '../../index-90365474.js';
40
- import '../../MediaQueryContext-683c7242.js';
41
- import '../../useLongPress-1ae5a380.js';
38
+ import '../../utils-3d03001e.js';
39
+ import '../../index-47d179f2.js';
40
+ import '../../MediaQueryContext-e791a4d1.js';
41
+ import '../../useLongPress-e2570976.js';
42
42
  import '../../ui/LinkLabel.js';
43
- import '../../ui/Word.js';
43
+ import '../../index-ace292c2.js';
44
+ import '../../tokenize-8f238f49.js';
45
+ import '../../Message/context.js';
44
46
  import '../../ui/MentionLabel.js';
45
47
  import '../../ui/TextButton.js';
46
- import '../../color-e5d40073.js';
47
- import '../../const-bba4efc9.js';
48
- import '../../const-bf594206.js';
48
+ import '../../color-f6e2214f.js';
49
+ import '../../const-c7334190.js';
50
+ import '../../const-735bcf5b.js';
49
51
  import 'dompurify';
50
- import '../../consts-f9543b99.js';
51
- import '../../index-e3d008b9.js';
52
- import '../../compareIds-148644b4.js';
52
+ import '../../consts-ddb92249.js';
53
+ import '../../consts-12512664.js';
54
+ import '../../consts-8f50899e.js';
55
+ import '../../index-12c44496.js';
56
+ import '../../compareIds-d958887d.js';
53
57
  import '@sendbird/chat';
54
58
  import '@sendbird/chat/openChannel';
55
59
  import '../../withSendbird.js';
@@ -1 +1 @@
1
- {"version":3,"file":"OpenChannelMessage.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessage/RemoveMessageModal.tsx","../../../src/ui/FileViewer/types.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/utils.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/index.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { ClientFileMessage, ClientUserMessage } from '../../../../index';\nimport Modal from '../../../../ui/Modal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props {\n onCloseModal(): void;\n onDeleteMessage(message: ClientUserMessage | ClientFileMessage, callback?: () => void): void;\n}\n\nexport default function RemoveMessageModal({\n onCloseModal,\n onDeleteMessage,\n}: Props): JSX.Element {\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <Modal\n onCancel={onCloseModal}\n onSubmit={onDeleteMessage}\n submitText={stringSet.MESSAGE_MENU__DELETE}\n titleText={stringSet.MODAL__DELETE_MESSAGE__TITLE}\n />\n );\n}\n","// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\n\nexport type SupportedImageMimesType = 'image/jpeg' | 'image/jpg' | 'image/png' | 'image/gif' | 'image/svg+xml' | 'image/webp';\nexport type SupportedVideoMimesType = 'video/mpeg' | 'video/ogg' | 'video/webm' | 'video/mp4';\nexport type SupportedMimesType = SupportedImageMimesType | SupportedVideoMimesType;\n\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp',\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const isImage = (type: SupportedImageMimesType): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: SupportedVideoMimesType): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: SupportedMimesType): boolean => type === 'image/gif';\nexport const unSupported = (type: SupportedMimesType): boolean => (\n !(\n isImage(type as SupportedImageMimesType)\n || isVideo(type as SupportedVideoMimesType)\n )\n);\n\nexport default { ...SUPPORTED_MIMES };\n","import { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { isImage, isVideo } from '../../../../ui/FileViewer/types';\n\nexport const MessageTypes = {\n ADMIN: 'ADMIN',\n USER: 'USER',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n};\n\nexport const SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport const getMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if ((message?.isUserMessage?.()) || message?.messageType === 'user') {\n return (message?.ogMetaData)\n ? MessageTypes.OG\n : MessageTypes.USER;\n }\n if (message?.isAdminMessage?.()) {\n return MessageTypes.ADMIN;\n }\n if (message?.messageType === 'file') {\n return (isImage((message as FileMessage).type) || isVideo((message as FileMessage).type))\n ? MessageTypes.THUMBNAIL\n : MessageTypes.FILE;\n }\n return MessageTypes.UNKNOWN;\n};\n\nexport default {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n};\n","import React, {\n useState,\n useRef,\n ReactElement,\n useMemo,\n} from 'react';\nimport { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { User } from '@sendbird/chat';\nimport format from 'date-fns/format';\n\nimport OpenChannelUserMessage from '../../../../ui/OpenchannelUserMessage';\nimport OpenChannelAdminMessage from '../../../../ui/OpenChannelAdminMessage';\nimport OpenChannelOGMessage from '../../../../ui/OpenchannelOGMessage';\nimport OpenChannelThumbnailMessage from '../../../../ui/OpenchannelThumbnailMessage';\nimport OpenChannelFileMessage from '../../../../ui/OpenchannelFileMessage';\n// import UnknownMessage from '../../../../ui/UnknownMessage';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport FileViewer from '../../../../ui/FileViewer';\n\nimport RemoveMessageModal from './RemoveMessageModal';\nimport {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n} from './utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport type { RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\nexport type OpenChannelMessageProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n message: UserMessage | FileMessage | AdminMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n editDisabled?: boolean;\n};\n\nexport default function MessagOpenChannelMessageeHoc(props: OpenChannelMessageProps): ReactElement {\n const {\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderMessage,\n } = props;\n\n const {\n currentOpenChannel,\n deleteMessage,\n updateMessage,\n resendMessage,\n } = useOpenChannelContext();\n const { dateLocale } = useLocalization();\n const editDisabled = currentOpenChannel?.isFrozen;\n\n const globalState = useSendbirdStateContext();\n const userId = globalState?.config?.userId;\n\n let sender: User = null;\n if (message?.messageType !== 'admin') {\n sender = (message as UserMessage | FileMessage)?.sender;\n }\n\n const RenderedMessage = useMemo(() => (props: RenderMessageProps) => {\n return (\n <>\n {\n renderMessage\n ? (renderMessage(props))\n : null\n }\n </>\n );\n }, [message, renderMessage]);\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const editMessageInputRef = useRef(null);\n\n let isByMe = false;\n\n if (sender && message?.messageType !== 'admin') {\n // pending and failed messages are by me\n isByMe = (userId === sender.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.PENDING)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.FAILED);\n }\n\n if (renderMessage && RenderedMessage) {\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n <RenderedMessage message={message} chainTop={chainTop} chainBottom={chainBottom} />\n </div>\n );\n }\n\n if (message?.messageType === 'user' && showEdit) {\n return (\n <MessageInput\n isEdit\n disabled={editDisabled}\n ref={editMessageInputRef}\n message={message as UserMessage}\n name={message?.messageId}\n onUpdateMessage={({ messageId, message }) => {\n updateMessage(messageId, message);\n setShowEdit(false);\n }}\n onCancelEdit={() => { setShowEdit(false); }}\n />\n );\n }\n\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n {/* date-separator */}\n {\n (hasSeparator && message?.createdAt) && (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message?.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n )\n }\n {/* Message */}\n {\n {\n [MessageTypes.ADMIN]: (() => {\n if (message?.messageType === 'admin') {\n return (\n <OpenChannelAdminMessage message={message as AdminMessage} />\n )\n }\n })(),\n [MessageTypes.FILE]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelFileMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n isEphemeral={currentOpenChannel?.isEphemeral}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.OG]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelOGMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n isEphemeral={currentOpenChannel?.isEphemeral}\n userId={userId}\n showEdit={setShowEdit}\n disabled={editDisabled}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.THUMBNAIL]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelThumbnailMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n isEphemeral={currentOpenChannel?.isEphemeral}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n onClick={setShowFileViewer}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.USER]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelUserMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n isEphemeral={currentOpenChannel?.isEphemeral}\n userId={userId}\n disabled={editDisabled}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.UNKNOWN]: (() => {\n return;\n // return (\n // <OpenChannelUnknownMessage message={message} />\n // );\n })(),\n }[getMessageType(message)]\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n onCloseModal={() => setShowRemove(false)}\n onDeleteMessage={() => {\n if (message?.messageType !== 'admin') {\n deleteMessage(message);\n }\n }}\n />\n )\n }\n {\n (showFileViewer && message?.messageType === 'file') && (\n <FileViewer\n onClose={() => setShowFileViewer(false)}\n message={message as FileMessage}\n onDelete={() => deleteMessage(message)}\n isByMe={isByMe}\n />\n )\n }\n {/* {\n !((message?.isFileMessage && message?.isFileMessage()) || message?.messageType === 'file')\n && !(message?.isAdminMessage && message?.isAdminMessage())\n && !(((message?.isUserMessage && message?.isUserMessage()) || message?.messageType === 'user'))\n && !(showFileViewer)\n && (\n <UnknownMessage\n message={message}\n isByMe={isByMe}\n showRemove={setShowRemove}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n )\n } */}\n </div>\n );\n}\n"],"names":["RemoveMessageModal","_a","onCloseModal","onDeleteMessage","stringSet","useContext","LocalizationContext","React","MESSAGE_MENU__DELETE","MODAL__DELETE_MESSAGE__TITLE","SUPPORTED_MIMES","IMAGE","VIDEO","isImage","type","indexOf","isVideo","__assign","MessageTypes","ADMIN","USER","FILE","THUMBNAIL","OG","UNKNOWN","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","getMessageType","message","isUserMessage","call","messageType","ogMetaData","_b","isAdminMessage","MessagOpenChannelMessageeHoc","props","chainTop","chainBottom","hasSeparator","renderMessage","_c","useOpenChannelContext","currentOpenChannel","deleteMessage","updateMessage","resendMessage","dateLocale","useLocalization","editDisabled","isFrozen","globalState","useSendbirdStateContext","userId","config","sender","RenderedMessage","useMemo","_d","useState","showEdit","setShowEdit","_e","showRemove","setShowRemove","_f","showFileViewer","setShowFileViewer","editMessageInputRef","useRef","isByMe","sendingStatus","messageId","createdAt","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","locale","OpenChannelFileMessage","isOperator","isEphemeral","OpenChannelOGMessage","OpenChannelThumbnailMessage","OpenChannelUserMessage"],"mappings":"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"}
1
+ {"version":3,"file":"OpenChannelMessage.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessage/RemoveMessageModal.tsx","../../../src/ui/FileViewer/types.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/utils.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessage/index.tsx"],"sourcesContent":["import React, { useContext } from 'react'\nimport { ClientFileMessage, ClientUserMessage } from '../../../../index';\nimport Modal from '../../../../ui/Modal';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\n\ninterface Props {\n onCloseModal(): void;\n onDeleteMessage(message: ClientUserMessage | ClientFileMessage, callback?: () => void): void;\n}\n\nexport default function RemoveMessageModal({\n onCloseModal,\n onDeleteMessage,\n}: Props): JSX.Element {\n const { stringSet } = useContext(LocalizationContext);\n\n return (\n <Modal\n onCancel={onCloseModal}\n onSubmit={onDeleteMessage}\n submitText={stringSet.MESSAGE_MENU__DELETE}\n titleText={stringSet.MODAL__DELETE_MESSAGE__TITLE}\n />\n );\n}\n","// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\n\nexport type SupportedImageMimesType = 'image/jpeg' | 'image/jpg' | 'image/png' | 'image/gif' | 'image/svg+xml' | 'image/webp';\nexport type SupportedVideoMimesType = 'video/mpeg' | 'video/ogg' | 'video/webm' | 'video/mp4';\nexport type SupportedMimesType = SupportedImageMimesType | SupportedVideoMimesType;\n\nconst SUPPORTED_MIMES = {\n IMAGE: [\n 'image/jpeg',\n 'image/jpg',\n 'image/png',\n 'image/gif',\n 'image/svg+xml',\n 'image/webp',\n ],\n VIDEO: [\n 'video/mpeg',\n 'video/ogg',\n 'video/webm',\n 'video/mp4',\n ],\n};\n\nexport const isImage = (type: SupportedImageMimesType): boolean => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;\nexport const isVideo = (type: SupportedVideoMimesType): boolean => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;\nexport const isGif = (type: SupportedMimesType): boolean => type === 'image/gif';\nexport const unSupported = (type: SupportedMimesType): boolean => (\n !(\n isImage(type as SupportedImageMimesType)\n || isVideo(type as SupportedVideoMimesType)\n )\n);\n\nexport default { ...SUPPORTED_MIMES };\n","import { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { isImage, isVideo } from '../../../../ui/FileViewer/types';\n\nexport const MessageTypes = {\n ADMIN: 'ADMIN',\n USER: 'USER',\n FILE: 'FILE',\n THUMBNAIL: 'THUMBNAIL',\n OG: 'OG',\n UNKNOWN: 'UNKNOWN',\n};\n\nexport const SendingMessageStatus = {\n NONE: 'none',\n SUCCEEDED: 'succeeded',\n FAILED: 'failed',\n PENDING: 'pending',\n};\n\nexport const getMessageType = (message: UserMessage | FileMessage | AdminMessage): string => {\n if ((message?.isUserMessage?.()) || message?.messageType === 'user') {\n return (message?.ogMetaData)\n ? MessageTypes.OG\n : MessageTypes.USER;\n }\n if (message?.isAdminMessage?.()) {\n return MessageTypes.ADMIN;\n }\n if (message?.messageType === 'file') {\n return (isImage((message as FileMessage).type) || isVideo((message as FileMessage).type))\n ? MessageTypes.THUMBNAIL\n : MessageTypes.FILE;\n }\n return MessageTypes.UNKNOWN;\n};\n\nexport default {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n};\n","import React, {\n useState,\n useRef,\n ReactElement,\n useMemo,\n} from 'react';\nimport { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';\nimport { User } from '@sendbird/chat';\nimport format from 'date-fns/format';\n\nimport OpenChannelUserMessage from '../../../../ui/OpenchannelUserMessage';\nimport OpenChannelAdminMessage from '../../../../ui/OpenChannelAdminMessage';\nimport OpenChannelOGMessage from '../../../../ui/OpenchannelOGMessage';\nimport OpenChannelThumbnailMessage from '../../../../ui/OpenchannelThumbnailMessage';\nimport OpenChannelFileMessage from '../../../../ui/OpenchannelFileMessage';\n// import UnknownMessage from '../../../../ui/UnknownMessage';\n\nimport DateSeparator from '../../../../ui/DateSeparator';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport MessageInput from '../../../../ui/MessageInput';\nimport FileViewer from '../../../../ui/FileViewer';\n\nimport RemoveMessageModal from './RemoveMessageModal';\nimport {\n MessageTypes,\n SendingMessageStatus,\n getMessageType,\n} from './utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport type { RenderMessageProps } from '../../../../types';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\n\nexport type OpenChannelMessageProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n message: UserMessage | FileMessage | AdminMessage;\n chainTop?: boolean;\n chainBottom?: boolean;\n hasSeparator?: boolean;\n editDisabled?: boolean;\n};\n\nexport default function MessagOpenChannelMessageeHoc(props: OpenChannelMessageProps): ReactElement {\n const {\n message,\n chainTop,\n chainBottom,\n hasSeparator,\n renderMessage,\n } = props;\n\n const {\n currentOpenChannel,\n deleteMessage,\n updateMessage,\n resendMessage,\n } = useOpenChannelContext();\n const { dateLocale } = useLocalization();\n const editDisabled = currentOpenChannel?.isFrozen;\n\n const globalState = useSendbirdStateContext();\n const userId = globalState?.config?.userId;\n\n let sender: User = null;\n if (message?.messageType !== 'admin') {\n sender = (message as UserMessage | FileMessage)?.sender;\n }\n\n const RenderedMessage = useMemo(() => (props: RenderMessageProps) => {\n return (\n <>\n {\n renderMessage\n ? (renderMessage(props))\n : null\n }\n </>\n );\n }, [message, renderMessage]);\n\n const [showEdit, setShowEdit] = useState(false);\n const [showRemove, setShowRemove] = useState(false);\n const [showFileViewer, setShowFileViewer] = useState(false);\n const editMessageInputRef = useRef(null);\n\n let isByMe = false;\n\n if (sender && message?.messageType !== 'admin') {\n // pending and failed messages are by me\n isByMe = (userId === sender.userId)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.PENDING)\n || ((message as UserMessage | FileMessage)?.sendingStatus === SendingMessageStatus.FAILED);\n }\n\n if (renderMessage && RenderedMessage) {\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n <RenderedMessage message={message} chainTop={chainTop} chainBottom={chainBottom} />\n </div>\n );\n }\n\n if (message?.messageType === 'user' && showEdit) {\n return (\n <MessageInput\n isEdit\n disabled={editDisabled}\n ref={editMessageInputRef}\n message={message as UserMessage}\n name={message?.messageId}\n onUpdateMessage={({ messageId, message }) => {\n updateMessage(messageId, message);\n setShowEdit(false);\n }}\n onCancelEdit={() => { setShowEdit(false); }}\n />\n );\n }\n\n return (\n <div className=\"sendbird-msg-hoc sendbird-msg--scroll-ref\">\n {/* date-separator */}\n {\n (hasSeparator && message?.createdAt) && (\n <DateSeparator>\n <Label type={LabelTypography.CAPTION_2} color={LabelColors.ONBACKGROUND_2}>\n {format(message?.createdAt, 'MMMM dd, yyyy', {\n locale: dateLocale,\n })}\n </Label>\n </DateSeparator>\n )\n }\n {/* Message */}\n {\n {\n [MessageTypes.ADMIN]: (() => {\n if (message?.messageType === 'admin') {\n return (\n <OpenChannelAdminMessage message={message as AdminMessage} />\n )\n }\n })(),\n [MessageTypes.FILE]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelFileMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n isEphemeral={currentOpenChannel?.isEphemeral}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.OG]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelOGMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n isEphemeral={currentOpenChannel?.isEphemeral}\n userId={userId}\n showEdit={setShowEdit}\n disabled={editDisabled}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.THUMBNAIL]: (() => {\n if (message?.messageType === 'file') {\n return (\n <OpenChannelThumbnailMessage\n message={message as FileMessage}\n isOperator={currentOpenChannel?.isOperator((message as FileMessage)?.sender?.userId)}\n isEphemeral={currentOpenChannel?.isEphemeral}\n disabled={editDisabled}\n userId={userId}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n onClick={setShowFileViewer}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.USER]: (() => {\n if (message?.messageType === 'user') {\n return (\n <OpenChannelUserMessage\n message={message as UserMessage}\n isOperator={currentOpenChannel?.isOperator((message as UserMessage)?.sender?.userId)}\n isEphemeral={currentOpenChannel?.isEphemeral}\n userId={userId}\n disabled={editDisabled}\n showEdit={setShowEdit}\n showRemove={setShowRemove}\n resendMessage={resendMessage}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n );\n }\n return;\n })(),\n [MessageTypes.UNKNOWN]: (() => {\n return;\n // return (\n // <OpenChannelUnknownMessage message={message} />\n // );\n })(),\n }[getMessageType(message)]\n }\n {/* Modal */}\n {\n showRemove && (\n <RemoveMessageModal\n onCloseModal={() => setShowRemove(false)}\n onDeleteMessage={() => {\n if (message?.messageType !== 'admin') {\n deleteMessage(message);\n }\n }}\n />\n )\n }\n {\n (showFileViewer && message?.messageType === 'file') && (\n <FileViewer\n onClose={() => setShowFileViewer(false)}\n message={message as FileMessage}\n onDelete={() => deleteMessage(message)}\n isByMe={isByMe}\n />\n )\n }\n {/* {\n !((message?.isFileMessage && message?.isFileMessage()) || message?.messageType === 'file')\n && !(message?.isAdminMessage && message?.isAdminMessage())\n && !(((message?.isUserMessage && message?.isUserMessage()) || message?.messageType === 'user'))\n && !(showFileViewer)\n && (\n <UnknownMessage\n message={message}\n isByMe={isByMe}\n showRemove={setShowRemove}\n chainTop={chainTop}\n chainBottom={chainBottom}\n />\n )\n } */}\n </div>\n );\n}\n"],"names":["RemoveMessageModal","_a","onCloseModal","onDeleteMessage","stringSet","useContext","LocalizationContext","React","MESSAGE_MENU__DELETE","MODAL__DELETE_MESSAGE__TITLE","SUPPORTED_MIMES","IMAGE","VIDEO","isImage","type","indexOf","isVideo","__assign","MessageTypes","ADMIN","USER","FILE","THUMBNAIL","OG","UNKNOWN","SendingMessageStatus","NONE","SUCCEEDED","FAILED","PENDING","getMessageType","message","isUserMessage","call","messageType","ogMetaData","_b","isAdminMessage","MessagOpenChannelMessageeHoc","props","chainTop","chainBottom","hasSeparator","renderMessage","_c","useOpenChannelContext","currentOpenChannel","deleteMessage","updateMessage","resendMessage","dateLocale","useLocalization","editDisabled","isFrozen","globalState","useSendbirdStateContext","userId","config","sender","RenderedMessage","useMemo","_d","useState","showEdit","setShowEdit","_e","showRemove","setShowRemove","_f","showFileViewer","setShowFileViewer","editMessageInputRef","useRef","isByMe","sendingStatus","messageId","createdAt","LabelTypography","CAPTION_2","LabelColors","ONBACKGROUND_2","format","locale","OpenChannelFileMessage","isOperator","isEphemeral","OpenChannelOGMessage","OpenChannelThumbnailMessage","OpenChannelUserMessage"],"mappings":"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"}
@@ -1,63 +1,70 @@
1
1
  import React__default, { useCallback, useRef, useState, useMemo } from 'react';
2
- import { i as isSameDay } from '../../index-1dfb77d4.js';
2
+ import { i as isSameDay } from '../../index-4c3eaeb7.js';
3
3
  import Icon, { IconTypes, IconColors } from '../../ui/Icon.js';
4
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-86cb1c98.js';
5
- import { u as useOpenChannelContext, c as compareMessagesForGrouping } from '../../OpenChannelProvider-c5952f33.js';
4
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-0ecbda20.js';
5
+ import { u as useOpenChannelContext, c as compareMessagesForGrouping } from '../../OpenChannelProvider-e418b369.js';
6
6
  import MessagOpenChannelMessageeHoc from './OpenChannelMessage.js';
7
- import { S as SCROLL_BUFFER } from '../../consts-b3042213.js';
8
- import '../../index-97a2ff37.js';
9
- import '../../index-18c2f8d4.js';
7
+ import { S as SCROLL_BUFFER } from '../../consts-9422accf.js';
8
+ import { MessageProvider } from '../../Message/context.js';
9
+ import useSendbirdStateContext from '../../useSendbirdStateContext.js';
10
+ import '../../index-aced8439.js';
11
+ import '../../index-cf141ad7.js';
10
12
  import 'prop-types';
11
- import '../../tslib.es6-1aaf3795.js';
12
- import '../../LocalizationContext-ef72d4b1.js';
13
- import '../../stringSet-273bec27.js';
14
- import '../../index-2c0ab386.js';
13
+ import '../../tslib.es6-209c9f08.js';
14
+ import '../../LocalizationContext-654ae04f.js';
15
+ import '../../stringSet-7c7d84fc.js';
16
+ import '../../index-8e901b57.js';
15
17
  import '../../ui/Loader.js';
16
- import '../../UserProfileContext-5d7c5f9f.js';
17
- import '../../compareIds-148644b4.js';
18
- import '../../topics-df7f51d4.js';
18
+ import '../../UserProfileContext-1996d4d2.js';
19
+ import '../../compareIds-d958887d.js';
20
+ import '../../topics-4697c2b3.js';
19
21
  import '@sendbird/chat';
20
22
  import '@sendbird/chat/openChannel';
21
- import '../../uuid-29207f65.js';
22
- import '../../useSendbirdStateContext.js';
23
- import '../../withSendbird.js';
23
+ import '../../uuid-31c6ecb2.js';
24
24
  import '../../ui/OpenchannelUserMessage.js';
25
- import '../../_rollupPluginBabelHelpers-37cba0d6.js';
25
+ import '../../_rollupPluginBabelHelpers-e908c50d.js';
26
26
  import '../../ui/Avatar.js';
27
27
  import '../../ui/ImageRenderer.js';
28
28
  import '../../ui/ContextMenu.js';
29
29
  import 'react-dom';
30
30
  import '../../ui/SortByRow.js';
31
- import '../../index-556999ef.js';
31
+ import '../../index-83ae3ffe.js';
32
32
  import '../../utils/message/getOutgoingMessageState.js';
33
33
  import '../../ui/IconButton.js';
34
34
  import '../../ui/UserProfile.js';
35
35
  import '../../sendbirdSelectors.js';
36
- import '../../utils-99c30ef6.js';
36
+ import '../../utils-04bd857d.js';
37
37
  import '../../ui/Button.js';
38
- import '../../utils-09901477.js';
39
- import '../../index-90365474.js';
40
- import '../../MediaQueryContext-683c7242.js';
41
- import '../../useLongPress-1ae5a380.js';
38
+ import '../../utils-3d03001e.js';
39
+ import '../../index-47d179f2.js';
40
+ import '../../MediaQueryContext-e791a4d1.js';
41
+ import '../../useLongPress-e2570976.js';
42
42
  import '../../ui/OpenChannelAdminMessage.js';
43
43
  import '../../ui/OpenchannelOGMessage.js';
44
44
  import '../../ui/LinkLabel.js';
45
- import '../../ui/Word.js';
45
+ import '../../index-ace292c2.js';
46
+ import '../../tokenize-8f238f49.js';
46
47
  import '../../ui/MentionLabel.js';
47
48
  import '../../ui/OpenchannelThumbnailMessage.js';
48
49
  import '../../ui/OpenchannelFileMessage.js';
49
50
  import '../../ui/TextButton.js';
50
- import '../../color-e5d40073.js';
51
+ import '../../color-f6e2214f.js';
51
52
  import '../../ui/DateSeparator.js';
52
53
  import '../../ui/MessageInput.js';
53
- import '../../const-bba4efc9.js';
54
- import '../../const-bf594206.js';
54
+ import '../../const-c7334190.js';
55
+ import '../../const-735bcf5b.js';
55
56
  import 'dompurify';
56
- import '../../consts-f9543b99.js';
57
+ import '../../consts-ddb92249.js';
58
+ import '../../consts-12512664.js';
59
+ import '../../consts-8f50899e.js';
57
60
  import '../../ui/FileViewer.js';
58
- import '../../index-e3d008b9.js';
61
+ import '../../index-12c44496.js';
59
62
  import '../../ui/Modal.js';
63
+ import '../../withSendbird.js';
60
64
 
65
+ function calcScrollBottom(scrollHeight, scrollTop) {
66
+ return scrollHeight - scrollTop;
67
+ }
61
68
  function useHandleOnScrollCallback(_a) {
62
69
  var setShowScrollDownButton = _a.setShowScrollDownButton,
63
70
  hasMore = _a.hasMore,
@@ -67,8 +74,12 @@ function useHandleOnScrollCallback(_a) {
67
74
  var element = e.target;
68
75
  var scrollTop = element.scrollTop,
69
76
  scrollHeight = element.scrollHeight,
70
- clientHeight = element.clientHeight;
71
- var scrollBottom = scrollHeight - scrollTop;
77
+ clientHeight = element.clientHeight; // https://sendbird.atlassian.net/browse/SBISSUE-11759
78
+ // the edge case where channel is inside a page that already has scroll
79
+ // scrollintoView will move the whole page, which we dont want
80
+
81
+ var scrollBottom = calcScrollBottom(scrollHeight, scrollTop); // even if there is more to fetch or not,
82
+ // we still have to show the scroll to bottom button
72
83
 
73
84
  if (scrollHeight > scrollTop + clientHeight + 1) {
74
85
  setShowScrollDownButton(true);
@@ -82,7 +93,7 @@ function useHandleOnScrollCallback(_a) {
82
93
 
83
94
  if (scrollTop < SCROLL_BUFFER) {
84
95
  onScroll(function () {
85
- // Fetch more messages
96
+ // sets the scroll position to the bottom of the new messages
86
97
  scrollRef.current.scrollTop = scrollRef.current.scrollHeight - scrollBottom;
87
98
  });
88
99
  }
@@ -97,6 +108,8 @@ function OpenchannelMessageList(props, ref) {
97
108
  hasMore = _a.hasMore,
98
109
  onScroll = _a.onScroll;
99
110
 
111
+ var store = useSendbirdStateContext();
112
+ var userId = store.config.userId;
100
113
  var scrollRef = ref || useRef(null);
101
114
 
102
115
  var _c = useState(false),
@@ -121,6 +134,8 @@ function OpenchannelMessageList(props, ref) {
121
134
 
122
135
  if (allMessages.length > 0) {
123
136
  return allMessages.map(function (message, index) {
137
+ var _a;
138
+
124
139
  var previousMessage = allMessages[index - 1];
125
140
  var nextMessage = allMessages[index - 1];
126
141
  var previousMessageCreatedAt = previousMessage && previousMessage.createdAt;
@@ -128,18 +143,23 @@ function OpenchannelMessageList(props, ref) {
128
143
 
129
144
  var hasSeparator = !(previousMessageCreatedAt && isSameDay(currentCreatedAt, previousMessageCreatedAt));
130
145
 
131
- var _a = isMessageGroupingEnabled ? compareMessagesForGrouping(previousMessage, message, nextMessage) : [false, false],
132
- chainTop = _a[0],
133
- chainBottom = _a[1];
146
+ var _b = isMessageGroupingEnabled ? compareMessagesForGrouping(previousMessage, message, nextMessage) : [false, false],
147
+ chainTop = _b[0],
148
+ chainBottom = _b[1];
134
149
 
135
- return /*#__PURE__*/React__default.createElement(MessagOpenChannelMessageeHoc, {
136
- key: (message === null || message === void 0 ? void 0 : message.messageId) || (message === null || message === void 0 ? void 0 : message.reqId),
150
+ var isByMe = ((_a = message === null || message === void 0 ? void 0 : message.sender) === null || _a === void 0 ? void 0 : _a.userId) === userId;
151
+ var key = (message === null || message === void 0 ? void 0 : message.messageId) || (message === null || message === void 0 ? void 0 : message.reqId);
152
+ return /*#__PURE__*/React__default.createElement(MessageProvider, {
153
+ message: message,
154
+ isByMe: isByMe,
155
+ key: key
156
+ }, /*#__PURE__*/React__default.createElement(MessagOpenChannelMessageeHoc, {
137
157
  message: message,
138
158
  chainTop: chainTop,
139
159
  chainBottom: chainBottom,
140
160
  hasSeparator: hasSeparator,
141
161
  renderMessage: props === null || props === void 0 ? void 0 : props.renderMessage
142
- });
162
+ }));
143
163
  });
144
164
  }
145
165
 
@@ -1 +1 @@
1
- {"version":3,"file":"OpenChannelMessageList.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessageList/useHandleOnScrollCallback.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessageList/index.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { SCROLL_BUFFER } from \"../../../../utils/consts\";\n\nexport interface UseHandleOnScrollCallbackProps {\n setShowScrollDownButton: React.Dispatch<React.SetStateAction<boolean>>;\n hasMore: boolean;\n onScroll(fn: () => void): void;\n scrollRef: React.RefObject<HTMLDivElement>;\n}\n\nexport function useHandleOnScrollCallback({\n setShowScrollDownButton,\n hasMore,\n onScroll,\n scrollRef,\n}: UseHandleOnScrollCallbackProps): (e: React.UIEvent<HTMLElement>) => void {\n return useCallback((e) => {\n const element = e.target as Element;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = element;\n const scrollBottom = scrollHeight - scrollTop;\n if (scrollHeight > scrollTop + clientHeight + 1) {\n setShowScrollDownButton(true);\n } else {\n setShowScrollDownButton(false);\n }\n if (!hasMore) {\n return;\n }\n if (scrollTop < SCROLL_BUFFER) {\n onScroll(() => {\n // Fetch more messages\n scrollRef.current.scrollTop = scrollRef.current.scrollHeight - scrollBottom;\n });\n }\n }, [\n setShowScrollDownButton,\n hasMore,\n onScroll,\n scrollRef,\n ]);\n}\n","import './openchannel-message-list.scss';\n\nimport React, { ReactElement, useRef, useState, useMemo } from 'react';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport isSameDay from 'date-fns/isSameDay';\n\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\n\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { compareMessagesForGrouping } from '../../context/utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport OpenChannelMessage from '../OpenChannelMessage';\nimport { RenderMessageProps } from '../../../../types';\nimport { useHandleOnScrollCallback } from './useHandleOnScrollCallback';\n\nexport type OpenchannelMessageListProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n renderPlaceHolderEmptyList?: () => React.ReactElement;\n}\n\nfunction OpenchannelMessageList(\n props: OpenchannelMessageListProps,\n ref: React.RefObject<HTMLDivElement>,\n): ReactElement {\n const {\n isMessageGroupingEnabled = true,\n allMessages,\n hasMore,\n onScroll,\n } = useOpenChannelContext();\n const scrollRef = ref || useRef(null);\n const [showScrollDownButton, setShowScrollDownButton] = useState(false);\n\n const scrollToBottom = () => {\n if (scrollRef && scrollRef.current) {\n scrollRef.current.scrollTo(0, scrollRef.current.scrollHeight);\n setShowScrollDownButton(false);\n }\n };\n\n const handleOnScroll = useHandleOnScrollCallback({\n setShowScrollDownButton,\n hasMore,\n onScroll,\n scrollRef,\n });\n\n const memoizedMessageList = useMemo(() => {\n if (allMessages.length > 0) {\n return (\n allMessages.map((message, index) => {\n const previousMessage = allMessages[index - 1];\n const nextMessage = allMessages[index - 1];\n\n const previousMessageCreatedAt = previousMessage && previousMessage.createdAt;\n const currentCreatedAt = message?.createdAt;\n // https://stackoverflow.com/a/41855608\n const hasSeparator = !(previousMessageCreatedAt && (\n isSameDay(currentCreatedAt, previousMessageCreatedAt)\n ));\n\n const [chainTop, chainBottom] = isMessageGroupingEnabled\n ? compareMessagesForGrouping(previousMessage, message, nextMessage)\n : [false, false];\n return (\n <OpenChannelMessage\n key={message?.messageId || (message as UserMessage | FileMessage)?.reqId}\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n hasSeparator={hasSeparator}\n renderMessage={props?.renderMessage}\n />\n )\n })\n );\n }\n return (\n props?.renderPlaceHolderEmptyList?.() || (\n <PlaceHolder\n className=\"sendbird-openchannel-conversation-scroll__container__place-holder\"\n type={PlaceHolderTypes.NO_MESSAGES}\n />\n )\n );\n }, [allMessages]);\n\n return (\n <div className=\"sendbird-openchannel-conversation-scroll\">\n <div className=\"sendbird-openchannel-conversation-scroll__container\">\n <div className=\"sendbird-openchannel-conversation-scroll__container__padding\" />\n <div\n className={[\n 'sendbird-openchannel-conversation-scroll__container__item-container',\n (allMessages.length > 0) ? '' : 'no-messages',\n ].join(' ')}\n onScroll={handleOnScroll}\n ref={scrollRef}\n >\n {memoizedMessageList}\n </div>\n </div>\n {\n showScrollDownButton && (\n <div\n className=\"sendbird-openchannel-conversation-scroll__container__scroll-bottom-button\"\n onClick={scrollToBottom}\n onKeyDown={scrollToBottom}\n tabIndex={0}\n role=\"button\"\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.CONTENT}\n />\n </div>\n )\n }\n </div>\n );\n}\n\nexport default React.forwardRef(OpenchannelMessageList);\n"],"names":["useHandleOnScrollCallback","_a","setShowScrollDownButton","hasMore","onScroll","scrollRef","useCallback","e","element","target","scrollTop","scrollHeight","clientHeight","scrollBottom","SCROLL_BUFFER","current","OpenchannelMessageList","props","ref","useOpenChannelContext","_b","isMessageGroupingEnabled","allMessages","useRef","_c","useState","showScrollDownButton","scrollToBottom","scrollTo","handleOnScroll","memoizedMessageList","useMemo","length","map","message","index","previousMessage","nextMessage","previousMessageCreatedAt","createdAt","currentCreatedAt","hasSeparator","isSameDay","compareMessagesForGrouping","chainTop","chainBottom","React","OpenChannelMessage","messageId","reqId","renderMessage","renderPlaceHolderEmptyList","call","PlaceHolderTypes","NO_MESSAGES","join","IconTypes","CHEVRON_DOWN","IconColors","CONTENT","forwardRef"],"mappings":"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"}
1
+ {"version":3,"file":"OpenChannelMessageList.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelMessageList/useHandleOnScrollCallback.ts","../../../src/smart-components/OpenChannel/components/OpenChannelMessageList/index.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { SCROLL_BUFFER } from \"../../../../utils/consts\";\n\nexport interface UseHandleOnScrollCallbackProps {\n setShowScrollDownButton: React.Dispatch<React.SetStateAction<boolean>>;\n hasMore: boolean;\n onScroll(fn: () => void): void;\n scrollRef: React.RefObject<HTMLDivElement>;\n}\n\nexport function calcScrollBottom(scrollHeight: number, scrollTop: number): number {\n return scrollHeight - scrollTop\n}\n\nexport function useHandleOnScrollCallback({\n setShowScrollDownButton,\n hasMore,\n onScroll,\n scrollRef,\n}: UseHandleOnScrollCallbackProps): (e: React.UIEvent<HTMLElement>) => void {\n return useCallback((e) => {\n const element = e.target as Element;\n const {\n scrollTop,\n scrollHeight,\n clientHeight,\n } = element;\n // https://sendbird.atlassian.net/browse/SBISSUE-11759\n // the edge case where channel is inside a page that already has scroll\n // scrollintoView will move the whole page, which we dont want\n const scrollBottom = calcScrollBottom(scrollHeight, scrollTop);\n // even if there is more to fetch or not,\n // we still have to show the scroll to bottom button\n if (scrollHeight > scrollTop + clientHeight + 1) {\n setShowScrollDownButton(true);\n } else {\n setShowScrollDownButton(false);\n }\n if (!hasMore) {\n return;\n }\n if (scrollTop < SCROLL_BUFFER) {\n onScroll(() => {\n // sets the scroll position to the bottom of the new messages\n scrollRef.current.scrollTop = scrollRef.current.scrollHeight - scrollBottom;\n });\n }\n }, [\n setShowScrollDownButton,\n hasMore,\n onScroll,\n scrollRef,\n ]);\n}\n","import './openchannel-message-list.scss';\n\nimport React, { ReactElement, useRef, useState, useMemo } from 'react';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport isSameDay from 'date-fns/isSameDay';\n\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\n\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { compareMessagesForGrouping } from '../../context/utils';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\nimport OpenChannelMessage from '../OpenChannelMessage';\nimport { RenderMessageProps } from '../../../../types';\nimport { useHandleOnScrollCallback } from './useHandleOnScrollCallback';\nimport { MessageProvider } from '../../../Message/context/MessageProvider';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\n\nexport type OpenchannelMessageListProps = {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n renderPlaceHolderEmptyList?: () => React.ReactElement;\n}\n\nfunction OpenchannelMessageList(\n props: OpenchannelMessageListProps,\n ref: React.RefObject<HTMLDivElement>,\n): ReactElement {\n const {\n isMessageGroupingEnabled = true,\n allMessages,\n hasMore,\n onScroll,\n } = useOpenChannelContext();\n const store = useSendbirdStateContext();\n const userId = store.config.userId;\n const scrollRef = ref || useRef(null);\n const [showScrollDownButton, setShowScrollDownButton] = useState(false);\n\n const scrollToBottom = () => {\n if (scrollRef && scrollRef.current) {\n scrollRef.current.scrollTo(0, scrollRef.current.scrollHeight);\n setShowScrollDownButton(false);\n }\n };\n\n const handleOnScroll = useHandleOnScrollCallback({\n setShowScrollDownButton,\n hasMore,\n onScroll,\n scrollRef,\n });\n\n const memoizedMessageList = useMemo(() => {\n if (allMessages.length > 0) {\n return (\n allMessages.map((message, index) => {\n const previousMessage = allMessages[index - 1];\n const nextMessage = allMessages[index - 1];\n\n const previousMessageCreatedAt = previousMessage && previousMessage.createdAt;\n const currentCreatedAt = message?.createdAt;\n // https://stackoverflow.com/a/41855608\n const hasSeparator = !(previousMessageCreatedAt && (\n isSameDay(currentCreatedAt, previousMessageCreatedAt)\n ));\n\n const [chainTop, chainBottom] = isMessageGroupingEnabled\n ? compareMessagesForGrouping(previousMessage, message, nextMessage)\n : [false, false];\n const isByMe = (message as UserMessage)?.sender?.userId === userId;\n const key = message?.messageId || (message as UserMessage)?.reqId;\n return (\n <MessageProvider message={message} isByMe={isByMe} key={key}>\n <OpenChannelMessage\n message={message}\n chainTop={chainTop}\n chainBottom={chainBottom}\n hasSeparator={hasSeparator}\n renderMessage={props?.renderMessage}\n />\n </MessageProvider>\n )\n })\n );\n }\n return (\n props?.renderPlaceHolderEmptyList?.() || (\n <PlaceHolder\n className=\"sendbird-openchannel-conversation-scroll__container__place-holder\"\n type={PlaceHolderTypes.NO_MESSAGES}\n />\n )\n );\n }, [allMessages]);\n\n return (\n <div className=\"sendbird-openchannel-conversation-scroll\">\n <div className=\"sendbird-openchannel-conversation-scroll__container\">\n <div className=\"sendbird-openchannel-conversation-scroll__container__padding\" />\n <div\n className={[\n 'sendbird-openchannel-conversation-scroll__container__item-container',\n (allMessages.length > 0) ? '' : 'no-messages',\n ].join(' ')}\n onScroll={handleOnScroll}\n ref={scrollRef}\n >\n {memoizedMessageList}\n </div>\n </div>\n {\n showScrollDownButton && (\n <div\n className=\"sendbird-openchannel-conversation-scroll__container__scroll-bottom-button\"\n onClick={scrollToBottom}\n onKeyDown={scrollToBottom}\n tabIndex={0}\n role=\"button\"\n >\n <Icon\n width=\"24px\"\n height=\"24px\"\n type={IconTypes.CHEVRON_DOWN}\n fillColor={IconColors.CONTENT}\n />\n </div>\n )\n }\n </div>\n );\n}\n\nexport default React.forwardRef(OpenchannelMessageList);\n"],"names":["calcScrollBottom","scrollHeight","scrollTop","useHandleOnScrollCallback","_a","setShowScrollDownButton","hasMore","onScroll","scrollRef","useCallback","e","element","target","clientHeight","scrollBottom","SCROLL_BUFFER","current","OpenchannelMessageList","props","ref","useOpenChannelContext","_b","isMessageGroupingEnabled","allMessages","store","useSendbirdStateContext","userId","config","useRef","_c","useState","showScrollDownButton","scrollToBottom","scrollTo","handleOnScroll","memoizedMessageList","useMemo","length","map","message","index","previousMessage","nextMessage","previousMessageCreatedAt","createdAt","currentCreatedAt","hasSeparator","isSameDay","compareMessagesForGrouping","chainTop","chainBottom","isByMe","sender","key","messageId","reqId","React","OpenChannelMessage","renderMessage","renderPlaceHolderEmptyList","call","PlaceHolderTypes","NO_MESSAGES","join","IconTypes","CHEVRON_DOWN","IconColors","CONTENT","forwardRef"],"mappings":"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"}
@@ -1,41 +1,44 @@
1
1
  import React__default from 'react';
2
- import { u as useOpenChannelContext } from '../../OpenChannelProvider-c5952f33.js';
2
+ import { u as useOpenChannelContext } from '../../OpenChannelProvider-e418b369.js';
3
3
  import OpenChannelInput from './OpenChannelInput.js';
4
4
  import FrozenNotification from './FrozenChannelNotification.js';
5
5
  import OpenchannelConversationHeader from './OpenChannelHeader.js';
6
- import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-86cb1c98.js';
6
+ import { P as PlaceHolder, a as PlaceHolderTypes } from '../../index-0ecbda20.js';
7
7
  import OpenChannelMessageList from './OpenChannelMessageList.js';
8
- import '../../index-97a2ff37.js';
9
- import '../../index-18c2f8d4.js';
10
- import '../../UserProfileContext-5d7c5f9f.js';
8
+ import '../../index-aced8439.js';
9
+ import '../../index-cf141ad7.js';
10
+ import '../../UserProfileContext-1996d4d2.js';
11
11
  import 'prop-types';
12
- import '../../tslib.es6-1aaf3795.js';
13
- import '../../compareIds-148644b4.js';
14
- import '../../topics-df7f51d4.js';
12
+ import '../../tslib.es6-209c9f08.js';
13
+ import '../../compareIds-d958887d.js';
14
+ import '../../topics-4697c2b3.js';
15
15
  import '@sendbird/chat';
16
16
  import '@sendbird/chat/openChannel';
17
- import '../../uuid-29207f65.js';
17
+ import '../../uuid-31c6ecb2.js';
18
18
  import '../../useSendbirdStateContext.js';
19
19
  import '../../withSendbird.js';
20
- import '../../LocalizationContext-ef72d4b1.js';
21
- import '../../stringSet-273bec27.js';
20
+ import '../../LocalizationContext-654ae04f.js';
21
+ import '../../stringSet-7c7d84fc.js';
22
22
  import '../../ui/MessageInput.js';
23
- import '../../_rollupPluginBabelHelpers-37cba0d6.js';
24
- import '../../const-bba4efc9.js';
25
- import '../../const-bf594206.js';
23
+ import '../../_rollupPluginBabelHelpers-e908c50d.js';
24
+ import '../../const-c7334190.js';
25
+ import '../../const-735bcf5b.js';
26
26
  import '../../ui/IconButton.js';
27
27
  import '../../ui/Button.js';
28
- import '../../index-2c0ab386.js';
28
+ import '../../index-8e901b57.js';
29
29
  import 'dompurify';
30
- import '../../consts-f9543b99.js';
30
+ import '../../consts-ddb92249.js';
31
31
  import '../../ui/Icon.js';
32
- import '../../index-556999ef.js';
32
+ import '../../index-83ae3ffe.js';
33
33
  import '../../utils/message/getOutgoingMessageState.js';
34
+ import '../../consts-12512664.js';
35
+ import '../../consts-8f50899e.js';
36
+ import '../../tokenize-8f238f49.js';
34
37
  import '../../ui/Avatar.js';
35
38
  import '../../ui/ImageRenderer.js';
36
- import '../../MediaQueryContext-683c7242.js';
39
+ import '../../MediaQueryContext-e791a4d1.js';
37
40
  import '../../ui/Loader.js';
38
- import '../../index-1dfb77d4.js';
41
+ import '../../index-4c3eaeb7.js';
39
42
  import './OpenChannelMessage.js';
40
43
  import '../../ui/OpenchannelUserMessage.js';
41
44
  import '../../ui/ContextMenu.js';
@@ -43,24 +46,25 @@ import 'react-dom';
43
46
  import '../../ui/SortByRow.js';
44
47
  import '../../ui/UserProfile.js';
45
48
  import '../../sendbirdSelectors.js';
46
- import '../../utils-99c30ef6.js';
47
- import '../../utils-09901477.js';
48
- import '../../index-90365474.js';
49
- import '../../useLongPress-1ae5a380.js';
49
+ import '../../utils-04bd857d.js';
50
+ import '../../utils-3d03001e.js';
51
+ import '../../index-47d179f2.js';
52
+ import '../../useLongPress-e2570976.js';
50
53
  import '../../ui/OpenChannelAdminMessage.js';
51
54
  import '../../ui/OpenchannelOGMessage.js';
52
55
  import '../../ui/LinkLabel.js';
53
- import '../../ui/Word.js';
56
+ import '../../index-ace292c2.js';
57
+ import '../../Message/context.js';
54
58
  import '../../ui/MentionLabel.js';
55
59
  import '../../ui/OpenchannelThumbnailMessage.js';
56
60
  import '../../ui/OpenchannelFileMessage.js';
57
61
  import '../../ui/TextButton.js';
58
- import '../../color-e5d40073.js';
62
+ import '../../color-f6e2214f.js';
59
63
  import '../../ui/DateSeparator.js';
60
64
  import '../../ui/FileViewer.js';
61
- import '../../index-e3d008b9.js';
65
+ import '../../index-12c44496.js';
62
66
  import '../../ui/Modal.js';
63
- import '../../consts-b3042213.js';
67
+ import '../../consts-9422accf.js';
64
68
 
65
69
  var COMPONENT_CLASS_NAME = 'sendbird-openchannel-conversation';
66
70
 
@@ -1 +1 @@
1
- {"version":3,"file":"OpenChannelUI.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelUI/index.tsx"],"sourcesContent":["import './open-channel-ui.scss';\n\nimport React from 'react';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\n\nimport OpenChannelInput from '../OpenChannelInput';\nimport FrozenChannelNotification from '../FrozenChannelNotification';\nimport OpenChannelHeader from '../OpenChannelHeader';\n// import OpenchannelConversationScroll from './components/OpenchannelConversationScroll';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport OpenChannelMessageList from '../OpenChannelMessageList';\nimport { RenderMessageProps } from '../../../../types';\n\nexport interface OpenChannelUIProps {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n renderHeader?: () => React.ReactElement;\n renderInput?: () => React.ReactElement;\n renderPlaceHolderEmptyList?: () => React.ReactElement;\n renderPlaceHolderError?: () => React.ReactElement;\n renderPlaceHolderLoading?: () => React.ReactElement;\n}\n\nconst COMPONENT_CLASS_NAME = 'sendbird-openchannel-conversation';\n\nconst OpenChannelUI: React.FC<OpenChannelUIProps> = ({\n renderMessage,\n renderHeader,\n renderInput,\n renderPlaceHolderEmptyList,\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n}: OpenChannelUIProps) => {\n const {\n currentOpenChannel,\n amIBanned,\n loading,\n isInvalid,\n messageInputRef,\n conversationScrollRef,\n } = useOpenChannelContext();\n if (\n !currentOpenChannel\n || !currentOpenChannel?.url\n || amIBanned\n ) {\n return (renderPlaceHolderError?.() ||\n <div className={COMPONENT_CLASS_NAME}><PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} /></div>\n );\n }\n if (loading) {\n return (renderPlaceHolderLoading?.() ||\n <div className={COMPONENT_CLASS_NAME}><PlaceHolder type={PlaceHolderTypes.LOADING} /></div>\n );\n }\n if (isInvalid) {\n return (renderPlaceHolderError?.() ||\n <div className={COMPONENT_CLASS_NAME}><PlaceHolder type={PlaceHolderTypes.WRONG} /></div>\n );\n }\n\n return (\n <div className={COMPONENT_CLASS_NAME}>\n {\n renderHeader?.() || (\n <OpenChannelHeader />\n )\n }\n {\n currentOpenChannel?.isFrozen && (\n <FrozenChannelNotification />\n )\n }\n <OpenChannelMessageList\n ref={conversationScrollRef}\n renderMessage={renderMessage}\n renderPlaceHolderEmptyList={renderPlaceHolderEmptyList}\n />\n {\n renderInput?.() || (\n <OpenChannelInput ref={messageInputRef} />\n )\n }\n </div>\n );\n};\n\nexport default OpenChannelUI;\n"],"names":["COMPONENT_CLASS_NAME","OpenChannelUI","_a","renderMessage","renderHeader","renderInput","renderPlaceHolderEmptyList","renderPlaceHolderError","renderPlaceHolderLoading","_b","useOpenChannelContext","currentOpenChannel","amIBanned","loading","isInvalid","messageInputRef","conversationScrollRef","url","React","PlaceHolderTypes","NO_CHANNELS","LOADING","WRONG","OpenChannelHeader","isFrozen","FrozenChannelNotification"],"mappings":"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"}
1
+ {"version":3,"file":"OpenChannelUI.js","sources":["../../../src/smart-components/OpenChannel/components/OpenChannelUI/index.tsx"],"sourcesContent":["import './open-channel-ui.scss';\n\nimport React from 'react';\nimport { useOpenChannelContext } from '../../context/OpenChannelProvider';\n\nimport OpenChannelInput from '../OpenChannelInput';\nimport FrozenChannelNotification from '../FrozenChannelNotification';\nimport OpenChannelHeader from '../OpenChannelHeader';\n// import OpenchannelConversationScroll from './components/OpenchannelConversationScroll';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport OpenChannelMessageList from '../OpenChannelMessageList';\nimport { RenderMessageProps } from '../../../../types';\n\nexport interface OpenChannelUIProps {\n renderMessage?: (props: RenderMessageProps) => React.ElementType<RenderMessageProps>;\n renderHeader?: () => React.ReactElement;\n renderInput?: () => React.ReactElement;\n renderPlaceHolderEmptyList?: () => React.ReactElement;\n renderPlaceHolderError?: () => React.ReactElement;\n renderPlaceHolderLoading?: () => React.ReactElement;\n}\n\nconst COMPONENT_CLASS_NAME = 'sendbird-openchannel-conversation';\n\nconst OpenChannelUI: React.FC<OpenChannelUIProps> = ({\n renderMessage,\n renderHeader,\n renderInput,\n renderPlaceHolderEmptyList,\n renderPlaceHolderError,\n renderPlaceHolderLoading,\n}: OpenChannelUIProps) => {\n const {\n currentOpenChannel,\n amIBanned,\n loading,\n isInvalid,\n messageInputRef,\n conversationScrollRef,\n } = useOpenChannelContext();\n if (\n !currentOpenChannel\n || !currentOpenChannel?.url\n || amIBanned\n ) {\n return (renderPlaceHolderError?.() ||\n <div className={COMPONENT_CLASS_NAME}><PlaceHolder type={PlaceHolderTypes.NO_CHANNELS} /></div>\n );\n }\n if (loading) {\n return (renderPlaceHolderLoading?.() ||\n <div className={COMPONENT_CLASS_NAME}><PlaceHolder type={PlaceHolderTypes.LOADING} /></div>\n );\n }\n if (isInvalid) {\n return (renderPlaceHolderError?.() ||\n <div className={COMPONENT_CLASS_NAME}><PlaceHolder type={PlaceHolderTypes.WRONG} /></div>\n );\n }\n\n return (\n <div className={COMPONENT_CLASS_NAME}>\n {\n renderHeader?.() || (\n <OpenChannelHeader />\n )\n }\n {\n currentOpenChannel?.isFrozen && (\n <FrozenChannelNotification />\n )\n }\n <OpenChannelMessageList\n ref={conversationScrollRef}\n renderMessage={renderMessage}\n renderPlaceHolderEmptyList={renderPlaceHolderEmptyList}\n />\n {\n renderInput?.() || (\n <OpenChannelInput ref={messageInputRef} />\n )\n }\n </div>\n );\n};\n\nexport default OpenChannelUI;\n"],"names":["COMPONENT_CLASS_NAME","OpenChannelUI","_a","renderMessage","renderHeader","renderInput","renderPlaceHolderEmptyList","renderPlaceHolderError","renderPlaceHolderLoading","_b","useOpenChannelContext","currentOpenChannel","amIBanned","loading","isInvalid","messageInputRef","conversationScrollRef","url","React","PlaceHolderTypes","NO_CHANNELS","LOADING","WRONG","OpenChannelHeader","isFrozen","FrozenChannelNotification"],"mappings":"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"}