From 0fc61a50e0460879888001d594cc577cea2de9fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6=20=28skjnldsv=29?= Date: Thu, 14 Mar 2019 11:44:34 +0100 Subject: [PATCH 1/4] Use file app mime data MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ (skjnldsv) --- package-lock.json | 4 +++- package.json | 1 - src/views/Viewer.vue | 21 ++++----------------- 3 files changed, 7 insertions(+), 19 deletions(-) diff --git a/package-lock.json b/package-lock.json index 29d0920d0..a2e6ae462 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6712,12 +6712,14 @@ "mime-db": { "version": "1.38.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz", - "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==" + "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==", + "dev": true }, "mime-types": { "version": "2.1.22", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz", "integrity": "sha512-aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==", + "dev": true, "requires": { "mime-db": "~1.38.0" } diff --git a/package.json b/package.json index 329e0b0d0..00cb04c12 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,6 @@ "dependencies": { "axios": "^0.18.0", "debounce": "^1.2.0", - "mime-types": "^2.1.22", "nextcloud-server": "^0.15.9", "nextcloud-vue": "^0.9.1", "vue": "^2.6.8", diff --git a/src/views/Viewer.vue b/src/views/Viewer.vue index 8c7161a8c..d2792dd02 100644 --- a/src/views/Viewer.vue +++ b/src/views/Viewer.vue @@ -193,7 +193,7 @@ export default { const relativePath = `${fileInfo.dir !== '/' ? fileInfo.dir : ''}/${fileName}` const path = `${this.root}${relativePath}` - const mime = this.getMime(path) + const mime = fileInfo.$file.data('mime') const group = this.mimeGroups[mime] const mimes = this.mimeGroups[group] @@ -223,7 +223,7 @@ export default { */ openFileFromList(fileInfo) { const path = fileInfo.href - const mime = this.getMime(path) + const mime = fileInfo.mimetype const modal = this.components[mime] if (modal) { @@ -248,7 +248,7 @@ export default { if (prev) { const path = prev.href - const mime = this.getMime(path) + const mime = prev.mimetype const modal = this.components[mime] if (modal) { @@ -266,7 +266,7 @@ export default { if (next) { const path = next.href - const mime = this.getMime(path) + const mime = next.mimetype const modal = this.components[mime] if (modal) { @@ -360,19 +360,6 @@ export default { }) }, - /** - * Extract mime from file path or use existing alias - * - * @param {String} path the file path - * @returns {String} the mime type - */ - getMime(path) { - const mime = Mime.lookup(path) - return this.mimesAliases[mime] - ? this.mimesAliases[mime] - : mime - }, - /** * Close the viewer */ From 5d3afa1c7c722d3fde5a87718659d0eb67439870 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6=20=28skjnldsv=29?= Date: Thu, 14 Mar 2019 11:44:34 +0100 Subject: [PATCH 2/4] Fix title MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ (skjnldsv) --- src/views/Viewer.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/Viewer.vue b/src/views/Viewer.vue index d2792dd02..a0ac4b02f 100644 --- a/src/views/Viewer.vue +++ b/src/views/Viewer.vue @@ -137,7 +137,7 @@ export default { currentFileName() { if (this.currentFile && this.currentFile.path) { const path = this.currentFile.path.split('/') - return path[path.length - 1] + return decodeURI(path[path.length - 1]) } return '' }, From 073e0e5f3d94bb9e7bd940576d0608253bdaf8e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6=20=28skjnldsv=29?= Date: Thu, 14 Mar 2019 11:57:15 +0100 Subject: [PATCH 3/4] Circular filelist MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ (skjnldsv) --- src/views/Viewer.vue | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/views/Viewer.vue b/src/views/Viewer.vue index a0ac4b02f..4c5eb9420 100644 --- a/src/views/Viewer.vue +++ b/src/views/Viewer.vue @@ -129,10 +129,10 @@ export default { computed: { hasPrevious() { - return this.currentIndex > 0 + return this.fileList.length > 1 }, hasNext() { - return this.currentIndex < this.fileList.length - 1 + return this.fileList.length > 1 }, currentFileName() { if (this.currentFile && this.currentFile.path) { @@ -378,7 +378,11 @@ export default { previous() { this.loading = true this.failed = false + this.currentIndex-- + if (this.currentIndex < 0) { + this.currentIndex = this.fileList.length - 1 + } this.openFileFromList(this.fileList[this.currentIndex]) }, @@ -389,7 +393,11 @@ export default { next() { this.loading = true this.failed = false + this.currentIndex++ + if (this.currentIndex > this.fileList.length - 1) { + this.currentIndex = 0 + } this.openFileFromList(this.fileList[this.currentIndex]) }, From 4a2e50aad9925662140c2d5c32dd522462fc6f74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6=20=28skjnldsv=29?= Date: Thu, 14 Mar 2019 13:58:28 +0100 Subject: [PATCH 4/4] Fix Mime import MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ (skjnldsv) --- src/views/Viewer.vue | 1 - 1 file changed, 1 deletion(-) diff --git a/src/views/Viewer.vue b/src/views/Viewer.vue index 4c5eb9420..3f4e33b2a 100644 --- a/src/views/Viewer.vue +++ b/src/views/Viewer.vue @@ -84,7 +84,6 @@