file browser refactoring

This commit is contained in:
Čarodej
2021-10-28 09:18:55 +02:00
parent 3dfee77042
commit 240880e2ad
5 changed files with 73 additions and 196 deletions
+47 -5
View File
@@ -40,7 +40,7 @@
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=df7397408805a1cc93fa",
"/chunks/files.js": "/chunks/files.js?id=b5a3adaa6057e4cdba19",
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~c7960950.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~c7960950.js?id=d0a2e05e3e243b2e2c4e",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.js?id=3f8806eb8079a2fc0ccf",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.js?id=6f1ab4ac0ab378fc0d10",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~bf3ddedc.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~bf3ddedc.js?id=388926106039c69c8cf8",
"/chunks/files~chunks/shared-with-me~chunks/shared/files~chunks/team-folders.js": "/chunks/files~chunks/shared-with-me~chunks/shared/files~chunks/team-folders.js?id=4b8864f9265f55f61cf7",
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=533962a06f477f6e046b",
@@ -58,7 +58,7 @@
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=4b3d3d91faa908b876ac",
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=b5017d712135057283c9",
"/chunks/plans.js": "/chunks/plans.js?id=6fca685daa45f22e4c8f",
"/chunks/platform.js": "/chunks/platform.js?id=3c51ec767f6d2c1810c0",
"/chunks/platform.js": "/chunks/platform.js?id=c3c68625fbd7ed182f4a",
"/chunks/platform~chunks/settings-subscription~chunks/shared~chunks/user-subscription.js": "/chunks/platform~chunks/settings-subscription~chunks/shared~chunks/user-subscription.js?id=8656b69a97cace919251",
"/chunks/platform~chunks/shared.js": "/chunks/platform~chunks/shared.js?id=fe405e53b1e3f3f7b210",
"/chunks/profile.js": "/chunks/profile.js?id=0638997b77c6f1246062",
@@ -74,11 +74,11 @@
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=b1e1ae3cff004140701e",
"/chunks/settings~chunks/settings-password.js": "/chunks/settings~chunks/settings-password.js?id=e67e12955133c57194d1",
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=651d5accf401908724c5",
"/chunks/shared.js": "/chunks/shared.js?id=593d723baeb1c68d329a",
"/chunks/shared.js": "/chunks/shared.js?id=6230d050545cd1bd9b87",
"/chunks/shared-with-me.js": "/chunks/shared-with-me.js?id=33766e7a9a3f97bd9ab9",
"/chunks/shared/authenticate.js": "/chunks/shared/authenticate.js?id=8b9ac9ed9afd8dd15229",
"/chunks/shared/files.js": "/chunks/shared/files.js?id=28b058da609faafd2f02",
"/chunks/shared/single-file.js": "/chunks/shared/single-file.js?id=1f5ef0d9638037a6e659",
"/chunks/shared/single-file.js": "/chunks/shared/single-file.js?id=0c49e63626c8ba2172eb",
"/chunks/sign-in.js": "/chunks/sign-in.js?id=229e1a8b99558b316f44",
"/chunks/sign-up.js": "/chunks/sign-up.js?id=eaf0d6ea279134fb8319",
"/chunks/status-check.js": "/chunks/status-check.js?id=98fbf33f5acd113515f5",
@@ -260,5 +260,47 @@
"/chunks/admin~chunks/platform~chunks/settings~chunks/shared.0d883f9884622194b94b.hot-update.js": "/chunks/admin~chunks/platform~chunks/settings~chunks/shared.0d883f9884622194b94b.hot-update.js",
"/chunks/admin~chunks/platform~chunks/settings~chunks/shared.d93cda4c25981e81c13d.hot-update.js": "/chunks/admin~chunks/platform~chunks/settings~chunks/shared.d93cda4c25981e81c13d.hot-update.js",
"/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~97130d1f.56772936f68e6b14f671.hot-update.js": "/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~97130d1f.56772936f68e6b14f671.hot-update.js",
"/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~97130d1f.5bad09b2e34b5f82ca9e.hot-update.js": "/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~97130d1f.5bad09b2e34b5f82ca9e.hot-update.js"
"/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~97130d1f.5bad09b2e34b5f82ca9e.hot-update.js": "/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~97130d1f.5bad09b2e34b5f82ca9e.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.58e166ae4cecb48ed0b6.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.58e166ae4cecb48ed0b6.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.78750552f1a1f5eb8a1d.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.78750552f1a1f5eb8a1d.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.ed04946a321b496be731.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.ed04946a321b496be731.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.c9de8042d13888967b46.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.c9de8042d13888967b46.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.edcd54cc057272402404.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.edcd54cc057272402404.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.c4f6e9fb49415857b45c.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.c4f6e9fb49415857b45c.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.dc61d0837a2ef30112b8.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.dc61d0837a2ef30112b8.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.94e1e6e1e3a94d565aa8.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.94e1e6e1e3a94d565aa8.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.dd04ae9c50219eb43536.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.dd04ae9c50219eb43536.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.fbb25a6eeb325cc3c49c.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.fbb25a6eeb325cc3c49c.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.b135438cd06d19a70073.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.b135438cd06d19a70073.hot-update.js",
"/js/main.4d4cf5557f2034faa898.hot-update.js": "/js/main.4d4cf5557f2034faa898.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.cbd8456685fbf015a54e.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.cbd8456685fbf015a54e.hot-update.js",
"/js/main.15678d6c008298fbd840.hot-update.js": "/js/main.15678d6c008298fbd840.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.9391c7916cad36569d79.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.9391c7916cad36569d79.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.4fb78029785846e71732.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.4fb78029785846e71732.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.49e49d1741fda983fd79.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.49e49d1741fda983fd79.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.401538147c0eb5192436.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.401538147c0eb5192436.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.e910f73b5e1f252fef1f.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.e910f73b5e1f252fef1f.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.0bfa822a236bc94476aa.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.0bfa822a236bc94476aa.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.724b76cde21f93eba551.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.724b76cde21f93eba551.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.ac49e5efb7020ea45c1f.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.ac49e5efb7020ea45c1f.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.4671f18813f5a45bcdf2.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.4671f18813f5a45bcdf2.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.9604267a50e06f34dfab.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.9604267a50e06f34dfab.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.22748593ac26a3beed33.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.22748593ac26a3beed33.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.077bf22edc95cd1add74.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.077bf22edc95cd1add74.hot-update.js",
"/js/main.9d856117c64cc49b9906.hot-update.js": "/js/main.9d856117c64cc49b9906.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.9d856117c64cc49b9906.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.9d856117c64cc49b9906.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.dec74a70f52c4170154a.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.dec74a70f52c4170154a.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.f366e2366cfbca7e4348.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.f366e2366cfbca7e4348.hot-update.js",
"/js/main.158ac31721bd094db516.hot-update.js": "/js/main.158ac31721bd094db516.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.158ac31721bd094db516.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.158ac31721bd094db516.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.a2253fbfc6241bb1c0e9.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.a2253fbfc6241bb1c0e9.hot-update.js",
"/chunks/platform.a2253fbfc6241bb1c0e9.hot-update.js": "/chunks/platform.a2253fbfc6241bb1c0e9.hot-update.js",
"/chunks/shared.a2253fbfc6241bb1c0e9.hot-update.js": "/chunks/shared.a2253fbfc6241bb1c0e9.hot-update.js",
"/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~673d1ac3.2ef20e347e3d0c8bb1c2.hot-update.js": "/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~673d1ac3.2ef20e347e3d0c8bb1c2.hot-update.js",
"/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~97130d1f.2ef20e347e3d0c8bb1c2.hot-update.js": "/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/settin~97130d1f.2ef20e347e3d0c8bb1c2.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.2ef20e347e3d0c8bb1c2.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.2ef20e347e3d0c8bb1c2.hot-update.js",
"/chunks/admin~chunks/platform~chunks/settings~chunks/shared.f42bd920e2a881d2edb0.hot-update.js": "/chunks/admin~chunks/platform~chunks/settings~chunks/shared.f42bd920e2a881d2edb0.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.f42bd920e2a881d2edb0.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.f42bd920e2a881d2edb0.hot-update.js",
"/chunks/shared/single-file.f42bd920e2a881d2edb0.hot-update.js": "/chunks/shared/single-file.f42bd920e2a881d2edb0.hot-update.js",
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.ac24588754922d0b5c69.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared-with-me~chunks/shared/files~~34b5eb22.ac24588754922d0b5c69.hot-update.js"
}
+25 -188
View File
@@ -1,94 +1,45 @@
<template>
<div
:class="{'is-offset': filesInQueueTotal > 0, 'is-dragging': isDragging }"
class="file-content md:w-full md:overflow-y-auto md:h-full"
id="file-content-id"
@drop.stop.prevent="dropUpload($event)"
:class="{'user-dropping-file': isDragging}"
class="file-content md:w-full md:overflow-y-auto md:h-full md:px-0 px-4"
@drop.stop.prevent="uploadDroppedItems($event)"
@keydown.delete="deleteItems"
@dragover="dragEnter"
@dragleave="dragLeave"
@dragover.prevent
tabindex="-1"
@click.self="filesContainerClick"
@click.self="deselect"
>
<!--Item previews list-->
<div v-if="isList" class="file-list-wrapper md:px-0 px-4">
<transition-group
name="file"
tag="section"
class="file-list"
:class="FilePreviewType"
>
<FileItemList
@dragstart="dragStart(item)"
@drop.stop.native.prevent="dragFinish(item, $event)"
@contextmenu.native.prevent="contextMenu($event, item)"
:item="item"
v-for="item in entries"
:key="item.data.id"
class="file-item"
:class="draggedItems.includes(item) ? 'dragged' : ''"
/>
</transition-group>
</div>
<!--Item previews grid-->
<div v-if="isGrid" class="file-grid-wrapper">
<transition-group
name="file"
tag="section"
class="file-list"
:class="FilePreviewType"
>
<FileItemGrid
@dragstart="dragStart(item)"
@drop.native.prevent="dragFinish(item, $event)"
@contextmenu.native.prevent="contextMenu($event, item)"
:item="item"
v-for="item in entries"
:key="item.data.id"
class="file-item"
:class="draggedItems.includes(item) ? 'dragged' : '' "
/>
</transition-group>
</div>
<FileItemList
@dragstart="dragStart(item)"
@drop.stop.native.prevent="dragFinish(item, $event)"
@contextmenu.native.prevent="contextMenu($event, item)"
:class="draggedItems.includes(item) ? 'opacity-60' : ''"
v-for="item in entries"
:key="item.data.id"
:item="item"
/>
</div>
</template>
<script>
import FileItemList from '/resources/js/components/FilesView/FileItemList'
import FileItemGrid from '/resources/js/components/FilesView/FileItemGrid'
import {mapGetters} from 'vuex'
import {events} from '/resources/js/bus'
import {mapGetters} from 'vuex'
export default {
name: 'FileBrowser',
components: {
FileItemList,
FileItemGrid,
},
computed: {
...mapGetters([
'filesInQueueTotal',
'isVisibleSidebar',
'FilePreviewType',
'currentFolder',
'clipboard',
'isLoading',
'entries'
]),
isGrid() {
return this.FilePreviewType === 'grid'
},
isList() {
return this.FilePreviewType === 'list'
},
isEmpty() {
return this.entries.length === 0
},
draggedItems() {
//Set opacity for dragged items
// Set opacity for dragged items
if (!this.clipboard.includes(this.draggingId)) {
return [this.draggingId]
}
@@ -110,9 +61,8 @@
this.$store.dispatch('deleteItem')
}
},
dropUpload(event) {
// Upload external file
this.$uploadExternalFiles(event, this.currentFolder.data.id)
uploadDroppedItems(event) {
this.$uploadDraggedFiles(event, this.currentFolder.data.id)
this.isDragging = false
},
@@ -131,6 +81,8 @@
// Store dragged folder
this.draggingId = data
// TODO: founded issue on firefox
},
dragFinish(data, event) {
@@ -138,26 +90,26 @@
// Prevent to drop on file or image
if (data.data.type !== 'folder' || this.draggingId === data) return
//Prevent move selected folder to folder if in beteewn selected folders
// Prevent move selected folder to folder if in between selected folders
if (this.clipboard.find(item => item === data && this.clipboard.length > 1)) return
//Move item if is not included in selected items
// Move item if is not included in selected items
if (!this.clipboard.includes(this.draggingId)) {
this.$store.dispatch('moveItem', {to_item: data, noSelectedItem: this.draggingId})
}
//Move selected items to folder
// Move selected items to folder
if (this.clipboard.length > 0 && this.clipboard.includes(this.draggingId)) {
this.$store.dispatch('moveItem', {to_item: data, noSelectedItem: null})
}
} else {
// Get id of current folder
// Get id from current folder
const id = data.data.type !== 'folder' ? this.currentFolder.data.id : data.data.id
// Upload external file
this.$uploadExternalFiles(event, id)
this.$uploadDraggedFiles(event, id)
}
this.isDragging = false
@@ -165,9 +117,7 @@
contextMenu(event, item) {
events.$emit('context-menu:show', event, item)
},
filesContainerClick() {
// Deselect items clicked by outside
deselect() {
this.$store.commit('CLIPBOARD_CLEAR')
}
},
@@ -179,119 +129,6 @@
this.draggingId = undefined
}, 10)
})
events.$on('fileItem:deselect', () => {
this.$store.commit('CLIPBOARD_CLEAR')
})
events.$on('scrollTop', () => {
// Scroll top
let container = document.getElementsByClassName(
'file-content'
)[0]
if (container)
container.scrollTop = 0
})
}
}
</script>
<style scoped lang="scss">
@import '/resources/sass/vuefilemanager/_variables';
@import '/resources/sass/vuefilemanager/_mixins';
.file-list {
.dragged {
/deep/ .is-dragenter {
border: 2px solid transparent;
}
}
}
.dragged {
opacity: 0.5;
}
#multi-selected {
position: fixed;
pointer-events: none;
z-index: 100;
}
.button-upload {
display: block;
text-align: center;
margin: 20px 0;
}
.mobile-search {
display: none;
margin-bottom: 10px;
margin-top: 10px;
}
.file-content {
&.is-dragging {
@include transform(scale(0.99));
}
}
.files-container {
.file-list {
&.grid {
display: grid;
grid-template-columns: repeat(auto-fill, 180px);
justify-content: space-evenly;
}
}
}
// Transition
.file-move {
transition: transform 0.6s;
}
.file-enter-active {
transition: all 300ms ease;
}
.file-leave-active {
transition: all 0ms;
}
.file-enter, .file-leave-to /* .list-leave-active below version 2.1.8 */
{
opacity: 0;
transform: translateX(-20px);
}
@media only screen and (max-width: 960px) {
.mobile-search {
display: block;
}
}
@media only screen and (max-width: 690px) {
.files-container {
.file-list {
&.grid {
grid-template-columns: repeat(auto-fill, 120px);
}
}
}
.mobile-search {
margin-bottom: 0;
}
}
</style>
+1 -1
View File
@@ -103,7 +103,7 @@ const FunctionHelpers = {
this.$store.commit('INCREASE_FILES_IN_QUEUES_TOTAL', files.length)
}
Vue.prototype.$uploadExternalFiles = async function (event, parent_id) {
Vue.prototype.$uploadDraggedFiles = async function (event, parent_id) {
// Prevent submit empty files
if (event.dataTransfer.items.length === 0) return
-1
View File
@@ -126,7 +126,6 @@
mounted() {
// TODO: new scaledown effect
events.$on('mobile-menu:show', () => this.isScaledDown = true)
events.$on('fileItem:deselect', () => this.isScaledDown = false)
events.$on('mobile-menu:hide', () => this.isScaledDown = false)
}
}
-1
View File
@@ -119,7 +119,6 @@
},
mounted() {
events.$on('mobile-menu:show', () => this.isScaledDown = true)
events.$on('fileItem:deselect', () => this.isScaledDown = false)
this.$store.dispatch('getShareDetail', this.$route.params.token)
.then(response => {