// Copyright (c) 2017 PlanGrid, Inc. import React, { useRef } from "react"; import "../styles/main.scss"; import { FetchWrapper } from "./FetchWrapper"; import { DocxViewer, VideoViewer, XBimViewer, PDFViewer, UnsupportedViewer, PhotoViewerWrapper, AudioViewer, } from "./drivers"; export interface IFileViewerProps { fileType: string; filePath: string; onError?: (e: Error) => void; errorComponent?: React.ReactElement; unsupportedComponent?: React.ReactElement; } export const FileViewer: React.FunctionComponent = ( props ) => { const container = useRef(null); return (
); }; export interface IDriverProps extends IFileViewerProps { width?: number; height?: number; } const Driver: React.FunctionComponent = (props) => { const { fileType } = props; switch (fileType) { case "csv": { return ( ); } case "xlsx": { return ( ); } case "jpg": case "jpeg": case "gif": case "bmp": case "png": { return ; } case "pdf": { return ; } case "docx": { return ; } case "mp3": { return ; } case "webm": case "mov": case "mp4": { return ; } case "wexbim": { return ; } default: { return ; } } };