+
+
+ {{ file.name }}
+
diff --git a/frontend/src/css/base.css b/frontend/src/css/base.css
index 124d9054..ac2d4c93 100644
--- a/frontend/src/css/base.css
+++ b/frontend/src/css/base.css
@@ -150,6 +150,12 @@ main {
.upload-files .file .file-name {
font-size: 1.1em;
+ display: flex;
+ align-items: center;
+}
+
+.upload-files .file .file-name i {
+ margin-right: 5px;
}
.upload-files .file .file-progress {
@@ -168,16 +174,18 @@ main {
.upload-files.closed .card-content {
display: none;
- padding: 0em 1em;
+ padding: 0em 1em 1em 1em;
}
-.upload-files .card-title {
+.upload-files .card .card-title {
display: flex;
align-items: center;
justify-content: center;
+ font-size: 0.8em;
+ padding: 1em 1em 0em;
}
.upload-files.closed .card-title {
font-size: 0.7em;
padding: 0.5em 1em;
-}
+}
\ No newline at end of file
diff --git a/frontend/src/store/getters.js b/frontend/src/store/getters.js
index ed3e3b4c..eee94fe2 100644
--- a/frontend/src/store/getters.js
+++ b/frontend/src/store/getters.js
@@ -24,11 +24,17 @@ const getters = {
for (let index in state.upload.uploads) {
let upload = state.upload.uploads[index];
let id = upload.id;
+ let type = upload.type;
let name = decodeURIComponent(upload.path.replace(/^.*[\\/]/, ""));
let progress = state.upload.progress[id];
let size = state.upload.sizes[id];
- files.push({ id, name, progress: Math.ceil((progress / size) * 100) });
+ files.push({
+ id,
+ name,
+ progress: Math.ceil((progress / size) * 100),
+ type,
+ });
}
return files.sort((a, b) => a.progress - b.progress);
diff --git a/frontend/src/utils/upload.js b/frontend/src/utils/upload.js
index 1ab4bb65..e1222024 100644
--- a/frontend/src/utils/upload.js
+++ b/frontend/src/utils/upload.js
@@ -99,6 +99,15 @@ export function scanFiles(dt) {
});
}
+function detectType(mimetype) {
+ if (mimetype.startsWith("video")) return "video";
+ if (mimetype.startsWith("audio")) return "audio";
+ if (mimetype.startsWith("image")) return "image";
+ if (mimetype.startsWith("pdf")) return "pdf";
+ if (mimetype.startsWith("text")) return "text";
+ return "blob";
+}
+
export function handleFiles(files, base, overwrite = false) {
for (let i = 0; i < files.length; i++) {
let id = store.state.upload.id;
@@ -120,6 +129,7 @@ export function handleFiles(files, base, overwrite = false) {
path,
file,
overwrite,
+ type: detectType(file.type),
};
store.dispatch("upload/upload", item);