@sendbird/uikit-react-native 1.0.0-rc.4 → 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.
- package/lib/commonjs/InternalErrorBoundary.js.map +1 -1
- package/lib/commonjs/SendbirdUIKitContainer.js +1 -1
- 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/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/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.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/ScrollToBottomButton.js.map +1 -1
- package/lib/commonjs/components/TypedPlaceholder.js.map +1 -1
- package/lib/commonjs/components/UserActionBar.js.map +1 -1
- package/lib/commonjs/components/UserSelectableBar.js.map +1 -1
- package/lib/commonjs/contexts/Localization.js.map +1 -1
- package/lib/commonjs/contexts/PlatformService.js.map +1 -1
- 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.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
- package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.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.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/createGroupChannelSettingsFragment.js +2 -3
- package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js.map +1 -1
- package/lib/commonjs/platform/createFileService.expo.js +20 -21
- package/lib/commonjs/platform/createFileService.expo.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 +1 -1
- 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/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/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.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/ScrollToBottomButton.js.map +1 -1
- package/lib/module/components/TypedPlaceholder.js.map +1 -1
- package/lib/module/components/UserActionBar.js.map +1 -1
- package/lib/module/components/UserSelectableBar.js.map +1 -1
- package/lib/module/contexts/Localization.js.map +1 -1
- package/lib/module/contexts/PlatformService.js.map +1 -1
- 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.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
- package/lib/module/domain/groupChannel/component/GroupChannelMessageList.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.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/createGroupChannelSettingsFragment.js +2 -3
- package/lib/module/fragments/createGroupChannelSettingsFragment.js.map +1 -1
- package/lib/module/platform/createFileService.expo.js +20 -21
- package/lib/module/platform/createFileService.expo.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 +3 -4
- package/lib/typescript/src/components/ChannelCover.d.ts +1 -2
- 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/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/ScrollToBottomButton.d.ts +1 -1
- package/lib/typescript/src/components/TypedPlaceholder.d.ts +1 -2
- package/lib/typescript/src/components/UserActionBar.d.ts +1 -1
- package/lib/typescript/src/components/UserSelectableBar.d.ts +1 -1
- package/lib/typescript/src/contexts/Localization.d.ts +2 -3
- package/lib/typescript/src/contexts/PlatformService.d.ts +3 -3
- package/lib/typescript/src/contexts/SendbirdChat.d.ts +3 -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 +2 -2
- 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 +2 -2
- 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 +2 -0
- package/lib/typescript/src/platform/createFileService.expo.d.ts +4 -4
- package/lib/typescript/src/version.d.ts +1 -1
- package/package.json +7 -7
- package/src/InternalErrorBoundary.tsx +1 -0
- package/src/SendbirdUIKitContainer.tsx +4 -5
- package/src/components/ChannelCover.tsx +1 -1
- package/src/components/ChatFlatList.tsx +1 -1
- 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/index.tsx +1 -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 +1 -1
- 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/ScrollToBottomButton.tsx +1 -1
- package/src/components/TypedPlaceholder.tsx +1 -1
- package/src/components/UserActionBar.tsx +1 -1
- package/src/components/UserSelectableBar.tsx +1 -1
- package/src/contexts/Localization.tsx +2 -3
- package/src/contexts/PlatformService.tsx +3 -8
- package/src/contexts/SendbirdChat.tsx +3 -3
- 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 +1 -1
- package/src/domain/groupChannel/component/GroupChannelInput/index.tsx +2 -2
- package/src/domain/groupChannel/component/GroupChannelMessageList.tsx +2 -2
- package/src/domain/groupChannel/types.ts +2 -2
- 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 +2 -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 +2 -5
- 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/createGroupChannelSettingsFragment.tsx +1 -9
- package/src/platform/createFileService.expo.ts +13 -15
- package/src/version.ts +1 -1
|
@@ -8,13 +8,13 @@ import { PASS, SendbirdGroupChannel, useFreshCallback } from '@sendbird/uikit-ut
|
|
|
8
8
|
import { useLocalization, useSendbirdChat } from '../../../hooks/useContext';
|
|
9
9
|
import type { GroupChannelListProps } from '../types';
|
|
10
10
|
|
|
11
|
-
const GroupChannelListList
|
|
11
|
+
const GroupChannelListList = ({
|
|
12
12
|
renderGroupChannelPreview,
|
|
13
13
|
groupChannels,
|
|
14
14
|
onLoadNext,
|
|
15
15
|
flatListProps,
|
|
16
16
|
menuItemCreator = PASS,
|
|
17
|
-
}) => {
|
|
17
|
+
}: GroupChannelListProps['List']) => {
|
|
18
18
|
const toast = useToast();
|
|
19
19
|
const { openMenu } = useActionMenu();
|
|
20
20
|
const { STRINGS } = useLocalization();
|
|
@@ -22,11 +22,11 @@ const TYPE_ICONS: Record<GroupChannelType, keyof typeof Icon.Assets> = {
|
|
|
22
22
|
'BROADCAST': 'broadcast',
|
|
23
23
|
};
|
|
24
24
|
|
|
25
|
-
const GroupChannelListTypeSelector
|
|
25
|
+
const GroupChannelListTypeSelector = ({
|
|
26
26
|
Header = DefaultHeader,
|
|
27
27
|
skipTypeSelection,
|
|
28
28
|
onSelectType,
|
|
29
|
-
}) => {
|
|
29
|
+
}: GroupChannelListProps['TypeSelector']) => {
|
|
30
30
|
const { statusBarTranslucent } = useHeaderStyle();
|
|
31
31
|
const { colors } = useUIKitTheme();
|
|
32
32
|
const typeSelector = useContext(GroupChannelListContexts.TypeSelector);
|
|
@@ -82,11 +82,11 @@ const GroupChannelListTypeSelector: React.FC<GroupChannelListProps['TypeSelector
|
|
|
82
82
|
);
|
|
83
83
|
};
|
|
84
84
|
|
|
85
|
-
const DefaultTypeIcon
|
|
85
|
+
const DefaultTypeIcon = ({ type }: { type: GroupChannelType }) => {
|
|
86
86
|
return <Icon size={24} icon={TYPE_ICONS[type]} containerStyle={styles.icon} />;
|
|
87
87
|
};
|
|
88
88
|
|
|
89
|
-
const DefaultTypeText
|
|
89
|
+
const DefaultTypeText = ({ type }: { type: GroupChannelType }) => {
|
|
90
90
|
const { STRINGS } = useLocalization();
|
|
91
91
|
const { colors } = useUIKitTheme();
|
|
92
92
|
return (
|
|
@@ -4,7 +4,7 @@ import { NOOP } from '@sendbird/uikit-utils';
|
|
|
4
4
|
|
|
5
5
|
import ProviderLayout from '../../../components/ProviderLayout';
|
|
6
6
|
import { useLocalization } from '../../../hooks/useContext';
|
|
7
|
-
import type { GroupChannelListContextsType } from '../types';
|
|
7
|
+
import type { GroupChannelListContextsType, GroupChannelListModule } from '../types';
|
|
8
8
|
|
|
9
9
|
export const GroupChannelListContexts: GroupChannelListContextsType = {
|
|
10
10
|
Fragment: createContext({
|
|
@@ -18,7 +18,7 @@ export const GroupChannelListContexts: GroupChannelListContextsType = {
|
|
|
18
18
|
}),
|
|
19
19
|
};
|
|
20
20
|
|
|
21
|
-
export const GroupChannelListContextsProvider:
|
|
21
|
+
export const GroupChannelListContextsProvider: GroupChannelListModule['Provider'] = ({ children }) => {
|
|
22
22
|
const { STRINGS } = useLocalization();
|
|
23
23
|
|
|
24
24
|
// Type selector
|
|
@@ -80,7 +80,7 @@ export interface GroupChannelListContextsType {
|
|
|
80
80
|
}>;
|
|
81
81
|
}
|
|
82
82
|
export interface GroupChannelListModule {
|
|
83
|
-
Provider:
|
|
83
|
+
Provider: CommonComponent;
|
|
84
84
|
Header: CommonComponent<GroupChannelListProps['Header']>;
|
|
85
85
|
List: CommonComponent<GroupChannelListProps['List']>;
|
|
86
86
|
TypeSelector: CommonComponent<GroupChannelListProps['TypeSelector']>;
|
|
@@ -88,5 +88,5 @@ export interface GroupChannelListModule {
|
|
|
88
88
|
StatusLoading: CommonComponent;
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
-
export type GroupChannelListFragment =
|
|
91
|
+
export type GroupChannelListFragment = CommonComponent<GroupChannelListProps['Fragment']>;
|
|
92
92
|
export type GroupChannelType = 'GROUP' | 'SUPER_GROUP' | 'BROADCAST';
|
|
@@ -5,7 +5,7 @@ import { Icon, Text, useHeaderStyle, useUIKitTheme } from '@sendbird/uikit-react
|
|
|
5
5
|
import { GroupChannelSettingsContexts } from '../module/moduleContext';
|
|
6
6
|
import type { GroupChannelSettingsProps } from '../types';
|
|
7
7
|
|
|
8
|
-
const GroupChannelSettingsHeader
|
|
8
|
+
const GroupChannelSettingsHeader = ({ onPressHeaderLeft }: GroupChannelSettingsProps['Header']) => {
|
|
9
9
|
const { colors } = useUIKitTheme();
|
|
10
10
|
const { headerTitle, headerRight, onPressHeaderRight } = useContext(GroupChannelSettingsContexts.Fragment);
|
|
11
11
|
|
|
@@ -9,7 +9,7 @@ import { useLocalization, useSendbirdChat } from '../../../hooks/useContext';
|
|
|
9
9
|
import { GroupChannelSettingsContexts } from '../module/moduleContext';
|
|
10
10
|
import type { GroupChannelSettingsProps } from '../types';
|
|
11
11
|
|
|
12
|
-
const GroupChannelSettingsInfo:
|
|
12
|
+
const GroupChannelSettingsInfo = (_: GroupChannelSettingsProps['Info']) => {
|
|
13
13
|
const { channel } = useContext(GroupChannelSettingsContexts.Fragment);
|
|
14
14
|
const { currentUser } = useSendbirdChat();
|
|
15
15
|
const { STRINGS } = useLocalization();
|
|
@@ -8,11 +8,11 @@ import { useLocalization, useSendbirdChat } from '../../../hooks/useContext';
|
|
|
8
8
|
import { GroupChannelSettingsContexts } from '../module/moduleContext';
|
|
9
9
|
import type { GroupChannelSettingsProps } from '../types';
|
|
10
10
|
|
|
11
|
-
const GroupChannelSettingsMenu
|
|
11
|
+
const GroupChannelSettingsMenu = ({
|
|
12
12
|
onPressMenuMembers,
|
|
13
13
|
onPressMenuLeaveChannel,
|
|
14
14
|
menuItemsCreator = (menu) => menu,
|
|
15
|
-
}) => {
|
|
15
|
+
}: GroupChannelSettingsProps['Menu']) => {
|
|
16
16
|
const { sdk } = useSendbirdChat();
|
|
17
17
|
const { channel } = useContext(GroupChannelSettingsContexts.Fragment);
|
|
18
18
|
const { STRINGS } = useLocalization();
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
|
|
15
15
|
import ProviderLayout from '../../../components/ProviderLayout';
|
|
16
16
|
import { useLocalization, usePlatformService, useSendbirdChat } from '../../../hooks/useContext';
|
|
17
|
-
import type { GroupChannelSettingsContextsType,
|
|
17
|
+
import type { GroupChannelSettingsContextsType, GroupChannelSettingsModule } from '../types';
|
|
18
18
|
|
|
19
19
|
export const GroupChannelSettingsContexts: GroupChannelSettingsContextsType = {
|
|
20
20
|
Fragment: createContext({
|
|
@@ -26,10 +26,7 @@ export const GroupChannelSettingsContexts: GroupChannelSettingsContextsType = {
|
|
|
26
26
|
};
|
|
27
27
|
|
|
28
28
|
const HOOK_NAME = 'GroupChannelSettingsContextsProvider';
|
|
29
|
-
export const GroupChannelSettingsContextsProvider:
|
|
30
|
-
children,
|
|
31
|
-
channel,
|
|
32
|
-
}) => {
|
|
29
|
+
export const GroupChannelSettingsContextsProvider: GroupChannelSettingsModule['Provider'] = ({ children, channel }) => {
|
|
33
30
|
const uniqId = useUniqId(HOOK_NAME);
|
|
34
31
|
const forceUpdate = useForceUpdate();
|
|
35
32
|
const { STRINGS } = useLocalization();
|
|
@@ -41,10 +41,10 @@ export interface GroupChannelSettingsContextsType {
|
|
|
41
41
|
}>;
|
|
42
42
|
}
|
|
43
43
|
export interface GroupChannelSettingsModule {
|
|
44
|
-
Provider:
|
|
44
|
+
Provider: CommonComponent<GroupChannelSettingsProps['Provider']>;
|
|
45
45
|
Header: CommonComponent<GroupChannelSettingsProps['Header']>;
|
|
46
46
|
Info: CommonComponent<GroupChannelSettingsProps['Info']>;
|
|
47
47
|
Menu: CommonComponent<GroupChannelSettingsProps['Menu']>;
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
export type GroupChannelSettingsFragment =
|
|
50
|
+
export type GroupChannelSettingsFragment = CommonComponent<GroupChannelSettingsProps['Fragment']>;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import type React from 'react';
|
|
2
|
-
|
|
3
1
|
import type { UseUserListOptions } from '@sendbird/uikit-chat-hooks';
|
|
4
2
|
import type { SendbirdGroupChannel, SendbirdGroupChannelParams } from '@sendbird/uikit-utils';
|
|
5
3
|
|
|
4
|
+
import type { CommonComponent } from '../../types';
|
|
6
5
|
import type { GroupChannelType } from '../groupChannelList/types';
|
|
7
6
|
import type { UserListProps } from '../userList/types';
|
|
8
7
|
|
|
@@ -23,7 +22,7 @@ export interface GroupChannelCreateProps<User> {
|
|
|
23
22
|
renderUser?: UserListProps<User>['List']['renderUser'];
|
|
24
23
|
};
|
|
25
24
|
}
|
|
26
|
-
export type GroupChannelCreateFragment<User> =
|
|
25
|
+
export type GroupChannelCreateFragment<User> = CommonComponent<GroupChannelCreateProps<User>['Fragment']>;
|
|
27
26
|
|
|
28
27
|
export interface GroupChannelInviteProps<User> {
|
|
29
28
|
Fragment: {
|
|
@@ -36,7 +35,7 @@ export interface GroupChannelInviteProps<User> {
|
|
|
36
35
|
sortComparator?: UseUserListOptions<User>['sortComparator'];
|
|
37
36
|
};
|
|
38
37
|
}
|
|
39
|
-
export type GroupChannelInviteFragment<User> =
|
|
38
|
+
export type GroupChannelInviteFragment<User> = CommonComponent<GroupChannelInviteProps<User>['Fragment']>;
|
|
40
39
|
|
|
41
40
|
export interface GroupChannelMembersProps<User> {
|
|
42
41
|
Fragment: {
|
|
@@ -47,4 +46,4 @@ export interface GroupChannelMembersProps<User> {
|
|
|
47
46
|
renderUser?: UserListProps<User>['List']['renderUser'];
|
|
48
47
|
};
|
|
49
48
|
}
|
|
50
|
-
export type GroupChannelMembersFragment<User> =
|
|
49
|
+
export type GroupChannelMembersFragment<User> = CommonComponent<GroupChannelMembersProps<User>['Fragment']>;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
1
2
|
import React, { createContext, useState } from 'react';
|
|
2
3
|
|
|
3
4
|
import type { ContextValue } from '@sendbird/uikit-utils';
|
|
4
5
|
import { NOOP } from '@sendbird/uikit-utils';
|
|
5
6
|
|
|
6
7
|
import ProviderLayout from '../../../components/ProviderLayout';
|
|
7
|
-
import type { UserListContextsType,
|
|
8
|
+
import type { UserListContextsType, UserListModule } from '../types';
|
|
8
9
|
|
|
9
10
|
export const UserListContexts: UserListContextsType<unknown> = {
|
|
10
11
|
Fragment: createContext({
|
|
@@ -16,12 +17,7 @@ export const UserListContexts: UserListContextsType<unknown> = {
|
|
|
16
17
|
setSelectedUsers: NOOP,
|
|
17
18
|
}),
|
|
18
19
|
};
|
|
19
|
-
|
|
20
|
-
export const UserListContextsProvider: React.FC<UserListProps<any>['Provider']> = ({
|
|
21
|
-
children,
|
|
22
|
-
headerTitle,
|
|
23
|
-
headerRight,
|
|
24
|
-
}) => {
|
|
20
|
+
export const UserListContextsProvider: UserListModule<any>['Provider'] = ({ children, headerTitle, headerRight }) => {
|
|
25
21
|
const [selectedUsers, setSelectedUsers] = useState<unknown[]>([]);
|
|
26
22
|
|
|
27
23
|
return (
|
|
@@ -56,7 +56,7 @@ export interface UserListContextsType<User> {
|
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
export interface UserListModule<User> {
|
|
59
|
-
Provider:
|
|
59
|
+
Provider: CommonComponent<UserListProps<User>['Provider']>;
|
|
60
60
|
Header: CommonComponent<UserListProps<User>['Header']>;
|
|
61
61
|
List: CommonComponent<UserListProps<User>['List']>;
|
|
62
62
|
StatusEmpty: CommonComponent;
|
|
@@ -13,14 +13,7 @@ const createGroupChannelSettingsFragment = (
|
|
|
13
13
|
): GroupChannelSettingsFragment => {
|
|
14
14
|
const GroupChannelSettingsModule = createGroupChannelSettingsModule(initModule);
|
|
15
15
|
|
|
16
|
-
return ({
|
|
17
|
-
onPressHeaderLeft = NOOP,
|
|
18
|
-
channel,
|
|
19
|
-
onPressMenuMembers,
|
|
20
|
-
onPressMenuLeaveChannel,
|
|
21
|
-
menuItemsCreator,
|
|
22
|
-
children,
|
|
23
|
-
}) => {
|
|
16
|
+
return ({ onPressHeaderLeft = NOOP, channel, onPressMenuMembers, onPressMenuLeaveChannel, menuItemsCreator }) => {
|
|
24
17
|
const { colors } = useUIKitTheme();
|
|
25
18
|
const { left, right } = useSafeAreaInsets();
|
|
26
19
|
|
|
@@ -40,7 +33,6 @@ const createGroupChannelSettingsFragment = (
|
|
|
40
33
|
onPressMenuMembers={onPressMenuMembers}
|
|
41
34
|
onPressMenuLeaveChannel={onPressMenuLeaveChannel}
|
|
42
35
|
/>
|
|
43
|
-
{children}
|
|
44
36
|
</ScrollView>
|
|
45
37
|
</GroupChannelSettingsModule.Provider>
|
|
46
38
|
);
|
|
@@ -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
|
|
|
6
6
|
import { getFileExtension, getFileType } from '@sendbird/uikit-utils';
|
|
7
7
|
|
|
@@ -83,7 +83,6 @@ const createExpoFileService = ({
|
|
|
83
83
|
return fileTypeGuard({ uri, size, type: `${type}/${ext.slice(1)}`, name: Date.now() + ext });
|
|
84
84
|
}
|
|
85
85
|
async openMediaLibrary(options: OpenMediaLibraryOptions) {
|
|
86
|
-
const selectionLimit = options?.selectionLimit || 1;
|
|
87
86
|
const hasPermission = await this.hasMediaLibraryPermission('read');
|
|
88
87
|
if (!hasPermission) {
|
|
89
88
|
const granted = await this.requestMediaLibraryPermission('read');
|
|
@@ -93,17 +92,14 @@ const createExpoFileService = ({
|
|
|
93
92
|
}
|
|
94
93
|
}
|
|
95
94
|
|
|
96
|
-
const response = await imagePickerModule.launchImageLibraryAsync(
|
|
95
|
+
const response = await imagePickerModule.launchImageLibraryAsync();
|
|
97
96
|
if (response.cancelled) return null;
|
|
97
|
+
const { uri } = response;
|
|
98
98
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
const type = getFileType(ext);
|
|
104
|
-
return fileTypeGuard({ uri, size, type: `${type}/${ext.slice(1)}`, name: Date.now() + ext });
|
|
105
|
-
}),
|
|
106
|
-
);
|
|
99
|
+
const { size } = await fsModule.getInfoAsync(uri);
|
|
100
|
+
const ext = getFileExtension(uri);
|
|
101
|
+
const type = getFileType(ext);
|
|
102
|
+
return [fileTypeGuard({ uri, size, type: `${type}/${ext.slice(1)}`, name: Date.now() + ext })];
|
|
107
103
|
}
|
|
108
104
|
|
|
109
105
|
async openDocument(options?: OpenDocumentOptions): Promise<FilePickerResponse> {
|
|
@@ -131,7 +127,9 @@ const createExpoFileService = ({
|
|
|
131
127
|
const downloadPath = `${basePath}/${options.fileName}`;
|
|
132
128
|
|
|
133
129
|
const response = await fsModule.downloadAsync(options.fileUrl, downloadPath);
|
|
134
|
-
|
|
130
|
+
if (getFileType(options.fileType || '').match(/video|image/)) {
|
|
131
|
+
await mediaLibraryModule.saveToLibraryAsync(response.uri);
|
|
132
|
+
}
|
|
135
133
|
return response.uri;
|
|
136
134
|
}
|
|
137
135
|
}
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const VERSION = '1.0.
|
|
1
|
+
const VERSION = '1.0.2';
|
|
2
2
|
export default VERSION;
|