@dx-box/common
Version:
(DX) by providing common configurations for TypeScript, ESLint, Prettier, and automated Git hooks for formatting and linting.
2 lines (1 loc) • 713 B
JavaScript
import{execSync as t}from"child_process";import l from"fs";import o from"path";const a=e=>{const n=["prettier","eslint","eslint-config-prettier","husky","@typescript-eslint/eslint-plugin","@changesets/cli","@changesets/changelog-github"].filter(s=>!r(e,s));if(n.length>0){console.log(`\u{1F4E6} Installing missing devDependencies: ${n.join(", ")}`);try{t(`npm install -D ${n.join(" ")}`,{cwd:e,stdio:"inherit"}),console.log("\u2705 devDependencies installed")}catch(s){console.error("\u274C Failed to install devDependencies:",s),process.exit(1)}}else console.log("\u2705 All required devDependencies are already installed")},r=(e,i)=>l.existsSync(o.join(e,"node_modules",i));export{a as installDevDependencies};