Skip to content

Commit 510b42f

Browse files
committed
fix(ftp): avoid doing nesting file/folder creation
1 parent 7ccfc23 commit 510b42f

File tree

1 file changed

+21
-6
lines changed

1 file changed

+21
-6
lines changed

src/pages/fileBrowser/fileBrowser.js

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1242,6 +1242,7 @@ function FileBrowserInclude(mode, info, doesOpenLast = true) {
12421242
*/
12431243
async function create(arg) {
12441244
const { url } = currentDir;
1245+
const isFtp = /^ftp:/.test(url);
12451246
const alreadyCreated = [];
12461247
const options = [];
12471248
let ctUrl = "";
@@ -1265,14 +1266,28 @@ function FileBrowserInclude(mode, info, doesOpenLast = true) {
12651266
if (!entryName) return;
12661267
entryName = helpers.fixFilename(entryName);
12671268

1268-
if (arg === "folder") {
1269-
newUrl = await helpers.createFileStructure(url, entryName, false);
1270-
}
1271-
if (arg === "file") {
1272-
newUrl = await helpers.createFileStructure(url, entryName);
1269+
if (isFtp) {
1270+
const fs = fsOperation(url);
1271+
if (arg === "folder") {
1272+
newUrl = await fs.createDirectory(entryName);
1273+
}
1274+
if (arg === "file") {
1275+
newUrl = await fs.createFile(entryName);
1276+
}
1277+
} else {
1278+
if (arg === "folder") {
1279+
newUrl = await helpers.createFileStructure(
1280+
url,
1281+
entryName,
1282+
false,
1283+
);
1284+
}
1285+
if (arg === "file") {
1286+
newUrl = await helpers.createFileStructure(url, entryName);
1287+
}
12731288
}
12741289
if (!newUrl) return;
1275-
return newUrl.uri;
1290+
return typeof newUrl === "string" ? newUrl : newUrl.uri;
12761291
}
12771292

12781293
if (arg === "project") {

0 commit comments

Comments
 (0)