Skip to content

Commit 89f169b

Browse files
committed
Format generated types
1 parent 0dbae9f commit 89f169b

1 file changed

Lines changed: 10 additions & 3 deletions

File tree

  • packages/pluggable-widgets-tools/src/typings-generator

packages/pluggable-widgets-tools/src/typings-generator/index.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,18 @@
1-
import { promises } from "fs";
1+
import { readFileSync, promises } from "fs";
22
import { join } from "path";
33
import { parseStringPromise } from "xml2js";
44
import { PackageXml } from "./PackageXml";
55
import { WidgetXml } from "./WidgetXml";
66
import { generateForWidget } from "./generate";
7+
import { format } from "prettier";
78

89
const { mkdir, readFile, stat, writeFile } = promises;
910

11+
const prettierConfig = {
12+
parser: "babel-ts",
13+
...JSON.parse(readFileSync(join(__dirname, "../../configs/prettier.base.json"), "utf-8"))
14+
};
15+
1016
export async function transformPackage(content: string, basePath: string) {
1117
const contentXml = (await parseStringPromise(content)) as PackageXml;
1218
if (!contentXml) {
@@ -29,7 +35,7 @@ export async function transformPackage(content: string, basePath: string) {
2935
const sourcePath = widgetFileXml.$.path;
3036
const source = await readFile(join(basePath, sourcePath), "utf-8");
3137

32-
let generatedContent;
38+
let generatedContent: string;
3339
try {
3440
const sourceXml = (await parseStringPromise(source)) as WidgetXml;
3541
generatedContent = generateForWidget(sourceXml, toWidgetName(sourcePath));
@@ -39,8 +45,9 @@ export async function transformPackage(content: string, basePath: string) {
3945
);
4046
}
4147

48+
const formattedContent = await format(generatedContent, prettierConfig);
4249
const resultPath = sourcePath.replace(/(\.xml)?$/, "Props.d.ts");
43-
await writeFile(join(resultBasePath, resultPath), generatedContent);
50+
await writeFile(join(resultBasePath, resultPath), formattedContent);
4451
}
4552
}
4653

0 commit comments

Comments
 (0)