@metamask/snaps-utils
Version:
A collection of utilities for MetaMask Snaps
31 lines • 1.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.writeVirtualFile = exports.readVirtualFile = void 0;
const fs_1 = require("fs");
const VirtualFile_1 = require("./VirtualFile.cjs");
/**
* Reads a file from filesystem and creates a vfile.
*
* @param path - Filesystem path to load the contents from.
* @param encoding - Optional encoding to pass down to fs.readFile.
* @returns Promise returning VFile with loaded file contents.
*/
async function readVirtualFile(path, encoding = null) {
return new VirtualFile_1.VirtualFile({
path,
value: await fs_1.promises.readFile(path, { encoding }),
});
}
exports.readVirtualFile = readVirtualFile;
/**
* Writes vfile to filesystem.
*
* @param vfile - The vfile to write.
* @param options - Options to pass down to fs.writeFile.
* @returns A promise that resolves when the file is written.
*/
async function writeVirtualFile(vfile, options) {
return fs_1.promises.writeFile(vfile.path, vfile.value, options);
}
exports.writeVirtualFile = writeVirtualFile;
//# sourceMappingURL=toVirtualFile.cjs.map