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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/lib/commonjs/components/Attachment/VideoThumbnail.js +18 -16
  2. package/lib/commonjs/components/Attachment/VideoThumbnail.js.map +1 -1
  3. package/lib/commonjs/components/MessageInput/FileUploadPreview.js +4 -2
  4. package/lib/commonjs/components/MessageInput/FileUploadPreview.js.map +1 -1
  5. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js +4 -1
  6. package/lib/commonjs/components/MessageInput/ImageUploadPreview.js.map +1 -1
  7. package/lib/commonjs/components/Reply/Reply.js +21 -13
  8. package/lib/commonjs/components/Reply/Reply.js.map +1 -1
  9. package/lib/commonjs/contexts/themeContext/utils/theme.js +5 -1
  10. package/lib/commonjs/contexts/themeContext/utils/theme.js.map +1 -1
  11. package/lib/commonjs/version.json +1 -1
  12. package/lib/module/components/Attachment/VideoThumbnail.js +18 -16
  13. package/lib/module/components/Attachment/VideoThumbnail.js.map +1 -1
  14. package/lib/module/components/MessageInput/FileUploadPreview.js +4 -2
  15. package/lib/module/components/MessageInput/FileUploadPreview.js.map +1 -1
  16. package/lib/module/components/MessageInput/ImageUploadPreview.js +4 -1
  17. package/lib/module/components/MessageInput/ImageUploadPreview.js.map +1 -1
  18. package/lib/module/components/Reply/Reply.js +21 -13
  19. package/lib/module/components/Reply/Reply.js.map +1 -1
  20. package/lib/module/contexts/themeContext/utils/theme.js +5 -1
  21. package/lib/module/contexts/themeContext/utils/theme.js.map +1 -1
  22. package/lib/module/version.json +1 -1
  23. package/lib/typescript/components/Attachment/VideoThumbnail.d.ts +4 -2
  24. package/lib/typescript/contexts/themeContext/utils/theme.d.ts +4 -0
  25. package/package.json +1 -1
  26. package/src/components/Attachment/VideoThumbnail.tsx +14 -4
  27. package/src/components/MessageInput/FileUploadPreview.tsx +3 -3
  28. package/src/components/MessageInput/ImageUploadPreview.tsx +2 -2
  29. package/src/components/Reply/Reply.tsx +14 -2
  30. package/src/contexts/themeContext/utils/theme.ts +8 -0
  31. package/src/version.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["theme.ts"],"names":["DEFAULT_STATUS_ICON_SIZE","Colors","accent_blue","accent_green","accent_red","bg_gradient_end","bg_gradient_start","black","blue_alice","border","grey","grey_dark","grey_gainsboro","grey_whisper","icon_background","label_bg_transparent","modal_shadow","overlay","shadow_icon","targetedMessageBackground","transparent","white","white_smoke","white_snow","defaultTheme","attachmentPicker","bottomSheetContentContainer","durationText","errorButtonText","errorContainer","errorText","image","imageOverlay","imageOverlaySelectedComponent","check","attachmentSelectionBar","container","icon","avatar","BASE_AVATAR_SIZE","borderRadius","height","width","presenceIndicator","cx","cy","r","strokeWidth","presenceIndicatorContainer","channel","selectChannel","channelListFooterLoadingIndicator","channelListHeaderErrorIndicator","channelListLoadingIndicator","channelListMessenger","flatList","flatListContent","channelListSkeleton","animationTime","background","gradientStart","stopOpacity","gradientStop","channelPreview","checkAllIcon","checkIcon","contentContainer","date","message","fontWeight","mutedStatus","iconStyle","row","title","unreadContainer","unreadText","colors","dateHeader","text","emptyStateIndicator","channelContainer","channelDetails","channelTitle","groupAvatar","resizeMode","iconBadge","iconInner","unreadCount","iconSquare","imageGallery","footer","centerContainer","imageCountText","innerContainer","leftContainer","rightContainer","grid","gridAvatar","gridAvatarWrapper","gridImage","handle","handleText","header","dateText","usernameText","videoControl","durationTextStyle","roundedView","videoContainer","inlineDateSeparator","loadingDots","loadingDot","spacing","loadingErrorIndicator","retryText","loadingIndicator","loadingText","messageInput","attachButton","attachButtonContainer","autoCompleteInputContainer","commandsButton","commandsButtonContainer","composerContainer","cooldownTimer","editingBoxContainer","editingBoxHeader","editingBoxHeaderTitle","editingStateHeader","fileUploadPreview","dismiss","fileContainer","fileContentContainer","filenameText","fileSizeText","fileTextContainer","giphyCommandInput","giphyContainer","giphyText","imageUploadPreview","itemContainer","upload","inputBox","inputBoxContainer","moreOptionsButton","optionsContainer","replyContainer","sendButton","sendButtonContainer","sendMessageDisallowedIndicator","showThreadMessageInChannelButton","checkBoxActive","checkBoxInactive","suggestions","command","args","iconContainer","maxHeight","emoji","item","mention","avatarSize","column","name","tag","suggestionsListContainer","flatlist","uploadProgressIndicator","messageList","errorNotification","errorNotificationText","inlineUnreadIndicator","listContainer","messageSystem","line","textContainer","scrollToBottomButton","touchable","unreadCountNotificationContainer","unreadCountNotificationText","wrapper","typingIndicatorContainer","messageSimple","actions","button","buttonText","avatarWrapper","leftAlign","marginRight","rightAlign","marginLeft","spacer","card","authorName","authorNameContainer","authorNameFooter","authorNameFooterContainer","authorNameMask","cover","description","noURI","borderLeftWidth","paddingLeft","playButtonStyle","playIcon","content","borderRadiusL","borderRadiusS","containerInner","deletedContainer","deletedContainerInner","deletedMetaText","paddingHorizontal","deletedText","em","fontSize","fontStyle","paddingRight","paddingTop","errorIcon","errorIconContainer","bottom","position","right","eyeIcon","markdown","messageUser","metaContainer","flexDirection","marginTop","metaText","replyBorder","onlyEmojiMarkdown","file","details","fileSize","fileAttachmentGroup","gallery","galleryContainer","galleryItemColumn","gridHeight","gridWidth","imageContainer","maxWidth","minHeight","minWidth","moreImagesContainer","moreImagesText","giphy","buttonContainer","cancel","giphyHeaderText","giphyHeaderTitle","giphyMask","giphyMaskText","selectionContainer","send","shuffle","pinnedHeader","label","reactionList","middleIcon","radius","reactionBubble","reactionBubbleBackground","reactionSize","strokeSize","replies","avatarContainerMultiple","avatarContainerSingle","leftAvatarsContainer","leftCurve","messageRepliesText","rightAvatarsContainer","rightCurve","status","readByCount","statusContainer","timeIcon","targetedMessageUnderlay","videoThumbnail","messageActions","actionContainer","padding","reactions","avatarContainer","avatarName","flatListContainer","reactionsList","reaction","reply","fileAttachmentContainer","imageAttachment","markdownStyles","messageContainer","screenPadding","spinner","thread","newThread","typingIndicator"],"mappings":"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","sourcesContent":["import type { ImageStyle, TextStyle, ViewStyle } from 'react-native';\nimport type { CircleProps, Color, StopProps } from 'react-native-svg';\n\nimport type { IconProps } from '../../../icons/utils/base';\nimport { vh } from '../../../utils/utils';\n\nexport const DEFAULT_STATUS_ICON_SIZE = 16;\n\nexport const Colors = {\n accent_blue: '#005FFF',\n accent_green: '#20E070',\n accent_red: '#FF3742',\n bg_gradient_end: '#F7F7F7',\n bg_gradient_start: '#FCFCFC',\n black: '#000000',\n blue_alice: '#E9F2FF',\n border: '#00000014', // 14 = 8% opacity; top: x=0, y=-1; bottom: x=0, y=1\n grey: '#7A7A7A',\n grey_dark: '#72767E',\n grey_gainsboro: '#DBDBDB',\n grey_whisper: '#ECEBEB',\n icon_background: '#FFFFFF',\n label_bg_transparent: '#00000033', // 33 = 20% opacity\n modal_shadow: '#00000099', // 99 = 60% opacity; x=0, y= 1, radius=4\n overlay: '#000000CC', // CC = 80% opacity\n shadow_icon: '#00000040', // 40 = 25% opacity; x=0, y=0, radius=4\n targetedMessageBackground: '#FBF4DD', // dark mode = #302D22\n transparent: 'transparent',\n white: '#FFFFFF',\n white_smoke: '#F2F2F2',\n white_snow: '#FCFCFC',\n};\n\nexport type MarkdownStyle = Partial<{\n autolink: TextStyle;\n blockQuoteBar: ViewStyle;\n blockQuoteSection: ViewStyle;\n blockQuoteSectionBar: ViewStyle;\n blockQuoteText: TextStyle | ViewStyle;\n br: TextStyle;\n codeBlock: TextStyle;\n del: TextStyle;\n em: TextStyle;\n heading: TextStyle;\n heading1: TextStyle;\n heading2: TextStyle;\n heading3: TextStyle;\n heading4: TextStyle;\n heading5: TextStyle;\n heading6: TextStyle;\n hr: ViewStyle;\n image: ImageStyle;\n inlineCode: TextStyle;\n list: ViewStyle;\n listItem: ViewStyle;\n listItemBullet: TextStyle;\n listItemNumber: TextStyle;\n listItemText: TextStyle;\n listRow: ViewStyle;\n mailTo: TextStyle;\n mentions: TextStyle;\n newline: TextStyle;\n noMargin: TextStyle;\n paragraph: TextStyle;\n paragraphCenter: TextStyle;\n paragraphWithImage: ViewStyle;\n strong: TextStyle;\n sublist: ViewStyle;\n table: ViewStyle;\n tableHeader: ViewStyle;\n tableHeaderCell: TextStyle;\n tableRow: ViewStyle;\n tableRowCell: ViewStyle;\n tableRowLast: ViewStyle;\n text: TextStyle;\n u: TextStyle;\n view: ViewStyle;\n}>;\n\nexport type Theme = {\n attachmentPicker: {\n bottomSheetContentContainer: ViewStyle;\n durationText: TextStyle;\n errorButtonText: TextStyle;\n errorContainer: ViewStyle;\n errorText: TextStyle;\n image: ViewStyle;\n imageOverlay: ViewStyle;\n imageOverlaySelectedComponent: {\n check: ViewStyle;\n };\n };\n attachmentSelectionBar: {\n container: ViewStyle;\n icon: ViewStyle;\n };\n avatar: {\n BASE_AVATAR_SIZE: number;\n container: ViewStyle;\n image: ImageStyle;\n presenceIndicator: CircleProps;\n presenceIndicatorContainer: ViewStyle;\n };\n channel: {\n selectChannel: TextStyle;\n };\n channelListFooterLoadingIndicator: {\n container: ViewStyle;\n };\n channelListHeaderErrorIndicator: {\n container: ViewStyle;\n errorText: TextStyle;\n };\n channelListLoadingIndicator: {\n container: ViewStyle;\n };\n channelListMessenger: {\n flatList: ViewStyle;\n flatListContent: ViewStyle;\n };\n channelListSkeleton: {\n animationTime: number;\n background: ViewStyle;\n container: ViewStyle;\n gradientStart: StopProps;\n gradientStop: StopProps;\n height: number;\n maskFillColor?: Color;\n };\n channelPreview: {\n checkAllIcon: IconProps;\n checkIcon: IconProps;\n container: ViewStyle;\n contentContainer: ViewStyle;\n date: TextStyle;\n message: TextStyle & {\n fontWeight: TextStyle['fontWeight'];\n };\n mutedStatus: {\n height: number;\n iconStyle: ViewStyle;\n width: number;\n };\n row: ViewStyle;\n title: TextStyle;\n unreadContainer: ViewStyle;\n unreadText: TextStyle;\n };\n colors: typeof Colors & { [key: string]: string };\n dateHeader: {\n container: ViewStyle;\n text: TextStyle;\n };\n emptyStateIndicator: {\n channelContainer: ViewStyle;\n channelDetails: TextStyle;\n channelTitle: TextStyle;\n };\n groupAvatar: {\n container: ViewStyle;\n image: ImageStyle;\n };\n iconBadge: {\n icon: ViewStyle;\n iconInner: ViewStyle;\n unreadCount: TextStyle;\n };\n iconSquare: {\n container: ViewStyle;\n image: ImageStyle;\n };\n imageGallery: {\n footer: {\n centerContainer: ViewStyle;\n container: ViewStyle;\n imageCountText: TextStyle;\n innerContainer: ViewStyle;\n leftContainer: ViewStyle;\n rightContainer: ViewStyle;\n };\n grid: {\n contentContainer: ViewStyle;\n gridAvatar: ImageStyle;\n gridAvatarWrapper: ViewStyle;\n gridImage: ViewStyle;\n handle: ViewStyle;\n handleText: TextStyle;\n overlay: ViewStyle;\n };\n header: {\n centerContainer: ViewStyle;\n container: ViewStyle;\n dateText: TextStyle;\n innerContainer: ViewStyle;\n leftContainer: ViewStyle;\n rightContainer: ViewStyle;\n usernameText: TextStyle;\n };\n videoControl: {\n durationTextStyle: TextStyle;\n roundedView: ViewStyle;\n videoContainer: ViewStyle;\n };\n backgroundColor?: string;\n pager?: ViewStyle;\n slide?: ImageStyle;\n };\n inlineDateSeparator: {\n container: ViewStyle;\n text: TextStyle;\n };\n loadingDots: {\n container: ViewStyle;\n loadingDot: ViewStyle;\n spacing: number;\n };\n loadingErrorIndicator: {\n container: ViewStyle;\n errorText: TextStyle;\n retryText: TextStyle;\n };\n loadingIndicator: {\n container: ViewStyle;\n loadingText: TextStyle;\n };\n messageInput: {\n attachButton: ViewStyle;\n attachButtonContainer: ViewStyle;\n attachmentSelectionBar: ViewStyle;\n autoCompleteInputContainer: ViewStyle;\n commandsButton: ViewStyle;\n commandsButtonContainer: ViewStyle;\n composerContainer: ViewStyle;\n container: ViewStyle;\n cooldownTimer: {\n container: ViewStyle;\n text: TextStyle;\n };\n editingBoxContainer: ViewStyle;\n editingBoxHeader: ViewStyle;\n editingBoxHeaderTitle: TextStyle;\n editingStateHeader: {\n editingBoxHeader: ViewStyle;\n editingBoxHeaderTitle: TextStyle;\n };\n fileUploadPreview: {\n dismiss: ViewStyle;\n fileContainer: ViewStyle;\n fileContentContainer: ViewStyle;\n filenameText: TextStyle;\n fileSizeText: TextStyle;\n fileTextContainer: ViewStyle;\n flatList: ViewStyle;\n };\n giphyCommandInput: {\n giphyContainer: ViewStyle;\n giphyText: TextStyle;\n };\n imageUploadPreview: {\n dismiss: ViewStyle;\n flatList: ViewStyle;\n itemContainer: ViewStyle;\n upload: ImageStyle;\n };\n inputBox: TextStyle;\n inputBoxContainer: ViewStyle;\n moreOptionsButton: ViewStyle;\n optionsContainer: ViewStyle;\n replyContainer: ViewStyle;\n sendButton: ViewStyle;\n sendButtonContainer: ViewStyle;\n sendMessageDisallowedIndicator: {\n container: ViewStyle;\n text: TextStyle;\n };\n showThreadMessageInChannelButton: {\n check: IconProps;\n checkBoxActive: ViewStyle;\n checkBoxInactive: ViewStyle;\n container: ViewStyle;\n innerContainer: ViewStyle;\n text: TextStyle;\n };\n suggestions: {\n command: {\n args: TextStyle;\n container: ViewStyle;\n iconContainer: ViewStyle;\n title: TextStyle;\n };\n container: ViewStyle & {\n maxHeight: number;\n };\n emoji: {\n container: ViewStyle;\n text: TextStyle;\n };\n header: {\n container: ViewStyle;\n title: TextStyle;\n };\n item: ViewStyle;\n mention: {\n avatarSize: number;\n column: ViewStyle;\n container: ViewStyle;\n name: TextStyle;\n tag: TextStyle;\n };\n };\n suggestionsListContainer: {\n container: ViewStyle;\n flatlist: ViewStyle;\n };\n uploadProgressIndicator: {\n container: ViewStyle;\n overlay: ViewStyle;\n };\n };\n messageList: {\n container: ViewStyle;\n contentContainer: ViewStyle;\n errorNotification: ViewStyle;\n errorNotificationText: TextStyle;\n inlineUnreadIndicator: {\n container: ViewStyle;\n text: TextStyle;\n };\n listContainer: ViewStyle;\n messageSystem: {\n container: ViewStyle;\n dateText: TextStyle;\n line: ViewStyle;\n text: TextStyle;\n textContainer: ViewStyle;\n };\n scrollToBottomButton: {\n container: ViewStyle;\n touchable: ViewStyle;\n unreadCountNotificationContainer: ViewStyle;\n unreadCountNotificationText: TextStyle;\n wrapper: ViewStyle;\n chevronColor?: Color;\n };\n typingIndicatorContainer: ViewStyle;\n };\n messageSimple: {\n actions: {\n button: ViewStyle & {\n defaultBackgroundColor?: ViewStyle['backgroundColor'];\n defaultBorderColor?: ViewStyle['borderColor'];\n primaryBackgroundColor?: ViewStyle['backgroundColor'];\n primaryBorderColor?: ViewStyle['borderColor'];\n };\n buttonText: TextStyle & {\n defaultColor?: TextStyle['color'];\n primaryColor?: TextStyle['color'];\n };\n container: ViewStyle;\n };\n avatarWrapper: {\n container: ViewStyle;\n leftAlign: ViewStyle;\n rightAlign: ViewStyle;\n spacer: ViewStyle;\n };\n card: {\n authorName: TextStyle;\n authorNameContainer: ViewStyle;\n authorNameFooter: TextStyle;\n authorNameFooterContainer: ViewStyle;\n authorNameMask: ViewStyle;\n container: ViewStyle;\n cover: ImageStyle;\n footer: ViewStyle & {\n description: TextStyle;\n title: TextStyle;\n };\n noURI: ViewStyle;\n playButtonStyle: {\n durationTextStyle: TextStyle;\n roundedView: ViewStyle;\n videoContainer: ViewStyle;\n };\n playIcon: IconProps;\n };\n container: ViewStyle;\n content: {\n container: ViewStyle & {\n borderRadiusL: ViewStyle['borderBottomLeftRadius' | 'borderTopLeftRadius'];\n borderRadiusS: ViewStyle['borderBottomRightRadius' | 'borderTopRightRadius'];\n };\n containerInner: ViewStyle;\n deletedContainer: ViewStyle;\n deletedContainerInner: ViewStyle;\n deletedMetaText: TextStyle;\n deletedText: MarkdownStyle;\n errorContainer: ViewStyle;\n errorIcon: IconProps;\n errorIconContainer: ViewStyle;\n eyeIcon: IconProps;\n /**\n * Available options for styling text:\n * https://github.com/andangrd/react-native-markdown-package/blob/main/styles.js\n */\n markdown: MarkdownStyle;\n messageUser: TextStyle;\n metaContainer: ViewStyle;\n metaText: TextStyle;\n replyBorder: ViewStyle;\n replyContainer: ViewStyle;\n textContainer: ViewStyle & {\n onlyEmojiMarkdown: MarkdownStyle;\n };\n wrapper: ViewStyle;\n };\n file: {\n container: ViewStyle;\n details: ViewStyle;\n fileSize: TextStyle;\n icon: IconProps;\n title: TextStyle;\n };\n fileAttachmentGroup: {\n container: ViewStyle;\n };\n gallery: {\n galleryContainer: ViewStyle;\n galleryItemColumn: ViewStyle;\n gridHeight: number;\n gridWidth: number;\n image: ImageStyle;\n imageContainer: ViewStyle;\n maxHeight: number;\n maxWidth: number;\n minHeight: number;\n minWidth: number;\n moreImagesContainer: ViewStyle;\n moreImagesText: TextStyle;\n };\n giphy: {\n buttonContainer: ViewStyle;\n cancel: TextStyle;\n container: ViewStyle;\n giphy: ImageStyle;\n giphyContainer: ViewStyle;\n giphyHeaderText: TextStyle;\n giphyHeaderTitle: TextStyle;\n giphyMask: ViewStyle;\n giphyMaskText: TextStyle;\n header: ViewStyle;\n selectionContainer: ViewStyle;\n send: TextStyle;\n shuffle: TextStyle;\n title: TextStyle;\n };\n loadingIndicator: {\n container: ViewStyle;\n roundedView: ViewStyle;\n };\n pinnedHeader: {\n container: ViewStyle;\n label: TextStyle;\n };\n reactionList: {\n container: ViewStyle;\n middleIcon: ViewStyle;\n radius: number;\n reactionBubble: ViewStyle;\n reactionBubbleBackground: ViewStyle;\n reactionSize: number;\n strokeSize: number;\n };\n replies: {\n avatar: ViewStyle;\n avatarContainerMultiple: ViewStyle;\n avatarContainerSingle: ViewStyle;\n container: ViewStyle;\n leftAvatarsContainer: ViewStyle;\n leftCurve: ViewStyle;\n messageRepliesText: TextStyle;\n rightAvatarsContainer: ViewStyle;\n rightCurve: ViewStyle;\n avatarSize?: number;\n };\n status: {\n checkAllIcon: IconProps;\n checkIcon: IconProps;\n readByCount: TextStyle;\n statusContainer: ViewStyle;\n timeIcon: IconProps;\n };\n targetedMessageUnderlay: ViewStyle;\n videoThumbnail: {\n container: ViewStyle;\n roundedView: ViewStyle;\n };\n };\n overlay: {\n container: ViewStyle;\n messageActions: {\n actionContainer: ViewStyle;\n icon: ViewStyle;\n title: TextStyle;\n };\n padding: number;\n reactions: {\n avatarContainer: ViewStyle;\n avatarName: TextStyle;\n avatarSize: number;\n container: ViewStyle;\n flatListContainer: ViewStyle;\n radius: number;\n reactionBubble: ViewStyle;\n reactionBubbleBackground: ViewStyle;\n title: TextStyle;\n };\n reactionsList: {\n radius: number;\n reaction: ViewStyle;\n reactionList: ViewStyle;\n reactionSize: number;\n };\n };\n reply: {\n container: ViewStyle;\n fileAttachmentContainer: ViewStyle;\n imageAttachment: ImageStyle;\n markdownStyles: MarkdownStyle;\n messageContainer: ViewStyle;\n textContainer: ViewStyle;\n };\n screenPadding: number;\n spinner: ViewStyle;\n thread: {\n newThread: ViewStyle & {\n text: TextStyle;\n backgroundGradientStart?: string;\n backgroundGradientStop?: string;\n };\n };\n typingIndicator: {\n container: ViewStyle;\n text: TextStyle & {\n fontSize: TextStyle['fontSize'];\n };\n };\n};\n\nexport const defaultTheme: Theme = {\n attachmentPicker: {\n bottomSheetContentContainer: {},\n durationText: {},\n errorButtonText: {},\n errorContainer: {},\n errorText: {},\n image: {},\n imageOverlay: {},\n imageOverlaySelectedComponent: {\n check: {},\n },\n },\n attachmentSelectionBar: {\n container: {},\n icon: {},\n },\n avatar: {\n BASE_AVATAR_SIZE: 32,\n container: {},\n image: {\n borderRadius: 16,\n height: 32,\n width: 32,\n },\n presenceIndicator: {\n cx: 6,\n cy: 6,\n r: 5,\n strokeWidth: 2,\n },\n presenceIndicatorContainer: {},\n },\n channel: {\n selectChannel: {},\n },\n channelListFooterLoadingIndicator: {\n container: {},\n },\n channelListHeaderErrorIndicator: {\n container: {},\n errorText: {},\n },\n channelListLoadingIndicator: {\n container: {},\n },\n channelListMessenger: {\n flatList: {},\n flatListContent: {},\n },\n channelListSkeleton: {\n animationTime: 1800, // in milliseconds\n background: {},\n container: {},\n gradientStart: {\n stopOpacity: 0,\n },\n gradientStop: {\n stopOpacity: 0.5,\n },\n height: 64,\n },\n channelPreview: {\n checkAllIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n checkIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n container: {},\n contentContainer: {},\n date: {},\n message: {\n fontWeight: '400',\n },\n mutedStatus: {\n height: 20,\n iconStyle: {},\n width: 20,\n },\n row: {},\n title: {},\n unreadContainer: {},\n unreadText: {},\n },\n colors: {\n ...Colors,\n },\n dateHeader: {\n container: {},\n text: {},\n },\n emptyStateIndicator: {\n channelContainer: {},\n channelDetails: {},\n channelTitle: {},\n },\n groupAvatar: {\n container: {},\n image: {\n resizeMode: 'cover',\n },\n },\n iconBadge: {\n icon: {},\n iconInner: {},\n unreadCount: {},\n },\n iconSquare: {\n container: {},\n image: {},\n },\n imageGallery: {\n footer: {\n centerContainer: {},\n container: {},\n imageCountText: {},\n innerContainer: {},\n leftContainer: {},\n rightContainer: {},\n },\n grid: {\n contentContainer: {},\n gridAvatar: {},\n gridAvatarWrapper: {},\n gridImage: {},\n handle: {},\n handleText: {},\n overlay: {},\n },\n header: {\n centerContainer: {},\n container: {},\n dateText: {},\n innerContainer: {},\n leftContainer: {},\n rightContainer: {},\n usernameText: {},\n },\n videoControl: {\n durationTextStyle: {},\n roundedView: {},\n videoContainer: {},\n },\n },\n inlineDateSeparator: {\n container: {},\n text: {},\n },\n loadingDots: {\n container: {},\n loadingDot: {},\n spacing: 4,\n },\n loadingErrorIndicator: {\n container: {},\n errorText: {},\n retryText: {},\n },\n loadingIndicator: {\n container: {},\n loadingText: {},\n },\n messageInput: {\n attachButton: {},\n attachButtonContainer: {},\n attachmentSelectionBar: {},\n autoCompleteInputContainer: {},\n commandsButton: {},\n commandsButtonContainer: {},\n composerContainer: {},\n container: {},\n cooldownTimer: {\n container: {},\n text: {},\n },\n editingBoxContainer: {},\n editingBoxHeader: {},\n editingBoxHeaderTitle: {},\n editingStateHeader: {\n editingBoxHeader: {},\n editingBoxHeaderTitle: {},\n },\n fileUploadPreview: {\n dismiss: {},\n fileContainer: {},\n fileContentContainer: {},\n filenameText: {},\n fileSizeText: {},\n fileTextContainer: {},\n flatList: {},\n },\n giphyCommandInput: {\n giphyContainer: {},\n giphyText: {},\n },\n imageUploadPreview: {\n dismiss: {},\n flatList: {},\n itemContainer: {},\n upload: {},\n },\n inputBox: {},\n inputBoxContainer: {},\n moreOptionsButton: {},\n optionsContainer: {},\n replyContainer: {},\n sendButton: {},\n sendButtonContainer: {},\n sendMessageDisallowedIndicator: {\n container: {},\n text: {},\n },\n showThreadMessageInChannelButton: {\n check: {},\n checkBoxActive: {},\n checkBoxInactive: {},\n container: {},\n innerContainer: {},\n text: {},\n },\n suggestions: {\n command: {\n args: {},\n container: {},\n iconContainer: {},\n title: {},\n },\n container: {\n maxHeight: vh(25),\n },\n emoji: {\n container: {},\n text: {},\n },\n header: {\n container: {},\n title: {},\n },\n item: {},\n mention: {\n avatarSize: 40,\n column: {},\n container: {},\n name: {},\n tag: {},\n },\n },\n suggestionsListContainer: {\n container: {},\n flatlist: {},\n },\n uploadProgressIndicator: {\n container: {},\n overlay: {},\n },\n },\n messageList: {\n container: {},\n contentContainer: {},\n errorNotification: {},\n errorNotificationText: {},\n inlineUnreadIndicator: {\n container: {},\n text: {},\n },\n listContainer: {},\n messageSystem: {\n container: {},\n dateText: {},\n line: {},\n text: {},\n textContainer: {},\n },\n scrollToBottomButton: {\n container: {},\n touchable: {},\n unreadCountNotificationContainer: {},\n unreadCountNotificationText: {},\n wrapper: {},\n },\n typingIndicatorContainer: {},\n },\n messageSimple: {\n actions: {\n button: {},\n buttonText: {},\n container: {},\n },\n avatarWrapper: {\n container: {},\n leftAlign: {\n marginRight: 8,\n },\n rightAlign: {\n marginLeft: 8,\n },\n spacer: {\n height: 28,\n width: 32, // same as BASE_AVATAR_SIZE\n },\n },\n card: {\n authorName: {},\n authorNameContainer: {},\n authorNameFooter: {},\n authorNameFooterContainer: {},\n authorNameMask: {},\n container: {},\n cover: {},\n footer: {\n description: {},\n title: {\n fontWeight: '700',\n },\n },\n noURI: {\n borderLeftWidth: 2,\n paddingLeft: 8,\n },\n playButtonStyle: {\n durationTextStyle: {},\n roundedView: {},\n videoContainer: {},\n },\n playIcon: {\n height: 24,\n width: 24,\n },\n },\n container: {},\n content: {\n container: {\n borderRadiusL: 16,\n borderRadiusS: 0,\n },\n containerInner: {},\n deletedContainer: {},\n deletedContainerInner: {},\n deletedMetaText: {\n paddingHorizontal: 5,\n },\n deletedText: {\n em: {\n fontSize: 15,\n fontStyle: 'italic',\n fontWeight: '400',\n },\n },\n errorContainer: {\n paddingRight: 12,\n paddingTop: 0,\n },\n errorIcon: {\n height: 20,\n width: 20,\n },\n errorIconContainer: {\n bottom: -2,\n position: 'absolute',\n right: -12,\n },\n eyeIcon: {\n height: 16,\n width: 16,\n },\n markdown: {},\n messageUser: {\n fontSize: 12,\n fontWeight: '700',\n paddingRight: 6,\n },\n metaContainer: {\n flexDirection: 'row',\n marginTop: 4,\n },\n metaText: {\n fontSize: 12,\n },\n replyBorder: {},\n replyContainer: {},\n textContainer: {\n onlyEmojiMarkdown: { text: { fontSize: 50 } },\n },\n wrapper: {},\n },\n file: {\n container: {},\n details: {},\n fileSize: {},\n icon: {},\n title: {},\n },\n fileAttachmentGroup: {\n container: {},\n },\n gallery: {\n galleryContainer: {},\n galleryItemColumn: {},\n gridHeight: 195,\n gridWidth: 256,\n image: {},\n imageContainer: {},\n maxHeight: 300,\n maxWidth: 256,\n minHeight: 100,\n minWidth: 170,\n moreImagesContainer: {},\n moreImagesText: {},\n },\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 title: {},\n },\n loadingIndicator: {\n container: {},\n roundedView: {},\n },\n pinnedHeader: {\n container: {},\n label: {},\n },\n reactionList: {\n container: {},\n middleIcon: {},\n radius: 2, // not recommended to change this\n reactionBubble: {},\n reactionBubbleBackground: {},\n reactionSize: 24,\n strokeSize: 1, // not recommended to change this\n },\n replies: {\n avatar: {},\n avatarContainerMultiple: {},\n avatarContainerSingle: {},\n container: {},\n leftAvatarsContainer: {},\n leftCurve: {},\n messageRepliesText: {},\n rightAvatarsContainer: {},\n rightCurve: {},\n },\n status: {\n checkAllIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n checkIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n readByCount: {},\n statusContainer: {},\n timeIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n },\n targetedMessageUnderlay: {},\n videoThumbnail: {\n container: {},\n roundedView: {},\n },\n },\n overlay: {\n container: {},\n messageActions: {\n actionContainer: {},\n icon: {},\n title: {},\n },\n padding: 8,\n reactions: {\n avatarContainer: {},\n avatarName: {},\n avatarSize: 64,\n container: {},\n flatListContainer: {},\n radius: 2,\n reactionBubble: {},\n reactionBubbleBackground: {},\n title: {},\n },\n reactionsList: {\n radius: 2.5,\n reaction: {},\n reactionList: {},\n reactionSize: 24,\n },\n },\n reply: {\n container: {},\n fileAttachmentContainer: {},\n imageAttachment: {},\n markdownStyles: {},\n messageContainer: {},\n textContainer: {},\n },\n screenPadding: 8,\n spinner: {},\n thread: {\n newThread: {\n text: {},\n },\n },\n typingIndicator: {\n container: {},\n text: {\n fontSize: 14,\n },\n },\n};\n"]}
1
+ {"version":3,"sources":["theme.ts"],"names":["DEFAULT_STATUS_ICON_SIZE","Colors","accent_blue","accent_green","accent_red","bg_gradient_end","bg_gradient_start","black","blue_alice","border","grey","grey_dark","grey_gainsboro","grey_whisper","icon_background","label_bg_transparent","modal_shadow","overlay","shadow_icon","targetedMessageBackground","transparent","white","white_smoke","white_snow","defaultTheme","attachmentPicker","bottomSheetContentContainer","durationText","errorButtonText","errorContainer","errorText","image","imageOverlay","imageOverlaySelectedComponent","check","attachmentSelectionBar","container","icon","avatar","BASE_AVATAR_SIZE","borderRadius","height","width","presenceIndicator","cx","cy","r","strokeWidth","presenceIndicatorContainer","channel","selectChannel","channelListFooterLoadingIndicator","channelListHeaderErrorIndicator","channelListLoadingIndicator","channelListMessenger","flatList","flatListContent","channelListSkeleton","animationTime","background","gradientStart","stopOpacity","gradientStop","channelPreview","checkAllIcon","checkIcon","contentContainer","date","message","fontWeight","mutedStatus","iconStyle","row","title","unreadContainer","unreadText","colors","dateHeader","text","emptyStateIndicator","channelContainer","channelDetails","channelTitle","groupAvatar","resizeMode","iconBadge","iconInner","unreadCount","iconSquare","imageGallery","footer","centerContainer","imageCountText","innerContainer","leftContainer","rightContainer","grid","gridAvatar","gridAvatarWrapper","gridImage","handle","handleText","header","dateText","usernameText","videoControl","durationTextStyle","roundedView","videoContainer","inlineDateSeparator","loadingDots","loadingDot","spacing","loadingErrorIndicator","retryText","loadingIndicator","loadingText","messageInput","attachButton","attachButtonContainer","autoCompleteInputContainer","commandsButton","commandsButtonContainer","composerContainer","cooldownTimer","editingBoxContainer","editingBoxHeader","editingBoxHeaderTitle","editingStateHeader","fileUploadPreview","dismiss","fileContainer","fileContentContainer","filenameText","fileSizeText","fileTextContainer","giphyCommandInput","giphyContainer","giphyText","imageUploadPreview","itemContainer","upload","inputBox","inputBoxContainer","moreOptionsButton","optionsContainer","replyContainer","sendButton","sendButtonContainer","sendMessageDisallowedIndicator","showThreadMessageInChannelButton","checkBoxActive","checkBoxInactive","suggestions","command","args","iconContainer","maxHeight","emoji","item","mention","avatarSize","column","name","tag","suggestionsListContainer","flatlist","uploadProgressIndicator","messageList","errorNotification","errorNotificationText","inlineUnreadIndicator","listContainer","messageSystem","line","textContainer","scrollToBottomButton","touchable","unreadCountNotificationContainer","unreadCountNotificationText","wrapper","typingIndicatorContainer","messageSimple","actions","button","buttonText","avatarWrapper","leftAlign","marginRight","rightAlign","marginLeft","spacer","card","authorName","authorNameContainer","authorNameFooter","authorNameFooterContainer","authorNameMask","cover","description","noURI","borderLeftWidth","paddingLeft","playButtonStyle","playIcon","content","borderRadiusL","borderRadiusS","containerInner","deletedContainer","deletedContainerInner","deletedMetaText","paddingHorizontal","deletedText","em","fontSize","fontStyle","paddingRight","paddingTop","errorIcon","errorIconContainer","bottom","position","right","eyeIcon","markdown","messageUser","metaContainer","flexDirection","marginTop","metaText","replyBorder","onlyEmojiMarkdown","file","details","fileSize","fileAttachmentGroup","gallery","galleryContainer","galleryItemColumn","gridHeight","gridWidth","imageContainer","maxWidth","minHeight","minWidth","moreImagesContainer","moreImagesText","giphy","buttonContainer","cancel","giphyHeaderText","giphyHeaderTitle","giphyMask","giphyMaskText","selectionContainer","send","shuffle","pinnedHeader","label","reactionList","middleIcon","radius","reactionBubble","reactionBubbleBackground","reactionSize","strokeSize","replies","avatarContainerMultiple","avatarContainerSingle","leftAvatarsContainer","leftCurve","messageRepliesText","rightAvatarsContainer","rightCurve","status","readByCount","statusContainer","timeIcon","targetedMessageUnderlay","videoThumbnail","messageActions","actionContainer","padding","reactions","avatarContainer","avatarName","flatListContainer","reactionsList","reaction","reply","fileAttachmentContainer","imageAttachment","markdownStyles","messageContainer","screenPadding","spinner","thread","newThread","typingIndicator"],"mappings":"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","sourcesContent":["import type { ImageStyle, TextStyle, ViewStyle } from 'react-native';\nimport type { CircleProps, Color, StopProps } from 'react-native-svg';\n\nimport type { IconProps } from '../../../icons/utils/base';\nimport { vh } from '../../../utils/utils';\n\nexport const DEFAULT_STATUS_ICON_SIZE = 16;\n\nexport const Colors = {\n accent_blue: '#005FFF',\n accent_green: '#20E070',\n accent_red: '#FF3742',\n bg_gradient_end: '#F7F7F7',\n bg_gradient_start: '#FCFCFC',\n black: '#000000',\n blue_alice: '#E9F2FF',\n border: '#00000014', // 14 = 8% opacity; top: x=0, y=-1; bottom: x=0, y=1\n grey: '#7A7A7A',\n grey_dark: '#72767E',\n grey_gainsboro: '#DBDBDB',\n grey_whisper: '#ECEBEB',\n icon_background: '#FFFFFF',\n label_bg_transparent: '#00000033', // 33 = 20% opacity\n modal_shadow: '#00000099', // 99 = 60% opacity; x=0, y= 1, radius=4\n overlay: '#000000CC', // CC = 80% opacity\n shadow_icon: '#00000040', // 40 = 25% opacity; x=0, y=0, radius=4\n targetedMessageBackground: '#FBF4DD', // dark mode = #302D22\n transparent: 'transparent',\n white: '#FFFFFF',\n white_smoke: '#F2F2F2',\n white_snow: '#FCFCFC',\n};\n\nexport type MarkdownStyle = Partial<{\n autolink: TextStyle;\n blockQuoteBar: ViewStyle;\n blockQuoteSection: ViewStyle;\n blockQuoteSectionBar: ViewStyle;\n blockQuoteText: TextStyle | ViewStyle;\n br: TextStyle;\n codeBlock: TextStyle;\n del: TextStyle;\n em: TextStyle;\n heading: TextStyle;\n heading1: TextStyle;\n heading2: TextStyle;\n heading3: TextStyle;\n heading4: TextStyle;\n heading5: TextStyle;\n heading6: TextStyle;\n hr: ViewStyle;\n image: ImageStyle;\n inlineCode: TextStyle;\n list: ViewStyle;\n listItem: ViewStyle;\n listItemBullet: TextStyle;\n listItemNumber: TextStyle;\n listItemText: TextStyle;\n listRow: ViewStyle;\n mailTo: TextStyle;\n mentions: TextStyle;\n newline: TextStyle;\n noMargin: TextStyle;\n paragraph: TextStyle;\n paragraphCenter: TextStyle;\n paragraphWithImage: ViewStyle;\n strong: TextStyle;\n sublist: ViewStyle;\n table: ViewStyle;\n tableHeader: ViewStyle;\n tableHeaderCell: TextStyle;\n tableRow: ViewStyle;\n tableRowCell: ViewStyle;\n tableRowLast: ViewStyle;\n text: TextStyle;\n u: TextStyle;\n view: ViewStyle;\n}>;\n\nexport type Theme = {\n attachmentPicker: {\n bottomSheetContentContainer: ViewStyle;\n durationText: TextStyle;\n errorButtonText: TextStyle;\n errorContainer: ViewStyle;\n errorText: TextStyle;\n image: ViewStyle;\n imageOverlay: ViewStyle;\n imageOverlaySelectedComponent: {\n check: ViewStyle;\n };\n };\n attachmentSelectionBar: {\n container: ViewStyle;\n icon: ViewStyle;\n };\n avatar: {\n BASE_AVATAR_SIZE: number;\n container: ViewStyle;\n image: ImageStyle;\n presenceIndicator: CircleProps;\n presenceIndicatorContainer: ViewStyle;\n };\n channel: {\n selectChannel: TextStyle;\n };\n channelListFooterLoadingIndicator: {\n container: ViewStyle;\n };\n channelListHeaderErrorIndicator: {\n container: ViewStyle;\n errorText: TextStyle;\n };\n channelListLoadingIndicator: {\n container: ViewStyle;\n };\n channelListMessenger: {\n flatList: ViewStyle;\n flatListContent: ViewStyle;\n };\n channelListSkeleton: {\n animationTime: number;\n background: ViewStyle;\n container: ViewStyle;\n gradientStart: StopProps;\n gradientStop: StopProps;\n height: number;\n maskFillColor?: Color;\n };\n channelPreview: {\n checkAllIcon: IconProps;\n checkIcon: IconProps;\n container: ViewStyle;\n contentContainer: ViewStyle;\n date: TextStyle;\n message: TextStyle & {\n fontWeight: TextStyle['fontWeight'];\n };\n mutedStatus: {\n height: number;\n iconStyle: ViewStyle;\n width: number;\n };\n row: ViewStyle;\n title: TextStyle;\n unreadContainer: ViewStyle;\n unreadText: TextStyle;\n };\n colors: typeof Colors & { [key: string]: string };\n dateHeader: {\n container: ViewStyle;\n text: TextStyle;\n };\n emptyStateIndicator: {\n channelContainer: ViewStyle;\n channelDetails: TextStyle;\n channelTitle: TextStyle;\n };\n groupAvatar: {\n container: ViewStyle;\n image: ImageStyle;\n };\n iconBadge: {\n icon: ViewStyle;\n iconInner: ViewStyle;\n unreadCount: TextStyle;\n };\n iconSquare: {\n container: ViewStyle;\n image: ImageStyle;\n };\n imageGallery: {\n footer: {\n centerContainer: ViewStyle;\n container: ViewStyle;\n imageCountText: TextStyle;\n innerContainer: ViewStyle;\n leftContainer: ViewStyle;\n rightContainer: ViewStyle;\n };\n grid: {\n contentContainer: ViewStyle;\n gridAvatar: ImageStyle;\n gridAvatarWrapper: ViewStyle;\n gridImage: ViewStyle;\n handle: ViewStyle;\n handleText: TextStyle;\n overlay: ViewStyle;\n };\n header: {\n centerContainer: ViewStyle;\n container: ViewStyle;\n dateText: TextStyle;\n innerContainer: ViewStyle;\n leftContainer: ViewStyle;\n rightContainer: ViewStyle;\n usernameText: TextStyle;\n };\n videoControl: {\n durationTextStyle: TextStyle;\n roundedView: ViewStyle;\n videoContainer: ViewStyle;\n };\n backgroundColor?: string;\n pager?: ViewStyle;\n slide?: ImageStyle;\n };\n inlineDateSeparator: {\n container: ViewStyle;\n text: TextStyle;\n };\n loadingDots: {\n container: ViewStyle;\n loadingDot: ViewStyle;\n spacing: number;\n };\n loadingErrorIndicator: {\n container: ViewStyle;\n errorText: TextStyle;\n retryText: TextStyle;\n };\n loadingIndicator: {\n container: ViewStyle;\n loadingText: TextStyle;\n };\n messageInput: {\n attachButton: ViewStyle;\n attachButtonContainer: ViewStyle;\n attachmentSelectionBar: ViewStyle;\n autoCompleteInputContainer: ViewStyle;\n commandsButton: ViewStyle;\n commandsButtonContainer: ViewStyle;\n composerContainer: ViewStyle;\n container: ViewStyle;\n cooldownTimer: {\n container: ViewStyle;\n text: TextStyle;\n };\n editingBoxContainer: ViewStyle;\n editingBoxHeader: ViewStyle;\n editingBoxHeaderTitle: TextStyle;\n editingStateHeader: {\n editingBoxHeader: ViewStyle;\n editingBoxHeaderTitle: TextStyle;\n };\n fileUploadPreview: {\n dismiss: ViewStyle;\n fileContainer: ViewStyle;\n fileContentContainer: ViewStyle;\n filenameText: TextStyle;\n fileSizeText: TextStyle;\n fileTextContainer: ViewStyle;\n flatList: ViewStyle;\n };\n giphyCommandInput: {\n giphyContainer: ViewStyle;\n giphyText: TextStyle;\n };\n imageUploadPreview: {\n dismiss: ViewStyle;\n flatList: ViewStyle;\n itemContainer: ViewStyle;\n upload: ImageStyle;\n };\n inputBox: TextStyle;\n inputBoxContainer: ViewStyle;\n moreOptionsButton: ViewStyle;\n optionsContainer: ViewStyle;\n replyContainer: ViewStyle;\n sendButton: ViewStyle;\n sendButtonContainer: ViewStyle;\n sendMessageDisallowedIndicator: {\n container: ViewStyle;\n text: TextStyle;\n };\n showThreadMessageInChannelButton: {\n check: IconProps;\n checkBoxActive: ViewStyle;\n checkBoxInactive: ViewStyle;\n container: ViewStyle;\n innerContainer: ViewStyle;\n text: TextStyle;\n };\n suggestions: {\n command: {\n args: TextStyle;\n container: ViewStyle;\n iconContainer: ViewStyle;\n title: TextStyle;\n };\n container: ViewStyle & {\n maxHeight: number;\n };\n emoji: {\n container: ViewStyle;\n text: TextStyle;\n };\n header: {\n container: ViewStyle;\n title: TextStyle;\n };\n item: ViewStyle;\n mention: {\n avatarSize: number;\n column: ViewStyle;\n container: ViewStyle;\n name: TextStyle;\n tag: TextStyle;\n };\n };\n suggestionsListContainer: {\n container: ViewStyle;\n flatlist: ViewStyle;\n };\n uploadProgressIndicator: {\n container: ViewStyle;\n overlay: ViewStyle;\n };\n };\n messageList: {\n container: ViewStyle;\n contentContainer: ViewStyle;\n errorNotification: ViewStyle;\n errorNotificationText: TextStyle;\n inlineUnreadIndicator: {\n container: ViewStyle;\n text: TextStyle;\n };\n listContainer: ViewStyle;\n messageSystem: {\n container: ViewStyle;\n dateText: TextStyle;\n line: ViewStyle;\n text: TextStyle;\n textContainer: ViewStyle;\n };\n scrollToBottomButton: {\n container: ViewStyle;\n touchable: ViewStyle;\n unreadCountNotificationContainer: ViewStyle;\n unreadCountNotificationText: TextStyle;\n wrapper: ViewStyle;\n chevronColor?: Color;\n };\n typingIndicatorContainer: ViewStyle;\n };\n messageSimple: {\n actions: {\n button: ViewStyle & {\n defaultBackgroundColor?: ViewStyle['backgroundColor'];\n defaultBorderColor?: ViewStyle['borderColor'];\n primaryBackgroundColor?: ViewStyle['backgroundColor'];\n primaryBorderColor?: ViewStyle['borderColor'];\n };\n buttonText: TextStyle & {\n defaultColor?: TextStyle['color'];\n primaryColor?: TextStyle['color'];\n };\n container: ViewStyle;\n };\n avatarWrapper: {\n container: ViewStyle;\n leftAlign: ViewStyle;\n rightAlign: ViewStyle;\n spacer: ViewStyle;\n };\n card: {\n authorName: TextStyle;\n authorNameContainer: ViewStyle;\n authorNameFooter: TextStyle;\n authorNameFooterContainer: ViewStyle;\n authorNameMask: ViewStyle;\n container: ViewStyle;\n cover: ImageStyle;\n footer: ViewStyle & {\n description: TextStyle;\n title: TextStyle;\n };\n noURI: ViewStyle;\n playButtonStyle: {\n durationTextStyle: TextStyle;\n roundedView: ViewStyle;\n videoContainer: ViewStyle;\n };\n playIcon: IconProps;\n };\n container: ViewStyle;\n content: {\n container: ViewStyle & {\n borderRadiusL: ViewStyle['borderBottomLeftRadius' | 'borderTopLeftRadius'];\n borderRadiusS: ViewStyle['borderBottomRightRadius' | 'borderTopRightRadius'];\n };\n containerInner: ViewStyle;\n deletedContainer: ViewStyle;\n deletedContainerInner: ViewStyle;\n deletedMetaText: TextStyle;\n deletedText: MarkdownStyle;\n errorContainer: ViewStyle;\n errorIcon: IconProps;\n errorIconContainer: ViewStyle;\n eyeIcon: IconProps;\n /**\n * Available options for styling text:\n * https://github.com/andangrd/react-native-markdown-package/blob/main/styles.js\n */\n markdown: MarkdownStyle;\n messageUser: TextStyle;\n metaContainer: ViewStyle;\n metaText: TextStyle;\n replyBorder: ViewStyle;\n replyContainer: ViewStyle;\n textContainer: ViewStyle & {\n onlyEmojiMarkdown: MarkdownStyle;\n };\n wrapper: ViewStyle;\n };\n file: {\n container: ViewStyle;\n details: ViewStyle;\n fileSize: TextStyle;\n icon: IconProps;\n title: TextStyle;\n };\n fileAttachmentGroup: {\n container: ViewStyle;\n };\n gallery: {\n galleryContainer: ViewStyle;\n galleryItemColumn: ViewStyle;\n gridHeight: number;\n gridWidth: number;\n image: ImageStyle;\n imageContainer: ViewStyle;\n maxHeight: number;\n maxWidth: number;\n minHeight: number;\n minWidth: number;\n moreImagesContainer: ViewStyle;\n moreImagesText: TextStyle;\n };\n giphy: {\n buttonContainer: ViewStyle;\n cancel: TextStyle;\n container: ViewStyle;\n giphy: ImageStyle;\n giphyContainer: ViewStyle;\n giphyHeaderText: TextStyle;\n giphyHeaderTitle: TextStyle;\n giphyMask: ViewStyle;\n giphyMaskText: TextStyle;\n header: ViewStyle;\n selectionContainer: ViewStyle;\n send: TextStyle;\n shuffle: TextStyle;\n title: TextStyle;\n };\n loadingIndicator: {\n container: ViewStyle;\n roundedView: ViewStyle;\n };\n pinnedHeader: {\n container: ViewStyle;\n label: TextStyle;\n };\n reactionList: {\n container: ViewStyle;\n middleIcon: ViewStyle;\n radius: number;\n reactionBubble: ViewStyle;\n reactionBubbleBackground: ViewStyle;\n reactionSize: number;\n strokeSize: number;\n };\n replies: {\n avatar: ViewStyle;\n avatarContainerMultiple: ViewStyle;\n avatarContainerSingle: ViewStyle;\n container: ViewStyle;\n leftAvatarsContainer: ViewStyle;\n leftCurve: ViewStyle;\n messageRepliesText: TextStyle;\n rightAvatarsContainer: ViewStyle;\n rightCurve: ViewStyle;\n avatarSize?: number;\n };\n status: {\n checkAllIcon: IconProps;\n checkIcon: IconProps;\n readByCount: TextStyle;\n statusContainer: ViewStyle;\n timeIcon: IconProps;\n };\n targetedMessageUnderlay: ViewStyle;\n videoThumbnail: {\n container: ViewStyle;\n roundedView: ViewStyle;\n };\n };\n overlay: {\n container: ViewStyle;\n messageActions: {\n actionContainer: ViewStyle;\n icon: ViewStyle;\n title: TextStyle;\n };\n padding: number;\n reactions: {\n avatarContainer: ViewStyle;\n avatarName: TextStyle;\n avatarSize: number;\n container: ViewStyle;\n flatListContainer: ViewStyle;\n radius: number;\n reactionBubble: ViewStyle;\n reactionBubbleBackground: ViewStyle;\n title: TextStyle;\n };\n reactionsList: {\n radius: number;\n reaction: ViewStyle;\n reactionList: ViewStyle;\n reactionSize: number;\n };\n };\n reply: {\n container: ViewStyle;\n fileAttachmentContainer: ViewStyle;\n imageAttachment: ImageStyle;\n markdownStyles: MarkdownStyle;\n messageContainer: ViewStyle;\n textContainer: ViewStyle;\n videoThumbnail: {\n container: ViewStyle;\n image: ImageStyle;\n };\n };\n screenPadding: number;\n spinner: ViewStyle;\n thread: {\n newThread: ViewStyle & {\n text: TextStyle;\n backgroundGradientStart?: string;\n backgroundGradientStop?: string;\n };\n };\n typingIndicator: {\n container: ViewStyle;\n text: TextStyle & {\n fontSize: TextStyle['fontSize'];\n };\n };\n};\n\nexport const defaultTheme: Theme = {\n attachmentPicker: {\n bottomSheetContentContainer: {},\n durationText: {},\n errorButtonText: {},\n errorContainer: {},\n errorText: {},\n image: {},\n imageOverlay: {},\n imageOverlaySelectedComponent: {\n check: {},\n },\n },\n attachmentSelectionBar: {\n container: {},\n icon: {},\n },\n avatar: {\n BASE_AVATAR_SIZE: 32,\n container: {},\n image: {\n borderRadius: 16,\n height: 32,\n width: 32,\n },\n presenceIndicator: {\n cx: 6,\n cy: 6,\n r: 5,\n strokeWidth: 2,\n },\n presenceIndicatorContainer: {},\n },\n channel: {\n selectChannel: {},\n },\n channelListFooterLoadingIndicator: {\n container: {},\n },\n channelListHeaderErrorIndicator: {\n container: {},\n errorText: {},\n },\n channelListLoadingIndicator: {\n container: {},\n },\n channelListMessenger: {\n flatList: {},\n flatListContent: {},\n },\n channelListSkeleton: {\n animationTime: 1800, // in milliseconds\n background: {},\n container: {},\n gradientStart: {\n stopOpacity: 0,\n },\n gradientStop: {\n stopOpacity: 0.5,\n },\n height: 64,\n },\n channelPreview: {\n checkAllIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n checkIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n container: {},\n contentContainer: {},\n date: {},\n message: {\n fontWeight: '400',\n },\n mutedStatus: {\n height: 20,\n iconStyle: {},\n width: 20,\n },\n row: {},\n title: {},\n unreadContainer: {},\n unreadText: {},\n },\n colors: {\n ...Colors,\n },\n dateHeader: {\n container: {},\n text: {},\n },\n emptyStateIndicator: {\n channelContainer: {},\n channelDetails: {},\n channelTitle: {},\n },\n groupAvatar: {\n container: {},\n image: {\n resizeMode: 'cover',\n },\n },\n iconBadge: {\n icon: {},\n iconInner: {},\n unreadCount: {},\n },\n iconSquare: {\n container: {},\n image: {},\n },\n imageGallery: {\n footer: {\n centerContainer: {},\n container: {},\n imageCountText: {},\n innerContainer: {},\n leftContainer: {},\n rightContainer: {},\n },\n grid: {\n contentContainer: {},\n gridAvatar: {},\n gridAvatarWrapper: {},\n gridImage: {},\n handle: {},\n handleText: {},\n overlay: {},\n },\n header: {\n centerContainer: {},\n container: {},\n dateText: {},\n innerContainer: {},\n leftContainer: {},\n rightContainer: {},\n usernameText: {},\n },\n videoControl: {\n durationTextStyle: {},\n roundedView: {},\n videoContainer: {},\n },\n },\n inlineDateSeparator: {\n container: {},\n text: {},\n },\n loadingDots: {\n container: {},\n loadingDot: {},\n spacing: 4,\n },\n loadingErrorIndicator: {\n container: {},\n errorText: {},\n retryText: {},\n },\n loadingIndicator: {\n container: {},\n loadingText: {},\n },\n messageInput: {\n attachButton: {},\n attachButtonContainer: {},\n attachmentSelectionBar: {},\n autoCompleteInputContainer: {},\n commandsButton: {},\n commandsButtonContainer: {},\n composerContainer: {},\n container: {},\n cooldownTimer: {\n container: {},\n text: {},\n },\n editingBoxContainer: {},\n editingBoxHeader: {},\n editingBoxHeaderTitle: {},\n editingStateHeader: {\n editingBoxHeader: {},\n editingBoxHeaderTitle: {},\n },\n fileUploadPreview: {\n dismiss: {},\n fileContainer: {},\n fileContentContainer: {},\n filenameText: {},\n fileSizeText: {},\n fileTextContainer: {},\n flatList: {},\n },\n giphyCommandInput: {\n giphyContainer: {},\n giphyText: {},\n },\n imageUploadPreview: {\n dismiss: {},\n flatList: {},\n itemContainer: {},\n upload: {},\n },\n inputBox: {},\n inputBoxContainer: {},\n moreOptionsButton: {},\n optionsContainer: {},\n replyContainer: {},\n sendButton: {},\n sendButtonContainer: {},\n sendMessageDisallowedIndicator: {\n container: {},\n text: {},\n },\n showThreadMessageInChannelButton: {\n check: {},\n checkBoxActive: {},\n checkBoxInactive: {},\n container: {},\n innerContainer: {},\n text: {},\n },\n suggestions: {\n command: {\n args: {},\n container: {},\n iconContainer: {},\n title: {},\n },\n container: {\n maxHeight: vh(25),\n },\n emoji: {\n container: {},\n text: {},\n },\n header: {\n container: {},\n title: {},\n },\n item: {},\n mention: {\n avatarSize: 40,\n column: {},\n container: {},\n name: {},\n tag: {},\n },\n },\n suggestionsListContainer: {\n container: {},\n flatlist: {},\n },\n uploadProgressIndicator: {\n container: {},\n overlay: {},\n },\n },\n messageList: {\n container: {},\n contentContainer: {},\n errorNotification: {},\n errorNotificationText: {},\n inlineUnreadIndicator: {\n container: {},\n text: {},\n },\n listContainer: {},\n messageSystem: {\n container: {},\n dateText: {},\n line: {},\n text: {},\n textContainer: {},\n },\n scrollToBottomButton: {\n container: {},\n touchable: {},\n unreadCountNotificationContainer: {},\n unreadCountNotificationText: {},\n wrapper: {},\n },\n typingIndicatorContainer: {},\n },\n messageSimple: {\n actions: {\n button: {},\n buttonText: {},\n container: {},\n },\n avatarWrapper: {\n container: {},\n leftAlign: {\n marginRight: 8,\n },\n rightAlign: {\n marginLeft: 8,\n },\n spacer: {\n height: 28,\n width: 32, // same as BASE_AVATAR_SIZE\n },\n },\n card: {\n authorName: {},\n authorNameContainer: {},\n authorNameFooter: {},\n authorNameFooterContainer: {},\n authorNameMask: {},\n container: {},\n cover: {},\n footer: {\n description: {},\n title: {\n fontWeight: '700',\n },\n },\n noURI: {\n borderLeftWidth: 2,\n paddingLeft: 8,\n },\n playButtonStyle: {\n durationTextStyle: {},\n roundedView: {},\n videoContainer: {},\n },\n playIcon: {\n height: 24,\n width: 24,\n },\n },\n container: {},\n content: {\n container: {\n borderRadiusL: 16,\n borderRadiusS: 0,\n },\n containerInner: {},\n deletedContainer: {},\n deletedContainerInner: {},\n deletedMetaText: {\n paddingHorizontal: 5,\n },\n deletedText: {\n em: {\n fontSize: 15,\n fontStyle: 'italic',\n fontWeight: '400',\n },\n },\n errorContainer: {\n paddingRight: 12,\n paddingTop: 0,\n },\n errorIcon: {\n height: 20,\n width: 20,\n },\n errorIconContainer: {\n bottom: -2,\n position: 'absolute',\n right: -12,\n },\n eyeIcon: {\n height: 16,\n width: 16,\n },\n markdown: {},\n messageUser: {\n fontSize: 12,\n fontWeight: '700',\n paddingRight: 6,\n },\n metaContainer: {\n flexDirection: 'row',\n marginTop: 4,\n },\n metaText: {\n fontSize: 12,\n },\n replyBorder: {},\n replyContainer: {},\n textContainer: {\n onlyEmojiMarkdown: { text: { fontSize: 50 } },\n },\n wrapper: {},\n },\n file: {\n container: {},\n details: {},\n fileSize: {},\n icon: {},\n title: {},\n },\n fileAttachmentGroup: {\n container: {},\n },\n gallery: {\n galleryContainer: {},\n galleryItemColumn: {},\n gridHeight: 195,\n gridWidth: 256,\n image: {},\n imageContainer: {},\n maxHeight: 300,\n maxWidth: 256,\n minHeight: 100,\n minWidth: 170,\n moreImagesContainer: {},\n moreImagesText: {},\n },\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 title: {},\n },\n loadingIndicator: {\n container: {},\n roundedView: {},\n },\n pinnedHeader: {\n container: {},\n label: {},\n },\n reactionList: {\n container: {},\n middleIcon: {},\n radius: 2, // not recommended to change this\n reactionBubble: {},\n reactionBubbleBackground: {},\n reactionSize: 24,\n strokeSize: 1, // not recommended to change this\n },\n replies: {\n avatar: {},\n avatarContainerMultiple: {},\n avatarContainerSingle: {},\n container: {},\n leftAvatarsContainer: {},\n leftCurve: {},\n messageRepliesText: {},\n rightAvatarsContainer: {},\n rightCurve: {},\n },\n status: {\n checkAllIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n checkIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n readByCount: {},\n statusContainer: {},\n timeIcon: {\n height: DEFAULT_STATUS_ICON_SIZE,\n width: DEFAULT_STATUS_ICON_SIZE,\n },\n },\n targetedMessageUnderlay: {},\n videoThumbnail: {\n container: {},\n roundedView: {},\n },\n },\n overlay: {\n container: {},\n messageActions: {\n actionContainer: {},\n icon: {},\n title: {},\n },\n padding: 8,\n reactions: {\n avatarContainer: {},\n avatarName: {},\n avatarSize: 64,\n container: {},\n flatListContainer: {},\n radius: 2,\n reactionBubble: {},\n reactionBubbleBackground: {},\n title: {},\n },\n reactionsList: {\n radius: 2.5,\n reaction: {},\n reactionList: {},\n reactionSize: 24,\n },\n },\n reply: {\n container: {},\n fileAttachmentContainer: {},\n imageAttachment: {},\n markdownStyles: {},\n messageContainer: {},\n textContainer: {},\n videoThumbnail: {\n container: {},\n image: {},\n },\n },\n screenPadding: 8,\n spinner: {},\n thread: {\n newThread: {\n text: {},\n },\n },\n typingIndicator: {\n container: {},\n text: {\n fontSize: 14,\n },\n },\n};\n"]}
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "4.11.1-beta.2"
2
+ "version": "4.11.1-beta.3"
3
3
  }
@@ -5,10 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.VideoThumbnail = void 0;
7
7
 
8
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
-
10
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
-
12
8
  var _react = _interopRequireDefault(require("react"));
13
9
 
14
10
  var _reactNative = require("react-native");
@@ -17,8 +13,6 @@ var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
17
13
 
18
14
  var _icons = require("../../icons");
19
15
 
20
- var _excluded = ["style", "thumb_url"];
21
-
22
16
  var _this = this,
23
17
  _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/Attachment/VideoThumbnail.tsx";
24
18
 
@@ -36,8 +30,16 @@ var styles = _reactNative.StyleSheet.create({
36
30
  backgroundColor: '#fff',
37
31
  borderRadius: 50,
38
32
  display: 'flex',
33
+ elevation: 6,
39
34
  height: 36,
40
35
  justifyContent: 'center',
36
+ shadowColor: '#000',
37
+ shadowOffset: {
38
+ height: 3,
39
+ width: 0
40
+ },
41
+ shadowOpacity: 0.27,
42
+ shadowRadius: 4.65,
41
43
  width: 36
42
44
  }
43
45
  });
@@ -48,28 +50,28 @@ var VideoThumbnail = function VideoThumbnail(props) {
48
50
  container = _useTheme$theme$messa.container,
49
51
  roundedView = _useTheme$theme$messa.roundedView;
50
52
 
51
- var style = props.style,
52
- thumb_url = props.thumb_url,
53
- rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
54
- return _react["default"].createElement(_reactNative.ImageBackground, (0, _extends2["default"])({
53
+ var imageStyle = props.imageStyle,
54
+ style = props.style,
55
+ thumb_url = props.thumb_url;
56
+ return _react["default"].createElement(_reactNative.ImageBackground, {
55
57
  accessibilityLabel: "video-thumbnail",
58
+ imageStyle: imageStyle,
56
59
  source: {
57
60
  uri: thumb_url
58
- }
59
- }, rest, {
61
+ },
60
62
  style: [styles.container, container, style],
61
63
  __self: _this,
62
64
  __source: {
63
65
  fileName: _jsxFileName,
64
- lineNumber: 41,
66
+ lineNumber: 51,
65
67
  columnNumber: 5
66
68
  }
67
- }), _react["default"].createElement(_reactNative.View, {
69
+ }, _react["default"].createElement(_reactNative.View, {
68
70
  style: [styles.roundedView, roundedView],
69
71
  __self: _this,
70
72
  __source: {
71
73
  fileName: _jsxFileName,
72
- lineNumber: 47,
74
+ lineNumber: 57,
73
75
  columnNumber: 7
74
76
  }
75
77
  }, _react["default"].createElement(_icons.Play, {
@@ -79,7 +81,7 @@ var VideoThumbnail = function VideoThumbnail(props) {
79
81
  __self: _this,
80
82
  __source: {
81
83
  fileName: _jsxFileName,
82
- lineNumber: 48,
84
+ lineNumber: 58,
83
85
  columnNumber: 9
84
86
  }
85
87
  })));
@@ -1 +1 @@
1
- {"version":3,"sources":["VideoThumbnail.tsx"],"names":["styles","StyleSheet","create","container","alignItems","backgroundColor","display","height","justifyContent","width","roundedView","borderRadius","VideoThumbnail","props","theme","messageSimple","videoThumbnail","style","thumb_url","rest","uri"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;;;;AAEA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,UAAU,EAAE,QADH;AAETC,IAAAA,eAAe,EAAE,OAFR;AAGTC,IAAAA,OAAO,EAAE,MAHA;AAITC,IAAAA,MAAM,EAAE,MAJC;AAKTC,IAAAA,cAAc,EAAE,QALP;AAMTC,IAAAA,KAAK,EAAE;AANE,GADoB;AAS/BC,EAAAA,WAAW,EAAE;AACXN,IAAAA,UAAU,EAAE,QADD;AAEXC,IAAAA,eAAe,EAAE,MAFN;AAGXM,IAAAA,YAAY,EAAE,EAHH;AAIXL,IAAAA,OAAO,EAAE,MAJE;AAKXC,IAAAA,MAAM,EAAE,EALG;AAMXC,IAAAA,cAAc,EAAE,QANL;AAOXC,IAAAA,KAAK,EAAE;AAPI;AATkB,CAAlB,CAAf;;AAwBO,IAAMG,cAA6C,GAAG,SAAhDA,cAAgD,CAACC,KAAD,EAAW;AACtE,kBAMI,6BANJ;AAAA,wCACEC,KADF,CAEIC,aAFJ,CAGMC,cAHN;AAAA,MAGwBb,SAHxB,yBAGwBA,SAHxB;AAAA,MAGmCO,WAHnC,yBAGmCA,WAHnC;;AAOA,MAAQO,KAAR,GAAsCJ,KAAtC,CAAQI,KAAR;AAAA,MAAeC,SAAf,GAAsCL,KAAtC,CAAeK,SAAf;AAAA,MAA6BC,IAA7B,6CAAsCN,KAAtC;AACA,SACE,gCAAC,4BAAD;AACE,IAAA,kBAAkB,EAAC,iBADrB;AAEE,IAAA,MAAM,EAAE;AAAEO,MAAAA,GAAG,EAAEF;AAAP;AAFV,KAGMC,IAHN;AAIE,IAAA,KAAK,EAAE,CAACnB,MAAM,CAACG,SAAR,EAAmBA,SAAnB,EAA8Bc,KAA9B,CAJT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAME,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACjB,MAAM,CAACU,WAAR,EAAqBA,WAArB,CAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACE,gCAAC,WAAD;AAAM,IAAA,MAAM,EAAE,EAAd;AAAkB,IAAA,QAAQ,EAAE,MAA5B;AAAoC,IAAA,KAAK,EAAE,EAA3C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IADF,CANF,CADF;AAYD,CArBM","sourcesContent":["import React from 'react';\nimport { ImageBackground, StyleSheet, View, ViewProps } from 'react-native';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Play } from '../../icons';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n backgroundColor: 'black',\n display: 'flex',\n height: '100%',\n justifyContent: 'center',\n width: '100%',\n },\n roundedView: {\n alignItems: 'center',\n backgroundColor: '#fff',\n borderRadius: 50,\n display: 'flex',\n height: 36,\n justifyContent: 'center',\n width: 36,\n },\n});\n\nexport type VideoThumbnailProps = ViewProps & {\n thumb_url?: string;\n};\n\nexport const VideoThumbnail: React.FC<VideoThumbnailProps> = (props) => {\n const {\n theme: {\n messageSimple: {\n videoThumbnail: { container, roundedView },\n },\n },\n } = useTheme();\n const { style, thumb_url, ...rest } = props;\n return (\n <ImageBackground\n accessibilityLabel='video-thumbnail'\n source={{ uri: thumb_url }}\n {...rest}\n style={[styles.container, container, style]}\n >\n <View style={[styles.roundedView, roundedView]}>\n <Play height={24} pathFill={'#000'} width={24} />\n </View>\n </ImageBackground>\n );\n};\n"]}
1
+ {"version":3,"sources":["VideoThumbnail.tsx"],"names":["styles","StyleSheet","create","container","alignItems","backgroundColor","display","height","justifyContent","width","roundedView","borderRadius","elevation","shadowColor","shadowOffset","shadowOpacity","shadowRadius","VideoThumbnail","props","theme","messageSimple","videoThumbnail","imageStyle","style","thumb_url","uri"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;;AAEA,IAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC/BC,EAAAA,SAAS,EAAE;AACTC,IAAAA,UAAU,EAAE,QADH;AAETC,IAAAA,eAAe,EAAE,OAFR;AAGTC,IAAAA,OAAO,EAAE,MAHA;AAITC,IAAAA,MAAM,EAAE,MAJC;AAKTC,IAAAA,cAAc,EAAE,QALP;AAMTC,IAAAA,KAAK,EAAE;AANE,GADoB;AAS/BC,EAAAA,WAAW,EAAE;AACXN,IAAAA,UAAU,EAAE,QADD;AAEXC,IAAAA,eAAe,EAAE,MAFN;AAGXM,IAAAA,YAAY,EAAE,EAHH;AAIXL,IAAAA,OAAO,EAAE,MAJE;AAKXM,IAAAA,SAAS,EAAE,CALA;AAMXL,IAAAA,MAAM,EAAE,EANG;AAOXC,IAAAA,cAAc,EAAE,QAPL;AAQXK,IAAAA,WAAW,EAAE,MARF;AASXC,IAAAA,YAAY,EAAE;AACZP,MAAAA,MAAM,EAAE,CADI;AAEZE,MAAAA,KAAK,EAAE;AAFK,KATH;AAaXM,IAAAA,aAAa,EAAE,IAbJ;AAcXC,IAAAA,YAAY,EAAE,IAdH;AAeXP,IAAAA,KAAK,EAAE;AAfI;AATkB,CAAlB,CAAf;;AAkCO,IAAMQ,cAA6C,GAAG,SAAhDA,cAAgD,CAACC,KAAD,EAAW;AACtE,kBAMI,6BANJ;AAAA,wCACEC,KADF,CAEIC,aAFJ,CAGMC,cAHN;AAAA,MAGwBlB,SAHxB,yBAGwBA,SAHxB;AAAA,MAGmCO,WAHnC,yBAGmCA,WAHnC;;AAOA,MAAQY,UAAR,GAAyCJ,KAAzC,CAAQI,UAAR;AAAA,MAAoBC,KAApB,GAAyCL,KAAzC,CAAoBK,KAApB;AAAA,MAA2BC,SAA3B,GAAyCN,KAAzC,CAA2BM,SAA3B;AACA,SACE,gCAAC,4BAAD;AACE,IAAA,kBAAkB,EAAC,iBADrB;AAEE,IAAA,UAAU,EAAEF,UAFd;AAGE,IAAA,MAAM,EAAE;AAAEG,MAAAA,GAAG,EAAED;AAAP,KAHV;AAIE,IAAA,KAAK,EAAE,CAACxB,MAAM,CAACG,SAAR,EAAmBA,SAAnB,EAA8BoB,KAA9B,CAJT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAME,gCAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAACvB,MAAM,CAACU,WAAR,EAAqBA,WAArB,CAAb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACE,gCAAC,WAAD;AAAM,IAAA,MAAM,EAAE,EAAd;AAAkB,IAAA,QAAQ,EAAE,MAA5B;AAAoC,IAAA,KAAK,EAAE,EAA3C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IADF,CANF,CADF;AAYD,CArBM","sourcesContent":["import React from 'react';\nimport { ImageBackground, ImageStyle, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { Play } from '../../icons';\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n backgroundColor: 'black',\n display: 'flex',\n height: '100%',\n justifyContent: 'center',\n width: '100%',\n },\n roundedView: {\n alignItems: 'center',\n backgroundColor: '#fff',\n borderRadius: 50,\n display: 'flex',\n elevation: 6,\n height: 36,\n justifyContent: 'center',\n shadowColor: '#000',\n shadowOffset: {\n height: 3,\n width: 0,\n },\n shadowOpacity: 0.27,\n shadowRadius: 4.65,\n width: 36,\n },\n});\n\nexport type VideoThumbnailProps = {\n imageStyle?: StyleProp<ImageStyle>;\n style?: StyleProp<ViewStyle>;\n thumb_url?: string;\n};\n\nexport const VideoThumbnail: React.FC<VideoThumbnailProps> = (props) => {\n const {\n theme: {\n messageSimple: {\n videoThumbnail: { container, roundedView },\n },\n },\n } = useTheme();\n const { imageStyle, style, thumb_url } = props;\n return (\n <ImageBackground\n accessibilityLabel='video-thumbnail'\n imageStyle={imageStyle}\n source={{ uri: thumb_url }}\n style={[styles.container, container, style]}\n >\n <View style={[styles.roundedView, roundedView]}>\n <Play height={24} pathFill={'#000'} width={24} />\n </View>\n </ImageBackground>\n );\n};\n"]}
@@ -174,8 +174,9 @@ var FileUploadPreviewWithContext = function FileUploadPreviewWithContext(props)
174
174
  _useTheme2$theme = _useTheme2.theme,
175
175
  _useTheme2$theme$colo = _useTheme2$theme.colors,
176
176
  black = _useTheme2$theme$colo.black,
177
+ grey_dark = _useTheme2$theme$colo.grey_dark,
178
+ grey_gainsboro = _useTheme2$theme$colo.grey_gainsboro,
177
179
  grey_whisper = _useTheme2$theme$colo.grey_whisper,
178
- overlay = _useTheme2$theme$colo.overlay,
179
180
  _useTheme2$theme$mess = _useTheme2$theme.messageInput.fileUploadPreview,
180
181
  dismiss = _useTheme2$theme$mess.dismiss,
181
182
  fileContainer = _useTheme2$theme$mess.fileContainer,
@@ -269,7 +270,7 @@ var FileUploadPreviewWithContext = function FileUploadPreviewWithContext(props)
269
270
  removeFile(item.id);
270
271
  },
271
272
  style: [styles.dismiss, {
272
- backgroundColor: overlay
273
+ backgroundColor: grey_gainsboro
273
274
  }, dismiss],
274
275
  testID: "remove-file-upload-preview",
275
276
  __self: _this,
@@ -279,6 +280,7 @@ var FileUploadPreviewWithContext = function FileUploadPreviewWithContext(props)
279
280
  columnNumber: 9
280
281
  }
281
282
  }, _react["default"].createElement(_Close.Close, {
283
+ pathFill: grey_dark,
282
284
  __self: _this,
283
285
  __source: {
284
286
  fileName: _jsxFileName,
@@ -1 +1 @@
1
- {"version":3,"sources":["FileUploadPreview.tsx"],"names":["FILE_PREVIEW_HEIGHT","WARNING_ICON_SIZE","styles","StyleSheet","create","dismiss","borderRadius","height","position","right","top","width","fileContainer","borderWidth","flexDirection","justifyContent","marginBottom","padding","fileContentContainer","filenameText","fontSize","fontWeight","paddingHorizontal","fileSizeText","fileTextContainer","flatList","maxHeight","overlay","marginLeft","marginRight","unsupportedFile","paddingLeft","unsupportedFileText","marginHorizontal","warningIconStyle","marginTop","UnsupportedFileTypeOrFileSizeIndicator","indicatorType","item","theme","colors","accent_red","grey","messageInput","fileUploadPreview","t","ProgressIndicatorTypes","NOT_SUPPORTED","color","file","duration","size","FileUploadPreviewWithContext","props","FileAttachmentIcon","fileUploads","removeFile","uploadFile","flatListRef","flatListWidth","setFlatListWidth","black","grey_whisper","renderItem","index","state","newFile","length","borderColor","type","I18nManager","isRTL","writingDirection","name","id","backgroundColor","fileUploadsLength","current","setTimeout","scrollToEnd","_","offset","nativeEvent","layout","areEqual","prevProps","nextProps","prevFileUploads","nextFileUploads","every","prevFileUpload","MemoizedFileUploadPreview","React","memo","FileUploadPreview","displayName"],"mappings":"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","sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { FlatList, I18nManager, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport { UploadProgressIndicator } from './UploadProgressIndicator';\n\nimport {\n FileUpload,\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useTranslationContext } from '../../contexts/translationContext/TranslationContext';\nimport { Close } from '../../icons/Close';\nimport { Warning } from '../../icons/Warning';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { getIndicatorTypeForFileState, ProgressIndicatorTypes } from '../../utils/utils';\nimport { getFileSizeDisplayText } from '../Attachment/FileAttachment';\nimport { WritingDirectionAwareText } from '../RTLComponents/WritingDirectionAwareText';\n\nconst FILE_PREVIEW_HEIGHT = 60;\nconst WARNING_ICON_SIZE = 16;\n\nconst styles = StyleSheet.create({\n dismiss: {\n borderRadius: 24,\n height: 24,\n position: 'absolute',\n right: 14,\n top: 4,\n width: 24,\n },\n fileContainer: {\n borderRadius: 12,\n borderWidth: 1,\n flexDirection: 'row',\n height: FILE_PREVIEW_HEIGHT,\n justifyContent: 'space-between',\n marginBottom: 8,\n padding: 8,\n },\n fileContentContainer: { flexDirection: 'row' },\n filenameText: {\n fontSize: 14,\n fontWeight: 'bold',\n paddingHorizontal: 10,\n },\n fileSizeText: {\n fontSize: 12,\n paddingHorizontal: 10,\n },\n fileTextContainer: {\n height: '100%',\n justifyContent: 'space-around',\n },\n flatList: { marginBottom: 12, maxHeight: FILE_PREVIEW_HEIGHT * 2.5 + 16 },\n overlay: {\n borderRadius: 12,\n marginLeft: 8,\n marginRight: 8,\n },\n unsupportedFile: {\n flexDirection: 'row',\n paddingLeft: 10,\n },\n unsupportedFileText: {\n fontSize: 12,\n marginHorizontal: 4,\n },\n warningIconStyle: {\n borderRadius: 24,\n marginTop: 2,\n },\n});\n\nconst UnsupportedFileTypeOrFileSizeIndicator = ({\n indicatorType,\n item,\n}: {\n indicatorType: typeof ProgressIndicatorTypes[keyof typeof ProgressIndicatorTypes];\n item: FileUpload;\n}) => {\n const {\n theme: {\n colors: { accent_red, grey },\n messageInput: {\n fileUploadPreview: { fileSizeText },\n },\n },\n } = useTheme();\n\n const { t } = useTranslationContext();\n return indicatorType === ProgressIndicatorTypes.NOT_SUPPORTED ? (\n <View style={styles.unsupportedFile}>\n <Warning\n height={WARNING_ICON_SIZE}\n pathFill={accent_red}\n style={styles.warningIconStyle}\n width={WARNING_ICON_SIZE}\n />\n <Text style={[styles.unsupportedFileText, { color: grey }]}>\n {t('File type not supported')}\n </Text>\n </View>\n ) : (\n <WritingDirectionAwareText style={[styles.fileSizeText, { color: grey }, fileSizeText]}>\n {item.file.duration || getFileSizeDisplayText(item.file.size)}\n </WritingDirectionAwareText>\n );\n};\n\ntype FileUploadPreviewPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageInputContextValue<StreamChatGenerics>,\n 'fileUploads' | 'removeFile' | 'uploadFile'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'FileAttachmentIcon'>;\n\nconst FileUploadPreviewWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: FileUploadPreviewPropsWithContext<StreamChatGenerics>,\n) => {\n const { FileAttachmentIcon, fileUploads, removeFile, uploadFile } = props;\n\n const flatListRef = useRef<FlatList<FileUpload> | null>(null);\n const [flatListWidth, setFlatListWidth] = useState(0);\n\n const {\n theme: {\n colors: { black, grey_whisper, overlay },\n messageInput: {\n fileUploadPreview: {\n dismiss,\n fileContainer,\n fileContentContainer,\n filenameText,\n fileTextContainer,\n flatList,\n },\n },\n },\n } = useTheme();\n\n const renderItem = ({ index, item }: { index: number; item: FileUpload }) => {\n const indicatorType = getIndicatorTypeForFileState(item.state);\n\n return (\n <>\n <UploadProgressIndicator\n action={() => {\n uploadFile({ newFile: item });\n }}\n style={styles.overlay}\n type={indicatorType}\n >\n <View\n style={[\n styles.fileContainer,\n index === fileUploads.length - 1\n ? {\n marginBottom: 0,\n }\n : {},\n {\n borderColor: grey_whisper,\n width: flatListWidth - 16,\n },\n fileContainer,\n ]}\n >\n <View style={[styles.fileContentContainer, fileContentContainer]}>\n <FileAttachmentIcon mimeType={item.file.type} />\n <View style={[styles.fileTextContainer, fileTextContainer]}>\n <Text\n numberOfLines={1}\n style={[\n styles.filenameText,\n {\n color: black,\n width:\n flatListWidth -\n 16 - // 16 = horizontal padding\n 40 - // 40 = file icon size\n 24 - // 24 = close icon size\n 24, // 24 = internal padding\n },\n I18nManager.isRTL ? { writingDirection: 'rtl' } : { writingDirection: 'ltr' },\n filenameText,\n ]}\n >\n {item.file.name || ''}\n </Text>\n {indicatorType !== null && (\n <UnsupportedFileTypeOrFileSizeIndicator\n indicatorType={indicatorType}\n item={item}\n />\n )}\n </View>\n </View>\n </View>\n </UploadProgressIndicator>\n <TouchableOpacity\n onPress={() => {\n removeFile(item.id);\n }}\n style={[styles.dismiss, { backgroundColor: overlay }, dismiss]}\n testID='remove-file-upload-preview'\n >\n <Close />\n </TouchableOpacity>\n </>\n );\n };\n\n const fileUploadsLength = fileUploads.length;\n\n useEffect(() => {\n if (fileUploadsLength && flatListRef.current) {\n setTimeout(() => flatListRef.current?.scrollToEnd(), 1);\n }\n }, [fileUploadsLength]);\n\n return fileUploadsLength ? (\n <FlatList\n data={fileUploads}\n getItemLayout={(_, index) => ({\n index,\n length: FILE_PREVIEW_HEIGHT + 8,\n offset: (FILE_PREVIEW_HEIGHT + 8) * index,\n })}\n keyExtractor={(item) => item.id}\n onLayout={({\n nativeEvent: {\n layout: { width },\n },\n }) => {\n setFlatListWidth(width);\n }}\n ref={flatListRef}\n renderItem={renderItem}\n style={[styles.flatList, flatList]}\n />\n ) : null;\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: FileUploadPreviewPropsWithContext<StreamChatGenerics>,\n nextProps: FileUploadPreviewPropsWithContext<StreamChatGenerics>,\n) => {\n const { fileUploads: prevFileUploads } = prevProps;\n const { fileUploads: nextFileUploads } = nextProps;\n\n return (\n prevFileUploads.length === nextFileUploads.length &&\n prevFileUploads.every(\n (prevFileUpload, index) => prevFileUpload.state === nextFileUploads[index].state,\n )\n );\n};\n\nconst MemoizedFileUploadPreview = React.memo(\n FileUploadPreviewWithContext,\n areEqual,\n) as typeof FileUploadPreviewWithContext;\n\nexport type FileUploadPreviewProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<FileUploadPreviewPropsWithContext<StreamChatGenerics>>;\n\n/**\n * FileUploadPreview\n * UI Component to preview the files set for upload\n */\nexport const FileUploadPreview = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: FileUploadPreviewProps<StreamChatGenerics>,\n) => {\n const { fileUploads, removeFile, uploadFile } = useMessageInputContext<StreamChatGenerics>();\n\n const { FileAttachmentIcon } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedFileUploadPreview\n {...{ FileAttachmentIcon, fileUploads, removeFile, uploadFile }}\n {...props}\n />\n );\n};\n\nFileUploadPreview.displayName = 'FileUploadPreview{messageInput{fileUploadPreview}}';\n"]}
1
+ {"version":3,"sources":["FileUploadPreview.tsx"],"names":["FILE_PREVIEW_HEIGHT","WARNING_ICON_SIZE","styles","StyleSheet","create","dismiss","borderRadius","height","position","right","top","width","fileContainer","borderWidth","flexDirection","justifyContent","marginBottom","padding","fileContentContainer","filenameText","fontSize","fontWeight","paddingHorizontal","fileSizeText","fileTextContainer","flatList","maxHeight","overlay","marginLeft","marginRight","unsupportedFile","paddingLeft","unsupportedFileText","marginHorizontal","warningIconStyle","marginTop","UnsupportedFileTypeOrFileSizeIndicator","indicatorType","item","theme","colors","accent_red","grey","messageInput","fileUploadPreview","t","ProgressIndicatorTypes","NOT_SUPPORTED","color","file","duration","size","FileUploadPreviewWithContext","props","FileAttachmentIcon","fileUploads","removeFile","uploadFile","flatListRef","flatListWidth","setFlatListWidth","black","grey_dark","grey_gainsboro","grey_whisper","renderItem","index","state","newFile","length","borderColor","type","I18nManager","isRTL","writingDirection","name","id","backgroundColor","fileUploadsLength","current","setTimeout","scrollToEnd","_","offset","nativeEvent","layout","areEqual","prevProps","nextProps","prevFileUploads","nextFileUploads","every","prevFileUpload","MemoizedFileUploadPreview","React","memo","FileUploadPreview","displayName"],"mappings":"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","sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { FlatList, I18nManager, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport { UploadProgressIndicator } from './UploadProgressIndicator';\n\nimport {\n FileUpload,\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport {\n MessagesContextValue,\n useMessagesContext,\n} from '../../contexts/messagesContext/MessagesContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useTranslationContext } from '../../contexts/translationContext/TranslationContext';\nimport { Close } from '../../icons/Close';\nimport { Warning } from '../../icons/Warning';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { getIndicatorTypeForFileState, ProgressIndicatorTypes } from '../../utils/utils';\nimport { getFileSizeDisplayText } from '../Attachment/FileAttachment';\nimport { WritingDirectionAwareText } from '../RTLComponents/WritingDirectionAwareText';\n\nconst FILE_PREVIEW_HEIGHT = 60;\nconst WARNING_ICON_SIZE = 16;\n\nconst styles = StyleSheet.create({\n dismiss: {\n borderRadius: 24,\n height: 24,\n position: 'absolute',\n right: 14,\n top: 4,\n width: 24,\n },\n fileContainer: {\n borderRadius: 12,\n borderWidth: 1,\n flexDirection: 'row',\n height: FILE_PREVIEW_HEIGHT,\n justifyContent: 'space-between',\n marginBottom: 8,\n padding: 8,\n },\n fileContentContainer: { flexDirection: 'row' },\n filenameText: {\n fontSize: 14,\n fontWeight: 'bold',\n paddingHorizontal: 10,\n },\n fileSizeText: {\n fontSize: 12,\n paddingHorizontal: 10,\n },\n fileTextContainer: {\n height: '100%',\n justifyContent: 'space-around',\n },\n flatList: { marginBottom: 12, maxHeight: FILE_PREVIEW_HEIGHT * 2.5 + 16 },\n overlay: {\n borderRadius: 12,\n marginLeft: 8,\n marginRight: 8,\n },\n unsupportedFile: {\n flexDirection: 'row',\n paddingLeft: 10,\n },\n unsupportedFileText: {\n fontSize: 12,\n marginHorizontal: 4,\n },\n warningIconStyle: {\n borderRadius: 24,\n marginTop: 2,\n },\n});\n\nconst UnsupportedFileTypeOrFileSizeIndicator = ({\n indicatorType,\n item,\n}: {\n indicatorType: typeof ProgressIndicatorTypes[keyof typeof ProgressIndicatorTypes];\n item: FileUpload;\n}) => {\n const {\n theme: {\n colors: { accent_red, grey },\n messageInput: {\n fileUploadPreview: { fileSizeText },\n },\n },\n } = useTheme();\n\n const { t } = useTranslationContext();\n return indicatorType === ProgressIndicatorTypes.NOT_SUPPORTED ? (\n <View style={styles.unsupportedFile}>\n <Warning\n height={WARNING_ICON_SIZE}\n pathFill={accent_red}\n style={styles.warningIconStyle}\n width={WARNING_ICON_SIZE}\n />\n <Text style={[styles.unsupportedFileText, { color: grey }]}>\n {t('File type not supported')}\n </Text>\n </View>\n ) : (\n <WritingDirectionAwareText style={[styles.fileSizeText, { color: grey }, fileSizeText]}>\n {item.file.duration || getFileSizeDisplayText(item.file.size)}\n </WritingDirectionAwareText>\n );\n};\n\ntype FileUploadPreviewPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageInputContextValue<StreamChatGenerics>,\n 'fileUploads' | 'removeFile' | 'uploadFile'\n> &\n Pick<MessagesContextValue<StreamChatGenerics>, 'FileAttachmentIcon'>;\n\nconst FileUploadPreviewWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: FileUploadPreviewPropsWithContext<StreamChatGenerics>,\n) => {\n const { FileAttachmentIcon, fileUploads, removeFile, uploadFile } = props;\n\n const flatListRef = useRef<FlatList<FileUpload> | null>(null);\n const [flatListWidth, setFlatListWidth] = useState(0);\n\n const {\n theme: {\n colors: { black, grey_dark, grey_gainsboro, grey_whisper },\n messageInput: {\n fileUploadPreview: {\n dismiss,\n fileContainer,\n fileContentContainer,\n filenameText,\n fileTextContainer,\n flatList,\n },\n },\n },\n } = useTheme();\n\n const renderItem = ({ index, item }: { index: number; item: FileUpload }) => {\n const indicatorType = getIndicatorTypeForFileState(item.state);\n\n return (\n <>\n <UploadProgressIndicator\n action={() => {\n uploadFile({ newFile: item });\n }}\n style={styles.overlay}\n type={indicatorType}\n >\n <View\n style={[\n styles.fileContainer,\n index === fileUploads.length - 1\n ? {\n marginBottom: 0,\n }\n : {},\n {\n borderColor: grey_whisper,\n width: flatListWidth - 16,\n },\n fileContainer,\n ]}\n >\n <View style={[styles.fileContentContainer, fileContentContainer]}>\n <FileAttachmentIcon mimeType={item.file.type} />\n <View style={[styles.fileTextContainer, fileTextContainer]}>\n <Text\n numberOfLines={1}\n style={[\n styles.filenameText,\n {\n color: black,\n width:\n flatListWidth -\n 16 - // 16 = horizontal padding\n 40 - // 40 = file icon size\n 24 - // 24 = close icon size\n 24, // 24 = internal padding\n },\n I18nManager.isRTL ? { writingDirection: 'rtl' } : { writingDirection: 'ltr' },\n filenameText,\n ]}\n >\n {item.file.name || ''}\n </Text>\n {indicatorType !== null && (\n <UnsupportedFileTypeOrFileSizeIndicator\n indicatorType={indicatorType}\n item={item}\n />\n )}\n </View>\n </View>\n </View>\n </UploadProgressIndicator>\n <TouchableOpacity\n onPress={() => {\n removeFile(item.id);\n }}\n style={[styles.dismiss, { backgroundColor: grey_gainsboro }, dismiss]}\n testID='remove-file-upload-preview'\n >\n <Close pathFill={grey_dark} />\n </TouchableOpacity>\n </>\n );\n };\n\n const fileUploadsLength = fileUploads.length;\n\n useEffect(() => {\n if (fileUploadsLength && flatListRef.current) {\n setTimeout(() => flatListRef.current?.scrollToEnd(), 1);\n }\n }, [fileUploadsLength]);\n\n return fileUploadsLength ? (\n <FlatList\n data={fileUploads}\n getItemLayout={(_, index) => ({\n index,\n length: FILE_PREVIEW_HEIGHT + 8,\n offset: (FILE_PREVIEW_HEIGHT + 8) * index,\n })}\n keyExtractor={(item) => item.id}\n onLayout={({\n nativeEvent: {\n layout: { width },\n },\n }) => {\n setFlatListWidth(width);\n }}\n ref={flatListRef}\n renderItem={renderItem}\n style={[styles.flatList, flatList]}\n />\n ) : null;\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: FileUploadPreviewPropsWithContext<StreamChatGenerics>,\n nextProps: FileUploadPreviewPropsWithContext<StreamChatGenerics>,\n) => {\n const { fileUploads: prevFileUploads } = prevProps;\n const { fileUploads: nextFileUploads } = nextProps;\n\n return (\n prevFileUploads.length === nextFileUploads.length &&\n prevFileUploads.every(\n (prevFileUpload, index) => prevFileUpload.state === nextFileUploads[index].state,\n )\n );\n};\n\nconst MemoizedFileUploadPreview = React.memo(\n FileUploadPreviewWithContext,\n areEqual,\n) as typeof FileUploadPreviewWithContext;\n\nexport type FileUploadPreviewProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<FileUploadPreviewPropsWithContext<StreamChatGenerics>>;\n\n/**\n * FileUploadPreview\n * UI Component to preview the files set for upload\n */\nexport const FileUploadPreview = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: FileUploadPreviewProps<StreamChatGenerics>,\n) => {\n const { fileUploads, removeFile, uploadFile } = useMessageInputContext<StreamChatGenerics>();\n\n const { FileAttachmentIcon } = useMessagesContext<StreamChatGenerics>();\n\n return (\n <MemoizedFileUploadPreview\n {...{ FileAttachmentIcon, fileUploads, removeFile, uploadFile }}\n {...props}\n />\n );\n};\n\nFileUploadPreview.displayName = 'FileUploadPreview{messageInput{fileUploadPreview}}';\n"]}
@@ -87,7 +87,9 @@ var ImageUploadPreviewWithContext = function ImageUploadPreviewWithContext(props
87
87
 
88
88
  var _useTheme = (0, _ThemeContext.useTheme)(),
89
89
  _useTheme$theme = _useTheme.theme,
90
- overlay = _useTheme$theme.colors.overlay,
90
+ _useTheme$theme$color = _useTheme$theme.colors,
91
+ overlay = _useTheme$theme$color.overlay,
92
+ white = _useTheme$theme$color.white,
91
93
  _useTheme$theme$messa = _useTheme$theme.messageInput.imageUploadPreview,
92
94
  dismiss = _useTheme$theme$messa.dismiss,
93
95
  flatList = _useTheme$theme$messa.flatList,
@@ -204,6 +206,7 @@ var ImageUploadPreviewWithContext = function ImageUploadPreviewWithContext(props
204
206
  columnNumber: 9
205
207
  }
206
208
  }, _react["default"].createElement(_Close.Close, {
209
+ pathFill: white,
207
210
  __self: _this,
208
211
  __source: {
209
212
  fileName: _jsxFileName,
@@ -1 +1 @@
1
- {"version":3,"sources":["ImageUploadPreview.tsx"],"names":["IMAGE_PREVIEW_SIZE","WARNING_ICON_SIZE","styles","StyleSheet","create","dismiss","borderRadius","position","right","top","fileSizeText","fontSize","paddingHorizontal","flatList","paddingBottom","iconContainer","alignItems","flexDirection","justifyContent","itemContainer","height","marginLeft","unsupportedImage","bottom","marginHorizontal","upload","width","warningIconStyle","marginTop","warningText","color","ImageUploadPreviewWithContext","props","imageUploads","removeImage","uploadImage","theme","overlay","colors","messageInput","imageUploadPreview","UnsupportedImageTypeIndicator","indicatorType","accent_red","white","t","ProgressIndicatorTypes","NOT_SUPPORTED","backgroundColor","renderItem","index","item","state","itemMarginForIndex","length","marginRight","newImage","uri","file","url","id","_","offset","areEqual","prevProps","nextProps","prevImageUploads","nextImageUploads","every","prevImageUpload","MemoizedImageUploadPreviewWithContext","React","memo","ImageUploadPreview","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { FlatList, Image, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport { UploadProgressIndicator } from './UploadProgressIndicator';\n\nimport {\n ImageUpload,\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useTranslationContext } from '../../contexts/translationContext/TranslationContext';\nimport { Close } from '../../icons/Close';\nimport { Warning } from '../../icons/Warning';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { getIndicatorTypeForFileState, ProgressIndicatorTypes } from '../../utils/utils';\n\nconst IMAGE_PREVIEW_SIZE = 100;\nconst WARNING_ICON_SIZE = 16;\n\nconst styles = StyleSheet.create({\n dismiss: {\n borderRadius: 24,\n position: 'absolute',\n right: 8,\n top: 8,\n },\n fileSizeText: {\n fontSize: 12,\n paddingHorizontal: 10,\n },\n flatList: { paddingBottom: 12 },\n iconContainer: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'center',\n },\n itemContainer: {\n flexDirection: 'row',\n height: IMAGE_PREVIEW_SIZE,\n marginLeft: 8,\n },\n unsupportedImage: {\n borderRadius: 20,\n bottom: 8,\n flexDirection: 'row',\n marginHorizontal: 3,\n position: 'absolute',\n },\n upload: {\n borderRadius: 10,\n height: IMAGE_PREVIEW_SIZE,\n width: IMAGE_PREVIEW_SIZE,\n },\n warningIconStyle: {\n borderRadius: 24,\n marginTop: 6,\n },\n warningText: {\n alignItems: 'center',\n color: 'black',\n fontSize: 10,\n justifyContent: 'center',\n marginHorizontal: 4,\n },\n});\n\ntype ImageUploadPreviewPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageInputContextValue<StreamChatGenerics>,\n 'imageUploads' | 'removeImage' | 'uploadImage'\n>;\n\nexport type ImageUploadPreviewProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<ImageUploadPreviewPropsWithContext<StreamChatGenerics>>;\n\ntype ImageUploadPreviewItem = { index: number; item: ImageUpload };\n\nconst ImageUploadPreviewWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ImageUploadPreviewPropsWithContext<StreamChatGenerics>,\n) => {\n const { imageUploads, removeImage, uploadImage } = props;\n\n const {\n theme: {\n colors: { overlay },\n messageInput: {\n imageUploadPreview: { dismiss, flatList, itemContainer, upload },\n },\n },\n } = useTheme();\n\n const UnsupportedImageTypeIndicator = ({\n indicatorType,\n }: {\n indicatorType: typeof ProgressIndicatorTypes[keyof typeof ProgressIndicatorTypes] | null;\n }) => {\n const {\n theme: {\n colors: { accent_red, overlay, white },\n },\n } = useTheme();\n\n const { t } = useTranslationContext();\n return indicatorType === ProgressIndicatorTypes.NOT_SUPPORTED ? (\n <View style={[styles.unsupportedImage, { backgroundColor: overlay }]}>\n <View style={[styles.iconContainer]}>\n <Warning\n height={WARNING_ICON_SIZE}\n pathFill={accent_red}\n style={styles.warningIconStyle}\n width={WARNING_ICON_SIZE}\n />\n <Text style={[styles.warningText, { color: white }]}>{t('Not supported')}</Text>\n </View>\n </View>\n ) : null;\n };\n\n const renderItem = ({ index, item }: ImageUploadPreviewItem) => {\n const indicatorType = getIndicatorTypeForFileState(item.state);\n const itemMarginForIndex = index === imageUploads.length - 1 ? { marginRight: 8 } : {};\n\n return (\n <View style={[styles.itemContainer, itemMarginForIndex, itemContainer]}>\n <UploadProgressIndicator\n action={() => {\n uploadImage({ newImage: item });\n }}\n style={styles.upload}\n type={indicatorType}\n >\n <Image\n resizeMode='cover'\n source={{ uri: item.file.uri || item.url }}\n style={[styles.upload, upload]}\n />\n </UploadProgressIndicator>\n <TouchableOpacity\n onPress={() => {\n removeImage(item.id);\n }}\n style={[styles.dismiss, { backgroundColor: overlay }, dismiss]}\n testID='remove-image-upload-preview'\n >\n <Close />\n </TouchableOpacity>\n <UnsupportedImageTypeIndicator indicatorType={indicatorType} />\n </View>\n );\n };\n\n return imageUploads.length > 0 ? (\n <FlatList\n data={imageUploads}\n getItemLayout={(_, index) => ({\n index,\n length: IMAGE_PREVIEW_SIZE + 8,\n offset: (IMAGE_PREVIEW_SIZE + 8) * index,\n })}\n horizontal\n keyExtractor={(item) => item.id}\n renderItem={renderItem}\n style={[styles.flatList, flatList]}\n />\n ) : null;\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ImageUploadPreviewPropsWithContext<StreamChatGenerics>,\n nextProps: ImageUploadPreviewPropsWithContext<StreamChatGenerics>,\n) => {\n const { imageUploads: prevImageUploads } = prevProps;\n const { imageUploads: nextImageUploads } = nextProps;\n\n return (\n prevImageUploads.length === nextImageUploads.length &&\n prevImageUploads.every(\n (prevImageUpload, index) => prevImageUpload.state === nextImageUploads[index].state,\n )\n );\n};\n\nconst MemoizedImageUploadPreviewWithContext = React.memo(\n ImageUploadPreviewWithContext,\n areEqual,\n) as typeof ImageUploadPreviewWithContext;\n\n/**\n * UI Component to preview the images set for upload\n */\nexport const ImageUploadPreview = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ImageUploadPreviewProps<StreamChatGenerics>,\n) => {\n const { imageUploads, removeImage, uploadImage } = useMessageInputContext<StreamChatGenerics>();\n\n return (\n <MemoizedImageUploadPreviewWithContext\n {...{ imageUploads, removeImage, uploadImage }}\n {...props}\n />\n );\n};\n\nImageUploadPreview.displayName = 'ImageUploadPreview{messageInput{imageUploadPreview}}';\n"]}
1
+ {"version":3,"sources":["ImageUploadPreview.tsx"],"names":["IMAGE_PREVIEW_SIZE","WARNING_ICON_SIZE","styles","StyleSheet","create","dismiss","borderRadius","position","right","top","fileSizeText","fontSize","paddingHorizontal","flatList","paddingBottom","iconContainer","alignItems","flexDirection","justifyContent","itemContainer","height","marginLeft","unsupportedImage","bottom","marginHorizontal","upload","width","warningIconStyle","marginTop","warningText","color","ImageUploadPreviewWithContext","props","imageUploads","removeImage","uploadImage","theme","colors","overlay","white","messageInput","imageUploadPreview","UnsupportedImageTypeIndicator","indicatorType","accent_red","t","ProgressIndicatorTypes","NOT_SUPPORTED","backgroundColor","renderItem","index","item","state","itemMarginForIndex","length","marginRight","newImage","uri","file","url","id","_","offset","areEqual","prevProps","nextProps","prevImageUploads","nextImageUploads","every","prevImageUpload","MemoizedImageUploadPreviewWithContext","React","memo","ImageUploadPreview","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { FlatList, Image, StyleSheet, Text, TouchableOpacity, View } from 'react-native';\n\nimport { UploadProgressIndicator } from './UploadProgressIndicator';\n\nimport {\n ImageUpload,\n MessageInputContextValue,\n useMessageInputContext,\n} from '../../contexts/messageInputContext/MessageInputContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useTranslationContext } from '../../contexts/translationContext/TranslationContext';\nimport { Close } from '../../icons/Close';\nimport { Warning } from '../../icons/Warning';\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { getIndicatorTypeForFileState, ProgressIndicatorTypes } from '../../utils/utils';\n\nconst IMAGE_PREVIEW_SIZE = 100;\nconst WARNING_ICON_SIZE = 16;\n\nconst styles = StyleSheet.create({\n dismiss: {\n borderRadius: 24,\n position: 'absolute',\n right: 8,\n top: 8,\n },\n fileSizeText: {\n fontSize: 12,\n paddingHorizontal: 10,\n },\n flatList: { paddingBottom: 12 },\n iconContainer: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'center',\n },\n itemContainer: {\n flexDirection: 'row',\n height: IMAGE_PREVIEW_SIZE,\n marginLeft: 8,\n },\n unsupportedImage: {\n borderRadius: 20,\n bottom: 8,\n flexDirection: 'row',\n marginHorizontal: 3,\n position: 'absolute',\n },\n upload: {\n borderRadius: 10,\n height: IMAGE_PREVIEW_SIZE,\n width: IMAGE_PREVIEW_SIZE,\n },\n warningIconStyle: {\n borderRadius: 24,\n marginTop: 6,\n },\n warningText: {\n alignItems: 'center',\n color: 'black',\n fontSize: 10,\n justifyContent: 'center',\n marginHorizontal: 4,\n },\n});\n\ntype ImageUploadPreviewPropsWithContext<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Pick<\n MessageInputContextValue<StreamChatGenerics>,\n 'imageUploads' | 'removeImage' | 'uploadImage'\n>;\n\nexport type ImageUploadPreviewProps<\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n> = Partial<ImageUploadPreviewPropsWithContext<StreamChatGenerics>>;\n\ntype ImageUploadPreviewItem = { index: number; item: ImageUpload };\n\nconst ImageUploadPreviewWithContext = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ImageUploadPreviewPropsWithContext<StreamChatGenerics>,\n) => {\n const { imageUploads, removeImage, uploadImage } = props;\n\n const {\n theme: {\n colors: { overlay, white },\n messageInput: {\n imageUploadPreview: { dismiss, flatList, itemContainer, upload },\n },\n },\n } = useTheme();\n\n const UnsupportedImageTypeIndicator = ({\n indicatorType,\n }: {\n indicatorType: typeof ProgressIndicatorTypes[keyof typeof ProgressIndicatorTypes] | null;\n }) => {\n const {\n theme: {\n colors: { accent_red, overlay, white },\n },\n } = useTheme();\n\n const { t } = useTranslationContext();\n return indicatorType === ProgressIndicatorTypes.NOT_SUPPORTED ? (\n <View style={[styles.unsupportedImage, { backgroundColor: overlay }]}>\n <View style={[styles.iconContainer]}>\n <Warning\n height={WARNING_ICON_SIZE}\n pathFill={accent_red}\n style={styles.warningIconStyle}\n width={WARNING_ICON_SIZE}\n />\n <Text style={[styles.warningText, { color: white }]}>{t('Not supported')}</Text>\n </View>\n </View>\n ) : null;\n };\n\n const renderItem = ({ index, item }: ImageUploadPreviewItem) => {\n const indicatorType = getIndicatorTypeForFileState(item.state);\n const itemMarginForIndex = index === imageUploads.length - 1 ? { marginRight: 8 } : {};\n\n return (\n <View style={[styles.itemContainer, itemMarginForIndex, itemContainer]}>\n <UploadProgressIndicator\n action={() => {\n uploadImage({ newImage: item });\n }}\n style={styles.upload}\n type={indicatorType}\n >\n <Image\n resizeMode='cover'\n source={{ uri: item.file.uri || item.url }}\n style={[styles.upload, upload]}\n />\n </UploadProgressIndicator>\n <TouchableOpacity\n onPress={() => {\n removeImage(item.id);\n }}\n style={[styles.dismiss, { backgroundColor: overlay }, dismiss]}\n testID='remove-image-upload-preview'\n >\n <Close pathFill={white} />\n </TouchableOpacity>\n <UnsupportedImageTypeIndicator indicatorType={indicatorType} />\n </View>\n );\n };\n\n return imageUploads.length > 0 ? (\n <FlatList\n data={imageUploads}\n getItemLayout={(_, index) => ({\n index,\n length: IMAGE_PREVIEW_SIZE + 8,\n offset: (IMAGE_PREVIEW_SIZE + 8) * index,\n })}\n horizontal\n keyExtractor={(item) => item.id}\n renderItem={renderItem}\n style={[styles.flatList, flatList]}\n />\n ) : null;\n};\n\nconst areEqual = <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(\n prevProps: ImageUploadPreviewPropsWithContext<StreamChatGenerics>,\n nextProps: ImageUploadPreviewPropsWithContext<StreamChatGenerics>,\n) => {\n const { imageUploads: prevImageUploads } = prevProps;\n const { imageUploads: nextImageUploads } = nextProps;\n\n return (\n prevImageUploads.length === nextImageUploads.length &&\n prevImageUploads.every(\n (prevImageUpload, index) => prevImageUpload.state === nextImageUploads[index].state,\n )\n );\n};\n\nconst MemoizedImageUploadPreviewWithContext = React.memo(\n ImageUploadPreviewWithContext,\n areEqual,\n) as typeof ImageUploadPreviewWithContext;\n\n/**\n * UI Component to preview the images set for upload\n */\nexport const ImageUploadPreview = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: ImageUploadPreviewProps<StreamChatGenerics>,\n) => {\n const { imageUploads, removeImage, uploadImage } = useMessageInputContext<StreamChatGenerics>();\n\n return (\n <MemoizedImageUploadPreviewWithContext\n {...{ imageUploads, removeImage, uploadImage }}\n {...props}\n />\n );\n};\n\nImageUploadPreview.displayName = 'ImageUploadPreview{messageInput{imageUploadPreview}}';\n"]}