Merge pull request #5984 from overleaf/em-unnecessarily-async-functions

Clean up unnecessarily async functions

GitOrigin-RevId: 59f0f0a76b4436f3b99a09b747670d443bac4582
This commit is contained in:
Eric Mc Sween
2021-12-06 10:27:12 -05:00
committed by Copybot
parent d27918bf40
commit b22df1dcba
13 changed files with 268 additions and 404 deletions

View File

@@ -69,31 +69,28 @@ const ProjectEntityHandler = {
return callback(new Errors.NotFoundError('project not found'))
}
ProjectEntityHandler.getAllEntitiesFromProject(project, callback)
const entities = ProjectEntityHandler.getAllEntitiesFromProject(project)
callback(null, entities)
})
},
getAllEntitiesFromProject(project, callback) {
ProjectEntityHandler._getAllFoldersFromProject(project, (err, folders) => {
if (err != null) {
return callback(err)
}
const docs = []
const files = []
for (const { path: folderPath, folder } of folders) {
for (const doc of folder.docs || []) {
if (doc != null) {
docs.push({ path: path.join(folderPath, doc.name), doc })
}
}
for (const file of folder.fileRefs || []) {
if (file != null) {
files.push({ path: path.join(folderPath, file.name), file })
}
getAllEntitiesFromProject(project) {
const folders = ProjectEntityHandler._getAllFoldersFromProject(project)
const docs = []
const files = []
for (const { path: folderPath, folder } of folders) {
for (const doc of folder.docs || []) {
if (doc != null) {
docs.push({ path: path.join(folderPath, doc.name), doc })
}
}
callback(null, docs, files, folders)
})
for (const file of folder.fileRefs || []) {
if (file != null) {
files.push({ path: path.join(folderPath, file.name), file })
}
}
}
return { docs, files, folders }
},
getAllDocPathsFromProjectById(projectId, callback) {
@@ -104,23 +101,20 @@ const ProjectEntityHandler = {
if (project == null) {
return callback(Errors.NotFoundError('no project'))
}
ProjectEntityHandler.getAllDocPathsFromProject(project, callback)
const docPaths = ProjectEntityHandler.getAllDocPathsFromProject(project)
callback(null, docPaths)
})
},
getAllDocPathsFromProject(project, callback) {
ProjectEntityHandler._getAllFoldersFromProject(project, (err, folders) => {
if (err != null) {
return callback(err)
getAllDocPathsFromProject(project) {
const folders = ProjectEntityHandler._getAllFoldersFromProject(project)
const docPath = {}
for (const { path: folderPath, folder } of folders) {
for (const doc of folder.docs || []) {
docPath[doc._id] = path.join(folderPath, doc.name)
}
const docPath = {}
for (const { path: folderPath, folder } of folders) {
for (const doc of folder.docs || []) {
docPath[doc._id] = path.join(folderPath, doc.name)
}
}
callback(null, docPath)
})
}
return docPath
},
getDoc(projectId, docId, options, callback) {
@@ -205,11 +199,12 @@ const ProjectEntityHandler = {
if (project == null) {
return callback(new Errors.NotFoundError('no project'))
}
ProjectEntityHandler._getAllFoldersFromProject(project, callback)
const folders = ProjectEntityHandler._getAllFoldersFromProject(project)
callback(null, folders)
})
},
_getAllFoldersFromProject(project, callback) {
_getAllFoldersFromProject(project) {
const folders = []
function processFolder(basePath, folder) {
folders.push({ path: basePath, folder })
@@ -221,15 +216,15 @@ const ProjectEntityHandler = {
}
processFolder('/', project.rootFolder[0])
callback(null, folders)
return folders
},
}
module.exports = ProjectEntityHandler
module.exports.promises = promisifyAll(ProjectEntityHandler, {
without: ['getAllEntitiesFromProject'],
multiResult: {
getAllEntities: ['docs', 'files'],
getAllEntitiesFromProject: ['docs', 'files'],
getDoc: ['lines', 'rev', 'version', 'ranges'],
},
})