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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (932) hide show
  1. package/App.js +276 -218
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +428 -0
  4. package/Channel/components/ChannelHeader.js +45 -41
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +101 -129
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +55 -52
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +12 -7
  11. package/Channel/components/FrozenNotification.js.map +1 -1
  12. package/Channel/components/Message.js +238 -230
  13. package/Channel/components/Message.js.map +1 -1
  14. package/Channel/components/MessageInput.js +146 -128
  15. package/Channel/components/MessageInput.js.map +1 -1
  16. package/Channel/components/MessageList.js +258 -174
  17. package/Channel/components/MessageList.js.map +1 -1
  18. package/Channel/components/RemoveMessageModal.js +33 -30
  19. package/Channel/components/RemoveMessageModal.js.map +1 -1
  20. package/Channel/components/SuggestedMentionList.js +138 -193
  21. package/Channel/components/SuggestedMentionList.js.map +1 -1
  22. package/Channel/components/TypingIndicator.js +43 -61
  23. package/Channel/components/TypingIndicator.js.map +1 -1
  24. package/Channel/components/UnreadCount.js +18 -20
  25. package/Channel/components/UnreadCount.js.map +1 -1
  26. package/Channel/context.js +11 -19
  27. package/Channel/context.js.map +1 -1
  28. package/Channel.js +67 -43
  29. package/Channel.js.map +1 -1
  30. package/ChannelList/components/AddChannel.js +29 -30
  31. package/ChannelList/components/AddChannel.js.map +1 -1
  32. package/ChannelList/components/ChannelListHeader.js +32 -28
  33. package/ChannelList/components/ChannelListHeader.js.map +1 -1
  34. package/ChannelList/components/ChannelListUI.js +100 -142
  35. package/ChannelList/components/ChannelListUI.js.map +1 -1
  36. package/ChannelList/components/ChannelPreview.js +71 -82
  37. package/ChannelList/components/ChannelPreview.js.map +1 -1
  38. package/ChannelList/components/ChannelPreviewAction.js +34 -35
  39. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  40. package/ChannelList/context.js +7 -8
  41. package/ChannelList/context.js.map +1 -1
  42. package/ChannelList.js +31 -31
  43. package/ChannelList.js.map +1 -1
  44. package/{ChannelListProvider-f461d265.js → ChannelListProvider-42fb305a.js} +233 -285
  45. package/ChannelListProvider-42fb305a.js.map +1 -0
  46. package/{ChannelProvider-554e7116.js → ChannelProvider-42ea1a96.js} +610 -716
  47. package/ChannelProvider-42ea1a96.js.map +1 -0
  48. package/ChannelSettings/components/ChannelProfile.js +33 -46
  49. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  50. package/ChannelSettings/components/ChannelSettingsUI.js +45 -48
  51. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  52. package/ChannelSettings/components/EditDetailsModal.js +47 -58
  53. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  54. package/ChannelSettings/components/LeaveChannel.js +40 -46
  55. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  56. package/ChannelSettings/components/ModerationPanel.js +516 -605
  57. package/ChannelSettings/components/ModerationPanel.js.map +1 -1
  58. package/ChannelSettings/components/UserListItem.js +71 -72
  59. package/ChannelSettings/components/UserListItem.js.map +1 -1
  60. package/ChannelSettings/components/UserPanel.js +29 -32
  61. package/ChannelSettings/components/UserPanel.js.map +1 -1
  62. package/ChannelSettings/context.js +53 -57
  63. package/ChannelSettings/context.js.map +1 -1
  64. package/ChannelSettings.js +20 -20
  65. package/ChannelSettings.js.map +1 -1
  66. package/CreateChannel/components/CreateChannelUI.js +24 -24
  67. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  68. package/CreateChannel/components/InviteUsers.js +102 -124
  69. package/CreateChannel/components/InviteUsers.js.map +1 -1
  70. package/CreateChannel/components/SelectChannelType.js +41 -42
  71. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  72. package/CreateChannel/context.js +4 -4
  73. package/CreateChannel.js +22 -21
  74. package/CreateChannel.js.map +1 -1
  75. package/CreateChannelProvider-37af96d2.js +44 -0
  76. package/CreateChannelProvider-37af96d2.js.map +1 -0
  77. package/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
  78. package/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  79. package/CreateOpenChannel/context.js +33 -33
  80. package/CreateOpenChannel/context.js.map +1 -1
  81. package/CreateOpenChannel.js +18 -17
  82. package/CreateOpenChannel.js.map +1 -1
  83. package/EditUserProfile/components/EditUserProfileUI.js +12 -13
  84. package/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  85. package/EditUserProfile/context.js +0 -2
  86. package/EditUserProfile/context.js.map +1 -1
  87. package/EditUserProfile.js +18 -17
  88. package/EditUserProfile.js.map +1 -1
  89. package/LocalizationContext-1839d2db.js +20 -0
  90. package/{LocalizationContext-4df0cc32.js.map → LocalizationContext-1839d2db.js.map} +1 -1
  91. package/MediaQueryContext-0e0b3a1b.js +87 -0
  92. package/MediaQueryContext-0e0b3a1b.js.map +1 -0
  93. package/MemberList-28589b39.js +395 -0
  94. package/MemberList-28589b39.js.map +1 -0
  95. package/Message/context.js +31 -0
  96. package/Message/context.js.map +1 -0
  97. package/MessageSearch/components/MessageSearchUI.js +62 -71
  98. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  99. package/MessageSearch/context.js +201 -224
  100. package/MessageSearch/context.js.map +1 -1
  101. package/MessageSearch.js +46 -58
  102. package/MessageSearch.js.map +1 -1
  103. package/OpenChannel/components/FrozenChannelNotification.js +8 -6
  104. package/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  105. package/OpenChannel/components/OpenChannelHeader.js +27 -25
  106. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  107. package/OpenChannel/components/OpenChannelInput.js +36 -31
  108. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  109. package/OpenChannel/components/OpenChannelMessage.js +168 -190
  110. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  111. package/OpenChannel/components/OpenChannelMessageList.js +72 -92
  112. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  113. package/OpenChannel/components/OpenChannelUI.js +52 -49
  114. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  115. package/OpenChannel/context.js +8 -9
  116. package/OpenChannel/context.js.map +1 -1
  117. package/OpenChannel.js +34 -28
  118. package/OpenChannel.js.map +1 -1
  119. package/OpenChannelList/components/OpenChannelListUI.js +61 -76
  120. package/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  121. package/OpenChannelList/components/OpenChannelPreview.js +21 -22
  122. package/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  123. package/OpenChannelList/context.js +3 -4
  124. package/OpenChannelList/context.js.map +1 -1
  125. package/OpenChannelList.js +26 -24
  126. package/OpenChannelList.js.map +1 -1
  127. package/OpenChannelListProvider-71a32f2d.js +429 -0
  128. package/OpenChannelListProvider-71a32f2d.js.map +1 -0
  129. package/OpenChannelProvider-377a0b6e.js +1885 -0
  130. package/OpenChannelProvider-377a0b6e.js.map +1 -0
  131. package/OpenChannelSettings/components/EditDetailsModal.js +47 -56
  132. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  133. package/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
  134. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  135. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
  136. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  137. package/OpenChannelSettings/components/OperatorUI.js +508 -586
  138. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  139. package/OpenChannelSettings/components/ParticipantUI.js +15 -16
  140. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  141. package/OpenChannelSettings/context.js +56 -69
  142. package/OpenChannelSettings/context.js.map +1 -1
  143. package/OpenChannelSettings.js +19 -20
  144. package/OpenChannelSettings.js.map +1 -1
  145. package/README.md +62 -13
  146. package/RemoveMessageModal-558db27f.js +36 -0
  147. package/RemoveMessageModal-558db27f.js.map +1 -0
  148. package/SendbirdProvider.js +830 -409
  149. package/SendbirdProvider.js.map +1 -1
  150. package/Thread/components/ParentMessageInfo.js +230 -216
  151. package/Thread/components/ParentMessageInfo.js.map +1 -1
  152. package/Thread/components/ParentMessageInfoItem.js +110 -89
  153. package/Thread/components/ParentMessageInfoItem.js.map +1 -1
  154. package/Thread/components/ThreadHeader.js +22 -23
  155. package/Thread/components/ThreadHeader.js.map +1 -1
  156. package/Thread/components/ThreadList.js +107 -83
  157. package/Thread/components/ThreadList.js.map +1 -1
  158. package/Thread/components/ThreadListItem.js +292 -272
  159. package/Thread/components/ThreadListItem.js.map +1 -1
  160. package/Thread/components/ThreadMessageInput.js +144 -111
  161. package/Thread/components/ThreadMessageInput.js.map +1 -1
  162. package/Thread/components/ThreadUI.js +168 -138
  163. package/Thread/components/ThreadUI.js.map +1 -1
  164. package/Thread/context/types.js +9 -14
  165. package/Thread/context/types.js.map +1 -1
  166. package/Thread/context.js +8 -8
  167. package/Thread.js +86 -57
  168. package/Thread.js.map +1 -1
  169. package/ThreadProvider-0b73628e.js +1695 -0
  170. package/ThreadProvider-0b73628e.js.map +1 -0
  171. package/{UserProfileContext-c58a7b86.js → UserProfileContext-7e645551.js} +1 -4
  172. package/{UserProfileContext-c58a7b86.js.map → UserProfileContext-7e645551.js.map} +1 -1
  173. package/VoiceMessageInputWrapper-0b5a78a1.js +169 -0
  174. package/VoiceMessageInputWrapper-0b5a78a1.js.map +1 -0
  175. package/VoicePlayer/context.js +7 -0
  176. package/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
  177. package/VoicePlayer/useVoicePlayer.js +72 -0
  178. package/VoicePlayer/useVoicePlayer.js.map +1 -0
  179. package/VoiceRecorder/context.js +118 -0
  180. package/VoiceRecorder/context.js.map +1 -0
  181. package/VoiceRecorder/useVoiceRecorder.js +109 -0
  182. package/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  183. package/WebAudioUtils-fbdb41cd.js +123 -0
  184. package/WebAudioUtils-fbdb41cd.js.map +1 -0
  185. package/{_rollupPluginBabelHelpers-498add61.js → _rollupPluginBabelHelpers-ce69e916.js} +17 -11
  186. package/_rollupPluginBabelHelpers-ce69e916.js.map +1 -0
  187. package/actionTypes-a5283c75.js +8 -0
  188. package/actionTypes-a5283c75.js.map +1 -0
  189. package/cjs/App.js +276 -218
  190. package/cjs/App.js.map +1 -1
  191. package/cjs/Channel/components/ChannelHeader.js +45 -41
  192. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  193. package/cjs/Channel/components/ChannelUI.js +99 -127
  194. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  195. package/cjs/Channel/components/FileViewer.js +55 -52
  196. package/cjs/Channel/components/FileViewer.js.map +1 -1
  197. package/cjs/Channel/components/FrozenNotification.js +12 -7
  198. package/cjs/Channel/components/FrozenNotification.js.map +1 -1
  199. package/cjs/Channel/components/Message.js +241 -233
  200. package/cjs/Channel/components/Message.js.map +1 -1
  201. package/cjs/Channel/components/MessageInput.js +145 -127
  202. package/cjs/Channel/components/MessageInput.js.map +1 -1
  203. package/cjs/Channel/components/MessageList.js +258 -174
  204. package/cjs/Channel/components/MessageList.js.map +1 -1
  205. package/cjs/Channel/components/RemoveMessageModal.js +33 -30
  206. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  207. package/cjs/Channel/components/SuggestedMentionList.js +138 -193
  208. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  209. package/cjs/Channel/components/TypingIndicator.js +43 -61
  210. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  211. package/cjs/Channel/components/UnreadCount.js +18 -20
  212. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  213. package/cjs/Channel/context.js +12 -23
  214. package/cjs/Channel/context.js.map +1 -1
  215. package/cjs/Channel.js +67 -43
  216. package/cjs/Channel.js.map +1 -1
  217. package/cjs/ChannelList/components/AddChannel.js +29 -30
  218. package/cjs/ChannelList/components/AddChannel.js.map +1 -1
  219. package/cjs/ChannelList/components/ChannelListHeader.js +32 -28
  220. package/cjs/ChannelList/components/ChannelListHeader.js.map +1 -1
  221. package/cjs/ChannelList/components/ChannelListUI.js +99 -141
  222. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  223. package/cjs/ChannelList/components/ChannelPreview.js +71 -82
  224. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  225. package/cjs/ChannelList/components/ChannelPreviewAction.js +34 -35
  226. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  227. package/cjs/ChannelList/context.js +7 -8
  228. package/cjs/ChannelList/context.js.map +1 -1
  229. package/cjs/ChannelList.js +31 -31
  230. package/cjs/ChannelList.js.map +1 -1
  231. package/cjs/{ChannelListProvider-c2148b43.js → ChannelListProvider-b3ffe21a.js} +232 -284
  232. package/cjs/ChannelListProvider-b3ffe21a.js.map +1 -0
  233. package/cjs/{ChannelProvider-cf5dc7e3.js → ChannelProvider-b6890429.js} +608 -714
  234. package/cjs/ChannelProvider-b6890429.js.map +1 -0
  235. package/cjs/ChannelSettings/components/ChannelProfile.js +33 -46
  236. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  237. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +45 -48
  238. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  239. package/cjs/ChannelSettings/components/EditDetailsModal.js +47 -58
  240. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  241. package/cjs/ChannelSettings/components/LeaveChannel.js +40 -46
  242. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  243. package/cjs/ChannelSettings/components/ModerationPanel.js +516 -605
  244. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -1
  245. package/cjs/ChannelSettings/components/UserListItem.js +71 -72
  246. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  247. package/cjs/ChannelSettings/components/UserPanel.js +29 -32
  248. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  249. package/cjs/ChannelSettings/context.js +55 -59
  250. package/cjs/ChannelSettings/context.js.map +1 -1
  251. package/cjs/ChannelSettings.js +20 -20
  252. package/cjs/ChannelSettings.js.map +1 -1
  253. package/cjs/CreateChannel/components/CreateChannelUI.js +24 -24
  254. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  255. package/cjs/CreateChannel/components/InviteUsers.js +102 -124
  256. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -1
  257. package/cjs/CreateChannel/components/SelectChannelType.js +41 -42
  258. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  259. package/cjs/CreateChannel/context.js +4 -4
  260. package/cjs/CreateChannel.js +22 -21
  261. package/cjs/CreateChannel.js.map +1 -1
  262. package/cjs/CreateChannelProvider-e1376032.js +52 -0
  263. package/cjs/CreateChannelProvider-e1376032.js.map +1 -0
  264. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +33 -43
  265. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js.map +1 -1
  266. package/cjs/CreateOpenChannel/context.js +33 -33
  267. package/cjs/CreateOpenChannel/context.js.map +1 -1
  268. package/cjs/CreateOpenChannel.js +18 -17
  269. package/cjs/CreateOpenChannel.js.map +1 -1
  270. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -13
  271. package/cjs/EditUserProfile/components/EditUserProfileUI.js.map +1 -1
  272. package/cjs/EditUserProfile/context.js +0 -2
  273. package/cjs/EditUserProfile/context.js.map +1 -1
  274. package/cjs/EditUserProfile.js +18 -17
  275. package/cjs/EditUserProfile.js.map +1 -1
  276. package/cjs/{LocalizationContext-2b3f310d.js → LocalizationContext-461a0816.js} +9 -11
  277. package/cjs/{LocalizationContext-2b3f310d.js.map → LocalizationContext-461a0816.js.map} +1 -1
  278. package/cjs/MediaQueryContext-de7c63bc.js +94 -0
  279. package/cjs/MediaQueryContext-de7c63bc.js.map +1 -0
  280. package/cjs/MemberList-593809cb.js +401 -0
  281. package/cjs/MemberList-593809cb.js.map +1 -0
  282. package/cjs/Message/context.js +40 -0
  283. package/cjs/Message/context.js.map +1 -0
  284. package/cjs/MessageSearch/components/MessageSearchUI.js +61 -70
  285. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  286. package/cjs/MessageSearch/context.js +201 -224
  287. package/cjs/MessageSearch/context.js.map +1 -1
  288. package/cjs/MessageSearch.js +46 -58
  289. package/cjs/MessageSearch.js.map +1 -1
  290. package/cjs/OpenChannel/components/FrozenChannelNotification.js +8 -6
  291. package/cjs/OpenChannel/components/FrozenChannelNotification.js.map +1 -1
  292. package/cjs/OpenChannel/components/OpenChannelHeader.js +27 -25
  293. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  294. package/cjs/OpenChannel/components/OpenChannelInput.js +36 -31
  295. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  296. package/cjs/OpenChannel/components/OpenChannelMessage.js +168 -190
  297. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  298. package/cjs/OpenChannel/components/OpenChannelMessageList.js +72 -92
  299. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  300. package/cjs/OpenChannel/components/OpenChannelUI.js +52 -49
  301. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  302. package/cjs/OpenChannel/context.js +8 -9
  303. package/cjs/OpenChannel/context.js.map +1 -1
  304. package/cjs/OpenChannel.js +34 -28
  305. package/cjs/OpenChannel.js.map +1 -1
  306. package/cjs/OpenChannelList/components/OpenChannelListUI.js +61 -76
  307. package/cjs/OpenChannelList/components/OpenChannelListUI.js.map +1 -1
  308. package/cjs/OpenChannelList/components/OpenChannelPreview.js +21 -22
  309. package/cjs/OpenChannelList/components/OpenChannelPreview.js.map +1 -1
  310. package/cjs/OpenChannelList/context.js +3 -4
  311. package/cjs/OpenChannelList/context.js.map +1 -1
  312. package/cjs/OpenChannelList.js +26 -24
  313. package/cjs/OpenChannelList.js.map +1 -1
  314. package/cjs/OpenChannelListProvider-39c11f87.js +439 -0
  315. package/cjs/OpenChannelListProvider-39c11f87.js.map +1 -0
  316. package/cjs/OpenChannelProvider-e794e881.js +1894 -0
  317. package/cjs/OpenChannelProvider-e794e881.js.map +1 -0
  318. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +47 -56
  319. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  320. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +26 -31
  321. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  322. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +45 -43
  323. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  324. package/cjs/OpenChannelSettings/components/OperatorUI.js +508 -586
  325. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  326. package/cjs/OpenChannelSettings/components/ParticipantUI.js +15 -16
  327. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  328. package/cjs/OpenChannelSettings/context.js +57 -70
  329. package/cjs/OpenChannelSettings/context.js.map +1 -1
  330. package/cjs/OpenChannelSettings.js +19 -20
  331. package/cjs/OpenChannelSettings.js.map +1 -1
  332. package/cjs/{RemoveMessageModal-c01eb93b.js → RemoveMessageModal-29fa1a05.js} +19 -14
  333. package/cjs/RemoveMessageModal-29fa1a05.js.map +1 -0
  334. package/cjs/SendbirdProvider.js +830 -410
  335. package/cjs/SendbirdProvider.js.map +1 -1
  336. package/cjs/Thread/components/ParentMessageInfo.js +229 -215
  337. package/cjs/Thread/components/ParentMessageInfo.js.map +1 -1
  338. package/cjs/Thread/components/ParentMessageInfoItem.js +109 -88
  339. package/cjs/Thread/components/ParentMessageInfoItem.js.map +1 -1
  340. package/cjs/Thread/components/ThreadHeader.js +22 -23
  341. package/cjs/Thread/components/ThreadHeader.js.map +1 -1
  342. package/cjs/Thread/components/ThreadList.js +107 -83
  343. package/cjs/Thread/components/ThreadList.js.map +1 -1
  344. package/cjs/Thread/components/ThreadListItem.js +291 -271
  345. package/cjs/Thread/components/ThreadListItem.js.map +1 -1
  346. package/cjs/Thread/components/ThreadMessageInput.js +144 -111
  347. package/cjs/Thread/components/ThreadMessageInput.js.map +1 -1
  348. package/cjs/Thread/components/ThreadUI.js +169 -139
  349. package/cjs/Thread/components/ThreadUI.js.map +1 -1
  350. package/cjs/Thread/context/types.js +13 -14
  351. package/cjs/Thread/context/types.js.map +1 -1
  352. package/cjs/Thread/context.js +8 -8
  353. package/cjs/Thread.js +86 -57
  354. package/cjs/Thread.js.map +1 -1
  355. package/cjs/ThreadProvider-e2098298.js +1704 -0
  356. package/cjs/ThreadProvider-e2098298.js.map +1 -0
  357. package/cjs/{UserProfileContext-9d60cdc4.js → UserProfileContext-1bcc48a2.js} +1 -4
  358. package/cjs/{UserProfileContext-9d60cdc4.js.map → UserProfileContext-1bcc48a2.js.map} +1 -1
  359. package/cjs/VoiceMessageInputWrapper-f18d6a5e.js +175 -0
  360. package/cjs/VoiceMessageInputWrapper-f18d6a5e.js.map +1 -0
  361. package/cjs/VoicePlayer/context.js +16 -0
  362. package/cjs/{NotificationChannel → VoicePlayer}/context.js.map +1 -1
  363. package/cjs/VoicePlayer/useVoicePlayer.js +76 -0
  364. package/cjs/VoicePlayer/useVoicePlayer.js.map +1 -0
  365. package/cjs/VoiceRecorder/context.js +128 -0
  366. package/cjs/VoiceRecorder/context.js.map +1 -0
  367. package/cjs/VoiceRecorder/useVoiceRecorder.js +114 -0
  368. package/cjs/VoiceRecorder/useVoiceRecorder.js.map +1 -0
  369. package/cjs/WebAudioUtils-aedad0b1.js +126 -0
  370. package/cjs/WebAudioUtils-aedad0b1.js.map +1 -0
  371. package/cjs/{_rollupPluginBabelHelpers-a7254c9d.js → _rollupPluginBabelHelpers-919a4db3.js} +17 -10
  372. package/cjs/_rollupPluginBabelHelpers-919a4db3.js.map +1 -0
  373. package/cjs/actionTypes-1e75e6e9.js +10 -0
  374. package/cjs/actionTypes-1e75e6e9.js.map +1 -0
  375. package/cjs/{color-89f33656.js → color-48ff06b2.js} +13 -21
  376. package/cjs/color-48ff06b2.js.map +1 -0
  377. package/cjs/{compareIds-ca869c2e.js → compareIds-8ed822c1.js} +5 -6
  378. package/cjs/compareIds-8ed822c1.js.map +1 -0
  379. package/cjs/{const-db71e993.js → const-49de651c.js} +4 -4
  380. package/cjs/const-49de651c.js.map +1 -0
  381. package/cjs/const-852d5677.js +20 -0
  382. package/cjs/const-852d5677.js.map +1 -0
  383. package/cjs/consts-2580246d.js +6 -0
  384. package/cjs/consts-2580246d.js.map +1 -0
  385. package/cjs/consts-5851f376.js +6 -0
  386. package/cjs/consts-5851f376.js.map +1 -0
  387. package/cjs/consts-6f02fcc4.js +41 -0
  388. package/cjs/consts-6f02fcc4.js.map +1 -0
  389. package/cjs/consts-e9ee4cf4.js +6 -0
  390. package/cjs/consts-e9ee4cf4.js.map +1 -0
  391. package/cjs/{context-2f5d47fd.js → context-4d89551f.js} +6 -5
  392. package/cjs/{context-2f5d47fd.js.map → context-4d89551f.js.map} +1 -1
  393. package/cjs/dist/index.css +901 -481
  394. package/cjs/dist/index.css.map +1 -1
  395. package/cjs/handlers/OpenChannelHandler.js.map +1 -1
  396. package/cjs/handlers/SessionHandler.js.map +1 -1
  397. package/cjs/index-0126dbb4.js +161 -0
  398. package/cjs/index-0126dbb4.js.map +1 -0
  399. package/cjs/index-1a223893.js +362 -0
  400. package/cjs/index-1a223893.js.map +1 -0
  401. package/cjs/index-223e9372.js +79 -0
  402. package/cjs/index-223e9372.js.map +1 -0
  403. package/cjs/{index-621e74bd.js → index-420b8e6d.js} +29 -37
  404. package/cjs/index-420b8e6d.js.map +1 -0
  405. package/cjs/{index-d6ef2a60.js → index-44186883.js} +11 -25
  406. package/cjs/index-44186883.js.map +1 -0
  407. package/cjs/{index-de151767.js → index-5e6194f8.js} +1 -1
  408. package/cjs/{index-de151767.js.map → index-5e6194f8.js.map} +1 -1
  409. package/cjs/{index-73467e1d.js → index-60bf4d5c.js} +2 -2
  410. package/cjs/{index-73467e1d.js.map → index-60bf4d5c.js.map} +1 -1
  411. package/cjs/{index-0988ab25.js → index-60ea6503.js} +57 -3
  412. package/cjs/index-60ea6503.js.map +1 -0
  413. package/cjs/index-6a46ed00.js +292 -0
  414. package/cjs/index-6a46ed00.js.map +1 -0
  415. package/cjs/{index-c4d4ef49.js → index-7a68d56f.js} +1 -1
  416. package/cjs/index-7a68d56f.js.map +1 -0
  417. package/cjs/index-81aad270.js +197 -0
  418. package/cjs/index-81aad270.js.map +1 -0
  419. package/cjs/{index-2c5dd48c.js → index-849c0736.js} +2 -2
  420. package/cjs/{index-2c5dd48c.js.map → index-849c0736.js.map} +1 -1
  421. package/cjs/{index-be9c6237.js → index-a51f1b7d.js} +55 -63
  422. package/cjs/index-a51f1b7d.js.map +1 -0
  423. package/cjs/{index-e240e852.js → index-a7025294.js} +42 -51
  424. package/cjs/index-a7025294.js.map +1 -0
  425. package/cjs/index-bca3d144.js +587 -0
  426. package/cjs/index-bca3d144.js.map +1 -0
  427. package/cjs/index-f4682499.js +57 -0
  428. package/cjs/index-f4682499.js.map +1 -0
  429. package/cjs/index-f5399132.js +419 -0
  430. package/cjs/index-f5399132.js.map +1 -0
  431. package/cjs/index.js +77 -58
  432. package/cjs/index.js.map +1 -1
  433. package/cjs/index.module-10ef9afc.js +6 -0
  434. package/cjs/index.module-10ef9afc.js.map +1 -0
  435. package/cjs/lame.all.js +2541 -0
  436. package/cjs/lame.all.js.map +1 -0
  437. package/cjs/sendbirdSelectors.js +307 -417
  438. package/cjs/sendbirdSelectors.js.map +1 -1
  439. package/cjs/{stringSet-91b919f6.js → stringSet-d1cee26a.js} +110 -90
  440. package/cjs/stringSet-d1cee26a.js.map +1 -0
  441. package/cjs/tokenize-d3bb1637.js +164 -0
  442. package/cjs/tokenize-d3bb1637.js.map +1 -0
  443. package/cjs/topics-00c67dd6.js +18 -0
  444. package/cjs/topics-00c67dd6.js.map +1 -0
  445. package/cjs/types-2e9e46b2.js +17 -0
  446. package/cjs/types-2e9e46b2.js.map +1 -0
  447. package/cjs/ui/Accordion.js +21 -24
  448. package/cjs/ui/Accordion.js.map +1 -1
  449. package/cjs/ui/AccordionGroup.js +10 -13
  450. package/cjs/ui/AccordionGroup.js.map +1 -1
  451. package/cjs/ui/AdminMessage.js +10 -13
  452. package/cjs/ui/AdminMessage.js.map +1 -1
  453. package/cjs/ui/Avatar.js +57 -79
  454. package/cjs/ui/Avatar.js.map +1 -1
  455. package/cjs/ui/Badge.js +16 -15
  456. package/cjs/ui/Badge.js.map +1 -1
  457. package/cjs/ui/BottomSheet.js +14 -12
  458. package/cjs/ui/BottomSheet.js.map +1 -1
  459. package/cjs/ui/Button.js +20 -35
  460. package/cjs/ui/Button.js.map +1 -1
  461. package/cjs/ui/ChannelAvatar.js +38 -41
  462. package/cjs/ui/ChannelAvatar.js.map +1 -1
  463. package/cjs/ui/Checkbox.js +11 -13
  464. package/cjs/ui/Checkbox.js.map +1 -1
  465. package/cjs/ui/ConnectionStatus.js +7 -5
  466. package/cjs/ui/ConnectionStatus.js.map +1 -1
  467. package/cjs/ui/ContextMenu.js +172 -198
  468. package/cjs/ui/ContextMenu.js.map +1 -1
  469. package/cjs/ui/DateSeparator.js +12 -14
  470. package/cjs/ui/DateSeparator.js.map +1 -1
  471. package/cjs/ui/EmojiReactions.js +297 -107
  472. package/cjs/ui/EmojiReactions.js.map +1 -1
  473. package/cjs/ui/FileMessageItemBody.js +22 -23
  474. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  475. package/cjs/ui/FileViewer.js +36 -36
  476. package/cjs/ui/FileViewer.js.map +1 -1
  477. package/cjs/ui/Icon.js +447 -623
  478. package/cjs/ui/Icon.js.map +1 -1
  479. package/cjs/ui/IconButton.js +20 -31
  480. package/cjs/ui/IconButton.js.map +1 -1
  481. package/cjs/ui/ImageRenderer.js +34 -43
  482. package/cjs/ui/ImageRenderer.js.map +1 -1
  483. package/cjs/ui/Input.js +16 -16
  484. package/cjs/ui/Input.js.map +1 -1
  485. package/cjs/ui/Label.js +2 -2
  486. package/cjs/ui/LinkLabel.js +4 -3
  487. package/cjs/ui/LinkLabel.js.map +1 -1
  488. package/cjs/ui/Loader.js +10 -12
  489. package/cjs/ui/Loader.js.map +1 -1
  490. package/cjs/ui/MentionLabel.js +58 -65
  491. package/cjs/ui/MentionLabel.js.map +1 -1
  492. package/cjs/ui/MentionUserLabel.js +12 -10
  493. package/cjs/ui/MentionUserLabel.js.map +1 -1
  494. package/cjs/ui/MessageContent.js +203 -545
  495. package/cjs/ui/MessageContent.js.map +1 -1
  496. package/cjs/ui/MessageInput.js +338 -118
  497. package/cjs/ui/MessageInput.js.map +1 -1
  498. package/cjs/ui/MessageItemMenu.js +70 -77
  499. package/cjs/ui/MessageItemMenu.js.map +1 -1
  500. package/cjs/ui/MessageItemReactionMenu.js +56 -61
  501. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  502. package/cjs/ui/MessageSearchFileItem.js +56 -51
  503. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  504. package/cjs/ui/MessageSearchItem.js +42 -41
  505. package/cjs/ui/MessageSearchItem.js.map +1 -1
  506. package/cjs/ui/MessageStatus.js +10 -11
  507. package/cjs/ui/MessageStatus.js.map +1 -1
  508. package/cjs/ui/Modal.js +52 -46
  509. package/cjs/ui/Modal.js.map +1 -1
  510. package/cjs/ui/MutedAvatarOverlay.js +10 -10
  511. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  512. package/cjs/ui/OGMessageItemBody.js +67 -63
  513. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  514. package/cjs/ui/OpenChannelAdminMessage.js +8 -7
  515. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  516. package/cjs/ui/OpenChannelAvatar.js +18 -17
  517. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  518. package/cjs/ui/OpenchannelConversationHeader.js +17 -13
  519. package/cjs/ui/OpenchannelConversationHeader.js.map +1 -1
  520. package/cjs/ui/OpenchannelFileMessage.js +136 -149
  521. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  522. package/cjs/ui/OpenchannelOGMessage.js +200 -233
  523. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  524. package/cjs/ui/OpenchannelThumbnailMessage.js +211 -220
  525. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  526. package/cjs/ui/OpenchannelUserMessage.js +160 -173
  527. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  528. package/cjs/ui/PlaceHolder.js +5 -6
  529. package/cjs/ui/PlaceHolder.js.map +1 -1
  530. package/cjs/ui/PlaybackTime.js +35 -0
  531. package/cjs/ui/PlaybackTime.js.map +1 -0
  532. package/cjs/ui/ProgressBar.js +40 -0
  533. package/cjs/ui/ProgressBar.js.map +1 -0
  534. package/cjs/ui/QuoteMessage.js +50 -44
  535. package/cjs/ui/QuoteMessage.js.map +1 -1
  536. package/cjs/ui/QuoteMessageInput.js +31 -29
  537. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  538. package/cjs/ui/ReactionBadge.js +13 -21
  539. package/cjs/ui/ReactionBadge.js.map +1 -1
  540. package/cjs/ui/ReactionButton.js +27 -26
  541. package/cjs/ui/ReactionButton.js.map +1 -1
  542. package/cjs/ui/SortByRow.js +14 -18
  543. package/cjs/ui/SortByRow.js.map +1 -1
  544. package/cjs/ui/TextButton.js +13 -21
  545. package/cjs/ui/TextButton.js.map +1 -1
  546. package/cjs/ui/TextMessageItemBody.js +41 -48
  547. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  548. package/cjs/ui/ThreadReplies.js +25 -22
  549. package/cjs/ui/ThreadReplies.js.map +1 -1
  550. package/cjs/ui/ThumbnailMessageItemBody.js +43 -45
  551. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  552. package/cjs/ui/Toggle.js +202 -0
  553. package/cjs/ui/Toggle.js.map +1 -0
  554. package/cjs/ui/Tooltip.js +8 -9
  555. package/cjs/ui/Tooltip.js.map +1 -1
  556. package/cjs/ui/TooltipWrapper.js +17 -20
  557. package/cjs/ui/TooltipWrapper.js.map +1 -1
  558. package/cjs/ui/UnknownMessageItemBody.js +21 -22
  559. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  560. package/cjs/ui/UserListItem.js +76 -76
  561. package/cjs/ui/UserListItem.js.map +1 -1
  562. package/cjs/ui/UserProfile.js +31 -29
  563. package/cjs/ui/UserProfile.js.map +1 -1
  564. package/cjs/ui/VoiceMessageItemBody.js +108 -0
  565. package/cjs/ui/VoiceMessageItemBody.js.map +1 -0
  566. package/cjs/ui/VoiceMessgeInput.js +22 -0
  567. package/cjs/ui/VoiceMessgeInput.js.map +1 -0
  568. package/cjs/ui/Word.js +31 -39
  569. package/cjs/ui/Word.js.map +1 -1
  570. package/cjs/useDirtyGetMentions-7b6c8a19.js +77 -0
  571. package/cjs/useDirtyGetMentions-7b6c8a19.js.map +1 -0
  572. package/cjs/useLongPress-4c2e9a3b.js +87 -0
  573. package/cjs/useLongPress-4c2e9a3b.js.map +1 -0
  574. package/cjs/useSendbirdStateContext.js +2 -3
  575. package/cjs/useSendbirdStateContext.js.map +1 -1
  576. package/cjs/utils/message/getOutgoingMessageState.js +16 -21
  577. package/cjs/utils/message/getOutgoingMessageState.js.map +1 -1
  578. package/cjs/utils/message/isVoiceMessage.js +12 -0
  579. package/cjs/utils/message/isVoiceMessage.js.map +1 -0
  580. package/cjs/{utils-3714e90e.js → utils-22d05a53.js} +3 -7
  581. package/cjs/{utils-3714e90e.js.map → utils-22d05a53.js.map} +1 -1
  582. package/cjs/{utils-1f6c6626.js → utils-3dacb9bc.js} +1 -1
  583. package/cjs/{utils-1f6c6626.js.map → utils-3dacb9bc.js.map} +1 -1
  584. package/cjs/utils-c5d4c36e.js +35 -0
  585. package/cjs/utils-c5d4c36e.js.map +1 -0
  586. package/cjs/utils-f1c09ec3.js +31 -0
  587. package/cjs/utils-f1c09ec3.js.map +1 -0
  588. package/cjs/uuid-d86ea01f.js +15 -0
  589. package/cjs/{uuid-11d4efe8.js.map → uuid-d86ea01f.js.map} +1 -1
  590. package/cjs/withSendbird.js +5 -6
  591. package/cjs/withSendbird.js.map +1 -1
  592. package/{color-ff5f9069.js → color-4ca8a2ea.js} +5 -14
  593. package/{color-ff5f9069.js.map → color-4ca8a2ea.js.map} +1 -1
  594. package/{compareIds-9430f9d8.js → compareIds-08858dd3.js} +5 -6
  595. package/compareIds-08858dd3.js.map +1 -0
  596. package/{const-83764204.js → const-714046e0.js} +4 -4
  597. package/const-714046e0.js.map +1 -0
  598. package/const-a77c08c9.js +13 -0
  599. package/const-a77c08c9.js.map +1 -0
  600. package/consts-9393e7c8.js +27 -0
  601. package/consts-9393e7c8.js.map +1 -0
  602. package/consts-aecb8fab.js +4 -0
  603. package/consts-aecb8fab.js.map +1 -0
  604. package/consts-d46e0fc1.js +4 -0
  605. package/consts-d46e0fc1.js.map +1 -0
  606. package/consts-decd9c7d.js +4 -0
  607. package/consts-decd9c7d.js.map +1 -0
  608. package/context-9a6b8b8a.js +13 -0
  609. package/{context-9a69e846.js.map → context-9a6b8b8a.js.map} +1 -1
  610. package/dist/index.css +901 -481
  611. package/dist/index.css.map +1 -1
  612. package/handlers/OpenChannelHandler.js.map +1 -1
  613. package/handlers/SessionHandler.js.map +1 -1
  614. package/{index-3f26a31c.js → index-06f34585.js} +2 -2
  615. package/{index-3f26a31c.js.map → index-06f34585.js.map} +1 -1
  616. package/{index-134314e2.js → index-20880943.js} +29 -37
  617. package/index-20880943.js.map +1 -0
  618. package/index-3130ac38.js +51 -0
  619. package/index-3130ac38.js.map +1 -0
  620. package/{index-e5b78039.js → index-3165e396.js} +1 -1
  621. package/index-3165e396.js.map +1 -0
  622. package/index-400417a1.js +154 -0
  623. package/index-400417a1.js.map +1 -0
  624. package/index-5644a6c0.js +283 -0
  625. package/index-5644a6c0.js.map +1 -0
  626. package/{index-defabece.js → index-5db37327.js} +57 -4
  627. package/index-5db37327.js.map +1 -0
  628. package/{index-fc4702b7.js → index-7c9ebc67.js} +55 -63
  629. package/index-7c9ebc67.js.map +1 -0
  630. package/{index-d3f6dbb9.js → index-9781d2b9.js} +2 -2
  631. package/{index-d3f6dbb9.js.map → index-9781d2b9.js.map} +1 -1
  632. package/index-b96440b7.js +76 -0
  633. package/index-b96440b7.js.map +1 -0
  634. package/index-bf72ef7c.js +355 -0
  635. package/index-bf72ef7c.js.map +1 -0
  636. package/{index-1b91b116.js → index-c6df8184.js} +39 -48
  637. package/index-c6df8184.js.map +1 -0
  638. package/{index-07e060cd.js → index-d9c12cf4.js} +1 -1
  639. package/{index-07e060cd.js.map → index-d9c12cf4.js.map} +1 -1
  640. package/{index-44470dab.js → index-e1cd2fcf.js} +11 -25
  641. package/index-e1cd2fcf.js.map +1 -0
  642. package/index-edfb3327.js +413 -0
  643. package/index-edfb3327.js.map +1 -0
  644. package/index-fd51c7d1.js +541 -0
  645. package/index-fd51c7d1.js.map +1 -0
  646. package/index-fd95258e.js +182 -0
  647. package/index-fd95258e.js.map +1 -0
  648. package/index.d.ts +169 -122
  649. package/index.js +77 -58
  650. package/index.js.map +1 -1
  651. package/index.module-8c144786.js +4 -0
  652. package/index.module-8c144786.js.map +1 -0
  653. package/lame.all.js +2537 -0
  654. package/lame.all.js.map +1 -0
  655. package/package.json +61 -41
  656. package/sendbirdSelectors.js +307 -417
  657. package/sendbirdSelectors.js.map +1 -1
  658. package/{stringSet-d555d877.js → stringSet-d368e289.js} +110 -90
  659. package/stringSet-d368e289.js.map +1 -0
  660. package/tokenize-7056afb7.js +159 -0
  661. package/tokenize-7056afb7.js.map +1 -0
  662. package/topics-f9628f1f.js +16 -0
  663. package/topics-f9628f1f.js.map +1 -0
  664. package/types-2b508dbc.js +15 -0
  665. package/types-2b508dbc.js.map +1 -0
  666. package/ui/Accordion.js +21 -24
  667. package/ui/Accordion.js.map +1 -1
  668. package/ui/AccordionGroup.js +10 -13
  669. package/ui/AccordionGroup.js.map +1 -1
  670. package/ui/AdminMessage.js +10 -13
  671. package/ui/AdminMessage.js.map +1 -1
  672. package/ui/Avatar.js +57 -79
  673. package/ui/Avatar.js.map +1 -1
  674. package/ui/Badge.js +16 -15
  675. package/ui/Badge.js.map +1 -1
  676. package/ui/BottomSheet.js +14 -12
  677. package/ui/BottomSheet.js.map +1 -1
  678. package/ui/Button.js +20 -35
  679. package/ui/Button.js.map +1 -1
  680. package/ui/ChannelAvatar.js +38 -41
  681. package/ui/ChannelAvatar.js.map +1 -1
  682. package/ui/Checkbox.js +11 -13
  683. package/ui/Checkbox.js.map +1 -1
  684. package/ui/ConnectionStatus.js +7 -5
  685. package/ui/ConnectionStatus.js.map +1 -1
  686. package/ui/ContextMenu.js +173 -199
  687. package/ui/ContextMenu.js.map +1 -1
  688. package/ui/DateSeparator.js +12 -14
  689. package/ui/DateSeparator.js.map +1 -1
  690. package/ui/EmojiReactions.js +298 -108
  691. package/ui/EmojiReactions.js.map +1 -1
  692. package/ui/FileMessageItemBody.js +22 -23
  693. package/ui/FileMessageItemBody.js.map +1 -1
  694. package/ui/FileViewer.js +36 -36
  695. package/ui/FileViewer.js.map +1 -1
  696. package/ui/Icon.js +448 -622
  697. package/ui/Icon.js.map +1 -1
  698. package/ui/IconButton.js +20 -31
  699. package/ui/IconButton.js.map +1 -1
  700. package/ui/ImageRenderer.js +34 -43
  701. package/ui/ImageRenderer.js.map +1 -1
  702. package/ui/Input.js +16 -16
  703. package/ui/Input.js.map +1 -1
  704. package/ui/Label.js +2 -2
  705. package/ui/LinkLabel.js +4 -3
  706. package/ui/LinkLabel.js.map +1 -1
  707. package/ui/Loader.js +10 -12
  708. package/ui/Loader.js.map +1 -1
  709. package/ui/MentionLabel.js +58 -65
  710. package/ui/MentionLabel.js.map +1 -1
  711. package/ui/MentionUserLabel.js +12 -10
  712. package/ui/MentionUserLabel.js.map +1 -1
  713. package/ui/MessageContent.js +206 -548
  714. package/ui/MessageContent.js.map +1 -1
  715. package/ui/MessageInput.js +338 -119
  716. package/ui/MessageInput.js.map +1 -1
  717. package/ui/MessageItemMenu.js +70 -77
  718. package/ui/MessageItemMenu.js.map +1 -1
  719. package/ui/MessageItemReactionMenu.js +56 -61
  720. package/ui/MessageItemReactionMenu.js.map +1 -1
  721. package/ui/MessageSearchFileItem.js +55 -50
  722. package/ui/MessageSearchFileItem.js.map +1 -1
  723. package/ui/MessageSearchItem.js +41 -40
  724. package/ui/MessageSearchItem.js.map +1 -1
  725. package/ui/MessageStatus.js +10 -11
  726. package/ui/MessageStatus.js.map +1 -1
  727. package/ui/Modal.js +52 -46
  728. package/ui/Modal.js.map +1 -1
  729. package/ui/MutedAvatarOverlay.js +10 -10
  730. package/ui/MutedAvatarOverlay.js.map +1 -1
  731. package/ui/OGMessageItemBody.js +68 -64
  732. package/ui/OGMessageItemBody.js.map +1 -1
  733. package/ui/OpenChannelAdminMessage.js +8 -7
  734. package/ui/OpenChannelAdminMessage.js.map +1 -1
  735. package/ui/OpenChannelAvatar.js +18 -17
  736. package/ui/OpenChannelAvatar.js.map +1 -1
  737. package/ui/OpenchannelConversationHeader.js +17 -13
  738. package/ui/OpenchannelConversationHeader.js.map +1 -1
  739. package/ui/OpenchannelFileMessage.js +136 -149
  740. package/ui/OpenchannelFileMessage.js.map +1 -1
  741. package/ui/OpenchannelOGMessage.js +200 -233
  742. package/ui/OpenchannelOGMessage.js.map +1 -1
  743. package/ui/OpenchannelThumbnailMessage.js +211 -220
  744. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  745. package/ui/OpenchannelUserMessage.js +160 -173
  746. package/ui/OpenchannelUserMessage.js.map +1 -1
  747. package/ui/PlaceHolder.js +5 -6
  748. package/ui/PlaceHolder.js.map +1 -1
  749. package/ui/PlaybackTime.js +26 -0
  750. package/ui/PlaybackTime.js.map +1 -0
  751. package/ui/ProgressBar.js +30 -0
  752. package/ui/ProgressBar.js.map +1 -0
  753. package/ui/QuoteMessage.js +50 -44
  754. package/ui/QuoteMessage.js.map +1 -1
  755. package/ui/QuoteMessageInput.js +31 -29
  756. package/ui/QuoteMessageInput.js.map +1 -1
  757. package/ui/ReactionBadge.js +13 -21
  758. package/ui/ReactionBadge.js.map +1 -1
  759. package/ui/ReactionButton.js +27 -26
  760. package/ui/ReactionButton.js.map +1 -1
  761. package/ui/SortByRow.js +14 -18
  762. package/ui/SortByRow.js.map +1 -1
  763. package/ui/TextButton.js +13 -21
  764. package/ui/TextButton.js.map +1 -1
  765. package/ui/TextMessageItemBody.js +41 -48
  766. package/ui/TextMessageItemBody.js.map +1 -1
  767. package/ui/ThreadReplies.js +25 -22
  768. package/ui/ThreadReplies.js.map +1 -1
  769. package/ui/ThumbnailMessageItemBody.js +43 -45
  770. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  771. package/ui/Toggle.js +191 -0
  772. package/ui/Toggle.js.map +1 -0
  773. package/ui/Tooltip.js +8 -9
  774. package/ui/Tooltip.js.map +1 -1
  775. package/ui/TooltipWrapper.js +17 -20
  776. package/ui/TooltipWrapper.js.map +1 -1
  777. package/ui/UnknownMessageItemBody.js +21 -22
  778. package/ui/UnknownMessageItemBody.js.map +1 -1
  779. package/ui/UserListItem.js +76 -76
  780. package/ui/UserListItem.js.map +1 -1
  781. package/ui/UserProfile.js +31 -29
  782. package/ui/UserProfile.js.map +1 -1
  783. package/ui/VoiceMessageItemBody.js +99 -0
  784. package/ui/VoiceMessageItemBody.js.map +1 -0
  785. package/ui/VoiceMessgeInput.js +14 -0
  786. package/ui/VoiceMessgeInput.js.map +1 -0
  787. package/ui/Word.js +31 -39
  788. package/ui/Word.js.map +1 -1
  789. package/useDirtyGetMentions-e0c0f521.js +75 -0
  790. package/useDirtyGetMentions-e0c0f521.js.map +1 -0
  791. package/useLongPress-685c7391.js +85 -0
  792. package/useLongPress-685c7391.js.map +1 -0
  793. package/useSendbirdStateContext.js +2 -3
  794. package/useSendbirdStateContext.js.map +1 -1
  795. package/utils/message/getOutgoingMessageState.js +9 -15
  796. package/utils/message/getOutgoingMessageState.js.map +1 -1
  797. package/utils/message/isVoiceMessage.js +8 -0
  798. package/utils/message/isVoiceMessage.js.map +1 -0
  799. package/{utils-e720e03a.js → utils-256f157f.js} +1 -1
  800. package/{utils-e720e03a.js.map → utils-256f157f.js.map} +1 -1
  801. package/utils-4979f950.js +31 -0
  802. package/utils-4979f950.js.map +1 -0
  803. package/{utils-8b11ff42.js → utils-f82ad058.js} +3 -7
  804. package/{utils-8b11ff42.js.map → utils-f82ad058.js.map} +1 -1
  805. package/utils-fbc09760.js +29 -0
  806. package/utils-fbc09760.js.map +1 -0
  807. package/uuid-720c99c0.js +13 -0
  808. package/{uuid-286ed926.js.map → uuid-720c99c0.js.map} +1 -1
  809. package/withSendbird.js +5 -6
  810. package/withSendbird.js.map +1 -1
  811. package/ChannelListProvider-f461d265.js.map +0 -1
  812. package/ChannelProvider-554e7116.js.map +0 -1
  813. package/CreateChannelProvider-250cd98e.js +0 -55
  814. package/CreateChannelProvider-250cd98e.js.map +0 -1
  815. package/LocalizationContext-4df0cc32.js +0 -22
  816. package/MediaQueryContext-74183e34.js +0 -90
  817. package/MediaQueryContext-74183e34.js.map +0 -1
  818. package/MemberList-51c7afaa.js +0 -435
  819. package/MemberList-51c7afaa.js.map +0 -1
  820. package/NotificationChannel/components/NotificationChannelUI.js +0 -119
  821. package/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
  822. package/NotificationChannel/components/NotificationList.js +0 -111
  823. package/NotificationChannel/components/NotificationList.js.map +0 -1
  824. package/NotificationChannel/components/NotificationMessageWrap.js +0 -136
  825. package/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
  826. package/NotificationChannel/context.js +0 -12
  827. package/NotificationChannel.js +0 -58
  828. package/NotificationChannel.js.map +0 -1
  829. package/NotificationChannelProvider-0d8be1ad.js +0 -535
  830. package/NotificationChannelProvider-0d8be1ad.js.map +0 -1
  831. package/OpenChannelListProvider-8c753945.js +0 -434
  832. package/OpenChannelListProvider-8c753945.js.map +0 -1
  833. package/OpenChannelProvider-2fa01820.js +0 -2000
  834. package/OpenChannelProvider-2fa01820.js.map +0 -1
  835. package/RemoveMessageModal-9762fed1.js +0 -31
  836. package/RemoveMessageModal-9762fed1.js.map +0 -1
  837. package/ThreadProvider-6974fb3e.js +0 -1644
  838. package/ThreadProvider-6974fb3e.js.map +0 -1
  839. package/_rollupPluginBabelHelpers-498add61.js.map +0 -1
  840. package/actionTypes-ad2cbd73.js +0 -6
  841. package/actionTypes-ad2cbd73.js.map +0 -1
  842. package/cjs/ChannelListProvider-c2148b43.js.map +0 -1
  843. package/cjs/ChannelProvider-cf5dc7e3.js.map +0 -1
  844. package/cjs/CreateChannelProvider-c98de398.js +0 -62
  845. package/cjs/CreateChannelProvider-c98de398.js.map +0 -1
  846. package/cjs/MediaQueryContext-71862be1.js +0 -97
  847. package/cjs/MediaQueryContext-71862be1.js.map +0 -1
  848. package/cjs/MemberList-13566703.js +0 -441
  849. package/cjs/MemberList-13566703.js.map +0 -1
  850. package/cjs/NotificationChannel/components/NotificationChannelUI.js +0 -125
  851. package/cjs/NotificationChannel/components/NotificationChannelUI.js.map +0 -1
  852. package/cjs/NotificationChannel/components/NotificationList.js +0 -117
  853. package/cjs/NotificationChannel/components/NotificationList.js.map +0 -1
  854. package/cjs/NotificationChannel/components/NotificationMessageWrap.js +0 -142
  855. package/cjs/NotificationChannel/components/NotificationMessageWrap.js.map +0 -1
  856. package/cjs/NotificationChannel/context.js +0 -21
  857. package/cjs/NotificationChannel.js +0 -64
  858. package/cjs/NotificationChannel.js.map +0 -1
  859. package/cjs/NotificationChannelProvider-8f3b7320.js +0 -543
  860. package/cjs/NotificationChannelProvider-8f3b7320.js.map +0 -1
  861. package/cjs/OpenChannelListProvider-64043b4f.js +0 -443
  862. package/cjs/OpenChannelListProvider-64043b4f.js.map +0 -1
  863. package/cjs/OpenChannelProvider-5b56e629.js +0 -2009
  864. package/cjs/OpenChannelProvider-5b56e629.js.map +0 -1
  865. package/cjs/RemoveMessageModal-c01eb93b.js.map +0 -1
  866. package/cjs/ThreadProvider-d3c0c877.js +0 -1653
  867. package/cjs/ThreadProvider-d3c0c877.js.map +0 -1
  868. package/cjs/_rollupPluginBabelHelpers-a7254c9d.js.map +0 -1
  869. package/cjs/actionTypes-0e8bea91.js +0 -10
  870. package/cjs/actionTypes-0e8bea91.js.map +0 -1
  871. package/cjs/color-89f33656.js.map +0 -1
  872. package/cjs/compareIds-ca869c2e.js.map +0 -1
  873. package/cjs/const-55d167ca.js +0 -20
  874. package/cjs/const-55d167ca.js.map +0 -1
  875. package/cjs/const-db71e993.js.map +0 -1
  876. package/cjs/index-0988ab25.js.map +0 -1
  877. package/cjs/index-21b2339d.js +0 -701
  878. package/cjs/index-21b2339d.js.map +0 -1
  879. package/cjs/index-5c81f847.js +0 -194
  880. package/cjs/index-5c81f847.js.map +0 -1
  881. package/cjs/index-621e74bd.js.map +0 -1
  882. package/cjs/index-8de59744.js +0 -59
  883. package/cjs/index-8de59744.js.map +0 -1
  884. package/cjs/index-a52859ed.js +0 -360
  885. package/cjs/index-a52859ed.js.map +0 -1
  886. package/cjs/index-be9c6237.js.map +0 -1
  887. package/cjs/index-c4d4ef49.js.map +0 -1
  888. package/cjs/index-d6ef2a60.js.map +0 -1
  889. package/cjs/index-e240e852.js.map +0 -1
  890. package/cjs/stringSet-91b919f6.js.map +0 -1
  891. package/cjs/topics-ac9cf7ed.js +0 -22
  892. package/cjs/topics-ac9cf7ed.js.map +0 -1
  893. package/cjs/tslib.es6-43854eb1.js +0 -110
  894. package/cjs/tslib.es6-43854eb1.js.map +0 -1
  895. package/cjs/useLongPress-c7bf12b1.js +0 -118
  896. package/cjs/useLongPress-c7bf12b1.js.map +0 -1
  897. package/cjs/utils-4b529d96.js +0 -38
  898. package/cjs/utils-4b529d96.js.map +0 -1
  899. package/cjs/utils-65a380e8.js +0 -32
  900. package/cjs/utils-65a380e8.js.map +0 -1
  901. package/cjs/uuid-11d4efe8.js +0 -19
  902. package/compareIds-9430f9d8.js.map +0 -1
  903. package/const-83764204.js.map +0 -1
  904. package/const-9d11f204.js +0 -14
  905. package/const-9d11f204.js.map +0 -1
  906. package/context-9a69e846.js +0 -12
  907. package/index-134314e2.js.map +0 -1
  908. package/index-1572c90f.js +0 -57
  909. package/index-1572c90f.js.map +0 -1
  910. package/index-1b91b116.js.map +0 -1
  911. package/index-44470dab.js.map +0 -1
  912. package/index-5f08f486.js +0 -662
  913. package/index-5f08f486.js.map +0 -1
  914. package/index-d8e3ccee.js +0 -179
  915. package/index-d8e3ccee.js.map +0 -1
  916. package/index-defabece.js.map +0 -1
  917. package/index-e5b78039.js.map +0 -1
  918. package/index-ed65ee3b.js +0 -353
  919. package/index-ed65ee3b.js.map +0 -1
  920. package/index-fc4702b7.js.map +0 -1
  921. package/stringSet-d555d877.js.map +0 -1
  922. package/topics-351ea731.js +0 -13
  923. package/topics-351ea731.js.map +0 -1
  924. package/tslib.es6-bcead7e6.js +0 -104
  925. package/tslib.es6-bcead7e6.js.map +0 -1
  926. package/useLongPress-794838b8.js +0 -116
  927. package/useLongPress-794838b8.js.map +0 -1
  928. package/utils-00ac1a7d.js +0 -34
  929. package/utils-00ac1a7d.js.map +0 -1
  930. package/utils-01e76a0c.js +0 -30
  931. package/utils-01e76a0c.js.map +0 -1
  932. package/uuid-286ed926.js +0 -17
@@ -0,0 +1,283 @@
1
+ import React__default, { useReducer, useContext, createContext } from 'react';
2
+ import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-ce69e916.js';
3
+ import { f as VOICE_PLAYER_ROOT_ID, g as VOICE_PLAYER_AUDIO_ID, b as VOICE_MESSAGE_FILE_NAME, c as VOICE_MESSAGE_MIME_TYPE } from './consts-9393e7c8.js';
4
+ import useSendbirdStateContext from './useSendbirdStateContext.js';
5
+
6
+ const INITIALIZE_AUDIO_UNIT = 'INITIALIZE_AUDIO_UNIT';
7
+ const SET_CURRENT_PLAYER = 'SET_CURRENT_PLAYER';
8
+ const ON_VOICE_PLAYER_PLAY = 'ON_VOICE_PLAYER_PLAY';
9
+ const ON_VOICE_PLAYER_PAUSE = 'ON_VOICE_PLAYER_PAUSE';
10
+ const ON_CURRENT_TIME_UPDATE = 'ON_CURRENT_TIME_UPDATE';
11
+
12
+ const VOICE_PLAYER_STATUS = {
13
+ IDLE: 'IDLE',
14
+ PREPARING: 'PREPARING',
15
+ PLAYING: 'PLAYING',
16
+ PAUSED: 'PAUSED',
17
+ COMPLETED: 'COMPLETED'
18
+ };
19
+ const AudioUnitDefaultValue = () => ({
20
+ audioFile: null,
21
+ playbackTime: 0,
22
+ duration: 1000,
23
+ playingStatus: VOICE_PLAYER_STATUS.IDLE
24
+ });
25
+ const voicePlayerInitialState = {
26
+ currentPlayer: null,
27
+ currentGroupKey: '',
28
+ audioStorage: {}
29
+ };
30
+
31
+ function voicePlayerReducer(state, action) {
32
+ switch (action.type) {
33
+ case INITIALIZE_AUDIO_UNIT:
34
+ {
35
+ var _state$audioStorage;
36
+ const {
37
+ groupKey
38
+ } = action.payload;
39
+ const audioUnit = (_state$audioStorage = state.audioStorage) !== null && _state$audioStorage !== void 0 && _state$audioStorage[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue();
40
+ audioUnit.playingStatus = VOICE_PLAYER_STATUS.PREPARING;
41
+ return _objectSpread2(_objectSpread2({}, state), {}, {
42
+ audioStorage: _objectSpread2(_objectSpread2({}, state.audioStorage), {}, {
43
+ [groupKey]: audioUnit
44
+ })
45
+ });
46
+ }
47
+ case SET_CURRENT_PLAYER:
48
+ {
49
+ const {
50
+ audioPlayer,
51
+ groupKey
52
+ } = action.payload;
53
+ return _objectSpread2(_objectSpread2({}, state), {}, {
54
+ currentPlayer: audioPlayer,
55
+ currentGroupKey: groupKey
56
+ });
57
+ }
58
+ case ON_VOICE_PLAYER_PLAY:
59
+ {
60
+ var _state$audioStorage2;
61
+ const {
62
+ groupKey,
63
+ audioFile
64
+ } = action.payload;
65
+ const audioUnit = (_state$audioStorage2 = state.audioStorage) !== null && _state$audioStorage2 !== void 0 && _state$audioStorage2[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue();
66
+ audioUnit.audioFile = audioFile;
67
+ audioUnit.playingStatus = VOICE_PLAYER_STATUS.PLAYING;
68
+ return _objectSpread2(_objectSpread2({}, state), {}, {
69
+ audioStorage: _objectSpread2(_objectSpread2({}, state.audioStorage), {}, {
70
+ [groupKey]: audioUnit
71
+ })
72
+ });
73
+ }
74
+ case ON_VOICE_PLAYER_PAUSE:
75
+ {
76
+ var _state$audioStorage3;
77
+ const {
78
+ groupKey
79
+ } = action.payload;
80
+ const audioUnit = (_state$audioStorage3 = state.audioStorage) !== null && _state$audioStorage3 !== void 0 && _state$audioStorage3[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue();
81
+ audioUnit.playingStatus = VOICE_PLAYER_STATUS.PAUSED;
82
+ const {
83
+ currentTime,
84
+ duration
85
+ } = state.currentPlayer;
86
+ if (audioUnit.playbackTime === audioUnit.duration) {
87
+ audioUnit.playbackTime = 0;
88
+ } else if (currentTime > 0 && duration > 0) {
89
+ audioUnit.playbackTime = currentTime;
90
+ audioUnit.duration = duration;
91
+ }
92
+ return _objectSpread2(_objectSpread2({}, state), {}, {
93
+ audioStorage: _objectSpread2(_objectSpread2({}, state.audioStorage), {}, {
94
+ [groupKey]: audioUnit
95
+ })
96
+ });
97
+ }
98
+ case ON_CURRENT_TIME_UPDATE:
99
+ {
100
+ var _state$audioStorage4;
101
+ const {
102
+ groupKey
103
+ } = action.payload;
104
+ const {
105
+ currentTime,
106
+ duration
107
+ } = state.currentPlayer;
108
+ const audioUnit = (_state$audioStorage4 = state.audioStorage) !== null && _state$audioStorage4 !== void 0 && _state$audioStorage4[groupKey] ? state.audioStorage[groupKey] : AudioUnitDefaultValue();
109
+ if (currentTime > 0 && duration > 0) {
110
+ audioUnit.playbackTime = currentTime;
111
+ audioUnit.duration = duration;
112
+ }
113
+ return _objectSpread2(_objectSpread2({}, state), {}, {
114
+ audioStorage: _objectSpread2(_objectSpread2({}, state.audioStorage), {}, {
115
+ [groupKey]: audioUnit
116
+ })
117
+ });
118
+ }
119
+ default:
120
+ return state;
121
+ }
122
+ }
123
+
124
+ // VoicePlayerProvider interface
125
+
126
+ const noop = () => {/* noop */};
127
+ const VoicePlayerStoreDefaultValue = {
128
+ currentGroupKey: '',
129
+ currentPlayer: null,
130
+ audioStorage: {}
131
+ };
132
+ const Context = /*#__PURE__*/createContext({
133
+ play: noop,
134
+ pause: noop,
135
+ stop: noop,
136
+ voicePlayerStore: VoicePlayerStoreDefaultValue
137
+ });
138
+ const VoicePlayerProvider = _ref => {
139
+ let {
140
+ children
141
+ } = _ref;
142
+ const [voicePlayerStore, voicePlayerDispatcher] = useReducer(voicePlayerReducer, voicePlayerInitialState);
143
+ const {
144
+ currentGroupKey,
145
+ currentPlayer,
146
+ audioStorage
147
+ } = voicePlayerStore;
148
+ const {
149
+ config
150
+ } = useSendbirdStateContext();
151
+ const {
152
+ logger
153
+ } = config;
154
+ const stop = function () {
155
+ let text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
156
+ if (currentGroupKey.includes(text)) {
157
+ logger.info('VoicePlayer: Pause playing(by text).');
158
+ pause(currentGroupKey);
159
+ }
160
+ };
161
+ const pause = groupKey => {
162
+ if (currentGroupKey === groupKey && currentPlayer !== null) {
163
+ logger.info('VoicePlayer: Pause playing(by group key).');
164
+ currentPlayer === null || currentPlayer === void 0 ? void 0 : currentPlayer.pause();
165
+ }
166
+ };
167
+ const play = _ref2 => {
168
+ let {
169
+ groupKey,
170
+ audioFile = null,
171
+ audioFileUrl = ''
172
+ } = _ref2;
173
+ if (groupKey !== currentGroupKey) {
174
+ pause(currentGroupKey);
175
+ }
176
+
177
+ // Clear the previous AudioPlayer element
178
+ const voicePlayerRoot = document.getElementById(VOICE_PLAYER_ROOT_ID);
179
+ const voicePlayerAudioElement = document.getElementById(VOICE_PLAYER_AUDIO_ID);
180
+ if (voicePlayerAudioElement) {
181
+ voicePlayerRoot.removeChild(voicePlayerAudioElement);
182
+ }
183
+ logger.info('VoicePlayer: Start getting audio file.');
184
+ new Promise(resolve => {
185
+ var _audioStorage$groupKe;
186
+ if (audioFile) {
187
+ resolve(audioFile);
188
+ logger.info('VoicePlayer: Use the audioFile instance.');
189
+ }
190
+ if (audioStorage !== null && audioStorage !== void 0 && (_audioStorage$groupKe = audioStorage[groupKey]) !== null && _audioStorage$groupKe !== void 0 && _audioStorage$groupKe.audioFile) {
191
+ resolve(audioStorage[groupKey].audioFile);
192
+ logger.info('VoicePlayer: Get from the audioStorage.');
193
+ }
194
+ voicePlayerDispatcher({
195
+ type: INITIALIZE_AUDIO_UNIT,
196
+ payload: {
197
+ groupKey
198
+ }
199
+ });
200
+ fetch(audioFileUrl).then(res => res.blob()).then(blob => {
201
+ const audioFile = new File([blob], VOICE_MESSAGE_FILE_NAME, {
202
+ lastModified: new Date().getTime(),
203
+ type: VOICE_MESSAGE_MIME_TYPE
204
+ });
205
+ resolve(audioFile);
206
+ logger.info('VoicePlayer: Get the audioFile from URL.');
207
+ });
208
+ }).then(audioFile => {
209
+ var _URL, _URL$createObjectURL;
210
+ logger.info('VoicePlayer: Succeeded getting audio file.', audioFile);
211
+ const currentAudioUnit = audioStorage[groupKey] || AudioUnitDefaultValue();
212
+ const audioPlayer = new Audio((_URL = URL) === null || _URL === void 0 ? void 0 : (_URL$createObjectURL = _URL.createObjectURL) === null || _URL$createObjectURL === void 0 ? void 0 : _URL$createObjectURL.call(_URL, audioFile));
213
+ audioPlayer.id = VOICE_PLAYER_AUDIO_ID;
214
+ audioPlayer.currentTime = currentAudioUnit.playbackTime;
215
+ audioPlayer.volume = 1;
216
+ audioPlayer.loop = false;
217
+ audioPlayer.onplaying = () => {
218
+ logger.info('VoicePlayer: OnPlaying event is called from audioPlayer', {
219
+ groupKey,
220
+ audioPlayer
221
+ });
222
+ voicePlayerDispatcher({
223
+ type: ON_VOICE_PLAYER_PLAY,
224
+ payload: {
225
+ groupKey,
226
+ audioFile
227
+ }
228
+ });
229
+ };
230
+ audioPlayer.onpause = () => {
231
+ logger.info('VoicePlayer: OnPause event is called from audioPlayer', {
232
+ groupKey,
233
+ audioPlayer
234
+ });
235
+ voicePlayerDispatcher({
236
+ type: ON_VOICE_PLAYER_PAUSE,
237
+ payload: {
238
+ groupKey
239
+ }
240
+ });
241
+ };
242
+ audioPlayer.ontimeupdate = () => {
243
+ voicePlayerDispatcher({
244
+ type: ON_CURRENT_TIME_UPDATE,
245
+ payload: {
246
+ groupKey
247
+ }
248
+ });
249
+ };
250
+ audioPlayer === null || audioPlayer === void 0 ? void 0 : audioPlayer.play();
251
+ const voicePlayerRoot = document.getElementById(VOICE_PLAYER_ROOT_ID);
252
+ voicePlayerRoot.appendChild(audioPlayer);
253
+ voicePlayerDispatcher({
254
+ type: SET_CURRENT_PLAYER,
255
+ payload: {
256
+ groupKey,
257
+ audioPlayer
258
+ }
259
+ });
260
+ logger.info('VoicePlayer: Succeeded playing audio player.', {
261
+ groupKey,
262
+ audioPlayer
263
+ });
264
+ });
265
+ };
266
+ return /*#__PURE__*/React__default.createElement(Context.Provider, {
267
+ value: {
268
+ play,
269
+ pause,
270
+ stop,
271
+ voicePlayerStore
272
+ }
273
+ }, /*#__PURE__*/React__default.createElement("div", {
274
+ id: VOICE_PLAYER_ROOT_ID,
275
+ style: {
276
+ display: 'none'
277
+ }
278
+ }), children);
279
+ };
280
+ const useVoicePlayerContext = () => useContext(Context);
281
+
282
+ export { AudioUnitDefaultValue as A, VoicePlayerProvider as V, VOICE_PLAYER_STATUS as a, useVoicePlayerContext as u };
283
+ //# sourceMappingURL=index-5644a6c0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-5644a6c0.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 { ObjectValues } from '../../../utils/typeHelpers/objectValues';\nimport { GroupKey } from '../utils';\n\nexport const VOICE_PLAYER_STATUS = {\n IDLE: 'IDLE',\n PREPARING: 'PREPARING',\n PLAYING: 'PLAYING',\n PAUSED: 'PAUSED',\n COMPLETED: 'COMPLETED',\n} as const;\n// VoicePlayerStatus should be deprecated / It's left for backward legacy\nexport const VoicePlayerStatus = VOICE_PLAYER_STATUS;\nexport type VoicePlayerStatusType = ObjectValues<typeof VOICE_PLAYER_STATUS>;\n\nexport type AudioStorageUnit = {\n playingStatus: VoicePlayerStatusType;\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: VOICE_PLAYER_STATUS.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 VOICE_PLAYER_STATUS,\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 = VOICE_PLAYER_STATUS.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 = VOICE_PLAYER_STATUS.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 = VOICE_PLAYER_STATUS.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 Context = 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 logger.info('VoicePlayer: Start getting audio file.');\n new Promise((resolve) => {\n if (audioFile) {\n resolve(audioFile);\n logger.info('VoicePlayer: Use the audioFile instance.');\n }\n if (audioStorage?.[groupKey]?.audioFile) {\n resolve(audioStorage[groupKey].audioFile);\n logger.info('VoicePlayer: Get from the audioStorage.');\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 logger.info('VoicePlayer: Get the audioFile from URL.');\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 <Context.Provider value={{\n play,\n pause,\n stop,\n voicePlayerStore,\n }}>\n <div id={VOICE_PLAYER_ROOT_ID} style={{ display: 'none' }} />\n {children}\n </Context.Provider>\n );\n};\n\nexport const useVoicePlayerContext = (): VoicePlayerContext => useContext(Context);\n"],"names":["INITIALIZE_AUDIO_UNIT","SET_CURRENT_PLAYER","ON_VOICE_PLAYER_PLAY","ON_VOICE_PLAYER_PAUSE","ON_CURRENT_TIME_UPDATE","VOICE_PLAYER_STATUS","IDLE","PREPARING","PLAYING","PAUSED","COMPLETED","AudioUnitDefaultValue","audioFile","playbackTime","duration","playingStatus","voicePlayerInitialState","currentPlayer","currentGroupKey","audioStorage","voicePlayerReducer","state","action","type","_state$audioStorage","groupKey","payload","audioUnit","_objectSpread","audioPlayer","_state$audioStorage2","_state$audioStorage3","currentTime","_state$audioStorage4","noop","VoicePlayerStoreDefaultValue","Context","createContext","play","pause","stop","voicePlayerStore","VoicePlayerProvider","_ref","children","voicePlayerDispatcher","useReducer","config","useSendbirdStateContext","logger","text","arguments","length","undefined","includes","info","_ref2","audioFileUrl","voicePlayerRoot","document","getElementById","VOICE_PLAYER_ROOT_ID","voicePlayerAudioElement","VOICE_PLAYER_AUDIO_ID","removeChild","Promise","resolve","_audioStorage$groupKe","fetch","then","res","blob","File","VOICE_MESSAGE_FILE_NAME","lastModified","Date","getTime","VOICE_MESSAGE_MIME_TYPE","_URL","_URL$createObjectURL","currentAudioUnit","Audio","URL","createObjectURL","call","id","volume","loop","onplaying","onpause","ontimeupdate","appendChild","React","createElement","Provider","value","style","display","useVoicePlayerContext","useContext"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { i as isSameDay } from './index-d3f6dbb9.js';
2
- import { r as requiredArgs, t as toDate, a as toInteger } from './index-3f26a31c.js';
1
+ import { i as isSameDay } from './index-9781d2b9.js';
2
+ import { r as requiredArgs, t as toDate, a as toInteger } from './index-06f34585.js';
3
3
 
4
4
  /**
5
5
  * @name isToday
@@ -28,6 +28,59 @@ function isToday(dirtyDate) {
28
28
  return isSameDay(dirtyDate, Date.now());
29
29
  }
30
30
 
31
+ /**
32
+ * @name isSameYear
33
+ * @category Year Helpers
34
+ * @summary Are the given dates in the same year?
35
+ *
36
+ * @description
37
+ * Are the given dates in the same year?
38
+ *
39
+ * @param {Date|Number} dateLeft - the first date to check
40
+ * @param {Date|Number} dateRight - the second date to check
41
+ * @returns {Boolean} the dates are in the same year
42
+ * @throws {TypeError} 2 arguments required
43
+ *
44
+ * @example
45
+ * // Are 2 September 2014 and 25 September 2014 in the same year?
46
+ * const result = isSameYear(new Date(2014, 8, 2), new Date(2014, 8, 25))
47
+ * //=> true
48
+ */
49
+
50
+ function isSameYear(dirtyDateLeft, dirtyDateRight) {
51
+ requiredArgs(2, arguments);
52
+ var dateLeft = toDate(dirtyDateLeft);
53
+ var dateRight = toDate(dirtyDateRight);
54
+ return dateLeft.getFullYear() === dateRight.getFullYear();
55
+ }
56
+
57
+ /**
58
+ * @name isThisYear
59
+ * @category Year Helpers
60
+ * @summary Is the given date in the same year as the current date?
61
+ * @pure false
62
+ *
63
+ * @description
64
+ * Is the given date in the same year as the current date?
65
+ *
66
+ * > ⚠️ Please note that this function is not present in the FP submodule as
67
+ * > it uses `Date.now()` internally hence impure and can't be safely curried.
68
+ *
69
+ * @param {Date|Number} date - the date to check
70
+ * @returns {Boolean} the date is in this year
71
+ * @throws {TypeError} 1 argument required
72
+ *
73
+ * @example
74
+ * // If today is 25 September 2014, is 2 July 2014 in this year?
75
+ * const result = isThisYear(new Date(2014, 6, 2))
76
+ * //=> true
77
+ */
78
+
79
+ function isThisYear(dirtyDate) {
80
+ requiredArgs(1, arguments);
81
+ return isSameYear(dirtyDate, Date.now());
82
+ }
83
+
31
84
  /**
32
85
  * @name addDays
33
86
  * @category Day Helpers
@@ -117,5 +170,5 @@ function isYesterday(dirtyDate) {
117
170
  return isSameDay(dirtyDate, subDays(Date.now(), 1));
118
171
  }
119
172
 
120
- export { isYesterday as a, isToday as i };
121
- //# sourceMappingURL=index-defabece.js.map
173
+ export { isYesterday as a, isThisYear as b, isToday as i };
174
+ //# sourceMappingURL=index-5db37327.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-5db37327.js","sources":["../node_modules/date-fns/esm/isToday/index.js","../node_modules/date-fns/esm/isSameYear/index.js","../node_modules/date-fns/esm/isThisYear/index.js","../node_modules/date-fns/esm/addDays/index.js","../node_modules/date-fns/esm/subDays/index.js","../node_modules/date-fns/esm/isYesterday/index.js"],"sourcesContent":["import isSameDay from \"../isSameDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isToday\n * @category Day Helpers\n * @summary Is the given date today?\n * @pure false\n *\n * @description\n * Is the given date today?\n *\n * > ⚠️ Please note that this function is not present in the FP submodule as\n * > it uses `Date.now()` internally hence impure and can't be safely curried.\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is today\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // If today is 6 October 2014, is 6 October 14:00:00 today?\n * const result = isToday(new Date(2014, 9, 6, 14, 0))\n * //=> true\n */\n\nexport default function isToday(dirtyDate) {\n requiredArgs(1, arguments);\n return isSameDay(dirtyDate, Date.now());\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameYear\n * @category Year Helpers\n * @summary Are the given dates in the same year?\n *\n * @description\n * Are the given dates in the same year?\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same year\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 September 2014 and 25 September 2014 in the same year?\n * const result = isSameYear(new Date(2014, 8, 2), new Date(2014, 8, 25))\n * //=> true\n */\n\nexport default function isSameYear(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n return dateLeft.getFullYear() === dateRight.getFullYear();\n}","import isSameYear from \"../isSameYear/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isThisYear\n * @category Year Helpers\n * @summary Is the given date in the same year as the current date?\n * @pure false\n *\n * @description\n * Is the given date in the same year as the current date?\n *\n * > ⚠️ Please note that this function is not present in the FP submodule as\n * > it uses `Date.now()` internally hence impure and can't be safely curried.\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is in this year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // If today is 25 September 2014, is 2 July 2014 in this year?\n * const result = isThisYear(new Date(2014, 6, 2))\n * //=> true\n */\n\nexport default function isThisYear(dirtyDate) {\n requiredArgs(1, arguments);\n return isSameYear(dirtyDate, Date.now());\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addDays\n * @category Day Helpers\n * @summary Add the specified number of days to the given date.\n *\n * @description\n * Add the specified number of days to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of days to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} - the new date with the days added\n * @throws {TypeError} - 2 arguments required\n *\n * @example\n * // Add 10 days to 1 September 2014:\n * const result = addDays(new Date(2014, 8, 1), 10)\n * //=> Thu Sep 11 2014 00:00:00\n */\n\nexport default function addDays(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var amount = toInteger(dirtyAmount);\n\n if (isNaN(amount)) {\n return new Date(NaN);\n }\n\n if (!amount) {\n // If 0 days, no-op to avoid changing times in the hour before end of DST\n return date;\n }\n\n date.setDate(date.getDate() + amount);\n return date;\n}","import addDays from \"../addDays/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\n/**\n * @name subDays\n * @category Day Helpers\n * @summary Subtract the specified number of days from the given date.\n *\n * @description\n * Subtract the specified number of days from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of days to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the days subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 10 days from 1 September 2014:\n * const result = subDays(new Date(2014, 8, 1), 10)\n * //=> Fri Aug 22 2014 00:00:00\n */\n\nexport default function subDays(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addDays(dirtyDate, -amount);\n}","import isSameDay from \"../isSameDay/index.js\";\nimport subDays from \"../subDays/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isYesterday\n * @category Day Helpers\n * @summary Is the given date yesterday?\n * @pure false\n *\n * @description\n * Is the given date yesterday?\n *\n * > ⚠️ Please note that this function is not present in the FP submodule as\n * > it uses `Date.now()` internally hence impure and can't be safely curried.\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is yesterday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // If today is 6 October 2014, is 5 October 14:00:00 yesterday?\n * const result = isYesterday(new Date(2014, 9, 5, 14, 0))\n * //=> true\n */\n\nexport default function isYesterday(dirtyDate) {\n requiredArgs(1, arguments);\n return isSameDay(dirtyDate, subDays(Date.now(), 1));\n}"],"names":[],"mappings":"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"}
@@ -1,92 +1,82 @@
1
1
  import React__default, { useMemo, useRef, useContext, useState } from 'react';
2
2
  import Modal from './ui/Modal.js';
3
- import { a as LocalizationContext } from './LocalizationContext-4df0cc32.js';
3
+ import { a as LocalizationContext } from './LocalizationContext-1839d2db.js';
4
4
  import useSendbirdStateContext from './useSendbirdStateContext.js';
5
5
  import Input, { InputLabel } from './ui/Input.js';
6
6
  import Avatar from './ui/Avatar.js';
7
7
  import Icon, { IconTypes } from './ui/Icon.js';
8
8
  import { ButtonTypes } from './ui/Button.js';
9
- import { L as Label, a as LabelTypography, b as LabelColors } from './index-44470dab.js';
9
+ import { L as Label, a as LabelTypography, b as LabelColors } from './index-e1cd2fcf.js';
10
10
  import TextButton from './ui/TextButton.js';
11
- import { n as noop } from './utils-e720e03a.js';
12
- import { U as UPDATE_USER_INFO } from './actionTypes-ad2cbd73.js';
11
+ import { n as noop } from './utils-256f157f.js';
12
+ import { U as USER_ACTIONS } from './actionTypes-a5283c75.js';
13
13
 
14
- var EditUserProfileProviderContext = /*#__PURE__*/React__default.createContext(undefined);
15
-
16
- var EditUserProfileProvider = function (props) {
17
- var children = props.children,
18
- onEditProfile = props.onEditProfile,
19
- onCancel = props.onCancel,
20
- onThemeChange = props.onThemeChange;
21
- var value = useMemo(function () {
14
+ const EditUserProfileProviderContext = /*#__PURE__*/React__default.createContext(undefined);
15
+ const EditUserProfileProvider = props => {
16
+ const {
17
+ children,
18
+ onEditProfile,
19
+ onCancel,
20
+ onThemeChange
21
+ } = props;
22
+ const value = useMemo(() => {
22
23
  return {
23
- onEditProfile: onEditProfile,
24
- onCancel: onCancel,
25
- onThemeChange: onThemeChange
24
+ onEditProfile,
25
+ onCancel,
26
+ onThemeChange
26
27
  };
27
28
  }, []);
28
29
  return /*#__PURE__*/React__default.createElement(EditUserProfileProviderContext.Provider, {
29
30
  value: value
30
31
  }, children);
31
32
  };
32
-
33
- var useEditUserProfileContext = function () {
34
- return React__default.useContext(EditUserProfileProviderContext);
35
- };
33
+ const useEditUserProfileContext = () => React__default.useContext(EditUserProfileProviderContext);
36
34
 
37
35
  function EditUserProfile() {
38
- var _a, _b, _c, _d, _e, _f, _g;
39
-
40
- var editProfileProps = useEditUserProfileContext();
41
- var store = useSendbirdStateContext();
42
- var hiddenInputRef = useRef(null);
43
- var inputRef = useRef(null);
44
- var formRef = useRef(null);
45
- var stringSet = useContext(LocalizationContext).stringSet;
46
-
47
- var _h = useState(null),
48
- currentImg = _h[0],
49
- setCurrentImg = _h[1];
50
-
51
- var _j = useState(null),
52
- newFile = _j[0],
53
- setNewFile = _j[1];
54
-
55
- var onEditProfile = editProfileProps.onEditProfile,
56
- onCancel = editProfileProps.onCancel,
57
- onThemeChange = editProfileProps.onThemeChange;
58
- var theme = ((_a = store === null || store === void 0 ? void 0 : store.config) === null || _a === void 0 ? void 0 : _a.theme) || 'light';
59
- var changeTheme = ((_b = store === null || store === void 0 ? void 0 : store.config) === null || _b === void 0 ? void 0 : _b.setCurrenttheme) || noop;
60
- var user = (_d = (_c = store === null || store === void 0 ? void 0 : store.stores) === null || _c === void 0 ? void 0 : _c.userStore) === null || _d === void 0 ? void 0 : _d.user;
61
- var sdk = (_f = (_e = store === null || store === void 0 ? void 0 : store.stores) === null || _e === void 0 ? void 0 : _e.sdkStore) === null || _f === void 0 ? void 0 : _f.sdk;
62
- var userDispatcher = (_g = store === null || store === void 0 ? void 0 : store.dispatchers) === null || _g === void 0 ? void 0 : _g.userDispatcher;
36
+ var _store$config, _store$config2, _store$stores, _store$stores$userSto, _store$stores2, _store$stores2$sdkSto, _store$dispatchers;
37
+ const editProfileProps = useEditUserProfileContext();
38
+ const store = useSendbirdStateContext();
39
+ const hiddenInputRef = useRef(null);
40
+ const inputRef = useRef(null);
41
+ const formRef = useRef(null);
42
+ const {
43
+ stringSet
44
+ } = useContext(LocalizationContext);
45
+ const [currentImg, setCurrentImg] = useState(null);
46
+ const [newFile, setNewFile] = useState(null);
47
+ const {
48
+ onEditProfile,
49
+ onCancel,
50
+ onThemeChange
51
+ } = editProfileProps;
52
+ const theme = (store === null || store === void 0 ? void 0 : (_store$config = store.config) === null || _store$config === void 0 ? void 0 : _store$config.theme) || 'light';
53
+ const changeTheme = (store === null || store === void 0 ? void 0 : (_store$config2 = store.config) === null || _store$config2 === void 0 ? void 0 : _store$config2.setCurrenttheme) || noop;
54
+ const user = store === null || store === void 0 ? void 0 : (_store$stores = store.stores) === null || _store$stores === void 0 ? void 0 : (_store$stores$userSto = _store$stores.userStore) === null || _store$stores$userSto === void 0 ? void 0 : _store$stores$userSto.user;
55
+ const sdk = store === null || store === void 0 ? void 0 : (_store$stores2 = store.stores) === null || _store$stores2 === void 0 ? void 0 : (_store$stores2$sdkSto = _store$stores2.sdkStore) === null || _store$stores2$sdkSto === void 0 ? void 0 : _store$stores2$sdkSto.sdk;
56
+ const userDispatcher = store === null || store === void 0 ? void 0 : (_store$dispatchers = store.dispatchers) === null || _store$dispatchers === void 0 ? void 0 : _store$dispatchers.userDispatcher;
63
57
  return /*#__PURE__*/React__default.createElement(Modal, {
64
58
  titleText: stringSet.EDIT_PROFILE__TITLE,
65
59
  submitText: stringSet.BUTTON__SAVE,
66
60
  type: ButtonTypes.PRIMARY,
67
61
  onCancel: onCancel,
68
62
  isFullScreenOnMobile: true,
69
- onSubmit: function () {
70
- var _a;
71
-
63
+ onSubmit: () => {
64
+ var _inputRef$current;
72
65
  if ((user === null || user === void 0 ? void 0 : user.nickname) !== '' && !inputRef.current.value) {
73
66
  if (formRef.current.reportValidity) {
74
67
  // might not work in explorer
75
68
  formRef.current.reportValidity();
76
69
  }
77
-
78
70
  return;
79
71
  }
80
-
81
72
  sdk === null || sdk === void 0 ? void 0 : sdk.updateCurrentUserInfo({
82
- nickname: (_a = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _a === void 0 ? void 0 : _a.value,
73
+ nickname: inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.value,
83
74
  profileImage: newFile
84
- }).then(function (updatedUser) {
75
+ }).then(updatedUser => {
85
76
  userDispatcher({
86
- type: UPDATE_USER_INFO,
77
+ type: USER_ACTIONS.UPDATE_USER_INFO,
87
78
  payload: updatedUser
88
79
  });
89
-
90
80
  if (onEditProfile && typeof onEditProfile === 'function') {
91
81
  onEditProfile(updatedUser);
92
82
  }
@@ -95,7 +85,7 @@ function EditUserProfile() {
95
85
  }, /*#__PURE__*/React__default.createElement("form", {
96
86
  className: "sendbird-edit-user-profile",
97
87
  ref: formRef,
98
- onSubmit: function (e) {
88
+ onSubmit: e => {
99
89
  e.preventDefault();
100
90
  }
101
91
  }, /*#__PURE__*/React__default.createElement("section", {
@@ -113,7 +103,7 @@ function EditUserProfile() {
113
103
  style: {
114
104
  display: 'none'
115
105
  },
116
- onChange: function (e) {
106
+ onChange: e => {
117
107
  setCurrentImg(URL.createObjectURL(e.target.files[0]));
118
108
  setNewFile(e.target.files[0]);
119
109
  hiddenInputRef.current.value = '';
@@ -121,9 +111,7 @@ function EditUserProfile() {
121
111
  }), /*#__PURE__*/React__default.createElement(TextButton, {
122
112
  className: "sendbird-edit-user-profile__img__avatar-button",
123
113
  disableUnderline: true,
124
- onClick: function () {
125
- return hiddenInputRef.current.click();
126
- }
114
+ onClick: () => hiddenInputRef.current.click()
127
115
  }, /*#__PURE__*/React__default.createElement(Label, {
128
116
  type: LabelTypography.BUTTON_1,
129
117
  color: LabelColors.PRIMARY
@@ -146,22 +134,26 @@ function EditUserProfile() {
146
134
  }, /*#__PURE__*/React__default.createElement(InputLabel, null, stringSet.EDIT_PROFILE__THEME_LABEL), /*#__PURE__*/React__default.createElement("div", {
147
135
  className: "sendbird-edit-user-profile__theme__theme-icon"
148
136
  }, theme === 'dark' ? /*#__PURE__*/React__default.createElement(Icon, {
149
- onClick: function () {
137
+ onClick: () => {
150
138
  changeTheme('light');
151
- onThemeChange === null || onThemeChange === void 0 ? void 0 : onThemeChange('light'); // if (onThemeChange && typeof onThemeChange === 'function') {
139
+ onThemeChange === null || onThemeChange === void 0 ? void 0 : onThemeChange('light');
140
+ // if (onThemeChange && typeof onThemeChange === 'function') {
152
141
  // onThemeChange('light');
153
142
  // }
154
143
  },
144
+
155
145
  type: IconTypes.TOGGLE_ON,
156
146
  width: 44,
157
147
  height: 24
158
148
  }) : /*#__PURE__*/React__default.createElement(Icon, {
159
- onClick: function () {
149
+ onClick: () => {
160
150
  changeTheme('dark');
161
- onThemeChange === null || onThemeChange === void 0 ? void 0 : onThemeChange('dark'); // if (onThemeChange && typeof onThemeChange === 'function') {
151
+ onThemeChange === null || onThemeChange === void 0 ? void 0 : onThemeChange('dark');
152
+ // if (onThemeChange && typeof onThemeChange === 'function') {
162
153
  // onThemeChange('dark');
163
154
  // }
164
155
  },
156
+
165
157
  type: IconTypes.TOGGLE_OFF,
166
158
  width: 44,
167
159
  height: 24
@@ -169,4 +161,4 @@ function EditUserProfile() {
169
161
  }
170
162
 
171
163
  export { EditUserProfileProvider as E, EditUserProfile as a };
172
- //# sourceMappingURL=index-fc4702b7.js.map
164
+ //# sourceMappingURL=index-7c9ebc67.js.map