stream-chat-react-native-core 5.22.2-beta.8 → 5.23.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js +1 -1
  2. package/lib/commonjs/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  3. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +31 -15
  4. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  5. package/lib/commonjs/i18n/en.json +1 -1
  6. package/lib/commonjs/i18n/fr.json +49 -49
  7. package/lib/commonjs/i18n/hi.json +51 -51
  8. package/lib/commonjs/i18n/it.json +51 -51
  9. package/lib/commonjs/i18n/nl.json +51 -51
  10. package/lib/commonjs/i18n/ru.json +49 -49
  11. package/lib/commonjs/i18n/tr.json +49 -49
  12. package/lib/commonjs/version.json +1 -1
  13. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js +1 -1
  14. package/lib/module/contexts/channelsStateContext/ChannelsStateContext.js.map +1 -1
  15. package/lib/module/contexts/messageInputContext/MessageInputContext.js +31 -15
  16. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  17. package/lib/module/i18n/en.json +1 -1
  18. package/lib/module/i18n/fr.json +49 -49
  19. package/lib/module/i18n/hi.json +51 -51
  20. package/lib/module/i18n/it.json +51 -51
  21. package/lib/module/i18n/nl.json +51 -51
  22. package/lib/module/i18n/ru.json +49 -49
  23. package/lib/module/i18n/tr.json +49 -49
  24. package/lib/module/version.json +1 -1
  25. package/lib/typescript/i18n/en.json +1 -1
  26. package/lib/typescript/i18n/fr.json +49 -49
  27. package/lib/typescript/i18n/hi.json +51 -51
  28. package/lib/typescript/i18n/it.json +51 -51
  29. package/lib/typescript/i18n/nl.json +51 -51
  30. package/lib/typescript/i18n/ru.json +49 -49
  31. package/lib/typescript/i18n/tr.json +49 -49
  32. package/package.json +1 -1
  33. package/src/contexts/__tests__/index.test.tsx +1 -1
  34. package/src/contexts/channelsStateContext/ChannelsStateContext.tsx +1 -1
  35. package/src/contexts/messageInputContext/MessageInputContext.tsx +7 -1
  36. package/src/i18n/en.json +1 -1
  37. package/src/i18n/fr.json +49 -49
  38. package/src/i18n/hi.json +51 -51
  39. package/src/i18n/it.json +51 -51
  40. package/src/i18n/nl.json +51 -51
  41. package/src/i18n/ru.json +49 -49
  42. package/src/i18n/tr.json +49 -49
  43. package/src/version.json +1 -1
@@ -1,76 +1,76 @@
1
1
  {
2
- "1 Reply": "1 Ответ",
3
- "1 Thread Reply": "1 тема Ответить",
4
- "Allow access to your Gallery": "Разрешить доступ к вашей галерее",
5
- "Allow camera access in device settings": "Разрешите доступ к камере в настройках устройства.",
2
+ "1 Reply": "",
3
+ "1 Thread Reply": "",
4
+ "Allow access to your Gallery": "",
5
+ "Allow camera access in device settings": "",
6
6
  "Also send to channel": "Также отправить на канал",
7
- "Are you sure you want to permanently delete this message?": "",
8
- "Block User": "",
9
- "Cancel": "",
10
- "Cannot Flag Message": "",
11
- "Copy Message": "",
12
- "Delete": "",
13
- "Delete Message": "",
14
- "Device camera is used to take photos or videos.": "Камера устройства используется для съемки фотографий или видео.",
15
- "Do you want to send a copy of this message to a moderator for further investigation?": "",
16
- "Edit Message": "",
17
- "Editing Message": "Редактирование сообщения",
7
+ "Are you sure you want to permanently delete this message?": "Вы действительно хотите удалить это сообщение без возможности восстановления?",
8
+ "Block User": "Заблокировать пользователя",
9
+ "Cancel": "Отмена",
10
+ "Cannot Flag Message": "Невозможно пожаловаться на сообщение",
11
+ "Copy Message": "Копировать сообщение",
12
+ "Delete": "удалять",
13
+ "Delete Message": "Удалить сообщение",
14
+ "Device camera is used to take photos or videos.": "",
15
+ "Do you want to send a copy of this message to a moderator for further investigation?": "Вы хотите отправить копию этого сообщения модератору для дальнейшего изучения?",
16
+ "Edit Message": "Редактировать сообщение",
17
+ "Editing Message": "",
18
18
  "Emoji matching": "Соответствие эмодзи",
19
19
  "Empty message...": "",
20
20
  "Error loading": "",
21
21
  "Error loading channel list...": "",
22
22
  "Error loading messages for this channel...": "",
23
23
  "Error while loading, please reload/refresh": "",
24
- "File type not supported": "",
25
- "Flag": "",
26
- "Flag Message": "",
27
- "Flag action failed either due to a network issue or the message is already flagged": "",
24
+ "File type not supported": "Тип файла не поддерживается",
25
+ "Flag": "Пометить",
26
+ "Flag Message": "Пометить сообщение",
27
+ "Flag action failed either due to a network issue or the message is already flagged": "Не удалось отправить жалобу. Возможные причины: проблема с подключением к интернету или ваша жалоба уже была принята.",
28
28
  "How about sending your first message to a friend?": "",
29
29
  "Instant Commands": "Мгновенные Команды",
30
30
  "Let's start chatting!": "",
31
- "Links are disabled": "Ссылки отключены",
31
+ "Links are disabled": "",
32
32
  "Loading channels...": "Загружаю каналы...",
33
33
  "Loading messages...": "Загружаю сообщения...",
34
34
  "Loading...": "Загружаю...",
35
- "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "Достигнут предел максимального размера файла для загрузки. Загрузите файл размером менее {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} МБ.",
36
- "Message Reactions": "",
35
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
36
+ "Message Reactions": "Сообщения Реакции",
37
37
  "Message deleted": "",
38
- "Message flagged": "",
39
- "Mute User": "",
38
+ "Message flagged": "Сообщение отмечено",
39
+ "Mute User": "Отключить пользователя",
40
40
  "Not supported": "",
41
41
  "Nothing yet...": "",
42
- "Ok": "",
43
- "Only visible to you": "",
44
- "Open Settings": "Открыть настройки",
45
- "Photo": "",
46
- "Photos and Videos": "Фото и видео",
47
- "Pin to Conversation": "",
48
- "Pinned by": "",
49
- "Please enable access to your photos and videos so you can share them.": "Разрешите доступ к своим фотографиям и видео, чтобы вы могли ими поделиться.",
42
+ "Ok": "",
43
+ "Only visible to you": "Видно только вам",
44
+ "Open Settings": "",
45
+ "Photo": "Фото",
46
+ "Photos and Videos": "",
47
+ "Pin to Conversation": "Закрепить к беседе",
48
+ "Pinned by": "Закреплено пользователем",
49
+ "Please enable access to your photos and videos so you can share them.": "",
50
50
  "Please select a channel first": "",
51
51
  "Reconnecting...": "",
52
- "Reply": "",
52
+ "Reply": "Ответить",
53
53
  "Reply to Message": "",
54
- "Resend": "",
55
- "Search GIFs": "",
56
- "Select More Photos": "Выбрать больше фотографий",
57
- "Send a message": "",
58
- "Sending links is not allowed in this conversation": "Отправка ссылок недоступна в этом чате",
59
- "Slow mode ON": "",
60
- "The message has been reported to a moderator.": "",
61
- "Thread Reply": "",
62
- "Unblock User": "",
63
- "Unknown User": "Неизвестный пользователь",
64
- "Unmute User": "",
65
- "Unpin from Conversation": "",
54
+ "Resend": "Отправить",
55
+ "Search GIFs": "Поиск GIF",
56
+ "Select More Photos": "",
57
+ "Send a message": "Отправить сообщение",
58
+ "Sending links is not allowed in this conversation": "",
59
+ "Slow mode ON": "Медленный режим включен",
60
+ "The message has been reported to a moderator.": "Сообщение отправлено модератору.",
61
+ "Thread Reply": "Тема Ответить",
62
+ "Unblock User": "Разблокировать пользователя",
63
+ "Unknown User": "",
64
+ "Unmute User": "Включить микрофон",
65
+ "Unpin from Conversation": "Открепить от беседы",
66
66
  "Unread Messages": "",
67
- "Video": "",
67
+ "Video": "видео",
68
68
  "You": "",
69
69
  "You can't send messages in this channel": "Вы не можете отправлять сообщения в этот канал",
70
70
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "{{ firstUser }} и еще {{ nonSelfUserLength }} пишут",
71
- "{{ index }} of {{ photoLength }}": "{{ index }} из {{ photoLength }}",
72
- "{{ replyCount }} Replies": "{{ replyCount }} Ответов",
73
- "{{ replyCount }} Thread Replies": "{{replyCount}} Ответы в темах",
71
+ "{{ index }} of {{ photoLength }}": "",
72
+ "{{ replyCount }} Replies": "",
73
+ "{{ replyCount }} Thread Replies": "",
74
74
  "{{ user }} is typing": "{{ user }} пишет",
75
75
  "🏙 Attachment...": ""
76
76
  }
@@ -1,76 +1,76 @@
1
1
  {
2
- "1 Reply": "1 Cevap",
3
- "1 Thread Reply": "1 Konu Yanıtı",
4
- "Allow access to your Gallery": "Galerinize erişime izin verin",
5
- "Allow camera access in device settings": "Cihaz ayarlarında kamera erişimine izin ver",
2
+ "1 Reply": "",
3
+ "1 Thread Reply": "",
4
+ "Allow access to your Gallery": "",
5
+ "Allow camera access in device settings": "",
6
6
  "Also send to channel": "Kanala da gönder",
7
- "Are you sure you want to permanently delete this message?": "",
8
- "Block User": "",
9
- "Cancel": "",
10
- "Cannot Flag Message": "",
11
- "Copy Message": "",
12
- "Delete": "",
13
- "Delete Message": "",
14
- "Device camera is used to take photos or videos.": "Cihaz kamerası fotoğraf veya video çekmek için kullanılır.",
15
- "Do you want to send a copy of this message to a moderator for further investigation?": "",
16
- "Edit Message": "",
17
- "Editing Message": "Mesaj Düzenleniyor",
7
+ "Are you sure you want to permanently delete this message?": "Bu mesajı kalıcı olarak silmek istediğinizden emin misiniz?",
8
+ "Block User": "Kullanıcıyı engelle",
9
+ "Cancel": "İptal",
10
+ "Cannot Flag Message": "Raporlama Başarısız",
11
+ "Copy Message": "Mesajı Kopyala",
12
+ "Delete": "Sil",
13
+ "Delete Message": "Mesajı Sil",
14
+ "Device camera is used to take photos or videos.": "",
15
+ "Do you want to send a copy of this message to a moderator for further investigation?": "Detaylı inceleme için bu mesajın kopyasını moderatöre göndermek istiyor musunuz?",
16
+ "Edit Message": "Mesajı Düzenle",
17
+ "Editing Message": "",
18
18
  "Emoji matching": "Emoji eşleştirme",
19
19
  "Empty message...": "",
20
20
  "Error loading": "",
21
21
  "Error loading channel list...": "",
22
22
  "Error loading messages for this channel...": "",
23
23
  "Error while loading, please reload/refresh": "",
24
- "File type not supported": "",
25
- "Flag": "",
26
- "Flag Message": "",
27
- "Flag action failed either due to a network issue or the message is already flagged": "",
24
+ "File type not supported": "Dosya türü desteklenmiyor",
25
+ "Flag": "Raporla",
26
+ "Flag Message": "Mesajı Raporla",
27
+ "Flag action failed either due to a network issue or the message is already flagged": "Mesajın daha önce raporlanmış olması veya bir ağ bağlantısı sorunu nedeniyle raporlama işlemi başarısız oldu.",
28
28
  "How about sending your first message to a friend?": "",
29
29
  "Instant Commands": "Anlık Komutlar",
30
30
  "Let's start chatting!": "",
31
- "Links are disabled": "Bağlantılar devre dışı",
31
+ "Links are disabled": "",
32
32
  "Loading channels...": "Kanallar yükleniyor...",
33
33
  "Loading messages...": "Mesajlar yükleniyor...",
34
34
  "Loading...": "Yükleniyor...",
35
- "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "Maksimum dosya boyutu yükleme sınırına ulaşıldı. Lütfen {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB'ın altında bir dosya yükleyin.",
36
- "Message Reactions": "",
35
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
36
+ "Message Reactions": "Mesaj Tepkileri",
37
37
  "Message deleted": "",
38
- "Message flagged": "",
39
- "Mute User": "",
38
+ "Message flagged": "Mesaj işaretlendi",
39
+ "Mute User": "Kullanıcıyı sessize al",
40
40
  "Not supported": "",
41
41
  "Nothing yet...": "",
42
- "Ok": "",
43
- "Only visible to you": "",
44
- "Open Settings": "Ayarları aç",
45
- "Photo": "",
46
- "Photos and Videos": "Fotoğraflar ve Videolar",
47
- "Pin to Conversation": "",
48
- "Pinned by": "",
49
- "Please enable access to your photos and videos so you can share them.": "Paylaşım yapabilmek için lutfen fotoğraflarınıza ve videolarınıza erişimi etkinleştirin.",
42
+ "Ok": "Tamam",
43
+ "Only visible to you": "Sadece siz görebilirsiniz",
44
+ "Open Settings": "",
45
+ "Photo": "Fotoğraf",
46
+ "Photos and Videos": "",
47
+ "Pin to Conversation": "Konuşmaya sabitle",
48
+ "Pinned by": "Tarafından sabitlendi",
49
+ "Please enable access to your photos and videos so you can share them.": "",
50
50
  "Please select a channel first": "",
51
51
  "Reconnecting...": "",
52
- "Reply": "",
52
+ "Reply": "Yanıtla",
53
53
  "Reply to Message": "",
54
- "Resend": "",
55
- "Search GIFs": "",
56
- "Select More Photos": "Daha Fazla Fotoğraf Seçin",
57
- "Send a message": "",
58
- "Sending links is not allowed in this conversation": "Bu konuşmada bağlantı göndermek desteklenmiyor",
59
- "Slow mode ON": "",
60
- "The message has been reported to a moderator.": "",
61
- "Thread Reply": "",
62
- "Unblock User": "",
63
- "Unknown User": "Bilinmeyen kullanıcı",
64
- "Unmute User": "",
65
- "Unpin from Conversation": "",
54
+ "Resend": "Yeniden gönder",
55
+ "Search GIFs": "GIF Ara",
56
+ "Select More Photos": "",
57
+ "Send a message": "Mesaj gönder",
58
+ "Sending links is not allowed in this conversation": "",
59
+ "Slow mode ON": "Yavaş Mod Açık",
60
+ "The message has been reported to a moderator.": "Mesaj moderatöre bildirildi.",
61
+ "Thread Reply": "Konu Yanıtı",
62
+ "Unblock User": "Kullanıcının engelini kaldır",
63
+ "Unknown User": "",
64
+ "Unmute User": "Kullanıcının sesini aç",
65
+ "Unpin from Conversation": "Sabitlemeyi kaldır",
66
66
  "Unread Messages": "",
67
- "Video": "",
67
+ "Video": "Video",
68
68
  "You": "",
69
69
  "You can't send messages in this channel": "Bu konuşmaya mesaj gönderemezsiniz",
70
70
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "{{ firstUser }} ve {{ nonSelfUserLength }} kişi daha yazıyor",
71
- "{{ index }} of {{ photoLength }}": "{{ index }} / {{ photoLength }}",
72
- "{{ replyCount }} Replies": "{{ replyCount }} Cevap",
73
- "{{ replyCount }} Thread Replies": "{{responseCount}} Konu Cevapı",
71
+ "{{ index }} of {{ photoLength }}": "",
72
+ "{{ replyCount }} Replies": "",
73
+ "{{ replyCount }} Thread Replies": "",
74
74
  "{{ user }} is typing": "{{ user }} yazıyor",
75
75
  "🏙 Attachment...": ""
76
76
  }
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "5.22.2-beta.8"
2
+ "version": "5.23.0-beta.1"
3
3
  }
@@ -104,7 +104,7 @@ exports.ChannelsStateProvider = ChannelsStateProvider;
104
104
  var useChannelsStateContext = function useChannelsStateContext() {
105
105
  var contextValue = (0, _react.useContext)(ChannelsStateContext);
106
106
  if (contextValue === _defaultBaseContextValue.DEFAULT_BASE_CONTEXT_VALUE && !(0, _isTestEnvironment.isTestEnvironment)()) {
107
- throw new Error("The useChannelStateContext hook was called outside the ChannelStateContext Provider. Make sure you have configured OverlayProvider component correctly - https://getstream.io/chat/docs/sdk/reactnative/basics/hello_stream_chat/#overlay-provider");
107
+ throw new Error("The useChannelsStateContext hook was called outside the ChannelStateContext Provider. Make sure you have configured OverlayProvider component correctly - https://getstream.io/chat/docs/sdk/reactnative/basics/hello_stream_chat/#overlay-provider");
108
108
  }
109
109
  return contextValue;
110
110
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_ActiveChannelsRefContext","_defaultBaseContextValue","_getDisplayName","_isTestEnvironment","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","reducer","state","action","type","_extends6","_defineProperty2","payload","cid","value","_state$action$payload","_state$action$payload2","currentCount","subscriberCount","_state$action$payload3","_state$action$payload4","stateShallowCopy","Error","ChannelsStateContext","React","createContext","DEFAULT_BASE_CONTEXT_VALUE","ChannelsStateProvider","_ref","children","_useReducer","useReducer","_useReducer2","_slicedToArray2","dispatch","setState","useCallback","increaseSubscriberCount","decreaseSubscriberCount","useMemo","activeChannelsRef","useRef","keys","useEffect","current","createElement","Provider","__self","__source","fileName","lineNumber","columnNumber","ActiveChannelsProvider","exports","useChannelsStateContext","contextValue","useContext","isTestEnvironment","withChannelsStateContext","Component","WithChannelsStateContextComponent","props","channelsStateContext","displayName","getDisplayName"],"sources":["ChannelsStateContext.tsx"],"sourcesContent":["import React, {\n ReactNode,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from 'react';\n\nimport type { DefaultStreamChatGenerics, UnknownType } from '../../types/types';\nimport { ActiveChannelsProvider } from '../activeChannelsRefContext/ActiveChannelsRefContext';\n\nimport type { ChannelContextValue } from '../channelContext/ChannelContext';\nimport type { PaginatedMessageListContextValue } from '../paginatedMessageListContext/PaginatedMessageListContext';\nimport type { ThreadContextValue } from '../threadContext/ThreadContext';\nimport type { TypingContextValue } from '../typingContext/TypingContext';\nimport { DEFAULT_BASE_CONTEXT_VALUE } from '../utils/defaultBaseContextValue';\n\nimport { getDisplayName } from '../utils/getDisplayName';\nimport { isTestEnvironment } from '../utils/isTestEnvironment';\n\nexport type ChannelState<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n members: ChannelContextValue<StreamChatGenerics>['members'];\n messages: PaginatedMessageListContextValue<StreamChatGenerics>['messages'];\n read: ChannelContextValue<StreamChatGenerics>['read'];\n subscriberCount: number;\n threadMessages: ThreadContextValue<StreamChatGenerics>['threadMessages'];\n typing: TypingContextValue<StreamChatGenerics>['typing'];\n watcherCount: ChannelContextValue<StreamChatGenerics>['watcherCount'];\n watchers: ChannelContextValue<StreamChatGenerics>['watchers'];\n};\n\ntype ChannelsState<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n [cid: string]: ChannelState<StreamChatGenerics>;\n};\n\nexport type Keys = keyof ChannelState;\n\nexport type Payload<\n Key extends Keys = Keys,\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n cid: string;\n key: Key;\n value: ChannelState<StreamChatGenerics>[Key];\n};\n\ntype SetStateAction<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n payload: Payload<Keys, StreamChatGenerics>;\n type: 'SET_STATE';\n};\n\ntype IncreaseSubscriberCountAction = {\n payload: { cid: string };\n type: 'INCREASE_SUBSCRIBER_COUNT';\n};\ntype DecreaseSubscriberCountAction = {\n payload: { cid: string };\n type: 'DECREASE_SUBSCRIBER_COUNT';\n};\n\ntype Action<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> =\n | SetStateAction<StreamChatGenerics>\n | IncreaseSubscriberCountAction\n | DecreaseSubscriberCountAction;\n\nexport type ChannelsStateContextValue<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n decreaseSubscriberCount: (value: { cid: string }) => void;\n increaseSubscriberCount: (value: { cid: string }) => void;\n setState: (value: Payload<Keys, StreamChatGenerics>) => void;\n state: ChannelsState<StreamChatGenerics>;\n};\n\ntype Reducer<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = (\n state: ChannelsState<StreamChatGenerics>,\n action: Action<StreamChatGenerics>,\n) => ChannelsState<StreamChatGenerics>;\n\nfunction reducer(state: ChannelsState, action: Action) {\n switch (action.type) {\n case 'SET_STATE':\n return {\n ...state,\n [action.payload.cid]: {\n ...(state[action.payload.cid] || {}),\n [action.payload.key]: action.payload.value,\n },\n };\n\n case 'INCREASE_SUBSCRIBER_COUNT': {\n const currentCount = state[action.payload.cid]?.subscriberCount ?? 0;\n return {\n ...state,\n [action.payload.cid]: {\n ...(state[action.payload.cid] || {}),\n subscriberCount: currentCount + 1,\n },\n };\n }\n\n case 'DECREASE_SUBSCRIBER_COUNT': {\n const currentCount = state[action.payload.cid]?.subscriberCount ?? 0;\n\n // If there last subscribed Channel component unsubscribes, we clear the channel state.\n if (currentCount <= 1) {\n const stateShallowCopy = {\n ...state,\n };\n\n delete stateShallowCopy[action.payload.cid];\n\n return stateShallowCopy;\n }\n\n return {\n ...state,\n [action.payload.cid]: {\n ...(state[action.payload.cid] || {}),\n subscriberCount: currentCount - 1,\n },\n };\n }\n default:\n throw new Error();\n }\n}\n\nconst ChannelsStateContext = React.createContext(\n DEFAULT_BASE_CONTEXT_VALUE as ChannelsStateContextValue,\n);\n\nexport const ChannelsStateProvider = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n children,\n}: {\n children: ReactNode;\n}) => {\n const [state, dispatch] = useReducer(reducer as unknown as Reducer<StreamChatGenerics>, {});\n\n const setState = useCallback((payload: Payload<Keys, StreamChatGenerics>) => {\n dispatch({ payload, type: 'SET_STATE' });\n }, []);\n\n const increaseSubscriberCount = useCallback((payload: { cid: string }) => {\n dispatch({ payload, type: 'INCREASE_SUBSCRIBER_COUNT' });\n }, []);\n\n const decreaseSubscriberCount = useCallback((payload: { cid: string }) => {\n dispatch({ payload, type: 'DECREASE_SUBSCRIBER_COUNT' });\n }, []);\n\n const value = useMemo(\n () => ({\n decreaseSubscriberCount,\n increaseSubscriberCount,\n setState,\n state,\n }),\n [state],\n );\n\n const activeChannelsRef = useRef(Object.keys(state));\n\n useEffect(() => {\n activeChannelsRef.current = Object.keys(state);\n }, [state]);\n\n return (\n <ChannelsStateContext.Provider value={value as unknown as ChannelsStateContextValue}>\n <ActiveChannelsProvider value={activeChannelsRef}>{children}</ActiveChannelsProvider>\n </ChannelsStateContext.Provider>\n );\n};\n\nexport const useChannelsStateContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>() => {\n const contextValue = useContext(\n ChannelsStateContext,\n ) as unknown as ChannelsStateContextValue<StreamChatGenerics>;\n\n if (contextValue === DEFAULT_BASE_CONTEXT_VALUE && !isTestEnvironment()) {\n throw new Error(\n `The useChannelStateContext hook was called outside the ChannelStateContext Provider. Make sure you have configured OverlayProvider component correctly - https://getstream.io/chat/docs/sdk/reactnative/basics/hello_stream_chat/#overlay-provider`,\n );\n }\n\n return contextValue;\n};\n\nexport const withChannelsStateContext = <\n P extends UnknownType,\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n Component: React.ComponentType<P>,\n): React.FC<Omit<P, keyof ChannelsStateContextValue<StreamChatGenerics>>> => {\n const WithChannelsStateContextComponent = (\n props: Omit<P, keyof ChannelsStateContextValue<StreamChatGenerics>>,\n ) => {\n const channelsStateContext = useChannelsStateContext<StreamChatGenerics>();\n\n return <Component {...(props as P)} {...channelsStateContext} />;\n };\n WithChannelsStateContextComponent.displayName = `WithChannelsStateContext${getDisplayName(\n Component,\n )}`;\n return WithChannelsStateContextComponent;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_ActiveChannelsRefContext","_defaultBaseContextValue","_getDisplayName","_isTestEnvironment","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","reducer","state","action","type","_extends6","_defineProperty2","payload","cid","value","_state$action$payload","_state$action$payload2","currentCount","subscriberCount","_state$action$payload3","_state$action$payload4","stateShallowCopy","Error","ChannelsStateContext","React","createContext","DEFAULT_BASE_CONTEXT_VALUE","ChannelsStateProvider","_ref","children","_useReducer","useReducer","_useReducer2","_slicedToArray2","dispatch","setState","useCallback","increaseSubscriberCount","decreaseSubscriberCount","useMemo","activeChannelsRef","useRef","keys","useEffect","current","createElement","Provider","__self","__source","fileName","lineNumber","columnNumber","ActiveChannelsProvider","exports","useChannelsStateContext","contextValue","useContext","isTestEnvironment","withChannelsStateContext","Component","WithChannelsStateContextComponent","props","channelsStateContext","displayName","getDisplayName"],"sources":["ChannelsStateContext.tsx"],"sourcesContent":["import React, {\n ReactNode,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from 'react';\n\nimport type { DefaultStreamChatGenerics, UnknownType } from '../../types/types';\nimport { ActiveChannelsProvider } from '../activeChannelsRefContext/ActiveChannelsRefContext';\n\nimport type { ChannelContextValue } from '../channelContext/ChannelContext';\nimport type { PaginatedMessageListContextValue } from '../paginatedMessageListContext/PaginatedMessageListContext';\nimport type { ThreadContextValue } from '../threadContext/ThreadContext';\nimport type { TypingContextValue } from '../typingContext/TypingContext';\nimport { DEFAULT_BASE_CONTEXT_VALUE } from '../utils/defaultBaseContextValue';\n\nimport { getDisplayName } from '../utils/getDisplayName';\nimport { isTestEnvironment } from '../utils/isTestEnvironment';\n\nexport type ChannelState<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n members: ChannelContextValue<StreamChatGenerics>['members'];\n messages: PaginatedMessageListContextValue<StreamChatGenerics>['messages'];\n read: ChannelContextValue<StreamChatGenerics>['read'];\n subscriberCount: number;\n threadMessages: ThreadContextValue<StreamChatGenerics>['threadMessages'];\n typing: TypingContextValue<StreamChatGenerics>['typing'];\n watcherCount: ChannelContextValue<StreamChatGenerics>['watcherCount'];\n watchers: ChannelContextValue<StreamChatGenerics>['watchers'];\n};\n\ntype ChannelsState<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n [cid: string]: ChannelState<StreamChatGenerics>;\n};\n\nexport type Keys = keyof ChannelState;\n\nexport type Payload<\n Key extends Keys = Keys,\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n cid: string;\n key: Key;\n value: ChannelState<StreamChatGenerics>[Key];\n};\n\ntype SetStateAction<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n payload: Payload<Keys, StreamChatGenerics>;\n type: 'SET_STATE';\n};\n\ntype IncreaseSubscriberCountAction = {\n payload: { cid: string };\n type: 'INCREASE_SUBSCRIBER_COUNT';\n};\ntype DecreaseSubscriberCountAction = {\n payload: { cid: string };\n type: 'DECREASE_SUBSCRIBER_COUNT';\n};\n\ntype Action<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> =\n | SetStateAction<StreamChatGenerics>\n | IncreaseSubscriberCountAction\n | DecreaseSubscriberCountAction;\n\nexport type ChannelsStateContextValue<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = {\n decreaseSubscriberCount: (value: { cid: string }) => void;\n increaseSubscriberCount: (value: { cid: string }) => void;\n setState: (value: Payload<Keys, StreamChatGenerics>) => void;\n state: ChannelsState<StreamChatGenerics>;\n};\n\ntype Reducer<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = (\n state: ChannelsState<StreamChatGenerics>,\n action: Action<StreamChatGenerics>,\n) => ChannelsState<StreamChatGenerics>;\n\nfunction reducer(state: ChannelsState, action: Action) {\n switch (action.type) {\n case 'SET_STATE':\n return {\n ...state,\n [action.payload.cid]: {\n ...(state[action.payload.cid] || {}),\n [action.payload.key]: action.payload.value,\n },\n };\n\n case 'INCREASE_SUBSCRIBER_COUNT': {\n const currentCount = state[action.payload.cid]?.subscriberCount ?? 0;\n return {\n ...state,\n [action.payload.cid]: {\n ...(state[action.payload.cid] || {}),\n subscriberCount: currentCount + 1,\n },\n };\n }\n\n case 'DECREASE_SUBSCRIBER_COUNT': {\n const currentCount = state[action.payload.cid]?.subscriberCount ?? 0;\n\n // If there last subscribed Channel component unsubscribes, we clear the channel state.\n if (currentCount <= 1) {\n const stateShallowCopy = {\n ...state,\n };\n\n delete stateShallowCopy[action.payload.cid];\n\n return stateShallowCopy;\n }\n\n return {\n ...state,\n [action.payload.cid]: {\n ...(state[action.payload.cid] || {}),\n subscriberCount: currentCount - 1,\n },\n };\n }\n default:\n throw new Error();\n }\n}\n\nconst ChannelsStateContext = React.createContext(\n DEFAULT_BASE_CONTEXT_VALUE as ChannelsStateContextValue,\n);\n\nexport const ChannelsStateProvider = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>({\n children,\n}: {\n children: ReactNode;\n}) => {\n const [state, dispatch] = useReducer(reducer as unknown as Reducer<StreamChatGenerics>, {});\n\n const setState = useCallback((payload: Payload<Keys, StreamChatGenerics>) => {\n dispatch({ payload, type: 'SET_STATE' });\n }, []);\n\n const increaseSubscriberCount = useCallback((payload: { cid: string }) => {\n dispatch({ payload, type: 'INCREASE_SUBSCRIBER_COUNT' });\n }, []);\n\n const decreaseSubscriberCount = useCallback((payload: { cid: string }) => {\n dispatch({ payload, type: 'DECREASE_SUBSCRIBER_COUNT' });\n }, []);\n\n const value = useMemo(\n () => ({\n decreaseSubscriberCount,\n increaseSubscriberCount,\n setState,\n state,\n }),\n [state],\n );\n\n const activeChannelsRef = useRef(Object.keys(state));\n\n useEffect(() => {\n activeChannelsRef.current = Object.keys(state);\n }, [state]);\n\n return (\n <ChannelsStateContext.Provider value={value as unknown as ChannelsStateContextValue}>\n <ActiveChannelsProvider value={activeChannelsRef}>{children}</ActiveChannelsProvider>\n </ChannelsStateContext.Provider>\n );\n};\n\nexport const useChannelsStateContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>() => {\n const contextValue = useContext(\n ChannelsStateContext,\n ) as unknown as ChannelsStateContextValue<StreamChatGenerics>;\n\n if (contextValue === DEFAULT_BASE_CONTEXT_VALUE && !isTestEnvironment()) {\n throw new Error(\n `The useChannelsStateContext hook was called outside the ChannelStateContext Provider. Make sure you have configured OverlayProvider component correctly - https://getstream.io/chat/docs/sdk/reactnative/basics/hello_stream_chat/#overlay-provider`,\n );\n }\n\n return contextValue;\n};\n\nexport const withChannelsStateContext = <\n P extends UnknownType,\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n Component: React.ComponentType<P>,\n): React.FC<Omit<P, keyof ChannelsStateContextValue<StreamChatGenerics>>> => {\n const WithChannelsStateContextComponent = (\n props: Omit<P, keyof ChannelsStateContextValue<StreamChatGenerics>>,\n ) => {\n const channelsStateContext = useChannelsStateContext<StreamChatGenerics>();\n\n return <Component {...(props as P)} {...channelsStateContext} />;\n };\n WithChannelsStateContextComponent.displayName = `WithChannelsStateContext${getDisplayName(\n Component,\n )}`;\n return WithChannelsStateContextComponent;\n};\n"],"mappings":"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"}
@@ -683,7 +683,7 @@ var MessageInputProvider = function MessageInputProvider(_ref) {
683
683
  };
684
684
  var uploadFile = function () {
685
685
  var _ref6 = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee5(_ref5) {
686
- var newFile, file, id, response, extraData;
686
+ var newFile, file, id, response, _file$mimeType, compressedUri, extraData;
687
687
  return _regenerator["default"].wrap(function _callee5$(_context5) {
688
688
  while (1) switch (_context5.prev = _context5.next) {
689
689
  case 0:
@@ -700,43 +700,59 @@ var MessageInputProvider = function MessageInputProvider(_ref) {
700
700
  return value.doDocUploadRequest(file, channel);
701
701
  case 8:
702
702
  response = _context5.sent;
703
- _context5.next = 17;
703
+ _context5.next = 26;
704
704
  break;
705
705
  case 11:
706
706
  if (!(channel && file.uri)) {
707
- _context5.next = 17;
707
+ _context5.next = 26;
708
708
  break;
709
709
  }
710
710
  uploadAbortControllerRef.current.set(file.name, client.createAbortControllerForNextRequest());
711
- _context5.next = 15;
711
+ if (!((_file$mimeType = file.mimeType) != null && _file$mimeType.includes('image'))) {
712
+ _context5.next = 22;
713
+ break;
714
+ }
715
+ _context5.next = 16;
716
+ return (0, _compressImage.compressedImageURI)(file, value.compressImageQuality);
717
+ case 16:
718
+ compressedUri = _context5.sent;
719
+ _context5.next = 19;
720
+ return channel.sendFile(compressedUri, file.name, file.mimeType);
721
+ case 19:
722
+ response = _context5.sent;
723
+ _context5.next = 25;
724
+ break;
725
+ case 22:
726
+ _context5.next = 24;
712
727
  return channel.sendFile(file.uri, file.name, file.mimeType);
713
- case 15:
728
+ case 24:
714
729
  response = _context5.sent;
730
+ case 25:
715
731
  uploadAbortControllerRef.current["delete"](file.name);
716
- case 17:
732
+ case 26:
717
733
  extraData = {
718
734
  thumb_url: response.thumb_url,
719
735
  url: response.file
720
736
  };
721
737
  setFileUploads(getUploadSetStateAction(id, _utils.FileState.UPLOADED, extraData));
722
- _context5.next = 27;
738
+ _context5.next = 36;
723
739
  break;
724
- case 21:
725
- _context5.prev = 21;
740
+ case 30:
741
+ _context5.prev = 30;
726
742
  _context5.t0 = _context5["catch"](4);
727
743
  if (!(_context5.t0 instanceof Error && (_context5.t0.name === 'AbortError' || _context5.t0.name === 'CanceledError'))) {
728
- _context5.next = 26;
744
+ _context5.next = 35;
729
745
  break;
730
746
  }
731
747
  uploadAbortControllerRef.current["delete"](file.name);
732
748
  return _context5.abrupt("return");
733
- case 26:
749
+ case 35:
734
750
  handleFileOrImageUploadError(_context5.t0, false, id);
735
- case 27:
751
+ case 36:
736
752
  case "end":
737
753
  return _context5.stop();
738
754
  }
739
- }, _callee5, null, [[4, 21]]);
755
+ }, _callee5, null, [[4, 30]]);
740
756
  }));
741
757
  return function uploadFile(_x) {
742
758
  return _ref6.apply(this, arguments);
@@ -994,7 +1010,7 @@ var MessageInputProvider = function MessageInputProvider(_ref) {
994
1010
  __self: _this,
995
1011
  __source: {
996
1012
  fileName: _jsxFileName,
997
- lineNumber: 1185,
1013
+ lineNumber: 1191,
998
1014
  columnNumber: 5
999
1015
  }
1000
1016
  }, children);
@@ -1015,7 +1031,7 @@ var withMessageInputContext = function withMessageInputContext(Component) {
1015
1031
  __self: _this,
1016
1032
  __source: {
1017
1033
  fileName: _jsxFileName,
1018
- lineNumber: 1225,
1034
+ lineNumber: 1231,
1019
1035
  columnNumber: 12
1020
1036
  }
1021
1037
  }));