typed-aws
Version:
Helps you write AWS CloudFormation in TypeScript
32 lines (31 loc) • 1.18 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.FileManager = void 0;
const glob_1 = __importDefault(require("glob"));
const path_1 = __importDefault(require("path"));
class FileManager {
constructor(params) {
this.params = params;
}
writeResource({ source, ...resourceFile }) {
this.params.write(path_1.default.join(this.params.outputDir, resourceFile.module), resourceFile.fileName, source);
this.params.onResourceWrite(resourceFile);
}
async writeModule({ source, module, fileName }) {
this.params.write(path_1.default.join(this.params.outputDir, module), fileName, source);
}
async writeIndex({ fileName, source }) {
this.params.write(this.params.outputDir, fileName, source);
}
async listSchemaFiles() {
const files = glob_1.default.sync(`${this.params.schemasDir}/*.json`, {
nodir: true,
cwd: this.params.cwd,
});
return files;
}
}
exports.FileManager = FileManager;