lib/generator/format.ts
import { ts } from '@ts-morph/common';
import { SourceFile } from 'ts-morph';
export function formatCode(file: SourceFile) {
file.formatText({
ensureNewLineAtEndOfFile: true,
insertSpaceAfterCommaDelimiter: true,
insertSpaceAfterSemicolonInForStatements: true,
insertSpaceBeforeAndAfterBinaryOperators: true,
insertSpaceAfterKeywordsInControlFlowStatements: true,
insertSpaceAfterFunctionKeywordForAnonymousFunctions: true,
insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis: false,
insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets: false,
insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces: true,
insertSpaceAfterOpeningAndBeforeClosingEmptyBraces: false,
insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces: true,
insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces: true,
insertSpaceAfterTypeAssertion: true,
insertSpaceBeforeFunctionParenthesis: false,
placeOpenBraceOnNewLineForFunctions: false,
placeOpenBraceOnNewLineForControlBlocks: false,
insertSpaceBeforeTypeAnnotation: false,
indentMultiLineObjectLiteralBeginningOnBlankLine: true,
semicolons: ts.SemicolonPreference.Insert,
indentSize: 2,
trimTrailingWhitespace: true,
});
}