Remove missing argument & moving parseCollectionItems

This commit is contained in:
Jérôme Dathueyt 2023-11-22 21:12:26 +01:00
parent c62f96c96e
commit 379697a02d
3 changed files with 40 additions and 22 deletions

View File

@ -329,7 +329,7 @@ export const cloneItem = (newName, itemUid, collectionUid) => (dispatch, getStat
}
const collectionPath = `${collection.pathname}${PATH_SEPARATOR}${newName}`;
ipcRenderer.invoke('renderer:clone-folder', newName, item, collectionPath).then(resolve).catch(reject);
ipcRenderer.invoke('renderer:clone-folder', item, collectionPath).then(resolve).catch(reject);
return;
}

View File

@ -336,6 +336,25 @@ const registerRendererEventHandlers = (mainWindow, watcher, lastOpenedCollection
throw new Error(`collection: ${collectionPath} already exists`);
}
// Recursive function to parse the collection items and create files/folders
const parseCollectionItems = (items = [], currentPath) => {
items.forEach((item) => {
if (['http-request', 'graphql-request'].includes(item.type)) {
const content = jsonToBru(item);
const filePath = path.join(currentPath, `${item.name}.bru`);
fs.writeFileSync(filePath, content);
}
if (item.type === 'folder') {
const folderPath = path.join(currentPath, item.name);
fs.mkdirSync(folderPath);
if (item.items && item.items.length) {
parseCollectionItems(item.items, folderPath);
}
}
});
};
const parseEnvironments = (environments = [], collectionPath) => {
const envDirPath = path.join(collectionPath, 'environments');
if (!fs.existsSync(envDirPath)) {
@ -379,6 +398,25 @@ const registerRendererEventHandlers = (mainWindow, watcher, lastOpenedCollection
throw new Error(`folder: ${collectionPath} already exists`);
}
// Recursive function to parse the folder and create files/folders
const parseCollectionItems = (items = [], currentPath) => {
items.forEach((item) => {
if (['http-request', 'graphql-request'].includes(item.type)) {
const content = jsonToBru(item);
const filePath = path.join(currentPath, `${item.name}.bru`);
fs.writeFileSync(filePath, content);
}
if (item.type === 'folder') {
const folderPath = path.join(currentPath, item.name);
fs.mkdirSync(folderPath);
if (item.items && item.items.length) {
parseCollectionItems(item.items, folderPath);
}
}
});
};
await createDirectory(collectionPath);
// create folder and files based on another folder

View File

@ -134,25 +134,6 @@ const sanitizeDirectoryName = (name) => {
return name.replace(/[<>:"/\\|?*\x00-\x1F]+/g, '-');
};
// Recursive function to parse the folder and create files/folders
const parseCollectionItems = (items = [], currentPath) => {
items.forEach((item) => {
if (['http-request', 'graphql-request'].includes(item.type)) {
const content = jsonToBru(item);
const filePath = path.join(currentPath, `${item.name}.bru`);
fs.writeFileSync(filePath, content);
}
if (item.type === 'folder') {
const folderPath = path.join(currentPath, item.name);
fs.mkdirSync(folderPath);
if (item.items && item.items.length) {
parseCollectionItems(item.items, folderPath);
}
}
});
};
module.exports = {
isValidPathname,
exists,
@ -169,6 +150,5 @@ module.exports = {
chooseFileToSave,
searchForFiles,
searchForBruFiles,
sanitizeDirectoryName,
parseCollectionItems
sanitizeDirectoryName
};