UNPKG

anl

Version:
2 lines (1 loc) 1.88 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("child_process"),s=require("fs"),r=require("path"),t=require("progress-estimator"),i=require("../utils/index.js"),n=require("./const.js");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=l(s);const o=l(t).default({storagePath:r.join(__dirname,".progress-estimator")}),a={env:{browser:!0,es2021:!0},extends:["eslint:recommended","plugin:react/recommended","plugin:@typescript-eslint/recommended","prettier"],overrides:[],parser:"@typescript-eslint/parser",parserOptions:{ecmaVersion:"latest",sourceType:"module"},plugins:["react","@typescript-eslint"],rules:{}},p={env:{browser:!0,es2021:!0},extends:["eslint:recommended","plugin:vue/vue3-essential","plugin:@typescript-eslint/recommended","prettier"],overrides:[],parser:"@typescript-eslint/parser",parserOptions:{ecmaVersion:"latest",sourceType:"module"},plugins:["vue","@typescript-eslint"],rules:{}};exports.eslintHandle=async s=>{i.spinner.start("start installation...");const r="vue"===s?n.VUE_ESLINT:n.REACT_ESLINT,t="vue"===s?p:a,l=new Promise((s,t)=>{const n=e.exec(r,e=>{e&&i.spinner.error(e.message)});n.stdout?.on("data",()=>{i.spinner.success("✨ eslint instll success!"),s({success:!0})}),n.stderr?.on("data",()=>{i.spinner.error("eslint install fail!"),t({success:!1})})}),u=new Promise((e,s)=>{try{const s=[".eslintrc.js",".prettierrc.js","commitlint.config.js"].join("\n");c.default.writeFileSync(`${process.cwd()}/.eslintignore`,s),c.default.writeFileSync(`${process.cwd()}/.eslintrc.js`,`module.exports = ${JSON.stringify(t,null,2)}`),i.spinner.success("✨ .eslintrc file write success"),e({success:!0})}catch(e){i.spinner.error(".eslintrc file write fail"),s(e)}});try{await o(l,"instll eslint",{estimate:3e4}),await o(u,"write .eslintignore file")}catch(e){console.error("eslintHandle=====>",e)}};