@patchworkdev/pdk
Version:
Patchwork Development Kit
29 lines (28 loc) • 1.14 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.formatAndSaveFile = formatAndSaveFile;
exports.formatFile = formatFile;
const promises_1 = __importDefault(require("fs/promises"));
const prettier_1 = __importDefault(require("prettier"));
const error_1 = require("./error");
const logger_1 = require("./logger");
async function formatAndSaveFile(filePath, content, parser = 'typescript') {
try {
const formatted = await formatFile(content, parser);
await promises_1.default.writeFile(filePath, formatted, 'utf-8');
}
catch (error) {
logger_1.logger.error(`Error formatting and saving file: ${filePath}`);
throw new error_1.PDKError(error_1.ErrorCode.FILE_SAVE_ERROR, `Error formatting and saving file ${filePath}`);
}
}
async function formatFile(content, parser = 'typescript') {
return await prettier_1.default.format(content, {
parser: parser,
tabWidth: 4,
printWidth: 120,
});
}