1- import { deleteDirectory , mapRenderMapContentAsync , writeRenderMap } from '@codama/renderers-core' ;
1+ import { addToRenderMap , deleteDirectory , mapRenderMapContentAsync , writeRenderMap } from '@codama/renderers-core' ;
22import { rootNodeVisitor , visit } from '@codama/visitors-core' ;
33
4- import { getCodeFormatter , RenderOptions , syncPackageJson } from '../utils' ;
4+ import { fragment , getCodeFormatter , RenderOptions , syncPackageJson } from '../utils' ;
55import { getRenderMapVisitor } from './getRenderMapVisitor' ;
66
77export function renderVisitor ( path : string , options : RenderOptions = { } ) {
@@ -21,6 +21,13 @@ export function renderVisitor(path: string, options: RenderOptions = {}) {
2121 // Create or update package.json dependencies, if requested.
2222 await syncPackageJson ( renderMap , formatCode , options ) ;
2323
24+ if ( options . formatCode ?? true ) {
25+ // If we formatted the generated code, prettierignore it
26+ // This avoids conflicts between the prettier version used here
27+ // and in the package using the generated code.
28+ renderMap = addToRenderMap ( renderMap , '.prettierignore' , fragment `**\n` ) ;
29+ }
30+
2431 // Write the rendered files to the output directory.
2532 writeRenderMap ( renderMap , path ) ;
2633 } ) ;
0 commit comments