{"version":3,"sources":["../src/fs/writeJsonFile.ts"],"names":["writeJsonFile","jsonfile","data","json","fs","deepMerge","writeJsonFileAsync","fsPromises","fileContent"],"mappings":";;;;AAKO,SAASA,CAAAA,CAAkEC,CAAkBC,CAAAA,CAAAA,CAAQ,CACxG,IAAIC,EAAO,EAAC,CACZ,OAAGC,CAAAA,CAAG,UAAWH,CAAAA,CAAQ,IACrBE,CAAO,CAAA,IAAA,CAAK,KAAMC,CAAAA,CAAAA,CAAG,YAAaH,CAAAA,CAAAA,CAAS,CAAC,QAAS,CAAA,OAAO,CAAC,CAAA,CAAE,QAAS,EAAC,GAE7EE,CAAOE,CAAAA,CAAAA,CAAUF,CAAKD,CAAAA,CAAI,CAC1BE,CAAAA,CAAAA,CAAG,cAAcH,CAAS,CAAA,IAAA,CAAK,SAAUE,CAAAA,CAAAA,CAAK,IAAK,CAAA,CAAC,CAAC,CAAA,CAC9CA,CAEX,CAEA,eAAsBG,CAAAA,CAAuEL,CAAkBC,CAAAA,CAAAA,CAAkD,CAC7J,IAAIC,CAAAA,CAAO,EAAC,CACZ,GAAI,MAAMI,SAAW,IAAKN,CAAAA,CAAQ,CAAE,CAAA,IAAA,CAAK,IAAM,IAAI,EAAE,KAAM,CAAA,IAAM,KAAK,CAAA,CAAG,CACrE,IAAMO,CAAc,CAAA,MAAMD,QAAW,CAAA,QAAA,CAASN,CAAU,CAAA,CAAE,QAAU,CAAA,OAAQ,CAAC,CAC7EE,CAAAA,CAAAA,CAAO,IAAK,CAAA,KAAA,CAAMK,CAAY,CAAA,QAAA,EAAU,EAC5C,CACA,OAAAL,CAAAA,CAAOE,CAAUF,CAAAA,CAAAA,CAAMD,CAAI,CAC3B,CAAA,MAAMK,QAAW,CAAA,SAAA,CAAUN,CAAU,CAAA,IAAA,CAAK,SAAUE,CAAAA,CAAAA,CAAM,IAAM,CAAA,CAAC,CAAC,CAAA,CAC3DA,CACX","file":"chunk-WSCPNPTD.mjs","sourcesContent":["\nimport fs from 'node:fs';\nimport { deepMerge } from '../object/deepMerge';\nimport { promises as fsPromises } from 'node:fs';\n\nexport function writeJsonFile<T extends  Record<string,any> = Record<string,any>>(jsonfile: string, data:T) {\n    let json = {} as T\n    if(fs.existsSync(jsonfile)){\n        json = JSON.parse(fs.readFileSync(jsonfile,{encoding:'utf-8'}).toString())\n    }\n    json = deepMerge(json,data) as T   \n    fs.writeFileSync(jsonfile,JSON.stringify(json,null,4))\n    return json\n    \n}\n\nexport async function writeJsonFileAsync<T extends  Record<string,any> = Record<string,any>>(jsonfile: string, data: Record<string, any>):Promise<T | undefined> {\n    let json = {} as T;\n    if (await fsPromises.stat(jsonfile).then(() => true).catch(() => false)) {\n        const fileContent = await fsPromises.readFile(jsonfile, { encoding: 'utf-8' });\n        json = JSON.parse(fileContent.toString());\n    }\n    json = deepMerge(json, data) as T\n    await fsPromises.writeFile(jsonfile, JSON.stringify(json, null, 4));\n    return json;\n}"]}