From 6f452a062fac8a8607b9247a448876c276645432 Mon Sep 17 00:00:00 2001
From: Alexandru Munteanu <alexandru.munteanu@thinslices.com>
Date: Tue, 30 Jan 2018 16:10:11 +0200
Subject: [PATCH] Delete file and add link to preview

---
 .../src/components/FileItem.js                | 10 +++++----
 .../component-wizard/src/components/Files.js  | 21 +++++++++----------
 2 files changed, 16 insertions(+), 15 deletions(-)

diff --git a/packages/component-wizard/src/components/FileItem.js b/packages/component-wizard/src/components/FileItem.js
index e870967bd..a0853bf83 100644
--- a/packages/component-wizard/src/components/FileItem.js
+++ b/packages/component-wizard/src/components/FileItem.js
@@ -13,11 +13,13 @@ const parseFileSize = size => {
     return `${Math.floor(gbSize)} GB`
   } else if (Math.floor(mbSize)) {
     return `${Math.floor(mbSize)} MB`
+  } else if (Math.floor(kbSize)) {
+    return `${Math.floor(kbSize)} kB`
   }
-  return `${Math.floor(kbSize)} kB`
+  return `${size} bytes`
 }
 
-const FileItem = ({ dragHandle, name, size, id, removeFile }) => (
+const FileItem = ({ dragHandle, name, size, id, removeFile, ...rest }) => (
   <div className={classnames(classes['file-item'])}>
     {dragHandle}
     <div className={classnames(classes.info)}>
@@ -25,9 +27,9 @@ const FileItem = ({ dragHandle, name, size, id, removeFile }) => (
       <span>{parseFileSize(size)}</span>
     </div>
     <div className={classnames(classes.buttons)}>
-      <button title="Preview">
+      <a href={rest.signedUrl} target="_blank">
         <Icon color="#666">eye</Icon>
-      </button>
+      </a>
       <button onClick={removeFile(id)} title="Delete">
         <Icon color="#666">trash-2</Icon>
       </button>
diff --git a/packages/component-wizard/src/components/Files.js b/packages/component-wizard/src/components/Files.js
index b477839ac..4b8c301d3 100644
--- a/packages/component-wizard/src/components/Files.js
+++ b/packages/component-wizard/src/components/Files.js
@@ -133,17 +133,16 @@ export default compose(
       updateFragment,
     }) => type => id => e => {
       e.preventDefault()
-      deleteFile(id).then(() => {
-        const newFiles = files[type].filter(f => f.id !== id)
-        setFiles(newFiles, type)
-        updateFragment(project, {
-          submitted: new Date(),
-          ...version,
-          files: {
-            ...version.files,
-            [type]: newFiles,
-          },
-        })
+      deleteFile(id)
+      const newFiles = files[type].filter(f => f.id !== id)
+      setFiles(newFiles, type)
+      updateFragment(project, {
+        submitted: new Date(),
+        ...version,
+        files: {
+          ...version.files,
+          [type]: newFiles,
+        },
       })
     },
   }),
-- 
GitLab