@sendbird/uikit-react-native 1.0.0 → 1.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.
- package/README.md +7 -7
- package/lib/commonjs/InternalErrorBoundary.js.map +1 -1
- package/lib/commonjs/SendbirdUIKitContainer.js +6 -3
- package/lib/commonjs/SendbirdUIKitContainer.js.map +1 -1
- package/lib/commonjs/components/ChannelCover.js.map +1 -1
- package/lib/commonjs/components/ChatFlatList.js.map +1 -1
- package/lib/commonjs/components/FileViewer.js +326 -0
- package/lib/commonjs/components/FileViewer.js.map +1 -0
- package/lib/commonjs/components/GroupChannelPreviewContainer.js +180 -0
- package/lib/commonjs/components/GroupChannelPreviewContainer.js.map +1 -0
- package/lib/commonjs/components/MessageRenderer/AdminMessage/index.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js +116 -0
- package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +1 -0
- package/lib/commonjs/components/MessageRenderer/FileMessage/index.js +8 -0
- package/lib/commonjs/components/MessageRenderer/FileMessage/index.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageContainer.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageDateSeparator.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageIncomingAvatar.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageIncomingSenderName.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageOutgoingStatus.js +15 -24
- package/lib/commonjs/components/MessageRenderer/MessageOutgoingStatus.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/MessageTime.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/UnknownMessage/index.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -1
- package/lib/commonjs/components/MessageRenderer/UserMessage/index.js.map +1 -1
- package/lib/commonjs/components/NewMessagesButton.js.map +1 -1
- package/lib/commonjs/components/ProviderLayout.js.map +1 -1
- package/lib/commonjs/components/SBUPressable.js +45 -0
- package/lib/commonjs/components/SBUPressable.js.map +1 -0
- package/lib/commonjs/components/ScrollToBottomButton.js.map +1 -1
- package/lib/commonjs/components/TypedPlaceholder.js.map +1 -1
- package/lib/commonjs/components/UserActionBar.js +1 -3
- package/lib/commonjs/components/UserActionBar.js.map +1 -1
- package/lib/commonjs/components/UserSelectableBar.js +1 -3
- package/lib/commonjs/components/UserSelectableBar.js.map +1 -1
- package/lib/commonjs/constants.js +7 -1
- package/lib/commonjs/constants.js.map +1 -1
- package/lib/commonjs/contexts/Localization.js.map +1 -1
- package/lib/commonjs/contexts/PlatformService.js +4 -2
- package/lib/commonjs/contexts/PlatformService.js.map +1 -1
- package/lib/commonjs/contexts/SendbirdChat.js +6 -2
- package/lib/commonjs/contexts/SendbirdChat.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js +30 -7
- package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/module/moduleContext.js +2 -3
- package/lib/commonjs/domain/groupChannel/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListHeader.js +2 -5
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelList/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +1 -1
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js +1 -1
- package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/groupChannelSettings/types.js.map +1 -1
- package/lib/commonjs/domain/groupChannelUserList/types.js.map +1 -1
- package/lib/commonjs/domain/userList/module/moduleContext.js +2 -2
- package/lib/commonjs/domain/userList/module/moduleContext.js.map +1 -1
- package/lib/commonjs/domain/userList/types.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelCreateFragment.js +3 -7
- package/lib/commonjs/fragments/createGroupChannelCreateFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelFragment.js +13 -11
- package/lib/commonjs/fragments/createGroupChannelFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelListFragment.js +7 -37
- package/lib/commonjs/fragments/createGroupChannelListFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelMembersFragment.js +1 -1
- package/lib/commonjs/fragments/createGroupChannelMembersFragment.js.map +1 -1
- package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js +2 -3
- package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js.map +1 -1
- package/lib/commonjs/hooks/useContext.js.map +1 -1
- package/lib/commonjs/index.js +29 -2
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/localization/StringSet.type.js +8 -0
- package/lib/commonjs/localization/StringSet.type.js.map +1 -1
- package/lib/commonjs/platform/createFileService.expo.js +38 -20
- package/lib/commonjs/platform/createFileService.expo.js.map +1 -1
- package/lib/commonjs/platform/createFileService.native.js +20 -3
- package/lib/commonjs/platform/createFileService.native.js.map +1 -1
- package/lib/commonjs/platform/createMediaService.expo.js +64 -0
- package/lib/commonjs/platform/createMediaService.expo.js.map +1 -0
- package/lib/commonjs/platform/createMediaService.native.js +67 -0
- package/lib/commonjs/platform/createMediaService.native.js.map +1 -0
- package/lib/commonjs/platform/createNotificationService.expo.js.map +1 -1
- package/lib/commonjs/platform/types.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/commonjs/version.js.map +1 -1
- package/lib/module/InternalErrorBoundary.js.map +1 -1
- package/lib/module/SendbirdUIKitContainer.js +7 -4
- package/lib/module/SendbirdUIKitContainer.js.map +1 -1
- package/lib/module/components/ChannelCover.js.map +1 -1
- package/lib/module/components/ChatFlatList.js.map +1 -1
- package/lib/module/components/FileViewer.js +304 -0
- package/lib/module/components/FileViewer.js.map +1 -0
- package/lib/module/components/GroupChannelPreviewContainer.js +158 -0
- package/lib/module/components/GroupChannelPreviewContainer.js.map +1 -0
- package/lib/module/components/MessageRenderer/AdminMessage/index.js.map +1 -1
- package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -1
- package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -1
- package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js +100 -0
- package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +1 -0
- package/lib/module/components/MessageRenderer/FileMessage/index.js +6 -0
- package/lib/module/components/MessageRenderer/FileMessage/index.js.map +1 -1
- package/lib/module/components/MessageRenderer/MessageContainer.js.map +1 -1
- package/lib/module/components/MessageRenderer/MessageDateSeparator.js.map +1 -1
- package/lib/module/components/MessageRenderer/MessageIncomingAvatar.js.map +1 -1
- package/lib/module/components/MessageRenderer/MessageIncomingSenderName.js.map +1 -1
- package/lib/module/components/MessageRenderer/MessageOutgoingStatus.js +17 -26
- package/lib/module/components/MessageRenderer/MessageOutgoingStatus.js.map +1 -1
- package/lib/module/components/MessageRenderer/MessageTime.js.map +1 -1
- package/lib/module/components/MessageRenderer/UnknownMessage/index.js.map +1 -1
- package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -1
- package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -1
- package/lib/module/components/MessageRenderer/UserMessage/index.js.map +1 -1
- package/lib/module/components/NewMessagesButton.js.map +1 -1
- package/lib/module/components/ProviderLayout.js.map +1 -1
- package/lib/module/components/SBUPressable.js +33 -0
- package/lib/module/components/SBUPressable.js.map +1 -0
- package/lib/module/components/ScrollToBottomButton.js.map +1 -1
- package/lib/module/components/TypedPlaceholder.js.map +1 -1
- package/lib/module/components/UserActionBar.js +1 -1
- package/lib/module/components/UserActionBar.js.map +1 -1
- package/lib/module/components/UserSelectableBar.js +1 -1
- package/lib/module/components/UserSelectableBar.js.map +1 -1
- package/lib/module/constants.js +5 -0
- package/lib/module/constants.js.map +1 -1
- package/lib/module/contexts/Localization.js.map +1 -1
- package/lib/module/contexts/PlatformService.js +4 -2
- package/lib/module/contexts/PlatformService.js.map +1 -1
- package/lib/module/contexts/SendbirdChat.js +6 -2
- package/lib/module/contexts/SendbirdChat.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelHeader.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js +28 -7
- package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
- package/lib/module/domain/groupChannel/module/moduleContext.js +2 -3
- package/lib/module/domain/groupChannel/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannel/types.js.map +1 -1
- package/lib/module/domain/groupChannelList/component/GroupChannelListHeader.js +2 -5
- package/lib/module/domain/groupChannelList/component/GroupChannelListHeader.js.map +1 -1
- package/lib/module/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
- package/lib/module/domain/groupChannelList/component/GroupChannelListTypeSelector.js.map +1 -1
- package/lib/module/domain/groupChannelList/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelList/types.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsHeader.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js +1 -1
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsInfo.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/module/moduleContext.js +1 -1
- package/lib/module/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
- package/lib/module/domain/groupChannelSettings/types.js.map +1 -1
- package/lib/module/domain/groupChannelUserList/types.js.map +1 -1
- package/lib/module/domain/userList/module/moduleContext.js +2 -2
- package/lib/module/domain/userList/module/moduleContext.js.map +1 -1
- package/lib/module/domain/userList/types.js.map +1 -1
- package/lib/module/fragments/createGroupChannelCreateFragment.js +4 -4
- package/lib/module/fragments/createGroupChannelCreateFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelFragment.js +15 -13
- package/lib/module/fragments/createGroupChannelFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelListFragment.js +11 -38
- package/lib/module/fragments/createGroupChannelListFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelMembersFragment.js +1 -1
- package/lib/module/fragments/createGroupChannelMembersFragment.js.map +1 -1
- package/lib/module/fragments/createGroupChannelSettingsFragment.js +2 -3
- package/lib/module/fragments/createGroupChannelSettingsFragment.js.map +1 -1
- package/lib/module/hooks/useContext.js.map +1 -1
- package/lib/module/index.js +4 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/localization/StringSet.type.js +8 -0
- package/lib/module/localization/StringSet.type.js.map +1 -1
- package/lib/module/platform/createFileService.expo.js +38 -20
- package/lib/module/platform/createFileService.expo.js.map +1 -1
- package/lib/module/platform/createFileService.native.js +20 -3
- package/lib/module/platform/createFileService.native.js.map +1 -1
- package/lib/module/platform/createMediaService.expo.js +54 -0
- package/lib/module/platform/createMediaService.expo.js.map +1 -0
- package/lib/module/platform/createMediaService.native.js +57 -0
- package/lib/module/platform/createMediaService.native.js.map +1 -0
- package/lib/module/platform/createNotificationService.expo.js.map +1 -1
- package/lib/module/platform/types.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/module/version.js.map +1 -1
- package/lib/typescript/__template__/component/__domain__Header.d.ts +1 -2
- package/lib/typescript/__template__/component/__domain__StatusEmpty.d.ts +0 -1
- package/lib/typescript/__template__/component/__domain__StatusLoading.d.ts +0 -1
- package/lib/typescript/__template__/component/__domain__View.d.ts +1 -2
- package/lib/typescript/__template__/module/moduleContext.d.ts +2 -3
- package/lib/typescript/__template__/types.d.ts +2 -2
- package/lib/typescript/src/InternalErrorBoundary.d.ts +1 -0
- package/lib/typescript/src/SendbirdUIKitContainer.d.ts +9 -6
- package/lib/typescript/src/components/ChannelCover.d.ts +1 -2
- package/lib/typescript/src/components/FileViewer.d.ts +12 -0
- package/lib/typescript/src/components/GroupChannelPreviewContainer.d.ts +8 -0
- package/lib/typescript/src/components/MessageRenderer/AdminMessage/index.d.ts +1 -2
- package/lib/typescript/src/components/MessageRenderer/FileMessage/BaseFileMessage.d.ts +3 -3
- package/lib/typescript/src/components/MessageRenderer/FileMessage/ImageFileMessage.d.ts +1 -2
- package/lib/typescript/src/components/MessageRenderer/FileMessage/VideoFileMessage.d.ts +3 -0
- package/lib/typescript/src/components/MessageRenderer/FileMessage/index.d.ts +1 -1
- package/lib/typescript/src/components/MessageRenderer/MessageContainer.d.ts +1 -1
- package/lib/typescript/src/components/MessageRenderer/MessageDateSeparator.d.ts +1 -2
- package/lib/typescript/src/components/MessageRenderer/MessageIncomingAvatar.d.ts +1 -2
- package/lib/typescript/src/components/MessageRenderer/MessageIncomingSenderName.d.ts +1 -2
- package/lib/typescript/src/components/MessageRenderer/MessageOutgoingStatus.d.ts +1 -1
- package/lib/typescript/src/components/MessageRenderer/MessageTime.d.ts +1 -2
- package/lib/typescript/src/components/MessageRenderer/UnknownMessage/index.d.ts +1 -2
- package/lib/typescript/src/components/MessageRenderer/UserMessage/BaseUserMessage.d.ts +1 -2
- package/lib/typescript/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.d.ts +1 -2
- package/lib/typescript/src/components/MessageRenderer/UserMessage/index.d.ts +1 -1
- package/lib/typescript/src/components/NewMessagesButton.d.ts +1 -1
- package/lib/typescript/src/components/ProviderLayout.d.ts +1 -1
- package/lib/typescript/src/components/SBUPressable.d.ts +18 -0
- package/lib/typescript/src/components/ScrollToBottomButton.d.ts +1 -1
- package/lib/typescript/src/components/TypedPlaceholder.d.ts +1 -2
- package/lib/typescript/src/components/UserActionBar.d.ts +2 -3
- package/lib/typescript/src/components/UserSelectableBar.d.ts +2 -3
- package/lib/typescript/src/constants.d.ts +5 -0
- package/lib/typescript/src/contexts/Localization.d.ts +2 -3
- package/lib/typescript/src/contexts/PlatformService.d.ts +5 -4
- package/lib/typescript/src/contexts/SendbirdChat.d.ts +7 -3
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelHeader.d.ts +1 -2
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/EditInput.d.ts +1 -2
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/SendInput.d.ts +1 -2
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/index.d.ts +2 -2
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelMessageList.d.ts +4 -3
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelStatusEmpty.d.ts +0 -1
- package/lib/typescript/src/domain/groupChannel/component/GroupChannelStatusLoading.d.ts +0 -1
- package/lib/typescript/src/domain/groupChannel/types.d.ts +8 -4
- package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListHeader.d.ts +1 -2
- package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListList.d.ts +1 -2
- package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListStatusEmpty.d.ts +0 -1
- package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListStatusLoading.d.ts +0 -1
- package/lib/typescript/src/domain/groupChannelList/component/GroupChannelListTypeSelector.d.ts +1 -2
- package/lib/typescript/src/domain/groupChannelList/module/moduleContext.d.ts +2 -3
- package/lib/typescript/src/domain/groupChannelList/types.d.ts +2 -2
- package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsHeader.d.ts +1 -2
- package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsInfo.d.ts +1 -2
- package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.d.ts +1 -2
- package/lib/typescript/src/domain/groupChannelSettings/module/moduleContext.d.ts +2 -3
- package/lib/typescript/src/domain/groupChannelSettings/types.d.ts +2 -2
- package/lib/typescript/src/domain/groupChannelUserList/types.d.ts +4 -4
- package/lib/typescript/src/domain/userList/component/UserListStatusEmpty.d.ts +0 -1
- package/lib/typescript/src/domain/userList/component/UserListStatusLoading.d.ts +0 -1
- package/lib/typescript/src/domain/userList/module/moduleContext.d.ts +2 -3
- package/lib/typescript/src/domain/userList/types.d.ts +1 -1
- package/lib/typescript/src/hooks/useContext.d.ts +8 -4
- package/lib/typescript/src/index.d.ts +3 -0
- package/lib/typescript/src/localization/StringSet.type.d.ts +4 -0
- package/lib/typescript/src/platform/createFileService.expo.d.ts +4 -4
- package/lib/typescript/src/platform/createMediaService.expo.d.ts +9 -0
- package/lib/typescript/src/platform/createMediaService.native.d.ts +9 -0
- package/lib/typescript/src/platform/createNotificationService.expo.d.ts +1 -1
- package/lib/typescript/src/platform/types.d.ts +20 -1
- package/lib/typescript/src/version.d.ts +1 -1
- package/package.json +16 -7
- package/src/InternalErrorBoundary.tsx +1 -0
- package/src/SendbirdUIKitContainer.tsx +17 -6
- package/src/components/ChannelCover.tsx +1 -1
- package/src/components/ChatFlatList.tsx +1 -1
- package/src/components/FileViewer.tsx +284 -0
- package/src/components/GroupChannelPreviewContainer.tsx +134 -0
- package/src/components/MessageRenderer/AdminMessage/index.tsx +1 -1
- package/src/components/MessageRenderer/FileMessage/BaseFileMessage.tsx +4 -6
- package/src/components/MessageRenderer/FileMessage/ImageFileMessage.tsx +1 -1
- package/src/components/MessageRenderer/FileMessage/VideoFileMessage.tsx +91 -0
- package/src/components/MessageRenderer/FileMessage/index.tsx +7 -1
- package/src/components/MessageRenderer/MessageContainer.tsx +1 -1
- package/src/components/MessageRenderer/MessageDateSeparator.tsx +1 -1
- package/src/components/MessageRenderer/MessageIncomingAvatar.tsx +5 -2
- package/src/components/MessageRenderer/MessageIncomingSenderName.tsx +5 -2
- package/src/components/MessageRenderer/MessageOutgoingStatus.tsx +26 -33
- package/src/components/MessageRenderer/MessageTime.tsx +6 -2
- package/src/components/MessageRenderer/UnknownMessage/index.tsx +1 -1
- package/src/components/MessageRenderer/UserMessage/BaseUserMessage.tsx +1 -1
- package/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.tsx +4 -2
- package/src/components/MessageRenderer/UserMessage/index.tsx +1 -1
- package/src/components/NewMessagesButton.tsx +1 -1
- package/src/components/ProviderLayout.tsx +1 -1
- package/src/components/SBUPressable.tsx +40 -0
- package/src/components/ScrollToBottomButton.tsx +1 -1
- package/src/components/TypedPlaceholder.tsx +1 -1
- package/src/components/UserActionBar.tsx +2 -2
- package/src/components/UserSelectableBar.tsx +2 -2
- package/src/constants.ts +5 -0
- package/src/contexts/Localization.tsx +2 -3
- package/src/contexts/PlatformService.tsx +13 -6
- package/src/contexts/SendbirdChat.tsx +15 -7
- package/src/domain/groupChannel/component/GroupChannelHeader.tsx +1 -1
- package/src/domain/groupChannel/component/GroupChannelInput/EditInput.tsx +1 -1
- package/src/domain/groupChannel/component/GroupChannelInput/SendInput.tsx +2 -2
- package/src/domain/groupChannel/component/GroupChannelInput/index.tsx +2 -2
- package/src/domain/groupChannel/component/GroupChannelMessageList.tsx +25 -8
- package/src/domain/groupChannel/module/moduleContext.tsx +6 -13
- package/src/domain/groupChannel/types.ts +10 -4
- package/src/domain/groupChannelList/component/GroupChannelListHeader.tsx +2 -4
- package/src/domain/groupChannelList/component/GroupChannelListList.tsx +2 -2
- package/src/domain/groupChannelList/component/GroupChannelListTypeSelector.tsx +4 -4
- package/src/domain/groupChannelList/module/moduleContext.tsx +2 -2
- package/src/domain/groupChannelList/types.ts +3 -2
- package/src/domain/groupChannelSettings/component/GroupChannelSettingsHeader.tsx +1 -1
- package/src/domain/groupChannelSettings/component/GroupChannelSettingsInfo.tsx +1 -1
- package/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.tsx +2 -2
- package/src/domain/groupChannelSettings/module/moduleContext.tsx +7 -15
- package/src/domain/groupChannelSettings/types.ts +2 -2
- package/src/domain/groupChannelUserList/types.ts +4 -5
- package/src/domain/userList/module/moduleContext.tsx +3 -7
- package/src/domain/userList/types.ts +1 -1
- package/src/fragments/createGroupChannelCreateFragment.tsx +38 -41
- package/src/fragments/createGroupChannelFragment.tsx +23 -33
- package/src/fragments/createGroupChannelListFragment.tsx +10 -32
- package/src/fragments/createGroupChannelMembersFragment.tsx +34 -39
- package/src/fragments/createGroupChannelSettingsFragment.tsx +1 -9
- package/src/hooks/useContext.ts +3 -5
- package/src/index.ts +5 -1
- package/src/localization/StringSet.type.ts +8 -0
- package/src/platform/createFileService.expo.ts +29 -16
- package/src/platform/createFileService.native.ts +16 -3
- package/src/platform/createMediaService.expo.tsx +30 -0
- package/src/platform/createMediaService.native.tsx +37 -0
- package/src/platform/createNotificationService.expo.ts +1 -1
- package/src/platform/types.ts +26 -1
- package/src/version.ts +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type React from 'react';
|
|
2
1
|
import type { UseUserListOptions } from '@sendbird/uikit-chat-hooks';
|
|
3
2
|
import type { SendbirdGroupChannel, SendbirdGroupChannelParams } from '@sendbird/uikit-utils';
|
|
3
|
+
import type { CommonComponent } from '../../types';
|
|
4
4
|
import type { GroupChannelType } from '../groupChannelList/types';
|
|
5
5
|
import type { UserListProps } from '../userList/types';
|
|
6
6
|
declare type UserIds = string[];
|
|
@@ -16,7 +16,7 @@ export interface GroupChannelCreateProps<User> {
|
|
|
16
16
|
renderUser?: UserListProps<User>['List']['renderUser'];
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
|
-
export declare type GroupChannelCreateFragment<User> =
|
|
19
|
+
export declare type GroupChannelCreateFragment<User> = CommonComponent<GroupChannelCreateProps<User>['Fragment']>;
|
|
20
20
|
export interface GroupChannelInviteProps<User> {
|
|
21
21
|
Fragment: {
|
|
22
22
|
channel: SendbirdGroupChannel;
|
|
@@ -28,7 +28,7 @@ export interface GroupChannelInviteProps<User> {
|
|
|
28
28
|
sortComparator?: UseUserListOptions<User>['sortComparator'];
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
|
-
export declare type GroupChannelInviteFragment<User> =
|
|
31
|
+
export declare type GroupChannelInviteFragment<User> = CommonComponent<GroupChannelInviteProps<User>['Fragment']>;
|
|
32
32
|
export interface GroupChannelMembersProps<User> {
|
|
33
33
|
Fragment: {
|
|
34
34
|
channel: SendbirdGroupChannel;
|
|
@@ -38,5 +38,5 @@ export interface GroupChannelMembersProps<User> {
|
|
|
38
38
|
renderUser?: UserListProps<User>['List']['renderUser'];
|
|
39
39
|
};
|
|
40
40
|
}
|
|
41
|
-
export declare type GroupChannelMembersFragment<User> =
|
|
41
|
+
export declare type GroupChannelMembersFragment<User> = CommonComponent<GroupChannelMembersProps<User>['Fragment']>;
|
|
42
42
|
export {};
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type { UserListContextsType, UserListProps } from '../types';
|
|
1
|
+
import type { UserListContextsType, UserListModule } from '../types';
|
|
3
2
|
export declare const UserListContexts: UserListContextsType<unknown>;
|
|
4
|
-
export declare const UserListContextsProvider:
|
|
3
|
+
export declare const UserListContextsProvider: UserListModule<any>['Provider'];
|
|
@@ -47,7 +47,7 @@ export interface UserListContextsType<User> {
|
|
|
47
47
|
}>;
|
|
48
48
|
}
|
|
49
49
|
export interface UserListModule<User> {
|
|
50
|
-
Provider:
|
|
50
|
+
Provider: CommonComponent<UserListProps<User>['Provider']>;
|
|
51
51
|
Header: CommonComponent<UserListProps<User>['Header']>;
|
|
52
52
|
List: CommonComponent<UserListProps<User>['List']>;
|
|
53
53
|
StatusEmpty: CommonComponent;
|
|
@@ -1,19 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export declare const useLocalization: () => LocalizationContextType;
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const useLocalization: () => import("../contexts/Localization").LocalizationContextType;
|
|
4
3
|
export declare const usePlatformService: () => {
|
|
5
4
|
fileService: import("..").FileServiceInterface;
|
|
6
5
|
clipboardService: import("..").ClipboardServiceInterface;
|
|
7
6
|
notificationService: import("..").NotificationServiceInterface;
|
|
7
|
+
mediaService?: import("../platform/types").MediaServiceInterface | undefined;
|
|
8
|
+
} & {
|
|
9
|
+
children?: import("react").ReactNode;
|
|
8
10
|
};
|
|
9
11
|
export declare const useSendbirdChat: () => {
|
|
10
12
|
sdk: import("sendbird").SendBirdInstance;
|
|
11
13
|
currentUser?: import("sendbird").User | undefined;
|
|
12
|
-
setCurrentUser:
|
|
14
|
+
setCurrentUser: import("react").Dispatch<import("react").SetStateAction<import("sendbird").User | undefined>>;
|
|
13
15
|
updateCurrentUserInfo: (nickname: string, profile?: string | import("..").FileType | undefined) => Promise<import("sendbird").User>;
|
|
14
16
|
markAsDeliveredWithChannel: (channel: import("sendbird").GroupChannel) => void;
|
|
15
17
|
features: {
|
|
16
18
|
autoPushTokenRegistrationEnabled: boolean;
|
|
19
|
+
channelListTypingIndicatorEnabled: boolean;
|
|
20
|
+
channelListMessageReceiptStatusEnabled: boolean;
|
|
17
21
|
deliveryReceiptEnabled: boolean;
|
|
18
22
|
broadcastChannelEnabled: boolean;
|
|
19
23
|
superGroupChannelEnabled: boolean;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { default as MessageRenderer } from './components/MessageRenderer';
|
|
2
2
|
export { default as ChannelCover } from './components/ChannelCover';
|
|
3
3
|
export { default as ChatFlatList } from './components/ChatFlatList';
|
|
4
|
+
export { default as FileViewer } from './components/FileViewer';
|
|
4
5
|
export { default as NewMessagesButton } from './components/NewMessagesButton';
|
|
5
6
|
export { default as ProviderLayout } from './components/ProviderLayout';
|
|
6
7
|
export { default as ScrollToBottomButton } from './components/ScrollToBottomButton';
|
|
@@ -31,9 +32,11 @@ export type { StringSet } from './localization/StringSet.type';
|
|
|
31
32
|
export { default as createNativeFileService } from './platform/createFileService.native';
|
|
32
33
|
export { default as createNativeClipboardService } from './platform/createClipboardService.native';
|
|
33
34
|
export { default as createNativeNotificationService } from './platform/createNotificationService.native';
|
|
35
|
+
export { default as createNativeMediaService } from './platform/createMediaService.native';
|
|
34
36
|
export { default as createExpoFileService } from './platform/createFileService.expo';
|
|
35
37
|
export { default as createExpoClipboardService } from './platform/createClipboardService.expo';
|
|
36
38
|
export { default as createExpoNotificationService } from './platform/createNotificationService.expo';
|
|
39
|
+
export { default as createExpoMediaService } from './platform/createMediaService.expo';
|
|
37
40
|
export type { FileServiceInterface, ClipboardServiceInterface, FilePickerServiceInterface, FileSystemServiceInterface, SaveOptions, OpenDocumentOptions, OpenCameraOptions, OpenMediaLibraryOptions, OpenResultListener, DownloadedPath, Unsubscribe, FilePickerResponse, FileType, NotificationServiceInterface, } from './platform/types';
|
|
38
41
|
/** Domain **/
|
|
39
42
|
export * from './domain/groupChannel';
|
|
@@ -107,6 +107,10 @@ export interface StringSet {
|
|
|
107
107
|
CHANNEL_NO_MEMBERS: string;
|
|
108
108
|
TYPING_INDICATOR_TYPINGS: (users: SendbirdUser[]) => string | undefined;
|
|
109
109
|
};
|
|
110
|
+
FILE_VIEWER: {
|
|
111
|
+
TITLE: (message: SendbirdFileMessage) => string;
|
|
112
|
+
SUBTITLE: (message: SendbirdFileMessage) => string;
|
|
113
|
+
};
|
|
110
114
|
PLACEHOLDER: {
|
|
111
115
|
NO_BANNED_MEMBERS: string;
|
|
112
116
|
NO_USERS: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type ExpoDocumentPicker from 'expo-document-picker';
|
|
2
|
-
import type ExpoFs from 'expo-file-system';
|
|
3
|
-
import type ExpoImagePicker from 'expo-image-picker';
|
|
4
|
-
import type ExpoMediaLibrary from 'expo-media-library';
|
|
1
|
+
import type * as ExpoDocumentPicker from 'expo-document-picker';
|
|
2
|
+
import type * as ExpoFs from 'expo-file-system';
|
|
3
|
+
import type * as ExpoImagePicker from 'expo-image-picker';
|
|
4
|
+
import type * as ExpoMediaLibrary from 'expo-media-library';
|
|
5
5
|
import type { FileServiceInterface } from './types';
|
|
6
6
|
declare const createExpoFileService: ({ imagePickerModule, documentPickerModule, mediaLibraryModule, fsModule, }: {
|
|
7
7
|
imagePickerModule: typeof ExpoImagePicker;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type * as ExpoAV from 'expo-av';
|
|
2
|
+
import type * as ExpoVideoThumbnail from 'expo-video-thumbnails';
|
|
3
|
+
import type { MediaServiceInterface } from './types';
|
|
4
|
+
declare type Modules = {
|
|
5
|
+
avModule: typeof ExpoAV;
|
|
6
|
+
thumbnailModule: typeof ExpoVideoThumbnail;
|
|
7
|
+
};
|
|
8
|
+
declare const createExpoMediaService: ({ avModule, thumbnailModule }: Modules) => MediaServiceInterface;
|
|
9
|
+
export default createExpoMediaService;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type * as CreateThumbnail from 'react-native-create-thumbnail';
|
|
2
|
+
import type Video from 'react-native-video';
|
|
3
|
+
import type { MediaServiceInterface } from './types';
|
|
4
|
+
declare type Modules = {
|
|
5
|
+
VideoComponent: typeof Video;
|
|
6
|
+
thumbnailModule: typeof CreateThumbnail;
|
|
7
|
+
};
|
|
8
|
+
declare const createNativeMediaService: ({ VideoComponent, thumbnailModule }: Modules) => MediaServiceInterface;
|
|
9
|
+
export default createNativeMediaService;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type ExpoNotification from 'expo-notifications';
|
|
1
|
+
import type * as ExpoNotification from 'expo-notifications';
|
|
2
2
|
import type { NotificationServiceInterface } from './types';
|
|
3
3
|
declare const createExpoNotificationService: (messagingModule: typeof ExpoNotification) => NotificationServiceInterface;
|
|
4
4
|
export default createExpoNotificationService;
|
|
@@ -29,7 +29,7 @@ export interface OpenMediaLibraryOptions extends OpenResultListener {
|
|
|
29
29
|
}
|
|
30
30
|
export interface OpenCameraOptions extends OpenResultListener {
|
|
31
31
|
cameraType?: 'front' | 'back';
|
|
32
|
-
mediaType?: 'photo' | 'video';
|
|
32
|
+
mediaType?: 'photo' | 'video' | 'all';
|
|
33
33
|
}
|
|
34
34
|
export declare type OpenDocumentOptions = OpenResultListener;
|
|
35
35
|
export interface SaveOptions {
|
|
@@ -45,3 +45,22 @@ export interface FilePickerServiceInterface {
|
|
|
45
45
|
export interface FileSystemServiceInterface {
|
|
46
46
|
save(options?: SaveOptions): Promise<DownloadedPath | null>;
|
|
47
47
|
}
|
|
48
|
+
interface VideoProps {
|
|
49
|
+
source: {
|
|
50
|
+
uri: string;
|
|
51
|
+
} | number;
|
|
52
|
+
resizeMode?: 'cover' | 'contain' | 'stretch';
|
|
53
|
+
onLoad?: () => void;
|
|
54
|
+
}
|
|
55
|
+
interface GetVideoThumbnailOptions {
|
|
56
|
+
url: string;
|
|
57
|
+
timeMills?: number;
|
|
58
|
+
quality?: number;
|
|
59
|
+
}
|
|
60
|
+
export interface MediaServiceInterface {
|
|
61
|
+
VideoComponent<Props = {}>(props: VideoProps & Props): JSX.Element;
|
|
62
|
+
getVideoThumbnail(options: GetVideoThumbnailOptions): Promise<{
|
|
63
|
+
path: string;
|
|
64
|
+
} | null>;
|
|
65
|
+
}
|
|
66
|
+
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const VERSION = "1.
|
|
1
|
+
declare const VERSION = "1.1.0";
|
|
2
2
|
export default VERSION;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sendbird/uikit-react-native",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "react-native-uikit",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
|
@@ -41,9 +41,9 @@
|
|
|
41
41
|
"access": "public"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@sendbird/uikit-chat-hooks": "1.
|
|
45
|
-
"@sendbird/uikit-react-native-foundation": "1.
|
|
46
|
-
"@sendbird/uikit-utils": "1.
|
|
44
|
+
"@sendbird/uikit-chat-hooks": "1.1.0",
|
|
45
|
+
"@sendbird/uikit-react-native-foundation": "1.1.0",
|
|
46
|
+
"@sendbird/uikit-utils": "1.1.0"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@react-native-clipboard/clipboard": "^1.8.5",
|
|
@@ -51,26 +51,31 @@
|
|
|
51
51
|
"@react-native-community/netinfo": "^9.3.0",
|
|
52
52
|
"@react-native-firebase/app": "^14.4.0",
|
|
53
53
|
"@react-native-firebase/messaging": "^14.4.0",
|
|
54
|
-
"@types/react": "
|
|
55
|
-
"@types/react-native": "
|
|
54
|
+
"@types/react": "*",
|
|
55
|
+
"@types/react-native": "*",
|
|
56
|
+
"@types/react-native-video": "^5.0.14",
|
|
56
57
|
"date-fns": "^2.28.0",
|
|
58
|
+
"expo-av": "^12.0.4",
|
|
57
59
|
"expo-clipboard": "^2.1.1",
|
|
58
60
|
"expo-document-picker": "^10.1.3",
|
|
59
61
|
"expo-file-system": "^13.1.4",
|
|
60
62
|
"expo-image-picker": "^12.0.2",
|
|
61
63
|
"expo-media-library": "^14.0.1",
|
|
62
64
|
"expo-notifications": "^0.14.1",
|
|
65
|
+
"expo-video-thumbnails": "^6.4.0",
|
|
63
66
|
"glob": "^7.2.0",
|
|
64
67
|
"inquirer": "^8.2.0",
|
|
65
68
|
"js-convert-case": "^4.2.0",
|
|
66
69
|
"react": "17.0.2",
|
|
67
70
|
"react-native": "0.66.4",
|
|
68
71
|
"react-native-builder-bob": "^0.18.0",
|
|
72
|
+
"react-native-create-thumbnail": "^1.5.1",
|
|
69
73
|
"react-native-document-picker": "^8.0.0",
|
|
70
74
|
"react-native-file-access": "^2.4.3",
|
|
71
75
|
"react-native-image-picker": "^4.7.1",
|
|
72
76
|
"react-native-permissions": "^3.6.0",
|
|
73
77
|
"react-native-safe-area-context": "^3.3.2",
|
|
78
|
+
"react-native-video": "^5.2.0",
|
|
74
79
|
"typescript": "^4.1.3"
|
|
75
80
|
},
|
|
76
81
|
"peerDependencies": {
|
|
@@ -79,18 +84,22 @@
|
|
|
79
84
|
"@react-native-community/netinfo": ">=9.3.0",
|
|
80
85
|
"@react-native-firebase/messaging": ">=14.4.0",
|
|
81
86
|
"date-fns": ">=2.28.0",
|
|
87
|
+
"expo-av": ">=12.0.4",
|
|
82
88
|
"expo-clipboard": ">=2.1.1",
|
|
83
89
|
"expo-document-picker": ">=10.1.3",
|
|
84
90
|
"expo-file-system": ">=13.1.4",
|
|
85
91
|
"expo-image-picker": ">=12.0.2",
|
|
86
92
|
"expo-notifications": ">=0.14.1",
|
|
93
|
+
"expo-video-thumbnails": ">=6.4.0",
|
|
87
94
|
"react": ">=16.13.1",
|
|
88
95
|
"react-native": ">=0.63.3",
|
|
96
|
+
"react-native-create-thumbnail": ">=1.5.1",
|
|
89
97
|
"react-native-document-picker": ">=8.0.0",
|
|
90
98
|
"react-native-file-access": ">=2.4.3",
|
|
91
99
|
"react-native-image-picker": ">=4.7.1",
|
|
92
100
|
"react-native-permissions": ">=3.6.0",
|
|
93
101
|
"react-native-safe-area-context": ">=3.3.2",
|
|
102
|
+
"react-native-video": ">=5.2.0",
|
|
94
103
|
"sendbird": "^3.1.22"
|
|
95
104
|
},
|
|
96
105
|
"peerDependenciesMeta": {
|
|
@@ -150,5 +159,5 @@
|
|
|
150
159
|
"readmeFile": "./README.md",
|
|
151
160
|
"displayName": "@sendbird/uikit-react-native"
|
|
152
161
|
},
|
|
153
|
-
"gitHead": "
|
|
162
|
+
"gitHead": "787ef6d52fec5d01e9b831d7a6f17e33614e2d09"
|
|
154
163
|
}
|
|
@@ -15,6 +15,7 @@ const DefaultErrorBoundaryComponent = (props: ErrorBoundaryProps) => {
|
|
|
15
15
|
class InternalErrorBoundary extends React.PureComponent<{
|
|
16
16
|
onError?: (props: ErrorBoundaryProps) => void;
|
|
17
17
|
ErrorInfoComponent?: (props: ErrorBoundaryProps) => JSX.Element;
|
|
18
|
+
children?: React.ReactNode;
|
|
18
19
|
}> {
|
|
19
20
|
static defaultProps = {
|
|
20
21
|
ErrorInfoComponent: DefaultErrorBoundaryComponent,
|
|
@@ -23,7 +23,12 @@ import { useLocalization } from './hooks/useContext';
|
|
|
23
23
|
import StringSetEn from './localization/StringSet.en';
|
|
24
24
|
import type { StringSet } from './localization/StringSet.type';
|
|
25
25
|
import SBUDynamicModule from './platform/dynamicModule';
|
|
26
|
-
import type {
|
|
26
|
+
import type {
|
|
27
|
+
ClipboardServiceInterface,
|
|
28
|
+
FileServiceInterface,
|
|
29
|
+
MediaServiceInterface,
|
|
30
|
+
NotificationServiceInterface,
|
|
31
|
+
} from './platform/types';
|
|
27
32
|
import type { ErrorBoundaryProps, LocalCacheStorage } from './types';
|
|
28
33
|
import VERSION from './version';
|
|
29
34
|
|
|
@@ -34,18 +39,20 @@ export const SendbirdUIKit = Object.freeze({
|
|
|
34
39
|
PLATFORM: Platform.OS.toLowerCase(),
|
|
35
40
|
});
|
|
36
41
|
|
|
37
|
-
export type SendbirdUIKitContainerProps = {
|
|
38
|
-
children?: React.ReactNode;
|
|
42
|
+
export type SendbirdUIKitContainerProps = React.PropsWithChildren<{
|
|
39
43
|
appId: string;
|
|
40
44
|
platformServices: {
|
|
41
45
|
file: FileServiceInterface;
|
|
42
46
|
notification: NotificationServiceInterface;
|
|
43
47
|
clipboard: ClipboardServiceInterface;
|
|
48
|
+
media?: MediaServiceInterface;
|
|
44
49
|
};
|
|
45
50
|
chatOptions?: {
|
|
46
51
|
localCacheStorage?: LocalCacheStorage;
|
|
47
|
-
enableAutoPushTokenRegistration?: boolean;
|
|
48
52
|
onInitialized?: (sdkInstance: SendbirdChatSDK) => SendbirdChatSDK;
|
|
53
|
+
enableAutoPushTokenRegistration?: boolean;
|
|
54
|
+
enableChannelListTypingIndicator?: boolean;
|
|
55
|
+
enableChannelListMessageReceiptStatus?: boolean;
|
|
49
56
|
};
|
|
50
57
|
localization?: {
|
|
51
58
|
stringSet?: StringSet;
|
|
@@ -54,6 +61,7 @@ export type SendbirdUIKitContainerProps = {
|
|
|
54
61
|
theme?: UIKitTheme;
|
|
55
62
|
statusBarTranslucent?: boolean;
|
|
56
63
|
defaultHeaderTitleAlign?: 'left' | 'center';
|
|
64
|
+
defaultHeaderHeight?: number;
|
|
57
65
|
HeaderComponent?: HeaderStyleContextType['HeaderComponent'];
|
|
58
66
|
};
|
|
59
67
|
toast?: {
|
|
@@ -63,7 +71,7 @@ export type SendbirdUIKitContainerProps = {
|
|
|
63
71
|
onError?: (props: ErrorBoundaryProps) => void;
|
|
64
72
|
ErrorInfoComponent?: (props: ErrorBoundaryProps) => JSX.Element;
|
|
65
73
|
};
|
|
66
|
-
}
|
|
74
|
+
}>;
|
|
67
75
|
|
|
68
76
|
const SendbirdUIKitContainer = ({
|
|
69
77
|
children,
|
|
@@ -133,12 +141,15 @@ const SendbirdUIKitContainer = ({
|
|
|
133
141
|
<SendbirdChatProvider
|
|
134
142
|
sdkInstance={sdkInstance}
|
|
135
143
|
enableAutoPushTokenRegistration={chatOptions?.enableAutoPushTokenRegistration ?? true}
|
|
144
|
+
enableChannelListTypingIndicator={chatOptions?.enableChannelListTypingIndicator ?? false}
|
|
145
|
+
enableChannelListMessageReceiptStatus={chatOptions?.enableChannelListMessageReceiptStatus ?? false}
|
|
136
146
|
>
|
|
137
147
|
<LocalizationProvider stringSet={localization?.stringSet ?? StringSetEn}>
|
|
138
148
|
<PlatformServiceProvider
|
|
139
149
|
fileService={platformServices.file}
|
|
140
150
|
notificationService={platformServices.notification}
|
|
141
151
|
clipboardService={platformServices.clipboard}
|
|
152
|
+
mediaService={platformServices.media}
|
|
142
153
|
>
|
|
143
154
|
<UIKitThemeProvider theme={styles?.theme ?? LightUIKitTheme}>
|
|
144
155
|
<HeaderStyleProvider
|
|
@@ -160,7 +171,7 @@ const SendbirdUIKitContainer = ({
|
|
|
160
171
|
);
|
|
161
172
|
};
|
|
162
173
|
|
|
163
|
-
const LocalizedDialogProvider
|
|
174
|
+
const LocalizedDialogProvider = ({ children }: React.PropsWithChildren) => {
|
|
164
175
|
const { STRINGS } = useLocalization();
|
|
165
176
|
return (
|
|
166
177
|
<DialogProvider
|
|
@@ -12,7 +12,7 @@ type Props = {
|
|
|
12
12
|
containerStyle?: StyleProp<ViewStyle>;
|
|
13
13
|
};
|
|
14
14
|
|
|
15
|
-
const ChannelCover
|
|
15
|
+
const ChannelCover = ({ channel, ...avatarProps }: Props) => {
|
|
16
16
|
const { currentUser } = useSendbirdChat();
|
|
17
17
|
|
|
18
18
|
// channel cover
|
|
@@ -48,7 +48,7 @@ const ChatFlatList = forwardRef<ChatFlatListRef, Props>(function CustomFlatList(
|
|
|
48
48
|
}
|
|
49
49
|
}, [onBottomReached, nextMessages, currentUserId]);
|
|
50
50
|
|
|
51
|
-
const _onScroll
|
|
51
|
+
const _onScroll = useCallback<NonNullable<Props['onScroll']>>(
|
|
52
52
|
(event) => {
|
|
53
53
|
const { contentOffset } = event.nativeEvent;
|
|
54
54
|
if (BOTTOM_DETECT_THRESHOLD < yPos.current && contentOffset.y <= BOTTOM_DETECT_THRESHOLD) {
|