diff --git a/biome.json b/biome.json index 348ebd5..ec026a2 100644 --- a/biome.json +++ b/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/1.8.3/schema.json", + "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", "organizeImports": { "enabled": true }, diff --git a/src/index.ts b/src/index.ts index 60da1cc..9dcf6a5 100644 --- a/src/index.ts +++ b/src/index.ts @@ -257,14 +257,45 @@ export async function create({ skipFiles, isMergePackageJson: true, }); - } else { - copyFolder({ - from: toolFolder, - to: distFolder, - version, - skipFiles, - isMergePackageJson: true, - }); + + continue; + } + + copyFolder({ + from: toolFolder, + to: distFolder, + version, + skipFiles, + isMergePackageJson: true, + }); + + if (tool === 'biome') { + let biomeVersion: string = + JSON.parse( + await fs.promises.readFile( + path.join(distFolder, 'package.json'), + 'utf-8', + ), + ).devDependencies?.['@biomejs/biome'] ?? '1.9.4'; + + biomeVersion = biomeVersion + .split('.') + .slice(0, 3) + .map((s) => s.replace(/\W/g, '')) + .join('.'); + + const biomeJsonPath = path.join(distFolder, 'biome.json'); + const biomeJson = JSON.parse( + await fs.promises.readFile(biomeJsonPath, 'utf-8'), + ); + + biomeJson.$schema = biomeJson.$schema.replace('{version}', biomeVersion); + + await fs.promises.writeFile( + biomeJsonPath, + `${JSON.stringify(biomeJson, null, 2)}\n`, + 'utf-8', + ); } } diff --git a/template-biome/biome.json b/template-biome/biome.json index f281009..237fba1 100644 --- a/template-biome/biome.json +++ b/template-biome/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/1.8.0/schema.json", + "$schema": "https://biomejs.dev/schemas/{version}/schema.json", "organizeImports": { "enabled": true },