diff --git a/src/lib/server/utils/filesystem-utils.ts b/src/lib/server/utils/filesystem-utils.ts index 7475357..2dd6b49 100644 --- a/src/lib/server/utils/filesystem-utils.ts +++ b/src/lib/server/utils/filesystem-utils.ts @@ -158,17 +158,28 @@ export function hashUtil(data: BinaryLike) { return hash } -export async function listFiles(path: string, recursive?: boolean): Promise { +export async function listFiles(path: string, recursive?: boolean, relative?: boolean,): Promise { if (!recursive) { recursive = false } + if (!relative) { + relative = false + } + if (!await isDir(path)) { // UGLY: be specific throw new Error("This is not a directory") } - return await Node.readdir(path, {recursive: recursive}) + const relativePaths = await Node.readdir(path, {recursive: recursive}) + if (relative) { + return relativePaths + } + + return relativePaths.map( (_path) => { + return `${path}/${_path}` + }) }