@autopack/cpack
Version:
📦 基于rollup的JS、TS包构建工具 | One common construction and package tool for JS/TS components based on Rollup 📦
30 lines (23 loc) • 657 B
JavaScript
/* eslint-disable import/prefer-default-export */
const fs = require('fs')
const getFiles = (entry, extensions = [], excludeExtensions = []) => {
let fileNames = []
const dirs = fs.readdirSync(entry)
dirs.forEach((dir) => {
const path = `${entry}/${dir}`
if (fs.lstatSync(path).isDirectory()) {
fileNames = [
...fileNames,
...getFiles(path, extensions, excludeExtensions)
]
return
}
if (!excludeExtensions.some((exclude) => dir.endsWith(exclude)) &&
extensions.some((ext) => dir.endsWith(ext))
) {
fileNames.push(path)
}
})
return fileNames
}
module.exports = getFiles