httpService.sendDataTest(...)
возвращает promise, то не стоит его оборачивать в стрелочную функцию, вот так нужно:filesToDelete.map((file: DocsManagerFile) => httpService.sendDataTest({ ... }))
filesToDelete.map((file: DocsManagerFile) => (
new Promise(onsuccess, onerror) => (
httpService.sendDataTest(
{ data_in: { id: file.id } },
'physdocs.delete_docs_file',
// где-то тут onsuccess и onerror
);
))));
// чтобы меньше бегать в циклах
let foldersMap = new Map();
for (let folder of folders_h)
foldersMap.set(folder.id, { children: folder.children })
for (let folder of folders){
let item = foldersMap.get(folder.id)
if (item) item.name = folder.name
else foldersMap.set(folder.id, { name: folder.name });
}
function helper(id){
let folder = foldersMap.get(id);
return !folder.children ? { id, name: folder.name } : { id, name: folder.name, children: folder.children.map( child => helper(child) ) }
}
let collection = folders_h.find( folder => folder.id === folders_root_id).children.map(child => helper(child))