diff --git a/services/web/app/src/Features/Project/ProjectEntityHandler.mjs b/services/web/app/src/Features/Project/ProjectEntityHandler.mjs index 70d79d533a..cef0507ad0 100644 --- a/services/web/app/src/Features/Project/ProjectEntityHandler.mjs +++ b/services/web/app/src/Features/Project/ProjectEntityHandler.mjs @@ -6,6 +6,12 @@ import { callbackifyAll } from '@overleaf/promise-utils' import OError from '@overleaf/o-error' import { iterablePaths } from './IterablePath.mjs' +/** @import {ProjectDoc, ProjectFile} from './types' */ + +/** + * @param {string} projectId + * @returns {Promise>} + */ async function getAllDocs(projectId) { // We get the path and name info from the project, and the lines and // version info from the doc store. @@ -37,6 +43,10 @@ async function getAllDocs(projectId) { return docs } +/** + * @param {string} projectId + * @returns {Promise>} + */ async function getAllFiles(projectId) { const folders = await _getAllFolders(projectId) const files = {} diff --git a/services/web/app/src/Features/Project/types.d.ts b/services/web/app/src/Features/Project/types.d.ts index c7ec22a752..6c99e042d8 100644 --- a/services/web/app/src/Features/Project/types.d.ts +++ b/services/web/app/src/Features/Project/types.d.ts @@ -5,6 +5,7 @@ import { ProjectAccessLevel, UserRef, } from '../../../../types/project/dashboard/api' +import { Folder } from '../../../../types/folder' import { ObjectId } from 'mongodb-legacy' import { Source } from '../Authorization/types' @@ -62,3 +63,19 @@ export type FormattedProject = { accessLevel: ProjectAccessLevel source: Source } + +export type ProjectDoc = { + _id: ObjectId + name: string + lines: string[] + rev: number + folder: Folder +} + +export type ProjectFile = { + _id: ObjectId + name: string + hash: string + rev: number + folder: Folder +}