mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-05-13 08:45:01 +00:00
navigation through public folders
This commit is contained in:
+56
-12
@@ -9,7 +9,7 @@
|
||||
"/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~738b0c2f.js": "/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~738b0c2f.js?id=8013b71e5d41ca2752b8",
|
||||
"/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~e44242d2.js": "/chunks/admin~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~e44242d2.js?id=517790f13bf7daccdfe6",
|
||||
"/chunks/admin~chunks/platform.js": "/chunks/admin~chunks/platform.js?id=2399d0628b27e1d915c2",
|
||||
"/chunks/admin~chunks/platform~chunks/settings~chunks/shared.js": "/chunks/admin~chunks/platform~chunks/settings~chunks/shared.js?id=a80b8af62fd725c60bdb",
|
||||
"/chunks/admin~chunks/platform~chunks/settings~chunks/shared.js": "/chunks/admin~chunks/platform~chunks/settings~chunks/shared.js?id=ef89aab5d77b490cc2fe",
|
||||
"/chunks/admin~chunks/platform~chunks/settings~chunks/shared/file-browser.js": "/chunks/admin~chunks/platform~chunks/settings~chunks/shared/file-browser.js?id=8d039f8ca0a670b99cca",
|
||||
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=5f8d3e698c1fd5b9b5a5",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~605f4c49.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~605f4c49.js?id=055d17c4463d3ef30218",
|
||||
@@ -36,7 +36,7 @@
|
||||
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=1e02112873d0b86eb1ac",
|
||||
"/chunks/email-verified.js": "/chunks/email-verified.js?id=dc4aa33310fc98be6749",
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=a547f8b4e9a83935a777",
|
||||
"/chunks/files.js": "/chunks/files.js?id=a2e2ce2cceb678b5e0aa",
|
||||
"/chunks/files.js": "/chunks/files.js?id=5678aec50204dfafee5a",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/file-browser~d426c4eb.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/file-browser~d426c4eb.js?id=c6ab649e67651e0b9f18",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~9a5728b1.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~9a5728b1.js?id=4f10f893c25e398f40bc",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~aaaa339d.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~aaaa339d.js?id=593b877c4ab874ceccfe",
|
||||
@@ -49,7 +49,7 @@
|
||||
"/chunks/homepage.js": "/chunks/homepage.js?id=6f2aac612b4c6eaabf61",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=a5b0819b57321599f235",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=f0360ddfb0f1e1a9058b",
|
||||
"/chunks/my-shared-items.js": "/chunks/my-shared-items.js?id=2d6e492fe68e427dc49e",
|
||||
"/chunks/my-shared-items.js": "/chunks/my-shared-items.js?id=bc5785e11ec2e215229b",
|
||||
"/chunks/not-found.js": "/chunks/not-found.js?id=8e5c99340188c2a7b215",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=3d194f15e25dec1c54d3",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=bfd9a2e2c52e60ed025e",
|
||||
@@ -59,14 +59,14 @@
|
||||
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=17469545c5b6a16c3bbf",
|
||||
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=0dd0a5efe0e3cb511c48",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=5a3c28288952fcad96e5",
|
||||
"/chunks/platform.js": "/chunks/platform.js?id=81baa71e5044626e01ae",
|
||||
"/chunks/platform~chunks/shared.js": "/chunks/platform~chunks/shared.js?id=0c24fb651a0cdb9ec6cc",
|
||||
"/chunks/platform.js": "/chunks/platform.js?id=1961d3ff45861ab12b2e",
|
||||
"/chunks/platform~chunks/shared.js": "/chunks/platform~chunks/shared.js?id=7dec07de559c752d108a",
|
||||
"/chunks/platform~chunks/shared/file-browser.js": "/chunks/platform~chunks/shared/file-browser.js?id=b142ad8801528b166787",
|
||||
"/chunks/platform~chunks/shared~chunks/shared/file-browser.js": "/chunks/platform~chunks/shared~chunks/shared/file-browser.js?id=6ba92eab6a45cbab3af5",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=658aa03af778cc2cc100",
|
||||
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=ddb7be518c092ed392ca",
|
||||
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=4b176796d100a2b24d71",
|
||||
"/chunks/recent-uploads.js": "/chunks/recent-uploads.js?id=f3e4f3b1f37e034ca3ba",
|
||||
"/chunks/recent-uploads.js": "/chunks/recent-uploads.js?id=808b27b4d0bf98bf5ed7",
|
||||
"/chunks/settings.js": "/chunks/settings.js?id=a1e5e739768b788a043a",
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=0656db2b76eaa0de2c58",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=29fbd676788295256ffe",
|
||||
@@ -76,7 +76,7 @@
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=51b246c660e78c9263b5",
|
||||
"/chunks/settings~chunks/settings-password.js": "/chunks/settings~chunks/settings-password.js?id=680f99e2021f19ff1af8",
|
||||
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=8a499266af9527039582",
|
||||
"/chunks/shared.js": "/chunks/shared.js?id=6a28b7a8c91904501fc1",
|
||||
"/chunks/shared.js": "/chunks/shared.js?id=94f65ed85832e888dd3e",
|
||||
"/chunks/shared/authenticate.js": "/chunks/shared/authenticate.js?id=30b0b0d1930a1952648a",
|
||||
"/chunks/shared/file-browser.js": "/chunks/shared/file-browser.js?id=02bb2b1a5518a1f73b2a",
|
||||
"/chunks/shared/single-file.js": "/chunks/shared/single-file.js?id=b733dc84cd8e05a8f6f3",
|
||||
@@ -86,7 +86,7 @@
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=2802cde66f7d12ec8442",
|
||||
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=5dbfd83cfacad270a636",
|
||||
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=721e855dff920e5e6996",
|
||||
"/chunks/trash.js": "/chunks/trash.js?id=ed9ddbd70f3671a284f9",
|
||||
"/chunks/trash.js": "/chunks/trash.js?id=16d5b490b6ca3924e977",
|
||||
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=8879f5c458f08648405a",
|
||||
"/chunks/upgrade-billing~chunks/upgrade-plan.js": "/chunks/upgrade-billing~chunks/upgrade-plan.js?id=e365ae16373be9dbd458",
|
||||
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=fc8183dc546683a9b60f",
|
||||
@@ -130,15 +130,15 @@
|
||||
"/chunks/admin~chunks/platform~chunks/settings~chunks/shared/files.js": "/chunks/admin~chunks/platform~chunks/settings~chunks/shared/files.js?id=dba77fc6b158bc3c2e4e",
|
||||
"/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/my-shared-items~chunks/page~477ccadb.js": "/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/my-shared-items~chunks/page~477ccadb.js?id=914f040c5966894873f8",
|
||||
"/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/my-shared-items~chunks/page~9b5759a9.js": "/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/my-shared-items~chunks/page~9b5759a9.js?id=eb26643e072aa1f2b4b5",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/files~chunks/trash.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/files~chunks/trash.js?id=4ba1c07c8eca89b549f9",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/files~chunks/trash.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/files~chunks/trash.js?id=55e78339ed8a448de2a3",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~c3a97969.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~c3a97969.js?id=5cda983d60a85c9168e9",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~cd83f396.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chunks/share~cd83f396.js?id=f9f2e41ad11f62057c58",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/settings-subscription~chunks/shared~f23e39b6.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/settings-subscription~chunks/shared~f23e39b6.js?id=5216516ba11c29601c91",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared/files~chunks/shared/single-f~222c7501.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared/files~chunks/shared/single-f~222c7501.js?id=968b0922210751711d85",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared/files~chunks/trash.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared/files~chunks/trash.js?id=42e9ee64d5c41d270832",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared/files~chunks/trash.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared/files~chunks/trash.js?id=21ce7c8e1167b492c6fc",
|
||||
"/chunks/platform~chunks/shared/files.js": "/chunks/platform~chunks/shared/files.js?id=a1891e149640c9a838f4",
|
||||
"/chunks/platform~chunks/shared~chunks/shared/files.js": "/chunks/platform~chunks/shared~chunks/shared/files.js?id=1ed2d41883a929aa1bc7",
|
||||
"/chunks/shared/files.js": "/chunks/shared/files.js?id=0b7303d94c2570653312",
|
||||
"/chunks/shared/files.js": "/chunks/shared/files.js?id=e79846629f8ee34e0ee1",
|
||||
"/vendors~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chun~efbe7a82.js": "/vendors~chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared~chun~efbe7a82.js?id=9af0690154c8bf6d4ef8",
|
||||
"/js/main.d74018fe5b56d003aae4.hot-update.js": "/js/main.d74018fe5b56d003aae4.hot-update.js",
|
||||
"/js/main.ba6f6df8b0f4192825fe.hot-update.js": "/js/main.ba6f6df8b0f4192825fe.hot-update.js",
|
||||
@@ -222,5 +222,49 @@
|
||||
"/chunks/shared/files.dc7b5661aac044701faa.hot-update.js": "/chunks/shared/files.dc7b5661aac044701faa.hot-update.js",
|
||||
"/chunks/shared.100980c5861ee9688aaa.hot-update.js": "/chunks/shared.100980c5861ee9688aaa.hot-update.js",
|
||||
"/chunks/platform~chunks/shared.7fd73f76bf8aaf0abac7.hot-update.js": "/chunks/platform~chunks/shared.7fd73f76bf8aaf0abac7.hot-update.js",
|
||||
"/chunks/shared.d7f2955e5f1062528e8f.hot-update.js": "/chunks/shared.d7f2955e5f1062528e8f.hot-update.js"
|
||||
"/chunks/shared.d7f2955e5f1062528e8f.hot-update.js": "/chunks/shared.d7f2955e5f1062528e8f.hot-update.js",
|
||||
"/js/main.a4923da6606bb51219d8.hot-update.js": "/js/main.a4923da6606bb51219d8.hot-update.js",
|
||||
"/chunks/platform.a4923da6606bb51219d8.hot-update.js": "/chunks/platform.a4923da6606bb51219d8.hot-update.js",
|
||||
"/chunks/shared.a4923da6606bb51219d8.hot-update.js": "/chunks/shared.a4923da6606bb51219d8.hot-update.js",
|
||||
"/chunks/shared.f467f6e649a0ea935c58.hot-update.js": "/chunks/shared.f467f6e649a0ea935c58.hot-update.js",
|
||||
"/chunks/shared.1a63eb12b21bb1fffb36.hot-update.js": "/chunks/shared.1a63eb12b21bb1fffb36.hot-update.js",
|
||||
"/chunks/shared.f7568aec5a5a00173015.hot-update.js": "/chunks/shared.f7568aec5a5a00173015.hot-update.js",
|
||||
"/chunks/shared.3d147b1b50386afa86a3.hot-update.js": "/chunks/shared.3d147b1b50386afa86a3.hot-update.js",
|
||||
"/chunks/shared.10a8f3718f20202a812a.hot-update.js": "/chunks/shared.10a8f3718f20202a812a.hot-update.js",
|
||||
"/chunks/shared.1ba762ff46d8ee98f1ba.hot-update.js": "/chunks/shared.1ba762ff46d8ee98f1ba.hot-update.js",
|
||||
"/chunks/shared.afd64e21dfdc0036745a.hot-update.js": "/chunks/shared.afd64e21dfdc0036745a.hot-update.js",
|
||||
"/chunks/shared.6e0433098e85a5be79e0.hot-update.js": "/chunks/shared.6e0433098e85a5be79e0.hot-update.js",
|
||||
"/chunks/shared.5a1dff7a8cad91a9452c.hot-update.js": "/chunks/shared.5a1dff7a8cad91a9452c.hot-update.js",
|
||||
"/chunks/shared.e2ba8fc41665d73996ec.hot-update.js": "/chunks/shared.e2ba8fc41665d73996ec.hot-update.js",
|
||||
"/chunks/shared/files.73d46ab934a7f9b2c8af.hot-update.js": "/chunks/shared/files.73d46ab934a7f9b2c8af.hot-update.js",
|
||||
"/chunks/shared.985ae5c485c5718838fc.hot-update.js": "/chunks/shared.985ae5c485c5718838fc.hot-update.js",
|
||||
"/chunks/shared.2e1ba1da279170404976.hot-update.js": "/chunks/shared.2e1ba1da279170404976.hot-update.js",
|
||||
"/chunks/shared/files.8f380de1ace6e8241436.hot-update.js": "/chunks/shared/files.8f380de1ace6e8241436.hot-update.js",
|
||||
"/chunks/shared.d551d6f4e35e314cf28b.hot-update.js": "/chunks/shared.d551d6f4e35e314cf28b.hot-update.js",
|
||||
"/chunks/shared/files.30423a2d0e116093615a.hot-update.js": "/chunks/shared/files.30423a2d0e116093615a.hot-update.js",
|
||||
"/chunks/shared.43c62f0aacd60beb4d2e.hot-update.js": "/chunks/shared.43c62f0aacd60beb4d2e.hot-update.js",
|
||||
"/chunks/shared/files.584d25ca36678750849c.hot-update.js": "/chunks/shared/files.584d25ca36678750849c.hot-update.js",
|
||||
"/chunks/shared.1bac084a6757a2756344.hot-update.js": "/chunks/shared.1bac084a6757a2756344.hot-update.js",
|
||||
"/chunks/shared.fed913626ad345bb99ba.hot-update.js": "/chunks/shared.fed913626ad345bb99ba.hot-update.js",
|
||||
"/chunks/platform~chunks/shared.8f71340ad4e32650c89a.hot-update.js": "/chunks/platform~chunks/shared.8f71340ad4e32650c89a.hot-update.js",
|
||||
"/chunks/platform~chunks/shared.fccad62444cfc3048f3d.hot-update.js": "/chunks/platform~chunks/shared.fccad62444cfc3048f3d.hot-update.js",
|
||||
"/chunks/platform~chunks/shared.05a3de77a017f7ea8b05.hot-update.js": "/chunks/platform~chunks/shared.05a3de77a017f7ea8b05.hot-update.js",
|
||||
"/chunks/platform~chunks/shared.e8205b39b7bacf8d7191.hot-update.js": "/chunks/platform~chunks/shared.e8205b39b7bacf8d7191.hot-update.js",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/files~chunks/trash.074d9b0589692e9877ec.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/files~chunks/trash.074d9b0589692e9877ec.hot-update.js",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/files~chunks/trash.e845bef9c804764f375c.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/platform~chunks/recent-uploads~chunks/shared/files~chunks/trash.e845bef9c804764f375c.hot-update.js",
|
||||
"/chunks/shared/files.3e87a7998d3f156a9a92.hot-update.js": "/chunks/shared/files.3e87a7998d3f156a9a92.hot-update.js",
|
||||
"/chunks/shared/files.97694e08cc2b31f2db20.hot-update.js": "/chunks/shared/files.97694e08cc2b31f2db20.hot-update.js",
|
||||
"/chunks/shared/files.fdb20bfa14f2c6d485c7.hot-update.js": "/chunks/shared/files.fdb20bfa14f2c6d485c7.hot-update.js",
|
||||
"/chunks/shared/files.79cc13248ee889d69ae9.hot-update.js": "/chunks/shared/files.79cc13248ee889d69ae9.hot-update.js",
|
||||
"/chunks/shared/files.cad81ac4ac502de4bf83.hot-update.js": "/chunks/shared/files.cad81ac4ac502de4bf83.hot-update.js",
|
||||
"/chunks/shared/files.db4dbd2aa265f8c31c3a.hot-update.js": "/chunks/shared/files.db4dbd2aa265f8c31c3a.hot-update.js",
|
||||
"/chunks/shared/files.5b014308da4b24753737.hot-update.js": "/chunks/shared/files.5b014308da4b24753737.hot-update.js",
|
||||
"/chunks/shared/files.4cd42014ed5353365b91.hot-update.js": "/chunks/shared/files.4cd42014ed5353365b91.hot-update.js",
|
||||
"/chunks/shared/files.ff0183abac5675919a6f.hot-update.js": "/chunks/shared/files.ff0183abac5675919a6f.hot-update.js",
|
||||
"/chunks/shared/files.ad08de45754dcf2e6636.hot-update.js": "/chunks/shared/files.ad08de45754dcf2e6636.hot-update.js",
|
||||
"/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared/files~chunks/trash.9c1f5a1e2142e3917cc8.hot-update.js": "/chunks/files~chunks/my-shared-items~chunks/recent-uploads~chunks/shared/files~chunks/trash.9c1f5a1e2142e3917cc8.hot-update.js",
|
||||
"/chunks/shared/files.9c1f5a1e2142e3917cc8.hot-update.js": "/chunks/shared/files.9c1f5a1e2142e3917cc8.hot-update.js",
|
||||
"/chunks/shared.cde14eab29cace2a2532.hot-update.js": "/chunks/shared.cde14eab29cace2a2532.hot-update.js",
|
||||
"/chunks/shared.c56b0776a832cb5d3a20.hot-update.js": "/chunks/shared.c56b0776a832cb5d3a20.hot-update.js",
|
||||
"/chunks/shared.2d4c2d5eb7cd67286673.hot-update.js": "/chunks/shared.2d4c2d5eb7cd67286673.hot-update.js"
|
||||
}
|
||||
|
||||
@@ -125,6 +125,10 @@
|
||||
'clipboard',
|
||||
]),
|
||||
isLoadedFolder() {
|
||||
if (this.sharedDetail && this.sharedDetail.item_id === this.$route.params.id) {
|
||||
return false
|
||||
}
|
||||
|
||||
return this.$route.params.id
|
||||
},
|
||||
hasCapacity() {
|
||||
|
||||
@@ -220,12 +220,16 @@ export default {
|
||||
if (!this.mobileMultiSelect && this.$isMobile()) {
|
||||
|
||||
if (this.isFolder) {
|
||||
let route = this.$router.currentRoute.name
|
||||
|
||||
if (this.$isThisLocation('public')) {
|
||||
this.$store.dispatch('browseShared', [{folder: this.item, back: false, init: false}])
|
||||
} else {
|
||||
if (route === 'Public') {
|
||||
this.$router.push({name: 'Public', params: {token: this.$route.params.token, id: this.item.id}})
|
||||
} else if (route === 'Trash') {
|
||||
this.$router.push({name: 'Trash', params: {id: this.item.id}})
|
||||
} else if (route === 'Files') {
|
||||
this.$router.push({name: 'Files', params: {id: this.item.id}})
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
if (this.isImage || this.isVideo || this.isAudio || this.isPdf) {
|
||||
@@ -262,13 +266,9 @@ export default {
|
||||
|
||||
if (route === 'Public') {
|
||||
this.$router.push({name: 'Public', params: {token: this.$route.params.token, id: this.item.id}})
|
||||
}
|
||||
|
||||
if (route === 'Trash') {
|
||||
} else if (route === 'Trash') {
|
||||
this.$router.push({name: 'Trash', params: {id: this.item.id}})
|
||||
}
|
||||
|
||||
if (route === 'Files') {
|
||||
} else if (route === 'Files') {
|
||||
this.$router.push({name: 'Files', params: {id: this.item.id}})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,7 +90,11 @@
|
||||
},
|
||||
methods: {
|
||||
goToFolder() {
|
||||
if (this.$router.currentRoute.name === 'Public') {
|
||||
this.$router.push({name: 'Public', params: {id: this.nodes.id}})
|
||||
} else {
|
||||
this.$router.push({name: 'Files', params: {id: this.nodes.id}})
|
||||
}
|
||||
},
|
||||
dragFinish() {
|
||||
// Move no selected item
|
||||
|
||||
@@ -0,0 +1,179 @@
|
||||
<template>
|
||||
<ContentSidebar v-if="navigationTree && navigationTree.length >= 1">
|
||||
<!--Locations-->
|
||||
<ContentGroup :title="$t('sidebar.locations_title')">
|
||||
<div class="menu-list-wrapper vertical">
|
||||
<a class="menu-list-item link" @click="goHome">
|
||||
<div class="icon">
|
||||
<home-icon size="17"/>
|
||||
</div>
|
||||
<div class="label">
|
||||
{{ $t('sidebar.home') }}
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
</ContentGroup>
|
||||
|
||||
<!--Navigator-->
|
||||
<ContentGroup :title="$t('sidebar.navigator_title')" class="navigator">
|
||||
<TreeMenuNavigator class="folder-tree" :depth="0" :nodes="folder" v-for="folder in navigationTree" :key="folder.id" />
|
||||
</ContentGroup>
|
||||
</ContentSidebar>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {FolderIcon, HomeIcon, LinkIcon, Trash2Icon, UploadCloudIcon, UserCheckIcon, UsersIcon, XIcon} from "vue-feather-icons";
|
||||
import UpgradeSidebarBanner from '/resources/js/components/Others/UpgradeSidebarBanner'
|
||||
import TreeMenuNavigator from '/resources/js/components/Others/TreeMenuNavigator'
|
||||
import ContentSidebar from '/resources/js/components/Sidebar/ContentSidebar'
|
||||
import ContentGroup from '/resources/js/components/Sidebar/ContentGroup'
|
||||
import {events} from "../../bus";
|
||||
import {mapGetters} from "vuex";
|
||||
|
||||
export default {
|
||||
name: "NavigationSharePanel",
|
||||
components: {
|
||||
UpgradeSidebarBanner,
|
||||
TreeMenuNavigator,
|
||||
ContentSidebar,
|
||||
ContentGroup,
|
||||
UploadCloudIcon,
|
||||
UserCheckIcon,
|
||||
FolderIcon,
|
||||
Trash2Icon,
|
||||
UsersIcon,
|
||||
HomeIcon,
|
||||
LinkIcon,
|
||||
XIcon,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'sharedDetail',
|
||||
'navigation',
|
||||
'clipboard',
|
||||
'config',
|
||||
'user',
|
||||
]),
|
||||
favourites() {
|
||||
return this.user.data.relationships.favourites.data.attributes.folders
|
||||
},
|
||||
storage() {
|
||||
return this.$store.getters.user.data.attributes.storage
|
||||
},
|
||||
tree() {
|
||||
return this.user.data.attributes.folders
|
||||
},
|
||||
navigationTree() {
|
||||
return this.navigation ? this.navigation[0].folders : undefined
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
draggedItem: undefined,
|
||||
area: false,
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
goHome() {
|
||||
this.$router.replace({name: 'Public', params: {token: this.$route.params.token, id: this.sharedDetail.item_id}})
|
||||
},
|
||||
dragLeave() {
|
||||
this.area = false
|
||||
},
|
||||
dragEnter() {
|
||||
if (this.draggedItem && this.draggedItem.type !== 'folder') return
|
||||
|
||||
if (this.clipboard.length > 0 && this.clipboard.find(item => item.type !== 'folder')) return
|
||||
|
||||
this.area = true
|
||||
},
|
||||
dragFinish() {
|
||||
this.area = false
|
||||
|
||||
events.$emit('drop')
|
||||
|
||||
// Check if dragged item is folder
|
||||
if (this.draggedItem && this.draggedItem.type !== 'folder') return
|
||||
|
||||
// Check if folder exist in favourites
|
||||
if (this.favourites.find(folder => folder.id === this.draggedItem.id)) return
|
||||
|
||||
// Prevent to move folders to self
|
||||
if (this.clipboard.length > 0 && this.clipboard.find(item => item.type !== 'folder')) return
|
||||
|
||||
//Add to favourites non selected folder
|
||||
if (!this.clipboard.includes(this.draggedItem)) {
|
||||
this.$store.dispatch('addToFavourites', this.draggedItem)
|
||||
}
|
||||
|
||||
//Add to favourites selected folders
|
||||
if (this.clipboard.includes(this.draggedItem)) {
|
||||
this.$store.dispatch('addToFavourites', null)
|
||||
}
|
||||
},
|
||||
},
|
||||
created() {
|
||||
// Listen for dragstart folder items
|
||||
events.$on('dragstart', item => this.draggedItem = item)
|
||||
|
||||
// Get folder tree
|
||||
this.$store.dispatch('getFolderTree')
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
.empty-note {
|
||||
|
||||
&.navigator {
|
||||
padding: 5px 25px 10px;
|
||||
}
|
||||
|
||||
&.favourites {
|
||||
padding: 5px 23px 10px;
|
||||
}
|
||||
}
|
||||
|
||||
.navigator {
|
||||
width: 100%;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 1024px) {
|
||||
|
||||
.empty-note {
|
||||
|
||||
&.navigator {
|
||||
padding: 5px 20px 10px;
|
||||
}
|
||||
|
||||
&.favourites {
|
||||
padding: 5px 18px 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Transition
|
||||
.folder-item-move {
|
||||
transition: transform 300s ease;
|
||||
}
|
||||
|
||||
.folder-item-enter-active {
|
||||
transition: all 300ms ease;
|
||||
}
|
||||
|
||||
.folder-item-leave-active {
|
||||
transition: all 300ms;
|
||||
}
|
||||
|
||||
.folder-item-enter, .folder-item-leave-to /* .list-leave-active below version 2.1.8 */
|
||||
{
|
||||
opacity: 0;
|
||||
transform: translateX(30px);
|
||||
}
|
||||
|
||||
.folder-item-leave-active {
|
||||
position: absolute;
|
||||
}
|
||||
</style>
|
||||
@@ -1,25 +1,18 @@
|
||||
<template>
|
||||
<div>
|
||||
<ContextMenu>
|
||||
<template v-slot:empty-select>
|
||||
<template v-slot:empty-select v-if="$checkPermission('editor')">
|
||||
<OptionGroup>
|
||||
<Option @click.native="$createFolder" :title="$t('context_menu.create_folder')" icon="create-folder" />
|
||||
</OptionGroup>
|
||||
</template>
|
||||
|
||||
<template v-slot:single-select v-if="item">
|
||||
<OptionGroup v-if="isFolder">
|
||||
<Option @click.native="addToFavourites" :title="isInFavourites ? $t('context_menu.remove_from_favourites') : $t('context_menu.add_to_favourites')" icon="favourites" />
|
||||
</OptionGroup>
|
||||
<OptionGroup>
|
||||
<OptionGroup v-if="$checkPermission('editor')">
|
||||
<Option @click.native="$renameFileOrFolder(item)" :title="$t('context_menu.rename')" icon="rename" />
|
||||
<Option @click.native="$moveFileOrFolder(item)" :title="$t('context_menu.move')" icon="move-item" />
|
||||
<Option @click.native="$deleteFileOrFolder(item)" :title="$t('context_menu.delete')" icon="trash" />
|
||||
</OptionGroup>
|
||||
<OptionGroup>
|
||||
<Option @click.native="$shareFileOrFolder(item)" :title="item.shared ? $t('context_menu.share_edit') : $t('context_menu.share')" icon="share" />
|
||||
<Option @click.native="$updateTeamFolder(item)" v-if="isFolder" :title="$t('Convert as Team Folder')" icon="users" />
|
||||
</OptionGroup>
|
||||
<OptionGroup>
|
||||
<Option @click.native="$openInDetailPanel(item)" :title="$t('context_menu.detail')" icon="detail" />
|
||||
<Option @click.native="downloadItem" :title="$t('context_menu.download')" icon="download" />
|
||||
@@ -27,10 +20,7 @@
|
||||
</template>
|
||||
|
||||
<template v-slot:multiple-select v-if="item">
|
||||
<OptionGroup v-if="!hasFile">
|
||||
<Option @click.native="addToFavourites" :title="isInFavourites ? $t('context_menu.remove_from_favourites') : $t('context_menu.add_to_favourites')" icon="favourites" />
|
||||
</OptionGroup>
|
||||
<OptionGroup>
|
||||
<OptionGroup v-if="$checkPermission('editor')">
|
||||
<Option @click.native="$moveFileOrFolder(item)" :title="$t('context_menu.move')" icon="move-item" />
|
||||
<Option @click.native="$deleteFileOrFolder(item)" :title="$t('context_menu.delete')" icon="trash" />
|
||||
</OptionGroup>
|
||||
@@ -41,7 +31,7 @@
|
||||
</ContextMenu>
|
||||
|
||||
<MobileContextMenu>
|
||||
<template v-slot:editor v-if="$checkPermission('editor')">
|
||||
<template v-slot:editor>
|
||||
<OptionGroup>
|
||||
<Option v-if="item" @click.native="$renameFileOrFolder(item)" :title="$t('context_menu.rename')" icon="rename" />
|
||||
<Option v-if="item" @click.native="$moveFileOrFolder(item)" :title="$t('context_menu.move')" icon="move-item" />
|
||||
@@ -51,7 +41,7 @@
|
||||
<Option @click.native="downloadItem" :title="$t('context_menu.download')" icon="download" />
|
||||
</OptionGroup>
|
||||
</template>
|
||||
<template v-slot:visitor v-if="$checkPermission('visitor')">
|
||||
<template v-slot:visitor>
|
||||
<OptionGroup>
|
||||
<Option @click.native="downloadItem" :title="$t('context_menu.download')" icon="download" />
|
||||
</OptionGroup>
|
||||
@@ -59,13 +49,10 @@
|
||||
</MobileContextMenu>
|
||||
|
||||
<FileBrowser>
|
||||
<template v-if="$checkPermission('editor')" v-slot:file-actions-mobile>
|
||||
<template v-slot:file-actions-mobile v-if="$checkPermission('editor')">
|
||||
<MobileActionButton @click.native="$openSpotlight" icon="search">
|
||||
{{ $t('actions.search') }}
|
||||
</MobileActionButton>
|
||||
<MobileActionButton @click.native="$showLocations" icon="filter">
|
||||
{{ filterLocationTitle }}
|
||||
</MobileActionButton>
|
||||
<MobileActionButton @click.native="$createItems" icon="cloud-plus">
|
||||
{{ $t('mobile.create') }}
|
||||
</MobileActionButton>
|
||||
@@ -77,7 +64,7 @@
|
||||
</MobileActionButton>
|
||||
</template>
|
||||
|
||||
<template v-if="$checkPermission('visitor')" v-slot:file-actions-mobile>
|
||||
<template v-slot:file-actions-mobile v-if="$checkPermission('visitor')">
|
||||
<MobileActionButton @click.native="$openSpotlight" icon="search">
|
||||
{{ $t('actions.search')}}
|
||||
</MobileActionButton>
|
||||
@@ -89,17 +76,23 @@
|
||||
</MobileActionButton>
|
||||
</template>
|
||||
|
||||
<template v-slot:empty-file-page>
|
||||
<template v-slot:empty-file-page v-if="$checkPermission('editor')">
|
||||
<h1 class="title">
|
||||
{{ $t('empty_page.title') }}
|
||||
</h1>
|
||||
<p v-if="$checkPermission('editor')" class="description">
|
||||
<p class="description">
|
||||
{{ $t('empty_page.description') }}
|
||||
</p>
|
||||
<ButtonUpload v-if="$checkPermission('editor')" button-style="theme">
|
||||
<ButtonUpload button-style="theme">
|
||||
{{ $t('empty_page.call_to_action') }}
|
||||
</ButtonUpload>
|
||||
</template>
|
||||
|
||||
<template v-slot:empty-file-page v-if="$checkPermission('visitor')">
|
||||
<h1 class="title">
|
||||
{{ $t('empty_page.title') }}
|
||||
</h1>
|
||||
</template>
|
||||
</FileBrowser>
|
||||
|
||||
<MultiSelectToolbar>
|
||||
@@ -109,7 +102,7 @@
|
||||
|
||||
<template v-slot:editor>
|
||||
<ToolbarButton @click.native="$moveFileOrFolder(clipboard)" class="action-btn" source="move" :action="$t('actions.move')" :class="{'is-inactive' : clipboard.length < 1}" />
|
||||
<ToolbarButton @click.native="$deleteFileOrFolder(clipboard)" class="action-btn" source="trash" :class="{'is-inactive' : clipboard.length < 1}" :action="$t('actions.delete')" />
|
||||
<ToolbarButton @click.native="$deleteFileOrFolder(clipboard)" class="action-btn" source="trash" :class="{'is-inactive': clipboard.length < 1}" :action="$t('actions.delete')" />
|
||||
<ToolbarButton @click.native="downloadItem" class="action-btn" source="download" :action="$t('actions.download')" />
|
||||
</template>
|
||||
</MultiSelectToolbar>
|
||||
@@ -118,27 +111,24 @@
|
||||
|
||||
<script>
|
||||
import MultiSelectToolbar from "/resources/js/components/FilesView/MultiSelectToolbar"
|
||||
import ToolbarButton from '/resources/js/components/FilesView/ToolbarButton'
|
||||
|
||||
import MobileContextMenu from "/resources/js/components/FilesView/MobileContextMenu"
|
||||
import MobileActionButtonUpload from '/resources/js/components/FilesView/MobileActionButtonUpload'
|
||||
import MobileActionButton from '/resources/js/components/FilesView/MobileActionButton'
|
||||
import MobileContextMenu from "/resources/js/components/FilesView/MobileContextMenu"
|
||||
import ToolbarButton from '/resources/js/components/FilesView/ToolbarButton'
|
||||
import ButtonUpload from '/resources/js/components/FilesView/ButtonUpload'
|
||||
import FileBrowser from '/resources/js/components/FilesView/FileBrowser'
|
||||
import ContextMenu from '/resources/js/components/FilesView/ContextMenu'
|
||||
import OptionGroup from '/resources/js/components/FilesView/OptionGroup'
|
||||
import Option from '/resources/js/components/FilesView/Option'
|
||||
import {events} from "../../../bus"
|
||||
import { mapGetters } from 'vuex'
|
||||
import {events} from "../../../bus";
|
||||
|
||||
export default {
|
||||
name: 'Files',
|
||||
components: {
|
||||
MultiSelectToolbar,
|
||||
ToolbarButton,
|
||||
MobileActionButtonUpload,
|
||||
MobileActionButton,
|
||||
MultiSelectToolbar,
|
||||
MobileContextMenu,
|
||||
ToolbarButton,
|
||||
ButtonUpload,
|
||||
OptionGroup,
|
||||
FileBrowser,
|
||||
@@ -154,23 +144,8 @@
|
||||
isFolder() {
|
||||
return this.item && this.item.type === 'folder'
|
||||
},
|
||||
isInFavourites() {
|
||||
return this.favourites.find((el) => el.id === this.item.id)
|
||||
},
|
||||
hasFile() {
|
||||
return this.clipboard.find(item => item.type !== 'folder')
|
||||
},
|
||||
favourites() {
|
||||
return this.user.data.relationships.favourites.data.attributes.folders
|
||||
},
|
||||
filterLocationTitle() {
|
||||
return {
|
||||
'RecentUploads': this.$t('Recent'),
|
||||
'MySharedItems': this.$t('Shared'),
|
||||
'Trash': this.$t('Trash'),
|
||||
'Public': this.$t('Files'),
|
||||
'Files': this.$t('Files'),
|
||||
}[this.$route.name]
|
||||
}
|
||||
},
|
||||
data() {
|
||||
@@ -179,25 +154,6 @@
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
addToFavourites() {
|
||||
// Check if folder is in favourites and then add/remove from favourites
|
||||
if (
|
||||
this.favourites &&
|
||||
!this.favourites.find(el => el.id === this.item.id)
|
||||
) {
|
||||
// Add to favourite folder that is not selected
|
||||
if (!this.clipboard.includes(this.item)) {
|
||||
this.$store.dispatch('addToFavourites', this.item)
|
||||
}
|
||||
|
||||
// Add to favourites all selected folders
|
||||
if (this.clipboard.includes(this.item)) {
|
||||
this.$store.dispatch('addToFavourites', null)
|
||||
}
|
||||
} else {
|
||||
this.$store.dispatch('removeFromFavourites', this.item)
|
||||
}
|
||||
},
|
||||
downloadItem() {
|
||||
if (this.clipboard.length > 1 || (this.clipboard.length === 1 && this.clipboard[0].type === 'folder'))
|
||||
this.$store.dispatch('downloadZip')
|
||||
@@ -206,7 +162,7 @@
|
||||
}
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
created() {
|
||||
this.$store.dispatch('getSharedFolder', this.$route.params.id)
|
||||
|
||||
events.$on('context-menu:show', (event, item) => this.item = item)
|
||||
|
||||
@@ -26,6 +26,8 @@
|
||||
<DragUI />
|
||||
<Alert />
|
||||
|
||||
<NavigationSharePanel v-if="sharedDetail"/>
|
||||
|
||||
<div @contextmenu.prevent.capture="contextMenu($event, undefined)" id="file-view">
|
||||
<DesktopToolbar/>
|
||||
<router-view :key="$route.fullPath" />
|
||||
@@ -43,6 +45,7 @@
|
||||
import FilePreview from '/resources/js/components/FilePreview/FilePreview'
|
||||
import MoveItemPopup from '/resources/js/components/Others/MoveItemPopup'
|
||||
import DesktopToolbar from "../components/FilesView/DesktopToolbar"
|
||||
import NavigationSharePanel from "./FileView/NavigationSharePanel"
|
||||
import Spinner from '/resources/js/components/FilesView/Spinner'
|
||||
import Vignette from '/resources/js/components/Others/Vignette'
|
||||
import DragUI from '/resources/js/components/FilesView/DragUI'
|
||||
@@ -51,8 +54,9 @@
|
||||
import {mapGetters} from 'vuex'
|
||||
|
||||
export default {
|
||||
name: 'Platform',
|
||||
name: 'Shared',
|
||||
components: {
|
||||
NavigationSharePanel,
|
||||
MultiSelectToolbar,
|
||||
CreateFolderPopup,
|
||||
FileSortingMobile,
|
||||
@@ -69,8 +73,9 @@
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'config'
|
||||
]),
|
||||
'sharedDetail',
|
||||
'config',
|
||||
])
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
||||
@@ -1,108 +0,0 @@
|
||||
<template>
|
||||
<div @contextmenu.prevent.capture="contextMenu($event, undefined)" id="viewport">
|
||||
<ContentSidebar v-if="navigationTree && navigationTree.length >= 1">
|
||||
|
||||
<!--Locations-->
|
||||
<ContentGroup :title="$t('sidebar.locations_title')">
|
||||
<div class="menu-list-wrapper vertical">
|
||||
<a class="menu-list-item link" @click="goHome">
|
||||
<div class="icon">
|
||||
<home-icon size="17"/>
|
||||
</div>
|
||||
<div class="label">
|
||||
{{ $t('sidebar.home') }}
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
</ContentGroup>
|
||||
|
||||
<!--Navigator-->
|
||||
<ContentGroup :title="$t('sidebar.navigator_title')" class="navigator">
|
||||
<TreeMenuNavigator class="folder-tree" :depth="0" :nodes="folder" v-for="folder in navigationTree" :key="folder.id" />
|
||||
</ContentGroup>
|
||||
</ContentSidebar>
|
||||
|
||||
<div id="files-view">
|
||||
<ContextMenu />
|
||||
|
||||
<DesktopToolbar />
|
||||
|
||||
<FileBrowser />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TreeMenuNavigator from '/resources/js/components/Others/TreeMenuNavigator'
|
||||
import DesktopToolbar from '/resources/js/components/FilesView/DesktopToolbar'
|
||||
import ContentSidebar from '/resources/js/components/Sidebar/ContentSidebar'
|
||||
import ContentGroup from '/resources/js/components/Sidebar/ContentGroup'
|
||||
import ContextMenu from '/resources/js/components/FilesView/ContextMenu'
|
||||
import FileBrowser from '/resources/js/components/FilesView/FileBrowser'
|
||||
import {HomeIcon} from 'vue-feather-icons'
|
||||
import {mapGetters} from "vuex"
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'SharedFileBrowser',
|
||||
components: {
|
||||
TreeMenuNavigator,
|
||||
ContentSidebar,
|
||||
DesktopToolbar,
|
||||
ContentGroup,
|
||||
ContextMenu,
|
||||
FileBrowser,
|
||||
HomeIcon,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'sharedDetail',
|
||||
'navigation',
|
||||
'config',
|
||||
]),
|
||||
navigationTree() {
|
||||
return this.navigation ? this.navigation[0].folders : undefined
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
goHome() {
|
||||
this.$store.dispatch('browseShared')
|
||||
},
|
||||
contextMenu(event, item) {
|
||||
events.$emit('context-menu:show', event, item)
|
||||
},
|
||||
initFileBrowser() {
|
||||
// Get folder tree
|
||||
this.$store.dispatch('getFolderTree')
|
||||
|
||||
// Load folder
|
||||
this.goHome()
|
||||
},
|
||||
},
|
||||
created() {
|
||||
if (!this.sharedDetail) {
|
||||
this.$store.dispatch('getShareDetail', this.$route.params.token).then(() => {
|
||||
this.initFileBrowser()
|
||||
})
|
||||
} else {
|
||||
this.initFileBrowser()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
#files-view {
|
||||
font-family: 'Nunito', sans-serif;
|
||||
font-size: 16px;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: relative;
|
||||
min-width: 320px;
|
||||
overflow-x: hidden;
|
||||
padding-left: 15px;
|
||||
padding-right: 15px;
|
||||
overflow-y: hidden;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user