@sendbird/uikit-react 3.4.5-rc.0 → 3.4.5

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 (482) hide show
  1. package/App.js +44 -44
  2. package/Channel/components/ChannelHeader.js +19 -19
  3. package/Channel/components/ChannelUI.js +37 -37
  4. package/Channel/components/FileViewer.js +15 -15
  5. package/Channel/components/FrozenNotification.js +4 -4
  6. package/Channel/components/Message.js +32 -32
  7. package/Channel/components/MessageInput.js +27 -27
  8. package/Channel/components/MessageList.js +33 -33
  9. package/Channel/components/RemoveMessageModal.js +17 -17
  10. package/Channel/components/SuggestedMentionList.js +17 -17
  11. package/Channel/components/TypingIndicator.js +15 -15
  12. package/Channel/components/UnreadCount.js +4 -4
  13. package/Channel/context.js +14 -14
  14. package/Channel.js +37 -37
  15. package/ChannelList/components/AddChannel.js +15 -15
  16. package/ChannelList/components/ChannelListHeader.js +6 -6
  17. package/ChannelList/components/ChannelListUI.js +30 -30
  18. package/ChannelList/components/ChannelPreview.js +26 -26
  19. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  20. package/ChannelList/context.js +8 -8
  21. package/ChannelList.js +30 -30
  22. package/{ChannelListProvider-38d1234f.js → ChannelListProvider-10fe7340.js} +8 -8
  23. package/{ChannelListProvider-38d1234f.js.map → ChannelListProvider-10fe7340.js.map} +1 -1
  24. package/{ChannelProvider-1e05ac9e.js → ChannelProvider-4ac82784.js} +10 -10
  25. package/{ChannelProvider-1e05ac9e.js.map → ChannelProvider-4ac82784.js.map} +1 -1
  26. package/ChannelSettings/components/ChannelProfile.js +11 -11
  27. package/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  28. package/ChannelSettings/components/EditDetailsModal.js +11 -11
  29. package/ChannelSettings/components/LeaveChannel.js +11 -11
  30. package/ChannelSettings/components/ModerationPanel.js +14 -14
  31. package/ChannelSettings/components/UserListItem.js +10 -10
  32. package/ChannelSettings/components/UserPanel.js +13 -13
  33. package/ChannelSettings/context.js +3 -3
  34. package/ChannelSettings.js +17 -17
  35. package/CreateChannel/components/CreateChannelUI.js +13 -13
  36. package/CreateChannel/components/InviteUsers.js +13 -13
  37. package/CreateChannel/components/SelectChannelType.js +10 -10
  38. package/CreateChannel/context.js +4 -4
  39. package/CreateChannel.js +13 -13
  40. package/{CreateChannelProvider-3614d73c.js → CreateChannelProvider-11045f46.js} +1 -1
  41. package/{CreateChannelProvider-3614d73c.js.map → CreateChannelProvider-11045f46.js.map} +1 -1
  42. package/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  43. package/CreateOpenChannel/context.js +1 -1
  44. package/CreateOpenChannel.js +9 -9
  45. package/EditUserProfile/components/EditUserProfileUI.js +12 -12
  46. package/EditUserProfile.js +12 -12
  47. package/{LocalizationContext-34b46c40.js → LocalizationContext-654ae04f.js} +3 -3
  48. package/{LocalizationContext-34b46c40.js.map → LocalizationContext-654ae04f.js.map} +1 -1
  49. package/{MediaQueryContext-ce624aa4.js → MediaQueryContext-e791a4d1.js} +1 -1
  50. package/{MediaQueryContext-ce624aa4.js.map → MediaQueryContext-e791a4d1.js.map} +1 -1
  51. package/{MemberList-4de628ca.js → MemberList-6f3c8288.js} +5 -5
  52. package/{MemberList-4de628ca.js.map → MemberList-6f3c8288.js.map} +1 -1
  53. package/MessageSearch/components/MessageSearchUI.js +11 -11
  54. package/MessageSearch/context.js +1 -1
  55. package/MessageSearch.js +11 -11
  56. package/OpenChannel/components/FrozenChannelNotification.js +4 -4
  57. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  58. package/OpenChannel/components/OpenChannelInput.js +19 -19
  59. package/OpenChannel/components/OpenChannelMessage.js +27 -27
  60. package/OpenChannel/components/OpenChannelMessageList.js +30 -30
  61. package/OpenChannel/components/OpenChannelUI.js +30 -30
  62. package/OpenChannel/context.js +8 -8
  63. package/OpenChannel.js +30 -30
  64. package/OpenChannelList/components/OpenChannelListUI.js +13 -13
  65. package/OpenChannelList/components/OpenChannelPreview.js +4 -4
  66. package/OpenChannelList/context.js +3 -3
  67. package/OpenChannelList.js +13 -13
  68. package/{OpenChannelListProvider-ab54ddfd.js → OpenChannelListProvider-eb189b41.js} +3 -3
  69. package/{OpenChannelListProvider-ab54ddfd.js.map → OpenChannelListProvider-eb189b41.js.map} +1 -1
  70. package/{OpenChannelProvider-801fe2a5.js → OpenChannelProvider-e418b369.js} +7 -7
  71. package/{OpenChannelProvider-801fe2a5.js.map → OpenChannelProvider-e418b369.js.map} +1 -1
  72. package/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  73. package/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  74. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  75. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  76. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  77. package/OpenChannelSettings/context.js +3 -3
  78. package/OpenChannelSettings.js +17 -17
  79. package/{RemoveMessageModal-73877b13.js → RemoveMessageModal-938b400d.js} +3 -3
  80. package/{RemoveMessageModal-73877b13.js.map → RemoveMessageModal-938b400d.js.map} +1 -1
  81. package/SendbirdProvider.js +12 -12
  82. package/SendbirdProvider.js.map +1 -1
  83. package/Thread/components/ParentMessageInfo.js +29 -29
  84. package/Thread/components/ParentMessageInfoItem.js +17 -17
  85. package/Thread/components/ThreadHeader.js +6 -6
  86. package/Thread/components/ThreadList.js +32 -32
  87. package/Thread/components/ThreadListItem.js +32 -32
  88. package/Thread/components/ThreadMessageInput.js +28 -28
  89. package/Thread/components/ThreadUI.js +36 -36
  90. package/Thread/context.js +8 -8
  91. package/Thread.js +36 -36
  92. package/{ThreadProvider-44c43f8d.js → ThreadProvider-faf3df5d.js} +7 -7
  93. package/{ThreadProvider-44c43f8d.js.map → ThreadProvider-faf3df5d.js.map} +1 -1
  94. package/{UserProfileContext-3fa0c617.js → UserProfileContext-1996d4d2.js} +1 -1
  95. package/{UserProfileContext-3fa0c617.js.map → UserProfileContext-1996d4d2.js.map} +1 -1
  96. package/{VoiceMessageInputWrapper-9e4d2e0f.js → VoiceMessageInputWrapper-59373f20.js} +7 -7
  97. package/{VoiceMessageInputWrapper-9e4d2e0f.js.map → VoiceMessageInputWrapper-59373f20.js.map} +1 -1
  98. package/VoicePlayer/context.js +3 -3
  99. package/VoicePlayer/useVoicePlayer.js +3 -3
  100. package/VoiceRecorder/context.js +2 -2
  101. package/VoiceRecorder/useVoiceRecorder.js +2 -2
  102. package/{_rollupPluginBabelHelpers-f78972d2.js → _rollupPluginBabelHelpers-e908c50d.js} +1 -1
  103. package/_rollupPluginBabelHelpers-e908c50d.js.map +1 -0
  104. package/{actionTypes-1693ceb3.js → actionTypes-ee7f96a9.js} +1 -1
  105. package/{actionTypes-1693ceb3.js.map → actionTypes-ee7f96a9.js.map} +1 -1
  106. package/cjs/App.js +44 -44
  107. package/cjs/Channel/components/ChannelHeader.js +19 -19
  108. package/cjs/Channel/components/ChannelUI.js +37 -37
  109. package/cjs/Channel/components/FileViewer.js +15 -15
  110. package/cjs/Channel/components/FrozenNotification.js +4 -4
  111. package/cjs/Channel/components/Message.js +32 -32
  112. package/cjs/Channel/components/MessageInput.js +27 -27
  113. package/cjs/Channel/components/MessageList.js +33 -33
  114. package/cjs/Channel/components/RemoveMessageModal.js +17 -17
  115. package/cjs/Channel/components/SuggestedMentionList.js +17 -17
  116. package/cjs/Channel/components/TypingIndicator.js +15 -15
  117. package/cjs/Channel/components/UnreadCount.js +4 -4
  118. package/cjs/Channel/context.js +14 -14
  119. package/cjs/Channel.js +37 -37
  120. package/cjs/ChannelList/components/AddChannel.js +15 -15
  121. package/cjs/ChannelList/components/ChannelListHeader.js +6 -6
  122. package/cjs/ChannelList/components/ChannelListUI.js +30 -30
  123. package/cjs/ChannelList/components/ChannelPreview.js +26 -26
  124. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  125. package/cjs/ChannelList/context.js +8 -8
  126. package/cjs/ChannelList.js +30 -30
  127. package/cjs/{ChannelListProvider-1f84d03b.js → ChannelListProvider-d4f91fc4.js} +8 -8
  128. package/cjs/{ChannelListProvider-1f84d03b.js.map → ChannelListProvider-d4f91fc4.js.map} +1 -1
  129. package/cjs/{ChannelProvider-5915747e.js → ChannelProvider-af0b997c.js} +10 -10
  130. package/cjs/{ChannelProvider-5915747e.js.map → ChannelProvider-af0b997c.js.map} +1 -1
  131. package/cjs/ChannelSettings/components/ChannelProfile.js +11 -11
  132. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +17 -17
  133. package/cjs/ChannelSettings/components/EditDetailsModal.js +11 -11
  134. package/cjs/ChannelSettings/components/LeaveChannel.js +11 -11
  135. package/cjs/ChannelSettings/components/ModerationPanel.js +14 -14
  136. package/cjs/ChannelSettings/components/UserListItem.js +10 -10
  137. package/cjs/ChannelSettings/components/UserPanel.js +13 -13
  138. package/cjs/ChannelSettings/context.js +3 -3
  139. package/cjs/ChannelSettings.js +17 -17
  140. package/cjs/CreateChannel/components/CreateChannelUI.js +13 -13
  141. package/cjs/CreateChannel/components/InviteUsers.js +13 -13
  142. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  143. package/cjs/CreateChannel/context.js +4 -4
  144. package/cjs/CreateChannel.js +13 -13
  145. package/cjs/{CreateChannelProvider-b0ade226.js → CreateChannelProvider-c4ad28a8.js} +1 -1
  146. package/cjs/{CreateChannelProvider-b0ade226.js.map → CreateChannelProvider-c4ad28a8.js.map} +1 -1
  147. package/cjs/CreateOpenChannel/components/CreateOpenChannelUI.js +9 -9
  148. package/cjs/CreateOpenChannel/context.js +1 -1
  149. package/cjs/CreateOpenChannel.js +9 -9
  150. package/cjs/EditUserProfile/components/EditUserProfileUI.js +12 -12
  151. package/cjs/EditUserProfile.js +12 -12
  152. package/cjs/{LocalizationContext-3fb1efd5.js → LocalizationContext-01fceac0.js} +3 -3
  153. package/cjs/{LocalizationContext-3fb1efd5.js.map → LocalizationContext-01fceac0.js.map} +1 -1
  154. package/cjs/{MediaQueryContext-9982e73b.js → MediaQueryContext-4978c777.js} +1 -1
  155. package/cjs/{MediaQueryContext-9982e73b.js.map → MediaQueryContext-4978c777.js.map} +1 -1
  156. package/cjs/{MemberList-574bae3f.js → MemberList-5c05b62f.js} +5 -5
  157. package/cjs/{MemberList-574bae3f.js.map → MemberList-5c05b62f.js.map} +1 -1
  158. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  159. package/cjs/MessageSearch/context.js +1 -1
  160. package/cjs/MessageSearch.js +11 -11
  161. package/cjs/OpenChannel/components/FrozenChannelNotification.js +4 -4
  162. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  163. package/cjs/OpenChannel/components/OpenChannelInput.js +19 -19
  164. package/cjs/OpenChannel/components/OpenChannelMessage.js +27 -27
  165. package/cjs/OpenChannel/components/OpenChannelMessageList.js +30 -30
  166. package/cjs/OpenChannel/components/OpenChannelUI.js +30 -30
  167. package/cjs/OpenChannel/context.js +8 -8
  168. package/cjs/OpenChannel.js +30 -30
  169. package/cjs/OpenChannelList/components/OpenChannelListUI.js +13 -13
  170. package/cjs/OpenChannelList/components/OpenChannelPreview.js +4 -4
  171. package/cjs/OpenChannelList/context.js +3 -3
  172. package/cjs/OpenChannelList.js +13 -13
  173. package/cjs/{OpenChannelListProvider-43b94684.js → OpenChannelListProvider-3be4b8a5.js} +3 -3
  174. package/cjs/{OpenChannelListProvider-43b94684.js.map → OpenChannelListProvider-3be4b8a5.js.map} +1 -1
  175. package/cjs/{OpenChannelProvider-411e1365.js → OpenChannelProvider-56af9a0e.js} +7 -7
  176. package/cjs/{OpenChannelProvider-411e1365.js.map → OpenChannelProvider-56af9a0e.js.map} +1 -1
  177. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +12 -12
  178. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +12 -12
  179. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  180. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  181. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  182. package/cjs/OpenChannelSettings/context.js +3 -3
  183. package/cjs/OpenChannelSettings.js +17 -17
  184. package/cjs/{RemoveMessageModal-0c4b41d0.js → RemoveMessageModal-31ff9edc.js} +3 -3
  185. package/cjs/{RemoveMessageModal-0c4b41d0.js.map → RemoveMessageModal-31ff9edc.js.map} +1 -1
  186. package/cjs/SendbirdProvider.js +12 -12
  187. package/cjs/SendbirdProvider.js.map +1 -1
  188. package/cjs/Thread/components/ParentMessageInfo.js +29 -29
  189. package/cjs/Thread/components/ParentMessageInfoItem.js +17 -17
  190. package/cjs/Thread/components/ThreadHeader.js +6 -6
  191. package/cjs/Thread/components/ThreadList.js +32 -32
  192. package/cjs/Thread/components/ThreadListItem.js +32 -32
  193. package/cjs/Thread/components/ThreadMessageInput.js +28 -28
  194. package/cjs/Thread/components/ThreadUI.js +36 -36
  195. package/cjs/Thread/context.js +8 -8
  196. package/cjs/Thread.js +36 -36
  197. package/cjs/{ThreadProvider-73f209d6.js → ThreadProvider-12784adf.js} +7 -7
  198. package/cjs/{ThreadProvider-73f209d6.js.map → ThreadProvider-12784adf.js.map} +1 -1
  199. package/cjs/{UserProfileContext-b0b956b8.js → UserProfileContext-c4642438.js} +1 -1
  200. package/cjs/{UserProfileContext-b0b956b8.js.map → UserProfileContext-c4642438.js.map} +1 -1
  201. package/cjs/{VoiceMessageInputWrapper-2301a9cd.js → VoiceMessageInputWrapper-3b5db880.js} +7 -7
  202. package/cjs/{VoiceMessageInputWrapper-2301a9cd.js.map → VoiceMessageInputWrapper-3b5db880.js.map} +1 -1
  203. package/cjs/VoicePlayer/context.js +3 -3
  204. package/cjs/VoicePlayer/useVoicePlayer.js +3 -3
  205. package/cjs/VoiceRecorder/context.js +2 -2
  206. package/cjs/VoiceRecorder/useVoiceRecorder.js +2 -2
  207. package/cjs/{_rollupPluginBabelHelpers-05716924.js → _rollupPluginBabelHelpers-994cd1da.js} +1 -1
  208. package/cjs/_rollupPluginBabelHelpers-994cd1da.js.map +1 -0
  209. package/cjs/{actionTypes-de2a8f54.js → actionTypes-38d53eaf.js} +1 -1
  210. package/cjs/{actionTypes-de2a8f54.js.map → actionTypes-38d53eaf.js.map} +1 -1
  211. package/cjs/{color-360107a6.js → color-8f9fe57f.js} +1 -1
  212. package/cjs/{color-360107a6.js.map → color-8f9fe57f.js.map} +1 -1
  213. package/cjs/{compareIds-c4f938a4.js → compareIds-b77b66f3.js} +1 -1
  214. package/cjs/{compareIds-c4f938a4.js.map → compareIds-b77b66f3.js.map} +1 -1
  215. package/cjs/{const-7ce7d646.js → const-35f8be84.js} +1 -1
  216. package/cjs/{const-7ce7d646.js.map → const-35f8be84.js.map} +1 -1
  217. package/cjs/{const-893ed415.js → const-e03cb4c1.js} +1 -1
  218. package/cjs/{const-893ed415.js.map → const-e03cb4c1.js.map} +1 -1
  219. package/cjs/{consts-d9856131.js → consts-69fc20be.js} +1 -1
  220. package/cjs/{consts-d9856131.js.map → consts-69fc20be.js.map} +1 -1
  221. package/cjs/{consts-c4097faa.js → consts-956b1221.js} +1 -1
  222. package/cjs/{consts-c4097faa.js.map → consts-956b1221.js.map} +1 -1
  223. package/cjs/{consts-0b50a0c8.js → consts-aabb33e0.js} +1 -1
  224. package/cjs/{consts-0b50a0c8.js.map → consts-aabb33e0.js.map} +1 -1
  225. package/cjs/{consts-f5219aa0.js → consts-b29bd4d5.js} +1 -1
  226. package/cjs/{consts-f5219aa0.js.map → consts-b29bd4d5.js.map} +1 -1
  227. package/cjs/{context-971dc2dc.js → context-d9e248df.js} +2 -2
  228. package/cjs/{context-971dc2dc.js.map → context-d9e248df.js.map} +1 -1
  229. package/cjs/dist/index.css +55 -55
  230. package/cjs/dist/index.css.map +1 -1
  231. package/cjs/{index-bd887626.js → index-1e57cbdb.js} +4 -4
  232. package/cjs/{index-bd887626.js.map → index-1e57cbdb.js.map} +1 -1
  233. package/cjs/{index-871938c2.js → index-1f02e60f.js} +2 -2
  234. package/cjs/{index-871938c2.js.map → index-1f02e60f.js.map} +1 -1
  235. package/cjs/{index-2068f053.js → index-26a1e861.js} +2 -2
  236. package/cjs/{index-2068f053.js.map → index-26a1e861.js.map} +1 -1
  237. package/cjs/{index-3ecf6f1c.js → index-36aaf992.js} +1 -1
  238. package/cjs/{index-3ecf6f1c.js.map → index-36aaf992.js.map} +1 -1
  239. package/cjs/{index-4efda0a3.js → index-603c2a7c.js} +3 -3
  240. package/cjs/{index-4efda0a3.js.map → index-603c2a7c.js.map} +1 -1
  241. package/cjs/{index-27196170.js → index-72fd0294.js} +2 -2
  242. package/cjs/{index-27196170.js.map → index-72fd0294.js.map} +1 -1
  243. package/cjs/{index-05458f16.js → index-7c5d21c4.js} +1 -1
  244. package/cjs/{index-05458f16.js.map → index-7c5d21c4.js.map} +1 -1
  245. package/cjs/{index-106dbf0e.js → index-959a4ab1.js} +2 -2
  246. package/cjs/{index-106dbf0e.js.map → index-959a4ab1.js.map} +1 -1
  247. package/cjs/{index-4f21cdee.js → index-a7fa406f.js} +2 -2
  248. package/cjs/{index-4f21cdee.js.map → index-a7fa406f.js.map} +1 -1
  249. package/cjs/{index-046dffba.js → index-aa908fcf.js} +7 -7
  250. package/cjs/{index-046dffba.js.map → index-aa908fcf.js.map} +1 -1
  251. package/cjs/{index-95fe4955.js → index-aeba3b06.js} +4 -4
  252. package/cjs/{index-95fe4955.js.map → index-aeba3b06.js.map} +1 -1
  253. package/cjs/{index-1ebfe279.js → index-b9fbe704.js} +5 -5
  254. package/cjs/{index-1ebfe279.js.map → index-b9fbe704.js.map} +1 -1
  255. package/cjs/{index-a981854c.js → index-c825cf5b.js} +3 -3
  256. package/cjs/{index-a981854c.js.map → index-c825cf5b.js.map} +1 -1
  257. package/cjs/{index-d4ad85fe.js → index-d41db9c1.js} +7 -7
  258. package/cjs/{index-d4ad85fe.js.map → index-d41db9c1.js.map} +1 -1
  259. package/cjs/{index-b8bcbe2e.js → index-e3f00fd1.js} +3 -3
  260. package/cjs/{index-b8bcbe2e.js.map → index-e3f00fd1.js.map} +1 -1
  261. package/cjs/index.js +48 -48
  262. package/cjs/sendbirdSelectors.js +2 -2
  263. package/cjs/{stringSet-eba21df4.js → stringSet-7330b627.js} +1 -1
  264. package/cjs/{stringSet-eba21df4.js.map → stringSet-7330b627.js.map} +1 -1
  265. package/cjs/{tokenize-ca4ac5a1.js → tokenize-a5a20ef3.js} +3 -3
  266. package/cjs/{tokenize-ca4ac5a1.js.map → tokenize-a5a20ef3.js.map} +1 -1
  267. package/cjs/{topics-e4dffa33.js → topics-7547922a.js} +1 -1
  268. package/cjs/{topics-e4dffa33.js.map → topics-7547922a.js.map} +1 -1
  269. package/cjs/{tslib.es6-94d25845.js → tslib.es6-ee1122c5.js} +1 -1
  270. package/cjs/{tslib.es6-94d25845.js.map → tslib.es6-ee1122c5.js.map} +1 -1
  271. package/cjs/{types-dd4057f8.js → types-7daeb4a1.js} +1 -1
  272. package/cjs/{types-dd4057f8.js.map → types-7daeb4a1.js.map} +1 -1
  273. package/cjs/ui/Accordion.js +3 -3
  274. package/cjs/ui/AccordionGroup.js +2 -2
  275. package/cjs/ui/AdminMessage.js +3 -3
  276. package/cjs/ui/Avatar.js +2 -2
  277. package/cjs/ui/Badge.js +5 -5
  278. package/cjs/ui/BottomSheet.js +1 -1
  279. package/cjs/ui/Button.js +3 -3
  280. package/cjs/ui/ChannelAvatar.js +3 -3
  281. package/cjs/ui/ConnectionStatus.js +4 -4
  282. package/cjs/ui/ContextMenu.js +5 -5
  283. package/cjs/ui/DateSeparator.js +4 -4
  284. package/cjs/ui/EmojiReactions.js +7 -7
  285. package/cjs/ui/FileMessageItemBody.js +6 -6
  286. package/cjs/ui/FileViewer.js +8 -8
  287. package/cjs/ui/IconButton.js +1 -1
  288. package/cjs/ui/ImageRenderer.js +1 -1
  289. package/cjs/ui/Input.js +2 -2
  290. package/cjs/ui/Label.js +2 -2
  291. package/cjs/ui/LinkLabel.js +2 -2
  292. package/cjs/ui/Loader.js +1 -1
  293. package/cjs/ui/MentionLabel.js +10 -10
  294. package/cjs/ui/MentionUserLabel.js +1 -1
  295. package/cjs/ui/MessageContent.js +27 -27
  296. package/cjs/ui/MessageInput.js +13 -13
  297. package/cjs/ui/MessageItemMenu.js +8 -8
  298. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  299. package/cjs/ui/MessageSearchFileItem.js +10 -10
  300. package/cjs/ui/MessageSearchItem.js +9 -9
  301. package/cjs/ui/MessageStatus.js +10 -10
  302. package/cjs/ui/Modal.js +7 -7
  303. package/cjs/ui/OGMessageItemBody.js +13 -13
  304. package/cjs/ui/OpenChannelAdminMessage.js +3 -3
  305. package/cjs/ui/OpenChannelAvatar.js +6 -6
  306. package/cjs/ui/OpenchannelConversationHeader.js +6 -6
  307. package/cjs/ui/OpenchannelFileMessage.js +16 -16
  308. package/cjs/ui/OpenchannelOGMessage.js +18 -18
  309. package/cjs/ui/OpenchannelThumbnailMessage.js +15 -15
  310. package/cjs/ui/OpenchannelUserMessage.js +16 -16
  311. package/cjs/ui/PlaceHolder.js +6 -6
  312. package/cjs/ui/PlaybackTime.js +2 -2
  313. package/cjs/ui/QuoteMessage.js +6 -6
  314. package/cjs/ui/QuoteMessageInput.js +6 -6
  315. package/cjs/ui/ReactionBadge.js +3 -3
  316. package/cjs/ui/ReactionButton.js +1 -1
  317. package/cjs/ui/SortByRow.js +2 -2
  318. package/cjs/ui/TextButton.js +2 -2
  319. package/cjs/ui/TextMessageItemBody.js +13 -13
  320. package/cjs/ui/ThreadReplies.js +6 -6
  321. package/cjs/ui/ThumbnailMessageItemBody.js +2 -2
  322. package/cjs/ui/Tooltip.js +3 -3
  323. package/cjs/ui/TooltipWrapper.js +1 -1
  324. package/cjs/ui/UnknownMessageItemBody.js +6 -6
  325. package/cjs/ui/UserListItem.js +10 -10
  326. package/cjs/ui/UserProfile.js +9 -9
  327. package/cjs/ui/VoiceMessageItemBody.js +5 -5
  328. package/cjs/ui/VoiceMessgeInput.js +8 -8
  329. package/cjs/ui/Word.js +10 -10
  330. package/cjs/{useLongPress-d8b2586f.js → useLongPress-3e3b1188.js} +3 -3
  331. package/cjs/{useLongPress-d8b2586f.js.map → useLongPress-3e3b1188.js.map} +1 -1
  332. package/cjs/useSendbirdStateContext.js +1 -1
  333. package/cjs/utils/message/isVoiceMessage.js +2 -2
  334. package/cjs/{utils-f294dd80.js → utils-5905fc1a.js} +1 -1
  335. package/cjs/{utils-f294dd80.js.map → utils-5905fc1a.js.map} +1 -1
  336. package/cjs/{utils-6584b9f0.js → utils-5ca88bb6.js} +1 -1
  337. package/cjs/{utils-6584b9f0.js.map → utils-5ca88bb6.js.map} +1 -1
  338. package/cjs/{utils-7846a174.js → utils-de779857.js} +2 -2
  339. package/cjs/{utils-7846a174.js.map → utils-de779857.js.map} +1 -1
  340. package/cjs/{utils-49414b11.js → utils-e4cd6a0c.js} +1 -1
  341. package/cjs/{utils-49414b11.js.map → utils-e4cd6a0c.js.map} +1 -1
  342. package/cjs/{uuid-fe1b03cf.js → uuid-26b61f16.js} +1 -1
  343. package/cjs/{uuid-fe1b03cf.js.map → uuid-26b61f16.js.map} +1 -1
  344. package/cjs/withSendbird.js +1 -1
  345. package/{color-6e50d9e2.js → color-f6e2214f.js} +1 -1
  346. package/{color-6e50d9e2.js.map → color-f6e2214f.js.map} +1 -1
  347. package/{compareIds-67c3b05b.js → compareIds-d958887d.js} +1 -1
  348. package/{compareIds-67c3b05b.js.map → compareIds-d958887d.js.map} +1 -1
  349. package/{const-8c87d265.js → const-735bcf5b.js} +1 -1
  350. package/{const-8c87d265.js.map → const-735bcf5b.js.map} +1 -1
  351. package/{const-b20d1024.js → const-c7334190.js} +1 -1
  352. package/{const-b20d1024.js.map → const-c7334190.js.map} +1 -1
  353. package/{consts-5929bec3.js → consts-12512664.js} +1 -1
  354. package/{consts-5929bec3.js.map → consts-12512664.js.map} +1 -1
  355. package/{consts-996c0a58.js → consts-8f50899e.js} +1 -1
  356. package/{consts-996c0a58.js.map → consts-8f50899e.js.map} +1 -1
  357. package/{consts-5b2caf41.js → consts-9422accf.js} +1 -1
  358. package/{consts-5b2caf41.js.map → consts-9422accf.js.map} +1 -1
  359. package/{consts-44e40533.js → consts-ddb92249.js} +1 -1
  360. package/{consts-44e40533.js.map → consts-ddb92249.js.map} +1 -1
  361. package/{context-3ffe9980.js → context-7465b898.js} +2 -2
  362. package/{context-3ffe9980.js.map → context-7465b898.js.map} +1 -1
  363. package/dist/index.css +55 -55
  364. package/dist/index.css.map +1 -1
  365. package/{index-5d8bac74.js → index-0ecbda20.js} +4 -4
  366. package/{index-5d8bac74.js.map → index-0ecbda20.js.map} +1 -1
  367. package/{index-5668e8eb.js → index-12c44496.js} +1 -1
  368. package/{index-5668e8eb.js.map → index-12c44496.js.map} +1 -1
  369. package/{index-4538a9f1.js → index-437c0f3c.js} +7 -7
  370. package/{index-4538a9f1.js.map → index-437c0f3c.js.map} +1 -1
  371. package/{index-e34d85fd.js → index-47d179f2.js} +2 -2
  372. package/{index-e34d85fd.js.map → index-47d179f2.js.map} +1 -1
  373. package/{index-055bcae0.js → index-4c3eaeb7.js} +2 -2
  374. package/{index-055bcae0.js.map → index-4c3eaeb7.js.map} +1 -1
  375. package/{index-26931609.js → index-63e7b57b.js} +5 -5
  376. package/{index-26931609.js.map → index-63e7b57b.js.map} +1 -1
  377. package/{index-55b1016d.js → index-6e33b2e0.js} +3 -3
  378. package/{index-55b1016d.js.map → index-6e33b2e0.js.map} +1 -1
  379. package/{index-c36339ab.js → index-7b8ea67e.js} +4 -4
  380. package/{index-c36339ab.js.map → index-7b8ea67e.js.map} +1 -1
  381. package/{index-3ee902ac.js → index-83ae3ffe.js} +2 -2
  382. package/{index-3ee902ac.js.map → index-83ae3ffe.js.map} +1 -1
  383. package/{index-824e5bc8.js → index-8e901b57.js} +2 -2
  384. package/{index-824e5bc8.js.map → index-8e901b57.js.map} +1 -1
  385. package/{index-1d770388.js → index-9626a87e.js} +3 -3
  386. package/{index-1d770388.js.map → index-9626a87e.js.map} +1 -1
  387. package/{index-d5769ac4.js → index-a52a0b76.js} +7 -7
  388. package/{index-d5769ac4.js.map → index-a52a0b76.js.map} +1 -1
  389. package/{index-66393faa.js → index-ace292c2.js} +3 -3
  390. package/{index-66393faa.js.map → index-ace292c2.js.map} +1 -1
  391. package/{index-6e6736ec.js → index-aced8439.js} +2 -2
  392. package/{index-6e6736ec.js.map → index-aced8439.js.map} +1 -1
  393. package/{index-3fff67da.js → index-cf141ad7.js} +1 -1
  394. package/{index-3fff67da.js.map → index-cf141ad7.js.map} +1 -1
  395. package/index.d.ts +1 -1
  396. package/index.js +48 -48
  397. package/package.json +1 -1
  398. package/sendbirdSelectors.js +2 -2
  399. package/{stringSet-a9c3ac4a.js → stringSet-7c7d84fc.js} +1 -1
  400. package/{stringSet-a9c3ac4a.js.map → stringSet-7c7d84fc.js.map} +1 -1
  401. package/{tokenize-63675252.js → tokenize-8f238f49.js} +3 -3
  402. package/{tokenize-63675252.js.map → tokenize-8f238f49.js.map} +1 -1
  403. package/{topics-2a79610f.js → topics-4697c2b3.js} +1 -1
  404. package/{topics-2a79610f.js.map → topics-4697c2b3.js.map} +1 -1
  405. package/{tslib.es6-bb0710b6.js → tslib.es6-209c9f08.js} +1 -1
  406. package/{tslib.es6-bb0710b6.js.map → tslib.es6-209c9f08.js.map} +1 -1
  407. package/{types-27a6a112.js → types-41ea68c8.js} +1 -1
  408. package/{types-27a6a112.js.map → types-41ea68c8.js.map} +1 -1
  409. package/ui/Accordion.js +3 -3
  410. package/ui/AccordionGroup.js +2 -2
  411. package/ui/AdminMessage.js +3 -3
  412. package/ui/Avatar.js +2 -2
  413. package/ui/Badge.js +5 -5
  414. package/ui/BottomSheet.js +1 -1
  415. package/ui/Button.js +3 -3
  416. package/ui/ChannelAvatar.js +3 -3
  417. package/ui/ConnectionStatus.js +4 -4
  418. package/ui/ContextMenu.js +5 -5
  419. package/ui/DateSeparator.js +4 -4
  420. package/ui/EmojiReactions.js +7 -7
  421. package/ui/FileMessageItemBody.js +6 -6
  422. package/ui/FileViewer.js +8 -8
  423. package/ui/IconButton.js +1 -1
  424. package/ui/ImageRenderer.js +1 -1
  425. package/ui/Input.js +2 -2
  426. package/ui/Label.js +2 -2
  427. package/ui/LinkLabel.js +2 -2
  428. package/ui/Loader.js +1 -1
  429. package/ui/MentionLabel.js +10 -10
  430. package/ui/MentionUserLabel.js +1 -1
  431. package/ui/MessageContent.js +27 -27
  432. package/ui/MessageInput.js +13 -13
  433. package/ui/MessageItemMenu.js +8 -8
  434. package/ui/MessageItemReactionMenu.js +5 -5
  435. package/ui/MessageSearchFileItem.js +10 -10
  436. package/ui/MessageSearchItem.js +9 -9
  437. package/ui/MessageStatus.js +10 -10
  438. package/ui/Modal.js +7 -7
  439. package/ui/OGMessageItemBody.js +13 -13
  440. package/ui/OpenChannelAdminMessage.js +3 -3
  441. package/ui/OpenChannelAvatar.js +6 -6
  442. package/ui/OpenchannelConversationHeader.js +6 -6
  443. package/ui/OpenchannelFileMessage.js +16 -16
  444. package/ui/OpenchannelOGMessage.js +18 -18
  445. package/ui/OpenchannelThumbnailMessage.js +15 -15
  446. package/ui/OpenchannelUserMessage.js +16 -16
  447. package/ui/PlaceHolder.js +6 -6
  448. package/ui/PlaybackTime.js +2 -2
  449. package/ui/QuoteMessage.js +6 -6
  450. package/ui/QuoteMessageInput.js +6 -6
  451. package/ui/ReactionBadge.js +3 -3
  452. package/ui/ReactionButton.js +1 -1
  453. package/ui/SortByRow.js +2 -2
  454. package/ui/TextButton.js +2 -2
  455. package/ui/TextMessageItemBody.js +13 -13
  456. package/ui/ThreadReplies.js +6 -6
  457. package/ui/ThumbnailMessageItemBody.js +2 -2
  458. package/ui/Tooltip.js +3 -3
  459. package/ui/TooltipWrapper.js +1 -1
  460. package/ui/UnknownMessageItemBody.js +6 -6
  461. package/ui/UserListItem.js +10 -10
  462. package/ui/UserProfile.js +9 -9
  463. package/ui/VoiceMessageItemBody.js +5 -5
  464. package/ui/VoiceMessgeInput.js +8 -8
  465. package/ui/Word.js +10 -10
  466. package/{useLongPress-7504e5b8.js → useLongPress-e2570976.js} +3 -3
  467. package/{useLongPress-7504e5b8.js.map → useLongPress-e2570976.js.map} +1 -1
  468. package/useSendbirdStateContext.js +1 -1
  469. package/utils/message/isVoiceMessage.js +2 -2
  470. package/{utils-8318012f.js → utils-04bd857d.js} +1 -1
  471. package/{utils-8318012f.js.map → utils-04bd857d.js.map} +1 -1
  472. package/{utils-3ba27c29.js → utils-12a3467f.js} +1 -1
  473. package/{utils-3ba27c29.js.map → utils-12a3467f.js.map} +1 -1
  474. package/{utils-1789e6d0.js → utils-3d03001e.js} +1 -1
  475. package/{utils-1789e6d0.js.map → utils-3d03001e.js.map} +1 -1
  476. package/{utils-3c4b1dd1.js → utils-4942106c.js} +2 -2
  477. package/{utils-3c4b1dd1.js.map → utils-4942106c.js.map} +1 -1
  478. package/{uuid-9ea19939.js → uuid-31c6ecb2.js} +1 -1
  479. package/{uuid-9ea19939.js.map → uuid-31c6ecb2.js.map} +1 -1
  480. package/withSendbird.js +1 -1
  481. package/_rollupPluginBabelHelpers-f78972d2.js.map +0 -1
  482. package/cjs/_rollupPluginBabelHelpers-05716924.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index-1d770388.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-9626a87e.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,13 +1,13 @@
1
- import { a as __spreadArray } from './tslib.es6-bb0710b6.js';
1
+ import { a as __spreadArray } from './tslib.es6-209c9f08.js';
2
2
  import React__default from 'react';
3
- import { f as format } from './index-6e6736ec.js';
3
+ import { f as format } from './index-aced8439.js';
4
4
  import Icon, { IconTypes, IconColors } from './ui/Icon.js';
5
- import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from './index-824e5bc8.js';
5
+ import { c as LabelStringSet, L as Label, a as LabelTypography, b as LabelColors } from './index-8e901b57.js';
6
6
  import Loader from './ui/Loader.js';
7
- import { t as truncateString, h as isSentStatus } from './index-3ee902ac.js';
7
+ import { t as truncateString, h as isSentStatus } from './index-83ae3ffe.js';
8
8
  import { getOutgoingMessageState, OutgoingMessageStates } from './utils/message/getOutgoingMessageState.js';
9
- import { i as isToday, a as isYesterday, b as isThisYear } from './index-55b1016d.js';
10
- import { u as useLocalization } from './LocalizationContext-34b46c40.js';
9
+ import { i as isToday, a as isYesterday, b as isThisYear } from './index-6e33b2e0.js';
10
+ import { u as useLocalization } from './LocalizationContext-654ae04f.js';
11
11
 
12
12
  const getChannelTitle = function () {
13
13
  var _channel$members;
@@ -142,4 +142,4 @@ function MessageStatus(_a) {
142
142
  }
143
143
 
144
144
  export { MessageStatus as M, getTotalMembers as a, getLastMessageCreatedAt as b, getLastMessage as c, getChannelUnreadMessageCount as d, MessageStatusTypes as e, getChannelTitle as g };
145
- //# sourceMappingURL=index-d5769ac4.js.map
145
+ //# sourceMappingURL=index-a52a0b76.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-d5769ac4.js","sources":["../src/smart-components/ChannelList/components/ChannelPreview/utils.js","../src/ui/MessageStatus/index.tsx"],"sourcesContent":["import isToday from 'date-fns/isToday';\nimport format from 'date-fns/format';\nimport isThisYear from 'date-fns/isThisYear';\nimport isYesterday from 'date-fns/isYesterday';\n\nimport { truncateString } from '../../../../utils';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (channel = {}, currentUserId, stringSet = LabelStringSet) => {\n if (!channel?.name && !channel?.members) {\n return stringSet.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel?.members?.length === 1) {\n return stringSet.NO_MEMBERS;\n }\n return (channel?.members || [])\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || stringSet.NO_NAME))\n .join(', ');\n};\n\nexport const getLastMessageCreatedAt = ({\n channel,\n locale,\n stringSet,\n}) => {\n const createdAt = channel?.lastMessage?.createdAt;\n const optionalParam = locale ? { locale } : null;\n if (!createdAt) {\n return '';\n }\n if (isToday(createdAt)) {\n return format(createdAt, 'p', optionalParam);\n }\n if (isYesterday(createdAt)) {\n return stringSet?.MESSAGE_STATUS__YESTERDAY || 'Yesterday';\n }\n if (isThisYear(createdAt)) {\n return format(createdAt, 'MMM d', optionalParam);\n }\n return format(createdAt, 'yyyy/M/d', optionalParam);\n};\n\nexport const getTotalMembers = (channel) => (\n channel?.memberCount\n ? channel.memberCount\n : 0\n);\n\nconst getPrettyLastMessage = (message = {}) => {\n const MAXLEN = 30;\n const { messageType, name } = message;\n if (messageType === 'file') {\n return truncateString(name, MAXLEN);\n }\n return message.message;\n};\n\nexport const getLastMessage = (channel) => (channel?.lastMessage ? getPrettyLastMessage(channel?.lastMessage) : '');\n\nexport const getChannelUnreadMessageCount = (channel) => (\n channel?.unreadMessageCount\n ? channel.unreadMessageCount\n : 0\n);\n","import './index.scss';\nimport React from 'react';\nimport format from 'date-fns/format';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelColors, LabelTypography } from '../Label';\nimport Loader from '../Loader';\n\nimport { isSentStatus } from '../../utils';\nimport {\n getOutgoingMessageState,\n OutgoingMessageStates,\n} from '../../utils/exports/getOutgoingMessageState';\nimport { getLastMessageCreatedAt } from '../../smart-components/ChannelList/components/ChannelPreview/utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nexport const MessageStatusTypes = OutgoingMessageStates;\n\ninterface MessageStatusProps {\n className?: string;\n message: UserMessage | FileMessage;\n channel: GroupChannel;\n isDateSeparatorConsidered?: boolean;\n}\n\nexport default function MessageStatus({\n className,\n message,\n channel,\n isDateSeparatorConsidered = true,\n}: MessageStatusProps): React.ReactElement {\n const { stringSet, dateLocale } = useLocalization();\n const status = getOutgoingMessageState(channel, message);\n const hideMessageStatusIcon = channel?.isGroupChannel?.() && (\n (channel.isSuper || channel.isPublic || channel.isBroadcast)\n && !(status === OutgoingMessageStates.PENDING || status === OutgoingMessageStates.FAILED)\n );\n const iconType = {\n [OutgoingMessageStates.SENT]: IconTypes.DONE,\n [OutgoingMessageStates.DELIVERED]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.READ]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.FAILED]: IconTypes.ERROR,\n };\n const iconColor = {\n [OutgoingMessageStates.SENT]: IconColors.SENT,\n [OutgoingMessageStates.DELIVERED]: IconColors.SENT,\n [OutgoingMessageStates.READ]: IconColors.READ,\n [OutgoingMessageStates.FAILED]: IconColors.ERROR,\n };\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-message-status',\n ].join(' ')}\n >\n {(status === OutgoingMessageStates.PENDING) ? (\n <Loader\n className=\"sendbird-message-status__icon\"\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n ) : (\n <Icon\n className={`sendbird-message-status__icon ${hideMessageStatusIcon ? 'hide-icon' : ''} ${status === OutgoingMessageStates.FAILED ? '' : 'sendbird-message-status--sent'\n }`}\n type={iconType[status] || IconTypes.ERROR}\n fillColor={iconColor[status]}\n width=\"16px\"\n height=\"16px\"\n />\n )}\n {isSentStatus(status) && (\n <Label\n className=\"sendbird-message-status__text\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n isDateSeparatorConsidered\n ? format(message?.createdAt || 0, 'p', { locale: dateLocale })\n : getLastMessageCreatedAt({ channel, locale: dateLocale, stringSet })\n }\n </Label>\n )}\n </div>\n );\n}\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","getLastMessageCreatedAt","locale","createdAt","lastMessage","optionalParam","isToday","format","isYesterday","MESSAGE_STATUS__YESTERDAY","isThisYear","getTotalMembers","memberCount","getPrettyLastMessage","message","MAXLEN","messageType","truncateString","getLastMessage","getChannelUnreadMessageCount","unreadMessageCount","MessageStatusTypes","OutgoingMessageStates","MessageStatus","_a","className","_e","isDateSeparatorConsidered","_f","useLocalization","dateLocale","status","getOutgoingMessageState","hideMessageStatusIcon","_d","isGroupChannel","call","isSuper","isPublic","isBroadcast","PENDING","FAILED","iconType","_b","SENT","IconTypes","DONE","DELIVERED","DONE_ALL","READ","ERROR","iconColor","_c","IconColors","React","__spreadArray","Array","isArray","SPINNER","PRIMARY","concat","isSentStatus","LabelTypography","CAPTION_3","LabelColors","ONBACKGROUND_2"],"mappings":"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"}
1
+ {"version":3,"file":"index-a52a0b76.js","sources":["../src/smart-components/ChannelList/components/ChannelPreview/utils.js","../src/ui/MessageStatus/index.tsx"],"sourcesContent":["import isToday from 'date-fns/isToday';\nimport format from 'date-fns/format';\nimport isThisYear from 'date-fns/isThisYear';\nimport isYesterday from 'date-fns/isYesterday';\n\nimport { truncateString } from '../../../../utils';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (channel = {}, currentUserId, stringSet = LabelStringSet) => {\n if (!channel?.name && !channel?.members) {\n return stringSet.NO_TITLE;\n }\n if (channel?.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n if (channel?.members?.length === 1) {\n return stringSet.NO_MEMBERS;\n }\n return (channel?.members || [])\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || stringSet.NO_NAME))\n .join(', ');\n};\n\nexport const getLastMessageCreatedAt = ({\n channel,\n locale,\n stringSet,\n}) => {\n const createdAt = channel?.lastMessage?.createdAt;\n const optionalParam = locale ? { locale } : null;\n if (!createdAt) {\n return '';\n }\n if (isToday(createdAt)) {\n return format(createdAt, 'p', optionalParam);\n }\n if (isYesterday(createdAt)) {\n return stringSet?.MESSAGE_STATUS__YESTERDAY || 'Yesterday';\n }\n if (isThisYear(createdAt)) {\n return format(createdAt, 'MMM d', optionalParam);\n }\n return format(createdAt, 'yyyy/M/d', optionalParam);\n};\n\nexport const getTotalMembers = (channel) => (\n channel?.memberCount\n ? channel.memberCount\n : 0\n);\n\nconst getPrettyLastMessage = (message = {}) => {\n const MAXLEN = 30;\n const { messageType, name } = message;\n if (messageType === 'file') {\n return truncateString(name, MAXLEN);\n }\n return message.message;\n};\n\nexport const getLastMessage = (channel) => (channel?.lastMessage ? getPrettyLastMessage(channel?.lastMessage) : '');\n\nexport const getChannelUnreadMessageCount = (channel) => (\n channel?.unreadMessageCount\n ? channel.unreadMessageCount\n : 0\n);\n","import './index.scss';\nimport React from 'react';\nimport format from 'date-fns/format';\nimport { GroupChannel } from '@sendbird/chat/groupChannel';\nimport { FileMessage, UserMessage } from '@sendbird/chat/message';\n\nimport Icon, { IconTypes, IconColors } from '../Icon';\nimport Label, { LabelColors, LabelTypography } from '../Label';\nimport Loader from '../Loader';\n\nimport { isSentStatus } from '../../utils';\nimport {\n getOutgoingMessageState,\n OutgoingMessageStates,\n} from '../../utils/exports/getOutgoingMessageState';\nimport { getLastMessageCreatedAt } from '../../smart-components/ChannelList/components/ChannelPreview/utils';\nimport { useLocalization } from '../../lib/LocalizationContext';\n\nexport const MessageStatusTypes = OutgoingMessageStates;\n\ninterface MessageStatusProps {\n className?: string;\n message: UserMessage | FileMessage;\n channel: GroupChannel;\n isDateSeparatorConsidered?: boolean;\n}\n\nexport default function MessageStatus({\n className,\n message,\n channel,\n isDateSeparatorConsidered = true,\n}: MessageStatusProps): React.ReactElement {\n const { stringSet, dateLocale } = useLocalization();\n const status = getOutgoingMessageState(channel, message);\n const hideMessageStatusIcon = channel?.isGroupChannel?.() && (\n (channel.isSuper || channel.isPublic || channel.isBroadcast)\n && !(status === OutgoingMessageStates.PENDING || status === OutgoingMessageStates.FAILED)\n );\n const iconType = {\n [OutgoingMessageStates.SENT]: IconTypes.DONE,\n [OutgoingMessageStates.DELIVERED]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.READ]: IconTypes.DONE_ALL,\n [OutgoingMessageStates.FAILED]: IconTypes.ERROR,\n };\n const iconColor = {\n [OutgoingMessageStates.SENT]: IconColors.SENT,\n [OutgoingMessageStates.DELIVERED]: IconColors.SENT,\n [OutgoingMessageStates.READ]: IconColors.READ,\n [OutgoingMessageStates.FAILED]: IconColors.ERROR,\n };\n\n return (\n <div\n className={[\n ...(Array.isArray(className) ? className : [className]),\n 'sendbird-message-status',\n ].join(' ')}\n >\n {(status === OutgoingMessageStates.PENDING) ? (\n <Loader\n className=\"sendbird-message-status__icon\"\n width=\"16px\"\n height=\"16px\"\n >\n <Icon\n type={IconTypes.SPINNER}\n fillColor={IconColors.PRIMARY}\n width=\"16px\"\n height=\"16px\"\n />\n </Loader>\n ) : (\n <Icon\n className={`sendbird-message-status__icon ${hideMessageStatusIcon ? 'hide-icon' : ''} ${status === OutgoingMessageStates.FAILED ? '' : 'sendbird-message-status--sent'\n }`}\n type={iconType[status] || IconTypes.ERROR}\n fillColor={iconColor[status]}\n width=\"16px\"\n height=\"16px\"\n />\n )}\n {isSentStatus(status) && (\n <Label\n className=\"sendbird-message-status__text\"\n type={LabelTypography.CAPTION_3}\n color={LabelColors.ONBACKGROUND_2}\n >\n {\n isDateSeparatorConsidered\n ? format(message?.createdAt || 0, 'p', { locale: dateLocale })\n : getLastMessageCreatedAt({ channel, locale: dateLocale, stringSet })\n }\n </Label>\n )}\n </div>\n );\n}\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","userId","map","nickname","NO_NAME","join","getLastMessageCreatedAt","locale","createdAt","lastMessage","optionalParam","isToday","format","isYesterday","MESSAGE_STATUS__YESTERDAY","isThisYear","getTotalMembers","memberCount","getPrettyLastMessage","message","MAXLEN","messageType","truncateString","getLastMessage","getChannelUnreadMessageCount","unreadMessageCount","MessageStatusTypes","OutgoingMessageStates","MessageStatus","_a","className","_e","isDateSeparatorConsidered","_f","useLocalization","dateLocale","status","getOutgoingMessageState","hideMessageStatusIcon","_d","isGroupChannel","call","isSuper","isPublic","isBroadcast","PENDING","FAILED","iconType","_b","SENT","IconTypes","DONE","DELIVERED","DONE_ALL","READ","ERROR","iconColor","_c","IconColors","React","__spreadArray","Array","isArray","SPINNER","PRIMARY","concat","isSentStatus","LabelTypography","CAPTION_3","LabelColors","ONBACKGROUND_2"],"mappings":";;;;;;;;;;;AAQO,MAAMA,eAAe,GAAG,YAA6D;AAAA,EAAA,IAAA,gBAAA,CAAA;;EAAA,IAA5DC,OAA4D,uEAAlD,EAAkD,CAAA;AAAA,EAAA,IAA9CC,aAA8C,GAAA,SAAA,CAAA,MAAA,GAAA,CAAA,GAAA,SAAA,CAAA,CAAA,CAAA,GAAA,SAAA,CAAA;EAAA,IAA/BC,SAA+B,uEAAnBC,cAAmB,CAAA;;AAC1F,EAAA,IAAI,EAACH,OAAD,KAAA,IAAA,IAACA,OAAD,KAACA,KAAAA,CAAAA,IAAAA,OAAO,CAAEI,IAAV,CAAA,IAAkB,EAACJ,OAAD,aAACA,OAAD,KAAA,KAAA,CAAA,IAACA,OAAO,CAAEK,OAAV,CAAtB,EAAyC;IACvC,OAAOH,SAAS,CAACI,QAAjB,CAAA;AACD,GAAA;;AACD,EAAA,IAAIN,OAAO,KAAA,IAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAEI,IAAT,IAAiBJ,OAAO,CAACI,IAAR,KAAiB,eAAtC,EAAuD;IACrD,OAAOJ,OAAO,CAACI,IAAf,CAAA;AACD,GAAA;;AACD,EAAA,IAAI,CAAAJ,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA,gBAAA,GAAAA,OAAO,CAAEK,OAAT,MAAA,IAAA,IAAA,gBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,gBAAA,CAAkBE,MAAlB,MAA6B,CAAjC,EAAoC;IAClC,OAAOL,SAAS,CAACM,UAAjB,CAAA;AACD,GAAA;;AACD,EAAA,OAAO,CAAC,CAAAR,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAA,KAAA,CAAP,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEK,OAAT,KAAoB,EAArB,EACJI,MADI,CACG,IAAA,IAAA;IAAA,IAAC;AAAEC,MAAAA,MAAAA;KAAH,GAAA,IAAA,CAAA;IAAA,OAAgBA,MAAM,KAAKT,aAA3B,CAAA;GADH,CAAA,CAEJU,GAFI,CAEA,KAAA,IAAA;IAAA,IAAC;AAAEC,MAAAA,QAAAA;KAAH,GAAA,KAAA,CAAA;AAAA,IAAA,OAAmBA,QAAQ,IAAIV,SAAS,CAACW,OAAzC,CAAA;AAAA,GAFA,CAGJC,CAAAA,IAHI,CAGC,IAHD,CAAP,CAAA;AAID,EAdM;AAgBA,MAAMC,uBAAuB,GAAG,KAIjC,IAAA;AAAA,EAAA,IAAA,oBAAA,CAAA;;EAAA,IAJkC;IACtCf,OADsC;IAEtCgB,MAFsC;AAGtCd,IAAAA,SAAAA;GACI,GAAA,KAAA,CAAA;EACJ,MAAMe,SAAS,GAAGjB,OAAH,KAAGA,IAAAA,IAAAA,OAAH,KAAGA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,oBAAAA,GAAAA,OAAO,CAAEkB,WAAZ,MAAG,IAAA,IAAA,oBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,oBAAA,CAAsBD,SAAxC,CAAA;EACA,MAAME,aAAa,GAAGH,MAAM,GAAG;AAAEA,IAAAA,MAAAA;AAAF,GAAH,GAAgB,IAA5C,CAAA;;EACA,IAAI,CAACC,SAAL,EAAgB;AACd,IAAA,OAAO,EAAP,CAAA;AACD,GAAA;;AACD,EAAA,IAAIG,OAAO,CAACH,SAAD,CAAX,EAAwB;AACtB,IAAA,OAAOI,MAAM,CAACJ,SAAD,EAAY,GAAZ,EAAiBE,aAAjB,CAAb,CAAA;AACD,GAAA;;AACD,EAAA,IAAIG,WAAW,CAACL,SAAD,CAAf,EAA4B;IAC1B,OAAO,CAAAf,SAAS,KAAA,IAAT,IAAAA,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,SAAS,CAAEqB,yBAAX,KAAwC,WAA/C,CAAA;AACD,GAAA;;AACD,EAAA,IAAIC,UAAU,CAACP,SAAD,CAAd,EAA2B;AACzB,IAAA,OAAOI,MAAM,CAACJ,SAAD,EAAY,OAAZ,EAAqBE,aAArB,CAAb,CAAA;AACD,GAAA;;AACD,EAAA,OAAOE,MAAM,CAACJ,SAAD,EAAY,UAAZ,EAAwBE,aAAxB,CAAb,CAAA;AACD,EApBM;MAsBMM,eAAe,GAAIzB,OAAD,IAC7BA,OAAO,SAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAE0B,WAAT,GACI1B,OAAO,CAAC0B,WADZ,GAEI,EAHC;;AAMP,MAAMC,oBAAoB,GAAG,YAAkB;EAAA,IAAjBC,OAAiB,uEAAP,EAAO,CAAA;EAC7C,MAAMC,MAAM,GAAG,EAAf,CAAA;EACA,MAAM;IAAEC,WAAF;AAAe1B,IAAAA,IAAAA;AAAf,GAAA,GAAwBwB,OAA9B,CAAA;;EACA,IAAIE,WAAW,KAAK,MAApB,EAA4B;AAC1B,IAAA,OAAOC,cAAc,CAAC3B,IAAD,EAAOyB,MAAP,CAArB,CAAA;AACD,GAAA;;EACD,OAAOD,OAAO,CAACA,OAAf,CAAA;AACD,CAPD,CAAA;;AASO,MAAMI,cAAc,GAAIhC,OAAD,IAAcA,OAAO,KAAA,IAAP,IAAAA,OAAO,KAAP,KAAA,CAAA,IAAAA,OAAO,CAAEkB,WAAT,GAAuBS,oBAAoB,CAAC3B,OAAD,KAACA,IAAAA,IAAAA,OAAD,KAACA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEkB,WAAV,CAA3C,GAAoE,GAAzG;MAEMe,4BAA4B,GAAIjC,OAAD,IAC1CA,OAAO,SAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAEkC,kBAAT,GACIlC,OAAO,CAACkC,kBADZ,GAEI;;AChDC,IAAMC,kBAAkB,GAAGC,sBAA3B;AASiB,SAAAC,aAAA,CAAcC,EAAd,EAKH;;;;;AAJnB,EAAA,IAAAC,SAAS,GAAAD,EAAA,CAAAC,SAAT;AAAA,MACAX,OAAO,GAAAU,EAAA,CAAAV,OADP;AAAA,MAEA5B,OAAO,GAAAsC,EAAA,CAAAtC,OAFP;AAAA,MAGAwC,EAAgC,GAAAF,EAAA,CAAAG,yBAHhC;MAGAA,yBAAyB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,IAAH,GAAOA,EAHhC,CAAA;;EAKM,IAAAE,EAAA,GAA4BC,eAAe,EAA3C;AAAA,MAAEzC,SAAS,GAAAwC,EAAA,CAAAxC,SAAX;AAAA,MAAa0C,UAAU,GAAAF,EAAA,CAAAE,UAAvB,CAAA;;AACN,EAAA,IAAMC,MAAM,GAAGC,uBAAuB,CAAC9C,OAAD,EAAU4B,OAAV,CAAtC,CAAA;AACA,EAAA,IAAMmB,qBAAqB,GAAG,CAAA,CAAAC,EAAA,GAAAhD,OAAO,KAAP,IAAA,IAAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,OAAO,CAAEiD,cAAT,MAA2B,IAA3B,IAA2BD,EAAA,KAAA,KAAA,CAA3B,GAA2B,KAAA,CAA3B,GAA2BA,EAAA,CAAAE,IAAA,CAAAlD,OAAA,CAA3B,MAC3BA,OAAO,CAACmD,OAAR,IAAmBnD,OAAO,CAACoD,QAA3B,IAAuCpD,OAAO,CAACqD,WAAhD,CACG,IAAA,EAAER,MAAM,KAAKT,qBAAqB,CAACkB,OAAjC,IAA4CT,MAAM,KAAKT,qBAAqB,CAACmB,MAA/E,CAFL,CAAA;EAIA,IAAMC,QAAQ,IAAAC,EAAA,GAAA,EAAA,EACZA,EAAA,CAACrB,qBAAqB,CAACsB,IAAvB,CAAA,GAA8BC,SAAS,CAACC,IAD5B,EAEZH,EAAA,CAACrB,qBAAqB,CAACyB,SAAvB,CAAA,GAAmCF,SAAS,CAACG,QAFjC,EAGZL,EAAA,CAACrB,qBAAqB,CAAC2B,IAAvB,CAAA,GAA8BJ,SAAS,CAACG,QAH5B,EAIZL,EAAA,CAACrB,qBAAqB,CAACmB,MAAvB,CAAA,GAAgCI,SAAS,CAACK,KAJ9B,IAAA,CAAd,CAAA;EAMA,IAAMC,SAAS,IAAAC,EAAA,GAAA,EAAA,EACbA,EAAA,CAAC9B,qBAAqB,CAACsB,IAAvB,CAAA,GAA8BS,UAAU,CAACT,IAD5B,EAEbQ,EAAA,CAAC9B,qBAAqB,CAACyB,SAAvB,CAAA,GAAmCM,UAAU,CAACT,IAFjC,EAGbQ,EAAA,CAAC9B,qBAAqB,CAAC2B,IAAvB,CAAA,GAA8BI,UAAU,CAACJ,IAH5B,EAIbG,EAAA,CAAC9B,qBAAqB,CAACmB,MAAvB,CAAA,GAAgCY,UAAU,CAACH,KAJ9B,IAAA,CAAf,CAAA;EAOA,oBACEI,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAS,EAAEC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACLC,KAAK,CAACC,OAAN,CAAchC,SAAd,IAA2BA,SAA3B,GAAuC,CAACA,SAAD,CADlC,EAC8C,IAD9C,CAAA,EAC8C,CACvD,yBADuD,CAD9C,EAGT,KAHS,CAAA,CAGTzB,IAHS,CAGJ,GAHI,CAAA;AADb,GAAA,EAMI+B,MAAM,KAAKT,qBAAqB,CAACkB,OAAlC,gBACCc,6BAAC,MAAD,EAAA;AACE,IAAA,SAAS,EAAC,+BADZ;AAEE,IAAA,KAAK,EAAC,MAFR;AAGE,IAAA,MAAM,EAAC,MAAA;AAHT,GAAA,eAKEA,6BAAC,IAAD,EAAA;IACE,IAAI,EAAET,SAAS,CAACa,OADlB;IAEE,SAAS,EAAEL,UAAU,CAACM,OAFxB;AAGE,IAAA,KAAK,EAAC,MAHR;AAIE,IAAA,MAAM,EAAC,MAAA;GATX,CAAA,CADD,gBAcCL,cAAA,CAAA,aAAA,CAAC,IAAD,EAAA;IACE,SAAS,EAAE,uCAAA,CAAiCrB,qBAAqB,GAAG,WAAH,GAAiB,EAAvE,EAA6E,GAA7E,EAA6E2B,MAA7E,CAA6E7B,MAAM,KAAKT,qBAAqB,CAACmB,MAAjC,GAA0C,EAA1C,GAA+C,+BAA5H,CADb;IAGE,IAAI,EAAEC,QAAQ,CAACX,MAAD,CAAR,IAAoBc,SAAS,CAACK,KAHtC;AAIE,IAAA,SAAS,EAAEC,SAAS,CAACpB,MAAD,CAJtB;AAKE,IAAA,KAAK,EAAC,MALR;AAME,IAAA,MAAM,EAAC,MAAA;AANT,GAAA,CApBJ,EA6BG8B,YAAY,CAAC9B,MAAD,CAAZ,iBACCuB,6BAAC,KAAD,EAAA;AACE,IAAA,SAAS,EAAC,+BADZ;IAEE,IAAI,EAAEQ,eAAe,CAACC,SAFxB;IAGE,KAAK,EAAEC,WAAW,CAACC,cAAAA;GAGjBtC,EAAAA,yBAAyB,GACrBpB,MAAM,CAAC,CAAAO,OAAO,KAAP,IAAA,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAEX,SAAT,KAAsB,CAAvB,EAA0B,GAA1B,EAA+B;AAAED,IAAAA,MAAM,EAAE4B,UAAAA;GAAzC,CADe,GAErB7B,uBAAuB,CAAC;AAAEf,IAAAA,OAAO,EAAAA,OAAT;AAAWgB,IAAAA,MAAM,EAAE4B,UAAnB;AAA+B1C,IAAAA,SAAS,EAAAA,SAAAA;GAAzC,CAR/B,CA9BJ,CADF,CAAA;AA6CD;;;;"}
@@ -1,9 +1,9 @@
1
1
  import React__default from 'react';
2
- import { T as TOKEN_TYPES, U as USER_MENTION_PREFIX } from './tokenize-63675252.js';
2
+ import { T as TOKEN_TYPES, U as USER_MENTION_PREFIX } from './tokenize-8f238f49.js';
3
3
  import { useMessageContext } from './Message/context.js';
4
4
  import MentionLabel from './ui/MentionLabel.js';
5
5
  import LinkLabel from './ui/LinkLabel.js';
6
- import { a as LabelTypography } from './index-824e5bc8.js';
6
+ import { a as LabelTypography } from './index-8e901b57.js';
7
7
 
8
8
  // this function is used to generate a unique key for token in message
9
9
  // it changes with updated time and index
@@ -54,4 +54,4 @@ function TextFragment(_a) {
54
54
  }
55
55
 
56
56
  export { TextFragment as T };
57
- //# sourceMappingURL=index-66393faa.js.map
57
+ //# sourceMappingURL=index-ace292c2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-66393faa.js","sources":["../src/smart-components/Message/utils/tokens/keyGenerator.ts","../src/smart-components/Message/components/TextFragment/index.tsx"],"sourcesContent":["// this function is used to generate a unique key for token in message\n// it changes with updated time and index\n// messageUpdatedAt is the key part of this key generator\nexport function keyGenerator(\n createdAt: number,\n messageUpdatedAt: number,\n index: number,\n): string {\n return `sb-msg_${createdAt}_${messageUpdatedAt}_${index}`;\n}\n","import React from 'react';\nimport { UserMessage } from '@sendbird/chat/message';\n\nimport { TOKEN_TYPES, Token } from '../../utils/tokens/types'\nimport { useMessageContext } from '../../context/MessageProvider';\nimport { keyGenerator } from '../../utils/tokens/keyGenerator';\nimport MentionLabel from '../../../../ui/MentionLabel';\nimport { USER_MENTION_PREFIX } from '../../consts';\nimport LinkLabel from '../../../../ui/LinkLabel';\nimport { LabelTypography } from '../../../../ui//Label';\n\nexport type TextFragmentProps = {\n tokens: Token[];\n}\n\nexport default function TextFragment({\n tokens,\n}: TextFragmentProps): React.ReactElement {\n const messageStore = useMessageContext();\n\n const message = messageStore?.message as UserMessage;\n const isByMe = messageStore?.isByMe;\n const { updatedAt, createdAt } = message;\n return (\n <>\n {\n tokens?.map((token, idx) => {\n const key = keyGenerator(createdAt, updatedAt, idx);\n switch (token.type) {\n case TOKEN_TYPES.mention:\n return (\n <span className=\"sendbird-word\" key={key}>\n <MentionLabel\n mentionTemplate={USER_MENTION_PREFIX}\n mentionedUserId={token.userId}\n mentionedUserNickname={token.value}\n isByMe={isByMe}\n />\n </span>\n );\n case TOKEN_TYPES.url:\n return (\n <span className='sendbird-word' key={key}>\n <LinkLabel\n className=\"sendbird-word__url\"\n src={token.value}\n type={LabelTypography.BODY_1}\n >\n {token.value}\n </LinkLabel>\n </span>\n );\n case TOKEN_TYPES.string:\n default:\n return (\n <React.Fragment key={key}>{token.value}</React.Fragment>\n );\n }\n })\n }\n </>\n );\n}\n"],"names":["keyGenerator","createdAt","messageUpdatedAt","index","concat","TextFragment","_a","tokens","messageStore","useMessageContext","message","isByMe","updatedAt","React","map","token","idx","key","type","TOKEN_TYPES","mention","USER_MENTION_PREFIX","userId","value","url","LabelTypography","BODY_1","string"],"mappings":";;;;;;;AAAA;AACA;AACA;SACgBA,aACdC,WACAC,kBACAC,OAAa;AAEb,EAAA,OAAO,gBAAA,CAAUF,SAAV,EAAmB,GAAnB,CAAmBG,CAAAA,MAAnB,CAAuBF,gBAAvB,EAA2C,GAA3C,CAAA,CAA2CE,MAA3C,CAA2CD,KAA3C,CAAP,CAAA;AACD;;ACMuB,SAAAE,YAAA,CAAaC,EAAb,EAEJ;AADlB,EAAA,IAAAC,MAAM,GAAAD,EAAA,CAAAC,MAAN,CAAA;EAEA,IAAMC,YAAY,GAAGC,iBAAiB,EAAtC,CAAA;AAEA,EAAA,IAAMC,OAAO,GAAGF,YAAY,KAAA,IAAZ,IAAAA,YAAY,KAAZ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,YAAY,CAAEE,OAA9B,CAAA;AACA,EAAA,IAAMC,MAAM,GAAGH,YAAY,KAAA,IAAZ,IAAAA,YAAY,KAAZ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,YAAY,CAAEG,MAA7B,CAAA;AACQ,EAAA,IAAAC,SAAS,GAAgBF,OAAO,CAAAE,SAAhC;AAAA,MAAWX,SAAS,GAAKS,OAAO,CAAAT,SAAhC,CAAA;EACR,oBACEY,cAAA,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,EAEIN,MAAM,KAAN,IAAA,IAAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,MAAM,CAAEO,GAAR,CAAY,UAACC,KAAD,EAAQC,GAAR,EAAW;IACrB,IAAMC,GAAG,GAAGjB,YAAY,CAACC,SAAD,EAAYW,SAAZ,EAAuBI,GAAvB,CAAxB,CAAA;;IACA,QAAQD,KAAK,CAACG,IAAd;MACE,KAAKC,WAAW,CAACC,OAAjB;QACE,oBACEP,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAM,UAAA,SAAS,EAAC,eAAhB;AAAgC,UAAA,GAAG,EAAEI,GAAAA;AAArC,SAAA,eACEJ,6BAAC,YAAD,EAAA;AACE,UAAA,eAAe,EAAEQ,mBADnB;UAEE,eAAe,EAAEN,KAAK,CAACO,MAFzB;UAGE,qBAAqB,EAAEP,KAAK,CAACQ,KAH/B;AAIE,UAAA,MAAM,EAAEZ,MAAAA;AAJV,SAAA,CADF,CADF,CAAA;;MAUF,KAAKQ,WAAW,CAACK,GAAjB;QACE,oBACEX,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAM,UAAA,SAAS,EAAC,eAAhB;AAAgC,UAAA,GAAG,EAAEI,GAAAA;AAArC,SAAA,eACEJ,6BAAC,SAAD,EAAA;AACE,UAAA,SAAS,EAAC,oBADZ;UAEE,GAAG,EAAEE,KAAK,CAACQ,KAFb;UAGE,IAAI,EAAEE,eAAe,CAACC,MAAAA;AAHxB,SAAA,EAKGX,KAAK,CAACQ,KALT,CADF,CADF,CAAA;;MAWF,KAAKJ,WAAW,CAACQ,MAAjB,CAAA;AACA,MAAA;QACE,oBACEd,cAAA,CAAA,aAAA,CAACA,cAAD,CAAO,QAAP,EAAA;AAAgB,UAAA,GAAG,EAAEI,GAAAA;SAAMF,EAAAA,KAAK,CAACQ,KAAjC,CADF,CAAA;AA1BJ,KAAA;AA8BD,GAhCD,CAFJ,CADF,CAAA;AAuCD;;;;"}
1
+ {"version":3,"file":"index-ace292c2.js","sources":["../src/smart-components/Message/utils/tokens/keyGenerator.ts","../src/smart-components/Message/components/TextFragment/index.tsx"],"sourcesContent":["// this function is used to generate a unique key for token in message\n// it changes with updated time and index\n// messageUpdatedAt is the key part of this key generator\nexport function keyGenerator(\n createdAt: number,\n messageUpdatedAt: number,\n index: number,\n): string {\n return `sb-msg_${createdAt}_${messageUpdatedAt}_${index}`;\n}\n","import React from 'react';\nimport { UserMessage } from '@sendbird/chat/message';\n\nimport { TOKEN_TYPES, Token } from '../../utils/tokens/types'\nimport { useMessageContext } from '../../context/MessageProvider';\nimport { keyGenerator } from '../../utils/tokens/keyGenerator';\nimport MentionLabel from '../../../../ui/MentionLabel';\nimport { USER_MENTION_PREFIX } from '../../consts';\nimport LinkLabel from '../../../../ui/LinkLabel';\nimport { LabelTypography } from '../../../../ui//Label';\n\nexport type TextFragmentProps = {\n tokens: Token[];\n}\n\nexport default function TextFragment({\n tokens,\n}: TextFragmentProps): React.ReactElement {\n const messageStore = useMessageContext();\n\n const message = messageStore?.message as UserMessage;\n const isByMe = messageStore?.isByMe;\n const { updatedAt, createdAt } = message;\n return (\n <>\n {\n tokens?.map((token, idx) => {\n const key = keyGenerator(createdAt, updatedAt, idx);\n switch (token.type) {\n case TOKEN_TYPES.mention:\n return (\n <span className=\"sendbird-word\" key={key}>\n <MentionLabel\n mentionTemplate={USER_MENTION_PREFIX}\n mentionedUserId={token.userId}\n mentionedUserNickname={token.value}\n isByMe={isByMe}\n />\n </span>\n );\n case TOKEN_TYPES.url:\n return (\n <span className='sendbird-word' key={key}>\n <LinkLabel\n className=\"sendbird-word__url\"\n src={token.value}\n type={LabelTypography.BODY_1}\n >\n {token.value}\n </LinkLabel>\n </span>\n );\n case TOKEN_TYPES.string:\n default:\n return (\n <React.Fragment key={key}>{token.value}</React.Fragment>\n );\n }\n })\n }\n </>\n );\n}\n"],"names":["keyGenerator","createdAt","messageUpdatedAt","index","concat","TextFragment","_a","tokens","messageStore","useMessageContext","message","isByMe","updatedAt","React","map","token","idx","key","type","TOKEN_TYPES","mention","USER_MENTION_PREFIX","userId","value","url","LabelTypography","BODY_1","string"],"mappings":";;;;;;;AAAA;AACA;AACA;SACgBA,aACdC,WACAC,kBACAC,OAAa;AAEb,EAAA,OAAO,gBAAA,CAAUF,SAAV,EAAmB,GAAnB,CAAmBG,CAAAA,MAAnB,CAAuBF,gBAAvB,EAA2C,GAA3C,CAAA,CAA2CE,MAA3C,CAA2CD,KAA3C,CAAP,CAAA;AACD;;ACMuB,SAAAE,YAAA,CAAaC,EAAb,EAEJ;AADlB,EAAA,IAAAC,MAAM,GAAAD,EAAA,CAAAC,MAAN,CAAA;EAEA,IAAMC,YAAY,GAAGC,iBAAiB,EAAtC,CAAA;AAEA,EAAA,IAAMC,OAAO,GAAGF,YAAY,KAAA,IAAZ,IAAAA,YAAY,KAAZ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,YAAY,CAAEE,OAA9B,CAAA;AACA,EAAA,IAAMC,MAAM,GAAGH,YAAY,KAAA,IAAZ,IAAAA,YAAY,KAAZ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,YAAY,CAAEG,MAA7B,CAAA;AACQ,EAAA,IAAAC,SAAS,GAAgBF,OAAO,CAAAE,SAAhC;AAAA,MAAWX,SAAS,GAAKS,OAAO,CAAAT,SAAhC,CAAA;EACR,oBACEY,cAAA,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,EAEIN,MAAM,KAAN,IAAA,IAAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAAA,MAAM,CAAEO,GAAR,CAAY,UAACC,KAAD,EAAQC,GAAR,EAAW;IACrB,IAAMC,GAAG,GAAGjB,YAAY,CAACC,SAAD,EAAYW,SAAZ,EAAuBI,GAAvB,CAAxB,CAAA;;IACA,QAAQD,KAAK,CAACG,IAAd;MACE,KAAKC,WAAW,CAACC,OAAjB;QACE,oBACEP,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAM,UAAA,SAAS,EAAC,eAAhB;AAAgC,UAAA,GAAG,EAAEI,GAAAA;AAArC,SAAA,eACEJ,6BAAC,YAAD,EAAA;AACE,UAAA,eAAe,EAAEQ,mBADnB;UAEE,eAAe,EAAEN,KAAK,CAACO,MAFzB;UAGE,qBAAqB,EAAEP,KAAK,CAACQ,KAH/B;AAIE,UAAA,MAAM,EAAEZ,MAAAA;AAJV,SAAA,CADF,CADF,CAAA;;MAUF,KAAKQ,WAAW,CAACK,GAAjB;QACE,oBACEX,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAM,UAAA,SAAS,EAAC,eAAhB;AAAgC,UAAA,GAAG,EAAEI,GAAAA;AAArC,SAAA,eACEJ,6BAAC,SAAD,EAAA;AACE,UAAA,SAAS,EAAC,oBADZ;UAEE,GAAG,EAAEE,KAAK,CAACQ,KAFb;UAGE,IAAI,EAAEE,eAAe,CAACC,MAAAA;AAHxB,SAAA,EAKGX,KAAK,CAACQ,KALT,CADF,CADF,CAAA;;MAWF,KAAKJ,WAAW,CAACQ,MAAjB,CAAA;AACA,MAAA;QACE,oBACEd,cAAA,CAAA,aAAA,CAACA,cAAD,CAAO,QAAP,EAAA;AAAgB,UAAA,GAAG,EAAEI,GAAAA;SAAMF,EAAAA,KAAK,CAACQ,KAAjC,CADF,CAAA;AA1BJ,KAAA;AA8BD,GAhCD,CAFJ,CADF,CAAA;AAuCD;;;;"}
@@ -1,4 +1,4 @@
1
- import { d as defaultLocale } from './index-3fff67da.js';
1
+ import { d as defaultLocale } from './index-cf141ad7.js';
2
2
 
3
3
  function requiredArgs(required, args) {
4
4
  if (args.length < required) {
@@ -1849,4 +1849,4 @@ function cleanEscapedString(input) {
1849
1849
  }
1850
1850
 
1851
1851
  export { toInteger as a, format as f, requiredArgs as r, toDate as t };
1852
- //# sourceMappingURL=index-6e6736ec.js.map
1852
+ //# sourceMappingURL=index-aced8439.js.map