@sendbird/uikit-react 3.4.5 → 3.4.6-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (793) hide show
  1. package/.yarn/install-state.gz +0 -0
  2. package/App.js +102 -127
  3. package/App.js.map +1 -1
  4. package/Channel/components/ChannelHeader.js +25 -26
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +52 -58
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +36 -37
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +5 -5
  11. package/Channel/components/FrozenNotification.js.map +1 -1
  12. package/Channel/components/Message.js +96 -127
  13. package/Channel/components/Message.js.map +1 -1
  14. package/Channel/components/MessageInput.js +67 -86
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageList.js +90 -117
  17. package/Channel/components/MessageList.js.map +1 -1
  18. package/Channel/components/RemoveMessageModal.js +20 -21
  19. package/Channel/components/RemoveMessageModal.js.map +1 -1
  20. package/Channel/components/SuggestedMentionList.js +53 -77
  21. package/Channel/components/SuggestedMentionList.js.map +1 -1
  22. package/Channel/components/TypingIndicator.js +19 -33
  23. package/Channel/components/TypingIndicator.js.map +1 -1
  24. package/Channel/components/UnreadCount.js +9 -10
  25. package/Channel/components/UnreadCount.js.map +1 -1
  26. package/Channel/context.js +14 -14
  27. package/Channel.js +37 -37
  28. package/Channel.js.map +1 -1
  29. package/ChannelList/components/AddChannel.js +19 -23
  30. package/ChannelList/components/AddChannel.js.map +1 -1
  31. package/ChannelList/components/ChannelListHeader.js +14 -18
  32. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  33. package/ChannelList/components/ChannelListUI.js +50 -64
  34. package/ChannelList/components/ChannelListUI.js.map +1 -1
  35. package/ChannelList/components/ChannelPreview.js +42 -48
  36. package/ChannelList/components/ChannelPreview.js.map +1 -1
  37. package/ChannelList/components/ChannelPreviewAction.js +19 -22
  38. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  39. package/ChannelList/context.js +8 -8
  40. package/ChannelList.js +30 -30
  41. package/ChannelList.js.map +1 -1
  42. package/{ChannelListProvider-10fe7340.js → ChannelListProvider-b7ce527e.js} +77 -172
  43. package/ChannelListProvider-b7ce527e.js.map +1 -0
  44. package/{ChannelProvider-4ac82784.js → ChannelProvider-cd9afff3.js} +184 -339
  45. package/{ChannelProvider-4ac82784.js.map → ChannelProvider-cd9afff3.js.map} +1 -1
  46. package/ChannelSettings/components/ChannelProfile.js +13 -21
  47. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  48. package/ChannelSettings/components/ChannelSettingsUI.js +24 -31
  49. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  50. package/ChannelSettings/components/EditDetailsModal.js +20 -29
  51. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  52. package/ChannelSettings/components/LeaveChannel.js +18 -26
  53. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  54. package/ChannelSettings/components/ModerationPanel.js +66 -109
  55. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  56. package/ChannelSettings/components/UserListItem.js +21 -21
  57. package/ChannelSettings/components/UserListItem.js.map +1 -1
  58. package/ChannelSettings/components/UserPanel.js +15 -18
  59. package/ChannelSettings/components/UserPanel.js.map +1 -1
  60. package/ChannelSettings/context.js +22 -30
  61. package/ChannelSettings/context.js.map +1 -1
  62. package/ChannelSettings.js +17 -17
  63. package/ChannelSettings.js.map +1 -1
  64. package/CreateChannel/components/CreateChannelUI.js +17 -19
  65. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  66. package/CreateChannel/components/InviteUsers.js +32 -55
  67. package/CreateChannel/components/InviteUsers.js.map +1 -1
  68. package/CreateChannel/components/SelectChannelType.js +11 -17
  69. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  70. package/CreateChannel/context.js +4 -4
  71. package/CreateChannel.js +18 -18
  72. package/CreateChannel.js.map +1 -1
  73. package/{CreateChannelProvider-11045f46.js → CreateChannelProvider-d7e8a10f.js} +9 -16
  74. package/{CreateChannelProvider-11045f46.js.map → CreateChannelProvider-d7e8a10f.js.map} +1 -1
  75. package/CreateOpenChannel/components/CreateOpenChannelUI.js +17 -25
  76. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  77. package/CreateOpenChannel/context.js +7 -12
  78. package/CreateOpenChannel/context.js.map +1 -1
  79. package/CreateOpenChannel.js +14 -14
  80. package/CreateOpenChannel.js.map +1 -1
  81. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  82. package/EditUserProfile/context.js +0 -2
  83. package/EditUserProfile/context.js.map +1 -1
  84. package/EditUserProfile.js +14 -14
  85. package/EditUserProfile.js.map +1 -1
  86. package/{LocalizationContext-654ae04f.js → LocalizationContext-43b10f97.js} +3 -5
  87. package/{LocalizationContext-654ae04f.js.map → LocalizationContext-43b10f97.js.map} +1 -1
  88. package/{MediaQueryContext-e791a4d1.js → MediaQueryContext-f2df2472.js} +8 -18
  89. package/MediaQueryContext-f2df2472.js.map +1 -0
  90. package/{MemberList-6f3c8288.js → MemberList-70806978.js} +35 -68
  91. package/{MemberList-6f3c8288.js.map → MemberList-70806978.js.map} +1 -1
  92. package/Message/context.js +3 -7
  93. package/Message/context.js.map +1 -1
  94. package/MessageSearch/components/MessageSearchUI.js +33 -47
  95. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  96. package/MessageSearch/context.js +44 -79
  97. package/MessageSearch/context.js.map +1 -1
  98. package/MessageSearch.js +25 -35
  99. package/MessageSearch.js.map +1 -1
  100. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  101. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  102. package/OpenChannel/components/OpenChannelHeader.js +16 -18
  103. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  104. package/OpenChannel/components/OpenChannelInput.js +25 -28
  105. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  106. package/OpenChannel/components/OpenChannelMessage.js +45 -70
  107. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  108. package/OpenChannel/components/OpenChannelMessageList.js +49 -61
  109. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  110. package/OpenChannel/components/OpenChannelUI.js +41 -47
  111. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  112. package/OpenChannel/context.js +8 -8
  113. package/OpenChannel.js +30 -30
  114. package/OpenChannel.js.map +1 -1
  115. package/OpenChannelList/components/OpenChannelListUI.js +31 -45
  116. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  117. package/OpenChannelList/components/OpenChannelPreview.js +7 -7
  118. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  119. package/OpenChannelList/context.js +3 -3
  120. package/OpenChannelList.js +24 -23
  121. package/OpenChannelList.js.map +1 -1
  122. package/{OpenChannelListProvider-eb189b41.js → OpenChannelListProvider-22244a14.js} +36 -65
  123. package/{OpenChannelListProvider-eb189b41.js.map → OpenChannelListProvider-22244a14.js.map} +1 -1
  124. package/{OpenChannelProvider-e418b369.js → OpenChannelProvider-36270182.js} +136 -292
  125. package/{OpenChannelProvider-e418b369.js.map → OpenChannelProvider-36270182.js.map} +1 -1
  126. package/OpenChannelSettings/components/EditDetailsModal.js +23 -31
  127. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  128. package/OpenChannelSettings/components/OpenChannelProfile.js +14 -18
  129. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  130. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -27
  131. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  132. package/OpenChannelSettings/components/OperatorUI.js +58 -110
  133. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  134. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  135. package/OpenChannelSettings/context.js +15 -26
  136. package/OpenChannelSettings/context.js.map +1 -1
  137. package/OpenChannelSettings.js +17 -17
  138. package/OpenChannelSettings.js.map +1 -1
  139. package/README.md +25 -5
  140. package/{RemoveMessageModal-938b400d.js → RemoveMessageModal-d0a5c64c.js} +5 -6
  141. package/{RemoveMessageModal-938b400d.js.map → RemoveMessageModal-d0a5c64c.js.map} +1 -1
  142. package/SendbirdProvider.js +129 -186
  143. package/SendbirdProvider.js.map +1 -1
  144. package/Thread/components/ParentMessageInfo.js +80 -108
  145. package/Thread/components/ParentMessageInfo.js.map +1 -1
  146. package/Thread/components/ParentMessageInfoItem.js +33 -40
  147. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  148. package/Thread/components/ThreadHeader.js +10 -11
  149. package/Thread/components/ThreadHeader.js.map +1 -1
  150. package/Thread/components/ThreadList.js +43 -52
  151. package/Thread/components/ThreadList.js.map +1 -1
  152. package/Thread/components/ThreadListItem.js +119 -147
  153. package/Thread/components/ThreadListItem.js.map +1 -1
  154. package/Thread/components/ThreadMessageInput.js +65 -82
  155. package/Thread/components/ThreadMessageInput.js.map +1 -1
  156. package/Thread/components/ThreadUI.js +74 -93
  157. package/Thread/components/ThreadUI.js.map +1 -1
  158. package/Thread/context/types.js +0 -5
  159. package/Thread/context/types.js.map +1 -1
  160. package/Thread/context.js +8 -8
  161. package/Thread.js +55 -54
  162. package/Thread.js.map +1 -1
  163. package/{ThreadProvider-faf3df5d.js → ThreadProvider-533e9025.js} +162 -280
  164. package/{ThreadProvider-faf3df5d.js.map → ThreadProvider-533e9025.js.map} +1 -1
  165. package/{UserProfileContext-1996d4d2.js → UserProfileContext-12b6fabf.js} +1 -4
  166. package/{UserProfileContext-1996d4d2.js.map → UserProfileContext-12b6fabf.js.map} +1 -1
  167. package/{VoiceMessageInputWrapper-59373f20.js → VoiceMessageInputWrapper-c74412de.js} +37 -51
  168. package/{VoiceMessageInputWrapper-59373f20.js.map → VoiceMessageInputWrapper-c74412de.js.map} +1 -1
  169. package/VoicePlayer/context.js +3 -3
  170. package/VoicePlayer/useVoicePlayer.js +14 -25
  171. package/VoicePlayer/useVoicePlayer.js.map +1 -1
  172. package/VoiceRecorder/context.js +10 -53
  173. package/VoiceRecorder/context.js.map +1 -1
  174. package/VoiceRecorder/useVoiceRecorder.js +14 -25
  175. package/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  176. package/{_rollupPluginBabelHelpers-e908c50d.js → _rollupPluginBabelHelpers-3756a6a3.js} +16 -10
  177. package/_rollupPluginBabelHelpers-3756a6a3.js.map +1 -0
  178. package/{actionTypes-ee7f96a9.js → actionTypes-f6400d21.js} +1 -1
  179. package/{actionTypes-ee7f96a9.js.map → actionTypes-f6400d21.js.map} +1 -1
  180. package/cjs/App.js +102 -127
  181. package/cjs/App.js.map +1 -1
  182. package/cjs/Channel/components/ChannelHeader.js +25 -26
  183. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  184. package/cjs/Channel/components/ChannelUI.js +52 -58
  185. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  186. package/cjs/Channel/components/FileViewer.js +36 -37
  187. package/cjs/Channel/components/FileViewer.js.map +1 -1
  188. package/cjs/Channel/components/FrozenNotification.js +5 -5
  189. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  190. package/cjs/Channel/components/Message.js +96 -127
  191. package/cjs/Channel/components/Message.js.map +1 -1
  192. package/cjs/Channel/components/MessageInput.js +67 -86
  193. package/cjs/Channel/components/MessageInput.js.map +1 -1
  194. package/cjs/Channel/components/MessageList.js +90 -117
  195. package/cjs/Channel/components/MessageList.js.map +1 -1
  196. package/cjs/Channel/components/RemoveMessageModal.js +20 -21
  197. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  198. package/cjs/Channel/components/SuggestedMentionList.js +53 -77
  199. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  200. package/cjs/Channel/components/TypingIndicator.js +19 -33
  201. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  202. package/cjs/Channel/components/UnreadCount.js +9 -10
  203. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  204. package/cjs/Channel/context.js +14 -14
  205. package/cjs/Channel.js +37 -37
  206. package/cjs/Channel.js.map +1 -1
  207. package/cjs/ChannelList/components/AddChannel.js +19 -23
  208. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  209. package/cjs/ChannelList/components/ChannelListHeader.js +14 -18
  210. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  211. package/cjs/ChannelList/components/ChannelListUI.js +50 -64
  212. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  213. package/cjs/ChannelList/components/ChannelPreview.js +42 -48
  214. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  215. package/cjs/ChannelList/components/ChannelPreviewAction.js +19 -22
  216. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  217. package/cjs/ChannelList/context.js +8 -8
  218. package/cjs/ChannelList.js +30 -30
  219. package/cjs/ChannelList.js.map +1 -1
  220. package/cjs/{ChannelListProvider-d4f91fc4.js → ChannelListProvider-d8f65b18.js} +77 -172
  221. package/cjs/ChannelListProvider-d8f65b18.js.map +1 -0
  222. package/cjs/{ChannelProvider-af0b997c.js → ChannelProvider-473548f7.js} +184 -339
  223. package/cjs/{ChannelProvider-af0b997c.js.map → ChannelProvider-473548f7.js.map} +1 -1
  224. package/cjs/ChannelSettings/components/ChannelProfile.js +13 -21
  225. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  226. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +24 -31
  227. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  228. package/cjs/ChannelSettings/components/EditDetailsModal.js +20 -29
  229. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  230. package/cjs/ChannelSettings/components/LeaveChannel.js +18 -26
  231. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  232. package/cjs/ChannelSettings/components/ModerationPanel.js +66 -109
  233. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  234. package/cjs/ChannelSettings/components/UserListItem.js +21 -21
  235. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  236. package/cjs/ChannelSettings/components/UserPanel.js +15 -18
  237. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  238. package/cjs/ChannelSettings/context.js +22 -30
  239. package/cjs/ChannelSettings/context.js.map +1 -1
  240. package/cjs/ChannelSettings.js +17 -17
  241. package/cjs/ChannelSettings.js.map +1 -1
  242. package/cjs/CreateChannel/components/CreateChannelUI.js +17 -19
  243. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  244. package/cjs/CreateChannel/components/InviteUsers.js +32 -55
  245. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  246. package/cjs/CreateChannel/components/SelectChannelType.js +11 -17
  247. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  248. package/cjs/CreateChannel/context.js +4 -4
  249. package/cjs/CreateChannel.js +18 -18
  250. package/cjs/CreateChannel.js.map +1 -1
  251. package/cjs/{CreateChannelProvider-c4ad28a8.js → CreateChannelProvider-387290bb.js} +9 -16
  252. package/cjs/{CreateChannelProvider-c4ad28a8.js.map → CreateChannelProvider-387290bb.js.map} +1 -1
  253. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +17 -25
  254. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  255. package/cjs/CreateOpenChannel/context.js +7 -12
  256. package/cjs/CreateOpenChannel/context.js.map +1 -1
  257. package/cjs/CreateOpenChannel.js +14 -14
  258. package/cjs/CreateOpenChannel.js.map +1 -1
  259. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  260. package/cjs/EditUserProfile/context.js +0 -2
  261. package/cjs/EditUserProfile/context.js.map +1 -1
  262. package/cjs/EditUserProfile.js +14 -14
  263. package/cjs/EditUserProfile.js.map +1 -1
  264. package/cjs/{LocalizationContext-01fceac0.js → LocalizationContext-e4a874cf.js} +3 -5
  265. package/cjs/{LocalizationContext-01fceac0.js.map → LocalizationContext-e4a874cf.js.map} +1 -1
  266. package/cjs/{MediaQueryContext-4978c777.js → MediaQueryContext-fcd92c17.js} +8 -18
  267. package/cjs/MediaQueryContext-fcd92c17.js.map +1 -0
  268. package/cjs/{MemberList-5c05b62f.js → MemberList-dbd3a4b4.js} +35 -68
  269. package/cjs/{MemberList-5c05b62f.js.map → MemberList-dbd3a4b4.js.map} +1 -1
  270. package/cjs/Message/context.js +3 -7
  271. package/cjs/Message/context.js.map +1 -1
  272. package/cjs/MessageSearch/components/MessageSearchUI.js +33 -47
  273. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  274. package/cjs/MessageSearch/context.js +44 -79
  275. package/cjs/MessageSearch/context.js.map +1 -1
  276. package/cjs/MessageSearch.js +25 -35
  277. package/cjs/MessageSearch.js.map +1 -1
  278. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  279. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  280. package/cjs/OpenChannel/components/OpenChannelHeader.js +16 -18
  281. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  282. package/cjs/OpenChannel/components/OpenChannelInput.js +25 -28
  283. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  284. package/cjs/OpenChannel/components/OpenChannelMessage.js +45 -70
  285. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  286. package/cjs/OpenChannel/components/OpenChannelMessageList.js +49 -61
  287. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  288. package/cjs/OpenChannel/components/OpenChannelUI.js +41 -47
  289. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  290. package/cjs/OpenChannel/context.js +8 -8
  291. package/cjs/OpenChannel.js +30 -30
  292. package/cjs/OpenChannel.js.map +1 -1
  293. package/cjs/OpenChannelList/components/OpenChannelListUI.js +31 -45
  294. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  295. package/cjs/OpenChannelList/components/OpenChannelPreview.js +7 -7
  296. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  297. package/cjs/OpenChannelList/context.js +3 -3
  298. package/cjs/OpenChannelList.js +24 -23
  299. package/cjs/OpenChannelList.js.map +1 -1
  300. package/cjs/{OpenChannelListProvider-3be4b8a5.js → OpenChannelListProvider-89659c0b.js} +36 -65
  301. package/cjs/{OpenChannelListProvider-3be4b8a5.js.map → OpenChannelListProvider-89659c0b.js.map} +1 -1
  302. package/cjs/{OpenChannelProvider-56af9a0e.js → OpenChannelProvider-3d3d606e.js} +136 -292
  303. package/cjs/{OpenChannelProvider-56af9a0e.js.map → OpenChannelProvider-3d3d606e.js.map} +1 -1
  304. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +23 -31
  305. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  306. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +14 -18
  307. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  308. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +21 -27
  309. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  310. package/cjs/OpenChannelSettings/components/OperatorUI.js +58 -110
  311. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  312. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  313. package/cjs/OpenChannelSettings/context.js +15 -26
  314. package/cjs/OpenChannelSettings/context.js.map +1 -1
  315. package/cjs/OpenChannelSettings.js +17 -17
  316. package/cjs/OpenChannelSettings.js.map +1 -1
  317. package/cjs/{RemoveMessageModal-31ff9edc.js → RemoveMessageModal-21a7c6ac.js} +5 -6
  318. package/cjs/{RemoveMessageModal-31ff9edc.js.map → RemoveMessageModal-21a7c6ac.js.map} +1 -1
  319. package/cjs/SendbirdProvider.js +129 -186
  320. package/cjs/SendbirdProvider.js.map +1 -1
  321. package/cjs/Thread/components/ParentMessageInfo.js +80 -108
  322. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  323. package/cjs/Thread/components/ParentMessageInfoItem.js +33 -40
  324. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  325. package/cjs/Thread/components/ThreadHeader.js +10 -11
  326. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  327. package/cjs/Thread/components/ThreadList.js +43 -52
  328. package/cjs/Thread/components/ThreadList.js.map +1 -1
  329. package/cjs/Thread/components/ThreadListItem.js +119 -147
  330. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  331. package/cjs/Thread/components/ThreadMessageInput.js +65 -82
  332. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  333. package/cjs/Thread/components/ThreadUI.js +74 -93
  334. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  335. package/cjs/Thread/context/types.js +0 -5
  336. package/cjs/Thread/context/types.js.map +1 -1
  337. package/cjs/Thread/context.js +8 -8
  338. package/cjs/Thread.js +55 -54
  339. package/cjs/Thread.js.map +1 -1
  340. package/cjs/{ThreadProvider-12784adf.js → ThreadProvider-572d67c0.js} +162 -280
  341. package/cjs/{ThreadProvider-12784adf.js.map → ThreadProvider-572d67c0.js.map} +1 -1
  342. package/cjs/{UserProfileContext-c4642438.js → UserProfileContext-ce0c283c.js} +1 -4
  343. package/cjs/{UserProfileContext-c4642438.js.map → UserProfileContext-ce0c283c.js.map} +1 -1
  344. package/cjs/{VoiceMessageInputWrapper-3b5db880.js → VoiceMessageInputWrapper-88ad4670.js} +37 -51
  345. package/cjs/{VoiceMessageInputWrapper-3b5db880.js.map → VoiceMessageInputWrapper-88ad4670.js.map} +1 -1
  346. package/cjs/VoicePlayer/context.js +3 -3
  347. package/cjs/VoicePlayer/useVoicePlayer.js +14 -25
  348. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -1
  349. package/cjs/VoiceRecorder/context.js +10 -53
  350. package/cjs/VoiceRecorder/context.js.map +1 -1
  351. package/cjs/VoiceRecorder/useVoiceRecorder.js +14 -25
  352. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -1
  353. package/cjs/{_rollupPluginBabelHelpers-994cd1da.js → _rollupPluginBabelHelpers-6ab4baac.js} +16 -10
  354. package/cjs/_rollupPluginBabelHelpers-6ab4baac.js.map +1 -0
  355. package/cjs/{actionTypes-38d53eaf.js → actionTypes-1b068888.js} +1 -1
  356. package/cjs/{actionTypes-38d53eaf.js.map → actionTypes-1b068888.js.map} +1 -1
  357. package/cjs/{color-8f9fe57f.js → color-168c1d53.js} +1 -10
  358. package/cjs/color-168c1d53.js.map +1 -0
  359. package/cjs/{compareIds-b77b66f3.js → compareIds-441b4983.js} +4 -5
  360. package/cjs/compareIds-441b4983.js.map +1 -0
  361. package/cjs/{const-e03cb4c1.js → const-0273bf9e.js} +1 -2
  362. package/cjs/{const-e03cb4c1.js.map → const-0273bf9e.js.map} +1 -1
  363. package/cjs/{const-35f8be84.js → const-cf4cec6a.js} +1 -1
  364. package/cjs/{const-35f8be84.js.map → const-cf4cec6a.js.map} +1 -1
  365. package/cjs/{consts-b29bd4d5.js → consts-2e23914f.js} +1 -1
  366. package/cjs/{consts-b29bd4d5.js.map → consts-2e23914f.js.map} +1 -1
  367. package/cjs/{consts-956b1221.js → consts-472d9347.js} +1 -1
  368. package/cjs/{consts-956b1221.js.map → consts-472d9347.js.map} +1 -1
  369. package/cjs/{consts-69fc20be.js → consts-b8c0be49.js} +8 -11
  370. package/cjs/{consts-69fc20be.js.map → consts-b8c0be49.js.map} +1 -1
  371. package/cjs/{consts-aabb33e0.js → consts-e193b1b8.js} +1 -1
  372. package/cjs/{consts-aabb33e0.js.map → consts-e193b1b8.js.map} +1 -1
  373. package/cjs/{context-d9e248df.js → context-d718fff1.js} +2 -2
  374. package/cjs/{context-d9e248df.js.map → context-d718fff1.js.map} +1 -1
  375. package/cjs/dist/index.css +55 -55
  376. package/cjs/dist/index.css.map +1 -1
  377. package/cjs/{index-26a1e861.js → index-0e43cd69.js} +2 -22
  378. package/cjs/{index-26a1e861.js.map → index-0e43cd69.js.map} +1 -1
  379. package/cjs/{index-603c2a7c.js → index-3a7584a0.js} +4 -7
  380. package/cjs/{index-603c2a7c.js.map → index-3a7584a0.js.map} +1 -1
  381. package/cjs/{index-1e57cbdb.js → index-3d08adec.js} +17 -33
  382. package/cjs/{index-1e57cbdb.js.map → index-3d08adec.js.map} +1 -1
  383. package/cjs/{index-e3f00fd1.js → index-44341b78.js} +3 -6
  384. package/cjs/index-44341b78.js.map +1 -0
  385. package/cjs/{index-1f02e60f.js → index-47105c4f.js} +2 -2
  386. package/cjs/index-47105c4f.js.map +1 -0
  387. package/cjs/{index-aa908fcf.js → index-4894fc55.js} +13 -32
  388. package/cjs/index-4894fc55.js.map +1 -0
  389. package/cjs/{index-72fd0294.js → index-5075f3b2.js} +26 -130
  390. package/cjs/index-5075f3b2.js.map +1 -0
  391. package/cjs/{index-aeba3b06.js → index-630f7132.js} +11 -12
  392. package/cjs/{index-aeba3b06.js.map → index-630f7132.js.map} +1 -1
  393. package/cjs/{index-36aaf992.js → index-813deccc.js} +1 -1
  394. package/cjs/{index-36aaf992.js.map → index-813deccc.js.map} +1 -1
  395. package/cjs/{index-7c5d21c4.js → index-903c0f93.js} +3 -24
  396. package/cjs/index-903c0f93.js.map +1 -0
  397. package/cjs/{index-b9fbe704.js → index-9dd8a18a.js} +18 -26
  398. package/cjs/index-9dd8a18a.js.map +1 -0
  399. package/cjs/{index-d41db9c1.js → index-b2e4a79e.js} +30 -44
  400. package/cjs/{index-d41db9c1.js.map → index-b2e4a79e.js.map} +1 -1
  401. package/cjs/{index-c825cf5b.js → index-ba9683ca.js} +21 -52
  402. package/cjs/{index-c825cf5b.js.map → index-ba9683ca.js.map} +1 -1
  403. package/cjs/{index-a7fa406f.js → index-d3b05e98.js} +23 -27
  404. package/cjs/{index-a7fa406f.js.map → index-d3b05e98.js.map} +1 -1
  405. package/cjs/{index-959a4ab1.js → index-f2d71843.js} +30 -113
  406. package/cjs/index-f2d71843.js.map +1 -0
  407. package/cjs/index.js +48 -48
  408. package/cjs/lame.all.js.map +1 -1
  409. package/cjs/sendbirdSelectors.js +36 -94
  410. package/cjs/sendbirdSelectors.js.map +1 -1
  411. package/cjs/{stringSet-7330b627.js → stringSet-76f7df68.js} +2 -1
  412. package/cjs/stringSet-76f7df68.js.map +1 -0
  413. package/cjs/{tokenize-a5a20ef3.js → tokenize-5071d1a6.js} +15 -22
  414. package/cjs/{tokenize-a5a20ef3.js.map → tokenize-5071d1a6.js.map} +1 -1
  415. package/cjs/{topics-7547922a.js → topics-f70c5e0f.js} +1 -1
  416. package/cjs/{topics-7547922a.js.map → topics-f70c5e0f.js.map} +1 -1
  417. package/cjs/tslib.es6-67bdb021.js +176 -0
  418. package/cjs/tslib.es6-67bdb021.js.map +1 -0
  419. package/cjs/{types-7daeb4a1.js → types-43ef9367.js} +1 -1
  420. package/cjs/{types-7daeb4a1.js.map → types-43ef9367.js.map} +1 -1
  421. package/cjs/ui/Accordion.js +12 -16
  422. package/cjs/ui/Accordion.js.map +1 -1
  423. package/cjs/ui/AccordionGroup.js +6 -8
  424. package/cjs/ui/AccordionGroup.js.map +1 -1
  425. package/cjs/ui/AdminMessage.js +5 -8
  426. package/cjs/ui/AdminMessage.js.map +1 -1
  427. package/cjs/ui/Avatar.js +23 -41
  428. package/cjs/ui/Avatar.js.map +1 -1
  429. package/cjs/ui/Badge.js +9 -9
  430. package/cjs/ui/Badge.js.map +1 -1
  431. package/cjs/ui/BottomSheet.js +5 -7
  432. package/cjs/ui/BottomSheet.js.map +1 -1
  433. package/cjs/ui/Button.js +13 -24
  434. package/cjs/ui/Button.js.map +1 -1
  435. package/cjs/ui/ChannelAvatar.js +9 -9
  436. package/cjs/ui/ChannelAvatar.js.map +1 -1
  437. package/cjs/ui/Checkbox.js +6 -8
  438. package/cjs/ui/Checkbox.js.map +1 -1
  439. package/cjs/ui/ConnectionStatus.js +4 -4
  440. package/cjs/ui/ConnectionStatus.js.map +1 -1
  441. package/cjs/ui/ContextMenu.js +40 -86
  442. package/cjs/ui/ContextMenu.js.map +1 -1
  443. package/cjs/ui/DateSeparator.js +9 -9
  444. package/cjs/ui/DateSeparator.js.map +1 -1
  445. package/cjs/ui/EmojiReactions.js +19 -24
  446. package/cjs/ui/EmojiReactions.js.map +1 -1
  447. package/cjs/ui/FileMessageItemBody.js +15 -16
  448. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  449. package/cjs/ui/FileViewer.js +22 -23
  450. package/cjs/ui/FileViewer.js.map +1 -1
  451. package/cjs/ui/Icon.js +0 -241
  452. package/cjs/ui/Icon.js.map +1 -1
  453. package/cjs/ui/IconButton.js +19 -22
  454. package/cjs/ui/IconButton.js.map +1 -1
  455. package/cjs/ui/ImageRenderer.js +27 -30
  456. package/cjs/ui/ImageRenderer.js.map +1 -1
  457. package/cjs/ui/Input.js +8 -10
  458. package/cjs/ui/Input.js.map +1 -1
  459. package/cjs/ui/Label.js +2 -2
  460. package/cjs/ui/LinkLabel.js +4 -3
  461. package/cjs/ui/LinkLabel.js.map +1 -1
  462. package/cjs/ui/Loader.js +7 -7
  463. package/cjs/ui/Loader.js.map +1 -1
  464. package/cjs/ui/MentionLabel.js +16 -22
  465. package/cjs/ui/MentionLabel.js.map +1 -1
  466. package/cjs/ui/MentionUserLabel.js +7 -7
  467. package/cjs/ui/MentionUserLabel.js.map +1 -1
  468. package/cjs/ui/MessageContent.js +117 -136
  469. package/cjs/ui/MessageContent.js.map +1 -1
  470. package/cjs/ui/MessageInput.js +71 -124
  471. package/cjs/ui/MessageInput.js.map +1 -1
  472. package/cjs/ui/MessageItemMenu.js +25 -31
  473. package/cjs/ui/MessageItemMenu.js.map +1 -1
  474. package/cjs/ui/MessageItemReactionMenu.js +12 -16
  475. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  476. package/cjs/ui/MessageSearchFileItem.js +21 -29
  477. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  478. package/cjs/ui/MessageSearchItem.js +18 -24
  479. package/cjs/ui/MessageSearchItem.js.map +1 -1
  480. package/cjs/ui/MessageStatus.js +10 -10
  481. package/cjs/ui/Modal.js +33 -34
  482. package/cjs/ui/Modal.js.map +1 -1
  483. package/cjs/ui/MutedAvatarOverlay.js +3 -3
  484. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  485. package/cjs/ui/OGMessageItemBody.js +26 -30
  486. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  487. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  488. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  489. package/cjs/ui/OpenChannelAvatar.js +11 -11
  490. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  491. package/cjs/ui/OpenchannelConversationHeader.js +10 -10
  492. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  493. package/cjs/ui/OpenchannelFileMessage.js +31 -44
  494. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  495. package/cjs/ui/OpenchannelOGMessage.js +38 -53
  496. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  497. package/cjs/ui/OpenchannelThumbnailMessage.js +36 -46
  498. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  499. package/cjs/ui/OpenchannelUserMessage.js +39 -49
  500. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  501. package/cjs/ui/PlaceHolder.js +6 -6
  502. package/cjs/ui/PlaybackTime.js +8 -8
  503. package/cjs/ui/PlaybackTime.js.map +1 -1
  504. package/cjs/ui/ProgressBar.js +8 -8
  505. package/cjs/ui/ProgressBar.js.map +1 -1
  506. package/cjs/ui/QuoteMessage.js +16 -20
  507. package/cjs/ui/QuoteMessage.js.map +1 -1
  508. package/cjs/ui/QuoteMessageInput.js +8 -11
  509. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  510. package/cjs/ui/ReactionBadge.js +13 -17
  511. package/cjs/ui/ReactionBadge.js.map +1 -1
  512. package/cjs/ui/ReactionButton.js +8 -8
  513. package/cjs/ui/ReactionButton.js.map +1 -1
  514. package/cjs/ui/SortByRow.js +7 -11
  515. package/cjs/ui/SortByRow.js.map +1 -1
  516. package/cjs/ui/TextButton.js +12 -12
  517. package/cjs/ui/TextButton.js.map +1 -1
  518. package/cjs/ui/TextMessageItemBody.js +22 -24
  519. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  520. package/cjs/ui/ThreadReplies.js +10 -11
  521. package/cjs/ui/ThreadReplies.js.map +1 -1
  522. package/cjs/ui/ThumbnailMessageItemBody.js +15 -18
  523. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  524. package/cjs/ui/Tooltip.js +6 -6
  525. package/cjs/ui/Tooltip.js.map +1 -1
  526. package/cjs/ui/TooltipWrapper.js +6 -8
  527. package/cjs/ui/TooltipWrapper.js.map +1 -1
  528. package/cjs/ui/UnknownMessageItemBody.js +13 -14
  529. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  530. package/cjs/ui/UserListItem.js +27 -26
  531. package/cjs/ui/UserListItem.js.map +1 -1
  532. package/cjs/ui/UserProfile.js +15 -17
  533. package/cjs/ui/UserProfile.js.map +1 -1
  534. package/cjs/ui/VoiceMessageItemBody.js +24 -31
  535. package/cjs/ui/VoiceMessageItemBody.js.map +1 -1
  536. package/cjs/ui/VoiceMessgeInput.js +8 -8
  537. package/cjs/ui/Word.js +18 -29
  538. package/cjs/ui/Word.js.map +1 -1
  539. package/cjs/{useLongPress-3e3b1188.js → useLongPress-3582b310.js} +13 -31
  540. package/cjs/{useLongPress-3e3b1188.js.map → useLongPress-3582b310.js.map} +1 -1
  541. package/cjs/useSendbirdStateContext.js +1 -2
  542. package/cjs/useSendbirdStateContext.js.map +1 -1
  543. package/cjs/utils/message/getOutgoingMessageState.js +0 -7
  544. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  545. package/cjs/utils/message/isVoiceMessage.js +2 -2
  546. package/cjs/{utils-e4cd6a0c.js → utils-1ebf89f9.js} +1 -5
  547. package/cjs/{utils-e4cd6a0c.js.map → utils-1ebf89f9.js.map} +1 -1
  548. package/cjs/{utils-5905fc1a.js → utils-39a3f99e.js} +1 -4
  549. package/cjs/utils-39a3f99e.js.map +1 -0
  550. package/cjs/{utils-de779857.js → utils-39eb2189.js} +2 -7
  551. package/cjs/utils-39eb2189.js.map +1 -0
  552. package/cjs/{utils-5ca88bb6.js → utils-fdfc9b0a.js} +1 -1
  553. package/cjs/{utils-5ca88bb6.js.map → utils-fdfc9b0a.js.map} +1 -1
  554. package/cjs/{uuid-26b61f16.js → uuid-f23c161c.js} +1 -3
  555. package/cjs/{uuid-26b61f16.js.map → uuid-f23c161c.js.map} +1 -1
  556. package/cjs/withSendbird.js +5 -7
  557. package/cjs/withSendbird.js.map +1 -1
  558. package/{color-f6e2214f.js → color-e54d3ed7.js} +1 -10
  559. package/{color-f6e2214f.js.map → color-e54d3ed7.js.map} +1 -1
  560. package/{compareIds-d958887d.js → compareIds-3e30a438.js} +4 -5
  561. package/compareIds-3e30a438.js.map +1 -0
  562. package/{const-c7334190.js → const-48a3200e.js} +1 -1
  563. package/{const-c7334190.js.map → const-48a3200e.js.map} +1 -1
  564. package/{const-735bcf5b.js → const-71bd6867.js} +1 -2
  565. package/{const-735bcf5b.js.map → const-71bd6867.js.map} +1 -1
  566. package/{consts-9422accf.js → consts-30f09302.js} +8 -11
  567. package/{consts-9422accf.js.map → consts-30f09302.js.map} +1 -1
  568. package/{consts-8f50899e.js → consts-4b1e008b.js} +1 -1
  569. package/{consts-8f50899e.js.map → consts-4b1e008b.js.map} +1 -1
  570. package/{consts-12512664.js → consts-665331c7.js} +1 -1
  571. package/{consts-12512664.js.map → consts-665331c7.js.map} +1 -1
  572. package/{consts-ddb92249.js → consts-e4e1a8fc.js} +1 -1
  573. package/{consts-ddb92249.js.map → consts-e4e1a8fc.js.map} +1 -1
  574. package/{context-7465b898.js → context-993ee0c3.js} +2 -2
  575. package/{context-7465b898.js.map → context-993ee0c3.js.map} +1 -1
  576. package/dist/index.css +55 -55
  577. package/dist/index.css.map +1 -1
  578. package/{index-cf141ad7.js → index-0f373e79.js} +3 -24
  579. package/index-0f373e79.js.map +1 -0
  580. package/{index-63e7b57b.js → index-10377bc5.js} +18 -26
  581. package/index-10377bc5.js.map +1 -0
  582. package/{index-9626a87e.js → index-207577d6.js} +21 -52
  583. package/{index-9626a87e.js.map → index-207577d6.js.map} +1 -1
  584. package/{index-6e33b2e0.js → index-2932882f.js} +3 -6
  585. package/index-2932882f.js.map +1 -0
  586. package/{index-12c44496.js → index-5c20d787.js} +1 -1
  587. package/{index-12c44496.js.map → index-5c20d787.js.map} +1 -1
  588. package/{index-437c0f3c.js → index-88523047.js} +30 -44
  589. package/{index-437c0f3c.js.map → index-88523047.js.map} +1 -1
  590. package/{index-aced8439.js → index-8a52a6f4.js} +30 -113
  591. package/index-8a52a6f4.js.map +1 -0
  592. package/{index-8e901b57.js → index-8f0ae983.js} +2 -22
  593. package/{index-8e901b57.js.map → index-8f0ae983.js.map} +1 -1
  594. package/{index-4c3eaeb7.js → index-95f0372d.js} +2 -2
  595. package/index-95f0372d.js.map +1 -0
  596. package/{index-a52a0b76.js → index-a90edcd2.js} +13 -32
  597. package/index-a90edcd2.js.map +1 -0
  598. package/{index-47d179f2.js → index-c77693d8.js} +23 -27
  599. package/{index-47d179f2.js.map → index-c77693d8.js.map} +1 -1
  600. package/{index-ace292c2.js → index-cc626895.js} +4 -7
  601. package/{index-ace292c2.js.map → index-cc626895.js.map} +1 -1
  602. package/{index-83ae3ffe.js → index-cd1a9173.js} +26 -130
  603. package/index-cd1a9173.js.map +1 -0
  604. package/{index-7b8ea67e.js → index-d75ba9c0.js} +17 -33
  605. package/{index-7b8ea67e.js.map → index-d75ba9c0.js.map} +1 -1
  606. package/{index-0ecbda20.js → index-ec8cbdfb.js} +11 -12
  607. package/{index-0ecbda20.js.map → index-ec8cbdfb.js.map} +1 -1
  608. package/index.d.ts +1 -1
  609. package/index.js +48 -48
  610. package/lame.all.js.map +1 -1
  611. package/package.json +1 -1
  612. package/sendbirdSelectors.js +36 -94
  613. package/sendbirdSelectors.js.map +1 -1
  614. package/{stringSet-7c7d84fc.js → stringSet-2d42f6ff.js} +2 -1
  615. package/stringSet-2d42f6ff.js.map +1 -0
  616. package/{tokenize-8f238f49.js → tokenize-cd9c48bb.js} +15 -22
  617. package/{tokenize-8f238f49.js.map → tokenize-cd9c48bb.js.map} +1 -1
  618. package/{topics-4697c2b3.js → topics-6d4bf2ed.js} +1 -1
  619. package/{topics-4697c2b3.js.map → topics-6d4bf2ed.js.map} +1 -1
  620. package/tslib.es6-5180f9d1.js +171 -0
  621. package/tslib.es6-5180f9d1.js.map +1 -0
  622. package/{types-41ea68c8.js → types-2fb5793c.js} +1 -1
  623. package/{types-41ea68c8.js.map → types-2fb5793c.js.map} +1 -1
  624. package/ui/Accordion.js +12 -16
  625. package/ui/Accordion.js.map +1 -1
  626. package/ui/AccordionGroup.js +6 -8
  627. package/ui/AccordionGroup.js.map +1 -1
  628. package/ui/AdminMessage.js +5 -8
  629. package/ui/AdminMessage.js.map +1 -1
  630. package/ui/Avatar.js +23 -41
  631. package/ui/Avatar.js.map +1 -1
  632. package/ui/Badge.js +9 -9
  633. package/ui/Badge.js.map +1 -1
  634. package/ui/BottomSheet.js +5 -7
  635. package/ui/BottomSheet.js.map +1 -1
  636. package/ui/Button.js +13 -24
  637. package/ui/Button.js.map +1 -1
  638. package/ui/ChannelAvatar.js +9 -9
  639. package/ui/ChannelAvatar.js.map +1 -1
  640. package/ui/Checkbox.js +6 -8
  641. package/ui/Checkbox.js.map +1 -1
  642. package/ui/ConnectionStatus.js +4 -4
  643. package/ui/ConnectionStatus.js.map +1 -1
  644. package/ui/ContextMenu.js +40 -86
  645. package/ui/ContextMenu.js.map +1 -1
  646. package/ui/DateSeparator.js +9 -9
  647. package/ui/DateSeparator.js.map +1 -1
  648. package/ui/EmojiReactions.js +19 -24
  649. package/ui/EmojiReactions.js.map +1 -1
  650. package/ui/FileMessageItemBody.js +15 -16
  651. package/ui/FileMessageItemBody.js.map +1 -1
  652. package/ui/FileViewer.js +22 -23
  653. package/ui/FileViewer.js.map +1 -1
  654. package/ui/Icon.js +0 -241
  655. package/ui/Icon.js.map +1 -1
  656. package/ui/IconButton.js +19 -22
  657. package/ui/IconButton.js.map +1 -1
  658. package/ui/ImageRenderer.js +27 -30
  659. package/ui/ImageRenderer.js.map +1 -1
  660. package/ui/Input.js +8 -10
  661. package/ui/Input.js.map +1 -1
  662. package/ui/Label.js +2 -2
  663. package/ui/LinkLabel.js +4 -3
  664. package/ui/LinkLabel.js.map +1 -1
  665. package/ui/Loader.js +7 -7
  666. package/ui/Loader.js.map +1 -1
  667. package/ui/MentionLabel.js +16 -22
  668. package/ui/MentionLabel.js.map +1 -1
  669. package/ui/MentionUserLabel.js +7 -7
  670. package/ui/MentionUserLabel.js.map +1 -1
  671. package/ui/MessageContent.js +117 -136
  672. package/ui/MessageContent.js.map +1 -1
  673. package/ui/MessageInput.js +71 -124
  674. package/ui/MessageInput.js.map +1 -1
  675. package/ui/MessageItemMenu.js +25 -31
  676. package/ui/MessageItemMenu.js.map +1 -1
  677. package/ui/MessageItemReactionMenu.js +12 -16
  678. package/ui/MessageItemReactionMenu.js.map +1 -1
  679. package/ui/MessageSearchFileItem.js +21 -29
  680. package/ui/MessageSearchFileItem.js.map +1 -1
  681. package/ui/MessageSearchItem.js +18 -24
  682. package/ui/MessageSearchItem.js.map +1 -1
  683. package/ui/MessageStatus.js +10 -10
  684. package/ui/Modal.js +33 -34
  685. package/ui/Modal.js.map +1 -1
  686. package/ui/MutedAvatarOverlay.js +3 -3
  687. package/ui/MutedAvatarOverlay.js.map +1 -1
  688. package/ui/OGMessageItemBody.js +26 -30
  689. package/ui/OGMessageItemBody.js.map +1 -1
  690. package/ui/OpenChannelAdminMessage.js +4 -4
  691. package/ui/OpenChannelAdminMessage.js.map +1 -1
  692. package/ui/OpenChannelAvatar.js +11 -11
  693. package/ui/OpenChannelAvatar.js.map +1 -1
  694. package/ui/OpenchannelConversationHeader.js +10 -10
  695. package/ui/OpenchannelConversationHeader.js.map +1 -1
  696. package/ui/OpenchannelFileMessage.js +31 -44
  697. package/ui/OpenchannelFileMessage.js.map +1 -1
  698. package/ui/OpenchannelOGMessage.js +38 -53
  699. package/ui/OpenchannelOGMessage.js.map +1 -1
  700. package/ui/OpenchannelThumbnailMessage.js +36 -46
  701. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  702. package/ui/OpenchannelUserMessage.js +39 -49
  703. package/ui/OpenchannelUserMessage.js.map +1 -1
  704. package/ui/PlaceHolder.js +6 -6
  705. package/ui/PlaybackTime.js +8 -8
  706. package/ui/PlaybackTime.js.map +1 -1
  707. package/ui/ProgressBar.js +8 -8
  708. package/ui/ProgressBar.js.map +1 -1
  709. package/ui/QuoteMessage.js +16 -20
  710. package/ui/QuoteMessage.js.map +1 -1
  711. package/ui/QuoteMessageInput.js +8 -11
  712. package/ui/QuoteMessageInput.js.map +1 -1
  713. package/ui/ReactionBadge.js +13 -17
  714. package/ui/ReactionBadge.js.map +1 -1
  715. package/ui/ReactionButton.js +8 -8
  716. package/ui/ReactionButton.js.map +1 -1
  717. package/ui/SortByRow.js +7 -11
  718. package/ui/SortByRow.js.map +1 -1
  719. package/ui/TextButton.js +12 -12
  720. package/ui/TextButton.js.map +1 -1
  721. package/ui/TextMessageItemBody.js +22 -24
  722. package/ui/TextMessageItemBody.js.map +1 -1
  723. package/ui/ThreadReplies.js +10 -11
  724. package/ui/ThreadReplies.js.map +1 -1
  725. package/ui/ThumbnailMessageItemBody.js +15 -18
  726. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  727. package/ui/Tooltip.js +6 -6
  728. package/ui/Tooltip.js.map +1 -1
  729. package/ui/TooltipWrapper.js +6 -8
  730. package/ui/TooltipWrapper.js.map +1 -1
  731. package/ui/UnknownMessageItemBody.js +13 -14
  732. package/ui/UnknownMessageItemBody.js.map +1 -1
  733. package/ui/UserListItem.js +27 -26
  734. package/ui/UserListItem.js.map +1 -1
  735. package/ui/UserProfile.js +15 -17
  736. package/ui/UserProfile.js.map +1 -1
  737. package/ui/VoiceMessageItemBody.js +24 -31
  738. package/ui/VoiceMessageItemBody.js.map +1 -1
  739. package/ui/VoiceMessgeInput.js +8 -8
  740. package/ui/Word.js +18 -29
  741. package/ui/Word.js.map +1 -1
  742. package/{useLongPress-e2570976.js → useLongPress-c1a00d6e.js} +13 -31
  743. package/{useLongPress-e2570976.js.map → useLongPress-c1a00d6e.js.map} +1 -1
  744. package/useSendbirdStateContext.js +1 -2
  745. package/useSendbirdStateContext.js.map +1 -1
  746. package/utils/message/getOutgoingMessageState.js +0 -7
  747. package/utils/message/getOutgoingMessageState.js.map +1 -1
  748. package/utils/message/isVoiceMessage.js +2 -2
  749. package/{utils-4942106c.js → utils-3c726d0f.js} +2 -7
  750. package/utils-3c726d0f.js.map +1 -0
  751. package/{utils-3d03001e.js → utils-4c1f97d4.js} +1 -5
  752. package/{utils-3d03001e.js.map → utils-4c1f97d4.js.map} +1 -1
  753. package/{utils-12a3467f.js → utils-760413c9.js} +1 -4
  754. package/utils-760413c9.js.map +1 -0
  755. package/{utils-04bd857d.js → utils-a7563986.js} +1 -1
  756. package/{utils-04bd857d.js.map → utils-a7563986.js.map} +1 -1
  757. package/{uuid-31c6ecb2.js → uuid-368c5040.js} +1 -3
  758. package/{uuid-31c6ecb2.js.map → uuid-368c5040.js.map} +1 -1
  759. package/withSendbird.js +5 -7
  760. package/withSendbird.js.map +1 -1
  761. package/ChannelListProvider-10fe7340.js.map +0 -1
  762. package/MediaQueryContext-e791a4d1.js.map +0 -1
  763. package/_rollupPluginBabelHelpers-e908c50d.js.map +0 -1
  764. package/cjs/ChannelListProvider-d4f91fc4.js.map +0 -1
  765. package/cjs/MediaQueryContext-4978c777.js.map +0 -1
  766. package/cjs/_rollupPluginBabelHelpers-994cd1da.js.map +0 -1
  767. package/cjs/color-8f9fe57f.js.map +0 -1
  768. package/cjs/compareIds-b77b66f3.js.map +0 -1
  769. package/cjs/index-1f02e60f.js.map +0 -1
  770. package/cjs/index-72fd0294.js.map +0 -1
  771. package/cjs/index-7c5d21c4.js.map +0 -1
  772. package/cjs/index-959a4ab1.js.map +0 -1
  773. package/cjs/index-aa908fcf.js.map +0 -1
  774. package/cjs/index-b9fbe704.js.map +0 -1
  775. package/cjs/index-e3f00fd1.js.map +0 -1
  776. package/cjs/stringSet-7330b627.js.map +0 -1
  777. package/cjs/tslib.es6-ee1122c5.js +0 -97
  778. package/cjs/tslib.es6-ee1122c5.js.map +0 -1
  779. package/cjs/utils-5905fc1a.js.map +0 -1
  780. package/cjs/utils-de779857.js.map +0 -1
  781. package/compareIds-d958887d.js.map +0 -1
  782. package/index-4c3eaeb7.js.map +0 -1
  783. package/index-63e7b57b.js.map +0 -1
  784. package/index-6e33b2e0.js.map +0 -1
  785. package/index-83ae3ffe.js.map +0 -1
  786. package/index-a52a0b76.js.map +0 -1
  787. package/index-aced8439.js.map +0 -1
  788. package/index-cf141ad7.js.map +0 -1
  789. package/stringSet-7c7d84fc.js.map +0 -1
  790. package/tslib.es6-209c9f08.js +0 -92
  791. package/tslib.es6-209c9f08.js.map +0 -1
  792. package/utils-12a3467f.js.map +0 -1
  793. package/utils-4942106c.js.map +0 -1
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var tslib_es6 = require('./tslib.es6-ee1122c5.js');
5
- var consts = require('./consts-69fc20be.js');
4
+ var tslib_es6 = require('./tslib.es6-67bdb021.js');
5
+ var consts = require('./consts-b8c0be49.js');
6
6
  var useSendbirdStateContext = require('./useSendbirdStateContext.js');
7
7
 
8
8
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -38,9 +38,7 @@ var voicePlayerInitialState = {
38
38
 
39
39
  function voicePlayerReducer(state, action) {
40
40
  var _a, _b, _c, _d;
41
-
42
41
  var _e, _f, _g, _h;
43
-
44
42
  switch (action.type) {
45
43
  case INITIALIZE_AUDIO_UNIT:
46
44
  {
@@ -51,23 +49,21 @@ function voicePlayerReducer(state, action) {
51
49
  audioStorage: tslib_es6.__assign(tslib_es6.__assign({}, state.audioStorage), (_a = {}, _a[groupKey] = audioUnit, _a))
52
50
  });
53
51
  }
54
-
55
52
  case SET_CURRENT_PLAYER:
56
53
  {
57
54
  var _j = action.payload,
58
- audioPlayer = _j.audioPlayer,
59
- groupKey = _j.groupKey;
55
+ audioPlayer = _j.audioPlayer,
56
+ groupKey = _j.groupKey;
60
57
  return tslib_es6.__assign(tslib_es6.__assign({}, state), {
61
58
  currentPlayer: audioPlayer,
62
59
  currentGroupKey: groupKey
63
60
  });
64
61
  }
65
-
66
62
  case ON_VOICE_PLAYER_PLAY:
67
63
  {
68
64
  var _k = action.payload,
69
- groupKey = _k.groupKey,
70
- audioFile = _k.audioFile;
65
+ groupKey = _k.groupKey,
66
+ audioFile = _k.audioFile;
71
67
  var audioUnit = ((_f = state.audioStorage) === null || _f === void 0 ? void 0 : _f[groupKey]) ? state.audioStorage[groupKey] : AudioUnitDefaultValue();
72
68
  audioUnit.audioFile = audioFile;
73
69
  audioUnit.playingStatus = VoicePlayerStatus.PLAYING;
@@ -75,53 +71,45 @@ function voicePlayerReducer(state, action) {
75
71
  audioStorage: tslib_es6.__assign(tslib_es6.__assign({}, state.audioStorage), (_b = {}, _b[groupKey] = audioUnit, _b))
76
72
  });
77
73
  }
78
-
79
74
  case ON_VOICE_PLAYER_PAUSE:
80
75
  {
81
76
  var groupKey = action.payload.groupKey;
82
77
  var audioUnit = ((_g = state.audioStorage) === null || _g === void 0 ? void 0 : _g[groupKey]) ? state.audioStorage[groupKey] : AudioUnitDefaultValue();
83
78
  audioUnit.playingStatus = VoicePlayerStatus.PAUSED;
84
79
  var _l = state.currentPlayer,
85
- currentTime = _l.currentTime,
86
- duration = _l.duration;
87
-
80
+ currentTime = _l.currentTime,
81
+ duration = _l.duration;
88
82
  if (audioUnit.playbackTime === audioUnit.duration) {
89
83
  audioUnit.playbackTime = 0;
90
84
  } else if (currentTime > 0 && duration > 0) {
91
85
  audioUnit.playbackTime = currentTime;
92
86
  audioUnit.duration = duration;
93
87
  }
94
-
95
88
  return tslib_es6.__assign(tslib_es6.__assign({}, state), {
96
89
  audioStorage: tslib_es6.__assign(tslib_es6.__assign({}, state.audioStorage), (_c = {}, _c[groupKey] = audioUnit, _c))
97
90
  });
98
91
  }
99
-
100
92
  case ON_CURRENT_TIME_UPDATE:
101
93
  {
102
94
  var groupKey = action.payload.groupKey;
103
95
  var _m = state.currentPlayer,
104
- currentTime = _m.currentTime,
105
- duration = _m.duration;
96
+ currentTime = _m.currentTime,
97
+ duration = _m.duration;
106
98
  var audioUnit = ((_h = state.audioStorage) === null || _h === void 0 ? void 0 : _h[groupKey]) ? state.audioStorage[groupKey] : AudioUnitDefaultValue();
107
-
108
99
  if (currentTime > 0 && duration > 0) {
109
100
  audioUnit.playbackTime = currentTime;
110
101
  audioUnit.duration = duration;
111
102
  }
112
-
113
103
  return tslib_es6.__assign(tslib_es6.__assign({}, state), {
114
104
  audioStorage: tslib_es6.__assign(tslib_es6.__assign({}, state.audioStorage), (_d = {}, _d[groupKey] = audioUnit, _d))
115
105
  });
116
106
  }
117
-
118
107
  default:
119
108
  return state;
120
109
  }
121
110
  }
122
111
 
123
112
  var noop = function () {};
124
-
125
113
  var VoicePlayerStoreDefaultValue = {
126
114
  currentGroupKey: '',
127
115
  currentPlayer: null,
@@ -135,65 +123,52 @@ var VoicePlayerContext = /*#__PURE__*/React.createContext({
135
123
  });
136
124
  var VoicePlayerProvider = function (_a) {
137
125
  var children = _a.children;
138
-
139
126
  var _b = React.useReducer(voicePlayerReducer, voicePlayerInitialState),
140
- voicePlayerStore = _b[0],
141
- voicePlayerDispatcher = _b[1];
142
-
127
+ voicePlayerStore = _b[0],
128
+ voicePlayerDispatcher = _b[1];
143
129
  var currentGroupKey = voicePlayerStore.currentGroupKey,
144
- currentPlayer = voicePlayerStore.currentPlayer,
145
- audioStorage = voicePlayerStore.audioStorage;
130
+ currentPlayer = voicePlayerStore.currentPlayer,
131
+ audioStorage = voicePlayerStore.audioStorage;
146
132
  var config = useSendbirdStateContext().config;
147
133
  var logger = config.logger;
148
-
149
134
  var stop = function (text) {
150
135
  if (text === void 0) {
151
136
  text = '';
152
137
  }
153
-
154
138
  if (currentGroupKey.includes(text)) {
155
139
  logger.info('VoicePlayer: Pause playing(by text).');
156
140
  pause(currentGroupKey);
157
141
  }
158
142
  };
159
-
160
143
  var pause = function (groupKey) {
161
144
  if (currentGroupKey === groupKey && currentPlayer !== null) {
162
145
  logger.info('VoicePlayer: Pause playing(by group key).');
163
146
  currentPlayer === null || currentPlayer === void 0 ? void 0 : currentPlayer.pause();
164
147
  }
165
148
  };
166
-
167
149
  var play = function (_a) {
168
150
  var groupKey = _a.groupKey,
169
- _b = _a.audioFile,
170
- audioFile = _b === void 0 ? null : _b,
171
- _c = _a.audioFileUrl,
172
- audioFileUrl = _c === void 0 ? '' : _c;
173
-
151
+ _b = _a.audioFile,
152
+ audioFile = _b === void 0 ? null : _b,
153
+ _c = _a.audioFileUrl,
154
+ audioFileUrl = _c === void 0 ? '' : _c;
174
155
  if (groupKey !== currentGroupKey) {
175
156
  pause(currentGroupKey);
176
- } // Clear the previous AudioPlayer element
177
-
178
-
157
+ }
158
+ // Clear the previous AudioPlayer element
179
159
  var voicePlayerRoot = document.getElementById(consts.VOICE_PLAYER_ROOT_ID);
180
160
  var voicePlayerAudioElement = document.getElementById(consts.VOICE_PLAYER_AUDIO_ID);
181
-
182
161
  if (voicePlayerAudioElement) {
183
162
  voicePlayerRoot.removeChild(voicePlayerAudioElement);
184
163
  }
185
-
186
164
  new Promise(function (resolve) {
187
165
  var _a;
188
-
189
166
  if (audioFile) {
190
167
  resolve(audioFile);
191
168
  }
192
-
193
169
  if ((_a = audioStorage === null || audioStorage === void 0 ? void 0 : audioStorage[groupKey]) === null || _a === void 0 ? void 0 : _a.audioFile) {
194
170
  resolve(audioStorage[groupKey].audioFile);
195
171
  }
196
-
197
172
  voicePlayerDispatcher({
198
173
  type: INITIALIZE_AUDIO_UNIT,
199
174
  payload: {
@@ -211,7 +186,6 @@ var VoicePlayerProvider = function (_a) {
211
186
  });
212
187
  }).then(function (audioFile) {
213
188
  var _a;
214
-
215
189
  logger.info('VoicePlayer: Succeeded getting audio file.', audioFile);
216
190
  var currentAudioUnit = audioStorage[groupKey] || AudioUnitDefaultValue();
217
191
  var audioPlayer = new Audio((_a = URL === null || URL === void 0 ? void 0 : URL.createObjectURL) === null || _a === void 0 ? void 0 : _a.call(URL, audioFile));
@@ -219,7 +193,6 @@ var VoicePlayerProvider = function (_a) {
219
193
  audioPlayer.currentTime = currentAudioUnit.playbackTime;
220
194
  audioPlayer.volume = 1;
221
195
  audioPlayer.loop = false;
222
-
223
196
  audioPlayer.onplaying = function () {
224
197
  logger.info('VoicePlayer: OnPlaying event is called from audioPlayer', {
225
198
  groupKey: groupKey,
@@ -233,7 +206,6 @@ var VoicePlayerProvider = function (_a) {
233
206
  }
234
207
  });
235
208
  };
236
-
237
209
  audioPlayer.onpause = function () {
238
210
  logger.info('VoicePlayer: OnPause event is called from audioPlayer', {
239
211
  groupKey: groupKey,
@@ -246,7 +218,6 @@ var VoicePlayerProvider = function (_a) {
246
218
  }
247
219
  });
248
220
  };
249
-
250
221
  audioPlayer.ontimeupdate = function () {
251
222
  voicePlayerDispatcher({
252
223
  type: ON_CURRENT_TIME_UPDATE,
@@ -255,7 +226,6 @@ var VoicePlayerProvider = function (_a) {
255
226
  }
256
227
  });
257
228
  };
258
-
259
229
  audioPlayer === null || audioPlayer === void 0 ? void 0 : audioPlayer.play();
260
230
  var voicePlayerRoot = document.getElementById(consts.VOICE_PLAYER_ROOT_ID);
261
231
  voicePlayerRoot.appendChild(audioPlayer);
@@ -272,7 +242,6 @@ var VoicePlayerProvider = function (_a) {
272
242
  });
273
243
  });
274
244
  };
275
-
276
245
  return /*#__PURE__*/React__default["default"].createElement(VoicePlayerContext.Provider, {
277
246
  value: {
278
247
  play: play,
@@ -295,4 +264,4 @@ exports.AudioUnitDefaultValue = AudioUnitDefaultValue;
295
264
  exports.VoicePlayerProvider = VoicePlayerProvider;
296
265
  exports.VoicePlayerStatus = VoicePlayerStatus;
297
266
  exports.useVoicePlayerContext = useVoicePlayerContext;
298
- //# sourceMappingURL=index-c825cf5b.js.map
267
+ //# sourceMappingURL=index-ba9683ca.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-c825cf5b.js","sources":["../../src/hooks/VoicePlayer/dux/actionTypes.ts","../../src/hooks/VoicePlayer/dux/initialState.ts","../../src/hooks/VoicePlayer/dux/reducer.ts","../../src/hooks/VoicePlayer/index.tsx"],"sourcesContent":["import { ObjectValues } from \"../../../utils/typeHelpers/objectValues\";\n\nexport const actionTypes = {\n INITIALIZE_AUDIO_UNIT: 'INITIALIZE_AUDIO_UNIT',\n SET_CURRENT_PLAYER: 'SET_CURRENT_PLAYER',\n ON_VOICE_PLAYER_PLAY: 'ON_VOICE_PLAYER_PLAY',\n ON_VOICE_PLAYER_PAUSE: 'ON_VOICE_PLAYER_PAUSE',\n ON_CURRENT_TIME_UPDATE: 'ON_CURRENT_TIME_UPDATE',\n} as const;\n\nexport type VoicePlayerActionType = ObjectValues<typeof actionTypes>;\n\nexport const INITIALIZE_AUDIO_UNIT: VoicePlayerActionType = 'INITIALIZE_AUDIO_UNIT';\nexport const SET_CURRENT_PLAYER: VoicePlayerActionType = 'SET_CURRENT_PLAYER';\nexport const ON_VOICE_PLAYER_PLAY: VoicePlayerActionType = 'ON_VOICE_PLAYER_PLAY';\nexport const ON_VOICE_PLAYER_PAUSE: VoicePlayerActionType = 'ON_VOICE_PLAYER_PAUSE';\nexport const ON_CURRENT_TIME_UPDATE: VoicePlayerActionType = 'ON_CURRENT_TIME_UPDATE';\n","import { GroupKey } from '../utils';\n\nexport const VoicePlayerStatus = {\n IDLE: 'IDLE',\n PREPARING: 'PREPARING',\n PLAYING: 'PLAYING',\n PAUSED: 'PAUSED',\n COMPLETED: 'COMPLETED',\n} as const;\nexport type VoicePlayerStatus = typeof VoicePlayerStatus[keyof typeof VoicePlayerStatus];\n\nexport type AudioStorageUnit = {\n playingStatus: VoicePlayerStatus;\n audioFile: null | File;\n playbackTime: number;\n duration: number;\n}\nexport const AudioUnitDefaultValue = (): AudioStorageUnit => ({\n audioFile: null,\n playbackTime: 0,\n duration: 1000,\n playingStatus: VoicePlayerStatus.IDLE,\n});\n\nexport interface VoicePlayerInitialState {\n currentPlayer: null | HTMLAudioElement;\n currentGroupKey: string;\n audioStorage: Record<GroupKey, AudioStorageUnit>;\n}\n\nexport const voicePlayerInitialState: VoicePlayerInitialState = {\n currentPlayer: null,\n currentGroupKey: '',\n audioStorage: {},\n};\n","import {\n INITIALIZE_AUDIO_UNIT,\n ON_CURRENT_TIME_UPDATE,\n ON_VOICE_PLAYER_PAUSE,\n ON_VOICE_PLAYER_PLAY,\n SET_CURRENT_PLAYER,\n} from \"./actionTypes\";\nimport {\n AudioStorageUnit,\n AudioUnitDefaultValue,\n VoicePlayerInitialState,\n VoicePlayerStatus,\n} from \"./initialState\";\n\ntype InitializeAudioUnitPayload = { groupKey: string };\ntype SetCurrentPlayerPayload = { audioPlayer: HTMLAudioElement, groupKey: string };\ntype OnVoicePlayerPlayPayload = { groupKey: string, audioFile: File };\ntype OnVoicePlayerPausePayload = { groupKey: string };\ntype OnCurrentTimeUpdatePayload = { groupKey: string };\ntype PayloadType = (\n InitializeAudioUnitPayload\n | SetCurrentPlayerPayload\n | OnVoicePlayerPlayPayload\n | OnVoicePlayerPausePayload\n | OnCurrentTimeUpdatePayload\n);\ntype ActionType = {\n type: string;\n payload: PayloadType;\n}\n\nexport default function voicePlayerReducer(\n state: VoicePlayerInitialState,\n action: ActionType,\n): VoicePlayerInitialState {\n switch (action.type) {\n case INITIALIZE_AUDIO_UNIT: {\n const { groupKey } = action.payload as InitializeAudioUnitPayload;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n audioUnit.playingStatus = VoicePlayerStatus.PREPARING;\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n case SET_CURRENT_PLAYER: {\n const { audioPlayer, groupKey } = action.payload as SetCurrentPlayerPayload;\n return {\n ...state,\n currentPlayer: audioPlayer,\n currentGroupKey: groupKey,\n };\n }\n case ON_VOICE_PLAYER_PLAY: {\n const { groupKey, audioFile } = action.payload as OnVoicePlayerPlayPayload;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n audioUnit.audioFile = audioFile;\n audioUnit.playingStatus = VoicePlayerStatus.PLAYING;\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n case ON_VOICE_PLAYER_PAUSE: {\n const { groupKey } = action.payload as OnVoicePlayerPausePayload;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n audioUnit.playingStatus = VoicePlayerStatus.PAUSED;\n const { currentTime, duration } = state.currentPlayer as HTMLAudioElement;\n if (audioUnit.playbackTime === audioUnit.duration) {\n audioUnit.playbackTime = 0;\n } else if (currentTime > 0 && duration > 0) {\n audioUnit.playbackTime = currentTime;\n audioUnit.duration = duration;\n }\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n case ON_CURRENT_TIME_UPDATE: {\n const { groupKey } = action.payload as OnCurrentTimeUpdatePayload;\n const { currentTime, duration } = state.currentPlayer as HTMLAudioElement;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n if (currentTime > 0 && duration > 0) {\n audioUnit.playbackTime = currentTime;\n audioUnit.duration = duration;\n }\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n default:\n return state;\n }\n}\n","import React, { createContext, useContext, useReducer } from 'react';\nimport voicePlayerReducer from './dux/reducer';\nimport {\n AudioStorageUnit,\n AudioUnitDefaultValue,\n VoicePlayerInitialState,\n voicePlayerInitialState,\n} from './dux/initialState';\nimport {\n INITIALIZE_AUDIO_UNIT,\n ON_CURRENT_TIME_UPDATE,\n ON_VOICE_PLAYER_PAUSE,\n ON_VOICE_PLAYER_PLAY,\n SET_CURRENT_PLAYER,\n} from './dux/actionTypes';\nimport {\n VOICE_MESSAGE_FILE_NAME,\n VOICE_MESSAGE_MIME_TYPE,\n VOICE_PLAYER_AUDIO_ID,\n VOICE_PLAYER_ROOT_ID,\n} from '../../utils/consts';\nimport useSendbirdStateContext from '../useSendbirdStateContext';\n\n// VoicePlayerProvider interface\nexport interface VoicePlayerProps {\n children: React.ReactElement;\n}\nexport interface VoicePlayerPlayProps {\n groupKey: string;\n audioFile?: File;\n audioFileUrl?: string;\n}\nexport interface VoicePlayerContext {\n play: (props: VoicePlayerPlayProps) => void;\n pause: (groupKey?: string) => void;\n stop: (text?: string) => void;\n voicePlayerStore: VoicePlayerInitialState;\n}\n\nconst noop = () => {/* noop */ };\nconst VoicePlayerStoreDefaultValue = {\n currentGroupKey: '',\n currentPlayer: null,\n audioStorage: {},\n};\n\nconst VoicePlayerContext = createContext<VoicePlayerContext>({\n play: noop,\n pause: noop,\n stop: noop,\n voicePlayerStore: VoicePlayerStoreDefaultValue,\n});\n\nexport const VoicePlayerProvider = ({\n children,\n}: VoicePlayerProps): React.ReactElement => {\n const [voicePlayerStore, voicePlayerDispatcher] = useReducer(voicePlayerReducer, voicePlayerInitialState);\n const {\n currentGroupKey,\n currentPlayer,\n audioStorage,\n } = voicePlayerStore;\n const { config } = useSendbirdStateContext();\n const { logger } = config;\n\n const stop = (text = '') => {\n if (currentGroupKey.includes(text)) {\n logger.info('VoicePlayer: Pause playing(by text).');\n pause(currentGroupKey);\n }\n };\n\n const pause = (groupKey: string) => {\n if (currentGroupKey === groupKey && currentPlayer !== null) {\n logger.info('VoicePlayer: Pause playing(by group key).');\n currentPlayer?.pause();\n }\n };\n\n const play = ({\n groupKey,\n audioFile = null,\n audioFileUrl = '',\n }: VoicePlayerPlayProps): void => {\n if (groupKey !== currentGroupKey) {\n pause(currentGroupKey);\n }\n\n // Clear the previous AudioPlayer element\n const voicePlayerRoot = document.getElementById(VOICE_PLAYER_ROOT_ID);\n const voicePlayerAudioElement = document.getElementById(VOICE_PLAYER_AUDIO_ID);\n if (voicePlayerAudioElement) {\n voicePlayerRoot.removeChild(voicePlayerAudioElement);\n }\n\n new Promise((resolve) => {\n if (audioFile) {\n resolve(audioFile);\n }\n if (audioStorage?.[groupKey]?.audioFile) {\n resolve(audioStorage[groupKey].audioFile)\n }\n voicePlayerDispatcher({\n type: INITIALIZE_AUDIO_UNIT,\n payload: { groupKey },\n });\n fetch(audioFileUrl)\n .then((res) => res.blob())\n .then((blob) => {\n const audioFile = new File([blob], VOICE_MESSAGE_FILE_NAME, {\n lastModified: new Date().getTime(),\n type: VOICE_MESSAGE_MIME_TYPE,\n });\n resolve(audioFile);\n });\n }).then((audioFile: File) => {\n logger.info('VoicePlayer: Succeeded getting audio file.', audioFile);\n const currentAudioUnit = audioStorage[groupKey] || AudioUnitDefaultValue() as AudioStorageUnit;\n const audioPlayer = new Audio(URL?.createObjectURL?.(audioFile));\n audioPlayer.id = VOICE_PLAYER_AUDIO_ID;\n audioPlayer.currentTime = currentAudioUnit.playbackTime;\n audioPlayer.volume = 1;\n audioPlayer.loop = false;\n audioPlayer.onplaying = () => {\n logger.info('VoicePlayer: OnPlaying event is called from audioPlayer', { groupKey, audioPlayer });\n voicePlayerDispatcher({\n type: ON_VOICE_PLAYER_PLAY,\n payload: { groupKey, audioFile },\n });\n };\n audioPlayer.onpause = () => {\n logger.info('VoicePlayer: OnPause event is called from audioPlayer', { groupKey, audioPlayer });\n voicePlayerDispatcher({\n type: ON_VOICE_PLAYER_PAUSE,\n payload: { groupKey },\n });\n };\n audioPlayer.ontimeupdate = () => {\n voicePlayerDispatcher({\n type: ON_CURRENT_TIME_UPDATE,\n payload: { groupKey },\n });\n };\n audioPlayer?.play();\n const voicePlayerRoot = document.getElementById(VOICE_PLAYER_ROOT_ID);\n voicePlayerRoot.appendChild(audioPlayer);\n voicePlayerDispatcher({\n type: SET_CURRENT_PLAYER,\n payload: { groupKey, audioPlayer },\n });\n logger.info('VoicePlayer: Succeeded playing audio player.', { groupKey, audioPlayer });\n });\n };\n\n return (\n <VoicePlayerContext.Provider value={{\n play,\n pause,\n stop,\n voicePlayerStore,\n }}>\n <div id={VOICE_PLAYER_ROOT_ID} style={{ display: 'none' }} />\n {children}\n </VoicePlayerContext.Provider>\n );\n};\n\nexport const useVoicePlayerContext = (): VoicePlayerContext => useContext(VoicePlayerContext);\n"],"names":["INITIALIZE_AUDIO_UNIT","SET_CURRENT_PLAYER","ON_VOICE_PLAYER_PLAY","ON_VOICE_PLAYER_PAUSE","ON_CURRENT_TIME_UPDATE","VoicePlayerStatus","IDLE","PREPARING","PLAYING","PAUSED","COMPLETED","AudioUnitDefaultValue","audioFile","playbackTime","duration","playingStatus","voicePlayerInitialState","currentPlayer","currentGroupKey","audioStorage","voicePlayerReducer","state","action","type","groupKey","payload","audioUnit","_e","__assign","_a","_j","audioPlayer","_k","_f","_b","_g","_l","currentTime","_c","_m","_h","_d","noop","VoicePlayerStoreDefaultValue","VoicePlayerContext","createContext","play","pause","stop","voicePlayerStore","VoicePlayerProvider","children","useReducer","voicePlayerDispatcher","config","useSendbirdStateContext","logger","text","includes","info","audioFileUrl","voicePlayerRoot","document","getElementById","VOICE_PLAYER_ROOT_ID","voicePlayerAudioElement","VOICE_PLAYER_AUDIO_ID","removeChild","Promise","resolve","fetch","then","res","blob","File","VOICE_MESSAGE_FILE_NAME","lastModified","Date","getTime","VOICE_MESSAGE_MIME_TYPE","currentAudioUnit","Audio","URL","createObjectURL","id","volume","loop","onplaying","onpause","ontimeupdate","appendChild","React","display","useVoicePlayerContext","useContext"],"mappings":"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"}
1
+ {"version":3,"file":"index-ba9683ca.js","sources":["../../src/hooks/VoicePlayer/dux/actionTypes.ts","../../src/hooks/VoicePlayer/dux/initialState.ts","../../src/hooks/VoicePlayer/dux/reducer.ts","../../src/hooks/VoicePlayer/index.tsx"],"sourcesContent":["import { ObjectValues } from \"../../../utils/typeHelpers/objectValues\";\n\nexport const actionTypes = {\n INITIALIZE_AUDIO_UNIT: 'INITIALIZE_AUDIO_UNIT',\n SET_CURRENT_PLAYER: 'SET_CURRENT_PLAYER',\n ON_VOICE_PLAYER_PLAY: 'ON_VOICE_PLAYER_PLAY',\n ON_VOICE_PLAYER_PAUSE: 'ON_VOICE_PLAYER_PAUSE',\n ON_CURRENT_TIME_UPDATE: 'ON_CURRENT_TIME_UPDATE',\n} as const;\n\nexport type VoicePlayerActionType = ObjectValues<typeof actionTypes>;\n\nexport const INITIALIZE_AUDIO_UNIT: VoicePlayerActionType = 'INITIALIZE_AUDIO_UNIT';\nexport const SET_CURRENT_PLAYER: VoicePlayerActionType = 'SET_CURRENT_PLAYER';\nexport const ON_VOICE_PLAYER_PLAY: VoicePlayerActionType = 'ON_VOICE_PLAYER_PLAY';\nexport const ON_VOICE_PLAYER_PAUSE: VoicePlayerActionType = 'ON_VOICE_PLAYER_PAUSE';\nexport const ON_CURRENT_TIME_UPDATE: VoicePlayerActionType = 'ON_CURRENT_TIME_UPDATE';\n","import { GroupKey } from '../utils';\n\nexport const VoicePlayerStatus = {\n IDLE: 'IDLE',\n PREPARING: 'PREPARING',\n PLAYING: 'PLAYING',\n PAUSED: 'PAUSED',\n COMPLETED: 'COMPLETED',\n} as const;\nexport type VoicePlayerStatus = typeof VoicePlayerStatus[keyof typeof VoicePlayerStatus];\n\nexport type AudioStorageUnit = {\n playingStatus: VoicePlayerStatus;\n audioFile: null | File;\n playbackTime: number;\n duration: number;\n}\nexport const AudioUnitDefaultValue = (): AudioStorageUnit => ({\n audioFile: null,\n playbackTime: 0,\n duration: 1000,\n playingStatus: VoicePlayerStatus.IDLE,\n});\n\nexport interface VoicePlayerInitialState {\n currentPlayer: null | HTMLAudioElement;\n currentGroupKey: string;\n audioStorage: Record<GroupKey, AudioStorageUnit>;\n}\n\nexport const voicePlayerInitialState: VoicePlayerInitialState = {\n currentPlayer: null,\n currentGroupKey: '',\n audioStorage: {},\n};\n","import {\n INITIALIZE_AUDIO_UNIT,\n ON_CURRENT_TIME_UPDATE,\n ON_VOICE_PLAYER_PAUSE,\n ON_VOICE_PLAYER_PLAY,\n SET_CURRENT_PLAYER,\n} from \"./actionTypes\";\nimport {\n AudioStorageUnit,\n AudioUnitDefaultValue,\n VoicePlayerInitialState,\n VoicePlayerStatus,\n} from \"./initialState\";\n\ntype InitializeAudioUnitPayload = { groupKey: string };\ntype SetCurrentPlayerPayload = { audioPlayer: HTMLAudioElement, groupKey: string };\ntype OnVoicePlayerPlayPayload = { groupKey: string, audioFile: File };\ntype OnVoicePlayerPausePayload = { groupKey: string };\ntype OnCurrentTimeUpdatePayload = { groupKey: string };\ntype PayloadType = (\n InitializeAudioUnitPayload\n | SetCurrentPlayerPayload\n | OnVoicePlayerPlayPayload\n | OnVoicePlayerPausePayload\n | OnCurrentTimeUpdatePayload\n);\ntype ActionType = {\n type: string;\n payload: PayloadType;\n}\n\nexport default function voicePlayerReducer(\n state: VoicePlayerInitialState,\n action: ActionType,\n): VoicePlayerInitialState {\n switch (action.type) {\n case INITIALIZE_AUDIO_UNIT: {\n const { groupKey } = action.payload as InitializeAudioUnitPayload;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n audioUnit.playingStatus = VoicePlayerStatus.PREPARING;\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n case SET_CURRENT_PLAYER: {\n const { audioPlayer, groupKey } = action.payload as SetCurrentPlayerPayload;\n return {\n ...state,\n currentPlayer: audioPlayer,\n currentGroupKey: groupKey,\n };\n }\n case ON_VOICE_PLAYER_PLAY: {\n const { groupKey, audioFile } = action.payload as OnVoicePlayerPlayPayload;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n audioUnit.audioFile = audioFile;\n audioUnit.playingStatus = VoicePlayerStatus.PLAYING;\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n case ON_VOICE_PLAYER_PAUSE: {\n const { groupKey } = action.payload as OnVoicePlayerPausePayload;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n audioUnit.playingStatus = VoicePlayerStatus.PAUSED;\n const { currentTime, duration } = state.currentPlayer as HTMLAudioElement;\n if (audioUnit.playbackTime === audioUnit.duration) {\n audioUnit.playbackTime = 0;\n } else if (currentTime > 0 && duration > 0) {\n audioUnit.playbackTime = currentTime;\n audioUnit.duration = duration;\n }\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n case ON_CURRENT_TIME_UPDATE: {\n const { groupKey } = action.payload as OnCurrentTimeUpdatePayload;\n const { currentTime, duration } = state.currentPlayer as HTMLAudioElement;\n const audioUnit = (state.audioStorage?.[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue()) as AudioStorageUnit;\n if (currentTime > 0 && duration > 0) {\n audioUnit.playbackTime = currentTime;\n audioUnit.duration = duration;\n }\n return {\n ...state,\n audioStorage: {\n ...state.audioStorage,\n [groupKey]: audioUnit,\n },\n };\n }\n default:\n return state;\n }\n}\n","import React, { createContext, useContext, useReducer } from 'react';\nimport voicePlayerReducer from './dux/reducer';\nimport {\n AudioStorageUnit,\n AudioUnitDefaultValue,\n VoicePlayerInitialState,\n voicePlayerInitialState,\n} from './dux/initialState';\nimport {\n INITIALIZE_AUDIO_UNIT,\n ON_CURRENT_TIME_UPDATE,\n ON_VOICE_PLAYER_PAUSE,\n ON_VOICE_PLAYER_PLAY,\n SET_CURRENT_PLAYER,\n} from './dux/actionTypes';\nimport {\n VOICE_MESSAGE_FILE_NAME,\n VOICE_MESSAGE_MIME_TYPE,\n VOICE_PLAYER_AUDIO_ID,\n VOICE_PLAYER_ROOT_ID,\n} from '../../utils/consts';\nimport useSendbirdStateContext from '../useSendbirdStateContext';\n\n// VoicePlayerProvider interface\nexport interface VoicePlayerProps {\n children: React.ReactElement;\n}\nexport interface VoicePlayerPlayProps {\n groupKey: string;\n audioFile?: File;\n audioFileUrl?: string;\n}\nexport interface VoicePlayerContext {\n play: (props: VoicePlayerPlayProps) => void;\n pause: (groupKey?: string) => void;\n stop: (text?: string) => void;\n voicePlayerStore: VoicePlayerInitialState;\n}\n\nconst noop = () => {/* noop */ };\nconst VoicePlayerStoreDefaultValue = {\n currentGroupKey: '',\n currentPlayer: null,\n audioStorage: {},\n};\n\nconst VoicePlayerContext = createContext<VoicePlayerContext>({\n play: noop,\n pause: noop,\n stop: noop,\n voicePlayerStore: VoicePlayerStoreDefaultValue,\n});\n\nexport const VoicePlayerProvider = ({\n children,\n}: VoicePlayerProps): React.ReactElement => {\n const [voicePlayerStore, voicePlayerDispatcher] = useReducer(voicePlayerReducer, voicePlayerInitialState);\n const {\n currentGroupKey,\n currentPlayer,\n audioStorage,\n } = voicePlayerStore;\n const { config } = useSendbirdStateContext();\n const { logger } = config;\n\n const stop = (text = '') => {\n if (currentGroupKey.includes(text)) {\n logger.info('VoicePlayer: Pause playing(by text).');\n pause(currentGroupKey);\n }\n };\n\n const pause = (groupKey: string) => {\n if (currentGroupKey === groupKey && currentPlayer !== null) {\n logger.info('VoicePlayer: Pause playing(by group key).');\n currentPlayer?.pause();\n }\n };\n\n const play = ({\n groupKey,\n audioFile = null,\n audioFileUrl = '',\n }: VoicePlayerPlayProps): void => {\n if (groupKey !== currentGroupKey) {\n pause(currentGroupKey);\n }\n\n // Clear the previous AudioPlayer element\n const voicePlayerRoot = document.getElementById(VOICE_PLAYER_ROOT_ID);\n const voicePlayerAudioElement = document.getElementById(VOICE_PLAYER_AUDIO_ID);\n if (voicePlayerAudioElement) {\n voicePlayerRoot.removeChild(voicePlayerAudioElement);\n }\n\n new Promise((resolve) => {\n if (audioFile) {\n resolve(audioFile);\n }\n if (audioStorage?.[groupKey]?.audioFile) {\n resolve(audioStorage[groupKey].audioFile)\n }\n voicePlayerDispatcher({\n type: INITIALIZE_AUDIO_UNIT,\n payload: { groupKey },\n });\n fetch(audioFileUrl)\n .then((res) => res.blob())\n .then((blob) => {\n const audioFile = new File([blob], VOICE_MESSAGE_FILE_NAME, {\n lastModified: new Date().getTime(),\n type: VOICE_MESSAGE_MIME_TYPE,\n });\n resolve(audioFile);\n });\n }).then((audioFile: File) => {\n logger.info('VoicePlayer: Succeeded getting audio file.', audioFile);\n const currentAudioUnit = audioStorage[groupKey] || AudioUnitDefaultValue() as AudioStorageUnit;\n const audioPlayer = new Audio(URL?.createObjectURL?.(audioFile));\n audioPlayer.id = VOICE_PLAYER_AUDIO_ID;\n audioPlayer.currentTime = currentAudioUnit.playbackTime;\n audioPlayer.volume = 1;\n audioPlayer.loop = false;\n audioPlayer.onplaying = () => {\n logger.info('VoicePlayer: OnPlaying event is called from audioPlayer', { groupKey, audioPlayer });\n voicePlayerDispatcher({\n type: ON_VOICE_PLAYER_PLAY,\n payload: { groupKey, audioFile },\n });\n };\n audioPlayer.onpause = () => {\n logger.info('VoicePlayer: OnPause event is called from audioPlayer', { groupKey, audioPlayer });\n voicePlayerDispatcher({\n type: ON_VOICE_PLAYER_PAUSE,\n payload: { groupKey },\n });\n };\n audioPlayer.ontimeupdate = () => {\n voicePlayerDispatcher({\n type: ON_CURRENT_TIME_UPDATE,\n payload: { groupKey },\n });\n };\n audioPlayer?.play();\n const voicePlayerRoot = document.getElementById(VOICE_PLAYER_ROOT_ID);\n voicePlayerRoot.appendChild(audioPlayer);\n voicePlayerDispatcher({\n type: SET_CURRENT_PLAYER,\n payload: { groupKey, audioPlayer },\n });\n logger.info('VoicePlayer: Succeeded playing audio player.', { groupKey, audioPlayer });\n });\n };\n\n return (\n <VoicePlayerContext.Provider value={{\n play,\n pause,\n stop,\n voicePlayerStore,\n }}>\n <div id={VOICE_PLAYER_ROOT_ID} style={{ display: 'none' }} />\n {children}\n </VoicePlayerContext.Provider>\n );\n};\n\nexport const useVoicePlayerContext = (): VoicePlayerContext => useContext(VoicePlayerContext);\n"],"names":["INITIALIZE_AUDIO_UNIT","SET_CURRENT_PLAYER","ON_VOICE_PLAYER_PLAY","ON_VOICE_PLAYER_PAUSE","ON_CURRENT_TIME_UPDATE","VoicePlayerStatus","IDLE","PREPARING","PLAYING","PAUSED","COMPLETED","AudioUnitDefaultValue","audioFile","playbackTime","duration","playingStatus","voicePlayerInitialState","currentPlayer","currentGroupKey","audioStorage","voicePlayerReducer","state","action","type","groupKey","payload","audioUnit","_e","__assign","_a","_j","audioPlayer","_k","_f","_b","_g","_l","currentTime","_c","_m","_h","_d","noop","VoicePlayerStoreDefaultValue","VoicePlayerContext","createContext","play","pause","stop","voicePlayerStore","VoicePlayerProvider","children","useReducer","voicePlayerDispatcher","config","useSendbirdStateContext","logger","text","includes","info","audioFileUrl","voicePlayerRoot","document","getElementById","VOICE_PLAYER_ROOT_ID","voicePlayerAudioElement","VOICE_PLAYER_AUDIO_ID","removeChild","Promise","resolve","fetch","then","res","blob","File","VOICE_MESSAGE_FILE_NAME","lastModified","Date","getTime","VOICE_MESSAGE_MIME_TYPE","currentAudioUnit","Audio","URL","createObjectURL","id","volume","loop","onplaying","onpause","ontimeupdate","appendChild","React","createElement","Provider","value","style","display","useVoicePlayerContext","useContext"],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  var React = require('react');
4
4
  var ui_ContextMenu = require('./ui/ContextMenu.js');
5
5
  var useSendbirdStateContext = require('./useSendbirdStateContext.js');
6
- var LocalizationContext = require('./LocalizationContext-01fceac0.js');
6
+ var LocalizationContext = require('./LocalizationContext-e4a874cf.js');
7
7
 
8
8
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
9
 
@@ -34,47 +34,43 @@ var checkIsByMe = function (message, userId) {
34
34
  };
35
35
  var isFineCopy = function (_a) {
36
36
  var _b;
37
-
38
37
  var message = _a.message;
39
38
  return (message === null || message === void 0 ? void 0 : message.messageType) === 'user' && ((_b = message === null || message === void 0 ? void 0 : message.message) === null || _b === void 0 ? void 0 : _b.length) > 0;
40
39
  };
41
40
  var isFineResend = function (_a) {
42
41
  var message = _a.message,
43
- status = _a.status,
44
- userId = _a.userId;
45
- return checkIsByMe(message, userId) && checkIsFailed(status) // @ts-ignore
42
+ status = _a.status,
43
+ userId = _a.userId;
44
+ return checkIsByMe(message, userId) && checkIsFailed(status)
45
+ // @ts-ignore
46
46
  && (message === null || message === void 0 ? void 0 : message.isResendable());
47
47
  };
48
48
  var isFineEdit = function (_a) {
49
49
  var _b;
50
-
51
50
  var message = _a.message,
52
- status = _a.status,
53
- userId = _a.userId;
51
+ status = _a.status,
52
+ userId = _a.userId;
54
53
  return checkIsByMe(message, userId) && checkIsSent(status) && ((_b = message === null || message === void 0 ? void 0 : message.isUserMessage) === null || _b === void 0 ? void 0 : _b.call(message));
55
54
  };
56
55
  var isFineDelete = function (_a) {
57
56
  var message = _a.message,
58
- userId = _a.userId;
57
+ userId = _a.userId;
59
58
  return checkIsByMe(message, userId);
60
59
  };
61
60
  var isFineDownload = function (_a) {
62
61
  var _b;
63
-
64
62
  var message = _a.message,
65
- status = _a.status;
66
-
63
+ status = _a.status;
67
64
  if (((_b = message === null || message === void 0 ? void 0 : message.isFileMessage) === null || _b === void 0 ? void 0 : _b.call(message)) && checkIsSent(status)) {
68
65
  return true;
69
66
  }
70
-
71
67
  return false;
72
68
  };
73
69
  var showMenuTrigger = function (props) {
74
70
  var message = props.message,
75
- status = props.status,
76
- userId = props.userId; // @ts-ignore
77
-
71
+ status = props.status,
72
+ userId = props.userId;
73
+ // @ts-ignore
78
74
  if (message.messageType === 'user') {
79
75
  return isFineDelete({
80
76
  message: message,
@@ -84,7 +80,8 @@ var showMenuTrigger = function (props) {
84
80
  message: message,
85
81
  status: status,
86
82
  userId: userId
87
- }) // @ts-ignore
83
+ })
84
+ // @ts-ignore
88
85
  || isFineCopy({
89
86
  message: message,
90
87
  status: status,
@@ -109,16 +106,15 @@ var showMenuTrigger = function (props) {
109
106
 
110
107
  var OpenChannelMobileMenu = function (props) {
111
108
  var _a, _b;
112
-
113
109
  var message = props.message,
114
- parentRef = props.parentRef,
115
- resendMessage = props.resendMessage,
116
- showEdit = props.showEdit,
117
- showRemove = props.showRemove,
118
- copyToClipboard = props.copyToClipboard,
119
- hideMenu = props.hideMenu,
120
- _c = props.isEphemeral,
121
- isEphemeral = _c === void 0 ? false : _c;
110
+ parentRef = props.parentRef,
111
+ resendMessage = props.resendMessage,
112
+ showEdit = props.showEdit,
113
+ showRemove = props.showRemove,
114
+ copyToClipboard = props.copyToClipboard,
115
+ hideMenu = props.hideMenu,
116
+ _c = props.isEphemeral,
117
+ isEphemeral = _c === void 0 ? false : _c;
122
118
  var userMessage = message;
123
119
  var status = message === null || message === void 0 ? void 0 : message.sendingStatus;
124
120
  var stringSet = LocalizationContext.useLocalization().stringSet;
@@ -193,4 +189,4 @@ exports.isFineDelete = isFineDelete;
193
189
  exports.isFineEdit = isFineEdit;
194
190
  exports.isFineResend = isFineResend;
195
191
  exports.showMenuTrigger = showMenuTrigger;
196
- //# sourceMappingURL=index-a7fa406f.js.map
192
+ //# sourceMappingURL=index-d3b05e98.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-a7fa406f.js","sources":["../../src/utils/openChannelUtils.ts","../../src/ui/OpenChannelMobileMenu/index.tsx"],"sourcesContent":["import type { User } from '@sendbird/chat';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nconst OpenChannelMessageStatusTypes = {\n NONE: 'none',\n PENDING: 'pending',\n FAILED: 'failed',\n CANCELED: 'canceled',\n SUCCEEDED: 'succeeded'\n};\n\nexport const getSenderFromMessage = (message: UserMessage | FileMessage): User => {\n // @ts-ignore\n return message.sender || message._sender;\n};\n\nexport const checkIsSent = (status: string): boolean => (status === OpenChannelMessageStatusTypes.SUCCEEDED);\nexport const checkIsPending = (status: string): boolean => (status === OpenChannelMessageStatusTypes.PENDING);\nexport const checkIsFailed = (status: string): boolean => (status === OpenChannelMessageStatusTypes.FAILED);\n\nexport const checkIsByMe = (message: UserMessage | FileMessage, userId: string): boolean => (getSenderFromMessage(message).userId === userId);\n\ninterface isFineCopyParams {\n message: UserMessage;\n status: string;\n userId: string;\n}\nexport const isFineCopy = ({ message }: isFineCopyParams): boolean => {\n return (message?.messageType === 'user' && message?.message?.length > 0);\n};\n\ninterface isFineResendParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const isFineResend = ({ message, status, userId }: isFineResendParams): boolean => {\n return checkIsByMe(message, userId)\n && checkIsFailed(status)\n // @ts-ignore\n && message?.isResendable();\n};\n\ninterface isFineEditParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const isFineEdit = ({ message, status, userId }: isFineEditParams): boolean => {\n return checkIsByMe(message, userId) && checkIsSent(status) && message?.isUserMessage?.();\n};\n\ninterface isFineDeleteParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const isFineDelete = ({ message, userId }: isFineDeleteParams): boolean => {\n return checkIsByMe(message, userId);\n};\n\ninterface IsFineDownloadParams {\n message: FileMessage | UserMessage;\n status: string;\n}\n\nexport const isFineDownload = ({ message, status }: IsFineDownloadParams): boolean => {\n if (message?.isFileMessage?.() && checkIsSent(status)) {\n return true;\n }\n return false;\n};\n\ninterface showMenuTriggerParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const showMenuTrigger = (props: showMenuTriggerParams): boolean => {\n const { message, status, userId } = props;\n // @ts-ignore\n if (message.messageType === 'user') {\n return (\n isFineDelete({ message, status, userId })\n || isFineEdit({ message, status, userId })\n // @ts-ignore\n || isFineCopy({ message, status, userId })\n || isFineResend({ message, status, userId })\n );\n } else {\n return (\n isFineDelete({ message, status, userId })\n || isFineResend({ message, status, userId })\n );\n }\n};\n","import './open-channel-mobile-menu.scss';\n\nimport React from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport {\n isFineDelete,\n isFineResend,\n isFineCopy,\n isFineEdit,\n isFineDownload,\n} from '../../utils/openChannelUtils';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\ntype Props = {\n message: UserMessage | FileMessage;\n parentRef: React.RefObject<HTMLDivElement>;\n resendMessage?(): void;\n showRemove?(): void;\n copyToClipboard?(): void;\n showEdit?(): void;\n hideMenu(): void;\n isEphemeral?: boolean;\n};\n\nconst OpenChannelMobileMenu: React.FC<Props> = (props: Props) => {\n const {\n message,\n parentRef,\n resendMessage,\n showEdit,\n showRemove,\n copyToClipboard,\n hideMenu,\n isEphemeral = false,\n } = props;\n const userMessage = message as UserMessage;\n const status = message?.sendingStatus;\n const { stringSet } = useLocalization();\n const userId = useSendbirdStateContext()?.config?.userId;\n const fileMessage = message as FileMessage;\n return (\n <ContextMenu\n isOpen\n menuItems={() => (\n <MenuItems\n className=\"sendbird-openchannel__mobile-menu\"\n parentRef={parentRef}\n parentContainRef={parentRef}\n closeDropdown={hideMenu}\n >\n {\n isFineCopy({ message: userMessage, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__context-menu__copy\"\n onClick={() => {\n copyToClipboard();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__COPY}</>\n </MenuItem>\n )\n }\n {\n (!isEphemeral && isFineEdit({ message, userId, status })) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__context-menu__edit\"\n onClick={() => {\n showEdit();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__EDIT}</>\n </MenuItem>\n )\n }\n {\n isFineResend({ message, userId, status }) && (\n <MenuItem\n onClick={() => {\n resendMessage();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__RESEND}</>\n </MenuItem>\n )\n }\n {\n (!isEphemeral && isFineDelete({ message, userId, status })) && (\n <MenuItem\n onClick={() => {\n showRemove();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__DELETE}</>\n </MenuItem>\n )\n }\n {\n isFineDownload({ message, status }) && (\n <MenuItem\n onClick={() => {\n hideMenu();\n }}\n >\n <a\n className=\"sendbird-openchannel__mobile-menu-hyperlink\"\n rel=\"noopener noreferrer\"\n href={fileMessage?.url}\n target=\"_blank\"\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__SAVE}\n </a>\n </MenuItem>\n )\n }\n </MenuItems>\n )\n }/>\n )\n}\n\nexport default OpenChannelMobileMenu;\n"],"names":["OpenChannelMessageStatusTypes","NONE","PENDING","FAILED","CANCELED","SUCCEEDED","getSenderFromMessage","message","sender","_sender","checkIsSent","status","checkIsPending","checkIsFailed","checkIsByMe","userId","isFineCopy","_a","messageType","_b","length","isFineResend","isResendable","isFineEdit","isUserMessage","call","isFineDelete","isFineDownload","isFileMessage","showMenuTrigger","props","OpenChannelMobileMenu","parentRef","resendMessage","showEdit","showRemove","copyToClipboard","hideMenu","_c","isEphemeral","userMessage","sendingStatus","stringSet","useLocalization","useSendbirdStateContext","config","fileMessage","React","ContextMenu","MenuItems","MenuItem","CONTEXT_MENU_DROPDOWN__COPY","CONTEXT_MENU_DROPDOWN__EDIT","CONTEXT_MENU_DROPDOWN__RESEND","CONTEXT_MENU_DROPDOWN__DELETE","url","CONTEXT_MENU_DROPDOWN__SAVE"],"mappings":"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"}
1
+ {"version":3,"file":"index-d3b05e98.js","sources":["../../src/utils/openChannelUtils.ts","../../src/ui/OpenChannelMobileMenu/index.tsx"],"sourcesContent":["import type { User } from '@sendbird/chat';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nconst OpenChannelMessageStatusTypes = {\n NONE: 'none',\n PENDING: 'pending',\n FAILED: 'failed',\n CANCELED: 'canceled',\n SUCCEEDED: 'succeeded'\n};\n\nexport const getSenderFromMessage = (message: UserMessage | FileMessage): User => {\n // @ts-ignore\n return message.sender || message._sender;\n};\n\nexport const checkIsSent = (status: string): boolean => (status === OpenChannelMessageStatusTypes.SUCCEEDED);\nexport const checkIsPending = (status: string): boolean => (status === OpenChannelMessageStatusTypes.PENDING);\nexport const checkIsFailed = (status: string): boolean => (status === OpenChannelMessageStatusTypes.FAILED);\n\nexport const checkIsByMe = (message: UserMessage | FileMessage, userId: string): boolean => (getSenderFromMessage(message).userId === userId);\n\ninterface isFineCopyParams {\n message: UserMessage;\n status: string;\n userId: string;\n}\nexport const isFineCopy = ({ message }: isFineCopyParams): boolean => {\n return (message?.messageType === 'user' && message?.message?.length > 0);\n};\n\ninterface isFineResendParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const isFineResend = ({ message, status, userId }: isFineResendParams): boolean => {\n return checkIsByMe(message, userId)\n && checkIsFailed(status)\n // @ts-ignore\n && message?.isResendable();\n};\n\ninterface isFineEditParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const isFineEdit = ({ message, status, userId }: isFineEditParams): boolean => {\n return checkIsByMe(message, userId) && checkIsSent(status) && message?.isUserMessage?.();\n};\n\ninterface isFineDeleteParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const isFineDelete = ({ message, userId }: isFineDeleteParams): boolean => {\n return checkIsByMe(message, userId);\n};\n\ninterface IsFineDownloadParams {\n message: FileMessage | UserMessage;\n status: string;\n}\n\nexport const isFineDownload = ({ message, status }: IsFineDownloadParams): boolean => {\n if (message?.isFileMessage?.() && checkIsSent(status)) {\n return true;\n }\n return false;\n};\n\ninterface showMenuTriggerParams {\n message: UserMessage | FileMessage;\n status: string;\n userId: string;\n}\nexport const showMenuTrigger = (props: showMenuTriggerParams): boolean => {\n const { message, status, userId } = props;\n // @ts-ignore\n if (message.messageType === 'user') {\n return (\n isFineDelete({ message, status, userId })\n || isFineEdit({ message, status, userId })\n // @ts-ignore\n || isFineCopy({ message, status, userId })\n || isFineResend({ message, status, userId })\n );\n } else {\n return (\n isFineDelete({ message, status, userId })\n || isFineResend({ message, status, userId })\n );\n }\n};\n","import './open-channel-mobile-menu.scss';\n\nimport React from 'react';\nimport type { FileMessage, UserMessage } from '@sendbird/chat/message';\nimport ContextMenu, { MenuItems, MenuItem } from '../ContextMenu';\nimport {\n isFineDelete,\n isFineResend,\n isFineCopy,\n isFineEdit,\n isFineDownload,\n} from '../../utils/openChannelUtils';\nimport useSendbirdStateContext from '../../hooks/useSendbirdStateContext';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\ntype Props = {\n message: UserMessage | FileMessage;\n parentRef: React.RefObject<HTMLDivElement>;\n resendMessage?(): void;\n showRemove?(): void;\n copyToClipboard?(): void;\n showEdit?(): void;\n hideMenu(): void;\n isEphemeral?: boolean;\n};\n\nconst OpenChannelMobileMenu: React.FC<Props> = (props: Props) => {\n const {\n message,\n parentRef,\n resendMessage,\n showEdit,\n showRemove,\n copyToClipboard,\n hideMenu,\n isEphemeral = false,\n } = props;\n const userMessage = message as UserMessage;\n const status = message?.sendingStatus;\n const { stringSet } = useLocalization();\n const userId = useSendbirdStateContext()?.config?.userId;\n const fileMessage = message as FileMessage;\n return (\n <ContextMenu\n isOpen\n menuItems={() => (\n <MenuItems\n className=\"sendbird-openchannel__mobile-menu\"\n parentRef={parentRef}\n parentContainRef={parentRef}\n closeDropdown={hideMenu}\n >\n {\n isFineCopy({ message: userMessage, userId, status }) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__context-menu__copy\"\n onClick={() => {\n copyToClipboard();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__COPY}</>\n </MenuItem>\n )\n }\n {\n (!isEphemeral && isFineEdit({ message, userId, status })) && (\n <MenuItem\n className=\"sendbird-openchannel-og-message__top__context-menu__edit\"\n onClick={() => {\n showEdit();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__EDIT}</>\n </MenuItem>\n )\n }\n {\n isFineResend({ message, userId, status }) && (\n <MenuItem\n onClick={() => {\n resendMessage();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__RESEND}</>\n </MenuItem>\n )\n }\n {\n (!isEphemeral && isFineDelete({ message, userId, status })) && (\n <MenuItem\n onClick={() => {\n showRemove();\n }}\n >\n <>{stringSet.CONTEXT_MENU_DROPDOWN__DELETE}</>\n </MenuItem>\n )\n }\n {\n isFineDownload({ message, status }) && (\n <MenuItem\n onClick={() => {\n hideMenu();\n }}\n >\n <a\n className=\"sendbird-openchannel__mobile-menu-hyperlink\"\n rel=\"noopener noreferrer\"\n href={fileMessage?.url}\n target=\"_blank\"\n >\n {stringSet.CONTEXT_MENU_DROPDOWN__SAVE}\n </a>\n </MenuItem>\n )\n }\n </MenuItems>\n )\n }/>\n )\n}\n\nexport default OpenChannelMobileMenu;\n"],"names":["OpenChannelMessageStatusTypes","NONE","PENDING","FAILED","CANCELED","SUCCEEDED","getSenderFromMessage","message","sender","_sender","checkIsSent","status","checkIsPending","checkIsFailed","checkIsByMe","userId","isFineCopy","_a","messageType","_b","length","isFineResend","isResendable","isFineEdit","isUserMessage","call","isFineDelete","isFineDownload","isFileMessage","showMenuTrigger","props","OpenChannelMobileMenu","parentRef","resendMessage","showEdit","showRemove","copyToClipboard","hideMenu","_c","isEphemeral","userMessage","sendingStatus","stringSet","useLocalization","useSendbirdStateContext","config","fileMessage","React","createElement","ContextMenu","isOpen","menuItems","MenuItems","className","parentContainRef","closeDropdown","MenuItem","onClick","Fragment","CONTEXT_MENU_DROPDOWN__COPY","CONTEXT_MENU_DROPDOWN__EDIT","CONTEXT_MENU_DROPDOWN__RESEND","CONTEXT_MENU_DROPDOWN__DELETE","rel","href","url","target","CONTEXT_MENU_DROPDOWN__SAVE"],"mappings":"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"}