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

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 (394) hide show
  1. package/App.js +46 -38
  2. package/App.js.map +1 -1
  3. package/Channel/components/ChannelHeader.js +15 -15
  4. package/Channel/components/ChannelUI.js +25 -25
  5. package/Channel/components/ChannelUI.js.map +1 -1
  6. package/Channel/components/FileViewer.js +14 -14
  7. package/Channel/components/FrozenNotification.js +5 -5
  8. package/Channel/components/Message.js +31 -24
  9. package/Channel/components/Message.js.map +1 -1
  10. package/Channel/components/MessageInput.js +16 -16
  11. package/Channel/components/MessageList.js +24 -24
  12. package/Channel/components/MessageList.js.map +1 -1
  13. package/Channel/components/RemoveMessageModal.js +17 -17
  14. package/Channel/components/SuggestedMentionList.js +15 -15
  15. package/Channel/components/TypingIndicator.js +16 -16
  16. package/Channel/components/TypingIndicator.js.map +1 -1
  17. package/Channel/components/UnreadCount.js +5 -5
  18. package/Channel/context.js +13 -13
  19. package/Channel.js +24 -24
  20. package/Channel.js.map +1 -1
  21. package/ChannelList/components/AddChannel.js +14 -14
  22. package/ChannelList/components/ChannelListHeader.js +7 -7
  23. package/ChannelList/components/ChannelListUI.js +51 -29
  24. package/ChannelList/components/ChannelListUI.js.map +1 -1
  25. package/ChannelList/components/ChannelPreview.js +50 -20
  26. package/ChannelList/components/ChannelPreview.js.map +1 -1
  27. package/ChannelList/components/ChannelPreviewAction.js +14 -14
  28. package/ChannelList/context.js +8 -8
  29. package/ChannelList.js +33 -25
  30. package/ChannelList.js.map +1 -1
  31. package/{ChannelListProvider-7c351968.js → ChannelListProvider-d602a166.js} +92 -27
  32. package/ChannelListProvider-d602a166.js.map +1 -0
  33. package/{ChannelProvider-d5126903.js → ChannelProvider-cf8fc05a.js} +9 -9
  34. package/{ChannelProvider-d5126903.js.map → ChannelProvider-cf8fc05a.js.map} +1 -1
  35. package/ChannelSettings/components/AdminPanel.js +15 -15
  36. package/ChannelSettings/components/ChannelProfile.js +13 -13
  37. package/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  38. package/ChannelSettings/components/EditDetailsModal.js +13 -13
  39. package/ChannelSettings/components/LeaveChannel.js +10 -10
  40. package/ChannelSettings/components/UserListItem.js +11 -11
  41. package/ChannelSettings/components/UserPanel.js +14 -14
  42. package/ChannelSettings/context.js +3 -3
  43. package/ChannelSettings.js +18 -18
  44. package/CreateChannel/components/CreateChannelUI.js +14 -14
  45. package/CreateChannel/components/InviteMembers.js +14 -14
  46. package/CreateChannel/components/SelectChannelType.js +10 -10
  47. package/CreateChannel/context.js +3 -3
  48. package/CreateChannel.js +14 -14
  49. package/{CreateChannelProvider-ddfd92e6.js → CreateChannelProvider-3f3dafed.js} +1 -1
  50. package/{CreateChannelProvider-ddfd92e6.js.map → CreateChannelProvider-3f3dafed.js.map} +1 -1
  51. package/EditUserProfile/components/EditUserProfileUI.js +13 -13
  52. package/EditUserProfile.js +13 -13
  53. package/{LocalizationContext-b021af8f.js → LocalizationContext-b970a73c.js} +3 -3
  54. package/{LocalizationContext-b021af8f.js.map → LocalizationContext-b970a73c.js.map} +1 -1
  55. package/{MemberList-323e7517.js → MemberList-9d29bee4.js} +5 -5
  56. package/{MemberList-323e7517.js.map → MemberList-9d29bee4.js.map} +1 -1
  57. package/MessageSearch/components/MessageSearchUI.js +11 -11
  58. package/MessageSearch/context.js +2 -2
  59. package/MessageSearch.js +11 -11
  60. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  61. package/OpenChannel/components/OpenChannelHeader.js +12 -12
  62. package/OpenChannel/components/OpenChannelInput.js +16 -16
  63. package/OpenChannel/components/OpenChannelMessage.js +21 -21
  64. package/OpenChannel/components/OpenChannelMessageList.js +23 -23
  65. package/OpenChannel/components/OpenChannelUI.js +23 -23
  66. package/OpenChannel/context.js +9 -9
  67. package/OpenChannel.js +23 -23
  68. package/{OpenChannelProvider-abc4ab98.js → OpenChannelProvider-821fb008.js} +7 -7
  69. package/{OpenChannelProvider-abc4ab98.js.map → OpenChannelProvider-821fb008.js.map} +1 -1
  70. package/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  71. package/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  72. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  73. package/OpenChannelSettings/components/OperatorUI.js +16 -16
  74. package/OpenChannelSettings/components/ParticipantUI.js +14 -14
  75. package/OpenChannelSettings/context.js +2 -2
  76. package/OpenChannelSettings.js +17 -17
  77. package/SendbirdProvider.js +21 -13
  78. package/SendbirdProvider.js.map +1 -1
  79. package/{UserProfileContext-daa99f9b.js → UserProfileContext-f4ff4291.js} +1 -1
  80. package/{UserProfileContext-daa99f9b.js.map → UserProfileContext-f4ff4291.js.map} +1 -1
  81. package/{_rollupPluginBabelHelpers-8e4fae98.js → _rollupPluginBabelHelpers-6bf18550.js} +1 -1
  82. package/{_rollupPluginBabelHelpers-8e4fae98.js.map → _rollupPluginBabelHelpers-6bf18550.js.map} +1 -1
  83. package/{actionTypes-189daf51.js → actionTypes-8e320ded.js} +1 -1
  84. package/{actionTypes-189daf51.js.map → actionTypes-8e320ded.js.map} +1 -1
  85. package/cjs/App.js +46 -38
  86. package/cjs/App.js.map +1 -1
  87. package/cjs/Channel/components/ChannelHeader.js +15 -15
  88. package/cjs/Channel/components/ChannelUI.js +26 -26
  89. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  90. package/cjs/Channel/components/FileViewer.js +14 -14
  91. package/cjs/Channel/components/FrozenNotification.js +5 -5
  92. package/cjs/Channel/components/Message.js +31 -24
  93. package/cjs/Channel/components/Message.js.map +1 -1
  94. package/cjs/Channel/components/MessageInput.js +16 -16
  95. package/cjs/Channel/components/MessageList.js +24 -24
  96. package/cjs/Channel/components/MessageList.js.map +1 -1
  97. package/cjs/Channel/components/RemoveMessageModal.js +17 -17
  98. package/cjs/Channel/components/SuggestedMentionList.js +15 -15
  99. package/cjs/Channel/components/TypingIndicator.js +18 -15
  100. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  101. package/cjs/Channel/components/UnreadCount.js +5 -5
  102. package/cjs/Channel/context.js +13 -13
  103. package/cjs/Channel.js +24 -24
  104. package/cjs/Channel.js.map +1 -1
  105. package/cjs/ChannelList/components/AddChannel.js +14 -14
  106. package/cjs/ChannelList/components/ChannelListHeader.js +7 -7
  107. package/cjs/ChannelList/components/ChannelListUI.js +51 -29
  108. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  109. package/cjs/ChannelList/components/ChannelPreview.js +50 -20
  110. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  111. package/cjs/ChannelList/components/ChannelPreviewAction.js +14 -14
  112. package/cjs/ChannelList/context.js +8 -8
  113. package/cjs/ChannelList.js +33 -25
  114. package/cjs/ChannelList.js.map +1 -1
  115. package/cjs/{ChannelListProvider-44dde549.js → ChannelListProvider-64db9f70.js} +92 -27
  116. package/cjs/ChannelListProvider-64db9f70.js.map +1 -0
  117. package/cjs/{ChannelProvider-e0aaab26.js → ChannelProvider-5e8e33b1.js} +9 -9
  118. package/cjs/{ChannelProvider-e0aaab26.js.map → ChannelProvider-5e8e33b1.js.map} +1 -1
  119. package/cjs/ChannelSettings/components/AdminPanel.js +15 -15
  120. package/cjs/ChannelSettings/components/ChannelProfile.js +13 -13
  121. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +18 -18
  122. package/cjs/ChannelSettings/components/EditDetailsModal.js +13 -13
  123. package/cjs/ChannelSettings/components/LeaveChannel.js +10 -10
  124. package/cjs/ChannelSettings/components/UserListItem.js +11 -11
  125. package/cjs/ChannelSettings/components/UserPanel.js +14 -14
  126. package/cjs/ChannelSettings/context.js +3 -3
  127. package/cjs/ChannelSettings.js +18 -18
  128. package/cjs/CreateChannel/components/CreateChannelUI.js +14 -14
  129. package/cjs/CreateChannel/components/InviteMembers.js +14 -14
  130. package/cjs/CreateChannel/components/SelectChannelType.js +10 -10
  131. package/cjs/CreateChannel/context.js +3 -3
  132. package/cjs/CreateChannel.js +14 -14
  133. package/cjs/{CreateChannelProvider-bdf9c39b.js → CreateChannelProvider-dcf7f906.js} +1 -1
  134. package/cjs/{CreateChannelProvider-bdf9c39b.js.map → CreateChannelProvider-dcf7f906.js.map} +1 -1
  135. package/cjs/EditUserProfile/components/EditUserProfileUI.js +13 -13
  136. package/cjs/EditUserProfile.js +13 -13
  137. package/cjs/{LocalizationContext-3b5ce8ae.js → LocalizationContext-382a9ef1.js} +3 -3
  138. package/cjs/{LocalizationContext-3b5ce8ae.js.map → LocalizationContext-382a9ef1.js.map} +1 -1
  139. package/cjs/{MemberList-ef9e43c3.js → MemberList-03a241cd.js} +5 -5
  140. package/cjs/{MemberList-ef9e43c3.js.map → MemberList-03a241cd.js.map} +1 -1
  141. package/cjs/MessageSearch/components/MessageSearchUI.js +11 -11
  142. package/cjs/MessageSearch/context.js +2 -2
  143. package/cjs/MessageSearch.js +11 -11
  144. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  145. package/cjs/OpenChannel/components/OpenChannelHeader.js +12 -12
  146. package/cjs/OpenChannel/components/OpenChannelInput.js +16 -16
  147. package/cjs/OpenChannel/components/OpenChannelMessage.js +21 -21
  148. package/cjs/OpenChannel/components/OpenChannelMessageList.js +23 -23
  149. package/cjs/OpenChannel/components/OpenChannelUI.js +23 -23
  150. package/cjs/OpenChannel/context.js +9 -9
  151. package/cjs/OpenChannel.js +23 -23
  152. package/cjs/{OpenChannelProvider-9ce7c998.js → OpenChannelProvider-9000ccb9.js} +7 -7
  153. package/cjs/{OpenChannelProvider-9ce7c998.js.map → OpenChannelProvider-9000ccb9.js.map} +1 -1
  154. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +13 -13
  155. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +13 -13
  156. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +17 -17
  157. package/cjs/OpenChannelSettings/components/OperatorUI.js +16 -16
  158. package/cjs/OpenChannelSettings/components/ParticipantUI.js +14 -14
  159. package/cjs/OpenChannelSettings/context.js +2 -2
  160. package/cjs/OpenChannelSettings.js +17 -17
  161. package/cjs/SendbirdProvider.js +21 -13
  162. package/cjs/SendbirdProvider.js.map +1 -1
  163. package/cjs/{UserProfileContext-f0bdfbb8.js → UserProfileContext-0b7ef11a.js} +1 -1
  164. package/cjs/{UserProfileContext-f0bdfbb8.js.map → UserProfileContext-0b7ef11a.js.map} +1 -1
  165. package/cjs/{_rollupPluginBabelHelpers-e54d2387.js → _rollupPluginBabelHelpers-6193d45d.js} +1 -1
  166. package/cjs/{_rollupPluginBabelHelpers-e54d2387.js.map → _rollupPluginBabelHelpers-6193d45d.js.map} +1 -1
  167. package/cjs/{actionTypes-267d4c79.js → actionTypes-092bc172.js} +1 -1
  168. package/cjs/{actionTypes-267d4c79.js.map → actionTypes-092bc172.js.map} +1 -1
  169. package/cjs/{color-0f078673.js → color-1816dacf.js} +1 -1
  170. package/cjs/{color-0f078673.js.map → color-1816dacf.js.map} +1 -1
  171. package/cjs/{compareIds-176a582b.js → compareIds-e9bca8c4.js} +1 -1
  172. package/cjs/{compareIds-176a582b.js.map → compareIds-e9bca8c4.js.map} +1 -1
  173. package/cjs/{const-4bf0e8b4.js → const-c65837c1.js} +1 -1
  174. package/cjs/{const-4bf0e8b4.js.map → const-c65837c1.js.map} +1 -1
  175. package/cjs/{const-ccf192c5.js → const-d9f4d880.js} +1 -1
  176. package/cjs/{const-ccf192c5.js.map → const-d9f4d880.js.map} +1 -1
  177. package/cjs/{context-0cbe196d.js → context-6ebf3379.js} +2 -2
  178. package/cjs/{context-0cbe196d.js.map → context-6ebf3379.js.map} +1 -1
  179. package/cjs/{index-22f07209.js → index-01072ac9.js} +3 -3
  180. package/cjs/{index-22f07209.js.map → index-01072ac9.js.map} +1 -1
  181. package/cjs/{index-d9439e95.js → index-20a06ed6.js} +1 -1
  182. package/cjs/{index-d9439e95.js.map → index-20a06ed6.js.map} +1 -1
  183. package/cjs/{index-002a349d.js → index-212a11f2.js} +2 -2
  184. package/cjs/{index-002a349d.js.map → index-212a11f2.js.map} +1 -1
  185. package/cjs/{index-ed053e45.js → index-2faa2f93.js} +1 -1
  186. package/cjs/{index-ed053e45.js.map → index-2faa2f93.js.map} +1 -1
  187. package/cjs/{index-c0693be4.js → index-4f40f311.js} +2 -2
  188. package/cjs/{index-c0693be4.js.map → index-4f40f311.js.map} +1 -1
  189. package/cjs/{index-723733db.js → index-75453415.js} +4 -4
  190. package/cjs/{index-723733db.js.map → index-75453415.js.map} +1 -1
  191. package/cjs/{index-46522cf0.js → index-948426a8.js} +4 -4
  192. package/cjs/{index-46522cf0.js.map → index-948426a8.js.map} +1 -1
  193. package/cjs/{index-0159bc57.js → index-a2ce047a.js} +2 -2
  194. package/cjs/{index-0159bc57.js.map → index-a2ce047a.js.map} +1 -1
  195. package/cjs/{index-081c9614.js → index-d57081d1.js} +6 -6
  196. package/cjs/{index-081c9614.js.map → index-d57081d1.js.map} +1 -1
  197. package/cjs/{index-d4f42e73.js → index-e63da805.js} +4 -4
  198. package/cjs/{index-d4f42e73.js.map → index-e63da805.js.map} +1 -1
  199. package/cjs/{index-21f31180.js → index-f1971e28.js} +3 -3
  200. package/cjs/{index-21f31180.js.map → index-f1971e28.js.map} +1 -1
  201. package/cjs/index.css +78 -74
  202. package/cjs/index.css.map +1 -1
  203. package/cjs/index.js +36 -36
  204. package/cjs/{openChannelUtils-cecaf987.js → openChannelUtils-16f29ba2.js} +1 -1
  205. package/cjs/{openChannelUtils-cecaf987.js.map → openChannelUtils-16f29ba2.js.map} +1 -1
  206. package/cjs/sendBirdSelectors.js +1 -1
  207. package/cjs/{stringSet-f4da182b.js → stringSet-b9ea6eef.js} +1 -1
  208. package/cjs/{stringSet-f4da182b.js.map → stringSet-b9ea6eef.js.map} +1 -1
  209. package/cjs/{topics-c2c30f09.js → topics-11048db8.js} +1 -1
  210. package/cjs/{topics-c2c30f09.js.map → topics-11048db8.js.map} +1 -1
  211. package/cjs/{tslib.es6-d7d0a427.js → tslib.es6-07dd6257.js} +1 -1
  212. package/cjs/{tslib.es6-d7d0a427.js.map → tslib.es6-07dd6257.js.map} +1 -1
  213. package/cjs/ui/Accordion.js +4 -4
  214. package/cjs/ui/AccordionGroup.js +2 -2
  215. package/cjs/ui/AdminMessage.js +3 -3
  216. package/cjs/ui/Avatar.js +3 -3
  217. package/cjs/ui/Badge.js +5 -5
  218. package/cjs/ui/Button.js +4 -4
  219. package/cjs/ui/ChannelAvatar.js +4 -4
  220. package/cjs/ui/ChannelPreview.js +12 -12
  221. package/cjs/ui/ChatHeader.js +8 -8
  222. package/cjs/ui/Checkbox.js +1 -1
  223. package/cjs/ui/ConnectionStatus.js +5 -5
  224. package/cjs/ui/ContextMenu.js +5 -5
  225. package/cjs/ui/DateSeparator.js +4 -4
  226. package/cjs/ui/Dropdown.js +3 -3
  227. package/cjs/ui/EmojiReactions.js +7 -7
  228. package/cjs/ui/FileMessageItemBody.js +6 -6
  229. package/cjs/ui/FileViewer.js +7 -7
  230. package/cjs/ui/Icon.js +1 -1
  231. package/cjs/ui/IconButton.js +1 -1
  232. package/cjs/ui/ImageRenderer.js +1 -1
  233. package/cjs/ui/Input.js +3 -3
  234. package/cjs/ui/Label.js +3 -3
  235. package/cjs/ui/LinkLabel.js +3 -3
  236. package/cjs/ui/Loader.js +1 -1
  237. package/cjs/ui/MessageContent.js +14 -14
  238. package/cjs/ui/MessageInput.js +10 -10
  239. package/cjs/ui/MessageItemMenu.js +7 -7
  240. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  241. package/cjs/ui/MessageSearchFileItem.js +10 -10
  242. package/cjs/ui/MessageSearchItem.js +10 -10
  243. package/cjs/ui/MessageStatus.js +8 -8
  244. package/cjs/ui/Modal.js +8 -8
  245. package/cjs/ui/MutedAvatarOverlay.js +1 -1
  246. package/cjs/ui/OGMessageItemBody.js +9 -9
  247. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  248. package/cjs/ui/OpenChannelAvatar.js +7 -7
  249. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  250. package/cjs/ui/OpenchannelFileMessage.js +14 -14
  251. package/cjs/ui/OpenchannelOGMessage.js +14 -14
  252. package/cjs/ui/OpenchannelThumbnailMessage.js +13 -13
  253. package/cjs/ui/OpenchannelUserMessage.js +14 -14
  254. package/cjs/ui/PlaceHolder.js +6 -6
  255. package/cjs/ui/QuoteMessage.js +7 -7
  256. package/cjs/ui/QuoteMessageInput.js +7 -7
  257. package/cjs/ui/ReactionBadge.js +3 -3
  258. package/cjs/ui/ReactionButton.js +1 -1
  259. package/cjs/ui/SortByRow.js +1 -1
  260. package/cjs/ui/TextButton.js +2 -2
  261. package/cjs/ui/TextMessageItemBody.js +9 -9
  262. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  263. package/cjs/ui/Tooltip.js +3 -3
  264. package/cjs/ui/TooltipWrapper.js +1 -1
  265. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  266. package/cjs/ui/UserListItem.js +11 -11
  267. package/cjs/ui/UserProfile.js +9 -9
  268. package/cjs/useSendbirdStateContext.js +1 -1
  269. package/cjs/{utils-3e73a146.js → utils-3240365f.js} +1 -1
  270. package/cjs/{utils-3e73a146.js.map → utils-3240365f.js.map} +1 -1
  271. package/cjs/{utils-b95288a8.js → utils-53d332a6.js} +1 -1
  272. package/cjs/{utils-b95288a8.js.map → utils-53d332a6.js.map} +1 -1
  273. package/cjs/{utils-c55d20dc.js → utils-94ae6cec.js} +1 -1
  274. package/cjs/{utils-c55d20dc.js.map → utils-94ae6cec.js.map} +1 -1
  275. package/cjs/{uuid-ba6cc3c5.js → uuid-172844fb.js} +1 -1
  276. package/cjs/{uuid-ba6cc3c5.js.map → uuid-172844fb.js.map} +1 -1
  277. package/cjs/withSendBird.js +1 -1
  278. package/{color-2863fbbe.js → color-38dc84d3.js} +1 -1
  279. package/{color-2863fbbe.js.map → color-38dc84d3.js.map} +1 -1
  280. package/{compareIds-48d87cc5.js → compareIds-f01e0c3c.js} +1 -1
  281. package/{compareIds-48d87cc5.js.map → compareIds-f01e0c3c.js.map} +1 -1
  282. package/{const-3f63e129.js → const-b6685801.js} +1 -1
  283. package/{const-3f63e129.js.map → const-b6685801.js.map} +1 -1
  284. package/{const-09c22c50.js → const-d46f09a1.js} +1 -1
  285. package/{const-09c22c50.js.map → const-d46f09a1.js.map} +1 -1
  286. package/{context-7877e5bb.js → context-b5168bd0.js} +2 -2
  287. package/{context-7877e5bb.js.map → context-b5168bd0.js.map} +1 -1
  288. package/dist/index.css +78 -74
  289. package/dist/index.css.map +1 -1
  290. package/{index-4a59a866.js → index-1c2588aa.js} +2 -2
  291. package/{index-4a59a866.js.map → index-1c2588aa.js.map} +1 -1
  292. package/{index-41a6f4f2.js → index-2dce3a04.js} +3 -3
  293. package/{index-41a6f4f2.js.map → index-2dce3a04.js.map} +1 -1
  294. package/{index-358226c7.js → index-3bd4a058.js} +6 -6
  295. package/{index-358226c7.js.map → index-3bd4a058.js.map} +1 -1
  296. package/{index-4889e530.js → index-62fd2db7.js} +4 -4
  297. package/{index-4889e530.js.map → index-62fd2db7.js.map} +1 -1
  298. package/{index-353f13f3.js → index-6381b534.js} +1 -1
  299. package/{index-353f13f3.js.map → index-6381b534.js.map} +1 -1
  300. package/{index-f119413c.js → index-9afb4d01.js} +2 -2
  301. package/{index-f119413c.js.map → index-9afb4d01.js.map} +1 -1
  302. package/{index-86b0a341.js → index-a6675155.js} +4 -4
  303. package/{index-86b0a341.js.map → index-a6675155.js.map} +1 -1
  304. package/{index-303a3b6e.js → index-b12b270e.js} +4 -4
  305. package/{index-303a3b6e.js.map → index-b12b270e.js.map} +1 -1
  306. package/{index-a611bd38.js → index-d0b30cd5.js} +3 -3
  307. package/{index-a611bd38.js.map → index-d0b30cd5.js.map} +1 -1
  308. package/{index-1fd114b0.js → index-d0fe8fe1.js} +1 -1
  309. package/{index-1fd114b0.js.map → index-d0fe8fe1.js.map} +1 -1
  310. package/{index-ad4c9e58.js → index-e6d0889d.js} +3 -3
  311. package/{index-ad4c9e58.js.map → index-e6d0889d.js.map} +1 -1
  312. package/index.d.ts +1 -1
  313. package/index.js +36 -36
  314. package/{openChannelUtils-024b797a.js → openChannelUtils-22ed0258.js} +1 -1
  315. package/{openChannelUtils-024b797a.js.map → openChannelUtils-22ed0258.js.map} +1 -1
  316. package/package.json +2 -2
  317. package/sendBirdSelectors.js +1 -1
  318. package/{stringSet-91746bf1.js → stringSet-2e6c1d2c.js} +1 -1
  319. package/{stringSet-91746bf1.js.map → stringSet-2e6c1d2c.js.map} +1 -1
  320. package/{topics-17d99dd6.js → topics-67738aac.js} +1 -1
  321. package/{topics-17d99dd6.js.map → topics-67738aac.js.map} +1 -1
  322. package/{tslib.es6-83aa13f5.js → tslib.es6-b6e567bd.js} +1 -1
  323. package/{tslib.es6-83aa13f5.js.map → tslib.es6-b6e567bd.js.map} +1 -1
  324. package/ui/Accordion.js +4 -4
  325. package/ui/AccordionGroup.js +2 -2
  326. package/ui/AdminMessage.js +3 -3
  327. package/ui/Avatar.js +3 -3
  328. package/ui/Badge.js +5 -5
  329. package/ui/Button.js +4 -4
  330. package/ui/ChannelAvatar.js +4 -4
  331. package/ui/ChannelPreview.js +12 -12
  332. package/ui/ChatHeader.js +8 -8
  333. package/ui/Checkbox.js +1 -1
  334. package/ui/ConnectionStatus.js +5 -5
  335. package/ui/ContextMenu.js +5 -5
  336. package/ui/DateSeparator.js +4 -4
  337. package/ui/Dropdown.js +3 -3
  338. package/ui/EmojiReactions.js +7 -7
  339. package/ui/FileMessageItemBody.js +6 -6
  340. package/ui/FileViewer.js +7 -7
  341. package/ui/Icon.js +1 -1
  342. package/ui/IconButton.js +1 -1
  343. package/ui/ImageRenderer.js +1 -1
  344. package/ui/Input.js +3 -3
  345. package/ui/Label.js +3 -3
  346. package/ui/LinkLabel.js +3 -3
  347. package/ui/Loader.js +1 -1
  348. package/ui/MessageContent.js +14 -14
  349. package/ui/MessageInput.js +10 -10
  350. package/ui/MessageItemMenu.js +7 -7
  351. package/ui/MessageItemReactionMenu.js +5 -5
  352. package/ui/MessageSearchFileItem.js +10 -10
  353. package/ui/MessageSearchItem.js +10 -10
  354. package/ui/MessageStatus.js +8 -8
  355. package/ui/Modal.js +8 -8
  356. package/ui/MutedAvatarOverlay.js +1 -1
  357. package/ui/OGMessageItemBody.js +9 -9
  358. package/ui/OpenChannelAdminMessage.js +4 -4
  359. package/ui/OpenChannelAvatar.js +7 -7
  360. package/ui/OpenchannelConversationHeader.js +7 -7
  361. package/ui/OpenchannelFileMessage.js +14 -14
  362. package/ui/OpenchannelOGMessage.js +14 -14
  363. package/ui/OpenchannelThumbnailMessage.js +13 -13
  364. package/ui/OpenchannelUserMessage.js +14 -14
  365. package/ui/PlaceHolder.js +6 -6
  366. package/ui/QuoteMessage.js +7 -7
  367. package/ui/QuoteMessageInput.js +7 -7
  368. package/ui/ReactionBadge.js +3 -3
  369. package/ui/ReactionButton.js +1 -1
  370. package/ui/SortByRow.js +1 -1
  371. package/ui/TextButton.js +2 -2
  372. package/ui/TextMessageItemBody.js +9 -9
  373. package/ui/ThumbnailMessageItemBody.js +3 -3
  374. package/ui/Tooltip.js +3 -3
  375. package/ui/TooltipWrapper.js +1 -1
  376. package/ui/UnknownMessageItemBody.js +7 -7
  377. package/ui/UserListItem.js +11 -11
  378. package/ui/UserProfile.js +9 -9
  379. package/useSendbirdStateContext.js +1 -1
  380. package/{utils-7d39b941.js → utils-04c291d8.js} +1 -1
  381. package/{utils-7d39b941.js.map → utils-04c291d8.js.map} +1 -1
  382. package/{utils-5395ff17.js → utils-28de36e9.js} +1 -1
  383. package/{utils-5395ff17.js.map → utils-28de36e9.js.map} +1 -1
  384. package/{utils-9ef11656.js → utils-f5c9ef64.js} +1 -1
  385. package/{utils-9ef11656.js.map → utils-f5c9ef64.js.map} +1 -1
  386. package/{uuid-6d14d007.js → uuid-0139dc21.js} +1 -1
  387. package/{uuid-6d14d007.js.map → uuid-0139dc21.js.map} +1 -1
  388. package/withSendBird.js +1 -1
  389. package/CHANGELOG.md +0 -50
  390. package/ChannelListProvider-7c351968.js.map +0 -1
  391. package/README.md +0 -111
  392. package/cjs/ChannelListProvider-44dde549.js.map +0 -1
  393. package/index.css +0 -4461
  394. package/index.css.map +0 -1
@@ -1,10 +1,10 @@
1
1
  import React__default, { useState } from 'react';
2
2
  import Icon, { IconTypes, IconColors } from './Icon.js';
3
3
  import ImageRenderer from './ImageRenderer.js';
4
- import { d as getClassName, B as isSentMessage, o as isVideoMessage, n as isGifMessage } from '../index-ad4c9e58.js';
5
- import '../_rollupPluginBabelHelpers-8e4fae98.js';
4
+ import { h as getClassName, B as isSentMessage, q as isVideoMessage, p as isGifMessage } from '../index-e6d0889d.js';
5
+ import '../_rollupPluginBabelHelpers-6bf18550.js';
6
6
  import 'prop-types';
7
- import '../tslib.es6-83aa13f5.js';
7
+ import '../tslib.es6-b6e567bd.js';
8
8
 
9
9
  function ThumbnailMessageItemBody(_a) {
10
10
  var _b, _c;
package/ui/Tooltip.js CHANGED
@@ -1,8 +1,8 @@
1
- import { b as _toConsumableArray } from '../_rollupPluginBabelHelpers-8e4fae98.js';
1
+ import { b as _toConsumableArray } from '../_rollupPluginBabelHelpers-6bf18550.js';
2
2
  import React__default from 'react';
3
3
  import PropTypes from 'prop-types';
4
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a611bd38.js';
5
- import '../stringSet-91746bf1.js';
4
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-d0b30cd5.js';
5
+ import '../stringSet-2e6c1d2c.js';
6
6
 
7
7
  function Tooltip(_ref) {
8
8
  var className = _ref.className,
@@ -1,4 +1,4 @@
1
- import { a as _slicedToArray, b as _toConsumableArray } from '../_rollupPluginBabelHelpers-8e4fae98.js';
1
+ import { a as _slicedToArray, b as _toConsumableArray } from '../_rollupPluginBabelHelpers-6bf18550.js';
2
2
  import React__default, { useState, useRef } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
 
@@ -1,12 +1,12 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a611bd38.js';
3
- import { d as getClassName } from '../index-ad4c9e58.js';
4
- import { a as LocalizationContext } from '../LocalizationContext-b021af8f.js';
5
- import '../_rollupPluginBabelHelpers-8e4fae98.js';
2
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-d0b30cd5.js';
3
+ import { h as getClassName } from '../index-e6d0889d.js';
4
+ import { a as LocalizationContext } from '../LocalizationContext-b970a73c.js';
5
+ import '../_rollupPluginBabelHelpers-6bf18550.js';
6
6
  import 'prop-types';
7
- import '../stringSet-91746bf1.js';
8
- import '../tslib.es6-83aa13f5.js';
9
- import '../index-353f13f3.js';
7
+ import '../stringSet-2e6c1d2c.js';
8
+ import '../tslib.es6-b6e567bd.js';
9
+ import '../index-6381b534.js';
10
10
 
11
11
  function UnknownMessageItemBody(_a) {
12
12
  var _b;
@@ -1,25 +1,25 @@
1
- import { b as _toConsumableArray } from '../_rollupPluginBabelHelpers-8e4fae98.js';
1
+ import { b as _toConsumableArray } from '../_rollupPluginBabelHelpers-6bf18550.js';
2
2
  import React__default, { useContext } from 'react';
3
3
  import PropTypes from 'prop-types';
4
- import { a as UserProfileContext } from '../UserProfileContext-daa99f9b.js';
5
- import { a as LocalizationContext } from '../LocalizationContext-b021af8f.js';
4
+ import { a as UserProfileContext } from '../UserProfileContext-f4ff4291.js';
5
+ import { a as LocalizationContext } from '../LocalizationContext-b970a73c.js';
6
6
  import Avatar from './Avatar.js';
7
7
  import MutedAvatarOverlay from './MutedAvatarOverlay.js';
8
8
  import Checkbox from './Checkbox.js';
9
9
  import ConnectedUserProfile from './UserProfile.js';
10
10
  import ContextMenu, { MenuItems } from './ContextMenu.js';
11
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a611bd38.js';
12
- import '../stringSet-91746bf1.js';
13
- import '../index-353f13f3.js';
14
- import '../tslib.es6-83aa13f5.js';
11
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-d0b30cd5.js';
12
+ import '../stringSet-2e6c1d2c.js';
13
+ import '../index-6381b534.js';
14
+ import '../tslib.es6-b6e567bd.js';
15
15
  import './ImageRenderer.js';
16
16
  import './Icon.js';
17
- import '../uuid-6d14d007.js';
17
+ import '../uuid-0139dc21.js';
18
18
  import '../withSendBird.js';
19
19
  import '../sendBirdSelectors.js';
20
- import '../topics-17d99dd6.js';
21
- import '../index-41a6f4f2.js';
22
- import '../index-ad4c9e58.js';
20
+ import '../topics-67738aac.js';
21
+ import '../index-2dce3a04.js';
22
+ import '../index-e6d0889d.js';
23
23
  import 'react-dom';
24
24
  import './SortByRow.js';
25
25
 
package/ui/UserProfile.js CHANGED
@@ -1,19 +1,19 @@
1
1
  import React__default, { useContext } from 'react';
2
- import { a as LocalizationContext } from '../LocalizationContext-b021af8f.js';
2
+ import { a as LocalizationContext } from '../LocalizationContext-b970a73c.js';
3
3
  import withSendbirdContext from '../withSendBird.js';
4
4
  import { getSdk, getCreateChannel } from '../sendBirdSelectors.js';
5
5
  import Avatar from './Avatar.js';
6
- import { L as Label, a as LabelTypography, b as LabelColors } from '../index-a611bd38.js';
7
- import { B as Button, a as ButtonTypes } from '../index-41a6f4f2.js';
8
- import '../stringSet-91746bf1.js';
9
- import '../index-353f13f3.js';
10
- import '../_rollupPluginBabelHelpers-8e4fae98.js';
11
- import '../topics-17d99dd6.js';
12
- import '../tslib.es6-83aa13f5.js';
6
+ import { L as Label, a as LabelTypography, b as LabelColors } from '../index-d0b30cd5.js';
7
+ import { B as Button, a as ButtonTypes } from '../index-2dce3a04.js';
8
+ import '../stringSet-2e6c1d2c.js';
9
+ import '../index-6381b534.js';
10
+ import '../_rollupPluginBabelHelpers-6bf18550.js';
11
+ import '../topics-67738aac.js';
12
+ import '../tslib.es6-b6e567bd.js';
13
13
  import './ImageRenderer.js';
14
14
  import 'prop-types';
15
15
  import './Icon.js';
16
- import '../uuid-6d14d007.js';
16
+ import '../uuid-0139dc21.js';
17
17
 
18
18
  function UserProfile(_a) {
19
19
  var user = _a.user,
@@ -1,6 +1,6 @@
1
1
  import { useContext } from 'react';
2
2
  import { SendbirdSdkContext } from './withSendBird.js';
3
- import './_rollupPluginBabelHelpers-8e4fae98.js';
3
+ import './_rollupPluginBabelHelpers-6bf18550.js';
4
4
 
5
5
  /**
6
6
  * Example:
@@ -31,4 +31,4 @@ var generateDefaultAvatar = function generateDefaultAvatar(channel) {
31
31
  };
32
32
 
33
33
  export { getChannelAvatarSource as a, getOpenChannelAvatar as b, generateDefaultAvatar as g };
34
- //# sourceMappingURL=utils-7d39b941.js.map
34
+ //# sourceMappingURL=utils-04c291d8.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils-7d39b941.js","sources":["../src/ui/ChannelAvatar/utils.ts"],"sourcesContent":["export const DEFAULT_URL_PREFIX = 'https://static.sendbird.com/sample/cover/cover_';\n\nexport const getOpenChannelAvatar = (channel: SendBird.OpenChannel): string => {\n if (channel && channel.coverUrl) {\n return channel.coverUrl;\n }\n};\n\nexport const getChannelAvatarSource = (channel: SendBird.GroupChannel, currentUserId: string): string | Array<string> => {\n if (channel && channel.coverUrl) {\n if (!(new RegExp(`^${DEFAULT_URL_PREFIX}`).test(channel.coverUrl))) {\n return channel.coverUrl;\n }\n }\n\n return channel && channel.members\n ? channel.members\n .filter((member) => member.userId !== currentUserId)\n .map(({ profileUrl }) => profileUrl)\n : [];\n};\n\n\nexport const generateDefaultAvatar = (channel: SendBird.GroupChannel): boolean => {\n if (channel && channel.coverUrl) {\n if (new RegExp(`^${DEFAULT_URL_PREFIX}`).test(channel.coverUrl)) {\n return true;\n }\n return false;\n }\n return true;\n}\n"],"names":["DEFAULT_URL_PREFIX","getOpenChannelAvatar","channel","coverUrl","getChannelAvatarSource","currentUserId","RegExp","test","members","filter","member","userId","map","_a","profileUrl","generateDefaultAvatar"],"mappings":"AAAO,IAAMA,kBAAkB,GAAG,iDAA3B;IAEMC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,OAAD;AAClC,MAAIA,OAAO,IAAIA,OAAO,CAACC,QAAvB,EAAiC;AAC/B,WAAOD,OAAO,CAACC,QAAf;AACD;AACF;IAEYC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACF,OAAD,EAAiCG,aAAjC;AACpC,MAAIH,OAAO,IAAIA,OAAO,CAACC,QAAvB,EAAiC;AAC/B,QAAI,CAAE,IAAIG,MAAJ,CAAW,MAAIN,kBAAf,EAAqCO,IAArC,CAA0CL,OAAO,CAACC,QAAlD,CAAN,EAAoE;AAClE,aAAOD,OAAO,CAACC,QAAf;AACD;AACF;;AAED,SAAOD,OAAO,IAAIA,OAAO,CAACM,OAAnB,GACHN,OAAO,CAACM,OAAR,CACCC,MADD,CACQ,UAACC,MAAD;AAAY,WAAAA,MAAM,CAACC,MAAP,KAAkBN,aAAlB;AAA+B,GADnD,EAECO,GAFD,CAEK,UAACC,EAAD;QAAGC,UAAU;AAAO,WAAAA,UAAA;AAAU,GAFnC,CADG,GAIH,EAJJ;AAKD;IAGYC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACb,OAAD;AACnC,MAAIA,OAAO,IAAIA,OAAO,CAACC,QAAvB,EAAiC;AAC/B,QAAI,IAAIG,MAAJ,CAAW,MAAIN,kBAAf,EAAqCO,IAArC,CAA0CL,OAAO,CAACC,QAAlD,CAAJ,EAAiE;AAC/D,aAAO,IAAP;AACD;;AACD,WAAO,KAAP;AACD;;AACD,SAAO,IAAP;AACD;;;;"}
1
+ {"version":3,"file":"utils-04c291d8.js","sources":["../src/ui/ChannelAvatar/utils.ts"],"sourcesContent":["export const DEFAULT_URL_PREFIX = 'https://static.sendbird.com/sample/cover/cover_';\n\nexport const getOpenChannelAvatar = (channel: SendBird.OpenChannel): string => {\n if (channel && channel.coverUrl) {\n return channel.coverUrl;\n }\n};\n\nexport const getChannelAvatarSource = (channel: SendBird.GroupChannel, currentUserId: string): string | Array<string> => {\n if (channel && channel.coverUrl) {\n if (!(new RegExp(`^${DEFAULT_URL_PREFIX}`).test(channel.coverUrl))) {\n return channel.coverUrl;\n }\n }\n\n return channel && channel.members\n ? channel.members\n .filter((member) => member.userId !== currentUserId)\n .map(({ profileUrl }) => profileUrl)\n : [];\n};\n\n\nexport const generateDefaultAvatar = (channel: SendBird.GroupChannel): boolean => {\n if (channel && channel.coverUrl) {\n if (new RegExp(`^${DEFAULT_URL_PREFIX}`).test(channel.coverUrl)) {\n return true;\n }\n return false;\n }\n return true;\n}\n"],"names":["DEFAULT_URL_PREFIX","getOpenChannelAvatar","channel","coverUrl","getChannelAvatarSource","currentUserId","RegExp","test","members","filter","member","userId","map","_a","profileUrl","generateDefaultAvatar"],"mappings":"AAAO,IAAMA,kBAAkB,GAAG,iDAA3B;IAEMC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,OAAD;AAClC,MAAIA,OAAO,IAAIA,OAAO,CAACC,QAAvB,EAAiC;AAC/B,WAAOD,OAAO,CAACC,QAAf;AACD;AACF;IAEYC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACF,OAAD,EAAiCG,aAAjC;AACpC,MAAIH,OAAO,IAAIA,OAAO,CAACC,QAAvB,EAAiC;AAC/B,QAAI,CAAE,IAAIG,MAAJ,CAAW,MAAIN,kBAAf,EAAqCO,IAArC,CAA0CL,OAAO,CAACC,QAAlD,CAAN,EAAoE;AAClE,aAAOD,OAAO,CAACC,QAAf;AACD;AACF;;AAED,SAAOD,OAAO,IAAIA,OAAO,CAACM,OAAnB,GACHN,OAAO,CAACM,OAAR,CACCC,MADD,CACQ,UAACC,MAAD;AAAY,WAAAA,MAAM,CAACC,MAAP,KAAkBN,aAAlB;AAA+B,GADnD,EAECO,GAFD,CAEK,UAACC,EAAD;QAAGC,UAAU;AAAO,WAAAA,UAAA;AAAU,GAFnC,CADG,GAIH,EAJJ;AAKD;IAGYC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACb,OAAD;AACnC,MAAIA,OAAO,IAAIA,OAAO,CAACC,QAAvB,EAAiC;AAC/B,QAAI,IAAIG,MAAJ,CAAW,MAAIN,kBAAf,EAAqCO,IAArC,CAA0CL,OAAO,CAACC,QAAlD,CAAJ,EAAiE;AAC/D,aAAO,IAAP;AACD;;AACD,WAAO,KAAP;AACD;;AACD,SAAO,IAAP;AACD;;;;"}
@@ -27,4 +27,4 @@ var copyToClipboard = function copyToClipboard(text) {
27
27
  };
28
28
 
29
29
  export { copyToClipboard as c };
30
- //# sourceMappingURL=utils-5395ff17.js.map
30
+ //# sourceMappingURL=utils-28de36e9.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils-5395ff17.js","sources":["../src/ui/OpenchannelUserMessage/utils.ts"],"sourcesContent":["export const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport default { copyToClipboard };\n"],"names":["copyToClipboard","text","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild"],"mappings":"IAAaA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,IAAD;AAC7B;AACA,MAAIC,MAAM,CAACC,aAAP,IAAwBD,MAAM,CAACC,aAAP,CAAqBC,OAAjD,EAA0D;AACxD;AACA;AACA,WAAOF,MAAM,CAACC,aAAP,CAAqBC,OAArB,CAA6B,MAA7B,EAAqCH,IAArC,CAAP;AACD;;AACD,MAAII,QAAQ,CAACC,qBAAT,IAAkCD,QAAQ,CAACC,qBAAT,CAA+B,MAA/B,CAAtC,EAA8E;AAC5E,QAAMC,QAAQ,GAAGF,QAAQ,CAACG,aAAT,CAAuB,UAAvB,CAAjB;AACAD,IAAAA,QAAQ,CAACE,WAAT,GAAuBR,IAAvB;AACAM,IAAAA,QAAQ,CAACG,KAAT,CAAeC,QAAf,GAA0B,OAA1B,CAH4E;;AAI5EN,IAAAA,QAAQ,CAACO,IAAT,CAAcC,WAAd,CAA0BN,QAA1B;AACAA,IAAAA,QAAQ,CAACO,MAAT;;AACA,QAAI;AACF,aAAOT,QAAQ,CAACU,WAAT,CAAqB,MAArB,CAAP,CADE;AAEH,KAFD,CAEE,OAAOC,EAAP,EAAW;AACX,aAAO,KAAP;AACD,KAJD,SAIU;AACRX,MAAAA,QAAQ,CAACO,IAAT,CAAcK,WAAd,CAA0BV,QAA1B;AACD;AACF;;AACD,SAAO,KAAP;AACD;;;;"}
1
+ {"version":3,"file":"utils-28de36e9.js","sources":["../src/ui/OpenchannelUserMessage/utils.ts"],"sourcesContent":["export const copyToClipboard = (text: string): boolean => {\n // @ts-ignore: Unreachable code error\n if (window.clipboardData && window.clipboardData.setData) {\n // Internet Explorer-specific code path to prevent textarea being shown while dialog is visible.\n // @ts-ignore: Unreachable code error\n return window.clipboardData.setData('Text', text);\n }\n if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n const textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in Microsoft Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n return document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n return false;\n } finally {\n document.body.removeChild(textarea);\n }\n }\n return false;\n};\n\nexport default { copyToClipboard };\n"],"names":["copyToClipboard","text","window","clipboardData","setData","document","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","select","execCommand","ex","removeChild"],"mappings":"IAAaA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,IAAD;AAC7B;AACA,MAAIC,MAAM,CAACC,aAAP,IAAwBD,MAAM,CAACC,aAAP,CAAqBC,OAAjD,EAA0D;AACxD;AACA;AACA,WAAOF,MAAM,CAACC,aAAP,CAAqBC,OAArB,CAA6B,MAA7B,EAAqCH,IAArC,CAAP;AACD;;AACD,MAAII,QAAQ,CAACC,qBAAT,IAAkCD,QAAQ,CAACC,qBAAT,CAA+B,MAA/B,CAAtC,EAA8E;AAC5E,QAAMC,QAAQ,GAAGF,QAAQ,CAACG,aAAT,CAAuB,UAAvB,CAAjB;AACAD,IAAAA,QAAQ,CAACE,WAAT,GAAuBR,IAAvB;AACAM,IAAAA,QAAQ,CAACG,KAAT,CAAeC,QAAf,GAA0B,OAA1B,CAH4E;;AAI5EN,IAAAA,QAAQ,CAACO,IAAT,CAAcC,WAAd,CAA0BN,QAA1B;AACAA,IAAAA,QAAQ,CAACO,MAAT;;AACA,QAAI;AACF,aAAOT,QAAQ,CAACU,WAAT,CAAqB,MAArB,CAAP,CADE;AAEH,KAFD,CAEE,OAAOC,EAAP,EAAW;AACX,aAAO,KAAP;AACD,KAJD,SAIU;AACRX,MAAAA,QAAQ,CAACO,IAAT,CAAcK,WAAd,CAA0BV,QAA1B;AACD;AACF;;AACD,SAAO,KAAP;AACD;;;;"}
@@ -1,4 +1,4 @@
1
1
  var noop = function noop() {};
2
2
 
3
3
  export { noop as n };
4
- //# sourceMappingURL=utils-9ef11656.js.map
4
+ //# sourceMappingURL=utils-f5c9ef64.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils-9ef11656.js","sources":["../src/utils/utils.js"],"sourcesContent":["export const noop = () => {};\n\nexport const getSenderName = (message) => (\n message.sender && (\n message.sender.friendName\n || message.sender.nickname\n || message.sender.userId\n )\n);\n\nexport const getSenderProfileUrl = (message) => message.sender && message.sender.profileUrl;\n\nexport default {\n getSenderName,\n getSenderProfileUrl,\n};\n"],"names":["noop"],"mappings":"IAAaA,IAAI,GAAG,SAAPA,IAAO,GAAM;;;;"}
1
+ {"version":3,"file":"utils-f5c9ef64.js","sources":["../src/utils/utils.js"],"sourcesContent":["export const noop = () => {};\n\nexport const getSenderName = (message) => (\n message.sender && (\n message.sender.friendName\n || message.sender.nickname\n || message.sender.userId\n )\n);\n\nexport const getSenderProfileUrl = (message) => message.sender && message.sender.profileUrl;\n\nexport default {\n getSenderName,\n getSenderProfileUrl,\n};\n"],"names":["noop"],"mappings":"IAAaA,IAAI,GAAG,SAAPA,IAAO,GAAM;;;;"}
@@ -14,4 +14,4 @@ var uuidv4 = function uuidv4() {
14
14
  };
15
15
 
16
16
  export { uuidv4 as u };
17
- //# sourceMappingURL=uuid-6d14d007.js.map
17
+ //# sourceMappingURL=uuid-0139dc21.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"uuid-6d14d007.js","sources":["../src/utils/uuid.ts"],"sourcesContent":["/* eslint-disable no-bitwise */\n/* eslint-disable eqeqeq */\n/* eslint-disable no-mixed-operators */\n// https://stackoverflow.com/a/2117523\n// used mainly for dom key generation\nexport const uuidv4 = (): string => 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\n const r = Math.random() * 16 | 0;\n const v = c === 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n});\n\nexport default uuidv4;\n"],"names":["uuidv4","replace","c","r","Math","random","v","toString"],"mappings":"AAAA;;AACA;;AACA;AACA;AACA;IACaA,MAAM,GAAG,SAATA,MAAS;AAAc,SAAA,uCAAuCC,OAAvC,CAA+C,OAA/C,EAAwD,UAACC,CAAD;AAC1F,QAAMC,CAAC,GAAGC,IAAI,CAACC,MAAL,KAAgB,EAAhB,GAAqB,CAA/B;AACA,QAAMC,CAAC,GAAGJ,CAAC,KAAK,GAAN,GAAYC,CAAZ,GAAiBA,CAAC,GAAG,GAAJ,GAAU,GAArC;AACA,WAAOG,CAAC,CAACC,QAAF,CAAW,EAAX,CAAP;AACD,GAJmC,CAAA;AAIlC;;;;"}
1
+ {"version":3,"file":"uuid-0139dc21.js","sources":["../src/utils/uuid.ts"],"sourcesContent":["/* eslint-disable no-bitwise */\n/* eslint-disable eqeqeq */\n/* eslint-disable no-mixed-operators */\n// https://stackoverflow.com/a/2117523\n// used mainly for dom key generation\nexport const uuidv4 = (): string => 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\n const r = Math.random() * 16 | 0;\n const v = c === 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n});\n\nexport default uuidv4;\n"],"names":["uuidv4","replace","c","r","Math","random","v","toString"],"mappings":"AAAA;;AACA;;AACA;AACA;AACA;IACaA,MAAM,GAAG,SAATA,MAAS;AAAc,SAAA,uCAAuCC,OAAvC,CAA+C,OAA/C,EAAwD,UAACC,CAAD;AAC1F,QAAMC,CAAC,GAAGC,IAAI,CAACC,MAAL,KAAgB,EAAhB,GAAqB,CAA/B;AACA,QAAMC,CAAC,GAAGJ,CAAC,KAAK,GAAN,GAAYC,CAAZ,GAAiBA,CAAC,GAAG,GAAJ,GAAU,GAArC;AACA,WAAOG,CAAC,CAACC,QAAF,CAAW,EAAX,CAAP;AACD,GAJmC,CAAA;AAIlC;;;;"}
package/withSendBird.js CHANGED
@@ -1,4 +1,4 @@
1
- import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-8e4fae98.js';
1
+ import { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-6bf18550.js';
2
2
  import React__default from 'react';
3
3
 
4
4
  var SendbirdSdkContext = /*#__PURE__*/React__default.createContext();
package/CHANGELOG.md DELETED
@@ -1,50 +0,0 @@
1
- # Changelog - v3
2
-
3
- ## [3.0.0-beta.2] (April 29 2022)
4
-
5
- Feature:
6
- * Mention
7
- * Add isMentionEnabled props to the <App /> and <SendbirdProvider />
8
- * Add userMention into the config props of the <App /> andd <SendbirdProvider />
9
- * <SendbirdProvider config={{ userMention: { maxMentionCount: 10, maxSuggestionCount: 15 } }} />
10
- * maxMentionCount: A maximum count that you can mention in the message input
11
- * maxSuggestionCount: A maximum user count that the SuggestedMentionList suggests for user mention
12
- * Create SuggestedMentionList component under the Channel smart component
13
- * Create SuggestedUserMentionItem component
14
- * Create MentionUserLabel ui component
15
- * Add string set
16
- * MENTION_NAME__NO_NAME: '(No name)'
17
- * MENTION_COUNT__OVER_LIMIT: 'You can mention up to %d times per message.'
18
- Fix:
19
- * Type definition file fix for TS project
20
- For typescript projects, add `node_modules/@sendbird/uikit-react/index.d.ts`
21
- to your `include` section in tsconfig file to get type definitions
22
-
23
- * Move font import to top of CSS file
24
- Some bundlers such as parcel throw error:
25
- `@import rules must precede all rules aside from @charset and @layer statements`
26
- Resolve this issue by moving the line to the top
27
-
28
- ## [3.0.0-beta] (Apr 12 2022)
29
-
30
- This is the official beta for Sendbird UIKit for React version 3!
31
-
32
- TLDR -> We split the old `smart-components` into modules which contian context and UI. Context contain logic and UI Components handle UI
33
-
34
- **[Check out the v2 to v3 migration guide for details](MIGRATION_v2-to-v3.md)**
35
-
36
- Changelog:
37
- * Package should be installed using `@sendbird/uikit-react`
38
- * Restructure smart-components into modules that contain a context and related UI components
39
- * Export these context and UI components to allow fine-grain customization
40
- * Recommend to use these context elements `useXXXXX()` and react function components to make custom components
41
- * All generic UI components are available as exports
42
- * Restrcuture export paths to allow better tree-shaking
43
- * Example:
44
- ```
45
- import { useChannel } from '@sendbird/uikit-react/Channel/context';
46
- import ChannelUI from '@sendbird/uikit-react/Channel/components/ChannelUI';
47
- ```
48
- * We keep older export patterns to make migration easier
49
- * Retained modules - ChannelList, Channel, ChannelSettings, OpenChannel, OpenChannelSettings, MessageSearch
50
- * New modules(not including context and ui of above) - CreateChannel, EditUserProfile, ui
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChannelListProvider-7c351968.js","sources":["../src/smart-components/ChannelList/dux/actionTypes.js","../src/smart-components/ChannelList/utils.js","../src/smart-components/ChannelList/dux/initialState.js","../src/smart-components/ChannelList/dux/reducers.js","../src/smart-components/ChannelList/context/ChannelListProvider.tsx"],"sourcesContent":["export const RESET_CHANNEL_LIST = 'RESET_CHANNEL_LIST';\nexport const CREATE_CHANNEL = 'CREATE_CHANNEL';\nexport const UNLOAD_CHANNELS = 'UNLOAD_CHANNELS';\nexport const SET_CHANNEL_LOADING = 'SET_CHANNEL_LOADING';\nexport const SET_AUTO_SELECT_CHANNEL_ITEM = 'SET_AUTO_SELECT_CHANNEL_ITEM';\nexport const LEAVE_CHANNEL_SUCCESS = 'LEAVE_CHANNEL_SUCCESS';\n\nexport const SET_CURRENT_CHANNEL = 'SET_CURRENT_CHANNEL';\n\nexport const SHOW_CHANNEL_SETTINGS = 'SHOW_CHANNEL_SETTINGS';\nexport const HIDE_CHANNEL_SETTINGS = 'HIDE_CHANNEL_SETTINGS';\n\nexport const FETCH_CHANNELS_START = 'FETCH_CHANNELS_START';\nexport const FETCH_CHANNELS_SUCCESS = 'FETCH_CHANNELS_SUCCESS';\nexport const FETCH_CHANNELS_FAILURE = 'FETCH_CHANNELS_FAILURE';\n\nexport const INIT_CHANNELS_START = 'INIT_CHANNELS_START';\nexport const INIT_CHANNELS_SUCCESS = 'INIT_CHANNELS_SUCCESS';\nexport const INIT_CHANNELS_FAILURE = 'INIT_CHANNELS_FAILURE';\n\nexport const INVITE_MEMBERS_SUCESS = 'INVITE_MEMBERS_SUCESS';\n\nexport const ON_USER_JOINED = 'ON_USER_JOINED';\nexport const ON_CHANNEL_DELETED = 'ON_CHANNEL_DELETED';\nexport const ON_LAST_MESSAGE_UPDATED = 'ON_LAST_MESSAGE_UPDATED';\nexport const ON_USER_LEFT = 'ON_USER_LEFT';\nexport const ON_CHANNEL_CHANGED = 'ON_CHANNEL_CHANGED';\nexport const ON_CHANNEL_ARCHIVED = 'ON_CHANNEL_ARCHIVED';\nexport const ON_CHANNEL_FROZEN = 'ON_CHANNEL_FROZEN';\nexport const ON_CHANNEL_UNFROZEN = 'ON_CHANNEL_UNFROZEN';\n\nexport const ON_READ_RECEIPT_UPDATED = 'ON_READ_RECEIPT_UPDATED';\nexport const ON_DELIVERY_RECEIPT_UPDATED = 'ON_DELIVERY_RECEIPT_UPDATED';\n\nexport const CHANNEL_REPLACED_TO_TOP = 'CHANNEL_REPLACED_TO_TOP';\nexport const CHANNEL_LIST_PARAMS_UPDATED = 'CHANNEL_LIST_PARAMS_UPDATED';\n","import * as channelActions from './dux/actionTypes';\nimport * as topics from '../../lib/pubSub/topics';\n\nconst createEventHandler = ({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n logger,\n}) => {\n const ChannelHandler = new sdk.ChannelHandler();\n\n ChannelHandler.onChannelChanged = (channel) => {\n logger.info('ChannelList: onChannelChanged', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_CHANGED,\n payload: channel,\n });\n };\n ChannelHandler.onChannelDeleted = (channelUrl) => {\n logger.info('ChannelList: onChannelDeleted', channelUrl);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_DELETED,\n payload: channelUrl,\n });\n };\n ChannelHandler.onUserJoined = (channel) => {\n logger.info('ChannelList: onUserJoined', channel);\n if (channel.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_USER_JOINED,\n payload: channel,\n });\n }\n };\n ChannelHandler.onUserBanned = (channel, user) => {\n const { currentUser } = sdk;\n logger.info('Channel | useHandleChannelEvents: onUserBanned', channel);\n if (user.userId === currentUser.userId) {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: true,\n },\n });\n } else {\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe: false,\n },\n });\n }\n };\n ChannelHandler.onUserLeft = (channel, leftUser) => {\n const { currentUser } = sdk;\n const isMe = (currentUser.userId === leftUser.userId);\n logger.info('ChannelList: onUserLeft', channel);\n channelListDispatcher({\n type: channelActions.ON_USER_LEFT,\n payload: {\n channel,\n isMe,\n },\n });\n };\n\n ChannelHandler.onReadStatus = (channel) => {\n logger.info('ChannelList: onReadStatus', channel);\n channelListDispatcher({\n type: channelActions.ON_READ_RECEIPT_UPDATED,\n payload: channel,\n });\n };\n\n ChannelHandler.onDeliveryReceiptUpdated = (channel) => {\n logger.info('ChannelList: onDeliveryReceiptUpdated', channel);\n if (channel.lastMessage) {\n channelListDispatcher({\n type: channelActions.ON_DELIVERY_RECEIPT_UPDATED,\n payload: channel,\n });\n }\n };\n\n ChannelHandler.onMessageUpdated = (channel, message) => {\n if (channel.lastMessage.isEqual(message)) {\n logger.info('ChannelList: onMessageUpdated', channel);\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: channel,\n });\n }\n };\n\n ChannelHandler.onChannelHidden = (channel) => {\n logger.info('ChannelList: onChannelHidden', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_ARCHIVED,\n payload: channel,\n });\n };\n\n ChannelHandler.onChannelFrozen = (channel) => {\n logger.info('ChannelList: onChannelFrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_FROZEN,\n payload: channel,\n });\n };\n\n ChannelHandler.onChannelUnfrozen = (channel) => {\n logger.info('ChannelList: onChannelUnfrozen', channel);\n channelListDispatcher({\n type: channelActions.ON_CHANNEL_UNFROZEN,\n payload: channel,\n });\n };\n\n logger.info('ChannelList: Added channelHandler');\n sdk.addChannelHandler(sdkChannelHandlerId, ChannelHandler);\n};\n\nconst createChannelListQuery = ({ sdk, userFilledChannelListQuery = {} }) => {\n const channelListQuery = sdk.GroupChannel.createMyGroupChannelListQuery();\n channelListQuery.includeEmpty = false;\n channelListQuery.order = 'latest_last_message'; // 'chronological', 'latest_last_message', 'channel_name_alphabetical', and 'metadata_value_alphabetical'\n channelListQuery.limit = 20; // The value of pagination limit could be set up to 100.\n\n if (userFilledChannelListQuery) {\n Object.keys(userFilledChannelListQuery).forEach((key) => {\n channelListQuery[key] = userFilledChannelListQuery[key];\n });\n }\n\n return channelListQuery;\n};\n\n/**\n * Setup event listener\n * create channel source query\n * addloading screen\n */\nfunction setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n}) {\n if (sdk && sdk.ChannelHandler) {\n createEventHandler({\n sdk,\n channelListDispatcher,\n sdkChannelHandlerId,\n logger,\n });\n } else {\n logger.console.warning('ChannelList - createEventHandler: sdk or sdk.ChannelHandler does not exist', sdk);\n }\n\n logger.info('ChannelList - creating query', { userFilledChannelListQuery });\n const channelListQuery = createChannelListQuery({ sdk, userFilledChannelListQuery });\n logger.info('ChannelList - created query', channelListQuery);\n\n setChannelSource(channelListQuery);\n\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_START,\n });\n\n if (userFilledChannelListQuery) {\n logger.info('ChannelList - setting up channelListQuery', channelListQuery);\n channelListDispatcher({\n type: channelActions.CHANNEL_LIST_PARAMS_UPDATED,\n payload: {\n channelListQuery,\n currentUserId: sdk && sdk.currentUser && sdk.currentUser.userId,\n },\n });\n }\n\n logger.info('ChannelList - fetching channels');\n if (channelListQuery.hasNext) {\n channelListQuery.next((response, error) => {\n const swapParams = sdk.getErrorFirstCallback();\n let channelList = response;\n let err = error;\n if (swapParams) {\n channelList = error;\n err = response;\n }\n logger.info('ChannelList - fetched channels', channelList);\n if (err) {\n logger.error('ChannelList - couldnt fetch channels', err);\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_FAILURE,\n });\n return;\n }\n // select first channel\n logger.info('ChannelList - highlight channel', channelList[0]);\n let sortedChannelList = channelList;\n if (sortChannelList && typeof sortChannelList === 'function') {\n sortedChannelList = sortChannelList(channelList);\n logger.info('ChannelList - channel list sorted', sortedChannelList);\n }\n if (!disableAutoSelect) {\n onChannelSelect(sortedChannelList[0]);\n }\n channelListDispatcher({\n type: channelActions.INIT_CHANNELS_SUCCESS,\n payload: sortedChannelList,\n });\n if (channelList && typeof channelList.forEach === 'function') {\n logger.info('ChannelList - mark all channels as delivered');\n channelList.forEach((c) => c.markAsDelivered());\n }\n });\n } else {\n logger.warning('ChannelList - there are no more channels');\n }\n}\n\nexport const pubSubHandleRemover = (subscriber) => {\n subscriber.forEach((s) => {\n try {\n s.remove();\n } catch {\n //\n }\n });\n};\n\nexport const pubSubHandler = (pubSub, channelListDispatcher) => {\n const subScriber = new Map();\n if (!pubSub) return subScriber;\n subScriber.set(topics.CREATE_CHANNEL, pubSub.subscribe(topics.CREATE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: 'CREATE_CHANNEL',\n payload: channel,\n });\n }));\n\n subScriber.set(topics.UPDATE_USER_MESSAGE, pubSub.subscribe(topics.UPDATE_USER_MESSAGE, (msg) => {\n const { channel, message } = msg;\n const updatedChannel = channel;\n if (updatedChannel?.lastMessage?.messageId === message.messageId) {\n updatedChannel.lastMessage = message;\n }\n if (channel) {\n channelListDispatcher({\n type: channelActions.ON_LAST_MESSAGE_UPDATED,\n payload: updatedChannel,\n });\n }\n }));\n\n subScriber.set(topics.LEAVE_CHANNEL, pubSub.subscribe(topics.LEAVE_CHANNEL, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.LEAVE_CHANNEL_SUCCESS,\n payload: channel.url,\n });\n }));\n\n subScriber.set(topics.SEND_MESSAGE_START, pubSub.subscribe(topics.SEND_MESSAGE_START, (msg) => {\n const { channel } = msg;\n channelListDispatcher({\n type: channelActions.CHANNEL_REPLACED_TO_TOP,\n payload: channel,\n });\n }));\n\n return subScriber;\n};\n\nexport default setupChannelList;\n","export default {\n // we might not need this initialized state -> should remove\n initialized: false,\n loading: false,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: null,\n currentUserId: '',\n disableAutoSelect: false,\n};\n","import { filterChannelListParams, getChannelsWithUpsertedChannel } from '../../../utils';\nimport * as actions from './actionTypes';\nimport initialState from './initialState';\n\nexport default function reducer(state, action) {\n switch (action.type) {\n case actions.INIT_CHANNELS_START:\n return {\n ...state,\n loading: true,\n };\n case actions.RESET_CHANNEL_LIST:\n return initialState;\n case actions.INIT_CHANNELS_SUCCESS:\n return {\n ...state,\n initialized: true,\n loading: false,\n allChannels: action.payload,\n currentChannel: (\n !state.disableAutoSelect\n && action.payload\n && action.payload.length\n && action.payload.length > 0\n )\n ? action.payload[0]\n : null,\n };\n case actions.FETCH_CHANNELS_SUCCESS: {\n const currentChannels = state.allChannels.map((c) => c.url);\n const filteredChannels = action.payload.filter(\n ({ url }) => !(currentChannels.find((c) => c === url)),\n );\n return {\n ...state,\n allChannels: [\n ...state.allChannels,\n ...filteredChannels,\n ],\n };\n }\n case actions.CREATE_CHANNEL: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n return {\n ...state,\n currentChannel: channel,\n };\n }\n return {\n ...state,\n allChannels: [channel, ...state.allChannels.filter((ch) => ch.url !== channel.url)],\n currentChannel: channel,\n };\n }\n case actions.ON_CHANNEL_ARCHIVED: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n // TODO: Check if we have to set current channel\n }\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel.url ? 1 : 0]\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n case actions.LEAVE_CHANNEL_SUCCESS:\n case actions.ON_CHANNEL_DELETED: {\n const channelUrl = action.payload;\n return {\n ...state,\n currentChannel: (channelUrl === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channelUrl),\n };\n }\n case actions.ON_USER_LEFT: {\n const { channel, isMe } = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n const filteredChannels = getChannelsWithUpsertedChannel(state.allChannels, channel);\n const nextChannel = (isMe && (channel.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n };\n }\n const filteredChannels = state.allChannels.filter((c) => !(c.url === channel.url && isMe));\n const nextChannel = (isMe && (channel.url === state.currentChannel?.url))\n ? filteredChannels[0]\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: filteredChannels,\n };\n }\n case actions.ON_USER_JOINED:\n case actions.ON_CHANNEL_CHANGED:\n case actions.ON_READ_RECEIPT_UPDATED:\n case actions.ON_DELIVERY_RECEIPT_UPDATED: {\n const { allChannels = [] } = state;\n const channel = action.payload;\n const { unreadMessageCount } = channel;\n if (!channel.lastMessage) return state;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(allChannels, channel),\n };\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n };\n }\n // if its only an unread message count change, dont push to top\n if (unreadMessageCount === 0) {\n const currentChannel = allChannels.find(({ url }) => url === channel.url);\n const currentUnreadCount = currentChannel && currentChannel.unreadMessageCount;\n if (currentUnreadCount === 0) {\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => (ch.url === channel.url ? channel : ch)),\n };\n }\n }\n return {\n ...state,\n allChannels: [\n channel,\n ...state.allChannels.filter(({ url }) => url !== action.payload.url),\n ],\n };\n }\n case actions.SET_CURRENT_CHANNEL:\n return {\n ...state,\n currentChannel: action.payload,\n };\n case actions.SHOW_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: true,\n };\n case actions.HIDE_CHANNEL_SETTINGS:\n return {\n ...state,\n showSettings: false,\n };\n case actions.ON_LAST_MESSAGE_UPDATED:\n return {\n ...state,\n allChannels: state.allChannels.map((channel) => (\n channel.url === action.payload.url ? action.payload : channel)),\n };\n case actions.ON_CHANNEL_FROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = true;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.ON_CHANNEL_UNFROZEN: {\n const channel = action.payload;\n if (state.channelListQuery) {\n if (filterChannelListParams(state.channelListQuery, channel, state.currentUserId)) {\n return {\n ...state,\n allChannels: getChannelsWithUpsertedChannel(state.allChannels, channel),\n };\n }\n const nextChannel = (channel.url === state.currentChannel?.url)\n ? state.allChannels[state.allChannels[0].url === channel.url ? 1 : 0]\n // if coming channel is first of channel list, current channel will be the next one\n : state.currentChannel;\n return {\n ...state,\n allChannels: state.allChannels.filter(({ url }) => url !== channel.url),\n currentChannel: state.disableAutoSelect ? null : nextChannel,\n };\n }\n return {\n ...state,\n allChannels: state.allChannels.map((ch) => {\n if (ch.url === channel.url) {\n // eslint-disable-next-line no-param-reassign\n ch.isFrozen = false;\n return ch;\n }\n return ch;\n }),\n };\n }\n case actions.CHANNEL_REPLACED_TO_TOP: {\n return {\n ...state,\n allChannels: [\n action.payload,\n ...state.allChannels.filter((channel) => channel.url !== action.payload.url),\n ],\n };\n }\n case actions.CHANNEL_LIST_PARAMS_UPDATED:\n return {\n ...state,\n currentUserId: action.payload.currentUserId,\n channelListQuery: action.payload.channelListQuery,\n };\n case actions.SET_AUTO_SELECT_CHANNEL_ITEM: {\n return {\n ...state,\n ableAutoSelect: action.payload,\n };\n }\n default:\n return state;\n }\n}\n","import React, {\n useState,\n useEffect,\n useContext,\n useReducer,\n useMemo,\n} from 'react';\nimport Sendbird from 'sendbird';\n\nimport { RenderUserProfileProps } from '../../../types';\n\nimport setupChannelList, {\n pubSubHandler,\n pubSubHandleRemover,\n} from '../utils';\nimport { uuidv4 } from '../../../utils/uuid';\nimport { noop } from '../../../utils/utils';\n\nimport * as channelListActions from '../dux/actionTypes';\n\nimport { UserProfileProvider } from '../../../lib/UserProfileContext';\nimport useSendbirdStateContext from '../../../hooks/useSendbirdStateContext';\nimport { CustomUseReducerDispatcher } from '../../../lib/SendbirdState';\nimport channelListReducers from '../dux/reducers';\nimport channelListInitialState from '../dux/initialState';\n\ninterface ApplicationUserListQuery {\n limit?: number;\n userIdsFilter?: Array<string>;\n metaDataKeyFilter?: string;\n metaDataValuesFilter?: Array<string>;\n}\n\ninterface GroupChannelListQuery {\n limit?: number;\n includeEmpty?: boolean;\n order?: 'latest_last_message' | 'chronological' | 'channel_name_alphabetical' | 'metadata_value_alphabetical';\n userIdsExactFilter?: Array<string>;\n userIdsIncludeFilter?: Array<string>;\n userIdsIncludeFilterQueryType?: 'AND' | 'OR';\n nicknameContainsFilter?: string;\n channelNameContainsFilter?: string;\n customTypesFilter?: Array<string>;\n customTypeStartsWithFilter?: string;\n channelUrlsFilter?: Array<string>;\n superChannelFilter?: 'all' | 'super' | 'nonsuper';\n publicChannelFilter?: 'all' | 'public' | 'private';\n metadataOrderKeyFilter?: string;\n memberStateFilter?: 'all' | 'joined_only' | 'invited_only' | 'invited_by_friend' | 'invited_by_non_friend';\n hiddenChannelFilter?: 'unhidden_only' | 'hidden_only' | 'hidden_allow_auto_unhide' | 'hidden_prevent_auto_unhide';\n unreadChannelFilter?: 'all' | 'unread_message';\n includeFrozen?: boolean;\n}\n\ninterface ChannelListQueries {\n applicationUserListQuery?: ApplicationUserListQuery;\n channelListQuery?: GroupChannelListQuery;\n}\n\nexport interface ChannelListProviderProps {\n allowProfileEdit?: boolean;\n onBeforeCreateChannel?(users: Array<string>): Sendbird.GroupChannelParams;\n onThemeChange?(theme: string): void;\n onProfileEditSuccess?(user: Sendbird.User): void;\n onChannelSelect?(channel: Sendbird.GroupChannel): void;\n sortChannelList?: (channels: Sendbird.GroupChannel[]) => Sendbird.GroupChannel[];\n queries?: ChannelListQueries;\n children?: React.ReactNode;\n className?: string | string[];\n renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;\n disableUserProfile?: boolean;\n disableAutoSelect?: boolean;\n}\n\nexport interface ChannelListProviderInterface extends ChannelListProviderProps {\n initialized: boolean;\n loading: boolean;\n allChannels: Sendbird.GroupChannel[];\n currentChannel: Sendbird.GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n channelListDispatcher: CustomUseReducerDispatcher;\n channelSource: Sendbird.GroupChannelListQuery;\n}\n\ninterface ChannelListStoreInterface {\n initialized: boolean;\n loading: boolean;\n allChannels: Sendbird.GroupChannel[];\n currentChannel: Sendbird.GroupChannel;\n showSettings: boolean;\n channelListQuery: GroupChannelListQuery;\n currentUserId: string;\n}\n\nconst ChannelListContext = React.createContext<ChannelListProviderInterface | null>({\n disableUserProfile: true,\n allowProfileEdit: true,\n onBeforeCreateChannel: null,\n onThemeChange: null,\n onProfileEditSuccess: null,\n onChannelSelect: null,\n queries: {},\n className: null,\n initialized: false,\n loading: false,\n allChannels: [],\n currentChannel: null,\n showSettings: false,\n channelListQuery: {},\n currentUserId: null,\n channelListDispatcher: null,\n channelSource: null,\n});\n\nconst ChannelListProvider: React.FC<ChannelListProviderProps> = (props: ChannelListProviderProps) => {\n // destruct props\n const {\n children,\n className,\n disableUserProfile,\n allowProfileEdit,\n queries,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n sortChannelList,\n disableAutoSelect,\n } = props;\n const onChannelSelect = props?.onChannelSelect || noop;\n\n // fetch store from <SendbirdProvider />\n const globalStore = useSendbirdStateContext();\n const { config, stores } = globalStore;\n const { sdkStore } = stores;\n const { pubSub, logger } = config;\n const { sdk } = sdkStore;\n\n // derive some variables\n // enable if it is true atleast once(both are flase by default)\n const userDefinedDisableUserProfile = disableUserProfile || config?.disableUserProfile;\n const userDefinedRenderProfile = config?.renderUserProfile;\n const enableEditProfile = allowProfileEdit || config?.allowProfileEdit;\n\n const userFilledChannelListQuery = queries?.channelListQuery;\n const userFilledApplicationUserListQuery = queries?.applicationUserListQuery;\n\n const sdkIntialized = sdkStore?.initialized;\n\n const [ channelListStore, channelListDispatcher ] = useReducer(\n channelListReducers,\n channelListInitialState,\n ) as [ChannelListStoreInterface, CustomUseReducerDispatcher];\n\n const [channelSource, setChannelSource] = useState<Sendbird.GroupChannelListQuery | null>();\n const [sdkChannelHandlerId, setSdkChannelHandlerId] = useState<string | null>(null);\n\n const { loading, currentChannel } = channelListStore;\n\n useEffect(() => {\n const subscriber = pubSubHandler(pubSub, channelListDispatcher);\n return () => {\n pubSubHandleRemover(subscriber);\n };\n }, [sdkIntialized]);\n\n useEffect(() => {\n channelListDispatcher({\n type: channelListActions.SET_AUTO_SELECT_CHANNEL_ITEM,\n payload: disableAutoSelect,\n });\n }, [disableAutoSelect]);\n\n useEffect(() => {\n setSdkChannelHandlerId(uuidv4);\n if (sdkIntialized) {\n logger.info('ChannelList: Setup channelHandlers');\n setupChannelList({\n sdk,\n sdkChannelHandlerId,\n channelListDispatcher,\n setChannelSource,\n onChannelSelect,\n userFilledChannelListQuery,\n logger,\n sortChannelList,\n disableAutoSelect,\n });\n } else {\n logger.info('ChannelList: Removing channelHandlers');\n // remove previous channelHandlers\n if (sdk && sdk?.removeChannelHandler) {\n sdk.removeChannelHandler(sdkChannelHandlerId);\n }\n // remove channelSource\n setChannelSource(null);\n // cleanup\n channelListDispatcher({\n type: channelListActions.RESET_CHANNEL_LIST,\n payload: null,\n });\n }\n return () => {\n logger.info('ChannelList: Removing channelHandlers');\n if (sdk && sdk.removeChannelHandler) {\n sdk.removeChannelHandler(sdkChannelHandlerId);\n }\n };\n }, [sdkIntialized, userFilledChannelListQuery, sortChannelList]);\n\n const queries_ = useMemo(() => {\n return {\n applicationUserListQuery: userFilledApplicationUserListQuery,\n channelListQuery: userFilledChannelListQuery,\n };\n }, [\n userFilledApplicationUserListQuery,\n userFilledChannelListQuery,\n ])\n\n const { allChannels } = channelListStore;\n const sortedChannels = (sortChannelList && typeof sortChannelList === 'function')\n ? sortChannelList(allChannels)\n : allChannels;\n\n if (sortedChannels.length !== allChannels.length) {\n const warning = `ChannelList: You have removed/added extra channels on sortChannelList\n this could cause unexpected problems`;\n // eslint-disable-next-line no-console\n console.warn(warning, { before: allChannels, after: sortedChannels });\n logger.warning(warning, { before: allChannels, after: sortedChannels });\n }\n\n useEffect(() => {\n if (!sdk || !sdk.GroupChannel || !currentChannel || !currentChannel?.url) { return; }\n sdk.GroupChannel.getChannel(currentChannel.url, (groupChannel) => {\n if (groupChannel) {\n onChannelSelect(groupChannel);\n } else {\n onChannelSelect(null);\n }\n });\n }, [currentChannel?.url]);\n\n return (\n <ChannelListContext.Provider value={{\n className,\n disableUserProfile,\n queries: queries_,\n onProfileEditSuccess,\n onThemeChange,\n onBeforeCreateChannel,\n onChannelSelect,\n sortChannelList,\n loading,\n allowProfileEdit: enableEditProfile,\n channelListDispatcher,\n channelSource,\n ...channelListStore,\n allChannels: sortedChannels,\n }}>\n <UserProfileProvider\n disableUserProfile={userDefinedDisableUserProfile}\n renderUserProfile={userDefinedRenderProfile}\n >\n <div className={`sendbird-channel-list ${className}`}>\n {children}\n </div>\n </UserProfileProvider>\n </ChannelListContext.Provider>\n );\n};\n\nfunction useChannelListContext (): ChannelListProviderInterface {\n const context: ChannelListProviderInterface = useContext(ChannelListContext);\n return context;\n}\n\nexport {\n ChannelListProvider,\n // ChannelListContext,\n useChannelListContext,\n};\n"],"names":["RESET_CHANNEL_LIST","CREATE_CHANNEL","SET_AUTO_SELECT_CHANNEL_ITEM","LEAVE_CHANNEL_SUCCESS","SET_CURRENT_CHANNEL","SHOW_CHANNEL_SETTINGS","HIDE_CHANNEL_SETTINGS","FETCH_CHANNELS_START","FETCH_CHANNELS_SUCCESS","FETCH_CHANNELS_FAILURE","INIT_CHANNELS_START","INIT_CHANNELS_SUCCESS","INIT_CHANNELS_FAILURE","ON_USER_JOINED","ON_CHANNEL_DELETED","ON_LAST_MESSAGE_UPDATED","ON_USER_LEFT","ON_CHANNEL_CHANGED","ON_CHANNEL_ARCHIVED","ON_CHANNEL_FROZEN","ON_CHANNEL_UNFROZEN","ON_READ_RECEIPT_UPDATED","ON_DELIVERY_RECEIPT_UPDATED","CHANNEL_REPLACED_TO_TOP","CHANNEL_LIST_PARAMS_UPDATED","createEventHandler","sdk","sdkChannelHandlerId","channelListDispatcher","logger","ChannelHandler","onChannelChanged","channel","info","type","channelActions","payload","onChannelDeleted","channelUrl","onUserJoined","lastMessage","onUserBanned","user","currentUser","userId","isMe","onUserLeft","leftUser","onReadStatus","onDeliveryReceiptUpdated","onMessageUpdated","message","isEqual","onChannelHidden","onChannelFrozen","onChannelUnfrozen","addChannelHandler","createChannelListQuery","userFilledChannelListQuery","channelListQuery","GroupChannel","createMyGroupChannelListQuery","includeEmpty","order","limit","Object","keys","forEach","key","setupChannelList","setChannelSource","onChannelSelect","sortChannelList","disableAutoSelect","console","warning","currentUserId","hasNext","next","response","error","swapParams","getErrorFirstCallback","channelList","err","sortedChannelList","c","markAsDelivered","pubSubHandleRemover","subscriber","s","remove","pubSubHandler","pubSub","subScriber","Map","set","topics","subscribe","msg","updatedChannel","messageId","url","initialized","loading","allChannels","currentChannel","showSettings","reducer","state","action","actions","initialState","length","currentChannels","map","filteredChannels","filter","find","filterChannelListParams","getChannelsWithUpsertedChannel","ch","nextChannel","unreadMessageCount","currentUnreadCount","isFrozen","ableAutoSelect","ChannelListContext","React","createContext","disableUserProfile","allowProfileEdit","onBeforeCreateChannel","onThemeChange","onProfileEditSuccess","queries","className","channelSource","ChannelListProvider","props","children","noop","globalStore","useSendbirdStateContext","config","stores","sdkStore","userDefinedDisableUserProfile","userDefinedRenderProfile","renderUserProfile","enableEditProfile","userFilledApplicationUserListQuery","applicationUserListQuery","sdkIntialized","_a","useReducer","channelListReducers","channelListInitialState","channelListStore","_b","useState","_c","setSdkChannelHandlerId","useEffect","channelListActions","uuidv4","removeChannelHandler","queries_","useMemo","sortedChannels","warn","before","after","getChannel","groupChannel","useChannelListContext","context","useContext"],"mappings":"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"}
package/README.md DELETED
@@ -1,111 +0,0 @@
1
- # sendbird-uikit
2
-
3
- [![Version 3 beta](https://img.shields.io/badge/Sendbird-BETA-blue.svg)](https://github.com/sendbird/sendbird-uikit-react/tree/develop-v3)
4
- [![Platform React](https://img.shields.io/badge/Platform-React-orange.svg)](https://reactjs.org)
5
- [![Language TypeScript](https://img.shields.io/badge/Language-TypeScript-orange.svg)](https://www.typescriptlang.org/)
6
-
7
- > React based UI kit based on sendbird javascript SDK
8
-
9
- We are introducing a new version of the Sendbird Chat UIKit. Version 3 features a new modular architecture with more granular components that give you enhanced flexibility to customize your web and mobile apps. Check out our [migration guides](MIGRATION_v2-to-v3.md).
10
-
11
- ## Installation
12
-
13
- `npm i @sendbird/uikit-react`
14
-
15
- For typescript projects, add `node_modules/@sendbird/uikit-react/index.d.ts` to your `include` section in tsconfig file to get type definitions
16
-
17
- ## Getting Started
18
-
19
- With Sendbird UI Kit React, we export these components:
20
- (See `src/index.jsx`)
21
-
22
- * SendBirdProvider - The context provider for SDK component
23
- * useSendbirdStateContext - Hook to access SendBirdProvider context
24
- * sendBirdSelectors - A bunch of useful selectors that can be used along with *useSendbirdStateContext*
25
-
26
- * Channel - A UI Component where conversations happen
27
- * ChannelList - A ChannelList UI component
28
- * ChannelSettings - A component to handle the settings of a given channel
29
- * MessageSearch - To search for a message from a Channel
30
- * OpenChannel - A UI Component where open channel conversations happen
31
- * OpenChannelSettings - A component to handle the settings of a given channel
32
- And many more...
33
-
34
- * App - is a full fledged app(group channel) component made by combining the above components so that you dont have to combine all the above components by hand. Also it can be used as an example for composing components to build a chat UI
35
-
36
- > Note 1: Dont forget to import the stylesheet from the repo too
37
- > Note 2: Name of some components are different from the directories they are in(example -> Channel component is from Conversation component). Please keep that in mind
38
-
39
- ### Prerequisites
40
-
41
- You need to install:
42
- * nodejs 14 LTS https://nodejs.org/en/download/
43
- * npm 7 or above
44
-
45
- ```
46
- npm 14 deprecated warnings for fsevents& chokidar@2.1.8 will be fixed when storybook is updated to webpack 5
47
- https://github.com/storybookjs/storybook/issues/12425#issuecomment-723043137
48
- ```
49
-
50
- We tried development on Mac OS / Linux systems. You might encounter problems in running `npm run build` in Windows machines
51
-
52
- ### Development
53
-
54
- We use storybook for development and rollup for building the npm distribution(bundled JS file)
55
- Make sure you have nodejs and npm installed and run
56
-
57
- ```
58
- Make a copy of env.example and save it as .env
59
- Set your appId STORYBOOK_APP_ID
60
- npm install
61
- npm run storybook
62
- ```
63
- > `npm run generate-component` generates a UI component skeleton in `src/ui`
64
-
65
- * By default, storybook opens in http://localhost:6006/
66
- * Smart Components such as ChannelList, Channel, ChannelSetting, App can be found under `OTHERS`
67
- * Dumb components such as inputs, buttons etc can be found under `OTHERS/UI Components` in storybook sidebar
68
- * Overridden storybook configs can be found in: `./storybook`
69
-
70
- ### Build
71
-
72
- We use rollupJS for building the production bundle script that you want to use inside your applications.
73
-
74
- We have both esm and commonjs output
75
-
76
- ```
77
- npm run build
78
- ```
79
-
80
- The bundled JS code can be found in `./release`
81
- The CSS is in `./release/dist/index.css`
82
-
83
- ## Running the tests
84
-
85
- We have implemented tests for dumb ui components only. Technologies used: Jest, Enzyme and react-dom/test-utils
86
-
87
- ```
88
- npm run test
89
- ```
90
-
91
- ### Lint
92
-
93
- ```
94
- npm run lint
95
- ```
96
- * .eslintrc.json lints ts files and .eslintrc.js lints js files
97
-
98
-
99
- ### Typescript
100
-
101
- * We are trying to progressively move our source code to typescript - which means older JS code and newly written TS code will coxist while we migrate older JS code to TS
102
- * .eslintrc.json lints ts files and .eslintrc.js lints js files
103
- * Type definition file can be `src/index.d.ts` which will be copied to `/release` directory
104
-
105
- ### Creating/exporting new components
106
-
107
- 1. Define your component inside './src'
108
- 2. Add the following line to './src/index.js'
109
- `export NewComponent from './src/location/of/NewComponent';`
110
- 3. Add the following line to './exports.js'
111
- `NewComponent: 'src/location/of/NewComponent',`