@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,25 @@
1
+ import React, { useContext } from 'react';
2
+ import { Icon, useHeaderStyle } from '@sendbird/uikit-react-native-foundation';
3
+ import { GroupChannelBannedUsersContexts } from '../module/moduleContext';
4
+
5
+ const GroupChannelBannedUsersHeader = _ref => {
6
+ let {
7
+ onPressHeaderLeft
8
+ } = _ref;
9
+ const {
10
+ headerTitle
11
+ } = useContext(GroupChannelBannedUsersContexts.Fragment);
12
+ const {
13
+ HeaderComponent
14
+ } = useHeaderStyle();
15
+ return /*#__PURE__*/React.createElement(HeaderComponent, {
16
+ title: headerTitle,
17
+ left: /*#__PURE__*/React.createElement(Icon, {
18
+ icon: 'arrow-left'
19
+ }),
20
+ onPressLeft: onPressHeaderLeft
21
+ });
22
+ };
23
+
24
+ export default GroupChannelBannedUsersHeader;
25
+ //# sourceMappingURL=GroupChannelBannedUsersHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useContext","Icon","useHeaderStyle","GroupChannelBannedUsersContexts","GroupChannelBannedUsersHeader","onPressHeaderLeft","headerTitle","Fragment","HeaderComponent"],"sources":["GroupChannelBannedUsersHeader.tsx"],"sourcesContent":["import React, { useContext } from 'react';\n\nimport { Icon, useHeaderStyle } from '@sendbird/uikit-react-native-foundation';\n\nimport { GroupChannelBannedUsersContexts } from '../module/moduleContext';\nimport type { GroupChannelBannedUsersProps } from '../types';\n\nconst GroupChannelBannedUsersHeader = ({ onPressHeaderLeft }: GroupChannelBannedUsersProps['Header']) => {\n const { headerTitle } = useContext(GroupChannelBannedUsersContexts.Fragment);\n const { HeaderComponent } = useHeaderStyle();\n return <HeaderComponent title={headerTitle} left={<Icon icon={'arrow-left'} />} onPressLeft={onPressHeaderLeft} />;\n};\n\nexport default GroupChannelBannedUsersHeader;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AAEA,SAASC,IAAT,EAAeC,cAAf,QAAqC,yCAArC;AAEA,SAASC,+BAAT,QAAgD,yBAAhD;;AAGA,MAAMC,6BAA6B,GAAG,QAAmE;EAAA,IAAlE;IAAEC;EAAF,CAAkE;EACvG,MAAM;IAAEC;EAAF,IAAkBN,UAAU,CAACG,+BAA+B,CAACI,QAAjC,CAAlC;EACA,MAAM;IAAEC;EAAF,IAAsBN,cAAc,EAA1C;EACA,oBAAO,oBAAC,eAAD;IAAiB,KAAK,EAAEI,WAAxB;IAAqC,IAAI,eAAE,oBAAC,IAAD;MAAM,IAAI,EAAE;IAAZ,EAA3C;IAAyE,WAAW,EAAED;EAAtF,EAAP;AACD,CAJD;;AAMA,eAAeD,6BAAf"}
@@ -0,0 +1,40 @@
1
+ import React from 'react';
2
+ import { FlatList } from 'react-native';
3
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
4
+ import { useFreshCallback } from '@sendbird/uikit-utils';
5
+
6
+ const GroupChannelBannedUsersList = _ref => {
7
+ let {
8
+ renderUser,
9
+ bannedUsers,
10
+ onLoadNext,
11
+ ListEmptyComponent
12
+ } = _ref;
13
+ const renderItem = useFreshCallback(_ref2 => {
14
+ let {
15
+ item
16
+ } = _ref2;
17
+ return renderUser === null || renderUser === void 0 ? void 0 : renderUser({
18
+ user: item
19
+ });
20
+ });
21
+ const {
22
+ left,
23
+ right
24
+ } = useSafeAreaInsets();
25
+ return /*#__PURE__*/React.createElement(FlatList, {
26
+ data: bannedUsers,
27
+ renderItem: renderItem,
28
+ contentContainerStyle: {
29
+ paddingLeft: left,
30
+ paddingRight: right,
31
+ flexGrow: 1
32
+ },
33
+ ListEmptyComponent: ListEmptyComponent,
34
+ onEndReached: () => onLoadNext(),
35
+ bounces: false
36
+ });
37
+ };
38
+
39
+ export default GroupChannelBannedUsersList;
40
+ //# sourceMappingURL=GroupChannelBannedUsersList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","FlatList","useSafeAreaInsets","useFreshCallback","GroupChannelBannedUsersList","renderUser","bannedUsers","onLoadNext","ListEmptyComponent","renderItem","item","user","left","right","paddingLeft","paddingRight","flexGrow"],"sources":["GroupChannelBannedUsersList.tsx"],"sourcesContent":["import React from 'react';\nimport { FlatList, ListRenderItem } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nimport { SendbirdRestrictedUser, useFreshCallback } from '@sendbird/uikit-utils';\n\nimport type { GroupChannelBannedUsersProps } from '../types';\n\nconst GroupChannelBannedUsersList = ({\n renderUser,\n bannedUsers,\n onLoadNext,\n ListEmptyComponent,\n}: GroupChannelBannedUsersProps['List']) => {\n const renderItem: ListRenderItem<SendbirdRestrictedUser> = useFreshCallback(({ item }) =>\n renderUser?.({ user: item }),\n );\n const { left, right } = useSafeAreaInsets();\n\n return (\n <FlatList\n data={bannedUsers}\n renderItem={renderItem}\n contentContainerStyle={{ paddingLeft: left, paddingRight: right, flexGrow: 1 }}\n ListEmptyComponent={ListEmptyComponent}\n onEndReached={() => onLoadNext()}\n bounces={false}\n />\n );\n};\n\nexport default GroupChannelBannedUsersList;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,QAAT,QAAyC,cAAzC;AACA,SAASC,iBAAT,QAAkC,gCAAlC;AAEA,SAAiCC,gBAAjC,QAAyD,uBAAzD;;AAIA,MAAMC,2BAA2B,GAAG,QAKQ;EAAA,IALP;IACnCC,UADmC;IAEnCC,WAFmC;IAGnCC,UAHmC;IAInCC;EAJmC,CAKO;EAC1C,MAAMC,UAAkD,GAAGN,gBAAgB,CAAC;IAAA,IAAC;MAAEO;IAAF,CAAD;IAAA,OAC1EL,UAD0E,aAC1EA,UAD0E,uBAC1EA,UAAU,CAAG;MAAEM,IAAI,EAAED;IAAR,CAAH,CADgE;EAAA,CAAD,CAA3E;EAGA,MAAM;IAAEE,IAAF;IAAQC;EAAR,IAAkBX,iBAAiB,EAAzC;EAEA,oBACE,oBAAC,QAAD;IACE,IAAI,EAAEI,WADR;IAEE,UAAU,EAAEG,UAFd;IAGE,qBAAqB,EAAE;MAAEK,WAAW,EAAEF,IAAf;MAAqBG,YAAY,EAAEF,KAAnC;MAA0CG,QAAQ,EAAE;IAApD,CAHzB;IAIE,kBAAkB,EAAER,kBAJtB;IAKE,YAAY,EAAE,MAAMD,UAAU,EALhC;IAME,OAAO,EAAE;EANX,EADF;AAUD,CArBD;;AAuBA,eAAeH,2BAAf"}
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import { StyleSheet, View } from 'react-native';
3
+ import TypedPlaceholder from '../../../components/TypedPlaceholder';
4
+
5
+ const GroupChannelBannedUsersStatusEmpty = () => {
6
+ return /*#__PURE__*/React.createElement(View, {
7
+ style: styles.container
8
+ }, /*#__PURE__*/React.createElement(TypedPlaceholder, {
9
+ type: 'no-banned-users'
10
+ }));
11
+ };
12
+
13
+ const styles = StyleSheet.create({
14
+ container: {
15
+ flex: 1,
16
+ justifyContent: 'center',
17
+ alignItems: 'center'
18
+ }
19
+ });
20
+ export default GroupChannelBannedUsersStatusEmpty;
21
+ //# sourceMappingURL=GroupChannelBannedUsersStatusEmpty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","StyleSheet","View","TypedPlaceholder","GroupChannelBannedUsersStatusEmpty","styles","container","create","flex","justifyContent","alignItems"],"sources":["GroupChannelBannedUsersStatusEmpty.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport TypedPlaceholder from '../../../components/TypedPlaceholder';\n\nconst GroupChannelBannedUsersStatusEmpty = () => {\n return (\n <View style={styles.container}>\n <TypedPlaceholder type={'no-banned-users'} />\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { flex: 1, justifyContent: 'center', alignItems: 'center' },\n});\n\nexport default GroupChannelBannedUsersStatusEmpty;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AAEA,OAAOC,gBAAP,MAA6B,sCAA7B;;AAEA,MAAMC,kCAAkC,GAAG,MAAM;EAC/C,oBACE,oBAAC,IAAD;IAAM,KAAK,EAAEC,MAAM,CAACC;EAApB,gBACE,oBAAC,gBAAD;IAAkB,IAAI,EAAE;EAAxB,EADF,CADF;AAKD,CAND;;AAQA,MAAMD,MAAM,GAAGJ,UAAU,CAACM,MAAX,CAAkB;EAC/BD,SAAS,EAAE;IAAEE,IAAI,EAAE,CAAR;IAAWC,cAAc,EAAE,QAA3B;IAAqCC,UAAU,EAAE;EAAjD;AADoB,CAAlB,CAAf;AAIA,eAAeN,kCAAf"}
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import { StyleSheet, View } from 'react-native';
3
+ import TypedPlaceholder from '../../../components/TypedPlaceholder';
4
+
5
+ const GroupChannelBannedUsersStatusError = _ref => {
6
+ let {
7
+ onPressRetry
8
+ } = _ref;
9
+ return /*#__PURE__*/React.createElement(View, {
10
+ style: styles.container
11
+ }, /*#__PURE__*/React.createElement(TypedPlaceholder, {
12
+ type: 'error-wrong',
13
+ onPressRetry: onPressRetry
14
+ }));
15
+ };
16
+
17
+ const styles = StyleSheet.create({
18
+ container: {
19
+ flex: 1,
20
+ justifyContent: 'center',
21
+ alignItems: 'center'
22
+ }
23
+ });
24
+ export default GroupChannelBannedUsersStatusError;
25
+ //# sourceMappingURL=GroupChannelBannedUsersStatusError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","StyleSheet","View","TypedPlaceholder","GroupChannelBannedUsersStatusError","onPressRetry","styles","container","create","flex","justifyContent","alignItems"],"sources":["GroupChannelBannedUsersStatusError.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport TypedPlaceholder from '../../../components/TypedPlaceholder';\nimport type { GroupChannelBannedUsersModule } from '../types';\n\nconst GroupChannelBannedUsersStatusError: GroupChannelBannedUsersModule['StatusError'] = ({ onPressRetry }) => {\n return (\n <View style={styles.container}>\n <TypedPlaceholder type={'error-wrong'} onPressRetry={onPressRetry} />\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { flex: 1, justifyContent: 'center', alignItems: 'center' },\n});\n\nexport default GroupChannelBannedUsersStatusError;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AAEA,OAAOC,gBAAP,MAA6B,sCAA7B;;AAGA,MAAMC,kCAAgF,GAAG,QAAsB;EAAA,IAArB;IAAEC;EAAF,CAAqB;EAC7G,oBACE,oBAAC,IAAD;IAAM,KAAK,EAAEC,MAAM,CAACC;EAApB,gBACE,oBAAC,gBAAD;IAAkB,IAAI,EAAE,aAAxB;IAAuC,YAAY,EAAEF;EAArD,EADF,CADF;AAKD,CAND;;AAQA,MAAMC,MAAM,GAAGL,UAAU,CAACO,MAAX,CAAkB;EAC/BD,SAAS,EAAE;IAAEE,IAAI,EAAE,CAAR;IAAWC,cAAc,EAAE,QAA3B;IAAqCC,UAAU,EAAE;EAAjD;AADoB,CAAlB,CAAf;AAIA,eAAeP,kCAAf"}
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import { StyleSheet, View } from 'react-native';
3
+ import TypedPlaceholder from '../../../components/TypedPlaceholder';
4
+
5
+ const GroupChannelBannedUsersStatusLoading = () => {
6
+ return /*#__PURE__*/React.createElement(View, {
7
+ style: styles.container
8
+ }, /*#__PURE__*/React.createElement(TypedPlaceholder, {
9
+ type: 'loading'
10
+ }));
11
+ };
12
+
13
+ const styles = StyleSheet.create({
14
+ container: {
15
+ flex: 1,
16
+ justifyContent: 'center',
17
+ alignItems: 'center'
18
+ }
19
+ });
20
+ export default GroupChannelBannedUsersStatusLoading;
21
+ //# sourceMappingURL=GroupChannelBannedUsersStatusLoading.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","StyleSheet","View","TypedPlaceholder","GroupChannelBannedUsersStatusLoading","styles","container","create","flex","justifyContent","alignItems"],"sources":["GroupChannelBannedUsersStatusLoading.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport TypedPlaceholder from '../../../components/TypedPlaceholder';\n\nconst GroupChannelBannedUsersStatusLoading = () => {\n return (\n <View style={styles.container}>\n <TypedPlaceholder type={'loading'} />\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { flex: 1, justifyContent: 'center', alignItems: 'center' },\n});\n\nexport default GroupChannelBannedUsersStatusLoading;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,EAAqBC,IAArB,QAAiC,cAAjC;AAEA,OAAOC,gBAAP,MAA6B,sCAA7B;;AAEA,MAAMC,oCAAoC,GAAG,MAAM;EACjD,oBACE,oBAAC,IAAD;IAAM,KAAK,EAAEC,MAAM,CAACC;EAApB,gBACE,oBAAC,gBAAD;IAAkB,IAAI,EAAE;EAAxB,EADF,CADF;AAKD,CAND;;AAQA,MAAMD,MAAM,GAAGJ,UAAU,CAACM,MAAX,CAAkB;EAC/BD,SAAS,EAAE;IAAEE,IAAI,EAAE,CAAR;IAAWC,cAAc,EAAE,QAA3B;IAAqCC,UAAU,EAAE;EAAjD;AADoB,CAAlB,CAAf;AAIA,eAAeN,oCAAf"}
@@ -0,0 +1,7 @@
1
+ export { default as GroupChannelBannedUsersList } from './component/GroupChannelBannedUsersList';
2
+ export { default as GroupChannelBannedUsersHeader } from './component/GroupChannelBannedUsersHeader';
3
+ export { default as GroupChannelBannedUsersStatusLoading } from './component/GroupChannelBannedUsersStatusLoading';
4
+ export { default as GroupChannelBannedUsersStatusEmpty } from './component/GroupChannelBannedUsersStatusEmpty';
5
+ export { default as createGroupChannelBannedUsersModule } from './module/createGroupChannelBannedUsersModule';
6
+ export { GroupChannelBannedUsersContextsProvider, GroupChannelBannedUsersContexts } from './module/moduleContext';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["default","GroupChannelBannedUsersList","GroupChannelBannedUsersHeader","GroupChannelBannedUsersStatusLoading","GroupChannelBannedUsersStatusEmpty","createGroupChannelBannedUsersModule","GroupChannelBannedUsersContextsProvider","GroupChannelBannedUsersContexts"],"sources":["index.ts"],"sourcesContent":["export { default as GroupChannelBannedUsersList } from './component/GroupChannelBannedUsersList';\nexport { default as GroupChannelBannedUsersHeader } from './component/GroupChannelBannedUsersHeader';\nexport { default as GroupChannelBannedUsersStatusLoading } from './component/GroupChannelBannedUsersStatusLoading';\nexport { default as GroupChannelBannedUsersStatusEmpty } from './component/GroupChannelBannedUsersStatusEmpty';\nexport { default as createGroupChannelBannedUsersModule } from './module/createGroupChannelBannedUsersModule';\nexport { GroupChannelBannedUsersContextsProvider, GroupChannelBannedUsersContexts } from './module/moduleContext';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,2BAApB,QAAuD,yCAAvD;AACA,SAASD,OAAO,IAAIE,6BAApB,QAAyD,2CAAzD;AACA,SAASF,OAAO,IAAIG,oCAApB,QAAgE,kDAAhE;AACA,SAASH,OAAO,IAAII,kCAApB,QAA8D,gDAA9D;AACA,SAASJ,OAAO,IAAIK,mCAApB,QAA+D,8CAA/D;AACA,SAASC,uCAAT,EAAkDC,+BAAlD,QAAyF,wBAAzF"}
@@ -0,0 +1,30 @@
1
+ import GroupChannelBannedUsersHeader from '../component/GroupChannelBannedUsersHeader';
2
+ import GroupChannelBannedUsersList from '../component/GroupChannelBannedUsersList';
3
+ import GroupChannelBannedUsersStatusEmpty from '../component/GroupChannelBannedUsersStatusEmpty';
4
+ import GroupChannelBannedUsersStatusError from '../component/GroupChannelBannedUsersStatusError';
5
+ import GroupChannelBannedUsersStatusLoading from '../component/GroupChannelBannedUsersStatusLoading';
6
+ import { GroupChannelBannedUsersContextsProvider } from './moduleContext';
7
+
8
+ const createGroupChannelBannedUsersModule = function () {
9
+ let {
10
+ Header = GroupChannelBannedUsersHeader,
11
+ List = GroupChannelBannedUsersList,
12
+ StatusLoading = GroupChannelBannedUsersStatusLoading,
13
+ StatusEmpty = GroupChannelBannedUsersStatusEmpty,
14
+ StatusError = GroupChannelBannedUsersStatusError,
15
+ Provider = GroupChannelBannedUsersContextsProvider,
16
+ ...module
17
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
18
+ return {
19
+ Header,
20
+ List,
21
+ Provider,
22
+ StatusEmpty,
23
+ StatusLoading,
24
+ StatusError,
25
+ ...module
26
+ };
27
+ };
28
+
29
+ export default createGroupChannelBannedUsersModule;
30
+ //# sourceMappingURL=createGroupChannelBannedUsersModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GroupChannelBannedUsersHeader","GroupChannelBannedUsersList","GroupChannelBannedUsersStatusEmpty","GroupChannelBannedUsersStatusError","GroupChannelBannedUsersStatusLoading","GroupChannelBannedUsersContextsProvider","createGroupChannelBannedUsersModule","Header","List","StatusLoading","StatusEmpty","StatusError","Provider","module"],"sources":["createGroupChannelBannedUsersModule.tsx"],"sourcesContent":["import GroupChannelBannedUsersHeader from '../component/GroupChannelBannedUsersHeader';\nimport GroupChannelBannedUsersList from '../component/GroupChannelBannedUsersList';\nimport GroupChannelBannedUsersStatusEmpty from '../component/GroupChannelBannedUsersStatusEmpty';\nimport GroupChannelBannedUsersStatusError from '../component/GroupChannelBannedUsersStatusError';\nimport GroupChannelBannedUsersStatusLoading from '../component/GroupChannelBannedUsersStatusLoading';\nimport type { GroupChannelBannedUsersModule } from '../types';\nimport { GroupChannelBannedUsersContextsProvider } from './moduleContext';\n\nconst createGroupChannelBannedUsersModule = ({\n Header = GroupChannelBannedUsersHeader,\n List = GroupChannelBannedUsersList,\n StatusLoading = GroupChannelBannedUsersStatusLoading,\n StatusEmpty = GroupChannelBannedUsersStatusEmpty,\n StatusError = GroupChannelBannedUsersStatusError,\n Provider = GroupChannelBannedUsersContextsProvider,\n ...module\n}: Partial<GroupChannelBannedUsersModule> = {}): GroupChannelBannedUsersModule => {\n return { Header, List, Provider, StatusEmpty, StatusLoading, StatusError, ...module };\n};\n\nexport default createGroupChannelBannedUsersModule;\n"],"mappings":"AAAA,OAAOA,6BAAP,MAA0C,4CAA1C;AACA,OAAOC,2BAAP,MAAwC,0CAAxC;AACA,OAAOC,kCAAP,MAA+C,iDAA/C;AACA,OAAOC,kCAAP,MAA+C,iDAA/C;AACA,OAAOC,oCAAP,MAAiD,mDAAjD;AAEA,SAASC,uCAAT,QAAwD,iBAAxD;;AAEA,MAAMC,mCAAmC,GAAG,YAQsC;EAAA,IARrC;IAC3CC,MAAM,GAAGP,6BADkC;IAE3CQ,IAAI,GAAGP,2BAFoC;IAG3CQ,aAAa,GAAGL,oCAH2B;IAI3CM,WAAW,GAAGR,kCAJ6B;IAK3CS,WAAW,GAAGR,kCAL6B;IAM3CS,QAAQ,GAAGP,uCANgC;IAO3C,GAAGQ;EAPwC,CAQqC,uEAAtC,EAAsC;EAChF,OAAO;IAAEN,MAAF;IAAUC,IAAV;IAAgBI,QAAhB;IAA0BF,WAA1B;IAAuCD,aAAvC;IAAsDE,WAAtD;IAAmE,GAAGE;EAAtE,CAAP;AACD,CAVD;;AAYA,eAAeP,mCAAf"}
@@ -0,0 +1,25 @@
1
+ import React, { createContext } from 'react';
2
+ import ProviderLayout from '../../../components/ProviderLayout';
3
+ import { useLocalization } from '../../../hooks/useContext';
4
+ export const GroupChannelBannedUsersContexts = {
5
+ Fragment: /*#__PURE__*/createContext({
6
+ headerTitle: '',
7
+ channel: {}
8
+ })
9
+ };
10
+ export const GroupChannelBannedUsersContextsProvider = _ref => {
11
+ let {
12
+ channel,
13
+ children
14
+ } = _ref;
15
+ const {
16
+ STRINGS
17
+ } = useLocalization();
18
+ return /*#__PURE__*/React.createElement(ProviderLayout, null, /*#__PURE__*/React.createElement(GroupChannelBannedUsersContexts.Fragment.Provider, {
19
+ value: {
20
+ headerTitle: STRINGS.GROUP_CHANNEL_BANNED_USERS.HEADER_TITLE,
21
+ channel
22
+ }
23
+ }, children));
24
+ };
25
+ //# sourceMappingURL=moduleContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","createContext","ProviderLayout","useLocalization","GroupChannelBannedUsersContexts","Fragment","headerTitle","channel","GroupChannelBannedUsersContextsProvider","children","STRINGS","GROUP_CHANNEL_BANNED_USERS","HEADER_TITLE"],"sources":["moduleContext.tsx"],"sourcesContent":["import React, { createContext } from 'react';\n\nimport type { SendbirdGroupChannel } from '@sendbird/uikit-utils';\n\nimport ProviderLayout from '../../../components/ProviderLayout';\nimport { useLocalization } from '../../../hooks/useContext';\nimport type { GroupChannelBannedUsersContextsType, GroupChannelBannedUsersModule } from '../types';\n\nexport const GroupChannelBannedUsersContexts: GroupChannelBannedUsersContextsType = {\n Fragment: createContext({\n headerTitle: '',\n channel: {} as SendbirdGroupChannel,\n }),\n};\n\nexport const GroupChannelBannedUsersContextsProvider: GroupChannelBannedUsersModule['Provider'] = ({\n channel,\n children,\n}) => {\n const { STRINGS } = useLocalization();\n return (\n <ProviderLayout>\n <GroupChannelBannedUsersContexts.Fragment.Provider\n value={{ headerTitle: STRINGS.GROUP_CHANNEL_BANNED_USERS.HEADER_TITLE, channel }}\n >\n {children}\n </GroupChannelBannedUsersContexts.Fragment.Provider>\n </ProviderLayout>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,aAAhB,QAAqC,OAArC;AAIA,OAAOC,cAAP,MAA2B,oCAA3B;AACA,SAASC,eAAT,QAAgC,2BAAhC;AAGA,OAAO,MAAMC,+BAAoE,GAAG;EAClFC,QAAQ,eAAEJ,aAAa,CAAC;IACtBK,WAAW,EAAE,EADS;IAEtBC,OAAO,EAAE;EAFa,CAAD;AAD2D,CAA7E;AAOP,OAAO,MAAMC,uCAAkF,GAAG,QAG5F;EAAA,IAH6F;IACjGD,OADiG;IAEjGE;EAFiG,CAG7F;EACJ,MAAM;IAAEC;EAAF,IAAcP,eAAe,EAAnC;EACA,oBACE,oBAAC,cAAD,qBACE,oBAAC,+BAAD,CAAiC,QAAjC,CAA0C,QAA1C;IACE,KAAK,EAAE;MAAEG,WAAW,EAAEI,OAAO,CAACC,0BAAR,CAAmCC,YAAlD;MAAgEL;IAAhE;EADT,GAGGE,QAHH,CADF,CADF;AASD,CAdM"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type React from 'react';\n\nimport type { SendbirdGroupChannel, SendbirdRestrictedUser } from '@sendbird/uikit-utils';\n\nimport type { CommonComponent } from '../../types';\n\nexport type GroupChannelBannedUsersProps = {\n Fragment: {\n channel: SendbirdGroupChannel;\n onPressHeaderLeft: GroupChannelBannedUsersProps['Header']['onPressHeaderLeft'];\n renderUser?: GroupChannelBannedUsersProps['List']['renderUser'];\n };\n Header: {\n onPressHeaderLeft: () => void;\n };\n List: {\n renderUser: (props: { user: SendbirdRestrictedUser }) => React.ReactElement | null;\n bannedUsers: SendbirdRestrictedUser[];\n ListEmptyComponent?: React.ReactElement;\n onLoadNext: () => Promise<void>;\n };\n StatusError: {\n onPressRetry: () => void;\n };\n Provider: {\n channel: SendbirdGroupChannel;\n };\n};\n\n/**\n * Internal context for GroupChannelBannedUsers\n * For example, the developer can create a custom header\n * with getting data from the domain context\n * */\nexport type GroupChannelBannedUsersContextsType = {\n Fragment: React.Context<{\n headerTitle: string;\n channel: SendbirdGroupChannel;\n }>;\n};\nexport interface GroupChannelBannedUsersModule {\n Provider: CommonComponent<GroupChannelBannedUsersProps['Provider']>;\n Header: CommonComponent<GroupChannelBannedUsersProps['Header']>;\n List: CommonComponent<GroupChannelBannedUsersProps['List']>;\n StatusEmpty: CommonComponent;\n StatusLoading: CommonComponent;\n StatusError: CommonComponent<GroupChannelBannedUsersProps['StatusError']>;\n}\n\nexport type GroupChannelBannedUsersFragment = CommonComponent<GroupChannelBannedUsersProps['Fragment']>;\n"],"mappings":""}
@@ -1,7 +1,7 @@
1
1
  import React, { useContext, useEffect } from 'react';
2
- import { TouchableOpacity, View } from 'react-native';
3
- import { Header as DefaultHeader, Icon, Modal, Text, createStyleSheet, useHeaderStyle, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
4
- import { useLocalization } from '../../../hooks/useContext';
2
+ import { Platform, TouchableOpacity, View } from 'react-native';
3
+ import { Icon, Modal, Text, createStyleSheet, useHeaderStyle, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
4
+ import { useLocalization, useSendbirdChat } from '../../../hooks/useContext';
5
5
  import { GroupChannelListContexts } from '../module/moduleContext';
6
6
  const TYPES = ['GROUP', 'SUPER_GROUP', 'BROADCAST'];
7
7
  const TYPE_ICONS = {
@@ -9,19 +9,26 @@ const TYPE_ICONS = {
9
9
  'SUPER_GROUP': 'supergroup',
10
10
  'BROADCAST': 'broadcast'
11
11
  };
12
+ const STATUS_BAR_TOP_INSET_AS = Platform.select({
13
+ android: 'margin',
14
+ default: 'padding'
15
+ });
12
16
 
13
17
  const GroupChannelListTypeSelector = _ref => {
14
18
  let {
15
- Header = DefaultHeader,
16
19
  skipTypeSelection,
17
20
  onSelectType
18
21
  } = _ref;
19
22
  const {
20
- statusBarTranslucent
23
+ statusBarTranslucent,
24
+ HeaderComponent
21
25
  } = useHeaderStyle();
22
26
  const {
23
27
  colors
24
28
  } = useUIKitTheme();
29
+ const {
30
+ features
31
+ } = useSendbirdChat();
25
32
  const typeSelector = useContext(GroupChannelListContexts.TypeSelector);
26
33
  const {
27
34
  visible,
@@ -37,10 +44,29 @@ const GroupChannelListTypeSelector = _ref => {
37
44
  if (skipTypeSelection && visible) createOnPressType('GROUP')();
38
45
  }, [skipTypeSelection, visible]);
39
46
  if (skipTypeSelection) return null;
40
-
41
- const renderButtons = () => /*#__PURE__*/React.createElement(View, {
47
+ return /*#__PURE__*/React.createElement(Modal, {
48
+ visible: visible,
49
+ onClose: hide,
50
+ statusBarTranslucent: statusBarTranslucent
51
+ }, /*#__PURE__*/React.createElement(HeaderComponent, {
52
+ title: typeSelector.headerTitle,
53
+ right: /*#__PURE__*/React.createElement(Icon, {
54
+ icon: 'close',
55
+ color: colors.onBackground01
56
+ }),
57
+ onPressRight: typeSelector.hide,
58
+ statusBarTopInsetAs: STATUS_BAR_TOP_INSET_AS
59
+ }, /*#__PURE__*/React.createElement(View, {
42
60
  style: styles.buttonArea
43
61
  }, TYPES.map(type => {
62
+ if (type === 'SUPER_GROUP' && !features.superGroupChannelEnabled) {
63
+ return null;
64
+ }
65
+
66
+ if (type === 'BROADCAST' && !features.broadcastChannelEnabled) {
67
+ return null;
68
+ }
69
+
44
70
  return /*#__PURE__*/React.createElement(TouchableOpacity, {
45
71
  key: type,
46
72
  activeOpacity: 0.6,
@@ -51,32 +77,7 @@ const GroupChannelListTypeSelector = _ref => {
51
77
  }), /*#__PURE__*/React.createElement(DefaultTypeText, {
52
78
  type: type
53
79
  }));
54
- }));
55
-
56
- const renderHeader = () => {
57
- if (Header) {
58
- return /*#__PURE__*/React.createElement(Header, {
59
- title: typeSelector.headerTitle,
60
- right: /*#__PURE__*/React.createElement(Icon, {
61
- icon: 'close',
62
- color: colors.onBackground01
63
- }),
64
- onPressRight: typeSelector.hide
65
- }, renderButtons());
66
- }
67
-
68
- return /*#__PURE__*/React.createElement(DefaultHeader, {
69
- title: null,
70
- right: null,
71
- left: null
72
- }, renderButtons());
73
- };
74
-
75
- return /*#__PURE__*/React.createElement(Modal, {
76
- visible: visible,
77
- onClose: hide,
78
- statusBarTranslucent: statusBarTranslucent
79
- }, renderHeader());
80
+ }))));
80
81
  };
81
82
 
82
83
  const DefaultTypeIcon = _ref2 => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","useContext","useEffect","TouchableOpacity","View","Header","DefaultHeader","Icon","Modal","Text","createStyleSheet","useHeaderStyle","useUIKitTheme","useLocalization","GroupChannelListContexts","TYPES","TYPE_ICONS","GroupChannelListTypeSelector","skipTypeSelection","onSelectType","statusBarTranslucent","colors","typeSelector","TypeSelector","visible","hide","createOnPressType","type","renderButtons","styles","buttonArea","map","typeButton","renderHeader","headerTitle","onBackground01","DefaultTypeIcon","icon","DefaultTypeText","STRINGS","GROUP_CHANNEL_LIST","flexDirection","paddingVertical","flex","alignItems","justifyContent","marginBottom"],"sources":["GroupChannelListTypeSelector.tsx"],"sourcesContent":["import React, { useContext, useEffect } from 'react';\nimport { TouchableOpacity, View } from 'react-native';\n\nimport {\n Header as DefaultHeader,\n Icon,\n Modal,\n Text,\n createStyleSheet,\n useHeaderStyle,\n useUIKitTheme,\n} from '@sendbird/uikit-react-native-foundation';\n\nimport { useLocalization } from '../../../hooks/useContext';\nimport { GroupChannelListContexts } from '../module/moduleContext';\nimport type { GroupChannelListProps, GroupChannelType } from '../types';\n\nconst TYPES: GroupChannelType[] = ['GROUP', 'SUPER_GROUP', 'BROADCAST'];\nconst TYPE_ICONS: Record<GroupChannelType, keyof typeof Icon.Assets> = {\n 'GROUP': 'chat',\n 'SUPER_GROUP': 'supergroup',\n 'BROADCAST': 'broadcast',\n};\n\nconst GroupChannelListTypeSelector = ({\n Header = DefaultHeader,\n skipTypeSelection,\n onSelectType,\n}: GroupChannelListProps['TypeSelector']) => {\n const { statusBarTranslucent } = useHeaderStyle();\n const { colors } = useUIKitTheme();\n const typeSelector = useContext(GroupChannelListContexts.TypeSelector);\n const { visible, hide } = typeSelector;\n const createOnPressType = (type: GroupChannelType) => () => {\n hide();\n onSelectType(type);\n };\n\n useEffect(() => {\n if (skipTypeSelection && visible) createOnPressType('GROUP')();\n }, [skipTypeSelection, visible]);\n\n if (skipTypeSelection) return null;\n\n const renderButtons = () => (\n <View style={styles.buttonArea}>\n {TYPES.map((type) => {\n return (\n <TouchableOpacity key={type} activeOpacity={0.6} onPress={createOnPressType(type)} style={styles.typeButton}>\n <DefaultTypeIcon type={type} />\n <DefaultTypeText type={type} />\n </TouchableOpacity>\n );\n })}\n </View>\n );\n\n const renderHeader = () => {\n if (Header) {\n return (\n <Header\n title={typeSelector.headerTitle}\n right={<Icon icon={'close'} color={colors.onBackground01} />}\n onPressRight={typeSelector.hide}\n >\n {renderButtons()}\n </Header>\n );\n }\n\n return (\n <DefaultHeader title={null} right={null} left={null}>\n {renderButtons()}\n </DefaultHeader>\n );\n };\n\n return (\n <Modal visible={visible} onClose={hide} statusBarTranslucent={statusBarTranslucent}>\n {renderHeader()}\n </Modal>\n );\n};\n\nconst DefaultTypeIcon = ({ type }: { type: GroupChannelType }) => {\n return <Icon size={24} icon={TYPE_ICONS[type]} containerStyle={styles.icon} />;\n};\n\nconst DefaultTypeText = ({ type }: { type: GroupChannelType }) => {\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n return (\n <Text caption2 color={colors.onBackground01}>\n {STRINGS.GROUP_CHANNEL_LIST[`TYPE_SELECTOR_${type}`]}\n </Text>\n );\n};\n\nconst styles = createStyleSheet({\n buttonArea: {\n flexDirection: 'row',\n },\n typeButton: {\n paddingVertical: 24,\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n icon: {\n marginBottom: 8,\n },\n});\n\nexport default GroupChannelListTypeSelector;\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","useContext","useEffect","Platform","TouchableOpacity","View","Icon","Modal","Text","createStyleSheet","useHeaderStyle","useUIKitTheme","useLocalization","useSendbirdChat","GroupChannelListContexts","TYPES","TYPE_ICONS","STATUS_BAR_TOP_INSET_AS","select","android","default","GroupChannelListTypeSelector","skipTypeSelection","onSelectType","statusBarTranslucent","HeaderComponent","colors","features","typeSelector","TypeSelector","visible","hide","createOnPressType","type","headerTitle","onBackground01","styles","buttonArea","map","superGroupChannelEnabled","broadcastChannelEnabled","typeButton","DefaultTypeIcon","icon","DefaultTypeText","STRINGS","GROUP_CHANNEL_LIST","flexDirection","paddingVertical","flex","alignItems","justifyContent","marginBottom"],"sources":["GroupChannelListTypeSelector.tsx"],"sourcesContent":["import React, { useContext, useEffect } from 'react';\nimport { Platform, TouchableOpacity, View } from 'react-native';\n\nimport {\n Icon,\n Modal,\n Text,\n createStyleSheet,\n useHeaderStyle,\n useUIKitTheme,\n} from '@sendbird/uikit-react-native-foundation';\n\nimport { useLocalization, useSendbirdChat } from '../../../hooks/useContext';\nimport { GroupChannelListContexts } from '../module/moduleContext';\nimport type { GroupChannelListProps, GroupChannelType } from '../types';\n\nconst TYPES: GroupChannelType[] = ['GROUP', 'SUPER_GROUP', 'BROADCAST'];\nconst TYPE_ICONS: Record<GroupChannelType, keyof typeof Icon.Assets> = {\n 'GROUP': 'chat',\n 'SUPER_GROUP': 'supergroup',\n 'BROADCAST': 'broadcast',\n};\nconst STATUS_BAR_TOP_INSET_AS: 'margin' | 'padding' = Platform.select({ android: 'margin', default: 'padding' });\n\nconst GroupChannelListTypeSelector = ({ skipTypeSelection, onSelectType }: GroupChannelListProps['TypeSelector']) => {\n const { statusBarTranslucent, HeaderComponent } = useHeaderStyle();\n const { colors } = useUIKitTheme();\n const { features } = useSendbirdChat();\n const typeSelector = useContext(GroupChannelListContexts.TypeSelector);\n const { visible, hide } = typeSelector;\n\n const createOnPressType = (type: GroupChannelType) => () => {\n hide();\n onSelectType(type);\n };\n\n useEffect(() => {\n if (skipTypeSelection && visible) createOnPressType('GROUP')();\n }, [skipTypeSelection, visible]);\n\n if (skipTypeSelection) return null;\n\n return (\n <Modal visible={visible} onClose={hide} statusBarTranslucent={statusBarTranslucent}>\n <HeaderComponent\n title={typeSelector.headerTitle}\n right={<Icon icon={'close'} color={colors.onBackground01} />}\n onPressRight={typeSelector.hide}\n statusBarTopInsetAs={STATUS_BAR_TOP_INSET_AS}\n >\n <View style={styles.buttonArea}>\n {TYPES.map((type) => {\n if (type === 'SUPER_GROUP' && !features.superGroupChannelEnabled) {\n return null;\n }\n\n if (type === 'BROADCAST' && !features.broadcastChannelEnabled) {\n return null;\n }\n\n return (\n <TouchableOpacity\n key={type}\n activeOpacity={0.6}\n onPress={createOnPressType(type)}\n style={styles.typeButton}\n >\n <DefaultTypeIcon type={type} />\n <DefaultTypeText type={type} />\n </TouchableOpacity>\n );\n })}\n </View>\n </HeaderComponent>\n </Modal>\n );\n};\n\nconst DefaultTypeIcon = ({ type }: { type: GroupChannelType }) => {\n return <Icon size={24} icon={TYPE_ICONS[type]} containerStyle={styles.icon} />;\n};\n\nconst DefaultTypeText = ({ type }: { type: GroupChannelType }) => {\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n return (\n <Text caption2 color={colors.onBackground01}>\n {STRINGS.GROUP_CHANNEL_LIST[`TYPE_SELECTOR_${type}`]}\n </Text>\n );\n};\n\nconst styles = createStyleSheet({\n buttonArea: {\n flexDirection: 'row',\n },\n typeButton: {\n paddingVertical: 24,\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n icon: {\n marginBottom: 8,\n },\n});\n\nexport default GroupChannelListTypeSelector;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type React from 'react';\nimport type { FlatListProps } from 'react-native';\n\nimport type { UseGroupChannelListOptions } from '@sendbird/uikit-chat-hooks';\nimport type { ActionMenuItem, BaseHeaderProps } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdGroupChannel } from '@sendbird/uikit-utils';\n\nimport type { CommonComponent } from '../../types';\n\nexport interface GroupChannelListProps {\n /** Props for `GroupChannelListFragment` **/\n Fragment: {\n /** Navigate to GroupChannelFragment **/\n onPressChannel: (channel: SendbirdGroupChannel) => void;\n /** Navigate to GroupChannelCreateFragment **/\n onPressCreateChannel: (channelType: GroupChannelType) => void;\n /** Custom Header for TypeSelector, Only replace header component not a module **/\n TypeSelectorHeader?: null | CommonComponent<\n BaseHeaderProps<{ title: string; right: React.ReactElement; onPressRight: () => void }>\n >;\n /** Method to render GroupChannel preview **/\n renderGroupChannelPreview?: (\n channel: SendbirdGroupChannel,\n onLongPressChannel: () => void,\n ) => React.ReactElement | null;\n // /** Skip type selection, When this is set to true 'channelType' only receive 'GROUP' type **/\n // skipTypeSelection?: boolean;\n /** Custom Query creator for channels query **/\n queryCreator?: UseGroupChannelListOptions['queryCreator'];\n /** Custom Collection creator for group channel collection **/\n collectionCreator?: UseGroupChannelListOptions['collectionCreator'];\n /** FlatList props for GroupChannelList.List **/\n flatListProps?: GroupChannelListProps['List']['flatListProps'];\n /** Action menu item creator for onLongPress **/\n menuItemCreator?: GroupChannelListProps['List']['menuItemCreator'];\n };\n /** Props for `GroupChannelListModule.Header` **/\n Header: {};\n /** Props for `GroupChannelListModule.List` **/\n List: {\n /** GroupChannels from SendbirdChat SDK **/\n groupChannels: SendbirdGroupChannel[];\n /** Method to render GroupChannel preview **/\n renderGroupChannelPreview: (\n // FIXME/BREAKING: Changed to props object\n channel: SendbirdGroupChannel,\n onLongPressChannel: () => void,\n ) => React.ReactElement | null;\n /** Method to load more data, called with onEndReached of FlatList **/\n onLoadNext: () => Promise<void>;\n /** Prop from Fragment **/\n flatListProps?: Omit<FlatListProps<SendbirdGroupChannel>, 'data' | 'renderItem'>;\n /** Prop from Fragment **/\n menuItemCreator?: (defaultMenuItem: ActionMenuItem) => ActionMenuItem;\n };\n /** Props for `GroupChannelListModule.TypeSelector` **/\n TypeSelector: {\n /** Prop from Fragment `Fragment.TypeSelectorHeader` **/\n Header: GroupChannelListProps['Fragment']['TypeSelectorHeader'];\n /** Prop from Fragment `Fragment.skipTypeSelection` **/\n skipTypeSelection: boolean;\n /** Method called when type is selected, call `Fragment.onPressCreateChannel` **/\n onSelectType: (type: GroupChannelType) => void;\n };\n}\n\n/**\n * Internal context for GroupChannelList\n * For example, the developer can create a custom header\n * with getting data from the domain context\n * */\nexport interface GroupChannelListContextsType {\n Fragment: React.Context<{\n headerTitle: string;\n }>;\n TypeSelector: React.Context<{\n visible: boolean;\n show: () => void;\n hide: () => void;\n headerTitle: string;\n }>;\n}\nexport interface GroupChannelListModule {\n Provider: CommonComponent;\n Header: CommonComponent<GroupChannelListProps['Header']>;\n List: CommonComponent<GroupChannelListProps['List']>;\n TypeSelector: CommonComponent<GroupChannelListProps['TypeSelector']>;\n StatusEmpty: CommonComponent;\n StatusLoading: CommonComponent;\n}\n\nexport type GroupChannelListFragment = CommonComponent<GroupChannelListProps['Fragment']>;\nexport type GroupChannelType = 'GROUP' | 'SUPER_GROUP' | 'BROADCAST';\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type React from 'react';\nimport type { FlatListProps } from 'react-native';\n\nimport type { UseGroupChannelListOptions } from '@sendbird/uikit-chat-hooks';\nimport type { ActionMenuItem } from '@sendbird/uikit-react-native-foundation';\nimport type { SendbirdGroupChannel } from '@sendbird/uikit-utils';\n\nimport type { CommonComponent } from '../../types';\n\nexport interface GroupChannelListProps {\n /** Props for `GroupChannelListFragment` **/\n Fragment: {\n /** Navigate to GroupChannelFragment **/\n onPressChannel: (channel: SendbirdGroupChannel) => void;\n /** Navigate to GroupChannelCreateFragment **/\n onPressCreateChannel: (channelType: GroupChannelType) => void;\n /** Method to render GroupChannel preview **/\n renderGroupChannelPreview?: (\n channel: SendbirdGroupChannel,\n onLongPressChannel: () => void,\n ) => React.ReactElement | null;\n /** Skip type selection, When this is set to true 'channelType' only receive 'GROUP' type **/\n skipTypeSelection?: boolean;\n /** Custom Query creator for channels query **/\n queryCreator?: UseGroupChannelListOptions['queryCreator'];\n /** Custom Collection creator for group channel collection **/\n collectionCreator?: UseGroupChannelListOptions['collectionCreator'];\n /** FlatList props for GroupChannelList.List **/\n flatListProps?: GroupChannelListProps['List']['flatListProps'];\n /** Action menu item creator for onLongPress **/\n menuItemCreator?: GroupChannelListProps['List']['menuItemCreator'];\n };\n /** Props for `GroupChannelListModule.Header` **/\n Header: {};\n /** Props for `GroupChannelListModule.List` **/\n List: {\n /** GroupChannels from SendbirdChat SDK **/\n groupChannels: SendbirdGroupChannel[];\n /** Method to render GroupChannel preview **/\n renderGroupChannelPreview: (\n // FIXME/BREAKING: Changed to props object\n channel: SendbirdGroupChannel,\n onLongPressChannel: () => void,\n ) => React.ReactElement | null;\n /** Method to load more data, called with onEndReached of FlatList **/\n onLoadNext: () => Promise<void>;\n /** Prop from Fragment **/\n flatListProps?: Omit<FlatListProps<SendbirdGroupChannel>, 'data' | 'renderItem'>;\n /** Prop from Fragment **/\n menuItemCreator?: (defaultMenuItem: ActionMenuItem) => ActionMenuItem;\n };\n /** Props for `GroupChannelListModule.TypeSelector` **/\n TypeSelector: {\n /** Prop from Fragment `Fragment.skipTypeSelection` **/\n skipTypeSelection: boolean;\n /** Method called when type is selected, call `Fragment.onPressCreateChannel` **/\n onSelectType: (type: GroupChannelType) => void;\n };\n}\n\n/**\n * Internal context for GroupChannelList\n * For example, the developer can create a custom header\n * with getting data from the domain context\n * */\nexport interface GroupChannelListContextsType {\n Fragment: React.Context<{\n headerTitle: string;\n }>;\n TypeSelector: React.Context<{\n visible: boolean;\n show: () => void;\n hide: () => void;\n headerTitle: string;\n }>;\n}\nexport interface GroupChannelListModule {\n Provider: CommonComponent;\n Header: CommonComponent<GroupChannelListProps['Header']>;\n List: CommonComponent<GroupChannelListProps['List']>;\n TypeSelector: CommonComponent<GroupChannelListProps['TypeSelector']>;\n StatusEmpty: CommonComponent;\n StatusLoading: CommonComponent;\n}\n\nexport type GroupChannelListFragment = CommonComponent<GroupChannelListProps['Fragment']>;\nexport type GroupChannelType = 'GROUP' | 'SUPER_GROUP' | 'BROADCAST';\n"],"mappings":""}
@@ -0,0 +1,25 @@
1
+ import React, { useContext } from 'react';
2
+ import { Icon, useHeaderStyle } from '@sendbird/uikit-react-native-foundation';
3
+ import { GroupChannelModerationContexts } from '../module/moduleContext';
4
+
5
+ const GroupChannelModerationHeader = _ref => {
6
+ let {
7
+ onPressHeaderLeft
8
+ } = _ref;
9
+ const {
10
+ headerTitle
11
+ } = useContext(GroupChannelModerationContexts.Fragment);
12
+ const {
13
+ HeaderComponent
14
+ } = useHeaderStyle();
15
+ return /*#__PURE__*/React.createElement(HeaderComponent, {
16
+ title: headerTitle,
17
+ left: /*#__PURE__*/React.createElement(Icon, {
18
+ icon: 'arrow-left'
19
+ }),
20
+ onPressLeft: onPressHeaderLeft
21
+ });
22
+ };
23
+
24
+ export default GroupChannelModerationHeader;
25
+ //# sourceMappingURL=GroupChannelModerationHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useContext","Icon","useHeaderStyle","GroupChannelModerationContexts","GroupChannelModerationHeader","onPressHeaderLeft","headerTitle","Fragment","HeaderComponent"],"sources":["GroupChannelModerationHeader.tsx"],"sourcesContent":["import React, { useContext } from 'react';\n\nimport { Icon, useHeaderStyle } from '@sendbird/uikit-react-native-foundation';\n\nimport { GroupChannelModerationContexts } from '../module/moduleContext';\nimport type { GroupChannelModerationProps } from '../types';\n\nconst GroupChannelModerationHeader = ({ onPressHeaderLeft }: GroupChannelModerationProps['Header']) => {\n const { headerTitle } = useContext(GroupChannelModerationContexts.Fragment);\n const { HeaderComponent } = useHeaderStyle();\n return <HeaderComponent title={headerTitle} left={<Icon icon={'arrow-left'} />} onPressLeft={onPressHeaderLeft} />;\n};\n\nexport default GroupChannelModerationHeader;\n"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AAEA,SAASC,IAAT,EAAeC,cAAf,QAAqC,yCAArC;AAEA,SAASC,8BAAT,QAA+C,yBAA/C;;AAGA,MAAMC,4BAA4B,GAAG,QAAkE;EAAA,IAAjE;IAAEC;EAAF,CAAiE;EACrG,MAAM;IAAEC;EAAF,IAAkBN,UAAU,CAACG,8BAA8B,CAACI,QAAhC,CAAlC;EACA,MAAM;IAAEC;EAAF,IAAsBN,cAAc,EAA1C;EACA,oBAAO,oBAAC,eAAD;IAAiB,KAAK,EAAEI,WAAxB;IAAqC,IAAI,eAAE,oBAAC,IAAD;MAAM,IAAI,EAAE;IAAZ,EAA3C;IAAyE,WAAW,EAAED;EAAtF,EAAP;AACD,CAJD;;AAMA,eAAeD,4BAAf"}
@@ -0,0 +1,87 @@
1
+ import React, { useContext, useState } from 'react';
2
+ import { View } from 'react-native';
3
+ import { Icon, MenuBar, Switch, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';
4
+ import { useLocalization } from '../../../hooks/useContext';
5
+ import { GroupChannelModerationContexts } from '../module/moduleContext';
6
+
7
+ const GroupChannelModerationMenu = _ref => {
8
+ let {
9
+ onPressMenuBannedUsers,
10
+ onPressMenuMutedMembers,
11
+ onPressMenuOperators,
12
+ menuItemsCreator = menu => menu
13
+ } = _ref;
14
+ const {
15
+ channel
16
+ } = useContext(GroupChannelModerationContexts.Fragment);
17
+ const {
18
+ STRINGS
19
+ } = useLocalization();
20
+ const {
21
+ colors
22
+ } = useUIKitTheme();
23
+ const [isFrozen, setIsFrozen] = useState(() => channel.isFrozen);
24
+
25
+ const toggleFreeze = async () => {
26
+ if (channel.isFrozen) {
27
+ await channel.unfreeze();
28
+ } else {
29
+ await channel.freeze();
30
+ }
31
+
32
+ setIsFrozen(channel.isFrozen);
33
+ };
34
+
35
+ const menuItems = menuItemsCreator([{
36
+ icon: 'operator',
37
+ name: STRINGS.GROUP_CHANNEL_MODERATION.MENU_OPERATORS,
38
+ onPress: () => onPressMenuOperators(),
39
+ actionItem: /*#__PURE__*/React.createElement(Icon, {
40
+ icon: 'chevron-right',
41
+ color: colors.onBackground01
42
+ })
43
+ }, {
44
+ icon: 'mute',
45
+ visible: !channel.isBroadcast,
46
+ name: STRINGS.GROUP_CHANNEL_MODERATION.MENU_MUTED_MEMBERS,
47
+ onPress: () => onPressMenuMutedMembers(),
48
+ actionItem: /*#__PURE__*/React.createElement(Icon, {
49
+ icon: 'chevron-right',
50
+ color: colors.onBackground01
51
+ })
52
+ }, {
53
+ icon: 'ban',
54
+ name: STRINGS.GROUP_CHANNEL_MODERATION.MENU_BANNED_USERS,
55
+ onPress: () => onPressMenuBannedUsers(),
56
+ actionItem: /*#__PURE__*/React.createElement(Icon, {
57
+ icon: 'chevron-right',
58
+ color: colors.onBackground01
59
+ })
60
+ }, {
61
+ icon: 'freeze',
62
+ visible: !channel.isBroadcast,
63
+ name: STRINGS.GROUP_CHANNEL_MODERATION.MENU_FREEZE_CHANNEL,
64
+ actionItem: /*#__PURE__*/React.createElement(Switch, {
65
+ value: isFrozen,
66
+ onChangeValue: toggleFreeze
67
+ }),
68
+ onPress: toggleFreeze
69
+ }]);
70
+ return /*#__PURE__*/React.createElement(View, null, menuItems.map(menu => {
71
+ return /*#__PURE__*/React.createElement(MenuBar, {
72
+ key: menu.name,
73
+ onPress: menu.onPress,
74
+ name: menu.name,
75
+ disabled: menu.disabled,
76
+ visible: menu.visible,
77
+ icon: menu.icon,
78
+ iconColor: menu.iconColor,
79
+ iconBackgroundColor: menu.iconBackgroundColor,
80
+ actionLabel: menu.actionLabel,
81
+ actionItem: menu.actionItem
82
+ });
83
+ }));
84
+ };
85
+
86
+ export default GroupChannelModerationMenu;
87
+ //# sourceMappingURL=GroupChannelModerationMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useContext","useState","View","Icon","MenuBar","Switch","useUIKitTheme","useLocalization","GroupChannelModerationContexts","GroupChannelModerationMenu","onPressMenuBannedUsers","onPressMenuMutedMembers","onPressMenuOperators","menuItemsCreator","menu","channel","Fragment","STRINGS","colors","isFrozen","setIsFrozen","toggleFreeze","unfreeze","freeze","menuItems","icon","name","GROUP_CHANNEL_MODERATION","MENU_OPERATORS","onPress","actionItem","onBackground01","visible","isBroadcast","MENU_MUTED_MEMBERS","MENU_BANNED_USERS","MENU_FREEZE_CHANNEL","map","disabled","iconColor","iconBackgroundColor","actionLabel"],"sources":["GroupChannelModerationMenu.tsx"],"sourcesContent":["import React, { useContext, useState } from 'react';\nimport { View } from 'react-native';\n\nimport type { MenuBarProps } from '@sendbird/uikit-react-native-foundation';\nimport { Icon, MenuBar, Switch, useUIKitTheme } from '@sendbird/uikit-react-native-foundation';\n\nimport { useLocalization } from '../../../hooks/useContext';\nimport { GroupChannelModerationContexts } from '../module/moduleContext';\nimport type { GroupChannelModerationProps } from '../types';\n\nconst GroupChannelModerationMenu = ({\n onPressMenuBannedUsers,\n onPressMenuMutedMembers,\n onPressMenuOperators,\n menuItemsCreator = (menu) => menu,\n}: GroupChannelModerationProps['Menu']) => {\n const { channel } = useContext(GroupChannelModerationContexts.Fragment);\n const { STRINGS } = useLocalization();\n const { colors } = useUIKitTheme();\n\n const [isFrozen, setIsFrozen] = useState(() => channel.isFrozen);\n\n const toggleFreeze = async () => {\n if (channel.isFrozen) {\n await channel.unfreeze();\n } else {\n await channel.freeze();\n }\n\n setIsFrozen(channel.isFrozen);\n };\n\n const menuItems: MenuBarProps[] = menuItemsCreator([\n {\n icon: 'operator',\n name: STRINGS.GROUP_CHANNEL_MODERATION.MENU_OPERATORS,\n onPress: () => onPressMenuOperators(),\n actionItem: <Icon icon={'chevron-right'} color={colors.onBackground01} />,\n },\n {\n icon: 'mute',\n visible: !channel.isBroadcast,\n name: STRINGS.GROUP_CHANNEL_MODERATION.MENU_MUTED_MEMBERS,\n onPress: () => onPressMenuMutedMembers(),\n actionItem: <Icon icon={'chevron-right'} color={colors.onBackground01} />,\n },\n {\n icon: 'ban',\n name: STRINGS.GROUP_CHANNEL_MODERATION.MENU_BANNED_USERS,\n onPress: () => onPressMenuBannedUsers(),\n actionItem: <Icon icon={'chevron-right'} color={colors.onBackground01} />,\n },\n {\n icon: 'freeze',\n visible: !channel.isBroadcast,\n name: STRINGS.GROUP_CHANNEL_MODERATION.MENU_FREEZE_CHANNEL,\n actionItem: <Switch value={isFrozen} onChangeValue={toggleFreeze} />,\n onPress: toggleFreeze,\n },\n ]);\n\n return (\n <View>\n {menuItems.map((menu) => {\n return (\n <MenuBar\n key={menu.name}\n onPress={menu.onPress}\n name={menu.name}\n disabled={menu.disabled}\n visible={menu.visible}\n icon={menu.icon}\n iconColor={menu.iconColor}\n iconBackgroundColor={menu.iconBackgroundColor}\n actionLabel={menu.actionLabel}\n actionItem={menu.actionItem}\n />\n );\n })}\n </View>\n );\n};\n\nexport default GroupChannelModerationMenu;\n"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { default as GroupChannelModerationHeader } from './component/GroupChannelModerationHeader';
2
+ export { default as GroupChannelModerationMenu } from './component/GroupChannelModerationMenu';
3
+ export { default as createGroupChannelModerationModule } from './module/createGroupChannelModerationModule';
4
+ export { GroupChannelModerationContextsProvider, GroupChannelModerationContexts } from './module/moduleContext';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["default","GroupChannelModerationHeader","GroupChannelModerationMenu","createGroupChannelModerationModule","GroupChannelModerationContextsProvider","GroupChannelModerationContexts"],"sources":["index.ts"],"sourcesContent":["export { default as GroupChannelModerationHeader } from './component/GroupChannelModerationHeader';\nexport { default as GroupChannelModerationMenu } from './component/GroupChannelModerationMenu';\nexport { default as createGroupChannelModerationModule } from './module/createGroupChannelModerationModule';\nexport { GroupChannelModerationContextsProvider, GroupChannelModerationContexts } from './module/moduleContext';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,4BAApB,QAAwD,0CAAxD;AACA,SAASD,OAAO,IAAIE,0BAApB,QAAsD,wCAAtD;AACA,SAASF,OAAO,IAAIG,kCAApB,QAA8D,6CAA9D;AACA,SAASC,sCAAT,EAAiDC,8BAAjD,QAAuF,wBAAvF"}
@@ -0,0 +1,21 @@
1
+ import GroupChannelModerationHeader from '../component/GroupChannelModerationHeader';
2
+ import GroupChannelModerationMenu from '../component/GroupChannelModerationMenu';
3
+ import { GroupChannelModerationContextsProvider } from './moduleContext';
4
+
5
+ const createGroupChannelModerationModule = function () {
6
+ let {
7
+ Header = GroupChannelModerationHeader,
8
+ Menu = GroupChannelModerationMenu,
9
+ Provider = GroupChannelModerationContextsProvider,
10
+ ...module
11
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
12
+ return {
13
+ Header,
14
+ Menu,
15
+ Provider,
16
+ ...module
17
+ };
18
+ };
19
+
20
+ export default createGroupChannelModerationModule;
21
+ //# sourceMappingURL=createGroupChannelModerationModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GroupChannelModerationHeader","GroupChannelModerationMenu","GroupChannelModerationContextsProvider","createGroupChannelModerationModule","Header","Menu","Provider","module"],"sources":["createGroupChannelModerationModule.tsx"],"sourcesContent":["import GroupChannelModerationHeader from '../component/GroupChannelModerationHeader';\nimport GroupChannelModerationMenu from '../component/GroupChannelModerationMenu';\nimport type { GroupChannelModerationModule } from '../types';\nimport { GroupChannelModerationContextsProvider } from './moduleContext';\n\nconst createGroupChannelModerationModule = ({\n Header = GroupChannelModerationHeader,\n Menu = GroupChannelModerationMenu,\n Provider = GroupChannelModerationContextsProvider,\n ...module\n}: Partial<GroupChannelModerationModule> = {}): GroupChannelModerationModule => {\n return { Header, Menu, Provider, ...module };\n};\n\nexport default createGroupChannelModerationModule;\n"],"mappings":"AAAA,OAAOA,4BAAP,MAAyC,2CAAzC;AACA,OAAOC,0BAAP,MAAuC,yCAAvC;AAEA,SAASC,sCAAT,QAAuD,iBAAvD;;AAEA,MAAMC,kCAAkC,GAAG,YAKqC;EAAA,IALpC;IAC1CC,MAAM,GAAGJ,4BADiC;IAE1CK,IAAI,GAAGJ,0BAFmC;IAG1CK,QAAQ,GAAGJ,sCAH+B;IAI1C,GAAGK;EAJuC,CAKoC,uEAArC,EAAqC;EAC9E,OAAO;IAAEH,MAAF;IAAUC,IAAV;IAAgBC,QAAhB;IAA0B,GAAGC;EAA7B,CAAP;AACD,CAPD;;AASA,eAAeJ,kCAAf"}