const path = require('path');
const fs = require('fs');

// 获取当前命令行上下文路径
const currentDirectory = process.cwd();

console.log(`----------------------------`)
console.log(`项目编译打包完成，准备移除非必要的 /dist/app 文件夹...`)
const dist_app = path.join(currentDirectory, '/dist/app');
if(fs.existsSync(dist_app)) {
    delallfilerid(dist_app)
    fs.rmdirSync(dist_app)
    console.log(`移除非必要的 /dist/app 文件夹成功...`)
} else {
    console.log(`/dist/app 文件夹 不存在，无需移除...`)
}

console.log(`准备移除非必要的 /dist/cdn 文件夹...`)
const dist_cdn = path.join(currentDirectory, '/dist/cdn');
if(fs.existsSync(dist_cdn)) {
  delallfilerid(dist_cdn)
  fs.rmdirSync(dist_cdn)
  console.log(`移除非必要的 /dist/cdn 文件夹成功...`)
} else {
  console.log(`/dist/cdn 文件夹 不存在，无需移除...`)
}

console.log(`准备移除非必要的 /dist/img 文件夹...`)
const dist_img = path.join(currentDirectory, '/dist/img');
if(fs.existsSync(dist_img)) {
  delallfilerid(dist_img)
  fs.rmdirSync(dist_img)
  console.log(`移除非必要的 /dist/img 文件夹成功...`)
} else {
  console.log(`/dist/img 文件夹 不存在，无需移除...`)
}

console.log(`准备移除非必要的 /dist/svg 文件夹...`)
const dist_svg = path.join(currentDirectory, '/dist/svg');
if(fs.existsSync(dist_svg)) {
  delallfilerid(dist_svg)
  fs.rmdirSync(dist_svg)
  console.log(`移除非必要的 /dist/svg 文件夹成功...`)
} else {
  console.log(`/dist/svg 文件夹 不存在，无需移除...`)
}

console.log(`准备移除非必要的 /dist/util 文件夹...`)
const dist_util = path.join(currentDirectory, '/dist/util');
if(fs.existsSync(dist_util)) {
  delallfilerid(dist_util)
  fs.rmdirSync(dist_util)
  console.log(`移除非必要的 /dist/util 文件夹成功...`)
} else {
  console.log(`/dist/util 文件夹 不存在，无需移除...`)
}

//删除文件夹下的所有文件
function delallfilerid(fuckpath) {
    fs.readdirSync(fuckpath).forEach((file, index, arr) => {
        if (fs.lstatSync(`${fuckpath}/${file}`).isFile()) {
            fs.unlinkSync(`${fuckpath}/${file}`)
        }else if(fs.lstatSync(`${fuckpath}/${file}`).isDirectory()){
            delallfilerid(`${fuckpath}/${file}`)
            fs.rmdirSync(`${fuckpath}/${file}`)
        }
    })
}
