openapi-ts-mock-generator
Version:
typescript mock data generator based openapi
54 lines • 1.38 kB
JavaScript
// src/utils/file-utils.ts
import { existsSync, mkdirSync, writeFileSync, rmSync, readdirSync, readFileSync } from "fs";
import * as path from "path";
var ensureDir = (dirPath) => {
if (!existsSync(dirPath)) {
mkdirSync(dirPath, { recursive: true });
}
};
var clearDirectory = (dirPath) => {
if (existsSync(dirPath)) {
readdirSync(dirPath).forEach((file) => {
rmSync(path.join(dirPath, file));
});
}
};
var safeWriteFile = (filePath, content) => {
const dir = path.dirname(filePath);
ensureDir(dir);
writeFileSync(filePath, content);
};
var readJsonFile = (filePath, defaultValue) => {
if (!existsSync(filePath)) {
return defaultValue;
}
try {
const content = readFileSync(filePath, "utf-8");
return JSON.parse(content);
} catch (error) {
console.warn(`Failed to read JSON file ${filePath}:`, error);
return defaultValue;
}
};
var resolveFilePath = (inputPath, baseDir) => {
if (inputPath.startsWith("http")) {
return inputPath;
}
if (baseDir) {
return path.join(baseDir, inputPath);
}
return inputPath;
};
var createUniqueFileName = (baseName, extension) => {
const timestamp = Date.now();
return `${baseName}-${timestamp}.${extension}`;
};
export {
clearDirectory,
createUniqueFileName,
ensureDir,
readJsonFile,
resolveFilePath,
safeWriteFile
};
//# sourceMappingURL=file-utils.mjs.map