import { createContext, useContext } from "react"; import { Pressable, View } from "react-native"; import ImageViewing from "react-native-image-viewing"; import { useSafeAreaInsets } from "react-native-safe-area-context"; import { useMediaActions } from "../lib/mediaActions"; import { AppText } from "./AppText"; import { SymbolView } from "./AppSymbol"; import type { ResolvedFilePreviewSource } from "./FilePreviewModal"; import { MediaActionsMenu } from "./MediaActionsMenu"; import { MediaSourceCaption } from "./MediaSourceCaption"; type MediaImagePreviewProps = { readonly source: ResolvedFilePreviewSource; readonly onRequestClose: () => void; }; const ImagePreviewContext = createContext(null); function ImagePreviewHeader() { const props = useContext(ImagePreviewContext)!; const insets = useSafeAreaInsets(); const mediaActions = useMediaActions(props.source.actionsSource, props.onRequestClose); return ( {props.source.name ?? "Image"} ); } /** Android keeps media actions in its in-app image viewer. iOS uses Quick Look. */ export function MediaImagePreview(props: MediaImagePreviewProps) { return ( ); }