|
const { execSync } = require('child_process'); |
|
const path = require('path'); |
|
const fs = require('fs'); |
|
|
|
const { deleteNodeModules } = require('./helpers'); |
|
|
|
|
|
const rootDir = path.resolve(__dirname, '..'); |
|
const directories = [ |
|
rootDir, |
|
path.resolve(rootDir, 'packages', 'data-provider'), |
|
path.resolve(rootDir, 'client'), |
|
path.resolve(rootDir, 'api'), |
|
]; |
|
|
|
|
|
const packageLockPath = path.resolve(rootDir, 'package-lock.json'); |
|
if (fs.existsSync(packageLockPath)) { |
|
console.purple('Deleting package-lock.json...'); |
|
fs.unlinkSync(packageLockPath); |
|
} |
|
|
|
(async () => { |
|
|
|
directories.forEach(deleteNodeModules); |
|
|
|
|
|
console.purple('Cleaning npm cache...'); |
|
execSync('npm cache clean --force', { stdio: 'inherit' }); |
|
|
|
|
|
console.purple('Installing dependencies...'); |
|
execSync('npm install', { stdio: 'inherit' }); |
|
})(); |
|
|