stream-chat-react-native-core 4.2.0-beta.2 → 4.2.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 (59) hide show
  1. package/lib/commonjs/components/Attachment/FileIcon.js +20 -20
  2. package/lib/commonjs/components/Attachment/FileIcon.js.map +1 -1
  3. package/lib/commonjs/components/Attachment/Giphy.js +37 -28
  4. package/lib/commonjs/components/Attachment/Giphy.js.map +1 -1
  5. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js +1 -1
  6. package/lib/commonjs/components/Message/MessageSimple/MessageContent.js.map +1 -1
  7. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js +4 -7
  8. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  9. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js +183 -173
  10. package/lib/commonjs/components/Message/MessageSimple/utils/renderText.test.js.map +1 -1
  11. package/lib/commonjs/components/MessageInput/MessageInput.js +3 -3
  12. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  13. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js +3 -3
  14. package/lib/commonjs/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  15. package/lib/commonjs/components/MessageList/utils/getReadStates.js +8 -8
  16. package/lib/commonjs/components/MessageList/utils/getReadStates.js.map +1 -1
  17. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +32 -32
  18. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  19. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js +9 -9
  20. package/lib/commonjs/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  21. package/lib/commonjs/version.json +1 -1
  22. package/lib/module/components/Attachment/FileIcon.js +20 -20
  23. package/lib/module/components/Attachment/FileIcon.js.map +1 -1
  24. package/lib/module/components/Attachment/Giphy.js +37 -28
  25. package/lib/module/components/Attachment/Giphy.js.map +1 -1
  26. package/lib/module/components/Message/MessageSimple/MessageContent.js +1 -1
  27. package/lib/module/components/Message/MessageSimple/MessageContent.js.map +1 -1
  28. package/lib/module/components/Message/MessageSimple/utils/renderText.js +4 -7
  29. package/lib/module/components/Message/MessageSimple/utils/renderText.js.map +1 -1
  30. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js +183 -173
  31. package/lib/module/components/Message/MessageSimple/utils/renderText.test.js.map +1 -1
  32. package/lib/module/components/MessageInput/MessageInput.js +3 -3
  33. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  34. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js +3 -3
  35. package/lib/module/components/MessageList/utils/getLastReceivedMessage.js.map +1 -1
  36. package/lib/module/components/MessageList/utils/getReadStates.js +8 -8
  37. package/lib/module/components/MessageList/utils/getReadStates.js.map +1 -1
  38. package/lib/module/contexts/messageInputContext/MessageInputContext.js +32 -32
  39. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  40. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js +9 -9
  41. package/lib/module/contexts/messageInputContext/hooks/useMessageDetailsForState.js.map +1 -1
  42. package/lib/module/version.json +1 -1
  43. package/lib/typescript/components/Attachment/Giphy.d.ts +1 -1
  44. package/lib/typescript/components/MessageOverlay/hooks/useMessageActionAnimation.d.ts +2 -3
  45. package/package.json +12 -10
  46. package/src/components/Attachment/Giphy.tsx +19 -6
  47. package/src/components/ImageGallery/components/__tests__/ImageGalleryHeader.test.tsx +14 -4
  48. package/src/components/Message/MessageSimple/MessageContent.tsx +1 -1
  49. package/src/components/Message/MessageSimple/__tests__/__snapshots__/MessageReplies.test.js.snap +1 -0
  50. package/src/components/Message/MessageSimple/utils/renderText.test.tsx +30 -23
  51. package/src/components/MessageInput/__tests__/__snapshots__/AttachButton.test.js.snap +2 -0
  52. package/src/components/MessageInput/__tests__/__snapshots__/FileUploadPreview.test.js.snap +24 -68
  53. package/src/components/MessageInput/__tests__/__snapshots__/ImageUploadPreview.test.js.snap +20 -36
  54. package/src/components/MessageInput/__tests__/__snapshots__/MessageInput.test.js.snap +7 -10
  55. package/src/components/MessageInput/__tests__/__snapshots__/SendButton.test.js.snap +4 -0
  56. package/src/components/MessageInput/__tests__/__snapshots__/UploadProgressIndicator.test.js.snap +1 -3
  57. package/src/components/MessageList/__tests__/__snapshots__/ScrollToBottomButton.test.js.snap +1 -0
  58. package/src/components/Thread/__tests__/__snapshots__/Thread.test.js.snap +10 -7
  59. package/src/version.json +1 -1
@@ -74,53 +74,53 @@ var mimeTypeToIconMap = {
74
74
  };
75
75
 
76
76
  for (var _i = 0, _audioFileTypes = audioFileTypes; _i < _audioFileTypes.length; _i++) {
77
- var _type = _audioFileTypes[_i];
78
- mimeTypeToIconMap[_type] = _Audio.Audio;
77
+ var type = _audioFileTypes[_i];
78
+ mimeTypeToIconMap[type] = _Audio.Audio;
79
79
  }
80
80
 
81
81
  for (var _i2 = 0, _docMimeTypes = docMimeTypes; _i2 < _docMimeTypes.length; _i2++) {
82
- var _type3 = _docMimeTypes[_i2];
83
- mimeTypeToIconMap[_type3] = _DOC.DOC;
82
+ var _type = _docMimeTypes[_i2];
83
+ mimeTypeToIconMap[_type] = _DOC.DOC;
84
84
  }
85
85
 
86
86
  for (var _i3 = 0, _docXMimeTypes = docXMimeTypes; _i3 < _docXMimeTypes.length; _i3++) {
87
- var _type5 = _docXMimeTypes[_i3];
88
- mimeTypeToIconMap[_type5] = _DOCX.DOCX;
87
+ var _type2 = _docXMimeTypes[_i3];
88
+ mimeTypeToIconMap[_type2] = _DOCX.DOCX;
89
89
  }
90
90
 
91
91
  for (var _i4 = 0, _excelMimeTypes = excelMimeTypes; _i4 < _excelMimeTypes.length; _i4++) {
92
- var _type7 = _excelMimeTypes[_i4];
93
- mimeTypeToIconMap[_type7] = _XLS.XLS;
92
+ var _type3 = _excelMimeTypes[_i4];
93
+ mimeTypeToIconMap[_type3] = _XLS.XLS;
94
94
  }
95
95
 
96
96
  for (var _i5 = 0, _excelXMimeTypes = excelXMimeTypes; _i5 < _excelXMimeTypes.length; _i5++) {
97
- var _type9 = _excelXMimeTypes[_i5];
98
- mimeTypeToIconMap[_type9] = _XLSX.XLSX;
97
+ var _type4 = _excelXMimeTypes[_i5];
98
+ mimeTypeToIconMap[_type4] = _XLSX.XLSX;
99
99
  }
100
100
 
101
101
  for (var _i6 = 0, _odtMimeTypes = odtMimeTypes; _i6 < _odtMimeTypes.length; _i6++) {
102
- var _type11 = _odtMimeTypes[_i6];
103
- mimeTypeToIconMap[_type11] = _ODT.ODT;
102
+ var _type5 = _odtMimeTypes[_i6];
103
+ mimeTypeToIconMap[_type5] = _ODT.ODT;
104
104
  }
105
105
 
106
106
  for (var _i7 = 0, _powerpointMimeTypes = powerpointMimeTypes; _i7 < _powerpointMimeTypes.length; _i7++) {
107
- var _type13 = _powerpointMimeTypes[_i7];
108
- mimeTypeToIconMap[_type13] = _PPT.PPT;
107
+ var _type6 = _powerpointMimeTypes[_i7];
108
+ mimeTypeToIconMap[_type6] = _PPT.PPT;
109
109
  }
110
110
 
111
111
  for (var _i8 = 0, _powerpointXMimeTypes = powerpointXMimeTypes; _i8 < _powerpointXMimeTypes.length; _i8++) {
112
- var _type15 = _powerpointXMimeTypes[_i8];
113
- mimeTypeToIconMap[_type15] = _PPTX.PPTX;
112
+ var _type7 = _powerpointXMimeTypes[_i8];
113
+ mimeTypeToIconMap[_type7] = _PPTX.PPTX;
114
114
  }
115
115
 
116
116
  for (var _i9 = 0, _tarFileTypes = tarFileTypes; _i9 < _tarFileTypes.length; _i9++) {
117
- var _type17 = _tarFileTypes[_i9];
118
- mimeTypeToIconMap[_type17] = _TAR.TAR;
117
+ var _type8 = _tarFileTypes[_i9];
118
+ mimeTypeToIconMap[_type8] = _TAR.TAR;
119
119
  }
120
120
 
121
121
  for (var _i10 = 0, _zipFileTypes = zipFileTypes; _i10 < _zipFileTypes.length; _i10++) {
122
- var _type19 = _zipFileTypes[_i10];
123
- mimeTypeToIconMap[_type19] = _ZIP.ZIP;
122
+ var _type9 = _zipFileTypes[_i10];
123
+ mimeTypeToIconMap[_type9] = _ZIP.ZIP;
124
124
  }
125
125
 
126
126
  function mimeTypeToIcon(mimeType) {
@@ -1 +1 @@
1
- {"version":3,"sources":["FileIcon.tsx"],"names":["audioFileTypes","docMimeTypes","docXMimeTypes","excelMimeTypes","excelXMimeTypes","odtMimeTypes","powerpointMimeTypes","powerpointXMimeTypes","tarFileTypes","zipFileTypes","mimeTypeToIconMap","PDF","RTF","RAR","SEVEN_Z","CSV","HTML","MD","TXT","type","Audio","DOC","DOCX","XLS","XLSX","ODT","PPT","PPTX","TAR","ZIP","mimeTypeToIcon","mimeType","GenericFile","Icon","FileIcon","size","icon","theme","messageSimple","file","height","width","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\n\nimport { Audio } from '../../icons/Audio';\nimport { CSV } from '../../icons/CSV';\nimport { DOC } from '../../icons/DOC';\nimport { DOCX } from '../../icons/DOCX';\nimport { GenericFile } from '../../icons/GenericFile';\nimport { HTML } from '../../icons/HTML';\nimport { MD } from '../../icons/MD';\nimport { ODT } from '../../icons/ODT';\nimport { PDF } from '../../icons/PDF';\nimport { PPT } from '../../icons/PPT';\nimport { PPTX } from '../../icons/PPTX';\nimport { RAR } from '../../icons/RAR';\nimport { RTF } from '../../icons/RTF';\nimport { SEVEN_Z } from '../../icons/SEVEN_Z';\nimport { TAR } from '../../icons/TAR';\nimport { TXT } from '../../icons/TXT';\nimport type { IconProps } from '../../icons/utils/base';\nimport { XLS } from '../../icons/XLS';\nimport { XLSX } from '../../icons/XLSX';\nimport { ZIP } from '../../icons/ZIP';\n\n// https://www.iana.org/assignments/media-types/media-types.xhtml#audio\nconst audioFileTypes = [\n 'audio/1d-interleaved-parityfec',\n 'audio/32kadpcm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/aac',\n 'audio/ac3',\n 'audio/AMR',\n 'audio/AMR-WB',\n 'audio/amr-wb+',\n 'audio/aptx',\n 'audio/asc',\n 'audio/ATRAC-ADVANCED-LOSSLESS',\n 'audio/ATRAC-X',\n 'audio/ATRAC3',\n 'audio/basic',\n 'audio/BV16',\n 'audio/BV32',\n 'audio/clearmode',\n 'audio/CN',\n 'audio/DAT12',\n 'audio/dls',\n 'audio/dsr-es201108',\n 'audio/dsr-es202050',\n 'audio/dsr-es202211',\n 'audio/dsr-es202212',\n 'audio/DV',\n 'audio/DVI4',\n 'audio/eac3',\n 'audio/encaprtp',\n 'audio/EVRC',\n 'audio/EVRC-QCP',\n 'audio/EVRC0',\n 'audio/EVRC1',\n 'audio/EVRCB',\n 'audio/EVRCB0',\n 'audio/EVRCB1',\n 'audio/EVRCNW',\n 'audio/EVRCNW0',\n 'audio/EVRCNW1',\n 'audio/EVRCWB',\n 'audio/EVRCWB0',\n 'audio/EVRCWB1',\n 'audio/EVS',\n 'audio/example',\n 'audio/flexfec',\n 'audio/fwdred',\n 'audio/G711-0',\n 'audio/G719',\n 'audio/G7221',\n 'audio/G722',\n 'audio/G723',\n 'audio/G726-16',\n 'audio/G726-24',\n 'audio/G726-32',\n 'audio/G726-40',\n 'audio/G728',\n 'audio/G729',\n 'audio/G7291',\n 'audio/G729D',\n 'audio/G729E',\n 'audio/GSM',\n 'audio/GSM-EFR',\n 'audio/GSM-HR-08',\n 'audio/iLBC',\n 'audio/ip-mr_v2.5',\n 'audio/L8',\n 'audio/L16',\n 'audio/L20',\n 'audio/L24',\n 'audio/LPC',\n 'audio/MELP',\n 'audio/MELP600',\n 'audio/MELP1200',\n 'audio/MELP2400',\n 'audio/mhas',\n 'audio/mobile-xmf',\n 'audio/MPA',\n 'audio/mp4',\n 'audio/MP4A-LATM',\n 'audio/mpa-robust',\n 'audio/mpeg',\n 'audio/mpeg4-generic',\n 'audio/ogg',\n 'audio/opus',\n 'audio/parityfec',\n 'audio/PCMA',\n 'audio/PCMA-WB',\n 'audio/PCMU',\n 'audio/PCMU-WB',\n 'audio/prs.sid',\n 'audio/raptorfec',\n 'audio/RED',\n 'audio/rtp-enc-aescm128',\n 'audio/rtploopback',\n 'audio/rtp-midi',\n 'audio/rtx',\n 'audio/SMV',\n 'audio/SMV0',\n 'audio/SMV-QCP',\n 'audio/sofa',\n 'audio/sp-midi',\n 'audio/speex',\n 'audio/t140c',\n 'audio/t38',\n 'audio/telephone-event',\n 'audio/TETRA_ACELP',\n 'audio/TETRA_ACELP_BB',\n 'audio/tone',\n 'audio/TSVCIS',\n 'audio/UEMCLIP',\n 'audio/ulpfec',\n 'audio/usac',\n 'audio/VDVI',\n 'audio/VMR-WB',\n 'audio/vnd.3gpp.iufp',\n 'audio/vnd.4SB',\n 'audio/vnd.audiokoz',\n 'audio/vnd.CELP',\n 'audio/vnd.cisco.nse',\n 'audio/vnd.cmles.radio-events',\n 'audio/vnd.cns.anp1',\n 'audio/vnd.cns.inf1',\n 'audio/vnd.dece.audio',\n 'audio/vnd.digital-winds',\n 'audio/vnd.dlna.adts',\n 'audio/vnd.dolby.heaac.1',\n 'audio/vnd.dolby.heaac.2',\n 'audio/vnd.dolby.mlp',\n 'audio/vnd.dolby.mps',\n 'audio/vnd.dolby.pl2',\n 'audio/vnd.dolby.pl2x',\n 'audio/vnd.dolby.pl2z',\n 'audio/vnd.dolby.pulse.1',\n 'audio/vnd.dra',\n 'audio/vnd.dts',\n 'audio/vnd.dts.hd',\n 'audio/vnd.dts.uhd',\n 'audio/vnd.dvb.file',\n 'audio/vnd.everad.plj',\n 'audio/vnd.hns.audio',\n 'audio/vnd.lucent.voice',\n 'audio/vnd.ms-playready.media.pya',\n 'audio/vnd.nokia.mobile-xmf',\n 'audio/vnd.nortel.vbk',\n 'audio/vnd.nuera.ecelp4800',\n 'audio/vnd.nuera.ecelp7470',\n 'audio/vnd.nuera.ecelp9600',\n 'audio/vnd.octel.sbc',\n 'audio/vnd.presonus.multitrack',\n 'audio/vnd.qcelp',\n 'audio/vnd.rhetorex.32kadpcm',\n 'audio/vnd.rip',\n 'audio/vnd.sealedmedia.softseal.mpeg',\n 'audio/vnd.vmx.cvsd',\n 'audio/vorbis',\n 'audio/vorbis-config',\n];\n\n// Partially based on:\n// https://stackoverflow.com/a/4212908/2570866\n\nconst docMimeTypes = [\n // Microsoft Word\n // .doc .dot\n 'application/msword',\n // .doc .dot\n 'application/msword-template',\n\n // LibreOffice/OpenOffice Writer\n // .odt\n 'application/vnd.oasis.opendocument.text',\n // .ott\n 'application/vnd.oasis.opendocument.text-template',\n // .fodt\n 'application/vnd.oasis.opendocument.text-flat-xml',\n // .uot\n // NOTE: firefox doesn't know mimetype so maybe ignore\n];\n\nconst docXMimeTypes = [\n // Microsoft Word\n // .docx\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n // .dotx (no test)\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',\n // .docm\n 'application/vnd.ms-word.document.macroEnabled.12',\n // .dotm (no test)\n 'application/vnd.ms-word.template.macroEnabled.12',\n];\n\nconst excelMimeTypes = [\n // Microsoft Excel\n // .xls .xlt .xla (no test for .xla)\n 'application/vnd.ms-excel',\n\n // LibreOffice/OpenOffice Calc\n // .ods\n 'application/vnd.oasis.opendocument.spreadsheet',\n // .ots\n 'application/vnd.oasis.opendocument.spreadsheet-template',\n // .fods\n 'application/vnd.oasis.opendocument.spreadsheet-flat-xml',\n];\n\nconst excelXMimeTypes = [\n // .xlsx\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n // .xltx (no test)\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',\n // .xlsm\n 'application/vnd.ms-excel.sheet.macroEnabled.12',\n // .xltm (no test)\n 'application/vnd.ms-excel.template.macroEnabled.12',\n // .xlam (no test)\n 'application/vnd.ms-excel.addin.macroEnabled.12',\n // .xlsb (no test)\n 'application/vnd.ms-excel.addin.macroEnabled.12',\n];\n\nconst odtMimeTypes = [\n // LibreOffice/OpenOffice Writer\n // .odt\n 'application/vnd.oasis.opendocument.text',\n // .ott\n 'application/vnd.oasis.opendocument.text-template',\n // .fodt\n 'application/vnd.oasis.opendocument.text-flat-xml',\n];\n\nconst powerpointMimeTypes = [\n // Microsoft Word\n // .ppt .pot .pps .ppa (no test for .ppa)\n 'application/vnd.ms-powerpoint',\n\n // LibreOffice/OpenOffice Writer\n // .odp\n 'application/vnd.oasis.opendocument.presentation',\n // .otp\n 'application/vnd.oasis.opendocument.presentation-template',\n // .fodp\n 'application/vnd.oasis.opendocument.presentation-flat-xml',\n // .uop\n // NOTE: firefox doesn't know mimetype so maybe ignore\n];\n\nconst powerpointXMimeTypes = [\n // .pptx\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n // .potx (no test)\n 'application/vnd.openxmlformats-officedocument.presentationml.template',\n // .ppsx\n 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',\n // .ppam\n 'application/vnd.ms-powerpoint.addin.macroEnabled.12',\n // .pptm\n 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',\n // .potm\n 'application/vnd.ms-powerpoint.template.macroEnabled.12',\n // .ppsm\n 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12',\n];\n\nconst tarFileTypes = [\n // .ar\n 'application/x-archive',\n // .tar\n 'application/x-tar',\n // .tar.gz\n 'application/gzip',\n // .tar.Z\n 'application/x-compress',\n // .tar.bz2\n 'application/x-bzip',\n // .tar.lz\n 'application/x-lzip',\n // .tar.lz4\n 'application/x-lz4',\n // .tar.lzma\n 'application/x-lzma',\n // .tar.lzo (no test)\n 'application/x-lzop',\n // .tar.xz\n 'application/x-xz',\n // .war\n 'application/x-webarchive',\n];\n\nconst zipFileTypes = [\n // .gzip\n 'application/gzip',\n // .zip\n 'application/zip',\n];\n\nconst mimeTypeToIconMap: Record<string, React.FC<IconProps>> = {\n 'application/pdf': PDF, // .pdf\n 'application/rtf': RTF, // .rtf\n 'application/vnd.rar': RAR, // .rar\n 'application/x-7z-compressed': SEVEN_Z, // .z7\n 'text/csv': CSV, // .csv\n 'text/html': HTML, // .html .htm\n 'text/markdown': MD, // .md\n 'text/plain': TXT, // .txt\n};\n\nfor (const type of audioFileTypes) {\n mimeTypeToIconMap[type] = Audio;\n}\n\nfor (const type of docMimeTypes) {\n mimeTypeToIconMap[type] = DOC;\n}\n\nfor (const type of docXMimeTypes) {\n mimeTypeToIconMap[type] = DOCX;\n}\n\nfor (const type of excelMimeTypes) {\n mimeTypeToIconMap[type] = XLS;\n}\n\nfor (const type of excelXMimeTypes) {\n mimeTypeToIconMap[type] = XLSX;\n}\n\nfor (const type of odtMimeTypes) {\n mimeTypeToIconMap[type] = ODT;\n}\n\nfor (const type of powerpointMimeTypes) {\n mimeTypeToIconMap[type] = PPT;\n}\n\nfor (const type of powerpointXMimeTypes) {\n mimeTypeToIconMap[type] = PPTX;\n}\n\nfor (const type of tarFileTypes) {\n mimeTypeToIconMap[type] = TAR;\n}\n\nfor (const type of zipFileTypes) {\n mimeTypeToIconMap[type] = ZIP;\n}\n\nfunction mimeTypeToIcon(mimeType?: string): React.FC<IconProps> {\n if (!mimeType) return GenericFile;\n\n const Icon = mimeTypeToIconMap[mimeType];\n if (Icon) return Icon;\n\n return GenericFile;\n}\n\nexport type FileIconProps = {\n mimeType?: string;\n size?: number;\n};\n\nexport const FileIcon: React.FC<FileIconProps> = ({ mimeType, size }) => {\n const {\n theme: {\n messageSimple: {\n file: { icon },\n },\n },\n } = useTheme();\n\n const Icon = mimeTypeToIcon(mimeType);\n\n return <Icon {...(size ? { height: size, width: size } : {})} {...icon} />;\n};\n\nFileIcon.displayName = 'FileIcon{messageSimple{file{icon}}}';\n"]}
1
+ {"version":3,"sources":["FileIcon.tsx"],"names":["audioFileTypes","docMimeTypes","docXMimeTypes","excelMimeTypes","excelXMimeTypes","odtMimeTypes","powerpointMimeTypes","powerpointXMimeTypes","tarFileTypes","zipFileTypes","mimeTypeToIconMap","PDF","RTF","RAR","SEVEN_Z","CSV","HTML","MD","TXT","type","Audio","DOC","DOCX","XLS","XLSX","ODT","PPT","PPTX","TAR","ZIP","mimeTypeToIcon","mimeType","GenericFile","Icon","FileIcon","size","icon","theme","messageSimple","file","height","width","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\n\nimport { Audio } from '../../icons/Audio';\nimport { CSV } from '../../icons/CSV';\nimport { DOC } from '../../icons/DOC';\nimport { DOCX } from '../../icons/DOCX';\nimport { GenericFile } from '../../icons/GenericFile';\nimport { HTML } from '../../icons/HTML';\nimport { MD } from '../../icons/MD';\nimport { ODT } from '../../icons/ODT';\nimport { PDF } from '../../icons/PDF';\nimport { PPT } from '../../icons/PPT';\nimport { PPTX } from '../../icons/PPTX';\nimport { RAR } from '../../icons/RAR';\nimport { RTF } from '../../icons/RTF';\nimport { SEVEN_Z } from '../../icons/SEVEN_Z';\nimport { TAR } from '../../icons/TAR';\nimport { TXT } from '../../icons/TXT';\nimport type { IconProps } from '../../icons/utils/base';\nimport { XLS } from '../../icons/XLS';\nimport { XLSX } from '../../icons/XLSX';\nimport { ZIP } from '../../icons/ZIP';\n\n// https://www.iana.org/assignments/media-types/media-types.xhtml#audio\nconst audioFileTypes = [\n 'audio/1d-interleaved-parityfec',\n 'audio/32kadpcm',\n 'audio/3gpp',\n 'audio/3gpp2',\n 'audio/aac',\n 'audio/ac3',\n 'audio/AMR',\n 'audio/AMR-WB',\n 'audio/amr-wb+',\n 'audio/aptx',\n 'audio/asc',\n 'audio/ATRAC-ADVANCED-LOSSLESS',\n 'audio/ATRAC-X',\n 'audio/ATRAC3',\n 'audio/basic',\n 'audio/BV16',\n 'audio/BV32',\n 'audio/clearmode',\n 'audio/CN',\n 'audio/DAT12',\n 'audio/dls',\n 'audio/dsr-es201108',\n 'audio/dsr-es202050',\n 'audio/dsr-es202211',\n 'audio/dsr-es202212',\n 'audio/DV',\n 'audio/DVI4',\n 'audio/eac3',\n 'audio/encaprtp',\n 'audio/EVRC',\n 'audio/EVRC-QCP',\n 'audio/EVRC0',\n 'audio/EVRC1',\n 'audio/EVRCB',\n 'audio/EVRCB0',\n 'audio/EVRCB1',\n 'audio/EVRCNW',\n 'audio/EVRCNW0',\n 'audio/EVRCNW1',\n 'audio/EVRCWB',\n 'audio/EVRCWB0',\n 'audio/EVRCWB1',\n 'audio/EVS',\n 'audio/example',\n 'audio/flexfec',\n 'audio/fwdred',\n 'audio/G711-0',\n 'audio/G719',\n 'audio/G7221',\n 'audio/G722',\n 'audio/G723',\n 'audio/G726-16',\n 'audio/G726-24',\n 'audio/G726-32',\n 'audio/G726-40',\n 'audio/G728',\n 'audio/G729',\n 'audio/G7291',\n 'audio/G729D',\n 'audio/G729E',\n 'audio/GSM',\n 'audio/GSM-EFR',\n 'audio/GSM-HR-08',\n 'audio/iLBC',\n 'audio/ip-mr_v2.5',\n 'audio/L8',\n 'audio/L16',\n 'audio/L20',\n 'audio/L24',\n 'audio/LPC',\n 'audio/MELP',\n 'audio/MELP600',\n 'audio/MELP1200',\n 'audio/MELP2400',\n 'audio/mhas',\n 'audio/mobile-xmf',\n 'audio/MPA',\n 'audio/mp4',\n 'audio/MP4A-LATM',\n 'audio/mpa-robust',\n 'audio/mpeg',\n 'audio/mpeg4-generic',\n 'audio/ogg',\n 'audio/opus',\n 'audio/parityfec',\n 'audio/PCMA',\n 'audio/PCMA-WB',\n 'audio/PCMU',\n 'audio/PCMU-WB',\n 'audio/prs.sid',\n 'audio/raptorfec',\n 'audio/RED',\n 'audio/rtp-enc-aescm128',\n 'audio/rtploopback',\n 'audio/rtp-midi',\n 'audio/rtx',\n 'audio/SMV',\n 'audio/SMV0',\n 'audio/SMV-QCP',\n 'audio/sofa',\n 'audio/sp-midi',\n 'audio/speex',\n 'audio/t140c',\n 'audio/t38',\n 'audio/telephone-event',\n 'audio/TETRA_ACELP',\n 'audio/TETRA_ACELP_BB',\n 'audio/tone',\n 'audio/TSVCIS',\n 'audio/UEMCLIP',\n 'audio/ulpfec',\n 'audio/usac',\n 'audio/VDVI',\n 'audio/VMR-WB',\n 'audio/vnd.3gpp.iufp',\n 'audio/vnd.4SB',\n 'audio/vnd.audiokoz',\n 'audio/vnd.CELP',\n 'audio/vnd.cisco.nse',\n 'audio/vnd.cmles.radio-events',\n 'audio/vnd.cns.anp1',\n 'audio/vnd.cns.inf1',\n 'audio/vnd.dece.audio',\n 'audio/vnd.digital-winds',\n 'audio/vnd.dlna.adts',\n 'audio/vnd.dolby.heaac.1',\n 'audio/vnd.dolby.heaac.2',\n 'audio/vnd.dolby.mlp',\n 'audio/vnd.dolby.mps',\n 'audio/vnd.dolby.pl2',\n 'audio/vnd.dolby.pl2x',\n 'audio/vnd.dolby.pl2z',\n 'audio/vnd.dolby.pulse.1',\n 'audio/vnd.dra',\n 'audio/vnd.dts',\n 'audio/vnd.dts.hd',\n 'audio/vnd.dts.uhd',\n 'audio/vnd.dvb.file',\n 'audio/vnd.everad.plj',\n 'audio/vnd.hns.audio',\n 'audio/vnd.lucent.voice',\n 'audio/vnd.ms-playready.media.pya',\n 'audio/vnd.nokia.mobile-xmf',\n 'audio/vnd.nortel.vbk',\n 'audio/vnd.nuera.ecelp4800',\n 'audio/vnd.nuera.ecelp7470',\n 'audio/vnd.nuera.ecelp9600',\n 'audio/vnd.octel.sbc',\n 'audio/vnd.presonus.multitrack',\n 'audio/vnd.qcelp',\n 'audio/vnd.rhetorex.32kadpcm',\n 'audio/vnd.rip',\n 'audio/vnd.sealedmedia.softseal.mpeg',\n 'audio/vnd.vmx.cvsd',\n 'audio/vorbis',\n 'audio/vorbis-config',\n];\n\n// Partially based on:\n// https://stackoverflow.com/a/4212908/2570866\n\nconst docMimeTypes = [\n // Microsoft Word\n // .doc .dot\n 'application/msword',\n // .doc .dot\n 'application/msword-template',\n\n // LibreOffice/OpenOffice Writer\n // .odt\n 'application/vnd.oasis.opendocument.text',\n // .ott\n 'application/vnd.oasis.opendocument.text-template',\n // .fodt\n 'application/vnd.oasis.opendocument.text-flat-xml',\n // .uot\n // NOTE: firefox doesn't know mimetype so maybe ignore\n];\n\nconst docXMimeTypes = [\n // Microsoft Word\n // .docx\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n // .dotx (no test)\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',\n // .docm\n 'application/vnd.ms-word.document.macroEnabled.12',\n // .dotm (no test)\n 'application/vnd.ms-word.template.macroEnabled.12',\n];\n\nconst excelMimeTypes = [\n // Microsoft Excel\n // .xls .xlt .xla (no test for .xla)\n 'application/vnd.ms-excel',\n\n // LibreOffice/OpenOffice Calc\n // .ods\n 'application/vnd.oasis.opendocument.spreadsheet',\n // .ots\n 'application/vnd.oasis.opendocument.spreadsheet-template',\n // .fods\n 'application/vnd.oasis.opendocument.spreadsheet-flat-xml',\n];\n\nconst excelXMimeTypes = [\n // .xlsx\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n // .xltx (no test)\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',\n // .xlsm\n 'application/vnd.ms-excel.sheet.macroEnabled.12',\n // .xltm (no test)\n 'application/vnd.ms-excel.template.macroEnabled.12',\n // .xlam (no test)\n 'application/vnd.ms-excel.addin.macroEnabled.12',\n // .xlsb (no test)\n 'application/vnd.ms-excel.addin.macroEnabled.12',\n];\n\nconst odtMimeTypes = [\n // LibreOffice/OpenOffice Writer\n // .odt\n 'application/vnd.oasis.opendocument.text',\n // .ott\n 'application/vnd.oasis.opendocument.text-template',\n // .fodt\n 'application/vnd.oasis.opendocument.text-flat-xml',\n];\n\nconst powerpointMimeTypes = [\n // Microsoft Word\n // .ppt .pot .pps .ppa (no test for .ppa)\n 'application/vnd.ms-powerpoint',\n\n // LibreOffice/OpenOffice Writer\n // .odp\n 'application/vnd.oasis.opendocument.presentation',\n // .otp\n 'application/vnd.oasis.opendocument.presentation-template',\n // .fodp\n 'application/vnd.oasis.opendocument.presentation-flat-xml',\n // .uop\n // NOTE: firefox doesn't know mimetype so maybe ignore\n];\n\nconst powerpointXMimeTypes = [\n // .pptx\n 'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n // .potx (no test)\n 'application/vnd.openxmlformats-officedocument.presentationml.template',\n // .ppsx\n 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',\n // .ppam\n 'application/vnd.ms-powerpoint.addin.macroEnabled.12',\n // .pptm\n 'application/vnd.ms-powerpoint.presentation.macroEnabled.12',\n // .potm\n 'application/vnd.ms-powerpoint.template.macroEnabled.12',\n // .ppsm\n 'application/vnd.ms-powerpoint.slideshow.macroEnabled.12',\n];\n\nconst tarFileTypes = [\n // .ar\n 'application/x-archive',\n // .tar\n 'application/x-tar',\n // .tar.gz\n 'application/gzip',\n // .tar.Z\n 'application/x-compress',\n // .tar.bz2\n 'application/x-bzip',\n // .tar.lz\n 'application/x-lzip',\n // .tar.lz4\n 'application/x-lz4',\n // .tar.lzma\n 'application/x-lzma',\n // .tar.lzo (no test)\n 'application/x-lzop',\n // .tar.xz\n 'application/x-xz',\n // .war\n 'application/x-webarchive',\n];\n\nconst zipFileTypes = [\n // .gzip\n 'application/gzip',\n // .zip\n 'application/zip',\n];\n\nconst mimeTypeToIconMap: Record<string, React.FC<IconProps>> = {\n 'application/pdf': PDF, // .pdf\n 'application/rtf': RTF, // .rtf\n 'application/vnd.rar': RAR, // .rar\n 'application/x-7z-compressed': SEVEN_Z, // .z7\n 'text/csv': CSV, // .csv\n 'text/html': HTML, // .html .htm\n 'text/markdown': MD, // .md\n 'text/plain': TXT, // .txt\n};\n\nfor (const type of audioFileTypes) {\n mimeTypeToIconMap[type] = Audio;\n}\n\nfor (const type of docMimeTypes) {\n mimeTypeToIconMap[type] = DOC;\n}\n\nfor (const type of docXMimeTypes) {\n mimeTypeToIconMap[type] = DOCX;\n}\n\nfor (const type of excelMimeTypes) {\n mimeTypeToIconMap[type] = XLS;\n}\n\nfor (const type of excelXMimeTypes) {\n mimeTypeToIconMap[type] = XLSX;\n}\n\nfor (const type of odtMimeTypes) {\n mimeTypeToIconMap[type] = ODT;\n}\n\nfor (const type of powerpointMimeTypes) {\n mimeTypeToIconMap[type] = PPT;\n}\n\nfor (const type of powerpointXMimeTypes) {\n mimeTypeToIconMap[type] = PPTX;\n}\n\nfor (const type of tarFileTypes) {\n mimeTypeToIconMap[type] = TAR;\n}\n\nfor (const type of zipFileTypes) {\n mimeTypeToIconMap[type] = ZIP;\n}\n\nfunction mimeTypeToIcon(mimeType?: string): React.FC<IconProps> {\n if (!mimeType) return GenericFile;\n\n const Icon = mimeTypeToIconMap[mimeType];\n if (Icon) return Icon;\n\n return GenericFile;\n}\n\nexport type FileIconProps = {\n mimeType?: string;\n size?: number;\n};\n\nexport const FileIcon: React.FC<FileIconProps> = ({ mimeType, size }) => {\n const {\n theme: {\n messageSimple: {\n file: { icon },\n },\n },\n } = useTheme();\n\n const Icon = mimeTypeToIcon(mimeType);\n\n return <Icon {...(size ? { height: size, width: size } : {})} {...icon} />;\n};\n\nFileIcon.displayName = 'FileIcon{messageSimple{file{icon}}}';\n"]}
@@ -118,6 +118,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
118
118
  var additionalTouchableProps = props.additionalTouchableProps,
119
119
  attachment = props.attachment,
120
120
  handleAction = props.handleAction,
121
+ isMyMessage = props.isMyMessage,
121
122
  _onLongPress = props.onLongPress,
122
123
  _onPress = props.onPress,
123
124
  _onPressIn = props.onPressIn,
@@ -173,7 +174,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
173
174
  __self: _this,
174
175
  __source: {
175
176
  fileName: _jsxFileName,
176
- lineNumber: 171,
177
+ lineNumber: 172,
177
178
  columnNumber: 5
178
179
  }
179
180
  }, _react["default"].createElement(_reactNative.View, {
@@ -181,14 +182,14 @@ var GiphyWithContext = function GiphyWithContext(props) {
181
182
  __self: _this,
182
183
  __source: {
183
184
  fileName: _jsxFileName,
184
- lineNumber: 178,
185
+ lineNumber: 179,
185
186
  columnNumber: 7
186
187
  }
187
188
  }, _react["default"].createElement(_icons.GiphyIcon, {
188
189
  __self: _this,
189
190
  __source: {
190
191
  fileName: _jsxFileName,
191
- lineNumber: 179,
192
+ lineNumber: 180,
192
193
  columnNumber: 9
193
194
  }
194
195
  }), _react["default"].createElement(_reactNative.Text, {
@@ -196,7 +197,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
196
197
  __self: _this,
197
198
  __source: {
198
199
  fileName: _jsxFileName,
199
- lineNumber: 180,
200
+ lineNumber: 181,
200
201
  columnNumber: 9
201
202
  }
202
203
  }, "Giphy"), _react["default"].createElement(_reactNative.Text, {
@@ -206,7 +207,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
206
207
  __self: _this,
207
208
  __source: {
208
209
  fileName: _jsxFileName,
209
- lineNumber: 181,
210
+ lineNumber: 182,
210
211
  columnNumber: 9
211
212
  }
212
213
  }, "/giphy " + title)), _react["default"].createElement(_reactNative.View, {
@@ -214,7 +215,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
214
215
  __self: _this,
215
216
  __source: {
216
217
  fileName: _jsxFileName,
217
- lineNumber: 185,
218
+ lineNumber: 186,
218
219
  columnNumber: 7
219
220
  }
220
221
  }, _react["default"].createElement(_reactNative.Image, {
@@ -226,14 +227,14 @@ var GiphyWithContext = function GiphyWithContext(props) {
226
227
  __self: _this,
227
228
  __source: {
228
229
  fileName: _jsxFileName,
229
- lineNumber: 186,
230
+ lineNumber: 187,
230
231
  columnNumber: 9
231
232
  }
232
233
  })), _react["default"].createElement(_reactNative.View, {
233
234
  __self: _this,
234
235
  __source: {
235
236
  fileName: _jsxFileName,
236
- lineNumber: 192,
237
+ lineNumber: 193,
237
238
  columnNumber: 7
238
239
  }
239
240
  }, _react["default"].createElement(_reactNative.View, {
@@ -241,7 +242,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
241
242
  __self: _this,
242
243
  __source: {
243
244
  fileName: _jsxFileName,
244
- lineNumber: 193,
245
+ lineNumber: 194,
245
246
  columnNumber: 9
246
247
  }
247
248
  }, _react["default"].createElement(_reactNative.TouchableOpacity, {
@@ -257,7 +258,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
257
258
  __self: _this,
258
259
  __source: {
259
260
  fileName: _jsxFileName,
260
- lineNumber: 194,
261
+ lineNumber: 195,
261
262
  columnNumber: 11
262
263
  }
263
264
  }, _react["default"].createElement(_reactNative.Text, {
@@ -267,7 +268,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
267
268
  __self: _this,
268
269
  __source: {
269
270
  fileName: _jsxFileName,
270
- lineNumber: 206,
271
+ lineNumber: 207,
271
272
  columnNumber: 13
272
273
  }
273
274
  }, actions == null ? void 0 : actions[2].text)), _react["default"].createElement(_reactNative.TouchableOpacity, {
@@ -283,7 +284,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
283
284
  __self: _this,
284
285
  __source: {
285
286
  fileName: _jsxFileName,
286
- lineNumber: 208,
287
+ lineNumber: 209,
287
288
  columnNumber: 11
288
289
  }
289
290
  }, _react["default"].createElement(_reactNative.Text, {
@@ -293,7 +294,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
293
294
  __self: _this,
294
295
  __source: {
295
296
  fileName: _jsxFileName,
296
- lineNumber: 220,
297
+ lineNumber: 221,
297
298
  columnNumber: 13
298
299
  }
299
300
  }, actions == null ? void 0 : actions[1].text)), _react["default"].createElement(_reactNative.TouchableOpacity, {
@@ -308,7 +309,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
308
309
  __self: _this,
309
310
  __source: {
310
311
  fileName: _jsxFileName,
311
- lineNumber: 222,
312
+ lineNumber: 223,
312
313
  columnNumber: 11
313
314
  }
314
315
  }, _react["default"].createElement(_reactNative.Text, {
@@ -318,7 +319,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
318
319
  __self: _this,
319
320
  __source: {
320
321
  fileName: _jsxFileName,
321
- lineNumber: 230,
322
+ lineNumber: 231,
322
323
  columnNumber: 13
323
324
  }
324
325
  }, actions == null ? void 0 : actions[0].text))))) : _react["default"].createElement(_reactNative.TouchableOpacity, (0, _extends2["default"])({
@@ -352,15 +353,17 @@ var GiphyWithContext = function GiphyWithContext(props) {
352
353
  __self: _this,
353
354
  __source: {
354
355
  fileName: _jsxFileName,
355
- lineNumber: 236,
356
+ lineNumber: 237,
356
357
  columnNumber: 5
357
358
  }
358
359
  }), _react["default"].createElement(_reactNative.View, {
359
- style: [styles.container, container],
360
+ style: [styles.container, {
361
+ backgroundColor: isMyMessage ? grey_gainsboro : white
362
+ }, container],
360
363
  __self: _this,
361
364
  __source: {
362
365
  fileName: _jsxFileName,
363
- lineNumber: 265,
366
+ lineNumber: 266,
364
367
  columnNumber: 7
365
368
  }
366
369
  }, _react["default"].createElement(_reactNative.Image, {
@@ -373,7 +376,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
373
376
  __self: _this,
374
377
  __source: {
375
378
  fileName: _jsxFileName,
376
- lineNumber: 266,
379
+ lineNumber: 273,
377
380
  columnNumber: 9
378
381
  }
379
382
  }), _react["default"].createElement(_reactNative.View, {
@@ -381,7 +384,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
381
384
  __self: _this,
382
385
  __source: {
383
386
  fileName: _jsxFileName,
384
- lineNumber: 272,
387
+ lineNumber: 279,
385
388
  columnNumber: 9
386
389
  }
387
390
  }, _react["default"].createElement(_reactNative.View, {
@@ -391,7 +394,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
391
394
  __self: _this,
392
395
  __source: {
393
396
  fileName: _jsxFileName,
394
- lineNumber: 273,
397
+ lineNumber: 280,
395
398
  columnNumber: 11
396
399
  }
397
400
  }, _react["default"].createElement(_Lightning.Lightning, {
@@ -401,7 +404,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
401
404
  __self: _this,
402
405
  __source: {
403
406
  fileName: _jsxFileName,
404
- lineNumber: 280,
407
+ lineNumber: 287,
405
408
  columnNumber: 13
406
409
  }
407
410
  }), _react["default"].createElement(_reactNative.Text, {
@@ -411,7 +414,7 @@ var GiphyWithContext = function GiphyWithContext(props) {
411
414
  __self: _this,
412
415
  __source: {
413
416
  fileName: _jsxFileName,
414
- lineNumber: 281,
417
+ lineNumber: 288,
415
418
  columnNumber: 13
416
419
  }
417
420
  }, type == null ? void 0 : type.toUpperCase())))));
@@ -422,20 +425,24 @@ var areEqual = function areEqual(prevProps, nextProps) {
422
425
  prevActions = _prevProps$attachment.actions,
423
426
  prevImageUrl = _prevProps$attachment.image_url,
424
427
  prevThumbUrl = _prevProps$attachment.thumb_url,
425
- prevGiphyVersion = prevProps.giphyVersion;
428
+ prevGiphyVersion = prevProps.giphyVersion,
429
+ prevIsMyMessage = prevProps.isMyMessage;
426
430
  var _nextProps$attachment = nextProps.attachment,
427
431
  nextActions = _nextProps$attachment.actions,
428
432
  nextImageUrl = _nextProps$attachment.image_url,
429
433
  nextThumbUrl = _nextProps$attachment.thumb_url,
430
- nextGiphyVersion = nextProps.giphyVersion;
434
+ nextGiphyVersion = nextProps.giphyVersion,
435
+ nextIsMyMessage = nextProps.isMyMessage;
431
436
  var imageUrlEqual = prevImageUrl === nextImageUrl;
432
437
  if (!imageUrlEqual) return false;
433
438
  var thumbUrlEqual = prevThumbUrl === nextThumbUrl;
434
439
  if (!thumbUrlEqual) return false;
435
- var giphyVersionEqual = prevGiphyVersion === nextGiphyVersion;
436
- if (!giphyVersionEqual) return false;
437
440
  var actionsEqual = Array.isArray(prevActions) === Array.isArray(nextActions) && (Array.isArray(prevActions) && Array.isArray(nextActions) && prevActions.length === nextActions.length || prevActions === nextActions);
438
441
  if (!actionsEqual) return false;
442
+ var giphyVersionEqual = prevGiphyVersion === nextGiphyVersion;
443
+ if (!giphyVersionEqual) return false;
444
+ var isMyMessageEqual = prevIsMyMessage === nextIsMyMessage;
445
+ if (!isMyMessageEqual) return false;
439
446
  return true;
440
447
  };
441
448
 
@@ -444,6 +451,7 @@ var MemoizedGiphy = _react["default"].memo(GiphyWithContext, areEqual);
444
451
  var Giphy = function Giphy(props) {
445
452
  var _useMessageContext = (0, _MessageContext.useMessageContext)(),
446
453
  handleAction = _useMessageContext.handleAction,
454
+ isMyMessage = _useMessageContext.isMyMessage,
447
455
  onLongPress = _useMessageContext.onLongPress,
448
456
  onPress = _useMessageContext.onPress,
449
457
  onPressIn = _useMessageContext.onPressIn,
@@ -457,6 +465,7 @@ var Giphy = function Giphy(props) {
457
465
  additionalTouchableProps: additionalTouchableProps,
458
466
  giphyVersion: giphyVersion,
459
467
  handleAction: handleAction,
468
+ isMyMessage: isMyMessage,
460
469
  onLongPress: onLongPress,
461
470
  onPress: onPress,
462
471
  onPressIn: onPressIn,
@@ -465,7 +474,7 @@ var Giphy = function Giphy(props) {
465
474
  __self: _this,
466
475
  __source: {
467
476
  fileName: _jsxFileName,
468
- lineNumber: 348,
477
+ lineNumber: 360,
469
478
  columnNumber: 5
470
479
  }
471
480
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["Giphy.tsx"],"names":["styles","StyleSheet","create","actionsRow","flexDirection","buttonContainer","alignItems","borderTopWidth","flex","justifyContent","cancel","fontSize","fontWeight","paddingVertical","container","overflow","width","giphy","alignSelf","borderRadius","height","maxWidth","giphyContainer","giphyHeaderText","giphyHeaderTitle","giphyMask","bottom","left","position","giphyMaskText","header","display","padding","selectionContainer","borderBottomLeftRadius","borderWidth","selectionImageContainer","margin","send","shuffle","shuffleButton","GiphyWithContext","props","additionalTouchableProps","attachment","handleAction","onLongPress","onPress","onPressIn","preventPress","actions","giphyData","image_url","thumb_url","title","type","theme","colors","accent_blue","black","grey","grey_dark","grey_gainsboro","label_bg_transparent","white","messageSimple","uri","giphyDimensions","giphyVersionInfo","giphyVersion","url","parseFloat","backgroundColor","borderColor","color","name","value","borderRightWidth","text","event","emitter","toUpperCase","areEqual","prevProps","nextProps","prevActions","prevImageUrl","prevThumbUrl","prevGiphyVersion","nextActions","nextImageUrl","nextThumbUrl","nextGiphyVersion","imageUrlEqual","thumbUrlEqual","giphyVersionEqual","actionsEqual","Array","isArray","length","MemoizedGiphy","React","memo","Giphy","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Image, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport type { Attachment } from 'stream-chat';\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 { GiphyIcon } from '../../icons';\nimport { Lightning } from '../../icons/Lightning';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { makeImageCompatibleUrl } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n actionsRow: {\n flexDirection: 'row',\n },\n buttonContainer: {\n alignItems: 'center',\n borderTopWidth: 1,\n flex: 1,\n justifyContent: 'center',\n },\n cancel: {\n fontSize: 14,\n fontWeight: '600',\n paddingVertical: 16,\n },\n container: {\n overflow: 'hidden',\n width: 270,\n },\n giphy: {\n alignSelf: 'center',\n borderRadius: 2,\n height: 170,\n maxWidth: 270,\n width: 270,\n },\n giphyContainer: {\n alignItems: 'center',\n borderRadius: 12,\n flexDirection: 'row',\n height: 24,\n justifyContent: 'center',\n width: 68,\n },\n giphyHeaderText: {\n fontSize: 16,\n fontWeight: '600',\n },\n giphyHeaderTitle: {\n fontSize: 14,\n },\n giphyMask: {\n bottom: 8,\n left: 8,\n position: 'absolute',\n },\n giphyMaskText: {\n fontSize: 13,\n fontWeight: '600',\n },\n header: {\n alignItems: 'center',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n padding: 8,\n width: '60%',\n },\n selectionContainer: {\n borderBottomLeftRadius: 8,\n borderWidth: 1,\n overflow: 'hidden',\n width: 272,\n },\n selectionImageContainer: {\n alignSelf: 'center',\n margin: 1,\n },\n send: {\n fontSize: 14,\n fontWeight: '600',\n paddingVertical: 16,\n },\n shuffle: {\n fontSize: 14,\n fontWeight: '600',\n paddingVertical: 16,\n },\n shuffleButton: {\n alignItems: 'center',\n borderRadius: 16,\n borderWidth: 1,\n height: 32,\n justifyContent: 'center',\n width: 32,\n },\n});\n\nexport type GiphyPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n 'handleAction' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'giphyVersion' | 'additionalTouchableProps'> & {\n attachment: Attachment<StreamChatGenerics>;\n };\n\nconst GiphyWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: GiphyPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n additionalTouchableProps,\n attachment,\n handleAction,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n } = props;\n\n const { actions, giphy: giphyData, image_url, thumb_url, title, type } = attachment;\n\n const {\n theme: {\n colors: { accent_blue, black, grey, grey_dark, grey_gainsboro, label_bg_transparent, white },\n messageSimple: {\n giphy: {\n buttonContainer,\n cancel,\n container,\n giphy,\n giphyContainer,\n giphyHeaderText,\n giphyHeaderTitle,\n giphyMask,\n giphyMaskText,\n header,\n selectionContainer,\n send,\n shuffle,\n },\n },\n },\n } = useTheme();\n\n let uri = image_url || thumb_url;\n const giphyDimensions: { height?: number; width?: number } = {};\n\n if (type === 'giphy' && giphyData) {\n const giphyVersionInfo = giphyData[props.giphyVersion];\n uri = giphyVersionInfo.url;\n giphyDimensions.height = parseFloat(giphyVersionInfo.height);\n giphyDimensions.width = parseFloat(giphyVersionInfo.width);\n }\n\n if (!uri) return null;\n\n return actions ? (\n <View\n style={[\n styles.selectionContainer,\n { backgroundColor: white, borderColor: `${black}0D` },\n selectionContainer,\n ]}\n >\n <View style={[styles.header, header]}>\n <GiphyIcon />\n <Text style={[styles.giphyHeaderText, giphyHeaderText]}>Giphy</Text>\n <Text\n style={[styles.giphyHeaderTitle, giphyHeaderTitle, { color: grey_dark }]}\n >{`/giphy ${title}`}</Text>\n </View>\n <View style={styles.selectionImageContainer}>\n <Image\n resizeMode='contain'\n source={{ uri: makeImageCompatibleUrl(uri) }}\n style={[styles.giphy, giphyDimensions, giphy]}\n />\n </View>\n <View>\n <View style={styles.actionsRow}>\n <TouchableOpacity\n onPress={() => {\n if (actions?.[2].name && actions?.[2].value && handleAction) {\n handleAction(actions[2].name, actions[2].value);\n }\n }}\n style={[\n styles.buttonContainer,\n { borderColor: grey_gainsboro, borderRightWidth: 1 },\n buttonContainer,\n ]}\n >\n <Text style={[styles.cancel, { color: grey }, cancel]}>{actions?.[2].text}</Text>\n </TouchableOpacity>\n <TouchableOpacity\n onPress={() => {\n if (actions?.[1].name && actions?.[1].value && handleAction) {\n handleAction(actions[1].name, actions[1].value);\n }\n }}\n style={[\n styles.buttonContainer,\n { borderColor: grey_gainsboro, borderRightWidth: 1 },\n buttonContainer,\n ]}\n >\n <Text style={[styles.shuffle, { color: grey }, shuffle]}>{actions?.[1].text}</Text>\n </TouchableOpacity>\n <TouchableOpacity\n onPress={() => {\n if (actions?.[0].name && actions?.[0].value && handleAction) {\n handleAction(actions[0].name, actions[0].value);\n }\n }}\n style={[styles.buttonContainer, { borderColor: grey_gainsboro }, buttonContainer]}\n >\n <Text style={[styles.send, { color: accent_blue }, send]}>{actions?.[0].text}</Text>\n </TouchableOpacity>\n </View>\n </View>\n </View>\n ) : (\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'giphy',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n emitter: 'giphy',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n emitter: 'giphy',\n event,\n });\n }\n }}\n testID='giphy-attachment'\n {...additionalTouchableProps}\n >\n <View style={[styles.container, container]}>\n <Image\n resizeMode='contain'\n source={{ uri: makeImageCompatibleUrl(uri) }}\n style={[styles.giphy, giphyDimensions, giphy]}\n testID='giphy-attachment-image'\n />\n <View style={[styles.giphyMask, giphyMask]}>\n <View\n style={[\n styles.giphyContainer,\n { backgroundColor: label_bg_transparent },\n giphyContainer,\n ]}\n >\n <Lightning height={16} pathFill={white} width={16} />\n <Text style={[styles.giphyMaskText, { color: white }, giphyMaskText]}>\n {type?.toUpperCase()}\n </Text>\n </View>\n </View>\n </View>\n </TouchableOpacity>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: GiphyPropsWithContext<StreamChatGenerics>,\n nextProps: GiphyPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n attachment: { actions: prevActions, image_url: prevImageUrl, thumb_url: prevThumbUrl },\n giphyVersion: prevGiphyVersion,\n } = prevProps;\n const {\n attachment: { actions: nextActions, image_url: nextImageUrl, thumb_url: nextThumbUrl },\n giphyVersion: nextGiphyVersion,\n } = nextProps;\n\n const imageUrlEqual = prevImageUrl === nextImageUrl;\n if (!imageUrlEqual) return false;\n\n const thumbUrlEqual = prevThumbUrl === nextThumbUrl;\n if (!thumbUrlEqual) return false;\n\n const giphyVersionEqual = prevGiphyVersion === nextGiphyVersion;\n if (!giphyVersionEqual) return false;\n\n const actionsEqual =\n Array.isArray(prevActions) === Array.isArray(nextActions) &&\n ((Array.isArray(prevActions) &&\n Array.isArray(nextActions) &&\n prevActions.length === nextActions.length) ||\n prevActions === nextActions);\n if (!actionsEqual) return false;\n\n return true;\n};\n\nconst MemoizedGiphy = React.memo(GiphyWithContext, areEqual) as typeof GiphyWithContext;\n\nexport type GiphyProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<\n Pick<MessageContextValue<StreamChatGenerics>, 'isMyMessage' | 'onLongPress' | 'onPressIn'> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'giphyVersion' | 'additionalTouchableProps'>\n> & {\n attachment: Attachment<StreamChatGenerics>;\n};\n\n/**\n * UI component for card in attachments.\n */\nexport const Giphy = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: GiphyProps<StreamChatGenerics>,\n) => {\n const { handleAction, onLongPress, onPress, onPressIn, preventPress } =\n useMessageContext<StreamChatGenerics>();\n const { additionalTouchableProps, giphyVersion } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedGiphy\n {...{\n additionalTouchableProps,\n giphyVersion,\n handleAction,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n }}\n {...props}\n />\n );\n};\n\nGiphy.displayName = 'Giphy{messageSimple{giphy}}';\n"]}
1
+ {"version":3,"sources":["Giphy.tsx"],"names":["styles","StyleSheet","create","actionsRow","flexDirection","buttonContainer","alignItems","borderTopWidth","flex","justifyContent","cancel","fontSize","fontWeight","paddingVertical","container","overflow","width","giphy","alignSelf","borderRadius","height","maxWidth","giphyContainer","giphyHeaderText","giphyHeaderTitle","giphyMask","bottom","left","position","giphyMaskText","header","display","padding","selectionContainer","borderBottomLeftRadius","borderWidth","selectionImageContainer","margin","send","shuffle","shuffleButton","GiphyWithContext","props","additionalTouchableProps","attachment","handleAction","isMyMessage","onLongPress","onPress","onPressIn","preventPress","actions","giphyData","image_url","thumb_url","title","type","theme","colors","accent_blue","black","grey","grey_dark","grey_gainsboro","label_bg_transparent","white","messageSimple","uri","giphyDimensions","giphyVersionInfo","giphyVersion","url","parseFloat","backgroundColor","borderColor","color","name","value","borderRightWidth","text","event","emitter","toUpperCase","areEqual","prevProps","nextProps","prevActions","prevImageUrl","prevThumbUrl","prevGiphyVersion","prevIsMyMessage","nextActions","nextImageUrl","nextThumbUrl","nextGiphyVersion","nextIsMyMessage","imageUrlEqual","thumbUrlEqual","actionsEqual","Array","isArray","length","giphyVersionEqual","isMyMessageEqual","MemoizedGiphy","React","memo","Giphy","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Image, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport type { Attachment } from 'stream-chat';\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 { GiphyIcon } from '../../icons';\nimport { Lightning } from '../../icons/Lightning';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { makeImageCompatibleUrl } from '../../utils/utils';\n\nconst styles = StyleSheet.create({\n actionsRow: {\n flexDirection: 'row',\n },\n buttonContainer: {\n alignItems: 'center',\n borderTopWidth: 1,\n flex: 1,\n justifyContent: 'center',\n },\n cancel: {\n fontSize: 14,\n fontWeight: '600',\n paddingVertical: 16,\n },\n container: {\n overflow: 'hidden',\n width: 270,\n },\n giphy: {\n alignSelf: 'center',\n borderRadius: 2,\n height: 170,\n maxWidth: 270,\n width: 270,\n },\n giphyContainer: {\n alignItems: 'center',\n borderRadius: 12,\n flexDirection: 'row',\n height: 24,\n justifyContent: 'center',\n width: 68,\n },\n giphyHeaderText: {\n fontSize: 16,\n fontWeight: '600',\n },\n giphyHeaderTitle: {\n fontSize: 14,\n },\n giphyMask: {\n bottom: 8,\n left: 8,\n position: 'absolute',\n },\n giphyMaskText: {\n fontSize: 13,\n fontWeight: '600',\n },\n header: {\n alignItems: 'center',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n padding: 8,\n width: '60%',\n },\n selectionContainer: {\n borderBottomLeftRadius: 8,\n borderWidth: 1,\n overflow: 'hidden',\n width: 272,\n },\n selectionImageContainer: {\n alignSelf: 'center',\n margin: 1,\n },\n send: {\n fontSize: 14,\n fontWeight: '600',\n paddingVertical: 16,\n },\n shuffle: {\n fontSize: 14,\n fontWeight: '600',\n paddingVertical: 16,\n },\n shuffleButton: {\n alignItems: 'center',\n borderRadius: 16,\n borderWidth: 1,\n height: 32,\n justifyContent: 'center',\n width: 32,\n },\n});\n\nexport type GiphyPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageContextValue<StreamChatGenerics>,\n 'handleAction' | 'isMyMessage' | 'onLongPress' | 'onPress' | 'onPressIn' | 'preventPress'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'giphyVersion' | 'additionalTouchableProps'> & {\n attachment: Attachment<StreamChatGenerics>;\n };\n\nconst GiphyWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: GiphyPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n additionalTouchableProps,\n attachment,\n handleAction,\n isMyMessage,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n } = props;\n\n const { actions, giphy: giphyData, image_url, thumb_url, title, type } = attachment;\n\n const {\n theme: {\n colors: { accent_blue, black, grey, grey_dark, grey_gainsboro, label_bg_transparent, white },\n messageSimple: {\n giphy: {\n buttonContainer,\n cancel,\n container,\n giphy,\n giphyContainer,\n giphyHeaderText,\n giphyHeaderTitle,\n giphyMask,\n giphyMaskText,\n header,\n selectionContainer,\n send,\n shuffle,\n },\n },\n },\n } = useTheme();\n\n let uri = image_url || thumb_url;\n const giphyDimensions: { height?: number; width?: number } = {};\n\n if (type === 'giphy' && giphyData) {\n const giphyVersionInfo = giphyData[props.giphyVersion];\n uri = giphyVersionInfo.url;\n giphyDimensions.height = parseFloat(giphyVersionInfo.height);\n giphyDimensions.width = parseFloat(giphyVersionInfo.width);\n }\n\n if (!uri) return null;\n\n return actions ? (\n <View\n style={[\n styles.selectionContainer,\n { backgroundColor: white, borderColor: `${black}0D` },\n selectionContainer,\n ]}\n >\n <View style={[styles.header, header]}>\n <GiphyIcon />\n <Text style={[styles.giphyHeaderText, giphyHeaderText]}>Giphy</Text>\n <Text\n style={[styles.giphyHeaderTitle, giphyHeaderTitle, { color: grey_dark }]}\n >{`/giphy ${title}`}</Text>\n </View>\n <View style={styles.selectionImageContainer}>\n <Image\n resizeMode='contain'\n source={{ uri: makeImageCompatibleUrl(uri) }}\n style={[styles.giphy, giphyDimensions, giphy]}\n />\n </View>\n <View>\n <View style={styles.actionsRow}>\n <TouchableOpacity\n onPress={() => {\n if (actions?.[2].name && actions?.[2].value && handleAction) {\n handleAction(actions[2].name, actions[2].value);\n }\n }}\n style={[\n styles.buttonContainer,\n { borderColor: grey_gainsboro, borderRightWidth: 1 },\n buttonContainer,\n ]}\n >\n <Text style={[styles.cancel, { color: grey }, cancel]}>{actions?.[2].text}</Text>\n </TouchableOpacity>\n <TouchableOpacity\n onPress={() => {\n if (actions?.[1].name && actions?.[1].value && handleAction) {\n handleAction(actions[1].name, actions[1].value);\n }\n }}\n style={[\n styles.buttonContainer,\n { borderColor: grey_gainsboro, borderRightWidth: 1 },\n buttonContainer,\n ]}\n >\n <Text style={[styles.shuffle, { color: grey }, shuffle]}>{actions?.[1].text}</Text>\n </TouchableOpacity>\n <TouchableOpacity\n onPress={() => {\n if (actions?.[0].name && actions?.[0].value && handleAction) {\n handleAction(actions[0].name, actions[0].value);\n }\n }}\n style={[styles.buttonContainer, { borderColor: grey_gainsboro }, buttonContainer]}\n >\n <Text style={[styles.send, { color: accent_blue }, send]}>{actions?.[0].text}</Text>\n </TouchableOpacity>\n </View>\n </View>\n </View>\n ) : (\n <TouchableOpacity\n disabled={preventPress}\n onLongPress={(event) => {\n if (onLongPress) {\n onLongPress({\n emitter: 'giphy',\n event,\n });\n }\n }}\n onPress={(event) => {\n if (onPress) {\n onPress({\n emitter: 'giphy',\n event,\n });\n }\n }}\n onPressIn={(event) => {\n if (onPressIn) {\n onPressIn({\n emitter: 'giphy',\n event,\n });\n }\n }}\n testID='giphy-attachment'\n {...additionalTouchableProps}\n >\n <View\n style={[\n styles.container,\n { backgroundColor: isMyMessage ? grey_gainsboro : white },\n container,\n ]}\n >\n <Image\n resizeMode='contain'\n source={{ uri: makeImageCompatibleUrl(uri) }}\n style={[styles.giphy, giphyDimensions, giphy]}\n testID='giphy-attachment-image'\n />\n <View style={[styles.giphyMask, giphyMask]}>\n <View\n style={[\n styles.giphyContainer,\n { backgroundColor: label_bg_transparent },\n giphyContainer,\n ]}\n >\n <Lightning height={16} pathFill={white} width={16} />\n <Text style={[styles.giphyMaskText, { color: white }, giphyMaskText]}>\n {type?.toUpperCase()}\n </Text>\n </View>\n </View>\n </View>\n </TouchableOpacity>\n );\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: GiphyPropsWithContext<StreamChatGenerics>,\n nextProps: GiphyPropsWithContext<StreamChatGenerics>,\n) => {\n const {\n attachment: { actions: prevActions, image_url: prevImageUrl, thumb_url: prevThumbUrl },\n giphyVersion: prevGiphyVersion,\n isMyMessage: prevIsMyMessage,\n } = prevProps;\n const {\n attachment: { actions: nextActions, image_url: nextImageUrl, thumb_url: nextThumbUrl },\n giphyVersion: nextGiphyVersion,\n isMyMessage: nextIsMyMessage,\n } = nextProps;\n\n const imageUrlEqual = prevImageUrl === nextImageUrl;\n if (!imageUrlEqual) return false;\n\n const thumbUrlEqual = prevThumbUrl === nextThumbUrl;\n if (!thumbUrlEqual) return false;\n\n const actionsEqual =\n Array.isArray(prevActions) === Array.isArray(nextActions) &&\n ((Array.isArray(prevActions) &&\n Array.isArray(nextActions) &&\n prevActions.length === nextActions.length) ||\n prevActions === nextActions);\n if (!actionsEqual) return false;\n\n const giphyVersionEqual = prevGiphyVersion === nextGiphyVersion;\n if (!giphyVersionEqual) return false;\n\n const isMyMessageEqual = prevIsMyMessage === nextIsMyMessage;\n if (!isMyMessageEqual) return false;\n\n return true;\n};\n\nconst MemoizedGiphy = React.memo(GiphyWithContext, areEqual) as typeof GiphyWithContext;\n\nexport type GiphyProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<\n Pick<MessageContextValue<StreamChatGenerics>, 'isMyMessage' | 'onLongPress' | 'onPressIn'> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'giphyVersion' | 'additionalTouchableProps'>\n> & {\n attachment: Attachment<StreamChatGenerics>;\n};\n\n/**\n * UI component for card in attachments.\n */\nexport const Giphy = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: GiphyProps<StreamChatGenerics>,\n) => {\n const { handleAction, isMyMessage, onLongPress, onPress, onPressIn, preventPress } =\n useMessageContext<StreamChatGenerics>();\n const { additionalTouchableProps, giphyVersion } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedGiphy\n {...{\n additionalTouchableProps,\n giphyVersion,\n handleAction,\n isMyMessage,\n onLongPress,\n onPress,\n onPressIn,\n preventPress,\n }}\n {...props}\n />\n );\n};\n\nGiphy.displayName = 'Giphy{messageSimple{giphy}}';\n"]}
@@ -180,7 +180,7 @@ var MessageContentWithContext = function MessageContentWithContext(props) {
180
180
  backgroundColor = transparent;
181
181
  } else if (otherAttachments.length) {
182
182
  if (otherAttachments[0].type === 'giphy') {
183
- backgroundColor = message.quoted_message || isMyMessage ? grey_gainsboro : white;
183
+ backgroundColor = message.quoted_message ? grey_gainsboro : transparent;
184
184
  } else {
185
185
  backgroundColor = blue_alice;
186
186
  }