mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-06 02:33:48 +00:00
Merge remote-tracking branch 'origin/spotlight'
# Conflicts: # public/mix-manifest.json
This commit is contained in:
@@ -727,6 +727,7 @@ return [
|
||||
'dark_mode_toggle' => 'Toggle Dark Mode',
|
||||
'actions.convert_into_team_folder' => 'Convert into Team Folder',
|
||||
'actions.create' => 'Create Something',
|
||||
'actions.search' => 'Search',
|
||||
'mobile.create' => 'Create',
|
||||
],
|
||||
];
|
||||
|
||||
@@ -1,77 +1,126 @@
|
||||
{
|
||||
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~81c8aec0.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~81c8aec0.js?id=64f717578505436ae488",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js?id=32d8cee473f6642940d6",
|
||||
"/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js": "/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js?id=7beceb53c74df81af720",
|
||||
"/chunks/admin~chunks/platform~chunks/shared.js": "/chunks/admin~chunks/platform~chunks/shared.js?id=7023d3c8f54b1f6d1b0a",
|
||||
"/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.js": "/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.js?id=c24eaaa524ad495e68c4",
|
||||
"/chunks/files~chunks/shared/file-browser.js": "/chunks/files~chunks/shared/file-browser.js?id=a477c9e1bc09d796f451",
|
||||
"/chunks/not-found.js": "/chunks/not-found.js?id=3ee1d87443ce098fd254",
|
||||
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=dea1f07a6a8c697598df",
|
||||
"/vendors~chunks/platform~chunks/shared.js": "/vendors~chunks/platform~chunks/shared.js?id=bc26c252f2ba5f4d6360",
|
||||
"/js/main.js": "/js/main.js?id=0f3fba09a04eadc2ee69",
|
||||
"/css/app.css": "/css/app.css?id=fa3cd373a49197af626e",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=326ed30780c89d3b8b7f",
|
||||
"/chunks/admin-account.js": "/chunks/admin-account.js?id=259a4006b19767a6bce6",
|
||||
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=389afb114060d2a5849d",
|
||||
"/chunks/app-billings.js": "/chunks/app-billings.js?id=12990548dcf8451cfeaa",
|
||||
"/chunks/app-email.js": "/chunks/app-email.js?id=c1a205939e07bbd7216b",
|
||||
"/chunks/app-index.js": "/chunks/app-index.js?id=624041f9d9c45b0a50b9",
|
||||
"/chunks/app-language.js": "/chunks/app-language.js?id=5e047f0bc12258390280",
|
||||
"/chunks/app-others.js": "/chunks/app-others.js?id=51189092e1de9f182079",
|
||||
"/chunks/app-payments.js": "/chunks/app-payments.js?id=a44eacf5eed3da88b73c",
|
||||
"/chunks/app-settings.js": "/chunks/app-settings.js?id=ed6f7c2d7fd163a7bff6",
|
||||
"/chunks/app-setup.js": "/chunks/app-setup.js?id=e5b5c82f9b873c34d968",
|
||||
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=be11054d2fa2453a6a2b",
|
||||
"/chunks/contact-us.js": "/chunks/contact-us.js?id=7cf61cfdf42d7e6ee0cf",
|
||||
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=8503ce4b037e5d54f90c",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=106343a3bb5e83e6650d",
|
||||
"/chunks/database.js": "/chunks/database.js?id=cf64de45d0949f66a5dc",
|
||||
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=d9c0356096574b5ca1ae",
|
||||
"/chunks/email-verified.js": "/chunks/email-verified.js?id=983d21a098888f92441d",
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=6e02382ca9ac04846e55",
|
||||
"/chunks/files.js": "/chunks/files.js?id=ad250c38ecbb6a909933",
|
||||
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=04b155f73bede72e6f32",
|
||||
"/chunks/homepage.js": "/chunks/homepage.js?id=72facdc89bcaf0013f03",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=6705c0805b320726d38a",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=55e2aae2da3ba318587e",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=845e83791f9cf00052ec",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=e3fb14b25826c7705f0b",
|
||||
"/chunks/plan.js": "/chunks/plan.js?id=d646b52a67d79c463461",
|
||||
"/chunks/plan-create.js": "/chunks/plan-create.js?id=9b745bb6ef6e98d34ce2",
|
||||
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=16e01a55698cd592708a",
|
||||
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=4b54cef1e83731c7d73e",
|
||||
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=fb8f635d841ea5483462",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=a96d6d72b18371612ba9",
|
||||
"/chunks/platform.js": "/chunks/platform.js?id=cf2eb6a7c1ab1273afa7",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=b54eea886b53467df4ad",
|
||||
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=96ed28ebdec329e59159",
|
||||
"/chunks/settings.js": "/chunks/settings.js?id=7e46cad15d6cbe5ab400",
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=1c6aa5fcbb6ac1b7e7d8",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=f2da18a711d7a7fef743",
|
||||
"/chunks/settings-password.js": "/chunks/settings-password.js?id=1ebb69362381a21b1b94",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=997af6eb9ae27ba03bbb",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=bec527d403bee780ec9a",
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=1423cf38a52ce49c62ce",
|
||||
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=cf5250a97c1faeff5c66",
|
||||
"/chunks/shared.js": "/chunks/shared.js?id=a8b0481a39b07291e9e4",
|
||||
"/chunks/shared/authenticate.js": "/chunks/shared/authenticate.js?id=5e02e5861f87b4488fbf",
|
||||
"/chunks/shared/file-browser.js": "/chunks/shared/file-browser.js?id=72b0747c31534d3235e3",
|
||||
"/chunks/shared/single-file.js": "/chunks/shared/single-file.js?id=bcf6cb6e0660dc491e57",
|
||||
"/chunks/sign-in.js": "/chunks/sign-in.js?id=fb4adfc295bb60afb7d7",
|
||||
"/chunks/sign-up.js": "/chunks/sign-up.js?id=91c5c22c73fac333a97f",
|
||||
"/chunks/status-check.js": "/chunks/status-check.js?id=8fa7bc32b62bf17d1d67",
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=ac023f5bc67b84306b4b",
|
||||
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=792d3f01dd8ff366e154",
|
||||
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=8f1ac6bd453456de8026",
|
||||
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=7661cc55083126d2c45b",
|
||||
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=502ae0bc63e225f124e7",
|
||||
"/chunks/user.js": "/chunks/user.js?id=1e3f468498cbe50ca639",
|
||||
"/chunks/user-create.js": "/chunks/user-create.js?id=fe5edd454d34ac399299",
|
||||
"/chunks/user-delete.js": "/chunks/user-delete.js?id=6376a836a95c10a55dac",
|
||||
"/chunks/user-detail.js": "/chunks/user-detail.js?id=55b521a549db37881933",
|
||||
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=945eb13ff23590c859a4",
|
||||
"/chunks/user-password.js": "/chunks/user-password.js?id=e54ad2c95acfa33fe8e6",
|
||||
"/chunks/user-storage.js": "/chunks/user-storage.js?id=f7b40636bbafd5ecc1e5",
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=76ebee37168ab5d33859",
|
||||
"/chunks/users.js": "/chunks/users.js?id=b266b40624047d178dd1"
|
||||
"/js/main.js": "/js/main.js",
|
||||
"/css/app.css": "/css/app.css",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=a33d31a0a91bc6d3004f",
|
||||
"/chunks/admin-account.js": "/chunks/admin-account.js?id=56cc77f883fefc50bf1f",
|
||||
"/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~c7a13fb0.js": "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~c7a13fb0.js?id=91adf6625e49f0b93731",
|
||||
"/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~39825672.js": "/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~39825672.js?id=6c16b40191c43d6bd8ee",
|
||||
"/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~3e4fdd8b.js": "/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~3e4fdd8b.js?id=f580c1668c202a4542d2",
|
||||
"/chunks/admin~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js": "/chunks/admin~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js?id=2d893fdcf54f0c3577ff",
|
||||
"/chunks/admin~chunks/files~chunks/settings~chunks/shared/file-browser.js": "/chunks/admin~chunks/files~chunks/settings~chunks/shared/file-browser.js?id=6632ba96ef28b8ec0c98",
|
||||
"/chunks/admin~chunks/platform.js": "/chunks/admin~chunks/platform.js?id=6ecc8cc8a2134eb223b5",
|
||||
"/chunks/admin~chunks/platform~chunks/settings~chunks/shared.js": "/chunks/admin~chunks/platform~chunks/settings~chunks/shared.js?id=e976808d1195ec63d3c4",
|
||||
"/chunks/admin~chunks/platform~chunks/shared.js": "/chunks/admin~chunks/platform~chunks/shared.js?id=673ff118200894d37cd5",
|
||||
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=845c52bd8814c35b0c5d",
|
||||
"/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",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js?id=fd6936cca8f3b8b4de9a",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~b9e5655a.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~b9e5655a.js?id=23e7404558f1fca267cc",
|
||||
"/chunks/app-billings.js": "/chunks/app-billings.js?id=ec23ca301dc808c68057",
|
||||
"/chunks/app-email.js": "/chunks/app-email.js?id=988dd8fdd6310d6aca21",
|
||||
"/chunks/app-index.js": "/chunks/app-index.js?id=88ca1730dace87ed219c",
|
||||
"/chunks/app-language.js": "/chunks/app-language.js?id=10870457855898e3bc5f",
|
||||
"/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pag~824d674f.js": "/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pag~824d674f.js?id=202a18d809f2b528c866",
|
||||
"/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/pages~chunks/plans~chunks/p~98b23ba6.js": "/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/pages~chunks/plans~chunks/p~98b23ba6.js?id=9f9ebe286a608c25d8ab",
|
||||
"/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/pages~chunks/plans~chunks/s~0d12a0aa.js": "/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/pages~chunks/plans~chunks/s~0d12a0aa.js?id=94a3e04716b70d182885",
|
||||
"/chunks/app-others.js": "/chunks/app-others.js?id=a6fa4f59739a0b71ead0",
|
||||
"/chunks/app-payments.js": "/chunks/app-payments.js?id=376d60ec3c9e1d0279b7",
|
||||
"/chunks/app-settings.js": "/chunks/app-settings.js?id=10130ece72610f242434",
|
||||
"/chunks/app-setup.js": "/chunks/app-setup.js?id=9728ba68872751c06524",
|
||||
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=8f1f64cd67e8c46c65d1",
|
||||
"/chunks/contact-us.js": "/chunks/contact-us.js?id=122a566a9d1a4381d5d6",
|
||||
"/chunks/contact-us~chunks/dynamic-page~chunks/homepage.js": "/chunks/contact-us~chunks/dynamic-page~chunks/homepage.js?id=a964545445eef7615f9f",
|
||||
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=2338d4d370e7c259be4a",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=c5f1d6723d7a412a1b2a",
|
||||
"/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js": "/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js?id=6fdeb3af6356206511e5",
|
||||
"/chunks/database.js": "/chunks/database.js?id=61a257c132bda8564957",
|
||||
"/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=bd4e92ffbabf80186757",
|
||||
"/chunks/files.js": "/chunks/files.js?id=b7e2ed7375508a61be92",
|
||||
"/chunks/files~chunks/platform~chunks/shared/file-browser.js": "/chunks/files~chunks/platform~chunks/shared/file-browser.js?id=db2a624579a640445f78",
|
||||
"/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js": "/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js?id=7242f90e77f7484eb6d8",
|
||||
"/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js": "/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js?id=88923b168d8fbb48f8cb",
|
||||
"/chunks/files~chunks/settings-subscription~chunks/shared/file-browser~chunks/user-subscription.js": "/chunks/files~chunks/settings-subscription~chunks/shared/file-browser~chunks/user-subscription.js?id=c5ec9502bcfad35c502e",
|
||||
"/chunks/files~chunks/shared/file-browser.js": "/chunks/files~chunks/shared/file-browser.js?id=b73f850827d5bc1c37fa",
|
||||
"/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.js": "/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.js?id=405a76566fbfd86d809b",
|
||||
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=61fb98fd41324af9cfea",
|
||||
"/chunks/homepage.js": "/chunks/homepage.js?id=6f2aac612b4c6eaabf61",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=423f09d1096003656a6a",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=f0360ddfb0f1e1a9058b",
|
||||
"/chunks/not-found.js": "/chunks/not-found.js?id=8e5c99340188c2a7b215",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=46e715cd3ef98a5bad69",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=bfd9a2e2c52e60ed025e",
|
||||
"/chunks/plan.js": "/chunks/plan.js?id=464cf3c8bc0652d81260",
|
||||
"/chunks/plan-create.js": "/chunks/plan-create.js?id=748f541e9afbdf9fecee",
|
||||
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=8b33958ad548ee120a1e",
|
||||
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=0a58ac27794dcf7311d7",
|
||||
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=3eced87160eb30141bd1",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=5a3c28288952fcad96e5",
|
||||
"/chunks/platform.js": "/chunks/platform.js?id=5faa49d34eee3fabf09f",
|
||||
"/chunks/platform~chunks/shared.js": "/chunks/platform~chunks/shared.js?id=b47bdf397d1ae11f0019",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=05472829fff8f71027c4",
|
||||
"/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/settings.js": "/chunks/settings.js?id=f2af9119c66ca1d62040",
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=87ab46f8d15c37921b18",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=bdc59f72378026423747",
|
||||
"/chunks/settings-password.js": "/chunks/settings-password.js?id=adaa9eee5b9213ccab33",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=dec8ebea4e54c8cdb373",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=31581f755a45c24a8184",
|
||||
"/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=5cd19a2f00303f1937e7",
|
||||
"/chunks/shared/authenticate.js": "/chunks/shared/authenticate.js?id=30b0b0d1930a1952648a",
|
||||
"/chunks/shared/file-browser.js": "/chunks/shared/file-browser.js?id=cf5842c6856902e2aaf8",
|
||||
"/chunks/shared/single-file.js": "/chunks/shared/single-file.js?id=b733dc84cd8e05a8f6f3",
|
||||
"/chunks/sign-in.js": "/chunks/sign-in.js?id=d5eed76acdad4d2c0b9b",
|
||||
"/chunks/sign-up.js": "/chunks/sign-up.js?id=f092210474e42bfd4525",
|
||||
"/chunks/status-check.js": "/chunks/status-check.js?id=6c3ee0e065503d38d666",
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=3c4ba7a6ef3f306c4889",
|
||||
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=862f07c718d96decd67e",
|
||||
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=721e855dff920e5e6996",
|
||||
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=65c2ff19a6f06f4689f7",
|
||||
"/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=3320a77be717dba5e9e1",
|
||||
"/chunks/user.js": "/chunks/user.js?id=3bc9f72a474f639b72a6",
|
||||
"/chunks/user-create.js": "/chunks/user-create.js?id=cafcd17c942541acb0f3",
|
||||
"/chunks/user-delete.js": "/chunks/user-delete.js?id=fdfc78f04690b118c2cf",
|
||||
"/chunks/user-detail.js": "/chunks/user-detail.js?id=04e17412bd32bb66ed69",
|
||||
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=2546c88d5f0d3de87b5e",
|
||||
"/chunks/user-password.js": "/chunks/user-password.js?id=b5ad9850f815a7e9f133",
|
||||
"/chunks/user-storage.js": "/chunks/user-storage.js?id=fefc8c9c4f7b53963402",
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=05df25220335d40c6173",
|
||||
"/chunks/users.js": "/chunks/users.js?id=a81a3279b008ec766290",
|
||||
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~25aaad73.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~25aaad73.js?id=0de519ac9b2c2754e0c2",
|
||||
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~81c8aec0.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~81c8aec0.js?id=ca3b57f70682c1c315f7",
|
||||
"/vendors~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js": "/vendors~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js?id=9d10953d3b088324dfe3",
|
||||
"/vendors~chunks/platform~chunks/shared.js": "/vendors~chunks/platform~chunks/shared.js?id=7d09e0b0658e140a7ffa",
|
||||
"/chunks/platform.2876dd0b16f06f9eb245.hot-update.js": "/chunks/platform.2876dd0b16f06f9eb245.hot-update.js",
|
||||
"/chunks/platform.3db1089240b445e2b2eb.hot-update.js": "/chunks/platform.3db1089240b445e2b2eb.hot-update.js",
|
||||
"/chunks/platform.322f2878d92b428f906c.hot-update.js": "/chunks/platform.322f2878d92b428f906c.hot-update.js",
|
||||
"/chunks/platform.072214a197bbc34fecef.hot-update.js": "/chunks/platform.072214a197bbc34fecef.hot-update.js",
|
||||
"/chunks/platform.432a2467039af68343c1.hot-update.js": "/chunks/platform.432a2467039af68343c1.hot-update.js",
|
||||
"/chunks/platform.7c3acd6fc0076338a9c2.hot-update.js": "/chunks/platform.7c3acd6fc0076338a9c2.hot-update.js",
|
||||
"/chunks/platform.3f4884d1104ff61bce92.hot-update.js": "/chunks/platform.3f4884d1104ff61bce92.hot-update.js",
|
||||
"/chunks/files~chunks/platform~chunks/shared/file-browser.38377906eda346908b23.hot-update.js": "/chunks/files~chunks/platform~chunks/shared/file-browser.38377906eda346908b23.hot-update.js",
|
||||
"/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.38377906eda346908b23.hot-update.js": "/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.38377906eda346908b23.hot-update.js",
|
||||
"/chunks/platform~chunks/shared.38377906eda346908b23.hot-update.js": "/chunks/platform~chunks/shared.38377906eda346908b23.hot-update.js",
|
||||
"/chunks/platform.adabd0bb25da76a70280.hot-update.js": "/chunks/platform.adabd0bb25da76a70280.hot-update.js",
|
||||
"/chunks/platform.1e5b817d775fd62d35a5.hot-update.js": "/chunks/platform.1e5b817d775fd62d35a5.hot-update.js",
|
||||
"/chunks/platform.7c8d6221343c9c592877.hot-update.js": "/chunks/platform.7c8d6221343c9c592877.hot-update.js",
|
||||
"/chunks/platform.ae7dd0e062282c15636f.hot-update.js": "/chunks/platform.ae7dd0e062282c15636f.hot-update.js",
|
||||
"/chunks/platform.6a20e43857200d19c8bf.hot-update.js": "/chunks/platform.6a20e43857200d19c8bf.hot-update.js",
|
||||
"/chunks/platform.f9b7a014f86350df5d02.hot-update.js": "/chunks/platform.f9b7a014f86350df5d02.hot-update.js",
|
||||
"/chunks/platform.21cd38e96cfe72ff0019.hot-update.js": "/chunks/platform.21cd38e96cfe72ff0019.hot-update.js",
|
||||
"/chunks/platform.d714be181a9ac16984d8.hot-update.js": "/chunks/platform.d714be181a9ac16984d8.hot-update.js",
|
||||
"/chunks/platform.fdb1658815fcde74cc86.hot-update.js": "/chunks/platform.fdb1658815fcde74cc86.hot-update.js",
|
||||
"/chunks/platform.74022de667f7aff7c5e9.hot-update.js": "/chunks/platform.74022de667f7aff7c5e9.hot-update.js",
|
||||
"/chunks/platform.ae612ea31b48c49a12ac.hot-update.js": "/chunks/platform.ae612ea31b48c49a12ac.hot-update.js",
|
||||
"/chunks/platform.fa336d466cfc2e7283d2.hot-update.js": "/chunks/platform.fa336d466cfc2e7283d2.hot-update.js",
|
||||
"/chunks/platform.d2cff765a4e3b7c26afb.hot-update.js": "/chunks/platform.d2cff765a4e3b7c26afb.hot-update.js",
|
||||
"/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.184af13d3848a9e4e6c8.hot-update.js": "/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.184af13d3848a9e4e6c8.hot-update.js",
|
||||
"/chunks/platform.184af13d3848a9e4e6c8.hot-update.js": "/chunks/platform.184af13d3848a9e4e6c8.hot-update.js",
|
||||
"/chunks/platform~chunks/shared.184af13d3848a9e4e6c8.hot-update.js": "/chunks/platform~chunks/shared.184af13d3848a9e4e6c8.hot-update.js",
|
||||
"/chunks/files~chunks/platform~chunks/shared/file-browser.ee7e9e07663fd2314a2e.hot-update.js": "/chunks/files~chunks/platform~chunks/shared/file-browser.ee7e9e07663fd2314a2e.hot-update.js"
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
<!--UI components-->
|
||||
<Alert />
|
||||
<ToastrWrapper />
|
||||
<ToasterWrapper />
|
||||
<CookieDisclaimer />
|
||||
|
||||
<!--Show spinner before translations is loaded-->
|
||||
@@ -17,11 +17,11 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ToastrWrapper from '@/components/Others/Notifications/ToastrWrapper'
|
||||
import CookieDisclaimer from '@/components/Others/CookieDisclaimer'
|
||||
import Spinner from '@/components/FilesView/Spinner'
|
||||
import Vignette from '@/components/Others/Vignette'
|
||||
import Alert from '@/components/FilesView/Alert'
|
||||
import ToasterWrapper from '/resources/js/components/Others/Notifications/ToasterWrapper'
|
||||
import CookieDisclaimer from '/resources/js/components/Others/CookieDisclaimer'
|
||||
import Spinner from '/resources/js/components/FilesView/Spinner'
|
||||
import Vignette from '/resources/js/components/Others/Vignette'
|
||||
import Alert from '/resources/js/components/FilesView/Alert'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from './bus'
|
||||
|
||||
@@ -29,7 +29,7 @@ export default {
|
||||
name: 'app',
|
||||
components: {
|
||||
CookieDisclaimer,
|
||||
ToastrWrapper,
|
||||
ToasterWrapper,
|
||||
Vignette,
|
||||
Spinner,
|
||||
Alert
|
||||
@@ -115,8 +115,8 @@ export default {
|
||||
|
||||
<style lang="scss">
|
||||
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@200;300;400;600;700;800;900&display=swap');
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
[v-cloak],
|
||||
[v-cloak] > * {
|
||||
|
||||
@@ -44,11 +44,11 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import DatatableCellImage from '@/components/Others/Tables/DatatableCellImage'
|
||||
import DatatableWrapper from '@/components/Others/Tables/DatatableWrapper'
|
||||
import WidgetWrapper from '@/components/Admin/WidgetWrapper'
|
||||
import DatatableCellImage from '/resources/js/components/Others/Tables/DatatableCellImage'
|
||||
import DatatableWrapper from '/resources/js/components/Others/Tables/DatatableWrapper'
|
||||
import WidgetWrapper from '/resources/js/components/Admin/WidgetWrapper'
|
||||
import {Trash2Icon, Edit2Icon} from "vue-feather-icons"
|
||||
import ColorLabel from '@/components/Others/ColorLabel'
|
||||
import ColorLabel from '/resources/js/components/Others/ColorLabel'
|
||||
import axios from 'axios'
|
||||
|
||||
export default {
|
||||
@@ -110,8 +110,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.dark-mode {
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import WidgetWrapper from '@/components/Admin/WidgetWrapper'
|
||||
import WidgetWrapper from '/resources/js/components/Admin/WidgetWrapper'
|
||||
import { UsersIcon, StarIcon, HardDriveIcon, ChevronRightIcon } from 'vue-feather-icons'
|
||||
|
||||
export default {
|
||||
@@ -28,8 +28,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.widget-value {
|
||||
margin-top: 10px;
|
||||
|
||||
@@ -30,8 +30,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.widget-content {
|
||||
@include widget-card;
|
||||
|
||||
@@ -28,8 +28,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.button {
|
||||
cursor: pointer;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'PopoverItem',
|
||||
@@ -33,8 +33,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.popover-item {
|
||||
min-width: 250px;
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.toolbar-tools {
|
||||
text-align: right;
|
||||
|
||||
@@ -14,9 +14,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import FilePreviewToolbar from '@/components/FilesView/FilePreviewToolbar'
|
||||
import FilePreviewMedia from '@/components/FilesView/FilePreviewMedia'
|
||||
import {events} from '@/bus'
|
||||
import FilePreviewToolbar from '/resources/js/components/FilePreview/FilePreviewToolbar'
|
||||
import FilePreviewMedia from '/resources/js/components/FilePreview/FilePreviewMedia'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'FilePreview',
|
||||
@@ -32,6 +32,7 @@
|
||||
methods: {
|
||||
closeFilePreview() {
|
||||
this.isFullPreview = false
|
||||
this.$store.commit('FAST_PREVIEW_CLEAR')
|
||||
},
|
||||
next() {
|
||||
events.$emit('file-preview:next')
|
||||
@@ -46,18 +47,14 @@
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
events.$on('file-preview:show', () => {
|
||||
this.isFullPreview = true
|
||||
})
|
||||
events.$on('file-preview:hide', () => {
|
||||
this.isFullPreview = false
|
||||
})
|
||||
events.$on('file-preview:show', () => this.isFullPreview = true)
|
||||
events.$on('file-preview:hide', () => this.closeFilePreview())
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
|
||||
.file-preview {
|
||||
width: 100%;
|
||||
263
resources/js/components/FilePreview/FilePreviewMedia.vue
Normal file
263
resources/js/components/FilePreview/FilePreviewMedia.vue
Normal file
@@ -0,0 +1,263 @@
|
||||
<template>
|
||||
<div v-if="currentFile" class="file-preview-wrapper">
|
||||
|
||||
<!--Arrow navigation-->
|
||||
<div v-if="files.length > 1" class="navigation-arrows">
|
||||
<div @click.prevent="prev" class="prev">
|
||||
<chevron-left-icon size="17" />
|
||||
</div>
|
||||
|
||||
<div @click.prevent="next" class="next">
|
||||
<chevron-right-icon size="17" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--File preview-->
|
||||
<div class="file-wrapper-preview">
|
||||
|
||||
<!--Show PDF-->
|
||||
<PdfFile v-if="isPDF" :file="currentFile"/>
|
||||
|
||||
<!--Show Audio, Video and Image-->
|
||||
<div v-if="isAudio || isImage || isVideo" class="file-wrapper">
|
||||
<Audio v-if="isAudio" :file="currentFile"/>
|
||||
<Video v-if="isVideo" :file="currentFile"/>
|
||||
<ImageFile v-if="isImage" :file="currentFile"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {ChevronLeftIcon, ChevronRightIcon} from 'vue-feather-icons'
|
||||
import ToolbarButton from '/resources/js/components/FilesView/ToolbarButton'
|
||||
import ImageFile from '/resources/js/components/FilePreview/Media/ImageFile'
|
||||
import PdfFile from '/resources/js/components/FilePreview/Media/PdfFile'
|
||||
import Audio from '/resources/js/components/FilePreview/Media/Audio'
|
||||
import Video from '/resources/js/components/FilePreview/Media/Video'
|
||||
import Spinner from '/resources/js/components/FilesView/Spinner'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'FilePreviewMedia',
|
||||
components: {
|
||||
ChevronRightIcon,
|
||||
ChevronLeftIcon,
|
||||
ToolbarButton,
|
||||
ImageFile,
|
||||
PdfFile,
|
||||
Spinner,
|
||||
Audio,
|
||||
Video,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'fastPreview',
|
||||
'clipboard',
|
||||
'entries',
|
||||
]),
|
||||
currentFile() {
|
||||
return this.fastPreview
|
||||
? this.fastPreview
|
||||
: this.files[Math.abs(this.currentIndex) % this.files.length]
|
||||
},
|
||||
isPDF() {
|
||||
return this.currentFile.mimetype === 'pdf'
|
||||
},
|
||||
isVideo() {
|
||||
return this.currentFile.type === 'video'
|
||||
},
|
||||
isAudio() {
|
||||
return this.currentFile.type === 'audio'
|
||||
},
|
||||
isImage() {
|
||||
return this.currentFile.type === 'image'
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
currentIndex: 0,
|
||||
files: [],
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
files() {
|
||||
if (this.files.length === 0)
|
||||
events.$emit('file-preview-wrapper:hide')
|
||||
},
|
||||
currentFile() {
|
||||
if (this.clipboard[0]) {
|
||||
this.$store.commit('CLIPBOARD_CLEAR')
|
||||
this.$store.commit('ADD_ITEM_TO_CLIPBOARD', this.currentFile)
|
||||
}
|
||||
},
|
||||
clipboard() {
|
||||
if (!this.clipboard[0]) {
|
||||
this.currentIndex -= 1
|
||||
|
||||
this.$store.commit('ADD_ITEM_TO_CLIPBOARD', this.currentFile)
|
||||
|
||||
this.files = []
|
||||
}
|
||||
},
|
||||
data(newValue, oldValue) {
|
||||
if (newValue !== oldValue) {
|
||||
this.files = []
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
getFilesForView() {
|
||||
let requestedFile = this.clipboard[0]
|
||||
|
||||
this.entries.map(element => {
|
||||
|
||||
if (requestedFile.mimetype === 'pdf') {
|
||||
|
||||
if (element.mimetype === 'pdf')
|
||||
this.files.push(element)
|
||||
|
||||
} else {
|
||||
|
||||
if (element.type === requestedFile.type)
|
||||
this.files.push(element)
|
||||
}
|
||||
})
|
||||
|
||||
this.files.forEach((element, index) => {
|
||||
if (element.id === this.clipboard[0].id) {
|
||||
this.currentIndex = index
|
||||
}
|
||||
})
|
||||
},
|
||||
next() {
|
||||
if (!this.files.length > 1) return
|
||||
|
||||
this.currentIndex += 1
|
||||
|
||||
if (this.currentIndex > this.files.length - 1) {
|
||||
this.currentIndex = 0
|
||||
}
|
||||
},
|
||||
prev() {
|
||||
if (!this.files.length > 1) return
|
||||
|
||||
this.currentIndex -= 1
|
||||
|
||||
if (this.currentIndex < 0) {
|
||||
this.currentIndex = this.files.length - 1
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
events.$on('file-preview:next', () => this.next())
|
||||
events.$on('file-preview:prev', () => this.prev())
|
||||
|
||||
this.getFilesForView()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.navigation-arrows {
|
||||
|
||||
.prev, .next {
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
top: 45%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
color: $text;
|
||||
border-radius: 50%;
|
||||
text-decoration: none;
|
||||
user-select: none;
|
||||
filter: drop-shadow(0px 1px 0 rgba(255, 255, 255, 1));
|
||||
padding: 10px;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
.next {
|
||||
right: 0;
|
||||
}
|
||||
|
||||
.prev {
|
||||
left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.file-preview-wrapper {
|
||||
height: calc(100% - 72px);
|
||||
top: 72px;
|
||||
position: relative;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
.file-wrapper-preview {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 30px 0px;
|
||||
display: flex;
|
||||
overflow: hidden;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background-color: white;
|
||||
|
||||
.file-wrapper {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
.file-shadow {
|
||||
box-shadow: 0 8px 40px rgba(17, 26, 52, 0.05);
|
||||
}
|
||||
|
||||
.file {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
.audio {
|
||||
border-radius: 28px;
|
||||
}
|
||||
|
||||
img {
|
||||
border-radius: 4px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 960px) {
|
||||
|
||||
.file-preview-wrapper {
|
||||
top: 53px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.dark-mode {
|
||||
|
||||
.navigation-arrows {
|
||||
.prev, .next {
|
||||
color: $light-text;
|
||||
filter: drop-shadow(0px 1px 0 rgba(17, 19, 20, 1));
|
||||
}
|
||||
}
|
||||
|
||||
.file-wrapper-preview {
|
||||
background-color: $dark_mode_background;
|
||||
|
||||
.file-wrapper {
|
||||
.file-shadow {
|
||||
box-shadow: 0 8px 40px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,10 +1,10 @@
|
||||
<template>
|
||||
<div class="navigation-panel" v-if="clipboard[0]">
|
||||
<div class="navigation-panel" v-if="currentFile">
|
||||
<div class="name-wrapper">
|
||||
<x-icon @click="closeFullPreview" size="22" class="icon-close hover-text-theme" />
|
||||
<div class="name-count-wrapper">
|
||||
<p class="title">{{ clipboard[0].name }}</p>
|
||||
<span class="file-count"> ({{ showingImageIndex + ' ' + $t('pronouns.of') + ' ' + files.length }}) </span>
|
||||
<p class="title">{{ currentFile.name }}</p>
|
||||
<span v-if="! fastPreview" class="file-count"> ({{ showingImageIndex + ' ' + $t('pronouns.of') + ' ' + files.length }}) </span>
|
||||
</div>
|
||||
<PopoverWrapper>
|
||||
<span @click.stop="showItemContextMenu" id="fast-preview-menu" class="fast-menu-icon group">
|
||||
@@ -12,10 +12,10 @@
|
||||
</span>
|
||||
<PopoverItem name="file-preview-contextmenu" side="right">
|
||||
<OptionGroup class="menu-option-group">
|
||||
<Option @click.native="$renameFileOrFolder(clipboard[0])" :title="$t('context_menu.rename')" icon="rename" />
|
||||
<Option @click.native="$moveFileOrFolder(clipboard[0])" :title="$t('context_menu.move')" icon="move-item" />
|
||||
<Option @click.native="$shareFileOrFolder(clipboard[0])" :title="sharingTitle" icon="share" v-if="$checkPermission('master')" />
|
||||
<Option @click.native="$deleteFileOrFolder(clipboard[0])" :title="$t('context_menu.delete')" icon="trash" class="menu-option" />
|
||||
<Option @click.native="$renameFileOrFolder(currentFile)" :title="$t('context_menu.rename')" icon="rename" />
|
||||
<Option @click.native="$moveFileOrFolder(currentFile)" :title="$t('context_menu.move')" icon="move-item" />
|
||||
<Option @click.native="$shareFileOrFolder(currentFile)" :title="sharingTitle" icon="share" v-if="$checkPermission('master')" />
|
||||
<Option @click.native="$deleteFileOrFolder(currentFile)" :title="$t('context_menu.delete')" icon="trash" class="menu-option" />
|
||||
</OptionGroup>
|
||||
<OptionGroup>
|
||||
<Option @click.native="downloadItem" :title="$t('context_menu.download')" icon="download" />
|
||||
@@ -25,7 +25,7 @@
|
||||
</div>
|
||||
|
||||
<div class="created-at-wrapper">
|
||||
<p>{{ clipboard[0].filesize }}, {{ clipboard[0].created_at }}</p>
|
||||
<p>{{ currentFile.filesize }}, {{ currentFile.created_at }}</p>
|
||||
</div>
|
||||
|
||||
<div class="navigation-icons">
|
||||
@@ -35,7 +35,7 @@
|
||||
</div>
|
||||
<div class="navigation-tool-wrapper">
|
||||
<ToolbarButton @click.native="downloadItem" class="mobile-hide" source="download" :action="$t('actions.download')" />
|
||||
<ToolbarButton v-if="canShareItem" @click.native="$shareFileOrFolder(clipboard[0])" class="mobile-hide" :class="{ 'is-inactive': !canShareItem }" source="share" :action="$t('actions.share')" />
|
||||
<ToolbarButton v-if="canShareItem" @click.native="$shareFileOrFolder(currentFile)" class="mobile-hide" :class="{ 'is-inactive': !canShareItem }" source="share" :action="$t('actions.share')" />
|
||||
<ToolbarButton v-if="isImage" @click.native="printMethod()" source="print" :action="$t('actions.print')" />
|
||||
</div>
|
||||
</div>
|
||||
@@ -43,56 +43,60 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import PopoverWrapper from '@/components/Desktop/PopoverWrapper'
|
||||
import PopoverItem from '@/components/Desktop/PopoverItem'
|
||||
import OptionGroup from '@/components/FilesView/OptionGroup'
|
||||
import Option from '@/components/FilesView/Option'
|
||||
import PopoverWrapper from '/resources/js/components/Desktop/PopoverWrapper'
|
||||
import PopoverItem from '/resources/js/components/Desktop/PopoverItem'
|
||||
import OptionGroup from '/resources/js/components/FilesView/OptionGroup'
|
||||
import Option from '/resources/js/components/FilesView/Option'
|
||||
|
||||
import ToolbarButton from '@/components/FilesView/ToolbarButton'
|
||||
import ToolbarButton from '/resources/js/components/FilesView/ToolbarButton'
|
||||
import {XIcon, MoreHorizontalIcon} from 'vue-feather-icons'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'FilePreviewToolbar',
|
||||
components: {
|
||||
MoreHorizontalIcon,
|
||||
PopoverWrapper,
|
||||
ToolbarButton,
|
||||
PopoverItem,
|
||||
OptionGroup,
|
||||
Option,
|
||||
MoreHorizontalIcon,
|
||||
ToolbarButton,
|
||||
XIcon,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'fastPreview',
|
||||
'clipboard',
|
||||
'entries'
|
||||
]),
|
||||
currentFile() {
|
||||
return this.fastPreview ? this.fastPreview : this.clipboard[0]
|
||||
},
|
||||
sharingTitle() {
|
||||
return this.clipboard[0].shared
|
||||
return this.currentFile.shared
|
||||
? this.$t('context_menu.share_edit')
|
||||
: this.$t('context_menu.share')
|
||||
},
|
||||
isImage() {
|
||||
return this.clipboard[0].type === 'image'
|
||||
return this.currentFile.type === 'image'
|
||||
},
|
||||
isPdf() {
|
||||
return this.clipboard[0].mimetype === 'pdf'
|
||||
return this.currentFile.mimetype === 'pdf'
|
||||
},
|
||||
files() {
|
||||
let files = []
|
||||
|
||||
this.entries.map(element => {
|
||||
|
||||
if (this.clipboard[0].mimetype === 'pdf') {
|
||||
if (this.currentFile.mimetype === 'pdf') {
|
||||
|
||||
if (element.mimetype === 'pdf')
|
||||
files.push(element)
|
||||
|
||||
} else {
|
||||
|
||||
if (element.type === this.clipboard[0].type)
|
||||
if (element.type === this.currentFile.type)
|
||||
files.push(element)
|
||||
}
|
||||
})
|
||||
@@ -103,7 +107,7 @@
|
||||
let activeIndex = undefined
|
||||
|
||||
this.files.forEach((element, index) => {
|
||||
if (element.id === this.clipboard[0].id) {
|
||||
if (element.id === this.currentFile.id) {
|
||||
activeIndex = index + 1
|
||||
}
|
||||
})
|
||||
@@ -140,8 +144,8 @@
|
||||
},
|
||||
downloadItem() {
|
||||
this.$downloadFile(
|
||||
this.clipboard[0].file_url,
|
||||
this.clipboard[0].name + '.' + this.clipboard[0].mimetype
|
||||
this.currentFile.file_url,
|
||||
this.currentFile.name + '.' + this.currentFile.mimetype
|
||||
)
|
||||
},
|
||||
closeFullPreview() {
|
||||
@@ -152,8 +156,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.name-wrapper {
|
||||
width: 33%;
|
||||
17
resources/js/components/FilePreview/Media/Audio.vue
Normal file
17
resources/js/components/FilePreview/Media/Audio.vue
Normal file
@@ -0,0 +1,17 @@
|
||||
<template>
|
||||
<audio
|
||||
:class="{'file-shadow': ! $isMobile() }"
|
||||
class="file audio"
|
||||
:src="file.file_url"
|
||||
controls>
|
||||
</audio>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'Audio',
|
||||
props: [
|
||||
'file'
|
||||
],
|
||||
}
|
||||
</script>
|
||||
17
resources/js/components/FilePreview/Media/ImageFile.vue
Normal file
17
resources/js/components/FilePreview/Media/ImageFile.vue
Normal file
@@ -0,0 +1,17 @@
|
||||
<template>
|
||||
<img
|
||||
id="printable-file"
|
||||
class="file"
|
||||
:class="{'file-shadow': ! $isMobile() }"
|
||||
:src="file.file_url"
|
||||
/>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'ImageFile',
|
||||
props: [
|
||||
'file'
|
||||
],
|
||||
}
|
||||
</script>
|
||||
114
resources/js/components/FilePreview/Media/PdfFile.vue
Normal file
114
resources/js/components/FilePreview/Media/PdfFile.vue
Normal file
@@ -0,0 +1,114 @@
|
||||
<template>
|
||||
<div id="pdf-wrapper" :style="{width: documentSize + '%'}">
|
||||
<pdf :src="pdfData" v-for="i in numPages" :key="i" :resize="true" :page="i" scale="page-width" style="width:100%; margin:0 auto 35px;" id="printable-file" class="pdf-file">
|
||||
<template slot="loading">
|
||||
<h1>loading content...</h1>
|
||||
</template>
|
||||
</pdf>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {events} from '/resources/js/bus'
|
||||
import pdf from 'pdfvuer'
|
||||
|
||||
export default {
|
||||
name: 'PdfFile',
|
||||
components: {
|
||||
pdf,
|
||||
},
|
||||
props: [
|
||||
'file'
|
||||
],
|
||||
watch: {
|
||||
file() {
|
||||
this.getPdf()
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
pdfData: undefined,
|
||||
numPages: 0,
|
||||
documentSize: 50,
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getPdf() {
|
||||
this.pdfData = undefined
|
||||
this.numPages = 0
|
||||
|
||||
let self = this;
|
||||
|
||||
self.pdfData = pdf.createLoadingTask(this.file.file_url);
|
||||
|
||||
self.pdfData.then(pdf => self.numPages = pdf.numPages);
|
||||
},
|
||||
getDocumentSize() {
|
||||
if (window.innerWidth < 960) {
|
||||
this.documentSize = 100
|
||||
}
|
||||
|
||||
if (window.innerWidth > 960){
|
||||
this.documentSize = localStorage.getItem('documentSize')
|
||||
? parseInt(localStorage.getItem('documentSize'))
|
||||
: 50;
|
||||
}
|
||||
},
|
||||
zoomIn() {
|
||||
if (this.documentSize < 100) {
|
||||
this.documentSize += 10
|
||||
localStorage.setItem('documentSize', this.documentSize)
|
||||
}
|
||||
},
|
||||
zoomOut() {
|
||||
if (this.documentSize > 40) {
|
||||
this.documentSize -= 10
|
||||
localStorage.setItem('documentSize', this.documentSize)
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getDocumentSize()
|
||||
this.getPdf()
|
||||
|
||||
events.$on('document-zoom:in', () => this.zoomIn())
|
||||
events.$on('document-zoom:out', () => this.zoomOut())
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style src="pdfvuer/dist/pdfvuer.css" lang="css"></style>
|
||||
<style lang="scss" scoped>
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
|
||||
#pdf-wrapper {
|
||||
border-radius: 8px;
|
||||
overflow-y: scroll;
|
||||
margin: 0 auto;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 1;
|
||||
padding: 40px;
|
||||
|
||||
.pdf-file {
|
||||
box-shadow: $light_mode_popup_shadow;
|
||||
border-radius: 8px;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 960px) {
|
||||
#pdf-wrapper {
|
||||
border-radius: 0;
|
||||
padding: 0;
|
||||
|
||||
.pdf-file {
|
||||
box-shadow: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
60
resources/js/components/FilePreview/Media/Video.vue
Normal file
60
resources/js/components/FilePreview/Media/Video.vue
Normal file
@@ -0,0 +1,60 @@
|
||||
<template>
|
||||
<div class="video-wrapper">
|
||||
<video
|
||||
:src="file.file_url"
|
||||
class="video"
|
||||
:class="{'file-shadow': !$isMobile() }"
|
||||
controlsList="nodownload"
|
||||
disablePictureInPicture
|
||||
playsinline
|
||||
controls
|
||||
autoplay
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'Video',
|
||||
props: [
|
||||
'file'
|
||||
],
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
|
||||
.video-wrapper {
|
||||
max-width: 1080px;
|
||||
max-height: 100%;
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
& {
|
||||
max-width: 800px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1920px) and (max-width: 2560px) {
|
||||
& {
|
||||
max-width: 1080px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 2560px) and (max-width: 3840px) {
|
||||
& {
|
||||
max-width: 1440px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 3840px) {
|
||||
& {
|
||||
max-width: 2160px;
|
||||
}
|
||||
}
|
||||
|
||||
.video {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
align-self: center;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -23,8 +23,8 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ButtonBase from '@/components/FilesView/ButtonBase'
|
||||
import {events} from '@/bus'
|
||||
import ButtonBase from '/resources/js/components/FilesView/ButtonBase'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'AlertPopup',
|
||||
@@ -96,8 +96,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.popup {
|
||||
position: absolute;
|
||||
|
||||
@@ -22,8 +22,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.button-base {
|
||||
@include font-size(15);
|
||||
|
||||
@@ -31,8 +31,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.button-base {
|
||||
@include font-size(15);
|
||||
|
||||
@@ -15,7 +15,7 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
|
||||
.select-box {
|
||||
min-width: 20px;
|
||||
|
||||
@@ -157,10 +157,10 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import OptionGroup from '@/components/FilesView/OptionGroup'
|
||||
import Option from '@/components/FilesView/Option'
|
||||
import OptionGroup from '/resources/js/components/FilesView/OptionGroup'
|
||||
import Option from '/resources/js/components/FilesView/Option'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'ContextMenu',
|
||||
@@ -331,8 +331,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.no-options {
|
||||
/deep/ .text-label {
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import MenuMobileGroup from '@/components/Mobile/MenuMobileGroup'
|
||||
import OptionUpload from '@/components/FilesView/OptionUpload'
|
||||
import OptionGroup from '@/components/FilesView/OptionGroup'
|
||||
import MenuMobile from '@/components/Mobile/MenuMobile'
|
||||
import Option from '@/components/FilesView/Option'
|
||||
import MenuMobileGroup from '/resources/js/components/Mobile/MenuMobileGroup'
|
||||
import OptionUpload from '/resources/js/components/FilesView/OptionUpload'
|
||||
import OptionGroup from '/resources/js/components/FilesView/OptionGroup'
|
||||
import MenuMobile from '/resources/js/components/Mobile/MenuMobile'
|
||||
import Option from '/resources/js/components/FilesView/Option'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'FileMenuMobile',
|
||||
@@ -27,6 +27,24 @@ export default {
|
||||
MenuMobile,
|
||||
Option,
|
||||
},
|
||||
computed: {
|
||||
canUploadInView() {
|
||||
return !this.$isThisLocation(['base', 'public'])
|
||||
},
|
||||
hasCapacity() {
|
||||
// Check if storage limitation is set
|
||||
if (!this.$store.getters.config.storageLimit) return true
|
||||
|
||||
// Check if user is loaded
|
||||
if (!this.$store.getters.user) return true
|
||||
|
||||
// Check if user has storage
|
||||
return this.$store.getters.user.data.attributes.storage.used <= 100
|
||||
},
|
||||
canCreateFolderInView() {
|
||||
return !this.$isThisLocation(['base', 'public'])
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
createFolder() {
|
||||
events.$emit('popup:open', {name: 'create-folder'})
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
<!--Search bar-->
|
||||
<ToolbarGroup style="margin-left: 0">
|
||||
<SearchBar v-model="query" @reset-query="query = ''" :placeholder="$t('inputs.placeholder_search_files')" />
|
||||
<SearchBar />
|
||||
</ToolbarGroup>
|
||||
|
||||
<!--Creating controls-->
|
||||
@@ -64,20 +64,20 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import FileSortingOptions from '@/components/FilesView/FileSortingOptions'
|
||||
import FileSortingOptions from '/resources/js/components/FilesView/FileSortingOptions'
|
||||
import {ChevronLeftIcon, MoreHorizontalIcon} from 'vue-feather-icons'
|
||||
import UploadProgress from '@/components/FilesView/UploadProgress'
|
||||
import PopoverWrapper from '@/components/Desktop/PopoverWrapper'
|
||||
import ToolbarWrapper from '@/components/Desktop/ToolbarWrapper'
|
||||
import ToolbarButton from '@/components/FilesView/ToolbarButton'
|
||||
import OptionUpload from '@/components/FilesView/OptionUpload'
|
||||
import ToolbarGroup from '@/components/Desktop/ToolbarGroup'
|
||||
import OptionGroup from '@/components/FilesView/OptionGroup'
|
||||
import PopoverItem from '@/components/Desktop/PopoverItem'
|
||||
import SearchBar from '@/components/FilesView/SearchBar'
|
||||
import Option from '@/components/FilesView/Option'
|
||||
import UploadProgress from '/resources/js/components/FilesView/UploadProgress'
|
||||
import PopoverWrapper from '/resources/js/components/Desktop/PopoverWrapper'
|
||||
import ToolbarWrapper from '/resources/js/components/Desktop/ToolbarWrapper'
|
||||
import ToolbarButton from '/resources/js/components/FilesView/ToolbarButton'
|
||||
import OptionUpload from '/resources/js/components/FilesView/OptionUpload'
|
||||
import ToolbarGroup from '/resources/js/components/Desktop/ToolbarGroup'
|
||||
import OptionGroup from '/resources/js/components/FilesView/OptionGroup'
|
||||
import PopoverItem from '/resources/js/components/Desktop/PopoverItem'
|
||||
import SearchBar from '/resources/js/components/FilesView/SearchBar'
|
||||
import Option from '/resources/js/components/FilesView/Option'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
import {last} from 'lodash'
|
||||
|
||||
export default {
|
||||
@@ -169,16 +169,6 @@
|
||||
return this.$isThisLocation(locations) && this.clipboard.length === 1 && this.clipboard[0].type === 'folder'
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
query: '',
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
query(val) {
|
||||
this.$searchFiles(val)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
showCreateMenu() {
|
||||
events.$emit('popover:open', 'desktop-create')
|
||||
@@ -239,8 +229,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.is-inactive {
|
||||
opacity: 0.25;
|
||||
|
||||
@@ -9,9 +9,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TitlePreview from '@/components/FilesView/TitlePreview'
|
||||
import TitlePreview from '/resources/js/components/FilesView/TitlePreview'
|
||||
import { mapGetters } from 'vuex'
|
||||
import { events } from '@/bus'
|
||||
import { events } from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'DragUI',
|
||||
@@ -80,8 +80,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
#drag-ui {
|
||||
max-width: 300px;
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ButtonUpload from '@/components/FilesView/ButtonUpload'
|
||||
import Spinner from '@/components/FilesView/Spinner'
|
||||
import ButtonUpload from '/resources/js/components/FilesView/ButtonUpload'
|
||||
import Spinner from '/resources/js/components/FilesView/Spinner'
|
||||
import {mapGetters} from 'vuex'
|
||||
|
||||
export default {
|
||||
@@ -54,15 +54,15 @@
|
||||
'entries',
|
||||
]),
|
||||
isEmpty() {
|
||||
return this.entries && this.entries.length == 0
|
||||
return this.entries && this.entries.length === 0
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.empty-page {
|
||||
position: absolute;
|
||||
|
||||
@@ -20,8 +20,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.empty-message {
|
||||
text-align: center;
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
|
||||
<!--Base location-->
|
||||
<div v-if="$isThisLocation(['base']) && $checkPermission(['master', 'editor']) && ! isSelectMode" class="mobile-actions">
|
||||
<MobileActionButton @click.native="showLocations" icon="filter">
|
||||
<MobileActionButton @click.native="showSpotlight" 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>
|
||||
<!-- <MobileActionButtonUpload>
|
||||
{{ $t('context_menu.upload') }}
|
||||
</MobileActionButtonUpload>-->
|
||||
<MobileActionButton @click.native="enableMultiSelectMode" icon="check-square">
|
||||
{{ $t('context_menu.select') }}
|
||||
</MobileActionButton>
|
||||
@@ -22,6 +22,9 @@
|
||||
|
||||
<!--Base location editor-->
|
||||
<div v-if="$isThisLocation('public') && $checkPermission('editor') && ! isSelectMode" class="mobile-actions">
|
||||
<MobileActionButton @click.native="showSpotlight" icon="search">
|
||||
{{ $t('actions.search')}}
|
||||
</MobileActionButton>
|
||||
<MobileActionButton @click.native="createFolder" icon="folder-plus">
|
||||
{{ $t('context_menu.add_folder') }}
|
||||
</MobileActionButton>
|
||||
@@ -38,6 +41,9 @@
|
||||
|
||||
<!--Base location visitor-->
|
||||
<div v-if="$isThisLocation('public') && $checkPermission('visitor') && ! isSelectMode" class="mobile-actions">
|
||||
<MobileActionButton @click.native="showSpotlight" icon="search">
|
||||
{{ $t('actions.search')}}
|
||||
</MobileActionButton>
|
||||
<MobileActionButton @click.native="enableMultiSelectMode" icon="check-square">
|
||||
{{ $t('context_menu.select') }}
|
||||
</MobileActionButton>
|
||||
@@ -48,6 +54,9 @@
|
||||
|
||||
<!--Recent uploads location-->
|
||||
<div v-if="$isThisLocation('latest') && ! isSelectMode" class="mobile-actions">
|
||||
<MobileActionButton @click.native="showSpotlight" icon="search">
|
||||
{{ $t('actions.search')}}
|
||||
</MobileActionButton>
|
||||
<MobileActionButton @click.native="showLocations" icon="filter">
|
||||
{{ filterLocationTitle }}
|
||||
</MobileActionButton>
|
||||
@@ -64,6 +73,9 @@
|
||||
|
||||
<!--Trash location--->
|
||||
<div v-if="$isThisLocation(['trash', 'trash-root']) && ! isSelectMode" class="mobile-actions">
|
||||
<MobileActionButton @click.native="showSpotlight" icon="search">
|
||||
{{ $t('actions.search')}}
|
||||
</MobileActionButton>
|
||||
<MobileActionButton @click.native="showLocations" icon="filter">
|
||||
{{ filterLocationTitle }}
|
||||
</MobileActionButton>
|
||||
@@ -80,6 +92,9 @@
|
||||
|
||||
<!--Shared location--->
|
||||
<div v-if="$isThisLocation(['shared']) && ! isSelectMode" class="mobile-actions">
|
||||
<MobileActionButton @click.native="showSpotlight" icon="search">
|
||||
{{ $t('actions.search')}}
|
||||
</MobileActionButton>
|
||||
<MobileActionButton @click.native="showLocations" icon="filter">
|
||||
{{ filterLocationTitle }}
|
||||
</MobileActionButton>
|
||||
@@ -110,11 +125,11 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import MobileActionButtonUpload from '@/components/FilesView/MobileActionButtonUpload'
|
||||
import MobileActionButton from '@/components/FilesView/MobileActionButton'
|
||||
import UploadProgress from '@/components/FilesView/UploadProgress'
|
||||
import MobileActionButtonUpload from '/resources/js/components/FilesView/MobileActionButtonUpload'
|
||||
import MobileActionButton from '/resources/js/components/FilesView/MobileActionButton'
|
||||
import UploadProgress from '/resources/js/components/FilesView/UploadProgress'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
import store from "../../store";
|
||||
|
||||
export default {
|
||||
@@ -150,6 +165,9 @@
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
showSpotlight() {
|
||||
events.$emit('spotlight:show')
|
||||
},
|
||||
showLocations() {
|
||||
events.$emit('mobile-menu:show', 'file-filter')
|
||||
},
|
||||
@@ -183,8 +201,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.button-enter-active,
|
||||
.button-leave-active {
|
||||
|
||||
@@ -18,8 +18,6 @@
|
||||
>
|
||||
<MobileToolbar />
|
||||
|
||||
<SearchBar v-model="query" @reset-query="query = ''" class="mobile-search" :placeholder="$t('inputs.placeholder_search_files')" />
|
||||
|
||||
<!--Mobile Actions-->
|
||||
<FileActionsMobile />
|
||||
|
||||
@@ -66,14 +64,7 @@
|
||||
</div>
|
||||
|
||||
<!--Show empty page if folder is empty-->
|
||||
<EmptyFilePage v-if="! isSearching" />
|
||||
|
||||
<!--Show empty page if no search results-->
|
||||
<EmptyMessage
|
||||
v-if="isSearching && isEmpty"
|
||||
:message="$t('messages.nothing_was_found')"
|
||||
icon="eye-slash"
|
||||
/>
|
||||
<EmptyFilePage />
|
||||
</div>
|
||||
|
||||
<!--File Info Panel-->
|
||||
@@ -84,16 +75,15 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import FileActionsMobile from '@/components/FilesView/FileActionsMobile'
|
||||
import MobileToolbar from '@/components/FilesView/MobileToolbar'
|
||||
import EmptyFilePage from '@/components/FilesView/EmptyFilePage'
|
||||
import EmptyMessage from '@/components/FilesView/EmptyMessage'
|
||||
import FileItemList from '@/components/FilesView/FileItemList'
|
||||
import FileItemGrid from '@/components/FilesView/FileItemGrid'
|
||||
import InfoSidebar from '@/components/FilesView/InfoSidebar'
|
||||
import SearchBar from '@/components/FilesView/SearchBar'
|
||||
import FileActionsMobile from '/resources/js/components/FilesView/FileActionsMobile'
|
||||
import MobileToolbar from '/resources/js/components/FilesView/MobileToolbar'
|
||||
import EmptyFilePage from '/resources/js/components/FilesView/EmptyFilePage'
|
||||
import EmptyMessage from '/resources/js/components/FilesView/EmptyMessage'
|
||||
import FileItemList from '/resources/js/components/FilesView/FileItemList'
|
||||
import FileItemGrid from '/resources/js/components/FilesView/FileItemGrid'
|
||||
import InfoSidebar from '/resources/js/components/FilesView/InfoSidebar'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
import {debounce} from "lodash";
|
||||
|
||||
export default {
|
||||
@@ -106,7 +96,6 @@
|
||||
FileItemGrid,
|
||||
EmptyMessage,
|
||||
InfoSidebar,
|
||||
SearchBar,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
@@ -114,7 +103,6 @@
|
||||
'isVisibleSidebar',
|
||||
'FilePreviewType',
|
||||
'currentFolder',
|
||||
'isSearching',
|
||||
'clipboard',
|
||||
'isLoading',
|
||||
'entries'
|
||||
@@ -126,7 +114,7 @@
|
||||
return this.FilePreviewType === 'list'
|
||||
},
|
||||
isEmpty() {
|
||||
return this.entries.length == 0
|
||||
return this.entries.length === 0
|
||||
},
|
||||
draggedItems() {
|
||||
//Set opacity for dragged items
|
||||
@@ -258,8 +246,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.file-list {
|
||||
.dragged {
|
||||
|
||||
@@ -15,10 +15,10 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import MenuMobileGroup from '@/components/Mobile/MenuMobileGroup'
|
||||
import OptionGroup from '@/components/FilesView/OptionGroup'
|
||||
import MenuMobile from '@/components/Mobile/MenuMobile'
|
||||
import Option from '@/components/FilesView/Option'
|
||||
import MenuMobileGroup from '/resources/js/components/Mobile/MenuMobileGroup'
|
||||
import OptionGroup from '/resources/js/components/FilesView/OptionGroup'
|
||||
import MenuMobile from '/resources/js/components/Mobile/MenuMobile'
|
||||
import Option from '/resources/js/components/FilesView/Option'
|
||||
import {mapGetters} from 'vuex'
|
||||
|
||||
export default {
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="file-wrapper" @mouseup.stop="clickedItem" @dblclick="goToItem" spellcheck="false">
|
||||
<div :draggable="canDrag" @dragstart="$emit('dragstart')" @drop="
|
||||
drop()
|
||||
area = false" @dragleave="dragLeave" @dragover.prevent="dragEnter" class="file-item" :class="{'is-clicked' : isClicked , 'no-clicked' : !isClicked && this.$isMobile(), 'is-dragenter': area }">
|
||||
area = false" @dragleave="dragLeave" @dragover.prevent="dragEnter" class="file-item" :class="{'is-clicked' : isClicked , 'no-clicked' : !isClicked && $isMobile(), 'is-dragenter': area }">
|
||||
<!--Thumbnail for item-->
|
||||
<div class="icon-item">
|
||||
|
||||
@@ -62,11 +62,11 @@
|
||||
|
||||
<script>
|
||||
import {LinkIcon, UserPlusIcon, MoreHorizontalIcon} from 'vue-feather-icons'
|
||||
import FolderIcon from '@/components/FilesView/FolderIcon'
|
||||
import CheckBox from '@/components/FilesView/CheckBox'
|
||||
import FolderIcon from '/resources/js/components/FilesView/FolderIcon'
|
||||
import CheckBox from '/resources/js/components/FilesView/CheckBox'
|
||||
import {debounce} from 'lodash'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'FileItemGrid',
|
||||
@@ -302,8 +302,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.check-box {
|
||||
margin-right: 10px;
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
@drop="drop()"
|
||||
@dragleave="dragLeave"
|
||||
@dragover.prevent="dragEnter"
|
||||
class="file-item" :class="{'is-clicked' : isClicked , 'no-clicked' : !isClicked && this.$isMobile(), 'is-dragenter': area }"
|
||||
class="file-item" :class="{'is-clicked' : isClicked , 'no-clicked' : !isClicked && $isMobile(), 'is-dragenter': area }"
|
||||
>
|
||||
<!-- MultiSelecting for the mobile version -->
|
||||
<transition name="slide-from-left">
|
||||
@@ -69,16 +69,17 @@
|
||||
|
||||
<script>
|
||||
import {LinkIcon, UserPlusIcon, MoreVerticalIcon} from 'vue-feather-icons'
|
||||
import FolderIcon from '@/components/FilesView/FolderIcon'
|
||||
import CheckBox from '@/components/FilesView/CheckBox'
|
||||
import FolderIcon from '/resources/js/components/FilesView/FolderIcon'
|
||||
import CheckBox from '/resources/js/components/FilesView/CheckBox'
|
||||
import {debounce} from 'lodash'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'FileItemList',
|
||||
props: [
|
||||
'item'
|
||||
'item',
|
||||
'disableHighlight'
|
||||
],
|
||||
components: {
|
||||
MoreVerticalIcon,
|
||||
@@ -94,7 +95,7 @@ export default {
|
||||
'entries'
|
||||
]),
|
||||
isClicked() {
|
||||
return this.clipboard.some(element => element.id === this.item.id)
|
||||
return !this.disableHighlight && this.clipboard.some(element => element.id === this.item.id)
|
||||
},
|
||||
isFolder() {
|
||||
return this.item.type === 'folder'
|
||||
@@ -305,8 +306,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
|
||||
.slide-from-left-move {
|
||||
|
||||
@@ -72,13 +72,13 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import MenuMobileGroup from '@/components/Mobile/MenuMobileGroup'
|
||||
import MenuMobile from '@/components/Mobile/MenuMobile'
|
||||
import ThumbnailItem from '@/components/Others/ThumbnailItem'
|
||||
import OptionGroup from '@/components/FilesView/OptionGroup'
|
||||
import Option from '@/components/FilesView/Option'
|
||||
import MenuMobileGroup from '/resources/js/components/Mobile/MenuMobileGroup'
|
||||
import MenuMobile from '/resources/js/components/Mobile/MenuMobile'
|
||||
import ThumbnailItem from '/resources/js/components/Others/ThumbnailItem'
|
||||
import OptionGroup from '/resources/js/components/FilesView/OptionGroup'
|
||||
import Option from '/resources/js/components/FilesView/Option'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'FileMenuMobile',
|
||||
@@ -140,8 +140,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.item-thumbnail {
|
||||
padding: 20px 20px 10px;
|
||||
|
||||
@@ -1,399 +0,0 @@
|
||||
<template>
|
||||
<div class="media-full-preview" id="mediaPreview" v-if="clipboard[0]">
|
||||
|
||||
<!--Arrow navigation-->
|
||||
<div v-if="files.length > 1" class="navigation-arrows">
|
||||
<div @click.prevent="prev" class="prev">
|
||||
<chevron-left-icon size="17" />
|
||||
</div>
|
||||
|
||||
<div @click.prevent="next" class="next">
|
||||
<chevron-right-icon size="17" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--File preview-->
|
||||
<div class="file-wrapper-preview">
|
||||
|
||||
<!--Show PDF-->
|
||||
<div v-if="isPDF" id="pdf-wrapper" :style="{width: documentSize + '%'}">
|
||||
<pdf :src="pdfdata" v-for="i in numPages" :key="i" :resize="true" :page="i" scale="page-width" style="width:100%; margin:0 auto 35px;" id="printable-file" class="pdf-file">
|
||||
<template slot="loading">
|
||||
<h1>loading content...</h1>
|
||||
</template>
|
||||
</pdf>
|
||||
</div>
|
||||
|
||||
<!--Show Audio, Video and Image-->
|
||||
<div v-if="!isPDF" class="file-wrapper">
|
||||
|
||||
<audio
|
||||
v-if="isAudio"
|
||||
:class="{ 'file-shadow': !$isMobile() }"
|
||||
class="file audio"
|
||||
:src="currentFile.file_url"
|
||||
controls>
|
||||
</audio>
|
||||
|
||||
<img
|
||||
id="printable-file"
|
||||
v-if="isImage"
|
||||
class="file"
|
||||
:class="{'file-shadow': !$isMobile() }"
|
||||
:src="currentFile.file_url"
|
||||
/>
|
||||
|
||||
<div class="video-wrapper" v-if="isVideo">
|
||||
<video
|
||||
:src="currentFile.file_url"
|
||||
class="video"
|
||||
:class="{'file-shadow': !$isMobile() }"
|
||||
controlsList="nodownload"
|
||||
disablePictureInPicture
|
||||
playsinline
|
||||
controls
|
||||
autoplay
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {ChevronLeftIcon, ChevronRightIcon} from 'vue-feather-icons'
|
||||
import ToolbarButton from '@/components/FilesView/ToolbarButton'
|
||||
import Spinner from '@/components/FilesView/Spinner'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import pdf from 'pdfvuer'
|
||||
|
||||
export default {
|
||||
name: 'FilePreviewMedia',
|
||||
components: {
|
||||
ChevronRightIcon,
|
||||
ChevronLeftIcon,
|
||||
ToolbarButton,
|
||||
Spinner,
|
||||
pdf,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'clipboard',
|
||||
'entries',
|
||||
]),
|
||||
currentFile() {
|
||||
return this.files[Math.abs(this.currentIndex) % this.files.length]
|
||||
},
|
||||
isPDF() {
|
||||
return this.clipboard[0].mimetype === 'pdf'
|
||||
},
|
||||
isVideo() {
|
||||
return this.clipboard[0].type === 'video'
|
||||
},
|
||||
isAudio() {
|
||||
return this.clipboard[0].type === 'audio'
|
||||
},
|
||||
isImage() {
|
||||
return this.clipboard[0].type === 'image'
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
pdfdata: undefined,
|
||||
numPages: 0,
|
||||
currentIndex: 0,
|
||||
files: [],
|
||||
documentSize: 50,
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
files() {
|
||||
if (this.files.length === 0)
|
||||
events.$emit('file-preview:hide')
|
||||
},
|
||||
currentFile() {
|
||||
if (this.clipboard[0]) {
|
||||
this.$store.commit('CLIPBOARD_CLEAR')
|
||||
this.$store.commit('ADD_ITEM_TO_CLIPBOARD', this.currentFile)
|
||||
|
||||
// Init pdf instance
|
||||
if (this.clipboard[0].mimetype === 'pdf') {
|
||||
this.getPdf()
|
||||
}
|
||||
}
|
||||
},
|
||||
clipboard() {
|
||||
if (!this.clipboard[0]) {
|
||||
this.currentIndex -= 1
|
||||
|
||||
this.$store.commit('ADD_ITEM_TO_CLIPBOARD', this.currentFile)
|
||||
|
||||
this.files = []
|
||||
}
|
||||
},
|
||||
data(newValue, oldValue) {
|
||||
if (newValue !== oldValue) {
|
||||
this.files = []
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
next() {
|
||||
if (!this.files.length > 1) return
|
||||
|
||||
this.pdfdata = undefined
|
||||
|
||||
this.currentIndex += 1
|
||||
|
||||
if (this.currentIndex > this.files.length - 1) {
|
||||
this.currentIndex = 0
|
||||
}
|
||||
},
|
||||
prev() {
|
||||
if (!this.files.length > 1) return
|
||||
|
||||
this.pdfdata = undefined
|
||||
|
||||
this.currentIndex -= 1
|
||||
|
||||
if (this.currentIndex < 0) {
|
||||
this.currentIndex = this.files.length - 1
|
||||
}
|
||||
},
|
||||
getPdf() {
|
||||
this.pdfdata = undefined
|
||||
this.numPages = 0
|
||||
|
||||
let self = this;
|
||||
|
||||
self.pdfdata = pdf.createLoadingTask(this.currentFile.file_url);
|
||||
|
||||
self.pdfdata.then(pdf => self.numPages = pdf.numPages);
|
||||
},
|
||||
getFilesForView() {
|
||||
let requestedFile = this.clipboard[0]
|
||||
|
||||
this.entries.map(element => {
|
||||
|
||||
if (requestedFile.mimetype === 'pdf') {
|
||||
|
||||
if (element.mimetype === 'pdf')
|
||||
this.files.push(element)
|
||||
|
||||
} else {
|
||||
|
||||
if (element.type === requestedFile.type)
|
||||
this.files.push(element)
|
||||
}
|
||||
})
|
||||
|
||||
this.files.forEach((element, index) => {
|
||||
if (element.id === this.clipboard[0].id) {
|
||||
this.currentIndex = index
|
||||
}
|
||||
})
|
||||
},
|
||||
getDocumentSize() {
|
||||
|
||||
if (window.innerWidth < 960) {
|
||||
this.documentSize = 100
|
||||
}
|
||||
|
||||
if (window.innerWidth > 960){
|
||||
this.documentSize = localStorage.getItem('documentSize')
|
||||
? parseInt(localStorage.getItem('documentSize'))
|
||||
: 50;
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
||||
events.$on('file-preview:next', () => this.next())
|
||||
events.$on('file-preview:prev', () => this.prev())
|
||||
|
||||
events.$on('document-zoom:in', () => {
|
||||
if (this.documentSize < 100) {
|
||||
this.documentSize += 10
|
||||
localStorage.setItem('documentSize', this.documentSize)
|
||||
}
|
||||
})
|
||||
|
||||
events.$on('document-zoom:out', () => {
|
||||
if (this.documentSize > 40) {
|
||||
this.documentSize -= 10
|
||||
localStorage.setItem('documentSize', this.documentSize)
|
||||
}
|
||||
})
|
||||
|
||||
this.getDocumentSize()
|
||||
this.getFilesForView()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style src="pdfvuer/dist/pdfvuer.css" lang="css"></style>
|
||||
<style lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
|
||||
.navigation-arrows {
|
||||
|
||||
.prev, .next {
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
top: 45%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
color: $text;
|
||||
border-radius: 50%;
|
||||
text-decoration: none;
|
||||
user-select: none;
|
||||
filter: drop-shadow(0px 1px 0 rgba(255, 255, 255, 1));
|
||||
padding: 10px;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
.next {
|
||||
right: 0;
|
||||
}
|
||||
|
||||
.prev {
|
||||
left: 0;
|
||||
}
|
||||
}
|
||||
|
||||
#pdf-wrapper {
|
||||
border-radius: 8px;
|
||||
overflow-y: scroll;
|
||||
margin: 0 auto;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 1;
|
||||
padding: 40px;
|
||||
|
||||
.pdf-file {
|
||||
box-shadow: $light_mode_popup_shadow;
|
||||
border-radius: 8px;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
.media-full-preview {
|
||||
height: calc(100% - 72px);
|
||||
top: 72px;
|
||||
position: relative;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
.file-wrapper-preview {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 30px 0px;
|
||||
display: flex;
|
||||
overflow: hidden;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background-color: white;
|
||||
|
||||
.file-wrapper {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
.file-shadow {
|
||||
box-shadow: 0 8px 40px rgba(17, 26, 52, 0.05);
|
||||
}
|
||||
|
||||
.file {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
.audio {
|
||||
border-radius: 28px;
|
||||
}
|
||||
|
||||
img {
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.video-wrapper {
|
||||
max-width: 1080px;
|
||||
max-height: 100%;
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
& {
|
||||
max-width: 800px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1920px) and (max-width: 2560px) {
|
||||
& {
|
||||
max-width: 1080px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 2560px) and (max-width: 3840px) {
|
||||
& {
|
||||
max-width: 1440px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 3840px) {
|
||||
& {
|
||||
max-width: 2160px;
|
||||
}
|
||||
}
|
||||
|
||||
.video {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
align-self: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 960px) {
|
||||
|
||||
.media-full-preview {
|
||||
top: 53px;
|
||||
}
|
||||
|
||||
#pdf-wrapper {
|
||||
border-radius: 0;
|
||||
padding: 0;
|
||||
|
||||
.pdf-file {
|
||||
box-shadow: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.dark-mode {
|
||||
|
||||
.navigation-arrows {
|
||||
.prev, .next {
|
||||
color: $light-text;
|
||||
filter: drop-shadow(0px 1px 0 rgba(17, 19, 20, 1));
|
||||
}
|
||||
}
|
||||
|
||||
.file-wrapper-preview {
|
||||
background-color: $dark_mode_background;
|
||||
|
||||
.file-wrapper {
|
||||
.file-shadow {
|
||||
box-shadow: 0 8px 40px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -7,9 +7,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import FileSortingOptions from '@/components/FilesView/FileSortingOptions'
|
||||
import MenuMobileGroup from '@/components/Mobile/MenuMobileGroup'
|
||||
import MenuMobile from '@/components/Mobile/MenuMobile'
|
||||
import FileSortingOptions from '/resources/js/components/FilesView/FileSortingOptions'
|
||||
import MenuMobileGroup from '/resources/js/components/Mobile/MenuMobileGroup'
|
||||
import MenuMobile from '/resources/js/components/Mobile/MenuMobile'
|
||||
|
||||
export default {
|
||||
name: 'FilterSortingMobile',
|
||||
|
||||
@@ -13,8 +13,8 @@
|
||||
|
||||
<script>
|
||||
|
||||
import OptionGroup from '@/components/FilesView/OptionGroup'
|
||||
import Option from '@/components/FilesView/Option'
|
||||
import OptionGroup from '/resources/js/components/FilesView/OptionGroup'
|
||||
import Option from '/resources/js/components/FilesView/Option'
|
||||
import { ArrowUpIcon } from 'vue-feather-icons'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Emoji from '@/components/Others/Emoji'
|
||||
import Emoji from '/resources/js/components/Others/Emoji'
|
||||
|
||||
export default {
|
||||
name: 'FolderIcon',
|
||||
@@ -52,8 +52,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
// Locations
|
||||
.file-item-list {
|
||||
|
||||
@@ -108,8 +108,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.meta-data-list {
|
||||
list-style: none;
|
||||
|
||||
@@ -90,16 +90,16 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import FilePreviewDetail from '@/components/Others/FilePreviewDetail'
|
||||
import FilePreviewDetail from '/resources/js/components/Others/FilePreviewDetail'
|
||||
import {Edit2Icon, LockIcon, UnlockIcon} from 'vue-feather-icons'
|
||||
import ImageMetaData from '@/components/FilesView/ImageMetaData'
|
||||
import EmptyMessage from '@/components/FilesView/EmptyMessage'
|
||||
import TitlePreview from '@/components/FilesView/TitlePreview'
|
||||
import CopyShareLink from '@/components/Others/Forms/CopyShareLink'
|
||||
import ListInfoItem from '@/components/Others/ListInfoItem'
|
||||
import ListInfo from '@/components/Others/ListInfo'
|
||||
import ImageMetaData from '/resources/js/components/FilesView/ImageMetaData'
|
||||
import EmptyMessage from '/resources/js/components/FilesView/EmptyMessage'
|
||||
import TitlePreview from '/resources/js/components/FilesView/TitlePreview'
|
||||
import CopyShareLink from '/resources/js/components/Others/Forms/CopyShareLink'
|
||||
import ListInfoItem from '/resources/js/components/Others/ListInfoItem'
|
||||
import ListInfo from '/resources/js/components/Others/ListInfo'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from "@/bus"
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'InfoSidebar',
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<template>
|
||||
<button class="mobile-action-button">
|
||||
<div class="flex">
|
||||
<search-icon v-if="icon === 'search'" size="15" class="icon dark-text-theme" />
|
||||
<refresh-cw-icon v-if="icon === 'refresh'" size="15" class="icon dark-text-theme" />
|
||||
<download-icon v-if="icon === 'download'" size="15" class="icon dark-text-theme" />
|
||||
<copy-icon v-if="icon === 'copy'" size="15" class="icon dark-text-theme" />
|
||||
@@ -18,7 +19,7 @@
|
||||
<dollar-sign-icon v-if="icon === 'dollar-sign'" size="15" class="icon dark-text-theme" />
|
||||
<sorting-icon v-if="icon === 'preview-sorting'" class="icon dark-text-theme preview-sorting" />
|
||||
<cloud-plus-icon v-if="icon === 'cloud-plus'" class="icon dark-text-theme preview-sorting" />
|
||||
<span class="label">
|
||||
<span v-if="$slots.default" class="label">
|
||||
<slot></slot>
|
||||
</span>
|
||||
</div>
|
||||
@@ -26,9 +27,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { RefreshCwIcon, DownloadIcon, CopyIcon, FilterIcon, DollarSignIcon, CheckIcon, XSquareIcon, CheckSquareIcon, FolderPlusIcon, ListIcon, GridIcon, TrashIcon, UserPlusIcon, PlusIcon, CreditCardIcon } from 'vue-feather-icons'
|
||||
import CloudPlusIcon from '@/components/FilesView/Icons/CloudPlusIcon'
|
||||
import SortingIcon from '@/components/FilesView/Icons/SortingIcon'
|
||||
import { SearchIcon, RefreshCwIcon, DownloadIcon, CopyIcon, FilterIcon, DollarSignIcon, CheckIcon, XSquareIcon, CheckSquareIcon, FolderPlusIcon, ListIcon, GridIcon, TrashIcon, UserPlusIcon, PlusIcon, CreditCardIcon } from 'vue-feather-icons'
|
||||
import CloudPlusIcon from '/resources/js/components/FilesView/Icons/CloudPlusIcon'
|
||||
import SortingIcon from '/resources/js/components/FilesView/Icons/SortingIcon'
|
||||
|
||||
export default {
|
||||
name: 'MobileActionButton',
|
||||
@@ -47,6 +48,7 @@
|
||||
SortingIcon,
|
||||
XSquareIcon,
|
||||
FilterIcon,
|
||||
SearchIcon,
|
||||
CheckIcon,
|
||||
TrashIcon,
|
||||
PlusIcon,
|
||||
@@ -58,8 +60,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.mobile-action-button {
|
||||
background: $light_background;
|
||||
@@ -76,7 +78,6 @@
|
||||
}
|
||||
|
||||
.icon {
|
||||
margin-right: 10px;
|
||||
@include font-size(14);
|
||||
|
||||
path, line, polyline, rect, circle, polygon {
|
||||
@@ -89,7 +90,8 @@
|
||||
@include font-size(14);
|
||||
font-weight: 700;
|
||||
color: $text;
|
||||
}
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
&:active {
|
||||
@include transform(scale(0.95));
|
||||
|
||||
@@ -34,8 +34,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.mobile-action-button {
|
||||
background: $light_background;
|
||||
|
||||
@@ -2,14 +2,14 @@
|
||||
<div class="mobile-toolbar">
|
||||
|
||||
<!-- Go back-->
|
||||
<div @click="goBack" class="go-back-button" :class="{'is-visible': browseHistory.length > 1}">
|
||||
<chevron-left-icon size="17" class="icon-back" />
|
||||
</div>
|
||||
<div @click="goBack" class="go-back-button">
|
||||
<chevron-left-icon size="17" class="icon-back" :class="{'is-visible': browseHistory.length > 1}" />
|
||||
|
||||
<!--Folder Title-->
|
||||
<div class="directory-name">
|
||||
{{ directoryName }}
|
||||
</div>
|
||||
<!--Folder Title-->
|
||||
<div class="directory-name">
|
||||
{{ directoryName }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--More Actions-->
|
||||
<div class="more-actions-button">
|
||||
@@ -21,11 +21,11 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ToolbarButton from '@/components/FilesView/ToolbarButton'
|
||||
import SearchBar from '@/components/FilesView/SearchBar'
|
||||
import ToolbarButton from '/resources/js/components/FilesView/ToolbarButton'
|
||||
import SearchBar from '/resources/js/components/FilesView/SearchBar'
|
||||
import { MenuIcon, ChevronLeftIcon } from 'vue-feather-icons'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
import {last} from 'lodash'
|
||||
|
||||
export default {
|
||||
@@ -82,8 +82,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.mobile-toolbar {
|
||||
background: white;
|
||||
@@ -104,26 +104,25 @@
|
||||
.go-back-button {
|
||||
text-align: left;
|
||||
flex: 1;
|
||||
opacity: 0;
|
||||
visibility: hidden;
|
||||
pointer-events: none;
|
||||
|
||||
.icon-back {
|
||||
pointer-events: none;
|
||||
opacity: 0.15;
|
||||
vertical-align: middle;
|
||||
cursor: pointer;
|
||||
margin-top: -2px;
|
||||
}
|
||||
margin-right: 4px;
|
||||
|
||||
&.is-visible {
|
||||
pointer-events: initial;
|
||||
visibility: visible;
|
||||
opacity: 1;
|
||||
&.is-visible {
|
||||
pointer-events: initial;
|
||||
visibility: visible;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.directory-name {
|
||||
line-height: 1;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
vertical-align: middle;
|
||||
@include font-size(16);
|
||||
|
||||
@@ -15,9 +15,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ToolbarButton from '@/components/FilesView/ToolbarButton'
|
||||
import ToolbarButton from '/resources/js/components/FilesView/ToolbarButton'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'MultiSelectToolbarMobile',
|
||||
@@ -67,8 +67,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.multiselect-actions {
|
||||
display: flex;
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import AlphabetIcon from '@/components/FilesView/Icons/AlphabetIcon'
|
||||
import AlphabetIcon from '/resources/js/components/FilesView/Icons/AlphabetIcon'
|
||||
import {
|
||||
ArrowUpIcon,
|
||||
ArrowDownIcon,
|
||||
@@ -130,8 +130,8 @@ import {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.menu-option {
|
||||
white-space: nowrap;
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss" scoped>
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.menu-option-group {
|
||||
padding: 5px 0;
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
import {
|
||||
UploadCloudIcon,
|
||||
} from 'vue-feather-icons'
|
||||
@@ -41,8 +41,8 @@ import {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.menu-option {
|
||||
white-space: nowrap;
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Spinner from '@/components/FilesView/Spinner'
|
||||
import Spinner from '/resources/js/components/FilesView/Spinner'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
export default {
|
||||
@@ -32,8 +32,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.spinner-wrapper {
|
||||
padding-bottom: 90px;
|
||||
|
||||
@@ -12,8 +12,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.progress-bar {
|
||||
width: 100%;
|
||||
|
||||
@@ -1,144 +1,86 @@
|
||||
<template>
|
||||
<div class="search-bar">
|
||||
<div class="icon" v-if="!isQuery">
|
||||
<search-icon size="19" />
|
||||
</div>
|
||||
<div class="icon" v-if="isQuery" @click="resetQuery">
|
||||
<x-icon class="pointer" size="19" />
|
||||
</div>
|
||||
<input
|
||||
v-model="query"
|
||||
@input="$emit('input', query)"
|
||||
class="query focus-border-theme"
|
||||
type="text"
|
||||
:placeholder="placeholder"
|
||||
/>
|
||||
<div @click="showSpotlight" class="search-bar">
|
||||
<div class="message">
|
||||
<span>
|
||||
{{ $t('inputs.placeholder_search_files') }}
|
||||
</span>
|
||||
<span>
|
||||
{{ metaKeyIcon }}+K
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {SearchIcon, XIcon} from 'vue-feather-icons'
|
||||
import {events} from '@/bus'
|
||||
import {SearchIcon} from 'vue-feather-icons'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'DesktopSearchBar',
|
||||
props: [
|
||||
'placeholder'
|
||||
],
|
||||
name: 'SearchBar',
|
||||
components: {
|
||||
SearchIcon,
|
||||
XIcon,
|
||||
},
|
||||
computed: {
|
||||
isQuery() {
|
||||
return this.query !== '' && typeof this.query !== 'undefined'
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
query: ''
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
resetQuery() {
|
||||
this.query = ''
|
||||
this.$emit('reset-query')
|
||||
}
|
||||
},
|
||||
created() {
|
||||
events.$on('clear-query', () => this.query = undefined)
|
||||
}
|
||||
computed: {
|
||||
metaKeyIcon() {
|
||||
return this.$isApple() ? '⌘' : '⊞'
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
showSpotlight() {
|
||||
events.$emit('spotlight:show')
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.search-bar {
|
||||
position: relative;
|
||||
background: $light_background;
|
||||
border-radius: 8px;
|
||||
cursor: pointer;
|
||||
|
||||
input {
|
||||
background: transparent;
|
||||
.message {
|
||||
border-radius: 8px;
|
||||
outline: 0;
|
||||
padding: 9px 20px 9px 43px;
|
||||
font-weight: 400;
|
||||
@include font-size(16);
|
||||
padding: 11px 20px;
|
||||
min-width: 300px;
|
||||
transition: 0.15s all ease;
|
||||
border: 1px solid white;
|
||||
-webkit-appearance: none;
|
||||
text-align: left;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
&::placeholder {
|
||||
color: #B9B9B9;
|
||||
@include font-size(13);
|
||||
font-weight: 500;
|
||||
}
|
||||
}
|
||||
|
||||
.icon {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
padding: 11px 15px;
|
||||
|
||||
.pointer {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
circle, line {
|
||||
stroke: #B9B9B9;
|
||||
span {
|
||||
font-weight: 400;
|
||||
@include font-size(14);
|
||||
color: #B9B9B9;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 1024px) {
|
||||
|
||||
.search-bar input {
|
||||
.search-bar .message {
|
||||
max-width: 190px;
|
||||
padding-right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 690px) {
|
||||
|
||||
.search-bar {
|
||||
|
||||
input {
|
||||
min-width: initial;
|
||||
width: 100%;
|
||||
max-width: initial;
|
||||
padding: 9px 20px 9px 30px;
|
||||
|
||||
&:focus {
|
||||
border: 1px solid transparent;
|
||||
box-shadow: none;
|
||||
}
|
||||
}
|
||||
|
||||
.icon {
|
||||
padding: 11px 15px 11px 0;
|
||||
}
|
||||
}
|
||||
|
||||
.search-bar .message {
|
||||
min-width: initial;
|
||||
width: 100%;
|
||||
max-width: initial;
|
||||
}
|
||||
}
|
||||
|
||||
.dark-mode {
|
||||
.search-bar {
|
||||
input {
|
||||
border-color: transparent;
|
||||
color: $dark_mode_text_primary;
|
||||
background: $dark_mode_foreground;
|
||||
|
||||
&::placeholder {
|
||||
color: $dark_mode_text_secondary;
|
||||
}
|
||||
}
|
||||
|
||||
.icon svg path {
|
||||
fill: $dark_mode_text_secondary;
|
||||
.message span {
|
||||
color: $dark_mode_text_secondary;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
#loading-bar-spinner.spinner {
|
||||
left: 50%;
|
||||
|
||||
@@ -41,8 +41,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.wrapper {
|
||||
display: flex;
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import SortingIcon from '@/components/FilesView/Icons/SortingIcon'
|
||||
import CloudPlusIcon from '@/components/FilesView/Icons/CloudPlusIcon'
|
||||
import SortingIcon from '/resources/js/components/FilesView/Icons/SortingIcon'
|
||||
import CloudPlusIcon from '/resources/js/components/FilesView/Icons/CloudPlusIcon'
|
||||
import {
|
||||
UserPlusIcon,
|
||||
CornerDownRightIcon,
|
||||
@@ -70,8 +70,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.preview-sorting {
|
||||
transform: scale(1.3);
|
||||
|
||||
@@ -25,10 +25,10 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ProgressBar from '@/components/FilesView/ProgressBar'
|
||||
import ProgressBar from '/resources/js/components/FilesView/ProgressBar'
|
||||
import { RefreshCwIcon, XIcon } from 'vue-feather-icons'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'UploadProgress',
|
||||
@@ -55,8 +55,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.sync-alt {
|
||||
animation: spin 1s linear infinite;
|
||||
|
||||
@@ -15,9 +15,9 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_landing-page';
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_landing-page';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.page-title {
|
||||
position: relative;
|
||||
|
||||
@@ -49,8 +49,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.plans-wrapper {
|
||||
box-shadow: 0 7px 20px 5px hsla(220, 36%, 16%, 0.05);
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import PageTitle from '@/components/Index/Components/PageTitle'
|
||||
import PageTitle from '/resources/js/components/Index/Components/PageTitle'
|
||||
import {
|
||||
ChevronRightIcon,
|
||||
UploadCloudIcon,
|
||||
@@ -88,9 +88,9 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_landing-page';
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_landing-page';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.icons {
|
||||
|
||||
|
||||
@@ -57,9 +57,9 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_landing-page';
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_landing-page';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.icons {
|
||||
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
|
||||
<script>
|
||||
import { UserIcon, CloudIcon, HardDriveIcon } from 'vue-feather-icons'
|
||||
import PageTitle from '@/components/Index/Components/PageTitle'
|
||||
import PageTitle from '/resources/js/components/Index/Components/PageTitle'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
export default {
|
||||
@@ -69,9 +69,9 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_landing-page';
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_landing-page';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.features {
|
||||
padding-left: 75px;
|
||||
|
||||
@@ -55,9 +55,9 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_landing-page';
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_landing-page';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.main-navigation {
|
||||
justify-content: space-between;
|
||||
|
||||
@@ -39,9 +39,9 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_landing-page';
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_landing-page';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
footer {
|
||||
text-align: center;
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
|
||||
<script>
|
||||
import HardDriveIcon from "vue-feather-icons/icons/HardDriveIcon";
|
||||
import PageTitle from '@/components/Index/Components/PageTitle'
|
||||
import AuthButton from '@/components/Auth/AuthButton'
|
||||
import PageTitle from '/resources/js/components/Index/Components/PageTitle'
|
||||
import AuthButton from '/resources/js/components/Auth/AuthButton'
|
||||
import { CreditCardIcon } from 'vue-feather-icons'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
@@ -53,9 +53,9 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_landing-page';
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_landing-page';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.features {
|
||||
display: flex;
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import PricingTables from '@/components/Index/Components/PricingTables'
|
||||
import AuthButton from '@/components/Auth/AuthButton'
|
||||
import PricingTables from '/resources/js/components/Index/Components/PricingTables'
|
||||
import AuthButton from '/resources/js/components/Auth/AuthButton'
|
||||
import { CloudIcon } from 'vue-feather-icons'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
@@ -51,9 +51,9 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_landing-page';
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_landing-page';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.pricing {
|
||||
.cloud-bg {
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'MenuMobile',
|
||||
@@ -38,8 +38,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.options {
|
||||
position: absolute;
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.menu-options {
|
||||
margin-top: 10px;
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
import {
|
||||
ChevronLeftIcon,
|
||||
@@ -45,8 +45,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.mobile-header {
|
||||
padding: 10px 0;
|
||||
|
||||
@@ -22,8 +22,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.action-button {
|
||||
cursor: pointer;
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.color-label {
|
||||
text-transform: capitalize;
|
||||
|
||||
@@ -66,8 +66,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import '@assets/vuefilemanager/_forms';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_forms';
|
||||
|
||||
.color-pick-wrapper {
|
||||
.color-wrapper {
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import DesktopToolbar from '@/components/FilesView/DesktopToolbar'
|
||||
import FileBrowser from '@/components/FilesView/FileBrowser'
|
||||
import ContextMenu from '@/components/FilesView/ContextMenu'
|
||||
import {events} from '@/bus'
|
||||
import DesktopToolbar from '/resources/js/components/FilesView/DesktopToolbar'
|
||||
import FileBrowser from '/resources/js/components/FilesView/FileBrowser'
|
||||
import ContextMenu from '/resources/js/components/FilesView/ContextMenu'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'FilesView',
|
||||
|
||||
@@ -40,8 +40,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.cookie-wrapper {
|
||||
@include widget-card;
|
||||
|
||||
@@ -43,16 +43,16 @@
|
||||
|
||||
<script>
|
||||
import {ValidationProvider, ValidationObserver} from 'vee-validate/dist/vee-validate.full'
|
||||
import PopupWrapper from '@/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '@/components/Others/Popup/PopupActions'
|
||||
import PopupContent from '@/components/Others/Popup/PopupContent'
|
||||
import PopupHeader from '@/components/Others/Popup/PopupHeader'
|
||||
import ThumbnailItem from '@/components/Others/ThumbnailItem'
|
||||
import SetFolderIcon from '@/components/Others/SetFolderIcon'
|
||||
import ActionButton from '@/components/Others/ActionButton'
|
||||
import ButtonBase from '@/components/FilesView/ButtonBase'
|
||||
import PopupWrapper from '/resources/js/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '/resources/js/components/Others/Popup/PopupActions'
|
||||
import PopupContent from '/resources/js/components/Others/Popup/PopupContent'
|
||||
import PopupHeader from '/resources/js/components/Others/Popup/PopupHeader'
|
||||
import ThumbnailItem from '/resources/js/components/Others/ThumbnailItem'
|
||||
import SetFolderIcon from '/resources/js/components/Others/SetFolderIcon'
|
||||
import ActionButton from '/resources/js/components/Others/ActionButton'
|
||||
import ButtonBase from '/resources/js/components/FilesView/ButtonBase'
|
||||
import {required} from 'vee-validate/dist/rules'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'CreateFolderPopup',
|
||||
@@ -118,8 +118,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import '@assets/vuefilemanager/_forms';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_forms';
|
||||
|
||||
.item-thumbnail {
|
||||
margin-bottom: 20px;
|
||||
|
||||
@@ -48,14 +48,14 @@
|
||||
|
||||
<script>
|
||||
import {ValidationProvider, ValidationObserver} from 'vee-validate/dist/vee-validate.full'
|
||||
import PopupWrapper from '@/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '@/components/Others/Popup/PopupActions'
|
||||
import PopupContent from '@/components/Others/Popup/PopupContent'
|
||||
import PopupHeader from '@/components/Others/Popup/PopupHeader'
|
||||
import SelectInput from '@/components/Others/Forms/SelectInput'
|
||||
import ButtonBase from '@/components/FilesView/ButtonBase'
|
||||
import PopupWrapper from '/resources/js/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '/resources/js/components/Others/Popup/PopupActions'
|
||||
import PopupContent from '/resources/js/components/Others/Popup/PopupContent'
|
||||
import PopupHeader from '/resources/js/components/Others/Popup/PopupHeader'
|
||||
import SelectInput from '/resources/js/components/Others/Forms/SelectInput'
|
||||
import ButtonBase from '/resources/js/components/FilesView/ButtonBase'
|
||||
import {required} from 'vee-validate/dist/rules'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
import axios from 'axios'
|
||||
|
||||
export default {
|
||||
@@ -855,8 +855,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import '@assets/vuefilemanager/_forms';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_forms';
|
||||
|
||||
.item-thumbnail {
|
||||
margin-bottom: 20px;
|
||||
|
||||
@@ -58,15 +58,15 @@
|
||||
|
||||
<script>
|
||||
import {ValidationProvider, ValidationObserver} from 'vee-validate/dist/vee-validate.full'
|
||||
import PopupWrapper from '@/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '@/components/Others/Popup/PopupActions'
|
||||
import PopupContent from '@/components/Others/Popup/PopupContent'
|
||||
import PopupHeader from '@/components/Others/Popup/PopupHeader'
|
||||
import CopyInput from '@/components/Others/Forms/CopyInput'
|
||||
import ButtonBase from '@/components/FilesView/ButtonBase'
|
||||
import InfoBox from '@/components/Others/Forms/InfoBox'
|
||||
import PopupWrapper from '/resources/js/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '/resources/js/components/Others/Popup/PopupActions'
|
||||
import PopupContent from '/resources/js/components/Others/Popup/PopupContent'
|
||||
import PopupHeader from '/resources/js/components/Others/Popup/PopupHeader'
|
||||
import CopyInput from '/resources/js/components/Others/Forms/CopyInput'
|
||||
import ButtonBase from '/resources/js/components/FilesView/ButtonBase'
|
||||
import InfoBox from '/resources/js/components/Others/Forms/InfoBox'
|
||||
import {required} from 'vee-validate/dist/rules'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
import axios from 'axios'
|
||||
|
||||
export default {
|
||||
@@ -123,8 +123,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import '@assets/vuefilemanager/_forms';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_forms';
|
||||
|
||||
.dark-mode {
|
||||
|
||||
|
||||
@@ -29,8 +29,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import '@assets/vuefilemanager/_forms';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_forms';
|
||||
|
||||
.emoji-container {
|
||||
font-size: inherit;
|
||||
|
||||
@@ -76,11 +76,11 @@
|
||||
|
||||
<script>
|
||||
import {ChevronDownIcon, XIcon} from 'vue-feather-icons'
|
||||
import Spinner from '@/components/FilesView/Spinner'
|
||||
import Emoji from '@/components/Others/Emoji'
|
||||
import Spinner from '/resources/js/components/FilesView/Spinner'
|
||||
import Emoji from '/resources/js/components/Others/Emoji'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {groupBy} from 'lodash'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
|
||||
export default {
|
||||
@@ -207,8 +207,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import '@assets/vuefilemanager/_forms';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_forms';
|
||||
|
||||
.select-emoji-wrapper {
|
||||
margin-bottom: 20px;
|
||||
|
||||
@@ -30,8 +30,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.empty-page-content {
|
||||
width: 100%;
|
||||
|
||||
@@ -26,8 +26,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.preview {
|
||||
width: 100%;
|
||||
|
||||
@@ -55,10 +55,10 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import "@assets/vuefilemanager/_forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import "resources/sass/vuefilemanager/_forms.scss";
|
||||
|
||||
.multi-icon {
|
||||
display: flex;
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
<script>
|
||||
import { LinkIcon, CheckIcon, SendIcon } from 'vue-feather-icons'
|
||||
import { events } from '@/bus'
|
||||
import { events } from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'CopyShareLink',
|
||||
@@ -63,10 +63,10 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import "@assets/vuefilemanager/_forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import "resources/sass/vuefilemanager/_forms.scss";
|
||||
|
||||
.multi-icon {
|
||||
display: flex;
|
||||
|
||||
@@ -31,8 +31,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.form-label {
|
||||
display: flex;
|
||||
|
||||
@@ -85,8 +85,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.dropzone {
|
||||
border: 1px dashed #a1abc2;
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.info-box {
|
||||
padding: 20px;
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
<script>
|
||||
import { XIcon } from 'vue-feather-icons'
|
||||
import { events } from '@/bus'
|
||||
import { events } from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'MultiEmailInput',
|
||||
@@ -91,8 +91,8 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import '@assets/vuefilemanager/_forms';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_forms';
|
||||
|
||||
.wrapper {
|
||||
margin-bottom: 20px;
|
||||
|
||||
@@ -41,9 +41,9 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '@assets/vuefilemanager/_forms';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_forms';
|
||||
|
||||
.search-bar {
|
||||
padding: 7px 0px;
|
||||
|
||||
@@ -40,10 +40,10 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import "@assets/vuefilemanager/_inapp-forms.scss";
|
||||
@import "@assets/vuefilemanager/_forms.scss";
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
@import "resources/sass/vuefilemanager/_inapp-forms.scss";
|
||||
@import "resources/sass/vuefilemanager/_forms.scss";
|
||||
|
||||
.select-box {
|
||||
display: flex;
|
||||
|
||||
@@ -111,8 +111,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.select {
|
||||
position: relative;
|
||||
|
||||
@@ -14,8 +14,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.setup-box {
|
||||
padding: 20px;
|
||||
|
||||
@@ -39,8 +39,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.input-wrapper {
|
||||
display: flex;
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Spinner from '@/components/FilesView/Spinner'
|
||||
import Spinner from '/resources/js/components/FilesView/Spinner'
|
||||
|
||||
export default {
|
||||
name: 'PageTab',
|
||||
@@ -20,6 +20,6 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
</style>
|
||||
@@ -11,8 +11,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.page-tab-group {
|
||||
margin-bottom: 65px;
|
||||
|
||||
@@ -11,6 +11,6 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
</style>
|
||||
|
||||
@@ -14,8 +14,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.list-info-item {
|
||||
display: block;
|
||||
|
||||
@@ -52,11 +52,11 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import MenuMobileGroup from '@/components/Mobile/MenuMobileGroup'
|
||||
import OptionGroup from '@/components/FilesView/OptionGroup'
|
||||
import UserHeadline from '@/components/Sidebar/UserHeadline'
|
||||
import MenuMobile from '@/components/Mobile/MenuMobile'
|
||||
import Option from '@/components/FilesView/Option'
|
||||
import MenuMobileGroup from '/resources/js/components/Mobile/MenuMobileGroup'
|
||||
import OptionGroup from '/resources/js/components/FilesView/OptionGroup'
|
||||
import UserHeadline from '/resources/js/components/Sidebar/UserHeadline'
|
||||
import MenuMobile from '/resources/js/components/Mobile/MenuMobile'
|
||||
import Option from '/resources/js/components/FilesView/Option'
|
||||
import {ChevronLeftIcon} from 'vue-feather-icons'
|
||||
import {mapGetters} from 'vuex'
|
||||
|
||||
@@ -115,8 +115,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vuefilemanager/_variables";
|
||||
@import "@assets/vuefilemanager/_mixins";
|
||||
@import "resources/sass/vuefilemanager/_variables";
|
||||
@import "resources/sass/vuefilemanager/_mixins";
|
||||
|
||||
.user-info {
|
||||
padding: 20px 20px 10px;
|
||||
|
||||
@@ -41,18 +41,18 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import PopupWrapper from '@/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '@/components/Others/Popup/PopupActions'
|
||||
import TitlePreview from '@/components/FilesView/TitlePreview'
|
||||
import PopupContent from '@/components/Others/Popup/PopupContent'
|
||||
import PopupHeader from '@/components/Others/Popup/PopupHeader'
|
||||
import ThumbnailItem from '@/components/Others/ThumbnailItem'
|
||||
import ButtonBase from '@/components/FilesView/ButtonBase'
|
||||
import Spinner from '@/components/FilesView/Spinner'
|
||||
import TreeMenu from '@/components/Others/TreeMenu'
|
||||
import PopupWrapper from '/resources/js/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '/resources/js/components/Others/Popup/PopupActions'
|
||||
import TitlePreview from '/resources/js/components/FilesView/TitlePreview'
|
||||
import PopupContent from '/resources/js/components/Others/Popup/PopupContent'
|
||||
import PopupHeader from '/resources/js/components/Others/Popup/PopupHeader'
|
||||
import ThumbnailItem from '/resources/js/components/Others/ThumbnailItem'
|
||||
import ButtonBase from '/resources/js/components/FilesView/ButtonBase'
|
||||
import Spinner from '/resources/js/components/FilesView/Spinner'
|
||||
import TreeMenu from '/resources/js/components/Others/TreeMenu'
|
||||
import {isArray, isNull} from 'lodash'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from '@/bus'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'MoveItemPopup',
|
||||
@@ -158,8 +158,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.item-thumbnail {
|
||||
margin-bottom: 20px;
|
||||
|
||||
@@ -40,8 +40,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.fade-enter-active,
|
||||
.fade-leave-active {
|
||||
@@ -1,16 +1,16 @@
|
||||
<template>
|
||||
<div id="toastr-wrapper">
|
||||
<ToastrItem :item="item" v-for="(item, i) in notifications" :key="i"/>
|
||||
<ToasterItem :item="item" v-for="(item, i) in notifications" :key="i"/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ToastrItem from '@/components/Others/Notifications/ToastrItem'
|
||||
import {events} from "@/bus";
|
||||
import ToasterItem from '/resources/js/components/Others/Notifications/ToasterItem'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
ToastrItem,
|
||||
ToasterItem,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@@ -24,8 +24,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.toastr-list {
|
||||
transition: all 5s ease;
|
||||
@@ -24,8 +24,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.page-header {
|
||||
display: flex;
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ButtonBase from '@/components/FilesView/ButtonBase'
|
||||
import ButtonBase from '/resources/js/components/FilesView/ButtonBase'
|
||||
import {HardDriveIcon} from "vue-feather-icons"
|
||||
import { mapGetters } from 'vuex'
|
||||
import axios from 'axios'
|
||||
@@ -72,8 +72,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.plan {
|
||||
text-align: center;
|
||||
|
||||
@@ -27,11 +27,11 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import PopupWrapper from '@/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '@/components/Others/Popup/PopupActions'
|
||||
import PopupContent from '@/components/Others/Popup/PopupContent'
|
||||
import ButtonBase from '@/components/FilesView/ButtonBase'
|
||||
import {events} from '@/bus'
|
||||
import PopupWrapper from '/resources/js/components/Others/Popup/PopupWrapper'
|
||||
import PopupActions from '/resources/js/components/Others/Popup/PopupActions'
|
||||
import PopupContent from '/resources/js/components/Others/Popup/PopupContent'
|
||||
import ButtonBase from '/resources/js/components/FilesView/ButtonBase'
|
||||
import {events} from '/resources/js/bus'
|
||||
|
||||
export default {
|
||||
name: 'ConfirmPopup',
|
||||
@@ -83,8 +83,8 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.popup-image {
|
||||
padding-top: 20px;
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.actions {
|
||||
padding: 20px;
|
||||
|
||||
@@ -14,8 +14,8 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vuefilemanager/_variables';
|
||||
@import '@assets/vuefilemanager/_mixins';
|
||||
@import '/resources/sass/vuefilemanager/_variables';
|
||||
@import '/resources/sass/vuefilemanager/_mixins';
|
||||
|
||||
.popup-content {
|
||||
&.height-limited {
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user