stream-chat-react-native-core 5.24.0-beta.5 → 5.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/Attachment/Attachment.js +22 -14
- package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
- package/lib/commonjs/components/Attachment/Card.js +11 -4
- package/lib/commonjs/components/Attachment/Card.js.map +1 -1
- package/lib/commonjs/components/Attachment/Gallery.js +24 -16
- package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
- package/lib/commonjs/components/Message/Message.js +14 -7
- package/lib/commonjs/components/Message/Message.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +22 -16
- package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +14 -8
- package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
- package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +10 -4
- package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +6 -1
- package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +9 -3
- package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
- package/lib/commonjs/contexts/messageContext/MessageContext.js +2 -2
- package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/commonjs/i18n/en.json +1 -1
- package/lib/commonjs/i18n/fr.json +54 -54
- package/lib/commonjs/i18n/hi.json +54 -54
- package/lib/commonjs/i18n/it.json +54 -54
- package/lib/commonjs/i18n/nl.json +54 -54
- package/lib/commonjs/i18n/ru.json +54 -54
- package/lib/commonjs/i18n/tr.json +54 -54
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/Attachment/Attachment.js +22 -14
- package/lib/module/components/Attachment/Attachment.js.map +1 -1
- package/lib/module/components/Attachment/Card.js +11 -4
- package/lib/module/components/Attachment/Card.js.map +1 -1
- package/lib/module/components/Attachment/Gallery.js +24 -16
- package/lib/module/components/Attachment/Gallery.js.map +1 -1
- package/lib/module/components/Message/Message.js +14 -7
- package/lib/module/components/Message/Message.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageContent.js +22 -16
- package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageSimple.js +14 -8
- package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
- package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +10 -4
- package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
- package/lib/module/components/Message/hooks/useCreateMessageContext.js +6 -1
- package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
- package/lib/module/components/MessageOverlay/MessageOverlay.js +9 -3
- package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
- package/lib/module/contexts/messageContext/MessageContext.js +2 -2
- package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
- package/lib/module/i18n/en.json +1 -1
- package/lib/module/i18n/fr.json +54 -54
- package/lib/module/i18n/hi.json +54 -54
- package/lib/module/i18n/it.json +54 -54
- package/lib/module/i18n/nl.json +54 -54
- package/lib/module/i18n/ru.json +54 -54
- package/lib/module/i18n/tr.json +54 -54
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/Attachment/Attachment.d.ts +2 -2
- package/lib/typescript/components/Attachment/Card.d.ts +2 -2
- package/lib/typescript/components/Attachment/Gallery.d.ts +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +1 -1
- package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +1 -1
- package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +1 -1
- package/lib/typescript/contexts/messageContext/MessageContext.d.ts +8 -2
- package/lib/typescript/i18n/en.json +1 -1
- package/lib/typescript/i18n/fr.json +54 -54
- package/lib/typescript/i18n/hi.json +54 -54
- package/lib/typescript/i18n/it.json +54 -54
- package/lib/typescript/i18n/nl.json +54 -54
- package/lib/typescript/i18n/ru.json +54 -54
- package/lib/typescript/i18n/tr.json +54 -54
- package/package.json +1 -1
- package/src/components/Attachment/Attachment.tsx +16 -2
- package/src/components/Attachment/Card.tsx +22 -4
- package/src/components/Attachment/Gallery.tsx +11 -0
- package/src/components/Message/Message.tsx +9 -0
- package/src/components/Message/MessageSimple/MessageContent.tsx +9 -0
- package/src/components/Message/MessageSimple/MessageSimple.tsx +9 -0
- package/src/components/Message/MessageSimple/MessageTextContainer.tsx +12 -2
- package/src/components/Message/hooks/useCreateMessageContext.ts +4 -0
- package/src/components/MessageOverlay/MessageOverlay.tsx +8 -0
- package/src/contexts/messageContext/MessageContext.tsx +7 -1
- package/src/i18n/en.json +1 -1
- package/src/i18n/fr.json +54 -54
- package/src/i18n/hi.json +54 -54
- package/src/i18n/it.json +54 -54
- package/src/i18n/nl.json +54 -54
- package/src/i18n/ru.json +54 -54
- package/src/i18n/tr.json +54 -54
- package/src/version.json +1 -1
|
@@ -1,79 +1,79 @@
|
|
|
1
1
|
{
|
|
2
2
|
"1 Reply": "1 Cevap",
|
|
3
|
-
"1 Thread Reply": "",
|
|
3
|
+
"1 Thread Reply": "1 Konu Yanıtı",
|
|
4
4
|
"Allow access to your Gallery": "Galerinize erişime izin verin",
|
|
5
5
|
"Allow camera access in device settings": "Cihaz ayarlarında kamera erişimine izin ver",
|
|
6
|
-
"Also send to channel": "",
|
|
7
|
-
"Are you sure you want to permanently delete this message?": "",
|
|
8
|
-
"Are you sure?": "",
|
|
9
|
-
"Block User": "",
|
|
10
|
-
"Cancel": "",
|
|
11
|
-
"Cannot Flag Message": "",
|
|
12
|
-
"Consider how your comment might make others feel and be sure to follow our Community Guidelines": "",
|
|
13
|
-
"Copy Message": "",
|
|
14
|
-
"Delete": "",
|
|
15
|
-
"Delete Message": "",
|
|
6
|
+
"Also send to channel": "Kanala da gönder",
|
|
7
|
+
"Are you sure you want to permanently delete this message?": "Bu mesajı kalıcı olarak silmek istediğinizden emin misiniz?",
|
|
8
|
+
"Are you sure?": "Emin misiniz?",
|
|
9
|
+
"Block User": "Kullanıcıyı engelle",
|
|
10
|
+
"Cancel": "İptal",
|
|
11
|
+
"Cannot Flag Message": "Raporlama Başarısız",
|
|
12
|
+
"Consider how your comment might make others feel and be sure to follow our Community Guidelines": "Yorumunuzun diğerlerini nasıl hissettirebileceğini düşünün ve topluluk kurallarımızı takip ettiğinizden emin olun",
|
|
13
|
+
"Copy Message": "Mesajı Kopyala",
|
|
14
|
+
"Delete": "Sil",
|
|
15
|
+
"Delete Message": "Mesajı Sil",
|
|
16
16
|
"Device camera is used to take photos or videos.": "Cihaz kamerası fotoğraf veya video çekmek için kullanılır.",
|
|
17
|
-
"Do you want to send a copy of this message to a moderator for further investigation?": "",
|
|
18
|
-
"Edit Message": "",
|
|
17
|
+
"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?",
|
|
18
|
+
"Edit Message": "Mesajı Düzenle",
|
|
19
19
|
"Editing Message": "Mesaj Düzenleniyor",
|
|
20
20
|
"Emoji matching": "Emoji eşleştirme",
|
|
21
|
-
"Empty message...": "",
|
|
22
|
-
"Error loading": "",
|
|
23
|
-
"Error loading channel list...": "",
|
|
24
|
-
"Error loading messages for this channel...": "",
|
|
25
|
-
"Error while loading, please reload/refresh": "",
|
|
26
|
-
"File type not supported": "",
|
|
27
|
-
"Flag": "",
|
|
28
|
-
"Flag Message": "",
|
|
29
|
-
"Flag action failed either due to a network issue or the message is already flagged": "",
|
|
30
|
-
"How about sending your first message to a friend?": "",
|
|
21
|
+
"Empty message...": "Boş mesaj...",
|
|
22
|
+
"Error loading": "Yükleme hatası",
|
|
23
|
+
"Error loading channel list...": "Kanal listesi yüklenirken hata oluştu...",
|
|
24
|
+
"Error loading messages for this channel...": "Bu kanal için mesajlar yüklenirken hata oluştu...",
|
|
25
|
+
"Error while loading, please reload/refresh": "Yüklenirken hata oluştu, lütfen tekrar deneyiniz",
|
|
26
|
+
"File type not supported": "Dosya türü desteklenmiyor",
|
|
27
|
+
"Flag": "Raporla",
|
|
28
|
+
"Flag Message": "Mesajı Raporla",
|
|
29
|
+
"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.",
|
|
30
|
+
"How about sending your first message to a friend?": "İlk mesajınızı bir arkadaşınıza göndermeye ne dersiniz?",
|
|
31
31
|
"Instant Commands": "Anlık Komutlar",
|
|
32
|
-
"Let's start chatting!": "",
|
|
33
|
-
"Links are disabled": "",
|
|
32
|
+
"Let's start chatting!": "Haydi sohbete başlayalım!",
|
|
33
|
+
"Links are disabled": "Bağlantılar devre dışı",
|
|
34
34
|
"Loading channels...": "Kanallar yükleniyor...",
|
|
35
35
|
"Loading messages...": "Mesajlar yükleniyor...",
|
|
36
36
|
"Loading...": "Yükleniyor...",
|
|
37
|
-
"Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
|
|
38
|
-
"Message Reactions": "",
|
|
39
|
-
"Message deleted": "",
|
|
40
|
-
"Message flagged": "",
|
|
41
|
-
"Mute User": "",
|
|
37
|
+
"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.",
|
|
38
|
+
"Message Reactions": "Mesaj Tepkileri",
|
|
39
|
+
"Message deleted": "Mesaj silindi",
|
|
40
|
+
"Message flagged": "Mesaj işaretlendi",
|
|
41
|
+
"Mute User": "Kullanıcıyı sessize al",
|
|
42
42
|
"Not supported": "Desteklenmiyor",
|
|
43
|
-
"Nothing yet...": "",
|
|
44
|
-
"Ok": "",
|
|
45
|
-
"Only visible to you": "",
|
|
43
|
+
"Nothing yet...": "Henüz değil...",
|
|
44
|
+
"Ok": "Tamam",
|
|
45
|
+
"Only visible to you": "Sadece siz görebilirsiniz",
|
|
46
46
|
"Open Settings": "Ayarları aç",
|
|
47
|
-
"Photo": "",
|
|
47
|
+
"Photo": "Fotoğraf",
|
|
48
48
|
"Photos and Videos": "Fotoğraflar ve Videolar",
|
|
49
|
-
"Pin to Conversation": "",
|
|
50
|
-
"Pinned by": "",
|
|
49
|
+
"Pin to Conversation": "Konuşmaya sabitle",
|
|
50
|
+
"Pinned by": "Tarafından sabitlendi",
|
|
51
51
|
"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.",
|
|
52
52
|
"Please select a channel first": "Lütfen önce bir kanal seçiniz",
|
|
53
|
-
"Reconnecting...": "",
|
|
54
|
-
"Reply": "",
|
|
53
|
+
"Reconnecting...": "Yeniden Bağlanılıyor...",
|
|
54
|
+
"Reply": "Yanıtla",
|
|
55
55
|
"Reply to Message": "Mesajı Yanıtla",
|
|
56
|
-
"Resend": "",
|
|
56
|
+
"Resend": "Yeniden gönder",
|
|
57
57
|
"Search GIFs": "GIF Ara",
|
|
58
58
|
"Select More Photos": "Daha Fazla Fotoğraf Seçin",
|
|
59
|
-
"Send Anyway": "",
|
|
59
|
+
"Send Anyway": "Yine de Gönder",
|
|
60
60
|
"Send a message": "Mesaj gönder",
|
|
61
|
-
"Sending links is not allowed in this conversation": "",
|
|
61
|
+
"Sending links is not allowed in this conversation": "Bu konuşmada bağlantı göndermek desteklenmiyor",
|
|
62
62
|
"Slow mode ON": "Yavaş Mod Açık",
|
|
63
|
-
"The message has been reported to a moderator.": "",
|
|
64
|
-
"Thread Reply": "",
|
|
65
|
-
"Unblock User": "",
|
|
63
|
+
"The message has been reported to a moderator.": "Mesaj moderatöre bildirildi.",
|
|
64
|
+
"Thread Reply": "Konu Yanıtı",
|
|
65
|
+
"Unblock User": "Kullanıcının engelini kaldır",
|
|
66
66
|
"Unknown User": "Bilinmeyen kullanıcı",
|
|
67
|
-
"Unmute User": "",
|
|
68
|
-
"Unpin from Conversation": "",
|
|
69
|
-
"Unread Messages": "",
|
|
70
|
-
"Video": "",
|
|
71
|
-
"You": "",
|
|
72
|
-
"You can't send messages in this channel": "",
|
|
73
|
-
"{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
|
|
67
|
+
"Unmute User": "Kullanıcının sesini aç",
|
|
68
|
+
"Unpin from Conversation": "Sabitlemeyi kaldır",
|
|
69
|
+
"Unread Messages": "Okunmamış Mesajlar",
|
|
70
|
+
"Video": "Video",
|
|
71
|
+
"You": "Sen",
|
|
72
|
+
"You can't send messages in this channel": "Bu konuşmaya mesaj gönderemezsiniz",
|
|
73
|
+
"{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "{{ firstUser }} ve {{ nonSelfUserLength }} kişi daha yazıyor",
|
|
74
74
|
"{{ index }} of {{ photoLength }}": "{{ index }} / {{ photoLength }}",
|
|
75
75
|
"{{ replyCount }} Replies": "{{ replyCount }} Cevap",
|
|
76
|
-
"{{ replyCount }} Thread Replies": "",
|
|
77
|
-
"{{ user }} is typing": "",
|
|
78
|
-
"🏙 Attachment...": ""
|
|
76
|
+
"{{ replyCount }} Thread Replies": "{{responseCount}} Konu Cevapı",
|
|
77
|
+
"{{ user }} is typing": "{{ user }} yazıyor",
|
|
78
|
+
"🏙 Attachment...": "🏙 Ek..."
|
|
79
79
|
}
|
|
@@ -32,7 +32,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
32
32
|
__self: _this,
|
|
33
33
|
__source: {
|
|
34
34
|
fileName: _jsxFileName,
|
|
35
|
-
lineNumber:
|
|
35
|
+
lineNumber: 59,
|
|
36
36
|
columnNumber: 12
|
|
37
37
|
}
|
|
38
38
|
});
|
|
@@ -42,7 +42,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
42
42
|
__self: _this,
|
|
43
43
|
__source: {
|
|
44
44
|
fileName: _jsxFileName,
|
|
45
|
-
lineNumber:
|
|
45
|
+
lineNumber: 63,
|
|
46
46
|
columnNumber: 12
|
|
47
47
|
}
|
|
48
48
|
}));
|
|
@@ -53,7 +53,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
53
53
|
__self: _this,
|
|
54
54
|
__source: {
|
|
55
55
|
fileName: _jsxFileName,
|
|
56
|
-
lineNumber:
|
|
56
|
+
lineNumber: 69,
|
|
57
57
|
columnNumber: 9
|
|
58
58
|
}
|
|
59
59
|
}), hasAttachmentActions && _react["default"].createElement(AttachmentActions, (0, _extends2["default"])({
|
|
@@ -62,7 +62,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
62
62
|
__self: _this,
|
|
63
63
|
__source: {
|
|
64
64
|
fileName: _jsxFileName,
|
|
65
|
-
lineNumber:
|
|
65
|
+
lineNumber: 71,
|
|
66
66
|
columnNumber: 11
|
|
67
67
|
}
|
|
68
68
|
})));
|
|
@@ -73,7 +73,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
73
73
|
__self: _this,
|
|
74
74
|
__source: {
|
|
75
75
|
fileName: _jsxFileName,
|
|
76
|
-
lineNumber:
|
|
76
|
+
lineNumber: 80,
|
|
77
77
|
columnNumber: 9
|
|
78
78
|
}
|
|
79
79
|
}), hasAttachmentActions && _react["default"].createElement(AttachmentActions, (0, _extends2["default"])({
|
|
@@ -82,7 +82,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
82
82
|
__self: _this,
|
|
83
83
|
__source: {
|
|
84
84
|
fileName: _jsxFileName,
|
|
85
|
-
lineNumber:
|
|
85
|
+
lineNumber: 82,
|
|
86
86
|
columnNumber: 11
|
|
87
87
|
}
|
|
88
88
|
}))) : _react["default"].createElement(FileAttachment, {
|
|
@@ -90,7 +90,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
90
90
|
__self: _this,
|
|
91
91
|
__source: {
|
|
92
92
|
fileName: _jsxFileName,
|
|
93
|
-
lineNumber:
|
|
93
|
+
lineNumber: 86,
|
|
94
94
|
columnNumber: 7
|
|
95
95
|
}
|
|
96
96
|
});
|
|
@@ -101,7 +101,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
101
101
|
__self: _this,
|
|
102
102
|
__source: {
|
|
103
103
|
fileName: _jsxFileName,
|
|
104
|
-
lineNumber:
|
|
104
|
+
lineNumber: 91,
|
|
105
105
|
columnNumber: 12
|
|
106
106
|
}
|
|
107
107
|
});
|
|
@@ -111,7 +111,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
111
111
|
__self: _this,
|
|
112
112
|
__source: {
|
|
113
113
|
fileName: _jsxFileName,
|
|
114
|
-
lineNumber:
|
|
114
|
+
lineNumber: 97,
|
|
115
115
|
columnNumber: 9
|
|
116
116
|
}
|
|
117
117
|
})), _react["default"].createElement(AttachmentActions, (0, _extends2["default"])({
|
|
@@ -120,7 +120,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
120
120
|
__self: _this,
|
|
121
121
|
__source: {
|
|
122
122
|
fileName: _jsxFileName,
|
|
123
|
-
lineNumber:
|
|
123
|
+
lineNumber: 98,
|
|
124
124
|
columnNumber: 9
|
|
125
125
|
}
|
|
126
126
|
})));
|
|
@@ -129,7 +129,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
129
129
|
__self: _this,
|
|
130
130
|
__source: {
|
|
131
131
|
fileName: _jsxFileName,
|
|
132
|
-
lineNumber:
|
|
132
|
+
lineNumber: 102,
|
|
133
133
|
columnNumber: 12
|
|
134
134
|
}
|
|
135
135
|
}));
|
|
@@ -138,13 +138,17 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
|
|
|
138
138
|
var areEqual = function areEqual(prevProps, nextProps) {
|
|
139
139
|
var _prevAttachment$actio, _nextAttachment$actio;
|
|
140
140
|
var prevAttachment = prevProps.attachment,
|
|
141
|
-
isAttachmentEqual = prevProps.isAttachmentEqual
|
|
142
|
-
|
|
141
|
+
isAttachmentEqual = prevProps.isAttachmentEqual,
|
|
142
|
+
prevMyMessageTheme = prevProps.myMessageTheme;
|
|
143
|
+
var nextAttachment = nextProps.attachment,
|
|
144
|
+
nextMyMessageTheme = nextProps.myMessageTheme;
|
|
143
145
|
var attachmentEqual = ((_prevAttachment$actio = prevAttachment.actions) == null ? void 0 : _prevAttachment$actio.length) === ((_nextAttachment$actio = nextAttachment.actions) == null ? void 0 : _nextAttachment$actio.length) && prevAttachment.image_url === nextAttachment.image_url && prevAttachment.thumb_url === nextAttachment.thumb_url;
|
|
144
146
|
if (!attachmentEqual) return false;
|
|
145
147
|
if (isAttachmentEqual) {
|
|
146
148
|
return isAttachmentEqual(prevAttachment, nextAttachment);
|
|
147
149
|
}
|
|
150
|
+
var messageThemeEqual = JSON.stringify(prevMyMessageTheme) === JSON.stringify(nextMyMessageTheme);
|
|
151
|
+
if (!messageThemeEqual) return false;
|
|
148
152
|
return true;
|
|
149
153
|
};
|
|
150
154
|
var MemoizedAttachment = _react["default"].memo(AttachmentWithContext, areEqual);
|
|
@@ -156,6 +160,7 @@ var Attachment = function Attachment(props) {
|
|
|
156
160
|
PropGallery = props.Gallery,
|
|
157
161
|
PropGiphy = props.Giphy,
|
|
158
162
|
PropGiphyVersion = props.giphyVersion,
|
|
163
|
+
PropMyMessageTheme = props.myMessageTheme,
|
|
159
164
|
PropUrlPreview = props.UrlPreview;
|
|
160
165
|
var _useMessagesContext = (0, _MessagesContext.useMessagesContext)(),
|
|
161
166
|
ContextAttachmentActions = _useMessagesContext.AttachmentActions,
|
|
@@ -165,6 +170,7 @@ var Attachment = function Attachment(props) {
|
|
|
165
170
|
ContextGiphy = _useMessagesContext.Giphy,
|
|
166
171
|
ContextGiphyVersion = _useMessagesContext.giphyVersion,
|
|
167
172
|
isAttachmentEqual = _useMessagesContext.isAttachmentEqual,
|
|
173
|
+
ContextMyMessageTheme = _useMessagesContext.myMessageTheme,
|
|
168
174
|
ContextUrlPreview = _useMessagesContext.UrlPreview;
|
|
169
175
|
if (!attachment) {
|
|
170
176
|
return null;
|
|
@@ -176,6 +182,7 @@ var Attachment = function Attachment(props) {
|
|
|
176
182
|
var Giphy = PropGiphy || ContextGiphy || _Giphy.Giphy;
|
|
177
183
|
var UrlPreview = PropUrlPreview || ContextUrlPreview || _Card.Card;
|
|
178
184
|
var giphyVersion = PropGiphyVersion || ContextGiphyVersion;
|
|
185
|
+
var myMessageTheme = PropMyMessageTheme || ContextMyMessageTheme;
|
|
179
186
|
return _react["default"].createElement(MemoizedAttachment, {
|
|
180
187
|
attachment: attachment,
|
|
181
188
|
AttachmentActions: AttachmentActions,
|
|
@@ -185,11 +192,12 @@ var Attachment = function Attachment(props) {
|
|
|
185
192
|
Giphy: Giphy,
|
|
186
193
|
giphyVersion: giphyVersion,
|
|
187
194
|
isAttachmentEqual: isAttachmentEqual,
|
|
195
|
+
myMessageTheme: myMessageTheme,
|
|
188
196
|
UrlPreview: UrlPreview,
|
|
189
197
|
__self: _this,
|
|
190
198
|
__source: {
|
|
191
199
|
fileName: _jsxFileName,
|
|
192
|
-
lineNumber:
|
|
200
|
+
lineNumber: 204,
|
|
193
201
|
columnNumber: 5
|
|
194
202
|
}
|
|
195
203
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_AttachmentActions","_Card","_FileAttachment","_Gallery","_Giphy","_MessagesContext","_native","_this","_jsxFileName","AttachmentWithContext","props","_attachment$actions","attachment","AttachmentActions","Card","FileAttachment","Gallery","Giphy","giphyVersion","UrlPreview","hasAttachmentActions","actions","length","type","createElement","__self","__source","fileName","lineNumber","columnNumber","og_scrape_url","title_link","_extends2","Fragment","images","key","id","isVideoPackageAvailable","videos","areEqual","prevProps","nextProps","_prevAttachment$actio","_nextAttachment$actio","prevAttachment","isAttachmentEqual","nextAttachment","attachmentEqual","image_url","thumb_url","MemoizedAttachment","React","memo","Attachment","PropAttachmentActions","PropCard","PropFileAttachment","PropGallery","PropGiphy","PropGiphyVersion","PropUrlPreview","_useMessagesContext","useMessagesContext","ContextAttachmentActions","ContextCard","ContextFileAttachment","ContextGallery","ContextGiphy","ContextGiphyVersion","ContextUrlPreview","AttachmentActionsDefault","CardDefault","FileAttachmentDefault","GalleryDefault","GiphyDefault","exports"],"sources":["Attachment.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { Attachment as AttachmentType } from 'stream-chat';\n\nimport { AttachmentActions as AttachmentActionsDefault } from '../../components/Attachment/AttachmentActions';\nimport { Card as CardDefault } from '../../components/Attachment/Card';\nimport { FileAttachment as FileAttachmentDefault } from '../../components/Attachment/FileAttachment';\nimport { Gallery as GalleryDefault } from '../../components/Attachment/Gallery';\nimport { Giphy as GiphyDefault } from '../../components/Attachment/Giphy';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { isVideoPackageAvailable } from '../../native';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\nexport type ActionHandler = (name: string, value: string) => void;\n\nexport type AttachmentPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessagesContextValue<StreamChatGenerics>,\n | 'AttachmentActions'\n | 'Card'\n | 'FileAttachment'\n | 'Gallery'\n | 'giphyVersion'\n | 'Giphy'\n | 'isAttachmentEqual'\n | 'UrlPreview'\n> & {\n /**\n * The attachment to render\n */\n attachment: AttachmentType<StreamChatGenerics>;\n};\n\nconst AttachmentWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AttachmentPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n attachment,\n AttachmentActions,\n Card,\n FileAttachment,\n Gallery,\n Giphy,\n giphyVersion,\n UrlPreview,\n } = props;\n\n const hasAttachmentActions = !!attachment.actions?.length;\n\n if (attachment.type === 'giphy' || attachment.type === 'imgur') {\n return <Giphy attachment={attachment} giphyVersion={giphyVersion} />;\n }\n\n if (attachment.og_scrape_url || attachment.title_link) {\n return <UrlPreview {...attachment} />;\n }\n\n if (attachment.type === 'image') {\n return (\n <>\n <Gallery images={[attachment]} />\n {hasAttachmentActions && (\n <AttachmentActions key={`key-actions-${attachment.id}`} {...attachment} />\n )}\n </>\n );\n }\n\n if (attachment.type === 'video' && !attachment.og_scrape_url) {\n return isVideoPackageAvailable() ? (\n <>\n <Gallery videos={[attachment]} />\n {hasAttachmentActions && (\n <AttachmentActions key={`key-actions-${attachment.id}`} {...attachment} />\n )}\n </>\n ) : (\n <FileAttachment attachment={attachment} />\n );\n }\n\n if (attachment.type === 'file' || attachment.type === 'audio') {\n return <FileAttachment attachment={attachment} />;\n }\n\n if (hasAttachmentActions) {\n return (\n <>\n <Card {...attachment} />\n <AttachmentActions key={`key-actions-${attachment.id}`} {...attachment} />\n </>\n );\n } else {\n return <Card {...attachment} />;\n }\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AttachmentPropsWithContext<StreamChatGenerics>,\n nextProps: AttachmentPropsWithContext<StreamChatGenerics>,\n) => {\n const { attachment: prevAttachment, isAttachmentEqual } = prevProps;\n const { attachment: nextAttachment } = nextProps;\n\n const attachmentEqual =\n prevAttachment.actions?.length === nextAttachment.actions?.length &&\n prevAttachment.image_url === nextAttachment.image_url &&\n prevAttachment.thumb_url === nextAttachment.thumb_url;\n if (!attachmentEqual) return false;\n\n if (isAttachmentEqual) {\n return isAttachmentEqual(prevAttachment, nextAttachment);\n }\n\n return true;\n};\n\nconst MemoizedAttachment = React.memo(\n AttachmentWithContext,\n areEqual,\n) as typeof AttachmentWithContext;\n\nexport type AttachmentProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<\n Pick<\n MessagesContextValue<StreamChatGenerics>,\n | 'AttachmentActions'\n | 'Card'\n | 'FileAttachment'\n | 'Gallery'\n | 'Giphy'\n | 'giphyVersion'\n | 'UrlPreview'\n | 'isAttachmentEqual'\n >\n> &\n Pick<AttachmentPropsWithContext<StreamChatGenerics>, 'attachment'>;\n\n/**\n * Attachment - The message attachment\n */\nexport const Attachment = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AttachmentProps<StreamChatGenerics>,\n) => {\n const {\n attachment,\n AttachmentActions: PropAttachmentActions,\n Card: PropCard,\n FileAttachment: PropFileAttachment,\n Gallery: PropGallery,\n Giphy: PropGiphy,\n giphyVersion: PropGiphyVersion,\n UrlPreview: PropUrlPreview,\n } = props;\n\n const {\n AttachmentActions: ContextAttachmentActions,\n Card: ContextCard,\n FileAttachment: ContextFileAttachment,\n Gallery: ContextGallery,\n Giphy: ContextGiphy,\n giphyVersion: ContextGiphyVersion,\n isAttachmentEqual,\n UrlPreview: ContextUrlPreview,\n } = useMessagesContext<StreamChatGenerics>();\n\n if (!attachment) {\n return null;\n }\n\n const AttachmentActions =\n PropAttachmentActions || ContextAttachmentActions || AttachmentActionsDefault;\n const Card = PropCard || ContextCard || CardDefault;\n const FileAttachment = PropFileAttachment || ContextFileAttachment || FileAttachmentDefault;\n const Gallery = PropGallery || ContextGallery || GalleryDefault;\n const Giphy = PropGiphy || ContextGiphy || GiphyDefault;\n const UrlPreview = PropUrlPreview || ContextUrlPreview || CardDefault;\n const giphyVersion = PropGiphyVersion || ContextGiphyVersion;\n\n return (\n <MemoizedAttachment\n {...{\n attachment,\n AttachmentActions,\n Card,\n FileAttachment,\n Gallery,\n Giphy,\n giphyVersion,\n isAttachmentEqual,\n UrlPreview,\n }}\n />\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_AttachmentActions","_Card","_FileAttachment","_Gallery","_Giphy","_MessagesContext","_native","_this","_jsxFileName","AttachmentWithContext","props","_attachment$actions","attachment","AttachmentActions","Card","FileAttachment","Gallery","Giphy","giphyVersion","UrlPreview","hasAttachmentActions","actions","length","type","createElement","__self","__source","fileName","lineNumber","columnNumber","og_scrape_url","title_link","_extends2","Fragment","images","key","id","isVideoPackageAvailable","videos","areEqual","prevProps","nextProps","_prevAttachment$actio","_nextAttachment$actio","prevAttachment","isAttachmentEqual","prevMyMessageTheme","myMessageTheme","nextAttachment","nextMyMessageTheme","attachmentEqual","image_url","thumb_url","messageThemeEqual","JSON","stringify","MemoizedAttachment","React","memo","Attachment","PropAttachmentActions","PropCard","PropFileAttachment","PropGallery","PropGiphy","PropGiphyVersion","PropMyMessageTheme","PropUrlPreview","_useMessagesContext","useMessagesContext","ContextAttachmentActions","ContextCard","ContextFileAttachment","ContextGallery","ContextGiphy","ContextGiphyVersion","ContextMyMessageTheme","ContextUrlPreview","AttachmentActionsDefault","CardDefault","FileAttachmentDefault","GalleryDefault","GiphyDefault","exports"],"sources":["Attachment.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { Attachment as AttachmentType } from 'stream-chat';\n\nimport { AttachmentActions as AttachmentActionsDefault } from '../../components/Attachment/AttachmentActions';\nimport { Card as CardDefault } from '../../components/Attachment/Card';\nimport { FileAttachment as FileAttachmentDefault } from '../../components/Attachment/FileAttachment';\nimport { Gallery as GalleryDefault } from '../../components/Attachment/Gallery';\nimport { Giphy as GiphyDefault } from '../../components/Attachment/Giphy';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { isVideoPackageAvailable } from '../../native';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\n\nexport type ActionHandler = (name: string, value: string) => void;\n\nexport type AttachmentPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessagesContextValue<StreamChatGenerics>,\n | 'AttachmentActions'\n | 'Card'\n | 'FileAttachment'\n | 'Gallery'\n | 'giphyVersion'\n | 'Giphy'\n | 'isAttachmentEqual'\n | 'UrlPreview'\n | 'myMessageTheme'\n> & {\n /**\n * The attachment to render\n */\n attachment: AttachmentType<StreamChatGenerics>;\n};\n\nconst AttachmentWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AttachmentPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n attachment,\n AttachmentActions,\n Card,\n FileAttachment,\n Gallery,\n Giphy,\n giphyVersion,\n UrlPreview,\n } = props;\n\n const hasAttachmentActions = !!attachment.actions?.length;\n\n if (attachment.type === 'giphy' || attachment.type === 'imgur') {\n return <Giphy attachment={attachment} giphyVersion={giphyVersion} />;\n }\n\n if (attachment.og_scrape_url || attachment.title_link) {\n return <UrlPreview {...attachment} />;\n }\n\n if (attachment.type === 'image') {\n return (\n <>\n <Gallery images={[attachment]} />\n {hasAttachmentActions && (\n <AttachmentActions key={`key-actions-${attachment.id}`} {...attachment} />\n )}\n </>\n );\n }\n\n if (attachment.type === 'video' && !attachment.og_scrape_url) {\n return isVideoPackageAvailable() ? (\n <>\n <Gallery videos={[attachment]} />\n {hasAttachmentActions && (\n <AttachmentActions key={`key-actions-${attachment.id}`} {...attachment} />\n )}\n </>\n ) : (\n <FileAttachment attachment={attachment} />\n );\n }\n\n if (attachment.type === 'file' || attachment.type === 'audio') {\n return <FileAttachment attachment={attachment} />;\n }\n\n if (hasAttachmentActions) {\n return (\n <>\n <Card {...attachment} />\n <AttachmentActions key={`key-actions-${attachment.id}`} {...attachment} />\n </>\n );\n } else {\n return <Card {...attachment} />;\n }\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: AttachmentPropsWithContext<StreamChatGenerics>,\n nextProps: AttachmentPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n attachment: prevAttachment,\n isAttachmentEqual,\n myMessageTheme: prevMyMessageTheme,\n } = prevProps;\n const { attachment: nextAttachment, myMessageTheme: nextMyMessageTheme } = nextProps;\n\n const attachmentEqual =\n prevAttachment.actions?.length === nextAttachment.actions?.length &&\n prevAttachment.image_url === nextAttachment.image_url &&\n prevAttachment.thumb_url === nextAttachment.thumb_url;\n if (!attachmentEqual) return false;\n\n if (isAttachmentEqual) {\n return isAttachmentEqual(prevAttachment, nextAttachment);\n }\n\n const messageThemeEqual =\n JSON.stringify(prevMyMessageTheme) === JSON.stringify(nextMyMessageTheme);\n if (!messageThemeEqual) return false;\n\n return true;\n};\n\nconst MemoizedAttachment = React.memo(\n AttachmentWithContext,\n areEqual,\n) as typeof AttachmentWithContext;\n\nexport type AttachmentProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<\n Pick<\n MessagesContextValue<StreamChatGenerics>,\n | 'AttachmentActions'\n | 'Card'\n | 'FileAttachment'\n | 'Gallery'\n | 'Giphy'\n | 'giphyVersion'\n | 'myMessageTheme'\n | 'UrlPreview'\n | 'isAttachmentEqual'\n >\n> &\n Pick<AttachmentPropsWithContext<StreamChatGenerics>, 'attachment'>;\n\n/**\n * Attachment - The message attachment\n */\nexport const Attachment = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: AttachmentProps<StreamChatGenerics>,\n) => {\n const {\n attachment,\n AttachmentActions: PropAttachmentActions,\n Card: PropCard,\n FileAttachment: PropFileAttachment,\n Gallery: PropGallery,\n Giphy: PropGiphy,\n giphyVersion: PropGiphyVersion,\n myMessageTheme: PropMyMessageTheme,\n UrlPreview: PropUrlPreview,\n } = props;\n\n const {\n AttachmentActions: ContextAttachmentActions,\n Card: ContextCard,\n FileAttachment: ContextFileAttachment,\n Gallery: ContextGallery,\n Giphy: ContextGiphy,\n giphyVersion: ContextGiphyVersion,\n isAttachmentEqual,\n myMessageTheme: ContextMyMessageTheme,\n UrlPreview: ContextUrlPreview,\n } = useMessagesContext<StreamChatGenerics>();\n\n if (!attachment) {\n return null;\n }\n\n const AttachmentActions =\n PropAttachmentActions || ContextAttachmentActions || AttachmentActionsDefault;\n const Card = PropCard || ContextCard || CardDefault;\n const FileAttachment = PropFileAttachment || ContextFileAttachment || FileAttachmentDefault;\n const Gallery = PropGallery || ContextGallery || GalleryDefault;\n const Giphy = PropGiphy || ContextGiphy || GiphyDefault;\n const UrlPreview = PropUrlPreview || ContextUrlPreview || CardDefault;\n const giphyVersion = PropGiphyVersion || ContextGiphyVersion;\n const myMessageTheme = PropMyMessageTheme || ContextMyMessageTheme;\n\n return (\n <MemoizedAttachment\n {...{\n attachment,\n AttachmentActions,\n Card,\n FileAttachment,\n Gallery,\n Giphy,\n giphyVersion,\n isAttachmentEqual,\n myMessageTheme,\n UrlPreview,\n }}\n />\n );\n};\n"],"mappings":"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"}
|
|
@@ -311,9 +311,14 @@ var CardWithContext = function CardWithContext(props) {
|
|
|
311
311
|
}
|
|
312
312
|
}, text))));
|
|
313
313
|
};
|
|
314
|
-
var
|
|
314
|
+
var areEqual = function areEqual(prevProps, nextProps) {
|
|
315
|
+
var prevMyMessageTheme = prevProps.myMessageTheme;
|
|
316
|
+
var nextMyMessageTheme = nextProps.myMessageTheme;
|
|
317
|
+
var messageThemeEqual = JSON.stringify(prevMyMessageTheme) === JSON.stringify(nextMyMessageTheme);
|
|
318
|
+
if (!messageThemeEqual) return false;
|
|
315
319
|
return true;
|
|
316
|
-
}
|
|
320
|
+
};
|
|
321
|
+
var MemoizedCard = _react["default"].memo(CardWithContext, areEqual);
|
|
317
322
|
var Card = function Card(props) {
|
|
318
323
|
var _useChatContext = (0, _ChatContext.useChatContext)(),
|
|
319
324
|
ImageComponent = _useChatContext.ImageComponent;
|
|
@@ -327,7 +332,8 @@ var Card = function Card(props) {
|
|
|
327
332
|
additionalTouchableProps = _useMessagesContext.additionalTouchableProps,
|
|
328
333
|
CardCover = _useMessagesContext.CardCover,
|
|
329
334
|
CardFooter = _useMessagesContext.CardFooter,
|
|
330
|
-
CardHeader = _useMessagesContext.CardHeader
|
|
335
|
+
CardHeader = _useMessagesContext.CardHeader,
|
|
336
|
+
myMessageTheme = _useMessagesContext.myMessageTheme;
|
|
331
337
|
return _react["default"].createElement(MemoizedCard, (0, _extends2["default"])({
|
|
332
338
|
key: "" + (message == null ? void 0 : message.id) + (message == null ? void 0 : message.updated_at),
|
|
333
339
|
additionalTouchableProps: additionalTouchableProps,
|
|
@@ -337,6 +343,7 @@ var Card = function Card(props) {
|
|
|
337
343
|
channelId: message.cid,
|
|
338
344
|
ImageComponent: ImageComponent,
|
|
339
345
|
messageId: message.id,
|
|
346
|
+
myMessageTheme: myMessageTheme,
|
|
340
347
|
onLongPress: onLongPress,
|
|
341
348
|
onPress: onPress,
|
|
342
349
|
onPressIn: onPressIn,
|
|
@@ -345,7 +352,7 @@ var Card = function Card(props) {
|
|
|
345
352
|
__self: _this,
|
|
346
353
|
__source: {
|
|
347
354
|
fileName: _jsxFileName,
|
|
348
|
-
lineNumber:
|
|
355
|
+
lineNumber: 336,
|
|
349
356
|
columnNumber: 5
|
|
350
357
|
}
|
|
351
358
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_openUrlSafely","_ChatContext","_MessageContext","_MessagesContext","_ThemeContext","_Play","_utils","_ImageBackground","_excluded","_this","_jsxFileName","styles","StyleSheet","create","authorName","fontSize","fontWeight","authorNameContainer","borderTopRightRadius","paddingHorizontal","paddingTop","authorNameFooter","padding","authorNameMask","bottom","left","position","cardCover","alignItems","borderRadius","height","justifyContent","marginHorizontal","cardFooter","flexDirection","container","overflow","width","description","playButtonStyle","elevation","title","CardWithContext","props","additionalTouchableProps","author_name","CardCover","CardFooter","CardHeader","_props$ImageComponent","ImageComponent","Image","image_url","og_scrape_url","onLongPress","onPress","onPressIn","preventPress","_props$styles","stylesProp","text","thumb_url","type","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","black","blue_alice","transparent","white","_useTheme$theme$messa","messageSimple","card","authorNameFooterContainer","cover","_useTheme$theme$messa2","footer","titleStyle","footerStyle","_objectWithoutProperties2","noURI","roundedView","_useTheme$theme$messa3","playIcon","uri","defaultOnPress","openUrlSafely","isVideoCard","createElement","TouchableOpacity","_extends2","disabled","event","additionalInfo","url","emitter","defaultHandler","style","testID","__self","__source","fileName","lineNumber","columnNumber","View","ImageBackground","imageStyle","resizeMode","source","makeImageCompatibleUrl","backgroundColor","Play","pathFill","Text","color","borderLeftColor","numberOfLines","MemoizedCard","React","memo","Card","_useChatContext","useChatContext","_useMessageContext","useMessageContext","message","_useMessagesContext","useMessagesContext","key","id","updated_at","channelId","cid","messageId","exports","displayName"],"sources":["Card.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Image,\n ImageStyle,\n StyleProp,\n StyleSheet,\n Text,\n TextStyle,\n TouchableOpacity,\n View,\n ViewStyle,\n} from 'react-native';\n\nimport type { Attachment } from 'stream-chat';\n\nimport { openUrlSafely } from './utils/openUrlSafely';\n\nimport { ChatContextValue, useChatContext } from '../../contexts/chatContext/ChatContext';\n\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Play } from '../../icons/Play';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { makeImageCompatibleUrl } from '../../utils/utils';\nimport { ImageBackground } from '../ImageBackground';\n\nconst styles = StyleSheet.create({\n authorName: { fontSize: 14.5, fontWeight: '600' },\n authorNameContainer: {\n borderTopRightRadius: 15,\n paddingHorizontal: 8,\n paddingTop: 8,\n },\n authorNameFooter: {\n fontSize: 14.5,\n fontWeight: '600',\n padding: 8,\n },\n authorNameMask: {\n bottom: 0,\n left: 2,\n position: 'absolute',\n },\n cardCover: {\n alignItems: 'center',\n borderRadius: 8,\n height: 140,\n justifyContent: 'center',\n marginHorizontal: 2,\n },\n cardFooter: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n padding: 10,\n },\n container: {\n overflow: 'hidden',\n width: 256,\n },\n description: {\n fontSize: 12,\n marginHorizontal: 8,\n },\n playButtonStyle: {\n alignItems: 'center',\n borderRadius: 50,\n elevation: 2,\n height: 36,\n justifyContent: 'center',\n width: 36,\n },\n title: {\n fontSize: 12,\n marginHorizontal: 8,\n },\n});\n\nexport type CardPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Attachment<StreamChatGenerics> &\n Pick<ChatContextValue, 'ImageComponent'> &\n Pick<\n MessageContextValue<StreamChatGenerics>,\n 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'\n > &\n Pick<\n MessagesContextValue<StreamChatGenerics>,\n 'additionalTouchableProps' | 'CardCover' | 'CardFooter' | 'CardHeader'\n > & {\n channelId: string | undefined;\n messageId: string | undefined;\n styles?: Partial<{\n authorName: StyleProp<TextStyle>;\n authorNameContainer: StyleProp<ViewStyle>;\n authorNameFooter: StyleProp<TextStyle>;\n authorNameFooterContainer: StyleProp<ViewStyle>;\n authorNameMask: StyleProp<ViewStyle>;\n cardCover: StyleProp<ImageStyle>;\n cardFooter: StyleProp<ViewStyle>;\n container: StyleProp<ViewStyle>;\n description: StyleProp<TextStyle>;\n title: StyleProp<TextStyle>;\n }>;\n };\n\nconst CardWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: CardPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n additionalTouchableProps,\n author_name,\n CardCover,\n CardFooter,\n CardHeader,\n ImageComponent = Image,\n image_url,\n og_scrape_url,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n styles: stylesProp = {},\n text,\n thumb_url,\n title,\n type,\n } = props;\n\n const {\n theme: {\n colors: { accent_blue, black, blue_alice, transparent, white },\n messageSimple: {\n card: {\n authorName,\n authorNameContainer,\n authorNameFooter,\n authorNameFooterContainer,\n authorNameMask,\n container,\n cover,\n footer: { description, title: titleStyle, ...footerStyle },\n noURI,\n playButtonStyle: { roundedView },\n playIcon: { height, width },\n },\n },\n },\n } = useTheme();\n\n const uri = image_url || thumb_url;\n\n const defaultOnPress = () => openUrlSafely(og_scrape_url || uri);\n\n const isVideoCard = type === 'video' && og_scrape_url;\n\n return (\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n additionalInfo: { url: og_scrape_url },\n emitter: 'card',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n additionalInfo: { url: og_scrape_url },\n defaultHandler: defaultOnPress,\n emitter: 'card',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n additionalInfo: { url: og_scrape_url },\n defaultHandler: defaultOnPress,\n emitter: 'card',\n event,\n });\n }\n }}\n style={[styles.container, container, stylesProp.container]}\n testID='card-attachment'\n {...additionalTouchableProps}\n >\n {CardHeader && <CardHeader {...props} />}\n {CardCover && <CardCover {...props} />}\n {uri && !CardCover && (\n <View>\n <ImageBackground\n ImageComponent={ImageComponent}\n imageStyle={styles.cardCover}\n resizeMode='cover'\n source={{ uri: makeImageCompatibleUrl(uri) }}\n style={[styles.cardCover, cover, stylesProp.cardCover]}\n >\n {isVideoCard ? (\n <View style={[styles.playButtonStyle, roundedView, { backgroundColor: white }]}>\n <Play height={height} pathFill={black} width={width} />\n </View>\n ) : null}\n </ImageBackground>\n {author_name && (\n <View style={[styles.authorNameMask, authorNameMask, stylesProp.authorNameMask]}>\n <View\n style={[\n styles.authorNameContainer,\n { backgroundColor: blue_alice },\n authorNameContainer,\n stylesProp.authorNameContainer,\n ]}\n >\n <Text\n style={[\n styles.authorName,\n { color: accent_blue },\n authorName,\n stylesProp.authorName,\n ]}\n >\n {author_name}\n </Text>\n </View>\n </View>\n )}\n </View>\n )}\n {CardFooter ? (\n <CardFooter {...props} />\n ) : (\n <View style={[styles.cardFooter, footerStyle, stylesProp.cardFooter]}>\n <View\n style={[\n authorNameFooterContainer,\n { backgroundColor: transparent },\n !uri ? { borderLeftColor: accent_blue, ...noURI } : {},\n stylesProp.authorNameFooterContainer,\n ]}\n >\n {!uri && author_name && (\n <Text\n style={[\n styles.authorNameFooter,\n { color: accent_blue },\n authorNameFooter,\n stylesProp.authorNameFooter,\n ]}\n >\n {author_name}\n </Text>\n )}\n {title && (\n <Text\n numberOfLines={1}\n style={[styles.title, { color: black }, titleStyle, stylesProp.title]}\n >\n {title}\n </Text>\n )}\n {text && (\n <Text\n numberOfLines={3}\n style={[styles.description, { color: black }, description, stylesProp.description]}\n >\n {text}\n </Text>\n )}\n </View>\n </View>\n )}\n </TouchableOpacity>\n );\n};\n\nconst MemoizedCard = React.memo(CardWithContext, () => true) as typeof CardWithContext;\n\nexport type CardProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Attachment<StreamChatGenerics> &\n Partial<\n Pick<ChatContextValue<StreamChatGenerics>, 'ImageComponent'> &\n Pick<MessageContextValue<StreamChatGenerics>, 'onLongPress' | 'onPress' | 'onPressIn'> &\n Pick<\n MessagesContextValue<StreamChatGenerics>,\n 'additionalTouchableProps' | 'CardCover' | 'CardFooter' | 'CardHeader'\n >\n >;\n\n/**\n * UI component for card in attachments.\n */\nexport const Card = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: CardProps<StreamChatGenerics>,\n) => {\n const { ImageComponent } = useChatContext<StreamChatGenerics>();\n const { message, onLongPress, onPress, onPressIn, preventPress } =\n useMessageContext<StreamChatGenerics>();\n const { additionalTouchableProps, CardCover, CardFooter, CardHeader } =\n useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedCard\n key={`${message?.id}${message?.updated_at}`} // press listeners must change on message update, updating key ensures this\n {...{\n additionalTouchableProps,\n CardCover,\n CardFooter,\n CardHeader,\n channelId: message.cid,\n ImageComponent,\n messageId: message.id,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n }}\n {...props}\n />\n );\n};\n\nCard.displayName = 'Card{messageSimple{card}}';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_openUrlSafely","_ChatContext","_MessageContext","_MessagesContext","_ThemeContext","_Play","_utils","_ImageBackground","_excluded","_this","_jsxFileName","styles","StyleSheet","create","authorName","fontSize","fontWeight","authorNameContainer","borderTopRightRadius","paddingHorizontal","paddingTop","authorNameFooter","padding","authorNameMask","bottom","left","position","cardCover","alignItems","borderRadius","height","justifyContent","marginHorizontal","cardFooter","flexDirection","container","overflow","width","description","playButtonStyle","elevation","title","CardWithContext","props","additionalTouchableProps","author_name","CardCover","CardFooter","CardHeader","_props$ImageComponent","ImageComponent","Image","image_url","og_scrape_url","onLongPress","onPress","onPressIn","preventPress","_props$styles","stylesProp","text","thumb_url","type","_useTheme","useTheme","_useTheme$theme","theme","_useTheme$theme$color","colors","accent_blue","black","blue_alice","transparent","white","_useTheme$theme$messa","messageSimple","card","authorNameFooterContainer","cover","_useTheme$theme$messa2","footer","titleStyle","footerStyle","_objectWithoutProperties2","noURI","roundedView","_useTheme$theme$messa3","playIcon","uri","defaultOnPress","openUrlSafely","isVideoCard","createElement","TouchableOpacity","_extends2","disabled","event","additionalInfo","url","emitter","defaultHandler","style","testID","__self","__source","fileName","lineNumber","columnNumber","View","ImageBackground","imageStyle","resizeMode","source","makeImageCompatibleUrl","backgroundColor","Play","pathFill","Text","color","borderLeftColor","numberOfLines","areEqual","prevProps","nextProps","prevMyMessageTheme","myMessageTheme","nextMyMessageTheme","messageThemeEqual","JSON","stringify","MemoizedCard","React","memo","Card","_useChatContext","useChatContext","_useMessageContext","useMessageContext","message","_useMessagesContext","useMessagesContext","key","id","updated_at","channelId","cid","messageId","exports","displayName"],"sources":["Card.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Image,\n ImageStyle,\n StyleProp,\n StyleSheet,\n Text,\n TextStyle,\n TouchableOpacity,\n View,\n ViewStyle,\n} from 'react-native';\n\nimport type { Attachment } from 'stream-chat';\n\nimport { openUrlSafely } from './utils/openUrlSafely';\n\nimport { ChatContextValue, useChatContext } from '../../contexts/chatContext/ChatContext';\n\nimport {\n MessageContextValue,\n useMessageContext,\n} from '../../contexts/messageContext/MessageContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Play } from '../../icons/Play';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { makeImageCompatibleUrl } from '../../utils/utils';\nimport { ImageBackground } from '../ImageBackground';\n\nconst styles = StyleSheet.create({\n authorName: { fontSize: 14.5, fontWeight: '600' },\n authorNameContainer: {\n borderTopRightRadius: 15,\n paddingHorizontal: 8,\n paddingTop: 8,\n },\n authorNameFooter: {\n fontSize: 14.5,\n fontWeight: '600',\n padding: 8,\n },\n authorNameMask: {\n bottom: 0,\n left: 2,\n position: 'absolute',\n },\n cardCover: {\n alignItems: 'center',\n borderRadius: 8,\n height: 140,\n justifyContent: 'center',\n marginHorizontal: 2,\n },\n cardFooter: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n padding: 10,\n },\n container: {\n overflow: 'hidden',\n width: 256,\n },\n description: {\n fontSize: 12,\n marginHorizontal: 8,\n },\n playButtonStyle: {\n alignItems: 'center',\n borderRadius: 50,\n elevation: 2,\n height: 36,\n justifyContent: 'center',\n width: 36,\n },\n title: {\n fontSize: 12,\n marginHorizontal: 8,\n },\n});\n\nexport type CardPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Attachment<StreamChatGenerics> &\n Pick<ChatContextValue, 'ImageComponent'> &\n Pick<\n MessageContextValue<StreamChatGenerics>,\n 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'\n > &\n Pick<\n MessagesContextValue<StreamChatGenerics>,\n 'additionalTouchableProps' | 'CardCover' | 'CardFooter' | 'CardHeader' | 'myMessageTheme'\n > & {\n channelId: string | undefined;\n messageId: string | undefined;\n styles?: Partial<{\n authorName: StyleProp<TextStyle>;\n authorNameContainer: StyleProp<ViewStyle>;\n authorNameFooter: StyleProp<TextStyle>;\n authorNameFooterContainer: StyleProp<ViewStyle>;\n authorNameMask: StyleProp<ViewStyle>;\n cardCover: StyleProp<ImageStyle>;\n cardFooter: StyleProp<ViewStyle>;\n container: StyleProp<ViewStyle>;\n description: StyleProp<TextStyle>;\n title: StyleProp<TextStyle>;\n }>;\n };\n\nconst CardWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: CardPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n additionalTouchableProps,\n author_name,\n CardCover,\n CardFooter,\n CardHeader,\n ImageComponent = Image,\n image_url,\n og_scrape_url,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n styles: stylesProp = {},\n text,\n thumb_url,\n title,\n type,\n } = props;\n\n const {\n theme: {\n colors: { accent_blue, black, blue_alice, transparent, white },\n messageSimple: {\n card: {\n authorName,\n authorNameContainer,\n authorNameFooter,\n authorNameFooterContainer,\n authorNameMask,\n container,\n cover,\n footer: { description, title: titleStyle, ...footerStyle },\n noURI,\n playButtonStyle: { roundedView },\n playIcon: { height, width },\n },\n },\n },\n } = useTheme();\n\n const uri = image_url || thumb_url;\n\n const defaultOnPress = () => openUrlSafely(og_scrape_url || uri);\n\n const isVideoCard = type === 'video' && og_scrape_url;\n\n return (\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n additionalInfo: { url: og_scrape_url },\n emitter: 'card',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n additionalInfo: { url: og_scrape_url },\n defaultHandler: defaultOnPress,\n emitter: 'card',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n additionalInfo: { url: og_scrape_url },\n defaultHandler: defaultOnPress,\n emitter: 'card',\n event,\n });\n }\n }}\n style={[styles.container, container, stylesProp.container]}\n testID='card-attachment'\n {...additionalTouchableProps}\n >\n {CardHeader && <CardHeader {...props} />}\n {CardCover && <CardCover {...props} />}\n {uri && !CardCover && (\n <View>\n <ImageBackground\n ImageComponent={ImageComponent}\n imageStyle={styles.cardCover}\n resizeMode='cover'\n source={{ uri: makeImageCompatibleUrl(uri) }}\n style={[styles.cardCover, cover, stylesProp.cardCover]}\n >\n {isVideoCard ? (\n <View style={[styles.playButtonStyle, roundedView, { backgroundColor: white }]}>\n <Play height={height} pathFill={black} width={width} />\n </View>\n ) : null}\n </ImageBackground>\n {author_name && (\n <View style={[styles.authorNameMask, authorNameMask, stylesProp.authorNameMask]}>\n <View\n style={[\n styles.authorNameContainer,\n { backgroundColor: blue_alice },\n authorNameContainer,\n stylesProp.authorNameContainer,\n ]}\n >\n <Text\n style={[\n styles.authorName,\n { color: accent_blue },\n authorName,\n stylesProp.authorName,\n ]}\n >\n {author_name}\n </Text>\n </View>\n </View>\n )}\n </View>\n )}\n {CardFooter ? (\n <CardFooter {...props} />\n ) : (\n <View style={[styles.cardFooter, footerStyle, stylesProp.cardFooter]}>\n <View\n style={[\n authorNameFooterContainer,\n { backgroundColor: transparent },\n !uri ? { borderLeftColor: accent_blue, ...noURI } : {},\n stylesProp.authorNameFooterContainer,\n ]}\n >\n {!uri && author_name && (\n <Text\n style={[\n styles.authorNameFooter,\n { color: accent_blue },\n authorNameFooter,\n stylesProp.authorNameFooter,\n ]}\n >\n {author_name}\n </Text>\n )}\n {title && (\n <Text\n numberOfLines={1}\n style={[styles.title, { color: black }, titleStyle, stylesProp.title]}\n >\n {title}\n </Text>\n )}\n {text && (\n <Text\n numberOfLines={3}\n style={[styles.description, { color: black }, description, stylesProp.description]}\n >\n {text}\n </Text>\n )}\n </View>\n </View>\n )}\n </TouchableOpacity>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: CardPropsWithContext<StreamChatGenerics>,\n nextProps: CardPropsWithContext<StreamChatGenerics>,\n) => {\n const { myMessageTheme: prevMyMessageTheme } = prevProps;\n const { myMessageTheme: nextMyMessageTheme } = nextProps;\n\n const messageThemeEqual =\n JSON.stringify(prevMyMessageTheme) === JSON.stringify(nextMyMessageTheme);\n if (!messageThemeEqual) return false;\n\n return true;\n};\n\nconst MemoizedCard = React.memo(CardWithContext, areEqual) as typeof CardWithContext;\n\nexport type CardProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Attachment<StreamChatGenerics> &\n Partial<\n Pick<ChatContextValue<StreamChatGenerics>, 'ImageComponent'> &\n Pick<\n MessageContextValue<StreamChatGenerics>,\n 'onLongPress' | 'onPress' | 'onPressIn' | 'myMessageTheme'\n > &\n Pick<\n MessagesContextValue<StreamChatGenerics>,\n 'additionalTouchableProps' | 'CardCover' | 'CardFooter' | 'CardHeader'\n >\n >;\n\n/**\n * UI component for card in attachments.\n */\nexport const Card = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: CardProps<StreamChatGenerics>,\n) => {\n const { ImageComponent } = useChatContext<StreamChatGenerics>();\n const { message, onLongPress, onPress, onPressIn, preventPress } =\n useMessageContext<StreamChatGenerics>();\n const { additionalTouchableProps, CardCover, CardFooter, CardHeader, myMessageTheme } =\n useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedCard\n key={`${message?.id}${message?.updated_at}`} // press listeners must change on message update, updating key ensures this\n {...{\n additionalTouchableProps,\n CardCover,\n CardFooter,\n CardHeader,\n channelId: message.cid,\n ImageComponent,\n messageId: message.id,\n myMessageTheme,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n }}\n {...props}\n />\n );\n};\n\nCard.displayName = 'Card{messageSimple{card}}';\n"],"mappings":"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"}
|