UNPKG

@baseplate-dev/sync

Version:

Library for syncing Baseplate descriptions

31 lines 1.06 kB
import { handleFileNotFoundError } from '@baseplate-dev/utils/node'; import fs from 'node:fs/promises'; import path from 'node:path'; import { fileExists } from '#src/utils/fs.js'; /** * Create a codebase file reader from a directory * * @param directory - Directory to read files from * @returns Codebase file reader */ export function createCodebaseFileReaderFromDirectory(directory) { return { fileExists: (relativePath) => fileExists(path.join(directory, relativePath)), readFile: (relativePath) => fs .readFile(path.join(directory, relativePath)) .catch(handleFileNotFoundError), }; } /** * Create a codebase file reader from a map of files * * @param files - Map of files to read * @returns Codebase file reader */ export function createCodebaseReaderFromMemory(files) { return { fileExists: (relativePath) => Promise.resolve(files.has(relativePath)), readFile: (relativePath) => Promise.resolve(files.get(relativePath)), }; } //# sourceMappingURL=codebase-file-reader.js.map