ts-simple-ast
Version:
TypeScript compiler wrapper for AST navigation and code generation.
52 lines (50 loc) • 1.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const fs = require("fs");
const globby = require("globby");
const utils_1 = require("./utils");
/**
* @internal
*/
class DefaultFileSystemHost {
readFile(filePath, encoding = "utf-8") {
return fs.readFileSync(filePath, encoding);
}
writeFile(filePath, fileText) {
return new Promise((resolve, reject) => {
fs.writeFile(filePath, fileText, err => {
if (err)
reject(err);
else
resolve();
});
});
}
writeFileSync(filePath, fileText) {
fs.writeFileSync(filePath, fileText);
}
fileExists(filePath) {
try {
return fs.statSync(filePath).isFile();
}
catch (err) {
return false;
}
}
directoryExists(dirPath) {
try {
return fs.statSync(dirPath).isDirectory();
}
catch (err) {
return false;
}
}
getCurrentDirectory() {
return utils_1.FileUtils.getCurrentDirectory();
}
glob(patterns) {
return globby.sync(patterns);
}
}
exports.DefaultFileSystemHost = DefaultFileSystemHost;
//# sourceMappingURL=DefaultFileSystemHost.js.map