| @@ -167,10 +167,20 @@ const FilesViewPage = ({ history }) => { | |||
| console.log(e, "error in file-viewer"); | |||
| }; | |||
| const displayFile = (fileStream, streamId) => { | |||
| setFile({ fileStream, streamId }); | |||
| const displayFile = (fileStream, streamId, fileType) => { | |||
| setFile({ fileStream, streamId, fileType }); | |||
| }; | |||
| const getHrefForDownload = (fileType, fileStream) => { | |||
| if (fileType === "docx") { | |||
| return `data:application/vnd.openxmlformats-officedocument.wordprocessingml.document;base64,${fileStream}`; | |||
| } else if (fileType === "doc") { | |||
| return `data:application/msword;base64,${fileStream}`; | |||
| } else { | |||
| return `data:application/pdf;base64,${fileStream}`; | |||
| } | |||
| }; | |||
| return isLoading ? ( | |||
| <div> | |||
| <div className="l-t-rectangle"></div> | |||
| @@ -262,7 +272,9 @@ const FilesViewPage = ({ history }) => { | |||
| <tr | |||
| key={index} | |||
| className="secondaryRow" | |||
| onClick={() => displayFile(n.file_stream, n.stream_id)} | |||
| onClick={() => | |||
| displayFile(n.file_stream, n.stream_id, n.file_type) | |||
| } | |||
| > | |||
| <td className="docs-name">{n.fileName}</td> | |||
| <td className="docs-name">{n.title}</td> | |||
| @@ -293,7 +305,10 @@ const FilesViewPage = ({ history }) => { | |||
| padding: 8, | |||
| }} | |||
| download={n.title} | |||
| href={`data:application/vnd.openxmlformats-officedocument.wordprocessingml.document;base64,${n.file_stream}`} | |||
| href={getHrefForDownload( | |||
| n.file_type, | |||
| n.file_stream | |||
| )} | |||
| > | |||
| {t("common.download")} | |||
| </a> | |||
| @@ -312,7 +327,7 @@ const FilesViewPage = ({ history }) => { | |||
| }} | |||
| > | |||
| <FileViewer | |||
| fileType="docx" | |||
| fileType={file.fileType} | |||
| filePath={`data:application/vnd.openxmlformats-officedocument.wordprocessingml.document;base64,${file.fileStream}`} | |||
| onError={onError} | |||
| /> | |||