@sendbird/uikit-react-native 2.0.3 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. package/README.md +2 -2
  2. package/lib/commonjs/components/ChannelCover.js +22 -1
  3. package/lib/commonjs/components/ChannelCover.js.map +1 -1
  4. package/lib/commonjs/components/MessageRenderer/MessageIncomingAvatar.js +9 -2
  5. package/lib/commonjs/components/MessageRenderer/MessageIncomingAvatar.js.map +1 -1
  6. package/lib/commonjs/components/MessageRenderer/index.js +1 -1
  7. package/lib/commonjs/components/MessageRenderer/index.js.map +1 -1
  8. package/lib/commonjs/components/TypedPlaceholder.js +2 -2
  9. package/lib/commonjs/components/TypedPlaceholder.js.map +1 -1
  10. package/lib/commonjs/components/UserActionBar.js +7 -4
  11. package/lib/commonjs/components/UserActionBar.js.map +1 -1
  12. package/lib/commonjs/containers/GroupChannelPreviewContainer.js +5 -0
  13. package/lib/commonjs/containers/GroupChannelPreviewContainer.js.map +1 -1
  14. package/lib/commonjs/containers/SendbirdUIKitContainer.js +15 -8
  15. package/lib/commonjs/containers/SendbirdUIKitContainer.js.map +1 -1
  16. package/lib/commonjs/contexts/{Localization.js → LocalizationCtx.js} +1 -1
  17. package/lib/commonjs/contexts/LocalizationCtx.js.map +1 -0
  18. package/lib/commonjs/contexts/{PlatformService.js → PlatformServiceCtx.js} +1 -1
  19. package/lib/commonjs/contexts/PlatformServiceCtx.js.map +1 -0
  20. package/lib/commonjs/contexts/{SendbirdChat.js → SendbirdChatCtx.js} +5 -3
  21. package/lib/commonjs/contexts/SendbirdChatCtx.js.map +1 -0
  22. package/lib/commonjs/contexts/UserProfileCtx.js +116 -0
  23. package/lib/commonjs/contexts/UserProfileCtx.js.map +1 -0
  24. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js +3 -1
  25. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -1
  26. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js +4 -2
  27. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -1
  28. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js +15 -10
  29. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
  30. package/lib/commonjs/domain/groupChannel/types.js.map +1 -1
  31. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js +39 -0
  32. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js.map +1 -0
  33. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js +53 -0
  34. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js.map +1 -0
  35. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js +34 -0
  36. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js.map +1 -0
  37. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js +38 -0
  38. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js.map +1 -0
  39. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js +34 -0
  40. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js.map +1 -0
  41. package/lib/commonjs/domain/groupChannelBannedUsers/index.js +62 -0
  42. package/lib/commonjs/domain/groupChannelBannedUsers/index.js.map +1 -0
  43. package/lib/commonjs/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js +45 -0
  44. package/lib/commonjs/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js.map +1 -0
  45. package/lib/commonjs/domain/groupChannelBannedUsers/module/moduleContext.js +45 -0
  46. package/lib/commonjs/domain/groupChannelBannedUsers/module/moduleContext.js.map +1 -0
  47. package/lib/commonjs/domain/groupChannelBannedUsers/types.js +6 -0
  48. package/lib/commonjs/domain/groupChannelBannedUsers/types.js.map +1 -0
  49. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js +32 -30
  50. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
  51. package/lib/commonjs/domain/groupChannelList/types.js.map +1 -1
  52. package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationHeader.js +39 -0
  53. package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationHeader.js.map +1 -0
  54. package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationMenu.js +103 -0
  55. package/lib/commonjs/domain/groupChannelModeration/component/GroupChannelModerationMenu.js.map +1 -0
  56. package/lib/commonjs/domain/groupChannelModeration/index.js +46 -0
  57. package/lib/commonjs/domain/groupChannelModeration/index.js.map +1 -0
  58. package/lib/commonjs/domain/groupChannelModeration/module/createGroupChannelModerationModule.js +33 -0
  59. package/lib/commonjs/domain/groupChannelModeration/module/createGroupChannelModerationModule.js.map +1 -0
  60. package/lib/commonjs/domain/groupChannelModeration/module/moduleContext.js +46 -0
  61. package/lib/commonjs/domain/groupChannelModeration/module/moduleContext.js.map +1 -0
  62. package/lib/commonjs/domain/groupChannelModeration/types.js +6 -0
  63. package/lib/commonjs/domain/groupChannelModeration/types.js.map +1 -0
  64. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js +39 -0
  65. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js.map +1 -0
  66. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +51 -0
  67. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -0
  68. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js +34 -0
  69. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js.map +1 -0
  70. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js +38 -0
  71. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js.map +1 -0
  72. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js +34 -0
  73. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js.map +1 -0
  74. package/lib/commonjs/domain/groupChannelMutedMembers/index.js +70 -0
  75. package/lib/commonjs/domain/groupChannelMutedMembers/index.js.map +1 -0
  76. package/lib/commonjs/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js +45 -0
  77. package/lib/commonjs/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js.map +1 -0
  78. package/lib/commonjs/domain/groupChannelMutedMembers/module/moduleContext.js +45 -0
  79. package/lib/commonjs/domain/groupChannelMutedMembers/module/moduleContext.js.map +1 -0
  80. package/lib/commonjs/domain/groupChannelMutedMembers/types.js +6 -0
  81. package/lib/commonjs/domain/groupChannelMutedMembers/types.js.map +1 -0
  82. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js +44 -0
  83. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js.map +1 -0
  84. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +51 -0
  85. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -0
  86. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js +34 -0
  87. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js.map +1 -0
  88. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js +38 -0
  89. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js.map +1 -0
  90. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js +34 -0
  91. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js.map +1 -0
  92. package/lib/commonjs/domain/groupChannelOperators/index.js +70 -0
  93. package/lib/commonjs/domain/groupChannelOperators/index.js.map +1 -0
  94. package/lib/commonjs/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js +45 -0
  95. package/lib/commonjs/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js.map +1 -0
  96. package/lib/commonjs/domain/groupChannelOperators/module/moduleContext.js +45 -0
  97. package/lib/commonjs/domain/groupChannelOperators/module/moduleContext.js.map +1 -0
  98. package/lib/commonjs/domain/groupChannelOperators/types.js +6 -0
  99. package/lib/commonjs/domain/groupChannelOperators/types.js.map +1 -0
  100. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +1 -8
  101. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
  102. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +11 -0
  103. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
  104. package/lib/commonjs/domain/groupChannelSettings/types.js.map +1 -1
  105. package/lib/commonjs/domain/groupChannelUserList/types.js.map +1 -1
  106. package/lib/commonjs/domain/userList/component/UserListStatusError.js +2 -2
  107. package/lib/commonjs/domain/userList/component/UserListStatusError.js.map +1 -1
  108. package/lib/commonjs/domain/userList/types.js.map +1 -1
  109. package/lib/commonjs/fragments/createGroupChannelBannedUsersFragment.js +101 -0
  110. package/lib/commonjs/fragments/createGroupChannelBannedUsersFragment.js.map +1 -0
  111. package/lib/commonjs/fragments/createGroupChannelCreateFragment.js +9 -25
  112. package/lib/commonjs/fragments/createGroupChannelCreateFragment.js.map +1 -1
  113. package/lib/commonjs/fragments/createGroupChannelFragment.js +11 -4
  114. package/lib/commonjs/fragments/createGroupChannelFragment.js.map +1 -1
  115. package/lib/commonjs/fragments/createGroupChannelInviteFragment.js +21 -37
  116. package/lib/commonjs/fragments/createGroupChannelInviteFragment.js.map +1 -1
  117. package/lib/commonjs/fragments/createGroupChannelListFragment.js +3 -11
  118. package/lib/commonjs/fragments/createGroupChannelListFragment.js.map +1 -1
  119. package/lib/commonjs/fragments/createGroupChannelMembersFragment.js +95 -51
  120. package/lib/commonjs/fragments/createGroupChannelMembersFragment.js.map +1 -1
  121. package/lib/commonjs/fragments/createGroupChannelModerationFragment.js +68 -0
  122. package/lib/commonjs/fragments/createGroupChannelModerationFragment.js.map +1 -0
  123. package/lib/commonjs/fragments/createGroupChannelMutedMembersFragment.js +116 -0
  124. package/lib/commonjs/fragments/createGroupChannelMutedMembersFragment.js.map +1 -0
  125. package/lib/commonjs/fragments/createGroupChannelOperatorsFragment.js +129 -0
  126. package/lib/commonjs/fragments/createGroupChannelOperatorsFragment.js.map +1 -0
  127. package/lib/commonjs/fragments/createGroupChannelRegisterOperatorFragment.js +114 -0
  128. package/lib/commonjs/fragments/createGroupChannelRegisterOperatorFragment.js.map +1 -0
  129. package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js +2 -0
  130. package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js.map +1 -1
  131. package/lib/commonjs/hooks/useConnection.js +4 -0
  132. package/lib/commonjs/hooks/useConnection.js.map +1 -1
  133. package/lib/commonjs/hooks/useContext.js +17 -7
  134. package/lib/commonjs/hooks/useContext.js.map +1 -1
  135. package/lib/commonjs/index.js +77 -9
  136. package/lib/commonjs/index.js.map +1 -1
  137. package/lib/commonjs/localization/StringSet.type.js +60 -11
  138. package/lib/commonjs/localization/StringSet.type.js.map +1 -1
  139. package/lib/commonjs/platform/createFileService.native.js.map +1 -1
  140. package/lib/commonjs/version.js +1 -1
  141. package/lib/commonjs/version.js.map +1 -1
  142. package/lib/module/components/ChannelCover.js +22 -2
  143. package/lib/module/components/ChannelCover.js.map +1 -1
  144. package/lib/module/components/MessageRenderer/MessageIncomingAvatar.js +9 -3
  145. package/lib/module/components/MessageRenderer/MessageIncomingAvatar.js.map +1 -1
  146. package/lib/module/components/MessageRenderer/index.js +1 -1
  147. package/lib/module/components/MessageRenderer/index.js.map +1 -1
  148. package/lib/module/components/TypedPlaceholder.js +2 -2
  149. package/lib/module/components/TypedPlaceholder.js.map +1 -1
  150. package/lib/module/components/UserActionBar.js +8 -5
  151. package/lib/module/components/UserActionBar.js.map +1 -1
  152. package/lib/module/containers/GroupChannelPreviewContainer.js +5 -0
  153. package/lib/module/containers/GroupChannelPreviewContainer.js.map +1 -1
  154. package/lib/module/containers/SendbirdUIKitContainer.js +11 -5
  155. package/lib/module/containers/SendbirdUIKitContainer.js.map +1 -1
  156. package/lib/module/contexts/{Localization.js → LocalizationCtx.js} +1 -1
  157. package/lib/module/contexts/LocalizationCtx.js.map +1 -0
  158. package/lib/module/contexts/{PlatformService.js → PlatformServiceCtx.js} +1 -1
  159. package/lib/module/contexts/PlatformServiceCtx.js.map +1 -0
  160. package/lib/module/contexts/{SendbirdChat.js → SendbirdChatCtx.js} +5 -3
  161. package/lib/module/contexts/SendbirdChatCtx.js.map +1 -0
  162. package/lib/module/contexts/UserProfileCtx.js +94 -0
  163. package/lib/module/contexts/UserProfileCtx.js.map +1 -0
  164. package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js +3 -1
  165. package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -1
  166. package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js +4 -2
  167. package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -1
  168. package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js +16 -11
  169. package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
  170. package/lib/module/domain/groupChannel/types.js.map +1 -1
  171. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js +25 -0
  172. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.js.map +1 -0
  173. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js +40 -0
  174. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js.map +1 -0
  175. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js +21 -0
  176. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.js.map +1 -0
  177. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js +25 -0
  178. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.js.map +1 -0
  179. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js +21 -0
  180. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.js.map +1 -0
  181. package/lib/module/domain/groupChannelBannedUsers/index.js +7 -0
  182. package/lib/module/domain/groupChannelBannedUsers/index.js.map +1 -0
  183. package/lib/module/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js +30 -0
  184. package/lib/module/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.js.map +1 -0
  185. package/lib/module/domain/groupChannelBannedUsers/module/moduleContext.js +25 -0
  186. package/lib/module/domain/groupChannelBannedUsers/module/moduleContext.js.map +1 -0
  187. package/lib/module/domain/groupChannelBannedUsers/types.js +2 -0
  188. package/lib/module/domain/groupChannelBannedUsers/types.js.map +1 -0
  189. package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js +34 -33
  190. package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
  191. package/lib/module/domain/groupChannelList/types.js.map +1 -1
  192. package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationHeader.js +25 -0
  193. package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationHeader.js.map +1 -0
  194. package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationMenu.js +87 -0
  195. package/lib/module/domain/groupChannelModeration/component/GroupChannelModerationMenu.js.map +1 -0
  196. package/lib/module/domain/groupChannelModeration/index.js +5 -0
  197. package/lib/module/domain/groupChannelModeration/index.js.map +1 -0
  198. package/lib/module/domain/groupChannelModeration/module/createGroupChannelModerationModule.js +21 -0
  199. package/lib/module/domain/groupChannelModeration/module/createGroupChannelModerationModule.js.map +1 -0
  200. package/lib/module/domain/groupChannelModeration/module/moduleContext.js +26 -0
  201. package/lib/module/domain/groupChannelModeration/module/moduleContext.js.map +1 -0
  202. package/lib/module/domain/groupChannelModeration/types.js +2 -0
  203. package/lib/module/domain/groupChannelModeration/types.js.map +1 -0
  204. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js +25 -0
  205. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.js.map +1 -0
  206. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +38 -0
  207. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -0
  208. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js +21 -0
  209. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.js.map +1 -0
  210. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js +25 -0
  211. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.js.map +1 -0
  212. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js +21 -0
  213. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.js.map +1 -0
  214. package/lib/module/domain/groupChannelMutedMembers/index.js +8 -0
  215. package/lib/module/domain/groupChannelMutedMembers/index.js.map +1 -0
  216. package/lib/module/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js +30 -0
  217. package/lib/module/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.js.map +1 -0
  218. package/lib/module/domain/groupChannelMutedMembers/module/moduleContext.js +25 -0
  219. package/lib/module/domain/groupChannelMutedMembers/module/moduleContext.js.map +1 -0
  220. package/lib/module/domain/groupChannelMutedMembers/types.js +2 -0
  221. package/lib/module/domain/groupChannelMutedMembers/types.js.map +1 -0
  222. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js +30 -0
  223. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.js.map +1 -0
  224. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +38 -0
  225. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -0
  226. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js +21 -0
  227. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.js.map +1 -0
  228. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js +25 -0
  229. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.js.map +1 -0
  230. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js +21 -0
  231. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.js.map +1 -0
  232. package/lib/module/domain/groupChannelOperators/index.js +8 -0
  233. package/lib/module/domain/groupChannelOperators/index.js.map +1 -0
  234. package/lib/module/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js +30 -0
  235. package/lib/module/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.js.map +1 -0
  236. package/lib/module/domain/groupChannelOperators/module/moduleContext.js +25 -0
  237. package/lib/module/domain/groupChannelOperators/module/moduleContext.js.map +1 -0
  238. package/lib/module/domain/groupChannelOperators/types.js +2 -0
  239. package/lib/module/domain/groupChannelOperators/types.js.map +1 -0
  240. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +2 -8
  241. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
  242. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +11 -0
  243. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
  244. package/lib/module/domain/groupChannelSettings/types.js.map +1 -1
  245. package/lib/module/domain/groupChannelUserList/types.js.map +1 -1
  246. package/lib/module/domain/userList/component/UserListStatusError.js +2 -2
  247. package/lib/module/domain/userList/component/UserListStatusError.js.map +1 -1
  248. package/lib/module/domain/userList/types.js.map +1 -1
  249. package/lib/module/fragments/createGroupChannelBannedUsersFragment.js +84 -0
  250. package/lib/module/fragments/createGroupChannelBannedUsersFragment.js.map +1 -0
  251. package/lib/module/fragments/createGroupChannelCreateFragment.js +10 -26
  252. package/lib/module/fragments/createGroupChannelCreateFragment.js.map +1 -1
  253. package/lib/module/fragments/createGroupChannelFragment.js +11 -4
  254. package/lib/module/fragments/createGroupChannelFragment.js.map +1 -1
  255. package/lib/module/fragments/createGroupChannelInviteFragment.js +22 -37
  256. package/lib/module/fragments/createGroupChannelInviteFragment.js.map +1 -1
  257. package/lib/module/fragments/createGroupChannelListFragment.js +4 -11
  258. package/lib/module/fragments/createGroupChannelListFragment.js.map +1 -1
  259. package/lib/module/fragments/createGroupChannelMembersFragment.js +99 -56
  260. package/lib/module/fragments/createGroupChannelMembersFragment.js.map +1 -1
  261. package/lib/module/fragments/createGroupChannelModerationFragment.js +53 -0
  262. package/lib/module/fragments/createGroupChannelModerationFragment.js.map +1 -0
  263. package/lib/module/fragments/createGroupChannelMutedMembersFragment.js +98 -0
  264. package/lib/module/fragments/createGroupChannelMutedMembersFragment.js.map +1 -0
  265. package/lib/module/fragments/createGroupChannelOperatorsFragment.js +111 -0
  266. package/lib/module/fragments/createGroupChannelOperatorsFragment.js.map +1 -0
  267. package/lib/module/fragments/createGroupChannelRegisterOperatorFragment.js +94 -0
  268. package/lib/module/fragments/createGroupChannelRegisterOperatorFragment.js.map +1 -0
  269. package/lib/module/fragments/createGroupChannelSettingsFragment.js +2 -0
  270. package/lib/module/fragments/createGroupChannelSettingsFragment.js.map +1 -1
  271. package/lib/module/hooks/useConnection.js +4 -0
  272. package/lib/module/hooks/useConnection.js.map +1 -1
  273. package/lib/module/hooks/useContext.js +9 -3
  274. package/lib/module/hooks/useContext.js.map +1 -1
  275. package/lib/module/index.js +10 -4
  276. package/lib/module/index.js.map +1 -1
  277. package/lib/module/localization/StringSet.type.js +60 -11
  278. package/lib/module/localization/StringSet.type.js.map +1 -1
  279. package/lib/module/platform/createFileService.native.js.map +1 -1
  280. package/lib/module/version.js +1 -1
  281. package/lib/module/version.js.map +1 -1
  282. package/lib/typescript/src/components/ChannelCover.d.ts +1 -1
  283. package/lib/typescript/src/components/TypedPlaceholder.d.ts +1 -1
  284. package/lib/typescript/src/components/UserActionBar.d.ts +4 -2
  285. package/lib/typescript/src/containers/SendbirdUIKitContainer.d.ts +9 -7
  286. package/lib/typescript/src/contexts/{Localization.d.ts → LocalizationCtx.d.ts} +0 -0
  287. package/lib/typescript/src/contexts/{PlatformService.d.ts → PlatformServiceCtx.d.ts} +0 -0
  288. package/lib/typescript/src/contexts/{SendbirdChat.d.ts → SendbirdChatCtx.d.ts} +8 -4
  289. package/lib/typescript/src/contexts/UserProfileCtx.d.ts +15 -0
  290. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/EditInput.d.ts +2 -1
  291. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/SendInput.d.ts +3 -1
  292. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/index.d.ts +1 -1
  293. package/lib/typescript/src/domain/groupChannel/types.d.ts +1 -1
  294. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.d.ts +3 -0
  295. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.d.ts +3 -0
  296. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.d.ts +2 -0
  297. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.d.ts +3 -0
  298. package/lib/typescript/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.d.ts +2 -0
  299. package/lib/typescript/src/domain/groupChannelBannedUsers/index.d.ts +6 -0
  300. package/lib/typescript/src/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.d.ts +3 -0
  301. package/lib/typescript/src/domain/groupChannelBannedUsers/module/moduleContext.d.ts +3 -0
  302. package/lib/typescript/src/domain/groupChannelBannedUsers/types.d.ts +47 -0
  303. package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListTypeSelector.d.ts +1 -1
  304. package/lib/typescript/src/domain/groupChannelList/types.d.ts +3 -9
  305. package/lib/typescript/src/domain/groupChannelModeration/component/GroupChannelModerationHeader.d.ts +3 -0
  306. package/lib/typescript/src/domain/groupChannelModeration/component/GroupChannelModerationMenu.d.ts +3 -0
  307. package/lib/typescript/src/domain/groupChannelModeration/index.d.ts +4 -0
  308. package/lib/typescript/src/domain/groupChannelModeration/module/createGroupChannelModerationModule.d.ts +3 -0
  309. package/lib/typescript/src/domain/groupChannelModeration/module/moduleContext.d.ts +3 -0
  310. package/lib/typescript/src/domain/groupChannelModeration/types.d.ts +43 -0
  311. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.d.ts +3 -0
  312. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.d.ts +3 -0
  313. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.d.ts +2 -0
  314. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.d.ts +3 -0
  315. package/lib/typescript/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.d.ts +2 -0
  316. package/lib/typescript/src/domain/groupChannelMutedMembers/index.d.ts +7 -0
  317. package/lib/typescript/src/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.d.ts +3 -0
  318. package/lib/typescript/src/domain/groupChannelMutedMembers/module/moduleContext.d.ts +3 -0
  319. package/lib/typescript/src/domain/groupChannelMutedMembers/types.d.ts +47 -0
  320. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.d.ts +3 -0
  321. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsList.d.ts +3 -0
  322. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.d.ts +2 -0
  323. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.d.ts +3 -0
  324. package/lib/typescript/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.d.ts +2 -0
  325. package/lib/typescript/src/domain/groupChannelOperators/index.d.ts +7 -0
  326. package/lib/typescript/src/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.d.ts +3 -0
  327. package/lib/typescript/src/domain/groupChannelOperators/module/moduleContext.d.ts +3 -0
  328. package/lib/typescript/src/domain/groupChannelOperators/types.d.ts +49 -0
  329. package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsInfo.d.ts +1 -1
  330. package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.d.ts +1 -1
  331. package/lib/typescript/src/domain/groupChannelSettings/types.d.ts +2 -0
  332. package/lib/typescript/src/domain/groupChannelUserList/types.d.ts +18 -12
  333. package/lib/typescript/src/domain/userList/component/UserListStatusError.d.ts +2 -2
  334. package/lib/typescript/src/domain/userList/types.d.ts +4 -3
  335. package/lib/typescript/src/fragments/createGroupChannelBannedUsersFragment.d.ts +3 -0
  336. package/lib/typescript/src/fragments/createGroupChannelCreateFragment.d.ts +2 -1
  337. package/lib/typescript/src/fragments/createGroupChannelInviteFragment.d.ts +2 -1
  338. package/lib/typescript/src/fragments/createGroupChannelModerationFragment.d.ts +3 -0
  339. package/lib/typescript/src/fragments/createGroupChannelMutedMembersFragment.d.ts +3 -0
  340. package/lib/typescript/src/fragments/createGroupChannelOperatorsFragment.d.ts +3 -0
  341. package/lib/typescript/src/fragments/createGroupChannelRegisterOperatorFragment.d.ts +5 -0
  342. package/lib/typescript/src/hooks/useContext.d.ts +3 -1
  343. package/lib/typescript/src/index.d.ts +10 -4
  344. package/lib/typescript/src/localization/StringSet.type.d.ts +47 -7
  345. package/lib/typescript/src/platform/createFileService.native.d.ts +1 -1
  346. package/lib/typescript/src/version.d.ts +1 -1
  347. package/package.json +10 -10
  348. package/src/components/ChannelCover.tsx +23 -3
  349. package/src/components/MessageRenderer/MessageIncomingAvatar.tsx +9 -2
  350. package/src/components/MessageRenderer/index.tsx +1 -1
  351. package/src/components/TypedPlaceholder.tsx +4 -4
  352. package/src/components/UserActionBar.tsx +10 -4
  353. package/src/containers/GroupChannelPreviewContainer.tsx +5 -0
  354. package/src/containers/SendbirdUIKitContainer.tsx +29 -10
  355. package/src/contexts/{Localization.tsx → LocalizationCtx.tsx} +0 -0
  356. package/src/contexts/{PlatformService.tsx → PlatformServiceCtx.tsx} +0 -0
  357. package/src/contexts/{SendbirdChat.tsx → SendbirdChatCtx.tsx} +10 -4
  358. package/src/contexts/UserProfileCtx.tsx +126 -0
  359. package/src/domain/groupChannel/component/GroupChannelInput/EditInput.tsx +3 -1
  360. package/src/domain/groupChannel/component/GroupChannelInput/SendInput.tsx +17 -3
  361. package/src/domain/groupChannel/component/GroupChannelInput/index.tsx +11 -8
  362. package/src/domain/groupChannel/types.ts +1 -1
  363. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersHeader.tsx +14 -0
  364. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.tsx +32 -0
  365. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusEmpty.tsx +18 -0
  366. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusError.tsx +19 -0
  367. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersStatusLoading.tsx +18 -0
  368. package/src/domain/groupChannelBannedUsers/index.ts +6 -0
  369. package/src/domain/groupChannelBannedUsers/module/createGroupChannelBannedUsersModule.tsx +21 -0
  370. package/src/domain/groupChannelBannedUsers/module/moduleContext.tsx +30 -0
  371. package/src/domain/groupChannelBannedUsers/types.ts +50 -0
  372. package/src/domain/groupChannelList/component/GroupChannelListTypeSelector.tsx +37 -43
  373. package/src/domain/groupChannelList/types.ts +3 -9
  374. package/src/domain/groupChannelModeration/component/GroupChannelModerationHeader.tsx +14 -0
  375. package/src/domain/groupChannelModeration/component/GroupChannelModerationMenu.tsx +84 -0
  376. package/src/domain/groupChannelModeration/index.ts +4 -0
  377. package/src/domain/groupChannelModeration/module/createGroupChannelModerationModule.tsx +15 -0
  378. package/src/domain/groupChannelModeration/module/moduleContext.tsx +33 -0
  379. package/src/domain/groupChannelModeration/types.ts +48 -0
  380. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersHeader.tsx +14 -0
  381. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.tsx +30 -0
  382. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusEmpty.tsx +18 -0
  383. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusError.tsx +19 -0
  384. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersStatusLoading.tsx +18 -0
  385. package/src/domain/groupChannelMutedMembers/index.ts +7 -0
  386. package/src/domain/groupChannelMutedMembers/module/createGroupChannelMutedMembersModule.tsx +21 -0
  387. package/src/domain/groupChannelMutedMembers/module/moduleContext.tsx +30 -0
  388. package/src/domain/groupChannelMutedMembers/types.ts +50 -0
  389. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsHeader.tsx +25 -0
  390. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsList.tsx +29 -0
  391. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusEmpty.tsx +18 -0
  392. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusError.tsx +19 -0
  393. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsStatusLoading.tsx +18 -0
  394. package/src/domain/groupChannelOperators/index.ts +7 -0
  395. package/src/domain/groupChannelOperators/module/createGroupChannelOperatorsModule.tsx +21 -0
  396. package/src/domain/groupChannelOperators/module/moduleContext.tsx +30 -0
  397. package/src/domain/groupChannelOperators/types.ts +52 -0
  398. package/src/domain/groupChannelSettings/component/GroupChannelSettingsInfo.tsx +2 -7
  399. package/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.tsx +9 -0
  400. package/src/domain/groupChannelSettings/types.ts +2 -0
  401. package/src/domain/groupChannelUserList/types.ts +27 -12
  402. package/src/domain/userList/component/UserListStatusError.tsx +2 -2
  403. package/src/domain/userList/types.ts +4 -1
  404. package/src/fragments/createGroupChannelBannedUsersFragment.tsx +80 -0
  405. package/src/fragments/createGroupChannelCreateFragment.tsx +13 -33
  406. package/src/fragments/createGroupChannelFragment.tsx +12 -5
  407. package/src/fragments/createGroupChannelInviteFragment.tsx +28 -50
  408. package/src/fragments/createGroupChannelListFragment.tsx +4 -10
  409. package/src/fragments/createGroupChannelMembersFragment.tsx +110 -67
  410. package/src/fragments/createGroupChannelModerationFragment.tsx +57 -0
  411. package/src/fragments/createGroupChannelMutedMembersFragment.tsx +93 -0
  412. package/src/fragments/createGroupChannelOperatorsFragment.tsx +101 -0
  413. package/src/fragments/createGroupChannelRegisterOperatorFragment.tsx +94 -0
  414. package/src/fragments/createGroupChannelSettingsFragment.tsx +9 -1
  415. package/src/hooks/useConnection.ts +2 -0
  416. package/src/hooks/useContext.ts +10 -3
  417. package/src/index.ts +10 -4
  418. package/src/localization/StringSet.type.ts +99 -14
  419. package/src/platform/createFileService.native.ts +1 -1
  420. package/src/version.ts +1 -1
  421. package/lib/commonjs/contexts/Localization.js.map +0 -1
  422. package/lib/commonjs/contexts/PlatformService.js.map +0 -1
  423. package/lib/commonjs/contexts/SendbirdChat.js.map +0 -1
  424. package/lib/module/contexts/Localization.js.map +0 -1
  425. package/lib/module/contexts/PlatformService.js.map +0 -1
  426. package/lib/module/contexts/SendbirdChat.js.map +0 -1
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelMutedMembersProps } from '../types';
2
+ declare const GroupChannelMutedMembersList: ({ renderUser, mutedMembers, ListEmptyComponent, }: GroupChannelMutedMembersProps['List']) => JSX.Element;
3
+ export default GroupChannelMutedMembersList;
@@ -0,0 +1,2 @@
1
+ declare const GroupChannelMutedMembersStatusEmpty: () => JSX.Element;
2
+ export default GroupChannelMutedMembersStatusEmpty;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelMutedMembersModule } from '../types';
2
+ declare const GroupChannelMutedMembersStatusError: GroupChannelMutedMembersModule['StatusError'];
3
+ export default GroupChannelMutedMembersStatusError;
@@ -0,0 +1,2 @@
1
+ declare const GroupChannelMutedMembersStatusLoading: () => JSX.Element;
2
+ export default GroupChannelMutedMembersStatusLoading;
@@ -0,0 +1,7 @@
1
+ export { default as GroupChannelMutedMembersList } from './component/GroupChannelMutedMembersList';
2
+ export { default as GroupChannelMutedMembersHeader } from './component/GroupChannelMutedMembersHeader';
3
+ export { default as GroupChannelMutedMembersStatusEmpty } from './component/GroupChannelMutedMembersStatusEmpty';
4
+ export { default as GroupChannelMutedMembersStatusError } from './component/GroupChannelMutedMembersStatusError';
5
+ export { default as GroupChannelMutedMembersStatusLoading } from './component/GroupChannelMutedMembersStatusLoading';
6
+ export { default as createGroupChannelMutedMembersModule } from './module/createGroupChannelMutedMembersModule';
7
+ export { GroupChannelMutedMembersContextsProvider, GroupChannelMutedMembersContexts } from './module/moduleContext';
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelMutedMembersModule } from '../types';
2
+ declare const createGroupChannelMutedMembersModule: ({ Header, List, StatusEmpty, StatusError, StatusLoading, Provider, ...module }?: Partial<GroupChannelMutedMembersModule>) => GroupChannelMutedMembersModule;
3
+ export default createGroupChannelMutedMembersModule;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelMutedMembersContextsType, GroupChannelMutedMembersModule } from '../types';
2
+ export declare const GroupChannelMutedMembersContexts: GroupChannelMutedMembersContextsType;
3
+ export declare const GroupChannelMutedMembersContextsProvider: GroupChannelMutedMembersModule['Provider'];
@@ -0,0 +1,47 @@
1
+ import type React from 'react';
2
+ import type { SendbirdGroupChannel, SendbirdRestrictedUser } from '@sendbird/uikit-utils';
3
+ import type { CommonComponent } from '../../types';
4
+ export declare type GroupChannelMutedMembersProps = {
5
+ Fragment: {
6
+ channel: SendbirdGroupChannel;
7
+ onPressHeaderLeft: GroupChannelMutedMembersProps['Header']['onPressHeaderLeft'];
8
+ renderUser?: GroupChannelMutedMembersProps['List']['renderUser'];
9
+ };
10
+ Header: {
11
+ onPressHeaderLeft: () => void;
12
+ };
13
+ List: {
14
+ renderUser: (props: {
15
+ user: SendbirdRestrictedUser;
16
+ }) => React.ReactElement | null;
17
+ onLoadNext: () => void;
18
+ mutedMembers: SendbirdRestrictedUser[];
19
+ ListEmptyComponent?: React.ReactElement;
20
+ };
21
+ StatusError: {
22
+ onPressRetry: () => void;
23
+ };
24
+ Provider: {
25
+ channel: SendbirdGroupChannel;
26
+ };
27
+ };
28
+ /**
29
+ * Internal context for GroupChannelMutedMembers
30
+ * For example, the developer can create a custom header
31
+ * with getting data from the domain context
32
+ * */
33
+ export declare type GroupChannelMutedMembersContextsType = {
34
+ Fragment: React.Context<{
35
+ headerTitle: string;
36
+ channel: SendbirdGroupChannel;
37
+ }>;
38
+ };
39
+ export interface GroupChannelMutedMembersModule {
40
+ Provider: CommonComponent<GroupChannelMutedMembersProps['Provider']>;
41
+ Header: CommonComponent<GroupChannelMutedMembersProps['Header']>;
42
+ List: CommonComponent<GroupChannelMutedMembersProps['List']>;
43
+ StatusEmpty: CommonComponent;
44
+ StatusLoading: CommonComponent;
45
+ StatusError: CommonComponent<GroupChannelMutedMembersProps['StatusError']>;
46
+ }
47
+ export declare type GroupChannelMutedMembersFragment = CommonComponent<GroupChannelMutedMembersProps['Fragment']>;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelOperatorsProps } from '../types';
2
+ declare const GroupChannelOperatorsHeader: ({ onPressHeaderLeft, onPressHeaderRight, }: GroupChannelOperatorsProps['Header']) => JSX.Element;
3
+ export default GroupChannelOperatorsHeader;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelOperatorsProps } from '../types';
2
+ declare const GroupChannelOperatorsList: ({ operators, renderUser, ListEmptyComponent, }: GroupChannelOperatorsProps['List']) => JSX.Element;
3
+ export default GroupChannelOperatorsList;
@@ -0,0 +1,2 @@
1
+ declare const GroupChannelOperatorsStatusEmpty: () => JSX.Element;
2
+ export default GroupChannelOperatorsStatusEmpty;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelOperatorsModule } from '../types';
2
+ declare const GroupChannelOperatorsStatusError: GroupChannelOperatorsModule['StatusError'];
3
+ export default GroupChannelOperatorsStatusError;
@@ -0,0 +1,2 @@
1
+ declare const GroupChannelOperatorsStatusLoading: () => JSX.Element;
2
+ export default GroupChannelOperatorsStatusLoading;
@@ -0,0 +1,7 @@
1
+ export { default as GroupChannelOperatorsList } from './component/GroupChannelOperatorsList';
2
+ export { default as GroupChannelOperatorsHeader } from './component/GroupChannelOperatorsHeader';
3
+ export { default as GroupChannelOperatorsStatusEmpty } from './component/GroupChannelOperatorsStatusEmpty';
4
+ export { default as GroupChannelOperatorsStatusError } from './component/GroupChannelOperatorsStatusError';
5
+ export { default as GroupChannelOperatorsStatusLoading } from './component/GroupChannelOperatorsStatusLoading';
6
+ export { default as createGroupChannelOperatorsModule } from './module/createGroupChannelOperatorsModule';
7
+ export { GroupChannelOperatorsContextsProvider, GroupChannelOperatorsContexts } from './module/moduleContext';
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelOperatorsModule } from '../types';
2
+ declare const createGroupChannelOperatorsModule: ({ Header, List, StatusEmpty, StatusError, StatusLoading, Provider, ...module }?: Partial<GroupChannelOperatorsModule>) => GroupChannelOperatorsModule;
3
+ export default createGroupChannelOperatorsModule;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelOperatorsContextsType, GroupChannelOperatorsModule } from '../types';
2
+ export declare const GroupChannelOperatorsContexts: GroupChannelOperatorsContextsType;
3
+ export declare const GroupChannelOperatorsContextsProvider: GroupChannelOperatorsModule['Provider'];
@@ -0,0 +1,49 @@
1
+ import type React from 'react';
2
+ import type { SendbirdGroupChannel, SendbirdUser } from '@sendbird/uikit-utils';
3
+ import type { CommonComponent } from '../../types';
4
+ export declare type GroupChannelOperatorsProps = {
5
+ Fragment: {
6
+ channel: SendbirdGroupChannel;
7
+ onPressHeaderLeft: GroupChannelOperatorsProps['Header']['onPressHeaderLeft'];
8
+ onPressHeaderRight: GroupChannelOperatorsProps['Header']['onPressHeaderRight'];
9
+ renderUser?: GroupChannelOperatorsProps['List']['renderUser'];
10
+ };
11
+ Header: {
12
+ onPressHeaderLeft: () => void;
13
+ onPressHeaderRight: () => void;
14
+ };
15
+ List: {
16
+ operators: SendbirdUser[];
17
+ onLoadNext: () => void;
18
+ renderUser: (props: {
19
+ user: SendbirdUser;
20
+ }) => React.ReactElement | null;
21
+ ListEmptyComponent?: React.ReactElement;
22
+ };
23
+ StatusError: {
24
+ onPressRetry: () => void;
25
+ };
26
+ Provider: {
27
+ channel: SendbirdGroupChannel;
28
+ };
29
+ };
30
+ /**
31
+ * Internal context for GroupChannelOperators
32
+ * For example, the developer can create a custom header
33
+ * with getting data from the domain context
34
+ * */
35
+ export declare type GroupChannelOperatorsContextsType = {
36
+ Fragment: React.Context<{
37
+ headerTitle: string;
38
+ channel: SendbirdGroupChannel;
39
+ }>;
40
+ };
41
+ export interface GroupChannelOperatorsModule {
42
+ Provider: CommonComponent<GroupChannelOperatorsProps['Provider']>;
43
+ Header: CommonComponent<GroupChannelOperatorsProps['Header']>;
44
+ List: CommonComponent<GroupChannelOperatorsProps['List']>;
45
+ StatusEmpty: CommonComponent;
46
+ StatusLoading: CommonComponent;
47
+ StatusError: CommonComponent<GroupChannelOperatorsProps['StatusError']>;
48
+ }
49
+ export declare type GroupChannelOperatorsFragment = CommonComponent<GroupChannelOperatorsProps['Fragment']>;
@@ -1,3 +1,3 @@
1
1
  import type { GroupChannelSettingsProps } from '../types';
2
- declare const GroupChannelSettingsInfo: (_: GroupChannelSettingsProps['Info']) => JSX.Element | null;
2
+ declare const GroupChannelSettingsInfo: (_: GroupChannelSettingsProps['Info']) => JSX.Element;
3
3
  export default GroupChannelSettingsInfo;
@@ -1,3 +1,3 @@
1
1
  import type { GroupChannelSettingsProps } from '../types';
2
- declare const GroupChannelSettingsMenu: ({ onPressMenuMembers, onPressMenuLeaveChannel, menuItemsCreator, }: GroupChannelSettingsProps['Menu']) => JSX.Element;
2
+ declare const GroupChannelSettingsMenu: ({ onPressMenuModeration, onPressMenuMembers, onPressMenuLeaveChannel, menuItemsCreator, }: GroupChannelSettingsProps['Menu']) => JSX.Element;
3
3
  export default GroupChannelSettingsMenu;
@@ -6,6 +6,7 @@ export interface GroupChannelSettingsProps {
6
6
  Fragment: {
7
7
  channel: GroupChannelSettingsProps['Provider']['channel'];
8
8
  onPressHeaderLeft: GroupChannelSettingsProps['Header']['onPressHeaderLeft'];
9
+ onPressMenuModeration: GroupChannelSettingsProps['Menu']['onPressMenuModeration'];
9
10
  onPressMenuMembers: GroupChannelSettingsProps['Menu']['onPressMenuMembers'];
10
11
  onPressMenuLeaveChannel: GroupChannelSettingsProps['Menu']['onPressMenuLeaveChannel'];
11
12
  menuItemsCreator?: GroupChannelSettingsProps['Menu']['menuItemsCreator'];
@@ -15,6 +16,7 @@ export interface GroupChannelSettingsProps {
15
16
  };
16
17
  Info: {};
17
18
  Menu: {
19
+ onPressMenuModeration: () => void;
18
20
  onPressMenuMembers: () => void;
19
21
  onPressMenuLeaveChannel: () => void;
20
22
  menuItemsCreator?: (defaultMenuItems: MenuBarProps[]) => MenuBarProps[];
@@ -1,35 +1,32 @@
1
- import type { UseUserListOptions } from '@sendbird/uikit-chat-hooks';
2
- import type { SendbirdGroupChannel, SendbirdGroupChannelCreateParams } from '@sendbird/uikit-utils';
1
+ import type { UseUserListOptions, UserStruct } from '@sendbird/uikit-chat-hooks';
2
+ import type { SendbirdGroupChannel, SendbirdGroupChannelCreateParams, SendbirdMember } from '@sendbird/uikit-utils';
3
3
  import type { CommonComponent } from '../../types';
4
4
  import type { GroupChannelType } from '../groupChannelList/types';
5
5
  import type { UserListProps } from '../userList/types';
6
- declare type UserIds = string[];
7
- export interface GroupChannelCreateProps<User> {
6
+ export interface GroupChannelCreateProps<User extends UserStruct> {
8
7
  Fragment: {
9
8
  onPressHeaderLeft: () => void;
10
9
  onCreateChannel: (channel: SendbirdGroupChannel) => void;
11
10
  channelType?: GroupChannelType;
12
- userIdsGenerator?: (users: User[]) => UserIds;
13
11
  onBeforeCreateChannel?: (params: SendbirdGroupChannelCreateParams, users: User[]) => SendbirdGroupChannelCreateParams | Promise<SendbirdGroupChannelCreateParams>;
14
12
  sortComparator?: UseUserListOptions<User>['sortComparator'];
15
13
  queryCreator?: UseUserListOptions<User>['queryCreator'];
16
14
  renderUser?: UserListProps<User>['List']['renderUser'];
17
15
  };
18
16
  }
19
- export declare type GroupChannelCreateFragment<User> = CommonComponent<GroupChannelCreateProps<User>['Fragment']>;
20
- export interface GroupChannelInviteProps<User> {
17
+ export declare type GroupChannelCreateFragment<User extends UserStruct> = CommonComponent<GroupChannelCreateProps<User>['Fragment']>;
18
+ export interface GroupChannelInviteProps<User extends UserStruct> {
21
19
  Fragment: {
22
20
  channel: SendbirdGroupChannel;
23
21
  onPressHeaderLeft: () => void;
24
22
  onInviteMembers: (channel: SendbirdGroupChannel) => void;
25
- userIdsGenerator?: (users: User[]) => UserIds;
26
23
  queryCreator?: UseUserListOptions<User>['queryCreator'];
27
24
  renderUser?: UserListProps<User>['List']['renderUser'];
28
25
  sortComparator?: UseUserListOptions<User>['sortComparator'];
29
26
  };
30
27
  }
31
- export declare type GroupChannelInviteFragment<User> = CommonComponent<GroupChannelInviteProps<User>['Fragment']>;
32
- export interface GroupChannelMembersProps<User> {
28
+ export declare type GroupChannelInviteFragment<User extends UserStruct> = CommonComponent<GroupChannelInviteProps<User>['Fragment']>;
29
+ export interface GroupChannelMembersProps<User extends UserStruct> {
33
30
  Fragment: {
34
31
  channel: SendbirdGroupChannel;
35
32
  onPressHeaderLeft: () => void;
@@ -38,5 +35,14 @@ export interface GroupChannelMembersProps<User> {
38
35
  renderUser?: UserListProps<User>['List']['renderUser'];
39
36
  };
40
37
  }
41
- export declare type GroupChannelMembersFragment<User> = CommonComponent<GroupChannelMembersProps<User>['Fragment']>;
42
- export {};
38
+ export declare type GroupChannelMembersFragment<User extends UserStruct> = CommonComponent<GroupChannelMembersProps<User>['Fragment']>;
39
+ export interface GroupChannelRegisterOperatorProps<User extends UserStruct = SendbirdMember> {
40
+ Fragment: {
41
+ channel: SendbirdGroupChannel;
42
+ onPressHeaderLeft: () => void;
43
+ onPressHeaderRight: (channel: SendbirdGroupChannel) => void;
44
+ sortComparator?: UseUserListOptions<User>['sortComparator'];
45
+ renderUser?: UserListProps<User>['List']['renderUser'];
46
+ };
47
+ }
48
+ export declare type GroupChannelRegisterOperatorFragment<User extends UserStruct> = CommonComponent<GroupChannelRegisterOperatorProps<User>['Fragment']>;
@@ -1,3 +1,3 @@
1
1
  import type { UserListModule } from '../types';
2
- declare const UserListStatusLoading: UserListModule<unknown>['StatusError'];
3
- export default UserListStatusLoading;
2
+ declare const UserListStatusError: UserListModule<unknown>['StatusError'];
3
+ export default UserListStatusError;
@@ -30,6 +30,9 @@ export interface UserListProps<User> {
30
30
  headerTitle: string;
31
31
  headerRight: (selectedUsers: Array<User>) => string;
32
32
  };
33
+ StatusError: {
34
+ onPressRetry: () => void;
35
+ };
33
36
  }
34
37
  /**
35
38
  * Internal context for UserList
@@ -52,7 +55,5 @@ export interface UserListModule<User> {
52
55
  List: CommonComponent<UserListProps<User>['List']>;
53
56
  StatusEmpty: CommonComponent;
54
57
  StatusLoading: CommonComponent;
55
- StatusError: CommonComponent<{
56
- onPressRetry: () => void;
57
- }>;
58
+ StatusError: CommonComponent<UserListProps<User>['StatusError']>;
58
59
  }
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelBannedUsersFragment, GroupChannelBannedUsersModule } from '../domain/groupChannelBannedUsers/types';
2
+ declare const createGroupChannelBannedUsersFragment: (initModule?: Partial<GroupChannelBannedUsersModule>) => GroupChannelBannedUsersFragment;
3
+ export default createGroupChannelBannedUsersFragment;
@@ -1,4 +1,5 @@
1
+ import { UserStruct } from '@sendbird/uikit-chat-hooks';
1
2
  import type { GroupChannelCreateFragment } from '../domain/groupChannelUserList/types';
2
3
  import type { UserListModule } from '../domain/userList/types';
3
- declare const createGroupChannelCreateFragment: <UserType>(initModule?: Partial<UserListModule<UserType>> | undefined) => GroupChannelCreateFragment<UserType>;
4
+ declare const createGroupChannelCreateFragment: <UserType extends UserStruct>(initModule?: Partial<UserListModule<UserType>> | undefined) => GroupChannelCreateFragment<UserType>;
4
5
  export default createGroupChannelCreateFragment;
@@ -1,4 +1,5 @@
1
+ import { UserStruct } from '@sendbird/uikit-chat-hooks';
1
2
  import type { GroupChannelInviteFragment } from '../domain/groupChannelUserList/types';
2
3
  import type { UserListModule } from '../domain/userList/types';
3
- declare const createGroupChannelInviteFragment: <UserType>(initModule?: Partial<UserListModule<UserType>> | undefined) => GroupChannelInviteFragment<UserType>;
4
+ declare const createGroupChannelInviteFragment: <UserType extends UserStruct>(initModule?: Partial<UserListModule<UserType>> | undefined) => GroupChannelInviteFragment<UserType>;
4
5
  export default createGroupChannelInviteFragment;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelModerationFragment, GroupChannelModerationModule } from '../domain/groupChannelModeration/types';
2
+ declare const createGroupChannelModerationFragment: (initModule?: Partial<GroupChannelModerationModule>) => GroupChannelModerationFragment;
3
+ export default createGroupChannelModerationFragment;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelMutedMembersFragment, GroupChannelMutedMembersModule } from '../domain/groupChannelMutedMembers/types';
2
+ declare const createGroupChannelMutedMembersFragment: (initModule?: Partial<GroupChannelMutedMembersModule>) => GroupChannelMutedMembersFragment;
3
+ export default createGroupChannelMutedMembersFragment;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelOperatorsFragment, GroupChannelOperatorsModule } from '../domain/groupChannelOperators/types';
2
+ declare const createGroupChannelOperatorsFragment: (initModule?: Partial<GroupChannelOperatorsModule>) => GroupChannelOperatorsFragment;
3
+ export default createGroupChannelOperatorsFragment;
@@ -0,0 +1,5 @@
1
+ import type { SendbirdMember } from '@sendbird/uikit-utils';
2
+ import type { GroupChannelRegisterOperatorFragment } from '../domain/groupChannelUserList/types';
3
+ import type { UserListModule } from '../domain/userList/types';
4
+ declare const createGroupChannelRegisterOperatorFragment: (initModule?: Partial<UserListModule<SendbirdMember>>) => GroupChannelRegisterOperatorFragment<SendbirdMember>;
5
+ export default createGroupChannelRegisterOperatorFragment;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- export declare const useLocalization: () => import("../contexts/Localization").LocalizationContextType;
2
+ export declare const useLocalization: () => import("../contexts/LocalizationCtx").LocalizationContextType;
3
3
  export declare const usePlatformService: () => {
4
4
  fileService: import("..").FileServiceInterface;
5
5
  clipboardService: import("..").ClipboardServiceInterface;
@@ -18,9 +18,11 @@ export declare const useSendbirdChat: () => {
18
18
  autoPushTokenRegistrationEnabled: boolean;
19
19
  channelListTypingIndicatorEnabled: boolean;
20
20
  channelListMessageReceiptStatusEnabled: boolean;
21
+ useUserIdForNicknameEnabled: boolean;
21
22
  deliveryReceiptEnabled: boolean;
22
23
  broadcastChannelEnabled: boolean;
23
24
  superGroupChannelEnabled: boolean;
24
25
  reactionEnabled: boolean;
25
26
  };
26
27
  };
28
+ export declare const useUserProfile: () => import("../contexts/UserProfileCtx").UserProfileContextType;
@@ -16,14 +16,20 @@ export { default as createGroupChannelSettingsFragment } from './fragments/creat
16
16
  export { default as createGroupChannelInviteFragment } from './fragments/createGroupChannelInviteFragment';
17
17
  export { default as createGroupChannelListFragment } from './fragments/createGroupChannelListFragment';
18
18
  export { default as createGroupChannelMembersFragment } from './fragments/createGroupChannelMembersFragment';
19
+ export { default as createGroupChannelModerationFragment } from './fragments/createGroupChannelModerationFragment';
20
+ export { default as createGroupChannelOperatorsFragment } from './fragments/createGroupChannelOperatorsFragment';
21
+ export { default as createGroupChannelRegisterOperatorFragment } from './fragments/createGroupChannelRegisterOperatorFragment';
22
+ export { default as createGroupChannelMutedMembersFragment } from './fragments/createGroupChannelMutedMembersFragment';
23
+ export { default as createGroupChannelBannedUsersFragment } from './fragments/createGroupChannelBannedUsersFragment';
19
24
  /** Context **/
20
- export { SendbirdChatContext, SendbirdChatProvider } from './contexts/SendbirdChat';
21
- export { PlatformServiceContext, PlatformServiceProvider } from './contexts/PlatformService';
22
- export { LocalizationContext, LocalizationProvider } from './contexts/Localization';
25
+ export { SendbirdChatContext, SendbirdChatProvider } from './contexts/SendbirdChatCtx';
26
+ export { PlatformServiceContext, PlatformServiceProvider } from './contexts/PlatformServiceCtx';
27
+ export { UserProfileContext, UserProfileProvider } from './contexts/UserProfileCtx';
28
+ export { LocalizationContext, LocalizationProvider } from './contexts/LocalizationCtx';
23
29
  /** Hooks **/
24
30
  export { default as useConnection } from './hooks/useConnection';
25
31
  export { default as usePushTokenRegistration } from './hooks/usePushTokenRegistration';
26
- export { useLocalization, usePlatformService, useSendbirdChat } from './hooks/useContext';
32
+ export { useLocalization, usePlatformService, useSendbirdChat, useUserProfile } from './hooks/useContext';
27
33
  /** Localization **/
28
34
  export { default as StringSetEn } from './localization/StringSet.en';
29
35
  export { createBaseStringSet } from './localization/StringSet.type';
@@ -1,5 +1,5 @@
1
1
  import type { Locale } from 'date-fns';
2
- import type { PartialDeep, SendbirdFileMessage, SendbirdGroupChannel, SendbirdMessage, SendbirdUser } from '@sendbird/uikit-utils';
2
+ import type { PartialDeep, SendbirdFileMessage, SendbirdGroupChannel, SendbirdMember, SendbirdMessage, SendbirdUser } from '@sendbird/uikit-utils';
3
3
  /**
4
4
  * StringSet interface
5
5
  * Do not configure over 3 depths (for overrides easy)
@@ -21,6 +21,7 @@ export interface StringSet {
21
21
  /** GroupChannel > Input */
22
22
  INPUT_PLACEHOLDER_ACTIVE: string;
23
23
  INPUT_PLACEHOLDER_DISABLED: string;
24
+ INPUT_PLACEHOLDER_MUTED: string;
24
25
  INPUT_EDIT_OK: string;
25
26
  INPUT_EDIT_CANCEL: string;
26
27
  /** GroupChannel > Dialog > Message */
@@ -45,6 +46,7 @@ export interface StringSet {
45
46
  HEADER_TITLE: string;
46
47
  HEADER_RIGHT: string;
47
48
  /** GroupChannelSettings > Menu */
49
+ MENU_MODERATION: string;
48
50
  MENU_NOTIFICATION: string;
49
51
  MENU_MEMBERS: string;
50
52
  MENU_LEAVE_CHANNEL: string;
@@ -59,6 +61,34 @@ export interface StringSet {
59
61
  DIALOG_CHANGE_IMAGE_MENU_CAMERA: string;
60
62
  DIALOG_CHANGE_IMAGE_MENU_PHOTO_LIBRARY: string;
61
63
  };
64
+ GROUP_CHANNEL_MODERATION: {
65
+ /** GroupChannelModeration > Header */
66
+ HEADER_TITLE: string;
67
+ /** GroupChannelModeration > Menu */
68
+ MENU_OPERATORS: string;
69
+ MENU_MUTED_MEMBERS: string;
70
+ MENU_BANNED_USERS: string;
71
+ MENU_FREEZE_CHANNEL: string;
72
+ };
73
+ GROUP_CHANNEL_OPERATORS: {
74
+ /** GroupChannelOperators > Header */
75
+ HEADER_TITLE: string;
76
+ };
77
+ GROUP_CHANNEL_REGISTER_OPERATOR: {
78
+ /** GroupChannelRegisterOperator > Header */
79
+ HEADER_TITLE: string;
80
+ HEADER_RIGHT: (params: {
81
+ selectedUsers: Array<SendbirdMember>;
82
+ }) => string;
83
+ };
84
+ GROUP_CHANNEL_MUTED_MEMBERS: {
85
+ /** GroupChannelMutedMembers > Header */
86
+ HEADER_TITLE: string;
87
+ };
88
+ GROUP_CHANNEL_BANNED_USERS: {
89
+ /** GroupChannelBannedUsers > Header */
90
+ HEADER_TITLE: string;
91
+ };
62
92
  GROUP_CHANNEL_LIST: {
63
93
  /** GroupChannelList > Header */
64
94
  HEADER_TITLE: string;
@@ -80,13 +110,10 @@ export interface StringSet {
80
110
  GROUP_CHANNEL_MEMBERS: {
81
111
  /** GroupChannelMembers > Header */
82
112
  HEADER_TITLE: string;
83
- /** GroupChannelMembers > UserBar */
113
+ /** @deprecated Please use in LABELS **/
84
114
  USER_BAR_ME_POSTFIX: string;
115
+ /** @deprecated Please use in LABELS **/
85
116
  USER_BAR_OPERATOR: string;
86
- /** GroupChannelMembers > Dialog */
87
- DIALOG_USER_DISMISS_OPERATOR: string;
88
- DIALOG_USER_MUTE: string;
89
- DIALOG_USER_BAN: string;
90
117
  };
91
118
  GROUP_CHANNEL_INVITE: {
92
119
  /** GroupChannelInvite > Header */
@@ -106,13 +133,21 @@ export interface StringSet {
106
133
  USER_NO_NAME: string;
107
134
  CHANNEL_NO_MEMBERS: string;
108
135
  TYPING_INDICATOR_TYPINGS: (users: SendbirdUser[]) => string | undefined;
136
+ USER_BAR_ME_POSTFIX: string;
137
+ USER_BAR_OPERATOR: string;
138
+ REGISTER_AS_OPERATOR: string;
139
+ UNREGISTER_OPERATOR: string;
140
+ MUTE: string;
141
+ UNMUTE: string;
142
+ BAN: string;
143
+ UNBAN: string;
109
144
  };
110
145
  FILE_VIEWER: {
111
146
  TITLE: (message: SendbirdFileMessage) => string;
112
147
  SUBTITLE: (message: SendbirdFileMessage) => string;
113
148
  };
114
149
  PLACEHOLDER: {
115
- NO_BANNED_MEMBERS: string;
150
+ NO_BANNED_USERS: string;
116
151
  NO_USERS: string;
117
152
  NO_CHANNELS: string;
118
153
  NO_MESSAGES: string;
@@ -148,6 +183,11 @@ export interface StringSet {
148
183
  TURN_OFF_NOTIFICATIONS_ERROR: string;
149
184
  LEAVE_CHANNEL_ERROR: string;
150
185
  };
186
+ PROFILE_CARD: {
187
+ BUTTON_MESSAGE: string;
188
+ BODY_LABEL: string;
189
+ BODY: (user: SendbirdUser | SendbirdMember) => string;
190
+ };
151
191
  }
152
192
  declare type StringSetCreateOptions = {
153
193
  dateLocale: Locale;
@@ -1,4 +1,4 @@
1
- import type CameraRoll from '@react-native-community/cameraroll';
1
+ import type { CameraRoll } from '@react-native-camera-roll/camera-roll';
2
2
  import type * as DocumentPicker from 'react-native-document-picker';
3
3
  import type * as FileAccess from 'react-native-file-access';
4
4
  import type * as ImagePicker from 'react-native-image-picker';
@@ -1,2 +1,2 @@
1
- declare const VERSION = "2.0.3";
1
+ declare const VERSION = "2.1.0";
2
2
  export default VERSION;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sendbird/uikit-react-native",
3
- "version": "2.0.3",
3
+ "version": "2.1.0",
4
4
  "description": "react-native-uikit",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -41,13 +41,13 @@
41
41
  "access": "public"
42
42
  },
43
43
  "dependencies": {
44
- "@sendbird/uikit-chat-hooks": "2.0.3",
45
- "@sendbird/uikit-react-native-foundation": "2.0.3",
46
- "@sendbird/uikit-utils": "2.0.3"
44
+ "@sendbird/uikit-chat-hooks": "2.1.0",
45
+ "@sendbird/uikit-react-native-foundation": "2.1.0",
46
+ "@sendbird/uikit-utils": "2.1.0"
47
47
  },
48
48
  "devDependencies": {
49
+ "@react-native-camera-roll/camera-roll": "^5.0.4",
49
50
  "@react-native-clipboard/clipboard": "^1.8.5",
50
- "@react-native-community/cameraroll": "^4.1.2",
51
51
  "@react-native-community/netinfo": "^9.3.0",
52
52
  "@react-native-firebase/app": "^14.4.0",
53
53
  "@react-native-firebase/messaging": "^14.4.0",
@@ -71,7 +71,7 @@
71
71
  "react-native-builder-bob": "^0.18.0",
72
72
  "react-native-create-thumbnail": "^1.5.1",
73
73
  "react-native-document-picker": "^8.0.0",
74
- "react-native-file-access": "^2.4.3",
74
+ "react-native-file-access": "^2.5.0",
75
75
  "react-native-image-picker": "^4.7.1",
76
76
  "react-native-permissions": "^3.6.0",
77
77
  "react-native-safe-area-context": "^3.3.2",
@@ -79,8 +79,8 @@
79
79
  "typescript": "^4.1.3"
80
80
  },
81
81
  "peerDependencies": {
82
+ "@react-native-camera-roll/camera-roll": ">=5.0.0",
82
83
  "@react-native-clipboard/clipboard": ">=1.8.5",
83
- "@react-native-community/cameraroll": ">=4.1.2",
84
84
  "@react-native-community/netinfo": ">=9.3.0",
85
85
  "@react-native-firebase/messaging": ">=14.4.0",
86
86
  "@sendbird/chat": "^4.0.13",
@@ -103,10 +103,10 @@
103
103
  "react-native-video": ">=5.2.0"
104
104
  },
105
105
  "peerDependenciesMeta": {
106
- "@react-native-clipboard/clipboard": {
106
+ "@react-native-camera-roll/camera-roll": {
107
107
  "optional": true
108
108
  },
109
- "@react-native-community/cameraroll": {
109
+ "@react-native-clipboard/clipboard": {
110
110
  "optional": true
111
111
  },
112
112
  "@react-native-firebase/messaging": {
@@ -171,5 +171,5 @@
171
171
  "readmeFile": "./README.md",
172
172
  "displayName": "@sendbird/uikit-react-native"
173
173
  },
174
- "gitHead": "e3a34ae962741ffd2b647a466cf97e38f5006379"
174
+ "gitHead": "c778a84a632487047fe532db188b32dfa6e93a7f"
175
175
  }
@@ -1,25 +1,45 @@
1
1
  import React from 'react';
2
2
  import type { StyleProp, ViewStyle } from 'react-native';
3
+ import { View } from 'react-native';
3
4
 
4
- import { Avatar } from '@sendbird/uikit-react-native-foundation';
5
+ import { Avatar, Icon, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
5
6
  import { SendbirdGroupChannel, getMembersExcludeMe, isDefaultCoverImage } from '@sendbird/uikit-utils';
6
7
 
7
8
  import { useSendbirdChat } from '../hooks/useContext';
8
9
 
9
10
  type Props = {
10
11
  channel: SendbirdGroupChannel;
11
- size?: number;
12
+ size: number;
12
13
  containerStyle?: StyleProp<ViewStyle>;
13
14
  };
14
15
 
15
16
  const ChannelCover = ({ channel, ...avatarProps }: Props) => {
16
17
  const { currentUser } = useSendbirdChat();
18
+ const { colors } = useUIKitTheme();
17
19
 
18
- // channel cover
20
+ // custom channel cover
19
21
  if (!isDefaultCoverImage(channel.coverUrl) || !currentUser) {
20
22
  return <Avatar uri={channel.coverUrl} {...avatarProps} />;
21
23
  }
22
24
 
25
+ // broadcast channel cover
26
+ if (channel.isBroadcast) {
27
+ return (
28
+ <View style={avatarProps.containerStyle}>
29
+ <Icon
30
+ icon={'broadcast'}
31
+ size={avatarProps.size * (4 / 7)}
32
+ color={colors.onBackgroundReverse01}
33
+ containerStyle={{
34
+ backgroundColor: colors.secondary,
35
+ borderRadius: avatarProps.size * 0.5,
36
+ padding: avatarProps.size * (3 / 7) * 0.5,
37
+ }}
38
+ />
39
+ </View>
40
+ );
41
+ }
42
+
23
43
  // no members, use anonymous profile
24
44
  if (channel.memberCount <= 1) {
25
45
  return <Avatar {...avatarProps} />;