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.
Files changed (90) hide show
  1. package/lib/commonjs/components/Attachment/Attachment.js +22 -14
  2. package/lib/commonjs/components/Attachment/Attachment.js.map +1 -1
  3. package/lib/commonjs/components/Attachment/Card.js +11 -4
  4. package/lib/commonjs/components/Attachment/Card.js.map +1 -1
  5. package/lib/commonjs/components/Attachment/Gallery.js +24 -16
  6. package/lib/commonjs/components/Attachment/Gallery.js.map +1 -1
  7. package/lib/commonjs/components/Message/Message.js +14 -7
  8. package/lib/commonjs/components/Message/Message.js.map +1 -1
  9. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +22 -16
  10. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  11. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js +14 -8
  12. package/lib/commonjs/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  13. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js +10 -4
  14. package/lib/commonjs/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  15. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js +6 -1
  16. package/lib/commonjs/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  17. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js +9 -3
  18. package/lib/commonjs/components/MessageOverlay/MessageOverlay.js.map +1 -1
  19. package/lib/commonjs/contexts/messageContext/MessageContext.js +2 -2
  20. package/lib/commonjs/contexts/messageContext/MessageContext.js.map +1 -1
  21. package/lib/commonjs/i18n/en.json +1 -1
  22. package/lib/commonjs/i18n/fr.json +54 -54
  23. package/lib/commonjs/i18n/hi.json +54 -54
  24. package/lib/commonjs/i18n/it.json +54 -54
  25. package/lib/commonjs/i18n/nl.json +54 -54
  26. package/lib/commonjs/i18n/ru.json +54 -54
  27. package/lib/commonjs/i18n/tr.json +54 -54
  28. package/lib/commonjs/version.json +1 -1
  29. package/lib/module/components/Attachment/Attachment.js +22 -14
  30. package/lib/module/components/Attachment/Attachment.js.map +1 -1
  31. package/lib/module/components/Attachment/Card.js +11 -4
  32. package/lib/module/components/Attachment/Card.js.map +1 -1
  33. package/lib/module/components/Attachment/Gallery.js +24 -16
  34. package/lib/module/components/Attachment/Gallery.js.map +1 -1
  35. package/lib/module/components/Message/Message.js +14 -7
  36. package/lib/module/components/Message/Message.js.map +1 -1
  37. package/lib/module/components/Message/MessageSimple/MessageContent.js +22 -16
  38. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  39. package/lib/module/components/Message/MessageSimple/MessageSimple.js +14 -8
  40. package/lib/module/components/Message/MessageSimple/MessageSimple.js.map +1 -1
  41. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js +10 -4
  42. package/lib/module/components/Message/MessageSimple/MessageTextContainer.js.map +1 -1
  43. package/lib/module/components/Message/hooks/useCreateMessageContext.js +6 -1
  44. package/lib/module/components/Message/hooks/useCreateMessageContext.js.map +1 -1
  45. package/lib/module/components/MessageOverlay/MessageOverlay.js +9 -3
  46. package/lib/module/components/MessageOverlay/MessageOverlay.js.map +1 -1
  47. package/lib/module/contexts/messageContext/MessageContext.js +2 -2
  48. package/lib/module/contexts/messageContext/MessageContext.js.map +1 -1
  49. package/lib/module/i18n/en.json +1 -1
  50. package/lib/module/i18n/fr.json +54 -54
  51. package/lib/module/i18n/hi.json +54 -54
  52. package/lib/module/i18n/it.json +54 -54
  53. package/lib/module/i18n/nl.json +54 -54
  54. package/lib/module/i18n/ru.json +54 -54
  55. package/lib/module/i18n/tr.json +54 -54
  56. package/lib/module/version.json +1 -1
  57. package/lib/typescript/components/Attachment/Attachment.d.ts +2 -2
  58. package/lib/typescript/components/Attachment/Card.d.ts +2 -2
  59. package/lib/typescript/components/Attachment/Gallery.d.ts +1 -1
  60. package/lib/typescript/components/Message/MessageSimple/MessageContent.d.ts +1 -1
  61. package/lib/typescript/components/Message/MessageSimple/MessageSimple.d.ts +1 -1
  62. package/lib/typescript/components/Message/MessageSimple/MessageTextContainer.d.ts +1 -1
  63. package/lib/typescript/components/Message/hooks/useCreateMessageContext.d.ts +1 -1
  64. package/lib/typescript/contexts/messageContext/MessageContext.d.ts +8 -2
  65. package/lib/typescript/i18n/en.json +1 -1
  66. package/lib/typescript/i18n/fr.json +54 -54
  67. package/lib/typescript/i18n/hi.json +54 -54
  68. package/lib/typescript/i18n/it.json +54 -54
  69. package/lib/typescript/i18n/nl.json +54 -54
  70. package/lib/typescript/i18n/ru.json +54 -54
  71. package/lib/typescript/i18n/tr.json +54 -54
  72. package/package.json +1 -1
  73. package/src/components/Attachment/Attachment.tsx +16 -2
  74. package/src/components/Attachment/Card.tsx +22 -4
  75. package/src/components/Attachment/Gallery.tsx +11 -0
  76. package/src/components/Message/Message.tsx +9 -0
  77. package/src/components/Message/MessageSimple/MessageContent.tsx +9 -0
  78. package/src/components/Message/MessageSimple/MessageSimple.tsx +9 -0
  79. package/src/components/Message/MessageSimple/MessageTextContainer.tsx +12 -2
  80. package/src/components/Message/hooks/useCreateMessageContext.ts +4 -0
  81. package/src/components/MessageOverlay/MessageOverlay.tsx +8 -0
  82. package/src/contexts/messageContext/MessageContext.tsx +7 -1
  83. package/src/i18n/en.json +1 -1
  84. package/src/i18n/fr.json +54 -54
  85. package/src/i18n/hi.json +54 -54
  86. package/src/i18n/it.json +54 -54
  87. package/src/i18n/nl.json +54 -54
  88. package/src/i18n/ru.json +54 -54
  89. package/src/i18n/tr.json +54 -54
  90. 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
  }
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "5.24.0-beta.5"
2
+ "version": "5.24.0"
3
3
  }
@@ -32,7 +32,7 @@ var AttachmentWithContext = function AttachmentWithContext(props) {
32
32
  __self: _this,
33
33
  __source: {
34
34
  fileName: _jsxFileName,
35
- lineNumber: 58,
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: 62,
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: 68,
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: 70,
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: 79,
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: 81,
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: 85,
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: 90,
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: 96,
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: 97,
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: 101,
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
- var nextAttachment = nextProps.attachment;
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: 191,
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":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAIA,IAAAC,kBAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,gBAAA,GAAAN,OAAA;AAIA,IAAAO,OAAA,GAAAP,OAAA;AAAuD,IAAAQ,KAAA;EAAAC,YAAA;AA0BvD,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAGzBC,KAAqD,EAClD;EAAA,IAAAC,mBAAA;EACH,IACEC,UAAU,GAQRF,KAAK,CARPE,UAAU;IACVC,iBAAiB,GAOfH,KAAK,CAPPG,iBAAiB;IACjBC,IAAI,GAMFJ,KAAK,CANPI,IAAI;IACJC,cAAc,GAKZL,KAAK,CALPK,cAAc;IACdC,OAAO,GAILN,KAAK,CAJPM,OAAO;IACPC,KAAK,GAGHP,KAAK,CAHPO,KAAK;IACLC,YAAY,GAEVR,KAAK,CAFPQ,YAAY;IACZC,UAAU,GACRT,KAAK,CADPS,UAAU;EAGZ,IAAMC,oBAAoB,GAAG,CAAC,GAAAT,mBAAA,GAACC,UAAU,CAACS,OAAO,aAAlBV,mBAAA,CAAoBW,MAAM;EAEzD,IAAIV,UAAU,CAACW,IAAI,KAAK,OAAO,IAAIX,UAAU,CAACW,IAAI,KAAK,OAAO,EAAE;IAC9D,OAAO1B,MAAA,YAAA2B,aAAA,CAACP,KAAK;MAACL,UAAU,EAAEA,UAAW;MAACM,YAAY,EAAEA,YAAa;MAAAO,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,CAAE,CAAC;EACtE;EAEA,IAAIjB,UAAU,CAACkB,aAAa,IAAIlB,UAAU,CAACmB,UAAU,EAAE;IACrD,OAAOlC,MAAA,YAAA2B,aAAA,CAACL,UAAU,MAAAa,SAAA,iBAAKpB,UAAU;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,EAAG,CAAC;EACvC;EAEA,IAAIjB,UAAU,CAACW,IAAI,KAAK,OAAO,EAAE;IAC/B,OACE1B,MAAA,YAAA2B,aAAA,CAAA3B,MAAA,YAAAoC,QAAA,QACEpC,MAAA,YAAA2B,aAAA,CAACR,OAAO;MAACkB,MAAM,EAAE,CAACtB,UAAU,CAAE;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,CAAE,CAAC,EAChCT,oBAAoB,IACnBvB,MAAA,YAAA2B,aAAA,CAACX,iBAAiB,MAAAmB,SAAA;MAACG,GAAG,mBAAiBvB,UAAU,CAACwB;IAAK,GAAKxB,UAAU;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,EAAG,CAE3E,CAAC;EAEP;EAEA,IAAIjB,UAAU,CAACW,IAAI,KAAK,OAAO,IAAI,CAACX,UAAU,CAACkB,aAAa,EAAE;IAC5D,OAAO,IAAAO,+BAAuB,EAAC,CAAC,GAC9BxC,MAAA,YAAA2B,aAAA,CAAA3B,MAAA,YAAAoC,QAAA,QACEpC,MAAA,YAAA2B,aAAA,CAACR,OAAO;MAACsB,MAAM,EAAE,CAAC1B,UAAU,CAAE;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,CAAE,CAAC,EAChCT,oBAAoB,IACnBvB,MAAA,YAAA2B,aAAA,CAACX,iBAAiB,MAAAmB,SAAA;MAACG,GAAG,mBAAiBvB,UAAU,CAACwB;IAAK,GAAKxB,UAAU;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,EAAG,CAE3E,CAAC,GAEHhC,MAAA,YAAA2B,aAAA,CAACT,cAAc;MAACH,UAAU,EAAEA,UAAW;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,CAAE,CAC1C;EACH;EAEA,IAAIjB,UAAU,CAACW,IAAI,KAAK,MAAM,IAAIX,UAAU,CAACW,IAAI,KAAK,OAAO,EAAE;IAC7D,OAAO1B,MAAA,YAAA2B,aAAA,CAACT,cAAc;MAACH,UAAU,EAAEA,UAAW;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,CAAE,CAAC;EACnD;EAEA,IAAIT,oBAAoB,EAAE;IACxB,OACEvB,MAAA,YAAA2B,aAAA,CAAA3B,MAAA,YAAAoC,QAAA,QACEpC,MAAA,YAAA2B,aAAA,CAACV,IAAI,MAAAkB,SAAA,iBAAKpB,UAAU;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,EAAG,CAAC,EACxBhC,MAAA,YAAA2B,aAAA,CAACX,iBAAiB,MAAAmB,SAAA;MAACG,GAAG,mBAAiBvB,UAAU,CAACwB;IAAK,GAAKxB,UAAU;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,EAAG,CACzE,CAAC;EAEP,CAAC,MAAM;IACL,OAAOhC,MAAA,YAAA2B,aAAA,CAACV,IAAI,MAAAkB,SAAA,iBAAKpB,UAAU;MAAAa,MAAA,EAAAlB,KAAA;MAAAmB,QAAA;QAAAC,QAAA,EAAAnB,YAAA;QAAAoB,UAAA;QAAAC,YAAA;MAAA;IAAA,EAAG,CAAC;EACjC;AACF,CAAC;AAED,IAAMU,QAAQ,GAAG,SAAXA,QAAQA,CACZC,SAAyD,EACzDC,SAAyD,EACtD;EAAA,IAAAC,qBAAA,EAAAC,qBAAA;EACH,IACcC,cAAc,GAGxBJ,SAAS,CAHX5B,UAAU;IACViC,iBAAiB,GAEfL,SAAS,CAFXK,iBAAiB;IACDC,kBAAkB,GAChCN,SAAS,CADXO,cAAc;EAEhB,IAAoBC,cAAc,GAAyCP,SAAS,CAA5E7B,UAAU;IAAkCqC,kBAAkB,GAAKR,SAAS,CAAhDM,cAAc;EAElD,IAAMG,eAAe,GACnB,EAAAR,qBAAA,GAAAE,cAAc,CAACvB,OAAO,qBAAtBqB,qBAAA,CAAwBpB,MAAM,QAAAqB,qBAAA,GAAKK,cAAc,CAAC3B,OAAO,qBAAtBsB,qBAAA,CAAwBrB,MAAM,KACjEsB,cAAc,CAACO,SAAS,KAAKH,cAAc,CAACG,SAAS,IACrDP,cAAc,CAACQ,SAAS,KAAKJ,cAAc,CAACI,SAAS;EACvD,IAAI,CAACF,eAAe,EAAE,OAAO,KAAK;EAElC,IAAIL,iBAAiB,EAAE;IACrB,OAAOA,iBAAiB,CAACD,cAAc,EAAEI,cAAc,CAAC;EAC1D;EAEA,IAAMK,iBAAiB,GACrBC,IAAI,CAACC,SAAS,CAACT,kBAAkB,CAAC,KAAKQ,IAAI,CAACC,SAAS,CAACN,kBAAkB,CAAC;EAC3E,IAAI,CAACI,iBAAiB,EAAE,OAAO,KAAK;EAEpC,OAAO,IAAI;AACb,CAAC;AAED,IAAMG,kBAAkB,GAAGC,iBAAK,CAACC,IAAI,CACnCjD,qBAAqB,EACrB8B,QACF,CAAiC;AAuB1B,IAAMoB,UAAU,GAAG,SAAbA,UAAUA,CAGrBjD,KAA0C,EACvC;EACH,IACEE,UAAU,GASRF,KAAK,CATPE,UAAU;IACSgD,qBAAqB,GAQtClD,KAAK,CARPG,iBAAiB;IACXgD,QAAQ,GAOZnD,KAAK,CAPPI,IAAI;IACYgD,kBAAkB,GAMhCpD,KAAK,CANPK,cAAc;IACLgD,WAAW,GAKlBrD,KAAK,CALPM,OAAO;IACAgD,SAAS,GAIdtD,KAAK,CAJPO,KAAK;IACSgD,gBAAgB,GAG5BvD,KAAK,CAHPQ,YAAY;IACIgD,kBAAkB,GAEhCxD,KAAK,CAFPqC,cAAc;IACFoB,cAAc,GACxBzD,KAAK,CADPS,UAAU;EAGZ,IAAAiD,mBAAA,GAUI,IAAAC,mCAAkB,EAAqB,CAAC;IATvBC,wBAAwB,GAAAF,mBAAA,CAA3CvD,iBAAiB;IACX0D,WAAW,GAAAH,mBAAA,CAAjBtD,IAAI;IACY0D,qBAAqB,GAAAJ,mBAAA,CAArCrD,cAAc;IACL0D,cAAc,GAAAL,mBAAA,CAAvBpD,OAAO;IACA0D,YAAY,GAAAN,mBAAA,CAAnBnD,KAAK;IACS0D,mBAAmB,GAAAP,mBAAA,CAAjClD,YAAY;IACZ2B,iBAAiB,GAAAuB,mBAAA,CAAjBvB,iBAAiB;IACD+B,qBAAqB,GAAAR,mBAAA,CAArCrB,cAAc;IACF8B,iBAAiB,GAAAT,mBAAA,CAA7BjD,UAAU;EAGZ,IAAI,CAACP,UAAU,EAAE;IACf,OAAO,IAAI;EACb;EAEA,IAAMC,iBAAiB,GACrB+C,qBAAqB,IAAIU,wBAAwB,IAAIQ,oCAAwB;EAC/E,IAAMhE,IAAI,GAAG+C,QAAQ,IAAIU,WAAW,IAAIQ,UAAW;EACnD,IAAMhE,cAAc,GAAG+C,kBAAkB,IAAIU,qBAAqB,IAAIQ,8BAAqB;EAC3F,IAAMhE,OAAO,GAAG+C,WAAW,IAAIU,cAAc,IAAIQ,gBAAc;EAC/D,IAAMhE,KAAK,GAAG+C,SAAS,IAAIU,YAAY,IAAIQ,YAAY;EACvD,IAAM/D,UAAU,GAAGgD,cAAc,IAAIU,iBAAiB,IAAIE,UAAW;EACrE,IAAM7D,YAAY,GAAG+C,gBAAgB,IAAIU,mBAAmB;EAC5D,IAAM5B,cAAc,GAAGmB,kBAAkB,IAAIU,qBAAqB;EAElE,OACE/E,MAAA,YAAA2B,aAAA,CAACgC,kBAAkB;IAEf5C,UAAU,EAAVA,UAAU;IACVC,iBAAiB,EAAjBA,iBAAiB;IACjBC,IAAI,EAAJA,IAAI;IACJC,cAAc,EAAdA,cAAc;IACdC,OAAO,EAAPA,OAAO;IACPC,KAAK,EAALA,KAAK;IACLC,YAAY,EAAZA,YAAY;IACZ2B,iBAAiB,EAAjBA,iBAAiB;IACjBE,cAAc,EAAdA,cAAc;IACd5B,UAAU,EAAVA,UAAU;IAAAM,MAAA,EAAAlB,KAAA;IAAAmB,QAAA;MAAAC,QAAA,EAAAnB,YAAA;MAAAoB,UAAA;MAAAC,YAAA;IAAA;EAAA,CAEb,CAAC;AAEN,CAAC;AAACsD,OAAA,CAAAxB,UAAA,GAAAA,UAAA"}
@@ -311,9 +311,14 @@ var CardWithContext = function CardWithContext(props) {
311
311
  }
312
312
  }, text))));
313
313
  };
314
- var MemoizedCard = _react["default"].memo(CardWithContext, function () {
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: 319,
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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"}