@sendbird/uikit-react 3.5.0-beta.0 → 3.5.0-mobile-web-1

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 (932) hide show
  1. package/App.js +284 -226
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +470 -0
  4. package/Channel/components/ChannelHeader.js +45 -41
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +101 -129
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +55 -52
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +12 -7
  11. package/Channel/components/FrozenNotification.js.map +1 -1
  12. package/Channel/components/Message.js +238 -230
  13. package/Channel/components/Message.js.map +1 -1
  14. package/Channel/components/MessageInput.js +150 -129
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageList.js +258 -174
  17. package/Channel/components/MessageList.js.map +1 -1
  18. package/Channel/components/RemoveMessageModal.js +33 -30
  19. package/Channel/components/RemoveMessageModal.js.map +1 -1
  20. package/Channel/components/SuggestedMentionList.js +138 -193
  21. package/Channel/components/SuggestedMentionList.js.map +1 -1
  22. package/Channel/components/TypingIndicator.js +43 -61
  23. package/Channel/components/TypingIndicator.js.map +1 -1
  24. package/Channel/components/UnreadCount.js +18 -20
  25. package/Channel/components/UnreadCount.js.map +1 -1
  26. package/Channel/context.js +11 -19
  27. package/Channel/context.js.map +1 -1
  28. package/Channel.js +67 -43
  29. package/Channel.js.map +1 -1
  30. package/ChannelList/components/AddChannel.js +29 -30
  31. package/ChannelList/components/AddChannel.js.map +1 -1
  32. package/ChannelList/components/ChannelListHeader.js +32 -28
  33. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  34. package/ChannelList/components/ChannelListUI.js +100 -142
  35. package/ChannelList/components/ChannelListUI.js.map +1 -1
  36. package/ChannelList/components/ChannelPreview.js +71 -82
  37. package/ChannelList/components/ChannelPreview.js.map +1 -1
  38. package/ChannelList/components/ChannelPreviewAction.js +36 -36
  39. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  40. package/ChannelList/context.js +7 -8
  41. package/ChannelList/context.js.map +1 -1
  42. package/ChannelList.js +31 -31
  43. package/ChannelList.js.map +1 -1
  44. package/{ChannelListProvider-f461d265.js → ChannelListProvider-86b6d956.js} +233 -285
  45. package/ChannelListProvider-86b6d956.js.map +1 -0
  46. package/{ChannelProvider-554e7116.js → ChannelProvider-b41fde4c.js} +627 -716
  47. package/ChannelProvider-b41fde4c.js.map +1 -0
  48. package/ChannelSettings/components/ChannelProfile.js +33 -46
  49. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  50. package/ChannelSettings/components/ChannelSettingsUI.js +45 -48
  51. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  52. package/ChannelSettings/components/EditDetailsModal.js +47 -58
  53. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  54. package/ChannelSettings/components/LeaveChannel.js +40 -46
  55. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  56. package/ChannelSettings/components/ModerationPanel.js +522 -605
  57. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  58. package/ChannelSettings/components/UserListItem.js +71 -72
  59. package/ChannelSettings/components/UserListItem.js.map +1 -1
  60. package/ChannelSettings/components/UserPanel.js +29 -32
  61. package/ChannelSettings/components/UserPanel.js.map +1 -1
  62. package/ChannelSettings/context.js +53 -57
  63. package/ChannelSettings/context.js.map +1 -1
  64. package/ChannelSettings.js +20 -20
  65. package/ChannelSettings.js.map +1 -1
  66. package/CreateChannel/components/CreateChannelUI.js +24 -24
  67. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  68. package/CreateChannel/components/InviteUsers.js +102 -124
  69. package/CreateChannel/components/InviteUsers.js.map +1 -1
  70. package/CreateChannel/components/SelectChannelType.js +41 -42
  71. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  72. package/CreateChannel/context.js +4 -4
  73. package/CreateChannel.js +22 -21
  74. package/CreateChannel.js.map +1 -1
  75. package/CreateChannelProvider-2b669e7e.js +44 -0
  76. package/CreateChannelProvider-2b669e7e.js.map +1 -0
  77. package/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
  78. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  79. package/CreateOpenChannel/context.js +33 -33
  80. package/CreateOpenChannel/context.js.map +1 -1
  81. package/CreateOpenChannel.js +18 -17
  82. package/CreateOpenChannel.js.map +1 -1
  83. package/EditUserProfile/components/EditUserProfileUI.js +12 -13
  84. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  85. package/EditUserProfile/context.js +0 -2
  86. package/EditUserProfile/context.js.map +1 -1
  87. package/EditUserProfile.js +18 -17
  88. package/EditUserProfile.js.map +1 -1
  89. package/LocalizationContext-57b46f6c.js +20 -0
  90. package/{LocalizationContext-4df0cc32.js.map → LocalizationContext-57b46f6c.js.map} +1 -1
  91. package/MediaQueryContext-fbe7af77.js +87 -0
  92. package/MediaQueryContext-fbe7af77.js.map +1 -0
  93. package/MemberList-6ff1e7fa.js +401 -0
  94. package/MemberList-6ff1e7fa.js.map +1 -0
  95. package/Message/context.js +31 -0
  96. package/Message/context.js.map +1 -0
  97. package/MessageSearch/components/MessageSearchUI.js +62 -71
  98. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  99. package/MessageSearch/context.js +201 -224
  100. package/MessageSearch/context.js.map +1 -1
  101. package/MessageSearch.js +46 -58
  102. package/MessageSearch.js.map +1 -1
  103. package/OpenChannel/components/FrozenChannelNotification.js +8 -6
  104. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  105. package/OpenChannel/components/OpenChannelHeader.js +27 -25
  106. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  107. package/OpenChannel/components/OpenChannelInput.js +46 -33
  108. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  109. package/OpenChannel/components/OpenChannelMessage.js +168 -190
  110. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  111. package/OpenChannel/components/OpenChannelMessageList.js +72 -92
  112. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  113. package/OpenChannel/components/OpenChannelUI.js +52 -49
  114. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  115. package/OpenChannel/context.js +8 -9
  116. package/OpenChannel/context.js.map +1 -1
  117. package/OpenChannel.js +34 -28
  118. package/OpenChannel.js.map +1 -1
  119. package/OpenChannelList/components/OpenChannelListUI.js +61 -76
  120. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  121. package/OpenChannelList/components/OpenChannelPreview.js +21 -22
  122. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  123. package/OpenChannelList/context.js +3 -4
  124. package/OpenChannelList/context.js.map +1 -1
  125. package/OpenChannelList.js +26 -24
  126. package/OpenChannelList.js.map +1 -1
  127. package/OpenChannelListProvider-700cf3de.js +429 -0
  128. package/OpenChannelListProvider-700cf3de.js.map +1 -0
  129. package/OpenChannelProvider-b634e564.js +1885 -0
  130. package/OpenChannelProvider-b634e564.js.map +1 -0
  131. package/OpenChannelSettings/components/EditDetailsModal.js +47 -56
  132. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  133. package/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
  134. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  135. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
  136. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  137. package/OpenChannelSettings/components/OperatorUI.js +516 -586
  138. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  139. package/OpenChannelSettings/components/ParticipantUI.js +15 -16
  140. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  141. package/OpenChannelSettings/context.js +56 -69
  142. package/OpenChannelSettings/context.js.map +1 -1
  143. package/OpenChannelSettings.js +19 -20
  144. package/OpenChannelSettings.js.map +1 -1
  145. package/README.md +62 -13
  146. package/RemoveMessageModal-625b3778.js +36 -0
  147. package/RemoveMessageModal-625b3778.js.map +1 -0
  148. package/SendbirdProvider.js +897 -408
  149. package/SendbirdProvider.js.map +1 -1
  150. package/Thread/components/ParentMessageInfo.js +235 -217
  151. package/Thread/components/ParentMessageInfo.js.map +1 -1
  152. package/Thread/components/ParentMessageInfoItem.js +110 -89
  153. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  154. package/Thread/components/ThreadHeader.js +22 -23
  155. package/Thread/components/ThreadHeader.js.map +1 -1
  156. package/Thread/components/ThreadList.js +107 -83
  157. package/Thread/components/ThreadList.js.map +1 -1
  158. package/Thread/components/ThreadListItem.js +297 -273
  159. package/Thread/components/ThreadListItem.js.map +1 -1
  160. package/Thread/components/ThreadMessageInput.js +144 -113
  161. package/Thread/components/ThreadMessageInput.js.map +1 -1
  162. package/Thread/components/ThreadUI.js +168 -138
  163. package/Thread/components/ThreadUI.js.map +1 -1
  164. package/Thread/context/types.js +9 -14
  165. package/Thread/context/types.js.map +1 -1
  166. package/Thread/context.js +8 -8
  167. package/Thread.js +86 -57
  168. package/Thread.js.map +1 -1
  169. package/ThreadProvider-a3d3b241.js +1695 -0
  170. package/ThreadProvider-a3d3b241.js.map +1 -0
  171. package/{UserProfileContext-c58a7b86.js → UserProfileContext-29074346.js} +1 -4
  172. package/{UserProfileContext-c58a7b86.js.map → UserProfileContext-29074346.js.map} +1 -1
  173. package/VoiceMessageInputWrapper-bdc53de4.js +169 -0
  174. package/VoiceMessageInputWrapper-bdc53de4.js.map +1 -0
  175. package/VoicePlayer/context.js +7 -0
  176. package/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
  177. package/VoicePlayer/useVoicePlayer.js +72 -0
  178. package/VoicePlayer/useVoicePlayer.js.map +1 -0
  179. package/VoiceRecorder/context.js +118 -0
  180. package/VoiceRecorder/context.js.map +1 -0
  181. package/VoiceRecorder/useVoiceRecorder.js +109 -0
  182. package/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  183. package/WebAudioUtils-c3ea2db7.js +123 -0
  184. package/WebAudioUtils-c3ea2db7.js.map +1 -0
  185. package/{_rollupPluginBabelHelpers-498add61.js → _rollupPluginBabelHelpers-0bc76382.js} +17 -11
  186. package/_rollupPluginBabelHelpers-0bc76382.js.map +1 -0
  187. package/actionTypes-45ec82e6.js +8 -0
  188. package/actionTypes-45ec82e6.js.map +1 -0
  189. package/cjs/App.js +284 -226
  190. package/cjs/App.js.map +1 -1
  191. package/cjs/Channel/components/ChannelHeader.js +45 -41
  192. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  193. package/cjs/Channel/components/ChannelUI.js +99 -127
  194. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  195. package/cjs/Channel/components/FileViewer.js +55 -52
  196. package/cjs/Channel/components/FileViewer.js.map +1 -1
  197. package/cjs/Channel/components/FrozenNotification.js +12 -7
  198. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  199. package/cjs/Channel/components/Message.js +241 -233
  200. package/cjs/Channel/components/Message.js.map +1 -1
  201. package/cjs/Channel/components/MessageInput.js +149 -128
  202. package/cjs/Channel/components/MessageInput.js.map +1 -1
  203. package/cjs/Channel/components/MessageList.js +258 -174
  204. package/cjs/Channel/components/MessageList.js.map +1 -1
  205. package/cjs/Channel/components/RemoveMessageModal.js +33 -30
  206. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  207. package/cjs/Channel/components/SuggestedMentionList.js +138 -193
  208. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  209. package/cjs/Channel/components/TypingIndicator.js +43 -61
  210. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  211. package/cjs/Channel/components/UnreadCount.js +18 -20
  212. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  213. package/cjs/Channel/context.js +12 -23
  214. package/cjs/Channel/context.js.map +1 -1
  215. package/cjs/Channel.js +67 -43
  216. package/cjs/Channel.js.map +1 -1
  217. package/cjs/ChannelList/components/AddChannel.js +29 -30
  218. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  219. package/cjs/ChannelList/components/ChannelListHeader.js +32 -28
  220. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  221. package/cjs/ChannelList/components/ChannelListUI.js +99 -141
  222. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  223. package/cjs/ChannelList/components/ChannelPreview.js +71 -82
  224. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  225. package/cjs/ChannelList/components/ChannelPreviewAction.js +36 -36
  226. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  227. package/cjs/ChannelList/context.js +7 -8
  228. package/cjs/ChannelList/context.js.map +1 -1
  229. package/cjs/ChannelList.js +31 -31
  230. package/cjs/ChannelList.js.map +1 -1
  231. package/cjs/{ChannelListProvider-c2148b43.js → ChannelListProvider-46e379c7.js} +232 -284
  232. package/cjs/ChannelListProvider-46e379c7.js.map +1 -0
  233. package/cjs/{ChannelProvider-cf5dc7e3.js → ChannelProvider-2bfafa25.js} +626 -714
  234. package/cjs/ChannelProvider-2bfafa25.js.map +1 -0
  235. package/cjs/ChannelSettings/components/ChannelProfile.js +33 -46
  236. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  237. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +45 -48
  238. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  239. package/cjs/ChannelSettings/components/EditDetailsModal.js +47 -58
  240. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  241. package/cjs/ChannelSettings/components/LeaveChannel.js +40 -46
  242. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  243. package/cjs/ChannelSettings/components/ModerationPanel.js +522 -605
  244. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  245. package/cjs/ChannelSettings/components/UserListItem.js +71 -72
  246. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  247. package/cjs/ChannelSettings/components/UserPanel.js +29 -32
  248. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  249. package/cjs/ChannelSettings/context.js +55 -59
  250. package/cjs/ChannelSettings/context.js.map +1 -1
  251. package/cjs/ChannelSettings.js +20 -20
  252. package/cjs/ChannelSettings.js.map +1 -1
  253. package/cjs/CreateChannel/components/CreateChannelUI.js +24 -24
  254. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  255. package/cjs/CreateChannel/components/InviteUsers.js +102 -124
  256. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  257. package/cjs/CreateChannel/components/SelectChannelType.js +41 -42
  258. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  259. package/cjs/CreateChannel/context.js +4 -4
  260. package/cjs/CreateChannel.js +22 -21
  261. package/cjs/CreateChannel.js.map +1 -1
  262. package/cjs/CreateChannelProvider-ef7e4c91.js +52 -0
  263. package/cjs/CreateChannelProvider-ef7e4c91.js.map +1 -0
  264. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
  265. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  266. package/cjs/CreateOpenChannel/context.js +33 -33
  267. package/cjs/CreateOpenChannel/context.js.map +1 -1
  268. package/cjs/CreateOpenChannel.js +18 -17
  269. package/cjs/CreateOpenChannel.js.map +1 -1
  270. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -13
  271. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  272. package/cjs/EditUserProfile/context.js +0 -2
  273. package/cjs/EditUserProfile/context.js.map +1 -1
  274. package/cjs/EditUserProfile.js +18 -17
  275. package/cjs/EditUserProfile.js.map +1 -1
  276. package/cjs/{LocalizationContext-2b3f310d.js → LocalizationContext-b42fa07d.js} +9 -11
  277. package/cjs/{LocalizationContext-2b3f310d.js.map → LocalizationContext-b42fa07d.js.map} +1 -1
  278. package/cjs/MediaQueryContext-372b55a6.js +94 -0
  279. package/cjs/MediaQueryContext-372b55a6.js.map +1 -0
  280. package/cjs/MemberList-d878307c.js +407 -0
  281. package/cjs/MemberList-d878307c.js.map +1 -0
  282. package/cjs/Message/context.js +40 -0
  283. package/cjs/Message/context.js.map +1 -0
  284. package/cjs/MessageSearch/components/MessageSearchUI.js +61 -70
  285. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  286. package/cjs/MessageSearch/context.js +201 -224
  287. package/cjs/MessageSearch/context.js.map +1 -1
  288. package/cjs/MessageSearch.js +46 -58
  289. package/cjs/MessageSearch.js.map +1 -1
  290. package/cjs/OpenChannel/components/FrozenChannelNotification.js +8 -6
  291. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  292. package/cjs/OpenChannel/components/OpenChannelHeader.js +27 -25
  293. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  294. package/cjs/OpenChannel/components/OpenChannelInput.js +46 -33
  295. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  296. package/cjs/OpenChannel/components/OpenChannelMessage.js +168 -190
  297. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  298. package/cjs/OpenChannel/components/OpenChannelMessageList.js +72 -92
  299. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  300. package/cjs/OpenChannel/components/OpenChannelUI.js +52 -49
  301. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  302. package/cjs/OpenChannel/context.js +8 -9
  303. package/cjs/OpenChannel/context.js.map +1 -1
  304. package/cjs/OpenChannel.js +34 -28
  305. package/cjs/OpenChannel.js.map +1 -1
  306. package/cjs/OpenChannelList/components/OpenChannelListUI.js +61 -76
  307. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  308. package/cjs/OpenChannelList/components/OpenChannelPreview.js +21 -22
  309. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  310. package/cjs/OpenChannelList/context.js +3 -4
  311. package/cjs/OpenChannelList/context.js.map +1 -1
  312. package/cjs/OpenChannelList.js +26 -24
  313. package/cjs/OpenChannelList.js.map +1 -1
  314. package/cjs/OpenChannelListProvider-d1cbe71b.js +439 -0
  315. package/cjs/OpenChannelListProvider-d1cbe71b.js.map +1 -0
  316. package/cjs/OpenChannelProvider-94eb45b4.js +1894 -0
  317. package/cjs/OpenChannelProvider-94eb45b4.js.map +1 -0
  318. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +47 -56
  319. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  320. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
  321. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  322. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
  323. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  324. package/cjs/OpenChannelSettings/components/OperatorUI.js +516 -586
  325. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  326. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -16
  327. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  328. package/cjs/OpenChannelSettings/context.js +57 -70
  329. package/cjs/OpenChannelSettings/context.js.map +1 -1
  330. package/cjs/OpenChannelSettings.js +19 -20
  331. package/cjs/OpenChannelSettings.js.map +1 -1
  332. package/cjs/{RemoveMessageModal-c01eb93b.js → RemoveMessageModal-83d3158a.js} +19 -14
  333. package/cjs/RemoveMessageModal-83d3158a.js.map +1 -0
  334. package/cjs/SendbirdProvider.js +897 -409
  335. package/cjs/SendbirdProvider.js.map +1 -1
  336. package/cjs/Thread/components/ParentMessageInfo.js +234 -216
  337. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  338. package/cjs/Thread/components/ParentMessageInfoItem.js +109 -88
  339. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  340. package/cjs/Thread/components/ThreadHeader.js +22 -23
  341. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  342. package/cjs/Thread/components/ThreadList.js +107 -83
  343. package/cjs/Thread/components/ThreadList.js.map +1 -1
  344. package/cjs/Thread/components/ThreadListItem.js +296 -272
  345. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  346. package/cjs/Thread/components/ThreadMessageInput.js +144 -113
  347. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  348. package/cjs/Thread/components/ThreadUI.js +169 -139
  349. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  350. package/cjs/Thread/context/types.js +13 -14
  351. package/cjs/Thread/context/types.js.map +1 -1
  352. package/cjs/Thread/context.js +8 -8
  353. package/cjs/Thread.js +86 -57
  354. package/cjs/Thread.js.map +1 -1
  355. package/cjs/ThreadProvider-3ff0ff63.js +1704 -0
  356. package/cjs/ThreadProvider-3ff0ff63.js.map +1 -0
  357. package/cjs/{UserProfileContext-9d60cdc4.js → UserProfileContext-c87514d3.js} +1 -4
  358. package/cjs/{UserProfileContext-9d60cdc4.js.map → UserProfileContext-c87514d3.js.map} +1 -1
  359. package/cjs/VoiceMessageInputWrapper-6e1d03d7.js +175 -0
  360. package/cjs/VoiceMessageInputWrapper-6e1d03d7.js.map +1 -0
  361. package/cjs/VoicePlayer/context.js +16 -0
  362. package/cjs/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
  363. package/cjs/VoicePlayer/useVoicePlayer.js +76 -0
  364. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -0
  365. package/cjs/VoiceRecorder/context.js +128 -0
  366. package/cjs/VoiceRecorder/context.js.map +1 -0
  367. package/cjs/VoiceRecorder/useVoiceRecorder.js +114 -0
  368. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  369. package/cjs/WebAudioUtils-de98e939.js +126 -0
  370. package/cjs/WebAudioUtils-de98e939.js.map +1 -0
  371. package/cjs/{_rollupPluginBabelHelpers-a7254c9d.js → _rollupPluginBabelHelpers-3a9d1641.js} +17 -10
  372. package/cjs/_rollupPluginBabelHelpers-3a9d1641.js.map +1 -0
  373. package/cjs/actionTypes-ecb5bef6.js +10 -0
  374. package/cjs/actionTypes-ecb5bef6.js.map +1 -0
  375. package/cjs/{color-89f33656.js → color-a4e73e6f.js} +13 -21
  376. package/cjs/color-a4e73e6f.js.map +1 -0
  377. package/cjs/{compareIds-ca869c2e.js → compareIds-a7029d6a.js} +5 -6
  378. package/cjs/compareIds-a7029d6a.js.map +1 -0
  379. package/cjs/{const-db71e993.js → const-3ab3e45c.js} +4 -4
  380. package/cjs/const-3ab3e45c.js.map +1 -0
  381. package/cjs/const-68cf2709.js +20 -0
  382. package/cjs/const-68cf2709.js.map +1 -0
  383. package/cjs/consts-26d4668c.js +6 -0
  384. package/cjs/consts-26d4668c.js.map +1 -0
  385. package/cjs/consts-ad8ba629.js +6 -0
  386. package/cjs/consts-ad8ba629.js.map +1 -0
  387. package/cjs/consts-bb2a67c7.js +6 -0
  388. package/cjs/consts-bb2a67c7.js.map +1 -0
  389. package/cjs/consts-f71467c8.js +41 -0
  390. package/cjs/consts-f71467c8.js.map +1 -0
  391. package/cjs/{context-2f5d47fd.js → context-b81d493d.js} +6 -5
  392. package/cjs/{context-2f5d47fd.js.map → context-b81d493d.js.map} +1 -1
  393. package/cjs/dist/index.css +970 -532
  394. package/cjs/dist/index.css.map +1 -1
  395. package/cjs/handlers/OpenChannelHandler.js.map +1 -1
  396. package/cjs/handlers/SessionHandler.js.map +1 -1
  397. package/cjs/index-0b8a1074.js +590 -0
  398. package/cjs/index-0b8a1074.js.map +1 -0
  399. package/cjs/index-1c18afa8.js +57 -0
  400. package/cjs/index-1c18afa8.js.map +1 -0
  401. package/cjs/index-3f079f3e.js +367 -0
  402. package/cjs/index-3f079f3e.js.map +1 -0
  403. package/cjs/{index-d6ef2a60.js → index-72e412f7.js} +11 -25
  404. package/cjs/index-72e412f7.js.map +1 -0
  405. package/cjs/{index-0988ab25.js → index-7ec4fe06.js} +57 -3
  406. package/cjs/index-7ec4fe06.js.map +1 -0
  407. package/cjs/{index-be9c6237.js → index-811da6ee.js} +55 -63
  408. package/cjs/index-811da6ee.js.map +1 -0
  409. package/cjs/{index-73467e1d.js → index-849f44b0.js} +2 -2
  410. package/cjs/{index-73467e1d.js.map → index-849f44b0.js.map} +1 -1
  411. package/cjs/{index-de151767.js → index-97005534.js} +1 -1
  412. package/cjs/{index-de151767.js.map → index-97005534.js.map} +1 -1
  413. package/cjs/index-9b23b5c2.js +161 -0
  414. package/cjs/index-9b23b5c2.js.map +1 -0
  415. package/cjs/{index-621e74bd.js → index-9d9e563e.js} +29 -37
  416. package/cjs/index-9d9e563e.js.map +1 -0
  417. package/cjs/index-a401f2b6.js +441 -0
  418. package/cjs/index-a401f2b6.js.map +1 -0
  419. package/cjs/{index-2c5dd48c.js → index-afada680.js} +2 -2
  420. package/cjs/{index-2c5dd48c.js.map → index-afada680.js.map} +1 -1
  421. package/cjs/index-c38404d2.js +79 -0
  422. package/cjs/index-c38404d2.js.map +1 -0
  423. package/cjs/index-cb1d7ac4.js +292 -0
  424. package/cjs/index-cb1d7ac4.js.map +1 -0
  425. package/cjs/{index-e240e852.js → index-e1d69370.js} +42 -51
  426. package/cjs/index-e1d69370.js.map +1 -0
  427. package/cjs/{index-c4d4ef49.js → index-e8b83547.js} +1 -1
  428. package/cjs/index-e8b83547.js.map +1 -0
  429. package/cjs/index-f4f6d794.js +202 -0
  430. package/cjs/index-f4f6d794.js.map +1 -0
  431. package/cjs/index.js +77 -58
  432. package/cjs/index.js.map +1 -1
  433. package/cjs/index.module-d2876b1c.js +6 -0
  434. package/cjs/index.module-d2876b1c.js.map +1 -0
  435. package/cjs/lame.all.js +2541 -0
  436. package/cjs/lame.all.js.map +1 -0
  437. package/cjs/sendbirdSelectors.js +307 -417
  438. package/cjs/sendbirdSelectors.js.map +1 -1
  439. package/cjs/{stringSet-91b919f6.js → stringSet-4f30313f.js} +110 -90
  440. package/cjs/stringSet-4f30313f.js.map +1 -0
  441. package/cjs/tokenize-e944d548.js +164 -0
  442. package/cjs/tokenize-e944d548.js.map +1 -0
  443. package/cjs/topics-3226c6ee.js +18 -0
  444. package/cjs/topics-3226c6ee.js.map +1 -0
  445. package/cjs/types-31174fcc.js +17 -0
  446. package/cjs/types-31174fcc.js.map +1 -0
  447. package/cjs/ui/Accordion.js +21 -24
  448. package/cjs/ui/Accordion.js.map +1 -1
  449. package/cjs/ui/AccordionGroup.js +10 -13
  450. package/cjs/ui/AccordionGroup.js.map +1 -1
  451. package/cjs/ui/AdminMessage.js +10 -13
  452. package/cjs/ui/AdminMessage.js.map +1 -1
  453. package/cjs/ui/Avatar.js +57 -79
  454. package/cjs/ui/Avatar.js.map +1 -1
  455. package/cjs/ui/Badge.js +16 -15
  456. package/cjs/ui/Badge.js.map +1 -1
  457. package/cjs/ui/BottomSheet.js +14 -12
  458. package/cjs/ui/BottomSheet.js.map +1 -1
  459. package/cjs/ui/Button.js +20 -35
  460. package/cjs/ui/Button.js.map +1 -1
  461. package/cjs/ui/ChannelAvatar.js +38 -41
  462. package/cjs/ui/ChannelAvatar.js.map +1 -1
  463. package/cjs/ui/Checkbox.js +11 -13
  464. package/cjs/ui/Checkbox.js.map +1 -1
  465. package/cjs/ui/ConnectionStatus.js +7 -5
  466. package/cjs/ui/ConnectionStatus.js.map +1 -1
  467. package/cjs/ui/ContextMenu.js +175 -199
  468. package/cjs/ui/ContextMenu.js.map +1 -1
  469. package/cjs/ui/DateSeparator.js +12 -14
  470. package/cjs/ui/DateSeparator.js.map +1 -1
  471. package/cjs/ui/EmojiReactions.js +299 -107
  472. package/cjs/ui/EmojiReactions.js.map +1 -1
  473. package/cjs/ui/FileMessageItemBody.js +22 -23
  474. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  475. package/cjs/ui/FileViewer.js +36 -36
  476. package/cjs/ui/FileViewer.js.map +1 -1
  477. package/cjs/ui/Icon.js +447 -623
  478. package/cjs/ui/Icon.js.map +1 -1
  479. package/cjs/ui/IconButton.js +20 -31
  480. package/cjs/ui/IconButton.js.map +1 -1
  481. package/cjs/ui/ImageRenderer.js +34 -43
  482. package/cjs/ui/ImageRenderer.js.map +1 -1
  483. package/cjs/ui/Input.js +16 -16
  484. package/cjs/ui/Input.js.map +1 -1
  485. package/cjs/ui/Label.js +2 -2
  486. package/cjs/ui/LinkLabel.js +4 -3
  487. package/cjs/ui/LinkLabel.js.map +1 -1
  488. package/cjs/ui/Loader.js +10 -12
  489. package/cjs/ui/Loader.js.map +1 -1
  490. package/cjs/ui/MentionLabel.js +58 -65
  491. package/cjs/ui/MentionLabel.js.map +1 -1
  492. package/cjs/ui/MentionUserLabel.js +12 -10
  493. package/cjs/ui/MentionUserLabel.js.map +1 -1
  494. package/cjs/ui/MessageContent.js +208 -546
  495. package/cjs/ui/MessageContent.js.map +1 -1
  496. package/cjs/ui/MessageInput.js +338 -118
  497. package/cjs/ui/MessageInput.js.map +1 -1
  498. package/cjs/ui/MessageItemMenu.js +83 -83
  499. package/cjs/ui/MessageItemMenu.js.map +1 -1
  500. package/cjs/ui/MessageItemReactionMenu.js +58 -62
  501. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  502. package/cjs/ui/MessageSearchFileItem.js +56 -51
  503. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  504. package/cjs/ui/MessageSearchItem.js +42 -41
  505. package/cjs/ui/MessageSearchItem.js.map +1 -1
  506. package/cjs/ui/MessageStatus.js +10 -11
  507. package/cjs/ui/MessageStatus.js.map +1 -1
  508. package/cjs/ui/Modal.js +52 -46
  509. package/cjs/ui/Modal.js.map +1 -1
  510. package/cjs/ui/MutedAvatarOverlay.js +10 -10
  511. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  512. package/cjs/ui/OGMessageItemBody.js +67 -63
  513. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  514. package/cjs/ui/OpenChannelAdminMessage.js +8 -7
  515. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  516. package/cjs/ui/OpenChannelAvatar.js +18 -17
  517. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  518. package/cjs/ui/OpenchannelConversationHeader.js +17 -13
  519. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  520. package/cjs/ui/OpenchannelFileMessage.js +138 -149
  521. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  522. package/cjs/ui/OpenchannelOGMessage.js +204 -233
  523. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  524. package/cjs/ui/OpenchannelThumbnailMessage.js +213 -220
  525. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  526. package/cjs/ui/OpenchannelUserMessage.js +164 -173
  527. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  528. package/cjs/ui/PlaceHolder.js +5 -6
  529. package/cjs/ui/PlaceHolder.js.map +1 -1
  530. package/cjs/ui/PlaybackTime.js +35 -0
  531. package/cjs/ui/PlaybackTime.js.map +1 -0
  532. package/cjs/ui/ProgressBar.js +40 -0
  533. package/cjs/ui/ProgressBar.js.map +1 -0
  534. package/cjs/ui/QuoteMessage.js +50 -44
  535. package/cjs/ui/QuoteMessage.js.map +1 -1
  536. package/cjs/ui/QuoteMessageInput.js +31 -29
  537. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  538. package/cjs/ui/ReactionBadge.js +13 -21
  539. package/cjs/ui/ReactionBadge.js.map +1 -1
  540. package/cjs/ui/ReactionButton.js +30 -27
  541. package/cjs/ui/ReactionButton.js.map +1 -1
  542. package/cjs/ui/SortByRow.js +14 -18
  543. package/cjs/ui/SortByRow.js.map +1 -1
  544. package/cjs/ui/TextButton.js +13 -21
  545. package/cjs/ui/TextButton.js.map +1 -1
  546. package/cjs/ui/TextMessageItemBody.js +41 -48
  547. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  548. package/cjs/ui/ThreadReplies.js +25 -22
  549. package/cjs/ui/ThreadReplies.js.map +1 -1
  550. package/cjs/ui/ThumbnailMessageItemBody.js +43 -45
  551. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  552. package/cjs/ui/Toggle.js +202 -0
  553. package/cjs/ui/Toggle.js.map +1 -0
  554. package/cjs/ui/Tooltip.js +8 -9
  555. package/cjs/ui/Tooltip.js.map +1 -1
  556. package/cjs/ui/TooltipWrapper.js +17 -20
  557. package/cjs/ui/TooltipWrapper.js.map +1 -1
  558. package/cjs/ui/UnknownMessageItemBody.js +21 -22
  559. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  560. package/cjs/ui/UserListItem.js +76 -76
  561. package/cjs/ui/UserListItem.js.map +1 -1
  562. package/cjs/ui/UserProfile.js +31 -29
  563. package/cjs/ui/UserProfile.js.map +1 -1
  564. package/cjs/ui/VoiceMessageItemBody.js +108 -0
  565. package/cjs/ui/VoiceMessageItemBody.js.map +1 -0
  566. package/cjs/ui/VoiceMessgeInput.js +22 -0
  567. package/cjs/ui/VoiceMessgeInput.js.map +1 -0
  568. package/cjs/ui/Word.js +31 -39
  569. package/cjs/ui/Word.js.map +1 -1
  570. package/cjs/useDirtyGetMentions-97c6e05a.js +77 -0
  571. package/cjs/useDirtyGetMentions-97c6e05a.js.map +1 -0
  572. package/cjs/useLongPress-bf1e8eee.js +87 -0
  573. package/cjs/useLongPress-bf1e8eee.js.map +1 -0
  574. package/cjs/useSendbirdStateContext.js +2 -3
  575. package/cjs/useSendbirdStateContext.js.map +1 -1
  576. package/cjs/utils/message/getOutgoingMessageState.js +16 -21
  577. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  578. package/cjs/utils/message/isVoiceMessage.js +12 -0
  579. package/cjs/utils/message/isVoiceMessage.js.map +1 -0
  580. package/cjs/{utils-1f6c6626.js → utils-146517a9.js} +1 -1
  581. package/cjs/{utils-1f6c6626.js.map → utils-146517a9.js.map} +1 -1
  582. package/cjs/utils-411a893e.js +31 -0
  583. package/cjs/utils-411a893e.js.map +1 -0
  584. package/cjs/{utils-3714e90e.js → utils-dbaff0d0.js} +3 -7
  585. package/cjs/{utils-3714e90e.js.map → utils-dbaff0d0.js.map} +1 -1
  586. package/cjs/utils-de654d3c.js +35 -0
  587. package/cjs/utils-de654d3c.js.map +1 -0
  588. package/cjs/uuid-5ab4f88b.js +15 -0
  589. package/cjs/{uuid-11d4efe8.js.map → uuid-5ab4f88b.js.map} +1 -1
  590. package/cjs/withSendbird.js +5 -6
  591. package/cjs/withSendbird.js.map +1 -1
  592. package/{color-ff5f9069.js → color-2ed716e6.js} +5 -14
  593. package/{color-ff5f9069.js.map → color-2ed716e6.js.map} +1 -1
  594. package/{compareIds-9430f9d8.js → compareIds-bc881fe7.js} +5 -6
  595. package/compareIds-bc881fe7.js.map +1 -0
  596. package/{const-83764204.js → const-8daee9fc.js} +4 -4
  597. package/const-8daee9fc.js.map +1 -0
  598. package/const-e51dda0c.js +13 -0
  599. package/const-e51dda0c.js.map +1 -0
  600. package/consts-3c0ff1ed.js +27 -0
  601. package/consts-3c0ff1ed.js.map +1 -0
  602. package/consts-7aab5aff.js +4 -0
  603. package/consts-7aab5aff.js.map +1 -0
  604. package/consts-d0b365df.js +4 -0
  605. package/consts-d0b365df.js.map +1 -0
  606. package/consts-d0cfee49.js +4 -0
  607. package/consts-d0cfee49.js.map +1 -0
  608. package/context-cde5c2bf.js +13 -0
  609. package/{context-9a69e846.js.map → context-cde5c2bf.js.map} +1 -1
  610. package/dist/index.css +970 -532
  611. package/dist/index.css.map +1 -1
  612. package/handlers/OpenChannelHandler.js.map +1 -1
  613. package/handlers/SessionHandler.js.map +1 -1
  614. package/{index-134314e2.js → index-0f22e96e.js} +29 -37
  615. package/index-0f22e96e.js.map +1 -0
  616. package/index-1e5cf284.js +154 -0
  617. package/index-1e5cf284.js.map +1 -0
  618. package/{index-defabece.js → index-1ec11afb.js} +57 -4
  619. package/index-1ec11afb.js.map +1 -0
  620. package/{index-d3f6dbb9.js → index-37531f98.js} +2 -2
  621. package/{index-d3f6dbb9.js.map → index-37531f98.js.map} +1 -1
  622. package/index-3f1fa3f9.js +76 -0
  623. package/index-3f1fa3f9.js.map +1 -0
  624. package/{index-44470dab.js → index-4023d1b2.js} +11 -25
  625. package/index-4023d1b2.js.map +1 -0
  626. package/index-5141f766.js +51 -0
  627. package/index-5141f766.js.map +1 -0
  628. package/{index-fc4702b7.js → index-5a1c1956.js} +55 -63
  629. package/index-5a1c1956.js.map +1 -0
  630. package/index-735cb5a3.js +360 -0
  631. package/index-735cb5a3.js.map +1 -0
  632. package/{index-e5b78039.js → index-7bff4ce0.js} +1 -1
  633. package/index-7bff4ce0.js.map +1 -0
  634. package/{index-07e060cd.js → index-865112db.js} +1 -1
  635. package/{index-07e060cd.js.map → index-865112db.js.map} +1 -1
  636. package/index-ac642e0b.js +435 -0
  637. package/index-ac642e0b.js.map +1 -0
  638. package/index-d847a382.js +283 -0
  639. package/index-d847a382.js.map +1 -0
  640. package/index-e2601165.js +544 -0
  641. package/index-e2601165.js.map +1 -0
  642. package/{index-3f26a31c.js → index-f1701c11.js} +2 -2
  643. package/{index-3f26a31c.js.map → index-f1701c11.js.map} +1 -1
  644. package/{index-1b91b116.js → index-fa140763.js} +39 -48
  645. package/index-fa140763.js.map +1 -0
  646. package/index-fa37119a.js +187 -0
  647. package/index-fa37119a.js.map +1 -0
  648. package/index.d.ts +171 -123
  649. package/index.js +77 -58
  650. package/index.js.map +1 -1
  651. package/index.module-9202ebbd.js +4 -0
  652. package/index.module-9202ebbd.js.map +1 -0
  653. package/lame.all.js +2537 -0
  654. package/lame.all.js.map +1 -0
  655. package/package.json +61 -41
  656. package/sendbirdSelectors.js +307 -417
  657. package/sendbirdSelectors.js.map +1 -1
  658. package/{stringSet-d555d877.js → stringSet-7a8ce1ce.js} +110 -90
  659. package/stringSet-7a8ce1ce.js.map +1 -0
  660. package/tokenize-003bf3f7.js +159 -0
  661. package/tokenize-003bf3f7.js.map +1 -0
  662. package/topics-5ff88d6f.js +16 -0
  663. package/topics-5ff88d6f.js.map +1 -0
  664. package/types-bffbc5f5.js +15 -0
  665. package/types-bffbc5f5.js.map +1 -0
  666. package/ui/Accordion.js +21 -24
  667. package/ui/Accordion.js.map +1 -1
  668. package/ui/AccordionGroup.js +10 -13
  669. package/ui/AccordionGroup.js.map +1 -1
  670. package/ui/AdminMessage.js +10 -13
  671. package/ui/AdminMessage.js.map +1 -1
  672. package/ui/Avatar.js +57 -79
  673. package/ui/Avatar.js.map +1 -1
  674. package/ui/Badge.js +16 -15
  675. package/ui/Badge.js.map +1 -1
  676. package/ui/BottomSheet.js +14 -12
  677. package/ui/BottomSheet.js.map +1 -1
  678. package/ui/Button.js +20 -35
  679. package/ui/Button.js.map +1 -1
  680. package/ui/ChannelAvatar.js +38 -41
  681. package/ui/ChannelAvatar.js.map +1 -1
  682. package/ui/Checkbox.js +11 -13
  683. package/ui/Checkbox.js.map +1 -1
  684. package/ui/ConnectionStatus.js +7 -5
  685. package/ui/ConnectionStatus.js.map +1 -1
  686. package/ui/ContextMenu.js +176 -200
  687. package/ui/ContextMenu.js.map +1 -1
  688. package/ui/DateSeparator.js +12 -14
  689. package/ui/DateSeparator.js.map +1 -1
  690. package/ui/EmojiReactions.js +300 -108
  691. package/ui/EmojiReactions.js.map +1 -1
  692. package/ui/FileMessageItemBody.js +22 -23
  693. package/ui/FileMessageItemBody.js.map +1 -1
  694. package/ui/FileViewer.js +36 -36
  695. package/ui/FileViewer.js.map +1 -1
  696. package/ui/Icon.js +448 -622
  697. package/ui/Icon.js.map +1 -1
  698. package/ui/IconButton.js +20 -31
  699. package/ui/IconButton.js.map +1 -1
  700. package/ui/ImageRenderer.js +34 -43
  701. package/ui/ImageRenderer.js.map +1 -1
  702. package/ui/Input.js +16 -16
  703. package/ui/Input.js.map +1 -1
  704. package/ui/Label.js +2 -2
  705. package/ui/LinkLabel.js +4 -3
  706. package/ui/LinkLabel.js.map +1 -1
  707. package/ui/Loader.js +10 -12
  708. package/ui/Loader.js.map +1 -1
  709. package/ui/MentionLabel.js +58 -65
  710. package/ui/MentionLabel.js.map +1 -1
  711. package/ui/MentionUserLabel.js +12 -10
  712. package/ui/MentionUserLabel.js.map +1 -1
  713. package/ui/MessageContent.js +211 -549
  714. package/ui/MessageContent.js.map +1 -1
  715. package/ui/MessageInput.js +338 -119
  716. package/ui/MessageInput.js.map +1 -1
  717. package/ui/MessageItemMenu.js +83 -83
  718. package/ui/MessageItemMenu.js.map +1 -1
  719. package/ui/MessageItemReactionMenu.js +58 -62
  720. package/ui/MessageItemReactionMenu.js.map +1 -1
  721. package/ui/MessageSearchFileItem.js +55 -50
  722. package/ui/MessageSearchFileItem.js.map +1 -1
  723. package/ui/MessageSearchItem.js +41 -40
  724. package/ui/MessageSearchItem.js.map +1 -1
  725. package/ui/MessageStatus.js +10 -11
  726. package/ui/MessageStatus.js.map +1 -1
  727. package/ui/Modal.js +52 -46
  728. package/ui/Modal.js.map +1 -1
  729. package/ui/MutedAvatarOverlay.js +10 -10
  730. package/ui/MutedAvatarOverlay.js.map +1 -1
  731. package/ui/OGMessageItemBody.js +68 -64
  732. package/ui/OGMessageItemBody.js.map +1 -1
  733. package/ui/OpenChannelAdminMessage.js +8 -7
  734. package/ui/OpenChannelAdminMessage.js.map +1 -1
  735. package/ui/OpenChannelAvatar.js +18 -17
  736. package/ui/OpenChannelAvatar.js.map +1 -1
  737. package/ui/OpenchannelConversationHeader.js +17 -13
  738. package/ui/OpenchannelConversationHeader.js.map +1 -1
  739. package/ui/OpenchannelFileMessage.js +138 -149
  740. package/ui/OpenchannelFileMessage.js.map +1 -1
  741. package/ui/OpenchannelOGMessage.js +204 -233
  742. package/ui/OpenchannelOGMessage.js.map +1 -1
  743. package/ui/OpenchannelThumbnailMessage.js +213 -220
  744. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  745. package/ui/OpenchannelUserMessage.js +164 -173
  746. package/ui/OpenchannelUserMessage.js.map +1 -1
  747. package/ui/PlaceHolder.js +5 -6
  748. package/ui/PlaceHolder.js.map +1 -1
  749. package/ui/PlaybackTime.js +26 -0
  750. package/ui/PlaybackTime.js.map +1 -0
  751. package/ui/ProgressBar.js +30 -0
  752. package/ui/ProgressBar.js.map +1 -0
  753. package/ui/QuoteMessage.js +50 -44
  754. package/ui/QuoteMessage.js.map +1 -1
  755. package/ui/QuoteMessageInput.js +31 -29
  756. package/ui/QuoteMessageInput.js.map +1 -1
  757. package/ui/ReactionBadge.js +13 -21
  758. package/ui/ReactionBadge.js.map +1 -1
  759. package/ui/ReactionButton.js +30 -27
  760. package/ui/ReactionButton.js.map +1 -1
  761. package/ui/SortByRow.js +14 -18
  762. package/ui/SortByRow.js.map +1 -1
  763. package/ui/TextButton.js +13 -21
  764. package/ui/TextButton.js.map +1 -1
  765. package/ui/TextMessageItemBody.js +41 -48
  766. package/ui/TextMessageItemBody.js.map +1 -1
  767. package/ui/ThreadReplies.js +25 -22
  768. package/ui/ThreadReplies.js.map +1 -1
  769. package/ui/ThumbnailMessageItemBody.js +43 -45
  770. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  771. package/ui/Toggle.js +191 -0
  772. package/ui/Toggle.js.map +1 -0
  773. package/ui/Tooltip.js +8 -9
  774. package/ui/Tooltip.js.map +1 -1
  775. package/ui/TooltipWrapper.js +17 -20
  776. package/ui/TooltipWrapper.js.map +1 -1
  777. package/ui/UnknownMessageItemBody.js +21 -22
  778. package/ui/UnknownMessageItemBody.js.map +1 -1
  779. package/ui/UserListItem.js +76 -76
  780. package/ui/UserListItem.js.map +1 -1
  781. package/ui/UserProfile.js +31 -29
  782. package/ui/UserProfile.js.map +1 -1
  783. package/ui/VoiceMessageItemBody.js +99 -0
  784. package/ui/VoiceMessageItemBody.js.map +1 -0
  785. package/ui/VoiceMessgeInput.js +14 -0
  786. package/ui/VoiceMessgeInput.js.map +1 -0
  787. package/ui/Word.js +31 -39
  788. package/ui/Word.js.map +1 -1
  789. package/useDirtyGetMentions-aac697f4.js +75 -0
  790. package/useDirtyGetMentions-aac697f4.js.map +1 -0
  791. package/useLongPress-fbab35a9.js +85 -0
  792. package/useLongPress-fbab35a9.js.map +1 -0
  793. package/useSendbirdStateContext.js +2 -3
  794. package/useSendbirdStateContext.js.map +1 -1
  795. package/utils/message/getOutgoingMessageState.js +9 -15
  796. package/utils/message/getOutgoingMessageState.js.map +1 -1
  797. package/utils/message/isVoiceMessage.js +8 -0
  798. package/utils/message/isVoiceMessage.js.map +1 -0
  799. package/{utils-8b11ff42.js → utils-0d88f863.js} +3 -7
  800. package/{utils-8b11ff42.js.map → utils-0d88f863.js.map} +1 -1
  801. package/{utils-e720e03a.js → utils-388a790e.js} +1 -1
  802. package/{utils-e720e03a.js.map → utils-388a790e.js.map} +1 -1
  803. package/utils-6f2bb331.js +31 -0
  804. package/utils-6f2bb331.js.map +1 -0
  805. package/utils-af761f03.js +29 -0
  806. package/utils-af761f03.js.map +1 -0
  807. package/uuid-1f1bbd9c.js +13 -0
  808. package/{uuid-286ed926.js.map → uuid-1f1bbd9c.js.map} +1 -1
  809. package/withSendbird.js +5 -6
  810. package/withSendbird.js.map +1 -1
  811. package/ChannelListProvider-f461d265.js.map +0 -1
  812. package/ChannelProvider-554e7116.js.map +0 -1
  813. package/CreateChannelProvider-250cd98e.js +0 -55
  814. package/CreateChannelProvider-250cd98e.js.map +0 -1
  815. package/LocalizationContext-4df0cc32.js +0 -22
  816. package/MediaQueryContext-74183e34.js +0 -90
  817. package/MediaQueryContext-74183e34.js.map +0 -1
  818. package/MemberList-51c7afaa.js +0 -435
  819. package/MemberList-51c7afaa.js.map +0 -1
  820. package/NotificationChannel/components/NotificationChannelUI.js +0 -119
  821. package/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
  822. package/NotificationChannel/components/NotificationList.js +0 -111
  823. package/NotificationChannel/components/NotificationList.js.map +0 -1
  824. package/NotificationChannel/components/NotificationMessageWrap.js +0 -136
  825. package/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
  826. package/NotificationChannel/context.js +0 -12
  827. package/NotificationChannel.js +0 -58
  828. package/NotificationChannel.js.map +0 -1
  829. package/NotificationChannelProvider-0d8be1ad.js +0 -535
  830. package/NotificationChannelProvider-0d8be1ad.js.map +0 -1
  831. package/OpenChannelListProvider-8c753945.js +0 -434
  832. package/OpenChannelListProvider-8c753945.js.map +0 -1
  833. package/OpenChannelProvider-2fa01820.js +0 -2000
  834. package/OpenChannelProvider-2fa01820.js.map +0 -1
  835. package/RemoveMessageModal-9762fed1.js +0 -31
  836. package/RemoveMessageModal-9762fed1.js.map +0 -1
  837. package/ThreadProvider-6974fb3e.js +0 -1644
  838. package/ThreadProvider-6974fb3e.js.map +0 -1
  839. package/_rollupPluginBabelHelpers-498add61.js.map +0 -1
  840. package/actionTypes-ad2cbd73.js +0 -6
  841. package/actionTypes-ad2cbd73.js.map +0 -1
  842. package/cjs/ChannelListProvider-c2148b43.js.map +0 -1
  843. package/cjs/ChannelProvider-cf5dc7e3.js.map +0 -1
  844. package/cjs/CreateChannelProvider-c98de398.js +0 -62
  845. package/cjs/CreateChannelProvider-c98de398.js.map +0 -1
  846. package/cjs/MediaQueryContext-71862be1.js +0 -97
  847. package/cjs/MediaQueryContext-71862be1.js.map +0 -1
  848. package/cjs/MemberList-13566703.js +0 -441
  849. package/cjs/MemberList-13566703.js.map +0 -1
  850. package/cjs/NotificationChannel/components/NotificationChannelUI.js +0 -125
  851. package/cjs/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
  852. package/cjs/NotificationChannel/components/NotificationList.js +0 -117
  853. package/cjs/NotificationChannel/components/NotificationList.js.map +0 -1
  854. package/cjs/NotificationChannel/components/NotificationMessageWrap.js +0 -142
  855. package/cjs/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
  856. package/cjs/NotificationChannel/context.js +0 -21
  857. package/cjs/NotificationChannel.js +0 -64
  858. package/cjs/NotificationChannel.js.map +0 -1
  859. package/cjs/NotificationChannelProvider-8f3b7320.js +0 -543
  860. package/cjs/NotificationChannelProvider-8f3b7320.js.map +0 -1
  861. package/cjs/OpenChannelListProvider-64043b4f.js +0 -443
  862. package/cjs/OpenChannelListProvider-64043b4f.js.map +0 -1
  863. package/cjs/OpenChannelProvider-5b56e629.js +0 -2009
  864. package/cjs/OpenChannelProvider-5b56e629.js.map +0 -1
  865. package/cjs/RemoveMessageModal-c01eb93b.js.map +0 -1
  866. package/cjs/ThreadProvider-d3c0c877.js +0 -1653
  867. package/cjs/ThreadProvider-d3c0c877.js.map +0 -1
  868. package/cjs/_rollupPluginBabelHelpers-a7254c9d.js.map +0 -1
  869. package/cjs/actionTypes-0e8bea91.js +0 -10
  870. package/cjs/actionTypes-0e8bea91.js.map +0 -1
  871. package/cjs/color-89f33656.js.map +0 -1
  872. package/cjs/compareIds-ca869c2e.js.map +0 -1
  873. package/cjs/const-55d167ca.js +0 -20
  874. package/cjs/const-55d167ca.js.map +0 -1
  875. package/cjs/const-db71e993.js.map +0 -1
  876. package/cjs/index-0988ab25.js.map +0 -1
  877. package/cjs/index-21b2339d.js +0 -701
  878. package/cjs/index-21b2339d.js.map +0 -1
  879. package/cjs/index-5c81f847.js +0 -194
  880. package/cjs/index-5c81f847.js.map +0 -1
  881. package/cjs/index-621e74bd.js.map +0 -1
  882. package/cjs/index-8de59744.js +0 -59
  883. package/cjs/index-8de59744.js.map +0 -1
  884. package/cjs/index-a52859ed.js +0 -360
  885. package/cjs/index-a52859ed.js.map +0 -1
  886. package/cjs/index-be9c6237.js.map +0 -1
  887. package/cjs/index-c4d4ef49.js.map +0 -1
  888. package/cjs/index-d6ef2a60.js.map +0 -1
  889. package/cjs/index-e240e852.js.map +0 -1
  890. package/cjs/stringSet-91b919f6.js.map +0 -1
  891. package/cjs/topics-ac9cf7ed.js +0 -22
  892. package/cjs/topics-ac9cf7ed.js.map +0 -1
  893. package/cjs/tslib.es6-43854eb1.js +0 -110
  894. package/cjs/tslib.es6-43854eb1.js.map +0 -1
  895. package/cjs/useLongPress-c7bf12b1.js +0 -118
  896. package/cjs/useLongPress-c7bf12b1.js.map +0 -1
  897. package/cjs/utils-4b529d96.js +0 -38
  898. package/cjs/utils-4b529d96.js.map +0 -1
  899. package/cjs/utils-65a380e8.js +0 -32
  900. package/cjs/utils-65a380e8.js.map +0 -1
  901. package/cjs/uuid-11d4efe8.js +0 -19
  902. package/compareIds-9430f9d8.js.map +0 -1
  903. package/const-83764204.js.map +0 -1
  904. package/const-9d11f204.js +0 -14
  905. package/const-9d11f204.js.map +0 -1
  906. package/context-9a69e846.js +0 -12
  907. package/index-134314e2.js.map +0 -1
  908. package/index-1572c90f.js +0 -57
  909. package/index-1572c90f.js.map +0 -1
  910. package/index-1b91b116.js.map +0 -1
  911. package/index-44470dab.js.map +0 -1
  912. package/index-5f08f486.js +0 -662
  913. package/index-5f08f486.js.map +0 -1
  914. package/index-d8e3ccee.js +0 -179
  915. package/index-d8e3ccee.js.map +0 -1
  916. package/index-defabece.js.map +0 -1
  917. package/index-e5b78039.js.map +0 -1
  918. package/index-ed65ee3b.js +0 -353
  919. package/index-ed65ee3b.js.map +0 -1
  920. package/index-fc4702b7.js.map +0 -1
  921. package/stringSet-d555d877.js.map +0 -1
  922. package/topics-351ea731.js +0 -13
  923. package/topics-351ea731.js.map +0 -1
  924. package/tslib.es6-bcead7e6.js +0 -104
  925. package/tslib.es6-bcead7e6.js.map +0 -1
  926. package/useLongPress-794838b8.js +0 -116
  927. package/useLongPress-794838b8.js.map +0 -1
  928. package/utils-00ac1a7d.js +0 -34
  929. package/utils-00ac1a7d.js.map +0 -1
  930. package/utils-01e76a0c.js +0 -30
  931. package/utils-01e76a0c.js.map +0 -1
  932. package/uuid-286ed926.js +0 -17
@@ -0,0 +1,544 @@
1
+ import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-0bc76382.js';
2
+ import { OutgoingMessageStates, getOutgoingMessageState } from './utils/message/getOutgoingMessageState.js';
3
+
4
+ // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types
5
+ const SUPPORTED_MIMES = {
6
+ IMAGE: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif', 'image/svg+xml', 'image/webp' // not supported in IE
7
+ ],
8
+
9
+ VIDEO: ['video/mpeg', 'video/ogg', 'video/webm', 'video/mp4'],
10
+ AUDIO: ['audio/aac', 'audio/midi', 'audio/x-midi', 'audio/mpeg', 'audio/ogg', 'audio/opus', 'audio/wav', 'audio/webm', 'audio/3gpp', 'audio/3gpp2', 'audio/mp3']
11
+ };
12
+
13
+ /* eslint-disable no-redeclare */
14
+
15
+ const UIKitMessageTypes = {
16
+ ADMIN: 'ADMIN',
17
+ TEXT: 'TEXT',
18
+ FILE: 'FILE',
19
+ THUMBNAIL: 'THUMBNAIL',
20
+ OG: 'OG',
21
+ UNKNOWN: 'UNKNOWN'
22
+ };
23
+ /* eslint-disable no-redeclare */
24
+
25
+ const UIKitFileTypes = {
26
+ IMAGE: 'IMAGE',
27
+ AUDIO: 'AUDIO',
28
+ VIDEO: 'VIDEO',
29
+ GIF: 'GIF',
30
+ VOICE: 'VOICE',
31
+ OTHERS: 'OTHERS'
32
+ };
33
+
34
+ /* eslint-disable no-redeclare */
35
+
36
+ const SendingMessageStatus = {
37
+ NONE: 'none',
38
+ SUCCEEDED: 'succeeded',
39
+ FAILED: 'failed',
40
+ PENDING: 'pending'
41
+ };
42
+ const isTextuallyNull = text => {
43
+ if (text === '' || text === null) {
44
+ return true;
45
+ }
46
+ return false;
47
+ };
48
+ const isImage = type => SUPPORTED_MIMES.IMAGE.indexOf(type) >= 0;
49
+ const isVideo = type => SUPPORTED_MIMES.VIDEO.indexOf(type) >= 0;
50
+ const isGif = type => type === 'image/gif';
51
+ const isSupportedFileView = type => isImage(type) || isVideo(type);
52
+ const isAudio = type => SUPPORTED_MIMES.AUDIO.indexOf(type) >= 0;
53
+ const getUIKitFileTypes = () => _objectSpread2({}, UIKitFileTypes);
54
+ const getUIKitFileType = type => {
55
+ if (isGif(type)) return UIKitFileTypes.GIF;
56
+ if (isImage(type)) return UIKitFileTypes.IMAGE;
57
+ if (isVideo(type)) return UIKitFileTypes.VIDEO;
58
+ if (isAudio(type)) return UIKitFileTypes.AUDIO;
59
+ return UIKitFileTypes.OTHERS;
60
+ };
61
+ const isSentMessage = message => message.sendingStatus === 'succeeded';
62
+ const isReadMessage = (channel, message) => getOutgoingMessageState(channel, message) === OutgoingMessageStates.READ;
63
+ // TODO: Remove channel from the params, it seems unnecessary
64
+ const isFailedMessage = message => (message === null || message === void 0 ? void 0 : message.sendingStatus) === 'failed';
65
+ const isPendingMessage = message => (message === null || message === void 0 ? void 0 : message.sendingStatus) === 'pending';
66
+ const isSentStatus = state => state === OutgoingMessageStates.SENT || state === OutgoingMessageStates.DELIVERED || state === OutgoingMessageStates.READ;
67
+ const isAdminMessage = message => {
68
+ var _message$isAdminMessa;
69
+ return message && ((message === null || message === void 0 ? void 0 : (_message$isAdminMessa = message.isAdminMessage) === null || _message$isAdminMessa === void 0 ? void 0 : _message$isAdminMessa.call(message)) || (message === null || message === void 0 ? void 0 : message.messageType) === 'admin');
70
+ };
71
+ const isUserMessage = message => {
72
+ var _message$isUserMessag;
73
+ return message && ((message === null || message === void 0 ? void 0 : (_message$isUserMessag = message.isUserMessage) === null || _message$isUserMessag === void 0 ? void 0 : _message$isUserMessag.call(message)) || (message === null || message === void 0 ? void 0 : message.messageType) === 'user');
74
+ };
75
+ const isFileMessage = message => {
76
+ var _message$isFileMessag;
77
+ return message && ((message === null || message === void 0 ? void 0 : (_message$isFileMessag = message.isFileMessage) === null || _message$isFileMessag === void 0 ? void 0 : _message$isFileMessag.call(message)) || (message === null || message === void 0 ? void 0 : message.messageType) === 'file');
78
+ };
79
+ const isParentMessage = message => {
80
+ var _message$threadInfo$r, _message$threadInfo;
81
+ return !message.parentMessageId && !message.parentMessage && ((_message$threadInfo$r = (_message$threadInfo = message.threadInfo) === null || _message$threadInfo === void 0 ? void 0 : _message$threadInfo.replyCount) !== null && _message$threadInfo$r !== void 0 ? _message$threadInfo$r : 0) > 0;
82
+ };
83
+ const isThreadMessage = message => !!message.parentMessageId && !!message.parentMessage;
84
+ const isOGMessage = message => {
85
+ var _message$ogMetaData, _message$ogMetaData2, _message$ogMetaData3, _message$ogMetaData4;
86
+ return !!(message && isUserMessage(message) && message !== null && message !== void 0 && message.ogMetaData && ((_message$ogMetaData = message.ogMetaData) !== null && _message$ogMetaData !== void 0 && _message$ogMetaData.url || (_message$ogMetaData2 = message.ogMetaData) !== null && _message$ogMetaData2 !== void 0 && _message$ogMetaData2.title || (_message$ogMetaData3 = message.ogMetaData) !== null && _message$ogMetaData3 !== void 0 && _message$ogMetaData3.description || (_message$ogMetaData4 = message.ogMetaData) !== null && _message$ogMetaData4 !== void 0 && _message$ogMetaData4.defaultImage));
87
+ };
88
+ const isTextMessage = message => isUserMessage(message) && !isOGMessage(message);
89
+ const isThumbnailMessage = message => message && isFileMessage(message) && isSupportedFileView(message.type);
90
+ const isImageMessage = message => message && isThumbnailMessage(message) && isImage(message.type);
91
+ const isVideoMessage = message => message && isThumbnailMessage(message) && isVideo(message.type);
92
+ const isGifMessage = message => message && isThumbnailMessage(message) && isGif(message.type);
93
+ const isAudioMessage = message => message && isFileMessage(message) && isAudio(message.type);
94
+ const isAudioMessageMimeType = type => /^audio\//.test(type);
95
+ const isVoiceMessage = message => {
96
+ var _message$metaArrays$f, _message$metaArrays, _message$metaArrays$f2, _message$metaArrays$f3;
97
+ // ex) audio/m4a OR audio/m4a;sbu_type=voice
98
+ if (!(message && isFileMessage(message))) {
99
+ return false;
100
+ }
101
+ const [mimeType, typeParameter] = message.type.split(';');
102
+ if (!isAudioMessageMimeType(mimeType) || !typeParameter) {
103
+ return false;
104
+ }
105
+ const [key, value] = typeParameter.split('=');
106
+ if (key === 'sbu_type' && value === 'voice') {
107
+ return true;
108
+ }
109
+ // ex) message.metaArrays = [{ key: 'KEY_INTERNAL_MESSAGE_TYPE', value: ['voice/m4a'] }]
110
+ return isVoiceMessageMimeType((_message$metaArrays$f = message === null || message === void 0 ? void 0 : (_message$metaArrays = message.metaArrays) === null || _message$metaArrays === void 0 ? void 0 : (_message$metaArrays$f2 = _message$metaArrays.find(metaArray => metaArray.key === 'KEY_INTERNAL_MESSAGE_TYPE')) === null || _message$metaArrays$f2 === void 0 ? void 0 : (_message$metaArrays$f3 = _message$metaArrays$f2.value) === null || _message$metaArrays$f3 === void 0 ? void 0 : _message$metaArrays$f3[0]) !== null && _message$metaArrays$f !== void 0 ? _message$metaArrays$f : '');
111
+ };
112
+ const isVoiceMessageMimeType = type => /^voice\//.test(type);
113
+ const isEditedMessage = message => isUserMessage(message) && (message === null || message === void 0 ? void 0 : message.updatedAt) > 0;
114
+ const getUIKitMessageTypes = () => _objectSpread2({}, UIKitMessageTypes);
115
+ const getUIKitMessageType = message => {
116
+ if (isAdminMessage(message)) return UIKitMessageTypes.ADMIN;
117
+ if (isUserMessage(message)) {
118
+ return isOGMessage(message) ? UIKitMessageTypes.OG : UIKitMessageTypes.TEXT;
119
+ }
120
+ if (isFileMessage(message)) {
121
+ if (isThumbnailMessage(message)) {
122
+ return UIKitMessageTypes.THUMBNAIL;
123
+ }
124
+ if (isVoiceMessage(message)) {
125
+ return UIKitFileTypes.VOICE;
126
+ }
127
+ return UIKitMessageTypes.FILE;
128
+ }
129
+ return UIKitMessageTypes.UNKNOWN;
130
+ };
131
+ const getSendingMessageStatus = () => _objectSpread2({}, SendingMessageStatus);
132
+ const reducer = (accumulator, currentValue) => {
133
+ if (Array.isArray(currentValue)) {
134
+ return [...accumulator, ...currentValue];
135
+ } else {
136
+ accumulator.push(currentValue);
137
+ return accumulator;
138
+ }
139
+ };
140
+ const getClassName = classNames => Array.isArray(classNames) ? classNames.reduce(reducer, []).join(' ') : classNames;
141
+ const isReactedBy = (userId, reaction) => reaction.userIds.some(reactorUserId => reactorUserId === userId);
142
+ const getEmojiTooltipString = (reaction, userId, memberNicknamesMap, stringSet) => {
143
+ let you = '';
144
+ if (isReactedBy(userId, reaction)) {
145
+ you = reaction.userIds.length === 1 ? stringSet.TOOLTIP__YOU : stringSet.TOOLTIP__AND_YOU;
146
+ }
147
+ return `${reaction.userIds.filter(reactorUserId => reactorUserId !== userId).map(reactorUserId => memberNicknamesMap.get(reactorUserId) || stringSet.TOOLTIP__UNKNOWN_USER).join(', ')}${you}`;
148
+ };
149
+ const URL_REG = /^((http|https):\/\/)?([a-z\d]+\.)+[a-z]{2,6}(\:[0-9]{1,5})?(\/[-a-zA-Z\d%_.~+&=]*)*(\?[;&a-zA-Z\d%_.~+=-]*)?(\#[-a-zA-Z\d_]*)?$/;
150
+ const isUrl = text => URL_REG.test(text);
151
+ const truncateString = (fullStr, strLen) => {
152
+ if (!strLen) strLen = 40;
153
+ if (fullStr === null || fullStr === undefined) return '';
154
+ if (fullStr.length <= strLen) return fullStr;
155
+ const separator = '...';
156
+ const sepLen = separator.length;
157
+ const charsToShow = strLen - sepLen;
158
+ const frontChars = Math.ceil(charsToShow / 2);
159
+ const backChars = Math.floor(charsToShow / 2);
160
+ return fullStr.substr(0, frontChars) + separator + fullStr.substr(fullStr.length - backChars);
161
+ };
162
+ const copyToClipboard = text => {
163
+ // @ts-ignore: Unreachable code error
164
+ if (window.clipboardData && window.clipboardData.setData) {
165
+ // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.
166
+ // @ts-ignore: Unreachable code error
167
+ return window.clipboardData.setData('Text', text);
168
+ }
169
+ if (document.queryCommandSupported && document.queryCommandSupported('copy')) {
170
+ const textarea = document.createElement('textarea');
171
+ textarea.textContent = text;
172
+ textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.
173
+ document.body.appendChild(textarea);
174
+ textarea.select();
175
+ try {
176
+ return document.execCommand('copy'); // Security exception may be thrown by some browsers.
177
+ } catch (ex) {
178
+ return false;
179
+ } finally {
180
+ document.body.removeChild(textarea);
181
+ }
182
+ }
183
+ return false;
184
+ };
185
+ const getEmojiListAll = emojiContainer => {
186
+ var _emojiContainer$emoji;
187
+ return emojiContainer === null || emojiContainer === void 0 ? void 0 : (_emojiContainer$emoji = emojiContainer.emojiCategories) === null || _emojiContainer$emoji === void 0 ? void 0 : _emojiContainer$emoji.map(emojiCategory => emojiCategory.emojis).reduce((prevArr, currArr) => prevArr.concat(currArr), []);
188
+ };
189
+ const getEmojiMapAll = emojiContainer => {
190
+ var _emojiContainer$emoji2;
191
+ const emojiMap = new Map();
192
+ emojiContainer === null || emojiContainer === void 0 ? void 0 : (_emojiContainer$emoji2 = emojiContainer.emojiCategories) === null || _emojiContainer$emoji2 === void 0 ? void 0 : _emojiContainer$emoji2.forEach(category => {
193
+ var _category$emojis;
194
+ category === null || category === void 0 ? void 0 : (_category$emojis = category.emojis) === null || _category$emojis === void 0 ? void 0 : _category$emojis.forEach(emoji => {
195
+ if (emoji && emoji.key) {
196
+ emojiMap.set(emoji.key, emoji);
197
+ }
198
+ });
199
+ });
200
+ return emojiMap;
201
+ };
202
+ const findEmojiUrl = targetKey => _ref => {
203
+ let {
204
+ key
205
+ } = _ref;
206
+ return key === targetKey;
207
+ };
208
+ const getEmojiUrl = (emojiContainer, emojiKey) => {
209
+ var _emojiContainer$emoji3, _emojiContainer$emoji4;
210
+ const isFindingKey = findEmojiUrl(emojiKey !== null && emojiKey !== void 0 ? emojiKey : '');
211
+ return (emojiContainer === null || emojiContainer === void 0 ? void 0 : (_emojiContainer$emoji3 = emojiContainer.emojiCategories.find(category => category.emojis.some(isFindingKey))) === null || _emojiContainer$emoji3 === void 0 ? void 0 : (_emojiContainer$emoji4 = _emojiContainer$emoji3.emojis.find(isFindingKey)) === null || _emojiContainer$emoji4 === void 0 ? void 0 : _emojiContainer$emoji4.url) || '';
212
+ };
213
+ const getUserName = user => (user === null || user === void 0 ? void 0 : user.friendName) || (user === null || user === void 0 ? void 0 : user.nickname) || (user === null || user === void 0 ? void 0 : user.userId);
214
+ const getSenderName = message => (message === null || message === void 0 ? void 0 : message.sender) && getUserName(message === null || message === void 0 ? void 0 : message.sender);
215
+ const hasSameMembers = (a, b) => {
216
+ if (a === b) {
217
+ return true;
218
+ }
219
+ if (a == null || b == null) {
220
+ return false;
221
+ }
222
+ if (a.length !== b.length) {
223
+ return false;
224
+ }
225
+ const sortedA = [...a].sort();
226
+ const sortedB = [...b].sort();
227
+ for (let i = 0; i < sortedA.length; ++i) {
228
+ if (sortedA[i] !== sortedB[i]) {
229
+ return false;
230
+ }
231
+ }
232
+ return true;
233
+ };
234
+ const isFriend = user => !!(user.friendDiscoveryKey || user.friendName);
235
+ const filterMessageListParams = (params, message) => {
236
+ var _params$customTypesFi, _params$senderUserIds;
237
+ // @ts-ignore
238
+ if (params !== null && params !== void 0 && params.messageTypeFilter && params.messageTypeFilter !== message.messageType) {
239
+ return false;
240
+ }
241
+ if ((params === null || params === void 0 ? void 0 : (_params$customTypesFi = params.customTypesFilter) === null || _params$customTypesFi === void 0 ? void 0 : _params$customTypesFi.length) > 0) {
242
+ const customTypes = params.customTypesFilter.filter(item => item !== '*');
243
+ // Because Chat SDK inserts '*' when customTypes is empty
244
+ if (customTypes.length > 0 && !customTypes.includes(message.customType)) {
245
+ return false;
246
+ }
247
+ }
248
+ if (params !== null && params !== void 0 && params.senderUserIdsFilter && (params === null || params === void 0 ? void 0 : (_params$senderUserIds = params.senderUserIdsFilter) === null || _params$senderUserIds === void 0 ? void 0 : _params$senderUserIds.length) > 0) {
249
+ var _message$isUserMessag2, _message$isFileMessag2;
250
+ if (message !== null && message !== void 0 && (_message$isUserMessag2 = message.isUserMessage) !== null && _message$isUserMessag2 !== void 0 && _message$isUserMessag2.call(message) || message !== null && message !== void 0 && (_message$isFileMessag2 = message.isFileMessage) !== null && _message$isFileMessag2 !== void 0 && _message$isFileMessag2.call(message)) {
251
+ var _params$senderUserIds2;
252
+ const messageSender = message.sender || message['_sender'];
253
+ if (!(params !== null && params !== void 0 && (_params$senderUserIds2 = params.senderUserIdsFilter) !== null && _params$senderUserIds2 !== void 0 && _params$senderUserIds2.includes(messageSender === null || messageSender === void 0 ? void 0 : messageSender.userId))) {
254
+ return false;
255
+ }
256
+ } else {
257
+ return false;
258
+ }
259
+ }
260
+ if (!(params !== null && params !== void 0 && params.includeParentMessageInfo) && (message !== null && message !== void 0 && message.parentMessageId || message !== null && message !== void 0 && message.parentMessage)) {
261
+ return false;
262
+ }
263
+ return true;
264
+ };
265
+ const filterChannelListParams = (params, channel, currentUserId) => {
266
+ var _searchFilter$fields$, _searchFilter$fields, _userIdsFilter$userId, _params$customTypesFi2, _channel$name2, _params$channelUrlsFi;
267
+ if (!(params !== null && params !== void 0 && params.includeEmpty) && (channel === null || channel === void 0 ? void 0 : channel.lastMessage) === null) {
268
+ return false;
269
+ }
270
+ const searchFilter = params === null || params === void 0 ? void 0 : params.searchFilter;
271
+ if (searchFilter !== null && searchFilter !== void 0 && searchFilter.query && ((_searchFilter$fields$ = searchFilter === null || searchFilter === void 0 ? void 0 : (_searchFilter$fields = searchFilter.fields) === null || _searchFilter$fields === void 0 ? void 0 : _searchFilter$fields.length) !== null && _searchFilter$fields$ !== void 0 ? _searchFilter$fields$ : 0) > 0) {
272
+ const searchQuery = searchFilter.query;
273
+ const searchFields = searchFilter.fields;
274
+ if (searchQuery && searchFields && searchFields.length > 0) {
275
+ if (!searchFields.some(searchField => {
276
+ switch (searchField) {
277
+ case 'channel_name':
278
+ {
279
+ var _channel$name;
280
+ return channel === null || channel === void 0 ? void 0 : (_channel$name = channel.name) === null || _channel$name === void 0 ? void 0 : _channel$name.toLowerCase().includes(searchQuery.toLowerCase());
281
+ }
282
+ case 'member_nickname':
283
+ {
284
+ var _channel$members;
285
+ return channel === null || channel === void 0 ? void 0 : (_channel$members = channel.members) === null || _channel$members === void 0 ? void 0 : _channel$members.some(member => member.nickname.toLowerCase().includes(searchQuery.toLowerCase()));
286
+ }
287
+ default:
288
+ {
289
+ return true;
290
+ }
291
+ }
292
+ })) {
293
+ return false;
294
+ }
295
+ }
296
+ }
297
+ const userIdsFilter = params === null || params === void 0 ? void 0 : params.userIdsFilter;
298
+ if ((userIdsFilter === null || userIdsFilter === void 0 ? void 0 : (_userIdsFilter$userId = userIdsFilter.userIds) === null || _userIdsFilter$userId === void 0 ? void 0 : _userIdsFilter$userId.length) > 0) {
299
+ var _channel$members2;
300
+ const {
301
+ includeMode,
302
+ queryType
303
+ } = userIdsFilter;
304
+ const userIds = userIdsFilter.userIds;
305
+ const memberIds = channel === null || channel === void 0 ? void 0 : (_channel$members2 = channel.members) === null || _channel$members2 === void 0 ? void 0 : _channel$members2.map(member => member.userId);
306
+ if (!includeMode) {
307
+ var _channel$members3;
308
+ // exact match
309
+ if (!userIds.includes(currentUserId)) {
310
+ userIds.push(currentUserId); // add the caller's userId if not added already.
311
+ }
312
+
313
+ if ((channel === null || channel === void 0 ? void 0 : (_channel$members3 = channel.members) === null || _channel$members3 === void 0 ? void 0 : _channel$members3.length) > userIds.length) {
314
+ return false; // userIds may contain one or more non-member(s).
315
+ }
316
+
317
+ if (!hasSameMembers(userIds, memberIds)) {
318
+ return false;
319
+ }
320
+ } else if (userIds.length > 0) {
321
+ // inclusive
322
+ switch (queryType) {
323
+ case 'AND':
324
+ {
325
+ if (userIds.some(userId => !memberIds.includes(userId))) {
326
+ return false;
327
+ }
328
+ break;
329
+ }
330
+ case 'OR':
331
+ {
332
+ if (userIds.every(userId => !memberIds.includes(userId))) {
333
+ return false;
334
+ }
335
+ break;
336
+ }
337
+ }
338
+ }
339
+ }
340
+ if ((params === null || params === void 0 ? void 0 : params.includeEmpty) === false && (channel === null || channel === void 0 ? void 0 : channel.lastMessage) === null) {
341
+ return false;
342
+ }
343
+ if ((params === null || params === void 0 ? void 0 : params.includeFrozen) === false && (channel === null || channel === void 0 ? void 0 : channel.isFrozen) === true) {
344
+ return false;
345
+ }
346
+ if ((params === null || params === void 0 ? void 0 : (_params$customTypesFi2 = params.customTypesFilter) === null || _params$customTypesFi2 === void 0 ? void 0 : _params$customTypesFi2.length) > 0 && !params.customTypesFilter.includes(channel === null || channel === void 0 ? void 0 : channel.customType)) {
347
+ return false;
348
+ }
349
+ if (params !== null && params !== void 0 && params.customTypeStartsWithFilter && !new RegExp(`^${params.customTypeStartsWithFilter}`).test(channel === null || channel === void 0 ? void 0 : channel.customType)) {
350
+ return false;
351
+ }
352
+ if (params !== null && params !== void 0 && params.channelNameContainsFilter && !(channel !== null && channel !== void 0 && (_channel$name2 = channel.name) !== null && _channel$name2 !== void 0 && _channel$name2.toLowerCase().includes(params.channelNameContainsFilter.toLowerCase()))) {
353
+ return false;
354
+ }
355
+ if (params !== null && params !== void 0 && params.nicknameContainsFilter) {
356
+ var _channel$members4;
357
+ const lowerCasedSubString = params.nicknameContainsFilter.toLowerCase();
358
+ if (channel !== null && channel !== void 0 && (_channel$members4 = channel.members) !== null && _channel$members4 !== void 0 && _channel$members4.every(member => !member.nickname.toLowerCase().includes(lowerCasedSubString))) {
359
+ return false;
360
+ }
361
+ }
362
+ if ((params === null || params === void 0 ? void 0 : (_params$channelUrlsFi = params.channelUrlsFilter) === null || _params$channelUrlsFi === void 0 ? void 0 : _params$channelUrlsFi.length) > 0 && !params.channelUrlsFilter.includes(channel === null || channel === void 0 ? void 0 : channel.url)) {
363
+ return false;
364
+ }
365
+ if (params !== null && params !== void 0 && params.myMemberStateFilter) {
366
+ switch (params.myMemberStateFilter) {
367
+ case 'joined_only':
368
+ if ((channel === null || channel === void 0 ? void 0 : channel.myMemberState) !== 'joined') {
369
+ return false;
370
+ }
371
+ break;
372
+ case 'invited_only':
373
+ if ((channel === null || channel === void 0 ? void 0 : channel.myMemberState) !== 'invited') {
374
+ return false;
375
+ }
376
+ break;
377
+ case 'invited_by_friend':
378
+ if ((channel === null || channel === void 0 ? void 0 : channel.myMemberState) !== 'invited' || !isFriend(channel === null || channel === void 0 ? void 0 : channel.inviter)) {
379
+ return false;
380
+ }
381
+ break;
382
+ case 'invited_by_non_friend':
383
+ if ((channel === null || channel === void 0 ? void 0 : channel.myMemberState) !== 'invited' || isFriend(channel === null || channel === void 0 ? void 0 : channel.inviter)) {
384
+ return false;
385
+ }
386
+ break;
387
+ }
388
+ }
389
+ if (params !== null && params !== void 0 && params.hiddenChannelFilter) {
390
+ switch (params.hiddenChannelFilter) {
391
+ case 'unhidden_only':
392
+ if (channel !== null && channel !== void 0 && channel.isHidden || (channel === null || channel === void 0 ? void 0 : channel.hiddenState) !== 'unhidden') {
393
+ return false;
394
+ }
395
+ break;
396
+ case 'hidden_only':
397
+ if (!(channel !== null && channel !== void 0 && channel.isHidden)) {
398
+ return false;
399
+ }
400
+ break;
401
+ case 'hidden_allow_auto_unhide':
402
+ if (!(channel !== null && channel !== void 0 && channel.isHidden) || (channel === null || channel === void 0 ? void 0 : channel.hiddenState) !== 'hidden_allow_auto_unhide') {
403
+ return false;
404
+ }
405
+ break;
406
+ case 'hidden_prevent_auto_unhide':
407
+ if (!(channel !== null && channel !== void 0 && channel.isHidden) || (channel === null || channel === void 0 ? void 0 : channel.hiddenState) !== 'hidden_prevent_auto_unhide') {
408
+ return false;
409
+ }
410
+ break;
411
+ }
412
+ }
413
+ if (params !== null && params !== void 0 && params.unreadChannelFilter) {
414
+ switch (params.unreadChannelFilter) {
415
+ case 'unread_message':
416
+ if ((channel === null || channel === void 0 ? void 0 : channel.unreadMessageCount) === 0) {
417
+ return false;
418
+ }
419
+ break;
420
+ }
421
+ }
422
+ if (params !== null && params !== void 0 && params.publicChannelFilter) {
423
+ switch (params.publicChannelFilter) {
424
+ case 'public':
425
+ if (!(channel !== null && channel !== void 0 && channel.isPublic)) {
426
+ return false;
427
+ }
428
+ break;
429
+ case 'private':
430
+ if (channel !== null && channel !== void 0 && channel.isPublic) {
431
+ return false;
432
+ }
433
+ break;
434
+ }
435
+ }
436
+ if (params !== null && params !== void 0 && params.superChannelFilter) {
437
+ switch (params.superChannelFilter) {
438
+ case 'super':
439
+ if (!(channel !== null && channel !== void 0 && channel.isSuper)) {
440
+ return false;
441
+ }
442
+ break;
443
+ case 'nonsuper':
444
+ if (channel !== null && channel !== void 0 && channel.isSuper) {
445
+ return false;
446
+ }
447
+ break;
448
+ }
449
+ }
450
+ return true;
451
+ };
452
+ const binarySearch = (list, number) => {
453
+ // [100, 99, 98, 97, ...]
454
+ const pivot = Math.floor(list.length / 2);
455
+ if (list[pivot] === number) {
456
+ return pivot;
457
+ }
458
+ const leftList = list.slice(0, pivot);
459
+ const rightList = list.slice(pivot + 1, list.length);
460
+ if (list[pivot] > number) {
461
+ return pivot + 1 + (rightList.length === 0 ? 0 : binarySearch(rightList, number));
462
+ } else {
463
+ return leftList.length === 0 ? pivot : binarySearch(leftList, number);
464
+ }
465
+ };
466
+ // This is required when channel is displayed on channel list by filter
467
+ const getChannelsWithUpsertedChannel = (channels, channel) => {
468
+ var _channel$lastMessage2;
469
+ if (channels.some(ch => ch.url === (channel === null || channel === void 0 ? void 0 : channel.url))) {
470
+ return channels.map(ch => ch.url === (channel === null || channel === void 0 ? void 0 : channel.url) ? channel : ch);
471
+ }
472
+ const targetIndex = binarySearch(channels.map(channel => {
473
+ var _channel$lastMessage;
474
+ return (channel === null || channel === void 0 ? void 0 : (_channel$lastMessage = channel.lastMessage) === null || _channel$lastMessage === void 0 ? void 0 : _channel$lastMessage.createdAt) || (channel === null || channel === void 0 ? void 0 : channel.createdAt);
475
+ }), (channel === null || channel === void 0 ? void 0 : (_channel$lastMessage2 = channel.lastMessage) === null || _channel$lastMessage2 === void 0 ? void 0 : _channel$lastMessage2.createdAt) || (channel === null || channel === void 0 ? void 0 : channel.createdAt));
476
+ return [...channels.slice(0, targetIndex), channel, ...channels.slice(targetIndex, channels.length)];
477
+ };
478
+ let StringObjType = /*#__PURE__*/function (StringObjType) {
479
+ StringObjType["normal"] = "normal";
480
+ StringObjType["mention"] = "mention";
481
+ StringObjType["url"] = "url";
482
+ return StringObjType;
483
+ }({});
484
+ /**
485
+ * @deprecated
486
+ * use modules/message/utils/tokenize instead
487
+ */
488
+ const convertWordToStringObj = (word, _users, _template) => {
489
+ const users = _users || [];
490
+ const template = _template || '@'; // Use global variable
491
+ const resultArray = [];
492
+ const regex = RegExp(`${template}{(${users.map(user => user === null || user === void 0 ? void 0 : user.userId).join('|')})}`, 'g');
493
+ let excutionResult;
494
+ let lastIndex = 0;
495
+ while ((excutionResult = regex.exec(word)) !== null) {
496
+ const [template, userId] = excutionResult;
497
+ const endIndex = regex.lastIndex;
498
+ const startIndex = endIndex - template.length;
499
+ // Normal text
500
+ const normalText = word.slice(lastIndex, startIndex);
501
+ resultArray.push({
502
+ type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,
503
+ value: normalText
504
+ });
505
+ // Mention template
506
+ const mentionedUser = users.find(user => (user === null || user === void 0 ? void 0 : user.userId) === userId);
507
+ if (!mentionedUser) {
508
+ resultArray.push({
509
+ type: StringObjType.normal,
510
+ value: template // because template is the origin text
511
+ });
512
+ } else {
513
+ resultArray.push({
514
+ type: StringObjType.mention,
515
+ value: (mentionedUser === null || mentionedUser === void 0 ? void 0 : mentionedUser.nickname) || '(No name)',
516
+ userId: userId
517
+ });
518
+ }
519
+ lastIndex = endIndex;
520
+ }
521
+ if (lastIndex < word.length) {
522
+ // Normal text
523
+ const normalText = word.slice(lastIndex);
524
+ resultArray.push({
525
+ type: isUrl(normalText) ? StringObjType.url : StringObjType.normal,
526
+ value: normalText
527
+ });
528
+ }
529
+ return resultArray;
530
+ };
531
+ const arrayEqual = (array1, array2) => {
532
+ if (Array.isArray(array1) && Array.isArray(array2) && array1.length === array2.length) {
533
+ for (let i = 0; i < array1.length; i++) {
534
+ if (array1[i] !== array2[i]) {
535
+ return false;
536
+ }
537
+ }
538
+ return true;
539
+ }
540
+ return false;
541
+ };
542
+
543
+ export { isUrl as A, isEditedMessage as B, isSentMessage as C, isFailedMessage as D, isPendingMessage as E, copyToClipboard as F, getEmojiListAll as G, getEmojiUrl as H, isReactedBy as I, getEmojiTooltipString as J, getEmojiMapAll as K, getUIKitFileType as L, getUIKitFileTypes as M, isGif as N, isThreadMessage as O, isParentMessage as P, convertWordToStringObj as Q, StringObjType as S, UIKitMessageTypes as U, getSendingMessageStatus as a, isReadMessage as b, filterMessageListParams as c, isVoiceMessage as d, isSentStatus as e, filterChannelListParams as f, getChannelsWithUpsertedChannel as g, getClassName as h, isTextuallyNull as i, arrayEqual as j, isFileMessage as k, isImageMessage as l, isThumbnailMessage as m, isAudioMessage as n, isGifMessage as o, isVideoMessage as p, isUserMessage as q, getUIKitMessageType as r, getUIKitMessageTypes as s, truncateString as t, getSenderName as u, isTextMessage as v, isOGMessage as w, isSupportedFileView as x, isVideo as y, isImage as z };
544
+ //# sourceMappingURL=index-e2601165.js.map