@sendbird/uikit-react-native 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. package/lib/commonjs/InternalErrorBoundary.js +84 -0
  2. package/lib/commonjs/InternalErrorBoundary.js.map +1 -0
  3. package/lib/commonjs/InternalLocalCacheStorage.js +59 -0
  4. package/lib/commonjs/InternalLocalCacheStorage.js.map +1 -0
  5. package/lib/commonjs/SendbirdUIKitContainer.js +166 -0
  6. package/lib/commonjs/SendbirdUIKitContainer.js.map +1 -0
  7. package/lib/commonjs/components/ChannelCover.js +59 -0
  8. package/lib/commonjs/components/ChannelCover.js.map +1 -0
  9. package/lib/commonjs/components/ChatFlatList.js +118 -0
  10. package/lib/commonjs/components/ChatFlatList.js.map +1 -0
  11. package/lib/commonjs/components/MessageRenderer/AdminMessage/index.js +52 -0
  12. package/lib/commonjs/components/MessageRenderer/AdminMessage/index.js.map +1 -0
  13. package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js +76 -0
  14. package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -0
  15. package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js +61 -0
  16. package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -0
  17. package/lib/commonjs/components/MessageRenderer/FileMessage/index.js +31 -0
  18. package/lib/commonjs/components/MessageRenderer/FileMessage/index.js.map +1 -0
  19. package/lib/commonjs/components/MessageRenderer/MessageContainer.js +33 -0
  20. package/lib/commonjs/components/MessageRenderer/MessageContainer.js.map +1 -0
  21. package/lib/commonjs/components/MessageRenderer/MessageDateSeparator.js +58 -0
  22. package/lib/commonjs/components/MessageRenderer/MessageDateSeparator.js.map +1 -0
  23. package/lib/commonjs/components/MessageRenderer/MessageIncomingAvatar.js +42 -0
  24. package/lib/commonjs/components/MessageRenderer/MessageIncomingAvatar.js.map +1 -0
  25. package/lib/commonjs/components/MessageRenderer/MessageIncomingSenderName.js +48 -0
  26. package/lib/commonjs/components/MessageRenderer/MessageIncomingSenderName.js.map +1 -0
  27. package/lib/commonjs/components/MessageRenderer/MessageOutgoingStatus.js +134 -0
  28. package/lib/commonjs/components/MessageRenderer/MessageOutgoingStatus.js.map +1 -0
  29. package/lib/commonjs/components/MessageRenderer/MessageTime.js +41 -0
  30. package/lib/commonjs/components/MessageRenderer/MessageTime.js.map +1 -0
  31. package/lib/commonjs/components/MessageRenderer/UnknownMessage/index.js +53 -0
  32. package/lib/commonjs/components/MessageRenderer/UnknownMessage/index.js.map +1 -0
  33. package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js +54 -0
  34. package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -0
  35. package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +131 -0
  36. package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -0
  37. package/lib/commonjs/components/MessageRenderer/UserMessage/index.js +31 -0
  38. package/lib/commonjs/components/MessageRenderer/UserMessage/index.js.map +1 -0
  39. package/lib/commonjs/components/MessageRenderer/index.js +189 -0
  40. package/lib/commonjs/components/MessageRenderer/index.js.map +1 -0
  41. package/lib/commonjs/components/NewMessagesButton.js +73 -0
  42. package/lib/commonjs/components/NewMessagesButton.js.map +1 -0
  43. package/lib/commonjs/components/ProviderLayout.js +37 -0
  44. package/lib/commonjs/components/ProviderLayout.js.map +1 -0
  45. package/lib/commonjs/components/ScrollToBottomButton.js +66 -0
  46. package/lib/commonjs/components/ScrollToBottomButton.js.map +1 -0
  47. package/lib/commonjs/components/StatusComposition.js +27 -0
  48. package/lib/commonjs/components/StatusComposition.js.map +1 -0
  49. package/lib/commonjs/components/TypedPlaceholder.js +80 -0
  50. package/lib/commonjs/components/TypedPlaceholder.js.map +1 -0
  51. package/lib/commonjs/components/UserActionBar.js +96 -0
  52. package/lib/commonjs/components/UserActionBar.js.map +1 -0
  53. package/lib/commonjs/components/UserSelectableBar.js +78 -0
  54. package/lib/commonjs/components/UserSelectableBar.js.map +1 -0
  55. package/lib/commonjs/constants.js +9 -0
  56. package/lib/commonjs/constants.js.map +1 -0
  57. package/lib/commonjs/contexts/Localization.js +29 -0
  58. package/lib/commonjs/contexts/Localization.js.map +1 -0
  59. package/lib/commonjs/contexts/PlatformService.js +33 -0
  60. package/lib/commonjs/contexts/PlatformService.js.map +1 -0
  61. package/lib/commonjs/contexts/SendbirdChat.js +87 -0
  62. package/lib/commonjs/contexts/SendbirdChat.js.map +1 -0
  63. package/lib/commonjs/domain/groupChannel/component/GroupChannelHeader.js +88 -0
  64. package/lib/commonjs/domain/groupChannel/component/GroupChannelHeader.js.map +1 -0
  65. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js +118 -0
  66. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -0
  67. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js +148 -0
  68. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -0
  69. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js +115 -0
  70. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -0
  71. package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js +343 -0
  72. package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -0
  73. package/lib/commonjs/domain/groupChannel/component/GroupChannelStatusEmpty.js +34 -0
  74. package/lib/commonjs/domain/groupChannel/component/GroupChannelStatusEmpty.js.map +1 -0
  75. package/lib/commonjs/domain/groupChannel/component/GroupChannelStatusLoading.js +34 -0
  76. package/lib/commonjs/domain/groupChannel/component/GroupChannelStatusLoading.js.map +1 -0
  77. package/lib/commonjs/domain/groupChannel/index.js +70 -0
  78. package/lib/commonjs/domain/groupChannel/index.js.map +1 -0
  79. package/lib/commonjs/domain/groupChannel/module/createGroupChannelModule.js +45 -0
  80. package/lib/commonjs/domain/groupChannel/module/createGroupChannelModule.js.map +1 -0
  81. package/lib/commonjs/domain/groupChannel/module/moduleContext.js +79 -0
  82. package/lib/commonjs/domain/groupChannel/module/moduleContext.js.map +1 -0
  83. package/lib/commonjs/domain/groupChannel/types.js +6 -0
  84. package/lib/commonjs/domain/groupChannel/types.js.map +1 -0
  85. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListHeader.js +35 -0
  86. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListHeader.js.map +1 -0
  87. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js +96 -0
  88. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js.map +1 -0
  89. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListStatusEmpty.js +34 -0
  90. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListStatusEmpty.js.map +1 -0
  91. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListStatusLoading.js +34 -0
  92. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListStatusLoading.js.map +1 -0
  93. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js +141 -0
  94. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -0
  95. package/lib/commonjs/domain/groupChannelList/index.js +70 -0
  96. package/lib/commonjs/domain/groupChannelList/index.js.map +1 -0
  97. package/lib/commonjs/domain/groupChannelList/module/createGroupChannelListModule.js +45 -0
  98. package/lib/commonjs/domain/groupChannelList/module/createGroupChannelListModule.js.map +1 -0
  99. package/lib/commonjs/domain/groupChannelList/module/moduleContext.js +61 -0
  100. package/lib/commonjs/domain/groupChannelList/module/moduleContext.js.map +1 -0
  101. package/lib/commonjs/domain/groupChannelList/types.js +6 -0
  102. package/lib/commonjs/domain/groupChannelList/types.js.map +1 -0
  103. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js +49 -0
  104. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js.map +1 -0
  105. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +77 -0
  106. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -0
  107. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +94 -0
  108. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -0
  109. package/lib/commonjs/domain/groupChannelSettings/index.js +54 -0
  110. package/lib/commonjs/domain/groupChannelSettings/index.js.map +1 -0
  111. package/lib/commonjs/domain/groupChannelSettings/module/createGroupChannelSettingsModule.js +37 -0
  112. package/lib/commonjs/domain/groupChannelSettings/module/createGroupChannelSettingsModule.js.map +1 -0
  113. package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js +150 -0
  114. package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js.map +1 -0
  115. package/lib/commonjs/domain/groupChannelSettings/types.js +6 -0
  116. package/lib/commonjs/domain/groupChannelSettings/types.js.map +1 -0
  117. package/lib/commonjs/domain/groupChannelUserList/types.js +6 -0
  118. package/lib/commonjs/domain/groupChannelUserList/types.js.map +1 -0
  119. package/lib/commonjs/domain/userList/component/UserListHeader.js +56 -0
  120. package/lib/commonjs/domain/userList/component/UserListHeader.js.map +1 -0
  121. package/lib/commonjs/domain/userList/component/UserListList.js +57 -0
  122. package/lib/commonjs/domain/userList/component/UserListList.js.map +1 -0
  123. package/lib/commonjs/domain/userList/component/UserListStatusEmpty.js +34 -0
  124. package/lib/commonjs/domain/userList/component/UserListStatusEmpty.js.map +1 -0
  125. package/lib/commonjs/domain/userList/component/UserListStatusError.js +38 -0
  126. package/lib/commonjs/domain/userList/component/UserListStatusError.js.map +1 -0
  127. package/lib/commonjs/domain/userList/component/UserListStatusLoading.js +34 -0
  128. package/lib/commonjs/domain/userList/component/UserListStatusLoading.js.map +1 -0
  129. package/lib/commonjs/domain/userList/index.js +70 -0
  130. package/lib/commonjs/domain/userList/index.js.map +1 -0
  131. package/lib/commonjs/domain/userList/module/createUserListModule.js +45 -0
  132. package/lib/commonjs/domain/userList/module/createUserListModule.js.map +1 -0
  133. package/lib/commonjs/domain/userList/module/moduleContext.js +54 -0
  134. package/lib/commonjs/domain/userList/module/moduleContext.js.map +1 -0
  135. package/lib/commonjs/domain/userList/types.js +6 -0
  136. package/lib/commonjs/domain/userList/types.js.map +1 -0
  137. package/lib/commonjs/fragments/createGroupChannelCreateFragment.js +145 -0
  138. package/lib/commonjs/fragments/createGroupChannelCreateFragment.js.map +1 -0
  139. package/lib/commonjs/fragments/createGroupChannelFragment.js +154 -0
  140. package/lib/commonjs/fragments/createGroupChannelFragment.js.map +1 -0
  141. package/lib/commonjs/fragments/createGroupChannelInviteFragment.js +139 -0
  142. package/lib/commonjs/fragments/createGroupChannelInviteFragment.js.map +1 -0
  143. package/lib/commonjs/fragments/createGroupChannelListFragment.js +141 -0
  144. package/lib/commonjs/fragments/createGroupChannelListFragment.js.map +1 -0
  145. package/lib/commonjs/fragments/createGroupChannelMembersFragment.js +134 -0
  146. package/lib/commonjs/fragments/createGroupChannelMembersFragment.js.map +1 -0
  147. package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js +66 -0
  148. package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js.map +1 -0
  149. package/lib/commonjs/hooks/useConnection.js +102 -0
  150. package/lib/commonjs/hooks/useConnection.js.map +1 -0
  151. package/lib/commonjs/hooks/useContext.js +39 -0
  152. package/lib/commonjs/hooks/useContext.js.map +1 -0
  153. package/lib/commonjs/hooks/usePushTokenRegistration.js +83 -0
  154. package/lib/commonjs/hooks/usePushTokenRegistration.js.map +1 -0
  155. package/lib/commonjs/index.js +449 -0
  156. package/lib/commonjs/index.js.map +1 -0
  157. package/lib/commonjs/localization/StringSet.en.js +19 -0
  158. package/lib/commonjs/localization/StringSet.en.js.map +1 -0
  159. package/lib/commonjs/localization/StringSet.type.js +178 -0
  160. package/lib/commonjs/localization/StringSet.type.js.map +1 -0
  161. package/lib/commonjs/platform/createClipboardService.expo.js +23 -0
  162. package/lib/commonjs/platform/createClipboardService.expo.js.map +1 -0
  163. package/lib/commonjs/platform/createClipboardService.native.js +23 -0
  164. package/lib/commonjs/platform/createClipboardService.native.js.map +1 -0
  165. package/lib/commonjs/platform/createFileService.expo.js +175 -0
  166. package/lib/commonjs/platform/createFileService.expo.js.map +1 -0
  167. package/lib/commonjs/platform/createFileService.native.js +253 -0
  168. package/lib/commonjs/platform/createFileService.native.js.map +1 -0
  169. package/lib/commonjs/platform/createNotificationService.expo.js +50 -0
  170. package/lib/commonjs/platform/createNotificationService.expo.js.map +1 -0
  171. package/lib/commonjs/platform/createNotificationService.native.js +65 -0
  172. package/lib/commonjs/platform/createNotificationService.native.js.map +1 -0
  173. package/lib/commonjs/platform/dynamicModule.js +114 -0
  174. package/lib/commonjs/platform/dynamicModule.js.map +1 -0
  175. package/lib/commonjs/platform/types.js +2 -0
  176. package/lib/commonjs/platform/types.js.map +1 -0
  177. package/lib/commonjs/types.js +6 -0
  178. package/lib/commonjs/types.js.map +1 -0
  179. package/lib/commonjs/utils/expoPermissionGranted.js +32 -0
  180. package/lib/commonjs/utils/expoPermissionGranted.js.map +1 -0
  181. package/lib/commonjs/utils/fileTypeGuard.js +26 -0
  182. package/lib/commonjs/utils/fileTypeGuard.js.map +1 -0
  183. package/lib/commonjs/utils/nativePermissionGranted.js +23 -0
  184. package/lib/commonjs/utils/nativePermissionGranted.js.map +1 -0
  185. package/lib/commonjs/version.js +10 -0
  186. package/lib/commonjs/version.js.map +1 -0
  187. package/lib/module/InternalErrorBoundary.js +72 -0
  188. package/lib/module/InternalErrorBoundary.js.map +1 -0
  189. package/lib/module/InternalLocalCacheStorage.js +50 -0
  190. package/lib/module/InternalLocalCacheStorage.js.map +1 -0
  191. package/lib/module/SendbirdUIKitContainer.js +136 -0
  192. package/lib/module/SendbirdUIKitContainer.js.map +1 -0
  193. package/lib/module/components/ChannelCover.js +46 -0
  194. package/lib/module/components/ChannelCover.js.map +1 -0
  195. package/lib/module/components/ChatFlatList.js +102 -0
  196. package/lib/module/components/ChatFlatList.js.map +1 -0
  197. package/lib/module/components/MessageRenderer/AdminMessage/index.js +40 -0
  198. package/lib/module/components/MessageRenderer/AdminMessage/index.js.map +1 -0
  199. package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js +62 -0
  200. package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -0
  201. package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js +47 -0
  202. package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -0
  203. package/lib/module/components/MessageRenderer/FileMessage/index.js +17 -0
  204. package/lib/module/components/MessageRenderer/FileMessage/index.js.map +1 -0
  205. package/lib/module/components/MessageRenderer/MessageContainer.js +21 -0
  206. package/lib/module/components/MessageRenderer/MessageContainer.js.map +1 -0
  207. package/lib/module/components/MessageRenderer/MessageDateSeparator.js +44 -0
  208. package/lib/module/components/MessageRenderer/MessageDateSeparator.js.map +1 -0
  209. package/lib/module/components/MessageRenderer/MessageIncomingAvatar.js +30 -0
  210. package/lib/module/components/MessageRenderer/MessageIncomingAvatar.js.map +1 -0
  211. package/lib/module/components/MessageRenderer/MessageIncomingSenderName.js +35 -0
  212. package/lib/module/components/MessageRenderer/MessageIncomingSenderName.js.map +1 -0
  213. package/lib/module/components/MessageRenderer/MessageOutgoingStatus.js +116 -0
  214. package/lib/module/components/MessageRenderer/MessageOutgoingStatus.js.map +1 -0
  215. package/lib/module/components/MessageRenderer/MessageTime.js +28 -0
  216. package/lib/module/components/MessageRenderer/MessageTime.js.map +1 -0
  217. package/lib/module/components/MessageRenderer/UnknownMessage/index.js +40 -0
  218. package/lib/module/components/MessageRenderer/UnknownMessage/index.js.map +1 -0
  219. package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js +41 -0
  220. package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -0
  221. package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +115 -0
  222. package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -0
  223. package/lib/module/components/MessageRenderer/UserMessage/index.js +18 -0
  224. package/lib/module/components/MessageRenderer/UserMessage/index.js.map +1 -0
  225. package/lib/module/components/MessageRenderer/index.js +163 -0
  226. package/lib/module/components/MessageRenderer/index.js.map +1 -0
  227. package/lib/module/components/NewMessagesButton.js +58 -0
  228. package/lib/module/components/NewMessagesButton.js.map +1 -0
  229. package/lib/module/components/ProviderLayout.js +25 -0
  230. package/lib/module/components/ProviderLayout.js.map +1 -0
  231. package/lib/module/components/ScrollToBottomButton.js +52 -0
  232. package/lib/module/components/ScrollToBottomButton.js.map +1 -0
  233. package/lib/module/components/StatusComposition.js +17 -0
  234. package/lib/module/components/StatusComposition.js.map +1 -0
  235. package/lib/module/components/TypedPlaceholder.js +68 -0
  236. package/lib/module/components/TypedPlaceholder.js.map +1 -0
  237. package/lib/module/components/UserActionBar.js +81 -0
  238. package/lib/module/components/UserActionBar.js.map +1 -0
  239. package/lib/module/components/UserSelectableBar.js +63 -0
  240. package/lib/module/components/UserSelectableBar.js.map +1 -0
  241. package/lib/module/constants.js +2 -0
  242. package/lib/module/constants.js.map +1 -0
  243. package/lib/module/contexts/Localization.js +14 -0
  244. package/lib/module/contexts/Localization.js.map +1 -0
  245. package/lib/module/contexts/PlatformService.js +18 -0
  246. package/lib/module/contexts/PlatformService.js.map +1 -0
  247. package/lib/module/contexts/SendbirdChat.js +66 -0
  248. package/lib/module/contexts/SendbirdChat.js.map +1 -0
  249. package/lib/module/domain/groupChannel/component/GroupChannelHeader.js +69 -0
  250. package/lib/module/domain/groupChannel/component/GroupChannelHeader.js.map +1 -0
  251. package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js +102 -0
  252. package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -0
  253. package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js +134 -0
  254. package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -0
  255. package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js +92 -0
  256. package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -0
  257. package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js +317 -0
  258. package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -0
  259. package/lib/module/domain/groupChannel/component/GroupChannelStatusEmpty.js +21 -0
  260. package/lib/module/domain/groupChannel/component/GroupChannelStatusEmpty.js.map +1 -0
  261. package/lib/module/domain/groupChannel/component/GroupChannelStatusLoading.js +21 -0
  262. package/lib/module/domain/groupChannel/component/GroupChannelStatusLoading.js.map +1 -0
  263. package/lib/module/domain/groupChannel/index.js +8 -0
  264. package/lib/module/domain/groupChannel/index.js.map +1 -0
  265. package/lib/module/domain/groupChannel/module/createGroupChannelModule.js +30 -0
  266. package/lib/module/domain/groupChannel/module/createGroupChannelModule.js.map +1 -0
  267. package/lib/module/domain/groupChannel/module/moduleContext.js +57 -0
  268. package/lib/module/domain/groupChannel/module/moduleContext.js.map +1 -0
  269. package/lib/module/domain/groupChannel/types.js +2 -0
  270. package/lib/module/domain/groupChannel/types.js.map +1 -0
  271. package/lib/module/domain/groupChannelList/component/GroupChannelListHeader.js +21 -0
  272. package/lib/module/domain/groupChannelList/component/GroupChannelListHeader.js.map +1 -0
  273. package/lib/module/domain/groupChannelList/component/GroupChannelListList.js +79 -0
  274. package/lib/module/domain/groupChannelList/component/GroupChannelListList.js.map +1 -0
  275. package/lib/module/domain/groupChannelList/component/GroupChannelListStatusEmpty.js +21 -0
  276. package/lib/module/domain/groupChannelList/component/GroupChannelListStatusEmpty.js.map +1 -0
  277. package/lib/module/domain/groupChannelList/component/GroupChannelListStatusLoading.js +21 -0
  278. package/lib/module/domain/groupChannelList/component/GroupChannelListStatusLoading.js.map +1 -0
  279. package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js +124 -0
  280. package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -0
  281. package/lib/module/domain/groupChannelList/index.js +8 -0
  282. package/lib/module/domain/groupChannelList/index.js.map +1 -0
  283. package/lib/module/domain/groupChannelList/module/createGroupChannelListModule.js +30 -0
  284. package/lib/module/domain/groupChannelList/module/createGroupChannelListModule.js.map +1 -0
  285. package/lib/module/domain/groupChannelList/module/moduleContext.js +40 -0
  286. package/lib/module/domain/groupChannelList/module/moduleContext.js.map +1 -0
  287. package/lib/module/domain/groupChannelList/types.js +2 -0
  288. package/lib/module/domain/groupChannelList/types.js.map +1 -0
  289. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js +35 -0
  290. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js.map +1 -0
  291. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +56 -0
  292. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -0
  293. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +78 -0
  294. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -0
  295. package/lib/module/domain/groupChannelSettings/index.js +6 -0
  296. package/lib/module/domain/groupChannelSettings/index.js.map +1 -0
  297. package/lib/module/domain/groupChannelSettings/module/createGroupChannelSettingsModule.js +24 -0
  298. package/lib/module/domain/groupChannelSettings/module/createGroupChannelSettingsModule.js.map +1 -0
  299. package/lib/module/domain/groupChannelSettings/module/moduleContext.js +127 -0
  300. package/lib/module/domain/groupChannelSettings/module/moduleContext.js.map +1 -0
  301. package/lib/module/domain/groupChannelSettings/types.js +2 -0
  302. package/lib/module/domain/groupChannelSettings/types.js.map +1 -0
  303. package/lib/module/domain/groupChannelUserList/types.js +2 -0
  304. package/lib/module/domain/groupChannelUserList/types.js.map +1 -0
  305. package/lib/module/domain/userList/component/UserListHeader.js +42 -0
  306. package/lib/module/domain/userList/component/UserListHeader.js.map +1 -0
  307. package/lib/module/domain/userList/component/UserListList.js +42 -0
  308. package/lib/module/domain/userList/component/UserListList.js.map +1 -0
  309. package/lib/module/domain/userList/component/UserListStatusEmpty.js +21 -0
  310. package/lib/module/domain/userList/component/UserListStatusEmpty.js.map +1 -0
  311. package/lib/module/domain/userList/component/UserListStatusError.js +25 -0
  312. package/lib/module/domain/userList/component/UserListStatusError.js.map +1 -0
  313. package/lib/module/domain/userList/component/UserListStatusLoading.js +21 -0
  314. package/lib/module/domain/userList/component/UserListStatusLoading.js.map +1 -0
  315. package/lib/module/domain/userList/index.js +8 -0
  316. package/lib/module/domain/userList/index.js.map +1 -0
  317. package/lib/module/domain/userList/module/createUserListModule.js +30 -0
  318. package/lib/module/domain/userList/module/createUserListModule.js.map +1 -0
  319. package/lib/module/domain/userList/module/moduleContext.js +34 -0
  320. package/lib/module/domain/userList/module/moduleContext.js.map +1 -0
  321. package/lib/module/domain/userList/types.js +2 -0
  322. package/lib/module/domain/userList/types.js.map +1 -0
  323. package/lib/module/fragments/createGroupChannelCreateFragment.js +124 -0
  324. package/lib/module/fragments/createGroupChannelCreateFragment.js.map +1 -0
  325. package/lib/module/fragments/createGroupChannelFragment.js +132 -0
  326. package/lib/module/fragments/createGroupChannelFragment.js.map +1 -0
  327. package/lib/module/fragments/createGroupChannelInviteFragment.js +118 -0
  328. package/lib/module/fragments/createGroupChannelInviteFragment.js.map +1 -0
  329. package/lib/module/fragments/createGroupChannelListFragment.js +115 -0
  330. package/lib/module/fragments/createGroupChannelListFragment.js.map +1 -0
  331. package/lib/module/fragments/createGroupChannelMembersFragment.js +114 -0
  332. package/lib/module/fragments/createGroupChannelMembersFragment.js.map +1 -0
  333. package/lib/module/fragments/createGroupChannelSettingsFragment.js +51 -0
  334. package/lib/module/fragments/createGroupChannelSettingsFragment.js.map +1 -0
  335. package/lib/module/hooks/useConnection.js +79 -0
  336. package/lib/module/hooks/useConnection.js.map +1 -0
  337. package/lib/module/hooks/useContext.js +20 -0
  338. package/lib/module/hooks/useContext.js.map +1 -0
  339. package/lib/module/hooks/usePushTokenRegistration.js +69 -0
  340. package/lib/module/hooks/usePushTokenRegistration.js.map +1 -0
  341. package/lib/module/index.js +57 -0
  342. package/lib/module/index.js.map +1 -0
  343. package/lib/module/localization/StringSet.en.js +7 -0
  344. package/lib/module/localization/StringSet.en.js.map +1 -0
  345. package/lib/module/localization/StringSet.type.js +173 -0
  346. package/lib/module/localization/StringSet.type.js.map +1 -0
  347. package/lib/module/platform/createClipboardService.expo.js +15 -0
  348. package/lib/module/platform/createClipboardService.expo.js.map +1 -0
  349. package/lib/module/platform/createClipboardService.native.js +15 -0
  350. package/lib/module/platform/createClipboardService.native.js.map +1 -0
  351. package/lib/module/platform/createFileService.expo.js +163 -0
  352. package/lib/module/platform/createFileService.expo.js.map +1 -0
  353. package/lib/module/platform/createFileService.native.js +237 -0
  354. package/lib/module/platform/createFileService.native.js.map +1 -0
  355. package/lib/module/platform/createNotificationService.expo.js +42 -0
  356. package/lib/module/platform/createNotificationService.expo.js.map +1 -0
  357. package/lib/module/platform/createNotificationService.native.js +57 -0
  358. package/lib/module/platform/createNotificationService.native.js.map +1 -0
  359. package/lib/module/platform/dynamicModule.js +103 -0
  360. package/lib/module/platform/dynamicModule.js.map +1 -0
  361. package/lib/module/platform/types.js +2 -0
  362. package/lib/module/platform/types.js.map +1 -0
  363. package/lib/module/types.js +2 -0
  364. package/lib/module/types.js.map +1 -0
  365. package/lib/module/utils/expoPermissionGranted.js +24 -0
  366. package/lib/module/utils/expoPermissionGranted.js.map +1 -0
  367. package/lib/module/utils/fileTypeGuard.js +18 -0
  368. package/lib/module/utils/fileTypeGuard.js.map +1 -0
  369. package/lib/module/utils/nativePermissionGranted.js +15 -0
  370. package/lib/module/utils/nativePermissionGranted.js.map +1 -0
  371. package/lib/module/version.js +3 -0
  372. package/lib/module/version.js.map +1 -0
  373. package/lib/typescript/__template__/component/__domain__Header.d.ts +3 -0
  374. package/lib/typescript/__template__/component/__domain__StatusEmpty.d.ts +2 -0
  375. package/lib/typescript/__template__/component/__domain__StatusLoading.d.ts +2 -0
  376. package/lib/typescript/__template__/component/__domain__View.d.ts +3 -0
  377. package/lib/typescript/__template__/create__domain__Fragment.d.ts +2 -0
  378. package/lib/typescript/__template__/index.d.ts +6 -0
  379. package/lib/typescript/__template__/module/create__domain__Module.d.ts +3 -0
  380. package/lib/typescript/__template__/module/moduleContext.d.ts +3 -0
  381. package/lib/typescript/__template__/types.d.ts +31 -0
  382. package/lib/typescript/src/InternalErrorBoundary.d.ts +19 -0
  383. package/lib/typescript/src/InternalLocalCacheStorage.d.ts +12 -0
  384. package/lib/typescript/src/SendbirdUIKitContainer.d.ts +41 -0
  385. package/lib/typescript/src/components/ChannelCover.d.ts +9 -0
  386. package/lib/typescript/src/components/ChatFlatList.d.ts +14 -0
  387. package/lib/typescript/src/components/MessageRenderer/AdminMessage/index.d.ts +5 -0
  388. package/lib/typescript/src/components/MessageRenderer/FileMessage/BaseFileMessage.d.ts +6 -0
  389. package/lib/typescript/src/components/MessageRenderer/FileMessage/ImageFileMessage.d.ts +3 -0
  390. package/lib/typescript/src/components/MessageRenderer/FileMessage/index.d.ts +6 -0
  391. package/lib/typescript/src/components/MessageRenderer/MessageContainer.d.ts +3 -0
  392. package/lib/typescript/src/components/MessageRenderer/MessageDateSeparator.d.ts +7 -0
  393. package/lib/typescript/src/components/MessageRenderer/MessageIncomingAvatar.d.ts +7 -0
  394. package/lib/typescript/src/components/MessageRenderer/MessageIncomingSenderName.d.ts +7 -0
  395. package/lib/typescript/src/components/MessageRenderer/MessageOutgoingStatus.d.ts +8 -0
  396. package/lib/typescript/src/components/MessageRenderer/MessageTime.d.ts +9 -0
  397. package/lib/typescript/src/components/MessageRenderer/UnknownMessage/index.d.ts +4 -0
  398. package/lib/typescript/src/components/MessageRenderer/UserMessage/BaseUserMessage.d.ts +3 -0
  399. package/lib/typescript/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.d.ts +7 -0
  400. package/lib/typescript/src/components/MessageRenderer/UserMessage/index.d.ts +6 -0
  401. package/lib/typescript/src/components/MessageRenderer/index.d.ts +23 -0
  402. package/lib/typescript/src/components/NewMessagesButton.d.ts +9 -0
  403. package/lib/typescript/src/components/ProviderLayout.d.ts +3 -0
  404. package/lib/typescript/src/components/ScrollToBottomButton.d.ts +7 -0
  405. package/lib/typescript/src/components/StatusComposition.d.ts +10 -0
  406. package/lib/typescript/src/components/TypedPlaceholder.d.ts +6 -0
  407. package/lib/typescript/src/components/UserActionBar.d.ts +11 -0
  408. package/lib/typescript/src/components/UserSelectableBar.d.ts +9 -0
  409. package/lib/typescript/src/constants.d.ts +1 -0
  410. package/lib/typescript/src/contexts/Localization.d.ts +11 -0
  411. package/lib/typescript/src/contexts/PlatformService.d.ts +10 -0
  412. package/lib/typescript/src/contexts/SendbirdChat.d.ts +24 -0
  413. package/lib/typescript/src/domain/groupChannel/component/GroupChannelHeader.d.ts +3 -0
  414. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/EditInput.d.ts +10 -0
  415. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/SendInput.d.ts +8 -0
  416. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/index.d.ts +9 -0
  417. package/lib/typescript/src/domain/groupChannel/component/GroupChannelMessageList.d.ts +36 -0
  418. package/lib/typescript/src/domain/groupChannel/component/GroupChannelStatusEmpty.d.ts +2 -0
  419. package/lib/typescript/src/domain/groupChannel/component/GroupChannelStatusLoading.d.ts +2 -0
  420. package/lib/typescript/src/domain/groupChannel/index.d.ts +7 -0
  421. package/lib/typescript/src/domain/groupChannel/module/createGroupChannelModule.d.ts +3 -0
  422. package/lib/typescript/src/domain/groupChannel/module/moduleContext.d.ts +3 -0
  423. package/lib/typescript/src/domain/groupChannel/types.d.ts +102 -0
  424. package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListHeader.d.ts +3 -0
  425. package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListList.d.ts +3 -0
  426. package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListStatusEmpty.d.ts +2 -0
  427. package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListStatusLoading.d.ts +2 -0
  428. package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListTypeSelector.d.ts +3 -0
  429. package/lib/typescript/src/domain/groupChannelList/index.d.ts +7 -0
  430. package/lib/typescript/src/domain/groupChannelList/module/createGroupChannelListModule.d.ts +3 -0
  431. package/lib/typescript/src/domain/groupChannelList/module/moduleContext.d.ts +3 -0
  432. package/lib/typescript/src/domain/groupChannelList/types.d.ts +81 -0
  433. package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsHeader.d.ts +3 -0
  434. package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsInfo.d.ts +3 -0
  435. package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.d.ts +3 -0
  436. package/lib/typescript/src/domain/groupChannelSettings/index.d.ts +5 -0
  437. package/lib/typescript/src/domain/groupChannelSettings/module/createGroupChannelSettingsModule.d.ts +3 -0
  438. package/lib/typescript/src/domain/groupChannelSettings/module/moduleContext.d.ts +3 -0
  439. package/lib/typescript/src/domain/groupChannelSettings/types.d.ts +45 -0
  440. package/lib/typescript/src/domain/groupChannelUserList/types.d.ts +42 -0
  441. package/lib/typescript/src/domain/userList/component/UserListHeader.d.ts +10 -0
  442. package/lib/typescript/src/domain/userList/component/UserListList.d.ts +11 -0
  443. package/lib/typescript/src/domain/userList/component/UserListStatusEmpty.d.ts +2 -0
  444. package/lib/typescript/src/domain/userList/component/UserListStatusError.d.ts +3 -0
  445. package/lib/typescript/src/domain/userList/component/UserListStatusLoading.d.ts +2 -0
  446. package/lib/typescript/src/domain/userList/index.d.ts +7 -0
  447. package/lib/typescript/src/domain/userList/module/createUserListModule.d.ts +3 -0
  448. package/lib/typescript/src/domain/userList/module/moduleContext.d.ts +3 -0
  449. package/lib/typescript/src/domain/userList/types.d.ts +58 -0
  450. package/lib/typescript/src/fragments/createGroupChannelCreateFragment.d.ts +4 -0
  451. package/lib/typescript/src/fragments/createGroupChannelFragment.d.ts +3 -0
  452. package/lib/typescript/src/fragments/createGroupChannelInviteFragment.d.ts +4 -0
  453. package/lib/typescript/src/fragments/createGroupChannelListFragment.d.ts +3 -0
  454. package/lib/typescript/src/fragments/createGroupChannelMembersFragment.d.ts +5 -0
  455. package/lib/typescript/src/fragments/createGroupChannelSettingsFragment.d.ts +3 -0
  456. package/lib/typescript/src/hooks/useConnection.d.ts +11 -0
  457. package/lib/typescript/src/hooks/useContext.d.ts +24 -0
  458. package/lib/typescript/src/hooks/usePushTokenRegistration.d.ts +5 -0
  459. package/lib/typescript/src/index.d.ts +50 -0
  460. package/lib/typescript/src/localization/StringSet.en.d.ts +2 -0
  461. package/lib/typescript/src/localization/StringSet.type.d.ts +157 -0
  462. package/lib/typescript/src/platform/createClipboardService.expo.d.ts +4 -0
  463. package/lib/typescript/src/platform/createClipboardService.native.d.ts +4 -0
  464. package/lib/typescript/src/platform/createFileService.expo.d.ts +12 -0
  465. package/lib/typescript/src/platform/createFileService.native.d.ts +14 -0
  466. package/lib/typescript/src/platform/createNotificationService.expo.d.ts +4 -0
  467. package/lib/typescript/src/platform/createNotificationService.native.d.ts +8 -0
  468. package/lib/typescript/src/platform/dynamicModule.d.ts +23 -0
  469. package/lib/typescript/src/platform/types.d.ts +47 -0
  470. package/lib/typescript/src/types.d.ts +20 -0
  471. package/lib/typescript/src/utils/expoPermissionGranted.d.ts +13 -0
  472. package/lib/typescript/src/utils/fileTypeGuard.d.ts +4 -0
  473. package/lib/typescript/src/utils/nativePermissionGranted.d.ts +3 -0
  474. package/lib/typescript/src/version.d.ts +2 -0
  475. package/package.json +5 -5
  476. package/src/version.ts +1 -1
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import type { ClipboardServiceInterface, FileServiceInterface, NotificationServiceInterface } from '../platform/types';
3
+ declare type Props = React.PropsWithChildren<{
4
+ fileService: FileServiceInterface;
5
+ clipboardService: ClipboardServiceInterface;
6
+ notificationService: NotificationServiceInterface;
7
+ }>;
8
+ export declare const PlatformServiceContext: React.Context<Props | null>;
9
+ export declare const PlatformServiceProvider: ({ children, fileService, clipboardService, notificationService }: Props) => JSX.Element;
10
+ export {};
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ import type { SendbirdChatSDK, SendbirdGroupChannel, SendbirdUser } from '@sendbird/uikit-utils';
3
+ import type { FileType } from '../platform/types';
4
+ declare type Props = React.PropsWithChildren<{
5
+ sdkInstance: SendbirdChatSDK;
6
+ enableAutoPushTokenRegistration: boolean;
7
+ }>;
8
+ declare type Context = {
9
+ sdk: SendbirdChatSDK;
10
+ currentUser?: SendbirdUser;
11
+ setCurrentUser: React.Dispatch<React.SetStateAction<SendbirdUser | undefined>>;
12
+ updateCurrentUserInfo: (nickname: string, profile?: string | FileType) => Promise<SendbirdUser>;
13
+ markAsDeliveredWithChannel: (channel: SendbirdGroupChannel) => void;
14
+ features: {
15
+ autoPushTokenRegistrationEnabled: boolean;
16
+ deliveryReceiptEnabled: boolean;
17
+ broadcastChannelEnabled: boolean;
18
+ superGroupChannelEnabled: boolean;
19
+ reactionEnabled: boolean;
20
+ };
21
+ };
22
+ export declare const SendbirdChatContext: React.Context<Context | null>;
23
+ export declare const SendbirdChatProvider: ({ children, sdkInstance, enableAutoPushTokenRegistration }: Props) => JSX.Element;
24
+ export {};
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelProps } from '../types';
2
+ declare const GroupChannelHeader: ({ onPressHeaderLeft, onPressHeaderRight }: GroupChannelProps['Header']) => JSX.Element;
3
+ export default GroupChannelHeader;
@@ -0,0 +1,10 @@
1
+ import type { SendbirdFileMessage, SendbirdUserMessage } from '@sendbird/uikit-utils';
2
+ import type { GroupChannelProps } from '../../types';
3
+ declare type EditInputProps = GroupChannelProps['Input'] & {
4
+ text: string;
5
+ setText: (val: string) => void;
6
+ editMessage: SendbirdUserMessage | SendbirdFileMessage;
7
+ setEditMessage: (msg?: SendbirdUserMessage | SendbirdFileMessage) => void;
8
+ };
9
+ declare const EditInput: ({ text, setText, editMessage, setEditMessage, onUpdateUserMessage }: EditInputProps) => JSX.Element;
10
+ export default EditInput;
@@ -0,0 +1,8 @@
1
+ import type { GroupChannelProps } from '../../types';
2
+ declare type SendInputProps = GroupChannelProps['Input'] & {
3
+ text: string;
4
+ setText: (val: string) => void;
5
+ disabled: boolean;
6
+ };
7
+ declare const SendInput: ({ onSendUserMessage, onSendFileMessage, text, setText, disabled }: SendInputProps) => JSX.Element;
8
+ export default SendInput;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ declare const _default: React.MemoExoticComponent<(props: {
3
+ channel: import("sendbird").GroupChannel;
4
+ onSendFileMessage: (file: import("../../../..").FileType) => Promise<void>;
5
+ onSendUserMessage: (text: string) => Promise<void>;
6
+ onUpdateFileMessage: (editedFile: import("../../../..").FileType, message: import("sendbird").FileMessage) => Promise<void>;
7
+ onUpdateUserMessage: (editedText: string, message: import("sendbird").UserMessage) => Promise<void>;
8
+ }) => JSX.Element>;
9
+ export default _default;
@@ -0,0 +1,36 @@
1
+ import React from 'react';
2
+ import type { SendbirdMessage } from '@sendbird/uikit-utils';
3
+ declare const _default: React.MemoExoticComponent<({ currentUserId, channel, messages, renderMessage, nextMessages, newMessagesFromMembers, onBottomReached, onTopReached, renderNewMessagesButton, renderScrollToBottomButton, onResendFailedMessage, onDeleteMessage, onPressImageMessage, flatListProps, enableMessageGrouping, }: {
4
+ enableMessageGrouping: boolean;
5
+ currentUserId?: string | undefined;
6
+ channel: import("sendbird").GroupChannel;
7
+ messages: SendbirdMessage[];
8
+ nextMessages: SendbirdMessage[];
9
+ newMessagesFromMembers: SendbirdMessage[];
10
+ onTopReached: () => void;
11
+ onBottomReached: () => void;
12
+ onResendFailedMessage: (failedMessage: import("sendbird").FileMessage | import("sendbird").UserMessage) => Promise<void>;
13
+ onDeleteMessage: (message: import("sendbird").FileMessage | import("sendbird").UserMessage) => Promise<void>;
14
+ onPressImageMessage?: ((message: import("sendbird").FileMessage, uri: string) => void) | undefined;
15
+ renderMessage: (props: {
16
+ message: SendbirdMessage;
17
+ prevMessage?: SendbirdMessage | undefined;
18
+ nextMessage?: SendbirdMessage | undefined;
19
+ onPress?: (() => void) | undefined;
20
+ onLongPress?: (() => void) | undefined;
21
+ channel: import("sendbird").GroupChannel;
22
+ currentUserId?: string | undefined;
23
+ enableMessageGrouping: boolean;
24
+ }) => React.ReactElement<any, string | React.JSXElementConstructor<any>> | null;
25
+ renderNewMessagesButton: import("../../..").CommonComponent<{
26
+ visible: boolean;
27
+ onPress: () => void;
28
+ newMessages: SendbirdMessage[];
29
+ }> | null;
30
+ renderScrollToBottomButton: import("../../..").CommonComponent<{
31
+ visible: boolean;
32
+ onPress: () => void;
33
+ }> | null;
34
+ flatListProps?: Omit<import("react-native").FlatListProps<SendbirdMessage>, "data" | "renderItem"> | undefined;
35
+ }) => JSX.Element>;
36
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const GroupChannelStatusEmpty: () => JSX.Element;
2
+ export default GroupChannelStatusEmpty;
@@ -0,0 +1,2 @@
1
+ declare const GroupChannelStatusLoading: () => JSX.Element;
2
+ export default GroupChannelStatusLoading;
@@ -0,0 +1,7 @@
1
+ export { default as GroupChannelHeader } from './component/GroupChannelHeader';
2
+ export { default as GroupChannelMessageList } from './component/GroupChannelMessageList';
3
+ export { default as GroupChannelInput } from './component/GroupChannelInput';
4
+ export { default as GroupChannelStatusEmpty } from './component/GroupChannelStatusEmpty';
5
+ export { default as GroupChannelStatusLoading } from './component/GroupChannelStatusLoading';
6
+ export { default as createGroupChannelModule } from './module/createGroupChannelModule';
7
+ export { GroupChannelContextsProvider, GroupChannelContexts } from './module/moduleContext';
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelModule } from '../types';
2
+ declare const createGroupChannelModule: ({ Header, MessageList, Input, StatusLoading, StatusEmpty, Provider, ...module }?: Partial<GroupChannelModule>) => GroupChannelModule;
3
+ export default createGroupChannelModule;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelContextsType, GroupChannelModule } from '../types';
2
+ export declare const GroupChannelContexts: GroupChannelContextsType;
3
+ export declare const GroupChannelContextsProvider: GroupChannelModule['Provider'];
@@ -0,0 +1,102 @@
1
+ import type React from 'react';
2
+ import type { FlatListProps } from 'react-native';
3
+ import type { UseGroupChannelMessagesOptions } from '@sendbird/uikit-chat-hooks';
4
+ import type { SendbirdFileMessage, SendbirdFileMessageParams, SendbirdGroupChannel, SendbirdMessage, SendbirdUser, SendbirdUserMessage, SendbirdUserMessageParams } from '@sendbird/uikit-utils';
5
+ import type { FileType } from '../../platform/types';
6
+ import type { CommonComponent } from '../../types';
7
+ export interface GroupChannelProps {
8
+ Fragment: {
9
+ channel: SendbirdGroupChannel;
10
+ onChannelDeleted: () => void;
11
+ onPressHeaderLeft: GroupChannelProps['Header']['onPressHeaderLeft'];
12
+ onPressHeaderRight: GroupChannelProps['Header']['onPressHeaderRight'];
13
+ onBeforeSendFileMessage?: (params: SendbirdFileMessageParams) => SendbirdFileMessageParams | Promise<SendbirdFileMessageParams>;
14
+ onBeforeSendUserMessage?: (params: SendbirdUserMessageParams) => SendbirdUserMessageParams | Promise<SendbirdUserMessageParams>;
15
+ onPressImageMessage?: GroupChannelProps['MessageList']['onPressImageMessage'];
16
+ renderMessage?: GroupChannelProps['MessageList']['renderMessage'];
17
+ renderNewMessagesButton?: GroupChannelProps['MessageList']['renderNewMessagesButton'];
18
+ renderScrollToBottomButton?: GroupChannelProps['MessageList']['renderScrollToBottomButton'];
19
+ enableTypingIndicator?: GroupChannelProps['Provider']['enableTypingIndicator'];
20
+ enableMessageGrouping?: GroupChannelProps['MessageList']['enableMessageGrouping'];
21
+ keyboardAvoidOffset?: GroupChannelProps['Provider']['keyboardAvoidOffset'];
22
+ flatListProps?: GroupChannelProps['MessageList']['flatListProps'];
23
+ sortComparator?: UseGroupChannelMessagesOptions['sortComparator'];
24
+ collectionCreator?: UseGroupChannelMessagesOptions['collectionCreator'];
25
+ queryCreator?: UseGroupChannelMessagesOptions['queryCreator'];
26
+ };
27
+ Header: {
28
+ onPressHeaderLeft: () => void;
29
+ onPressHeaderRight: () => void;
30
+ };
31
+ MessageList: {
32
+ enableMessageGrouping: boolean;
33
+ currentUserId?: string;
34
+ channel: SendbirdGroupChannel;
35
+ messages: SendbirdMessage[];
36
+ nextMessages: SendbirdMessage[];
37
+ newMessagesFromMembers: SendbirdMessage[];
38
+ onTopReached: () => void;
39
+ onBottomReached: () => void;
40
+ onResendFailedMessage: (failedMessage: SendbirdUserMessage | SendbirdFileMessage) => Promise<void>;
41
+ onDeleteMessage: (message: SendbirdUserMessage | SendbirdFileMessage) => Promise<void>;
42
+ onPressImageMessage?: (message: SendbirdFileMessage, uri: string) => void;
43
+ renderMessage: (props: {
44
+ message: SendbirdMessage;
45
+ prevMessage?: SendbirdMessage;
46
+ nextMessage?: SendbirdMessage;
47
+ onPress?: () => void;
48
+ onLongPress?: () => void;
49
+ channel: GroupChannelProps['MessageList']['channel'];
50
+ currentUserId?: GroupChannelProps['MessageList']['currentUserId'];
51
+ enableMessageGrouping: GroupChannelProps['MessageList']['enableMessageGrouping'];
52
+ }) => React.ReactElement | null;
53
+ renderNewMessagesButton: null | CommonComponent<{
54
+ visible: boolean;
55
+ onPress: () => void;
56
+ newMessages: SendbirdMessage[];
57
+ }>;
58
+ renderScrollToBottomButton: null | CommonComponent<{
59
+ visible: boolean;
60
+ onPress: () => void;
61
+ }>;
62
+ flatListProps?: Omit<FlatListProps<SendbirdMessage>, 'data' | 'renderItem'>;
63
+ };
64
+ Input: {
65
+ channel: SendbirdGroupChannel;
66
+ onSendFileMessage: (file: FileType) => Promise<void>;
67
+ onSendUserMessage: (text: string) => Promise<void>;
68
+ onUpdateFileMessage: (editedFile: FileType, message: SendbirdFileMessage) => Promise<void>;
69
+ onUpdateUserMessage: (editedText: string, message: SendbirdUserMessage) => Promise<void>;
70
+ };
71
+ Provider: {
72
+ channel: SendbirdGroupChannel;
73
+ enableTypingIndicator: boolean;
74
+ keyboardAvoidOffset?: number;
75
+ };
76
+ }
77
+ /**
78
+ * Internal context for GroupChannel
79
+ * For example, the developer can create a custom header
80
+ * with getting data from the domain context
81
+ * */
82
+ export interface GroupChannelContextsType {
83
+ Fragment: React.Context<{
84
+ headerTitle: string;
85
+ channel: SendbirdGroupChannel;
86
+ editMessage?: SendbirdUserMessage | SendbirdFileMessage;
87
+ setEditMessage: (msg?: SendbirdUserMessage | SendbirdFileMessage) => void;
88
+ keyboardAvoidOffset?: number;
89
+ }>;
90
+ TypingIndicator: React.Context<{
91
+ typingUsers: SendbirdUser[];
92
+ }>;
93
+ }
94
+ export interface GroupChannelModule {
95
+ Provider: CommonComponent<GroupChannelProps['Provider']>;
96
+ Header: CommonComponent<GroupChannelProps['Header']>;
97
+ MessageList: CommonComponent<GroupChannelProps['MessageList']>;
98
+ Input: CommonComponent<GroupChannelProps['Input']>;
99
+ StatusEmpty: CommonComponent;
100
+ StatusLoading: CommonComponent;
101
+ }
102
+ export declare type GroupChannelFragment = CommonComponent<GroupChannelProps['Fragment']>;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelListProps } from '../types';
2
+ declare const GroupChannelListHeader: (_: GroupChannelListProps['Header']) => JSX.Element;
3
+ export default GroupChannelListHeader;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelListProps } from '../types';
2
+ declare const GroupChannelListList: ({ renderGroupChannelPreview, groupChannels, onLoadNext, flatListProps, menuItemCreator, }: GroupChannelListProps['List']) => JSX.Element;
3
+ export default GroupChannelListList;
@@ -0,0 +1,2 @@
1
+ declare const GroupChannelListStatusEmpty: () => JSX.Element;
2
+ export default GroupChannelListStatusEmpty;
@@ -0,0 +1,2 @@
1
+ declare const GroupChannelListStatusLoading: () => JSX.Element;
2
+ export default GroupChannelListStatusLoading;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelListProps } from '../types';
2
+ declare const GroupChannelListTypeSelector: ({ Header, skipTypeSelection, onSelectType, }: GroupChannelListProps['TypeSelector']) => JSX.Element | null;
3
+ export default GroupChannelListTypeSelector;
@@ -0,0 +1,7 @@
1
+ export { default as GroupChannelListHeader } from './component/GroupChannelListHeader';
2
+ export { default as GroupChannelListList } from './component/GroupChannelListList';
3
+ export { default as GroupChannelListStatusEmpty } from './component/GroupChannelListStatusEmpty';
4
+ export { default as GroupChannelListStatusLoading } from './component/GroupChannelListStatusLoading';
5
+ export { default as GroupChannelListTypeSelector } from './component/GroupChannelListTypeSelector';
6
+ export { default as createGroupChannelListModule } from './module/createGroupChannelListModule';
7
+ export { GroupChannelListContextsProvider, GroupChannelListContexts } from './module/moduleContext';
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelListModule } from '../types';
2
+ declare const createGroupChannelListModule: ({ Header, List, TypeSelector, StatusLoading, StatusEmpty, Provider, ...module }?: Partial<GroupChannelListModule>) => GroupChannelListModule;
3
+ export default createGroupChannelListModule;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelListContextsType, GroupChannelListModule } from '../types';
2
+ export declare const GroupChannelListContexts: GroupChannelListContextsType;
3
+ export declare const GroupChannelListContextsProvider: GroupChannelListModule['Provider'];
@@ -0,0 +1,81 @@
1
+ import type React from 'react';
2
+ import type { FlatListProps } from 'react-native';
3
+ import type { UseGroupChannelListOptions } from '@sendbird/uikit-chat-hooks';
4
+ import type { ActionMenuItem, BaseHeaderProps } from '@sendbird/uikit-react-native-foundation';
5
+ import type { SendbirdGroupChannel } from '@sendbird/uikit-utils';
6
+ import type { CommonComponent } from '../../types';
7
+ export interface GroupChannelListProps {
8
+ /** Props for `GroupChannelListFragment` **/
9
+ Fragment: {
10
+ /** Navigate to GroupChannelFragment **/
11
+ onPressChannel: (channel: SendbirdGroupChannel) => void;
12
+ /** Navigate to GroupChannelCreateFragment **/
13
+ onPressCreateChannel: (channelType: GroupChannelType) => void;
14
+ /** Custom Header for TypeSelector, Only replace header component not a module **/
15
+ TypeSelectorHeader?: null | CommonComponent<BaseHeaderProps<{
16
+ title: string;
17
+ right: React.ReactElement;
18
+ onPressRight: () => void;
19
+ }>>;
20
+ /** Method to render GroupChannel preview **/
21
+ renderGroupChannelPreview?: (channel: SendbirdGroupChannel, onLongPressChannel: () => void) => React.ReactElement | null;
22
+ /** Custom Query creator for channels query **/
23
+ queryCreator?: UseGroupChannelListOptions['queryCreator'];
24
+ /** Sort comparator for sort channels **/
25
+ sortComparator?: UseGroupChannelListOptions['sortComparator'];
26
+ /** FlatList props for GroupChannelList.List **/
27
+ flatListProps?: GroupChannelListProps['List']['flatListProps'];
28
+ /** Action menu item creator for onLongPress **/
29
+ menuItemCreator?: GroupChannelListProps['List']['menuItemCreator'];
30
+ };
31
+ /** Props for `GroupChannelListModule.Header` **/
32
+ Header: {};
33
+ /** Props for `GroupChannelListModule.List` **/
34
+ List: {
35
+ /** GroupChannels from SendbirdChat SDK **/
36
+ groupChannels: SendbirdGroupChannel[];
37
+ /** Method to render GroupChannel preview **/
38
+ renderGroupChannelPreview: (channel: SendbirdGroupChannel, onLongPressChannel: () => void) => React.ReactElement | null;
39
+ /** Method to load more data, called with onEndReached of FlatList **/
40
+ onLoadNext: () => Promise<void>;
41
+ /** Prop from Fragment **/
42
+ flatListProps?: Omit<FlatListProps<SendbirdGroupChannel>, 'data' | 'renderItem'>;
43
+ /** Prop from Fragment **/
44
+ menuItemCreator?: (defaultMenuItem: ActionMenuItem) => ActionMenuItem;
45
+ };
46
+ /** Props for `GroupChannelListModule.TypeSelector` **/
47
+ TypeSelector: {
48
+ /** Prop from Fragment `Fragment.TypeSelectorHeader` **/
49
+ Header: GroupChannelListProps['Fragment']['TypeSelectorHeader'];
50
+ /** Prop from Fragment `Fragment.skipTypeSelection` **/
51
+ skipTypeSelection: boolean;
52
+ /** Method called when type is selected, call `Fragment.onPressCreateChannel` **/
53
+ onSelectType: (type: GroupChannelType) => void;
54
+ };
55
+ }
56
+ /**
57
+ * Internal context for GroupChannelList
58
+ * For example, the developer can create a custom header
59
+ * with getting data from the domain context
60
+ * */
61
+ export interface GroupChannelListContextsType {
62
+ Fragment: React.Context<{
63
+ headerTitle: string;
64
+ }>;
65
+ TypeSelector: React.Context<{
66
+ visible: boolean;
67
+ show: () => void;
68
+ hide: () => void;
69
+ headerTitle: string;
70
+ }>;
71
+ }
72
+ export interface GroupChannelListModule {
73
+ Provider: CommonComponent;
74
+ Header: CommonComponent<GroupChannelListProps['Header']>;
75
+ List: CommonComponent<GroupChannelListProps['List']>;
76
+ TypeSelector: CommonComponent<GroupChannelListProps['TypeSelector']>;
77
+ StatusEmpty: CommonComponent;
78
+ StatusLoading: CommonComponent;
79
+ }
80
+ export declare type GroupChannelListFragment = CommonComponent<GroupChannelListProps['Fragment']>;
81
+ export declare type GroupChannelType = 'GROUP' | 'SUPER_GROUP' | 'BROADCAST';
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelSettingsProps } from '../types';
2
+ declare const GroupChannelSettingsHeader: ({ onPressHeaderLeft }: GroupChannelSettingsProps['Header']) => JSX.Element;
3
+ export default GroupChannelSettingsHeader;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelSettingsProps } from '../types';
2
+ declare const GroupChannelSettingsInfo: (_: GroupChannelSettingsProps['Info']) => JSX.Element | null;
3
+ export default GroupChannelSettingsInfo;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelSettingsProps } from '../types';
2
+ declare const GroupChannelSettingsMenu: ({ onPressMenuMembers, onPressMenuLeaveChannel, menuItemsCreator, }: GroupChannelSettingsProps['Menu']) => JSX.Element;
3
+ export default GroupChannelSettingsMenu;
@@ -0,0 +1,5 @@
1
+ export { default as GroupChannelSettingsHeader } from './component/GroupChannelSettingsHeader';
2
+ export { default as GroupChannelSettingsInfo } from './component/GroupChannelSettingsInfo';
3
+ export { default as GroupChannelSettingsMenu } from './component/GroupChannelSettingsMenu';
4
+ export { default as createGroupChannelSettingsModule } from './module/createGroupChannelSettingsModule';
5
+ export { GroupChannelSettingsContextsProvider, GroupChannelSettingsContexts } from './module/moduleContext';
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelSettingsModule } from '../types';
2
+ declare const createGroupChannelSettingsModule: ({ Header, Info, Menu, Provider, ...module }?: Partial<GroupChannelSettingsModule>) => GroupChannelSettingsModule;
3
+ export default createGroupChannelSettingsModule;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelSettingsContextsType, GroupChannelSettingsModule } from '../types';
2
+ export declare const GroupChannelSettingsContexts: GroupChannelSettingsContextsType;
3
+ export declare const GroupChannelSettingsContextsProvider: GroupChannelSettingsModule['Provider'];
@@ -0,0 +1,45 @@
1
+ import type React from 'react';
2
+ import type { MenuBarProps } from '@sendbird/uikit-react-native-foundation';
3
+ import type { SendbirdGroupChannel } from '@sendbird/uikit-utils';
4
+ import type { CommonComponent } from '../../types';
5
+ export interface GroupChannelSettingsProps {
6
+ Fragment: {
7
+ channel: GroupChannelSettingsProps['Provider']['channel'];
8
+ onPressHeaderLeft: GroupChannelSettingsProps['Header']['onPressHeaderLeft'];
9
+ onPressMenuMembers: GroupChannelSettingsProps['Menu']['onPressMenuMembers'];
10
+ onPressMenuLeaveChannel: GroupChannelSettingsProps['Menu']['onPressMenuLeaveChannel'];
11
+ menuItemsCreator?: GroupChannelSettingsProps['Menu']['menuItemsCreator'];
12
+ };
13
+ Header: {
14
+ onPressHeaderLeft: () => void;
15
+ };
16
+ Info: {};
17
+ Menu: {
18
+ onPressMenuMembers: () => void;
19
+ onPressMenuLeaveChannel: () => void;
20
+ menuItemsCreator?: (defaultMenuItems: MenuBarProps[]) => MenuBarProps[];
21
+ };
22
+ Provider: {
23
+ channel: SendbirdGroupChannel;
24
+ };
25
+ }
26
+ /**
27
+ * Internal context for GroupChannelSettings
28
+ * For example, the developer can create a custom header
29
+ * with getting data from the domain context
30
+ * */
31
+ export interface GroupChannelSettingsContextsType {
32
+ Fragment: React.Context<{
33
+ channel: SendbirdGroupChannel;
34
+ headerTitle: string;
35
+ headerRight: string;
36
+ onPressHeaderRight: () => void;
37
+ }>;
38
+ }
39
+ export interface GroupChannelSettingsModule {
40
+ Provider: CommonComponent<GroupChannelSettingsProps['Provider']>;
41
+ Header: CommonComponent<GroupChannelSettingsProps['Header']>;
42
+ Info: CommonComponent<GroupChannelSettingsProps['Info']>;
43
+ Menu: CommonComponent<GroupChannelSettingsProps['Menu']>;
44
+ }
45
+ export declare type GroupChannelSettingsFragment = CommonComponent<GroupChannelSettingsProps['Fragment']>;
@@ -0,0 +1,42 @@
1
+ import type { UseUserListOptions } from '@sendbird/uikit-chat-hooks';
2
+ import type { SendbirdGroupChannel, SendbirdGroupChannelParams } from '@sendbird/uikit-utils';
3
+ import type { CommonComponent } from '../../types';
4
+ import type { GroupChannelType } from '../groupChannelList/types';
5
+ import type { UserListProps } from '../userList/types';
6
+ declare type UserIds = string[];
7
+ export interface GroupChannelCreateProps<User> {
8
+ Fragment: {
9
+ onPressHeaderLeft: () => void;
10
+ onCreateChannel: (channel: SendbirdGroupChannel) => void;
11
+ channelType?: GroupChannelType;
12
+ userIdsGenerator?: (users: User[]) => UserIds;
13
+ onBeforeCreateChannel?: (params: SendbirdGroupChannelParams, users: User[]) => SendbirdGroupChannelParams | Promise<SendbirdGroupChannelParams>;
14
+ sortComparator?: UseUserListOptions<User>['sortComparator'];
15
+ queryCreator?: UseUserListOptions<User>['queryCreator'];
16
+ renderUser?: UserListProps<User>['List']['renderUser'];
17
+ };
18
+ }
19
+ export declare type GroupChannelCreateFragment<User> = CommonComponent<GroupChannelCreateProps<User>['Fragment']>;
20
+ export interface GroupChannelInviteProps<User> {
21
+ Fragment: {
22
+ channel: SendbirdGroupChannel;
23
+ onPressHeaderLeft: () => void;
24
+ onInviteMembers: (channel: SendbirdGroupChannel) => void;
25
+ userIdsGenerator?: (users: User[]) => UserIds;
26
+ queryCreator?: UseUserListOptions<User>['queryCreator'];
27
+ renderUser?: UserListProps<User>['List']['renderUser'];
28
+ sortComparator?: UseUserListOptions<User>['sortComparator'];
29
+ };
30
+ }
31
+ export declare type GroupChannelInviteFragment<User> = CommonComponent<GroupChannelInviteProps<User>['Fragment']>;
32
+ export interface GroupChannelMembersProps<User> {
33
+ Fragment: {
34
+ channel: SendbirdGroupChannel;
35
+ onPressHeaderLeft: () => void;
36
+ onPressHeaderRight: () => void;
37
+ sortComparator?: UseUserListOptions<User>['sortComparator'];
38
+ renderUser?: UserListProps<User>['List']['renderUser'];
39
+ };
40
+ }
41
+ export declare type GroupChannelMembersFragment<User> = CommonComponent<GroupChannelMembersProps<User>['Fragment']>;
42
+ export {};
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import type { UserListProps } from '../types';
3
+ declare const UserListHeader: <T>({ onPressHeaderLeft, onPressHeaderRight, right, left, shouldActivateHeaderRight, }: {
4
+ right?: React.ReactElement<any, string | React.JSXElementConstructor<any>> | undefined;
5
+ left?: React.ReactElement<any, string | React.JSXElementConstructor<any>> | undefined;
6
+ onPressHeaderLeft: () => void;
7
+ onPressHeaderRight: (selectedUsers: T[]) => Promise<void>;
8
+ shouldActivateHeaderRight?: ((selectedUsers: T[]) => boolean) | undefined;
9
+ }) => JSX.Element;
10
+ export default UserListHeader;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import type { UserListProps } from '../types';
3
+ declare const UserListList: <T>({ users, onRefresh, refreshing, renderUser, onLoadNext, ListEmptyComponent, }: {
4
+ users: T[];
5
+ renderUser: (user: T, selectedUsers: T[], setSelectedUsers: React.Dispatch<React.SetStateAction<T[]>>) => React.ReactElement<any, string | React.JSXElementConstructor<any>> | null;
6
+ onLoadNext: () => Promise<void>;
7
+ onRefresh?: (() => Promise<void>) | undefined;
8
+ refreshing?: boolean | undefined;
9
+ ListEmptyComponent?: React.ReactElement<any, string | React.JSXElementConstructor<any>> | undefined;
10
+ }) => JSX.Element;
11
+ export default UserListList;
@@ -0,0 +1,2 @@
1
+ declare const UserListStatusEmpty: () => JSX.Element;
2
+ export default UserListStatusEmpty;
@@ -0,0 +1,3 @@
1
+ import type { UserListModule } from '../types';
2
+ declare const UserListStatusLoading: UserListModule<unknown>['StatusError'];
3
+ export default UserListStatusLoading;
@@ -0,0 +1,2 @@
1
+ declare const UserListStatusLoading: () => JSX.Element;
2
+ export default UserListStatusLoading;
@@ -0,0 +1,7 @@
1
+ export { default as UserListList } from './component/UserListList';
2
+ export { default as UserListHeader } from './component/UserListHeader';
3
+ export { default as UserListStatusEmpty } from './component/UserListStatusEmpty';
4
+ export { default as UserListStatusError } from './component/UserListStatusError';
5
+ export { default as UserListStatusLoading } from './component/UserListStatusLoading';
6
+ export { default as createUserListModule } from './module/createUserListModule';
7
+ export { UserListContextsProvider, UserListContexts } from './module/moduleContext';
@@ -0,0 +1,3 @@
1
+ import type { UserListModule } from '../types';
2
+ declare const createUserListModule: <T>({ Header, List, StatusLoading, StatusEmpty, StatusError, Provider, ...module }?: Partial<UserListModule<T>>) => UserListModule<T>;
3
+ export default createUserListModule;
@@ -0,0 +1,3 @@
1
+ import type { UserListContextsType, UserListModule } from '../types';
2
+ export declare const UserListContexts: UserListContextsType<unknown>;
3
+ export declare const UserListContextsProvider: UserListModule<any>['Provider'];
@@ -0,0 +1,58 @@
1
+ import type React from 'react';
2
+ import type { ContextValue } from '@sendbird/uikit-utils';
3
+ import type { CommonComponent } from '../../types';
4
+ export interface UserListProps<User> {
5
+ /** Props for `UserListModule.Header` **/
6
+ Header: {
7
+ right?: React.ReactElement;
8
+ left?: React.ReactElement;
9
+ onPressHeaderLeft: () => void;
10
+ onPressHeaderRight: (selectedUsers: User[]) => Promise<void>;
11
+ shouldActivateHeaderRight?: (selectedUsers: User[]) => boolean;
12
+ };
13
+ /** Props for `UserListModule.List` **/
14
+ List: {
15
+ /** User list from SendbirdChat SDK or Custom query {@link Fragment.queryCreator} **/
16
+ users: User[];
17
+ /** Render user component **/
18
+ renderUser: (user: User, selectedUsers: ContextValue<UserListContextsType<User>['List']>['selectedUsers'], setSelectedUsers: ContextValue<UserListContextsType<User>['List']>['setSelectedUsers']) => React.ReactElement | null;
19
+ /** Load next user list **/
20
+ onLoadNext: () => Promise<void>;
21
+ /** Refresh user list **/
22
+ onRefresh?: () => Promise<void>;
23
+ /** Refreshing state **/
24
+ refreshing?: boolean;
25
+ /** List empty component **/
26
+ ListEmptyComponent?: React.ReactElement;
27
+ };
28
+ /** Props for `UserListModule.Provider` **/
29
+ Provider: {
30
+ headerTitle: string;
31
+ headerRight: (selectedUsers: Array<User>) => string;
32
+ };
33
+ }
34
+ /**
35
+ * Internal context for UserList
36
+ * For example, the developer can create a custom header
37
+ * with getting data from the domain context
38
+ * */
39
+ export interface UserListContextsType<User> {
40
+ Fragment: React.Context<{
41
+ headerTitle: string;
42
+ headerRight: string;
43
+ }>;
44
+ List: React.Context<{
45
+ selectedUsers: User[];
46
+ setSelectedUsers: React.Dispatch<React.SetStateAction<User[]>>;
47
+ }>;
48
+ }
49
+ export interface UserListModule<User> {
50
+ Provider: CommonComponent<UserListProps<User>['Provider']>;
51
+ Header: CommonComponent<UserListProps<User>['Header']>;
52
+ List: CommonComponent<UserListProps<User>['List']>;
53
+ StatusEmpty: CommonComponent;
54
+ StatusLoading: CommonComponent;
55
+ StatusError: CommonComponent<{
56
+ onPressRetry: () => void;
57
+ }>;
58
+ }
@@ -0,0 +1,4 @@
1
+ import type { GroupChannelCreateFragment } from '../domain/groupChannelUserList/types';
2
+ import type { UserListModule } from '../domain/userList/types';
3
+ declare const createGroupChannelCreateFragment: <UserType>(initModule?: Partial<UserListModule<UserType>> | undefined) => GroupChannelCreateFragment<UserType>;
4
+ export default createGroupChannelCreateFragment;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelFragment, GroupChannelModule } from '../domain/groupChannel/types';
2
+ declare const createGroupChannelFragment: (initModule?: Partial<GroupChannelModule>) => GroupChannelFragment;
3
+ export default createGroupChannelFragment;
@@ -0,0 +1,4 @@
1
+ import type { GroupChannelInviteFragment } from '../domain/groupChannelUserList/types';
2
+ import type { UserListModule } from '../domain/userList/types';
3
+ declare const createGroupChannelInviteFragment: <UserType>(initModule?: Partial<UserListModule<UserType>> | undefined) => GroupChannelInviteFragment<UserType>;
4
+ export default createGroupChannelInviteFragment;