readdir-scoped.js 431 B

1234567891011121314151617181920
  1. const { readdir } = require('fs/promises')
  2. const { join } = require('path')
  3. const readdirScoped = async (dir) => {
  4. const results = []
  5. for (const item of await readdir(dir)) {
  6. if (item.startsWith('@')) {
  7. for (const scopedItem of await readdir(join(dir, item))) {
  8. results.push(join(item, scopedItem))
  9. }
  10. } else {
  11. results.push(item)
  12. }
  13. }
  14. return results
  15. }
  16. module.exports = readdirScoped