Nuxt/scripts/link.js

26 lines
747 B
JavaScript

const path = require('path')
const consola = require('consola')
const execa = require('execa')
const fs = require('fs-extra')
const glob = require('pify')(require('glob').glob)
async function main() {
const packageDirs = await glob('+(packages|distributions)/*')
const packages = packageDirs.map(pkgDir => ({
dir: pkgDir,
pkg: fs.readJSONSync(path.join(pkgDir, 'package.json'))
}))
const packageNames = packages.map(p => p.pkg.name).join(' ')
consola.info(`Linking ${packages.length} packages...`)
await Promise.all(packages.map(pkg => execa('yarn', ['link'], { cwd: pkg.dir })))
consola.log(`Link: \nyarn link ${packageNames}\n`)
consola.log(`Unlink: \nyarn unlink ${packageNames}\n`)
}
main().catch(consola.error)