import { readFile,access } from 'node:fs/promises'; import { resolve } from 'node:path'; import { generateWorldSync } from '../src/gen/generate'; import { exportCity } from './export/index'; const output=resolve(process.argv[2] || 'public/cities/balzers-demo'); let ready=false; try {await access(resolve(output,'manifest.json'));ready=true;} catch(error) {if ((error as NodeJS.ErrnoException).code!=='ENOENT') throw error;} if (ready) console.log(`Prepared city already exists: ${output}`); else { const data=JSON.parse(await readFile('samples/balzers-2013.json','utf8')); const world=generateWorldSync(data.elements,[47.058,9.492,47.074,9.518],'Бальцерс',1); world.id='balzers-0-2-0'; const manifest=await exportCity(world,output); console.log(`${manifest.city.name}: ${manifest.counts.buildings} buildings, ${manifest.tiles.length} tiles → ${output}`); }