@sendbird/uikit-react 3.4.8 → 3.5.0-mobile-web-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (576) hide show
  1. package/App.js +119 -70
  2. package/App.js.map +1 -1
  3. package/Channel/components/ChannelHeader.js +18 -18
  4. package/Channel/components/ChannelUI.js +46 -41
  5. package/Channel/components/ChannelUI.js.map +1 -1
  6. package/Channel/components/FileViewer.js +14 -14
  7. package/Channel/components/FrozenNotification.js +4 -4
  8. package/Channel/components/Message.js +59 -45
  9. package/Channel/components/Message.js.map +1 -1
  10. package/Channel/components/MessageInput.js +35 -36
  11. package/Channel/components/MessageInput.js.map +1 -1
  12. package/Channel/components/MessageList.js +85 -46
  13. package/Channel/components/MessageList.js.map +1 -1
  14. package/Channel/components/RemoveMessageModal.js +16 -16
  15. package/Channel/components/SuggestedMentionList.js +16 -16
  16. package/Channel/components/TypingIndicator.js +14 -14
  17. package/Channel/components/UnreadCount.js +5 -5
  18. package/Channel/components/UnreadCount.js.map +1 -1
  19. package/Channel/context.js +11 -11
  20. package/Channel.js +46 -41
  21. package/Channel.js.map +1 -1
  22. package/ChannelList/components/AddChannel.js +14 -14
  23. package/ChannelList/components/ChannelListHeader.js +6 -6
  24. package/ChannelList/components/ChannelListUI.js +33 -32
  25. package/ChannelList/components/ChannelListUI.js.map +1 -1
  26. package/ChannelList/components/ChannelPreview.js +25 -25
  27. package/ChannelList/components/ChannelPreviewAction.js +13 -13
  28. package/ChannelList/context.js +7 -7
  29. package/ChannelList.js +29 -29
  30. package/{ChannelListProvider-1d8f4d94.js → ChannelListProvider-42fb305a.js} +19 -37
  31. package/ChannelListProvider-42fb305a.js.map +1 -0
  32. package/{ChannelProvider-bba4a095.js → ChannelProvider-42ea1a96.js} +59 -24
  33. package/ChannelProvider-42ea1a96.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 +15 -14
  45. package/CreateChannel/components/InviteUsers.js.map +1 -1
  46. package/CreateChannel/components/SelectChannelType.js +10 -10
  47. package/CreateChannel/context.js +4 -4
  48. package/CreateChannel.js +13 -13
  49. package/{CreateChannelProvider-1ba7a571.js → CreateChannelProvider-37af96d2.js} +1 -1
  50. package/{CreateChannelProvider-1ba7a571.js.map → CreateChannelProvider-37af96d2.js.map} +1 -1
  51. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  52. package/CreateOpenChannel/context.js +1 -1
  53. package/CreateOpenChannel.js +9 -9
  54. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  55. package/EditUserProfile.js +12 -12
  56. package/{LocalizationContext-ae38446a.js → LocalizationContext-1839d2db.js} +3 -3
  57. package/{LocalizationContext-ae38446a.js.map → LocalizationContext-1839d2db.js.map} +1 -1
  58. package/{MediaQueryContext-8d283dc2.js → MediaQueryContext-0e0b3a1b.js} +11 -6
  59. package/MediaQueryContext-0e0b3a1b.js.map +1 -0
  60. package/{MemberList-38971d43.js → MemberList-28589b39.js} +5 -5
  61. package/{MemberList-38971d43.js.map → MemberList-28589b39.js.map} +1 -1
  62. package/Message/context.js +5 -1
  63. package/Message/context.js.map +1 -1
  64. package/MessageSearch/components/MessageSearchUI.js +11 -11
  65. package/MessageSearch/context.js +1 -1
  66. package/MessageSearch.js +11 -11
  67. package/MessageSearch.js.map +1 -1
  68. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  69. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  70. package/OpenChannel/components/OpenChannelInput.js +18 -18
  71. package/OpenChannel/components/OpenChannelMessage.js +27 -27
  72. package/OpenChannel/components/OpenChannelMessageList.js +31 -31
  73. package/OpenChannel/components/OpenChannelUI.js +31 -31
  74. package/OpenChannel/context.js +8 -8
  75. package/OpenChannel.js +31 -31
  76. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  77. package/OpenChannelList/components/OpenChannelPreview.js +3 -3
  78. package/OpenChannelList/context.js +3 -3
  79. package/OpenChannelList.js +13 -13
  80. package/{OpenChannelListProvider-e0add710.js → OpenChannelListProvider-71a32f2d.js} +3 -3
  81. package/{OpenChannelListProvider-e0add710.js.map → OpenChannelListProvider-71a32f2d.js.map} +1 -1
  82. package/{OpenChannelProvider-49db4c6c.js → OpenChannelProvider-377a0b6e.js} +7 -7
  83. package/{OpenChannelProvider-49db4c6c.js.map → OpenChannelProvider-377a0b6e.js.map} +1 -1
  84. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  85. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  86. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  87. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  88. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  89. package/OpenChannelSettings/context.js +3 -3
  90. package/OpenChannelSettings.js +17 -17
  91. package/{RemoveMessageModal-10f50eae.js → RemoveMessageModal-558db27f.js} +3 -3
  92. package/{RemoveMessageModal-10f50eae.js.map → RemoveMessageModal-558db27f.js.map} +1 -1
  93. package/SendbirdProvider.js +299 -65
  94. package/SendbirdProvider.js.map +1 -1
  95. package/Thread/components/ParentMessageInfo.js +90 -49
  96. package/Thread/components/ParentMessageInfo.js.map +1 -1
  97. package/Thread/components/ParentMessageInfoItem.js +33 -25
  98. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  99. package/Thread/components/ThreadHeader.js +7 -7
  100. package/Thread/components/ThreadHeader.js.map +1 -1
  101. package/Thread/components/ThreadList.js +40 -33
  102. package/Thread/components/ThreadList.js.map +1 -1
  103. package/Thread/components/ThreadListItem.js +88 -48
  104. package/Thread/components/ThreadListItem.js.map +1 -1
  105. package/Thread/components/ThreadMessageInput.js +36 -36
  106. package/Thread/components/ThreadMessageInput.js.map +1 -1
  107. package/Thread/components/ThreadUI.js +56 -46
  108. package/Thread/components/ThreadUI.js.map +1 -1
  109. package/Thread/context.js +8 -8
  110. package/Thread.js +49 -42
  111. package/Thread.js.map +1 -1
  112. package/{ThreadProvider-128d5041.js → ThreadProvider-0b73628e.js} +11 -8
  113. package/ThreadProvider-0b73628e.js.map +1 -0
  114. package/{UserProfileContext-91e3b3f2.js → UserProfileContext-7e645551.js} +1 -1
  115. package/{UserProfileContext-91e3b3f2.js.map → UserProfileContext-7e645551.js.map} +1 -1
  116. package/{VoiceMessageInputWrapper-cbfa4f2b.js → VoiceMessageInputWrapper-0b5a78a1.js} +7 -7
  117. package/{VoiceMessageInputWrapper-cbfa4f2b.js.map → VoiceMessageInputWrapper-0b5a78a1.js.map} +1 -1
  118. package/VoicePlayer/context.js +3 -3
  119. package/VoicePlayer/useVoicePlayer.js +3 -3
  120. package/VoiceRecorder/context.js +11 -4
  121. package/VoiceRecorder/context.js.map +1 -1
  122. package/VoiceRecorder/useVoiceRecorder.js +2 -2
  123. package/{WebAudioUtils-5f47139c.js → WebAudioUtils-fbdb41cd.js} +1 -1
  124. package/{WebAudioUtils-5f47139c.js.map → WebAudioUtils-fbdb41cd.js.map} +1 -1
  125. package/{_rollupPluginBabelHelpers-eaf55eff.js → _rollupPluginBabelHelpers-ce69e916.js} +1 -1
  126. package/_rollupPluginBabelHelpers-ce69e916.js.map +1 -0
  127. package/{actionTypes-98eee9f4.js → actionTypes-a5283c75.js} +1 -1
  128. package/{actionTypes-98eee9f4.js.map → actionTypes-a5283c75.js.map} +1 -1
  129. package/cjs/App.js +119 -70
  130. package/cjs/App.js.map +1 -1
  131. package/cjs/Channel/components/ChannelHeader.js +18 -18
  132. package/cjs/Channel/components/ChannelUI.js +46 -41
  133. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  134. package/cjs/Channel/components/FileViewer.js +14 -14
  135. package/cjs/Channel/components/FrozenNotification.js +4 -4
  136. package/cjs/Channel/components/Message.js +59 -45
  137. package/cjs/Channel/components/Message.js.map +1 -1
  138. package/cjs/Channel/components/MessageInput.js +35 -36
  139. package/cjs/Channel/components/MessageInput.js.map +1 -1
  140. package/cjs/Channel/components/MessageList.js +85 -46
  141. package/cjs/Channel/components/MessageList.js.map +1 -1
  142. package/cjs/Channel/components/RemoveMessageModal.js +16 -16
  143. package/cjs/Channel/components/SuggestedMentionList.js +16 -16
  144. package/cjs/Channel/components/TypingIndicator.js +14 -14
  145. package/cjs/Channel/components/UnreadCount.js +5 -5
  146. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  147. package/cjs/Channel/context.js +11 -11
  148. package/cjs/Channel.js +46 -41
  149. package/cjs/Channel.js.map +1 -1
  150. package/cjs/ChannelList/components/AddChannel.js +14 -14
  151. package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
  152. package/cjs/ChannelList/components/ChannelListUI.js +33 -32
  153. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  154. package/cjs/ChannelList/components/ChannelPreview.js +25 -25
  155. package/cjs/ChannelList/components/ChannelPreviewAction.js +13 -13
  156. package/cjs/ChannelList/context.js +7 -7
  157. package/cjs/ChannelList.js +29 -29
  158. package/cjs/{ChannelListProvider-634b78f3.js → ChannelListProvider-b3ffe21a.js} +19 -37
  159. package/cjs/ChannelListProvider-b3ffe21a.js.map +1 -0
  160. package/cjs/{ChannelProvider-5366f030.js → ChannelProvider-b6890429.js} +59 -24
  161. package/cjs/ChannelProvider-b6890429.js.map +1 -0
  162. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  163. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  164. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  165. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  166. package/cjs/ChannelSettings/components/ModerationPanel.js +14 -14
  167. package/cjs/ChannelSettings/components/UserListItem.js +10 -10
  168. package/cjs/ChannelSettings/components/UserPanel.js +13 -13
  169. package/cjs/ChannelSettings/context.js +3 -3
  170. package/cjs/ChannelSettings.js +17 -17
  171. package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
  172. package/cjs/CreateChannel/components/InviteUsers.js +15 -14
  173. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  174. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  175. package/cjs/CreateChannel/context.js +4 -4
  176. package/cjs/CreateChannel.js +13 -13
  177. package/cjs/{CreateChannelProvider-65dcc450.js → CreateChannelProvider-e1376032.js} +1 -1
  178. package/cjs/{CreateChannelProvider-65dcc450.js.map → CreateChannelProvider-e1376032.js.map} +1 -1
  179. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  180. package/cjs/CreateOpenChannel/context.js +1 -1
  181. package/cjs/CreateOpenChannel.js +9 -9
  182. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  183. package/cjs/EditUserProfile.js +12 -12
  184. package/cjs/{LocalizationContext-4fa55e6b.js → LocalizationContext-461a0816.js} +3 -3
  185. package/cjs/{LocalizationContext-4fa55e6b.js.map → LocalizationContext-461a0816.js.map} +1 -1
  186. package/cjs/{MediaQueryContext-e443379e.js → MediaQueryContext-de7c63bc.js} +11 -6
  187. package/cjs/MediaQueryContext-de7c63bc.js.map +1 -0
  188. package/cjs/{MemberList-3736f22c.js → MemberList-593809cb.js} +5 -5
  189. package/cjs/{MemberList-3736f22c.js.map → MemberList-593809cb.js.map} +1 -1
  190. package/cjs/Message/context.js +5 -1
  191. package/cjs/Message/context.js.map +1 -1
  192. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  193. package/cjs/MessageSearch/context.js +1 -1
  194. package/cjs/MessageSearch.js +11 -11
  195. package/cjs/MessageSearch.js.map +1 -1
  196. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  197. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  198. package/cjs/OpenChannel/components/OpenChannelInput.js +18 -18
  199. package/cjs/OpenChannel/components/OpenChannelMessage.js +27 -27
  200. package/cjs/OpenChannel/components/OpenChannelMessageList.js +31 -31
  201. package/cjs/OpenChannel/components/OpenChannelUI.js +31 -31
  202. package/cjs/OpenChannel/context.js +8 -8
  203. package/cjs/OpenChannel.js +31 -31
  204. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  205. package/cjs/OpenChannelList/components/OpenChannelPreview.js +3 -3
  206. package/cjs/OpenChannelList/context.js +3 -3
  207. package/cjs/OpenChannelList.js +13 -13
  208. package/cjs/{OpenChannelListProvider-458abc0e.js → OpenChannelListProvider-39c11f87.js} +3 -3
  209. package/cjs/{OpenChannelListProvider-458abc0e.js.map → OpenChannelListProvider-39c11f87.js.map} +1 -1
  210. package/cjs/{OpenChannelProvider-84f42ba8.js → OpenChannelProvider-e794e881.js} +7 -7
  211. package/cjs/{OpenChannelProvider-84f42ba8.js.map → OpenChannelProvider-e794e881.js.map} +1 -1
  212. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  213. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  214. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  215. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  216. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  217. package/cjs/OpenChannelSettings/context.js +3 -3
  218. package/cjs/OpenChannelSettings.js +17 -17
  219. package/cjs/{RemoveMessageModal-3535563a.js → RemoveMessageModal-29fa1a05.js} +3 -3
  220. package/cjs/{RemoveMessageModal-3535563a.js.map → RemoveMessageModal-29fa1a05.js.map} +1 -1
  221. package/cjs/SendbirdProvider.js +298 -64
  222. package/cjs/SendbirdProvider.js.map +1 -1
  223. package/cjs/Thread/components/ParentMessageInfo.js +90 -49
  224. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  225. package/cjs/Thread/components/ParentMessageInfoItem.js +33 -25
  226. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  227. package/cjs/Thread/components/ThreadHeader.js +7 -7
  228. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  229. package/cjs/Thread/components/ThreadList.js +40 -33
  230. package/cjs/Thread/components/ThreadList.js.map +1 -1
  231. package/cjs/Thread/components/ThreadListItem.js +88 -48
  232. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  233. package/cjs/Thread/components/ThreadMessageInput.js +36 -36
  234. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  235. package/cjs/Thread/components/ThreadUI.js +56 -46
  236. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  237. package/cjs/Thread/context.js +8 -8
  238. package/cjs/Thread.js +49 -42
  239. package/cjs/Thread.js.map +1 -1
  240. package/cjs/{ThreadProvider-d38505b4.js → ThreadProvider-e2098298.js} +11 -8
  241. package/cjs/ThreadProvider-e2098298.js.map +1 -0
  242. package/cjs/{UserProfileContext-83eaf6e8.js → UserProfileContext-1bcc48a2.js} +1 -1
  243. package/cjs/{UserProfileContext-83eaf6e8.js.map → UserProfileContext-1bcc48a2.js.map} +1 -1
  244. package/cjs/{VoiceMessageInputWrapper-68c8b8cb.js → VoiceMessageInputWrapper-f18d6a5e.js} +7 -7
  245. package/cjs/{VoiceMessageInputWrapper-68c8b8cb.js.map → VoiceMessageInputWrapper-f18d6a5e.js.map} +1 -1
  246. package/cjs/VoicePlayer/context.js +3 -3
  247. package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
  248. package/cjs/VoiceRecorder/context.js +11 -4
  249. package/cjs/VoiceRecorder/context.js.map +1 -1
  250. package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
  251. package/cjs/{WebAudioUtils-00b9890d.js → WebAudioUtils-aedad0b1.js} +1 -1
  252. package/cjs/{WebAudioUtils-00b9890d.js.map → WebAudioUtils-aedad0b1.js.map} +1 -1
  253. package/cjs/{_rollupPluginBabelHelpers-2c0fc9c3.js → _rollupPluginBabelHelpers-919a4db3.js} +1 -1
  254. package/cjs/_rollupPluginBabelHelpers-919a4db3.js.map +1 -0
  255. package/cjs/{actionTypes-fb3f6a66.js → actionTypes-1e75e6e9.js} +1 -1
  256. package/cjs/{actionTypes-fb3f6a66.js.map → actionTypes-1e75e6e9.js.map} +1 -1
  257. package/cjs/{color-83cbca20.js → color-48ff06b2.js} +1 -1
  258. package/cjs/{color-83cbca20.js.map → color-48ff06b2.js.map} +1 -1
  259. package/cjs/{compareIds-c2907ec8.js → compareIds-8ed822c1.js} +1 -1
  260. package/cjs/{compareIds-c2907ec8.js.map → compareIds-8ed822c1.js.map} +1 -1
  261. package/cjs/{const-75153738.js → const-49de651c.js} +1 -1
  262. package/cjs/{const-75153738.js.map → const-49de651c.js.map} +1 -1
  263. package/cjs/{const-17970c49.js → const-852d5677.js} +1 -1
  264. package/cjs/{const-17970c49.js.map → const-852d5677.js.map} +1 -1
  265. package/cjs/{consts-aaf1208c.js → consts-2580246d.js} +1 -1
  266. package/cjs/{consts-aaf1208c.js.map → consts-2580246d.js.map} +1 -1
  267. package/cjs/{consts-5ead6f3b.js → consts-5851f376.js} +1 -1
  268. package/cjs/{consts-5ead6f3b.js.map → consts-5851f376.js.map} +1 -1
  269. package/cjs/{consts-0db2bedc.js → consts-6f02fcc4.js} +3 -3
  270. package/cjs/consts-6f02fcc4.js.map +1 -0
  271. package/cjs/{consts-d2103ed5.js → consts-e9ee4cf4.js} +1 -1
  272. package/cjs/{consts-d2103ed5.js.map → consts-e9ee4cf4.js.map} +1 -1
  273. package/cjs/{context-d9a84cb9.js → context-4d89551f.js} +2 -2
  274. package/cjs/{context-d9a84cb9.js.map → context-4d89551f.js.map} +1 -1
  275. package/cjs/dist/index.css +255 -202
  276. package/cjs/dist/index.css.map +1 -1
  277. package/cjs/{index-1737cbae.js → index-0126dbb4.js} +4 -4
  278. package/cjs/{index-1737cbae.js.map → index-0126dbb4.js.map} +1 -1
  279. package/cjs/{index-6ac703ea.js → index-1a223893.js} +7 -6
  280. package/cjs/{index-6ac703ea.js.map → index-1a223893.js.map} +1 -1
  281. package/cjs/{index-fcd2f4ff.js → index-223e9372.js} +3 -2
  282. package/cjs/{index-fcd2f4ff.js.map → index-223e9372.js.map} +1 -1
  283. package/cjs/{index-552eb819.js → index-420b8e6d.js} +3 -3
  284. package/cjs/{index-552eb819.js.map → index-420b8e6d.js.map} +1 -1
  285. package/cjs/{index-22bdf04e.js → index-44186883.js} +2 -2
  286. package/cjs/{index-22bdf04e.js.map → index-44186883.js.map} +1 -1
  287. package/cjs/{index-47e4bdbc.js → index-5e6194f8.js} +1 -1
  288. package/cjs/{index-47e4bdbc.js.map → index-5e6194f8.js.map} +1 -1
  289. package/cjs/{index-be9c5a7d.js → index-60bf4d5c.js} +2 -2
  290. package/cjs/{index-be9c5a7d.js.map → index-60bf4d5c.js.map} +1 -1
  291. package/cjs/{index-c8c25288.js → index-60ea6503.js} +3 -3
  292. package/cjs/{index-c8c25288.js.map → index-60ea6503.js.map} +1 -1
  293. package/cjs/{index-09f8f2a4.js → index-6a46ed00.js} +3 -3
  294. package/cjs/{index-09f8f2a4.js.map → index-6a46ed00.js.map} +1 -1
  295. package/cjs/{index-10d8f30f.js → index-7a68d56f.js} +1 -1
  296. package/cjs/{index-10d8f30f.js.map → index-7a68d56f.js.map} +1 -1
  297. package/cjs/{index-5307f6c1.js → index-81aad270.js} +2 -2
  298. package/cjs/{index-5307f6c1.js.map → index-81aad270.js.map} +1 -1
  299. package/cjs/{index-41ce4c44.js → index-849c0736.js} +2 -2
  300. package/cjs/{index-41ce4c44.js.map → index-849c0736.js.map} +1 -1
  301. package/cjs/{index-56735815.js → index-a51f1b7d.js} +5 -5
  302. package/cjs/{index-56735815.js.map → index-a51f1b7d.js.map} +1 -1
  303. package/cjs/{index-01768a5e.js → index-a7025294.js} +6 -6
  304. package/cjs/{index-01768a5e.js.map → index-a7025294.js.map} +1 -1
  305. package/cjs/{index-265937df.js → index-bca3d144.js} +18 -2
  306. package/cjs/index-bca3d144.js.map +1 -0
  307. package/cjs/{index-61c3208b.js → index-f4682499.js} +4 -4
  308. package/cjs/{index-61c3208b.js.map → index-f4682499.js.map} +1 -1
  309. package/cjs/index-f5399132.js +419 -0
  310. package/cjs/index-f5399132.js.map +1 -0
  311. package/cjs/index.js +60 -58
  312. package/cjs/index.js.map +1 -1
  313. package/cjs/{index.module-3e7701ca.js → index.module-10ef9afc.js} +1 -1
  314. package/cjs/{index.module-3e7701ca.js.map → index.module-10ef9afc.js.map} +1 -1
  315. package/cjs/sendbirdSelectors.js +3 -3
  316. package/cjs/{stringSet-c24927d9.js → stringSet-d1cee26a.js} +1 -1
  317. package/cjs/{stringSet-c24927d9.js.map → stringSet-d1cee26a.js.map} +1 -1
  318. package/cjs/{tokenize-1441f448.js → tokenize-d3bb1637.js} +7 -3
  319. package/cjs/tokenize-d3bb1637.js.map +1 -0
  320. package/cjs/{topics-0df2f6f9.js → topics-00c67dd6.js} +1 -1
  321. package/cjs/{topics-0df2f6f9.js.map → topics-00c67dd6.js.map} +1 -1
  322. package/cjs/{types-df20b895.js → types-2e9e46b2.js} +1 -1
  323. package/cjs/types-2e9e46b2.js.map +1 -0
  324. package/cjs/ui/Accordion.js +2 -2
  325. package/cjs/ui/AccordionGroup.js +2 -2
  326. package/cjs/ui/AdminMessage.js +2 -2
  327. package/cjs/ui/Avatar.js +1 -1
  328. package/cjs/ui/Badge.js +4 -4
  329. package/cjs/ui/BottomSheet.js +1 -1
  330. package/cjs/ui/Button.js +2 -2
  331. package/cjs/ui/ChannelAvatar.js +2 -2
  332. package/cjs/ui/ConnectionStatus.js +4 -4
  333. package/cjs/ui/ContextMenu.js +35 -24
  334. package/cjs/ui/ContextMenu.js.map +1 -1
  335. package/cjs/ui/DateSeparator.js +3 -3
  336. package/cjs/ui/EmojiReactions.js +249 -46
  337. package/cjs/ui/EmojiReactions.js.map +1 -1
  338. package/cjs/ui/FileMessageItemBody.js +6 -6
  339. package/cjs/ui/FileViewer.js +8 -8
  340. package/cjs/ui/Icon.js +190 -167
  341. package/cjs/ui/Icon.js.map +1 -1
  342. package/cjs/ui/IconButton.js +1 -1
  343. package/cjs/ui/Input.js +2 -2
  344. package/cjs/ui/Label.js +2 -2
  345. package/cjs/ui/LinkLabel.js +2 -2
  346. package/cjs/ui/MentionLabel.js +10 -10
  347. package/cjs/ui/MentionUserLabel.js +1 -1
  348. package/cjs/ui/MessageContent.js +55 -400
  349. package/cjs/ui/MessageContent.js.map +1 -1
  350. package/cjs/ui/MessageInput.js +12 -12
  351. package/cjs/ui/MessageItemMenu.js +8 -8
  352. package/cjs/ui/MessageItemReactionMenu.js +12 -6
  353. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  354. package/cjs/ui/MessageSearchFileItem.js +10 -10
  355. package/cjs/ui/MessageSearchItem.js +8 -8
  356. package/cjs/ui/MessageStatus.js +10 -10
  357. package/cjs/ui/Modal.js +7 -7
  358. package/cjs/ui/OGMessageItemBody.js +14 -14
  359. package/cjs/ui/OpenChannelAdminMessage.js +2 -2
  360. package/cjs/ui/OpenChannelAvatar.js +5 -5
  361. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  362. package/cjs/ui/OpenchannelFileMessage.js +15 -15
  363. package/cjs/ui/OpenchannelOGMessage.js +45 -51
  364. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  365. package/cjs/ui/OpenchannelThumbnailMessage.js +14 -14
  366. package/cjs/ui/OpenchannelUserMessage.js +15 -15
  367. package/cjs/ui/PlaceHolder.js +5 -5
  368. package/cjs/ui/PlaybackTime.js +2 -2
  369. package/cjs/ui/QuoteMessage.js +6 -6
  370. package/cjs/ui/QuoteMessageInput.js +6 -6
  371. package/cjs/ui/ReactionBadge.js +2 -2
  372. package/cjs/ui/ReactionButton.js +15 -11
  373. package/cjs/ui/ReactionButton.js.map +1 -1
  374. package/cjs/ui/SortByRow.js +1 -1
  375. package/cjs/ui/TextButton.js +1 -1
  376. package/cjs/ui/TextMessageItemBody.js +14 -14
  377. package/cjs/ui/ThreadReplies.js +5 -5
  378. package/cjs/ui/ThumbnailMessageItemBody.js +15 -9
  379. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  380. package/cjs/ui/Toggle.js +1 -1
  381. package/cjs/ui/Tooltip.js +2 -2
  382. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  383. package/cjs/ui/UserListItem.js +14 -13
  384. package/cjs/ui/UserListItem.js.map +1 -1
  385. package/cjs/ui/UserProfile.js +9 -9
  386. package/cjs/ui/VoiceMessageItemBody.js +5 -5
  387. package/cjs/ui/VoiceMessgeInput.js +7 -7
  388. package/cjs/ui/Word.js +10 -10
  389. package/cjs/useDirtyGetMentions-7b6c8a19.js +77 -0
  390. package/cjs/useDirtyGetMentions-7b6c8a19.js.map +1 -0
  391. package/cjs/{useLongPress-8aa00a28.js → useLongPress-4c2e9a3b.js} +9 -5
  392. package/cjs/useLongPress-4c2e9a3b.js.map +1 -0
  393. package/cjs/useSendbirdStateContext.js +1 -1
  394. package/cjs/utils/message/isVoiceMessage.js +2 -2
  395. package/cjs/{utils-111f523c.js → utils-22d05a53.js} +1 -1
  396. package/cjs/{utils-111f523c.js.map → utils-22d05a53.js.map} +1 -1
  397. package/cjs/{utils-a1fead2f.js → utils-3dacb9bc.js} +1 -1
  398. package/cjs/{utils-a1fead2f.js.map → utils-3dacb9bc.js.map} +1 -1
  399. package/cjs/{utils-93abfb7c.js → utils-c5d4c36e.js} +1 -1
  400. package/cjs/{utils-93abfb7c.js.map → utils-c5d4c36e.js.map} +1 -1
  401. package/cjs/{utils-4717b83e.js → utils-f1c09ec3.js} +2 -2
  402. package/cjs/{utils-4717b83e.js.map → utils-f1c09ec3.js.map} +1 -1
  403. package/cjs/{uuid-c854e2a9.js → uuid-d86ea01f.js} +1 -1
  404. package/cjs/{uuid-c854e2a9.js.map → uuid-d86ea01f.js.map} +1 -1
  405. package/cjs/withSendbird.js +1 -1
  406. package/{color-c1b95a91.js → color-4ca8a2ea.js} +1 -1
  407. package/{color-c1b95a91.js.map → color-4ca8a2ea.js.map} +1 -1
  408. package/{compareIds-74cf4016.js → compareIds-08858dd3.js} +1 -1
  409. package/{compareIds-74cf4016.js.map → compareIds-08858dd3.js.map} +1 -1
  410. package/{const-befef81d.js → const-714046e0.js} +1 -1
  411. package/{const-befef81d.js.map → const-714046e0.js.map} +1 -1
  412. package/{const-3af04f0a.js → const-a77c08c9.js} +1 -1
  413. package/{const-3af04f0a.js.map → const-a77c08c9.js.map} +1 -1
  414. package/{consts-9ece4263.js → consts-9393e7c8.js} +3 -3
  415. package/consts-9393e7c8.js.map +1 -0
  416. package/{consts-a8bc28bd.js → consts-aecb8fab.js} +1 -1
  417. package/{consts-a8bc28bd.js.map → consts-aecb8fab.js.map} +1 -1
  418. package/{consts-354db0d9.js → consts-d46e0fc1.js} +1 -1
  419. package/{consts-354db0d9.js.map → consts-d46e0fc1.js.map} +1 -1
  420. package/{consts-bb6cbaee.js → consts-decd9c7d.js} +1 -1
  421. package/{consts-bb6cbaee.js.map → consts-decd9c7d.js.map} +1 -1
  422. package/{context-38bde7ff.js → context-9a6b8b8a.js} +2 -2
  423. package/{context-38bde7ff.js.map → context-9a6b8b8a.js.map} +1 -1
  424. package/dist/index.css +255 -202
  425. package/dist/index.css.map +1 -1
  426. package/{index-67dd0c26.js → index-06f34585.js} +2 -2
  427. package/{index-67dd0c26.js.map → index-06f34585.js.map} +1 -1
  428. package/{index-aa215b1c.js → index-20880943.js} +3 -3
  429. package/{index-aa215b1c.js.map → index-20880943.js.map} +1 -1
  430. package/{index-4554e20e.js → index-3130ac38.js} +4 -4
  431. package/{index-4554e20e.js.map → index-3130ac38.js.map} +1 -1
  432. package/{index-14bb6832.js → index-3165e396.js} +1 -1
  433. package/{index-14bb6832.js.map → index-3165e396.js.map} +1 -1
  434. package/{index-88ab67cc.js → index-400417a1.js} +4 -4
  435. package/{index-88ab67cc.js.map → index-400417a1.js.map} +1 -1
  436. package/{index-ae8e6fc3.js → index-5644a6c0.js} +3 -3
  437. package/{index-ae8e6fc3.js.map → index-5644a6c0.js.map} +1 -1
  438. package/{index-1be3f6d7.js → index-5db37327.js} +3 -3
  439. package/{index-1be3f6d7.js.map → index-5db37327.js.map} +1 -1
  440. package/{index-db801708.js → index-7c9ebc67.js} +5 -5
  441. package/{index-db801708.js.map → index-7c9ebc67.js.map} +1 -1
  442. package/{index-8a4d2b6e.js → index-9781d2b9.js} +2 -2
  443. package/{index-8a4d2b6e.js.map → index-9781d2b9.js.map} +1 -1
  444. package/{index-1556dc4a.js → index-b96440b7.js} +3 -3
  445. package/{index-1556dc4a.js.map → index-b96440b7.js.map} +1 -1
  446. package/{index-8bf82e3b.js → index-bf72ef7c.js} +7 -6
  447. package/{index-8bf82e3b.js.map → index-bf72ef7c.js.map} +1 -1
  448. package/{index-96f6e11b.js → index-c6df8184.js} +6 -6
  449. package/{index-96f6e11b.js.map → index-c6df8184.js.map} +1 -1
  450. package/{index-321e838f.js → index-d9c12cf4.js} +1 -1
  451. package/{index-321e838f.js.map → index-d9c12cf4.js.map} +1 -1
  452. package/{index-a900bd78.js → index-e1cd2fcf.js} +2 -2
  453. package/{index-a900bd78.js.map → index-e1cd2fcf.js.map} +1 -1
  454. package/index-edfb3327.js +413 -0
  455. package/index-edfb3327.js.map +1 -0
  456. package/{index-d8fdbe6f.js → index-fd51c7d1.js} +16 -3
  457. package/index-fd51c7d1.js.map +1 -0
  458. package/{index-ecf3a793.js → index-fd95258e.js} +2 -2
  459. package/{index-ecf3a793.js.map → index-fd95258e.js.map} +1 -1
  460. package/index.d.ts +3 -1
  461. package/index.js +60 -58
  462. package/index.js.map +1 -1
  463. package/{index.module-1c75b4f5.js → index.module-8c144786.js} +1 -1
  464. package/{index.module-1c75b4f5.js.map → index.module-8c144786.js.map} +1 -1
  465. package/package.json +2 -2
  466. package/sendbirdSelectors.js +3 -3
  467. package/{stringSet-6d89212b.js → stringSet-d368e289.js} +1 -1
  468. package/{stringSet-6d89212b.js.map → stringSet-d368e289.js.map} +1 -1
  469. package/{tokenize-2e969273.js → tokenize-7056afb7.js} +7 -3
  470. package/tokenize-7056afb7.js.map +1 -0
  471. package/{topics-8f4016e9.js → topics-f9628f1f.js} +1 -1
  472. package/{topics-8f4016e9.js.map → topics-f9628f1f.js.map} +1 -1
  473. package/{types-ebbbec62.js → types-2b508dbc.js} +1 -1
  474. package/types-2b508dbc.js.map +1 -0
  475. package/ui/Accordion.js +2 -2
  476. package/ui/AccordionGroup.js +2 -2
  477. package/ui/AdminMessage.js +2 -2
  478. package/ui/Avatar.js +1 -1
  479. package/ui/Badge.js +4 -4
  480. package/ui/BottomSheet.js +1 -1
  481. package/ui/Button.js +2 -2
  482. package/ui/ChannelAvatar.js +2 -2
  483. package/ui/ConnectionStatus.js +4 -4
  484. package/ui/ContextMenu.js +35 -24
  485. package/ui/ContextMenu.js.map +1 -1
  486. package/ui/DateSeparator.js +3 -3
  487. package/ui/EmojiReactions.js +250 -47
  488. package/ui/EmojiReactions.js.map +1 -1
  489. package/ui/FileMessageItemBody.js +6 -6
  490. package/ui/FileViewer.js +8 -8
  491. package/ui/Icon.js +190 -167
  492. package/ui/Icon.js.map +1 -1
  493. package/ui/IconButton.js +1 -1
  494. package/ui/Input.js +2 -2
  495. package/ui/Label.js +2 -2
  496. package/ui/LinkLabel.js +2 -2
  497. package/ui/MentionLabel.js +10 -10
  498. package/ui/MentionUserLabel.js +1 -1
  499. package/ui/MessageContent.js +56 -401
  500. package/ui/MessageContent.js.map +1 -1
  501. package/ui/MessageInput.js +12 -12
  502. package/ui/MessageItemMenu.js +8 -8
  503. package/ui/MessageItemReactionMenu.js +12 -6
  504. package/ui/MessageItemReactionMenu.js.map +1 -1
  505. package/ui/MessageSearchFileItem.js +10 -10
  506. package/ui/MessageSearchItem.js +8 -8
  507. package/ui/MessageStatus.js +10 -10
  508. package/ui/Modal.js +7 -7
  509. package/ui/OGMessageItemBody.js +14 -14
  510. package/ui/OpenChannelAdminMessage.js +2 -2
  511. package/ui/OpenChannelAvatar.js +5 -5
  512. package/ui/OpenchannelConversationHeader.js +6 -6
  513. package/ui/OpenchannelFileMessage.js +15 -15
  514. package/ui/OpenchannelOGMessage.js +45 -51
  515. package/ui/OpenchannelOGMessage.js.map +1 -1
  516. package/ui/OpenchannelThumbnailMessage.js +14 -14
  517. package/ui/OpenchannelUserMessage.js +15 -15
  518. package/ui/PlaceHolder.js +5 -5
  519. package/ui/PlaybackTime.js +2 -2
  520. package/ui/QuoteMessage.js +6 -6
  521. package/ui/QuoteMessageInput.js +6 -6
  522. package/ui/ReactionBadge.js +2 -2
  523. package/ui/ReactionButton.js +15 -11
  524. package/ui/ReactionButton.js.map +1 -1
  525. package/ui/SortByRow.js +1 -1
  526. package/ui/TextButton.js +1 -1
  527. package/ui/TextMessageItemBody.js +14 -14
  528. package/ui/ThreadReplies.js +5 -5
  529. package/ui/ThumbnailMessageItemBody.js +15 -9
  530. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  531. package/ui/Toggle.js +1 -1
  532. package/ui/Tooltip.js +2 -2
  533. package/ui/UnknownMessageItemBody.js +6 -6
  534. package/ui/UserListItem.js +14 -13
  535. package/ui/UserListItem.js.map +1 -1
  536. package/ui/UserProfile.js +9 -9
  537. package/ui/VoiceMessageItemBody.js +5 -5
  538. package/ui/VoiceMessgeInput.js +7 -7
  539. package/ui/Word.js +10 -10
  540. package/useDirtyGetMentions-e0c0f521.js +75 -0
  541. package/useDirtyGetMentions-e0c0f521.js.map +1 -0
  542. package/{useLongPress-8d44d259.js → useLongPress-685c7391.js} +9 -5
  543. package/useLongPress-685c7391.js.map +1 -0
  544. package/useSendbirdStateContext.js +1 -1
  545. package/utils/message/isVoiceMessage.js +2 -2
  546. package/{utils-c8b489c4.js → utils-256f157f.js} +1 -1
  547. package/{utils-c8b489c4.js.map → utils-256f157f.js.map} +1 -1
  548. package/{utils-8e039c1b.js → utils-4979f950.js} +1 -1
  549. package/{utils-8e039c1b.js.map → utils-4979f950.js.map} +1 -1
  550. package/{utils-7d781542.js → utils-f82ad058.js} +1 -1
  551. package/{utils-7d781542.js.map → utils-f82ad058.js.map} +1 -1
  552. package/{utils-b42f4fab.js → utils-fbc09760.js} +2 -2
  553. package/{utils-b42f4fab.js.map → utils-fbc09760.js.map} +1 -1
  554. package/{uuid-c94bd88b.js → uuid-720c99c0.js} +1 -1
  555. package/{uuid-c94bd88b.js.map → uuid-720c99c0.js.map} +1 -1
  556. package/withSendbird.js +1 -1
  557. package/ChannelListProvider-1d8f4d94.js.map +0 -1
  558. package/ChannelProvider-bba4a095.js.map +0 -1
  559. package/MediaQueryContext-8d283dc2.js.map +0 -1
  560. package/ThreadProvider-128d5041.js.map +0 -1
  561. package/_rollupPluginBabelHelpers-eaf55eff.js.map +0 -1
  562. package/cjs/ChannelListProvider-634b78f3.js.map +0 -1
  563. package/cjs/ChannelProvider-5366f030.js.map +0 -1
  564. package/cjs/MediaQueryContext-e443379e.js.map +0 -1
  565. package/cjs/ThreadProvider-d38505b4.js.map +0 -1
  566. package/cjs/_rollupPluginBabelHelpers-2c0fc9c3.js.map +0 -1
  567. package/cjs/consts-0db2bedc.js.map +0 -1
  568. package/cjs/index-265937df.js.map +0 -1
  569. package/cjs/tokenize-1441f448.js.map +0 -1
  570. package/cjs/types-df20b895.js.map +0 -1
  571. package/cjs/useLongPress-8aa00a28.js.map +0 -1
  572. package/consts-9ece4263.js.map +0 -1
  573. package/index-d8fdbe6f.js.map +0 -1
  574. package/tokenize-2e969273.js.map +0 -1
  575. package/types-ebbbec62.js.map +0 -1
  576. package/useLongPress-8d44d259.js.map +0 -1
@@ -1,4 +1,8 @@
1
+ import { b as _extends } from '../_rollupPluginBabelHelpers-ce69e916.js';
1
2
  import React__default from 'react';
3
+ import { u as useLongPress } from '../useLongPress-685c7391.js';
4
+ import { n as noop } from '../utils-256f157f.js';
5
+ import '../MediaQueryContext-0e0b3a1b.js';
2
6
 
3
7
  const ReactionButton = /*#__PURE__*/React__default.forwardRef((props, ref) => {
4
8
  const {
@@ -9,24 +13,24 @@ const ReactionButton = /*#__PURE__*/React__default.forwardRef((props, ref) => {
9
13
  onClick,
10
14
  children
11
15
  } = props;
12
- return /*#__PURE__*/React__default.createElement("div", {
16
+ const onClickHandler = useLongPress({
17
+ onLongPress: noop,
18
+ onClick
19
+ }, {
20
+ shouldPreventDefault: true,
21
+ shouldStopPropagation: true
22
+ });
23
+ return /*#__PURE__*/React__default.createElement("div", _extends({
13
24
  className: [...(Array.isArray(className) ? className : [className]), `sendbird-reaction-button${selected ? '--selected' : ''}`].join(' '),
14
25
  ref: ref,
15
26
  role: "button",
16
27
  style: {
17
28
  width,
18
29
  height
19
- },
20
- onClick: e => onClick(e),
21
- onKeyDown: e => onClick(e),
22
- onTouchEnd: e => {
23
- onClick(e);
24
- // to stop longpress
25
- e.stopPropagation();
26
- e.nativeEvent.stopImmediatePropagation();
27
- },
30
+ }
31
+ }, onClickHandler, {
28
32
  tabIndex: 0
29
- }, /*#__PURE__*/React__default.createElement("div", {
33
+ }), /*#__PURE__*/React__default.createElement("div", {
30
34
  className: "sendbird-reaction-button__inner"
31
35
  }, children));
32
36
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ReactionButton.js","sources":["../../src/ui/ReactionButton/index.tsx"],"sourcesContent":["import React, {\n KeyboardEvent,\n MouseEvent,\n ReactElement,\n RefObject,\n TouchEvent,\n} from 'react';\n\nimport './index.scss';\n\nexport interface ReactionButtonProps {\n children: ReactElement;\n className?: string | Array<string>;\n width?: string | number;\n height?: string | number;\n selected?: boolean;\n onClick?: (\n e: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement> | TouchEvent<HTMLDivElement>\n ) => void;\n}\nconst ReactionButton = React.forwardRef((props: ReactionButtonProps, ref: RefObject<HTMLDivElement>): ReactElement => {\n const {\n className,\n width,\n height,\n selected,\n onClick,\n children,\n } = props;\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n `sendbird-reaction-button${selected ? '--selected' : ''}`,\n ].join(' ')}\n ref={ref}\n role=\"button\"\n style={{ width, height }}\n onClick={(e) => onClick(e)}\n onKeyDown={(e) => onClick(e)}\n onTouchEnd={(e) => {\n onClick(e);\n // to stop longpress\n e.stopPropagation();\n e.nativeEvent.stopImmediatePropagation();\n }}\n tabIndex={0}\n >\n <div className=\"sendbird-reaction-button__inner\">\n {children}\n </div>\n </div>\n );\n});\n\nexport default ReactionButton;\n"],"names":["ReactionButton","React","forwardRef","props","ref","className","width","height","selected","onClick","children","createElement","Array","isArray","join","role","style","e","onKeyDown","onTouchEnd","stopPropagation","nativeEvent","stopImmediatePropagation","tabIndex"],"mappings":";;AAoBMA,MAAAA,cAAc,gBAAGC,cAAK,CAACC,UAAU,CAAC,CAACC,KAA0B,EAAEC,GAA8B,KAAmB;EACpH,MAAM;IACJC,SAAS;IACTC,KAAK;IACLC,MAAM;IACNC,QAAQ;IACRC,OAAO;AACPC,IAAAA,QAAAA;AACF,GAAC,GAAGP,KAAK,CAAA;EAET,oBACEF,cAAA,CAAAU,aAAA,CAAA,KAAA,EAAA;AACEN,IAAAA,SAAS,EAAE,CACT,IAAIO,KAAK,CAACC,OAAO,CAACR,SAAS,CAAC,GAAGA,SAAS,GAAG,CAACA,SAAS,CAAC,CAAC,EACtD,CAAA,wBAAA,EAA0BG,QAAQ,GAAG,YAAY,GAAG,EAAG,CAAA,CAAC,CAC1D,CAACM,IAAI,CAAC,GAAG,CAAE;AACZV,IAAAA,GAAG,EAAEA,GAAI;AACTW,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,KAAK,EAAE;MAAEV,KAAK;AAAEC,MAAAA,MAAAA;KAAS;AACzBE,IAAAA,OAAO,EAAGQ,CAAC,IAAKR,OAAO,CAACQ,CAAC,CAAE;AAC3BC,IAAAA,SAAS,EAAGD,CAAC,IAAKR,OAAO,CAACQ,CAAC,CAAE;IAC7BE,UAAU,EAAGF,CAAC,IAAK;MACjBR,OAAO,CAACQ,CAAC,CAAC,CAAA;AACV;MACAA,CAAC,CAACG,eAAe,EAAE,CAAA;AACnBH,MAAAA,CAAC,CAACI,WAAW,CAACC,wBAAwB,EAAE,CAAA;KACxC;AACFC,IAAAA,QAAQ,EAAE,CAAA;GAEVtB,eAAAA,cAAA,CAAAU,aAAA,CAAA,KAAA,EAAA;AAAKN,IAAAA,SAAS,EAAC,iCAAA;GACZK,EAAAA,QAAQ,CACL,CACF,CAAA;AAEV,CAAC;;;;"}
1
+ {"version":3,"file":"ReactionButton.js","sources":["../../src/ui/ReactionButton/index.tsx"],"sourcesContent":["import React, {\n ForwardedRef,\n KeyboardEvent,\n MouseEvent,\n ReactElement,\n TouchEvent,\n} from 'react';\n\nimport './index.scss';\nimport useLongPress from '../../hooks/useLongPress';\nimport { noop } from '../../utils/utils';\n\nexport interface ReactionButtonProps {\n children: ReactElement;\n className?: string | Array<string>;\n width?: string | number;\n height?: string | number;\n selected?: boolean;\n onClick?: (\n e: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement> | TouchEvent<HTMLDivElement>\n ) => void;\n}\n\nconst ReactionButton = React.forwardRef((props: ReactionButtonProps, ref: ForwardedRef<HTMLDivElement>) => {\n const {\n className,\n width,\n height,\n selected,\n onClick,\n children,\n } = props;\n\n const onClickHandler = useLongPress({\n onLongPress: noop,\n onClick,\n }, {\n shouldPreventDefault: true,\n shouldStopPropagation: true,\n });\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n `sendbird-reaction-button${selected ? '--selected' : ''}`,\n ].join(' ')}\n ref={ref}\n role=\"button\"\n style={{ width, height }}\n {...onClickHandler}\n tabIndex={0}\n >\n <div className=\"sendbird-reaction-button__inner\">\n {children}\n </div>\n </div>\n );\n});\n\nexport default ReactionButton;\n"],"names":["ReactionButton","React","forwardRef","props","ref","className","width","height","selected","onClick","children","onClickHandler","useLongPress","onLongPress","noop","shouldPreventDefault","shouldStopPropagation","createElement","_extends","Array","isArray","join","role","style","tabIndex"],"mappings":";;;;;;AAuBMA,MAAAA,cAAc,gBAAGC,cAAK,CAACC,UAAU,CAAC,CAACC,KAA0B,EAAEC,GAAiC,KAAK;EACzG,MAAM;IACJC,SAAS;IACTC,KAAK;IACLC,MAAM;IACNC,QAAQ;IACRC,OAAO;AACPC,IAAAA,QAAAA;AACF,GAAC,GAAGP,KAAK,CAAA;EAET,MAAMQ,cAAc,GAAGC,YAAY,CAAC;AAClCC,IAAAA,WAAW,EAAEC,IAAI;AACjBL,IAAAA,OAAAA;AACF,GAAC,EAAE;AACDM,IAAAA,oBAAoB,EAAE,IAAI;AAC1BC,IAAAA,qBAAqB,EAAE,IAAA;AACzB,GAAC,CAAC,CAAA;AAEF,EAAA,oBACEf,cAAA,CAAAgB,aAAA,CAAA,KAAA,EAAAC,QAAA,CAAA;AACEb,IAAAA,SAAS,EAAE,CACT,IAAIc,KAAK,CAACC,OAAO,CAACf,SAAS,CAAC,GAAGA,SAAS,GAAG,CAACA,SAAS,CAAC,CAAC,EACtD,CAAA,wBAAA,EAA0BG,QAAQ,GAAG,YAAY,GAAG,EAAG,CAAA,CAAC,CAC1D,CAACa,IAAI,CAAC,GAAG,CAAE;AACZjB,IAAAA,GAAG,EAAEA,GAAI;AACTkB,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,KAAK,EAAE;MAAEjB,KAAK;AAAEC,MAAAA,MAAAA;AAAO,KAAA;AAAE,GAAA,EACrBI,cAAc,EAAA;AAClBa,IAAAA,QAAQ,EAAE,CAAA;GAEVvB,CAAAA,eAAAA,cAAA,CAAAgB,aAAA,CAAA,KAAA,EAAA;AAAKZ,IAAAA,SAAS,EAAC,iCAAA;GACZK,EAAAA,QAAQ,CACL,CACF,CAAA;AAEV,CAAC;;;;"}
package/ui/SortByRow.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import React__default from 'react';
2
- import { u as uuidv4 } from '../uuid-c94bd88b.js';
2
+ import { u as uuidv4 } from '../uuid-720c99c0.js';
3
3
 
4
4
  const componentClassName = 'sendbird-sort-by-row';
5
5
  function SortByRow(_ref) {
package/ui/TextButton.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import React__default from 'react';
2
- import { C as Colors, c as changeColorToClassName } from '../color-c1b95a91.js';
2
+ import { C as Colors, c as changeColorToClassName } from '../color-4ca8a2ea.js';
3
3
 
4
4
  const TextButton = _ref => {
5
5
  let {
@@ -1,27 +1,27 @@
1
1
  import React__default, { useContext, useMemo } from 'react';
2
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a900bd78.js';
3
- import { j as getClassName, e as isEditedMessage } from '../index-d8fdbe6f.js';
4
- import { a as LocalizationContext } from '../LocalizationContext-ae38446a.js';
5
- import { t as tokenizeMessage } from '../tokenize-2e969273.js';
6
- import { T as TextFragment } from '../index-4554e20e.js';
7
- import { T as TEXT_MESSAGE_BODY_CLASSNAME } from '../consts-bb6cbaee.js';
2
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-e1cd2fcf.js';
3
+ import { j as getClassName, e as isEditedMessage } from '../index-fd51c7d1.js';
4
+ import { a as LocalizationContext } from '../LocalizationContext-1839d2db.js';
5
+ import { t as tokenizeMessage } from '../tokenize-7056afb7.js';
6
+ import { T as TextFragment } from '../index-3130ac38.js';
7
+ import { T as TEXT_MESSAGE_BODY_CLASSNAME } from '../consts-decd9c7d.js';
8
8
  import 'prop-types';
9
- import '../stringSet-6d89212b.js';
10
- import '../_rollupPluginBabelHelpers-eaf55eff.js';
9
+ import '../stringSet-d368e289.js';
10
+ import '../_rollupPluginBabelHelpers-ce69e916.js';
11
11
  import '../utils/message/getOutgoingMessageState.js';
12
- import '../index-321e838f.js';
13
- import '../index.module-1c75b4f5.js';
12
+ import '../index-d9c12cf4.js';
13
+ import '../index.module-8c144786.js';
14
14
  import '../Message/context.js';
15
15
  import './MentionLabel.js';
16
16
  import './ContextMenu.js';
17
17
  import 'react-dom';
18
18
  import './SortByRow.js';
19
- import '../uuid-c94bd88b.js';
19
+ import '../uuid-720c99c0.js';
20
20
  import './UserProfile.js';
21
- import '../UserProfileContext-91e3b3f2.js';
21
+ import '../UserProfileContext-7e645551.js';
22
22
  import '../sendbirdSelectors.js';
23
- import '../topics-8f4016e9.js';
24
- import '../utils-c8b489c4.js';
23
+ import '../topics-f9628f1f.js';
24
+ import '../utils-256f157f.js';
25
25
  import './Avatar.js';
26
26
  import './ImageRenderer.js';
27
27
  import './Icon.js';
@@ -1,13 +1,13 @@
1
1
  import React__default from 'react';
2
2
  import Avatar from './Avatar.js';
3
3
  import Icon, { IconTypes, IconColors } from './Icon.js';
4
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a900bd78.js';
5
- import { u as useLocalization } from '../LocalizationContext-ae38446a.js';
6
- import { u as uuidv4 } from '../uuid-c94bd88b.js';
4
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-e1cd2fcf.js';
5
+ import { u as useLocalization } from '../LocalizationContext-1839d2db.js';
6
+ import { u as uuidv4 } from '../uuid-720c99c0.js';
7
7
  import './ImageRenderer.js';
8
8
  import 'prop-types';
9
- import '../stringSet-6d89212b.js';
10
- import '../index-321e838f.js';
9
+ import '../stringSet-d368e289.js';
10
+ import '../index-d9c12cf4.js';
11
11
 
12
12
  function ThreadReplies(_ref) {
13
13
  var _mostRepliedUsers$;
@@ -1,20 +1,23 @@
1
+ import { b as _extends } from '../_rollupPluginBabelHelpers-ce69e916.js';
1
2
  import React__default, { useState } from 'react';
2
3
  import Icon, { IconTypes, IconColors } from './Icon.js';
3
4
  import ImageRenderer from './ImageRenderer.js';
4
- import { j as getClassName, u as isSentMessage, q as isVideoMessage, p as isGifMessage } from '../index-d8fdbe6f.js';
5
+ import { j as getClassName, q as isVideoMessage, p as isGifMessage, C as isSentMessage } from '../index-fd51c7d1.js';
6
+ import { n as noop } from '../utils-256f157f.js';
7
+ import { u as useLongPress } from '../useLongPress-685c7391.js';
5
8
  import 'prop-types';
6
- import '../_rollupPluginBabelHelpers-eaf55eff.js';
7
9
  import '../utils/message/getOutgoingMessageState.js';
10
+ import '../MediaQueryContext-0e0b3a1b.js';
8
11
 
9
12
  function ThumbnailMessageItemBody(_ref) {
10
- var _thumbnails$, _message$reactions;
13
+ var _thumbnails$, _message$reactions$le, _message$reactions;
11
14
  let {
12
- className,
15
+ className = '',
13
16
  message,
14
17
  isByMe = false,
15
18
  mouseHover = false,
16
19
  isReactionEnabled = false,
17
- showFileViewer,
20
+ showFileViewer = noop,
18
21
  style = {}
19
22
  } = _ref;
20
23
  const {
@@ -22,14 +25,17 @@ function ThumbnailMessageItemBody(_ref) {
22
25
  } = message;
23
26
  const thumbnailUrl = thumbnails.length > 0 ? (_thumbnails$ = thumbnails[0]) === null || _thumbnails$ === void 0 ? void 0 : _thumbnails$.url : '';
24
27
  const [imageRendered, setImageRendered] = useState(false);
25
- return /*#__PURE__*/React__default.createElement("div", {
26
- className: getClassName([className, 'sendbird-thumbnail-message-item-body', isByMe ? 'outgoing' : 'incoming', mouseHover ? 'mouse-hover' : '', isReactionEnabled && (message === null || message === void 0 ? void 0 : (_message$reactions = message.reactions) === null || _message$reactions === void 0 ? void 0 : _message$reactions.length) > 0 ? 'reactions' : '']),
28
+ const onClickHandler = useLongPress({
29
+ onLongPress: noop,
27
30
  onClick: () => {
28
31
  if (isSentMessage(message)) {
29
- showFileViewer(true);
32
+ showFileViewer === null || showFileViewer === void 0 ? void 0 : showFileViewer(true);
30
33
  }
31
34
  }
32
- }, /*#__PURE__*/React__default.createElement(ImageRenderer, {
35
+ });
36
+ return /*#__PURE__*/React__default.createElement("div", _extends({
37
+ className: getClassName([className, 'sendbird-thumbnail-message-item-body', isByMe ? 'outgoing' : 'incoming', mouseHover ? 'mouse-hover' : '', isReactionEnabled && ((_message$reactions$le = (_message$reactions = message.reactions) === null || _message$reactions === void 0 ? void 0 : _message$reactions.length) !== null && _message$reactions$le !== void 0 ? _message$reactions$le : 0) > 0 ? 'reactions' : ''])
38
+ }, onClickHandler), /*#__PURE__*/React__default.createElement(ImageRenderer, {
33
39
  className: "sendbird-thumbnail-message-item-body__thumbnail",
34
40
  url: thumbnailUrl || (message === null || message === void 0 ? void 0 : message.url),
35
41
  alt: message === null || message === void 0 ? void 0 : message.type,
@@ -1 +1 @@
1
- {"version":3,"file":"ThumbnailMessageItemBody.js","sources":["../../src/ui/ThumbnailMessageItemBody/index.tsx"],"sourcesContent":["import './index.scss';\nimport React, { ReactElement, useState } from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport ImageRenderer from '../ImageRenderer';\nimport { getClassName, isGifMessage, isSentMessage, isVideoMessage } from '../../utils';\n\ninterface Props {\n className?: string | Array<string>;\n message: FileMessage;\n isByMe?: boolean;\n mouseHover?: boolean;\n isReactionEnabled?: boolean;\n showFileViewer?: (bool: boolean) => void;\n style?: Record<string, any>;\n}\n\nexport default function ThumbnailMessageItemBody({\n className,\n message,\n isByMe = false,\n mouseHover = false,\n isReactionEnabled = false,\n showFileViewer,\n style = {},\n}: Props): ReactElement {\n const { thumbnails = [] } = message;\n const thumbnailUrl: string = thumbnails.length > 0 ? thumbnails[0]?.url : '';\n const [imageRendered, setImageRendered] = useState(false);\n return (\n <div\n className={getClassName([\n className,\n 'sendbird-thumbnail-message-item-body',\n isByMe ? 'outgoing' : 'incoming',\n mouseHover ? 'mouse-hover' : '',\n (isReactionEnabled && message?.reactions?.length > 0) ? 'reactions' : '',\n ])}\n onClick={() => {\n if (isSentMessage(message)) {\n showFileViewer(true);\n }\n }}\n >\n <ImageRenderer\n className=\"sendbird-thumbnail-message-item-body__thumbnail\"\n url={thumbnailUrl || message?.url}\n alt={message?.type}\n width={style?.width || '360px'}\n height={style?.height || '270px'}\n onLoad={() => { setImageRendered(true); }}\n placeHolder={(style_: Record<string, any>) => (\n <div\n className=\"sendbird-thumbnail-message-item-body__placeholder\"\n style={style_}\n >\n <div className=\"sendbird-thumbnail-message-item-body__placeholder__icon\">\n <Icon\n type={isVideoMessage(message) ? IconTypes.PLAY : IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"34px\"\n height=\"34px\"\n />\n </div>\n </div>\n )}\n />\n {\n (isVideoMessage(message) && !thumbnailUrl) && !imageRendered && (\n <video className=\"sendbird-thumbnail-message-item-body__video\">\n <source src={message?.url} type={message?.type} />\n </video>\n )\n }\n <div className=\"sendbird-thumbnail-message-item-body__image-cover\" />\n {\n (isVideoMessage(message) || isGifMessage(message)) && (\n <div className=\"sendbird-thumbnail-message-item-body__icon-wrapper\">\n <div className=\"sendbird-thumbnail-message-item-body__icon-wrapper__icon\">\n <Icon\n type={isVideoMessage(message) ? IconTypes.PLAY : IconTypes.GIF}\n fillColor={IconColors.GRAY}\n width=\"34px\"\n height=\"34px\"\n />\n </div>\n </div>\n )\n }\n </div>\n );\n}\n"],"names":["ThumbnailMessageItemBody","_ref","_thumbnails$","_message$reactions","className","message","isByMe","mouseHover","isReactionEnabled","showFileViewer","style","thumbnails","thumbnailUrl","length","url","imageRendered","setImageRendered","useState","React","createElement","getClassName","reactions","onClick","isSentMessage","ImageRenderer","alt","type","width","height","onLoad","placeHolder","style_","Icon","isVideoMessage","IconTypes","PLAY","PHOTO","fillColor","IconColors","ON_BACKGROUND_2","src","isGifMessage","GIF","GRAY"],"mappings":"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"}
1
+ {"version":3,"file":"ThumbnailMessageItemBody.js","sources":["../../src/ui/ThumbnailMessageItemBody/index.tsx"],"sourcesContent":["import './index.scss';\nimport React, { ReactElement, useState } from 'react';\nimport type { FileMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport ImageRenderer from '../ImageRenderer';\nimport { getClassName, isGifMessage, isSentMessage, isVideoMessage } from '../../utils';\nimport { noop } from '../../utils/utils';\nimport useLongPress from '../../hooks/useLongPress';\n\ninterface Props {\n className?: string | Array<string>;\n message: FileMessage;\n isByMe?: boolean;\n mouseHover?: boolean;\n isReactionEnabled?: boolean;\n showFileViewer?: (bool: boolean) => void;\n style?: Record<string, any>;\n}\n\nexport default function ThumbnailMessageItemBody({\n className = '',\n message,\n isByMe = false,\n mouseHover = false,\n isReactionEnabled = false,\n showFileViewer = noop,\n style = {},\n}: Props): ReactElement {\n const { thumbnails = [] } = message;\n const thumbnailUrl: string = thumbnails.length > 0 ? thumbnails[0]?.url : '';\n const [imageRendered, setImageRendered] = useState(false);\n\n const onClickHandler = useLongPress({\n onLongPress: noop,\n onClick: () => {\n if (isSentMessage(message)) {\n showFileViewer?.(true);\n }\n },\n });\n\n return (\n <div\n className={getClassName([\n className,\n 'sendbird-thumbnail-message-item-body',\n isByMe ? 'outgoing' : 'incoming',\n mouseHover ? 'mouse-hover' : '',\n (isReactionEnabled && (message.reactions?.length ?? 0) > 0) ? 'reactions' : '',\n ])}\n {...onClickHandler}\n >\n <ImageRenderer\n className=\"sendbird-thumbnail-message-item-body__thumbnail\"\n url={thumbnailUrl || message?.url}\n alt={message?.type}\n width={style?.width || '360px'}\n height={style?.height || '270px'}\n onLoad={() => { setImageRendered(true); }}\n placeHolder={(style_: Record<string, any>) => (\n <div\n className=\"sendbird-thumbnail-message-item-body__placeholder\"\n style={style_}\n >\n <div className=\"sendbird-thumbnail-message-item-body__placeholder__icon\">\n <Icon\n type={isVideoMessage(message) ? IconTypes.PLAY : IconTypes.PHOTO}\n fillColor={IconColors.ON_BACKGROUND_2}\n width=\"34px\"\n height=\"34px\"\n />\n </div>\n </div>\n )}\n />\n {\n (isVideoMessage(message) && !thumbnailUrl) && !imageRendered && (\n <video className=\"sendbird-thumbnail-message-item-body__video\">\n <source src={message?.url} type={message?.type} />\n </video>\n )\n }\n <div className=\"sendbird-thumbnail-message-item-body__image-cover\" />\n {\n (isVideoMessage(message) || isGifMessage(message)) && (\n <div className=\"sendbird-thumbnail-message-item-body__icon-wrapper\">\n <div className=\"sendbird-thumbnail-message-item-body__icon-wrapper__icon\">\n <Icon\n type={isVideoMessage(message) ? IconTypes.PLAY : IconTypes.GIF}\n fillColor={IconColors.GRAY}\n width=\"34px\"\n height=\"34px\"\n />\n </div>\n </div>\n )\n }\n </div>\n );\n}\n"],"names":["ThumbnailMessageItemBody","_ref","_thumbnails$","_message$reactions$le","_message$reactions","className","message","isByMe","mouseHover","isReactionEnabled","showFileViewer","noop","style","thumbnails","thumbnailUrl","length","url","imageRendered","setImageRendered","useState","onClickHandler","useLongPress","onLongPress","onClick","isSentMessage","React","createElement","_extends","getClassName","reactions","ImageRenderer","alt","type","width","height","onLoad","placeHolder","style_","Icon","isVideoMessage","IconTypes","PLAY","PHOTO","fillColor","IconColors","ON_BACKGROUND_2","src","isGifMessage","GIF","GRAY"],"mappings":"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"}
package/ui/Toggle.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import React__default, { useState, useCallback } from 'react';
2
- import { _ as _objectSpread2 } from '../_rollupPluginBabelHelpers-eaf55eff.js';
2
+ import { _ as _objectSpread2 } from '../_rollupPluginBabelHelpers-ce69e916.js';
3
3
  import useSendbirdStateContext from '../useSendbirdStateContext.js';
4
4
  import '../withSendbird.js';
5
5
 
package/ui/Tooltip.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import React__default from 'react';
2
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a900bd78.js';
2
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-e1cd2fcf.js';
3
3
  import 'prop-types';
4
- import '../stringSet-6d89212b.js';
4
+ import '../stringSet-d368e289.js';
5
5
 
6
6
  function Tooltip(_ref) {
7
7
  let {
@@ -1,12 +1,12 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a900bd78.js';
3
- import { j as getClassName } from '../index-d8fdbe6f.js';
4
- import { a as LocalizationContext } from '../LocalizationContext-ae38446a.js';
2
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-e1cd2fcf.js';
3
+ import { j as getClassName } from '../index-fd51c7d1.js';
4
+ import { a as LocalizationContext } from '../LocalizationContext-1839d2db.js';
5
5
  import 'prop-types';
6
- import '../stringSet-6d89212b.js';
7
- import '../_rollupPluginBabelHelpers-eaf55eff.js';
6
+ import '../stringSet-d368e289.js';
7
+ import '../_rollupPluginBabelHelpers-ce69e916.js';
8
8
  import '../utils/message/getOutgoingMessageState.js';
9
- import '../index-321e838f.js';
9
+ import '../index-d9c12cf4.js';
10
10
 
11
11
  function UnknownMessageItemBody(_ref) {
12
12
  var _message$reactions;
@@ -1,28 +1,28 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { a as UserProfileContext } from '../UserProfileContext-91e3b3f2.js';
3
- import { a as LocalizationContext } from '../LocalizationContext-ae38446a.js';
2
+ import { a as UserProfileContext } from '../UserProfileContext-7e645551.js';
3
+ import { a as LocalizationContext } from '../LocalizationContext-1839d2db.js';
4
4
  import Avatar from './Avatar.js';
5
5
  import MutedAvatarOverlay from './MutedAvatarOverlay.js';
6
6
  import Checkbox from './Checkbox.js';
7
7
  import UserProfile from './UserProfile.js';
8
8
  import ContextMenu, { MenuItems } from './ContextMenu.js';
9
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a900bd78.js';
9
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-e1cd2fcf.js';
10
10
  import 'prop-types';
11
- import '../stringSet-6d89212b.js';
12
- import '../index-321e838f.js';
11
+ import '../stringSet-d368e289.js';
12
+ import '../index-d9c12cf4.js';
13
13
  import './ImageRenderer.js';
14
14
  import './Icon.js';
15
- import '../uuid-c94bd88b.js';
15
+ import '../uuid-720c99c0.js';
16
16
  import '../sendbirdSelectors.js';
17
- import '../_rollupPluginBabelHelpers-eaf55eff.js';
18
- import '../topics-8f4016e9.js';
19
- import '../utils-c8b489c4.js';
17
+ import '../_rollupPluginBabelHelpers-ce69e916.js';
18
+ import '../topics-f9628f1f.js';
19
+ import '../utils-256f157f.js';
20
20
  import './Button.js';
21
21
  import '../useSendbirdStateContext.js';
22
22
  import '../withSendbird.js';
23
23
  import 'react-dom';
24
24
  import './SortByRow.js';
25
- import '../index-d8fdbe6f.js';
25
+ import '../index-fd51c7d1.js';
26
26
  import '../utils/message/getOutgoingMessageState.js';
27
27
 
28
28
  function UserListItem(_ref) {
@@ -36,7 +36,8 @@ function UserListItem(_ref) {
36
36
  disableMessaging,
37
37
  currentUser,
38
38
  action,
39
- onChange
39
+ onChange,
40
+ avatarSize = '40px'
40
41
  } = _ref;
41
42
  const uniqueKey = user.userId;
42
43
  const actionRef = React__default.useRef(null);
@@ -60,8 +61,8 @@ function UserListItem(_ref) {
60
61
  className: "sendbird-user-list-item__avatar",
61
62
  ref: avatarRef,
62
63
  src: user.profileUrl,
63
- width: "40px",
64
- height: "40px",
64
+ width: avatarSize,
65
+ height: avatarSize,
65
66
  onClick: () => {
66
67
  if (!disableUserProfile) {
67
68
  toggleDropdown();
@@ -1 +1 @@
1
- {"version":3,"file":"UserListItem.js","sources":["../../src/ui/UserListItem/index.tsx"],"sourcesContent":["import React, { ChangeEvent, MutableRefObject, ReactElement, useContext } from 'react';\nimport { User } from '@sendbird/chat';\nimport { Member } from '@sendbird/chat/groupChannel';\nimport './index.scss';\n\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport Avatar from '../Avatar/index';\nimport MutedAvatarOverlay from '../Avatar/MutedAvatarOverlay';\nimport Checkbox from '../Checkbox';\nimport UserProfile from '../UserProfile';\nimport ContextMenu, { MenuItems } from '../ContextMenu';\nimport Label, { LabelTypography, LabelColors } from '../Label';\n\nexport interface UserListItemProps {\n user: User;\n className?: string;\n checked?: boolean;\n checkBox?: boolean;\n isOperator?: boolean;\n disabled?: boolean;\n disableMessaging?: boolean;\n currentUser?: string;\n action?({ actionRef, parentRef }: {\n actionRef: MutableRefObject<any>,\n parentRef?: MutableRefObject<any>,\n }): ReactElement;\n onChange?(e: ChangeEvent<HTMLInputElement>): void;\n}\n\nexport default function UserListItem({\n user,\n className,\n checked,\n checkBox,\n isOperator,\n disabled,\n disableMessaging,\n currentUser,\n action,\n onChange,\n}: UserListItemProps): ReactElement {\n const uniqueKey = user.userId;\n const actionRef = React.useRef(null);\n const parentRef = React.useRef(null);\n const avatarRef = React.useRef(null);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContext>(UserProfileContext);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-user-list-item',\n ].join(' ')}\n ref={parentRef}\n >\n {\n (user as Member)?.isMuted && (\n <MutedAvatarOverlay height={40} width={40} />\n )\n }\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-user-list-item__avatar\"\n ref={avatarRef}\n src={user.profileUrl}\n width=\"40px\"\n height=\"40px\"\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n disableMessaging={disableMessaging}\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n <Label\n className=\"sendbird-user-list-item__title\"\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n ' (You)'\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className=\"sendbird-user-list-item__subtitle\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n checkBox && (\n <label\n className=\"sendbird-user-list-item__checkbox\"\n htmlFor={uniqueKey}\n >\n <Checkbox\n id={uniqueKey}\n checked={checked}\n disabled={disabled}\n onChange={(event) => onChange(event)}\n />\n </label>\n )\n }\n {\n isOperator && (\n <Label\n className={[\n 'sendbird-user-list-item__operator',\n checkBox ? 'checkbox' : '',\n ].join(' ')}\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n Operator\n </Label>\n )\n }\n {\n action && (\n <div\n className=\"sendbird-user-list-item__action\"\n ref={actionRef}\n >\n {action({ actionRef, parentRef })}\n </div>\n )\n }\n </div>\n );\n}\n"],"names":["UserListItem","_ref","user","className","checked","checkBox","isOperator","disabled","disableMessaging","currentUser","action","onChange","uniqueKey","userId","actionRef","React","useRef","parentRef","avatarRef","disableUserProfile","renderUserProfile","useContext","UserProfileContext","stringSet","LocalizationContext","createElement","Array","isArray","join","ref","isMuted","MutedAvatarOverlay","height","width","ContextMenu","menuTrigger","toggleDropdown","Avatar","src","profileUrl","onClick","menuItems","closeDropdown","MenuItems","openLeft","parentContainRef","style","paddingTop","paddingBottom","currentUserId","close","UserProfile","onSuccess","Label","type","LabelTypography","SUBTITLE_1","color","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","CAPTION_3","ONBACKGROUND_2","htmlFor","Checkbox","id","event","SUBTITLE_2"],"mappings":"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"}
1
+ {"version":3,"file":"UserListItem.js","sources":["../../src/ui/UserListItem/index.tsx"],"sourcesContent":["import React, { ChangeEvent, MutableRefObject, ReactElement, useContext } from 'react';\nimport { User } from '@sendbird/chat';\nimport { Member } from '@sendbird/chat/groupChannel';\nimport './index.scss';\n\nimport { UserProfileContext } from '../../lib/UserProfileContext';\nimport { LocalizationContext } from '../../lib/LocalizationContext';\nimport Avatar from '../Avatar/index';\nimport MutedAvatarOverlay from '../Avatar/MutedAvatarOverlay';\nimport Checkbox from '../Checkbox';\nimport UserProfile from '../UserProfile';\nimport ContextMenu, { MenuItems } from '../ContextMenu';\nimport Label, { LabelTypography, LabelColors } from '../Label';\n\nexport interface UserListItemProps {\n user: User;\n className?: string;\n checked?: boolean;\n checkBox?: boolean;\n isOperator?: boolean;\n disabled?: boolean;\n disableMessaging?: boolean;\n currentUser?: string;\n action?({ actionRef, parentRef }: {\n actionRef: MutableRefObject<any>,\n parentRef?: MutableRefObject<any>,\n }): ReactElement;\n onChange?(e: ChangeEvent<HTMLInputElement>): void;\n avatarSize?: string;\n}\n\nexport default function UserListItem({\n user,\n className,\n checked,\n checkBox,\n isOperator,\n disabled,\n disableMessaging,\n currentUser,\n action,\n onChange,\n avatarSize = '40px',\n}: UserListItemProps): ReactElement {\n const uniqueKey = user.userId;\n const actionRef = React.useRef(null);\n const parentRef = React.useRef(null);\n const avatarRef = React.useRef(null);\n const {\n disableUserProfile,\n renderUserProfile,\n } = useContext<UserProfileContext>(UserProfileContext);\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-user-list-item',\n ].join(' ')}\n ref={parentRef}\n >\n {\n (user as Member)?.isMuted && (\n <MutedAvatarOverlay height={40} width={40} />\n )\n }\n <ContextMenu\n menuTrigger={(toggleDropdown) => (\n <Avatar\n className=\"sendbird-user-list-item__avatar\"\n ref={avatarRef}\n src={user.profileUrl}\n width={avatarSize}\n height={avatarSize}\n onClick={() => {\n if (!disableUserProfile) {\n toggleDropdown();\n }\n }}\n />\n )}\n menuItems={(closeDropdown) => (\n <MenuItems\n openLeft\n parentRef={avatarRef}\n // for catching location(x, y) of MenuItems\n parentContainRef={avatarRef}\n // for toggling more options(menus & reactions)\n closeDropdown={closeDropdown}\n style={{ paddingTop: '0px', paddingBottom: '0px' }}\n >\n {\n renderUserProfile\n ? renderUserProfile({\n user,\n currentUserId: currentUser,\n close: closeDropdown,\n })\n : (\n <UserProfile\n disableMessaging={disableMessaging}\n user={user}\n currentUserId={currentUser}\n onSuccess={closeDropdown}\n />\n )\n }\n </MenuItems>\n )}\n />\n <Label\n className=\"sendbird-user-list-item__title\"\n type={LabelTypography.SUBTITLE_1}\n color={LabelColors.ONBACKGROUND_1}\n >\n {user.nickname || stringSet.NO_NAME}\n {\n (currentUser === user.userId) && (\n ' (You)'\n )\n }\n </Label>\n { // if there is now nickname, display userId\n !user.nickname && (\n <Label\n className=\"sendbird-user-list-item__subtitle\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {user.userId}\n </Label>\n )\n }\n {\n checkBox && (\n <label\n className=\"sendbird-user-list-item__checkbox\"\n htmlFor={uniqueKey}\n >\n <Checkbox\n id={uniqueKey}\n checked={checked}\n disabled={disabled}\n onChange={(event) => onChange(event)}\n />\n </label>\n )\n }\n {\n isOperator && (\n <Label\n className={[\n 'sendbird-user-list-item__operator',\n checkBox ? 'checkbox' : '',\n ].join(' ')}\n type={LabelTypography.SUBTITLE_2}\n color={LabelColors.ONBACKGROUND_2}\n >\n Operator\n </Label>\n )\n }\n {\n action && (\n <div\n className=\"sendbird-user-list-item__action\"\n ref={actionRef}\n >\n {action({ actionRef, parentRef })}\n </div>\n )\n }\n </div>\n );\n}\n"],"names":["UserListItem","_ref","user","className","checked","checkBox","isOperator","disabled","disableMessaging","currentUser","action","onChange","avatarSize","uniqueKey","userId","actionRef","React","useRef","parentRef","avatarRef","disableUserProfile","renderUserProfile","useContext","UserProfileContext","stringSet","LocalizationContext","createElement","Array","isArray","join","ref","isMuted","MutedAvatarOverlay","height","width","ContextMenu","menuTrigger","toggleDropdown","Avatar","src","profileUrl","onClick","menuItems","closeDropdown","MenuItems","openLeft","parentContainRef","style","paddingTop","paddingBottom","currentUserId","close","UserProfile","onSuccess","Label","type","LabelTypography","SUBTITLE_1","color","LabelColors","ONBACKGROUND_1","nickname","NO_NAME","CAPTION_3","ONBACKGROUND_2","htmlFor","Checkbox","id","event","SUBTITLE_2"],"mappings":"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"}
package/ui/UserProfile.js CHANGED
@@ -1,20 +1,20 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { a as LocalizationContext } from '../LocalizationContext-ae38446a.js';
3
- import { a as UserProfileContext } from '../UserProfileContext-91e3b3f2.js';
2
+ import { a as LocalizationContext } from '../LocalizationContext-1839d2db.js';
3
+ import { a as UserProfileContext } from '../UserProfileContext-7e645551.js';
4
4
  import { getCreateGroupChannel } from '../sendbirdSelectors.js';
5
5
  import Avatar from './Avatar.js';
6
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a900bd78.js';
6
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-e1cd2fcf.js';
7
7
  import Button, { ButtonTypes } from './Button.js';
8
8
  import useSendbirdStateContext from '../useSendbirdStateContext.js';
9
- import '../stringSet-6d89212b.js';
10
- import '../index-321e838f.js';
9
+ import '../stringSet-d368e289.js';
10
+ import '../index-d9c12cf4.js';
11
11
  import 'prop-types';
12
- import '../_rollupPluginBabelHelpers-eaf55eff.js';
13
- import '../topics-8f4016e9.js';
14
- import '../utils-c8b489c4.js';
12
+ import '../_rollupPluginBabelHelpers-ce69e916.js';
13
+ import '../topics-f9628f1f.js';
14
+ import '../utils-256f157f.js';
15
15
  import './ImageRenderer.js';
16
16
  import './Icon.js';
17
- import '../uuid-c94bd88b.js';
17
+ import '../uuid-720c99c0.js';
18
18
  import '../withSendbird.js';
19
19
 
20
20
  function UserProfile(_ref) {
@@ -4,15 +4,15 @@ import { useVoicePlayer } from '../VoicePlayer/useVoicePlayer.js';
4
4
  import { PlaybackTime } from './PlaybackTime.js';
5
5
  import Loader from './Loader.js';
6
6
  import Icon, { IconTypes, IconColors } from './Icon.js';
7
- import { a as LabelTypography, b as LabelColors } from '../index-a900bd78.js';
8
- import { a as VOICE_PLAYER_STATUS } from '../index-ae8e6fc3.js';
9
- import '../consts-9ece4263.js';
7
+ import { a as LabelTypography, b as LabelColors } from '../index-e1cd2fcf.js';
8
+ import { a as VOICE_PLAYER_STATUS } from '../index-5644a6c0.js';
9
+ import '../consts-9393e7c8.js';
10
10
  import '../VoiceRecorder/context.js';
11
11
  import '../useSendbirdStateContext.js';
12
12
  import '../withSendbird.js';
13
- import '../_rollupPluginBabelHelpers-eaf55eff.js';
13
+ import '../_rollupPluginBabelHelpers-ce69e916.js';
14
14
  import 'prop-types';
15
- import '../stringSet-6d89212b.js';
15
+ import '../stringSet-d368e289.js';
16
16
 
17
17
  const VoiceMessageItemBody = _ref => {
18
18
  var _message$reactions2;
@@ -3,12 +3,12 @@ import './PlaybackTime.js';
3
3
  import './ProgressBar.js';
4
4
  import './TextButton.js';
5
5
  import './Icon.js';
6
- import '../index-a900bd78.js';
7
- import '../LocalizationContext-ae38446a.js';
8
- export { a as VoiceMessageInput } from '../index-88ab67cc.js';
9
- import '../consts-9ece4263.js';
6
+ import '../index-e1cd2fcf.js';
7
+ import '../LocalizationContext-1839d2db.js';
8
+ export { a as VoiceMessageInput } from '../index-400417a1.js';
9
+ import '../consts-9393e7c8.js';
10
10
  import 'prop-types';
11
- import '../stringSet-6d89212b.js';
12
- import '../color-c1b95a91.js';
13
- import '../index-321e838f.js';
11
+ import '../stringSet-d368e289.js';
12
+ import '../color-4ca8a2ea.js';
13
+ import '../index-d9c12cf4.js';
14
14
  //# sourceMappingURL=VoiceMessgeInput.js.map
package/ui/Word.js CHANGED
@@ -1,23 +1,23 @@
1
1
  import React__default from 'react';
2
- import { a as LabelTypography } from '../index-a900bd78.js';
2
+ import { a as LabelTypography } from '../index-e1cd2fcf.js';
3
3
  import LinkLabel from './LinkLabel.js';
4
- import { u as uuidv4 } from '../uuid-c94bd88b.js';
5
- import { N as convertWordToStringObj, S as StringObjType } from '../index-d8fdbe6f.js';
4
+ import { u as uuidv4 } from '../uuid-720c99c0.js';
5
+ import { Q as convertWordToStringObj, S as StringObjType } from '../index-fd51c7d1.js';
6
6
  import MentionLabel from './MentionLabel.js';
7
7
  import 'prop-types';
8
- import '../stringSet-6d89212b.js';
9
- import '../_rollupPluginBabelHelpers-eaf55eff.js';
8
+ import '../stringSet-d368e289.js';
9
+ import '../_rollupPluginBabelHelpers-ce69e916.js';
10
10
  import '../utils/message/getOutgoingMessageState.js';
11
11
  import './ContextMenu.js';
12
12
  import 'react-dom';
13
13
  import './SortByRow.js';
14
14
  import './UserProfile.js';
15
- import '../LocalizationContext-ae38446a.js';
16
- import '../index-321e838f.js';
17
- import '../UserProfileContext-91e3b3f2.js';
15
+ import '../LocalizationContext-1839d2db.js';
16
+ import '../index-d9c12cf4.js';
17
+ import '../UserProfileContext-7e645551.js';
18
18
  import '../sendbirdSelectors.js';
19
- import '../topics-8f4016e9.js';
20
- import '../utils-c8b489c4.js';
19
+ import '../topics-f9628f1f.js';
20
+ import '../utils-256f157f.js';
21
21
  import './Avatar.js';
22
22
  import './ImageRenderer.js';
23
23
  import './Icon.js';
@@ -0,0 +1,75 @@
1
+ import { useState, useLayoutEffect, useEffect } from 'react';
2
+
3
+ function getMentionNodes(root) {
4
+ if (root) {
5
+ const mentions = root.querySelectorAll("[data-sb-mention='true']");
6
+ const mentionsArray = Array.from(mentions);
7
+ return mentionsArray;
8
+ }
9
+ return [];
10
+ }
11
+
12
+ /**
13
+ * This is a dirty way to get the mentions given DOM node
14
+ */
15
+ function useDirtyGetMentions(_ref, _ref2) {
16
+ let {
17
+ ref
18
+ } = _ref;
19
+ let {
20
+ logger
21
+ } = _ref2;
22
+ // Select the node that will be observed for mutations
23
+ const targetNode = ref.current;
24
+ const [mentionNodes, setMentionNodes] = useState([]);
25
+
26
+ // to get the initial mentions
27
+ useLayoutEffect(() => {
28
+ if (targetNode) {
29
+ const mentions = getMentionNodes(targetNode);
30
+ setMentionNodes(mentions);
31
+ }
32
+ }, [targetNode]);
33
+ useEffect(() => {
34
+ // Options for the observer (which mutations to observe)
35
+ const config = {
36
+ childList: true,
37
+ subtree: true
38
+ };
39
+
40
+ // Callback function to execute when mutations are observed
41
+ const callback = mutationList => {
42
+ const hasMutation = mutationList.length > 0;
43
+ if (hasMutation) {
44
+ setMentionNodes(getMentionNodes(targetNode));
45
+ }
46
+ };
47
+
48
+ // Create an observer instance linked to the callback function
49
+ const observer = new MutationObserver(callback);
50
+ if (targetNode) {
51
+ // Start observing the target node for configured mutations
52
+ observer.observe(targetNode, config);
53
+ logger.info('useDirtyGetMentions: observer started', {
54
+ observer,
55
+ config
56
+ });
57
+ }
58
+ return () => {
59
+ try {
60
+ observer.disconnect();
61
+ logger.info('useDirtyGetMentions: observer disconnected', {
62
+ observer
63
+ });
64
+ } catch (error) {
65
+ logger.error('useDirtyGetMentions: observer disconnect failed', {
66
+ observer
67
+ });
68
+ }
69
+ };
70
+ }, [targetNode]);
71
+ return mentionNodes;
72
+ }
73
+
74
+ export { useDirtyGetMentions as u };
75
+ //# sourceMappingURL=useDirtyGetMentions-e0c0f521.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDirtyGetMentions-e0c0f521.js","sources":["../src/modules/Message/utils/getMentionNodes.ts","../src/modules/Message/hooks/useDirtyGetMentions.ts"],"sourcesContent":["export function getMentionNodes(root: HTMLElement): Element[] {\n if (root) {\n const mentions = root.querySelectorAll(\"[data-sb-mention='true']\");\n const mentionsArray = Array.from(mentions);\n return mentionsArray;\n }\n return [];\n}\n","import { useEffect, useLayoutEffect, useState } from 'react';\n\nimport { Logger } from '../../../lib/SendbirdState';\nimport { getMentionNodes } from '../utils/getMentionNodes';\n\ninterface DynamicParams {\n ref: React.RefObject<HTMLElement>;\n}\n\ninterface StaticParams {\n logger: Logger;\n}\n\n/**\n * This is a dirty way to get the mentions given DOM node\n */\nexport function useDirtyGetMentions({\n ref,\n}: DynamicParams, {\n logger,\n}: StaticParams) {\n // Select the node that will be observed for mutations\n const targetNode = ref.current as HTMLElement;\n const [mentionNodes, setMentionNodes] = useState<Element[]>([]);\n\n // to get the initial mentions\n useLayoutEffect(() => {\n if (targetNode) {\n const mentions = getMentionNodes(targetNode);\n setMentionNodes(mentions);\n }\n }, [targetNode]);\n\n useEffect(() => {\n // Options for the observer (which mutations to observe)\n const config = { childList: true, subtree: true };\n\n // Callback function to execute when mutations are observed\n const callback = (mutationList: MutationRecord[]): void => {\n const hasMutation = mutationList.length > 0;\n if (hasMutation) {\n setMentionNodes(getMentionNodes(targetNode));\n }\n };\n\n // Create an observer instance linked to the callback function\n const observer = new MutationObserver(callback);\n\n if (targetNode) {\n // Start observing the target node for configured mutations\n observer.observe(targetNode, config);\n logger.info('useDirtyGetMentions: observer started', { observer, config });\n }\n\n return () => {\n try {\n observer.disconnect();\n logger.info('useDirtyGetMentions: observer disconnected', { observer });\n } catch (error) {\n logger.error('useDirtyGetMentions: observer disconnect failed', { observer });\n }\n };\n }, [targetNode]);\n return mentionNodes;\n}\n"],"names":["getMentionNodes","root","mentions","querySelectorAll","mentionsArray","Array","from","useDirtyGetMentions","_ref","_ref2","ref","logger","targetNode","current","mentionNodes","setMentionNodes","useState","useLayoutEffect","useEffect","config","childList","subtree","callback","mutationList","hasMutation","length","observer","MutationObserver","observe","info","disconnect","error"],"mappings":";;AAAO,SAASA,eAAeA,CAACC,IAAiB,EAAa;AAC5D,EAAA,IAAIA,IAAI,EAAE;AACR,IAAA,MAAMC,QAAQ,GAAGD,IAAI,CAACE,gBAAgB,CAAC,0BAA0B,CAAC,CAAA;AAClE,IAAA,MAAMC,aAAa,GAAGC,KAAK,CAACC,IAAI,CAACJ,QAAQ,CAAC,CAAA;AAC1C,IAAA,OAAOE,aAAa,CAAA;AACtB,GAAA;AACA,EAAA,OAAO,EAAE,CAAA;AACX;;ACMA;AACA;AACA;AACO,SAASG,mBAAmBA,CAAAC,IAAA,EAAAC,KAAA,EAIlB;EAAA,IAJmB;AAClCC,IAAAA,GAAAA;AACa,GAAC,GAAAF,IAAA,CAAA;EAAA,IAAE;AAChBG,IAAAA,MAAAA;AACY,GAAC,GAAAF,KAAA,CAAA;AACb;AACA,EAAA,MAAMG,UAAU,GAAGF,GAAG,CAACG,OAAsB,CAAA;EAC7C,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGC,QAAQ,CAAY,EAAE,CAAC,CAAA;;AAE/D;AACAC,EAAAA,eAAe,CAAC,MAAM;AACpB,IAAA,IAAIL,UAAU,EAAE;AACd,MAAA,MAAMV,QAAQ,GAAGF,eAAe,CAACY,UAAU,CAAC,CAAA;MAC5CG,eAAe,CAACb,QAAQ,CAAC,CAAA;AAC3B,KAAA;AACF,GAAC,EAAE,CAACU,UAAU,CAAC,CAAC,CAAA;AAEhBM,EAAAA,SAAS,CAAC,MAAM;AACd;AACA,IAAA,MAAMC,MAAM,GAAG;AAAEC,MAAAA,SAAS,EAAE,IAAI;AAAEC,MAAAA,OAAO,EAAE,IAAA;KAAM,CAAA;;AAEjD;IACA,MAAMC,QAAQ,GAAIC,YAA8B,IAAW;AACzD,MAAA,MAAMC,WAAW,GAAGD,YAAY,CAACE,MAAM,GAAG,CAAC,CAAA;AAC3C,MAAA,IAAID,WAAW,EAAE;AACfT,QAAAA,eAAe,CAACf,eAAe,CAACY,UAAU,CAAC,CAAC,CAAA;AAC9C,OAAA;KACD,CAAA;;AAED;AACA,IAAA,MAAMc,QAAQ,GAAG,IAAIC,gBAAgB,CAACL,QAAQ,CAAC,CAAA;AAE/C,IAAA,IAAIV,UAAU,EAAE;AACd;AACAc,MAAAA,QAAQ,CAACE,OAAO,CAAChB,UAAU,EAAEO,MAAM,CAAC,CAAA;AACpCR,MAAAA,MAAM,CAACkB,IAAI,CAAC,uCAAuC,EAAE;QAAEH,QAAQ;AAAEP,QAAAA,MAAAA;AAAO,OAAC,CAAC,CAAA;AAC5E,KAAA;AAEA,IAAA,OAAO,MAAM;MACX,IAAI;QACFO,QAAQ,CAACI,UAAU,EAAE,CAAA;AACrBnB,QAAAA,MAAM,CAACkB,IAAI,CAAC,4CAA4C,EAAE;AAAEH,UAAAA,QAAAA;AAAS,SAAC,CAAC,CAAA;OACxE,CAAC,OAAOK,KAAK,EAAE;AACdpB,QAAAA,MAAM,CAACoB,KAAK,CAAC,iDAAiD,EAAE;AAAEL,UAAAA,QAAAA;AAAS,SAAC,CAAC,CAAA;AAC/E,OAAA;KACD,CAAA;AACH,GAAC,EAAE,CAACd,UAAU,CAAC,CAAC,CAAA;AAChB,EAAA,OAAOE,YAAY,CAAA;AACrB;;;;"}