@sendbird/uikit-react 3.0.0-beta → 3.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (438) hide show
  1. package/App.js +41 -30
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +50 -0
  4. package/Channel/components/ChannelHeader.js +15 -14
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +28 -21
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +14 -13
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +5 -5
  11. package/Channel/components/Message.js +178 -62
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +145 -30
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +71 -59
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +17 -16
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +250 -0
  20. package/Channel/components/SuggestedMentionList.js.map +1 -0
  21. package/Channel/components/TypingIndicator.js +14 -13
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +5 -5
  24. package/Channel/context.js +13 -12
  25. package/Channel/context.js.map +1 -1
  26. package/Channel.js +28 -21
  27. package/Channel.js.map +1 -1
  28. package/ChannelList/components/AddChannel.js +14 -14
  29. package/ChannelList/components/ChannelListHeader.js +7 -7
  30. package/ChannelList/components/ChannelListUI.js +24 -23
  31. package/ChannelList/components/ChannelListUI.js.map +1 -1
  32. package/ChannelList/components/ChannelPreview.js +23 -19
  33. package/ChannelList/components/ChannelPreview.js.map +1 -1
  34. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  35. package/ChannelList/context.js +8 -8
  36. package/ChannelList.js +24 -23
  37. package/ChannelList.js.map +1 -1
  38. package/{ChannelListProvider-0b0c2c40.js → ChannelListProvider-7c351968.js} +8 -8
  39. package/{ChannelListProvider-0b0c2c40.js.map → ChannelListProvider-7c351968.js.map} +1 -1
  40. package/{ChannelProvider-459e463f.js → ChannelProvider-d5126903.js} +72 -41
  41. package/ChannelProvider-d5126903.js.map +1 -0
  42. package/ChannelSettings/components/AdminPanel.js +15 -15
  43. package/ChannelSettings/components/ChannelProfile.js +13 -13
  44. package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  45. package/ChannelSettings/components/EditDetailsModal.js +13 -13
  46. package/ChannelSettings/components/LeaveChannel.js +10 -10
  47. package/ChannelSettings/components/UserListItem.js +11 -11
  48. package/ChannelSettings/components/UserPanel.js +14 -14
  49. package/ChannelSettings/context.js +3 -3
  50. package/ChannelSettings.js +18 -18
  51. package/CreateChannel/components/CreateChannelUI.js +14 -14
  52. package/CreateChannel/components/InviteMembers.js +14 -14
  53. package/CreateChannel/components/SelectChannelType.js +10 -10
  54. package/CreateChannel/context.js +3 -3
  55. package/CreateChannel.js +14 -14
  56. package/{CreateChannelProvider-c617a1bb.js → CreateChannelProvider-ddfd92e6.js} +1 -1
  57. package/{CreateChannelProvider-c617a1bb.js.map → CreateChannelProvider-ddfd92e6.js.map} +1 -1
  58. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  59. package/EditUserProfile.js +13 -13
  60. package/{LocalizationContext-e4391013.js → LocalizationContext-b021af8f.js} +3 -3
  61. package/{LocalizationContext-e4391013.js.map → LocalizationContext-b021af8f.js.map} +1 -1
  62. package/{MemberList-6655cba0.js → MemberList-323e7517.js} +5 -5
  63. package/{MemberList-6655cba0.js.map → MemberList-323e7517.js.map} +1 -1
  64. package/MessageSearch/components/MessageSearchUI.js +11 -11
  65. package/MessageSearch/context.js +2 -2
  66. package/MessageSearch.js +11 -11
  67. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  68. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  69. package/OpenChannel/components/OpenChannelInput.js +18 -14
  70. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  71. package/OpenChannel/components/OpenChannelMessage.js +23 -19
  72. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  73. package/OpenChannel/components/OpenChannelMessageList.js +25 -21
  74. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  75. package/OpenChannel/components/OpenChannelUI.js +25 -21
  76. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  77. package/OpenChannel/context.js +9 -9
  78. package/OpenChannel.js +25 -21
  79. package/OpenChannel.js.map +1 -1
  80. package/{OpenChannelProvider-a7691eb4.js → OpenChannelProvider-abc4ab98.js} +7 -7
  81. package/{OpenChannelProvider-a7691eb4.js.map → OpenChannelProvider-abc4ab98.js.map} +1 -1
  82. package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  83. package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  84. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  85. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  86. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  87. package/OpenChannelSettings/context.js +2 -2
  88. package/OpenChannelSettings.js +17 -17
  89. package/README.md +9 -1
  90. package/SendbirdProvider.js +27 -13
  91. package/SendbirdProvider.js.map +1 -1
  92. package/{UserProfileContext-865db5e6.js → UserProfileContext-daa99f9b.js} +1 -1
  93. package/{UserProfileContext-865db5e6.js.map → UserProfileContext-daa99f9b.js.map} +1 -1
  94. package/{_rollupPluginBabelHelpers-20904f21.js → _rollupPluginBabelHelpers-8e4fae98.js} +1 -1
  95. package/{_rollupPluginBabelHelpers-20904f21.js.map → _rollupPluginBabelHelpers-8e4fae98.js.map} +1 -1
  96. package/{actionTypes-1e3a4074.js → actionTypes-189daf51.js} +1 -1
  97. package/{actionTypes-1e3a4074.js.map → actionTypes-189daf51.js.map} +1 -1
  98. package/cjs/App.js +41 -30
  99. package/cjs/App.js.map +1 -1
  100. package/cjs/Channel/components/ChannelHeader.js +15 -14
  101. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  102. package/cjs/Channel/components/ChannelUI.js +28 -21
  103. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  104. package/cjs/Channel/components/FileViewer.js +14 -13
  105. package/cjs/Channel/components/FileViewer.js.map +1 -1
  106. package/cjs/Channel/components/FrozenNotification.js +5 -5
  107. package/cjs/Channel/components/Message.js +177 -61
  108. package/cjs/Channel/components/Message.js.map +1 -1
  109. package/cjs/Channel/components/MessageInput.js +144 -29
  110. package/cjs/Channel/components/MessageInput.js.map +1 -1
  111. package/cjs/Channel/components/MessageList.js +70 -58
  112. package/cjs/Channel/components/MessageList.js.map +1 -1
  113. package/cjs/Channel/components/RemoveMessageModal.js +17 -16
  114. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  115. package/cjs/Channel/components/SuggestedMentionList.js +256 -0
  116. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -0
  117. package/cjs/Channel/components/TypingIndicator.js +14 -13
  118. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  119. package/cjs/Channel/components/UnreadCount.js +5 -5
  120. package/cjs/Channel/context.js +13 -12
  121. package/cjs/Channel/context.js.map +1 -1
  122. package/cjs/Channel.js +28 -21
  123. package/cjs/Channel.js.map +1 -1
  124. package/cjs/ChannelList/components/AddChannel.js +14 -14
  125. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  126. package/cjs/ChannelList/components/ChannelListUI.js +24 -23
  127. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  128. package/cjs/ChannelList/components/ChannelPreview.js +23 -19
  129. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  130. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  131. package/cjs/ChannelList/context.js +8 -8
  132. package/cjs/ChannelList.js +24 -23
  133. package/cjs/ChannelList.js.map +1 -1
  134. package/cjs/{ChannelListProvider-5a152618.js → ChannelListProvider-44dde549.js} +8 -8
  135. package/cjs/{ChannelListProvider-5a152618.js.map → ChannelListProvider-44dde549.js.map} +1 -1
  136. package/cjs/{ChannelProvider-f1fb0108.js → ChannelProvider-e0aaab26.js} +79 -48
  137. package/cjs/ChannelProvider-e0aaab26.js.map +1 -0
  138. package/cjs/ChannelSettings/components/AdminPanel.js +15 -15
  139. package/cjs/ChannelSettings/components/ChannelProfile.js +13 -13
  140. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  141. package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
  142. package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
  143. package/cjs/ChannelSettings/components/UserListItem.js +11 -11
  144. package/cjs/ChannelSettings/components/UserPanel.js +14 -14
  145. package/cjs/ChannelSettings/context.js +3 -3
  146. package/cjs/ChannelSettings.js +18 -18
  147. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  148. package/cjs/CreateChannel/components/InviteMembers.js +14 -14
  149. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  150. package/cjs/CreateChannel/context.js +3 -3
  151. package/cjs/CreateChannel.js +14 -14
  152. package/cjs/{CreateChannelProvider-df42106f.js → CreateChannelProvider-bdf9c39b.js} +1 -1
  153. package/cjs/{CreateChannelProvider-df42106f.js.map → CreateChannelProvider-bdf9c39b.js.map} +1 -1
  154. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  155. package/cjs/EditUserProfile.js +13 -13
  156. package/cjs/{LocalizationContext-68e55e2a.js → LocalizationContext-3b5ce8ae.js} +3 -3
  157. package/cjs/{LocalizationContext-68e55e2a.js.map → LocalizationContext-3b5ce8ae.js.map} +1 -1
  158. package/cjs/{MemberList-dc84e303.js → MemberList-ef9e43c3.js} +5 -5
  159. package/cjs/{MemberList-dc84e303.js.map → MemberList-ef9e43c3.js.map} +1 -1
  160. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  161. package/cjs/MessageSearch/context.js +2 -2
  162. package/cjs/MessageSearch.js +11 -11
  163. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  164. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  165. package/cjs/OpenChannel/components/OpenChannelInput.js +18 -14
  166. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  167. package/cjs/OpenChannel/components/OpenChannelMessage.js +23 -19
  168. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  169. package/cjs/OpenChannel/components/OpenChannelMessageList.js +25 -21
  170. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  171. package/cjs/OpenChannel/components/OpenChannelUI.js +25 -21
  172. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  173. package/cjs/OpenChannel/context.js +9 -9
  174. package/cjs/OpenChannel.js +25 -21
  175. package/cjs/OpenChannel.js.map +1 -1
  176. package/cjs/{OpenChannelProvider-7a1a996f.js → OpenChannelProvider-9ce7c998.js} +7 -7
  177. package/cjs/{OpenChannelProvider-7a1a996f.js.map → OpenChannelProvider-9ce7c998.js.map} +1 -1
  178. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  179. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  180. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  181. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  182. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  183. package/cjs/OpenChannelSettings/context.js +2 -2
  184. package/cjs/OpenChannelSettings.js +17 -17
  185. package/cjs/SendbirdProvider.js +27 -13
  186. package/cjs/SendbirdProvider.js.map +1 -1
  187. package/cjs/{UserProfileContext-3533547d.js → UserProfileContext-f0bdfbb8.js} +1 -1
  188. package/cjs/{UserProfileContext-3533547d.js.map → UserProfileContext-f0bdfbb8.js.map} +1 -1
  189. package/cjs/{_rollupPluginBabelHelpers-fc14118c.js → _rollupPluginBabelHelpers-e54d2387.js} +1 -1
  190. package/cjs/{_rollupPluginBabelHelpers-fc14118c.js.map → _rollupPluginBabelHelpers-e54d2387.js.map} +1 -1
  191. package/cjs/{actionTypes-bc47f97a.js → actionTypes-267d4c79.js} +1 -1
  192. package/cjs/{actionTypes-bc47f97a.js.map → actionTypes-267d4c79.js.map} +1 -1
  193. package/cjs/{color-4afb15fb.js → color-0f078673.js} +1 -1
  194. package/cjs/{color-4afb15fb.js.map → color-0f078673.js.map} +1 -1
  195. package/cjs/{compareIds-01306377.js → compareIds-176a582b.js} +1 -1
  196. package/cjs/{compareIds-01306377.js.map → compareIds-176a582b.js.map} +1 -1
  197. package/cjs/const-4bf0e8b4.js +22 -0
  198. package/cjs/const-4bf0e8b4.js.map +1 -0
  199. package/cjs/const-ccf192c5.js +14 -0
  200. package/cjs/const-ccf192c5.js.map +1 -0
  201. package/cjs/{context-c1f9d650.js → context-0cbe196d.js} +2 -2
  202. package/cjs/{context-c1f9d650.js.map → context-0cbe196d.js.map} +1 -1
  203. package/cjs/{index-d4880236.js → index-002a349d.js} +84 -3
  204. package/cjs/index-002a349d.js.map +1 -0
  205. package/cjs/{index-905331fa.js → index-0159bc57.js} +2 -2
  206. package/cjs/{index-905331fa.js.map → index-0159bc57.js.map} +1 -1
  207. package/cjs/{index-4987c8b2.js → index-081c9614.js} +6 -6
  208. package/cjs/{index-4987c8b2.js.map → index-081c9614.js.map} +1 -1
  209. package/cjs/{index-1468d245.js → index-21f31180.js} +3 -3
  210. package/cjs/{index-1468d245.js.map → index-21f31180.js.map} +1 -1
  211. package/cjs/{index-1044f1ed.js → index-22f07209.js} +3 -3
  212. package/cjs/{index-1044f1ed.js.map → index-22f07209.js.map} +1 -1
  213. package/cjs/{index-8becccd8.js → index-46522cf0.js} +4 -4
  214. package/cjs/{index-8becccd8.js.map → index-46522cf0.js.map} +1 -1
  215. package/cjs/index-723733db.js +54 -0
  216. package/cjs/index-723733db.js.map +1 -0
  217. package/cjs/{index-9dc3863f.js → index-c0693be4.js} +2 -2
  218. package/cjs/{index-9dc3863f.js.map → index-c0693be4.js.map} +1 -1
  219. package/cjs/{index-659c9ca5.js → index-d4f42e73.js} +4 -4
  220. package/cjs/{index-659c9ca5.js.map → index-d4f42e73.js.map} +1 -1
  221. package/cjs/{index-e2bb862c.js → index-d9439e95.js} +1 -1
  222. package/cjs/{index-e2bb862c.js.map → index-d9439e95.js.map} +1 -1
  223. package/cjs/{index-aecc8d24.js → index-ed053e45.js} +1 -1
  224. package/cjs/{index-aecc8d24.js.map → index-ed053e45.js.map} +1 -1
  225. package/cjs/index.css +165 -59
  226. package/cjs/index.css.map +1 -1
  227. package/cjs/index.js +38 -31
  228. package/cjs/index.js.map +1 -1
  229. package/cjs/{openChannelUtils-37919a36.js → openChannelUtils-cecaf987.js} +1 -1
  230. package/cjs/{openChannelUtils-37919a36.js.map → openChannelUtils-cecaf987.js.map} +1 -1
  231. package/cjs/sendBirdSelectors.js +1 -1
  232. package/cjs/{stringSet-aa544ce5.js → stringSet-f4da182b.js} +4 -2
  233. package/cjs/stringSet-f4da182b.js.map +1 -0
  234. package/cjs/{topics-8314d425.js → topics-c2c30f09.js} +1 -1
  235. package/cjs/{topics-8314d425.js.map → topics-c2c30f09.js.map} +1 -1
  236. package/cjs/{tslib.es6-4a281a05.js → tslib.es6-d7d0a427.js} +1 -1
  237. package/cjs/{tslib.es6-4a281a05.js.map → tslib.es6-d7d0a427.js.map} +1 -1
  238. package/cjs/ui/Accordion.js +4 -4
  239. package/cjs/ui/AccordionGroup.js +2 -2
  240. package/cjs/ui/AdminMessage.js +3 -3
  241. package/cjs/ui/Avatar.js +3 -3
  242. package/cjs/ui/Badge.js +5 -5
  243. package/cjs/ui/Button.js +4 -4
  244. package/cjs/ui/ChannelAvatar.js +4 -4
  245. package/cjs/ui/ChannelPreview.js +12 -12
  246. package/cjs/ui/ChatHeader.js +8 -8
  247. package/cjs/ui/Checkbox.js +1 -1
  248. package/cjs/ui/ConnectionStatus.js +5 -5
  249. package/cjs/ui/ContextMenu.js +5 -5
  250. package/cjs/ui/DateSeparator.js +4 -4
  251. package/cjs/ui/Dropdown.js +3 -3
  252. package/cjs/ui/EmojiReactions.js +7 -7
  253. package/cjs/ui/FileMessageItemBody.js +6 -6
  254. package/cjs/ui/FileViewer.js +7 -7
  255. package/cjs/ui/Icon.js +1 -1
  256. package/cjs/ui/IconButton.js +1 -1
  257. package/cjs/ui/ImageRenderer.js +1 -1
  258. package/cjs/ui/Input.js +3 -3
  259. package/cjs/ui/Label.js +3 -3
  260. package/cjs/ui/LinkLabel.js +3 -3
  261. package/cjs/ui/Loader.js +1 -1
  262. package/cjs/ui/MentionUserLabel.js +25 -0
  263. package/cjs/ui/MentionUserLabel.js.map +1 -0
  264. package/cjs/ui/MessageContent.js +25 -62
  265. package/cjs/ui/MessageContent.js.map +1 -1
  266. package/cjs/ui/MessageInput.js +4900 -84
  267. package/cjs/ui/MessageInput.js.map +1 -1
  268. package/cjs/ui/MessageItemMenu.js +7 -7
  269. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  270. package/cjs/ui/MessageSearchFileItem.js +10 -10
  271. package/cjs/ui/MessageSearchItem.js +10 -10
  272. package/cjs/ui/MessageStatus.js +66 -0
  273. package/cjs/ui/MessageStatus.js.map +1 -0
  274. package/cjs/ui/Modal.js +8 -8
  275. package/cjs/ui/MutedAvatarOverlay.js +1 -1
  276. package/cjs/ui/OGMessageItemBody.js +38 -28
  277. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  278. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  279. package/cjs/ui/OpenChannelAvatar.js +7 -7
  280. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  281. package/cjs/ui/OpenchannelFileMessage.js +14 -14
  282. package/cjs/ui/OpenchannelOGMessage.js +14 -14
  283. package/cjs/ui/OpenchannelThumbnailMessage.js +13 -13
  284. package/cjs/ui/OpenchannelUserMessage.js +14 -14
  285. package/cjs/ui/PlaceHolder.js +6 -6
  286. package/cjs/ui/QuoteMessage.js +7 -7
  287. package/cjs/ui/QuoteMessageInput.js +7 -7
  288. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  289. package/cjs/ui/ReactionBadge.js +3 -3
  290. package/cjs/ui/ReactionButton.js +1 -1
  291. package/cjs/ui/SortByRow.js +1 -1
  292. package/cjs/ui/TextButton.js +2 -2
  293. package/cjs/ui/TextMessageItemBody.js +36 -14
  294. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  295. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  296. package/cjs/ui/Tooltip.js +3 -3
  297. package/cjs/ui/TooltipWrapper.js +1 -1
  298. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  299. package/cjs/ui/UserListItem.js +11 -11
  300. package/cjs/ui/UserProfile.js +9 -9
  301. package/cjs/useSendbirdStateContext.js +1 -1
  302. package/cjs/{utils-cbd3ed99.js → utils-3e73a146.js} +1 -1
  303. package/cjs/{utils-cbd3ed99.js.map → utils-3e73a146.js.map} +1 -1
  304. package/cjs/{utils-66b3f4ec.js → utils-b95288a8.js} +1 -1
  305. package/cjs/{utils-66b3f4ec.js.map → utils-b95288a8.js.map} +1 -1
  306. package/cjs/{utils-3b0815dc.js → utils-c55d20dc.js} +1 -1
  307. package/cjs/{utils-3b0815dc.js.map → utils-c55d20dc.js.map} +1 -1
  308. package/cjs/{uuid-1d5ec8b2.js → uuid-ba6cc3c5.js} +1 -1
  309. package/cjs/{uuid-1d5ec8b2.js.map → uuid-ba6cc3c5.js.map} +1 -1
  310. package/cjs/withSendBird.js +1 -1
  311. package/{color-ee3fc5ee.js → color-2863fbbe.js} +1 -1
  312. package/{color-ee3fc5ee.js.map → color-2863fbbe.js.map} +1 -1
  313. package/{compareIds-808956f2.js → compareIds-48d87cc5.js} +1 -1
  314. package/{compareIds-808956f2.js.map → compareIds-48d87cc5.js.map} +1 -1
  315. package/const-09c22c50.js +18 -0
  316. package/const-09c22c50.js.map +1 -0
  317. package/const-3f63e129.js +8 -0
  318. package/const-3f63e129.js.map +1 -0
  319. package/{context-98ce535c.js → context-7877e5bb.js} +2 -2
  320. package/{context-98ce535c.js.map → context-7877e5bb.js.map} +1 -1
  321. package/dist/index.css +165 -59
  322. package/dist/index.css.map +1 -1
  323. package/{index-942c85a6.js → index-1fd114b0.js} +1 -1
  324. package/{index-942c85a6.js.map → index-1fd114b0.js.map} +1 -1
  325. package/{index-e818a8a3.js → index-303a3b6e.js} +4 -4
  326. package/{index-e818a8a3.js.map → index-303a3b6e.js.map} +1 -1
  327. package/{index-6ebf7894.js → index-353f13f3.js} +1 -1
  328. package/{index-6ebf7894.js.map → index-353f13f3.js.map} +1 -1
  329. package/{index-5c2c81bc.js → index-358226c7.js} +6 -6
  330. package/{index-5c2c81bc.js.map → index-358226c7.js.map} +1 -1
  331. package/{index-acebc2ff.js → index-41a6f4f2.js} +3 -3
  332. package/{index-acebc2ff.js.map → index-41a6f4f2.js.map} +1 -1
  333. package/index-4889e530.js +48 -0
  334. package/index-4889e530.js.map +1 -0
  335. package/{index-770d7112.js → index-4a59a866.js} +2 -2
  336. package/{index-770d7112.js.map → index-4a59a866.js.map} +1 -1
  337. package/{index-1718324d.js → index-86b0a341.js} +4 -4
  338. package/{index-1718324d.js.map → index-86b0a341.js.map} +1 -1
  339. package/{index-7a51bd16.js → index-a611bd38.js} +3 -3
  340. package/{index-7a51bd16.js.map → index-a611bd38.js.map} +1 -1
  341. package/{index-8c72a94a.js → index-ad4c9e58.js} +83 -3
  342. package/index-ad4c9e58.js.map +1 -0
  343. package/{index-cd21929d.js → index-f119413c.js} +2 -2
  344. package/{index-cd21929d.js.map → index-f119413c.js.map} +1 -1
  345. package/index.css +165 -59
  346. package/index.css.map +1 -1
  347. package/index.d.ts +237 -209
  348. package/index.js +38 -31
  349. package/index.js.map +1 -1
  350. package/{openChannelUtils-56a372e7.js → openChannelUtils-024b797a.js} +1 -1
  351. package/{openChannelUtils-56a372e7.js.map → openChannelUtils-024b797a.js.map} +1 -1
  352. package/package.json +2 -2
  353. package/sendBirdSelectors.js +1 -1
  354. package/{stringSet-4f6eaa60.js → stringSet-91746bf1.js} +4 -2
  355. package/stringSet-91746bf1.js.map +1 -0
  356. package/{topics-9442035c.js → topics-17d99dd6.js} +1 -1
  357. package/{topics-9442035c.js.map → topics-17d99dd6.js.map} +1 -1
  358. package/{tslib.es6-e3c44017.js → tslib.es6-83aa13f5.js} +1 -1
  359. package/{tslib.es6-e3c44017.js.map → tslib.es6-83aa13f5.js.map} +1 -1
  360. package/ui/Accordion.js +4 -4
  361. package/ui/AccordionGroup.js +2 -2
  362. package/ui/AdminMessage.js +3 -3
  363. package/ui/Avatar.js +3 -3
  364. package/ui/Badge.js +5 -5
  365. package/ui/Button.js +4 -4
  366. package/ui/ChannelAvatar.js +4 -4
  367. package/ui/ChannelPreview.js +12 -12
  368. package/ui/ChatHeader.js +8 -8
  369. package/ui/Checkbox.js +1 -1
  370. package/ui/ConnectionStatus.js +5 -5
  371. package/ui/ContextMenu.js +5 -5
  372. package/ui/DateSeparator.js +4 -4
  373. package/ui/Dropdown.js +3 -3
  374. package/ui/EmojiReactions.js +7 -7
  375. package/ui/FileMessageItemBody.js +6 -6
  376. package/ui/FileViewer.js +7 -7
  377. package/ui/Icon.js +1 -1
  378. package/ui/IconButton.js +1 -1
  379. package/ui/ImageRenderer.js +1 -1
  380. package/ui/Input.js +3 -3
  381. package/ui/Label.js +3 -3
  382. package/ui/LinkLabel.js +3 -3
  383. package/ui/Loader.js +1 -1
  384. package/ui/MentionUserLabel.js +19 -0
  385. package/ui/MentionUserLabel.js.map +1 -0
  386. package/ui/MessageContent.js +25 -62
  387. package/ui/MessageContent.js.map +1 -1
  388. package/ui/MessageInput.js +4900 -85
  389. package/ui/MessageInput.js.map +1 -1
  390. package/ui/MessageItemMenu.js +7 -7
  391. package/ui/MessageItemReactionMenu.js +5 -5
  392. package/ui/MessageSearchFileItem.js +10 -10
  393. package/ui/MessageSearchItem.js +10 -10
  394. package/ui/MessageStatus.js +57 -0
  395. package/ui/MessageStatus.js.map +1 -0
  396. package/ui/Modal.js +8 -8
  397. package/ui/MutedAvatarOverlay.js +1 -1
  398. package/ui/OGMessageItemBody.js +38 -28
  399. package/ui/OGMessageItemBody.js.map +1 -1
  400. package/ui/OpenChannelAdminMessage.js +4 -4
  401. package/ui/OpenChannelAvatar.js +7 -7
  402. package/ui/OpenchannelConversationHeader.js +7 -7
  403. package/ui/OpenchannelFileMessage.js +14 -14
  404. package/ui/OpenchannelOGMessage.js +14 -14
  405. package/ui/OpenchannelThumbnailMessage.js +13 -13
  406. package/ui/OpenchannelUserMessage.js +14 -14
  407. package/ui/PlaceHolder.js +6 -6
  408. package/ui/QuoteMessage.js +7 -7
  409. package/ui/QuoteMessageInput.js +7 -7
  410. package/ui/QuoteMessageInput.js.map +1 -1
  411. package/ui/ReactionBadge.js +3 -3
  412. package/ui/ReactionButton.js +1 -1
  413. package/ui/SortByRow.js +1 -1
  414. package/ui/TextButton.js +2 -2
  415. package/ui/TextMessageItemBody.js +37 -15
  416. package/ui/TextMessageItemBody.js.map +1 -1
  417. package/ui/ThumbnailMessageItemBody.js +3 -3
  418. package/ui/Tooltip.js +3 -3
  419. package/ui/TooltipWrapper.js +1 -1
  420. package/ui/UnknownMessageItemBody.js +7 -7
  421. package/ui/UserListItem.js +11 -11
  422. package/ui/UserProfile.js +9 -9
  423. package/useSendbirdStateContext.js +1 -1
  424. package/{utils-af1b9829.js → utils-5395ff17.js} +1 -1
  425. package/{utils-af1b9829.js.map → utils-5395ff17.js.map} +1 -1
  426. package/{utils-08c4dbdc.js → utils-7d39b941.js} +1 -1
  427. package/{utils-08c4dbdc.js.map → utils-7d39b941.js.map} +1 -1
  428. package/{utils-c393e880.js → utils-9ef11656.js} +1 -1
  429. package/{utils-c393e880.js.map → utils-9ef11656.js.map} +1 -1
  430. package/{uuid-b0c93400.js → uuid-6d14d007.js} +1 -1
  431. package/{uuid-b0c93400.js.map → uuid-6d14d007.js.map} +1 -1
  432. package/withSendBird.js +1 -1
  433. package/ChannelProvider-459e463f.js.map +0 -1
  434. package/cjs/ChannelProvider-f1fb0108.js.map +0 -1
  435. package/cjs/index-d4880236.js.map +0 -1
  436. package/cjs/stringSet-aa544ce5.js.map +0 -1
  437. package/index-8c72a94a.js.map +0 -1
  438. package/stringSet-4f6eaa60.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SendbirdProvider.js","sources":["../src/lib/dux/sdk/actionTypes.js","../src/lib/dux/sdk/thunks.js","../src/lib/hooks/useTheme.ts","../src/lib/dux/sdk/initialState.js","../src/lib/dux/sdk/reducers.js","../src/lib/dux/user/initialState.js","../src/lib/dux/user/reducers.js","../src/lib/hooks/useOnlineStatus.js","../src/lib/Logger/index.js","../src/lib/pubSub/index.js","../src/hooks/useAppendDomNode.js","../src/lib/Sendbird.jsx"],"sourcesContent":["export const INIT_SDK = 'INIT_SDK';\nexport const SET_SDK_LOADING = 'SET_SDK_LOADING';\nexport const RESET_SDK = 'RESET_SDK';\nexport const SDK_ERROR = 'SDK_ERROR';\n","import Sb from 'sendbird';\n\nimport {\n INIT_SDK,\n SET_SDK_LOADING,\n RESET_SDK,\n SDK_ERROR,\n} from './actionTypes';\nimport { INIT_USER, UPDATE_USER_INFO, RESET_USER } from '../user/actionTypes';\nimport { isTextuallyNull } from '../../../utils';\n\nconst APP_VERSION_STRING = '__uikit_app_version__';\nconst IS_ROLLUP = '__is_rollup__';\nconst IS_ROLLUP_REPLACE = '__is_rollup_replace__';\n\nexport const disconnectSdk = ({\n sdkDispatcher,\n userDispatcher,\n sdk,\n onDisconnect,\n}) => {\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (sdk && sdk.disconnect) {\n sdk.disconnect()\n .then(() => {\n sdkDispatcher({ type: RESET_SDK });\n userDispatcher({ type: RESET_USER });\n })\n .finally(() => {\n onDisconnect();\n });\n } else {\n onDisconnect();\n }\n};\n\nexport const handleConnection = ({\n userId,\n appId,\n nickname,\n profileUrl,\n accessToken,\n sdk,\n logger,\n}, dispatchers) => {\n const {\n sdkDispatcher,\n userDispatcher,\n } = dispatchers;\n disconnectSdk({\n sdkDispatcher,\n userDispatcher,\n sdk,\n logger,\n onDisconnect: () => {\n logger.info('Setup connection');\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (userId && appId) {\n const newSdk = new Sb({ appId });\n // to check if code is released version from rollup and *not from storybook*\n // see rollup config file\n if (IS_ROLLUP === IS_ROLLUP_REPLACE) {\n newSdk.addExtension('sb_uikit', APP_VERSION_STRING);\n }\n const connectCbSucess = (user) => {\n sdkDispatcher({ type: INIT_SDK, payload: newSdk });\n userDispatcher({ type: INIT_USER, payload: user });\n // use nickname/profileUrl if provided\n // or set userID as nickname\n if ((nickname !== user.nickname || profileUrl !== user.profileUrl)\n && !(isTextuallyNull(nickname) && isTextuallyNull(profileUrl))\n ) {\n newSdk.updateCurrentUserInfo(nickname || user.nickname, profileUrl || user.profileUrl)\n .then((namedUser) => {\n userDispatcher({ type: UPDATE_USER_INFO, payload: namedUser });\n });\n }\n };\n\n const connectCbError = (e) => {\n logger.error('Connection failed', `${e}`);\n sdkDispatcher({ type: RESET_SDK });\n sdkDispatcher({ type: RESET_USER });\n sdkDispatcher({ type: SDK_ERROR });\n };\n\n if (accessToken) {\n newSdk.connect(userId, accessToken)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n } else {\n newSdk.connect(userId)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n }\n } else {\n sdkDispatcher({ type: SDK_ERROR });\n logger.warning('Connection failed', 'UserId or appId missing');\n }\n },\n });\n};\n","import { useLayoutEffect } from 'react';\nimport cssVars from 'css-vars-ponyfill';\n\nconst isEmpty = (obj) => {\n if (obj === null || obj === undefined) {\n return true;\n }\n\n for (const prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n return false;\n }\n }\n return JSON.stringify(obj) === JSON.stringify({});\n}\n\nconst useTheme = (overrides: Record<string, string>): void => {\n useLayoutEffect(() => {\n if (!isEmpty(overrides)) {\n cssVars({\n variables: {\n ...{\n '--sendbird-dark-primary-500': '#4d2aa6',\n '--sendbird-dark-primary-400': '#6440C4',\n '--sendbird-dark-primary-300': '#7B53EF',\n '--sendbird-dark-primary-200': '#9E8CF5',\n '--sendbird-dark-primary-100': '#E2DFFF',\n\n '--sendbird-dark-secondary-500': '#007A7A',\n '--sendbird-dark-secondary-400': '#189A8D',\n '--sendbird-dark-secondary-300': '#2EBA9F',\n '--sendbird-dark-secondary-200': '#6FD6BE',\n '--sendbird-dark-secondary-100': '#AEF2DC',\n\n '--sendbird-dark-information-100': '#b2d9ff',\n\n '--sendbird-dark-error-500': '#A30E2D',\n '--sendbird-dark-error-400': '#C11F41',\n '--sendbird-dark-error-300': '#E53157',\n '--sendbird-dark-error-200': '#FF6183',\n '--sendbird-dark-error-100': '#FFABBD',\n\n '--sendbird-dark-background-700': '#000000',\n '--sendbird-dark-background-600': '#161616',\n '--sendbird-dark-background-500': '#2C2C2C',\n '--sendbird-dark-background-400': '#393939',\n '--sendbird-dark-background-300': '#A8A8A8',\n '--sendbird-dark-background-200': '#D9D9D9',\n '--sendbird-dark-background-100': '#F0F0F0',\n '--sendbird-dark-background-50': '#FFFFFF',\n\n '--sendbird-dark-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-dark-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-dark-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-dark-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-dark-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-dark-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-dark-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-dark-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-dark-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-primary-500': '#4d2aa6',\n '--sendbird-light-primary-400': '#6440C4',\n '--sendbird-light-primary-300': '#7B53EF',\n '--sendbird-light-primary-200': '#9E8CF5',\n '--sendbird-light-primary-100': '#E2DFFF',\n\n '--sendbird-light-secondary-500': '#007A7A',\n '--sendbird-light-secondary-400': '#189A8D',\n '--sendbird-light-secondary-300': '#2EBA9F',\n '--sendbird-light-secondary-200': '#6FD6BE',\n '--sendbird-light-secondary-100': '#AEF2DC',\n\n '--sendbird-light-information-100': '#b2d9ff',\n\n '--sendbird-light-error-500': '#A30E2D',\n '--sendbird-light-error-400': '#C11F41',\n '--sendbird-light-error-300': '#E53157',\n '--sendbird-light-error-200': '#FF6183',\n '--sendbird-light-error-100': '#FFABBD',\n\n '--sendbird-light-background-700': '#000000',\n '--sendbird-light-background-600': '#161616',\n '--sendbird-light-background-500': '#2C2C2C',\n '--sendbird-light-background-400': '#393939',\n '--sendbird-light-background-300': '#A8A8A8',\n '--sendbird-light-background-200': '#D9D9D9',\n '--sendbird-light-background-100': '#F0F0F0',\n '--sendbird-light-background-50': ' #FFFFFF',\n\n '--sendbird-light-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-light-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-light-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-light-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-light-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-light-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-light-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-light-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-light-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n },\n ...overrides,\n },\n });\n }\n }, [overrides]);\n};\n\nexport default useTheme;\n","export default {\n initialized: false,\n loading: false,\n sdk: {},\n error: false,\n};\n","import * as sdkActions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case sdkActions.SET_SDK_LOADING:\n return {\n ...state,\n initialized: false,\n loading: action.payload,\n };\n case sdkActions.SDK_ERROR:\n return {\n ...state,\n initialized: false,\n loading: false,\n error: true,\n };\n case sdkActions.INIT_SDK:\n return {\n sdk: action.payload,\n initialized: true,\n loading: false,\n error: false,\n };\n case sdkActions.RESET_SDK:\n return initialState;\n default:\n return state;\n }\n}\n","export default {\n initialized: false,\n loading: false,\n user: {},\n};\n","import * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_USER:\n return {\n initialized: true,\n loading: false,\n user: action.payload,\n };\n case actions.RESET_USER:\n return initialState;\n case actions.UPDATE_USER_INFO:\n return {\n ...state,\n user: action.payload,\n };\n default:\n return state;\n }\n}\n","import { useState, useEffect } from 'react';\n\nimport { uuidv4 } from '../../utils/uuid';\n\nfunction useConnectionStatus(sdk, logger) {\n const [isOnline, setIsOnline] = useState(true);\n\n useEffect(() => {\n const uniqueHandlerId = uuidv4();\n logger.warning('sdk changed', uniqueHandlerId);\n let handler;\n if (sdk && sdk.ConnectionHandler) {\n handler = new sdk.ConnectionHandler();\n\n handler.onReconnectStarted = () => {\n setIsOnline(false);\n logger.warning('onReconnectStarted', { isOnline });\n };\n handler.onReconnectSucceeded = () => {\n setIsOnline(true);\n logger.warning('onReconnectSucceeded', { isOnline });\n };\n handler.onReconnectFailed = () => {\n sdk.reconnect();\n logger.warning('onReconnectFailed');\n };\n logger.info('Added ConnectionHandler', uniqueHandlerId);\n sdk.addConnectionHandler(uniqueHandlerId, handler);\n }\n return () => {\n try {\n sdk.removeConnectionHandler(uniqueHandlerId);\n logger.info('Removed ConnectionHandler', uniqueHandlerId);\n } catch {\n //\n }\n };\n }, [sdk]);\n\n useEffect(() => {\n const tryReconnect = () => {\n try {\n logger.warning('Try reconnecting SDK');\n if (sdk.getConnectionState() !== 'OPEN') { // connection is not broken yet\n sdk.reconnect();\n }\n } catch {\n //\n }\n };\n // addEventListener version\n window.addEventListener('online', tryReconnect);\n return () => {\n window.removeEventListener('online', tryReconnect);\n };\n }, [sdk]);\n\n // add offline-class to body\n useEffect(() => {\n const body = document.querySelector('body');\n if (!isOnline) {\n try {\n body.classList.add('sendbird__offline');\n logger.info('Added class sendbird__offline to body');\n } catch (e) {\n //\n }\n } else {\n try {\n body.classList.remove('sendbird__offline');\n logger.info('Removed class sendbird__offline from body');\n } catch (e) {\n //\n }\n }\n }, [isOnline]);\n\n return isOnline;\n}\n\nexport default useConnectionStatus;\n","// Logger, pretty much explains it\n// in SendbirdProvider\n// const [logger, setLogger] = useState(LoggerFactory(logLevel));\nexport const LOG_LEVELS = {\n DEBUG: 'debug',\n WARNING: 'warning',\n ERROR: 'error',\n INFO: 'info',\n ALL: 'all',\n};\n\nconst colorLog = (level) => {\n switch (level) {\n case LOG_LEVELS.WARNING:\n return ('color: Orange');\n case LOG_LEVELS.ERROR:\n return ('color: Red');\n default:\n return ('color: Gray');\n }\n};\n\nexport const printLog = ({\n level,\n title,\n description = '',\n}) => {\n // eslint-disable-next-line no-console\n console.log(\n `%c SendbirdUIKit | ${level} | ${new Date().toISOString()} | ${title} ${description && '|'}`, colorLog(level),\n description,\n );\n};\n\nexport const getDefaultLogger = () => ({\n info: () => {},\n error: () => {},\n warning: () => {},\n});\n\nexport const LoggerFactory = (lvl, customInterface) => {\n const logInterface = customInterface || printLog;\n const lvlArray = Array.isArray(lvl) ? lvl : [lvl];\n\n const applyLog = (lgLvl) => (title, description) => logInterface({\n level: lgLvl,\n title,\n description,\n });\n\n const logger = lvlArray.reduce((accumulator, currentLvl) => {\n if (currentLvl === LOG_LEVELS.DEBUG || currentLvl === LOG_LEVELS.ALL) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n error: applyLog(LOG_LEVELS.ERROR),\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n if (currentLvl === LOG_LEVELS.INFO) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n });\n }\n\n if (currentLvl === LOG_LEVELS.ERROR) {\n return ({\n ...accumulator,\n error: applyLog(LOG_LEVELS.ERROR),\n });\n }\n\n if (currentLvl === LOG_LEVELS.WARNING) {\n return ({\n ...accumulator,\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n return { ...accumulator };\n }, getDefaultLogger());\n return logger;\n};\n","// https://davidwalsh.name/pubsub-javascript\n// we use pubsub to sync events between multiple components(example - ChannelList, Channel)\n// for example, if customer sends a message from their custom component\n// without pubsub,we would not be able to listen to it\n// in our ChannelList or Conversation\nexport default () => {\n const topics = {};\n const hOP = topics.hasOwnProperty;\n\n return {\n __getTopics: () => topics,\n subscribe: (topic, listener) => {\n // Create the topic's object if not yet created\n if (!hOP.call(topics, topic)) { topics[topic] = []; }\n\n // Add the listener to queue\n const index = topics[topic].push(listener) - 1;\n\n // Provide handle back for removal of topic\n return {\n remove: () => {\n delete topics[topic][index];\n },\n };\n },\n publish: (topic, info) => {\n // If the topic doesn't exist, or there's no listeners in queue, just leave\n if (!hOP.call(topics, topic)) { return; }\n\n // Cycle through topics queue, fire!\n topics[topic].forEach((item) => {\n item(info !== undefined ? info : {});\n });\n },\n };\n};\n","import { useEffect } from 'react';\n\nfunction useAppendDomNode(ids = [], rootSelector) {\n useEffect(() => {\n const root = document.querySelector(rootSelector);\n ids.forEach((id) => {\n const elem = document.createElement('div');\n elem.setAttribute('id', id);\n root.appendChild(elem);\n });\n return () => {\n ids.forEach((id) => {\n const target = document.getElementById(id);\n if (target) {\n root.removeChild(target);\n }\n });\n };\n }, []);\n}\n\nexport default useAppendDomNode;\n","import './index.scss';\n\nimport React, { useEffect, useReducer, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { SendbirdSdkContext } from './SendbirdSdkContext';\nimport { handleConnection } from './dux/sdk/thunks';\n\nimport useTheme from './hooks/useTheme';\n\nimport sdkReducers from './dux/sdk/reducers';\nimport userReducers from './dux/user/reducers';\nimport sdkInitialState from './dux/sdk/initialState';\nimport userInitialState from './dux/user/initialState';\n\nimport useOnlineStatus from './hooks/useOnlineStatus';\n\nimport { LoggerFactory } from './Logger';\nimport pubSubFactory from './pubSub/index';\nimport useAppendDomNode from '../hooks/useAppendDomNode';\n\nimport { LocalizationProvider } from './LocalizationContext';\nimport getStringSet from '../ui/Label/stringSet';\n\nexport default function Sendbird(props) {\n const {\n userId,\n dateLocale,\n appId,\n accessToken,\n children,\n disableUserProfile,\n renderUserProfile,\n allowProfileEdit,\n theme,\n nickname,\n profileUrl,\n userListQuery,\n config = {},\n colorSet,\n stringSet,\n imageCompression,\n useReaction,\n } = props;\n\n const {\n logLevel = '',\n } = config;\n const [logger, setLogger] = useState(LoggerFactory(logLevel));\n const [pubSub, setPubSub] = useState();\n const [sdkStore, sdkDispatcher] = useReducer(sdkReducers, sdkInitialState);\n const [userStore, userDispatcher] = useReducer(userReducers, userInitialState);\n\n useTheme(colorSet);\n\n useEffect(() => {\n setPubSub(pubSubFactory());\n }, []);\n\n useEffect(() => {\n logger.info('App Init');\n // dispatch action\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n sdk: sdkStore.sdk,\n logger,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n }, [userId, appId, accessToken]);\n\n // to create a pubsub to communicate between parent and child\n useEffect(() => {\n setLogger(LoggerFactory(logLevel));\n }, [logLevel]);\n\n useAppendDomNode([\n 'sendbird-modal-root',\n 'sendbird-dropdown-portal',\n 'sendbird-emoji-list-portal',\n ], 'body');\n\n // should move to reducer\n const [currenttheme, setCurrenttheme] = useState(theme);\n useEffect(() => {\n setCurrenttheme(theme);\n }, [theme]);\n // add-remove theme from body\n useEffect(() => {\n logger.info('Setup theme', `Theme: ${currenttheme}`);\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n body.classList.add(`sendbird-theme--${currenttheme || 'light'}`);\n logger.info('Finish setup theme');\n // eslint-disable-next-line no-empty\n } catch (e) {\n logger.warning('Setup theme failed', `${e}`);\n }\n return () => {\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n // eslint-disable-next-line no-empty\n } catch { }\n };\n }, [currenttheme]);\n\n const isOnline = useOnlineStatus(sdkStore.sdk, logger);\n\n const localeStringSet = React.useMemo(() => {\n if (!stringSet) {\n return getStringSet('en');\n }\n return {\n ...getStringSet('en'),\n ...stringSet,\n };\n }, [stringSet]);\n\n return (\n <SendbirdSdkContext.Provider\n value={{\n stores: {\n sdkStore,\n userStore,\n },\n dispatchers: {\n sdkDispatcher,\n userDispatcher,\n reconnect: () => {\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n logger,\n sdk: sdkStore.sdk,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n },\n },\n config: {\n disableUserProfile,\n renderUserProfile,\n allowProfileEdit,\n isOnline,\n userId,\n appId,\n accessToken,\n theme: currenttheme,\n setCurrenttheme,\n userListQuery,\n logger,\n pubSub,\n imageCompression,\n useReaction,\n },\n }}\n >\n <LocalizationProvider stringSet={localeStringSet} dateLocale={dateLocale}>\n {children}\n </LocalizationProvider>\n </SendbirdSdkContext.Provider>\n );\n}\n\nSendbird.propTypes = {\n userId: PropTypes.string.isRequired,\n appId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.arrayOf(PropTypes.element),\n PropTypes.any,\n ]).isRequired,\n theme: PropTypes.string,\n nickname: PropTypes.string,\n dateLocale: PropTypes.shape({}),\n profileUrl: PropTypes.string,\n disableUserProfile: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n allowProfileEdit: PropTypes.bool,\n userListQuery: PropTypes.func,\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n pubSub: PropTypes.shape({\n subscribe: PropTypes.func,\n publish: PropTypes.func,\n }),\n }),\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n useReaction: PropTypes.bool,\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n};\n\nSendbird.defaultProps = {\n accessToken: '',\n theme: 'light',\n nickname: '',\n dateLocale: null,\n profileUrl: '',\n disableUserProfile: false,\n renderUserProfile: null,\n allowProfileEdit: false,\n userListQuery: null,\n config: {},\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n useReaction: true,\n};\n"],"names":["INIT_SDK","SET_SDK_LOADING","RESET_SDK","SDK_ERROR","APP_VERSION_STRING","disconnectSdk","sdkDispatcher","userDispatcher","sdk","onDisconnect","type","payload","disconnect","then","RESET_USER","finally","handleConnection","dispatchers","userId","appId","nickname","profileUrl","accessToken","logger","info","newSdk","Sb","addExtension","connectCbSucess","user","INIT_USER","isTextuallyNull","updateCurrentUserInfo","namedUser","UPDATE_USER_INFO","connectCbError","e","error","connect","res","catch","err","warning","isEmpty","obj","undefined","prop","hasOwnProperty","JSON","stringify","useTheme","overrides","useLayoutEffect","cssVars","variables","initialized","loading","reducer","state","action","sdkActions","initialState","actions","useConnectionStatus","useState","isOnline","setIsOnline","useEffect","uniqueHandlerId","uuidv4","handler","ConnectionHandler","onReconnectStarted","onReconnectSucceeded","onReconnectFailed","reconnect","addConnectionHandler","removeConnectionHandler","tryReconnect","getConnectionState","window","addEventListener","removeEventListener","body","document","querySelector","classList","add","remove","LOG_LEVELS","DEBUG","WARNING","ERROR","INFO","ALL","colorLog","level","printLog","title","description","console","log","Date","toISOString","getDefaultLogger","LoggerFactory","lvl","customInterface","logInterface","lvlArray","Array","isArray","applyLog","lgLvl","reduce","accumulator","currentLvl","topics","hOP","__getTopics","subscribe","topic","listener","call","index","push","publish","forEach","item","useAppendDomNode","ids","rootSelector","root","id","elem","createElement","setAttribute","appendChild","target","getElementById","removeChild","Sendbird","props","dateLocale","children","disableUserProfile","renderUserProfile","allowProfileEdit","theme","userListQuery","config","colorSet","stringSet","imageCompression","useReaction","logLevel","setLogger","pubSub","setPubSub","useReducer","sdkReducers","sdkInitialState","sdkStore","userReducers","userInitialState","userStore","pubSubFactory","currenttheme","setCurrenttheme","useOnlineStatus","localeStringSet","React","useMemo","getStringSet","stores","propTypes","PropTypes","string","isRequired","oneOfType","element","arrayOf","any","shape","bool","func","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"SendbirdProvider.js","sources":["../src/lib/dux/sdk/actionTypes.js","../src/lib/dux/sdk/thunks.js","../src/lib/hooks/useTheme.ts","../src/lib/dux/sdk/initialState.js","../src/lib/dux/sdk/reducers.js","../src/lib/dux/user/initialState.js","../src/lib/dux/user/reducers.js","../src/lib/hooks/useOnlineStatus.js","../src/lib/Logger/index.js","../src/lib/pubSub/index.js","../src/hooks/useAppendDomNode.js","../src/lib/Sendbird.jsx"],"sourcesContent":["export const INIT_SDK = 'INIT_SDK';\nexport const SET_SDK_LOADING = 'SET_SDK_LOADING';\nexport const RESET_SDK = 'RESET_SDK';\nexport const SDK_ERROR = 'SDK_ERROR';\n","import Sb from 'sendbird';\n\nimport {\n INIT_SDK,\n SET_SDK_LOADING,\n RESET_SDK,\n SDK_ERROR,\n} from './actionTypes';\nimport { INIT_USER, UPDATE_USER_INFO, RESET_USER } from '../user/actionTypes';\nimport { isTextuallyNull } from '../../../utils';\n\nconst APP_VERSION_STRING = '__uikit_app_version__';\nconst IS_ROLLUP = '__is_rollup__';\nconst IS_ROLLUP_REPLACE = '__is_rollup_replace__';\n\nexport const disconnectSdk = ({\n sdkDispatcher,\n userDispatcher,\n sdk,\n onDisconnect,\n}) => {\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (sdk && sdk.disconnect) {\n sdk.disconnect()\n .then(() => {\n sdkDispatcher({ type: RESET_SDK });\n userDispatcher({ type: RESET_USER });\n })\n .finally(() => {\n onDisconnect();\n });\n } else {\n onDisconnect();\n }\n};\n\nexport const handleConnection = ({\n userId,\n appId,\n nickname,\n profileUrl,\n accessToken,\n sdk,\n logger,\n}, dispatchers) => {\n const {\n sdkDispatcher,\n userDispatcher,\n } = dispatchers;\n disconnectSdk({\n sdkDispatcher,\n userDispatcher,\n sdk,\n logger,\n onDisconnect: () => {\n logger.info('Setup connection');\n sdkDispatcher({ type: SET_SDK_LOADING, payload: true });\n if (userId && appId) {\n const newSdk = new Sb({ appId });\n // to check if code is released version from rollup and *not from storybook*\n // see rollup config file\n if (IS_ROLLUP === IS_ROLLUP_REPLACE) {\n newSdk.addExtension('sb_uikit', APP_VERSION_STRING);\n }\n const connectCbSucess = (user) => {\n sdkDispatcher({ type: INIT_SDK, payload: newSdk });\n userDispatcher({ type: INIT_USER, payload: user });\n // use nickname/profileUrl if provided\n // or set userID as nickname\n if ((nickname !== user.nickname || profileUrl !== user.profileUrl)\n && !(isTextuallyNull(nickname) && isTextuallyNull(profileUrl))\n ) {\n newSdk.updateCurrentUserInfo(nickname || user.nickname, profileUrl || user.profileUrl)\n .then((namedUser) => {\n userDispatcher({ type: UPDATE_USER_INFO, payload: namedUser });\n });\n }\n };\n\n const connectCbError = (e) => {\n logger.error('Connection failed', `${e}`);\n sdkDispatcher({ type: RESET_SDK });\n sdkDispatcher({ type: RESET_USER });\n sdkDispatcher({ type: SDK_ERROR });\n };\n\n if (accessToken) {\n newSdk.connect(userId, accessToken)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n } else {\n newSdk.connect(userId)\n .then((res) => connectCbSucess(res))\n .catch((err) => connectCbError(err));\n }\n } else {\n sdkDispatcher({ type: SDK_ERROR });\n logger.warning('Connection failed', 'UserId or appId missing');\n }\n },\n });\n};\n","import { useLayoutEffect } from 'react';\nimport cssVars from 'css-vars-ponyfill';\n\nconst isEmpty = (obj) => {\n if (obj === null || obj === undefined) {\n return true;\n }\n\n for (const prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n return false;\n }\n }\n return JSON.stringify(obj) === JSON.stringify({});\n}\n\nconst useTheme = (overrides: Record<string, string>): void => {\n useLayoutEffect(() => {\n if (!isEmpty(overrides)) {\n cssVars({\n variables: {\n ...{\n '--sendbird-dark-primary-500': '#4d2aa6',\n '--sendbird-dark-primary-400': '#6440C4',\n '--sendbird-dark-primary-300': '#7B53EF',\n '--sendbird-dark-primary-200': '#9E8CF5',\n '--sendbird-dark-primary-100': '#E2DFFF',\n\n '--sendbird-dark-secondary-500': '#007A7A',\n '--sendbird-dark-secondary-400': '#189A8D',\n '--sendbird-dark-secondary-300': '#2EBA9F',\n '--sendbird-dark-secondary-200': '#6FD6BE',\n '--sendbird-dark-secondary-100': '#AEF2DC',\n\n '--sendbird-dark-information-100': '#b2d9ff',\n\n '--sendbird-dark-error-500': '#A30E2D',\n '--sendbird-dark-error-400': '#C11F41',\n '--sendbird-dark-error-300': '#E53157',\n '--sendbird-dark-error-200': '#FF6183',\n '--sendbird-dark-error-100': '#FFABBD',\n\n '--sendbird-dark-background-700': '#000000',\n '--sendbird-dark-background-600': '#161616',\n '--sendbird-dark-background-500': '#2C2C2C',\n '--sendbird-dark-background-400': '#393939',\n '--sendbird-dark-background-300': '#A8A8A8',\n '--sendbird-dark-background-200': '#D9D9D9',\n '--sendbird-dark-background-100': '#F0F0F0',\n '--sendbird-dark-background-50': '#FFFFFF',\n\n '--sendbird-dark-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-dark-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-dark-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-dark-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-dark-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-dark-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-dark-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-dark-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-dark-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-dark-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-dark-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-primary-500': '#4d2aa6',\n '--sendbird-light-primary-400': '#6440C4',\n '--sendbird-light-primary-300': '#7B53EF',\n '--sendbird-light-primary-200': '#9E8CF5',\n '--sendbird-light-primary-100': '#E2DFFF',\n\n '--sendbird-light-secondary-500': '#007A7A',\n '--sendbird-light-secondary-400': '#189A8D',\n '--sendbird-light-secondary-300': '#2EBA9F',\n '--sendbird-light-secondary-200': '#6FD6BE',\n '--sendbird-light-secondary-100': '#AEF2DC',\n\n '--sendbird-light-information-100': '#b2d9ff',\n\n '--sendbird-light-error-500': '#A30E2D',\n '--sendbird-light-error-400': '#C11F41',\n '--sendbird-light-error-300': '#E53157',\n '--sendbird-light-error-200': '#FF6183',\n '--sendbird-light-error-100': '#FFABBD',\n\n '--sendbird-light-background-700': '#000000',\n '--sendbird-light-background-600': '#161616',\n '--sendbird-light-background-500': '#2C2C2C',\n '--sendbird-light-background-400': '#393939',\n '--sendbird-light-background-300': '#A8A8A8',\n '--sendbird-light-background-200': '#D9D9D9',\n '--sendbird-light-background-100': '#F0F0F0',\n '--sendbird-light-background-50': ' #FFFFFF',\n\n '--sendbird-light-overlay': 'rgba(0, 0, 0, 0.32)',\n\n '--sendbird-light-onlight-01': 'rgba(0, 0, 0, 0.88)',\n '--sendbird-light-onlight-02': 'rgba(0, 0, 0, 0.50)',\n '--sendbird-light-onlight-03': 'rgba(0, 0, 0, 0.38)',\n '--sendbird-light-onlight-04': 'rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-ondark-01': 'rgba(255, 255, 255, 0.88)',\n '--sendbird-light-ondark-02': 'rgba(255, 255, 255, 0.50)',\n '--sendbird-light-ondark-03': 'rgba(255, 255, 255, 0.38)',\n '--sendbird-light-ondark-04': 'rgba(255, 255, 255, 0.12)',\n\n '--sendbird-light-shadow-01': '0 1px 5px 0 rgba(33, 34, 66, 0.04), 0 0 3px 0 rgba(0, 0, 0, 0.08), 0 2px 1px 0 rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-02': '0 3px 5px -3px rgba(33, 34, 66, 0.04), 0 3px 14px 2px rgba(0, 0, 0, 0.08), 0 8px 10px 1px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-03': '0 6px 10px -5px rgba(0, 0, 0, 0.04), 0 6px 30px 5px rgba(0, 0, 0, 0.08), 0 16px 24px 2px rgba(0, 0, 0, 0.12)',\n '--sendbird-light-shadow-04': '0 9px 15px -7px rgba(0, 0, 0, 0.04), 0 9px 46px 8px rgba(0, 0, 0, 0.08), 0 24px 38px 3px rgba(0, 0, 0, 0.12)',\n\n '--sendbird-light-shadow-message-input': '0 1px 5px 0 rgba(33, 34, 66, 0.12), 0 0 1px 0 rgba(33, 34, 66, 0.16), 0 2px 1px 0 rgba(33, 34, 66, 0.08), 0 1px 5px 0 rgba(0, 0, 0, 0.12)',\n },\n ...overrides,\n },\n });\n }\n }, [overrides]);\n};\n\nexport default useTheme;\n","export default {\n initialized: false,\n loading: false,\n sdk: {},\n error: false,\n};\n","import * as sdkActions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case sdkActions.SET_SDK_LOADING:\n return {\n ...state,\n initialized: false,\n loading: action.payload,\n };\n case sdkActions.SDK_ERROR:\n return {\n ...state,\n initialized: false,\n loading: false,\n error: true,\n };\n case sdkActions.INIT_SDK:\n return {\n sdk: action.payload,\n initialized: true,\n loading: false,\n error: false,\n };\n case sdkActions.RESET_SDK:\n return initialState;\n default:\n return state;\n }\n}\n","export default {\n initialized: false,\n loading: false,\n user: {},\n};\n","import * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_USER:\n return {\n initialized: true,\n loading: false,\n user: action.payload,\n };\n case actions.RESET_USER:\n return initialState;\n case actions.UPDATE_USER_INFO:\n return {\n ...state,\n user: action.payload,\n };\n default:\n return state;\n }\n}\n","import { useState, useEffect } from 'react';\n\nimport { uuidv4 } from '../../utils/uuid';\n\nfunction useConnectionStatus(sdk, logger) {\n const [isOnline, setIsOnline] = useState(true);\n\n useEffect(() => {\n const uniqueHandlerId = uuidv4();\n logger.warning('sdk changed', uniqueHandlerId);\n let handler;\n if (sdk && sdk.ConnectionHandler) {\n handler = new sdk.ConnectionHandler();\n\n handler.onReconnectStarted = () => {\n setIsOnline(false);\n logger.warning('onReconnectStarted', { isOnline });\n };\n handler.onReconnectSucceeded = () => {\n setIsOnline(true);\n logger.warning('onReconnectSucceeded', { isOnline });\n };\n handler.onReconnectFailed = () => {\n sdk.reconnect();\n logger.warning('onReconnectFailed');\n };\n logger.info('Added ConnectionHandler', uniqueHandlerId);\n sdk.addConnectionHandler(uniqueHandlerId, handler);\n }\n return () => {\n try {\n sdk.removeConnectionHandler(uniqueHandlerId);\n logger.info('Removed ConnectionHandler', uniqueHandlerId);\n } catch {\n //\n }\n };\n }, [sdk]);\n\n useEffect(() => {\n const tryReconnect = () => {\n try {\n logger.warning('Try reconnecting SDK');\n if (sdk.getConnectionState() !== 'OPEN') { // connection is not broken yet\n sdk.reconnect();\n }\n } catch {\n //\n }\n };\n // addEventListener version\n window.addEventListener('online', tryReconnect);\n return () => {\n window.removeEventListener('online', tryReconnect);\n };\n }, [sdk]);\n\n // add offline-class to body\n useEffect(() => {\n const body = document.querySelector('body');\n if (!isOnline) {\n try {\n body.classList.add('sendbird__offline');\n logger.info('Added class sendbird__offline to body');\n } catch (e) {\n //\n }\n } else {\n try {\n body.classList.remove('sendbird__offline');\n logger.info('Removed class sendbird__offline from body');\n } catch (e) {\n //\n }\n }\n }, [isOnline]);\n\n return isOnline;\n}\n\nexport default useConnectionStatus;\n","// Logger, pretty much explains it\n// in SendbirdProvider\n// const [logger, setLogger] = useState(LoggerFactory(logLevel));\nexport const LOG_LEVELS = {\n DEBUG: 'debug',\n WARNING: 'warning',\n ERROR: 'error',\n INFO: 'info',\n ALL: 'all',\n};\n\nconst colorLog = (level) => {\n switch (level) {\n case LOG_LEVELS.WARNING:\n return ('color: Orange');\n case LOG_LEVELS.ERROR:\n return ('color: Red');\n default:\n return ('color: Gray');\n }\n};\n\nexport const printLog = ({\n level,\n title,\n description = '',\n}) => {\n // eslint-disable-next-line no-console\n console.log(\n `%c SendbirdUIKit | ${level} | ${new Date().toISOString()} | ${title} ${description && '|'}`, colorLog(level),\n description,\n );\n};\n\nexport const getDefaultLogger = () => ({\n info: () => {},\n error: () => {},\n warning: () => {},\n});\n\nexport const LoggerFactory = (lvl, customInterface) => {\n const logInterface = customInterface || printLog;\n const lvlArray = Array.isArray(lvl) ? lvl : [lvl];\n\n const applyLog = (lgLvl) => (title, description) => logInterface({\n level: lgLvl,\n title,\n description,\n });\n\n const logger = lvlArray.reduce((accumulator, currentLvl) => {\n if (currentLvl === LOG_LEVELS.DEBUG || currentLvl === LOG_LEVELS.ALL) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n error: applyLog(LOG_LEVELS.ERROR),\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n if (currentLvl === LOG_LEVELS.INFO) {\n return ({\n ...accumulator,\n info: applyLog(LOG_LEVELS.INFO),\n });\n }\n\n if (currentLvl === LOG_LEVELS.ERROR) {\n return ({\n ...accumulator,\n error: applyLog(LOG_LEVELS.ERROR),\n });\n }\n\n if (currentLvl === LOG_LEVELS.WARNING) {\n return ({\n ...accumulator,\n warning: applyLog(LOG_LEVELS.WARNING),\n });\n }\n\n return { ...accumulator };\n }, getDefaultLogger());\n return logger;\n};\n","// https://davidwalsh.name/pubsub-javascript\n// we use pubsub to sync events between multiple components(example - ChannelList, Channel)\n// for example, if customer sends a message from their custom component\n// without pubsub,we would not be able to listen to it\n// in our ChannelList or Conversation\nexport default () => {\n const topics = {};\n const hOP = topics.hasOwnProperty;\n\n return {\n __getTopics: () => topics,\n subscribe: (topic, listener) => {\n // Create the topic's object if not yet created\n if (!hOP.call(topics, topic)) { topics[topic] = []; }\n\n // Add the listener to queue\n const index = topics[topic].push(listener) - 1;\n\n // Provide handle back for removal of topic\n return {\n remove: () => {\n delete topics[topic][index];\n },\n };\n },\n publish: (topic, info) => {\n // If the topic doesn't exist, or there's no listeners in queue, just leave\n if (!hOP.call(topics, topic)) { return; }\n\n // Cycle through topics queue, fire!\n topics[topic].forEach((item) => {\n item(info !== undefined ? info : {});\n });\n },\n };\n};\n","import { useEffect } from 'react';\n\nfunction useAppendDomNode(ids = [], rootSelector) {\n useEffect(() => {\n const root = document.querySelector(rootSelector);\n ids.forEach((id) => {\n const elem = document.createElement('div');\n elem.setAttribute('id', id);\n root.appendChild(elem);\n });\n return () => {\n ids.forEach((id) => {\n const target = document.getElementById(id);\n if (target) {\n root.removeChild(target);\n }\n });\n };\n }, []);\n}\n\nexport default useAppendDomNode;\n","import './index.scss';\n\nimport React, { useEffect, useReducer, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { SendbirdSdkContext } from './SendbirdSdkContext';\nimport { handleConnection } from './dux/sdk/thunks';\n\nimport useTheme from './hooks/useTheme';\n\nimport sdkReducers from './dux/sdk/reducers';\nimport userReducers from './dux/user/reducers';\nimport sdkInitialState from './dux/sdk/initialState';\nimport userInitialState from './dux/user/initialState';\n\nimport useOnlineStatus from './hooks/useOnlineStatus';\n\nimport { LoggerFactory } from './Logger';\nimport pubSubFactory from './pubSub/index';\nimport useAppendDomNode from '../hooks/useAppendDomNode';\n\nimport { LocalizationProvider } from './LocalizationContext';\nimport getStringSet from '../ui/Label/stringSet';\n\nexport default function Sendbird(props) {\n const {\n userId,\n dateLocale,\n appId,\n accessToken,\n children,\n disableUserProfile,\n renderUserProfile,\n allowProfileEdit,\n theme,\n nickname,\n profileUrl,\n userListQuery,\n config = {},\n colorSet,\n stringSet,\n imageCompression,\n useReaction,\n isMentionEnabled,\n } = props;\n\n const {\n logLevel = '',\n userMention = {},\n } = config;\n const [logger, setLogger] = useState(LoggerFactory(logLevel));\n const [pubSub, setPubSub] = useState();\n const [sdkStore, sdkDispatcher] = useReducer(sdkReducers, sdkInitialState);\n const [userStore, userDispatcher] = useReducer(userReducers, userInitialState);\n\n useTheme(colorSet);\n\n useEffect(() => {\n setPubSub(pubSubFactory());\n }, []);\n\n useEffect(() => {\n logger.info('App Init');\n // dispatch action\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n sdk: sdkStore.sdk,\n logger,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n }, [userId, appId, accessToken]);\n\n // to create a pubsub to communicate between parent and child\n useEffect(() => {\n setLogger(LoggerFactory(logLevel));\n }, [logLevel]);\n\n useAppendDomNode([\n 'sendbird-modal-root',\n 'sendbird-dropdown-portal',\n 'sendbird-emoji-list-portal',\n ], 'body');\n\n // should move to reducer\n const [currenttheme, setCurrenttheme] = useState(theme);\n useEffect(() => {\n setCurrenttheme(theme);\n }, [theme]);\n // add-remove theme from body\n useEffect(() => {\n logger.info('Setup theme', `Theme: ${currenttheme}`);\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n body.classList.add(`sendbird-theme--${currenttheme || 'light'}`);\n logger.info('Finish setup theme');\n // eslint-disable-next-line no-empty\n } catch (e) {\n logger.warning('Setup theme failed', `${e}`);\n }\n return () => {\n try {\n const body = document.querySelector('body');\n body.classList.remove('sendbird-theme--light');\n body.classList.remove('sendbird-theme--dark');\n // eslint-disable-next-line no-empty\n } catch { }\n };\n }, [currenttheme]);\n\n const isOnline = useOnlineStatus(sdkStore.sdk, logger);\n\n const localeStringSet = React.useMemo(() => {\n if (!stringSet) {\n return getStringSet('en');\n }\n return {\n ...getStringSet('en'),\n ...stringSet,\n };\n }, [stringSet]);\n\n return (\n <SendbirdSdkContext.Provider\n value={{\n stores: {\n sdkStore,\n userStore,\n },\n dispatchers: {\n sdkDispatcher,\n userDispatcher,\n reconnect: () => {\n handleConnection({\n userId,\n appId,\n accessToken,\n sdkStore,\n nickname,\n profileUrl,\n logger,\n sdk: sdkStore.sdk,\n }, {\n sdkDispatcher,\n userDispatcher,\n });\n },\n },\n config: {\n disableUserProfile,\n renderUserProfile,\n allowProfileEdit,\n isOnline,\n userId,\n appId,\n accessToken,\n theme: currenttheme,\n setCurrenttheme,\n userListQuery,\n logger,\n pubSub,\n imageCompression,\n useReaction,\n isMentionEnabled: isMentionEnabled || false,\n userMention: {\n maxMentionCount: userMention?.maxMentionCount || 10,\n maxSuggestionCount: userMention?.maxSuggestionCount || 15,\n },\n },\n }}\n >\n <LocalizationProvider stringSet={localeStringSet} dateLocale={dateLocale}>\n {children}\n </LocalizationProvider>\n </SendbirdSdkContext.Provider>\n );\n}\n\nSendbird.propTypes = {\n userId: PropTypes.string.isRequired,\n appId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.arrayOf(PropTypes.element),\n PropTypes.any,\n ]).isRequired,\n theme: PropTypes.string,\n nickname: PropTypes.string,\n dateLocale: PropTypes.shape({}),\n profileUrl: PropTypes.string,\n disableUserProfile: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n allowProfileEdit: PropTypes.bool,\n userListQuery: PropTypes.func,\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n pubSub: PropTypes.shape({\n subscribe: PropTypes.func,\n publish: PropTypes.func,\n }),\n userMention: PropTypes.shape({\n maxMentionCount: PropTypes.number,\n maxSuggestionCount: PropTypes.number,\n }),\n }),\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n useReaction: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n};\n\nSendbird.defaultProps = {\n accessToken: '',\n theme: 'light',\n nickname: '',\n dateLocale: null,\n profileUrl: '',\n disableUserProfile: false,\n renderUserProfile: null,\n allowProfileEdit: false,\n userListQuery: null,\n config: {},\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n useReaction: true,\n isMentionEnabled: false,\n};\n"],"names":["INIT_SDK","SET_SDK_LOADING","RESET_SDK","SDK_ERROR","APP_VERSION_STRING","disconnectSdk","sdkDispatcher","userDispatcher","sdk","onDisconnect","type","payload","disconnect","then","RESET_USER","finally","handleConnection","dispatchers","userId","appId","nickname","profileUrl","accessToken","logger","info","newSdk","Sb","addExtension","connectCbSucess","user","INIT_USER","isTextuallyNull","updateCurrentUserInfo","namedUser","UPDATE_USER_INFO","connectCbError","e","error","connect","res","catch","err","warning","isEmpty","obj","undefined","prop","hasOwnProperty","JSON","stringify","useTheme","overrides","useLayoutEffect","cssVars","variables","initialized","loading","reducer","state","action","sdkActions","initialState","actions","useConnectionStatus","useState","isOnline","setIsOnline","useEffect","uniqueHandlerId","uuidv4","handler","ConnectionHandler","onReconnectStarted","onReconnectSucceeded","onReconnectFailed","reconnect","addConnectionHandler","removeConnectionHandler","tryReconnect","getConnectionState","window","addEventListener","removeEventListener","body","document","querySelector","classList","add","remove","LOG_LEVELS","DEBUG","WARNING","ERROR","INFO","ALL","colorLog","level","printLog","title","description","console","log","Date","toISOString","getDefaultLogger","LoggerFactory","lvl","customInterface","logInterface","lvlArray","Array","isArray","applyLog","lgLvl","reduce","accumulator","currentLvl","topics","hOP","__getTopics","subscribe","topic","listener","call","index","push","publish","forEach","item","useAppendDomNode","ids","rootSelector","root","id","elem","createElement","setAttribute","appendChild","target","getElementById","removeChild","Sendbird","props","dateLocale","children","disableUserProfile","renderUserProfile","allowProfileEdit","theme","userListQuery","config","colorSet","stringSet","imageCompression","useReaction","isMentionEnabled","logLevel","userMention","setLogger","pubSub","setPubSub","useReducer","sdkReducers","sdkInitialState","sdkStore","userReducers","userInitialState","userStore","pubSubFactory","currenttheme","setCurrenttheme","useOnlineStatus","localeStringSet","React","useMemo","getStringSet","stores","maxMentionCount","maxSuggestionCount","propTypes","PropTypes","string","isRequired","oneOfType","element","arrayOf","any","shape","bool","func","number","objectOf","compressionRate","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
@@ -35,4 +35,4 @@ UserProfileProvider.defaultProps = {
35
35
  };
36
36
 
37
37
  export { UserProfileProvider as U, UserProfileContext as a };
38
- //# sourceMappingURL=UserProfileContext-865db5e6.js.map
38
+ //# sourceMappingURL=UserProfileContext-daa99f9b.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserProfileContext-865db5e6.js","sources":["../src/lib/UserProfileContext.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n/**\n * user profile goes deep inside the component tree\n * use this context as a short circuit to send in values\n */\nconst UserProfileContext = React.createContext({\n disableUserProfile: true,\n isOpenChannel: false,\n renderUserProfile: null,\n});\n\nconst UserProfileProvider = (props) => {\n const { children } = props;\n return (\n <UserProfileContext.Provider value={props}>\n {children}\n </UserProfileContext.Provider>\n );\n};\n\nUserProfileProvider.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.arrayOf(PropTypes.element),\n PropTypes.any,\n ]).isRequired,\n // eslint-disable-next-line react/no-unused-prop-types\n isOpenChannel: PropTypes.bool,\n // eslint-disable-next-line react/no-unused-prop-types\n disableUserProfile: PropTypes.bool,\n // eslint-disable-next-line react/no-unused-prop-types\n renderUserProfile: PropTypes.func,\n};\n\nUserProfileProvider.defaultProps = {\n isOpenChannel: false,\n disableUserProfile: false,\n renderUserProfile: null,\n};\n\nexport { UserProfileContext, UserProfileProvider };\n"],"names":["UserProfileContext","React","createContext","disableUserProfile","isOpenChannel","renderUserProfile","UserProfileProvider","props","children","propTypes","PropTypes","oneOfType","element","arrayOf","any","isRequired","bool","func","defaultProps"],"mappings":";;;AAGA;AACA;AACA;AACA;;IACMA,kBAAkB,gBAAGC,cAAK,CAACC,aAAN,CAAoB;AAC7CC,EAAAA,kBAAkB,EAAE,IADyB;AAE7CC,EAAAA,aAAa,EAAE,KAF8B;AAG7CC,EAAAA,iBAAiB,EAAE;AAH0B,CAApB;;IAMrBC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAAW;AACrC,MAAQC,QAAR,GAAqBD,KAArB,CAAQC,QAAR;AACA,sBACEP,6BAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAEM;AAApC,KACGC,QADH,CADF;AAKD;;AAEDF,mBAAmB,CAACG,SAApB,GAAgC;AAC9BD,EAAAA,QAAQ,EAAEE,SAAS,CAACC,SAAV,CAAoB,CAC5BD,SAAS,CAACE,OADkB,EAE5BF,SAAS,CAACG,OAAV,CAAkBH,SAAS,CAACE,OAA5B,CAF4B,EAG5BF,SAAS,CAACI,GAHkB,CAApB,EAIPC,UAL2B;AAM9B;AACAX,EAAAA,aAAa,EAAEM,SAAS,CAACM,IAPK;AAQ9B;AACAb,EAAAA,kBAAkB,EAAEO,SAAS,CAACM,IATA;AAU9B;AACAX,EAAAA,iBAAiB,EAAEK,SAAS,CAACO;AAXC,CAAhC;AAcAX,mBAAmB,CAACY,YAApB,GAAmC;AACjCd,EAAAA,aAAa,EAAE,KADkB;AAEjCD,EAAAA,kBAAkB,EAAE,KAFa;AAGjCE,EAAAA,iBAAiB,EAAE;AAHc,CAAnC;;;;"}
1
+ {"version":3,"file":"UserProfileContext-daa99f9b.js","sources":["../src/lib/UserProfileContext.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n/**\n * user profile goes deep inside the component tree\n * use this context as a short circuit to send in values\n */\nconst UserProfileContext = React.createContext({\n disableUserProfile: true,\n isOpenChannel: false,\n renderUserProfile: null,\n});\n\nconst UserProfileProvider = (props) => {\n const { children } = props;\n return (\n <UserProfileContext.Provider value={props}>\n {children}\n </UserProfileContext.Provider>\n );\n};\n\nUserProfileProvider.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.arrayOf(PropTypes.element),\n PropTypes.any,\n ]).isRequired,\n // eslint-disable-next-line react/no-unused-prop-types\n isOpenChannel: PropTypes.bool,\n // eslint-disable-next-line react/no-unused-prop-types\n disableUserProfile: PropTypes.bool,\n // eslint-disable-next-line react/no-unused-prop-types\n renderUserProfile: PropTypes.func,\n};\n\nUserProfileProvider.defaultProps = {\n isOpenChannel: false,\n disableUserProfile: false,\n renderUserProfile: null,\n};\n\nexport { UserProfileContext, UserProfileProvider };\n"],"names":["UserProfileContext","React","createContext","disableUserProfile","isOpenChannel","renderUserProfile","UserProfileProvider","props","children","propTypes","PropTypes","oneOfType","element","arrayOf","any","isRequired","bool","func","defaultProps"],"mappings":";;;AAGA;AACA;AACA;AACA;;IACMA,kBAAkB,gBAAGC,cAAK,CAACC,aAAN,CAAoB;AAC7CC,EAAAA,kBAAkB,EAAE,IADyB;AAE7CC,EAAAA,aAAa,EAAE,KAF8B;AAG7CC,EAAAA,iBAAiB,EAAE;AAH0B,CAApB;;IAMrBC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAAW;AACrC,MAAQC,QAAR,GAAqBD,KAArB,CAAQC,QAAR;AACA,sBACEP,6BAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAEM;AAApC,KACGC,QADH,CADF;AAKD;;AAEDF,mBAAmB,CAACG,SAApB,GAAgC;AAC9BD,EAAAA,QAAQ,EAAEE,SAAS,CAACC,SAAV,CAAoB,CAC5BD,SAAS,CAACE,OADkB,EAE5BF,SAAS,CAACG,OAAV,CAAkBH,SAAS,CAACE,OAA5B,CAF4B,EAG5BF,SAAS,CAACI,GAHkB,CAApB,EAIPC,UAL2B;AAM9B;AACAX,EAAAA,aAAa,EAAEM,SAAS,CAACM,IAPK;AAQ9B;AACAb,EAAAA,kBAAkB,EAAEO,SAAS,CAACM,IATA;AAU9B;AACAX,EAAAA,iBAAiB,EAAEK,SAAS,CAACO;AAXC,CAAhC;AAcAX,mBAAmB,CAACY,YAApB,GAAmC;AACjCd,EAAAA,aAAa,EAAE,KADkB;AAEjCD,EAAAA,kBAAkB,EAAE,KAFa;AAGjCE,EAAAA,iBAAiB,EAAE;AAHc,CAAnC;;;;"}
@@ -230,4 +230,4 @@ function _nonIterableRest() {
230
230
  }
231
231
 
232
232
  export { _objectSpread2 as _, _slicedToArray as a, _toConsumableArray as b, _inherits as c, _createSuper as d, _createClass as e, _classCallCheck as f, _defineProperty as g, _assertThisInitialized as h };
233
- //# sourceMappingURL=_rollupPluginBabelHelpers-20904f21.js.map
233
+ //# sourceMappingURL=_rollupPluginBabelHelpers-8e4fae98.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_rollupPluginBabelHelpers-20904f21.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"_rollupPluginBabelHelpers-8e4fae98.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -3,4 +3,4 @@ var RESET_USER = 'RESET_USER';
3
3
  var UPDATE_USER_INFO = 'UPDATE_USER_INFO';
4
4
 
5
5
  export { INIT_USER as I, RESET_USER as R, UPDATE_USER_INFO as U };
6
- //# sourceMappingURL=actionTypes-1e3a4074.js.map
6
+ //# sourceMappingURL=actionTypes-189daf51.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"actionTypes-1e3a4074.js","sources":["../src/lib/dux/user/actionTypes.js"],"sourcesContent":["export const INIT_USER = 'INIT_USER';\nexport const RESET_USER = 'RESET_USER';\nexport const SET_USER_LOADING = 'SET_USER_LOADING';\nexport const UPDATE_USER_INFO = 'UPDATE_USER_INFO';\n"],"names":["INIT_USER","RESET_USER","UPDATE_USER_INFO"],"mappings":"IAAaA,SAAS,GAAG;IACZC,UAAU,GAAG;IAEbC,gBAAgB,GAAG;;;;"}
1
+ {"version":3,"file":"actionTypes-189daf51.js","sources":["../src/lib/dux/user/actionTypes.js"],"sourcesContent":["export const INIT_USER = 'INIT_USER';\nexport const RESET_USER = 'RESET_USER';\nexport const SET_USER_LOADING = 'SET_USER_LOADING';\nexport const UPDATE_USER_INFO = 'UPDATE_USER_INFO';\n"],"names":["INIT_USER","RESET_USER","UPDATE_USER_INFO"],"mappings":"IAAaA,SAAS,GAAG;IACZC,UAAU,GAAG;IAEbC,gBAAgB,GAAG;;;;"}
package/cjs/App.js CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-fc14118c.js');
3
+ var _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-e54d2387.js');
4
4
  var React = require('react');
5
5
  var PropTypes = require('prop-types');
6
6
  var SendbirdProvider = require('./SendbirdProvider.js');
@@ -10,22 +10,22 @@ var ChannelSettings = require('./ChannelSettings.js');
10
10
  var MessageSearch = require('./MessageSearch.js');
11
11
  require('./withSendBird.js');
12
12
  require('sendbird');
13
- require('./actionTypes-bc47f97a.js');
14
- require('./index-d4880236.js');
15
- require('./tslib.es6-4a281a05.js');
13
+ require('./actionTypes-267d4c79.js');
14
+ require('./index-002a349d.js');
15
+ require('./tslib.es6-d7d0a427.js');
16
16
  require('css-vars-ponyfill');
17
- require('./uuid-1d5ec8b2.js');
18
- require('./LocalizationContext-68e55e2a.js');
19
- require('./stringSet-aa544ce5.js');
20
- require('./index-e2bb862c.js');
21
- require('./ChannelListProvider-5a152618.js');
22
- require('./topics-8314d425.js');
23
- require('./utils-3b0815dc.js');
24
- require('./UserProfileContext-3533547d.js');
17
+ require('./uuid-ba6cc3c5.js');
18
+ require('./LocalizationContext-3b5ce8ae.js');
19
+ require('./stringSet-f4da182b.js');
20
+ require('./index-d9439e95.js');
21
+ require('./ChannelListProvider-44dde549.js');
22
+ require('./topics-c2c30f09.js');
23
+ require('./utils-c55d20dc.js');
24
+ require('./UserProfileContext-f0bdfbb8.js');
25
25
  require('./useSendbirdStateContext.js');
26
26
  require('./ChannelList/components/ChannelListUI.js');
27
27
  require('./ChannelList/components/ChannelListHeader.js');
28
- require('./index-1468d245.js');
28
+ require('./index-21f31180.js');
29
29
  require('./ui/IconButton.js');
30
30
  require('./ui/Avatar.js');
31
31
  require('./ui/ImageRenderer.js');
@@ -33,13 +33,13 @@ require('./ui/Icon.js');
33
33
  require('./ChannelList/components/AddChannel.js');
34
34
  require('./CreateChannel.js');
35
35
  require('./CreateChannel/components/CreateChannelUI.js');
36
- require('./CreateChannelProvider-df42106f.js');
36
+ require('./CreateChannelProvider-bdf9c39b.js');
37
37
  require('./sendBirdSelectors.js');
38
38
  require('./CreateChannel/components/InviteMembers.js');
39
39
  require('./ui/Modal.js');
40
40
  require('react-dom');
41
- require('./index-aecc8d24.js');
42
- require('./index-1044f1ed.js');
41
+ require('./index-ed053e45.js');
42
+ require('./index-22f07209.js');
43
43
  require('./ui/UserListItem.js');
44
44
  require('./ui/MutedAvatarOverlay.js');
45
45
  require('./ui/Checkbox.js');
@@ -49,30 +49,36 @@ require('./ui/SortByRow.js');
49
49
  require('./CreateChannel/components/SelectChannelType.js');
50
50
  require('./ChannelList/components/ChannelPreview.js');
51
51
  require('./ui/ChannelAvatar.js');
52
- require('./utils-66b3f4ec.js');
52
+ require('./utils-b95288a8.js');
53
53
  require('./ui/Badge.js');
54
- require('./index-8becccd8.js');
55
- require('./index-9dc3863f.js');
56
- require('./index-905331fa.js');
54
+ require('./index-46522cf0.js');
55
+ require('./index-c0693be4.js');
56
+ require('./index-0159bc57.js');
57
+ require('./ui/MentionUserLabel.js');
57
58
  require('./ChannelList/components/ChannelPreviewAction.js');
58
59
  require('./EditUserProfile.js');
59
- require('./index-4987c8b2.js');
60
+ require('./index-081c9614.js');
60
61
  require('./ui/Input.js');
61
62
  require('./ui/TextButton.js');
62
- require('./color-4afb15fb.js');
63
- require('./index-659c9ca5.js');
63
+ require('./color-0f078673.js');
64
+ require('./index-d4f42e73.js');
64
65
  require('./ui/Loader.js');
65
- require('./ChannelProvider-f1fb0108.js');
66
- require('./compareIds-01306377.js');
66
+ require('./ChannelProvider-e0aaab26.js');
67
+ require('./compareIds-176a582b.js');
68
+ require('./const-ccf192c5.js');
67
69
  require('./ui/ReactionButton.js');
68
70
  require('./Channel/components/ChannelUI.js');
69
71
  require('./ui/ConnectionStatus.js');
70
72
  require('./Channel/components/ChannelHeader.js');
71
73
  require('./Channel/components/MessageList.js');
72
74
  require('./Channel/components/Message.js');
75
+ require('./Channel/components/SuggestedMentionList.js');
76
+ require('./const-4bf0e8b4.js');
73
77
  require('./ui/DateSeparator.js');
74
78
  require('./ui/MessageInput.js');
79
+ require('stream');
75
80
  require('./ui/MessageContent.js');
81
+ require('./ui/MessageStatus.js');
76
82
  require('./ui/MessageItemMenu.js');
77
83
  require('./ui/MessageItemReactionMenu.js');
78
84
  require('./ui/EmojiReactions.js');
@@ -81,10 +87,11 @@ require('./ui/TooltipWrapper.js');
81
87
  require('./ui/ReactionBadge.js');
82
88
  require('./ui/AdminMessage.js');
83
89
  require('./ui/TextMessageItemBody.js');
90
+ require('./index-723733db.js');
91
+ require('./ui/LinkLabel.js');
84
92
  require('./ui/FileMessageItemBody.js');
85
93
  require('./ui/ThumbnailMessageItemBody.js');
86
94
  require('./ui/OGMessageItemBody.js');
87
- require('./ui/LinkLabel.js');
88
95
  require('./ui/UnknownMessageItemBody.js');
89
96
  require('./ui/QuoteMessage.js');
90
97
  require('./Channel/components/FileViewer.js');
@@ -101,9 +108,9 @@ require('./ChannelSettings/components/EditDetailsModal.js');
101
108
  require('./ChannelSettings/components/AdminPanel.js');
102
109
  require('./ui/Accordion.js');
103
110
  require('./ui/AccordionGroup.js');
104
- require('./context-c1f9d650.js');
111
+ require('./context-0cbe196d.js');
105
112
  require('./ChannelSettings/components/UserListItem.js');
106
- require('./MemberList-dc84e303.js');
113
+ require('./MemberList-ef9e43c3.js');
107
114
  require('./ChannelSettings/components/LeaveChannel.js');
108
115
  require('./ChannelSettings/components/UserPanel.js');
109
116
  require('./MessageSearch/components/MessageSearchUI.js');
@@ -128,6 +135,7 @@ function App(props) {
128
135
  _props$config = props.config,
129
136
  config = _props$config === void 0 ? {} : _props$config,
130
137
  useReaction = props.useReaction,
138
+ isMentionEnabled = props.isMentionEnabled,
131
139
  replyType = props.replyType,
132
140
  useMessageGrouping = props.useMessageGrouping,
133
141
  colorSet = props.colorSet,
@@ -180,7 +188,8 @@ function App(props) {
180
188
  disableUserProfile: disableUserProfile,
181
189
  renderUserProfile: renderUserProfile,
182
190
  imageCompression: imageCompression,
183
- useReaction: useReaction
191
+ useReaction: useReaction,
192
+ isMentionEnabled: isMentionEnabled
184
193
  }, /*#__PURE__*/React__default["default"].createElement("div", {
185
194
  className: "sendbird-app__wrap"
186
195
  }, /*#__PURE__*/React__default["default"].createElement("div", {
@@ -273,7 +282,8 @@ App.propTypes = {
273
282
  resizingWidth: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string]),
274
283
  resizingHeight: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string])
275
284
  }),
276
- disableAutoSelect: PropTypes__default["default"].bool
285
+ disableAutoSelect: PropTypes__default["default"].bool,
286
+ isMentionEnabled: PropTypes__default["default"].bool
277
287
  };
278
288
  App.defaultProps = {
279
289
  accessToken: '',
@@ -289,6 +299,7 @@ App.defaultProps = {
289
299
  renderUserProfile: null,
290
300
  config: {},
291
301
  useReaction: true,
302
+ isMentionEnabled: false,
292
303
  replyType: 'NONE',
293
304
  useMessageGrouping: true,
294
305
  stringSet: null,
package/cjs/App.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sources":["../../src/smart-components/App/index.jsx"],"sourcesContent":["/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n useReaction,\n replyType,\n useMessageGrouping,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n } = props;\n const [currentChannelUrl, setCurrentChannelUrl] = useState(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState(null);\n const [startingPoint, setStartingPoint] = useState(null);\n\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n useReaction={useReaction}\n >\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel && channel.url) {\n setCurrentChannelUrl(channel.url);\n } else {\n setCurrentChannelUrl('');\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannelUrl}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowSearch(!showSearch);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n useReaction={useReaction}\n replyType={replyType}\n useMessageGrouping={useMessageGrouping}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannelUrl}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannelUrl}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n </div>\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n useReaction: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n useMessageGrouping: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n useReaction: true,\n replyType: 'NONE',\n useMessageGrouping: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n};\n"],"names":["App","props","appId","userId","accessToken","theme","userListQuery","nickname","profileUrl","dateLocale","config","useReaction","replyType","useMessageGrouping","colorSet","stringSet","allowProfileEdit","disableUserProfile","renderUserProfile","showSearchIcon","onProfileEditSuccess","imageCompression","disableAutoSelect","useState","currentChannelUrl","setCurrentChannelUrl","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","React","Sendbird","channel","url","MessageSearchPannel","message","messageId","setTimeout","createdAt","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sources":["../../src/smart-components/App/index.jsx"],"sourcesContent":["/**\n * This is a drop in Chat solution\n * Can also be used as an example for creating\n * default chat apps\n */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport Sendbird from '../../lib/Sendbird';\n\nimport ChannelList from '../ChannelList';\nimport Channel from '../Channel';\nimport ChannelSettings from '../ChannelSettings';\nimport MessageSearchPannel from '../MessageSearch';\n\nimport './index.scss';\n\nexport default function App(props) {\n const {\n appId,\n userId,\n accessToken,\n theme,\n userListQuery,\n nickname,\n profileUrl,\n dateLocale,\n config = {},\n useReaction,\n isMentionEnabled,\n replyType,\n useMessageGrouping,\n colorSet,\n stringSet,\n allowProfileEdit,\n disableUserProfile,\n renderUserProfile,\n showSearchIcon,\n onProfileEditSuccess,\n imageCompression,\n disableAutoSelect,\n } = props;\n const [currentChannelUrl, setCurrentChannelUrl] = useState(null);\n const [showSettings, setShowSettings] = useState(false);\n const [showSearch, setShowSearch] = useState(false);\n const [highlightedMessage, setHighlightedMessage] = useState(null);\n const [startingPoint, setStartingPoint] = useState(null);\n\n return (\n <Sendbird\n stringSet={stringSet}\n appId={appId}\n userId={userId}\n accessToken={accessToken}\n theme={theme}\n nickname={nickname}\n profileUrl={profileUrl}\n dateLocale={dateLocale}\n userListQuery={userListQuery}\n config={config}\n colorSet={colorSet}\n disableUserProfile={disableUserProfile}\n renderUserProfile={renderUserProfile}\n imageCompression={imageCompression}\n useReaction={useReaction}\n isMentionEnabled={isMentionEnabled}\n >\n <div className=\"sendbird-app__wrap\">\n <div className=\"sendbird-app__channellist-wrap\">\n <ChannelList\n allowProfileEdit={allowProfileEdit}\n onProfileEditSuccess={onProfileEditSuccess}\n disableAutoSelect={disableAutoSelect}\n onChannelSelect={(channel) => {\n setStartingPoint(null);\n setHighlightedMessage(null);\n if (channel && channel.url) {\n setCurrentChannelUrl(channel.url);\n } else {\n setCurrentChannelUrl('');\n }\n }}\n />\n </div>\n <div\n className={`\n ${showSettings ? 'sendbird-app__conversation--settings-open' : ''}\n ${showSearch ? 'sendbird-app__conversation--search-open' : ''}\n sendbird-app__conversation-wrap\n `}\n >\n <Channel\n channelUrl={currentChannelUrl}\n onChatHeaderActionClick={() => {\n setShowSearch(false);\n setShowSettings(!showSettings);\n }}\n onSearchClick={() => {\n setShowSettings(false);\n setShowSearch(!showSearch);\n }}\n showSearchIcon={showSearchIcon}\n startingPoint={startingPoint}\n highlightedMessage={highlightedMessage}\n useReaction={useReaction}\n replyType={replyType}\n useMessageGrouping={useMessageGrouping}\n />\n </div>\n {showSettings && (\n <div className=\"sendbird-app__settingspanel-wrap\">\n <ChannelSettings\n className=\"sendbird-channel-settings\"\n channelUrl={currentChannelUrl}\n onCloseClick={() => {\n setShowSettings(false);\n }}\n />\n </div>\n )}\n {showSearch && (\n <div className=\"sendbird-app__searchpanel-wrap\">\n <MessageSearchPannel\n channelUrl={currentChannelUrl}\n onResultClick={(message) => {\n if (message.messageId === highlightedMessage) {\n setHighlightedMessage(null);\n setTimeout(() => {\n setHighlightedMessage(message.messageId);\n });\n } else {\n setStartingPoint(message.createdAt);\n setHighlightedMessage(message.messageId);\n }\n }}\n onCloseClick={() => {\n setShowSearch(false);\n }}\n />\n </div>\n )}\n </div>\n </Sendbird>\n );\n}\n\nApp.propTypes = {\n appId: PropTypes.string.isRequired,\n userId: PropTypes.string.isRequired,\n accessToken: PropTypes.string,\n theme: PropTypes.string,\n userListQuery: PropTypes.func,\n nickname: PropTypes.string,\n profileUrl: PropTypes.string,\n allowProfileEdit: PropTypes.bool,\n disableUserProfile: PropTypes.bool,\n renderUserProfile: PropTypes.func,\n onProfileEditSuccess: PropTypes.func,\n dateLocale: PropTypes.shape({}),\n config: PropTypes.shape({\n // None Error Warning Info 'All/Debug'\n logLevel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n }),\n useReaction: PropTypes.bool,\n replyType: PropTypes.oneOf(['NONE', 'QUOTE_REPLY', 'THREAD']),\n showSearchIcon: PropTypes.bool,\n useMessageGrouping: PropTypes.bool,\n stringSet: PropTypes.objectOf(PropTypes.string),\n colorSet: PropTypes.objectOf(PropTypes.string),\n imageCompression: PropTypes.shape({\n compressionRate: PropTypes.number,\n resizingWidth: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n resizingHeight: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n disableAutoSelect: PropTypes.bool,\n isMentionEnabled: PropTypes.bool,\n};\n\nApp.defaultProps = {\n accessToken: '',\n theme: 'light',\n nickname: '',\n profileUrl: '',\n userListQuery: null,\n dateLocale: null,\n allowProfileEdit: false,\n onProfileEditSuccess: null,\n disableUserProfile: false,\n showSearchIcon: false,\n renderUserProfile: null,\n config: {},\n useReaction: true,\n isMentionEnabled: false,\n replyType: 'NONE',\n useMessageGrouping: true,\n stringSet: null,\n colorSet: null,\n imageCompression: {},\n disableAutoSelect: false,\n};\n"],"names":["App","props","appId","userId","accessToken","theme","userListQuery","nickname","profileUrl","dateLocale","config","useReaction","isMentionEnabled","replyType","useMessageGrouping","colorSet","stringSet","allowProfileEdit","disableUserProfile","renderUserProfile","showSearchIcon","onProfileEditSuccess","imageCompression","disableAutoSelect","useState","currentChannelUrl","setCurrentChannelUrl","showSettings","setShowSettings","showSearch","setShowSearch","highlightedMessage","setHighlightedMessage","startingPoint","setStartingPoint","React","Sendbird","channel","url","MessageSearchPannel","message","messageId","setTimeout","createdAt","propTypes","PropTypes","string","isRequired","func","bool","shape","logLevel","oneOfType","arrayOf","oneOf","objectOf","compressionRate","number","resizingWidth","resizingHeight","defaultProps"],"mappings":"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"}
@@ -1,28 +1,29 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var ui_Label = require('../../index-1468d245.js');
4
+ var ui_Label = require('../../index-21f31180.js');
5
5
  var ui_Icon = require('../../ui/Icon.js');
6
6
  var ui_IconButton = require('../../ui/IconButton.js');
7
7
  var ui_ChannelAvatar = require('../../ui/ChannelAvatar.js');
8
- var LocalizationContext = require('../../LocalizationContext-68e55e2a.js');
8
+ var LocalizationContext = require('../../LocalizationContext-3b5ce8ae.js');
9
9
  var useSendbirdStateContext = require('../../useSendbirdStateContext.js');
10
- var Channel_context = require('../../ChannelProvider-f1fb0108.js');
11
- require('../../_rollupPluginBabelHelpers-fc14118c.js');
10
+ var Channel_context = require('../../ChannelProvider-e0aaab26.js');
11
+ require('../../_rollupPluginBabelHelpers-e54d2387.js');
12
12
  require('prop-types');
13
- require('../../stringSet-aa544ce5.js');
13
+ require('../../stringSet-f4da182b.js');
14
14
  require('../../ui/Avatar.js');
15
- require('../../tslib.es6-4a281a05.js');
15
+ require('../../tslib.es6-d7d0a427.js');
16
16
  require('../../ui/ImageRenderer.js');
17
- require('../../uuid-1d5ec8b2.js');
18
- require('../../utils-66b3f4ec.js');
19
- require('../../index-e2bb862c.js');
17
+ require('../../uuid-ba6cc3c5.js');
18
+ require('../../utils-b95288a8.js');
19
+ require('../../index-d9439e95.js');
20
20
  require('../../withSendBird.js');
21
- require('../../UserProfileContext-3533547d.js');
22
- require('../../index-905331fa.js');
23
- require('../../topics-8314d425.js');
24
- require('../../index-d4880236.js');
25
- require('../../compareIds-01306377.js');
21
+ require('../../UserProfileContext-f0bdfbb8.js');
22
+ require('../../index-0159bc57.js');
23
+ require('../../topics-c2c30f09.js');
24
+ require('../../index-002a349d.js');
25
+ require('../../compareIds-176a582b.js');
26
+ require('../../const-ccf192c5.js');
26
27
  require('../../ui/ContextMenu.js');
27
28
  require('react-dom');
28
29
  require('../../ui/SortByRow.js');
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelHeader.js","sources":["../../../../src/smart-components/Channel/components/ChannelHeader/utils.ts","../../../../src/smart-components/Channel/components/ChannelHeader/index.tsx"],"sourcesContent":["import SendBird from 'sendbird';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (\n channel: SendBird.GroupChannel,\n currentUserId: string,\n stringSet: { [label: string]: string }\n ): string => {\n const LABEL_STRING_SET: { [label: string]: string } = stringSet || LabelStringSet;\n if (!channel || (!channel.name && !channel.members)) {\n return LABEL_STRING_SET.NO_TITLE;\n }\n if (channel.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n\n if (channel.members.length === 1) {\n return LABEL_STRING_SET.NO_MEMBERS;\n }\n\n return channel.members\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || LABEL_STRING_SET.NO_NAME))\n .join(', ');\n};\n","import './channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport * as utils from './utils';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport ChannelAvatar from '../../../../ui/ChannelAvatar/index';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\nconst ChatHeader: React.FC = () => {\n const globalStore = useSendbirdStateContext();\n const userId = globalStore?.config?.userId;\n const theme = globalStore?.config?.theme;\n\n const channelStore = useChannel();\n const {\n currentGroupChannel,\n showSearchIcon,\n onSearchClick,\n onChatHeaderActionClick,\n } = channelStore;\n const subTitle = (currentGroupChannel?.members\n && currentGroupChannel?.members?.length !== 2);\n const isMuted = currentGroupChannel?.myMutedState === \"muted\";\n\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-chat-header\">\n <div className=\"sendbird-chat-header__left\">\n <ChannelAvatar\n theme={theme}\n channel={currentGroupChannel}\n userId={userId}\n height={32}\n width={32}\n />\n <Label\n className=\"sendbird-chat-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(currentGroupChannel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-chat-header__left__subtitle\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle}\n </Label>\n </div>\n <div className=\"sendbird-chat-header__right\">\n {\n ((typeof isMuted === 'string' && isMuted === 'true') || (typeof isMuted === 'boolean' && isMuted))\n && (\n <Icon\n className=\"sendbird-chat-header__right__mute\"\n type={IconTypes.NOTIFICATIONS_OFF_FILLED}\n width=\"24px\"\n height=\"24px\"\n />\n )\n }\n {\n showSearchIcon && (\n <IconButton\n className=\"sendbird-chat-header__right__search\"\n width=\"32px\"\n height=\"32px\"\n onClick={onSearchClick}\n >\n <Icon\n type={IconTypes.SEARCH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n }\n <IconButton\n className=\"sendbird-chat-header__right__info\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={IconTypes.INFO}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n\nexport default ChatHeader;\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LABEL_STRING_SET","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","_a","userId","map","nickname","NO_NAME","join","ChatHeader","globalStore","useSendbirdStateContext","config","theme","channelStore","useChannel","currentGroupChannel","showSearchIcon","onSearchClick","onChatHeaderActionClick","subTitle","isMuted","myMutedState","useContext","LocalizationContext","React","ChannelAvatar","Label","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","utils","BODY_1","ONBACKGROUND_2","Icon","IconTypes","NOTIFICATIONS_OFF_FILLED","IconButton","SEARCH","IconColors","PRIMARY","INFO"],"mappings":"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"}
1
+ {"version":3,"file":"ChannelHeader.js","sources":["../../../../src/smart-components/Channel/components/ChannelHeader/utils.ts","../../../../src/smart-components/Channel/components/ChannelHeader/index.tsx"],"sourcesContent":["import SendBird from 'sendbird';\nimport { LabelStringSet } from '../../../../ui/Label';\n\nexport const getChannelTitle = (\n channel: SendBird.GroupChannel,\n currentUserId: string,\n stringSet: { [label: string]: string }\n ): string => {\n const LABEL_STRING_SET: { [label: string]: string } = stringSet || LabelStringSet;\n if (!channel || (!channel.name && !channel.members)) {\n return LABEL_STRING_SET.NO_TITLE;\n }\n if (channel.name && channel.name !== 'Group Channel') {\n return channel.name;\n }\n\n if (channel.members.length === 1) {\n return LABEL_STRING_SET.NO_MEMBERS;\n }\n\n return channel.members\n .filter(({ userId }) => userId !== currentUserId)\n .map(({ nickname }) => (nickname || LABEL_STRING_SET.NO_NAME))\n .join(', ');\n};\n","import './channel-header.scss';\nimport React, { useContext } from 'react';\n\nimport * as utils from './utils';\n\nimport Label, { LabelTypography, LabelColors } from '../../../../ui/Label';\nimport Icon, { IconTypes, IconColors } from '../../../../ui/Icon';\nimport IconButton from '../../../../ui/IconButton';\nimport ChannelAvatar from '../../../../ui/ChannelAvatar/index';\nimport { LocalizationContext } from '../../../../lib/LocalizationContext';\nimport useSendbirdStateContext from '../../../../hooks/useSendbirdStateContext';\nimport { useChannel } from '../../context/ChannelProvider';\n\nconst ChatHeader: React.FC = () => {\n const globalStore = useSendbirdStateContext();\n const userId = globalStore?.config?.userId;\n const theme = globalStore?.config?.theme;\n\n const channelStore = useChannel();\n const {\n currentGroupChannel,\n showSearchIcon,\n onSearchClick,\n onChatHeaderActionClick,\n } = channelStore;\n const subTitle = (currentGroupChannel?.members\n && currentGroupChannel?.members?.length !== 2);\n const isMuted = currentGroupChannel?.myMutedState === \"muted\";\n\n const { stringSet } = useContext(LocalizationContext);\n return (\n <div className=\"sendbird-chat-header\">\n <div className=\"sendbird-chat-header__left\">\n <ChannelAvatar\n theme={theme}\n channel={currentGroupChannel}\n userId={userId}\n height={32}\n width={32}\n />\n <Label\n className=\"sendbird-chat-header__left__title\"\n type={LabelTypography.H_2}\n color={LabelColors.ONBACKGROUND_1}\n >\n {utils.getChannelTitle(currentGroupChannel, userId, stringSet)}\n </Label>\n <Label\n className=\"sendbird-chat-header__left__subtitle\"\n type={LabelTypography.BODY_1}\n color={LabelColors.ONBACKGROUND_2}\n >\n {subTitle}\n </Label>\n </div>\n <div className=\"sendbird-chat-header__right\">\n {\n ((typeof isMuted === 'string' && isMuted === 'true') || (typeof isMuted === 'boolean' && isMuted))\n && (\n <Icon\n className=\"sendbird-chat-header__right__mute\"\n type={IconTypes.NOTIFICATIONS_OFF_FILLED}\n width=\"24px\"\n height=\"24px\"\n />\n )\n }\n {\n showSearchIcon && (\n <IconButton\n className=\"sendbird-chat-header__right__search\"\n width=\"32px\"\n height=\"32px\"\n onClick={onSearchClick}\n >\n <Icon\n type={IconTypes.SEARCH}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n )\n }\n <IconButton\n className=\"sendbird-chat-header__right__info\"\n width=\"32px\"\n height=\"32px\"\n onClick={onChatHeaderActionClick}\n >\n <Icon\n type={IconTypes.INFO}\n fillColor={IconColors.PRIMARY}\n width=\"24px\"\n height=\"24px\"\n />\n </IconButton>\n </div>\n </div>\n );\n}\n\nexport default ChatHeader;\n"],"names":["getChannelTitle","channel","currentUserId","stringSet","LABEL_STRING_SET","LabelStringSet","name","members","NO_TITLE","length","NO_MEMBERS","filter","_a","userId","map","nickname","NO_NAME","join","ChatHeader","globalStore","useSendbirdStateContext","config","theme","channelStore","useChannel","currentGroupChannel","showSearchIcon","onSearchClick","onChatHeaderActionClick","subTitle","isMuted","myMutedState","useContext","LocalizationContext","React","ChannelAvatar","Label","LabelTypography","H_2","LabelColors","ONBACKGROUND_1","utils","BODY_1","ONBACKGROUND_2","Icon","IconTypes","NOTIFICATIONS_OFF_FILLED","IconButton","SEARCH","IconColors","PRIMARY","INFO"],"mappings":"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"}