{"version":3,"file":"write.mjs","names":[],"sources":["../src/write.ts"],"sourcesContent":["import path from 'node:path';\nimport fs from 'node:fs/promises';\n\nexport type StatsWriteResponse = {\n  filepath: string;\n  content: string;\n};\n\nexport type StatsWrite = (\n  filepath: string,\n  stats: Record<string, unknown>\n) => StatsWriteResponse;\n\nexport async function statsWrite<\n  T extends Record<string, unknown> = Record<string, unknown>,\n>(filepath: string, stats: T): Promise<StatsWriteResponse> {\n  const content = JSON.stringify(stats, null, 2);\n\n  // Create base directory if it does not exist\n  await fs.mkdir(path.dirname(filepath), { recursive: true });\n\n  await fs.writeFile(filepath, content);\n\n  return {\n    filepath,\n    content,\n  };\n}\n"],"mappings":";;;;AAaA,eAAsB,WAEpB,UAAkB,OAAuC;CACzD,MAAM,UAAU,KAAK,UAAU,OAAO,MAAM,CAAC;CAG7C,MAAM,GAAG,MAAM,KAAK,QAAQ,QAAQ,GAAG,EAAE,WAAW,KAAK,CAAC;CAE1D,MAAM,GAAG,UAAU,UAAU,OAAO;CAEpC,OAAO;EACL;EACA;CACF;AACF"}