stream-chat-react-native-core 5.21.0-beta.2 → 5.21.0-beta.3

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 (56) hide show
  1. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +34 -17
  2. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  3. package/lib/commonjs/i18n/en.json +1 -0
  4. package/lib/commonjs/i18n/fr.json +33 -32
  5. package/lib/commonjs/i18n/he.json +1 -0
  6. package/lib/commonjs/i18n/hi.json +33 -32
  7. package/lib/commonjs/i18n/it.json +33 -32
  8. package/lib/commonjs/i18n/ja.json +1 -0
  9. package/lib/commonjs/i18n/ko.json +1 -0
  10. package/lib/commonjs/i18n/nl.json +33 -32
  11. package/lib/commonjs/i18n/ru.json +33 -32
  12. package/lib/commonjs/i18n/tr.json +33 -32
  13. package/lib/commonjs/native.js +6 -1
  14. package/lib/commonjs/native.js.map +1 -1
  15. package/lib/commonjs/version.json +1 -1
  16. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +34 -17
  17. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  18. package/lib/module/i18n/en.json +1 -0
  19. package/lib/module/i18n/fr.json +33 -32
  20. package/lib/module/i18n/he.json +1 -0
  21. package/lib/module/i18n/hi.json +33 -32
  22. package/lib/module/i18n/it.json +33 -32
  23. package/lib/module/i18n/ja.json +1 -0
  24. package/lib/module/i18n/ko.json +1 -0
  25. package/lib/module/i18n/nl.json +33 -32
  26. package/lib/module/i18n/ru.json +33 -32
  27. package/lib/module/i18n/tr.json +33 -32
  28. package/lib/module/native.js +6 -1
  29. package/lib/module/native.js.map +1 -1
  30. package/lib/module/version.json +1 -1
  31. package/lib/typescript/i18n/en.json +1 -0
  32. package/lib/typescript/i18n/fr.json +33 -32
  33. package/lib/typescript/i18n/he.json +1 -0
  34. package/lib/typescript/i18n/hi.json +33 -32
  35. package/lib/typescript/i18n/it.json +33 -32
  36. package/lib/typescript/i18n/ja.json +1 -0
  37. package/lib/typescript/i18n/ko.json +1 -0
  38. package/lib/typescript/i18n/nl.json +33 -32
  39. package/lib/typescript/i18n/ru.json +33 -32
  40. package/lib/typescript/i18n/tr.json +33 -32
  41. package/lib/typescript/native.d.ts +4 -0
  42. package/lib/typescript/utils/Streami18n.d.ts +1 -0
  43. package/package.json +1 -1
  44. package/src/components/AttachmentPicker/AttachmentPicker.tsx +21 -2
  45. package/src/i18n/en.json +1 -0
  46. package/src/i18n/fr.json +33 -32
  47. package/src/i18n/he.json +1 -0
  48. package/src/i18n/hi.json +33 -32
  49. package/src/i18n/it.json +33 -32
  50. package/src/i18n/ja.json +1 -0
  51. package/src/i18n/ko.json +1 -0
  52. package/src/i18n/nl.json +33 -32
  53. package/src/i18n/ru.json +33 -32
  54. package/src/i18n/tr.json +33 -32
  55. package/src/native.ts +9 -0
  56. package/src/version.json +1 -1
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "1 Reply": "1 Ответ",
3
- "1 Thread Reply": "1 тема Ответить",
4
- "Allow access to your Gallery": "",
5
- "Also send to channel": "Также отправить на канал",
3
+ "1 Thread Reply": "",
4
+ "Allow access to your Gallery": "Разрешить доступ к вашей галерее",
5
+ "Also send to channel": "",
6
6
  "Are you sure you want to permanently delete this message?": "",
7
7
  "Block User": "",
8
8
  "Cancel": "",
@@ -14,57 +14,58 @@
14
14
  "Edit Message": "",
15
15
  "Editing Message": "",
16
16
  "Emoji matching": "Соответствие эмодзи",
17
- "Empty message...": "Пустое сообщение...",
18
- "Error loading": "Ошибка при загрузке",
19
- "Error loading channel list...": "Ошибка загрузки списка каналов...",
20
- "Error loading messages for this channel...": "Ошибка загрузки сообщений для этого канала...",
21
- "Error while loading, please reload/refresh": "Ошибка загрузки, пожалуйста перезагрузите или обновите",
22
- "File type not supported": "Тип файла не поддерживается",
17
+ "Empty message...": "",
18
+ "Error loading": "",
19
+ "Error loading channel list...": "",
20
+ "Error loading messages for this channel...": "",
21
+ "Error while loading, please reload/refresh": "",
22
+ "File type not supported": "",
23
23
  "Flag": "",
24
24
  "Flag Message": "",
25
25
  "Flag action failed either due to a network issue or the message is already flagged": "",
26
26
  "Instant Commands": "Мгновенные Команды",
27
- "Links are disabled": "Ссылки отключены",
27
+ "Links are disabled": "",
28
28
  "Loading channels...": "",
29
29
  "Loading messages...": "",
30
30
  "Loading...": "",
31
- "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}} МБ.",
31
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
32
32
  "Message Reactions": "Сообщения Реакции",
33
- "Message deleted": "Сообщение удалено",
33
+ "Message deleted": "",
34
34
  "Message flagged": "",
35
35
  "Mute User": "",
36
- "Not supported": "",
37
- "Nothing yet...": "Пока ничего нет...",
36
+ "Not supported": "не поддерживается",
37
+ "Nothing yet...": "",
38
38
  "Ok": "",
39
- "Only visible to you": "Видно только вам",
39
+ "Only visible to you": "",
40
40
  "Photo": "Фото",
41
- "Photos and Videos": "",
41
+ "Photos and Videos": "Фото и видео",
42
42
  "Pin to Conversation": "",
43
- "Pinned by": "Закреплено пользователем",
44
- "Please enable access to your photos and videos so you can share them.": "",
45
- "Please select a channel first": "Пожалуйста, сначала выберите канал",
46
- "Reconnecting...": "Переподключение...",
43
+ "Pinned by": "",
44
+ "Please enable access to your photos and videos so you can share them.": "Разрешите доступ к своим фотографиям и видео, чтобы вы могли ими поделиться.",
45
+ "Please select a channel first": "",
46
+ "Reconnecting...": "",
47
47
  "Reply": "",
48
- "Reply to Message": "Ответить на сообщение",
48
+ "Reply to Message": "",
49
49
  "Resend": "",
50
- "Search GIFs": "Поиск GIF",
51
- "Send a message": "Отправить сообщение",
52
- "Sending links is not allowed in this conversation": "Отправка ссылок недоступна в этом чате",
53
- "Slow mode ON": "Медленный режим включен",
50
+ "Search GIFs": "",
51
+ "Select More Photos": "Выбрать больше фотографий",
52
+ "Send a message": "",
53
+ "Sending links is not allowed in this conversation": "",
54
+ "Slow mode ON": "",
54
55
  "The message has been reported to a moderator.": "",
55
56
  "Thread Reply": "",
56
57
  "Unblock User": "",
57
- "Unknown User": "",
58
+ "Unknown User": "Неизвестный пользователь",
58
59
  "Unmute User": "",
59
60
  "Unpin from Conversation": "",
60
- "Unread Messages": "Непрочитанные Сообщения",
61
+ "Unread Messages": "",
61
62
  "Video": "видео",
62
- "You": "Вы",
63
- "You can't send messages in this channel": "Вы не можете отправлять сообщения в этот канал",
63
+ "You": "",
64
+ "You can't send messages in this channel": "",
64
65
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
65
- "{{ index }} of {{ photoLength }}": "",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} из {{ photoLength }}",
66
67
  "{{ replyCount }} Replies": "{{ replyCount }} Ответов",
67
- "{{ replyCount }} Thread Replies": "{{replyCount}} Ответы в темах",
68
+ "{{ replyCount }} Thread Replies": "",
68
69
  "{{ user }} is typing": "",
69
- "🏙 Attachment...": "🏙 Вложение..."
70
+ "🏙 Attachment...": ""
70
71
  }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "1 Reply": "1 Cevap",
3
- "1 Thread Reply": "1 Konu Yanıtı",
4
- "Allow access to your Gallery": "",
5
- "Also send to channel": "Kanala da gönder",
3
+ "1 Thread Reply": "",
4
+ "Allow access to your Gallery": "Galerinize erişime izin verin",
5
+ "Also send to channel": "",
6
6
  "Are you sure you want to permanently delete this message?": "",
7
7
  "Block User": "",
8
8
  "Cancel": "",
@@ -14,57 +14,58 @@
14
14
  "Edit Message": "",
15
15
  "Editing Message": "",
16
16
  "Emoji matching": "Emoji eşleştirme",
17
- "Empty message...": "Boş mesaj...",
18
- "Error loading": "Yükleme hatası",
19
- "Error loading channel list...": "Kanal listesi yüklenirken hata oluştu...",
20
- "Error loading messages for this channel...": "Bu kanal için mesajlar yüklenirken hata oluştu...",
21
- "Error while loading, please reload/refresh": "Yüklenirken hata oluştu, lütfen tekrar deneyiniz",
22
- "File type not supported": "Dosya türü desteklenmiyor",
17
+ "Empty message...": "",
18
+ "Error loading": "",
19
+ "Error loading channel list...": "",
20
+ "Error loading messages for this channel...": "",
21
+ "Error while loading, please reload/refresh": "",
22
+ "File type not supported": "",
23
23
  "Flag": "",
24
24
  "Flag Message": "",
25
25
  "Flag action failed either due to a network issue or the message is already flagged": "",
26
26
  "Instant Commands": "Anlık Komutlar",
27
- "Links are disabled": "Bağlantılar devre dışı",
27
+ "Links are disabled": "",
28
28
  "Loading channels...": "",
29
29
  "Loading messages...": "",
30
30
  "Loading...": "",
31
- "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.",
31
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
32
32
  "Message Reactions": "Mesaj Tepkileri",
33
- "Message deleted": "Mesaj silindi",
33
+ "Message deleted": "",
34
34
  "Message flagged": "",
35
35
  "Mute User": "",
36
- "Not supported": "",
37
- "Nothing yet...": "Henüz değil...",
36
+ "Not supported": "Desteklenmiyor",
37
+ "Nothing yet...": "",
38
38
  "Ok": "",
39
- "Only visible to you": "Sadece siz görebilirsiniz",
39
+ "Only visible to you": "",
40
40
  "Photo": "Fotoğraf",
41
- "Photos and Videos": "",
41
+ "Photos and Videos": "Fotoğraflar ve Videolar",
42
42
  "Pin to Conversation": "",
43
- "Pinned by": "Tarafından sabitlendi",
44
- "Please enable access to your photos and videos so you can share them.": "",
45
- "Please select a channel first": "Lütfen önce bir kanal seçiniz",
46
- "Reconnecting...": "Yeniden Bağlanılıyor...",
43
+ "Pinned by": "",
44
+ "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.",
45
+ "Please select a channel first": "",
46
+ "Reconnecting...": "",
47
47
  "Reply": "",
48
- "Reply to Message": "Mesajı Yanıtla",
48
+ "Reply to Message": "",
49
49
  "Resend": "",
50
- "Search GIFs": "GIF Ara",
51
- "Send a message": "Mesaj gönder",
52
- "Sending links is not allowed in this conversation": "Bu konuşmada bağlantı göndermek desteklenmiyor",
53
- "Slow mode ON": "Yavaş Mod Açık",
50
+ "Search GIFs": "",
51
+ "Select More Photos": "Daha Fazla Fotoğraf Seçin",
52
+ "Send a message": "",
53
+ "Sending links is not allowed in this conversation": "",
54
+ "Slow mode ON": "",
54
55
  "The message has been reported to a moderator.": "",
55
56
  "Thread Reply": "",
56
57
  "Unblock User": "",
57
- "Unknown User": "",
58
+ "Unknown User": "Bilinmeyen kullanıcı",
58
59
  "Unmute User": "",
59
60
  "Unpin from Conversation": "",
60
- "Unread Messages": "Okunmamış Mesajlar",
61
+ "Unread Messages": "",
61
62
  "Video": "Video",
62
- "You": "Sen",
63
- "You can't send messages in this channel": "Bu konuşmaya mesaj gönderemezsiniz",
63
+ "You": "",
64
+ "You can't send messages in this channel": "",
64
65
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
65
- "{{ index }} of {{ photoLength }}": "",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} / {{ photoLength }}",
66
67
  "{{ replyCount }} Replies": "{{ replyCount }} Cevap",
67
- "{{ replyCount }} Thread Replies": "{{responseCount}} Konu Cevapı",
68
+ "{{ replyCount }} Thread Replies": "",
68
69
  "{{ user }} is typing": "",
69
- "🏙 Attachment...": "🏙 Ek..."
70
+ "🏙 Attachment...": ""
70
71
  }
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, "__esModule", {
2
2
  value: true
3
3
  });
4
- exports.triggerHaptic = exports.takePhoto = exports.shareImage = exports.setClipboardString = exports.saveFile = exports.registerNativeHandlers = exports.pickDocument = exports.oniOS14GalleryLibrarySelectionChange = exports.isVideoPackageAvailable = exports.isAudioPackageAvailable = exports.getPhotos = exports.getLocalAssetUri = exports.deleteFile = exports.compressImage = exports.Video = exports.Sound = exports.SDK = exports.NetInfo = exports.FlatList = void 0;
4
+ exports.triggerHaptic = exports.takePhoto = exports.shareImage = exports.setClipboardString = exports.saveFile = exports.registerNativeHandlers = exports.pickDocument = exports.oniOS14GalleryLibrarySelectionChange = exports.isVideoPackageAvailable = exports.isAudioPackageAvailable = exports.iOS14RefreshGallerySelection = exports.getPhotos = exports.getLocalAssetUri = exports.deleteFile = exports.compressImage = exports.Video = exports.Sound = exports.SDK = exports.NetInfo = exports.FlatList = void 0;
5
5
  var _reactNative = require("react-native");
6
6
  var fail = function fail() {
7
7
  throw Error('Native handler was not registered, you should import stream-chat-expo or stream-chat-react-native');
@@ -14,6 +14,8 @@ var getLocalAssetUri = fail;
14
14
  exports.getLocalAssetUri = getLocalAssetUri;
15
15
  var oniOS14GalleryLibrarySelectionChange = fail;
16
16
  exports.oniOS14GalleryLibrarySelectionChange = oniOS14GalleryLibrarySelectionChange;
17
+ var iOS14RefreshGallerySelection = fail;
18
+ exports.iOS14RefreshGallerySelection = iOS14RefreshGallerySelection;
17
19
  var getPhotos = fail;
18
20
  exports.getPhotos = getPhotos;
19
21
  var FlatList = _reactNative.FlatList;
@@ -60,6 +62,9 @@ var registerNativeHandlers = function registerNativeHandlers(handlers) {
60
62
  if (handlers.getPhotos) {
61
63
  exports.getPhotos = getPhotos = handlers.getPhotos;
62
64
  }
65
+ if (handlers.iOS14RefreshGallerySelection) {
66
+ exports.iOS14RefreshGallerySelection = iOS14RefreshGallerySelection = handlers.iOS14RefreshGallerySelection;
67
+ }
63
68
  if (handlers.oniOS14GalleryLibrarySelectionChange) {
64
69
  exports.oniOS14GalleryLibrarySelectionChange = oniOS14GalleryLibrarySelectionChange = handlers.oniOS14GalleryLibrarySelectionChange;
65
70
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","fail","Error","compressImage","exports","deleteFile","getLocalAssetUri","oniOS14GalleryLibrarySelectionChange","getPhotos","FlatList","DefaultFlatList","NetInfo","addEventListener","fetch","pickDocument","saveFile","setClipboardString","shareImage","takePhoto","triggerHaptic","SDK","Sound","Video","registerNativeHandlers","handlers","undefined","isVideoPackageAvailable","isAudioPackageAvailable","Player","initializeSound"],"sources":["native.ts"],"sourcesContent":["import type React from 'react';\nimport { FlatList as DefaultFlatList, StyleProp, ViewStyle } from 'react-native';\n\nimport type { NetInfoSubscription } from '@react-native-community/netinfo';\n\nimport type { Asset, File } from './types/types';\n\nconst fail = () => {\n throw Error(\n 'Native handler was not registered, you should import stream-chat-expo or stream-chat-react-native',\n );\n};\n\ntype CompressImage = ({\n compressImageQuality,\n height,\n uri,\n width,\n}: {\n compressImageQuality: number;\n height: number;\n uri: string;\n width: number;\n}) => Promise<string> | never;\nexport let compressImage: CompressImage = fail;\n\ntype DeleteFile = ({ uri }: { uri: string }) => Promise<boolean> | never;\nexport let deleteFile: DeleteFile = fail;\n\ntype GetLocalAssetUri = (uriOrAssetId: string) => Promise<string | undefined> | never;\nexport let getLocalAssetUri: GetLocalAssetUri = fail;\n\ntype OniOS14LibrarySelectionChange = (callback: () => void) => { unsubscribe: () => void };\nexport let oniOS14GalleryLibrarySelectionChange: OniOS14LibrarySelectionChange = fail;\n\ntype GetPhotos = ({ after, first }: { first: number; after?: string }) =>\n | Promise<{\n assets: Array<Omit<Asset, 'source'> & { source: 'picker' }>;\n endCursor: string;\n hasNextPage: boolean;\n }>\n | never;\nexport let getPhotos: GetPhotos = fail;\n\ntype NetInfo = {\n addEventListener: (listener: (isConnected: boolean) => void) => NetInfoSubscription | never;\n fetch: (requestedInterface?: string | undefined) => Promise<boolean> | never;\n};\n\nexport let FlatList = DefaultFlatList;\n\nexport let NetInfo: NetInfo = {\n addEventListener: fail,\n fetch: fail,\n};\n\ntype PickDocument = ({ maxNumberOfFiles }: { maxNumberOfFiles?: number }) =>\n | Promise<{\n cancelled: boolean;\n assets?: File[];\n }>\n | never;\nexport let pickDocument: PickDocument = fail;\n\ntype SaveFileOptions = {\n fileName: string;\n fromUrl: string;\n};\ntype SaveFile = (options: SaveFileOptions) => Promise<string> | never;\nexport let saveFile: SaveFile = fail;\n\ntype SetClipboardString = (text: string) => Promise<void> | never;\nexport let setClipboardString: SetClipboardString = fail;\n\ntype ShareOptions = {\n type?: string;\n url?: string;\n};\ntype ShareImage = (options: ShareOptions) => Promise<boolean> | never;\nexport let shareImage: ShareImage = fail;\n\ntype Photo =\n | (Omit<Asset, 'source'> & {\n cancelled: false;\n source: 'camera';\n })\n | { cancelled: true };\ntype TakePhoto = (options: { compressImageQuality?: number }) => Promise<Photo> | never;\nexport let takePhoto: TakePhoto = fail;\n\ntype HapticFeedbackMethod =\n | 'impactHeavy'\n | 'impactLight'\n | 'impactMedium'\n | 'notificationError'\n | 'notificationSuccess'\n | 'notificationWarning'\n | 'selection';\ntype TriggerHaptic = (method: HapticFeedbackMethod) => void | never;\nexport let triggerHaptic: TriggerHaptic = fail;\n\nexport type PlaybackStatus = {\n didJustFinish: boolean;\n durationMillis: number;\n error: string;\n isBuffering: boolean;\n isLoaded: boolean;\n isLooping: boolean;\n isPlaying: boolean;\n positionMillis: number;\n};\n\nexport type AVPlaybackStatusToSet = {\n isLooping: boolean;\n isMuted: boolean;\n positionMillis: number;\n progressUpdateIntervalMillis: number;\n rate: number;\n shouldCorrectPitch: boolean;\n shouldPlay: boolean;\n volume: number;\n};\n\nexport let SDK: string;\n\nexport type SoundOptions = {\n basePathOrCallback?: string;\n callback?: () => void;\n filenameOrFile?: string;\n initialStatus?: Partial<AVPlaybackStatusToSet>;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n source?: { uri: string };\n};\n\nexport type SoundReturnType = {\n paused: boolean;\n testID: string;\n getDuration?: () => number;\n isPlaying?: () => boolean;\n onBuffer?: (props: { isBuffering: boolean }) => void;\n onEnd?: () => void;\n onLoad?: (payload: VideoPayloadData) => void;\n onLoadStart?: () => void;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n onProgress?: (data: VideoProgressData) => void;\n onReadyForDisplay?: () => void;\n pauseAsync?: () => void;\n play?: () => void;\n playAsync?: () => void;\n replayAsync?: () => void;\n resizeMode?: string;\n seek?: (progress: number) => void;\n setPositionAsync?: (millis: number) => void;\n soundRef?: React.RefObject<SoundReturnType>;\n stopAsync?: () => void;\n style?: StyleProp<ViewStyle>;\n unloadAsync?: () => void;\n uri?: string;\n};\n\nexport type SoundType = {\n initializeSound: (\n source?: { uri: string },\n initialStatus?: Partial<AVPlaybackStatusToSet>,\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void,\n ) => Promise<SoundReturnType | null>;\n Player: React.ComponentType<SoundReturnType> | null;\n};\n\nexport let Sound: SoundType;\n\nexport type VideoProgressData = {\n currentTime: number;\n seekableDuration: number;\n playableDuration?: number;\n};\n\nexport type VideoPayloadData = {\n duration: number;\n audioTracks?: { index: number; language: string; title: string; type: string }[];\n currentPosition?: number;\n naturalSize?: { height: number; orientation: 'portrait' | 'landscape'; width: number };\n textTracks?: { index: number; language: string; title: string; type: string }[];\n videoTracks?: {\n bitrate: number;\n codecs: string;\n height: number;\n trackId: number;\n width: number;\n }[];\n};\n\nexport type VideoType = {\n paused: boolean;\n testID: string;\n uri: string;\n videoRef: React.RefObject<VideoType>;\n onBuffer?: (props: { isBuffering: boolean }) => void;\n onEnd?: () => void;\n onLoad?: (payload: VideoPayloadData) => void;\n onLoadStart?: () => void;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n onProgress?: (data: VideoProgressData) => void;\n onReadyForDisplay?: () => void;\n repeat?: boolean;\n replayAsync?: () => void;\n resizeMode?: string;\n seek?: (progress: number) => void;\n setPositionAsync?: (position: number) => void;\n style?: StyleProp<ViewStyle>;\n};\n\nexport let Video: React.ComponentType<VideoType>;\n\ntype Handlers = {\n compressImage?: CompressImage;\n deleteFile?: DeleteFile;\n FlatList?: typeof DefaultFlatList;\n getLocalAssetUri?: GetLocalAssetUri;\n getPhotos?: GetPhotos;\n NetInfo?: NetInfo;\n oniOS14GalleryLibrarySelectionChange?: OniOS14LibrarySelectionChange;\n pickDocument?: PickDocument;\n saveFile?: SaveFile;\n SDK?: string;\n setClipboardString?: SetClipboardString;\n shareImage?: ShareImage;\n Sound?: SoundType;\n takePhoto?: TakePhoto;\n triggerHaptic?: TriggerHaptic;\n Video?: React.ComponentType<VideoType>;\n};\n\nexport const registerNativeHandlers = (handlers: Handlers) => {\n if (handlers.compressImage) {\n compressImage = handlers.compressImage;\n }\n\n if (handlers.deleteFile) {\n deleteFile = handlers.deleteFile;\n }\n\n if (handlers.FlatList) {\n FlatList = handlers.FlatList;\n }\n if (handlers.NetInfo) {\n NetInfo = handlers.NetInfo;\n }\n\n if (handlers.getLocalAssetUri) {\n getLocalAssetUri = handlers.getLocalAssetUri;\n }\n\n if (handlers.getPhotos) {\n getPhotos = handlers.getPhotos;\n }\n\n if (handlers.oniOS14GalleryLibrarySelectionChange) {\n oniOS14GalleryLibrarySelectionChange = handlers.oniOS14GalleryLibrarySelectionChange;\n }\n\n if (handlers.pickDocument !== undefined) {\n pickDocument = handlers.pickDocument;\n }\n\n if (handlers.saveFile) {\n saveFile = handlers.saveFile;\n }\n\n if (handlers.SDK) {\n SDK = handlers.SDK;\n }\n\n if (handlers.shareImage !== undefined) {\n shareImage = handlers.shareImage;\n }\n\n if (handlers.Sound) {\n Sound = handlers.Sound;\n }\n\n if (handlers.takePhoto) {\n takePhoto = handlers.takePhoto;\n }\n\n if (handlers.triggerHaptic) {\n triggerHaptic = handlers.triggerHaptic;\n }\n\n if (handlers.Video) {\n Video = handlers.Video;\n }\n\n if (handlers.setClipboardString !== undefined) {\n setClipboardString = handlers.setClipboardString;\n }\n};\n\nexport const isVideoPackageAvailable = () => !!Video;\nexport const isAudioPackageAvailable = () => !!Sound.Player || !!Sound.initializeSound;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","fail","Error","compressImage","exports","deleteFile","getLocalAssetUri","oniOS14GalleryLibrarySelectionChange","iOS14RefreshGallerySelection","getPhotos","FlatList","DefaultFlatList","NetInfo","addEventListener","fetch","pickDocument","saveFile","setClipboardString","shareImage","takePhoto","triggerHaptic","SDK","Sound","Video","registerNativeHandlers","handlers","undefined","isVideoPackageAvailable","isAudioPackageAvailable","Player","initializeSound"],"sources":["native.ts"],"sourcesContent":["import type React from 'react';\nimport { FlatList as DefaultFlatList, StyleProp, ViewStyle } from 'react-native';\n\nimport type { NetInfoSubscription } from '@react-native-community/netinfo';\n\nimport type { Asset, File } from './types/types';\n\nconst fail = () => {\n throw Error(\n 'Native handler was not registered, you should import stream-chat-expo or stream-chat-react-native',\n );\n};\n\ntype CompressImage = ({\n compressImageQuality,\n height,\n uri,\n width,\n}: {\n compressImageQuality: number;\n height: number;\n uri: string;\n width: number;\n}) => Promise<string> | never;\nexport let compressImage: CompressImage = fail;\n\ntype DeleteFile = ({ uri }: { uri: string }) => Promise<boolean> | never;\nexport let deleteFile: DeleteFile = fail;\n\ntype GetLocalAssetUri = (uriOrAssetId: string) => Promise<string | undefined> | never;\nexport let getLocalAssetUri: GetLocalAssetUri = fail;\n\ntype OniOS14LibrarySelectionChange = (callback: () => void) => { unsubscribe: () => void };\nexport let oniOS14GalleryLibrarySelectionChange: OniOS14LibrarySelectionChange = fail;\n\ntype iOS14RefreshGallerySelection = () => Promise<void>;\nexport let iOS14RefreshGallerySelection: iOS14RefreshGallerySelection = fail;\n\ntype GetPhotos = ({ after, first }: { first: number; after?: string }) =>\n | Promise<{\n assets: Array<Omit<Asset, 'source'> & { source: 'picker' }>;\n endCursor: string;\n hasNextPage: boolean;\n iOSLimited: boolean;\n }>\n | never;\nexport let getPhotos: GetPhotos = fail;\n\ntype NetInfo = {\n addEventListener: (listener: (isConnected: boolean) => void) => NetInfoSubscription | never;\n fetch: (requestedInterface?: string | undefined) => Promise<boolean> | never;\n};\n\nexport let FlatList = DefaultFlatList;\n\nexport let NetInfo: NetInfo = {\n addEventListener: fail,\n fetch: fail,\n};\n\ntype PickDocument = ({ maxNumberOfFiles }: { maxNumberOfFiles?: number }) =>\n | Promise<{\n cancelled: boolean;\n assets?: File[];\n }>\n | never;\nexport let pickDocument: PickDocument = fail;\n\ntype SaveFileOptions = {\n fileName: string;\n fromUrl: string;\n};\ntype SaveFile = (options: SaveFileOptions) => Promise<string> | never;\nexport let saveFile: SaveFile = fail;\n\ntype SetClipboardString = (text: string) => Promise<void> | never;\nexport let setClipboardString: SetClipboardString = fail;\n\ntype ShareOptions = {\n type?: string;\n url?: string;\n};\ntype ShareImage = (options: ShareOptions) => Promise<boolean> | never;\nexport let shareImage: ShareImage = fail;\n\ntype Photo =\n | (Omit<Asset, 'source'> & {\n cancelled: false;\n source: 'camera';\n })\n | { cancelled: true };\ntype TakePhoto = (options: { compressImageQuality?: number }) => Promise<Photo> | never;\nexport let takePhoto: TakePhoto = fail;\n\ntype HapticFeedbackMethod =\n | 'impactHeavy'\n | 'impactLight'\n | 'impactMedium'\n | 'notificationError'\n | 'notificationSuccess'\n | 'notificationWarning'\n | 'selection';\ntype TriggerHaptic = (method: HapticFeedbackMethod) => void | never;\nexport let triggerHaptic: TriggerHaptic = fail;\n\nexport type PlaybackStatus = {\n didJustFinish: boolean;\n durationMillis: number;\n error: string;\n isBuffering: boolean;\n isLoaded: boolean;\n isLooping: boolean;\n isPlaying: boolean;\n positionMillis: number;\n};\n\nexport type AVPlaybackStatusToSet = {\n isLooping: boolean;\n isMuted: boolean;\n positionMillis: number;\n progressUpdateIntervalMillis: number;\n rate: number;\n shouldCorrectPitch: boolean;\n shouldPlay: boolean;\n volume: number;\n};\n\nexport let SDK: string;\n\nexport type SoundOptions = {\n basePathOrCallback?: string;\n callback?: () => void;\n filenameOrFile?: string;\n initialStatus?: Partial<AVPlaybackStatusToSet>;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n source?: { uri: string };\n};\n\nexport type SoundReturnType = {\n paused: boolean;\n testID: string;\n getDuration?: () => number;\n isPlaying?: () => boolean;\n onBuffer?: (props: { isBuffering: boolean }) => void;\n onEnd?: () => void;\n onLoad?: (payload: VideoPayloadData) => void;\n onLoadStart?: () => void;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n onProgress?: (data: VideoProgressData) => void;\n onReadyForDisplay?: () => void;\n pauseAsync?: () => void;\n play?: () => void;\n playAsync?: () => void;\n replayAsync?: () => void;\n resizeMode?: string;\n seek?: (progress: number) => void;\n setPositionAsync?: (millis: number) => void;\n soundRef?: React.RefObject<SoundReturnType>;\n stopAsync?: () => void;\n style?: StyleProp<ViewStyle>;\n unloadAsync?: () => void;\n uri?: string;\n};\n\nexport type SoundType = {\n initializeSound: (\n source?: { uri: string },\n initialStatus?: Partial<AVPlaybackStatusToSet>,\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void,\n ) => Promise<SoundReturnType | null>;\n Player: React.ComponentType<SoundReturnType> | null;\n};\n\nexport let Sound: SoundType;\n\nexport type VideoProgressData = {\n currentTime: number;\n seekableDuration: number;\n playableDuration?: number;\n};\n\nexport type VideoPayloadData = {\n duration: number;\n audioTracks?: { index: number; language: string; title: string; type: string }[];\n currentPosition?: number;\n naturalSize?: { height: number; orientation: 'portrait' | 'landscape'; width: number };\n textTracks?: { index: number; language: string; title: string; type: string }[];\n videoTracks?: {\n bitrate: number;\n codecs: string;\n height: number;\n trackId: number;\n width: number;\n }[];\n};\n\nexport type VideoType = {\n paused: boolean;\n testID: string;\n uri: string;\n videoRef: React.RefObject<VideoType>;\n onBuffer?: (props: { isBuffering: boolean }) => void;\n onEnd?: () => void;\n onLoad?: (payload: VideoPayloadData) => void;\n onLoadStart?: () => void;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n onProgress?: (data: VideoProgressData) => void;\n onReadyForDisplay?: () => void;\n repeat?: boolean;\n replayAsync?: () => void;\n resizeMode?: string;\n seek?: (progress: number) => void;\n setPositionAsync?: (position: number) => void;\n style?: StyleProp<ViewStyle>;\n};\n\nexport let Video: React.ComponentType<VideoType>;\n\ntype Handlers = {\n iOS14RefreshGallerySelection: iOS14RefreshGallerySelection;\n compressImage?: CompressImage;\n deleteFile?: DeleteFile;\n FlatList?: typeof DefaultFlatList;\n getLocalAssetUri?: GetLocalAssetUri;\n getPhotos?: GetPhotos;\n NetInfo?: NetInfo;\n oniOS14GalleryLibrarySelectionChange?: OniOS14LibrarySelectionChange;\n pickDocument?: PickDocument;\n saveFile?: SaveFile;\n SDK?: string;\n setClipboardString?: SetClipboardString;\n shareImage?: ShareImage;\n Sound?: SoundType;\n takePhoto?: TakePhoto;\n triggerHaptic?: TriggerHaptic;\n Video?: React.ComponentType<VideoType>;\n};\n\nexport const registerNativeHandlers = (handlers: Handlers) => {\n if (handlers.compressImage) {\n compressImage = handlers.compressImage;\n }\n\n if (handlers.deleteFile) {\n deleteFile = handlers.deleteFile;\n }\n\n if (handlers.FlatList) {\n FlatList = handlers.FlatList;\n }\n if (handlers.NetInfo) {\n NetInfo = handlers.NetInfo;\n }\n\n if (handlers.getLocalAssetUri) {\n getLocalAssetUri = handlers.getLocalAssetUri;\n }\n\n if (handlers.getPhotos) {\n getPhotos = handlers.getPhotos;\n }\n\n if (handlers.iOS14RefreshGallerySelection) {\n iOS14RefreshGallerySelection = handlers.iOS14RefreshGallerySelection;\n }\n\n if (handlers.oniOS14GalleryLibrarySelectionChange) {\n oniOS14GalleryLibrarySelectionChange = handlers.oniOS14GalleryLibrarySelectionChange;\n }\n\n if (handlers.pickDocument !== undefined) {\n pickDocument = handlers.pickDocument;\n }\n\n if (handlers.saveFile) {\n saveFile = handlers.saveFile;\n }\n\n if (handlers.SDK) {\n SDK = handlers.SDK;\n }\n\n if (handlers.shareImage !== undefined) {\n shareImage = handlers.shareImage;\n }\n\n if (handlers.Sound) {\n Sound = handlers.Sound;\n }\n\n if (handlers.takePhoto) {\n takePhoto = handlers.takePhoto;\n }\n\n if (handlers.triggerHaptic) {\n triggerHaptic = handlers.triggerHaptic;\n }\n\n if (handlers.Video) {\n Video = handlers.Video;\n }\n\n if (handlers.setClipboardString !== undefined) {\n setClipboardString = handlers.setClipboardString;\n }\n};\n\nexport const isVideoPackageAvailable = () => !!Video;\nexport const isAudioPackageAvailable = () => !!Sound.Player || !!Sound.initializeSound;\n"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "5.21.0-beta.2"
2
+ "version": "5.21.0-beta.3"
3
3
  }
@@ -48,6 +48,7 @@
48
48
  "Reply to Message": "Reply to Message",
49
49
  "Resend": "Resend",
50
50
  "Search GIFs": "Search GIFs",
51
+ "Select More Photos": "Select More Photos",
51
52
  "Send a message": "Send a message",
52
53
  "Sending links is not allowed in this conversation": "Sending links is not allowed in this conversation",
53
54
  "Slow mode ON": "Slow mode ON",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "1 Reply": "1 Réponse",
3
- "1 Thread Reply": "Réponse à 1 fil",
4
- "Allow access to your Gallery": "",
5
- "Also send to channel": "Envoyer également à la chaîne",
3
+ "1 Thread Reply": "",
4
+ "Allow access to your Gallery": "Autoriser l'accès à votre galerie",
5
+ "Also send to channel": "",
6
6
  "Are you sure you want to permanently delete this message?": "",
7
7
  "Block User": "",
8
8
  "Cancel": "",
@@ -14,57 +14,58 @@
14
14
  "Edit Message": "",
15
15
  "Editing Message": "",
16
16
  "Emoji matching": "Correspondance Emoji",
17
- "Empty message...": "Message vide...",
18
- "Error loading": "Erreur lors du chargement",
19
- "Error loading channel list...": "Erreur lors du chargement de la liste de canaux...",
20
- "Error loading messages for this channel...": "Erreur lors du chargement des messages de ce canal...",
21
- "Error while loading, please reload/refresh": "Erreur lors du chargement, veuillez recharger/rafraîchir",
22
- "File type not supported": "Le type de fichier n'est pas pris en charge",
17
+ "Empty message...": "",
18
+ "Error loading": "",
19
+ "Error loading channel list...": "",
20
+ "Error loading messages for this channel...": "",
21
+ "Error while loading, please reload/refresh": "",
22
+ "File type not supported": "",
23
23
  "Flag": "",
24
24
  "Flag Message": "",
25
25
  "Flag action failed either due to a network issue or the message is already flagged": "",
26
26
  "Instant Commands": "Commandes Instantanées",
27
- "Links are disabled": "Links are disabled",
27
+ "Links are disabled": "",
28
28
  "Loading channels...": "",
29
29
  "Loading messages...": "",
30
30
  "Loading...": "",
31
- "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "Taille maximale de téléchargement de fichier atteinte. Veuillez télécharger un fichier inférieur à {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} Mo.",
31
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
32
32
  "Message Reactions": "Réactions aux messages",
33
- "Message deleted": "Message supprimé",
33
+ "Message deleted": "",
34
34
  "Message flagged": "",
35
35
  "Mute User": "",
36
- "Not supported": "",
37
- "Nothing yet...": "Aucun message...",
36
+ "Not supported": "Non pris en charge",
37
+ "Nothing yet...": "",
38
38
  "Ok": "",
39
- "Only visible to you": "Seulement visible par vous",
39
+ "Only visible to you": "",
40
40
  "Photo": "Photo",
41
- "Photos and Videos": "",
41
+ "Photos and Videos": "Photos et vidéos",
42
42
  "Pin to Conversation": "",
43
- "Pinned by": "Épinglé par",
44
- "Please enable access to your photos and videos so you can share them.": "",
45
- "Please select a channel first": "Veuillez d'abord selectionnez un canal",
46
- "Reconnecting...": "Se Reconnecter...",
43
+ "Pinned by": "",
44
+ "Please enable access to your photos and videos so you can share them.": "Veuillez autoriser l'accès à vos photos et vidéos afin de pouvoir les partager.",
45
+ "Please select a channel first": "",
46
+ "Reconnecting...": "",
47
47
  "Reply": "",
48
- "Reply to Message": "Répondre au message",
48
+ "Reply to Message": "",
49
49
  "Resend": "",
50
- "Search GIFs": "Rechercher des GIF",
51
- "Send a message": "Envoyer un message",
52
- "Sending links is not allowed in this conversation": "Sending links is not allowed in this conversation",
53
- "Slow mode ON": "Mode lent activé",
50
+ "Search GIFs": "",
51
+ "Select More Photos": "Sélectionner plus de photos",
52
+ "Send a message": "",
53
+ "Sending links is not allowed in this conversation": "",
54
+ "Slow mode ON": "",
54
55
  "The message has been reported to a moderator.": "",
55
56
  "Thread Reply": "",
56
57
  "Unblock User": "",
57
- "Unknown User": "",
58
+ "Unknown User": "Utilisateur inconnu",
58
59
  "Unmute User": "",
59
60
  "Unpin from Conversation": "",
60
- "Unread Messages": "Messages non lus",
61
+ "Unread Messages": "",
61
62
  "Video": "Vidéo",
62
- "You": "Toi",
63
- "You can't send messages in this channel": "You can't send messages in this channel",
63
+ "You": "",
64
+ "You can't send messages in this channel": "",
64
65
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
65
- "{{ index }} of {{ photoLength }}": "",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} sur {{ photoLength }}",
66
67
  "{{ replyCount }} Replies": "{{ replyCount }} Réponses",
67
- "{{ replyCount }} Thread Replies": "{{replyCount}} Réponses à la discussion",
68
+ "{{ replyCount }} Thread Replies": "",
68
69
  "{{ user }} is typing": "",
69
- "🏙 Attachment...": "🏙 Pièce jointe..."
70
+ "🏙 Attachment...": ""
70
71
  }
@@ -66,6 +66,7 @@
66
66
  "{{ replyCount }} Replies": "{{ replyCount }} תגובות",
67
67
  "{{ replyCount }} Thread Replies": "{{ replyCount }} תגובות שרשור",
68
68
  "{{ user }} is typing": "{{ user }} מקליד/ה",
69
+ "Select More Photos": "בחר עוד תמונות",
69
70
  "🏙 Attachment...": "🏙 קובץ מצורף...",
70
71
  "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}} MB"
71
72
  }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "1 Reply": "1 रिप्लाई",
3
- "1 Thread Reply": "1 धागा उत्तर",
4
- "Allow access to your Gallery": "",
5
- "Also send to channel": "चैनल को भी भेजें",
3
+ "1 Thread Reply": "",
4
+ "Allow access to your Gallery": "अपनी गैलरी तक पहुँचने की अनुमति दें",
5
+ "Also send to channel": "",
6
6
  "Are you sure you want to permanently delete this message?": "",
7
7
  "Block User": "",
8
8
  "Cancel": "",
@@ -14,57 +14,58 @@
14
14
  "Edit Message": "",
15
15
  "Editing Message": "",
16
16
  "Emoji matching": "इमोजी मिलान",
17
- "Empty message...": "खाली संदेश...",
18
- "Error loading": "लोड होने मे त्रुटि",
19
- "Error loading channel list...": "चैनल सूची लोड करने में त्रुटि...",
20
- "Error loading messages for this channel...": "इस चैनल के लिए मेसेजेस लोड करने में त्रुटि हुई...",
21
- "Error while loading, please reload/refresh": "एरर, रिफ्रेश करे",
22
- "File type not supported": "फ़ाइल प्रकार समर्थित नहीं है",
17
+ "Empty message...": "",
18
+ "Error loading": "",
19
+ "Error loading channel list...": "",
20
+ "Error loading messages for this channel...": "",
21
+ "Error while loading, please reload/refresh": "",
22
+ "File type not supported": "",
23
23
  "Flag": "",
24
24
  "Flag Message": "",
25
25
  "Flag action failed either due to a network issue or the message is already flagged": "",
26
26
  "Instant Commands": "त्वरित कमांड",
27
- "Links are disabled": "लिंक अक्षम हैं",
27
+ "Links are disabled": "",
28
28
  "Loading channels...": "",
29
29
  "Loading messages...": "",
30
30
  "Loading...": "",
31
- "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}} एमबी से नीचे की फ़ाइल अपलोड करें।",
31
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
32
32
  "Message Reactions": "संदेश प्रतिक्रियाएँ",
33
- "Message deleted": "मैसेज हटा दिया गया",
33
+ "Message deleted": "",
34
34
  "Message flagged": "",
35
35
  "Mute User": "",
36
- "Not supported": "",
37
- "Nothing yet...": "कोई मैसेज नहीं है...",
36
+ "Not supported": "समर्थित नहीं",
37
+ "Nothing yet...": "",
38
38
  "Ok": "",
39
- "Only visible to you": "केवल आपको दिखाई दे रहा है",
39
+ "Only visible to you": "",
40
40
  "Photo": "तस्वीर",
41
- "Photos and Videos": "",
41
+ "Photos and Videos": "तस्वीरें और वीडियों",
42
42
  "Pin to Conversation": "",
43
- "Pinned by": "द्वारा पिन किया गया",
44
- "Please enable access to your photos and videos so you can share them.": "",
45
- "Please select a channel first": "कृपया पहले एक चैनल चुनें",
46
- "Reconnecting...": "पुनः कनेक्ट हो...",
43
+ "Pinned by": "",
44
+ "Please enable access to your photos and videos so you can share them.": "कृपया अपनी फ़ोटो और वीडियो तक पहुंच सक्षम करें ताकि आप उन्हें साझा कर सकें।",
45
+ "Please select a channel first": "",
46
+ "Reconnecting...": "",
47
47
  "Reply": "",
48
- "Reply to Message": "संदेश का जवाब दें",
48
+ "Reply to Message": "",
49
49
  "Resend": "",
50
- "Search GIFs": "GIF खोजें",
51
- "Send a message": "एक संदेश भेजें",
52
- "Sending links is not allowed in this conversation": "इस बातचीत में लिंक भेजने की अनुमति नहीं है",
53
- "Slow mode ON": "स्लो मोड चालू",
50
+ "Search GIFs": "",
51
+ "Select More Photos": "अधिक फ़ोटो चुनें",
52
+ "Send a message": "",
53
+ "Sending links is not allowed in this conversation": "",
54
+ "Slow mode ON": "",
54
55
  "The message has been reported to a moderator.": "",
55
56
  "Thread Reply": "",
56
57
  "Unblock User": "",
57
- "Unknown User": "",
58
+ "Unknown User": "अज्ञात उपयोगकर्ता",
58
59
  "Unmute User": "",
59
60
  "Unpin from Conversation": "",
60
- "Unread Messages": "अपठित संदेश",
61
+ "Unread Messages": "",
61
62
  "Video": "वीडियो",
62
- "You": "आप",
63
- "You can't send messages in this channel": "आप इस चैनल में संदेश नहीं भेज सकते",
63
+ "You": "",
64
+ "You can't send messages in this channel": "",
64
65
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
65
- "{{ index }} of {{ photoLength }}": "",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} / {{ photoLength }}",
66
67
  "{{ replyCount }} Replies": "{{ replyCount }} रिप्लाई",
67
- "{{ replyCount }} Thread Replies": "{{ replyCount }}} थ्रेड उत्तर",
68
+ "{{ replyCount }} Thread Replies": "",
68
69
  "{{ user }} is typing": "",
69
- "🏙 Attachment...": "🏙 अटैचमेंट..."
70
+ "🏙 Attachment...": ""
70
71
  }