stream-chat-react-native-core 4.5.0 → 4.6.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 +3 -3
- package/lib/commonjs/components/Attachment/FileIcon.js +9 -1
- package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +232 -48
- package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- package/lib/commonjs/components/Channel/Channel.js.map +1 -1
- package/lib/commonjs/components/Chat/Chat.js.map +1 -1
- package/lib/commonjs/components/Message/Message.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +39 -21
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/utils/renderText.md +1 -1
- package/lib/commonjs/components/MessageInput/FileUploadPreview.js +1 -1
- package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
- package/lib/commonjs/components/MessageInput/MessageInput.js +129 -44
- package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
- package/lib/commonjs/components/Reply/Reply.js +25 -9
- package/lib/commonjs/components/Reply/Reply.js.map +1 -1
- package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js +15 -8
- package/lib/commonjs/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
- package/lib/commonjs/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/commonjs/contexts/channelContext/ChannelContext.md +1 -1
- package/lib/commonjs/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/commonjs/contexts/channelsContext/ChannelsContext.md +1 -1
- package/lib/commonjs/contexts/chatContext/ChatContext.md +1 -1
- package/lib/commonjs/contexts/imageGalleryContext/ImageGalleryContext.md +1 -1
- package/lib/commonjs/contexts/keyboardContext/KeyboardContext.md +1 -1
- package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/commonjs/contexts/messageContext/MessageContext.md +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +10 -7
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/commonjs/contexts/messageInputContext/MessageInputContext.md +1 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js +16 -1
- package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
- package/lib/commonjs/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
- package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/commonjs/contexts/messagesContext/MessagesContext.md +1 -1
- package/lib/commonjs/contexts/overlayContext/OverlayContext.md +1 -1
- package/lib/commonjs/contexts/paginatedMessageListContext/PaginatedMessageListContext.md +1 -1
- package/lib/commonjs/contexts/suggestionsContext/SuggestionsContext.md +1 -1
- package/lib/commonjs/contexts/themeContext/utils/theme.js +1 -0
- package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/commonjs/contexts/typingContext/TypingContext.md +1 -1
- package/lib/commonjs/icons/Recorder.js +47 -0
- package/lib/commonjs/icons/Recorder.js.map +1 -0
- package/lib/commonjs/icons/Video.js +82 -0
- package/lib/commonjs/icons/Video.js.map +1 -0
- package/lib/commonjs/icons/index.js +26 -0
- package/lib/commonjs/icons/index.js.map +1 -1
- package/lib/commonjs/native.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/Attachment/FileIcon.js +9 -1
- package/lib/module/components/Attachment/FileIcon.js.map +1 -1
- package/lib/module/components/AttachmentPicker/AttachmentPicker.js +232 -48
- package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- package/lib/module/components/Channel/Channel.js.map +1 -1
- package/lib/module/components/Chat/Chat.js.map +1 -1
- package/lib/module/components/Message/Message.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageContent.js +39 -21
- package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/utils/renderText.md +1 -1
- package/lib/module/components/MessageInput/FileUploadPreview.js +1 -1
- package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
- package/lib/module/components/MessageInput/MessageInput.js +129 -44
- package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
- package/lib/module/components/Reply/Reply.js +25 -9
- package/lib/module/components/Reply/Reply.js.map +1 -1
- package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js +15 -8
- package/lib/module/contexts/attachmentPickerContext/AttachmentPickerContext.js.map +1 -1
- package/lib/module/contexts/channelContext/ChannelContext.js.map +1 -1
- package/lib/module/contexts/channelContext/ChannelContext.md +1 -1
- package/lib/module/contexts/channelsContext/ChannelsContext.js.map +1 -1
- package/lib/module/contexts/channelsContext/ChannelsContext.md +1 -1
- package/lib/module/contexts/chatContext/ChatContext.md +1 -1
- package/lib/module/contexts/imageGalleryContext/ImageGalleryContext.md +1 -1
- package/lib/module/contexts/keyboardContext/KeyboardContext.md +1 -1
- package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/module/contexts/messageContext/MessageContext.md +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.js +10 -7
- package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
- package/lib/module/contexts/messageInputContext/MessageInputContext.md +1 -1
- package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js +16 -1
- package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
- package/lib/module/contexts/messageOverlayContext/MessageOverlayContext.js.map +1 -1
- package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
- package/lib/module/contexts/messagesContext/MessagesContext.md +1 -1
- package/lib/module/contexts/overlayContext/OverlayContext.md +1 -1
- package/lib/module/contexts/paginatedMessageListContext/PaginatedMessageListContext.md +1 -1
- package/lib/module/contexts/suggestionsContext/SuggestionsContext.md +1 -1
- package/lib/module/contexts/themeContext/utils/theme.js +1 -0
- package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
- package/lib/module/contexts/typingContext/TypingContext.md +1 -1
- package/lib/module/icons/Recorder.js +47 -0
- package/lib/module/icons/Recorder.js.map +1 -0
- package/lib/module/icons/Video.js +82 -0
- package/lib/module/icons/Video.js.map +1 -0
- package/lib/module/icons/index.js +26 -0
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/native.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/AttachmentPicker/AttachmentPicker.d.ts +6 -6
- package/lib/typescript/components/Channel/Channel.d.ts +2 -2
- package/lib/typescript/components/Chat/Chat.d.ts +1 -1
- package/lib/typescript/components/Message/Message.d.ts +2 -2
- package/lib/typescript/components/MessageInput/MessageInput.d.ts +1 -1
- package/lib/typescript/contexts/attachmentPickerContext/AttachmentPickerContext.d.ts +9 -8
- package/lib/typescript/contexts/channelContext/ChannelContext.d.ts +2 -2
- package/lib/typescript/contexts/channelsContext/ChannelsContext.d.ts +6 -6
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts +2 -2
- package/lib/typescript/contexts/messageInputContext/MessageInputContext.d.ts +10 -21
- package/lib/typescript/contexts/messageOverlayContext/MessageOverlayContext.d.ts +6 -6
- package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +20 -20
- package/lib/typescript/contexts/themeContext/utils/theme.d.ts +2 -1
- package/lib/typescript/icons/Recorder.d.ts +3 -0
- package/lib/typescript/icons/Video.d.ts +3 -0
- package/lib/typescript/icons/index.d.ts +2 -0
- package/lib/typescript/native.d.ts +3 -14
- package/lib/typescript/types/types.d.ts +24 -0
- package/package.json +1 -1
- package/src/components/Attachment/FileIcon.tsx +45 -0
- package/src/components/AttachmentPicker/AttachmentPicker.tsx +210 -60
- package/src/components/Channel/Channel.tsx +2 -2
- package/src/components/Chat/Chat.tsx +1 -1
- package/src/components/Message/Message.tsx +2 -2
- package/src/components/Message/MessageSimple/MessageContent.tsx +23 -12
- package/src/components/Message/MessageSimple/utils/renderText.md +1 -1
- package/src/components/MessageInput/FileUploadPreview.tsx +1 -1
- package/src/components/MessageInput/MessageInput.tsx +106 -19
- package/src/components/Reply/Reply.tsx +31 -14
- package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +12 -0
- package/src/contexts/attachmentPickerContext/AttachmentPickerContext.tsx +12 -8
- package/src/contexts/channelContext/ChannelContext.md +1 -1
- package/src/contexts/channelContext/ChannelContext.tsx +2 -2
- package/src/contexts/channelsContext/ChannelsContext.md +1 -1
- package/src/contexts/channelsContext/ChannelsContext.tsx +6 -6
- package/src/contexts/chatContext/ChatContext.md +1 -1
- package/src/contexts/imageGalleryContext/ImageGalleryContext.md +1 -1
- package/src/contexts/keyboardContext/KeyboardContext.md +1 -1
- package/src/contexts/messageContext/MessageContext.md +1 -1
- package/src/contexts/messageContext/MessageContext.tsx +2 -2
- package/src/contexts/messageInputContext/MessageInputContext.md +1 -1
- package/src/contexts/messageInputContext/MessageInputContext.tsx +23 -30
- package/src/contexts/messageInputContext/hooks/useMessageDetailsForState.ts +17 -1
- package/src/contexts/messageOverlayContext/MessageOverlayContext.tsx +6 -6
- package/src/contexts/messagesContext/MessagesContext.md +1 -1
- package/src/contexts/messagesContext/MessagesContext.tsx +20 -20
- package/src/contexts/overlayContext/OverlayContext.md +1 -1
- package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.md +1 -1
- package/src/contexts/suggestionsContext/SuggestionsContext.md +1 -1
- package/src/contexts/themeContext/utils/theme.ts +3 -1
- package/src/contexts/typingContext/TypingContext.md +1 -1
- package/src/icons/Recorder.tsx +16 -0
- package/src/icons/Video.tsx +37 -0
- package/src/icons/index.ts +2 -0
- package/src/native.ts +4 -14
- package/src/types/types.ts +27 -0
- package/src/version.json +1 -1
|
@@ -35,8 +35,8 @@ import type { MoreOptionsButtonProps } from '../../components/MessageInput/MoreO
|
|
|
35
35
|
import type { SendButtonProps } from '../../components/MessageInput/SendButton';
|
|
36
36
|
import type { UploadProgressIndicatorProps } from '../../components/MessageInput/UploadProgressIndicator';
|
|
37
37
|
import type { MessageType } from '../../components/MessageList/hooks/useMessageList';
|
|
38
|
-
import {
|
|
39
|
-
import type { DefaultStreamChatGenerics, UnknownType } from '../../types/types';
|
|
38
|
+
import { compressImage, getLocalAssetUri, pickDocument } from '../../native';
|
|
39
|
+
import type { Asset, DefaultStreamChatGenerics, File, UnknownType } from '../../types/types';
|
|
40
40
|
import {
|
|
41
41
|
ACITriggerSettings,
|
|
42
42
|
ACITriggerSettingsParams,
|
|
@@ -55,12 +55,7 @@ import { useTranslationContext } from '../translationContext/TranslationContext'
|
|
|
55
55
|
import { getDisplayName } from '../utils/getDisplayName';
|
|
56
56
|
|
|
57
57
|
export type FileUpload = {
|
|
58
|
-
file:
|
|
59
|
-
name: string;
|
|
60
|
-
size?: number | string;
|
|
61
|
-
type?: string;
|
|
62
|
-
uri?: string;
|
|
63
|
-
};
|
|
58
|
+
file: File;
|
|
64
59
|
id: string;
|
|
65
60
|
state: FileStateValue;
|
|
66
61
|
url?: string;
|
|
@@ -207,13 +202,8 @@ export type LocalMessageInputContext<
|
|
|
207
202
|
uploadFile: ({ newFile }: { newFile: FileUpload }) => Promise<void>;
|
|
208
203
|
/** Function for attempting to upload an image */
|
|
209
204
|
uploadImage: ({ newImage }: { newImage: ImageUpload }) => Promise<void>;
|
|
210
|
-
uploadNewFile: (file:
|
|
211
|
-
|
|
212
|
-
size?: number | string;
|
|
213
|
-
type?: string;
|
|
214
|
-
uri?: string;
|
|
215
|
-
}) => Promise<void>;
|
|
216
|
-
uploadNewImage: (image: Partial<Asset>) => Promise<void>;
|
|
205
|
+
uploadNewFile: (file: File) => Promise<void>;
|
|
206
|
+
uploadNewImage: (image: Asset) => Promise<void>;
|
|
217
207
|
};
|
|
218
208
|
|
|
219
209
|
export type InputMessageInputContextValue<
|
|
@@ -238,7 +228,7 @@ export type InputMessageInputContextValue<
|
|
|
238
228
|
* being allowed to send another message. This component is displayed in place of the
|
|
239
229
|
* send button for the MessageInput component.
|
|
240
230
|
*
|
|
241
|
-
* **default** [CooldownTimer](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
231
|
+
* **default** [CooldownTimer](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageInput/CooldownTimer.tsx)
|
|
242
232
|
*/
|
|
243
233
|
CooldownTimer: React.ComponentType<CooldownTimerProps>;
|
|
244
234
|
editing: boolean | MessageType<StreamChatGenerics>;
|
|
@@ -246,7 +236,7 @@ export type InputMessageInputContextValue<
|
|
|
246
236
|
|
|
247
237
|
/**
|
|
248
238
|
* Custom UI component for FileUploadPreview.
|
|
249
|
-
* Defaults to and accepts same props as: https://github.com/GetStream/stream-chat-react-native/blob/
|
|
239
|
+
* Defaults to and accepts same props as: https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageInput/FileUploadPreview.tsx
|
|
250
240
|
*/
|
|
251
241
|
FileUploadPreview: React.ComponentType<FileUploadPreviewProps<StreamChatGenerics>>;
|
|
252
242
|
|
|
@@ -258,7 +248,7 @@ export type InputMessageInputContextValue<
|
|
|
258
248
|
hasImagePicker: boolean;
|
|
259
249
|
/**
|
|
260
250
|
* Custom UI component for ImageUploadPreview.
|
|
261
|
-
* Defaults to and accepts same props as: https://github.com/GetStream/stream-chat-react-native/blob/
|
|
251
|
+
* Defaults to and accepts same props as: https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageInput/ImageUploadPreview.tsx
|
|
262
252
|
*/
|
|
263
253
|
ImageUploadPreview: React.ComponentType<ImageUploadPreviewProps<StreamChatGenerics>>;
|
|
264
254
|
InputEditingStateHeader: React.ComponentType<InputEditingStateHeaderProps<StreamChatGenerics>>;
|
|
@@ -294,7 +284,7 @@ export type InputMessageInputContextValue<
|
|
|
294
284
|
/**
|
|
295
285
|
* Custom UI component to render upload progress indicator on attachment preview.
|
|
296
286
|
*
|
|
297
|
-
* **Default** [UploadProgressIndicator](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
287
|
+
* **Default** [UploadProgressIndicator](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageInput/UploadProgressIndicator.tsx)
|
|
298
288
|
*/
|
|
299
289
|
UploadProgressIndicator: React.ComponentType<UploadProgressIndicatorProps>;
|
|
300
290
|
/**
|
|
@@ -355,7 +345,7 @@ export type InputMessageInputContextValue<
|
|
|
355
345
|
initialValue?: string;
|
|
356
346
|
/**
|
|
357
347
|
* Custom UI component for AutoCompleteInput.
|
|
358
|
-
* Has access to all of [MessageInputContext](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
348
|
+
* Has access to all of [MessageInputContext](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/contexts/messageInputContext/MessageInputContext.tsx)
|
|
359
349
|
*/
|
|
360
350
|
Input?: React.ComponentType<
|
|
361
351
|
Omit<MessageInputProps<StreamChatGenerics>, 'Input'> &
|
|
@@ -365,7 +355,7 @@ export type InputMessageInputContextValue<
|
|
|
365
355
|
>;
|
|
366
356
|
/**
|
|
367
357
|
* Custom UI component to override buttons on left side of input box
|
|
368
|
-
* Defaults to [InputButtons](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
358
|
+
* Defaults to [InputButtons](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageInput/InputButtons.tsx),
|
|
369
359
|
* which contain following components/buttons:
|
|
370
360
|
*
|
|
371
361
|
* - AttachButton
|
|
@@ -699,6 +689,7 @@ export const MessageInputProvider = <
|
|
|
699
689
|
} else if (file.file.type?.startsWith('video/')) {
|
|
700
690
|
attachments.push({
|
|
701
691
|
asset_url: file.url,
|
|
692
|
+
duration: file.file.duration,
|
|
702
693
|
file_size: file.file.size,
|
|
703
694
|
mime_type: file.file.type,
|
|
704
695
|
title: file.file.name,
|
|
@@ -970,7 +961,10 @@ export const MessageInputProvider = <
|
|
|
970
961
|
return prevAsyncUploads;
|
|
971
962
|
});
|
|
972
963
|
} else {
|
|
973
|
-
|
|
964
|
+
const newImageUploads = getUploadSetStateAction<ImageUpload>(id, FileState.UPLOADED, {
|
|
965
|
+
url: res.file,
|
|
966
|
+
});
|
|
967
|
+
setImageUploads(newImageUploads);
|
|
974
968
|
}
|
|
975
969
|
});
|
|
976
970
|
} else {
|
|
@@ -979,13 +973,12 @@ export const MessageInputProvider = <
|
|
|
979
973
|
}
|
|
980
974
|
|
|
981
975
|
if (Object.keys(response).length) {
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
);
|
|
976
|
+
const newImageUploads = getUploadSetStateAction<ImageUpload>(id, FileState.UPLOADED, {
|
|
977
|
+
height: file.height,
|
|
978
|
+
url: response.file,
|
|
979
|
+
width: file.width,
|
|
980
|
+
});
|
|
981
|
+
setImageUploads(newImageUploads);
|
|
989
982
|
}
|
|
990
983
|
} catch (error) {
|
|
991
984
|
handleFileOrImageUploadError(error, true, id);
|
|
@@ -1029,7 +1022,7 @@ export const MessageInputProvider = <
|
|
|
1029
1022
|
}
|
|
1030
1023
|
};
|
|
1031
1024
|
|
|
1032
|
-
const uploadNewImage = async (image:
|
|
1025
|
+
const uploadNewImage = async (image: Asset) => {
|
|
1033
1026
|
const id = generateRandomId();
|
|
1034
1027
|
|
|
1035
1028
|
const isBlockedImageMimeType = blockedImageMimeTypes?.some((mimeType: string) =>
|
|
@@ -65,11 +65,27 @@ export const useMessageDetailsForState = <
|
|
|
65
65
|
} else if (attachment.type === 'image') {
|
|
66
66
|
const id = generateRandomId();
|
|
67
67
|
newImageUploads.push({
|
|
68
|
-
file: {
|
|
68
|
+
file: {
|
|
69
|
+
name: attachment.fallback,
|
|
70
|
+
size: attachment.file_size,
|
|
71
|
+
type: attachment.type,
|
|
72
|
+
},
|
|
69
73
|
id,
|
|
70
74
|
state: 'finished',
|
|
71
75
|
url: attachment.image_url || attachment.asset_url || attachment.thumb_url,
|
|
72
76
|
});
|
|
77
|
+
} else if (attachment.type === 'video') {
|
|
78
|
+
const id = generateRandomId();
|
|
79
|
+
newFileUploads.push({
|
|
80
|
+
file: {
|
|
81
|
+
name: attachment.title || '',
|
|
82
|
+
size: attachment.file_size,
|
|
83
|
+
type: attachment.mime_type,
|
|
84
|
+
},
|
|
85
|
+
id,
|
|
86
|
+
state: 'finished',
|
|
87
|
+
url: attachment.asset_url,
|
|
88
|
+
});
|
|
73
89
|
}
|
|
74
90
|
}
|
|
75
91
|
if (newFileUploads.length) {
|
|
@@ -46,22 +46,22 @@ export type MessageOverlayContextValue<
|
|
|
46
46
|
StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,
|
|
47
47
|
> = {
|
|
48
48
|
/**
|
|
49
|
-
* Custom UI component for rendering [message actions](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
49
|
+
* Custom UI component for rendering [message actions](https://github.com/GetStream/stream-chat-react-native/blob/main/screenshots/docs/2.png) in overlay.
|
|
50
50
|
*
|
|
51
|
-
* **Default** [MessageActionList](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
51
|
+
* **Default** [MessageActionList](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageOverlay/MessageActions.tsx)
|
|
52
52
|
*/
|
|
53
53
|
MessageActionList: React.ComponentType<MessageActionListProps<StreamChatGenerics>>;
|
|
54
54
|
MessageActionListItem: React.ComponentType<MessageActionListItemProps<StreamChatGenerics>>;
|
|
55
55
|
/**
|
|
56
|
-
* Custom UI component for rendering [reaction selector](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
56
|
+
* Custom UI component for rendering [reaction selector](https://github.com/GetStream/stream-chat-react-native/blob/main/screenshots/docs/2.png) in overlay (which shows up on long press on message).
|
|
57
57
|
*
|
|
58
|
-
* **Default** [OverlayReactionList](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
58
|
+
* **Default** [OverlayReactionList](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageOverlay/OverlayReactionList.tsx)
|
|
59
59
|
*/
|
|
60
60
|
OverlayReactionList: React.ComponentType<OverlayReactionListProps<StreamChatGenerics>>;
|
|
61
61
|
/**
|
|
62
|
-
* Custom UI component for rendering [reactions list](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
62
|
+
* Custom UI component for rendering [reactions list](https://github.com/GetStream/stream-chat-react-native/blob/main/screenshots/docs/2.png), in overlay (which shows up on long press on message).
|
|
63
63
|
*
|
|
64
|
-
* **Default** [OverlayReactions](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
64
|
+
* **Default** [OverlayReactions](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageOverlay/OverlayReactions.tsx)
|
|
65
65
|
*/
|
|
66
66
|
OverlayReactions: React.ComponentType<OverlayReactionsProps<StreamChatGenerics>>;
|
|
67
67
|
OverlayReactionsAvatar: React.ComponentType<OverlayReactionsAvatarProps>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Please check the `MessagesContextValue` in [MessagesContext](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
1
|
+
Please check the `MessagesContextValue` in [MessagesContext](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/contexts/messageContext/MessageContext.tsx), for consumable values.
|
|
2
2
|
Provider for this context exists in `Channel` component. And so, any child component of Channel
|
|
3
3
|
can get access to context as following:
|
|
4
4
|
|
|
@@ -57,22 +57,22 @@ export type MessagesContextValue<
|
|
|
57
57
|
> = {
|
|
58
58
|
/**
|
|
59
59
|
* UI component for Attachment.
|
|
60
|
-
* Defaults to: [Attachment](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
60
|
+
* Defaults to: [Attachment](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/Attachment.tsx)
|
|
61
61
|
*/
|
|
62
62
|
Attachment: React.ComponentType<AttachmentProps<StreamChatGenerics>>;
|
|
63
63
|
/**
|
|
64
64
|
* UI component to display AttachmentActions. e.g., send, shuffle, cancel in case of giphy
|
|
65
|
-
* Defaults to: [AttachmentActions](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
65
|
+
* Defaults to: [AttachmentActions](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/AttachmentActions.tsx)
|
|
66
66
|
*/
|
|
67
67
|
AttachmentActions: React.ComponentType<AttachmentActionsProps<StreamChatGenerics>>;
|
|
68
68
|
/**
|
|
69
69
|
* UI component to display generic media type e.g. giphy, url preview etc
|
|
70
|
-
* Defaults to: [Card](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
70
|
+
* Defaults to: [Card](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/Card.tsx)
|
|
71
71
|
*/
|
|
72
72
|
Card: React.ComponentType<CardProps<StreamChatGenerics>>;
|
|
73
73
|
/**
|
|
74
74
|
* UI component for DateHeader
|
|
75
|
-
* Defaults to: [DateHeader](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
75
|
+
* Defaults to: [DateHeader](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageList/DateHeader.tsx)
|
|
76
76
|
**/
|
|
77
77
|
DateHeader: React.ComponentType<DateHeaderProps>;
|
|
78
78
|
|
|
@@ -83,28 +83,28 @@ export type MessagesContextValue<
|
|
|
83
83
|
|
|
84
84
|
/**
|
|
85
85
|
* UI component to display File type attachment.
|
|
86
|
-
* Defaults to: [FileAttachment](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
86
|
+
* Defaults to: [FileAttachment](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/FileAttachment.tsx)
|
|
87
87
|
*/
|
|
88
88
|
FileAttachment: React.ComponentType<FileAttachmentProps<StreamChatGenerics>>;
|
|
89
89
|
/**
|
|
90
90
|
* UI component to display group of File type attachments or multiple file attachments (in single message).
|
|
91
|
-
* Defaults to: [FileAttachmentGroup](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
91
|
+
* Defaults to: [FileAttachmentGroup](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/FileAttachmentGroup.tsx)
|
|
92
92
|
*/
|
|
93
93
|
FileAttachmentGroup: React.ComponentType<FileAttachmentGroupProps<StreamChatGenerics>>;
|
|
94
94
|
/**
|
|
95
95
|
* UI component for attachment icon for type 'file' attachment.
|
|
96
|
-
* Defaults to: https://github.com/GetStream/stream-chat-react-native/blob/
|
|
96
|
+
* Defaults to: https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/FileIcon.tsx
|
|
97
97
|
*/
|
|
98
98
|
FileAttachmentIcon: React.ComponentType<FileIconProps>;
|
|
99
99
|
FlatList: typeof FlatList;
|
|
100
100
|
/**
|
|
101
101
|
* UI component to display image attachments
|
|
102
|
-
* Defaults to: [Gallery](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
102
|
+
* Defaults to: [Gallery](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/Gallery.tsx)
|
|
103
103
|
*/
|
|
104
104
|
Gallery: React.ComponentType<GalleryProps<StreamChatGenerics>>;
|
|
105
105
|
/**
|
|
106
106
|
* UI component for Giphy
|
|
107
|
-
* Defaults to: [Giphy](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
107
|
+
* Defaults to: [Giphy](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/Giphy.tsx)
|
|
108
108
|
*/
|
|
109
109
|
Giphy: React.ComponentType<GiphyProps<StreamChatGenerics>>;
|
|
110
110
|
/**
|
|
@@ -117,30 +117,30 @@ export type MessagesContextValue<
|
|
|
117
117
|
initialScrollToFirstUnreadMessage: boolean;
|
|
118
118
|
/**
|
|
119
119
|
* UI component for Message Date Separator Component
|
|
120
|
-
* Defaults to: [InlineDateSeparator](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
120
|
+
* Defaults to: [InlineDateSeparator](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageList/InlineDateSeparator.tsx)
|
|
121
121
|
*/
|
|
122
122
|
InlineDateSeparator: React.ComponentType<InlineDateSeparatorProps>;
|
|
123
123
|
/**
|
|
124
124
|
* UI component for InlineUnreadIndicator
|
|
125
|
-
* Defaults to: [InlineUnreadIndicator](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
125
|
+
* Defaults to: [InlineUnreadIndicator](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageSimple/InlineUnreadIndicator.tsx)
|
|
126
126
|
**/
|
|
127
127
|
InlineUnreadIndicator: React.ComponentType;
|
|
128
128
|
Message: React.ComponentType<MessageProps<StreamChatGenerics>>;
|
|
129
129
|
/**
|
|
130
130
|
* UI component for MessageAvatar
|
|
131
|
-
* Defaults to: [MessageAvatar](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
131
|
+
* Defaults to: [MessageAvatar](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageSimple/MessageAvatar.tsx)
|
|
132
132
|
**/
|
|
133
133
|
MessageAvatar: React.ComponentType<MessageAvatarProps<StreamChatGenerics>>;
|
|
134
134
|
/**
|
|
135
135
|
* UI component for MessageContent
|
|
136
|
-
* Defaults to: [MessageContent](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
136
|
+
* Defaults to: [MessageContent](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageSimple/MessageContent.tsx)
|
|
137
137
|
*/
|
|
138
138
|
MessageContent: React.ComponentType<MessageContentProps<StreamChatGenerics>>;
|
|
139
139
|
/** Order to render the message content */
|
|
140
140
|
messageContentOrder: MessageContentType[];
|
|
141
141
|
/**
|
|
142
142
|
* UI component for MessageDeleted
|
|
143
|
-
* Defaults to: [MessageDeleted](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
143
|
+
* Defaults to: [MessageDeleted](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageSimple/MessageDeleted.tsx)
|
|
144
144
|
*/
|
|
145
145
|
MessageDeleted: React.ComponentType<MessageDeletedProps<StreamChatGenerics>>;
|
|
146
146
|
/**
|
|
@@ -154,23 +154,23 @@ export type MessagesContextValue<
|
|
|
154
154
|
MessagePinnedHeader: React.ComponentType<MessagePinnedHeaderProps<StreamChatGenerics>>;
|
|
155
155
|
/**
|
|
156
156
|
* UI component for MessageReplies
|
|
157
|
-
* Defaults to: [MessageReplies](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
157
|
+
* Defaults to: [MessageReplies](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageSimple/MessageReplies.tsx)
|
|
158
158
|
*/
|
|
159
159
|
|
|
160
160
|
MessageReplies: React.ComponentType<MessageRepliesProps<StreamChatGenerics>>;
|
|
161
161
|
/**
|
|
162
162
|
* UI Component for MessageRepliesAvatars
|
|
163
|
-
* Defaults to: [MessageRepliesAvatars](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
163
|
+
* Defaults to: [MessageRepliesAvatars](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageSimple/MessageRepliesAvatars.tsx)
|
|
164
164
|
*/
|
|
165
165
|
MessageRepliesAvatars: React.ComponentType<MessageRepliesAvatarsProps<StreamChatGenerics>>;
|
|
166
166
|
/**
|
|
167
167
|
* UI component for MessageSimple
|
|
168
|
-
* Defaults to: [MessageSimple](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
168
|
+
* Defaults to: [MessageSimple](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageSimple/MessageSimple.tsx)
|
|
169
169
|
*/
|
|
170
170
|
MessageSimple: React.ComponentType<MessageSimpleProps<StreamChatGenerics>>;
|
|
171
171
|
/**
|
|
172
172
|
* UI component for MessageStatus (delivered/read)
|
|
173
|
-
* Defaults to: [MessageStatus](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
173
|
+
* Defaults to: [MessageStatus](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Message/MessageSimple/MessageStatus.tsx)
|
|
174
174
|
*/
|
|
175
175
|
MessageStatus: React.ComponentType<MessageStatusProps<StreamChatGenerics>>;
|
|
176
176
|
/**
|
|
@@ -184,7 +184,7 @@ export type MessagesContextValue<
|
|
|
184
184
|
OverlayReactionList: React.ComponentType<OverlayReactionListProps<StreamChatGenerics>>;
|
|
185
185
|
/**
|
|
186
186
|
* UI component for ReactionList
|
|
187
|
-
* Defaults to: [ReactionList](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
187
|
+
* Defaults to: [ReactionList](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Reaction/ReactionList.tsx)
|
|
188
188
|
*/
|
|
189
189
|
ReactionList: React.ComponentType<ReactionListProps<StreamChatGenerics>>;
|
|
190
190
|
removeMessage: (message: { id: string; parent_id?: string }) => void;
|
|
@@ -225,7 +225,7 @@ export type MessagesContextValue<
|
|
|
225
225
|
) => void;
|
|
226
226
|
/**
|
|
227
227
|
* Custom UI component to display enriched url preview.
|
|
228
|
-
* Defaults to https://github.com/GetStream/stream-chat-react-native/blob/
|
|
228
|
+
* Defaults to https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/Attachment/Card.tsx
|
|
229
229
|
*/
|
|
230
230
|
UrlPreview: React.ComponentType<CardProps<StreamChatGenerics>>;
|
|
231
231
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Please check the `OverlayContextValue` in [OverlayContext](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
1
|
+
Please check the `OverlayContextValue` in [OverlayContext](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/contexts/overlayContext/OverlayContext.tsx), for consumable values.
|
|
2
2
|
Provider for this context exists in `OverlayProvider` component. And so, any child component of OverlayProvider
|
|
3
3
|
can get access to context as following:
|
|
4
4
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Please check the `PaginatedMessageListContextValue` in [PaginatedMessageListContext](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
1
|
+
Please check the `PaginatedMessageListContextValue` in [PaginatedMessageListContext](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/contexts/paginatedMessageListContext/PaginatedMessageListContext.tsx), for consumable values.
|
|
2
2
|
Provider for this context exists in `Channel` component. And so, any child component of Channel
|
|
3
3
|
can get access to context as following:
|
|
4
4
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
The MessageInput component supports a suggestions feature. Suggestions are displayed using a popup which contains a list of the suggestion items. All functionality is saved in the SuggestionsContext and can be accessed through the [SuggestionsProvider](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
1
|
+
The MessageInput component supports a suggestions feature. Suggestions are displayed using a popup which contains a list of the suggestion items. All functionality is saved in the SuggestionsContext and can be accessed through the [SuggestionsProvider](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/contexts/suggestionsContext/SuggestionsContext.tsx) higher order component. This HOC provides the following functions to its underlying child components:
|
|
2
2
|
|
|
3
3
|
- **closeSuggestions** {function} Closes the suggestions popup above the input box
|
|
4
4
|
- **openSuggestions** {function} Opens the suggestions popup above the input box
|
|
@@ -80,6 +80,7 @@ export type MarkdownStyle = Partial<{
|
|
|
80
80
|
export type Theme = {
|
|
81
81
|
attachmentPicker: {
|
|
82
82
|
bottomSheetContentContainer: ViewStyle;
|
|
83
|
+
durationText: TextStyle;
|
|
83
84
|
errorButtonText: TextStyle;
|
|
84
85
|
errorContainer: ViewStyle;
|
|
85
86
|
errorText: TextStyle;
|
|
@@ -389,7 +390,7 @@ export type Theme = {
|
|
|
389
390
|
eyeIcon: IconProps;
|
|
390
391
|
/**
|
|
391
392
|
* Available options for styling text:
|
|
392
|
-
* https://github.com/andangrd/react-native-markdown-package/blob/
|
|
393
|
+
* https://github.com/andangrd/react-native-markdown-package/blob/main/styles.js
|
|
393
394
|
*/
|
|
394
395
|
markdown: MarkdownStyle;
|
|
395
396
|
messageUser: TextStyle;
|
|
@@ -530,6 +531,7 @@ export type Theme = {
|
|
|
530
531
|
export const defaultTheme: Theme = {
|
|
531
532
|
attachmentPicker: {
|
|
532
533
|
bottomSheetContentContainer: {},
|
|
534
|
+
durationText: {},
|
|
533
535
|
errorButtonText: {},
|
|
534
536
|
errorContainer: {},
|
|
535
537
|
errorText: {},
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Please check the `TypingContextValue` in [TypingContext](https://github.com/GetStream/stream-chat-react-native/blob/
|
|
1
|
+
Please check the `TypingContextValue` in [TypingContext](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/contexts/TypingContext/TypingContext.tsx), for consumable values.
|
|
2
2
|
Provider for this context exists in `Channel` component. And so, any child component of Channel
|
|
3
3
|
can get access to context as following:
|
|
4
4
|
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { IconProps, RootPath, RootSvg } from './utils/base';
|
|
4
|
+
|
|
5
|
+
export const Recorder: React.FC<IconProps> = (props) => (
|
|
6
|
+
<RootSvg {...props}>
|
|
7
|
+
<RootPath
|
|
8
|
+
d='M0 2C0 0.895432 0.89543 0 2 0H16C17.1046 0 18 0.895431 18 2V5.38526L22.4855 3.14251C22.7944 2.95715 23.1792 2.95229 23.4927 3.1298C23.8062 3.30731 24 3.63973 24 4V16C24 16.3603 23.8062 16.6927 23.4927 16.8702C23.1792 17.0477 22.7944 17.0429 22.4855 16.8575L18 14.6147V18C18 19.1046 17.1046 20 16 20H2C0.895431 20 0 19.1046 0 18V2ZM2 2H16V6V6.94546C16 7.67313 16.7524 8.15716 17.4146 7.85545L22 5.76619V14.2338L17.4146 12.1446C16.7524 11.8428 16 12.3269 16 13.0545V14.6147V18H2V2Z'
|
|
9
|
+
{...props}
|
|
10
|
+
/>
|
|
11
|
+
<RootPath
|
|
12
|
+
d='M7 5.5C7 6.32843 6.32843 7 5.5 7C4.67157 7 4 6.32843 4 5.5C4 4.67157 4.67157 4 5.5 4C6.32843 4 7 4.67157 7 5.5Z'
|
|
13
|
+
{...props}
|
|
14
|
+
/>
|
|
15
|
+
</RootSvg>
|
|
16
|
+
);
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { IconProps, RootPath, RootSvg } from './utils/base';
|
|
4
|
+
|
|
5
|
+
export const Video: React.FC<IconProps> = (props) => (
|
|
6
|
+
<RootSvg
|
|
7
|
+
height={props.height || 40}
|
|
8
|
+
viewBox={props.viewBox || '0 0 34 40'}
|
|
9
|
+
width={props.width || 34}
|
|
10
|
+
{...props}
|
|
11
|
+
>
|
|
12
|
+
<RootPath
|
|
13
|
+
d='M 17.7168 33.172 C 18.2348 33.172 18.4238 33.655 18.4238 34.18 C 18.4238 34.642 18.2978 35.195 17.7168 35.195 C 17.1708 35.195 16.9888 34.642 16.9888 34.145 C 16.9888 33.683 17.1708 33.172 17.7168 33.172 Z M 19.5718 31.002 H 18.3818 V 32.7589 H 18.3678 C 18.1228 32.43 17.7798 32.262 17.3318 32.262 C 16.3028 32.262 15.7988 33.158 15.7988 34.103 C 15.7988 35.125 16.2818 36.1049 17.4228 36.1049 C 17.8428 36.1049 18.1928 35.923 18.4238 35.58 H 18.4378 V 36 H 19.5718 V 31.002 Z M 12.7095 34.1872 C 12.7095 33.7252 12.8775 33.1722 13.4305 33.1722 C 13.9835 33.1722 14.1585 33.7252 14.1585 34.1872 C 14.1585 34.6492 13.9835 35.1952 13.4305 35.1952 C 12.8775 35.1952 12.7095 34.6492 12.7095 34.1872 Z M 11.5195 34.1872 C 11.5195 35.2792 12.3035 36.1052 13.4305 36.1052 C 14.5575 36.1052 15.3485 35.2792 15.3485 34.1872 C 15.3485 33.0952 14.5575 32.2622 13.4305 32.2622 C 12.3035 32.2622 11.5195 33.0952 11.5195 34.1872 Z M 21.839 32.3671 H 22.574 V 33.1371 H 21.839 V 34.7891 C 21.839 35.0761 22.007 35.1391 22.266 35.1391 C 22.3142 35.1391 22.364 35.1357 22.4147 35.1323 C 22.4672 35.1287 22.5206 35.1251 22.574 35.1251 V 36.0001 C 22.481 36.0031 22.388 36.0099 22.295 36.0168 C 22.171 36.0259 22.047 36.0351 21.923 36.0351 C 20.908 36.0351 20.649 35.7411 20.649 34.7541 V 33.1371 H 20.047 V 32.3671 H 20.649 V 31.2681 H 21.839 V 32.3671 Z'
|
|
14
|
+
{...props}
|
|
15
|
+
/>
|
|
16
|
+
<RootPath
|
|
17
|
+
d='M 0 28 H 34 V 37 C 34 38.6569 32.6569 40 31 40 H 3 C 1.34315 40 0 38.6569 0 37 V 28 Z'
|
|
18
|
+
pathFill={'rgb(157, 39, 176)'}
|
|
19
|
+
{...props}
|
|
20
|
+
/>
|
|
21
|
+
<RootPath
|
|
22
|
+
d='M 0 3 C 0 1.34315 1.34315 0 3 0 H 23 L 34 11 V 28 H 0 V 3 Z'
|
|
23
|
+
pathFill={'rgb(245, 245, 245)'}
|
|
24
|
+
{...props}
|
|
25
|
+
/>
|
|
26
|
+
<RootPath
|
|
27
|
+
d='M 34 11 L 26 11 C 24.3431 11 23 9.65685 23 8 V 0 L 34 11 Z'
|
|
28
|
+
pathFill={'rgb(219, 219, 219)'}
|
|
29
|
+
{...props}
|
|
30
|
+
/>
|
|
31
|
+
<RootPath
|
|
32
|
+
d='M 9 17 H 25 V 24 H 9 V 17 Z M 27 14 C 27 12.8954 26.1046 12 25 12 H 22 L 24 15 H 21 L 19 12 H 17 L 19 15 H 16 L 14 12 H 12 L 14 15 H 11 L 9 12 C 7.9 12 7.01 12.9 7.01 14 L 7 24 C 7 25.1 7.9 26 9 26 H 25 C 26.1 26 27 25.1 27 24 V 14 Z'
|
|
33
|
+
pathFill={'rgb(157, 39, 176)'}
|
|
34
|
+
{...props}
|
|
35
|
+
/>
|
|
36
|
+
</RootSvg>
|
|
37
|
+
);
|
package/src/icons/index.ts
CHANGED
|
@@ -69,11 +69,13 @@ export * from './ThumbsUpReaction';
|
|
|
69
69
|
export * from './Time';
|
|
70
70
|
export * from './TXT';
|
|
71
71
|
export * from './Unknown';
|
|
72
|
+
export * from './Recorder';
|
|
72
73
|
export * from './Unpin';
|
|
73
74
|
export * from './User';
|
|
74
75
|
export * from './UserAdd';
|
|
75
76
|
export * from './UserDelete';
|
|
76
77
|
export * from './UserMinus';
|
|
78
|
+
export * from './Video';
|
|
77
79
|
export * from './Warning';
|
|
78
80
|
export * from './WutReaction';
|
|
79
81
|
export * from './XLS';
|
package/src/native.ts
CHANGED
|
@@ -2,6 +2,8 @@ import { FlatList as DefaultFlatList } from 'react-native';
|
|
|
2
2
|
|
|
3
3
|
import type { NetInfoSubscription } from '@react-native-community/netinfo';
|
|
4
4
|
|
|
5
|
+
import type { Asset, File } from './types/types';
|
|
6
|
+
|
|
5
7
|
const fail = () => {
|
|
6
8
|
throw Error(
|
|
7
9
|
'Native handler was not registered, you should import stream-chat-expo or stream-chat-react-native',
|
|
@@ -24,16 +26,9 @@ export let compressImage: CompressImage = fail;
|
|
|
24
26
|
type DeleteFile = ({ uri }: { uri: string }) => Promise<boolean> | never;
|
|
25
27
|
export let deleteFile: DeleteFile = fail;
|
|
26
28
|
|
|
27
|
-
type GetLocalAssetUri = (uriOrAssetId: string) =>
|
|
29
|
+
type GetLocalAssetUri = (uriOrAssetId: string) => never;
|
|
28
30
|
export let getLocalAssetUri: GetLocalAssetUri = fail;
|
|
29
31
|
|
|
30
|
-
export type Asset = {
|
|
31
|
-
height: number;
|
|
32
|
-
source: 'camera' | 'picker';
|
|
33
|
-
uri: string;
|
|
34
|
-
width: number;
|
|
35
|
-
id?: string;
|
|
36
|
-
};
|
|
37
32
|
type GetPhotos = ({ after, first }: { first: number; after?: string }) =>
|
|
38
33
|
| Promise<{
|
|
39
34
|
assets: Array<Omit<Asset, 'source'> & { source: 'picker' }>;
|
|
@@ -58,12 +53,7 @@ export let NetInfo: NetInfo = {
|
|
|
58
53
|
type PickDocument = ({ maxNumberOfFiles }: { maxNumberOfFiles?: number }) =>
|
|
59
54
|
| Promise<{
|
|
60
55
|
cancelled: boolean;
|
|
61
|
-
docs?:
|
|
62
|
-
name: string;
|
|
63
|
-
size?: number | string;
|
|
64
|
-
type?: string;
|
|
65
|
-
uri?: string;
|
|
66
|
-
}[];
|
|
56
|
+
docs?: File[];
|
|
67
57
|
}>
|
|
68
58
|
| never;
|
|
69
59
|
export let pickDocument: PickDocument = fail;
|
package/src/types/types.ts
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
import type { ExtendableGenerics, LiteralStringForUnion } from 'stream-chat';
|
|
2
2
|
|
|
3
|
+
export type Asset = {
|
|
4
|
+
duration: number | null;
|
|
5
|
+
filename: string;
|
|
6
|
+
fileSize: string;
|
|
7
|
+
height: number;
|
|
8
|
+
playableDuration: number | null;
|
|
9
|
+
source: 'camera' | 'picker';
|
|
10
|
+
type: string;
|
|
11
|
+
uri: string;
|
|
12
|
+
width: number;
|
|
13
|
+
id?: string;
|
|
14
|
+
size?: number | string;
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export type File = {
|
|
18
|
+
name: string;
|
|
19
|
+
duration?: string | null;
|
|
20
|
+
size?: number | string;
|
|
21
|
+
type?: string;
|
|
22
|
+
uri?: string;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export type DefaultAttachmentType = UnknownType & {
|
|
26
|
+
file_size?: number | string;
|
|
27
|
+
mime_type?: string;
|
|
28
|
+
};
|
|
29
|
+
|
|
3
30
|
interface DefaultUserType extends UnknownType {
|
|
4
31
|
image?: string;
|
|
5
32
|
}
|
package/src/version.json
CHANGED