mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-05-13 16:55:01 +00:00
Merge remote-tracking branch 'origin/upload-fix'
# Conflicts: # public/mix-manifest.json
This commit is contained in:
+140
-63
@@ -1,65 +1,142 @@
|
||||
{
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.js": "/chunks/files~chunks/shared-files~chunks/shared-page.js?id=3063523dc4a3aee7ac59",
|
||||
"/js/main.js": "/js/main.js?id=0229401b7e8985e5572a",
|
||||
"/css/app.css": "/css/app.css?id=dfd52fc997b919cd3686",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=7672646537b5813becf0",
|
||||
"/chunks/admin-account.js": "/chunks/admin-account.js?id=3f5a34aa8341af8d2b4c",
|
||||
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=9ec9a42482cb302a05f6",
|
||||
"/chunks/app-billings.js": "/chunks/app-billings.js?id=92903bd1d316b3db1dfa",
|
||||
"/chunks/app-email.js": "/chunks/app-email.js?id=9d646578982ba61813b6",
|
||||
"/chunks/app-index.js": "/chunks/app-index.js?id=4623bd961647897a5b81",
|
||||
"/chunks/app-others.js": "/chunks/app-others.js?id=b19a701cdfa06e4817ff",
|
||||
"/chunks/app-payments.js": "/chunks/app-payments.js?id=11c86d822269f1a1577e",
|
||||
"/chunks/app-settings.js": "/chunks/app-settings.js?id=6784314933372fb1adf0",
|
||||
"/chunks/app-setup.js": "/chunks/app-setup.js?id=d304bcf7d4157e81f3e2",
|
||||
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=b73a5b6f7d2a448cc5ab",
|
||||
"/chunks/contact-us.js": "/chunks/contact-us.js?id=81906d205ba0107c5105",
|
||||
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=004908727045abd0852e",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=cdfd468f0d0f98b9f081",
|
||||
"/chunks/database.js": "/chunks/database.js?id=b8d8269f77c52f78c784",
|
||||
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=2e3af103d13536c50757",
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=106f81cefe76c62d476e",
|
||||
"/chunks/files.js": "/chunks/files.js?id=b213d4fe15c2a9933f32",
|
||||
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=95ce5e5685dc9315f515",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=6db12008aa646ad5fb6f",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=83389adf0760820af6f5",
|
||||
"/chunks/landing-page.js": "/chunks/landing-page.js?id=546ed735edf0d80c8a7e",
|
||||
"/chunks/not-found-shared.js": "/chunks/not-found-shared.js?id=848666d6c49c613f7f99",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=bd41ae13951c2a5025c3",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=df7245abef9e3b77a218",
|
||||
"/chunks/plan.js": "/chunks/plan.js?id=cfd7b4ee7e21639a837d",
|
||||
"/chunks/plan-create.js": "/chunks/plan-create.js?id=9bb62af36193ee9648d3",
|
||||
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=7b7601f044e0ef47720b",
|
||||
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=8d3e75ff9adb22a25d57",
|
||||
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=3b4a29497fc878f503db",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=feb924949bffcdf3d9fb",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=f990697f8d4ff45df434",
|
||||
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=5d7406ecd84c676db8fb",
|
||||
"/chunks/settings.js": "/chunks/settings.js?id=d16d9e2cda6aa3a3f6dc",
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=b05e24dd8be60f62ee27",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=72d317b39264987e6ed0",
|
||||
"/chunks/settings-password.js": "/chunks/settings-password.js?id=014597c63c94d3ac9f60",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=2a0ea9cf661deba6fc13",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=b3f25de02dd4ef072df0",
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=aa3d963f578d7bc5ff88",
|
||||
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=47090233afc7b0cdf855",
|
||||
"/chunks/shared-files.js": "/chunks/shared-files.js?id=ba10fd3f52a7b62d3092",
|
||||
"/chunks/shared-page.js": "/chunks/shared-page.js?id=4489cb4cfa33fb249bea",
|
||||
"/chunks/sign-in.js": "/chunks/sign-in.js?id=c52ce81c3dad56d7a7d8",
|
||||
"/chunks/sign-up.js": "/chunks/sign-up.js?id=2f12850d320b2413cf54",
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=6622381f1d96e8319999",
|
||||
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=f1b093a3bcfebd5bc8a5",
|
||||
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=e0e2f821aac16b32da34",
|
||||
"/chunks/upgrade.js": "/chunks/upgrade.js?id=0c8d40bed72e86359529",
|
||||
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=a8db2246f9326e5c5957",
|
||||
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=f050f10627424b730dc2",
|
||||
"/chunks/user.js": "/chunks/user.js?id=6f2ab796211a3ac8670f",
|
||||
"/chunks/user-create.js": "/chunks/user-create.js?id=0d630acda4552c315417",
|
||||
"/chunks/user-delete.js": "/chunks/user-delete.js?id=db041eae3aef3e45197a",
|
||||
"/chunks/user-detail.js": "/chunks/user-detail.js?id=8cf2fe554e8d67ac8677",
|
||||
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=a0613909cb0c21817804",
|
||||
"/chunks/user-password.js": "/chunks/user-password.js?id=653bba3eb8d117c3a043",
|
||||
"/chunks/user-storage.js": "/chunks/user-storage.js?id=630b0ff649e16d3627af",
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=0b4226ba77f10b83de4a",
|
||||
"/chunks/users.js": "/chunks/users.js?id=04ca09662595fae56488"
|
||||
"/js/main.js": "/js/main.js",
|
||||
"/css/app.css": "/css/app.css",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=06067d0f4cff64abd1e4",
|
||||
"/chunks/admin-account.js": "/chunks/admin-account.js?id=fde37ee0820a1d2dc1f9",
|
||||
"/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~2d9ff916.js": "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~2d9ff916.js?id=1ad1b7b56512338223eb",
|
||||
"/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~01aef58e.js": "/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~01aef58e.js?id=6c02fe91a2e167b63a98",
|
||||
"/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/shared-page.js": "/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/shared-page.js?id=50155ecdafab2d18dda1",
|
||||
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=ba3c9a7acbaacc20af9e",
|
||||
"/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=fd3c7242b5c765b469e4",
|
||||
"/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=60421d0349712350e866",
|
||||
"/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=a8bd98f9f181d9ee68fd",
|
||||
"/chunks/app-billings.js": "/chunks/app-billings.js?id=97f5c44884d8c2128c56",
|
||||
"/chunks/app-email.js": "/chunks/app-email.js?id=59c27449f65145dc208e",
|
||||
"/chunks/app-index.js": "/chunks/app-index.js?id=4c5894cf174848d787bf",
|
||||
"/chunks/app-others.js": "/chunks/app-others.js?id=1655c151466b066ee1c5",
|
||||
"/chunks/app-payments.js": "/chunks/app-payments.js?id=cb8ea484a0e605ace175",
|
||||
"/chunks/app-settings.js": "/chunks/app-settings.js?id=e8ee87b4fb155d3edb6b",
|
||||
"/chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pages~chunks/plan~chunk~8a0e1d25.js": "/chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pages~chunks/plan~chunk~8a0e1d25.js?id=99eb5ed6af46738c97e0",
|
||||
"/chunks/app-setup.js": "/chunks/app-setup.js?id=777ebaef548d5b4c61be",
|
||||
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=0eec974c6f0ee4e6ecab",
|
||||
"/chunks/contact-us.js": "/chunks/contact-us.js?id=b243adc35233292f8ad6",
|
||||
"/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js": "/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js?id=96ac1ede73f3fc9afa37",
|
||||
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=00b75239db203720652c",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=887b8d232e3944beebdd",
|
||||
"/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=d7795f20187163939276",
|
||||
"/chunks/database.js": "/chunks/database.js?id=212e2d81f6f5c54c2dd2",
|
||||
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=1d8ee4bfbcde69c97021",
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=374911110bca4e1b3f91",
|
||||
"/chunks/files.js": "/chunks/files.js?id=d47d2964ef535ad5754c",
|
||||
"/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js": "/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js?id=e285e842f58178d681c4",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.js": "/chunks/files~chunks/shared-files~chunks/shared-page.js?id=cad83f4858c7bd58947f",
|
||||
"/chunks/files~chunks/shared-page.js": "/chunks/files~chunks/shared-page.js?id=539a5b88c5f32511449e",
|
||||
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=f430110273d76b28906f",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=94c75dac20c4ccf7bde0",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=02089f329654fbbc894d",
|
||||
"/chunks/landing-page.js": "/chunks/landing-page.js?id=06ced087cb7064a13979",
|
||||
"/chunks/not-found-shared.js": "/chunks/not-found-shared.js?id=6666b81edc5ff6f60e82",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=7e6363b9a35e62dd560c",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=ca712437ecc7e5aeee5c",
|
||||
"/chunks/plan.js": "/chunks/plan.js?id=cc041fb9c2cb9ad8f0ff",
|
||||
"/chunks/plan-create.js": "/chunks/plan-create.js?id=24bb1297c55fe70c1dd0",
|
||||
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=e06dc32848cf3bfb9e6b",
|
||||
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=242cb0706c986d08c484",
|
||||
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=36a86cf6f3d8a2868504",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=282268d939f8b52f6acd",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=060bceb3f703969fb135",
|
||||
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=a44394b1fa09f996a9fd",
|
||||
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=8c1d40ff91c04fcefcfc",
|
||||
"/chunks/settings.js": "/chunks/settings.js?id=463a3b35eb4020fdcc77",
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=4d1a070566ee2069e1bd",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=603b7f706f34d9c89a62",
|
||||
"/chunks/settings-password.js": "/chunks/settings-password.js?id=0df4bd46f1d3d90e360a",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=37955b9e8262af7fe525",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=013b6f15f907caaecd1e",
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=5d702de3662f601fccca",
|
||||
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=99b4f321902fe6b0eb23",
|
||||
"/chunks/shared-files.js": "/chunks/shared-files.js?id=1860b9031f41ed46d0e0",
|
||||
"/chunks/shared-page.js": "/chunks/shared-page.js?id=da4c97784a340b3080c9",
|
||||
"/chunks/sign-in.js": "/chunks/sign-in.js?id=6b961e6324b09384dfd0",
|
||||
"/chunks/sign-up.js": "/chunks/sign-up.js?id=a46f57a34f8f862a24a8",
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=080bade1ed512f512591",
|
||||
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=5b2f00a9e19520adc31e",
|
||||
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=1ac6b87f8797b491ef77",
|
||||
"/chunks/upgrade.js": "/chunks/upgrade.js?id=ac1ff92a934e448ca6b4",
|
||||
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=198bfc33644f85bfc075",
|
||||
"/chunks/upgrade-billing~chunks/upgrade-plan.js": "/chunks/upgrade-billing~chunks/upgrade-plan.js?id=7e805915ede7c330c6d1",
|
||||
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=2811533956c0c185714d",
|
||||
"/chunks/user.js": "/chunks/user.js?id=a400499012c6786a3652",
|
||||
"/chunks/user-create.js": "/chunks/user-create.js?id=d5066d3ff9d7625ba7f1",
|
||||
"/chunks/user-delete.js": "/chunks/user-delete.js?id=5d392a3df7b05cf93930",
|
||||
"/chunks/user-detail.js": "/chunks/user-detail.js?id=fbfe45c7762f7ae123e4",
|
||||
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=97c78350b65914e4b16d",
|
||||
"/chunks/user-password.js": "/chunks/user-password.js?id=ad772e769a8562c42c17",
|
||||
"/chunks/user-storage.js": "/chunks/user-storage.js?id=2c5f4cdd17574255ea05",
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=d6683735de17fd8c55c8",
|
||||
"/chunks/users.js": "/chunks/users.js?id=f2359ae7c0c166001c33",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.0458929e5f56e46ba6bc.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.0458929e5f56e46ba6bc.hot-update.js",
|
||||
"/js/main.0ab3c15907f3ceb1f58a.hot-update.js": "/js/main.0ab3c15907f3ceb1f58a.hot-update.js",
|
||||
"/js/main.39fe4c147a896dd94f73.hot-update.js": "/js/main.39fe4c147a896dd94f73.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.39fe4c147a896dd94f73.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.39fe4c147a896dd94f73.hot-update.js",
|
||||
"/js/main.72d4b6097ba1aee7702f.hot-update.js": "/js/main.72d4b6097ba1aee7702f.hot-update.js",
|
||||
"/js/main.8bc79cfa0e1b127c70b4.hot-update.js": "/js/main.8bc79cfa0e1b127c70b4.hot-update.js",
|
||||
"/js/main.86e6e147e6815c6341f4.hot-update.js": "/js/main.86e6e147e6815c6341f4.hot-update.js",
|
||||
"/js/main.9917c2781cf90a643c0c.hot-update.js": "/js/main.9917c2781cf90a643c0c.hot-update.js",
|
||||
"/js/main.e54790c6be90d0da82ab.hot-update.js": "/js/main.e54790c6be90d0da82ab.hot-update.js",
|
||||
"/js/main.177bef9fd128d7904d4c.hot-update.js": "/js/main.177bef9fd128d7904d4c.hot-update.js",
|
||||
"/js/main.39f1391d6c7bc8753b61.hot-update.js": "/js/main.39f1391d6c7bc8753b61.hot-update.js",
|
||||
"/js/main.a474d1267263c391f11c.hot-update.js": "/js/main.a474d1267263c391f11c.hot-update.js",
|
||||
"/js/main.5992ebc1ccca9dcd2515.hot-update.js": "/js/main.5992ebc1ccca9dcd2515.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.765cb344c9206ad77d63.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.765cb344c9206ad77d63.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.45a69d24844455588132.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.45a69d24844455588132.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.8c6fec530e4d85facfe5.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.8c6fec530e4d85facfe5.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.09ed4dbda1926d9c9138.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.09ed4dbda1926d9c9138.hot-update.js",
|
||||
"/js/main.c3d516fb34d55b243c46.hot-update.js": "/js/main.c3d516fb34d55b243c46.hot-update.js",
|
||||
"/js/main.f73825d78cfa4c55560d.hot-update.js": "/js/main.f73825d78cfa4c55560d.hot-update.js",
|
||||
"/js/main.4a894940580f6ef3f5a4.hot-update.js": "/js/main.4a894940580f6ef3f5a4.hot-update.js",
|
||||
"/js/main.36a44250869248cb5d3d.hot-update.js": "/js/main.36a44250869248cb5d3d.hot-update.js",
|
||||
"/js/main.016fc66db3fccf7ab02c.hot-update.js": "/js/main.016fc66db3fccf7ab02c.hot-update.js",
|
||||
"/js/main.dc53484466da1bbba22a.hot-update.js": "/js/main.dc53484466da1bbba22a.hot-update.js",
|
||||
"/js/main.033d0158ff270ada6285.hot-update.js": "/js/main.033d0158ff270ada6285.hot-update.js",
|
||||
"/js/main.b26ebf37b5a249326821.hot-update.js": "/js/main.b26ebf37b5a249326821.hot-update.js",
|
||||
"/js/main.5c8b7c0759a6283400d5.hot-update.js": "/js/main.5c8b7c0759a6283400d5.hot-update.js",
|
||||
"/js/main.c561521c779c3840e531.hot-update.js": "/js/main.c561521c779c3840e531.hot-update.js",
|
||||
"/js/main.495d35cbdc423d374217.hot-update.js": "/js/main.495d35cbdc423d374217.hot-update.js",
|
||||
"/js/main.94e9fdd79f335631b7ba.hot-update.js": "/js/main.94e9fdd79f335631b7ba.hot-update.js",
|
||||
"/js/main.073f7877a365b2467042.hot-update.js": "/js/main.073f7877a365b2467042.hot-update.js",
|
||||
"/js/main.863d41cb0e0b4fd6e6db.hot-update.js": "/js/main.863d41cb0e0b4fd6e6db.hot-update.js",
|
||||
"/js/main.352b732435806ada420c.hot-update.js": "/js/main.352b732435806ada420c.hot-update.js",
|
||||
"/js/main.02ee25607333aa87f887.hot-update.js": "/js/main.02ee25607333aa87f887.hot-update.js",
|
||||
"/js/main.a67208a338397c9d4368.hot-update.js": "/js/main.a67208a338397c9d4368.hot-update.js",
|
||||
"/js/main.8287972a430a1adbe3a5.hot-update.js": "/js/main.8287972a430a1adbe3a5.hot-update.js",
|
||||
"/js/main.05a4059d5b2a45fbb1c3.hot-update.js": "/js/main.05a4059d5b2a45fbb1c3.hot-update.js",
|
||||
"/js/main.aded789163fc1c5828f0.hot-update.js": "/js/main.aded789163fc1c5828f0.hot-update.js",
|
||||
"/js/main.e5b6fb32f9165760a2f4.hot-update.js": "/js/main.e5b6fb32f9165760a2f4.hot-update.js",
|
||||
"/js/main.8c94a83163875565b848.hot-update.js": "/js/main.8c94a83163875565b848.hot-update.js",
|
||||
"/js/main.92f276131542382e134a.hot-update.js": "/js/main.92f276131542382e134a.hot-update.js",
|
||||
"/js/main.038f80423c64be7d20e7.hot-update.js": "/js/main.038f80423c64be7d20e7.hot-update.js",
|
||||
"/js/main.4f61b2d165f54996a4c0.hot-update.js": "/js/main.4f61b2d165f54996a4c0.hot-update.js",
|
||||
"/js/main.2eed9a33045dcfc21af5.hot-update.js": "/js/main.2eed9a33045dcfc21af5.hot-update.js",
|
||||
"/js/main.9f2524a070f062f1ead0.hot-update.js": "/js/main.9f2524a070f062f1ead0.hot-update.js",
|
||||
"/js/main.406fdbaba18e7a37ba45.hot-update.js": "/js/main.406fdbaba18e7a37ba45.hot-update.js",
|
||||
"/js/main.f25d381b827756ef0e12.hot-update.js": "/js/main.f25d381b827756ef0e12.hot-update.js",
|
||||
"/js/main.94ae6ca3738e05eefef6.hot-update.js": "/js/main.94ae6ca3738e05eefef6.hot-update.js",
|
||||
"/js/main.7b6f30c359e5251ef6d0.hot-update.js": "/js/main.7b6f30c359e5251ef6d0.hot-update.js",
|
||||
"/js/main.3b168005fcda150e8be6.hot-update.js": "/js/main.3b168005fcda150e8be6.hot-update.js",
|
||||
"/js/main.5056cf0f408a65bf5886.hot-update.js": "/js/main.5056cf0f408a65bf5886.hot-update.js",
|
||||
"/js/main.52a5ba1b2eeec4590524.hot-update.js": "/js/main.52a5ba1b2eeec4590524.hot-update.js",
|
||||
"/js/main.6267aee84a2872e91ef4.hot-update.js": "/js/main.6267aee84a2872e91ef4.hot-update.js",
|
||||
"/js/main.b084c53c51bec69abeb6.hot-update.js": "/js/main.b084c53c51bec69abeb6.hot-update.js",
|
||||
"/js/main.623f75384a87ac3e3a52.hot-update.js": "/js/main.623f75384a87ac3e3a52.hot-update.js",
|
||||
"/js/main.c313645e367745eeaf57.hot-update.js": "/js/main.c313645e367745eeaf57.hot-update.js",
|
||||
"/js/main.cedeaa5b3e87a48f176b.hot-update.js": "/js/main.cedeaa5b3e87a48f176b.hot-update.js",
|
||||
"/js/main.6d3c1b7afb75eb61811a.hot-update.js": "/js/main.6d3c1b7afb75eb61811a.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.6d3c1b7afb75eb61811a.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.6d3c1b7afb75eb61811a.hot-update.js",
|
||||
"/js/main.d62a09962ca82ce76f5d.hot-update.js": "/js/main.d62a09962ca82ce76f5d.hot-update.js",
|
||||
"/js/main.349517a0be904b874323.hot-update.js": "/js/main.349517a0be904b874323.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.165d58c3d6ad8e7f90b9.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.165d58c3d6ad8e7f90b9.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.3f69a06a9ff09361e597.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.3f69a06a9ff09361e597.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.9952a80137ce68c50024.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.9952a80137ce68c50024.hot-update.js",
|
||||
"/js/main.6693b3a582b9a2696b9f.hot-update.js": "/js/main.6693b3a582b9a2696b9f.hot-update.js"
|
||||
}
|
||||
|
||||
@@ -110,7 +110,7 @@ export default {
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'isLogged', 'isGuest', 'config'
|
||||
'isLogged', 'isGuest', 'config', 'fileQueue'
|
||||
]),
|
||||
isGuestLayout() {
|
||||
return (includes([
|
||||
|
||||
@@ -112,7 +112,7 @@ export default {
|
||||
'shared',
|
||||
'public'
|
||||
]
|
||||
return !this.$isThisLocation(locations) || this.fileInfoDetail.length === 0
|
||||
return !this.$isThisLocation(locations) || this.fileInfoDetail.length === 0
|
||||
},
|
||||
canUploadInView() {
|
||||
return !this.$isThisLocation(['base', 'public'])
|
||||
@@ -125,7 +125,7 @@ export default {
|
||||
'shared',
|
||||
'public'
|
||||
]
|
||||
return !this.$isThisLocation(locations) || this.fileInfoDetail.length === 0
|
||||
return !this.$isThisLocation(locations) || this.fileInfoDetail.length === 0
|
||||
|
||||
},
|
||||
canShareInView() {
|
||||
@@ -137,7 +137,7 @@ export default {
|
||||
'public'
|
||||
]
|
||||
|
||||
return !this.$isThisLocation(locations) || this.fileInfoDetail.length > 1 || this.fileInfoDetail.length === 0
|
||||
return !this.$isThisLocation(locations) || this.fileInfoDetail.length > 1 || this.fileInfoDetail.length === 0
|
||||
}
|
||||
},
|
||||
data() {
|
||||
@@ -183,14 +183,14 @@ export default {
|
||||
events.$emit('folder:actions', this.currentFolder)
|
||||
},
|
||||
deleteItem() {
|
||||
if(this.fileInfoDetail.length > 0)
|
||||
if (this.fileInfoDetail.length > 0)
|
||||
this.$store.dispatch('deleteItem')
|
||||
},
|
||||
createFolder() {
|
||||
this.$store.dispatch('createFolder', this.$t('popup_create_folder.folder_default_name'))
|
||||
},
|
||||
moveItem() {
|
||||
if(this.fileInfoDetail.length > 0)
|
||||
if (this.fileInfoDetail.length > 0)
|
||||
events.$emit('popup:open', { name: 'move', item: this.fileInfoDetail })
|
||||
},
|
||||
shareItem() {
|
||||
@@ -215,9 +215,9 @@ export default {
|
||||
// this.sortingAndPreview = state
|
||||
// })
|
||||
|
||||
events.$on('unClick', () => {
|
||||
this.sortingAndPreview = false
|
||||
})
|
||||
events.$on('unClick', () => {
|
||||
this.sortingAndPreview = false
|
||||
})
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -225,15 +225,18 @@ export default {
|
||||
<style scoped lang="scss">
|
||||
@import "@assets/vue-file-manager/_variables";
|
||||
@import "@assets/vue-file-manager/_mixins";
|
||||
.preview-sorting {
|
||||
|
||||
.preview-sorting {
|
||||
/deep/ .label {
|
||||
color: $text !important;
|
||||
}
|
||||
|
||||
/deep/ .preview-sorting {
|
||||
path, line, polyline, rect, circle {
|
||||
stroke: $text !important;
|
||||
}
|
||||
path, line, polyline, rect, circle {
|
||||
stroke: $text !important;
|
||||
}
|
||||
}
|
||||
|
||||
&:hover {
|
||||
/deep/ .preview-sorting {
|
||||
path, line, polyline, rect, circle {
|
||||
@@ -358,6 +361,7 @@ export default {
|
||||
|
||||
&.preview-sorting {
|
||||
background: $light_background;
|
||||
|
||||
/deep/ .preview-sorting {
|
||||
path, line, polyline, rect, circle {
|
||||
stroke: $theme !important;
|
||||
@@ -423,14 +427,15 @@ export default {
|
||||
background: $dark_mode_foreground !important;
|
||||
}
|
||||
}
|
||||
.preview-sorting {
|
||||
.preview-sorting {
|
||||
/deep/ .label {
|
||||
color: $text !important;
|
||||
}
|
||||
|
||||
/deep/ .preview-sorting {
|
||||
path, line, polyline, rect, circle {
|
||||
stroke: $dark_mode_text_primary !important;
|
||||
}
|
||||
path, line, polyline, rect, circle {
|
||||
stroke: $dark_mode_text_primary !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div class="file-content" id="file-content-id" :class="{ 'is-offset': uploadingFilesCount, 'is-dragging': isDragging }"
|
||||
<div class="file-content" id="file-content-id" :class="{ 'is-offset': filesInQueueTotal > 0, 'is-dragging': isDragging }"
|
||||
@dragover.prevent
|
||||
@drop.stop.prevent="dropUpload($event)"
|
||||
@dragover="dragEnter"
|
||||
@@ -119,7 +119,7 @@
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'uploadingFilesCount',
|
||||
'filesInQueueTotal',
|
||||
'fileInfoVisible',
|
||||
'fileInfoDetail',
|
||||
'currentFolder',
|
||||
|
||||
@@ -1,20 +1,21 @@
|
||||
<template>
|
||||
<transition name="info-panel">
|
||||
<div v-if="uploadingFilesCount" class="upload-progress">
|
||||
<div v-if="fileQueue.length > 0" class="upload-progress">
|
||||
<div class="progress-title">
|
||||
|
||||
<!--Is processing-->
|
||||
<span v-if="isProcessingFile">
|
||||
<refresh-cw-icon size="12" class="sync-alt"></refresh-cw-icon>
|
||||
{{ $t('uploading.processing_file') }}
|
||||
</span>
|
||||
<span v-if="!isProcessingFile && uploadingFilesCount.total === 1">
|
||||
{{ $t('uploading.progress_single_upload', {progress: uploadingFileProgress}) }}
|
||||
</span>
|
||||
<span v-if="!isProcessingFile && uploadingFilesCount.total > 1">
|
||||
{{ $t('uploading.progress', {current:uploadingFilesCount.current, total: uploadingFilesCount.total, progress: uploadingFileProgress}) }}
|
||||
|
||||
<!--Multi file upload-->
|
||||
<span v-if="!isProcessingFile && fileQueue.length > 0">
|
||||
{{ $t('uploading.progress', {current:filesInQueueUploaded, total: filesInQueueTotal, progress: uploadingProgress}) }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="progress-wrapper">
|
||||
<ProgressBar :progress="uploadingFileProgress" />
|
||||
<ProgressBar :progress="uploadingProgress" />
|
||||
<span @click="cancelUpload" :title="$t('uploading.cancel')" class="cancel-icon">
|
||||
<x-icon size="16" @click="cancelUpload"></x-icon>
|
||||
</span>
|
||||
@@ -38,9 +39,11 @@
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'uploadingFileProgress',
|
||||
'uploadingFilesCount',
|
||||
'filesInQueueUploaded',
|
||||
'filesInQueueTotal',
|
||||
'uploadingProgress',
|
||||
'isProcessingFile',
|
||||
'fileQueue',
|
||||
])
|
||||
},
|
||||
methods: {
|
||||
|
||||
Vendored
+89
-104
@@ -76,123 +76,106 @@ const Helpers = {
|
||||
this.$store.dispatch('createFolder', folderName)
|
||||
}
|
||||
|
||||
Vue.prototype.$handleUploading = async function (files, parent_id) {
|
||||
|
||||
let fileBuffer = []
|
||||
|
||||
// Append the file list to fileBuffer array
|
||||
Array.prototype.push.apply(fileBuffer, files);
|
||||
|
||||
let fileSucceed = 0
|
||||
|
||||
// Update files count in progressbar
|
||||
store.commit('UPDATE_FILE_COUNT_PROGRESS', {
|
||||
current: fileSucceed,
|
||||
total: files.length
|
||||
})
|
||||
|
||||
// Reset upload progress to 0
|
||||
store.commit('UPLOADING_FILE_PROGRESS', 0)
|
||||
|
||||
// Get parent id
|
||||
let parentFolder = this.$store.getters.currentFolder ? this.$store.getters.currentFolder.unique_id : 0
|
||||
let rootFolder = parent_id ? parent_id : parentFolder
|
||||
|
||||
// Upload files
|
||||
do {
|
||||
let file = fileBuffer.shift(),
|
||||
chunks = []
|
||||
|
||||
// Calculate ceils
|
||||
let size = this.$store.getters.config.chunkSize,
|
||||
chunksCeil = Math.ceil(file.size / size);
|
||||
|
||||
// Create chunks
|
||||
for (let i = 0; i < chunksCeil; i++) {
|
||||
chunks.push(file.slice(
|
||||
i * size, Math.min(i * size + size, file.size), file.type
|
||||
));
|
||||
}
|
||||
|
||||
// Set Data
|
||||
let formData = new FormData(),
|
||||
uploadedSize = 0,
|
||||
isNotGeneralError = true,
|
||||
striped_name = file.name.replace(/[^A-Za-z 0-9 \.,\?""!@#\$%\^&\*\(\)-_=\+;:<>\/\\\|\}\{\[\]`~]*/g, ''),
|
||||
filename = Array(16).fill(0).map(x => Math.random().toString(36).charAt(2)).join('') + '-' + striped_name + '.part'
|
||||
|
||||
do {
|
||||
let isLast = chunks.length === 1,
|
||||
chunk = chunks.shift(),
|
||||
attempts = 0
|
||||
|
||||
// Set form data
|
||||
formData.set('file', chunk, filename);
|
||||
formData.set('parent_id', rootFolder)
|
||||
formData.set('is_last', isLast);
|
||||
|
||||
// Upload chunks
|
||||
do {
|
||||
await store.dispatch('uploadFiles', {
|
||||
form: formData,
|
||||
fileSize: file.size,
|
||||
totalUploadedSize: uploadedSize
|
||||
}).then(() => {
|
||||
uploadedSize = uploadedSize + chunk.size
|
||||
}).catch((error) => {
|
||||
|
||||
// Count attempts
|
||||
attempts++
|
||||
|
||||
// Break uploading proccess
|
||||
if (error.response.status === 500)
|
||||
isNotGeneralError = false
|
||||
|
||||
//Break if mimetype of file is in blacklist
|
||||
if(error.response.status === 415)
|
||||
isNotGeneralError = false
|
||||
|
||||
// Show Error
|
||||
if (attempts === 3)
|
||||
this.$isSomethingWrong()
|
||||
})
|
||||
} while (isNotGeneralError && attempts !== 0 && attempts !== 3)
|
||||
|
||||
} while (isNotGeneralError && chunks.length !== 0)
|
||||
|
||||
fileSucceed++
|
||||
|
||||
// Progress file log
|
||||
store.commit('UPDATE_FILE_COUNT_PROGRESS', {
|
||||
current: fileSucceed,
|
||||
total: files.length
|
||||
})
|
||||
|
||||
} while (fileBuffer.length !== 0)
|
||||
|
||||
store.commit('UPDATE_FILE_COUNT_PROGRESS', undefined)
|
||||
}
|
||||
|
||||
Vue.prototype.$uploadFiles = async function (files) {
|
||||
|
||||
if (files.length == 0) return
|
||||
if (files.length == 0) return
|
||||
|
||||
if (!this.$checkFileMimetype(files) || !this.$checkUploadLimit(files)) return
|
||||
|
||||
this.$handleUploading(files, undefined)
|
||||
|
||||
// Push items to file queue
|
||||
[...files].map(item => {
|
||||
this.$store.commit('ADD_FILES_TO_QUEUE', {
|
||||
parent_id: store.getters.currentFolder.unique_id,
|
||||
file: item,
|
||||
})
|
||||
});
|
||||
|
||||
// Start uploading if uploading process isn't running
|
||||
if (this.$store.getters.filesInQueueTotal == 0)
|
||||
this.$handleUploading(store.getters.fileQueue[0])
|
||||
|
||||
// Increase total files in upload bar
|
||||
this.$store.commit('INCREASE_FILES_IN_QUEUES_TOTAL', files.length)
|
||||
}
|
||||
|
||||
Vue.prototype.$uploadExternalFiles = async function (event, parent_id) {
|
||||
|
||||
// Prevent submit empty files
|
||||
if (event.dataTransfer.items.length == 0) return
|
||||
if (event.dataTransfer.items.length === 0) return
|
||||
|
||||
// Get files
|
||||
let files = [...event.dataTransfer.items].map(item => item.getAsFile());
|
||||
// Push items to file queue
|
||||
[...event.dataTransfer.items].map(item => {
|
||||
this.$store.commit('ADD_FILES_TO_QUEUE', {
|
||||
parent_id: parent_id,
|
||||
file: item.getAsFile(),
|
||||
})
|
||||
});
|
||||
|
||||
this.$handleUploading(files, parent_id)
|
||||
// Start uploading if uploading process isn't running
|
||||
if (this.$store.getters.filesInQueueTotal == 0)
|
||||
this.$handleUploading(this.$store.getters.fileQueue[0])
|
||||
|
||||
// Increase total files in upload bar
|
||||
this.$store.commit('INCREASE_FILES_IN_QUEUES_TOTAL', [...event.dataTransfer.items].length)
|
||||
}
|
||||
|
||||
Vue.prototype.$handleUploading = async function (item) {
|
||||
|
||||
// Create ceil
|
||||
let size = store.getters.config.chunkSize,
|
||||
chunksCeil = Math.ceil(item.file.size / size),
|
||||
chunks = []
|
||||
|
||||
// Create chunks
|
||||
for (let i = 0; i < chunksCeil; i++) {
|
||||
chunks.push(item.file.slice(
|
||||
i * size, Math.min(i * size + size, item.file.size), item.file.type
|
||||
));
|
||||
}
|
||||
|
||||
// Set Data
|
||||
let formData = new FormData(),
|
||||
uploadedSize = 0,
|
||||
isNotGeneralError = true,
|
||||
striped_name = item.file.name.replace(/[^A-Za-z 0-9 \.,\?""!@#\$%\^&\*\(\)-_=\+;:<>\/\\\|\}\{\[\]`~]*/g, ''),
|
||||
filename = Array(16).fill(0).map(x => Math.random().toString(36).charAt(2)).join('') + '-' + striped_name + '.part'
|
||||
|
||||
do {
|
||||
let isLast = chunks.length === 1,
|
||||
chunk = chunks.shift(),
|
||||
attempts = 0
|
||||
|
||||
// Set form data
|
||||
formData.set('file', chunk, filename);
|
||||
formData.set('parent_id', item.parent_id)
|
||||
formData.set('is_last', isLast);
|
||||
|
||||
// Upload chunks
|
||||
do {
|
||||
await store.dispatch('uploadFiles', {
|
||||
form: formData,
|
||||
fileSize: item.file.size,
|
||||
totalUploadedSize: uploadedSize
|
||||
}).then(() => {
|
||||
uploadedSize = uploadedSize + chunk.size
|
||||
}).catch((error) => {
|
||||
|
||||
// Count attempts
|
||||
attempts++
|
||||
|
||||
// Show Error
|
||||
if (attempts === 3)
|
||||
this.$isSomethingWrong()
|
||||
|
||||
// Break uploading process
|
||||
if ([500, 415].includes(error.response.status))
|
||||
isNotGeneralError = false
|
||||
})
|
||||
} while (isNotGeneralError && attempts !== 0 && attempts !== 3)
|
||||
|
||||
} while (isNotGeneralError && chunks.length !== 0)
|
||||
}
|
||||
|
||||
Vue.prototype.$downloadFile = function (url, filename) {
|
||||
var anchor = document.createElement('a')
|
||||
|
||||
@@ -281,6 +264,7 @@ const Helpers = {
|
||||
message: i18n.t('popup_error.message')
|
||||
})
|
||||
}
|
||||
|
||||
Vue.prototype.$checkFileMimetype = function(files) {
|
||||
let validated = true
|
||||
let mimetypesBlacklist = store.getters.config.mimetypesBlacklist
|
||||
@@ -345,6 +329,7 @@ const Helpers = {
|
||||
// Get data of Navigator tree
|
||||
this.$store.dispatch('getFolderTree')
|
||||
}
|
||||
|
||||
Vue.prototype.$checkOS = function() {
|
||||
// Handle styled scrollbar for Windows
|
||||
if (navigator.userAgent.indexOf('Windows') != -1) {
|
||||
|
||||
-15
@@ -5,11 +5,8 @@ import router from '@/router'
|
||||
import i18n from '@/i18n/index'
|
||||
|
||||
const defaultState = {
|
||||
uploadingFilesCount: undefined,
|
||||
fileInfoDetail: [],
|
||||
currentFolder: undefined,
|
||||
uploadingFileProgress: 0,
|
||||
isProcessingFile: false,
|
||||
navigation: undefined,
|
||||
isSearching: false,
|
||||
browseHistory: [],
|
||||
@@ -264,12 +261,6 @@ const mutations = {
|
||||
CHANGE_SEARCHING_STATE(state, searchState) {
|
||||
state.isSearching = searchState
|
||||
},
|
||||
UPLOADING_FILE_PROGRESS(state, percentage) {
|
||||
state.uploadingFileProgress = percentage
|
||||
},
|
||||
UPDATE_FILE_COUNT_PROGRESS(state, data) {
|
||||
state.uploadingFilesCount = data
|
||||
},
|
||||
UPDATE_SHARED_ITEM(state, data) {
|
||||
state.data.find(item => {
|
||||
if (item.unique_id == data.item_id) item.shared = data
|
||||
@@ -292,15 +283,9 @@ const mutations = {
|
||||
STORE_CURRENT_FOLDER(state, folder) {
|
||||
state.currentFolder = folder
|
||||
},
|
||||
PROCESSING_FILE(state, status) {
|
||||
state.isProcessingFile = status
|
||||
}
|
||||
}
|
||||
|
||||
const getters = {
|
||||
uploadingFileProgress: state => state.uploadingFileProgress,
|
||||
uploadingFilesCount: state => state.uploadingFilesCount,
|
||||
isProcessingFile: state => state.isProcessingFile,
|
||||
fileInfoDetail: state => state.fileInfoDetail,
|
||||
currentFolder: state => state.currentFolder,
|
||||
browseHistory: state => state.browseHistory,
|
||||
|
||||
+107
-63
@@ -4,17 +4,24 @@ import { events } from '@/bus'
|
||||
import { last } from 'lodash'
|
||||
import axios from 'axios'
|
||||
import Vue from 'vue'
|
||||
import store from '../index'
|
||||
|
||||
const defaultState = {
|
||||
processingPopup: undefined,
|
||||
fileQueue: [],
|
||||
filesInQueueTotal: 0,
|
||||
filesInQueueUploaded: 0,
|
||||
|
||||
isProcessingFile: false,
|
||||
uploadingProgress: 0
|
||||
}
|
||||
|
||||
const actions = {
|
||||
downloadFolder: ({commit, getters}, folder) => {
|
||||
downloadFolder: ({ commit, getters }, folder) => {
|
||||
|
||||
commit('PROCESSING_POPUP', {
|
||||
title: i18n.t('popup_zipping.title'),
|
||||
message: i18n.t('popup_zipping.message'),
|
||||
message: i18n.t('popup_zipping.message')
|
||||
})
|
||||
|
||||
// Get route
|
||||
@@ -23,15 +30,15 @@ const actions = {
|
||||
: '/api/zip-folder/' + folder.unique_id
|
||||
|
||||
axios.get(route)
|
||||
.then(response => {
|
||||
Vue.prototype.$downloadFile(response.data.url, response.data.name)
|
||||
})
|
||||
.catch(() => {
|
||||
Vue.prototype.$isSomethingWrong()
|
||||
})
|
||||
.finally(() => {
|
||||
commit('PROCESSING_POPUP', undefined)
|
||||
})
|
||||
.then(response => {
|
||||
Vue.prototype.$downloadFile(response.data.url, response.data.name)
|
||||
})
|
||||
.catch(() => {
|
||||
Vue.prototype.$isSomethingWrong()
|
||||
})
|
||||
.finally(() => {
|
||||
commit('PROCESSING_POPUP', undefined)
|
||||
})
|
||||
|
||||
},
|
||||
downloadFiles: ({ commit, getters }) => {
|
||||
@@ -126,7 +133,7 @@ const actions = {
|
||||
//Set focus on new folder name
|
||||
setTimeout(() => {
|
||||
events.$emit('newFolder:focus', response.data.unique_id)
|
||||
}, 10);
|
||||
}, 10)
|
||||
|
||||
if (getters.currentFolder.location !== 'public')
|
||||
dispatch('getAppData')
|
||||
@@ -172,9 +179,9 @@ const actions = {
|
||||
? '/api/upload/public/' + router.currentRoute.params.token
|
||||
: '/api/upload'
|
||||
|
||||
// Create cancel token for axios cancelation
|
||||
const CancelToken = axios.CancelToken
|
||||
const source = CancelToken.source()
|
||||
// Create cancel token for axios cancellation
|
||||
const CancelToken = axios.CancelToken,
|
||||
source = CancelToken.source()
|
||||
|
||||
axios
|
||||
.post(route, form, {
|
||||
@@ -183,62 +190,72 @@ const actions = {
|
||||
'Content-Type': 'application/octet-stream'
|
||||
},
|
||||
onUploadProgress: event => {
|
||||
|
||||
var percentCompleted = Math.floor(((totalUploadedSize + event.loaded) / fileSize) * 100)
|
||||
|
||||
commit('UPLOADING_FILE_PROGRESS', percentCompleted >= 100 ? 100 : percentCompleted)
|
||||
|
||||
if (percentCompleted >= 100) {
|
||||
// Set processing file
|
||||
if (percentCompleted >= 100)
|
||||
commit('PROCESSING_FILE', true)
|
||||
}
|
||||
}
|
||||
})
|
||||
.then(response => {
|
||||
resolve(response)
|
||||
|
||||
commit('PROCESSING_FILE', false)
|
||||
|
||||
// Remove first file from file queue
|
||||
commit('SHIFT_FROM_FILE_QUEUE')
|
||||
|
||||
// Check if user is in uploading folder, if yes, than show new file
|
||||
if (response.data.folder_id == getters.currentFolder.unique_id)
|
||||
if (response.data.folder_id == getters.currentFolder.unique_id) {
|
||||
|
||||
// Add uploaded item into view
|
||||
commit('ADD_NEW_ITEMS', response.data)
|
||||
|
||||
resolve(response)
|
||||
})
|
||||
.catch(error => {
|
||||
commit('PROCESSING_FILE', false)
|
||||
// Reset file progress
|
||||
commit('UPLOADING_FILE_PROGRESS', 0)
|
||||
|
||||
reject(error)
|
||||
|
||||
switch (error.response.status) {
|
||||
case 423:
|
||||
events.$emit('alert:open', {
|
||||
emoji: '😬😬😬',
|
||||
title: i18n.t('popup_exceed_limit.title'),
|
||||
message: i18n.t('popup_exceed_limit.message')
|
||||
})
|
||||
break
|
||||
case 415:
|
||||
events.$emit('alert:open', {
|
||||
emoji: '😬😬😬',
|
||||
title: i18n.t('popup_mimetypes_blacklist.title'),
|
||||
message: i18n.t('popup_mimetypes_blacklist.message')
|
||||
})
|
||||
break
|
||||
case 413:
|
||||
events.$emit('alert:open', {
|
||||
emoji: '😟😟😟',
|
||||
title: i18n.t('popup_paylod_error.title'),
|
||||
message: i18n.t('popup_paylod_error.message')
|
||||
})
|
||||
break
|
||||
default:
|
||||
events.$emit('alert:open', {
|
||||
title: i18n.t('popup_error.title'),
|
||||
message: i18n.t('popup_error.message')
|
||||
})
|
||||
break
|
||||
// Increase count in files in queue uploaded for 1
|
||||
commit('INCREASE_FILES_IN_QUEUE_UPLOADED')
|
||||
}
|
||||
|
||||
// Reset uploader
|
||||
commit('UPDATE_FILE_COUNT_PROGRESS', undefined)
|
||||
// Start uploading next file if file queue is not empty
|
||||
if (getters.fileQueue.length) {
|
||||
Vue.prototype.$handleUploading(getters.fileQueue[0])
|
||||
}
|
||||
|
||||
// Reset upload process
|
||||
if (! getters.fileQueue.length)
|
||||
commit('CLEAR_UPLOAD_PROGRESS')
|
||||
|
||||
})
|
||||
.catch(error => {
|
||||
reject(error)
|
||||
|
||||
let messages = {
|
||||
'423': {
|
||||
title: i18n.t('popup_exceed_limit.title'),
|
||||
message: i18n.t('popup_exceed_limit.message')
|
||||
},
|
||||
'415': {
|
||||
title: i18n.t('popup_mimetypes_blacklist.title'),
|
||||
message: i18n.t('popup_mimetypes_blacklist.message')
|
||||
},
|
||||
'413': {
|
||||
title: i18n.t('popup_paylod_error.title'),
|
||||
message: i18n.t('popup_paylod_error.message')
|
||||
}
|
||||
}
|
||||
|
||||
events.$emit('alert:open', {
|
||||
emoji: '😬😬😬',
|
||||
title: messages[error.response.status]['title'],
|
||||
message: messages[error.response.status]['message']
|
||||
})
|
||||
|
||||
commit('PROCESSING_FILE', false)
|
||||
commit('CLEAR_UPLOAD_PROGRESS')
|
||||
})
|
||||
|
||||
// Cancel the upload request
|
||||
@@ -247,7 +264,7 @@ const actions = {
|
||||
|
||||
// Hide upload progress bar
|
||||
commit('PROCESSING_FILE', false)
|
||||
commit('UPDATE_FILE_COUNT_PROGRESS', undefined)
|
||||
commit('CLEAR_UPLOAD_PROGRESS')
|
||||
})
|
||||
})
|
||||
},
|
||||
@@ -260,28 +277,27 @@ const actions = {
|
||||
// If coming no selected item dont get items to restore from fileInfoDetail
|
||||
if (!item)
|
||||
items = getters.fileInfoDetail
|
||||
|
||||
|
||||
// Check if file can be restored to home directory
|
||||
if (getters.currentFolder.location === 'trash')
|
||||
restoreToHome = true
|
||||
|
||||
items.forEach(data => itemToRestore.push({
|
||||
'type': data.type,
|
||||
'unique_id': data.unique_id,
|
||||
'unique_id': data.unique_id
|
||||
}))
|
||||
|
||||
// Remove file preview
|
||||
commit('CLEAR_FILEINFO_DETAIL')
|
||||
|
||||
axios
|
||||
.post(getters.api + '/restore-items' ,{
|
||||
.post(getters.api + '/restore-items', {
|
||||
to_home: restoreToHome,
|
||||
data: itemToRestore,
|
||||
data: itemToRestore
|
||||
})
|
||||
.then(
|
||||
|
||||
// Remove file
|
||||
items.forEach( data => commit('REMOVE_ITEM', data.unique_id) )
|
||||
items.forEach(data => commit('REMOVE_ITEM', data.unique_id))
|
||||
)
|
||||
.catch(() => Vue.prototype.$isSomethingWrong())
|
||||
},
|
||||
@@ -387,11 +403,39 @@ const actions = {
|
||||
const mutations = {
|
||||
PROCESSING_POPUP(state, status) {
|
||||
state.processingPopup = status
|
||||
},
|
||||
ADD_FILES_TO_QUEUE(state, file) {
|
||||
state.fileQueue.push(file)
|
||||
},
|
||||
SHIFT_FROM_FILE_QUEUE(state) {
|
||||
state.fileQueue.shift()
|
||||
},
|
||||
PROCESSING_FILE(state, status) {
|
||||
state.isProcessingFile = status
|
||||
},
|
||||
UPLOADING_FILE_PROGRESS(state, percentage) {
|
||||
state.uploadingProgress = percentage
|
||||
},
|
||||
INCREASE_FILES_IN_QUEUES_TOTAL(state, count) {
|
||||
state.filesInQueueTotal += count
|
||||
},
|
||||
INCREASE_FILES_IN_QUEUE_UPLOADED(state) {
|
||||
state.filesInQueueUploaded++
|
||||
},
|
||||
CLEAR_UPLOAD_PROGRESS(state) {
|
||||
state.filesInQueueUploaded = 0
|
||||
state.filesInQueueTotal = 0
|
||||
state.fileQueue = []
|
||||
}
|
||||
}
|
||||
|
||||
const getters = {
|
||||
processingPopup: state => state.processingPopup
|
||||
filesInQueueUploaded: state => state.filesInQueueUploaded,
|
||||
filesInQueueTotal: state => state.filesInQueueTotal,
|
||||
uploadingProgress: state => state.uploadingProgress,
|
||||
isProcessingFile: state => state.isProcessingFile,
|
||||
processingPopup: state => state.processingPopup,
|
||||
fileQueue: state => state.fileQueue
|
||||
}
|
||||
|
||||
export default {
|
||||
|
||||
Reference in New Issue
Block a user