Update support for moving/renaming files and folders

This commit is contained in:
Dane Everitt 2019-05-04 16:04:59 -07:00
parent eed4be49ab
commit 811026895b
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
9 changed files with 97 additions and 41 deletions

View file

@ -42,7 +42,7 @@
import Modal from "@/components/core/Modal.vue";
import MessageBox from "@/components/MessageBox.vue";
import {DirectoryContentObject} from "@/api/server/types";
import {moveElement} from '@/api/server/files/copyElement';
import {renameFile} from '@/api/server/files/renameFile';
import {mapState} from "vuex";
import {ApplicationState} from "@/store/types";
import {join} from 'path';
@ -106,12 +106,7 @@
this.isLoading = true;
// @ts-ignore
moveElement(this.server.uuid, this.credentials, {
// @ts-ignore
currentPath: join(this.fm.currentDirectory, this.file.name),
// @ts-ignore
newPath: join(this.fm.currentDirectory, this.moveTo),
})
renameFile(this.server.uuid, join(this.fm.currentDirectory, this.file.name), join(this.fm.currentDirectory, this.moveTo))
.then(() => this.$emit('moved'))
.catch((error: AxiosError) => {
this.error = `There was an error moving the requested ${(this.file.directory) ? 'folder' : 'file'}. Response was: ${error.message}`;

View file

@ -47,9 +47,10 @@
import MessageBox from '@/components/MessageBox.vue';
import {DirectoryContentObject} from "@/api/server/types";
import {mapState} from "vuex";
import {renameElement} from "@/api/server/files/renameElement";
import {renameFile} from "@/api/server/files/renameFile";
import {AxiosError} from 'axios';
import {ApplicationState} from "@/store/types";
import {join} from "path";
type DataStructure = {
error: null | string,
@ -109,12 +110,7 @@
this.error = null;
// @ts-ignore
renameElement(this.server.uuid, this.credentials, {
// @ts-ignore
path: this.fm.currentDirectory,
toName: this.newName,
fromName: this.object.name
})
renameFile(this.server.uuid, join(this.fm.currentDirectory, this.object.name), join(this.fm.currentDirectory, this.newName))
.then(() => {
this.$emit('renamed', this.newName);
this.closeModal();