{"version":3,"file":"save-config.cjs","names":["rebuildOrderedConfig"],"sources":["../../src/utils/save-config.ts"],"sourcesContent":["import { readFileSync, writeFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { rebuildOrderedConfig } from \"../merge\";\nimport type { BosConfig } from \"../types\";\n\nexport async function saveBosConfig(\n  configDir: string,\n  config: BosConfig | Record<string, unknown>,\n): Promise<void> {\n  const filePath = join(configDir, \"bos.config.json\");\n  const ordered = rebuildOrderedConfig(config as Record<string, unknown>);\n  const next = `${JSON.stringify(ordered, null, 2)}\\n`;\n  try {\n    if (readFileSync(filePath, \"utf8\") === next) return;\n  } catch {\n    // file does not exist yet\n  }\n\n  writeFileSync(filePath, next);\n}\n"],"mappings":";;;;;;AAKA,eAAsB,cACpB,WACA,QACe;CACf,MAAM,+BAAgB,WAAW,kBAAkB;CACnD,MAAM,UAAUA,mCAAqB,OAAkC;CACvE,MAAM,OAAO,GAAG,KAAK,UAAU,SAAS,MAAM,EAAE,CAAC;AACjD,KAAI;AACF,gCAAiB,UAAU,OAAO,KAAK,KAAM;SACvC;AAIR,4BAAc,UAAU,KAAK"}