@sendbird/uikit-react 3.4.1 → 3.4.2

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 (501) hide show
  1. package/App.js +40 -39
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +23 -0
  4. package/Channel/components/ChannelHeader.js +19 -19
  5. package/Channel/components/ChannelUI.js +33 -32
  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 +28 -27
  10. package/Channel/components/Message.js.map +1 -1
  11. package/Channel/components/MessageInput.js +28 -24
  12. package/Channel/components/MessageInput.js.map +1 -1
  13. package/Channel/components/MessageList.js +29 -28
  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 +33 -32
  21. package/Channel.js.map +1 -1
  22. package/ChannelList/components/AddChannel.js +15 -15
  23. package/ChannelList/components/ChannelListHeader.js +7 -7
  24. package/ChannelList/components/ChannelListUI.js +29 -29
  25. package/ChannelList/components/ChannelPreview.js +25 -25
  26. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  27. package/ChannelList/context.js +8 -8
  28. package/ChannelList.js +29 -29
  29. package/{ChannelListProvider-794c1be1.js → ChannelListProvider-e6254f07.js} +8 -8
  30. package/{ChannelListProvider-794c1be1.js.map → ChannelListProvider-e6254f07.js.map} +1 -1
  31. package/{ChannelProvider-c67884d4.js → ChannelProvider-c1c00018.js} +10 -10
  32. package/{ChannelProvider-c67884d4.js.map → ChannelProvider-c1c00018.js.map} +1 -1
  33. package/ChannelSettings/components/ChannelProfile.js +12 -12
  34. package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  35. package/ChannelSettings/components/EditDetailsModal.js +12 -12
  36. package/ChannelSettings/components/LeaveChannel.js +12 -12
  37. package/ChannelSettings/components/ModerationPanel.js +15 -15
  38. package/ChannelSettings/components/UserListItem.js +11 -11
  39. package/ChannelSettings/components/UserPanel.js +14 -14
  40. package/ChannelSettings/context.js +3 -3
  41. package/ChannelSettings.js +18 -18
  42. package/CreateChannel/components/CreateChannelUI.js +14 -14
  43. package/CreateChannel/components/InviteUsers.js +14 -14
  44. package/CreateChannel/components/SelectChannelType.js +11 -11
  45. package/CreateChannel/context.js +4 -4
  46. package/CreateChannel.js +14 -14
  47. package/{CreateChannelProvider-87a13bad.js → CreateChannelProvider-9f4f5302.js} +1 -1
  48. package/{CreateChannelProvider-87a13bad.js.map → CreateChannelProvider-9f4f5302.js.map} +1 -1
  49. package/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
  50. package/CreateOpenChannel/context.js +1 -1
  51. package/CreateOpenChannel.js +10 -10
  52. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  53. package/EditUserProfile.js +13 -13
  54. package/{LocalizationContext-59b83627.js → LocalizationContext-8725e9b2.js} +3 -3
  55. package/{LocalizationContext-59b83627.js.map → LocalizationContext-8725e9b2.js.map} +1 -1
  56. package/{MediaQueryContext-0b29de79.js → MediaQueryContext-ceb727c7.js} +1 -1
  57. package/{MediaQueryContext-0b29de79.js.map → MediaQueryContext-ceb727c7.js.map} +1 -1
  58. package/{MemberList-7a0d2135.js → MemberList-7676a6a8.js} +5 -5
  59. package/{MemberList-7a0d2135.js.map → MemberList-7676a6a8.js.map} +1 -1
  60. package/MessageSearch/components/MessageSearchUI.js +12 -12
  61. package/MessageSearch/context.js +2 -2
  62. package/MessageSearch.js +12 -12
  63. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  64. package/OpenChannel/components/OpenChannelHeader.js +13 -13
  65. package/OpenChannel/components/OpenChannelInput.js +16 -15
  66. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  67. package/OpenChannel/components/OpenChannelMessage.js +23 -22
  68. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  69. package/OpenChannel/components/OpenChannelMessageList.js +25 -24
  70. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  71. package/OpenChannel/components/OpenChannelUI.js +25 -24
  72. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  73. package/OpenChannel/context.js +9 -9
  74. package/OpenChannel.js +25 -24
  75. package/OpenChannel.js.map +1 -1
  76. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  77. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  78. package/OpenChannelList/context.js +4 -4
  79. package/OpenChannelList.js +13 -13
  80. package/{OpenChannelListProvider-f61ec687.js → OpenChannelListProvider-706744c4.js} +3 -3
  81. package/{OpenChannelListProvider-f61ec687.js.map → OpenChannelListProvider-706744c4.js.map} +1 -1
  82. package/{OpenChannelProvider-8d053d97.js → OpenChannelProvider-a731aa78.js} +7 -7
  83. package/{OpenChannelProvider-8d053d97.js.map → OpenChannelProvider-a731aa78.js.map} +1 -1
  84. package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  85. package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  86. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  87. package/OpenChannelSettings/components/OperatorUI.js +17 -17
  88. package/OpenChannelSettings/components/ParticipantUI.js +15 -15
  89. package/OpenChannelSettings/context.js +3 -3
  90. package/OpenChannelSettings.js +18 -18
  91. package/{RemoveMessageModal-5c3b76ea.js → RemoveMessageModal-9b81dfb2.js} +3 -3
  92. package/{RemoveMessageModal-5c3b76ea.js.map → RemoveMessageModal-9b81dfb2.js.map} +1 -1
  93. package/SendbirdProvider.js +12 -12
  94. package/Thread/components/ParentMessageInfo.js +25 -24
  95. package/Thread/components/ParentMessageInfo.js.map +1 -1
  96. package/Thread/components/ParentMessageInfoItem.js +16 -16
  97. package/Thread/components/ThreadHeader.js +6 -6
  98. package/Thread/components/ThreadList.js +28 -27
  99. package/Thread/components/ThreadList.js.map +1 -1
  100. package/Thread/components/ThreadListItem.js +28 -27
  101. package/Thread/components/ThreadListItem.js.map +1 -1
  102. package/Thread/components/ThreadMessageInput.js +27 -24
  103. package/Thread/components/ThreadMessageInput.js.map +1 -1
  104. package/Thread/components/ThreadUI.js +32 -31
  105. package/Thread/components/ThreadUI.js.map +1 -1
  106. package/Thread/context.js +9 -9
  107. package/Thread.js +32 -31
  108. package/Thread.js.map +1 -1
  109. package/{ThreadProvider-5fe4cbf0.js → ThreadProvider-e64f95cc.js} +7 -7
  110. package/{ThreadProvider-5fe4cbf0.js.map → ThreadProvider-e64f95cc.js.map} +1 -1
  111. package/{UserProfileContext-bd34665c.js → UserProfileContext-cc71f901.js} +1 -1
  112. package/{UserProfileContext-bd34665c.js.map → UserProfileContext-cc71f901.js.map} +1 -1
  113. package/{VoiceMessageInputWrapper-390b3cc5.js → VoiceMessageInputWrapper-94005482.js} +7 -7
  114. package/{VoiceMessageInputWrapper-390b3cc5.js.map → VoiceMessageInputWrapper-94005482.js.map} +1 -1
  115. package/VoicePlayer/context.js +3 -3
  116. package/VoicePlayer/useVoicePlayer.js +3 -3
  117. package/VoiceRecorder/context.js +1 -1
  118. package/VoiceRecorder/useVoiceRecorder.js +2 -2
  119. package/{_rollupPluginBabelHelpers-1de97245.js → _rollupPluginBabelHelpers-945410b2.js} +1 -1
  120. package/_rollupPluginBabelHelpers-945410b2.js.map +1 -0
  121. package/{actionTypes-0a1621a5.js → actionTypes-aa211f48.js} +1 -1
  122. package/{actionTypes-0a1621a5.js.map → actionTypes-aa211f48.js.map} +1 -1
  123. package/cjs/App.js +40 -39
  124. package/cjs/App.js.map +1 -1
  125. package/cjs/Channel/components/ChannelHeader.js +19 -19
  126. package/cjs/Channel/components/ChannelUI.js +33 -32
  127. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  128. package/cjs/Channel/components/FileViewer.js +15 -15
  129. package/cjs/Channel/components/FrozenNotification.js +4 -4
  130. package/cjs/Channel/components/Message.js +28 -27
  131. package/cjs/Channel/components/Message.js.map +1 -1
  132. package/cjs/Channel/components/MessageInput.js +28 -24
  133. package/cjs/Channel/components/MessageInput.js.map +1 -1
  134. package/cjs/Channel/components/MessageList.js +29 -28
  135. package/cjs/Channel/components/MessageList.js.map +1 -1
  136. package/cjs/Channel/components/RemoveMessageModal.js +17 -17
  137. package/cjs/Channel/components/SuggestedMentionList.js +17 -17
  138. package/cjs/Channel/components/TypingIndicator.js +15 -15
  139. package/cjs/Channel/components/UnreadCount.js +4 -4
  140. package/cjs/Channel/context.js +14 -14
  141. package/cjs/Channel.js +33 -32
  142. package/cjs/Channel.js.map +1 -1
  143. package/cjs/ChannelList/components/AddChannel.js +15 -15
  144. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  145. package/cjs/ChannelList/components/ChannelListUI.js +29 -29
  146. package/cjs/ChannelList/components/ChannelPreview.js +25 -25
  147. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  148. package/cjs/ChannelList/context.js +8 -8
  149. package/cjs/ChannelList.js +29 -29
  150. package/cjs/{ChannelListProvider-d1db4776.js → ChannelListProvider-8cd92208.js} +8 -8
  151. package/cjs/{ChannelListProvider-d1db4776.js.map → ChannelListProvider-8cd92208.js.map} +1 -1
  152. package/cjs/{ChannelProvider-439bf142.js → ChannelProvider-b1290e55.js} +10 -10
  153. package/cjs/{ChannelProvider-439bf142.js.map → ChannelProvider-b1290e55.js.map} +1 -1
  154. package/cjs/ChannelSettings/components/ChannelProfile.js +12 -12
  155. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  156. package/cjs/ChannelSettings/components/EditDetailsModal.js +12 -12
  157. package/cjs/ChannelSettings/components/LeaveChannel.js +12 -12
  158. package/cjs/ChannelSettings/components/ModerationPanel.js +15 -15
  159. package/cjs/ChannelSettings/components/UserListItem.js +11 -11
  160. package/cjs/ChannelSettings/components/UserPanel.js +14 -14
  161. package/cjs/ChannelSettings/context.js +3 -3
  162. package/cjs/ChannelSettings.js +18 -18
  163. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  164. package/cjs/CreateChannel/components/InviteUsers.js +14 -14
  165. package/cjs/CreateChannel/components/SelectChannelType.js +11 -11
  166. package/cjs/CreateChannel/context.js +4 -4
  167. package/cjs/CreateChannel.js +14 -14
  168. package/cjs/{CreateChannelProvider-3a94aa9f.js → CreateChannelProvider-08c38b8e.js} +1 -1
  169. package/cjs/{CreateChannelProvider-3a94aa9f.js.map → CreateChannelProvider-08c38b8e.js.map} +1 -1
  170. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +10 -10
  171. package/cjs/CreateOpenChannel/context.js +1 -1
  172. package/cjs/CreateOpenChannel.js +10 -10
  173. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  174. package/cjs/EditUserProfile.js +13 -13
  175. package/cjs/{LocalizationContext-2b7cabce.js → LocalizationContext-1f669b3c.js} +3 -3
  176. package/cjs/{LocalizationContext-2b7cabce.js.map → LocalizationContext-1f669b3c.js.map} +1 -1
  177. package/cjs/{MediaQueryContext-6aaaad96.js → MediaQueryContext-130143d7.js} +1 -1
  178. package/cjs/{MediaQueryContext-6aaaad96.js.map → MediaQueryContext-130143d7.js.map} +1 -1
  179. package/cjs/{MemberList-4132fc8e.js → MemberList-8df95ca1.js} +5 -5
  180. package/cjs/{MemberList-4132fc8e.js.map → MemberList-8df95ca1.js.map} +1 -1
  181. package/cjs/MessageSearch/components/MessageSearchUI.js +12 -12
  182. package/cjs/MessageSearch/context.js +2 -2
  183. package/cjs/MessageSearch.js +12 -12
  184. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  185. package/cjs/OpenChannel/components/OpenChannelHeader.js +13 -13
  186. package/cjs/OpenChannel/components/OpenChannelInput.js +16 -15
  187. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  188. package/cjs/OpenChannel/components/OpenChannelMessage.js +23 -22
  189. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  190. package/cjs/OpenChannel/components/OpenChannelMessageList.js +25 -24
  191. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  192. package/cjs/OpenChannel/components/OpenChannelUI.js +25 -24
  193. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  194. package/cjs/OpenChannel/context.js +9 -9
  195. package/cjs/OpenChannel.js +25 -24
  196. package/cjs/OpenChannel.js.map +1 -1
  197. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  198. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  199. package/cjs/OpenChannelList/context.js +4 -4
  200. package/cjs/OpenChannelList.js +13 -13
  201. package/cjs/{OpenChannelListProvider-807fa14a.js → OpenChannelListProvider-e536a2bf.js} +3 -3
  202. package/cjs/{OpenChannelListProvider-807fa14a.js.map → OpenChannelListProvider-e536a2bf.js.map} +1 -1
  203. package/cjs/{OpenChannelProvider-0213f13f.js → OpenChannelProvider-1e578c60.js} +7 -7
  204. package/cjs/{OpenChannelProvider-0213f13f.js.map → OpenChannelProvider-1e578c60.js.map} +1 -1
  205. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  206. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  207. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +18 -18
  208. package/cjs/OpenChannelSettings/components/OperatorUI.js +17 -17
  209. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -15
  210. package/cjs/OpenChannelSettings/context.js +3 -3
  211. package/cjs/OpenChannelSettings.js +18 -18
  212. package/cjs/{RemoveMessageModal-47d5bac2.js → RemoveMessageModal-b0c539a1.js} +3 -3
  213. package/cjs/{RemoveMessageModal-47d5bac2.js.map → RemoveMessageModal-b0c539a1.js.map} +1 -1
  214. package/cjs/SendbirdProvider.js +12 -12
  215. package/cjs/Thread/components/ParentMessageInfo.js +25 -24
  216. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  217. package/cjs/Thread/components/ParentMessageInfoItem.js +16 -16
  218. package/cjs/Thread/components/ThreadHeader.js +6 -6
  219. package/cjs/Thread/components/ThreadList.js +28 -27
  220. package/cjs/Thread/components/ThreadList.js.map +1 -1
  221. package/cjs/Thread/components/ThreadListItem.js +28 -27
  222. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  223. package/cjs/Thread/components/ThreadMessageInput.js +27 -24
  224. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  225. package/cjs/Thread/components/ThreadUI.js +32 -31
  226. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  227. package/cjs/Thread/context.js +9 -9
  228. package/cjs/Thread.js +32 -31
  229. package/cjs/Thread.js.map +1 -1
  230. package/cjs/{ThreadProvider-4e2f082a.js → ThreadProvider-5eafb9ef.js} +7 -7
  231. package/cjs/{ThreadProvider-4e2f082a.js.map → ThreadProvider-5eafb9ef.js.map} +1 -1
  232. package/cjs/{UserProfileContext-eb29f213.js → UserProfileContext-cde95db8.js} +1 -1
  233. package/cjs/{UserProfileContext-eb29f213.js.map → UserProfileContext-cde95db8.js.map} +1 -1
  234. package/cjs/{VoiceMessageInputWrapper-3a1375a3.js → VoiceMessageInputWrapper-5bb0ed00.js} +7 -7
  235. package/cjs/{VoiceMessageInputWrapper-3a1375a3.js.map → VoiceMessageInputWrapper-5bb0ed00.js.map} +1 -1
  236. package/cjs/VoicePlayer/context.js +3 -3
  237. package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
  238. package/cjs/VoiceRecorder/context.js +1 -1
  239. package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
  240. package/cjs/{_rollupPluginBabelHelpers-1fe24c6a.js → _rollupPluginBabelHelpers-32557b21.js} +1 -1
  241. package/cjs/_rollupPluginBabelHelpers-32557b21.js.map +1 -0
  242. package/cjs/{actionTypes-a0f9b112.js → actionTypes-32a1c06c.js} +1 -1
  243. package/cjs/{actionTypes-a0f9b112.js.map → actionTypes-32a1c06c.js.map} +1 -1
  244. package/cjs/{color-6a2b057a.js → color-97cfc61b.js} +1 -1
  245. package/cjs/{color-6a2b057a.js.map → color-97cfc61b.js.map} +1 -1
  246. package/cjs/{compareIds-3a5e98ac.js → compareIds-32f97a73.js} +1 -1
  247. package/cjs/{compareIds-3a5e98ac.js.map → compareIds-32f97a73.js.map} +1 -1
  248. package/cjs/{const-61e48909.js → const-77194948.js} +1 -1
  249. package/cjs/{const-61e48909.js.map → const-77194948.js.map} +1 -1
  250. package/cjs/{const-5debbfef.js → const-fe838b59.js} +1 -1
  251. package/cjs/{const-5debbfef.js.map → const-fe838b59.js.map} +1 -1
  252. package/cjs/{consts-588c44a5.js → consts-f82aaae9.js} +1 -1
  253. package/cjs/{consts-588c44a5.js.map → consts-f82aaae9.js.map} +1 -1
  254. package/cjs/{context-33f2086e.js → context-01e9eccc.js} +2 -2
  255. package/cjs/{context-33f2086e.js.map → context-01e9eccc.js.map} +1 -1
  256. package/cjs/dist/index.css +141 -141
  257. package/cjs/dist/index.css.map +1 -1
  258. package/cjs/{index-8ebb9a4f.js → index-1b11bb85.js} +2 -2
  259. package/cjs/{index-8ebb9a4f.js.map → index-1b11bb85.js.map} +1 -1
  260. package/cjs/{index-d5c4102b.js → index-26ff28a8.js} +3 -3
  261. package/cjs/{index-d5c4102b.js.map → index-26ff28a8.js.map} +1 -1
  262. package/cjs/{index-61486923.js → index-2c7774d0.js} +4 -4
  263. package/cjs/{index-61486923.js.map → index-2c7774d0.js.map} +1 -1
  264. package/cjs/{index-9438f50f.js → index-33ef71d3.js} +7 -7
  265. package/cjs/{index-9438f50f.js.map → index-33ef71d3.js.map} +1 -1
  266. package/cjs/{index-4806f5ef.js → index-577c9a9b.js} +1 -1
  267. package/cjs/{index-4806f5ef.js.map → index-577c9a9b.js.map} +1 -1
  268. package/cjs/{index-8a000ef2.js → index-78e2bb42.js} +2 -2
  269. package/cjs/{index-8a000ef2.js.map → index-78e2bb42.js.map} +1 -1
  270. package/cjs/{index-bd9302c1.js → index-81e19961.js} +2 -2
  271. package/cjs/{index-bd9302c1.js.map → index-81e19961.js.map} +1 -1
  272. package/cjs/{index-4e830fa7.js → index-90c0f273.js} +2 -2
  273. package/cjs/{index-4e830fa7.js.map → index-90c0f273.js.map} +1 -1
  274. package/cjs/{index-6f20bc9e.js → index-9506bc1e.js} +5 -5
  275. package/cjs/{index-6f20bc9e.js.map → index-9506bc1e.js.map} +1 -1
  276. package/cjs/{index-7ee909f2.js → index-b32fce67.js} +2 -2
  277. package/cjs/{index-7ee909f2.js.map → index-b32fce67.js.map} +1 -1
  278. package/cjs/{index-da2fb7d0.js → index-b911f8b3.js} +7 -7
  279. package/cjs/{index-da2fb7d0.js.map → index-b911f8b3.js.map} +1 -1
  280. package/cjs/{index-619bfacc.js → index-c4869cdb.js} +3 -3
  281. package/cjs/{index-619bfacc.js.map → index-c4869cdb.js.map} +1 -1
  282. package/cjs/{index-6704cf0a.js → index-cf139ee0.js} +4 -4
  283. package/cjs/{index-6704cf0a.js.map → index-cf139ee0.js.map} +1 -1
  284. package/cjs/{index-fed2e7d2.js → index-f5502150.js} +1 -1
  285. package/cjs/{index-fed2e7d2.js.map → index-f5502150.js.map} +1 -1
  286. package/cjs/index.js +44 -43
  287. package/cjs/index.js.map +1 -1
  288. package/cjs/sendbirdSelectors.js +2 -2
  289. package/cjs/{stringSet-b5fd0b8e.js → stringSet-ddd351f0.js} +108 -89
  290. package/cjs/stringSet-ddd351f0.js.map +1 -0
  291. package/cjs/{topics-96919a2d.js → topics-5edbb1b2.js} +1 -1
  292. package/cjs/{topics-96919a2d.js.map → topics-5edbb1b2.js.map} +1 -1
  293. package/cjs/{tslib.es6-c82f2d66.js → tslib.es6-d2ba1a6b.js} +1 -1
  294. package/cjs/{tslib.es6-c82f2d66.js.map → tslib.es6-d2ba1a6b.js.map} +1 -1
  295. package/cjs/{types-52f1dee2.js → types-3fb94919.js} +1 -1
  296. package/cjs/{types-52f1dee2.js.map → types-3fb94919.js.map} +1 -1
  297. package/cjs/ui/Accordion.js +3 -3
  298. package/cjs/ui/AccordionGroup.js +2 -2
  299. package/cjs/ui/AdminMessage.js +3 -3
  300. package/cjs/ui/Avatar.js +2 -2
  301. package/cjs/ui/Badge.js +5 -5
  302. package/cjs/ui/BottomSheet.js +1 -1
  303. package/cjs/ui/Button.js +3 -3
  304. package/cjs/ui/ChannelAvatar.js +3 -3
  305. package/cjs/ui/ConnectionStatus.js +4 -4
  306. package/cjs/ui/ContextMenu.js +5 -5
  307. package/cjs/ui/DateSeparator.js +4 -4
  308. package/cjs/ui/EmojiReactions.js +7 -7
  309. package/cjs/ui/FileMessageItemBody.js +6 -6
  310. package/cjs/ui/FileViewer.js +8 -8
  311. package/cjs/ui/IconButton.js +1 -1
  312. package/cjs/ui/ImageRenderer.js +1 -1
  313. package/cjs/ui/Input.js +2 -2
  314. package/cjs/ui/Label.js +2 -2
  315. package/cjs/ui/LinkLabel.js +2 -2
  316. package/cjs/ui/Loader.js +1 -1
  317. package/cjs/ui/MentionLabel.js +14 -12
  318. package/cjs/ui/MentionLabel.js.map +1 -1
  319. package/cjs/ui/MessageContent.js +23 -23
  320. package/cjs/ui/MessageInput.js +185 -14
  321. package/cjs/ui/MessageInput.js.map +1 -1
  322. package/cjs/ui/MessageItemMenu.js +8 -8
  323. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  324. package/cjs/ui/MessageSearchFileItem.js +10 -10
  325. package/cjs/ui/MessageSearchItem.js +9 -9
  326. package/cjs/ui/MessageStatus.js +10 -10
  327. package/cjs/ui/Modal.js +7 -7
  328. package/cjs/ui/OGMessageItemBody.js +11 -11
  329. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  330. package/cjs/ui/OpenChannelAvatar.js +6 -6
  331. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  332. package/cjs/ui/OpenchannelFileMessage.js +16 -16
  333. package/cjs/ui/OpenchannelOGMessage.js +16 -16
  334. package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
  335. package/cjs/ui/OpenchannelUserMessage.js +16 -16
  336. package/cjs/ui/PlaceHolder.js +6 -6
  337. package/cjs/ui/PlaybackTime.js +2 -2
  338. package/cjs/ui/QuoteMessage.js +6 -6
  339. package/cjs/ui/QuoteMessageInput.js +6 -6
  340. package/cjs/ui/ReactionBadge.js +3 -3
  341. package/cjs/ui/ReactionButton.js +1 -1
  342. package/cjs/ui/SortByRow.js +2 -2
  343. package/cjs/ui/TextButton.js +2 -2
  344. package/cjs/ui/TextMessageItemBody.js +11 -11
  345. package/cjs/ui/ThreadReplies.js +6 -6
  346. package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
  347. package/cjs/ui/Tooltip.js +3 -3
  348. package/cjs/ui/TooltipWrapper.js +1 -1
  349. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  350. package/cjs/ui/UserListItem.js +11 -11
  351. package/cjs/ui/UserProfile.js +10 -10
  352. package/cjs/ui/VoiceMessageItemBody.js +5 -5
  353. package/cjs/ui/VoiceMessgeInput.js +8 -8
  354. package/cjs/ui/Word.js +11 -11
  355. package/cjs/{useLongPress-9d9e9ecd.js → useLongPress-778d6f15.js} +3 -3
  356. package/cjs/{useLongPress-9d9e9ecd.js.map → useLongPress-778d6f15.js.map} +1 -1
  357. package/cjs/useSendbirdStateContext.js +1 -1
  358. package/cjs/utils/message/isVoiceMessage.js +2 -2
  359. package/cjs/{utils-bdefdab4.js → utils-602ab2fc.js} +1 -1
  360. package/cjs/{utils-bdefdab4.js.map → utils-602ab2fc.js.map} +1 -1
  361. package/cjs/{utils-45a3202f.js → utils-c67cf524.js} +2 -2
  362. package/cjs/{utils-45a3202f.js.map → utils-c67cf524.js.map} +1 -1
  363. package/cjs/{utils-b8776b9a.js → utils-ee6665ec.js} +1 -1
  364. package/cjs/{utils-b8776b9a.js.map → utils-ee6665ec.js.map} +1 -1
  365. package/cjs/{utils-4aee7d6b.js → utils-f7f440f8.js} +1 -1
  366. package/cjs/{utils-4aee7d6b.js.map → utils-f7f440f8.js.map} +1 -1
  367. package/cjs/{uuid-761f81d7.js → uuid-28e4a814.js} +1 -1
  368. package/cjs/{uuid-761f81d7.js.map → uuid-28e4a814.js.map} +1 -1
  369. package/cjs/withSendbird.js +1 -1
  370. package/{color-cdfa1a1f.js → color-f6b2bdb7.js} +1 -1
  371. package/{color-cdfa1a1f.js.map → color-f6b2bdb7.js.map} +1 -1
  372. package/{compareIds-3cec3007.js → compareIds-87972c5f.js} +1 -1
  373. package/{compareIds-3cec3007.js.map → compareIds-87972c5f.js.map} +1 -1
  374. package/{const-a0a39177.js → const-0f759572.js} +1 -1
  375. package/{const-a0a39177.js.map → const-0f759572.js.map} +1 -1
  376. package/{const-5a8e0296.js → const-85535a89.js} +1 -1
  377. package/{const-5a8e0296.js.map → const-85535a89.js.map} +1 -1
  378. package/{consts-d7c3cbcd.js → consts-59f719d8.js} +1 -1
  379. package/{consts-d7c3cbcd.js.map → consts-59f719d8.js.map} +1 -1
  380. package/{context-fd34af7b.js → context-f9c07d84.js} +2 -2
  381. package/{context-fd34af7b.js.map → context-f9c07d84.js.map} +1 -1
  382. package/dist/index.css +141 -141
  383. package/dist/index.css.map +1 -1
  384. package/{index-34793bc9.js → index-10a05022.js} +1 -1
  385. package/{index-34793bc9.js.map → index-10a05022.js.map} +1 -1
  386. package/{index-635b3b7c.js → index-1ac4456b.js} +7 -7
  387. package/{index-635b3b7c.js.map → index-1ac4456b.js.map} +1 -1
  388. package/{index-02904d88.js → index-2988897b.js} +2 -2
  389. package/{index-02904d88.js.map → index-2988897b.js.map} +1 -1
  390. package/{index-3eab95d6.js → index-3c7ecbec.js} +5 -5
  391. package/{index-3eab95d6.js.map → index-3c7ecbec.js.map} +1 -1
  392. package/{index-68dbd01d.js → index-43834bc0.js} +2 -2
  393. package/{index-68dbd01d.js.map → index-43834bc0.js.map} +1 -1
  394. package/{index-f3039a4c.js → index-7d65494a.js} +4 -4
  395. package/{index-f3039a4c.js.map → index-7d65494a.js.map} +1 -1
  396. package/{index-7676cd62.js → index-868d3a87.js} +2 -2
  397. package/{index-7676cd62.js.map → index-868d3a87.js.map} +1 -1
  398. package/{index-0db935a0.js → index-99933718.js} +2 -2
  399. package/{index-0db935a0.js.map → index-99933718.js.map} +1 -1
  400. package/{index-5e9e049d.js → index-a1a19702.js} +3 -3
  401. package/{index-5e9e049d.js.map → index-a1a19702.js.map} +1 -1
  402. package/{index-36f00728.js → index-a73afdab.js} +4 -4
  403. package/{index-36f00728.js.map → index-a73afdab.js.map} +1 -1
  404. package/{index-73039645.js → index-ac5a0725.js} +3 -3
  405. package/{index-73039645.js.map → index-ac5a0725.js.map} +1 -1
  406. package/{index-edd51b79.js → index-c10fcd31.js} +1 -1
  407. package/{index-edd51b79.js.map → index-c10fcd31.js.map} +1 -1
  408. package/{index-45962d0a.js → index-c4e31ae9.js} +7 -7
  409. package/{index-45962d0a.js.map → index-c4e31ae9.js.map} +1 -1
  410. package/{index-6ea22883.js → index-e121c395.js} +2 -2
  411. package/{index-6ea22883.js.map → index-e121c395.js.map} +1 -1
  412. package/index.d.ts +1 -1
  413. package/index.js +44 -43
  414. package/index.js.map +1 -1
  415. package/package.json +3 -2
  416. package/sendbirdSelectors.js +2 -2
  417. package/{stringSet-ab222233.js → stringSet-a513039b.js} +108 -89
  418. package/stringSet-a513039b.js.map +1 -0
  419. package/{topics-9eba1a1f.js → topics-a581acbb.js} +1 -1
  420. package/{topics-9eba1a1f.js.map → topics-a581acbb.js.map} +1 -1
  421. package/{tslib.es6-6ee715ec.js → tslib.es6-e1c2b6be.js} +1 -1
  422. package/{tslib.es6-6ee715ec.js.map → tslib.es6-e1c2b6be.js.map} +1 -1
  423. package/{types-96233b63.js → types-5cc94910.js} +1 -1
  424. package/{types-96233b63.js.map → types-5cc94910.js.map} +1 -1
  425. package/ui/Accordion.js +3 -3
  426. package/ui/AccordionGroup.js +2 -2
  427. package/ui/AdminMessage.js +3 -3
  428. package/ui/Avatar.js +2 -2
  429. package/ui/Badge.js +5 -5
  430. package/ui/BottomSheet.js +1 -1
  431. package/ui/Button.js +3 -3
  432. package/ui/ChannelAvatar.js +3 -3
  433. package/ui/ConnectionStatus.js +4 -4
  434. package/ui/ContextMenu.js +5 -5
  435. package/ui/DateSeparator.js +4 -4
  436. package/ui/EmojiReactions.js +7 -7
  437. package/ui/FileMessageItemBody.js +6 -6
  438. package/ui/FileViewer.js +8 -8
  439. package/ui/IconButton.js +1 -1
  440. package/ui/ImageRenderer.js +1 -1
  441. package/ui/Input.js +2 -2
  442. package/ui/Label.js +2 -2
  443. package/ui/LinkLabel.js +2 -2
  444. package/ui/Loader.js +1 -1
  445. package/ui/MentionLabel.js +14 -12
  446. package/ui/MentionLabel.js.map +1 -1
  447. package/ui/MessageContent.js +23 -23
  448. package/ui/MessageInput.js +185 -15
  449. package/ui/MessageInput.js.map +1 -1
  450. package/ui/MessageItemMenu.js +8 -8
  451. package/ui/MessageItemReactionMenu.js +5 -5
  452. package/ui/MessageSearchFileItem.js +10 -10
  453. package/ui/MessageSearchItem.js +9 -9
  454. package/ui/MessageStatus.js +10 -10
  455. package/ui/Modal.js +7 -7
  456. package/ui/OGMessageItemBody.js +11 -11
  457. package/ui/OpenChannelAdminMessage.js +3 -3
  458. package/ui/OpenChannelAvatar.js +6 -6
  459. package/ui/OpenchannelConversationHeader.js +6 -6
  460. package/ui/OpenchannelFileMessage.js +16 -16
  461. package/ui/OpenchannelOGMessage.js +16 -16
  462. package/ui/OpenchannelThumbnailMessage.js +15 -15
  463. package/ui/OpenchannelUserMessage.js +16 -16
  464. package/ui/PlaceHolder.js +6 -6
  465. package/ui/PlaybackTime.js +2 -2
  466. package/ui/QuoteMessage.js +6 -6
  467. package/ui/QuoteMessageInput.js +6 -6
  468. package/ui/ReactionBadge.js +3 -3
  469. package/ui/ReactionButton.js +1 -1
  470. package/ui/SortByRow.js +2 -2
  471. package/ui/TextButton.js +2 -2
  472. package/ui/TextMessageItemBody.js +11 -11
  473. package/ui/ThreadReplies.js +6 -6
  474. package/ui/ThumbnailMessageItemBody.js +2 -2
  475. package/ui/Tooltip.js +3 -3
  476. package/ui/TooltipWrapper.js +1 -1
  477. package/ui/UnknownMessageItemBody.js +6 -6
  478. package/ui/UserListItem.js +11 -11
  479. package/ui/UserProfile.js +10 -10
  480. package/ui/VoiceMessageItemBody.js +5 -5
  481. package/ui/VoiceMessgeInput.js +8 -8
  482. package/ui/Word.js +11 -11
  483. package/{useLongPress-4ad22c89.js → useLongPress-d942e028.js} +3 -3
  484. package/{useLongPress-4ad22c89.js.map → useLongPress-d942e028.js.map} +1 -1
  485. package/useSendbirdStateContext.js +1 -1
  486. package/utils/message/isVoiceMessage.js +2 -2
  487. package/{utils-2d084d6c.js → utils-5cc87999.js} +1 -1
  488. package/{utils-2d084d6c.js.map → utils-5cc87999.js.map} +1 -1
  489. package/{utils-f345c2a1.js → utils-b10ed497.js} +2 -2
  490. package/{utils-f345c2a1.js.map → utils-b10ed497.js.map} +1 -1
  491. package/{utils-a236bdc2.js → utils-b439eac3.js} +1 -1
  492. package/{utils-a236bdc2.js.map → utils-b439eac3.js.map} +1 -1
  493. package/{utils-20cfe515.js → utils-c9f12033.js} +1 -1
  494. package/{utils-20cfe515.js.map → utils-c9f12033.js.map} +1 -1
  495. package/{uuid-f497a861.js → uuid-d072af26.js} +1 -1
  496. package/{uuid-f497a861.js.map → uuid-d072af26.js.map} +1 -1
  497. package/withSendbird.js +1 -1
  498. package/_rollupPluginBabelHelpers-1de97245.js.map +0 -1
  499. package/cjs/_rollupPluginBabelHelpers-1fe24c6a.js.map +0 -1
  500. package/cjs/stringSet-b5fd0b8e.js.map +0 -1
  501. package/stringSet-ab222233.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadUI.js","sources":["../../../src/smart-components/Thread/components/ThreadUI/useMemorizedHeader.tsx","../../../src/smart-components/Thread/components/ThreadUI/useMemorizedParentMessageInfo.tsx","../../../src/smart-components/Thread/components/ThreadUI/useMemorizedThreadList.tsx","../../../src/smart-components/Thread/components/ThreadUI/index.tsx"],"sourcesContent":["import React, { ReactElement, useMemo } from 'react';\n\nexport interface UseMemorizedHeaderProps {\n renderHeader?: () => React.ReactElement;\n}\n\nconst useMemorizedHeader = ({ renderHeader }: UseMemorizedHeaderProps): ReactElement => useMemo(() => {\n if (typeof renderHeader === 'function') {\n return renderHeader();\n }\n return null;\n}, [renderHeader]);\n\nexport default useMemorizedHeader;\n","import React, { ReactElement, useMemo } from 'react';\n\nimport { ParentMessageStateTypes } from '../../types';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nexport interface UseMemorizedParentMessageInfoProps {\n parentMessage: UserMessage | FileMessage;\n parentMessageState: ParentMessageStateTypes;\n renderParentMessageInfo?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedParentMessageInfo = ({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n}: UseMemorizedParentMessageInfoProps): ReactElement => useMemo(() => {\n if (parentMessageState === ParentMessageStateTypes.NIL\n || parentMessageState === ParentMessageStateTypes.LOADING\n || parentMessageState === ParentMessageStateTypes.INVALID\n ) {\n if (typeof renderParentMessageInfoPlaceholder === 'function') {\n return renderParentMessageInfoPlaceholder(parentMessageState);\n }\n switch (parentMessageState) {\n case ParentMessageStateTypes.NIL: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-nil\"\n type={PlaceHolderTypes.NO_RESULTS}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n default: {\n return null;\n }\n }\n } else if (parentMessageState === ParentMessageStateTypes.INITIALIZED) {\n if (typeof renderParentMessageInfo === 'function') {\n return renderParentMessageInfo();\n }\n }\n return null;\n}, [\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n]);\n\nexport default useMemorizedParentMessageInfo;\n","import React, { ReactElement, useMemo } from 'react';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\n\nimport { ThreadListStateTypes } from '../../types';\n\nexport interface UseMemorizedThreadListProps {\n threadListState: ThreadListStateTypes;\n renderThreadListPlaceHolder?: (tyep: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedThreadList = ({\n threadListState,\n renderThreadListPlaceHolder,\n}: UseMemorizedThreadListProps): ReactElement => useMemo(() => {\n if (threadListState === ThreadListStateTypes.NIL\n || threadListState === ThreadListStateTypes.LOADING\n || threadListState === ThreadListStateTypes.INVALID\n ) {\n if (typeof renderThreadListPlaceHolder === 'function') {\n return renderThreadListPlaceHolder(threadListState);\n }\n switch (threadListState) {\n case ThreadListStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.NIL: {\n return <></>;\n }\n default: {\n return null;\n }\n }\n }\n return null;\n}, [\n threadListState,\n renderThreadListPlaceHolder,\n]);\n\nexport default useMemorizedThreadList;\n","import React, { useRef, useState } from 'react';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { getChannelTitle } from '../../../Channel/components/ChannelHeader/utils';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { ParentMessageStateTypes, ThreadListStateTypes } from '../../types';\nimport ParentMessageInfo from '../ParentMessageInfo';\nimport ThreadHeader from '../ThreadHeader';\nimport ThreadList from '../ThreadList';\nimport ThreadMessageInput from '../ThreadMessageInput';\nimport useMemorizedHeader from './useMemorizedHeader';\nimport useMemorizedParentMessageInfo from './useMemorizedParentMessageInfo';\nimport useMemorizedThreadList from './useMemorizedThreadList';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { isAboutSame } from '../../context/utils';\n\nexport interface ThreadUIProps {\n renderHeader?: () => React.ReactElement;\n renderParentMessageInfo?: () => React.ReactElement;\n renderMessage?: (props: {\n message: UserMessage | FileMessage,\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n }) => React.ReactElement;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderCustomSeparator?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n renderThreadListPlaceHolder?: (type: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst ThreadUI: React.FC<ThreadUIProps> = ({\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n}: ThreadUIProps): React.ReactElement => {\n const {\n stores,\n } = useSendbirdStateContext();\n const currentUserId = stores?.sdkStore?.sdk?.currentUser?.userId;\n const {\n stringSet,\n } = useLocalization();\n const {\n currentChannel,\n allThreadMessages,\n parentMessage,\n parentMessageState,\n threadListState,\n hasMorePrev,\n hasMoreNext,\n fetchPrevThreads,\n fetchNextThreads,\n onHeaderActionClick,\n onMoveToParentMessage,\n } = useThreadContext();\n const replyCount = allThreadMessages.length;\n\n // Memoized custom components\n const MemorizedHeader = useMemorizedHeader({ renderHeader });\n const MemorizedParentMessageInfo = useMemorizedParentMessageInfo({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder, // nil, loading, invalid\n });\n const MemorizedThreadList = useMemorizedThreadList({\n threadListState,\n renderThreadListPlaceHolder,\n });\n\n // scroll\n const [scrollBottom, setScrollBottom] = useState(0);\n const scrollRef = useRef(null);\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n const threadItemNodes = scrollRef.current.querySelectorAll('.sendbird-thread-list-item');\n const firstNode = threadItemNodes?.[0];\n if (isAboutSame(scrollTop, 0, 10) && hasMorePrev) {\n fetchPrevThreads((messages) => {\n if (messages) {\n try {\n firstNode?.scrollIntoView?.({ block: 'start', inline: 'nearest' });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, 10) && hasMoreNext) {\n const scrollTop_ = scrollTop;\n fetchNextThreads((messages) => {\n if (messages) {\n try {\n element.scrollTop = scrollTop_;\n scrollRef.current.scrollTop = scrollTop_;\n } catch (error) {\n //\n }\n }\n });\n }\n\n // save the lastest scroll bottom value\n if (scrollRef?.current) {\n const current = scrollRef?.current;\n setScrollBottom(current.scrollHeight - current.scrollTop - current.offsetHeight)\n }\n };\n\n return (\n <div className='sendbird-thread-ui'>\n {\n MemorizedHeader || (\n <ThreadHeader\n className=\"sendbird-thread-ui__header\"\n channelName={getChannelTitle(currentChannel, currentUserId, stringSet)}\n onActionIconClick={onHeaderActionClick}\n onChannelNameClick={() => onMoveToParentMessage({ message: parentMessage, channel: currentChannel })}\n />\n )\n }\n <div\n className=\"sendbird-thread-ui--scroll\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {\n MemorizedParentMessageInfo || (\n <ParentMessageInfo\n className=\"sendbird-thread-ui__parent-message-info\"\n />\n )\n }\n {\n replyCount > 0 && (\n <div className=\"sendbird-thread-ui__reply-counts\">\n <Label\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${replyCount} ${replyCount > 1 ? stringSet.THREAD__THREAD_REPLIES : stringSet.THREAD__THREAD_REPLY}`}\n </Label>\n </div>\n )\n }\n {\n MemorizedThreadList || (\n <ThreadList\n className=\"sendbird-thread-ui__thread-list\"\n allThreadMessages={allThreadMessages}\n renderMessage={renderMessage}\n renderCustomSeparator={renderCustomSeparator}\n scrollRef={scrollRef}\n scrollBottom={scrollBottom}\n />\n )\n }\n </div>\n {/* MessageInput */}\n {\n renderMessageInput?.() || (\n <ThreadMessageInput\n className=\"sendbird-thread-ui__message-input\"\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n />\n )\n }\n </div>\n );\n};\n\nexport default ThreadUI;\n"],"names":["useMemorizedHeader","_a","renderHeader","useMemo","useMemorizedParentMessageInfo","parentMessage","parentMessageState","renderParentMessageInfo","renderParentMessageInfoPlaceholder","ParentMessageStateTypes","NIL","LOADING","INVALID","React","PlaceHolderTypes","NO_RESULTS","WRONG","INITIALIZED","useMemorizedThreadList","threadListState","renderThreadListPlaceHolder","ThreadListStateTypes","ThreadUI","renderMessage","renderMessageInput","renderCustomSeparator","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","stores","useSendbirdStateContext","currentUserId","_d","_b","sdkStore","sdk","currentUser","userId","stringSet","useLocalization","_e","useThreadContext","currentChannel","allThreadMessages","hasMorePrev","hasMoreNext","fetchPrevThreads","fetchNextThreads","onHeaderActionClick","onMoveToParentMessage","replyCount","length","MemorizedHeader","MemorizedParentMessageInfo","MemorizedThreadList","_f","useState","scrollBottom","setScrollBottom","scrollRef","useRef","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","threadItemNodes","current","querySelectorAll","firstNode","isAboutSame","messages","scrollIntoView","call","block","inline","error","scrollTop_1","offsetHeight","getChannelTitle","message","channel","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_3","concat","THREAD__THREAD_REPLIES","THREAD__THREAD_REPLY"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAMA,kBAAkB,GAAG,UAACC,EAAD,EAA0C;AAAvC,EAAA,IAAAC,YAAY,GAAAD,EAAA,CAAAC,YAAZ,CAAA;EAA0D,OAAAC,OAAO,CAAC,YAAA;AAC9F,IAAA,IAAI,OAAOD,YAAP,KAAwB,UAA5B,EAAwC;AACtC,MAAA,OAAOA,YAAY,EAAnB,CAAA;AACD,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;AACD,GAL8F,EAK5F,CAACA,YAAD,CAL4F,CAAP,CAAA;AAKtE,CALlB;;ACOA,IAAME,6BAA6B,GAAG,UAACH,EAAD,EAKD;MAJnCI,aAAa,GAAAJ,EAAA,CAAAI;MACbC,kBAAkB,GAAAL,EAAA,CAAAK;MAClBC,uBAAuB,GAAAN,EAAA,CAAAM;MACvBC,kCAAkC,GAAAP,EAAA,CAAAO;EACoB,OAAAL,OAAO,CAAC,YAAA;AAC9D,IAAA,IAAIG,kBAAkB,KAAKG,uBAAuB,CAACC,GAA/C,IACCJ,kBAAkB,KAAKG,uBAAuB,CAACE,OADhD,IAECL,kBAAkB,KAAKG,uBAAuB,CAACG,OAFpD,EAGE;AACA,MAAA,IAAI,OAAOJ,kCAAP,KAA8C,UAAlD,EAA8D;QAC5D,OAAOA,kCAAkC,CAACF,kBAAD,CAAzC,CAAA;AACD,OAAA;;AACD,MAAA,QAAQA,kBAAR;QACE,KAAKG,uBAAuB,CAACC,GAA7B;AAAkC,UAAA;AAChC,YAAA,oBACEG,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,yDADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACC,UAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKN,uBAAuB,CAACE,OAA7B;AAAsC,UAAA;AACpC,YAAA,oBACEE,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,6DADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACH,OAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKF,uBAAuB,CAACG,OAA7B;AAAsC,UAAA;AACpC,YAAA,oBACEC,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,6DADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACE,KAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;AACD,QAAA;AAAS,UAAA;AACP,YAAA,OAAO,IAAP,CAAA;AACD,WAAA;AA9BH,OAAA;AAgCD,KAvCD,MAuCO,IAAIV,kBAAkB,KAAKG,uBAAuB,CAACQ,WAAnD,EAAgE;AACrE,MAAA,IAAI,OAAOV,uBAAP,KAAmC,UAAvC,EAAmD;AACjD,QAAA,OAAOA,uBAAuB,EAA9B,CAAA;AACD,OAAA;AACF,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;GA7C6D,EA8C5D,CACDF,aADC,EAEDC,kBAFC,EAGDC,uBAHC,EAIDC,kCAJC,CA9C4D,CAAP,CAAA;AAmDtD,CAxDF;;ACHA,IAAMU,sBAAsB,GAAG,UAACjB,EAAD,EAGD;MAF5BkB,eAAe,GAAAlB,EAAA,CAAAkB;MACfC,2BAA2B,GAAAnB,EAAA,CAAAmB;EACoB,OAAAjB,OAAO,CAAC,YAAA;AACvD,IAAA,IAAIgB,eAAe,KAAKE,oBAAoB,CAACX,GAAzC,IACCS,eAAe,KAAKE,oBAAoB,CAACV,OAD1C,IAECQ,eAAe,KAAKE,oBAAoB,CAACT,OAF9C,EAGE;AACA,MAAA,IAAI,OAAOQ,2BAAP,KAAuC,UAA3C,EAAuD;QACrD,OAAOA,2BAA2B,CAACD,eAAD,CAAlC,CAAA;AACD,OAAA;;AACD,MAAA,QAAQA,eAAR;QACE,KAAKE,oBAAoB,CAACV,OAA1B;AAAmC,UAAA;AACjC,YAAA,oBACEE,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,qDADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACH,OAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKU,oBAAoB,CAACT,OAA1B;AAAmC,UAAA;AACjC,YAAA,oBACEC,6BAAC,WAAD,EAAA;AACE,cAAA,SAAS,EAAC,qDADZ;cAEE,IAAI,EAAEC,gBAAgB,CAACE,KAFzB;AAGE,cAAA,QAAQ,EAAC,MAAA;aAJb,CAAA,CAAA;AAOD,WAAA;;QACD,KAAKK,oBAAoB,CAACX,GAA1B;AAA+B,UAAA;AAC7B,YAAA,oBAAOG,cAAP,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,CAAA,CAAA;AACD,WAAA;;AACD,QAAA;AAAS,UAAA;AACP,YAAA,OAAO,IAAP,CAAA;AACD,WAAA;AAxBH,OAAA;AA0BD,KAAA;;AACD,IAAA,OAAO,IAAP,CAAA;AACD,GApCuD,EAoCrD,CACDM,eADC,EAEDC,2BAFC,CApCqD,CAAP,CAAA;AAuC/C,CA1CF;;AC4BA,IAAME,QAAQ,GAA4B,UAACrB,EAAD,EAW1B;;;MAVdC,YAAY,GAAAD,EAAA,CAAAC;MACZK,uBAAuB,GAAAN,EAAA,CAAAM;MACvBgB,aAAa,GAAAtB,EAAA,CAAAsB;MACbC,kBAAkB,GAAAvB,EAAA,CAAAuB;MAClBC,qBAAqB,GAAAxB,EAAA,CAAAwB;MACrBjB,kCAAkC,GAAAP,EAAA,CAAAO;MAClCY,2BAA2B,GAAAnB,EAAA,CAAAmB;MAC3BM,oBAAoB,GAAAzB,EAAA,CAAAyB;MACpBC,sBAAsB,GAAA1B,EAAA,CAAA0B;MACtBC,qBAAqB,GAAA3B,EAAA,CAAA2B;AAGnB,EAAA,IAAAC,MAAM,GACJC,uBAAuB,EAAA,OADzB,CAAA;AAEF,EAAA,IAAMC,aAAa,GAAG,CAAAC,EAAA,GAAA,MAAA,CAAAC,EAAA,GAAAJ,MAAM,SAAN,IAAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAAA,MAAM,CAAEK,QAAR,MAAkB,IAAlB,IAAkBD,EAAA,KAAA,KAAA,CAAlB,GAAkB,KAAA,CAAlB,GAAkBA,EAAA,CAAAE,GAAlB,UAAA,iBAAA,SAAA,MAAuBC,WAAvB,MAAkC,IAAlC,IAAkCJ,EAAA,KAAA,KAAA,CAAlC,GAAkC,KAAA,CAAlC,GAAkCA,EAAA,CAAEK,MAA1D,CAAA;AAEE,EAAA,IAAAC,SAAS,GACPC,eAAe,EAAA,UADjB,CAAA;;EAEI,IAAAC,KAYFC,gBAAgB,EAZd;AAAA,MACJC,cAAc,oBADV;AAAA,MAEJC,iBAAiB,GAAAH,EAAA,CAAAG,iBAFb;AAAA,MAGJtC,aAAa,GAAAmC,EAAA,CAAAnC,aAHT;AAAA,MAIJC,kBAAkB,GAAAkC,EAAA,CAAAlC,kBAJd;AAAA,MAKJa,eAAe,GAAAqB,EAAA,CAAArB,eALX;AAAA,MAMJyB,WAAW,iBANP;AAAA,MAOJC,WAAW,GAAAL,EAAA,CAAAK,WAPP;AAAA,MAQJC,gBAAgB,GAAAN,EAAA,CAAAM,gBARZ;AAAA,MASJC,gBAAgB,GAAAP,EAAA,CAAAO,gBATZ;AAAA,MAUJC,mBAAmB,GAAAR,EAAA,CAAAQ,mBAVf;AAAA,MAWJC,qBAAqB,2BAXjB,CAAA;;AAaN,EAAA,IAAMC,UAAU,GAAGP,iBAAiB,CAACQ,MAArC,CArBc;;EAwBd,IAAMC,eAAe,GAAGpD,kBAAkB,CAAC;AAAEE,IAAAA,YAAY,EAAAA,YAAAA;AAAd,GAAD,CAA1C,CAAA;EACA,IAAMmD,0BAA0B,GAAGjD,6BAA6B,CAAC;AAC/DC,IAAAA,aAAa,EAAAA,aADkD;AAE/DC,IAAAA,kBAAkB,EAAAA,kBAF6C;AAG/DC,IAAAA,uBAAuB,EAAAA,uBAHwC;AAI/DC,IAAAA,kCAAkC,EAAAA,kCAAAA;AAJ6B,GAAD,CAAhE,CAAA;EAMA,IAAM8C,mBAAmB,GAAGpC,sBAAsB,CAAC;AACjDC,IAAAA,eAAe,EAAAA,eADkC;AAEjDC,IAAAA,2BAA2B,EAAAA,2BAAAA;GAFqB,CAAlD,CA/Bc;;AAqCR,EAAA,IAAAmC,EAAA,GAAkCC,QAAQ,CAAC,CAAD,CAA1C;AAAA,MAACC,YAAY,GAAAF,EAAA,CAAA,CAAA,CAAb;AAAA,MAAeG,eAAe,GAAAH,EAAA,CAAA,CAAA,CAA9B,CAAA;;AACN,EAAA,IAAMI,SAAS,GAAGC,MAAM,CAAC,IAAD,CAAxB,CAAA;;AACA,EAAA,IAAMC,QAAQ,GAAG,UAACC,CAAD,EAAE;AACjB,IAAA,IAAMC,OAAO,GAAGD,CAAC,CAACE,MAAlB,CAAA;AAEE,IAAA,IAAAC,SAAS,GAGPF,OAAO,CAAAE,SAHT;AAAA,QACAC,YAAY,GAEVH,OAAO,CAAAG,YAHT;AAAA,QAEAC,YAAY,GACVJ,OAAO,aAHT,CAAA;IAKF,IAAMK,eAAe,GAAGT,SAAS,CAACU,OAAV,CAAkBC,gBAAlB,CAAmC,4BAAnC,CAAxB,CAAA;AACA,IAAA,IAAMC,SAAS,GAAGH,eAAe,KAAf,IAAA,IAAAA,eAAe,WAAf,SAAA,GAAAA,eAAe,CAAG,CAAH,CAAjC,CAAA;;IACA,IAAII,WAAW,CAACP,SAAD,EAAY,CAAZ,EAAe,EAAf,CAAX,IAAiCrB,WAArC,EAAkD;MAChDE,gBAAgB,CAAC,UAAC2B,QAAD,EAAS;;;AACxB,QAAA,IAAIA,QAAJ,EAAc;UACZ,IAAI;AACF,YAAA,CAAAxE,EAAA,GAAAsE,SAAS,KAAT,IAAA,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAEG,cAAX,MAA4B,IAA5B,IAA4BzE,EAAA,KAAA,KAAA,CAA5B,GAA4B,KAAA,CAA5B,GAA4BA,EAAA,CAAA0E,IAAA,CAAAJ,SAAA,EAAA;AAAEK,cAAAA,KAAK,EAAE,OAAT;AAAkBC,cAAAA,MAAM,EAAE,SAAA;AAA1B,aAAA,CAA5B,CAAA;AACD,WAFD,CAEE,OAAOC,KAAP,EAAc;AAEf,WAAA;AACF,SAAA;AACF,OARe,CAAhB,CAAA;AASD,KAAA;;AAED,IAAA,IAAIN,WAAW,CAACN,YAAY,GAAGD,SAAhB,EAA2BE,YAA3B,EAAyC,EAAzC,CAAX,IAA2DtB,WAA/D,EAA4E;MAC1E,IAAMkC,WAAU,GAAGd,SAAnB,CAAA;MACAlB,gBAAgB,CAAC,UAAC0B,QAAD,EAAS;AACxB,QAAA,IAAIA,QAAJ,EAAc;UACZ,IAAI;YACFV,OAAO,CAACE,SAAR,GAAoBc,WAApB,CAAA;AACApB,YAAAA,SAAS,CAACU,OAAV,CAAkBJ,SAAlB,GAA8Bc,WAA9B,CAAA;AACD,WAHD,CAGE,OAAOD,KAAP,EAAc;AAEf,WAAA;AACF,SAAA;AACF,OATe,CAAhB,CAAA;AAUD,KAlCgB;;;AAqCjB,IAAA,IAAInB,SAAS,KAAT,IAAA,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAEU,OAAf,EAAwB;AACtB,MAAA,IAAMA,OAAO,GAAGV,SAAS,KAAA,IAAT,IAAAA,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,SAAS,CAAEU,OAA3B,CAAA;AACAX,MAAAA,eAAe,CAACW,OAAO,CAACF,YAAR,GAAuBE,OAAO,CAACJ,SAA/B,GAA2CI,OAAO,CAACW,YAApD,CAAf,CAAA;AACD,KAAA;GAxCH,CAAA;;EA2CA,oBACEnE,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,oBAAA;GAEXuC,EAAAA,eAAe,iBACbvC,cAAA,CAAA,aAAA,CAAC,YAAD,EAAA;AACE,IAAA,SAAS,EAAC,4BADZ;IAEE,WAAW,EAAEoE,eAAe,CAACvC,cAAD,EAAiBX,aAAjB,EAAgCO,SAAhC,CAF9B;AAGE,IAAA,iBAAiB,EAAEU,mBAHrB;AAIE,IAAA,kBAAkB,EAAE;AAAM,MAAA,OAAAC,qBAAqB,CAAC;AAAEiC,QAAAA,OAAO,EAAE7E,aAAX;AAA0B8E,QAAAA,OAAO,EAAEzC,cAAAA;AAAnC,OAAD,CAArB,CAAA;AAA0E,KAAA;AAJtG,GAAA,CAHN,eAWE7B,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAC,4BADZ;AAEE,IAAA,GAAG,EAAE8C,SAFP;AAGE,IAAA,QAAQ,EAAEE,QAAAA;GAGRR,EAAAA,0BAA0B,iBACxBxC,cAAA,CAAA,aAAA,CAAC,iBAAD,EAAA;AACE,IAAA,SAAS,EAAC,yCAAA;AADZ,GAAA,CAPN,EAaIqC,UAAU,GAAG,CAAb,iBACErC,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,kCAAA;AAAf,GAAA,eACEA,6BAAC,KAAD,EAAA;IACE,IAAI,EAAEuE,eAAe,CAACC,MADxB;IAEE,KAAK,EAAEC,WAAW,CAACC,cAAAA;GAElB,EAAA,EAAA,OAAA,CAAGrC,UAAH,EAAa,GAAb,CAAA,CAAasC,MAAb,CAAiBtC,UAAU,GAAG,CAAb,GAAiBZ,SAAS,CAACmD,sBAA3B,GAAoDnD,SAAS,CAACoD,oBAA/E,CAJH,CADF,CAdN,EAyBIpC,mBAAmB,iBACjBzC,cAAA,CAAA,aAAA,CAAC,UAAD,EAAA;AACE,IAAA,SAAS,EAAC,iCADZ;AAEE,IAAA,iBAAiB,EAAE8B,iBAFrB;AAGE,IAAA,aAAa,EAAEpB,aAHjB;AAIE,IAAA,qBAAqB,EAAEE,qBAJzB;AAKE,IAAA,SAAS,EAAEkC,SALb;AAME,IAAA,YAAY,EAAEF,YAAAA;AANhB,GAAA,CA1BN,CAXF,EAkDI,CAAAjC,kBAAkB,KAAlB,IAAA,IAAAA,kBAAkB,WAAlB,SAAA,GAAAA,kBAAkB,EAAlB,kBACEX,6BAAC,kBAAD,EAAA;AACE,IAAA,SAAS,EAAC,mCADZ;AAEE,IAAA,oBAAoB,EAAEa,oBAFxB;AAGE,IAAA,sBAAsB,EAAEC,sBAH1B;AAIE,IAAA,qBAAqB,EAAEC,qBAAAA;AAJzB,GAAA,CAnDN,CADF,CAAA;AA8DD;;;;"}
1
+ {"version":3,"file":"ThreadUI.js","sources":["../../../src/smart-components/Thread/components/ThreadUI/useMemorizedHeader.tsx","../../../src/smart-components/Thread/components/ThreadUI/useMemorizedParentMessageInfo.tsx","../../../src/smart-components/Thread/components/ThreadUI/useMemorizedThreadList.tsx","../../../src/smart-components/Thread/components/ThreadUI/index.tsx"],"sourcesContent":["import React, { ReactElement, useMemo } from 'react';\n\nexport interface UseMemorizedHeaderProps {\n renderHeader?: () => React.ReactElement;\n}\n\nconst useMemorizedHeader = ({ renderHeader }: UseMemorizedHeaderProps): ReactElement => useMemo(() => {\n if (typeof renderHeader === 'function') {\n return renderHeader();\n }\n return null;\n}, [renderHeader]);\n\nexport default useMemorizedHeader;\n","import React, { ReactElement, useMemo } from 'react';\n\nimport { ParentMessageStateTypes } from '../../types';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nexport interface UseMemorizedParentMessageInfoProps {\n parentMessage: UserMessage | FileMessage;\n parentMessageState: ParentMessageStateTypes;\n renderParentMessageInfo?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedParentMessageInfo = ({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n}: UseMemorizedParentMessageInfoProps): ReactElement => useMemo(() => {\n if (parentMessageState === ParentMessageStateTypes.NIL\n || parentMessageState === ParentMessageStateTypes.LOADING\n || parentMessageState === ParentMessageStateTypes.INVALID\n ) {\n if (typeof renderParentMessageInfoPlaceholder === 'function') {\n return renderParentMessageInfoPlaceholder(parentMessageState);\n }\n switch (parentMessageState) {\n case ParentMessageStateTypes.NIL: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-nil\"\n type={PlaceHolderTypes.NO_RESULTS}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ParentMessageStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__parent-message-info placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n default: {\n return null;\n }\n }\n } else if (parentMessageState === ParentMessageStateTypes.INITIALIZED) {\n if (typeof renderParentMessageInfo === 'function') {\n return renderParentMessageInfo();\n }\n }\n return null;\n}, [\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder,\n]);\n\nexport default useMemorizedParentMessageInfo;\n","import React, { ReactElement, useMemo } from 'react';\nimport PlaceHolder, { PlaceHolderTypes } from '../../../../ui/PlaceHolder';\n\nimport { ThreadListStateTypes } from '../../types';\n\nexport interface UseMemorizedThreadListProps {\n threadListState: ThreadListStateTypes;\n renderThreadListPlaceHolder?: (tyep: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst useMemorizedThreadList = ({\n threadListState,\n renderThreadListPlaceHolder,\n}: UseMemorizedThreadListProps): ReactElement => useMemo(() => {\n if (threadListState === ThreadListStateTypes.NIL\n || threadListState === ThreadListStateTypes.LOADING\n || threadListState === ThreadListStateTypes.INVALID\n ) {\n if (typeof renderThreadListPlaceHolder === 'function') {\n return renderThreadListPlaceHolder(threadListState);\n }\n switch (threadListState) {\n case ThreadListStateTypes.LOADING: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-loading\"\n type={PlaceHolderTypes.LOADING}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.INVALID: {\n return (\n <PlaceHolder\n className=\"sendbird-thread-ui__thread-list placeholder-invalid\"\n type={PlaceHolderTypes.WRONG}\n iconSize=\"64px\"\n />\n );\n }\n case ThreadListStateTypes.NIL: {\n return <></>;\n }\n default: {\n return null;\n }\n }\n }\n return null;\n}, [\n threadListState,\n renderThreadListPlaceHolder,\n]);\n\nexport default useMemorizedThreadList;\n","import React, { useRef, useState } from 'react';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport './index.scss';\n\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../../../lib/LocalizationContext';\nimport { getChannelTitle } from '../../../Channel/components/ChannelHeader/utils';\nimport { useThreadContext } from '../../context/ThreadProvider';\nimport { ParentMessageStateTypes, ThreadListStateTypes } from '../../types';\nimport ParentMessageInfo from '../ParentMessageInfo';\nimport ThreadHeader from '../ThreadHeader';\nimport ThreadList from '../ThreadList';\nimport ThreadMessageInput from '../ThreadMessageInput';\nimport useMemorizedHeader from './useMemorizedHeader';\nimport useMemorizedParentMessageInfo from './useMemorizedParentMessageInfo';\nimport useMemorizedThreadList from './useMemorizedThreadList';\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport { isAboutSame } from '../../context/utils';\n\nexport interface ThreadUIProps {\n renderHeader?: () => React.ReactElement;\n renderParentMessageInfo?: () => React.ReactElement;\n renderMessage?: (props: {\n message: UserMessage | FileMessage,\n chainTop: boolean,\n chainBottom: boolean,\n hasSeparator: boolean,\n }) => React.ReactElement;\n renderFileUploadIcon?: () => React.ReactElement;\n renderVoiceMessageIcon?: () => React.ReactElement;\n renderSendMessageIcon?: () => React.ReactElement;\n renderMessageInput?: () => React.ReactElement;\n renderCustomSeparator?: () => React.ReactElement;\n renderParentMessageInfoPlaceholder?: (type: ParentMessageStateTypes) => React.ReactElement;\n renderThreadListPlaceHolder?: (type: ThreadListStateTypes) => React.ReactElement;\n}\n\nconst ThreadUI: React.FC<ThreadUIProps> = ({\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n}: ThreadUIProps): React.ReactElement => {\n const {\n stores,\n } = useSendbirdStateContext();\n const currentUserId = stores?.sdkStore?.sdk?.currentUser?.userId;\n const {\n stringSet,\n } = useLocalization();\n const {\n currentChannel,\n allThreadMessages,\n parentMessage,\n parentMessageState,\n threadListState,\n hasMorePrev,\n hasMoreNext,\n fetchPrevThreads,\n fetchNextThreads,\n onHeaderActionClick,\n onMoveToParentMessage,\n } = useThreadContext();\n const replyCount = allThreadMessages.length;\n\n // Memoized custom components\n const MemorizedHeader = useMemorizedHeader({ renderHeader });\n const MemorizedParentMessageInfo = useMemorizedParentMessageInfo({\n parentMessage,\n parentMessageState,\n renderParentMessageInfo,\n renderParentMessageInfoPlaceholder, // nil, loading, invalid\n });\n const MemorizedThreadList = useMemorizedThreadList({\n threadListState,\n renderThreadListPlaceHolder,\n });\n\n // scroll\n const [scrollBottom, setScrollBottom] = useState(0);\n const scrollRef = useRef(null);\n const onScroll = (e) => {\n const element = e.target;\n const {\n scrollTop,\n clientHeight,\n scrollHeight,\n } = element;\n\n const threadItemNodes = scrollRef.current.querySelectorAll('.sendbird-thread-list-item');\n const firstNode = threadItemNodes?.[0];\n if (isAboutSame(scrollTop, 0, 10) && hasMorePrev) {\n fetchPrevThreads((messages) => {\n if (messages) {\n try {\n firstNode?.scrollIntoView?.({ block: 'start', inline: 'nearest' });\n } catch (error) {\n //\n }\n }\n });\n }\n\n if (isAboutSame(clientHeight + scrollTop, scrollHeight, 10) && hasMoreNext) {\n const scrollTop_ = scrollTop;\n fetchNextThreads((messages) => {\n if (messages) {\n try {\n element.scrollTop = scrollTop_;\n scrollRef.current.scrollTop = scrollTop_;\n } catch (error) {\n //\n }\n }\n });\n }\n\n // save the lastest scroll bottom value\n if (scrollRef?.current) {\n const current = scrollRef?.current;\n setScrollBottom(current.scrollHeight - current.scrollTop - current.offsetHeight)\n }\n };\n\n return (\n <div className='sendbird-thread-ui'>\n {\n MemorizedHeader || (\n <ThreadHeader\n className=\"sendbird-thread-ui__header\"\n channelName={getChannelTitle(currentChannel, currentUserId, stringSet)}\n onActionIconClick={onHeaderActionClick}\n onChannelNameClick={() => onMoveToParentMessage({ message: parentMessage, channel: currentChannel })}\n />\n )\n }\n <div\n className=\"sendbird-thread-ui--scroll\"\n ref={scrollRef}\n onScroll={onScroll}\n >\n {\n MemorizedParentMessageInfo || (\n <ParentMessageInfo\n className=\"sendbird-thread-ui__parent-message-info\"\n />\n )\n }\n {\n replyCount > 0 && (\n <div className=\"sendbird-thread-ui__reply-counts\">\n <Label\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_3}\n >\n {`${replyCount} ${replyCount > 1 ? stringSet.THREAD__THREAD_REPLIES : stringSet.THREAD__THREAD_REPLY}`}\n </Label>\n </div>\n )\n }\n {\n MemorizedThreadList || (\n <ThreadList\n className=\"sendbird-thread-ui__thread-list\"\n allThreadMessages={allThreadMessages}\n renderMessage={renderMessage}\n renderCustomSeparator={renderCustomSeparator}\n scrollRef={scrollRef}\n scrollBottom={scrollBottom}\n />\n )\n }\n </div>\n {/* MessageInput */}\n {\n renderMessageInput?.() || (\n <ThreadMessageInput\n className=\"sendbird-thread-ui__message-input\"\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n />\n )\n }\n </div>\n );\n};\n\nexport default ThreadUI;\n"],"names":["useMemorizedHeader","_a","renderHeader","useMemo","useMemorizedParentMessageInfo","parentMessage","parentMessageState","renderParentMessageInfo","renderParentMessageInfoPlaceholder","ParentMessageStateTypes","NIL","LOADING","INVALID","React","PlaceHolderTypes","NO_RESULTS","WRONG","INITIALIZED","useMemorizedThreadList","threadListState","renderThreadListPlaceHolder","ThreadListStateTypes","ThreadUI","renderMessage","renderMessageInput","renderCustomSeparator","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","stores","useSendbirdStateContext","currentUserId","_d","_b","sdkStore","sdk","currentUser","userId","stringSet","useLocalization","_e","useThreadContext","currentChannel","allThreadMessages","hasMorePrev","hasMoreNext","fetchPrevThreads","fetchNextThreads","onHeaderActionClick","onMoveToParentMessage","replyCount","length","MemorizedHeader","MemorizedParentMessageInfo","MemorizedThreadList","_f","useState","scrollBottom","setScrollBottom","scrollRef","useRef","onScroll","e","element","target","scrollTop","clientHeight","scrollHeight","threadItemNodes","current","querySelectorAll","firstNode","isAboutSame","messages","scrollIntoView","call","block","inline","error","scrollTop_1","offsetHeight","getChannelTitle","message","channel","LabelTypography","BODY_1","LabelColors","ONBACKGROUND_3","concat","THREAD__THREAD_REPLIES","THREAD__THREAD_REPLY"],"mappings":"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"}
package/Thread/context.js CHANGED
@@ -1,19 +1,19 @@
1
1
  import 'react';
2
- export { T as ThreadProvider, u as useThreadContext } from '../ThreadProvider-5fe4cbf0.js';
3
- import '../UserProfileContext-bd34665c.js';
2
+ export { T as ThreadProvider, u as useThreadContext } from '../ThreadProvider-e64f95cc.js';
3
+ import '../UserProfileContext-cc71f901.js';
4
4
  import '../useSendbirdStateContext.js';
5
- import '../index-0db935a0.js';
6
- import '../index-edd51b79.js';
5
+ import '../index-99933718.js';
6
+ import '../index-c10fcd31.js';
7
7
  import '../utils/message/getOutgoingMessageState.js';
8
- import '../tslib.es6-6ee715ec.js';
8
+ import '../tslib.es6-e1c2b6be.js';
9
9
  import './context/types.js';
10
10
  import '@sendbird/chat';
11
- import '../topics-9eba1a1f.js';
11
+ import '../topics-a581acbb.js';
12
12
  import '@sendbird/chat/groupChannel';
13
- import '../uuid-f497a861.js';
13
+ import '../uuid-d072af26.js';
14
14
  import '@sendbird/chat/message';
15
- import '../consts-d7c3cbcd.js';
15
+ import '../consts-59f719d8.js';
16
16
  import 'prop-types';
17
17
  import '../withSendbird.js';
18
- import '../_rollupPluginBabelHelpers-1de97245.js';
18
+ import '../_rollupPluginBabelHelpers-945410b2.js';
19
19
  //# sourceMappingURL=context.js.map
package/Thread.js CHANGED
@@ -1,37 +1,37 @@
1
1
  import React__default from 'react';
2
- import { T as ThreadProvider } from './ThreadProvider-5fe4cbf0.js';
2
+ import { T as ThreadProvider } from './ThreadProvider-e64f95cc.js';
3
3
  import ThreadUI from './Thread/components/ThreadUI.js';
4
- import './index-0db935a0.js';
5
- import './index-edd51b79.js';
4
+ import './index-99933718.js';
5
+ import './index-c10fcd31.js';
6
6
  import './utils/message/getOutgoingMessageState.js';
7
- import './UserProfileContext-bd34665c.js';
7
+ import './UserProfileContext-cc71f901.js';
8
8
  import 'prop-types';
9
9
  import './useSendbirdStateContext.js';
10
10
  import './withSendbird.js';
11
- import './_rollupPluginBabelHelpers-1de97245.js';
12
- import './tslib.es6-6ee715ec.js';
11
+ import './_rollupPluginBabelHelpers-945410b2.js';
12
+ import './tslib.es6-e1c2b6be.js';
13
13
  import './Thread/context/types.js';
14
14
  import '@sendbird/chat';
15
- import './topics-9eba1a1f.js';
15
+ import './topics-a581acbb.js';
16
16
  import '@sendbird/chat/groupChannel';
17
- import './uuid-f497a861.js';
17
+ import './uuid-d072af26.js';
18
18
  import '@sendbird/chat/message';
19
- import './consts-d7c3cbcd.js';
20
- import './LocalizationContext-59b83627.js';
21
- import './stringSet-ab222233.js';
22
- import './utils-f345c2a1.js';
23
- import './index-6ea22883.js';
19
+ import './consts-59f719d8.js';
20
+ import './LocalizationContext-8725e9b2.js';
21
+ import './stringSet-a513039b.js';
22
+ import './utils-b10ed497.js';
23
+ import './index-e121c395.js';
24
24
  import './Thread/components/ParentMessageInfo.js';
25
- import './RemoveMessageModal-5c3b76ea.js';
25
+ import './RemoveMessageModal-9b81dfb2.js';
26
26
  import './ui/Modal.js';
27
27
  import 'react-dom';
28
- import './index-34793bc9.js';
28
+ import './index-10a05022.js';
29
29
  import './ui/Button.js';
30
30
  import './ui/Icon.js';
31
31
  import './ui/IconButton.js';
32
- import './MediaQueryContext-0b29de79.js';
32
+ import './MediaQueryContext-ceb727c7.js';
33
33
  import './Thread/components/ParentMessageInfoItem.js';
34
- import './index-68dbd01d.js';
34
+ import './index-43834bc0.js';
35
35
  import './ui/Word.js';
36
36
  import './ui/LinkLabel.js';
37
37
  import './ui/MentionLabel.js';
@@ -39,11 +39,11 @@ import './ui/ContextMenu.js';
39
39
  import './ui/SortByRow.js';
40
40
  import './ui/UserProfile.js';
41
41
  import './sendbirdSelectors.js';
42
- import './utils-a236bdc2.js';
42
+ import './utils-b439eac3.js';
43
43
  import './ui/Avatar.js';
44
44
  import './ui/ImageRenderer.js';
45
45
  import './ui/TextButton.js';
46
- import './color-cdfa1a1f.js';
46
+ import './color-f6b2bdb7.js';
47
47
  import './ui/EmojiReactions.js';
48
48
  import './ui/Tooltip.js';
49
49
  import './ui/TooltipWrapper.js';
@@ -52,30 +52,31 @@ import './ui/ReactionButton.js';
52
52
  import './ui/VoiceMessageItemBody.js';
53
53
  import './ui/ProgressBar.js';
54
54
  import './VoicePlayer/useVoicePlayer.js';
55
- import './index-73039645.js';
55
+ import './index-ac5a0725.js';
56
56
  import './VoiceRecorder/context.js';
57
57
  import './lame.all.js';
58
58
  import './ui/PlaybackTime.js';
59
59
  import './ui/Loader.js';
60
60
  import './Channel/components/SuggestedMentionList.js';
61
- import './ChannelProvider-c67884d4.js';
62
- import './compareIds-3cec3007.js';
63
- import './const-5a8e0296.js';
64
- import './const-a0a39177.js';
61
+ import './ChannelProvider-c1c00018.js';
62
+ import './compareIds-87972c5f.js';
63
+ import './const-85535a89.js';
64
+ import './const-0f759572.js';
65
65
  import './ui/FileViewer.js';
66
66
  import './ui/MessageItemMenu.js';
67
- import './types-96233b63.js';
67
+ import './types-5cc94910.js';
68
68
  import './ui/MessageItemReactionMenu.js';
69
69
  import './ui/MessageInput.js';
70
70
  import 'react-dom/server';
71
71
  import './ui/MentionUserLabel.js';
72
+ import 'dompurify';
72
73
  import './Thread/components/ThreadHeader.js';
73
74
  import './Thread/components/ThreadList.js';
74
75
  import './Thread/components/ThreadListItem.js';
75
76
  import './ui/DateSeparator.js';
76
- import './index-635b3b7c.js';
77
- import './index-5e9e049d.js';
78
- import './index-02904d88.js';
77
+ import './index-1ac4456b.js';
78
+ import './index-a1a19702.js';
79
+ import './index-2988897b.js';
79
80
  import './ui/TextMessageItemBody.js';
80
81
  import './ui/OGMessageItemBody.js';
81
82
  import './ui/FileMessageItemBody.js';
@@ -83,10 +84,10 @@ import './ui/ThumbnailMessageItemBody.js';
83
84
  import './ui/UnknownMessageItemBody.js';
84
85
  import 'date-fns';
85
86
  import './Thread/components/ThreadMessageInput.js';
86
- import './VoiceMessageInputWrapper-390b3cc5.js';
87
+ import './VoiceMessageInputWrapper-94005482.js';
87
88
  import './VoiceRecorder/useVoiceRecorder.js';
88
- import './index-36f00728.js';
89
- import './index-f3039a4c.js';
89
+ import './index-a73afdab.js';
90
+ import './index-7d65494a.js';
90
91
 
91
92
  var Thread = function (props) {
92
93
  var // props
package/Thread.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Thread.js","sources":["../src/smart-components/Thread/index.tsx"],"sourcesContent":["import React from 'react';\n\nimport {\n ThreadProvider,\n ThreadProviderProps,\n} from './context/ThreadProvider';\nimport ThreadUI, { ThreadUIProps } from './components/ThreadUI';\n\nexport interface ThreadProps extends ThreadProviderProps, ThreadUIProps {\n className?: string;\n}\n\nconst Thread: React.FC<ThreadProps> = (props: ThreadProps) => {\n const {\n // props\n className,\n // ThreadProviderProps\n channelUrl,\n message,\n onHeaderActionClick,\n onMoveToParentMessage,\n // ThreadUIProps\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n } = props;\n return (\n <div className={`sendbird-thread ${className}`}>\n <ThreadProvider\n channelUrl={channelUrl}\n message={message}\n onHeaderActionClick={onHeaderActionClick}\n onMoveToParentMessage={onMoveToParentMessage}\n >\n <ThreadUI\n renderHeader={renderHeader}\n renderParentMessageInfo={renderParentMessageInfo}\n renderMessage={renderMessage}\n renderMessageInput={renderMessageInput}\n renderCustomSeparator={renderCustomSeparator}\n renderParentMessageInfoPlaceholder={renderParentMessageInfoPlaceholder}\n renderThreadListPlaceHolder={renderThreadListPlaceHolder}\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n />\n </ThreadProvider>\n </div>\n );\n};\n\nexport default Thread;\n"],"names":["Thread","props","className","channelUrl","message","onHeaderActionClick","onMoveToParentMessage","renderHeader","renderParentMessageInfo","renderMessage","renderMessageInput","renderCustomSeparator","renderParentMessageInfoPlaceholder","renderThreadListPlaceHolder","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","React","concat"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAMA,MAAM,GAA0B,UAACC,KAAD,EAAmB;EAGrD;EAAAC,SAAS,GAiBPD,KAAK,CAjBEC,SAAT;;EAEAC,UAAU,GAeRF,KAAK,CAAAE,UAjBP;AAAA,MAGAC,OAAO,GAcLH,KAAK,CAAAG,OAjBP;AAAA,MAIAC,mBAAmB,GAajBJ,KAAK,CAAAI,mBAjBP;AAAA,MAKAC,qBAAqB,GAYnBL,KAAK,CAZcK,qBALrB;;EAOAC,YAAY,GAUVN,KAAK,CAVKM,YAPZ;AAAA,MAQAC,uBAAuB,GASrBP,KAAK,CATgBO,uBARvB;AAAA,MASAC,aAAa,GAQXR,KAAK,CARMQ,aATb;AAAA,MAUAC,kBAAkB,GAOhBT,KAAK,mBAjBP;AAAA,MAWAU,qBAAqB,GAMnBV,KAAK,CANcU,qBAXrB;AAAA,MAYAC,kCAAkC,GAKhCX,KAAK,mCAjBP;AAAA,MAaAY,2BAA2B,GAIzBZ,KAAK,CAAAY,2BAjBP;AAAA,MAcAC,oBAAoB,GAGlBb,KAAK,qBAjBP;AAAA,MAeAc,sBAAsB,GAEpBd,KAAK,CAAAc,sBAjBP;AAAA,MAgBAC,qBAAqB,GACnBf,KAAK,CAAAe,qBAjBP,CAAA;EAkBF,oBACEC,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAE,kBAAA,CAAmBC,MAAnB,CAAmBhB,SAAnB,CAAA;AAAhB,GAAA,eACEe,6BAAC,cAAD,EAAA;AACE,IAAA,UAAU,EAAEd,UADd;AAEE,IAAA,OAAO,EAAEC,OAFX;AAGE,IAAA,mBAAmB,EAAEC,mBAHvB;AAIE,IAAA,qBAAqB,EAAEC,qBAAAA;AAJzB,GAAA,eAMEW,6BAAC,QAAD,EAAA;AACE,IAAA,YAAY,EAAEV,YADhB;AAEE,IAAA,uBAAuB,EAAEC,uBAF3B;AAGE,IAAA,aAAa,EAAEC,aAHjB;AAIE,IAAA,kBAAkB,EAAEC,kBAJtB;AAKE,IAAA,qBAAqB,EAAEC,qBALzB;AAME,IAAA,kCAAkC,EAAEC,kCANtC;AAOE,IAAA,2BAA2B,EAAEC,2BAP/B;AAQE,IAAA,oBAAoB,EAAEC,oBARxB;AASE,IAAA,sBAAsB,EAAEC,sBAT1B;AAUE,IAAA,qBAAqB,EAAEC,qBAAAA;AAVzB,GAAA,CANF,CADF,CADF,CAAA;AAuBD;;;;"}
1
+ {"version":3,"file":"Thread.js","sources":["../src/smart-components/Thread/index.tsx"],"sourcesContent":["import React from 'react';\n\nimport {\n ThreadProvider,\n ThreadProviderProps,\n} from './context/ThreadProvider';\nimport ThreadUI, { ThreadUIProps } from './components/ThreadUI';\n\nexport interface ThreadProps extends ThreadProviderProps, ThreadUIProps {\n className?: string;\n}\n\nconst Thread: React.FC<ThreadProps> = (props: ThreadProps) => {\n const {\n // props\n className,\n // ThreadProviderProps\n channelUrl,\n message,\n onHeaderActionClick,\n onMoveToParentMessage,\n // ThreadUIProps\n renderHeader,\n renderParentMessageInfo,\n renderMessage,\n renderMessageInput,\n renderCustomSeparator,\n renderParentMessageInfoPlaceholder,\n renderThreadListPlaceHolder,\n renderFileUploadIcon,\n renderVoiceMessageIcon,\n renderSendMessageIcon,\n } = props;\n return (\n <div className={`sendbird-thread ${className}`}>\n <ThreadProvider\n channelUrl={channelUrl}\n message={message}\n onHeaderActionClick={onHeaderActionClick}\n onMoveToParentMessage={onMoveToParentMessage}\n >\n <ThreadUI\n renderHeader={renderHeader}\n renderParentMessageInfo={renderParentMessageInfo}\n renderMessage={renderMessage}\n renderMessageInput={renderMessageInput}\n renderCustomSeparator={renderCustomSeparator}\n renderParentMessageInfoPlaceholder={renderParentMessageInfoPlaceholder}\n renderThreadListPlaceHolder={renderThreadListPlaceHolder}\n renderFileUploadIcon={renderFileUploadIcon}\n renderVoiceMessageIcon={renderVoiceMessageIcon}\n renderSendMessageIcon={renderSendMessageIcon}\n />\n </ThreadProvider>\n </div>\n );\n};\n\nexport default Thread;\n"],"names":["Thread","props","className","channelUrl","message","onHeaderActionClick","onMoveToParentMessage","renderHeader","renderParentMessageInfo","renderMessage","renderMessageInput","renderCustomSeparator","renderParentMessageInfoPlaceholder","renderThreadListPlaceHolder","renderFileUploadIcon","renderVoiceMessageIcon","renderSendMessageIcon","React","concat"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAMA,MAAM,GAA0B,UAACC,KAAD,EAAmB;EAGrD;EAAAC,SAAS,GAiBPD,KAAK,CAjBEC,SAAT;;EAEAC,UAAU,GAeRF,KAAK,CAAAE,UAjBP;AAAA,MAGAC,OAAO,GAcLH,KAAK,CAAAG,OAjBP;AAAA,MAIAC,mBAAmB,GAajBJ,KAAK,CAAAI,mBAjBP;AAAA,MAKAC,qBAAqB,GAYnBL,KAAK,CAZcK,qBALrB;;EAOAC,YAAY,GAUVN,KAAK,CAVKM,YAPZ;AAAA,MAQAC,uBAAuB,GASrBP,KAAK,CATgBO,uBARvB;AAAA,MASAC,aAAa,GAQXR,KAAK,CARMQ,aATb;AAAA,MAUAC,kBAAkB,GAOhBT,KAAK,mBAjBP;AAAA,MAWAU,qBAAqB,GAMnBV,KAAK,CANcU,qBAXrB;AAAA,MAYAC,kCAAkC,GAKhCX,KAAK,mCAjBP;AAAA,MAaAY,2BAA2B,GAIzBZ,KAAK,CAAAY,2BAjBP;AAAA,MAcAC,oBAAoB,GAGlBb,KAAK,qBAjBP;AAAA,MAeAc,sBAAsB,GAEpBd,KAAK,CAAAc,sBAjBP;AAAA,MAgBAC,qBAAqB,GACnBf,KAAK,CAAAe,qBAjBP,CAAA;EAkBF,oBACEC,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAE,kBAAA,CAAmBC,MAAnB,CAAmBhB,SAAnB,CAAA;AAAhB,GAAA,eACEe,6BAAC,cAAD,EAAA;AACE,IAAA,UAAU,EAAEd,UADd;AAEE,IAAA,OAAO,EAAEC,OAFX;AAGE,IAAA,mBAAmB,EAAEC,mBAHvB;AAIE,IAAA,qBAAqB,EAAEC,qBAAAA;AAJzB,GAAA,eAMEW,6BAAC,QAAD,EAAA;AACE,IAAA,YAAY,EAAEV,YADhB;AAEE,IAAA,uBAAuB,EAAEC,uBAF3B;AAGE,IAAA,aAAa,EAAEC,aAHjB;AAIE,IAAA,kBAAkB,EAAEC,kBAJtB;AAKE,IAAA,qBAAqB,EAAEC,qBALzB;AAME,IAAA,kCAAkC,EAAEC,kCANtC;AAOE,IAAA,2BAA2B,EAAEC,2BAP/B;AAQE,IAAA,oBAAoB,EAAEC,oBARxB;AASE,IAAA,sBAAsB,EAAEC,sBAT1B;AAUE,IAAA,qBAAqB,EAAEC,qBAAAA;AAVzB,GAAA,CANF,CADF,CADF,CAAA;AAuBD;;;;"}
@@ -1,16 +1,16 @@
1
1
  import React__default, { useEffect, useCallback, useReducer, useMemo } from 'react';
2
- import { f as format } from './index-0db935a0.js';
2
+ import { f as format } from './index-99933718.js';
3
3
  import { getOutgoingMessageState, OutgoingMessageStates } from './utils/message/getOutgoingMessageState.js';
4
- import { U as UserProfileProvider } from './UserProfileContext-bd34665c.js';
4
+ import { U as UserProfileProvider } from './UserProfileContext-cc71f901.js';
5
5
  import useSendbirdStateContext from './useSendbirdStateContext.js';
6
- import { _ as __assign, a as __spreadArray, c as __awaiter, d as __generator } from './tslib.es6-6ee715ec.js';
6
+ import { _ as __assign, a as __spreadArray, c as __awaiter, d as __generator } from './tslib.es6-e1c2b6be.js';
7
7
  import { ChannelStateTypes, ThreadListStateTypes, ParentMessageStateTypes } from './Thread/context/types.js';
8
8
  import { ChannelType } from '@sendbird/chat';
9
- import { a as SEND_USER_MESSAGE, b as SEND_FILE_MESSAGE, U as UPDATE_USER_MESSAGE, D as DELETE_MESSAGE } from './topics-9eba1a1f.js';
9
+ import { a as SEND_USER_MESSAGE, b as SEND_FILE_MESSAGE, U as UPDATE_USER_MESSAGE, D as DELETE_MESSAGE } from './topics-a581acbb.js';
10
10
  import { GroupChannelHandler } from '@sendbird/chat/groupChannel';
11
- import { u as uuidv4 } from './uuid-f497a861.js';
11
+ import { u as uuidv4 } from './uuid-d072af26.js';
12
12
  import { SendingStatus, MessageType, MessageMetaArray } from '@sendbird/chat/message';
13
- import { d as VOICE_MESSAGE_FILE_NAME, e as VOICE_MESSAGE_MIME_TYPE, M as META_ARRAY_VOICE_DURATION_KEY, h as META_ARRAY_MESSAGE_TYPE_KEY, i as META_ARRAY_MESSAGE_TYPE_VALUE__VOICE } from './consts-d7c3cbcd.js';
13
+ import { d as VOICE_MESSAGE_FILE_NAME, e as VOICE_MESSAGE_MIME_TYPE, M as META_ARRAY_VOICE_DURATION_KEY, h as META_ARRAY_MESSAGE_TYPE_KEY, i as META_ARRAY_MESSAGE_TYPE_VALUE__VOICE } from './consts-59f719d8.js';
14
14
 
15
15
  var getNicknamesMapFromMembers = function (members) {
16
16
  if (members === void 0) {
@@ -1721,4 +1721,4 @@ var useThreadContext = function () {
1721
1721
  };
1722
1722
 
1723
1723
  export { ThreadProvider as T, compareMessagesForGrouping as c, isAboutSame as i, useThreadContext as u };
1724
- //# sourceMappingURL=ThreadProvider-5fe4cbf0.js.map
1724
+ //# sourceMappingURL=ThreadProvider-e64f95cc.js.map