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

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 (92) 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/components/Channel/Channel.js +17 -13
  4. package/lib/commonjs/components/Channel/Channel.js.map +1 -1
  5. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js +2 -0
  6. package/lib/commonjs/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  7. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +22 -42
  8. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  9. package/lib/commonjs/components/Message/MessageSimple/MessageError.js +50 -0
  10. package/lib/commonjs/components/Message/MessageSimple/MessageError.js.map +1 -0
  11. package/lib/commonjs/components/index.js +11 -0
  12. package/lib/commonjs/components/index.js.map +1 -1
  13. package/lib/commonjs/contexts/messagesContext/MessagesContext.js +2 -2
  14. package/lib/commonjs/contexts/messagesContext/MessagesContext.js.map +1 -1
  15. package/lib/commonjs/i18n/en.json +2 -1
  16. package/lib/commonjs/i18n/fr.json +36 -35
  17. package/lib/commonjs/i18n/he.json +1 -0
  18. package/lib/commonjs/i18n/hi.json +36 -35
  19. package/lib/commonjs/i18n/it.json +36 -35
  20. package/lib/commonjs/i18n/ja.json +1 -0
  21. package/lib/commonjs/i18n/ko.json +1 -0
  22. package/lib/commonjs/i18n/nl.json +36 -35
  23. package/lib/commonjs/i18n/ru.json +36 -35
  24. package/lib/commonjs/i18n/tr.json +36 -35
  25. package/lib/commonjs/native.js +6 -1
  26. package/lib/commonjs/native.js.map +1 -1
  27. package/lib/commonjs/version.json +1 -1
  28. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +34 -17
  29. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  30. package/lib/module/components/Channel/Channel.js +17 -13
  31. package/lib/module/components/Channel/Channel.js.map +1 -1
  32. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js +2 -0
  33. package/lib/module/components/Channel/hooks/useCreateMessagesContext.js.map +1 -1
  34. package/lib/module/components/Message/MessageSimple/MessageContent.js +22 -42
  35. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  36. package/lib/module/components/Message/MessageSimple/MessageError.js +50 -0
  37. package/lib/module/components/Message/MessageSimple/MessageError.js.map +1 -0
  38. package/lib/module/components/index.js +11 -0
  39. package/lib/module/components/index.js.map +1 -1
  40. package/lib/module/contexts/messagesContext/MessagesContext.js +2 -2
  41. package/lib/module/contexts/messagesContext/MessagesContext.js.map +1 -1
  42. package/lib/module/i18n/en.json +2 -1
  43. package/lib/module/i18n/fr.json +36 -35
  44. package/lib/module/i18n/he.json +1 -0
  45. package/lib/module/i18n/hi.json +36 -35
  46. package/lib/module/i18n/it.json +36 -35
  47. package/lib/module/i18n/ja.json +1 -0
  48. package/lib/module/i18n/ko.json +1 -0
  49. package/lib/module/i18n/nl.json +36 -35
  50. package/lib/module/i18n/ru.json +36 -35
  51. package/lib/module/i18n/tr.json +36 -35
  52. package/lib/module/native.js +6 -1
  53. package/lib/module/native.js.map +1 -1
  54. package/lib/module/version.json +1 -1
  55. package/lib/typescript/components/Channel/Channel.d.ts +1 -1
  56. package/lib/typescript/components/Channel/hooks/useCreateMessagesContext.d.ts +1 -1
  57. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +1 -1
  58. package/lib/typescript/components/Message/MessageSimple/MessageError.d.ts +6 -0
  59. package/lib/typescript/components/index.d.ts +1 -0
  60. package/lib/typescript/contexts/messagesContext/MessagesContext.d.ts +5 -0
  61. package/lib/typescript/i18n/en.json +2 -1
  62. package/lib/typescript/i18n/fr.json +36 -35
  63. package/lib/typescript/i18n/he.json +1 -0
  64. package/lib/typescript/i18n/hi.json +36 -35
  65. package/lib/typescript/i18n/it.json +36 -35
  66. package/lib/typescript/i18n/ja.json +1 -0
  67. package/lib/typescript/i18n/ko.json +1 -0
  68. package/lib/typescript/i18n/nl.json +36 -35
  69. package/lib/typescript/i18n/ru.json +36 -35
  70. package/lib/typescript/i18n/tr.json +36 -35
  71. package/lib/typescript/native.d.ts +4 -0
  72. package/lib/typescript/utils/Streami18n.d.ts +1 -0
  73. package/package.json +1 -1
  74. package/src/components/AttachmentPicker/AttachmentPicker.tsx +21 -2
  75. package/src/components/Channel/Channel.tsx +4 -0
  76. package/src/components/Channel/hooks/useCreateMessagesContext.ts +2 -0
  77. package/src/components/Message/MessageSimple/MessageContent.tsx +6 -11
  78. package/src/components/Message/MessageSimple/MessageError.tsx +28 -0
  79. package/src/components/index.ts +1 -0
  80. package/src/contexts/messagesContext/MessagesContext.tsx +5 -0
  81. package/src/i18n/en.json +2 -1
  82. package/src/i18n/fr.json +36 -35
  83. package/src/i18n/he.json +1 -0
  84. package/src/i18n/hi.json +36 -35
  85. package/src/i18n/it.json +36 -35
  86. package/src/i18n/ja.json +1 -0
  87. package/src/i18n/ko.json +1 -0
  88. package/src/i18n/nl.json +36 -35
  89. package/src/i18n/ru.json +36 -35
  90. package/src/i18n/tr.json +36 -35
  91. package/src/native.ts +9 -0
  92. package/src/version.json +1 -1
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "1 Reply": "1 Antwoord",
3
3
  "1 Thread Reply": "1 thread antwoord",
4
- "Allow access to your Gallery": "",
4
+ "Allow access to your Gallery": "Geef toegang tot uw galerij",
5
5
  "Also send to channel": "Stuur ook naar kanaal",
6
- "Are you sure you want to permanently delete this message?": "",
7
- "Block User": "",
8
- "Cancel": "",
9
- "Cannot Flag Message": "",
10
- "Copy Message": "",
11
- "Delete": "",
12
- "Delete Message": "",
13
- "Do you want to send a copy of this message to a moderator for further investigation?": "",
14
- "Edit Message": "",
15
- "Editing Message": "",
6
+ "Are you sure you want to permanently delete this message?": "Weet u zeker dat u dit bericht definitief wilt verwijderen?",
7
+ "Block User": "Blokkeer Gebruiker",
8
+ "Cancel": "Annuleer",
9
+ "Cannot Flag Message": "Kan bericht niet rapporteren",
10
+ "Copy Message": "Bericht kopiëren",
11
+ "Delete": "Verwijderen",
12
+ "Delete Message": "Verwijder bericht",
13
+ "Do you want to send a copy of this message to a moderator for further investigation?": "Wil je een kopie van dit bericht naar een moderator sturen voor verder onderzoek?",
14
+ "Edit Message": "Pas bericht aan",
15
+ "Editing Message": "Bericht aanpassen",
16
16
  "Emoji matching": "Emoji-overeenkomsten",
17
17
  "Empty message...": "Leeg bericht...",
18
18
  "Error loading": "Probleem bij het laden",
@@ -20,51 +20,52 @@
20
20
  "Error loading messages for this channel...": "Probleem bij het laden van de berichten in dit kanaal...",
21
21
  "Error while loading, please reload/refresh": "Probleem bij het laden, probeer opnieuw",
22
22
  "File type not supported": "Bestandstype niet ondersteund",
23
- "Flag": "",
24
- "Flag Message": "",
25
- "Flag action failed either due to a network issue or the message is already flagged": "",
23
+ "Flag": "Markeer",
24
+ "Flag Message": "Markeer bericht",
25
+ "Flag action failed either due to a network issue or the message is already flagged": "Rapporteren mislukt door een netwerk fout of het berich is al gerapporteerd",
26
26
  "Instant Commands": "Directe Opdrachten",
27
27
  "Links are disabled": "Het versturen van links staat uit",
28
- "Loading channels...": "",
29
- "Loading messages...": "",
30
- "Loading...": "",
28
+ "Loading channels...": "Kanalen aan het laden...",
29
+ "Loading messages...": "Berichten aan het laden...",
30
+ "Loading...": "Aan het laden...",
31
31
  "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "Maximale uploadlimiet voor bestandsgrootte bereikt. Upload een bestand van minder dan {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.",
32
32
  "Message Reactions": "Bericht Reacties",
33
33
  "Message deleted": "Bericht verwijderd",
34
- "Message flagged": "",
35
- "Mute User": "",
36
- "Not supported": "",
34
+ "Message flagged": "Bericht gemarkeerd",
35
+ "Mute User": "Gebruiker dempen",
36
+ "Not supported": "niet ondersteund",
37
37
  "Nothing yet...": "Nog niets...",
38
- "Ok": "",
38
+ "Ok": "Oké",
39
39
  "Only visible to you": "Alleen zichtbaar voor jou",
40
40
  "Photo": "Foto",
41
- "Photos and Videos": "",
42
- "Pin to Conversation": "",
41
+ "Photos and Videos": "Foto's en video's",
42
+ "Pin to Conversation": "Vastmaken aan gesprek",
43
43
  "Pinned by": "Vastgemaakt door",
44
- "Please enable access to your photos and videos so you can share them.": "",
44
+ "Please enable access to your photos and videos so you can share them.": "Schakel toegang tot uw foto's en video's in zodat u ze kunt delen.",
45
45
  "Please select a channel first": "Selecteer eerst een kanaal",
46
46
  "Reconnecting...": "Opnieuw Verbinding Maken...",
47
- "Reply": "",
47
+ "Reply": "Antwoord",
48
48
  "Reply to Message": "Beantwoord bericht",
49
- "Resend": "",
49
+ "Resend": "Opnieuw versturen",
50
50
  "Search GIFs": "Zoek GIF's",
51
+ "Select More Photos": "Selecteer Meer foto's",
51
52
  "Send a message": "Stuur een bericht",
52
53
  "Sending links is not allowed in this conversation": "In dit gesprek is het niet toegestaan links te versturen",
53
54
  "Slow mode ON": "Langzame modus aan",
54
- "The message has been reported to a moderator.": "",
55
- "Thread Reply": "",
56
- "Unblock User": "",
57
- "Unknown User": "",
58
- "Unmute User": "",
59
- "Unpin from Conversation": "",
55
+ "The message has been reported to a moderator.": "Het bericht is gerapporteerd aan een moderator.",
56
+ "Thread Reply": "Discussie beantwoorden",
57
+ "Unblock User": "Deblokkeer gebruiker",
58
+ "Unknown User": "Onbekende gebruiker",
59
+ "Unmute User": "Dempen van gebruiker opheffen",
60
+ "Unpin from Conversation": "Losmaken van gesprek",
60
61
  "Unread Messages": "Ongelezen Berichten",
61
62
  "Video": "Video",
62
63
  "You": "U",
63
64
  "You can't send messages in this channel": "Je kan geen berichten sturen in dit kanaal",
64
- "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
65
- "{{ index }} of {{ photoLength }}": "",
65
+ "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "{{ firstUser }} en {{ nonSelfUserLength }} anderen zijn aan het typen",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} van {{ photoLength }}",
66
67
  "{{ replyCount }} Replies": "{{ replyCount }} Antwoorden",
67
68
  "{{ replyCount }} Thread Replies": "{{replyCount}} Discussiereacties",
68
- "{{ user }} is typing": "",
69
+ "{{ user }} is typing": "{{ user }} is aan het typen",
69
70
  "🏙 Attachment...": "🏙 Bijlage..."
70
71
  }
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "1 Reply": "1 Ответ",
3
3
  "1 Thread Reply": "1 тема Ответить",
4
- "Allow access to your Gallery": "",
4
+ "Allow access to your Gallery": "Разрешить доступ к вашей галерее",
5
5
  "Also send to channel": "Также отправить на канал",
6
- "Are you sure you want to permanently delete this message?": "",
7
- "Block User": "",
8
- "Cancel": "",
9
- "Cannot Flag Message": "",
10
- "Copy Message": "",
11
- "Delete": "",
12
- "Delete Message": "",
13
- "Do you want to send a copy of this message to a moderator for further investigation?": "",
14
- "Edit Message": "",
15
- "Editing Message": "",
6
+ "Are you sure you want to permanently delete this message?": "Вы действительно хотите удалить это сообщение без возможности восстановления?",
7
+ "Block User": "Заблокировать пользователя",
8
+ "Cancel": "Отмена",
9
+ "Cannot Flag Message": "Невозможно пожаловаться на сообщение",
10
+ "Copy Message": "Копировать сообщение",
11
+ "Delete": "удалять",
12
+ "Delete Message": "Удалить сообщение",
13
+ "Do you want to send a copy of this message to a moderator for further investigation?": "Вы хотите отправить копию этого сообщения модератору для дальнейшего изучения?",
14
+ "Edit Message": "Редактировать сообщение",
15
+ "Editing Message": "Редактирование сообщения",
16
16
  "Emoji matching": "Соответствие эмодзи",
17
17
  "Empty message...": "Пустое сообщение...",
18
18
  "Error loading": "Ошибка при загрузке",
@@ -20,51 +20,52 @@
20
20
  "Error loading messages for this channel...": "Ошибка загрузки сообщений для этого канала...",
21
21
  "Error while loading, please reload/refresh": "Ошибка загрузки, пожалуйста перезагрузите или обновите",
22
22
  "File type not supported": "Тип файла не поддерживается",
23
- "Flag": "",
24
- "Flag Message": "",
25
- "Flag action failed either due to a network issue or the message is already flagged": "",
23
+ "Flag": "Пометить",
24
+ "Flag Message": "Пометить сообщение",
25
+ "Flag action failed either due to a network issue or the message is already flagged": "Не удалось отправить жалобу. Возможные причины: проблема с подключением к интернету или ваша жалоба уже была принята.",
26
26
  "Instant Commands": "Мгновенные Команды",
27
27
  "Links are disabled": "Ссылки отключены",
28
- "Loading channels...": "",
29
- "Loading messages...": "",
30
- "Loading...": "",
28
+ "Loading channels...": "Загружаю каналы...",
29
+ "Loading messages...": "Загружаю сообщения...",
30
+ "Loading...": "Загружаю...",
31
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}} МБ.",
32
32
  "Message Reactions": "Сообщения Реакции",
33
33
  "Message deleted": "Сообщение удалено",
34
- "Message flagged": "",
35
- "Mute User": "",
36
- "Not supported": "",
34
+ "Message flagged": "Сообщение отмечено",
35
+ "Mute User": "Отключить пользователя",
36
+ "Not supported": "не поддерживается",
37
37
  "Nothing yet...": "Пока ничего нет...",
38
- "Ok": "",
38
+ "Ok": "",
39
39
  "Only visible to you": "Видно только вам",
40
40
  "Photo": "Фото",
41
- "Photos and Videos": "",
42
- "Pin to Conversation": "",
41
+ "Photos and Videos": "Фото и видео",
42
+ "Pin to Conversation": "Закрепить к беседе",
43
43
  "Pinned by": "Закреплено пользователем",
44
- "Please enable access to your photos and videos so you can share them.": "",
44
+ "Please enable access to your photos and videos so you can share them.": "Разрешите доступ к своим фотографиям и видео, чтобы вы могли ими поделиться.",
45
45
  "Please select a channel first": "Пожалуйста, сначала выберите канал",
46
46
  "Reconnecting...": "Переподключение...",
47
- "Reply": "",
47
+ "Reply": "Ответить",
48
48
  "Reply to Message": "Ответить на сообщение",
49
- "Resend": "",
49
+ "Resend": "Отправить",
50
50
  "Search GIFs": "Поиск GIF",
51
+ "Select More Photos": "Выбрать больше фотографий",
51
52
  "Send a message": "Отправить сообщение",
52
53
  "Sending links is not allowed in this conversation": "Отправка ссылок недоступна в этом чате",
53
54
  "Slow mode ON": "Медленный режим включен",
54
- "The message has been reported to a moderator.": "",
55
- "Thread Reply": "",
56
- "Unblock User": "",
57
- "Unknown User": "",
58
- "Unmute User": "",
59
- "Unpin from Conversation": "",
55
+ "The message has been reported to a moderator.": "Сообщение отправлено модератору.",
56
+ "Thread Reply": "Тема Ответить",
57
+ "Unblock User": "Разблокировать пользователя",
58
+ "Unknown User": "Неизвестный пользователь",
59
+ "Unmute User": "Включить микрофон",
60
+ "Unpin from Conversation": "Открепить от беседы",
60
61
  "Unread Messages": "Непрочитанные Сообщения",
61
62
  "Video": "видео",
62
63
  "You": "Вы",
63
64
  "You can't send messages in this channel": "Вы не можете отправлять сообщения в этот канал",
64
- "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
65
- "{{ index }} of {{ photoLength }}": "",
65
+ "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "{{ firstUser }} и еще {{ nonSelfUserLength }} пишут",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} из {{ photoLength }}",
66
67
  "{{ replyCount }} Replies": "{{ replyCount }} Ответов",
67
68
  "{{ replyCount }} Thread Replies": "{{replyCount}} Ответы в темах",
68
- "{{ user }} is typing": "",
69
+ "{{ user }} is typing": "{{ user }} пишет",
69
70
  "🏙 Attachment...": "🏙 Вложение..."
70
71
  }
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "1 Reply": "1 Cevap",
3
3
  "1 Thread Reply": "1 Konu Yanıtı",
4
- "Allow access to your Gallery": "",
4
+ "Allow access to your Gallery": "Galerinize erişime izin verin",
5
5
  "Also send to channel": "Kanala da gönder",
6
- "Are you sure you want to permanently delete this message?": "",
7
- "Block User": "",
8
- "Cancel": "",
9
- "Cannot Flag Message": "",
10
- "Copy Message": "",
11
- "Delete": "",
12
- "Delete Message": "",
13
- "Do you want to send a copy of this message to a moderator for further investigation?": "",
14
- "Edit Message": "",
15
- "Editing Message": "",
6
+ "Are you sure you want to permanently delete this message?": "Bu mesajı kalıcı olarak silmek istediğinizden emin misiniz?",
7
+ "Block User": "Kullanıcıyı engelle",
8
+ "Cancel": "İptal",
9
+ "Cannot Flag Message": "Raporlama Başarısız",
10
+ "Copy Message": "Mesajı Kopyala",
11
+ "Delete": "Sil",
12
+ "Delete Message": "Mesajı Sil",
13
+ "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?",
14
+ "Edit Message": "Mesajı Düzenle",
15
+ "Editing Message": "Mesaj Düzenleniyor",
16
16
  "Emoji matching": "Emoji eşleştirme",
17
17
  "Empty message...": "Boş mesaj...",
18
18
  "Error loading": "Yükleme hatası",
@@ -20,51 +20,52 @@
20
20
  "Error loading messages for this channel...": "Bu kanal için mesajlar yüklenirken hata oluştu...",
21
21
  "Error while loading, please reload/refresh": "Yüklenirken hata oluştu, lütfen tekrar deneyiniz",
22
22
  "File type not supported": "Dosya türü desteklenmiyor",
23
- "Flag": "",
24
- "Flag Message": "",
25
- "Flag action failed either due to a network issue or the message is already flagged": "",
23
+ "Flag": "Raporla",
24
+ "Flag Message": "Mesajı Raporla",
25
+ "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.",
26
26
  "Instant Commands": "Anlık Komutlar",
27
27
  "Links are disabled": "Bağlantılar devre dışı",
28
- "Loading channels...": "",
29
- "Loading messages...": "",
30
- "Loading...": "",
28
+ "Loading channels...": "Kanallar yükleniyor...",
29
+ "Loading messages...": "Mesajlar yükleniyor...",
30
+ "Loading...": "Yükleniyor...",
31
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.",
32
32
  "Message Reactions": "Mesaj Tepkileri",
33
33
  "Message deleted": "Mesaj silindi",
34
- "Message flagged": "",
35
- "Mute User": "",
36
- "Not supported": "",
34
+ "Message flagged": "Mesaj işaretlendi",
35
+ "Mute User": "Kullanıcıyı sessize al",
36
+ "Not supported": "Desteklenmiyor",
37
37
  "Nothing yet...": "Henüz değil...",
38
- "Ok": "",
38
+ "Ok": "Tamam",
39
39
  "Only visible to you": "Sadece siz görebilirsiniz",
40
40
  "Photo": "Fotoğraf",
41
- "Photos and Videos": "",
42
- "Pin to Conversation": "",
41
+ "Photos and Videos": "Fotoğraflar ve Videolar",
42
+ "Pin to Conversation": "Konuşmaya sabitle",
43
43
  "Pinned by": "Tarafından sabitlendi",
44
- "Please enable access to your photos and videos so you can share them.": "",
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
45
  "Please select a channel first": "Lütfen önce bir kanal seçiniz",
46
46
  "Reconnecting...": "Yeniden Bağlanılıyor...",
47
- "Reply": "",
47
+ "Reply": "Yanıtla",
48
48
  "Reply to Message": "Mesajı Yanıtla",
49
- "Resend": "",
49
+ "Resend": "Yeniden gönder",
50
50
  "Search GIFs": "GIF Ara",
51
+ "Select More Photos": "Daha Fazla Fotoğraf Seçin",
51
52
  "Send a message": "Mesaj gönder",
52
53
  "Sending links is not allowed in this conversation": "Bu konuşmada bağlantı göndermek desteklenmiyor",
53
54
  "Slow mode ON": "Yavaş Mod Açık",
54
- "The message has been reported to a moderator.": "",
55
- "Thread Reply": "",
56
- "Unblock User": "",
57
- "Unknown User": "",
58
- "Unmute User": "",
59
- "Unpin from Conversation": "",
55
+ "The message has been reported to a moderator.": "Mesaj moderatöre bildirildi.",
56
+ "Thread Reply": "Konu Yanıtı",
57
+ "Unblock User": "Kullanıcının engelini kaldır",
58
+ "Unknown User": "Bilinmeyen kullanıcı",
59
+ "Unmute User": "Kullanıcının sesini aç",
60
+ "Unpin from Conversation": "Sabitlemeyi kaldır",
60
61
  "Unread Messages": "Okunmamış Mesajlar",
61
62
  "Video": "Video",
62
63
  "You": "Sen",
63
64
  "You can't send messages in this channel": "Bu konuşmaya mesaj gönderemezsiniz",
64
- "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
65
- "{{ index }} of {{ photoLength }}": "",
65
+ "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "{{ firstUser }} ve {{ nonSelfUserLength }} kişi daha yazıyor",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} / {{ photoLength }}",
66
67
  "{{ replyCount }} Replies": "{{ replyCount }} Cevap",
67
68
  "{{ replyCount }} Thread Replies": "{{responseCount}} Konu Cevapı",
68
- "{{ user }} is typing": "",
69
+ "{{ user }} is typing": "{{ user }} yazıyor",
69
70
  "🏙 Attachment...": "🏙 Ek..."
70
71
  }
@@ -19,6 +19,8 @@ declare type OniOS14LibrarySelectionChange = (callback: () => void) => {
19
19
  unsubscribe: () => void;
20
20
  };
21
21
  export declare let oniOS14GalleryLibrarySelectionChange: OniOS14LibrarySelectionChange;
22
+ declare type iOS14RefreshGallerySelection = () => Promise<void>;
23
+ export declare let iOS14RefreshGallerySelection: iOS14RefreshGallerySelection;
22
24
  declare type GetPhotos = ({ after, first }: {
23
25
  first: number;
24
26
  after?: string;
@@ -28,6 +30,7 @@ declare type GetPhotos = ({ after, first }: {
28
30
  }>;
29
31
  endCursor: string;
30
32
  hasNextPage: boolean;
33
+ iOSLimited: boolean;
31
34
  }> | never;
32
35
  export declare let getPhotos: GetPhotos;
33
36
  declare type NetInfo = {
@@ -191,6 +194,7 @@ export declare type VideoType = {
191
194
  };
192
195
  export declare let Video: React.ComponentType<VideoType>;
193
196
  declare type Handlers = {
197
+ iOS14RefreshGallerySelection: iOS14RefreshGallerySelection;
194
198
  compressImage?: CompressImage;
195
199
  deleteFile?: DeleteFile;
196
200
  FlatList?: typeof DefaultFlatList;
@@ -161,6 +161,7 @@ export declare class Streami18n {
161
161
  "Reply to Message": string;
162
162
  Resend: string;
163
163
  "Search GIFs": string;
164
+ "Select More Photos": string;
164
165
  "Send a message": string;
165
166
  "Sending links is not allowed in this conversation": string;
166
167
  "Slow mode ON": string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "stream-chat-react-native-core",
3
3
  "description": "The official React Native and Expo components for Stream Chat, a service for building chat applications",
4
- "version": "5.21.0-beta.2",
4
+ "version": "5.21.0-beta.4",
5
5
  "author": {
6
6
  "company": "Stream.io Inc",
7
7
  "name": "Stream.io Inc"
@@ -1,5 +1,13 @@
1
1
  import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
2
- import { BackHandler, Dimensions, Keyboard, Platform, StatusBar, StyleSheet } from 'react-native';
2
+ import {
3
+ BackHandler,
4
+ Button,
5
+ Dimensions,
6
+ Keyboard,
7
+ Platform,
8
+ StatusBar,
9
+ StyleSheet,
10
+ } from 'react-native';
3
11
 
4
12
  import BottomSheet, { BottomSheetFlatList, BottomSheetHandleProps } from '@gorhom/bottom-sheet';
5
13
  import dayjs from 'dayjs';
@@ -11,7 +19,12 @@ import { renderAttachmentPickerItem } from './components/AttachmentPickerItem';
11
19
 
12
20
  import { useAttachmentPickerContext } from '../../contexts/attachmentPickerContext/AttachmentPickerContext';
13
21
  import { useTheme } from '../../contexts/themeContext/ThemeContext';
14
- import { getPhotos, oniOS14GalleryLibrarySelectionChange } from '../../native';
22
+ import { useTranslationContext } from '../../contexts/translationContext/TranslationContext';
23
+ import {
24
+ getPhotos,
25
+ iOS14RefreshGallerySelection,
26
+ oniOS14GalleryLibrarySelectionChange,
27
+ } from '../../native';
15
28
  import type { Asset } from '../../types/types';
16
29
  import { vh } from '../../utils/utils';
17
30
 
@@ -97,10 +110,12 @@ export const AttachmentPicker = React.forwardRef(
97
110
  const [currentIndex, setCurrentIndex] = useState(-1);
98
111
  const endCursorRef = useRef<string>();
99
112
  const [photoError, setPhotoError] = useState(false);
113
+ const [iOSLimited, setIosLimited] = useState(false);
100
114
  const hasNextPageRef = useRef(true);
101
115
  const [loadingPhotos, setLoadingPhotos] = useState(false);
102
116
  const [photos, setPhotos] = useState<Asset[]>([]);
103
117
  const attemptedToLoadPhotosOnOpenRef = useRef(false);
118
+ const { t } = useTranslationContext();
104
119
 
105
120
  const getMorePhotos = useCallback(async () => {
106
121
  if (
@@ -121,6 +136,7 @@ export const AttachmentPicker = React.forwardRef(
121
136
  setPhotos((prevPhotos) =>
122
137
  endCursor ? [...prevPhotos, ...results.assets] : results.assets,
123
138
  );
139
+ setIosLimited(results.iOSLimited);
124
140
  hasNextPageRef.current = !!results.hasNextPage;
125
141
  } catch (error) {
126
142
  setPhotoError(true);
@@ -299,6 +315,9 @@ export const AttachmentPicker = React.forwardRef(
299
315
  ref={ref}
300
316
  snapPoints={snapPoints}
301
317
  >
318
+ {iOSLimited && (
319
+ <Button onPress={iOS14RefreshGallerySelection} title={t('Select More Photos')} />
320
+ )}
302
321
  <BottomSheetFlatList
303
322
  contentContainerStyle={[
304
323
  styles.container,
@@ -108,6 +108,7 @@ import { Message as MessageDefault } from '../Message/Message';
108
108
  import { MessageAvatar as MessageAvatarDefault } from '../Message/MessageSimple/MessageAvatar';
109
109
  import { MessageContent as MessageContentDefault } from '../Message/MessageSimple/MessageContent';
110
110
  import { MessageDeleted as MessageDeletedDefault } from '../Message/MessageSimple/MessageDeleted';
111
+ import { MessageError as MessageErrorDefault } from '../Message/MessageSimple/MessageError';
111
112
  import { MessageFooter as MessageFooterDefault } from '../Message/MessageSimple/MessageFooter';
112
113
  import { MessagePinnedHeader as MessagePinnedHeaderDefault } from '../Message/MessageSimple/MessagePinnedHeader';
113
114
  import { MessageReplies as MessageRepliesDefault } from '../Message/MessageSimple/MessageReplies';
@@ -274,6 +275,7 @@ export type ChannelPropsWithContext<
274
275
  | 'MessageContent'
275
276
  | 'messageContentOrder'
276
277
  | 'MessageDeleted'
278
+ | 'MessageError'
277
279
  | 'MessageFooter'
278
280
  | 'MessageHeader'
279
281
  | 'MessageList'
@@ -495,6 +497,7 @@ const ChannelWithContext = <
495
497
  MessageContent = MessageContentDefault,
496
498
  messageContentOrder = ['quoted_reply', 'gallery', 'files', 'text', 'attachments'],
497
499
  MessageDeleted = MessageDeletedDefault,
500
+ MessageError = MessageErrorDefault,
498
501
  MessageFooter = MessageFooterDefault,
499
502
  MessageHeader,
500
503
  messageId,
@@ -1962,6 +1965,7 @@ const ChannelWithContext = <
1962
1965
  MessageContent,
1963
1966
  messageContentOrder,
1964
1967
  MessageDeleted,
1968
+ MessageError,
1965
1969
  MessageFooter,
1966
1970
  MessageHeader,
1967
1971
  MessageList,
@@ -57,6 +57,7 @@ export const useCreateMessagesContext = <
57
57
  MessageContent,
58
58
  messageContentOrder,
59
59
  MessageDeleted,
60
+ MessageError,
60
61
  MessageFooter,
61
62
  MessageHeader,
62
63
  MessageList,
@@ -151,6 +152,7 @@ export const useCreateMessagesContext = <
151
152
  MessageContent,
152
153
  messageContentOrder,
153
154
  MessageDeleted,
155
+ MessageError,
154
156
  MessageFooter,
155
157
  MessageHeader,
156
158
  MessageList,
@@ -19,7 +19,6 @@ import {
19
19
  useTranslationContext,
20
20
  } from '../../../contexts/translationContext/TranslationContext';
21
21
 
22
- import { Error } from '../../../icons';
23
22
  import type { DefaultStreamChatGenerics } from '../../../types/types';
24
23
  import { MessageStatusTypes, vw } from '../../../utils/utils';
25
24
 
@@ -88,6 +87,7 @@ export type MessageContentPropsWithContext<
88
87
  | 'MessageFooter'
89
88
  | 'MessageHeader'
90
89
  | 'MessageDeleted'
90
+ | 'MessageError'
91
91
  | 'MessageReplies'
92
92
  | 'MessageStatus'
93
93
  | 'onPressInMessage'
@@ -121,6 +121,7 @@ const MessageContentWithContext = <
121
121
  message,
122
122
  messageContentOrder,
123
123
  MessageDeleted,
124
+ MessageError,
124
125
  MessageFooter,
125
126
  MessageHeader,
126
127
  MessageReplies,
@@ -140,7 +141,7 @@ const MessageContentWithContext = <
140
141
 
141
142
  const {
142
143
  theme: {
143
- colors: { accent_red, blue_alice, grey_gainsboro, grey_whisper, transparent, white },
144
+ colors: { blue_alice, grey_gainsboro, grey_whisper, transparent, white },
144
145
  messageSimple: {
145
146
  content: {
146
147
  container: {
@@ -155,8 +156,6 @@ const MessageContentWithContext = <
155
156
  },
156
157
  containerInner,
157
158
  errorContainer,
158
- errorIcon,
159
- errorIconContainer,
160
159
  replyBorder,
161
160
  replyContainer,
162
161
  wrapper,
@@ -395,13 +394,7 @@ const MessageContentWithContext = <
395
394
  }
396
395
  })}
397
396
  </View>
398
- {error && (
399
- <View style={StyleSheet.absoluteFill} testID='message-error'>
400
- <View style={errorIconContainer}>
401
- <Error pathFill={accent_red} {...errorIcon} />
402
- </View>
403
- </View>
404
- )}
397
+ {error && <MessageError />}
405
398
  </View>
406
399
  <MessageReplies noBorder={noBorder} repliesCurveColor={repliesCurveColor} />
407
400
  <MessageFooter formattedDate={getDateText(formatDate)} isDeleted={!!isMessageTypeDeleted} />
@@ -580,6 +573,7 @@ export const MessageContent = <
580
573
  Gallery,
581
574
  isAttachmentEqual,
582
575
  MessageDeleted,
576
+ MessageError,
583
577
  MessageFooter,
584
578
  MessageHeader,
585
579
  MessageReplies,
@@ -609,6 +603,7 @@ export const MessageContent = <
609
603
  message,
610
604
  messageContentOrder,
611
605
  MessageDeleted,
606
+ MessageError,
612
607
  MessageFooter,
613
608
  MessageHeader,
614
609
  MessageReplies,
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { StyleProp, StyleSheet, View, ViewStyle } from 'react-native';
3
+
4
+ import { useTheme } from '../../../contexts/themeContext/ThemeContext';
5
+ import { Error } from '../../../icons';
6
+
7
+ export type MessageErrorProps = {
8
+ style?: StyleProp<ViewStyle>;
9
+ };
10
+
11
+ export const MessageError: React.FC<MessageErrorProps> = ({ style }) => {
12
+ const {
13
+ theme: {
14
+ colors: { accent_red },
15
+ messageSimple: {
16
+ content: { errorIcon, errorIconContainer },
17
+ },
18
+ },
19
+ } = useTheme();
20
+
21
+ return (
22
+ <View style={[StyleSheet.absoluteFill, style]} testID='message-error'>
23
+ <View style={errorIconContainer}>
24
+ <Error pathFill={accent_red} {...errorIcon} />
25
+ </View>
26
+ </View>
27
+ );
28
+ };
@@ -98,6 +98,7 @@ export * from './Message/Message';
98
98
  export * from './Message/MessageSimple/MessageAvatar';
99
99
  export * from './Message/MessageSimple/MessageContent';
100
100
  export * from './Message/MessageSimple/MessageDeleted';
101
+ export * from './Message/MessageSimple/MessageError';
101
102
  export * from './Message/MessageSimple/MessageFooter';
102
103
  export * from './Message/MessageSimple/MessagePinnedHeader';
103
104
  export * from './Message/MessageSimple/MessageReplies';
@@ -26,6 +26,7 @@ import type {
26
26
  import type { MessageAvatarProps } from '../../components/Message/MessageSimple/MessageAvatar';
27
27
  import type { MessageContentProps } from '../../components/Message/MessageSimple/MessageContent';
28
28
  import type { MessageDeletedProps } from '../../components/Message/MessageSimple/MessageDeleted';
29
+ import type { MessageErrorProps } from '../../components/Message/MessageSimple/MessageError';
29
30
  import type { MessageFooterProps } from '../../components/Message/MessageSimple/MessageFooter';
30
31
 
31
32
  import type { MessageRepliesProps } from '../../components/Message/MessageSimple/MessageReplies';
@@ -169,6 +170,10 @@ export type MessagesContextValue<
169
170
  * Defaults to: [MessageDeleted](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/MessageSimple/MessageDeleted.tsx)
170
171
  */
171
172
  MessageDeleted: React.ComponentType<MessageDeletedProps<StreamChatGenerics>>;
173
+ /**
174
+ * UI component for the MessageError.
175
+ */
176
+ MessageError: React.ComponentType<MessageErrorProps>;
172
177
  /**
173
178
  * Custom message footer component
174
179
  */
package/src/i18n/en.json CHANGED
@@ -22,7 +22,7 @@
22
22
  "File type not supported": "File type not supported",
23
23
  "Flag": "Flag",
24
24
  "Flag Message": "Flag Message",
25
- "Flag action failed either due to a network issue or the message is already flagged": "Flag action failed either due to a network issue or the message is already flagged",
25
+ "Flag action failed either due to a network issue or the message is already flagged": "Flag action failed either due to a network issue or the message is already flagged.",
26
26
  "Instant Commands": "Instant Commands",
27
27
  "Links are disabled": "Links are disabled",
28
28
  "Loading channels...": "Loading channels...",
@@ -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",