{"version":3,"sources":["../src/fs/cleanDir.ts"],"names":["cleanDir","dir","options","ignoreError","resolve","reject","fs","err","files","file","filePath","path"],"mappings":";;;;AAaO,SAASA,CAAAA,CAASC,CAAWC,CAAAA,CAAAA,CAAyB,CACzD,GAAM,CAAE,WAAAC,CAAAA,CAAY,CAAI,CAAA,MAAA,CAAO,MAAO,CAAA,CAAC,YAAY,IAAI,CAAA,CAAED,CAAO,CAAA,CAChE,OAAO,IAAI,QAAc,CAACE,CAAAA,CAAQC,CAAS,GAAA,CACvCC,CAAG,CAAA,OAAA,CAAQL,EAAI,CAACM,CAAAA,CAAIC,CAAQ,GAAA,CACxB,GAAGD,CAAAA,EAAO,CAACJ,CACP,CAAA,OAAOE,CAAOE,CAAAA,CAAG,CAErB,CAAA,IAAA,IAAQE,KAAQD,CAAM,CAAA,CAClB,IAAIE,CAAAA,CAAWC,CAAK,CAAA,IAAA,CAAKV,EAAIQ,CAAI,CAAA,CACjC,GAAGH,CAAG,CAAA,QAAA,CAASI,CAAQ,CAAE,CAAA,WAAA,EACrBV,CAAAA,CAAAA,CAASU,CAAQ,CAAA,CAAA,QAEd,CACCJ,CAAAA,CAAG,UAAWI,CAAAA,CAAQ,EAC1B,CAAA,MAAOH,EAAI,CACP,GAAG,CAACJ,CAAAA,CAAa,OAAOE,CAAAA,CAAOE,CAAG,CACtC,CAER,CACA,GAAG,CACCD,CAAAA,CAAG,UAAUL,CAAG,EACpB,CAAOM,MAAAA,CAAAA,CAAI,CACP,GAAG,CAACJ,CAAa,CAAA,OAAOE,CAAOE,CAAAA,CAAG,CACtC,CACAH,IACJ,CAAC,EACL,CAAC,CACL","file":"chunk-CJZIERIH.mjs","sourcesContent":["/**\r\n * \r\n * 清空文件夹\r\n * \r\n */\r\nimport fs from 'node:fs'\r\nimport path from 'node:path'\r\n\r\n\r\nexport interface CleanDirOptions{\r\n    ignoreError?:boolean    \r\n}\r\n\r\nexport function cleanDir(dir:string,options?:CleanDirOptions){\r\n    const { ignoreError } = Object.assign({ignoreError:true},options)\r\n    return new Promise<void>((resolve,reject)=>{\r\n        fs.readdir(dir,(err,files)=>{\r\n            if(err && !ignoreError){                \r\n                return reject(err)\r\n            } \r\n            for(let file of files){\r\n                let filePath = path.join(dir,file)             \r\n                if(fs.statSync(filePath).isDirectory()){\r\n                    cleanDir(filePath)\r\n                }else{\r\n                    try{\r\n                        fs.unlinkSync(filePath)\r\n                    }catch(err){\r\n                        if(!ignoreError) return reject(err)\r\n                    }\r\n                }       \r\n            } \r\n            try{\r\n                fs.rmdirSync(dir)\r\n            }catch(err){\r\n                if(!ignoreError) return reject(err)\r\n            }\r\n            resolve()\r\n        })\r\n    })\r\n}\r\n\r\n\r\n// cleanDir(\"C:\\\\Temp\\\\copydirs\")"]}